html,body {
    height: 100%;
    scroll-behavior: smooth;
    background:#fff!important;
}

@import url(//fonts.googleapis.com/earlyaccess/nanumpenscript.css);

.nanumpenscript * {
 font-family: 'Nanum Pen Script', cursive;
}
.brand_color {
    color:#274AAF;
}
.color_black {
    color:#000!important;
}
.test_box {
    width: 200px;
    height: 50px;
    background:red;
    color:#fff;
}

.bg_gray {
    background:#f9f9f9;
    padding:40px 10px!important;
    margin-top:100px;
}
.mt0 {
    margin-top: 0!important;
}
.mt20 {
    margin-top: 20px!important;
}
.mt30 {
    margin-top: 30px!important;
}
.mt40 {
    margin-top: 40px!important;
}
.mt50 {
    margin-top: 50px!important;
}
.pd0 {
    padding: 0!important;
}

.bar {
    width: 1px;
    margin:60px auto 0;
    height: 200px;    
    background:#ddd;
}
.bar2 {
    width: 100%;
    height: 1px;
    background:#ddd;
    margin:20px 0 20px 0;
}
.bar4 {
    width: 100%;
    height: 1px;
    border-top:1px solid #ddd;
    margin:60px auto;
}

.desc_list {
    display: flex;
    margin-top: 20px;
}

.desc_list > li {
    width: calc(50% - 20px);
    font-size: 18px;
    line-height: 26px;
    color:#666;
}
.desc_list.type2 > li {
    width: 100%;
}

.tit {
    font-size: 36px;
    line-height: 46px;
    font-weight: 700;
    margin-top: 6px;
    text-align: center;
    color:#000;
}

.tit2 {
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 600;
    color:#1C79FA;
}
.stxt {
    display: block;
    margin:60px auto 0;
}
.tit_desc {
    font-size: 18px;
    font-weight: 300;
    color:#666;
    margin-top: 20px;
    line-height: 26px;
    text-align: center;
    word-break: keep-all;
}
.stit {
    font-size: 46px;
    line-height: 46px;
    font-weight: 700;
    margin-top: 6px;
    text-align: center;
}
@media (max-width: 768px) {
    .stit {
        font-size: 24px;
        line-height: 32px;
        word-break: keep-all;
    }
}
.sub_banner_wrap {
    position: relative;
}
.sub_banner {
    background:url('../img/sub_banner.png') center no-repeat;
    background-size:cover;
    height: 460px;
    margin-top: 100px;
    animation : s-up 3s .2s both!important;
    
}
.sub_banner > .inner {
    position: relative;
    width: 100%;
    height: 100%;
    
}
.sub_banner_tit {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    text-align: center;
    color:#fff;
}

.sub_banner_tit > h2 {
    font-size: 60px;
    font-weight: 700;
    text-transform: uppercase;
    animation : text 1s .2s both!important;
}
.loca_wrap {
    margin-top: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
}
.loca_wrap > li {
    font-size: 16px;
    font-weight: 300;
}
.loca_wrap > li.arrow {
    font-weight: 300!important;
    font-size: 12px!important;
}
.location_wrap {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(0,0,0,.8);
    border-top: 1px solid rgba(255,255,255,.15);
    border-bottom: 1px solid rgba(255,255,255,.15);
    z-index: 100;
}

.location_inner {
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    height: 78px;
    overflow: visible;
}

.location_home {
    width: 90px;
    height: 78px;
    border-left: 1px solid rgba(255,255,255,.18);
    border-right: 1px solid rgba(255,255,255,.18);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 26px;
    text-decoration: none;
}

.location_item {
    position: relative;
    width: 300px;
    border-right: 1px solid rgba(255,255,255,.18);
}

.location_btn {
    width: 100%;
    height: 78px;
    padding: 0 28px;
    background: none;
    border: 0;
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.location_btn:after {
    content: "";
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 9px solid #fff;
    transition: .25s;
    flex: 0 0 auto;
}

.location_item.active .location_btn:after {
    transform: rotate(180deg);
}

.location_depth {
    display: none;
    position: absolute;
    left: 0;
    top: 78px;
    width: 100%;
    background: #fff;
    box-shadow: 0 10px 25px rgba(0,0,0,.15);
    z-index: 9999;
}

.location_item.active .location_depth {
    display: block;
}

.location_depth a {
    display: block;
    padding: 17px 28px;
    color: #333;
    font-size: 17px;
    text-decoration: none;
    border-bottom: 1px solid #eee;
}

.location_depth a:hover,
.location_depth a.on {
    background: #2f83c9;
    color: #fff;
}

@media (max-width: 1400px) {
    .location_inner {
        padding: 0 20px;
        box-sizing: border-box;
    }
}
@media (max-width: 768px) {
    .location_wrap {
        position: relative;
        z-index: 9998;
        overflow: visible;
    }

    .location_inner {
        width: 100%;
        max-width: none;
        height: 56px;
        padding: 0;
        display: flex;
        overflow: visible;
    }

    .location_home {
        display: none;
    }

    .location_item {
        width: 50%;
        flex: 1 1 50%;
        min-width: 0;
        position: static;
        border-right: 1px solid rgba(255,255,255,.18);
    }

    .location_btn {
        height: 56px;
        padding: 0 13px;
        font-size: 14px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .location_depth {
        position: fixed;
        left: 0;
        top: auto;
        width: 100%;
        background: #fff;
        z-index: 999999;
        box-shadow: 0 10px 25px rgba(0,0,0,.18);
    }

    .location_item.active .location_depth {
        display: block;
    }

    .location_depth a {
        padding: 14px 16px;
        font-size: 14px;
    }
}
.sub_tit {
    font-size: 30px;
    font-weight: 700;
    position: relative;
    text-align: center;
}
.sub_tit2 {
    font-size: 30px;
    margin-top: 60px;
    font-weight: 700;
    color:#27983B;
    text-align: center;
}
.sub_tit3 {
    font-size: 30px;
    margin-top: 30px;
    text-align: center;
    line-height: 40px;
}
.sub_tit4 {
    font-size: 24px;
    margin-top: 40px;
    text-align: center;
    font-weight: 700;
    margin-bottom: 20px;
    line-height: 32px;
}
.sub_desc {
    text-align: center;
    font-size: 18px;
    font-weight: 300;
    color:#666;
    margin-top: 20px;
    line-height: 26px;
}
.smenu_wrap {
    margin-top: 100px;
}
.smenu_wrap > .inner {

}
.smenu {
    display: flex;
    justify-content: center;
}
.smenu > li {
    max-width: 297px;
    width: 100%;
    aspect-ratio: 1/0.2222222222222222;
    background:#fff;
    border:4px solid #F5F5F5;
    border-right:0;
}

.smenu > li:last-child {
    border-right:4px solid #F5F5F5;
}
.smenu > li.active {
    background:#FFDF34;
    border:0;
}
.smenu > li.active a {
}
.smenu > li > a {
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    line-height: 66px;
    font-family: "Poppins", sans-serif;
    font-size: 18px;
}




.sub_section {
    padding:100px 0!important;
}
.sub_section.type2 {
    padding:50px 0!important;
}
.sub_section.type3 {
    padding:50px 0 200px 0!important;
}
.sub_section.type5 {
    padding-bottom: 0!important;
}
.hide {
    position: absolute;
    top: -9999px;
    left: -9999px;
    width: 1px;
    height: 1px;
    text-indent: -9999px;
}
.fw700 {
    font-weight: 700;
}
.board.inner {
    margin-top: 80px;
    margin-bottom: 120px;
}
.board.inner > h2 {
    margin-bottom: 50px;
}
@media (max-width:768px){
    .board.inner > h2 {
        font-size: 24px;
    margin-bottom: 0px;
}

}
.inner {
    max-width: 1400px;
    margin:0 auto;
}
.section {
    padding: 50px 0;
}

.brand_stit {
    font-size: 18px;
    font-weight: 700;
    color:#274AAF;
    text-transform: uppercase;
}
.brand_tit {
    font-size: 40px;
    line-height: 48px;
    margin-top: 30px;
}
.brand_desc {
    font-size: 20px;
    font-weight: 300;
    color:#666;
    margin-top: 30px;
    line-height: 26px;
}
.br_pc {
    display: block;
}
.br_m {
    display: none;
}

.b_color {
    color: #327bbe;
}
.b_color2 {
    color:#001969;
}
.b_color3 {
    color:#FFDD35;
}
#bo_v_img {width:100%;overflow:hidden;text-align:center!important;zoom:1}


/* 헤더 */
.header {
    height: 100px;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background:#fff;
}


.header > .inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    
}
.logo {
    width: 167px;
    aspect-ratio: 167/40;
    background:url('../img/logo.png') center no-repeat;
    background-size:contain;
    transition: all .4s;
}
.logo > a {
    font-weight: 700;
    display: block;
    width: 100%;
    height: 100%;
}

.nav {
    display: flex;
    align-items: center;
}

.nav > li {
    margin-right: 60px;
    position: relative;
    height: 100%;
    line-height: 100px;
    transition: all .4s;
}
.nav > li > a {
    font-size: 18px;
    font-weight: 400;
    display: block;
    height: 100%;
    width: 100%;
}
.header.active .nav > li > a {
    color:#000;
}

.nav.sub > li > a {
    color:#000;
    
}


.nav > li > a:hover {

    position: relative;
}
.nav > li.active {
    position: relative;
}


.nav > li:last-child {
    margin-right: 0;
}

.snb {
    display: none;
    padding:20px;
    width: 180px;
    background:#0D2F55;
    border-top:0;
    position: absolute;
    top:70px;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    line-height:normal;
    transition: all .4s;
}


.nav > li.active > .snb {
    display: block;
}

.snb > li {
    margin-bottom: 20px;
}
.snb > li:last-child {
    margin-bottom: 0;
}
.snb > li > a {
    font-family: 'pretendard',sans-serif;
    color:#fff;
    font-size: 16px;
    font-weight: 300;
}

.btn_contact {
}
.btn_contact > a {
    display: flex;
    align-items: center;
    gap: 5px;
}
.btn_contact > a > p {
    font-size: 30px;
    font-weight: 700;
        color: #002e59;
}
.btn_contact.type2 {
    display: none;
}


/* 메인배너 */
.main_banner {
    height: 750px;
    overflow: hidden;
    margin-top: 100px;
}

.swiper {
    width: 100%;
    height: 100%;
}

.mySwiper .swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #000;
    display: flex;
    justify-content: center;
    align-items: center;
}

.swiper-slide.img01 {
    background:url('../img/main_banner.png') center no-repeat;
    transform: translate3d(-1905px, 0px, 0px);
    background-size:cover;
}
.swiper-slide.img02 {
    background:url('../img/main_banner02.png') center no-repeat;
    background-size:cover;
}
.swiper-slide.img03 {
    background:url('../img/main_banner03.png') center no-repeat;
    background-size:cover;
}

.mySwiper .swiper-slide > .txt_wrap {
    max-width: 1400px;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: left;
    
}
.m_txt {
    max-width: 728px;
    width: 100%;
    aspect-ratio: 728/100;
    background:url('../img/m_txt.png') center no-repeat;
    background-size:contain;
}

.mySwiper .swiper-slide > .txt_wrap > p {
    font-size: 20px;
    margin-top: 26px;
    line-height: 28px;
    color:#fff;
}


.mySwiper .swiper-slide-active .txt_wrap > p {
    animation : text 1s 1.4s both;
}
.mySwiper .swiper-slide-active .txt_wrap > .btn_wrap {
    animation : text 1s 1.6s both;
}

.btn_wrap {
    width: 414px;
    display: flex;
    margin-top: 40px;
}
.btn_wrap > .btn_more {
    width: 200px;
    height: 60px;
    background:none;
    border:1px solid #1E3A5C;
    border-radius: 5px 0 5px 0;
    margin-right: 10px;
}
.btn_wrap > .btn_more:last-child {
    margin-right: 0;
}
.btn_wrap > .btn_more > a {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 60px;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
}
.btn_more:hover {
    background:#1E3A5C;
}
.btn_more:hover > a {
    color:#fff;
}
.m_img {
    position: absolute;
    bottom: 0;
    right: 200px;
    max-width: 639px;
    width: 100%;
    aspect-ratio: 1/1.120500782472613;
    background:url('../img/m_img.png') center no-repeat;
    background-size:contain;;
}

/* 메인배너 --*/





/* msec_01 */
.msec_01{
    display:flex;
    width:100%;
    padding: 0;
    min-height:420px;
}

.reward{
    width:50%;
    background:url('../img/80be0b68f2.png') center no-repeat;
    background-size:contain;
}

.reward2{
    width:50%;
    background:#f5f5f5;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:40px;
    box-sizing:border-box;
}

.reward2 > ul{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:40px;
    margin:0;
    padding:0;
    list-style:none;
}

.reward2 > ul > li{
    width:25%;
}

.reward2 > ul > li > a{
    display:block;
    text-decoration:none;
    color:#111;
}

.ico_reward{
    display:flex;
    align-items:center;
    justify-content:center;
    width:150px;
    aspect-ratio:1/1;
    margin:0 auto;
    background:#fff;
    border-radius:50%;
}

.ico_reward img{
    max-width:55%;
    max-height:55%;
}

.reward2 > ul > li > a > h2{
    text-align:center;
    margin-top:20px;
    font-size:20px;
    font-weight:700;
}

/* 모바일 */
@media (max-width:768px){
    .msec_01{
        display:block;
        min-height:auto;
    }

    .reward{
        width:100%;
        height:210px;
        background-position:center;
        background-size:fit;
    }

    .reward2{
        width:100%;
        padding:48px 12px 28px;
        background:#f5f5f5;
    }

    .reward2 > ul{
        display:grid;
        grid-template-columns:repeat(2, 1fr);
        gap:14px;
        width:100%;
    }

    .reward2 > ul > li{
        width:100%;
    }

    .reward2 > ul > li > a{
        display:flex;
        align-items:center;
        justify-content:center;
        gap:14px;
        height:58px;
        background:#fff;
        border-radius:8px;
        box-sizing:border-box;
    }

    .ico_reward{
        width:34px;
        height:34px;
        aspect-ratio:auto;
        margin:0;
        background:none;
        border-radius:0;
    }

    .ico_reward img{
        max-width:100%;
        max-height:100%;
    }

    .reward2 > ul > li > a > h2{
        margin:0;
        font-size:14px;
        font-weight:700;
        white-space:nowrap;
    }
}

@media (max-width:480px){
    .reward{
        height:210px;
    }
}/* msec_01 */


/* msec_02 */
.msec_02 {

}
/* msec_02 */


/* msec_03 */
/* msec_03 */

/* msec_04 */
.msec_04 {
    background: #f1f5f8;
}
.g_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-top: 50px;
}
@media (max-width:768px){
    .g_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 50px;
}
}

