@charset "utf-8";
/* ===== franchise page styles ===== */

/* ===== f_subnav — 서브헤더 (공통 h_nav 인스턴스, fixed 앵커 탭) (plan: .planning/f_subnav/plan.md)
   헤더(.header z 9999) 바로 아래 고정. 헤더가 숨으면(.header.insert) 맨 위로 붙는다.
   z-index 10000: 활성 탭 위 갈색 바(.h_nav_btn.on box-shadow −5−1px)가 시안대로 헤더(z 9999) 하단을 덮어야 해서 헤더보다 한 층 위 ===== */
.f_subnav {
    position: fixed;
    left: 0;
    top: var(--hd-h);
    z-index: 10000;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    border-top: 1px solid #e0e0de; /* 시안: 헤더(90)와 서브헤더 사이 회색 1px (cover_header 91) */
    transition: top 0.3s;
}

body:has(.header.insert) .f_subnav {
    top: 0;
}

.f_subnav_btn {
    width: calc(var(--px) * 211);
}

/* ===== fcon01 — 좌 사진 + 진갈색 패널(로고·문구·WOOGIPASTA. 마퀴) + 우 사진 (plan: .planning/fcon01/plan.md)
   공통 재사용: c_bg_wood · flow_sd (common.css) / c_marquee_word (style.css) — 차이값만 아래 .fcon01_* 에 ===== */
/* margin-top = 헤더 + 서브헤더 전체(회색선 1 + 테두리 1 + 탭 49 + 테두리 1). 활성 바는 헤더 위에 겹쳐 높이 없음 */
.fcon01 {
    margin-top: calc(var(--hd-h) + var(--px) * 49 + 3px);
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
}

.fcon01_photo {
    display: flex;
    justify-content: center;
    align-items: center;
}

.fcon01_photo img {
    width: 100%;
}

.fcon01_photo_01 {
    width: 36.1155%;
    aspect-ratio: 688 / 669;
}

.fcon01_photo_02 {
    width: 36.168%;
    aspect-ratio: 689 / 669;
}

.fcon01_panel {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 27.7165%;
    padding-top: 5.7vw;
}

.fcon01_logo {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 181);
    aspect-ratio: 181 / 261;
}

.fcon01_logo img {
    width: 100%;
}

.fcon01_title {
    margin-top: 1.4vw;
    font-family: var(--font-free);
    font-weight: 500;
    font-size: calc(var(--px) * 20);
    line-height: 1.6vw;
    letter-spacing: -0.03vw;
    color: #fff;
}

.fcon01_flow {
    margin-top: 1.0vw;
}

/* 시작 위상: 텍스트 x 패널 −250 → glyph 실측 +2px 보정 = −(252/1085)×20s */
.fcon01_flow_move {
    animation-delay: -4.65s;
}

.fcon01_word {
    margin-right: calc(var(--px) * 51);
    font-size: calc(var(--px) * 140);
    line-height: 5.6vw;
    white-space: nowrap;
    color: #fff;
}

/* ===== fcon03 — 매출 증명 (좌·우 매출 카드 세로 마퀴 main_sales 연동 + 고정배경 사진창 + 도시락 컷아웃) (plan: .planning/fcon03/plan.md)
   공통 재사용: flow_sd_y (common.css) — 덮어쓰기는 .fcon03_col align-items · .fcon03_move animation-duration/delay 만
   배경은 공통 c_bg_wood(20px 세로선) 가 아님 — 시안 PSD 图层0 노이즈 결 (세로선 없음, 평균 81,27,16 · 표준편차 2.8) → 시안에서 뜬 200px 타일 ===== */
.fcon03 {
    padding-top: 1.6vw;
}

.fcon03_box {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 97.5328%;
    padding-top: 8.9vw;
    padding-bottom: 2.8vw;
    background-color: #511b10;
    background-image: url('/images/fcon03_04.png');
    background-repeat: repeat;
    background-size: calc(var(--px) * 200) calc(var(--px) * 200);
}

.fcon03_center {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
}

.fcon03_photo {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 802);
    height: calc(var(--px) * 157);
    background-image: url('/images/fcon03_02.jpg');
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: max(calc(var(--px) * 873), 133.3vh) auto;
    background-position: center center;
}

.fcon03_title {
    margin-top: 6.6vw;
    font-family: var(--font-nexon);
    font-size: calc(var(--px) * 50);
    font-weight: 700;
    letter-spacing: -0.16vw;
    line-height: 3.4vw;
    color: #fff;
}

.fcon03_title_point {
    color: #f8e9bb;
}

.fcon03_sub {
    margin-top: 1.3vw;
    font-family: var(--font-free);
    font-size: calc(var(--px) * 20);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.3vw;
    color: #fff;
}

.fcon03_deco {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin-top: 6.5vw;
}

.fcon03_line {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.1);
}

.fcon03_line_01 {
    width: calc(var(--px) * 425);
    margin-right: calc(var(--px) * 38);
}

.fcon03_line_02 {
    width: calc(var(--px) * 429);
    margin-left: calc(var(--px) * 34);
}

.fcon03_stars {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    column-gap: 0.5vw;
}

.fcon03_star {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 26);
    aspect-ratio: 26 / 31;
}

.fcon03_col {
    box-sizing: border-box;
    align-items: flex-start;
    width: 18.676%;
    top: 0;
}

.fcon03_col_l {
    left: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.1);
}

.fcon03_col_r {
    right: 0;
    border-left: 1px solid rgba(255, 255, 255, 0.1);
}

.fcon03_move {
    width: 100%;
    animation-duration: var(--fcon03-dur, 18s);
}

.fcon03_move_l {
    animation-delay: -0.21s;
}

.fcon03_move_r {
    animation-delay: -0.09s;
}

.fcon03_list {
    width: 100%;
}

.fcon03_item {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    height: calc(var(--px) * 170);
    padding-top: 2.2vw;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.fcon03_name {
    font-family: var(--font-free);
    font-size: calc(var(--px) * 20);
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.3vw;
    color: #fff;
}

.fcon03_month {
    margin-top: 0.5vw;
    font-family: var(--font-free);
    font-size: calc(var(--px) * 17);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.0vw;
    color: #a37167;
}

.fcon03_amount {
    margin-top: 0.1vw;
    font-family: var(--font-poppins);
    font-size: calc(var(--px) * 25);
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.4vw;
    color: #fff;
}

.fcon03_bowl {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 967);
    aspect-ratio: 967 / 396;
    top: 0;
}

/* ===== fcon04 — 순수익 (WOOGIPASTA 잘림 워드 + 회수기간·마진율 도넛·수익표 + 워드블록) (plan: .planning/fcon04/plan.md)
   공통 재사용: c_marquee_word (style.css) · c_wordblock · c_bg_wood (common.css) — 차이값만 아래 .fcon04_* 에 ===== */
.fcon04 {
    padding-bottom: 3.1vw;
    background-image: url('/images/fcon04_01.jpg');
}

.fcon04_card {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 97.5328%;
    padding-bottom: 3.1vw;
    background-color: #fff;
}

.fcon04_word {
    margin-top: -1.1vw;
    font-size: calc(var(--px) * 140);
    line-height: 5.4vw;
    color: #000;
}

.fcon04_title {
    margin-top: 3.8vw;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    line-height: 3.1vw;
    letter-spacing: -0.16vw;
    color: #000;
}

.fcon04_title_point {
    color: var(--color-brown);
}

.fcon04_sub {
    margin-top: 0.7vw;
    font-family: var(--font-free);
    font-weight: 400;
    font-size: calc(var(--px) * 20);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #000;
}

.fcon04_data {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    margin-top: 2.3vw;
}

.fcon04_line {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    width: 42.2497%;
    height: 1px;
    left: 0;
    top: 9.8vw;
    background-color: #d7d3d2;
}

.fcon04_recover {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 15.5544%;
    margin-top: 4.8vw;
    margin-left: 16.5%;
}

.fcon04_recover_tt {
    font-family: var(--font-free);
    font-weight: 800;
    font-size: calc(var(--px) * 24);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #000;
}

.fcon04_recover_box {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    margin-top: 0.8vw;
    padding-top: calc(var(--px) * 29);
    padding-bottom: calc(var(--px) * 36);
    background-color: #000;
}

.fcon04_recover_icon {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 60);
    aspect-ratio: 60 / 71;
}

.fcon04_recover_icon img {
    width: 100%;
}

.fcon04_recover_num {
    margin-top: 0.2vw;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 53);
    line-height: 2.9vw;
    letter-spacing: 0;
    color: #f8e9bb;
}

.fcon04_recover_base {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding-top: calc(var(--px) * 9);
    padding-bottom: calc(var(--px) * 9);
    background-color: var(--color-point);
}

.fcon04_recover_note {
    font-family: var(--font-free);
    font-weight: 500;
    font-size: calc(var(--px) * 18);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #ede8e7;
}

.fcon04_donut {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: calc(var(--px) * 476);
    aspect-ratio: 476 / 476;
    margin-left: 5.1%;
}

.fcon04_rate_label {
    margin-top: 7.1vw;
    font-family: var(--font-free);
    font-weight: 500;
    font-size: calc(var(--px) * 22);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #fff;
}

.fcon04_rate_num {
    margin-top: 0.2vw;
    font-family: var(--font-poppins);
    font-weight: 800;
    font-size: calc(var(--px) * 84);
    line-height: 3.4vw;
    letter-spacing: 0;
    color: #f8e9bb;
}

.fcon04_table {
    width: 21.5285%;
    margin-top: 1.2vw;
    margin-left: 4.4%;
    border-top: calc(var(--px) * 5) solid var(--color-point);
}

.fcon04_thead_tr {
    height: calc(var(--px) * 49);
    border-bottom: 1px solid var(--color-point);
}

.fcon04_tr {
    height: calc(var(--px) * 50);
    border-bottom: 1px solid #eae8e9;
}

.fcon04_tr_01 {
    height: calc(var(--px) * 54);
}

.fcon04_tr_06 {
    height: calc(var(--px) * 65);
    border-bottom: 0;
}

.fcon04_tfoot_tr {
    height: calc(var(--px) * 51);
    background-color: #000;
}

/* 열 폭 — 첫 행(thead) 셀에만 지정 */
.fcon04_th:nth-child(1) {
    width: 35%;
}

.fcon04_th:nth-child(2) {
    width: 41%;
}

.fcon04_th:nth-child(3) {
    width: 24%;
}

.fcon04_th,
.fcon04_cell_name,
.fcon04_cell_amount,
.fcon04_cell_rate,
.fcon04_foot_name,
.fcon04_foot_val {
    text-align: center;
    vertical-align: middle;
    font-size: calc(var(--px) * 20);
    line-height: 1.3vw;
    letter-spacing: -0.05vw;
}

.fcon04_th,
.fcon04_cell_name,
.fcon04_cell_amount,
.fcon04_cell_rate {
    font-family: var(--font-free);
    font-weight: 600;
}

.fcon04_th,
.fcon04_cell_name,
.fcon04_cell_amount {
    color: #000;
}

.fcon04_cell_rate {
    color: var(--color-point);
}

.fcon04_cell_div {
    border-left: 1px solid #eae8e9;
}

/* 6행(기타부대비용 + 배달수수료 2줄) — 시안은 금액·비율이 이름 첫 줄 높이에 맞춰짐 (행 중앙보다 7px 위) */
.fcon04_tr_06 .fcon04_cell_div {
    padding-bottom: calc(var(--px) * 14);
}

.fcon04_cell_main {
    display: block;
}

.fcon04_cell_note {
    display: block;
    font-family: 'Suit';
    font-weight: 500;
    font-size: calc(var(--px) * 13);
    line-height: 0.8vw;
    letter-spacing: -0.04vw;
    color: #666;
}

.fcon04_foot_name,
.fcon04_foot_val {
    font-family: var(--font-nexon);
    font-weight: 700;
}

.fcon04_foot_name {
    color: #fff;
}

.fcon04_foot_val {
    color: #e2d5aa;
}

.fcon04_band {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 97.5328%;
    height: calc(var(--px) * 28);
    background-image: url('/images/fcon04_04.png');
}

.fcon04_block {
    width: 13.9108%;
    margin-top: 3.6vw;
    row-gap: 0.5vw;
}

.fcon04_block_item {
    height: calc(var(--px) * 71);
}

.fcon04_block_txt {
    font-size: calc(var(--px) * 47);
    line-height: 2.5vw;
}

/* ===== fcon02 — 5가지 원칙 (왼쪽 고정 타이틀 + 오른쪽 원칙 카드 5장) (plan: .planning/fcon02/plan.md)
   공통 재사용: c_title (style.css) · c_marquee_word (style.css) · flow_sd (common.css) — 차이값만 아래 .fcon02_* 에
   M01 pin(.fcon02_left) · M03 메뉴 교대 = js/animation.js / M02·M04 마퀴 = CSS keyframe ===== */
.fcon02 {
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    background-image: url('/images/fcon02_01.png');
    background-repeat: repeat-y;
    background-size: calc(var(--px) * 1920) auto;
    background-color: #fcf6e6;
}

/* 고정 프레임 753 = 핀 대상 (plan 메모 — 비이미지 height) */
.fcon02_left {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    flex-shrink: 0;
    width: calc(var(--px) * 952);
    height: calc(var(--px) * 932);
    box-sizing: border-box;
    padding-top: 7.8vw;
    padding-bottom: calc(var(--px) * 87); /* 고정 퀵바(.contact_service 87) 높이만큼 비움 — 포크 끝이 퀵바 윗선에 닿는다 (유저 지시 2026-10-28) */
    padding-left: calc(var(--px) * 15);
    overflow: hidden;
}

.fcon02_title {
    margin-top: 1.6vw;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    line-height: 3.4vw;
    letter-spacing: -0.16vw;
    color: #000;
}

.fcon02_title_point {
    color: var(--color-point);
}

.fcon02_desc {
    margin-top: 0.8vw;
    font-family: var(--font-free);
    font-weight: 400;
    font-size: calc(var(--px) * 20);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #000;
}

.fcon02_fork {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 149);
    aspect-ratio: 149 / 386;
    margin-top: 2.2vw;
}

.fcon02_cards {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    flex-shrink: 0;
    width: 44.252%;
    padding-top: 6.9vw;
    padding-bottom: 2.8vw;
}

.fcon02_card {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #000;
    background-color: #fff;
}

.fcon02_card_02 {
    margin-top: 1.5vw;
}

.fcon02_card_03 {
    margin-top: 1.3vw;
}

.fcon02_card_04 {
    margin-top: 1.6vw;
}

.fcon02_card_05 {
    margin-top: 1.6vw;
}

/* 검정 띠 65 (plan 메모 — 비이미지 height) */
.fcon02_card_bar {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: calc(var(--px) * 65);
    box-sizing: border-box;
    padding-left: calc(var(--px) * 43);
    padding-right: calc(var(--px) * 42);
    background-color: #000;
}

.fcon02_card_bar_line {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    height: 1px;
    margin-bottom: calc(var(--px) * 6);
    background-color: #373737;
}

.fcon02_card_bar_line_l {
    width: calc(var(--px) * 323);
}

.fcon02_card_bar_line_r {
    width: calc(var(--px) * 326);
}

.fcon02_card_label {
    font-family: var(--font-free);
    font-weight: 700;
    font-size: calc(var(--px) * 24);
    line-height: 1.8vw;
    letter-spacing: -0.04vw;
    color: #fff;
}

