@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css');

@font-face {
font-family: 'Pretendard';
font-style: normal;
font-weight: 100 900;
font-display: swap;
src: url(//fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
unicode-range: U+0041-005A, U+0030-0039, U+0061-007A;
}

body {
	font-family: 'Pretendard';		
	padding:0;
	margin:0;
	word-break: keep-all;
	background-color: #fff;
}

a {
	color: unset;
	text-decoration: none;
  }
a:hover {
	color: unset;
	text-decoration: none;
}

a:not([href]):not([class]), a:not([href]):not([class]):hover {
	color: inherit;
	text-decoration: none;
}

main {
	width:100%;
	max-width:1920px;
	background-color: #fff;
	margin:0 auto;
	overflow:hidden;
}

.fimg {
	width:100%;
}

.divfimg img{
	max-width:100%;
}

.mxfimg {
	max-width:100%;
}

img, object, embed {
    max-width: 100%;
}


.videowrap_t1 {
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
}
.videowrap_t2 {
    height: 100%;
	background-color: #000;
}

.videowrap {
	position: relative;
    width: 100%;
    height: 100%;
    background: #000;
    overflow: hidden;
}

.videowrap iframe {
	position: absolute;
    z-index: 1;
    opacity: 1;
	transform: scale(1.5);
}
.ratio-4x3 .videowrap iframe {
	transform: scale(1.5);
}
.ratio-16x9 .videowrap iframe {
	transform: scale(1.2);
}

.videowrap:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    z-index: 2;
}



.forpc {
	display:none;
}
.formobile {
	display:block;
}
.forpc_flex {
	display:none;
}
.formobile_flex {
	display:flex;
}

.mhd{
	min-height:100vh;
}

.font_color_primary {
	color:var(--bs-primary);
}

ul {
    list-style-type: none;
    margin: 0px;
    padding: 0px;
}

@media (min-width: 768px) {
	.forpc {
		display:block;
	}
	.formobile {
		display:none;
	}
	.forpc_flex {
		display:flex;
	}
	.formobile_flex {
		display:none;
	}
}

@media (max-width: 768px) {
	.navbar-brand img {
		width: 4rem;
	}
}

.odiv {
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
:root {
    --swiper-theme-color: #ffffff;
	--swiper-navigation-size: 22px;
}

.nofade{
	opacity:0;
}

@media (min-width: 1420px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1420px;
    }
}

.navbar {
    --bs-navbar-padding-x: 0;
    --bs-navbar-padding-y: 6px;
    background: #fff;
	font-weight: 400;
	transition: all 0.3s;
}

.navbar.top {
    background: transparent;
}


.navbar .logo_b {
	display:block;
}
.navbar .logo_w {
	display:none;
}

.navbar.top .logo_b {
	display:none;
}
.navbar.top .logo_w {
	display:block;
}

.nav-link {
	font-size:23px;
	color:#000;
	font-weight: 400;
	margin: auto 40px;
}

.navbar.top .nav-link {
	color:#fff;
}

footer {
	background:#000000;
	padding:75px 0;
	letter-spacing: -1px;
}
.footer_w1 {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    margin-top: 30px;
    gap: 10px;
    align-items: flex-end;
}
.footer_c005 {
	font-size:24px;
	color:#fff;
	font-weight: 400;
	line-height: 1.4;
	margin-left:10px;
}
.footer_c002 {
	padding-bottom:5px;
}
.footer_c006 {
	font-size:45px;
	color:#b10000;
	font-weight: 600;
	line-height: 1;
}
footer hr {
    margin: 35px 0;
    color: #fff;
    border: 0;
    border-top: var(--bs-border-width) solid;
    opacity: .3;
}
.footer_c013 {
	font-size:17.5;
	color:rgba(255,255,255,0.7);
	font-weight: 300;
	line-height: 1.7;
}
.footer_c014 {
	margin-top: 0px;
}
.footer_w2 {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    gap: 10px;
    align-items: center;
	margin-top: 7px;
}
.footer_c008 {
	font-size:25px;
	color:#fff;
	font-weight: 400;
	line-height: 1;
}
.footer_c009 {
	font-size:29px;
	color:#fff;
	font-weight: 600;
	line-height: 1;
}
.footer_w3 {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    gap: 10px;
    align-items: center;
}
.footer_c010 .form-control {
    border-radius: 0;
	width: 130px;
	font-size: 20px;
	line-height: 1;
	padding: 10px .75rem;
}
.footer_c011 {
	font-size:18;
	color:rgba(255,255,255,0.7);
	font-weight: 300;
	line-height: 1.7;
	letter-spacing: -1px;
}
.footer_c012 {
	font-size:19px;
	color:#fff;
	font-weight: 400;
	line-height: 18px;
	letter-spacing: -1px;
	background-color: #b10000;
	padding: 14px 14px;
	cursor:pointer;
	border:0;
}

.footerfloter {
    background: #000000;
    padding: 10px 0;
    letter-spacing: -1px;
    position: fixed;
    bottom: 0px;
    width: 100%;
	z-index: 9999;
}



.main_vit {	
	--bs-aspect-ratio: 64%;
	position: relative;
	overflow:hidden;
}

.main_vit .ct{
	width:100%;
	height:100%
}
.main_vit .ct img{
	width:100%;
}
.main_vit_ct {
	z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
}

.main_vit .videowrap iframe {
    z-index: 1;
    opacity: .5;
	transform: scale(1.3);
}

.sec_02 {
	position: relative;
	background-image: url(../image/sec_02_bg.png);
	height: 1820px;
	background-size: cover;
	background-position: 50% 50%;
	overflow: hidden;
}

.sec_02 .sec_02_1 {
	margin-top:11.8%;
	text-align:center;
}
.sec_02 .sec_02_2 {
	margin-top:6%;
	text-align:center;
}
.sec_02 .sec_02_3 {
	margin-top:2%;
	text-align:center;
	font-size:25px;
	color:#fff;
	font-weight: 400;
	letter-spacing: -0.4px;
}

.sec_03_1 {
	background-image: url(../image/sec_03_bg.jpg);
	height:515px;
}

.sec_03_1 .container {
	height: 100%;
}
.sec_03_1 .row {
	height: 100%;
    align-items: center;
}
.sec_03_1_1 {
	font-size:25px;
	color:#fff;
	font-weight: 400;
	letter-spacing: -0.4px;
}

.sec_03_2 {
	display:flex;
	flex-direction: row;
	background-image: url(../image/sec_03_bg.jpg);
}
.sec_03_2_1 {
    overflow: hidden;
}



.sec_03_3 {
	background-image: url(../image/sec_03_bg.jpg);
	height:1240px;
	padding:210px 0;
}

.sec_03_3 .swiper {
	width: 100%;
	overflow: visible;
}

.sec_03_3 .swiper-slide {
	width:526px;
}

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

.sec_03_3 .swiper-button-prev {
    left: auto;
    right: auto;
    bottom: -70px;
    top: auto;
    right: 40px;
	color: #000;
}

.sec_03_3 .swiper-button-next {
    left: auto;
    right: auto;
    bottom: -70px;
    top: auto;
    right: 0px;
	color: #000;
}
.sec_03_3 .swiper-horizontal>.swiper-pagination-progressbar{
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 2px);
    left: 0;
    top: auto;
    bottom: -83px;
	background:  rgba(255, 255, 255, .25);
}

.sec_04 {
	background-image: url(../image/sec_03_bg.jpg);
	width:100%;
	height:2200px;
	position:relative;
}
.sec_04_01 {	
	width:1920px;
	height:2200px;
	position:absolute;
	margin-left:-960px;
	left:50%;
}
.sec_04_01_wp {	
	position:relative;
	width:100%;
	height:100%;
}
.sec_04_01_ct {	
	position:absolute;
	top:0px;
	left:0px;
}
.sec_06 {
	background-image: url(../image/sec_06_bg.png);
	width:100%;
	height:1340px;
	overflow: hidden;
}

.sec_06_1 {
	margin-top:200px;
	font-size:30px;
	color:#fff;
	font-weight: 400;
	letter-spacing: -0.4px;	
	text-align:center;
}

.sec_06_2 {
	margin-top:40px;
	text-align:center;
}

.sec_06_3 {
	margin-top:60px;
	font-size:25px;
	color:#fff;
	font-weight: 400;
	letter-spacing: -0.4px;	
	text-align:center;
}

.sec_06_4 {	
    display: flex;
    width: 100%;
    max-width: 1670px;
    margin: 0 auto;
    margin-top: 120px;
    flex-direction: row;
    justify-content: space-around;
    align-items: flex-start;
}
.sec_06_4_ct {	
    max-width:306px;
	margin:0 10px;
}
.sec_06_4_ct.b{	
	margin-top:60px;
}
.sec_06_4 img{	
    width:100%;
}

.sec_06_4_ct_t {
	margin-top:20px;
	font-size:25px;
	color:#fff;
	font-weight: 400;
	letter-spacing: -0.4px;	
}

.sec_07 {
	background-image: url(../image/sec_03_bg.jpg);
	width:100%;
	padding:200px 0 155px 0;
	overflow: hidden;
}
.sec_07_1 {
	margin-bottom:110px;
	text-align:center;
}
.sec_07_2 {
	margin-bottom:45px;
}
.sec_08 {
	background-image: url(../image/sec_08_bg.jpg);
	width: 100%;
	height: 550px; /* 기존 850px에서 550px로 대폭 축소 */
	overflow: hidden;	
	position: relative;
}

.sec_08_1 {
	margin-top: 120px; /* 기존 260px에서 120px로 축소하여 위쪽 여백 제거 */
	text-align: center;
	z-index: 1;
	position: relative;
}

.sec_08_2 {
	margin-top: 30px; /* 기존 60px에서 30px로 줄여 텍스트 간격 최적화 */
	font-size: 25px;
	color: #000;
	font-weight: 400;
	letter-spacing: -0.4px;	
	text-align: center;
	z-index: 1;
	position: relative;
}

/* 양옆의 음식 이미지(절대 위치)는 그대로 유지됩니다 */
.sec_08_3_1 {
	position: absolute;
	bottom: 0px;
	left: 0px;
	z-index: 0;
}

.sec_08_3_2 {
	position: absolute;
	top: 0px;
	right: 0px;
	z-index: 0;
}

.sec_08_3_1 img, .sec_08_3_2 img {
	max-width: 30vw;
}

