:root{--ink:#08090b;--ink2:#0f1115;--ink3:#181b22;--paper:#f2ede3;--soft:#cfc9bd;--mute:#9a958c;--dim:#5d5a55;--line:#f2ede31f;--line2:#f2ede33d;--shu:#ff4d2e;--kin:#f5b544;--ai:#4d7cff;--serif:"Shippori Mincho","Hiragino Mincho ProN","Yu Mincho","YuMincho","Noto Serif JP","Songti SC",serif;--sans:"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic","YuGothic","Noto Sans JP",system-ui,sans-serif;--mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;--pad:clamp(20px,5vw,72px);--ease:cubic-bezier(.2,.7,.2,1)}@font-face{font-family:Shippori Mincho;font-weight:600;font-style:normal;font-display:swap;src:url(/ichimai/assets/shippori-600-D25MBPot.woff2)format("woff2")}@font-face{font-family:Shippori Mincho;font-weight:500;font-style:normal;font-display:swap;src:url(/ichimai/assets/shippori-500-koHc3Lda.woff2)format("woff2")}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:56px}body{background:var(--ink);color:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased;line-break:strict;overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.9;overflow-x:hidden}::selection{background:var(--shu);color:#fff}a{color:inherit}canvas{width:100%;height:100%;display:block}button,input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--kin);outline-offset:3px;border-radius:4px}.skip{z-index:99;background:var(--paper);color:var(--ink);border-radius:8px;padding:8px 14px;transition:top .2s;position:fixed;top:-64px;left:12px}.skip:focus{top:12px}noscript p{padding:14px var(--pad);background:var(--shu);color:#fff;margin:0;font-size:14px}.nav{z-index:50;height:56px;padding:0 var(--pad);background:linear-gradient(#08090bd1,#08090b00);border-bottom:1px solid #0000;align-items:center;gap:20px;transition:background .4s,border-color .4s;display:flex;position:fixed;inset:0 0 auto}.nav.solid{-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);border-bottom-color:var(--line);background:#08090bcc}.brand{font-family:var(--serif);letter-spacing:.24em;white-space:nowrap;align-items:center;gap:10px;font-size:19px;font-weight:600;text-decoration:none;display:flex}.brand i{background:var(--shu);width:11px;height:11px;box-shadow:0 0 16px var(--shu);border-radius:50%}.nav nav{margin-left:auto}.nav ol{gap:2px;margin:0;padding:0;list-style:none;display:flex}.nav ol a{letter-spacing:.16em;color:var(--mute);border-radius:99px;padding:5px 12px;font-size:13px;text-decoration:none;transition:color .25s,background .25s;display:block}.nav ol a:hover{color:var(--paper)}.nav ol a.on{color:var(--ink);background:var(--paper)}.hud{font-family:var(--mono);color:var(--mute);white-space:nowrap;align-items:center;gap:12px;font-size:12px;display:flex}.hud b{text-align:right;min-width:2ch;color:var(--paper);font-weight:400;display:inline-block}.bar{background:var(--shu);transform-origin:0;width:100%;height:2px;position:absolute;bottom:-1px;left:0;transform:scaleX(0)}.hero{min-height:100vh;min-height:100svh;padding:112px var(--pad) clamp(36px,7vh,80px);isolation:isolate;background:radial-gradient(60% 60% at 70% 40%,#ff4d2e29,#0000 70%);align-items:end;display:grid;position:relative;overflow:hidden}.hero canvas{z-index:-2;position:absolute;inset:0}.hero:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(180deg,transparent 58%,var(--ink) 100%),linear-gradient(90deg,#08090b8c,transparent 55%);position:absolute;inset:0}.eyebrow{font-family:var(--mono);letter-spacing:.18em;color:var(--mute);align-items:center;gap:12px;margin:0;font-size:12px;display:flex}.eyebrow:before{content:"";background:var(--shu);width:36px;height:1px}h1{font-family:var(--serif);letter-spacing:.03em;font-feature-settings:"palt";margin:.28em 0 .34em;font-size:clamp(2.7rem,8.4vw,7.4rem);font-weight:600;line-height:1.14}h1 em{color:var(--shu);font-style:normal}h1 .ch{opacity:0;animation:rise 1s var(--ease) forwards;animation-delay:calc(var(--i)*55ms + .15s);display:inline-block;transform:translateY(.45em)rotate(5deg)}@keyframes rise{to{opacity:1;transform:none}}.lead{max-width:33em;color:var(--soft);margin:0;font-size:clamp(.98rem,1.2vw,1.1rem)}.chips{flex-wrap:wrap;gap:8px;margin:26px 0 0;padding:0;list-style:none;display:flex}.chips li{font-family:var(--mono);letter-spacing:.06em;color:var(--mute);border:1px solid var(--line2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#08090b73;border-radius:99px;padding:5px 14px;font-size:12px}.chips b{color:var(--paper);margin-left:.6em;font-weight:500}.tate{right:var(--pad);writing-mode:vertical-rl;font-family:var(--serif);letter-spacing:.5em;color:var(--mute);margin:0;font-size:13px;font-weight:600;position:absolute;top:92px}.cap{right:var(--pad);border-left:1px solid var(--shu);max-width:19em;color:var(--mute);margin:0;padding-left:14px;font-size:12px;line-height:1.8;position:absolute;bottom:clamp(36px,7vh,80px)}.cap b{font-family:var(--serif);letter-spacing:.3em;color:var(--paper);font-size:15px;font-weight:600;display:block}.ex{max-width:1560px;padding:clamp(72px,13vh,150px) var(--pad);border-top:1px solid var(--line);grid-template-columns:minmax(0,5fr) minmax(0,8fr);align-items:center;gap:clamp(28px,5vw,84px);margin-inline:auto;display:grid;position:relative}.ex.flip{grid-template-columns:minmax(0,8fr) minmax(0,5fr)}.ex.flip .txt{order:2}.hd{align-items:flex-end;gap:18px;margin-bottom:20px;display:flex}.no{font-family:var(--serif);color:#0000;-webkit-text-stroke:1px #f2ede35c;font-size:clamp(4.2rem,8vw,7.4rem);font-weight:600;line-height:.92}.hd .tag{border-top:1px solid var(--shu);max-width:none;font-family:var(--mono);letter-spacing:.12em;color:var(--shu);margin:0 0 .5em;padding-top:8px;font-size:12px;line-height:1.7}.ex h3,.kumi h3,.fin h2{font-family:var(--serif);letter-spacing:.06em;font-feature-settings:"palt";text-wrap:balance;word-break:auto-phrase;margin:0 0 .55em;font-size:clamp(1.9rem,4.2vw,3.5rem);font-weight:600;line-height:1.25}.ex p{max-width:30em;color:var(--soft);margin:0 0 1.1em}.stage{aspect-ratio:16/10;border:1px solid var(--line);background:var(--ink2);border-radius:14px;position:relative;overflow:hidden;box-shadow:0 44px 120px -46px #000,inset 0 0 0 1px #ffffff05}.stage canvas{touch-action:none;cursor:crosshair;position:absolute;inset:0}.stage.free{aspect-ratio:auto;padding:0 0 18px}.viz{aspect-ratio:16/6;border-bottom:1px solid var(--line);position:relative}.viz canvas{touch-action:auto;cursor:default}.hint{letter-spacing:.1em;color:var(--soft);border:1px solid var(--line);pointer-events:none;background:#08090b9e;border-radius:99px;padding:4px 12px;font-size:12px;transition:opacity .6s;position:absolute;bottom:12px;left:14px}.hint.off{opacity:0}.fail{z-index:2;text-align:center;color:var(--mute);background:var(--ink2);place-items:center;margin:0;padding:24px;font-size:14px;display:grid;position:absolute;inset:0}.meta{border-top:1px dashed var(--line2);font-family:var(--mono);color:var(--mute);flex-wrap:wrap;gap:4px 20px;margin:20px 0 0;padding:14px 0 0;font-size:12px;list-style:none;display:flex}.meta b{color:var(--paper);font-weight:500}.ctl{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.btn{appearance:none;letter-spacing:.08em;color:var(--paper);border:1px solid var(--line2);cursor:pointer;touch-action:manipulation;background:0 0;border-radius:99px;padding:8px 17px;font-size:13px;line-height:1.5;transition:background .2s,color .2s,border-color .2s,transform .15s}.btn:hover{border-color:var(--paper)}.btn:active{transform:scale(.96)}.btn[aria-pressed=true]{color:var(--ink);background:var(--paper);border-color:var(--paper)}.btn.shu{color:#fff;background:var(--shu);border-color:var(--shu)}.btn.sm{font-family:var(--sans);padding:4px 12px;font-size:12px}.field{border-bottom:1px solid var(--line2);align-items:center;gap:12px;max-width:22em;margin:4px 0 12px;padding:2px 2px 4px;transition:border-color .2s;display:flex}.field:focus-within{border-color:var(--shu)}.field label{letter-spacing:.14em;color:var(--mute);white-space:nowrap;font-size:12px}.field input{min-width:0;font-family:var(--sans);letter-spacing:.12em;background:0 0;border:0;outline:0;flex:1;padding:4px 0;font-size:1.4rem;font-weight:600}.rng{letter-spacing:.1em;color:var(--mute);align-items:center;gap:10px;font-size:12px;display:flex}input[type=range]{appearance:none;cursor:pointer;background:0 0;width:120px;height:24px;margin:0}input[type=range]::-webkit-slider-runnable-track{background:var(--line2);height:2px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--paper);border-radius:50%;width:14px;height:14px;margin-top:-6px}input[type=range]::-moz-range-track{background:var(--line2);height:2px}input[type=range]::-moz-range-thumb{background:var(--paper);border:0;border-radius:50%;width:14px;height:14px}.seq{grid-template-columns:auto repeat(16,minmax(0,1fr));align-items:center;gap:4px;padding:16px 18px 0;display:grid}.seq span{font-family:var(--mono);color:var(--mute);white-space:nowrap;padding-right:10px;font-size:11px}.seq button{aspect-ratio:1;background:var(--ink3);cursor:pointer;touch-action:manipulation;border:0;border-radius:4px;min-width:0;padding:0;transition:background .12s,transform .12s,box-shadow .12s}.seq button:nth-of-type(4n+1){background:#232732}.seq button:hover{background:#333948}.seq button[aria-pressed=true]{background:var(--paper)}.seq button.pc[aria-pressed=true]{background:var(--kin)}.seq button.now{background:#3a4050;transform:scale(1.16)}.seq button.now[aria-pressed=true]{background:var(--shu);box-shadow:0 0 16px var(--shu)}.fin{max-width:1560px;padding:clamp(80px,14vh,160px) var(--pad) 48px;border-top:1px solid var(--line);margin-inline:auto}.fin>p{max-width:34em;color:var(--soft);margin:0}.spec{border:1px solid var(--line);border-radius:14px;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));margin:44px 0;display:grid;overflow:hidden}.spec div{background:var(--ink);box-shadow:0 0 0 1px var(--line);padding:22px 20px}.spec dt{letter-spacing:.14em;color:var(--mute);font-size:12px}.spec dd{font-family:var(--mono);white-space:nowrap;margin:4px 0 0;font-size:clamp(1.3rem,1.9vw,1.75rem);line-height:1.5}.spec dd small{font-family:var(--sans);color:var(--mute);margin-left:.35em;font-size:.42em}.colophon{border-top:1px solid var(--line);letter-spacing:.1em;color:var(--mute);flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding-top:22px;font-size:12px;display:flex}.rv{opacity:0;transition:opacity 1s var(--ease),transform 1s var(--ease);transform:translateY(26px)}.rv.in{opacity:1;transform:none}.stage.rv{transition-delay:.12s}.nav .google-auto-placed,.hero .google-auto-placed,.stage .google-auto-placed,.txt .google-auto-placed,.part .google-auto-placed,.kumi-pin .google-auto-placed{display:none!important}.part{max-width:1560px;padding:clamp(96px,18vh,200px) var(--pad) clamp(36px,7vh,80px);border-top:1px solid var(--line);grid-template-columns:auto auto minmax(0,1fr);align-items:end;gap:clamp(18px,4vw,64px);margin-inline:auto;display:grid}.part-no{writing-mode:vertical-rl;font-family:var(--serif);letter-spacing:.6em;color:var(--shu);margin:0 0 .5em;font-size:15px;font-weight:600}.part h2{font-family:var(--serif);letter-spacing:.06em;margin:0;font-size:clamp(4.6rem,15vw,13.5rem);font-weight:600;line-height:.92}.part-tx{max-width:28em;color:var(--soft);margin:0 0 1em}.wait{z-index:1;letter-spacing:.2em;color:var(--mute);place-items:center;margin:0;font-size:13px;animation:1.4s ease-in-out infinite alternate wait;display:grid;position:absolute;inset:0}@keyframes wait{0%{opacity:.3}to{opacity:1}}.kumi{border-top:1px solid var(--line);position:relative}.kumi-pin{max-width:1560px;padding:clamp(72px,13vh,150px) var(--pad) 48px;flex-direction:column;margin-inline:auto;display:flex}.kumi.pin{height:calc(100vh + var(--travel,0px));height:calc(100svh + var(--travel,0px))}.kumi.pin .kumi-pin{height:100vh;height:100svh;padding-top:84px;padding-bottom:26px;position:sticky;top:0}.kumi-hd{grid-template-columns:auto minmax(0,1fr);align-items:end;gap:8px clamp(24px,5vw,72px);margin-bottom:clamp(14px,3vh,34px);display:grid}.kumi-hd .hd{margin:0}.kumi-hd h3{margin:0 0 .3em}.kumi-hd p{max-width:46em;color:var(--soft);margin:0;font-size:.94rem}.kumi-hd p b{font-family:var(--mono);color:var(--paper);font-weight:500}.kumi-track{writing-mode:vertical-rl;outline-offset:6px;flex:1;height:min(62vh,580px);min-height:0;overflow:auto hidden}.kumi.pin .kumi-track{height:auto;overflow:hidden}.kumi-text{height:100%;font-family:var(--serif);letter-spacing:.1em;will-change:transform;font-size:clamp(1.15rem,2.1vw,2.05rem);font-weight:500;line-height:2.2}.kumi-text p{margin:0;text-indent:1em;margin-block-end:1.5em}.kumi-text .ttl{letter-spacing:.3em;text-indent:0;margin-block-end:.5em;font-size:2.7em;font-weight:600;line-height:1.5}.kumi-text .by{letter-spacing:.3em;text-indent:0;text-align:end;color:var(--soft);margin-block-end:2.6em;font-size:.95em}.kumi-text .note{letter-spacing:.08em;text-indent:0;color:var(--mute);margin-block:3em 0;font-size:.7em;line-height:2.1}.kumi-text rt{letter-spacing:.02em;color:var(--mute);font-size:.48em}.kumi-text em{-webkit-text-emphasis:filled sesame var(--shu);-webkit-text-emphasis:filled sesame var(--shu);text-emphasis:filled sesame var(--shu);font-style:normal}.kumi-text .tcy{-webkit-text-combine:horizontal;text-combine-upright:all}.seal{letter-spacing:.08em;color:#fff;background:var(--shu);filter:url(#rough);border-radius:.22em;justify-content:center;align-items:center;margin-inline-start:1em;padding:.5em .34em .42em;font-size:.8em;font-weight:600;line-height:1.1;display:inline-flex;rotate:-2deg}.kumi.pin .kumi-text>*{opacity:0;filter:blur(7px);transition:opacity 1.1s var(--ease),filter 1.1s var(--ease)}.kumi.pin .kumi-text>.in{opacity:1;filter:none}.kumi-ft{letter-spacing:.12em;color:var(--mute);align-items:center;gap:20px;margin-top:18px;font-size:12px;display:flex}.kumi-ft p{margin:0}.kumi-bar{background:var(--line2);flex:1;height:1px}.kumi-bar i{background:var(--shu);transform-origin:100%;height:3px;margin-top:-1px;display:block;transform:scaleX(0)}.defs{position:absolute}.cred-h{font-family:var(--serif);letter-spacing:.2em;margin:0 0 12px;font-size:1.15rem;font-weight:600}.cred{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:0 36px;margin:0 0 44px;padding:0;list-style:none;display:grid}.cred li{border-bottom:1px solid var(--line);align-items:baseline;gap:12px;padding:11px 0;font-size:13px;display:flex}.cred b{white-space:nowrap;font-weight:500}.cred span{color:var(--mute);flex:1}.cred small{font-family:var(--mono);color:var(--mute);white-space:nowrap;font-size:11px}@media (max-width:920px){.nav nav,.tate,.cap{display:none}.hud{margin-left:auto}.ex,.ex.flip{grid-template-columns:minmax(0,1fr)}.ex.flip .txt{order:0}.stage{aspect-ratio:4/3.6}.viz{aspect-ratio:16/8}.seq{gap:3px;padding:14px 10px 0}.seq span{padding-right:6px;font-size:10px}.seq button{aspect-ratio:2/3}.hero:after{background:linear-gradient(180deg,#08090b1a 30%,var(--ink) 92%)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rv{opacity:1;transition:none;transform:none}h1 .ch{opacity:1;animation:none;transform:none}}@media (max-width:1120px){.nav nav{display:none}.hud{margin-left:auto}}@media (max-width:920px){.part{grid-template-columns:auto minmax(0,1fr)}.part-tx{grid-column:1/-1;margin:0}.kumi-hd{grid-template-columns:minmax(0,1fr)}.kumi.pin .kumi-pin{padding-top:72px}.kumi-hd .no{font-size:3.2rem}.kumi-ft{flex-direction:column;align-items:stretch;gap:10px}.kumi-bar{flex:none}}
