#navbar {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	transition: transform 0.6s ease;
	z-index: 999;
}

/* ซ่อน navbar */
.nav-hide {transform: translateY(-100%);}

label .menu {
	position: relative;
	right: 0;
	top: 0;
	z-index: 100;
	height: 50px;
	transition: .5s ease-in-out;
	cursor: pointer;
}

label .hamburger {
	position: relative;
	width: 30px;
	height: 4px;
	top: 50%;
	background: #101010;
	border-radius: 1rem;
	display: block;
	transform-origin: center;
	transition: .5s ease-in-out;
}

label .hamburger:after,
label .hamburger:before {
	transition: .5s ease-in-out;
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	background: #101010;
	border-radius: 1rem;
}

label .hamburger:before {
	width: 40px;
	top: -10px;
	left: -5px;
}

label .hamburger:after {
	width: 20px;
	bottom: -10px;
	left: 5px;
}

label .menu:hover .hamburger::before {left: -5px;}

label .menu:hover .hamburger::after {left: 5px;}

label input {display: none;}

label input:checked+.menu {border-radius: 0;}

label input:checked+.menu .hamburger {transform: rotate(45deg);}

label input:checked+.menu .hamburger:after {
	transform: rotate(90deg);
	bottom: 0;
	left: 0;
	width: 30px;
}

label input:checked+.menu .hamburger:before {
	transform: rotate(90deg);
	top: 0;
	left: 0;
	width: 30px;
}

label input:checked+.menu+ul {
	opacity: 1 !important;
	right: 0 !important;
}

label input:checked+.menu+ul+.bg-blur {
	opacity: 1 !important;
	width: 100vw !important;
	border-radius: 0 !important;
}

label ul {
	opacity: 0;
	top: 0;
	right: -30vw;
	transition: .25s 0s ease-in-out;
}

label a {
	display: block;
	text-decoration: none;
}

label .bg-blur {
	opacity: 0;
	transition: .25s ease-in-out;
}

.logo-opa {
	background-image: url('../../image/LOGO-TW.png');
	background-position: center;
	background-size: 150%;
	background-repeat: no-repeat;
	position: absolute;
	width: 100%;
	height: 100%;
	right: 0;
	opacity: 0.1;
	z-index: -1;
}

nav .btn-menu .btn-custom:after {
	position: absolute;
	content: "";
	width: 0;
	height: 2px;
	bottom: 0;
	left: 0;
	z-index: -1;
	border-radius: 10rem;
	background-color: rgb(218 125 27);
	background-image: none;
	transition: all 0.5s ease;
}

nav .btn-menu .btn-custom:hover:after {
	right: 0;
	left: auto;
	width: 100%;
}

nav .btn-menu .btn-custom:active {
	right: 2px;
	left: auto;
}

@media screen and (min-width: 2560px) {
	nav ul p {font-size: 1.25vw;}
	nav ul .-line {
		width: 100%;
		margin: 0;
	}
	nav ul {
		font-size: 0.9vw;
		max-width: fit-content;
	}
	nav ul li {
		height: 150px;
		padding-inline: 2vw;
	}
	nav ul li small {font-size: 0.56vw;}
}

/* ver mobile */
@media screen and (max-width: 1024px) {
	label a {text-align: center !important;}
	label input:checked+.menu+ul {width: 100% !important;}
	label input:checked+.menu+ul+.bg-blur {display: none !important;}
}

@media screen and (max-width: 450px) {
	#navbar {display: none;}
	#navbar .mobile {display: block !important;}
}

@media screen and (min-width: 4000px) {
	#navbar .logo a img {
		width: 12rem !important; 
		height: auto;
	}

	label .menu {
		height: 12rem;
		overflow: unset;
	}

	label .hamburger {
		width: 8rem;
		height: 1rem;
		margin: 0 2rem !important;
	}

	label .hamburger:after, label .hamburger:before{
		width: 150%;
		top: -2rem;
		left: -2rem;
		height: 100%;
	}

	label .hamburger:after {
		bottom: -2rem;
		top: auto;
		left: 2rem;
		width: 50%;
	}

	label .menu:hover .hamburger::before {left: 0; width: 100%;}

	label .menu:hover .hamburger::after {left: 0; width: 100%;}
   
	label input:checked+.menu .hamburger:before,
	label input:checked+.menu .hamburger:after {
		width: 100%;
	}
}