.business-case__list { display: grid; gap: 64px; margin-top: 40px; }
.business-case__item { padding: 44px 64px; border-radius: 20px; background: #f7f7f7; }
.business-case__item h2 { margin: 0 0 32px; padding: 20px 24px; background: #fff; font-size: 24px; font-weight: var(--font-weight-bold); }
.business-case__columns { display: grid; grid-template-columns: 227px 565px; gap: 40px; align-items: start; }
.business-case__columns img { width: 227px; height: 227px; object-fit: cover; }
.business-case__columns dl { margin: 0; font-size: 14px; line-height: 1.9; }
.business-case__columns dt { margin-top: 24px; color: var(--color-accent); font-size: 13px; font-weight: var(--font-weight-medium); }
.business-case__columns dt:first-child { margin-top: 0; }
.business-case__columns dd { margin: 8px 0 0; }

/* 開閉処理はcommon.jsを利用し、法人caseの見た目だけを調整する。 */
.business-case .business-faq dt { display: block; padding: 0; }
.business-case .business-faq dd[hidden] + dt { margin-top: 21px; }
.business-case .business-faq dd { padding: 0; }
.business-case-faq__trigger { display: flex; align-items: center; gap: 16px; width: 100%; margin: 0; padding: 20px 24px; border: 0; background: #f5f5f5; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.business-case-faq__trigger > span { display: grid; place-items: center; flex: none; width: 16px; height: 16px; border-radius: 50%; background: var(--color-accent); }
.business-case-faq__trigger > span::after { content: ""; width: 4px; height: 4px; border-right: 1px solid #fff; border-bottom: 1px solid #fff; transform: translateX(-1px) rotate(-45deg); }
.business-case-faq__trigger[aria-expanded="true"] > span::after { transform: translateY(-1px) rotate(45deg); }
.business-case-faq__answer { padding: 20px 56px 8px; }

/* SP共通ブレイクポイント：PCの既存指定は維持する。 */
@media (max-width: 480px) {
  .business-case__list { gap: 32px; }
  .business-case__item { padding: 24px; }
  .business-case__item h2 { padding: 16px; font-size: 22px; }
  .business-case__columns { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .business-case__columns img { max-width: 100%; height: auto; margin-inline: auto; }
  .business-case-faq__trigger { padding: 20px 16px; gap: 12px; }
  .business-case-faq__answer { padding: 20px 16px 8px; }
}
