/* v057: 全ページのヒーロー部分の文字サイズをPC・スマホともに一段抑える */

/* 共通：ページ最上部の大きな見出し */
.hero h1,
.page-hero h1,
.service-page-hero h1,
.company-hero h1,
.staff-hero h1,
.flow-hero h1,
.price-hero h1,
.lounge-page-hero h1,
.business-hero h1,
.advisory-hero h1,
.inheritance-hero h1,
.inheritance-onepage h1,
.first-hero h1,
.finance-v027-hero h1,
.fukunokami-recruit-v028 .lp-hero h1,
main > section:first-child h1 {
  font-size: clamp(32px, 4.2vw, 54px) !important;
  line-height: 1.28 !important;
  letter-spacing: .02em !important;
}

/* トップページのヒーローだけ少しだけ余白を残す */
.hero h1 {
  font-size: clamp(34px, 4.6vw, 58px) !important;
  line-height: 1.28 !important;
}

/* ヒーローのリード文もやや抑える */
.hero-lead,
.page-hero p,
.service-page-hero p,
.company-hero p,
.staff-hero p,
.flow-hero p,
.price-hero p,
.lounge-page-hero p,
.business-hero p,
.advisory-lead,
.inheritance-lead,
.inheritance-onepage .lead,
.first-lead,
.finance-v027-lead,
.fukunokami-recruit-v028 .lp-hero .lead,
main > section:first-child .lead {
  font-size: clamp(16px, 1.65vw, 21px) !important;
  line-height: 1.78 !important;
}

/* LP系ヒーローの縦余白も少しだけ圧縮 */
.inheritance-hero,
.advisory-hero,
.first-hero,
.finance-v027-hero {
  padding-top: clamp(42px, 5vw, 62px) !important;
  padding-bottom: clamp(30px, 4vw, 46px) !important;
}

/* セクション直下の大見出しがヒーロー級に見える箇所も少し抑える */
.inheritance-section-title h2,
.advisory-section-title h2,
.section-title,
.first-title h2,
.finance-v027-title {
  font-size: clamp(26px, 3.2vw, 40px) !important;
  line-height: 1.45 !important;
}

@media (max-width: 900px) {
  .hero h1,
  .page-hero h1,
  .service-page-hero h1,
  .company-hero h1,
  .staff-hero h1,
  .flow-hero h1,
  .price-hero h1,
  .lounge-page-hero h1,
  .business-hero h1,
  .advisory-hero h1,
  .inheritance-hero h1,
  .inheritance-onepage h1,
  .first-hero h1,
  .finance-v027-hero h1,
  .fukunokami-recruit-v028 .lp-hero h1,
  main > section:first-child h1 {
    font-size: clamp(29px, 7.4vw, 38px) !important;
    line-height: 1.34 !important;
    letter-spacing: .015em !important;
  }

  .hero h1 {
    font-size: clamp(30px, 7.8vw, 40px) !important;
  }

  .hero-lead,
  .page-hero p,
  .service-page-hero p,
  .company-hero p,
  .staff-hero p,
  .flow-hero p,
  .price-hero p,
  .lounge-page-hero p,
  .business-hero p,
  .advisory-lead,
  .inheritance-lead,
  .inheritance-onepage .lead,
  .first-lead,
  .finance-v027-lead,
  .fukunokami-recruit-v028 .lp-hero .lead,
  main > section:first-child .lead {
    font-size: 16px !important;
    line-height: 1.78 !important;
  }

  .inheritance-hero,
  .advisory-hero,
  .first-hero,
  .finance-v027-hero,
  .page-hero {
    padding-top: 34px !important;
    padding-bottom: 26px !important;
  }
}

@media (max-width: 640px) {
  .hero h1,
  .page-hero h1,
  .service-page-hero h1,
  .company-hero h1,
  .staff-hero h1,
  .flow-hero h1,
  .price-hero h1,
  .lounge-page-hero h1,
  .business-hero h1,
  .advisory-hero h1,
  .inheritance-hero h1,
  .inheritance-onepage h1,
  .first-hero h1,
  .finance-v027-hero h1,
  .fukunokami-recruit-v028 .lp-hero h1,
  main > section:first-child h1 {
    font-size: clamp(28px, 7.5vw, 34px) !important;
    line-height: 1.36 !important;
    margin-bottom: 12px !important;
  }

  .hero h1 {
    font-size: clamp(29px, 8vw, 36px) !important;
  }

  .breadcrumb {
    font-size: 12.5px !important;
    line-height: 1.7 !important;
    margin-bottom: 10px !important;
  }

  .inheritance-hero-card,
  .advisory-hero-card {
    padding: 20px !important;
    border-radius: 22px !important;
  }
}

@media (max-width: 390px) {
  .hero h1,
  .page-hero h1,
  .service-page-hero h1,
  .company-hero h1,
  .staff-hero h1,
  .flow-hero h1,
  .price-hero h1,
  .lounge-page-hero h1,
  .business-hero h1,
  .advisory-hero h1,
  .inheritance-hero h1,
  .inheritance-onepage h1,
  .first-hero h1,
  .finance-v027-hero h1,
  .fukunokami-recruit-v028 .lp-hero h1,
  main > section:first-child h1 {
    font-size: clamp(27px, 7.2vw, 32px) !important;
  }
}
