/* サイト全体の大きさの調整(たいち 11/07「80%表示くらいのサイズ感。文字が小さくなって読みづらいのはなし」)
   ページごとの CSS の後に読み、パソコン幅の高さ・余白・写真・カードだけを詰める。ヘッダーとフッターは触らない。
   文字の決まり: 本文は 15〜16px のまま。カードの説明は 14px、注記は 12.5〜13px を下限に上げる。章見出しは 38px で目立たせる */

/* ===== 文字: 小さすぎた物を上げる(スマホも同じ) ===== */
.stat dt,
.page-cta-tel small,
.tag,
.column-card-category {
  font-size: 13px;
}
.stat-note,
.form-optional,
.form-required {
  font-size: 12px;
}
.case-list-area,
.case-list-type {
  font-size: 12.5px;
}
.mng-cards-text,
.case-list-text,
.column-card-body p,
.info-card p:not(.num) {
  font-size: 14px;
}

/* スマホ: 注記を上げた分で帯からはみ出さないよう、余白で吸収する */
@media (max-width: 760px) {
  .page-shop .page-hero-inner {
    padding-bottom: 22px;
  }
}

/* ===== パソコン幅: 共通の部品 ===== */
@media (min-width: 761px) {
  main .btn:not(.btn-small) {
    min-height: 50px;
    padding: 10px 28px;
  }
  .section-title-center {
    margin-bottom: 36px;
  }
  .section-head-row {
    margin-bottom: 28px;
  }
  .flow-no {
    font-size: 44px;
  }
  .faq-item summary {
    padding-block: 16px;
  }
  .faq-q,
  .faq-a {
    font-size: 22px;
  }
  .mng-cards a {
    aspect-ratio: 16 / 10;
  }
  .mng-cards-title {
    font-size: 20px;
  }
  .nx-consult-title {
    font-size: 20px;
  }

  /* ===== トップ ===== */
  .stat {
    padding: 14px 16px 12px;
  }
  .stat-number {
    font-size: 34px;
  }
  .trouble-cards a {
    min-height: 240px;
  }
  .trouble-title {
    font-size: clamp(17px, 1.4vw, 19px);
  }
  .section-why .why-item {
    padding: 18px 24px;
  }
  .section-why .why-item h3 {
    margin-bottom: 8px;
    font-size: 21px;
    line-height: 1.5;
  }
  .section-split-fit {
    padding-block: 44px;
  }
  .section-appraisal {
    padding-block: 64px;
  }
  .section-appraisal .appraisal-visual {
    width: min(100%, 300px);
  }
  .case-list-photo {
    height: 170px;
  }
  .cases-list {
    margin-top: 28px;
  }
  .section-cases,
  .section-partners,
  .section-why,
  .section-flow {
    padding-block: 56px;
  }
  .flow-body {
    padding-block: 20px 22px;
  }
  .partners-table > li {
    min-height: 88px;
    padding: 12px 24px;
  }
  .partners-table > li > img {
    max-height: 60px;
  }
  main .section-service .section-title.top-service-title {
    font-size: 40px;
  }
  .about-text {
    padding-block: 40px;
  }

  /* ===== 下層ページ ===== */
  .page-owner_management .mng-hero-title {
    font-size: clamp(34px, 2.8vw, 42px);
  }
  .page-owner_cases_detail .page-hero-photo img {
    height: 116%;
  }
  .page-corporate .corp-stat-number {
    font-size: 32px;
  }
  .page-owner_management .mng-metric-number {
    font-size: 32px;
  }
  .page-owner_management .mng-hero-metrics {
    margin-top: 8px;
  }
  .page-owner_management .mng-hero-metrics + .page-hero-actions {
    margin-top: 10px;
  }
  .page-owner_management .page-hero-inner {
    padding: var(--page-hero-pad-top) 0 16px;
  }
  .page-owner_management .perk-card {
    aspect-ratio: 1 / 1;
  }
  .page-owner_management .perk-card:nth-child(n + 5) {
    aspect-ratio: 16 / 9;
  }
  .page-company .company-team {
    max-width: 680px;
    margin-inline: auto;
  }
  .page-owner_seminar .seminar-catch {
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 6px;
  }
}
@media (min-width: 1001px) {
  .hero {
    height: min(calc(100vh - var(--header-height) - 24px), 520px);
    min-height: 440px;
  }
  .hero-title {
    font-size: clamp(30px, 2.7vw, 38px);
    line-height: 1.5;
    margin-bottom: 14px;
  }
}