.sec_09 {
	padding: 200px 0;
	background-color: #000;
	position: relative;
}
.sec_09_1 {
	text-align:center;
}
.sec_09_2 {
	margin-top:60px;
	text-align:center;
}
.sec_09_3 {
    width: 100%;
    max-width: 1250px;
    margin: 100px auto 0px auto;
}
.sec_09_4 {
	margin-top:180px;
	text-align:center;
}
.sec_09_5 {
    position: absolute;
    left: 0;
    bottom: 260px;
}

.sec_10 {
	background-image: url(../image/sec_10_01.png);	
	height:1220px;	
	overflow: hidden;	
	position:relative;
}
.sec_10_1 {
	margin-top:200px;
	text-align:center;
}
.sec_10_2 {
	margin-top:60px;
	text-align:center;
}
.sec_10_3 {
	margin-top:130px;
	text-align:right;
}

.sec_11 {
	background-color: #000;	
	padding:200px 0;
	overflow: hidden;	
	position:relative;
}
.sec_11_1 {
	margin-top:200px;
	text-align:center;
}
.sec_11_2 {
	margin-top:60px;
	text-align:center;
}
.sec_11_3 {
	margin-top:130px;
	text-align:center;
}
.sec_11_4 {	
	display: flex;
	margin: 0 auto;
	margin-top: 200px;
	width: 100%;
	max-width: 1720px;
	flex-direction: row;
	align-content: center;
	align-items: center;
	justify-content: space-between;
	gap: 50px;
}
.sec_11_4_1 {
	width:45%;
}
.sec_11_4_1_1 {
	margin: 0 0 30px 5%;
}

.sec_11_4_1_1 .videowrap iframe {
    transform: scale(1.5);
}

.sec_11_4_w{
	color:#fff;
}
.sec_11_4_2_1 {
	margin-top:0px;
	font-size:60px;
	color:#fff;
	font-weight: 400;
	letter-spacing: -0.4px;		
}
.sec_11_4_2_2 {
	margin-top:30px;
	font-size:27px;
	color:#fff;
	font-weight: 400;
	letter-spacing: -0.4px;		
}
.sec_11_4_2_3 {
	margin-top: 60px;
    display: flex;
    gap: 40px;
    align-content: center;
    align-items: center;
}
.sec_11_4_2_3_1{
    background-color: #ede7d7;
    border-radius: 41px;
    text-align: center;
    display: flex;
    color: #000;
    font-size: 27px;
    /* width: 55px; */
    width: 240px;
    flex-direction: row;
    align-content: center;
    align-items: center;
    justify-content: center;
    height: 73px;	
}
.sec_11_4_2_3_2 {
	font-size:70px;
	color:#fff;
	font-weight: 400;
}

.point .sec_11_4_2_3_1{
    background-color: #bc520a;
    color: #fff;
}
.point .sec_11_4_2_3_2 {
	color:#bb5109;
}

.sec_11_4_2_3_2_1{
    color: #fff;
    font-size: 20px;
	letter-spacing: -0.4px;
}
.sec_11_4_2_3_2_2{
    color: rgba(255,255,255,0.7);
    font-size: 20px;
	letter-spacing: -0.4px;
}


.sec_12 {
	padding:200px 0;
	overflow: hidden;	
	position:relative;
	background-image: url(../image/sec_12_bg.png);
	background-size: cover;
}
.sec_12_1 {
	text-align:center;
}
.sec_12_2 {	
    text-align: center;
    width: 1402px;
    margin: 60px auto 0 auto;
	position:relative;
}

.sec_12_3 {
    width: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    display: flex;
    align-content: center;
    justify-content: center;
    height: 100%;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
}


.sec_12_3_c {
    width: 600px;
    border-radius: 600px;
    overflow: hidden;
}

.sec_12_3_c .videowrap iframe {
    transform: scale(2.0);
	left: 0;
}

.sec_13 {
	padding:70px 0 200px 0;
	overflow: hidden;	
	position:relative;
	background-color: #fff;
}

.sec_13_1 {
	display: flex;
	margin: 0 auto;
	margin-top: 130px;
	width: 100%;
	max-width: 1720px;
	flex-direction: row;
	align-content: center;
	align-items: center;
	justify-content: space-between;
	padding-right:5vw;
	gap: 50px;
}

.sec_13 .ratio-4x3{
	--bs-aspect-ratio: 65%;
}


.sec_13_1_1 {
	width:60%;
}
.sec_13_2_2 {
	width:60%;
}


.sec_13_2 {
	display: flex;
	margin: 0 auto;
	margin-top: 130px;
	width: 100%;
	max-width: 1720px;
	flex-direction: row;
	align-content: center;
	align-items: center;
	justify-content: space-between;
	padding-left:5vw;
	gap: 50px;
}
.sec_14 {
	overflow: hidden;	
	position:relative;
	background-image: url(../image/sec_14_bg.png);
	background-size: cover;
	height:960px;
}

.sec_14_1 {
	padding-top:300px;
}

.sec_14_2 {
	height:960px;
}

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

.sec_14_2 .swiper-slide {
	text-align:right;
	transition: all 0.3s;
}

.sec_14_2 .swiper-slide img {	
	height:100%;
	transition: all 0.3s;
	transform: scale(0.95);
	
}
.sec_14_2 .swiper-slide.swiper-slide-active img {	
	transform: scale(1);
}
.sec_14_2 .swiper-slide.swiper-slide-prev img {	
	transform: rotate(10deg);
	transform: scale(0.95);
}
.sec_14_2 .swiper-slide.swiper-slide-next img {	
	transform: rotate(-10deg);
	transform: scale(0.95);
}

.sec_15 {
	display:flex;
	height:1300px;
}
.sec_15_2 {
	background-image: url(../image/pg);
	background-size: cover;	
	width: 41%;
	padding:400px 0;
	text-align:center;
}

.sec_15_2_1 {
	
}
.sec_15_2_1_w {
	max-width: 380px;
	margin: 0 auto;
}
.sec_15_2_1_c {
	border-radius: 100%;
    width: 380px;
    height: 380px;
    background-color: #a7a399;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
	padding-top:10px;
}

.sec_15_2_1_c_1 {
	font-size:31px;
	color:#3b3b3b;
	font-weight: 400;
	letter-spacing: -0.4px;	
}
.sec_15_2_1_c_2 {
	font-size:69px;
	color:#3b3b3b;
	font-weight: 600;
	letter-spacing: -3px;	
	line-height: 1.2;
}
.sec_15_2_1_c_3 {
	font-size:40px;
	color:#3b3b3b;
	font-weight: 400;
	letter-spacing: -0.4px;	
}
.sec_15_2_1_1 {
    font-size: 24px;
    color: rgba(255, 255, 255, 0.7);
    font-weight: 400;
    letter-spacing: -0.4px;
    margin-top: 50px;
}


.sec_15_3 {
	background-image: url(../image/sec_15_02.jpg);
	background-size: cover;	
	width: 59%;
	padding:250px 0;
	text-align:center;
}
.sec_15_3_1_1 {
	text-align:left;
	padding-left: 100px;
}


.sec_15_3_1_2_w {
	max-width: 560px;
	margin: 0 auto;
}
.sec_15_3_1_2_c {
	border-radius: 100%;
    width: 560px;
    height: 560px;
    background-color: rgba(246,242,232,0.9);
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
	padding-top:10px;
}

.sec_15_3_1_2_c_2 {
	font-size:38px;
	color:#000;
	font-weight: 400;
	letter-spacing: -0.4px;	
	margin-top:25px;
}
.sec_15_3_1_2_c_3 {
	font-size:90px;
	color:#d35f11;
	font-weight: 600;
	letter-spacing: -3px;	
	line-height: 1.2;
}
.sec_15_3_1_2_c_4 {
	font-size:49px;
	color:#000;
	font-weight: 400;
	letter-spacing: -0.4px;	
}
.sec_15_3_1_2_1 {
	font-size:45px;
	color:#fff;
	font-weight: 400;
	letter-spacing: -0.4px;	
	margin-top:50px;
}
.sec_15_3_1_2_2 {
	font-size:26px;
	color:#fff;
	font-weight: 400;
	letter-spacing: -0.4px;	
	margin-top:20px;
}
.sec_15_3_1_2_2 b{
	font-size:26px;
	color:#e87424;
	font-weight: 400;
	letter-spacing: -0.4px;	
}
.sec_15_3_1_2_3 {
	font-size:20px;
	color:#fff;
	font-weight: 400;
	letter-spacing: -0.4px;	
	margin-top:20px;
}


.sec_16 {
	padding:200px 0;
	overflow: hidden;	
	position:relative;
	background-color: #ede7d7;
}
.sec_16_1 {
	text-align:center;
}
.sec_16_2 {
	margin-top:100px;
}
.sec_16_2_1 {
	text-align:center;
}

.sec_17 {
	padding:200px 0 350px 0; 
	background-image: url(../image/sec_16_1_06.png);
	background-size: cover;
	position: relative;
}
.sec_17_1 {
	text-align:center;
}
.sec_17_2 {
	margin-top:240px;
}

.sec_17_2 .swiper {
	width: 100%;
	height: 100%;
}
.sec_17_2 .swiper-slide {
	width:390px;
}

.sec_17_2_1 {
	width:390px;
	height:635px;
	margin: 0 auto;
}
.sec_17_2_1_ct {
	padding: 465px 0 0 15px;
	font-size:13px;
	color:#000;
	font-weight: 400;
	letter-spacing: -1px;
	line-height:1.4;
}


.sec_17_3 {
	text-align:center;
	position: absolute;
	top:450px;
	width:100%;
}

.sec_18 {
	padding:200px 0; 
	background-image: url(../image/sec_17_06.png);
	background-size: cover;
	position: relative;
}
.sec_18_1 {
	text-align:center;
}
.sec_18_2 {
	margin-top:40px;
	text-align:center;
}
.sec_18_3 {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	width: 100%;
	max-width: 1420px;
	margin: 0 auto;	
	margin-top:80px;
	gap: 10px;
}

.sec_19 {
	padding:0 0 200px 0; 
	position: relative;
	background-image: url(../image/prd_02_02.png);	
}
.sec_19_1 {
	text-align:center;
}
.sec_19_2 {
	margin-top:100px;
	text-align:center;
}
.sec_19_3 {
	margin-top:100px;
	text-align:center;
	font-size:25px;
	color:#000;
	font-weight: 400;
	letter-spacing: -0.4px;	
	text-align:center;	
}

