/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}:root{--green:#006b35;--green-dark:#004a26;--green-pale:#e8f2ec;--ink:#171b18;--paper:#f7f5ef;--line:#cbd8cf}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{color:var(--ink);background:radial-gradient(circle at 88% 2%, #006b351a, transparent 30rem), var(--paper);margin:0;font-family:Hiragino Kaku Gothic ProN,Yu Gothic,YuGothic,sans-serif}a{color:inherit}button{color:inherit;font:inherit}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #d9a734}.topbar{border-bottom:1px solid #006b3538;justify-content:space-between;align-items:center;min-height:76px;padding:18px 24px;display:flex}.wordmark{width:126px;height:auto;display:block}.edition,.eyebrow,.section-index,.map-note,.venue-count,.program{color:var(--green);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:700}.hero{min-height:470px;padding:76px 24px 64px;position:relative;overflow:hidden}.hero:after{content:"";border:1px solid #006b3540;border-radius:50%;width:240px;height:240px;position:absolute;bottom:-68px;right:-68px;box-shadow:0 0 0 28px #006b3506,0 0 0 56px #006b3505}.hero h1{max-width:620px;color:var(--green-dark);letter-spacing:-.07em;margin:20px 0 26px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(48px,14vw,84px);font-weight:500;line-height:.98}.lead{color:#4d5750;max-width:540px;margin:0 0 34px;font-size:15px;line-height:1.95}.primary-action,.directions{background:var(--green);color:#fff;border-radius:2px;justify-content:space-between;align-items:center;gap:32px;min-height:54px;padding:0 22px;font-size:14px;font-weight:700;text-decoration:none;transition:transform .16s,background .16s;display:inline-flex}.primary-action:hover,.directions:hover{background:var(--green-dark);transform:translateY(-1px)}.overview,.venues-section{padding:60px 24px}.overview{background:var(--green-dark);color:#fff}.section-heading{justify-content:space-between;align-items:end;gap:24px;max-width:980px;margin:0 auto 30px;display:flex}.section-heading h2{margin:5px 0 0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(25px,6vw,36px);font-weight:500}.overview .section-index,.overview .map-note{color:#9ed0b4}.illustrated-map{background:#f1eee7;border:1px solid #ffffff52;border-radius:9px;max-width:980px;margin:0 auto;overflow:hidden;box-shadow:0 18px 45px #00190c3d}.illustrated-map svg{width:100%;height:auto;display:block}.map-base{fill:#f2efe8}.city-blocks path{fill:#dedbd5;stroke:#ece9e2;stroke-width:3px}.minor-roads path{fill:none;stroke:#fff;stroke-width:14px}.major-roads path{fill:none;stroke:#fff;stroke-width:29px}.rail-lines path{fill:none;stroke-width:9px;opacity:.9}.asakusa-line{stroke:#d81b62}.shinjuku-line{stroke:#79a824}.road-labels text{fill:#898780;letter-spacing:.08em;font-size:13px;font-weight:700}.station-labels text{fill:#4b4c49;paint-order:stroke;stroke:#f2efe8;stroke-width:5px;stroke-linejoin:round;font-size:16px;font-weight:700}.station-dot{stroke:#fff;stroke-width:3px}.station-dot.asakusa{fill:#d81b62}.station-dot.shinjuku{fill:#79a824}.station-dot.subway{fill:#99968f}.north-arrow text{fill:#343734;font-size:14px;font-weight:800}.north-arrow path{fill:#343734}.venue-markers a{cursor:pointer;text-decoration:none}.marker-line{fill:none;stroke:#4f514d;stroke-width:3px}.marker-dot{stroke:#fff;stroke-width:5px;filter:drop-shadow(0 3px 3px #00000040)}.marker-box{stroke:#fff;stroke-width:3px;filter:drop-shadow(0 4px 5px #0000002e)}.marker-dot.sunrise,.marker-box.sunrise{fill:#a22a67}.marker-dot.green,.marker-box.green{fill:#168d67}.marker-dot.tagen,.marker-box.tagen{fill:#e04b5f}.marker-dot.blooming,.marker-box.blooming{fill:#247fba}.marker-dot.plaza,.marker-box.plaza{fill:#65549b}.venue-markers text{fill:#fff;pointer-events:none;font-size:17px;font-weight:800}.venue-markers a:hover .marker-box,.venue-markers a:focus .marker-box{stroke:#f2c94c;stroke-width:5px}.overview-caption{color:#ffffffb8;max-width:980px;margin:22px auto 0;font-size:12px;line-height:1.8}.venues-section{background:var(--paper)}.venue-list{border-top:1px solid var(--line);max-width:980px;margin:0 auto;display:grid}.venue-card{border-bottom:1px solid var(--line);padding:28px 0 30px;display:block}.program{letter-spacing:.06em;margin:0 0 7px}.venue-card h3{margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:24px;font-weight:600;line-height:1.4}.floor{background:var(--green-pale);color:var(--green-dark);margin:9px 0 0;padding:3px 8px;font-size:12px;font-weight:700;display:inline-block}.address{color:#667068;margin:14px 0 18px;font-size:12px;line-height:1.6}.directions{width:100%;max-width:300px}footer{text-align:center;background:#e3e9e4;padding:56px 24px 48px}footer img{width:124px;height:auto;margin:0 auto 14px}footer p{color:var(--green-dark);margin:5px 0;font-size:13px;font-weight:700}footer .footer-note{color:#69736c;margin-top:18px;font-size:11px;font-weight:400}.hero-actions{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.primary-action{cursor:pointer;border:0}.secondary-action{color:var(--green-dark);text-underline-offset:5px;font-size:13px;font-weight:700}.location-error{color:#8c3b2f;max-width:520px;margin:18px 0 0;font-size:12px;line-height:1.7}.progress-panel{border-top:1px solid var(--line);background:#eef3ef;padding:34px 24px 38px}.progress-copy,.progress-track,.progress-dots,.progress-note{max-width:980px;margin-left:auto;margin-right:auto}.progress-copy{justify-content:space-between;align-items:end;gap:20px;display:flex}.progress-copy .section-index{margin:0 0 7px}.progress-title{color:var(--green-dark);margin:0;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:19px}.progress-title strong{font-size:35px;font-weight:500}.reset-button,.locate-small,.visited-button{color:var(--green-dark);cursor:pointer;text-underline-offset:4px;background:0 0;border:0;font-size:12px;font-weight:700;text-decoration:underline}.progress-track{background:#c8d5cc;border-radius:10px;height:6px;margin-top:20px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--green);height:100%;transition:width .26s;display:block}.progress-dots{grid-template-columns:repeat(5,1fr);gap:8px;margin-top:12px;display:grid}.progress-dots span{background:#c8d5cc;border-radius:4px;height:3px}.progress-dots .is-complete{background:#d9a734}.progress-note{color:#68736b;margin-top:12px;margin-bottom:0;font-size:10px}.location-success{border-left:3px solid var(--green);background:var(--green-pale);color:#4f6255;max-width:980px;margin:-14px auto 28px;padding:12px 14px;font-size:11px;line-height:1.7}.locate-small{flex:none;padding:8px 0}.venue-meta-row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.distance{color:#7a5a13;flex:none;margin:0;font-size:12px;font-weight:800}.card-actions{gap:10px;display:grid}.visited-button{border:1px solid var(--green);border-radius:2px;min-height:44px;padding:0 16px;text-decoration:none}.visited-button[aria-pressed=true]{color:#536158;background:#e1e7e2;border-color:#9aa99f}.venue-card.is-visited h3{color:#77827a}.venue-card.is-visited .program{color:#66756b}@media (width>=760px){.topbar,.hero,.progress-panel,.overview,.venues-section{padding-left:max(48px,50vw - 540px);padding-right:max(48px,50vw - 540px)}.hero{min-height:560px;padding-top:110px}.venue-list{grid-template-columns:1fr 1fr;gap:0 38px}.venue-card:last-child{grid-column:1/-1;max-width:calc(50% - 19px)}}@media (width<=430px){.venue-heading{align-items:center}.venue-heading h2{font-size:24px}.wordmark{width:82px}.hero{min-height:500px}.hero h1{font-size:52px}.primary-action{width:100%}.station-labels text{font-size:18px}.venue-markers text{font-size:19px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.primary-action,.directions,.progress-track span{transition:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
