.route-detail{max-width:860px}.route-back{margin:0 0 var(--spacing-4)}.route-back a{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted);text-decoration:none}.route-back a:hover{color:var(--color-vermillion)}.route-count{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted);margin:0}.route-locked{border:1px solid var(--color-hair);background:var(--color-paper-2);padding:var(--spacing-5);margin-bottom:var(--spacing-6)}.route-locked-h{font-family:var(--font-display),var(--font-ja);font-size:19px;font-weight:600;line-height:1.35;margin:0 0 var(--spacing-3)}.route-locked-b{font-size:15px;line-height:1.75;color:var(--color-ink-soft);margin:0 0 var(--spacing-4);max-width:36rem}.route-cta{margin:0 0 var(--spacing-4)}.route-signup{display:inline-block;padding:12px 20px;background:var(--color-ink);color:var(--color-paper);border:1px solid var(--color-ink);text-decoration:none;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;line-height:1.4;transition:background var(--t-fast),color var(--t-fast)}.route-signup:hover{background:transparent;color:var(--color-ink)}html[lang=ja] .route-signup{font-family:var(--font-ja);letter-spacing:.04em;text-transform:none}.route-signin{margin:var(--spacing-4) 0 0}.route-signin button{background:none;border:0;border-bottom:1px solid currentColor;padding:0 0 2px;font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-vermillion);cursor:pointer;text-align:left}html[lang=ja] .route-signin button{font-family:var(--font-ja);letter-spacing:.04em}.route-day{border-top:1px solid var(--color-hair);padding-top:var(--spacing-5);margin-bottom:var(--spacing-6)}.route-day-h{font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted);margin:0 0 var(--spacing-4)}.route-stops{list-style:none;margin:0 0 var(--spacing-5);padding:0}.rstop{display:grid;grid-template-columns:3.4rem minmax(0,1fr);gap:var(--spacing-4);border-bottom:1px solid var(--color-hair);padding:var(--spacing-5) 0}.rstop-n{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-vermillion);letter-spacing:.1em;padding-top:5px}.rstop-where{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted);margin:0 0 var(--spacing-2)}.rstop-early{color:var(--color-vermillion)}.rstop-title{font-family:var(--font-display),var(--font-ja);font-size:20px;font-weight:600;line-height:1.3;margin:0 0 var(--spacing-2)}.rstop-title a{color:inherit;text-decoration:none}.rstop-title a:hover{color:var(--color-vermillion)}.rstop-reco{font-size:15px;line-height:1.7;color:var(--color-ink-soft);margin:0 0 var(--spacing-3);max-width:38rem}.rstop-see-h{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-grey-off);margin:0 0 var(--spacing-2)}.rstop-see{list-style:none;margin:0 0 var(--spacing-3);padding:0;display:grid;gap:6px}.rstop-see li{font-size:14px;line-height:1.65;color:var(--color-ink-soft);padding-left:18px;position:relative}.rstop-see li:before{content:"·";position:absolute;left:5px;top:-2px;color:var(--color-vermillion);font-size:19px;line-height:1.4}.rstop-see b{font-weight:600;color:var(--color-ink)}.rstop-read{margin:0}.rstop-read a{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-vermillion);text-decoration:none}.rstop-read a:hover{text-decoration:underline}.route-day-acts{display:flex;gap:var(--spacing-3);flex-wrap:wrap;align-items:center}.route-gmaps{display:inline-block;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:11px 18px;border:1px solid var(--color-ink);background:var(--color-ink);color:var(--color-paper);transition:background var(--t-fast),color var(--t-fast)}.route-gmaps:hover{background:transparent;color:var(--color-ink)}.route-hint{font-family:var(--font-mono);font-size:10px;color:var(--color-grey-off);margin:0;width:100%}.route-note{font-size:var(--text-xs);line-height:1.7;color:var(--color-vermillion);border-left:2px solid var(--color-vermillion);padding-left:10px;margin:0 0 var(--spacing-5)}.route-note[data-tone=calm]{color:var(--color-ink-soft);border-left-color:var(--color-hair)}html[lang=ja] :is(.route-back a,.route-count,.route-day-h,.rstop-where,.rstop-n,.rstop-see-h,.rstop-read a,.route-gmaps,.route-hint){font-family:var(--font-ja);letter-spacing:.04em;text-transform:none}@media(max-width:640px){.rstop{grid-template-columns:2.4rem minmax(0,1fr);gap:var(--spacing-3)}}.has-map .route-day{border-top:0;padding-top:0}.has-map .route-stops{margin-bottom:var(--spacing-5)}.has-map .rstop{position:relative;grid-template-columns:30px minmax(0,1fr);gap:0 16px;border-bottom:0;padding:0 0 6px}.has-map .rstop-n{position:relative;z-index:1;width:30px;height:30px;padding:0;display:grid;place-items:center;border-radius:3px;background:var(--color-vermillion);color:var(--color-paper);font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:0;box-shadow:inset 0 0 0 2px var(--color-vermillion),inset 0 0 0 3.2px #f4f0e6eb,0 3px 10px #6e281238}.has-map .rstop:before{content:"";position:absolute;left:14.2px;top:30px;bottom:0;width:1.6px;background:var(--color-vermillion)}.has-map .rstop:last-of-type:before{display:none}.rstop-ph{position:relative;margin:0 0 14px;aspect-ratio:3 / 2;overflow:hidden;background:var(--color-paper-2)}.rstop-ph img{display:block;width:100%;height:100%;object-fit:cover}.rstop-cr{position:absolute;right:0;bottom:0;z-index:2;max-width:100%;box-sizing:border-box;padding:3px 7px;background:#1b2a2fbd;color:var(--color-paper);font-family:var(--font-mono);font-size:10px;line-height:1.35;letter-spacing:.02em;text-align:right}.rleg{position:relative;list-style:none;padding:4px 0 26px 46px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-vermillion)}.rleg:before{content:"";position:absolute;left:14.2px;top:0;bottom:0;border-left:1.6px dotted var(--color-vermillion)}.rleg:after{content:"";position:absolute;left:10.6px;bottom:6px;width:6px;height:6px;border-right:1.6px solid var(--color-vermillion);border-bottom:1.6px solid var(--color-vermillion);transform:rotate(45deg)}html[lang=ja] .rleg{font-family:var(--font-ja);letter-spacing:.04em;text-transform:none;font-size:12px}.rmap{margin:6px 0 40px;max-width:560px}.rmap-label{display:flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:11px;font-weight:500;line-height:1.4;letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted);padding:0 0 9px;margin:0 0 18px;border-bottom:1px solid var(--color-ink)}.rmap-label:before{content:"";width:7px;height:7px;background:var(--color-vermillion);transform:rotate(45deg);flex:none}.rmap-box{position:relative;border:1px solid var(--color-ink);box-shadow:0 2px 3px #1b2a2f1f;background:var(--color-paper-2);overflow:hidden}.rmap-box>img,.rmap-inset>img{display:block;width:100%;height:100%}.rmap-box .rm-map{position:absolute;inset:0;width:100%;height:100%}.rmap-sp{display:none}@media(max-width:599px){.rmap-pc{display:none}.rmap-sp{display:block}}.rmap-inset{position:absolute;z-index:2;border:1.5px solid var(--color-vermillion);box-shadow:0 2px 8px #1b2a2f47;background:var(--color-paper)}.rmap-osm{position:absolute;right:3px;bottom:2px;z-index:3;padding:1px 4px;font-family:var(--font-mono);font-size:9px;line-height:1.3;color:#3c4a50e6;background:#f4f0e6b8}.rmap-open{margin:10px 0 0}.rmap-open a{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-vermillion);text-decoration:none}.rmap-open a:hover{text-decoration:underline}html[lang=ja] :is(.rmap-label,.rmap-open a){font-family:var(--font-ja);letter-spacing:.04em;text-transform:none}html[lang=ja] .rmap-open a{font-size:13px}.rm-map .rm-zoom{fill:none;stroke:var(--color-vermillion);stroke-width:1.4;stroke-dasharray:4 3}.rm-map .rm-leads path{fill:none;stroke:var(--color-vermillion);stroke-width:1}.rm-map .rm-leads circle{fill:var(--color-vermillion)}.rm-map .rm-seal rect{fill:var(--color-vermillion);stroke:var(--color-paper);stroke-width:1.6;transition:transform .2s var(--ease-standard)}.rm-map .rm-seal text{font:600 11px var(--font-mono);fill:var(--color-paper);text-anchor:middle}.rm-map .rm-seal .rm-ring{fill:none;stroke:var(--color-vermillion);stroke-width:1.4;opacity:0;transition:opacity .2s}.rm-map .rm-seal.is-on .rm-ring{opacity:.95}.rm-map .rm-seal.is-on rect{transform:scale(1.18)}.rm-map .rm-labs text{font:12px var(--font-display),var(--font-ja);fill:var(--color-ink);paint-order:stroke;stroke:var(--color-paper);stroke-width:3.5px;stroke-linejoin:round}@media(min-width:1000px){.route-detail:has(.has-map){max-width:1200px}.has-map{display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:0 56px;align-items:start}.has-map .rmap-aside{position:sticky;top:calc(var(--nav-h) + 28px);grid-column:2;grid-row:1 / span 9}.has-map .route-day{grid-column:1}.has-map .rmap{margin:0;max-width:none}}
