#mv{
	background: url(../img/bg_mv.jpg) no-repeat;
	background-size: 100% auto;
	background-position: 50% 50%;
	overflow: hidden;
}
#mv .inside{
	height: 400px;
	position: relative;
}
#mv p{
	background-color: rgba(0, 0, 0, 0.7);
	color: #fff;
	font-size: 150%;
	font-weight: bold;
	left: 50%;
	letter-spacing: 2px;
	padding: 6px 40px 4px;
	position: absolute;
	text-align: center;
	text-shadow: 2px 2px 4px #333;
	top: 60%;
	transform: translate(-50%, -50%);
	width: 100%;
}
section{
	padding: 120px 0;
}
section .inside{
	overflow: hidden;
}
section:nth-of-type(even){
	background-color: #e7f1e0;
}
section h2{
	border-bottom: 4px solid #ffc455;
	font-size: 150%;
	font-family: 'Kiwi Maru', serif;
	padding: 0 40px 10px 40px;
	text-align: center;
}
section .red{
	color: #f00;
	font-weight: bold;
}
section .box{
	margin-top: 60px;
}
section .box p{
	margin-top: 10px;
}
section .box p:first-child{
	margin-top: 0;
}

#msg{
	padding-bottom: 0;
}
#msg em{
	font-size: 110%;
	font-weight: bold;
	vertical-align: bottom;
}
#msg .red{
	font-size: 127%;
	vertical-align: bottom;
}
#msg h2{
	display: inline-block;
	font-size: 180%;
}
#msg .box{
	font-family: 'UD デジタル 教科書体 NK-R', serif;
	margin-top: 20px;
	position: relative;
	width: 100%;
}
#msg .outer-txt{
	background: url(../img/bg_msg_box.png) no-repeat 50% 0;
	background-size: 100% auto;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 120px 110px 140px 110px;
	width: 100%;
}
#msg .box p{
	background-color: rgba(255, 255, 255, .9);
	box-shadow: 2px 2px 4px #ccc;
	font-size: 116%;
	padding: 20px;
}
#msg img{
	border: 4px solid #fff;
	height: 230px;
	right: 0;
	top: -80px;
	position: absolute;
	width: auto;
}

#edu ul{
	display: grid;
	grid-gap: 20px;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	margin: 0 auto;
	width: 100%;
}
#edu li a{
	background-color: #fff;
	border: 4px solid #fff;
	color: #333;
	display: block;
	opacity: .9;
	text-align: center;
	text-decoration: none !important;
	transition: all .2s linear;
}
#edu li a:hover,
#edu li a.active{
	border: 4px solid #dfa438;
	opacity: 1;
	transform: translate(0, -5px);
}
.edu-switch{
	display: none;
	margin-top: 60px;
}
.edu-switch.is-show{
	display: block;
	visibility: visible;
	animation: is-show .6s linear forwards;
}
@keyframes is-show{
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
.edu-switch h3{
	font-weight: bold;
	font-size: 150%;
}
.edu-switch .edu-outer{
	font-family: 'UD デジタル 教科書体 NK-R', serif;
	margin-top: 40px;
	overflow: hidden;
}
.edu-switch .edu-outer .caption{
	border: 1px solid #888;
	margin-top: 10px;
}
.edu-switch h4{
	font-weight: bold;
	font-size: 127%;
}
.edu-switch .edu-outer:nth-of-type(odd)>img{
	border-radius: 12px;
	float: left;
	width: 38%;
}
.edu-switch .edu-outer:nth-of-type(odd) .inner{
	float: right;
	width: 60%;
}
.edu-switch .edu-outer:nth-of-type(even) img{
	border-radius: 12px;
	float: right;
	width: 38%;
}
.edu-switch .edu-outer:nth-of-type(even) .inner{
	float: left;
	width: 60%;
}
.edu-switch .only-txt{
	font-family: 'UD デジタル 教科書体 NK-R', serif;
	margin-top: 40px;
}
.edu-switch .inner{
	background-color: #fff;
	border-radius: 12px;
	padding: 40px;
}
.edu-switch .inner p{
	border-top: 2px solid #dfa438;
	font-size: 115%;
	padding-top: 20px;
}

#school{
	margin-top: 60px;
}
#school ul{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}
#school li{
	border: 2px solid #dfa438;
	border-right: 2px solid #fff;
}
#school li:last-child{
	border-right: 2px solid #dfa438;
}
#school li a{
	background-color: #dfa438;
	color: #fff;
	display: block;
	padding: 22px 0 20px;
	text-align: center;
	text-decoration: none;
	transition: all .2s linear;
}
#school li a:hover{
	background-color: #fff;
	color: #dfa438;
}

#seasons .box ul{
	display: grid;
	grid-gap: 40px;
	grid-template-columns: 1fr 1fr;
}
#seasons .box .sp{
	background: url(../img/bg_spring.png) no-repeat 0 0;
	background-size: 100% auto;
}
#seasons .box .sm{
	background: url(../img/bg_summer.png) no-repeat 0 0;
	background-size: 100% auto;
}
#seasons .box .au{
	background: url(../img/bg_autumn.png?tss) no-repeat 0 0;
	background-size: 100% auto;
}
#seasons .box .wn{
	background: url(../img/bg_winter.png) no-repeat 0 0;
	background-size: 100% auto;
}
#seasons .box li{
	height: 500px;
	padding-top: 40px;
}
#seasons .box li h3{
	font-size: 147%;
	font-weight: bold;
	text-align: center;
}
#seasons .box li p{
	background-color: rgba(255, 255, 255, .8);
	border-radius: 12px;
	margin: 20px auto 0;
	padding: 20px 0;
	text-align: center;
	width: 70%;
}
#seasons .year-box{
	background-color: #d8dfb1;
	box-shadow: 10px 10px #c6d187;
	border-radius: 40px;
	margin: 20px auto 10px;
	width: 90%;
}
#seasons .year-box ul{
	padding: 40px;
	overflow: hidden;
}
#seasons .year-box li{
	float: left;
	margin-right: 40px;
}

