.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@layer reset{:where(*){box-sizing:border-box}:where(body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd){margin:0;padding:0}:where(body){-webkit-text-size-adjust:100%;line-height:1.5}:where(ul[role=list],ol[role=list]){margin:0;padding:0;list-style:none}:where(img,picture,video,canvas,svg){max-width:100%;display:block}:where(input,button,textarea,select){font:inherit;margin:0}@media (prefers-reduced-motion:reduce){:where(html:focus-within){scroll-behavior:auto}:where(*){scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}}@layer base{*,:before,:after{box-sizing:border-box}:where(:root){text-spacing-trim:trim-start;text-autospace:normal;line-break:strict;overflow-wrap:anywhere;-webkit-text-size-adjust:100%;text-size-adjust:100%;scrollbar-gutter:stable;-webkit-tap-highlight-color:transparent;color:var(--black);font-family:sans-serif;line-height:1.5}:where(body){min-block-size:100dvb;margin:unset}:where(h1,h2,h3,h4,h5,h6){text-wrap:pretty}:where(h1){margin-block:.67em;font-size:2em}:where(h2,h3,h4,h5,h6){margin-block:unset}:where(search){display:block}:where(p,blockquote,figure,pre,address,ul,ol,dl,menu){margin-block:unset}:where(blockquote,figure){margin-inline:unset}:where(p:lang(en)){text-wrap:pretty}:where(address:lang(ja)){font-style:unset}:where(ul,ol,menu){padding-inline-start:unset;list-style-type:""}:where(dt){font-weight:bolder}:where(dd){margin-inline-start:unset}:where(pre){text-spacing-trim:space-all;text-autospace:no-autospace}:where(em:lang(ja)){font-weight:bolder}:where(:is(i,cite,em,dfn,var):lang(ja)){font-style:unset}:where(code,kbd,samp){font-feature-settings:initial;font-variation-settings:initial;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:unset;font-variant-ligatures:none}:where(abbr[title]){cursor:help;text-decoration-line:underline;text-decoration-style:dotted}:where(time){text-autospace:no-autospace}@media (forced-colors:active){:where(mark){color:highlighttext;background-color:highlight}}@media print{:where(mark){border-style:dotted;border-width:1px}}:where(a:any-link){color:unset;text-decoration-line:unset;text-decoration-thickness:from-font}:where(img,svg,picture,video,canvas,model,audio,iframe,embed,object){vertical-align:bottom;block-size:auto;max-inline-size:100%}:where(iframe){border:unset}:where(table){border-collapse:collapse}:where(caption,th){text-align:unset}:where(caption){text-wrap:pretty}:where(button,input,select,textarea),::file-selector-button{border-style:solid;border-width:1px;border-color:unset;border-radius:unset;color:unset;font:unset;letter-spacing:unset;text-align:unset}:where(input:is([type=radio i],[type=checkbox i])){margin:unset}:where(input[type=file i]){border:unset}:where(input[type=search i]){-webkit-appearance:textfield}@supports (-webkit-touch-callout:none){:where(input[type=search i]){background-color:canvas}}:where(input:is([type=tel i],[type=url i],[type=email i],[type=number i]):not(:placeholder-shown)){direction:ltr}:where(textarea){margin-block:unset;resize:block}:where(input:not([type=button i],[type=submit i],[type=reset i]),textarea,[contenteditable]){text-autospace:no-autospace}:where(button,input:is([type=button i],[type=submit i],[type=reset i])),::file-selector-button{background-color:unset}:where(button,input:is([type=button i],[type=submit i],[type=reset i]),[role=tab i],[role=button i],[role=option i]),::file-selector-button{touch-action:manipulation}:where(button:enabled,label[for],select:enabled,input:is([type=button i],[type=submit i],[type=reset i],[type=radio i],[type=checkbox i]):enabled,[role=tab i],[role=button i],[role=option i]),:where(:enabled)::file-selector-button{cursor:pointer}:where(fieldset){min-inline-size:0;margin-inline:unset;padding:unset;border:unset}:where(legend){padding-inline:unset}:where(progress){vertical-align:unset}::placeholder{opacity:unset}:where(summary){cursor:pointer;list-style-type:""}:where(summary)::-webkit-details-marker{display:none}:where(dialog,[popover]){overscroll-behavior-block:contain;padding:unset;border:unset}:where(dialog:not([open],[popover]),[popover]:not(:popover-open)){display:none!important}:where(dialog){max-inline-size:unset;max-block-size:unset}:where(dialog)::backdrop{background-color:oklch(0% 0 0/.3)}:where([popover]){margin:unset}:where(:focus-visible){outline-offset:3px}[tabindex="-1"]:focus{outline:none!important}:where(:disabled,[aria-disabled=true i]){cursor:default}[hidden]:not([hidden=until-found i]){display:none!important}}:root{--inline-content-size-val:1400;--inline-content-size:calc(var(--inline-content-size-val) * 1px);--gutter-inline:calc((1520 - (var(--inline-content-size-val))) * 1px / 2);--base-font-size:clamp(20px, 2cqi, 2.8rem);--color-highlight:#d9b26f;--base-50:#f2f0e5;--base-100:#e6e4d9;--base-150:#dad8ce;--base-200:#cecdc3;--base-300:#b7b5ac;--base-400:#9f9d96;--base-500:#878580;--base-600:#6f6e69;--base-700:#575653;--base-800:#403e3c;--base-850:#343331;--base-900:#282726;--base-950:#1c1b1a;--red-50:#ffe1d5;--red-100:#ffcabb;--red-150:#fdb2a2;--red-200:#f89a8a;--red-300:#e8705f;--red-400:#d14d41;--red-500:#c03e35;--red-600:#af3029;--red-700:#942822;--red-800:#6c201c;--red-850:#551b18;--red-900:#3e1715;--red-950:#261312;--orange-50:#ffe7ce;--orange-100:#fed3af;--orange-150:#fcc192;--orange-200:#f9ae77;--orange-300:#ec8b49;--orange-400:#da702c;--orange-500:#cb6120;--orange-600:#bc5215;--orange-700:#9d4310;--orange-800:#71320d;--orange-850:#59290d;--orange-900:#40200d;--orange-950:#27180e;--yellow-50:#faeec6;--yellow-100:#f6e2a0;--yellow-150:#f1d67e;--yellow-200:#eccb60;--yellow-300:#dfb431;--yellow-400:#d0a215;--yellow-500:#be9207;--yellow-600:#ad8301;--yellow-700:#8e6b01;--yellow-800:#664d01;--yellow-850:#503d02;--yellow-900:#3a2d04;--yellow-950:#241e08;--green-50:#edeecf;--green-100:#dde2b2;--green-150:#cdd597;--green-200:#bec97e;--green-300:#a0af54;--green-400:#879a39;--green-500:#768d21;--green-600:#66800b;--green-700:#536907;--green-800:#3d4c07;--green-850:#313d07;--green-900:#252d09;--green-950:#1a1e0c;--cyan-50:#ddf1e4;--cyan-100:#bfe8d9;--cyan-150:#a2dece;--cyan-200:#87d3c3;--cyan-300:#5abdac;--cyan-400:#3aa99f;--cyan-500:#2f968d;--cyan-600:#24837b;--cyan-700:#1c6c66;--cyan-800:#164f4a;--cyan-850:#143f3c;--cyan-900:#122f2c;--cyan-950:#101f1d;--blue-50:#e1eceb;--blue-100:#c6dde8;--blue-150:#abcfe2;--blue-200:#92bfdb;--blue-300:#66a0c8;--blue-400:#4385be;--blue-500:#3171b2;--blue-600:#205ea6;--blue-700:#1a4f8c;--blue-800:#163b66;--blue-850:#133051;--blue-900:#12253b;--blue-950:#101a24;--purple-50:#f0eaec;--purple-100:#e2d9e9;--purple-150:#d3cae6;--purple-200:#c4b9e0;--purple-300:#a699d0;--purple-400:#8b7ec8;--purple-500:#735eb5;--purple-600:#5e409d;--purple-700:#4f3685;--purple-800:#3c2a62;--purple-850:#31234e;--purple-900:#261c39;--purple-950:#1a1623;--magenta-50:#fee4e5;--magenta-100:#fccfda;--magenta-150:#f9b9cf;--magenta-200:#f4a4c2;--magenta-300:#e47da8;--magenta-400:#ce5d97;--magenta-500:#b74583;--magenta-600:#a02f6f;--magenta-700:#87285e;--magenta-800:#641f46;--magenta-850:#4f1b39;--magenta-900:#39172b;--magenta-950:#24131d;--black:#100f0f;--paper:#fffcf0}body{background:linear-gradient(167deg,#b7b5ac,#e0ded3 27%,#fffcf0);font-family:monsterrat,zenkaku-gothic-new,Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Noto Sans JP,BIZ UDPGothic,sans-serif}main{min-block-size:100vh}.page__ttl{--padding-inline:2rem;--margin-block-start:5rem;--font-size:calc((24/16) * 1rem);--text-align:center;padding-inline:var(--padding-inline);inline-size:100%;max-inline-size:var(--inline-content-size);font-size:var(--font-size);text-align:var(--text-align);margin-block-start:var(--margin-block-start);font-weight:700;@media screen and (width>=768px){--padding-inline:var(--gutter-inline);--margin-block-start:3rem;--text-align:left}}.section__wrapper{--padding-block:2rem 5rem;--padding-inline:1rem;padding-block:var(--padding-block);padding-inline:var(--padding-inline);inline-size:100%;max-inline-size:var(--inline-content-size);margin-inline:auto;container-type:inline-size;@media screen and (width>=768px){--padding-block:5rem;--padding-inline:var(--gutter-inline)}}.globalheader{--padding-block:0;--padding-inline:0;--block-size:fit-content;--inline-size:fit-content;--background-color:var(--orange-400);--transition-duration:.2s;--opacity:.8;padding-block:var(--padding-block);padding-inline:var(--padding-inline);block-size:var(--block-size);inline-size:var(--inline-size);background-color:var(--background-color);color:var(--paper);transition:transform,opacity;transition-duration:var(--transition-duration);opacity:var(--opacity);z-index:1000;margin-inline:auto 0;transition-timing-function:ease-out;position:fixed;inset-block-start:0;inset-inline-end:0;@media screen and (width>=768px){--padding-block:1.5rem;--padding-inline:var(--gutter-inline);--block-size:auto;--inline-size:100%;--background-color:var(--base-950);--transition-duration:.1s;--opacity:.85;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:1.5rem;display:grid;position:sticky;container-type:inline-size}}.globalheader.hide{--opacity:0;transition:transform,opacity;transition-duration:var(--transition-duration);transition-timing-function:ease-out;transform:translateY(-100%);@media screen and (width>=768px){--opacity:.85}}.global__nav__pc{flex-flow:row;column-gap:min(3.8cqi,2.5rem);font-weight:700;display:flex}.global__logo{opacity:1;justify-self:end;line-height:0;transition:opacity .15s ease-out;display:none;@media (any-hover:hover){&:hover{opacity:.6;transition:opacity .15s ease-out}}@media screen and (width>=768px){display:block}}.global__logo img{block-size:2rem;inline-size:2rem;display:block}.global__nav__pc.pc__only{display:none;@media screen and (width>=768px){display:flex}}.nav__btn__sp{border:none;block-size:3rem;inline-size:3rem}.nav__btn__sp:before{content:"";border-block-end:2px solid #fff;inline-size:2em;margin-inline:auto;transition:transform .3s ease-out;display:block}.globalheader:has(dialog:modal) .nav__btn__sp:before{transition:transform .3s ease-out;transform:rotate(-180deg)}.globalheader dialog{block-size:70dvh;max-block-size:37.5rem;inline-size:90dvw;max-inline-size:31.25rem;color:var(--paper);background-color:var(--base-950);border:6px solid var(--paper);filter:drop-shadow(10px 10px #000);outline:none}.nav__close__sp{block-size:3rem;inline-size:3rem;color:inherit;background:0 0;border:none;place-items:center;display:grid;position:absolute;inset-block-start:.5rem;inset-inline-end:.5rem}.nav__close__sp:before{content:"✕";font-size:1.5rem}.nav__logo__sp{line-height:0;position:absolute;inset-block-end:1rem;inset-inline-end:1rem}.nav__logo__sp img{block-size:2.5rem;inline-size:2.5rem;display:block}.nav__sp__linkitem__wrap{margin-block-start:3rem;padding-inline-start:2rem}.globalheader dialog .link__twister{column-gap:1rem}.toTop{--opacity:.6;background-color:var(--blue-400);block-size:3rem;inline-size:3rem;opacity:var(--opacity);z-index:1001;border:none;border-top-left-radius:.5rem;border-bottom-left-radius:.5rem;margin-inline:auto 0;position:sticky;inset-block-end:2.5rem;inset-inline-end:0}.toTop:before{content:"▲";text-align:center;color:var(--blue-50);font-size:1.5rem;font-weight:700;display:block}.globalfooter{background-color:var(--base-800);color:var(--base-200);border-bottom:solid 10px var(--base-800);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1rem;padding:2rem;display:grid;position:sticky}.globalfooter__inner{grid-column:1/-1;grid-template-columns:repeat(2,auto);justify-self:center;gap:1rem 4rem;display:grid;@media screen and (width>=768px){flex-flow:wrap;grid-column:2;column-gap:2rem;display:flex}}.globalfooter__github{block-size:44px;inline-size:44px;color:inherit;border-radius:.25rem;grid-area:2/1;justify-self:start;place-items:center;margin-inline-start:1rem;display:grid;@media screen and (width>=768px){grid-row:1}}.globalfooter__github:focus-visible{outline-offset:4px;outline:2px solid}.globalFooter__linkItem{opacity:1;transition:opacity .2s}.globalFooter__linkItem:hover{opacity:.5;transition:opacity .2s}.acc__with__anim{--padding:0;padding:var(--padding);border:1px solid var(--base-300);background-color:#c3c0b433;border-radius:.5rem;block-size:fit-content;inline-size:100%;@media screen and (width>=768px){margin-inline:auto}& details{&::details-content{--padding-inline:1rem;padding-inline:var(--padding-inline);content-visibility:unset;display:grid;@media (prefers-reduced-motion:no-preference){transition-property:grid-template-rows;transition-duration:.3s}}@media screen and (width>=768px){&::details-content{--padding-inline:2rem}}&:not([open])::details-content{grid-template-rows:0fr}&[open]::details-content{grid-template-rows:1fr}& summary{--padding:1.5rem 1rem;padding:var(--padding);color:var(--base-700);grid-template-columns:1fr auto;font-weight:700;display:grid;&:after{content:"";border-block-end:2px solid var(--base-700);align-self:center;inline-size:1em;margin-left:.5rem;transition:all .2s ease-out;display:block;transform:rotate(90deg)}}@media screen and (width>=768px){& summary{--padding:1.5rem 2rem}}&[open] summary:after{transition:all .2s ease-out;transform:rotate(270deg)}}& .acc__with__anim__dl{border-block-start:1px solid var(--base-300);padding-block:1.5rem}& .acc__with__anim__dl:first-child{border:none;padding-block-end:1.5rem}& .acc__with__anim__dt{color:var(--base-700)}& .acc__with__anim__dd{color:var(--base-700);grid-template-columns:auto 1fr;column-gap:.2rem;font-size:clamp(14px,1.5cqi,16px);display:grid}}.acc__with__anim__hidden{overflow:hidden}.item__hover{opacity:1;transition:all .15s ease-in-out;@media (any-hover:hover){&:hover{opacity:.6;transition:all .15s ease-in-out}}}.visually-hidden:where(:not(:focus-within,:active)){clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;block-size:1px!important;inline-size:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.linkitem__link{inline-size:fit-content}.linkitem__link:not(:first-child){margin-block-start:2rem}.link__twister{text-align:left;opacity:1;grid-template-columns:1rem auto;align-items:start;column-gap:.7rem;font-weight:700;transition:opacity .15s ease-out;display:grid;position:relative;@media screen and (width>=768px){align-items:center}@media (any-hover:hover){&:hover{opacity:.8;transition:opacity .15s ease-out}&:hover:before{transition:all .2s ease-out;transform:rotate(180deg)}&:hover:after{opacity:.8}}}@media screen and (width>=768px){.section__wrapper .link__twister{column-gap:1rem;font-size:1.2rem}}.link__twister:before{content:"";pointer-events:none;border-block-end:2px solid;inline-size:1em;margin-block-start:.65em;transition:all .4s ease-out;display:block;transform:rotate(90deg);@media screen and (width>=768px){margin-block-start:0}}.link__twister:after{--border-offset:.85em;content:"";opacity:0;pointer-events:none;background-color:currentColor;block-size:.1em;transition:opacity .2s ease-out;position:absolute;inset-block-end:0;inset-inline-start:calc(1rem + var(--border-offset));inset-inline-end:0}.fadeInTrigger{--opacity:1}.fadeInTrigger.is-pending{--opacity:0}.fadeInTrigger.is-appeared{--opacity:1}.fadeInItem{opacity:var(--opacity,1);transition-delay:var(--fade-delay,0);transition-timing-function:linear;transition-duration:var(--fade-duration,.4s);transition-property:opacity}.fadeInItem__mtg{opacity:var(--opacity,1);transition-delay:var(--fade-delay,0);transition-timing-function:linear;transition-duration:var(--fade-duration,.3s);transition-property:opacity}.sp__only{display:block;@media screen and (width>=768px){display:none}}.pc__only{display:none;@media screen and (width>=768px){display:block}}.fixed__background{z-index:-1;background:linear-gradient(0deg, var(--paper) 0%, #eae7dc 100%);pointer-events:none;position:fixed;inset:0}.main-circle{--color:var(--base-100);z-index:-1;justify-content:center;align-items:center;height:100vh;margin:0;display:flex;position:fixed;inset:0}.amoeba-container{filter:url(#goo);will-change:filter;block-size:12svh;max-block-size:240px;inline-size:12vw;max-inline-size:240px;position:relative}.amoeba-body{background:var(--color);z-index:2;border-radius:50%;block-size:130px;inline-size:130px;animation:6s ease-in-out infinite alternate wobble;position:absolute;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.pseudopod{background:var(--color);border-radius:50%;block-size:60px;inline-size:60px;margin:-30px;position:absolute;inset-block-start:50%;inset-inline-start:50%;transform:rotate(0)translate(0)scale(.5)}.to__top__scroll{--inset-inline-end:.5rem;background-color:var(--orange-400);pointer-events:none;opacity:0;z-index:1;border:none;place-content:center;block-size:2rem;inline-size:2rem;transition:opacity .15s ease-out;display:grid;position:fixed;inset-block-end:1rem;inset-inline-end:var(--inset-inline-end);& span{color:#fff;padding-block-end:.25rem;font-size:2rem;display:block}@media screen and (width>=768px){--inset-inline-end:1rem}}.to__top__scroll.is-active{pointer-events:inherit;opacity:.8;transition:opacity .15s ease-out}@keyframes stretch{0%,to{transform:rotate(var(--angle)) translateX(0) scale(.5)}40%{transform:rotate(var(--angle)) translateX(var(--distance)) scale(1.2)}}@keyframes wobble{0%{border-radius:50%}to{border-radius:40% 60% 55% 45%;transform:translate(-52%,-48%)scale(1.05)}}@font-face{font-family:monsterrat;src:url(/fonts/Montserrat-VariableFont_wght.ttf)format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:monsterrat;src:url(/fonts/Montserrat-Italic-VariableFont_wght.ttf)format("truetype");font-style:italic;font-display:swap}@font-face{font-family:sawarabi-gothic;src:url(/fonts/SawarabiGothic-Regular.ttf)format("truetype");font-style:normal;font-display:swap}@font-face{font-family:zenkaku-gothic;src:url(/fonts/SawarabiMincho-Regular.ttf)format("truetype");font-style:normal;font-display:swap}@font-face{font-family:zenkaku-gothic-new;src:url(/fonts/ZenKakuGothicNew-Regular.ttf)format("truetype");font-style:normal;font-display:swap}@font-face{font-family:Noto Sans JP;src:url(/fonts/NotoSansJP-VariableFont_wght.ttf)format("truetype");font-style:normal;font-display:swap}@font-face{font-family:"Beleren 2016 Bold";src:url(/fonts/Beleren2016-Bold.ttf)format("truetype");font-style:normal;font-display:swap}@font-face{font-family:Plantin Italic;src:url(/fonts/plantin-italic.otf)format("opentype");font-style:italic;font-display:swap}@font-face{font-family:Klee One;src:url(/fonts/KleeOne-Regular.ttf)format("truetype");font-style:normal;font-display:swap}:root:has(:modal){scrollbar-gutter:stable;overflow:hidden}dialog{overscroll-behavior-block:contain;transition-behavior:allow-discrete;max-block-size:40vh;inline-size:min(90vw,37.5rem);margin:0;transition-property:display,overlay,opacity,transform;transition-duration:.2s;transition-timing-function:ease-out;position:fixed;inset-block-start:50%;inset-inline-start:50%;overflow:auto;transform:translate(-50%,-50%)}dialog::backdrop{background-color:oklch(from var(--black) l c h / 50%);-webkit-backdrop-filter:blur(4px);transition-duration:inherit;transition-property:opacity;transition-timing-function:inherit}@starting-style{dialog:modal{opacity:0;transform:translate(-50%,-50%)scale(.95)}dialog:modal::backdrop{opacity:0}}@starting-style{[popover]:popover-open{opacity:0}}dialog:not(:modal):not([popover]){opacity:0;transform:translate(-50%,-50%)scale(.95)}dialog:not(:modal)::backdrop{opacity:0}
