/* ===================================================================
 * recruit.css — 求人情報(block/page/recruit.php)
 *
 * 導入: ページヒーローのクリームから地を続け、写真を置かない1カラム(読み幅 860px)。キャッチはピンク、小見出しは緑。
 * 現在の募集: 記事の一覧(news-list)。リードは中央(SP は左)。
 * 職場のカード: 2列(lg 未満は1列)。職種・勤務地の枠はカードの下端にそろえる。
 * 求める人物像: 緑の枠の丸いタグを中央に折り返して並べ、下に小見出し + 本文。
 * 活かせる資格: 白い箱の中の箇条書きを2列(SP は1列)。
 * 応募の帯: お問い合わせ帯(contact-band)。このページは SP でも中央揃え。
 * 段落の間隔は上の余白で取る(段落・リストの既定の下余白はマークアップの mb-0 で外す)。
 * 表示方法・揃え・色・在庫と同じ値の余白はマークアップのクラスで指定している。
 * =================================================================== */

/* --- 導入 ---------------------------------------------------------- */

.recruit-intro {
  padding-block: 2.5rem var(--space-4xl);
}

.recruit-intro__catch {
  font-size: 1.875rem;
  line-height: 1.6;
}

.recruit-intro__text {
  line-height: 1.9;
}

.recruit-intro__sub {
  margin: 2.5rem 0 0;
  border-top: 1px solid color-mix(in srgb, var(--project-color-text) 14%, transparent);
  font-size: 1.25rem;
}

/* --- 現在の募集 ---------------------------------------------------- */

.recruit-jobs__more {
  margin-top: 2.5rem;
}

/* --- 職場のカード -------------------------------------------------- */

.recruit-places {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2.5rem;
}

.recruit-place {
  padding: 2.5rem;
}

.recruit-place__name {
  font-size: 1.25rem;
  line-height: 1.4;
}

.recruit-place__text {
  font-size: 0.9375rem;
}

.recruit-place__text p + p {
  margin-top: 0.6em;
}

.recruit-place__info {
  grid-template-columns: max-content minmax(0, 1fr);
  font-size: 0.9375rem;
}

.recruit-place__info dt {
  padding-top: 2px;
  white-space: nowrap;
}

.recruit-place__jobs li {
  padding: 0 10px;
  border-radius: var(--project-radius-pill);
  background: var(--project-color-bg-subtle);
  font-weight: 700;
}

/* --- 求める人物像 -------------------------------------------------- */

.recruit-persona__tags li {
  padding: var(--space-sm) var(--space-lg);
  border: 2px solid var(--project-color-secondary);
  border-radius: var(--project-radius-pill);
  font-weight: 700;
}

.recruit-persona__message {
  margin-top: var(--space-4xl);
}

.recruit-persona__sub {
  font-size: 1.25rem;
}

.recruit-persona__message p + p {
  margin-top: 1em;
}

/* --- 活かせる資格・経験 -------------------------------------------- */

.recruit-qual {
  padding: 2.5rem;
}

.recruit-qual__list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-sm) 2.5rem;
}

/* --- 中間幅・SP ---------------------------------------------------- */

@media (max-width: 991.98px) {
  .recruit-places {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-lg);
  }
}

@media (max-width: 767.98px) {
  .recruit-intro {
    padding-block: var(--space-lg) 2.5rem;
  }

  .recruit-intro__catch {
    font-size: 1.375rem;
  }

  .recruit-intro__sub,
  .recruit-place__name,
  .recruit-persona__sub {
    font-size: 1.125rem;
  }

  .recruit-place {
    padding: var(--space-lg);
  }

  .recruit-persona__tags li {
    padding: 6px var(--space-md);
    font-size: 0.9375rem;
  }

  .recruit-persona__message {
    margin-top: 2.5rem;
  }

  .recruit-qual {
    padding: var(--space-lg);
  }

  .recruit-qual__list {
    grid-template-columns: minmax(0, 1fr);
  }
}
