@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;500;900&display=swap');

/* MATERIALS */

a:link{
	text-decoration:none;
	color:#b81c2b;
}
a:visited{
	text-decoration:none;
	color:#b81c2b;
}
a:hover{
	text-decoration:underline;
	color:#b81c2b;
}
a:active{
	text-decoration:underline;
	color:#b81c2b;
}

a.btn_a{
	display:table;
	margin:0 auto;
	padding:15px 50px 17px;
	font-size:16px;
	border:2px solid #000;
}

br.sp{
	display:none;
}

br.pc{
	display:block;
}

/* INTERFACE */


body{
	-webkit-text-size-adjust:100%;
	margin:0;
	padding:0;
	background-color:#fff;
	color:#000;
	font-family:'Noto Sans JP',"Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
}

body>header{
	max-width:1600px;
	margin:0 auto;
	position:relative;
}

body>header>h1,
body>header>a{
	display:block;
	margin:0;
	padding:20px;
	font-size:18px;
	line-height:1;
}

body>header>h1>img,
body>header>a>img{
	max-width:450px;
}

body>header nav ul{
	margin:0;
	padding:0;
	font-size:15px;
	list-style-type:none;
	position:absolute;
	top:38px;
	left:520px;
	overflow:hidden;
}

body>header nav ul li{
	margin:0 25px 0 0;
	float:left;
}

body>header nav ul li a:link,
body>header nav ul li a:visited{
	color:#000;
}

body>header nav ul li a:hover,
body>header nav ul li a:active{
	color:#b81c2b;
	text-decoration:none;
}

@media only screen and (max-width:1000px){
	body>header nav ul{
		text-align:center;
		font-size:14px;
		position:static;
		display:flex;
		flex-wrap:wrap;
	}
	
	body>header nav ul li{
		width:50%;
		box-sizing:border-box;
		padding:5px 0;
		background-color:#000;
		border-right:1px solid #fff;
		border-top:1px solid #fff;
		margin:0;
		float:none;
	}
	
	body>header nav ul li:nth-child(even){
		border-right:none;
	}
	
	body>header nav ul li a:link,
	body>header nav ul li a:visited{
		display:block;
		color:#fff;
	}
	
	body>header nav ul li a:hover,
	body>header nav ul li a:active{
		display:block;
		color:#fff;
		text-decoration:none;
	}
}


body>footer{
	padding:80px 30px;
	text-align:center;
	background-color:#fafafa;
	border-top:10px solid #eee;
}

body>footer .sns{
	margin:50px 0;
}

body>footer .sns a img{
	height:40px;
	width:auto;
	margin:0 7px;
}

body>footer small{
	font-family:Verdana,sans-serif;
	font-size:9px;
}

body>footer>a:first-of-type img{
	max-width:450px;
	width:100%;
}

body>footer>a:last-of-type{
	display:block;
	pointer-events:none;
}

body>footer>a:last-of-type img{
	max-width:150px;
	width:100%;
}

/* HOME */

#home_index_area{
	margin:0 0 100px;
}

#home_kv_area{
	margin:0 0 100px;
	text-align:center;
	border-top:1px solid #b81c2b;
	border-bottom:20px solid #eee;
}

#home_kv_area img,
#home_kv_area picture{
	width:100%;
	max-width:1600px;
	vertical-align:bottom;
}

#home_btn_area{
	margin:0 20px;
}

#home_message_area{
	max-width:1200px;
	margin:0 auto 150px;
	padding:0 30px;
	overflow:hidden;
}

#home_message_area h1{
	margin:0 0 40px;
	font-size:40px;
	color:#b81c2b;
}

#home_message_area>div{
	width:65%;
	float:left;
}

#home_message_area p{
	margin:0 0 1.5em;
	text-align:justify;
	font-size:17px;
	line-height:1.9;
}

#home_message_area img{
	width:30%;
	float:right;
}

@media only screen and (max-width:767px){
	#home_kv_area{
		margin:0 0 40px;
	}

	#home_message_area{
		margin:0 auto 80px;
		padding:0;
	}
	
	#home_message_area h1{
		margin:0 0 30px;
		font-size:35px;
	}
	
	#home_message_area>div{
		width:100%;
		float:none;
	}

	#home_message_area p{
		margin:0 0 30px;
		font-size:15px;
		line-height:1.7;
	}
	
	#home_message_area img{
		width:100%;
		float:none;
	}
}

#home_policy_area{
	margin:0;
	padding:60px 0 80px;
	border-bottom:3px solid #b81c2b;
}

#home_policy_area>div{
	max-width:1200px;
	margin:0 auto;
	padding:0 30px;
	overflow:hidden;
}

#home_policy_area>div>p{
	font-size:30px;
	line-height:1.5;
}

@media only screen and (max-width:1100px){
	#home_policy_area{
		padding:50px 0 90px;
	}
}

