.popup{
    padding: 20px;
    position: fixed;
    left: 70px;
    top: 150px;
    border:1px solid var(--primary-c);
    box-shadow:3px 5px 10px rgba(0,0,0,.2);
    border-radius:8px;
    z-index: 10;
    background: var(--white);
    overflow-y: auto;
    }
    .popup ul{
        padding: 10px 0;
    }
    .caption{
        font-size: 14px;
    }
    .close{
        position: relative;
    }
    .close button{
        color: var(--title-color);
        position: absolute;
        right: 0;
    }
    .popup ul a{
        color: var(--primary-c);
        margin: 10px;
        border-bottom: 1px solid var(--white);
        margin: 0;
    }


/*-------------------popup------------------------- */

main{
    display: flex;
    padding-top: 140px;
}
main .mainCon{
    width: 860px;
    padding-right: 20px;
}
main aside{
    width: 419px;
    border-left: 1px solid #ccc;
    padding-left: 20px;
}

/*-------------------mainCon banner-------------------*/
.banner_slide{
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}
.banner_slide .slide_container{
    width: 100%;
    height: 44%;
    position: relative;
}
.banner_slide .slick-slide img {
    display: block;
    width: 100%;
}

.banner_slide [class^=slide]{
    position: relative;
}
.banner_slide .slide_container h3{
    font-size:calc(var(--body-fz) * 0.8125);
    font-weight: 400;
    line-height: calc(var(--line-height) * 0.464);
    margin-top: 10px;
} 
.banner_slide .slide_cont{
    position: absolute;
    left: 50px;
    top: 50px;
    opacity: 0;
    transition: 0.3s 0.3s;
}
.banner_slide .slide_1 .slide_cont{
    text-align: center;
}
.banner_slide .slide_3 .slide_cont h2{
    color: var(--white) !important;
    white-space: inherit;
    width: 60%;
}
.banner_slide .slide_5 .slide_cont h2{
    white-space: inherit;
    width: 55%;
}
.banner_slide .slick-slide.slick-active .slide_cont {
    opacity: 1;
}
.banner_slide .controls a{
    font-size: 60px;
    color: var(--body-tc);
    position: absolute;
    left: 50%;
    top: 50%;
    transform:translate(-50%, -50%);

}
.banner_slide .controls .prev{
    margin-left: -47%;
}
.banner_slide .controls .next{
    margin-left: 47%;
}
.banner_slide .paging{
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 0;right: 0;bottom: 0;
}
.banner_slide .paging .pager_num{
    display: flex;
    justify-content: center;
    align-items: center;  
    gap: 5px;
}
.banner_slide .btns{
    cursor: pointer;
}
.banner_slide .btns .stop{
    display: none;
}
.banner_slide .btns.active .stop{
    display: block;
}
.banner_slide .btns.active .play{
    display: none;
}


