/* SEEN shared chrome: identical header, drawer and footer on every page. */
:root{--paper:#FBFBFA;--ink:#14181A;--mist:#8A9296;--deep:#1B3B47;--tide:#E4E7E5;--pad:clamp(20px,5vw,80px);--display:'Forum',serif;--mincho:'Zen Old Mincho',serif;--body:'Zen Kaku Gothic New',system-ui,sans-serif}.screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen-reader-text:focus{width:auto;height:auto;margin:0;padding:10px;clip:auto;z-index:10000;background:#fff}.hd{position:fixed;inset:0 0 auto 0;z-index:120;display:flex;align-items:center;justify-content:space-between;padding:22px var(--pad);transition:background .5s ease,color .5s ease,padding .5s ease;color:#fff}.hd.solid{background:rgba(251,251,250,.94);backdrop-filter:blur(12px);color:var(--ink);padding-block:16px;border-bottom:1px solid var(--tide)}body.menu-open .hd{color:var(--ink)}.hd .mark{display:block;line-height:0}.hd .mark-svg{width:clamp(112px,10.5vw,150px);height:auto;display:block}.hd-r{display:flex;align-items:center;gap:clamp(14px,2vw,24px)}.btn-res{border:1px solid currentColor;border-radius:999px;padding:9px 24px;font-size:12px;letter-spacing:.14em;transition:background .35s,color .35s,border-color .35s}.hd.solid .btn-res,body.menu-open .hd .btn-res{background:var(--deep);border-color:var(--deep);color:#fff}.hd.solid .btn-res:hover{background:var(--ink);border-color:var(--ink)}.hd:not(.solid) .btn-res{background:rgba(27,59,71,.9);border-color:transparent}.burger{position:relative;width:34px;height:22px;background:none;border:0;cursor:pointer;display:flex;flex-direction:column;justify-content:center;gap:7px;padding:0;color:inherit}.burger span{display:block;height:1px;width:100%;background:currentColor;transition:transform .4s cubic-bezier(.3,.8,.3,1),opacity .3s}.burger span:last-child{width:64%;margin-left:auto;transition:transform .4s cubic-bezier(.3,.8,.3,1),width .4s,margin .4s}.burger:hover span:last-child{width:100%}body.menu-open .burger span:first-child{transform:translateY(4px) rotate(15deg)}body.menu-open .burger span:last-child{width:100%;transform:translateY(-4px) rotate(-15deg)}.drawer{position:fixed;inset:0;z-index:95;background:var(--paper);opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s;overflow-y:auto}.drawer-in{min-height:100svh;display:grid;grid-template-columns:1.4fr .9fr;gap:clamp(30px,6vw,90px);align-items:center;padding:clamp(110px,16vh,150px) var(--pad) clamp(50px,8vh,90px)}body.menu-open .drawer{opacity:1;visibility:visible}body.menu-open{overflow:hidden}.drawer-nav{display:flex;flex-direction:column}.drawer-nav a{position:relative;padding:clamp(13px,1.7vh,20px) 0;border-bottom:1px solid var(--tide);font-family:var(--mincho);font-size:clamp(17px,2.3vw,26px);letter-spacing:.16em;opacity:0;transform:translateY(14px);transition:color .3s,padding-left .4s cubic-bezier(.3,.8,.3,1)}.drawer-nav a i{display:block;font-family:var(--display);font-style:normal;font-size:10.5px;letter-spacing:.3em;color:var(--mist);margin-bottom:5px}.drawer-nav a:hover{padding-left:14px;color:var(--deep)}body.menu-open .drawer-nav a{animation:seenDrawerIn .7s cubic-bezier(.2,.7,.3,1) forwards}body.menu-open .drawer-nav a:nth-child(1){animation-delay:.10s}body.menu-open .drawer-nav a:nth-child(2){animation-delay:.16s}body.menu-open .drawer-nav a:nth-child(3){animation-delay:.22s}body.menu-open .drawer-nav a:nth-child(4){animation-delay:.28s}body.menu-open .drawer-nav a:nth-child(5){animation-delay:.34s}body.menu-open .drawer-nav a:nth-child(6){animation-delay:.40s}body.menu-open .drawer-nav a:nth-child(7){animation-delay:.46s}@keyframes seenDrawerIn{to{opacity:1;transform:none}}.drawer-side{opacity:0;transition:opacity .6s ease .45s}body.menu-open .drawer-side{opacity:1}.drawer-cta{display:block;text-align:center;background:var(--deep);color:#fff;padding:17px 20px;font-size:13px;letter-spacing:.16em;transition:background .35s}.drawer-cta:hover{background:var(--ink)}.drawer-side ul{list-style:none;margin-top:30px;font-size:12.5px;line-height:2.5;letter-spacing:.08em}.drawer-side ul a{color:#3C4447}.drawer-side ul a:hover{color:var(--deep)}.drawer-addr{margin-top:30px;padding-top:22px;border-top:1px solid var(--tide);font-size:11.5px;line-height:2;color:var(--mist);letter-spacing:.05em}.ft{background:var(--ink);color:#fff;padding:clamp(60px,8vw,100px) 0 40px}.ft-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;padding-bottom:50px;border-bottom:1px solid rgba(255,255,255,.14)}.ft .mark{display:block;line-height:0}.ft .mark-svg{width:180px;height:auto;display:block}.ft .addr{margin-top:24px;font-size:12.5px;line-height:2.1;color:rgba(255,255,255,.6);letter-spacing:.05em}.ft h5{font-size:10px;letter-spacing:.28em;color:rgba(255,255,255,.42);margin-bottom:20px}.ft ul{list-style:none;font-size:13px;line-height:2.4;letter-spacing:.08em}.ft ul a{color:rgba(255,255,255,.82)}.ft ul a:hover{color:#fff}.ft-btm{padding-top:28px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:11px;letter-spacing:.1em;color:rgba(255,255,255,.42)}.seen-inner #main{padding-top:82px}@media(max-width:820px){.drawer-in{grid-template-columns:1fr;align-items:start;gap:36px}.ft-top{grid-template-columns:1fr}}@media(max-width:700px){.hd{padding-top:max(22px,env(safe-area-inset-top));padding-right:max(var(--pad),env(safe-area-inset-right));padding-left:max(var(--pad),env(safe-area-inset-left))}.hd.solid{padding-top:max(16px,env(safe-area-inset-top))}.btn-res{min-height:38px;display:inline-flex;align-items:center}.burger{min-width:40px;min-height:40px;align-items:flex-end}.seen-inner #main{padding-top:68px}}@media(prefers-reduced-motion:reduce){.drawer,.hd,.burger span{transition:none!important}.drawer-nav a{animation:none!important;opacity:1;transform:none}}


/* ─── v1.6.0: compact right-side navigation drawer ─── */
.btn-res{display:inline-flex;align-items:center;gap:9px;border:0;border-radius:999px;padding:11px 19px 11px 22px;background:#fff!important;color:#102C36!important;font-size:12.5px;font-weight:500;letter-spacing:.16em;box-shadow:0 5px 18px rgba(0,0,0,.20);transition:transform .28s ease,background .28s ease,color .28s ease,box-shadow .28s ease}
.btn-res svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.3}.btn-res:hover{transform:translateY(-1px);background:#EAF1F2!important;box-shadow:0 8px 22px rgba(0,0,0,.27)}
.hd.solid .btn-res,body.menu-open .hd .btn-res{background:var(--deep)!important;color:#fff!important;box-shadow:none}
.drawer{display:flex;justify-content:flex-end;background:rgba(7,15,18,.36);backdrop-filter:blur(2px);transition:opacity .38s ease,visibility .38s;overflow:hidden}
.drawer-backdrop{position:absolute;inset:0}
.drawer-in{position:relative;width:min(29.375vw,376px);min-width:340px;min-height:100svh;display:flex;flex-direction:column;gap:0;padding:clamp(108px,13vh,145px) clamp(30px,3vw,48px) 36px;background:var(--paper);box-shadow:-18px 0 45px rgba(0,0,0,.14);transform:translateX(100%);transition:transform .55s cubic-bezier(.22,.72,.2,1)}
body.menu-open .drawer-in{transform:none}
.drawer-nav{display:block}.drawer-nav>a,.drawer-rooms>a{display:flex;align-items:baseline;justify-content:space-between;gap:16px;position:relative;padding:15px 0;border-bottom:1px solid var(--tide);font-family:var(--display);font-size:clamp(20px,1.8vw,25px);letter-spacing:.06em;line-height:1.2;opacity:0;transform:translateY(12px);transition:color .25s ease,padding-left .32s ease}
.drawer-nav>a i,.drawer-rooms>a i{font-family:var(--display);font-size:inherit;font-style:normal;letter-spacing:.06em;color:inherit;margin:0}.drawer-nav>a span,.drawer-rooms>a span{font-family:var(--body);font-size:10px;font-weight:400;letter-spacing:.14em;color:var(--mist);white-space:nowrap}
.drawer-nav>a:hover,.drawer-rooms>a:hover{padding-left:8px;color:var(--deep)}
.drawer-rooms{opacity:0;transform:translateY(12px)}.drawer-subnav{display:grid;grid-template-columns:1fr 1fr;gap:3px 18px;padding:10px 0 14px;border-bottom:1px solid var(--tide)}.drawer-subnav a{font-family:var(--body);font-size:11px;letter-spacing:.08em;color:#4E5A5E;line-height:1.7}.drawer-subnav a:nth-child(3){grid-column:1/-1}.drawer-subnav a::before{content:'— ';color:var(--mist)}.drawer-subnav a:hover{color:var(--deep)}
body.menu-open .drawer-nav>a,body.menu-open .drawer-rooms{animation:seenDrawerIn .62s cubic-bezier(.2,.7,.3,1) forwards}body.menu-open .drawer-nav>a:nth-child(1){animation-delay:.12s}body.menu-open .drawer-rooms{animation-delay:.18s}body.menu-open .drawer-nav>a:nth-child(3){animation-delay:.24s}body.menu-open .drawer-nav>a:nth-child(4){animation-delay:.30s}body.menu-open .drawer-nav>a:nth-child(5){animation-delay:.36s}body.menu-open .drawer-nav>a:nth-child(6){animation-delay:.42s}body.menu-open .drawer-nav>a:nth-child(7){animation-delay:.48s}
.drawer-lower{margin-top:auto;padding-top:22px;border-top:1px solid var(--tide);opacity:0;transition:opacity .45s ease .46s}body.menu-open .drawer-lower{opacity:1}.drawer-instagram{display:inline-flex;align-items:center;gap:9px;font-family:var(--display);font-size:14px;letter-spacing:.08em;color:var(--deep)}.drawer-instagram svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.35}.drawer-small-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.drawer-small-nav a{display:flex;flex-direction:column;gap:4px;padding-top:10px;border-top:1px solid var(--tide)}.drawer-small-nav i{font-family:var(--display);font-size:15px;font-style:normal;letter-spacing:.06em}.drawer-small-nav span{font-size:10.5px;letter-spacing:.08em;color:var(--mist)}
@media(max-width:700px){.btn-res{padding:10px 13px 10px 15px;font-size:11px;gap:6px}.btn-res svg{width:12px;height:12px}.drawer-in{width:min(86vw,420px);min-width:0;padding:104px 26px 28px}.drawer-nav>a,.drawer-rooms>a{font-size:22px;padding-block:13px}.drawer-subnav{grid-template-columns:1fr;gap:5px}.drawer-subnav a:nth-child(3){grid-column:auto}}
@media(prefers-reduced-motion:reduce){.drawer-in{transition:none}.drawer-nav>a,.drawer-rooms{animation:none!important;opacity:1!important;transform:none!important}}

.drawer-tiktok{margin-left:22px}
/* SP：メニューを全面表示 */
@media(max-width:700px){.drawer-in{width:100%;min-width:0;padding-inline:var(--pad)}.drawer-lower,.drawer-small-nav{width:100%;max-width:none}}
@media(max-width:700px){.drawer-nav,.drawer-in>*{width:100%;max-width:none}}
/* メニュー：二重線の解消（小項目は線なし・最下段の線は下部エリアの線に一本化） */
.drawer-subnav a{border-bottom:0;padding:4px 0}
.drawer-nav>a:last-child{border-bottom:0}

/* 空室ボタン：上部バーが透明のときは半透明（PC・スマホ共通） */
.hd:not(.solid) .btn-res{background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.7)!important;color:#fff!important;box-shadow:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.hd:not(.solid) .btn-res:hover{background:rgba(255,255,255,.26)!important}
body.menu-open .hd .btn-res{background:var(--deep)!important;border-color:var(--deep)!important;color:#fff!important}

/* 下層ページでもフッターの左右余白をトップと揃える */
.ft .wrap{max-width:1240px;margin:0 auto;padding-inline:var(--pad)}
.ft ul{padding:0;margin:0}

/* フッター：炭色＋大きなむらの漆喰 */
.ft{background:radial-gradient(120% 140% at 85% 20%,rgba(255,255,255,.06) 0%,rgba(255,255,255,0) 60%),url(../img/footer-plaster.webp) center/cover no-repeat,#262624;background-blend-mode:normal,overlay,normal}
.ft .addr,.ft-btm{color:rgba(255,255,255,.72)}
.ft h5{color:rgba(255,255,255,.6)}
.ft-top{border-color:rgba(255,255,255,.22)}
/* メニュー：客室の下層リンクをひと回り大きく／タッチ端末で閉じた後もハンバーガーの形を保つ */
.drawer-subnav a{font-size:13px}
@media(max-width:700px){.drawer-subnav{gap:8px;padding:12px 0 16px}}
@media(hover:none){.burger:hover span:last-child{width:64%}}


/* v1.9.3: mobile drawer is one continuously opaque, scrollable panel.
   The outer drawer is a horizontal flexbox. Its default cross-axis stretch was
   fixing .drawer-in at the viewport height, so its Contact / FAQ area could
   overflow onto the backdrop. On phones the panel now sizes to its content,
   retains its own white surface, and the outer drawer scrolls that panel. */
.drawer{overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}
@media(max-width:700px){
  .drawer{align-items:flex-start}
  .drawer-in{align-self:flex-start;flex:0 0 auto;box-sizing:border-box;min-height:100svh;height:auto;padding-bottom:max(28px,calc(env(safe-area-inset-bottom) + 28px))}
}
