@charset "utf-8";

/* common */
.c_list{
	padding-left:20px;
	margin-top:50px;
}
.c_item{font-weight:500;}
.c_link{color:#006E43 !important;}

/* parent_top */
.parent_top .page_top{
	max-width:none;
	padding:0 15px;
}
.page_top_box{position:relative;}
.parent_top .page_title{
	position:absolute;
	z-index:1;
	bottom:25px;
	left:30px;
	padding:0;
	border:none;
	color:#fff;
}
.page_top_catch{
	position:relative;
	margin:0 !important;
}
.page_top_catch::after{
	content:'';
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:37%;
	background:linear-gradient(0, #000 0%, rgba(0,0,0,0) 100%);
	opacity:0.5;
}
.page_top_img{
	display:block;
	width:100%;
	min-height:360px;
	object-fit:cover;
}
.data_list{
	display:grid;
	padding:0;
	margin:0;
}
.data_3{grid-template-columns:1fr 1fr 1fr;}
.data_4{grid-template-columns:repeat(4, 1fr);}
.data_5{grid-template-columns:repeat(5, 1fr);}
.data_item{
	display:flex;
	flex-direction:column;
	justify-content:center;
	list-style:none;
	padding:25px 20px;
	margin:0;
	color:#fff;
	font-family:var(--font_serif);
	text-align:center;
}
.data_item:first-child{background:#007F4D;}
.data_item:nth-child(2){background:#006E43;}
.data_item:nth-child(3){background:#015E3A;}
.data_item:nth-child(4){background:#014D2F;}
.data_item:nth-child(5){background:#003721;}
.data_item_in{
	display:flex;
	flex-direction:column;
	justify-content:center;
}
.data_term{
	margin:0 0 5px;
	font-size:1.7rem;
	letter-spacing:0;
	line-height:2.5rem;
}
.data_txt{
	margin:0 !important;
	font-size:1.7rem;
	line-height:2.5rem;
}
.data_txt_in{
	margin:0 2px;
	font-family:var(--font_lusitana);
	font-size:3.6rem;
	font-weight:normal;
	line-height:4.6rem;
}
.data_txt_note{
	display:block;
	margin:10px 0 0 !important;
	font-size:1.2rem;
	font-weight:600;
	line-height:1.7rem;
}

.parent_top .content_area{max-width:1160px;}
.parent_top p{margin-bottom:10px;}
.parent_top h2 a, .parent_top h3 a{color:#333 !important;}
.parent_top p a{color:#006E43 !important;}
.parent_top .content_area img{
	display:block;
	min-height:200px;
	object-fit:cover;
}
.summary_copy{
	margin-bottom:10px;
	font-family:var(--font_serif);
	font-size:2.4rem;
	letter-spacing:0.96px;
	line-height:3.5rem;
}
.summary_copy strong{font-weight:600;}
.page_box{padding:0 30px;}
.page_box + .page_box{
	margin-top:50px;
	border-top:1px solid #CED8D0;
}
.page_box .summary_copy{margin-top:35px;}
.page_list{
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	gap:10px 45px;
	padding-left:20px;
	margin-top:25px;
}
p + .page_list{margin-top:40px;}
.page_list li{
	margin:0;
	font-weight:500;
}
.page_list a{color:#006E43 !important;}
.bg_list{
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	align-items:center;
	gap:10px;
	padding:18px 30px;
	background:#F2F8F6;
}
.bg_list li{
	list-style:none;
	margin:0;
	font-weight:500;
}
.bg_list a{color:#006E43 !important;}
.related_list{
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	gap:10px 30px;
	padding:0;
}
.related_list li{
	list-style:none;
	margin:0;
}
.related_list a{color:#006E43 !important;}

/* parent_middle */
.parent_middle .c_list{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:10px 20px;
}
.parent_middle .c_item{margin:0;}

/* parent_small */
.parent_small .c_item{margin-bottom:10px;}

/* type / target */
.page_target h2{
	padding:0;
	background:none;
}
.target_post_link{
	padding-top:20px;
	margin-top:40px;
	border-top:1px solid #CED8D0;
	font-weight:500;
	text-align:right;
}
.target_post_link a{color:#333 !important;}
.target_box{margin-top:80px;}
.target_box h3{padding:0 30px;}
.target_box ul:not(.page_link){
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	gap:10px 45px;
	padding:0 30px 0 50px;
	margin-top:25px;
}
.target_box p + ul{margin-top:40px;}
.target_box li{
	margin:0;
	font-weight:500;
}
.target_box a{color:#006E43 !important;}
.target_box hr{
	height:1px;
	margin:40px 0 20px;
	background:#CED8D0;
	border:none;
}

/* other */
.bg_contact{
	padding:45px 30px 15px;
	background:#F7F9F7;
	text-align:center;
}
.contribution .bg_contact{margin-top:100px;}
.bg_contact h2{margin:0 0 5px;}
.bg_contact p{margin-bottom:35px;}
.bg_contact a{
	display:block;
	max-width:424px;
	margin:auto;
}

/* contribution / learning */
.learning .page_top{
	max-width:none;
	padding:0 15px;
}
.learning .page_title{
	position:absolute;
	z-index:1;
	bottom:60px;
	left:30px;
	padding:0;
	border:none;
	color:#fff;
}
.learning .page_top_catch::after{height:26%;}
.learning .page_top_img{min-height:0;}
.page_subcopy{
	position:absolute;
	z-index:1;
	bottom:30px;
	left:30px;
	margin:0;
	color:#fff;
	font-family:var(--font_serif);
	font-weight:600;
	letter-spacing:0.96px;
	line-height:2.3rem;
}
.learning h2{
	margin-top:50px;
	font-size:2.6rem;
	letter-spacing:1.04px;
	line-height:3.7rem;
}
.learning h2 a{color:#333 !important;}


@media screen and (max-width:1024px){

/* parent_top */
.data_txt_note{margin-top:5px !important;}
.page_list, .bg_list, .related_list{grid-template-columns:1fr 1fr;}
p + .page_list{margin-top:30px;}

/* type / target */
.target_box ul:not(.page_link){grid-template-columns:1fr 1fr;}

/* other */
.contribution .bg_contact{margin-top:90px;}
.bg_contact p{margin-bottom:25px;}

}


@media screen and (min-width:768px) and (max-width:1024px){

/* parent_top */
.parent_top .page_top{padding:0 10px;}
.page_top_catch::after{height:33%;}
.data_item{padding:30px 10px;}
.data_term{
	font-size:1.5rem;
	line-height:2.1rem;
}
.data_txt{
	font-size:1.5rem;
	line-height:2.1rem;
}
.data_txt_in{
	font-size:3.2rem;
	line-height:4.2rem;
}
.parent_top .content_area h2{
	font-size:2.4rem;
	letter-spacing:0.96px;
	line-height:3.5rem;
}
.summary_copy{
	font-size:2.2rem;
	letter-spacing:0.88px;
	line-height:3.1rem;
}
.page_box + .page_box{margin-top:45px;}

/* type / target */
.page_target .news_item:nth-child(4), .page_target .event_item:nth-child(4){display:none;}
.target_box ul:not(.page_link){margin-top:20px;}
.target_box p + ul{margin-top:30px;}

/* contribution / learning */
.learning .page_top{padding:0 10px;}
.learning .page_title{bottom:55px;}
.learning .page_top_catch::after{height:37%;}
.page_subcopy{
	font-size:1.4rem;
	letter-spacing:0.84px;
	line-height:2rem;
}
.learning h2{
	margin:45px 0 15px;
	font-size:2.4rem;
	letter-spacing:0.96px;
	line-height:3.5rem;
}

}


@media screen and (max-width:767px){

/* common */
.c_list{margin-top:30px;}

/* parent_top */
.parent_top .page_top{padding:0 5px;}
.parent_top .page_title{
	bottom:15px;
	left:20px;
}
.page_top_catch::after{height:40%;}
.page_top_img{min-height:200px;}
.data_list{display:block;}
.data_item{
	display:block;
	padding:19px 20px;
}
.data_item_in{
	flex-direction:row;
	align-items:center;
	gap:0 10px;
}
.data_term{
	margin:0;
	font-size:1.5rem;
	line-height:2.1rem;
}
.data_txt{
	display:flex;
	align-items:center;
	font-size:1.5rem;
	line-height:2.1rem;
}
.data_txt_in{
	margin:0 5px;
	font-size:3.2rem;
	line-height:4.2rem;
}
.data_txt_note{width:100%;}
.parent_top .content_area img{min-height:120px;}
.summary_copy{
	font-size:2rem;
	letter-spacing:0.8px;
	line-height:2.9rem;
}
.page_box{padding:0;}
.page_box + .page_box{margin-top:35px;}
.page_box .summary_copy{margin-top:25px;}

/* type / target */
.target_box h3{padding:0;}
.target_box ul:not(.page_link){margin-top:15px;}
.target_box p + ul{margin-top:20px;}

/* other */
.bg_contact{padding:35px 20px 15px;}

/* contribution / learning */
.learning .page_top{padding:0 5px;}
.learning .page_title{
	bottom:40px;
	left:20px;
}
.learning .page_top_catch::after{height:42%;}
.learning .page_top_img{min-height:240px;}
.page_subcopy{
	bottom:15px;
	left:20px;
	font-size:1.3rem;
	letter-spacing:0.78px;
	line-height:1.9rem;
}
.learning h2{
	margin:45px 0 15px;
	font-size:2.1rem;
	letter-spacing:0.84px;
	line-height:3rem;
}

}


@media screen and (max-width:600px){

/* parent_top */
.page_list, .bg_list, .related_list{display:block;}
.bg_list{padding-bottom:12px;}
.page_list li, .bg_list li, .related_list li{margin-bottom:8px;}

/* parent_middle */
.parent_middle .c_list{display:block;}
.parent_middle .c_item{margin-bottom:8px;}

/* type / target */
.target_box ul:not(.page_link){
	display:block;
	padding:0 0 0 20px;
}
.target_box ul:not(.page_link) li{margin-bottom:8px;}

}