/* 平日と土日祝は、色・大見出し・注文形式の３つで区別します。 */
.choice-cafe{gap:20px;align-items:center}
.choice-cafe .cafe-copy{flex:1;min-width:0}
.choice-cafe .cafe-copy b{display:block;font-size:18px;line-height:1.6}
.choice-cafe .cafe-copy>span{display:block;font-size:15px;line-height:1.9;margin-top:8px}
.choice-cafe .arrow{flex-shrink:0}
.service-day{background:#153b40;color:#fff}
.service-end{background:#e9ddc3;color:#153b40}
.service-strip{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #c4c8bf}
.service-strip a{display:flex;justify-content:center;align-items:center;gap:20px;text-decoration:none;padding:15px 24px;min-height:70px}
.service-strip strong{font-size:24px;line-height:1.4;letter-spacing:.04em}
.service-strip span{font-size:14px;border-left:1px solid currentColor;padding-left:20px;line-height:1.5}
.choice .service-title{font-family:var(--sans);font-size:clamp(28px,3vw,38px);font-weight:800;line-height:1.35}
.choice .service-type{font-size:22px;font-weight:700;line-height:1.5;margin-top:12px}
.choice .service-dates{font-size:12px;margin-top:6px}
.choice .service-note{border-top:1px solid currentColor;padding-top:15px;margin-top:20px;font-size:15px;font-weight:600;line-height:1.9}
.service-banner{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:28px 32px;margin-bottom:18px;border-left:6px solid #d8b57a}
.service-banner.service-end{border-left-color:#153b40}
.service-banner h2{font-family:var(--sans);font-size:clamp(30px,4vw,48px);font-weight:800;letter-spacing:.04em}
.service-banner p{font-size:21px;font-weight:600;margin-top:3px}
.service-banner>span{font-size:15px;max-width:35%}
.service-alert{font-size:14px;font-weight:600;border-left:3px solid #9a7847;padding:10px 16px;margin:20px 0 32px;background:#fffcf5}
.editorial-title{font-family:var(--serif);font-size:clamp(25px,3vw,38px);font-weight:500}
.mobile-bar a small{font-size:9px;line-height:1.4;font-weight:400;margin-top:3px}
@media(max-width:640px){
 .service-strip a{padding:13px 10px;gap:4px;flex-direction:column;align-items:center;text-align:center;min-height:84px}
 .service-strip strong{font-size:20px}
 .service-strip span{font-size:11px;border:0;padding:0}
 .hero{max-height:none;height:auto;min-height:570px}
 .service-banner{padding:23px 20px;align-items:flex-start;flex-direction:column;gap:12px}
 .service-banner h2{font-size:34px}
 .service-banner p{font-size:20px}
 .service-banner>span{max-width:100%;font-size:12px}
 .service-alert{font-size:12px;margin:16px 0 26px}
 .choice .service-title{font-size:32px}
 .choice .service-type{font-size:20px}
 .mobile-bar{grid-template-columns:1fr 1fr 1fr}
 .mobile-bar a{display:flex;flex-direction:column;justify-content:center;min-height:67px;padding:9px 6px;font-size:12px;line-height:1.4}
 html:not([lang="ja"]) .service-strip strong{font-size:17px}
 html:not([lang="ja"]) .mobile-bar a{font-size:13px}
 html:not([lang="ja"]) .mobile-bar a small{font-size:8px}
}
