/* working-style配下3ページの本文。共通UIの寸法・hoverはcommon.cssを使用。 */
.working-content { padding-top: 64px; padding-bottom: 100px; }
.working-nav { margin-bottom: 56px; }
.working-nav ul { display: flex; gap: 16px; margin: 0; padding: 0; list-style: none; }
.working-eyebrow { margin: 0 0 12px; color: var(--color-accent); font-size: 13px; font-weight: var(--font-weight-medium); }
.working-heading { margin: 0 0 24px; font-size: 28px; line-height: 1.6; font-weight: var(--font-weight-bold); }
.working-copy { margin: 0; font-size: 14px; line-height: 2; }
.working-section { margin-top: 88px; }
.working-english { margin: 4px 0 20px; color: var(--color-accent); font-size: 13px; }
.working-subheading { margin: 0 0 8px; font-size: 18px; font-weight: var(--font-weight-bold); }
.working-types { display: grid; grid-template-columns: repeat(3, 300px); gap: 30px; margin-top: 48px; }
.working-services { display: grid; gap: 80px; margin-top: 48px; }
.working-service { display: grid; grid-template-columns: 300px 600px; gap: 60px; align-items: start; scroll-margin-top: 100px; }
.working-service > img { display: block; width: 300px; height: 300px; object-fit: cover; border-radius: 0; }
.working-service h3 { margin: 0; font-size: 28px; font-weight: var(--font-weight-bold); }
.working-service ul { padding-left: 1em; margin: 0; font-size: 14px; line-height: 2; }
.working-related { display: grid; grid-template-columns: repeat(2, 450px); gap: 60px; margin-top: 80px; }
.working-related > section { padding: 32px; border-radius: 0; background: #fff url("../../i/hero_bg_job.png") -664px -44px / auto 550px no-repeat; }
.working-related h2 { margin: 0; font-size: 24px; font-weight: var(--font-weight-bold); }
.working-related .working-english { margin-bottom: 16px; }
.working-related .button { margin-top: 24px; }
/* 福利厚生の制度説明と、画像付きのサポート項目。 */
.working-benefits { margin-top: 48px; }
.working-benefits > section + section { margin-top: 56px; }
.working-benefits h2 { margin: 0 0 24px; font-size: 23px; font-weight: var(--font-weight-bold); }
.working-benefits h2::after { content: ""; display: block; width: 90px; height: 2px; margin-top: 20px; background: var(--color-accent); }
.working-benefits h3 { margin: 24px 0 4px; font-size: 16px; font-weight: var(--font-weight-bold); }
.working-supports { display: grid; gap: 48px; margin-top: 40px; }
.working-support { display: grid; grid-template-columns: 227px 1fr; gap: 48px; align-items: start; min-height: 245px; padding: 32px 60px; border-radius: 20px; background: #f7f7f7; }
.working-support > img { display: block; width: 227px; height: 177px; object-fit: cover; }
.working-support h3 { margin: 8px 0 16px; color: var(--color-accent); font-size: 21px; font-weight: var(--font-weight-bold); }
.working-support h4 { margin: 24px 0 6px; font-size: 16px; font-weight: var(--font-weight-bold); }
.working-support .working-copy { font-size: 13px; }
.working-text-link { color: var(--color-accent); font-size: 13px; text-underline-offset: 3px; }
/* キャリア支援。写真・本文はカードの共通ワイプより前面に保持する。 */
.working-career-features { display: grid; gap: 88px; margin-top: 80px; }
.working-career-feature { display: grid; grid-template-columns: repeat(2, 450px); gap: 60px; align-items: start; }
.working-career-feature > img { display: block; width: 450px; height: 400px; object-fit: cover; }
.working-career-feature--reverse > img { grid-column: 2; grid-row: 1; }
.working-career-feature--reverse > div { grid-column: 1; grid-row: 1; }
.working-career-feature__number { margin: 24px 0 0; color: var(--color-accent); font-size: 42px; font-weight: var(--font-weight-bold); line-height: 1.2; }
.working-career-feature h2 { margin: 4px 0 24px; font-size: 28px; font-weight: var(--font-weight-bold); }
.working-career-feature h3 { margin: 0 0 8px; color: var(--color-accent); font-size: 17px; font-weight: var(--font-weight-bold); }
.working-consultants { display: grid; grid-template-columns: repeat(3, 300px); gap: 30px; margin: 40px 0 48px; }
.working-consultant .card-link__image { aspect-ratio: 1; height: 252px; }
.working-consultant .card-link__body { margin-top: 24px; }
.working-consultant .card-link__title { font-size: 22px; }
.working-consultant__role { margin: 0 0 4px; color: var(--color-accent); font-size: 11px; font-weight: var(--font-weight-medium); }
.working-consultant__name { margin: 4px 0 0; font-size: 11px; }
.working-consultant .card-link__icon { top: auto; bottom: 0; }

/* SP共通ブレイクポイント：PCの既存指定は維持する。 */
@media (max-width: 480px) {
  .working-content { padding-top: 40px; padding-bottom: 56px; }
  .working-nav { margin-bottom: 32px; }
  .working-nav li { max-width: 100%; }
  .working-heading, .working-service h3, .working-career-feature h2 { font-size: 24px; }
  .working-section, .working-related, .working-career-features { margin-top: 56px; }
  .working-types, .working-service, .working-related, .working-support, .working-career-feature { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .working-services, .working-career-features { gap: 48px; }
  .working-related > section, .working-support { padding: 24px; }
  .working-support { min-height: 0; }
  .working-support > img { max-width: 100%; height: auto; margin-inline: auto; }
  .working-support .working-copy { font-size: 14px; }
  .working-career-feature > img { aspect-ratio: 450 / 400; }
  .working-career-feature--reverse > img, .working-career-feature--reverse > div { grid-column: auto; grid-row: auto; }
  .working-career-feature__number { margin-top: 0; }
}
