/* -------- 헤더 -------- */
header {width: 100%; position: fixed; top: 0; left: 0; padding: 25px 0; border-bottom: 1px solid #ffffff70; background: linear-gradient(to bottom, #00000050, transparent); z-index: 100; transition: all .2s linear;}
header h1 {width: 105px; cursor: pointer;}
header h1 img {width: 100%; display: block; object-fit: contain;}
header h1 img.on {display: none;}
.hd_wrap {width: 100%; display: flex; align-items: center; justify-content: space-between;}
header nav > ul {display: flex; align-items: center; gap: 70px;}
header nav ul  a {font-size: 21px; color: #fff; font-weight: 500;}
header nav li {position: relative;}
header nav .depth2 {position: absolute; top: calc(100% + 10px); left: 50%; transform: translateX(-50%); padding: 18px; border-radius: 10px; display: none; background-color: #121c57; backdrop-filter: blur(2px); width: 150px;}
header .depth2 ul {display: flex; flex-direction: column; gap: 12px; align-items: center; justify-content: center;}
header .depth2 a {font-size: 16px; opacity: .8; color: #fff;}
header .depth2 a:hover {opacity: 1; font-weight: 500;}

header nav .open_menu {width: 30px; height: 30px; display: none; background: url(https://d23vac1awk897o.cloudfront.net/static/img/main/open.png) no-repeat center/contain;}

header.on, .wrap.sub header.on, .wrap.terms header {background: #fff; border-color: #ddd;}
header.on nav ul a, .wrap.terms header nav ul a {color: #222;}
header.on .depth2 a, .wrap.sub header .depth2 a, .wrap.terms header .depth2 a {color: #fff;}
header.on h1 img.default, .wrap.terms header h1 img.default {display: none;}
header.on h1 img.on, .wrap.terms header h1 img.on {display: block;}
header.on nav .open_menu {background: url(https://d23vac1awk897o.cloudfront.net/static/img/main/open_on.png) no-repeat center/contain;}

.wrap.sub header {background: transparent;}
/* .wrap.sub header nav ul a {color: #222;} */
.wrap.sub header .depth2 a {color: #fff;}
/* .wrap.sub header h1 img.default {display: none;}
.wrap.sub header h1 img.on {display: block;} */

.wrap.sub.terms header {background: #fff; border-color: #ddd;}
.wrap.sub.terms header nav ul a {color: #222;}
.wrap.sub.terms header .depth2 a {color: #fff;}
.wrap.sub.terms header h1 img.defualt {display: none;}
.wrap.sub.terms header h1 img.on {display: block;}


/* 버거메뉴 */
.burger {position: fixed; left: 100%; top: 0; width: 100vw; height: 100vh; background: url(https://d23vac1awk897o.cloudfront.net/static/img/main/burger_bg.jpg) no-repeat center/cover; z-index: 500;}
.burger.on {left: 0;}
.burger .burger_top {width: 100%; padding: 30px 50px; border-bottom: 1px solid #ffffff50; display: flex; align-items: center; justify-content: space-between;}
.burger_top .logo {width: 110px;}
.burger_top .logo img {width: 100%; height: 100%; object-fit: contain;}
.burger_top .close_menu {width: 35px; height: 35px; background: url(https://d23vac1awk897o.cloudfront.net/static/img/main/close_menu.png) no-repeat center/contain;}

.bg_menu {width: 100%; display: flex; align-items: flex-end; padding: 70px 50px;}
.bg_menu .bg_list {width: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: 30px;}
.bg_list dl {display: flex; align-items: baseline; gap: 60px; color: #fff;}
.bg_list dt {font-size: 40px; font-weight: 600;}
.bg_list dd {display: flex; align-items: center; gap: 20px; font-size: 20px; opacity: .7;}





/* -------- 푸터 -------- */
footer {background-color: #111; color: #fff; padding: 35px 0 70px;}
footer .ft_wrap {width: 100%; display: flex; flex-direction: column;}
.ft_top {display: flex; width: 100%; align-items: center; justify-content: space-between; padding-bottom: 35px; margin-bottom: 35px; border-bottom: 1px solid #ffffff20;}
.ft_top .ft_info {display: flex; align-items: center; gap: 40px;}
.ft_info .ft_logo {display: block; width: 160px;}
.ft_info .ft_logo img {width: 100%; display: block; object-fit: contain;}
.ft_info ul {display: flex; flex-wrap: wrap; gap: 16px; row-gap: 6px;}
.ft_info ul li {font-size: 14px;}
.ft_info ul li:last-child {width: 100%;}
.ft_sns {display: flex; align-items: center; gap: 16px;}
.ft_sns a {display: block; width: 30px; aspect-ratio: 1;}
.ft_sns .insta {background: url(https://d23vac1awk897o.cloudfront.net/static/img/main/sns_insta.png) no-repeat center/contain;}
.ft_sns .facebook {background: url(https://d23vac1awk897o.cloudfront.net/static/img/main/sns_facebook.png) no-repeat center/contain;}
.ft_sns .youtube {background: url(https://d23vac1awk897o.cloudfront.net/static/img/main/sns_youtube.png) no-repeat center/contain;}
.ft_bt {display: flex; align-items: center; justify-content: space-between; width: 100%;}
.ft_bt .copy {font-size: 14px;}
.ft_bt ul {display: flex; align-items: center; gap: 32px;}
.ft_bt ul li {font-size: 14px; color: #ffffff50; cursor: pointer;}
.ft_bt ul li:first-child {color: #fff;}



.top_btn {position: fixed; right: 0; bottom: 0; background-color: #13244c; width: 65px; aspect-ratio: 1; z-index: 150; display: none; cursor: pointer;}
.top_btn::after {content: ""; display: block; width: 24px; height: 14px; background: url(https://d23vac1awk897o.cloudfront.net/static/img/sub/top_btn.png) no-repeat center/contain; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}




/* -------- 페이지 타이틀 -------- */
.page_tit {width: 100%; height: 100vh; position: relative; overflow: hidden;}
.page_wrap {width: 100%; height: 100%; display: flex; flex-direction: column; align-items: flex-start; position: relative; padding-top: 160px; gap: 100px;}
.page_top {width: 100%; display: flex; justify-content: space-between; align-items: center;}
.page_top .depth1_tit {font-size: clamp(16px, 1.8vw, 22px); text-transform: uppercase; font-weight: bold; color: #fff; position: relative; display: inline-block; padding-left: 15px; line-height: 1;}
.page_top .depth1_tit::before {content: ""; display: block; width: 8px; border-radius: 2px; aspect-ratio: 1; background-color: #E81421; position: absolute; top: 2px; left: 0;}
.page_top .depth1_tit::after {content: ""; display: block; width: 8px; border-radius: 2px; aspect-ratio: 1; background-color: #121c57; position: absolute; bottom: 2px; left: 0;}

.page_top .bread {display: flex; align-items: center; justify-content: flex-end; gap: 24px;}
.page_top .bread span {font-size: clamp(14px, 1.8vw, 22px); color: #ffffff90; line-height: 1; position: relative;}
.page_top .bread span::after {content: ""; display: block; width: 2px; height: 60%; position: absolute; right: -14px; top: 50%; transform: translateY(-50%); background: #ffffff50;}
.page_top .bread span:last-child::after {display: none;}
.page_top .bread span:nth-of-type(1) {font-family: "DM Sans", sans-serif; font-weight: bold;}

.page_title {width: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: 30px; color: #fff; padding-top: 70px;}
.page_title span {font-size: clamp(28px, 5vw, 80px); font-weight: 700;}
.page_tit p {font-size: clamp(16px, 2.5vw, 22px); line-height: 1.4; font-weight: 500;}


.tab {width: 100%; display: flex; align-items: center; gap: 15px; row-gap: 12px; flex-wrap: wrap;}
.tab span {display: block; min-width: max-content; font-size: 20px; font-weight: 700; line-height: 1; color: #ffffff80; background: #00000050; backdrop-filter: blur(10px); padding: 12px 30px; border-radius: 60px; border: 2px solid #ffffff50; cursor: pointer;}
.tab span.on {background-color: #1A34C7; color: #fff; border-color: #1A34C7;}


.sub_scroll {position: absolute; left: 50%; bottom: 4%; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 8px;}
.sub_scroll .scr_arrow {animation: sub_scroll 1.7s ease-in-out infinite; position: absolute;}
.sub_scroll span {font-size: 15px; color: #ffffff80; line-height: 1;}

@keyframes sub_scroll {
    0% {bottom: calc(100% + 25px); opacity: 0;}
    100% {bottom: calc(100% + 10px); opacity: 1;}
}

.wrap.sub.promotion .page_tit {background: url(https://d23vac1awk897o.cloudfront.net/static/img/sub/bg_promotion3.jpg) no-repeat center/cover;}
.wrap.sub.benefit .page_tit {background: url(https://d23vac1awk897o.cloudfront.net/static/img/sub/bg_benefit2.jpg) no-repeat center/cover;}
.wrap.sub.way .page_tit {background: url(https://d23vac1awk897o.cloudfront.net/static/img/sub/bg_way.jpg) no-repeat center/cover;}
.wrap.sub.job .page_tit {background: url(https://d23vac1awk897o.cloudfront.net/static/img/sub/bg_job.jpg) no-repeat center/cover;}
.wrap.sub.cont .page_tit, .wrap.sub.cont_view .page_tit {background: url(https://d23vac1awk897o.cloudfront.net/static/img/sub/bg_container.jpg) no-repeat center/cover;}
.wrap.sub.bulk .page_tit, .wrap.sub.bulk_view .page_tit {background: url(https://d23vac1awk897o.cloudfront.net/static/img/sub/bg_bulk001.jpg) no-repeat center/cover;}
.wrap.sub.management .page_tit, .wrap.sub.management_view .page_tit {background: url(https://d23vac1awk897o.cloudfront.net/static/img/sub/bg_management.jpg) no-repeat center/cover;}
.wrap.sub.it .page_tit, .wrap.sub.it_view .page_tit {background: url(https://d23vac1awk897o.cloudfront.net/static/img/sub/bg_it.jpg) no-repeat center/cover;}
.wrap.sub.guide .page_tit {background: url(https://d23vac1awk897o.cloudfront.net/static/img/sub/bg_apply.jpg) no-repeat center/cover;}





.com_box.terms {flex-direction: column;}
.com_box.terms .com_tit {width: 100%; align-items: center; gap: 30px; padding: 50px 0 20px;}
.com_box.terms .job_box {width: 100%;}
.com_box.terms .terms_list dl {border-bottom: none; padding: 0;}
.com_box.terms .terms_list dl dt {width: 22px;}
.com_box.terms .terms_list dl dd {width: calc(100% - 22px); font-size: 16px;}
.com_box.terms .terms_type1 {gap: 12px; font-size: 16px;}
.com_box.terms .terms_type2 {gap: 30px; font-size: 16px;}
.com_box.terms .terms_type2 .sub_list {padding-left: 22px;}
.com_box.terms .sub_list {display: flex; flex-direction: column; align-items: flex-end; gap: 10px;}
.com_box.terms .terms_list > .tit {padding-bottom: 15px;}
.com_box.terms .txt1 {font-size: 16px; font-weight: 400; color: #666;}

.com_box.terms .job_table + .job_table {border-top: none;}

.com_tit .terms_text {font-size: 16px; font-weight: 500; color: #444; line-height: 1.5; text-align: center;}




/* -------- 1440px -------- */
@media screen and (max-width: 1440px) {
    /* 헤더 */
    header nav ul a {font-size: 18px;}
    header nav > ul {gap: 50px;}
    header nav .depth2 {width: max-content; padding: 18px 30px;}
    header .depth2 ul {gap: 10px;}

    /* 페이지타이틀 */
    .page_title {padding-top: 40px;}
    .tab span {font-size: 18px; padding: 10px 25px;}
}








/* -------- 1080px -------- */
@media screen and (max-width: 1080px) {
    /* 헤더 */
    header h1 {width: 80px;}
    header nav > ul {display: none;}
    header nav .open_menu {display: block;}


    /* 푸터 */
    .ft_info .ft_logo {width: 120px;}
    .ft_info ul {row-gap: 3px;}
    .ft_top {padding-bottom: 25px; margin-bottom: 25px;}
    .ft_top .ft_info {gap: 30px;}
    .ft_bt .copy {font-size: 12px;}
    .ft_bt ul {gap: 20px;}
    .ft_sns {gap: 12px;}
    .ft_sns a {width: 25px;}


    /* 페이지타이틀 */
    .page_title {padding-top: 0;}
    .page_tit {height: 95vh;}
    .page_wrap {padding-top: 120px;}
    .page_top {flex-direction: column-reverse; align-items: flex-start; gap: 40px;}
    .page_top .bread {width: 100%;}
    .sub_scroll .scr_arrow {width: 20px;}
    .sub_scroll span {font-size: 14px;}
    /* .tab {margin-top: -30px;} */
    .tab span {font-size: 16px; padding: 10px 20px;}

}





/* -------- 750px -------- */
@media screen and (max-width: 750px) {
    /* 버거메뉴 */
    .burger .burger_top {padding: 25px 20px;}
    .burger_top .logo {width: 80px;}
    .burger_top .close_menu {width: 25px; height: 25px;}
    .bg_menu {padding: 40px 20px;}
    .bg_list dl {gap: 5px; flex-direction: column; align-items: flex-start;}
    .bg_list dt {font-size: 24px;}
    .bg_list dd {font-size: 18px;}

    /* 푸터 */
    footer {padding: 30px 0 65px;}
    .ft_top {flex-direction: column; align-items: flex-start; gap: 20px;}
    .ft_top .ft_info {flex-direction: column; align-items: flex-start; gap: 20px;}
    .ft_info .ft_logo {width: 80px;}
    .ft_bt {flex-wrap: wrap; align-items: flex-start; row-gap: 10px; flex-direction: column-reverse;}
    .ft_bt ul {flex-wrap: wrap; row-gap: 5px !important; gap: 15px;}
    .ft_info ul {row-gap: 5px;}

    /* 탑버튼 */
    .top_btn {width: 50px; right: 3%; bottom: 5%;}

 
    /* 페이지타이틀 */
    .page_tit {height: 70vh; min-height: 540px;}
    .page_top {gap: 30px;}
    .page_wrap {gap: 30px;}
    .page_title {gap: 20px;}
    .sub_scroll {display: none;}
    .tab {gap: 12px;}
}