.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}:root{--bg-bluegray: #5b7283;--bg-top-orange: #bc845a;--bg-top-creamgray: #c0b3a3;--bg-top-gray: #8f9294;--bg: var(--bg-bluegray);--panel: #EAD79A;--ink: #EAD79A;--ink-white: #E8D8A2;--paper-bg: color-mix(in oklab, #f3efe5 82%, var(--bg-bluegray) 18%);--paper-ink: color-mix(in oklab, var(--bg-bluegray) 80%, #1f2830 20%);--paper-line: color-mix(in oklab, var(--paper-ink) 24%, transparent);--paper-shadow: 0 6px 22px color-mix(in oklab, #000 16%, transparent);--menu-bubble-fg: color-mix(in oklab, #bfd7df 58%, var(--bg-top-creamgray) 42%);--menu-bubble-active-bg: color-mix(in oklab, #d6eef5 12%, transparent);--menu-bubble-radius: 999px;--ink-subtle: color-mix(in oklab, var(--ink) 35%, transparent);--line: color-mix(in oklab, var(--ink) 14%, transparent);--muted: #8f9589;--help: var(--muted);--accent: #F4B013;--accent-shu: #DD5204;--accent-mint: #e4d3c3;--hr-color: #866649;--link-fg: #f3e2ac;--link-hover-fg: #fff0c6;--link-visited-fg: #e6cf90;--link-underline: #f0d998;--link-underline-thickness: .5em;--link-underline-offset: -.1em;--link-underline-strength: 50%;--accent-underline: var(--link-underline);--accent-underline-thickness: var(--link-underline-thickness);--accent-underline-offset: var(--link-underline-offset);--accent-underline-strength: var(--link-underline-strength);--nav-active-bg: #297E61;--nav-hover-bg: color-mix(in oklab, var(--ink) 6%, transparent);--nav-active-underline: var(--accent-underline);--nav-underline-strength: var(--accent-underline-strength);--nav-underline-thickness: var(--accent-underline-thickness);--nav-underline-offset: var(--accent-underline-offset);--font-site-title: "Square_Peg", "Square Peg", cursive;--font-body: "Zen Kaku Gothic New", "Noto Sans JP", sans-serif;--font-copyright: "Zen Kaku Gothic New", "Noto Sans", sans-serif;--font-sans-en: var(--font-body);--font-sans-ja: var(--font-body);--font-serif-ja: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;--font-mono: ui-monospace, SFMono-Regular, "Cascadia Mono", Menlo, Consolas, "Roboto Mono", monospace;--font-sans: var(--font-body);--font-canvas: "Zen Kurenaido", var(--font-sans);--heading-scale: 1.12;--fs-0: clamp(10px, .65rem + .06vw, 12px);--fs-1: clamp(12px, .75rem + .13vw, 14px);--fs-2: clamp(14px, .85rem + .22vw, 16px);--fs-3: clamp(16px, .95rem + .55vw, 20px);--fs-4: clamp(20px, 1rem + .85vw, 24px);--fs-5: clamp(24px, 1.1rem + 1.2vw, 30px);--space-1: 8px;--space-2: 12px;--space-3: 16px;--space-4: 24px;--space-5: 32px;--space-6: 48px;--radius: 14px;--shadow: 0 8px 24px rgba(0, 0, 0, .06);--container: 1100px;--bp-md: 960px;--scrollbar-thumb: color-mix(in srgb, var(--ink) 18%, transparent);--scrollbar-thumb-hover: color-mix(in srgb, var(--ink) 28%, transparent);--muted-foreground: var(--muted);--breadcrumb-fg: var(--muted-foreground);--overlay-scrim: color-mix(in oklab, #000 35%, transparent);--text-shadow-strong: color-mix(in oklab, #000 40%, transparent);--print-bg: #ffffff;--print-ink: #000000;--sidebar-width: 230px;--content-pad-inline: 24px;--header-gap: 32px;--content-max-width: 72ch;--content-max-width-default: 72ch;--content-max-width-wide: 96ch;--gap-header-content: 24px;--gap-content-footer: 48px;--footer-gap: 48px;--sidebar-pad-left-pc: 12px;--no-sidebar-gutter-pc: 230px;--no-sidebar-gutter-sp: 0px;--sidebar-content-gap-default: 20px;--sidebar-content-gap-lg-default: 28px;--sidebar-content-gap-wide: 16px;--sidebar-content-gap-lg-wide: 24px;--sidebar-content-gap: var(--sidebar-content-gap-default);--sidebar-content-gap-lg: var(--sidebar-content-gap-lg-default)}@media (max-width: 900px){:root{--content-pad-inline: 16px;--gap-header-content: 4px}}:root{--sky-top: #D4A060;--sky-bottom: #B0A888;--water-surface: #98A89A;--water-mid: #688C90;--water-deep: #4A7480;--water-bottom: #3E6878;--text-primary: #EDE6DA;--text-secondary: #C8D0D0;--heading: #ECD8AE;--accent: #E8D8B0;--accent-hover: #D4C090;--accent-soft: rgba(237, 230, 218, .12);--border: rgba(237, 230, 218, .12);--code-bg: rgba(0, 0, 0, .08);--code-text: #3A4A50;--mark-stroke: #3A3020;--mark-stroke-sub: #8C7858;--waterline-top: 30%;--waterline-article: 13%;--ink: var(--text-primary);--ink-white: var(--text-primary);--link-fg: var(--accent);--link-hover-fg: var(--accent-hover);--link-visited-fg: color-mix(in oklab, var(--accent) 80%, var(--text-secondary))}html[data-theme=dark]{color-scheme:dark;--paper-bg: color-mix(in oklab, #f0ece0 94%, #c0c8d4 6%);--paper-line: color-mix(in oklab, var(--paper-ink) 28%, transparent);--paper-shadow: 0 8px 48px color-mix(in oklab, #000 60%, transparent), 0 2px 10px color-mix(in oklab, #000 28%, transparent);--sky-top: #3A2820;--sky-bottom: #1E2030;--water-surface: #182838;--water-mid: #10202A;--water-deep: #08141E;--water-bottom: #061018;--text-primary: #8A9AA8;--text-secondary: #5A7080;--heading: #D4C48A;--accent: #D4BC78;--accent-hover: #E8D8A0;--accent-soft: rgba(212, 196, 138, .08);--border: rgba(212, 196, 138, .08);--code-bg: rgba(0, 0, 0, .25);--code-text: #7A9AAA;--mark-stroke: #D4C48A;--mark-stroke-sub: #5A5232}*,*:before,*:after{box-sizing:border-box}html{color-scheme:light dark}html,body{min-height:100%}html{overflow-y:scroll;scrollbar-gutter:stable;background-color:var(--water-bottom)}html:has(.drawer[open]){overflow:hidden}body{margin:0;min-height:100svh;color:var(--ink);background:transparent;font-family:var(--font-sans);font-size:var(--fs-2);line-height:1.75;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;font-optical-sizing:auto;font-synthesis-weight:none;font-synthesis-style:none}body:before{content:"";position:fixed;inset:0;z-index:-1;background-color:var(--water-bottom);background-image:linear-gradient(180deg,var(--sky-bottom) 0%,var(--water-surface) var(--waterline-article),var(--water-mid) 30%,var(--water-deep) 65%,var(--water-bottom) 100%);pointer-events:none}body.page-landing:before{background-image:linear-gradient(180deg,var(--sky-top) 0%,var(--sky-bottom) 22%,var(--water-surface) var(--waterline-top),var(--water-mid) 55%,var(--water-deep) 80%,var(--water-bottom) 100%)}hr{border:0;border-top:1px solid var(--hr-color)}img.svg,svg{max-width:100%;height:auto;display:block}@media print{body{background:var(--print-bg);color:var(--print-ink)}.panel,.card{box-shadow:none}}.stack>*+*{margin-top:var(--space-3)}.grid{display:grid;gap:var(--space-4)}.panel{background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow)}.container{max-width:var(--container);margin-inline:auto;padding-inline:var(--space-4)}@font-face{font-family:Square_Peg;src:url(/fonts/Square_Peg/SquarePeg-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Zen Kaku Gothic New;src:url(/fonts/Zen_kaku/ZenKakuGothicNew-Light.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Zen Kaku Gothic New;src:url(/fonts/Zen_kaku/ZenKakuGothicNew-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Zen Kaku Gothic New;src:url(/fonts/Zen_kaku/ZenKakuGothicNew-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Zen Kaku Gothic New;src:url(/fonts/Zen_kaku/ZenKakuGothicNew-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:NotoSans;src:url(/fonts/NotoSans-Light.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:NotoSansRegular;src:url(/fonts/NotoSans-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Zen Kurenaido;src:url(/fonts/zen-kurenaido/ZenKurenaido-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Zen Old Mincho;src:url(/fonts/Zen_Old_Mincho/ZenOldMincho-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}html:lang(ja){--font-sans: var(--font-sans-ja)}html:lang(en){--font-sans: var(--font-sans-en)}html:lang(ja) h1,html:lang(ja) h2,html:lang(ja) h3{letter-spacing:.01em}html:lang(en) h1,html:lang(en) h2,html:lang(en) h3{letter-spacing:-.01em}html:lang(ja) body{font-feature-settings:"palt" 1,"kern" 1}code,kbd,samp,pre{font-family:var(--font-mono);font-size:.95em;-moz-tab-size:2;tab-size:2}pre{overflow:auto}h1{font-size:calc(clamp(23px,1.03rem + 1.13vw,28px) * var(--heading-scale))}h2{font-size:calc(clamp(19px,.94rem + .8vw,23px) * var(--heading-scale))}h3{font-size:calc(clamp(15px,.89rem + .52vw,19px) * var(--heading-scale))}h1,h2,h3{font-family:var(--font-site-title);margin:0 0 var(--space-3);line-height:1.25;font-weight:700}.content-body h2{margin-block-start:var(--space-5)}.content-body h3{margin-block-start:var(--space-4)}.content-body :where(h2,h3):first-child{margin-block-start:0}p,ul,ol{margin:0 0 var(--space-4)}small{font-size:var(--fs-0);color:var(--muted)}html:lang(ja) .font-serif{font-family:var(--font-serif-ja, "Noto Serif JP", "Yu Mincho", serif)}html:lang(en) .font-serif{font-family:"Noto Serif",Georgia,Times New Roman,serif}a{color:var(--link-fg);text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:.1em;text-decoration-color:transparent;text-decoration-skip-ink:none;transition:text-decoration-color .12s ease}a:is(:hover,:focus-visible){color:var(--link-hover-fg);text-decoration-color:currentColor}a:visited{color:var(--link-visited-fg)}.nav-link:is(.is-active,[aria-current=page],[aria-current=true]){text-decoration-line:underline;text-decoration-thickness:var(--nav-underline-thickness);text-underline-offset:var(--nav-underline-offset);text-decoration-color:color-mix(in oklab,var(--nav-active-underline) var(--nav-underline-strength),transparent)}.nav-link:is(.is-active,[aria-current=page],[aria-current=true]):is(:hover,:focus-visible){text-decoration-line:underline;text-decoration-thickness:var(--nav-underline-thickness);text-underline-offset:var(--nav-underline-offset);text-decoration-color:color-mix(in oklab,var(--nav-active-underline) var(--nav-underline-strength),transparent)}.nav-link:is(.is-active,[aria-current=page],[aria-current=true]):after{content:none}:is(.layout .sidebar a,.sidebar-block a,.sidebar-list a){text-decoration-color:transparent;transition:text-decoration-color .12s ease}:is(.layout .sidebar a,.sidebar-block a):is(:hover,:focus-visible){text-decoration-color:currentColor}.sidebar-list :is(a[aria-current=page],a[aria-current=true],a.is-active,li.is-active>a){text-decoration-color:color-mix(in oklab,var(--nav-active-underline) var(--nav-underline-strength),transparent)}.sidebar-list :is(a[aria-current=page],a[aria-current=true],a.is-active,li.is-active>a):is(:hover,:focus-visible){text-decoration-color:color-mix(in oklab,var(--nav-active-underline) var(--nav-underline-strength),transparent);transition:none}.u-underline-accent{text-decoration-line:underline;text-decoration-thickness:var(--accent-underline-thickness);text-underline-offset:var(--accent-underline-offset);text-decoration-color:color-mix(in oklab,var(--accent-underline) var(--accent-underline-strength),transparent)}.u-underline-accent:is(:hover,:focus-visible){text-decoration-color:color-mix(in oklab,var(--accent-underline) var(--accent-underline-strength),transparent)}html,body,.content-body,.layout .sidebar{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:8px;border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}*::-webkit-scrollbar-track{background:transparent}:root{--checkbox-size: .9rem}.form-grid{display:block}.form-row{display:flex;gap:12px 16px;margin:12px 0;align-items:center}.form-label{flex:0 0 220px;max-width:40vw;font-weight:600;line-height:1.5;display:flex;align-items:center}.form-control{flex:1 1 auto;min-width:0}.form-input{width:min(520px,100%);box-sizing:border-box;padding:10px 12px;border:1px solid var(--border, var(--ink));border-radius:8px;background:var(--field-bg, var(--panel));font:inherit}.form-input[type=date]{padding:8px 10px}.form-help{display:block;margin-top:6px;color:var(--help);font-size:.7rem}.form-input,.form-grid input,.form-grid select,.form-grid textarea,.form-grid button{border-radius:0!important;-webkit-border-radius:0!important}.form-grid input,.form-grid select,.form-grid textarea{border:1px solid var(--border, var(--line))!important;background:var(--field-bg, var(--panel))!important;box-shadow:none!important;min-height:38px;padding:2px}.form-grid :is(input,select,textarea,button):focus-visible,.form-input:focus-visible{outline:2px solid color-mix(in srgb,currentColor 60%,transparent);outline-offset:2px;border-color:currentColor}.form-grid button{background:var(--button-bg, var(--ink))!important;color:var(--button-fg, var(--bg))!important;border:1px solid var(--border, var(--ink))!important}.form-grid button:hover{background:color-mix(in srgb,var(--bg, var(--ink)) 92%,var(--ink) 8%)}.form-grid button:disabled{opacity:.6}input[type=checkbox],input[type=radio]{width:auto;padding:0;margin:0;display:inline-block;vertical-align:middle}input[type=checkbox]{min-width:var(--checkbox-size);inline-size:var(--checkbox-size);block-size:var(--checkbox-size)}input[type=radio]{min-width:1rem;inline-size:1rem;block-size:1rem}input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;border:1px solid var(--checkbox-border, currentColor)!important;background:transparent!important;border-radius:0;cursor:pointer}input[type=checkbox]:after{content:"";position:absolute;left:50%;top:50%;width:.35rem;height:.65rem;border-right:2px solid var(--checkbox-tick, var(--accent-shu));border-bottom:2px solid var(--checkbox-tick, var(--accent-shu));transform:translate(-50%,-60%) rotate(45deg);opacity:0;pointer-events:none}input[type=checkbox]:checked:after{opacity:1}input[type=checkbox]:focus-visible{outline:2px solid color-mix(in srgb,var(--checkbox-tick, var(--accent-shu)) 45%,transparent);outline-offset:2px}input[type=checkbox]:disabled{opacity:.55;cursor:not-allowed}.form-grid input[type=checkbox]{min-height:var(--checkbox-size)!important}.form-checkbox{width:auto!important;height:1.05rem;margin:0;vertical-align:middle;border-radius:0!important;accent-color:var(--checkbox-accent, var(--accent))}@media (max-width: 720px){.form-row{flex-direction:column;align-items:stretch}.form-label{flex:none;width:auto}.form-input{width:100%}}@supports selector(:has(*)){.form-row:has(textarea),.form-row:has(select[multiple]){align-items:flex-start}}.form-row.row-top{align-items:flex-start}button,.btn{appearance:none;border:1px solid transparent;background:var(--ink);color:var(--ink-white);padding:10px 14px;border-radius:0;cursor:pointer}.btn-outline{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-outline:hover{background:color-mix(in srgb,var(--ink) 10%,transparent)}button.filters__reset-link{background:transparent;color:var(--ink);border-color:var(--ink)}button.filters__reset-link:hover{background:color-mix(in srgb,var(--ink) 10%,transparent)}button:disabled,.btn:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,.btn:focus-visible{outline:2px solid currentColor;outline-offset:2px}input,select,textarea{width:100%;padding:10px 12px;border:1px solid var(--line);background:var(--panel);color:inherit;border-radius:10px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:2px}input,select,textarea,.form-input{font-variant-numeric:tabular-nums}:root{--sb-gap: 10px;--sb-title-size: var(--fs-2, 1rem);--sb-menu-size: var(--fs-2, .8rem);--sb-section-title-size: var(--fs-1, .8rem);--sb-chevron-size: .4em;--sb-chevron-weight: 1px;--sb-chevron-color: var(--ink)}.sidebar-block{display:grid;gap:var(--sb-gap)}.sidebar-group{margin-top:8px;padding-top:8px;border-top:1px solid color-mix(in srgb,currentColor 8%,transparent)}.sidebar-block>.sidebar-group:first-of-type{margin-top:0;padding-top:0;border-top:0}.sidebar-legend{display:flex;align-items:center;justify-content:space-between;list-style:none;user-select:none;cursor:pointer;padding:4px 0;font-size:var(--sb-menu-size);font-weight:500}.sidebar-legend::-webkit-details-marker{display:none}.sidebar-legend:after{content:"";display:inline-block;inline-size:var(--sb-chevron-size);block-size:var(--sb-chevron-size);margin-left:.5rem;border-right:var(--sb-chevron-weight) solid var(--sb-chevron-color);border-bottom:var(--sb-chevron-weight) solid var(--sb-chevron-color);transform:rotate(45deg);transition:transform .16s ease}.sidebar-group[open] .sidebar-legend:after,.sidebar-legend[aria-expanded=true]:after{transform:rotate(135deg)}.sidebar-title{margin:5px 0;font-size:var(--sb-title-size);font-weight:800}.sidebar-list{list-style:disc;font-size:var(--sb-section-title-size);padding-left:10px;margin:0;display:grid;gap:4px}:root{--vt-duration: .28s;--vt-ease: ease;--vt-theme-duration: .7s}@keyframes reveal{0%{clip-path:inset(var(--from))}}::view-transition-new(animation-theme-toggle){z-index:99;clip-path:inset(0 0 0 0);animation:reveal var(--vt-theme-duration) cubic-bezier(.4,0,.2,1)}::view-transition-old(animation-theme-toggle){z-index:-1;animation:none}html.dark{--from: 0 0 100% 0}html:not(.dark){--from: 100% 0 0 0}html[data-theme-changing] [data-disable-theme-transition]{view-transition-name:none!important}::view-transition-old(root),::view-transition-new(root){animation-duration:var(--vt-duration);animation-timing-function:var(--vt-ease)}[data-no-vt]{view-transition-name:none!important}@media (prefers-reduced-motion: reduce){::view-transition-old(*),::view-transition-new(*){animation:none!important}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.waterline{height:1px;background:linear-gradient(90deg,transparent 0%,var(--water-surface) 20%,var(--water-mid) 50%,var(--water-surface) 80%,transparent 100%);opacity:.6}.skip-link{position:absolute;top:-100%;left:0;padding:.5rem 1rem;background:var(--water-surface, #182838);color:var(--heading, #D4C48A);font-size:.875rem;text-decoration:none;z-index:9999;border-radius:0 0 4px;transition:top .1s}.skip-link:focus{top:0}.site-footer[data-astro-cid-sz7xmlte]{margin-top:clamp(22px,5vw,42px);padding:14px clamp(16px,6vw,88px) 20px}.site-footer__inner[data-astro-cid-sz7xmlte]{width:min(100%,var(--content-max-width-default, 72ch));margin:0 auto;display:grid;gap:8px;justify-items:center;text-align:center}.site-footer__menu[data-astro-cid-sz7xmlte]{width:100%;margin:0;padding:0}.site-footer__copy[data-astro-cid-sz7xmlte]{display:block;color:var(--text-secondary, var(--menu-bubble-fg));font-family:var(--font-copyright);font-size:var(--fs-0);padding-top:2cap;justify-items:center;text-align:center}.site-footer__about[data-astro-cid-sz7xmlte]{color:var(--text-secondary);text-decoration:none;transition:color .15s}.site-footer__about[data-astro-cid-sz7xmlte]:after{content:none}.site-footer__about[data-astro-cid-sz7xmlte]:is(:hover,:focus-visible){color:var(--accent)}
