.hero-recruit {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--font-jp);
  font-size: 12px; font-weight: 600; letter-spacing: 0;
  color: var(--accent);
  background: var(--accent-soft);
  border: 1px solid var(--accent-tint);
  padding: 6px 15px; border-radius: 999px;
}
.hero-recruit i.ph { font-size: 16px; }

/* 募集再開ノート */
.notice-card {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: clamp(28px, 3.6vw, 40px);
  font-family: var(--font-jp);
  font-size: 16px; line-height: 2.05; color: var(--fg);
  box-shadow: var(--shadow-sm);
}

/* 面談で行うこと list */
.do-list { list-style: none; }
.do-list li {
  display: flex; gap: 13px; align-items: flex-start;
  padding: 15px 0; border-top: 1px solid var(--border);
  font-family: var(--font-jp); font-size: 16px; line-height: 1.75; color: var(--fg);
}
.do-list li:first-child { border-top: none; }
.do-list li .ph {
  flex-shrink: 0; margin-top: 3px;
  color: var(--accent); font-size: 19px;
}

/* 受講までの流れ（3ステップ） */
.join-flow { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.join-step {
  background: var(--card); border: 1px solid var(--border);
  border-radius: var(--radius-lg); padding: 26px 24px;
  display: flex; flex-direction: column; gap: 10px;
}
.join-step-num {
  font-family: var(--font-en); font-size: 12px; font-weight: 600;
  letter-spacing: 0; color: var(--accent);
}
.join-step h4 { font-family: var(--font-heading); font-size: 16px; font-weight: 600; color: var(--fg); }
.join-step p { font-family: var(--font-jp); font-size: 14px; line-height: 1.85; color: var(--muted); }

.cols-2 { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(20px, 3vw, 32px); }

@media (max-width: 760px) {
  .join-flow { grid-template-columns: 1fr; }
  .cols-2 { grid-template-columns: 1fr; }
}

/* 個別指導セクション: 読みやすい行長に制限 */
.exam-insight-body { max-width: 760px; margin: 0; }

.kobetsu-support-grid {
  align-items: stretch;
}

.kobetsu-support-label {
  margin: 0 0 4px;
  color: var(--accent);
  font-family: var(--font-jp);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
}

.kobetsu-enrollment-note {
  margin-top: 18px;
  color: var(--muted);
  font-family: var(--font-jp);
  font-size: 14px;
  line-height: 1.9;
}

.kobetsu-pricing-grid {
  grid-template-columns: minmax(0, 520px);
  justify-content: center;
}

.kobetsu-pricing-note {
  margin-top: 20px;
  color: var(--muted);
  font-family: var(--font-jp);
  font-size: 14px;
  line-height: 1.9;
  text-align: center;
}
