/* ===== 見やすさとボタン（2026-11-05 本人指示） =====
   全ページの <head> の最後で読む上書き。
   ・灰色の本文を濃く、見出しをゴシックの太字に、本文を少し大きく
   ・ふわっと出る演出をやめ、開いた瞬間に全部見える
   ・主なボタン（.btn-primary と下の固定バー .m-cta）をオレンジ系にして、光を流し、影を脈打たせる
   ・LINEの緑のボタンは LINE の色なので変えない
   ・文言・構成・緑とベージュの色は変えない */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@700;900&display=swap");

:root{
  --sub:#4A5453; /* 旧 #7E8886（ベージュとの差3.1倍）→ 6.7倍 */
  --font-head:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
  --cta:#E4580F; --cta-top:#FF8A3D; --cta-bottom:#D9530E; --cta-deep:#9E3A06;
}
body{font-size:16.5px}
h1,h2,h3,.sec-head h2,.page-hero h1,.hero h1,.top .sec-head h2,.top .final h2,.final h2,.article h2{
  font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif!important;
  font-weight:800!important;letter-spacing:.01em;
}
.top .hero h1,.page-hero h1{font-weight:900!important}

/* ふわっと出る演出をやめる */
.reveal,.reveal.in,
.page-hero .en,.page-hero h1,.page-hero .meta,
.top .hero h1 .ch,.top .hero .hero-sub,.top .hero .lead,.top .hero .cta-row,.top .notif{
  opacity:1!important;transform:none!important;animation:none!important;transition:none!important;
}

/* 主なボタン：オレンジ系＋光＋脈 */
.btn-primary{
  position:relative;overflow:hidden;
  background:linear-gradient(180deg,var(--cta-top) 0%,var(--cta) 60%,var(--cta-bottom) 100%)!important;
  color:#fff!important;text-shadow:0 1px 0 rgba(0,0,0,.12);
  box-shadow:0 5px 0 var(--cta-deep),0 12px 24px rgba(228,88,15,.38),inset 0 1px 0 rgba(255,255,255,.35)!important;
  animation:ctaPulse 2.4s ease-in-out infinite;
}
.btn-primary::after,.m-cta::after{
  content:"";position:absolute;top:-40%;left:-70%;width:40%;height:180%;pointer-events:none;
  background:linear-gradient(100deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.55) 50%,rgba(255,255,255,0) 100%);
  transform:skewX(-20deg);animation:ctaShine 2.8s ease-in-out infinite;
}
.btn-primary:hover{
  background:linear-gradient(180deg,#FF9A55 0%,#EC6418 60%,#E05A12 100%)!important;
  transform:translateY(-2px);
}
.btn-primary:active{
  transform:translateY(4px);
  box-shadow:0 1px 0 var(--cta-deep),0 4px 10px rgba(228,88,15,.3),inset 0 2px 5px rgba(0,0,0,.22)!important;
  animation:none;
}
.m-cta{
  position:fixed;overflow:hidden;
  background:linear-gradient(180deg,#F0661C 0%,var(--cta-bottom) 100%)!important;color:#fff!important;
  box-shadow:0 -4px 16px rgba(0,0,0,.22),inset 0 2px 0 rgba(255,255,255,.28),inset 0 -3px 0 rgba(0,0,0,.2)!important;
}
.m-cta:active{background:linear-gradient(180deg,var(--cta-bottom) 0%,#C2450A 100%)!important}
.btn-outline{border-color:rgba(255,255,255,.85)!important;color:#fff!important}
@keyframes ctaShine{0%{left:-70%}55%{left:140%}100%{left:140%}}
@keyframes ctaPulse{
  0%,100%{box-shadow:0 5px 0 var(--cta-deep),0 12px 24px rgba(228,88,15,.38),inset 0 1px 0 rgba(255,255,255,.35)}
  50%{box-shadow:0 5px 0 var(--cta-deep),0 12px 24px rgba(228,88,15,.38),0 0 0 9px rgba(228,88,15,.16),inset 0 1px 0 rgba(255,255,255,.35)}
}
@media (prefers-reduced-motion:reduce){
  .btn-primary,.btn-primary::after,.m-cta::after{animation:none!important}
}

/* ===== 背景の奥行きとカードの形（2026-11-05 本人指示：ベタ塗り感をなくす） =====
   方眼の薄い線を背景に敷き、白い箱に細い枠とずらした影を付ける。色は今の緑とベージュのまま */
:root{
  --grid-ink:rgba(22,59,60,.075); --grid-ink-soft:rgba(22,59,60,.045); --grid-light:rgba(255,255,255,.055);
}
body{
  background-color:var(--bg);
  background-image:linear-gradient(var(--grid-ink) 1px,transparent 1px),linear-gradient(90deg,var(--grid-ink) 1px,transparent 1px);
  background-size:28px 28px;
}
section[style*="--beige"]{
  background-color:var(--beige)!important;
  background-image:linear-gradient(var(--grid-ink) 1px,transparent 1px),linear-gradient(90deg,var(--grid-ink) 1px,transparent 1px)!important;
  background-size:28px 28px!important;
}
section[style*="--panel"]{
  background-color:var(--panel)!important;
  background-image:linear-gradient(var(--grid-ink-soft) 1px,transparent 1px),linear-gradient(90deg,var(--grid-ink-soft) 1px,transparent 1px)!important;
  background-size:28px 28px!important;
}
.page-hero,.top .hero{
  background-image:linear-gradient(var(--grid-light) 1px,transparent 1px),linear-gradient(90deg,var(--grid-light) 1px,transparent 1px),linear-gradient(155deg,var(--ink),var(--ink-2))!important;
  background-size:28px 28px,28px 28px,100% 100%!important;
}
.card,.worry,.svc,.svc-detail,.ai-box,.ai-note,.cat,.plan,.note,.res,.strength-list .item,.col,.way,.flow li,.worry-note,.check,.change li,.why,.flow .step,.pcard,.assure li,.faq details,.position,.do,.why li,.ex li,.loop,.ls,.linecta,.otherad,.komon-limit,.seminar-cta,.other-list li,.ai-grp,.lbox,.nbox,.cl,.steps li{
  background-color:#fff!important;
  border:1.5px solid rgba(22,59,60,.22)!important;
  box-shadow:5px 5px 0 rgba(22,59,60,.10)!important;
}
.cl.pin{border-color:var(--rose-d)!important;box-shadow:5px 5px 0 rgba(165,103,79,.22)!important;background:linear-gradient(135deg,#FFF8F4,#fff)!important}
.cl:hover{box-shadow:7px 7px 0 rgba(165,103,79,.18)!important}
