
:root{
  --sumi:#1a1a1a;        /* 墨黒・ねぶたの夜空 */
  --sumi2:#232323;
  --sumi3:#2a2a2a;       /* 商品まわり */
  --aka:#C0392B;         /* 祭り火 */
  --aka-d:#8B0000;       /* 深紅 */
  --kin:#B8860B;         /* 琥珀金 */
  --kin-l:#E3B341;
  --kinari:#F5F0E8;      /* 生成り */
  --kinari-d:#CDC3B4;
  --line:rgba(245,240,232,.14);
  --mincho:"Noto Serif JP",serif;
  --fude:"Yuji Syuku","Noto Serif JP",serif;      /* 筆文字。祭りの看板 */
  --futo:"Dela Gothic One","Noto Sans JP",sans-serif; /* 極太。数字と札 */
  --gothic:"Noto Sans JP",system-ui,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{background:var(--sumi);color:var(--kinari);font-family:var(--gothic);
  line-height:1.95;letter-spacing:.02em;-webkit-font-smoothing:antialiased;overflow-x:hidden;
  padding-bottom:64px}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}

/* ── 見出し */
.eyebrow{font-family:ui-monospace,monospace;font-size:11px;letter-spacing:.28em;
  color:var(--kin-l);text-transform:uppercase}
.oh{font-family:var(--mincho);font-weight:900;font-size:clamp(23px,3.6vw,40px);
  line-height:1.45;margin:10px 0 20px;letter-spacing:.03em}
