/* =========================================================
   つきじ治作 — 95th ページ固有スタイル（抽出元: 95th/index.html の <style>）
   body名前空間: page-95th / url(): css/pages/基準 ../../images/
   ========================================================= */
/* ===== Header overrides — same as top index ===== */
.header{padding:0 clamp(24px,8vw,120px);height:110px;}
.header__tools{gap:20px;}
.btn-reserve-v2{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--serif);font-weight:400;font-size:11px;letter-spacing:.22em;color:var(--ink);padding:6px 14px;border:1px solid var(--gold);background:var(--gold);transition:color .4s var(--ease),border-color .4s var(--ease),background .4s var(--ease);white-space:nowrap;text-decoration:none;line-height:1.1;}
.btn-reserve-v2:hover{color:var(--gold);border-color:var(--gold);background:transparent;}
.btn-reserve-v2 .reservation{font-family:var(--en-body);font-size:8px;letter-spacing:.08em;font-style:italic;opacity:.85;line-height:1;}
.header-tel{display:inline-flex;align-items:center;gap:6px;font-family:var(--en-body);font-weight:500;font-size:15px;letter-spacing:.05em;color:var(--mute);white-space:nowrap;text-decoration:none;transition:color .3s;}
.header-tel:hover{color:var(--gold-hi);}
.header-tel svg{flex-shrink:0;}
.header-nav-link{font-family:var(--serif);font-size:13px;letter-spacing:.18em;color:var(--mute);white-space:nowrap;text-decoration:none;transition:color .3s;}
.header-nav-link:hover{color:var(--gold-hi);}
.header-sns{display:inline-flex;align-items:center;gap:10px;}
.header-sns a{display:inline-flex;align-items:center;color:var(--mute);transition:color .3s;}
.header-sns a:hover{color:var(--gold-hi);}
.lang-select-v2{position:relative;}
.lang-select-v2__toggle{display:inline-flex;align-items:center;gap:6px;font-family:var(--serif);font-size:12px;letter-spacing:.15em;color:var(--mute);padding:6px 14px;line-height:1.1;border:1px solid rgba(232,226,212,.4);border-radius:20px;background:none;cursor:pointer;transition:color .3s,border-color .3s;white-space:nowrap;}
.lang-select-v2__toggle:hover{color:var(--gold-hi);border-color:var(--gold-hi);}
.lang-select-v2__toggle svg{flex-shrink:0;}
.lang-select-v2__caret{display:inline-block;width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-1px) rotate(45deg);transition:transform .3s var(--ease);}
.lang-select-v2:hover .lang-select-v2__caret{transform:translateY(0) rotate(225deg);}
.lang-select-v2__menu{position:absolute;top:calc(100% + 6px);right:0;min-width:140px;list-style:none;padding:8px 0;margin:0;background:rgba(14,17,22,.96);backdrop-filter:blur(14px);border:.5px solid rgba(184,147,90,.35);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .3s var(--ease),transform .3s var(--ease),visibility 0s .3s;z-index:10;}
.lang-select-v2:hover .lang-select-v2__menu,.lang-select-v2:focus-within .lang-select-v2__menu{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .3s var(--ease),transform .3s var(--ease),visibility 0s;}
.lang-select-v2__menu a{display:block;padding:8px 18px;font-family:var(--serif);font-size:11px;letter-spacing:.2em;color:var(--mute);transition:color .3s,background .3s;}
.lang-select-v2__menu a:hover{color:var(--gold-hi);background:rgba(184,147,90,.08);}
.lang-en{font-size:12px;}
@media (max-width:1280px){.header-tel{font-size:13px;}.header-nav-link{font-size:11px;}.btn-reserve-v2{font-size:11px;padding:8px 20px;}.header-sns a svg{width:14px;height:14px;}}
@media (max-width:1080px){.header-tel{display:none;}.header-nav-link{display:none;}.header-sns{display:none;}.lang-en{display:none;}.btn-reserve-v2{display:none;}}

/* ============================================================
   95th anniversary page — faithful clone of jisaku.co.jp/95th/
   ============================================================ */
