:root{--color-text:#1b2433;--color-heading:#0f2a5c;--color-sub:#4f5a6b;--color-primary:#1d4a9c;--color-tint:#eef4fa;--color-decor:#cfe0f3;--color-sky:#7cc4f4;--color-amber:#f2a93b;--color-on-heading:#fff;--color-on-heading-sub:#c9d8f0;--color-black:#111;--color-white:#fff;--alpha-decor:.3;--alpha-sky:.12;--color-primary-hover:color-mix(in srgb, var(--color-primary) 82%, #000);--color-amber-hover:color-mix(in srgb, var(--color-amber) 88%, #fff);--color-black-hover:color-mix(in srgb, var(--color-black) 85%, #fff)}@font-face{font-family:Zen Kaku Gothic New;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/zen-kaku-gothic-new-400.woff2)format("woff2")}@font-face{font-family:Zen Kaku Gothic New;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/zen-kaku-gothic-new-500.woff2)format("woff2")}@font-face{font-family:Zen Kaku Gothic New;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/zen-kaku-gothic-new-700.woff2)format("woff2")}@font-face{font-family:Zen Kaku Gothic New;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/zen-kaku-gothic-new-900.woff2)format("woff2")}:root{--font-base:"Zen Kaku Gothic New", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Yu Gothic", Meiryo, sans-serif;--button-height:48px;--fs-title:2.3rem;--fs-num:2.4rem;--fs-h2:1.55rem;--fs-lead:1.15rem;--fs-body:1rem;--fs-sub:.8rem;--measure:40em;--pad-section:56px;--gap-card:24px;--pad-x:16px;--radius-card:24px;--radius-photo:16px;--slant:24px}@media (width>=900px){:root{--pad-section:96px;--gap-card:32px;--pad-x:32px;--slant:48px}}html{font-size:18px}html[data-textsize=large]{font-size:22px}html[data-textsize=xlarge]{font-size:26px}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-base);font-size:var(--fs-body);color:var(--color-text);background:var(--color-white);overflow-wrap:anywhere;word-break:auto-phrase;line-break:strict;text-autospace:normal;font-kerning:normal;margin:0;font-weight:400;line-height:1.9}img,svg,video{max-width:100%;height:auto}h1,h2,h3{color:var(--color-heading);text-wrap:balance;font-feature-settings:"palt";text-spacing-trim:trim-start;margin:0 0 .6em}h1{font-size:var(--fs-title);letter-spacing:-.02em;font-weight:900;line-height:1.25}h2{font-size:var(--fs-h2);letter-spacing:-.01em;font-weight:700;line-height:1.35}h3{font-size:var(--fs-body);color:var(--color-sub);font-weight:500;line-height:1.5}p,ul,ol,dl{margin:0 0 1em}p,li{max-width:var(--measure)}p{text-wrap:pretty}.lead{font-size:var(--fs-lead);line-height:1.8}.sub{font-size:var(--fs-sub);color:var(--color-sub)}a{color:var(--color-primary);text-underline-offset:.2em;text-decoration:underline 1.5px}a:hover{color:var(--color-primary-hover)}:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.container{width:100%;max-width:1120px;padding:0 var(--pad-x);z-index:1;margin:0 auto;position:relative}.skip{z-index:10;background:var(--color-primary);color:var(--color-white);padding:.8rem 1rem;position:absolute;top:-4rem;left:0}.skip:focus{top:0}.btn{min-height:var(--button-height);font:inherit;text-align:center;font-feature-settings:"palt";color:var(--color-white);background:var(--color-primary);border:2px solid var(--color-primary);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:0 1.4em;font-weight:700;line-height:1.4;text-decoration:none;display:inline-flex}.btn:hover{color:var(--color-white);background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn--amber{color:var(--color-text);background:var(--color-amber);border-color:var(--color-amber)}.btn--amber:hover{color:var(--color-text);background:var(--color-amber-hover);border-color:var(--color-amber-hover)}.btn--black{color:var(--color-white);background:var(--color-black);border-color:var(--color-black)}.btn--black:hover{color:var(--color-white);background:var(--color-black-hover);border-color:var(--color-black-hover)}.btn--wide{text-align:left;border-radius:28px;justify-content:space-between;width:100%;padding:.4rem 1.4em}.site-header{background:var(--color-white);border-top:3px solid var(--color-primary);padding:10px 0 calc(14px + var(--slant));position:relative}.header-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"title""nav""size";align-items:center;gap:4px 24px;display:grid}.site-head-row{min-height:var(--button-height);grid-area:title;justify-content:space-between;align-items:center;gap:1rem;display:flex}.nav{grid-area:nav}.textsize{grid-area:size}.site-title{letter-spacing:-.01em;margin:0;font-size:1.15rem;font-weight:900;line-height:1.3}.site-title a{color:var(--color-heading);text-underline-offset:.25em;text-decoration:underline 1.5px}.site-title a:hover{color:var(--color-primary)}@media (width>=960px){.header-grid{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"title nav size"}}.menu{flex-wrap:wrap;gap:4px 20px;margin:0;padding:0;list-style:none;display:flex}.menu li{max-width:none}.menu--header{border-top:1px solid var(--color-decor);grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;display:grid}.menu--header li{border-bottom:1px solid var(--color-decor)}@media (width>=960px){.menu--header{border-top:0;justify-content:flex-end;gap:4px 28px;display:flex}.menu--header li{border-bottom:0}}.btn--nav{min-height:var(--button-height);width:100%;color:var(--color-heading);background:0 0;border:0;border-radius:0;justify-content:flex-start;padding:0;font-weight:500}.btn--nav:hover{color:var(--color-primary);background:0 0}.btn--nav[aria-current=page]{text-decoration:underline;text-decoration-color:var(--color-primary);text-underline-offset:.4em;font-weight:700;text-decoration-thickness:3px}@media (width>=960px){.btn--nav{width:auto}}html[data-textsize=large] .btn--nav,html[data-textsize=xlarge] .btn--nav{font-size:.85rem}.textsize{flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 0;display:flex}.textsize__title{font-size:var(--fs-sub);color:var(--color-sub);white-space:nowrap;margin:0;font-weight:500;line-height:1.4}.textsize__buttons{background:var(--color-tint);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.textsize__btn{min-height:34px;font-family:inherit;font-size:var(--fs-sub);cursor:pointer;color:var(--color-heading);background:0 0;border:0;border-radius:999px;padding:0 .9em;font-weight:500;line-height:1.4;position:relative}.textsize__btn:after{content:"";position:absolute;inset:-5px -2px}.textsize__btn:hover{color:var(--color-primary);background:var(--color-white)}.textsize__btn[aria-pressed=true]{color:var(--color-white);background:var(--color-primary);font-weight:700}@media (width>=960px){.textsize{justify-content:flex-end;margin:0}}.band{margin-top:calc(var(--slant) * -1);padding:calc(var(--pad-section) + var(--slant)) 0 var(--pad-section);background:var(--color-white);clip-path:polygon(0 var(--slant), 100% 0, 100% 100%, 0 100%);position:relative}.band--tint{background:var(--color-tint)}.band--slim{padding:calc(var(--slant) + 32px) 0 32px}.band>.container>:last-child{margin-bottom:0}.band--navy{color:var(--color-on-heading);background:var(--color-heading);padding-bottom:calc(var(--pad-section) * .8)}.band--navy h1,.band--navy .lead,.band--navy p{color:var(--color-on-heading)}.band--navy .btn{color:var(--color-heading);background:var(--color-white);border-color:var(--color-white)}.band--navy .btn:hover{color:var(--color-heading);background:var(--color-tint);border-color:var(--color-tint)}.split{gap:0;display:grid}.split>.section-title{margin-bottom:24px}.container>.section-title{margin-bottom:32px}@media (width>=900px){.split{grid-template-columns:minmax(180px,240px) minmax(0,1fr);column-gap:64px}.split>.section-title{grid-area:1/1/span 12;margin:0}.split>:not(.section-title){grid-column:2}}.notice{max-width:var(--measure);font-size:var(--fs-sub);color:var(--color-sub);border-left:3px solid var(--color-primary);margin:0;padding:0 0 0 16px;line-height:1.7}.notice>p{margin:0}.band--navy .notice{color:var(--color-on-heading-sub);border-left-color:var(--color-on-heading-sub)}.band--navy .notice p{color:var(--color-on-heading-sub)}.draft-banner{max-width:var(--measure);color:var(--color-text);background:var(--color-white);border:2px dashed var(--color-primary);border-radius:12px;margin:0 0 32px;padding:12px 16px;font-weight:700}.draft-banner>p{color:var(--color-text);margin:0}.band--navy .draft-banner p{color:var(--color-text)}.site-footer{margin-top:calc(var(--slant) * -1);padding:calc(40px + var(--slant)) 0 48px;color:var(--color-white);background:var(--color-primary);clip-path:polygon(0 var(--slant), 100% 0, 100% 100%, 0 100%);position:relative}.site-footer__inner{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.site-footer__body{flex:20rem;min-width:0}.site-footer__body p{margin-bottom:.4rem;font-weight:500}.site-footer .menu{gap:0 28px}.footer-link{min-height:var(--button-height);color:var(--color-white);text-underline-offset:.25em;align-items:center;font-weight:500;text-decoration:underline;display:inline-flex}.footer-link:hover{color:var(--color-white);text-decoration-thickness:3px}.site-footer :focus-visible{outline-color:var(--color-white)}.illust{flex:none;max-width:100%;height:auto;display:block}.illust--header{width:auto;height:44px}html[data-textsize=large] .illust--header,html[data-textsize=xlarge] .illust--header{display:none}.illust--footer{width:auto;height:64px}.illust--top,.illust--coming-soon{width:min(100%,14rem);margin:0 0 1.5rem}.illust--course-head{width:min(100%,10rem);margin:0 0 1.5rem}.illust--summary,.illust--route,.illust--next{width:4rem;margin:0 0 1rem}@media (width>=40rem){.intro:has(>.illust--top),.intro:has(>.illust--coming-soon){grid-template-columns:1fr auto;align-items:center;column-gap:2rem;display:grid}.intro>.illust--top,.intro>.illust--coming-soon{grid-area:1/2/span 4;margin:0}.course-head:has(>.illust--course-head){grid-template-columns:1fr auto;align-items:start;column-gap:2rem;display:grid}.course-head>.illust--course-head{grid-area:1/2/span 5;margin:0}}.ward-chip{font-size:var(--fs-sub);color:var(--color-heading);background:var(--color-white);border-radius:999px;margin-right:.5em;padding:0 .8em;font-weight:700;line-height:1.8;display:inline-block}.course-label{color:var(--color-on-heading-sub);margin:0 0 16px;font-weight:500}.course-head h1{margin-bottom:24px}.photo{margin:0 0 32px}.photo img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-photo);width:100%;max-height:560px;display:block}.print-row{margin:0}.route-line{max-width:none;color:var(--color-heading);flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0 0 32px;font-size:1.15rem;font-weight:700;display:flex}.route-line strong{color:var(--color-sub);font-weight:500}.route-line__arrow{color:var(--color-primary)}.metrics{border-top:1px solid var(--color-decor);grid-template-columns:minmax(0,1fr);margin:0 0 40px;display:grid}.metric{border-bottom:1px solid var(--color-decor);justify-content:space-between;align-items:baseline;gap:16px;margin:0;padding:16px 0;display:flex}.metric dt{color:var(--color-text);align-items:center;gap:8px;font-weight:700;line-height:1.4;display:flex}.metric dd{color:var(--color-heading);flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:0 .2em;margin:0;line-height:1.15;display:flex}.metric__num{font-size:var(--fs-num);letter-spacing:-.02em;font-weight:900}.metric__word{font-size:1.5rem;font-weight:900}.metric__unit{font-size:.9rem;font-weight:700}.metric-icon{width:1.3em;height:1.3em;color:var(--color-primary);flex:none}@media (width>=900px){.metrics{border-bottom:1px solid var(--color-decor);grid-template-columns:repeat(5,minmax(0,1fr))}.metric{border-bottom:0;border-left:1px solid var(--color-decor);padding:24px 20px 28px;display:block}.metric:first-child{border-left:0;padding-left:0}.metric dd{justify-content:flex-start;margin-top:12px}}html[data-textsize=large] .metric,html[data-textsize=xlarge] .metric{display:block}html[data-textsize=large] .metric dd,html[data-textsize=xlarge] .metric dd{justify-content:flex-start;margin-top:6px}html[data-textsize=large] .metrics,html[data-textsize=xlarge] .metrics{border-bottom:0;grid-template-columns:minmax(0,1fr)}html[data-textsize=large] .metric,html[data-textsize=xlarge] .metric{border-left:0;border-bottom:1px solid var(--color-decor);padding-left:0}.pickup-title{margin:0 0 8px}.pickup{margin:0;padding-left:1.3em;font-weight:500}.pickup li::marker{color:var(--color-primary)}.route-list{margin:0 0 40px;padding:0;list-style:none}.route-list li{grid-template-columns:4.6em minmax(0,1fr);align-items:center;gap:12px;max-width:none;padding:10px 0;display:grid;position:relative}.route-list li:not(:last-child):after{content:"";background:var(--color-primary);z-index:0;width:4px;margin-left:-2px;position:absolute;top:50%;bottom:-50%;left:2.3em}.route-list li>*{z-index:1;position:relative}.route-stop{color:var(--color-heading);font-size:1.2rem;font-weight:700;line-height:1.4}.route-mark{font-size:var(--fs-sub);color:var(--color-primary);background:var(--color-white);border:2px solid var(--color-primary);border-radius:999px;justify-self:center;padding:0 .7em;font-weight:700;line-height:1.8}.badge{width:2.6rem;height:2.6rem;color:var(--color-white);background:var(--color-primary);border:3px solid var(--color-white);box-shadow:0 0 0 2px var(--color-primary);border-radius:50%;justify-content:center;justify-self:center;align-items:center;font-size:1.1rem;font-weight:900;line-height:1;display:inline-flex}.map-frame{text-align:center;min-height:16rem;color:var(--color-heading);background:var(--color-tint);border:2px dashed var(--color-primary);border-radius:var(--radius-photo);justify-content:center;align-items:center;margin-top:8px;font-weight:700;display:flex}.map-frame p{margin:0}.spot{gap:24px;display:grid}.spot+.spot{margin-top:calc(var(--pad-section) * .7);padding-top:calc(var(--pad-section) * .7);border-top:1px solid var(--color-decor)}.spot__kicker{font-size:var(--fs-body);color:var(--color-sub);margin-bottom:4px;font-weight:500;line-height:1.4;display:block}.spot__title{font-size:var(--fs-h2);letter-spacing:-.015em;color:var(--color-heading);font-weight:900;line-height:1.3;display:block}.spot__heading{margin:0 0 .9em}.spot__media{order:-1;margin:0}.spot__media img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-photo);width:100%;display:block}.spot__text>:last-child{margin-bottom:0}@media (width>=900px){.spot--has-media{grid-template-columns:1fr 1fr;align-items:center;gap:64px}.spot--has-media .spot__media{order:0}.spot--media-left .spot__media{order:-1}}.course-section-body>:last-child,.next-block>:last-child{margin-bottom:0}.walk-note{max-width:var(--measure);background:var(--color-tint);border-left:6px solid var(--color-primary);border-radius:0 12px 12px 0;margin:1.4em 0 0;padding:16px 20px}.band--tint .walk-note{background:var(--color-white)}.walk-note>strong:first-child{font-size:var(--fs-sub);color:var(--color-white);background:var(--color-primary);border-radius:999px;margin-right:.4em;padding:0 .8em;font-weight:700;line-height:1.8;display:inline-block}.next-list{gap:12px;margin:0 0 24px;padding:0;list-style:none;display:grid}.next-list li{max-width:none}.course-list{grid-template-columns:minmax(0,1fr);gap:24px;margin:0;padding:0;list-style:none;display:grid}.course-list li{max-width:none}.course-card{color:var(--color-heading);grid-template-columns:minmax(96px,36%) minmax(0,1fr);align-items:center;gap:16px;text-decoration:none;display:grid}.course-card__thumb{aspect-ratio:4/3;background:var(--color-tint);border-radius:12px;display:block;overflow:hidden}.band--tint .course-card__thumb{background:var(--color-white)}.course-card__thumb img,.course-card__thumb svg{object-fit:cover;width:100%;height:100%;display:block}.course-card__placeholder{color:var(--color-primary)}.course-card__title{letter-spacing:-.005em;text-underline-offset:.25em;font-size:1.1rem;font-weight:700;line-height:1.5;text-decoration:underline 1.5px}.course-card:hover .course-card__title{color:var(--color-primary)}@media (width>=600px){.course-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}.course-card{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px}}@media (width>=900px){.course-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 32px}}html[data-textsize=large] .course-card,html[data-textsize=xlarge] .course-card{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px}.swatches{grid-template-columns:repeat(auto-fill,minmax(min(100%,14rem),1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.swatch{flex-direction:column;gap:4px;margin:0;display:flex}.swatch__chip{border:1px solid var(--color-decor);border-radius:12px;height:3rem}.table-wrap{overflow-wrap:anywhere}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--color-decor);padding:10px 12px 10px 0}.data-table th{font-weight:500}.intro>h1{margin-bottom:.5em}.intro>:last-child{margin-bottom:0}.intro .lead{max-width:28em;margin-bottom:32px}@page{size:A4;margin:12mm}@media print{html,html[data-textsize]{font-size:9.5pt}body{color:#000;background:#fff;line-height:1.4}.no-print,.textsize,.nav,.menu,.skip,.illust,.site-footer nav,.metric-icon,.section-title:after{display:none!important}.container{max-width:none;padding:0}.band,.band--tint,.band--navy,.band--slim{color:#000;clip-path:none;background:0 0;margin-top:0;padding:1.2mm 0}.site-header{background:0 0;border-top:2px solid #000;border-bottom:1px solid #000;padding:1mm 0}.header-grid{display:block}.site-title{font-size:11pt}.site-title a{color:#000;text-decoration:none}.site-footer{clip-path:none;color:#000;background:0 0;border-top:1px solid #000;margin-top:0;padding:1mm 0 0}.site-footer p{margin:0;font-size:9pt}.print-site{margin:2mm 0 0;font-size:9pt;display:block}h1,.band--navy h1{color:#000;margin:0 0 1mm;font-size:18pt}h2{color:#000;border-bottom:1px solid #000;margin:0 0 1.5mm;padding-bottom:.5mm;font-size:12pt}h3{color:#000}p,ul,ol,dl{margin:0 0 1mm}p,li{max-width:none}a,.band--navy p,.band--navy .notice p,.course-label{color:#000}.split{display:block}.notice,.band--navy .notice{color:#000;border:1px solid #000;border-radius:4px;margin:0 0 1.5mm;padding:1mm 2mm;font-size:9pt}.ward-chip{color:#000;background:0 0;border:1px solid #000;line-height:1.4}.photo{display:none}.course-top{grid-template-columns:1fr 1fr;align-items:start;gap:6mm;display:grid}.metrics{border:0;gap:1mm 3mm;margin:0 0 2mm;grid-template-columns:repeat(3,1fr)!important}.metric{border:0!important;padding:0!important;display:block!important}.metric dd{color:#000;justify-content:flex-start;margin:0}.metric dt{color:#000}.metric__num{font-size:14pt}.metric__word{font-size:11pt}.metric__unit{font-size:9pt}.route-line{color:#000;margin-bottom:2mm;font-size:10pt}.route-line strong,.route-line__arrow{color:#000}.route-list{margin:0 0 2mm}.route-list li{grid-template-columns:4.4em 1fr;gap:2mm;padding:.3mm 0}.route-list li:not(:last-child):after{background:#000;width:2px;margin-left:-1px;left:2.2em}.route-stop{color:#000;font-size:10.5pt}.route-mark{color:#000;white-space:nowrap;border:1px solid #000;line-height:1.4}.badge{color:#000;width:1.7em;height:1.7em;box-shadow:none;background:0 0;border:1.5px solid #000;font-size:10pt}.map-frame{color:#000;background:0 0;border:1px dashed #000;min-height:38mm;margin:0}.spot{display:block}.spot+.spot{border-top:1px solid #000;margin-top:2mm;padding-top:2mm}.spot__media{display:none}.spot__kicker{color:#000}.spot__title{color:#000;font-size:12pt}.spot__heading{margin:0 0 1mm}.walk-note{background:0 0;border:2px solid #000;border-radius:4px;margin:1mm 0 0;padding:1mm 2mm}.walk-note>strong:first-child{color:#000;background:0 0;border:1px solid #000;line-height:1.4}section,li,.spot{break-inside:avoid}}.print-site{display:none}@media print{.print-site{display:block}}
