@charset "utf-8";
/* =======================================

	ContentsElements

======================================= */

/* ------------------------------------
	common
------------------------------------ */
/* 見出し用クラス */
.h_large {
	font-size: 3.6rem;
}
.h_bg {
	background: #333;
	color: #fff;
	font-size: 2rem;
	line-height: 1.5;
	text-align: center;
	padding: 0.2em 1em;
	margin: 0.5em 0 1.5em;
}
.h_circle {
  padding: 0 0 0 15px;
  margin: 0 0 15px;
  color: #333;
  font-size: 1.6rem;
  position: relative;
}
.h_circle::before {
  content: '';
	position: absolute;
	top: 8px;
	left:0;		
	background-color: #20A27C;
	width: 10px;
	height: 10px;
	border-radius: 10px;
}



/* ※つきリスト */
.ul_attn {
	margin: 0 0 30px;
}
.ul_attn li {
	position: relative;
	padding-left: 1.5em;
}
.ul_attn li span {
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
}

/* 2カラム */
.twocolumn {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 0 50px;
}
.left_cont {
	width: 48%;
	margin: 0;
}
@media only screen and (max-width: 768px) {
	.left_cont {
		width: 100%;
		margin: 0 0 2.2em;
	}
}

/* テーブル */
.table_wrap {
	margin: 0 0 3em;
}
.table_wrap > p {
	font-weight: bold;
	margin: 0;
}
.table_wrap > p.mb40 {
	margin: 0 0 40px;
}
/* テーブル 3column*/
table.three_column {
	width: 100%;
	border-bottom: 2px solid #333;
}
table.three_column tr {
	border-bottom: 1px solid #8C9BA5;
}
table.three_column tbody tr th {
	width: 42%;
	padding: 0.8em 1.4em;
	background-color: #DAEDFA;
	font-weight: bold;
	vertical-align: middle;
}
table.three_column tr td,
table.three_column thead tr th {
	width: 29%;
	font-size: 2.6rem;
	text-align: center;
	vertical-align: middle;
	color: #002D78;
	font-weight: bold;
}
table.three_column thead tr {
	border-bottom: 2px solid #333;
}
table.three_column thead tr th {
	padding: 0 0 6px 0;
}
table.three_column tr td:nth-child(3n) {
	color: #8C9BA5;
}
table.three_column thead tr th:nth-child(3n) {
	color: #333;
}
table.three_column.blue tbody tr th {
	color: #fff;
	background-color: #002D78;
}
table.three_column thead tr th {
	font-size: 1.6rem;
}
table.three_column tr td span {
	font-size: 1.6rem;
}

@media only screen and (max-width: 768px) {
	.table_wrap > p {
		font-weight: bold;
		margin: 0;
	}
	table.three_column thead tr th:nth-child(3){
		line-height: 1.4;
	}
	table.three_column tr,
	table.three_column thead tr th,
	table.three_column tr td span {
		font-size: 1.4rem;
		line-height: 1.4;
	}
	table.three_column thead tr th {
		padding: 0.5em 0 1em;
	}
	table.three_column tbody tr th {
		width: 29%;
		padding: 0.8em 0.4em;
	}
	table.three_column tr td {
		width: 29%;
		font-size: 2rem;
		line-height: 1;
		padding: 0.9em 0;
	}
	.table_wrap > p.mb40 {
		margin: 0 0 20px;
	}
}

