/* Google Fonts에서 제공하는 Pretendard */
@import url('https://fonts.googleapis.com/css2?family=Pretendard:wght@100;200;300;400;500;600;700;800;900&display=swap');
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable.min.css");
/* 폰트 적용 */
body {
    font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, system-ui, Roboto, 'Helvetica Neue', 'Segoe UI', 'Apple SD Gothic Neo', 'Noto Sans KR', 'Malgun Gothic', 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', sans-serif;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

div
{
    box-sizing: border-box;
}

a
{
    text-decoration: none;
    color: inherit;
}

.bg_yellow
{
    background: #f9f900;
}

.fixed_top
{
    position: fixed;
    top: 0;
    z-index: 100;
}

.m_show_flex
{
    display: none;
}

.m_show_block
{
    display: none;
}

.m_none_flex
{
    display: flex;
}

.m_none_block
{
    display: block;
}

.full_width 
{
    width: 100%;
}

.half_width
{
    width: 50%;
}

.quarter_width
{
    width: 25%;
}

.justify_between
{
    justify-content: space-between;
}

.justify_start
{
    justify-content: start;
}

.justify_center
{
    justify-content: center !important;
}

.justify_end
{
    justify-content: end;
}

.align_center
{
    align-items: center;
}

.align_start
{
    align-items: start;
}

.align_end
{
    align-items: end;
}

.align_center
{
    align-items: center;

}

.flex_column
{
    flex-direction: column;
}

.flex_row
{
    flex-direction: row;
}

.gap_10
{
    gap: 10px;
}

.padding_15
{
    padding: 0 15px;
}

.gnb_full_width
{
    border-bottom: 1px solid #e0e0e0;
    transition: background-color 0.3s ease, box-shadow 0.3s ease;

}

.flex {
    display: flex;
}

.center_wrap {
    width: 100%;
    display: flex;
    justify-content: center; /* 가로 중앙 정렬 */
}

.center
{
    width: 1200px;
    padding: 0 15px;
}

.center_1310
{
    width: 1310px;
}

.center_1920
{
    width: 1920px;
}

.gnb{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0px;
}

.gnb_logo{
    width: 52px;
    height: 57px;
}

.gnb_logo path
{
    fill: #333;
}

.gnb_menu
{
    font-size: 18px;
}

.gnb_menu ul
{
    display: flex;
    flex-direction: row;
    gap: 90px;
}

.gnb_menu ul li
{
    list-style: none;
}

.gnb_menu_btn
{
    display:none;
}

/* 화이트 버전 */
.gnb_full_width.white_bg
{
    background: #fff;
}

.gnb_full_width.white_bg .gnb_logo path
{
    fill: #212121;
}

.gnb_full_width.white_bg .gnb_menu ul li a
{
    color: #212121;
}

/* 투명 버전 */
.gnb_full_width.transparent_bg
{
    background: transparent;
}

.gnb_full_width.transparent_bg .gnb_logo path
{
    fill: #fff;
}

.gnb_full_width.transparent_bg .gnb_menu ul li a
{
    color: #fff;
}


.gnb_sub_menus
{
    background: #fff;
    border-top: 1px solid #e0e0e0;
    padding: 20px 0px;
}

.gnb_sub{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0px 0px;
}

.gnb_sub_blank
{
    width: 52px;
    height: 57px;
}


.gnb_sub_menu
{
    font-size: 16px;
    color:#212121;
}

.gnb_sub_menu ul
{
    display: flex;
    flex-direction: row;
    gap: 90px;
}

.gnb_sub_menu ul li
{
    list-style: none;
    line-height: 2;
}

.mobile_menus
{
    width: 100%;
    height: 100vh;
    background: #fff;
    z-index: 999999;
    padding: 30px;
    overflow-y: auto;
    display: none;
    position: fixed;
    top: 98px;
    left: 0;
    padding-bottom: 100px;
}

.mobile_menu_1dpt
{
    font-size: 20px;
    font-weight: 700;
    color: #212121;
    padding: 10px 0px;
}

.mobile_menu_2dpt
{
    font-size: 14px;
    color: #212121;
    padding: 10px;
    line-height: 2;
}

/* Main Page*/
.main_kv_bg
{
    width: 100%;
    height: 100%;
}


.main_kv_slider .swiper {
    width: 100%;
    height: 100%;
  }

.main_kv_slider .swiper-slide {
    background-position: center;
    background-size: cover;
}

.main_kv_slider .swiper-slide img {
    display: block;
    width: 100%;
}

.main_kv_text_wrap
{
    position: absolute;
    bottom: 15%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 1200px;
    padding: 0 15px;
    text-align: left;
    color: #fff;
}

.main_kv_text
{
    font-size: 64px;
    line-height: 1;
}

.main_kv_text_small
{
    font-size: 58px;
}

.main_kv_text span
{
    font-size: 80px;
}
.main_kv_desc
{
    margin-top: 20px;
    font-size: 20px;
    line-height: 1.5;
}


.main_kv_controll_wrap
{
    

}
.main_kv_slider_prev
{
	cursor:pointer;
}

.main_kv_slider_next
{
	cursor:pointer;
}

.main_kv_controll_wrap
{
    width: 100%;
    height: 24px;
    position: absolute;
    bottom: 5%;
    left: 0px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 15px;
}

.main_kv_controllers
{
    position: relative;
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 15px;
    display: flex;
    justify-content: start;
}

.main_kv_controllers_items
{
    width:200px;
    display: flex;
    flex-direction: row;
    gap: 20px;
    align-items: center;
}

.main_kv_slider_num
{
    color: var(--common-W-ff, #FFF);
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 21px */
    
}

.main_kv_slider_num_current
{
    color: var(--common-W-ff, #FFF);
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 21px */
    
}

.main_kv_slider_num_total
{
    color: rgba(255, 255, 255, 0.50);

}
.main_kv_slider_num_dot
{
    color: rgba(255, 255, 255, 0.50);
    font-size:10px;
}


.main_kv_slider_mobile
{
    width: 100%;
    padding-top: 98px;

}


.m_kv_slide_img
{
    width: 100%;
}

.m_kv_slide_img img
{
    width: 100%;
}



.m_kv_slide_text
{
    position: absolute;
    bottom: 15%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    padding: 0 15px;
}

.m_kv_slide_text_title
{
    font-size: 24px;
    font-weight: 700;
    line-height: 150%;
    color: #fff;
}

.m_kv_slide_text_desc
{
    font-size: 14px;
    line-height: 150%;
    font-weight: 300;
    color: #fff;
}

.m_kv_swiper .swiper-pagination-bullet-active 
{
    background: #fff !important;
}

.main_menu_wrap
{
    padding-top:133px;
}
.main_menu_tag
{
    color: var(--main-main, #C5A662);

    /* F10/16/B */
    font-family: Pretendard;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 24px */
}

.main_menu_title
{
    color: var(--gray-gray900-21, #212121);

    /* F3/58/B */
    font-family: Pretendard;
    font-size: 58px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 87px */
    margin-bottom: 30px;
}

.main_menu_tab
{
    color: var(--gray-gray500-9e, #9E9E9E);

    /* F9/18/B */
    font-family: Pretendard;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 27px */
    cursor: pointer;
}

.main_menu_tab.active
{
    color: var(--gray-gray900-21, #212121);
    border-bottom: 1px solid #C5A662;
}

.main_menu_small_wrap
{
    gap:35px;
    margin-top:50px;
    padding-right:25px;
}

.main_menu_small img
{
    width:100%;
    transition: transform 0.6s ease-in-out, opacity 0.6s ease-in-out;
    transform: translateX(0);
    opacity: 1;
}

.main_menu_img_holder
{
    position: relative;
}

.main_menu_img_wrap
{
    padding-left:25px;
    background: url(../img/main/main_foodmenu_bg.png) no-repeat center center;
    background-size: cover;
    padding: 15px;
}

.main_menu_img_wrap img
{
    width:100%;
    transition: transform 0.6s ease-in-out, opacity 0.6s ease-in-out;
    transform: translateX(0);
    opacity: 1;
}

.main_menu_back_illust
{
    position: absolute;
    top: -50px;
    right: -150px;
    z-index: -999999;
    width: 200px;
}

.main_menu_back_illust img
{
    width:100%;
}

.main_menu_img_title
{
    position: absolute;
    bottom: -20px;
    right: -20px;
    width: 225px;
    height: 70px;
    background: var(--main-800, #4F4227);
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.15);
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 20px;
}

.main_menu_controll_wrap
{
    margin-top:30px;
    border-bottom: 1px solid #BDBDBD;
}

.main_menu_current_tab_title
{
    color: var(--main-main, #C5A662);

    /* F5/36/B */
    font-family: Pretendard;
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 54px */
}

.main_menu_controll_btn_wrap
{
    gap:20px;
}

.main_menu_prev_btn
{
    cursor: pointer;
}

.main_menu_prev_btn svg path
{
    stroke: #C5A662;
}

.main_menu_prev_btn:hover svg path
{
    stroke: #212121;
}

.main_menu_next_btn
{
    cursor: pointer;
}

.main_menu_next_btn svg path
{
    stroke: #C5A662;
}

.main_menu_next_btn:hover svg path
{
    stroke: #212121;
}

.main_menu_wrap_mobile
{
    margin-top: 50px;
}

.main_m_session_title
{
    font-size: 24px;
    font-weight: 700;
    line-height: 150%;
    color: #212121;
}

.main_m_menu_tab_wrap
{
    padding: 0 15px;
    gap: 10px;
    margin-top: 50px;
}

.main_m_menu_tab
{
    cursor: pointer;
}

.main_m_foodmenu_img_wrap
{
    margin-top: 20px;
    padding: 0 15px;
    text-align: center;
}

.main_m_foodmenu_img_wrap img
{
    width:100%;
}

.main_m_foodmenu_img_wrap span
{
    display: inline-block;
    margin-top: 10px;
    font-size: 14px;
    font-weight: 700;
    line-height: 150%;
    color: #F5F5F5;
    padding: 10px 20px;
    background: #212121;
}

.main_m_menu_tab.active
{
    color: #C5A662;
    border-bottom: 1px solid #C5A662;
    font-weight: 700;
}


.main_store_full_width_mobile
{
    margin-top: 50px;
}

.main_store_full_width
{
    background-image: url(../img/main/main_store_bg.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    margin-top:111px;
}

.main_store_text_wrap
{
    padding-left:100px;
    padding-top: 264px;
}

.main_store_text_tag
{
    color: var(--main-main, #C5A662);

    /* F10/16/B */
    font-family: Pretendard;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 24px */
}

.main_store_text_title
{
    color: var(--gray-gray900-21, #212121);

    /* F3/58/B */
    font-family: Pretendard;
    font-size: 58px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 87px */
}

.main_store_text_desc1
{
    color: var(--gray-gray700-61, #616161);

    /* F7/24/L */
    font-family: Pretendard;
    font-size: 24px;
    font-style: normal;
    font-weight: 300;
    line-height: 130%; 

    margin-top: 30px;
}

.main_store_text_desc1 span
{
    color: var(--main-main, #C5A662);

    /* F7/24/B */
    font-family: Pretendard;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
}

.main_store_text_desc2
{
    color: var(--gray-gray900-21, #212121);

    /* F5/36/L */
    font-family: Pretendard;
    font-size: 36px;
    font-style: normal;
    font-weight: 300;
    line-height: 130%;
    margin-top: 20px;
}

.main_store_text_btn_wrap
{
    margin-top: 50px;
    display: flex;
    justify-content: start;
    flex-direction: column;
}

.main_store_text_btn
{
    background: rgba(0, 0, 0, 0.10);
    width:300px;
    height: 60px;
    margin-top: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--gray-gray600-75, #757575);

    /* F8/20/B */
    font-family: Pretendard;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 30px */
    padding:0 20px;
    cursor: pointer;
    


}

.main_store_text_btn svg path
{
    stroke:#757575;
}

.main_store_text_btn:hover
{
    width:300px;
    height: 60px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--gray-gray900-21, #212121);
    background: #fff;

    /* F8/20/B */
    font-family: Pretendard;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 30px */
    padding:0 20px;
    cursor: pointer;
    box-shadow: 3px 3px 3px 1px rgba(0, 0, 0, 0.1);
}

.main_store_text_btn:hover svg path
{
    stroke:#C5A662;
}

.main_news_text_wrap
{
    padding-top: 264px;
}


.main_news_content_wrap
{
    padding-top: 264px;
    
}

.main_news_rows
{
    border-top: 2px solid var(--main-main, #C5A662);
}
.main_news_row
{
    width:100%;
    padding-top:30px;
    padding-bottom: 30px;
    display: flex;
    flex-direction: row;
    gap: 44px;
    border-bottom: 1px solid var(--gray-gray900-21, #212121);
}

.main_news_tag
{
    color: var(--main-800, #4F4227);

    /* F10/16/B */
    font-family: Pretendard;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 24px */
}


.main_news_content
{
    display: flex;
    flex-direction: column;
    justify-content: start;
    height: 100%;
}

.main_news_title
{
    color: var(--gray-gray900-21, #212121);

    /* F8/20/M */
    font-family: Pretendard;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%; /* 30px */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
    max-width: 480px;
}

.main_news_date
{
    color: var(--gray-gray500-9e, #9E9E9E);

    /* F10/16/R */
    font-family: Pretendard;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.main_news_full_width_mobile
{
    margin-top: 50px;
}

.main_mobile_news_rows
{
    margin-top: 30px;
    border-top: 2px solid var(--main-main, #C5A662);
}

.main_mobile_news_row
{
    width:100%;
    padding-top:30px;
    padding-bottom: 30px;
    border-bottom: 1px solid var(--gray-gray900-21, #212121);

}

.main_mobile_news_tag
{
    color: var(--main-800, #4F4227);
    font-weight: 700;
}

.main_mobile_news_title
{
    font-size: 16px;
}

.main_mobile_news_date
{
    font-size: 14px;
    color: var(--gray-gray500-9e, #9E9E9E);
}




.main_insta_full_width
{
    padding-top: 230px;
}

.main_insta_text_btn_wrap
{
    margin-top: 25px;
}

#main_insta_swiper
{
    width:100%;
    margin-top: 50px;
}

#main_insta_swiper .swiper-slide
{
    display: flex;
    justify-content: center;
    align-items: center;
}

#main_insta_swiper .swiper-slide img
{
    display: block;
    width:100%;
    object-fit: cover;
}

.main_insta_left_blur
{
    position: absolute;
    top: 0;
    left: 0;
    width: 8%;
    height: 100%;
    background: linear-gradient(270deg, #FFF 0%, rgba(255, 255, 255, 0.00) 100%);    z-index: 9
}

.main_insta_right_blur
{
    position: absolute;
    top: 0;
    right: 0;
    width: 8%;
    height: 100%;
    background: linear-gradient(270deg, #FFF 0%, rgba(255, 255, 255, 0.00) 100%);    z-index: 9
}

#main_insta_m_swiper
{
    width:100%;
    margin-top: 50px;
}

#main_insta_m_swiper .swiper-slide
{
    display: flex;
    justify-content: center;
    align-items: center;
}

#main_insta_m_swiper .swiper-slide img
{
    display: block;
    width:100%;
    object-fit: cover;
}




.footer
{
    border-top: 1px solid var(--gray-gray300-e0, #E0E0E0);
    background-color: #fff;
    padding: 50px 0px;
    color: var(--gray-gray500-9e, #9E9E9E);
    font-size: 16px;
    margin-top: 130px;
    
}

.footer_info
{
    text-align: left;
    flex:1;
    padding-left: 60px;
    justify-content: space-between;

}
.footer_util
{
    color: var(--gray-600-75, #757575);

    /* F10/16/B */
    font-family: Pretendard;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 24px */
}

.footer_copyright
{
    color: var(--gray-400-bd, #BDBDBD);

    /* F10/16/L */
    font-family: Pretendard;
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 150%; /* 24px */
}

.footer_mobile
{
    margin-top: 50px;
    border-top: 1px solid var(--gray-gray300-e0, #E0E0E0);
    padding: 30px 15px;
    font-size: 12px;
    line-height: 2;
}



/* 다양한 디바이스 대응 */
/* 큰 데스크톱 */
@media screen and (min-width: 1200px) {
    .gnb_menu { display: flex; }
    .gnb_menu_btn { display: none; }
}

/* 데스크톱 */
@media screen and (min-width: 992px) and (max-width: 1199px) {
    .gnb_menu { display: flex; }
    .gnb_menu_btn { display: none; }
}

/* 태블릿 */
@media screen and (min-width: 769px) and (max-width: 991px) {
    .gnb_menu { display: flex; }
    .gnb_menu_btn { display: none; }
}

/* 모바일 */
@media screen and (max-width: 768px) {
    .gnb_menu { display: none; }
    .gnb_menu_btn { display: block; }


    .m_show_flex
    {
        display: flex;
    }

    .m_show_block
    {
        display: block;
    }

    .m_none_flex
    {
        display: none;
    }

    .m_none_block
    {
        display: none;
    }

    /* 모바일에서는 항상 white_bg 스타일 강제 적용 */
    .gnb_full_width {
        background: #fff !important;
        border-bottom: 1px solid #e0e0e0;
    }
    
    .gnb_full_width .gnb_logo path {
        fill: #212121 !important;
    }
    
    .gnb_full_width .gnb_menu ul li a {
        color: #212121 !important;
    }
    
    .gnb_full_width .gnb_menu_btn svg path {
        fill: #212121 !important;
    }
    
    .main_store_text_desc2
    {
    	font-size:1.8rem;
    }
    
    .main_store_text_btn
	{
		font-size:0.8rem;
	}

}