/* ===== CCON1 ===== */
.container:has(#ctt.ctt_sub03),
#ctt.ctt_sub03 {
    display: none !important;
}

.ccon1 {
    background: #db1e1e url('/images/bcon1_bg.webp') center top / 100.787402vw auto no-repeat;
    padding-bottom: 8.713911vw;
}

.ccon1 img {
    display: block;
    width: 100%;
}

.ccon1_title_stage {
    margin-top: 20.734908vw;
    align-self: center;
    width: 20.944882%;
    z-index: 1;
}

.ccon1_title_line {
    width: 100%;
}

.ccon1_title {
    top: 0.472441vw;
    left: 20.802005%;
    width: calc(var(--px) * 233);
    aspect-ratio: 233 / 57;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
}

/* ===== CCON2 ===== */
.ccon2 {
    background: #fdfcf9;
    isolation: isolate;
}

.ccon2 img {
    display: block;
    min-width: 0;
    width: 100%;
}

.ccon2_ticker {
    width: 100%;
    overflow: hidden;
    background: #e21b1b;
    margin-top: 0.6vw;
}

.ccon2_ticker_track {
    top: 0;
    left: 0;
    display: flex;
    width: 540.472443vw;
    animation: ccon2Ticker 28.000000s linear infinite;
    pointer-events: none;
}

.ccon2_ticker_media {
    width: calc(var(--px) * 2288);
    aspect-ratio: 2288 / 31;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
}

.ccon2_ticker_measure {
    visibility: hidden;
}

@keyframes ccon2Ticker {
    0.000000% {
        transform: translateX(0);
    }

    100.000000% {
        transform: translateX(-33.333333%);
    }
}

.ccon2_showcase {
    width: 100%;
    padding-top: 12.178478vw;
    padding-bottom: 13.438320vw;
    background: #fdfcf9 url('/images/ccon2_bg.webp') center top / 100.787402vw auto no-repeat;
}

.ccon2_word_stack {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-left: auto;
    margin-right: auto;
    width: 17.217848%;
    z-index: 3;
}

.ccon2_word {
    width: 100%;
}

.ccon2_word_base {
    width: 100%;
    z-index: 1;
}

