@charset "UTF-8";

.d-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.ul-table,
.div-table {
    display: table;
}

.ul-table>*,
.div-table>* {
    display: table-cell;
}

.mgr0 {
    margin-right: 0 !important;
}

.tl {
    text-align: left !important;
}

.pull-left {
    float: left;
}

.pull-right {
    float: right;
}

.clear-after::after {
    content: '';
    display: table;
    clear: both;
}


/* 공통 */
@keyframes to-right {
    to {
        transform: translateX(1000px);
    }
}

@keyframes floating {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-30px);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes floating2 {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-15px);
    }

    100% {
        transform: translateY(0);
    }
}

.cat_main_cont {
    width: 100%;
    color: #000;
    font-family: 'noto4';
    overflow: hidden;
}

.cat_main_cont img {
    display: block;
}

.cat_main_cont button {
    cursor: pointer;
}

.cat_main_cont .screen_out {
    border: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
}

.cat_main_cont .main_inner {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.cat_main_cont .main_title {
    position: relative;
    width: 100%;
    text-align: center;
}

.cat_main_cont .main_title p {
    line-height: 1.2;
    letter-spacing: -0.045em;
    font-size: 35px;
    font-family: 'noto6';
}

.cat_main_cont .main_title h3 {
    display: block;
    margin-top: 6px;
    line-height: 1.3;
    letter-spacing: -0.045em;
    font-size: 46px;
    font-family: 'noto7';
}

.cat_main_cont .main_title h3 em {
    color: #3c00fd;
}

.cat_main_cont .main_title .title_index {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 25px;
    margin: 0 0 30px;
    padding: 0 17px 0 17px;
    border-radius: 25px;
    letter-spacing: 0.045em;
    color: #fff;
    font-size: 18px;
    font-family: 'noto6';
    background: linear-gradient(to right, #2b2a30 166px, #6a2aeb 183px);
    overflow: hidden;
}

.cat_main_cont .main_title .title_index::after {
    content: '';
    position: absolute;
    top: -2px;
    right: 8px;
    width: 17px;
    height: 12px;
    background: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/icon_star.png') no-repeat 0 0;
}

.cat_main_cont .main_title .title_index p {
    letter-spacing: 0.235em;
    color: #fff;
    font-size: 16px;
    background: linear-gradient(to right, #559aff, #b163ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.cat_main_cont .main_title .title_index span {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    min-width: 40px;
    height: 100%;
    padding: 0 0 0 16px;
    letter-spacing: 0.015em;
    font-size: 17px;
}

/* 슬라이드 페이지네이션 */
.cat_main_cont .swiper-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    position: static;
    width: 100%;
}

.cat_main_cont .swiper-pagination-bullet {
    width: 24px;
    height: 24px;
    margin: 0;
    opacity: 1;
    background: #dadada;
}

.cat_main_cont .swiper-pagination-bullet-active {
    background: #3a01f2;
}

/* 근거 확인 */
.evidence_area_wrap {
    display: flex;
    align-items: center;
    gap: 10px;
}

.evidence_area_wrap.align_center {
    justify-content: center;
}

.evidence_area {
    position: relative;
    z-index: 2;
}

.evidence_btn {
    display: block;
    height: 25px;
    line-height: 1.1;
    padding: 6px 6px 1px;
    border: 1px solid #000000;
    border-radius: 3px;
    background: #ffffff;
    letter-spacing: -0.025em;
    font-size: 15px;
    font-family: 'market-l';
    color: #000000;
    cursor: pointer;
}

.evidence_btn span {
    display: inline-block;
    font-size: 12px;
}

.evidence_popup_area {
    display: none;
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    width: 450px;
    border: 1px solid #000000;
    background: #ffffff;
    letter-spacing: -0.045em;
}

.evidence_popup_wrap {
    position: relative;
    padding: 36px 24px;
}

.evidence_popup_area .x_btn {
    position: absolute;
    top: 14px;
    right: 20px;
    letter-spacing: -0.045em;
    line-height: 1.1;
    color: #000;
    font-size: 20px;
    font-family: 'market-m';
    cursor: pointer;
}

.evidence_popup_area li {
    position: relative;
    font-size: 14px;
    line-height: 1.8;
    text-align: left;
    word-break: keep-all;
    letter-spacing: -0.045em;
    color: #000;
    font-size: 14px;
    font-family: 'noto4';
}

.evidence_popup_area li:not(.type_point) {
    text-indent: 10px;
}

.evidence_popup_area li.type_red::before {
    clear: both;
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 12px;
    content: '';
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background-color: red;
}

.evidence_popup_area li.type_point {
    margin: 10px 0 0;
    font-size: 17px;
    font-weight: bold;
    color: #000000;
}

.evidence_popup_area li.type_red {
    color: red;
}

/* 탭 */
.main_tab {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.main_tab .tab_list {
    display: flex;
    width: 100%;
}

.main_tab .tab_list li,
.main_tab .tab_list .btn_tab {
    width: 100%;
}

.main_tab .tab_content {
    display: none;
}

.main_tab .tab_content.is_active {
    display: flex;
}

/* 합격 후기 배너 */
.pass_review_wrap {
    background: #110cd2;
}

.pass_review_wrap .pass_review_slide {
    height: 61px;
    overflow: hidden;
}

.pass_review_wrap .pass_review_slide .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 6px;
    letter-spacing: -0.035em;
    color: #bfd1f2;
    font-size: 21px;
    font-family: 'market-m';
}

.pass_review_wrap .pass_review_slide .swiper-slide::before {
    content: '';
    display: inline-block;
    width: 59px;
    height: 100%;
    margin-right: 22px;
    background: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/img_trophy.png') no-repeat 0 bottom;
}

.pass_review_wrap .pass_review_slide .swiper-slide p {
    line-height: 1;
    margin-right: 32px;
}

/* 비주얼 */
.visual_cont {
    background: #fff;
}

.visual_cont .visual_list {
    display: flex;
    gap: 107px;
    position: absolute;
    top: 673px;
    left: -24px;
    width: 1179px;
}

.visual_cont .visual_list .list_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 310px;
    height: 110px;
    line-height: 1.35;
    text-align: center;
    letter-spacing: -0.05em;
    color: #fff;
    font-size: 23px;
}

.visual_cont .visual_list .list_item:nth-child(2) {
    width: 331px;
}

.visual_cont .visual_list .list_item:nth-child(3) {
    width: 330px;
}

.visual_cont .visual_list .list_item em {
    font-family: 'noto6';
}

.visual_cont .floating_badge {
    position: absolute;
    top: 20%;
    left: 3px;
}

/* 고민 */
.worry_cont {
    background: #dfedff url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/worry_bg.jpg') no-repeat top center;
}

.worry_cont .main_inner {
    height: 825px;
    padding: 138px 0 0;
}

.worry_cont .worry_list {
    display: flex;
    flex-wrap: wrap;
    gap: 28px 41px;
    width: 100%;
    margin: 64px 0 0 -37px;
}

.worry_cont .worry_list .list_item {
    display: flex;
    flex-direction: column;
    width: 529px;
    height: 179px;
    transform: translate(20px, 0);
    padding: 36px 0 0;
    border-radius: 26px;
    opacity: 0;
    background: no-repeat 0 0;
    transition: 0.3s ease-in;
    box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
}

.worry_cont.is_active .worry_list .list_item {
    opacity: 1;
}

.worry_cont .worry_list .list_item:nth-child(1) {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/solution_item_01.png');
    transition-delay: 0.2s;
}

.worry_cont .worry_list .list_item:nth-child(2) {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/solution_item_02.png');
    transition-delay: 0.6s;
}

.worry_cont .worry_list .list_item:nth-child(3) {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/solution_item_03.png');
    transition-delay: 1s;
}

.worry_cont .worry_list .list_item:nth-child(4) {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/solution_item_04.png');
    transition-delay: 1.4s;
}

.worry_cont .worry_list .list_item:nth-child(odd) {
    padding-left: 176px;
}

.worry_cont .worry_list .list_item:nth-child(even) {
    padding-right: 183px;
}

.worry_cont .worry_list .item_title {
    line-height: 1.2;
    letter-spacing: -0.045em;
    text-align: center;
    color: #2503d5;
    font-size: 28px;
    font-family: 'noto7';
}

.worry_cont .worry_list .item_text {
    line-height: 1.3;
    margin: 23px 0 0;
    letter-spacing: -0.07em;
    text-align: left;
    font-size: 21px;
}

.worry_cont .worry_list .list_item:nth-child(odd) .item_text {
    padding-left: 106px;
}

.worry_cont .worry_list .list_item:nth-child(even) .item_text {
    padding-left: 88px;
}

/* 가이드 */
.guide_cont {
    background: #fff;
}

.guide_cont .main_inner {
    padding: 104px 0 84px;
}

.guide_cont .main_title span {
    display: inline-flex;
    align-items: center;
    height: 33px;
    line-height: 1.2;
    padding: 3px 20px 0;
    border-radius: 10px;
    letter-spacing: -0.035em;
    color: #dfedff;
    font-size: 19px;
    font-family: 'market-b';
    background: #000;
}

.guide_cont .main_title h3 {
    margin: 10px 0 0;
    font-size: 48px;
}

.guide_cont .main_title p {
    line-height: 1.2;
    margin: 3px 0 0;
    letter-spacing: -0.05em;
    color: #363636;
    font-size: 19px;
    font-family: 'noto4';
}

.guide_cont .guide_slide {
    display: flex;
    justify-content: center;
    position: relative;
    margin: 5px 0 0;
    padding: 40px 0;
    width: 1230px;
    overflow: hidden;
}

.guide_cont .guide_slide .slide_wrap {
    width: 1100px;
}

.guide_cont .guide_slide .swiper-slide {
    display: flex;
    align-items: flex-start;
    gap: 24px;
}

.guide_cont .guide_slide .video_box {
    position: relative;
    border-radius: 15px;
    box-shadow: 0px 6px 38px 0px rgba(119, 130, 172, 0.28);
}

.guide_cont .guide_slide .video_box iframe,
.guide_cont .guide_slide .video_box .layer,
.guide_cont .guide_slide .video_box .start_video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.guide_cont .guide_slide .guide_detail {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 26px 25px;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0px 6px 38px 0px rgba(119, 130, 172, 0.28);
}

.guide_cont .guide_slide .detail_item {
    border-radius: 12px;
    padding: 19px 20px 13px;
    border: 1px solid #e5e9f4;
    background: #f7f9ff;
}

.guide_cont .guide_slide .detail_title {
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: #0a1533;
    font-size: 18px;
    font-family: 'noto7';
}

.guide_cont .guide_slide .detail_text {
    line-height: 1.35;
    margin: 5px 0 0;
    letter-spacing: -0.04em;
    color: #575d6f;
    font-size: 15px;
}

.guide_cont .guide_slide .detail_author {
    line-height: 1.2;
    margin: 11px 0 0;
    letter-spacing: -0.02em;
    color: #a3a3a3;
    font-size: 13px;
    font-family: 'noto6';
}

.guide_cont .guide_slide .detail_tags {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: 14px 0 0;
}

.guide_cont .guide_slide .detail_tags li {
    height: 29px;
    line-height: 29px;
    padding: 0 9px;
    border-radius: 8px;
    letter-spacing: -0.02em;
    color: #6b8edd;
    font-size: 13px;
    font-family: 'noto6';
    background: #e5e9f4;
}

.guide_cont .guide_slide .swiper-button-prev,
.guide_cont .guide_slide .swiper-button-next {
    position: absolute;
    width: 50px;
    height: 50px;
    background: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/btn_guide_arrow.png') no-repeat 0 0 / 1211px auto;
}

.guide_cont .guide_slide .swiper-button-next {
    background-position: top right;
}

.guide_cont .guide_slide .swiper-button-prev::after,
.guide_cont .guide_slide .swiper-button-next::after {
    display: none;
}

/* 솔루션 */
.solution_cont {
    background: #4a12fd;
}

/* 혜택 */
.benefit_cont {
    background: #8bb1d5;
}

.benefit_cont .main_inner {
    padding: 134px 0 154px;
}

.benefit_cont .main_title p {
    color: #fff;
}

/* .benefit_cont .main_title h3 {
    color: #f8ea0c;
} */

.benefit_cont .benefit_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 22px 0;
    margin: 65px 0 0;
}

