/* =========================================================
   Support Section — C案（comp .support / 伴走サポート）
========================================================= */
.support{ background:var(--base); padding:var(--section-gap) 0; }
.sp-top{ display:grid; grid-template-columns:1fr 1fr; gap:6vw; align-items:center; margin-bottom:clamp(48px, 7vw, 70px); }
.sp-top .h-ja{ margin:10px 0 18px; }
.sp-top__lead{ color:var(--ink); font-size:var(--ts-lead); line-height:1.85; margin-bottom:14px; }
.sp-top__desc{ color:var(--ink-body); font-size:var(--ts-body); line-height:1.9; }
.sp-top figure{ aspect-ratio:16/11; overflow:hidden; }
.sp-top figure img{ width:100%; height:100%; object-fit:cover; }

.sp-list{ border-top:1px solid var(--line); }
.sp-item{
  display:grid; grid-template-columns:90px 280px 1fr; gap:40px;
  padding:clamp(32px, 4vw, 42px) 0; border-bottom:1px solid var(--line); align-items:start;
}
.sp-item .sv-num{ font-family:var(--en); font-size:18px; color:var(--accent); letter-spacing:.1em; }
.sp-item h3{
  font-family:var(--serif); font-weight:500; font-size:clamp(17px, 1vw + 14px, 19px);
  letter-spacing:.08em; line-height:1.7; color:var(--ink);
}
.sp-item p{ font-size:var(--ts-body); color:var(--ink-body); line-height:1.9; }

@media(max-width:959px){
  .sp-top{ grid-template-columns:1fr; gap:30px; margin-bottom:40px; }
  .sp-item{ grid-template-columns:1fr; gap:8px; padding:30px 0; }
}
