.rsv-page{min-height:100svh;padding:clamp(56px, 12vw, 96px) clamp(20px, 5vw, 48px) calc(clamp(64px, 14vw, 108px) + env(safe-area-inset-bottom))}.rsv-head{max-width:560px;margin-bottom:clamp(2rem,7vw,3rem);margin-left:auto;margin-right:auto}.rsv-head .sec-ja{font-weight:400}.rsv-lead{letter-spacing:.06em;color:var(--ink-muted);margin:.9rem 0 0;font-size:clamp(.8rem,3.4vw,.86rem);line-height:1.9}.rsv-lunch{font-family:var(--font-mincho);letter-spacing:.04em;color:var(--ink);margin:.6rem 0 0;font-size:clamp(.8rem,3.4vw,.88rem);line-height:1.9}.rsv{max-width:560px;margin:0 auto}.rsv-notice{text-align:center;border-top:1px solid #2b241c29;border-bottom:1px solid #2b241c29;padding:1.4rem 1.2rem;font-size:.92rem;line-height:2}.rsv-notice a,.rsv-sub a{color:var(--shu);text-underline-offset:.2em;text-decoration:underline}.rsv-progress{margin:0 0 clamp(1.6rem,5vw,2.2rem)}.rsv-progress-count{font-family:var(--font-mincho);letter-spacing:.08em;color:var(--ink);align-items:baseline;gap:.35em;margin:0;display:flex}.rsv-progress-now{font-size:clamp(1.3rem,5.4vw,1.5rem)}.rsv-progress-sep,.rsv-progress-total{color:var(--ink-muted);font-size:.86rem}.rsv-progress-label{font-family:var(--font-gothic);letter-spacing:.22em;color:var(--ink-muted);margin:.15rem 0 0;font-size:.7rem}.rsv-progress-line{background:#2b241c29;height:1px;margin-top:.8rem;position:relative}.rsv-progress-line span{background:var(--shu);height:2px;transition:width .3s;position:absolute;top:-.5px;left:0}.rsv-hp{width:1px;height:1px;position:absolute;top:auto;left:-9999px;overflow:hidden}.rsv-error{border-left:2px solid var(--shu);color:var(--ink);background:#a3312b0f;margin:0 0 1.2rem;padding:.9rem 1rem;font-size:.9rem;line-height:1.8}.rsv-panel{padding:0}.rsv-h-wrap{margin:0 0 clamp(1.1rem,4vw,1.5rem)}.rsv-h-en{font-family:var(--font-gothic);letter-spacing:.34em;color:var(--shu);margin:0 0 .4rem;font-size:.62rem;font-weight:600}.rsv-h{font-family:var(--font-mincho);letter-spacing:.14em;margin:0;font-size:clamp(1.18rem,4.8vw,1.36rem);font-weight:400;line-height:1.5}.rsv-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.rsv-grid-num{grid-template-columns:repeat(auto-fill,minmax(84px,1fr))}.rsv-choice{appearance:none;color:var(--ink);min-height:50px;font-family:var(--font-mincho);letter-spacing:.06em;font-variant-numeric:tabular-nums;cursor:pointer;background:#ffffff8c;border:1px solid #2b241c33;border-radius:2px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:.7rem .8rem;font-size:1rem;transition:border-color .16s,background-color .16s;display:flex}.rsv-choice:active{background:#fffc}.rsv-choice[aria-pressed=true]{border-color:var(--shu);color:var(--shu-dark);background:#a3312b0f}.rsv-choice:disabled{cursor:default;color:#2b241c6b;background:#ffffff38;border-style:dashed;border-color:#2b241c1a}.rsv-choice-wide{text-align:left;grid-column:1/-1;align-items:flex-start;padding:.9rem 1rem}.rsv-variant{font-family:var(--font-gothic);letter-spacing:.06em;color:var(--ink-muted);margin-top:.15rem;font-size:.78rem}.rsv-price{font-family:var(--font-gothic);letter-spacing:.04em;color:var(--ink);margin-top:.15rem;font-size:.95rem}.rsv-dishes{font-family:var(--font-gothic);letter-spacing:.02em;color:var(--ink-muted);margin-top:.3rem;font-size:.78rem;line-height:1.7}.rsv-dish{max-width:100%;display:inline-block}.rsv-dish-seg{word-break:keep-all;overflow-wrap:anywhere}.rsv-dish-count{font-family:var(--font-gothic);letter-spacing:.08em;color:var(--ink-muted);margin-top:.3rem;font-size:.72rem}.rsv-price-note{letter-spacing:.06em;color:var(--ink-muted);margin-right:.5em;font-size:.72rem}.rsv-picked-course{font-family:var(--font-gothic);letter-spacing:.06em;color:var(--ink);margin:-.4rem 0 1rem;font-size:.9rem}.rsv-desc{font-family:var(--font-gothic);letter-spacing:.02em;color:var(--ink-muted);font-size:.78rem;line-height:1.6}.rsv-choice:disabled .rsv-desc{color:#2b241c6b}.rsv-field-label{font-family:var(--font-gothic);letter-spacing:.12em;color:var(--ink-muted);margin:1.8rem 0 .5rem;font-size:.78rem;display:block}.rsv-optional{letter-spacing:.04em;margin-left:.2em;font-size:.72rem}.rsv .rsv-email-note{margin-top:.6rem;font-size:.76rem}.rsv-field-error{color:var(--shu-dark);margin:.5rem 0 0;font-size:.8rem}.rsv-sub{letter-spacing:.02em;color:var(--ink-muted);margin:1.1rem 0 0;font-size:.82rem;line-height:1.9}.rsv-cal-nav{justify-content:space-between;align-items:center;gap:8px;margin:0 0 .6rem;display:flex}.rsv-cal-arrow{appearance:none;min-width:44px;min-height:44px;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;font-size:1.3rem;line-height:1}.rsv-cal-arrow:disabled{color:#2b241c38;cursor:default}.rsv-cal-month{font-family:var(--font-mincho);letter-spacing:.1em;font-variant-numeric:tabular-nums;font-size:1.05rem}.rsv-cal-head,.rsv-cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.rsv-cal-head{border-bottom:1px solid #2b241c24;margin:0 0 4px;padding-bottom:5px}.rsv-cal-wd{text-align:center;letter-spacing:.02em;color:var(--ink-muted);font-size:.66rem}.rsv-cal-wd[data-sun=true]{color:var(--shu)}.rsv-cal-wd[data-sat=true]{color:#3b5c86}.rsv-cal-pad{display:block}.rsv-cal-day{appearance:none;min-width:0;min-height:46px;color:var(--ink);font-family:var(--font-mincho);font-variant-numeric:tabular-nums;cursor:pointer;background:#ffffff8c;border:1px solid #2b241c33;border-radius:2px;justify-content:center;align-items:center;padding:0;font-size:.95rem;transition:border-color .16s,background-color .16s;display:flex}.rsv-cal-day:active{background:#fffc}.rsv-cal-day[data-selected=true]{border-color:var(--shu);color:var(--shu-dark);background:#a3312b0f}.rsv-cal-day[data-today=true]{box-shadow:inset 0 -2px 0 0 var(--shu)}.rsv-cal-day:disabled{cursor:default;color:#2b241c57;box-shadow:none;background:#ffffff38;border-style:dashed;border-color:#2b241c1a}.rsv-cal-picked{text-align:center;font-family:var(--font-mincho);letter-spacing:.08em;color:var(--shu-dark);margin:.9rem 0 0;font-size:.95rem}.rsv-input{box-sizing:border-box;width:100%;color:var(--ink);font-size:1rem;font-family:var(--font-gothic);letter-spacing:.02em;background:#ffffff8c;border:1px solid #2b241c3d;border-radius:2px;padding:.95rem 1rem;transition:border-color .16s,background-color .16s}.rsv-input::placeholder{color:#2b241c5c}.rsv-input:focus{border-color:var(--shu);background:#fffc;outline:none}.rsv-nav{justify-content:space-between;align-items:center;gap:12px;margin-top:clamp(1.4rem,5vw,1.8rem);display:flex}.rsv-back{appearance:none;color:var(--ink-muted);font-family:var(--font-gothic);letter-spacing:.06em;cursor:pointer;background:0 0;border:0;margin-top:1.2rem;padding:.6rem 0;font-size:.84rem}.rsv-back:disabled{opacity:.4;cursor:default}.rsv-nav .rsv-back{margin-top:0}.rsv-next{appearance:none;background:var(--shu);color:#fdf8ee;min-height:52px;font-family:var(--font-mincho);letter-spacing:.16em;text-indent:.16em;cursor:pointer;border:0;border-radius:0;padding:.8rem 1.6rem;font-size:1rem;transition:background-color .2s,opacity .2s}.rsv-next:active{background:var(--shu-dark)}.rsv-next:disabled{opacity:.35;cursor:default}.rsv-submit{flex:1;max-width:320px}.rsv-party-more{grid-column:1/-1}.rsv-party-large{flex-direction:column;align-items:center;gap:1rem;margin-top:1.2rem;display:flex}.rsv-party-wheel{width:100%;max-width:200px}.rsv-party-next{width:100%;max-width:320px}.rsv-time-now{text-align:center;font-family:var(--font-mincho);letter-spacing:.08em;color:var(--ink);margin:0 0 .9rem;font-size:1.6rem}.rsv-time-unpicked{color:var(--ink-muted);font-size:.95rem}.rsv-wheels{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:360px;margin:0 auto;display:grid}.rsv .wheel{min-width:0}.rsv .wheel[data-disabled=true]{opacity:.4}.rsv .wheel-label{text-align:center;font-family:var(--font-gothic);letter-spacing:.14em;color:var(--ink-muted);margin:0 0 6px;font-size:.76rem}.rsv .wheel-box{background:#fff;border:1px solid #2b241c3d;border-radius:3px;height:220px;position:relative;overflow:hidden}.rsv .wheel-guide{pointer-events:none;z-index:1;background:#2b241c0a;border-top:1px solid #2b241c47;border-bottom:1px solid #2b241c47;height:44px;position:absolute;top:88px;left:0;right:0}.rsv .wheel-scroll{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scroll-snap-type:y mandatory;scrollbar-width:none;height:220px;padding:88px 0;overflow-y:auto}.rsv .wheel-scroll::-webkit-scrollbar{display:none}.rsv .wheel-scroll:focus-visible{outline:2px solid var(--shu);outline-offset:-2px}.rsv .wheel-item{scroll-snap-align:center;color:#2b241c66;width:100%;min-width:0;height:44px;font-family:var(--font-mincho);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;font-size:1.24rem;line-height:1;display:flex}.rsv .wheel-item[data-selected=true]{color:var(--ink);font-size:1.6rem;font-weight:600}.rsv-summary{border-top:1px solid #2b241c29;grid-template-columns:5.5em minmax(0,1fr);gap:0 1rem;margin:0;padding:0;font-size:.96rem;display:grid}.rsv-summary dt,.rsv-summary dd{border-bottom:1px solid #2b241c1f;padding:.85rem 0}.rsv-summary dt{font-family:var(--font-gothic);letter-spacing:.14em;color:var(--ink-muted);padding-top:1rem;font-size:.72rem}.rsv-summary dd{font-family:var(--font-mincho);letter-spacing:.04em;white-space:pre-line;overflow-wrap:anywhere;margin:0}.rsv-home{text-align:center;letter-spacing:.08em;margin:clamp(1.8rem,6vw,2.4rem) 0 0;font-size:.84rem}.rsv-home a{color:var(--ink);border-bottom:1px solid #2b241c5c;padding-bottom:2px;text-decoration:none}