/* 카드 클리핑 프레임 402 (plan 메모 — 비이미지 height) */
.fcon02_card_body {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    height: calc(var(--px) * 402);
    box-sizing: border-box;
    overflow: hidden;
}

.fcon02_card_tt {
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 32);
    line-height: 2vw;
    letter-spacing: -0.05vw;
    color: #000;
}

.fcon02_card_tt_point {
    color: var(--color-point);
}

.fcon02_card_txt {
    font-family: var(--font-free);
    font-weight: 400;
    font-size: calc(var(--px) * 20);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #000;
}

/* 카드1 — 매장 (그릇 마퀴 M02) */
.fcon02_card_body_01 {
    padding-top: calc(var(--px) * 72);
}

.fcon02_card_body_01 > .fcon02_card_txt {
    margin-top: 0.9vw;
}

.fcon02_bowls {
    margin-top: 2.5vw;
}

/* 시작 위상: 이동량 89 / 트랙 1205 × 20s */
.fcon02_bowls_move {
    animation-delay: -1.48s;
}

.fcon02_bowls_item {
    align-items: flex-start;
}

.fcon02_bowl_01 {
    width: calc(var(--px) * 158);
    aspect-ratio: 158 / 130;
    margin-right: calc(var(--px) * 55);
}

.fcon02_bowl_02 {
    width: calc(var(--px) * 152);
    aspect-ratio: 152 / 133;
    margin-right: calc(var(--px) * 48);
}

.fcon02_bowl_03 {
    width: calc(var(--px) * 147);
    aspect-ratio: 147 / 155;
    margin-right: calc(var(--px) * 46);
}

.fcon02_bowl_04 {
    width: calc(var(--px) * 152);
    aspect-ratio: 152 / 146;
    margin-right: calc(var(--px) * 43);
}

.fcon02_bowl_05 {
    width: calc(var(--px) * 156);
    aspect-ratio: 156 / 153;
    margin-right: calc(var(--px) * 46);
}

.fcon02_bowl_06 {
    width: calc(var(--px) * 154);
    aspect-ratio: 154 / 130;
    margin-right: calc(var(--px) * 48);
}

/* 카드2 — 대중성 (메뉴 사진 교대 M03) */
.fcon02_card_body_02 {
    align-items: flex-start;
    padding-top: calc(var(--px) * 78);
    padding-left: calc(var(--px) * 95);
}

.fcon02_card_body_02 > .fcon02_card_txt {
    margin-top: 0.6vw;
}

/* 상태 CSS — 비활성 사진 opacity 0 / .on = 1 (JS 없이도 쯔란만 보임) */
.fcon02_menu_pic {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    opacity: 0;
}

.fcon02_menu_pic.on {
    opacity: 1;
}

.fcon02_menu_pic_01 {
    width: calc(var(--px) * 543);
    aspect-ratio: 543 / 538;
    left: 51.5%;
    top: -0.7vw;
}

.fcon02_menu_pic_02 {
    width: calc(var(--px) * 523);
    aspect-ratio: 523 / 481;
    left: 52.4%;
    top: 3.0vw;
}

.fcon02_menu_btns {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    row-gap: 0.4vw;
    margin-top: 1.5vw;
}

.fcon02_menu_btn {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 273);
    height: calc(var(--px) * 45);
    background-color: #efeadb;
    font-family: var(--font-free);
    font-weight: 500;
    font-size: calc(var(--px) * 18);
    line-height: 1.4vw;
    letter-spacing: -0.01vw;
    color: rgb(76 25 15 / 55%);
    transition: background-color 0.6s ease, color 0.6s ease;
}

.fcon02_menu_btn.on {
    background-color: var(--color-point);
    color: #fff;
}

/* 카드3 — 데이터 */
.fcon02_card_body_03 {
    align-items: flex-start;
    padding-top: calc(var(--px) * 97);
    padding-left: calc(var(--px) * 95);
}

.fcon02_card_body_03 > .fcon02_card_txt {
    margin-top: 3.1vw;
}

/* top 0 = 중앙 ±2 예외 유지 (plan 메모) */
.fcon02_data_pic {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 273);
    aspect-ratio: 273 / 403;
    left: 67.7%;
    top: 0;
}

.fcon02_tags {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    row-gap: 0.4vw;
    left: 60.3%;
    top: 5.1vw;
}

.fcon02_tag {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 100);
    height: calc(var(--px) * 32);
    background-color: var(--color-point);
    font-family: var(--font-free);
    font-weight: 500;
    font-size: calc(var(--px) * 17);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #fff;
}

/* 카드4 — 검증 (WOOGIPASTA. 마퀴 M04 — 갈색 박스 뒤) */
.fcon02_verify_flow {
    top: 0.6vw;
}

/* 시작 위상: 이동량 39 / 단어 주기 953.72 × 20s */
.fcon02_verify_move {
    animation-delay: -0.82s;
}

.fcon02_verify_word {
    margin-right: calc(var(--px) * 60);
    font-size: calc(var(--px) * 121);
    line-height: 6.4vw;
    white-space: nowrap;
    color: #f2e2d2;
    background: repeating-linear-gradient(135deg, #f2e2d2 0, #f2e2d2 calc(var(--px) * 6), #e7d7c7 calc(var(--px) * 6), #e7d7c7 calc(var(--px) * 7));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.fcon02_verify_box {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: calc(var(--px) * 230);
    padding-top: calc(var(--px) * 14);
    padding-bottom: calc(var(--px) * 23);
    background-color: var(--color-point);
}

.fcon02_verify_emblem {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 75);
    aspect-ratio: 75 / 109;
}

.fcon02_card_body_04 > .fcon02_card_tt {
    margin-top: 2.7vw;
}

.fcon02_card_body_04 > .fcon02_card_txt {
    margin-top: 1.4vw;
}

.fcon02_verify_deco {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    bottom: 0;
}

.fcon02_verify_deco_line {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: calc(var(--px) * 2);
    margin-bottom: calc(var(--px) * 2);
    background-color: #000;
}

.fcon02_verify_deco_band {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: calc(var(--px) * 9);
    border-top: 1px solid #000;
    background-color: #efe3bc;
}

/* 카드5 — 상품 */
.fcon02_goods_pic {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 203);
    aspect-ratio: 203 / 158;
    margin-top: -2.5vw;
    margin-left: 7%;
}

.fcon02_card_body_05 > .fcon02_card_tt {
    margin-top: 1.1vw;
}

.fcon02_card_body_05 > .fcon02_card_txt {
    margin-top: 0.9vw;
}

.fcon02_chips {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    column-gap: 0.7vw;
    margin-top: 1.8vw;
}

.fcon02_chip {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 119);
    height: calc(var(--px) * 42);
    background-color: var(--color-point);
    font-family: var(--font-free);
    font-weight: 700;
    font-size: calc(var(--px) * 20);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #fff;
}

/* ===== fcon05 — 3-Way 매출 구조 (DINING·TAKEOUT·DELIVERY 띠 3개 + 중앙 카드, 신호등 상태 순환) (plan: .planning/fcon05/plan.md)
   공통 재사용: c_marquee_word (style.css) · .rltv/.absol/.absol_cover/.txct (common.css)
   상태 클래스(.on/.next) 토글 = js/franchise.js — 전환은 아래 transition 0.6s ===== */
.fcon05 {
    padding-top: 6.4vw;
    padding-bottom: 6.1vw;
    background-color: #faf4e1;
    background-image: url('/images/fcon05_05.jpg'); /* 종이질감: #faf4e1 위 图层 0 color burn 0.149 합성 (시안 MAD 3.8, 단색 6.8) — fcon10·fcon14 와 같은 방식 */
}

.fcon05_badge {
    padding: calc(var(--px) * 5) calc(var(--px) * 38);
    background-color: var(--color-point);
    font-family: var(--font-free);
    font-weight: 600;
    font-size: calc(var(--px) * 22);
    line-height: 1.6vw;
    letter-spacing: -0.03vw;
    color: #fff;
}

.fcon05_title {
    margin-top: 0.6vw;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    line-height: 3.4vw;
    letter-spacing: -0.16vw;
    color: #000;
}

.fcon05_title_point {
    color: var(--color-point);
}

.fcon05_sub {
    margin-top: 0.5vw;
    font-family: var(--font-free);
    font-weight: 400;
    font-size: calc(var(--px) * 20);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #000;
}

.fcon05_stage {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    margin-top: 2.2vw;
}

.fcon05_list {
    width: 100%;
    border-bottom: 1px solid var(--color-point);
}

.fcon05_item {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    height: calc(var(--px) * 166);
    border-top: 1px solid var(--color-point);
}

.fcon05_item_02 {
    height: calc(var(--px) * 167);
}

.fcon05_btn {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 100%;
}

.fcon05_btn_l {
    justify-content: flex-end;
}

.fcon05_btn_r {
    justify-content: flex-start;
}

.fcon05_panel {
    top: 0;
    bottom: 0;
    width: 28.9764%;
    opacity: 0;
    background-color: var(--color-cream);
    transition: opacity 0.6s ease, background-color 0.6s ease;
}

.fcon05_panel::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.6s ease;
}

.fcon05_panel_l {
    left: 0;
}

.fcon05_panel_l::after {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 27.2%, rgba(0, 0, 0, 0.069) 54.2%, rgba(0, 0, 0, 0.222) 70.8%, rgba(0, 0, 0, 0.364) 83.3%, rgba(0, 0, 0, 0.578) 100%);
}

.fcon05_panel_r {
    right: 0;
}

.fcon05_panel_r::after {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0) 27.2%, rgba(0, 0, 0, 0.069) 54.2%, rgba(0, 0, 0, 0.222) 70.8%, rgba(0, 0, 0, 0.364) 83.3%, rgba(0, 0, 0, 0.578) 100%);
}

.fcon05_panel.next {
    opacity: 0.8;
}

.fcon05_panel.on {
    opacity: 1;
    background-color: var(--color-point);
}

.fcon05_panel.on::after {
    opacity: 1;
}

.fcon05_word {
    margin-right: 70%;
    font-size: calc(var(--px) * 101);
    line-height: 5.9vw;
    letter-spacing: -0.16vw;
    opacity: 0.1098;
    color: var(--color-point);
    -webkit-text-fill-color: var(--color-point);
    background-image: repeating-linear-gradient(135deg, #faf4e1 0, #faf4e1 calc(var(--px) * 6), #f0e9d6 calc(var(--px) * 6), #f0e9d6 calc(var(--px) * 7));
    -webkit-background-clip: text;
    background-clip: text;
    transition: opacity 0.6s ease, -webkit-text-fill-color 0.6s ease;
}

.fcon05_word.on {
    opacity: 1;
    -webkit-text-fill-color: transparent;
}

.fcon05_word_r {
    margin-right: 0;
    margin-left: 70.4%;
}

.fcon05_word_03 {
    margin-bottom: 0.3vw;
}

.fcon05_card {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: calc(var(--px) * 801);
    top: 1px;
    bottom: 1px;
    background-color: #fff;
    cursor: pointer; /* 카드 클릭 = 같은 높이의 띠 선택 (js/franchise.js) */
}

.fcon05_card_item {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    padding-top: calc(var(--px) * 36);
    padding-left: calc(var(--px) * 70);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.6s ease, visibility 0.6s ease;
}

.fcon05_card_item.on {
    opacity: 1;
    visibility: visible;
}

.fcon05_card_photo {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 250);
    aspect-ratio: 250 / 287;
    margin-top: 0.7vw;
}

.fcon05_card_char {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 171);
    aspect-ratio: 171 / 197;
    left: 13.6%;
    top: 7.7vw;
}

.fcon05_card_body {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-left: 8.8%;
}

.fcon05_card_top {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: calc(var(--px) * 339);
}

.fcon05_card_line {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 295);
    height: 1px;
    background: rgba(0, 0, 0, 0.2);
}

.fcon05_card_label {
    font-family: var(--font-free);
    font-weight: 700;
    font-size: calc(var(--px) * 18);
    line-height: 1.8vw;
    letter-spacing: -0.03vw;
    color: #000;
}

.fcon05_card_tt {
    margin-top: 8.4vw;
    font-family: var(--font-free);
    font-weight: 700;
    font-size: calc(var(--px) * 30);
    line-height: 1.8vw;
    letter-spacing: -0.05vw;
    color: #000;
}

.fcon05_card_desc {
    margin-top: 1.8vw;
    opacity: 0.902;
    font-family: var(--font-free);
    font-weight: 400;
    font-size: calc(var(--px) * 18);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #000;
}

/* ===== fcon06 — 가격 경쟁이 아닌 메뉴 경쟁 (NO/YES 박스 + 좌우 메뉴 패널, 신호등 상태 교대) (plan: .planning/fcon06/plan.md)
   공통 재사용: .rltv/.absol/.absol_cover/.obj/.txct (common.css) · section img (style.css)
   상태 클래스(.on) 토글 = js/franchise.js — 전환은 아래 transition 0.6s
   띠 하강(fcon06-m02)은 Animation Pass — 정적 = 종료 상태(띠 2행, NO 0.102) ===== */
.fcon06 {
    padding-top: 4.3vw;
    background-color: #fff;
}

.fcon06_ribbon {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 135);
    aspect-ratio: 135 / 44;
}

.fcon06_title {
    margin-top: 0.8vw;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    line-height: 3.4vw;
    letter-spacing: -0.16vw;
    color: #000;
}

.fcon06_title_point {
    color: var(--color-point);
}

/* 박스가 패널 묶음(positioned 자식 보유, DOM 뒤) 위로 겹침 — plan 메모 */
.fcon06_box {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: calc(var(--px) * 770);
    margin-top: 1.6vw;
    background-color: #000;
    z-index: 1;
}

.fcon06_band {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    left: 1px;
    right: 1px;
    bottom: 1px;
    height: calc(var(--px) * 119);
    background-color: var(--color-point);
}

.fcon06_vs {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    width: 100%;
}

.fcon06_vs_item {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 100%;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 35);
    line-height: 2.9vw;
    letter-spacing: -0.06vw;
    color: #fff;
}

.fcon06_vs_item_01 {
    height: calc(var(--px) * 120);
    opacity: 0.102;
}

.fcon06_vs_item_02 {
    height: calc(var(--px) * 121);
}

.fcon06_panels {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    width: 100%;
    margin-top: calc(var(--px) * -121);
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
}

.fcon06_panel {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    box-sizing: border-box;
}

.fcon06_panel_01 {
    width: 49.9738%;
    padding-left: calc(var(--px) * 172);
    border-right: 1px solid #000;
}

.fcon06_panel_02 {
    width: 50.0262%;
    flex-direction: row-reverse;
    padding-right: calc(var(--px) * 174);
}

.fcon06_panel_bg {
    opacity: 0;
    transition: opacity 0.6s ease;
}

.fcon06_panel_bg.on {
    opacity: 1;
}

.fcon06_panel_bg_01 img {
    object-position: right center;
}

.fcon06_panel_bg_02 img {
    object-position: left center;
}

.fcon06_txt {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
}

.fcon06_txt_01 {
    margin-top: 12.4vw;
}

.fcon06_txt_02 {
    align-items: flex-end;
    margin-top: 12.7vw;
    text-align: right;
}

.fcon06_star {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 96);
    aspect-ratio: 96 / 31;
    opacity: 0;
    transition: opacity 0.6s ease;
}

