/* コラム：公開本文の見出し・画像・余白 */
[data-page="detail"] .prose.blog-article-body { max-width: 800px; margin-inline: auto; }
[data-page="detail"] .prose.blog-article-body h2 { font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif; font-size: clamp(23px, 2.4vw, 30px); font-weight: 800; margin: 2em 0 .65em; padding-bottom: 10px; border-bottom: 2px solid #ffd3e2; }
[data-page="detail"] .prose.blog-article-body h3 { font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif; font-size: clamp(19px, 2vw, 23px); font-weight: 750; margin: 1.6em 0 .6em; }
[data-page="detail"] .prose.blog-article-body p { line-height: 2; margin: 0 0 1.5em; }
[data-page="detail"] .prose.blog-article-body ul { line-height: 2; padding-left: 1.6em; margin: 0 0 1.6em; }
[data-page="detail"] .prose.blog-article-body .blog-inline-image { margin: 24px 0 32px; }
[data-page="detail"] .prose.blog-article-body .blog-inline-image img { width: 100%; height: auto; object-fit: contain; border-radius: 12px; }
[data-page="detail"] .blog-cover { object-fit: contain; }

/* JOURNAL コラム：記事一覧へのリンク */
.jo-journal-section .jo-journal-blog-all,
.jo-journal-section .jo-journal-column-all {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  align-self: flex-end;
  gap: 9px;
  margin-top: 15px;
  padding: 6px 0;
  color: #bd0c56;
  font: 700 13px/1.5 "Noto Sans JP", sans-serif;
  text-decoration: none;
}
.jo-journal-section .jo-journal-blog-all span,
.jo-journal-section .jo-journal-column-all span { font-size: 20px; line-height: 1; }
.jo-journal-section .jo-journal-blog-all:hover,
.jo-journal-section .jo-journal-column-all:hover,
.jo-journal-section .jo-journal-blog-all:focus-visible { color: #f50064; text-decoration: underline; }
@media (max-width: 800px) {
  .jo-journal-section .jo-journal-blog-all,
　.jo-journal-section .jo-journal-column-all { margin-top: 12px; font-size: 12px; }
}

/* コラム記事：見出しの下線は表示しない */
[data-page="detail"] .prose.blog-article-body h2 { border: 0 !important; border-bottom: 0 !important; padding-bottom: 0; }


/* 安全な書式クラス：管理画面・プレビュー・公開記事共通 */
.blog-color-ink { color: #302329 !important; }
.blog-color-rose { color: #b90c54 !important; }
.blog-color-gray { color: #6b7280 !important; }
.blog-color-blue { color: #2563eb !important; }
.blog-color-green { color: #1d8a62 !important; }
.blog-highlight-yellow { background-color: #fff59e; }
.blog-highlight-pink { background-color: #ffd6e7; }
.blog-highlight-mint { background-color: #ccf5e7; }
.blog-align-left { text-align: left; }
.blog-align-center { text-align: center; }
.blog-align-right { text-align: right; }
.blog-fs-14 { font-size: 14px !important; }
.blog-fs-16 { font-size: 16px !important; }
.blog-fs-18 { font-size: 18px !important; }
.blog-fs-20 { font-size: 20px !important; }
.blog-fs-24 { font-size: 24px !important; }
.blog-fs-28 { font-size: 28px !important; }
.blog-fs-32 { font-size: 32px !important; }
.blog-font-gothic { font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif !important; }
.blog-font-maru { font-family: "Hiragino Maru Gothic ProN", "Yu Gothic", "Noto Sans JP", sans-serif !important; }
.blog-rich-editor s, .blog-preview-body s, .blog-article-body s { text-decoration: line-through; }
.blog-rich-editor u, .blog-preview-body u, .blog-article-body u { text-decoration: underline; }


/* コラム本文画像：管理画面で指定した幅・配置・リンクを公開側にも反映 */
[data-page="detail"] .prose.blog-article-body figure.blog-inline-image {
  box-sizing: border-box;
  max-width: 100%;
  margin-top: 24px;
  margin-bottom: 32px;
}
[data-page="detail"] .prose.blog-article-body figure.blog-inline-image > a {
  display: block;
  max-width: 100%;
  text-decoration: none;
}
[data-page="detail"] .prose.blog-article-body figure.blog-inline-image img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  border-radius: 12px;
}
[data-page="detail"] .prose.blog-article-body figure[data-blog-display-original="true"] img { width: auto; }

/* コラム本文：選択したフォント（通常表示はサイト指定のゴシックを維持） */
.blog-font-mincho { font-family: "Yu Mincho", "Hiragino Mincho ProN", serif !important; }
.blog-font-georgia { font-family: Georgia, "Times New Roman", serif !important; }
