@charset "utf-8";

/*********************************************************************
 *
 * </news/digest/css_v3/common.css>
 *
 * 更新日: 2018/6/28
 *
 *********************************************************************/

/*********************************************************************
Foundation
 *********************************************************************/
h1, #main h2, #main h3, #main h4, #main h5 {
    font-weight: bold;
    font-size: 1.125rem;
    margin: 0;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    padding: 0;
    background: none;
}

/*grid col*/

.col.c-narrow,.col .c-narrow{width: 75%;}
.col.c-narrow--60, .col .c-narrow--60{width: 60%;}


.col2 .col { width: 380px; }

.col3 .col { width: 240px; }
.col3 .col.span-2 { width: 520px; }

.col4 .col { width: 170px; }
.col4 .col.span-2 { width: 380px; }
.col4 .col.span-3 { width: 590px; }

.col5 .col { width: 128px; }
.col5 .col.span-2 { width: 296px; }
.col5 .col.span-3 { width: 464px; }
.col5 .col.span-4 { width: 632px; }

.c-box_article .col2 .col { width: 355px;}
.c-box_article .col3 .col { width: 226px;} /*gutter--31*/
.c-box_article .col3 .col.span-2 { width: 483px;}
.c-box_article .col4 .col { width: 161px; } /*gutter--32*/
.c-box_article .col4 .col.span-2 { width: 354px; }
.c-box_article .col4 .col.span-3 { width: 547px; }

.c-box_article .col.c-narrow { width: 600px; }/*col.narrow--in box_article*/

#main .col img{
	margin-top: 0.45rem; /* line-height - 1rem / 2 (+視覚調整) テキストのカラムとTopの高さをそろえる */
}
.sp #main .col img{
	margin-top: inherit;
}

/*list*/
ol.list{
	margin: 0;
}
ol.list li{
	list-style: decimal;
	margin: 0.5rem 0 0.5rem 1.25rem;
	line-height: 1.7;
}


/*********************************************************************
Object
 *********************************************************************/

/*  Component
---------------------------------------------------------- */

.c-flex_start{
	display: flex;
	justify-content:flex-start;
}
.c-flex_end{
	display: flex;
	justify-content:flex-end;
}
.c-flex_between{
	display: flex;
	justify-content: space-between;
}
.c-flex_center{
	display: flex;
	justify-content:center;
}
.c-flex_alignItem_center{
	align-items: center;
}
.c-flex_wrap{
	flex-wrap: wrap;
}
.c-align_center{
	text-align: center;
}
.c-align_right{
	text-align: right;
}
.c-valign_middle{
	vertical-align: middle;
}
.c-txt_blue{
	color: #1c418d;
}
.c-bold{font-weight: bold;}
.c-gray_bk{
	background-color: #f0f0f0;
}
.c-justify{
	text-align: justify;
	text-justify: inter-ideograph;
}

.c-mt--1{
	margin-top: 1rem !important;
}
.c-mt--2{
	margin-top: 2rem !important;
}

.c-mb--1{
	margin-bottom: 1.25rem !important;
}
.c-mb--2{
	margin-bottom: 2.5rem !important;
}

.c-heading_margin{
	margin-top: 1.25rem !important;
	margin-bottom: 1.25rem !important;
}

.c-caption{
	font-size: 0.875rem;
	line-height: 1.5625rem;
	padding: 0.3125rem 0 0;
	color: #46484E;
}
.c-note{
	font-size: 0.875rem;
	line-height: 1.5625rem;
	padding-left: 1em;
	text-indent: -1em;
}

.c-fill-width{
	width: 100%;
	height: auto;
}
.c-fill-height{
	height: 100%;
	width: auto;
}

/*c-box_article --- kakomi*/
.c-box_article{
	background-color: #f4f4f4;
	padding: 0rem 1.875rem;
}
.c-box_article.c-border{
	padding-left: 29px;
	padding-right: 29px;
	background-color: inherit;
	border: #ccc 1px solid;
}
.c-box_article.c-padding{
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.c-bg_gray{
	background-color: #e6e6e6;
}

/*c-sub_bn*/
.c-sub_bn{
	width: 280px;
	margin: 0 auto 0.75rem;
	box-shadow: 1px 2px 12px -2px rgba(0,0,0,0.3);
}
.c-sub_bn a{
	display: block;
	position: relative;
	background-color: #fff;
}
.c-sub_bn a::after{
	content:"";
	display: block;
	position: absolute;
	top:0px; left: 0px;
	width: 100%; height: 100%;
	background-color: rgba(0,0,0,0.2);
	opacity: 0;
	transition:opacity 0.3s;
}
.c-sub_bn:hover a::after{
	opacity: 1;
}
.c-sub_bn:last-of-type{
	margin-bottom: 0;
}

/*  project
---------------------------------------------------------- */

.p-digest_title_bar{
	width: 100%;
	height: auto;
	background-color: #333;
	margin-top: 10px !important;
	margin-bottom: 1rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	line-height: 1;
	border-radius: 0 6px 0 0;
}
.p-digest_title_bar__digestLogo{
	flex: 0 0 auto;
	width: 435px;
}
.p-digest_title_bar__month{
	flex: 0 0 auto;
	width: 130px;
	text-align: right;
}

/*
 Utility
*/

.u-mb--none{
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}

br.u-spBr{
	display: none;
}
br.u-spNone{}
.u-spNarrow{}

/*txt_co2_m2*/

.sub{
	font-size:70%;
}

.sup{
	font-size:70%;
	vertical-align:top;
}

@media print {
	#body{
		width: 860px;
	}
	.p-bnav{
		display: none;
	}
	
}


