@charset "utf-8";
/* CSS Document */


/* ==========================================================================
   메인
   ========================================================================== */

#main {
    min-height: 100vh;
    transition: all 0.5s ease-in-out;
    background-image: url("../images/main_bg.webp");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    padding-top: var(--header_h);
}

#main .main_cont {
    padding-top: calc(var(--sec_pd) / 1.75);
    padding-bottom: var(--sec_pd);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

#main .main_cont .sect_tit {
    z-index: 1;
}

#main .main_cont .sect_tit .GTfont {
    letter-spacing: -.035rem;
    text-shadow: 0px 2px 5px rgba(var(--point_dark_rgb), 0.15);
}

#main .main_cont .sect_tit .fc_yellow {
    background: rgba(var(--point_dark_rgb), 1.0);
    padding-left: 0.25rem;
    padding-right: 0.25rem;
}

#main .main_cont .sect_tit .dot {
    position: relative;
}

#main .main_cont .sect_tit .top_dot {
    text-emphasis: filled var(--point_dark);
    text-emphasis-position: over;
}

#main .main_cont .sect_tit .dot:before {
    position: absolute;
    height: auto;
    content: "·";
    top: -41%;
    left: -5%;
    transform: translateX(-50%);
    color: var(--point_dark);
}


/* ==========================================================================
   메인 일반 카드
   ========================================================================== */

.main_card {
    width: 100%;
    max-width: 200px;
    position: relative;
    padding: 35px;
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: var(--br_m);
    background: rgba(var(--point_dark_rgb), .2);
    box-sizing: border-box;
}

.main_card img {
    width: auto;
    height: 87px;
    margin: auto;
}

.main_card_chip {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--point_dark);
    border-radius: var(--br_c);
    color: var(--yellow);
    padding: 15px 20px;
    position: absolute;
    bottom: 0;
    transform: translateY(30%);
}


/* ==========================================================================
   메인 상품 카드 - Wide Type
   ========================================================================== */

.main_card.main_card_w {
    width: 100%;
    max-width: 220px;
    min-height: 260px;
    padding: 30px 0 0;
    justify-content: flex-start;
    align-items: center;
    gap: 0;
    border: 0;
    border-radius: var(--br_r);
    background: var(--white);
    box-shadow: 0 8px 18px rgba(var(--point_dark_rgb), .35);
    overflow: hidden;
    text-decoration: none;
    transition: transform .22s ease, box-shadow .22s ease;
}

.main_card.main_card_w:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 28px rgba(var(--point_dark_rgb), .22);
}

.main_card_w_rate {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 16px;
    border-radius: var(--br_m);
    background: rgba(var(--point_rgb), .16);
    color: var(--point_dark);
    line-height: 1;
    white-space: nowrap;
    gap: 5px;
}

.main_card_w_obj {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    flex: 1 1 auto;
    min-height: 100px;
    padding: 24px 20px;
    box-sizing: border-box;
}

.main_card.main_card_w .main_card_w_obj img {
    width: auto;
    height: 70px;
    margin: 0;
    object-fit: contain;
}

.main_card_w_title {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 64px;
    padding: 0 18px;
    background: var(--point_dark);
    color: var(--white);
    line-height: 1;
    text-align: center;
    box-sizing: border-box;
    white-space: nowrap;
}

.main_card_w_arrow {
    display: inline-flex;
    margin-left: 8px;
    line-height: 1;
    transition: transform .2s ease;
}

.main_card.main_card_w:hover .main_card_w_arrow {
    transform: translateX(4px);
}


/* ==========================================================================
   반응형 - 1280 이하
   ========================================================================== */