.benefit_cont .benefit_list .list_item {
    display: flex;
    align-items: center;
    flex-direction: column;
    position: relative;
    width: 352px;
    height: 299px;
    padding: 38px 0 0;
    border-radius: 20px;
    text-align: center;
    background: #fff no-repeat top right;
    box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
}

.benefit_cont .benefit_list .list_item.type_wide {
    align-items: flex-start;
    width: 540px;
    height: 217px;
    padding: 42px 26px 21px 36px;
    text-align: left;
    color: #fff;
    background-color: #3c01fd;
}

.benefit_cont .benefit_list .list_item_1 {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/benefit_item_01.png');
}

.benefit_cont .benefit_list .list_item_2 {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/benefit_item_02.png');
}

.benefit_cont .benefit_list .list_item_3 {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/benefit_item_03.png');
}

.benefit_cont .benefit_list .list_item_4 {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/benefit_item_04.png');
}

.benefit_cont .benefit_list .list_item_5 {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/benefit_item_05.png');
}

.benefit_cont .benefit_list .list_item_6 {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/benefit_item_06.png');
}

.benefit_cont .benefit_list .list_item_7 {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/benefit_item_07.png');
}

.benefit_cont .benefit_list .list_item_8 {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/benefit_item_08.png');
}

.benefit_cont .benefit_list .item_desc {
    line-height: 1.2;
    letter-spacing: -0.055em;
    color: #6d6d6d;
    font-size: 22px;
}