/* テーブル 4column*/
table.four_column {
	width: 100%;
	border-bottom: 2px solid #333;
}
table.four_column tr {
	border-bottom: 1px solid #8C9BA5;
}
table.four_column tbody tr th {
	width: 25%;
	padding: 0.8em 1.2em;
	font-weight: bold;
	line-height: 1.4;
	vertical-align: middle;
}
table.four_column thead tr th,
table.four_column tr td {
	width: 25%;
	font-size: 2.6rem;
	text-align: center;
	vertical-align: middle;
	color: #002D78;
	font-weight: bold;
}
table.four_column thead tr {
	border-bottom: 2px solid #333;
}
table.four_column thead tr th{
	color: #333;
}
table.four_column tr td:nth-child(4n) {
	color: #8C9BA5;
}
table.four_column thead tr th:nth-child(3n),
table.four_column tbody tr td:nth-child(3n) {
	background-color: #DAEEFA;
}
table.four_column thead tr th,
table.four_column thead tr th:nth-child(4n) {
	color: #333;
}
table.four_column thead tr th {
	font-size: 1.6rem;
	line-height: 1.4;
	padding: 0.5em 0;
}
table.four_column tr td span {
	font-size: 1.6rem;
}

@media only screen and (max-width: 768px) {
	.table_wrap > p {
		font-weight: bold;
		margin: 0;
	}
	table.four_column tr,
	table.four_column tr td,
	table.four_column tr td span {
		font-size: 1.4rem;
		line-height: 1;
	}
	table.four_column tbody tr th {
		padding: 0.8em 0.5em;
	}
	table.four_column tr td {
		padding: 1.2em 0;
	}
	table.four_column thead tr th {
		font-size: 1.4rem;
		line-height: 1,4;
		padding: 0.5em 0;
	}
	table.four_column tr td span {
		font-size: 1rem;
	}
	.table_wrap > p.mb40 {
		margin: 0 0 20px;
	}
}

/* テーブル 5column*/
table.five_column {
	width: 100%;
	border-bottom: 2px solid #333;
}
table.five_column tr {
	border-bottom: 1px solid #8C9BA5;
}
table.five_column tbody tr th {
	width: 25%;
	padding: 0.8em 1.2em;
	background-color: #DAEDFA;
	font-weight: bold;
	line-height: 1.4;
	vertical-align: middle;
}
table.five_column tr td,
table.five_column thead tr th {
	width: 18.75%;
	font-size: 2.6rem;
	text-align: center;
	vertical-align: middle;
	color: #002D78;
	font-weight: bold;
}
table.five_column tr td span {
	font-size: 1.6rem;
}
table.five_column thead tr {
	border-bottom: 2px solid #333;
}
table.five_column thead tr th {
	font-size: 1.6rem;
	color: #333;
	padding: 0 0 6px 0;
}
table.five_column tr td:nth-child(5n) {
	color: #8C9BA5;
}
table.five_column thead tr th:nth-child(5n) {
	color: #333;
}
/* テーブル 5column blue*/
table.five_column.blue {
	border-bottom: 2px solid #002D78;
}
table.five_column.blue thead tr {
	border-bottom: 2px solid #002D78;
}
table.five_column.blue thead tr th {
	padding: 0.8rem;
    color: #fff;
	background: #002D78;
}
table.five_column.blue thead tr th:first-child,
table.five_column.blue tr th {
	background-color: #fff;
}
table.five_column.blue thead tr th:nth-child(4) {
	background-color: #002D78;
}
table.five_column.blue tr td:nth-child(4) {
	background-color: #DAEDFA;
}

@media only screen and (max-width: 768px) {
table.five_column tbody tr th {
    padding: 0.8em 0.4em;
}
	table.five_column tr,
	table.five_column tr td {
		font-size: 1.4rem;
		line-height: 1.2;
	}
	table.five_column tr td span {
		font-size: 1rem;
	}
	table.five_column thead tr th {
		font-size: 1.4rem;
		padding: 0.5em 0 1em;
	}
}
@media only screen and (max-width: 768px) {
	.sp {
    	display: block!important;
	}
	table.five_column tr td {
		line-height: 1.2;
	}
}

