/* 作成日・更新日 横並び */
.blog-post__dates {
  display: flex;
  gap: 16px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 8px;
}
.blog-post__timestamp {
  font-size: 13px;
  color: #999;
}
.blog-post__timestamp--updated {
  font-size: 14px;
  color: #333;
  font-weight: 600;
}

/* 目次 */
.auto-toc {
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  padding: 20px 24px;
  margin: 32px 0;
  background: #fafafa;
  max-width: 680px;
}
.auto-toc__title { font-weight: bold; font-size: 1rem; margin: 0 0 12px; }
.auto-toc__list { list-style: none; padding-left: 0; margin: 0; }
.auto-toc__list li { font-size: 0.9rem; line-height: 1.6; }
.auto-toc__list a { color: #333; text-decoration: none; }
.auto-toc__list a:hover { text-decoration: underline; }
.toc-h2 { margin-top: 10px; margin-bottom: 0; font-weight: 600; }
.toc-h2:first-child { margin-top: 0; }
.toc-h3 { margin-left: 16px; margin-top: 2px; font-weight: normal; }
.toc-h4 { margin-left: 32px; margin-top: 2px; font-weight: normal; }

/* ===== データ表のデザイン ===== */
.blog-post__body table {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  width: 100% !important;
  margin: 24px 0 !important;
  border: 1px solid #d5dae0 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  font-size: 14px !important;
}
.blog-post__body table tr:first-child td,
.blog-post__body table tr:first-child th {
  background-color: #ccd5e0 !important;
  color: #1a2b3c !important;
  font-weight: 700 !important;
  text-align: left !important;
  padding: 10px 14px !important;
  border: none !important;
  border-bottom: 2px solid #b3c0cf !important;
}
.blog-post__body table td {
  background-color: #ffffff !important;
  color: #333333 !important;
  padding: 10px 14px !important;
  border: none !important;
  border-bottom: 1px solid #e8ebef !important;
  line-height: 1.7 !important;
}
.blog-post__body table tr:nth-child(even) td {
  background-color: #f2f4f7 !important;
}
.blog-post__body table td:first-child {
  font-weight: 700 !important;
  color: #1a2b3c !important;
  white-space: nowrap !important;
}}
.blog-post__body table tr:last-child td {
  border-bottom: none !important;
}
.blog-post__body table td[style*="background"] {
  background-color: #ffffff !important;
}
.blog-post__body table tr:first-child td[style*="background"] {
  background-color: #ccd5e0 !important;
}