@font-face{font-family:Noto Serif JP;src:url(/fonts/NotoSerifJP-wght.woff2)format("woff2");font-weight:300 500;font-display:swap}@font-face{font-family:Jost;src:url(/fonts/Jost-wght.woff2)format("woff2");font-weight:400 600;font-display:swap}:root{--paper:#f5f2eb;--ink:#160e0c;--matcha:#6a8025;--walnut:#4f2c14;--bg:var(--paper);--surface:#ebe6da;--surface-2:#e2e4d2;--muted:#5c524a;--accent:var(--matcha);--accent-strong:#7a922c;--accent-hover:#88a234;--accent-ink:var(--ink);--field-1:var(--ink);--field-1-ink:var(--paper);--field-1-muted:#b8a98f;--field-2:var(--walnut);--field-2-ink:var(--paper);--field-2-muted:#e0cfb4;--pic-ground:#2a2018;--scrim:#160e0c8c;--font-display:"Noto Serif JP", serif;--font-text:"Jost", sans-serif;--step-small:clamp(.875rem, .84rem + .12vw, .9375rem);--step-body:clamp(1.0625rem, 1rem + .2vw, 1.1875rem);--step-lead:clamp(1.375rem, 1rem + 1.4vw, 2.25rem);--step-head:clamp(2.5rem, 1.4rem + 3.6vw, 4.5rem);--step-display:clamp(3.5rem, 1rem + 8.4vw, 9rem);--margin:clamp(1.25rem, 3.4vw, 3.5rem);--gutter:clamp(1rem, 2vw, 2rem);--section:clamp(5.5rem, 9vw, 8.5rem);--header:4rem;--radius:3px;--o-ring:7%;--o-bar-w:62.5%;--o-bar-h:.055;--o-bar-gap:.055;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-expo:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.76, 0, .24, 1);--ease-soft:cubic-bezier(.33, 1, .68, 1);--ease-exit:cubic-bezier(.55, .055, .675, .19);--t-press:.14s;--t-hover:.18s;--t-ui:.24s;--t-reveal:.8s;--t-open:1.2s;--stagger-line:90ms;--stagger-item:70ms;--focus:var(--accent);--bar-h:var(--header);--section-gap:var(--section)}@media (max-width:640px){:root{--step-small:1rem}}
*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-text);font-size:var(--step-body);font-feature-settings:"ss01";font-kerning:normal;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.6}h1,h2,h3,p,figure,blockquote,ul,ol,dl,dd,fieldset{margin:0}ul,ol{padding:0;list-style:none}fieldset{border:0;min-width:0;padding:0}img,video,svg{max-width:100%;display:block}img,video{height:auto}button,input{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit}:target{scroll-margin-top:calc(var(--header) + 1rem)}::selection{background:var(--accent);color:var(--ink)}h1,h2,h3{font-family:var(--font-display);text-wrap:balance;font-weight:300}p{text-wrap:pretty}[lang=ja]{font-family:var(--font-display);letter-spacing:.04em}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.small{font-size:var(--step-small);line-height:1.5}.lead{font-size:var(--step-lead);line-height:1.3;font-family:var(--font-display);letter-spacing:-.01em;font-weight:300}.head{font-size:var(--step-head);letter-spacing:-.025em;line-height:1.02}.wrap{padding-inline:var(--margin)}.link{text-decoration:underline;-webkit-text-decoration-color:color-mix(in oklab, currentColor 35%, transparent);text-decoration-color:color-mix(in oklab, currentColor 35%, transparent);text-underline-offset:.22em;transition:text-decoration-color var(--t-hover) ease;text-decoration-thickness:.07em}.link--stand{padding-block:max(0px, calc((var(--hit) - 1lh) / 2));display:inline-block}@media (hover:hover) and (pointer:fine){.link:hover{text-decoration-color:currentColor}}.dot-list li{padding-left:1.4em;position:relative}.dot-list li:before{content:"";background:var(--accent);border-radius:50%;width:.5em;height:.5em;position:absolute;top:.62em;left:.1em}.disc{aspect-ratio:1;background:var(--surface);border-radius:50%;margin:0;position:relative;overflow:clip}.disc>img,.disc>video{object-fit:cover;width:100%;height:100%}:where(.o){width:var(--d);aspect-ratio:1;position:relative}.o__ring{background:var(--accent);border-radius:50%;position:absolute;inset:0}.o__bar{left:calc((100% - var(--o-bar-w)) / 2);width:var(--o-bar-w);height:calc(var(--d) * var(--o-bar-h));top:calc(var(--d) * (var(--o-bar-h) + var(--o-bar-gap)) * -1);background:var(--accent);border-radius:var(--radius);position:absolute}.o__pic{inset:var(--o-ring);background:var(--pic-ground);border-radius:50%;position:absolute;overflow:clip}.o__pic>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.o__pic>[data-fade]{opacity:0}@media (prefers-reduced-motion:no-preference){.js [data-line]{animation:rise-line .9s var(--ease-expo) forwards;animation-delay:calc(.12s + var(--i,0) * var(--stagger-line));transform:translateY(105%)}.js [data-load]{opacity:0;animation:rise .6s var(--ease-out) forwards;animation-delay:var(--dl,0s);transform:translateY(14px)}.js .o[data-open=load] .o__ring,.js .o[data-open=enter] .o__ring{transform:scale(.94)}.js .o[data-open=load] .o__pic,.js .o[data-open=enter] .o__pic{clip-path:circle(0%)}.js .o[data-open=load] .o__bar,.js .o[data-open=enter] .o__bar{transform:scaleX(0)}.js .o[data-open=load] .o__ring,.js .o[data-open=enter].is-in .o__ring{animation:settle 1.1s var(--ease-expo) 80ms forwards}.js .o[data-open=load] .o__pic,.js .o[data-open=enter].is-in .o__pic{animation:iris var(--t-open) var(--ease-in-out) .15s forwards}.js .o[data-open=load] .o__bar,.js .o[data-open=enter].is-in .o__bar{animation:bar .9s var(--ease-expo) .52s forwards}.o__pic>[data-fade]{animation:14s ease-in-out 2s infinite crossfade}.js [data-reveal]{opacity:0;transition:opacity .7s var(--ease-out), transform .9s var(--ease-expo);transition-delay:calc(var(--i,0) * var(--stagger-item));transform:translateY(24px)}.js [data-reveal].is-in{opacity:1;transform:none}.js [data-iris]{clip-path:circle(0%);transition:clip-path var(--t-open) var(--ease-in-out);transition-delay:calc(var(--i,0) * var(--stagger-item))}.js [data-iris].is-in{clip-path:circle(50%)}.js [data-iris]>img{transition:transform 1.5s var(--ease-soft);transform:scale(1.12)}.js [data-iris].is-in>img{transform:none}.js .card[data-tilt]{opacity:0;transform:translateY(40px) rotate(var(--r,-2deg));transition:opacity .7s var(--ease-out), transform .9s var(--ease-expo), background-color .4s ease;transition-delay:calc(var(--i,0) * var(--stagger-item))}.js .card[data-tilt].is-in{opacity:1;transform:none}.js .card[data-tilt].is-in.is-match{transform:translateY(-.75rem)}.js .card.is-pop{animation:tilt-settle .7s var(--ease-expo)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.drift{animation:linear both drift;animation-timeline:view();animation-range:cover}.drift--slow{--dy:6%}.drift--fast{--dy:22%}@keyframes drift{0%{transform:translateY(var(--dy))}to{transform:translateY(calc(var(--dy) * -1))}}.o--recede{animation:linear both recede;animation-timeline:scroll(root);animation-range:0 100svh}@keyframes recede{to{transform:translateY(8%)scale(.96)}}.is-filling>span{color:color-mix(in oklab, var(--ink) 45%, transparent);animation:linear both ink-fill;animation-timeline:view();animation-range:cover 20% cover 45%}@keyframes ink-fill{to{color:var(--ink)}}}}@keyframes rise-line{to{transform:none}}@keyframes rise{to{opacity:1;transform:none}}@keyframes settle{to{transform:none}}@keyframes iris{to{clip-path:circle(50%)}}@keyframes bar{to{transform:none}}@keyframes crossfade{0%,40%{opacity:0}50%,90%{opacity:1}to{opacity:0}}@keyframes tilt-settle{0%{transform:translateY(18px)rotate(-2.5deg)}to{transform:translateY(-.75rem)}}
:root{--hit:24px;--text-min:16px;--cap-min:11px;--max:none}body{padding-inline:var(--rail,0px)}@media (max-width:1023px),(pointer:coarse){:root{--hit:44px}}:focus-visible{outline:2px solid var(--focus,currentColor);outline-offset:3px}