/* msec_04 */


/* msec_05 */
.map {
    margin-top: 50px;
}
.map_info {
    display: flex;
    justify-content: space-between;
    background:#1E3A5C;
    padding:32px;
    margin-top: 10px;
    border-radius: 10px;
}
.map_info > .info {
    display: flex;
    color:#fff;
}
.map_info > .info > li {
    display: flex;
    align-items: center;
    margin-right: 20px;
}
.map_info > .info > li > span {
    margin-right: 6px;
}
.map_info > .info > li > p {
    font-size: 18px;
    font-weight: 600;
}
.map_info > .site_link {
    display: flex;
}
.map_info > .site_link > li {
    margin-left: 10px;
}
/* msec_05 */

/* msec_06 */
.msec_06 {background: #f1f5f8;}
/* msec_06 */


/* sub1_1 */
.greeting_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 60px;
}
.greeting_wrap > div {
    width: calc(50% - 20px);
}
.g1 > h2 {
    font-size: 36px;
    line-height: 44px;
    margin-bottom: 30px;
}
.g2 > h3 {
    font-size: 22px;
    line-height: 30px;
    margin-bottom: 40px;
}
.g2 > p {
    font-size: 18px;
    line-height: 26px;
    color:#666;
    position: relative;
}
.g2 > p:after {
    content:"";
    width: 250px;
    height: 250px;
    background:url('../img/sub0101_bg01.png') center no-repeat;
    background-size:contain;
    position: absolute;
    bottom: 0;
    right: 0;
}

@media (max-width: 1024px) {
    .greeting_wrap {
        gap: 40px;
        align-items: flex-start;
    }

    .g1 > h2 {
        font-size: 30px;
        line-height: 1.35;
    }

    .g2 > h3 {
        font-size: 20px;
        line-height: 1.5;
    }

    .g2 > p {
        font-size: 16px;
        line-height: 1.7;
    }
}