.benefit_cont .benefit_list .item_title {
    line-height: 1.3;
    margin: 6px 0 0;
    letter-spacing: -0.055em;
    font-size: 26px;
    font-family: 'noto6';
}

.benefit_cont .benefit_list .item_noti {
    width: 100%;
    line-height: 1.2;
    letter-spacing: -0.075em;
    margin: auto 0 0;
    text-align: right;
    font-size: 14px;
    font-family: 'noto2';
}

.benefit_cont .benefit_list .item_badge {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 20px;
    bottom: 90px;
    width: 77px;
    height: 77px;
    padding: 6px 0 0;
    border-radius: 50%;
    line-height: 1.17;
    text-align: center;
    letter-spacing: 0.015em;
    color: #fff;
    text-align: center;
    font-size: 19px;
    font-family: 'noto7';
    background: #ff4c4c;
}

.benefit_cont .benefit_list .type_wide .item_desc {
    line-height: 1.2;
    letter-spacing: -0.065em;
    color: #fff;
    font-size: 21px;
}

.benefit_cont .benefit_list .type_wide .item_title {
    margin: 18px 0 0;
    letter-spacing: -0.045em;
    font-size: 29px;
    font-family: 'noto6';
}

/* 기능 */
.feature_cont {
    /* background: #666b73 url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/feature_bg.jpg') no-repeat top center; */
}

.feature_cont .feature_slide {
    position: relative;
    width: 2560px;
    height: 904px;
    overflow: hidden;
}

.feature_cont .feature_slide .swiper-slide {
    height: 904px;
}

.feature_cont .feature_slide .swiper-pagination {
    position: absolute;
    bottom: 38px;
    left: 0;
}

.feature_cont .feature_list {
    display: flex;
    gap: 22px;
    position: absolute;
    bottom: 164px;
    left: 50%;
    transform: translateX(-50%);
    width: 1100px;
}

.feature_cont .feature_list .list_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 311px;
    height: 120px;
    border-radius: 10px;
    text-align: center;
    color: #fff;
    background: rgba(0, 0, 0, 0.5);
}

.feature_cont .feature_list p {
    letter-spacing: -0.045em;
    line-height: 1.1;
    font-size: 26px;
}

.feature_cont .feature_list em {
    letter-spacing: -0.045em;
    line-height: 1.3;
    font-size: 33px;
    font-family: 'noto7';
}

/* 상품 */
.product_cont {
    background: #eef5ff;
}

.product_cont .main_inner {
    padding: 132px 0 150px;
}

.product_cont .main_tab {
    display: flex;
    flex-direction: column;
    gap: 19px;
    width: 100%;
    margin: 66px 0 0;
}

.product_cont .tab_list {
    display: flex;
    gap: 20px;
    width: 100%;
}

.product_cont .tab_list .btn_tab {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 93px;
    border-radius: 15px;
    line-height: 1.25;
    letter-spacing: -0.025em;
    color: #000;
    font-size: 22px;
    font-family: 'noto6';
    background: #d7d9dd;
}

