@charset "utf-8";

/* PC ======================================================*/
.hamburger { 
  display: none;
}
.nav_wrap {
  position: relative;
  z-index: 100;
}
.gnav {
	width: 100%;
	background-image: linear-gradient(90deg, #001b34, #003556);
}
.gnav ul {
	max-width: 1000px;
	height: 64px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
}
.gnav ul li {
	width: calc(100% / 4);
}
.gnav ul li a {
	display: block;
	width: 100%;
	height: 100%;
	text-align: center;
	transition: all .2s ease;
	display: flex;
	align-items: center;
}
.gnav ul li a span {
	display: inline-block;
	width: 100%;
	border-right: 1px solid #00162A;
	padding: 4px 0;
	box-sizing: border-box;
	position: relative;
}
.gnav ul li a span::before {
	content: '';
	border-right: 1px solid #334D63;
	position: absolute;
	inset: 0; 
}
.gnav ul li:first-child a span {
	border-left: 1px solid #00162A;
}
.gnav ul li:first-child a span::before {
	border-left: 1px solid #334D63;
}
/* スマホ ======================================================*/
@media screen and (max-width: 1000px) {
	body.is-open{
		position: fixed;
		width: 100%;
		inline-size: 100%;
		block-size: 100%;
		overflow: hidden;
	}
	body.is-open .slick-prev,
	body.is-open .slick-next {
		opacity: 0;
		pointer-events: none;
	}
	/*ハンバーガー*/
	.hamburger {
		display : block;
		position: fixed;
		z-index : 10000;
		right : 14px;
		top   : 16px;
		width : 44px;
		height: 44px;
		cursor: pointer;
		text-align: center;
	}
	.hamburger span {
		display : block;
		position: absolute;
		width   : 30px;
		height  : 2px ;
		left    : 6px;
		background : #fff;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition   : 0.3s ease-in-out;
		transition        : 0.3s ease-in-out;
	}
	.hamburger span:nth-child(1) {top: 10px;}
	.hamburger span:nth-child(2) {top: 20px;}
	.hamburger span:nth-child(3) {top: 30px;}

	.hamburger.active span:nth-child(1) {
		top : 16px;
		left: 6px;
		background :#fff;
		-webkit-transform: rotate(-45deg);
		-moz-transform   : rotate(-45deg);
		transform        : rotate(-45deg);
	}
	.hamburger.active span:nth-child(2),
	.hamburger.active span:nth-child(3) {
		top: 16px;
		background :#fff;
		-webkit-transform: rotate(45deg);
		-moz-transform   : rotate(45deg);
		transform        : rotate(45deg);
	}
	/*ハンバーガー展開時*/
	.gnav {display: none;}
	.gnav.open {
		display: block;
		padding: 120px 0 0;
		position: fixed;
		left: 0;
		top: 0;
		background-image: linear-gradient(0deg, #001b34, #003556);
		width: 100%;
		height: 100%;
		overflow-x: hidden;
		overflow-y: auto;
		z-index: 9990;
		overscroll-behavior: contain; /* iOSでの引っ張りを抑制 */
	}
	.gnav ul {
		display: block;
		width: 100%;
		height: auto;
		font-size: 1.5rem;
	}
	.gnav ul li {
		width: 100%;
		height: 48px;
	}
	.gnav ul li a {
		display: block;
		width: 100%;
		height: 100%;
		font-size: 1.8rem;
	}
	.gnav ul li a span {
		display: inline-block;
		width: 100%;
		border-right: none;
		padding: 0;
		box-sizing: border-box;
		position: relative;
	}
	.gnav ul li a span::before {
		content: '';
		width: calc(100% + 2px);
		height: 100%;
		border-right: 1px solid #334D63;
		position: absolute;
		top: 0;
		left: 0;
	}
	.gnav ul li:first-child a span {
		border-left: 1px solid #00162A;
	}
	.gnav ul li:first-child a span::before {
		border-left: 1px solid #334D63;
	}
}
