/* 珠代 LP 共通スタイル — 和紙×墨×茜 */
:root{
  --washi:#F5F1E7;
  --washi-deep:#EDE6D6;
  --sumi:#2B2622;
  --sumi-soft:#514a42;
  --akane:#A93B29;
  --akane-deep:#8E3021;
  --rule:#D9CFBB;
  --maxw:480px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  background:var(--washi);
  word-break:normal;overflow-wrap:break-word;line-break:strict;
  color:var(--sumi);
  font-family:"Shippori Mincho B1","Shippori Mincho",'Hiragino Mincho ProN','Yu Mincho',serif;
  line-height:2.05;
  font-size:16px;
  letter-spacing:.03em;
  padding-bottom:84px;
}
.wrap{max-width:var(--maxw);margin:0 auto;background:var(--washi);
  box-shadow:0 0 40px rgba(43,38,34,.07)}
section{padding:44px 26px}
p{margin:0 0 1.15em}
p:last-child{margin-bottom:0}
.sm{font-size:13px;line-height:1.9;color:var(--sumi-soft)}
.center{text-align:center}

/* ── ヒーロー ── */
.hero{position:relative;padding:0;overflow:hidden}
.hero__bg{width:100%;height:300px;object-fit:cover;object-position:50% 42%;display:block;filter:saturate(.72) brightness(1.04)}
.hero__veil{position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(245,241,231,.42) 0%,rgba(245,241,231,.80) 55%,var(--washi) 100%)}
.hero__body{position:relative;padding:0 26px 34px;margin-top:-92px;text-align:center}
.ava{width:96px;height:96px;border-radius:50%;object-fit:cover;
  border:3px solid var(--washi);box-shadow:0 4px 18px rgba(43,38,34,.22);margin-bottom:16px}
.lead{font-size:27px;line-height:1.62;font-weight:600;letter-spacing:.02em;margin-bottom:14px}
.name{font-size:15px;letter-spacing:.16em;color:var(--sumi-soft);margin-bottom:20px}
.name b{font-size:18px;letter-spacing:.1em;color:var(--sumi);font-weight:600}
.hero__note{font-size:14.5px;line-height:1.95;color:var(--sumi-soft)}

/* ── 罫（赤い糸） ── */
.thread{display:block;width:100%;height:34px;margin:0}
.thread svg{display:block;width:100%;height:100%}

/* ── 教義 ── */
.creed{background:var(--washi-deep);text-align:center;position:relative;overflow:hidden}
.creed::before{content:"";position:absolute;inset:0;
  background:url(img/bg_shimenawa.jpg) 60% 38%/cover no-repeat;
  opacity:.20;filter:grayscale(.30) contrast(.94)}
.creed::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,var(--washi-deep) 0%,rgba(237,230,214,.30) 26%,rgba(237,230,214,.30) 74%,var(--washi-deep) 100%)}
.creed > *{position:relative;z-index:1}
.creed .big{font-size:21px;line-height:1.85;font-weight:600}
.creed .akane{color:var(--akane)}

/* ── 見出し ── */
h2{font-size:17px;letter-spacing:.1em;font-weight:600;text-align:center;margin-bottom:26px;
  color:var(--sumi)}
h2 span{display:inline-block;border-bottom:1px solid var(--rule);padding-bottom:9px}

/* ── 悩みリスト ── */
.pains{list-style:none}
.pains li{position:relative;padding:11px 0 11px 22px;border-bottom:1px dashed var(--rule);
  font-size:15.5px;line-height:1.85}
.pains li:last-child{border-bottom:none}
.pains li::before{content:"";position:absolute;left:2px;top:22px;width:7px;height:7px;
  border-radius:50%;background:var(--akane);opacity:.75}

/* ── CTA ── */
.cta{text-align:center;padding-top:8px}
.cta__lead{font-size:15.5px;line-height:1.95;margin-bottom:20px}
.btn{display:block;text-align:center;background:var(--akane);color:#fff;text-decoration:none;
  padding:19px 16px 17px;border-radius:6px;font-size:19px;font-weight:600;letter-spacing:.05em;
  box-shadow:0 4px 0 var(--akane-deep);transition:transform .12s,box-shadow .12s}
.btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--akane-deep)}
.btn__sub{display:block;font-size:12px;font-weight:400;letter-spacing:.08em;opacity:.9;margin-top:5px}
.cta__notes{margin-top:16px;text-align:left}
.cta__notes p{margin-bottom:.5em}

/* ── 声 ── */
.voice{margin-bottom:26px}
.voice:last-child{margin-bottom:0}
.voice__ttl{font-size:14.5px;font-weight:600;line-height:1.7;margin-bottom:10px;letter-spacing:.04em}
.voice__ttl em{font-style:normal;color:var(--sumi-soft);font-size:13px;font-weight:400;
  display:block;letter-spacing:.1em}
.voice img{width:100%;display:block;border-radius:4px}

/* ── 安心 ── */
.safe{background:var(--washi-deep)}
.safe ul{list-style:none;margin-bottom:22px}
.safe li{position:relative;padding:8px 0 8px 20px;font-size:14.5px;line-height:1.85}
.safe li::before{content:"・";position:absolute;left:2px;color:var(--akane)}
.safe .quiet{font-size:15px;line-height:2;text-align:center;
  border-top:1px solid var(--rule);padding-top:22px}

/* ── 結び ── */
.closing{text-align:center}
.closing .line{font-size:16.5px;line-height:2.05;margin-bottom:26px}

/* ── 追従CTA ── */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:50;
  background:rgba(245,241,231,.94);backdrop-filter:blur(6px);
  border-top:1px solid var(--rule);padding:10px 14px 12px;
  transform:translateY(110%);transition:transform .28s ease}
.sticky.on{transform:translateY(0)}
.sticky__in{max-width:var(--maxw);margin:0 auto}
.sticky .btn{padding:15px 12px 13px;font-size:17px;box-shadow:0 3px 0 var(--akane-deep)}

/* ── フッター ── */
footer{padding:30px 26px 40px;border-top:1px solid var(--rule);text-align:center}
footer p{font-size:11.5px;line-height:1.95;color:var(--sumi-soft);margin-bottom:.4em}

@media (min-width:520px){ body{font-size:16.5px} }


/* ── 人物カット ── */
.figure{margin:0;padding:0}
.figure img{display:block}
.figure img:not([class]){width:100%}
.figure figcaption{font-size:13px;line-height:1.9;color:var(--sumi-soft);
  text-align:center;padding:14px 26px 0}
.portrait{position:relative}
.portrait img{width:100%;display:block}
.portrait__cap{position:absolute;left:0;right:0;bottom:0;padding:150px 26px 26px;
  background:linear-gradient(180deg,rgba(245,241,231,0) 0%,rgba(245,241,231,.55) 34%,rgba(245,241,231,.90) 62%,var(--washi) 92%);
  text-align:center;font-size:16px;line-height:1.95}
.portrait__cap b{font-size:20px;letter-spacing:.03em}

/* 声（文字版） */
.qcard{background:var(--washi-deep);border-left:3px solid var(--akane);
  padding:22px 20px;margin-bottom:20px}
.qcard:last-child{margin-bottom:0}
.qcard__who{font-size:13px;letter-spacing:.1em;color:var(--sumi-soft);margin-bottom:6px}
.qcard__ttl{font-size:15.5px;font-weight:600;line-height:1.7;margin-bottom:12px}
.qcard__body{font-size:14.5px;line-height:2.0}
.qcard__body p{margin-bottom:.9em}


/* ── 画像の使い分け ──
   full  : 全幅・断ち落とし（ヒーロー／人物／結び＝ページの節目）
   inset : 左右に余白＋角丸（本文中に「置かれた写真」＝説明の補助）
   band  : 細い帯（区切り）
   bg    : 文字の背景に薄く（世界観の通奏低音）                        */
.img-full{width:100%;display:block;margin:0}
.img-inset{width:calc(100% - 52px);margin:0 auto;display:block;border-radius:3px}
.img-band{width:100%;display:block;margin:0}
.cap{font-size:12.5px;line-height:1.85;color:var(--sumi-soft);text-align:center;
  padding:10px 26px 0}

