@charset "utf-8";

/* ========================================================
	members_card.css
======================================================== */

@media screen and (min-width:769px), print {
	.flex{
		display:flex;
		flex-wrap:wrap;
	}
}

.page_title{
	color:#304974;
}
.page_title .flex{
	justify-content:center;
	margin-top:40px;
}
.page_title .text{
	text-align:left;
	font-size:2.8rem;
	line-height:1.5;
	margin-left:20px;
}
.page_title .text small{
	font-size:50%;
	line-height:1.7;
	display:block;
	margin-top: 1em;
}

.special_block{
	background-color:#304974;
	padding:20px;
	color:#fff;
	text-align:center;
	font-size:2rem;
	margin-bottom:60px;
}
.special_block h2{
	color:#304974;
	background-color:#fff;
	padding:0.5em;
	display:block;
	margin-bottom:10px;
}
.special_block h2 > span{
	font-size: 1.6rem;
	display: inline-block;
	margin-top: -5px;
	vertical-align: middle;
	padding-right: 5px;
}
.special_block h2 > sup{
	font-size: 50%;
}
.special_block .note{
	font-size: 1.6rem;
	border: 1px solid #fff;
	padding: 5px 10px 5px 15px;
	margin-top: 10px;
	display: inline-block;
}
.special_block .caption{
	font-size: 70%;
	margin-top: 1em;
}

.for_block{
	justify-content:space-between;
	margin-bottom:80px;
}
.for_block .card{
	background-color:#f9edd6;
	border-radius:10px;
	width:253px;
	text-align:center;
	padding:20px;
	font-size:1.8rem;
	line-height:1.5;
	font-weight:bold;
}
.for_block h2{
	font-size:2.2rem;
}
.for_block h2::after{
	content:"";
	background:url(../images/parts.png) center center no-repeat;
	background-size:contain;
	width:44px;
	height:22px;
	display:block;
	margin:20px auto;
}
.for_block .card .btn{
	margin-top: 1em;
}
.for_block .card .btn > a{
	background-color: #0d1d37;
	color: #fff;
	display: block;
	text-decoration: none;
	line-height: 1;
	padding: 1em;
	font-size: 0.8em;
}
.for_block_caption{
	font-size: 80%;
	margin-top: 1em;
}

.message_block h2{
	text-align: center;
	font-size: 2.2rem;
	font-weight: bold;
	margin-bottom: 25px;
	line-height: 1.5;
	border-bottom: 1px solid #304974;
	padding-bottom: 20px;
}
.message_block h2 .sub{
	font-size: 1.6rem;
}

.list{
	list-style-type:disc;
	list-style-position:inside;
	font-size:1.8rem;
	font-weight:bold;
}
.list li{
	margin-bottom:0.5em;
}

.guide_block{
	width:700px;
	margin:80px auto 0;
}
.guide_block h2{
	text-align:center;
	font-size:2rem;
	background-color:#304974;
	color:#fff;
	padding:0.3em;
	margin-bottom:1em;
}
.guide_block h2 > span{
	font-size: 1.4rem;
	display: inline-block;
	background: #fff;
	padding: 2px 8px;
	vertical-align: middle;
	margin-top: -5px;
	color: #304974;
	margin-right: 10px;
}
.guide_block h3,
.guide_block dt{
	font-size:1.8rem;
}
.guide_block h3{
	margin-top:60px;
}
.guide_block dl{
	display:flex;
	align-items:flex-start;
	margin-top:20px;
}
.guide_block dt{
	border:1px solid;
	margin-right:20px;
	padding:0.3em;
	line-height:1;
	min-width:160px;
}
.number_list{
	counter-reset:number-counter;
	list-style:none;
	padding:0;
	margin:0;
}
.number_list li{
	position:relative;
	padding-left:30px;
	margin-bottom:0.7em;
}
.number_list li::before{
	content:counter(number-counter);
	counter-increment:number-counter;
	border:1px solid #0d1d37;
	border-radius:50%;
	box-sizing:border-box;
	display:flex;
	justify-content:center;
	align-items:center;
	height:22px;
	width:22px;
	font-size:85%;
	line-height:1;
	position:absolute;
	top:5px;
	left:0;
}

