/*
Theme Name: 心斎橋 鮨 天
Theme URI: https://sushi-ten-osaka.com/
Author: sushi-ten
Description: 心斎橋 鮨 天 公式サイト用テーマ。TOP・当店について・お品書き・店舗アクセス・WEB予約の5ページ構成。Booking Package のカレンダーは reserve ページに設置。
Version: 1.8.1
Text Domain: sushiten
*/

/* ============ 心斎橋 鮨 天 - Shared Styles ============ */
/* Reset */
.st-site *,.st-site *::before,.st-site *::after{box-sizing:border-box;}
.st-site img{display:block;max-width:100%;}
.st-site h1,.st-site h2,.st-site h3,.st-site h4,.st-site p,.st-site ol,.st-site ul,.st-site dl,.st-site dd{margin:0;padding:0;}
.st-site ol,.st-site ul{list-style:none;}
.st-site a{color:inherit;text-decoration:none;}
.st-site button{font-family:inherit;}
.st-site{font-family:'Shippori Mincho B1',serif;color:#211b14;background:#f4efe4;-webkit-font-smoothing:antialiased;}
.st-site ::selection{background:#9c2b25;color:#f4efe4;}

/* Layout page wrapper (used by each page) */
.st-page{overflow-x:hidden;}

/* ============ Header ============ */
.st-header{position:fixed;top:0;left:0;right:0;height:74px;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,48px);background:rgba(244,239,228,.9);backdrop-filter:blur(12px);border-bottom:1px solid rgba(33,27,20,.1);}
.st-header .st-logo{display:flex;align-items:center;gap:12px;cursor:pointer;}
.st-header .st-logo img{width:46px;height:46px;object-fit:contain;}
.st-header .st-logo-en{font-family:'Cormorant Garamond',serif;font-size:11px;letter-spacing:.34em;color:#9c2b25;font-weight:600;}
.st-header .st-logo-jp{font-size:17px;letter-spacing:.28em;font-weight:700;line-height:1.15;}
.st-desk-nav{display:flex;align-items:center;gap:clamp(10px,2vw,30px);}
.st-desk-nav a{font-size:15px;padding:6px 2px;letter-spacing:.14em;color:#6b5f52;border-bottom:2px solid transparent;transition:color .2s,border-color .2s;}
.st-desk-nav a.current{color:#211b14;border-bottom-color:#9c2b25;}
.st-desk-nav a:hover{color:#211b14;}
.st-desk-nav .st-btn-reserve{margin-left:6px;background:#9c2b25;color:#f4efe4;font-size:14px;padding:11px 20px;letter-spacing:.16em;border-radius:2px;border-bottom:none;}
.st-desk-nav .st-btn-reserve:hover{background:#7f221d;color:#f4efe4;}
.st-header-spacer{height:74px;}

/* ============ Floating buttons ============ */
.st-fab{position:fixed;z-index:130;border:none;cursor:pointer;box-shadow:0 8px 24px rgba(33,27,20,.35);}
.st-fab-reserve{top:16px;right:16px;z-index:120;background:#9c2b25;color:#f4efe4;font-size:14px;font-weight:600;padding:12px 20px;letter-spacing:.16em;border-radius:2px;box-shadow:0 6px 20px rgba(33,27,20,.25);display:none;}
.st-fab-top{bottom:22px;width:58px;height:58px;background:#211b14;color:#f4efe4;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.st-fab-top:hover{background:#9c2b25;}
.st-fab-top .st-arrow{display:block;width:14px;height:14px;border-top:2px solid #f4efe4;border-right:2px solid #f4efe4;transform:rotate(-45deg);margin-top:4px;}
.st-fab-top-desk{right:22px;}
.st-fab-top-mob{right:92px;display:none;}
.st-fab-burger{bottom:22px;right:22px;width:58px;height:58px;background:#211b14;color:#f4efe4;border-radius:50%;display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;}
.st-fab-burger .st-bars{display:flex;flex-direction:column;gap:5px;}
.st-fab-burger .st-bars span{display:block;width:22px;height:2px;background:#f4efe4;}
.st-fab-burger .st-close{font-size:24px;line-height:1;color:#f4efe4;display:none;}
.st-fab-burger.open .st-bars{display:none;}
.st-fab-burger.open .st-close{display:block;}

/* Drawer */
.st-drawer-overlay{position:fixed;inset:0;z-index:125;background:rgba(10,7,3,.7);backdrop-filter:blur(4px);display:none;}
.st-drawer{position:fixed;bottom:92px;right:22px;z-index:126;background:#181310;border:1px solid rgba(244,239,228,.12);box-shadow:0 20px 50px rgba(0,0,0,.55);min-width:220px;display:none;flex-direction:column;overflow:hidden;transform-origin:bottom right;}
.st-drawer a{padding:16px 24px;font-size:16px;text-align:right;letter-spacing:.14em;color:#f4efe4;border-bottom:1px solid rgba(244,239,228,.08);}
.st-drawer a:hover{background:rgba(244,239,228,.06);}
.st-drawer a.st-drawer-reserve{background:#9c2b25;}
.st-drawer a.st-drawer-reserve:hover{background:#b8332c;}
.st-drawer.open,.st-drawer-overlay.open{display:flex;}
.st-drawer.open{animation:st-drawerIn .38s cubic-bezier(.2,.9,.3,1) both;}
.st-drawer-overlay.open{display:block;animation:st-overlayIn .35s ease both;}
@keyframes st-drawerIn{from{opacity:0;transform:translateY(8px) scale(.98);}to{opacity:1;transform:translateY(0) scale(1);}}
@keyframes st-overlayIn{from{opacity:0;}to{opacity:1;}}

/* Responsive: mobile */
@media(max-width:820px){
  .st-desk-nav{display:none;}
  .st-fab-reserve{display:flex;}
  .st-fab-top-desk{display:none;}
  .st-fab-top-mob{display:flex;}
  .st-fab-burger{display:flex;}
  .st-brm{display:inline;}
  .st-hero-grid-v{grid-template-columns:1fr !important;grid-template-rows:1fr 1fr;}
}
.st-brm{display:none;}

/* ============ Buttons / CTAs ============ */
.st-btn{display:inline-block;background:none;border:1px solid #211b14;color:#211b14;font-family:inherit;font-size:14px;cursor:pointer;padding:13px 34px;letter-spacing:.2em;text-decoration:none;transition:all .2s;}
.st-btn:hover{background:#211b14;color:#f4efe4;}
.st-btn-dark{background:#211b14;color:#f4efe4;}
.st-btn-dark:hover{background:#9c2b25;border-color:#9c2b25;}
.st-btn-red{background:#9c2b25;color:#f4efe4;border-color:#9c2b25;}
.st-btn-red:hover{background:#7f221d;border-color:#7f221d;color:#f4efe4;}
.st-btn-outline-light{background:none;border:1px solid rgba(244,239,228,.6);color:#f4efe4;}
.st-btn-outline-light:hover{background:#f4efe4;color:#211b14;}

/* ============ Common section styles ============ */
.st-eyebrow{font-family:'Cormorant Garamond',serif;letter-spacing:.42em;color:#9c2b25;font-size:13px;margin-bottom:16px;text-transform:uppercase;}
.st-eyebrow-light{color:#d8a24a;}

/* ============ Hero (TOP) ============ */
.st-hero{position:relative;height:calc(100vh - 74px);min-height:580px;overflow:hidden;background:#141009;}
.st-hero-grid{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;}
.st-hero-side{position:relative;overflow:hidden;}
.st-hero-side img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.8s ease;}
.st-hero-side img.on{opacity:1;}
.st-hero-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,13,7,.34) 0%,rgba(18,13,7,.30) 45%,rgba(18,13,7,.62) 100%);}
.st-hero-inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#f4efe4;padding:0 20px;}
.st-hero-eyebrow{font-family:'Cormorant Garamond',serif;letter-spacing:.5em;font-size:14px;opacity:.85;margin-bottom:26px;text-transform:uppercase;}
.st-hero h1{font-size:clamp(30px,5.4vw,68px);font-weight:700;line-height:1.4;letter-spacing:.1em;text-shadow:0 2px 30px rgba(0,0,0,.4);}
.st-hero p{margin:32px 0 0;font-size:clamp(14px,1.5vw,18px);letter-spacing:.14em;line-height:2;opacity:.92;}
.st-hero .st-btn{margin-top:46px;background:rgba(244,239,228,.12);color:#f4efe4;border:1px solid rgba(244,239,228,.65);padding:15px 40px;letter-spacing:.24em;backdrop-filter:blur(4px);}
.st-hero .st-btn:hover{background:#9c2b25;border-color:#9c2b25;}

/* ============ Intro ============ */
.st-intro{max-width:900px;margin:0 auto;padding:clamp(72px,11vw,130px) 24px;text-align:center;}
.st-intro-lead{font-size:clamp(19px,2.4vw,27px);line-height:2.1;letter-spacing:.06em;margin:0 0 30px;font-weight:500;}
.st-intro-body{font-size:clamp(14px,1.5vw,16px);line-height:2.4;letter-spacing:.05em;color:#4a4038;}

/* ============ Reasons cards ============ */
.st-reasons{background:#ece3d0;padding:clamp(72px,10vw,120px) 24px;}
.st-reasons-inner{max-width:1180px;margin:0 auto;}
.st-section-head{text-align:center;margin-bottom:60px;}
.st-section-head h2{font-size:clamp(26px,3.4vw,38px);font-weight:700;letter-spacing:.1em;}
.st-cards-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:36px;}
.st-card{background:#f4efe4;}
.st-card-img{aspect-ratio:4/3;overflow:hidden;}
.st-card-img img{width:100%;height:100%;object-fit:cover;}
.st-card-body{padding:34px 30px 40px;}
.st-card-num{font-family:'Cormorant Garamond',serif;font-size:38px;color:#c9bda6;line-height:1;margin-bottom:14px;}
.st-card h3{font-size:21px;margin:0 0 16px;letter-spacing:.08em;}
.st-card p{font-size:14.5px;line-height:2.1;color:#4a4038;}

/* ============ Two-column course excerpt ============ */
.st-two-col{max-width:1180px;margin:0 auto;padding:clamp(72px,10vw,120px) 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(40px,6vw,80px);align-items:center;}
.st-two-col-img{aspect-ratio:5/4;overflow:hidden;}
.st-two-col-img img{width:100%;height:100%;object-fit:cover;}
.st-two-col h2{font-size:clamp(26px,3.2vw,36px);font-weight:700;margin:0 0 34px;letter-spacing:.1em;}
.st-course-row{border-top:1px solid rgba(33,27,20,.16);padding:22px 0;}
.st-course-row.last{border-bottom:1px solid rgba(33,27,20,.16);}
.st-course-row-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px;}
.st-course-row-head span:first-child{font-size:18px;letter-spacing:.1em;}
.st-course-row-head span:last-child{font-family:'Cormorant Garamond',serif;font-size:22px;color:#9c2b25;}
.st-course-row p{font-size:13.5px;line-height:1.9;color:#5a4f42;}
.st-note{font-size:12.5px;color:#7a6f60;margin:20px 0 0;line-height:1.9;}

/* ============ Scenes ============ */
.st-scenes{padding:0 0 clamp(72px,10vw,120px);}
.st-scenes-inner{max-width:1180px;margin:0 auto;padding:0 24px;}
.st-scenes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;}
.st-scene{position:relative;aspect-ratio:3/4;overflow:hidden;}
.st-scene img{width:100%;height:100%;object-fit:cover;}
.st-scene-veil{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(18,13,7,.78));}
.st-scene-body{position:absolute;left:26px;bottom:26px;color:#f4efe4;}
.st-scene-body h3{margin:0 0 8px;font-size:20px;letter-spacing:.1em;}
.st-scene-body p{font-size:13px;line-height:1.8;opacity:.9;}

/* ============ Info summary (TOP) ============ */
.st-info-summary{position:relative;overflow:hidden;background:#141009;}
.st-info-summary > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.42;}
.st-info-summary-inner{position:relative;max-width:760px;margin:0 auto;padding:clamp(72px,10vw,110px) 24px;text-align:center;color:#f4efe4;}
.st-info-summary-inner h2{font-size:clamp(24px,3vw,32px);font-weight:700;margin:0 0 30px;letter-spacing:.1em;}
.st-info-summary-inner p{font-size:15px;line-height:2.2;letter-spacing:.08em;}

/* ============ ABOUT hero ============ */
.st-page-hero{position:relative;height:52vh;min-height:380px;overflow:hidden;background:#141009;}
.st-page-hero > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.6;}
.st-page-hero-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,13,7,.4),rgba(18,13,7,.6));}
.st-page-hero-inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#f4efe4;padding:0 20px;}
.st-page-hero-inner .st-eyebrow{color:#f4efe4;opacity:.85;letter-spacing:.46em;margin-bottom:20px;}
.st-page-hero-inner h1{font-size:clamp(23px,4vw,46px);font-weight:700;margin:0 0 24px;letter-spacing:.1em;}
.st-page-hero-inner p{max-width:640px;font-size:clamp(14px,1.5vw,16px);line-height:2.1;opacity:.92;letter-spacing:.06em;}

/* ABOUT sub-sections */
.st-two-col-alt{max-width:1180px;margin:0 auto;padding:clamp(72px,10vw,120px) 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(40px,6vw,80px);align-items:center;}
.st-two-col-alt h2{font-size:clamp(24px,3vw,34px);font-weight:700;margin:0 0 30px;letter-spacing:.1em;}
.st-two-col-alt p{font-size:15px;line-height:2.3;color:#3f362c;}
.st-two-col-alt p + p{margin-top:22px;}
.st-imgs-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.st-imgs-2 > div{aspect-ratio:3/4;overflow:hidden;}
.st-imgs-2 > div img{width:100%;height:100%;object-fit:cover;}
.st-imgs-2 > div:nth-child(2){margin-top:36px;}

.st-path{background:#ece3d0;padding:clamp(72px,10vw,120px) 24px;}
.st-path-inner{max-width:665px;margin:0 auto;}
.st-path .st-section-head{margin-bottom:56px;}
.st-path .st-section-head h2{font-size:clamp(24px,3.2vw,36px);}
.st-path-row{display:grid;grid-template-columns:70px 1fr;gap:24px;padding:26px 0;border-top:1px solid rgba(33,27,20,.16);}
.st-path-row.last{border-bottom:1px solid rgba(33,27,20,.16);}
.st-path-row .st-path-label{font-family:'Cormorant Garamond',serif;font-size:18px;color:#9c2b25;letter-spacing:.05em;}
.st-path-row p{font-size:15px;line-height:2.2;color:#3f362c;}

.st-commit{background:#211b14;color:#f4efe4;padding:clamp(72px,10vw,120px) 24px;}
.st-commit-inner{max-width:1180px;margin:0 auto;}
.st-commit .st-section-head{margin-bottom:64px;}
.st-commit .st-section-head h2{font-size:clamp(26px,3.4vw,38px);letter-spacing:.12em;}
.st-commit-list{display:flex;flex-direction:column;gap:clamp(50px,7vw,90px);}
.st-commit-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(30px,5vw,64px);align-items:center;}
.st-commit-row .st-commit-img{aspect-ratio:4/3;overflow:hidden;}
.st-commit-row .st-commit-img img{width:100%;height:100%;object-fit:cover;}
.st-commit-row.reverse .st-commit-img{order:2;}
.st-commit-row.reverse .st-commit-body{order:1;}
.st-commit-body h3{font-size:23px;margin:0 0 20px;letter-spacing:.1em;color:#d8a24a;}
.st-commit-body p{font-size:14.5px;line-height:2.2;color:#d8cdba;}

/* ============ Menu page ============ */
.st-menu-head{max-width:1180px;margin:0 auto;padding:clamp(56px,7vw,90px) 24px 0;text-align:center;}
.st-menu-head h1{font-size:clamp(30px,4vw,48px);font-weight:700;margin:0 0 20px;letter-spacing:.12em;}
.st-menu-head p{font-size:14.5px;line-height:2.1;color:#4a4038;max-width:640px;margin:0 auto;}
.st-menu-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:34px;}
.st-menu-tabs a{border:1px solid #211b14;color:#211b14;font-size:13px;padding:11px 26px;letter-spacing:.2em;}
.st-menu-tabs a:hover{background:#211b14;color:#f4efe4;}

.st-menu-block{max-width:1180px;margin:0 auto;padding:clamp(48px,6vw,80px) 24px;scroll-margin-top:90px;}
.st-menu-block h2{font-size:26px;font-weight:700;letter-spacing:.14em;margin:0 0 8px;}
.st-menu-underline{width:44px;height:2px;background:#9c2b25;margin-bottom:40px;}
.st-menu-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;}
.st-menu-card{background:#ece3d0;padding:40px 36px;}
.st-menu-card.dark{background:#211b14;color:#f4efe4;}
.st-menu-card-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:24px;}
.st-menu-card-head h3{font-size:20px;margin:0;letter-spacing:.1em;}
.st-menu-card-price{font-family:'Cormorant Garamond',serif;font-size:26px;color:#9c2b25;}
.st-menu-card.dark .st-menu-card-price{color:#d8a24a;}
.st-menu-callout{font-size:13px;line-height:1.9;color:#7f4a1e;background:rgba(156,43,37,.08);border-left:2px solid #9c2b25;padding:10px 14px 10px 22px !important;margin:0 0 22px !important;}
.st-reserve-tabs{display:flex;gap:0;margin-bottom:24px;border-bottom:1px solid rgba(33,27,20,.14);}
.st-restab{flex:1;background:none;border:none;border-bottom:2px solid transparent;font-family:inherit;font-size:15px;letter-spacing:.1em;cursor:pointer;padding:14px 8px;color:#8a7d6c;}
.st-restab.is-active{color:#9c2b25;border-bottom-color:#9c2b25;}
.st-cal-frame{display:block;width:100%;min-height:620px;border:0;background:#f4efe4;}
.st-menu-card.dark .st-menu-callout{color:#e6d3a8;background:rgba(216,162,74,.1);border-left-color:#d8a24a;}
.st-menu-list{font-size:14.5px;line-height:1;color:#3f362c;}
.st-menu-card.dark .st-menu-list{color:#d8cdba;}
.st-menu-list li{padding:11px 0;border-bottom:1px dashed rgba(33,27,20,.2);}
.st-menu-card.dark .st-menu-list li{border-bottom-color:rgba(244,239,228,.2);}
.st-menu-list li:last-child{border-bottom:none;}
.st-menu-body{font-size:14.5px;line-height:2.2;color:#d8cdba;}

.st-menu-drink{background:#ece3d0;padding:clamp(56px,7vw,90px) 24px;scroll-margin-top:90px;}
.st-menu-drink-inner{max-width:1080px;margin:0 auto;}
.st-menu-drink .st-menu-head{text-align:center;margin-bottom:52px;padding:0;}
.st-menu-drink .st-menu-head h2{font-size:26px;font-weight:700;letter-spacing:.14em;margin:0 0 8px;}
.st-menu-drink-underline{width:44px;height:2px;background:#9c2b25;margin:0 auto 22px;}
.st-menu-drink-lead{font-size:14.5px;line-height:2.1;color:#4a4038;max-width:600px;margin:0 auto;}
.st-drink-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:36px;}
.st-drink-cat h3{font-size:18px;letter-spacing:.14em;margin:0 0 6px;color:#9c2b25;}
.st-drink-underline{width:32px;height:1px;background:#9c2b25;margin-bottom:22px;}
.st-drink-sub{font-size:12px;color:#7a6f60;margin:0 0 14px;line-height:1.7;}
.st-drink-list{font-size:14px;line-height:1.6;}
.st-drink-row{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px dashed rgba(33,27,20,.2);}
.st-drink-row:last-child{border-bottom:none;}
.st-drink-row dt{margin:0;}
.st-drink-row dd{margin:0;white-space:nowrap;font-family:'Cormorant Garamond',serif;color:#4a4038;text-align:right;}

/* ============ Info page ============ */
.st-info-inner{max-width:1180px;margin:0 auto;padding:clamp(48px,6vw,80px) 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(36px,5vw,64px);align-items:start;}
.st-info-photo{aspect-ratio:4/3;overflow:hidden;margin-bottom:34px;}
.st-info-photo img{width:100%;height:100%;object-fit:cover;}
.st-info-dl{margin:0;font-size:15px;}
.st-info-dl > div{display:grid;grid-template-columns:110px 1fr;padding:16px 0;border-top:1px solid rgba(33,27,20,.16);}
.st-info-dl > div:last-child{border-bottom:1px solid rgba(33,27,20,.16);}
.st-info-dl dt{color:#9c2b25;letter-spacing:.1em;}
.st-info-dl dd{margin:0;line-height:1.8;}
.st-info-map{aspect-ratio:1/1;overflow:hidden;border:1px solid rgba(33,27,20,.16);}
.st-info-map iframe{width:100%;height:100%;border:0;}
.st-info-access{margin-top:30px;padding:30px 32px;background:#ece3d0;}
.st-info-access h3{font-size:18px;margin:0 0 16px;letter-spacing:.1em;}
.st-info-access p{font-size:14.5px;line-height:2.1;color:#3f362c;}

/* ============ Reserve page ============ */
.st-reserve-hero{position:relative;overflow:hidden;background:#141009;}
.st-reserve-hero > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.4;}
.st-reserve-hero-inner{position:relative;max-width:760px;margin:0 auto;padding:clamp(64px,9vw,110px) 24px;text-align:center;color:#f4efe4;}
.st-reserve-hero-inner h1{font-size:clamp(25px,4vw,46px);font-weight:700;margin:0 0 22px;letter-spacing:.1em;}
.st-reserve-hero-inner p{font-size:15px;line-height:2.1;opacity:.92;letter-spacing:.06em;}
.st-reserve-body{max-width:1080px;margin:0 auto;padding:clamp(56px,7vw,96px) 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(36px,5vw,64px);align-items:start;}
.st-reserve-cal h2{font-size:22px;margin:0;letter-spacing:.1em;}
.st-reserve-cal-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:22px;}
.st-reserve-cal-head span{font-family:'Cormorant Garamond',serif;font-size:20px;color:#9c2b25;letter-spacing:.05em;}
.st-reserve-cal-lead{font-size:13px;line-height:1.9;color:#5a4f42;margin:0 0 20px;}
.st-reserve-panel{background:#211b14;color:#f4efe4;padding:clamp(36px,5vw,52px) clamp(30px,4vw,44px);}
.st-reserve-panel img{width:60px;height:60px;object-fit:contain;margin-bottom:22px;}
.st-reserve-panel h2{font-size:22px;margin:0 0 12px;letter-spacing:.1em;}
.st-reserve-panel > p{font-size:13.5px;line-height:2;color:#c9bda6;margin:0 0 30px;}
.st-reserve-tel{display:flex;align-items:center;justify-content:space-between;gap:12px;background:none;border:1px solid rgba(244,239,228,.5);color:#f4efe4;padding:17px 22px;letter-spacing:.1em;font-size:15px;}
.st-reserve-tel:hover{background:rgba(244,239,228,.1);}
.st-reserve-tel span:last-child{font-family:'Cormorant Garamond',serif;color:#d8a24a;}
.st-reserve-hours{margin-top:34px;padding-top:26px;border-top:1px solid rgba(244,239,228,.18);font-size:13px;line-height:2.1;color:#c9bda6;}

/* ============ CTA band (common on non-reserve pages) ============ */
.st-cta-band{background:#9c2b25;color:#f4efe4;padding:clamp(56px,7vw,84px) 24px;text-align:center;}
.st-cta-band h2{font-size:clamp(22px,2.8vw,32px);font-weight:700;margin:0 0 14px;letter-spacing:.1em;}
.st-cta-band p{font-size:14px;letter-spacing:.1em;opacity:.9;margin:0 0 32px;}
.st-cta-band a.tel{color:#f4efe4;text-decoration:underline;text-underline-offset:3px;}
.st-cta-band .st-btn{background:#f4efe4;color:#9c2b25;border-color:#f4efe4;padding:16px 46px;letter-spacing:.2em;font-size:15px;font-weight:600;}
.st-cta-band .st-btn:hover{background:#211b14;color:#f4efe4;border-color:#211b14;}

/* ============ Footer ============ */
.st-footer{background:#181310;color:#c9bda6;padding:clamp(52px,6vw,72px) 24px 40px;}
.st-footer-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:40px;align-items:start;}
.st-footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px;}
.st-footer-brand img{width:90px;height:90px;object-fit:contain;}
.st-footer-brand .en{font-family:'Cormorant Garamond',serif;font-size:11px;letter-spacing:.3em;color:#8a7d6c;}
.st-footer-brand .jp{font-size:18px;letter-spacing:.24em;color:#f4efe4;}
.st-footer p{font-size:13px;line-height:2;}
.st-footer-title{color:#8a7d6c;letter-spacing:.2em;margin-bottom:14px;font-size:11px;}
.st-footer-info{font-size:13.5px;line-height:2.1;}
.st-footer-menu{display:flex;flex-direction:column;gap:14px;align-items:flex-start;font-size:14px;}
.st-footer-menu a{color:#c9bda6;letter-spacing:.1em;}
.st-footer-menu a:hover{color:#f4efe4;}
.st-copyright{max-width:1180px;margin:44px auto 0;padding-top:24px;border-top:1px solid rgba(244,239,228,.12);font-family:'Cormorant Garamond',serif;font-size:12px;letter-spacing:.2em;color:#6f6455;text-align:center;}
