:root{--font-ja-display: "Cormorant Variable", "Noto Serif JP", serif;--font-ja-ui: "Jost Variable", "Noto Serif JP", sans-serif}@property --route-band{syntax: "<length>"; inherits: true; initial-value: 0px;}:root{--c-ink: #071417;--c-teal-900: #0c2226;--c-teal-700: #12403c;--c-teal-400: #7fb6ac;--c-violet-800: #2a2547;--c-violet-600: #453c6b;--c-umber-700: #4a2e22;--c-umber-500: #6b4530;--c-gold: #d9ae55;--c-champagne: #ede0bc;--c-cream: #f4ebda;--c-bg: var(--c-ink);--c-surface: var(--c-teal-700);--c-text: var(--c-cream);--c-text-muted: var(--c-champagne);--c-accent: var(--c-gold);--c-hairline: rgb(217 174 85 / .28);--font-brand: "Cinzel Decorative", "Cinzel Fallback", Georgia, serif;--font-display: "Cormorant Variable", "Cormorant Fallback", Georgia, serif;--font-ui: "Jost Variable", "Jost Fallback", system-ui, sans-serif;--fs-xs: clamp(.75rem, .72rem + .15vw, .8125rem);--fs-sm: clamp(.875rem, .85rem + .12vw, .9375rem);--fs-base: clamp(1rem, .96rem + .2vw, 1.0625rem);--fs-md: clamp(1.25rem, 1.15rem + .5vw, 1.5rem);--fs-lg: clamp(1.5625rem, 1.4rem + .8vw, 2rem);--fs-xl: clamp(1.953rem, 1.7rem + 1.3vw, 2.75rem);--fs-2xl: clamp(2.441rem, 2rem + 2.2vw, 3.75rem);--fs-3xl: clamp(3.05rem, 2.4rem + 3.3vw, 5rem);--fw-body: 300;--fw-body-strong: 400;--fw-display: 400;--fw-display-strong: 500;--lh-tight: 1.15;--lh-heading: 1.25;--lh-body: 1.6;--ls-wordmark: .16em;--ls-label: .18em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-9: 6rem;--space-10: 8rem;--section-pad-y: clamp(4rem, 10vw, 9rem);--gutter: clamp(1.25rem, 5vw, 3rem);--measure: 34rem;--content-max: 72rem;--navbar-h: 4rem;--tap-min: 2.75rem;--route-band: clamp(5rem, 12svh, 7rem);--station-indent: 1.75rem;--station-star: .82rem;--focus-ring-w: 2px;--focus-ring-offset: 2px;--dur-fast: .15s;--dur-base: .22s;--dur-slow: .3s;--dur-arrival: .6s;--ease-out: cubic-bezier(.22, .61, .36, 1);--ease-in: cubic-bezier(.55, .06, .68, .19);--z-sky: 0;--z-content: 1;--z-navbar: 10;--z-panel: 20;--z-skip: 100}@media(min-width:48rem){:root{--navbar-h: 5rem}}@media(min-width:91rem){:root{--route-band: 0px}}@font-face{font-family:Cinzel Decorative;src:url(/fonts/cinzel-decorative-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}@font-face{font-family:Cormorant Variable;src:url(/fonts/cormorant-var.woff2) format("woff2-variations");font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}@font-face{font-family:Jost Variable;src:url(/fonts/jost-var.woff2) format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}@font-face{font-family:Cinzel Fallback;src:local("Georgia"),local("Times New Roman");ascent-override:98%;descent-override:37%;line-gap-override:0%;size-adjust:127%}@font-face{font-family:Cormorant Fallback;src:local("Georgia"),local("Times New Roman");ascent-override:92%;descent-override:29%;line-gap-override:0%;size-adjust:87%}@font-face{font-family:Jost Fallback;src:local("Arial"),local("Helvetica");ascent-override:107%;descent-override:38%;line-gap-override:0%;size-adjust:97%}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{min-height:100svh;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,picture,svg,canvas{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:none;padding:0;cursor:pointer}p,h1,h2,h3,h4{overflow-wrap:break-word}ul[class],ol[class]{list-style:none;padding:0}a{color:inherit;text-decoration:none}section[id],article[id]{scroll-margin-top:calc(var(--navbar-h) + var(--space-5))}html{background-color:var(--c-bg);color-scheme:dark;-webkit-tap-highlight-color:transparent;scrollbar-gutter:stable}html.is-holding,html.is-holding body,html.is-locked,html.is-locked body{overflow:hidden}::selection{background-color:color-mix(in oklab,var(--c-gold) 34%,transparent);color:var(--c-cream)}body{background-color:transparent;color:var(--c-text);font-family:var(--font-ui);font-weight:var(--fw-body);font-size:var(--fs-base);line-height:var(--lh-body)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--fw-display);line-height:var(--lh-heading);color:var(--c-cream);text-wrap:balance}h1{font-size:var(--fs-2xl);line-height:var(--lh-tight)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-lg)}h4{font-size:var(--fs-md)}p{text-wrap:pretty}:focus-visible{outline:var(--focus-ring-w) solid var(--c-gold);outline-offset:var(--focus-ring-offset);border-radius:1px}:focus:not(:focus-visible){outline:none}.skip-link{position:fixed;top:var(--space-2);left:var(--space-2);z-index:var(--z-skip);padding:var(--space-3) var(--space-4);background-color:var(--c-ink);border:1px solid var(--c-gold);color:var(--c-cream);font-size:var(--fs-sm);letter-spacing:.06em;transform:translateY(calc(-100% - var(--space-4)));transition:transform var(--dur-base) var(--ease-out)}.skip-link:focus-visible{transform:translateY(0)}.shell{position:relative;z-index:var(--z-content)}.section{padding-block:var(--section-pad-y)}.container{width:100%;max-width:var(--content-max);margin-inline:auto;padding-inline:var(--gutter)}.measure{max-width:var(--measure)}.eyebrow{font-family:var(--font-ui);font-size:var(--fs-xs);font-weight:var(--fw-body-strong);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--c-gold)}.lede{color:var(--c-text-muted);font-size:var(--fs-md);font-weight:var(--fw-body);line-height:1.5}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:lang(ja){line-break:strict;overflow-wrap:break-word;word-break:normal;font-feature-settings:"palt" 1;font-family:var(--font-ja-ui, var(--font-ui))}:lang(ja) h1,:lang(ja) h2,:lang(ja) h3,:lang(ja) h4{font-family:var(--font-ja-display, var(--font-display))}:lang(ja) :is(h1,h2,h3,h4,.lede){word-break:auto-phrase}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
