.mainVwrap {
    margin: 13.6rem 0 0 0;
    position: relative;
    width: 100%;
    height: calc(100vh - 13.6rem);
    background: #000;
    /* background-image: url(/public/img/main/maintest_bg.webp); */
    /* background-size: cover; */
    /* background-repeat: no-repeat; */
    /* overflow: hidden; */
    /* background-position: center bottom; */
}
.mainVwrap h1{
	position:absolute;
	left:0;
	top:0;
	z-index:1;
}

.mainVbox {
	z-index:5;
    box-sizing: border-box;
    position: relative;
    width: 100%;
    overflow: hidden;
    height: 100%;
    background-color: #000;
}
.gr_video {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    /* height: 100vh; */
    -o-object-fit: cover;
    object-fit: cover;
}
@media (max-width:1600px) {
	.mainVwrap {
		margin: 12rem 0 0 0;
		height: calc(100vh - 12rem);
	}
}
@media (max-width:991px) {
	.mainVwrap {
		margin: 9rem 0 0 0;
		/* height: calc(100vh - 9rem); */
		
		height: 56vw;
	}
}
@media (max-width:767px) {
	.mainVwrap {
		margin: 9.4rem 0 0 0;
		/* height: calc(100vh - 9.4rem); */
	}
}

/*-----------------------------------------
# 메인 what we do
-------------------------------------------*/
.whatwedoWrap{
	position:relative;
	width:100%;
	padding:15rem 0 12rem 0;
	background: rgba(0, 0, 0, 0.03);
}
.whatwedoSideBox{
	max-width: 170rem;
    padding: 0 2rem;
    margin: 0 auto;
}
.wwdInner{
	position:relative;
	width:100%;
	display:flex;
}

.wwdLeft{
	width:50%;
	position:relative;
}
.wwdRight{
	width:50%;
	position:relative;
}

.mainTitle{
	position:relative;
}
.mainTitle h2 {
    display: flex;
    gap: 4.7rem;
    position: relative;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}
.mainTitle h2 strong{
	margin:0;
	text-align:left;
	position:relative;
	color: #00553C;
	font-family: pretendard-700;
	font-size: 7rem;
	font-style: normal;
	font-weight: 700;
	line-height: 170%; /* 119px */
}
.mainTitle h2 p{
	margin:0;
	text-align:left;
	position:relative;
	color: #000;
	font-family: pretendard-400;
	font-size: 3.6rem;
	font-style: normal;
	font-weight: 400;
	line-height: 130%; /* 46.8px */
}
.wwdInfoBox {
	margin:2.6rem 0 0 0;
    gap: 9.2rem;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}
.wwdInfo h3 b{
	position:absolute;
	left:0;
	top:0;
	font-family: pretendard-300;
	font-weight: 300;
}
.wwdInfo h3{
	padding: 0 0 0 6rem;
	position:relative;
	text-align:left;
	color: #000;
	font-family: pretendard-700;
	font-size: 3rem;
	font-style: normal;
	font-weight: 700;
	line-height: 110%;
}
.wwdInfo h4{
	margin:1.3rem 0 0 0;
	color: #818181;
	font-family: pretendard-400;
	font-size: 3rem;
	font-style: normal;
	font-weight: 400;
	line-height: 160%; /* 48px */
}

