html, body {/*overflow:hidden;*/ width:100%; height:100%; font-family: "Pretendard", "Noto Sans Korean"; -webkit-font-smoothing: antialiased;}
body.overflow-hidden {overflow:hidden; }

/* 스크롤바 커스텀 */
::-webkit-scrollbar{width:8px;height:8px; background:#242332;}
::-webkit-scrollbar-thumb{cursor:pointer;background:#45435a; border-radius:10px; }


header {z-index:100; position:fixed; top:0; left:50%; display:flex; align-items:center; justify-content:space-between; width:90%; max-width:90%; padding:9vh 0 30px; margin:0 auto; transform:translateX(-50%); }
header h1 svg {width:86px; height:42px; color:#fff; }
header.active h1 {color:#fff !important;}
header.active .menu_btn div {background:#fff !important;}
header .menu_btn {position:relative; display:block; width:30px; height:26px; cursor:pointer; }
header .menu_btn div {position:absolute; height:2px; border-radius:2px; background:#fff; transition: transform .45s cubic-bezier(.9, -.6, .3, 1.6), width .2s ease .2s; }
header .menu_btn input {display:none; }
header .menu_btn input + div {top:50%; left:0; width:30px; margin:-2px 0 0 0; transform-origin:50% 50%; }
header .menu_btn input + div + div {top:0px; left:0; width:14px; transform-origin:0 50%; }
header .menu_btn input + div + div + div {bottom:2px; right:0; width:30px; transform-origin:100% 50%; transform:translate(0,0); }
header .menu_btn input:checked + div {transform:rotate(-45deg); transition: transform .45s cubic-bezier(.9, -.6, .3, 1.6) .1s; }
header .menu_btn input:checked + div + div {width:16px; transform: translate(4.5px, 0.5px) rotate(45deg); transition: transform .45s cubic-bezier(.9, -.6, .3, 1.6) .1s, width .2s ease; }
header .menu_btn input:checked + div + div + div {width:16px; transform: translate(-4.5px, -0.3px) rotate(45deg); transition: transform .45s cubic-bezier(.9, -.6, .3, 1.6) .1s, width .2s ease; }

/* sub */
.sub header {width:100%; max-width:100%; padding:50px 5% 20px; transition:all 0.5s; }
.sub header.sub_type {padding:20px 5% 20px; backdrop-filter:blur(3px); background-color:rgba(0, 0, 0, 0.5); }
.sub header.down {top:-180px; }


nav {z-index:99; opacity:0; overflow-y:auto; position:fixed; top:-100%; left:0; display:flex; align-items:center; justify-content:center; gap:10%; width:100%; height:100%; background-color:#14116E; transition: .45s cubic-bezier(0.4, 0, 0.2, 1) .1s; }
nav.active {opacity:1; top:0; }
nav .close_btn {position:absolute; top:20px; right:3%; cursor:pointer; }
nav .gnb {position:relative; display:flex; flex-direction:column; justify-content:center; width:90%; max-width:90%; height:100%; margin:0 auto; }
nav .gnb:before {content:''; }
/* nav ul li + li {margin-top:60px; } */
nav ul li {opacity:0.4; transition:all 0.4s; }
nav ul li:hover {opacity:1; }
nav ul li a {display:block; padding:30px 0; font-size:80px; line-height:0.7; letter-spacing:-0.24px; font-weight:800; color:#fff; }
/* nav ul li.off {opacity:0.4; } */
nav .sns {position:absolute; bottom:7%; left:0; opacity:0.7; }
nav .sns a {font-size:16px; line-height:2; font-weight:300; letter-spacing: -0.048px; color:#fff; }
nav .sns a.insta {text-transform:uppercase; text-decoration-line: underline; text-underline-offset: auto; text-underline-position: from-font; }


#wrap {overflow:hidden; position:relative; height:100%; }
#wrap section {overflow:hidden; position:relative; left:0; top:0; display:flex; align-items:center; justify-content:center; width:100%; height:100%; cursor:initial; background-color:#fff; }
#wrap section .bg {position:absolute; left:0; top:0; width:100%; height:100%; background-repeat:no-repeat; background-size:cover; background-position:80% center; transition:opacity 0.4s; }
/* #wrap section.main_con01:before {content:''; z-index:1; position:absolute; left:calc(50% - 1.5px); bottom:0; width:3px; height:0; background-color:#fff; transition:all 0.8s; transition-delay:0.5s; } */

/* #wrap section.swiper-slide-active.main_con01:before {height:80vh; } */

#wrap section .text_area {position:relative; z-index:10; width:90%; max-width:90%; height:80vh; margin:0 auto; }
#wrap section.main_con01 .text_area {display:grid; grid-template-columns:repeat(2,1fr); }
#wrap section .text_area .left_box {opacity:0; position:relative; left:-200px; display:flex; align-items:center; transition:all 0s; transition-delay:0.8s; }
#wrap section .text_area .left_box p span {display:block; font-size:84px; color:#fff; font-weight:400; line-height:0.74; letter-spacing:-1.68px; text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.34);}
#wrap section .text_area .left_box p span + span {margin-top:46px; }
#wrap section .text_area .left_box p span b {display:inline-block; width:65px; text-align:center; font-weight:800; text-transform:uppercase;}
#wrap section .text_area .right_box {opacity:0; position:relative; right:-200px; display:flex; align-items:end; justify-content:flex-end; transition:all 0s; transition-delay:0.8s; }
#wrap section .text_area .right_box .txt_box {text-align:left; color:#fff; opacity:0.6; }
#wrap section .text_area .right_box .txt_box h5 {font-size:20px; font-weight:300; }
#wrap section .text_area .right_box .txt_box h5 b {font-weight:700; }
#wrap section .text_area .right_box .txt_box p {margin-top:20px; font-size:16px; font-weight:300; line-height:1.8; }


#wrap section .text_area.single_type {display:flex; flex-direction:column; justify-content:center; gap:50px; height:70vh; color:#fff; }
#wrap section .text_area.single_type h4 {opacity:0; position:relative; top:150px; font-size:110px; font-weight:800; line-height:1; letter-spacing: -0.258px; transition:all 0s; transition-delay:0.8s; text-transform:uppercase; }
#wrap section .text_area.single_type h4 span {font-family: "Pretendard"; font-size:70px; font-weight:500; }
#wrap section .text_area.single_type p {opacity:0; position:relative; top:150px; font-size:18px; line-height:1.6; letter-spacing: -0.048px; transition:all 0s; transition-delay:0.8s; }
#wrap section .text_area.single_type .img_box {opacity:0; position:relative; top:150px; margin-top:40px; transition:all 0s; transition-delay:0.8s; }
#wrap section .text_area.single_type .img_box img {height:85px; }

#wrap section.swiper-slide-active .text_area .left_box {opacity:1; left:0; transition:opacity 0.8s, left 0.8s, right 0.8s; transition-delay:0.5s; }
#wrap section.swiper-slide-active .text_area .right_box {opacity:1; right:0; transition:opacity 0.8s, left 0.8s, right 0.8s; transition-delay:0.5s; }

#wrap section.swiper-slide-active .text_area.single_type h4 {opacity:1; top:0; transition:opacity 0.8s, left 0.8s, top 0.8s; transition-delay:0.5s; }
#wrap section.swiper-slide-active .text_area.single_type p {opacity:1; top:0; transition:opacity 0.8s, left 0.8s, top 0.8s; transition-delay:0.8s; }
#wrap section.swiper-slide-active .text_area.single_type .img_box {opacity:1; top:0; transition:opacity 0.8s, left 0.8s, top 0.8s; transition-delay:1.1s; }

/*
.main_con01 .bg {background:url('../img/main_bg_1.png') no-repeat center center / cover;}
.main_con02 .bg {background:url('../img/main_bg_2_2.png') no-repeat center center / cover;}
.main_con03 .bg {background:url('../img/main_bg_3_1.png') no-repeat center center / cover;}
.main_con04 .bg {background:url('../img/main_bg_4_1.png') no-repeat center center / cover;}

.main_con02 .bg.bg_1 {background:url('../img/main_bg_2_1.png') no-repeat center center / cover;}
.main_con02 .bg.bg_2 {background:url('../img/main_bg_2_2.png') no-repeat center center / cover;}
.main_con02 .bg.bg_3 {background:url('../img/main_bg_2_3.png') no-repeat center center / cover;}
.main_con02 .bg.bg_4 {background:url('../img/main_bg_2_4.png') no-repeat center center / cover;}
.main_con02 .bg.bg_5 {background:url('../img/main_bg_2_5.png') no-repeat center center / cover;}

.main_con03 .bg.bg_1 {background:url('../img/main_bg_3_1.png') no-repeat center center / cover;}
.main_con03 .bg.bg_2 {background:url('../img/main_bg_2_2.png') no-repeat center center / cover;}
.main_con03 .bg.bg_3 {background:url('../img/main_bg_2_3.png') no-repeat center center / cover;}
.main_con03 .bg.bg_4 {background:url('../img/main_bg_2_4.png') no-repeat center center / cover;}
.main_con03 .bg.bg_5 {background:url('../img/main_bg_2_5.png') no-repeat center center / cover;}

.main_con04 .bg.bg_1 {background:url('../img/main_bg_4_1.png') no-repeat center center / cover;}
.main_con04 .bg.bg_2 {background:url('../img/main_bg_2_2.png') no-repeat center center / cover;}
.main_con04 .bg.bg_3 {background:url('../img/main_bg_2_3.png') no-repeat center center / cover;}
.main_con04 .bg.bg_4 {background:url('../img/main_bg_2_4.png') no-repeat center center / cover;}
.main_con04 .bg.bg_5 {background:url('../img/main_bg_2_5.png') no-repeat center center / cover;}
*/

.change_bg .bg {opacity:0; }
.change_bg.name_1 .bg_1,
.change_bg.name_2 .bg_2,
.change_bg.name_3 .bg_3,
.change_bg.name_4 .bg_4,
.change_bg.name_5 .bg_5,
.change_bg.name_6 .bg_6,
.change_bg.name_7 .bg_7,
.change_bg.name_8 .bg_8,
.change_bg.name_9 .bg_9 {opacity:1; }


.scroll_down {z-index:10; position:fixed; left:2%; bottom:15%; display:flex; align-items:center; gap:7px; writing-mode:vertical-lr; -webkit-transform:rotate(180deg); -moz-transform:rotate(180deg); -o-transform:rotate(180deg); transform:rotate(180deg); animation:bounce linear 1s infinite alternate; }
.scroll_down i {width:13px; height:13px; border-right:1px solid #fff; border-bottom:1px solid #fff; -webkit-transform:rotate(-135deg); -moz-transform:rotate(-135deg); -o-transform:rotate(-135deg); transform:rotate(-135deg); }
.scroll_down i:nth-of-type(3) {opacity:.4; }
.scroll_down i:nth-of-type(2) {opacity:.7; }
.scroll_down span {font-size:20px; color:#fff; transform:translateX(2px); }

.pager {z-index:20; position:fixed; left:50%; bottom:8%; display:flex; align-items:center; width:90%; max-width:90%; -webkit-transform:translateX(-50%); -moz-transform:translateX(-50%); -o-transform:translateX(-50%); transform:translateX(-50%); }
.pager .prev,
.pager .next {cursor:pointer; color:#fff; }
.pager .current,
.pager .total {font-size:24px; color:#fff; opacity:0.7; }
.pager .current {margin-left:7px; color:#fff; opacity:1; }
.pager .pagination {position:relative; width:125px !important; height:2px !important; margin:0 10px; background-color:rgba(255,255,255,0.3); }
.pager .pagination i {position:absolute; left:0; top:0; height:100%; background-color:#fff; transition:all 0.5s; }

.pager.black .prev,
.pager.black .next,
.pager.black .total,
.pager.black .current {color:#383838; }
.pager.black .pagination {background-color:#38383833; }
.pager.black .pagination i {background-color:#383838; }


@keyframes bounce {
    0% {bottom:15%; }
    100% {bottom:16%; }
}

@media all and (max-width:1200px){

    #wrap {overflow:visible; height:auto; }
    #wrap .swiper-wrapper {display:block; height:auto; }

    #wrap section {height:100dvh; }
    /* #wrap section .txt_box {left:0%; width:100%; padding:0 10px; text-align:center; } */
    #wrap section .txt_box.right {left:0%; padding:0 10px; text-align:center; }
    #wrap section .txt_box .txt ,
    #wrap section .txt_box .txt.type02 ,
    #wrap section .txt_box .txt.type03 {width:100%; text-align:center; }

    /* #wrap section.main_con01 .text_area {display:flex; flex-direction:column; justify-content:space-between; gap:30px; } */
    #wrap section .text_area .right_box .txt_box {transform:none; }
    /* #wrap section .text_area .left_box p {font-size:54px; } */
    /* #wrap section .text_area .left_box p b {font-size:80px; } */

    #wrap section .text_area.single_type h4 {transition:all 0.8s; }
    #wrap section .text_area.single_type p {transition:all 0.8s; }

    #wrap section.active .text_area .left_box {opacity:1; left:0; transition:opacity 0.8s, left 0.8s, right 0.8s; transition-delay:0.2s;}
    #wrap section.active .text_area .right_box {opacity:1; right:0; transition:opacity 0.8s, left 0.8s, right 0.8s; transition-delay:0.2s;}

    #wrap section.active .text_area.single_type h4 {opacity:1; top:0; transition:opacity 0.8s, left 0.8s, top 0.8s; transition-delay:0.1s; }
    #wrap section.active .text_area.single_type p {opacity:1; top:0; transition:opacity 0.8s, left 0.8s, top 0.8s; transition-delay:0.3s; }
    #wrap section.active .text_area.single_type .img_box {opacity:1; top:0; transition:opacity 0.8s, left 0.8s, top 0.8s; transition-delay:0.5s; }

    .pager {display:none; }
}


@media all and (max-width:1024px){
    header {padding:7vh 0; }
    
    #wrap section .text_area .right_box {position:absolute; bottom:0; }
    #wrap section .text_area .left_box p span {font-size:64px; }
    #wrap section .text_area .left_box p span + span {margin-top:38px; }
    #wrap section .text_area .left_box p span b {width:53px; }
    #wrap section .text_area .right_box .txt_box p {margin-top:15px; font-size:14px; }

    #wrap section .text_area.single_type h4 {font-size:90px; transition:all 0.8s; }
    #wrap section .text_area.single_type h4 span {font-size:55px; }

}

@media all and (max-width:767px){
    header {padding:3vh 0; }
    header h1 svg {width:70px; height:32px; }
    header .menu_btn {zoom:0.8; }

    .sub header {padding-top:20px; }
    
    nav ul li a {padding:20px 0; font-size:40px; }
    nav .sns a {font-size:14px; }

    #wrap section.main_con01 .text_area {display:flex; justify-content:space-evenly; }
    #wrap section .text_area .left_box {width:100%; }
    #wrap section .text_area .left_box p {padding-bottom:15vh; }
    #wrap section .text_area .left_box p span {font-size:56px; }
    #wrap section .text_area .left_box p span + span {margin-top:27px; }
    #wrap section .text_area .left_box p span b {width:46px; }
    #wrap section .text_area .right_box {width:100%; }
    #wrap section .text_area .right_box .txt_box {width:100%; }
    #wrap section .text_area .right_box .txt_box h5 {font-size:16px; }
    #wrap section .text_area .right_box .txt_box p {margin-top:10px; font-size:12px; }
    
    #wrap section .text_area.single_type {justify-content:center; gap:30px; height:90vh; text-align:center;  }
    #wrap section .text_area.single_type h4 {margin-top:40px; font-size:50px; }
    #wrap section .text_area.single_type h4 span {font-size:35px; }
    #wrap section .text_area.single_type p {display:none; font-size:16px; word-break:keep-all; }
    #wrap section .text_area.single_type p br {display:none; }
    #wrap section .text_area.single_type .img_box {margin-top:20px; }
    /* #wrap section .text_area.single_type .img_box img {height:50px; } */

    #wrap section .text_area.single_type .img_box {display:grid; grid-template-columns:repeat(4,1fr); gap:5px;}
    #wrap section .text_area.single_type .img_box img {height:auto; }

    .scroll_down {left:1%; -webkit-transform:rotate(180deg) scale(0.8); -moz-transform:rotate(180deg) scale(0.8); -o-transform:rotate(180deg) scale(0.8); transform:rotate(180deg) scale(0.8); }
    .scroll_down i {width:9px; height:9px; }
    .scroll_down span {font-size:16px; transform:translateX(1px); }

    @keyframes bounce {
        0% {bottom:5%; }
        100% {bottom:6%; }
    }

}
@media all and (max-width:320px){
    #wrap section .text_area .right_box .txt_box p {word-break:keep-all; }
    #wrap section .text_area .right_box .txt_box p br {display:none; }

    #wrap section .text_area.single_type p {font-size:14px; }
    /* #wrap section .text_area.single_type .img_box {display:grid; grid-template-columns:repeat(4,1fr); gap:10px;} */
    /* #wrap section .text_area.single_type .img_box img {height:auto; } */
}


@keyframes aniscale {
    0% {-webkit-transform:scale(1.15); -moz-transform:scale(1.15); -o-transform:scale(1.15); transform:scale(1.15);}
    100% {-webkit-transform:scale(1); -moz-transform:scale(1); -o-transform:scale(1); transform:scale(1);}
}



/* ---------------------------------------
            WE
--------------------------------------- */

.sub_we {background-color:#242332; color:#fff; }

.we_visual {position:relative; display:flex; align-items:center; justify-content:center; width:100%; height:740px; background-color:#14116E; }
.we_visual img {position:relative; z-index:2; }
.we_visual .line {position:absolute; z-index:1; max-width:90%; }

.we_cont {display:flex; flex-direction:column; gap:200px; padding:200px 5%; }
.we_cont h3.tit {font-size:60px; color:#fff; font-weight:700; letter-spacing:-0.18px; }

.we_con01 {display:grid; grid-template-columns:repeat(2,1fr); }
.we_con01 p {font-size:18px; line-height:1.6; font-weight:400; letter-spacing:-0.054px; word-break:keep-all; }
.we_con01 p + p {margin-top:40px; }

.we_con02 ul {display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:40px; }
.we_con02 ul li {padding:45px 60px 40px; background-color:#1D1C2C; }
.we_con02 ul li .img_box {margin-bottom:30px; }
.we_con02 ul li .img_box svg {display:block; max-width:80%; margin:0 auto; }
.we_con02 ul li h4 {font-size:18px; font-weight:700; letter-spacing:-0.054px; }
.we_con02 ul li p {margin-top:25px; font-size:16px; font-weight:400; line-height:1.4; letter-spacing:-0.048px; word-break:keep-all; }


@media all and (max-width:1280px){
    .we_con02 ul li {padding:45px 30px 40px; }
}

@media all and (max-width:1024px){
    .we_visual {height:560px; }
    .we_visual img {height:150px; }
    .we_visual .line {display:none; }

    .we_cont {gap:150px; padding:150px 4% 120px; }
    .we_con01 {grid-template-columns:repeat(1,1fr); gap:30px; }

    .we_con02 ul {grid-template-columns:repeat(2,1fr); }
    .we_con02 ul li:last-of-type {grid-column:span 2; }
}

@media all and (max-width:767px){
    .we_visual {height:340px; }
    .we_visual img {height:100px; }

    .we_cont {gap:100px; padding:100px 4% 80px; }
    .we_cont h3.tit {font-size:32px; }
    .we_con01 p {font-size:14px; }
    .we_con01 p + p {margin-top:20px; }

    .we_con02 ul {grid-template-columns:repeat(1,1fr); margin-top:20px; }
    .we_con02 ul li:last-of-type {grid-column:span 1; }
    .we_con02 ul li .img_box svg {max-width:30%; height:auto; }
    .we_con02 ul li h4 {font-size:16px; }
    .we_con02 ul li p {font-size:14px; }
}



/* ---------------------------------------
            BUSINESS
--------------------------------------- */
.sub_business {background-color:#242332; color:#fff; }

.business_visual {overflow:hidden; position:relative; display:flex; align-items:center; justify-content:center; width:100%; height:100dvh; background-color:#14116e; }
.business_visual .tit {text-align:center; }
.business_visual .tit h3 {font-size:54px; font-weight:800; line-height:1.46; letter-spacing:-0.162px; }
.business_visual .tit p {margin-top:5px; font-size:24px; font-weight:500; letter-spacing:-0.072px; }
.business_visual .line {position:absolute; left:0; top:0; right:0; bottom:0; margin:auto; max-width:80%; max-height:90%; animation:rotating 8s linear infinite ; }

.business_cont {padding:200px 5%; }
.business_cont .txt_area {display:grid; grid-template-columns:repeat(2,1fr); padding-bottom:180px; }
.business_cont .txt_area h4 {font-size:60px; color:#fff; font-weight:700; letter-spacing:-0.18px; }
.business_cont .txt_area p {font-size:18px; line-height:1.6; font-weight:400; letter-spacing:-0.054px; word-break:keep-all; }
.business_cont .txt_area p + p {margin-top:40px; }

.business_cont ul {display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.business_cont ul li {position:relative; padding:20px; background:url('../img/business/business_li_bg.png') no-repeat center center / cover; }
.business_cont ul li:not(.type02) i {display:block; margin-bottom:20px; }
.business_cont ul li i img {display:block; }
.business_cont ul li .img_box img {display:block; width:100%; }
.business_cont ul li .img_box.sns_box {position:relative; }
.business_cont ul li .img_box.sns_box .sns_img {position:absolute; left:0; top:0; right:0; bottom:0; width:41%; margin:auto; }
.business_cont ul li .txt_box {padding:50px 0 35px; color:#383838; text-align:center; }
.business_cont ul li .txt_box h5 {font-size:30px; font-weight:700; letter-spacing:-0.09px; word-break:keep-all; }
.business_cont ul li .txt_box p {margin-top:30px; font-size:20px; line-height:1.6; letter-spacing:-0.06px; word-break:keep-all; }

.business_cont ul li.type02 {grid-column:span 3; display:flex; align-items:center; gap:20px; }
.business_cont ul li.type02 i {position:absolute; left:20px; top:20px; }
.business_cont ul li.type02 .img_box {width:57%; }
.business_cont ul li.type02 .img_box .mo_img {display:none; }
.business_cont ul li.type02 .txt_box {width:43%; }

.business_cont ul li:first-of-type i {left:auto; right:20px; }
.business_cont ul li:nth-of-type(2) {flex-direction:row-reverse; margin-bottom:180px; }


@media all and (max-width:1800px){
    .business_cont ul li.type02 br {display:none; }
}
@media all and (max-width:1700px){
    .business_cont ul li br {display:none; }
}

@media all and (max-width:1024px){
    .business_visual {height:560px; }
    .business_visual .line {display:none; }

    .business_cont {padding:150px 4% 120px; }
    .business_cont .txt_area {grid-template-columns:repeat(1,1fr); gap:30px; padding-bottom:120px; }

    .business_cont ul {grid-template-columns:repeat(2,1fr); }
    .business_cont ul li.type02 {grid-column:span 1; display:block; }
    .business_cont ul li:nth-of-type(2) {margin-bottom:0; }
    .business_cont ul li.type02 i {position:static; display:block; margin-bottom:20px; }
    .business_cont ul li.type02 .img_box,
    .business_cont ul li.type02 .txt_box {width:100%; }
    .business_cont ul li.type02 .img_box .mo_img {display:block; }
    .business_cont ul li.type02 .img_box .pc_img {display:none; }

    .business_cont ul li {padding:15px; }
    .business_cont ul li:not(.type02) i ,
    .business_cont ul li i {margin-bottom:15px; }
    .business_cont ul li i img {width:40px;}
    .business_cont ul li .txt_box {padding:45px 0 30px; }
    .business_cont ul li .txt_box h5 {font-size:26px; }
    .business_cont ul li .txt_box p {margin-top:25px; font-size:16px; }

}

@media all and (max-width:767px){
    .business_visual {height:340px; }
    .business_visual .tit h3 {font-size:30px; }
    .business_visual .tit p {margin-top:10px; font-size:14px; }

    .business_cont {padding:100px 4% 80px; }
    .business_cont .txt_area {padding-bottom:80px; }
    .business_cont .txt_area h4 {font-size:32px; }
    .business_cont .txt_area p {font-size:14px; }
    .business_cont .txt_area p + p {margin-top:20px; }

    .business_cont ul {grid-template-columns:repeat(1,1fr); }
    .business_cont ul li.type02 i,
    .business_cont ul li i {margin-bottom:10px; }
    .business_cont ul li i img {width:35px; }
    .business_cont ul li .txt_box {padding:35px 0 20px; }
    .business_cont ul li .txt_box h5 {font-size:20px; }
    .business_cont ul li .txt_box p {margin-top:20px; font-size:14px; }

}

@keyframes rotating {
    0% { transform:rotate(0deg); }
    100% { transform:rotate(360deg); }
}



/* ---------------------------------------
            CONTACT
--------------------------------------- */
.sub_contact {min-height:100vh; background-color:#242332; color:#fff; overflow:hidden; }

.contact_cont {display:flex; height:100vh; min-height:980px; }
.contact_cont .left_box {display:flex; flex-direction:column; justify-content:space-between; background-color:#14116e; }

.contact_cont .left_box,
.contact_cont .contact_area {width:50%; padding:100px 5%;}

.contact_cont .tit_box .icon_area {position:relative; display:flex; width:190px; }
.contact_cont .tit_box .icon_area svg:nth-of-type(2) {position:absolute; left:20px; top:0; animation:circle 2s cubic-bezier(0.65, 0.05, 0.36, 1) infinite alternate; }
.contact_cont .tit_box h3 {font-size:60px; font-weight:800; letter-spacing:-0.18px; }
.contact_cont .tit_box p {width:570px; max-width:100%;  margin-top:35px; font-size:18px; line-height:1.6; letter-spacing:-0.054px; word-break:keep-all; }

.contact_cont .info_box {display:flex; flex-direction:column; gap:20px; }
.contact_cont .info_box a,
.contact_cont .info_box p {display:block; font-size:15px; font-weight:500; letter-spacing:-0.045px; color:rgba(255,255,255,0.5); line-height:1.8; }

.contact_cont .contact_area {display:flex; align-items:center;}
.contact_cont .contact_area .form_area {display:flex; flex-direction:column; gap:40px; width:100%; }
.contact_cont .contact_area .form_box .txt {margin-bottom:15px; font-size:18px;; font-weight:700; letter-spacing:-0.054px; }
.contact_cont .contact_area .select_box,
.contact_cont .contact_area .form_box input {width:100%; height:56px; padding:16px 20px; color:#fff; border:1px solid rgba(255,255,255,0.1); font-size:16px; letter-spacing:-0.048px; background-color:rgba(255,255,255,0.05); transition:all 0.3s; }
.contact_cont .contact_area .form_box input:focus { border:1px solid rgba(255,255,255,0.4); outline:none; }
.contact_cont .contact_area .form_box input::placeholder {color:rgba(255, 255, 255, 0.50); }
.contact_cont .contact_area .form_box input + input {margin-top:10px; }

.contact_cont .contact_area .select_box {position:relative; display:flex; align-items:center; gap:4px; flex-wrap:wrap; min-height:56px; height:auto; padding:10px 44px 10px 20px; cursor:pointer; }
.contact_cont .contact_area .select_box:before {content:''; position:absolute; right:20px; top:calc(50% - 12px); width:24px; height:24px; background:url('../img/select_arrow.svg') no-repeat center center; }

.contact_cont .contact_area .select_box .tag {display:flex; gap:4px; align-items:center; padding:10px 12px 9px 16px; font-size:14px; letter-spacing:-0.042px; border-radius: 50px; background: rgba(255, 255, 255, 0.20); }
.contact_cont .contact_area .select_box .tag img {display:block; }


.contact_cont .contact_area .inquiry_btn {width:100%; height:56px; font-size:16px; color:rgba(255,255,255,0.8); font-weight:700; letter-spacing:-0.048px; background: rgba(44, 41, 151, 0.70); cursor:pointer; transition:all 0.3s; }
.contact_cont .contact_area .inquiry_btn:hover {color:#fff; background: #2C2997;}

.contact_cont .policy_box {display:flex; align-items:center; justify-content:space-between; margin-top:10px; }
.contact_cont .policy_box .check_box input {display:none; }
.contact_cont .policy_box .check_box label {display:flex; align-items:center; gap:5px; font-size:16px; font-weight:700; letter-spacing:-0.048px; cursor:pointer; }
.contact_cont .policy_box .check_box label:before{content:''; display:block; width:24px; height:24px; border:2px solid #fff; border-radius:50%; }
.contact_cont .policy_box .check_box input:checked + label:before {background:url('../img/contact_check.svg') no-repeat center center; }
.contact_cont .policy_box button {display:flex; align-items:center; font-size:14px; color:rgba(255,255,255,0.6); font-weight:700; cursor:pointer; }
.contact_cont .policy_box button:after {content:''; display:block; width:20px; height:20px; background:url('../img/select_arrow.svg') no-repeat center center; transform:scale(0.8); opacity:0.6; }

.policy_modal .modal_body .tit {margin-bottom:20px; }
.policy_modal .policy_area {overflow-y:auto; width:100%; height:300px; border:1px solid rgba(20,17,110,0.3); padding:20px; color:#383838; font-size:14px; font-weight:500; line-height:1.6; letter-spacing:-0.042px; background-color:rgba(20,17,110,0.04); border-radius:3px; }
.policy_modal .policy_area::-webkit-scrollbar{width:4px;height:8px; background:#d9d9d9;}
.policy_modal .policy_area::-webkit-scrollbar-thumb{cursor:pointer;background:#bbb; border-radius:10px; }

@keyframes circle {
    0% {left:20px; }
    100% {left:100%; }
}


.modal {z-index:1000; position:fixed; left:0; top:0; opacity:0; visibility:hidden; display:flex; align-items:center; justify-content:center; width:100%; height:100%; background: rgba(30, 29, 42, 0.50); transition:all 0.3s; }
.modal.open {visibility:visible; opacity:1; }
.modal_wrap {width:600px; max-width:90%; height:auto; box-shadow: 0px 4px 34px 0px rgba(0, 0, 0, 0.25); background-color:#fff; border-radius:3px; }
.modal_body {padding:40px; }
.modal_body .tit {display:flex; align-items:center; justify-content:space-between; margin-bottom:40px; }
.modal_body .tit h4 {font-size:20px; font-weight:700; color:#383838; letter-spacing:-0.06px; }
.modal_body .tit button {cursor:pointer; }

.modal_body .marketing_select {display:flex; flex-wrap:wrap; gap:12px; }
.modal_body .marketing_select input {display:none; }
.modal_body .marketing_select label {display:block; padding:9px 26px; font-size:16px; font-weight:500; letter-spacing:-0.048px; color: rgba(20, 17, 110, 0.60); border-radius: 50px; border: 1px solid rgba(20, 17, 110, 0.30); background: rgba(20, 17, 110, 0.04); transition:all 0.3s; cursor:pointer; }
.modal_body .marketing_select input:checked + label {color:#fff; background-color:#14116E;}

.modal_body .one_select {display:flex; flex-direction:column; gap:16px; }
.modal_body .one_select input {display:none; }
.modal_body .one_select label {display:flex; align-items:center; justify-content:center; height:50px; font-size:16px; font-weight:500; letter-spacing:-0.048px; color: rgba(20, 17, 110, 0.60); border-radius: 3px; border: 1px solid rgba(20, 17, 110, 0.30); background: rgba(20, 17, 110, 0.04); transition:all 0.3s; cursor:pointer; }
.modal_body .one_select input:checked + label {color:#fff; background: #14116E;}

.modal_wrap .confirm_btn {width:100%; height:56px; padding:16px 20px; border:1px solid #fff; font-size:16px; font-weight:700; color:rgba(255,255,255,0.8); background-color:#2c2997; border-radius:0 0 4px 4px; cursor:pointer; }


@media all and (max-width:1024px){
    .contact_cont {display:block; height:auto; }
    .contact_cont .left_box,
    .contact_cont .contact_area {width:100%; padding:120px 5%; }
    .contact_cont .left_box {gap:50px; }
}

@media all and (max-width:767px){
    .contact_cont .left_box,
    .contact_cont .contact_area {width:100%; padding:80px 5% 50px; }

    .contact_cont .tit_box .icon_area {width:135px; }
    .contact_cont .tit_box .icon_area svg {width:20px; height:20px; }
    .contact_cont .tit_box h3 {font-size:40px; }
    .contact_cont .tit_box p {width:440px; margin-top:25px; font-size:14px; }

    .contact_cont .info_box {gap:10px; }
    .contact_cont .info_box a, 
    .contact_cont .info_box p {font-size:12px; }

    .contact_cont .contact_area .form_box .txt {margin-bottom:10px; font-size:16px; }
    .contact_cont .contact_area .select_box, 
    .contact_cont .contact_area .form_box input {height:46px; padding:10px 15px; font-size:14px; }
    .contact_cont .contact_area .select_box {min-height:46px; height:auto; padding:10px 25px 10px 15px; }
    .contact_cont .contact_area .select_box:before {right:5px; }

    .contact_cont .contact_area .form_area {gap:35px; }

    .contact_cont .contact_area .select_box .tag {padding:7px 10px 7px 12px; font-size:12px; }

    @keyframes circle {
        0% {left:8px; }
        100% {left:100%; }
    }


    .modal_body {padding:20px; }
    .modal_body .tit {margin-bottom:30px; }
    .modal_body .marketing_select {gap:6px; }
    .modal_body .marketing_select label {padding:9px 16px; font-size:13px; }
    .modal_body .one_select {gap:6px; }
    .modal_body .one_select label {height:45px; font-size:14px; }
    .modal_wrap .confirm_btn {height:48px; }
}


/* ---------------------------------------
            WORKS
--------------------------------------- */
body.work.sub header.sub_type {background-color:rgba(255,255,255,0.5);}
body.work header {gap:20px; }
body.work header h1 svg {color:#14116e; }
body.work header .menu_btn div {background-color:#14116e; }

.work_cont {padding:150px 5%; }
.work_cont .work_list {display:grid; grid-template-columns:repeat(3,1fr); gap:20px; grid-auto-rows:500px}
.work_cont .work_list li {position:relative; }
.work_cont .work_list li a {display:block; height:100%;max-height:500px;} /*개발시 삭제*/
.work_cont .work_list li img {display:block; opacity:1; transition:all 0.5s;width:100%;height:100%;object-fit:cover;}
.work_cont .work_list li:hover img {opacity:0.9; }
.work_cont .work_list li span {opacity:0; position:absolute; left:0; bottom:0; display:flex; align-items:flex-end; width:100%; height:100%; padding:10%; font-size:34px; color:#fff; font-weight:700; letter-spacing:-0.102px; background-color:rgba(0, 0, 0, 0.5); transition:all 0.5s; }
.work_cont .work_list li:hover span {opacity:1; }

.work_category {display:flex; align-items:center; justify-content:center; gap:20px 40px; flex-wrap:wrap; }
.work_category.mo {display:none; padding:30px 0 50px; }
.work_category li a {font-size:18px; color:#737291; font-weight:800; letter-spacing:-0.054px; }
.work_category li.active a {color:#14116e; }

.work_detail .detail_bg{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:40px; }
.work_detail .detail_bg img{width:100%;object-fit:cover;}
.work_detail .detail_bg video{background:#fafafa;}
.work_detail .detail_bg img,
.work_detail .detail_bg video{height:100dvh;}
.work_detail .detail_bot {display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background-color:#d5d5d6; margin-top:40px;}
.work_detail .detail_bot a {display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; height:200px; background-color:#eee; }
.work_detail .detail_bot a span {font-size:12px; font-weight:500; letter-spacing:-0.036px; color:rgba(56,56,56,0.6); }
.work_detail .detail_bot a b {font-size:28px; font-weight:900; letter-spacing:-0.084px; color:#383838; }


@media all and (max-width:1024px){
    .work_cont {padding:150px 4% 120px; }
    .work_cont .work_list {grid-template-columns:repeat(2,1fr); }
.work_detail .detail_bg img{height:auto!important;}
}

@media all and (max-width:767px){
    .work_cont {padding:80px 4% 50px; }
    .work_cont .work_list {grid-template-columns:repeat(1,1fr); }

    .work_category.pc {display:none; }
    .work_category.mo {display:flex; }
    .work_category {gap:15px 25px; }

    .work_category li a {font-size:16px; }

    .work_detail .detail_bot {grid-template-columns:repeat(1,1fr);}
    .work_detail .detail_bot a {height:100px; }
    .work_detail .detail_bot a span {font-size:10px; }
    .work_detail .detail_bot a b {font-size:24px; }

    .work_detail .detail_bg video{height:auto;}
}

/* 컨트롤러 전체 감추기 */
video::-webkit-media-controls { display:none !important; }