/* ===== DCON1 ===== */
.container:has(#ctt.ctt_sub04),
#ctt.ctt_sub04 {
    display: none !important;
}

.dcon1 {
    background: #db1e1e url('/images/bcon1_bg.webp') center top / 100.787402vw auto no-repeat;
    padding-bottom: 8.713911vw;
}

.dcon1 img {
    display: block;
    width: 100%;
}

.dcon1_title_stage {
    margin-top: 20.734908vw;
    align-self: center;
    width: 20.944882%;
    z-index: 1;
}

.dcon1_title_line {
    width: 100%;
}

.dcon1_title {
    top: 0.262467vw;
    left: 0.250627%;
    width: calc(var(--px) * 397);
    aspect-ratio: 397 / 58;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
}

/* ===== DCON2 ===== */
.dcon2 {
    background: #ffffff;
    padding-top: 8.083990vw;
    padding-bottom: 4.619423vw;
}

.dcon2,
.dcon2 * {
    box-sizing: border-box;
}

.dcon2 img {
    display: block;
    width: 100%;
}

.dcon2_title {
    margin-top: 0.000000vw;
    align-self: center;
    width: calc(var(--px) * 246);
    aspect-ratio: 246 / 37;
    display: flex;
    justify-content: center;
    align-items: center;
}

.dcon2_swiper_group {
    align-self: center;
    width: 82.992126%;
}

.dcon2_swiper_group_live {
    margin-top: 3.727034vw;
}

.dcon2_live_swiper,
.dcon2_soon_swiper {
    width: 100.000000%;
    overflow: hidden;
}

.dcon2_card,
.dcon2_soon_card {
    background: #ffffff;
    border: 1px solid #e0dcd5;
}

.dcon2_card {
    display: flex;
    flex-direction: column;
    padding: 0.892388vw 0.892388vw 2.309711vw;
}

.dcon2_card_photo {
    align-self: center;
    width: calc(var(--px) * 475);
    aspect-ratio: 475 / 260;
    display: flex;
    justify-content: center;
    align-items: center;
}

.dcon2_card_body {
    display: flex;
    flex-direction: column;
    margin-top: 1.312336vw;
    padding-left: 1.942257vw;
    padding-right: 1.259843vw;
}

.dcon2_card_name_row {
    display: flex;
    align-items: center;
    width: 100.000000%;
}

.dcon2_card_name_icon {
    flex: 0 0 auto;
    width: calc(var(--px) * 33);
    aspect-ratio: 33 / 36;
    display: flex;
    justify-content: center;
    align-items: center;
}

.dcon2_card_name {
    margin: 0 0 0 1.102362vw;
    font-family: var(--mf);
    font-weight: 700;
    font-size: var(--fs-22);
    line-height: 1.136;
    letter-spacing: -0.05em;
    color: #0c0c0c;
    white-space: nowrap;
}

.dcon2_info_row {
    display: flex;
    align-items: flex-start;
    margin-top: 0.577428vw;
    width: 100.000000%;
}

.dcon2_info_row_address {
    margin-top: 1.312336vw;
}

.dcon2_info_icon {
    flex: 0 0 auto;
    margin-top: 0.157480vw;
    width: calc(var(--px) * 16);
    aspect-ratio: 16 / 19;
    display: flex;
    justify-content: center;
    align-items: center;
}

.dcon2_info_text {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    margin: 0 0 0 0.629921vw;
    font-family: var(--mf);
    font-weight: 400;
    font-size: var(--fs-15);
    line-height: 1.687;
    letter-spacing: -0.05em;
    color: #0c0c0c;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dcon2_card_links {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 1.312336vw;
    width: 100.000000%;
}

.dcon2_card_map_img {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 0.000000vw;
    width: calc(var(--px) * 128);
    aspect-ratio: 128 / 34;
}

.dcon2_nav {
    display: flex;
    justify-content: center;
    align-items: center;
    align-self: center;
    width: 9.553806%;
}

.dcon2_live_nav {
    margin-top: 0.892388vw;
}

.dcon2_nav_btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 45.604396%;
    padding-top: 0.682415vw;
    padding-bottom: 0.734908vw;
    border-radius: 1.312336vw;
    background: #090909;
    font-family: 'Suit', var(--mf);
    font-weight: 500;
    font-size: var(--fs-16);
    line-height: 1;
    color: #ffffff;
    white-space: nowrap;
    cursor: pointer;
}

