/* ============================================================
   トップ セクション06 — Neovisionが選ばれる理由 (WHY CHOOSE)
   Figma node 243:7974 / 1440px 基準・コンテンツ 1100px
   数値・色・タイポは Figma REST API の実測値
   ============================================================ */

.nv-reasons{
  --nv-en:'Montserrat','Noto Sans JP',sans-serif;
  padding:88px 0 120px;
  background:var(--nv-white);
  overflow:hidden;
}

/* ---- 見出し ---- */
.nv-reasons-head{
  position:relative;
  text-align:center;
  margin-bottom:56px;
}
.nv-reasons-eyebrow{
  display:block;
  font-family:var(--nv-en);
  font-weight:600;
  font-style:italic;
  font-size:96px;
  line-height:1;
  letter-spacing:3.84px;
  color:#E2ECFB;
  user-select:none;
}
.nv-reasons-title{
  position:relative;
  margin:-58px 0 0;
  font-size:40px;
  font-weight:700;
  letter-spacing:1.6px;
  line-height:60px;
  color:var(--nv-text);
}
.nv-reasons-line{
  display:block;
  width:40px;height:5px;
  margin:16px auto 0;
  border-radius:5px;
  background:linear-gradient(90deg,#2A67D4,#4EB1EA);
  position:relative;
}

/* ---- カードグリッド ---- */
.nv-reasons-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:37px 40px;
}
.nv-reasons-card{
  min-height:343px;
  padding:24px 24px 32px;
  background:var(--nv-white);
  border-radius:12px;
  box-shadow:0 12px 32px rgba(31,58,95,.07);
}
.nv-reasons-card:nth-child(5){
  grid-column:1 / -1;
  justify-self:center;
  width:100%;
  max-width:calc(50% - 20px);
}
.nv-reasons-card-top{
  position:relative;
  height:128px;
  margin-bottom:24px;
}
.nv-reasons-num{
  position:absolute;
  left:8px;top:8px;
  font-family:var(--nv-en);
  font-weight:700;
  font-style:italic;
  font-size:40px;
  line-height:1;
  letter-spacing:1.6px;
  color:var(--nv-main);
}
.nv-reasons-icon{
  display:block;
  height:128px;
  width:auto;
  margin:0 auto;
}
.nv-reasons-name{
  margin:0 0 14px;
  font-size:20px;
  line-height:30px;
  font-weight:700;
  letter-spacing:0.8px;
  color:var(--nv-text);
}
.nv-reasons-em{color:var(--nv-main);}
.nv-reasons-body{
  margin:0;
  font-size:14px;
  line-height:21px;
  font-weight:400;
  letter-spacing:0.56px;
  color:var(--nv-text);
}

/* ============================================================
   レスポンシブ
   ============================================================ */
@media (max-width:1024px){
  .nv-reasons{padding:72px 0 96px;}
  .nv-reasons-grid{gap:28px;}
  .nv-reasons-card{padding:24px 22px 30px;min-height:0;}
  .nv-reasons-eyebrow{font-size:64px;}
  .nv-reasons-title{margin-top:-48px;}
}

@media (max-width:767px){
  /* Figma SP (390px 基準・コンテンツ 350px / 左右20pxガターは .nv-inner) */
  .nv-reasons{padding:32px 0 40px;}

  /* ---- 見出し (中央寄せ) ---- */
  .nv-reasons-head{margin-bottom:24px;}
  .nv-reasons-eyebrow{
    font-size:clamp(30px,10.26vw,40px);
    line-height:60px;
    letter-spacing:1.6px;
    color:#EBF6FF;
  }
  .nv-reasons-title{
    margin-top:-28px;
    font-size:clamp(20px,6.15vw,24px);
    line-height:1.5;
    letter-spacing:0.96px;
  }
  .nv-reasons-line{
    width:24px;height:3px;
    margin-top:8px;
  }

  /* ---- カード (1カラム縦積み) ---- */
  .nv-reasons-grid{grid-template-columns:1fr;gap:16px;}
  .nv-reasons-card{
    padding:16px;
    border-radius:8px;
  }
  .nv-reasons-card:nth-child(5){max-width:none;}
  .nv-reasons-card-top{height:112px;margin-bottom:16px;}
  .nv-reasons-num{
    left:0;top:0;
    font-size:32px;
    letter-spacing:1.28px;
  }
  .nv-reasons-icon{height:104px;margin:8px auto 0;}
  .nv-reasons-name{
    margin-bottom:8px;
    font-size:18px;
    line-height:27px;
    letter-spacing:0.72px;
  }
  .nv-reasons-body{
    font-size:14px;
    line-height:21px;
    letter-spacing:0.56px;
  }
}
