@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;
	margin: 0 15px !important;    
	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:#271c1c;
	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: #271c1c;
    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.jpg);
	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:850px;	
	overflow: hidden;	
	position:relative;
}
.sec_08_1 {
	margin-top:260px;
	text-align:center;
	z-index:1;
	position:relative;
}
.sec_08_2 {
	margin-top:60px;
	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.jpg);
	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.jpg);
	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 {
    padding: 100px 0;
    background-color: #fff;
}

/* 상단 타이틀 이미지 정렬 */
.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: #000 !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 {
        padding-right: 20px; /* 모바일에서는 여백을 조금 더 줌 */
        font-size: 14px;      /* 글씨가 너무 크면 한 줄 내려가므로 조절 */
    }


    /* 1. 세부내역(col_desc)을 숨기거나 아주 작게 조정 */
    /* 모바일에서 3열을 다 보여주면 금액이 잘리므로, 
       구분(30%) / 금액(70%) 정도로 재배치하는 것이 가장 예쁩니다. */
    
    .col_title {
        width: 30%;
        font-size: 14px;
        padding: 10px 5px;
    }

    .col_desc {
        display: none; /* 💡 팁: 모바일에서 복잡한 설명은 과감히 숨기는 게 트렌드입니다. */
    }

    .col_price {
        width: 70%;
        font-size: 15px;
        justify-content: flex-end; /* 금액은 우측 정렬 */
        padding-right: 20px;
    }

    /* 헤더 행 높이 조정 */
    .sec_20_list.header {
        font-size: 13px;
    }

    /* 총계 행 강조 */
    .sec_20_list.result div {
        font-size: 18px;
    }
    
    /* 만약 모바일에서도 세부내역을 꼭 보여줘야 한다면 아래 주석을 푸세요 */
    /*
    .sec_20_list { flex-direction: column; }
    .col_title, .col_desc, .col_price { width: 100%; border-right: none; border-bottom: 1px solid #eee; }
    */
}

/* 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(3px) grayscale(20%) !important; /* 🔴 블러 강도를 12px로 높여서 더 확실히 가림 */
    transition: filter 0.6s ease;
	opacity: 0.6; /* 🔴 표 자체의 투명도를 살짝 낮추면 가림막 효과가 더 좋아집니다 */
	pointer-events: none;
}

/* 3. 블러 제거 상태 (버튼 클릭 후 선명해짐) */
.sec_20_2.blur_effect.active {
    filter: blur(0) grayscale(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.92); /* 🔴 배경을 더 하얗게 해서 표를 가림 */
    display: none; /* 기본은 숨김 */
    justify-content: center;
    align-items: center;
    z-index: 100; /* 표 위에 오도록 */
    transition: opacity 0.5s ease;
}

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

/* 가림막이 사라지는 조건 */
.cost_cover {
    display: none; /* 기본은 숨김 */
}
.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: 500px !important;
    height: 500px !important;
    margin: 0 auto 30px auto;
    display: flex;
    justify-content: center;
    align-items: center;
	overflow: hidden;
}
.cover_logo img { width: 160%; 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: 180px !important; height: 180px !important; }
    .cover_text h3 { font-size: 22px; }
    .cover_btn { padding: 12px 30px; font-size: 15px; }
}

.sec_21 {
	padding: 0 0 200px 0;
    background-image: url(../image/sec_17_27.png);
    background-size: cover;
    position: relative;
    margin-top: -1px;
    font-size: 25px;
    color: #000;
    font-weight: 400;
    letter-spacing: -1px;
    background-color: #220c08;
}


.sec_21_w {
    width: 95%;
    max-width: 1280px;
    padding: 120px;
    background: #ffffff;
    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;

}
.sec_21_pb img{
    display: block;

}


.sec_22 {
	position: relative;	
	background:#271c1c;
}

.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; }
}