
body.abe-light-page-v2 .abe-light-reg{
  --navy:#153f49;
  --ink:#21383f;
  --muted:#62777f;
  --line:#d8e5e9;
  --soft:#edf6f8;
  --alt:#f6f9fa;
  --shadow:0 8px 24px rgba(21,63,73,.055);
  display:block!important;
  width:100%!important;
  color:var(--ink)!important;
  font-family:"Noto Sans JP",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  line-height:1.82!important;
}
body.abe-light-page-v2 .abe-light-reg *,
body.abe-light-page-v2 .abe-light-reg *::before,
body.abe-light-page-v2 .abe-light-reg *::after{box-sizing:border-box!important}
body.abe-light-page-v2 .abe-light-reg a{text-decoration:none!important}
body.abe-light-page-v2 .abe-light-reg .wrap{
  width:100%!important;max-width:1120px!important;margin:0 auto!important;padding:0 20px!important;
}
body.abe-light-page-v2 .abe-light-reg .eyebrow{
  margin:0 0 8px!important;color:#547681!important;font-size:12px!important;font-weight:800!important;letter-spacing:.14em!important;
}
body.abe-light-page-v2 .abe-light-reg .section-head{margin:0 0 22px!important}
body.abe-light-page-v2 .abe-light-reg .section-head h2{
  margin:0!important;color:var(--navy)!important;font-size:28px!important;line-height:1.45!important;
}
body.abe-light-page-v2 .abe-light-reg .section-head p{
  max-width:900px!important;margin:8px 0 0!important;color:var(--muted)!important;
}

