@charset "utf-8";


/* 基本HTMLタグ */
.article-body strong {
  font-weight: bold;
}
.article-body b {
  font-weight: bold;
}
.article-body sup {
  vertical-align: super;
  font-size: smaller;
}
body.smp .article-body sup {
  vertical-align: baseline; /* reset */
  font-size: 1em; /* reset */
}
.article-body small {
  font-size: smaller;
}
body.smp .article-body small {
  font-size: 1em; /* reset */
}

/* 改行 */
.article-body {
  word-wrap : break-word;
  overflow-wrap : break-word;
  word-break:normal;
}
body.smp .article-body {
  word-wrap : break-word;
  overflow-wrap : break-word;
  word-break:normal;
}

/* 記事本文 */
.article-body {
  font-size: 1em;
  line-height: 2;
}
body.smp .article-body {
  font-size: 1.05em;
  line-height: 1.5;
}
.article-body p {
  margin: .5em 0 1.5em;
}
.article-body h2,
.article-body h4{
  font-size: 1.5em;
  font-weight: bold;
  border-left: solid 4px #baac71;
  padding-left: .42em;
  margin: 1em 0;
  line-height: 1.25;
}
body.smp .article-body h2,
body.smp .article-body h4 {
  font-size: 1em;
  padding-left: .5em;
  padding-top: .5em;
  padding-bottom: .5em;
  border-left-width: 3px;
  margin: .5em 0;
}

/* 周り込み解除 */
.article-body .clearfix:before,
.article-body .clearfix:after {
  content:"";
  display:table;
}
.article-body .clearfix:after {
  clear:both;
}
.article-body .clearfix {
  zoom:1; /* For IE 6/7 (trigger hasLayout) */
}

/* 画像中央寄せ */
.article-body .figure-center {
  margin: 15px auto;
  max-width: 100%;
  background: #eee;
}
body.smp .article-body .figure-center {
  margin: 15px auto;
  max-width:100%;
}
.article-body .figure-center img {
  vertical-align: bottom;
  width: 100%;
}
.article-body .figure-center span {
  padding: 5px;
  display: block;
  font-size: .75em;
}

/* 画像右寄せ */
.article-body .figure,
.article-body .figure-right {
  float: right;
  margin: 0 0 15px 15px;
  max-width: 100%;
  background: #eee;
}
body.smp .article-body .figure,
body.smp .article-body .figure-right {
  float: none;
  margin: 15px auto;
  max-width:100%;
}
.article-body .figure img,
.article-body .figure-right img {
  vertical-align: bottom;
  width: 100%;
}
.article-body .figure span,
.article-body .figure-right span {
  padding: 5px;
  display: block;
  font-size: .75em;
}

/* 画像左寄せ */
.article-body .figure-left {
  float: left;
  clear:left;
  margin: 0 15px 15px 0;
  max-width: 100%;
  background: #eee;
}
body.smp .article-body .figure-left {
  float: none;
  margin: 15px auto;
  max-width:100%;
}
.article-body .figure-left img {
  vertical-align: bottom;
  width: 100%;
}
.article-body .figure-left span {
  padding: 5px;
  display: block;
  font-size: .75em;
}

/* ASCII配信記事用調整 */
.article-body figure{
max-width:100%;
}
.article-body figure img{
max-width:100%;
}

/* 説明文 */
.article-body .caption {
  font-size: .8em;
  padding: 5px;
  display:block;
  line-height: 1.5;
  text-align:left;
}
body.smp .article-body .caption {
  width: 100% !important;
  padding: 5px 0px;
  font-size: .875em;
}
.article-body .blank-caption{display:none;}

/* 記事本文内画像 */
.article-body .image-area img {
  max-width: 100%;
  height: auto !important;
  padding: 5px 0px;
}

/* 画像2枚並び */
.article-body .images-2cols {
  margin-bottom: 1.5em;
  clear: both;
  display: block;
}
.article-body .images-2cols .image-area {
  float: left;
  /*
  margin-right: 10px;
  width: 280px;
  */
  width:48%;
  text-align: center;
}
.article-body .images-2cols .image-area:last-child {
  margin-left: 10px;
  margin-right: 0;
}
.article-body .images-2cols .image-area img {
  width: 100%;
  /*max-width: 280px;*/
}

/* 画像3枚並び */
.article-body .images-3cols {
  margin-bottom: 1.5em;
  clear: both;
}
.article-body .images-3cols .image-area {
  float: left;
  /*margin-right: 10px;*/
  /*width: 185px;*/
  width:32%;
  text-align: center;
}
.article-body .images-3cols .image-area:last-child {
  margin-right: 0;
}
.article-body .images-3cols .image-area img {
  width: 100%;
  max-width: 200px;
}

/* 中央寄せ(移行) */
.article-body .central {
  text-align: center;
  clear: both;
}
.article-body .central .figure span,
.article-body .central .figure-right span,
.article-body .central .figure-center span {
  text-align: left; /* reset */
}
body.smp .article-body .central {
  text-align: left; /* reset */
}
/* 右寄せ */
.article-body .align-right{
  text-align:right;
  font-size:90%;
}
/* 中央寄せ */
.article-body .align-center{
  text-align:center;
}

/* 冒頭文(移行) */
.article-body .article-beginning,
.article-body .lead {
  color: #877521;
  font-weight: bold;
}
.article-body .article-selection-beginning {
  color: #360099;
  font-weight: bold;
}
/* クレジット(移行) */
.article-body .credit {
  display: block;
  /* text-align: right; */
  font-size: 0.8em;
  font-weight: bold;
}
/* 色 (移行：クラス名はそのまま) */
.article-body p.color-blue,
.article-body p span.color-blue,
.article-body .color-blue{
  /*color: #15276a;*/
  /*color:#360099;*/
  color:#1010aa;
}
.article-body p.color-red,
.article-body p span.color-red,
.article-body .color-red{
color:#CC0000;
}
/* 囲み記事 （移行）*/
.article-body .frame {
  display: block;
  padding: 5px;
  color: #333;
  background-color: #f5f5f5;
  border: dotted 2px #ccc;
  margin: 0 0 30px;
  font-size: 0.8em;
}
body.smp .article-body .frame {
  padding: 12px;
}
.article-body .frame h3 { /* 移行：元々は.frameに限らず、本文内h3のスタイル */
  font-size: 1.0em;
  font-weight: bold;
  padding-left: 10px;
  border-left: 12px groove #ff0000;
  margin: 1em 0;
}
.article-body .frame p {
  margin: 0;
}
.article-body .frame img {
  float: left;
  padding: 0 30px 5px 0;
  max-width: 100%;
}
body.smp .article-body .frame img {
  padding: 0 24px 2px 0;
}
.article-body .frame:before,
.article-body .frame:after {
  content: '';
  display: table;
  clear: both;
}