@charset "utf-8";
/*=============================================================
 header
=============================================================*/
#header{
	width:100%;
	position:fixed;
	top:0;
	left:0;
	z-index:21;
}
#header a{color:#333;}
#header>.contentsInner{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 10px 0 20px;
	max-width: 1330px;
	background: #fff;
	border-radius: 0 0 8px 8px;
	box-shadow: 2px 1px 4px 2px rgba(0,0,0,0.3);
	margin: 0 auto;
}
#header>.contentsInner h1{
	height: 32px;
}
#header>.contentsInner h1 img{
	height: 100%;
}
#header>.contentsInner>nav{
	max-width: 760px;
	width: 100%;
	padding-top: 20px;
}
/* hdr-logo
-------------------------------------------------------------*/
#hdr-logo{}

/* globalNavSet
-------------------------------------------------------------*/
#globalNavSet{position: relative;}
#globalNavSet>dt{display:none;}

/* delete JS Style */
@media only screen and (min-width:970px){
#container{margin-top:0 !important;}
}
#globalNavSet>dd>div{}

/* boxGNavBg */
.boxGNavBg{
	background:rgba(0,0,0,.5);
	position:fixed;
	top:0;
	right:0;
	bottom:0;
	left:0;
	z-index:20;
	visibility:hidden;
	opacity:0;
	transition:.2s;
}

/* globalNav
-------------------------------------------------------------*/
#globalNav{
	display:flex;
	/*padding-top: 22px;*/
}

#globalNav>li{
	line-height:1.2;
	box-sizing:border-box;
	margin:0 10px;
	padding:0 4px 0 4px;
	flex:1 1 auto;
	position:relative;
}
#globalNav>li>a{
	color:#000;
	text-decoration:none;
	display:flex;
	justify-content:center;
	align-items:center;
	box-sizing:border-box;
	height:100%;
	padding: 0 0 30px;
	/*padding:16px 0 10px;*/
	position:relative;
	white-space: nowrap;
	font-size: 14px;
	border-bottom: 5px solid #fff;
}
#globalNav>li>a:hover{
	border-bottom: 5px solid #0069d1;
}
#globalNav>li>a>span{
	display: block;
	padding-top:20px; 
}
#globalNav>li.current>a{
	border-bottom: 5px solid #0069d1;
}
.ourbusiness #globalNav>li:first-child.current>a,
.corporate #globalNav>li:first-child.current>a,
.recruit #globalNav>li:first-child.current>a,
.news #globalNav>li:first-child.current>a,
.other #globalNav>li:first-child.current>a,
.contact #globalNav>li:first-child.current>a{
	border-bottom: 5px solid #fff;
}
.ourbusiness #globalNav>li:first-child.current>a:hover,
.corporate #globalNav>li:first-child.current>a:hover,
.recruit #globalNav>li:first-child.current>a:hover,
.news #globalNav>li:first-child.current>a:hover,
.other #globalNav>li:first-child.current>a:hover,
.contact #globalNav>li:first-child.current>a:hover{
	border-bottom: 5px solid #0069d1;
}

@media only screen and (min-width:970px){
	/*html:not(.touchDevice) #globalNav>li>a:hover{color:#0068b7;}*/
	#globalNav .setDrop a.act{}

	/* act *//* body#XXX -> add.act  #globalNav>#gb-XXX */
	/*#globalNav>.act>a span::after{
	content:"";
	display:block;
	background-color:#addef8;
	height:4px;
	position:absolute;
	right:13px;
	left:13px;
	bottom: 0;
}*/
/* drop */
/*#globalNav .drop{
	display:block !important;
	background-color:#addef8;
	box-sizing:border-box;
	width:100%;
	transition:.25s ease-out;*/
	/*margin-top: 48px;*/
	/*position:fixed;
	left:0;
	z-index:22;
}*/
/*#globalNav .drop.open{
	padding-top:28px;
	padding-bottom:28px;
	visibility:visible;
	opacity:1;
	border-bottom: 1px solid #969696;
}
#globalNav .drop>*{display:none;}
#globalNav .drop.open>*{display:block;}
	
#globalNav .drop .nav-item{
	display: flex;
	align-items: center;
}
#globalNav .drop .nav-ttl{
	width: 33%;
	font-size: 24px;
	text-align: left;
	border-right: 1px solid #fff;
	padding: 90px 0;
}
#globalNav .drop ul{
	line-height:1.4;
	padding-left: 86px;
}
#globalNav .drop ul li:not(:last-child){margin-bottom: 20px;}
#globalNav .drop ul li a:hover{
	color: #0068b7;
	text-decoration: none;
}*/	
	
/* grandchild */
#globalNav ul ul{display:none !important;}

}