.product_cont .tab_list .btn_tab.is_active {
    color: #fff;
    background: #2503d5;
}

.product_cont .d-flex {
    display: flex;
}

.product_cont .product_item_1 {
    position: relative;
    width: 1100px;
    height: 529px;
    border: 4px solid #000;
    border-radius: 40px;
    background: #fff;
}

.product_cont .sidetxt {
    display: flex;
    gap: 12px;
    margin-bottom: 40px;
}

.product_cont .sidetxt span {
    display: flex;
    align-items: center;
    height: 42px;
    padding: 0 27px;
    border: 3px solid #000;
    border-radius: 42px;
    color: #000;
    font-size: 24px;
    font-family: 'noto7';
    background: #fff;
}

.product_cont .sidetxt .txt-orange {
    border: 2px solid #f6ce3e;
    background: #f6ce3e;
}

.product_cont .product_detail {
    padding: 52px 58px 57px 53px;
}

.product_cont .d-flex {
    justify-content: space-between;
}

.product_cont h2 {
    margin-bottom: 18px;
    font-family: 'noto7';
    font-size: 50px;
    line-height: 1.18;
    letter-spacing: -0.02em;
}

.product_cont h2 .txt_blue {
    color: #0057e1;
}

.product_cont .list-dot {
    color: #2b2b2b;
    font-size: 21px;
}

.product_cont .list-dot li {
    margin-bottom: 8px;
    padding-left: 5px;
    letter-spacing: -0.055em;
}

.product_cont .list-dot li.bold_txt {
    font-family: 'noto6';
}

.product_cont .list-dot li::before {
    display: none;
}

.product_cont .bullet {
    display: block;
    position: absolute;
    top: 20px;
    right: 45px;
    width: 112px;
    height: 111px;
    border-radius: 50%;
    line-height: 1.3;
    font-size: 24px;
    text-align: center;
    padding-top: 24px;
    color: #fff;
    font-family: 'noto7';
    background: url('/_skin/tpl_skin/basic_credit_analyst/images/hwan/bullet_1.png') center no-repeat;
}

.product_cont .price {
    margin: -76px 0 0 0;
}

.product_cont .price .d-flex {
    gap: 25px;
    align-items: flex-end;
    margin-top: 127px;
}

.product_cont .or_price em {
    display: block;
    margin-bottom: 4px;
    font-size: 18px;
    color: #000000;
    text-align: center;
    font-family: 'noto7';
}

.product_cont .or_price {
    position: relative;
    margin-left: -30px;
    color: #8e8e8e;
    font-size: 20px;
    font-family: 'noto7';
}

.product_cont .or_price i {
    font-style: normal;
}

.product_cont .or_price:after {
    content: '';
    position: absolute;
    width: calc(100% - 25px);
    height: 1px;
    left: -3.5px;
    top: 39px;
    display: block;
    background: #8e8e8e;
}

.product_cont .price h3 {
    display: block;
    line-height: 1.1;
    letter-spacing: -0.025em;
    color: #ff3523;
    font-size: 54px;
    font-family: 'noto7';
    font-weight: 100;
}

.product_cont .buy_btn {
    position: relative;
    display: block;
    width: 379px;
    height: 68px;
    margin: 20px 0 0 auto;
    background: #09090a;
    letter-spacing: -0.025em;
    color: #ffffff;
    font-size: 28px;
    text-align: center;
    line-height: 66px;
    border-radius: 65px;
    font-family: 'noto5';
}

.product_cont .buy_btn::after {
    content: '>';
    margin-left: 20px;
    font-family: 'noto4';
}

.product_cont .buy_btn::before {
    content: '';
    position: absolute;
    bottom: -22px;
    right: -11px;
    width: 57px;
    height: 63px;
    background: url('/img/event/8960/pc/btn_icon.png') no-repeat 0 0 / contain;
    animation: pointerBounceDiagonal 0.8s ease infinite;
}

.product_cont .product_info {
    display: flex;
    text-align: left;
    font-size: 20px;
    line-height: 1.2;
    margin: 0;
    padding: 0 19px 0 26px;
    border-radius: 0 0 40px 40px;
    font-family: 'noto6';
    overflow: hidden;
    background: #efefef url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/product_benefit.png') no-repeat -4px 25px;
}

.product_cont .product_info li {
    position: relative;
    width: 100%;
    height: 133px;
    padding: 41px 0 0 133px;
}

.product_cont .product_info li:nth-child(2) {
    padding-left: 158px;
}

.product_cont .product_info li:last-child {
    padding-left: 151px;
}

.product_cont .product_info li:not(:last-child):after {
    content: '';
    position: absolute;
    top: 30px;
    right: 0;
    width: 1px;
    height: 79px;
    background: #b2b2b2;
}

