/* 利益改善支援「お悩み」ページ専用。 */
body.concerns-page { --accent: var(--blue); --accent-pale: var(--blue-pale); }
.concerns-hero { padding: clamp(38px, 6vw, 68px) 0; background: var(--accent-pale); }
.concerns-hero__inner { max-width: 820px; }
.concerns-hero .eyebrow { margin-bottom: 8px; }
.concerns-hero h1 { max-width: 18em; text-wrap: balance; }
.concerns-hero h1 span { display: block; }
.concerns-hero__lead { max-width: 44em; margin: 16px 0 0; font-size: 18px; }
.concerns-hero__notice { max-width: 48em; margin: 18px 0 0; color: var(--muted); font-size: 14px; }

.concerns-main { padding: clamp(42px, 6vw, 72px) 0; background: var(--paper); }
.concerns-intro { max-width: 760px; margin: 0 0 32px; }
.concerns-intro h2 { margin: 0; font-size: clamp(25px, 3vw, 34px); line-height: 1.45; }
.concerns-intro p { margin: 14px 0 0; color: var(--muted); }

.concerns-list { display: grid; gap: 26px; max-width: 920px; }
.concern-card { display: grid; grid-template-columns: minmax(260px, 360px) minmax(0, 1fr); grid-template-areas: "heading heading" "image copy"; gap: 0 30px; padding: 0; overflow: hidden; border: 1px solid var(--line); background: var(--white); box-shadow: 0 2px 0 rgba(16, 35, 61, .09); }
.concern-card__heading { grid-area: heading; padding: 20px 24px 18px; border-bottom: 1px solid var(--line); background: #f7fafc; }
.concern-card__heading h3 { margin: 0; font-size: clamp(20px, 2.4vw, 25px); line-height: 1.45; }
.concern-card__tag { display: inline-flex; min-height: 24px; align-items: center; margin: 0 0 8px; padding: 2px 9px; color: #0a4d7b; background: var(--blue-pale); font-size: 13px; font-weight: 800; }
.concern-card figure { grid-area: image; margin: 0; align-self: stretch; background: #edf2f4; }
.concern-card img { display: block; width: 100%; height: 100%; min-height: 220px; object-fit: cover; }
.concern-card__copy { grid-area: copy; align-self: center; padding: 24px 24px 24px 0; }
.concern-card__copy p { margin: 0 0 10px; font-weight: 800; }
.concern-card__copy ul { display: grid; gap: 9px; margin: 0; padding-left: 1.25em; color: var(--ink); }
.concern-card__copy li::marker { color: var(--accent); }

.concerns-next { padding: clamp(44px, 7vw, 76px) 0; background: var(--navy); color: var(--white); }
.concerns-next__inner { max-width: 760px; }
.concerns-next .eyebrow { color: #ffcf91; }
.concerns-next h2 { margin: 0; font-size: clamp(25px, 3vw, 34px); line-height: 1.45; }
.concerns-next p { max-width: 44em; margin: 14px 0 0; color: #dce7ef; }
.concerns-next .button { border: 2px solid #f0a345; }

@media (max-width: 700px) {
  .concerns-hero__lead { font-size: 17px; }
  .concern-card { grid-template-columns: 1fr; grid-template-areas: "heading" "image" "copy"; }
  .concern-card__heading { padding: 18px 20px 16px; }
  .concern-card img { min-height: 0; height: auto; aspect-ratio: 3 / 2; }
  .concern-card__copy { padding: 20px; }
}
@media (max-width: 420px) {
  .concerns-hero, .concerns-main, .concerns-next { padding-top: 34px; padding-bottom: 34px; }
  .concern-card__heading h3 { font-size: 20px; }
}
