@charset "utf-8";

br.mb { display: none; }

.main { overflow-x: hidden; }
.main:has(.history) { overflow: visible; }
.container { width: 94%; }

@media screen and (max-width: 1780px) {
    .idx_section.brand .brand_food-1 { top: 60%; }
}
@media screen and (max-width: 1680px) {
    .idx_section.visual .visual_flag { right: 77%;  }
}
@media screen and (max-width: 1480px) {
    .main { font-size: 1.12vw; }
}
@media screen and (max-width: 1360px) {
    .ceo_txt { width: 47%; }
    .inquiry_box { padding: 4.375em 5%; }

    /* ============================================ */
    .idx_section.store .store_list { flex-wrap: wrap; }
    .idx_section.store .store_item { flex: 0 1 48%; }
    .idx_section.store .store_item a { height: 100%; display: flex; justify-content: flex-start; align-items: center; }
    .idx_section.store .store_img { width: 40%; height: 100%; aspect-ratio: 1/1; }
    .idx_section.store .store_num { font-size: 1.75em; }
    .idx_section.store .store_icon { top: 50%; left: 0; transform: translate(-50%,-50%); }
    .idx_section.store .store_txt { padding: 2em 3em; }
    .idx_section.store .store_txt::before { display: none; }
    .idx_section.story .story_list { grid-template-columns: repeat(5,1fr); }
    .idx_section.story .story_item:nth-last-child(-n+2) { display: none; }
}
@media screen and (max-width: 1280px) {
    .hd, .ft { font-size: 1.25vw; }

    .page_content .store_area { gap: 3em; }
    .page_content .store_box.map { width: 50%; }

}
@media screen and (max-width: 1024px) {
    :root {
        --radius-md: 0.5rem;
        --radius-lg: 0.75rem;
    }
    .bo_l, .bo_v, .bo_w { font-size: 1.5vw; }
    .modal_con { height: calc(var(--vh) * 50); }

    /* ============================================ */
    .main { font-size: 1.5vw; }
    .page_visual { height: calc(var(--vh) * 20); }
    .ceo_box { flex-direction: column; justify-content: flex-start; align-items: center; gap: 4em; text-align: center; }
    .ceo_img { width: 90%; aspect-ratio: 4/2; }
    .ceo_txt { width: 100%; font-size: 1.25em; }
    .ceo_stamp {  width: 10%; right: 10%; }
    .store_map { aspect-ratio: 1/0.5; }

    .page_content .store_area { flex-direction: column; }
    .page_content .store_box.map { width: 80%; margin: auto; }
    .page_content .store_box.list { width: 100%; max-width: none; }

    .store_popup_area { flex-direction: column; max-width: 600px; height: auto; }
    .store_popup_box { width: 100%; }
    .store_popup_map { aspect-ratio: 1/0.6; }
    .store_popup_img { display: none; }


    /* ============================================ */
    .idx_section.visual .visual_box { flex-direction: column; text-align: center; align-items: center; justify-content: center; }
    .idx_section.visual .visual_stamp { width: 18%; bottom: 85%; }
    .idx_section.menu .menu_wrap { flex-direction: column; text-align: center; justify-content: center; align-items: center; padding-top: 0; }
    .idx_section.menu .menu_box { padding-top: 0; }
    .idx_section.menu .menu_box,
    .idx_section.menu .menu_img { width: 100%; }
    .idx_section.menu .menu_img .img { width: 85%; margin-left: auto; margin-right: auto; }
    .idx_section.vision .vision_list { gap: 1.25em; }
    .idx_section.brand .brand_box { flex-direction: column; justify-content: center; align-items: center; text-align: center; gap: 4em; }
    .idx_section.bg_fixed { background-attachment: scroll; }

}
@media screen and (max-width: 768px) {
    .bo_l, .bo_v, .bo_w { font-size: 1.25em; }
    .wrapper { font-size: 1.5vw; }
    .container { width: 90%; }
    .hd, .ft, .main, .idx { font-size: inherit; }
    .hd .container { width: 94%; }
    .hd_con { padding: 1.25em 0; }
    .ft_con { flex-direction: column; align-items: center; justify-content: flex-start; text-align: center; gap: 2em; font-size: 1.125em; }
    .notice th:nth-last-child(2),
    .notice td:nth-last-child(2),
    .notice th:nth-last-child(3),
    .notice td:nth-last-child(3) { display: none; }

    /* ============================================ */
    .history_box { padding: 0 3em; }
    .history_list { font-size: 1.125em; }
    .menu_item { gap: 4em; }
    .store_info li { grid-template-columns: 0.3fr 1fr; }
    .page_content .store_box.map { font-size: 1.25em; }


    /* ============================================ */
    .idx_section.merit .merit_item p br { display: none; }
}
@media screen and (max-width: 586px) {
    br { display: none; }
    br.mb { display: block; }

    /* ============================================ */
    .wrapper { font-size: 2.5vw; }
    .hd .container { width: 90%; }
    .hd_gnb { position: fixed; right: 0; top: 0; background-color: #191919; color: #fff; width: 100%; transform: translateX(100%); transition: var(--ts-md); }
    .hd_gnb.is-open { transform: translateX(0); }
    .hd_gnb_list { height: calc(var(--vh) * 100); flex-direction: column; font-size: 2em; align-items: center; justify-content: center; }
    .hd_lang { font-size: 1.375em; }
    .hd_gnb_btn { display: block; }
    .notice th:nth-last-child(5),
    .notice td:nth-last-child(5) { display: none; }
    .gallery_list { grid-template-columns: repeat(2 ,1fr); }
    .tbl_head01 { }
    .bo_search { width: 100%; }
    .bo_search .search_select  { width: 30%; }
    .bo_search .search_bar { width: 70%; }
    .bo_search .search_input { flex-grow: 1; }
    .modal { font-size: 1.125em; }
    .modal_con { height: calc(var(--vh) * 40);  }

    /* ============================================ */
    .page_visual .visual-title { font-size: 2.75em; }
    .page_visual .visual-subtitle { font-size: 1.375em; }

    .history_wrap::before { left: 0.25em; transform: translateX(0); }
    .history_wrap::after { left: 0; transform: translateX(0); }
    .history_box { width: 100%; margin-top: 4em; }
    .history_box-2 { text-align: left; flex-shrink: 0; }
    .history_box::after { right: auto; left: 0; }
    .history_word { margin-left: -36vw; }
    .history_list p { font-size: 1.25em; }

    .menu_img { width: 80%; }
    .menu_list .menu_item { flex-direction: column; gap: 0; margin-top: 6em; }
    .menu_txt .menu-stamp { width: 18%; }
    .side_list { gap: 1em; }
    .side_item { width: calc((100% - 1em)/2) }

    .store_tab { flex-wrap: wrap; }
    .store_tab li { flex: 1 1 40%; }

    /*.store_area .area_marker { width: 5.3% }*/
    /*.store_area .area_point i { width: 32%; }*/
    /*.store_area .area_marker-brand .area_name { display: none; }*/
    /*.store_area .area_marker-brand .area_name::before,*/
    /*.store_area .area_marker-brand .area_name::after { display: none; }*/
    /*.store_area .area_marker-1 { align-items: flex-start; }*/
    /*.store_area .area_marker-brand.is-active .area_point { transform: scale(1.7) }*/
    .store_info { grid-template-columns: 1fr; }

    /* ============================================ */
    .idx_title p { font-size: 1.5em; }
    .idx_section.visual .visual_box { font-size: 0.875em; }
    .idx_section.visual .visual_txt p { font-size: 1.5em; }
    .idx_section.visual .visual_img { width: 80%; }
    .idx_section.menu .menu_stamp { width: 17%; right: 5%; }
    .idx_section.store .store_item { flex: 1 1 80%; }
    .idx_section.merit .merit_list { grid-template-columns: 1fr; }
    .idx_section.merit .merit_item:nth-child(even) { margin-bottom: 3em; }
    .idx_section.merit .merit_item p { font-size: 1.5em; }
    .idx_section.story .story_list { grid-template-columns: repeat(3,1fr); }
    .idx_section.story .story_item:nth-last-child(-n+6) { display: none; }
    .inquiry_box .frm_label { display: none; }
    .inquiry_box .frm_item { display: block; }
    .idx_section.vision .vision_list { flex-wrap: wrap; }
    .idx_section.vision .vision_item { flex: 1 1 40%; }
    .idx_section.vision .vision_item:nth-child(odd) { margin-top: 0; }
    .idx_section.brand .brand_food { transform: scale(2.2) }
    .idx_section.brand .brand_img { width: 100%; }
    .idx_section.brand .brand_food-2 { top: -1%; }
    .idx_section.brand .brand_food-3 { bottom: -1%; left: 58%; }
    .idx_section.brand .brand_food-4 { top: 40%; }
    .idx_section.store .store_num { bottom: -4%; top: auto; left: 0.3em; }

    .page_content .store_box.map { width: 100%; }


}
@media screen and (max-width: 380px) {
    .wrapper { font-size: 2.45vw; }
}

/* 예외처리 */
@media screen and (min-width: 569px) and (max-width: 1024px){
    .idx_section.brand .brand_img { width: 100%; grid-template-columns: repeat(3, 1fr); }
    .idx_section.brand .brand_img img:nth-child(2) { transform: none; margin-top: 4em; }
}