@charset "UTF-8";

/* グローバルナビ
-------------------------------------------------------------------------*/
.gnav {
	width: 100%;
	display: flex;
	justify-content: flex-end;
}

.gnavList {
	width: 100%;
	max-width: 1050px;
	display: flex;
	align-items: center;
}

.gnavList_item {
	width: calc(100%/6);
	text-align: center;
}

.gnavList_item-btn {
	display: block;
	font-size: 1.8rem;
	color: var(--white);
}

.gnavList_item.contact {
	width: 250px;
}

.gnavList_item.contact .gnavList_item-btn {
	display: block;
	text-align: center;
	color: rgb(155, 124, 82);
	background-color: var(--green);
	font-size: 2rem;
	border-width: 2px;
	border-style: solid;
	border-color: rgb(255, 255, 255);
	border-image: initial;
	border-radius: 20px;
	padding: 10px 0px;
}

.gnavList_item.contact .gnavList_item-btn::before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 15px;
	background-image: url(../img/contact-icon.png);
	background-repeat: no-repeat;
	background-size: contain;
	margin-right: 10px;
}

/*ハンバーガーメニューアイコン
-------------------------------------------------------------------------*/
.nav_btn {
	display: none;
}



/*スマホ表示用
-------------------------------------------------------------------------*/
@media (max-width: 960px) {

	.gnav {
		transition: all .4s;
		overflow-y: auto;
		padding: 10px;
		padding-top: 60px;
		width: 70vw;
		height: 100vh;
		z-index: 200;
		top: 0px;
		right: -800px;
		background-color: #f9fffc;
		position: fixed;
		margin: 0 auto;
		flex-wrap: wrap;
		justify-content: flex-start;
	}

	.gnavList {
		width: 100%;
		flex-wrap: wrap;
		align-content: flex-start;
	}

	.gnavList_item {
		width: 100%;
		border-bottom: 1px solid var(--black);
	}

	.gnavList_item-btn{
		color: var(--black);
		padding: 10px;
	}

	.gnavList_item.contact{
		width: 100%;
		margin-top: 20px;
		border-bottom: none;
	}

	.nav_btn {
		display: block;
		width: 44px;
		height: 44px;
		z-index: 300;
		top: 10px;
		right: 10px;
		cursor: pointer;
		position: fixed;
	}

	/* .nav_btn::after {
		content: "menu";
		display: block;
		position: absolute;
		bottom: -15px;
		text-align: center;
		font-weight: bold;
		color: var(--white);
		width: 100%;
	} */

	.hamburger_line {
		transition: all .6s;
		width: 34px;
		height: 2px;
		left: 5px;
		background-color: var(--white);
		position: absolute;
	}
	
	#header_under .hamburger_line {
		background: var(--black);
	}	

	.hamburger_line1 {
		top: 10px;
	}

	.hamburger_line2 {
		top: 21px;
	}

	.hamburger_line3 {
		top: 32px;
	}

	.nav_bg {
		opacity: 0;
		transition: all .6s;
		width: 100vw;
		height: 100vh;
		z-index: 100;
		top: 0;
		left: 0;
		visibility: hidden;
		cursor: pointer;
		position: fixed;
	}

	/* 表示された時用のCSS */
	.nav_open nav {
		right: 0;
		overflow-x: hidden;
		overflow-y: scroll;
		place-content: flex-start;
	}

	.nav_open .nav_bg {
		display: none;
		opacity: .8;
		visibility: visible;
		background: #ccc;
	}

	.nav_open .hamburger_line1 {
		transform: rotate(45deg);
		top: 20px;
		background-color: var(--black);
	}

	.nav_open .hamburger_line2 {
		width: 0;
		left: 50%;
		background-color: var(--black);
	}

	.nav_open .hamburger_line3 {
		transform: rotate(-45deg);
		top: 20px;
		background-color: var(--black);
	}

	/* .nav_open .nav_btn::after {
		content: "close";
	} */

}