@charset 'utf-8';
/* common */
.w1300{ max-width:1300px; margin: 0 auto; width: 100%; }
.w1590{ max-width:1590px; margin: 0 auto; width: 100%; height: 100%; }
.w1600{ max-width:1600px; margin: 0 auto; }

:root{
	--baseFont: 'Pretendard', 'Malgun Gothic', 'verdana', sans-serif;
	--Lora : "Lora", serif;
	--mainC: #E44B79;
}
#headerBg{ position: fixed; display:block; top: 0; left: 0; width: 100%; height: 300px; background: #fff; z-index: 1000; display:none; box-shadow: 0 0 15px rgba(0,0,0,0.1)}

#labBtn{ position: relative; position: fixed; z-index: 1000; right: 22px; bottom: 50px; cursor:pointer; }
#labBtn .circle{ animation: circle 6s linear infinite;  transform-origin: 50% 50%; }
#labBtn .arrow{ position: relative; position:absolute; transform:translate(-50%,-50%); top: 50%; left: 50%; width: 60px; height: 60px; border-radius:50%; background: transparent;
 display:flex; justify-content:center; align-items:center; transition:all 0.5s; }
#labBtn .arrow img{ transition:transform 0.5s; }
#labBtn:hover .circle{ animation-play-state: paused;}
#labBtn:hover .arrow{ background: var(--mainC); }
#labBtn:hover .arrow img{ filter: brightness(0) invert(1); transform:rotate(-45deg); }

#viewBtn{ position: relative; width: 350px; height: 90px; border-radius: 100%; border: 1px solid #D9D9D9; color:#666;  }
#viewBtn:before{ content:''; position:absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius:100%; background:transparent; transition:all 0.5s; z-index: -1; }
#viewBtn:hover{ border:none; color:#222;}
#viewBtn:hover:before{ background: rgba(217,217,217,0.5); filter: blur(10px); }

.pre{ font-family: 'Pretendard', sans-serif; }

.coverW{ position: relative; opacity: 1; }
.coverW:after{ content:''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255,255,255,0.7); transition:all 1.5s; filter: blur(50px); -webkit-filter: blur(50px); }
.coverW.aos-animate:after{ left: 100%; }

.fitBox{ position: relative; overflow: hidden;}
.fitBox img{ position: absolute; transform:translate(-50%,-50%); top: 50%; left: 50%; min-width:100%; min-height:100%; object-fit:cover; }

.flexBox{ display:flex; }

@keyframes circle{
	0%{ transform:rotate(0); }
	100%{ transform:rotate(360deg); }
}