@media (max-width: 768px) {
    .greeting_wrap {
        display: block;
        margin-top: 35px;
    }

    .greeting_wrap > div {
        width: 100%;
    }

    .g1 > h2 {
        font-size: 24px;
        line-height: 1.4;
        margin-bottom: 22px;
        word-break: keep-all;
    }

    .img_greeting {
        margin-bottom: 35px;
    }

    .img_greeting img {
        width: 100%;
        display: block;
    }

    .g2 > h3 {
        font-size: 18px;
        line-height: 1.55;
        margin-bottom: 25px;
        word-break: keep-all;
    }

    .g2 > p {
        font-size: 15px;
        line-height: 1.75;
        word-break: keep-all;
    }

    .g2 > p:after {
        width: 160px;
        height: 160px;
        opacity: .18;
        right: 0;
        bottom: 0;
        z-index: -1;
    }
}

@media (max-width: 480px) {
    .g1 > h2 {
        font-size: 21px;
    }

    .g2 > h3 {
        font-size: 16px;
    }

    .g2 > p {
        font-size: 14px;
    }

    .g2 > p:after {
        width: 130px;
        height: 130px;
    }
}


.team_service_sec {
            width: 100%;
            background: #fff;
        }

        .team_service_inner {
            max-width: 1400px;
            margin: 0 auto;
            padding: 0 20px;
            box-sizing: border-box;
        }

        .team_service_tit {
            text-align: center;
            font-size: 34px;
            font-weight: 700;
            color: #183b82;
            margin: 0;
        }

        .team_service_desc {
            margin-top: 28px;
            text-align: center;
            font-size: 18px;
            line-height: 1.75;
            color: #111;
            word-break: keep-all;
        }

        .team_service_list {
            margin-top: 60px;
            display: grid;
            grid-template-columns: repeat(7, 1fr);
            gap: 0 28px;
        }

        .team_service_item {
            text-align: center;
        }

        .team_service_head {
            height: 58px;
            background: #263f8b;
            color: #fff;
            border-radius: 8px;
            font-size: 18px;
            font-weight: 700;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .team_service_subs {
            margin-top: 20px;
        }

        .team_service_sub {
            position: relative;
            height: 58px;
            border: 1px solid #ddd;
            background: #fff;
            color: #333;
            font-size: 16px;
            display: flex;
            align-items: center;
            justify-content: center;
            box-sizing: border-box;
        }

        .team_service_sub+.team_service_sub {
            margin-top: 20px;
        }

        .team_service_sub:before {
            content: "";
            position: absolute;
            left: 50%;
            top: -14px;
            width: 6px;
            height: 6px;
            background: #2c67b2;
            border-radius: 50%;
            transform: translateX(-50%);
        }

        @media (max-width: 1024px) {
            .team_service_sec {
                padding: 60px 0;
            }

            .team_service_tit {
                font-size: 30px;
            }

            .team_service_desc {
                font-size: 16px;
            }

            .team_service_list {
                grid-template-columns: repeat(4, 1fr);
                gap: 40px 18px;
            }

            .team_service_head {
                height: 52px;
                font-size: 16px;
            }

            .team_service_sub {
                height: 48px;
                font-size: 14px;
            }
        }

        @media (max-width: 768px) {
            .team_service_sec {
                padding: 45px 0;
            }

            .team_service_inner {
                padding: 0 10px;
            }

            .team_service_tit {
                font-size: 25px;
                line-height: 1.35;
            }

            .team_service_desc {
                margin-top: 18px;
                font-size: 14px;
                line-height: 1.65;
            }

            .team_service_list {
                margin-top: 35px;
                grid-template-columns: repeat(4, 1fr);
                gap: 32px 10px;
            }

            .team_service_head {
                height: 41px;
                border-radius: 8px;
                font-size: 14px;
            }

            .team_service_subs {
                margin-top: 13px;
            }

            .team_service_sub {
                height: 34px;
                font-size: 12px;
                letter-spacing: -0.04em;
            }

            .team_service_sub+.team_service_sub {
                margin-top: 12px;
            }

            .team_service_sub:before {
                top: -9px;
                width: 5px;
                height: 5px;
            }
        }

        @media (max-width: 480px) {
            .team_service_tit {
                font-size: 22px;
            }

            .team_service_list {
                grid-template-columns: repeat(4, 1fr);
                gap: 30px 8px;
            }

            .team_service_head {
                font-size: 13px;
            }

            .team_service_sub {
                font-size: 11px;
            }
        }

.consult_table_sec {
            width: 100%;
            padding: 60px 0;
            background: #fff;
        }

        .consult_table_inner {
            max-width: 1400px;
            margin: 0 auto;
            padding: 0 0px;
            box-sizing: border-box;
        }

        .consult_table {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            border-top: 3px solid #0b3d69;
            border-bottom: 1px solid #ddd;
        }

        .consult_item {
            border-right: 1px solid #ddd;
            border-bottom: 1px solid #ddd;
            text-align: center;
        }

        .consult_item:nth-child(2n) {
            border-right: 0;
        }

        .consult_head {
            height: 62px;
            background: #fafafa;
            border-bottom: 1px solid #ddd;
            font-size: 18px;
            font-weight: 700;
            color: #111;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .consult_body {
            padding: 26px 20px 30px;
            box-sizing: border-box;
        }

        .consult_tel {
            font-size: 16px;
            line-height: 1.5;
            color: #24344d;
        }

        .consult_btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            margin-top: 22px;
            min-width: 230px;
            height: 40px;
            padding: 0 24px;
            background: #888;
            border-radius: 4px;
            color: #fff;
            font-size: 15px;
            font-weight: 700;
            text-decoration: none;
            box-sizing: border-box;
        }

        .consult_btn:hover {
            background: #0b3d69;
        }

        @media (max-width: 768px) {
            .consult_table_sec {
                padding: 40px 0;
            }

            .consult_table_inner {
                padding: 0 12px;
            }

            .consult_table {
                grid-template-columns: 1fr;
            }

            .consult_item {
                border-right: 0;
            }

            .consult_head {
                height: 54px;
                font-size: 16px;
            }

            .consult_body {
                padding: 22px 14px 26px;
            }

            .consult_tel {
                font-size: 14px;
            }

            .consult_btn {
                min-width: 210px;
                height: 38px;
                font-size: 14px;
            }
        }
/* sub1_1 */


/* sub1_2 */
.sub0105_sec {
            width: 100%;
            padding: 80px 0;
            background: #fff;
        }

        .sub0105_inner {
            max-width: 1400px;
            margin: 0 auto;
            padding: 0 20px;
            box-sizing: border-box;
        }

        .sub0105_list {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 20px;
        }

        .sub0105_item {
            text-align: center;
        }

        .sub0105_box {
            height: 215px;
            border-radius: 12px;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            color: #fff;
        }

        .sub0105_item:nth-child(1) .sub0105_box {
            background: #3d7fbe;
        }

        .sub0105_item:nth-child(2) .sub0105_box {
            background: #0f62b4;
        }

        .sub0105_item:nth-child(3) .sub0105_box {
            background: #003d79;
        }

        .sub0105_item:nth-child(4) .sub0105_box {
            background: #1d7ba3;
        }

        .sub0105_tit {
            font-size: 28px;
            font-weight: 700;
            line-height: 1.3;
        }

        .sub0105_icon {
            margin-top: 30px;
        }

        .sub0105_icon img {
            width: 68px;
            display: block;
        }

        .sub0105_desc {
            margin-top: 22px;
            font-size: 18px;
            line-height: 1.6;
            color: #111;
            word-break: keep-all;
        }

        @media (max-width:1024px) {

            .sub0105_sec {
                padding: 60px 0;
            }

            .sub0105_list {
                grid-template-columns: repeat(2, 1fr);
            }

            .sub0105_box {
                height: 200px;
            }

            .sub0105_tit {
                font-size: 24px;
            }

            .sub0105_desc {
                font-size: 16px;
            }

        }

        @media (max-width:768px) {

            .sub0105_sec {
                padding: 45px 0;
            }

            .sub0105_inner {
                padding: 0 12px;
            }

            .sub0105_list {
                gap: 14px;
            }

            .sub0105_box {
                height: 150px;
                border-radius: 10px;
            }

            .sub0105_tit {
                font-size: 20px;
            }

            .sub0105_icon {
                margin-top: 18px;
            }

            .sub0105_icon img {
                width: 44px;
            }

            .sub0105_desc {
                margin-top: 14px;
                font-size: 14px;
                line-height: 1.5;
            }

        }

        @media (max-width:480px) {

            .sub0105_tit {
                font-size: 17px;
            }

            .sub0105_box {
                height: 125px;
            }

            .sub0105_icon img {
                width: 36px;
            }

            .sub0105_desc {
                font-size: 13px;
            }

        }
