/* 記事本文のうち、CMS の文章ブロック（.cms-body）の装飾。旧サイトから取り込んだ本文（legacy_body）には効かせない（現行の見た目を保つ）。
   テーマの style.css は見出し・リスト・太字・引用の見た目をすべて打ち消すリセット型で、
   WordPress 時代に「装飾が効いたり効かなかったり」した原因。CMS のボタンで付けた装飾がそのまま見えるようにする。 */
.cms-body h2 { font-size: 1.4em; font-weight: bold; line-height: 1.5; padding: 40px 0 0 0; border-bottom: 1px solid #e30d41; padding-bottom: 6px; }
.cms-body h3 { font-size: 1.2em; font-weight: bold; line-height: 1.5; padding: 30px 0 0 0; }
.cms-body h4 { font-size: 1.05em; font-weight: bold; padding: 24px 0 0 0; }
.cms-body strong, .cms-body b { font-weight: bold; }
.cms-body em, .cms-body i { font-style: italic; }
.cms-body u { text-decoration: underline; }
.cms-body s { text-decoration: line-through; }
.cms-body a { text-decoration: underline; }
.cms-body ul, .cms-body ol { padding: 20px 0 0 1.6em; }
.cms-body ul { list-style: disc; }
.cms-body ol { list-style: decimal; }
.cms-body li { padding: 4px 0 0 0; }
.cms-body li p { padding: 0; }
.cms-body blockquote { margin: 30px 0 0 0; padding: 4px 0 4px 16px; border-left: 3px solid #c8c8d0; color: #5a5a5a; }
.cms-body blockquote p { padding: 0; }
.cms-body hr { border: 0; border-top: 1px solid #c8c8d0; margin: 30px 0 0 0; }
.cms-body code { font-family: monospace; background: #e2e2ea; padding: 0 4px; }
.cms-body table { border-collapse: collapse; margin: 30px 0 0 0; }
.cms-body th, .cms-body td { border: 1px solid #c8c8d0; padding: 6px 10px; }
.cms-body figure { margin: 30px 0 0 0; }
.cms-body iframe { max-width: 100%; }

/* 画像ブロック（サイズ: 大＝横幅いっぱい / 中＝半分 / 小＝3 分の 1、配置: 中央 / 左 / 右） */
.cms-body .cms-fig { margin: 30px 0 0 0; }
.cms-body .cms-fig img { width: 100%; height: auto; display: block; }
.cms-body .cms-fig figcaption { font-size: 0.85em; color: #6a6a6a; line-height: 1.6; padding: 6px 0 0 0; text-align: center; }
.cms-body .cms-fig--l { width: 100%; }
.cms-body .cms-fig--m { width: 50%; }
.cms-body .cms-fig--s { width: 33%; }
.cms-body .cms-fig--center { margin-left: auto; margin-right: auto; clear: both; }
.cms-body .cms-fig--left { float: left; margin: 30px 24px 10px 0; }
.cms-body .cms-fig--right { float: right; margin: 30px 0 10px 24px; }
.cms-clear { clear: both; }
/* スマホ: 回り込みをやめ、中は横幅いっぱい・小は半分で中央に */
@media screen and (max-width: 640px) {
  .cms-body .cms-fig--left, .cms-body .cms-fig--right { float: none; margin: 30px auto 0 auto; }
  .cms-body .cms-fig--m { width: 100%; }
  .cms-body .cms-fig--s { width: 50%; margin-left: auto; margin-right: auto; }
}