.fcon06_star.on {
    opacity: 1;
}

.fcon06_tt {
    margin-top: 1.5vw;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 35);
    line-height: 2.4vw;
    letter-spacing: -0.11vw;
    color: #000;
}

.fcon06_tt_02 {
    margin-top: 1.2vw;
    margin-right: calc(var(--px) * 3);
}

.fcon06_tt_point {
    color: var(--color-point);
}

.fcon06_desc {
    margin-top: 2.7vw;
    font-family: var(--font-free);
    font-weight: 500;
    font-size: calc(var(--px) * 20);
    line-height: 1.6vw;
    letter-spacing: 0;
    color: #000;
}

.fcon06_desc_02 {
    margin-top: 1.1vw;
}

.fcon06_cont {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    opacity: 0.329;
    transition: opacity 0.6s ease;
}

.fcon06_cont.on {
    opacity: 1;
}

.fcon06_cont_01 {
    width: calc(var(--px) * 387);
    aspect-ratio: 387 / 421;
    margin-top: 9.8vw;
}

.fcon06_cont_02 {
    width: calc(var(--px) * 378);
    aspect-ratio: 378 / 419;
    margin-top: 9.9vw;
}

/* ===== FCON07: 메뉴 소개 ===== */
.fcon07 {
    padding-top: 16.6vw;
    padding-bottom: 14.2vw;
    background-image: url('/images/fcon07_01.jpg');
}

.fcon07_nug img {
    width: 100%;
}

.fcon07_nug_08 {
    width: calc(var(--px) * 247);
    aspect-ratio: 247 / 227;
    left: 44.09%;
    top: -4.36vw;
}

.fcon07_nug_03 {
    width: calc(var(--px) * 213);
    aspect-ratio: 213 / 215;
    left: 21.15%;
    top: 3.1vw;
}

.fcon07_nug_02 {
    width: calc(var(--px) * 214);
    aspect-ratio: 214 / 215;
    left: 66.04%;
    top: 1.94vw;
}

.fcon07_nug_06 {
    width: calc(var(--px) * 213);
    aspect-ratio: 213 / 214;
    left: 15.17%;
    top: 23.67vw;
}

.fcon07_nug_07 {
    width: calc(var(--px) * 211);
    aspect-ratio: 211 / 216;
    left: 72.76%;
    top: 23.62vw;
}

.fcon07_nug_05 {
    width: calc(var(--px) * 212);
    aspect-ratio: 212 / 210;
    left: 32.49%;
    top: 37.27vw;
}

.fcon07_nug_04 {
    width: calc(var(--px) * 216);
    aspect-ratio: 216 / 214;
    left: 56.85%;
    top: 37.17vw;
}

.fcon07_vtxt {
    top: 0;
    bottom: 0;
    row-gap: 0.5vw;
}

.fcon07_vtxt_l {
    left: 3.7%;
}

.fcon07_vtxt_r {
    right: 3.8%;
}

.fcon07_vtxt_word {
    font-family: var(--font-free);
    font-weight: 700;
    font-size: calc(var(--px) * 22);
    line-height: 1.8vw;
    letter-spacing: 0;
    color: #fff;
}

.fcon07_title {
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    line-height: 3.4vw;
    letter-spacing: -0.16vw;
    color: #fff;
}

.fcon07_title_point {
    color: var(--color-cream);
}

.fcon07_sub {
    margin-top: 1.0vw;
    font-family: var(--font-free);
    font-weight: 600;
    font-size: calc(var(--px) * 20);
    line-height: 1.3vw;
    letter-spacing: -0.03vw;
    color: #fff;
}

.fcon07_more {
    margin-top: 4.1vw;
    border-bottom-color: #fff;
}

.fcon07_more_txt {
    color: #fff;
}

/* ===== fcon10 — 본사 직접 운영·데이터 검증 (✦✦✦ 장식 + 2톤 타이틀 + 서브 + 흰 카드 5장, 공통 c_title wrapper 재사용) (plan: .planning/fcon10/plan.md) ===== */
.fcon10 {
    padding-top: 5.2vw;
    padding-bottom: 5.8vw;
    background-image: url('/images/fcon10_01.jpg');
    background-color: #faf4e1;
}

.fcon10_deco {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.fcon10_line {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    height: 1px;
    background-color: rgba(76, 25, 15, 0.13);
}

.fcon10_line_01 {
    width: calc(var(--px) * 425);
    margin-right: calc(var(--px) * 38);
}

.fcon10_line_02 {
    width: calc(var(--px) * 429);
    margin-left: calc(var(--px) * 34);
}

.fcon10_stars {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    column-gap: 0.5vw;
}

.fcon10_star {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 26);
    aspect-ratio: 26 / 31;
}

.fcon10_title {
    margin-top: 1.5vw;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    line-height: 3.4vw;
    letter-spacing: -0.16vw;
    color: #000;
}

.fcon10_title_point {
    color: var(--color-point);
}

.fcon10_sub {
    margin-top: 1.2vw;
    font-family: var(--font-free);
    font-weight: 400;
    font-size: calc(var(--px) * 20);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #000;
}

.fcon10_list {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    margin-top: 2.7vw;
    column-gap: 1.3vw;
}

.fcon10_item {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    box-sizing: border-box;
    width: calc(var(--px) * 292);
    padding-top: calc(var(--px) * 40);
    padding-left: calc(var(--px) * 49);
    padding-bottom: calc(var(--px) * 51); /* 2026-10-20 본문 줄간격 1.3→1.2vw 로 줄어든 4px 보전 (카드 하단선 시안 y671) */
    border: 1px solid var(--color-point);
    background-color: #fff;
}

.fcon10_circle {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 85);
    height: calc(var(--px) * 85);
    margin-left: 47.3%;
    border-radius: 50%;
    background-color: #faf4e1;
}

.fcon10_icon {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.fcon10_icon_01 {
    width: calc(var(--px) * 49);
    aspect-ratio: 49 / 42;
}

.fcon10_icon_02 {
    width: calc(var(--px) * 49);
    aspect-ratio: 49 / 49;
}

.fcon10_icon_03 {
    width: calc(var(--px) * 38);
    aspect-ratio: 38 / 44;
}

.fcon10_icon_04 {
    width: calc(var(--px) * 46);
    aspect-ratio: 46 / 46;
}

.fcon10_icon_05 {
    width: calc(var(--px) * 39);
    aspect-ratio: 39 / 39;
}

.fcon10_item_tt {
    margin-top: 1.3vw;
    font-family: var(--font-nexon1);
    font-weight: 700;
    font-size: calc(var(--px) * 23);
    line-height: 1.2vw;
    color: #000;
}

.fcon10_item_txt {
    margin-top: 0.7vw;
    font-family: var(--font-free);
    font-weight: 400;
    font-size: calc(var(--px) * 19);
    line-height: 1.2vw;
    letter-spacing: 0;
    color: #000;
}

/* ===== fcon11 — 인테리어 (WOOGIPASTA 호버 원형 배너 + INTERIOR 타이틀 + 인테리어 사진 슬라이드, 공통 c_title·c_btn_pn 재사용) (plan: .planning/fcon11/plan.md) ===== */
.fcon11 {
    background-color: #fff;
}

/* 검정 패널 — 높이 고정 사유: plan 메모 (리빌 원이 패널 기준 좌표) */
.fcon11_banner {
    --fx: calc(var(--px) * 485.5);
    --fy: calc(var(--px) * 115);
    --fs: 0; /* 원 크기 배율 — 유저 지시(2026-10-22): 마우스가 없으면 원 없음. js/franchise.js 가 진입 시 0→1, 이탈 시 1→0 */
    width: calc(var(--px) * 1129);
    height: calc(var(--px) * 211);
    background-color: #000;
}

.fcon11_word {
    font-family: var(--font-poppins);
    font-weight: 800;
    font-size: calc(var(--px) * 140);
    line-height: 7.3vw;
    letter-spacing: 0;
    color: #faf4e1;
    white-space: nowrap;
}

/* fcon11-m01 호버 원형 리빌 — 원 안: 갈색 바탕 + 글자 파스타 채움 / 원 중심 = --fx·--fy, 반지름 75 × --fs
   위치·크기 보간은 js/franchise.js 가 매 프레임 직접 넣는다 (CSS transition 쓰면 이중 지연으로 끌려다님) */
.fcon11_reveal {
    background-color: var(--color-point);
    clip-path: circle(calc(var(--px) * 75 * var(--fs)) at var(--fx) var(--fy));
}

.fcon11_reveal_txt {
    background-image: url('/images/fcon11_06.png');
    background-repeat: no-repeat;
    background-size: calc(var(--px) * 150) calc(var(--px) * 150);
    background-position: calc(var(--fx) - var(--px) * 75) calc(var(--fy) - var(--px) * 75);
    -webkit-background-clip: text;
    background-clip: text;
}

.fcon11_reveal_txt .fcon11_word {
    color: transparent;
}

.fcon11_head {
    margin-top: 3.2vw;
}

.fcon11_eng {
    margin-top: 0.5vw;
    font-family: var(--font-poppins);
    font-weight: 800;
    font-size: calc(var(--px) * 15);
    line-height: 1vw;
    letter-spacing: 0.3vw;
    color: #000;
}

.fcon11_title {
    margin-top: 0.9vw;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    line-height: 3.4vw;
    letter-spacing: -0.16vw;
    color: #000;
}

.fcon11_title_point {
    color: var(--color-point);
}

.fcon11_sub {
    margin-top: 0.6vw;
    font-family: var(--font-free);
    font-weight: 400;
    font-size: calc(var(--px) * 20);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #000;
}

.fcon11_slide_wrap {
    width: 100%;
    margin-top: 2.3vw;
}

.fcon11_swiper {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    width: 100%;
}

.fcon11_slide {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 733);
    aspect-ratio: 733 / 425;
}

.fcon11_slide img {
    width: 100%;
}

/* z-index 2: Swiper .swiper{z-index:1} 스택 컨텍스트 위 (plan 메모) */
.fcon11_nav {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: calc(var(--px) * 1079);
    z-index: 2;
}

/* fcon11-m01 마우스 없는 기기(터치) — 따라다닐 커서가 없으니 시안 정지 상태(G 위치 원)를 그대로 보여준다 */
@media (hover: none) {
    .fcon11_banner {
        --fs: 1;
    }
}

/* ===== fcon12 — 창업 지원 6단계 가로 트랙 (plan: .planning/fcon12/plan.md) ===== */
.fcon12 {
    padding-top: 5.4vw;
    padding-bottom: 0; /* 유저 지시(2026-10-22): 갈색 프레임을 다음 섹션에 바로 붙임 */
    background-color: #fff;
}

.fcon12_frame {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 92.9659%;
    padding-top: 6.9vw;
    padding-bottom: 6.6vw;
    background-color: var(--color-point);
    overflow: hidden;
}

.fcon12_line {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    top: 20.7vw;
    left: 0;
    right: 0;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.15);
}

.fcon12_title {
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    line-height: 3.4vw;
    letter-spacing: -0.16vw;
    color: #fff;
}

.fcon12_title_point {
    color: var(--color-cream);
}

.fcon12_track {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    margin-top: 1.7vw;
}

.fcon12_plates {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-left: 11.1%;
    flex-shrink: 0;
}

.fcon12_plate {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.fcon12_plate_01 {
    width: calc(var(--px) * 79);
    aspect-ratio: 79 / 68;
}

.fcon12_plate_02 {
    width: calc(var(--px) * 74);
    aspect-ratio: 74 / 63;
    margin-left: calc(var(--px) * 4);
    margin-top: 1.4vw;
}

.fcon12_plate_03 {
    width: calc(var(--px) * 84);
    aspect-ratio: 84 / 77;
    margin-left: calc(var(--px) * 4);
    margin-top: 1.8vw;
}

.fcon12_plate_04 {
    width: calc(var(--px) * 72);
    aspect-ratio: 72 / 70;
    margin-left: calc(var(--px) * 5);
    margin-top: 1.2vw;
}

.fcon12_plate_05 {
    width: calc(var(--px) * 100);
    aspect-ratio: 100 / 63;
    margin-top: 1.4vw;
}

.fcon12_photo {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 358);
    aspect-ratio: 358 / 450;
    margin-left: 23.1%;
    margin-top: 0.1vw;
    flex-shrink: 0;
}

.fcon12_cards {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    margin-left: 26.1%;
    margin-top: 2.7vw;
    column-gap: 12.8vw;
    flex-shrink: 0;
}

.fcon12_card {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: calc(var(--px) * 465);
    flex-shrink: 0;
}

.fcon12_star {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 83);
    aspect-ratio: 83 / 99;
}

.fcon12_num {
    font-family: var(--font-poppins);
    font-weight: 700;
    font-size: calc(var(--px) * 20);
    line-height: 1.1vw;
    letter-spacing: -0.06vw;
    color: var(--color-point);
}

.fcon12_card_txt {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-left: 17.2%;
    margin-top: 1.2vw;
}

.fcon12_card_tt {
    font-family: var(--font-nexon);
    font-weight: 400;
    -webkit-text-stroke: 0.008em currentColor; /* PSD NEXON Lv2 Gothic Medium 웹폰트 없음 → 400 + 획 보강 (잉크 실측 시안 대비 99%) */
    font-size: calc(var(--px) * 27);
    line-height: 1.8vw;
    letter-spacing: -0.09vw;
    color: #fff;
    white-space: nowrap;
}

.fcon12_card_desc {
    font-family: var(--font-free);
    font-weight: 300;
    font-size: calc(var(--px) * 18);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #d8aea6;
    white-space: nowrap;
}

.fcon12_card_desc_01 {
    margin-top: 2.1vw;
}

.fcon12_card_desc_02 {
    margin-top: 1.3vw;
}

.fcon12_thumb {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 90);
    aspect-ratio: 90 / 160;
    top: -0.6vw;
    right: 0;
}

.fcon12_desc {
    margin-top: 2.4vw;
    font-family: var(--font-free);
    font-weight: 400;
    font-size: calc(var(--px) * 20);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #fff;
}

.fcon12_logo {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    width: calc(var(--px) * 360);
    height: calc(var(--px) * 450);
    left: -6.7%;
    top: 21.0vw;
    background-color: #0b0b0b;
    overflow: hidden;
}

.fcon12_logo_word {
    margin-left: 50%;
    font-family: var(--font-poppins);
    font-weight: 800;
    font-size: calc(var(--px) * 50);
    line-height: 3.6vw;
    letter-spacing: 0;
    color: var(--color-point);
    text-transform: uppercase;
    white-space: nowrap;
}

.fcon12_logo_word_02 {
    letter-spacing: 0.21vw;
}

.fcon12_logo_line {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 342);
    height: 1px;
    margin-left: 7.8%;
    background-color: var(--color-point);
}

/* fcon12 reduced-motion(≥600) — 핀 미생성 시 카드 02~06 가로 스크롤 접근 (plan 메모) */
@media (prefers-reduced-motion: reduce) and (min-width: 600px) {
    .fcon12_frame {
        overflow-x: auto;
    }
}