.promise_sec {
            width: 100%;
            padding: 80px 0;
            background: #fff;
        }

        .promise_inner {
            max-width: 1400px;
            margin: 0 auto;
            padding: 0 20px;
            box-sizing: border-box;
        }

        .promise_tit {
            text-align: center;
            font-size: 42px;
            font-weight: 700;
            color: #111;
            line-height: 1.3;
        }

        .promise_tit span {
            color: #2e67b3;
        }

        .promise_list {
            margin-top: 50px;
        }

        .promise_item {
            display: flex;
            gap: 18px;
        }

        .promise_item+.promise_item {
            margin-top: 14px;
        }

        .promise_left {
            width: 380px;
            min-width: 280px;
            background: linear-gradient(135deg, #0f4d93, #1f5fa5);
            border-radius: 8px;
            padding: 34px 34px 30px;
            box-sizing: border-box;
            color: #fff;
        }

        .promise_num {
            font-size: 20px;
            font-weight: 700;
            opacity: .95;
        }

        .promise_left_tit {
            margin-top: 20px;
            font-size: 20px;
            font-weight: 400;
            line-height: 28px;
            word-break: keep-all;
        }

        .promise_right {
            flex: 1;
            background: #f7f7f7;
            border-radius: 8px;
            padding: 34px 40px;
            box-sizing: border-box;

            display: flex;
            align-items: center;
        }

        .promise_desc {
            font-size: 17px;
            line-height: 2;
            color: #555;
            word-break: keep-all;
        }

        @media (max-width:1400px) {

            .promise_left {
                width: 250px;
                min-width: 250px;
                padding: 30px 28px;
            }

            .promise_left_tit {
                font-size: 28px;
            }

            .promise_right {
                padding: 30px;
            }

            .promise_desc {
                font-size: 16px;
                line-height: 1.9;
            }

        }

        @media (max-width:768px) {

            .promise_sec {
                padding: 50px 0;
            }

            .promise_inner {
                padding: 0 12px;
            }

            .promise_tit {
                font-size: 28px;
                line-height: 1.4;
            }

            .promise_list {
                margin-top: 32px;
            }

            .promise_item {
                flex-direction: column;
                gap: 10px;
            }

            .promise_left {
                width: 100%;
                min-width: auto;
                padding: 24px 22px;
            }

            .promise_num {
                font-size: 17px;
            }

            .promise_left_tit {
                margin-top: 14px;
                font-size: 22px;
                line-height: 1.45;
            }

            .promise_right {
                padding: 22px 20px;
            }

            .promise_desc {
                font-size: 14px;
                line-height: 1.8;
            }

        }

        @media (max-width:480px) {

            .promise_tit {
                font-size: 24px;
            }

            .promise_left_tit {
                font-size: 20px;
            }

            .promise_desc {
                font-size: 13px;
            }

        }
/* sub1_2 */

/* sub1_5 */
.map_wrap{
    width:100%;
    margin-top:50px;
    overflow:hidden;
    box-sizing:border-box;
}

.map_frame{
    display:block;
    width:100%;
    height:450px;
    border:0;
}

.contact_info_sec,
.contact_info_sec *{
    box-sizing:border-box;
}

.contact_info_sec{
    width:100%;
    padding:60px 0;
    background:#fff;
    overflow:hidden;
}

.contact_info_inner{
    max-width:1400px;
    width:100%;
    margin:0 auto;
}

.contact_info_list{
    width:100%;
    border-top:3px solid #0b3d69;
}

.contact_info_item{
    display:flex;
    align-items:center;
    width:100%;
    min-height:82px;
    border-bottom:1px solid #ddd;
}

.contact_info_icon{
    width:80px;
    flex:0 0 80px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.contact_info_icon img{
    width:42px;
    height:42px;
    display:block;
}

.contact_info_tit{
    width:140px;
    flex:0 0 140px;
    font-size:18px;
    font-weight:700;
    color:#111;
}

.contact_info_txt{
    flex:1;
    min-width:0;
    font-size:16px;
    line-height:1.6;
    color:#26344d;
    word-break:keep-all;
    overflow-wrap:break-word;
}

@media (max-width:768px){
    .map_wrap{
        margin-top:30px;
    }

    .map_frame{
        height:320px;
    }

    .contact_info_sec{
        padding:35px 0;
    }

    .contact_info_inner{
        padding:0;
    }

    .contact_info_item{
        display:grid;
        grid-template-columns:42px 76px 1fr;
        gap:10px;
        align-items:flex-start;
        min-height:auto;
        padding:16px 0;
    }

    .contact_info_icon{
        width:42px;
        flex:none;
        padding-top:2px;
    }

    .contact_info_icon img{
        width:30px;
        height:30px;
    }

    .contact_info_tit{
        width:auto;
        flex:none;
        font-size:15px;
        padding-top:4px;
    }

    .contact_info_txt{
        font-size:14px;
        line-height:1.6;
        padding-top:4px;
    }
}

@media (max-width:480px){
    .map_frame{
        height:280px;
    }

    .contact_info_item{
        grid-template-columns:36px 68px 1fr;
        gap:8px;
        padding:15px 0;
    }

    .contact_info_icon{
        width:36px;
    }

    .contact_info_icon img{
        width:28px;
        height:28px;
    }

    .contact_info_tit{
        font-size:14px;
    }

    .contact_info_txt{
        font-size:13px;
    }
}
/* sub1_5 */



/* =========================
   THEME COLOR
========================= */

.sub_theme.theme_green{
    --theme-point:#159b91;
    --theme-point2:#55c8c5;
    --theme-soft:#eef5f4;
    --theme-soft2:#f3f8f7;
    --theme-arrow:#69cfc7;
    --theme-gradient:linear-gradient(90deg,#31cf72,#00a9a0);
}

.sub_theme.theme_blue{
    --theme-point:#327bbe;
    --theme-point2:#5d9de0;
    --theme-soft:#eef5fb;
    --theme-soft2:#f3f8fc;
    --theme-arrow:#7fb6ea;
    --theme-gradient:linear-gradient(90deg,#3d8fe8,#245fb8);
}

.sub_theme.theme_red{
    --theme-point:#ef2b2d;
    --theme-point2:#ff6b6b;
    --theme-soft:#f8f3f4;
    --theme-soft2:#fff5f5;
    --theme-arrow:#ff9ea0;
    --theme-gradient:linear-gradient(90deg,#ef2b2d,#ff6b6b);
}

.sub_theme.theme_yellow{
    --theme-point:#d8a300;
    --theme-point2:#ffcf33;
    --theme-soft:#fff8e5;
    --theme-soft2:#fffdf4;
    --theme-arrow:#ffd86b;
    --theme-gradient:linear-gradient(90deg,#ffcf33,#e2a700);
}

/* =========================
   COMMON THEME APPLY
========================= */

.sub_theme .b_color,
.sub_theme .sub0301_visual_tit span,
.sub_theme .sub0301_visual_desc span,
.sub_theme .service_step_tit span,
.sub_theme .cost_tit span{
    color:var(--theme-point) !important;
}

.sub_theme .sub0301_sec02{
    background:var(--theme-soft);
}

.sub_theme .sub0301_btn,
.sub_theme .cost_btn{
    background:var(--theme-gradient);
}

.sub_theme .banner3_1 > h2 > span{
    color:var(--theme-point2);
}

.sub_theme .online_service_list{
    border-top-color:var(--theme-point);
}

.sub_theme .online_service_item:nth-child(1),
.sub_theme .online_service_item:nth-child(3),
.sub_theme .online_service_item:nth-child(6),
.sub_theme .online_service_item:nth-child(8){
    background:var(--theme-soft2);
}

.sub_theme .service_step_tit span,
.sub_theme .service_step_num,
.sub_theme .cost_tit span{
    color:var(--theme-point);
}

.sub_theme .service_step_item{
    border-top-color:var(--theme-point);
}

.sub_theme .step_arrow{
    border-top-color:var(--theme-arrow);
    border-right-color:var(--theme-arrow);
}

.sub_theme .service_step_item:not(:last-child)::after{
    border-right-color:var(--theme-arrow);
    border-bottom-color:var(--theme-arrow);
}

.sub_theme .cost_head{
    background:var(--theme-gradient);
}

.sub_theme .cost_dot li:before{
    background:var(--theme-point);
}

/* =========================
   VISUAL
========================= */

.sub0301_visual{
    width:100%;
    height:400px;
    background:url("../img/sub0301_img01_pc.jpg") center center / cover no-repeat;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    margin-top:50px;
}
.sub0301_visual.type2{
    background:url("../img/sub0302_img01_pc.jpg") center center / cover no-repeat;
}
.sub0301_visual.type3{
    background:url("../img/sub0303_img01_pc.jpg") center center / cover no-repeat;
}
.sub0301_visual.type4{
    background:url("../img/sub0305_img01_pc.jpg") center center / cover no-repeat;
}
.sub0301_visual.type5{
    background:url("../img/sub0304_visual.jpg") center center / cover no-repeat;
}
.sub0301_visual:before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.58);
}

.sub0301_visual_inner{
    position:relative;
    z-index:1;
    text-align:center;
    color:#fff;
    padding:0 90px;
    box-sizing:border-box;
}

.sub0301_visual_inner:before,
.sub0301_visual_inner:after{
    content:"";
    position:absolute;
    top:50%;
    width:16px;
    height:145px;
    border-top:5px solid rgba(255,255,255,.85);
    border-bottom:5px solid rgba(255,255,255,.85);
    transform:translateY(-50%);
}

.sub0301_visual_inner:before{
    left:0;
    border-left:5px solid rgba(255,255,255,.85);
}

.sub0301_visual_inner:after{
    right:0;
    border-right:5px solid rgba(255,255,255,.85);
}

.sub0301_visual_tit{
    font-size:42px;
    font-weight:800;
    line-height:1.35;
    color:#fff;
}

.sub0301_visual_desc{
    margin-top:22px;
    font-size:19px;
    font-weight:500;
    line-height:1.6;
    color:#fff;
}
.sub0301_visual_desc2{
    margin-top:22px;
    font-size:19px;
    font-weight:500;
    line-height:1.6;
        color: #f7c755;
}
/* =========================
   SEC02
========================= */

.sub0301_sec02{
    width:100%;
    padding:90px 0 200px;
    overflow:hidden;
}

.sub0301_sec02_inner{
    max-width:1400px;
    margin:0 auto;
    padding:0 20px;
    box-sizing:border-box;
}

.sub0301_graph_wrap{
    margin-top:70px;
    display:flex;
    justify-content:center;
    align-items:flex-end;
    gap:34px;
}

.sub0301_graph_wrap img{
    display:block;
    max-width:100%;
}

.sub0301_graph_big{
    width:530px;
}

.sub0301_graph_small{
    width:300px;
}

.sub0301_btn_wrap{
    margin-top:55px;
    text-align:center;
}

.sub0301_btn{
    width:420px;
    max-width:100%;
    height:88px;
    border-radius:999px;
    color:#fff;
    font-size:36px;
    font-weight:700;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    transition:.25s;
}

.sub0301_btn:hover{
    transform:translateY(-3px);
}

/* =========================
   BANNER
========================= */

.banner3_1{
    max-width:1400px;
    width:100%;
    background:url('../img/sub0301_img02_pc.jpg') center no-repeat;
    background-size:cover;
    padding:100px;
    text-align:center;
    margin:-120px auto 0;
    box-sizing:border-box;
}
.banner3_1.type2{
    background:url('../img/sub0302_img02_pc.jpg') center no-repeat;
}

.banner3_1 > h2{
    font-size:20px;
    font-weight:300;
    color:#fff;
    line-height:40px;
}

.banner3_1 > h2 > span{
    font-size:34px;
    line-height:44px;
    font-weight:700;
}

/* =========================
   ONLINE SERVICE
========================= */

.online_service_sec{
    width:100%;
    padding:80px 0;
    background:#fff;
}

.online_service_inner{
    max-width:1400px;
    margin:0 auto;
    box-sizing:border-box;
}

.online_service_list{
    border-top:3px solid;
    border-bottom:1px solid #dcdcdc;
    display:grid;
    grid-template-columns:repeat(4,1fr);
}

.online_service_item{
    height:200px;
    border-right:1px dashed #d9d9d9;
    border-bottom:1px dashed #d9d9d9;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    box-sizing:border-box;
    padding:15px;
    background:#fff;
}

.online_service_item:nth-child(4n){
    border-right:0;
}

.online_service_item:nth-child(n+5){
    border-bottom:0;
}

.online_service_icon{
    width:86px;
    height:86px;
    border-radius:50%;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:20px;
}

.online_service_icon img{
    width:46px;
    height:46px;
    object-fit:contain;
    display:block;
}

.online_service_name{
    font-size:20px;
    font-weight:700;
    line-height:1.45;
    color:#111;
    letter-spacing:-0.03em;
    word-break:keep-all;
}

.online_service_small{
    display:block;
    margin-top:3px;
    font-size:14px;
    font-weight:400;
    color:#222;
    line-height:1.45;
}

/* =========================
   SERVICE STEP
========================= */

.service_step_sec{
    width:100%;
    padding:80px 0;
    background:#f5f5f5;
}

.service_step_inner{
    max-width:1400px;
    margin:0 auto;
}

.service_step_tit{
    text-align:center;
    font-size:42px;
    font-weight:800;
    color:#111;
    line-height:1.3;
}

.service_step_list{
    margin-top:60px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    column-gap:34px;
    row-gap:42px;
}

.service_step_item{
    position:relative;
    min-height:230px;
    background:#fff;
    border:1px solid #d9d9d9;
    border-top:4px solid;
    padding:34px 30px;
    box-sizing:border-box;
    overflow:visible;
}

.service_step_num{
    font-size:21px;
    font-weight:800;
}

.service_step_name{
    margin-top:28px;
    font-size:23px;
    font-weight:800;
    line-height:1.4;
    color:#111;
    letter-spacing:-0.03em;
    word-break:keep-all;
}

.service_step_desc{
    margin-top:20px;
    font-size:16px;
    line-height:1.8;
    color:#333;
    word-break:keep-all;
}

.step_arrow{
    position:absolute;
    z-index:20;
    width:16px;
    height:16px;
    border-top:5px solid;
    border-right:5px solid;
}

.step_arrow.right{
    top:50%;
    right:-26px;
    transform:translateY(-50%) rotate(45deg);
}

.step_arrow.left{
    top:50%;
    left:-26px;
    transform:translateY(-50%) rotate(-135deg);
}

.step_arrow.down{
    left:50%;
    bottom:-30px;
    transform:translateX(-50%) rotate(135deg);
}



/* =========================
   MOBILE
========================= */

@media (max-width:1024px){

    .sub0301_visual{
        height:320px;
    }

    .sub0301_visual_inner{
        padding:0 60px;
    }

    .sub0301_visual_tit{
        font-size:34px;
    }

    .sub0301_visual_desc,
    .sub0301_visual_desc2{
        font-size:17px;
    }

    .sub0301_graph_wrap{
        gap:20px;
    }

    .sub0301_graph_big{
        width:45%;
    }

    .sub0301_graph_small{
        width:27%;
    }

    .online_service_list{
        grid-template-columns:repeat(2,1fr);
    }

    .online_service_item:nth-child(2n){
        border-right:0;
    }

    .online_service_item:nth-child(4n){
        border-right:1px dashed #d9d9d9;
    }

    .online_service_item:nth-child(n+5){
        border-bottom:1px dashed #d9d9d9;
    }

    .online_service_item:nth-last-child(-n+2){
        border-bottom:0;
    }

    .service_step_list{
        grid-template-columns:repeat(2,1fr);
    }

    .step_arrow.left{
        display:none;
    }
}

@media (max-width:768px){

    .sub0301_visual{
        height:260px;
        margin-top:30px;
    }

    .sub0301_visual_inner{
        width:100%;
        padding:0 30px;
    }

    .sub0301_visual_inner:before,
    .sub0301_visual_inner:after{
        width:10px;
        height:90px;
        border-width:3px;
    }

    .sub0301_visual_tit{
        font-size:28px;
        line-height:1.4;
        word-break:keep-all;
    }

    .sub0301_visual_desc,
    .sub0301_visual_desc2{
        margin-top:16px;
        font-size:15px;
        line-height:1.7;
        word-break:keep-all;
    }

    .sub0301_sec02{
        padding:60px 0 120px;
    }

    .sub0301_graph_wrap{
        margin-top:40px;
        display:block;
    }

    .sub0301_graph_big,
    .sub0301_graph_small{
        width:100%;
    }

    .sub0301_graph_small{
        margin-top:18px;
    }

    .sub0301_btn_wrap{
        margin-top:40px;
    }

    .sub0301_btn{
        width:100%;
        height:64px;
        font-size:22px;
    }

    .banner3_1{
        margin-top:-70px;
        padding:45px 22px;
    }

    .banner3_1 > h2{
        font-size:15px;
        line-height:1.9;
        word-break:keep-all;
    }

    .banner3_1 > h2 > span{
        display:block;
        margin-top:10px;
        font-size:23px;
        line-height:1.5;
    }

    .online_service_sec{
        padding:60px 0;
    }

    .online_service_list{
        grid-template-columns:1fr;
    }

    .online_service_item{
        height:auto;
        min-height:150px;
        border-right:0 !important;
        border-bottom:1px dashed #d9d9d9 !important;
        padding:28px 20px;
    }

    .online_service_item:last-child{
        border-bottom:0 !important;
    }

    .online_service_icon{
        width:72px;
        height:72px;
        margin-bottom:16px;
    }

    .online_service_icon img{
        width:38px;
        height:38px;
    }

    .online_service_name{
        font-size:18px;
        line-height:1.5;
    }

    .online_service_small{
        font-size:13px;
    }

    .service_step_sec{
        padding:60px 0;
    }

    .service_step_tit{
        font-size:30px;
    }

    .service_step_list{
        margin-top:40px;
        grid-template-columns:1fr;
        row-gap:20px;
    }

    .service_step_item{
        min-height:auto;
        padding:28px 24px;
    }

    .service_step_num{
        font-size:18px;
    }

    .service_step_name{
        margin-top:18px;
        font-size:20px;
    }

    .service_step_desc{
        margin-top:14px;
        font-size:14px;
        line-height:1.7;
    }

    .step_arrow{
        display:none;
    }
}

@media (max-width:480px){

    .sub0301_visual{
        height:220px;
    }

    .sub0301_visual_inner{
        padding:0 20px;
    }

    .sub0301_visual_tit{
        font-size:24px;
    }

    .sub0301_visual_desc,
    .sub0301_visual_desc2{
        font-size:14px;
    }

    .sub0301_btn{
        height:58px;
        font-size:18px;
    }

    .banner3_1{
        padding:38px 18px;
    }

    .banner3_1 > h2{
        font-size:14px;
        line-height:1.8;
    }

    .banner3_1 > h2 > span{
        font-size:20px;
    }

    .online_service_item{
        min-height:135px;
        padding:24px 16px;
    }

    .online_service_name{
        font-size:16px;
    }

    .service_step_tit{
        font-size:26px;
    }

    .service_step_name{
        font-size:18px;
    }

    .service_step_desc{
        font-size:13px;
    }
}









/* =========================
   COST
========================= */

.cost_sec{
    width:100%;
    padding:70px 0 80px;
    background:#fff;
}

.cost_inner{
    max-width:1400px;
    margin:0 auto;
}

.cost_tit{
    text-align:center;
    font-size:42px;
    font-weight:800;
    line-height:1.3;
    color:#000;
    margin:0;
}

.cost_list{
    margin-top:52px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}
.cost_list.two_col{
    grid-template-columns:repeat(2,1fr);
    gap:40px;
}

@media (max-width:768px){

    .cost_list.two_col{
        grid-template-columns:1fr;
        gap:20px;
    }

}
.cost_card{
    background:#fff;
    border:1px solid #ddd;
    border-radius:8px;
    overflow:hidden;
    box-sizing:border-box;
}

.cost_head{
    height:70px;
    color:#fff;
    font-size:28px;
    font-weight:800;
    display:flex;
    align-items:center;
    justify-content:center;
}

.cost_body{
    min-height:265px;
    padding:38px 30px 34px;
    box-sizing:border-box;
}

.cost_row{
    display:flex;
    align-items:center;
    font-size:16px;
    line-height:1.65;
    color:#333;
}

.cost_row + .cost_row{
    margin-top:4px;
}

.cost_label{
    width:82px;
    font-weight:800;
    color:#111;
}

.cost_bar{
    width:1px;
    height:18px;
    background:#ddd;
    margin:0 20px 0 8px;
}

.cost_value{
    flex:1;
}

.cost_line{
    margin:22px 0 18px;
    border-top:1px dashed #ddd;
}

.cost_dot{
    margin:0;
    padding:0;
    list-style:none;
}

.cost_dot li{
    position:relative;
    padding-left:13px;
    font-size:15px;
    line-height:1.8;
    color:#333;
}

.cost_dot li:before{
    content:"";
    position:absolute;
    left:0;
    top:12px;
    width:3px;
    height:3px;
    border-radius:50%;
}

.cost_red{
    color:#ff4b63;
}

.cost_notice{
    text-align:center;
    color:#ff4b63;
    font-size:15px;
    font-weight:800;
    margin-top:0;
}

.cost_review{
    margin-top:28px;
}

.cost_review_row{
    display:flex;
    font-size:16px;
    line-height:1.75;
    color:#333;
}

.cost_review_row + .cost_review_row{
    margin-top:16px;
}

.cost_review_label{
    width:90px;
    font-weight:800;
    color:#111;
}

.cost_review_bar{
    width:1px;
    height:18px;
    background:#ddd;
    margin:5px 22px 0 0;
}

.cost_review_txt{
    flex:1;
}

.cost_btn_wrap{
    margin-top:80px;
    text-align:center;
}

.cost_btn{
    width:400px;
    max-width:100%;
    height:76px;
    border-radius:999px;
    color:#fff;
    font-size:26px;
    font-weight:800;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width:1400px){
    .online_service_inner,
    .service_step_inner,
    .cost_inner{
        padding:0 20px;
        box-sizing:border-box;
    }
}

@media (max-width:1024px){
    .service_step_list{
        grid-template-columns:repeat(2,1fr);
        gap:24px;
    }

    .step_arrow{
        display:none;
    }

    .cost_list{
        grid-template-columns:1fr;
    }

    .cost_body{
        min-height:auto;
    }
}

@media (max-width:768px){
    .sub0301_visual{
        height:300px;
    }

    .sub0301_visual_inner{
        padding:0 42px;
    }

    .sub0301_visual_tit{
        font-size:28px;
    }

    .sub0301_visual_desc{
        font-size:15px;
    }

    .sub0301_sec02{
        padding:55px 0 50px;
    }

 .sub0301_graph_wrap{
        display:grid;
        grid-template-columns:repeat(2, 1fr);
        gap:20px;
        margin-top:35px;
        padding:0 20px;
        box-sizing:border-box;
    }

    .sub0301_graph_big{
        grid-column:1 / -1;
        width:100%;
        max-width:260px;
        margin:0 auto;
    }

    .sub0301_graph_small{
        width:100%;
        margin:0;
    }

    .sub0301_graph_wrap img{
        width:100%;
        display:block;
    }
}    
.sub0301_btn{
        width:270px;
        height:58px;
        font-size:21px;
    }

    .online_service_list{
        grid-template-columns:repeat(2,1fr);
    }

    .online_service_item{
        height:165px;
    }

    .online_service_item:nth-child(4n){
        border-right:1px dashed #d9d9d9;
    }

    .online_service_item:nth-child(2n){
        border-right:0;
    }

    .service_step_list{
        margin-top:35px;
        display:block;
    }

    .service_step_item{
        min-height:auto;
        padding:20px 16px;
        margin-bottom:20px;
    }

    .service_step_item:not(:last-child)::after{
        content:"";
        position:absolute;
        left:50%;
        bottom:-15px;
        width:9px;
        height:9px;
        border-right:3px solid;
        border-bottom:3px solid;
        transform:translateX(-50%) rotate(45deg);
    }

    .service_step_num{
        display:inline-block;
        font-size:14px;
        margin-right:10px;
        vertical-align:top;
    }

    .service_step_name{
        display:inline-block;
        margin-top:0;
        font-size:15px;
    }

    .service_step_desc{
        margin-top:10px;
        font-size:13px;
        line-height:1.7;
    }

    .cost_tit,
    .service_step_tit{
        font-size:28px;
    }

    .cost_head{
        height:58px;
        font-size:21px;
    }

    .cost_body{
        padding:26px 22px;
    }

    .cost_btn{
        width:280px;
        height:56px;
        font-size:18px;
    }





.pct_cost_sec{
    width:100%;
    padding:40px 0 46px;
    background:#f9f9f9;
}

.pct_cost_inner{
    max-width:1400px;
    margin:0 auto;
}

.pct_call_wrap{
    display:flex;
    justify-content:flex-end;
    margin-bottom:14px;
}

.pct_call_btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:40px;
    padding:0 22px;
    background:#073b74;
    color:#fff;
    font-size:16px;
    font-weight:700;
    border-radius:3px;
    text-decoration:none;
}

.pct_cost_table{
    width:100%;
    border-collapse:collapse;
    table-layout:fixed;
    background:#fff;
    border:1px solid #dcdcdc;
    margin-top: 50px;
}

.pct_cost_table th{
    height:58px;
    padding:0;
    background:#f2c74d;
    color:#fff;
    font-size:17px;
    font-weight:700;
    text-align:center;
    vertical-align:middle;
    line-height:58px;
    border-right:1px solid rgba(255,255,255,.6);
    box-sizing:border-box;
}

.pct_cost_table th:last-child{
    border-right:0;
}

.pct_cost_table td{
    height:60px;
    padding:14px 18px;
    border:1px solid #ddd;
    font-size:15px;
    line-height:1.7;
    color:#222;
    text-align:center;
    vertical-align:middle;
    word-break:keep-all;
    box-sizing:border-box;
}

.pct_cost_table tbody tr:nth-child(2){
    background:#fcfcfc;
}

.pct_cost_table tbody tr:last-child td{
    height:178px;
    padding:26px 20px;
}

.pct_strong{
    font-size:16px;
    font-weight:700;
    color:#111;
}

.pct_service_txt{
    font-size:15px !important;
    line-height:1.95 !important;
    text-align:center;
}

.pct_notice{
    margin:14px 0 0;
    font-size:13px;
    line-height:1.6;
    color:#444;
}

@media (max-width:1400px){
    .pct_cost_inner{
        padding:0 20px;
        box-sizing:border-box;
    }
}

@media (max-width:768px){
    .pct_cost_sec{
        padding:30px 0;
    }

    .pct_cost_inner{
        padding:0 12px;
    }

    .pct_call_btn{
        width:100%;
        height:42px;
        font-size:15px;
    }

    .pct_cost_table{
        display:block;
        overflow-x:auto;
        white-space:nowrap;
    }

    .pct_cost_table th{
        height:50px;
        font-size:15px;
        line-height:50px;
    }

    .pct_cost_table td{
        height:auto;
        padding:14px 10px;
        font-size:13px;
        line-height:1.6;
    }

    .pct_cost_table tbody tr:last-child td{
        height:auto;
    }

    .pct_service_txt{
        min-width:500px;
        white-space:normal;
        text-align:left;
        font-size:13px !important;
    }

    .pct_notice{
        font-size:12px;
    }
}




.overseas_info_sec {
    width: 100%;
    padding: 60px 0;
    background: #fff;
}

.overseas_info_inner {
    max-width: 1400px;
    margin: 0 auto;
}

.overseas_top_banner {
    position: relative;
    height: 300px;
    background: url('../img/sub0305_img02_pc.jpg') center center/cover no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.overseas_top_banner:before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .52);
}
.overseas_top_banner2 > h2{
    margin-top: 100px;
    margin-bottom: 50px;
}
.overseas_top_txt {
    position: relative;
    z-index: 1;
    text-align: center;
    color: #fff;
    padding: 0 20px;
    box-sizing: border-box;
}

.overseas_top_txt p {
    margin: 0;
    font-size: 22px;
    font-weight: 500;
    line-height: 1.7;
    color: #fff;
    word-break: keep-all;
}

.overseas_top_txt h3 {
    margin: 10px 0 12px;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.4;
    color: #f4c64f;
    word-break: keep-all;
}

.overseas_country_banner {
    position: relative;
    height: 242px;
    margin-top: 50px;
    background: url('../img/sub0305_img04_pc.jpg') center center/cover no-repeat;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.overseas_country_banner:before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(4, 22, 48, .35);
}

.overseas_country_txt {
    position: relative;
    z-index: 1;
    padding-left: 36px;
    color: #fff;
}

.overseas_country_item+.overseas_country_item {
    margin-top: 28px;
}

.overseas_country_item h4 {
    position: relative;
    margin: 0 0 10px;
    padding-left: 16px;
    font-size: 20px;
    font-weight: 800;
    color: #fff;
    line-height: 1.4;
}

.overseas_country_item h4:before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    width: 4px;
    height: 21px;
    background: #fff;
}

.overseas_country_item p {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.6;
    color: #fff;
    word-break: keep-all;
}

@media (max-width:1400px) {
    .overseas_info_inner {
        padding: 0 20px;
        box-sizing: border-box;
    }
}

@media (max-width:768px) {
    .overseas_info_sec {
        padding: 40px 0;
    }

    .overseas_info_inner {
        padding: 0 12px;
    }

    .overseas_top_banner {
        height: 230px;
    }

    .overseas_top_txt p {
        font-size: 15px;
        line-height: 1.7;
    }

    .overseas_top_txt h3 {
        font-size: 22px;
    }

    .overseas_country_banner {
        height: auto;
        min-height: 220px;
        margin-top: 30px;
        padding: 36px 0;
    }

    .overseas_country_txt {
        padding: 0 22px;
    }

    .overseas_country_item+.overseas_country_item {
        margin-top: 24px;
    }

    .overseas_country_item h4 {
        font-size: 18px;
    }

    .overseas_country_item p {
        font-size: 13px;
        line-height: 1.7;
    }
}










.cate_wrap {
    display: inline-block!important;
    background:#000;
    padding:10px 12px;
    color:#fff;
    margin-top: 30px;
    font-size: 14px;
    font-weight: 600;
}

/* 푸터 */


.q_menu {
    z-index: 9999;
    position: fixed;
    bottom: 100px;
    right: 10px;
}
.q_menu > li {
    width: 80px;
    height: 80px;
    border:1px solid rgba(0,0,0,0);
}

.qmenu01 {
    background:url('../img/q01.png') center no-repeat;
    background-size:contain;
}
.qmenu02 {
    background:url('../img/q02.png') center no-repeat;
    background-size:contain;
}
.qmenu01:hover {
    background:url('../img/q011.png') center no-repeat;
    background-size:contain;
}
.qmenu02:hover {
    background:url('../img/q022.png') center no-repeat;
    background-size:contain;
}
.qmenu03 {
    background:#413F3C;
}
.qmenu04 {
    background:#000000;
}
.q_menu > li > a {
    display: block;
    width: 100%;
    height: 100%;
}
.ico_qmenu {
    width: 30px;
    height: 30px;
    background:#6E0E10;
    margin: 13px auto 0;
}
.ico_qmenu.img01 {
    background:url('../img/ico_qmenu01.png') center no-repeat;
    background-size:contain;
}
.ico_qmenu.img02 {
    background:url('../img/ico_qmenu02.png') center no-repeat;
    background-size:contain;
}
.ico_qmenu.img03 {
    background:url('../img/ico_qmenu03.png') center no-repeat;
}
.ico_qmenu.img04 {
    background:url('../img/ico_qmenu04.png') center no-repeat;
}
.q_menu > li > a > p,
.q_menu > li >  p {
    font-size: 14px;
    color:#fff;
    text-align: center;
    margin-top: 8px;
}


.login_wrap {
    display: flex;
}

.login_wrap > li {
    margin-right: 10px;
}
.login_wrap > li > a {
    color:#fff;
}


.m_nav_btn,
.m_nav_wrap {
    display: none;
}

.fix_menu {
    position: sticky;
    bottom: 50px;
    display: flex;
    justify-content: space-between;
    max-width: 675px;
    width: 100%;
    margin:0 auto;
    z-index: 9999;
}
.fix_menu > li {
    width: calc(33.33% - 3px);
}
.fix_menu > li > a {
    display: block;
    width: 100%;
    height: 100%;
}


.right_quick {
    position: fixed;
    right: 24px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9999;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 14px;
}

.right_quick .quick_item {
    width: 58px;
    height: 58px;
    border-radius: 50px;
    background: #fff;
    box-shadow: 0 8px 20px rgba(0,0,0,0.16);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    overflow: hidden;
    text-decoration: none;
    color: #2d64b3;
    transition: width 0.35s ease;
}

.right_quick .quick_item:hover {
    width: 148px;
}

.right_quick .quick_icon {
    width: 58px;
    min-width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2d64b3;
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    box-sizing: border-box;
}

.right_quick .quick_icon.small {
    font-size: 13px;
    line-height: 1.25;
}

.right_quick .quick_txt {
    display: block;
    padding-right: 22px;
    color: #2d64b3;
    font-size: 15px;
    font-weight: 700;
    white-space: nowrap;
    opacity: 0;
    transform: translateX(8px);
    transition: all 0.25s ease;
}

.right_quick .quick_item:hover .quick_txt {
    opacity: 1;
    transform: translateX(0);
}

@media (max-width: 768px) {
    .right_quick {
        right: 12px;
        gap: 10px;
    }

    .right_quick .quick_item {
        width: 50px;
        height: 50px;
    }

    .right_quick .quick_item:hover {
        width: 50px;
    }

    .right_quick .quick_icon {
        width: 50px;
        min-width: 50px;
        height: 50px;
        font-size: 16px;
    }

    .right_quick .quick_icon.small {
        font-size: 11px;
    }

    .right_quick .quick_txt {
        display: none;
    }
}

footer {
    padding: 60px 0;
    background: #222;

}
footer > .inner {

}
.copy {
        font-size: 14px;
    color: #888;
}
footer > .inner > h3 {
    font-size: 14px;
    line-height: 34px;
    color: #888;
    margin-top: 20px;
}
footer > .inner > h3 > span {
    display: inline-block;
    width: 30px;

}
.copy.type2 {
    margin-top: 20px;
}

@media (max-width:768px){
    footer {
    padding: 60px 0;
    background: #222;

}
footer > .inner {

}
.copy {
        font-size: 14px;
    color: #888;
}
footer > .inner > h3 {
    font-size: 11px;
    line-height: 24px;
    color: #888;
    margin-top: 20px;
}
footer > .inner > h3 > span {
    display: inline-block;
    width: 30px;

}
.copy.type2 {
    margin-top: 20px;
}
}





/* 입단 및 무료체험문의 */

.privacy {
}
.privacy > h2,
.inquiry_tit {
    font-family: 'pretendard',sans-serif;
    font-size: 18px;
    font-weight: 700;
}
.inquiry_tit {
    margin: 50px 0;
}
.privacy_box {
    margin-top: 24px;
    border:1px solid #ddd;
    padding:15px;
}
.privacy_box > p {
    font-family: 'pretendard',sans-serif;
    font-size: 14px;
    font-weight: 300;
    color:#666;
    line-height: 22px;
}

.privacy_check {
    margin: 24px 0;;
}
.privacy_check span {
    color:#666;
    font-size: 16px;
    font-weight: 300;
}

.inquiry_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.inquiry_list > li {
    width: calc(50% - 20px);
    margin-bottom: 20px;
    
}
.inquiry_list > .full_input {
    width: 100%;
}
.inquiry_01 {
    width: 100%;
    height: 40px;
    font-size: 16px;
    font-weight: 700;
    line-height: 40px;
}
.inquiry_01 > h2 {
    font-size: 18px;
    display: inline-block;
    position: relative;
}
.inquiry_01 > p {
    font-size: 16px;
    font-weight: 300;
    color:#666;
    margin-left: 10px;
    display: inline-block;
    position: relative;
}
#radioSpan {
    display: block;
    line-height: 57px;
}
.input_radio {
    margin-right: 5px;
    width: 24px;
    height: 24px;
    border: 1px solid #dfdfdf;
    border-radius: 24px;
    cursor: pointer;
    margin-right: 9px;
}
.radio_tit {
    font-size: 15px;
    color:#666;
    display: inline-block;
    margin-right: 20px;
}
input[type='radio'] {
    -webkit-appearance: none; 
    -moz-appearance: none;
    appearance: none; 
    width: 20px;
    height: 20px;
    border: 2px solid #ccc;
    border-radius: 50%;
    outline: none; 
    cursor: pointer;
}

