:root{--color-bg: #f6f2ec;--color-bg-2: #fcfaf6;--color-text: #1c1b19;--color-text-soft: #2a2d2a;--color-muted: #6e6a63;--color-muted-2: #908a80;--color-border: #e3dcd2;--color-border-strong: #d6cdbe;--color-clay: #b0744f;--color-clay-soft: #c99577;--color-dark-bg: #1b1714;--color-dark-bg-2: #14110f;--color-dark-ink: #f6f2ec;--color-dark-muted: #8c857a;--color-dark-border: #2e2925;--font-serif: "Noto Serif JP", "A1 Mincho", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;--font-sans: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic UI", "Yu Gothic", Meiryo, system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Menlo", "Consolas", monospace;--step-display: clamp(34px, 4.8vw, 68px);--step-1: clamp(26px, 3.2vw, 44px);--step-2: clamp(22px, 2.6vw, 36px);--step-3: 20px;--step-body-lg: 16px;--step-body: 14.5px;--rail: 8.5vw;--rail-min: 32px;--container: 1320px;--section-y: clamp(96px, 12vw, 200px);--header-h: 84px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--step-body);line-height:1.95;letter-spacing:.03em;font-feature-settings:"palt";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}p{margin:0}::selection{background:var(--color-clay);color:#fff}.page{position:relative}.content{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:max(var(--rail),var(--rail-min))}.section{padding-block:var(--section-y)}.row{display:flex;flex-wrap:wrap;gap:clamp(24px,4vw,64px)}.col{flex:1;min-width:0}.stack{display:flex;flex-direction:column;gap:16px}.stack-lg{display:flex;flex-direction:column;gap:32px}.spine{position:absolute;left:max(var(--rail),var(--rail-min));top:0;bottom:0;width:1px;background:var(--color-border);pointer-events:none}.rail-dot{display:inline-block;width:6px;height:6px;background:var(--color-clay);border-radius:50%;margin-right:14px;vertical-align:middle}h1,h2,h3,h4{margin:0;font-family:var(--font-serif);font-weight:500;line-height:1.45;letter-spacing:.04em;color:var(--color-text)}.h-display{font-family:var(--font-serif);font-weight:500;font-size:var(--step-display);line-height:1.18;letter-spacing:.02em}.h-1{font-family:var(--font-serif);font-weight:500;font-size:var(--step-1);line-height:1.3;letter-spacing:.04em}.h-2{font-family:var(--font-serif);font-weight:500;font-size:var(--step-2);line-height:1.4;letter-spacing:.04em}.h-3{font-family:var(--font-serif);font-weight:500;font-size:var(--step-3);line-height:1.55;letter-spacing:.04em}.body-lg{font-size:var(--step-body-lg);line-height:2}.body{font-size:var(--step-body);line-height:1.95}.body-sub{font-size:12px;letter-spacing:.08em;color:var(--color-muted)}.eyebrow{font-family:var(--font-sans);font-size:10px;font-weight:500;letter-spacing:.36em;text-transform:uppercase;color:var(--color-clay);margin:0}.eyebrow.ink{color:var(--color-text)}.eyebrow.sub{color:var(--color-muted)}.section-tag{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-sans);font-size:11px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--color-muted);margin:0}.kbd-caps{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.36em;text-transform:uppercase;color:var(--color-muted)}.muted{color:var(--color-muted)}.section-tag .num{font-family:var(--font-mono);color:var(--color-text);letter-spacing:.12em}.section-tag .dash{display:inline-block;width:22px;height:1px;background:var(--color-border-strong)}.hairline{height:1px;background:var(--color-border);width:100%;border:0;margin:0}.hairline-draw{position:relative;height:1px;width:100%;overflow:hidden}.hairline-draw:before{content:"";position:absolute;inset:0;background:var(--color-border-strong);transform:scaleX(0);transform-origin:left center;transition:transform 1.2s ease-out}.hairline-draw.in-view:before{transform:scaleX(1)}.link{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-sans);font-weight:500;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text);border-bottom:1px solid var(--color-text);padding-bottom:3px;transition:color .2s ease,border-color .2s ease,gap .25s ease}.link:after{content:"→"}.link:hover{color:var(--color-clay);border-color:var(--color-clay);gap:16px}.link-quiet{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-sans);font-weight:500;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--color-muted);transition:color .2s ease}.link-quiet:hover{color:var(--color-text)}.is-disabled{color:var(--color-muted-2);border-color:var(--color-border);pointer-events:none}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--color-clay);color:#fff;font-family:var(--font-sans);font-weight:500;font-size:12px;letter-spacing:.22em;text-transform:uppercase;padding:17px 36px;border:0;cursor:pointer;transition:background .25s ease,transform .25s ease}.btn-primary:hover{background:var(--color-clay-soft)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.ph{position:relative;background:var(--color-border);overflow:hidden}.ph:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,var(--color-border) 0%,var(--color-border-strong) 100%)}.ph-label{position:absolute;left:16px;top:16px;z-index:1;font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--color-muted-2)}.ph-corner{position:absolute;right:16px;bottom:16px;z-index:1;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--color-muted-2)}.site-header{position:sticky;top:0;z-index:100;background:transparent;border-bottom:1px solid transparent;transition:background .3s ease,border-color .3s ease}.site-header.is-scrolled{background:#f6f2eceb;backdrop-filter:saturate(140%) blur(12px);border-bottom-color:var(--color-border)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px max(var(--rail),var(--rail-min))}.brand{display:inline-flex;align-items:center;gap:14px;color:var(--color-text)}.brand-mark{color:var(--color-text);flex:none}.brand-lockup{display:flex;flex-direction:column;gap:3px;line-height:1}.brand-en{font-family:var(--font-serif);font-weight:500;font-size:22px;letter-spacing:.06em;color:var(--color-text)}.nav{display:flex;align-items:center;gap:34px;font-family:var(--font-sans);font-size:11px;font-weight:500;letter-spacing:.22em}.nav a{color:var(--color-muted);transition:color .2s ease;position:relative}.nav a:hover,.nav a.is-active{color:var(--color-text)}.nav a.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:1px;background:var(--color-clay)}.lang{font-size:11px;font-weight:500;letter-spacing:.22em;color:var(--color-text);padding-left:24px;border-left:1px solid var(--color-border)}.tagline-band{background:var(--color-dark-bg);color:var(--color-dark-ink);padding:clamp(80px,11vw,140px) max(var(--rail),var(--rail-min)) 28px}.tagline-band.light{background:var(--color-bg-2);color:var(--color-text);border-top:1px solid var(--color-border)}.tagline-band .tagline{font-family:var(--font-serif);font-weight:500;font-size:clamp(24px,3.4vw,48px);line-height:1.6;letter-spacing:.04em;max-width:30ch;color:var(--color-dark-ink)}.tagline-band.light .tagline{color:var(--color-text)}.tagline-foot{margin-top:clamp(48px,7vw,88px);padding-top:28px;border-top:1px solid var(--color-dark-border);display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:24px;align-items:end;font-size:11px;letter-spacing:.1em;color:var(--color-dark-muted)}.tagline-band.light .tagline-foot{border-color:var(--color-border);color:var(--color-muted)}.tagline-band .brand-en{color:var(--color-dark-ink)}.tagline-band.light .brand-en{color:var(--color-text)}.tagline-band .addr,.slim-foot .addr{line-height:1.8}.tagline-band .copy{text-align:right;font-family:var(--font-mono)}.slim-foot{padding:36px max(var(--rail),var(--rail-min));display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:24px;align-items:center;border-top:1px solid var(--color-border);font-size:11px;letter-spacing:.1em;color:var(--color-muted)}.slim-foot .copy{text-align:right;font-family:var(--font-mono)}.fade{opacity:0;transform:translateY(18px);transition:opacity .6s ease-out,transform .6s ease-out}.fade.in-view{opacity:1;transform:none}.fade.d-1{transition-delay:.08s}.fade.d-2{transition-delay:.16s}.fade.d-3{transition-delay:.24s}.fade.d-4{transition-delay:.32s}.fade.d-5{transition-delay:.4s}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){.fade{opacity:1;transform:none;transition:none}.hairline-draw:before{transform:scaleX(1);transition:none}html{scroll-behavior:auto}}.nav-burger{display:none;flex-direction:column;justify-content:center;gap:7px;width:28px;height:28px;cursor:pointer}.nav-burger span{height:1px;background:var(--color-text);transition:transform .25s ease,opacity .25s ease}.nav-toggle{display:none}@media(max-width:1180px){.nav{gap:22px;font-size:10.5px}}@media(max-width:1024px){.nav,.lang{display:none}.nav-burger{display:flex}.nav-toggle:checked~.nav{display:flex;position:fixed;inset:64px 0 auto;flex-direction:column;align-items:stretch;gap:0;background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:8px max(var(--rail),var(--rail-min)) 28px}.nav-toggle:checked~.nav a{padding-block:18px;border-bottom:1px solid var(--color-border);font-size:12px;letter-spacing:.24em}}@media(max-width:880px){:root{--rail: 24px;--section-y: 80px}.tagline-foot,.slim-foot{grid-template-columns:1fr;gap:16px;text-align:left}.tagline-band .copy,.slim-foot .copy{text-align:left}}.brand-lockup[data-astro-cid-sz7xmlte].with-mark{display:inline-flex;align-items:center;gap:12px;flex-direction:row}.foot-mark[data-astro-cid-sz7xmlte]{color:var(--color-dark-ink)}.tagline-band[data-astro-cid-sz7xmlte].light .foot-mark[data-astro-cid-sz7xmlte],.slim-foot[data-astro-cid-sz7xmlte] .foot-mark[data-astro-cid-sz7xmlte]{color:var(--color-text)}body{display:flex;flex-direction:column;min-height:100vh}main[data-astro-cid-37fxchfa]{flex:1}