/*value*/
.value {
	width: 47%;
	text-align: center;
	margin: 0 0 43px;
}
.twocolumn .value:nth-last-child(2),
.twocolumn .value:nth-last-child(1) {
	margin: 0;
}
.value dt {
	padding: 0.6rem 0;
	font-size: 1.8rem;
	font-weight: bold;
	color: #fff;
	background-color: #002D78;
}
.value dd:nth-child(2) {
	color: #002D78;
	line-height: 1.5;
	font-weight: bold;
}
.value dd:nth-child(2) span {
	font-weight: bold;
	font-size: 4rem;
}
.value dd:nth-child(3) {
	color: #8C9BA5;
	font-weight: bold;
}
.value dd:nth-child(3) span {
	font-size: 2.6rem;
}
.value dd p {
	display: inline-block;
	position: relative;
}
.value dd p::after {
	content: '';
	display: inline-block;
	margin: 0 0 0 10px;
	width: 25px;
	height: 25px;
	background-image: url(../img/ico_ascending.png);
	background-size: contain;
	background-repeat: no-repeat;
}
/*value_grad*/
.value.grad dt {
	border-radius: 50px;
	background: linear-gradient(90deg, rgba(0,63,181,1) 0%, rgba(0,45,120,1) 100%);
}
/*value_grad_border*/
.value.border dt {
	color: #333;
	background-color: #fff;
	border-top: 2px solid #333333;
	border-bottom: 2px solid #333333;
}
@media only screen and (max-width: 768px) {
	.value,
	.twocolumn .value:nth-last-child(2) {
		width: 100%;
		margin: 0px 0 15px;
	}
	.value:last-child {
		margin: 0;
	}
	.value dt,
	.value.border dt {
		padding: 0.2rem 0;
	}
	.value dd:nth-child(3) {
		line-height: 1.5;
	}
}
/* cont_header visual 中ページ用 */

@media only screen and (max-width: 768px) {
	.cont_header.visual {
		margin: 0 0 30px;
	}
	.content-2 .cont_header .wrap 
	{
		height: 236px;
		padding: 100px 0 0 0;
	}
 .content-3 .cont_header .wrap, .content-4 .cont_header .wrap {
		height: 236px;
		padding: 65px 0 0 0;
	}
	.cont_header.visual,
	.cont_header.visual.large {
		height: auto;
		display: block;
	}
}