/* 띠배너 */
.banner_middle {
    margin: 0 0 -46px;
    background: linear-gradient(to bottom, #420cf2 250px, rgba(0, 0, 0, 0) 250px);
}

/* 커리큘럼 */
.curriculum_cont {
    background: #efefef;
}

.curriculum_cont .main_inner {
    padding: 144px 0 147px;
}

.curriculum_cont .curri_table {
    position: relative;
    width: 100%;
    height: 204px;
    margin: 63px auto 0;
    table-layout: fixed;
    border-collapse: collapse;
}

.curriculum_cont .curri_table+.curri_table {
    margin-top: 20px;
}

.curriculum_cont .curri_table td,
.curriculum_cont .curri_table th {
    height: 100%;
}

.curriculum_cont .curri_table th:first-child {
    padding-right: 8px;
}

.curriculum_cont .curri_table .table_head {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 204px;
    border-radius: 10px;
    letter-spacing: -0.035em;
    color: #fff;
    font-size: 19px;
    background: #bdbdbd;
}

.curriculum_cont .curri_table .td_inner {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    border: 1px solid #000;
    background: #fff;
}

.curriculum_cont .curri_table tr+tr .td_inner {
    border-top: none;
}

.curriculum_cont .curri_table th+th .td_inner,
.curriculum_cont .curri_table td+td .td_inner {
    border-left: none;
}

.curriculum_cont .curri_table th:not(:last-child) .td_inner,
.curriculum_cont .curri_table td:not(:last-child) .td_inner {
    border-right: 1px solid #e1e1e1;
}

.curriculum_cont .tr_title {
    height: 38px;
}

.curriculum_cont .tr_title .td_inner {
    border-bottom: none;
    letter-spacing: -0.035em;
    color: #fff;
    font-size: 14px;
    font-family: 'noto6';
}

.curriculum_cont .tr_title th:nth-child(2) .td_inner {
    border-left: 1px solid #000;
    border-radius: 10px 0 0 0;
    background: #5c6fc6;
}

.curriculum_cont .tr_title th:nth-child(3) .td_inner {
    background: #3b55d4;
}

.curriculum_cont .tr_title th:nth-child(4) .td_inner {
    border-radius: 0 10px 0 0;
    background: #001e9b;
}

.curriculum_cont .tr_title th:nth-child(5) .td_inner {
    background: #f97824;
}

.curriculum_cont .curri_table_2 .table_head {
    background: #4e4e4e;
}

.curriculum_cont .curri_table_2 .tr_title th:nth-child(2) .td_inner {
    background: #9961ca;
}

.curriculum_cont .curri_table_2 .tr_title th:nth-child(3) .td_inner {
    background: #873cc9;
}

.curriculum_cont .curri_table_2 .tr_title th:nth-child(4) .td_inner {
    background: #5903a7;
}

.curriculum_cont .curri_table_2 .tr_title th:nth-child(5) .td_inner {
    background: #1d3fd0;
}

.curriculum_cont .tr_sub_title {
    height: 51px;
}

.curriculum_cont .tr_sub_title .td_inner {
    position: relative;
    padding: 8px 0 12px;
    border-bottom-style: dashed;
    line-height: 1.2;
    letter-spacing: -0.035em;
    font-size: 23px;
    font-family: 'noto7';
}

.curriculum_cont .tr_sub_title .td_inner::after {
    content: '';
    position: absolute;
    right: 0;
    bottom: -5px;
    width: 7px;
    height: 10px;
    background: url('/_skin/tpl_skin/basic_attorney/images/apply/all_pass/curri_arrow.png') no-repeat 0 0;
}

.curriculum_cont .tr_sub_title td:last-child .td_inner::after {
    display: none;
}

.curriculum_cont .tr_contents {
    height: 109px;
}

.curriculum_cont .tr_contents .td_inner {
    align-items: center;
    line-height: 1.35;
    letter-spacing: -0.035em;
    text-align: center;
    font-size: 18px;
}

.curriculum_cont .tr_contents .td_inner p em {
    font-weight: bold;
}

.curriculum_cont .tr_badge .td_inner {
    margin: -1px 0 0;
    padding: 2px 0 5px;
    border-left: none;
    border-right: none;
    border-top: none;
    letter-spacing: -0.035em;
    color: #fff;
    font-size: 18px;
    font-family: 'noto5';
    background: #ff3333;
}

.curriculum_cont .curri_table_2 .tr_badge .td_inner {
    background: #ffa349;
}

.curriculum_cont .tr_badge .td_inner.type-col-4 {
    border-right: 1px solid #000;
}

.curriculum_cont .tr_contents td:nth-child(1) .td_inner {
    border-radius: 0 0 0 10px;
}

.curriculum_cont .tr_badge td:nth-child(2) .td_inner {
    border-radius: 0 0 10px 0;
}

.curriculum_cont .curri_table .tr_contents td:nth-child(3) .td_inner {
    border-radius: 0 0 10px 0;
}

/* 교수 */
.professor_cont {
    background: linear-gradient(to bottom, #fff 459px, #2b2d2c 459px);
}

.professor_cont .main_inner {
    position: relative;
    padding: 136px 0 106px;
}

.professor_cont .main_inner::before {
    clear: both;
    content: '';
    display: block;
    position: absolute;
    top: 200px;
    right: -400px;
    width: 1192px;
    height: 1424px;
    background: url('/_skin/tpl_skin/basic_kumgo_renewal2/images/apply/janghakgeum/teacher_bg.png') center no-repeat;
}

.professor_cont .professor_slide {
    position: relative;
    width: 1400px;
    height: 910px;
    margin: 23px 0 0;
    padding: 54px 0 0;
    overflow: hidden;
}

.professor_cont .professor_slide .swiper-pagination {
    display: flex;
    justify-content: center;
    position: relative;
    gap: 47px;
    top: 0;
    width: 1100px;
    margin: 0 auto;
    z-index: 1;
}

.professor_cont .professor_slide .page_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 183px;
    height: 183px;
    padding-top: 82px;
    border-radius: 50%;
    box-sizing: border-box;
    background: #818181;
    color: #b8b8b8;
    cursor: pointer;
}

.professor_cont .professor_slide .page_item.is_active {
    color: #fff;
    background: #0047f8;
}

.professor_cont .professor_slide .page_item::before {
    clear: both;
    content: '';
    display: block;
    position: absolute;
    bottom: -12px;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 110%;
    /* width: 330px;
    height: 119px; */
    background: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/professor_tab_1.png') no-repeat 0 0;
}

.professor_cont .professor_slide .page_item_1::before {
    background-position-x: 0px;
}

.professor_cont .professor_slide .page_item_2::before {
    background-position-x: -333px;
}

.professor_cont .professor_slide .page_item_3::before {
    background-position-x: -668px;
}

.professor_cont .professor_slide .page_item_4::before {
    background-position-x: -985px;
}

.professor_cont .professor_slide .page_item_5::before {
    background-position-x: -1324px;
}

.professor_cont .professor_slide .page_item.is_active::before {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/professor_tab_active_1.png');
}

.professor_cont .professor_slide .page_item p,
.professor_cont .professor_slide .page_item strong {
    position: relative;
    line-height: 1.2;
    letter-spacing: -0.065em;
    text-align: center;
    font-size: 18px;
    font-family: 'noto4';
    z-index: 1;
}

.professor_cont .professor_slide .page_item strong {
    font-size: 28px;
    font-family: 'noto6';
}

.professor_cont .professor_slide .swiper-slide {
    position: relative;
    width: 1400px;
    padding: 105px 0 0 184px;
    text-align: left;
    z-index: 1;
}

.professor_cont .professor_slide .swiper-slide::after {
    clear: both;
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0);
    width: 1800px;
    height: 914px;
    background: no-repeat bottom 50px left;
    z-index: -1;
}