/* =========================
   PC 버전 (기본)
========================= */
.sec_20 {
    background-color: #fff;
    margin-top: 100px;
}

/* 상단 타이틀 이미지 정렬 */
.sec_20_1 {
    text-align: center !important; /* 🔴 텍스트 및 이미지를 중앙으로 정렬 */
    width: 100%;
    margin-bottom: 50px; /* 표와의 간격을 조절하고 싶을 때 사용 */
}

/* 이미지 자체가 block 요소일 경우를 대비한 추가 설정 */
.sec_20_1 img {
    display: inline-block;
    max-width: 100%; /* 모바일에서 이미지가 삐져나가지 않게 방지 */
    height: auto;
}

.sec_20_2 {
    display: flex;
    flex-direction: column;
    width: 95%; /* 양쪽 여백 살짝 부여 */
    max-width: 1200px;
    margin: 0 auto;
    border: 1px solid #ccc;
    background-color: #fff;
}

/* 1. 표 외부의 테두리 및 그림자 제거 */
.sec_20_2 {
    border: none !important;      /* 외곽선 제거 */
    box-shadow: none !important;   /* 혹시 있을지 모를 그림자 제거 */
    background-color: transparent; /* 배경을 투명하게 해서 박스 라인 제거 */
}

/* 2. '25평 기준' 텍스트 위치 변경 (표 왼쪽 라인에 맞춤) */
.sec_20_2_1_1 {
    text-align: left !important;
    width: 100% !important;
    /* 🔴 중요: 표의 max-width가 1400px이면 여기도 똑같이 1400px로 맞춰야 끝선이 맞습니다 */
    max-width: 1600px !important; 
    margin: 0 auto 15px auto !important; /* 상자 중앙 정렬 + 아래 여백 */
    
    padding-left: 10px !important;  /* 왼쪽 끝에서 살짝 띄움 */
    font-size: 40px !important;    /* 🔴 글자 크기 시원하게 키움 */
    font-weight: 600 !important;
    color: #333 !important;
    display: block !important;
}

/* 3. '*부가세 별도' 텍스트 위치 변경 (금액 밑으로) */
/* 기존에 text-end 클래스가 있다면 자동으로 오른쪽으로 가겠지만, 
   CSS에서 강제로 고정하고 싶을 때 사용하세요. */
.sec_20_2_1_1.text-end {
    text-align: right !important;
    width: 100% !important;
    max-width: 1600px !important; /* 🔴 표 너비와 동일하게 맞춤 */
    margin: 15px auto 0 auto !important; /* 위 여백 + 상자 중앙 정렬 */
    
    padding-right: 10px !important; /* 오른쪽 끝에서 살짝 띄움 */
    font-size: 30px !important;     /* 🔴 글자 크기 키움 */
    color: #666 !important;
}

/* 2. 각 행의 공통 레이아웃 (높이 및 세로 정렬) */
.sec_20_list {
    display: flex !important;
    width: 100% !important;
    padding: 25px 0 !important; /* 위아래 높이를 늘려 시원하게 만듦 */
    align-items: center;
    border-bottom: 1px solid #ddd;
}

/* 3. 각 칸의 비율 고정 (글자가 밑으로 떨어지는 현상 방지) */
.col_title { 
    width: 20% !important; 
    text-align: center; 
}
.col_desc { 
    width: 55% !important; 
    padding-left: 30px; 
}
.col_price { 
    width: 25% !important; 
    text-align: right; 
    padding-right: 40px; 
}

/* 4. 상단 헤더 디자인 (검정 바탕 + 흰색 글자) */
.sec_20_list.header {
    background-color: #B10000 !important;
    padding: 20px 0 !important;
    border-bottom: none;
}

.sec_20_list.header .col_title, 
.sec_20_list.header .col_desc, 
.sec_20_list.header .col_price {
    font-size: 24px !important; 
    font-weight: 700 !important;
    color: #fff !important;
    background-color: transparent !important;
}

/* 5. 하단 총계 디자인 (붉은색 바탕 #b10000 + 흰색 글자) */
.sec_20_list.result {
    display: flex !important;
    justify-content: flex-end !important; /* 🔴 모든 내용을 오른쪽으로 밀어버림 */
    align-items: center !important;
    padding: 35px 70px !important;     /* 오른쪽 끝에서 너무 붙지 않게 여백(40px) 추가 */
    background-color: #b10000 !important;
}

/* 합계 글자와 금액 사이의 간격 조절 */
.sec_20_list.result div {
    color: #fff !important;
    font-size: 28px !important;
    font-weight: 800 !important;
}

/* '합계' 글자만 왼쪽으로 살짝 띄우고 싶을 때 */
.sec_20_list.result .col_title {
    width: auto !important;
    margin-right: 30px !important; /* 🔴 합계와 금액 사이의 간격 */
}

/* '금액' 숫자 부분 */
.sec_20_list.result .col_price {
    width: auto !important;
    text-align: right !important;
}

/* 열 너비 설정 */
.col_title {
    width: 20%;
    background-color: #f9f9f9;
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: 1px solid #ccc;
    padding: 15px;
    text-align: center;
    font-weight: 600;
    word-break: keep-all;
}

.col_desc {
    width: 60%;
    display: flex;
    align-items: center;
    padding: 15px 25px;
    border-right: 1px solid #ccc;
    font-size: 15px;
    color: #555;
    line-height: 1.4;
}

.col_price {
    width: 20%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
    font-weight: 700;
    text-align: center;
}

/* 하단 추가 안내 섹션 (로열티, 별도공사) 스타일 */
.sec_20_4 {
    width: 100% !important;
    max-width: 1400px !important; /* 🔴 표의 너비와 똑같이 맞추세요 */
    margin: 30px auto !important; /* 표와의 간격 조절 */
}

/* 각 행 정렬 */
.sec_20_4 .sec_20_list {
    display: flex !important;
    align-items: flex-start !important; /* 글자가 많아도 위쪽 정렬 유지 */
    padding: 20px 0 !important;
    border-bottom: 1px solid #eee;
}

/* 왼쪽 타이틀 (로열티, 별도공사) */
.sec_20_4 .sec_20_title {
    width: 20% !important; /* 🔴 표의 '구분' 칸 너비와 맞춤 */
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #333;
    text-align: center;
}

/* 오른쪽 내용 (월 30만원 , 별도공사 내역 등) */
.sec_20_4 .sec_20_ct {
    width: 80% !important;
    font-size: 18px !important; /* 🔴 글자 크기 시원하게 키움 */
    line-height: 1.6;
    color: #666;
    padding-left: 30px; /* 왼쪽 타이틀과의 간격 */
    word-break: keep-all; /* 단어 단위 줄바꿈으로 깔끔하게 */
}

/* 첫 번째 리스트 위쪽 테두리 추가 (선택 사항) */
.sec_20_list.top {
    border-top: 1px solid #ddd;
}

/* =========================
   MOBILE 버전 (768px 이하)
========================= */
@media (max-width: 768px) {
    .sec_20 {
        font-size: 14px;
    }

    .sec_20_2_1_1 {
        font-size: 18px !important;
        padding-left: 5px !important;
        padding-right: 5px !important;
    }

    .cost_cover_wrapper {
        overflow: hidden;
    }

    /* 행 패딩 축소 */
    .sec_20_list {
        padding: 8px 0 !important;
    }

    /* 구분 열 */
    .col_title {
        width: 18% !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        color: #333;
        background-color: #fff !important;
        padding: 10px 4px !important;
        word-break: keep-all;
    }

    /* result 행: 빨간 배경 + 흰 글자 유지 */
    .sec_20_list.result .col_title,
    .sec_20_list.result .col_price {
        background-color: transparent !important;
        color: #fff !important;
    }

    /* 세부내역 열 - 표시 유지, 크기 축소, overflow 방지 */
    .col_desc {
        display: flex !important;
        width: 50% !important;
        font-size: 11px !important;
        padding: 10px 6px !important;
        line-height: 1.35;
        word-break: keep-all;
        overflow: hidden;
        color: #555 !important;
    }
    /* 가맹비 행 인라인 font-size 강제 억제 */
    .col_desc span {
        font-size: 11px !important;
    }

    /* 금액 열 */
    .col_price {
        width: 32% !important;
        font-size: 11px !important;
        padding: 10px 5px !important;
        justify-content: center !important;
        text-align: center !important;
        word-break: break-all;
    }

    /* 헤더 - PC와 동일한 빨간 배경, 흰 글자, 가운데 정렬 */
    .sec_20_list.header .col_title,
    .sec_20_list.header .col_desc,
    .sec_20_list.header .col_price {
        font-size: 12px !important;
        justify-content: center !important;
        text-align: center !important;
        padding: 12px 4px !important;
        background-color: transparent !important;
        color: #fff !important;
    }

    /* 합계 행 */
    .sec_20_list.result {
        padding: 15px 10px !important;
    }
    .sec_20_list.result div {
        font-size: 14px;
    }
}

/* 1. 전체 부모 박스 */
.cost_cover_wrapper {
	position: relative;
	width: 100% !important;
    max-width: 1600px !important; 
    margin: 0 auto !important;
}
.sec_20_2 {
    width: 100% !important;
    max-width: 1600px !important; /* 🔴 홈페이지 전체 너비에 맞춰 1400~1600px 사이로 조절하세요 */
    margin: 0 auto !important;
}

/* 2. 표 블러 효과 (기본 상태: 흐림) */
.sec_20_2.blur_effect {
    filter: blur(8px) grayscale(30%) !important; /* 🔴 블러 강도를 12px로 높여서 더 확실히 가림 */
	transform: scale(1.02);
	margin-top: 10px !important;
    transition: filter 0.6s ease;
	opacity: 1; /* 🔴 표 자체의 투명도를 살짝 낮추면 가림막 효과가 더 좋아집니다 */
	pointer-events: none;
	border: none !important; /* 블러 상태에서는 테두리도 제거 */
}

/* 3. 블러 제거 상태 (버튼 클릭 후 선명해짐) */
.sec_20_2.blur_effect.active {
    filter: blur(0) grayscale(0) !important;
	transform: scale(1);
	margin-top: 0 !important;
    opacity: 1;
	pointer-events: auto;
}

/* 4. 가림막 박스 */
.cost_cover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.2); /* 🔴 배경을 더 하얗게 해서 표를 가림 */
    display: none; /* 기본은 숨김 */
    justify-content: center;
    align-items: center;
    z-index: 100; /* 표 위에 오도록 */
    transition: opacity 0.5s ease;
}