/* HERO */
body.abe-light-page-v2 .abe-light-reg .hero-section{padding:28px 0 18px!important;background:#fff!important}
body.abe-light-page-v2 .abe-light-reg .hero-inner{
  padding:44px 48px!important;border:1px solid #d6e4e8!important;border-radius:22px!important;
  background:linear-gradient(135deg,#edf7f9 0%,#f8fbfc 100%)!important;box-shadow:var(--shadow)!important;
}
body.abe-light-page-v2 .abe-light-reg h1{
  max-width:820px!important;margin:0!important;color:var(--navy)!important;font-size:clamp(32px,4vw,46px)!important;line-height:1.38!important;
}
body.abe-light-page-v2 .abe-light-reg .lead{
  max-width:850px!important;margin:15px 0 0!important;color:#536c74!important;font-size:16px!important;line-height:1.9!important;
}
body.abe-light-page-v2 .abe-light-reg .chips{
  display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:18px 0 0!important;
}
body.abe-light-page-v2 .abe-light-reg .chips span{
  display:inline-flex!important;width:auto!important;margin:0!important;padding:7px 12px!important;
  border:1px solid #d3e2e6!important;border-radius:999px!important;background:#fff!important;
  color:#355a64!important;font-size:13px!important;font-weight:700!important;
}
body.abe-light-page-v2 .abe-light-reg .hero-actions{
  display:flex!important;flex-wrap:wrap!important;gap:12px!important;margin:22px 0 0!important;
}
body.abe-light-page-v2 .abe-light-reg .btn{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:54px!important;
  padding:12px 20px!important;border-radius:13px!important;font-size:15px!important;font-weight:800!important;
}
body.abe-light-page-v2 .abe-light-reg .btn-primary{
  background:var(--navy)!important;border:1px solid var(--navy)!important;color:#fff!important;
}
body.abe-light-page-v2 .abe-light-reg .btn-secondary{
  background:#fff!important;border:1px solid #a7bcc3!important;color:var(--navy)!important;
}

/* SECTION RHYTHM — automobile-fee と同じテンポ */
body.abe-light-page-v2 .abe-light-reg .price-section{padding:44px 0 50px!important;background:#fff!important}
body.abe-light-page-v2 .abe-light-reg .navi-section{padding:38px 0!important;background:var(--soft)!important}
body.abe-light-page-v2 .abe-light-reg .service-section{padding:48px 0 52px!important;background:#fff!important}
body.abe-light-page-v2 .abe-light-reg .documents-section{padding:52px 0 56px!important;background:var(--alt)!important;border-top:1px solid #e4ecef!important}
body.abe-light-page-v2 .abe-light-reg .area-section{padding:50px 0 54px!important;background:#fff!important}
body.abe-light-page-v2 .abe-light-reg .flow-section{padding:50px 0 56px!important;background:var(--soft)!important}
body.abe-light-page-v2 .abe-light-reg .fees-section{padding:48px 0 52px!important;background:#fff!important}
body.abe-light-page-v2 .abe-light-reg .shipping-section{padding:42px 0 48px!important;background:var(--alt)!important}

/* PRICE */
body.abe-light-page-v2 .abe-light-reg .price-grid{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;
}
body.abe-light-page-v2 .abe-light-reg .price-card{
  margin:0!important;padding:22px!important;border:1px solid var(--line)!important;border-radius:18px!important;
  background:#fff!important;box-shadow:var(--shadow)!important;
}
body.abe-light-page-v2 .abe-light-reg .price-card h3{
  margin:0!important;color:var(--navy)!important;font-size:18px!important;
}
body.abe-light-page-v2 .abe-light-reg .price{
  margin:9px 0 4px!important;color:var(--navy)!important;font-size:30px!important;font-weight:800!important;
}
body.abe-light-page-v2 .abe-light-reg .price small{font-size:13px!important}
body.abe-light-page-v2 .abe-light-reg .price-card p{
  margin:0!important;color:var(--muted)!important;font-size:13px!important;
}

/* NAVI */
body.abe-light-page-v2 .abe-light-reg .navi-box{
  display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr)!important;
  align-items:center!important;gap:28px!important;padding:27px!important;
  border:1px solid #c9dfe5!important;border-radius:18px!important;
  background:linear-gradient(135deg,#edf7f9,#e6f2f5)!important;
  box-shadow:0 8px 22px rgba(21,63,73,.06)!important;
}
body.abe-light-page-v2 .abe-light-reg .navi-box h2{
  margin:0!important;color:var(--navy)!important;font-size:24px!important;line-height:1.5!important;
}
body.abe-light-page-v2 .abe-light-reg .navi-box p{
  margin:8px 0 0!important;color:#58717a!important;
}
body.abe-light-page-v2 .abe-light-reg .navi-box .btn{width:100%!important}

/* SERVICE */
body.abe-light-page-v2 .abe-light-reg .service-grid{
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;
}
body.abe-light-page-v2 .abe-light-reg .service-card{
  margin:0!important;padding:20px 18px!important;border:1px solid var(--line)!important;border-radius:17px!important;
  background:#fff!important;box-shadow:0 6px 18px rgba(21,63,73,.05)!important;
}
body.abe-light-page-v2 .abe-light-reg .service-icon{
  display:grid!important;width:38px!important;height:38px!important;place-items:center!important;margin-bottom:12px!important;
  border-radius:50%!important;background:#e6f2f5!important;color:var(--navy)!important;font-weight:800!important;
}
body.abe-light-page-v2 .abe-light-reg .service-card strong{
  display:block!important;margin:0 0 6px!important;color:var(--navy)!important;font-size:16px!important;
}
body.abe-light-page-v2 .abe-light-reg .service-card span{
  display:block!important;margin:0!important;color:var(--muted)!important;font-size:13px!important;line-height:1.7!important;
}

/* DOCUMENTS */
body.abe-light-page-v2 .abe-light-reg .documents-section details{
  margin:12px 0!important;overflow:hidden!important;border:1px solid var(--line)!important;border-radius:16px!important;
  background:#fff!important;box-shadow:0 4px 14px rgba(21,63,73,.04)!important;
}
body.abe-light-page-v2 .abe-light-reg .documents-section summary{
  padding:17px 19px!important;color:var(--navy)!important;font-weight:800!important;cursor:pointer!important;
}
body.abe-light-page-v2 .abe-light-reg .documents-section details[open] summary{
  background:#f8fbfc!important;border-bottom:1px solid #e7eef0!important;
}
body.abe-light-page-v2 .abe-light-reg .detail-inner{
  padding:16px 22px 22px!important;color:#536c74!important;
}
body.abe-light-page-v2 .abe-light-reg .detail-inner ul{
  margin:0!important;padding-left:22px!important;
}
body.abe-light-page-v2 .abe-light-reg .detail-inner li{margin:5px 0!important}

/* AREA */
body.abe-light-page-v2 .abe-light-reg .area-grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;
}
body.abe-light-page-v2 .abe-light-reg .area-card{
  padding:24px!important;border:1px solid var(--line)!important;border-radius:18px!important;
  background:#fff!important;box-shadow:var(--shadow)!important;
}
body.abe-light-page-v2 .abe-light-reg .area-card h3{
  margin:0 0 10px!important;color:var(--navy)!important;font-size:21px!important;
}
body.abe-light-page-v2 .abe-light-reg .area-card p{
  margin:0!important;color:#556d75!important;font-size:14px!important;line-height:1.9!important;
}

/* FLOW */
body.abe-light-page-v2 .abe-light-reg .flow-grid{
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;
}
body.abe-light-page-v2 .abe-light-reg .flow-card{
  min-height:205px!important;padding:20px!important;border:1px solid var(--line)!important;border-radius:18px!important;
  background:#fff!important;box-shadow:var(--shadow)!important;
}
body.abe-light-page-v2 .abe-light-reg .flow-num{
  display:grid!important;width:38px!important;height:38px!important;place-items:center!important;
  border-radius:50%!important;background:var(--navy)!important;color:#fff!important;font-weight:800!important;
}
body.abe-light-page-v2 .abe-light-reg .flow-card h3{
  margin:14px 0 7px!important;color:var(--navy)!important;font-size:17px!important;
}
body.abe-light-page-v2 .abe-light-reg .flow-card p{
  margin:0!important;color:var(--muted)!important;font-size:14px!important;line-height:1.8!important;
}
body.abe-light-page-v2 .abe-light-reg .note{
  margin-top:20px!important;padding:16px 19px!important;border:1px solid #d4e3e7!important;
  border-left:4px solid #7daab5!important;border-radius:13px!important;background:#f7fafb!important;
  color:#536c74!important;font-size:13px!important;
}

/* FEES / INFO */
body.abe-light-page-v2 .abe-light-reg .fees{
  width:100%!important;border:1px solid var(--line)!important;border-radius:17px!important;
  border-spacing:0!important;border-collapse:separate!important;overflow:hidden!important;
  background:#fff!important;box-shadow:var(--shadow)!important;
}
body.abe-light-page-v2 .abe-light-reg .fees th,
body.abe-light-page-v2 .abe-light-reg .fees td{
  padding:14px 16px!important;border-bottom:1px solid #e6edef!important;text-align:left!important;
}
body.abe-light-page-v2 .abe-light-reg .fees th{
  width:42%!important;background:#f7fafb!important;color:var(--navy)!important;
}
body.abe-light-page-v2 .abe-light-reg .fees tr:last-child th,
body.abe-light-page-v2 .abe-light-reg .fees tr:last-child td{border-bottom:0!important}
body.abe-light-page-v2 .abe-light-reg .mini{
  margin-top:10px!important;color:#71858c!important;font-size:12px!important;
}
body.abe-light-page-v2 .abe-light-reg .info-grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;
}
body.abe-light-page-v2 .abe-light-reg .info-card{
  padding:24px!important;border:1px solid var(--line)!important;border-radius:18px!important;
  background:#fff!important;box-shadow:var(--shadow)!important;
}
body.abe-light-page-v2 .abe-light-reg .info-card h2{
  margin:0!important;color:var(--navy)!important;font-size:22px!important;
}

/* RESPONSIVE */
@media(max-width:950px){
  body.abe-light-page-v2 .abe-light-reg .price-grid,
  body.abe-light-page-v2 .abe-light-reg .service-grid,
  body.abe-light-page-v2 .abe-light-reg .flow-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.abe-light-page-v2 .abe-light-reg .navi-box{grid-template-columns:1fr!important}
  body.abe-light-page-v2 .abe-light-reg .flow-card{min-height:0!important}
}
@media(max-width:560px){
  body.abe-light-page-v2 .abe-light-reg .wrap{padding:0 13px!important}
  body.abe-light-page-v2 .abe-light-reg .hero-inner{padding:28px 20px!important;border-radius:18px!important}
  body.abe-light-page-v2 .abe-light-reg h1{font-size:28px!important}
  body.abe-light-page-v2 .abe-light-reg .lead{font-size:15px!important}
  body.abe-light-page-v2 .abe-light-reg .hero-actions{flex-direction:column!important}
  body.abe-light-page-v2 .abe-light-reg .btn{width:100%!important}
  body.abe-light-page-v2 .abe-light-reg .price-section{padding:34px 0 38px!important}
  body.abe-light-page-v2 .abe-light-reg .navi-section{padding:30px 0!important}
  body.abe-light-page-v2 .abe-light-reg .service-section{padding:36px 0 40px!important}
  body.abe-light-page-v2 .abe-light-reg .documents-section{padding:38px 0 42px!important}
  body.abe-light-page-v2 .abe-light-reg .area-section{padding:36px 0 40px!important}
  body.abe-light-page-v2 .abe-light-reg .flow-section{padding:38px 0 42px!important}
  body.abe-light-page-v2 .abe-light-reg .fees-section{padding:36px 0 40px!important}
  body.abe-light-page-v2 .abe-light-reg .shipping-section{padding:34px 0 38px!important}
  body.abe-light-page-v2 .abe-light-reg .price-grid,
  body.abe-light-page-v2 .abe-light-reg .service-grid,
  body.abe-light-page-v2 .abe-light-reg .area-grid,
  body.abe-light-page-v2 .abe-light-reg .flow-grid,
  body.abe-light-page-v2 .abe-light-reg .info-grid{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   2.0.1 最終バランス調整
   料金カードとボタンを普通自動車ページに近いサイズ感へ
   ========================================================= */

body.abe-light-page-v2 .abe-light-reg .hero-actions{
  align-items:center!important;
}
body.abe-light-page-v2 .abe-light-reg .hero-actions .btn{
  width:auto!important;
  min-height:50px!important;
  padding:10px 18px!important;
  border-radius:12px!important;
  font-size:15px!important;
  line-height:1.4!important;
}
body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-primary{
  min-width:360px!important;
  max-width:430px!important;
}
body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-secondary{
  min-width:250px!important;
  max-width:310px!important;
}

body.abe-light-page-v2 .abe-light-reg .price-grid{
  align-items:stretch!important;
  grid-auto-rows:auto!important;
  gap:14px!important;
}
body.abe-light-page-v2 .abe-light-reg .price-card{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  min-height:150px!important;
  height:auto!important;
  padding:18px 20px!important;
  border-radius:16px!important;
}
body.abe-light-page-v2 .abe-light-reg .price-card h3{
  margin:0 0 6px!important;
  font-size:17px!important;
  line-height:1.45!important;
}
body.abe-light-page-v2 .abe-light-reg .price{
  margin:3px 0 5px!important;
  font-size:28px!important;
  line-height:1.25!important;
}
body.abe-light-page-v2 .abe-light-reg .price small{
  display:inline!important;
  margin-left:4px!important;
  font-size:12px!important;
  line-height:1.4!important;
}
body.abe-light-page-v2 .abe-light-reg .price-card p{
  margin-top:auto!important;
  padding-top:7px!important;
  font-size:12px!important;
  line-height:1.6!important;
}

body.abe-light-page-v2 .abe-light-reg .navi-section{
  padding:32px 0!important;
}
body.abe-light-page-v2 .abe-light-reg .navi-box{
  grid-template-columns:minmax(0,1.6fr) minmax(240px,.4fr)!important;
  gap:24px!important;
  padding:22px 24px!important;
  border-radius:16px!important;
}
body.abe-light-page-v2 .abe-light-reg .navi-box h2{
  font-size:22px!important;
  line-height:1.5!important;
}
body.abe-light-page-v2 .abe-light-reg .navi-box p{
  margin-top:6px!important;
  font-size:14px!important;
  line-height:1.75!important;
}
body.abe-light-page-v2 .abe-light-reg .navi-box > div:last-child{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
}
body.abe-light-page-v2 .abe-light-reg .navi-box .btn{
  width:auto!important;
  min-width:260px!important;
  max-width:320px!important;
  min-height:50px!important;
  padding:10px 18px!important;
  border-radius:12px!important;
}

body.abe-light-page-v2 .abe-light-reg .service-card{
  min-height:150px!important;
  padding:18px!important;
}

@media(min-width:951px){
  body.abe-light-page-v2 .abe-light-reg .price-section{
    padding:40px 0 46px!important;
  }
}

@media(max-width:950px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-primary,
  body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-secondary{
    min-width:0!important;
    max-width:none!important;
  }
  body.abe-light-page-v2 .abe-light-reg .navi-box .btn{
    width:100%!important;
    max-width:none!important;
  }
}

@media(max-width:560px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions .btn{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:52px!important;
  }
  body.abe-light-page-v2 .abe-light-reg .price-card{
    min-height:0!important;
    padding:17px!important;
  }
  body.abe-light-page-v2 .abe-light-reg .price{
    font-size:27px!important;
  }
  body.abe-light-page-v2 .abe-light-reg .navi-section{
    padding:28px 0!important;
  }
  body.abe-light-page-v2 .abe-light-reg .navi-box{
    padding:20px!important;
  }
  body.abe-light-page-v2 .abe-light-reg .navi-box .btn{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:52px!important;
  }
  body.abe-light-page-v2 .abe-light-reg .service-card{
    min-height:0!important;
  }
}


/* =========================================================
   2.0.2 最終バランス調整
   料金カード下段中央寄せ / ボタン幅 / カード内余白
   ========================================================= */

/* 料金カード：5枚を 3 + 2 で自然に見せる */
@media(min-width:951px){
  body.abe-light-page-v2 .abe-light-reg .price-grid{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:16px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .price-card{
    grid-column:span 2!important;
  }

  /* 下段2枚を中央寄せ */
  body.abe-light-page-v2 .abe-light-reg .price-card:nth-child(4){
    grid-column:2 / span 2!important;
  }

  body.abe-light-page-v2 .abe-light-reg .price-card:nth-child(5){
    grid-column:4 / span 2!important;
  }
}

/* 料金カード内の縦バランス */
body.abe-light-page-v2 .abe-light-reg .price-card{
  min-height:142px!important;
  padding:17px 20px!important;
}

body.abe-light-page-v2 .abe-light-reg .price-card h3{
  margin:0 0 4px!important;
  font-size:17px!important;
  line-height:1.4!important;
}

body.abe-light-page-v2 .abe-light-reg .price{
  margin:2px 0 4px!important;
  font-size:28px!important;
  line-height:1.2!important;
}

body.abe-light-page-v2 .abe-light-reg .price-card p{
  margin-top:auto!important;
  padding-top:5px!important;
  font-size:12px!important;
  line-height:1.55!important;
}

/* 上部CTA：主従をさらに明確に */
@media(min-width:951px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-primary{
    min-width:350px!important;
    max-width:410px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-secondary{
    min-width:220px!important;
    max-width:270px!important;
  }
}

/* Autoサポートナビ枠のボタンを少しコンパクトに */
@media(min-width:951px){
  body.abe-light-page-v2 .abe-light-reg .navi-box{
    grid-template-columns:minmax(0,1.7fr) minmax(220px,.3fr)!important;
    gap:22px!important;
    padding:20px 24px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .navi-box .btn{
    min-width:230px!important;
    max-width:285px!important;
    min-height:48px!important;
    padding:9px 16px!important;
    font-size:14px!important;
  }
}

/* サービスカード間の縦方向の呼吸を少し増やす */
body.abe-light-page-v2 .abe-light-reg .service-grid{
  row-gap:16px!important;
}

/* Tabletは従来の2列を維持 */
@media(max-width:950px){
  body.abe-light-page-v2 .abe-light-reg .price-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  body.abe-light-page-v2 .abe-light-reg .price-card{
    grid-column:auto!important;
  }

  body.abe-light-page-v2 .abe-light-reg .price-card:nth-child(4),
  body.abe-light-page-v2 .abe-light-reg .price-card:nth-child(5){
    grid-column:auto!important;
  }
}

/* Smartphoneは1列・ボタン横幅100% */
@media(max-width:560px){
  body.abe-light-page-v2 .abe-light-reg .price-card{
    min-height:0!important;
    padding:16px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-primary,
  body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-secondary,
  body.abe-light-page-v2 .abe-light-reg .navi-box .btn{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
}


/* =========================================================
   2.0.3 ボタン文字の縦中央を強制固定
   テーマ側のline-height / vertical-align干渉対策
   ========================================================= */

body.abe-light-page-v2 .abe-light-reg a.btn,
body.abe-light-page-v2 .abe-light-reg .hero-actions a.btn,
body.abe-light-page-v2 .abe-light-reg .navi-box a.btn{
  display:grid!important;
  place-items:center!important;
  align-content:center!important;
  justify-content:center!important;

  height:50px!important;
  min-height:50px!important;
  max-height:50px!important;

  padding:0 18px!important;
  margin:0!important;

  line-height:1!important;
  vertical-align:middle!important;
  text-align:center!important;

  position:relative!important;
  top:0!important;
  bottom:auto!important;

  white-space:nowrap!important;
}

/* 文字ノードがテーマの疑似要素等で押されないようにする */
body.abe-light-page-v2 .abe-light-reg a.btn::before,
body.abe-light-page-v2 .abe-light-reg a.btn::after{
  line-height:1!important;
  vertical-align:middle!important;
}

/* HERO内の2ボタン */
@media(min-width:951px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions{
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-primary{
    width:390px!important;
    min-width:390px!important;
    max-width:390px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-secondary{
    width:250px!important;
    min-width:250px!important;
    max-width:250px!important;
  }
}

/* Autoサポートナビのボタン */
@media(min-width:951px){
  body.abe-light-page-v2 .abe-light-reg .navi-box .btn{
    width:270px!important;
    min-width:270px!important;
    max-width:270px!important;
  }
}

/* スマホでは横幅いっぱい、文字は中央のまま */
@media(max-width:560px){
  body.abe-light-page-v2 .abe-light-reg a.btn,
  body.abe-light-page-v2 .abe-light-reg .hero-actions a.btn,
  body.abe-light-page-v2 .abe-light-reg .navi-box a.btn{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
    padding:0 14px!important;
    white-space:normal!important;
    line-height:1.25!important;
  }
}


/* =========================================================
   2.0.4 ボタン文字の光学的中央補正
   文字そのものを専用spanで2px上へ補正
   ========================================================= */

body.abe-light-page-v2 .abe-light-reg a.btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:50px!important;
  min-height:50px!important;
  max-height:50px!important;
  padding:0 18px!important;
  line-height:1!important;
  text-align:center!important;
  overflow:hidden!important;
}

body.abe-light-page-v2 .abe-light-reg a.btn .btn-label{
  display:block!important;
  position:relative!important;
  top:-2px!important;
  margin:0!important;
  padding:0!important;
  line-height:1.25!important;
  text-align:center!important;
  vertical-align:middle!important;
}

/* 上部主ボタンと問い合わせボタン */
@media(min-width:951px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-primary{
    width:390px!important;
    min-width:390px!important;
    max-width:390px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-secondary{
    width:250px!important;
    min-width:250px!important;
    max-width:250px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .navi-box .btn{
    width:270px!important;
    min-width:270px!important;
    max-width:270px!important;
  }
}

/* スマホ */
@media(max-width:560px){
  body.abe-light-page-v2 .abe-light-reg a.btn{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
    padding:0 14px!important;
  }

  body.abe-light-page-v2 .abe-light-reg a.btn .btn-label{
    top:-1px!important;
    white-space:normal!important;
    line-height:1.3!important;
  }
}


/* =========================================================
   2.0.5 ボタン位置 最終修正
   HERO 2ボタンの縦位置統一 / NAVIボタン右カラム中央配置
   ========================================================= */

/* HERO：2ボタンを同じ基準線・同じ高さで完全整列 */
@media(min-width:951px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:12px!important;
    margin-top:22px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn{
    align-self:center!important;
    margin-top:0!important;
    margin-bottom:0!important;
    transform:none!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-primary,
  body.abe-light-page-v2 .abe-light-reg .hero-actions .btn-secondary{
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
  }
}

/* NAVI：ボタンを右端ではなく右カラムの中央へ */
@media(min-width:951px){
  body.abe-light-page-v2 .abe-light-reg .navi-box{
    grid-template-columns:minmax(0,1.7fr) minmax(300px,.3fr)!important;
    align-items:center!important;
  }

  body.abe-light-page-v2 .abe-light-reg .navi-box > div:last-child{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
  }

  body.abe-light-page-v2 .abe-light-reg .navi-box .btn{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:270px!important;
    min-width:270px!important;
    max-width:270px!important;
    margin:0 auto!important;
    transform:none!important;
  }
}

/* Tablet：中央配置に戻す */
@media(max-width:950px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions{
    align-items:stretch!important;
  }

  body.abe-light-page-v2 .abe-light-reg .navi-box > div:last-child{
    display:flex!important;
    justify-content:center!important;
    width:100%!important;
  }

  body.abe-light-page-v2 .abe-light-reg .navi-box .btn{
    margin:0 auto!important;
  }
}

/* Smartphone：従来どおり横幅100% */
@media(max-width:560px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn,
  body.abe-light-page-v2 .abe-light-reg .navi-box .btn{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
  }
}


/* =========================================================
   2.0.7 上部ボタン安定修正
   2.0.5の安定した横並びを維持し、問い合わせだけ光学補正
   ========================================================= */

@media(min-width:951px){

  body.abe-light-page-v2 .abe-light-reg .hero-actions{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:12px!important;
    margin-top:22px!important;
    width:auto!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn{
    position:relative!important;
    float:none!important;
    clear:none!important;
    margin:0!important;
    align-self:center!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:first-child{
    width:390px!important;
    min-width:390px!important;
    max-width:390px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:nth-child(2){
    width:250px!important;
    min-width:250px!important;
    max-width:250px!important;
    top:-3px!important;
  }
}

/* タブレット以下では補正を解除 */
@media(max-width:950px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:nth-child(2){
    top:auto!important;
  }
}

/* スマホは縦並び */
@media(max-width:560px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions{
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    gap:10px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
}


/* =========================================================
   2.0.8 上部2ボタン 最終微調整
   問い合わせを少し拡張 / ボタン群をわずかに右へ
   ========================================================= */

@media(min-width:951px){

  body.abe-light-page-v2 .abe-light-reg .hero-actions{
    margin-top:22px!important;
    margin-left:18px!important;
    gap:10px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:first-child{
    width:390px!important;
    min-width:390px!important;
    max-width:390px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:nth-child(2){
    width:270px!important;
    min-width:270px!important;
    max-width:270px!important;
    top:-3px!important;
  }
}

/* タブレット以下では右寄せ補正を解除 */
@media(max-width:950px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions{
    margin-left:0!important;
  }
}

/* スマホは従来どおり全幅 */
@media(max-width:560px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:first-child,
  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:nth-child(2){
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    top:auto!important;
  }
}


/* =========================================================
   2.0.9 上部2ボタン 高さ・基準線を完全統一
   ========================================================= */

@media(min-width:951px){

  body.abe-light-page-v2 .abe-light-reg .hero-actions{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:10px!important;
    margin-top:22px!important;
    margin-left:18px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn,
  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:first-child,
  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:nth-child(2){
    box-sizing:border-box!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;

    margin:0!important;
    top:0!important;
    bottom:auto!important;

    align-self:stretch!important;
    position:relative!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:first-child{
    width:390px!important;
    min-width:390px!important;
    max-width:390px!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:nth-child(2){
    width:270px!important;
    min-width:270px!important;
    max-width:270px!important;
  }

  /* 文字だけ光学的に少し上へ */
  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn .btn-label{
    position:relative!important;
    top:-2px!important;
    margin:0!important;
    padding:0!important;
    line-height:1.25!important;
  }
}

/* タブレット以下 */
@media(max-width:950px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions{
    margin-left:0!important;
  }

  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn,
  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:first-child,
  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:nth-child(2){
    top:0!important;
  }
}

/* スマホ */
@media(max-width:560px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn,
  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:first-child,
  body.abe-light-page-v2 .abe-light-reg .hero-actions > a.btn:nth-child(2){
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
  }
}


/* =========================================================
   2.3.0 上部ボタン HTML構造から固定
   ========================================================= */
body.abe-light-page-v2 .abe-light-reg .hero-actions-v2{
  display:grid!important;
  grid-template-columns:390px 270px!important;
  gap:10px!important;
  align-items:stretch!important;
  justify-content:start!important;
  width:max-content!important;
  max-width:100%!important;
  margin:22px 0 0 18px!important;
  padding:0!important;
}
body.abe-light-page-v2 .abe-light-reg .hero-action-cell{
  display:block!important;
  width:100%!important;
  height:50px!important;
  min-height:50px!important;
  max-height:50px!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
  float:none!important;
  clear:none!important;
}
body.abe-light-page-v2 .abe-light-reg .hero-action-cell > a.btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:50px!important;
  min-height:50px!important;
  max-height:50px!important;
  margin:0!important;
  padding:0 18px!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
  line-height:1!important;
}
body.abe-light-page-v2 .abe-light-reg .hero-action-cell > a.btn .btn-label{
  display:block!important;
  position:relative!important;
  top:-2px!important;
  margin:0!important;
  padding:0!important;
  line-height:1.25!important;
  text-align:center!important;
}
body.abe-light-page-v2 .abe-light-reg .hero-actions-v2 .btn-primary,
body.abe-light-page-v2 .abe-light-reg .hero-actions-v2 .btn-secondary{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}
@media(max-width:950px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions-v2{
    grid-template-columns:1fr 1fr!important;
    width:100%!important;
    margin-left:0!important;
  }
}
@media(max-width:560px){
  body.abe-light-page-v2 .abe-light-reg .hero-actions-v2{
    grid-template-columns:1fr!important;
    gap:10px!important;
    width:100%!important;
    margin:18px 0 0!important;
  }
  body.abe-light-page-v2 .abe-light-reg .hero-action-cell,
  body.abe-light-page-v2 .abe-light-reg .hero-action-cell > a.btn{
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
  }
  body.abe-light-page-v2 .abe-light-reg .hero-action-cell > a.btn .btn-label{
    top:-1px!important;
    white-space:normal!important;
    line-height:1.3!important;
  }
}
