:root{--ink:#0c0a08;--paper:#f1ebe0;--paper2:#f1ebe0ad;--paper3:#f1ebe066;--hair:#f1ebe04d;--shu:#d4502f;--water:#9ab9c2;--jp:"Shippori Mincho B1", "Hiragino Mincho ProN", "Yu Mincho", serif;--en:"Cormorant Garamond", "Iowan Old Style", Georgia, serif;--mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;--ease:cubic-bezier(.2, .7, .1, 1);--out:cubic-bezier(.6, 0, .8, .2)}html.locked,html.locked body{overflow:hidden}html{scrollbar-width:none}html.clean .ut{display:none}html::-webkit-scrollbar{display:none}.v{writing-mode:vertical-rl;text-orientation:upright}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0}button:focus-visible{outline:1px solid var(--shu);outline-offset:4px}#load{z-index:50;background-color:var(--ink);color:var(--paper);perspective:1400px;perspective-origin:50% 30%;transition:background-color 1.5s var(--ease) .15s;position:fixed;inset:0;overflow:hidden}#load:before{content:"";pointer-events:none;background:radial-gradient(70% 60% at 50% 45%,#f1ebe009,#0000 70%);position:absolute;inset:0}#load .boot{font:400 18px var(--jp);letter-spacing:.4em;opacity:.5;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#load .sheet{transform-origin:50% 80%;width:min(70vw,112vh);transition:transform 1.7s var(--out), opacity 1.2s var(--ease) .35s;position:absolute;top:41%;left:50%;transform:translate(-50%,-50%)}.plan{width:100%;height:auto;display:block;overflow:visible}.plan path{fill:none;stroke:var(--paper);stroke-dasharray:1 1;stroke-linecap:round;stroke-linejoin:round}.plan .wall{stroke-width:.06px;opacity:.85}.plan .wing{stroke-width:.08px}.plan .room{stroke-width:.04px;opacity:.62}.plan .mat{stroke-width:.026px;opacity:.3}.plan .water{stroke:var(--water);stroke-width:.05px;opacity:.85}.plan .walk{stroke:var(--shu);stroke-width:.075px}.plan .walk.air{stroke-width:.045px;opacity:.45}.plan text{paint-order:stroke;stroke:var(--ink);stroke-width:.2px;stroke-linejoin:round}.plan .stop,.plan .rname,.plan .furniture{opacity:0;transition:opacity .9s var(--ease)}.plan .in{opacity:1}.plan .stop circle{fill:var(--ink);stroke:var(--shu);stroke-width:.06px}.plan .stop text{font:500 .62px var(--mono);fill:var(--paper);letter-spacing:.04px}.plan .rname{font:400 .72px var(--jp);fill:var(--paper2);text-anchor:middle;letter-spacing:.12px}.plan .furniture path{stroke:var(--paper3);stroke-width:.045px;stroke-dasharray:none}.plan .furniture text{font:400 .62px var(--mono);fill:var(--paper3)}#load .titleblock{border-top:1px solid var(--hair);width:380px;transition:opacity .6s var(--ease), transform .9s var(--ease);position:absolute;bottom:5.5vh;right:4.2vw}.tb-title{align-items:flex-start;gap:22px;padding:18px 0 16px;display:flex}.tb-title .jp{font:500 46px/1 var(--jp);letter-spacing:.16em}.tb-names{flex-direction:column;gap:6px;padding-top:2px;display:flex}.tb-names b{font:italic 500 36px/1 var(--en);letter-spacing:.01em}.tb-names i{font:italic 500 17px/1.3 var(--en);color:var(--paper2)}.tb-names em{font:400 12px/1.6 var(--jp);color:var(--paper3);letter-spacing:.14em;font-style:normal}.tb-meta{border-top:1px solid var(--hair);font:400 10px var(--mono);letter-spacing:.24em;color:var(--paper2);justify-content:space-between;padding-top:10px;display:flex}.tb-meta .pct{color:var(--shu);font-variant-numeric:tabular-nums}#load .enter{opacity:0;pointer-events:none;transition:opacity .9s var(--ease), transform .9s var(--ease);flex-direction:column;align-items:flex-start;display:flex;position:absolute;bottom:5.5vh;left:4.2vw;transform:translateY(10px)}#load.ready .enter{opacity:1;pointer-events:auto;transform:none}.enter .go{border:1px solid var(--paper3);transition:border-color .5s var(--ease), color .5s var(--ease);align-items:baseline;gap:16px;padding:15px 30px 15px 26px;display:flex;position:relative;overflow:hidden}.enter .go:before{content:"";background:var(--paper);transform-origin:0;transition:transform .6s var(--ease);z-index:-1;position:absolute;inset:0;transform:scaleX(0)}.enter .go:hover{color:var(--ink);border-color:var(--paper)}.enter .go:hover:before{transform:none}.enter .go .jp{font:500 22px var(--jp);letter-spacing:.3em}.enter .go .en{font:italic 500 23px var(--en)}.enter .quiet{font:400 10px var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--paper3);margin-top:14px;transition:color .4s}.enter .quiet:hover{color:var(--paper)}.enter .gloss{max-width:34ch;font:italic 500 16px/1.5 var(--en);color:var(--paper3);margin:30px 0 0}#load.leaving{background-color:#0c0a0800}#load.leaving .sheet{opacity:0;transform:translate(-50%,-38%)rotateX(64deg)scale(1.35)}#load.leaving .titleblock,#load.leaving .enter{opacity:0;transform:translateY(14px)}#load.gone{display:none}.ut{z-index:10;pointer-events:none;color:var(--paper);font-family:var(--en);position:fixed;inset:0}.ut>*{pointer-events:auto}.ut:before{content:"";pointer-events:none;height:150px;transition:opacity 1.2s var(--ease);background:linear-gradient(#0a08064d,#0a080600);position:absolute;top:0;left:0;right:0}.ut.pre>*,.ut.pre:before{opacity:0!important;pointer-events:none!important}.ut .wordmark,.ut .controls,.ut .ruler{transition:opacity 1.2s var(--ease)}.ut.idle .wordmark,.ut.idle .controls,.ut.idle .ruler{opacity:.2}.ut.idle:before{opacity:0}.ut.dragging{cursor:grabbing}.wordmark{color:var(--paper);text-shadow:0 1px 16px #00000040;align-items:center;gap:14px;text-decoration:none;display:flex;position:absolute;top:30px;left:34px}.wordmark .jp{font:500 21px var(--jp);letter-spacing:.16em}.wordmark .rule{background:var(--paper3);width:26px;height:1px}.wordmark .en{font:500 10px var(--mono);letter-spacing:.42em;color:var(--paper2)}.controls{align-items:center;gap:20px;display:flex;position:absolute;top:26px;right:30px}.controls button{position:relative}.tip{white-space:nowrap;font:400 9.5px var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--paper2);opacity:0;transition:opacity .35s var(--ease), transform .35s var(--ease);pointer-events:none;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,-4px)}.controls button:hover .tip{opacity:1;transform:translate(-50%)}.seasons{grid-template-columns:repeat(4,36px);height:36px;display:grid;position:relative}.season{font:400 17px var(--jp);color:var(--paper3);transition:color .5s var(--ease);text-shadow:0 1px 14px #0000004d}.season:hover,.season.on{color:var(--paper)}.seasons .bar{background:var(--shu);width:14px;height:1px;transition:transform .7s var(--ease);pointer-events:none;position:absolute;bottom:3px;left:0}.icon{border:1px solid var(--hair);width:36px;height:36px;font:400 15px var(--jp);transition:border-color .4s var(--ease), background .4s var(--ease);border-radius:50%;place-items:center;display:grid}.icon:hover{border-color:var(--paper2);background:#f1ebe00f}.icon .jp{grid-area:1/1;transform:translateY(-2px)}.sound .eq{grid-area:1/1;align-self:end;align-items:flex-end;gap:2px;height:6px;margin-bottom:6px;display:flex}.sound .eq i{background:var(--paper2);transform-origin:50% 100%;width:1px;height:100%;transform:scaleY(.2)}.sound.on .eq i{animation:1.3s ease-in-out infinite eq}.sound.on .eq i:nth-child(2){animation-duration:1.1s;animation-delay:-.4s}.sound.on .eq i:nth-child(3){animation-duration:1.5s;animation-delay:-.8s}.sound.on .eq i:nth-child(4){animation-duration:.9s;animation-delay:-.2s}.sound:not(.on) .jp{opacity:.45}@keyframes eq{0%,to{transform:scaleY(.25)}50%{transform:scaleY(1)}}.ruler{width:1px;position:absolute;top:17vh;bottom:15vh;right:44px}.ruler .track{background:linear-gradient(var(--hair), var(--hair)) 0 0 / 1px 100% no-repeat;position:absolute;inset:0}.ruler .tick{background:var(--hair);pointer-events:none;width:4px;height:1px;position:absolute;left:0}.ruler .tick.major{background:var(--paper3);width:8px}.ruler .tick.major:after{content:attr(data-h);font:400 9.5px var(--mono);letter-spacing:.1em;color:var(--paper3);position:absolute;top:-6px;left:13px}.ruler .mark{flex-direction:row-reverse;align-items:center;gap:12px;height:22px;display:flex;position:absolute;right:-6px;transform:translateY(-50%)}.ruler .dot{border:1px solid var(--paper2);width:5px;height:5px;transition:transform .5s var(--ease), background .5s, border-color .5s;background:#0c0a0880;border-radius:50%;margin-right:1.5px}.ruler .mark.past .dot{background:var(--paper2)}.ruler .mark.here .dot{background:var(--shu);border-color:var(--shu);transform:scale(1.5)}.ruler .lbl{white-space:nowrap;opacity:0;transition:opacity .4s var(--ease), transform .4s var(--ease);text-shadow:0 1px 12px #00000073;align-items:baseline;gap:8px;display:flex;transform:translate(8px)}.ruler .lbl .jp{font:400 13px var(--jp);letter-spacing:.1em}.ruler .lbl .en{font:italic 500 15px var(--en);color:var(--paper2)}.ruler:hover .lbl{opacity:.8;transform:none}.ruler .mark:hover .lbl{opacity:1}.ruler:hover .sun .clock{opacity:0}.ruler .mark:hover .dot{border-color:var(--paper);transform:scale(1.6)}.ruler .sun{pointer-events:none;width:0;height:0;position:absolute;left:0}.ruler .sun .disc{background:radial-gradient(circle at 40% 38%,#fff3dc,#ffc778 55%,#f2954a);border-radius:50%;width:12px;height:12px;transition:background 1.2s,box-shadow 1.2s;position:absolute;top:-6px;left:-6px;box-shadow:0 0 16px 3px #ffba6e80}.ruler .sun.night .disc{background:0 0;box-shadow:inset 4px -2px #e9eef6,0 0 14px 1px #c8d7f040}.ruler .sun .clock{font:500 11px var(--mono);letter-spacing:.14em;font-variant-numeric:tabular-nums;color:var(--paper);text-shadow:0 1px 12px #00000073;transition:opacity .4s;position:absolute;top:-8px;right:16px}.scrim{opacity:0;width:78vw;height:85vh;transition:opacity 1.1s var(--ease);background:radial-gradient(62% 58% at 0 100%,#0a080699,#0a080647 45%,#0a080600 75%);position:absolute;bottom:0;left:0;pointer-events:none!important}.scrim.in{opacity:1}.card{opacity:0;max-width:560px;transition:opacity .45s var(--ease);text-shadow:0 1px 18px #00000059;position:absolute;bottom:58px;left:50px;pointer-events:none!important}.card.in{opacity:1;transition-duration:.2s}.card:before{content:"";background:var(--shu);width:0;height:1px;transition:width 1s var(--ease) .1s;position:absolute;top:-20px;left:0}.card.in:before{width:72px}.card .num{font:500 11px var(--mono);letter-spacing:.24em;color:var(--paper);align-items:baseline;gap:10px;display:flex}.card .num .of{color:var(--paper3)}.card .num .time{border-left:1px solid var(--hair);text-transform:uppercase;color:var(--paper2);margin-left:8px;padding-left:16px}.card .body{align-items:flex-start;gap:30px;margin-top:24px;display:flex}.card .name{gap:10px;margin:0;font-weight:400;display:flex}.card .name .jp{font:500 60px/1 var(--jp);letter-spacing:.06em}.card .name .kana{font:400 12px/1 var(--jp);letter-spacing:.36em;color:var(--paper2);opacity:0;transition:opacity 1s var(--ease) .6s;padding-top:8px}.card.in .name .kana{opacity:1}.card .text{padding-top:4px}.card .en{font:italic 500 42px/1.04 var(--en);letter-spacing:.005em;margin:0}.card .line{max-width:33ch;font:500 20px/1.48 var(--en);color:var(--paper);margin:16px 0 0}.card .ja{max-width:32em;font:400 13px/1.95 var(--jp);color:var(--paper2);letter-spacing:.06em;margin:12px 0 0}.card .line,.card .ja{opacity:0;transition:opacity 1s var(--ease), transform 1.2s var(--ease);transform:translateY(10px)}.card.in .line{opacity:1;transition-delay:.5s;transform:none}.card.in .ja{opacity:1;transition-delay:.75s;transform:none}.ch{opacity:0;filter:blur(5px);display:inline-block;transform:translateY(.4em)}.card.in .ch{animation:rise 1.1s var(--ease) forwards;animation-delay:var(--d)}.v .ch{transform:translateY(-.3em)}@keyframes rise{to{opacity:1;filter:blur();transform:none}}.hint{opacity:0;transition:opacity 1.4s var(--ease);text-shadow:0 1px 14px #0006;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;bottom:38px;left:50%;transform:translate(-50%);pointer-events:none!important}.hint.in{opacity:1;transition-delay:1.2s}.hint .line{background:linear-gradient(var(--paper), transparent) 0 0 / 1px 46px no-repeat;width:1px;height:46px;animation:drip 2.6s var(--ease) infinite;margin-bottom:4px}.hint .en{font:italic 500 18px var(--en)}.hint .jp{font:400 11px var(--jp);color:var(--paper2);letter-spacing:.14em}@keyframes drip{0%{background-position:0 -46px}60%,to{background-position:0 46px}}.place{border:1px solid var(--hair);opacity:0;background:#0c0a08a3;flex-direction:column;align-items:center;gap:3px;padding:7px 12px 8px;transition:border-color .35s,background .35s;display:flex;position:absolute;top:0;left:0}.place .jp{font:500 15px var(--jp);letter-spacing:.12em}.place .en{font:400 9px var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--paper2)}.place:hover{border-color:var(--shu);background:#0c0a08b8}.ut:not(.above) .place{display:none}.ut.above .card{top:96px;bottom:auto}.ut.above .scrim{top:0;bottom:auto;transform:scaleY(-1)}.photobar{opacity:0;transition:opacity .6s var(--ease), transform .6s var(--ease);gap:10px;display:flex;position:absolute;bottom:30px;left:50%;transform:translate(-50%,10px);pointer-events:none!important}.photobar button{border:1px solid var(--hair);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c0a086b;align-items:baseline;gap:10px;padding:10px 18px;transition:border-color .35s;display:flex}.photobar button:hover{border-color:var(--paper2)}.photobar .jp{font:500 15px var(--jp)}.photobar .en{font:italic 500 17px var(--en)}.photobar .k{font:400 9.5px var(--mono);letter-spacing:.18em;color:var(--paper3)}.ut.photo .photobar{opacity:1;transform:translate(-50%);pointer-events:auto!important}.ut.photo.idle .photobar{opacity:0}.ut.photo>:not(.photobar):not(.veil):not(.toast),.ut.photo:before{opacity:0!important;pointer-events:none!important}.veil{background:var(--ink);opacity:0;transition:opacity .5s var(--ease);position:absolute;inset:0;pointer-events:none!important}.veil.on{opacity:1}.toast{text-align:right;opacity:0;transition:opacity .6s var(--ease), transform .6s var(--ease);text-shadow:0 1px 14px #00000073;position:absolute;top:86px;right:30px;transform:translateY(-6px);pointer-events:none!important}.toast.in{opacity:1;transform:none}.toast b{font:500 16px var(--jp);letter-spacing:.12em;display:block}.toast i{font:italic 500 16px var(--en);color:var(--paper2);margin-top:4px;display:block}html.reading,html.reading body{overflow:hidden}.tb-meta .colo-open{font:inherit;letter-spacing:inherit;color:var(--paper2);text-transform:uppercase;transition:color .4s var(--ease)}.tb-meta .colo-open:hover{color:var(--paper)}.colo-link{font:400 9.5px var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--paper3);text-shadow:0 1px 12px #00000073;transition:color .4s var(--ease), opacity 1.2s var(--ease);align-items:baseline;gap:9px;display:flex;position:absolute;bottom:24px;right:30px}.colo-link .jp{font:400 12px var(--jp);letter-spacing:.14em;text-transform:none}.colo-link:hover{color:var(--paper)}.ut.idle .colo-link{opacity:.2}.colophon{z-index:60;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--paper);opacity:0;visibility:hidden;transition:opacity .6s var(--ease), visibility 0s linear .6s;background:#0c0a08cc;justify-content:center;align-items:center;padding:7vh 5vw;display:flex;position:fixed;inset:0}.colophon.in{opacity:1;visibility:visible;transition:opacity .6s var(--ease)}.colo-sheet{border-top:1px solid var(--hair);width:min(960px,100%);max-height:100%;transition:transform .9s var(--ease);flex-direction:column;display:flex;transform:translateY(16px)}.colophon.in .colo-sheet{transform:none}.colo-head{border-bottom:1px solid var(--hair);align-items:flex-start;gap:26px;padding:22px 0;display:flex}.colo-head>.jp{font:500 40px/1 var(--jp);letter-spacing:.16em}.colo-title h2{font:italic 500 36px/1 var(--en);letter-spacing:.005em;margin:0}.colo-title p{max-width:52ch;font:500 17px/1.5 var(--en);color:var(--paper2);margin:12px 0 0}.colo-title .ja{font:400 12px/1.9 var(--jp);letter-spacing:.06em;color:var(--paper3);margin-top:8px}.colo-close{font:400 9.5px var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--paper2);transition:color .4s var(--ease);flex:none;margin-left:auto;padding:6px 0 6px 14px}.colo-close:hover{color:var(--paper)}.colo-list{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--hair) transparent;margin:0;padding:0 0 8px;list-style:none;overflow-y:auto}.colo-group{font:400 9.5px var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--shu);align-items:baseline;gap:12px;padding:26px 0 10px;display:flex}.colo-group .jp{font:400 13px var(--jp);letter-spacing:.14em}.colo-row{border-top:1px solid #f1ebe01a;grid-template-columns:210px minmax(0,1fr) 200px 120px;align-items:baseline;gap:20px;padding:11px 0 12px;display:grid}.colo-row .use{align-items:baseline;gap:10px;min-width:0;display:flex}.colo-row .use .jp{font:400 14px var(--jp);letter-spacing:.08em;flex:none}.colo-row .use .en{font:400 9px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--paper3);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.colo-row .work{font:italic 500 19px/1.25 var(--en);color:var(--paper);background:linear-gradient(var(--shu), var(--shu)) 0 100% / 0 1px no-repeat;transition:background-size .5s var(--ease);text-decoration:none}.colo-row .work:hover{background-size:100% 1px}.colo-row .by{font:400 10.5px/1.5 var(--mono);letter-spacing:.04em;color:var(--paper2)}.colo-row .lic{font:400 9.5px var(--mono);letter-spacing:.12em;color:var(--paper3);white-space:nowrap;transition:color .4s var(--ease);justify-self:end;text-decoration:none}.colo-row .lic:hover{color:var(--paper)}@media (max-width:760px){#load .sheet{width:150vw;top:38%;transform:translate(-50%,-50%)rotate(-90deg)scale(.62)}#load.leaving .sheet{transform:translate(-50%,-38%)rotate(-90deg)rotateY(64deg)scale(.8)}#load .titleblock{width:auto;inset:62vh 22px auto}.tb-title .jp{font-size:36px}.tb-names b{font-size:30px}#load .enter{bottom:4vh;left:22px}.enter .gloss{display:none}.wordmark{gap:10px;top:18px;left:18px}.wordmark .jp{font-size:17px}.wordmark .rule{width:16px}.controls{gap:8px;top:12px;right:12px}.seasons{grid-template-columns:repeat(4,30px);height:32px}.season{font-size:15px}.icon{width:32px;height:32px}.controls .photo,.tip{display:none}.ruler{top:22vh;bottom:40vh;right:16px}.ruler .tick.major:after,.ruler .lbl{display:none}.ruler .sun .clock{font-size:10px;right:12px}.scrim{background:linear-gradient(#0a080600,#0a080659 55%,#0a0806b8);width:100vw;height:72vh}.card{max-width:none;bottom:26px;left:20px;right:20px}.card .body{gap:16px;margin-top:18px}.card .name .jp{font-size:40px}.card .en{font-size:30px}.card .line{font-size:17px}.card .ja{font-size:12px;line-height:1.8}.hint{bottom:28px}.place{padding:5px 8px 6px}.place .en{display:none}.toast{top:56px;right:14px}.colo-link{inset:50px auto auto 18px}.colophon{align-items:stretch;padding:0}.colo-sheet{overscroll-behavior:contain;border-top:0;padding:18px 20px 0;overflow-y:auto}.colo-list{overflow:visible}.colo-head{gap:16px;padding:4px 0 16px}.colo-head>.jp,.colo-title h2{font-size:28px}.colo-title p{font-size:15px}.colo-row{grid-template-columns:minmax(0,1fr) auto;gap:3px 14px;padding:10px 0 11px}.colo-row .use{grid-column:1/-1}.colo-row .work{font-size:17px}.colo-row .by{grid-column:1}.colo-row .lic{grid-area:2/2}}@media (prefers-reduced-motion:reduce){.ch,.card .line,.card .ja{opacity:1!important;filter:none!important;animation:none!important;transform:none!important}#load .sheet{transition:opacity .6s}#load.leaving .sheet{transform:translate(-50%,-50%)}}