/* ===== fcon08 — 셰프 없는 주방 (타이틀 + 주방 정지컷 + 조리 5단계 카드 슬라이드 + WOOGI 잘림 워드) — 큰틀 fcon0809 1번째 영역 (plan: .planning/fcon08/plan.md · 큰틀 .planning/fcon0809/plan.md)
   공통 재사용: c_btn_pn · c_marquee_word (style.css) · .absol (common.css) — 차이값만 아래 .fcon08_* 에
   활성 카드 넓어짐: Swiper 격자 198 고정 + 활성 카드만 510 으로 넘침 + 활성 뒤 슬라이드 translateX(341) (fcon08-m01) ===== */
.fcon08 {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    position: relative;
    width: 100%;
    overflow: hidden;
    padding-top: 5.4vw;
    padding-bottom: 6.6vw;
}

.fcon08_text {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-left: 12.2%;
    margin-top: 6.0vw;
}

.fcon08_title {
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    line-height: 3.4vw;
    letter-spacing: -0.16vw;
    color: #000;
}

.fcon08_title_point {
    color: var(--color-point);
}

.fcon08_sub {
    margin-top: 1.9vw;
    font-family: var(--font-free);
    font-weight: 500;
    font-size: calc(var(--px) * 20);
    line-height: 1.6vw;
    letter-spacing: 0;
    color: #000;
}

/* 우측 칼럼 — x953 → 뷰포트 우측 끝 (트랙 블리드) */
.fcon08_right {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 49.9738%;
}

.fcon08_media {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 839);
    aspect-ratio: 839 / 465;
    overflow: hidden; /* aspect-ratio 자동 최소높이 해제 — 없으면 영상 고유 높이(480 비율)로 박스가 늘어남 */
}

/* 주방 영상 — 원본 854×480(1.779) 을 시안 프레임 839×465(1.804) 에 채움. 비율 차 1.4% 라 cover 로 위아래 미세 크롭 (video-facade 와 같은 예외) */
.fcon08_video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 트랙 클립 창 — 왼쪽 이탈 카드·우측 블리드 잘림 */
.fcon08_steps {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    margin-top: 2.1vw;
    overflow: hidden;
}

/* 컨테이너 = 슬라이드 1장 폭 (maxTranslate 4×198 → 05 까지 좌측 정렬). Swiper .swiper{margin:auto;overflow:hidden} 덮어씀 */
/* flex 3줄 = css-check div flex 강제 대응 (main_swiper 선례). column + flex-start 라 wrapper(width 100%) 배치는 block 과 동일 */
.fcon08_swiper {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: calc(var(--px) * 198);
    margin-left: 0;
    margin-right: 0;
    overflow: visible;
}

/* div. 접두 = common.css `div.swiper-slide{column/center/center}` (0,1,1) 를 이기기 위함 — 카드 좌측 정렬 */
div.fcon08_slide {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    width: calc(var(--px) * 198);
    transition: transform 0.5s ease;
}

/* 활성 뒤 슬라이드 — 활성 카드 510 + 간격 29 − 198 = 341 */
.fcon08_slide.swiper-slide-active ~ .fcon08_slide {
    transform: translateX(calc(var(--px) * 341));
}

/* 비활성 카드 — 갈색 11px + 안쪽 흰 1px + 검정 (height = 상태 전환 시 트랙 높이 고정, plan 메모) */
.fcon08_card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    width: calc(var(--px) * 179);
    height: calc(var(--px) * 176);
    border: calc(var(--px) * 11) solid var(--color-point);
    box-shadow: inset 0 0 0 1px #fff;
    background-color: #000;
    box-sizing: border-box;
    overflow: hidden; /* 비활성 전환(510→179 축소) 중 페이드아웃되는 설명이 카드 밖으로 비치지 않게 */
    transition: width 0.5s ease, height 0.5s ease, border-width 0.5s ease, border-color 0.5s ease, background-color 0.5s ease, box-shadow 0.5s ease;
}

/* 활성 카드 */
.swiper-slide-active .fcon08_card {
    justify-content: flex-start;
    align-items: flex-start;
    width: calc(var(--px) * 510);
    height: calc(var(--px) * 177);
    padding-top: calc(var(--px) * 59);
    padding-left: calc(var(--px) * 42);
    border: 1px solid #000;
    box-shadow: none;
    background-color: #fff;
}

.fcon08_card_head {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    column-gap: 0.8vw;
    transition: opacity 0.35s ease; /* .is_swap 해제 시 새 자리에서 페이드인 */
}

.swiper-slide-active .fcon08_card_head {
    justify-content: flex-start;
}

/* 활성 전환 중 제목 위치 점프 가림 — js/slide.js 가 바뀌는 두 카드에 .is_swap 을 0.4s 붙였다 뗀다 (유저 지시 2026-10-22) */
.fcon08_card.is_swap .fcon08_card_head {
    opacity: 0;
    transition: none;
}

/* 숫자 배지 — 활성만 표시 */
.fcon08_card_num {
    display: none;
    opacity: 0;
    transition: opacity 0.2s ease, display 0.2s allow-discrete; /* 비활성으로 바뀔 때 0.2s 페이드아웃 후 사라짐 */
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 40);
    height: calc(var(--px) * 29);
    background-color: #000;
    font-family: var(--font-free);
    font-weight: 700;
    font-size: calc(var(--px) * 15);
    line-height: 0.8vw;
    letter-spacing: -0.02vw;
    color: #fff;
}

.swiper-slide-active .fcon08_card_num {
    display: flex;
    opacity: 1;
    transition: opacity 0.4s ease 0.2s, display 0.4s allow-discrete; /* 등장: 카드 확장 중 0.2s 뒤 페이드인 (@starting-style) */
}

@starting-style {
    .swiper-slide-active .fcon08_card_num {
        opacity: 0;
    }
}

.fcon08_card_tt {
    font-family: var(--font-free);
    font-weight: 700;
    font-size: calc(var(--px) * 24);
    line-height: 1.6vw;
    letter-spacing: -0.04vw;
    color: #fff;
    text-align: center;
    transition: color 0.5s ease;
}

.swiper-slide-active .fcon08_card_tt {
    color: #000;
    text-align: left;
}

/* 비활성 2줄 줄바꿈 → 활성 한 줄 */
.swiper-slide-active .fcon08_card_br {
    display: none;
}

/* 단계 설명 — 활성만 표시 */
.fcon08_card_desc {
    display: none;
    opacity: 0;
    transition: opacity 0.1s ease, display 0.1s allow-discrete; /* 비활성: 카드가 줄기 전에 바로 사라져 줄바꿈 변화가 안 보이게 */
    margin-top: 0.8vw;
    font-family: var(--font-free);
    font-weight: 500;
    font-size: calc(var(--px) * 19);
    line-height: 1.1vw;
    letter-spacing: 0;
    color: #000;
}

.swiper-slide-active .fcon08_card_desc {
    display: block;
    opacity: 1;
    transition: opacity 0.35s ease 0.5s, display 0.85s allow-discrete; /* 유저 지시: 카드 넓어짐(0.5s)이 끝난 뒤 나타나 줄바꿈 재배치가 안 보이게 */
}

@starting-style {
    .swiper-slide-active .fcon08_card_desc {
        opacity: 0;
    }
}

.fcon08_nav {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    column-gap: calc(var(--px) * 20);
    margin-top: 1.6vw;
}

/* WOOGI — 좌측(−28)·하단 24px 블리드, .fcon08 overflow:hidden 으로 잘림 */
.fcon08_word {
    left: -1.5%;
    top: 44.4vw;
    font-size: calc(var(--px) * 219);
    line-height: 8.3vw;
    color: var(--color-point);
    white-space: nowrap;
}

/* ===== FCON15: 창업절차 (plan: .planning/fcon15/plan.md) ===== */
.fcon15 {
    padding-bottom: 5.2vw;
}

/* 줄무늬 = PSD 선 레이어(#4c190f 20%, 20px 주기) */
.fcon15_band {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 100%;
    border-bottom: 1px solid var(--color-point);
    background-color: var(--color-cream);
    background-image: repeating-linear-gradient(90deg, rgba(76, 25, 15, 0.2) 0, rgba(76, 25, 15, 0.2) 1px, transparent 1px, transparent calc(var(--px) * 20));
    background-position: calc(var(--px) * 2) 0;
}

.fcon15_logo {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: calc(var(--px) * 238);
    padding-top: calc(var(--px) * 10);
    padding-bottom: calc(var(--px) * 18);
    background-color: var(--color-point);
}

.fcon15_logo_img {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 61);
    aspect-ratio: 61 / 89;
}

.fcon15_head {
    margin-top: 4.8vw;
}

.fcon15_title {
    margin-top: 0.9vw;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    line-height: 3.4vw;
    letter-spacing: -0.16vw;
    color: #000;
}

.fcon15_title_point {
    color: var(--color-point);
}

.fcon15_sub {
    margin-top: 0.4vw;
    font-family: var(--font-free);
    font-weight: 400;
    font-size: calc(var(--px) * 20);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #000;
}

.fcon15_list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    width: 75.5906%;
    margin-top: 2.4vw;
    row-gap: 1.6vw;
}

/* reset box-sizing:unset = content-box → 보더 2px 제외 333 */
.fcon15_item {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    width: 23.125%;
    padding: calc(var(--px) * 39) 0 calc(var(--px) * 38);
    border: 1px solid var(--color-point);
    background-color: #fff;
}

.fcon15_item_07 {
    background-color: #faf4e1;
}

.fcon15_num {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 48);
    height: calc(var(--px) * 50);
    background-color: var(--color-point);
    font-family: var(--font-poppins);
    font-weight: 600;
    font-size: calc(var(--px) * 20);
    line-height: 1vw;
    letter-spacing: 0;
    color: #fff;
}

.fcon15_item_tt {
    margin-top: calc(var(--px) * 2);
    margin-left: 5.1%;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 25);
    line-height: 1.3vw;
    letter-spacing: -0.04vw;
    color: #000;
}

/* 07 카드 우측 모서리 부착 — 세로는 부모 flex center */
.fcon15_food {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    right: 0;
    width: calc(var(--px) * 137);
    aspect-ratio: 137 / 75;
}

/* 카드 보더를 넘어 카드 사이로 튀어나옴 — 세로는 부모 flex center */
.fcon15_arrow {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    left: 96.2%;
    width: calc(var(--px) * 36);
    aspect-ratio: 36 / 25;
}

/* fcon08-m01 reduced-motion — 즉시 전환 (js/slide.js speed 0 과 짝) */
@media (prefers-reduced-motion: reduce) {
    .fcon08_card,
    .fcon08_card_tt,
    div.fcon08_slide {
        transition: none;
    }
}

/* ===== fcon09 — 고객 리뷰 (접시 + PASTA 외곽선 워드 + 누적리뷰·평점 + 리뷰카드 마퀴) — 큰틀 fcon0809 2번째 영역 (plan: .planning/fcon09/plan.md · 큰틀 .planning/fcon0809/plan.md)
   공통 재사용: c_marquee_word (style.css) · flow_sd · .rltv/.absol/.back_img/.txct (common.css) — 차이값만 아래 .fcon09_* 에 ===== */
.fcon09 {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    overflow: hidden;
    padding-bottom: 5.2vw;
    background-image: url('/images/fcon09_13.jpg');
    font-family: var(--font-free);
}

/* PASTA 외곽선 — 영역 위·우측 밖으로 잘리는 데코 (박스→ink 오프셋 left 12 / top 29) */
/* PASTA 외곽선 — 유저 지시(2026-10-22): 텍스트 stroke 가 시안보다 두꺼워 이미지로 교체
   PSD 「pasta」 텍스트 레이어 글리프(724×159)의 안쪽 1px 테두리를 #f3e1b6 으로 뽑은 PNG. 좌표 = 글리프 ink (1203.5, −15) / 1905 */
.fcon09_word {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 724);
    aspect-ratio: 724 / 159;
    left: 63.2%;
    top: -0.8vw;
}

.fcon09_dish {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 611);
    aspect-ratio: 611 / 280;
}

/* 음수 margin — 접시 하단 투명 47px 와 겹침 (plan 메모) */
.fcon09_title {
    margin-top: -0.7vw;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    line-height: 3.4vw;
    letter-spacing: -0.2vw;
    color: #ffffff;
}

.fcon09_title_point {
    color: var(--color-cream);
}

.fcon09_desc {
    margin-top: 0.4vw;
    font-weight: 400;
    font-size: calc(var(--px) * 20);
    line-height: 1.3vw;
    letter-spacing: 0;
    color: #ffffff;
}

.fcon09_row {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    margin-top: 2.1vw;
}

/* 2단 행의 좌측 레이아웃 칼럼 — 칼럼 + 창 = 마퀴 창 x775 시작 */
.fcon09_stat {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 28.5827%;
    flex-shrink: 0;
    margin-left: 12.1%;
    padding-top: 3.0vw;
}

.fcon09_stat_label {
    font-weight: 700;
    font-size: calc(var(--px) * 30);
    line-height: 1.6vw;
    color: #ffffff;
}

.fcon09_stat_label_02 {
    margin-top: 1.6vw;
}

.fcon09_stat_num {
    margin-top: 0.4vw;
    font-family: var(--font-poppins);
    font-weight: 800;
    font-size: calc(var(--px) * 82);
    line-height: 4.3vw;
    letter-spacing: -0.1vw;
    color: #eddcaf;
}

/* 구분선 — 칼럼(544.5)보다 길어 우측으로 넘침, 마퀴 트랙이 위에 페인트 */
.fcon09_stat_line {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 786);
    height: 1px;
    margin-top: 2.6vw;
    margin-left: 0.6%;
    background-color: rgba(255, 255, 255, 0.2);
}

.fcon09_stat_note {
    margin-top: 0.8vw;
    margin-left: 69.0%;
    font-weight: 600;
    font-size: calc(var(--px) * 17);
    line-height: 0.9vw;
    letter-spacing: 0;
    color: rgba(255, 255, 255, 0.5);
}

/* 마퀴 창 — 공통 width 100% 덮음 (x 775~1905) */
.fcon09_flow {
    width: 59.3176%;
    flex-shrink: 0;
}

/* 속도: 트랙 4433 / 40s = 110.8px/s (공통 20s 의 절반 — plan 메모) */
.fcon09_move {
    animation-duration: 40s;
}

.fcon09_card {
    width: calc(var(--px) * 356);
    aspect-ratio: 356 / 493;
    margin-right: calc(var(--px) * 47);
}

/* ===== fcon13 — 매장의 지속가능한 성장 (WITH WOOGIPASTA 워드 + 포크 + 좌우 호버 2패널, 공통 c_marquee_word 재사용) (plan: .planning/fcon13/plan.md)
   공통 재사용: .rltv/.absol/.absol_cover/.obj/.txct (common.css) · c_marquee_word (style.css) · section img (style.css)
   상태 클래스(.on) 토글 = js/franchise.js (mousemove 좌표 판정) — 전환은 즉시(opacity), transition 없음 ===== */
.fcon13 {
    padding-top: 2.5vw;
    background-color: #fff;
}

.fcon13_stage {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    width: 100%;
    overflow: hidden;
}

.fcon13_panel {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
}

.fcon13_panel_01 {
    width: 49.9738%;
}

.fcon13_panel_02 {
    width: 50.0262%;
}

