@charset "UTF-8";
/* CSS Document */
.pc_view { display: none; }
.sp_view img { width: 100%; }
body { background: #fff; }
.headerLogo { display: block; width: 30%; margin: 2% 2.5%; float: left; }
h1#logo { width: 100%; height: 0; padding-top: 22%; text-indent: 100%; white-space: nowrap; overflow: hidden; background: url("../../img/sp/header_logo.png?190919") no-repeat; background-size: cover; }
#report_wrapper { background-color: #FFFFFF; margin: 4.5% 0; }
.pc{ display: none !important;}
.sp{ display: block !important;}
br.sp{ display: inline;}
/* パンくず */
#report_wrapper .breadcrumb { padding-left: 0; margin-left: 0; font-size: 2.5vw; }
#report_wrapper .breadcrumb li { display: inline; list-style: none; font-weight: bold; }
#report_wrapper .breadcrumb li:after { content: '>>'; padding: 0 3px; color: #555; }
#report_wrapper .breadcrumb li:last-child:after { content: ''; }
#report_wrapper .breadcrumb li a { text-decoration: underline; }
#report_wrapper .breadcrumb li a:hover { text-decoration: underline; }

/*common*/
.posting_date,#date_block,#report_wrapper .breadcrumb{ width: 92%; margin: 0 auto;}

/* キービジュアル */
h2 { width: 100%; background: url("../img/sp/kv_img_sp.png") no-repeat; background-size: 100% auto; background-position: bottom; position: relative; padding-bottom: 90%; margin: 0 auto 2.5%; top: 39.7vw;}
.kv_inner{ width: 100%; text-align: center; background-color: rgba(255,255,255,0.8); position: absolute; top: 0px; left: 0px;}
.icon_tag{ display: block; width: 21.3%; font-size: 2.93vw; color: #40bfab; background: #ffffff; border-radius: 5px; border: solid 1px #40bfab; position: absolute; top: -37.3vw; left: 4.4vw;}
.kv_sns{ display: block; position: absolute; top: -30vw; left: 4.4vw;}
.icon_sns{ display: block;}
.facebook,.twitter,.bookmark{  display: inline-block !important;}
.facebook,.twitter{ margin-right: 10px;}
.kv_txt{ font-size: 6.4vw; font-weight: bold; width: 91.2%; color: #222222; text-align: left; line-height: 1.31; position: absolute;  top: -18.9vw; left: 4.4vw;}
.posting_date{ font-size: 2.67vw; text-align: right; margin-bottom: 8.8%; position: relative; top: 39.7vw;}
/* ボタン */
.btn_block { margin-bottom: 60px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }
.btn_block a { width: 375px; }
.bt_media { width: 375px; height: 105px; background: url("../img/pc/bt_media.png") no-repeat; text-indent: 100%; white-space: nowrap; overflow: hidden; }
.bt_post { width: 375px; height: 105px; background: url("../img/pc/bt_post.png") no-repeat; text-indent: 100%; white-space: nowrap; overflow: hidden; }

/* ボタン */
#report_wrapper .btn_block { margin-bottom: 20px; }
#report_wrapper .btn_block a { width: 100%; display: block; }
#report_wrapper .bt_media { margin: 0 auto 4.2%; width: 76.4%; height: 0; padding-top: 25%; text-indent: 100%; white-space: nowrap; overflow: hidden; background: url("../img/sp/bt_media.png") no-repeat; background-size: cover; }
#report_wrapper .bt_post { margin: 0 auto 4.2%; width: 76.4%; height: 0; padding-top: 25%; text-indent: 100%; white-space: nowrap; overflow: hidden; background: url("../img/sp/bt_post.png") no-repeat; background-size: cover; }

/* ページネーション */
#pagination { width: 100%; margin: 0 auto 4.2%; display: none; }
#pagination p { text-align: center; margin-bottom: 4.2%; font-size: 4.5vw; }
#pagination .pageblock { margin-bottom: 4.2%; background: #fff; border: #cccccc 2px solid; border-radius: 5px; -webkit-border-radius: 5px; /* for Safari and Chrome 対応*/ -moz-border-radius: 5px; /* for Firefox 対応*/ }
#pagination .pageblock:after { display: block; clear: both; height: 0px; visibility: hidden; content: "."; }
#pagination .pageblock { min-height: 1px; /*IE6、7対策*/ }
#pagination ul { width: 100%; margin: 0 auto; display: -webkit-flex; display: flex; float: left; }
#pagination li { width: 100%; text-align: center; transition: background-color .2s linear 0s; position: relative; margin: 0 4px; border-right: #eaeaea 1px solid; padding: 10px 0; }
#pagination li a { display: block; text-decoration: none; color: #f59141; font-size: 4.5vw; font-weight: bold; line-height: 2em; }
#pagination .nopage a { color: #cccccc; }
#pagination .first { display: block; width: 30%; text-align: center; margin: 0; border-right: #eaeaea 1px solid; }
#pagination .last { display: block; width: 30%; text-align: center; margin: 0; float: left; border-right: none; }
#pagination a:hover { opacity: 0.7; filter: alpha(opacity=70); -ms-filter: "alpha( opacity=70 )"; }

/* 記事一覧 */
#news_list { margin-bottom: 2.8%; }
.news_box { position: relative; border-radius: 10px; border: solid 2px #ffd0aa; background: #fff9f4 url(../img/sp/icon_listarrow.png) no-repeat; background-position: 97% 50%; background-size: 2.5%; padding: 4.9% 7.7% 4.5% 3.5%; margin-bottom: 2.8%; }
.news_box a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; text-indent: -9999px; }
.news_box a:hover { background-color: #FFF; opacity: 0.3; filter: alpha(opacity=30); -ms-filter: "alpha( opacity=30 )"; }
.news_box:after { display: block; clear: both; height: 0px; visibility: hidden; content: "."; }
.news_box { min-height: 1px; /*IE6、7対策*/ }
ul.news_top { display: flex; justify-content: space-between; margin-bottom: 5.6%; }
li.category { font-size: 4.5vw; color: #f59141; font-weight: bold; }
li.category:before { content: 'カテゴリ：'; }
li.category b { text-decoration: underline; }
li.date { font-size: 4.5vw; color: #666666; }
#news_list h3 { font-size: 7vw; color: #333333; margin-bottom: 0; font-weight: bold; }
p.description { font-size: 4.5vw; line-height: 1.7; text-align: justify; margin-bottom: 4.9%; }
ul.keyword { display: flex; flex-wrap: wrap; }
ul.keyword li { border-radius: 6px; background: #fd8a2d; color: #fff; font-size: 4.5vw; padding: 2.8% 4.2%; margin-right: 2%; margin-bottom: 2%; font-weight: bold; }

/* レポート詳細 */
section > div{ margin: 0;}
#date_block { text-align: justify; position: relative; top: 39.7vw;}
#date_block section +section{ margin-top: 15.47%;}
#date_block h3{ font-weight: bold; font-size: 6.4vw; line-height: 1.42; color: #40bfab; margin-bottom: 5.8%;}
#date_block .border_line{ padding-bottom: 1.74%; background: #dadada; margin-bottom: 8.93%; position: relative;}
#date_block .border_line_green{width: 17.4%; padding-bottom: 1.74%; background: #40bfab; position: absolute; top: 0; left: 0;}
#date_block p { font-size: 4.27vw; line-height: 1.7; color: #333333;}
#date_block .detail_txt{ margin-bottom: 12.7vw;}
#date_block dt { color: #222222; font-size: 5.3vw; padding-bottom: 4px; text-align: left; font-weight: bold; margin-bottom: 9.27%; }
#date_block dd { text-align: center; }
#date_block dd img{ width: 100%;}
#date_block dd + dd{ margin-top: 10.6%;}
#date_block dd:last-child { margin-bottom: 0px; }
#date_block .topics_area{ background-color: #f8f8f8; border-radius: 10px; margin: 0 auto 17%; position: relative;}
#date_block .topics_logo{ width: 47.8%; position: absolute; top: -3.2vw; left: 24vw;}
#date_block .topics_logo img{ width: 100%;}
#date_block .topics_txt{ width: 89.9%; margin: 0 auto; overflow: hidden;}
#date_block .topics_txt p{ font-size: 5.33vw; line-height: 1.35; font-weight: bold; border-bottom: dotted 2px #dadada; margin-bottom: 1%;}
#date_block .topics_txt p:first-child{ margin-top: 9.56%;}
#date_block .topics_txt p:last-child{ margin-bottom: 5.65%; border-bottom: none;}
.txt_dot_orange{ color: #f59e41;}
#date_block .result_txt{ margin-bottom: 9.42%;}
#date_block .result_txt_box{ margin-bottom: 14.3%;}
#date_block .section_end{ height: 2px; border-top: 2px dotted #222222; margin: 17.4% auto 13.9%;}
#date_block .question_detail{ border: 2px solid #dadada; border-radius: 24px; overflow: hidden; }
#date_block .question_detail_inner{ margin: 5.65% 4.93% 5.8% 5.65%;}
#date_block .question_detail_txt a{ text-decoration: underline;}
#date_block .question_detail_txt + .question_detail_txt{ margin-top: 8.91%;}
#date_block h4{ font-size: 3.2vw; font-weight: bold; margin-bottom: 4.45%; color: #333333;}
#date_block h4 + p{ font-size: 3.2vw; line-height: 1.71; color: #333333;}

/* 商材表示 */
#item_block { margin-top: 11%; position: relative; top: 39.7vw; }

/* バナー表示 */
.bnr_area { margin-top: 5.6%; }

/* ローカルフッター */
.local_footer { width: 100%; background: #f2f2f2; margin-top: 24.6%; position: relative; top: 39.7vw; }
.local_footer_inner { padding: 20px 0; position: relative; width: 95%; margin-left: auto; margin-right: auto; }
.pagetop { text-align: center; background: #f2f2f2; position: absolute; top: -50px; width: 70%; left: 50%; margin-left: -36%; height: 50px; line-height: 50px; border-radius: 6px 6px 0 0; box-sizing: border-box; }
.pagetop a { color: #333; }
.pagetop_arrow { width: 18px; margin-left: 5px; position: absolute; top: 20px; }
.local_footer_link dt { font-weight: bold; margin-bottom: 5px; }

/*footer*/
footer{ position: relative; top: 39.7vw;}

/* SNS */
.sns_buttons{margin-bottom: 10.14%;}
.sns_button_list { width: 38.1%; margin: 40px auto 0 auto; display: flex; justify-content: space-around; }
#date_block .footer_sns { text-align: center; width: 25.47%; border-radius: 3px; }
#date_block .footer_sns a { display: block; width: 100%; height: 100%; }
#date_block .footer_sns a img{ width: 100%;}
.icon_twitter img { width: 60%; height: auto; }
.icon_facebook img { width: 37%; height: auto;}
.icon_googleplus img { width: 60%; height: auto; }
.icon_hatena img { width: 60%; height: auto;}

.flex_box {
  display: flex;
  justify-content: space-between;
}
