@charset "UTF-8";

/*　ハンバーガーボタン　*/
.hamburger {
	display: block;
	position: fixed;
	z-index: 1001;
	right: 20px;
	top: 12px;
	width: 46px;
	height: 46px;
	cursor: pointer;
	text-align: center;
	background-color: var(--main-color);
	border-radius: 4px;
}

.hamburger span {
	display: block;
	position: absolute;
	width: 23px;
	height: 3px;
	left: 11px;
	border-radius: 100vmax;
	background: #fff;
	-webkit-transition: 0.5s ease-in-out;
	-moz-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
}

.hamburger span:nth-child(1) {
	top: 14px;
}

.hamburger span:nth-child(2) {
	top: 21.5px;
}

.hamburger span:nth-child(3) {
	bottom: 14px;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
	top: 22px;
	left: 11px;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
	top: 22px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
}

nav.globalMenuSp {
	position: fixed;
	z-index: 999;
	top: 0;
	right: 0;
	transform: translateX(100%);
	transition: all 0.6s;
	width: 75%;
	height: 100vh;
	background: var(--main-color);
	overflow-y: scroll;
	padding: 90px 20px 30px;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
	transform: translateX(0%);
}

nav.globalMenuSp .global-item ul {
	overflow-y: scroll;
	height: 100vw;
}

nav.globalMenuSp ul li {
	list-style-type: none;
	width: 100%;
}

nav.globalMenuSp ul li:last-child {
	padding-bottom: 0;
	border-bottom: none;
}

nav.globalMenuSp ul li a {
	display: block;
	color: #fff;
	padding-block: 1.5em .5em;
	text-decoration: none;
	border-bottom: 1px solid #fff;
	font-size: 4vw;
	line-height: 1.7;
	letter-spacing: .05em;
	position: relative;
}

nav.globalMenuSp ul li a::before {
	content: '';
	position: absolute;
	bottom: 4vw;
	right: 4vw;
	width: 3vw;
	aspect-ratio: 1;
	min-width: 0;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	rotate: -45deg;
}

nav.globalMenuSp .global-button {
	margin-top: 3vw;
	background-color: #fff;
	padding: 3vw;
	border-radius: 8px;
}

nav.globalMenuSp .global-button .btn {
	border-radius: 6px;
	display: grid;
	place-content: center;
	background-color: #FFB100;
	color: #fff;
	font-size: 3.8vw;
	letter-spacing: .01em;
	min-block-size: 12vw;
}

nav.globalMenuSp .global-button .btn.line {
	background-color: var(--line-color);
	margin-top: 2vw;
}

nav.globalMenuSp .global-info {
	margin-top: 10vw;
}

nav.globalMenuSp .global-info .address {
	text-align: center;
	font-size: 3.6vw;
	line-height: 1.5;
	letter-spacing: .07em;
	color: #fff;
}

nav.globalMenuSp .global-info .tel_box {
	margin-top: 5vw;
}

nav.globalMenuSp .global-info .tel_box .tel {
	font-size: 4.2vw;
	line-height: 1;
	letter-spacing: 0em;
	color: #fff;
	font-weight: 500;
	display: block;
	width: fit-content;
	margin-inline: auto;
}

nav.globalMenuSp .global-info .tel_box .time {
	color: #fff;
	font-size: 3.2vw;
	letter-spacing: 0em;
	text-align: center;
}

nav.globalMenuSp .global-info .copyright {
	font-size: 2.8vw;
	letter-spacing: 0em;
	font-weight: 500;
	text-align: center;
	color: #fff;
	margin-top: 6vw;
	display: block;
}