@media (max-width: 1280px) {
    #main {
        min-height: unset !important;
    }

    #main .main_cont {
        display: flex;
        flex-direction: column;
        padding-top: 17rem;
        padding-bottom: 0rem;
    }

    #main .main_cont .sect_tit .fs_80 {
        font-size: 3.25rem !important;
    }

    #main .main_cont .sect_tit .fs_36 {
        font-size: 1.72rem !important;
    }

    .main_card:not(.main_card_w) {
        padding: 40px 2rem;
    }

    .main_card:not(.main_card_w) p.fs_24 {
        font-size: 120% !important;
    }

    .main_card:not(.main_card_w) p.fs_36 {
        font-size: 150% !important;
    }

    .main_card:not(.main_card_w) img {
        height: 70px;
    }

    .main_pig {
        width: 35%;
        right: 50%;
        bottom: unset;
        top: 8rem;
        transform: translateX(50%);
    }

    .main_card.main_card_w {
        max-width: 250px;
        min-height: 280px;
        padding-top: 26px;
    }

    .main_card_w_rate {
        min-height: 46px;
        padding: 0 14px;
    }

    .main_card_w_obj {
        min-height: 130px;
        padding: 20px 16px;
    }

    .main_card.main_card_w .main_card_w_obj img {
        height: 72px;
    }

    .main_card_w_title {
        min-height: 58px;
    }
}


/* ==========================================================================
   반응형 - 600 이하 / 모바일 메인 이미지
   ========================================================================== */

@media (max-width: 600px) {
    #main {
        /* background-color: #2ca3e8; */
        background-image: url("../images/main_bg_m.png");
        background-size: cover;
        background-position: bottom center;
        height: 75vh;
    }
    #main .main_cont .sect_tit .GTfont{
        font-size: 3.5rem !important
    }


    .GTfont + .GTfont {
        margin-bottom: 3rem;
    }
.GTfont + .medium {
    margin-top: 1.5rem;
    font-size: 22px!important

}
    #main .main_cont {
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        /* padding-top: 4rem;
        padding-bottom: 0rem; */
        padding: 3rem 2.5rem 0;
    }

    /*
       일반 카드 모바일 전용
       모바일 배경 이미지 위에서 카드가 보이도록 기존 보더/반투명 배경 유지
    */
    .main_card:not(.main_card_w) {
        background: rgba(var(--white_rgb), .3);
        border: 1px solid rgba(var(--white_rgb), .3);
        padding: 1.5rem 1rem 30px;
        justify-content: space-between;
    }

    .main_card:not(.main_card_w) img {
        height: 60px;
    }

    .main_card_chip {
        padding: 10px 15px;
        transform: translateY(30%);
    }

    /*
       상품 카드 모바일 전용
       일반 카드의 모바일 보더가 섞이지 않도록 명확히 분리
    */
    .main_card_pack {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: stretch;
        gap: 5px;
        width: 100%;
    }

    .main_card.main_card_w {
        flex: 1 1 0;
        width: auto;
        max-width: none;
        min-width: 0;
        min-height: 175px;
        padding-top: 12px;
        border: 0;
        background: var(--white);
    }

    .main_card_w_rate {
        min-height: 30px;
        padding: 0 5px;
        border-radius: var(--br_s);
        gap: 2px;
        font-size: 12px !important;
        line-height: 1 !important;
    }

    .main_card_w_obj {
        min-height: 55px;
        padding: 10px 6px;
    }

    .main_card.main_card_w .main_card_w_obj img {
        height: 35px;
    }

    .main_card_w_title {
        min-height: 42px;
        padding: 0 4px;
        font-size: 12px !important;
        line-height: 1.15 !important;
        white-space: normal;
        word-break: keep-all;
    }

    .main_card_w_arrow {
        margin-left: 3px;
    }
}


/* ==========================================================================
   반응형 - 480 이하
   ========================================================================== */

@media (max-width: 480px) {
    #main {
        height:85vh;
    }

    .main_card_pack {
        gap: 4px;
    }

    .main_card.main_card_w {
        min-height: unset;
        border: 0;
    }

    .main_card_w_rate {
        min-height: 28px;
        padding: 0 4px;
        font-size: 11px !important;
    }


    .main_card_w_title {
        min-height: 40px;
        padding: 0 3px;
        font-size: 11px !important;
    }
}


/***** 가로모드 *****/
@media screen and (orientation: landscape) and (max-width: 900px) {
}
/* ========================================================================== */