.ccon2_word_hot {
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    z-index: 2;
    animation-name: ccon2WordHot;
    animation-duration: 4.800000s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.ccon2_word_burger .ccon2_word_hot {
    animation-delay: 0.000000s;
}

.ccon2_word_fries .ccon2_word_hot {
    animation-delay: 1.200000s;
}

.ccon2_word_drinks .ccon2_word_hot {
    animation-delay: 2.400000s;
}

.ccon2_word_beers .ccon2_word_hot {
    animation-delay: 3.600000s;
}

@keyframes ccon2WordHot {
    0.000000%,
    20.833333% {
        opacity: 1;
    }

    25.000000%,
    100.000000% {
        opacity: 0;
    }
}

.ccon2_poster_layer {
    inset: 0;
    width: 100%;
    pointer-events: none;
    z-index: 2;
}

.ccon2_poster {
    width: calc(var(--px) * 304);
    aspect-ratio: 304 / 434;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ccon2_poster_egg {
    top: 8.136483vw;
    left: 2.729659%;
}

.ccon2_poster_standard {
    top: 8.136483vw;
    left: 19.580052%;
}

.ccon2_poster_cheese {
    top: 8.136483vw;
    left: 64.251969%;
}

.ccon2_poster_patty {
    top: 8.136483vw;
    left: 81.049869%;
}

/* ===== CCON03 ===== */
.container:has(#ctt.ctt_sub03),
#ctt.ctt_sub03 {
    display: none !important;
}

.ccon03_mobile_only {
    display: none !important;
}

.ccon03 {
    overflow: hidden;
    background: #ffffff;
    padding-top: 5.616798vw;
    padding-bottom: 5.879265vw;
}

.ccon03,
.ccon03 * {
    box-sizing: border-box;
}

.ccon03 img {
    display: block;
    width: 100%;
    object-fit: cover;
}

.ccon03_layout {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 0.000000vw;
    align-self: center;
    width: 68.241470%;
}

.ccon03_title {
    margin-top: 5.984252vw;
    font-family: 'Ackbar', sans-serif;
    font-size: 2.624672vw;
    line-height: 1.2;
    letter-spacing: -0.02em;
    text-transform: uppercase;
    color: #090909;
    text-align: center;
    white-space: nowrap;
}

.ccon03_category_nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.000000vw;
    margin-top: 0.000000vw;
    width: 43.538462%;
    z-index: 3;
}

.ccon03_category_btn {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0.000000vw;
    border: 0;
    background: transparent;
    cursor: pointer;
    color: #090909;
}

.ccon03_category_btn::before {
    display: none;
}

.ccon03_category_btn:hover::before,
.ccon03_category_btn.is-active::before {
    display: none;
}

.ccon03_category_label {
    display: block;
    font-family: var(--ff);
    font-weight: 700;
    font-size: var(--fs-19);
    line-height: 1.640000;
    letter-spacing: -0.030000em;
    color: currentColor;
    white-space: nowrap;
    z-index: 1;
    transition: color 0.240000s ease;
}

.ccon03_category_btn:hover,
.ccon03_category_btn.is-active {
    color: #db1e1e;
}

.ccon03_menu_area {
    margin-top: 1.942257vw;
    width: 100.000000%;
    z-index: 2;
}

.ccon03_menu_group {
    display: none;
    width: 100.000000%;
}

.ccon03_menu_group.is-active {
    display: block;
}

.ccon03_menu_swiper {
    overflow: hidden;
    padding-top: 3.779528vw;
    width: 100.000000%;
    padding-bottom: 1vw;
}

.ccon03_slide_col {
    display: flex;
    flex-direction: column;
    gap: 2.309711vw;
    overflow: visible;
}

.ccon03_menu_card {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    overflow: visible;
    width: 100.000000%;
}

.ccon03_card_no {
    margin: 0;
    width: 9.580838%;
    font-family: var(--ff);
    font-weight: 700;
    font-size: var(--fs-16);
    line-height: 1.641000;
    letter-spacing: 0;
    color: #090909;
    white-space: nowrap;
    z-index: 2;
}

.ccon03_card_media {
    overflow: visible;
    margin-top: 0.314961vw;
    align-self: center;
    width: 72.718053%;
}

.ccon03_card_hover_circle {
    top: 7.091864vw;
    left: 50.000000%;
    width: 0.367454vw;
    padding-top: 0.367454vw;
    border-radius: 50%;
    background: #f3f1ec;
    transform: translate(-50%, -50%);
    opacity: 1;
    pointer-events: none;
    transition: width 0.360000s ease, padding-top 0.360000s ease, opacity 0.240000s ease;
    z-index: 0;
}

.ccon03_menu_card:hover .ccon03_card_hover_circle {
    width: 132.217573%;
    padding-top: 132.217573%;
    opacity: 1;
}

.ccon03_card_image {
    width: 100.000000%;
    max-height: 100%;
    z-index: 1;
}

.ccon03_card_badge {
    top: 0.367454vw;
    left: 65.690377%;
    width: calc(var(--px) * 85);
    aspect-ratio: 85 / 39;
    z-index: 2;
}

.ccon03_card_line {
    margin-top: 0.839895vw;
    width: 100.000000%;
    border-top: 1px solid #090909;
    z-index: 2;
}

.ccon03_card_name_ko,
.ccon03_card_name_en,
.ccon03_empty {
    overflow: hidden;
    margin: 0;
    align-self: center;
    width: 100.000000%;
    font-family: var(--mf);
    color: #090909;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
    z-index: 2;
}

.ccon03_card_name_ko {
    margin-top: 0.734908vw;
    font-weight: 600;
    font-size: var(--fs-17);
    line-height: 1.353000;
    letter-spacing: 0;
    white-space: nowrap;
}

.ccon03_card_name_en {
    margin-top: 0.157480vw;
    font-weight: 400;
    font-size: var(--fs-15);
    line-height: 1.353000;
    letter-spacing: 0;
    white-space: nowrap;
}

.ccon03_empty {
    padding-top: 5.249344vw;
    padding-bottom: 5.249344vw;
    font-weight: 500;
    font-size: var(--fs-17);
    letter-spacing: 0;
    white-space: nowrap;
}

.ccon03_nav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.629921vw;
    margin-top: 2.986877vw;
    width: auto;
    transform: translateX(0.419948vw);
}

.ccon03_nav_btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 4.514436vw;
    height: 2.782152vw;
    padding: 0.000000vw;
    border: 0;
    border-radius: 1.391076vw;
    background: #090909;
    font-family: 'Suit', var(--mf);
    font-weight: 500;
    font-size: var(--fs-23);
    line-height: 0.671526;
    color: #ffffff;
    white-space: nowrap;
    cursor: pointer;
}

