/* about 固有の変数 */
:root{
  --img-phead:url("../img/p-dark.webp");
}


/* ===== 下層ページ共通 ===== */
.phead{background:var(--deep);color:#fff;position:relative;overflow:hidden;}
.phead::before{content:"";position:absolute;inset:0;background-image:var(--img-phead);background-size:cover;background-position:center 38%;opacity:.3;}
.phead::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,24,48,.55) 0%,rgba(15,24,48,.82) 100%);}
.phead-in{position:relative;z-index:2;max-width:var(--col);margin:0 auto;padding:54px var(--pad) 50px;}
.crumb{font-size:11.5px;font-family:var(--fu);letter-spacing:.04em;opacity:.8;margin:0 0 20px;}
.crumb a{text-decoration:none;opacity:.85;}
.crumb a:hover{opacity:1;text-decoration:underline;}
.crumb span{margin:0 8px;opacity:.55;}
.phead .eyebrow{color:var(--blue-l);margin:0 0 8px;}
.phead h1{font-size:clamp(28px,4.4vw,44px);font-weight:900;letter-spacing:.06em;line-height:1.4;margin:0 0 16px;}
.phead p.pl{font-size:14.5px;line-height:2;margin:0;max-width:680px;opacity:.94;}

/* 定義文 */
.defbox{max-width:780px;margin:0 auto;text-align:center;}
.defbox p.big{font-size:clamp(17px,2.4vw,22px);font-weight:900;line-height:2;margin:0 0 18px;letter-spacing:.02em;}
.defbox p.big b{color:var(--navy);border-bottom:3px solid var(--blue-l);padding-bottom:2px;}
.defbox p.sub{font-size:14px;line-height:2.05;color:var(--muted);margin:0;}

/* 3要素 */
.tri{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:8px;}
.tcard{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 4px 16px rgba(30,50,90,.07);}
.tcard .im{display:block;width:100%;aspect-ratio:880/520;background-size:cover;background-position:center;}
.tcard .bd{padding:22px 20px 24px;}
.tcard .en{font-family:var(--fu);font-size:10.5px;font-weight:800;letter-spacing:.2em;color:var(--blue);margin:0 0 6px;}
.tcard h3{font-size:19px;font-weight:900;margin:0 0 10px;letter-spacing:.02em;}
.tcard p{font-size:13.5px;line-height:1.95;color:var(--muted);margin:0;}

/* マシン解説 */
.mflex{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;}
.mflex>*{min-width:0;}
.mflex .ph img{width:100%;border-radius:12px;}
.mflex h3{font-size:clamp(19px,2.6vw,24px);font-weight:900;margin:0 0 14px;line-height:1.55;}
.mflex p{font-size:14px;line-height:2.05;margin:0 0 14px;}
.mflex p:last-child{margin-bottom:0;}
.mflex strong{color:var(--navy);}

/* 比較表 */
.cwrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:12px;background:var(--surface);}
.shint{display:none;font-size:11.5px;color:var(--muted);text-align:right;margin:0 0 7px;}
@media (max-width:900px){.shint{display:block;}}
table.cmp{border-collapse:collapse;width:100%;min-width:640px;font-size:13.5px;}
table.cmp th,table.cmp td{padding:14px 15px;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle;}
table.cmp thead th{background:var(--navy);color:#fff;font-size:12.5px;font-weight:900;border-bottom:0;line-height:1.5;}
table.cmp thead th.me{background:var(--blue);}
table.cmp thead th.me small{display:block;font-size:10px;font-weight:700;opacity:.9;margin-top:3px;}
table.cmp tbody th{text-align:left;font-weight:900;font-size:13px;white-space:nowrap;background:var(--frame);}
table.cmp td.me{background:#F2F7FE;font-weight:800;color:var(--navy);}
table.cmp tbody tr:last-child th,table.cmp tbody tr:last-child td{border-bottom:0;}
table.cmp td small{display:block;font-size:11px;font-weight:500;color:var(--muted);margin-top:3px;line-height:1.6;}

/* 数字 */
.nums{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.ncard{border:1px solid var(--line);border-radius:12px;padding:24px 16px;text-align:center;background:var(--surface);}
.ncard b{display:block;font-family:var(--fu);font-size:clamp(28px,4vw,40px);font-weight:800;color:var(--navy);line-height:1.15;letter-spacing:-.01em;}
.ncard b i{font-style:normal;font-size:.42em;font-weight:800;margin-left:2px;font-family:var(--fd);}
.ncard span{display:block;font-size:12px;font-weight:700;margin-top:8px;}
.ncard small{display:block;font-size:11px;color:var(--muted);margin-top:4px;line-height:1.6;}

/* 女性専用 */
.wbox{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center;}
.wbox>*{min-width:0;}
.wbox .ph img{width:100%;border-radius:12px;}
.wlist{margin:16px 0 0;padding:0;list-style:none;}
.wlist li{font-size:14px;font-weight:700;line-height:1.75;padding:9px 0 9px 28px;position:relative;border-top:1px dashed var(--line);}
.wlist li:first-child{border-top:none;}
.wlist li::before{content:"";position:absolute;left:3px;top:17px;width:11px;height:6px;border-left:2.4px solid var(--blue);border-bottom:2.4px solid var(--blue);transform:rotate(-45deg);}

/* 最終CTA */
.fin{background:var(--deep);color:#fff;text-align:center;}
.fin h2{color:#fff;}
.fin p{opacity:.9;font-size:14px;line-height:2;}
.fin .fb{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--coral);color:#fff;text-decoration:none;font-weight:900;font-size:16px;border-radius:99px;padding:17px 44px;margin-top:22px;box-shadow:0 8px 22px rgba(239,136,128,.4);transition:transform .2s,box-shadow .2s;}
.fin .fb:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(239,136,128,.5);}
.fin .sub{display:block;margin-top:14px;font-size:12.5px;opacity:.75;}
.fin .sub a{color:var(--blue-l);font-weight:700;}

@media (max-width:900px){
  .phead-in{padding:34px var(--pad) 34px;}
  .crumb{margin-bottom:14px;}
  .tri,.mflex,.wbox{grid-template-columns:1fr;}
  .tri{gap:14px;}
  .mflex,.wbox{gap:22px;}
  .nums{grid-template-columns:1fr 1fr;gap:12px;}
  .ncard{padding:18px 12px;}
  .fin .fb{font-size:15px;padding:16px 30px;width:100%;box-sizing:border-box;}
}