/* header */
header{ position: relative; position: fixed; top: 0; left: 0; width: 100%; z-index: 1000; transition:all 0.5s; opacity: 1; transform: translateY(0); }
header:after{ content:''; position: fixed; top: 0; left: 0; display:block; width: 100%; height: 0; background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(2.5px); opacity: 0; transition:all 0.5s; 
z-index: -1;}
header .headerBox{ transition:all 0.5s; }
header .headerBox .logo{ margin-right: 120px;}
header .headerBox > div{ position: relative; width: 100%; padding: 0 105px; display:flex; justify-content:space-between; align-items:center; height: 90px; transition: all 0.5s; top: 0;
border-bottom:1px solid rgba(255,255,255,0.3); }
header .headerBox nav,
header .headerBox nav #gnb{ height: 100%; display:flex; }
header .headerBox nav #gnb > li{ position: relative; }
header .headerBox nav #gnb > li > a{ position: relative; font-size:18px; color:#fff; font-weight: 500; z-index: 5; transition:all 0.5s; display:flex; justify-content:center; align-items:center; height: 100%; padding: 0 25px; min-width: 100px; }
header .headerBox nav #gnb > li .depth2{ position:relative; text-align: center; z-index: 1; width: 100%; height: 210px;
border-right:1px solid #E9E9E9; padding-top: 30px; display:none; } 
header .headerBox nav #gnb > li:first-child .depth2 { border-left:1px solid #E9E9E9;}
header .headerBox nav #gnb > li .depth2 li{ margin-bottom: 20px;}
header .headerBox nav #gnb > li .depth2 li a{ font-size:16px; color:#222; transition:all 0.2s; }
header .headerBox nav:hover #gnb > li > a{ padding:0 48px; color:#666; min-width: 170px;}
header .headerBox nav #gnb > li:hover > a { color:var(--mainC) !important; }
header .headerBox.on > div{ border-bottom:1px solid rgba(102,102,102,0.3); }
header .headerBox.on > div:before{ opacity: 1;}
header .headerBox .sideBox{ display:flex; align-items:center;  }
header .headerBox .sideBox .langBtn{ display:flex; margin-right: 80px; }
header .headerBox .sideBox .langBtn li{}
header .headerBox .sideBox .langBtn li a{ display:flex; align-items:center; font-size:17px; color:#fff; font-weight: 500; transition:all 0.5s; }
header .headerBox .sideBox .langBtn li:first-child a:after{ content:""; height: 12px; width: 1px; background: rgba(255,255,255,0.5); display:block; margin: 0 10px; transition: all 0.5s; }
header .headerBox .sideBox .langBtn li.on a{ color:var(--mainC) !important; } 
header .headerBox.on .sideBox .langBtn li a{ color:#222; }
header .headerBox.on .sideBox .langBtn li:first-child a:after{ background: #222;}
header .headerBox #menuBar{ position: relative; cursor: pointer; width: 31px; height: 13px; display:flex; align-items:center; justify-content:flex-end; }
header .headerBox #menuBar span{ position: relative; width: 25px; height: 1px; background: #fff; display:block; transition:all 0.5s;}
header .headerBox #menuBar:before{ content:''; display:block; position:absolute;	top: 0; left: 0; width: 25px; height: 1px; background: #fff; transition:all 0.5s;}
header .headerBox #menuBar:after{ content:''; display:block; position:absolute;	bottom: 0; left: 0; width: 25px; height: 1px; background: #fff; transition:all 0.5s;}
header .headerBox.on #menuBar span,
header .headerBox.on #menuBar:before,
header .headerBox.on #menuBar:after{ background: #222;}

header.bg .headerBox{ background: rgba(255,255,255,0.6); box-shadow: 0px 2px 12px 0px rgba(102, 102, 102, 0.15);}
header.bg .headerBox nav #gnb > li > a{ color:#222; }
header.bg .headerBox #menuBar span,
header.bg .headerBox #menuBar:before,
header.bg .headerBox #menuBar:after{ background: #222;}
header.bg .headerBox .sideBox .langBtn li a{ color:#222; }
header.bg .headerBox .sideBox .langBtn li:first-child a:after{ background: #222;}
header.bg .headerBox.on{ box-shadow:none; }

header.down{ transform: translateY(-100%);}

#allMenu{ max-width:960px; width: 100%; height: 100vh; position: fixed; top: 0; right: -100%; z-index: 1001; background: url(/img/common/allBg.png) no-repeat 50% 50%; background-size:cover; 
padding: 35px 65px; display: flex; flex-direction: column; text-align: center; transition: all 1s; will-change:right; }
#allMenu #closeBtn{ align-self: flex-end; cursor:pointer; margin-bottom: 80px;}
#allMenu #allGnb #gnb > li { margin-bottom: 30px; cursor:pointer; }
#allMenu #allGnb #gnb > li > a{ font-size: 60px; color:rgba(255,255,255,0.2); font-weight: 600; pointer-events:none; transition:all 0.5s; }
#allMenu #allGnb #gnb .depth2{ display:flex; justify-content:center; align-items:center;  margin: 18px 0 10px; display:none; }
#allMenu #allGnb #gnb .depth2 li a{ font-size: 18px; color:#fff;  }
#allMenu #allGnb #gnb .depth2 li{ display:inline-flex; align-items:center; }
#allMenu #allGnb #gnb .depth2 li:not(:last-child):after{ content:''; display:block; width: 1px; height: 5px; background: #fff; margin: 0 25px;}

#allMenu #allGnb #gnb > li:hover a{ color:#fff; }

#allMenu.on{ right: 0;}
#allMenu #allGnb #gnb > li.on > a{ color:#fff; }

/* footer */
footer{ position: relative; z-index: 5; background: #fff; border-top: 1px solid #F6F6F6; box-shadow: 4px 2px 20px 0px rgba(102, 102, 102, 0.25);}
footer .topBox{ display:flex; align-items:center; padding: 50px 0 40px; border-bottom:1px solid #F6F6F6; }
footer .topBox .logo{ margin-right: 50px;}
footer .topBox .infoBox ul{ display:flex; gap:20px; }
footer .topBox .infoBox ul:not(:last-child){ margin-bottom: 10px;}
footer .topBox .infoBox ul li{ color:#333; } 
footer .topBox .infoBox ul li span{ font-weight: bold; display:inline-flex; align-items:center; }
footer .topBox .infoBox ul li span:after{ content:''; display:block; width: 2px; height: 7px; background: #E9E9E9; margin: 0 15px;}
footer .topBox .infoBox ul:first-child{ gap: 60px; }
footer .bottomBox{ height: 60px; display:flex; align-items:center; justify-content:space-between; }
footer .bottomBox .copy{ color:#666; font-weight: 300;}
footer .bottomBox .policy a{ color:#666; font-weight: 600; transition:all 0.5s; }
footer .bottomBox .policy:hover a{ color: var(--mainC); }


/* privacy */
.privacy { color:#666; width: 100%; overflow: hidden; box-sizing:border-box; font-size:18px;	line-height: 1.5; word-break:break-all; }
.privacy h2 { font-weight:bold; color:#000; text-align: left; margin:0 0 80px; text-align: center; }
.privacy h3 { display:inline-block; vertical-align:bottom;}
.privacy h2:first-child { margin-top: 0; }
.privacy > p { margin:15px 0; }
.privacy > p+dl { margin-top: 30px; }
.privacy > dl { padding-bottom:20px;}
.privacy > dl > dt{ font-size:18px;color:#E44B79;font-weight:700;padding-bottom:5px;}
.privacy > dl > dd{ padding-bottom:10px;text-align:justify; font-size:18px; line-height:140%;}
.privacy > dl > dd ul{ padding:10px; }
.privacy > dl > dd ul li{ line-height:120%; margin-top: 10px; }
.privacy > dl > dd ul li:first-child { margin-top: 0; }
.privacy > dl > dd ul li p { margin:0 10px 5px; line-height: 140%; }
.sTxt h3 { font-size:17px; color: #333; font-weight: 700; margin: 20px 0 10px; }
.sTxt p { margin-top: 10px; }
.sTxt dt { margin-top: 10px; }
.sTxt dd { margin:0 8px; }



/* animation */
@keyframes txtUp{
	0%{ top: 300px; }
	100%{ top: 0; }
}