.ccon03_next {
    width: 4.566929vw;
}

.ccon03_nav_btn.is-disabled {
    opacity: 0.350000;
    cursor: default;
}

@media (max-width: 599px) {
    .ccon1 {
        background-position: center top;
        background-size: auto 100%;
        padding-top: 15vw;
        padding-bottom: 30.026247vw;
    }

    .ccon1_title_stage {
        margin-top: 41.994751vw;
        width: 54.015748%;
        display: flex;
        justify-content: center;
    }

    .ccon1_title {
        top: 0.472441vw;
        left: auto;
        width: 78%;
        aspect-ratio: 233 / 57;
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 2;
    }

    .ccon2_ticker_media {
        width: 360.314961vw;
    }

    .ccon2_ticker_track {
        width: 1080.944883vw;
        animation-duration: 36.000000s;
    }

    .ccon2_showcase {
        padding-top: 8.398950vw;
        padding-bottom: 8.398950vw;
        background-size: auto 100.000000%;
    }

    .ccon2_word_stack {
        width: 58.267717%;
    }

    .ccon2_poster_layer {
        position: relative;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1.784777vw;
        inset: auto;
        margin: 4.199475vw auto 0;
        width: 92%;
        pointer-events: auto;
    }

    .ccon2_poster {
        position: relative;
        top: auto;
        left: auto;
        width: 100.000000%;
    }

    .ccon2_poster_egg,
    .ccon2_poster_standard,
    .ccon2_poster_cheese,
    .ccon2_poster_patty {
        top: auto;
        left: auto;
    }

    .ccon03 {
        padding-top: 10.498688vw;
        padding-bottom: 12.598425vw;
    }

    .ccon03_layout {
        width: 100%;
    }

    .ccon03_title {
        font-size: 7.000000vw;
    }

    .ccon03_category_nav {
        /* flex-wrap: wrap; */
        gap: 2.624672vw 5.249344vw;
        margin-top: 4.199475vw;
        width: auto;
    }

    .ccon03_category_btn {
        padding-top: 1.837270vw;
        padding-bottom: 1.837270vw;
    }

    .ccon03_category_btn::before {
        top: 3.412073vw;
        width: 1.574803vw;
        padding-top: 1.574803vw;
    }

    .ccon03_category_btn:hover::before,
    .ccon03_category_btn.is-active::before {
        width: 10.498688vw;
        padding-top: 10.498688vw;
    }

    .ccon03_menu_area {
        margin-top: 0.000000vw;
    }

    .ccon03_menu_swiper {
        padding-top: 9.448819vw;
    }

    /* 슬라이드 1장일 때 centeredSlides 쏠림 보정 — wrapper 강제 가운데 정렬 */
    .ccon03_menu_swiper .swiper-wrapper:has(> .swiper-slide:only-child) {
        justify-content: center;
        transform: none !important;
    }

    .ccon03_slide_col {
        gap: 7.349081vw;
    }

    .ccon03_card_media {
        position: relative;
        margin-top: 1.574803vw;
        width: 78.215223%;
    }

    .ccon03_card_hover_circle {
        display: none !important;
    }

    .ccon03_card_line {
        margin-top: 2.624672vw;
    }

    /* 모바일에선 --px 가 initial 이라 PC calc(var(--px)*85) 무효 → % 로 복원 */
    .ccon03_card_badge {
        width: 35.564854%;
        aspect-ratio: 85 / 39;
    }

    .ccon03_card_name_ko {
        margin-top: 2.099738vw;
        white-space: nowrap;
    }

    .ccon03_card_name_en {
        margin-top: 0.524934vw;
        white-space: nowrap;
    }

    .ccon03_empty {
        padding-top: 12.598425vw;
        padding-bottom: 12.598425vw;
        white-space: nowrap;
    }

    .ccon03_pc_only {
        display: none !important;
    }

    .ccon03_mobile_only {
        display: block !important;
    }

    .ccon03_nav {
        gap: 2.099738vw;
        margin-top: 6.299213vw;
        width: 28.031496%;
    }

    .ccon03_nav_btn {
        width: 13.5vw;
        height: 8.5vw;
        padding: 0;
        border-radius: 4.25vw;
        font-size: var(--fs-23);
    }

    .ccon03_next {
        width: 13.5vw;
    }
}