#day .box{
	margin: 80px auto;
	width: 75%;
}

.tbl h3{
	font-weight: bold;
	margin: 40px auto 20px;
	text-align: center;
	width: 80%;
}

table{
	border: none;
	border-collapse: separate;
	border-spacing: 6px;
	margin: 0 auto;
	width: 80%;
}
table tr:last-child{
	border-bottom: none;
}
table th{
	background-color: #fff;
	border-left: none;
	box-shadow: 0 0 8px #c6d187;
	position: relative;
	text-align: left;
	width: 30%;
	text-align: center;
	padding: 20px 0;
}
table td{
	background-color: #fff;
	border-left: none;
	box-shadow: 0 0 8px #c6d187;
	text-align: left;
	width: 70%;
	padding: 10px 30px;
}
table tr{
	border-bottom: none;
	box-shadow: 0 0 8px #c6d187;
}
table tr:nth-of-type(even) th,
table tr:nth-of-type(even) td{
	background-color: #f6f6f6;
}
table span{
    background-color: #fff;
    display: inline-block;
    width: 100%;
    margin-top: 20px;
}
table span:first-child{
    margin-top: 0;
}

@media screen and (max-width: 1024px){
	#mv{
		background-position: 50% 0;
		background-size: 100% auto;
	}
	#mv p{
		border: 0;
		font-size: 120%;
	}
	section{
		padding: 40px 0;
	}
	#msg h2{
		display: block;
	}
	section h2{
		margin: 0 auto;
		width: 90%;
	}
	#msg .outer-txt{
		background: none;
		padding: 0;
	}
	#msg .box{
		margin: 20px auto 0;
		width: 90%;
	}
	section .box{
		margin: 20px auto 0;
		width: 90%;
	}
	#msg .box p{
		background-color: #ecdfe5;
		font-size: 100%;
		padding: 20px;
		width: 100%;
	}
	#msg .box img{
		border: 0;
		height: auto;
		position: relative;
		top: 0;
		width: 100%;
	}
	#msg .red{
		font-size: 100%;
	}
	#msg em{
		font-size: 100%;
	}
	#edu li a{
		/* font-size: 78%; */
	}
	#edu li{
		height: 200px;
		overflow: hidden;
	}
	#edu ul{
		grid-gap: 10px;
		grid-template-columns: repeat(2, 1fr)
	}
	#school{
		margin: 20px auto;
		width: 90%;
	}
	#school ul{
		grid-template-columns: repeat(2, 1fr);
	}
	#school li{
		border-left: 0;
		border-right: 0;
		border: 2px solid #fff !important;
	}
	#school li:hover{
		border: 2px solid #dfa438 !important;
	}
	#seasons .box ul{
		display: block;
	}
	#seasons .box li{
		height: auto;
		margin: 20px auto 0;
		padding: 20px 0;
		width: 80%;
	}
	#seasons .box .sp{
		background: #EEC6D9;
	}
	#seasons .box .sm{
		background: #93C973;
	}
	#seasons .box .au{
		background: #E4C38A;
	}
	#seasons .box .wn{
		background: #7FA8D7;
	}
	#seasons .year-box{
		border-radius: 0;
		box-shadow: none;
		width: 72%;
	}
}
@media screen and (max-width: 829px){
	#mv{
		background-size: auto 100%;
	}
	section h2{
		/* font-size: 150%; */
	}
	section h2 span{
		display: block;
		margin-top: -10px;
	}
	#msg h2{
		font-size: 125%;
	}
	.edu-switch .edu-outer{
		margin-top: 20px;
	}
	.edu-switch .edu-outer>img{
		border-radius: 0 !important;
		float: none !important;
		width: 100% !important;
	}
	.edu-switch .edu-outer .inner{
		border-radius: 0;
		float: none !important;
		margin-top: 10px !important;
		width: 100% !important;
	}
	#seasons .box li{
		width: 100%;
	}
	#seasons .box li p{
		width: 90%;
	}
	#seasons .year-box{
		width: 90%;
	}
	#day .box{
		margin: 40px auto 20px;
		width: 90%;
	}
	table{
		width: 100%;
	}
}
@media screen and (max-width: 539px){
	section h2{
		/* font-size: 127%; */
	}
	#mv .inside{
		height: 300px;
	}
	#edu ul{
		display: block;
	}
	#edu li{
		height: auto;
		margin-top: 10px;
	}
	#edu li img{
		display: none;
	}
	#edu li a:hover, #edu li a{
		background-color: #dfa438;
		border: none;
		color: #fff;
		padding: 5px 0;
	}
	#edu li a:hover, #edu li a.active{
		border: 4px solid #888;
		transform: translate(0, 0);
	}
	.edu-switch .inner{
		padding: 20px;
	}
	.tbl table th{
		/* font-size: 67%; */
	}
	.tbl table td{
		/* font-size: 67%; */
		padding: 20px;
	}
	#school li a{
		font-size: 78%;
	}
}