.card_table{
	border-top:1px solid;
	border-left:1px solid;
	border-right:1px solid;
	margin-top:60px;
	font-size:1.5rem;
	width:100%;
}
.card_table thead th{
	color:#fff;
	background-color:#304974;
	text-align:center;
	font-weight:bold;
}
.card_table thead th:nth-of-type(n+2){
	border-left:1px solid #fff;
}
.card_table tbody th,
.card_table tbody td{
	line-height:1.5;
	padding:0.5em;
	border-bottom:1px solid;
}
.card_table tbody th strong{
	font-size:1.8rem;
	font-weight:bold;
}
.card_table tbody td{
	border-left:1px solid;
}
.card_table tbody td strong{
	font-size:1.8rem;
}
.card_table tbody td:last-of-type{
	font-weight:bold;
}
.card_table tbody tr:nth-of-type(1) th{
	background-color:#c9b976;
}
.card_table tbody tr:nth-of-type(2) th{
	background-color:#d8dcdc;
}
.card_table tbody tr:nth-of-type(3) th{
	background-color:#f9d8e6;
}
.card_table tbody tr:nth-of-type(4) th{
	background-color:#ceeafa;
}
.card_table tbody tr:nth-of-type(5) th{
	background-color:#f4e8da;
}

.btm_block{
	width:700px;
	margin:80px auto 0;
}
.btm_block h2{
	border-bottom:1px solid #c1a374;
}

@media screen and (max-width:768px) {
	.page_title .flex{
		margin-top:20px;
	}
	.page_title .text{
		text-align:center;
		font-size:1.8rem;
		margin-left:0px;
		margin-top:1em;
	}

	.special_block{
		padding:20px;
		font-size:1.6rem;
		margin-bottom:30px;
	}
	.special_block h2 > span{
		font-size:1.4rem;
	}
	.special_block .note{
	font-size: 1.3rem;
	display: block;
	}

	.for_block{
		margin-bottom:40px;
	}
	.for_block .card{
		width:100%;
		font-size:1.4rem;
	}
	.for_block .card:nth-of-type(n+2){
		margin-top:20px;
	}
	.for_block h2{
		font-size:1.8rem;
	}
	.for_block h2::after{
		margin:10px auto;
	}
	
	.message_block h2{
	font-size: 1.8rem;
	margin-bottom: 20px;
	padding-bottom: 10px;
	}
	.message_block h2 .sub{
	font-size: 1.3rem;
	}
	.list{
		font-size:1.4rem;
	}
	.list li{
		text-indent:-1em;
		padding-left:1em;
	}

	.guide_block{
		width:100%;
		margin:40px auto 0;
	}
	.guide_block h2{
		font-size:1.6rem;
	line-height: 1.5;
	padding-top: 10px;
	}
	.guide_block h2 > span{
	padding: 4px;
	line-height: 1;
	margin-top: 0;
	margin-bottom: 5px;
	}
	.guide_block h3,
	.guide_block dt{
		font-size:1.6rem;
	}
	.guide_block h3{
		margin-top:30px;
	}
	.guide_block dl{
		display:block;
		margin-top:20px;
	}
	.guide_block dt{
		margin-right:0px;
		min-width:auto;
		margin-bottom:10px;
	}

	.card_table{
		border:none;
		margin-top:30px;
		font-size:1.3rem;
	}
	.card_table thead{
		display:none;
	}
	.card_table tbody th,
	.card_table tbody td{
		display:block;
		border-bottom:none;
	}
	.card_table tbody th strong{
		font-size:1.8rem;
		font-weight:bold;
	}
	.card_table tbody td{
		border-left:none;
		padding:0;
	}
	.card_table tbody td strong{
		font-size:1.4rem;
	}
	.card_table tbody td span{
		display:block !important;
		width:100%;
		font-weight:bold;
		background-color:#304974;
		color:#fff;
		padding:0.5em;
		margin-bottom:10px;
	}
	.card_table tbody td:last-of-type{
		margin-top:10px;
	}
	.card_table tbody tr:nth-of-type(n+2) th{
		margin-top:20px;
	}

	.btm_block{
		width:100%;
		margin:40px auto 0;
	}
}