@charset "utf-8";

.welcomeXE {
    padding-top: 250px;
    font-family: Raleway, NanumBarunGothic, Malgun Gothic, Dotum, Apple SD Gothic Neo, AppleGothic, Helvetica, sans-serif;
}
.content + .welcomeXE {
    padding-top: 0;
}
.welcomeXE section {
    width: 1200px;
    margin: 0 auto
}

.welcomeXE .intro { position:absolute; top:95px; left:50%; transform:translateX(-50%); width:1200px; aspect-ratio:1200 / 400; margin:0; padding:0; background:url('../img/pc_main_banner.png') center / 100% 100% no-repeat; }
.welcomeXE .intro a.btn_start { display:none !important; }
.welcomeXE .intro .main-banner-link { display:block; position:absolute; inset:0; z-index:1; }
.welcomeXE .intro .main-banner-link:focus-visible { outline:3px solid #245bdb; outline-offset:3px; }

.welcomeXE .intro .noti,
.welcomeXE .intro .tit,
.welcomeXE .intro .cont,
.welcomeXE .intro .btn_start { display:none; }


.welcomeXE .intro .cont {
    padding-bottom: 37px;
    font-size: 15px;
    font-weight: 400;
    color: #888;
    line-height: 27px
}
.welcomeXE .intro .btn_start {
    display: inline-block;
    margin: 50px 0;
    padding: 0 27px;
    height: 40px;
    border: 2px solid #cda25a;
    background-color: #fff;
    font-size: 13px;
    line-height: 40px;
    letter-spacing: 1px;
    color: #cda25a;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -ms-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out
}
.welcomeXE .intro .btn_start:hover,
.welcomeXE .intro .btn_start:active
.welcomeXE .intro .btn_start:focus {
    background-color: #cda25a;
    color: #fff
}
.bg-holder {
    background-image: url('../img/bg_stat.jpg');
}
/* section.xeicon */
.welcomeXE .xeicon {
    overflow: hidden;
    position: static;
    width: 100%;
    margin: 0;
    height: 100%;
}
.welcomeXE .xeicon h1 {
    margin-top: 170px;
    font-size: 40px;
    color: #f6f6f6;
    text-align: center;
    letter-spacing: 3px;
    font-weight: 400;
    line-height: 1.2em;
    text-transform: uppercase;
}
.welcomeXE .xeicon h1 a {
    color: #FFF;
}
.welcomeXE .xeicon .button-area {
    text-align: center;
    margin-bottom: 140px;
}
.welcomeXE .xeicon .button-area .btn_item {
    font-size: 14px;
    letter-spacing: 2px;
}
/* section.guide */
.welcomeXE .guide {
    height: 600px;
    padding-top: 80px
}
.welcomeXE .guide ul {
    padding-top: 27px
}
.welcomeXE .guide li {
    position: relative;
    float: left;
    width: 314px;
    min-height: 140px;
    padding: 0 0 0 70px;
    margin: 0 0 30px 0
}
.welcomeXE .guide h2 {
    padding: 7px 24px 13px 0;
    font-size: 17px;
    font-weight: normal;
    line-height: 23px;
    color: #333
}
.welcomeXE .guide p {
    padding: 0 24px 0 0;
    font-size: 14px;
    line-height: 26px;
    color: #888
}
.welcomeXE .guide .ico {
    position: absolute;
    top: 0;
    left: 0;
    width: 48px;
    height: 48px;
    border-radius: 100%;
    background-color: #555;
    font-size: 22px;
    text-align: center;
    line-height: 50px;
    color: #efefef
}
.welcomeXE .guide .ico:hover,
.welcomeXE .guide .ico:active,
.welcomeXE .guide .ico:focus {
    background-color: #cda25a
}
.welcomeXE .guide p a {
    color: #444
}
.welcomeXE .guide p a:hover,
.welcomeXE .guide p a:active,
.welcomeXE .guide p a:focus {
    color: #cda25a;
    border-bottom: 1px solid #cda25a
}
/*section.connect*/
.welcomeXE .connect {
    height: 344px;
}
.welcomeXE .connect ul {
    overflow: hidden;
    padding: 40px 0
}
.welcomeXE .connect li {
    position: relative;
    float: left;
    width: 180px;
    margin-left: 24px;
    padding: 4px 0 0 102px;
    min-height: 78px
}
.welcomeXE .connect li:first-child {
    margin-left: 0
}
.welcomeXE .connect .ico {
    position: absolute;
    top: 0;
    left: 0;
    width: 78px;
    height: 78px;
    border-radius: 100%;
    background-color: #cda25a;
    text-align: center;
    font-size: 40px;
    color: #fff
}
.welcomeXE .connect .ico:hover,
.welcomeXE .connect .ico:active,
.welcomeXE .connect .ico:focus {
    background-color: #555
}
.welcomeXE .connect .ico i {
    line-height: 78px
}
.welcomeXE .connect h2 {
    margin-bottom: 16px;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 1px;
    line-height: 18px;
    color: #333
}
.welcomeXE .connect p {
    font-size: 13px;
    color: #888;
    line-height: 21px
}
@media all and (max-width: 600px) {
    .welcomeXE {
        padding-top: 0
    }
    .welcomeXE section {
        width: 100%;
        box-sizing: border-box;
        overflow: hidden;
    }
    .welcomeXE .tit {
        padding-bottom: 16px;
        font-size: 30px;
        color: #333;
        font-weight: 700;
        letter-spacing: 1px;
        line-height: 40px
    }

    .welcomeXE .intro { position:absolute; top:95px; left:50%; transform:translateX(-50%); width:100%; aspect-ratio:auto; height:auto; min-height:245px; margin:0; padding:0; background-image:url('../img/mo_main_banner.jpg') !important; background-position:center; background-size:cover; background-repeat:no-repeat; }
    .welcomeXE .intro .cont {
        padding-bottom: 17px;
    }
    .welcomeXE .intro .btn_start {
        margin: 20px 0 50px 0;
    }
    .welcomeXE .xeicon {
        height: auto;
    }
    .welcomeXE .xeicon h1 {
        margin-top: 70px;
    }
    .welcomeXE .xeicon .button-area {
        margin-bottom: 50px;
    }
    .welcomeXE .xeicon .button-area .btn_item {
        font-size: 14px;
        letter-spacing: 2px;
        margin: 20px 0;
    }
    .welcomeXE .xeicon {
        background-position: 0 0;
        background-attachment: inherit;
    }
    .welcomeXE .guide {
        padding: 0 14px;
        height: auto;
        padding-top: 40px
    }
    .welcomeXE .guide li {
        width: auto;
        margin: 0 0 20px 0;
    }
    .welcomeXE .features {
        padding: 40px 14px 0 14px;
        height: auto;
    }
    .welcomeXE .features .noti,
    .welcomeXE .features .tit,
    .welcomeXE .features .cont {
        width: 100%;
        margin-left: auto;
        margin-right: auto
    }
    .welcomeXE .features ul {
        padding: 0;
    }
    .welcomeXE .features li {
        clear: both;
        width: 100%;
        height: auto;
        margin: 0 0 20px 0;
    }
    .welcomeXE .features li .fe_box {
        margin: 0;
        padding: 20px;
        border: 1px solid #333;
        background-color: #cda25a;
        position: relative;
        height: auto;
        text-align: left;
    }
    .welcomeXE .features .fe_box .ico {
        display: inline-block;
        width: 70px;
        position: absolute;
        top: 0;
        left: 0;
        height: 70px;
        margin: 0;
        background-color: #f6f6f6;
        background: url(../img/sp_feature.png) 0 -70px no-repeat;
        text-align: center;
        font-size: 20px;
        line-height: 70px;
        text-align: left;
    }
    .welcomeXE .features .fe_box h2 {
        color: #f6f6f6;
        font-weight: normal;
        padding-left: 80px
    }
    .welcomeXE .features .fe_box a {
        height: 30px;
        padding: 0 20px;
        line-height: 30px;
        float: right;
    }
    .welcomeXE .features .fe_bottom {
        padding-left: 80px;
        overflow: hidden;
        position: static;
    }
    .welcomeXE .features .fe_box p {
        margin-bottom: 40px;
        margin-top: 10px;
        font-size: 13px;
        line-height: 20px;
    }
    .welcomeXE .features .fe_box .ico2 {
        background-position: -70px -70px
    }
    .welcomeXE .features .fe_box .ico3 {
        background-position: -140px -70px
    }
    .welcomeXE .features .fe_box .ico4 {
        background-position: -210px -70px
    }
    .welcomeXE .features .fe_box.on .fe_top {
        top: 0
    }
    .welcomeXE .features .fe_box.on .fe_bottom {
        top: 0
    }
    .welcomeXE .connect {
        height: auto;
        padding: 80px 14px 0 14px;
    }
    .welcomeXE .connect ul {
        padding-top: 0;
    }
    .welcomeXE .connect li {
        margin-left: 0;
        width: auto;
        min-height: 78px;
        margin-bottom: 20px;
    }

}




/* 대표 배너와 추가 배너 4개를 문서 흐름 안에 배치 */
.body.sub.home-banner-page > .lnb { display:none; }
.body.home-banner-page { padding-top:24px; }
.body.sub.home-banner-page > .content { float:none; width:100%; padding-top:0; }
.welcomeXE.has-extra-banners { width:1200px; max-width:100%; margin:0 auto; padding-top:0; }
.welcomeXE.has-extra-banners .intro { position:relative; top:auto; left:auto; transform:none; width:100%; }
.home-banner-page .home-banner-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; width:1200px; max-width:100%; margin:16px auto 0; }
.home-banner-page .home-banner-item { position:relative; aspect-ratio:3 / 1; min-width:0; overflow:hidden; }
.home-banner-page .home-banner-grid .home-banner-placeholder { position:absolute; inset:0; display:block; width:100% !important; height:100% !important; margin:0; object-fit:contain; }
@media all and (max-width:600px) {
    .body.home-banner-page { padding-top:40px; }
    .home-banner-page .home-banner-grid { gap:6px; margin-top:6px; }
}