.professor_cont .professor_slide .swiper-slide_1::after {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/professor_visual_01.png');
}

.professor_cont .professor_slide .swiper-slide_2::after {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/professor_visual_02.png');
}

.professor_cont .professor_slide .swiper-slide_3::after {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/professor_visual_03.png');
}

.professor_cont .professor_slide .swiper-slide_4::after {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/professor_visual_04.png');
    background-position: top 80px right 300px;
}

.professor_cont .professor_slide .swiper-slide_5::after {
    background-image: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/professor_visual_05.png');
    background-position: top 80px right 230px;
}

.professor_cont .professor_slide .slide_badge {
    position: absolute;
    top: 332px;
    right: 0;
}

.professor_cont .professor_slide .slide_history {
    display: flex;
    gap: 16px;
    margin: 0 0 43px 0;
}

.professor_cont .professor_slide .slide_history li {
    width: 182px;
    height: 77px;
    padding: 15px 0 0;
    line-height: 1.2;
    letter-spacing: -0.075em;
    text-align: center;
    color: #e4d080;
    font-size: 18px;
    background: url('/_skin/tpl_skin/basic_chemical_analysis/images/content1_4/teacher_shape.png') no-repeat 0 0;
}

.professor_cont .professor_slide .slide_sub_title {
    line-height: 1.28;
    margin-bottom: 31px;
    color: #fff;
    font-family: 'noto6';
    font-size: 36px;
    letter-spacing: -0.025em;
}

.professor_cont .professor_slide .slide_sub_title em {
    display: block;
    font-family: 'noto6';
}

