/***********************************************************/
/********** section 01 - main_visual ***********************/
/***********************************************************/

section.main_visual .main_visual_contain { position: relative; display: flex; justify-content: center; } 

section.main_visual .main_visual_text { position: absolute; z-index: 3; display: flex; justify-content: center; align-items: center; flex-direction: column; color: #ffffff; margin-top: 20vh; } 
section.main_visual .main_visual_text h1 { 
    font-size: 66px; font-weight: bold; line-height: 0.882; 
    border-bottom: 1px solid #ffffff9c;
    padding: 0 150px 75px 150px;
}
section.main_visual .main_visual_text p.desc { font-size: 30px; margin-top: 65px; } 
section.main_visual .main_visual_text p.sub_desc { font-size: 21px; margin-top: 26px; } 
section.main_visual .main_visual_text p.sub_desc b { font-weight: 100; margin: 0 14px; color: #ffffff8a; } 
section.main_visual .swiper.main-Swiper { width: 100%; height: calc(100vh - 80px); } 
section.main_visual .swiper.main-Swiper .swiper-slide {text-align: center;font-size: 18px;background: #fff;display: flex;justify-content: center;align-items: center; overflow: hidden; } 
section.main_visual .swiper.main-Swiper .swiper-slide img {display: block;width: 100%;height: 100%;object-fit: cover; } 
section.main_visual .swiper.main-Swiper .swiper-pagination { bottom: 23px; } 
section.main_visual .swiper.main-Swiper span.swiper-pagination-bullet { width: 30px; height: 3px; margin: 0 4px; border-radius: 0; background: #ffffff; } 
.main_visual .swiper-button-next, 
.main_visual .swiper-button-prev {
    color: white;
}
.main_visual .swiper-button-prev {
    left: 2%;
}
.main_visual .swiper-button-next {
    right: 2%;
}
@media (max-width: 1280px) { section.main_visual .swiper.main-Swiper { height: 70vh; } 
    section.main_visual .main_visual_text h1 { 
        display: flex; flex-direction: column; font-size: 32px; gap: 10px; align-items: center; 
        padding: 0 25px 30px 25px;
    } 
    section.main_visual .main_visual_text p.desc { font-size: 14px; margin-top: 28px; text-align: center; display: flex; flex-direction: column; } 
    section.main_visual .main_visual_text p.sub_desc { font-size: 14px; margin-top: 15px; } 
    .main_visual .swiper-button-next, 
    .main_visual .swiper-button-prev {
        display: none;
    }
    .main_visual .swiper-button-next:after, 
    .main_visual .swiper-button-prev:after {
        font-size: 24px;
    }
    section.main_visual .main_visual_text {
        max-width: 330px;
    }
}

/***********************************************************/
/********** section 02 - overview **************************/
/***********************************************************/
section.overview article { padding: 55px 130px 62px 116px; }
section.overview article h4 { font-size: 36px; font-weight: bold; margin: auto; }
section.overview article p { font-size: 20px; line-height: 32px; margin-top: 13px; font-weight: 300; }
section.overview article a { border: 2px solid #ffffff; color: white; padding: 9px 50px; display: inline-block; border-radius: 25px; margin-top: 27px; }
section.overview article:nth-child(1) { background-color: #3e4d9a; color: white; background-image: url('../img/main/main_sec_04_bg02.png'); background-size: 100px; background-repeat: no-repeat; background-position: right -60px bottom -465px; background-size: 480px;}
section.overview article:nth-child(2) { background-color: #f5f7ff; color: #000000; }
section.overview article:nth-child(2) { padding: 55px 130px 62px 74px;}
section.overview article:nth-child(2) p { margin-top: 22px; line-height: 36px; }

@media (max-width: 1280px) { section.overview article,
    section.overview article:nth-child(2) { padding: 45px; }
    section.overview article p,
    section.overview article:nth-child(2) p { font-size: 14px; line-height: 2; margin-top: 13px; font-weight: 300; }
}


/***********************************************************/
/********** section 03 - mid_menu **************************/
/***********************************************************/
section.mid_menu { margin-top: 130px; }
section.mid_menu article { display: flex; justify-content: center; text-align: center; margin-bottom: 95px; }
section.mid_menu article h4 { font-size: 24px; color: rgb(65, 65, 65); font-weight: bold; line-height: 1.2; margin-top: 30px; }
section.mid_menu article p { font-size: 16px; color: rgb(138, 138, 138); font-weight: 400; line-height: 1.375; margin-top: 8px; }
section.mid_menu article a:hover img { filter: invert(80%) sepia(100%) saturate(641%) hue-rotate(204deg) brightness(55%) contrast(97%); animation: bounce_y 0.4s ease 1; }
@keyframes bounce_y { 0%, 100% { transform: translatey(0); }
 50% { transform: translatey(-10px); }
 }
@media (max-width: 1280px) { section.mid_menu article>a>img { width: 130px; }
 section.mid_menu article>a>h4 { font-size: 16px; }
 section.mid_menu article>a>p { font-size: 12px; }
 section.mid_menu article {
    margin-bottom: 50px;
}
 }

section.liveqna {display: none;}
@media (max-width: 1280px) {
    section.liveqna {display: block;}
 }

/***********************************************************/
/********** section 04 - card_menu *********************22*****/
/***********************************************************/
section.card_menu { margin-top: 30px; }
section.card_menu .card_box { background-image: url('../img/main/main_sec_04_bg02.png'); min-height: 495px; background-size: 812px; background-position: -233px -289px; background-color: #dfe5eb; border-radius: 30px; display: flex; align-items: center; justify-content: center; flex-direction: column; position: relative; overflow: hidden; transition: background-image .8s ease-in-out; }
section.card_menu .card_box:hover { background-image: url('../img/main/main_sec_04_bg01.png'); }
section.card_menu .card_box.card_sec01 { background-color: #dfe5eb; }
section.card_menu .card_box.card_sec02 { background-color: #ecd6ba; margin-top: 30px; }
section.card_menu .card_box.card_sec03 { background-color: #ebddde; }
section.card_menu .card_box .bot_btn { position: absolute; bottom: 0; right: 0; width: 250px; height: 92px; background: white; border-radius: 30px 0 0 0; box-shadow: -2px -2px 4px 0px #ccc; display: flex; align-items: center; justify-content: center; }
section.card_menu article { padding: 14px; }
section.card_menu .card_box .bot_btn span { font-size: 24px; font-weight: 600; margin: 0 30px 0 10px; }
section.card_menu .card_box a svg path { transition: fill .3s ease-in-out;}
section.card_menu .card_box a:hover svg { overflow: visible; }
section.card_menu .card_box a:hover svg path { fill: #3e4d9a !important; animation: bounce_x 0.4s ease 1;}
@keyframes bounce_x { 0%, 100% { transform: translateX(0); }
    50% { transform: translateX(10px); }
}
section.card_menu .card_box .icon { margin-top: -65px; }
section.card_menu .card_box h4 { margin-top: 21px; font-weight: bold; font-size: 28px; }
section.card_menu .card_box p { margin-top: 15px; font-size: 18px; font-weight: 500; }
section.card_menu .card_box img.mo_arr {
    display: none;
}

@media (max-width: 1280px) {
    section.card_menu .card_box { min-height: 380px; }
    section.card_menu article { -webkit-transition-delay: 0s; -moz-transition-delay: 0s; -ms-transition-delay: 0s; -o-transition-delay: 0s; transition-delay: 0s; }
    section.card_menu article {
        padding-left: 6px;
        padding-right: 6px;
    }
    section.card_menu article:nth-child(2) {
        margin-top: 16px;
    }
    section.card_menu {
        padding-left: 6px!important;
        padding-right: 6px!important;
    }
    section.card_menu .card_box .icon img {
        height: 30px;
    }
    section.card_menu .card_box .icon {
        margin-top: 0;
    }
    section.card_menu .card_box p,
    section.card_menu .card_box .bot_btn span{display: none;}
    section.card_menu .card_box .bot_btn {
        width: 40%;
        height: 30px;
        border-radius: 15px 0 0 0;
    }
    section.card_menu .card_box {
        min-height: auto;
        width: 100%;
        aspect-ratio: 11/12;
        border-radius: 15px;
    }
    section.card_menu .card_box a svg {
        display: none;
    }
    section.card_menu .card_box img.mo_arr {
        display: inline-block;
    }
    section.card_menu .card_box h4 {
        margin-top: 6px;
        font-weight: bold;
        font-size: 16px;
    }
}


/***********************************************************/
/********** section 05 - com_banner **************************/
/***********************************************************/

section.com_banner { margin-bottom: 50px; padding: 0px 60px; position: relative; }
section.com_banner .company_Swiper .swiper-slide { border: 1px solid #dadada; padding: 10px 0; }
section.com_banner .company_Swiper .swiper-slide img { width: 100%; height: 47px; }
section.com_banner .swiper-button-next,
section.com_banner .swiper-button-prev { width: 40px; height: 40px; color: #000000; font-size: 24px; border-radius: 50%; }
section.com_banner .swiper-button-next,
section.com_banner .swiper-button-prev { position: absolute; top: 50%; z-index: 10; }
section.com_banner .swiper-button-next { right: 0px; }
section.com_banner .swiper-button-prev { left: 0px; }
section.com_banner .swiper-button-next::after,
section.com_banner .swiper-button-prev::after { font-size: 26px; color: #828282; }


/* header 1450px 이하 */
@media (max-width: 1450px) { /*
 header .header_inner .logo { width: 50%; order: 1; }
 header .header_inner .nav { width: 100%; order: 3; }
 header .header_inner .right { width: 50%; order: 2; }
 */
 section.card_menu .card_box.card_sec02 { margin-top: 0px; }
}