/* Shared Fujisaki identity: match the homepage's paper, ink and calligraphy. */
body[data-unified-page]{
 --bg-primary:#fbfbfa;--bg-secondary:#f4f4ef;--bg-tertiary:#fff;--bg-card:#fff;--bg-card-hover:#f3f3ee;--bg-black:#fbfbfa;--bg-main:#fbfbfa;--bg-hover:#f3f3ee;--bg-subtle:#f4f4ef;--bg-dark-gray:#f4f4ef;
 --color-bg-primary:#fbfbfa;--color-bg-secondary:#f4f4ef;--color-bg-card:#fff;--color-text-main:#151515;--color-text-muted:#666;--color-accent:#111;--color-border:#dfdfd7;--color-border-light:#d4d4cc;
 --text-main:#151515;--text-primary:#151515;--text-secondary:#666;--text-sub:#666;--text-white:#151515;--text-gray:#666;--text-dim:#666;--text-muted:#666;
 --accent:#111;--accent-white:#111;--border-color:#dfdfd7;--border-light:#d4d4cc;
 --font-en:'Cinzel',serif;--font-en-serif:'Cinzel',serif;--font-en-sans:'Cinzel',serif;
 --builder-site-bg-opacity:.05!important;--builder-bg:#fbfbfa!important;--builder-text:#151515!important;--builder-accent:#555!important;
 color:#151515!important;background-color:#fbfbfa!important;font-family:'Noto Serif JP','Yu Mincho',serif!important;
}
body[data-unified-page] header{background:rgba(251,251,250,.98)!important;color:#111!important;border-bottom:1px solid #e5e5df!important;box-shadow:none!important;min-height:86px;}
body[data-unified-page] header a{color:#111!important;}
body[data-unified-page] header :is(.header-inner,.header-container){min-height:86px;}
body[data-unified-page] [data-unified-brand]{display:block!important;flex-shrink:0;line-height:1!important;letter-spacing:normal!important;}
body[data-unified-page] [data-unified-brand] a{display:block;}
body[data-unified-page] header .unified-brand-image{display:block;width:180px;height:auto!important;max-width:100%;object-fit:contain;}
body[data-unified-page] header :is(.menu-btn,.menu-toggle,.menu-trigger,.hamburger) span{background:#111!important;}
body[data-unified-page] :is(.nav-mobile,.mobile-nav,.mobile-menu,.nav-overlay){background:#fbfbfa!important;color:#111!important;}
body[data-unified-page] :is(.nav-mobile,.mobile-nav,.mobile-menu,.nav-overlay) a{color:#111!important;font-family:'Cinzel',serif!important;}
body[data-unified-page] :is(header nav,header ul,.nav-mobile,.mobile-nav,.mobile-menu) a{font-size:12px;letter-spacing:.12em;}
body[data-unified-page] header :is(.header-cta,.btn-reserve-header,.btn-reserve-nav,.nav-reserve-btn,.nav-btn,.header-btn){background:#111!important;color:#fff!important;border:1px solid #111!important;}
body[data-unified-page] :is(.page-hero,.page-header,.hero,.sub-hero){background:transparent!important;background-image:none!important;color:#111!important;border-bottom:1px solid #e5e5df;}
body[data-unified-page] :is(.page-hero,.page-header,.hero,.sub-hero)::before,body[data-unified-page] :is(.page-hero,.page-header,.hero,.sub-hero)::after{background:none!important;}
body[data-unified-page] :is(.page-hero,.page-header,.hero,.sub-hero) :is(h1,h2,.hero-title,.page-title,.page-title-en,.page-hero-title){color:#111!important;text-shadow:none!important;font-family:'Cinzel','Noto Serif JP',serif!important;}
body[data-unified-page] :is(.page-hero,.page-header,.hero,.sub-hero) :is(p,.hero-description,.hero-subtitle,.page-title-jp,.page-subtitle,.hero-desc){color:#666!important;}
body[data-unified-page] :is(.hero-divider,.page-hero-line){background:#a04a36!important;}
body[data-unified-page] main :is(.container,.main-wrapper,.main-section,.section){color:#151515;}
body[data-unified-page] :is(.filter-section,.filter-bar,.filter-tags,.filters){background:transparent!important;color:#111!important;}
body[data-unified-page] :is(.filter-btn,.time-filter-btn){background:transparent!important;color:#555!important;border-color:#d5d5cc!important;}
body[data-unified-page] :is(.filter-btn,.time-filter-btn).active{background:#111!important;color:#fff!important;border-color:#111!important;}
body[data-unified-page] select,body[data-unified-page] input,body[data-unified-page] textarea{color:#151515!important;background:#fff!important;border-color:#d7d7cf!important;}
body[data-unified-page] :is(.cms-live-region,.cms-live-empty,.cms-live-heading){color:#151515!important;}
body[data-unified-page] .cms-live-card{background:rgba(255,255,255,.85)!important;border-color:#dfdfd7!important;border-radius:0!important;}
body[data-unified-page] .cms-live-button{background:#111!important;color:#fff!important;border-radius:0!important;}
body[data-unified-page] :is(.btn-primary,.btn-reserve,.reserve-button,.btn-submit,.submit-btn,.btn-web){background:#111!important;color:#fff!important;border:1px solid #111!important;border-radius:0!important;}
body[data-unified-page] :is(.btn-outline,.btn-secondary){color:#111!important;border:1px solid #111!important;background:transparent!important;border-radius:0!important;}
body[data-unified-page] :is(.notice-box,.notes-box,.attention-box,.info-card,.faq-item,.price-card,.system-card,.access-info,.info-table){background:rgba(255,255,255,.85)!important;color:#151515!important;border-color:#dfdfd7!important;}
body[data-unified-page] :is(.notice-box,.notes-box,.attention-box) :is(h2,h3,p,li){color:#151515!important;}
body[data-unified-page] footer{background:#111!important;color:#eee!important;border-top:1px solid #333!important;}
body[data-unified-page] footer :is(a,p,span,div,li,h2,h3){color:#ddd!important;}
body[data-unified-page] footer .unified-brand-image{display:block;width:300px;max-width:80vw;height:auto!important;object-fit:contain;filter:invert(1);margin:0 auto 20px;}
body[data-unified-page] footer [data-unified-brand]{font-size:0!important;}
@media(max-width:1100px){body[data-unified-page] header :is(.desktop-nav,.nav-desktop){gap:14px!important;}body[data-unified-page] header .unified-brand-image{width:160px;}}
@media(max-width:600px){body[data-unified-page] header{min-height:86px;padding-left:16px!important;padding-right:16px!important;}body[data-unified-page] header .unified-brand-image{width:160px;}body[data-unified-page] :is(.nav-mobile,.mobile-nav,.mobile-menu) a{font-size:18px;}body[data-unified-page] :is(.page-hero,.page-header,.hero,.sub-hero) h1{font-size:clamp(28px,8vw,42px)!important;letter-spacing:.1em!important;}}
body[data-unified-page] main :is(div,span,h1,h2,h3,h4,p,li,dt,dd,th,td,strong){color:inherit!important;}
body[data-unified-page] main :is(.cta-section,.reservation-section,.notice-section){background:#f4f4ef!important;color:#151515!important;}
body[data-unified-page] :is(.mobile-nav,.nav-mobile,.mobile-menu,.nav-overlay) :is(.btn-reserve-header,.btn-primary,.btn-reserve,.btn-reserve-nav){background:#111!important;color:#fff!important;}
body[data-unified-page] main :is(.cms-live-button,.btn-primary,.btn-reserve,.reserve-button,.btn-submit,.submit-btn,.btn-web),body[data-unified-page] main :is(.cms-live-button,.btn-primary,.btn-reserve,.reserve-button,.btn-submit,.submit-btn,.btn-web) *{color:#fff!important;}
[data-demo-prices][hidden]{display:none!important;}
body[data-unified-page] .card-btn{background:#111!important;color:#fff!important;border-color:#111!important;}
body[data-unified-page] main .cms-live-price-row :is(span,strong){color:#151515!important;}
/* Persistent brand header and shared hamburger, including desktop widths. */
body > header{position:fixed!important;top:0!important;left:0!important;width:100%!important;z-index:10010!important;background:rgba(251,251,250,.98)!important;min-height:86px!important;box-sizing:border-box;}
body > header :is(.nav-desktop,.desktop-nav,.nav-menu){display:none!important;}
body > header :is(.header-cta,.header-action,.btn-reserve-header,.btn-reserve-nav,.nav-reserve-btn,.nav-btn,.header-btn){display:none!important;}
body > header .site-menu-toggle{display:flex!important;position:absolute!important;right:18px!important;top:50%!important;transform:translateY(-50%)!important;width:44px!important;height:44px!important;min-width:44px;padding:11px!important;gap:6px!important;flex-direction:column!important;justify-content:center!important;align-items:stretch!important;background:#fff!important;border:1px solid #e5e5df!important;cursor:pointer;z-index:10011;}
body > header .site-menu-toggle span{display:block!important;position:static!important;opacity:1!important;transform:none!important;width:100%!important;height:1px!important;flex:0 0 1px;background:#111!important;margin:0!important;}
body > header .site-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)!important;}
body > header .site-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0!important;}
body > header .site-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)!important;}
.site-menu-open{overflow:hidden!important;}
body #site-common-menu{position:fixed;inset:86px 0 0;z-index:10005;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:22px;overflow-y:auto;padding:30px 24px 40px;box-sizing:border-box;background:rgba(251,251,250,.99);color:#111;}
body #site-common-menu[hidden]{display:none!important;}
body #site-common-menu a{display:block;font-family:'Cinzel',serif!important;font-size:19px!important;line-height:1.5;letter-spacing:.12em;color:#111!important;text-decoration:none!important;text-transform:uppercase;}
body :is(.nav-mobile,.mobile-nav,.mobile-menu,.nav-overlay){display:none!important;}
@media(max-height:650px){body #site-common-menu{gap:12px;padding-top:20px;}body #site-common-menu a{font-size:16px!important;}}