.professor_cont .professor_slide .slide_title {
    display: flex;
    align-items: center;
    gap: 5px;
    width: fit-content;
    letter-spacing: -0.025em;
    font-family: 'noto4';
    font-size: 23px;
    color: #fff;
    background: linear-gradient(to right, #fefdeb, #f8ea0c);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.professor_cont .professor_slide .slide_title p,
.professor_cont .professor_slide .slide_title span {
    line-height: 1.1;
}

.professor_cont .professor_slide .slide_title span {
    display: flex;
    align-items: center;
    height: 32px;
    padding: 0 11px 0 12px;
    border-radius: 60px;
    background: #fff;
}

.professor_cont .professor_slide .slide_name {
    display: block;
    line-height: 1.2;
    width: fit-content;
    margin: 8px 0 0;
    letter-spacing: -0.025em;
    font-family: 'noto7';
    font-size: 55px;
    color: #fff;
    background: linear-gradient(to right, #fefdeb, #f8ea0c);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.professor_cont .professor_slide .slide_list {
    position: absolute;
    right: 152px;
    bottom: 100px;
}

.professor_cont .professor_slide .slide_list li {
    line-height: 1.2;
    letter-spacing: -0.065em;
    text-align: right;
    color: #fff;
    font-size: 20px;
    font-family: 'noto4';
}

.professor_cont .professor_slide .slide_list li+li {
    margin: 8px 0 0;
}

/* .professor_cont .professor_slide .slide_list li::before {
	content: '·';
} */

.professor_cont .professor_slide .slide_check {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin: 49px 0 0 13px;
    gap: 11px;
}

.professor_cont .professor_slide .slide_check li {
    display: inline-flex;
    align-items: center;
    /* min-width: 356px;
    height: 52px; */
    /* padding: 0 30px 0 56px;
    border: 2px solid #00834a;
    border-radius: 100px; */
    letter-spacing: -0.055em;
    color: #fff;
    font-size: 21px;
    font-family: 'noto3';
    /* background: #2b3e3e url('/_skin/tpl_skin/basic_tax_accountant/images/apply/refund/teacher_check.png') no-repeat 25px center; */
}

.professor_cont .professor_slide .popupVideo {
    position: relative;
    width: 539px;
    height: 330px;
    margin: 72px 0 0 0;
}

.professor_cont .professor_slide .popupVideo a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.professor_cont .professor_slide .btn_video {
    display: block;
    margin: 61px 0 0;
    width: 539px;
}

.professor_cont .professor_slide .slide_review {
    display: flex;
    gap: 35px;
    margin: 50px 0 0;
}

.professor_cont .professor_slide .slide_review li {
    display: flex;
    align-items: center;
    width: 343px;
    height: 165px;
    padding: 6px 20px 0 148px;
    border-radius: 20px;
    word-break: keep-all;
    box-shadow: 0px 0px 33px 0px rgba(0, 0, 0, 0.25);
    background: #fff url('/_skin/tpl_skin/basic_sports_renew/images/cm_teacher/v2/reviewer_1.png') no-repeat 31px 31px;
}

.professor_cont .swiper-slide_1 .slide_review li:nth-child(1),
.professor_cont .swiper-slide_4 .slide_review li:nth-child(1) {
    background-image: url('/_skin/tpl_skin/basic_sports_renew/images/cm_teacher/v2/reviewer_1.png');
}

.professor_cont .swiper-slide_1 .slide_review li:nth-child(2),
.professor_cont .swiper-slide_4 .slide_review li:nth-child(2) {
    background-image: url('/_skin/tpl_skin/basic_sports_renew/images/cm_teacher/v2/reviewer_2.png');
}

.professor_cont .swiper-slide_1 .slide_review li:nth-child(3),
.professor_cont .swiper-slide_4 .slide_review li:nth-child(3) {
    background-image: url('/_skin/tpl_skin/basic_sports_renew/images/cm_teacher/v2/reviewer_3.png');
}

.professor_cont .swiper-slide_2 .slide_review li:nth-child(1),
.professor_cont .swiper-slide_5 .slide_review li:nth-child(1),
.professor_cont .swiper-slide_7 .slide_review li:nth-child(1) {
    background-image: url('/_skin/tpl_skin/basic_sports_renew/images/cm_teacher/v2/reviewer_4.png');
}

.professor_cont .swiper-slide_2 .slide_review li:nth-child(2),
.professor_cont .swiper-slide_5 .slide_review li:nth-child(2),
.professor_cont .swiper-slide_7 .slide_review li:nth-child(2) {
    background-image: url('/_skin/tpl_skin/basic_sports_renew/images/cm_teacher/v2/reviewer_5.png');
}

.professor_cont .swiper-slide_2 .slide_review li:nth-child(3),
.professor_cont .swiper-slide_5 .slide_review li:nth-child(3),
.professor_cont .swiper-slide_7 .slide_review li:nth-child(3) {
    background-image: url('/_skin/tpl_skin/basic_sports_renew/images/cm_teacher/v2/reviewer_6.png');
}

.professor_cont .swiper-slide_3 .slide_review li:nth-child(1),
.professor_cont .swiper-slide_6 .slide_review li:nth-child(1) {
    background-image: url('/_skin/tpl_skin/basic_sports_renew/images/cm_teacher/v2/reviewer_7.png');
}

.professor_cont .swiper-slide_3 .slide_review li:nth-child(2),
.professor_cont .swiper-slide_6 .slide_review li:nth-child(2) {
    background-image: url('/_skin/tpl_skin/basic_sports_renew/images/cm_teacher/v2/reviewer_8.png');
}

.professor_cont .swiper-slide_3 .slide_review li:nth-child(3),
.professor_cont .swiper-slide_6 .slide_review li:nth-child(3) {
    background-image: url('/_skin/tpl_skin/basic_sports_renew/images/cm_teacher/v2/reviewer_5.png');
}

.professor_cont .professor_slide .slide_review p {
    word-break: keep-all;
    line-height: 1.45;
    letter-spacing: -0.045em;
    font-size: 20px;
    font-family: 'noto4';
}

.professor_cont .professor_slide .slide_review em {
    color: #0054ff;
    font-family: 'noto6';
}

/* 도서 */
.book_cont {
    padding: 151px 0 119px;
}

.book_cont .book_visual {
    position: relative;
    margin: 81px 0 0;
}

.book_cont .book_visual .visual_badge {
    display: flex;
    flex-direction: column;
    gap: 9px;
    position: absolute;
    top: -48px;
    right: -69px;
}

.book_cont .book_visual .badge_item {
    width: 192px;
    height: 192px;
    border-radius: 50%;
    overflow: hidden;
    box-shadow: 4px 4px 7px 0px rgba(0, 0, 0, 0.4);
}

.book_cont .book_slide {
    position: relative;
    width: 1100px;
    height: 651px;
    margin: 79px 0 0;
    overflow: hidden;
}

.book_cont .book_slide .swiper-wrapper {
    height: 629px;
}

.book_cont .book_slide .swiper-pagination {
    gap: 0;
}

.book_cont .book_slide .swiper-pagination-bullet {
    width: 21px;
    height: 21px;
}

.book_cont .book_slide .swiper-pagination-bullet-active {
    background: #000;
}

.book_cont .bookreview_slide {
    height: 321px;
    width: 1288px;
    margin: 96px 0 0;
    padding: 30px 95px;
    box-sizing: border-box;
}

.book_cont .bookreview_slide .swiper-slide {
    height: 261px;
    padding-left: 40px;
    box-sizing: border-box;
    background: #ffffff;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.4);
    border-radius: 15px;
    box-sizing: border-box;
}

.book_cont .swiper-slide .div-table {
    width: 100%;
    height: 100%;
}

.book_cont .swiper-slide .div-table>* {
    vertical-align: middle;
}

.book_cont .review_content {
    width: 85%;
    padding: 19px 0 0;
}

.book_cont .review_tit {
    font-size: 37px;
    line-height: 100%;
    font-family: 'noto6';
    font-weight: 100;
    letter-spacing: -0.04em;
}

.book_cont .review_txt {
    margin: 30px 0 28px;
    font-size: 23px;
    line-height: 1.3;
    font-family: 'noto4';
    letter-spacing: -0.035em;
    word-break: keep-all;
}

.book_cont .review_slide .review_txt {
    width: 80%;
}

.book_cont .writer {
    letter-spacing: -0.025em;
    font-size: 20px;
    font-family: 'noto6';
}

.book_cont .btn_arrow {
    position: absolute;
    display: block;
    width: 62px;
    height: 62px;
    z-index: 4;
    top: calc(50% - 29px);
    cursor: pointer;
}

.book_cont .btn_arrow.btn_prev {
    background: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/all_v2/arrow_left.png') no-repeat;
    left: 0;
}

.book_cont .btn_arrow.btn_next {
    background: url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/all_v2/arrow_right.png') no-repeat;
    right: 0;
}

/* 모의고사 */
.mock_cont {
    background: #efefef;
}

.mock_cont .main_inner {
    padding: 145px 0 140px;
}

.mock_cont .mock_list {
    margin: 52px 0 0 0;
}

/* qna */
.qna_cont .main_inner {
    padding: 121px 0 70px;
}

.qna_cont .qna_visual {
    margin: 49px 0 0;
}

/* 리뷰 */
.review_cont {
    position: relative;
    padding: 125px 0 90px;
    background: #121a64 url('/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/review_bg.png') no-repeat center top;
}

.review_cont:after {
    position: absolute;
    display: block;
    left: 50%;
    bottom: -90px;
    width: 913px;
    height: 942px;
    content: '';
    background: url(/_skin/tpl_skin/basic_sonhaesa_new/images/apply/onepass/v2/review_teacher.png);
    transform: translateX(-871px);
}

.review_cont .main_inner {
    width: 1100px;
    margin: 0 auto;
}

.review_cont .d-flex {
    display: flex;
    width: 1100px;
    justify-content: end;
    align-items: start;
    margin-top: 43px;
}

.review_cont .review_marqee {
    position: relative;
    width: 588px;
    height: 539px;
    overflow: hidden;
    z-index: 9;
}

.review_cont .review_marqee:after {
    position: absolute;
    display: block;
    width: 100%;
    height: 230px;
    content: '';
    bottom: 0;
    left: 0;
    background: linear-gradient(0deg, rgba(4, 9, 38, 1) 36%, rgba(255, 255, 255, 0) 92%);
    z-index: 9;
}

.review_cont .review_marqee .marqee_wrap {
    gap: 11px;
    align-items: flex-start;
    overflow: hidden;
    animation: marquee 30s linear infinite;
    background: transparent;
    /* margin-bottom: 11px; */
    transform: translateY(-88%);
}

.review_cont .review_marqee .review_move {
    height: auto !important;
    margin-bottom: 11px;
}

.review_cont .review_marqee .review {
    display: flex;
    background: #ffffff;
    align-items: start;
    border-radius: 20px;
    padding: 30px;
    gap: 25px;
}

.review_cont .review_marqee .review_if {
    display: flex;
    width: 426px;
    justify-content: space-between;
    margin-bottom: 11px;
}

.review_cont .review_marqee .review_if>p {
    font-size: 16px;
    color: #888888;
    letter-spacing: -1.2px;
    font-family: 'noto2';
}

.review_txt {
    font-size: 18px;
    letter-spacing: -1.2px;
    line-height: 26px;
}

@keyframes marquee {
    0% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(-50%);
    }
}

/* 시작 */
.start_cont {
    height: 732px;
    background: url('/_skin/tpl_skin/basic_tax_accountant/images/apply/refund/sidea_bg.png') no-repeat center top;
}

.start_cont .main_inner {
    padding: 135px 0 0;
}

.start_cont .main_title p {
    color: #fff;
    font-size: 50px;
    font-family: 'noto4';
}

.start_cont .main_title h3 {
    color: #40f37e;
    font-size: 50px;
}

.start_cont .start_list {
    display: flex;
    flex-wrap: wrap;
    gap: 17px 15px;
    width: 100%;
    margin: 86px 0 0 10px;
}

.start_cont .start_list .list_item {
    position: relative;
    width: 215px;
    height: 129px;
    padding: 18px 0 0;
    line-height: 1.2;
    text-align: center;
    letter-spacing: -0.03em;
    color: #fff;
    font-size: 21px;
    background: url('/_skin/tpl_skin/basic_tax_accountant/images/apply/refund/sidea_box.png') no-repeat 0 0;
}

.start_cont .start_list .list_item:nth-child(n + 5) {
    left: 90px;
}

.start_cont .start_list .list_item em {
    font-family: 'noto6';
}

.start_cont .evidence_area {
    position: absolute;
    top: 232px;
    right: 41px;
    z-index: 2;
}

.start_cont .evidence_btn {
    display: block;
    width: 82px;
    height: 28px;
    letter-spacing: -0.03em;
    font-size: 15px;
    font-family: 'noto4';
    background-color: #243c3c;
    line-height: 1.1;
    padding: 6px 6px 1px;
    border: 1px solid #1e8c84;
    border-radius: 3px;
    letter-spacing: -0.025em;
    color: #1e8c84;
    cursor: pointer;
}

.start_cont .evidence_popup_area li,
.start_cont .evidence_popup_area li:first-child {
    position: relative;
    line-height: 1.8;
    text-align: left;
    word-break: keep-all;
    letter-spacing: -0.045em;
    color: #000;
    font-size: 14px;
    font-family: 'noto4';
}

.start_cont .evidence_popup_area li:first-child {
    margin-bottom: 0;
    font-weight: normal;
}

.start_cont .evidence_popup_area li:nth-child(even) {
    color: #000;
}

.start_cont .evidence_popup_area li:not(:first-child)::before {
    display: none;
}