@font-face{font-family:Plus Jakarta Sans;src:url(/fonts/plus-jakarta-sans-semibold.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Plus Jakarta Sans;src:url(/fonts/plus-jakarta-sans-bold.woff2)format("woff2");font-weight:700;font-display:swap}:root{color-scheme:light;--color-bg:#f7f7f4;--color-surface:#fff;--color-surface-low:#eff1f0;--color-text:#2d3335;--color-muted:#5a6062;--color-faint:#8a9092;--color-border:#e2e5e4;--color-ink:#1a8fd6;--color-accent:#0273b0;--color-accent-text:#fff;--color-peach:#ffdbc7;--color-peach-text:#6e4f3c;--font-sans:-apple-system, BlinkMacSystemFont, "Hiragino Sans", "PingFang SC", "PingFang TC", "Apple SD Gothic Neo", "Segoe UI", system-ui, sans-serif;--font-display:"Plus Jakarta Sans", var(--font-sans);--text-hero:clamp(2.125rem, 1.4rem + 3.2vw, 3.5rem);--text-h2:clamp(1.5rem, 1.2rem + 1.2vw, 2.125rem);--text-mark:clamp(1.75rem, 1.3rem + 1.8vw, 2.75rem);--text-body:1.0625rem;--text-small:.875rem;--tracking-display:-.02em;--radius-card:16px;--radius-shot:22px;--radius-button:10px;--content-width:1040px;--prose-width:680px;--space-section:clamp(4rem, 3rem + 4vw, 7rem);--shadow-shot:0 1px 2px #2d33350f, 0 10px 28px #2d333512}h1,h2,h3{word-spacing:.06em}:lang(ja) :is(h1,h2,h3){word-break:auto-phrase}:root{--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--duration-press:.16s;--duration-ui:.2s;--duration-enter:.5s;--duration-reveal:.6s;--stagger:60ms}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3{font-family:var(--font-display);letter-spacing:var(--tracking-display);text-wrap:balance;margin:0;line-height:1.15}p{text-wrap:pretty}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:4px}.container{width:min(100% - 2rem, var(--content-width));margin-inline:auto}.prose{width:min(100% - 2rem, var(--prose-width));margin-inline:auto}.doc{padding-block:2rem 0}.doc h1{font-size:var(--text-h2);margin-bottom:1rem}.doc h2{margin:2.5rem 0 .75rem;font-size:1.25rem}.doc .updated,.doc .intro{color:var(--color-muted)}.skip-link{background:var(--color-surface);border-radius:var(--radius-button);z-index:10;padding:.5rem .75rem;position:absolute;top:-3rem;left:1rem}.skip-link:focus{top:1rem}.button{border-radius:var(--radius-button);background:var(--color-accent);color:var(--color-accent-text);transition:transform var(--duration-press) var(--ease-out), opacity var(--duration-ui) ease;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-weight:600;text-decoration:none;display:inline-flex}.button:active,.badge:active{transform:scale(.97)}.badge{transition:transform var(--duration-press) var(--ease-out);display:inline-block}.link{color:var(--color-muted);transition:color var(--duration-ui) ease;text-decoration:none}@media (hover:hover) and (pointer:fine){.button:hover{opacity:.9}.link:hover{color:var(--color-text)}}.enter{animation:enter var(--duration-enter) var(--ease-out) both;animation-delay:calc(var(--i,0) * var(--stagger))}@keyframes enter{0%{opacity:0;transform:translateY(8px)}}[data-reveal=pending]{opacity:0;transform:translateY(12px)}[data-reveal]{transition:opacity var(--duration-reveal) var(--ease-out), transform var(--duration-reveal) var(--ease-out);transition-delay:calc(var(--i,0) * var(--stagger))}@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:var(--duration-ui);animation-timing-function:var(--ease-out)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}.enter{animation-name:fade;animation-duration:var(--duration-ui)}[data-reveal=pending]{transform:none}[data-reveal]{transition:opacity var(--duration-ui) ease}.button:active,.badge:active{transform:none}}@keyframes fade{0%{opacity:0}}