/* ------------------------------------
	graph
------------------------------------ */
.graph_img figcaption {
	font-weight: bold;
}
.graph_img figcaption.blue {
	font-weight: bold;
	color: #002D78;
}
.twocolumn .graph_img {
	width: 46%;
	margin: 0 0 30px;
}
@media only screen and (max-width: 768px) {
	.twocolumn .twocolumn .graph_img {
		width: 48%;
	}
}
/* ------------------------------------
	segment
------------------------------------ */
.segment_01 h3 {
	margin: 0 0 10px;
	font-size: 4rem;
	color: #002D78;
}
.segment_01 > .segment_wrap {
	width: 75%;
}
.segment_01 figure {
	width: 20%;
}
.segment_01 .segment_wrap > .bg_box {
	display: inline-block;
	margin: 0 20px 0 0;
	font-size: 1.6rem;
	font-weight: bold;
}
.segment_01 .segment_wrap > .bg_box:last-child {
	margin: 0;
}
.segment_01 .bg_box p {
	display: inline-block;
	margin: 0 5px 0 0;
	padding: 8px 8px;
	color: #fff;
	background-color: #002D78;
	vertical-align: text-bottom;
}
.segment_01 .bg_box .large {
	font-size: 4rem;
	font-family: 'Noto Sans JP', sans-serif;
}
@media only screen and (max-width: 830px) {
	.segment_01 .bg_box .large {
		font-size: 3.3rem;
	}
}
@media only screen and (max-width: 768px) {
	.twocolumn.segment_01 {
		display: block;
	}
	.segment_01 > .segment_wrap {
		width: 100%;
	}
	.segment_01 h3 {
		width: 100%;
		font-size: 3rem;
	}
	.segment_01 .segment_wrap > .bg_box {
		width: 100%;
		margin: 0;
	}
	.segment_01 .bg_box p {
		width: 92px;
		padding: 10px 14px;
	}
	.segment_01 figure {
		width: 50%;
	}
}
/*segment_02*/
.segment_02 h3 {
	display: block;
	width: 100%;
	padding: 6px 15px;
	margin: 0 0 30px;
	font-size: 2.0rem;
	color: #fff;
}
.segment_02 > .segment_wrap {
	width: 70%;
}
.segment_02 figure {
	width: 25%;
}
.segment_02 .segment_wrap > .bg_box {
	display: inline-block;
	margin: 0 20px 0 0;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.5;
}
.segment_02 .bg_box p.title {
	display: inline-block;
	width: 100px;
	margin: 0 10px 0 0;
	padding: 8px 16px;
	color: #002D78;
	border: 1px solid #002D78;
	text-align: center;
	vertical-align: text-bottom;
}
.segment_02 .bg_box p.Numerical {
	display: inline-block;
}
.segment_02 p:last-child {
	margin: 0;
}
.segment_02 .bg_box .large {
	font-size: 4.5rem;
	font-family: 'Noto Sans JP', sans-serif;
}
.segment_02 h3 {
  padding: 6px 10px 5px 10px;
}
@media only screen and (max-width: 768px) {
	.twocolumn.segment_02 {
		display: block;
	}
	.segment_02 > .segment_wrap {
		width: 100%;
	}
	.segment_02 h3 {
		width: 100%;
		font-size: 2rem;
	}
	.segment_02 .segment_wrap > .bg_box {
		width: 100%;
		margin: 0;
	}
	.segment_02 .bg_box p.title {
		width: 92px;
		padding: 10px;
		vertical-align: top
	}
	.segment_02 figure {
		width: 50%;
	}
	.segment_02 .bg_box p.Numerical {
		width: 60%;
		line-height: 1;
		margin: 0 0 15px;
	}
	.segment_02 .bg_box .large {
		display: inline-block;
		margin: 0 0 10px;
	}
}

/*segment_03*/
.segment_03 h3 {
	position: relative;
	display: block;
	width: 100%;
	padding: 6px 15px;
	margin: 0 0 10px;
	font-size: 2.4rem;
	color: #fff;
	background: linear-gradient(90deg, rgba(0,63,181,1) 0%, rgba(0,45,120,1) 100%);
}
.segment_03 h3 .text_right {
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.8rem;
}
.segment_03 h3 .text_right::before {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 2px;
	height: 26px;
	background-color: #fff;
	right: 230px;
}
.segment_03 h3 .text_right > .bg_box {
	font-size: 3rem;
}
.segment_03 > .segment_wrap {
	width: 48%;
}
.segment_03 figure {
	width: 100%;
}
.segment_03 .segment_wrap > .bg_box {
	display: inline-block;
	margin: 0 20px 0 0;
	font-size: 1.6rem;
	font-weight: bold;
}
.segment_03 .bg_box p {
	display: inline-block;
	margin: 0 20px 0 0;
	color: #002D78;
	vertical-align: text-bottom;
}
.segment_03 p:last-child {
	margin: 0;
}
.segment_03 .bg_box .large {
	font-size: 4.5rem;
	font-family: 'Noto Sans JP', sans-serif;
}