#globalNav li#gn_contact a {
	padding: 0 0 20px;
}
#globalNav li#gn_contact a span{
	position: relative;
	padding-top: 30px;
}
#globalNav li#gn_contact a span:before{
	position: absolute;
	content: '';
	display: inline-block;
	background: url("../img/hdr_icon-contact.png") no-repeat;
	background-size: 24px 20px;
	width: 24px; height: 20px;
	top: 0;
	left: 45px;
	transform: translateX(-45%);
}
#globalNav li#gn_privacy{
	display: none;
}


/* header shrink
-------------------------------------------------------------*/
@media only screen and (min-width:970px){
	.setShrink#header,
	.setShrink#header>.contentsInner,	
	.setShrink #hdr-logo,
	.setShrink #globalNavSet,
	.setShrink #globalNav .drop,
	.setShrink #globalNav,
	.setShrink #subNav{transition:all 0.2s ease-out;}

/*.hdrShrink .setShrink#header{
	padding-top:5px;
}*/
	.hdrShrink .setShrink#header>.contentsInner {
		/*padding: 10px 20px;*/
		padding: 0 10px 0 20px;
	}
	.setShrink #hdr-logo{
		max-width:236px;
		width: 100%;
		transition-property:width;
		margin-right: 10px;
	}
	.hdrShrink .setShrink #hdr-logo{}
	.setShrink #hdr-logo img{}
	.hdrShrink .setShrink #globalNavSet{
		/*margin-left:60px;*/
	}
	.hdrShrink .setShrink #globalNav{
		margin-top:0;
	}
	.hdrShrink .setShrink #globalNav .drop{}


	.hdrShrink .setShrink#header>.contentsInner>nav{
		padding-top: 10px;
	}
	.hdrShrink .setShrink #globalNav>li>a{
		padding: 0 0 10px;
	}

}


/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:970px){

#header{
	height:66px;
	padding-top:0;
}
#header>.contentsInner h1 img{
	height: auto;
}
#header>.contentsInner{
	display:flex;
	align-items:center;
	height:100%;
	padding: 0 4%;
	margin: 0 10px;
}
/* hdr-logo
-------------------------------------------------------------*/
#hdr-logo{
	width:287px;
	position:static;
}
/* globalNavSet
-------------------------------------------------------------*/
#globalNavSet{position:static;}
#globalNavSet a{color:#000;}
#globalNavSet>dt{
	display:block;
	width:50px;
	height:64px;
	position:absolute;
	top:0;
	right:7px;
	cursor:pointer;
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	user-select:none;
}
#globalNavSet>dt::before,
#globalNavSet>dt::after{
	content:"";
	background-color:#000;
	display:block;
	width:30px;
	height:3px;
	position:absolute;
	top:31px;
	left:50%;
	margin-left:-20px;
	z-index:1;
}
#globalNavSet>dt>span::before{
	content:"";
	width:30px;
	height:16px;
	margin-left:-20px;
	border-top:3px solid #000;
	border-bottom:3px solid #000;
	top:21px;
	left:50%;
	position:absolute;
}
#globalNavSet>dt>span .open,
#globalNavSet.open>dt>span .close{display:none;}
#globalNavSet.open>dt>span .open{display:inherit;}
#globalNavSet>dt::before,
#globalNavSet>dt::after,
#globalNavSet>dt>span{
	transition:all 0.3s ease;
}
#globalNavSet.open>dt>span::before{border-color:rgba(255,255,255,0);}
#globalNavSet.open>dt::before{transform:rotate(45deg);}
#globalNavSet.open>dt::after{transform:rotate(-45deg);}
#globalNavSet>dt>span>span{display:none;}
#globalNavSet>dd{
	background:#fff;
	box-sizing:border-box;
	width: 96%;
	visibility:hidden;
	overflow:hidden;
	position:fixed;
	top:74px;
	/*bottom:100%;*/
	left: 2%;
	z-index:71;
	opacity:0;
	transition:all 0.3s ease;
	height:0;
	border: 1px solid #000;
	border-radius: 10px;
	padding: 20px;

}
#globalNavSet.open>dd{
	height:calc(100vh - 83px);
	/*height: 100%;*/
	visibility:visible;
	/*bottom:0;*/
	opacity:1;
	overflow: auto;
}
#globalNavSet>dd>div{display:block;}
#globalNavSet>dd>*{visibility:hidden;}
#globalNavSet.open>dd>*{visibility:inherit;}
html.gNavOpen,
html.gNavOpen body{
	height:100%;
	overflow:hidden;
}
html.gNavOpen #globalNavSet>dd>div{
	box-sizing:border-box;
	width:100%;
	height:100%;
	padding-top:20px;
	overflow:auto;
	position:relative;
	-webkit-overflow-scrolling:touch;
}
/* boxGNavBg */
html.gNavOpen .boxGNavBg{
	visibility:visible;
	opacity:1;
}
/* globalNav
-------------------------------------------------------------*/
#globalNav{
	flex-direction: column;
	margin-top: 20px;
	padding-bottom:80px; 
}
#globalNav>li{
	text-align:left;
	padding:0 !important;
	border-bottom:2px solid #eaedef;
}
#globalNav>li .nav-ttl{display: none;}
#globalNav>li:before,
#globalNav>li:last-child:after{display:none;}
#globalNav>li>a,
#globalNav>li>a+.toggle-btn,
#subNav>li>a{	
	box-sizing:border-box;
	display:block;
	padding: 10px calc(4% + 12px) 5px 4%;
	font-size: 16px;
}
#globalNav li:first-child{
	display: none;
}
#globalNav>li>a:hover,
#globalNav .setDrop a.act{background:none !important;}

