@charset "utf-8";

/* 改行 */
.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.no-border{border-style:none;}
.article-body--padding { padding: 0; border: none; margin: 20px 0; }

/* 記事本文 */
.article-body p {
  margin: 0 0 20px;
  line-height: 180%;
  font-size: 16px;
  font-size: 1.6rem;
}
.article-body p.little-font {
  margin: 0 0 20px;
  line-height: 180%;
  font-size: 90%;
}

.article-body a {
 color:#936449;
 text-decoration:underline;
}
.article-body a:hover {
 text-decoration:none;
}
.article-body strong{
 font-weight:bold;
}

.article-body h2 {
    font-size: 2.2rem;
    line-height: 180%;
    font-weight:bold;
    margin-bottom: 0.4rem;
}
.article-body h3 {
    font-size: 2.2rem;
    line-height: 180%;
    font-weight:bold;
    margin-bottom: 0.4rem;
}
.article-body h3.serif{text-align:center;color:#166434;margin:40px 0 20px;font-family: Georgia, 'Hiragino Mincho ProN', 'Yu Mincho', serif;}
body.smp .article-body h3.serif {margin-bottom:20px 0;}
.article-body h4 {
    font-size: 1.9rem;
    line-height: 180%;
    font-weight:bold;
    margin-bottom: 0.4rem;
}

/* -- 小見出し(赤) --2019.05追加 */
.article-body h4.red { color: #e20606; border-bottom: 1px solid #e20606; margin: 20px 0;  line-height: 24px;  text-align: center; position: relative; padding: 0 1em .2em; }
.article-body h4.red::before { background-image: linear-gradient(45deg, #e20606 5px, transparent 0); content: ""; display: block; width: 10px; height: 10px; vertical-align: bottom; position: absolute; bottom: 0; left: 0; }
.article-body h4.red::after { background-image: linear-gradient(-45deg, #e20606 5px, transparent 0); content: ""; display: block; width: 10px; height: 10px; vertical-align: bottom; position: absolute; bottom: 0; right: 0; }

.article-body .summary,.article-body .summary p {
    font-size: 1.3rem;
    line-height: 180%;
    color:#707070;
    margin-bottom: 0.4rem;
}
.article-body .boxed-article {
    font-size: 1.3rem;
    line-height: 180%;
    color:#707070;
    background-color:#eeeeee;
    padding:20px;
    margin-bottom: 0.4rem;
}
.article-body .boxed-article p {
    font-size: 1.3rem;
    line-height: 180%;
    color:#707070;
    margin: 0;
}

/* 記事本文 */
.article-body .lead {
  padding: 30px 34px;
  color: #666;
  font-size: 12px;
  font-size: 1.2rem;
}

/* 周り込み解除 */
.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;
  text-align:center;
  max-width:590px;
}
body.smp .article-body .figure-center {
  margin: 15px auto;
  text-align:center;
  max-width:100%;
}
body.smp .article-body .figure-center img{
/* width:100%; */
}

/* 画像右寄せ */
.article-body .figure-right {
  float: right;
  margin: 0 0 15px 15px;
  max-width:590px;
}
body.smp .article-body .figure-right {
  float: none;
  margin: 15px auto;
  max-width:100%;
  text-align:center;
}
body.smp .article-body .figure-right img{
/* width:100%; */
}


/* 画像左寄せ */
.article-body .figure-left {
  float: left;
  clear:left;
  margin: 0 15px 15px 0;
  max-width:590px;
}
body.smp .article-body .figure-left {
  float: none;
  margin: 15px auto;
  max-width:100%;
  text-align:center;
}
body.smp .article-body .figure-left img{
/* width:100%; */
}


/* 説明文 */
.article-body .caption {
  font-size: 12px;
  font-size: 1.2rem;
  padding: 5px;
  /*display: inline-block;*/
  display:block;
  line-height: 1.5;
  text-align:left;
}
body.smp .article-body .caption {
  width: 100% !important;
  padding: 5px 0px;
}

.article-body .blank-caption{display:none;}

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

/* 画像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 .align-right{
  text-align:right;
  font-size:90%;
}

/* -- 囲みスタイル -- */
.article-body .box-style{
border: 2px solid #166434;
padding:15px 30px;
font-size: 1.2rem;
line-height:17px;
margin: 16px 16px;
}


/* -- 動画 -- */
.article-body .video{
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}
.article-body .video iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* -- pdf -- */
.article-body .pdf{
  float:right;
  margin: 0 0 20px;
  width:60%;
  line-height: 180%;
}
body.smp .article-body .pdf{
  width:80%;
}
.article-body .pdf .image{
  display:block;
  float:right;
  width:64px;
  margin:0px 0px 0px 10px;
}
.article-body .pdf .title{
  display:block;
  float:right;
  max-width : -webkit-calc(100% - 74px) ;
  max-width : calc(100% - 74px) ;
  margin-top:10px;
  font-size:14px;
}


/* -- 位置調整 -- */
.article-body .align-center{
    text-align:center;
}

/* -- アコーディオン --*/
.article-body .accordion{
margin-left:18px;
}
.article-body .accordion-trigger{
  font-weight:bold;
  color:#ff0033;
  cursor:pointer;
}
.article-body .accordion-trigger:before{
  content:"＋ ";
}
.article-body .accordion-trigger.open:before{
  content:"－ ";
}

/* -- イベントページのテーブル -- */
.article-body.event table{
    margin:0 0 20px;
    max-width:100%;
    min-width: 300px;
}
.article-body.event th,
.article-body.event td{
    padding:10px;
    vertical-align:top;
    border:1px solid #CCC;
}
.smp .article-body.event td .image-area{
    /*max-width:128px;*/
    max-width:250px;
}

.article-body.event td .figure-right{
    /* float:none; */
    /* text-align:center; */
    /*  margin: 15px auto; */

}

/* -- 記事内罫線 -- */
.article-body hr{
    background-color: #aaa;
    border: 0 none;
    height: 1px;
}


/* -- 旧サーバーからの移行記事 -- */
.article-body.migration .figure-left,
.article-body.migration .figure-right{
   /*max-width:60%;*/
}
.article-body.migration table{
    margin:0 0 20px;
    max-width:100%;
    width: 100% !important;
}
.article-body.migration th,
.article-body.migration td{
    padding:10px;
    vertical-align:top;
    border:1px solid #CCC;
}
.article-body.migration td .image-area{
    max-width:128px;
}
.article-body.migration .source { clear: both; }

.article-body table{
border-collapse:collapse;
max-width: calc(100vw - 20px);
}
.article-body table th,.article-body table td{
padding:3px 10px;
border:1px solid #ccc;
}
.article-body table th{
background-color:#ccc;
}


/* -- 広告リッチコンテンツ -- */
#adsp-main .adsp-mainvisual{margin-top:5px;}
#adsp-main .sns-buttons{border-style:none;margin:24px auto 0;width:600px;}
#adsp-main .article-body{border-style:none;}
#adsp-main .article-body .article-body-inner{width:830px;margin:0 auto;}
#adsp-main .article-body .article-body-inner h3{text-align:center;color:#166434;margin:50px 0;font-family: Georgia, 'Hiragino Mincho ProN', 'Yu Mincho', serif;}
#adsp-main .company-info{background:#eee;padding:20px 50px;}
#adsp-main .company-info h4{color:#166434;}
#adsp-main .company-info h3{color:#166434;margin:0 0 20px;text-align:left;}

/* -- 広告ブランディングページ -- */
/* -- 大枠のレイアウト -- */
#ad-branding .main-visual{margin:0 auto;height:550px;width:100%;display:block;overflow:hidden;background-size:cover;background-repeat:no-repeat;position:relative;}
#ad-branding .main-visual .page-title{
  position:absolute;
  top:10%;
  -webkit-transform: translateY(-10%);
  transform: translateY(-10%);
  left:5%;
}
#ad-branding .main-visual .page-title h1{font-weight:bold;font-size:25px;}
#ad-branding .main-visual .page-title h2{font-size:22px;}
#ad-branding .main-visual .main-title{
  position:absolute;
  top:80%;
  -webkit-transform: translateY(-70%);
  transform: translateY(-70%);
  left:8%;
}
#ad-branding .main-visual .main-title h2{color:#444;font-size:18px;letter-spacing:1px;font-weight:bold;}
#ad-branding .main-visual .main-title h2 .name{display:block;font-size:26px;font-weight:normal;}
#ad-branding .main-visual .main-title h2 .small{font-size:16px;}
#ad-branding .main-visual .main-title .cross{font-size:65px;text-align:center;color:#166434;line-height:1;}
#ad-branding .main-visual .logo{position:absolute;right:10px;bottom:10px;}
#ad-branding .main-visual .pr{position:absolute;top:10px;right:10px;font-size:15px;font-weight:bold;background:#fff;padding:5px 10px;line-height:1;}

#ad-branding .project{font-size:13px;text-align:right;padding:10px 40px;}

.article-body.ad-branding .summary{text-align:left;line-height:1.6;font-size:18px;border-bottom:solid 1px #ccc;margin-bottom:30px;padding:0 40px 30px;}
.article-body .article-body-inner.ad-branding{position:relative;}
.article-body .article-body-inner.ad-branding .gradient{
position:absolute;
top:0;
right:0;
left:0;
bottom:0;
width:200px;
display:block;
background-image:-moz-linear-gradient(top,  #166434 0%, #389362 50%, #70a89d 99%);
background-image:-webkit-linear-gradient(top,  #166434 0%,#389362 50%,#70a89d 99%);
background-image:linear-gradient(to bottom,  #166434 0%,#389362 50%,#70a89d 99%);
}
.article-body .article-body-inner.ad-branding{width:100% !important;}
.article-body .body-branding{z-index:999;position:relative;}

/* -- 小見出し -- */
.article-body .body-branding .heading{width:100%;margin-bottom:20px;}
.article-body .body-branding .heading::after{content:"";display:block;clear:both;}
.article-body .body-branding .heading .left{float:left;width:200px;box-sizing:border-box;}
.article-body .body-branding .heading .left h5{color:#fff;font-weight:bold;font-size:22px;padding:5px 10px;text-align:center;}
.article-body .body-branding .heading .right{float:right;width:722px;box-sizing:border-box;padding-left:50px;}
.article-body .body-branding .heading .right h4{margin:0;font-size:30px;border-bottom:solid 3px #166434;}
.article-body .body-branding p{padding-left:330px;}
.article-body .body-branding p strong{margin-left:-80px;}

/* -- 対談形式 -- */
.article-body .body-branding .interviewer{width:670px;padding-left:250px;}
.article-body .body-branding .person .interviewer{float:right;width:670px;padding-left:0;}
.article-body .body-branding .interviewer p.name:first-child,
.article-body .body-branding .interviewer p.name.morethan{padding-left:80px;text-indent:-80px;}
.article-body .body-branding .interviewer p.name:first-child span,
.article-body .body-branding .interviewer p.name.morethan span{display:inline-block;font-weight:bold;width:80px;text-indent:0;color:#176535;}
.article-body .body-branding .interviewer p{padding-left:80px;}

.article-body .body-branding .person{position:relative;}
.article-body .body-branding .person::after{content:"";display:block;clear:both;}
.article-body .body-branding .person .profile.personal{float:left;width:220px;margin-left:10px;}

/* -- プロフィール -- */
.article-body .body-branding .profile{padding:0;max-width:220px;}
.article-body .body-branding .profile .image-area{max-width:220px;padding-left:0;}
.article-body .body-branding .profile .image-area img{width:100%;}
.article-body .body-branding .profile .text{width:200px;text-align:left;margin:0 auto;padding:0 20px 0 0;box-sizing:border-box;color:#fff;}
.article-body .body-branding .profile .text h5{padding:0;margin:0;font-size:13px;font-weight:bold;margin-bottom:10px;}
.article-body .body-branding .profile .text p{padding:0;font-size:11px;line-height:1.4;}
.article-body .body-branding .profile .text span.pname{font-size:16px;}

.article-body.ad-branding .body-branding .figure-center{max-width:670px;margin:15px auto;padding-left:230px;}

/* -- 記事下告知スペース -- */
.article-body.ad-branding .information.ad-branding{margin:40px auto;}
.article-body.ad-branding .information.ad-branding .figure-center{max-width:800px;}

.article-body.ad-branding .information.ad-branding .profiles{background:#f0f9f5;padding:15px;width:800px;margin:auto;box-sizing:border-box;}
.article-body.ad-branding .information.ad-branding .profiles ul li::after{content:"";display:block;clear:both;}
.article-body.ad-branding .information.ad-branding .profiles ul li{border-bottom:solid 1px #cde5d9;padding:10px 0;}
.article-body.ad-branding .information.ad-branding .profiles ul li:last-child{border-style:none;padding-bottom:0;}
.article-body.ad-branding .information.ad-branding .profiles ul li .figure-left{margin-bottom:0;}
.article-body.ad-branding .information.ad-branding .profiles ul li h5{font-size:16px;font-weight:bold;letter-spading:1px;}
.article-body.ad-branding .information.ad-branding .profiles ul li h5 span.pname{font-size:19px;}
.article-body.ad-branding .information.ad-branding .profiles ul li p{font-size:14px;}

.ad-branding-related{border-top:solid 1px #ccc;border-bottom:solid 1px #ccc;padding:25px 0;}
.ad-branding-related ul{width:600px;margin:auto;}
.ad-branding-related ul li{font-size:18px;margin-bottom:10px;position:relative;padding-left:15px;}
.ad-branding-related ul li:last-child{margin-bottom:0;}
.ad-branding-related ul li::before{content:"";display:block;position:absolute;top:7px;left:0;width:10px;border-left:solid 7px #166434;border-top:solid 5px transparent;border-bottom:solid 5px transparent;border-right:solid 5px transparent;}

.landing{width:800px;margin:15px auto;box-sizing:border-box;text-align:center;}
.landing a{display:block;text-decoration:none;background: -moz-linear-gradient(top,  #166434 0%, #12542b 100%);background: -webkit-linear-gradient(top,  #166434 0%,#12542b 100%);background: linear-gradient(to bottom,  #166434 0%,#12542b 100%);color:#fff;font-size:22px;letter-spacing:2px;padding:10px 0;position:relative;}
.landing a::after{content:"";display:block;width:10px;position:absolute;top:27px;right:20px;border-style:solid;border-color:transparent transparent transparent #fff;border-width:15px;}
.landing a::before{content:"";display:block;width:10px;position:absolute;top:27px;right:40px;border-style:solid;border-color:transparent transparent transparent #fff;border-width:15px;}
.landing a span{color:#f6cd0c;font-weight:bold;font-size:25px;}

/* -- グレー背景ブロック -- */
.article-body .template-company-info{background:#eee;padding:20px 50px;margin-top:60px;}
body.smp .article-body .template-company-info{padding: 15px;}
.article-body .template-company-info__ttl {color:#166434;}
.article-body .template-company-info__name {color:#166434;margin:0 0 20px;text-align:left;font-size: 2.2rem; line-height: 180%; font-weight: bold;}

/* 記事下有料記事ブロック */
.col-title.article-bottom{
margin-bottom:0px;
}

/* コメントモジュールのスタイル */
.artcile-comment {
  margin: 20px 0;
}
.artcile-comment-item {
  display: flex;
  padding-bottom: 20px;
  margin-bottom: 10px;
  border-bottom: 1px solid #f2f2f2;
}
.artcile-comment-item__icon {
  width: 44px;
  flex-shrink: 0;
  margin-right: 20px;
}
.artcile-comment-item__icon > img {
  max-width: 100%;
  border-radius: 50%;
}
.artcile-comment-item__info {
width: 100%;
}
.artcile-comment-item__contributor {
  font-size: 13px;
}
.artcile-comment-item__contributor > span {
  font-weight: bold;
  margin-right: 5px;
}
.artcile-comment-item__body {
  clear: both;
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.6;
}
.artcile-comment-item__bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 8px;
}
.artcile-comment-item__date {
  font-size: 12px;
}
.artcile-comment-item__recommend {
  border-radius: 3px;
  background-color: #166434;
  padding: 3px 6px;
  display: inline-block;
  color: #fff;
  font-size: 11px;
}
.artcile-comment-item__recommend-label::after {
  content: '';
  background: url(/common/rtc/images/v1/common/good.png) right 1px / contain no-repeat;
  width: 14px;
  height: 14px;
  display: inline-block;
  margin-left: 2px;
}
.article-new-feedback {
    background-color: #f1f1f1;
    padding: 40px;
    margin-bottom: 30px;
}
.article-new-feedback input[name="feedback[title]"] {
  margin-bottom: 10px;
  border: 1px #bbb solid;
  border-radius: 3px;
  padding: 3px 6px;
}
.article-new-feedback > form > textarea {
  width: 100%;
  padding: 6px;
  box-sizing: border-box;
}
.article-new-feedback__submit {
  background-color: #166434;
  color: #fff;
  border: none;
  min-width: 200px;
  line-height: 30px;
  margin-top: 10px;
  display: block;
  cursor: pointer;
}
.article-new-feedback__note {
  font-size: 12px;
  margin-top: 20px;
}
.artcile-comment-item__ttl {
  font-size: 12px;
  margin-bottom: 6px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.artcile-comment-login {
  border: 1px solid #166434;
  padding: 20px;
  margin-top: 30px;
  text-align: center;
}
.artcile-comment-login__ttl {
  font-size: 16px;
  line-height: 2;
  font-weight: bold;
  margin-bottom: 10px;
  color: #166434;
  text-align: center;
}
.artcile-comment-login-link > a { color: #936449; text-decoration: underline; font-weight: bold;  display: block; margin-bottom: 20px; font-size: 18px; }
.artcile-comment-login-btns { max-width: 590px; width: 90%; margin: 0 auto 30px; display: flex; flex-wrap: wrap; justify-content: center; }
.artcile-comment-login-btns__item { width: calc(40% - 20px); display: block; border-radius: 10px; padding: 1em; text-align: center; color: #FFF; text-decoration: none; font-size: 2rem; margin: 0 10px;  }
.artcile-comment-login-btns__item span { display: block; font-size: .6em; }
.artcile-comment-login-btns__item--buy { background: rgb(112,173,71); transition: background .3s;  }
.artcile-comment-login-btns__item--buy:hover { background: rgb(91 151 51); }
.artcile-comment-login-btns__item--risk{ background: rgb(237,125,49); transition: background .3s; }
.artcile-comment-login-btns__item--risk:hover { background: rgb(215 104 29); }
.artcile-comment-login-btns__item:hover { text-decoration: none; }
#recommend_button { cursor: pointer; }
.artcile-comment--top .artcile-comment-item__info { max-width: calc(100% - 50px);  }
.artcile-comment--top .artcile-comment-item__body { font-size: 13px; margin-top: 5px; }
.artcile-comment--top .artcile-comment-item { margin-bottom: 5px; padding-bottom: 10px; }
.artcile-comment--top .artcile-comment-item__icon { width: 30px; }
@media screen and (max-width: 767px) {
  .article-new-feedback { padding: 30px 20px; }
  .article-new-feedback__submit { margin: 10px auto 0; }
  .artcile-comment-login-btns__item { width: 100%; margin: 0 0 10px; }
}
/* 記事コメント機能を折りたたむ */
.article-comment input[type=checkbox]{display:none}.article-comment__body{font-size:1.4rem;display:none;margin-top:10px}#article-comment:checked~.article-comment__body{display:block}.article-comment__btn{font-size:13px;line-height:34px;display:block;width:260px;margin-left:auto;cursor:pointer;text-align:center;border:1px solid #aaa;border-radius:3px;-webkit-box-shadow:0 1px 1px #ddd;box-shadow:0 1px 1px #ddd}.article-comment__btn:before{display:inline-block;width:14px;height:14px;margin-right:5px;content:"";background:url(/common/rtc/images/v1/common/icon-comment.svg?rd=202112) 0 0/contain no-repeat}

.article-status {
  margin: 10px 0 0 -7px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  -ms-flex-align: center;
  -webkit-box-align: center;
  align-items: center;
}

/* 記事キーワード下 メルマガ導線 */
.article-btn-lead {
  margin:30px auto;
  width:40%;
}
.article-btn-lead .members-btn-wrap{
  margin-left: 0;
}