/* カテゴリ共通：ナビ・Hero・見出し・複数ページで使用するFAQ。 */
.business-nav { position: relative; z-index: 10; height: 40px; background: #fff; }
.business-nav .nav-list { justify-content: flex-end; height: 40px; padding-right: 20px; gap: 28px; }
.business-nav .nav-list__item::after { content: ""; position: absolute; inset: auto 0 0; height: 2px; background: var(--color-accent); transform: scaleX(0); transform-origin: left center; transition: transform 250ms ease; }
.business-nav .nav-list__item:hover::after,
.business-nav .nav-list__item:focus-within::after,
.business-nav .nav-list__item.is-current::after { transform: scaleX(1); }
.business-hero { height: 350px; text-align: center; background-image: url("../i/hero_bg_business.png"); }
.business-hero__inner { padding-top: 130px; }
.business-hero__heading { margin: 0; font-weight: var(--font-weight-bold); }
.business-hero__english { display: block; color: var(--color-accent); font-size: 46px; line-height: 1.3; }
.business-hero__japanese { display: block; margin-top: 14px; font-family: var(--font-hero-japanese); font-size: 26px; font-weight: var(--font-weight-regular); line-height: 1.6; }
.business-content { padding-top: 76px; padding-bottom: 100px; }
.business-eyebrow { margin: 0 0 12px; color: var(--color-accent); font-size: 13px; font-weight: var(--font-weight-medium); }
.business-heading { margin: 0 0 24px; font-size: 28px; font-weight: var(--font-weight-bold); line-height: 1.7; }
.business-copy { margin: 0; font-size: 15px; line-height: 1.9; }
.business-faq { margin-top: 100px; }
.business-faq dl { margin: 0; }
.business-faq dt { display: flex; align-items: center; gap: 16px; margin-top: 24px; padding: 20px 24px; background: #f5f5f5; font-size: 15px; font-weight: var(--font-weight-medium); }
.business-faq dt > span { display: grid; place-items: center; flex: none; width: 16px; height: 16px; border-radius: 50%; background: var(--color-accent); }
.business-faq dt > span::after { content: ""; width: 4px; height: 4px; border-right: 1px solid #fff; border-bottom: 1px solid #fff; transform: translateX(-1px) rotate(-45deg); }
.business-faq dd { margin: 0; padding: 20px 56px 8px; font-size: 14px; line-height: 1.9; }
.business-faq dd p { margin: 0; }
.business-faq dd a { color: var(--color-accent); text-decoration: underline; }

/* 法人TOP固有（カテゴリ直下のページ）。 */
.business-hero--top { height: 450px; }
.business-hero--top .business-hero__inner { padding-top: 170px; }
/* 従来の英語行の高さ（58px × 1.3）を保ち、日本語コピーを動かさない。 */
.business-hero--top .business-hero__english { display: flex; align-items: center; justify-content: center; height: 75.4px; }
.business-hero--top .business-hero__artwork { width: 762.46px; height: auto; }
.business-hero--top .business-hero__japanese { margin-top: 22px; }
.business-top__intro-heading { text-align: center; }
.business-top__links { display: flex; flex-wrap: wrap; justify-content: center; gap: 30px; margin-top: 40px; }
.business-top__links > .card-link { flex: 0 0 300px; }
.business-top__links .card-link__image { height: 119px; aspect-ratio: auto; }
.business-top__links .card-link__title { font-size: 21px; }
.business-top__links .card-link__en { font-size: 12px; }
.business-top__links .card-link__icon { top: auto; bottom: 0; }
.business-top__news { margin-top: 100px; }
.business-top__news-heading { display: flex; align-items: center; justify-content: space-between; }
.business-top__notice { margin: 0; padding: 28px 0; border-block: 1px solid #d4d4d4; font-size: 14px; }
.business-news { margin: 0; padding: 0; list-style: none; }
.business-news__row { display: grid; grid-template-columns: 110px 100px 1fr; gap: 24px; align-items: baseline; padding: 28px 24px; border-top: 1px solid #d4d4d4; font-size: 13px; transition: background-color 180ms ease; }
.business-news > li:last-child .business-news__row { border-bottom: 1px solid #d4d4d4; }
.business-news__row:hover, .business-news__row:focus-visible { background-color: rgba(0, 0, 0, 0.03); }
.business-news__category { padding: 2px 10px; border-radius: 10px; background: #3e3a39; color: #fff; text-align: center; font-size: 11px; }
.business-news__category:empty { visibility: hidden; }
.business-news__title { overflow-wrap: anywhere; }

/* SP共通ブレイクポイント：PCの既存指定は維持する。 */
@media (max-width: 480px) {
  .business-nav { display: none; }
  .business-hero--top .business-hero__japanese { font-size: 19px; }
  .business-hero--top { height: 300px; }
  .business-hero--top .business-hero__inner { padding-top: 144px; }
  .business-hero--top .business-hero__english { height: auto; }
  .business-hero--top .business-hero__artwork { width: 330px; max-width: 100%; height: auto; }
  .business-content { padding-top: 40px; padding-bottom: 56px; }
  .business-heading { font-size: 24px; }
  .business-top__links { --top-card-image-ratio: 252 / 119; }
  .business-top__news, .business-faq { margin-top: 56px; }
  .business-top__news-heading { flex-wrap: wrap; gap: 16px; margin-bottom: 24px; }
  .business-top__news-heading .business-heading { margin-bottom: 0; }
  .business-news__row { grid-template-columns: 100px minmax(0, 1fr); gap: 12px; padding: 20px 8px; font-size: 14px; }
  .business-news__category { justify-self: start; }
  .business-news__title { grid-column: 1 / -1; }
}