#globalNav>li.current>a{
	border-bottom: none;
}
#globalNav>li>a>span {
	padding-top: 0;
}
#globalNav li a{
	position: relative;
	padding: 20px 0 0 110px;
	height: 71px;
	margin-top: 10px;
	vertical-align: middle;
}
#globalNav li a::before{
	box-sizing: border-box;
	position: absolute;
	content: '';
	width: 96px;
	height: 61px;
	top: 0px;
	left: 0;
}
#globalNav>li>a:hover{
	border-bottom: none;
}
#globalNav li#gn_ourbusiness a::before{
	background: url("../img/gn_img01_sp.jpg") no-repeat;
	background-size: 100% auto;
}
#globalNav li#gn_corporate a::before{
	background: url("../img/gn_img02_sp.jpg") no-repeat;
	background-size: 100% auto;
}
#globalNav li#gn_recruit a::before{
	background: url("../img/gn_img03_sp.jpg") no-repeat;
	background-size: 100% auto;
}
#globalNav li#gn_news a::before{
	background: url("../img/gn_img04_sp.jpg") no-repeat;
	background-size: 100% auto;
}



#globalNav li#gn_contact a {
    padding: 0;
}
#globalNav li#gn_contact a span{
	padding: 20px 20px 20px 45px;
}
#globalNav li#gn_contact a span:before{
	background-size: 24px auto;
	width: 24px;
	height: 20px;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
#globalNav li#gn_privacy{
	display: block;
}
#globalNav li#gn_privacy a{
	padding-left: 0px;
}





#globalNav li ul{
	padding:3px 0 0 10px;
}
#globalNav li li{
	margin-top:8px;
	margin: 0 -4% 0 calc(-4% - 12px);
	border-bottom: 1px solid #eaedef;
}
#globalNav li li:first-child{
	display: block;
}
#globalNav li li:last-child{border: none;}	
#globalNav li li a{
	box-sizing: border-box;
	display: block;
	padding: 20px calc(4% + 12px) 20px 30px;
	position: relative;
	height: auto;
	margin-top: 0;
	vertical-align: middle;
}
#globalNav li li a::before{
	background: none !important;
	box-sizing: border-box;
	width: 10px;
	height: 10px;
	border-right: 2px solid #0069d1;
	border-bottom: 2px solid #0069d1;
	top: 50%;
	left: 10px;
	transform: rotate(-45deg) translateY(-50%);

}




/* toggle-btn */
#globalNav .toggle-set{
	position:relative;
}
#globalNav .toggle-btn{
	text-indent: 1000px;
	width: 30px;
	height: 81px;
	overflow:hidden;
	position:absolute;
	top: 0px;
	right: 0;
}
#globalNav .toggle-btn::after,
#globalNav .toggle-btn::before{
	position:absolute;
	content:"";
	display:block;
	width: 14px;
	height: 14px;
	border-right: 2px solid #0069d1;
	border-bottom: 2px solid #0069d1;
	top: 1.9em;
	right: 10px;
	transform: rotate(45deg);
	transition:all 0.3s ease;
}
#globalNav .toggle-btn:after{
	
}
#globalNav .open>.toggle-btn:after{
	
}	
#globalNav ul .toggle-btn+ul{margin-top:8px;}
#globalNav ul .toggle-set>a{
	display:inline-block;
	padding-right:12px;
	pointer-events:none;
}
	
/* toggle-box */
#globalNav .toggle-box{background: #fff;}		
#globalNav .toggle-box a{color: #000;}	



	
/* hdr-gbDrop
-------------------------------------------------------------*/
.hdr-gbDrop{display:none !important;}


}
