.challenge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#dfe5eb;border:1px solid #dfe5eb}.challenge-card{display:flex;flex-direction:column;align-items:flex-start;background:#fff;padding:32px;min-height:285px;border-top:3px solid #07999b;transition:background .2s}.challenge-card:nth-child(3n+2){border-top-color:#ba9853}.challenge-card:nth-child(3n){border-top-color:#7d89aa}.challenge-card:hover{background:#edf6f5}.challenge-card svg{width:36px;height:36px;stroke:#078e93;fill:none;stroke-width:1.7;margin-bottom:24px}.challenge-card:nth-child(even) svg{stroke:#ad842f}.challenge-card h3{font-size:19px}.challenge-card p{font-size:13px;line-height:1.9}.challenge-card>span{color:#07878b;font-size:12px;font-weight:700;margin-top:auto;padding-top:16px}.selector{padding-top:60px;padding-bottom:65px}.detail-intro{padding-top:75px;padding-bottom:10px}.challenge-detail{padding-top:40px;padding-bottom:45px;border-bottom:1px solid #dce3e9}.detail-heading{display:flex;gap:28px;align-items:flex-start}.detail-heading .step-no{padding-top:5px;min-width:55px}.detail-heading h2{font-size:29px;margin-top:0;margin-bottom:25px}.detail-body{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding-left:83px}.description{font-size:15px}.scene{font-size:12px;border-left:2px solid #b18b3e;padding-left:15px}.scene b{display:block;color:#252e54;font-size:10px;margin-bottom:5px}.checklist h3{font-size:14px;margin-bottom:8px}.checklist ul,.approach ul{list-style:none;padding:0;margin:0;font-size:13px}.checklist li,.approach li{padding:7px 0 7px 22px;position:relative}.checklist li:before{content:'✓';position:absolute;left:0;color:#07878b}.approach{background:#f1f6f6;padding:28px 30px}.approach h3{font-size:18px}.approach li:before{content:'＋';position:absolute;left:0;color:#07878b}.approach .button{margin-top:23px}.definition{margin:25px 0 0 83px;color:#657087;font-size:12px;line-height:1.85;padding:15px 20px;background:#f7f8fa}.back{display:block;text-align:right;color:#07878b;font-size:11px;margin-top:16px}.consult .actions{margin-top:28px}@media(max-width:900px){.challenge-card{padding:24px;min-height:300px}.detail-body{gap:25px;padding-left:0}.definition{margin-left:0}}@media(max-width:640px){.challenge-grid{grid-template-columns:1fr}.challenge-card{min-height:0;padding:25px}.challenge-card svg{margin-bottom:18px}.challenge-card h3{font-size:19px}.challenge-card>span{padding-top:5px}.detail-intro{padding-top:50px}.detail-heading{gap:15px}.detail-heading .step-no{min-width:36px}.detail-heading h2{font-size:23px}.detail-body{grid-template-columns:1fr;gap:18px}.approach{padding:25px}.challenge-detail{padding-top:30px;padding-bottom:30px}.consult .actions{flex-direction:column;align-items:flex-start}}
/* ── 2026-10-20　見出し横の連番（01〜06）を外したことへの追従 ──
   番号は幅55px＋すき間28px＝83pxを占めていた。
   その前提で .detail-body と .definition に 83px の字下げが入っており、
   番号だけ消すと**見出しは左端・本文だけ83px右**という食い違いが出ていた
   （900pxより広い画面だけで起きる。検証で発見）。 */
.detail-body{padding-left:0}
.definition{margin-left:0}

/* ── FVに画像を敷く（2026-10-24）──
   challenges.css は support.css の後ろで読まれるので、
   ここに書いた .hero の指定はこのページだけに効く。 */
.hero{position:relative;isolation:isolate;overflow:hidden;
      min-height:600px;display:flex;align-items:center;padding:0}
.hero>.wrap{position:relative;z-index:1;width:100%}
.hero img.hero-photo{position:absolute;inset:0;display:block;width:100%;height:100%;
  max-width:none;object-fit:cover;object-position:center center;z-index:-2}
/* 暗くする処理は画像側に焼き込み済み。ここは文字を読みやすくする分だけ */
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:
  linear-gradient(0deg,rgba(18,26,48,.58) 0%,rgba(18,26,48,.28) 14%,rgba(18,26,48,0) 32%),
  linear-gradient(90deg,rgba(18,26,48,.7) 0%,rgba(18,26,48,.64) 28%,rgba(18,26,48,.4) 46%,
  rgba(18,26,48,.12) 60%,rgba(18,26,48,0) 74%)}
.hero>.wrap>div{max-width:700px}
@media(max-width:860px){
  .hero{min-height:500px}
  .hero img.hero-photo{object-position:64% center}
  .hero::after{background:
    linear-gradient(180deg,rgba(18,26,48,.76) 0%,rgba(18,26,48,.68) 45%,rgba(18,26,48,.62) 100%)}
  .hero>.wrap>div{max-width:none}
}
