



.mainInner {
	width:100%;
	height:auto;
	max-width:140rem;
	margin:0 auto;
}


/* ================= MAIN START ~ =================  */

#main {margin-top:12.5rem;}
.mainVCont {
	width:100%;
	max-width:176.2rem;
	margin:0 auto;
	overflow:hidden;
	height:auto;
	position:relative;
	padding:0 2rem;
}


.mainVfilter {
	width:100%;
	height:auto;
	position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}

.mainVImg {
    width: 100%;
    height: auto;
    overflow: hidden;
    position: relative;
    border-radius: 3.8rem;
}
.mainVImg img {width:100%; height:auto; transition: all 0.3s ease-in-out;}

.mainVImg img.hoverOn {position:absolute;left:50%; top:50%; transform: translate(-50%, -50%); opacity:0;}
.mainVImg img.hoverOn.on {opacity:1;}


.mainVcontInner {
    width: 85%;
    margin: 0 auto;
    position: absolute;
    left: 10.22%;
    top: 48%;
    transform: translateY(-50%);
}
.mainVcontInner h1 {
	font-size:4.4rem;
	letter-spacing:-0.03em;
	color:#1e0a09;
	font-weight:500;
}
.mainVcontInner img.mainVLogo {
	width:46.8rem;
	height:auto;
	margin-top:6.3rem;
}
.mainVcontInner h2 {
	font-weight:300;
	font-size:2.6rem;
	line-height:1.4;
	color:#1e0a09;
	margin-top:5rem;
}

.mainVBtnG {
    display: flex;
    gap: 1.9rem;
    margin-top: 7.8rem;
}

.mainVBtnG li {
	border-radius:6.8rem;	
	background:#000;
	overflow:hidden;
	border:3px solid #000;
	color:#FFF;
}

.mainVBtnG li a {
    font-size: 3rem;
	display: inline-block;
    letter-spacing: -0.01em;
    padding:2.5rem 4.4rem 2rem 4.3rem;
}

.mainVStitle {
	font-size:2.8rem;
	color:#FFF;
	letter-spacing:-0.015em;
	margin-top:5.5rem;
}


