@import url("common.css");
@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..500,0..1,-50..200");

/* 모바일 lnb */
.mobile_snb {display:none;}

/*** 공통 css ***/
.basic_cont{max-width:1590px; width: 90%; margin:100px auto 150px;}

/* 서브탑 (회사소개 일부 페이지, 인증현황 제외) */
.subtop {position: relative; z-index: 10;}
.subtop:has(.subtop_bg) {width: 100%; position: relative; height: 550px; padding-top: 100px; display: block; width: 100%; max-width: 100%}
.subtop .subtop_bg {position: absolute; left: 0; top: 100px; width: 100%; height: calc(100% - 100px); overflow: hidden;}
.subtop .subtop_bg .bg {width: 100%; height: 100%; background-size: cover; background-position: center; background-repeat: no-repeat; animation: m_vsImg 1.8s ease forwards; transform:scale(1.1)}
.subtop:has(.subtop_bg) .subtop_txt {position: relative; z-index: 2; height: 100%; width: 90%; margin: 0 auto;}
.subtop:has(.subtop_bg) .subtop_txt p {animation: v_txt 0.8s 0.5s ease forwards; transform:translateY(60px); opacity:0;}
.subtop:has(.subtop_bg) .subtop_txt h2 {animation: v_txt 0.8s 0.7s ease forwards; transform:translateY(60px); opacity:0;}
.subtop:has(.subtop_bg) .lnb {position: absolute; bottom: 28px; left: 50%; transform: translateX(-50%); z-index: 2; width: 90%; margin: 0 auto; opacity: 0; animation: fadeIn 1s 0.5s ease forwards;}

@keyframes m_vsImg {
	0% {transform:scale(1.1); }
	20% {transform:scale(1.1); }
	100% {transform:scale(1); }
}

@keyframes v_txt {
	0% { transform:translateY(60px); opacity:0; }
	100% { transform:translateY(0); opacity:1; }
}

@keyframes fadeIn {
    0% { opacity:0; }
    100% { opacity:1; }
}


/* 서브탑 (일반 서브탑) */

.subtop {padding-top: 200px; display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; flex-wrap: wrap; width: 90%; max-width: 1590px; margin: 0 auto;}
.subtop_txt {display: flex; flex-direction: column; justify-content: center; gap: 10px; width: auto; margin: 0;}
.subtop .lnb {width: auto; margin: 0;}

.subtop:not(:has(.subtop_bg)) {animation: v_txt 1.2s ease forwards; transform:translateY(60px); opacity:0;}


/* LNB */
.lnb > ul{display: flex; align-items:center; justify-content: flex-end;}
.lnb > ul > li:first-child{padding: 0 15px 0 0; flex-shrink:0;}
.lnb > ul > li:first-child a span.icon_home {display: flex;}
.lnb > ul > li:nth-child(2) {width: 190px;}
.lnb > ul > li:last-child {width: 175px;}
.lnb > ul > li:not(:first-child) {position:relative;}
.lnb > ul > li:last-child:before{content:''; display:block; height:4px; aspect-ratio: 1/1; background:rgba(255, 255, 255, 0.3); position:absolute; left:0; top:50%; margin-top:-2px; border-radius:50%;}
.lnb > ul > li > .txt{padding:0 40px 0 19px; box-sizing:border-box; position: relative; text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block;}
.lnb > ul > li > .txt:after{content:'\e5c6'; font-family: var(--icon); font-size: 22px; color: var(--white); line-height: 1; font-weight: 400; position: absolute; right: 15px; top: 50%; margin-top: -11px; transition: all .3s linear; box-sizing: border-box; transform-origin: center center;}
.lnb > ul > li:nth-child(2) > .txt {color: rgba(255, 255, 255, 0.7);}
.lnb > ul > li:nth-child(2) > .txt::after {color: rgba(255, 255, 255, 0.7);}
.lnb > ul > li:last-child > .txt {padding-right: 30px;}
.lnb > ul > li:last-child > .txt:after {right: 0;}
.lnb > ul > li > .txt.on:after{transform:rotate(180deg);}
.lnb ul li .dlst{position: absolute; z-index: 999; width: calc(100% - 30px); background-color: rgba(40, 37, 32, 0.8); padding: 15px; box-sizing:border-box; display: none; box-shadow:5px 5px 15px rgba(0,0,0,0.1); top:calc(100% + 5px); left: 50%; transform: translateX(-50%);}
.lnb > ul > li:nth-child(3) .dlst{width: calc(100% - 15px);}
.lnb ul li .dlst.on{display: block;}
.lnb ul li .dlst ul li{padding: 0 0 5px;}
.lnb ul li .dlst ul li:last-child{padding: 0;}
.lnb ul li .dlst ul li a{transition:all .2s linear; color:rgba(255, 255, 255, 0.6); display: block;}
.lnb ul li .dlst ul li a:hover {color:var(--white);}
.lnb ul li .dlst ul li a.on{color:var(--white); font-weight:700;}
.search_none .lnb > ul > li:last-child{display: none;}

