
/*! #######################################################################

	MeanMenu 2.0.7
	--------

	To be used with jquery.meanmenu.js by Chris Wharton (http://www.meanthemes.com/plugins/meanmenu/)

####################################################################### */

/* hide the link until viewport size is reached */
a.meanmenu-reveal {	display:none; }

.mean-container .mean-bar { width:100%; position:fixed; background:none; min-height:58px; z-index:4; left:0; }

.mean-container a.meanmenu-reveal {
	font-feature-settings:"pkna";
    font-family:Arial, Helvetica, sans-serif;
	position:absolute;
	right:0;
	cursor:pointer;
	color:#838daa;
	text-decoration:none;
	line-height:22px;
	font-size:1px;
	display:block;
	/*-webkit-transition:0s;
	-moz-transition:0s;
	-o-transition:0s;
	transition:0s;*/
	box-sizing:border-box;
	z-index:10001;
	padding-top:0px;
}
	@media screen and ( min-width:501px ) and ( max-width:768px ) {
	.mean-container .mean-bar { top:70px; }
	.mean-container a.meanmenu-reveal { width:70px; height:70px; top:-70px; }
		/*--メニュー表示でマスク--*/
		.panelOpen::before { content:""; position:absolute; top:0; right:0; width:100vw; height:100vh; background:rgb(255,255,255,0.857); }
	}
		@media screen and ( max-width:500px ) {
		.mean-container .mean-bar { top:60px; }
		.mean-container a.meanmenu-reveal { width:60px; height:60px; top:-60px; }
			/*--メニュー表示でマスク--*/
			.panelOpen::before { content:""; position:absolute; top:0; right:0; width:100vw; height:100vh; background:rgb(255,255,255,0.85); }
		}
			@media screen and ( max-width:374px ) {
			.mean-container .mean-bar { top:50px; }
			.mean-container a.meanmenu-reveal { width:50px; height:50px; top:-50px; }
				/*--メニュー表示でマスク--*/
				.panelOpen::before { content:""; position:absolute; top:0; right:0; width:100vw; height:100vh; background:rgb(255,255,255,0.857); }
			}

#panel-btn { display:inline-block; position:relative; margin:0px; float:right; z-index:10001;
	   			-webkit-transition:all 0.3s ease;
    			transition:all 0.3s ease; }
	@media screen and ( min-width:501px ) and ( max-width:768px ) {
	#panel-btn { width:70px; height:70px;  }
	}
		@media screen and ( max-width:500px ) {
		#panel-btn { width:60px; height:60px;  }
		}
			@media screen and ( max-width:374px ) {
			#panel-btn { width:50px; height:50px;  }
			}

	#panel-btn:hover { cursor:pointer; }

