@media screen and (max-width:599px) {
  :root {
  }

  html,
  body {
    overflow-x: hidden;
  }

  section img {
    width: 100%;
  }

  .main,
  .con01,
  .con02,
  .con03,
  .con04,
  .con05,
  .con06,
  .con07,
  .con08,
  .con09,
  .con10,
  .con11,
  .con12,
  .con13,
  .con14,
  .con15,
  .con16,
  .con17,
  .con18,
  .con19,
  .con20,
  .con21,
  .con22,
  .con23,
  .con24,
  .con25,
  .con26,
  .con27,
  .con28,
  .con29,
  .con30,
  .con31 {
    box-sizing: border-box;
  }


  .main_title,
  .con01_title,
  .con02_title,
  .con03_title,
  .con03_benefit_title,
  .con04_left_title,
  .con04_right_title,
  .con06_title,
  .con07_title,
  .con08_title,
  .con09_title,
  .con10_title,
  .con11_title,
  .con12_title,
  .con13_title,
  .con14_title,
  .con15_title,
  .con17_title,
  .con18_title,
  .con19_title,
  .con20_title,
  .con21_title,
  .con22_title,
  .con23_title,
  .con24_title,
  .con25_title,
  .con26_title,
  .con27_title,
  .con28_title,
  .con29_title,
  .con30_title,
  .con31_title {
    text-shadow: 0.1vw 0 0 currentColor, -0.1vw 0 0 currentColor;
  }
  .main {
    height: auto;
    min-height: auto;
    padding: 28vw 5% 14vw;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden;
  }

  .main_video {
    right: 0;
    bottom: 0;
    height: 100%;
  }

  .main_inner {
    padding-top: 0;
  }

  .main_sub {
    font-size: 5.2vw;
    line-height: 1.25;
    text-align: center;
  }

  .main_title {
    margin-top: 2.8vw;
  }

  .main_titimg {
    width: 74vw;
    height: 13.6vw;
  }

  .main_titimg_track {
    row-gap: 3vw;
    animation: main-titimg-down-m 3s infinite;
  }

  @keyframes main-titimg-down-m {
    0% { transform: translateY(-33.2vw); }
    38% { transform: translateY(-33.2vw); }
    50% { transform: translateY(-16.6vw); }
    88% { transform: translateY(-16.6vw); }
    100% { transform: translateY(0); }
  }

  .main_glow {
    width: 34vw;
    left: 75%;
    top: -16vw;
  }

  .main_banner {
    width: auto;
    height: auto;
    min-height: 11vw;
    margin-top: 5vw;
    padding: 2.2vw 6vw;
    box-sizing: border-box;
    font-size: 4vw;
    line-height: 1.25;
    text-align: center;
  }

  .main_btns {
    width: 100%;
    flex-wrap: wrap;
    column-gap: 2vw;
    row-gap: 2vw;
  }

  .main_btns1 {
    margin-top: 7vw;
  }

  .main_btns2 {
    margin-top: 2vw;
  }

  .main_btn {
    width: 28vw;
  }

  .con01 {
    height: auto;
    min-height: 138vw;
    padding: 14vw 5% 61vw;
    justify-content: flex-start;
    align-items: center;
    background-position: center top, center top;
    background-size: auto 100%, cover;
  }

  .con01_deco_l,
  .con01_deco_r {
    display: none;
  }

  .con01_person {
    width: 52vw;
    left: 2%;
    top: auto;
    bottom: -26vw;
    opacity: 1;
    pointer-events: none;
  }

  .con01_pos {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 56vw;
    right: 3%;
    top: auto;
    bottom: 2vw;
    pointer-events: none;
  }

  .con01_pos01 {
    width: 100%;
  }

  .con01_pos02 {
    display: flex;
    justify-content: center;
    align-items: center;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
  }

  .con01_pos02 img {
    width: 82%;
  }

  .con01_center {
    width: 100%;
    margin-top: 0;
  }

  .con01_stars {
    width: 40vw;
  }

  .con01_title {
    width: 60vw;
    margin-top: 6vw;
  }

  .con01_spark {
    width: 28vw;
    left: 72%;
    top: -12vw;
  }

  .con01_line {
    width: 78%;
    margin-top: 7vw;
  }

  .con01_record {
    width: 92vw;
    margin-top: 7vw;
  }

  .con01_caption {
    margin-top: 4vw;
    font-size: 3.3vw;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
    word-break: keep-all;
  }

  .con02 {
    padding: 16vw 5% 2vw;
    justify-content: flex-start;
    align-items: center;
  }

  .con02_chef {
    display: flex;
    width: 50vw;
    left: 51.4%;
    top: 35.7vw;
  }

  .con02_inner {
    width: 100%;
  }

  .con02_title {
    max-width: 90vw;
    font-size: 7vw;
    line-height: 1.28;
    word-break: keep-all;
  }

  .con02_sub {
    max-width: 90vw;
    margin-top: 6vw;
    font-size: 3.8vw;
    line-height: 1.6;
    margin-left: -24vw;
    word-break: keep-all;
  }

  .con02_video {
    width: 97vw;
    margin-top: 6vw;
    border-radius: 3vw;
    aspect-ratio: 943 / 532;
  }

  .con03 {
    height: auto;
    min-height: 168vw;
    padding: 16vw 5% 14vw;
    justify-content: flex-start;
    align-items: center;
    background-size: auto 100%;
  }

  .con03_person {
    display: flex;
    position: relative;
    order: 3;
    top: auto;
    left: auto;
    width: 53vw;
    margin-top: 6vw;
    margin-bottom: -56vw;
  }

  .con03_inner {
    width: 100%;
    padding-top: 0;
  }

  .con03_title {
    width: 88vw;
  }

  .con03_standard {
    margin-top: 2vw;
    font-size: 3.3vw;
    line-height: 1.2;
    letter-spacing: 0;
  }

  .con03_cards {
    width: 100%;
    row-gap: 2.2vw;
    margin-top: 6vw;
  }

  .con03_card_cell {
    width: calc(100% / 2);
  }

  .con03_card {
    width: 42.5vw;
    height: 15vw;
  }

  .con03_card_txt {
    width: 40vw;
  }

  .con03_benefit {
    width: 92vw;
    margin-top: 7vw;
  }

  .con03_benefit_title {
    width: 92vw;
  }

  .con03_benefit_over_in {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 76vw;
    aspect-ratio: 831 / 67;
  }

  .con03_spark {
    width: 22vw;
    left: 90%;
    top: 25%;
    transform: translate(-50%, -50%);
  }

  .con03_desc {
    width: 76vw;
    margin-top: 5vw;
  }

  .con03_cta {
    width: 66vw;
    margin-top: 5vw;
  }

  .con04 {
    height: auto;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden;
  }

  .con04_left,
  .con04_right {
    width: 100%;
    height: auto;
    flex-shrink: 1;
    box-sizing: border-box;
  }

  .con04_left {
    padding: 15vw 5% 22vw;
    background-size: cover;
  }

  .con04_left_content {
    width: 100%;
    padding-top: 0;
  }

  .con04_left_title {
    font-size: 6.4vw;
    line-height: 1.18;
    letter-spacing: 0;
    white-space: normal;
  }

  .con04_left_title_accent,
  .con04_left_title_large {
    font-size: 8.2vw;
  }

  .con04_sub_pill {
    width: 88vw;
    margin-top: 5vw;
  }

  .con04_sales_card,
  .con04_recovery_card {
    width: 86vw;
    height: 27vw;
    margin-top: 5vw;
  }

  .con04_sales_card {
    padding-top: 5vw;
  }

  .con04_sales_label {
    font-size: 4.2vw;
    letter-spacing: 0;
  }

  .con04_sales_number {
    font-size: 10vw;
  }

  .con04_sales_unit {
    font-size: 5.8vw;
  }

  .con04_recovery_text {
    width: 36vw;
  }

  .con04_stamp {
    width: 25vw;
    left: 5%;
    top: 32vw;
    bottom: 8vw;
  }

  .con04_person {
    width: 31vw;
    left: auto;
    right: 0;
    bottom: 0;
  }

  .con04_right {
    padding: 14vw 0% 0vw;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }

  .con04_right_content {
    width: 100%;
    margin-left: 0;
    padding-top: 0;
    align-items: center;
  }

  .con04_question {
    width: auto;
    max-width: 90vw;
    font-size: 4.8vw;
    line-height: 1.25;
    letter-spacing: 0;
    text-align: center;
  }

  .con04_right_title {
    margin-top: 3vw;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
  }

  .con04_proof {
    width: auto;
    max-width: 90vw;
    margin-top: 5vw;
    font-size: 3.8vw;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
  }

  .con04_cost_card,
  .con04_period_card {
    width: 76vw;
    height: 28vw;
    margin-top: 5vw;
    padding-top: 4.5vw;
    border-radius: 3vw;
  }

  .con04_period_card {
    margin-top: 3vw;
  }

  .con04_card_label {
    font-size: 4.8vw;
    line-height: 1.2;
    letter-spacing: 0;
  }

  .con04_card_num {
    font-size: 11vw;
  }

  .con04_card_unit {
    font-size: 5vw;
  }

  .con04_store {
    position: relative;
    left: auto;
    top: auto;
    width: 95vw;
    margin-top: -7vw;
    align-self: flex-end;
    margin-bottom: -9vw;
  }

  .con05 {
    padding: 15vw 5% 16vw;
  }

  .con05_sub {
    font-size: 4vw;
    line-height: 1.45;
    word-break: keep-all;
  }

  .con05_tt {
    margin-top: 2.5vw;
    font-size: 7vw;
    line-height: 1.25;
    word-break: keep-all;
  }

  .con05_tabs {
    width: 100%;
    column-gap: 2vw;
    margin-top: 6vw;
  }

  .con05_tab {
    width: 29vw;
    height: 9vw;
  }

  .con05_tab_label {
    width: 22vw;
  }

  .con05_tab_02 .con05_tab_label {
    width: 17vw;
  }

  .con05_tab_03 .con05_tab_label {
    width: 18vw;
  }

  .con05_panel {
    width: 92vw;
    height: auto;
    min-height: 92vw;
    margin-top: 6vw;
    padding: 8vw 4% 9vw;
    border-radius: 5vw;
    box-sizing: border-box;
  }

  .con05_graph {
    width: 84vw;
    margin-top: 0;
    aspect-ratio: 525 / 438;
  }

  .con05_graph > img {
    width: 100%;
  }

  .con05_line {
    width: 79%;
    height: auto;
    left: 6.5%;
    pointer-events: none;
  }

  .con05_line > img {
    height: auto;
    object-fit: contain;
  }

  .con05_line_high {
    top: 18vw;
  }

  .con05_line_low {
    top: 51vw;
  }

  .con05_ov04 {
    width: 40vw;
    left: 16%;
    top: 12vw;
  }

  .con05_ov05 {
    width: 23vw;
    left: 69%;
    top: 19vw;
  }

  .con05_ov06 {
    width: 20vw;
    left: 76%;
    top: 53vw;
  }

  .con06 {
    height: auto;
    padding: 16vw 5% 14vw;
    justify-content: flex-start;
    align-items: center;
  }

  .con06_person {
    display: none;
  }

  .con06_head {
    width: 100%;
  }

  .con06_eyebrow {
    max-width: 88vw;
    font-size: 3.7vw;
    line-height: 1.35;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con06_title {
    margin-top: 3vw;
    font-size: 9vw;
    line-height: 1.15;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
  }

  .con06_panel {
    align-self: center;
    width: 92vw;
    height: auto;
    margin-top: 7vw;
    margin-left: 0;
    padding: 6vw 4vw;
    border-radius: 5vw;
  }

  .con06_support_row {
    width: 100%;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    column-gap: 3vw;
    row-gap: 4vw;
  }

  .con06_support_row_01,
  .con06_support_row_02 {
    width: 100%;
    margin-top: 0;
    margin-left: 0;
  }

  .con06_support_row_02 {
    margin-top: 4vw;
  }

  .con06_support_item {
    width: 24vw;
  }

  .con06_bottom {
    max-width: 88vw;
    margin-top: 6vw;
    font-size: 4.2vw;
    line-height: 1.45;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con06_note {
    max-width: 88vw;
    margin-top: 2vw;
    font-size: 3.3vw;
    line-height: 1.35;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
  }

  .con07 {
    height: auto;
    padding: 14vw 5% 16vw;
    justify-content: flex-start;
    align-items: center;
    background-size: auto 100%;
    background-position: center top;
  }

  .con07_head {
    width: 100%;
    margin-top: 0;
  }

  .con07_title {
    font-size: 9vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
  }

  .con07_sub {
    max-width: 86vw;
    margin-top: 3vw;
    font-size: 4.5vw;
    line-height: 1.45;
    letter-spacing: 0;
    text-align: center;
    word-break: keep-all;
  }

  .con07_char {
    display: flex;
    position: relative;
    top: auto;
    left: auto;
    width: 40vw;
  }

  .con07_panel {
    align-self: center;
    width: 92vw;
    height: auto;
    margin-top: 0;
    margin-left: 0;
    padding: 5vw 0 6vw;
    border-radius: 5vw;
  }

  .con07_tabs {
    width: 86vw;
    flex-wrap: wrap;
    column-gap: 4vw;
    row-gap: 2vw;
    margin-top: 0;
  }

  .con07_tab {
    margin-left: 0;
    padding-bottom: 1vw;
    border-bottom: 1vw solid transparent;
    font-size: 3.5vw;
    line-height: 1.15;
    letter-spacing: 0;
  }

  .con07_tab.is-active {
    border-bottom: 1vw solid #573627;
  }

  .con07_divider {
    width: 86vw;
    margin-top: 3vw;
  }

  .con07_swiper {
    width: 76vw;
    margin-top: 5vw;
    overflow: hidden;
  }

  .con07_card {
    width: 76vw;
  }

  .con07_card_box {
    width: 76vw;
    height: 52.7vw;
    border-radius: 4vw;
  }

  .con07_card_name {
    margin-top: 3vw;
    font-size: 4.3vw;
    line-height: 1.2;
    letter-spacing: 0;
    white-space: normal;
  }

  .con07_card_desc {
    margin-top: 1.4vw;
    font-size: 3.3vw;
    line-height: 1.4;
    letter-spacing: 0;
    white-space: normal;
    width: 88%;
  }

  .con07_arrow_l,
  .con07_arrow_r {
    width: 9vw;
    top: 76vw;
  }

  .con07_arrow_l {
    left: 1%;
  }

  .con07_arrow_r {
    left: auto;
    right: 1%;
  }

  .con07_btns {
    width: 86vw;
    margin-top: 5vw;
    column-gap: 2vw;
  }

  .con07_btn {
    width: 42vw;
  }

  .con07_btn_complex {
    margin-left: 0;
  }

  .con07_stats {
    width: 92vw;
    margin-top: 5vw;
    flex-direction: column;
    row-gap: 3vw;
  }

  .con07_stat_box {
    width: 100%;
    height: 31vw;
    border-radius: 4vw;
  }

  .con07_stat_value_l {
    width: 38vw;
    row-gap: 3.3vw;
  }

  .con07_stat_value_r {
    width: 31vw;
    row-gap: 3.8vw;
  }

  .con07_stat_value_img.con07_stat_value_l_top {
    width: 97.2222%;
  }

  .con07_stat_value_img.con07_stat_value_l_num,
  .con07_stat_value_img.con07_stat_value_r_top {
    width: 100%;
  }

  .con07_stat_value_img.con07_stat_value_r_num {
    width: 50.2463%;
  }

  .con07_modal {
    z-index: 99999;
  }

  .con07_modal_box {
    width: 90vw;
    max-width: 90vw;
  }

  .con07_modal[data-modal="office"] .con07_modal_box {
    width: 90vw;
  }

  .con07_modal_close {
    top: -10vw;
    width: 8vw;
    height: 8vw;
  }

  .con08 {
    padding: 15vw 5% 16vw;
    overflow: hidden;
  }

  .con08_person {
    width: 26vw;
    left: -4%;
    top: 5vw;
    opacity: 0.82;
    pointer-events: none;
  }

  .con08_head {
    width: 100%;
  }

  .con08_eyebrow {
    max-width: 70vw;
    font-size: 3.7vw;
    line-height: 1.35;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con08_title {
    margin-top: 2.5vw;
    font-size: 7vw;
    line-height: 1.15;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
  }

  .con08_sub {
    max-width: 74vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 1.45;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con08_total {
    width: 90vw;
    height: 22vw;
    margin-top: 6vw;
    padding-top: 4vw;
  }

  .con08_total_food_l {
    width: 14vw;
    top: 2vw;
    left: 0;
  }

  .con08_total_food_r {
    width: 14vw;
    top: 2vw;
    right: 0;
  }

  .con08_total_label {
    width: 42vw;
  }

  .con08_total_value {
    margin-top: 2.2vw;
    font-size: 8vw;
    letter-spacing: 0;
  }

  .con08_total_unit {
    font-size: 4.4vw;
  }

  .con08_swiper {
    width: 100%;
    margin-top: 7vw;
    overflow: visible;
  }

  .con08_card {
    width: 72vw;
    height: auto;
  }

  .con08_card_thumb {
    height: 47vw;
  }

  .con08_card_thumb img {
    height: 100%;
    object-fit: cover;
  }

  .con08_card_badge {
    height: 9.6vw;
    min-width: 36vw;
    margin-top: -5vw;
    padding-left: 4vw;
    padding-right: 4vw;
    font-size: 3.6vw;
    letter-spacing: 0;
  }

  .con08_card_body {
    height: 34vw;
    margin-top: -5vw;
    padding-top: 9vw;
  }

  .con08_card_label {
    font-size: 4vw;
    letter-spacing: 0;
  }

  .con08_card_value {
    margin-top: 2vw;
    font-size: 7vw;
    letter-spacing: 0;
  }

  .con08_controls {
    margin-top: 6vw;
    gap: 3vw;
  }

  .con08_arrow {
    width: 9vw;
  }

  .con09,
  .con10,
  .con11 {
    padding: 15vw 5% 4vw;
    overflow: hidden;
  }

  .con09_head,
  .con10_head,
  .con11_head {
    width: 100%;
  }

  .con09_title,
  .con10_title,
  .con11_title {
    max-width: 90vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con09_title_line_01,
  .con10_title_line_01 {
    font-size: 5.6vw;
  }

  .con09_title_line_02,
  .con10_title_line_02,
  .con11_title {
    font-size: 7vw;
  }

  .con09_sub,
  .con10_sub,
  .con11_sub {
    max-width: 86vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con09_media_view,
  .con10_slider,
  .con11_slider {
    width: 100%;
    margin-top: 7vw;
    overflow: visible;
  }

  .con09_swiper,
  .con10_swiper,
  .con11_swiper {
    width: 100%;
    overflow: visible;
  }

  /* 모바일: 슬라이드 미사용 → 카드 세로(flex-column) 나열 */
  .con09_swiper .swiper-wrapper,
  .con10_swiper .swiper-wrapper,
  .con11_swiper .swiper-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    row-gap: 2vw;
    transform: none;
  }

  .con09_card,
  .con10_card,
  .con11_card {
    width: 100vw;
    box-sizing: border-box;
  }

  .con09_caption,
  .con10_caption,
  .con11_caption {
    height: auto;
    min-height: 14vw;
    padding: 3vw 4vw;
    box-sizing: border-box;
  }

  .con09_caption_tt,
  .con10_caption_tt,
  .con11_caption_tt {
    font-size: 3.5vw;
    line-height: 1.35;
    letter-spacing: 0;
    word-break: keep-all;
  }

  .con09_arrow,
  .con10_arrow,
  .con11_arrow {
    display: none;
  }

  .con09_youtube_btn {
    width: 58vw;
    margin-top: 4vw;
  }

  .con12 {
    padding: 15vw 5% 16vw;
    overflow: hidden;
  }

  .con12_head {
    width: 100%;
  }

  .con12_eyebrow {
    max-width: 88vw;
    font-size: 3.7vw;
    line-height: 1.35;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con12_title {
    max-width: 90vw;
    margin-top: 3vw;
    font-size: 7vw;
    line-height: 1.2;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con12_sub {
    max-width: 86vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con12_body {
    width: 100%;
    flex-direction: column;
    align-items: center;
    margin-top: 7vw;
    row-gap: 0;
  }

  .con12_card,
  .con12_card_bg {
    width: 72vw;
  }

  .con12_card_right {
    margin-left: 0;
    margin-top: -9vw;
  }

  .con12_card_title {
    width: 28.8%;
    top: 23.4%;
    left: 35.8%;
  }

  .con12_card_desc {
    width: 67.2%;
    top: 39.5%;
    left: 16.5%;
  }

  .con12_person {
    display: none;
  }

  .con13 {
    padding: 27vw 5% 16vw;
  }

  .con13_marquee {
    width: 220vw;
    height: 12vw;
    left: -55vw;
    top: 10vw;
  }

  .con13_marquee_track {
    width: 220vw;
  }

  .con13_title {
    max-width: 90vw;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }
  .con13_title::before {
    display: none;
  }

  .con13_title_line_01 {
    font-size: 5.6vw;
    line-height: 1.25;
  }

  .con13_title_line_02 {
    font-size: 7vw;
    line-height: 1.15;
  }

  .con13_stage {
    width: 90vw;
    flex-direction: column;
    align-items: center;
    gap: 6vw;
    margin-top: 8vw;
  }

  .con13_panel {
    width: 90vw;
  }

  .con13_panel_bg {
    border-radius: 5vw;
  }

  .con13_left_copy {
    width: 57.1%;
    left: 11.7%;
    top: 12.3%;
  }

  .con13_left_food {
    width: 84.6%;
    left: -14.1%;
    top: 44.9%;
  }

  .con13_smoke {
    width: 66.7%;
    left: 9.4%;
    top: 22.4%;
  }

  .con13_right_food {
    width: 90.2%;
    left: 24.9%;
    top: 9.7%;
  }

  .con13_hand {
    width: 36.2%;
    left: 78.9%;
    top: -25%;
  }

  .con13_right_copy {
    width: 70.6%;
    left: 19.4%;
    top: 74.6%;
  }

  .con13_turn_badge {
    width: 52vw;
    left: 50%;
    top: 68vw;
    transform: translateX(-50%);
    z-index: 5;
  }

  .con14 {
    height: auto;
    padding: 14vw 0% 0vw;
    justify-content: flex-start;
    align-items: center;
    background-position: center;
  }

  .con14_photo_col_r {
    display: none;
  }

  .con14_photo_col_l {
    position: relative;
    left: auto;
    right: auto;
    top: auto;
    width: 100%;
    height: auto;
    order: 1;
    margin-top: 7vw;
  }

  .con14_photo_col_l .swiper-slide {
    width: auto !important;
  }

  .con14_photo {
    width: 52vw;
  }

  .con14_head {
    width: 100%;
    padding-top: 0;
    order: 0;
  }

  .con14_eyebrow {
    max-width: 88vw;
    font-size: 3.7vw;
    line-height: 1.35;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con14_title {
    margin-top: 3vw;
    font-size: 7vw;
    line-height: 1.15;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
  }

  .con14_sub {
    max-width: 86vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 1.55;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con14_center {
    width: 87vw;
    margin-top: 7vw;
    order: 2;
    margin-bottom: -24vw;
  }

  .con14_center_photo {
    width: 89.8%;
    aspect-ratio: 661 / 433;
  }

  .con14_center_ring > img {
    opacity: 0;
  }

  .con15 {
    height: auto;
    padding: 15vw 5% 16vw;
    background-size: cover;
    background-position: center;
  }

  .con15_deco {
    display: none;
  }

  .con15_head {
    width: 100%;
    padding-top: 0;
  }

  .con15_eyebrow {
    max-width: 88vw;
    font-size: 3.7vw;
    line-height: 1.35;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con15_title {
    max-width: 90vw;
    margin-top: 3vw;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con15_steps {
    width: 92vw;
    height: auto;
    margin-top: 7vw;
    padding: 6vw 4vw;
    justify-content: center;
    box-sizing: border-box;
  }

  .con15_step_list {
    width: 100%;
    flex-direction: column;
    align-items: center;
    gap: 6vw;
    margin-top: 0;
    margin-left: 0;
  }

  .con15_step_card {
    width: 76vw;
    align-items: center;
  }

  .con15_step_label {
    align-self: flex-start;
    margin-left: 0;
  }

  .con15_step_label_01 {
    width: 20vw;
  }

  .con15_step_label_02,
  .con15_step_label_03 {
    width: 20.5vw;
  }

  .con15_step_photo {
    width: 100%;
    margin-top: 2.2vw;
  }

  .con15_step_caption {
    margin-top: 2.2vw;
  }

  .con15_step_caption_01,
  .con15_step_caption_02 {
    width: 10vw;
  }

  .con15_step_caption_03 {
    width: 30vw;
  }

  .con16 {
    height: auto;
    padding: 15vw 5% 16vw;
  }

  .con16_star_layer {
    width: 58vw;
    left: -12%;
    top: 2vw;
    opacity: 0.75;
    pointer-events: none;
  }

  .con16_photo_col {
    display: none;
  }

  .con16_head {
    width: 100%;
    padding-top: 0;
  }

  .con16_title_img {
    width: 82vw;
  }

  /* 82vw * (16/474) — 데스크탑 gap 비율 유지 */
  .con16_title_bot_img {
    margin-top: 2.8vw;
  }

  .con16_sub {
    max-width: 86vw;
    margin-top: 4vw;
    font-size: 3.5vw;
    line-height: 1.55;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con16_cert_stage {
    width: 88vw;
    margin-top: 6vw;
  }

  .con16_photo_sd {
    width: 115%;
    margin-top: 8vw;
    overflow: hidden;
  }

  .con16_photo_sd .swiper-slide {
    width: 60vw;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .con16_cert_back {
    top: 3vw;
  }

  .con16_trophy {
    display: flex;
    left: auto;
    right: 0;
    top: auto;
    bottom: 4vw;
    width: 38vw;
    z-index: 3;
  }

  .con16_flare {
    width: 65%;
    left: 37.1%;
    top: -10vw;
  }

  .con17 {
    height: auto;
    min-height: 0;
    padding: 15vw 5% 16vw;
    background-size: cover;
    background-position: center top;
  }

  .con17_head {
    width: 100%;
  }

  .con17_eyebrow {
    max-width: 88vw;
    font-size: 3.7vw;
    line-height: 1.35;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con17_title {
    max-width: 90vw;
    margin-top: 3vw;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con17_cards {
    width: 100%;
    flex-direction: column;
    align-items: center;
    gap: 5vw;
    margin-top: 7vw;
    margin-left: 0;
  }

  .con17_card {
    width: 86vw;
  }

  .con17_stamp_img {
    width: 40.9%;
    top: 54.4%;
  }

  .con18 {
    height: auto;
    min-height: 0;
    padding: 15vw 5% 92vw;
    background-size: cover;
    background-position: center top;
    overflow: hidden;
  }

  .con18_head {
    width: 100%;
    z-index: 2;
  }

  .con18_title {
    max-width: 90vw;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con18_desc {
    max-width: 86vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 1.55;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con18_cards {
    width: 92vw;
    align-self: center;
    align-items: center;
    gap: 3vw;
    margin-top: 7vw;
    margin-left: 0;
    z-index: 2;
  }

  .con18_card_img {
    width: 100%;
  }

  .con18_person_img {
    width: 56vw;
    left: auto;
    right: -7%;
    top: auto;
    bottom: 0;
    z-index: 1;
  }

  .con18_phone {
    width: 57vw;
    left: 4%;
    top: auto;
    bottom: -31vw;
    z-index: 2;
  }

  .con18_phone_screen {
    width: 99.2%;
    top: 0;
    border-radius: 12vw;
  }

  .con18_cta_img {
    width: 50vw;
    left: 39%;
    top: auto;
    bottom: 10vw;
    z-index: 3;
  }

  .con18_cursor_img {
    width: 7vw;
    left: 82%;
    top: auto;
    bottom: 5vw;
    z-index: 4;
  }

  .con19 {
    padding: 15vw 5% 16vw;
  }

  .con19_head {
    width: 100%;
  }

  .con19_eyebrow {
    max-width: 88vw;
    font-size: 3.7vw;
    line-height: 1.35;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con19_title {
    max-width: 90vw;
    margin-top: 3vw;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con19_desc {
    max-width: 88vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 1.55;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con19_visual {
    width: 100%;
    height: auto;
    flex-direction: column;
    align-items: center;
    margin-top: 7vw;
  }

  .con19_certs {
    width: 90vw;
    height: 62vw;
  }

  .con19_cert_img {
    aspect-ratio: 276 / 377;
  }

  .con19_cert_left {
    left: 0;
    top: 2.6vw;
    width: 39vw;
    transform: none;
    z-index: 1;
  }

  .con19_cert_right {
    left: auto;
    right: 0;
    top: 2.6vw;
    width: 39vw;
    transform: none;
    z-index: 1;
  }

  .con19_cert_center {
    left: 50%;
    top: 0;
    width: 43vw;
    transform: translateX(-50%);
    z-index: 3;
  }

  .con19_cert_hide {
    left: 26%;
    right: auto;
    top: 0;
    width: 43vw;
    transform: none;
    z-index: 1;
    opacity: 0;
  }

  .con19_certs.is-rolling .con19_cert_img {
    left: 26%;
    right: auto;
    top: 0;
    width: 43vw;
    transform: none;
    transform-origin: center center;
    animation: con19_cert_orbit_m 8s infinite ease-in-out;
    will-change: transform, opacity;
  }

  .con19_certs.is-rolling .con19_cert_left {
    animation-delay: -6s;
  }

  .con19_certs.is-rolling .con19_cert_hide {
    animation-delay: -4s;
  }

  .con19_certs.is-rolling .con19_cert_right {
    animation-delay: -2s;
  }

  .con19_certs.is-rolling .con19_cert_center {
    animation-delay: 0s;
  }

  @keyframes con19_cert_orbit_m {
    0%,
    16.7% {
      z-index: 3;
      opacity: 1;
      transform: translate3d(0, 0, 0);
    }

    25%,
    41.7% {
      z-index: 1;
      opacity: 1;
      transform: translate3d(24vw, 2.6vw, 0) scale(0.94);
    }

    50%,
    66.7% {
      z-index: 1;
      opacity: 0;
      transform: translate3d(0, 2.6vw, 0) scale(0.94);
    }

    75%,
    91.7% {
      z-index: 1;
      opacity: 1;
      transform: translate3d(-24vw, 2.6vw, 0) scale(0.94);
    }

    100% {
      z-index: 3;
      opacity: 1;
      transform: translate3d(0, 0, 0);
    }
  }

  .con19_awards {
    width: 86vw;
    margin-top: 5vw;
    margin-left: 0;
  }

  .con19_awards_top {
    width: 86vw;
  }

  .con19_awards_bottom {
    width: 72vw;
    align-self: center;
    margin-left: 0;
    transform: translateY(-2vw);
  }

  .con19_history {
    width: 92vw;
    height: auto;
    margin-top: 6vw;
    padding: 5vw 4vw;
  }

  .con19_history_inner {
    width: 100%;
    flex-direction: column;
    gap: 4vw;
    margin-top: 0;
    margin-left: 0;
  }

  .con19_history_col,
  .con19_history_col_01,
  .con19_history_col_02,
  .con19_history_col_03 {
    width: 100%;
    gap: 3vw;
    margin-left: 0;
  }

  .con19_history_years {
    min-width: 11vw;
    font-size: 3.4vw;
    line-height: 1.65;
  }

  .con19_history_text {
    flex: 1;
    font-size: 3.3vw;
    line-height: 1.65;
    white-space: normal;
    word-break: keep-all;
  }

  .con20 {
    height: auto;
    min-height: 190vw;
    padding: 15vw 5% 63vw;
    background-size: cover;
    background-position: center top;
    overflow: hidden;
  }

  .con20_head {
    width: 100%;
    z-index: 3;
  }

  .con20_eyebrow {
    max-width: 88vw;
    font-size: 3.7vw;
    line-height: 1.35;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con20_title {
    max-width: 90vw;
    margin-top: 3vw;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con20_dark_bg {
    width: 180vw;
    left: -40vw;
    top: auto;
    bottom: 0;
    z-index: 0;
  }

  .con20_bowl_img {
    width: 82vw;
    left: 9%;
    top: auto;
    bottom: -8vw;
    z-index: 1;
  }

  .con20_smoke {
    width: 105vw;
    left: -1%;
    top: auto;
    bottom: -16vw;
    opacity: 0.65;
    z-index: 1;
  }

  .con20_side_row {
    width: 100%;
    flex-direction: column;
    align-self: center;
    align-items: center;
    gap: 4vw;
    margin-top: 8vw;
    padding-left: 0;
    padding-right: 0;
    z-index: 3;
  }

  .con20_side,
  .con20_side_left,
  .con20_side_right {
    width: 86vw;
    align-items: center;
    padding: 4vw;
    background-color: rgba(35, 25, 22, 0.78);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 4vw;
    box-sizing: border-box;
  }

  .con20_side_title_left {
    width: 32vw;
  }

  /* m = 각 줄 가운데정렬 버전. _2m(강조 없음) ↔ _1m(골드 강조) 교차 */
  .con20_side_title_left .con20_base {
    content: url('/images/con20_02_2m.png');
  }

  .con20_side_title_left .con20_blink {
    content: url('/images/con20_02_1m.png');
  }

  .con20_side_title_right {
    width: 35vw;
  }

  .con20_side_title_right .con20_base {
    content: url('/images/con20_03_2m.png');
  }

  .con20_side_title_right .con20_blink {
    content: url('/images/con20_03_1m.png');
  }

  .con20_side_desc,
  .con20_side_desc_left,
  .con20_side_desc_right {
    width: 100%;
    margin-top: 3vw;
    font-size: 3.3vw;
    line-height: 1.55;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con21 {
    padding: 15vw 0% 16vw;
    align-items: center;
    background: linear-gradient(to bottom, #ffffff 0, #ffffff 53%, #553631 53%, #553631 100%);
  }

  .con21_body {
    width: 100%;
    flex-direction: column;
    align-items: center;
    z-index: 2;
  }

  .con21_left {
    width: 100%;
    margin-top: 0;
    margin-left: 0;
    align-items: center;
  }

  .con21_title {
    max-width: 90vw;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con21_desc {
    max-width: 86vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 1.55;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con21_phone {
    display: none;
  }

  .con21_cards {
    width: 100vw;
    align-self: center;
    margin-top: 7vw;
    margin-left: 0;
    z-index: 2;
  }

  .con21_cards .swiper-slide {
    width: 50vw !important;
  }

  .con21_card {
    width: 50vw;
    border-radius: 3vw;
  }

  .con21_card_video {
    aspect-ratio: 296 / 527;
  }

  /* 모바일: 폰 숨김 → 카드에서 직접 파사드 재생(클릭+재생버튼) */
  .con21_card_facade {
    pointer-events: auto;
  }

  .con21_card_facade .video-facade_play {
    display: flex;
  }

  /* 모바일 공통: 모든 유튜브 파사드 재생버튼 크기 (데스크탑 calc(var(--px)*N) 은 모바일에서 너무 작음) */
  .video-facade_play {
    width: 16vw;
    height: 11.4vw;
    border-radius: 2.8vw;
  }

  .video-facade_play::after {
    border-width: 2.5vw 0 2.5vw 4.1vw;
    margin-left: 0.9vw;
  }

  .con21_nav {
    width: 10vw;
    height: 10vw;
    top: auto;
    bottom: 60vw;
    z-index: 4;
    background-color: #ffffff;
  }

  .con21_nav_prev {
    left: 14%;
  }

  .con21_nav_next {
    left: auto;
    right: 14%;
  }

  .con21_nav_next img {
    filter: none;
  }

  .con21_success {
    width: 100%;
    height: 10vw;
    left: 0;
    top: auto;
    bottom: 4vw;
    opacity: 0.55;
  }

  .con21_success_track {
    width: 212vw;
  }

  .con21_success_item {
    width: 202vw;
  }

  .con21_success .flow_sd_move_item01 {
    margin-right: 10vw;
  }

  .con21_success_img {
    width: 101vw;
  }

  .con21_sundae {
    width: 24vw;
    left: auto;
    right: -2%;
    top: 37vw;
    z-index: 1;
  }

  .con22 {
    padding: 15vw 3% 13vw;
    align-items: center;
  }

  .con22_line {
    top: 0;
    bottom: 0;
    height: auto;
  }

  .con22_line_01 {
    left: 2%;
  }

  .con22_line_02 {
    left: 3.2%;
  }

  .con22_line_03 {
    left: auto;
    right: 3.2%;
  }

  .con22_line_04 {
    left: auto;
    right: 2%;
  }

  .con22_title {
    min-height: 0;
    max-width: 90vw;
    letter-spacing: 0;
    white-space: normal;
    word-break: keep-all;
  }

  .con22_title_top {
    font-size: 5.2vw;
    line-height: 1.2;
  }

  .con22_title_bottom {
    margin-top: 1.8vw;
    font-size: 7vw;
    line-height: 1.15;
    white-space: normal;
  }

  .con22_compare {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    align-self: center;
    width: 100vw;
    margin-top: 7vw;
    margin-left: 0;
    box-sizing: border-box;
  }

  .con22_left_table {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 88vw;
    margin-top: 5.8vw;
  }

  .con22_right_table {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 88vw;
    margin-left: 0;
    margin-top: 2vw;
  }

  .con22_labels {
    display: none;
  }

  .con22_person {
    display: flex;
    position: relative;
    order: 4;
    bottom: auto;
    left: auto;
    width: 52vw;
    margin-top: 4vw;
    margin-bottom: -22vw;
  }

  .con23 {
    padding: 15vw 5% 28vw;
    background-size: cover;
    background-position: center bottom;
  }

  .con23_person {
    left: -1.9%;
    bottom: 0.1vw;
    width: 32vw;
    aspect-ratio: 450 / 675;
    z-index: 6;
  }

  .con23_head {
    width: 100%;
  }

  .con23_title {
    min-height: 0;
    max-width: 90vw;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    white-space: normal;
    word-break: keep-all;
  }

  .con23_sub {
    max-width: 86vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 1.55;
    letter-spacing: 0;
    white-space: normal;
    word-break: keep-all;
  }

  .con23_panel {
    width: 92vw;
    height: auto;
    margin-top: 7vw;
    padding: 10vw 0 7vw;
    border-radius: 15vw;
    overflow: hidden;
  }

  .con23_panel_title {
    max-width: 78vw;
    margin-top: 0;
    font-size: 4.8vw;
    line-height: 1.35;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con23_swiper {
    width: 100%;
    align-self: center;
    margin-top: 5vw;
    margin-left: 0;
  }

  .con23_swiper .swiper-slide {
    width: 58vw !important;
  }

  .con23_card {
    width: 58vw;
  }

  .con23_card_badge {
    width: 20vw;
    height: 10vw;
    font-size: 4vw;
    letter-spacing: 0;
  }

  .con23_card_box {
    height: 29vw;
    margin-top: -5vw;
    padding-top: 9vw;
  }

  .con23_card_shop {
    font-size: 3.7vw;
    letter-spacing: 0;
  }

  .con23_card_value {
    margin-top: 2vw;
    letter-spacing: 0;
  }

  .con23_card_num {
    font-size: 8vw;
  }

  .con23_card_unit {
    margin-left: 1vw;
    font-size: 5vw;
  }

  .con23_bowl {
    width: 54vw;
    left: auto;
    right: -14%;
    top: 4vw;
    z-index: 6;
  }

  .con23_smoke {
    width: 104vw;
    left: -20%;
    top: -52vw;
    z-index: 6;
  }

  .con24 {
    margin-top: -42vw;
    padding: 59vw 5% 16vw;
    background-image: linear-gradient(to bottom, transparent 0, transparent 42vw, #ffffff 42vw, #ffffff 100%);
  }

  .con24_head {
    width: 100%;
  }

  .con24_title {
    min-height: 0;
    max-width: 90vw;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    word-break: keep-all;
  }

  .con24_sub {
    max-width: 88vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 1.55;
    letter-spacing: 0;
    text-align: center;
    word-break: keep-all;
  }

  .con24_title span,
  .con24_sub span,
  .con24_story_title span,
  .con24_story_body span {
    white-space: normal;
  }

  .con24_grid {
    width: 92vw;
    align-self: center;
    align-items: center;
    margin-top: 8vw;
    margin-left: 0;
  }

  .con24_row {
    width: 100%;
    flex-direction: column;
    align-items: center;
  }

  .con24_row + .con24_row {
    margin-top: 8vw;
  }

  .con24_cell {
    width: 92vw;
    /* height: auto; */
    /* min-height: 56vw; */
  }

  .con24_cell + .con24_cell {
    margin-left: 0;
  }

  .con24_story_card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 6vw 5vw;
    box-sizing: border-box;
    order: 1;
    aspect-ratio: auto;
  }

  .con24_story_inner {
    width: 100%;
    margin-top: 0;
    margin-left: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .con24_badge {
    width: 26vw;
    height: 8vw;
    font-size: 3.5vw;
    letter-spacing: 0;
  }

  .con24_story_title {
    margin-top: 3vw;
    font-size: 5.2vw;
    line-height: 1.25;
    letter-spacing: 0;
    word-break: keep-all;
  }

  .con24_story_body {
    margin-top: 3vw;
    font-size: 3.3vw;
    line-height: 1.6;
    letter-spacing: 0;
    word-break: keep-all;
  }

  .con24_video_placeholder {
    aspect-ratio: 724 / 407;
  }

  .con25 {
    padding: 15vw 5% 16vw;
  }

  .con25_person {
    display: flex;
    position: relative;
    order: 3;
    bottom: auto;
    left: auto;
    width: 42vw;
    margin-top: -38vw;
    margin-bottom: -52vw;
    margin-left: -87vw;
    z-index: 7;
  }

  .con25_head {
    width: 100%;
  }

  .con25_title {
    min-height: 0;
    max-width: 90vw;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con25_title span {
    white-space: normal;
  }

  .con25_sub {
    max-width: 88vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 1.55;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con25_cards {
    width: 92vw;
    flex-direction: column;
    align-items: center;
    gap: 7vw;
    margin-top: 8vw;
  }

  .con25_card_wrap {
    width: 86vw;
  }

  .con25_card_label {
    width: 48vw;
  }

  .con25_card_body {
    width: 86vw;
    height: 61vw;
    margin-top: -7vw;
    border-radius: 5vw;
  }

  .con25_left_content {
    width: 40vw;
    margin-top: 14vw;
  }

  .con25_right_content {
    width: 58vw;
    margin-top: 12vw;
  }

  .con25_stamp {
    width: 34vw;
    left: auto;
    right: -5%;
    top: 25vw;
  }

  .con26 {
    padding: 15vw 5% 16vw;
  }

  .con26_head {
    width: 100%;
  }

  .con26_eyebrow {
    max-width: 88vw;
    font-size: 3.7vw;
    line-height: 1.35;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con26_title {
    max-width: 90vw;
    margin-top: 3vw;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con26_title_line {
    white-space: normal;
  }

  .con26_cards {
    width: 92vw;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4vw;
    margin-top: 8vw;
  }

  .con26_card {
    width: 42vw;
    height: 42vw;
  }

  .con26_card_inner {
    padding-top: 10vw;
  }

  .con26_badge {
    width: 18vw;
    height: 5.6vw;
  }

  .con26_badge span {
    font-size: 3.2vw;
    letter-spacing: 0;
  }

  .con26_card_text {
    margin-top: 2vw;
    font-size: 4.8vw;
    line-height: 1.15;
    letter-spacing: 0;
  }

  .con27 {
    padding: 15vw 5% 16vw;
  }

  .con27_head {
    width: 100%;
  }

  .con27_title {
    max-width: 90vw;
    font-size: 7vw;
    line-height: 1.2;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con27_title_line {
    white-space: normal;
  }

  .con27_sub {
    max-width: 88vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 1.55;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con27_sub2 {
    margin-top: 1.6vw;
    font-size: 3vw;
    line-height: 1.55;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con27_cards {
    width: 92vw;
    flex-wrap: wrap;
    justify-content: center;
    gap: 3vw;
    margin-top: 3vw;
  }

  .con27_card_img {
    width: 43.5vw;
  }

  .con27_cta {
    width: 70vw;
    margin-top: 8vw;
  }

  .con28 {
    padding: 15vw 0% 16vw;
  }

  .con28_inner {
    width: 100%;
    flex-direction: column;
    align-items: center;
    gap: 0;
    margin-left: 0;
  }

  .con28_left {
    display: contents;
  }

  .con28_title {
    max-width: 90vw;
    margin-top: 0;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con28_title_line {
    white-space: normal;
  }

  .con28_sub {
    max-width: 88vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 1.55;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con28_sub span {
    display: inline;
  }

  .con28_arrows {
    justify-content: center;
    gap: 3vw;
    margin-top: 5vw;
    order: 2;
  }

  .con28_arrow {
    width: 10vw;
    height: 10vw;
  }

  .con28_cards {
    width: 100%;
    margin-top: 7vw;
    transform: none;
    order: 1;
  }

  .con28_swiper .swiper-slide {
    width: 64vw !important;
  }

  .con28_card,
  .con28_thumb {
    width: 64vw;
  }

  .con28_thumb {
    height: 78vw;
    border-radius: 4vw;
  }

  .con28_badge {
    width: 46vw;
    height: 8vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    letter-spacing: 0;
  }

  .con28_card_text {
    max-width: 62vw;
    margin-top: 2.5vw;
    font-size: 3.3vw;
    line-height: 1.5;
    letter-spacing: 0;
    white-space: normal;
    word-break: keep-all;
  }

  .con29 {
    margin-top: 0;
    padding: 18vw 4% 0vw;
    align-items: center;
    background-position: center 0, left top;
    background-size: cover, 100% 100%;
  }

  .con29_food {
    width: 44vw;
    height: 48vw;
    left: -15%;
    top: 4vw;
    z-index: 1;
  }

  .con29_panel {
    width: 92vw;
    height: auto;
    margin-left: 0;
    padding: 8vw 3vw 10vw;
    border-radius: 6vw;
    overflow: visible;
  }

  .con29_title_group {
    width: 100%;
    margin-top: 0;
  }

  .con29_title {
    max-width: 82vw;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con29_title span,
  .con29_title b,
  .con29_sub span {
    white-space: normal;
  }

  .con29_sub {
    max-width: 82vw;
    margin-top: 3vw;
    font-size: 3.4vw;
    line-height: 1.55;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con29_case_change,
  .con29_case_new {
    margin-top: 8vw;
  }

  .con29_case_badge,
  .con29_case_change .con29_case_badge {
    width: 44vw;
  }

  .con29_unit {
    width: 86vw;
    margin-top: 4vw;
    font-size: 3.3vw;
    line-height: 1.4;
    letter-spacing: 0;
  }

  .con29_table {
    width: 86vw;
    height: auto;
    margin-top: 2vw;
  }

  .con29_head {
    display: flex;
    height: 10.5vw;
  }

  .con29_head .con29_cell {
    font-size: 3vw;
  }

  .con29_row {
    flex-wrap: nowrap;
    height: 13vw;
    border-top: 0;
  }

  .con29_cell {
    min-height: 0;
    height: 100%;
    padding: 1vw 0.8vw;
    border-top: 1px solid #dedede;
    font-size: 3vw;
    line-height: 1.25;
    letter-spacing: 0;
    white-space: normal;
    word-break: keep-all;
    overflow-wrap: anywhere;
    text-align: center;
  }

  .con29_col_type,
  .con29_col_amount {
    justify-content: center;
    font-weight: 800;
  }

  .con29_col_type {
    width: 22%;
  }

  .con29_col_desc {
    width: 27%;
  }

  .con29_col_amount {
    width: 18%;
  }

  .con29_col_note {
    width: 33%;
    justify-content: center;
  }

  .con29_col_note {
    border-right: 1px solid #dedede;
  }

  .con29_note_merge_3 {
    height: 39vw;
    border-bottom: 0;
  }

  .con29_note_merge_2 {
    height: 26vw;
  }

  .con29_note_red,
  .con29_case_change .con29_note_red {
    align-items: center;
    font-size: 3vw;
    line-height: 1.25;
    letter-spacing: 0;
  }

  .con29_amount_pair {
    justify-content: center;
    gap: 1.2vw;
  }

  .con29_strike_mark {
    width: 7vw;
  }

  .con29_sum_mark {
    width: 15vw;
  }

  .con29_stamp {
    width: 16vw;
  }

  .con29_sum {
    min-height: 0;
    height: 16vw;
    padding: 0 3vw;
    flex-direction: row;
    gap: 2vw;
  }

  .con29_sum_red {
    gap: 2vw;
  }

  .con29_sum_price {
    gap: 2vw;
    letter-spacing: 0;
    flex-shrink: 0;
  }

  .con29_sum_price span {
    font-size: 3.2vw;
  }

  .con29_sum_price b {
    font-size: 5.4vw;
  }

  .con29_zero {
    width: 17vw;
    margin-left: 0;
  }

  .con29_banner {
    width: 50vw;
  }

  .con29_person {
    display: flex;
    position: relative;
    right: auto;
    width: 57vw;
    margin-top: -7vw;
  }

  .con30 {
    height: auto;
    padding: 15vw 0% 0vw;
  }

  .con30_title {
    max-width: 90vw;
    font-size: 7vw;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con30_search {
    width: 90vw;
    height: 12vw;
    margin-top: 5vw;
    padding-left: 5vw;
    padding-right: 1.5vw;
  }

  .con30_search_input {
    width: 72vw;
    font-size: 3.5vw;
    letter-spacing: 0;
  }

  .con30_search_btn {
    width: 9vw;
    height: 9vw;
  }

  .con30_board {
    width: 92vw;
    height: auto;
    flex-direction: column;
    margin-top: 6vw;
  }

  .con30_map_wrap {
    order: 1;
    width: 100%;
    height: 70vw;
  }

  .con30_list {
    order: 2;
    width: 100%;
    height: 78vw;
  }

  .con30_store {
    height: 24vw;
    padding-left: 5vw;
    padding-right: 5vw;
  }

  .con30_store_text {
    width: 78%;
  }

  .con30_store_name {
    font-size: 3.6vw;
    line-height: 1.25;
    letter-spacing: 0;
  }

  .con30_store_address {
    margin-top: 1.8vw;
    font-size: 3.2vw;
    line-height: 1.35;
    letter-spacing: 0;
  }

  .con30_store_tel {
    margin-top: 1vw;
    font-size: 3.1vw;
    line-height: 1.2;
    letter-spacing: 0;
  }

  .con30_store_plus {
    width: 7vw;
    height: 7vw;
    margin-top: 0;
  }

  .con30_no_shop {
    height: 24vw;
    font-size: 3.5vw;
    letter-spacing: 0;
  }

  .con30_open {
    height: 14vw;
    margin-top: 14vw;
  }

  .con30_open_label {
    width: 34%;
  }

  .con30_open_label img {
    width: 28vw;
  }

  .con30_open_swiper {
    width: 66%;
  }

  .con30_open_swiper .swiper-slide {
    padding-left: 4vw;
    padding-right: 4vw;
  }

  .con30_open_text {
    font-size: 3.8vw;
    letter-spacing: 0;
  }

  .con30_open_text::after {
    padding-left: 4vw;
  }

  .popup {
    width: 90vw;
    min-height: 0;
    flex-direction: column;
    align-items: center;
    gap: 4vw;
    padding: 5vw;
    border-radius: 4vw;
  }

  .popup_close {
    order: 0;
    align-self: flex-end;
    width: 8vw;
    height: 8vw;
  }

  .popup_close span {
    width: 4.5vw;
  }

  .popup_photo {
    width: 80vw;
    height: 58vw;
  }

  .popup_info {
    width: 100%;
    align-items: center;
    text-align: center;
  }

  .popup_label {
    font-size: 3.5vw;
    letter-spacing: 0;
  }

  .popup_store_name {
    margin-top: 2vw;
    font-size: 5vw;
    letter-spacing: 0;
  }

  .popup_row {
    margin-top: 2.5vw;
    gap: 3vw;
  }

  .popup_row span,
  .popup_row p {
    font-size: 3.4vw;
    line-height: 1.45;
    letter-spacing: 0;
  }

  .popup_row span {
    width: 11vw;
  }

  .popup_naver_link {
    width: 46vw;
    height: 10vw;
    margin-top: 4vw;
    font-size: 3.5vw;
    letter-spacing: 0;
  }

  .con31 {
    flex-direction: column;
    align-items: center;
    padding: 15vw 5% 16vw;
    background-position: center top;
  }

  .con31_inner {
    flex-direction: column;
    align-items: center;
  }

  .con31_left {
    width: 100%;
    align-items: center;
    margin-left: 0;
    margin-top: 0;
  }

  .con31_title {
    max-width: 90vw;
    font-size: 7vw;
    line-height: 1.18;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con31_title span,
  .con31_sub span {
    white-space: normal;
  }

  .con31_sub {
    max-width: 88vw;
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 1.55;
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }

  .con31_call {
    width: 74vw;
    height: 13vw;
    justify-content: center;
    margin-top: 5vw;
    padding-left: 0;
    gap: 3vw;
  }

  .con31_call_icon {
    width: 6vw;
    height: 6vw;
  }

  .con31_call_number {
    width: 52vw;
  }

  .con31_person {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 38.5722%;
    aspect-ratio: 430 / 766;
    left: 4%;
    top: 70vw;
    z-index: 0;
  }

  .con31_form_panel {
    width: 92vw;
    height: auto;
    margin-top: 46vw;
    margin-left: 0;
    padding: 10vw 5vw 6vw;
  }

  .con31_stamp {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 46.168%;
    aspect-ratio: 308 / 153;
    left: 45%;
    top: 84.5vw;
    z-index: 5;
  }

  .con31_form {
    width: 100%;
    margin-top: 0;
  }

  .con31_form_panel,
  .con31_form .con31_field,
  .con31_form .con31_radio_field,
  .con31_form .con31_submit {
    opacity: 1 !important;
    transform: none !important;
  }

  .con31_field {
    height: 11vw;
    margin-top: 2vw;
    border-radius: 2vw;
    font-size: 3.5vw;
  }

  .con31_input[name="name"] {
    margin-top: 0;
  }

  .con31_input,
  .con31_select,
  .con31_textarea {
    padding-left: 4vw;
    padding-right: 4vw;
  }

  .con31_select {
    padding-right: 10vw;
    background-position: right 4vw center;
    background-size: 2.4vw 1.5vw;
  }

  .con31_textarea {
    height: 24vw;
    padding-top: 3vw;
  }

  .con31_radio_field {
    height: auto;
    flex-wrap: wrap;
    gap: 3vw;
    margin-top: 2vw;
    padding: 3vw 4vw;
    border-radius: 2vw;
  }

  .con31_field_label {
    width: 100%;
    font-size: 3.5vw;
  }

  .con31_radio_label {
    gap: 1.5vw;
  }

  .con31_radio_mark {
    width: 4.8vw;
    height: 4.8vw;
  }

  .con31_radio_mark::after {
    width: 2.8vw;
    height: 2.8vw;
  }

  .con31_radio_text {
    font-size: 3.4vw;
  }

  .con31_agree {
    margin-top: 3vw;
    gap: 1.5vw;
  }

  .con31_agree_box {
    width: 4.5vw;
    height: 4.5vw;
  }

  .con31_agree_box::after {
    width: 2.5vw;
    height: 2.5vw;
  }

  .con31_agree_text {
    font-size: 3.3vw;
  }

  .con31_submit {
    height: 12vw;
    margin-top: 5vw;
    border-radius: 2vw;
    font-size: 4.3vw;
  }
  .con02_title,
  .con04_right_title,
  .con08_title,
  .con11_title,
  .con12_title,
  .con14_title,
  .con15_title,
  .con17_title,
  .con18_title,
  .con19_title,
  .con20_title,
  .con21_title,
  .con23_title,
  .con24_title,
  .con25_title,
  .con26_title,
  .con27_title,
  .con28_title,
  .con29_title,
  .con30_title,
  .con31_title,
  .con09_title_line_02,
  .con10_title_line_02,
  .con13_title_line_02,
  .con22_title_bottom {
    font-size: 8vw;
  }

  .con09_title_line_01,
  .con10_title_line_01,
  .con13_title_line_01 {
    font-size: 5.8vw;
  }

  .con22_title_top {
    font-size: 5.4vw;
  }
}