input[type='radio']:checked {
    background-color: #2AA4FF; 
    border: 3px solid white; 
    box-shadow: 0 0 0 1.6px #2AA4FF;
}

/* input 숨겨준다 */
input#check_btn{
    display:none;
    }
  
  input#check_btn + label{
    cursor:pointer;
   }
  
  input#check_btn + label > span{
    vertical-align: middle;
    padding-left: 5px;
   }


.customer_bar {
    border-bottom:1px solid #ddd;
}
.inquiry_01 > h2:after {
    content:"";
    width: 6px;
    height: 6px;
    background:url('../img/star_ico.png') center no-repeat;
    background-size:contain;
    position: absolute;
    top: 10px;
    right: -10px;
}
.inquiry_02 {
    height: 57px;
    width: 100%;
}
.fr-con > input {
    background:#fff;
    width: 100%;
    height: 57px;
    border:1px solid #A9A9A9;
    padding-left: 20px;
    font-size: 14px;
    border-radius: 10px;
    background:#fbfbfb;
}
.fr-con.type2 {
    display: flex;
    align-items: center;
}
.fr-con.type2 .frm_file {

}
.fr-con.phone {
    display: flex;
    justify-content: space-between;
}

.phone_number {
    width: calc(33% - 10px)!important;
    border:1px solid red!important;
}

