:root{--juice-press-down:60ms;--juice-press-up:.18s;--juice-flash-correct-ms:.42s;--juice-flash-wrong-ms:.26s;--juice-combo-fade:.3s;--juice-ease-in:cubic-bezier(.5, 0, .75, 0);--juice-ease-back:cubic-bezier(.34, 1.56, .64, 1);--juice-correct:#1f6d4e;--juice-wrong:#b23a2e;--juice-combo:#b23a2e}.juice-press{touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:color .17s ease, background-color .17s ease, border-color .17s ease, scale var(--juice-press-up) var(--juice-ease-back)}.juice-press:active:not(:disabled){transition-duration:.17s, .17s, .17s, var(--juice-press-down);transition-timing-function:ease, ease, ease, var(--juice-ease-in);scale:.92}.juice-press-cta:active:not(:disabled){scale:.96}.juice-freeze,.juice-freeze *{transition:none!important;animation-play-state:paused!important}.juice-flash-correct{animation:juice-flash-correct var(--juice-flash-correct-ms) cubic-bezier(.12, .72, .2, 1) both}.juice-flash-wrong{animation:juice-flash-wrong var(--juice-flash-wrong-ms) cubic-bezier(.12, .72, .2, 1) both}@keyframes juice-flash-correct{0%{box-shadow:0 0 0 4px color-mix(in srgb, var(--juice-correct) 26%, transparent);scale:1.035}60%{box-shadow:0 0 0 8px color-mix(in srgb, var(--juice-correct) 6%, transparent)}to{scale:1;box-shadow:0 0 #0000}}@keyframes juice-flash-wrong{0%{box-shadow:0 0 0 3px color-mix(in srgb, var(--juice-wrong) 14%, transparent);scale:.988}to{scale:1;box-shadow:0 0 #0000}}.juice-combo{animation:juice-combo-in .22s var(--juice-ease-back) both}.juice-combo-pop{animation:juice-combo-pop .2s var(--juice-ease-back) both}@keyframes juice-combo-pop{0%{scale:1}38%{scale:1.13}to{scale:1}}.juice-combo-first{animation:juice-combo-in .26s var(--juice-ease-back) both, juice-combo-ring .72s cubic-bezier(.12, .72, .2, 1) .12s 1 both}@keyframes juice-combo-ring{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--juice-combo) 42%, transparent)}to{box-shadow:0 0 0 14px color-mix(in srgb, var(--juice-combo) 0%, transparent)}}.juice-combo-out{animation:juice-combo-out var(--juice-combo-fade) cubic-bezier(.12, .72, .2, 1) both}@keyframes juice-combo-in{0%{opacity:0;translate:0 4px}to{opacity:1;translate:0}}@keyframes juice-combo-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.juice-press,.juice-press:active:not(:disabled),.juice-press-cta:active:not(:disabled){transition:none;scale:1}.juice-flash-correct,.juice-flash-wrong,.juice-combo,.juice-combo-pop,.juice-combo-first,.juice-combo-out{animation:none}}
.juice-t1,.juice-t2,.juice-t3{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.juice-t2:active:not(:disabled):not([aria-disabled=true]){opacity:.62}@media (prefers-reduced-motion:no-preference){.juice-t1,.juice-t2,.juice-t3{--jt-dur:var(--juice-press-up);--jt-ease:var(--juice-ease-back);transition:color .17s cubic-bezier(.12, .72, .2, 1), background-color .17s cubic-bezier(.12, .72, .2, 1), border-color .17s cubic-bezier(.12, .72, .2, 1), box-shadow .17s cubic-bezier(.12, .72, .2, 1), translate .11s cubic-bezier(.12, .72, .2, 1), opacity var(--jt-dur) var(--jt-ease), scale var(--jt-dur) var(--jt-ease)}.juice-t1:active:not(:disabled):not([aria-disabled=true]){--jt-dur:var(--juice-press-down);--jt-ease:var(--juice-ease-in);scale:.96}.juice-t2:active:not(:disabled):not([aria-disabled=true]){--jt-dur:var(--juice-press-down);--jt-ease:var(--juice-ease-in);scale:.985}.juice-t3:active:not(:disabled):not([aria-disabled=true]){--jt-dur:var(--juice-press-down);--jt-ease:var(--juice-ease-in);scale:.97}}@media (prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){.juice-t1:hover:not(:disabled):not([aria-disabled=true]){translate:0 -1px}}
:root{--paper:#fafaf7;--ink:#17181d;--ink-2:#5c5e66;--ink-3:#9a9ba1;--hair:#e4e3dd;--hair-2:#c7c6be;--gunjo:#2340bf;--gunjo-deep:#1b33a0;--tint:#eef1fb;--r:2px;--matsu:#17714f;--matsu-line:#a9cbb9;--matsu-tint:#ecf4ef;--miss:#a8353a;--miss-line:#e0bcbe;--miss-tint:#f8eeee;--sans:"IBM Plex Sans JP","Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP",Meiryo,system-ui,sans-serif;--mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--juice-correct:var(--matsu);--juice-wrong:var(--miss);--juice-combo:var(--gunjo)}*{box-sizing:border-box;margin:0;padding:0}html,body{overflow-x:clip}body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-feature-settings:"palt";-webkit-font-smoothing:antialiased;line-height:1.8}a{color:inherit}.wrap{max-width:640px;margin:0 auto;padding:0 26px}.num{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-weight:600}.unit{font-family:var(--sans);font-weight:500}header{border-bottom:1px solid var(--hair)}.head-in{justify-content:space-between;align-items:center;display:flex}.wrap.head-in{padding-block:18px}.brand{align-items:center;gap:11px;text-decoration:none;display:flex}.brand-name{line-height:1.3}.brand-name .b1{color:var(--ink-2);letter-spacing:.08em;font-size:11px;display:block}.brand-name .b2{letter-spacing:.02em;font-size:15.5px;font-weight:700;display:block}.head-note{color:var(--ink-2);letter-spacing:.04em;font-size:11.5px}.hero{padding:76px 0 0}.sheet{gap:9px;display:grid;position:absolute;top:30px;right:2px}.sheet span{border:1.5px solid var(--hair);border-radius:6px;width:22px;height:10px}.sheet .on{background:var(--gunjo);border-color:var(--gunjo)}.eyebrow{color:var(--gunjo);letter-spacing:.16em;align-items:center;gap:10px;font-size:12px;font-weight:500;display:flex}.eyebrow:before{content:"";background:var(--gunjo);width:22px;height:1px}h1{letter-spacing:.015em;margin-top:26px;font-size:34px;font-weight:700;line-height:1.5}.lead{color:var(--ink-2);max-width:30em;margin-top:22px;font-size:14.5px;line-height:2.05}.lead strong{color:var(--ink);font-weight:700}.counter{border-top:2px solid var(--ink);margin-top:58px;padding-top:22px;position:relative}.counter-label{color:var(--ink-2);letter-spacing:.14em;font-size:12px}.counter-num{flex-wrap:wrap;align-items:baseline;gap:10px;margin-top:6px;display:flex}.counter-num .big{font-family:var(--mono);letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:76px;font-weight:600;line-height:1}.counter-num .big .comma{margin:0 -.1em;font-size:.62em}.counter-num .big-unit{font-size:22px;font-weight:700}.counter-sub{color:var(--ink-2);align-items:center;gap:9px;margin-top:14px;font-size:13px;display:flex}.pulse{background:var(--gunjo);border-radius:50%;flex:none;width:7px;height:7px}.counter-sub .accent{color:var(--gunjo);font-weight:500}section{padding-top:92px}.sec-head{border-bottom:1px solid var(--ink);align-items:baseline;gap:14px;padding-bottom:12px;display:flex}.sec-no{font-family:var(--mono);color:var(--ink-3);font-variant-numeric:tabular-nums;letter-spacing:.06em;font-size:11.5px;font-weight:600}.sec-title{letter-spacing:.06em;font-size:15px;font-weight:700}.feat{border-bottom:1px solid var(--hair);margin-top:34px;padding-bottom:38px}.feat-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.feat-code{letter-spacing:.01em;font-size:25px;font-weight:700;line-height:1.2}.feat-desc{color:var(--ink-2);margin-top:7px;font-size:13px}.feat-count{text-align:right;flex:none}.feat-count .n{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:25px;font-weight:600;line-height:1.2}.feat-count .n .unit{margin-left:2px;font-size:13px;font-weight:500}.feat-tag{color:var(--gunjo);letter-spacing:.04em;margin-top:9px;font-size:12px;font-weight:500}.feat-week{color:var(--gunjo);margin-top:7px;font-size:12px;font-weight:500}.feat-week .num{font-weight:600}.cta{background:var(--gunjo);color:#fff;border-radius:var(--r);width:100%;font-family:var(--sans);letter-spacing:.06em;cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;margin-top:30px;padding:17px 20px;font-size:15.5px;font-weight:700;text-decoration:none;display:flex}.cta:active{background:var(--gunjo-deep)}.cta .arrow{font-family:var(--mono);font-weight:500}.cta-foot{text-align:center;color:var(--ink-3);letter-spacing:.06em;margin-top:12px;font-size:11.5px}.row{border-bottom:1px solid var(--hair);justify-content:space-between;align-items:center;gap:14px;padding:21px 10px 21px 2px;text-decoration:none;transition:background .1s;display:flex}.row:first-of-type{border-top:1px solid var(--hair)}.row:hover{background:#f3f3ef}.row:hover .code{color:var(--gunjo)}.row-l .code{letter-spacing:.01em;font-size:16.5px;font-weight:700;display:block}.row-l .desc{color:var(--ink-2);margin-top:3px;font-size:12px;display:block}.row-r{flex:none;align-items:center;gap:16px;display:flex}.row-r .n{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:16.5px;font-weight:600}.row-r .n .unit{color:var(--ink-2);margin-left:2px;font-size:11.5px;font-weight:500}.row-r .week{color:var(--gunjo);text-align:right;margin-top:2px;font-size:11px;font-weight:500;display:block}.row-r .go{font-family:var(--mono);color:var(--ink-3);font-size:14px}.log{margin-top:10px}.log li{border-bottom:1px solid var(--hair);align-items:baseline;gap:18px;padding:19px 0;font-size:13.5px;line-height:1.75;list-style:none;display:flex}.log .d{font-family:var(--mono);color:var(--ink-3);flex:none;width:3.2em;font-size:12.5px;font-weight:500}.log .t{color:var(--ink)}.log .t small{color:var(--ink-2);font-size:12px;display:block}.log-note{color:var(--ink-2);border-left:2px solid var(--hair);margin-top:26px;padding-left:14px;font-size:12.5px;line-height:1.9}.demo{border:1px solid var(--hair);border-radius:var(--r);background:#fff;margin-top:34px;padding:24px 20px 22px}.demo-meta{color:var(--ink-3);align-items:baseline;gap:10px;font-size:12px;display:flex}.demo-meta .id{font-family:var(--mono);letter-spacing:.1em;font-variant-numeric:tabular-nums;font-size:10.5px;font-weight:500}.demo-meta:after{content:"";background:var(--hair);flex:1;height:1px}.q{letter-spacing:.01em;margin-top:18px;font-size:15.5px;font-weight:700;line-height:1.85}.qcode{border:1px solid var(--hair);border-radius:var(--r);-webkit-overflow-scrolling:touch;font-family:var(--mono);color:var(--ink);white-space:pre;tab-size:4;background:#fff;margin-top:16px;padding:14px 15px;font-size:12.5px;font-weight:500;line-height:1.75;overflow-x:auto}.choices{gap:7px;margin-top:20px;display:grid}.choice{border:1px solid var(--hair);border-radius:var(--r);color:var(--ink);align-items:flex-start;gap:12px;padding:13px 15px;font-size:13.5px;line-height:1.75;display:flex}.choice .cn{font-family:var(--mono);color:var(--ink-3);flex:none;padding-top:2px;font-size:12.5px;font-weight:500}.choice.is-correct{border-color:var(--matsu-line);background:var(--matsu-tint);padding-right:58px;position:relative}.choice.is-correct .cn{color:var(--matsu)}.correct-tag{letter-spacing:.1em;color:var(--matsu);font-size:11px;font-weight:700;position:absolute;top:12px;right:14px}.expl{border-left:2px solid var(--matsu);background:var(--matsu-tint);color:#2c3e36;border-radius:0;margin-top:22px;padding:15px 17px;font-size:13px;line-height:1.95}.expl b{letter-spacing:.14em;color:var(--matsu);margin-bottom:6px;font-size:11.5px;display:block}.next{background:var(--ink);color:#fff;border-radius:var(--r);width:100%;font-family:var(--sans);letter-spacing:.05em;cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;margin-top:24px;padding:15px 20px;font-size:14.5px;font-weight:700;text-decoration:none;display:flex}.next .arrow{font-family:var(--mono);font-weight:500}.demo-cap{text-align:center;color:var(--ink-3);letter-spacing:.05em;margin-top:16px;font-size:11.5px}footer{border-top:2px solid var(--ink);margin-top:100px;padding:52px 0 60px}.foot-line{letter-spacing:.03em;font-size:19px;font-weight:700;line-height:1.7}.foot-line .dojo{color:var(--gunjo)}.foot-p{color:var(--ink-2);max-width:32em;margin-top:18px;font-size:13px;line-height:2.05}.foot-p a{color:var(--gunjo);text-underline-offset:3px;font-weight:500;text-decoration:underline;text-decoration-thickness:1px}.foot-honest{border-top:1px solid var(--hair);color:var(--ink-3);margin-top:34px;padding-top:22px;font-size:11.5px;line-height:1.95}.foot-nav{color:var(--ink-2);flex-wrap:wrap;gap:8px 22px;margin-top:20px;font-size:12px;display:flex}.foot-nav a{text-decoration:none}.crumb{color:var(--ink-3);letter-spacing:.1em;flex-wrap:wrap;align-items:baseline;gap:7px;padding-top:28px;font-size:10.5px;line-height:1.9;display:flex}.crumb a{text-decoration:none}.crumb a:hover{color:var(--gunjo)}.crumb .sep{font-family:var(--mono);color:var(--hair-2)}.page-head{padding-top:36px}.kicker{font-family:var(--mono);color:var(--gunjo);letter-spacing:.16em;align-items:center;gap:10px;font-size:11.5px;font-weight:500;display:flex}.kicker:before{content:"";background:var(--gunjo);flex:none;width:22px;height:1px}.page-head h1{letter-spacing:.015em;margin-top:18px;font-size:28px;line-height:1.45}.page-head .sub{color:var(--ink-2);letter-spacing:.02em;font-variant-numeric:tabular-nums;margin-top:11px;font-size:12.5px}.page-head .lead{margin-top:20px}.hub-count{border-top:2px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-top:34px;padding-top:18px;display:flex}.hub-count .l{color:var(--ink-2);letter-spacing:.14em;font-size:12px}.hub-count .n{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:44px;font-weight:600;line-height:1}.hub-count .n .unit{margin-left:6px;font-size:16px;font-weight:700}.actions{gap:10px;margin-top:30px;display:grid}.cta.ghost{color:var(--ink);border:1px solid var(--ink);background:0 0}.cta.ghost:active{background:#17181d0d}.facts{border-top:1px solid var(--hair);margin-top:14px}.facts div{border-bottom:1px solid var(--hair);align-items:baseline;gap:18px;padding:14px 2px;font-size:13.5px;display:flex}.facts dt{width:7.5em;color:var(--ink-3);letter-spacing:.12em;flex:none;font-size:10.5px;font-weight:500;line-height:1.9}.facts dd{color:var(--ink);font-variant-numeric:tabular-nums}.notes{border-left:2px solid var(--hair);margin-top:26px;padding-left:14px}.notes li{color:var(--ink-2);font-size:12.5px;line-height:1.9;list-style:none}.notes li+li{margin-top:8px}.prep{border:1px solid var(--hair);border-left:2px solid var(--hair-2);border-radius:var(--r);color:var(--ink-2);background:#fff;margin-top:34px;padding:20px;font-size:13px;line-height:1.95}.prep b{color:var(--ink)}.qindex{border-top:1px solid var(--hair);border-left:1px solid var(--hair);background:#fff;grid-template-columns:repeat(auto-fill,minmax(50px,1fr));gap:0;margin-top:16px;display:grid}.qindex a{border-right:1px solid var(--hair);border-bottom:1px solid var(--hair);height:40px;font-family:var(--mono);color:var(--ink-2);font-variant-numeric:tabular-nums;letter-spacing:-.01em;place-items:center;font-size:12px;font-weight:600;text-decoration:none;transition:background .1s;display:grid}.qindex a:hover{color:var(--gunjo);background:#f3f3ef}.choice.is-pick{cursor:pointer;text-align:left;background:#fff;width:100%;font-family:inherit}.choice.is-pick:hover{border-color:var(--gunjo)}.choice.is-selected{border-color:var(--gunjo);box-shadow:inset 0 0 0 1px var(--gunjo)}.choice.is-selected .cn{color:var(--gunjo)}.choice.is-wrong{border-color:var(--miss-line);background:var(--miss-tint);padding-right:58px;position:relative}.choice.is-wrong .cn{color:var(--miss)}.wrong-tag{letter-spacing:.1em;color:var(--miss);font-size:11px;font-weight:700;position:absolute;top:12px;right:14px}.multi-note{color:var(--gunjo);letter-spacing:.06em;margin-top:14px;font-size:11.5px;font-weight:500}.verdict{letter-spacing:.06em;align-items:baseline;gap:10px;margin-top:22px;font-size:13px;font-weight:700;display:flex}.verdict.ok{color:var(--matsu)}.verdict.ng{color:var(--miss)}.pager{border-top:1px solid var(--ink);letter-spacing:.04em;justify-content:space-between;align-items:center;gap:14px;margin-top:34px;padding-top:16px;font-size:12px;display:flex}.pager a{color:var(--ink-2);font-weight:600;text-decoration:none}.pager a:hover{color:var(--gunjo)}.pager .mid{font-family:var(--mono);color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:12px}.pager .dim{color:var(--ink-3)}.progress{border-top:2px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:14px;margin-top:26px;padding-top:16px;display:flex}.progress .l{color:var(--ink-2);letter-spacing:.14em;font-size:12px}.progress .v{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.progress .v .unit{color:var(--ink-2);margin-left:3px;font-size:12px;font-weight:500}.bar{background:var(--hair);border-radius:2px;height:4px;margin-top:12px;overflow:hidden}.bar span{background:var(--gunjo);height:100%;display:block}.reset{cursor:pointer;color:var(--ink-3);text-underline-offset:3px;background:0 0;border:0;margin-top:14px;padding:0;font-family:inherit;font-size:11.5px;text-decoration:underline}.reset:hover{color:var(--miss)}.order-line{border-left:2px solid var(--gunjo);letter-spacing:.03em;background:#2340bf0b;border-radius:0;margin-top:44px;padding:18px 20px;font-size:13.5px;font-weight:700;line-height:1.8}.order-line small{color:var(--ink-2);letter-spacing:0;margin-top:7px;font-size:12px;font-weight:400;display:block}.order-line a{color:var(--gunjo);text-underline-offset:3px;font-weight:500;text-decoration:underline}.dojo-lock{border-top:1px solid var(--hair);color:var(--ink-2);margin-top:18px;padding-top:14px;font-size:12.5px;line-height:1.95}.dojo-lock .lock-tag{border:1px solid var(--hair-2);letter-spacing:.08em;color:var(--ink-3);vertical-align:2px;border-radius:2px;margin-right:8px;padding:1px 7px;font-size:10.5px;display:inline-block}.dojo-lock a{color:var(--gunjo);text-underline-offset:3px;text-decoration:underline}.prose{padding-top:30px}.prose h2{border-bottom:1px solid var(--ink);letter-spacing:.06em;margin-top:52px;padding-bottom:12px;font-size:15px;font-weight:700}.prose h2+p{margin-top:18px}.prose p{color:var(--ink-2);margin-top:16px;font-size:13.5px;line-height:2.05}.prose ul{margin-top:14px;padding-left:1.2em}.prose li{color:var(--ink-2);font-size:13.5px;line-height:2.05}.prose a{color:var(--gunjo);text-underline-offset:3px;text-decoration:underline}@media (max-width:420px){h1{font-size:28px}.counter-num .big{font-size:58px}.page-head h1{font-size:23px}}.brand-mark{background:0 0;border-radius:0;flex:none;width:26px;height:26px}.head-nav{color:var(--ink-2);white-space:nowrap;flex:none;align-items:center;gap:16px;font-size:12.5px;display:flex}.head-nav a{text-decoration:none}.head-nav a:hover{color:var(--gunjo)}.head-nav .head-note{border-left:1px solid var(--hair);color:var(--ink-3);padding-left:16px}@media (max-width:400px){.wrap{padding:0 18px}.head-nav{gap:11px;font-size:11.5px}.head-nav .head-note{padding-left:11px}.brand{gap:8px}.brand-name .b2{font-size:14px}}.grp{margin-top:34px}.grp+.grp{margin-top:38px}.grp-h{letter-spacing:.14em;color:var(--gunjo);border-bottom:1px solid var(--gunjo);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:9px;font-size:11.5px;font-weight:700;display:flex}.grp-n{color:var(--ink-3);font-size:12px;font-weight:600}.sec-title .sec-sub{color:var(--ink-3);letter-spacing:0;margin-left:9px;font-size:12px;font-weight:600}.row.is-prep .code{color:var(--ink-2);font-weight:500}.row-r .tag{letter-spacing:.1em;color:var(--ink-3);border:1px solid var(--hair);border-radius:var(--r);padding:3px 7px;font-size:10.5px}.facts-note{color:var(--ink-3);margin-top:16px;font-size:11.5px;line-height:1.9}.facts-note a{color:var(--gunjo);text-underline-offset:3px;text-decoration:underline}.last-checked{text-align:center;color:var(--ink-3);letter-spacing:.06em;margin-top:12px;font-size:11.5px}.last-checked time{font-family:var(--mono);font-weight:500}.dojo-shot{margin-top:16px}.dojo-shot img{border:1px solid var(--hair);border-radius:var(--r);width:240px;max-width:100%;height:auto;display:block}.dojo-shot figcaption{color:var(--ink-3);margin-top:8px;font-size:11.5px;line-height:1.7}.facts .num{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:600}.brk{border-collapse:collapse;width:100%;margin-top:12px;font-size:12.5px;line-height:1.7}.brk th{text-align:left;letter-spacing:.12em;color:var(--ink-3);border-bottom:1px solid var(--ink);padding:0 0 9px;font-size:10.5px;font-weight:500}.brk td{border-bottom:1px solid var(--hair);vertical-align:top;padding:13px 0}.brk th.r,.brk td.r{text-align:right;white-space:nowrap;padding-left:12px}.brk td .c{min-width:3.4em;color:var(--ink-3);margin-right:9px;font-size:11px;display:inline-block}.brk td .go{font-family:var(--mono);color:var(--ink-3);text-decoration:none;display:inline-block}.brk td .go:hover{color:var(--gunjo)}.mine{color:var(--ink-2);flex-wrap:wrap;align-items:baseline;gap:12px;margin-top:14px;font-size:12px;display:flex}.mine .l{color:var(--ink-3);letter-spacing:.1em;font-size:11px}.mine .v .num{color:var(--ink);font-weight:600}.mine .v .unit{color:var(--ink-2)}.mine .v .sep{color:var(--ink-3);margin:0 8px}.foot-map{border-top:1px solid var(--hair);margin-top:38px;padding-top:26px}.foot-map-head{letter-spacing:.16em;color:var(--ink-3);font-size:11px;font-weight:700}.foot-grp{margin-top:20px}.foot-grp-h{letter-spacing:.12em;color:var(--gunjo);border-bottom:1px solid var(--hair);padding-bottom:7px;font-size:11px;font-weight:700}.foot-grp ul{margin:0;padding:0;list-style:none}.foot-grp li{border-bottom:1px solid var(--hair);justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;font-size:12.5px;display:flex}.foot-grp li a{color:var(--ink);text-decoration:none}.foot-grp li a:hover{color:var(--gunjo)}.foot-grp li .n{color:var(--ink-3);font-size:11.5px;font-weight:600}.foot-map-more{margin-top:22px;font-size:12px}.foot-map-more a{color:var(--gunjo);text-underline-offset:3px;text-decoration:underline}.brk tr.rest td{color:var(--ink-2)}.dojo-plate{border-top:2px solid var(--ink);margin-top:44px;padding-top:20px}.dojo-plate .eyebrow:before{flex:none}.dojo-plate .eyebrow .r{font-family:var(--mono);color:var(--ink-3);letter-spacing:.06em;margin-left:auto;font-size:11px;font-weight:500}.dojo-plate h3{letter-spacing:.015em;margin-top:16px;font-size:19.5px;font-weight:700;line-height:1.65}.dojo-plate .said{color:var(--ink-2);max-width:30em;margin-top:12px;font-size:13.5px;line-height:2}.dojo-plate .said b{color:var(--ink);font-weight:700}.dojo-plate figure{margin-top:22px}.dojo-plate .plate-no{font-family:var(--mono);color:var(--ink-3);letter-spacing:.1em;align-items:baseline;gap:10px;padding-bottom:8px;font-size:10.5px;font-weight:500;display:flex}.dojo-plate .plate-no:after{content:"";background:var(--hair);flex:1;height:1px}.dojo-plate img{border:1px solid var(--hair-2);background:#fff;border-radius:8px;width:100%;height:auto;display:block}.dojo-plate figcaption{margin-top:2px}.dojo-plate figcaption ul{margin:0;padding:0}.dojo-plate figcaption li{border-bottom:1px solid var(--hair);color:var(--ink-2);align-items:baseline;gap:12px;padding:11px 0;font-size:12.5px;line-height:1.75;list-style:none;display:flex}.dojo-plate figcaption li .n{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;flex:none;width:2.1em;font-size:11px;font-weight:600}.dojo-plate figcaption li b{color:var(--ink);font-weight:700}.dojo-plate .src{color:var(--ink-3);letter-spacing:.04em;margin-top:10px;font-size:11px}.dojo-plate .cta{margin-top:26px}@media (min-width:560px){.dojo-plate h3{font-size:22px}.dojo-plate .said{font-size:14px}}.annai-lead{letter-spacing:.015em;margin-top:22px;font-size:19.5px;font-weight:700;line-height:1.7}.annai-said{color:var(--ink-2);max-width:30em;margin-top:14px;font-size:13.5px;line-height:2.05}.annai-said b{color:var(--ink);font-weight:700}.annai-more{margin-top:24px}.annai-more>summary{cursor:pointer;color:var(--gunjo);letter-spacing:.04em;font-size:12.5px;font-weight:500;list-style:none}.annai-more>summary::-webkit-details-marker{display:none}.annai-more>summary:before{content:"＋";font-family:var(--mono);margin-right:8px}.annai-more[open]>summary:before{content:"−"}.annai-more .brk{margin-top:16px}.annai-more tr.annai-theme td{padding-top:20px;font-size:12.5px}.annai-more tr.annai-theme b{letter-spacing:.02em;font-weight:700}.annai-more .brk td{font-size:12.5px}@media (min-width:560px){.annai-lead{font-size:22px}.annai-said{font-size:14px}}.post-list{border-top:1px solid var(--hair);margin-top:14px}.post-list li{border-bottom:1px solid var(--hair);list-style:none}.post-list a{grid-template-columns:4.6em 1fr auto;align-items:baseline;gap:8px 18px;padding:19px 10px 19px 2px;text-decoration:none;transition:background .1s;display:grid}.post-list a:hover{background:#f3f3ef}.post-list .d{font-family:var(--mono);color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:12px;font-weight:500}.post-list .t{letter-spacing:.01em;font-size:14.5px;font-weight:700;line-height:1.7}.post-list .t small{color:var(--ink-2);margin-top:5px;font-size:12px;font-weight:400;line-height:1.85;display:block}.post-list .c{color:var(--gunjo);letter-spacing:.04em;white-space:nowrap;font-size:11px;font-weight:500}.post-list a:hover .t{color:var(--gunjo)}@media (max-width:420px){.post-list a{grid-template-columns:1fr auto;gap:6px 12px}.post-list .d{grid-area:1/1}.post-list .c{text-align:right;grid-area:1/2}.post-list .t{grid-area:2/1/auto/-1}}.post-date{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;margin-top:14px;font-size:11.5px;font-weight:500}.post{color:var(--ink);margin-top:40px;font-size:14.5px;line-height:2.05}.post>:first-child{margin-top:0}.post h2{border-bottom:1px solid var(--ink);letter-spacing:.03em;margin-top:56px;padding-bottom:12px;font-size:17px;font-weight:700;line-height:1.6}.post h3{letter-spacing:.02em;margin-top:36px;font-size:14.5px;font-weight:700;line-height:1.7}.post p{margin-top:20px}.post ul,.post ol{margin-top:20px;padding-left:1.4em}.post li{margin-top:8px;line-height:1.95}.post li::marker{color:var(--ink-3)}.post strong{font-weight:700}.post a{color:var(--gunjo);text-underline-offset:3px;font-weight:500;text-decoration:underline;text-decoration-thickness:1px}.post code{font-family:var(--mono);border:1px solid var(--hair);border-radius:var(--r);background:#fff;padding:1px 5px;font-size:.88em;font-weight:500}.post pre{border:1px solid var(--hair);border-radius:var(--r);-webkit-overflow-scrolling:touch;font-family:var(--mono);white-space:pre;tab-size:4;background:#fff;margin-top:20px;padding:14px 15px;font-size:12.5px;line-height:1.75;overflow-x:auto}.post pre code{font-size:inherit;background:0 0;border:0;padding:0}.post table{-webkit-overflow-scrolling:touch;border-collapse:collapse;margin-top:20px;font-size:13px;display:block;overflow-x:auto}.post th,.post td{border:1px solid var(--hair);text-align:left;vertical-align:top;min-width:6.5em;padding:9px 12px;line-height:1.8}.post th{letter-spacing:.04em;background:#fff;font-size:12px;font-weight:700}.post blockquote{border-left:2px solid var(--hair);color:var(--ink-2);margin-top:20px;padding:2px 0 2px 15px;font-size:13.5px}.post blockquote p{margin-top:8px}.post blockquote p:first-child{margin-top:0}.post hr{border:0;border-top:1px solid var(--hair);margin-top:44px}.kanren{border-top:1px solid var(--hair);margin-top:18px}.kanren li{border-bottom:1px solid var(--hair);justify-content:space-between;align-items:baseline;gap:14px;padding:16px 2px;list-style:none;display:flex}.kanren a{color:var(--gunjo);text-underline-offset:3px;font-size:13.5px;font-weight:500;line-height:1.75;text-decoration:underline;text-decoration-thickness:1px}.kanren .src{color:var(--ink-3);letter-spacing:.06em;white-space:nowrap;flex:none;font-size:11px}.bd-wrap{max-width:760px}.bd-top{padding-top:26px}.bd-lede{color:var(--ink-2);letter-spacing:.02em;padding-bottom:9px;font-size:11.5px}.bd-lede .num{color:var(--ink);font-size:12.5px}.bd-lede i{color:var(--hair-2);margin:0 7px;font-style:normal}.bd-sbox{border:1px solid var(--hair-2);background:#fff;border-radius:2px;align-items:center;gap:8px;height:38px;padding:0 11px;transition:border-color .12s,box-shadow .12s;display:flex;position:relative}.bd-sbox:focus-within{border-color:var(--gunjo);box-shadow:0 0 0 3px var(--tint)}.bd-sbox .mag{width:14px;height:14px;stroke:var(--ink-3);fill:none;stroke-width:1.7px;stroke-linecap:round;flex:none}.bd-sbox:focus-within .mag{stroke:var(--gunjo)}.bd-sbox input{min-width:0;color:inherit;letter-spacing:.01em;background:0 0;border:0;outline:0;flex:1;font-family:inherit;font-size:16px}.bd-sbox input::placeholder{color:var(--ink-3);font-size:12.5px}.bd-sbox input::-webkit-search-cancel-button{appearance:none;display:none}.bd-sbox input::-webkit-search-decoration{appearance:none;display:none}.bd-sbox .clr{color:var(--ink-3);cursor:pointer;background:0 0;border:0;flex:none;padding:4px;font-size:18px;line-height:1;display:none}.bd-sbox.has .clr{display:block}.bd-legend{color:var(--ink-3);letter-spacing:.03em;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:9px 0 8px;font-size:10.5px;line-height:1.6;display:flex}.bd-legend span{align-items:center;gap:5px;display:inline-flex}.bd-legend .num{color:var(--ink-3);font-size:10.5px}.bd-legend .sw{border-radius:1px;flex:none;width:15px;height:11px}.bd-legend .sw.on{border:1px solid var(--hair-2);border-left:2px solid var(--ink-2);background:#fff}.bd-legend .sw.off{border:1px dashed var(--hair-2);background:0 0}.bd-legend .stair{flex:none;align-items:flex-end;gap:2px;height:11px;display:inline-flex}.bd-legend .stair b{background:var(--hair-2);width:3px}.bd-legend .stair b:first-child{height:4px}.bd-legend .stair b:nth-child(2){height:7px}.bd-legend .stair b:nth-child(3){height:11px}.bd-board{padding-top:10px}.bd-grp{margin-bottom:9px;padding-top:0}.bd-gh{align-items:center;gap:7px;padding-bottom:5px;display:flex}.bd-gh .bar{background:var(--c);flex:none;width:3px;height:12px}.bd-gh h2{letter-spacing:.06em;color:var(--d);white-space:nowrap;font-size:11.5px;font-weight:700}.bd-gh .rule{background:var(--hair);flex:1;height:1px}.bd-gh .n{font-family:var(--mono);color:var(--ink-3);font-variant-numeric:tabular-nums;flex:none;font-size:10px}.bd-flow{border-top:1px solid var(--hair);border-left:1px solid var(--hair);background:#fff;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.bd-tile{min-width:0;height:46px;color:inherit;border-right:1px solid var(--hair);border-bottom:1px solid var(--hair);align-items:center;gap:6px;padding:0 8px 0 11px;text-decoration:none;transition:background .1s;display:flex;position:relative}.bd-tile:before{content:"";background:var(--ink-2);width:2px;position:absolute;top:50%;left:3px;transform:translateY(-50%)}.bd-tile.l1:before{height:26%}.bd-tile.l2:before{height:52%}.bd-tile.l3:before{height:78%}.bd-tile.l4:before{height:100%}.bd-tile .c{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-family:var(--mono);letter-spacing:-.015em;color:var(--ink);flex:1;font-size:11.5px;font-weight:600;line-height:1.2;overflow:hidden}.bd-tile .q{font-family:var(--mono);color:var(--ink-3);font-variant-numeric:tabular-nums;flex:none;font-size:10px;font-weight:600}.bd-tile:hover{background:#f3f3ef}.bd-tile:hover .c{color:var(--gunjo)}.bd-tile.info:before{background:var(--hair-2)}.bd-tile.info .c{color:var(--ink-3);font-weight:500}.bd-fill{border-right:1px solid var(--hair);border-bottom:1px solid var(--hair)}.bd-cnt{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;padding-top:6px;font-size:11px}.bd-nores{color:var(--ink-2);padding:22px 2px;font-size:12.5px}.bd-nores b{color:var(--ink);font-weight:600}@media (max-width:520px){.bd-tile{padding:0 6px 0 10px}.bd-tile .c{font-size:11px}}header{position:relative}.hs{align-items:center;display:flex}.hs-btn{width:20px;height:20px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex}.hs-btn:hover{color:var(--gunjo)}.hs-btn svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;width:16px;height:16px}.hs-panel{z-index:40;background:var(--paper);border-bottom:1px solid var(--hair);padding:14px 0 18px;position:absolute;top:100%;left:0;right:0;box-shadow:0 12px 26px #17181d14}.hs-hits{border:1px solid var(--hair);background:#fff;margin-top:10px}.hs-hit{color:inherit;border-bottom:1px solid var(--hair);border-left:2px solid #0000;align-items:center;gap:12px;padding:11px 12px;text-decoration:none;display:flex}.hs-hit:last-child{border-bottom:0}.hs-hit:hover{background:var(--paper);border-left-color:var(--gunjo)}.hs-hit .l{flex:1;min-width:0}.hs-hit .code{white-space:nowrap;text-overflow:ellipsis;font-family:var(--mono);letter-spacing:-.01em;font-size:14px;font-weight:600;display:block;overflow:hidden}.hs-hit .desc{color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11.5px;display:block;overflow:hidden}.hs-hit .r{flex:none;align-items:center;gap:10px;display:flex}.hs-hit .qn{font-size:14px}.hs-hit .qn .u{font-family:var(--sans);color:var(--ink-2);margin-left:1px;font-size:10.5px;font-weight:500}.hs-hit .tag{color:var(--ink-3);border:1px solid var(--hair-2);white-space:nowrap;border-radius:2px;padding:1px 5px;font-size:10.5px}.hs-hit .go{font-family:var(--mono);color:var(--ink-3);font-size:13px}.hs-empty,.hs-more{color:var(--ink-2);padding:14px 2px;font-size:12px;line-height:1.9}.hs-empty b{color:var(--ink);font-weight:600}.hs-more a{color:var(--gunjo);text-underline-offset:3px;text-decoration:underline}.route{border-top:2px solid var(--ink);margin-top:34px;padding-top:16px}.route-h{letter-spacing:.14em;color:var(--ink-2);font-size:11.5px;font-weight:700}.route-grid{border-top:1px solid var(--hair);grid-template-columns:1fr;gap:0;margin-top:12px;display:grid}.route-card{border-bottom:1px solid var(--hair);color:inherit;align-items:baseline;gap:12px;padding:15px 2px;text-decoration:none;display:flex}.route-card .rk{letter-spacing:.08em;width:8.5em;color:var(--gunjo);flex:none;font-size:11px;font-weight:700}.route-card .rt{flex:1;min-width:0;font-size:13.5px;line-height:1.75}.route-card .rt small{color:var(--ink-2);margin-top:3px;font-size:11.5px;display:block}.route-card .go{font-family:var(--mono);color:var(--ink-3);flex:none;font-size:13px}.route-card:hover .rt{color:var(--gunjo)}@media (min-width:560px){.route-grid{border-left:1px solid var(--hair);grid-template-columns:repeat(3,1fr)}.route-card{border-right:1px solid var(--hair);flex-direction:column;align-items:flex-start;gap:7px;padding:15px 14px}.route-card .rk{width:auto}.route-card .go{display:none}}.nf{padding:56px 0 0}.nf h1{letter-spacing:.015em;margin-top:18px;font-size:26px}.nf .nf-sub{color:var(--ink-2);margin-top:18px;font-size:13.5px;line-height:2}.combo-fix{z-index:20;pointer-events:none;position:fixed;top:64px;left:50%;transform:translate(-50%)}.combo{border:1px solid var(--gunjo);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fafaf7f5;align-items:baseline;gap:7px;padding:6px 13px;display:flex}.combo .l{letter-spacing:.14em;color:var(--gunjo);font-size:10.5px;font-weight:700}.combo .num{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--gunjo);font-size:19px;font-weight:700;line-height:1}.soundbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 14px;margin-top:14px;display:flex}.sound-btn{border:1px solid var(--hair-2);min-height:34px;color:var(--ink-2);letter-spacing:.04em;cursor:pointer;background:#fff;align-items:center;gap:6px;padding:0 11px;font-family:inherit;font-size:11.5px;font-weight:600;display:inline-flex}.sound-btn:hover{border-color:var(--gunjo);color:var(--gunjo)}.sound-pierce{color:var(--ink-3);cursor:pointer;align-items:center;gap:6px;font-size:11px;display:inline-flex}.sound-pierce input{accent-color:var(--gunjo);width:13px;height:13px}.keyhint{display:none}@media (hover:hover) and (pointer:fine) and (min-width:900px){.keyhint{z-index:10;pointer-events:none;-webkit-user-select:none;user-select:none;border:1px solid var(--hair);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--ink-3);background:#fafaf7eb;padding:8px 12px;font-size:11px;line-height:1.7;display:block;position:fixed;bottom:18px;left:18px}}.keyhint kbd{font-family:var(--mono);color:var(--ink-2);border:1px solid var(--hair-2);background:#fff;padding:1px 4px;font-size:10.5px;font-weight:600}.keyhint-line i{background:var(--hair-2);width:1px;height:9px;margin:0 8px;display:inline-block}.keyhint-list{grid-template-columns:auto 1fr;gap:4px 10px;margin:0;display:grid}.keyhint-list dt{white-space:nowrap}.keyhint-list dd{margin:0}.bd-tile,.cta,.hs-btn,.hs-hit,.row,.route-card,.qindex a,.post-list a,.foot-grp li a,.pager a,.brk td .go,.reset,.annai-more>summary,.crumb a,.head-nav a,.foot-nav a,.kanren a,.foot-map-more a{touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:color .17s ease, background-color .17s ease, border-color .17s ease, scale var(--juice-press-up) var(--juice-ease-back)}.bd-tile:active,.cta:active,.hs-btn:active,.hs-hit:active,.row:active,.route-card:active,.qindex a:active,.post-list a:active,.foot-grp li a:active,.pager a:active,.brk td .go:active,.reset:active,.annai-more>summary:active,.crumb a:active,.head-nav a:active,.foot-nav a:active,.kanren a:active,.foot-map-more a:active{transition-duration:.17s,.17s,.17s,var(--juice-press-down);transition-timing-function:ease,ease,ease,var(--juice-ease-in);scale:.96}.crumb a,.head-nav a,.foot-nav a,.kanren a,.foot-map-more a{display:inline-block}.crumb a:active,.head-nav a:active,.foot-nav a:active,.kanren a:active,.foot-map-more a:active{scale:.94}.row:active,.post-list a:active,.qindex a:active,.hs-hit:active,.route-card:active{scale:.985}.post a,.prose a,.notes a,.log-note a,.facts-note a,.order-line a,.foot-p a,.dojo-lock a,.hs-more a,.demo-cap a{touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:color .12s,background-color .12s}.post a:active,.prose a:active,.notes a:active,.log-note a:active,.facts-note a:active,.order-line a:active,.foot-p a:active,.dojo-lock a:active,.hs-more a:active,.demo-cap a:active{color:var(--gunjo-deep);background:var(--tint)}@media (prefers-reduced-motion:reduce){.bd-tile,.cta,.hs-btn,.hs-hit,.row,.route-card,.qindex a,.post-list a,.foot-grp li a,.pager a,.brk td .go,.reset,.annai-more>summary,.crumb a,.head-nav a,.foot-nav a,.kanren a,.foot-map-more a,.bd-tile:active,.cta:active,.hs-btn:active,.hs-hit:active,.row:active,.route-card:active,.qindex a:active,.post-list a:active,.foot-grp li a:active,.pager a:active,.brk td .go:active,.reset:active,.annai-more>summary:active,.crumb a:active,.head-nav a:active,.foot-nav a:active,.kanren a:active,.foot-map-more a:active{transition:none;scale:1}}.streak-note{color:var(--ink-2);flex-wrap:wrap;align-items:baseline;gap:12px;margin-top:14px;font-size:12px;display:flex}.streak-note .l{color:var(--ink-3);letter-spacing:.1em;font-size:11px}.streak-note .v .num{color:var(--ink);font-weight:600}.streak-note .v .unit{color:var(--ink-2)}.streak-note .v .yet{color:var(--ink-3);margin-left:10px;font-size:11px}.streak-note.on-board{margin:0 0 16px}