/*--メニューバーアニメーション--*/
/*--close--*/
.panelClose span { display: inline-block; position:absolute; top:50%; left:50%; height:2px; background:#000; }
@media screen and ( min-width:501px ) and ( max-width:768px ) {
.panelClose span { width:30px; }
.panelClose span { margin:6px 0 0 -15px; }

.panelClose span:nth-of-type(1) { top:18px; animation: menu-ber01 .35s forwards; }
.panelClose span:nth-of-type(2) { top:29px; }
.panelClose span:nth-of-type(3) { top:40px; animation:menu-ber02 .3s forwards; }
}
	@media screen and ( max-width:500px ) {
	.panelClose span { width:28px; }
	.panelClose span { margin:6px 0 0 -15px; }

	.panelClose span:nth-of-type(1) { top:13px; animation: menu-ber01 .35s forwards; }
	.panelClose span:nth-of-type(2) { top:23px; }
	.panelClose span:nth-of-type(3) { top:33px; animation:menu-ber02 .3s forwards; }
	}
		@media screen and ( max-width:374px ) {
		.panelClose span { width:24px; }
		.panelClose span { margin:5px 0 0 -12px; }

		.panelClose span:nth-of-type(1) { top:9px; animation: menu-ber01 .35s forwards; }
		.panelClose span:nth-of-type(2) { top:19px; }
		.panelClose span:nth-of-type(3) { top:29px; animation:menu-ber02 .3s forwards; }
		}


/*--open--*/
.panelOpen span { display: inline-block; position:absolute; top:50%; left:50%; width:30px; height:2px; background:#000; }
@media screen and ( min-width:501px ) and ( max-width:768px ) {
.panelOpen span { margin:5px 0 0 -15px; }

.panelOpen span:nth-of-type(1) { top:19px; animation: active-menu-ber01 .3s forwards; }
.panelOpen span:nth-of-type(2) { opacity:0; }
.panelOpen span:nth-of-type(3) { top:37px; animation: active-menu-ber03 .3s forwards; }
}
	@media screen and ( max-width:500px ) {
	.panelOpen span { margin:1px 0 0 -15px; }

	.panelOpen span:nth-of-type(1) { top:18px; animation: active-menu-ber01 .3s forwards; }
	.panelOpen span:nth-of-type(2) { opacity:0; }
	.panelOpen span:nth-of-type(3) { top:36px; animation: active-menu-ber03 .3s forwards; }
	}
		@media screen and ( max-width:374px ) {
		.panelOpen span { margin:1px 0 0 -14px; width:27px; }

		.panelOpen span:nth-of-type(1) { top:13px; animation: active-menu-ber01 .3s forwards; }
		.panelOpen span:nth-of-type(2) { opacity:0; }
		.panelOpen span:nth-of-type(3) { top:31px; animation: active-menu-ber03 .3s forwards; }
		}

@keyframes menu-ber01 {
  0%     { transform:translateY(10px) rotate(45deg); }
  50%   { transform:translateY(10px) rotate(0); }
  100% { transform:translateY(0) rotate(0); }
}
@keyframes menu-ber02 {
  0%     { transform:translateY(-10px) rotate(-45deg); }
  50%   { transform:translateY(-10px) rotate(0); }
  100% { transform:translateY(0) rotate(0); }
}
@keyframes active-menu-ber01 {
  0%     { transform:translateY(0) rotate(0); }
  50%   { transform:translateY(10px) rotate(0); }
  100% { transform:translateY(10px) rotate(45deg); }
}
@keyframes active-menu-ber03 {
  0%     { transform:translateY(0) rotate(0); }
  50%   { transform:translateY(-8px) rotate(0); }
  100% { transform:translateY(-8px) rotate(-45deg); }
}



.mean-container .mean-nav {
	float:left;
	width:100%;
	max-height:100vh;
	overflow-y:auto;
	/*background:#223653;*/
}

	@media screen and ( min-width:769px ) and ( max-width:960px ) {
	/*.mean-container .mean-nav { margin-top:72px; }*/


.mean-container .mean-nav ul::-webkit-scrollbar{
 display:none;
}
.mean-container .mean-nav ul {
 -ms-overflow-style:none;
}


	}
	@media screen and ( min-width:601px ) and ( max-width:768px ) {
	/*.mean-container .mean-nav { margin-top:62px; }*/

.mean-container .mean-nav ul::-webkit-scrollbar{
 display:none;
}
.mean-container .mean-nav ul {
 -ms-overflow-style:none;
}



	}

	@media screen and ( min-width:320px ) and ( max-width:600px ) {
	/*.mean-container .mean-nav { margin-top:56px; }*/

.mean-container .mean-nav ul::-webkit-scrollbar{
 display:none;
}
.mean-container .mean-nav ul {
 -ms-overflow-style:none;
}

	}


.mean-container .mean-nav ul {
	padding:0;
	margin:0;
	width:100%;
	list-style-type:none;
	overflow-y:scroll;
	/*background:#223653;*/
	/*background:#c7cace;*/
	background: rgb(255, 255, 255, 0.85);
	position:relative;
	z-index:10001;
	max-height:100vh;
	/*margin-bottom:58px;*/
}
.mean-container .mean-nav ul ul {
	padding-bottom:0;
	margin-bottom:0;
	/*background-image:linear-gradient(to top, #fff1eb 0%, #ace0f9 100%);*/
	background:#b8babd;
}

.mean-container .mean-nav ul li {
	position:relative;
	float:left;
	width:100%;
}

	@media only screen and ( max-width :960px ) {
	.mean-container .mean-nav ul li { border-top:1px solid #e5e7ea; }
		.mean-container .mean-nav ul li:nth-child(1) { border-top:none; }
	}

	@media only screen and ( max-width :960px ) {
	.mean-container .l-header-nav__sNav li { border-top:1px solid #e5e7ea!important; }
	/*.mean-container .l-header-nav__sNav li:first-child { border-top:none!important;  }*/
	}

.mean-container .mean-nav ul li a {
	display:block;
	float:left;
	width:90%;
	padding:1.95em 10px 1.95em 30px;
	margin:0;
	text-align:left;
	border-top:1px solid #eee;
	text-decoration:none;
	text-transform:uppercase;
	color:#000;
}
	@media only screen and ( max-width :960px ) {
	.mean-container .mean-nav ul li a { border-top:none; width:100%; box-sizing:border-box; }
	}

.mean-container .mean-nav ul li li a {
	width:80%;
	padding:0 0.5%;
	/*border-top:1px solid #f1f1f1;
	border-top:1px solid rgba(255,255,255,0.25);
	opacity:0.75;
	filter:alpha(opacity=75);*/
	text-shadow:none !important;
	visibility:visible;
}

	@media only screen and ( max-width :768px ) {
	.mean-container .mean-nav ul li li a { width:100%; box-sizing:border-box; }
	}

.mean-container .mean-nav ul li.mean-last a {
	border-bottom:none;
	margin-bottom:0;
}

.mean-container .mean-nav ul li li li a {
	width:70%;
	padding:1em 15%;
}

.mean-container .mean-nav ul li li li li a {
	width:60%;
	padding:1em 20%;
}

.mean-container .mean-nav ul li li li li li a {
	width:50%;
	padding:1em 25%;
}

.mean-container .mean-nav ul li a:hover {
	/*background:#113179;*/
	/*background:rgba(0,0,51,0.1);*/
}
.mean-container .l-header-nav__sNav li a:hover {
	/*background:url(../images/common/icon_arrowRight_orange) no-repeat left 15px top 10px #223653 ; background-size:auto 13px; */
	color:#fff;
	/*background:rgba(0,0,51,0.1);*/
}
	/*--コーポレート--*/
	.corporateWeb .mean-container .l-header-nav__sNav li a:hover { background:#cc0000; }
	/*--リクルート--*/
	.recruitWeb .mean-container .l-header-nav__sNav li a:hover { background:#106dca; }

.mean-container .is-directLink a:hover {
	/*background:url(../../images/common/icon_arrowRight_orange) no-repeat left 11px center#2e4c78 ; background-size:auto 13px; */
	/*background:#223653;*/
	color:#fff;
	/*background:rgba(0,0,51,0.1);*/
}
.mean-container .is-pullDown:hover {
	/*background:#cc0000;*/
	/*background:rgba(0,0,51,0.1);*/
}
	/*--コーポレート--*/
	.corporateWeb .mean-container .is-pullDown:hover { background:#cc0000; }
	/*--リクルート--*/
	.recruitWeb .mean-container .is-pullDown:hover { background:#106dca; }

.mean-container .is-pullDown:hover > .l-header-nav__mNavLi-tle {
	color:#fff!important;
}

	.mean-container .mean-nav ul li a.mean-expand {
		/*margin-top:1px;*/
		width:100%;
		height:100%;
		text-align:left;
		position:absolute;
		right:0;
		top:-3px;
		z-index:2;
		/*background:#fafafa;*/
		border:none !important;
		/*border-left:1px solid #eee !important;*/
		border-bottom:1px solid rgba(255,255,255,0) !important;
		font-size:24px;
		padding:0.8em 8px;
		box-sizing:border-box;
		color:#000;
	}
		.mean-container .mean-nav ul li a.mean-expand:hover { color:#fff; }
		.mean-container .mean-nav ul li:hover .mean-expand { color:#fff; }

	.mean-container .mean-nav ul li a.mean-clicked { font-size:21px!important; top:-9px; right:-2px; }

@media only screen and ( max-width:500px ) {
.mean-container .mean-nav ul li a.mean-expand { top:-5px; }
.mean-container .mean-nav ul li a.mean-clicked { font-size:21px!important; top:-11px; right:-2px; }
}

	@media only screen and ( max-width:374px ) {
	.mean-container .mean-nav ul li a.mean-expand { top:-7px; }
	.mean-container .mean-nav ul li a.mean-clicked { font-size:21px!important; top:-13px; right:-2px; }
	}


.mean-container .mean-push {
	float:left;
	width:100%;
	padding:0;
	margin:0;
	clear:both;
}

.mean-nav .wrapper {
	width:100%;
	padding:0;
	margin:0;
}

/* Fix for box sizing on Foundation Framework etc. */
.mean-container .mean-bar, .mean-container .mean-bar * {
	-webkit-box-sizing:content-box;
	-moz-box-sizing:content-box;
	box-sizing:content-box;
}
.mean-remove {
	display:none !important;
}