.mainVBtnG li:hover {background:#fff; border:3px solid #fff;}
.mainVBtnG li:hover a {color:#000;}

.mainVcontTBox {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

@media (max-width:991px) and (min-width:769px) {
	.mainVcontInner {left: 8.22%; top: 50%;}
	.mainVcontInner h1 {font-size: 3.5rem;} 
	.mainVcontInner h2 {font-size: 2.3rem;}
	.mainVcontInner img.mainVLogo {width: 40rem; margin-top: 4.3rem;}
	.mainVBtnG li a {font-size: 2.5rem; padding: 1.5rem 3.4rem 1rem 3.3rem;}
	.mainVStitle {font-size: 2.8rem; margin-top: 3.5rem;}
	.mainVBtnG {margin-top:3.8rem;}
}



@media (max-width:768px) {
	.pc_only {display: none!important;}
	.mo_only {display: block!important;}
	#main {margin-top: 20vw;}
	
	
	.mainVCont {
		padding: 0 3.91vw;
		border-radius:0;
	}
	
	.mainVImg {
		width: 100%;
		height: auto;
		position: relative;
		border-radius: 6.51vw;
		overflow: hidden;
	}
	.mainVfilter {transform: translate(-50%, -46%);}
	
	
	.mainVcontTBox {padding-left: 0;}
	
	.mainVcontInner {
		width: calc(100% - 7.81vw);
		margin: 0 auto;
		position: absolute;
		left: 3.91vw;
		top: 50%;
		transform: translateY(-50%);
		padding-left: 11.98vw;
	}

	.mainVcontInner h1 {font-size:4.95vw;}
	.mainVcontInner img.mainVLogo {width: 60.94vw; margin-top: 4.04vw;}
	.mainVcontInner h2 {font-size: 3.39vw; margin-top: 6.90vw;}
	.mainVBtnG {
		display: flex;
		gap: 2.21vw;
		margin-top: 26.30vw;
		justify-content: flex-start;
	}
	.mainVBtnG li {border: 0.39vw solid #000000;}
	.mainVBtnG li a {font-size: 3.73vw; display: inline-block; letter-spacing: -0.01em; padding: 3.13vw 4.69vw;}
	.mainVStitle {font-size: 3.13vw; letter-spacing: -0.015em; margin-top: 3.52vw; }
}


/* ================= ~ MAIN END // =================  */




/* ================= sec02M START ~ =================  */

#sea02M {padding:18rem 0;}
.mainInner {
    width: 100%;
    max-width: 144rem;
    margin: 0 auto;
    padding: 0 2rem;
}
.sec02ProList {display:flex; gap:2.1rem;}
.sec02ProList li {
    background: #f0f0f0;
    border-radius: 5rem;
    display: flex;
    width: calc(100%/4);
    justify-content: center;
    align-items: center;
    padding: 7.8rem 0;
    position: relative;
    overflow: hidden;
}

.sec02ProList li .sec02ProListImg {width:7.5rem; height:auto;}
.sec02ProList li:nth-child(1) .sec02ProListImg  {width:16.8rem;}
.sec02ProList li:nth-child(3) .sec02ProListImg  {width:8rem;}
.sec02ProList li:nth-child(4) .sec02ProListImg  {width:17.6rem;}
.sec02ProList li .sec02ProListImg img {width:100%; height:auto;}

.sec02ProLiHover {
    background: rgb(36 70 129 / 80%);
    width: 100%;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    display: flex;
    justify-content: center;
    align-items: center;
	opacity:0;
	transition:all 0.3s ease-in-out;
}

.sec02ProLiHover p {
    font-size: 3.4rem;
    color: #fff;
    letter-spacing: -0.03em;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
	word-break:keep-all;
}

.sec02ProList li:hover .sec02ProLiHover {opacity:1;}


@media (max-width:768px) {
	#sea02M {padding: 9.24vw 0 11.59vw;}
	#sea02M .mainInner {padding: 0 3.91vw;}
	.sec02ProList {display: flex; gap: 3.65vw 0; flex-wrap: wrap; justify-content: space-between;}
	.sec02ProList li {width: calc(100% / 2 - 1.82vw); padding:10.81vw 0; border-radius: 6.51vw;}
	.sec02ProList li:nth-child(1) .sec02ProListImg {width: 15.63vw;}
	.sec02ProList li:nth-child(2) .sec02ProListImg {width:9.77vw;}
	.sec02ProList li:nth-child(3) .sec02ProListImg {width:10.42vw;}
	.sec02ProList li:nth-child(4) .sec02ProListImg {width:27.47vw;}
	.sec02ProLiHover p {font-size: 4.43vw;}
}

/* ================= ~ sec02M END // =================  */


/* ================= sec03M START ~ // =================  */
#sec03M {
	text-align:center;
	color:#fff;
	padding:27rem 0;
	background:url(../himg/sec03M_bg.jpg) no-repeat center / cover;
}

.sec03MTitle {
	color:#fff;
	font-size:7.2rem;
	letter-spacing:-0.025em;
}
.sec03MSTxt {
	color:#fff;
	font-size:2.6rem;
	line-height:1.5;
	margin-top:8.7rem;
}

.mSpanTitle {
    font-weight: 600;
    color: #fff;
    font-size: 2.3rem;
    letter-spacing: -0.02em;
    padding: 1.5rem 4rem;
    background: #f0454c;
    border-radius: 4rem;
    overflow: hidden;
    text-align: center;
    display: inline-block;
	text-transform: uppercase;
}
.mLTitle {
	color:#3c3c3c;
	font-size:7.2rem;
	letter-spacing:-0.03em;
	line-height:1.06;
	margin-top:6rem;
	text-align:left;
	font-weight: 600;
}
.mSTitle {
	color:#220909;
	font-weight:300;
	font-size:2.6rem;
	line-height:1.5;
	margin-top:8.5rem;
	word-break:keep-all;
}



@media (max-width:768px) {
	#sec03M {padding: 22.66vw 0 21.48vw;}
	.sec03MTitle {font-size: 9.38vw; line-height: 1.2;}
	.sec03MSTxt {font-weight: 300; font-size: 3.39vw; line-height: 1.5; margin-top: 12.37vw; word-break: keep-all;}
}


/* ================= ~ sec03M END // =================  */



/* ================= sec04M START ~ // =================  */
.sec045 {background:url(../himg/sec04_5Bg02.jpg) no-repeat center / 120%;}

#sec04M {padding:16rem 0;  overflow:hidden; }
.sec04MSWrap {margin-top: 16rem;}

.sec04MTBox {position: relative;}
.sec04MImg {
    width: 57.4rem;
    height: auto;
    position: absolute;
    top: -21%;
    right: -12%;
}
.sec04MImg img {width:100%; height:auto;}
.sec04SlideBox {}
.sec04SlideBox .slick-slide {margin:9rem 1.05em 0; position:relative;}
.sec04SlideBox .slick-slide::before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 48%;
    transform: translate(-50%,-50%);
    box-shadow: 0 1.8rem 2.5rem rgba(63, 63, 63, 0.1);
    border-radius: 6rem;
}
.sec04SlideBox .slick-slide.mt9 {margin-top: 0rem; transition:all 0.3s ease-in-out;}
.sec04SlideBox img {width:100%; height:auto;}
.sec04SlideBox .slick-list  {overflow:unset;}
.sec04SlideBox .slick-prev:before, 
.sec04SlideBox .slick-next:before {display:none!important;}
.sec04SlideBox .slick-slide{
  transition: margin-top .45s cubic-bezier(0.22, 0.61, 0.36, 1);
}
 
.freeList {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1.15rem 0;
    margin-top: 23.6rem;
}
.freeList li {
	border-radius: 4rem;
    width: calc(100% / 4 - 0.825rem);
    box-shadow: 0 5px 6px rgb(63 63 63 / 18%);
}
.freeList li img {width:100%; height:auto;}



@media (max-width:1400px) {
	.sec045 {background:url(../himg/sec04_5Bg02.jpg) no-repeat center / cover;}
}



@media (max-width:768px) {
	#sec04M {padding: 18.23vw 0;}
	#sec04M .mainInner {padding: 0 7.81vw;}
	.sec045 {background:url(../himg/sec04_5Bg.jpg) no-repeat center / cover;}
	.mSpanTitle {
		font-weight: 600;
		color: #fff;
		font-size: 3.39vw;
		letter-spacing: -0.02em;
		padding: 1.82vw 3.52vw;
		background: #f0454c;
		border-radius: 2.3rem;
		overflow: hidden;
		text-align: center;
		display: inline-block;
	}
	
	.mLTitle {font-size: 9.38vw; margin-top: 7.94vw;}
	.mSTitle {font-size: 3.39vw; margin-top: 8.72vw;}
	
	.sec04MImg {width: 40vw; top: 0; right: -6%;}
	
	.sec04MSWrap {margin-top: 8.59vw; margin-bottom: 11.72vw;}
	.sec04SlideBox .slick-slide {margin: 0 1.05em 0;}
	
	.sec04SlideBox .slick-slide.slick-current.slick-active {transform: translateY(11.72vw);}
	.sec04SlideBox .slick-slide.mt9 {margin-top: 0vw;}
	
	/* slick-slide 자체가 margin-top이 변할 때 부드럽게 */
	.sec04SlideBox .slick-slide{
	  transition: transform .8s cubic-bezier(0.22, 0.61, 0.36, 1);
	}

	/* 기존 mt9 값 유지 */
	.sec04SlideBox .slick-slide.mt9{
	  margin-top: 9px; /* 기존 값 그대로 */
	}
	
	
	.sec04SlideBox .slick-slide::before {border-radius:8.91vw;}

	.freeList {margin-top:12.50vw; gap: 2.6vw;}
	.freeList li {
		width: calc(100% / 2 - 1.30vw);
		border-radius: 5.21vw;
	}

}

/* ================= ~ sec04M END // =================  */

/* ================= sec05M START ~ // =================  */
#sec05M {padding:16rem 0; overflow:hidden;}
#sec05M .mainInner {display: flex; justify-content: space-between;}
.sec05MTxtWrap {margin-top:6rem;}
#sec05M .mLTitle {margin-top:0;}
#sec05M .mSTitle {margin-top:6rem;}
.sec05MTBox {width:35.71%; margin-top:6rem;}
.sec05MImgWrap {width: 51%; position: relative; height: 0; padding-bottom: 47.572%;}
.sec05MWater {position: absolute; left: 0; top: 0; width: 33.4rem; z-index: 1; transform: translate(-35%,-50%);}
#sec05M .sec05MImgWrap .slick-list {overflow:unset!important;}
#sec05M .sec05MTxtWrap.fade .slick-slide {display: flex; flex-direction: column;}
#sec05M .slick-slide img {width: 116.4rem;}


#sec05M .slick-prev, #sec05M .slick-next {display:none!important;}

@media (max-width:768px) {
	#sec05M {padding: 0 0 16.93vw 0; overflow: hidden;}
	#sec05M .mainInner {padding: 0 7.81vw; flex-direction: column;}
	#sec05M .mSTitle {margin-top: 10.94vw;}
	.sec05MTxtWrap {margin-top: 8.07vw;}
	.sec05MTBox {width: 100%; margin-top: 0;}
	.sec05MWater {display:none!important;}
	.sec05MImgWrap {width: 100%; position: relative; height: auto; padding-bottom: 0; margin-top: 8.72vw;}
	.sec05MImgGroup img {width:180%; height:auto;}
	#sec05M .slick-prev, #sec05M .slick-next {display:none!important;}
	#sec05M .slick-prev, #sec05M .slick-next {display:none!important;}
	#sec05M .slick-slide img {width: 180%;}
}
/* ================= ~ sec05M END // =================  */

/* ================= sec06M START ~ // =================  */
#sec06M {
	text-align:center;
	padding:14.5rem 0 13rem;
	background:url(../himg/sec06_bg.jpg) no-repeat center / cover;
}


.sec06MTitle {display: flex; align-items: center; justify-content: center;}

.sec06MTitleLogo {width: 30.7rem; height: auto;}
.sec06MTitleLogo img {width:100%; height:auto;}
 
.sec06MTitleP {color:#fff; font-size: 6.512rem; margin-left: 2rem;}
.sec06MTxt {
	color:#fff;
	font-size:2.6rem;
	letter-spacing:-0.025em;
	font-weight:300;
	line-height:1.5;
	margin-top:8.3rem;
}
.sec06MContTact {
    font-family: "helvetica-lt-pro" !important;
    font-size: 2rem;
    font-weight: 600;
    letter-spacing: -0.02em;
    padding: 2.1rem 3.7rem;
    border: 2px solid #FFF;
    color: #fff;
    display: inline-block;
    margin-top: 6rem;
}

@media (max-width:768px) {
	#sec06M {padding: 19.53vw 0;}
	.sec06MTitleLogo {width: 39.06vw;}
	.sec06MTitleP {font-size: 8.46vw; margin-left: 2.60vw;}
	.sec06MTxt {font-size: 3.39vw; margin-top: 10.68vw;}
	.sec06MContTact {font-size: 3.39vw; padding: 2.99vw 3.65vw; border: 0.26vw solid #FFF; margin-top: 8.46vw;}
}
/* ================= ~ sec06M END // =================  */


/* ================= sec07M START ~ // =================  */
/*sec07M {padding:20.2rem 0 4.3rem;}*/

#sec07M { padding:8rem 0 0;}
#sec07M .mainInner {max-width:180rem;}
.sec07MLogo {
    width: 35.5rem;
    height: auto;
	margin-bottom: 3rem;
}
@media (max-width:768px) {
	/*#sec07M {padding: 18.23vw 0 5.60vw;}*/
	#sec07M {padding: 0;}
	#sec07M .mainInner {padding:0 7.81vw;}
	.sec07MLogo {width: 40.10vw; margin-bottom: 4vw; margin-left: 11%;}
}

/* ================= ~ sec07M END // =================  */

/* ================= ~ MAIN END // =================  */