@charset "utf-8";

/* =======================================================
    layout / default
======================================================= */
body { font-size: 1em; font-family: "Pretendard", sans-serif; font-weight: 500; line-height: 1.4; color: #191919; letter-spacing: -0.02em; }

/* layout */
.wrapper { min-height: calc(var(--vh) * 100); display: flex; flex-direction: column; word-break: keep-all; }
.hd, .ft { flex-shrink: 0; }
.main { flex-grow: 1; }
.page_content.default { height: 100%; display: flex; align-items: center; }

/* header */
.hd { background-color: #191919; color: #fff; position: sticky; top: 0; left: 0; right: 0; width: 100%; z-index: var(--z-sticky); }
.hd_con { height: 5.625em; display: flex; align-items: center; }
.hd_logo { height: 100%; max-height: 3.75em; margin-right: auto; }
.hd_logo img { height: 100%; }
.hd_gnb { font-size: 1.125em; }
.hd_gnb_list { display: flex; justify-content: flex-start; align-items: center; gap: 3.125em }
.hd_lang { display: flex; justify-content: flex-start; align-items: center; margin-left: 2em; gap: 0.25em; }
.hd_lang a { color: #B1B1B1; }
.hd_lang a:hover,
.hd_lang a.is-active { color: #fff; }
.hd_gnb_btn { width: 2em; aspect-ratio: 1/0.8; position: relative; display: none; margin-left: 1.8em; background-color: transparent; border: 0; }
.hd_gnb_btn .bar { display: inline-block; width: 100%; height: 2px; background-color: #fff; position: absolute; left: 50%; transform: translateX(-50%); -webkit-border-radius: 1em;-moz-border-radius: 1em;border-radius: 1em; margin-top: -1px; transition: var(--ts-md); }
.hd_gnb_btn .bar-1 { top: 0; }
.hd_gnb_btn .bar-2 { top: 50%; }
.hd_gnb_btn .bar-3 { top: 100%; }
.hd_gnb_btn.is-close .bar { top: 50%; }
.hd_gnb_btn.is-close .bar-1 { transform: translateX(-50%) rotate(-45deg); }
.hd_gnb_btn.is-close .bar-2 { width: 0; }
.hd_gnb_btn.is-close .bar-3 { transform: translateX(-50%) rotate(45deg); }

.hd.fixed { position: fixed; z-index: var(--z-fixed); }
.hd.white { background-color: rgba(0,0,0,0.5); backdrop-filter: blur(0.2em); }

/* footer */
.ft { background-color: #191919; color: #fff; }
.ft_con { padding: 5em 0; display: flex; justify-content: space-between; align-items: center; }
.ft_logo { width: 30%; max-width: 245px; }
.ft_logo img { max-width: 100%; }
.ft_txt { width: 65%; display: flex; flex-direction: column; row-gap: 2em; line-height: 1.6; }
.ft_fnb { margin-left: 4px; }
.ft_fnb li { display: inline-block; margin-left: -4px; }
.ft_fnb li.br { display: block; }
.ft_fnb li::after { content:""; width: 1px; height: 0.875em; background-color: currentColor; display: inline-block; margin: 0.2em 0.75em; vertical-align: top; }
.ft_fnb li.br::after,
.ft_fnb li:nth-child(3)::after,
.ft_fnb li:nth-child(6)::after { display: none; }
.ft_copy { font-size: 0.9375em; font-weight: 600; }

/* =======================================================
    page
======================================================= */
.page_visual { height: calc(var(--vh) * 32); color: #fff; text-align: center; display: flex; justify-content: center; align-items: center; }
.page_visual .line { overflow: hidden; }
.page_visual .visual-title { font-size: 3em; font-weight: 600; }
.page_visual .visual-subtitle { font-size: 1em; margin-top: 0.5em; text-transform: uppercase; }
.page_lnb { background-color: #363636; color: #787878; }
.page_lnb .lnb_list { display: flex; justify-content: center; gap: 3em; }
.page_lnb .lnb_item { border-top: 0.25em solid transparent; border-bottom: 0.25em solid transparent; }
.page_lnb .lnb_item a { display: flex; justify-content: center; align-items: center; padding: 1.1em 0.75em; font-size: 1.25em; text-transform: uppercase; }
.page_lnb .is-active { color: #fff; border-bottom-color: #fff; }
.page_content { margin: 7em 0 9em; position: relative; }
.content_title { margin-bottom: 3em; text-align: center; }
.content_title .line { overflow: hidden; }
.content_title b { font-size: 1.125em; font-weight: 600; text-transform: uppercase; display: block; }
.content_title h3 { font-size: 2.875em; font-weight: 700; }
.content_title p { font-size: 1.25em; margin-top: 0.75em; font-weight: 600; }

/* ceo */
.ceo_box { display: flex; justify-content: space-between; align-items: center; }
.ceo_img { width: 47%; aspect-ratio: 4/3.5; border-radius: var(--radius-md); overflow: hidden; }
.ceo_img img { width: 100%; height: 100%; object-fit: cover; }
.ceo_txt { width: 44%; position: relative; padding-bottom: 2em; }
.ceo_txt h3 { font-size: 2em; font-weight: 700; }
.ceo_txt p { font-size: 1.125em; line-height: 1.6; margin-top: 1em; }
.ceo_stamp { width: 20%; display: inline-block; vertical-align: top; position: absolute; right: 0; bottom: 0; }
.ceo_stamp img { transform: rotate(-16deg); width: 100%; }

/* history */
.history_wrap { display: flex; flex-wrap: wrap; align-items: flex-start; position: relative; }
.history_wrap b { color: var(--primary); }
.history_flex { width: 100%; height: auto; display: flex; align-items: flex-start; }
.history_box { width: calc(50% + 0.25em); padding: 0 5em; margin-top: -4em; position: relative; }
.history_word { display: inline-flex; justify-content: flex-start; align-items: center; position: sticky; top: 5%; padding: 6em 2em 8em; pointer-events: none; }
.history_title { font-size: 3.625em; line-height: 1.2; font-weight: 700; text-transform: uppercase; }
.history_list li { margin-top: 1.875em; }
.history_list h5 { font-size: 1.5em; margin-bottom: 0.375em; font-weight: 700; }
.history_list p { font-size: 1.125em; margin-bottom: 0.25em; }
.history_list p::before { content:""; width: 0.25em; height: 0.25em; border-radius: var(--radius-full); background-color: currentColor; display: inline-block; vertical-align: middle; margin: -0.2em 0.625em 0; }
.history_box-1 { margin-left: auto; margin-top: 0; padding-right: 0; }
.history_box-2 { text-align: right; padding-left: 0; }
.history_box-3 { margin-left: auto; padding-right: 0;}
.history_wrap::before,
.history_wrap::after { content:""; position: absolute; left: 50%; transform: translateX(-50%); }
.history_wrap::before { width: 1px; height: 98%; top: 2%; background-color: #B8B8B8; }
.history_wrap::after,
.history_box::after { width: 0.5em; height: 0.5em; background-color: #191919; border-radius: var(--radius-full);; }
.history_wrap::after { bottom: 0; }
.history_box::after { content:""; position: absolute; top: 2em; }
.history_box-1::after { left: 0; }
.history_box-2::after { right: 0; }
.history_box-3::after { left: 0; }

/* menu */
.menu_list { margin-bottom: 3em; }
.menu_item { display: flex; justify-content: center; align-items: center; gap: 8em; }
.menu_item.is-revers { flex-direction: row-reverse; }
.menu_img { max-width: 600px; width: 100%; }
.menu_img img { max-width: 100%; }
.menu_txt { max-width: 502px; width: 100%; position: relative; }
.menu_txt .menu-stamp { width: 23.5%; position: absolute; right: 0; top: 0; transform: translateY(-35%) rotate(10deg); }
.menu_txt span { font-size: 2.5em; }
.menu_txt h4 b { font-size: 2em; font-weight: 800; }
.menu_txt h4 small { font-size: 1.25em; margin-left: 0.5em; font-weight: 600; }
.menu_txt hr { height: 3px; background-color: #191919; margin: 0.75em 0; }
.menu_txt p { font-size: 1.25em; line-height: 1.45; }
.side_list { display: flex; flex-wrap: wrap; gap: 2em 2em; text-align: center; justify-content: flex-start; }
.side_item { width: calc((100% - 4em)/3); border: 1px solid #D0C4B7; padding: 0.625em; position: relative; }
.side_item::before { content:""; width: 100%; height: 32%; border-radius: 5em 5em 0 0; background-color: #F3ECE5; position: absolute; bottom: 0; left: 0; }
.side_box { padding: 3em 0 1.5em; height: 100%; border: 1px solid #D0C4B7; display: flex; flex-direction: column; align-items: center; justify-content: space-between; position: relative; }
.side_txt h5 { font-size: 2em; font-weight: 600; }
.side_txt p { font-size: 1.125em; color: #898989; }
.side_img { margin-top: 2em; max-width: 90%; }
.side_img img { width: 100%; }

/* store
.store_tab { display: flex; justify-content: center; align-items: flex-start; gap: 1em; text-align: center; }
.store_tab li { border: 1px solid #9F9F9F; padding: 1em 3em; color: #777; cursor: pointer; transition: border-color var(--ts-md), color var(--ts-md); }
.store_tab li:hover { border-color: #191919; color: #191919; }
.store_tab li.is-active { border-color: #191919; background-color: #191919; color: #fff; }
.store_tab b { font-size: 1.25em; display: block; font-weight: 500; }
.store_tab small { font-size: 0.875em; display: block; font-weight: 600; margin-top: 0.25em; }
.store_area { margin: 5em 0; text-align: center; }
.store_area .area_title { margin-bottom: 2em; }
.store_area .area_title h4 { font-size: 1.25em; color: #333; font-weight: 600; }
.store_area .area_title p { font-size: 1.0625em; color: #989898; }
.store_area .area_map { display: inline-block; position: relative; }
.store_area .area_bg { width: 100%; }
.store_area .area_marker { width: 4.5%; position: absolute; transform-origin: 50% 0; display: flex; flex-direction: column; align-items: center; }
.store_area .area_marker-1 { left: 0; top: 33.8%; }
.store_area .area_marker-2 { left: 11.4%; top: 7.1%; }
.store_area .area_marker-3 { left: 4%; top: 51.5%; }
.store_area .area_marker-4 { left: 5.5%; top: 54%; }
.store_area .area_marker-5 { left: 8.2%; top: 58%; }
.store_area .area_marker-6 { left: 23.5%; top: 43.5%; }
.store_area .area_marker-7 { left: 8.2%; top: 62%; }
.store_area .area_marker-8 { left: 48.4%; top: 67.7%; }
.store_area .area_marker-9 { left: 64.5%; top: 28.5%; }
.store_area .area_marker-10 { left: 71.5%; top: 57.5%; }
.store_area .area_marker-11 { left: 84.5%; top: 38%; }
.store_area .area_marker-12 { left: 89.5%; top: 23.5%; }
.store_area .area_name { display: block; font-size: 0.9375em; font-weight: 600; white-space: nowrap; color: #686868; margin-top: -0.5em; }
.store_area .area_point { width: 100%; aspect-ratio: 1/1; position: relative; display: flex; justify-content: center; align-items: center; filter: grayscale(1) brightness(1.2); }
.store_area .area_point::before { content:""; display: block; width: 100%; height: 100%; background-color: rgba(var(--primary-rgb),0.2); position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%) scale(0.6); border-radius: var(--radius-full); opacity: 0; }
.store_area .area_point i { width: 24%; aspect-ratio: 1/1; background-color: var(--primary); display: inline-block; border-radius: var(--radius-full); }
.store_area .area_marker-3 { flex-direction: column-reverse; }
.store_area .area_marker-3 .area_name { margin-bottom: -0.5em; }
.store_area .area_marker-brand { cursor: pointer; }
.store_area .area_marker-brand .area_name { position: absolute; border-radius: var(--radius-full); font-size: 1em; padding: 0.5em 1em; line-height: 1; z-index: 1; transition: transform var(--ts-sm); display: none; }
.store_area .area_marker-brand .area_name::before { content:""; background-color: var(--primary); display: inline-block; position: absolute; top: 50%; right: 100%; width: 1.25em; height: 1px; }
.store_area .area_marker-4 .area_name { left: 100%; top: 50%; transform: translateY(-50%); }
.store_area .area_marker-5 .area_name { left: 100%; top: 50%; transform: translateY(-50%); }
.store_area .area_marker-7 .area_name { left: 50%; top: 100%; transform: translateX(-50%); }
.store_area .area_marker-7 .area_name::before { top: auto; bottom: 100%; left: 50%; width: 1px; height: 1.25em; }

.store_area .area_marker-brand .area_point { filter: none; }
.store_area .area_marker-brand .area_point::before {  }
@keyframes motion_area_point {
    0%,100% { transform: translate(-50%,-50%) scale(0.8); }
    50% { transform: translate(-50%,-50%) scale(0.5); }
}
.store_area .area_marker-brand .area_name { border: 1px solid var(--primary); box-shadow: var(--shadow-sm); color: var(--primary); transition: var(--ts-sm)}
.store_area .area_marker-brand:hover .area_name { background-color: #fff; }
.store_area .area_marker-brand.is-active .area_name { color: #fff; background-color: var(--primary); }
.store_area .area_marker-brand.is-active .area_point::before { animation: motion_area_point 2s infinite; opacity: 1; }

.store_box { display: none; }
.store_box.is-active { display: block; }
.store_map { width: 100%; aspect-ratio: 1/0.4; border-radius: var(--radius-md); overflow: hidden; }
.store_map iframe { width: 100%; height: 100%; object-fit: cover; }
.store_info { font-size: 1.125em; display: grid; grid-template-columns: 1fr 1fr; gap: 0.5em 0.5em; margin-top: 1.75em; }
.store_info li { display: grid; grid-template-columns: 0.2fr 1fr; }
.store_info h5, .store_info p { display: flex; align-items: center; height: 3.25em; padding: 0 1.25em; }
.store_info h5 { justify-content: center; background-color: var(--primary); color: #fff; }
.store_info p { flex-grow: 1; justify-content: flex-start; border: 1px solid #D4D4D4; }
*/

.page_content .store_area { padding: 2em 0; display: flex; justify-content: space-around; align-items: flex-start; }
.page_content .store_box.list { width: 55%; max-width: 600px; }
.page_content .store_list { border-top: 2px solid #000;  }
.page_content .store_item { border-bottom: 1px solid #ccc; padding: 1.5em 1.25em; cursor: pointer; transition: var(--ts-sm); line-height: 1; }
.page_content .store_item h4 { font-size: 1.375em; }
.page_content .store_item h4 b { font-weight: 700; }
.page_content .store_item h4 small { font-size: 0.75em; opacity: 0.5; font-weight: 400; }
.page_content .store_item p { font-size: 1.125em; margin-top: 0.875em; }
.page_content .store_item p span { opacity: 0.7; }
.page_content .store_item:hover { color: var(--primary); }
.page_content .store_item:hover p span { opacity: 1; }

.page_content .store_box.map { width: 45%; position: relative; }
.page_content .store_box.map img { width: 100%; }
.page_content .store_area .area_marker { position: absolute; transform-origin: 50% 0; display: flex; align-items: center; gap: 0.7em; justify-content: center; }
.page_content .store_area .area_point { width: 2.8em; aspect-ratio: 1/1; position: relative; display: flex; justify-content: center; align-items: center; filter: grayscale(1) brightness(1.2); }
.page_content .store_area .area_point::before { content:""; display: block; width: 100%; height: 100%; background-color: rgba(var(--primary-rgb),0.2); position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); border-radius: var(--radius-full); animation: motion_area_point 2s infinite; opacity: 1; }
.page_content .store_area .area_point i { width: 24%; aspect-ratio: 1/1; background-color: var(--primary); display: inline-block; border-radius: var(--radius-full); }

@keyframes motion_area_point {
    0%,100% { transform: translate(-50%,-50%) scale(1); }
    50% { transform: translate(-50%,-50%) scale(0.5); }
}
.page_content .store_area .area_marker-brand .area_point { filter: none; }
.page_content .store_area .area_marker-brand .area_name { border: 2px solid var(--primary); color: var(--primary); border-radius: var(--radius-full); padding: 0.3em 0.6em; line-height: 1; position: relative; }
.page_content .store_area .area_marker-brand .area_name::before { content:""; display: block; background-color: var(--primary); position: absolute; }

.page_content .store_area .area_marker-1 { left: 5.5%; top: 15.5%; flex-direction: row; }
.page_content .store_area .area_marker-2 { left: 18.5%; top: 46.5%; flex-direction: column-reverse; }
.page_content .store_area .area_marker-3 { left: 50%; top: 38.5%; flex-direction: row; }
.page_content .store_area .area_marker-3 .area_name::before { width: 2em; height: 2px; right: 100%; top: 50%; }
.page_content .store_area .area_marker-4 { left: 31%; top: 54%; flex-direction: row; }
.page_content .store_area .area_marker-4 .area_name::before { width: 2em; height: 2px; right: 100%; top: 50%; }
.page_content .store_area .area_marker-5 { left: 26.5%; top: 66.5%; flex-direction: column; }
.page_content .store_area .area_marker-5 .area_name::before { width: 2px; height: 2em; left: 50%; bottom: 100%; }
.page_content .store_area .area_marker-6 { left: 40.5%; top: 66.5%; flex-direction: row; }
.page_content .store_area .area_marker-6  .area_name::before { width: 2em; height: 2px; right: 100%; top: 50%; }

.store_popup { position: fixed; left: 0; top: 0; right: 0; bottom: 0; background-color: rgba(0,0,0,0.5); z-index: var(--z-modal); display: none; }
.store_popup_area { height: calc(var(--vh) * 80); border-radius: var(--radius-lg); overflow: hidden; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: none; background-color: #fff; border: 5px solid #191919; }
.store_popup_area.is-active { display: flex; }
.store_popup_close { position: absolute; right: 0; top: 0; margin: 0.75em; font-size: 1.25em; background-color: var(--primary); color: #fff; width: 2em; aspect-ratio: 1/1; border-radius: var(--radius-full); display: inline-flex; justify-content: center; align-items: center; cursor: pointer; }
.store_popup_box { width: 50%; }
.store_popup_map { margin-right: 0.8em; }
.store_popup_map iframe { width: 100%; height: 100%; }
.store_popup_img { width: 100%; aspect-ratio: 1/0.7; border-bottom: 0.6em solid var(--primary);}
.store_popup_img img { width: 100%; height: 100%; object-fit: cover; }
.store_popup_txt { line-height: 1; padding: 2em 2.25em; }
.store_popup_txt h3 { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 1.5em; }
.store_popup_txt h3 b { font-weight: 700; font-size: 1.875em; }
.store_popup_txt h3 i { font-size: 2em; }
.store_popup_txt p { font-size: 1.125em; margin-bottom: 0.75em; }
.store_popup_txt p:last-child { margin-bottom: 0; }
.store_popup_txt p i { font-size: 1.125em; margin-right: 0.5em; }
.store_popup_txt .store_order { background-color: #000; color: #fff; padding: 0.5em 1em; gap: 0.5em; font-size: 1.125em; }

/* inquiry */
.inquiry_box .require { margin-left: 0; }
.inquiry_box { border: 1px solid #ededed; padding: 4.375em 6.25em; box-shadow: var(--shadow-lg); background-color: #fff; }
.inquiry_box .frm_list { gap: 1em 0; }
.inquiry_box .frm_item { display: grid; grid-template-columns: 0.2fr 0.8fr; align-items: center; justify-content: space-between; }
.inquiry_box .frm_label { display: block; font-size: 1.25em; font-weight: 600; }
.inquiry_box .frm_input { font-size: 1.125em; height: 3.25em; padding: 0 1em; }
.inquiry_box .agree_box { font-size: 1.125em; text-align: center; margin-top: 3em; }
.inquiry_box .agree_box label { gap: 0.25em; }
.inquiry_box .agree_box label b { font-weight: 500; text-decoration: underline; }
.inquiry_box .agree_box label span { font-size: 1.2em; margin-right: 0.5em; }
.inquiry_box .agree_box .btn01 { font-size: 0.8125em; padding: 0.25em 0.375em; font-weight: 400; }
.inquiry_box .btn_confirm { margin-top: 1.25em; }
.inquiry_box .btn_submit { font-size: 1.5em; height: 2.5em; border-color: #191919; background-color: #191919; color: #fff; border-radius: var(--radius-full); }

/* =======================================================
    index
======================================================= */
.idx { --swiper-theme-color: var(--primary-hv); }
.idx .container { max-width: var(--container-xl); }
.idx_section { overflow: hidden; }

.idx_title b { font-size: 1.25em; text-transform: uppercase; margin-bottom: 1em; display: block; }
.idx_title h2 { font-size: 3.5em; line-height: 1.2; font-weight: 700; }
.idx_title h3 { font-size: 3em; line-height: 1.2; font-weight: 700; }
.idx_title p { font-size: 1.25em; font-weight: 600; margin-top: 1.25em; }

/* visual */
.idx_section.visual { color: #fff; }
.idx_section.visual .swiper-slide { background: no-repeat center/cover; }
.idx_section.visual .visual_box { height: calc(var(--vh) * 100); display: flex; justify-content: space-between; align-items: center; padding-top: 5.625em; }
.idx_section.visual .visual_txt { position: relative; padding-bottom: 8em; }
.idx_section.visual .visual_txt h2 { font-size: 4.5em; font-weight: 800; }
.idx_section.visual .visual_txt h2 span { display: inline-block; background: linear-gradient(25deg, #FFFFFF, #ffe8c1); -webkit-background-clip:text; background-clip: text; -webkit-text-fill-color:transparent; color:transparent; }
.idx_section.visual .visual_txt h3 { font-size: 2.6em; font-weight: 700; text-shadow: 0 0 0.1em rgba(0,0,0,0.3);}
.idx_section.visual .visual_txt p { font-size: 1.375em; margin-top: 1.25em; line-height: 1.6; }
.idx_section.visual .visual_txt p b { font-weight: 700; }
/*.idx_section.visual .visual_flag { position: absolute; left: 0; top: 0; transform: translate(-35%, -65%) rotate(-25deg); width: 30%; }*/
.idx_section.visual .visual_flag { width: 30%; position: absolute; bottom: 90%; right: 80%; transform: rotate(-25deg); }
.idx_section.visual .visual_img { position: relative; width: 48%; }
.idx_section.visual .visual_food { max-width: 100%; }
.idx_section.visual .visual_stamp { width: 15%; position: absolute; bottom: 5%; right: 3%; transform: rotate(-15deg); }

/* menu */
.idx_section.menu { background: url(../img/idx_menu_bg.png) no-repeat center/cover; }
.idx_section.menu .menu_wrap { height: calc(var(--vh) * 100); padding-top: 5.625em; display: flex; align-items: center; }
.idx_section.menu .menu_box { width: 38%; position: relative; z-index: 1; padding: 6em 2em; }
.idx_section.menu .menu_txt { margin-top: 2.5em; }
.idx_section.menu .menu_txt h4 { font-size: 1.75em; font-weight: 700; background-color: #191919; color: #fff; border-radius: var(--radius-full); padding: 0.25em 0.75em; display: inline-block; }
.idx_section.menu .menu_txt p { font-size: 1.25em; line-height: 1.6; margin-top: 1em; }
.idx_section.menu .menu_img { width: 62%; overflow: visible; text-align: center; }
.idx_section.menu .menu_img .swiper-wrapper { align-items: center; }
.idx_section.menu .menu_img .img { width: 100%; aspect-ratio: 1/0.6; margin-bottom: 4em; display: flex; justify-content: center; align-items: center; }
.idx_section.menu .menu_img .img img { width: 100%; height: 100%; object-fit: contain; transform: scale(0.9); transition: var(--ts-md); }
.idx_section.menu .menu_img .arrow { vertical-align: top; display: none; }
.idx_section.menu .menu_img h5 { font-size: 1.875em; font-weight: 700; display: none; }
.idx_section.menu .menu_img p { font-size: 1.5em; font-weight: 600; color: #686868; display: none; }
.idx_section.menu .menu_stamp { width: 18%; position: absolute; top: 0; right: 0; z-index: 10; transform: rotate(-10deg) translate(15%,-45%); }
.idx_section.menu .menu_img .swiper-slide { filter: grayscale(1); opacity: 0.2; }
.idx_section.menu .menu_img .swiper-slide-active { filter: grayscale(0); opacity: 1; }
.idx_section.menu .menu_img .swiper-slide-active .img img { transform: scale(1.2) }
.idx_section.menu .menu_img .swiper-slide-active .arrow { display: inline-block; }
.idx_section.menu .menu_img .swiper-slide-active h5 { display: block; }
.idx_section.menu .menu_img .swiper-slide-active p { display: block; }

/* vision */
.idx_section.vision { padding: 10em 0; text-align: center; background: url(../img/idx_vision_bg.png) no-repeat center/cover; }
.idx_section.vision .idx_title { color: #fff; margin-bottom: 5em; }
.idx_section.vision .idx_title b { color: var(--primary-hv); }
.idx_section.vision .vision_list { display: flex; justify-content: space-between; align-items: flex-start; gap: 1.875em; }
.idx_section.vision .vision_item { position: relative; border-radius: var(--radius-lg); overflow: hidden; }
.idx_section.vision .vision_item:nth-child(odd) { margin-top: 4em; }
.idx_section.vision .vision_num { position: absolute; right: 0; top: 0; background-color: var(--primary-hv); color: #fff; font-size: 2em; font-weight: 600; }
.idx_section.vision .vision_num { position: absolute; right: 0; top: 1%; width: 23%; aspect-ratio: 1/1; border-radius: var(--radius-md); display: inline-flex; justify-content: center; align-items: center; box-shadow: 0 0.25rem 0.5rem rgba(0,0,0,0.25); }
.idx_section.vision .vision_img { width: 100%; }
.idx_section.vision .vision_img img { max-width: 103.7%; margin-left: -0.4em; display: block; }
.idx_section.vision .vision_txt { padding: 1em; background-color: #fff; font-size: 1.25em; position: relative; margin-top: -0.6em; box-shadow: 0 0.25rem 0.5rem rgba(0,0,0,0.25); }

/* brand */
.idx_section.brand { padding: 10em 0; display: flex; align-items: center; position: relative; }
.idx_section.brand .container { max-width: var(--container-md); }
.idx_section.brand .brand_food { position: absolute; }
.idx_section.brand .brand_food-1 { width: 23%; top: 50%; left: -10%; }
.idx_section.brand .brand_food-2 { width: 20%; top: -5%; left: 20%; }
.idx_section.brand .brand_food-3 { width: 19%; bottom: -7%; left: 35%; }
.idx_section.brand .brand_food-4 { width: 19%; top: 10%; right: -7%; }
.idx_section.brand .brand_box { display: flex; justify-content: space-between; align-items: center; }
.idx_section.brand .idx_title { flex-shrink: 0; }
.idx_section.brand .brand_more { margin-top: 2em; font-size: 1.25em; background-color: #000; color: #fff; padding: 0.75em 1.25em; border-radius: var(--radius-full); gap: 0.25em; }
.idx_section.brand .brand_more img { width: 2em; margin-left: 0.25em; }
.idx_section.brand .brand_img { width: 54%; display: grid; grid-template-columns: 1fr 1fr; }
.idx_section.brand .brand_img img { width: 100%; }
.idx_section.brand .brand_img img:nth-child(2) { transform: translateY(50%); }

/* store */
.idx_section.store { padding: 10em 0; background: linear-gradient(to bottom, #191919 50%, transparent 50%); }
/*.idx_section.store .container { max-width: var(--container-2xl); }*/
.idx_section.store .idx_title { text-align: center; color: #fff; margin-bottom: 5em; }
.idx_section.store .idx_title b { color: var(--primary-hv); }
.idx_section.store .store_list { display: flex; justify-content: space-between; gap: 1.5em; }
.idx_section.store .store_item { flex: 1 1 20%; cursor: pointer; }
.idx_section.store .store_item a { display: block; background-color: #fff; box-shadow: var(--shadow-md); transition: var(--ts-md); }
.idx_section.store .store_img { position: relative; width: 100%; aspect-ratio: 3/3.5; }
.idx_section.store .store_img img { width: 100%; height: 100%; object-fit: cover; }
.idx_section.store .store_num { position: absolute; left: 0.5em; top: -0.25em; text-transform: capitalize; font-size: 1.875em; font-weight: 700; padding: 1em 0.6em; background-color: var(--primary-hv); color: #fff; }
.idx_section.store .store_icon { background-color: var(--primary-hv); color: #fff; font-size: 2.5em; width: 1.375em; border-radius: var(--radius-full); position: absolute; left: 50%; transform: translate(-50%,-50%); top: 0; }
.idx_section.store .store_icon i { transition: var(--ts-md);  }
.idx_section.store .store_txt { position: relative; padding: 3em 2em 3em 4em; }
.idx_section.store .store_txt::before { content:""; width: 0.35em; height: calc(100% - 6em); background-color: var(--primary-hv); display: block; position: absolute; left: 2em; top: 50%; transform: translateY(-50%); }
.idx_section.store .store_txt h4 { font-size: 1.5em; font-weight: 700; }
.idx_section.store .store_txt p { font-size: 1.125em; margin-top: 0.25em; margin-bottom: 0.5em; }
.idx_section.store .store_txt span { font-size: 1em; font-weight: 700; }
.idx_section.store .store_item:hover a { transform: translateY(-1.5em); box-shadow: var(--shadow-lg); }
.idx_section.store .store_item:hover .store_icon i { transform: rotate(180deg); }

/* merit */
.idx_section.merit { padding-bottom: 10em; }
.idx_section.merit .container { max-width: var(--container-md); }
.idx_section.merit .idx_title { text-align: center; margin-bottom: 5em; }
.idx_section.merit .merit_list { display: grid; grid-template-columns: repeat(3,1fr); }
.idx_section.merit .merit_item:nth-child(odd) { width: 100%; }
.idx_section.merit .merit_item:nth-child(odd) img { width: 100%; height: 100%; object-fit: cover; }
.idx_section.merit .merit_item:nth-child(even) { background-color: #3d3d3d; color: #fff; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; padding: 2.5em; }
.idx_section.merit .merit_item h4 { font-size: 3.25em; font-weight: 700; }
.idx_section.merit .merit_item p { font-size: 1.25em; font-weight: 600; line-height: 1.6; margin-top: 0.5em; }

/* media */
.idx_section.media { padding: 10em 0; background: url(../img/idx_media_bg.png) no-repeat center/cover; }
.idx_section.media .container { max-width: var(--container-md); }
.idx_section.media .idx_title { text-align: center; margin-bottom: 5em; color: #fff; }
.idx_section.media .swiper-slide a { display: block; aspect-ratio: 1/1.5; overflow: hidden; box-shadow: var(--shadow-md); }
.idx_section.media .media_con img { width: 100%; height: 100%; object-fit: cover; }

.idx_section.media .swiper-pagination { position: static; margin-top: 1.5em; }
.idx_section.media .swiper-pagination-progressbar { background-color: #E7ECEF; }

/* media */
.idx_section.story { padding: 10em 0; }
.idx_section.story .container { max-width: var(--container-md); }
.idx_section.story .idx_title { text-align: center; margin-bottom: 5em; }
.idx_section.story .story_list { display: grid; grid-template-columns: repeat(6,1fr); gap: 1em 1em; }
.idx_section.story .story_list img { max-width: 100%; }

/* inquiry */
.idx_section.inquiry { padding: 10em 0; background: url(../img/idx_inquiry_bg.png) no-repeat center/cover; }
.idx_section.inquiry .container { max-width: var(--container-md); }
.idx_section.inquiry .idx_title { margin-bottom: 5em; color: #fff; text-align: center; }
.idx_section.inquiry .idx_title b { color: var(--primary-hv); }

.idx_section.bg_fixed { background-attachment: fixed; }