/*-------------------card_slide-------------------*/
.card_slide{
    position: relative;
}
.card_slide .card_slide_wrap{
    display: flex;
    justify-content: space-between;
    align-items: center;
    
}
.card_slide .cardList{
    width: 100%;
    height: 220px;
    overflow: hidden;
    margin-top: 28px;
}
.card_slide .card_cont{
    width: 100%;
    margin: 0 auto;
    position: relative;
}
.card_slide .card_info_btn a{
    text-transform: uppercase;
    margin-right: 30px;
}
.card_slide .card_info_btn a:hover{
    color: var(--primary-c);
}
.card_slide .card_info_btn a:nth-child(4){
    margin: 0;
}
.card_slide .finder{
    display: flex;
}
.card_slide .finder a{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.card_slide .finder a:hover span:last-child{
    color: var(--primary-c);
}
.card_slide .finder a:first-child{
    margin-right: 20px;
}
.card_slide .slick-track{
    display: flex;
    gap: 50px;
}
.card_slide .card_tap{
    transition: 0.3s;
}
.card_slide .card_tap:hover{
    transform:translateY(-10px);
}
.card_slide .card_tap:hover img{
    transform:translateY(-10px);
}
.card_slide .card_tap_wrapper img{
    width: 85px;
    height: 136px;
    margin: 0 auto;
}
.card_tap_wrapper .slick-list{ 
    padding-top: 20px;
}
.card_slide .card_cont h3{
    font-size: calc(var(--body-fz) * 0.8125);
    text-align: center;
}
.card_slide .controls{
    display: block;
}
.card_slide .best .controls, .card_slide .corp .controls, .card_slide .premium .controls{
    display: none;
}
.card_slide .controls a{
    font-size: 50px;
    color: var(--body-tc);
    position: absolute;
    left: 50%;
    top: 40%;
    transform:translate(-50%, -50%);
}
.card_slide .controls .prev{
    margin-left: -48%;
}
.card_slide .controls .next{
    margin-left: 48%
}

/*-------------------benefit-------------------*/


.benefit_slide{
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}
.benefit_slide .slide{
    position: relative;
    
}
.benefit_slide .slide >img{
    width: 100%;
}
.benefit_slide .slide_cont{
    position: absolute;
    top: 40px;
    left: 140px;

}
.benefit_slide .slide_cont h3{
    font-size:calc(var(--body-fz) * 1.125);
    font-weight: 700;
}
.benefit_slide .slide_cont p{
    font-size:calc(var(--body-fz) * 0.8125);
}
.benefit_slide .controls a{
    font-size: 50px;
    color: var(--body-tc);
    position: absolute;
    left: 50%;
    top: 50%;
    transform:translate(-50%, -50%);
}
.benefit_slide .controls .prev{
    margin-left: -48%;
}
.benefit_slide .controls .next{
    margin-left: 48%;
}
.benefit_slide .paging{
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 0;right: 0;bottom: 0;
}
.benefit_slide .paging .pager_num{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
}
.benefit_slide .paging .btns{
    cursor: pointer;
}
.benefit_slide .paging .btns .stop{
    display: none;
}
.benefit_slide .paging .btns.active .stop{
    display: block;
}
.benefit_slide .paging .btns.active .play{
    display: none;
}

/*-------------------periodic_payment-------------------*/
.periodic_payment .pp_wrap{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
}
.periodic_payment .pp_wrap .icon_circle{
    width: 105px;
    height: 105px;
    border-radius: 50%;
    border: 2px solid var(--secondary-c);
    display: flex;
    align-items: center;
    justify-content: center;
}
.periodic_payment .pp_cont:hover .icon_circle{
    border-color: var(--primary-c);
    transition: 0.3s;
    cursor: default;
}
.periodic_payment .pp_wrap .icon_circle span{
    font-size: 45px;
}
.periodic_payment .pp_cont p{
    text-align: center;
    padding-top: 5px;
}
.periodic_payment .pp_cont:nth-child(1) span{
    color: #79c000;
}
.periodic_payment .pp_cont:nth-child(2) span{
    color: #243A73;
}
.periodic_payment .pp_cont:nth-child(3) span{
    color: #f71751;
}
.periodic_payment .pp_cont:nth-child(4) span{
    color: #ed6871;
}
.periodic_payment .pp_cont:nth-child(5) span{
    color: #f2ce1b;
}
.periodic_payment .pp_cont:nth-child(6) span{
    color: #594114;
}

/*-------------------direct_auto-------------------*/
.direct_auto .card {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.direct_auto .card li{
    width: 195PX;
    border: 1px solid var(--secondary-c);
    border-radius: 20px;
    overflow: hidden;
    box-sizing: border-box;
}
.direct_auto .card li .img_wrap{
    width: 195px;
}
.direct_auto .card li .img_wrap img{
    width: 100%;
}
.direct_auto .card li .caption{
    padding: 20px 15px;
}
.direct_auto .card li .caption p{
    font-size:calc(var(--body-fz) * 0.6875);
}
.direct_auto .card li:hover img{
    transform: scale(1.1);
    transition: 0.8s;
}

/*-------------------life-------------------*/
.life .video_wrapper{
    width: 100%;
}
.life .video_wrapper iframe{
    width: 100%;
}

/*-------------------login-------------------*/

.login .log_btn_wrap ul{
    display: flex;
    align-items: center;
    gap: 10px;
}
.login form{
    position: relative;
}
.login form .logBtn{
    display: inline-block;
    position: absolute;
    right: 30px;
    bottom: 0;
}
.login form .logBtn input{
    width: 105px;
    height: 74px;
}
.login form .login_border{
    position: relative;
    display: flex;
    gap: 10px;
    border-top: none;
    border-right: none;
    border-left: none;
    border-bottom: 2px solid var(--hover-c);
    padding-top: 10px;
    width: 274px;
}
.login form .login_border:focus-within{
    border-color: var(--title-color);
}

/* .login form .user_login p{
    position: absolute;
} */
.login form .user_login input{
    width: 200px;
    height: 30px;
    border-top: none;
    border-right: none;
    border-left: none;
    border-bottom: none;
    outline: none;
}
.login form .user_login span{
    position: absolute;
    bottom: 5px;
    right: 15px;

}
.login .id_finder{
    padding-top: 10px;
    width: 270px;
}
.login .id_finder ul{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.login .id_finder li{
    font-size:calc(var(--body-fz) * 0.875);
}
.login .id_finder li:hover a{
    color: var(--primary-c);
}

/*-------------------keyword_search-------------------*/

.keyword_search .kw_btn_wrap{
    padding-right: 35px;
}
.keyword_search .kw_btn_wrap ul{
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    padding-top: 15px;
}
.keyword_search input{
    width: 60%;
    height: 30px;
    border-top: none;
    border-right: none;
    border-left: none;
    outline: none;
}

/*-------------------card_shortcut-------------------*/

.card_shortcut .card_go:hover span{
    color: var(--primary-c);
    transition: 0.3s;
}

/*-------------------banking-------------------*/

.banking .card_go:hover span{
    color: var(--primary-c);
    transition: 0.3s;
}

/*-------------------ss_story-------------------*/
.ss_story .banner_slide{
    position: relative;

    width: 100%;
    height: 450px;
}
.ss_story .slide{
    width: 100%;
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}
.ss_story .slide img{
    width: 100%;
}
.ss_story .slide .content{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    z-index: 1;
    padding: 15px;
}
.ss_story .slide .content::after{
    content: '';
    width: 419px;
    height: 120px;
    background: rgba(158, 158, 158, .7);
    position: absolute;
    bottom: -10px;
    left: 0;
    right: 0;
    z-index: -1;
}
.ss_story .slide .content h2{
    font-size:calc(var(--body-fz) * 1.375);
    font-weight: 700;
    padding-bottom: 10px;
}
.ss_story .slide .content h3{
    font-size:calc(var(--body-fz) * 1.125);
}
.ss_story .paging{
    position: absolute;
    bottom: 5px;
    left: 73%;
    right: 0;
    
}
@media (max-width:1320px) {
   main{
    padding: calc(var(--line-height) * 6.428) 10px 0 10px;
   }
   main aside{
    width: 397px;
    padding-left: 10px;
    }
    main .mainCon{
        padding-right: 10px;
    }main .qna {
        padding-top: 99px;
    }
    .ss_story .paging {
        bottom: 35px;
    }
}/* 1320 이하 */

@media (max-width:1240px) {
    main aside {
        width: 322px;
    }
    .login form .logBtn {
        left: 0;
        top: 139px;
    }
    .ss_story .paging {
        top: 206px;
    }
    .login form .logBtn input {
        width: 275px;
        height: 40px;
        border-radius: 10px;
        border: 1px solid var(--title-color);
    }
}/* 1240 이하 */

@media (max-width:1170px){
    main .mainCon {
        padding: 0;
        margin: 0 auto;
    }
    main {
        display: block;
    }
    main aside{
        display: none;
    }
}/* 1170 이하 */

@media (max-width:832px){
    main .mainCon {
        width: 95%;
    }
    .card_slide .slick-track {
        gap: 47px;
    }
    .periodic_payment .pp_wrap {
        gap: 34px;
    }
    .periodic_payment .pp_wrap .icon_circle {
        width: 85px;
        height: 85px;
    }
    .periodic_payment .pp_wrap .icon_circle span {
        font-size: 40px;
    }
    .direct_auto .card li .caption p {
        padding-right: 29px;
    }
    .direct_auto .card li:nth-child(3) .caption p {
        padding-right: 49px;
    }
    .direct_auto .card li {
        width: 175PX;
    }
    .direct_auto .card li .img_wrap {
        width: 175px;
    }
    .direct_auto .card li .caption {
        padding: 10px;
    }
}/* 832 이하 */

@media (max-width:768px){
    main{
        padding-top: 100px;
    }
    .card_slide .card_info_btn a {
        margin-right: 25px;
    }
    .card_slide .slick-track {
        gap: 44px;
    }
    .card_tap_wrapper .slick-list {
        padding: 20px 0;
    }
    .card_slide .best .controls, .card_slide .corp .controls, .card_slide .premium .controls{
        display: block;
    }
    .benefit_slide .slide_cont {
        top: 21px;
        left: 95px;
    }
    .periodic_payment .pp_wrap {
        gap: 31px;
    }
    .direct_auto .card li {
        width: 155PX;
    }
    .direct_auto .card li .img_wrap {
        width: 155px;
    }
    .direct_auto .card li .caption {
        padding: 10px;
    }
    .life{
        display: none;
    }
    main .mainSide {
        display: block;
        border: none;
        padding: 0;
        margin: 0 auto;
        width: 95%;
    }
    main .mainSide .login, main .mainSide .keyword_search, .mainSide .ss_story{
        display: none;
    } 
    main .mainSide .card_shortcut .card_go , .banking .card_go{
        padding: 5px 7px 5px 14px;
        display: flex;
        justify-content: space-between;
        border: 1px solid;
        border-radius: 10px;
        box-sizing: border-box;
    }
    main .mainSide .card_shortcut .card_go:nth-child(3), .banking .card_go:nth-child(2n+1){
        margin: 15px 0;
    }
    .card_shortcut .card_go{
        position: relative;
    }
    .card_shortcut .card_go .bg{
        position: absolute;
        top: 0;
        left: 0;
        width: 0;
        height: 100%;
        overflow: hidden;
    }
    .card_shortcut .card_go .bg span{
        display: block;
        width: 100%;
        height: 100%;
        line-height: 80px;
        color: #fff;
        background-color: rgba(25, 142, 245, .2);
        border-radius: 10px;
    }

}/* 768 이하 */

@media (max-width:680px){
    .card_slide .card_info_btn a {
        margin-right: 20px;
    }
    .card_slide .slick-track {
        gap: 30px;
    }
    .periodic_payment .pp_wrap {
        gap: 15px;
    }
}/* 680 이하 */
@media (max-width:600px){
    .card_slide .card_slide_wrap{
        display: block;
    }
    .card_slide .card_info_btn a {
        margin-right: 30px;
    }
    .card_slide .finder {
        position: absolute;
        top: 90%;
    }
    .periodic_payment .pp_wrap {
        gap: 60px;
        flex-wrap: wrap;
    }
    .direct_auto .card {
        justify-content: space-around;
        flex-wrap: wrap;
        gap: 28px 0;
    }
    .direct_auto .card li {
        width: 200px;
    }
    .direct_auto .card li .img_wrap {
        width: 100%;
    }
}/* 600 이하 */

@media (max-width:480px){
    .card_slide .card_slide_wrap{
        display: block;
    }

    .card_slide .card_info_btn a {
        margin-right: 30px;
    }
    .card_slide .finder {
        position: absolute;
        top: 90%;
    }

    .banner_slide .slide_cont {
        position: absolute;
        left: 30px;
        top: 25px;
        opacity: 0;
        transition: 0.3s 0.3s;
    }
    .banner_slide .slide_tt {
        font-size: var(--body-fz);
        line-height: calc(var(--line-height) * 1);
    }
    .benefit_slide .slide_cont {
        top: 10px;
        left: 45px;
    }
    .benefit_slide .slide_cont img{
        width: 20%;
    }
    .benefit_slide .slide_cont h3 {
        font-size: 13px;
    }
    .periodic_payment .pp_wrap{
        flex-wrap: wrap;
        gap: 28px 85px;
    }
    .periodic_payment .pp_wrap .icon_circle {
        width: 75px;
        height: 75px;
    }
    .direct_auto .card {
        justify-content: space-evenly;
        flex-wrap: wrap;
        gap: 28px 0;
    }
    main .controls, .card_slide .best .controls, .card_slide .corp .controls, .card_slide .premium .controls {
        display: none;
    }
}/* 480 이하 */
@media (max-width: 340px){
    .banner_slide .slide_cont {
        left: 20px;
        top: 10px;
    }
    .card_slide .card_info_btn a {
        margin-right: 20px;
    }

    .secondary.btn {
        padding: 0 3px 0 10px;
    }
    .direct_auto .card li {
        width: 80%;
    }
    .direct_auto .card li .img_wrap {
        width: 100%;
    }
    footer {
        box-shadow: 0px -1px 0px rgb(0 0 0 / 30%);
        padding: calc(var(--line-height) * 2) 15px var(--line-height) 15px;
    }
}/* 340 이하 */