.fcon13_photo {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.fcon13_photo_01 {
    width: calc(var(--px) * 362);
    aspect-ratio: 362 / 570;
    left: 0;
    top: 10.7vw;
}

.fcon13_photo_02 {
    width: calc(var(--px) * 350);
    aspect-ratio: 350 / 554;
    right: 0;
    top: 11vw;
}

.fcon13_card {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: calc(var(--px) * 750);
    margin-top: 23.8vw;
}

.fcon13_card_01 {
    margin-left: 10.3%;
}

.fcon13_card_02 {
    margin-left: 11.1%;
}

.fcon13_card_img {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 100%;
    aspect-ratio: 750 / 545;
}

.fcon13_tab {
    font-family: var(--font-nexon);
    font-weight: 400;
    -webkit-text-stroke: 0.004em currentColor; /* PSD NEXON Lv2 Gothic Medium 웹폰트 없음 → 400 + 획 보강 (잉크 실측 시안 대비 100%, 동일 서식 .fcon13_off_tt 기준 — 탭은 시안 상태에서 안 보여 직접 측정 불가) */
    font-size: calc(var(--px) * 25);
    line-height: 3.4vw;
    color: #fff;
}

.fcon13_card_tt {
    margin-top: 3.7vw;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 30);
    line-height: 1.9vw;
    letter-spacing: -0.09vw;
    color: #000;
}

.fcon13_card_tt_point {
    color: var(--color-point);
}

.fcon13_card_desc {
    margin-top: 0.8vw;
    font-family: var(--font-free);
    font-weight: 400;
    font-size: calc(var(--px) * 18);
    line-height: 1.2vw;
    letter-spacing: 0;
    color: #544828;
}

.fcon13_list {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    margin-top: 1.9vw;
    gap: 0.5vw;
}

.fcon13_list_02 {
    margin-left: calc(var(--px) * 7);
}

.fcon13_item {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    width: calc(var(--px) * 295);
    height: calc(var(--px) * 44);
    background-color: #000;
    font-family: var(--font-free);
    font-weight: 400;
    font-size: calc(var(--px) * 20);
    line-height: 1.5vw;
    letter-spacing: 0;
    color: #fff;
}

.fcon13_item_02 {
    padding-right: calc(var(--px) * 7);
}

/* 비활성 덮개 — 기본 보임, .on 이면 숨김 (활성 레이어는 항상 렌더) */
.fcon13_off {
    opacity: 1;
    transition: opacity 0.5s ease;
}

.fcon13_off.on {
    opacity: 0;
}

.fcon13_off_tt {
    margin-top: 28vw;
    font-family: var(--font-nexon);
    font-weight: 400;
    -webkit-text-stroke: 0.004em currentColor; /* PSD NEXON Lv2 Gothic Medium 웹폰트 없음 → 400 + 획 보강 (잉크 실측 시안 대비 100%) */
    font-size: calc(var(--px) * 25);
    line-height: 1.9vw;
    color: #fff;
}

.fcon13_off_tt_01 {
    margin-right: calc(var(--px) * 40);
}

.fcon13_off_tt_02 {
    margin-right: calc(var(--px) * 26);
}

/* 워드·서브가 두 패널 경계를 가로질러 겹치는 오버레이 — 부모 꽉 채움(중앙 흉내 아님) */
.fcon13_head {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    left: 0;
    top: 0;
    width: 100%;
}

.fcon13_word {
    margin-top: -1.1vw;
    font-size: calc(var(--px) * 140);
    line-height: 6.2vw;
    color: var(--color-cream);
    background: repeating-linear-gradient(135deg, var(--color-cream) 0, var(--color-cream) calc(var(--px) * 6), #ddd0ae calc(var(--px) * 6), #ddd0ae calc(var(--px) * 7));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.fcon13_title {
    margin-top: 5.6vw;
    margin-left: calc(var(--px) * 7);
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    line-height: 3.4vw;
    letter-spacing: -0.16vw;
    color: #fff;
}

.fcon13_title_point {
    color: var(--color-cream);
}

/* 흰 띠 위로 돌출 + stage overflow 밖 — 가로는 부모 section flex center, top 만 */
.fcon13_fork {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 149);
    aspect-ratio: 149 / 338;
    top: 0;
}

/* ===== fcon14 — 우기파스타 창업비용 (2톤 타이틀 + 흰 박스 비용표 + 갈색 띠 영문 마퀴, 공통 c_title·c_marquee_word·flow_sd 재사용) (plan: .planning/fcon14/plan.md) ===== */
.fcon14 {
    padding-top: 6.8vw;
    background-image: url('/images/fcon14_01.jpg');
    background-color: #faf4e1;
}

.fcon14_title {
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    line-height: 3.4vw;
    letter-spacing: -0.16vw;
    color: #000;
}

.fcon14_title_point {
    color: var(--color-point);
}

.fcon14_box {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    box-sizing: border-box;
    width: calc(var(--px) * 959);
    margin-top: 1.3vw;
    padding-top: calc(var(--px) * 57);
    padding-bottom: calc(var(--px) * 56);
    border: 1px solid var(--color-point);
    background-color: #fff;
}

.fcon14_table {
    width: calc(var(--px) * 808);
    table-layout: fixed;
    border-collapse: separate;
}

.fcon14_head,
.fcon14_cell {
    font-family: var(--font-free);
    font-weight: 600;
    font-size: calc(var(--px) * 20);
    line-height: 1.3vw;
    letter-spacing: -0.03vw;
    color: #000;
    text-align: center;
}

.fcon14_head {
    height: calc(var(--px) * 46);
    border-top: calc(var(--px) * 4) solid var(--color-point);
    border-bottom: 1px solid var(--color-point);
}

.fcon14_cell {
    height: calc(var(--px) * 44);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.fcon14_cell_first {
    padding-top: calc(var(--px) * 4);
}

.fcon14_cell_last {
    padding-bottom: calc(var(--px) * 4);
    border-bottom: 0;
}

.fcon14_col_01 {
    width: calc(var(--px) * 390);
    padding-right: calc(var(--px) * 14);
    border-right: 1px solid rgba(0, 0, 0, 0.1);
}

.fcon14_col_02 {
    padding-left: calc(var(--px) * 7);
}

.fcon14_total {
    height: calc(var(--px) * 56);
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 22);
    line-height: 1.4vw;
    letter-spacing: -0.07vw;
    color: var(--color-cream);
    text-align: center;
    background-color: #000;
    background-clip: padding-box;
}

.fcon14_total_01 {
    padding-right: calc(var(--px) * 40);
    border-left: calc(var(--px) * 22) solid transparent;
}

.fcon14_total_02 {
    padding-left: calc(var(--px) * 26);
    border-right: calc(var(--px) * 21) solid transparent;
}

.fcon14_band {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 66.6667%;
    margin-top: -2.2vw;
    padding-top: calc(var(--px) * 32);
    padding-bottom: calc(var(--px) * 39);
    background-color: var(--color-point);
}

.fcon14_move {
    animation-delay: -3.6s;
}

.fcon14_word {
    font-size: calc(var(--px) * 135);
    line-height: 7.1vw;
    color: #fff;
}

.fcon14_dot {
    margin: 0 calc(var(--px) * 102);
}

/* ===== fcon16 창업 문의 폼 (plan: .planning/fcon16/plan.md) =====
   공통 재사용: c_ticker (sub_common.css) · flow_sd* (common.css) — 재선언 없음, 차이값만 .fcon16_*
   absol 3개(band·photo_01·photo_02) 뒤 static 형제(.fcon16_txt·.fcon16_form)는 .rltv 로 페인트 순서 확보 */
.fcon16 {
    background-color: #0b0b0b;
}

.fcon16_box {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    width: 97.6903%;
    padding: 4.0vw calc(var(--px) * 212) 2.3vw calc(var(--px) * 212);
    box-sizing: border-box;
    overflow: hidden;
    background-color: #4c190f;
    background-image: repeating-linear-gradient(90deg, transparent 0 calc(var(--px) * 54), rgba(0, 0, 0, 0.051) calc(var(--px) * 54) calc(var(--px) * 221));
    background-position: calc(var(--px) * 131) 0;
    background-size: calc(var(--px) * 221) 100%;
}

/* 영문 띠 — .c_ticker(var(--color-point)) 배경을 같은 특이도로 덮는다 (franchise.css 가 sub_common.css 뒤 로드) */
.fcon16_band {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    left: 0;
    right: 0;
    top: 37.7vw;
    padding-top: calc(var(--px) * 12);
    padding-bottom: calc(var(--px) * 14);
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    background-color: rgba(0, 0, 0, 0.2);
}

.fcon16_tk_item {
    margin-right: calc(var(--px) * 16);   /* STEP 9 보정: 단어→점 간격 렌더 −1px */
    font-family: var(--font-montserrat);
    font-weight: 700;
    font-size: calc(var(--px) * 21);
    letter-spacing: -0.03vw;
    line-height: 1.3vw;
    color: #180000;
}

.fcon16_tk_dot {
    margin-right: calc(var(--px) * 16);   /* STEP 9 보정: 점→단어 간격 렌더 −2px */
}

.fcon16_photo {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.fcon16_photo_01 {
    width: calc(var(--px) * 1115);
    aspect-ratio: 1115 / 950;
    left: calc(var(--px) * 349);   /* STEP 9 보정: 18.8%(349.87) → 렌더 +1px, 정수 px 로 고정 */
    top: calc(var(--px) * -234);   /* STEP 9 보정: -12.2vw(-232.4) → 렌더 +1px, -233 도 +1px 잔존 → -234 */
}

.fcon16_photo_02 {
    width: calc(var(--px) * 550);
    aspect-ratio: 550 / 559;
    left: 67.8%;
    top: 25.6vw;
}

.fcon16_txt {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 15.0vw;
}

.fcon16_title {
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 50);
    letter-spacing: -0.16vw;
    line-height: 3.4vw;
    color: #fff;
}

.fcon16_title_point {
    color: var(--color-cream);
}

.fcon16_desc {
    margin-top: 1.1vw;
    font-family: var(--font-free);
    font-weight: 400;
    font-size: calc(var(--px) * 20);
    letter-spacing: 0;
    line-height: 1.5vw;
    color: #fff;
}

.fcon16_form {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    flex-shrink: 0;
    width: calc(var(--px) * 585);
    padding: 4.9vw calc(var(--px) * 57) 3.6vw calc(var(--px) * 57);
    box-sizing: border-box;
    background-color: #fff;
}

.fcon16_fields {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-end;
    align-self: flex-start;
    width: calc(var(--px) * 461);
}

.fcon16_list {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    row-gap: 1.2vw;
    width: 100%;
}

.fcon16_row {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
}

.fcon16_row_06 {
    margin-top: 0.3vw;
}

.fcon16_label {
    margin-top: 0.6vw;
    font-family: var(--font-nexon);
    font-weight: 700;
    font-size: calc(var(--px) * 20);
    letter-spacing: -0.06vw;
    line-height: 1.3vw;
    color: #000;
}

.fcon16_req {
    margin-right: calc(var(--px) * 5);
    color: var(--color-point);
}

.fcon16_field {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    width: calc(var(--px) * 305);
}

/* 입력·셀렉트·문의내용 공통 칸 (리셋이 border·background·appearance 를 지운 상태에서 다시 그림) */
.fcon16_input,
.fcon16_select,
.fcon16_textarea {
    box-sizing: border-box;
    border: 1px solid #d7d3d2;
    background-color: #fff;
    font-family: var(--font-free);
    font-size: calc(var(--px) * 19);
    letter-spacing: 0;
}

.fcon16_input {
    width: 100%;
    height: calc(var(--px) * 50);
    padding: 0 calc(var(--px) * 19);
    font-weight: 500;
    color: #000;
}

.fcon16_select {
    width: calc(var(--px) * 145);
    height: calc(var(--px) * 50);
    padding-left: calc(var(--px) * 19);
    background: #fff url('/images/fcon16_03.png') no-repeat right calc(var(--px) * 18) center / calc(var(--px) * 15) calc(var(--px) * 9);
    font-weight: 600;
    color: rgba(0, 0, 0, 0.7);
    cursor: pointer;
}

.fcon16_textarea {
    width: 100%;
    height: calc(var(--px) * 123);
    padding: calc(var(--px) * 15) calc(var(--px) * 19);
    resize: none;
    font-weight: 500;
    color: #000;
}

.fcon16_agree {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    width: calc(var(--px) * 305);
    margin-top: 0.7vw;
}

/* 원형 체크박스 — 리셋 appearance:none 위에 원을 그린다. 체크 상태는 판단값(포인트색 + 안쪽 흰 링) */
.fcon16_agree_chk {
    flex-shrink: 0;
    width: calc(var(--px) * 16);
    height: calc(var(--px) * 16);
    box-sizing: border-box;
    border: 1px solid var(--color-point);
    border-radius: 50%;
    background-color: #fff;
    cursor: pointer;
}

.fcon16_agree_chk:checked {
    background-color: var(--color-point);
    box-shadow: inset 0 0 0 calc(var(--px) * 3) #fff;
}

.fcon16_agree_txt {
    margin-left: calc(var(--px) * 6);
    font-family: var(--font-free);
    font-weight: 500;
    font-size: calc(var(--px) * 18);
    letter-spacing: -0.05vw;
    line-height: 1.1vw;
    color: var(--color-point);
    cursor: pointer;
}

.fcon16_submit {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: calc(var(--px) * 458);
    height: calc(var(--px) * 54);
    margin-top: 1.1vw;
    background-color: #000;
    font-family: var(--font-free);
    font-weight: 700;
    font-size: calc(var(--px) * 22);
    letter-spacing: -0.05vw;
    color: #fff;
}