@media only screen and (max-width: 768px) {
	.twocolumn.segment_03 {
		display: block;
	}
	.segment_03 > .segment_wrap {
		width: 100%;
	}
	.segment_03 h3 {
		width: 100%;
		font-size: 2rem;
	}
	.segment_03 .segment_wrap > .bg_box {
		width: 100%;
		margin: 0;
	}
	.segment_03 .bg_box p {
		padding: 0 10px 0 0;
	}
	.segment_03 figure {
		width: 100%;
	}
	.segment_03 .bg_box p {
		margin: 0;
		vertical-align: super;
	}
	.segment_03 .bg_box .large {
		font-size: 6rem;
	}
	.segment_03 h3 .text_right {
		font-size: 1.4rem;
	}
	.segment_03 h3 .text_right::before {
		right: 166px;
	}
	.segment_03 h3 .text_right > .bg_box {
		font-size: 2rem;
	}
}
/* ------------------------------------
	accordion
------------------------------------ */
.accordion {
	margin: 0 0 55px;
}
.accordion h3 {
	color: #FFF !important;
}
.accordion .h_bg {
	text-align: left;
	position: relative;
	cursor: pointer;
	padding: 8px 10px;
	margin: 0 0 20px;
}
.accordion .h_bg::after {
	content: '';
	display: inline-block;
	width: 13px;
	height: 13px;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
	transform: rotate(45deg);
	position: absolute;
	right: 15px;
	top: 50%;
	margin-top: -3px;
}
.accordion .content {
	display: none;
}
.accordion .h_bg.open::after {
	margin-top: -10px;
	transform: rotate(225deg);
}

.accordion .h_bg.round {
	border-radius: 50px;
}

@media only screen and (max-width: 768px) {
	.accordion .h_bg {
		padding: 10px 2.2em 10px 1em;
	}
	.accordion .h_bg.round {
		padding: 10px 2.2em 10px 1.5em;
	}
	.accordion .h_bg {
		font-size: 1.6rem;
		margin: 0 0 34px;
	}
}
/* ------------------------------------
	Q&A
------------------------------------ */
.h_qa,
.h_qa02 {
	position: relative;
	font-size: 2rem;
	line-height: 1.6;
	min-height: 7rem;
	padding: 0 0 0 8rem;
	margin-bottom: 2.5rem;
	display: flex;
	align-items: center;
}
.h_qa::before {
	content: 'Q.';
	font-family: Arial, Helvetica, sans-serif;
	font-size: 7rem;
	font-weight: normal;
	line-height: 1;
	position: absolute;
	top: 0;
	left: 0;
}
.h_qa02::before {
	content: 'Q';
	font-family: Arial, Helvetica, sans-serif;
	font-size: 5rem;
	font-weight: normal;
	line-height: 1;
	position: absolute;
	top: 0;
	left: 0;
	padding: 1em;
	padding: 0.2em 0.3em;
	color: #fff;
	background-color: #002D78;
}

@media only screen and (max-width: 768px) {
	.h_qa,
	.h_qa02 {
		font-size: 1.6rem;
		min-height: 5rem;
		padding: 0 0 0 6rem;
	}
	.h_qa::before {
		font-size: 5rem;
	}
	.h_qa02::before {
		font-size: 3.2rem;
		padding: 0.3em 0.4em;
	}
}

/* ------------------------------------
	Topics
------------------------------------ */
.topics_list article {
	padding: 0 0 50px;
	border-bottom: 1px dashed #707070;
	margin: 0 0 50px;
}
.topics_list article:last-of-type {
	border-bottom: none;
	margin: 0;
	padding: 0;
}
.topics_list article .info {
	color: #999;
	letter-spacing: -1em;
	font-weight: bold;
	margin-bottom: 20px;
}
.topics_list article .info.tag {
	padding: 0 0 0 0.5em;
	margin: 0 0 16px;
	color: #fff;
	background-color: #002D78;
}
.topics_list article h1.gray {
	color: #8C9BA5;
}
.topics_list article h1.gray a {
	color: #8C9BA5;
}
body.pc_view .topics_list article h1.gray a:hover {
	border-color: #8C9BA5;
}
.topics_list article .info.tag_02 h1 {
	color: #8C9BA5;
}
.topics_list article .info.tag_02 .date {
	color: #002D78;
}
.topics_list article .info.tag_02 .subsidiary {
	margin: 0 0 0 10px;
	padding: 6px 12px;
	color: #fff;
	background-color: #002D78;
}
.topics_list article .info.tag_02 .subsidiary::before {
	display: none;
}
.topics_list article .info > * {
	letter-spacing: 0;
}
.topics_list article .info span:nth-child(n+2)::before {
	content: '\7c';
	display: inline-block;
	padding: 0 0.5em;
}
.topics_list article .info img {
	max-height: 1em;
	vertical-align: middle;
	margin: 0 0 2px 0.8em;
}


