@charset "UTF-8";
/* 炭黒の外枠と、明るいメニュー面。色は見出しと予約導線に限定。 */
:root{--ink:#292723;--muted:#625e55;--cream:#f5f1e8;--paper:#faf7f0;--gold:#c3a66a;--line:#d8d0c1}
body{background:#f5f1e8;color:#292723}
.site-header{background:#191816;color:#faf7f0;border-bottom:1px solid #756440}
.brand-mark{color:#c3a66a}.brand small{color:#e0d4b9}
.site-header .languages a[aria-current]{border-color:#c3a66a}
.desktop-nav a:hover{color:#e0d4b9}
.hero{background:#191816;color:#faf7f0;border-bottom:4px solid #c3a66a}
.hero-shade{background:linear-gradient(90deg,rgba(25,24,22,.86),rgba(25,24,22,.18) 80%),linear-gradient(0deg,rgba(25,24,22,.5),transparent 65%)}
.hero .eyebrow{color:#e0d4b9}.season-pill{border-color:#c3a66a;color:#faf7f0}
.button,.button-light{background:#c3a66a;border-color:#c3a66a;color:#191816;font-weight:700}
.button:hover,.button-light:hover{background:#d3bb87;border-color:#d3bb87;color:#191816}
.service-strip{border-bottom:1px solid #d8d0c1}
.service-day{background:#243b5a;color:#faf7f0}
.service-end{background:#a34449;color:#faf7f0}
.choice{background:#faf7f0;color:#292723;border:1px solid #d8d0c1;padding:0 36px 32px;overflow:hidden}
.choice>.eyebrow{display:block;background:#243b5a;color:#faf7f0;margin:0 -36px;padding:16px 36px 6px;opacity:1}
.choice>.service-title{background:#243b5a;color:#faf7f0;margin:0 -36px;padding:0 36px 20px}
.choice-end>.eyebrow,.choice-end>.service-title{background:#a34449}
.choice .service-type{margin-top:25px}
.choice .service-note{border-top-color:#d8d0c1;color:#49443d}
.choice-cafe .cafe-copy b{color:#292723}
.choice .arrow{border-color:#a58a55;color:#292723}
.experience{background:#f5f1e8}
.feature-list span{color:#766039}
.weekday{background:#eeebe2}
.service-banner{border-left:6px solid #c3a66a}
.service-banner.service-day{background:#243b5a;color:#faf7f0}
.service-banner.service-end{background:#a34449;color:#faf7f0;border-left-color:#c3a66a}
.service-alert{background:#faf7f0;color:#49443d;border-left-color:#a58a55}
.buffet-top{background:#faf7f0;border:1px solid #d8d0c1}
.kids{background:#faf7f0;border:1px solid #d8d0c1}
.weekend{background:#f5f1e8}
.signature{background:#e9e1d3;border-top:3px solid #c3a66a}
.signature-price p{border-bottom-color:#cfc3af}
.drinks{border-color:#d8d0c1}
.steps article{border-top-color:#a58a55}.steps article>span{color:#766039}
.calendar-controls button{background:#faf7f0;color:#292723;border-color:#c8bda9}
.calendar-month table{background:#faf7f0}
.day-weekday{background:#243b5a;color:#faf7f0}
.day-weekend{background:#a34449;color:#faf7f0}
.day-closed{background:#e5e1d9;color:#56514a}
.day-out{background:#f1ede5;color:#686156}
.legend-day:before{background:#243b5a}.legend-end:before{background:#a34449}.legend-closed:before{background:#b5aea2}
.access{background:#eae5da}
.access-detail{border-top-color:#c8bda9}
.booking{background:#191816;color:#faf7f0;border-top:4px solid #c3a66a}
.booking .eyebrow{color:#e0d4b9}.booking .fine{color:#d8d0c1}
footer{background:#191816;color:#faf7f0;border-top:1px solid #49443d}
footer .languages a[aria-current]{border-color:#c3a66a}
.mobile-bar{background:#faf7f0}
.mobile-bar .service-day{background:#243b5a;color:#faf7f0}
.mobile-bar .service-end{background:#a34449;color:#faf7f0}
.mobile-bar .mobile-book{background:#c3a66a;color:#191816;border-color:#c3a66a;font-weight:700}
:focus-visible{outline-color:#377ba1}
@media(max-width:900px){.choice{padding:0 25px 25px}.choice>.eyebrow{margin:0 -25px;padding:15px 25px 6px}.choice>.service-title{margin:0 -25px;padding:0 25px 18px}}
@media(max-width:640px){.choice{padding:0 25px 25px}.choice .service-type{margin-top:22px}.hero-shade{background:linear-gradient(90deg,rgba(25,24,22,.85),rgba(25,24,22,.3)),linear-gradient(0deg,rgba(25,24,22,.45),transparent)}}
/* 料金・日付・電話番号：数字を読み取りやすいサンセリフ体で統一。 */
.choice-bottom strong,.tariff strong,.signature-price strong,.portion b,.price,
.time-badge,.calendar-month time,.phone,.hero-season,.feature-list span,
.steps article>span,.calendar-controls [data-calendar-label]{
 font-family:Arial,"Helvetica Neue","Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;
 font-variant-numeric:lining-nums tabular-nums;
 font-style:normal;
 letter-spacing:.015em;
}
.choice-bottom strong,.tariff strong,.signature-price strong,.portion b,.price{font-weight:700;line-height:1.35}
.calendar-month time,.time-badge,.phone,.hero-season{font-weight:600}
.phone{letter-spacing:.035em;line-height:1.5}
/* 土日祝の料理価格は控えめなサイズに統一。 */
#weekend .price,#weekend .portion b{font-size:20px}
#weekend .signature-price strong{font-size:24px}
@media(max-width:640px){
 #weekend .price,#weekend .portion b{font-size:18px}
 #weekend .signature-price strong{font-size:22px}
}
@media print{.site-header,.booking,footer{background:white;color:#292723}.button{background:white;color:#292723;border-color:#292723}}
