@charset "utf-8";
/* CSS Document */
*, *::before{
	box-sizing:border-box;
}
body{
	font-size: 16px;
	font-style: normal;
	color:#fff;
	font-family: "Noto Sans JP",Arial,Roboto,"Droid Sans","游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
}
a{
	color: #fff;
	text-decoration: none;
}
/*== header ==*/
header{
	position: fixed;
	top:0;
	left:0;
	right:0;
	height: var(--header-height);
	z-index: 10;
	margin: auto;
	background: rgba(27, 29, 39, 0.5);
}
.header_inner{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 auto;
	padding: 15px 35px;
}
header .logo{
	width: 100px;
}
header nav ul{
	display: flex;
	align-items: center;
	gap: 1.5em;
	white-space: nowrap;
}
header nav ul li{
	padding: 2px 0;
}
header nav ul li a{
	display: inline-block;
	line-height: 1.2;
	text-decoration: none;
}
.menuBtn{
	display: none;
}
/*== footer ==*/
footer{
	padding: 5% 0 2%;
	background: #1b1d22;
	text-align: center;
	color: #fff;
}
/*== tablet ==*/
@media (max-width:1024px){
	:root{
		--header-height: 100px;
	}
	.header_inner{
		padding: 12px 10px;
	}
	header .logo{
		width: 90px;
	}
}
@media (max-width:768px){
	:root{
		--header-height: 70px;
	}
	.header_inner{
		padding:5px 10px;
	}
	header .logo{
		width: 70px;
		padding-top: 5px;
	}
	.menuBtn{
		position: relative;
		z-index: 13;
		display: block;
		width: 48px;
		height: 48px;
		margin-left: auto;
		padding: 0;
		border: none;
		background: transparent;
		cursor: pointer;
	}
	.menuBtn span{
		position: absolute;
		left: 12px;
		width: 30px;
		height: 2px;
		line-height: 2px;
		background: #fff;
		transition: transform .3s ease, opacity .3s ease;
	}
	.menuBtn span:nth-child(1){
		top: 15px;
	}
	.menuBtn span:nth-child(2){
		top: 23px;
	}
	.menuBtn span:nth-child(3){
		top: 31px;
	}
	.menuBtn.is-open span:nth-child(1){
		transform: translateY(8px) rotate(45deg);
	}
	.menuBtn.is-open span:nth-child(2){
		opacity: 0;
	}
	.menuBtn.is-open span:nth-child(3){
		transform: translateY(-8px) rotate(-45deg);
	}
	.globalNav{
		position: fixed;
		top: 0;
		bottom: 0;
		right: 0;
		width: 100%;
		padding: 5% 8%;
		background: #1b1d22;
		transform: translateX(100%);
		transition: transform .3s ease;
		z-index: 10;
	}
	.globalNav.is-open{
		transform: translateX(0);
	}
	.globalNav ul{
		display: block;
		padding-top: 15%;
	}
	.globalNav li{
		border-top: 1px solid #4a505f;
		padding: 20px 0 20px 15px;
	}
	.globalNav li:last-child {
    border-bottom: 1px solid #4a505f;
}
	body.no-scroll{
		overflow: hidden;
	}
}