.topics_list article h1 {
	font-size: 2rem;
	margin-bottom: 0.8em;
}
.topics_list article h1 a {

	color: #002d78;
	border-bottom: 1px solid transparent;
}
.topics_list article h1 a::after {
	display: none;
}
body.pc_view .topics_list article h1 a:hover {
	border-color: #002d78;
}

.topics_list article h2 {
	font-size: 1.6rem;
	color: #333;
	margin: 0 0 5px;
}

.topics_list article .twocolumn {
	margin: 0;
}
.topics_list article .twocolumn figure:nth-last-child(2),
.topics_list article .twocolumn figure:nth-last-child(1) {
    margin: 0;
}
.topics_list article.no_border {
	border-bottom: none;
	padding: 0;
}

@media only screen and (max-width: 768px) {
	.topics_list article {
		padding: 0 0 30px;
		margin: 0 0 30px;
	}
	.topics_list article img {
		width: 100%;
		margin: 0 auto 1em;
	}
}


/* hover
------------------------------------ */
/* all */
body.pc_view .topics_list article h1 a,
body.pc_view .topics_list article a img {
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}
body.pc_view .topics_list article h1 a:hover {
	border-color: #333;
	text-decoration: none;
}
body.pc_view .topics_list article a:hover img {
	opacity: 0.7;
}


/* ------------------------------------
	Other
------------------------------------ */
.sec_blue {
	margin: 0 auto 50px;
	position: relative;
	box-sizing: border-box;
	margin-left: calc(((100vw - 100%) / 2) * -1);
	margin-right: calc(((100vw - 100%) / 2) * -1);
	padding: 40px calc((100vw - 100%) / 2) 44px;
	background-color: #E8F0F5;
}
.sec_blue h3 {
	font-weight: 1.6rem;
	color: #002D78;
	margin: 0 0 10px;
}
.div_border {
	margin: 0 auto 50px;
	padding: 40px 30px 44px;
	border: 1px solid #707070;
}
.div_border h3 {
	margin: 0 0 10px;
}
.div_border.blue,
.div_point.blue {
	background: #E8F0F5;
	border: none;
}
.div_point {
	padding: 40px 30px 44px;
	border: 1px solid #707070;
	margin: 0 0 3em;
}
.div_point dl {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 20px;
}
.div_point dt {
	color: #002D78;
	font-weight: bold;
}
.div_point dd {
	width: 85%;
	margin: 0 0 0 14px;
}
.div_point dl:last-child {
	padding: 0;
}

@media only screen and (max-width: 768px) {
	.div_border {
		padding: 15px 3%;
		border: 1px solid #707070;
	}
	.div_point {
		padding: 20px 5% 24px;
	}
	.div_point dl {
		display: block;
		padding: 0 0 10px;
	}
	.div_point dl dt,
	.div_point dl dd {
		width: 100%;
	}
	.div_point dd {
		margin: 0;
	}
}

/* ------------------------------------
	reco.html
------------------------------------ */
.reco .cont_header h1 {
		text-align: left;
}
.reco .cont_header .wrap {
    padding: 32px 0;
}
.reco h2 {
    font-size: 2rem;
    margin: 0 0 14px;
}
.reco h3 {
    font-size: 1.6rem;
    margin: 0 0 14px;
	padding: 0;
}
.reco p {
	margin: 0 0 24px;
}
.reco .border_b {
    position: relative;
    margin: 0 0 40px;
    padding: 0 0 44px;
}
.reco .ul_attn li {
	line-height: 2.8rem;
    font-size: 1.4rem;
}
.reco #global_footer p.copy {
	margin: 0;
}

@media only screen and (max-width: 768px) {
	.reco .ul_attn li {
		line-height: 2.4rem;
	}
}