@charset "utf-8";

:root {
	--black: #333333;
	--mainColor: #FAD5E5;
	--mainColor2: #FF7B7B;
	--mainColor3: #FCA5A8;
	--box-shadow: 1px 1px 10px #00000020;
}

html {scroll-behavior: smooth; font-size: 18px;}
#wrap {width: 100%; min-width: 320px; letter-spacing: -.05em; overflow-x: hidden;} a {color: var(--black);}
body, select, input,textarea, button {color: var(--black); font-family:'pretendard', sans-serif; letter-spacing: -.3px; font-size: 1rem;}
input {font-size: .9rem;}
.gray {color: #999999;}
.pink {color: var(--mainColor);}
.red {color: #FE5C4D;}
.inter {font-family: "Inter", sans-serif;}
.gmarket {font-family: 'GmarketSans'; margin-bottom: -.2em;}

.inner {max-width: 1380px; padding: 0 30px; margin: 0 auto; box-sizing: border-box;}


@keyframes opacityMove {0% {opacity: 0;} 100% {opacity: 1;}}
@keyframes upMove {0% {transform: translateY(20px); opacity: 0;} 100% {transform: none; opacity: 1;}}
@keyframes downMove {0% {transform: translateY(-20px); opacity: 0;} 100% {transform: none; opacity: 1;}}
@keyframes downMove2 {0% {transform: translateY(-10px); opacity: 0;} 100% {transform: none; opacity: 1;}}
@keyframes upMove22 {0% {transform: translateY(10px); opacity: 0;} 100% {transform: none; opacity: 1;}}
@keyframes leftMove {0% {transform: translateX(20px); opacity: 0;} 100% {transform: none; opacity: 1;}}
@keyframes leftMove100 {0% {transform: translateX(100%); opacity: 0;} 100% {transform: none; opacity: 1;}}
@keyframes rightMove {0% {transform: translateX(-20px); opacity: 0;} 100% {transform: none; opacity: 1;}}
@keyframes scalremove {0% {transform: scale(.8); opacity: 0;} 100% {transform: none; opacity: 1;}}
@keyframes textLetterUp {15% {transform: translateY(-5px);} 30%, 100% {transform: none}}
@keyframes textLetterPointUp {15% {transform: translateY(-5px); color: var(--mainColor);} 30%, 100% {transform: none;}}
@keyframes scaleMove {0% {transform: scale(.8); opacity: 0;}}
@keyframes scaleZoomMove {0% {transform: scale(1.1);}}

.admin_login {position: fixed; top: 0; left: 0; width: 100%; background: #666; z-index: 91;}
.admin_login .inner {display: flex; align-items: center; justify-content: space-between; height: 2.8rem; color: #fff; font-size: .9rem;}
.admin_login .logout {height: 100%; padding: 0 1rem; background: #333; display: flex; align-items: center; justify-content: center; color: #fff;}

.admin_login + header {top: 2.8rem;}

.admin_login + header + .sub .subTop .textBox {padding-top: 9.6rem;}

header {position: fixed; top: 0; left: 0; width: 100%; z-index: 90; box-sizing: border-box;}
header:after {content: ""; position: absolute; top: -100%; left: 0; width: 100%; height: 100%; background:rgba(17, 17, 17, 0.3); backdrop-filter: blur(50px); z-index: -1; transition: .5s ease;}
header.scroll:after {top: 0;}
header .inner {display: flex; justify-content: space-between; align-items: center; height: 6.4rem;}
header .inner h1 {max-width: 337px; width: 25%; position: relative; z-index: 100;}
header .navBox {position: relative; max-width: 590px; width: 80%;}
header .navBox .dep {display: flex; justify-content: space-between;}
header .navBox .dep a {text-align: center; width: 100%;}
header .navBox .dep > li {position: relative;}
header .navBox .dep > li > a {color: #fff; padding: 1rem; margin: -1rem; position: relative; z-index: 1;}
header .navBox .dep > li > a:after {content: ""; position: absolute; width: 1.8rem; height: 1.8rem; top: 50%; left: 50%; transform: translate(-50%, -50%) scale(.5); background: url(../../images/logo_icon_white.svg) no-repeat center / contain; z-index: -1; opacity: 0; transition: .5s ease;}
header .navBox .dep > li .plusBtn {display: none;}
header .navBox .dep2 {position: absolute; left: 50%; top: 2rem; transform: translateX(-50%); width: calc(100% + 5rem); background: #fff; box-shadow: 1px 1px 10px #00000020; border-radius: 1rem; display: none;}
header .navBox .dep2 ul {padding: 1rem .5rem; box-sizing: border-box; line-height: 1.5;}
header .navBox .dep > li.open {z-index: 10;}
/*header .navBox .dep > li.open .dep2 {display: block;}*/
header .navBox .dep2 li:not(:last-child) {margin-bottom: 4px;}
header .navBox .dep2 a {font-size: .8rem; padding: .2rem; margin: -.2rem; word-break: keep-all;}
header .navBox .dep2 a span {position: relative;}
header .navBox .dep2 a span:after {content: ""; position: absolute; left: 0; bottom: -3px; width: 100%; height: 5px; background: url(../../images/nav_line.svg) repeat-x center bottom / contain; opacity: 0; transition: .5s ease;}
header .sitemapBtn {display: none;}

.quickMenu {position: fixed; z-index: 90; bottom: clamp(1rem, 3.5vw, 2.2rem); right: clamp(1rem, 3.5vw, 2.2rem); animation: opacityMove 1s ease both;}
.quickMenu .list {display: flex; flex-direction: column; gap: clamp(.5rem, 2vw, 1.35rem);}
.quickMenu .list .icon {width: clamp(2.5rem, 4.5vw, 3.3rem); height: clamp(2.5rem, 4.5vw, 3.3rem); border-radius: 50%; box-shadow: 0 2px 8px #00000016;}
.quickMenu .list .insta .icon {background: url(../../images/quick_menu_instagram.svg) no-repeat center / contain;}
.quickMenu .list .youtube .icon {background: url(../../images/quick_menu_youtube.svg) no-repeat center / contain;}
.quickMenu .list .buyeo .icon {background: url(../../images/quick_menu_buyeo.svg) no-repeat center / contain;}
.quickMenu .list .blog .icon {background: url(../../images/quick_menu_blog.svg) no-repeat center / contain;}
footer {background: #333333; position: relative; color: #fff;}
footer .inner {display: flex; flex-wrap: wrap; font-size: .9rem; gap: 3.3rem 0; padding-top: 3.3rem; padding-bottom: 3.3rem;}
footer .inner a {color: #fff;}
footer .inner .left {max-width: 485px; width: 40%; display: flex; flex-direction: column; gap: 1.35rem;}
footer .inner .left .logo {max-width: 269px; width: 65%;}
footer .inner .left address ul {display: flex; flex-direction: column; gap: 3px;}
footer .inner .left address li {display: flex; align-items: center; gap: 5px;}
footer .inner .left address .title {font-weight: 500;}
footer .inner .left address .text {font-weight: 300;}
footer .inner .right {max-width: 835px; width: 60%;}
footer .inner .right .logoList {display: flex; gap: 2.2rem;}
footer .inner .right .logoList > li {display: flex; align-items: center; gap: .9rem;}
footer .inner .right .logoList .title {font-weight: 500; flex: none;}
footer .inner .right .logoList .logo {display: flex; gap: .9rem;}
footer .inner .right .logoList .logo img {transition: .3s ease;}
footer .inner .bottom {width: 100%;}
footer .inner .bottom .copy {font-weight: 500;}


@media screen and (min-width: 1025px) {
	header .navBox .dep > li:hover > a:after {opacity: .3; transform: translate(-50%, -50%);}
	header .navBox .dep > li:hover > a span {animation: textLetterUp 4s ease infinite;}
	header .navBox .dep2 a:hover span:after {opacity: 1;}
	footer .inner .left address a.text:hover {color: var(--mainColor);}
	footer .inner .right .logoList .logo img:hover {filter: drop-shadow(3px 3px #ffffff20);}
	.admin_login .logout:hover {background: var(--mainColor3);}
}

@media screen and (max-width: 1200px) {
	html {font-size: 17px;} 
}
@media screen and (max-width: 1024px) {
	header .inner {height: 5.2rem;}
	header .inner h1 {max-width: 230px; width: 50%;}
	header .navBox {display: none;}
	header .sitemapBtn {display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 5px; width: 36px; height: 36px; position: relative; border-radius: 5px; border: 1px solid #ffffff80;}
	header .sitemapBtn span {position: absolute; left: 50%; transform: translateX(-50%); width: 20px; height: 2px; border-radius: 5px; background: #fff; transition: .5s ease;}
	header .sitemapBtn span:first-child {top: 9px;}
	header .sitemapBtn span:nth-child(2) {top: 50%; transform: translate(-50%, -50%);}
	header .sitemapBtn span:last-child {top: 23px;}
	header .navBox {display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(164deg, #31a2da, rgba(224, 224, 224)); max-width: none; width: 100%; padding-top: 5.2rem;}
	.admin_login + header .navBox {padding-top: 8rem;}
	header .navBox .dep {flex-direction: column; gap: 0; align-items: flex-start; justify-content: flex-start; border-top: 1px solid #ffffff30; padding: 1rem 0; height: 100%; overflow-y: auto; box-sizing: border-box;}
	header .navBox .dep > li {padding: 1.5rem 30px; width: 100%; box-sizing: border-box;}
	header .navBox .dep > li > a {font-size: 1.3rem; width: 100%; text-align: left; display: flex; justify-content: space-between; align-items: center;}
	header .navBox .dep > li .plusBtn {display: block; position: relative; width: 1rem; height: 1rem;}
	header .navBox .dep > li .plusBtn:before, header .navBox .dep > li .plusBtn:after {content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); border-radius: 5px; background: #fff;}
	header .navBox .dep > li .plusBtn:before {width: 2px; height: 100%;}
	header .navBox .dep > li .plusBtn:after {width: 100%; height: 2px;}
	header .navBox .dep2 {position: static; width: 100%; transform: none; margin-top: 1rem;}
	header .navBox .dep2 li:not(:last-child) {margin-bottom: 0;}
	header .navBox .dep2 a {text-align: left; font-size: 1.1rem; padding: .4rem 1rem; margin: 0; box-sizing: border-box; width: 100%;}
	header.open .navBox {display: block; animation: leftMove100 1s ease both;}
	header.open .sitemapBtn span {position: absolute; top: 50%; left: 50%; transform-origin: center;}
	header.open .sitemapBtn span:first-child {transform: translate(-50%, -50%) rotate(45deg);}
	header.open .sitemapBtn span:nth-child(2) {opacity: 0;}
	header.open .sitemapBtn span:last-child {transform: translate(-50%, -50%) rotate(-45deg);}
}
@media screen and (max-width: 900px) {
	footer .inner {flex-direction: column-reverse;}
	footer .inner .left {width: 100%;}
	footer .inner .left .logo {width: 80%; max-width: 200px;}
	footer .inner .right {max-width: none; width: 100%; margin-top: -2rem;}
	footer .inner .right .logoList {flex-wrap: wrap; gap: .9rem 2.2rem;}
	footer .inner .right .logoList img {max-width: 6rem;}
}

@media screen and (max-width: 768px) {
	html {font-size: 16px;}
}
@media screen and (max-width: 480px) {
	html {font-size: 15px;}
}
@media screen and (max-width: 360px) {
	html {font-size: 14px;}
}


