@charset "utf-8";
main.content_wrap{
	width:92%;
	max-width:1100px;
	margin:0 auto;
}
main section{
	width:100%;
	margin:0 auto 80px;
}
h2{
	width:100%;
	margin:0 auto 40px;
	background:#FDFAEF;
	padding:20px 10px 20px 1.2em;
	box-sizing:border-box;
	font-size:2rem;
	font-weight:bold;
	position:relative;
}
h2:before{
	display:block;
	content:"";
	width:5px;
	height:70%;
	background:#F2C84B;
	position:absolute;
	top:0;
	bottom:0;
	left:0.5em;
	margin:auto 0;
}
h3{
	width:100%;
	margin:0 auto 40px;
	font-size:1.625rem;
	border-bottom:3px solid #018838;
	padding:0 0 5px 10px;
	position:relative;
}
h3:before{
	display:block;
	content:"";
	width:25%;
	height:3px;
	background:#F2C84B;
	position:absolute;
	left:0;
	bottom:-3px;
}
.ttl_box{
	width:100%;
	margin:0 auto 30px;
	display:flex;
	flex-wrap:wrap;
	align-items: baseline;
}
.ttl_box .ttl{
	width:50%;
	margin-right:2%;
}
.ttl_box .txt{
	width:48%;
}
.ttl_box .txt a{
	color:#018838;
	text-decoration: underline;
}
.ttl_box .txt a:hover{
	text-decoration: none;
}
h4{
	width:100%;
	margin:0 auto 30px;
	font-size:1.5rem;
	border-left:5px solid #018838;
	padding:3px 10px;
	box-sizing:border-box;
	position:relative;
}
@media screen and (max-width: 750px){
	main section{
		margin:0 auto 40px;
	}
	h2{
		margin:0 auto 30px;
		padding:12px 10px 12px 1.2em;
		font-size:1.5rem;
	}
	h3{
		font-size:1.25rem;
	}

	.ttl_box .ttl{
		width:100%;
		margin:0 auto;
	}
	.ttl_box .txt{
		width:100%;
	}
	h4{
		font-size:1rem;
		margin:0 auto 10px;
	}
}

/*********************
.block
*********************/
.block{
	width:100%;
	margin:0 auto 80px;
}
.block .txt_box{
	width:96%;
	margin:0 auto 40px;
	line-height:1.8;
}
.block .txt_box.txt_box_2{
	display:flex;
	flex-wrap:wrap;
}
.block .txt_box dt{
	width:100%;
	margin:0 auto 10px;
	color:#018838;
	font-weight:bold;
}
.block .txt_box dd{
	width:100%;
	margin:0 auto;
}
.block .txt_box dd.txt{
	width:48%;
	margin:0 30px 0 0;
}
.block .txt_box dd.bnr{
	width:24%;
	margin:0;
}
@media screen and (max-width: 750px){
	.block .txt_box dd.txt{
		width:100%;
		margin:0 auto 30px;
	}
	.block .txt_box dd.bnr{
		width:70%;
		margin:0 auto;
	}
}
/*********************
.main_block
*********************/
.movie_wrap{
	width:100%;
	margin:0 auto 40px;
	display:flex;
	flex-wrap:wrap;
	gap:30px 4%;
}
.btn_movie{
	display:block;
	width:calc(92% / 3);
}
a:hover dd p{
	color:#018838;
}


.movie_box{
	width:100%;
}
.movie_box dt{
	width:100%;
	margin:0 auto 10px;
}
.movie_box dd{
	width:100%;
	line-height:1.8;
}


.txt_box{
	width:100%;
	margin:0 auto 40px;
}
.txt_box li{
	width:100%;
	line-height:1.8;
}
@media screen and (max-width: 750px){
	.btn_movie{
		width:48%;
	}
	a:h
	.movie_box dt{
		width:100%;
	}
	.movie_box dd{
		width:100%;
	}

}