.dcon2_nav_btn + .dcon2_nav_btn {
    margin-left: 8.791209%;
}

.dcon2_soon_title {
    margin-top: 7.296588vw;
    align-self: center;
    width: calc(var(--px) * 343);
    aspect-ratio: 343 / 37;
    display: flex;
    justify-content: center;
    align-items: center;
}

.dcon2_swiper_group_soon {
    margin-top: 1.312336vw;
}

.dcon2_soon_card {
    padding: 0.892388vw;
}

.dcon2_soon_photo {
    overflow: hidden;
    width: 100.000000%;
}

.dcon2_soon_overlay {
    position: absolute;
    top: 6.666667vw;
    left: 13.052632%;
    width: 70.000000%;
}

.dcon2_soon_en {
    margin: 0;
    font-family: var(--ff);
    font-weight: 700;
    font-size: var(--fs-16);
    line-height: 1;
    letter-spacing: -0.03em;
    color: #ffffff;
    text-align: center;
    white-space: nowrap;
}

.dcon2_soon_ko,
.dcon2_soon_badge {
    margin: 0;
    font-family: var(--ff);
    font-weight: 700;
    font-size: var(--fs-15);
    line-height: 2.03;
    letter-spacing: -0.03em;
    color: #ffffff;
    white-space: nowrap;
}

.dcon2_soon_ko {
    font-family: var(--mf);
    font-size: var(--fs-22);
    line-height: 1.136;
    letter-spacing: -0.05em;
    white-space: nowrap;
}

.dcon2_soon_badge {
    margin-top: 1.627297vw;
}

.dcon2_soon_nav {
    margin-top: 0.997375vw;
}

@media (max-width: 599px) {
    .dcon1 {
        background-position: center top;
        background-size: auto 100%;
        padding-top: 15vw;
        padding-bottom: 30.026247vw;
    }

    .dcon1_title_stage {
        margin-top: 41.994751vw;
        width: 54.015748%;
    }

    .dcon2 {
        padding-top: 15.000000vw;
        padding-bottom: 12.000000vw;
    }

    .dcon2_title {
        width: 42.000000%;
    }

    .dcon2_swiper_group {
        width: 100%;
    }

    .dcon2_swiper_group_live {
        margin-top: 7.000000vw;
    }

    .dcon2_card {
        padding: 3.000000vw 3.000000vw 7.000000vw;
    }

    .dcon2_card_body {
        margin-top: 4.000000vw;
        padding-left: 3.000000vw;
        padding-right: 3.000000vw;
    }

    .dcon2_card_name_icon {
        width: 10.500000%;
    }

    .dcon2_card_name {
        margin-left: 2.500000vw;
        font-size: 4.400000vw;
        white-space: nowrap;
    }

    .dcon2_info_row {
        margin-top: 2.200000vw;
    }

    .dcon2_info_row_address {
        margin-top: 4.500000vw;
    }

    .dcon2_info_icon {
        width: 5.200000%;
    }

    .dcon2_info_text {
        margin-left: 2.000000vw;
    }

    .dcon2_card_links {
        margin-top: 5.000000vw;
    }

    .dcon2_card_map_img {
        margin-left: 0.000000vw;
        width: 38.000000%;
    }

    .dcon2_nav {
        width: 28.000000%;
    }

    .dcon2_live_nav {
        margin-top: 4.000000vw;
    }

    .dcon2_nav_btn {
        width: 13.5vw;
        height: 8.5vw;
        padding: 0;
        border-radius: 4.25vw;
        font-size: var(--fs-23);
    }

    .dcon2_soon_title {
        margin-top: 13.000000vw;
        width: 60.000000%;
    }

    .dcon2_swiper_group_soon {
        margin-top: 5.000000vw;
    }

    .dcon2_soon_card {
        padding: 3.000000vw;
    }

    .dcon2_soon_overlay {
        position: absolute;
        top: 17.000000vw;
        left: 12.000000%;
        width: 76.000000%;
    }

    .dcon2_soon_ko {
        font-size: var(--fs-24);
        white-space: nowrap;
    }

    .dcon2_soon_badge {
        margin-top: 5.000000vw;
    }

    .dcon2_soon_nav {
        margin-top: 4.000000vw;
    }
}
