
/*----------------------------------------------------------------------> ▼ .smart_menu_button <--*/

.smart_menu_button {
	position: fixed;
	top: 0;
	right: 40px;
	width: 50px;
	height: 100px;
	margin: ;
	cursor: pointer;
	z-index: 10000;
	border: 0px solid #f00;
}

.smart_menu_button div,
.smart_menu_button div::before,
.smart_menu_button div::after {
	position: absolute;
	width: 100%;
	height: 3px;
	left: 0px;
	border-radius: 50px;
	background: #777;
	transition: var(--transition);
}

.smart_menu_button div::before,
.smart_menu_button div::after {
	content: '';
}
	
.smart_menu_button div::before {
	top: -10px;
}

.smart_menu_button div {
	top: calc(50% - 3px / 2);
}

.smart_menu_button div::after {
	top: 10px;
}

.smart_menu_button_active div::before,
.smart_menu_button_active div::after {
	top: -1px;
	height: 3px;
	background: ;
}

.smart_menu_button_active div::before {
	transform: rotate(45deg);
}

.smart_menu_button_active div {
	background: transparent;
}

.smart_menu_button_active div::after {
	transform: rotate(-45deg);
}

@media (width <= 1366px) {
	.smart_menu_button {
		right: 30px;
		width: 40px;
	}
}

@media (width <= 1023px) {
	.smart_menu_button {
		display: flex;
	}
}

@media (width <= 500px) {
	.smart_menu_button {
		width: 40px;
	}
}

@media (hover: hover) and (pointer: fine) {
	/*
	.smart_menu_button:hover div,
	.smart_menu_button:hover div::before,
	.smart_menu_button:hover div::after {
		background: var(--hover);
	}
	*/
}

/*----------------------------------------------------------------------> ▼ .wrap_smart_menu <--*/

.wrap_smart_menu {
	position: fixed;
	width: 100%;
	height: 100vh;
	padding-top: 100px;
	background: rgba(255, 255, 255, 1);
	transition: var(--transition);
	z-index: 1000;
	
	-ms-overflow-style: none;
	scrollbar-width: none;
	visibility: hidden;
	opacity: 0;
}

.wrap_smart_menu::scrollbar {
	display: none;
}

.wrap_smart_menu.open {
	visibility: visible;
	opacity: 1;
}

.wrap_smart_menu .header_logo {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1100;
}

/*----------------------------------------------------------------------> ▼ .smart_menu <--*/

.smart_menu {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin-top: 100px;
}

.smart_menu a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 430px;
	max-width: 100%;
	margin: 0 calc((100% - 430px) / 2);
	padding: 15px;
	font-family: YuGo-B;
}

.smart_menu a:not(.tel) i::before {
	content: '\f105';
	color: var(--theme);
}

.smart_menu a.tel {
	justify-content: center;
	color: var(--theme);
	font-size: 20px;
	font-family: Helvetica-B;
	letter-spacing: 1px;
}

.smart_menu a.tel i::before {
	content: '\f2a0';
	margin-right: 10px;
	transform: rotate(-45deg);
}

@media (1024px <= width) {
	.smart_menu a.tel {
		display: none;
	}
}
	
@media (width <= 1023px) {
	.smart_menu {
		height: calc(100% - 100px);
		margin-top: 0px;
	}
	
	.smart_menu a {
		width: 100%;
		height: calc(100% / 12);
		margin: 0;
		padding: 0 30px;
		background: linear-gradient(#fff, #f6f6f6);
	}
}

@media (height <= 768px) {
	.smart_menu {
		height: calc(100% - 0px);
		margin-top: 0px;
	}
}

@media (hover: hover) and (pointer: fine) {
}