html, body, body.is-day{background:#0a0a0a !important;color:#fff;overflow-x:hidden;}

/* Header: black with .82 opacity */
.header{background:rgba(10,10,10,.82) !important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
.header.is-scrolled{background:rgba(10,10,10,.82) !important;}

/* Footer: black, no top margin */
.footer{background:#0a0a0a !important;margin-top:0 !important;border-top:none !important;}

main.p95{
  color:#fff;
  font-family:"Zen Old Mincho", serif;
  font-weight:400;
  line-height:2;
  background:#0a0a0a;
}
.p95 .ff_eb{font-family:"EB Garamond", serif;font-weight:400;}
.p95 a{color:#fff;}

/* hero (head) */
.p95__hero{position:relative;width:100%;height:auto;}
.p95__hero img{width:100%;height:auto;display:block;}
.p95__hero h1{
  position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);
  text-align:center;font-family:"Zen Old Mincho", serif;
  font-size:clamp(1.75rem, 3vw, 2.75rem);font-weight:400;letter-spacing:.1em;
  color:#fff;margin:0;
}
@media(max-width:640px){
  .p95__hero{height:80vh;overflow:hidden;}
  .p95__hero img{height:100%;object-fit:cover;}
}

/* breadcrumb */
.p95__breadcrumbs{padding:1.25rem 5%;font-size:.875rem;color:#fff;}
.p95__breadcrumbs a{color:#fff;text-decoration:none;}
.p95__breadcrumbs a:hover{text-decoration:underline;}

/* common content wrap */
.p95 .content-wrap{padding:50px 0;width:100%;}
.p95 .content-inner{max-width:1000px;margin:0 auto;padding:0;text-align:left;}
@media(max-width:640px){.p95 .content-wrap{padding:25px 0;}}

/* title wrap */
.p95 .title_wrap{line-height:1;text-align:left;}
.p95 .title_wrap.mb_s{margin-bottom:4rem;}
.p95 .title_wrap h2.main_ttl,
.p95 .title_wrap h1.intro_ttl{font-size:2.25rem;margin:0 0 .5em;font-weight:400;line-height:1.6;}
.p95 .title_wrap .sub_ttl{font-size:1.5rem;letter-spacing:.05em;}

/* intro */
.p95 .intro{text-align:left;}
.p95 .intro h1.intro_ttl{font-size:2.5rem;line-height:1.7;margin-bottom:3rem;text-align:left;}
.p95 .intro .intro_txt{font-size:1.25rem;text-align:left;}
.p95 .intro .intro_txt p{margin:0 0 1.5em;}
@media(max-width:640px){
  .p95 .intro h1.intro_ttl{font-size:1.75rem;}
  .p95 .intro .intro_txt{font-size:1.125rem;text-align:left;}
  .p95 .intro{padding:0 5%;}
}

/* full-width separator image */
.p95__divider{width:100%;display:block;}
.p95__divider img{width:100%;height:auto;display:block;}

/* vrl (centered passage) */
.p95 .vrl{text-align:center;font-size:1.25rem;margin:0 auto;display:block;line-height:2;}
@media(max-width:640px){
  .p95 .vrl{text-align:left;font-size:1.125rem;padding:0 5%;}
}

/* sumiike section */
.p95 .sumiike{width:100%;max-width:1440px;margin:0 auto;position:relative;}
.p95 .sumiike .flex_wrap{display:flex;flex-flow:row wrap;align-items:flex-start;justify-content:space-between;align-self:flex-start;}
.p95 .sumiike img{width:100%;height:auto;object-fit:cover;}
.p95 .sumiike .main_img{width:60%;}
.p95 .sumiike .sub_img{width:35%;padding-top:100px;}
.p95 .sumiike .text_wrap{width:1000px;max-width:100%;margin:-12% auto 0;padding:0;position:relative;z-index:2;background:transparent;}
.p95 .sumiike .title_wrap{text-align:left;margin-bottom:3rem;line-height:2;}
.p95 .sumiike .title_wrap h2{margin:0 0 .5rem;}
.p95 .sumiike .title_wrap h2 img{width:auto;height:auto;max-width:none;display:inline-block;}
.p95 .sumiike .title_wrap .sub_ttl{font-size:1.5rem;letter-spacing:.15em;}
.p95 .sumiike .text_wrap p{font-size:1rem;margin:0 0 1.5em;line-height:2.2;}
@media(max-width:1300px){
  .p95 .sumiike .flex_wrap .main_img,
  .p95 .sumiike .sub_img{width:auto;max-width:90%;display:block;margin:0 auto 20px;padding-top:0;}
  .p95 .sumiike .text_wrap{margin-top:0;}
}
@media(max-width:640px){
  .p95 .sumiike .text_wrap{padding:0 5%;margin-top:0;}
}

/* YouTube embed — matches original alignwide (wide-size 1262px) */
.p95__yt{max-width:1262px;margin:0 auto 4rem;padding:0;}
.p95__yt-frame{position:relative;width:100%;padding-top:56.25%;}
.p95__yt-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}

/* entrance — responsive table */
.p95 .entrance .title_wrap{text-align:left;}
.p95 .responsive-table{margin-top:1rem;}
.p95 .responsive-table dl{display:flex;flex-wrap:wrap;width:100%;margin:0;}
.p95 .responsive-table dt,
.p95 .responsive-table dd{border-bottom:1px solid #fff;padding:2rem 0;margin:0;font-size:1rem;line-height:1.9;}
.p95 .responsive-table dt{display:flex;align-items:flex-start;width:20%;font-weight:500;letter-spacing:.1em;}
.p95 .responsive-table dd{width:80%;}
@media(max-width:640px){
  .p95 .entrance{padding:0 5%;}
  .p95 .responsive-table dt{display:block;width:100%;border:none;padding:2rem 0 0;}
  .p95 .responsive-table dd{width:100%;border-bottom:1px solid #fff;padding:0 0 2rem;}
}

/* FAQ */
.p95__faq{max-width:1000px;margin:0 auto;padding:0;}
.p95__faq .title_wrap{text-align:left;}
.p95__faq-list{margin-top:1rem;}
.p95__faq-item{border-bottom:1px solid rgba(255,255,255,.25);}
.p95__faq-item.is-hidden{display:none;}
.p95__faq-q{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.5rem 0;cursor:pointer;background:transparent;border:none;color:#fff;width:100%;text-align:left;font:inherit;line-height:1.7;}
.p95__faq-q-text{flex:1;font-size:1rem;}
.p95__faq-q-icon{position:relative;width:20px;height:20px;flex-shrink:0;}
.p95__faq-q-icon::before,
.p95__faq-q-icon::after{content:"";position:absolute;background:#fff;left:50%;top:50%;transition:transform .3s;}
.p95__faq-q-icon::before{width:14px;height:1px;transform:translate(-50%,-50%);}
.p95__faq-q-icon::after{width:1px;height:14px;transform:translate(-50%,-50%);}
.p95__faq-item[open] .p95__faq-q-icon::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0;}
.p95__faq-a{background:#fff;color:#0a0a0a;padding:1.5rem 1.5rem;font-size:.95rem;line-height:2;}
.p95__faq-a p{margin:0;}
.p95__faq-more{display:block;margin:1.5rem auto 0;padding:12px 24px;cursor:pointer;background:#333;color:#fff;border:none;border-radius:5px;font-family:"Zen Old Mincho", serif;font-size:.875rem;}

/* CREDITS */
.p95 .credits{margin-top:6.25rem;margin-bottom:0;}
.p95 .credits-wrap{
  background:url("../../images/95th/95th_img_credits_re.jpg") center center/cover no-repeat;
  padding:100px 5% 0;text-align:center;font-family:"EB Garamond", serif;
}
.p95 .credits-wrap h2{font-size:3rem;margin:0 0 calc(6.25rem - 10px);font-weight:400;letter-spacing:.1em;}
.p95 .credits-flex{display:flex;flex-flow:row wrap;align-items:flex-start;justify-content:center;max-width:1100px;margin:0 auto;}
.p95 .credits-flex .inner{width:20%;margin-bottom:40px;line-height:1.9;font-size:.95rem;}
.p95 .credits-flex .inner.last{width:100%;text-align:center;margin-bottom:20px;}
@media(max-width:1000px){
  .p95 .credits-wrap h2{margin-bottom:5rem;}
  .p95 .credits-flex .inner{width:50%;}
}
@media(max-width:640px){
  .p95 .credits-wrap h2{margin-bottom:3.125rem;font-size:2.25rem;}
  .p95 .credits-flex .inner{width:100%;margin-bottom:20px;}
  .p95 .credits-flex .inner.last{padding-top:20px;}
}

/* Remove margin above the footer (credits is the last section) */
.p95 .credits{margin-bottom:0;}
.p95 main, main.p95{margin-bottom:0;padding-bottom:0;}