.fr-con.mail {
    display: flex;
}
.fr-con.mail > span {
    line-height: 50px;
    margin:0 10px;
}

.inquiry_con {
    /* display: none!important; */
    height: 240px;

    
}
.inquiry_con2 {
    height: 500px!important;
}
.inquiry_con > .inquiry_02 {
    height: 200px!important;
}

.check2 {
    width: 100%;
    height: 80px;
    background:#f6f6f6;
    padding:13px 30px;
    display: flex;
    justify-content: space-between;
}
.check2_img {
    width: 54px;
    height: 54px;
    background:url('../img/check2_img.png') center no-repeat;
}
.check2_info {
    width: 629px;
}
.check2_info > p {
    font-size: 16px;
    font-weight: 300;
    color:#666;
    margin-top: 10px;
}



.form-box {}
.form-box .form-con {
    width: 100%;
    margin: 0px auto 0;
    padding:40px;
}

.form-box .form-con ul li {
    
}

.form-box .form-con ul li .fr-con {
    width: 100%;
    height: 100%;
}





.form-box .form-con ul li .fr-con .text-box {
    diaplay: table;
    width: 100%;
    height: 65px;
}

.form-box .form-con ul li .fr-con .text-box input {
    width: 34%;
    float: left;
    margin-left: 1%;
}

