/*
// ハンバーガーボタン
*/
.nav_btn {
	position: absolute;
	top: 0;
	right: 0;
	background-color: #1fb714;
	box-sizing: border-box;
	width: 60px;
	height: 60px;
	padding: 0;
	z-index: 9999;

	/* animation: navBtnAnime 1s ease 1.5s forwards;
	transform: translateX(70px); */
}
/* @keyframes navBtnAnime{
	0% {
		transform: translateX(70px);
	}
	100% {
		transform: translateX(0);
	}
} */
.nav_toggle {
	/* imputボタン */
	display: none;
}

/* ボタン */
.nav_btn_icon {
	display: block;
	position: absolute;
	top: 10px;
	left: 16px;
	height: 25px;
	cursor: pointer;
	transition: all 0.3s;
}
.nav_btn_icon span {
	display: block;
	width: 30px;
	height: 3px;
	background-color: #fff;
	border-radius: 2px;
	margin: 8px 0;
	transition: all 0.3s;
}
.nav_toggle + .nav_btn_icon span:nth-child(2) {
	/*2本線のときは非表示*/
	/* opacity: 0; */
}

/* ボタンオープン */
.nav_toggle:checked + .nav_btn_icon{
	top: 11px;
	left: 12px;
}
.nav_toggle:checked + .nav_btn_icon span{
	position: absolute;
	width: 36px;
}
.nav_toggle:checked + .nav_btn_icon span:nth-child(1) {
	top: 10px;
	transform: rotate(45deg);
}
.nav_toggle:checked + .nav_btn_icon span:nth-child(2) {
	top: 0;
	opacity: 0;
}
.nav_toggle:checked + .nav_btn_icon span:nth-child(3) {
	top: 10px;
	transform: rotate(-45deg);
}
@media screen and (min-width: 769px) { /* PC用 メディアクエリー */

}
@media screen and (min-width: 769px) and (max-width: 1180px) { /* Tablet用 メディアクエリー */ 

}


/*
// SP用グローバルナビゲーション
*/
.nav_menu {
	display: none;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	background-color: rgba(6,27,42,0.9);
	width: 100vw;
	height: 100dvh;
	z-index: 9998;
	opacity: 0;
}
.nav_menu.js-active {
	display: block;
	opacity: 1;
	animation: menuFadeIn 0.5s ease forwards;
}
@keyframes menuFadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
.nav_menu .outer{
	position: relative;
	height: calc(100dvh - 120px);
	margin: 80px auto 0;
	overflow-y: auto;
}
.nav_menu .inner{
	position: absolute;
	inset: 0;
	width: 82%;
	margin: 0 auto;
	padding: 0;
}
.nav_menu nav{
	width: 100%;
	margin: 0 auto;
}
.nav_menu nav ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.nav_menu nav li span{
	padding: 0 25px 12px;
	color: #fff;
}
.nav_menu nav li .child li{
}
.nav_menu nav li a{
	display: block;
	border-bottom: solid 1px #fff;
	padding: 0 25px 12px;
	margin-bottom: 12px;
	font-size: .9375rem;
	color: #fff;
}
/* .nav_menu nav li .child li:first-of-type a{
	border-top: solid 1px #fff;
	padding-top: 12px;
	margin-top: 12px;
} */
.nav_menu .ig_btn{
	display: block;
	text-align: center;
	margin: 30px auto 0;
}
@media screen and (min-width: 769px) { /* PC用 メディアクエリー */
	.pc_nav{
		align-items: center;
		justify-content: flex-end;
		gap: 0 1em;
		margin: 0;
	}
	.pc_nav ul{
		align-items: center;
		gap: 0 30px;
		width: max-content;
		margin: 0;
	}
	.pc_nav li{
		width: max-content;
		color: #fff;
		/* text-shadow: 0 0 8px rgba(0,0,0,0.8); */
	}
	.pc_nav li a:hover{
		border-bottom: solid 2px #fff;
		padding-bottom: 5px;
		text-decoration: none;
		/* color: rgb(var(--color_main)); */
	}

	.pc_nav .contact_btn{
		display: block;
		background-color: #1fb714;
		padding: 19px 10px;
		color: #fff;
	}
	.pc_nav .contact_btn:hover{
		display: block;
		background-color: rgb(var(--color_main));
	}
	.pc_nav .ig_btn{}
}
@media screen and (min-width: 520px) and (max-width: 959px) { /* Tablet用 メディアクエリー */
	/* メインビジュアル TAB */
	.pc_nav ul{
		gap: 0 10px;
	}
	.pc_nav li{
		font-size: .875rem;
	}
	.pc_nav .contact_btn{
		font-size: .875rem;
	}
}