/* 메인페이지 */
.mainpage { margin-top: 0; }
.mainpage .sec2 { background: #eeeeee; padding: 120px 0; }
.mainpage .sec2 h2 { font-size: 32px; letter-spacing: -0.96px; margin-bottom: 56px; }
.mainpage .sec2 .sec-con> li { width: 25%; padding: 62px 20px 124px; background: #fff; text-align: center; border: 1px solid #707070; border-right: 0; position: relative; overflow: hidden; height: auto; }
.mainpage .sec2 .sec-con> li:last-child { border-right: 1px solid #707070; }
.mainpage .sec2 .sec-con> li .title { font-size: 24px; margin-bottom: 16px; letter-spacing: -0.72px; font-weight: bold; }
.mainpage .sec2 .sec-con> li .dot { display: block; width: 26px; height: 26px; border-radius: 50%; margin: 0 auto 30px; }
.mainpage .sec2 .sec-con> li:nth-child(1) .dot { background: #134788; }
.mainpage .sec2 .sec-con> li:nth-child(2) .dot { background: #f56824; }
.mainpage .sec2 .sec-con> li:nth-child(3) .dot { background: #cf212a; }
.mainpage .sec2 .sec-con> li:nth-child(4) .dot { background: #f5bd1c; }
.mainpage .sec2 .sec-con> li .txt-box li { font-size: 18px; line-height: 1.67; letter-spacing: -0.54px; }
.mainpage .sec2 .sec-con> li:hover .hover-box { transform: translateY(0%); }
.mainpage .sec2 .sec-con> li .hover-box { padding: 64px; background: #cf212a; position: absolute; bottom: 0; width: 100%; left: 0; transition: .3s; transform: translateY(100%); }
.mainpage .sec2 .sec-con> li .hover-box .more-btn { width: 160px; height: 50px; border-radius: 25px; border: 1px solid #fff; font-size: 18px; color: #fff; letter-spacing: -0.54px; line-height: 48px; margin: 0 auto; }
.mainpage .sec2 .sec-con> li .hover-box .more-btn:hover { font-weight: bold; border: 2px solid #fff; line-height: 46px; }
.mainpage .sec3 .sec-title { padding-top: 150px; padding-bottom: 140px; background: url(../images/sub_top.jpg) no-repeat; background-size: cover; background-position: center; display: flex; align-items: center; }
.mainpage .sec3 .sec-title .container { width: 1680px; }
.mainpage .sec3 .sec-title h2 { font-size: 36px; line-height: 1.67; letter-spacing: -1.08px; color: #fff; }
.mainpage .sec3 .sec-con { padding-top: 117px; padding-bottom: 113px; background: #eeeeee; }
.mainpage .sec3 .sec-con li { gap: 32px; width: 25%; }
.mainpage .sec3 .sec-con li .dot { display: block; width: 26px; height: 26px; border-radius: 50%; }
.mainpage .sec3 .sec-con li:nth-child(1) .dot { background: #134788; }
.mainpage .sec3 .sec-con li:nth-child(2) .dot { background: #f56824; }
.mainpage .sec3 .sec-con li:nth-child(3) .dot { background: #cf212a; }
.mainpage .sec3 .sec-con li:nth-child(4) .dot { background: #f5bd1c; }
.mainpage .sec3 .sec-con li .title { font-size: 20px; letter-spacing: -0.6px; margin-bottom: 21px; }
.mainpage .sec3 .sec-con li .txt { font-size: 18px; line-height: 1.67; letter-spacing: -0.54px; }
.mainpage .sec4 { padding: 120px 0; }
.mainpage .sec4 h2 { font-size: 36px; letter-spacing: -0.96px; margin-bottom: 60px; }
.mainpage .sec4 .map-box { margin-bottom: 32px; }
.mainpage .sec4 .map-box> div { width: 100%; height: 600px; }
.mainpage .sec4 .map-box> div .wrap_map { height: 100%; }
.mainpage .sec4 .txt-box { gap: 32px; margin-bottom: 80px; }
.mainpage .sec4 .txt-box li { width: 50%; gap: 24px; align-items: center; }
.mainpage .sec4 .txt-box li img { width: 48px; }
.mainpage .sec4 .txt-box li p { font-size: 18px; line-height: 1.67; letter-spacing: -0.54px; flex-flow: column; gap: 8px; }
.mainpage .sec4 .inq-btn { width: 160px; height: 50px; border-radius: 25px; border: 1px solid #cf212a; text-align: center; line-height: 48px; color: #cf212a; font-size: 18px; background: #fff; margin: 0 auto; transition: .3s; }
.mainpage .sec4 .inq-btn:hover { background: #cf212a; color: #fff; }

@media screen and (max-width:1920px) {
    .mainpage .sec2 h2 { margin-bottom: 36px; }
    .mainpage .sec2 .sec-con> li { padding: 40px 20px 100px; }
    .mainpage .sec2 .sec-con> li .title { font-size: 22px; }
    .mainpage .sec2 .sec-con> li .dot { width: 20px; height: 20px; margin: 0 auto 24px; }
    .mainpage .sec2 .sec-con> li .txt-box li { font-size: 16px; }
    .mainpage .sec3 .sec-title { padding-top: 100px; padding-bottom: 100px; min-height: calc( 100vh - 224px );}
	.mainpage .sec3 .sec-title .container { width: 1280px; }
    .mainpage .sec3 .sec-title h2 { font-size: 28px; line-height: 1.4; letter-spacing: -0.84px; }
    .mainpage .sec3 .sec-con { padding: 60px 0; }
    .mainpage .sec3 .sec-con li { gap: 18px; }
    .mainpage .sec3 .sec-con li .dot { width: 20px; height: 20px; }
    .mainpage .sec3 .sec-con li .title { font-size: 18px; margin-bottom: 16px; }
    .mainpage .sec3 .sec-con li .txt { font-size: 14px; }
    .mainpage .sec3 .sec-con li .txt .pc { display: none; }
    .mainpage .sec3 .sec-con li .txt .mb { display: unset; }
    .mainpage .sec4 .container { width: 1024px; }
    .mainpage .sec4 .map-box> div { height: 350px; }
    .mainpage .sec4 .txt-box { margin-bottom: 40px; }
    .mainpage .sec4 .txt-box li:first-child { width: 55%; }
    .mainpage .sec4 .txt-box li:last-child { width: 45%; }
    .mainpage .sec4 .txt-box li p { font-size: 16px; }
}

@media screen and (max-width:1280px) {
	.mainpage .sec3 .sec-title .container { width: 100%; }
    .mainpage .sec4 { padding-top: 40px; }
}

@media screen and (max-width:1024px) {
    .mainpage .sec2 { padding: 40px 0; }
    .mainpage .sec2 h2 { font-size: 20px; margin-bottom: 20px; padding-left: 24px; }
    .mainpage .sec2 .container { padding: 0; }
    .mainpage .sec2 .sec-con> li { width: 70vw; max-width: 500px; padding-top: 32px; padding-bottom: 40px; min-width: 254px; border: 1px solid #707070; }
    .mainpage .sec2 .sec-con> li .title { font-size: 18px; margin-bottom: 18px; }
    .mainpage .sec2 .sec-con> li .dot { width: 26px; height: 26px; margin: 0 auto 40px; }
    .mainpage .sec2 .sec-con> li .txt-box li { line-height: 1.88; }

    .mainpage .sec2 .swiper-container { padding-bottom: 30px; }
    .mainpage .sec2 .swiper-pagination { bottom: 0; }
    .mainpage .sec2 .swiper-pagination-bullet { width: 10px; height: 10px; background: #fff; opacity: 1; }
    .mainpage .sec2 .swiper-pagination-bullet-active { background: #cf212a; border: 2px solid #fff; }

    .mainpage .sec3 .sec-title { padding-top: 40px; padding-bottom: 64px; min-height: unset;}
    .mainpage .sec3 .sec-title h2 { font-size: 18px; line-height: 1.83; letter-spacing: -0.54px; }
    .mainpage .sec3 .sec-con { padding: 40px 0; }
    .mainpage .sec3 .sec-con ul { flex-flow: column; gap: 16px; }
    .mainpage .sec3 .sec-con li { gap: 16px; width: 100%; }
    .mainpage .sec3 .sec-con li .dot { width: 22px; height: 22px; }
    .mainpage .sec3 .sec-con li .title { margin-bottom: 10px; }
    .mainpage .sec3 .sec-con li .txt { font-size: 16px; }

    .mainpage .sec4 { padding-top: 0; padding-bottom: 40px; }
    .mainpage .sec4 .container { width: 100%; }
    .mainpage .sec4 h2 { font-size: 20px; margin-bottom: 20px; padding-top: 40px; }
    .mainpage .sec4 .map-box> div { height: 40vh; max-height: 350px; }
    .mainpage .sec4 .txt-box { flex-flow: column; gap: 24px; }
    .mainpage .sec4 .txt-box li { gap: 16px; align-items: flex-start; }
    .mainpage .sec4 .txt-box li:first-child,.mainpage .sec4 .txt-box li:last-child { width: 100%; }
    .mainpage .sec4 .txt-box li p { font-size: 16px; }
    .mainpage .sec4 .txt-box li img { width: 36px; }
    .mainpage .sec4 .txt-box li p { font-size: 14px; line-height: 1.43; letter-spacing: -0.42px; }
    .mainpage .sec4 .txt-box li p span:last-child { font-size: 10px; }
    .mainpage .sec4 .inq-btn { width: 136px; height: 38px; border-radius: 19px; line-height: 36px; font-size: 16px; }
}


/* 문의하기 */
.inquiry-wrap .header-wrap .sub-gnb { display: none; }
.form-wrap .inquiry-form { padding: 80px 0 120px; width: 1160px; }
.form-wrap .form-list { flex-flow: wrap; gap: 40px 7.3vw; margin-bottom: 80px; }
.form-wrap .form-list li { width: 100%; }
.form-wrap .form-list li.half { width: calc( ( 100% - 7.3vw ) /2 ); }
.form-wrap .form-list li .default { font-size: 18px; font-weight: bold; margin-bottom: 16px; }
.form-wrap .form-list li .default .sub-tit { display: block; font-size: 16px; font-weight: normal; padding-top: 16px; }
.form-wrap .form-list li .user { position: relative; }
.form-wrap .form-list li .user input { border: 0; outline: 0; font-size: 16px; width: 100%; padding-bottom: 8px; border-bottom: 1px solid #707070; }
.form-wrap .form-list li .user .select-list { position: absolute; top: 0; left: 0; z-index: 999; width: 250px; text-align: center; font-weight: bold; display: none; }
.form-wrap .form-list li .user .select-list li { padding: 13px 0; cursor: pointer; }
.form-wrap .form-list li .user .select-list li:hover { color: #bf0001; }
.form-wrap .form-list li .user #select_default { font-size: 16px; color: #454545; line-height: 42px; padding: 0; height: 42px; width: 250px; font-weight: bold;  text-align: center; color: #bf0001; cursor: pointer; position: relative; z-index: 999; background: #fff; } 
.form-wrap .form-list li .user #select_default::after { content: ""; display: block; position: absolute; top: 0; left: 0; width: 250px; height: 42px; border-radius: 24px; border: 1px solid #bf0001; z-index: 99; transition: .3s; box-sizing: border-box; background: transparent; }
.form-wrap .form-list li .user #select_default.active::after { height: 126px; border: 1px solid #bbb4b1;background: #fff; }
.form-wrap .form-list li .user .select-down { position: absolute; left: 214px; top: 50%; transform: translateY(-50%); color: #bf0001; z-index: 999; cursor: pointer; }
.form-wrap .agree-wrap { margin-bottom: 60px; }
.form-wrap .agree-wrap label { display: flex; align-items: center; gap: 6px; cursor: pointer; width: fit-content; margin-bottom: 16px; }
.form-wrap .agree-wrap label p { font-size: 18px; letter-spacing: -0.54px; }
.form-wrap .agree-wrap textarea { width: 100%; border: 1px solid #707070; padding: 16px; height: 150px; outline: 0; font-size: 14px; color: #454545; line-height: 1.5; }
.form-wrap button[type='submit'] { width: 160px; height: 50px; margin: 0 auto; display: block; border-radius: 25px; border: 1px solid #bf0001; font-size: 18px; font-weight: bold; color: #bf0001; transition: .3s; }
.form-wrap button[type='submit']:hover { background: #bf0001; color: #fff; }

/* Inquiry */
.inquiry-wrap .form-list li .user .select-list { position: static; width: unset; text-align: left; display: block; padding: 12px 16px; border-radius: 16px; border: 2px solid #eee; width: fit-content; }
.inquiry-wrap .form-list li .user .select-list input[type="radio"] { display: none; }
.inquiry-wrap .form-list li .user .select-list li { padding: 0; padding-bottom: 8px; }
.inquiry-wrap .form-list li .user .select-list li:last-child { padding-bottom: 0; }
.inquiry-wrap .form-list li .user .select-list li p { cursor: pointer; padding-left: 32px; position: relative; }
.inquiry-wrap .form-list li .user .select-list li p::before { content: ""; display: block; width: 16px; height: 16px; border-radius: 50%; background: #eeeeee; position: absolute; left: 0; top: 50%; transform: translateY(-50%); }
.inquiry-wrap .form-list li .user .select-list li p::after { content: ""; display: block; width: 8px; height: 8px; border-radius: 50%; background: #c00000; position: absolute; left: 4px; top: 50%; transform: translateY(-50%); display: none; }
.inquiry-wrap .form-list li .user .select-list input[type="radio"]:checked + p { color: #bf0001; }
.inquiry-wrap .form-list li .user .select-list input[type="radio"]:checked + p::after { display: block; }
.inquiry-wrap .form-list li .user .select-list li:hover p { color: #bf0001; }
.inquiry-wrap .form-list li .user textarea { width: 100%; border: 1px solid #707070; padding: 16px; height: 128px; outline: 0; font-size: 14px; color: #454545; line-height: 1.5; }

@media screen and (max-width: 768px) {
    /* 문의하기 */
    .form-wrap .inquiry-form { padding: 30px 24px 40px; }
    .form-wrap .form-list { gap: 32px 7.3vw; margin-bottom: 40px; }
    .form-wrap .form-list li.half { width: 100%; }
    .form-wrap .form-list li .default { font-size: 16px; }
    .form-wrap .form-list li .default .sub-tit { font-size: 14px; padding-top: 8px; }
    .form-wrap .form-list li .user input { font-size: 14px; }
    .form-wrap .form-list li .user .select-list { width: 200px; }
    .form-wrap .form-list li .user .select-list li { font-size: 14px; }
    .form-wrap .form-list li .user #select_default { width: 200px; height: 38px; font-size: 14px; line-height: 38px; } 
    .form-wrap .form-list li .user #select_default::after { width: 200px; height: 38px; border-radius: 19px; }
    .form-wrap .form-list li .user #select_default.active::after { height: 108px; }
    .form-wrap .form-list li .user .select-down { left: 170px; font-size: 13px; }
    .form-wrap .agree-wrap { margin-bottom: 24px; }
    .form-wrap .agree-wrap label { margin-bottom: 12px; }
    .form-wrap .agree-wrap label p { font-size: 14px; }
    .form-wrap .agree-wrap textarea { padding: 8px; font-size: 12px; }
    .form-wrap button[type='submit'] { width: 136px; height: 38px; border-radius: 20px; font-size: 16px; line-height: 1; }

    .inquiry-wrap .form-list li .user textarea { font-size: 14px; padding: 8px; }
}

/* 서브페이지 */
/* .subpage .sub-top { padding: 90px 120px 80px; background: url(../images/sub_top.jpg) no-repeat; background-size: cover; background-position: center; }
.subpage .sub-top h2 { font-size: 40px; color: #fff; line-height: 1.5; }
.subpage .sub-con .sub-con-title { font-size: 32px; letter-spacing: -0.96px; margin-bottom: 60px; } */
.sub-gnb { position: fixed; left: 0; right: 0; top: 90px; gap: 16px; width: 100%; background: #fff; z-index: 9999; padding: 24px 0; padding-left: calc( (100% - 1680px) /2 ); box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.16);}
.sub-gnb ul { gap: 16px; align-items: center; }
.sub-gnb li { width: auto; height: fit-content; }
.sub-gnb li a { width: 154px; height: 42px; border-radius: 21px; color: #454545; border: 1px solid transparent; text-align: center; line-height: 42px; font-size: 18px; font-weight: bold; transition: .3s; background: #fff; border: 1px solid #c00000 }
.sub-gnb li:hover a { color: #c00000; }
.sub-gnb li.active a { color: #c00000; }

@media screen and (max-width:1920px) {
    .sub-gnb { top: 70px; padding: 0 32px; height: 60px; align-items: center; }
	.sub-gnb li a { width: 140px; height: 36px; border-radius: 20px; line-height: 36px; font-size: 16px; }
}

@media screen and (max-width:768px) {
	.sub-gnb { top: 56px; gap: unset; padding: 12px 0; padding-left: 24px; padding-right: 24px; gap: 8px; }
    .sub-gnb ul { gap: 0; }
    .sub-gnb li { width: fit-content; }
	.sub-gnb li a { width: unset; padding: 0 16px; height: 32px; border-radius: 16px; line-height: 32px; font-size: 16px; }
}

/* About */
.about-wrap .header-wrap .gnb li:nth-child(1) a { color: #bf0001; }
.about-wrap .header-wrap .gnb li:nth-child(1) a::after { display: block; }

.subpage .sub-top-title { padding-top: 320px; padding-bottom: 140px; background: url(../images/sub_top.jpg) no-repeat; background-size: cover; background-position: center; display: flex; align-items: center;}
.subpage .sub-top-title .container { width: 1680px; }
.subpage .sub-top-title h2 { font-size: 36px; line-height: 1.67; letter-spacing: -1.08px; color: #fff; }
.subpage .sub-top-title h2 .br { display: block; height: 36px; }

.about-wrap .sub-top-con { padding-top: 117px; padding-bottom: 113px; background: #eeeeee; }
.about-wrap .sub-top-con li { gap: 32px; width: 25%; }
.about-wrap .sub-top-con li .dot { display: block; width: 26px; height: 26px; border-radius: 50%; }
.about-wrap .sub-top-con li:nth-child(1) .dot { background: #134788; }
.about-wrap .sub-top-con li:nth-child(2) .dot { background: #f56824; }
.about-wrap .sub-top-con li:nth-child(3) .dot { background: #cf212a; }
.about-wrap .sub-top-con li:nth-child(4) .dot { background: #f5bd1c; }
.about-wrap .sub-top-con li .title { font-size: 20px; letter-spacing: -0.6px; margin-bottom: 21px; }
.about-wrap .sub-top-con li .txt { font-size: 18px; line-height: 1.67; letter-spacing: -0.54px; }

.about-wrap .sub-con .con-title { font-size: 36px; letter-spacing: -1.08px; margin-bottom: 60px; }
.about-wrap .sub-con .info-list { width: 50%; }
.about-wrap .sub-con .info-list .title { width: 120px; font-size: 20px; padding-left: 16px; position: relative; padding-top: 5px; padding-bottom: 5px; font-weight: bold; }
.about-wrap .sub-con .info-list .title::after { content: ""; display: block; width: 3px; height: 26px; background: #c00000; position: absolute; left: 0; top: 7px; }
.about-wrap .sub-con .info-list .txt { padding: 8px 0; width: calc( 100% - 120px ); border-bottom: 1px solid #707070; font-weight: bold; }
.about-wrap .sub-con .info-list .txt-list li { width: 100%; padding: 8px 0; border-bottom: 1px solid #707070; gap: 12px; }
.about-wrap .sub-con .info-list .txt-list li:first-child { padding-top: 0; }
.about-wrap .sub-con .info-list .txt-list li:last-child { padding-bottom: 0; border-bottom: 0; }
.about-wrap .sub-con .info-list .txt-list .sub-txt { font-weight: normal; }
.about-wrap .sub-con .con-txt { font-size: 20px; line-height: 1.8; letter-spacing: -0.6px; color: #454545; }

.about-wrap .sub-con#about_2 { padding-top: 180px; padding-bottom: 120px; position: relative; }
.about-wrap .sub-con#about_2 img { position: absolute; top: 0; right: 0; height: 100%; width: 100%; object-fit: contain; object-position: right; max-width: 1024px; z-index: -1; }
.about-wrap .sub-con#about_3 { padding-top: 60px; padding-bottom: 120px; }

@media screen and (max-width:1920px) {
	.about-wrap .sub-top-title { padding-top: 210px; padding-bottom: 80px; }
	.about-wrap .sub-top-title .container { width: 1280px; }
    .about-wrap .sub-top-title h2 { font-size: 26px; letter-spacing: -0.84px; }
    .about-wrap .sub-top-con { padding: 64px 0; }
    .about-wrap .sub-top-con li { gap: 18px; }
    .about-wrap .sub-top-con li .dot { width: 20px; height: 20px; }
    .about-wrap .sub-top-con li .title { font-size: 18px; margin-bottom: 16px; }
    .about-wrap .sub-top-con li .txt { font-size: 14px; }
    .about-wrap .sub-top-con li .txt .pc { display: none; }
    .about-wrap .sub-top-con li .txt .mb { display: unset; }

    .about-wrap .sub-con .con-title { font-size: 30px; letter-spacing: -0.84px; margin-bottom: 32px; }
    .about-wrap .sub-con .info-list .title { width: 100px; font-size: 16px; padding-left: 12px; padding-top: 3px; padding-bottom: 3px; }
    .about-wrap .sub-con .info-list .title::after { width: 2px; height: 20px; left: 0; top: 7px; }
    .about-wrap .sub-con .info-list .txt { padding: 4px 0; width: calc( 100% - 100px ); font-size: 14px; }
    .about-wrap .sub-con .info-list .txt-list li { padding: 4px 0; gap: 8px; }
    .about-wrap .sub-con .con-txt { font-size: 16px; line-height: 1.6; letter-spacing: -0.4px; }
}

@media screen and (max-width:1280px) {
    .about-wrap .sub-top-title .container { width: 100%; }
    .about-wrap .sub-top-con { padding: 24px 0; }
}

@media screen and (max-width:1024px) {
	.about-wrap .sub-top-title h2 { font-size: 18px; line-height: 1.83; letter-spacing: -0.54px; }
    .about-wrap .sub-top-con { padding: 40px 0; }
    .about-wrap .sub-top-con ul { flex-flow: column; gap: 16px; }
    .about-wrap .sub-top-con li { gap: 16px; width: 100%; }
    .about-wrap .sub-top-con li .dot { width: 22px; height: 22px; }
    .about-wrap .sub-top-con li .title { margin-bottom: 10px; }
    .about-wrap .sub-top-con li .txt { font-size: 16px; }

    .about-wrap .sub-con .con-title { font-size: 20px; letter-spacing: -0.6px; margin-bottom: 24px; padding-top: 40px; }
    .about-wrap .sub-con .info-list { width: 100%; margin-bottom: 40px; padding: 0 24px; }
    .about-wrap .sub-con .info-list .title { width: 90px; font-size: 16px; padding-left: 12px; }
    .about-wrap .sub-con .info-list .title::after { width: 2px; height: 24px; top: 4px; }
    .about-wrap .sub-con .info-list .txt { padding: 8px 0; width: calc( 100% - 90px ); border-bottom: 1px solid #707070; font-weight: bold; }
    .about-wrap .sub-con .info-list> li:last-child .txt { border-bottom: 0; }
    .about-wrap .sub-con .info-list .txt-list li { width: 100%; gap: 4px; flex-flow: column; }
    .about-wrap .sub-con .con-txt { font-size: 14px; line-height: 1.86; letter-spacing: -0.42px; padding-bottom: 40px; }

    .about-wrap .sub-con#about_2 { padding: 0; }
    .about-wrap .sub-con#about_2 .container { padding: 0; }
    .about-wrap .sub-con#about_2 .con-title { padding-left: 24px; }
    .about-wrap .sub-con#about_2, .about-wrap .sub-con#about_2 img { position: static; }
    .about-wrap .sub-con#about_3 { padding-top: 0; padding-bottom: 0; }
}

@media screen and (max-width:768px) {
    .about-wrap .sub-top-title { padding-top: 100px; padding-bottom: 40px; min-height: unset;}
}

/* Client */
.client-wrap .header-wrap .gnb li:nth-child(2) a { color: #bf0001; }
.client-wrap .header-wrap .gnb li:nth-child(2) a::after { display: block; }
.client-wrap .sub-con { padding: 120px 0; }
.client-wrap .sub-con h3 { font-size: 36px; letter-spacing: -1.08px; margin-bottom: 82px; }
.client-wrap .sub-con ul { flex-flow: wrap; gap: 20px; }
.client-wrap .sub-con ul li { width: calc( ( 100% - 20px * 4 ) / 5 ); }
.client-wrap .sub-con ul li .img-box { position: relative; padding-top: 35.135%; width: 100%; }
.client-wrap .sub-con ul li .img-box img { position: absolute; top: 0; right: 0; left: 0; bottom: 0; width: 100%; height: 100%; object-fit: contain; object-position: center; }

@media screen and (max-width:1920px) {
    .client-wrap .sub-top-title { padding-top: 210px; padding-bottom: 80px; }
	.client-wrap .sub-top-title .container { width: 1280px; }
    .client-wrap .sub-top-title h2 { font-size: 26px; line-height: 1.4; letter-spacing: -0.84px; }
    .client-wrap .sub-con { width: 1024px; }
    .client-wrap .sub-con h3 { font-size: 30px; letter-spacing: -0.84px; margin-bottom: 40px; }
}

@media screen and (max-width:1024px) {
	.client-wrap .sub-top-title h2 { font-size: 18px; line-height: 1.83; letter-spacing: -0.54px; }
    .client-wrap .sub-con { padding: 40px 24px; min-height: unset; }
    .client-wrap .sub-con h3 { font-size: 20px; margin-bottom: 20px; }
    .client-wrap .sub-con ul { gap: 20px 8px; }
    .client-wrap .sub-con ul li { width: calc( ( 100% - 8px ) / 2 ); }
}

@media screen and (max-width:768px) {
    .client-wrap { margin-top: 56px; }
    .client-wrap .sub-top-title { padding-top: 100px; padding-bottom: 40px; min-height: unset;}
}


/* OurService */
.ourservice-wrap .header-wrap .gnb li:nth-child(3) a { color: #bf0001; }
.ourservice-wrap .header-wrap .gnb li:nth-child(3) a::after { display: block; }

.ourservice-wrap .sub-top-title { padding-top: 320px; }
.ourservice-wrap .sub-top-con { background: #eeeeee; padding: 120px 0; }
.ourservice-wrap .sub-top-con h2 { font-size: 32px; letter-spacing: -0.96px; margin-bottom: 56px; }
.ourservice-wrap .sub-top-con .sec-con> li { width: 25%; padding: 62px 20px 124px; background: #fff; text-align: center; border: 1px solid #707070; border-right: 0; position: relative; overflow: hidden; height: auto; }
.ourservice-wrap .sub-top-con .sec-con> li:last-child { border-right: 1px solid #707070; }
.ourservice-wrap .sub-top-con .sec-con> li .title { font-size: 24px; margin-bottom: 16px; letter-spacing: -0.72px; }
.ourservice-wrap .sub-top-con .sec-con> li .dot { display: block; width: 26px; height: 26px; border-radius: 50%; margin: 0 auto 30px; }
.ourservice-wrap .sub-top-con .sec-con> li:nth-child(1) .dot { background: #134788; }
.ourservice-wrap .sub-top-con .sec-con> li:nth-child(2) .dot { background: #f56824; }
.ourservice-wrap .sub-top-con .sec-con> li:nth-child(3) .dot { background: #cf212a; }
.ourservice-wrap .sub-top-con .sec-con> li:nth-child(4) .dot { background: #f5bd1c; }
.ourservice-wrap .sub-top-con .sec-con> li .txt-box li { font-size: 18px; line-height: 1.67; letter-spacing: -0.54px; }
.ourservice-wrap .sub-top-con .sec-con> li:hover .hover-box { transform: translateY(0%); }
.ourservice-wrap .sub-top-con .sec-con> li .hover-box { padding: 64px; background: #cf212a; position: absolute; bottom: 0; width: 100%; left: 0; transition: .3s; transform: translateY(100%); }
.ourservice-wrap .sub-top-con .sec-con> li .hover-box .more-btn { width: 160px; height: 50px; border-radius: 25px; border: 1px solid #fff; font-size: 18px; color: #fff; letter-spacing: -0.54px; line-height: 48px; margin: 0 auto; }
.ourservice-wrap .sub-top-con .sec-con> li .hover-box .more-btn:hover { font-weight: bold; border: 2px solid #fff; line-height: 46px; }

.ourservice-wrap .sub-con { padding: 120px 0; }
.ourservice-wrap .sub-con .con-title { font-size: 32px; letter-spacing: -0.96px; margin-bottom: 56px; }
.ourservice-wrap .sub-con .con-list { flex-flow: wrap; gap: 72px 12px; }
.ourservice-wrap .sub-con .con-list li { width: calc( ( 100% - 12px * 2 ) / 3 ); }
.ourservice-wrap .sub-con .con-list .img-box { margin-bottom: 40px; }
.ourservice-wrap .sub-con .con-list .txt { font-size: 20px; letter-spacing: -0.6px; padding-left: 16px; position: relative; font-weight: bold; }
.ourservice-wrap .sub-con .con-list .txt::after { content: ""; display: block; position: absolute; width: 3px; height: 26px; left: 0; top: 50%; transform: translateY(-50%); background: #cf212a; }

@media screen and (max-width:1920px) {
    .ourservice-wrap .sub-top-title { padding-top: 210px; padding-bottom: 80px; }
	.ourservice-wrap .sub-top-title .container { width: 1280px; }
    .ourservice-wrap .sub-top-title h2 { font-size: 26px; line-height: 1.4; letter-spacing: -0.84px; }

    .ourservice-wrap .sub-top-con h2 { margin-bottom: 36px; }
    .ourservice-wrap .sub-top-con .sec-con> li { padding: 40px 20px 100px; }
    .ourservice-wrap .sub-top-con .sec-con> li .title { font-size: 22px; }
    .ourservice-wrap .sub-top-con .sec-con> li .dot { width: 20px; height: 20px; margin: 0 auto 24px; }
    .ourservice-wrap .sub-top-con .sec-con> li .txt-box li { font-size: 16px; }

    .ourservice-wrap .sub-con .container { width: 1024px; }
    .ourservice-wrap .sub-con .con-title { font-size: 28px; margin-bottom: 32px; }
    .ourservice-wrap .sub-con .con-list { gap: 40px 12px; }
    .ourservice-wrap .sub-con .con-list .img-box { margin-bottom: 24px; }
    .ourservice-wrap .sub-con .con-list .txt { font-size: 18px; }
    .ourservice-wrap .sub-con .con-list .txt::after { height: 20px; }
}

@media screen and (max-width:1280px) { 
    .ourservice-wrap .sub-top-title .container { width: 100%; }
 }

@media screen and (max-width:1024px) { 
    .ourservice-wrap .sub-con .container { width: 100%; }
    .ourservice-wrap .sub-top-title { font-size: 20px; }
    .ourservice-wrap .sub-top-title h2 { font-size: 18px; line-height: 1.83; letter-spacing: -0.54px; }
    .ourservice-wrap .sub-top-con { padding: 0; padding-bottom: 40px; }
    .ourservice-wrap .sub-top-con h2 { padding-top: 36px; margin-bottom: 32px; font-size: 20px; padding-left: 24px; }
    .ourservice-wrap .sub-top-con .container { padding: 0; }
    .ourservice-wrap .sub-top-con .sec-con> li { width: 70vw; max-width: 500px; padding-top: 32px; padding-bottom: 40px; min-width: 254px; border: 1px solid #707070; height: auto; }
    .ourservice-wrap .sub-top-con .sec-con> li .title { font-size: 18px; margin-bottom: 18px; }
    .ourservice-wrap .sub-top-con .sec-con> li .dot { width: 26px; height: 26px; margin: 0 auto 40px; }
    .ourservice-wrap .sub-top-con .sec-con> li .txt-box li { line-height: 1.88; }

    .ourservice-wrap .sub-top-con .swiper-container { padding-bottom: 30px; }
    .ourservice-wrap .sub-top-con .swiper-pagination { bottom: 0; }
    .ourservice-wrap .sub-top-con .swiper-pagination-bullet { width: 10px; height: 10px; background: #fff; opacity: 1; }
    .ourservice-wrap .sub-top-con .swiper-pagination-bullet-active { background: #cf212a; border: 2px solid #fff; }

    .ourservice-wrap .sub-con { padding-top: 40px; padding-bottom: 40px; }
    .ourservice-wrap .sub-con, .ourservice-wrap .sub-con>div { height: unset !important; } 
    .ourservice-wrap .sub-con .con-title { padding-top: 0; font-size: 18px; margin-bottom: 24px; }
    .ourservice-wrap .sub-con .con-list { gap: 24px; }
    .ourservice-wrap .sub-con .con-list li { width: 100%; }
    .ourservice-wrap .sub-con .con-list .txt { font-size: 16px; }
}

@media screen and (max-width:768px) {
    .client-wrap { margin-top: 56px; }
    .ourservice-wrap .sub-top-title { min-height: unset; padding-top: 100px; padding-bottom: 40px; }
}

/* Careers */
.careers-wrap .header-wrap .gnb li:nth-child(4) a, .careers-dt-wrap .header-wrap .gnb li:nth-child(4) a { color: #bf0001; }
.careers-wrap .header-wrap .gnb li:nth-child(4) a::after, .careers-dt-wrap .header-wrap .gnb li:nth-child(4) a::after { display: block; }

.careers-wrap .sub-con { padding: 80px 0; }
.careers-wrap .sub-con .con-title { font-size: 32px; letter-spacing: -0.96px; margin-bottom: 56px; }
.careers-wrap .sub-con img { margin-bottom: 80px; }
.careers-wrap .careers-btn { width: 160px; height: 50px; margin: 0 auto; display: block; border-radius: 25px; border: 1px solid #bf0001; font-size: 18px; font-weight: bold; color: #bf0001; transition: .3s; text-align: center; line-height: 48px; }
.careers-wrap .careers-btn:hover { background: #bf0001; color: #fff; }

.careers-dt-wrap .sub-con { padding: 120px 0; width: 1160px; margin-top: 90px; }

.form-wrap.careers-dt-wrap  .form-list li .user #select_default.active::after { height: 336px; }
.form-wrap .form-list li .file-upload-btn { display: block; width: 120px; line-height: 42px; height: 42px; text-align: center; cursor: pointer; border-radius: 21px; border: 1px solid #bf0001; font-size: 18px; color: #bf0001; font-weight: bold; transition: .3s; }
.form-wrap .form-list li .file-upload-btn:hover { color: #fff; background: #bf0001; }
.form-wrap .form-list li .user { gap: 12px; align-items: center; }
.form-wrap .form-list li .user .upload-list { display: flex; flex-flow: wrap; gap: 16px; overflow-x: scroll; justify-content: flex-start; display: none;  max-width: calc( 100% - 12px - 120px );}
.form-wrap .form-list li .user .upload-list li { width: fit-content; }

@media screen and (max-width:1920px) {
    .careers-wrap .sub-top-title { padding-top: 210px; padding-bottom: 80px; }
	.careers-wrap .sub-top-title .container { width: 1280px; }
    .careers-wrap .sub-top-title h2 { font-size: 26px; line-height: 1.4; letter-spacing: -0.84px; }

    .careers-wrap .sub-con .container { width: 1024px; }
    .careers-wrap .sub-con .con-title { margin-bottom: 24px; }
}

@media screen and (max-width:1280px) {
    .careers-wrap .sub-top-title .container { width: 100%; }
    .careers-dt-wrap .sub-con { margin-top: 70p; }
}

@media screen and (max-width:1160px) {
    .careers-dt-wrap .sub-con { width: 100%; }
}

@media screen and (max-width:1024px) {
    .careers-wrap .sub-top-title h2 { font-size: 18px; line-height: 1.67; letter-spacing: -0.54px; }

    .careers-wrap .sub-con, .careers-wrap .sub-con>div { height: unset !important; } 
    .careers-wrap .sub-con { padding-top: 36px; padding-bottom: 32px; }
    .careers-wrap .sub-con .container { width: 100%; }
    .careers-wrap .sub-con .con-title { font-size: 18px; letter-spacing: -0.54px; }
    .careers-wrap .sub-con img { margin-bottom: 40px; }
    .careers-wrap .careers-btn { width: 136px; height: 38px; border-radius: 20px; font-size: 16px; line-height: 36px; }

    .careers-dt-wrap .sub-con {padding: 30px 24px 40px; }
    .form-wrap.careers-dt-wrap  .form-list li .user #select_default.active::after { height: 288px; }
    .form-wrap .form-list li .file-upload-btn { width: 100px; line-height: 38px; height: 38px; font-size: 14px; }
}


@media screen and (max-width:768px) {
    .careers-wrap .sub-top-title { padding-top: 100px; padding-bottom: 40px; }
}


/* Contact */
.contact-wrap .header-wrap .gnb li:nth-child(5) a { color: #bf0001; }
.contact-wrap .header-wrap .gnb li:nth-child(5) a::after { display: block; }
.contact-wrap .sub-con h2 { font-size: 32px; letter-spacing: -0.96px; margin-bottom: 56px; }
.contact-wrap .sub-con .map-box { margin-bottom: 60px; }
.contact-wrap .sub-con .map-box> div { width: 100%; height: 600px; }
.contact-wrap .sub-con .map-box> div .wrap_map { height: 100%; }
.contact-wrap .sub-con .txt-box { gap: 32px; margin-bottom: 80px; }
.contact-wrap .sub-con .txt-box li { width: 50%; gap: 24px; align-items: center; }
.contact-wrap .sub-con .txt-box li img { width: 48px; }
.contact-wrap .sub-con .txt-box li p { font-size: 18px; line-height: 1.7; letter-spacing: -0.54px; flex-flow: column; gap: 8px; }
.contact-wrap .sub-con .inq-btn { width: 160px; height: 50px; border-radius: 25px; border: 1px solid #cf212a; text-align: center; line-height: 48px; color: #cf212a; font-size: 18px; background: #fff; margin: 0 auto; transition: .3s; }
.contact-wrap .sub-con .inq-btn:hover { background: #cf212a; color: #fff; }

@media screen and (max-width:1920px) {
    .contact-wrap .sub-con { padding-top: 40px; }  
    .contact-wrap .sub-con .container { width: 1024px; }
    .contact-wrap .sub-con .map-box> div { height: 350px; }
    .contact-wrap .sub-con .txt-box { margin-bottom: 40px; }
    .contact-wrap .sub-con .txt-box li:first-child { width: 55%; }
    .contact-wrap .sub-con .txt-box li:last-child { width: 45%; }
    .contact-wrap .sub-con .txt-box li p { font-size: 16px; }
}

@media screen and (max-width:1160px) {
	.careers-wrap .sub-con, .careers-dt-wrap .sub-con, .client-wrap .sub-con { width: 100%; }
	.form-wrap .inquiry-form { width: 100%; }
}

@media screen and (max-width: 1024px) {
    .contact-wrap .sub-con { width: 100%; padding-top: 0; }
    .careers-wrap .sub-con, .careers-wrap .sub-con>div { height: unset !important; } 
    .contact-wrap .sub-con .container { width: 100%; }
    .contact-wrap .sub-con h2 { font-size: 20px; margin-bottom: 20px; }

    .contact-wrap .sub-con .map-box { margin-bottom: 32px; }
    .contact-wrap .sub-con .map-box> div { height: 40vh; max-height: 350px; }
    .contact-wrap .sub-con .txt-box { flex-flow: column; gap: 24px; }
    .contact-wrap .sub-con .txt-box li { gap: 16px; align-items: flex-start; }
    .contact-wrap .sub-con .txt-box li:first-child, .contact-wrap .sub-con .txt-box li:last-child { width: 100%; }
    .contact-wrap .sub-con .txt-box li img { width: 36px; }
    .contact-wrap .sub-con .txt-box li p { font-size: 14px; line-height: 1.43; letter-spacing: -0.42px; flex-flow: column; hyphens: 8px; }
    .contact-wrap .sub-con .txt-box li p span:last-child { font-size: 10px; }
    .contact-wrap .sub-con .inq-btn { width: 136px; height: 38px; border-radius: 19px; line-height: 36px; font-size: 16px; }
}

/* 개인정보처리방침/이용약관 */
.privacy { padding: 80px 0 120px; user-select: none; }
.privacy .title { font-weight: bold; text-align: center; font-size: 20px; margin-bottom: 24px; }
.privacy .sub-title { font-weight: normal; text-align: right; font-size: 14px; margin-bottom: 24px; line-height: 1.5; }
.privacy .default { font-weight: bold; font-size: 14px; }
.privacy .user { display: flex; flex-flow: column; gap: 8px; font-size: 13px; line-height: 1.5; }
.privacy .user .user { font-size: 12px; margin-top: 4px; }
.privacy .user .default { font-size: 12px; font-weight: normal; }
.privacy-list { display: flex; flex-flow: column; gap: 16px; }
.privacy-list li { line-height: 1.5; }
.privacy-list> li { display: flex; flex-flow: column; gap: 8px; font-size: 14px; }
.privacy-list> li:last-child { font-size: 12px; line-height: 1.7; }
.privacy-list> li .sub { display: flex; flex-flow: column; gap: 8px; }
.privacy-list> li .sub> li { padding-left: 20px; position: relative; }
.privacy-list> li .sub> li::after { content: ""; display: block; position: absolute; width: 12px; height: 12px; border-radius: 50%; border: 1px solid #707070; left: 0; top: 2px; text-align: center; line-height: 12px; font-size: 10px; }
.privacy-list> li .sub> li:nth-child(1):after { content: "1"; }
.privacy-list> li .sub> li:nth-child(2):after { content: "2"; }
.privacy-list> li .sub> li:nth-child(3):after { content: "3"; }
.privacy-list> li .sub> li:nth-child(4):after { content: "4"; }
.privacy-list> li .sub> li:nth-child(5):after { content: "5"; }
.privacy-list> li .sub> li:nth-child(6):after { content: "6"; }
.privacy-list> li .sub> li:nth-child(7):after { content: "7"; }
.privacy-list> li .sub> li:nth-child(8):after { content: "8"; }
.privacy-list> li .sub> li:nth-child(9):after { content: "9"; }
.privacy-list> li .in> li { padding-left: 8px; position: relative; }
.privacy-list> li .in> li::after { content: ""; display: block; position: absolute; width: 3px; height: 3px; border-radius: 50%; background: #707070; left: 0; top: 7px; }
.privacy-list> li table { width: 100%; margin-top: 4px; border: 1px solid #ccc; font-size: 12px; }
.privacy-list> li table th { text-align: center; padding: 8px; border-bottom: 1px solid #ccc; line-height: 1.5; word-break: keep-all; }
.privacy-list> li table td { padding: 8px; border-bottom: 1px solid #ccc; text-align: center; line-height: 1.5; word-break: keep-all;}
.privacy-list> li table td:not(:last-child:not(:first-child)), .privacy-list> li table th:not(:last-child:not(:first-child)) { border-right: 1px solid #ccc; }
.privacy-list .link { display: inline-block; text-decoration: underline; font-weight: bold; }
.privacy-list .privacy_link:hover { text-decoration: underline; }

@media screen and (max-width:1024px) {
    .privacy { padding: 24px 24px 40px; }
}


/* popup */
.layerPopup{position: fixed; left: 50%; top: 50%; z-index: 99999; transform: translate(-50% , -50%);}
.layerPopup.none{display: none;}
.layerPopup .layerBox{
    box-shadow:0px 3px 6px rgba(0,0,0,0.16); background-color:#555; margin: 10px; width: 500px;
}

.layerPopup .layerBox .mySwiperpop{width: 100%; overflow: hidden; position: relative;}
.layerPopup .layerBox .swiper-slide a{display: block; width: 100%; height: 100%;}
.layerPopup .layerBox .swiper-slide a img{width: 100%; height: 100%;}
.layerPopup .layerBox .swiper-pagination-bullet-active{background-color: #fff;}
.layerPopup .layerBox .btn-wrap{width: 100%; height: 30px; display: flex; justify-content: space-between;}
.layerPopup .layerBox .btn-wrap a{color: #fff; padding: 0 16px; display: flex; align-items: center; font-size: 14px;}
.layerPopup .layerBox .btn-wrap a:last-child{background-color: #333;}

@media screen and (max-width:1000px) {
    .layerPopup .layerBox1 {margin:0; position:absolute; top:50%; left:50%; transform:translate(-50%, -50%);}
}

@media screen and (max-width:500px) {
    .layerPopup {width:100%;}
    .layerPopup .layerBox {width:100%; max-width:calc(100% - 20px);}
}