.form-box select {
    width: 50%;
    float: left;
    height: 100%;
    background: #fff;
}

.select2 {
    border:1px solid #ddd;
    padding:0 18px;
    font-size: 14px!important;
}

.form-box .form-con ul li .fr-con textarea {
    height: 200px;
    width: 100%;
    border:1px solid #ddd;
    background:#fff;
    padding:20px;
    resize: none;
    font-size: 14px;
}

.form-box .form-con .provision {
    display: table;
    width: 100%;
    margin-top: 30px;
    text-align: center;
    font-size: 14px;
    font-family: 'Noto Sans KR', sans-serif;
}

.form-box .form-con .provision label {
    cursor: pointer;
    font-weight: 300;
}

.form-box .form-con .provision label input {
    width: 20px;
    height: 20px;
}

.form-box .form-con .provision label span {
    vertical-align: -2px;
    margin-left: 5px;
}

.form-box .form-con .provision a {
    padding: 0 15px;
    line-height: 65px;
    font-size: 12px;
    color: #fff;
    display: inline-block;
    margin-left: 10px;
}

.form-box .receive-btn {
    width: 158px;
    height: 47px;
    margin: 40px auto 0;

}

.form-box .receive-btn input {
    width: 100%;
    height: 100%;
    color: #fff;
    background: #2AA4FF !important;
    border: 0;
    font-size: 16px;
    font-weight: 700;
    font-family: 'Noto Sans KR', sans-serif;
    border-radius: 10px;


}

select {
    font-size: 16px;
}