@media (max-width: 1400px) {
	.mainTitle h2 {
		gap: 2.7rem;
	}
	.wwdInfoBox {
		margin: 2.6rem 0 0 0;
		gap: 8rem;
	}
	.wwdInfo h3 {
		padding: 0 0 0 5rem;
		font-size: 2.6rem;
	}
	.wwdInfo h4 {
		margin: 1rem 0 0 0;
		font-size: 2.6rem;
	}
}
@media (max-width: 991px) {
	.whatwedoWrap {
		padding: 10rem 0 10rem 0;
	}
	.wwdInner {
		display: flex;
		flex-direction: column;
	}
	.wwdLeft {
		width:100%;
	}
	.wwdRight{
		width:100%;
	}
	
	.mainTitle h2 {
		gap: 1rem;
	}
	.mainTitle h2 strong {
		font-size: 5rem;
	}
	.mainTitle h2 p {
		font-size: 3rem;
	}
	
	
	.wwdInfoBox {
		margin: 5rem 0 0 0;
		gap: 6rem;
	}
	.wwdInfo h3 {
		padding: 0 0 0 4rem;
		font-size: 2.4rem;
	}
	.wwdInfo h4 {
		margin: 1rem 0 0 0;
		font-size: 2.2rem;
	}
}
@media (max-width: 767px) {
	.whatwedoWrap {
		background:#fff;
		padding: 5rem 0 5rem 0;
	}
	.mainTitle h2 {
		gap: 0;
	}
	.mainTitle h2 strong {
		font-size: 2.25rem;
	}
	.mainTitle h2 p {
		letter-spacing: -0.3px;
		font-size: 1.5rem;
	}
	.mainTitle h2 p br{display:none;}
	
	
	.wwdInfoBox {
		margin: 7rem 0 0 0;
		gap: 3.5rem;
	}
	.wwdInfo h3 {
		padding: 0;
		font-size: 1.5rem;
		letter-spacing: -0.3px;
	}
	.wwdInfo h3 b{display:none;}
	.wwdInfo h4 {
		margin: 1.25rem 0 0 0;
		font-size: 1.5rem;
	}
}

/*-----------------------------------------
# 메인 WORKS
-------------------------------------------*/
.worksWrap{
	position:relative;
	width:100%;
	padding:15rem 0 10rem 0;
	background: #fff;
}
.worksSideBox{
	max-width: 170rem;
    padding: 0 2rem;
    margin: 0 auto;
}
.worksInner{
	position:relative;
	width:100%;
	display:flex;
}