/* 5. 가림막 활성화 (동작의 핵심) */
.cost_cover.active {
    display: flex; /* active일 때만 나타남 */
}

/* 표가 선명해지는 조건 */
.sec_20_2.blur_effect {
    filter: blur(15px) !important;
    transition: all 0.5s ease;
}
.sec_20_2.blur_effect.active {
    filter: blur(0) !important;
    opacity: 1 !important;
    pointer-events: auto; /* 표 내부 클릭 가능하게 변경 */
}

/* 6. 내부 디자인 */
.cover_logo {
    width: 700px !important;
    height: 700px !important;
    margin: 0 auto 30px auto;
    display: flex;
    justify-content: center;
    align-items: center;
	overflow: hidden;
}
.cover_logo img { width: 100%; height: auto; }

.cover_text h3 { font-size: 28px; font-weight: 700; color: #333; margin-bottom: 10px; }
.cover_text p { font-size: 16px; color: #666; margin-bottom: 30px; }

.cover_btn {
    background-color: #000;
    color: #fff;
    border: none;
    padding: 15px 40px;
    font-size: 17px;
    font-weight: 600;
    border-radius: 40px;
    cursor: pointer;
    box-shadow: 0 5px 20px rgba(0,0,0,0.3);
}

/* 가림막 내부 콘텐츠 전체를 중앙으로 정렬 */
.cover_content {
    display: flex;
    flex-direction: column; /* 요소를 위아래(세로)로 배치 */
    align-items: center;    /* 가로축 중앙 정렬 */
    justify-content: center;/* 세로축 중앙 정렬 */
    text-align: center;     /* 텍스트 내용 자체를 중앙 정렬 */
    width: 100%;            /* 너비를 꽉 채워야 중앙 정렬이 먹힙니다 */
}

/* 텍스트 요소들 중앙 정렬 재확인 */
.cover_text h3, .cover_text p {
    margin-left: auto;
    margin-right: auto;
    text-align: center !important;
}

/* 버튼 중앙 정렬 */
.cover_btn {
    display: inline-block; /* 버튼이 너비를 다 차지하지 않게 함 */
    margin: 0 auto;        /* 마진을 이용해 중앙으로 배치 */
}

/* 버튼 클릭 후 가림막 처리 */
.cost_cover.hidden_bg {
    background-color: transparent !important; /* 배경을 투명하게 */
    pointer-events: none; /* 클릭 방해 금지 */
}

/* 버튼 클릭 후 버튼과 '지금 확인해 보세요' 문구만 숨기기 */
.cost_cover.hidden_bg .cover_btn,
.cost_cover.hidden_bg .cover_text {
    display: none !important;
}

/* 로고는 계속 보이도록 유지 (필요시 위치 조절) */
.cost_cover.hidden_bg .cover_logo {
    display: flex !important;
    opacity: 1 !important;
    margin-top: -50px; /* 💡 표 내용과 겹친다면 위치를 위로 살짝 올림 */
}

/* 모바일 대응 */
@media (max-width: 768px) {
    .cover_logo {
        width: 360px !important;
        height: 360px !important;
    }
    .cover_text h3 { font-size: 22px; }
    .cover_btn { padding: 12px 30px; font-size: 15px; }
}

.sec_21 {
	padding: 0 0 200px 0;
    background-image: none;
	background-color: #000000; 
    background-size: cover;
    position: relative;
    margin-top: -1px;
    font-size: 25px;
    color: #ffff;
    font-weight: 400;
    letter-spacing: -1px;
    background-color: #000000;
}


.sec_21_w {
    width: 95%;
    max-width: 1280px;
    padding: 120px;
    background: #000000;
    margin: 0 auto;
}

.sec_21_1 {
	text-align:center;


}

.sec_21_2 {
	border: 1px solid #beb9ac;
    display: flex;
    padding: 0 110px;
    flex-direction: row;
    justify-content: space-between;
    margin-top: 70px;
    /* line-height: 24px; */
    height: 78px;
    align-content: center;
    align-items: center;
}

.sec_21_2_2 {
	font-size:18px;
	color:#fff;
	font-weight: 400;	
	background-color: #000;
	padding: 10px 10px 10px 10px; 
	cursor:pointer;
}

.sec_21_4_c {
	padding: 0 110px;
	font-size: 20px;
}
.sec_21_4 {
	display: flex;
	font-size: 26px;
	font-weight: 600;
	align-content: center;
	align-items: center;
	margin:50px auto;
}
.sec_21_4_1 {
	font-size:17px;
	font-weight: 300;	
	line-height: 1.4;
}
.sec_21 .reddot{
	margin-right:10px;
}
.sec_21 .reddot img{
	display: block;
}
.sec_21 .sec_21_4 .reddot{
	margin-left:20px;
}
.sec_21_row {
	margin:20px auto; 
}
.sec_21_title {
	display: flex;
	
	font-weight: 600;
	align-content: center;
	align-items: center;
}
.sec_21_title .reddot{
	margin-right:20px;
}

.sec_21 .form-control {
    border-radius: 0;
    max-width: 400px;
    font-size: 20px;
    line-height: 1;
    padding: 10px .75rem;
}
.sec_21 label {
    margin-right: 20px;
}

.form-check-input {
    margin-top: .15em;
}

.sec_21_5 {
	margin: 30px auto;
	padding:40px;
	width:100%;
	max-width: 300px;
	background-color:#b10000;
	color:#fff;
	font-size: 33px;
	font-weight: 500;
	text-align: center;
	border: 0;
}

.sec_21_pb{
    margin-top: 100px;
    display: flex;
    font-size: 40px;
    font-weight: 600;
    justify-content: center;
    align-items: center;
	gap:20px;
	padding-right: 40px;   /* 오른쪽 패딩을 주면 전체가 왼쪽으로 밀림 */

}
.sec_21_pb img{
    display: block;

}


.sec_22 {
	position: relative;	
	background:#000000;
}

.eftabwrap_store {
	width:100%;
	overflow: hidden;
}

.eftab_store {
	float:left;
	width:33.333333%;
	font-size:14px;
	color:#262626;
	text-align:center;
	padding: 15px 0;
	line-height:25px;
	background:#eee4d2;
	cursor:pointer;
}
.eftab_store span{	
	border-right:1px solid #fff;
	display:inline-block;
	width:calc( 100% - 1px);
}

.eftab_store.active{
	border-right:0px solid #fff;
	background:#fff;
}
.eftab_store:hover{
	font-weight:500;
}
.eftab_store:first-child span{
	border-right:0px solid #c49250;
}

.store .searchbox{
	margin:20px;
	border:1px solid #000;
}
.store .searchbox{
	position:relative;
}
.store .searchbox input{
	width:calc( 100% - 40px);
	border:0px;
	height:40px;
	font-size:24px;
}
.store .searchbox img{
	position:absolute;
	display:block;
	cursor:pointer;
	right:10px;
	bottom:10px;
}

.efbtn {  
	font-family: 'Noto Sans KR', sans-serif;
	display: inline-block;
	font-weight: 300;
	color: #000;
	text-align: center;
	vertical-align: middle;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	border: 1px solid transparent;
	padding: 16px 30px 15px 30px;
	font-size: 17px;
	line-height: 1.0;
	border-radius: 0px;
	transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
	cursor:pointer;

}

.btn-type-3 {
	padding: 16px 80px 15px 80px;
	color: #fff;  
	background-color: #d36d27;  
	border-color: #d36d27;
}



.prd_01 {


}
.prd_01 .prdbox_1 {
	max-width:205px;
} 
.prd_01_w {
	display:flex;
}
.prd_01_1 {
	width:50%;
	padding:200px 0;
	background:#fff;
	overflow: hidden;
}
.prd_01_1_1 {
	text-align:center;
}
.prd_01_1_2 {
	margin-top:40px;
	text-align:center;
}
.prd_01_1_3 {
	margin-top:100px;
}
.prd_01_1_3 .swiper {
	width: 100%;
	height: 100%;
}
.prd_01_1_3 .swiper-slide {
	text-align: center;
}

.prd_01_2 {
	width:50%;
	padding:200px 4%;
	background-image: url(../image/prd_02_02.png);
	background-size: cover;
	overflow: hidden;
}
.prd_01_2_1 {
	text-align:center;
}
.prd_01_2_2 {
	margin-top:40px;
	text-align:center;
}
.prd_01_2_tab{
	margin-top:70px;
}
.prd_01_2_prd{
	margin-top:60px;
}
.prd_01_2_prd .prdbox{
	width: calc(30% - 10px);
}


.prdtab {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: row;
	gap: 10px;
}
.prdtabbtns {
	border-radius: 32px;
    font-size: 25px;
    color: #000;
    font-weight: 400;
    letter-spacing: -0.4px;
    background: rgba(255, 255, 255, .7);
    line-height: 64px;
    height: 64px;
    width: 100%;
    max-width: 155px;
    text-align: center;
	cursor:pointer;
}
.prdtabbtns.active {
	color:#fff;
	background: #6e2e02;
}

.prdtab2 {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: row;
	gap:80px;
}
.prdtabbtns2 {
	border-radius: 32px;
    font-size: 25px;
    color: #000;
    font-weight: 400;
    letter-spacing: -0.4px;
    background: rgba(255, 255, 255, .7);
    line-height: 64px;
    height: 64px;
    width: 100%;
    max-width: 155px;
    text-align: center;
	cursor:pointer;
}
.prdtabbtns2.active {
	color:#fff;
	background: #6e2e02;
}

.prds {
    display: flex;
	justify-content: center;
	align-items: flex-start;
	align-content: flex-start;
    flex-direction: row;
    flex-wrap: wrap;
	display:none;
	gap: 2%;
}
.prds.active{
	display: flex;
}
.prdbox {
	margin-bottom:30px;
	text-align:center;	
}
.prdbox_1 {
	position: relative;
}
.prdbox_1 img{
	width:100%;
}
.prdbox_1_m{
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index: 1;
	padding:7%;
}
.prdbox_1_c{
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index: 0;
	mix-blend-mode: multiply;
}


.prdbox_2 {
	margin-top:10px;
	font-size: 24px;
    color: #000;
    font-weight: 400;
    letter-spacing: -0.4px;
}
.prdbox2{	
	margin-bottom:30px;
	text-align:center;	
}
.prdsetbox {
	width:100%;
	margin-bottom:30px;
}

.prdsetbox_1 {
	display: flex	;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	align-content: center;	
	gap:5px;
}
.prdsetbox_1_plus {
	color:#6d2d02;
	font-size:40px;
	font-weight: 200;
}
.prdsetbox_2 {
	margin-top:10px;
	font-size: 24px;
    color: #000;
    font-weight: 400;
    letter-spacing: -0.4px;
	text-align:center;
}


.prd_02 {
	padding:200px 0;
	background-color:#ede7d7;
	overflow: hidden;
}
.prd_02_1 {
	text-align:center;
}

.prd_02_2_tab{
	margin: 0 auto;
    margin-top: 100px;
    display: flex;
    justify-content: space-between;
    max-width: 900px;
}
.prd_02_2_prd{
	margin-top:50px;
}

.prd_02 .prdbox {
     width: 320px;
}
.prd_02 .prdbox_1 {
	width: 320px;
}

.prd_03 {
	padding: 200px 0;
	background-image: url(../image/prd_02_02.png);	
}
.prd_03_1 {
	text-align:center;
}
.prd_03_1_tab {
	margin-top:70px;
}
.prd_03_2_tab {
	margin-top:70px;
	display:none;
	gap: 0px;
}
.prd_03_2_tab.active {
	display:flex;
}
.prd_03_2_t_b {
	margin-top:10px;
	font-size: 24px;
    color: #000;
    font-weight: 400;
	border-right: 1px solid #000;
	padding : 0 60px;	
}
.prd_03_2_t_b.nob {
	border-right: 0px solid #000;
}
.prd_03_2_t_b.active {
	font-weight: 800;
}

.prd_03_3_prd {
	width:100%;
	max-width:1220px;
	margin : 80px auto;
	height: 500px;
}


.prd_03 .swiper {
	width: 100%;
	overflow: hidden;
}

.prd_03 .swiper-slide  {
	text-align:center;
	font-size: 24px;
    color: #000;
    font-weight: 400;	
	margin-bottom: 30px;	
}
.prd_03 .swiper-slide img {
	display:inline-block;
	margin-bottom:20px;

}

.prd_03 .swiper-button-prev {
    left: auto;
    right: auto;
    bottom: -40px;
    top: auto;
    right: 40px;
}

.prd_03 .swiper-button-next {
    left: auto;
    right: auto;
    bottom: -40px;
    top: auto;
    right: 0px;
}
.prd_03 .swiper-pagination-progressbar{
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 2px);
    left: 0;
    top: auto;
    bottom: -55px;
	background:  rgba(0, 0, 0, .25);
}

.prd_03 .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #000;
}

