@charset "utf-8";

/* --------- hamburger ---------- */

.hamburger_bg {
	position: fixed;
	top: 15px;
	right: 10px;
	padding: 4%;
	background-color: #000;
}

.hamburger {
	position: fixed;
	top: 15px;
	right: 15px;
	z-index: 150;
	width: 30px;
	height: 30px;
	cursor: pointer;
	color: #fff;
	background-color: #1E354A;
	border-radius: 100%;
}

/* .hamburger p {
	position: absolute;
	left: 30%;
	top: 135%;
	transform: translate(-50%, -50%);
	width: 100%;
	font-size: 0.5rem;
} */

.hamburger span {
	position: absolute;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 50%;
	height: 1px;
	background-color: #fff;
	transition: transform 0.3s;
}

.hamburger.is-active {
	background-color: transparent;
}

.hamburger.is-active span {
	background-color: #1E354A;
}

.hamburger span:nth-child(1) {
	top: 40%;
}

.hamburger span:nth-child(2) {
	top: 60%;
}

.hamburger span:nth-child(3) {
	top: 90%;
}

.hamburger.is-active span:nth-child(1) {
	top: 50%;
	transform: translate(-50%, -50%) rotate(135deg);
	opacity: 1;
}

.hamburger.is-active span:nth-child(2) {
	top: 50%;
	transform: translate(-50%, -50%) rotate(-135deg);
	opacity: 1;
}

.hamburger.is-active span:nth-child(3) {
	opacity: 0;
}

/* ---------- drawer ---------- */

.drawer {
	visibility: hidden;
	opacity: 0;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 130;
	width: 100%;
	height: 100vh;
	/* background-color: #000; */
	background-image: url(../img/top/bg_shop_info_sp.png);
	background-size: contain;
	transition: opacity .3s, visibility .3s;
	font-family: "Noto Sans JP", sans-serif;
}

.drawer.is-active {
	visibility: visible;
	opacity: 1;
}

.drawer-inner {
	position: relative;
	/* display: flex;
	justify-content: center;
	align-items: center; */
	width: 100%;
	height: 100%;
	padding: 0 20px;
}

.drawer__nav {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 50%;
}

.drawer__list {
	display: flex;
	flex-direction: column;
	gap: 35px;
	margin: 30% 0 0 0;
}

.drawer__item {
	width: 100%;
}

.drawer__link {
	color: #fff;
	/* display: flex; */
}

.drawer__link p {
	/* width: 50%; */
	text-align: center;
}

.drawer__link p {
	margin: 0;
	font-size: 1rem;
	color: #1E354A;
}

.drawer__link p:nth-of-type(2) {
	margin: 5% 0 0 0;
}

/* ---------- contact ---------- */

.contact {
	display: flex;
	flex-direction: column;
	justify-content: center;
	/* width: 80%; */
	margin: 30% 0 0 0;
	font-size: 1rem;
	gap: 10px;
}

.contact span {
	display: block;
	text-align: center;
}

.contact .text {
	font-family: "Noto Serif JP", serif;
	font-size: 0.8rem;
}

.contact .tel {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
}

.contact .tel .tel_child_1 {
	width: auto;
	height: 1.4rem;
}

.contact .tel .tel_child_2 {
	width: auto;
	font-size: 1.4rem;
	color: #1E354A;
}

.contact .booking {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 5%;
	background-color: #1E354A;
}

.contact .booking .booking_child_1 {
	width: auto;
	height: 1.4rem;
}

.contact .booking .booking_child_2 {
	width: auto;
	font-family: "Noto Serif JP", serif;
	color: #fff;
}