/* ===== 모바일 (599 이하) — mobile-process 스킬 ===== */
@media (max-width: 599px) {
    /* f_subnav 탭 — 공통 h_nav 모바일 균등 분할을 따르도록 PC 고정폭 해제 (sub_common.css) */
    .f_subnav_btn {
        width: 100%;
    }

    /* 고정 서브헤더 아래에서 시작 — 헤더(--hd-h 15vw) + 회색선 1 + 탭바(테두리 1 + 탭 11vw + 테두리 1) */
    .fcon01 {
        margin-top: calc(var(--hd-h) + 11vw + 3px);
    }

    /* ===== fcon08 모바일 — 텍스트 → 사진 → 카드 트랙 → 버튼 → WOOGI(하단 잘림) 세로 흐름 (시안 없음, plan 판단값) ===== */
    /* overflow clip — 뷰포트보다 넓은 WOOGI 때문에 hidden 박스가 스크롤 가능해져, 슬라이드 이동 시 브라우저가 .fcon08 을 가로 21px 스크롤하던 문제 차단 (hidden = 구형 브라우저 폴백) */
    .fcon08 {
        flex-direction: column;
        align-items: center;
        padding-top: 13.3vw;
        padding-bottom: 0;
        overflow: hidden;
        overflow: clip;
    }

    .fcon08_text {
        align-items: center;
        margin-left: 0;
        margin-top: 0;
    }

    .fcon08_title {
        font-size: 6.4vw;
        line-height: 8.7vw;
        letter-spacing: -0.3vw;
        text-align: center;
    }

    .fcon08_sub {
        margin-top: 3.2vw;
        font-size: 3.5vw;
        line-height: 5.6vw;
        text-align: center;
        word-break: keep-all;
    }

    .fcon08_right {
        align-items: center;
        width: 89.3%;
        margin-top: 8vw;
    }

    .fcon08_media {
        width: 100%;
    }

    .fcon08_steps {
        margin-top: 4vw;
    }

    /* 격자 30 (카드 27 + 간격 3) */
    .fcon08_swiper {
        width: 30vw;
    }

    div.fcon08_slide {
        width: 30vw;
    }

    /* 활성 62 + 간격 4 − 30 = 36 */
    .fcon08_slide.swiper-slide-active ~ .fcon08_slide {
        transform: translateX(36vw);
    }

    .fcon08_card {
        width: 27vw;
        height: 30vw;
        border-width: 1.7vw;
    }

    .swiper-slide-active .fcon08_card {
        width: 62vw;
        height: 30vw;
        padding-top: 5vw;
        padding-left: 4vw;
        padding-right: 4vw;
    }

    .fcon08_card_head {
        column-gap: 2vw;
    }

    .fcon08_card_num {
        width: 7vw;
        height: 5.2vw;
        font-size: 3.3vw;
        line-height: 3.3vw;
    }

    .fcon08_card_tt {
        font-size: 3.6vw;
        line-height: 5.2vw;
    }

    .fcon08_card_desc {
        margin-top: 2vw;
        font-size: 3.3vw;
        line-height: 4.8vw;
    }

    .fcon08_nav {
        justify-content: center;
        column-gap: 3vw;
        margin-top: 5vw;
    }

    /* 공통 c_btn_pn 모바일 미대응 → 인스턴스 클래스 오버라이드 */
    .fcon08_prev,
    .fcon08_next {
        width: 30vw;
        height: 9.6vw;
    }

    .fcon08_btn_ico {
        width: 6.5vw;
        font-size: 3.5vw;
        line-height: 3.5vw;
    }

    /* prev 는 flex-end(padding-right), next 는 flex-start(padding-left) 가 실제로 작동 */
    .fcon08_btn_txt {
        width: 23.5vw;
        padding-left: 6vw;
        padding-right: 6vw;
        font-size: 3.5vw;
        line-height: 3.5vw;
    }

    /* absol → rltv 리셋 5종 + 하단 잘림 (부모 .fcon08 align-items:center 로 가운데) */
    .fcon08_word {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
        transform: none;
        margin-top: 10vw;
        margin-bottom: -3.3vw;
        font-size: 30vw;
        line-height: 23vw;
    }

    /* fcon02 — 핀 없음(JS matchMedia 600+ 만), 왼쪽 칼럼 → 카드 세로 스택, 텍스트 중앙 */
    .fcon02 {
        flex-direction: column;
        align-items: center;
        padding-bottom: 13.3vw;
    }

    .fcon02_left {
        width: 100%;
        height: auto;
        padding-top: 13.3vw;
        padding-bottom: 0;
        padding-left: 0;
    }

    .fcon02_left .c_title_ico {
        width: 26vw;
    }

    .fcon02_title {
        margin-top: 3vw;
        font-size: 5.6vw;
        line-height: 7.6vw;
        letter-spacing: -0.2vw;
        word-break: keep-all;
    }

    .fcon02_desc {
        margin-top: 3.2vw;
        font-size: 3.6vw;
        line-height: 5.6vw;
        word-break: keep-all;
    }

    /* 포크 장식 — 모바일에선 숨김 (유저 지시 2026-10-23) */
    .fcon02_fork {
        display: none;
    }

    .fcon02_cards {
        align-items: center;
        width: 92%;
        padding-top: 8vw;
        padding-bottom: 0;
    }

    .fcon02_card_02,
    .fcon02_card_03,
    .fcon02_card_04,
    .fcon02_card_05 {
        margin-top: 5vw;
    }

    .fcon02_card_bar {
        height: 12vw;
        padding-left: 4vw;
        padding-right: 4vw;
    }

    .fcon02_card_bar_line {
        margin-bottom: 0;
    }

    .fcon02_card_bar_line_l,
    .fcon02_card_bar_line_r {
        width: 26vw;
    }

    .fcon02_card_label {
        font-size: 4.2vw;
        line-height: 6vw;
    }

    .fcon02_card_body {
        align-items: center;
        height: auto;
        padding-top: 8vw;
        padding-left: 5vw;
        padding-right: 5vw;
        padding-bottom: 8vw;
    }

    .fcon02_card_tt {
        font-size: 5vw;
        line-height: 7vw;
        text-align: center;
        word-break: keep-all;
    }

    .fcon02_card_txt {
        margin-top: 2.5vw;
        font-size: 3.4vw;
        line-height: 5.4vw;
        text-align: center;
        word-break: keep-all;
    }

    .fcon02_card_body_01 > .fcon02_card_txt,
    .fcon02_card_body_02 > .fcon02_card_txt,
    .fcon02_card_body_03 > .fcon02_card_txt,
    .fcon02_card_body_04 > .fcon02_card_txt,
    .fcon02_card_body_05 > .fcon02_card_txt {
        margin-top: 2.5vw;
    }

    /* 카드1 그릇 마퀴 — 트랙 156.7vw ≥ 카드 body (빈 구간 없음) */
    /* 그릇 마퀴 — 카드 좌우 패딩(5vw)을 넘어 카드 폭 꽉 채움 (유저 지시 2026-10-23). 넘친 양끝은 card_body overflow:hidden 이 자름 */
    .fcon02_bowls {
        width: calc(100% + 10vw);
        margin-top: 6vw;
    }

    .fcon02_bowl_01 {
        width: 20.5vw;
        margin-right: 7.2vw;
    }

    .fcon02_bowl_02 {
        width: 19.8vw;
        margin-right: 6.2vw;
    }

    .fcon02_bowl_03 {
        width: 19.1vw;
        margin-right: 6vw;
    }

    .fcon02_bowl_04 {
        width: 19.8vw;
        margin-right: 5.6vw;
    }

    .fcon02_bowl_05 {
        width: 20.3vw;
        margin-right: 6vw;
    }

    .fcon02_bowl_06 {
        width: 20vw;
        margin-right: 6.2vw;
    }

    /* 카드2 — 사진 2장은 겹침 absol 유지, 텍스트·버튼 아래 하단에 배치 (가로는 부모 flex static position) */
    /* 메뉴 사진 — 가운데, 크게, 카드 하단에서 아래가 잘리게 (유저 지시 2026-10-23)
       padding-bottom = 사진이 보이는 높이 + 버튼과의 간격 / 넘친 아래는 card_body overflow:hidden 이 자름 */
    .fcon02_card_body_02 {
        padding-bottom: 60vw;
    }

    .fcon02_menu_pic_01,
    .fcon02_menu_pic_02 {
        width: 80vw;
        top: auto;
        left: auto;
        bottom: -22vw;
        transform: none;
    }

    /* 이미지 우측에 투명 여백(그림자 포함)이 있어 그릇이 왼쪽으로 쏠려 보임 → 보이는 그릇 중심을 박스 중심으로 (유저 지시 2026-10-23)
       실측: _11.png 543 폭 중 그릇 중심 −36.5px(6.7%) / _10.png 523 폭 중 −34.5px(6.6%, 반투명 그림자 제외) */
    .fcon02_menu_pic_01 {
        transform: translateX(6.7%);
    }

    .fcon02_menu_pic_02 {
        transform: translateX(6.6%);
    }

    .fcon02_menu_btns {
        align-items: center;
        row-gap: 2vw;
        margin-top: 5vw;
    }

    .fcon02_menu_btn {
        width: 60vw;
        height: 10vw;
        font-size: 3.6vw;
        line-height: 5vw;
    }

    /* 카드3 — 사진·태그 absol → 흐름 (사진 아래 태그 1줄) */
    .fcon02_data_pic,
    .fcon02_tags {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
        transform: none;
    }

    /* 카드3 사진 — 꾸밈요소라 모바일에선 숨김 (유저 지시 2026-10-23) */
    .fcon02_data_pic {
        display: none;
    }

    .fcon02_tags {
        flex-direction: row;
        justify-content: center;
        column-gap: 2vw;
        margin-top: 4vw;
    }

    .fcon02_tag {
        width: 20vw;
        height: 7.5vw;
        font-size: 3.4vw;
        line-height: 5vw;
    }

    /* 카드4 — WOOGIPASTA. 마퀴는 박스 뒤 장식(absol 유지) */
    .fcon02_card_body_04 {
        padding-top: 0;
        padding-bottom: 10vw;
    }

    .fcon02_verify_flow {
        top: 1vw;
    }

    .fcon02_verify_word {
        margin-right: 6vw;
        font-size: 16vw;
        line-height: 18vw;
    }

    .fcon02_verify_box {
        width: 34vw;
        padding-top: 3vw;
        padding-bottom: 4vw;
    }

    .fcon02_verify_emblem {
        width: 11vw;
    }

    .fcon02_card_body_04 > .fcon02_card_tt {
        margin-top: 6vw;
    }

    .fcon02_verify_deco_line {
        height: 0.5vw;
        margin-bottom: 0.5vw;
    }

    .fcon02_verify_deco_band {
        height: 2vw;
    }

    /* 카드5 */
    .fcon02_card_body_05 {
        padding-top: 0;
    }

    .fcon02_goods_pic {
        width: 34vw;
        margin-top: -3vw;
        margin-left: 0;
    }

    .fcon02_card_body_05 > .fcon02_card_tt {
        margin-top: 3vw;
    }

    .fcon02_chips {
        flex-wrap: wrap;
        justify-content: center;
        column-gap: 1.5vw;
        row-gap: 2vw;
        margin-top: 5vw;
    }

    .fcon02_chip {
        width: 19vw;
        height: 8vw;
        font-size: 3.4vw;
        line-height: 5vw;
    }

    /* ===== fcon03 모바일 ===== */
    .fcon03 {
        padding-top: 2.8vw;
    }

    .fcon03_box {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: flex-start;
        padding-top: 15.2vw;
        padding-bottom: 8vw; /* 유저 지시(2026-10-23): 가로 매출 띠가 섹션 바닥에 붙음 → 아래 여백 */
    }

    .fcon03_center {
        width: 100%;
        padding-bottom: 8vw;
    }

    .fcon03_photo {
        width: 83vw;
        height: 28.1vw;
        background-attachment: scroll;
        background-size: 108.9% auto;
    }

    .fcon03_bowl {
        width: 86.8vw;
    }

    .fcon03_title {
        margin-top: 8vw;
        font-size: 6.4vw;
        letter-spacing: -0.37vw;
        line-height: 8.7vw;
    }

    .fcon03_sub {
        margin-top: 3.2vw;
        font-size: 3.6vw;
        line-height: 5.6vw;
    }

    .fcon03_deco {
        margin-top: 8vw;
    }

    .fcon03_line {
        width: 28vw;
    }

    .fcon03_line_01 {
        margin-right: 4vw;
    }

    .fcon03_line_02 {
        margin-left: 4vw;
    }

    .fcon03_stars {
        column-gap: 1.4vw;
    }

    .fcon03_star {
        width: 5.3vw;
    }

    .fcon03_col {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
        transform: none;
        width: 100%;
        height: auto;
    }

    /* 매출 롤링 — 모바일은 세로 2열 대신 가로로 흐르는 띠 1줄 (유저 지시 2026-10-23)
       왼쪽 열만 남기고 세로(marqueeY) → 가로(marqueeX) 로 전환. 복제 목록(item02)은 아래가 아니라 오른쪽에 이어 붙임 */
    .fcon03_col_l {
        border-right: 0;
    }

    .fcon03_col_r {
        display: none;
    }

    .fcon03_move_l {
        flex-direction: row;
        width: auto;
        animation-name: marqueeX;
    }

    .fcon03_move_l .flow_sd_y_move_item02 {
        top: 0;
        left: 100%;
    }

    .fcon03_list {
        flex-direction: row;
        width: auto;
    }

    .fcon03_item {
        flex-shrink: 0;
        width: 36vw;
        height: 24vw;
        padding-top: 4.6vw;
        border-bottom: 0;
        border-right: 1px solid rgba(255, 255, 255, 0.1);
    }

    .fcon03_name {
        font-size: 3.6vw;
        line-height: 5vw;
    }

    .fcon03_month {
        margin-top: 0.8vw;
        font-size: 3.3vw;
        line-height: 4.2vw;
    }

    .fcon03_amount {
        margin-top: 0.4vw;
        font-size: 4.6vw;
        line-height: 5.6vw;
    }

    /* ===== [모바일 담당 D] fcon01 · fcon04 · fcon05 · fcon06 · fcon07 · fcon09 (fcon02·03·08 은 위 기존 블록 — 같은 담당이 보정) ===== */

    /* fcon01 — 패널(로고·h1·마퀴) 전폭 위 → 사진 2장 50%×2 아래 (PC 좌·우 사진 그룹은 한 줄 보존) */
    .fcon01 {
        flex-wrap: wrap;
    }

    .fcon01_panel {
        order: -1;
        width: 100%;
        padding-top: 10.7vw;
        padding-bottom: 6.4vw;
    }

    .fcon01_photo_01,
    .fcon01_photo_02 {
        width: 50%;
    }

    .fcon01_logo {
        width: 24vw;
    }

    .fcon01_title {
        margin-top: 4.3vw;
        font-size: 4.3vw;
        line-height: 6vw;
        text-align: center;
        word-break: keep-all;
    }

    .fcon01_flow {
        margin-top: 3.2vw;
    }

    .fcon01_word {
        margin-right: 6.4vw;
        font-size: 18.7vw;
        line-height: 20vw;
    }

    /* fcon04 — 흰 카드 안 세로 흐름: 워드 → 제목 → 부제 → 회수기간 → 도넛 → 수익표 / 띠 → 워드블록 */
    .fcon04 {
        padding-bottom: 13.3vw;
    }

    .fcon04_card {
        width: 92%;
        padding-bottom: 10.7vw;
    }

    .fcon04_word {
        margin-top: -0.9vw;
        font-size: 11.7vw;
        line-height: 8.5vw;
    }

    .fcon04_title {
        margin-top: 6.4vw;
        font-size: 6.4vw;
        line-height: 8.7vw;
        letter-spacing: -0.2vw;
    }

    .fcon04_sub {
        margin-top: 3.2vw;
        padding-left: 5%;
        padding-right: 5%;
        font-size: 3.6vw;
        line-height: 5.6vw;
        word-break: keep-all;
    }

    .fcon04_data {
        flex-direction: column;
        align-items: center;
        margin-top: 8vw;
    }

    .fcon04_line {
        display: none;
    }

    .fcon04_recover {
        width: 56vw;
        margin-top: 0;
        margin-left: 0;
    }

    .fcon04_recover_tt {
        font-size: 4.3vw;
        line-height: 6vw;
    }

    .fcon04_recover_box {
        margin-top: 2.1vw;
        padding-top: 5.3vw;
        padding-bottom: 6.4vw;
    }

    .fcon04_recover_icon {
        width: 11vw;
    }

    .fcon04_recover_num {
        margin-top: 1.1vw;
        font-size: 9.6vw;
        line-height: 11vw;
    }

    .fcon04_recover_base {
        padding-top: 2.1vw;
        padding-bottom: 2.1vw;
    }

    .fcon04_recover_note {
        font-size: 3.3vw;
        line-height: 4.5vw;
    }

    /* 도넛 PC 476(=25vw) → 72vw : 내부 세로 값 ×2.88 */
    .fcon04_donut {
        width: 72vw;
        margin-top: 10.7vw;
        margin-left: 0;
    }

    .fcon04_rate_label {
        margin-top: 20.4vw;
        font-size: 3.6vw;
        line-height: 3.7vw;
    }

    .fcon04_rate_num {
        margin-top: 0.6vw;
        font-size: 12.7vw;
        line-height: 9.8vw;
    }

    .fcon04_table {
        width: 92%;
        margin-top: 10.7vw;
        margin-left: 0;
        border-top-width: 1.1vw;
    }

    .fcon04_thead_tr {
        height: 11vw;
    }

    .fcon04_tr {
        height: 10.7vw;
    }

    .fcon04_tr_01 {
        height: 11.2vw;
    }

    .fcon04_tr_06 {
        height: 14.4vw;
    }

    .fcon04_tfoot_tr {
        height: 11.5vw;
    }

    .fcon04_th,
    .fcon04_cell_name,
    .fcon04_cell_amount,
    .fcon04_cell_rate,
    .fcon04_foot_name,
    .fcon04_foot_val {
        font-size: 3.6vw;
        line-height: 4.8vw;
        letter-spacing: -0.1vw;
    }

    .fcon04_tr_06 .fcon04_cell_div {
        padding-bottom: 4.3vw;
    }

    .fcon04_cell_note {
        font-size: 3.3vw;
        line-height: 4.3vw;
        letter-spacing: -0.1vw;
    }

    .fcon04_band {
        width: 92%;
        height: 4.3vw;
    }

    .fcon04_block {
        width: 48vw;
        margin-top: 10.7vw;
        row-gap: 1.6vw;
    }

    .fcon04_block_item {
        height: 12.8vw;
    }

    .fcon04_block_txt {
        font-size: 8vw;
        line-height: 12.8vw;
    }

    /* fcon05 — 띠 3개(전폭, 단어 가운데) → 카드(흐름, 3장 grid 한 칸 겹침 = 신호등 순환 유지) */
    .fcon05 {
        padding-top: 13.3vw;
        padding-bottom: 13.3vw;
    }

    .fcon05_badge {
        padding: 1.3vw 5.3vw;
        font-size: 3.5vw;
        line-height: 5.3vw;
    }

    .fcon05_title {
        margin-top: 3.2vw;
        font-size: 6.4vw;
        line-height: 8.7vw;
        letter-spacing: -0.2vw;
        text-align: center;
    }

    .fcon05_sub {
        margin-top: 3.2vw;
        padding-left: 5.3%;
        padding-right: 5.3%;
        font-size: 3.6vw;
        line-height: 5.6vw;
        word-break: keep-all;
    }

    .fcon05_stage {
        margin-top: 8vw;
    }

    .fcon05_item,
    .fcon05_item_02 {
        height: 16vw;
    }

    .fcon05_btn_l,
    .fcon05_btn_r {
        justify-content: center;
    }

    .fcon05_panel {
        width: 100%;
    }

    .fcon05_word,
    .fcon05_word_r {
        margin-left: 0;
        margin-right: 0;
        font-size: 10.7vw;
        line-height: 12vw;
        letter-spacing: -0.3vw;
    }

    .fcon05_word_03 {
        margin-bottom: 0;
    }

    .fcon05_card {
        display: grid;
        position: relative;
        top: auto;
        bottom: auto;
        width: 89.3%;
        margin-top: 8vw;
    }

    .fcon05_card_item {
        grid-row: 1;
        grid-column: 1;
        position: relative;
        flex-direction: column;
        align-items: center;
        height: auto;
        padding: 8vw 5.3vw;
    }

    .fcon05_card_photo {
        width: 56vw;
        margin-top: 0;
    }

    /* 배달 캐릭터 — 사진 PC 250(13.1vw) → 56vw 비례 폭. top 은 본문이 아래로 와서 선·라벨과 겹치지 않게 사진 하단 +2vw 까지만 (PC 비례 32.9vw → 22vw) */
    .fcon05_card_char {
        width: 38.3vw;
        top: 22vw;
    }

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

    .fcon05_card_top {
        width: 100%;
    }

    .fcon05_card_line {
        width: 86%;
    }

    .fcon05_card_label {
        font-size: 3.6vw;
        line-height: 5.3vw;
    }

    .fcon05_card_tt {
        margin-top: 5.3vw;
        font-size: 4.8vw;
        line-height: 6.7vw;
        text-align: center;
    }

    .fcon05_card_desc {
        margin-top: 3.2vw;
        font-size: 3.4vw;
        line-height: 5.2vw;
        text-align: center;
        word-break: keep-all;
    }

    /* fcon06 — 제목 → NO/YES 박스(YES 행이 패널 위에 겹침 유지) → 패널 2개 세로 스택(텍스트 → 용기), 신호등 교대 유지 */
    .fcon06 {
        padding-top: 13.3vw;
    }

    .fcon06_ribbon {
        width: 26vw;
    }

    .fcon06_title {
        margin-top: 3.2vw;
        font-size: 6.4vw;
        line-height: 8.7vw;
        letter-spacing: -0.2vw;
    }

    .fcon06_box {
        width: 89.3%;
        margin-top: 8vw;
    }

    .fcon06_band {
        height: 14.4vw;
    }

    .fcon06_vs_item {
        font-size: 4.8vw;
        line-height: 6.4vw;
        letter-spacing: -0.1vw;
    }

    .fcon06_vs_item_01,
    .fcon06_vs_item_02 {
        height: 14.4vw;
    }

    .fcon06_panels {
        flex-direction: column;
        margin-top: -14.4vw;
    }

    .fcon06_panel_01,
    .fcon06_panel_02 {
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        width: 100%;
        padding: 10.7vw 0 0;
    }

    /* 1번 패널은 위에 겹친 YES 행(14.4vw)만큼 더 내려 시작. PC 세로 구분선(border-right) → 세로 스택 가로 구분선 */
    .fcon06_panel_01 {
        padding-top: 25.1vw;
        border-right: 0;
        border-bottom: 1px solid #000;
    }

    .fcon06_txt_01,
    .fcon06_txt_02 {
        align-items: center;
        margin-top: 0;
        text-align: center;
    }

    .fcon06_star {
        width: 18vw;
    }

    .fcon06_tt {
        margin-top: 2.7vw;
        font-size: 5.6vw;
        line-height: 7.5vw;
        letter-spacing: -0.2vw;
    }

    .fcon06_tt_02 {
        margin-right: 0;
    }

    .fcon06_desc,
    .fcon06_desc_02 {
        margin-top: 3.2vw;
        padding-left: 5.3vw;
        padding-right: 5.3vw;
        font-size: 3.4vw;
        line-height: 5.2vw;
        word-break: keep-all;
    }

    /* 용기 컷은 PC 중앙 구분선에서 잘린 반쪽 → 잘린 변을 화면 가장자리·패널 하단에 붙임 (01 오른쪽, 02 왼쪽) */
    .fcon06_cont_01,
    .fcon06_cont_02 {
        width: 66vw;
        margin-top: 8vw;
    }

    .fcon06_cont_01 {
        align-self: flex-end;
    }

    .fcon06_cont_02 {
        align-self: flex-start;
    }

    /* fcon07 — 텍스트 3종 가운데 흐름, 메뉴 누끼(장식 absol)는 위 3개·아래 4개 아치로 재배치, 세로쓰기는 좌우 가장자리 유지 */
    .fcon07 {
        padding-top: 44vw;
        padding-bottom: 44vw;
    }

    .fcon07_nug_08 {
        width: 28vw;
        left: 36%;
        top: -4vw;
    }

    .fcon07_nug_03 {
        width: 25vw;
        left: 4%;
        top: 13vw;
    }

    .fcon07_nug_02 {
        width: 25vw;
        left: 71%;
        top: 11vw;
    }

    .fcon07_nug_06,
    .fcon07_nug_05,
    .fcon07_nug_04,
    .fcon07_nug_07 {
        width: 24vw;
        top: auto;
    }

    .fcon07_nug_06 {
        left: 1.5%;
        bottom: 14vw;
    }

    .fcon07_nug_05 {
        left: 26%;
        bottom: 2vw;
    }

    .fcon07_nug_04 {
        left: 50%;
        bottom: 2vw;
    }

    .fcon07_nug_07 {
        left: 74.5%;
        bottom: 14vw;
    }

    .fcon07_vtxt {
        row-gap: 1.6vw;
    }

    .fcon07_vtxt_l {
        left: 2.7%;
    }

    .fcon07_vtxt_r {
        right: 2.7%;
    }

    .fcon07_vtxt_word {
        font-size: 3.3vw;
        line-height: 4.3vw;
    }

    .fcon07_title {
        font-size: 6.4vw;
        line-height: 8.7vw;
        letter-spacing: -0.2vw;
    }

    .fcon07_sub {
        margin-top: 3.2vw;
        font-size: 3.6vw;
        line-height: 5.6vw;
    }

    .fcon07_more {
        margin-top: 8vw;
    }

    /* fcon09 — 접시 → 제목 → 설명 → 수치(누적리뷰·평점 2칸 grid + 선 + 기준) → 리뷰카드 마퀴(전폭), PASTA 외곽선은 장식 absol */
    .fcon09 {
        padding-bottom: 13.3vw;
    }

    /* PASTA 외곽선 장식 — 모바일에선 숨김 (유저 지시 2026-10-23) */
    .fcon09_word {
        display: none;
    }

    .fcon09_dish {
        width: 76vw;
    }

    .fcon09_title {
        margin-top: -1.7vw;
        font-size: 6.4vw;
        line-height: 8.7vw;
    }

    .fcon09_desc {
        margin-top: 3.2vw;
        padding-left: 5.3%;
        padding-right: 5.3%;
        font-size: 3.6vw;
        line-height: 5.6vw;
        word-break: keep-all;
    }

    .fcon09_row {
        flex-direction: column;
        align-items: center;
        margin-top: 8vw;
    }

    .fcon09_stat {
        display: grid;
        grid-template-columns: 58% 42%;
        justify-items: center;
        width: 89.3%;
        margin-left: 0;
        padding-top: 0;
    }

    .fcon09_stat_label {
        grid-row: 1;
        grid-column: 1;
        font-size: 4.3vw;
        line-height: 6vw;
    }

    .fcon09_stat_label_02 {
        grid-column: 2;
        margin-top: 0;
    }

    .fcon09_stat_num {
        margin-top: 1.1vw;
        font-size: 10.1vw;
        line-height: 11.2vw;
    }

    .fcon09_stat_line {
        grid-row: 3;
        grid-column: 1 / 3;
        width: 100%;
        margin-top: 5.3vw;
        margin-left: 0;
    }

    .fcon09_stat_note {
        grid-row: 4;
        grid-column: 1 / 3;
        justify-self: end;
        margin-top: 2.1vw;
        margin-left: 0;
        font-size: 3.3vw;
        line-height: 4.5vw;
    }

    .fcon09_flow {
        width: 100%;
        margin-top: 8vw;
    }

    .fcon09_card {
        width: 52vw;
        margin-right: 4.3vw;
    }

    /* ===== [모바일 담당 E] fcon10 · fcon11 · fcon12 · fcon13 · fcon14 · fcon15 · fcon16 ===== */

    /* fcon10 — ✦✦✦ → 제목 → 서브 → 흰 카드 5장 세로 스택 (카드 = 좌 제목·본문 / 우 아이콘 원, PC 카드 구성 유지) */
    .fcon10 {
        padding-top: 13.3vw;
        padding-bottom: 13.3vw;
    }

    .fcon10_line_01 {
        width: 26vw;
        margin-right: 3.2vw;
    }

    .fcon10_line_02 {
        width: 26vw;
        margin-left: 3.2vw;
    }

    .fcon10_stars {
        column-gap: 1.3vw;
    }

    .fcon10_star {
        width: 4.3vw;
    }

    .fcon10_title {
        margin-top: 4vw;
        font-size: 6.4vw;
        line-height: 8.7vw;
        letter-spacing: -0.2vw;
    }

    .fcon10_sub {
        max-width: 89.3%;
        margin-top: 3.2vw;
        font-size: 3.6vw;
        line-height: 5.6vw;
        word-break: keep-all;
    }

    .fcon10_list {
        flex-direction: column;
        align-items: center;
        width: 89.3%;
        margin-top: 8vw;
        row-gap: 2.7vw;
        column-gap: 0;
    }

    .fcon10_item {
        display: grid;
        grid-template-columns: 1fr auto;
        align-content: center;
        align-items: center;
        column-gap: 4vw;
        width: 100%;
        padding: 5.3vw 5.3vw 5.3vw 6.4vw;
    }

    .fcon10_circle {
        grid-column: 2;
        grid-row: 1 / span 2;
        width: 16vw;
        height: 16vw;
        margin-left: 0;
    }

    /* 아이콘 — 원 PC 85 → 16vw 비율(×0.188) */
    .fcon10_icon_01,
    .fcon10_icon_02 {
        width: 9.2vw;
    }

    .fcon10_icon_03 {
        width: 7.1vw;
    }

    .fcon10_icon_04 {
        width: 8.7vw;
    }

    .fcon10_icon_05 {
        width: 7.3vw;
    }

    .fcon10_item_tt {
        grid-column: 1;
        grid-row: 1;
        margin-top: 0;
        font-size: 4.3vw;
        line-height: 6vw;
    }

    .fcon10_item_txt {
        grid-column: 1;
        grid-row: 2;
        margin-top: 1.1vw;
        font-size: 3.4vw;
        line-height: 5.2vw;
    }

    /* fcon11 — WOOGIPASTA 배너(호버 없음 → 원 = 시안 G 위치 고정) → INTERIOR 제목 → 사진 슬라이드(양옆 살짝) → 이전·다음 버튼(사진 아래 흐름) */
    /* 원 중심·반지름 = PC 비율(G 중심 = 배너 가운데 −0.564em, 세로 +0.068em, 반지름 0.536em) 을 모바일 글자 크기로 환산 */
    .fcon11_banner {
        --fx: 38.4vw;
        --fy: 10.8vw;
        width: 89.3%;
        height: 20vw;
    }

    .fcon11_word {
        font-size: 11.2vw;
        line-height: 12vw;
    }

    .fcon11_reveal {
        clip-path: circle(calc(6vw * var(--fs)) at var(--fx) var(--fy));
    }

    .fcon11_reveal_txt {
        background-size: 12vw 12vw;
        background-position: calc(var(--fx) - 6vw) calc(var(--fy) - 6vw);
    }

    .fcon11_head {
        margin-top: 10.7vw;
    }

    .fcon11_eng {
        margin-top: 1.6vw;
        font-size: 3.3vw;
        line-height: 4vw;
        letter-spacing: 0.8vw;
    }

    .fcon11_title {
        margin-top: 2.1vw;
        font-size: 6.4vw;
        line-height: 8.7vw;
        letter-spacing: -0.2vw;
    }

    .fcon11_sub {
        margin-top: 2.7vw;
        font-size: 3.6vw;
        line-height: 5.6vw;
    }

    .fcon11_slide_wrap {
        flex-direction: column;
        margin-top: 8vw;
    }

    .fcon11_slide {
        width: 78vw;
    }

    .fcon11_nav {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
        transform: none;
        justify-content: center;
        column-gap: 2.7vw;
        width: auto;
        margin-top: 5.3vw;
    }

    /* fcon12 — 핀·가로 트랙 없음(js 는 ≥600 만 생성) → 제목 → 사진 → 접시 5개 한 줄 → 카드 6장 세로 스택 → 설명. 검정 로고박스(장식)는 숨김 */
    .fcon12 {
        padding-top: 13.3vw;
        padding-bottom: 0;
    }

    .fcon12_frame {
        width: 100%;
        padding-top: 13.3vw;
        padding-bottom: 13.3vw;
    }

    .fcon12_line,
    .fcon12_logo {
        display: none;
    }

    .fcon12_title {
        font-size: 6.4vw;
        line-height: 8.7vw;
        letter-spacing: -0.2vw;
    }

    /* 트랙 박스를 풀어 자식(사진·접시·카드)을 프레임 흐름에 직접 올림 → 설명(.fcon12_desc, 트랙 밖)을 사진 바로 아래로 order 조정 (유저 지시 2026-10-23)
       PC 가로 트랙 scrub(fcon12-m01)은 PC 전용이라 모바일에선 트랙 박스가 필요 없음 */
    .fcon12_track {
        display: contents;
    }

    .fcon12_photo {
        order: 1;
        width: 64vw;
        margin-left: 0;
        margin-top: 8vw;
    }

    /* 접시 — 세로 줄 → 사진 아래 가로 한 줄 (PC 접시 79 → 12vw 비율 ×0.152) */
    .fcon12_plates {
        order: 3;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        column-gap: 3.2vw;
        margin-left: 0;
        margin-top: 5.3vw;
    }

    .fcon12_plate_01,
    .fcon12_plate_02,
    .fcon12_plate_03,
    .fcon12_plate_04,
    .fcon12_plate_05 {
        margin-left: 0;
        margin-top: 0;
    }

    /* 접시 5개 — 이미지마다 투명 여백(우·하단)이 달라 크기·간격이 들쭉날쭉 → 보이는 접시(ink 약 75px)를 모두 12vw 로 맞추고
       여백만큼 음수 margin 으로 상쇄해 간격 3.2vw·세로 중심을 균일하게 (유저 지시 2026-10-23, 배율 12/75)
       실측 ink: 01 79×68(1,0 77×68) · 02 74×63(72×62) · 03 84×77(73×65) · 04 72×70(72×63) · 05 100×63(6,0 75×63) */
    .fcon12_plate_01 {
        width: 12.6vw;
        margin-left: -0.2vw;
        margin-right: -0.2vw;
    }

    .fcon12_plate_02 {
        width: 11.8vw;
        margin-right: -0.3vw;
        margin-bottom: -0.2vw;
    }

    .fcon12_plate_03 {
        width: 13.4vw;
        margin-right: -1.8vw;
        margin-bottom: -1.9vw;
    }

    .fcon12_plate_04 {
        width: 11.5vw;
        margin-bottom: -1.1vw;
    }

    .fcon12_plate_05 {
        width: 16vw;
        margin-left: -1vw;
        margin-right: -3vw;
    }

    .fcon12_cards {
        order: 4;
        flex-direction: column;
        align-items: stretch;
        width: 89.3%;
        margin-left: 0;
        margin-top: 10.7vw;
        row-gap: 9.6vw;
        column-gap: 0;
    }

    /* 카드 — 별 번호 | 제목·설명 | 세로 썸네일(PC absol 우상단 → 흐름 3칸 grid) */
    .fcon12_card {
        display: grid;
        grid-template-columns: 9.6vw 1fr 13.3vw; /* 유저 지시(2026-10-23): 번호 별 12.8 → 9.6vw, 줄어든 만큼 텍스트 칸(1fr)이 넓어짐 */
        align-items: start;
        column-gap: 3.7vw;
        width: 100%;
    }

    .fcon12_star {
        width: 9.6vw;
    }

    .fcon12_num {
        font-size: 3.3vw;
        line-height: 3.3vw;
        letter-spacing: 0;
    }

    .fcon12_card_txt {
        margin-left: 0;
        margin-top: 0;
    }

    .fcon12_card_tt {
        font-size: 4.3vw;
        line-height: 6vw;
        letter-spacing: -0.2vw;
        white-space: normal;
        word-break: keep-all;
    }

    .fcon12_card_desc {
        font-size: 3.4vw;
        line-height: 5.2vw;
        white-space: normal;
        word-break: keep-all;
    }

    .fcon12_card_desc_01 {
        margin-top: 2.1vw;
    }

    .fcon12_card_desc_02 {
        margin-top: 1.6vw;
    }

    .fcon12_thumb {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
        width: 13.3vw;
    }

    .fcon12_desc {
        order: 2;
        max-width: 89.3%;
        margin-top: 5.3vw;
        font-size: 3.6vw;
        line-height: 5.6vw;
        word-break: keep-all;
    }

    /* fcon13 — 호버(터치 불가) 대신 두 패널 다 활성 상태로 세로 스택: [워드·포크·제목 + 패널1] → [패널2]. 비활성 덮개는 숨김 */
    /* 워드 PC 140px(7.35vw) → 12.5vw : 워드·포크 세로 값 ×1.7 */
    .fcon13 {
        padding-top: 4.3vw;
    }

    .fcon13_stage {
        flex-direction: column;
    }

    .fcon13_panel_01,
    .fcon13_panel_02 {
        align-items: center;
        width: 100%;
        padding-bottom: 13.3vw;
    }

    /* 유저 지시(2026-10-23): 누끼 사진 2장 숨기고 카드 올림 — 패널1 위 여백 = 헤드(타이틀) 높이 45vw + 간격 8vw */
    .fcon13_panel_01 {
        padding-top: 53vw;
        padding-bottom: 8vw;
    }

    .fcon13_panel_02 {
        padding-top: 10.7vw; /* 유저 지시(2026-10-23): 위 빈 여백 과다 26 → 10.7 */
    }

    .fcon13_off {
        display: none;
    }

    /* 누끼 사진 — 카드 윗모서리 뒤에서 솟아오름 (카드가 DOM 뒤 rltv 라 위에 그려짐) */
    .fcon13_photo_01,
    .fcon13_photo_02 {
        display: none; /* 유저 지시(2026-10-23) */
    }

    .fcon13_card {
        width: 89.3%;
        margin-top: 0;
    }

    .fcon13_card_01,
    .fcon13_card_02 {
        margin-left: 0;
    }

    .fcon13_tab {
        font-size: 3.6vw;
        line-height: 7.6vw;
    }

    .fcon13_card_tt {
        margin-top: 3.2vw;
        font-size: 5vw; /* 유저 지시(2026-10-23): 4.3 → 5 */
        line-height: 6.5vw;
        letter-spacing: -0.1vw;
    }

    .fcon13_card_desc {
        max-width: 88%;
        margin-top: 1.6vw;
        font-size: 3.3vw;
        line-height: 4.8vw;
        word-break: keep-all;
    }

    /* 항목 3개 — 세로 박스 → 가운데 정렬 칩(줄바꿈 허용). 카드 이미지 비율 안에 들어가게 */
    .fcon13_list {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        width: 86%;
        margin-top: 5.7vw;
        gap: 1.6vw;
    }

    .fcon13_list_02 {
        margin-left: 0;
    }

    .fcon13_item,
    .fcon13_item_02 {
        width: auto;
        height: 7.5vw;
        padding: 0 3.2vw;
        font-size: 3.3vw;
        line-height: 4vw;
    }

    .fcon13_word {
        margin-top: -1.9vw;
        font-size: 12.5vw;
        line-height: 10.5vw;
    }

    .fcon13_title {
        margin-top: 8.5vw;
        margin-left: 0;
        font-size: 6.4vw;
        line-height: 8.7vw;
        letter-spacing: -0.2vw;
        text-align: center;
    }

    .fcon13_fork {
        width: 13.3vw;
    }

    /* fcon14 — 제목 → 흰 박스 비용표(89.3%) → 갈색 띠 전폭(박스가 위에 겹침) + 영문 마퀴 크게 */
    .fcon14 {
        padding-top: 13.3vw;
    }

    .fcon14_title {
        font-size: 6.4vw;
        line-height: 8.7vw;
        letter-spacing: -0.2vw;
    }

    .fcon14_box {
        width: 89.3%;
        margin-top: 8vw;
        padding-top: 6.4vw;
        padding-bottom: 6.4vw;
    }

    .fcon14_table {
        width: 88%;
    }

    .fcon14_head,
    .fcon14_cell {
        font-size: 3.6vw;
        line-height: 5vw;
        letter-spacing: 0;
    }

    .fcon14_head {
        height: 10.7vw;
        border-top-width: 1vw;
    }

    .fcon14_cell {
        height: 10.1vw;
    }

    .fcon14_cell_first {
        padding-top: 0.8vw;
    }

    .fcon14_cell_last {
        padding-bottom: 0.8vw;
    }

    .fcon14_col_01 {
        width: 48%;
        padding-right: 2.7vw;
    }

    .fcon14_col_02 {
        padding-left: 1.3vw;
    }

    .fcon14_total {
        height: 12vw;
        font-size: 4vw;
        line-height: 5.6vw;
        letter-spacing: -0.1vw;
    }

    .fcon14_total_01 {
        padding-right: 5.3vw;
        border-left-width: 2.7vw;
    }

    .fcon14_total_02 {
        padding-left: 3.5vw;
        border-right-width: 2.7vw;
    }

    .fcon14_band {
        width: 100%;
        margin-top: -6vw;
        padding-top: 8.5vw;
        padding-bottom: 3.2vw;
    }

    .fcon14_word {
        font-size: 16vw;
        line-height: 17vw;
    }

    .fcon14_dot {
        margin: 0 6.4vw;
    }

    /* fcon15 — 줄무늬 띠 + 로고 → 리본 제목 → 서브 → 8단계 카드 1열 세로 (2열이면 07 그랜드오픈 사진이 글자와 겹침). 가로 화살표는 1열에서 방향이 안 맞아 숨김 */
    /* 줄무늬 주기 PC 20px(--px) 그대로면 375 에서 4px 라 선이 뭉개짐 → 4.3vw(16px), 색 동일 */
    .fcon15 {
        padding-bottom: 13.3vw;
    }

    .fcon15_band {
        background-image: repeating-linear-gradient(90deg, rgba(76, 25, 15, 0.2) 0, rgba(76, 25, 15, 0.2) 1px, transparent 1px, transparent 4.3vw);
        background-position: 0 0;
    }

    .fcon15_logo {
        width: 29.3vw;
        padding-top: 1.9vw;
        padding-bottom: 3.2vw;
    }

    .fcon15_logo_img {
        width: 10.1vw;
    }

    .fcon15_head {
        margin-top: 10.7vw;
    }

    .fcon15_title {
        margin-top: 2.1vw;
        font-size: 6.4vw;
        line-height: 8.7vw;
        letter-spacing: -0.2vw;
    }

    .fcon15_sub {
        max-width: 89.3%;
        margin-top: 2.1vw;
        font-size: 3.6vw;
        line-height: 5.6vw;
        word-break: keep-all;
    }

    .fcon15_list {
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: stretch;
        width: 89.3%;
        margin-top: 8vw;
        row-gap: 2.1vw;
    }

    .fcon15_item {
        width: auto;
        padding: 2.7vw 4vw;
    }

    .fcon15_num {
        width: 8.5vw;
        height: 8.5vw;
        font-size: 3.5vw;
        line-height: 3.5vw;
    }

    .fcon15_item_tt {
        margin-top: 0;
        margin-left: 4vw;
        font-size: 4.3vw;
        line-height: 6vw;
        letter-spacing: -0.1vw;
    }

    .fcon15_food {
        right: 0; /* 유저 지시(2026-10-23): 오른쪽 끝에 붙임 */
        width: 20vw;
    }

    .fcon15_arrow {
        display: none;
    }

    /* fcon16 — 텍스트 → 큰 메뉴 사진(흐름) → 영문 띠(사진 뒤로 지나감) → 문의 폼(라벨 위 · 칸 아래 세로 스택). 작은 사진은 우측 장식 */
    .fcon16_box {
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        width: 100%;
        padding: 13.3vw 5.35vw 0; /* 띠가 섹션 맨 아래에 붙도록 하단 0 (유저 지시 2026-10-23) */
    }

    .fcon16_txt {
        order: 1;
        align-items: center;
        margin-top: 0;
        text-align: center;
    }

    .fcon16_title {
        font-size: 6.4vw;
        line-height: 8.7vw;
        letter-spacing: -0.2vw;
    }

    .fcon16_desc {
        margin-top: 3.2vw;
        font-size: 3.6vw;
        line-height: 5.6vw;
        word-break: keep-all;
    }

    /* 누끼 사진 — 모바일에선 숨김 (유저 지시 2026-10-23) */
    .fcon16_photo_01 {
        display: none;
    }

    /* 띠 — 섹션 최하단으로 (폼 뒤, 유저 지시 2026-10-23) */
    .fcon16_band {
        order: 5;
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
        transform: none;
        width: 100vw;
        margin-top: 13.3vw;
        padding-top: 2.4vw;
        padding-bottom: 2.4vw;
    }

    .fcon16_tk_item {
        margin-right: 2.4vw;
        font-size: 3.5vw;
        line-height: 5vw;
        letter-spacing: 0;
    }

    .fcon16_tk_dot {
        margin-right: 2.4vw;
    }

    /* 두 번째 누끼 — 사진1(숨김) 옆 장식이라 같이 숨김. 남겨두면 위치 기준이 사라져 폼 입력칸 위에 겹침 (2026-10-23) */
    .fcon16_photo_02 {
        display: none;
    }

    .fcon16_form {
        order: 4;
        width: 100%;
        margin-top: 10.7vw;
        padding: 8vw 6.4vw;
    }

    .fcon16_fields {
        align-items: stretch;
        align-self: stretch;
        width: 100%;
    }

    .fcon16_list {
        row-gap: 4vw;
    }

    .fcon16_row {
        flex-direction: column;
        justify-content: flex-start;
        align-items: stretch;
        row-gap: 1.6vw;
    }

    .fcon16_row_06 {
        margin-top: 0;
    }

    .fcon16_label {
        margin-top: 0;
        font-size: 3.6vw;
        line-height: 5vw;
        letter-spacing: -0.1vw;
    }

    .fcon16_req {
        margin-right: 1.1vw;
    }

    .fcon16_field {
        width: 100%;
    }

    /* 입력 글자 4.3vw(375 기준 16px) — iOS 는 16px 미만 입력칸 포커스 시 화면을 확대함 */
    .fcon16_input,
    .fcon16_select,
    .fcon16_textarea {
        font-size: 4.3vw;
    }

    .fcon16_input {
        height: 11.7vw;
        padding: 0 3.7vw;
    }

    .fcon16_select {
        width: 48.5%;
        height: 11.7vw;
        padding-left: 3.7vw;
        background-position: right 3.7vw center;
        background-size: 3.5vw 2.1vw;
    }

    .fcon16_textarea {
        height: 32vw;
        padding: 3.2vw 3.7vw;
    }

    .fcon16_agree {
        width: 100%;
        margin-top: 4vw;
    }

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

    .fcon16_agree_chk:checked {
        box-shadow: inset 0 0 0 0.9vw #fff;
    }

    .fcon16_agree_txt {
        margin-left: 2.1vw;
        font-size: 3.5vw;
        line-height: 4.8vw;
        letter-spacing: -0.1vw;
    }

    .fcon16_submit {
        width: 100%;
        height: 13.3vw;
        margin-top: 6.4vw;
        font-size: 4.3vw;
        letter-spacing: -0.1vw;
    }
}