/*********************************************************************
sp
 *********************************************************************/
body.sp #body{
	padding-bottom: 0;
}

body.sp #main{
	font-size: 0.9375rem !important;
	padding-bottom: 0;
}

body.sp #main h1, body.sp #main h2 {
    max-width: 106.2% !important;
    overflow: visible;
}
.sp .go_pagetop_frame{
	z-index: 2; display: none;
	opacity: 1;
	transition: inherit;
}

.sp div.section.c-mb--1{
	margin-bottom: 1rem !important;
}
.sp div.section.c-mb--2{
	margin-bottom: 2rem !important;
}

.sp .c-caption{
	color: #5B5D62;
}

.sp .p-digest_title_bar{
	width: 106.2%;
	margin-left: -3.1%;
	margin-right: -3.1%;
	min-height: 36px;
}
.sp .p-digest_title_bar__digestLogo{
	width: 76%;
}
.sp .p-digest_title_bar__month{
	width: 24%;
}

.sp .c-flex_start,
.sp .c-flex_end,
.sp .c-flex_between,
.sp .c-flex_center{
	display: inherit;
}

.sp .col .c-flex_center { display: flex; }

.sp #main .col.c-narrow--60,
.sp #main .col .c-narrow--60,
.sp #main .col3 .col,
.sp #main .col4 .col,
.sp #main .col5 .col,
.sp #main .col5 .col.span-2
{width: 75% !important; margin-left: auto; margin-right: auto;}

.sp #main .col.c-narrow { width: 100% !important; }
.sp #main .col .c-narrow { width: 100% !important; }
.sp #main .col2 .col { width: 100% !important; }
.sp #main .col3 .col.span-2 { width: 100% !important; }
.sp #main .col4 .col.span-2 { width: 100% !important; }
.sp #main .col4 .col.span-3 { width: 100% !important; }
.sp #main .col5 .col.span-3 { width: 100% !important; }
.sp #main .col5 .col.span-4 { width: 100% !important; }

.sp #main .col .c-narrow.c-person { width: 60% !important; }

.sp .c-box_article{
	padding-left:1.25rem !important;
	padding-right:1.25rem !important;
}

.sp .u-fullWidth{
	width: 106.2% !important;
	margin-left: -3.1% !important;
	margin-right: -3.1% !important;
}
.sp #main .u-spNarrow,
.sp #main .col.u-spNarrow{
	width: 75% !important; margin-left: auto; margin-right: auto;
}

.sp br.u-spNone{
	display: none;
}
.sp br.u-spBr{
	display: inline;
}

.sp #sub{
	padding: 0;
	border: none;
}
.sp #snav{
	/*position: static;
	display: none;*/
}

.sp .p-bnav{
	display: block;
	width: auto;
	margin: 0 3% 2rem;
	padding-top: 0;
}

.sp #bnav {
	border: none;
	width: auto;
	max-width: 106%;
	margin: 1rem 0;
	padding: 0;
}
.sp .p-bnav_sub{
	width: 100%;
}
.sp .p-bnav_sub__links li a{
	background: none;
}
.sp #bnav h2.p-bnav__label {
	padding: 0.75rem 0.8rem 0.75rem 0.8rem;
	font-size: 1rem;
	width:100%;
}
.sp #bnav > ul.nav {
	border:#ccc 1px solid;
	border-top:none;
	padding: 0.5rem !important;
	line-height: 1.7;
}
.sp #bnav > ul.nav li a{
	display: block;
	padding: 0.5rem 0.5rem 0.5rem 1.375rem;
	margin: 0.125rem 0;
	background: url(/common/image/arrow_red.png) no-repeat 0.25rem 1rem;
	border-radius: 4px;
}
.sp #bnav > ul.nav>li>a,
.sp #bnav > ul.nav>li>p a{
	background: url(/common/image/arrow_red_large.png) no-repeat 0.25rem 0.8125rem;
}

.sp #bnav > ul.nav li.current>a{
	color: #555;
	background: #ededed url(/common/image/arrow_gray.png) no-repeat 0.25rem 1rem;
}
.sp #bnav > ul.nav>li.current> a,
.sp #bnav > ul.nav>li.current>p a{
	background: #ededed url(/common/image/arrow_gray_large.png) no-repeat 0.25rem 0.8125rem;
}
.sp #bnav > ul.nav>li.has_current>p a{
	background: url(/common/image/arrow_gray_large.png) no-repeat 0.25rem 0.8125rem;
}

.sp #bnav > ul ul{
	margin-left: 1.5rem;
	margin-bottom: 0.75rem;
}

.sp #bnav_pager{
	position: static;
	margin-bottom: 1rem;
	margin-left: 0;
}

.sp #bnav_pager ul {
	justify-content: center;
}
