#fp-nav{left: 28px !important; display: none !important;}/* 퀵메뉴*/
#fp-nav ul{position: relative;}
#fp-nav ul:after{content: "";position: absolute;top: -22px;left: 3px;width: 1px;height: 250px;background: #ABABAB;}
#fp-nav ul li{position: relative;display: flex;align-items: center;flex-direction: row;flex-wrap: nowrap;width: auto;height: 13px;margin: 0;}
#fp-nav ul li:last-child{display: none;}
#fp-nav ul li + li{margin-top: 50px;}
#fp-nav ul li a{width: 7px;height: 7px;}
#fp-nav ul li a span{left: 0;top: 0;height: 7px;width: 7px;background: #C2C2C3;margin: 0;}
#fp-nav ul li a.active span, #fp-nav ul li:hover a.active span{width: 7px;height: 7px;margin: 0;background: #D9CC6D;}
#fp-nav ul li a.active span:after{content: "";position: absolute;top: -6px;left: -6px;width: 19px;height: 19px;background: rgba(181, 181, 180, 0.20);border: 1px solid #D9CC6D;border-radius: 100%;box-sizing: border-box;}
#fp-nav ul li:hover a span{width: 7px;height: 7px;margin: 0;}
#fp-nav ul li .fp-tooltip{position: relative;top: auto; left: auto !important;width: auto;margin-left: 12px;opacity: 1;font-size: 12px;color: #666;font-weight: 500;font-family: "Noto Sans KR";letter-spacing: -0.6px;}
#fp-nav ul li a.active + .fp-tooltip{font-size: 13px;color: #D9CC6D;font-weight: 700;}
#fp-nav.ver2 ul:after{background: #DFDFDF;}
#fp-nav.ver2 ul li .fp-tooltip{color: #ccc;}