#home_policy_area h2{
	margin:0;
}

#home_policy_area h2 img{
	width:100%;
}

#home_policy_area h3{
	margin:0 0 20px;
	font-size:30px;
	line-height:1.2;
	clear:both;
}

#home_policy_area h3>span{
	display:block;
	margin:0 0 10px;
	color:#b81c2b;
}

#home_policy_area h3>span span{
	font-size:20px;
}

#home_policy_area .video{
	width:40%;
	margin:0 0 0 20px;
	float:right;
}

#home_policy_area .video div{
	width:100%;
	height:0;
	padding:56% 0 0;
	position:relative;
}

#home_policy_area .video div iframe{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}

#home_policy_area ul{
	margin:0 0 40px;
	padding:0;
	list-style-type:none;
	font-size:18px;
}

#home_policy_area ul li{
	margin:0 0 20px;
	padding:0 0 0 30px;
	background-image:url("../img/interface/ico_check.svg");
	background-repeat:no-repeat;
	background-size:20px;
	background-position:left center;
}

@media only screen and (max-width:767px){
	br.pc{
		display:none;
	}
	
	#home_policy_area{
		margin:0;
		padding:30px 0 50px;
	}
		
	#home_policy_area .video{
		width:100%;
		margin:0 0 20px;
		float:none;
	}

	#home_policy_area>div>p{
		font-size:20px;
		line-height:1.3;
	}

	#home_policy_area h3{
		font-size:25px;
	}
	#home_policy_area ul li{
		margin:0 0 15px;
	}
}

#home_profile_area{
	max-width:1200px;
	margin:0 auto 100px;
	padding:0 30px;
	overflow:hidden;
	position:relative;
}

#home_profile_area h1{
	max-width:500px;
	margin:0;
}

#home_profile_area h1 img{
	width:100%;
}

#home_profile_area>img{
	width:25%;
	position:absolute;
	bottom:0;
	left:30px;
}

#home_profile_area>div{
	width:65%;
	float:right;
}

#home_profile_area h3{
	margin:50px 0 15px;
	font-size:20px;
}

#home_profile_area p{
	margin:0;
	font-size:18px;
}

@media only screen and (max-width:767px){
	#home_profile_area{
		margin:0 auto 50px;
		padding:20px 0 0;
		text-align:center;
		border-bottom:5px solid #eee;
	}
	
	#home_profile_area h1{
		text-align:left;
	}
	
	#home_profile_area h1 img{
		width:70%;
	}
	
	#home_profile_area>img{
		width:60%;
		margin:30px 0 0;
		position:static;
		vertical-align:bottom;
	}
	
	#home_profile_area>div{
		width:100%;
		float:none;
	}
	#home_profile_area h3{
		margin:40px 0 10px;
		text-align:left;
	}
	
	#home_profile_area p{
		margin:0;
		text-align:left;
	}
}


#home_career_area{
	max-width:1200px;
	margin:0 auto 100px;
	padding:0 30px;
}

#home_career_area h2{
	margin:0 0 40px;
	font-size:30px;
}

#home_career_area table{
	width:100%;
	border-collapse:collapse;
	border-top:1px solid #ddd;
}

#home_career_area table th{
	padding:15px 15px 15px 0;
	text-align:left;
	vertical-align:top;
	font-size:18px;
	color:#b81c2b;
	border-bottom:1px solid #ddd;
	white-space:nowrap;
}

#home_career_area table td{
	padding:15px 0;
	font-size:18px;
	border-bottom:1px solid #ddd;
}

@media only screen and (max-width:767px){
	#home_career_area{
		margin:0 auto 50px;
		padding:0;
	}
}

#home_supporter_area{
	margin:0 0 100px;
	padding:0 30px;
}

#home_supporter_area>div{
	max-width:1180px;
	margin:0 auto;
}

#home_supporter_area h1{
	margin:0 0 20px;
	text-align:center;
	font-size:40px;
}

#home_supporter_area h3{
	margin:50px 0 20px;
	font-size:25px;
	color:#b81c2b;
}

#home_supporter_area p{
	margin:0;
	text-align:justify;
	font-size:18px;
}

#home_supporter_area p.lead{
	margin:0;
	text-align:center;
	font-size:15px;
}

@media only screen and (max-width:767px){
	#home_supporter_area{
		margin:20px 0 50px;
		padding:0;
	}
	
	#home_supporter_area h1{
		font-size:35px;
	}
	
	#home_supporter_area h3{
		font-size:22px;
	}
	
	#home_supporter_area p.lead{
		text-align:justify;
	}
}

.home_office_area{
	padding:50px 30px;
}

.home_office_area>div{
	max-width:1100px;
	margin:0 auto;
	padding:40px;
	border:5px solid #b81c2b;
	overflow:hidden;
}