.prd_03 .swiper-button-next, .prd_03 .swiper-button-prev {
    color: #000;
}
.prd_03_Swiper_1_btns {
	position: relative;
}

.prd_03_3_prd{
	display:none;
}
.prd_03_3_prd.active{
	display:block;
}


.efpopup {
	background:rgba(255,255,255,0.8);
	box-shadow: 0px 0px 14px rgb(0 0 0 / 62%);
}
.efpopup p{
	padding: 3px 5px;
	text-align:right;
	cursor:pointer;
	margin: 0;
}

/* 인테리어 사진 섹션 */
.sec_interior_banner {
    width: 100%;
    overflow: hidden;
    line-height: 0; /* 이미지 하단 공백 방지 */
    background-color: #fff;
}

.interior_img_box {
    width: 100%;
}

.interior_img_box img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
}

/* --- 개별 섹션 간격 조절 --- */

/* 첫 번째 이미지 */
.sec_interior_banner.interior_01 {
    margin-top: 50px;    /* 위쪽 섹션과의 간격 */
    margin-bottom: 20px; /* 🔴 첫 번째와 두 번째 이미지 사이의 간격 */
}

/* 두 번째 이미지 */
.sec_interior_banner.interior_02 {
    margin-bottom: 80px; /* 아래쪽 성공창업 섹션과의 간격 */
}

/* 모바일 대응: 화면이 작아질 때 간격이 너무 넓어 보이면 조절 */
@media (max-width: 768px) {
    .sec_interior_banner.interior_01 { margin-top: 30px; margin-bottom: 10px; }
    .sec_interior_banner.interior_02 { margin-bottom: 50px; }
}

/* 1. 헤더를 감싸는 모든 상위 요소의 너비 제한 해제 */
nav, 
.nav_wrap,
.header_inner {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 2. 실제 흰색 배경이 들어가는 영역을 강제로 꽉 채우기 */
header {
    position: fixed; /* 또는 absolute, 페이지 구조에 따라 확인 */
    top: 0;
    left: 0;
    width: 100vw !important; /* 화면 전체 너비 사용 */
    background-color: #fff !important;
    z-index: 9999;
}

/* 3. 내부 콘텐츠 정렬 (로고와 메뉴가 너무 끝에 붙지 않게) */
header > div {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 0 5% !important; /* 좌우 5% 정도 여백 */
}

/* 전골 메뉴 사진 아래로 텍스트 배치 및 중앙 정렬 */
.prd_03 .swiper-slide {
    display: flex !important;
    flex-direction: column !important; /* 세로 방향으로 정렬 */
    align-items: center !important;    /* 가로 중앙 정렬 */
    justify-content: center !important;
    text-align: center !important;
}

.prd_03 .swiper-slide img {
    display: block !important;         /* 이미지를 한 줄 전체 차지하게 변경 */
    margin: 0 auto 15px auto !important; /* 아래쪽 글자와의 간격(15px) 조절 */
    width: 100% !important;            /* 슬라이드 너비에 맞춤 */
    max-width: 100% !important;
    height: auto !important;
}

/* 전골 메뉴(Swiper 1) 항목이 적을 때 중앙 정렬 */
.prd_03_Swiper_1 .swiper-wrapper {
    display: flex !important;
    justify-content: center !important; /* 항목들을 중앙으로 모음 */
}

/* 구이 메뉴(Swiper 2)도 항목이 2개라면 함께 적용 */
.prd_03_Swiper_2 .swiper-wrapper {
    display: flex !important;
    justify-content: center !important;
}

/* 세트 메뉴(Swiper 3) 항목 중앙 정렬 */
.prd_03_Swiper_3 .swiper-wrapper {
    display: flex !important;
    justify-content: center !important; /* 왼쪽 쏠림 방지 및 중앙 정렬 */
}

/* 세트 메뉴 슬라이드 내부 정렬 최적화 */
.prd_03_Swiper_3 .swiper-slide {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
}

/* 세트 메뉴 이미지 크기 조정 (사이드 메뉴와 통일) */
.prd_03_Swiper_3 .prdsetbox_single img {
    width: 100% !important;
    max-width: 350px !important; /* 사진이 너무 커지지 않게 제한 */
    height: auto !important;
}

/* 인테리어 섹션 겹침 방지 (PC 버전) */
@media (min-width: 1025px) {
    .sec_interior.forpc {
        position: relative;
        width: 100%;
        /* 사진들이 배치된 가장 아래 지점(1200px + 사진높이)을 고려하여 높이 설정 */
        height: 1700px !important; 
        overflow: visible;
    }

    .sec_interior.forpc .sec_04_01_wp {
        position: relative;
        height: 100%;
    }
}

/* 인테리어 섹션 (모바일 버전) */
@media (max-width: 1024px) {
    .sec_interior.formobile {
        padding-bottom: 50px; /* 다음 섹션과의 간격 */
    }
    
    /* 모바일에서는 사진들이 세로로 나열되므로 높이를 auto로 설정 */
    .sec_interior.formobile .sec_04_01_wp {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }
}

.popup_wrap {
    position: fixed;
    top: 50px;
    left: 50px;
    z-index: 99999;
    width: 400px; /* 팝업 너비 조절 */
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
    background: #fff;
}

.popup_footer {
    background: #333;
    color: #fff;
    padding: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 13px;
}

.popup_footer label { cursor: pointer; }
.popup_footer button {
    background: none;
    border: none;
    color: #fff;
    cursor: pointer;
    font-weight: bold;
}

/* 모바일 대응 */
@media (max-width: 767px) {
    .popup_wrap {
        width: 80%;
        top: 10%;
        left: 10%;
    }
}

/* =========================================
   매출 및 수익률 섹션 (기존 sec_09 대체)
========================================= */
.sec_profit {
    background-color: #000;
    color: #fff;
    padding: 100px 0;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
}
.sec_profit .inner-wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}
.sec_profit .inner-wrap2 {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
	position: relative;
	/*left: -120px;*/
}
@media (max-width: 768px) {
	.sec_profit .inner-wrap2 {
		left: 0px;
	}
}

