@charset "utf-8";
/* Nav
-----------------------------------------*/
.Nav {
	background: #EFEFEF;
	border-radius: 10px;
	margin-top: 10px;
	position: relative;
}
@media screen and (max-width: 1240px) {
	.Nav {
		border-top:none;
		position: relative;
	}
}
.Nav .navbtn {
	display: none;
}
@media screen and (max-width: 1240px) {
	.Nav .navbtn {
		display: block;
		position: absolute;
		top: -80px;
		right: 10px;
	}
}
@media screen and (max-width: 600px) {
	.Nav {
		border-top:none;
		position: fixed;
		z-index: 210;
		width: 100%;
	}
	.Nav .navbtn {
		display: block;
		position: absolute;
		top: 10px;
		right: 10px;
		z-index: 200;
	}
}
@media screen and (max-width: 1240px) {
	.Nav .navbtn a,
	.Nav .navbtn a.close {
		display: block;
		position: relative;
		width: 40px;
		height: 40px;
		background-color: #49AA00;
		opacity: 1;
	}
	.Nav .navbtn a::before,
	.Nav .navbtn a.close::before {
		position: absolute;
		top:10px;
		left:10px;
		content:"";
		width: 20px;
		height: 3px;
		background-color: #FFF;
		transition: .2s;
	}
	.Nav .navbtn a.open::before {
		top:19px;
		transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
	}
	.Nav .navbtn a::after,
	.Nav .navbtn a.close::after {
		position: absolute;
		bottom:10px;
		left:10px;
		content:"";
		width: 20px;
		height: 3px;
		background-color: #FFF;
		transition: .2s;
	}
	.Nav .navbtn a.open::after {
		bottom:18px;
		transform: rotate(-135deg);
		-webkit-transform: rotate(-135deg);
	}
}
@media screen and (max-width: 1240px) {
	.Nav .navbtn a.open {
	}
}
 
@media screen and (max-width: 1240px) {
	.Nav .navbtn a span {
		display: block;
		overflow: hidden;
		width: 1px;
		height: 1px;
	}
	.Nav .navbtn a span::after,
	.Nav .navbtn a.close span::after {
		position: absolute;
		top:18px;
		left:10px;
		content:"";
		width: 20px;
		height: 3px;
		background-color: #FFF;
	}
	.Nav .navbtn a.open span::after {
		display: none;
	}
}
.Nav ul.close {
	display: none;
	border-top: solid 1px #F5F4F0;
}
.Nav > ul {
	margin: 0 auto;
	max-width: 1240px;
}
.Nav > ul::after {
	content: "";
	clear: both;
	float: none;
	display: block;
}
@media screen and (max-width: 1240px) {
	.Nav > ul {
		display: none;
		position: absolute;
		top: 60px;
		left: 0;
		right: 0;
		z-index: 110;
		background-color: #FFF;
		opacity: 1;
	}
}
.Nav > ul > li {
	position: relative;
	font-size: 16px;
	display: block;
	float: left;
	width: calc(100% / 5);
	width: 240px;
	box-sizing: border-box;
	height: 60px;
}
.Nav > ul > li.spNav {
	display: none;
}
@media screen and (max-width: 1240px) {
	.Nav > ul > li {
		display: block;
		width: auto;
		border-bottom: solid 1px #dddddd;
		float: none;
		height: auto;
	}
	.Nav > ul > li.spNav {
		display: block;
	}
}
.Nav > ul > li a {
	display: block;
	position: relative;
	text-decoration: none;
	padding: 22px 15px 18px;
	font-size: 16px;
	line-height: 20px;
	color: #333;
	z-index: 2;
	font-family: heisei-maru-gothic-std,sans-serif;
	font-weight: 400;
	font-style: normal;
	text-align: center;
}
.Nav > ul > li.parent > a {
	padding-right:25px;
}
.Nav > ul > li.parent > a::before {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    right: 8px;
    width: 6px;
    height: 6px;
    margin: -6px 0 0 0;
    border-top: solid 2px #00a0e9;
    border-right: solid 2px #00a0e9;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}
@media screen and (max-width: 1240px) {
	.Nav > ul > li.parent.open > a::before {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
}
@media screen and (max-width: 1240px) {
	.Nav > ul > li.parent.open {
		border-bottom: none;
	}
}
.Nav > ul > li.parent.open > a{
    color: #333;
}
.Nav > ul > li.parent.open > a::after {
	background: #333;
	-webkit-transform: scale(1);
	transform: scale(1);
}
@media screen and (max-width: 1240px) {
	.Nav > ul > li.parent.open > a {
		color: #FFF;
	}
}
 
.Nav > ul > li a:hover {
	color: #333;
}
.Nav > ul > li a::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.Nav > ul > li a,
.Nav > ul > li a::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.Nav > ul > li a::after {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.Nav > ul > li a:hover::after {
	background: #FFF;
}
 
/* 2階層 */
.Nav > ul > li > ul {
	display: none;
	position: absolute;
	top: 60px;
	left: 0;
	width: auto;
	border-radius: 10px;
	background-color: rgba(255, 255, 255, 0.8);
	z-index: 9;
}
 
@media screen and (max-width: 1240px) {
	.Nav > ul > li > ul {
		background-color: #fbfbfb;
		position: static;
	}
}
 
.Nav > ul > li > ul li {
	white-space: nowrap;
}
 
.Nav > ul > li > ul li:last-child a:hover {
	border-radius: 0 0 10px 10px / 0 0 10px 10px;
}
 
.Nav > ul > li > ul li a {
	position: relative;
	padding: 12px 27px 12px 27px;
}
@media screen and (max-width: 1240px) {
	.Nav > ul > li > ul li a {
		border-bottom: solid 1px #dddddd;
		background-color: #EEE;
	}
}
.Nav > ul > li > ul li a:hover {
	text-decoration: underline;
}
 
@media screen and (max-width: 1240px) {
	.Nav > ul > li > ul li a:hover {
		background-color: #FFF;
	}
}
 
.Nav > ul > li > ul li ul li a {
	padding-left: 10px;
}
.Nav > ul > li > ul li ul li a::before {
    left: 20px;
}