@charset "utf-8";

/*---------------------------------------------------------------------- .smart_menu_button --*/

.smart_menu_button {
	display: none;
	position: relative;
	width: 50px;
	height: 50px;
	cursor: pointer;
	z-index: 1000;
}

.smart_menu_button div,
.smart_menu_button div::before,
.smart_menu_button div::after {
	position: absolute;
	width: 100%;
	height: 3px;
	border-radius: 50px;
	background: #aaa;
	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: 5px;
	border-radius: 0;
	background: #15b2d1;
}

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

.smart_menu_button_active div {
	background: #fff;
}

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

@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);
	}
	*/
}

/*---------------------------------------------------------------------- smart_menu --*/

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

.wrap_smart_menu::-webkit-scrollbar {
	display: none;
}

.wrap_smart_menu.open {
	visibility: visible;
}

.smart_menu {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	height: 75%;
	border-top: 1px solid #f0f0f0;
}

.smart_menu a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: calc(100% / 11);
	padding: 0 15px;
	border-bottom: 1px solid #f0f0f0;
	background: #15b2d1;
	color: #fff;
	font-family: YuGo-B;
}

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

.smart_menu a.tel {
	justify-content: center;
	background: #fff;
	color: #15b2d1;
	border-color: #15b2d1;
	font-size: 1.25rem;
}

.smart_menu a.tel i::before {
	content: '\f095';
	display: inline-block;
	margin-right: 10px;
	transform: rotate(100deg);
}
	
@media (min-width: 1025px) {	
}

@media (width <= 768px) {
}

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

/*---------------------------------------------------------------------- category_menu --*/

.category_menu {
	display: flex;
	display: ;
	justify-content: center;
	border-bottom: 1px solid #eee;
}

.category_menu a {
	text-align: center;
	font-family: Yugo-B;
	color: #777;
}

.category_menu i {
	text-align: center;
	font-family: RobotoCond-R;
	color: #aaa;
}

@media (1281px <= width) {
	body {
		--category_menu_height: 146px;
	}
	
	.category_menu a {
		font-size: 20px;
		padding: 50px 40px;
		transition: 0.2s;
	}

	.category_menu i {
		display: block;
		font-size: 11px;
		letter-spacing: 2px;
	}

	.category_menu a:nth-child(n+2) {
		margin-left: 75px;
	}

	.category_menu a:hover {
		background: #226;
	}

	.category_menu a:hover, .category_menu a:hover i {
		color: #fff;
	}
}

@media (1025px <= width <= 1280px) {
	body {
		--category_menu_height: 146px;
	}
	
	.category_menu a {
		font-size: 19px;
		padding: 50px 40px;
		transition: 0.2s;
	}

	.category_menu i {
		display: block;
		font-size: 11px;
		letter-spacing: 2px;
	}

	.category_menu a:hover {
		background: #226;
	}

	.category_menu a:hover, .category_menu a:hover i {
		color: #fff;
	}
}

@media (width <= 1024px) {
	body {
		--category_menu_height: 126px;
	}
	
	.category_menu a {
		font-size: 20px;
		padding: 40px;
		transition: 0.2s;
	}

	.category_menu i {
		display: block;
		font-size: 10px;
		letter-spacing: 2px;
	}

	.category_menu a:nth-child(n+2) {
		margin-left: 0;
	}
}

@media (width <= 768px) {
	.category_menu {
		flex-wrap: wrap;
		border: none;
	}

	.category_menu a {
		width: 100%;
		font-size: 16px;
		padding: 16px 0 10px;
		border-bottom: 1px solid #eee;
	}

	.category_menu i {
		display: block;
		font-size: 10px;
		letter-spacing: 2px;
	}
}