.wkLeft{
	width:50%;
	position:relative;
}
.wkRight{
	width:50%;
	position:relative;
}
.wkpInner{
	position:relative;
	width:100%;
}
.wkpInner figure {
    width: 100%;
    position: Relative;
    padding-bottom: 56%;
    overflow: hidden;
}
.wkpInner figure img {
    z-index: 3;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.wkpTitle{
	position:Relative;
	margin:1rem 0 0 0;
}
.wkpTitle h3 span{
	text-align:left;
	color: #000;
	font-family: pretendard-700;
	font-size: 2rem;
	font-style: normal;
	font-weight: 700;
	line-height: 160%; /* 32px */
	letter-spacing: -0.6px;
}
.wkpTitle h3 p{
	text-align:left;
	margin:0.4rem 0 0 0;
	color: #000;
	font-family: pretendard-500;
	font-size: 2rem;
	font-style: normal;
	font-weight: 500;
	line-height: 160%; /* 32px */
	letter-spacing: -0.6px;
}

.wkList{
	margin:16rem 0 0 0;
	position:Relative;
}
.wkList ul {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    margin: -0.7rem;
    list-style-type: none;
    justify-content: flex-start;
}
.wkList li {
    position: relative;
    flex: 0 0 calc(33.3333333333% - 1.4rem);
    margin: 0.7rem;
    box-sizing: border-box;
}
.wkList li .wkpTitle {
    margin: 0;
    padding: 2rem;
    width: 100%;
    z-index: 5;
    position: absolute;
    left: 0;
    bottom: 0;
}
.wkpTitle.white h3 span,
.wkpTitle.white h3 p{color:#fff;}

.wkBtnInner {
    display: flex;
    margin: 10rem 0 0 0;
    position: Relative;
    width: 100%;
    justify-content: center;
    align-items: flex-start;
}
.wkBtn{
	position:Relative;
}
.wkBtn a {
    gap: 1.6rem;
    display: flex;
    border-radius: 99px;
    border: 1px solid #000;
    padding: 1.3rem 2.7rem;
    color: #000;
    font-family: pretendard-400;
    font-size: 1.8rem;
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
    letter-spacing: -0.54px;
    align-items: center;
    justify-content: center;
}
.wkBtn a span {
    height: 1.8rem;
    width: 1.05rem;
    display: inline-block;
    background-image: url(/public/img/common/gr_arrow.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}
@media (max-width: 1400px) {
	.wkList {
		margin: 12rem 0 0 0;
	}
}
@media (max-width: 991px) {
	.worksWrap {
		padding: 10rem 0 10rem 0;
	}
	.worksInner {
		position: relative;
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-start;
	}
	.wkLeft{
		width: 100%;
	}
	.wkRight {
		margin:5rem 0 0 0;
		width: 100%;
	}
	.wkList {
		margin: 6rem 0 0 0;
	}
	.wkList li {
		flex: 0 0 calc(50% - 1.4rem);
		margin: 0.7rem;
	}
	.wkBtnInner {
		margin: 6rem 0 0 0;
	}
}
@media (max-width: 767px) {
	.worksWrap {
		padding: 0rem 0 4rem 0;
	}
	.wkRight {
		margin: 2rem 0 0 0;
	}
	
	.wkpInner .wkpTitle{
		margin: 0;
		padding: 1.2rem;
		width: 100%;
		z-index: 5;
		position: absolute;
		left: 0;
		bottom: 0;
	}
	.wkpInner figure {
		width: 100%;
		position: Relative;
		/* padding-bottom: 97%; */
		overflow: hidden;
	}
	
	
	.wkList {
		margin: 1rem 0 0 0;
	}
	.wkList ul {
		margin: 0;
	}
	.wkList li {
		flex: 0 0 calc(100% - 0rem);
		margin: 0;
	}
	.wkList li:nth-child(2),
	.wkList li:nth-child(3){display:none;}
	.wkpTitle h3 span {
		font-size: 1rem;
		letter-spacing: -0.3px;
	}
	.wkpTitle h3 p {
		margin: 0.2rem 0 0 0;
		font-size: 1rem;
		letter-spacing: -0.3px;
	}
	.wkList li .wkpTitle {
		padding: 1.2rem;
	}
	
	
	.wkBtnInner {
		margin: 4rem 0 0 0;
	}
	.wkBtn a {
		gap: 0.8rem;
		padding: 0.7rem 1.8rem;
		font-size: 1rem;
		letter-spacing: -0.27px;
	}
	.wkBtn a span {
		height: 0.9rem;
		width: 0.525rem;
		display: inline-block;
		background-image: url(/public/img/common/gr_arrow.png);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center center;
	}
}

/*-----------------------------------------
# 메인 Contact
-------------------------------------------*/
.contWrap{
	position:relative;
	width:100%;
	padding:8rem 0 8rem 0;
	background: rgba(0, 0, 0, 0.03);
}
.contSideBox{
	max-width: 170rem;
    padding: 0 2rem;
    margin: 0 auto;
}
.macontText{
	position:Relative;
	width:100%;
}
.macontText dl{
	margin:0;
	text-align:left;
	color: #000;
	font-family: pretendard-700;
	font-size: 7rem;
	font-style: normal;
	font-weight: 700;
	line-height: 170%; /* 119px */
}
.macontText h2{
	margin:5rem 0 3rem 0;
	text-align:left;
	color: #000;
	font-family: pretendard-400;
	font-size: 7rem;
	font-style: normal;
	font-weight: 400;
	line-height: 128%; /* 89.6px */
	letter-spacing: -2.8px;
}
.macontText p{
	margin:0;
	text-align:left;
	color: #000;
	font-family: pretendard-400;
	font-size: 7rem;
	font-style: normal;
	font-weight: 400;
	line-height: 170%; /* 119px */
	letter-spacing: -2.8px;
}
.contact_g{
	position:absolute;
	right:0;
	bottom:4rem;
}
.contact_g img{
	height:32.3rem;
}

@media (max-width: 767px) {
	.contWrap{display:none;}
}