@charset "UTF-8";


/*（基本設定）*/
#nav-wrap {
	position: relative;
	height: 72px;
}
#nav-box {
	position: absolute;
	right: 0;
	width: auto;
	height: 72px;
}
/*（メインメニュー）*/
#global-nav ul {
	list-style: none;
	font-weight: bold;	        
	font-size: 0; /* li間の隙間を埋める */
}
#global-nav > ul > li {
	float: left;
	margin: 15px 0;
	line-height: 42px;
	font-size: 14px; /* 文字サイズを再指定 */
    text-align: center;
}
#global-nav a {
    padding: 0 0.5rem;
    margin-left: 1rem;
	color: #000;
	text-decoration: none;
	display: block;
}
#global-nav a:hover {
	color: #004bc8;
    border-bottom: 2px solid #004bc8;
}
.select {
    border-bottom: 2px solid #004bc8;
}


/* #################### レスポンシブデザイン設定 #################### */

/* <<<<<<<<<<<<<<<<<<<< 960px未満 >>>>>>>>>>>>>>>>>>>> */

@media screen and (max-width: 959px) {
/*（デスクトップパソコン用メニューの高さをなくす）*/	
#nav-wrap {
	height: 0;
}
/*（モバイル用にメニューのデザインを再設定）*/	
#nav-box {
	position: fixed;
	overflow-y: scroll;  /* スクロール可能にする */
	right: -300px;
	top: 0;
	height: 100%;
	width: 300px;
	color: #333;
    background: #1e1e1e;
	transition: .35s ease-in-out;
	-webkit-overflow-scrolling: touch; /* 慣性スクロール */
}
#global-nav {
	padding-top: 64px;
}
#global-nav a{
	padding: 1rem 0;
    margin-left: 0;
    border-top: 1px solid #1e1e1e;
	border-bottom: none;
    color: #FFF;
}
#global-nav > ul > li {
	float: none;
	margin: 0;
	line-height: normal;
/*	border-left: none;*/
    background-color: #3c3c3c;
}	
#global-nav > ul > li:last-child {
	margin-bottom: 100px; /* ブラウザの表示項目で隠れないよう下に余白をもたせる */
	border-right: none;
    border-bottom: 1px solid #1e1e1e;
}	
#global-nav a:hover {
    color: #FFF;
    background: #464646;
    border-bottom: none;
}
/*（ハンバーガーメニュー）*/
#toggle-box {
	position: fixed;
	top: 8px;
	right: 0px;
	width: 60px;
	height: 48px;
    border-top: 1px solid #e3e3e3;
    border-bottom: 1px solid #e3e3e3;
    border-left: 1px solid #e3e3e3;
    border-radius: 4px 0px 0px 4px;
    box-sizing: border-box;
	background-color: #FFF;   
}	
#nav-toggle {
	display: block;
	position: fixed;
	top: 20px;
	right: 16px;
	height: 32px;   
    cursor: pointer;
}
#nav-toggle > div {
	position: relative;
	width: 32px;
}
#nav-toggle span {
	position: absolute;    
	width: 100%;
	height: 2px;
	left: 0;
	display: block;
	background: #1e1e1e;
	transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
	top: 0;
}
#nav-toggle span:nth-child(2) {
	top: 11px;
}
#nav-toggle span:nth-child(3) {
	top: 22px;
}	
/*（ハンバーガーメニューを開く前の事前設定）*/
#overlay {
	display: none;
	position: fixed;
	background: rgba(0,0,0,.3);
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
/*（ハンバーガーメニューを開いたときの設定）*/	
.open {
	overflow: hidden;
}	
.open #overlay {
	display: block;
}
.open #nav-box  {
	transform: translate3d(-300px,0,0);
	-webkit-transform: translate3d(-300px,0,0);	
}
.open #nav-toggle span:nth-child(1) {
	top: 11px;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);	
}
.open #nav-toggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open #nav-toggle span:nth-child(3) {
	top: 11px;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);	
}
/*（ハンバーガーメニューを構成するパーツの重なりの調整）*/	
#overlay {
	z-index: 200;
}
#nav-box {
	z-index: 300;
}
#nav-toggle,
#toggle-box {
	z-index: 400;
}
	
}