/* しごとの宝箱ノート 販売ページ用（共通の ../style.css に追加） */

/* 10の章 */
.chapters { list-style: none; counter-reset: ch; padding: 0; margin: 28px 0 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.chapters li { counter-increment: ch; position: relative; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 16px 18px 16px 74px; font-size: 16px; color: var(--muted); }
.chapters li b { display: block; color: var(--navy); font-size: 19px; }
.chapters li::before { content: counter(ch); position: absolute; left: 18px; top: 16px; width: 40px; height: 40px; border-radius: 50%; background: var(--navy); color: #fff; font-weight: 700; display: grid; place-items: center; font-size: 18px; }
.chapters .ch-icon { position: absolute; right: 16px; top: 14px; font-size: 22px; }
.chapters .ch-first { grid-column: 1 / -1; border: 2px solid var(--gold); background: var(--cream); }
.chapters .ch-first::before { background: var(--gold); color: var(--ink); }
.chapters em { display: inline-block; font-style: normal; font-weight: 700; color: var(--gold-text); margin-left: 4px; }

.extras { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 28px; }
.extra { background: var(--cream); border-radius: var(--radius); padding: 20px 22px; }
.extra h3 { margin: 0 0 6px; color: var(--navy); font-size: 19px; }
.extra p { margin: 0; font-size: 17px; }

/* 白い背景の上の「使い方」 */
#flow .flow li { border: 1px solid var(--line); }
#flow .flow { grid-template-columns: repeat(5, 1fr); }

/* 料金表 */
.price-table { width: 100%; border-collapse: collapse; background: #fff; border-radius: var(--radius); overflow: hidden; margin-bottom: 14px; }
.price-table th, .price-table td { border-bottom: 1px solid var(--line); padding: 16px 18px; text-align: left; vertical-align: top; }
.price-table thead th { background: var(--navy); color: #fff; font-size: 16px; }
.price-table tbody th { color: var(--navy); font-size: 18px; }
.price-table tbody th small { display: block; color: var(--muted); font-weight: 400; font-size: 15px; margin-top: 2px; }
.price-table td { font-size: 22px; font-weight: 700; white-space: nowrap; color: var(--ink); }

/* よくある質問 */
.faq dt { font-weight: 700; color: var(--navy); margin-top: 20px; font-size: 18px; }
.faq dt::before { content: "Q. "; color: var(--gold-text); }
.faq dd { margin: 6px 0 0; padding-left: 1.6em; text-indent: -1.6em; font-size: 17px; }
.faq dd::before { content: "A. "; font-weight: 700; color: var(--navy); }

@media (max-width: 900px) {
  #flow .flow { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
  .chapters, .extras, #flow .flow { grid-template-columns: 1fr; }
  .price-table th, .price-table td { padding: 12px; }
  .price-table td { font-size: 19px; }
}
