:root{--guide-paper:#f6f4ee;--guide-paper-deep:#eeeae0;--guide-ink:#22344a;--guide-deep:#16222f;--guide-red:#b7402e;--guide-muted:#626b72;--guide-gold:#806b3d;--guide-line:#cbd0d3}
*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--guide-paper);color:var(--guide-ink);font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:var(--guide-ink);text-underline-offset:4px}a:hover{color:var(--guide-red)}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--guide-red);outline-offset:3px}[hidden]{display:none!important}p{margin:0;overflow-wrap:anywhere}p+p{margin-top:10px}h1,h2,h3,h4{color:var(--guide-deep);margin:0}button,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}.guide-skip{position:absolute;top:-100px;left:12px;padding:12px;background:#fff;z-index:2}.guide-skip:focus{top:12px}
.guide-header{max-width:1040px;margin:auto;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--guide-line)}.guide-brand{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:21px;font-weight:700;letter-spacing:.18em;text-decoration:none;white-space:nowrap}.guide-brand span{color:var(--guide-red)}.guide-header>a:last-child{font-size:13px}.guide-main{max-width:1040px;margin:auto;padding:48px 24px 64px}.guide-intro{margin-bottom:28px}.guide-eyebrow{color:var(--guide-gold);font-size:13px;letter-spacing:.14em;font-weight:600;margin:0 0 8px}.guide-intro h1{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(30px,5vw,44px);line-height:1.5;margin-bottom:14px}.guide-intro>p:last-child{font-size:16px;color:var(--guide-muted)}.guide-mobile-break{display:none}
.guide-form{padding:26px;background:#fff;border:1px solid var(--guide-line);border-radius:14px}.guide-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px}.guide-field{min-width:0}.guide-field label{display:block;font-weight:700;font-size:14px;margin-bottom:7px}.guide-field select{width:100%;min-width:0;min-height:48px;padding:10px 36px 10px 12px;border:1px solid #8c969d;border-radius:8px;background:#fff;color:var(--guide-ink);font-size:16px}.guide-help{font-size:13px;line-height:1.8;color:var(--guide-muted)}.guide-form>.guide-help{margin-top:18px;max-width:64em}.guide-primary{display:block;width:100%;margin-top:22px;min-height:50px;padding:12px 20px;border:1px solid var(--guide-deep);border-radius:8px;background:var(--guide-deep);color:#fff;font-weight:700;letter-spacing:.08em}.guide-primary:hover,.guide-booking:hover{background:var(--guide-red);border-color:var(--guide-red);color:#fff}.guide-status{font-size:14px;color:var(--guide-muted);min-height:26px;margin:18px 0}
.guide-results{scroll-margin-top:20px;margin-top:34px}.guide-results-heading{margin-bottom:18px}.guide-results-heading h2{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:25px;line-height:1.6;margin-bottom:10px}.guide-results-heading h2:focus{outline:0}.guide-results-heading>p:last-child{font-size:14px}.guide-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.guide-card{min-width:0;padding:20px;border:1px solid var(--guide-line);border-radius:14px;background:#fff;overflow-wrap:anywhere}.guide-card-meta{font-size:12px;color:var(--guide-gold);font-weight:600}.guide-shop-name{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:21px;line-height:1.55;margin:6px 0 16px}.guide-plan{font-size:13px;color:var(--guide-muted)}.guide-price{font-size:18px;font-weight:700;color:var(--guide-deep);line-height:1.6;margin-top:6px}.guide-subtotal{font-size:13px;font-weight:600;margin-top:7px}.guide-fees{margin:12px 0 16px;padding:10px 12px;list-style:none;background:var(--guide-paper);border-radius:7px;font-size:13px;line-height:1.7}.guide-fees li+li{margin-top:4px}.guide-price-block h4,.guide-alternative-price h4{font-size:13px;margin-bottom:5px}.guide-conditions{font-size:14px;line-height:1.8}.guide-card details{font-size:13px;border-top:1px solid var(--guide-line);margin-top:18px}.guide-card summary{min-height:46px;padding:12px 0;cursor:pointer;font-weight:600}.guide-card details>p{margin:4px 0 10px}.guide-card details[open] summary{color:var(--guide-deep)}.guide-alternative-price{padding:13px 0}.guide-alternative-price+.guide-alternative-price{border-top:1px solid var(--guide-line)}.guide-alternative-price .guide-price{font-size:16px}.guide-checked{font-size:12px;color:var(--guide-muted);margin-top:16px}.guide-card-actions{margin-top:18px;display:flex;flex-direction:column;gap:10px}.guide-booking{display:flex;justify-content:center;align-items:center;min-height:48px;border:1px solid var(--guide-deep);border-radius:8px;padding:10px 12px;text-align:center;background:var(--guide-deep);color:#fff;text-decoration:none;font-size:14px;font-weight:600;line-height:1.6}.guide-official{align-self:flex-start;min-height:40px;padding:7px 0;font-size:13px}.guide-booking-note{font-size:13px;line-height:1.8}.guide-link-note{font-size:12px;color:var(--guide-muted);line-height:1.7}.guide-card-actions p{margin-top:0}.guide-more{display:block;margin:26px auto 0;min-height:48px;max-width:100%;padding:10px 24px;border:1px solid var(--guide-ink);border-radius:8px;background:#fff;color:var(--guide-ink)}.guide-more:hover{background:var(--guide-paper-deep)}
.guide-notes{margin-top:34px;padding-top:20px;border-top:1px solid var(--guide-line);font-size:13px;color:var(--guide-muted)}.guide-noscript{margin-top:20px;padding:16px;border:1px solid var(--guide-red)}.guide-footer{max-width:1040px;margin:auto;padding:24px;border-top:1px solid var(--guide-line);display:flex;flex-wrap:wrap;gap:14px 20px;font-size:12px;color:var(--guide-muted)}.guide-footer span{margin-left:auto}
@media(max-width:800px){.guide-cards{grid-template-columns:1fr}.guide-card{padding:22px}.guide-shop-name{font-size:22px}.guide-card-meta{font-size:13px}.guide-price{font-size:20px}.guide-fees{font-size:14px}.guide-checked{font-size:13px}}
@media(max-width:520px){.guide-header{padding:17px 16px;gap:14px}.guide-brand{font-size:19px}.guide-header>a:last-child{font-size:12px;max-width:110px;text-align:right}.guide-main{padding:32px 16px 44px}.guide-form{padding:20px 16px}.guide-form-grid{grid-template-columns:1fr;gap:16px}.guide-intro{margin-bottom:24px}.guide-intro h1{font-size:31px}.guide-mobile-break{display:initial}.guide-card{padding:20px}.guide-results-heading h2{font-size:23px}.guide-footer{padding:22px 16px}.guide-footer span{width:100%;margin-left:0}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.guide-operating{font-size:13px;font-weight:600;padding:9px 12px;background:var(--guide-paper);border-radius:7px}.guide-reference-price{margin-top:16px}.guide-reference-price h4{font-size:13px;margin-bottom:5px}.guide-reference-note{margin-top:14px;font-size:12px;color:var(--guide-muted)}.guide-source{font-size:13px;min-height:40px;padding:7px 0}
.guide-detail{display:flex;justify-content:center;align-items:center;min-height:48px;border:1px solid var(--guide-deep);border-radius:8px;padding:10px 12px;text-align:center;background:var(--guide-deep);color:#fff;text-decoration:none;font-size:14px;font-weight:600;line-height:1.6}.guide-detail:hover{background:var(--guide-red);border-color:var(--guide-red);color:#fff}.guide-reservation{font-size:13px;min-height:40px;padding:7px 0}
.guide-map{display:inline-block;font-size:12px;line-height:1.7;padding:8px 0}
.guide-neighborhood{margin-top:12px;padding-top:12px;border-top:1px solid var(--guide-line)}.guide-neighborhood .guide-help{margin-top:7px;font-size:12px;line-height:1.7}
.guide-reset{display:block;max-width:100%;min-height:44px;margin:10px auto 0;padding:8px 16px;border:1px solid var(--guide-line);border-radius:8px;background:#fff;color:var(--guide-muted);font-size:13px}.guide-reset:hover{background:var(--guide-paper-deep);color:var(--guide-ink)}
.guide-price-kind{display:inline-block;margin:3px 0 6px;padding:2px 8px;border:1px solid var(--guide-line);border-radius:5px;color:var(--guide-gold);font-size:12px;font-weight:700}.guide-price-availability{margin:0 0 8px!important;padding:8px 10px;background:var(--guide-paper);border-left:3px solid var(--guide-gold);font-size:13px;font-weight:600;line-height:1.7}.guide-price-conditions,.guide-price-fees{margin-top:8px;font-size:13px;line-height:1.7}.guide-price-checked{margin-top:8px;font-size:12px;color:var(--guide-muted)}.guide-price-sources{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:3px;font-size:12px;line-height:1.7}.guide-price-sources a{min-height:40px;padding:8px 0}

.guide-result-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:26px}.guide-result-actions .guide-more{margin:0}
@media(max-width:600px){.guide-result-actions .guide-more{width:100%}}
.guide-second-selection{margin-top:20px;padding-top:18px;border-top:1px solid var(--guide-line);font-size:14px}.guide-second-intro{margin-top:10px;font-weight:600}.guide-second-selection .guide-more,.guide-first-select{width:100%;padding:10px 12px;font-size:14px}.guide-second-card{margin-top:16px;padding:14px;background:var(--guide-paper);border-radius:8px}.guide-second-card h4{font-size:17px;margin-bottom:10px}.guide-second-location,.guide-second-hours{font-weight:700}.guide-second-card .guide-price-sources{display:block}.guide-second-card a{display:block}
.guide-second-alert{margin-top:18px;padding:12px;border-left:3px solid var(--guide-red);background:var(--guide-paper);font-size:14px;font-weight:600}.guide-second-alert a{display:block;margin-top:6px;font-size:13px}
.guide-shop-name-with-genre{margin-bottom:4px}.guide-shop-genre{margin:0 0 16px;font-size:13px;line-height:1.7;color:var(--guide-gold);font-weight:600}
.guide-cards>.guide-card:only-child{grid-column:1/-1;width:100%;max-width:680px;justify-self:center}.guide-selected-conditions{font-size:13px;margin-top:10px}.guide-selected-conditions summary{cursor:pointer;padding:7px 0;font-weight:600}.guide-selected-conditions a{display:inline-block;padding:8px 0}
.guide-entry{border:0;padding:0;margin:0 0 12px;min-width:0}.guide-entry legend{font-size:15px;font-weight:700;margin-bottom:10px}.guide-entry-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.guide-entry-options label{display:flex;align-items:center;gap:8px;padding:12px;border:1px solid var(--guide-line);border-radius:8px;cursor:pointer;font-size:14px;font-weight:700}.guide-entry-options label:has(input:checked){border-color:var(--guide-deep);background:var(--guide-paper)}.guide-entry-options input{accent-color:var(--guide-deep);flex-shrink:0;width:18px;height:18px}.guide-entry-options small{display:block;font-size:12px;font-weight:400;color:var(--guide-muted)}#guide-entry-help{margin:0 0 22px}.guide-features{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;font-size:12px}.guide-features a{padding:4px 8px;background:var(--guide-paper);border-radius:5px;text-decoration:none}.guide-selected-second{padding:18px;margin-bottom:20px;border:1px solid var(--guide-gold);border-radius:10px;background:#fff}.guide-selected-second h3{font-size:19px}.guide-selected-second .guide-reset{margin-left:0}.guide-pair-confirmed{margin-top:14px;padding:12px;border-left:3px solid var(--guide-gold);background:var(--guide-paper);font-weight:600;font-size:14px}.guide-reverse-pair{margin-top:18px}.guide-reverse-pair .guide-second-card{margin-top:0}.guide-second-use{font-size:13px;font-weight:600;margin:0 0 12px}.guide-second-price-note{font-size:13px;margin:10px 0;color:var(--guide-muted)}

.guide-venue-selection{margin-top:14px}.guide-nearby-kinds{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.guide-kind-filter{min-height:44px;padding:8px 15px;border:1px solid var(--guide-line);border-radius:8px;background:#fff;color:var(--guide-ink)}.guide-kind-filter[aria-pressed="true"]{background:var(--guide-deep);border-color:var(--guide-deep);color:#fff}.guide-entry-options.guide-menu{margin-bottom:0}.guide-venue-selection .guide-more{margin-top:12px}.guide-venue-selection .guide-pair-confirmed{margin-top:0}input:focus-visible{outline:3px solid var(--guide-red);outline-offset:3px}

.guide-photo-link{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid var(--guide-line);border-radius:8px;text-decoration:none;font-size:14px;font-weight:600}.guide-photo-link:hover{background:var(--guide-paper)}.guide-common-price-note{margin:0 0 18px}.guide-budget-summary{font-size:15px!important}.guide-price-details{margin-top:8px!important}.guide-price-details>summary{font-weight:400!important}#guide-check-dates{margin-top:18px}#guide-check-dates>summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:600}#guide-check-date-list p{margin-top:12px}.guide-second-card>.guide-photo-link{margin-top:12px}
