@charset "utf-8";
.mobileNav {
	position:absolute;
	top:15px;
	right:15px;
    display:block;
	width:45px;
	height:45px;
	z-index:99;
}
.mobileNav span {
	display:block;
}
.mobileNav em,
.mobileNav em::after,
.mobileNav em::before {
	/* this is the menu icon */
	display:block;
	position:relative;
	height:3px;
	width:22px;
	background:#fff;
	border-radius:0;
	-webkit-backface-visibility:hidden;
			backface-visibility:hidden;
}
.mobileNav em {
	/* this is the menu central line */
	margin:20.5px auto 11px;
	-webkit-transition:background-color .2s;
	        transition:background-color .2s;
}
.mobileNav em::before,
.mobileNav em::after {
	position:absolute;
	content:'';
	left:0;
	-webkit-transition:-webkit-transform .2s;
	        transition:-webkit-transform .2s;
	        transition:transform .2s;
	        transition:transform .2s, -webkit-transform .2s;
}
.mobileNav em::before {
	/* this is the menu icon top line */
	-webkit-transform:translateY(-7px);
		-ms-transform:translateY(-7px);
			transform:translateY(-7px);
}
.mobileNav em::after {
	/* this is the menu icon bottom line */
	-webkit-transform:translateY(7px);
		-ms-transform:translateY(7px);
			transform:translateY(7px);
}
.mobileNav.nav-open em {
	/* transform menu icon into a 'X' icon */
	width:26px;
	margin-left:9px;
	background-color:rgba(255, 255, 255, 0);
}
.mobileNav.nav-open em::before {
	/* rotate top line */
	width:26px;
	-webkit-transform:rotate(-45deg);
		-ms-transform:rotate(-45deg);
			transform:rotate(-45deg);
}
.mobileNav.nav-open em::after {
	/* rotate bottom line */
	width:26px;
	 -webkit-transform:rotate(45deg);
		 -ms-transform:rotate(45deg);
			 transform:rotate(45deg);
}
.mobileNav.nav-open em::before,
.mobileNav.nav-open em::after{
	background-color:#fff;
}
.menu-dropdown a {
	cursor:pointer;
}
.sp-nav-btn:before {
    content:"";
    position:absolute;
    display:block;
    top:24px;
    right:24px;
	width:14px;
    height:2px;
    margin:-1px 0 0;
	background-color:#fff;
	-webkit-transition:-webkit-transform .2s linear;
	   -moz-transition:-moz-transform .2s linear;
	    -ms-transition:-ms-transform .2s linear;
		 -o-transition:-o-transform .2s linear;
	        transition:transform .2s linear;
}
.sp-nav-btn:after {
	content:"";
	position:absolute;
	display:block;
	top:24px;
	right:30px;
	width:2px;
	height:14px;	
	margin:-7px 0 0;
	background-color:#fff;
	-webkit-transition:-webkit-transform .2s linear;
	   -moz-transition:-moz-transform .2s linear;
	    -ms-transition:-ms-transform .2s linear;
		 -o-transition:-o-transform .2s linear;
	        transition:transform .2s linear;
}
.open .sp-nav-btn:before {
	right:22px;
	width:18px;
}
.open .sp-nav-btn:after {
	top:22px;
	height:18px;
}
.open .sp-nav-btn:before,
.open .sp-nav-btn:after {
	-webkit-transform:rotate(135deg);
	   -moz-transform:rotate(135deg);
		-ms-transform:rotate(135deg);
		 -o-transform:rotate(135deg);
			transform:rotate(135deg);
}
@media screen and (min-width:768px) {
	.sp-nav-btn {
		display:none;
	}	
}
#menuBg{
	display:none;
	position:fixed;
	width:100%;
	height:100%;
	top:0;left:0;
	background:#1b1b1b;
}
#header.sp-show{
	z-index:3;
	position:absolute;
	height:100%;
}
#header.sp-show #topHead{ display:none;}
#wrapper:has(#header.sp-show) #navMenu{
	z-index:3;
	position:absolute;
	height:100vh;
	display:flex;flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	flex-direction: column;
	background:#424b63;
	background-image:linear-gradient(30deg, #424b63 0%, #2a2a2a 100%);
}
#wrapper:has(#header.sp-show) #menuBg{z-index:2;}
#navi {
	display:none;
    width:100%;
	margin:0 auto;    
}
#navi a:focus{
	border:dashed 2px #F06400;
	outline:none;	
}
#navi.show-on-mobile {
	display:block;
	text-align: center;
    box-sizing: border-box;
    padding: 20px;
}
#navi > ul {
    list-style:none;
}
#navi > ul > li {
    padding:0;
    margin:0;	
}
#navi > ul > li > a {
	display:block;
	color:#FFF;
	font-size:1.7em;
	font-weight:bold;
	padding:15px;
}
#navi > ul > li > ul {
	display:none;
	width:100%;    
	padding:0;
	margin:0;
	list-style:none;
	box-sizing:border-box;
}
@media screen and (max-width:767px) {
	#navi > ul {
		width:100%;
		margin:0 auto;
	}
	#navi > ul > li {
		position:relative;
		border-bottom:1px solid rgba(255,255,255,.3);
	}
	#navi > ul > li > a.open {
		color:#FFF;
		background:#27629e;
	}
	#navi > ul > li > a.linkBtn:after {
		content:"";
		display:block;    
		position:absolute;
		top:50%;
		right:25px;
		width:7px;
		height:7px;
		border-top:2px solid #FFF;
		border-right:2px solid #FFF;
		margin-top:-5px;
		z-index:2;
		-webkit-transform:rotate(45deg);
			-ms-transform:rotate(45deg);
				transform:rotate(45deg);
		-webkit-transition:all 0.3s;
		   -moz-transition:all 0.3s;    
			 -o-transition:all 0.3s;
				transition:all 0.3s;
	}
	#navi > ul > li > ul {
		width:100%;
		background:#28639d;
	}
	#navi > ul > li > ul > li {
		position:relative;
		width:100%;
		background:#FAF4F0;
		border-bottom:1px dashed #CCC;
	}
	#navi > ul > li > ul > li:last-child {
		border-bottom:none;
	}
	#navi > ul > li > ul > li > a {
		position:relative;
		display:block;
		color:#000;
		font-size:1.7em;
		line-height:120%;
		font-weight:bold;
		padding:15px 15px 15px 35px;
	}
	#navi > ul > li > ul > li > a:hover {
		color:#28639d;
	}
}
/* navMenu */
#navMenu {
    width:100%;
	margin:0 auto;
	box-sizing:border-box;
	background-color:transparent;
	position:relative;
	z-index:2;
}
#navMenu .container {width:100%;}
@media screen and (min-width:768px) {
	#navMenu{
		transform-origin:left;
		transform:skewY(18deg);
		position:absolute;
		bottom:6vw;
		left:47%;
		width:auto;
	}
	#navMenu .container{
		position:relative;
		padding:1px;
		box-sizing:border-box;
	}
	.mobileNav {display:none;}
	.menu-dropdown:before {display:none;}
	#navi{
		width:100%;
		display:block;
		position:relative;
	}
	.comWrap #navMenu,
	.comWrap #navMenu .container,
	.comWrap #navMenu .container::before,
	.comWrap #navMenu::before,
	.comWrap #navMenu::after{height:95%;}
	#navi > ul {
		width:100%;
		display:flex;
		flex-direction:row;
		margin:0;
	}
	#navi > ul > li {
		position:relative;
		display:inline-block;
		width:auto;
		text-align:left;
		margin:0;
		letter-spacing:0px;
		box-sizing:border-box;
		border-bottom:none;
	}
	#navi > ul > li + li{ margin-left:15px;}
	#navi > ul > li > a {
		position:relative;
		color:#fff;
		font-size:2.8em;
		line-height:120%;
		padding:5px 15px;
		text-align:left;
		display:flex;
		flex-wrap:wrap;
		align-items: center;
		background-color:#864522;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
	}
	#navi > ul > li > a strong{
    	text-shadow: 0 0 3px rgba(50, 50, 50, 0.8);
		position:relative;
		box-sizing:border-box;
		padding-left:16px;
		white-space: nowrap;
	}
	#navi > ul > li > a strong::before{
		content:"";display:block;
		position:absolute;
		top:50%;
	}
	#navi > ul > li > a strong::before{
		width:6px;height:6px;
		border-radius:6px;
		background-color:#f1eb8f;
		left:0;
		margin-top:-3px;
	}
	#navi > ul > li > a span{
		font-family:Arial, Helvetica, sans-serif;
		font-size:0.5em;
		color:#e6e6b4;
		box-sizing:border-box;
		padding-left:16px;
	}
	#navi > ul > li:hover > a,
	#navi > ul > li > a.open {color:#ffffff;}
	#navi > ul > li > a:hover,
	#navi > ul > li > a:focus{
		transform: translate3d(-1%, 0, 0);
		background-color:#0a2878;
		box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
	}
}
@media screen and (min-width:991px) {
	#navMenu{bottom:5vw;}
}
@media screen and (min-width:1640px) {
	#navMenu{bottom:4.3vw;}
}

@media print {
	#navMenu,.mobileNav{display:none!important;}  
}