/*********************
.accordion_wrap
*********************/
.accordion_wrap.accordion_wrap{
	width:100%;
	margin:0 auto 20px;
}
.accordion_wrap.accordion_wrap .txt_s{
	width:100%;
	margin:0 auto 10px;
}
.accordion_wrap .btn{
	width:100%;
	padding:20px 30px;
	box-sizing:border-box;
	background:#F0F4F5;
	font-weight:bold;
	position:relative;
	cursor:pointer;
}
.accordion_wrap .btn .mark{
	display:block;
	width:32px;
	height:32px;
	background:#018838;
	border-radius:50%;
	position:absolute;
	top:0;
	bottom:0;
	right:10px;
	margin:auto 0;
}
.accordion_wrap .btn .mark:before{
	display:block;
	content:"";
	width:15px;
	height:2px;
	background:#fff;
	position:absolute;
	top:0;
	bottom:0;
	right:8px;
	margin:auto 0;
	transition:.2s;
}
.accordion_wrap .btn .mark:after{
	display:block;
	content:"";
	width:2px;
	height:15px;
	background:#fff;
	position:absolute;
	top:0;
	bottom:0;
	right:15px;
	margin:auto 0;
	transition:.2s;
}
.accordion_wrap .btn.active .mark:after{
	display:block;
	content:"";
	width:2px;
	height:16px;
	background:#fff;
	transform: rotate(90deg);
	position:absolute;
	top:0;
	bottom:0;
	right:14px;
	margin:auto 0;
	transition:.2s;
}
.accordion_wrap .accordion_box{
	display:none;
	width:100%;
	margin:0 auto;
	padding:20px 30px;
	box-sizing:border-box;
	border:8px solid #F0F4F5;
}
.accordion_wrap .accordion_box .accordion_list{
	width:100%;
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
	gap:30px 2%;
}
.accordion_wrap .accordion_box .accordion_list li{
	width:32%;
}
.accordion_wrap .accordion_box .accordion_list li .img{
	border:1px solid #ccc;
	padding:5px;
	box-sizing:border-box;
	border-radius:8px;
	overflow:hidden;
}
.accordion_wrap .accordion_box .accordion_list li a a{
	transition:.2s;
}
.accordion_wrap .accordion_box a:hover{
	color:#018838;
	transition:.2s;
}
.accordion_wrap .accordion_box .accordion_list li a:hover .img{
	border:1px solid #018838;
	box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, .2);
	transition:.2s;
}

.accordion_wrap .accordion_box .accordion_list li a:hover .img img{
	opacity:1.0;
}

.accordion_wrap .accordion_box a span{
	display:inline-block;
	width:1em;
	margin-left:.5em;
	line-height:1;
}


@media screen and (max-width: 1100px){
	.accordion_wrap .accordion_box .accordion_list{
		gap:30px 4%;
	}
	.accordion_wrap .accordion_box .accordion_list li{
		width:48%;
	}
}

/*********************
.flex_wrap
*********************/
.flex_wrap{
	width:100%;
	margin:0 auto 80px;
	display:flex;
	flex-wrap:wrap;
	gap:20px 1%;
}
.flex_wrap a{
	display:block;
	width:calc(96% / 5);
	padding:10px;
	box-sizing:border-box;
	transition:.2s;
	border-radius:10px;
	border:2px solid #F2C84B;
	background:#FDFAEF;
}
.flex_wrap a.w2{
	width:calc(96% / 2.65);
}
.flex_wrap a:hover{
	box-shadow: 3px 3px 5px 0 rgba(0, 0, 0, .2);
	border:2px solid #018838;
	color:#018838;
}
.flex_wrap a:hover img{
	opacity:1;
}
.flex_wrap a dt{
	width:100%;
	margin:0 auto 10px;
}
.flex_wrap a dd{
	width:100%;
	margin:0 auto;
	line-height:1.8;
}
.flex_wrap a dd span{
	display:inline-block;
	width:1em;
	line-height:1em;
	margin-left:.2em;
}
@media screen and (max-width: 1100px){
	.flex_wrap{
		justify-content: space-between;
		gap:30px 0;
	}
	.flex_wrap a{
		width:49%;
		box-shadow: 3px 3px 5px 0 rgba(0, 0, 0, .2);
		border:2px solid #F2C84B;
		background:#FDFAEF;
		padding:20px;
	}
	.flex_wrap a.w2{
		width:100%;
	}
}

/*********************
nav
*********************/
nav .nav_list{
	width:100%;
	margin:0 auto 40px;
}
nav .nav_list li{
	width:100%;
	border-bottom:2px dotted #333;
}
nav .nav_list li a{
	display:block;
	width:100%;
	padding:15px 20px 15px 10px;
	box-sizing:border-box;
	position:relative;
	transition:.2s;
}

nav .nav_list li a:after{
	display:block;
	content:"";
	width:8px;
	height:8px;
	border-bottom:1px solid #333;
	border-right:1px solid #333;
	transform:rotate(-45deg);
	position:absolute;
	right:0;
	top:0;
	bottom:0;
	margin:auto 0;
	transition:.2s;
}
nav .nav_list li a:hover{
	color:#018838;
	background:#FDFAEF;
}
nav .nav_list li a:hover:after{
	border-bottom:1px solid #018838;
	border-right:1px solid #018838;
}
nav .nav_list li:last-child{
	border-bottom:2px solid #018838;
}
nav .nav_list .ttl{
	border-bottom:2px solid #018838;
	color:#018838;
	font-weight:bold;
	padding-left:10px;
	padding-bottom:5px;
	box-sizing:border-box;
}

@media screen and (max-width: 750px){
	
}







/*********************

*********************/


@media screen and (max-width: 750px){
	
}

/*********************

*********************/


@media screen and (max-width: 750px){
	
}

/*********************

*********************/


@media screen and (max-width: 750px){
	
}