.section01 {position: relative;background: #333;overflow: hidden;}
.visualWrap{position: relative;}
.visualSwiper{width: 100%;min-height: 100vh;height: 100%;}
.visualSwiper .swiper-wrapper{display: flex !important;}
.visualSwiper .swiper-slide{position: relative;height: 100%;}
.visualSwiper .visualBg{width: 100%;height: 100vh;}
.visualSwiper .visualBg img, .visualSwiper .visualBg video{width: 100%;height: 100%;object-fit: cover;transform: scale(1.2);}
.visualSwiper .visualText{
    position: absolute;
    top: 50%;
    left: 50%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding-bottom: 50px;
    box-sizing: border-box;
    text-align: center;
    z-index: 1;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
}

.visualSwiper .visualText p{transform: translateY(1rem);-webkit-transform: translateY(1rem);-moz-transform: translateY(1rem);-ms-transform: translateY(1rem);-o-transform: translateY(1rem);opacity: 0;transition: 1.1s;-webkit-transition: 1.1s;-moz-transition: 1.1s;-ms-transition: 1.1s;-o-transition: 1.1s;transition-delay: 0.8s;}
.visualSwiper .visualText p:nth-child(1){margin-bottom: 15px;font-size: 28px;color: #FFF;font-weight: 350;line-height: 35px;letter-spacing: -1px;}

.visualSwiper .visualText p:nth-child(2){margin-bottom: 40px;font-size: 80px;color: #FFF;font-weight: 800;line-height: 130%;letter-spacing: -1px;word-break: keep-all;}

.visualSwiper .visualText p:nth-child(3){font-size: 40px;color: #FFF;font-weight: 400;line-height: 130%;letter-spacing: -1px;word-break: keep-all;}

.visualSwiper .visualText p.text_delay01{transition-delay: 1.2s;}
.visualSwiper .visualText p.text_delay02{transition-delay: 1.6s;}
.visualWrap .visualControl{
    position: absolute;
    top: 50%;
    left: 50%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding-top: 700px;
    box-sizing: border-box;
    z-index: 1;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
}
.visualWrap .visualControl button{position: relative;width: 185px;height: auto;background: none;border-radius: 0;font-size: 18px;color: #fff;font-weight: 600;text-align: center;opacity: 1;letter-spacing: -1px;}

.visualWrap .visualControl button + button{margin-left: 15px;}

.visualWrap .visualControl button:after{content: "";position: absolute;left: 0;bottom: 0;display: block;width: 100%;height: 2px; background: rgba(255, 255, 255, 0.35); /*background: #fff;*/}

.visualWrap .visualControl button .bar{display: block;position: relative;width: 0;height: 2px;margin-top: 10px;background: #fff;overflow: hidden;vertical-align: middle;}

.visualWrap .visualControl button.on{color: #222;}

.visualWrap .visualControl button.on .bar{width: 100%;transition: all 4000ms;-webkit-transition: all 4000ms;-moz-transition: all 4000ms;-ms-transition: all 4000ms;-o-transition: all 4000ms; background: #fff;}

.visualWrap .visualControl button.on:after{/*background: #222;*/}

.visualSwiper .swiper-slide-active .visualBg img, .visualWrap .swiper-slide-active .visualBg video{transform: scale(1);transition: transform 2.5s;}

.visualSwiper .swiper-slide:not(.swiper-slide-active) img, .visualWrap .swiper-slide:not(.swiper-slide-active) video{opacity: 0;}
.visualSwiper .swiper-slide-active .visualText p{opacity: 1;transform: none;-webkit-transform: none;-moz-transform: none;-ms-transform: none;-o-transform: none;}
.scrollDown {position: absolute;bottom: 50px;right: 40px;text-align: center;-webkit-animation: scrollDown 2.2s infinite;-moz-animation: scrollDown 2.2s infinite;-ms-animation: scrollDown 2.2s infinite;-o-animation: scrollDown 2.2s infinite;animation: scrollDown 2.2s infinite;z-index: 9;}
.scrollDown p {margin-bottom: 46px;font-size: 15px;color: #fff;font-weight: 400;line-height: 26px;transform: rotate(-90deg);}
.scrollDown i {position: relative;display: inline-block;width: 19px;height: 28px;border: 1px solid #fff;border-radius: 15px;box-sizing: border-box;}
.scrollDown i:after {content: "";position: absolute;top: 5px;left: 50%;transform: translateX(-50%);width: 1px;height: 6px;border-radius: 2px;background: #fff;-webkit-animation: scrollDownIcon 2s infinite;-moz-animation: scrollDownIcon 2s infinite;-ms-animation: scrollDownIcon 2s infinite;-o-animation: scrollDownIcon 2s infinite;animation: scrollDownIcon 2s infinite;}


.section02{position: relative;overflow: hidden;}
.section02 .inner {
    padding: 100px 0;
    box-sizing: border-box;
    width: 1500px;
    margin: 0 auto;
}
.section02 .serviceText{}
.section02 .titleSm{font-size: 40px;color: #19B38E;font-weight: 700;text-align: center;line-height: normal;}
.section02 .titleLg{margin-top: 19px;font-size: 80px;color: #222;font-weight: 700;line-height: 70px;letter-spacing: -1px;text-align: center; margin-bottom: 70px;}




.section02 .intro{
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
}
.section02 .intro li{
    width: 44.5%;
    padding: 80px;
    box-sizing: content-box;
}

.section02 .intro li:nth-of-type(2n){
    /*border-left: 1px dashed #ddd;border-left: 1px dashed #ddd;*/
    padding-right: 0;
}
.section02 .intro li:nth-of-type(1), .section02 .intro li:nth-of-type(2){
    border-bottom: 1px dashed #ddd;
}
.section02 .intro li:nth-of-type(1){
    /*padding-bottom: 309px;*/
    height: 683.5px;
}
.section02 .intro li:nth-of-type(2n-1){
    padding-left: 0;
    border-right: 1px dashed #ddd;
}

.section02 .intro .tit{
    font-size: 24px;
    font-weight: 600;
    background: #19B38E;
    display: inline-block;
    border-radius: 50px;
    padding: 5px 50px;
    color: #fff;
    letter-spacing: -1px;
}
.section02 .intro h5{
    font-size: 33px;
    color: #222;
    line-height: 150%;
    letter-spacing: -1px;
    font-weight: 400;
    margin: 30px 0;
    word-break: keep-all;
}
.section02 .intro .txt{
    font-size: 24px;
    color: #666;
    letter-spacing: -1px;
    word-break: keep-all;
}
.section02 .intro .sign{
    font-size: 24px;
    color: #222;
    font-weight: 600;
    letter-spacing: -.6px;
    padding-top: 50px;
}
.section02 .intro .sign img{
    padding-left: 20px;
}


.section06{position: relative;overflow: hidden;}
.section06:before{/*content: url(../images/img_sj1_mark.svg);*/position: absolute;top: 205px;left: calc(50% - 216px);transform: translate(100%, 0);opacity: 0;transition: all 4s;-webkit-transition: all 4s;}
.section06.active:before{transform: translate(0, 0);opacity: 1;}
.section06 .contactText{
    position: relative;width: 50%;
    padding: 100px 5% 150px 10%;
    box-sizing: border-box;
    padding: 0px 5% 0 10%;
}
.section06 .titleSm{font-size: 40px;color: #19B38E;font-weight: 600;text-align: left;line-height: normal;}
.section06 .titleLg{margin-top: 20px;font-size: 80px;color: #222;font-weight: 700;line-height: 70px;letter-spacing: -1px;text-align: left;}

.section06 .contactInfo{width: 630px;margin-top: 50px}
.section06 .contactInfo li{position: relative;padding: 29px 0 31px 85px;border-bottom: 1px solid #D4E7E1;box-sizing: border-box;}
.section06 .contactInfo li:before{content: "";position: absolute;left: 0;top: 50%;width: 60px;height: 60px;margin-top: -30px;background-color: #3EBD9F;background-position: center;background-repeat: no-repeat;border-radius: 100%;box-sizing: border-box;}
.section06 .contactInfo li:nth-child(1):before{background-image: url(../images/icon_address.svg);}
.section06 .contactInfo li:nth-child(2):before{background-image: url(../images/icon_tel.svg);}
.section06 .contactInfo li:nth-child(3):before{background-image: url(../images/icon_fax.svg);}
.section06 .contactInfo li strong{font-size: 20px;color: #666;font-weight: 500;line-height: 180%;letter-spacing: -0.6px;}
.section06 .contactInfo li p{font-size: 25px;color: #222;font-weight: 600;line-height: 140% ;letter-spacing: -0.6px; word-break: keep-all;}
.section06 .contactMap{position: absolute;top: 0;right: 0;width: 50%;height: calc(100vh + 100px);overflow: hidden;}




.section05{position: relative;background-image: url(../images/img_intro_bg.jpg);background-size: cover;background-position: center;background-repeat: no-repeat;overflow: hidden;}
.section05 .inner{padding: 100px 0;box-sizing: border-box;    width: 1500px; margin: 0 auto;}
.section05 .titleSm{font-size: 40px;color: #fff;font-weight: 600;text-align: center;line-height: normal;}
.section05 .titleLg{font-size: 80px;color: #FFF;font-weight: 700; letter-spacing: -1px;text-align: center; margin-bottom: 70px;}

.section05 .btnGroup ul{display: flex;align-items: center;justify-content: center;flex-direction: row;flex-wrap: nowrap;margin-top: 58px;}
.section05 .btnGroup ul li + li{margin-left: 20px;}
.section05 .btnGroup ul li a{display: flex;align-items: center;justify-content: center;width: 180px;height: 60px;background: transparent;border: 1px solid #FFF;border-radius: 50px;box-sizing: border-box;font-size: 18px;color: #FFF;font-weight: 500;line-height: 35px;letter-spacing: -1px;text-align: center;transition: .3s;-webkit-transition: .3s;}
.section05 .btnGroup ul li a:hover{background-color: #19B38E;border-color: #19B38E;}



/* 문의하기 */
.contact .cs_wrap {
    position: relative;
    display: flex;
    cursor: pointer;
}
.contact .cs_wrap > div {
    width: calc(50% - 56px);
}
.contact .cs_left {
    padding-right: 90px;
}
.contact .cs_left .privacy {
    overflow-y: scroll;
    width: 90%;
    height: 560px;
    color: #fff;
    padding: 40px;
    background: rgba(255, 255, 255, .3);
    border: 1px solid #fff;
    border-radius: 10px;
    font-size: 20px;
}


.contact .cs_left .privacy::-webkit-scrollbar {
    width:10px;/* 스크롤바의 너비 */
}

.contact .cs_left .privacy::-webkit-scrollbar-thumb {
    height: 30%; /* 스크롤바의 길이 */
    background: #19B38E; /* 스크롤바의 색상 */
    background-clip: padding-box;
    border: 3px solid #19B38E;
    border-radius: 50px;
}


.contact .cs_left .privacy::-webkit-scrollbar-track {
    background-color: rgba(0, 0, 0, 0);
}



.contact .cs_left .privacy > a {
    color: #fff;
}
.contact .cs_right .res_ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.contact .cs_right .res_ul li {
    width: 100%;
}
.contact .cs_right .res_ul li:nth-child(2), .contact .cs_right .res_ul li:nth-child(3) {
    width: 47.5%;
}
.contact .cs_right .res_ul li input {
    padding: 0 10px;
    color: #fff;
    width: calc(100% - 22px);
    background: rgba(255, 255, 255, .5);
    border: 1px solid #fff;
    border-radius: 10px;
    line-height: 50px;
    margin: 10px 0 30px;
}
.contact .cs_right .res_ul li input:focus {
    border: 1px solid #fff;
}
.contact .cs_right .res_ul li textarea {
    padding: 10px;
    font-size: 16px;
    color: #fff;
    width: calc(100% - 22px);
    background: rgba(255, 255, 255, .5);
    border: 1px solid #fff;
    border-radius: 10px;
    height: 200px;
    margin: 15px 0;
}
.contact .cs_right .res_ul li input.btn-submit {
    transition: 0.2s;
    margin: 0;
    font-size: 22px;
    font-weight: 700;
    line-height: 50px;
    background: #19B38E;
    color: #fff;
    border: none;
    width: 100%;
}
.contact .cs_right .res_ul li input.btn-submit:not(:disabled):hover {
    /*background: #305A4F;*/
}
.contact .cs_right .res_ul li input.btn-submit:disabled {
    transition: 0.2s;
    margin: 0;
    font-size: 20px;
    font-weight: 500;
    line-height: 50px;
    background: #f5f5f5;
    color: #bebebe;
    border: none;
    cursor: default;
}

input::placeholder, textarea::placeholder {
    font-size: 18px;
    color: #fff;
}

.contact .cs_right .radiobox {
    display: flex;
    position: absolute;
    left: -112%;
    bottom: 0;
}
.contact .cs_right .radiobox input {
    display: none;
}
.contact .cs_right .radiobox input + label {
    display: flex;
    line-height: 22px;
    cursor: pointer;
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    align-items: center;
    flex-direction: row;
}
.contact .cs_right .radiobox input + label::before {
    content: "";
    border-radius: 5px;
    width: 30px;
    height: 30px;
    background-color: #fff;
    border: 1px solid #9c9c9c;
    margin-right: 10px;
    margin-left: 1px;
    background: url(../images/non-checked.png) no-repeat;
}


.contact .cs_right .radiobox input:checked + label::before {
    background: url(../images/checked.png) no-repeat;
    /*border: none;*/
}
.contact .cs_right .radiobox .wr_5_2 {
    margin-left: 25px;
}
.contact .cs_right .res_ul li .r_tit {
    position: relative;
    color: #fff;
    font-size: 22px;
    font-weight: 500;
}
.contact .cs_right .res_ul li .rq::after {
    content: "*";
    position: absolute;
    top: 0;
    width: 15px;
    height: 15px;
    color: #19B38E;
    padding-left: 3px;
}


.section04{position: relative;background-image: url(../images/img_service_bg.jpg);background-size: cover;background-position: center;background-repeat: no-repeat;overflow: hidden;}
.section04 .inner{width: 1500px; margin: 0 auto; padding: 100px 0;box-sizing: border-box; min-height: 1800px;}
.section04 .titleSm{font-size: 40px;color: #19B38E;font-weight: 700;text-align: center;line-height: normal;}
.section04 .titleLg{font-size: 80px;color: #222;font-weight: 700;line-height: 140%;letter-spacing: -1px;text-align: center;}
.section04 .btnGroup ul{display: flex;align-items: center;justify-content: center;flex-direction: row;flex-wrap: nowrap;margin-top: 58px;}
.section04 .btnGroup ul li + li{margin-left: 20px;}
.section04 .btnGroup ul li a{display: flex;align-items: center;justify-content: center;width: 180px;height: 60px;background: transparent;border: 1px solid #FFF;border-radius: 50px;box-sizing: border-box;font-size: 18px;color: #FFF;font-weight: 500;line-height: 35px;letter-spacing: -1px;text-align: center;transition: .3s;-webkit-transition: .3s;}
.section04 .btnGroup ul li a:hover{background-color: #19B38E;border-color: #19B38E;}



.section03{position: relative;background-image: url(../images/img_count_bg.jpg);background-size: cover;background-position: center;background-repeat: no-repeat;overflow: hidden;}
.section03 .inner{padding: 100px 0;box-sizing: border-box;}
.section03 .titleSm{font-size: 40px;color: #fff;font-weight: 700;text-align: center;line-height: normal;}
.section03 .titleLg{font-size: 80px;color: #FFF;font-weight: 700;line-height: 140%;letter-spacing: -1px;text-align: center;}


.section03 .infoWrap{display: flex;flex-direction: column;flex-wrap: nowrap;align-items: stretch;justify-content: center;width: 100%;height: 100%;}
.section03 .infoWrap .titleGroup{margin-bottom: 70px;text-align: center;}

.section03 .infoWrap .infoList{display: flex;flex-direction: row;flex-wrap: nowrap;justify-content: space-around;align-items: flex-start;width: 1600px;    max-width: 100%;margin: 0 auto;}
.section03 .infoWrap .infoList li{
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    text-align: center;
    padding: 20px;
    background: rgba(255, 255, 255, .3);
    border: 1px solid #fff;
    border-radius: 20px;
    width: 260px;
    height: 220px;
    justify-content: center;
}
.section03 .infoWrap .infoList li strong{font-size: 72px;font-weight: 700;line-height: 150%;letter-spacing: -0.2px;font-family: "Montserrat", serif;}
.section03 .infoWrap .infoList li b{color: #FFF;font-size: 30px;font-weight: 600;line-height: 110%;letter-spacing: -0.2px;}
.section03 .infoWrap .infoList li b .br{
    display: block;
    font-size: 16px;
}
.section03 .infoWrap .infoList li p{color: #222;font-size: 22px;font-weight: 400;line-height: 140%;letter-spacing: -0.2px;text-align: center;}
.section03 .infoWrap .infoList li p span{font-size:72px;font-weight:700;font-style:normal; vertical-align: baseline;}


.section04 .css3-tab {
    list-style: none;
    margin: 0 auto 20px;
    padding: 50px 0 0 0;
    position: relative;
    width: 100%;
}
.section04 .section04 .css3-tab input[type='radio'] {
    display: none;
}
.section04 .css3-tab .css3-tab-nav {
    /*display: table;*/
    /*table-layout: fixed;*/
    display: flex;
    width: 1240px;
    margin: 0 auto;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: space-between;
}
.section04 .css3-tab .css3-tab-nav label {
    display: table-cell;
    background: rgba(255, 255, 255, .3);
    border: 1px solid #FFF;
    border-radius: 50px;
    box-sizing: border-box;
    font-size: 30px;
    color: #222;
    font-weight: 600;
    letter-spacing: -1px;
    text-align: center;
    transition: .3s;
    -webkit-transition: .3s;
    height: 80px;
    line-height: 80px;
    width: 400px;
}
.section04 .css3-tab .css3-tab-nav label:hover {
    cursor: pointer;
    background: white;
    color: #19B38E;
    transition: all .3s ease 0s;
}
.section04 .css3-tab .css3-tab-content {
    overflow: hidden;
    padding: 25px 0;
    margin-top: 30px;
    display: none;
    background: transparent;
    clear: left;
    box-sizing: border-box;
    min-height: 700px;
}
.section04 .css3-tab input[id='tabOne']:checked ~ .css3-tab-nav label[for='tabOne'] {
    background: #19B38E;
    color: #ffffff;
    cursor: default;
}
.section04 .css3-tab input[id='tabOne']:checked ~ div.tab-one {
    display: block;
    animation: fadeInUp 0.8s ease forwards;
}
.section04 .css3-tab input[id='tabTwo']:checked ~ .css3-tab-nav label[for='tabTwo'] {
    background: #19B38E;
    color: white;
    cursor: default;
}
.section04 .css3-tab input[id='tabTwo']:checked ~ div.tab-two {
    display: block;
    animation: fadeInUp 0.8s ease forwards;
}
.section04 .css3-tab input[id='tabThree']:checked ~ .css3-tab-nav label[for='tabThree'] {
    background: #19B38E;
    color: white;
    cursor: default;
}


.section04 .css3-tab .css3-tab-content dl{
    font-size: 34px;
    color: #222;
    font-weight: 600;
    letter-spacing: -1px;
    position: relative;
    border-bottom: 1px solid #fff;
    float: left;
    width: 47%;
    min-height: 240px;
    padding: 50px 0 30px;
}
.section04 .css3-tab .css3-tab-content dl.add{min-height: 356px;}
.section04 .css3-tab .css3-tab-content dl.add2{min-height: 280px;}
.section04 .css3-tab .css3-tab-content dl.add3{min-height: 302px;}

.section04 .css3-tab .css3-tab-content dl:nth-of-type(2n){
    float: right;
}

.section04 .css3-tab .css3-tab-content dl dt{font-size: 33px;}
.section04 .css3-tab .css3-tab-content dl dd{
    font-size: 25px;
    color: #666;
    font-weight: 500;
    /*display: list-item;*/
    /*list-style-type: disc;*/
    margin: 20px;
    position: relative;
    word-break: keep-all;
}
.section04 .css3-tab .css3-tab-content dl dd::marker {
    font-size: 12px;
}

.section04 .css3-tab .css3-tab-content dl dd:before{
    content: " ";
    position: absolute;
    top: 42%;
    left: -15px;
    background: #666;
    width: 5px;
    height: 5px;
    border-radius: 100%;
}


.section04 .css3-tab input[id='tabThree']:checked ~ div.tab-three {
    display: block;
    animation: fadeInUp 0.8s ease forwards;
}

.section04 input[type="radio"] {display: none;}

/* 페이드인 및 위로 이동 애니메이션 */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(50px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}





body {
    background: #f6f7f8;
}



/* 미디어쿼리 */
@media screen and (max-width: 1599px){

    .section02 .serviceText{width: 100%;}
    .section06 .contactText{width: 60%;}
    .section06 .contactMap{width: 40%;}

}
@media screen and (max-width: 1399px){

    #fp-nav ul li .fp-tooltip{display: none;}

    .visualSwiper .visualText{margin-left: 10%;}
    .visualWrap .visualControl{margin-left: 10%;}

    .section02 .serviceText{padding: 100px 5% 50px 8%;}

    .section06:before{left: calc(50% - 100px);}
    .section06 .contactText{padding: 100px 5% 50px 8%;}
    .section06 .contactInfo li{padding: 20px 0 20px 85px;}

}
@media screen and (max-width: 1199px){

    #fp-nav{display: none !important;}

    .visualSwiper .visualText{margin-left: 0%;}
    .visualSwiper .visualText p:nth-child(1){margin-bottom: 10px;font-size: 24px;line-height: 24px;}

    .visualSwiper .visualText p:nth-child(2){margin-bottom: 20px;font-size: 64px;line-height: 140%;}

    .visualSwiper .visualText p:nth-child(3){font-size: 30px;line-height: 140%;}

    .visualWrap .visualControl{margin-left: 0%;}
    .scrollDown{bottom: 40px;right: 2%;}
    .visualSwiper .visualBg{min-height: 280px;}


    .section02{padding: 0px 50px 20px;}
    .section02 .titleLg{margin-bottom: 20px; line-height: 1;}
    .section02 .serviceText{width: 100%; padding: 50px 0px 0;}
    .section02 .inner{width: 100%; padding-bottom: 0;}
    .section02 .intro li{
        float: none;
        width: 100%;
        padding: 50px 0;
        text-align: center;
    }
    .section02 .intro li:nth-of-type(1) {
        /*padding: 0 0 40px;*/
        height: auto;
    }
    .section02 .intro .tit{
        display: block;
        text-align: center;
        width: 50%;
        margin: 0 auto;

    }
    .section02 .intro h5{text-align: center;}
    .section02 .intro .txt{text-align: center;}
    .section02 .intro .sign{text-align: center;}
    .section02 .intro .sign img{}

    .section02 .intro li:nth-of-type(2n) {
        border-left: none;
    }

    .section02 .intro li:nth-of-type(3){
        border-bottom: 1px dashed #ddd;
    }
    .section02 .intro .posi{height: 100px;}



    .section06{padding: 80px 50px; background: #F9F9F9;box-sizing: border-box;overflow: hidden;}
    .section06:before{top: 100px;left: calc(100% - 280px);}
    .section06 .contactText{width: 100%;padding: 0;}
    .section06 .contactInfo{width: 100%;margin-bottom: 20px;}
    .section06 .contactMap{position: inherit;top: auto;right: auto;width: 100%; height: auto; padding: 20px 0;}
    .section06 .contactMap .wrap_map{height: 450px !important;}
    .section06 .titleSm{text-align: center;}
    .section06 .titleLg{text-align: center;}


    .section05{padding: 80px 50px;}
    .section05 .titleLg{margin-bottom: 20px;}
    .section05 .inner{
        width: 100%;
        padding: 0;
    }

    .contact .cs_wrap > div{
        width: calc(100% - 15px);
        position: relative;
    }
    .contact .cs_wrap > .cs_left{
        padding-right: 0;
    }
    .section .titleSm{font-size: 40px;}
    .contact .cs_wrap {
        flex-direction: column;
    }
    .contact .cs_left .privacy{
        width: calc(100% - 60px);
        height: 200px;
    }
    .contact .cs_wrap > .cs_right{

    }
    .contact .cs_right .radiobox{
        bottom: auto;
        top: 20px;
        left: 0;
    }
    .contact .cs_right .res_ul{
        margin-top: 100px;
    }

    .section03 .infoWrap .infoList{
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        justify-content: center;
    }
    .section03 .infoWrap .infoList li{
        width: 32%;
        height: 180px;
        gap: 5px;
    }
    .section03 .infoWrap .infoList li strong{
        font-size: 64px;
    }
    .section03 .infoWrap .infoList li b{
        font-size: 28px;
    }
    .section03 .infoWrap .infoList li b .br{
        font-size: 17px;
    }
    .section03 .infoWrap .titleGroup{
        margin-bottom: 20px;
    }


    .section04{padding: 80px 50px;}
    .section04 .inner{width: 100%; padding: 0; min-height: auto;}
    .section04 .css3-tab{padding-top: 20px;}
    .section04 .css3-tab .css3-tab-nav{
        table-layout: fixed;
        width: 100%;
        padding: 0;
    }
    .section04 .css3-tab .css3-tab-nav label{
        width: 32%;
        font-size: 22px;
    }
    .section04 .css3-tab .css3-tab-content{margin-top: 20px;}
    .section04 .css3-tab .css3-tab-content dl{
        width: 100%;
        float: none;
        min-height: auto;
        padding: 40px 0;
    }
    .section04 .css3-tab .css3-tab-content dl:nth-of-type(2n){
        float: none;
    }
    .section04 .css3-tab .css3-tab-content dl.add,
    .section04 .css3-tab .css3-tab-content dl.add2,
    .section04 .css3-tab .css3-tab-content dl.add3{
        min-height: auto;
    }

}



@media screen and (max-width: 767px){

    .visualSwiper .visualText{margin-left: 0%;}
    .visualSwiper .visualText p:nth-child(1){font-size: 24px;}
    .visualSwiper .visualText p:nth-child(2){font-size: 34px;margin-bottom: 0;}
    .visualSwiper .visualText p:nth-child(3){font-size: 20px;}
    .visualSwiper .visualText p.text_delay02 br{display: none;}

    .visualWrap .visualControl{padding-top: 90%; margin-left: 0%;}
    .visualWrap .visualControl button{width: auto;font-size: 16px;}
    .visualWrap .visualControl button + button{margin-left: 0;}
    .visualWrap .visualControl button .bar{margin-top: 3px;}
    .scrollDown{right: 0;}
    .scrollDown p{margin-bottom: 35px;font-size: 13px;}
    .scrollDown i{width: 16px;height: 22px;}
    .scrollDown i:after{height: 5px;}
    .scrollDown{bottom: 40px;right: 2%;}


    .section02{padding: 50px 20px 0;}
    .section02 .inner {padding: 0;}
    .section02 .serviceText{padding: 30px 0 0;}
    .section02 .titleSm{font-size: 20px;}
    .section02 .titleLg{margin-top: 15px;font-size: 9vw;line-height: 120%;}
    .section02 .intro .tit{font-size: 18px;}
    .section02 .intro h5{font-size: 24px; margin: 20px 0 15px;}
    .section02 .intro .txt{font-size: 17px;}
    .section02 .intro .sign{font-size: 17px; padding-top: 25px;}
    .section02 .intro .sign img{width: 70px;  padding-left: 12px;}
    .section02 .intro li{padding: 40px 0;}


    .section06{padding: 50px 20px;}
    .section06:before{top: 20px;left: 50%;}
    .section .titleSm{font-size: 20px;}
    .section .titleLg{margin-top: 10px;font-size: 40px;line-height: 1;}
    .section06 .contactInfo{margin-top: 30px;}
    .section06 .contactInfo li{padding: 20px 0 20px 70px;}
    .section06 .contactInfo li:before{width: 50px;height: 50px;margin-top: -25px;}
    .section06 .contactInfo li strong{font-size: 17px;}
    .section06 .contactInfo li p{font-size: 20px;line-height: 24px;}
    .section06 .contactMap{}


    .section05{padding: 50px 20px;}
    .section05 .inner{padding: 0;}
    .contact .cs_right .res_ul li .r_tit{font-size: 18px;}
    .contact .cs_right .res_ul li:nth-child(2), .contact .cs_right .res_ul li:nth-child(3) {width: 46.5%;}
    .contact .cs_right .res_ul li input[type="submit"]{font-size: 18px;}
    .contact .cs_right .radiobox input + label{font-size: 18px;}
    .contact .cs_right .radiobox input:checked + label::before{
        background-size: 25px;
        width: 25px;
        height: 25px;
    }
    .contact .cs_right .radiobox input + label::before{
        background-size: 25px;
        width: 25px;
        height: 25px;
    }

    .contact .cs_left .privacy {
        width: 92%;
        font-size: 17px;
        padding: 20px;
    }
    .contact .cs_right .res_ul li input{
        width: calc(100% - 10px);
    }
    .contact .cs_right .res_ul li textarea{
        width: calc(100% - 10px);
        height: 120px;
    }
    .contact .cs_right .res_ul li input[type="submit"], .contact .cs_right .res_ul li input[type="submit"]:disabled{
        font-size: 18px;
    }
    input::placeholder, textarea::placeholder {
        font-size: 16px;
    }

    .section03{padding: 50px 20px;}
    .section03 .inner{padding: 0;}
    .section03 .infoWrap .infoList li{width: 65%; height: 140px;}
    .section03 .infoWrap .infoList li strong{font-size: 45px;}
    .section03 .infoWrap .infoList li p span{font-size: 54px;}
    .section03 .infoWrap .infoList li b{font-size: 25px;}

    .section04 {
        padding: 50px 20px;
        background-position: 56%;
    }
    .section04 .css3-tab .css3-tab-nav {
        display: block;
        margin: 0 0 20px;
    }
    .section04 .css3-tab .css3-tab-nav label {
        display: block;
        box-sizing: border-box;
        width: 100%;
        height: 60px;
        line-height: 60px;
        margin: 14px 0;
    }

    .section04 .css3-tab .css3-tab-nav label{
        font-size: 20px;
    }
    .section04 .css3-tab .css3-tab-content{
        margin-top: 0;
        padding: 0;
    }
    .section04 .css3-tab .css3-tab-content dl{
        padding: 30px 0;
    }
    .section04 .css3-tab .css3-tab-content dl dt{
        font-size: 26px;
    }
    .section04 .css3-tab .css3-tab-content dl dd{
        font-size: 18px;
        margin: 10px 0px 10px 20px;
    }
    .section04 .css3-tab .css3-tab-content dl dd.add:before{
        top: 25%;
    }

}


/* 카카오 지도 모바일 표(추가)*/
.root_daum_roughmap .cont .section.lst{display: none;}


/* scroll down */
@-webkit-keyframes scrollDown {
    0%, 100%{bottom: 40px;}
    50% {bottom: 30px;}
}
@-moz-keyframes scrollDown {
    0%, 100%{bottom: 40px;}
    50% {bottom: 30px;}
}
@-ms-keyframes scrollDown {
    0%, 100%{bottom: 40px;}
    50% {bottom: 30px;}
}
@-o-keyframes scrollDown {
    0%, 100%{bottom: 40px;}
    50% {bottom: 30px;}
}
@keyframes scrollDown {
    0%, 100%{bottom: 40px;}
    50% {bottom: 30px;}
}

@-webkit-keyframes scrollDownIcon {
    0%{top: 5px;}
    100% {top: 15px;}
}
@-moz-keyframes scrollDownIcon {
    0%{top: 5px;}
    100% {top: 15px;}
}
@-ms-keyframes scrollDownIcon {
    0%{top: 5px;}
    100% {top: 15px;}
}
@-o-keyframes scrollDownIcon {
    0%{top: 5px;}
    100% {top: 15px;}
}
@keyframes scrollDownIcon {
    0%{top: 5px;}
    100% {top: 15px;}
}

.popup-container { overflow: hidden; border-radius: 5px; }
.popup-container img { vertical-align: bottom; }
.popup-container ul { margin-top:0; padding: 20px 10px; background-color: #000; display:flex; }
.popup-container ul li { cursor:pointer; width:50%; color:#fff; text-align:center; font-weight:700; }
.popup-container ul li + li { border-left: 1px solid #fff; }