.home_office_area h2{
	margin:0 0 40px;
	text-align:center;
	font-size:40px;
	clear:both;
}

.home_office_area h2:last-of-type{
	padding:40px 0 0;
}

.home_office_area div.map{
	width:60%;
	float:left;
}

.home_office_area div.map:first-of-type{
	margin:0 0 60px;
}

.home_office_area .map>div{
	width:100%;
	height:0;
	padding:65% 0 0;
	position:relative;
}

.home_office_area .map>div iframe{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}

.home_office_area p{
	width:37%;
	margin:0;
	font-size:18px;
	line-height:1.5;
	float:right;
}

.home_office_area p b{
	display:block;
	margin:0 0 20px;
	font-size:24px;
	line-height:1.2;
	color:#b81c2b;
}

@media only screen and (max-width:767px){
	.home_office_area{
		padding:30px 30px;
	}
	
	.home_office_area>div{
		padding:40px 20px;
	}
	
	.home_office_area h2{
		margin:0 0 30px;
		font-size:35px;
	}
	.home_office_area h2:last-of-type{
		margin:0 0 30px;
	}
	
	.home_office_area div.map{
		width:100%;
		float:none;
		margin:0 0 30px;
	}
	
	.home_office_area div.map:first-of-type{
		margin:0 0 30px;
	}

	.home_office_area .map>div{
		padding:100% 0 0;
	}
	
	.home_office_area p{
		width:100%;
		font-size:16px;
		float:none;
	}
	
	.home_office_area p b{
		font-size:20px;
	}
}



#home_issue_area{
	margin:0 0 100px;
	padding:100px 0;
	background-color:#fafafa;
	border-bottom:1px solid #b81c2b;
}

#home_issue_area>div{
	max-width:1200px;
	margin:0 auto;
	padding:0 30px;
}

#home_issue_area>div>img{
	width:33%;
	float:left;
	margin:0 0 5%;
}

#home_issue_main{
	width:64%;
	float:right;
	margin:0 0 5%;
}

#home_issue_area h2{
	margin:0 0 50px;
	font-size:40px;
	color:#b81c2b;
}

#home_issue_area p.title{
	margin:0 0 0.5em;
	font-size:32px;
	font-weight:bold;
	line-height:1.3;
}

#home_issue_area p.lead{
	margin:0 0 50px;
	text-align:justify;
	font-size:15px;
	line-height:1.7;
}

#home_issue_area a.btn_more{
	display:table;
	margin:1.5em 0 0;
	padding:8px 25px 10px;
	text-align:center;
	font-size:13px;
	line-height:1;
	color:#fff;
	background-color:#b81c2b;
	border-radius:50px;
}

#home_issue_list{
	width:calc(100% + 40px);
	clear:both;
	display:flex;
	flex-wrap:wrap;
	position:relative;
	left:-20px;
}

#home_issue_list section{
	display:flex;
	width:33.3333333%;
	box-sizing:border-box;
	padding:0 20px 40px;
}

#home_issue_list section a{
	display:block;
	box-sizing:border-box;
	color:#000;
	background-color:#fff;
	border:1px solid #fff;
	cursor:pointer;
}

#home_issue_list section span{
	display:block;
	box-sizing:border-box;
	color:#000;
	background-color:#fff;
	border:1px solid #fff;
	cursor:pointer;
}

#home_issue_list section a:hover{
	opacity:0.8;
	text-decoration:none;
	border:1px solid #b81c2b;
	transition:0.3s;
}

#home_issue_list section img{
	width:100%;
}

#home_issue_list section div{
	padding:25px;
}

#home_issue_list section h3{
	margin:0;
	font-size:18px;
	line-height:1.3;
}

#home_issue_list section p{
	margin:20px 0 25px;
	text-align:justify;
	font-size:14px;
	line-height:1.6;
}

#home_issue_list section a span{
	display:table;
	margin:0 auto;
	padding:8px 25px 10px;
	text-align:center;
	font-size:13px;
	line-height:1;
	color:#fff;
	background-color:#b81c2b;
	border-radius:50px;
}

#home_blog_area{
	max-width:960px;
	margin:0 auto;
	padding:80px 30px 60px;
	text-align:center;
}

#home_blog_area h2{
	margin:0 0 30px;
	font-size:35px;
	line-height:1.2;
}

#home_blog_area a img{
	max-width:500px;
	width:100%;
	margin:0 0 30px;
}

#home_blog_area div iframe{
	width:100%;
}



