.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}:root{--bg:#faf9f7;--fg:#141312;--hairline:#8080804d;--hairline-soft:#8080802e;--serif-jp:"Zen Old Mincho", "Hiragino Mincho ProN", serif;--serif-en:"Newsreader", Georgia, serif;--sans:"Jost", -apple-system, sans-serif;--mono:ui-monospace, Menlo, monospace;--pad-x:clamp(18px, 5vw, 40px);--content-max:1440px}*,:before,:after{box-sizing:border-box}html,body{max-width:100%;margin:0;padding:0}body{background:var(--bg);color:var(--fg);font-family:var(--serif-jp);-webkit-font-smoothing:antialiased}:focus-visible{outline-offset:3px;outline:1px solid var(--fg)!important}.skip-link{z-index:100;background:var(--fg);color:var(--bg);font:400 12px/1 var(--sans);letter-spacing:.1em;padding:10px 16px;position:absolute;top:12px;left:-9999px}.skip-link:focus-visible{left:12px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}a{color:inherit;text-decoration:none;transition:opacity .25s}a:hover{opacity:.55}::selection{background:var(--fg);color:var(--bg)}img{max-width:100%;display:block}.site-nav{z-index:50;font-family:var(--sans);justify-content:space-between;align-items:center;gap:20px;padding:18px clamp(16px,2.4vw,28px);display:flex;position:fixed;top:0;left:0;right:0}.nav-blur{-webkit-backdrop-filter:blur(14px);pointer-events:none;background:#8080800f;position:absolute;inset:0}.nav-brand{z-index:2;font:400 11px/1 var(--sans);letter-spacing:.34em;text-transform:uppercase;position:relative}.nav-links{z-index:2;font:300 11px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:10px clamp(14px,1.8vw,26px);display:flex;position:relative}.nav-links a{align-items:center;gap:6px;display:flex}.nav-links .dot{font-size:9px}.nav-burger{color:inherit;cursor:pointer;z-index:61;background:0 0;border:0;place-items:center;width:40px;height:40px;margin:-8px -8px -8px 0;padding:0;display:none;position:relative}.burger-lines{gap:5px;width:20px;display:grid}.burger-lines i{background:currentColor;height:1px;transition:transform .3s,opacity .2s;display:block}.nav-scrim{display:none}@media (width<=820px){.nav-burger{display:grid}.nav-burger.nav-open i:first-child{transform:translateY(6px)rotate(45deg)}.nav-burger.nav-open i:nth-child(2){opacity:0}.nav-burger.nav-open i:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.nav-scrim{z-index:55;opacity:0;pointer-events:none;background:#00000052;transition:opacity .42s;display:block;position:fixed;inset:0}.nav-scrim.nav-open{opacity:1;pointer-events:auto}.nav-links{z-index:60;letter-spacing:.2em;background:color-mix(in srgb, var(--bg) 97%, transparent);flex-flow:column;justify-content:flex-start;align-items:flex-start;gap:2px;width:min(78vw,320px);padding:76px 28px 44px;font-size:15px;transition:transform .42s cubic-bezier(.22,.61,.36,1);position:fixed;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(100%)}.nav-links.nav-open{transform:translate(0)}.nav-links a{border-bottom:1px solid #80808029;justify-content:space-between;width:100%;min-height:46px}}.site-footer{max-width:var(--content-max);padding:40px var(--pad-x) 60px;border-top:1px solid var(--hairline);font:300 11px/2 var(--sans);letter-spacing:.2em;text-transform:uppercase;opacity:.75;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px 30px;margin:0 auto;display:flex}.footer-left{align-items:center;gap:18px;display:flex}.footer-right{flex-wrap:wrap;align-items:center;gap:26px;display:flex}.icon-link{opacity:.65;border:1px solid #80808059;place-items:center;width:34px;height:34px;display:grid}.icon-link:hover{opacity:1}.mono{font:400 10px/1.6 var(--mono);letter-spacing:.06em}.handle{opacity:.65;text-transform:none}.reveal-init{opacity:0;transition:opacity .95s,transform 1.1s cubic-bezier(.22,.61,.36,1);transform:translateY(16px)}.revealed{opacity:1!important;transform:none!important}.label-sans{font:300 11px/1 var(--sans);letter-spacing:.28em;text-transform:uppercase;opacity:.55}.label-mono{font:400 11px/1 var(--mono);letter-spacing:.2em;opacity:.5}.text-en{font-family:var(--serif-en);letter-spacing:.05em;opacity:.6;font-weight:300}.hs{scrollbar-width:none}.hs::-webkit-scrollbar{display:none}