.sec_profit .badge-pill {
    display: inline-block;
    background-color: #BA0711;
    color: #fff;
    padding: 10px 30px;
    border-radius: 50px;
    font-weight: bold;
    font-size: 50px;
    margin-bottom: 25px;
}
.sec_profit .main-title {
    font-size: 48px;
    font-weight: 900;
    line-height: 1.3;
    margin-bottom: 60px;
    letter-spacing: -2px;
}
.sec_profit .text-orange { color: #BA0711 !important; }

/* 상단 차트 영역 */
.sec_profit .top-chart-area {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 50px;
    margin-bottom: 80px;
    flex-wrap: nowrap;
}
.sec_profit .circle-highlight {
    background-color: #BA0711;
    width: 350px;
    height: 350px;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border: 6px solid #fff;
    box-shadow: 0 0 30px rgba(242, 92, 34, 0.4);
}
.sec_profit .circle-highlight p:first-child { font-size: 45px; margin: 0; font-weight: bold; }
.sec_profit .circle-highlight h3 { font-size: 65px; margin: 5px 0; font-weight: 900; line-height: 1; letter-spacing: -2px;}
.sec_profit .circle-highlight h3 span { font-size: 45px; }
.sec_profit .circle-highlight p:last-child { font-size: 20px; margin: 0; margin-top: 10px; line-height: 1.4; font-weight: 500;}

.sec_profit .bar-chart-img {
    max-width: 600px;
    width: 100%;
    height: auto;
}

/* 중간 배너 */
.sec_profit .mid-banner-area { margin-bottom: 70px; }
.sec_profit .mid-banner-area h3 {
    font-size: 50px;
    font-weight: bold;
    margin-bottom: 20px;
    letter-spacing: -1px;
}
.sec_profit .orange-full-banner {
    background-color: #BA0711;
    color: #fff;
    font-size: 100px;
    font-weight: 900;
    padding: 25px 0;
    width: 100%;
    letter-spacing: -2px;
}

/* 하단 테이블 & 도넛 차트 */
.sec_profit .bottom-stats-area {
    display: flex;
    justify-content: flex-start;;
    align-items: center;
    gap: 60px;
    flex-wrap: nowrap;
    margin-top: 50px;
    margin-left: -140px;
}
.sec_profit .donut-chart-img {
    max-width: 600px;
    width: 100%;
    height: auto;
}

/* 데이터 테이블 */
.sec_profit .data-table {
    border-collapse: collapse;
    width: 600px;
    color: #fff;
    font-size: 16px;
    text-align: center;
}
.sec_profit .data-table th, .sec_profit .data-table td {
    padding: 14px 10px;
    border-bottom: 1px solid #333;
}
.sec_profit .data-table th { border-top: 2px solid #fff; border-bottom: 2px solid #fff; font-size: 14px; color: #ccc;}
.sec_profit .data-table tr.total-row {
    background-color: #BA0711;
    font-weight: bold;
    font-size: 22px;
    border-bottom: none;
}
.sec_profit .data-table tr.total-row td { border: none; padding: 18px 10px; color: #fff !important; }

.sec_profit .footer-note {
    margin-top: 50px;
    font-size: 14px;
    color: #fff;
    line-height: 1.6;
}


/* 모바일 반응형 처리 */
@media (max-width: 768px) {
    .sec_profit .main-title { font-size: 32px; }
    .sec_profit .top-chart-area { flex-direction: column; gap: 30px; margin-bottom: 40px; }
    .sec_profit .circle-highlight { width: 280px; height: 280px; }
    .sec_profit .circle-highlight p:first-child { font-size: 28px; }
    .sec_profit .circle-highlight h3 { font-size: 52px; }
    .sec_profit .circle-highlight h3 span { font-size: 34px; }
    .sec_profit .circle-highlight p:last-child { font-size: 15px; }
    .sec_profit .bar-chart-img { max-width: 100%; }
    .sec_profit .orange-full-banner { font-size: 26px; padding: 15px 0; }
    .sec_profit .data-table { width: 100%; font-size: 14px; }
    .sec_profit .data-table tr.total-row { font-size: 18px; }
}

/* 기본 위치 및 정렬 유틸리티 */
.rltv { position: relative; }
.absol { position: absolute; }
.flexcol { display: flex; flex-direction: column; }

/* 섹션 전체 레이아웃 (배경 이미지 위에 텍스트가 얹어지는 형태) */
.con13 {
  width: 100%;
  overflow: hidden;
  background-color: #1a1a1a; /* 배경색 예시 */
}

/* 텍스트 컨테이너를 배경 중앙이나 원하는 위치에 띄우기 */
.con13_main.absol {
  top: 10%;
  left: 0;
  width: 100%;
  text-align: center;
  color: white; /* .white 클래스 역할 */
}

/* 텍스트 스타일링 */
.color_o { color: #ff6600; /* 포인트 컬러 (예: 오렌지) */ }
.title { font-size: 2.5rem; font-weight: bold; margin-bottom: 20px; }
.subTitle { font-size: 1.2rem; margin-bottom: 10px; }
.con13_tt01, .con13_tt02 { margin-bottom: 15px; line-height: 1.6; }

/* Swiper 슬라이드 스타일 설정 */
.con13_slide {
  margin-top: 50px;
  width: 100%;
}
.con13_slide .swiper-slide {
  width: 600px; /* 이미지 크기에 맞춰 슬라이드 너비 자동 조절 */
}
.con13_slide_img img {
    width: 100%;
    
    /* 방법 1: 높이를 픽셀로 고정하는 방법 */
    height: 400px; 
    
    /* 방법 2: (추천) 가로세로 비율로 고정하는 방법 (최신 브라우저 지원) */
    /* aspect-ratio: 3 / 4; */ 
    
    object-fit: cover; /* 핵심! 비율을 유지하면서 빈틈없이 영역을 채움 */
    
    border-radius: 10px;
    display: block;
}
/* 흐르는 듯한 애니메이션을 위한 Swiper 속도 선형 처리 */
.swiper-wrapper.flow {
  transition-timing-function: linear !important;
}

.root_daum_roughmap .cont {
	display: none;
}

/* sec_002 전체 섹션 */
.sec_002 {
    background-color: #1a1a1a;
    padding: 100px 0;
}

/* 내부 2단 레이아웃 */
.sec_002_inner {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: center;
    gap: 60px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
}

/* 왼쪽 텍스트 영역 */
.sec_002_text {
    flex: 1;
    max-width: 580px;
    color: #ffffff;
}

/* 라벨 (뼈화당 이야기) */
.sec_002_label {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 30px;
    color: #e8c97a;   /* 골드 컬러 */
    margin-bottom: 24px;
    letter-spacing: 1px;
}
.sec_002_line {
    display: inline-block;
    width: 40px;
    height: 2px;
    background-color: #e8c97a;
}

/* 제목 */
.sec_002_title {
    font-size: 50px;
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: -1px;
    color: #ffffff;
    margin-bottom: 36px;
}

/* 본문 */
.sec_002_body {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.9;
    color: #cccccc;
    margin-bottom: 28px;
    letter-spacing: -0.3px;
}

/* 인용 블록 */
.sec_002_quote {
    border-left: 4px solid #b10000;
    padding: 20px 24px;
    margin: 28px 0;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.7;
    color: #ffffff;
    background-color: rgba(177, 0, 0, 0.08);
    letter-spacing: -0.5px;
}

/* 서명 */
.sec_002_sign {
    font-size: 16px;
    color: #aaaaaa;
    margin-top: 40px;
    padding-top: 10px;
}
.sec_002_hr {
    border: none;
    border-top: 1px solid #444444;
    margin-bottom: 20px;
}

/* 오른쪽 이미지 */
.sec_002_img {
    flex: 1;
    max-width: 500px;
    display: flex;
    flex-direction: column;
    justify-content: center;       /* 세로 중앙 정렬 */
}

.sec_002_img img {
    width: 100%;
    height: 320px;                 /* 고정 높이로 가로 형태 유지 (원하는 값으로 조절) */
    object-fit: cover;             /* 가로 형태 유지하며 꽉 채움 */
    object-position: center;       /* 이미지 중심 기준으로 크롭 */
    display: block;
    border-radius: 16px;           /* 라운드 효과 (값 조절 가능) */
}


/* 모바일 반응형 */
@media (max-width: 768px) {
    .sec_002_inner {
        flex-direction: column;
    }
    .sec_002_title {
        font-size: 28px;
    }
    .sec_002_img {
        max-width: 100%;
        width: 100%;
        aspect-ratio: 4 / 3;
        overflow: hidden;
        border-radius: 16px;
    }
    .sec_002_img img {
        height: 100%;
        border-radius: 0;
    }
}

/* ===== 창업비용 섹션 ===== */
.sec_startup {
    background-color: #1a0e06;
    background-image: radial-gradient(ellipse at 80% 20%, rgba(120, 60, 10, 0.4) 0%, transparent 60%);
    padding: 100px 0 80px;
}

.sec_startup_inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
}

/* 상단 제목 + 불릿 */
.sec_startup_top {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    gap: 60px;
    margin-bottom: 70px;
}

.sec_startup_title_wrap {
    flex: 1.2;
}

.sec_startup_label {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 30px;
    color: #e8c97a;
    margin-bottom: 20px;
    letter-spacing: 1px;
}

.sec_startup_line {
    display: inline-block;
    width: 36px;
    height: 2px;
    background-color: #e8c97a;
}

.sec_startup_title {
    font-size: 55px;
    font-weight: 900;
    line-height: 1.25;
    letter-spacing: -1.5px;
    color: #ffffff;
}

/* 불릿 포인트 */
.sec_startup_bullets {
    flex: 1;
    list-style: none;
    padding: 0;
    margin: 0;
    padding-top: 60px;
}

.sec_startup_bullets li {
    font-size: 17px;
    color: #dddddd;
    line-height: 1.6;
    margin-bottom: 20px;
    padding-left: 20px;
    position: relative;
    letter-spacing: -0.3px;
}

.sec_startup_bullets li::before {
    content: "◆";
    color: #b10000;
    font-size: 10px;
    position: absolute;
    left: 0;
    top: 5px;
}

/* STEP 카드 */
.sec_startup_steps {
    display: flex;
    flex-direction: row;
    gap: 0;
    border: 1px solid #3a2a1a;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 40px;
}

.sec_startup_step {
    flex: 1;
    padding: 30px 24px;
    border-right: 1px solid #3a2a1a;
    background-color: rgba(255, 255, 255, 0.03);
}

.sec_startup_step:last-child {
    border-right: none;
}

.sec_startup_step_num {
    font-size: 13px;
    color: #e8c97a;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 12px;
}

.sec_startup_step_title {
    font-size: 20px;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 14px;
    letter-spacing: -0.5px;
}

.sec_startup_step_desc {
    font-size: 14px;
    color: #aaaaaa;
    line-height: 1.7;
    letter-spacing: -0.3px;
}

/* 하단 배너 */
.sec_startup_banner {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    background-color: rgba(255, 255, 255, 0.05);
    border: 1px solid #3a2a1a;
    border-radius: 12px;
    padding: 40px 50px;
    margin-top: 20px;
}

.sec_startup_banner_title {
    font-size: 26px;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 10px;
    letter-spacing: -0.5px;
}

.sec_startup_banner_desc {
    font-size: 15px;
    color: #aaaaaa;
    line-height: 1.6;
}

.sec_startup_banner_right {
    text-align: right;
}

.sec_startup_banner_label {
    font-size: 13px;
    color: #888888;
    letter-spacing: 1px;
    margin-bottom: 8px;
}

.sec_startup_banner_tel {
    font-size: 44px;
    font-weight: 900;
    color: #e8c97a;
    letter-spacing: 2px;
}

/* 모바일 반응형 */
@media (max-width: 768px) {
    .sec_startup_top { flex-direction: column; gap: 30px; }
    .sec_startup_title { font-size: 32px; }
    .sec_startup_steps { flex-direction: column; }
    .sec_startup_step { border-right: none; border-bottom: 1px solid #3a2a1a; }
    .sec_startup_step:last-child { border-bottom: none; }
    .sec_startup_banner { flex-direction: column; gap: 24px; text-align: center; }
    .sec_startup_banner_right { text-align: center; }
    .sec_startup_banner_tel { font-size: 32px; }
}

/* ===== 순수의률 섹션 ===== */
.sec_pureprofit {
    background-color: #000;
    padding: 80px 0 90px;
}

.sec_pureprofit_inner {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
    gap: 40px;
}

/* 왼쪽 텍스트 */
.sec_pureprofit_left {
    flex: 1.4;
}

.sec_pureprofit_label {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 30px;
    color: #e8c97a;
    margin-bottom: 20px;
    letter-spacing: 1px;
}

.sec_pureprofit_line {
    display: inline-block;
    width: 36px;
    height: 2px;
    background-color: #e8c97a;
}

.sec_pureprofit_title {
    font-size: 44px;
    font-weight: 900;
    line-height: 1.25;
    letter-spacing: -1.5px;
    color: #ffffff;
    margin-bottom: 36px;
}

.sec_pureprofit_desc {
    font-size: 16px;
    color: #aaaaaa;
    line-height: 1.9;
    letter-spacing: -0.3px;
}

/* 오른쪽 숫자 */
.sec_pureprofit_right {
    flex: 1;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    gap: 4px;
    white-space: nowrap;
}

.sec_pureprofit_num {
    font-size: 160px;
    font-weight: 900;
    color: #b10000;
    line-height: 1;
    letter-spacing: -4px;
}

.sec_pureprofit_unit {
    font-size: 48px;
    font-weight: 900;
    color: #ffffff;
    padding-bottom: 20px;
    letter-spacing: -1px;
}

/* 모바일 반응형 */
@media (max-width: 768px) {
    .sec_pureprofit_inner {
        flex-direction: column;
        align-items: flex-start;
    }
    .sec_pureprofit_title {
        font-size: 28px;
    }
    .sec_pureprofit_right {
        justify-content: flex-start;
    }
    .sec_pureprofit_num {
        font-size: 100px;
    }
    .sec_pureprofit_unit {
        font-size: 32px;
    }
}

/* ===== 시그니처 메뉴 섹션 ===== */
.sec_menu {
    background-color: #111111;
    padding: 100px 0 80px;
}

.sec_menu_inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
}

/* 헤더 */
.sec_menu_label {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 30px;
    color: #e8c97a;
    margin-bottom: 18px;
    letter-spacing: 1px;
}
.sec_menu_line {
    display: inline-block;
    width: 36px;
    height: 2px;
    background-color: #e8c97a;
}
.sec_menu_title {
    font-size: 44px;
    font-weight: 900;
    line-height: 1.25;
    letter-spacing: -1.5px;
    color: #ffffff;
    margin-bottom: 20px;
}
.sec_menu_desc {
    font-size: 16px;
    color: #aaaaaa;
    line-height: 1.8;
    letter-spacing: -0.3px;
    margin-bottom: 36px;
}

/* 탭 */
.sec_menu_tabs {
    display: flex;
    gap: 10px;
    margin-bottom: 30px;
    flex-wrap: nowrap;          /* 줄바꿈 금지 */
    overflow-x: auto;           /* 가로 스크롤 허용 */
    -webkit-overflow-scrolling: touch;  /* iOS 부드러운 스와이프 */
    scrollbar-width: none;      /* 스크롤바 숨김 (Firefox) */
    -ms-overflow-style: none;   /* 스크롤바 숨김 (IE) */
    padding-bottom: 4px;
}

/* 스크롤바 숨김 (Chrome/Safari) */
.sec_menu_tabs::-webkit-scrollbar {
    display: none;
}
.sec_menu_tab {
    background-color: #222222;
    color: #aaaaaa;
    border: 1px solid #333333;
    border-radius: 30px;
    padding: 8px 22px;
    font-size: 15px;
    cursor: pointer;
    transition: all 0.2s;
    letter-spacing: -0.3px;
}
.sec_menu_tab.active,
.sec_menu_tab:hover {
    background-color: #b10000;
    color: #ffffff;
    border-color: #b10000;
}

/* 메뉴 그리드 전체 */
.sec_menu_grid {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* ★ 1행: 4열 동일 그리드 (파란 네모와 동일) */
.sec_menu_row_top {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

/* ★ 1행 카드 이미지 높이 (파란 네모와 동일) */
.sec_menu_row_top .sec_menu_card .sec_menu_img_wrap {
    height: 200px;
}

/* flex 클래스 무력화 (더 이상 사용 안 함) */
.sec_menu_card.menu_large_main,
.sec_menu_card.menu_small_right {
    flex: unset;
}

/* 2행 이후: 4열 그리드 */
.sec_menu_row_bottom {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

/* 2행 이후 카드 이미지 높이 */
.sec_menu_row_bottom .sec_menu_card .sec_menu_img_wrap {
    height: 200px;
}

/* 카드 공통 */
.sec_menu_card {
    background-color: #1a1a1a;
    border-radius: 12px;
    overflow: hidden;
    position: relative;
}

/* 이미지 공통 */
.sec_menu_img_wrap {
    width: 100%;
    overflow: hidden;
}
.sec_menu_img_wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}
.sec_menu_card:hover .sec_menu_img_wrap img {
    transform: scale(1.04);
}

/* 카드 하단 정보 */
.sec_menu_card_info {
    padding: 16px 18px 20px;
}
.sec_menu_badge {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    padding: 3px 10px;
    border-radius: 4px;
    margin-bottom: 8px;
    text-transform: uppercase;
}
.sec_menu_badge.signature { background-color: #b10000; color: #fff; }
.sec_menu_badge.jungol    { background-color: #333333; color: #e8c97a; }
.sec_menu_badge.side      { background-color: #333333; color: #aaaaaa; }
.sec_menu_badge.finish    { background-color: #333333; color: #aaaaaa; }

.sec_menu_card_name {
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.5px;
    margin-bottom: 6px;
}
.sec_menu_card_desc {
    font-size: 13px;
    color: #888888;
    line-height: 1.6;
    letter-spacing: -0.2px;
}

/* 하단 포인트 문구 */
.sec_menu_footer {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 40px;
    padding: 20px 28px;
    background-color: #1a1a1a;
    border-radius: 8px;
    border: 1px solid #2a2a2a;
}
.sec_menu_footer_badge {
    background-color: #b10000;
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    padding: 4px 12px;
    border-radius: 4px;
    white-space: nowrap;
}
.sec_menu_footer_text {
    font-size: 14px;
    color: #aaaaaa;
    line-height: 1.6;
    letter-spacing: -0.3px;
}

/* 숨김 처리 (탭 필터용) */
.sec_menu_card.hidden {
    display: none;
}

/* 모바일 반응형 (이 코드로 완전히 덮어쓰기 하세요) */
@media (max-width: 768px) {
    .sec_menu_title { font-size: 28px; }
    .sec_menu_row_top { grid-template-columns: repeat(2, 1fr); }
    .sec_menu_card.menu_large_main .sec_menu_img_wrap { height: 200px; }
    .sec_menu_card.menu_small_right .sec_menu_img_wrap { height: 200px; }
    .sec_menu_row_bottom { grid-template-columns: repeat(2, 1fr); }

    /* ⬇️ 여기서부터 글자 잘림을 해결하기 위해 새로 추가된 코드입니다 ⬇️ */
    .sec_menu_card_name {
        font-size: 15px;       /* 글자 크기를 기존 18px에서 15px로 줄여 공간을 확보합니다 */
        letter-spacing: -1px;  /* 글자 사이의 간격(자간)을 좁혀 글자가 가로로 차지하는 공간을 더 줄입니다 */
        word-break: keep-all;  /* 단어가 중간에 어중간하게 끊기지 않도록 깔끔하게 정렬합니다 */
    }
    
    .sec_menu_card_info {
        padding: 16px 10px 20px; /* 좌우 여백을 기존 18px에서 10px로 줄여 글자가 들어갈 자리를 더 넓혀줍니다 */
    }
}
/* ===== 리뷰 섹션 ===== */
.sec_review {
    background-color: #111111;
    padding: 100px 0 0;
    overflow: hidden;
}

.sec_review_inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 0 0 40px;
}

/* 헤더 */
.sec_review_label {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 30px;
    color: #e8c97a;
    margin-bottom: 18px;
    letter-spacing: 1px;
}
.sec_review_line {
    display: inline-block;
    width: 36px;
    height: 2px;
    background-color: #e8c97a;
}
.sec_review_title {
    font-size: 44px;
    font-weight: 900;
    line-height: 1.25;
    letter-spacing: -1.5px;
    color: #ffffff;
    margin-bottom: 20px;
}
.sec_review_desc {
    font-size: 16px;
    color: #aaaaaa;
    line-height: 1.8;
    letter-spacing: -0.3px;
    margin-bottom: 48px;
}

/* 슬라이더 영역 */
.sec_review_slider {
    width: 100%;
    overflow: hidden;
    padding-bottom: 60px;
}

/* Swiper 슬라이드 너비 고정 */
.sec_review_slider .swiper-slide {
    width: 340px !important;
    height: auto;
}

/* 카드 */
.sec_review_card {
    background-color: #1c1c1c;
    border-radius: 12px;
    overflow: hidden;
    width: 340px;
    border: 1px solid #2a2a2a;
}

/* 이미지 영역 */
.sec_review_img {
    width: 100%;
    height: 280px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* 카드 하단 본문 */
.sec_review_body {
    padding: 14px 16px 18px;
    background-color: #1c1c1c;
}

/* 인스타그램 스타일 아이콘 */
.sec_review_icons {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    font-size: 18px;
}
.sec_review_icon_heart {
    color: #e0245e;
    font-size: 20px;
}
.sec_review_icon {
    color: #aaaaaa;
    font-size: 18px;
}
.sec_review_icon_bookmark {
    margin-left: auto;
    color: #aaaaaa;
    font-size: 16px;
}

/* 리뷰 텍스트 */
.sec_review_text {
    font-size: 13px;
    color: #cccccc;
    line-height: 1.75;
    letter-spacing: -0.2px;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* 모바일 반응형 */
@media (max-width: 768px) {
    .sec_review_title { font-size: 28px; }
    .sec_review_slider .swiper-slide { width: 280px !important; }
    .sec_review_card { width: 280px; }
    .sec_review_img { height: 220px; }
}

/* ===== 매장 인테리어 섹션 ===== */
.sec_interior {
    background-color: #111111;
    padding: 100px 0 100px;
}

.sec_interior_inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
}

/* 헤더 */
.sec_interior_label {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 30px;
    color: #e8c97a;
    margin-bottom: 18px;
    letter-spacing: 1px;
}
.sec_interior_line {
    display: inline-block;
    width: 36px;
    height: 2px;
    background-color: #e8c97a;
}
.sec_interior_title {
    font-size: 48px;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: -2px;
    color: #ffffff;
    margin-bottom: 20px;
}
.sec_interior_desc {
    font-size: 15px;
    color: #aaaaaa;
    line-height: 1.8;
    letter-spacing: -0.3px;
    margin-bottom: 48px;
}

/* 이미지 그리드 레이아웃 */
.sec_interior_grid {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 12px;
}

/* 왼쪽 큰 이미지 */
.sec_interior_main {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    aspect-ratio: 4 / 3.2;
}
.sec_interior_main img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* 오른쪽 2x2 서브 그리드 */
.sec_interior_sub_grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

/* 오른쪽 작은 이미지 */
.sec_interior_sub {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    aspect-ratio: 1 / 0.85;
}
.sec_interior_sub img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* 캡션 (이미지 하단 좌측) */
.sec_interior_caption {
    position: absolute;
    bottom: 12px;
    left: 14px;
    font-size: 13px;
    color: #ffffff;
    background-color: rgba(0, 0, 0, 0.45);
    padding: 3px 10px;
    border-radius: 4px;
    letter-spacing: 0.5px;
}

/* ===== 가맹 문의 섹션 ===== */
.sec_franchise {
    background-color: #ffff;
    padding: 100px 0 100px;
}

.sec_franchise_inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
}

/* 헤더 */
.sec_franchise_label {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 30px;
    color: #e8c97a;
    margin-bottom: 18px;
    letter-spacing: 1px;
}
.sec_franchise_line {
    display: inline-block;
    width: 36px;
    height: 2px;
    background-color: #e8c97a;
}
.sec_franchise_title {
    font-size: 40px;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: -1.5px;
    color: #000000;
    margin-bottom: 56px;
}

/* 2단 레이아웃 */
.sec_franchise_body {
    display: grid;
    grid-template-columns: 1fr 1.6fr;
    gap: 60px;
    align-items: start;
}

/* 왼쪽 */
.sec_franchise_desc {
    font-size: 15px;
    color: #aaaaaa;
    line-height: 1.9;
    margin-bottom: 36px;
}

.sec_franchise_phone_box {
    border: 1px solid #333333;
    border-radius: 10px;
    padding: 24px 28px;
    background-color: rgba(255,255,255,0.03);
}
.sec_franchise_phone_label {
    font-size: 13px;
    color: #888888;
    letter-spacing: 1px;
    margin-bottom: 8px;
}
.sec_franchise_phone_number {
    font-size: 34px;
    font-weight: 900;
    color: #b10000;
    letter-spacing: 2px;
    margin-bottom: 12px;
}
.sec_franchise_phone_hours {
    font-size: 13px;
    color: #888888;
    line-height: 1.8;
}

/* 오른쪽 폼 */
.sec_franchise_form {
    background-color: rgba(255,255,255,0.04);
    border: 1px solid #2a2a2a;
    border-radius: 12px;
    padding: 36px 32px;
}

.sec_franchise_form_row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 16px;
}

.sec_franchise_form_group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.sec_franchise_form_full {
    margin-bottom: 16px;
}

.sec_franchise_form_group label {
    font-size: 12px;
    color: #000000;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.sec_franchise_form_group input,
.sec_franchise_form_group select,
.sec_franchise_form_group textarea {
    background-color: #ffffff;
    border: 1px solid #333333;
    border-radius: 6px;
    color: #333333;
    font-size: 14px;
    padding: 12px 14px;
    outline: none;
    transition: border-color 0.2s;
    font-family: inherit;
    width: 100%;
    box-sizing: border-box;
}
.sec_franchise_form_group input::placeholder,
.sec_franchise_form_group textarea::placeholder {
    color: #555555;
}
.sec_franchise_form_group input:focus,
.sec_franchise_form_group select:focus,
.sec_franchise_form_group textarea:focus {
    border-color: #b10000;
}
.sec_franchise_form_group select option {
    background-color: #ffffff;
}
.sec_franchise_form_group textarea {
    resize: vertical;
    min-height: 120px;
}

/* 개인정보 동의 */
.sec_franchise_agree {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 20px;
}
.sec_franchise_agree input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin-top: 2px;
    flex-shrink: 0;
    accent-color: #b10000;
}
.sec_franchise_agree label {
    font-size: 13px;
    color: #888888;
    line-height: 1.6;
    cursor: pointer;
}

/* 제출 버튼 */
.sec_franchise_submit {
    width: 100%;
    padding: 18px;
    background-color: #b10000;
    color: #ffffff;
    font-size: 17px;
    font-weight: 700;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    letter-spacing: 0.5px;
    transition: background-color 0.2s;
}
.sec_franchise_submit:hover {
    background-color: #b10000;
}

/* 모바일 반응형 */
@media (max-width: 900px) {
    .sec_franchise_title { font-size: 26px; }
    .sec_franchise_body { grid-template-columns: 1fr; gap: 40px; }
    .sec_franchise_form_row { grid-template-columns: 1fr; }
}

/* ===== 전국 직영점·가맹점 매장 안내 섹션 ===== */
.sec_stores {
    background-color: #111111;
    padding: 100px 0 100px;
}

.sec_stores_inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
}

/* 헤더 */
.sec_stores_label {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 30px;
    color: #e8c97a;
    margin-bottom: 18px;
    letter-spacing: 1px;
}
.sec_stores_line {
    display: inline-block;
    width: 36px;
    height: 2px;
    background-color: #e8c97a;
}
.sec_stores_title {
    font-size: 48px;
    font-weight: 900;
    line-height: 1.15;
    letter-spacing: -2px;
    color: #ffffff;
    margin-bottom: 24px;
}
.sec_stores_title_accent {
    color: #b10000;
}
.sec_stores_desc {
    font-size: 15px;
    color: #aaaaaa;
    line-height: 1.9;
    margin-bottom: 56px;
}

/* 카드 그리드 - 3열 2행 */
.sec_stores_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20;
    border: none;
}

/* 개별 카드 */
.sec_stores_card {
    padding: 32px 28px;
    border: 1px solid #2a2a2a; 
    transition: background-color 0.2s;
}

.sec_stores_card:hover {
    background-color: rgba(255, 255, 255, 0.03);
}

/* 지역 태그 */
.sec_stores_region {
    font-size: 11px;
    font-weight: 600;
    color: #888888;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 10px;
}

/* 매장명 */
.sec_stores_name {
    font-size: 22px;
    font-weight: 800;
    color: #ffffff;
    letter-spacing: -0.5px;
    margin-bottom: 14px;
    line-height: 1.3;
}

/* 주소 */
.sec_stores_address {
    font-size: 14px;
    color: #888888;
    line-height: 1.8;
    margin-bottom: 16px;
}

/* 전화번호 */
.sec_stores_tel {
    font-size: 15px;
    font-weight: 700;
    color: #b10000;
    letter-spacing: 0.5px;
}

/* 모바일 반응형 */
@media (max-width: 900px) {
    .sec_stores_title { font-size: 30px; }
    .sec_stores_grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
    .sec_stores_grid { grid-template-columns: 1fr; }
    .sec_stores_card { padding: 24px 20px; }
}

/* ===== 카테고리별 전용 레이아웃 추가 CSS ===== */
/* 기존 sec_menu CSS는 그대로 유지하고 아래 코드만 추가하면 됩니다 */

/* 카테고리 전용 그리드 공통 */
.sec_menu_cat_grid {
    display: grid;
    gap: 20px;
    margin-top: 0;
}

/* 2열 (직화뼈구이: 2개 가로 배치) */
.sec_menu_cat_grid.col1 {
    grid-template-columns: repeat(2, 1fr);
}
.sec_menu_cat_grid.col1 .sec_menu_img_wrap {
    height: 420px;   /* 전골류와 동일한 높이 */
}

/* 2열 (전골류: 2개 / 마무리: 2개) */
.sec_menu_cat_grid.col2 {
    grid-template-columns: repeat(2, 1fr);
}
.sec_menu_cat_grid.col2 .sec_menu_img_wrap {
    height: 420px;   /* 전골류·마무리 전용 이미지 높이 */
}

/* 3열 (사이드: 3개) */
.sec_menu_cat_grid.col3 {
    grid-template-columns: repeat(3, 1fr);
}
.sec_menu_cat_grid.col3 .sec_menu_img_wrap {
    height: 360px;   /* 사이드 전용 이미지 높이 */
}

/* 카테고리 카드 공통 */
.sec_menu_cat_grid .cat_card {
    background-color: #1a1a1a;
    border-radius: 12px;
    overflow: hidden;
}
.sec_menu_cat_grid .sec_menu_img_wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}
.sec_menu_cat_grid .cat_card:hover .sec_menu_img_wrap img {
    transform: scale(1.03);
}

/* 모바일 반응형 */
@media (max-width: 768px) {
    .sec_menu_cat_grid.col1 { grid-template-columns: 1fr; }
    .sec_menu_cat_grid.col1 .sec_menu_img_wrap { height: 260px; }
    .sec_menu_cat_grid.col2 { grid-template-columns: 1fr; }
    .sec_menu_cat_grid.col2 .sec_menu_img_wrap { height: 260px; }
    .sec_menu_cat_grid.col3 { grid-template-columns: 1fr; }
    .sec_menu_cat_grid.col3 .sec_menu_img_wrap { height: 260px; }
}

@media (max-width: 768px) {
    .sec_franchise_phone,
    .sec_contact_phone {
        font-size: 36px;   /* 기존보다 작게 조절 */
        white-space: nowrap;   /* 줄바꿈 강제 방지 */
    }
}

/* [기본 스타일 - PC 기준] */
.logo_pc {
    width: 227px;
    height: auto;
    display: inline-block; /* PC에서는 보임 */
}
.logo_mobile {
    display: none; /* PC에서는 모바일 로고를 숨김 */
}

/* [모바일 반응형 구문] - 기존에 쓰시던 @media (max-width: 768px) 안에 넣으세요! */
@media (max-width: 768px) {
    /* 기존 모바일 코드들... */
    
    .logo_pc {
        display: none; /* 모바일에서는 PC 로고를 숨김 */
    }
    .logo_mobile {
        display: inline-block; /* 모바일에서는 모바일 로고를 보여줌 */
        width: 227px;          /* 크기는 PC와 동일하게 제한하여 선명도만 올림 */
        height: auto;
    }
}