/* はじめての先生へ */
.toc { background: var(--sheet); border: 1px solid var(--line); border-radius: var(--radius-m); padding: 12px 20px; max-width: 46em; margin-top: 20px; }
.toc ol { margin: 0; padding-left: 1.4em; columns: 2; column-gap: 32px; }
.toc li { break-inside: avoid; }
.three { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; max-width: 58em; margin: 12px 0; }
.three > div { background: var(--sheet); border: 1px solid var(--line); border-radius: var(--radius-m); padding: 14px 18px; }
.three dt { color: var(--mikata); }
.three dt { font-weight: 700; }
.three dd { margin: 4px 0 0; font-size: .95rem; }
.flow { border-collapse: collapse; background: var(--sheet); max-width: 52em; width: 100%; }
.flow th { text-align: left; font-size: .85rem; color: var(--ink-soft); padding: 8px 12px; border-bottom: 2px solid var(--ink); }
.flow td { padding: 10px 12px; border-bottom: 1px solid var(--line); vertical-align: top; }
.flow td:first-child, .flow td:nth-child(2) { white-space: nowrap; font-weight: 700; }
.next-step { margin-top: 40px; font-weight: 700; display: flex; gap: 24px; flex-wrap: wrap; }
#tsurai + p { background: var(--warn-pale); padding: 12px 16px; border-radius: var(--radius-s); }
@media (max-width: 860px) {
  .toc ol { columns: 1; }
  .three { grid-template-columns: 1fr; }
  .flow td:first-child, .flow td:nth-child(2) { white-space: normal; }
}