/* Responsive Dim */
.responsive-dim {position: absolute; top: 0; bottom: 0; left: 0; right: 0; background: rgba(0,0,0,.8); z-index: 80; display:none;}
.responsive-dim p {position: absolute;top: 50%; left: 0;right: 0; text-align: center; transform: translate(0,-50%);}
.responsive-dim span {display: block; margin-top: 10px;color: var(--white); font-weight: 600; font-size: 14px; letter-spacing: -0.3pt;}
.responsive-dim i {font-size:40px; color:var(--white);}


/* 개인정보처리방침 */
.policy_cont{position:relative; overflow:hidden; font-size:1rem; color:var(--white8);}
.policy_cont br{display:block;}
.policy_cont strong{font-weight:500; color:var(--white);}
.policy_cont .cont_title{font-size:1.412rem; color:var(--white); padding-bottom:18px; letter-spacing:var(--letter-spacing-default); font-weight:500;}
.policy_cont p.cont_tit {display:block; font-size:1.2em !important; padding-bottom:10px; font-weight:500; color:var(--white) !important; letter-spacing:var(--letter-spacing-default);}
.policy_cont .cont_txt {padding:0px 0px 35px 0;}
.policy_cont .cont_txt2 {padding-bottom:35px;}
.policy_cont .cont_box {padding:25px; background:#282520; margin:7px 0px 10px 0px; display:block;  letter-spacing:var(--letter-spacing-default); line-height:1.7; color:var(--white8);}

.privacy_list {width:100%; overflow:hidden; clear:both; *zoom:1; padding:4% 4% 3% 4%; border:1px solid var(--white3); box-sizing:border-box; margin-bottom:30px;}
.privacy_list li {width:50%; float:left; padding-bottom:1%;}
.privacy_list li a {font-weight:500; color:var(--white);} 






/*******************************************************************************
    @media 1760px
*******************************************************************************/
@media all and (max-width:1760px){

}

/*******************************************************************************
    @media 1500px
*******************************************************************************/
@media all and (max-width:1500px){

}

/*******************************************************************************
    @media 1300px
*******************************************************************************/
@media all and (max-width:1300px){

}

/*******************************************************************************
    @media  ~980px               
*******************************************************************************/
@media all and (max-width:980px){
/* 서브탑 (회사소개 일부 페이지, 인증현황 제외) */
.subtop:has(.subtop_bg) {height: 400px; padding-top: 74px;}
.subtop .subtop_bg {top: 74px; height: calc(100% - 74px);}
.subtop:has(.subtop_bg) .subtop_txt {padding-bottom: 20px;}
.subtop:has(.subtop_bg) .lnb {bottom: 28px;}

/* 서브탑 (일반 서브탑) */
.subtop {padding-top: 130px; flex-direction: column; align-items: flex-start; gap: 10px;}
.subtop_txt,
.subtop .lnb {width: 100%; margin: 0 auto;}

/* LNB */
.lnb > ul > li:first-child a span.icon_home svg {width: 140px; height: auto;}
.lnb > ul > li > .txt:after {font-size: 20px; margin-top: -10px;}

/* 공통 CSS */
.basic_cont {margin-top: 60px; margin-bottom: 100px;}


/* 개인정보처리방침 */
.policy_cont p.cont_tit {font-size:1.2em !important; padding-bottom:5px;}
.policy_cont .cont_txt {padding:0px 0px 25px 0; }
.policy_cont .cont_txt2 {padding-bottom:25px;}
.policy_cont .cont_box {padding:18px 18px; }

.privacy_list {margin-bottom:30px;}
.privacy_list li {width:100%;}
}

/*******************************************************************************
    @media 481~680px
*******************************************************************************/
@media all and (max-width:680px){
/* 서브탑 (회사소개 일부 페이지, 인증현황 제외) */
.subtop:has(.subtop_bg) {height: 280px; padding-top: 71px;}
.subtop .subtop_bg {top: 71px; height: calc(100% - 71px);}
.subtop:has(.subtop_bg) .subtop_txt {padding-bottom: 20px;}

/* 서브탑 (일반 서브탑) */
.subtop_wrap {display: flex; flex-direction: column-reverse; padding-top: 71px;}
.subtop {padding-top: 30px;}

.subtop_txt {gap: 5px;}

/* LNB */
.lnb {display: none;}

/* 모바일 lnb */
.mobile_snb {display:block;}
.mobile_snb .tbox{display:flex;}
.mobile_snb .tbox .box{width:50%; box-sizing:border-box;}
.mobile_snb .tbox .box .dropLst{position: relative;}
.mobile_snb .tbox .box .dropLst .title{display:block; font-size:1rem; font-weight: 700; line-height:50px; letter-spacing:var(--letter-spacing-default); box-sizing:border-box; padding:0 calc(10% + 30px) 0 10%; text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block; position: relative; border-bottom: 1px solid rgba(255, 255, 255, 0.1);}
.mobile_snb .tbox .box .dropLst .title:after{content:''; display:block; width:20px; height:20px; background:url('/img/lnb_arrow.svg') no-repeat center/100% auto; position:absolute; right:10%; top:50%; margin-top: -10px; transition:all .3s linear; opacity: 1;}
.mobile_snb .tbox .box.dep1 .dropLst .title{background:#282520; color:var(--white);}
.mobile_snb .tbox .box.dep2 .dropLst .title{background:var(--baseBg); color:var(--white);}
.mobile_snb .tbox .box .dropLst .title.on:after{transform:rotate(180deg);}
.mobile_snb .tbox .box .dropLst .dlst{display:none; position: absolute; left: 0; top:50px; width: 200%; background:var(--white); z-index: 99999; box-shadow:0 20px 20px rgba(0,0,0,.05);}
.mobile_snb .tbox .box.dep2 .dropLst .dlst{left: -100%;}
.mobile_snb .tbox .box .dropLst .dlst ul li a{display: block; padding: 0 5%; font-size:1rem; line-height:50px; letter-spacing:var(--letter-spacing-default); box-sizing:border-box; text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block;}
.mobile_snb .tbox .box .dropLst .dlst ul li a.on{background:var(--main); color:var(--white);}

.search_none .mobile_snb{display: none;}


/* 공통 CSS */
.basic_cont {margin-top: 40px; margin-bottom: 60px;}

}

/*******************************************************************************
    @media ~480px               
*******************************************************************************/
@media all and (max-width:480px){

}

/*******************************************************************************
    @media ~360px
*******************************************************************************/
@media all and (max-width:360px){

}