@media only screen and (max-width:767px){
	#home_blog_area{
		padding:60px 30px 30px;
	}

	#home_issue_area{
		margin:0 0 70px;
		padding:70px 0;
	}
	#home_issue_area h2{
		margin:0 0 40px;
		font-size:30px;
		line-height:1.3;
	}
	
	#home_issue_area>div>img{
		float:none;
		width:100%;
	}
	#home_issue_main{
		float:none;
		width:100%;
	}
	
	#home_issue_area p.title{
		width:100%;
		margin:0 0 20px;
		padding:0;
		font-size:24px;
		float:none;
	}
	
	#home_issue_area a.btn_more{
		margin:1em auto;
	}

	#home_issue_area p.lead{
		width:100%;
		font-size:14px;
		line-height:1.6;
		float:none;
	}
	
	#home_issue_list{
		width:100%;
		display:block;
		left:0;
	}
	
	#home_issue_list section{
		display:block;
		width:100%;
		padding:0 0 20px;
	}
}

#sub_contents_area{
	padding:80px 25px;
	background-color:#ddd;
	border-top:1px solid #b81c2b;
}

#sub_contents_area>div{
	max-width:1000px;
	margin:0 auto;
	padding:80px 30px;
	background-color:#fff;
	border-radius:10px;
}

#sub_contents_area p.mark{
	display:table;
	margin:0 auto;
	padding:10px 20px 10px;
	text-align:center;
	font-size:16px;
	font-weight:300;
	line-height:1.2;
	color:#fff;
	background-color:#b81c2b;
}

#sub_contents_area h1{
	margin:0 0 70px;
	padding:25px 0 30px;
	text-align:center;
	font-size:50px;
	font-weight:300;
	line-height:1.3;
	border-top:1px solid #b81c2b;
	border-bottom:1px solid #b81c2b;
}

#sub_contents_area h2{
	margin:0 0 50px;
	font-size:30px;
	font-weight:700;
	line-height:1.3;
	color:#b81c2b;
}

#sub_contents_area h2 span{
	display:table;
	margin:0 0 7px;
	padding:10px 20px;
	font-size:20px;
	font-weight:500;
	color:#fff;
	background-color:#000;
}

#sub_contents_area>div>section{
	margin:0 0 60px;
	overflow:hidden;
}

#sub_contents_area img{
	width:30%;
	margin:0 0 20px 40px;
	float:right;
}

#sub_contents_area p{
	text-align:justify;
	font-size:16px;
	line-height:1.8;
}

#home_issue_list.related{
	margin:80px 0 0;
	padding:80px 0 0;
	box-sizing:border-box;
	border-top:1px solid #ccc;
}


@media only screen and (max-width:767px){
	br.sp{
		display:block;
	}
	
	#sub_contents_area{
		padding:30px 25px;
		background-color:#ddd;
		border-top:1px solid #b81c2b;
	}
	
	#sub_contents_area>div{
		padding:40px 20px 100px;
	}
	
	#sub_contents_area p.mark{
		font-size:15px;
	}
	
	#sub_contents_area h1{
		margin:0 0 60px;
		padding:25px 0 30px;
		font-size:35px;
	}
	
	#sub_contents_area h2{
		margin:0 0 30px;
		font-size:25px;
	}
	
	#sub_contents_area>div>section{
		margin:0 0 60px;
		overflow:hidden;
	}
	
	#sub_contents_area img{
		width:45%;
		margin:0 0 20px 20px;
		float:right;
	}
	
	#sub_contents_area p{
		text-align:justify;
		font-size:15px;
		line-height:1.7;
	}
}

#sub_index_area{
	padding:80px 25px 120px;
	border-top:1px solid #b81c2b;
}

#sub_index_area .report{
	max-width:1200px;
	margin:0 auto 50px;
}

#sub_index_area .report h1{
	margin:0 0 40px;
	font-size:40px;
	line-height:1.2;
	color:#b81c2b;
}

#sub_index_area .report>p{
	margin:0 0 50px;
	font-size:15px;
}

#sub_index_area .report .reportBox ul{
	display:flex;
	flex-wrap:wrap;
	margin:0;
	padding:0;
	list-style-type:none;
}

#sub_index_area .report .reportBox ul li{
	width:25%;
	box-sizing:border-box;
	padding:0 5px 30px;
	text-align:center;
}

#sub_index_area .report .reportBox ul li p{
	margin:5px 0 0;
	font-size:14px;
	line-height:1.2;
}

#sub_index_area .report .reportBox ul li.border img{
	width:150px;
	border:1px solid #ccc;
}

@media only screen and (max-width:767px){
	#sub_index_area{
		padding:30px 25px 80px;
	}
	#sub_index_area .report h1{
		font-size:35px;
	}
	
	#sub_index_area .report .reportBox ul li{
		width:50%;
	}
}

@media only screen and (max-width:360px){
#sub_index_area .report .reportBox ul{
	display:block;
	flex-wrap:wrap;
	margin:0;
	padding:0;
	list-style-type:none;
}
	
	#sub_index_area .report .reportBox ul li{
		width:100%;
	}
}