.oh.big{font-size:clamp(30px,6vw,64px)}
.oh b{color:var(--kin-l)}
.lead{font-size:15.5px;line-height:2.1;color:var(--kinari-d);max-width:64ch}
.txt{font-size:15px;line-height:2.15;color:var(--kinari-d);max-width:64ch;margin-bottom:26px}
.txt b{color:var(--kin-l);font-weight:700}
.note{font-size:11.5px;line-height:1.9;color:#9A9086;margin-top:16px}
.note a{color:var(--kin-l);text-decoration:underline}
.lnk{display:inline-block;margin-top:20px;color:var(--kin-l);font-weight:700;font-size:14px;
  border-bottom:1px solid rgba(227,179,65,.5);padding-bottom:3px}
.lnk:hover{color:#fff}
section{padding:clamp(52px,7vh,92px) 0}
.blk.dark{background:var(--sumi2)}
.blk.spec{background:var(--sumi3)}

/* ── ヘッダー */
.hd{position:sticky;top:0;z-index:60;background:rgba(20,20,20,.96);
  border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}
.hd-in{max-width:1180px;margin:0 auto;padding:10px 24px;display:flex;align-items:center;
  gap:20px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:12px;line-height:1.2;font-family:var(--mincho);font-weight:900}
.logo-img{display:block;height:clamp(56px,10vw,80px);width:auto}
/* ロゴと電話を一段目、売場のナビを二段目に置く。
   三つを一列に並べると、幅が足りずに三段へ割れて帯が200pxになる（2026-09-09）。 */
.nv{display:flex;gap:2px;flex-wrap:wrap;order:3;flex-basis:100%;
  border-top:1px solid var(--line);padding-top:6px;margin-top:2px}
.nv a{font-size:13px;font-weight:700;padding:7px 11px;border-radius:6px;color:var(--kinari-d)}
.nv a:hover{background:rgba(192,57,43,.18);color:#fff}
.nv a.on{color:var(--kin-l);background:rgba(184,134,11,.12)}
.hd-tel{text-align:right;line-height:1.3;padding-left:14px;border-left:1px solid var(--line);
  margin-left:auto}
.hd-tel b{display:block;font-family:var(--mincho);font-size:19px;color:var(--kin-l)}
.hd-tel small{display:block;font-size:10px;color:#8E857B}
@media(max-width:880px){
  .hd-tel{display:none}
  .hd-in{padding:8px 14px;gap:10px}
  .logo-img{height:clamp(44px,8vw,60px)}
  .nv{width:100%;margin-left:0;flex-wrap:nowrap;overflow-x:auto;gap:0;
    scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .nv::-webkit-scrollbar{display:none}
  .nv a{white-space:nowrap;font-size:12.5px;padding:7px 10px}
}

/* ── ヒーロー（ねぶたの夜空に、祭り火） */
.hero{position:relative;padding:clamp(70px,12vh,140px) 0 clamp(56px,9vh,110px);overflow:hidden;
  background:
    radial-gradient(ellipse 70% 50% at 78% 18%,rgba(192,57,43,.42),transparent 62%),
    radial-gradient(ellipse 50% 40% at 12% 88%,rgba(184,134,11,.22),transparent 66%),
    linear-gradient(180deg,#141414,#1f1615 60%,#1a1a1a)}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:5px;
  background:linear-gradient(90deg,var(--aka-d),var(--aka),var(--kin),var(--aka),var(--aka-d))}
.hero-k{font-family:ui-monospace,monospace;font-size:11px;letter-spacing:.34em;color:var(--kin)}
.hero-h{font-family:var(--mincho);font-weight:900;font-size:clamp(38px,8.5vw,96px);
  line-height:1.22;margin:18px 0 26px;letter-spacing:.04em;
  text-shadow:0 4px 40px rgba(0,0,0,.6)}
.hero-h b{color:var(--kin-l);position:relative}
.hero-s{font-family:var(--mincho);font-size:clamp(16px,2.4vw,23px);line-height:2;color:#EFE7DA}
.hero-t{margin-top:26px;font-size:14.5px;line-height:2.1;color:var(--kinari-d);max-width:52ch}
.hero-t b{color:var(--kin-l)}

/* ── ボタン */
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.btn{display:block;border-radius:10px;padding:14px 26px;font-weight:900;font-size:15.5px;
  line-height:1.35;transition:transform .15s,box-shadow .2s,background .2s}
.btn small{display:block;font-weight:500;font-size:11px;opacity:.85;margin-top:3px;letter-spacing:.02em}
.btn.tel{background:var(--aka);color:#fff;box-shadow:0 8px 24px rgba(192,57,43,.35)}
.btn.tel:hover{background:#d9452f;transform:translateY(-2px)}
.btn.line{background:var(--kin);color:#1a1a1a;box-shadow:0 8px 24px rgba(184,134,11,.3)}
.btn.line:hover{background:var(--kin-l);transform:translateY(-2px)}
.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--kinari)}
.btn.ghost:hover{border-color:var(--kin);color:var(--kin-l)}
.btn.gold{background:transparent;border:2px solid var(--kin);color:var(--kin-l);box-shadow:0 0 18px rgba(184,134,11,.25)}
.btn.gold:hover{background:var(--kin);color:#1a1a1a;transform:translateY(-2px)}

/* ── 帯（七夕の吹き流し） */
.band{background:linear-gradient(90deg,var(--aka-d),var(--aka) 45%,var(--aka-d));
  padding:22px 0;border-top:2px solid var(--kin);border-bottom:2px solid var(--kin)}
.band-in{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:baseline}
.band p{font-size:14px;color:#FCEFE0;letter-spacing:.04em}
.band p:first-child{font-family:var(--mincho);font-weight:900;font-size:clamp(16px,2.4vw,22px);color:#fff}
.band b{color:var(--kin-l)}

/* ── 売場カード（竿燈の灯りが縦に連なる） */
.ubs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
@media(max-width:860px){.ubs{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.ubs{grid-template-columns:1fr}}
.ub{display:block;background:var(--sumi3);border:1px solid var(--line);border-radius:14px;
  padding:24px 22px;position:relative;overflow:hidden;transition:.2s}
.ub::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
  background:linear-gradient(180deg,var(--aka),var(--kin))}
.ub:hover{border-color:var(--kin);transform:translateY(-3px);background:#302a26}
.ub-n{display:block;font-family:var(--mincho);font-weight:900;font-size:23px;color:var(--kinari)}
.ub-k{display:block;font-size:12px;color:var(--kin-l);margin-top:5px;letter-spacing:.06em}
.ub-l{display:block;font-size:13px;color:#9A9086;line-height:1.85;margin-top:12px}
.ub-a{display:block;margin-top:14px;font-size:12.5px;font-weight:700;color:var(--kin-l)}

/* ── 商品カード */
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px}
@media(max-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.grid{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.grid{grid-template-columns:1fr}}
.cd{display:flex;flex-direction:column;background:var(--sumi3);border:1px solid var(--line);
  border-radius:12px;overflow:hidden;transition:.2s}
.cd:hover{border-color:var(--kin);transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.4)}
.cd-img{display:block;position:relative;aspect-ratio:4/3;background:#111;overflow:hidden}
.cd-img img{width:100%;height:100%;object-fit:cover}
.noimg{display:grid;place-content:center;text-align:center;width:100%;height:100%;min-height:200px;
  aspect-ratio:4/3;background:repeating-linear-gradient(45deg,#1e1e1e,#1e1e1e 10px,#222 10px,#222 20px);
  color:#7A7168;font-size:12.5px;line-height:1.9;letter-spacing:.06em}
.noimg small{font-size:11px;color:#635C55}
.bdg{position:absolute;left:10px;top:10px;z-index:2;background:var(--kin);color:#1a1a1a;
  font-size:11px;font-weight:900;padding:3px 10px;border-radius:999px;letter-spacing:.06em}
.cd-b{display:block;padding:15px 16px 17px}
.cd .br{display:block;font-size:11px;color:var(--kin-l);letter-spacing:.08em}
.cd .nm{display:block;font-family:var(--mincho);font-weight:700;font-size:15.5px;
  line-height:1.55;margin:5px 0 6px;color:var(--kinari)}
.cd .sb{display:block;font-size:11.5px;color:#8E857B;line-height:1.7;margin-bottom:8px}
.cd .p{display:block;font-family:var(--mincho);font-weight:900;font-size:19px;color:var(--kin-l)}
.cd .p small{font-size:10.5px;font-weight:400;color:#8E857B;margin-left:5px}
.cd .p.ask{font-size:14px;color:#9A9086}

/* ── 売場ヒーロー */
.chero{background:linear-gradient(180deg,#211a19,#1a1a1a);border-bottom:1px solid var(--line);
  padding:clamp(48px,8vh,96px) 0}
.chero .count{margin-top:20px;font-size:13px;color:#8E857B}
.chero .count b{color:var(--kin-l);font-family:var(--mincho);font-size:19px}
.atk-hero{background:
  radial-gradient(ellipse 60% 50% at 80% 20%,rgba(184,134,11,.28),transparent 65%),
  linear-gradient(180deg,#211a19,#1a1a1a)}

/* ── パンくず */
.crumb{padding:12px 0;border-bottom:1px solid var(--line);font-size:12px;color:#8E857B}
.crumb a{color:var(--kin-l)}

/* ── 商品ページ */
.ihero{padding:clamp(34px,5vh,60px) 0}
.ihero-in{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:start}
@media(max-width:900px){.ihero-in{grid-template-columns:1fr;gap:26px}}
.ihero-img{background:#111;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.ihero-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.ihero-b .br{font-size:12px;color:var(--kin-l);letter-spacing:.1em}
.ih{font-family:var(--mincho);font-weight:900;font-size:clamp(25px,4vw,40px);line-height:1.4;
  margin:8px 0 18px}
.kojo-line{font-family:var(--mincho);font-weight:700;font-size:clamp(16px,2.2vw,20px);
  line-height:1.9;color:var(--kin-l);margin:0 0 16px;padding-left:14px;
  border-left:3px solid var(--aka)}
.desc{font-size:13.5px;line-height:2;color:#9A9086;max-width:60ch}
.ihero-b .lead{font-size:15px;margin-bottom:12px}
.ihero-b .lead b{color:var(--kinari);font-weight:700}
.pricebox{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:24px 0 6px;
  padding:18px 22px;background:var(--sumi3);border:1px solid rgba(184,134,11,.35);border-radius:12px}
.pricebox .p{font-family:var(--mincho);font-weight:900;font-size:clamp(28px,4.4vw,44px);
  color:var(--kin-l);line-height:1}
.pricebox .tax{font-size:12px;color:#8E857B}
.pmemo{margin-top:16px;font-size:13.5px;line-height:1.95;color:var(--kinari-d)}

/* ── 表 */
.tw{overflow-x:auto;margin-top:24px;border:1px solid var(--line);border-radius:12px}
table.sp{width:100%;border-collapse:collapse;font-size:13.5px;background:var(--sumi3);min-width:520px}
table.sp th,table.sp td{padding:12px 15px;border-bottom:1px solid var(--line);text-align:left;
  vertical-align:top;line-height:1.85}
table.sp thead th{background:#141414;color:var(--kin-l);font-family:var(--mincho);font-size:12.5px}
table.sp tbody th,table.sp tr>th{color:var(--kinari);font-weight:700;white-space:nowrap;
  background:rgba(0,0,0,.22);width:34%}
table.sp td{color:var(--kinari-d)}
table.sp td.n,table.sp th.n{text-align:center;white-space:nowrap}
table.sp td.h{font-weight:700;color:var(--kinari);white-space:nowrap}
table.sp tr:last-child td,table.sp tr:last-child th{border-bottom:0}
table.sp a{color:var(--kin-l);text-decoration:underline}
.tw-hint{font-size:11px;color:#7A7168;margin-top:8px}
@media(min-width:760px){.tw-hint{display:none}}

/* ── ATK */
.atkb{background:linear-gradient(180deg,#241d18,#1a1a1a);border-top:1px solid rgba(184,134,11,.3);
  border-bottom:1px solid rgba(184,134,11,.3)}
.atk-hd{display:flex;align-items:baseline;gap:10px;margin:6px 0 18px}
.atk-hd .n{font-family:var(--mincho);font-weight:900;font-size:clamp(52px,9vw,92px);
  color:var(--kin-l);line-height:1}
.atk-hd .u{font-size:15px;font-weight:700;color:#9A9086;letter-spacing:.14em}
.atk-t{background:rgba(0,0,0,.3);border:1px solid var(--line);border-radius:14px;
  padding:20px 24px;max-width:520px}
.atk-t .cl{font-size:12px;color:#9A9086;letter-spacing:.1em}
.atk-t .big{font-family:var(--mincho);font-weight:900;font-size:clamp(32px,5vw,50px);
  color:#fff;line-height:1.15}
.atk-t .big span{font-size:18px;margin-left:4px;color:var(--kin-l)}
.atk-t .t2{font-size:13px;color:var(--kinari-d);margin-top:6px}
.atk-t .t2 b{color:var(--kin-l)}
.bars{display:flex;flex-direction:column;gap:10px;margin:24px 0 0;max-width:560px}
.bar{display:grid;grid-template-columns:92px 1fr 46px;align-items:center;gap:12px;
  font-size:12.5px;color:var(--kinari-d)}
.bar .tr{height:10px;background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden}
.bar .tr i{display:block;height:100%;border-radius:99px;
  background:linear-gradient(90deg,var(--aka-d),var(--aka),var(--kin-l))}
.bar .v{text-align:right;font-weight:700;color:var(--kin-l)}
.atk-note{margin-top:20px;font-size:12px;color:#9A9086;line-height:1.9;max-width:60ch}

/* ── 写真 */
.gg{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
@media(max-width:800px){.gg{grid-template-columns:1fr 1fr}}
.gg figure{background:#111;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.gg img{width:100%;aspect-ratio:4/3;object-fit:cover}
.gg figcaption{font-size:11.5px;color:#8E857B;padding:9px 12px 12px;line-height:1.7}

/* ── 流れ（さんさの太鼓が並ぶ） */
.steps{list-style:none;counter-reset:s;margin-top:28px;display:grid;gap:12px}
.steps li{counter-increment:s;background:var(--sumi3);border:1px solid var(--line);
  border-radius:12px;padding:20px 22px 20px 68px;position:relative}
.steps li::before{content:counter(s);position:absolute;left:20px;top:17px;width:32px;height:32px;
  border-radius:50%;background:var(--aka);color:#fff;font-family:var(--mincho);font-weight:900;
  display:grid;place-items:center;font-size:16px}
.steps b{display:block;font-family:var(--mincho);font-size:17px;color:var(--kinari)}
.steps span{display:block;font-size:13px;color:#9A9086;margin-top:5px;line-height:1.85}

/* ── 計算式 */
.formula{background:#111;border:1px solid rgba(184,134,11,.3);border-radius:12px;
  padding:22px;margin-top:24px;overflow-x:auto;font-family:ui-monospace,monospace;
  font-size:12.5px;line-height:2;color:var(--kin-l);white-space:pre}

/* ── CTA */
.cta{background:
  radial-gradient(ellipse 60% 60% at 20% 20%,rgba(192,57,43,.35),transparent 65%),
  linear-gradient(180deg,#1f1615,#141414);
  border-top:2px solid var(--kin);text-align:center}
.cta .ctxt{font-size:15px;line-height:2.15;color:var(--kinari-d);margin:0 auto;max-width:58ch}
.cta .ctxt b{color:var(--kin-l);font-family:var(--mincho);font-size:18px}
.cta .btns{justify-content:center}
.cta .cnote{margin-top:24px;font-size:12px;color:#8E857B}

/* ── 計算機 */
.calc{background:linear-gradient(180deg,#1e1a16,#1a1a1a)}
.ac{display:grid;grid-template-columns:1fr 1.05fr;gap:26px;margin-top:30px;align-items:start}
@media(max-width:900px){.ac{grid-template-columns:1fr}}
.ac-form{background:var(--sumi3);border:1px solid var(--line);border-radius:14px;padding:24px}
.ac-form label{display:block;margin-bottom:16px;font-size:13.5px;font-weight:700;color:var(--kinari)}
.ac-form label span{display:block;font-weight:400;font-size:11.5px;color:#8E857B;margin:2px 0 7px}
.ac-form input,.ac-form select{width:100%;background:#141414;color:var(--kinari);
  border:1px solid var(--line);border-radius:8px;padding:11px 13px;font-size:15px;
  font-family:inherit}
.ac-form input:focus,.ac-form select:focus{outline:none;border-color:var(--kin)}
.ac-form .btn{width:100%;text-align:center;margin-top:6px}
.ac-gh{font-family:var(--mincho);font-weight:700;font-size:14px;color:var(--kin-l);
  margin:22px 0 12px;padding-bottom:7px;border-bottom:1px solid var(--line)}
.ac-form .ac-gh:first-child{margin-top:0}
.ac-out{background:linear-gradient(180deg,#241d18,#1c1715);border:1px solid rgba(184,134,11,.35);
  border-radius:14px;padding:26px 24px}
.ac-lb{font-size:11.5px;letter-spacing:.14em;color:#9A9086;margin-top:18px}
.ac-out .ac-lb:first-child{margin-top:0}
.ac-big{font-family:var(--mincho);font-weight:900;font-size:clamp(56px,9vw,92px);
  color:var(--kin-l);line-height:1.05;margin-top:4px}
.ac-big small{font-size:17px;font-weight:700;color:#9A9086;margin-left:8px;letter-spacing:.12em}
.ac-big2{font-family:var(--mincho);font-weight:900;font-size:clamp(26px,4.6vw,40px);
  color:var(--kin-l);line-height:1.2;margin-top:3px}
.ac-mid{font-family:var(--mincho);font-weight:700;font-size:20px;color:var(--kinari);margin-top:3px}
.ac-mid b{color:var(--kin-l);font-size:24px}
.ac-bars{display:flex;flex-direction:column;gap:9px;margin:20px 0 0}
.rb{display:grid;grid-template-columns:88px 1fr 46px;align-items:center;gap:11px;
  font-size:12.5px;color:var(--kinari-d)}
.rt{height:10px;background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden}
.rf{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--aka-d),var(--aka),var(--kin-l))}
.rv{text-align:right;font-weight:700;color:var(--kin-l)}
.ac-ts{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);
  font-size:14px;line-height:1.95;color:var(--kinari-d)}
.ac-ts b{color:var(--kin-l);font-family:var(--mincho);font-size:18px}
.mini{font-size:11.5px;color:#8E857B}
table.sp.steps td.f{font-family:ui-monospace,monospace;font-size:12px;color:var(--kin-l);
  white-space:nowrap}
table.sp.steps td.v{font-family:var(--mincho);font-weight:700;color:#fff;white-space:nowrap}
table.sp.steps td.m{font-size:12px;color:#9A9086;min-width:260px}
.keisan-box{background:#141414;border:1px solid rgba(184,134,11,.3);border-radius:12px;
  padding:20px 22px;margin-top:20px;font-size:14px;line-height:2;color:var(--kinari-d)}
.keisan-box b{color:var(--kin-l);font-family:var(--mincho);font-size:18px}
.keisan-h{font-family:var(--mincho);font-weight:700;font-size:clamp(17px,2.4vw,22px);
  color:var(--kinari);margin:34px 0 12px;padding-left:14px;border-left:4px solid var(--aka)}
.formula b{color:#fff}
.hantei{margin-top:22px;padding:18px 20px;border-radius:12px;font-size:13.5px;line-height:1.95}
.hantei b{font-family:var(--mincho);font-size:17px;display:block;margin-bottom:6px}
.hantei.ok{background:rgba(70,120,60,.22);border:1px solid rgba(140,200,120,.4);color:#DCEBD4}
.hantei.ok b{color:#A8DC90}
.hantei.warn{background:rgba(184,134,11,.18);border:1px solid rgba(227,179,65,.45);color:#F0E4CA}
.hantei.warn b{color:var(--kin-l)}
.hantei.ng{background:rgba(139,0,0,.3);border:1px solid rgba(192,57,43,.6);color:#F7DDD8}
.hantei.ng b{color:#FF8B77}

/* ── 換気・こわい話 */
.kanki-hero{background:
  radial-gradient(ellipse 60% 55% at 78% 22%,rgba(60,110,150,.28),transparent 65%),
  linear-gradient(180deg,#16191c,#1a1a1a)}
.kowai{background:linear-gradient(180deg,#1d1211,#171313);
  border-top:2px solid var(--aka-d);border-bottom:2px solid var(--aka-d)}
.kowai .oh{color:#FFD9CE}
.kowai .keisan-h{border-left-color:#FF8B77}

/* ── 見出しの受け（でも、まぁ、見ていけ） */
.oh-sub{display:block;margin-top:18px;font-size:.52em;line-height:1.6;color:var(--kinari-d);
  font-weight:700;letter-spacing:.04em}
.oh-sub::before{content:"";display:block;width:56px;height:2px;margin:0 0 16px;
  background:linear-gradient(90deg,var(--aka),var(--kin-l))}

/* ── 通り名・サイト一覧 */
.sts-sec{background:
  radial-gradient(ellipse 60% 50% at 82% 22%,rgba(184,134,11,.20),transparent 64%),
  linear-gradient(180deg,#161616,#1a1a1a);border-top:1px solid var(--line)}
.sts-g{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}
@media(max-width:900px){.sts-g{grid-template-columns:1fr}}
.sts-g a{display:block;background:var(--sumi3);border:1px solid var(--line);border-radius:14px;
  padding:22px 22px;transition:.2s}
.sts-g a:hover{border-color:var(--kin);transform:translateY(-3px)}
.sts-g .jomon{display:block;width:clamp(28px,5vw,40px);height:auto;margin:0 0 10px}
.sts-g .t{display:block;font-family:var(--mincho);font-weight:900;font-size:19px;
  color:var(--kinari);margin-top:12px}
.sts-g .t small{display:block;font-family:var(--gothic);font-weight:500;font-size:11px;
  color:var(--kin-l);letter-spacing:.08em;margin-top:3px}
.sts-g{grid-template-columns:repeat(4,1fr)}
@media(max-width:1100px){.sts-g{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.sts-g{grid-template-columns:1fr}}
/* 通り名 */
.tooriname{background:linear-gradient(135deg,rgba(192,57,43,.24),rgba(184,134,11,.14));
  border:2px solid var(--kin);border-radius:16px;padding:30px 28px;margin-top:24px;
  text-align:center;max-width:640px}
.tn-l{font-size:11.5px;letter-spacing:.18em;color:var(--kin-l)}
.tn-n{font-family:var(--mincho);font-weight:900;font-size:clamp(30px,5.5vw,52px);
  color:#fff;line-height:1.3;margin:12px 0 14px;letter-spacing:.04em}
.tn-d{font-size:13.5px;line-height:1.95;color:var(--kinari-d)}
.sts-g .d{display:block;font-size:12px;color:#8E857B;line-height:1.9;margin-top:9px}


/* ═══════════ 祭りの意匠（全部CSS。写真は使わない） ═══════════ */

/* ── 提灯の列（青森ねぶた／盛岡さんさの宵） */
.chochin{position:relative;display:flex;justify-content:center;gap:clamp(18px,4vw,44px);
  padding:26px 16px 30px;background:#141414;border-top:1px solid rgba(184,134,11,.35);
  border-bottom:1px solid rgba(184,134,11,.35);overflow:hidden}
.chochin::before{content:"";position:absolute;left:0;right:0;top:14px;height:2px;
  background:linear-gradient(90deg,transparent,var(--kin) 8%,var(--kin) 92%,transparent)}
.chochin i{position:relative;display:block;width:clamp(26px,4.4vw,40px);
  height:clamp(36px,6vw,54px);border-radius:50%/38%;
  background:radial-gradient(ellipse at 50% 38%,#FFE2A8,#E8934A 42%,#C0392B 78%,#8B0000);
  box-shadow:0 0 26px rgba(224,140,60,.55),inset 0 -6px 14px rgba(0,0,0,.35);
  animation:yure 3.6s ease-in-out infinite}
.chochin i::before{content:"";position:absolute;left:50%;top:-14px;width:1px;height:14px;
  background:var(--kin);transform:translateX(-50%)}
.chochin i::after{content:"";position:absolute;inset:16% 0;
  background:repeating-linear-gradient(180deg,transparent 0 5px,rgba(0,0,0,.20) 5px 6px);
  border-radius:inherit}
.chochin i:nth-child(2n){animation-delay:-1.2s}
.chochin i:nth-child(3n){animation-delay:-2.4s}
.chochin i:nth-child(4n){animation-delay:-.6s}
@keyframes yure{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
@media(prefers-reduced-motion:reduce){.chochin i{animation:none}}

/* ── 吹き流し（仙台七夕）ヒーローの両肩から下がる */
.hero{--fu:linear-gradient(180deg,var(--aka) 0 18%,var(--kin) 18% 34%,#F5F0E8 34% 46%,
  var(--aka-d) 46% 62%,var(--kin-l) 62% 74%,transparent 74%)}
.hero::before{content:"";position:absolute;top:0;left:6%;width:clamp(8px,1.4vw,16px);height:62%;
  background:var(--fu);opacity:.30;border-radius:0 0 99px 99px;pointer-events:none}
.hero .fuki{position:absolute;top:0;right:8%;width:clamp(8px,1.4vw,16px);height:74%;
  background:var(--fu);opacity:.26;border-radius:0 0 99px 99px;pointer-events:none}
.hero .fuki2{position:absolute;top:0;right:13%;width:clamp(6px,1vw,12px);height:50%;
  background:var(--fu);opacity:.20;border-radius:0 0 99px 99px;pointer-events:none}

/* ── 幟（のぼり旗）売場の見出し */
.nobori{position:relative;display:inline-block;padding:10px 20px 10px 26px;
  background:linear-gradient(180deg,#8B0000,#C0392B);color:#fff;
  font-family:var(--mincho);font-weight:900;font-size:14px;letter-spacing:.18em;
  clip-path:polygon(0 0,100% 0,100% 100%,0 100%,7px 50%)}
.nobori::after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--kin)}

/* ── 和柄（麻の葉／青海波）暗い帯の地紋。うるさくしない */
.blk.dark::before,.matsuri::before{content:"";position:absolute;inset:0;pointer-events:none;
  opacity:.045;
  background-image:
    repeating-linear-gradient(60deg,var(--kin-l) 0 1px,transparent 1px 26px),
    repeating-linear-gradient(-60deg,var(--kin-l) 0 1px,transparent 1px 26px),
    repeating-linear-gradient(0deg,var(--kin-l) 0 1px,transparent 1px 26px)}
.blk.dark,.matsuri{position:relative}
.blk.dark>*,.matsuri>*{position:relative;z-index:1}

/* ── 太鼓（さんさ）見出しの前に打つ点 */
.eyebrow::before{content:"●";color:var(--aka);font-size:7px;margin-right:9px;
  vertical-align:middle;opacity:.85}

/* ── 山車の縁（八戸三社大祭）重い枠 */
.matsuri .mt{border-top-width:4px}
.mt-g .mt:nth-child(3n){border-top-color:#F5F0E8}


/* ═══════════ 祭り 二段目 ═══════════ */

/* ── 火の粉（ひのこ）ヒーローに舞う。粒だけ。重くしない */
.hinoko{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.hinoko b{position:absolute;bottom:-12px;width:3px;height:3px;border-radius:50%;
  background:radial-gradient(circle,#FFD79A,#E8934A 60%,transparent 70%);
  box-shadow:0 0 8px rgba(232,147,74,.9);opacity:0;
  animation:mai 9s linear infinite}
@keyframes mai{
  0%{transform:translate(0,0) scale(.6);opacity:0}
  12%{opacity:.95}
  70%{opacity:.75}
  100%{transform:translate(var(--dx,20px),-105vh) scale(1.15);opacity:0}}
.hinoko b:nth-child(1){left:8%;--dx:26px;animation-delay:0s;animation-duration:8.5s}
.hinoko b:nth-child(2){left:17%;--dx:-18px;animation-delay:1.4s;animation-duration:10s}
.hinoko b:nth-child(3){left:26%;--dx:32px;animation-delay:2.9s;animation-duration:9.2s}
.hinoko b:nth-child(4){left:35%;--dx:-24px;animation-delay:4.1s;animation-duration:11s}
.hinoko b:nth-child(5){left:44%;--dx:16px;animation-delay:0.7s;animation-duration:9.8s}
.hinoko b:nth-child(6){left:53%;--dx:-30px;animation-delay:3.3s;animation-duration:8.8s}
.hinoko b:nth-child(7){left:62%;--dx:22px;animation-delay:5.2s;animation-duration:10.4s}
.hinoko b:nth-child(8){left:71%;--dx:-14px;animation-delay:2.1s;animation-duration:9.4s}
.hinoko b:nth-child(9){left:80%;--dx:28px;animation-delay:6.0s;animation-duration:11.5s}
.hinoko b:nth-child(10){left:88%;--dx:-20px;animation-delay:1.9s;animation-duration:9.0s}
.hinoko b:nth-child(11){left:12%;--dx:-26px;animation-delay:7.1s;animation-duration:10.8s}
.hinoko b:nth-child(12){left:68%;--dx:18px;animation-delay:4.8s;animation-duration:8.2s}
@media(prefers-reduced-motion:reduce){.hinoko{display:none}}
.hero .wrap{position:relative;z-index:1}

/* ── 暖簾（のれん）売場の入口に垂らす */
.noren{position:relative;height:46px;margin:0;background:linear-gradient(180deg,#8B0000,#6d0000);
  border-top:3px solid var(--kin);
  -webkit-mask-image:repeating-linear-gradient(90deg,#000 0 calc(20% - 5px),transparent calc(20% - 5px) 20%);
  mask-image:repeating-linear-gradient(90deg,#000 0 calc(20% - 5px),transparent calc(20% - 5px) 20%)}
.noren::after{content:"";position:absolute;left:0;right:0;top:14px;height:1px;
  background:rgba(245,240,232,.28)}

/* ── 半纏の縞（はんてんのしま）カードの背に */
.cd-b{position:relative}
.cd-b::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:repeating-linear-gradient(90deg,var(--aka) 0 8px,var(--kin) 8px 16px,
    transparent 16px 26px);opacity:.5}
.cd:hover .cd-b::before{opacity:1}

/* ── 市松（いちまつ）節の境目に細く走らせる */
.ichimatsu{height:10px;background:
  repeating-conic-gradient(var(--aka-d) 0 25%,transparent 0 50%) 0 0/20px 20px,
  #141414;opacity:.85}

/* ── 縦書きの幟（のぼり）売場ヒーローの端に立てる */
.tate{position:absolute;right:clamp(14px,4vw,56px);top:0;
  writing-mode:vertical-rl;font-family:var(--mincho);font-weight:900;
  font-size:clamp(15px,2vw,20px);letter-spacing:.34em;color:#F5F0E8;
  background:linear-gradient(180deg,#8B0000,#C0392B 70%,#8B0000);
  padding:22px 12px 34px;border:2px solid var(--kin);border-top:0;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),50% 100%,0 calc(100% - 14px));
  box-shadow:0 10px 30px rgba(0,0,0,.5)}
@media(max-width:760px){.tate{display:none}}
.chero{position:relative;overflow:hidden}

/* ── 提灯を締めの前にも、小さく */
.chochin.small{padding:18px 16px 20px}
.chochin.small i{width:clamp(18px,3vw,26px);height:clamp(26px,4.2vw,36px)}


/* ═══════════ 祭り 三段目 ── ポスターの作法 ═══════════ */

/* ── ① 筆文字。ここぞの見出しだけに使う */
.hero-h,.oh.big,.nobori,.tate,.sk li,.sakebi-line,.tn-n,.fude{
  font-family:var(--fude);font-weight:400;letter-spacing:.04em}
.hero-h{line-height:1.3}
.oh.big{line-height:1.35}
.sk li,.sakebi-line{font-size:clamp(15px,2.2vw,20px);line-height:2.0}

/* ── ② 額縁（大正浪漫の枠）二重罫＋隅飾り */
.gaku{position:relative;padding:clamp(26px,4vw,46px);border:2px solid var(--kin);
  box-shadow:inset 0 0 0 1px rgba(184,134,11,.35),inset 0 0 0 7px rgba(20,20,20,.9),
    inset 0 0 0 8px rgba(184,134,11,.45)}
.gaku::before,.gaku::after{content:"";position:absolute;width:22px;height:22px;
  border:2px solid var(--kin-l)}
.gaku::before{left:-2px;top:-2px;border-right:0;border-bottom:0}
.gaku::after{right:-2px;bottom:-2px;border-left:0;border-top:0}
.gaku .sumi-tr,.gaku .sumi-bl{position:absolute;width:22px;height:22px;border:2px solid var(--kin-l)}
.gaku .sumi-tr{right:-2px;top:-2px;border-left:0;border-bottom:0}
.gaku .sumi-bl{left:-2px;bottom:-2px;border-right:0;border-top:0}

/* ── ③ 黒地に白抜きの縦札（神社名の札） */
.fuda{display:inline-block;writing-mode:vertical-rl;font-family:var(--fude);
  font-size:clamp(13px,1.8vw,17px);letter-spacing:.28em;color:#fff;background:#111;
  border:1px solid rgba(245,240,232,.45);padding:14px 7px 18px;line-height:1}
.fuda-g{position:absolute;left:clamp(10px,2.2vw,30px);top:0;display:none;gap:8px;z-index:2}
/* 札は、本文とぶつからない広さのときだけ出す。ぶつかるくらいなら出さない */
@media(min-width:1080px){
  .fuda-g{display:flex}
  .hero .wrap,.chero .wrap{padding-left:clamp(120px,11vw,190px)}
}

/* ── ④ 数字を主役に（8月1日・2日・3日 の作法） */
.kazu{font-family:var(--futo);font-size:clamp(30px,5.6vw,58px);color:var(--kin-l);
  line-height:1;letter-spacing:-.01em}
.chero .count b{font-family:var(--futo);font-size:clamp(26px,4.4vw,44px);color:var(--kin-l)}
.pricebox .p{font-family:var(--futo);letter-spacing:-.01em}
.cd .p{font-family:var(--futo);font-size:20px;letter-spacing:-.01em}
.atk-hd .n,.ac-big{font-family:var(--futo)}
.hd-tel b{font-family:var(--futo);font-size:20px}

/* ── ⑤ 青海波（せいがいは）の地紋。宵のポスターの空 */
.seigaiha{position:relative}
.seigaiha::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.07;
  background-image:
    radial-gradient(circle at 50% 100%,transparent 58%,var(--kin-l) 58% 60%,transparent 60%),
    radial-gradient(circle at 0% 100%,transparent 58%,var(--kin-l) 58% 60%,transparent 60%),
    radial-gradient(circle at 100% 100%,transparent 58%,var(--kin-l) 58% 60%,transparent 60%);
  background-size:44px 22px}
.seigaiha>*{position:relative;z-index:1}

/* ── ⑥ 宵の空（紺→金）のグラデ。夜の祭り */
.yoi{background:linear-gradient(180deg,#0e1424 0%,#1a1c22 38%,#2a1e16 72%,#3a2415 100%)}
.yoi .oh,.yoi .hero-h{color:#fff}

/* ── ⑦ かすれ（筆のにじみ）を見出しに */
.oh.big,.hero-h{text-shadow:0 2px 0 rgba(0,0,0,.35),0 0 34px rgba(0,0,0,.5)}


/* ═══════════ 紋（もん）── 三社祭の半纏の後ろ紋 ═══════════ */

/* ── 一つの紋 */
.mon{display:grid;place-content:center;flex:0 0 auto;
  width:var(--mon,64px);height:var(--mon,64px);border-radius:50%;
  background:#0d0d0d;color:#fff;border:2.5px solid #fff;
  font-family:var(--fude);font-size:calc(var(--mon,64px) * .48);line-height:1;
  letter-spacing:0;text-align:center;user-select:none}
.mon.kaku{border-radius:5px}
.mon.shiro{background:#F5F0E8;color:#0d0d0d;border-color:#0d0d0d}
.mon.futa{font-size:calc(var(--mon,64px) * .30);letter-spacing:-.02em;line-height:1.05;
  writing-mode:vertical-rl}
.mon.kin{border-color:var(--kin);color:var(--kin-l)}

/* ── 紋尽くし（もんづくし）びっしり流れる帯 */
.monzukushi{position:relative;overflow:hidden;background:#F5F0E8;
  border-top:3px solid #0d0d0d;border-bottom:3px solid #0d0d0d;padding:14px 0}
.monzukushi .nagare{display:flex;gap:10px;width:max-content;
  animation:mon-nagare 46s linear infinite}
.monzukushi .mon{--mon:58px}
.monzukushi.gyaku .nagare{animation-direction:reverse;animation-duration:58s}
@keyframes mon-nagare{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.monzukushi .nagare{animation:none}}
@media(max-width:760px){.monzukushi .mon{--mon:44px}}

/* ── 地紋（うっすら敷く） */
.monji{position:relative}
.monji::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;
  background-image:radial-gradient(circle,#F5F0E8 0 1px,transparent 1px);
  background-size:18px 18px}

/* ── 売場の紋（大きく一つ） */
.uriba-mon{--mon:clamp(74px,10vw,116px);margin-bottom:18px;
  box-shadow:0 10px 34px rgba(0,0,0,.5)}
.mt .mon{--mon:44px;margin-bottom:10px}
.ub .mon{--mon:46px;margin-bottom:12px}


/* ═══════════ 四段目 ── ド派手 ═══════════ */

/* ── ① 紙吹雪（かみふぶき） */
.fubuki{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.fubuki i{position:absolute;top:-24px;width:9px;height:14px;opacity:0;
  animation:chiru 11s linear infinite}
@keyframes chiru{
  0%{transform:translate(0,-30px) rotate(0deg);opacity:0}
  8%{opacity:.95}
  92%{opacity:.75}
  100%{transform:translate(var(--sx,40px),115vh) rotate(720deg);opacity:0}}
.fubuki i:nth-child(5n+1){background:var(--aka)}
.fubuki i:nth-child(5n+2){background:var(--kin-l)}
.fubuki i:nth-child(5n+3){background:#F5F0E8}
.fubuki i:nth-child(5n+4){background:var(--aka-d)}
.fubuki i:nth-child(5n+5){background:var(--kin)}
.fubuki i:nth-child(2n){width:7px;height:11px;border-radius:2px}
.fubuki i:nth-child(3n){width:12px;height:6px}
.fubuki i:nth-child(1){left:4%;--sx:60px;animation-delay:0s;animation-duration:10s}
.fubuki i:nth-child(2){left:11%;--sx:-40px;animation-delay:1.7s;animation-duration:13s}
.fubuki i:nth-child(3){left:18%;--sx:70px;animation-delay:3.4s;animation-duration:11.5s}
.fubuki i:nth-child(4){left:25%;--sx:-55px;animation-delay:5.1s;animation-duration:12.5s}
.fubuki i:nth-child(5){left:32%;--sx:35px;animation-delay:0.9s;animation-duration:10.8s}
.fubuki i:nth-child(6){left:39%;--sx:-65px;animation-delay:2.6s;animation-duration:14s}
.fubuki i:nth-child(7){left:46%;--sx:50px;animation-delay:4.3s;animation-duration:11s}
.fubuki i:nth-child(8){left:53%;--sx:-30px;animation-delay:6.0s;animation-duration:12s}
.fubuki i:nth-child(9){left:60%;--sx:75px;animation-delay:1.2s;animation-duration:13.5s}
.fubuki i:nth-child(10){left:67%;--sx:-48px;animation-delay:3.9s;animation-duration:10.2s}
.fubuki i:nth-child(11){left:74%;--sx:42px;animation-delay:5.6s;animation-duration:12.8s}
.fubuki i:nth-child(12){left:81%;--sx:-70px;animation-delay:2.2s;animation-duration:11.2s}
.fubuki i:nth-child(13){left:88%;--sx:58px;animation-delay:4.8s;animation-duration:13.2s}
.fubuki i:nth-child(14){left:95%;--sx:-36px;animation-delay:0.4s;animation-duration:10.5s}
.fubuki i:nth-child(15){left:8%;--sx:-62px;animation-delay:7.3s;animation-duration:12.2s}
.fubuki i:nth-child(16){left:57%;--sx:66px;animation-delay:8.1s;animation-duration:11.8s}
@media(prefers-reduced-motion:reduce){.fubuki{display:none}}

/* ── ② 巨大な透かし文字（節の地に一文字） */
.sukashi{position:absolute;right:-2%;top:50%;transform:translateY(-50%);
  font-family:var(--fude);font-size:clamp(180px,34vw,460px);line-height:.82;
  color:var(--kinari);opacity:.045;pointer-events:none;user-select:none;z-index:0;
  white-space:nowrap;letter-spacing:-.06em}
.sukashi.hidari{right:auto;left:-3%}
section{position:relative;overflow:hidden}
section>.wrap{position:relative;z-index:1}

/* ── ③ 袋文字（江戸文字の白フチ） */
.hero-h,.oh.big{
  -webkit-text-stroke:1.5px rgba(245,240,232,.30);
  paint-order:stroke fill}
.hero-h b,.oh.big b{-webkit-text-stroke:1.5px rgba(255,255,255,.42)}

/* ── ④ 注連縄（しめなわ）風の金の区切り */
.shime-nawa{height:16px;position:relative;background:#141414;
  border-top:1px solid rgba(184,134,11,.4);border-bottom:1px solid rgba(184,134,11,.4)}
.shime-nawa::before{content:"";position:absolute;inset:0;
  background:repeating-linear-gradient(115deg,var(--kin) 0 3px,#8a6408 3px 7px,
    transparent 7px 11px);opacity:.75}
.shime-nawa::after{content:"";position:absolute;left:0;right:0;top:50%;height:2px;
  background:rgba(20,20,20,.55)}

/* ── ⑤ 山車の枠（重厚な二重縁）カードに */
.grid .cd{border-width:2px;border-top-width:5px;border-top-color:var(--aka);
  box-shadow:inset 0 0 0 1px rgba(184,134,11,.18)}
.grid .cd:nth-child(3n) {border-top-color:var(--kin)}
.grid .cd:nth-child(5n) {border-top-color:#F5F0E8}
.grid .cd:hover{box-shadow:inset 0 0 0 1px rgba(227,179,65,.5),0 16px 40px rgba(0,0,0,.55)}

/* ── ⑥ 赤帯を、うねる祭りの帯に */
.band{position:relative;overflow:hidden}
.band::before{content:"";position:absolute;inset:0;opacity:.30;
  background:repeating-linear-gradient(90deg,transparent 0 46px,
    rgba(255,255,255,.22) 46px 50px)}
.band::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;
  background:repeating-linear-gradient(90deg,var(--kin) 0 14px,#141414 14px 28px)}

/* ── ⑦ 見出しの前後に、しるし */
.oh.big::after{content:"";display:block;width:120px;height:6px;margin-top:20px;
  background:repeating-linear-gradient(90deg,var(--aka) 0 14px,var(--kin) 14px 28px)}

/* ── ⑧ フッターの上にも提灯 */
.ft{position:relative}


/* ═══════════ 和柄の地紋 ── 商品ページ用。静かに敷く ═══════════
   祭りの飾りは置かない。柄だけで世界観をつなぐ。
   濃度は 3〜4%。言われて初めて気づくくらいで止める。          */

.ji{position:relative}
.ji::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.07}
.ji>*{position:relative;z-index:1}

/* 七宝（しっぽう）… 円が重なる。おだやかで、縁がつながる柄 */
.ji-shippou::before{
  background-image:
    radial-gradient(circle at 0 50%,transparent 47%,var(--kin-l) 47% 48.6%,transparent 49%),
    radial-gradient(circle at 100% 50%,transparent 47%,var(--kin-l) 47% 48.6%,transparent 49%),
    radial-gradient(circle at 50% 0,transparent 47%,var(--kin-l) 47% 48.6%,transparent 49%),
    radial-gradient(circle at 50% 100%,transparent 47%,var(--kin-l) 47% 48.6%,transparent 49%);
  background-size:56px 56px}

/* 麻の葉（あさのは）… 丈夫に育つように。子どもの産着の柄 */
.ji-asanoha::before{
  background-image:
    repeating-linear-gradient(60deg,var(--kin-l) 0 1px,transparent 1px 30px),
    repeating-linear-gradient(-60deg,var(--kin-l) 0 1px,transparent 1px 30px),
    repeating-linear-gradient(0deg,var(--kin-l) 0 1px,transparent 1px 30px)}

/* 青海波（せいがいは）… 波が果てなく続く。おだやかな海 */
.ji-seigaiha::before{
  background-image:
    radial-gradient(circle at 50% 100%,transparent 56%,var(--kin-l) 56% 58%,transparent 58%),
    radial-gradient(circle at 0 100%,transparent 56%,var(--kin-l) 56% 58%,transparent 58%),
    radial-gradient(circle at 100% 100%,transparent 56%,var(--kin-l) 56% 58%,transparent 58%);
  background-size:52px 26px}

/* 亀甲（きっこう）… 亀の甲。長寿と堅牢 */
.ji-kikkou::before{
  background-image:
    repeating-linear-gradient(60deg,var(--kin-l) 0 1px,transparent 1px 34px),
    repeating-linear-gradient(-60deg,var(--kin-l) 0 1px,transparent 1px 34px),
    repeating-linear-gradient(90deg,var(--kin-l) 0 1px,transparent 1px 59px)}

/* 矢絣（やがすり）… 放った矢は戻らない。まっすぐ進む柄 */
.ji-yagasuri::before{
  background-image:
    repeating-linear-gradient(45deg,var(--kin-l) 0 1px,transparent 1px 22px),
    repeating-linear-gradient(-45deg,var(--kin-l) 0 1px,transparent 1px 22px);
  background-size:44px 44px}

/* 市松（いちまつ）… 途切れず続く。繁栄 */
.ji-ichimatsu::before{
  background-image:repeating-conic-gradient(var(--kin-l) 0 25%,transparent 0 50%);
  background-size:46px 46px;opacity:.045}

/* 立涌（たてわく）… 湯気が立ちのぼる。サウナの柄 */
.ji-tatewaku::before{
  background-image:
    repeating-radial-gradient(circle at 0 50%,transparent 0 20px,var(--kin-l) 20px 21px,transparent 21px 40px);
  background-size:40px 80px}

/* ── 商品ページの締めの提灯は、小さく静かに */
.ji .chochin{padding:16px 16px 18px;opacity:.8}
.ji .chochin i{width:clamp(16px,2.6vw,24px);height:clamp(24px,3.8vw,33px);animation-duration:5.4s}
/* ── 商品ページでは見出しの袋文字も外す（うるさくなるので） */
.ji .oh.big{-webkit-text-stroke:0}

/* ── メーカーの名札（柄の由来を静かに置く） */
.gara{display:inline-flex;align-items:center;gap:9px;margin-top:26px;
  font-size:11.5px;color:#8E857B;letter-spacing:.08em}
.gara span{display:inline-block;width:26px;height:26px;border:1px solid rgba(184,134,11,.5);
  border-radius:4px}


/* ═══════════ 世界観の芯 ═══════════ */

/* ── 定紋（じょうもん）丸に「男」。この店の芯 */
.jomon{position:relative;display:inline-grid;place-items:center;
  width:var(--jm,86px);height:var(--jm,86px);flex:0 0 auto}
.jomon .maru{position:absolute;inset:0;border-radius:50%;
  border:calc(var(--jm,86px)*.075) solid var(--kin);
  box-shadow:0 0 0 2px rgba(20,20,20,.9),0 0 26px rgba(184,134,11,.35)}
.jomon b{position:relative;font-family:var(--fude);font-weight:400;
  font-size:calc(var(--jm,86px)*.52);line-height:1;color:var(--kin-l)}
.jomon-big{--jm:clamp(64px,8vw,104px);margin-bottom:20px}
.jomon-mid{--jm:64px}
.jomon-sml{--jm:38px;vertical-align:middle;margin-right:10px}
.jomon-sml .maru{border-width:3px}

/* ── 季節の口上 */
.kisetsu{background:linear-gradient(180deg,#141414,#191512);
  border-top:1px solid rgba(184,134,11,.4);border-bottom:1px solid rgba(184,134,11,.4);
  padding:30px 0}
.ks-l{font-family:var(--fude);font-size:13px;letter-spacing:.24em;color:var(--kin)}
.ks-t{font-family:var(--fude);font-size:clamp(18px,3vw,30px);line-height:1.8;
  color:#F3E7D2;margin-top:12px}

/* ── 町の名 */
.machi{font-family:var(--fude);font-size:clamp(20px,3vw,30px);color:var(--kin-l);
  letter-spacing:.14em;margin-bottom:6px}
.machi span{display:block;font-family:var(--gothic);font-weight:400;font-size:11px;
  letter-spacing:.16em;color:#8E857B;margin-top:6px}
.ub-m{display:block;font-family:var(--fude);font-size:15px;color:var(--kin);
  letter-spacing:.14em;margin-top:4px}

/* ── 商品ページの締めの一言 */
.hitokoto{background:linear-gradient(180deg,#1a1a1a,#191512);
  border-top:1px solid rgba(184,134,11,.3);text-align:center;padding:52px 20px}
.hk-t{font-family:var(--fude);font-size:clamp(16px,2.6vw,24px);line-height:2;
  color:#F3E7D2;max-width:44ch;margin:16px auto 0}
.hk-n{font-size:11.5px;letter-spacing:.2em;color:#8E857B;margin-top:18px}


/* ═══════════ 今月の一台（高札）と、男気ジャンケン ═══════════ */

.kousatsu{background:
  radial-gradient(ellipse 60% 50% at 15% 10%,rgba(192,57,43,.30),transparent 62%),
  radial-gradient(ellipse 55% 45% at 88% 85%,rgba(184,134,11,.24),transparent 64%),
  linear-gradient(180deg,#1c1512,#171313);
  border-top:4px solid var(--kin);border-bottom:4px solid var(--kin);
  padding:clamp(44px,6vh,74px) 0}

/* ── 高札の板 */
.kg-fuda{background:linear-gradient(180deg,#2b2119,#221a14);
  border:3px solid var(--kin);border-radius:4px;padding:26px clamp(20px,4vw,42px) 30px;
  position:relative;text-align:center;box-shadow:0 14px 40px rgba(0,0,0,.55)}
.kg-fuda::before,.kg-fuda::after{content:"";position:absolute;top:-14px;width:14px;height:14px;
  border-radius:50%;background:var(--kin);box-shadow:0 0 12px rgba(184,134,11,.7)}
.kg-fuda::before{left:22px}
.kg-fuda::after{right:22px}
.kg-l{font-family:var(--fude);font-size:12.5px;letter-spacing:.24em;color:var(--kin-l)}
.kg-tsuki{font-family:var(--fude);font-size:clamp(30px,5.4vw,52px);color:#fff;
  line-height:1.2;margin-top:10px}
.kg-tsuki span{display:block;font-family:var(--gothic);font-weight:400;font-size:11.5px;
  letter-spacing:.2em;color:#9A9086;margin-top:8px}
.kg-theme{font-family:var(--fude);font-size:clamp(21px,3.6vw,36px);color:var(--kin-l);
  line-height:1.6;margin:18px 0 14px}
.kg-happyo{font-size:13.5px;line-height:2;color:var(--kinari-d);max-width:56ch;margin:0 auto}

/* ── 一台の見せ場 */
.kg-in{display:grid;grid-template-columns:1fr 1.08fr;gap:34px;margin-top:38px;align-items:start}
@media(max-width:960px){.kg-in{grid-template-columns:1fr;gap:24px}}
.kg-img{display:block;position:relative;background:#111;border:3px solid var(--kin);
  border-radius:10px;overflow:hidden;box-shadow:0 16px 44px rgba(0,0,0,.6)}
.kg-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.kg-badge{position:absolute;left:0;top:18px;z-index:2;background:var(--aka);color:#fff;
  font-family:var(--fude);font-size:15px;letter-spacing:.14em;padding:8px 20px 8px 16px;
  clip-path:polygon(0 0,100% 0,calc(100% - 10px) 50%,100% 100%,0 100%)}
.kg-br{font-size:12px;color:var(--kin-l);letter-spacing:.1em}
.kg-n{font-family:var(--fude);font-size:clamp(24px,4vw,38px);color:#fff;line-height:1.4;
  margin:8px 0 16px}
.kg-kojo{font-size:14.5px;line-height:2.1;color:#E4D8C6}

/* ── 高札の中のATK */
.kg-atk{background:rgba(0,0,0,.34);border:1px solid rgba(184,134,11,.4);border-radius:12px;
  padding:20px 22px;margin-top:22px}
.kg-atk-n{font-family:var(--futo);font-size:clamp(34px,5vw,52px);color:var(--kin-l);line-height:1}
.kg-atk-n span{font-family:var(--gothic);font-size:13px;font-weight:700;color:#9A9086;
  margin-left:8px;letter-spacing:.14em}
.kg-atk .bars{margin-top:16px;max-width:100%}
.kg-atk-m{font-size:11.5px;color:#9A9086;line-height:1.9;margin-top:14px}

/* ── 振る舞い価格 */
.kg-price{margin-top:24px;padding:22px 24px;background:rgba(0,0,0,.4);
  border:2px solid var(--aka);border-radius:12px}
.kg-teika{font-size:13px;color:#8E857B}
.kg-teika s{color:#8E857B}
.kg-furu{margin-top:10px;font-family:var(--futo);font-size:clamp(30px,5.2vw,50px);
  color:var(--kin-l);line-height:1.1;letter-spacing:-.01em}
.kg-fl{display:block;font-family:var(--fude);font-size:14px;color:#fff;letter-spacing:.2em;
  margin-bottom:8px}
.kg-furu small{display:block;font-family:var(--gothic);font-size:11.5px;font-weight:400;
  color:#9A9086;margin-top:8px;letter-spacing:.04em}
.kg-note{margin-top:14px;font-size:12.5px;line-height:1.95;color:var(--kinari-d)}
.kg-note b{color:var(--kin-l)}

/* ── 男気ジャンケン */
.janken{background:linear-gradient(180deg,#191512,#1a1a1a);
  border-top:1px solid rgba(184,134,11,.3);text-align:center}
.janken .txt{margin:0 auto 6px}
.jk-te{display:flex;justify-content:center;gap:14px;margin-top:26px;flex-wrap:wrap}
.jk-te button{background:var(--sumi3);border:2px solid var(--line);border-radius:14px;
  padding:18px 26px 14px;cursor:pointer;font-size:38px;line-height:1;color:#fff;
  transition:.15s;font-family:inherit}
.jk-te button span{display:block;font-family:var(--fude);font-size:14px;color:var(--kin-l);
  margin-top:8px;letter-spacing:.14em}
.jk-te button:hover{border-color:var(--kin);transform:translateY(-3px);background:#302a26}
.jk-te button:active{transform:translateY(0)}
.jk-ba{display:flex;justify-content:center;align-items:center;gap:clamp(20px,6vw,60px);
  margin-top:30px}
.jk-l{font-family:var(--fude);font-size:14px;color:var(--kin-l);letter-spacing:.16em}
.jk-h{font-size:clamp(44px,9vw,78px);line-height:1.2;margin-top:6px}
.jk-vs{font-family:var(--fude);font-size:20px;color:#8E857B}
.jk-msg{font-family:var(--fude);font-size:clamp(17px,2.8vw,26px);margin-top:24px;color:#F3E7D2;
  line-height:1.8;min-height:2em}
.jk-msg.kachi{color:var(--kin-l)}
.jk-msg.make{color:#FF9B86}
.jk-msg.aiko{color:#CDC3B4}
.jk-sen{font-size:12.5px;color:#8E857B;margin-top:12px;min-height:1.4em}


/* ═══════════ 値段は、漢数字で書く ═══════════
   「金 七十二万六千円 也」── 昔の値札の書き方。
   算用数字は、小さく添えるだけ。読めなくて困る人が出ないように。 */

.kane{font-family:var(--fude);font-weight:400;letter-spacing:.03em;
  color:var(--kin-l);white-space:nowrap}
.kane i{font-style:normal;font-size:.62em;margin:0 .22em;opacity:.85;letter-spacing:.08em}
.kane i:first-child{margin-left:0}

/* 商品ページの値段 */
.pricebox .p{font-family:var(--fude);font-size:clamp(24px,4vw,40px);letter-spacing:.03em}
.pricebox .p .kane{color:var(--kin-l)}
.pricebox{align-items:center}
.pricebox .tax{font-size:11.5px;color:#8E857B;letter-spacing:.04em}

/* カードの値段 */
.cd .p{font-family:var(--fude);font-size:16.5px;line-height:1.5;letter-spacing:.02em}
.cd .p .kane{color:var(--kin-l)}
.cd .p small.san{display:block;font-family:var(--gothic);font-size:10.5px;font-weight:400;
  color:#7A7168;margin-top:4px;letter-spacing:.02em}

/* 高札の値段 */
.kg-teika .kane{color:#8E857B;font-size:1.15em}
.kg-teika s .kane{text-decoration:line-through;text-decoration-color:rgba(142,133,123,.7)}
.kg-furu{font-family:var(--fude);font-size:clamp(26px,4.6vw,44px);letter-spacing:.03em}
.kg-furu .kane{color:var(--kin-l)}

/* 表の中の値段 */
table.sp .kane{font-size:1.12em}


/* ═══════════ 啖呵売・気分屋・東西の挨拶 ═══════════ */

/* ── 啖呵売。緞帳（どんちょう）の前で見得を切る */
.tanka{background:
  radial-gradient(ellipse 70% 60% at 50% 0%,rgba(192,57,43,.34),transparent 62%),
  linear-gradient(180deg,#20110f,#171313);
  border-top:5px solid var(--kin);border-bottom:5px solid var(--kin);
  padding:clamp(48px,7vh,86px) 0}
.tk-maku{max-width:34em;margin:0 auto;text-align:center;
  background:rgba(0,0,0,.30);border:2px solid rgba(184,134,11,.5);border-radius:6px;
  padding:clamp(28px,5vw,52px) clamp(20px,4vw,44px);position:relative}
.tk-maku::before{content:"";position:absolute;left:0;right:0;top:0;height:10px;
  background:repeating-linear-gradient(90deg,#8B0000 0 26px,#0f2b1c 26px 52px,
    #F5F0E8 52px 78px)}
.tk-yobi{font-family:var(--fude);font-size:clamp(21px,3.6vw,34px);color:var(--kin-l);
  line-height:1.7;margin:14px 0 26px}
.tk-ku{font-family:var(--fude);font-size:clamp(16px,2.5vw,22px);line-height:2.1;
  color:#F3E7D2;margin-bottom:22px}
.tk-ku b{color:var(--kin-l)}
.tk-ku .kaz{font-family:var(--futo);font-size:1.25em;color:#fff;letter-spacing:-.01em}
.tk-mie{padding:16px 0;border-top:1px solid rgba(184,134,11,.4);
  border-bottom:1px solid rgba(184,134,11,.4);font-size:clamp(18px,3vw,27px)}
.tk-mie b{color:#fff}
.tk-ochi{font-size:clamp(19px,3.2vw,29px);color:#fff;margin-top:30px}
.tk-ochi b{display:inline-block;margin-top:8px;color:var(--kin-l);
  font-size:1.25em;border-bottom:3px solid var(--aka);padding-bottom:5px}
.tk-shime{text-align:center;margin-top:30px}
.tk-shime-t{font-family:var(--fude);font-size:15px;color:#9A9086;letter-spacing:.2em;
  margin-top:10px}

/* ── 気分屋の宣言 */
.kibunya{background:linear-gradient(180deg,#161616,#1c1512);
  border-top:1px solid rgba(184,134,11,.3)}
.kb-t{font-family:var(--fude);font-size:clamp(16px,2.5vw,23px);line-height:2.1;
  color:#F3E7D2;max-width:46ch;margin-bottom:24px}
.kb-t b{color:var(--kin-l)}
.kb-hako{background:rgba(0,0,0,.36);border:2px solid var(--aka);border-radius:14px;
  padding:clamp(24px,4vw,40px);margin-top:34px;max-width:52em}
.kb-h{font-family:var(--fude);font-size:15px;color:#9A9086;letter-spacing:.14em}
.kb-b{font-family:var(--fude);font-size:clamp(24px,4.4vw,40px);color:#fff;
  line-height:1.5;margin:10px 0 22px}
.kb-l{list-style:none;display:grid;gap:12px}
.kb-l li{font-size:15px;line-height:1.95;color:var(--kinari-d);padding-left:26px;
  position:relative}
.kb-l li::before{content:"火";position:absolute;left:0;top:2px;font-family:var(--fude);
  font-size:14px;color:var(--aka)}
.kb-l b{color:var(--kin-l);font-family:var(--fude);font-size:1.12em}
.kb-shime{font-family:var(--fude);font-size:clamp(17px,2.8vw,26px);line-height:1.95;
  color:#F3E7D2;margin-top:28px;padding-top:24px;border-top:1px solid rgba(184,134,11,.35)}
.kb-shime b{color:var(--kin-l)}
.kb-rinen{margin-top:24px;font-size:12.5px;color:#8E857B;line-height:1.9}
.kb-rinen span{display:block;font-family:var(--fude);font-size:clamp(18px,3vw,28px);
  color:var(--kin-l);margin-top:8px;letter-spacing:.04em}

/* ── 東西の挨拶 */
.touzai{background:linear-gradient(180deg,#1a1a1a,#171a1c)}
.tz-g{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}
@media(max-width:900px){.tz-g{grid-template-columns:1fr}}
.tz{background:var(--sumi3);border:1px solid var(--line);border-radius:14px;
  padding:28px 26px;border-top:4px solid var(--aka)}
.tz:nth-child(2){border-top-color:var(--kin)}
.tz-l{font-family:var(--fude);font-size:clamp(19px,3vw,26px);color:var(--kin-l);
  letter-spacing:.1em;margin-bottom:18px;padding-bottom:12px;
  border-bottom:1px solid var(--line)}
.tz-t{font-size:14.5px;line-height:2.1;color:var(--kinari-d);margin-bottom:18px}
.tz-t b{color:var(--kin-l);font-weight:700}
.tz-shime{font-family:var(--fude);font-size:clamp(17px,2.8vw,26px);line-height:2;
  color:#F3E7D2;margin-top:34px;text-align:center}
.tz-shime b{color:var(--kin-l)}


/* ═══════════ 木戸（きど）── 見世物小屋の入口と、絵看板 ═══════════ */

.kido{background:
  radial-gradient(ellipse 80% 55% at 50% 0%,rgba(184,134,11,.26),transparent 60%),
  linear-gradient(180deg,#191411,#1a1a1a);
  border-top:5px solid var(--kin);padding:clamp(44px,6vh,78px) 0 clamp(40px,6vh,70px);
  text-align:center}
.kd-tozai{font-family:var(--fude);font-size:clamp(28px,5.4vw,54px);color:var(--kin-l);
  letter-spacing:.16em;line-height:1.3}
.kd-tozai span{font-family:var(--gothic);font-weight:400;font-size:.26em;color:#8E857B;
  letter-spacing:.2em;display:inline-block;margin-left:.3em;vertical-align:.9em}
.kd-h{font-family:var(--fude);font-size:clamp(22px,3.8vw,40px);line-height:1.7;
  color:#fff;margin:22px 0 20px}
.kd-h b{color:var(--kin-l)}
.kd-t{font-size:14.5px;line-height:2.15;color:var(--kinari-d);max-width:52ch;margin:0 auto}
.kd-t b{color:var(--kin-l)}
.kd-kido{display:inline-block;border:2px solid var(--aka);border-radius:6px;
  padding:5px 16px;margin:10px 4px 4px;font-family:var(--fude);font-size:1.16em;
  color:#fff !important;background:rgba(139,0,0,.4)}

/* ── D'STYLEの本気 見出し */
.kd-honki{font-family:var(--fude);font-size:clamp(22px,3.5vw,32px);color:var(--kin-l);
  text-align:center;margin:40px 0 8px;letter-spacing:.08em}
.kd-honki b{color:#fff;text-shadow:0 0 18px rgba(184,134,11,.6)}

/* ── 絵看板 */
.kkb-g{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
.kkb-push{grid-template-columns:repeat(2,1fr);gap:20px}
.kkb-oshi{border-width:4px;box-shadow:0 10px 34px rgba(0,0,0,.6),0 0 24px rgba(184,134,11,.18)}
.kkb-oshi .kkb-n{font-size:clamp(22px,3.2vw,30px)}
.kkb-oshi .kkb-h{font-size:13.5px;color:#B0A89E}
.kkb-g:last-of-type{grid-template-columns:repeat(2,1fr)}
@media(max-width:980px){.kkb-g{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.kkb-g{grid-template-columns:1fr}}
.kkb{display:block;text-align:left;background:linear-gradient(180deg,#241c16,#1d1713);
  border:3px solid var(--kin);border-radius:3px;padding:24px 22px 22px;position:relative;
  transition:.2s;box-shadow:0 10px 30px rgba(0,0,0,.5)}
/* 看板を吊るす釘 */
.kkb::before,.kkb::after{content:"";position:absolute;top:-9px;width:10px;height:10px;
  border-radius:50%;background:var(--kin);box-shadow:0 0 8px rgba(184,134,11,.8)}
.kkb::before{left:16px}
.kkb::after{right:16px}
.kkb:hover{transform:translateY(-4px);border-color:var(--kin-l);
  box-shadow:0 18px 44px rgba(0,0,0,.65)}
.kkb-aka{border-color:var(--aka)}
.kkb-shiro{border-color:#F5F0E8}
.kkb .mon{--mon:52px;margin-bottom:14px}
.kkb-n{display:block;font-family:var(--fude);font-size:clamp(20px,2.8vw,26px);
  color:#fff;line-height:1.4}
.kkb-s{display:block;font-family:var(--fude);font-size:13.5px;color:var(--kin-l);
  margin-top:6px;letter-spacing:.06em}
.kkb-h{display:block;font-size:12.5px;line-height:1.95;color:#9A9086;margin-top:12px;
  padding-top:12px;border-top:1px solid rgba(245,240,232,.14)}
.kkb-a{display:block;margin-top:14px;font-size:12.5px;font-weight:700;color:var(--kin-l)}
.kd-shime{font-family:var(--fude);font-size:clamp(18px,3vw,28px);line-height:1.9;
  color:#F3E7D2;margin-top:34px}
.kd-shime b{color:var(--kin-l)}
.kido .chochin{margin-top:32px;background:transparent;border-color:rgba(184,134,11,.3)}

/* ── 祭りと酒 */
.matsuri{background:
  radial-gradient(ellipse 55% 45% at 15% 15%,rgba(192,57,43,.26),transparent 62%),
  radial-gradient(ellipse 55% 45% at 85% 80%,rgba(184,134,11,.22),transparent 64%),
  linear-gradient(180deg,#1b1412,#1a1a1a);
  border-top:2px solid var(--kin);border-bottom:2px solid var(--kin)}
.mt-g{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:28px}
@media(max-width:1000px){.mt-g{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.mt-g{grid-template-columns:1fr}}
.mt{background:rgba(0,0,0,.3);border:1px solid var(--line);border-radius:12px;padding:18px 18px 20px;
  border-top:3px solid var(--aka)}
.mt:nth-child(even){border-top-color:var(--kin)}
.mt-n{display:block;font-family:var(--mincho);font-weight:900;font-size:17px;color:var(--kin-l)}
.mt-d{display:block;font-size:12.5px;color:#9A9086;line-height:1.85;margin-top:8px}

/* ── 定価と、二つの枠 */
.teika-hero{background:
  radial-gradient(ellipse 65% 55% at 78% 20%,rgba(139,0,0,.42),transparent 62%),
  linear-gradient(180deg,#1c1413,#1a1a1a)}
.tk-hero{background:
  radial-gradient(ellipse 60% 50% at 20% 25%,rgba(184,134,11,.26),transparent 65%),
  linear-gradient(180deg,#1b1815,#1a1a1a)}
.teika-band{background:linear-gradient(180deg,#1d1413,#1a1a1a);
  border-top:2px solid var(--aka-d);border-bottom:2px solid var(--aka-d)}
.waku{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}
@media(max-width:900px){.waku{grid-template-columns:1fr}}
.wk{background:var(--sumi3);border:1px solid var(--line);border-radius:16px;padding:28px 26px;
  position:relative;overflow:hidden}
.wk::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px}
.wk-a::before{background:linear-gradient(180deg,var(--aka),var(--kin-l))}
.wk-b::before{background:linear-gradient(180deg,#6E665E,var(--kin))}
.wk-a{border-color:rgba(192,57,43,.5)}
.wk-lb{font-size:11px;letter-spacing:.24em;color:#8E857B}
.wk-n{font-family:var(--mincho);font-weight:900;font-size:clamp(26px,4vw,38px);
  color:var(--kinari);line-height:1.3;margin-top:6px}
.wk-a .wk-n{color:var(--kin-l)}
.wk-y{font-size:11.5px;letter-spacing:.16em;color:#8E857B;margin-top:4px}
.wk-d{font-size:14px;line-height:1.95;color:var(--kinari-d);margin-top:16px}
.wk-l{list-style:none;margin:18px 0 24px;display:grid;gap:9px}
.wk-l li{font-size:13px;line-height:1.85;color:var(--kinari-d);padding-left:20px;position:relative}
.wk-l li::before{content:"◆";position:absolute;left:0;color:var(--kin);font-size:10px;top:5px}
.wk-l b{color:var(--kin-l)}
.wk .btn{display:inline-block}
.tk-none{background:var(--sumi3);border:1px dashed rgba(245,240,232,.28);border-radius:16px;
  padding:30px 28px;margin-top:24px}
.tk-none-h{font-family:var(--mincho);font-weight:900;font-size:clamp(20px,3vw,28px);
  color:var(--kin-l);margin-bottom:14px}
.tk-none p{font-size:14.5px;line-height:2.05;color:var(--kinari-d)}
.tk-none b{color:var(--kinari)}
.tk-card{background:var(--sumi3);border:1px solid rgba(184,134,11,.4);border-radius:14px;
  padding:24px;margin-top:14px}
.tk-n{font-family:var(--mincho);font-weight:900;font-size:20px;color:var(--kinari)}
.tk-s{font-size:13px;color:#9A9086;line-height:1.9;margin-top:8px}
.tk-p{font-family:var(--mincho);font-weight:900;font-size:22px;color:var(--kin-l);margin-top:10px}

/* ── 本体サイトへ送る */
.hontai{background:
  radial-gradient(ellipse 65% 55% at 80% 20%,rgba(184,134,11,.22),transparent 65%),
  linear-gradient(180deg,#191512,#1a1a1a);border-top:2px solid var(--kin)}
.hontai-g{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
@media(max-width:900px){.hontai-g{grid-template-columns:1fr}}
.hontai-g a{display:block;background:var(--sumi3);border:1px solid rgba(184,134,11,.35);
  border-radius:14px;padding:24px 22px;transition:.2s}
.hontai-g a:hover{border-color:var(--kin-l);transform:translateY(-3px);background:#2f2823}
.hontai-g .t{display:block;font-family:var(--mincho);font-weight:900;font-size:19px;
  color:var(--kinari)}
.hontai-g .d{display:block;font-size:12.5px;color:#9A9086;line-height:1.9;margin-top:10px}
.hontai-g .a{display:block;margin-top:14px;font-size:12.5px;font-weight:700;color:var(--kin-l)}

/* ── 魂の叫び */
.sakebi{background:linear-gradient(180deg,#161010,#1a1a1a);border-top:2px solid var(--aka-d)}
.sakebi.honoo{background:
  radial-gradient(ellipse 70% 60% at 25% 15%,rgba(192,57,43,.30),transparent 62%),
  radial-gradient(ellipse 60% 50% at 85% 85%,rgba(184,134,11,.18),transparent 66%),
  linear-gradient(180deg,#1c1211,#171313)}
.sk{list-style:none;display:grid;gap:14px;margin-top:28px;max-width:72ch}
.sk li{position:relative;padding:16px 20px 16px 30px;font-family:var(--mincho);font-weight:700;
  font-size:clamp(15px,2.1vw,19px);line-height:1.95;color:#F3E7D2;
  background:rgba(0,0,0,.28);border:1px solid var(--line);border-radius:10px}
.sk li::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:4px;border-radius:2px;
  background:linear-gradient(180deg,var(--aka),var(--kin-l))}
.sakebi-line{margin-top:22px;font-family:var(--mincho);font-weight:700;
  font-size:clamp(14.5px,2vw,18px);line-height:1.95;color:#F1DFC0;max-width:60ch;
  padding:14px 18px;background:rgba(139,0,0,.22);border-left:4px solid var(--aka);border-radius:0 8px 8px 0}

/* ── 締め */
.shime{background:linear-gradient(180deg,#1a1a1a,#231b1a);text-align:center}
.shime .txt{margin:0 auto}
.big-rinen{font-family:var(--mincho);font-weight:900;font-size:clamp(19px,3vw,30px);
  color:var(--kin-l);line-height:1.8}

/* ── フッター */
.ft{background:#111;border-top:1px solid var(--line);padding:56px 0 0}
.ft-in{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:34px}
@media(max-width:860px){.ft-in{grid-template-columns:1fr;gap:26px}}
.ft-logo{font-family:var(--mincho);font-weight:900;font-size:21px;color:var(--kin-l);
  margin-bottom:14px}
.ft-h{font-family:var(--mincho);font-weight:700;font-size:15px;color:var(--kinari);
  margin-bottom:12px}
.ft-p{font-size:12px;line-height:2;color:#8E857B}
.ft-links{display:flex;flex-direction:column;gap:7px}
.ft-links a{font-size:13px;color:var(--kinari-d)}
.ft-links a:hover{color:var(--kin-l)}
.sasae .ft-links{flex-direction:row;flex-wrap:wrap;gap:10px;margin-top:20px}
.sasae .ft-links a{background:var(--sumi3);border:1px solid var(--line);border-radius:999px;
  padding:8px 18px;font-size:13px}
.sasae .ft-links a:hover{border-color:var(--kin)}
.ft-cp{text-align:center;font-size:11px;color:#6E665E;padding:30px 0 26px;margin-top:36px;
  border-top:1px solid var(--line)}

/* ── スマホの固定バー */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:80;display:none;
  border-top:2px solid var(--kin)}
.sticky a{flex:1;text-align:center;padding:15px 8px;font-weight:900;font-size:14.5px;
  background:var(--aka);color:#fff}
.sticky a.l{background:var(--kin);color:#1a1a1a}
@media(max-width:880px){.sticky{display:flex}body{padding-bottom:56px}}

/* ════════════════════════════════════════════════
   直し町 ── 昭和の小道具屋

   ★暖簾をくぐった瞬間、景色が変わる。
     祭り（朱と金・墨黒）→ 直し町（藍と飴色）。
     壁も棚の陰も藍。そこにヒノキの建具だけが飴色に光っている。
     何十年も使い込まれて、角が丸くなった木。
     店主の得意は家具作り。だから棚はきっちり組んである。
   ════════════════════════════════════════════════ */

.ns-guchi,.ns-hero,.ns-blk,.ns-tsubuyaki,.ns-hitokoto{
  --ai:#152539;            /* 濃藍・壁 */
  --ai2:#1C3149;           /* 藍・棚の陰 */
  --asagi:#7BA7C7;         /* 浅葱・小さい字 */
  --shiro:#E9E3D5;         /* 藍染めの白抜き */
  --shiro2:#BFB8A8;        /* 本文 */
  --ame:#C89A52;           /* 飴色・ヒノキの建具 */
  --ame-l:#E4BC7E;         /* 飴色の照り */
  --ame-d:#8E6528;         /* 飴色の陰 */
  --beni:#A63A2E;          /* ゴム印の朱 */
}

/* ── 暖簾口（ここをくぐる。景色が変わる境目） */
.ns-guchi{background:var(--ai);padding:0;position:relative;overflow:hidden;
  border-top:4px solid var(--ame-d)}
.ns-guchi::before{content:'';position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(90deg,transparent 0 38px,rgba(0,0,0,.14) 38px 40px)}
.ns-noren-bar{height:14px;background:linear-gradient(180deg,var(--ame-l),var(--ame-d));
  box-shadow:0 3px 8px rgba(0,0,0,.5);position:relative;z-index:2}
.ns-noren{display:flex;justify-content:center;gap:3px;padding:0 16px;position:relative;z-index:1;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.45))}
.ns-nrn{background:linear-gradient(180deg,#1F3B5C 0%,#17304C 55%,#122740 100%);
  width:clamp(58px,9vw,96px);padding:22px 0 34px;text-align:center;
  border-left:1px solid rgba(0,0,0,.35);border-right:1px solid rgba(255,255,255,.05);
  transform-origin:top center;animation:ns-yure 7s ease-in-out infinite}
.ns-nrn:nth-child(2){animation-delay:-1.1s}
.ns-nrn:nth-child(3){animation-delay:-2.4s}
.ns-nrn:nth-child(4){animation-delay:-3.3s}
.ns-nrn:nth-child(5){animation-delay:-4.6s}
.ns-nrn b{display:block;font-family:var(--fude);font-size:clamp(26px,4.4vw,44px);
  color:var(--shiro);line-height:1.35;letter-spacing:.06em;
  text-shadow:0 1px 0 rgba(0,0,0,.4)}
.ns-nrn i{display:block;font-style:normal;font-family:var(--gothic);font-size:9.5px;
  letter-spacing:.2em;color:var(--asagi);margin-top:10px}
.ns-nrn.ns-nrn-mon b{color:var(--ame-l)}
@keyframes ns-yure{0%,100%{transform:rotate(0deg)}50%{transform:rotate(.9deg)}}

/* ── ヒーロー（店内。裸電球がひとつ点いている） */
.ns-hero{background:var(--ai);color:var(--shiro);position:relative;overflow:hidden;
  padding:clamp(46px,7vh,80px) 0 clamp(40px,6vh,70px)}
.ns-hero::before{content:'';position:absolute;top:-150px;left:50%;transform:translateX(-50%);
  width:540px;height:430px;pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(232,188,126,.17),transparent 68%)}
.ns-hero .wrap{position:relative;z-index:1}
.ns-machi-label{font-family:var(--fude);font-size:clamp(34px,5.6vw,54px);
  color:var(--ame-l);letter-spacing:.12em;line-height:1.2}
.ns-machi-label span{display:block;font-family:var(--gothic);font-size:11px;
  letter-spacing:.18em;color:var(--asagi);margin-top:8px}
.ns-eyebrow{font-family:ui-monospace,monospace;font-size:10.5px;letter-spacing:.22em;
  color:var(--asagi);text-transform:uppercase;margin-bottom:6px}
.ns-h1{font-family:var(--mincho);font-weight:900;font-size:clamp(24px,4vw,44px);
  line-height:1.45;color:var(--shiro);margin:14px 0 20px}
.ns-h1 b{color:var(--ame-l)}
.ns-lead{font-size:15px;line-height:2.15;color:var(--shiro2);max-width:62ch}
.ns-lead b{color:var(--ame-l);font-weight:700}

/* ── つぶやき（手を止めずに、ぼそっと） */
.ns-tsubuyaki{background:var(--ai2);padding:clamp(30px,4vh,52px) 0;
  border-top:1px solid rgba(200,154,82,.22);border-bottom:1px solid rgba(200,154,82,.22)}
.ns-tb-t{font-family:var(--mincho);font-size:clamp(15px,2.3vw,20px);
  line-height:2.05;letter-spacing:.05em;font-weight:600;color:var(--shiro);
  border-left:3px solid var(--ame);padding-left:22px;max-width:40ch}
.ns-tb-n{font-size:12px;color:var(--asagi);margin-top:12px;letter-spacing:.1em;padding-left:25px}

/* ── 共通ブロック */
.ns-blk{background:var(--ai);color:var(--shiro);padding:clamp(48px,7vh,80px) 0}
.ns-blk.ns-dark{background:var(--ai2)}
.ns-h2{font-family:var(--mincho);font-weight:900;font-size:clamp(21px,3.2vw,34px);
  line-height:1.5;color:var(--shiro);margin:8px 0 22px}
.ns-h2 b{color:var(--ame-l)}
.ns-txt{font-size:14.5px;line-height:2.15;color:var(--shiro2);max-width:62ch;margin-bottom:22px}
.ns-txt b{color:var(--ame-l);font-weight:700}
.ns-txt-sm{font-size:12.5px;color:var(--asagi);margin-top:16px;line-height:1.9}
.ns-note{font-size:11.5px;line-height:1.9;color:#8C8778;margin-top:16px}
.ns-note a{color:var(--ame-l);text-decoration:underline}

/* ── 困りごと（壁に貼った紙） */
.ns-komari-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:20px}
.ns-komari{background:var(--ai2);border:1px solid rgba(200,154,82,.26);border-radius:3px;
  padding:24px 22px;position:relative}
.ns-komari::before{content:'';position:absolute;top:11px;left:12px;width:7px;height:7px;
  background:var(--beni);border-radius:50%;box-shadow:0 0 0 2px rgba(166,58,46,.25)}
.ns-komari-n{font-family:var(--mincho);font-weight:900;font-size:16px;color:var(--shiro);
  margin-bottom:8px;padding-left:18px}
.ns-komari-t{font-size:13.5px;line-height:2;color:var(--shiro2)}
.ns-komari-t b{color:var(--ame-l);font-weight:700}

/* ── なぜできるか（三段） */
.ns-naze{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin:24px 0}
.ns-nz{background:var(--ai);border:1px solid rgba(200,154,82,.26);border-radius:3px;padding:24px 22px}
.ns-nz-n{font-family:var(--mincho);font-size:30px;color:var(--ame);
  line-height:1;margin-bottom:10px;font-weight:900}
.ns-nz-t{font-family:var(--mincho);font-weight:900;font-size:16px;color:var(--shiro);margin-bottom:8px}
.ns-nz-d{font-size:13.5px;line-height:2;color:var(--shiro2)}
.ns-nz-d b{color:var(--ame-l);font-weight:700}

/* ── 正直の但し書き */
.ns-shoujiki{margin-top:32px;background:rgba(166,58,46,.10);
  border-left:4px solid var(--beni);padding:24px 28px;border-radius:0 3px 3px 0}
.ns-sj-h{font-family:var(--mincho);font-weight:900;font-size:15px;color:#D4756A;margin-bottom:8px}
.ns-sj-t{font-size:14px;line-height:2.1;color:var(--shiro)}
.ns-sj-t b{color:var(--ame-l);font-weight:700}
.ns-sj-n{font-size:12.5px;color:var(--shiro2);margin-top:10px;line-height:1.9}

/* ── 引き出しの壁（百味箪笥。飴色のヒノキで、店主が組んだ） */
.ns-hiki-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:0;
  margin:26px 0;padding:9px;border-radius:3px;
  background:linear-gradient(180deg,#7A5520,#5E4018);
  box-shadow:inset 0 0 0 2px rgba(228,188,126,.28),0 10px 26px rgba(0,0,0,.4)}
.ns-hiki{position:relative;padding:19px 10px 26px;text-align:center;margin:2px;
  background:linear-gradient(180deg,#D2A660 0%,#C2934C 42%,#A87C36 100%);
  border:1px solid #6E4C1C;border-radius:2px;
  box-shadow:inset 0 1px 0 rgba(255,232,190,.5),inset 0 -2px 4px rgba(0,0,0,.25);
  transition:transform .16s,box-shadow .16s,filter .16s}
.ns-hiki::after{content:'';position:absolute;left:50%;bottom:8px;transform:translateX(-50%);
  width:16px;height:9px;border:2px solid #6B4A18;border-top:none;
  border-radius:0 0 14px 14px;box-shadow:0 1px 1px rgba(255,232,190,.35)}
.ns-hiki-label{display:block;font-family:var(--mincho);font-size:13px;font-weight:900;
  color:#3A2708;letter-spacing:.06em;line-height:1.4;
  text-shadow:0 1px 0 rgba(255,236,196,.45)}
.ns-hiki:hover{transform:translateY(2px);filter:brightness(1.09);
  box-shadow:inset 0 1px 0 rgba(255,232,190,.6),0 4px 10px rgba(0,0,0,.35)}

/* ── 部品の棚（ヒノキの棚板に品物が載っている） */
.ns-tana-wall{display:grid;grid-template-columns:repeat(auto-fit,minmax(285px,1fr));
  gap:18px;margin:22px 0}
.ns-tana-box{background:var(--ai2);border:1px solid rgba(200,154,82,.3);
  border-radius:3px;padding:20px 22px 22px;position:relative;
  border-bottom:5px solid var(--ame-d)}
.ns-tana-na{font-family:var(--mincho);font-weight:900;font-size:16.5px;color:var(--shiro);
  margin-bottom:7px}
.ns-tana-doko{display:inline-block;font-size:10.5px;font-weight:700;
  background:var(--ame);color:#2A1D06;padding:2px 11px;border-radius:2px;
  margin-bottom:11px;letter-spacing:.06em}
.ns-tana-t{font-size:13.5px;line-height:2;color:var(--shiro2)}
.ns-tana-t b{color:var(--ame-l);font-weight:700}

/* ── 伝票（ボール紙。ここだけ紙の色にする） */
.ns-memo{background:#E8E0CC;border:1px solid #B9AC8E;border-radius:2px;
  padding:28px 32px;max-width:640px;position:relative;
  box-shadow:3px 5px 16px rgba(0,0,0,.4);
  background-image:repeating-linear-gradient(180deg,transparent 0 33px,rgba(120,100,60,.13) 33px 34px)}
.ns-memo::before{content:'受';position:absolute;top:14px;right:18px;
  width:38px;height:38px;display:grid;place-content:center;
  border:2px solid var(--beni);border-radius:50%;color:var(--beni);
  font-family:var(--mincho);font-weight:900;font-size:17px;opacity:.45;
  transform:rotate(-11deg)}
.ns-memo-h{font-family:var(--fude);font-size:23px;color:#4A3417;
  margin-bottom:14px;letter-spacing:.14em;border-bottom:2px solid #B9AC8E;padding-bottom:8px}
.ns-memo-l{list-style:none;counter-reset:memo}
.ns-memo-l li{counter-increment:memo;padding:11px 0;
  border-bottom:1px dashed #B9AC8E;display:flex;gap:14px;align-items:baseline}
.ns-memo-l li:last-child{border-bottom:none}
.ns-memo-l li::before{content:counter(memo);font-family:var(--mincho);font-weight:900;
  font-size:18px;color:var(--beni);flex:0 0 22px;text-align:center}
.ns-memo-l li b{font-weight:900;color:#2E2109;font-size:14.5px;white-space:nowrap}
.ns-memo-l li span{font-size:13px;line-height:1.9;color:#544428}

/* ── 連絡ボタン */
.ns-renraku{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0 18px}
.ns-btn{display:inline-flex;flex-direction:column;align-items:center;
  padding:18px 32px;border-radius:3px;font-weight:900;font-size:15px;
  text-align:center;min-width:222px;transition:transform .15s,filter .15s}
.ns-btn:hover{transform:translateY(-2px);filter:brightness(1.08)}
.ns-btn small{display:block;font-weight:400;font-size:11px;margin-top:5px;opacity:.85}
.ns-btn-line{background:#06C755;color:#fff}
.ns-btn-tel{background:linear-gradient(180deg,var(--ame),var(--ame-d));color:#2A1D06;
  box-shadow:inset 0 1px 0 rgba(255,232,190,.45)}

/* ── 一言（最後） */
.ns-hitokoto{background:var(--ai2);text-align:center;padding:clamp(48px,7vh,80px) 0;
  border-top:1px solid rgba(200,154,82,.22)}
.ns-hk-t{font-family:var(--mincho);font-size:clamp(15px,2.2vw,20px);line-height:2.05;
  color:var(--shiro);max-width:42ch;margin:20px auto 0}
.ns-hk-t b{color:var(--ame-l)}
.ns-hk-n{font-size:13px;color:var(--asagi);margin-top:14px;letter-spacing:.1em}

@media(prefers-reduced-motion:reduce){.ns-nrn{animation:none}}
@media(max-width:600px){
  .ns-hiki-wall{grid-template-columns:repeat(auto-fill,minmax(98px,1fr))}
  .ns-hiki-label{font-size:11.5px}
  .ns-memo{padding:22px 18px}
  .ns-renraku{flex-direction:column}
  .ns-btn{min-width:0;width:100%}
  .ns-nrn{padding:16px 0 26px}
}

/* ════════════════════════════════════════════════
   直し町の火消し ── 纏（まとい）と刺子（さしこ）

   ★2026-09-09 社長指示「メンテナンスの部屋は昔の消防のイメージ」
     江戸の火消しは、いろは四十八組。町ごとに纏を立て、持ち場を守った。
     煙突掃除は煙道火災を出させない仕事。火消しそのものだ。
     ・纏 … 頭（かしら）＋馬簾（ばれん・白い房）＋柄（え）。全部CSSで組む
     ・刺子 … 藍地に白の細かい格子。火消し半纏の刺し子
     ・写真は使わない（[[feedback-matsuri-wa-css-de-egaku]]）
   ════════════════════════════════════════════════ */

.ns-hikeshi{
  --ai:#152539; --ai2:#1C3149; --asagi:#7BA7C7;
  --shiro:#E9E3D5; --shiro2:#BFB8A8;
  --ame:#C89A52; --ame-l:#E4BC7E; --ame-d:#8E6528; --beni:#A63A2E;
  background-color:#132132;
  /* 刺子（さしこ）── 火消し半纏の刺し縫い */
  background-image:
    repeating-linear-gradient(0deg,transparent 0 15px,rgba(233,227,213,.075) 15px 16px),
    repeating-linear-gradient(90deg,transparent 0 15px,rgba(233,227,213,.075) 15px 16px);
  color:var(--shiro);padding:clamp(52px,8vh,92px) 0;
  border-top:1px solid rgba(200,154,82,.25);
  border-bottom:1px solid rgba(200,154,82,.25)}

/* ── 纏（まとい）の列 */
.ns-matoi-g{display:flex;justify-content:center;align-items:flex-start;
  gap:clamp(10px,3.4vw,46px);flex-wrap:wrap;margin:38px 0 30px}
.ns-matoi{width:clamp(66px,10vw,104px);text-align:center;
  transform-origin:bottom center;animation:ns-matoi-yure 5.6s ease-in-out infinite}
.ns-matoi:nth-child(2){animation-delay:-.9s}
.ns-matoi:nth-child(3){animation-delay:-2.1s}
.ns-matoi:nth-child(4){animation-delay:-3.2s}
@keyframes ns-matoi-yure{0%,100%{transform:rotate(-1.7deg)}50%{transform:rotate(1.7deg)}}

/* 頭（かしら） */
.mt-kashira{display:grid;place-content:center;margin:0 auto;
  width:clamp(46px,6.6vw,64px);height:clamp(46px,6.6vw,64px);
  background:linear-gradient(160deg,#E4BC7E,#C89A52 45%,#8E6528);
  border:3px solid var(--shiro);border-radius:9px;
  font-family:var(--fude);font-size:clamp(21px,3vw,30px);color:#152539;line-height:1;
  box-shadow:0 4px 12px rgba(0,0,0,.55)}
.mt-kashira i{font-style:normal;display:block}
.ns-matoi.mt-maru .mt-kashira{border-radius:50%}
.ns-matoi.mt-hishi .mt-kashira{transform:rotate(45deg);border-radius:5px}
.ns-matoi.mt-hishi .mt-kashira i{transform:rotate(-45deg)}
.ns-matoi.mt-beni .mt-kashira{background:linear-gradient(160deg,#C4574A,#A63A2E 50%,#7A2419);
  color:var(--shiro)}

/* 馬簾（ばれん）── 頭の下に垂れる白い房 */
.mt-baren{display:block;margin:0 auto;
  width:clamp(54px,8vw,80px);height:clamp(52px,8.4vw,84px);
  background:repeating-linear-gradient(90deg,
    var(--shiro) 0 5px,transparent 5px 9px);
  filter:drop-shadow(0 3px 5px rgba(0,0,0,.55))}

/* 柄（え）── 持ち手の棒 */
.mt-e{display:block;width:7px;height:clamp(24px,3.6vw,38px);margin:0 auto;
  background:linear-gradient(90deg,#5E4018,#9A6E2C 40%,#5E4018);
  border-radius:0 0 3px 3px}
.mt-na{display:block;font-family:var(--mincho);font-weight:900;font-size:12.5px;
  color:var(--ame-l);margin-top:9px;letter-spacing:.08em}
.mt-na span{display:block;font-family:var(--gothic);font-weight:400;font-size:10px;
  color:var(--asagi);margin-top:3px;letter-spacing:.04em}

/* ── 梯子（はしご）の仕切り */
.ns-hashigo{height:16px;margin:34px auto 4px;max-width:520px;
  background:
    repeating-linear-gradient(90deg,transparent 0 22px,rgba(200,154,82,.55) 22px 26px),
    linear-gradient(180deg,transparent 0 2px,rgba(200,154,82,.55) 2px 5px,
      transparent 5px 11px,rgba(200,154,82,.55) 11px 14px,transparent 14px)}

.ns-hikeshi .ns-h2{color:var(--shiro)}
.ns-hikeshi .ns-h2 b{color:var(--ame-l)}
.ns-hikeshi .ns-txt{color:var(--shiro2);margin-left:auto;margin-right:auto;text-align:center}
.ns-hikeshi .ns-txt b{color:var(--ame-l)}
.ns-hikeshi-c{text-align:center}
.ns-hikeshi-c .ns-txt{max-width:56ch}
.ns-kumi{font-family:var(--fude);font-size:clamp(15px,2.2vw,19px);color:var(--ame-l);
  letter-spacing:.16em;margin-top:6px}

@media(prefers-reduced-motion:reduce){.ns-matoi{animation:none}}
@media(max-width:600px){
  .ns-matoi{width:clamp(58px,20vw,80px)}
  .ns-matoi-g{gap:12px}
}

/* 扱っていないメーカーの引き出し（最後の一杯・少し古びている） */
.ns-hiki.ns-hiki-hoka{background:linear-gradient(180deg,#BE9758 0%,#AE8544 42%,#94702E 100%)}
.ns-hiki-hoka .ns-hiki-label{font-size:11.5px;line-height:1.5}

/* ヘッダーのLINEボタン（電話をやめてLINE一本にした 2026-09-09）
   理由：電話は一対一で人の手が要る。LINEならDAN君（AI）が受けられる。 */
.hd-line{margin-left:auto;text-align:right;line-height:1.3;padding:7px 16px;border-radius:6px;
  background:#06C755;color:#fff}
.hd-line b{display:block;font-size:14px;font-weight:900;letter-spacing:.04em}
.hd-line small{display:block;font-size:10px;opacity:.9}
.hd-line:hover{filter:brightness(1.08)}
@media(max-width:880px){.hd-line{padding:6px 12px}.hd-line small{display:none}}
/* 固定バーはLINE一本 */
.sticky a.l{width:100%}

/* ════════════════════════════════════════════════
   振る舞いページ ── 祭りの広場
   ★2026-09-09 社長指示
     「振る舞いのページにみんなを呼ぶ。お祭り騒ぎでどんちゃん騒ぎ。
       浴衣のねーちゃんや入れ墨がっつりのおじさんや子供たち。的屋も沢山いる」
     絵看板の一行「この一頁だけの特別仕立て」が、この店の値付けの肝。
     商品ページは正札のまま。振る舞いはこの一頁でだけ起きる祭り。
   ════════════════════════════════════════════════ */

.fr-hero{background:
    radial-gradient(ellipse at 50% 0%,rgba(192,57,43,.28),transparent 62%),
    linear-gradient(180deg,#0F1A2E 0%,var(--sumi) 70%);
  padding:clamp(34px,5vh,64px) 0 clamp(30px,4vh,52px);position:relative;overflow:hidden;
  border-bottom:4px solid var(--kin)}
.fr-eyebrow{font-family:ui-monospace,monospace;font-size:10.5px;letter-spacing:.24em;
  color:var(--kin-l);text-transform:uppercase;text-align:center}

/* 絵看板。この一枚だけ画像を使う */
.fr-kanban{max-width:620px;margin:18px auto 22px;position:relative;
  border:8px solid var(--kin-l);border-radius:4px;
  box-shadow:0 0 0 3px var(--aka-d),0 18px 50px rgba(0,0,0,.75);
  background:var(--sumi)}
.fr-kanban::before,.fr-kanban::after{content:'';position:absolute;left:-8px;right:-8px;height:12px;
  background:repeating-linear-gradient(90deg,var(--aka) 0 16px,var(--kinari) 16px 32px)}
.fr-kanban::before{top:-20px}.fr-kanban::after{bottom:-20px}
.fr-kanban img{width:100%;height:auto;display:block}
.fr-lead{max-width:52ch;margin:34px auto 0;text-align:center;font-size:15px;line-height:2.15;
  color:var(--kinari-d)}
.fr-lead b{color:var(--kin-l)}

/* 提灯の帯 */
.fr-chochin-band{background:var(--aka-d);padding:0;border-bottom:3px solid var(--kin);
  overflow:hidden}
.fr-ch-row,.fr-ch-row2{display:flex;justify-content:center;gap:clamp(8px,2.5vw,28px);
  flex-wrap:wrap;padding:16px 12px}
.fr-ch-row2{padding-top:0;padding-bottom:20px}
.fr-ch,.fr-ch2{display:grid;place-content:center;text-align:center;
  background:radial-gradient(ellipse at 50% 35%,#FFF6DC,#F0DFA8 60%,#D9C078);
  border-top:5px solid #1a1a1a;border-bottom:5px solid #1a1a1a;
  box-shadow:0 6px 16px rgba(0,0,0,.5),inset 0 0 22px rgba(180,140,60,.35);
  animation:fr-yure 4.2s ease-in-out infinite;transform-origin:top center}
.fr-ch{width:clamp(58px,8vw,86px);height:clamp(92px,12vw,128px);border-radius:46%/38%}
.fr-ch2{width:clamp(46px,6vw,64px);height:clamp(70px,9vw,94px);border-radius:46%/38%}
.fr-ch b,.fr-ch2 b{font-family:var(--fude);color:#8B0000;line-height:1.15;
  writing-mode:vertical-rl;text-orientation:upright;letter-spacing:.05em}
.fr-ch b{font-size:clamp(13px,1.8vw,17px)}
.fr-ch2 b{font-size:clamp(11px,1.4vw,13px);color:#6B4226}
.fr-ch:nth-child(2n){animation-delay:-1.4s}
.fr-ch:nth-child(3n){animation-delay:-2.6s}
.fr-ch2:nth-child(2n){animation-delay:-.9s}
.fr-ch2:nth-child(3n){animation-delay:-2.1s}
@keyframes fr-yure{0%,100%{transform:rotate(-2.2deg)}50%{transform:rotate(2.2deg)}}

/* ブロック */
.fr-blk{padding:clamp(48px,7vh,84px) 0;background:var(--sumi)}
.fr-h2{font-family:var(--mincho);font-weight:900;font-size:clamp(23px,3.6vw,40px);
  line-height:1.45;margin:10px 0 22px;text-align:center;color:var(--kinari)}
.fr-h2.big{font-size:clamp(28px,5vw,54px)}
.fr-h2 b{color:var(--kin-l)}
.fr-txt{font-size:15px;line-height:2.15;color:var(--kinari-d);max-width:58ch;
  margin:0 auto 26px;text-align:center}
.fr-txt b{color:var(--kin-l)}

/* 幟（のぼり） */
.fr-nobori-g{display:flex;justify-content:center;gap:clamp(14px,4vw,50px);flex-wrap:wrap;
  margin-bottom:34px}
.fr-nobori{background:linear-gradient(180deg,#1F3B5C,#14273F);
  border:3px solid var(--kinari);border-radius:2px;padding:16px 10px 20px;
  display:flex;flex-direction:column;align-items:center;gap:10px;
  box-shadow:0 8px 22px rgba(0,0,0,.5)}
.fr-nobori p{writing-mode:vertical-rl;text-orientation:upright;
  font-family:var(--fude);font-size:clamp(15px,2vw,20px);color:var(--kinari);
  letter-spacing:.1em;line-height:1.5;max-height:min(46vh,340px)}

/* 決まり 三か条 */
.fr-kime{display:grid;grid-template-columns:repeat(auto-fit,minmax(268px,1fr));gap:18px;
  margin-top:26px}
.fr-k{background:var(--sumi2);border:1px solid rgba(184,134,11,.32);border-radius:4px;
  padding:26px 24px}
.fr-k-n{font-family:var(--mincho);font-size:30px;font-weight:900;color:var(--aka);
  display:block;line-height:1;margin-bottom:10px}
.fr-k-t{font-family:var(--mincho);font-weight:900;font-size:16.5px;color:var(--kinari);
  margin-bottom:8px}
.fr-k-d{font-size:13.5px;line-height:2;color:var(--kinari-d)}
.fr-k-d b{color:var(--kin-l)}

/* 本日の振る舞い */
.fr-honjitsu{background:
    radial-gradient(ellipse at 50% 0%,rgba(184,134,11,.20),transparent 60%),var(--sumi2);
  padding:clamp(48px,7vh,84px) 0;position:relative;overflow:hidden;
  border-top:3px solid var(--kin);border-bottom:3px solid var(--kin)}
.fr-hon{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(20px,3vw,44px);
  align-items:start;margin-top:26px}
@media(max-width:860px){.fr-hon{grid-template-columns:1fr}}
.fr-hon-img{position:relative;display:block;border:4px solid var(--kin);border-radius:4px;
  overflow:hidden;background:#000}
.fr-hon-img img{width:100%;height:auto;display:block}
.fr-hon-badge{position:absolute;top:0;left:0;z-index:2;background:var(--aka);color:#fff;
  font-family:var(--mincho);font-weight:900;font-size:14px;padding:8px 18px;letter-spacing:.1em}
.fr-hon-happyo{font-size:12.5px;color:var(--kin-l);line-height:1.9;margin-bottom:12px;
  padding-left:12px;border-left:3px solid var(--kin)}
.fr-hon-br{font-size:12px;color:#9A9086;letter-spacing:.14em}
.fr-hon-n{font-family:var(--mincho);font-weight:900;font-size:clamp(21px,3vw,31px);
  color:var(--kinari);line-height:1.4;margin:4px 0 14px}
.fr-hon-kojo{font-size:14px;line-height:2.05;color:var(--kinari-d);margin-bottom:20px}
.fr-hon-price{background:rgba(0,0,0,.35);border:1px solid rgba(184,134,11,.4);
  border-radius:4px;padding:20px 22px;margin-bottom:18px}
.fr-hon-teika{font-size:13px;color:#9A9086;margin-bottom:8px}
.fr-hon-teika s{color:#7E756B}
.fr-hon-furu{font-family:var(--mincho);font-weight:900;font-size:clamp(21px,3vw,30px);
  color:var(--kin-l);line-height:1.35}
.fr-fl{display:inline-block;background:var(--aka);color:#fff;font-size:12px;
  padding:3px 12px;border-radius:2px;margin-right:10px;vertical-align:middle;
  font-family:var(--gothic);font-weight:700;letter-spacing:.08em}
.fr-hon-furu small{display:block;font-family:var(--gothic);font-weight:400;font-size:11.5px;
  color:#9A9086;margin-top:6px}
.fr-hon-note{font-size:12.5px;line-height:1.95;color:var(--kinari-d);margin-top:14px;
  padding-top:14px;border-top:1px dashed rgba(184,134,11,.35)}
.fr-hon-note b{color:var(--kin-l)}
.fr-btn{display:inline-flex;flex-direction:column;align-items:center;background:#06C755;
  color:#fff;font-weight:900;font-size:15px;padding:17px 30px;border-radius:4px;
  text-align:center;transition:filter .15s,transform .15s}
.fr-btn:hover{filter:brightness(1.08);transform:translateY(-2px)}
.fr-btn small{font-weight:400;font-size:11px;margin-top:5px;opacity:.9}

/* 十二か月 */
.fr-tsuki-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:14px;
  margin-top:28px}
.fr-tsuki{background:var(--sumi2);border:1px solid rgba(245,240,232,.14);border-radius:4px;
  padding:20px 18px 22px;display:block;transition:border-color .18s,transform .18s}
.fr-tsuki:hover{border-color:var(--kin);transform:translateY(-3px)}
.fr-tsuki.on{background:linear-gradient(180deg,rgba(192,57,43,.24),var(--sumi2));
  border:2px solid var(--kin-l);box-shadow:0 0 0 4px rgba(184,134,11,.16)}
.fr-t-m{display:block;font-family:var(--fude);font-size:23px;color:var(--kin-l);
  line-height:1.2;letter-spacing:.08em}
.fr-t-m small{font-family:var(--gothic);font-size:10.5px;color:#8E857B;margin-left:8px;
  letter-spacing:.06em}
.fr-t-s{display:inline-block;font-size:10px;font-weight:700;padding:2px 9px;border-radius:2px;
  margin:8px 0 10px;letter-spacing:.06em}
.fr-t-sumi{background:rgba(245,240,232,.12);color:#8E857B}
.fr-t-ima{background:var(--aka);color:#fff}
.fr-t-rai{background:rgba(184,134,11,.22);color:var(--kin-l)}
.fr-t-th{display:block;font-family:var(--mincho);font-weight:900;font-size:14.5px;
  color:var(--kinari);line-height:1.6;margin-bottom:10px}
.fr-t-n{display:block;font-size:13px;color:var(--kinari-d);line-height:1.6}
.fr-t-b{display:block;font-size:11px;color:#8E857B;margin-top:4px;letter-spacing:.08em}
.fr-t-go{display:block;margin-top:12px;font-size:12px;font-weight:900;color:var(--kin-l)}

/* 縦札の帯 */
.fr-fuda-band{background:var(--sumi2);padding:clamp(38px,5vh,64px) 0;
  border-top:1px solid rgba(184,134,11,.25);border-bottom:1px solid rgba(184,134,11,.25)}
.fr-fuda-g{display:flex;justify-content:center;gap:clamp(10px,3vw,34px);flex-wrap:wrap}
.fr-fuda{background:#1a1a1a;border:2px solid var(--kinari-d);border-radius:2px;
  padding:14px 8px 18px;display:flex;flex-direction:column;align-items:center;gap:8px}
.fr-fuda p{writing-mode:vertical-rl;text-orientation:upright;font-family:var(--fude);
  font-size:clamp(13px,1.7vw,17px);color:var(--kinari);letter-spacing:.1em;line-height:1.5;
  max-height:min(40vh,290px)}

/* 締め */
.fr-shime{background:var(--sumi);text-align:center;padding:clamp(48px,7vh,84px) 0}
.fr-shime-t{font-family:var(--mincho);font-size:clamp(16px,2.4vw,23px);line-height:2;
  color:var(--kinari);max-width:40ch;margin:20px auto 0}
.fr-shime-t b{color:var(--kin-l)}
.fr-shime-n{font-size:13px;color:#8E857B;margin-top:16px;letter-spacing:.12em}

@media(prefers-reduced-motion:reduce){.fr-ch,.fr-ch2{animation:none}}
@media(max-width:600px){
  .fr-kanban{border-width:5px}
  .fr-nobori p,.fr-fuda p{max-height:44vh}
}

/* ═══════════ CODEX画像（2026-09-09） ═══════════ */

/* ── ヒーロー背景画像 */
.hero-bg{position:relative}
.hero-pic{position:absolute;inset:0;z-index:0}
.hero-bg-img{width:100%;height:100%;object-fit:cover;display:block}
.hero-bg::before{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,
    rgba(20,20,20,.55) 0%,
    rgba(20,20,20,.3) 40%,
    rgba(26,26,26,.7) 80%,
    #1a1a1a 100%)}
.hero-bg .wrap{position:relative;z-index:2}
.hero-bg .fuki,.hero-bg .fuki2,.hero-bg .fuda-g,
.hero-bg .sukashi,.hero-bg .hinoko,.hero-bg .fubuki{z-index:2}

.hero-kanban{display:block;max-width:min(320px,60vw);height:auto;margin:-80px auto 24px;
  filter:drop-shadow(0 8px 32px rgba(0,0,0,.6));aspect-ratio:1200/521;object-fit:contain;
  position:relative;z-index:2}
.hero-bg .fubuki{z-index:3;pointer-events:none}

/* ── 店主の一言（木札背景） */
.tenmoto{position:relative;background:#141414 center/cover no-repeat;
  padding:clamp(40px,6vh,72px) 0;text-align:center;overflow:hidden;
  border-top:1px solid rgba(184,134,11,.25);border-bottom:1px solid rgba(184,134,11,.25)}
.tenmoto::before{content:"";position:absolute;inset:0;
  background:rgba(20,20,20,.45);z-index:0}
.tenmoto .wrap{position:relative;z-index:1}
.tenmoto-t{font-family:var(--fude);
  font-size:clamp(22px,4vw,36px);color:var(--kinari);letter-spacing:.08em;
  text-shadow:0 2px 24px rgba(0,0,0,.8)}
.tenmoto-s{font-size:clamp(13px,1.8vw,16px);line-height:2.1;color:#C8BFB2;
  margin-top:18px;text-shadow:0 1px 12px rgba(0,0,0,.7)}
.tenmoto-s b{color:var(--kin-l)}

/* ── ヒーローの見出しを下寄せ（テキスト削減で空間が広がる分） */
.hero-h-low{padding-top:clamp(30px,6vh,80px)}

/* ── 提灯リンク（トップ → 売場への入口） */
.chochin-uriba{background:#141414;padding:clamp(36px,5vh,60px) 0;text-align:center;
  border-bottom:1px solid rgba(184,134,11,.35)}
.chochin-uriba .eyebrow{margin-bottom:20px}

.chochin-img{display:flex;justify-content:center;gap:clamp(8px,2.5vw,28px);
  padding:16px 10px;flex-wrap:wrap;background:transparent;border:none}
.chochin-img::before{display:none}
.chochin-img img{width:clamp(48px,10vw,80px);height:auto;aspect-ratio:2/3;
  object-fit:cover;border-radius:4px;
  filter:drop-shadow(0 4px 16px rgba(224,140,60,.4));
  transition:transform .25s,filter .25s}
.chochin-img img:hover{transform:scale(1.08);
  filter:drop-shadow(0 6px 24px rgba(224,140,60,.65))}
.chochin-a{text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:6px}
.chochin-a img{cursor:pointer}

/* ── 売場ヒーロー背景画像 */
.chero[style*="background-image"]{background-size:cover;background-position:center 30%;
  position:relative}
.chero[style*="background-image"]::before{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,
    rgba(26,26,26,.5) 0%,
    rgba(26,26,26,.35) 30%,
    rgba(26,26,26,.75) 70%,
    #1a1a1a 100%);z-index:0}
.chero[style*="background-image"] .wrap{position:relative;z-index:1}
.chero-catch{font-family:var(--fude);font-size:clamp(18px,3vw,28px);
  color:var(--kinari);letter-spacing:.06em;margin-bottom:8px;
  text-shadow:0 2px 16px rgba(0,0,0,.6)}

/* ── CTA背景画像 */
.cta-bg{background-size:cover!important;background-position:center!important;position:relative}
.cta-bg::before{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(20,20,20,.7),rgba(20,20,20,.55),rgba(20,20,20,.8));
  z-index:0}
.cta-bg .wrap{position:relative;z-index:1}

/* ── 小物セクション */
.komono-sec{background:#141414;padding:clamp(24px,4vh,48px) 0;text-align:center;
  border-top:1px solid rgba(184,134,11,.18)}
.komono-img{max-width:min(480px,80vw);height:auto;margin:0 auto;
  filter:drop-shadow(0 4px 20px rgba(0,0,0,.5));border-radius:6px}

/* ── 東北の祭り横絵巻 */
.emaki-sec{background-size:cover;background-position:center;position:relative;
  padding:clamp(48px,7vh,84px) 0;border-top:2px solid var(--kin);
  border-bottom:2px solid var(--kin);text-align:center;overflow:hidden}
.emaki-sec::before{content:"";position:absolute;inset:0;
  background:rgba(20,20,20,.65);z-index:0}
.emaki-sec .wrap{position:relative;z-index:1}
.emaki-img{width:100%;max-width:1200px;height:auto;margin:24px auto;display:block;
  border-radius:4px;box-shadow:0 4px 32px rgba(0,0,0,.5)}

/* ── 縄の仕切り（画像） */
.nawa-div{display:block;width:100%;max-width:900px;height:auto;margin:0 auto;
  padding:8px 0;opacity:.7}

/* ── 焼印スタンプ */
.yakiin-stamp{display:block;width:clamp(48px,8vw,72px);height:auto;
  margin:18px auto 0;opacity:.55;filter:sepia(.3)}

/* ── 丸印 */
.maruin-stamp{display:block;width:clamp(56px,10vw,88px);height:auto;
  margin:12px auto;opacity:.6}

/* ── 暖簾画像（通り名の暖簾 / 無地の暖簾） */
.noren-img{display:block;width:100%;max-width:720px;height:auto;margin:0 auto;
  opacity:.85;border-radius:4px}

/* ── 相談の木札 */
.kifuda-img{display:block;max-width:min(400px,70vw);height:auto;margin:0 auto 16px;
  filter:drop-shadow(0 4px 16px rgba(0,0,0,.5))}

/* ── 背景テクスチャ */
.bg-washi{position:relative;background:url(/store/assets/img/bg-washi.webp) center/cover no-repeat}
.bg-washi::after{content:"";position:absolute;inset:0;background:rgba(245,240,232,.82);z-index:0}
.bg-washi .wrap{position:relative;z-index:1}
.bg-washi,.bg-washi h2,.bg-washi p,.bg-washi .oh{color:#1a1a1a}
.bg-washi .eyebrow{color:#6B5B3E}
.bg-washi a{color:#8B4513}

.bg-sashiko{position:relative;background:url(/store/assets/img/bg-sashiko.webp) center/cover no-repeat}
.bg-sashiko::after{content:"";position:absolute;inset:0;background:rgba(20,30,50,.78);z-index:0}
.bg-sashiko .wrap{position:relative;z-index:1}

.bg-mokume{position:relative;background:url(/store/assets/img/bg-mokume.webp) center/cover no-repeat}
.bg-mokume::after{content:"";position:absolute;inset:0;background:rgba(26,26,26,.8);z-index:0}
.bg-mokume .wrap{position:relative;z-index:1}

/* ── 商品ページの小物帯 */
.item-komono{background:#141414;padding:clamp(16px,3vh,32px) 0;text-align:center;
  border-top:1px solid rgba(184,134,11,.15);border-bottom:1px solid rgba(184,134,11,.15)}
.item-komono img{max-width:min(360px,65vw);height:auto;
  filter:drop-shadow(0 3px 16px rgba(0,0,0,.45));border-radius:4px}
.item-komono p{font-family:var(--fude);color:var(--kin-l);
  font-size:clamp(13px,2vw,16px);margin-top:8px;opacity:.7;letter-spacing:.05em}

/* ── 振る舞いヒーロー画像 */
.fr-hero-bg{background-size:cover;background-position:center;position:relative}
.fr-hero-bg::before{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(20,20,20,.5),rgba(20,20,20,.35),rgba(20,20,20,.75));z-index:0}
.fr-hero-bg .wrap{position:relative;z-index:1}

/* ── スマホ対応 */
@media(max-width:768px){
  .hero-kanban{max-width:240px;margin-bottom:16px}
  .chochin-img img{width:clamp(40px,14vw,64px)}
  .emaki-img{border-radius:2px}
  .nawa-div{max-width:100%;padding:4px 0}
  .yakiin-stamp{width:48px}
  .noren-img{max-width:100%}
  .item-komono img{max-width:min(280px,80vw)}
}
