@charset "UTF-8";
/* ===================================================================
   下層ページ共通パーツ
   ・ページ見出しの帯（.page-hero）
   ・見出し／本文の共通スタイル
   店舗一覧・企業情報・ニュース・お問い合わせ で共有します。
   共通トークン(--washi/--enji/--gold 等)は style.css を継承
   =================================================================== */

/* ============ ページ見出しの帯 ============ */
.page-hero{
  padding:calc(var(--header-h) + 54px) 0 46px;
  /* 背景写真は assets/shop_hero_bg.jpg。
     中央ほど濃い「生成りのベール」を重ねてあるので、黒い文字のまま読めます。 */
  background:
    radial-gradient(62% 78% at 50% 55%,
      rgba(247,243,236,.90) 0%,
      rgba(247,243,236,.74) 52%,
      rgba(247,243,236,.44) 82%,
      rgba(247,243,236,.30) 100%),
    url("../assets/shop_hero_bg.jpg") center center / cover no-repeat,
    radial-gradient(circle at 18% 20%, rgba(179,154,91,.10) 0, transparent 46%),
    radial-gradient(circle at 84% 70%, rgba(31,48,85,.07) 0, transparent 44%),
    var(--washi);
  text-align:center;
}
.page-hero__inner{max-width:var(--maxw);margin:0 auto;padding:0 32px;}
.page-hero__en{
  margin:0;font-family:var(--serif);font-weight:600;font-size:13px;
  letter-spacing:.42em;color:var(--gold);text-indent:.42em;
}
.page-hero__ja{
  margin:10px 0 0;font-family:var(--serif);font-weight:600;
  font-size:clamp(28px,3.4vw,40px);letter-spacing:.2em;color:var(--ink);text-indent:.2em;
}
.page-hero__ja::after{
  content:"";display:block;width:52px;height:1px;background:var(--gold);margin:20px auto 0;
}
.page-hero__lead{
  margin:22px 0 0;font-size:14px;line-height:2;color:var(--ink-soft);letter-spacing:.04em;
}

/* ============ 下層ページの中身 ============ */
.page-body{max-width:var(--maxw);margin:0 auto;padding:0 32px 100px;}
.page-sec{padding-top:clamp(56px,7vw,86px);scroll-margin-top:calc(var(--header-h) + 20px);}
.page-sec__head{
  display:flex;align-items:baseline;gap:14px;margin:0 0 34px;
  font-family:var(--serif);font-weight:600;font-size:clamp(20px,2.2vw,26px);
  letter-spacing:.16em;color:var(--ink);
  border-bottom:1px solid var(--line);padding-bottom:14px;
}
.page-sec__mark{
  width:9px;height:9px;border-radius:50%;background:var(--enji);flex:none;
  transform:translateY(-3px);
}
.page-sec__en{
  font-family:var(--serif);font-size:11px;letter-spacing:.3em;color:var(--gold);
  margin-left:auto;
}

@media (max-width:768px){
  .page-hero{padding:calc(var(--header-h) + 34px) 0 32px;}
  .page-hero__inner{padding:0 22px;}
  .page-hero__lead{font-size:13px;}
  .page-body{padding:0 18px 70px;}
  .page-sec{padding-top:46px;}
  .page-sec__head{margin-bottom:24px;}
  .page-sec__en{display:none;}
}
