@charset "UTF-8";


/*	reset  */

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-size: 15px;
}

li {
	list-style: none;
}

a {
	text-decoration: none;
	color: #000;
}

.clearfix::after, .clearfix::before {
	display: block;
	content: "";
	clear: both;
}

.ir_so {
	display: none;
	line-height: 0;
}

em, address, span {
	font-style: normal;
}

img {
	display: block;
}

body {
	overflow-x: hidden;
}


#wrap {
	width: 100%;
	margin: 0 auto;
	position: relative;
}

.container {
	width: 1260px;
	margin: 0 auto;
	padding: 0 10px;
}

#sub_menu {
	position: fixed;
	right: 80px;
	bottom: 50px;
	z-index: 100000;
}

#sub_menu .sub {
	
}

#sub_menu .sub .menu {
	width: 70px;
	height: 150px;
	background-color: #ff2764;
	border-radius: 33px;
	text-align: center;
	margin-bottom: 22px;
	box-shadow: 0 0 10px rgba(0,0,0,.5);
}

#sub_menu .sub .menu a {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 70px;
	height: 70px;
	color: #fff;
	font-size: 11px;
	font-weight: 500;
	font-family: 'Noto Sans KR', sans-serif;
}

#sub_menu .sub .menu a:hover {
	opacity: 0.68;
}

#sub_menu .sub .menu a:first-child {
	margin-bottom: 5px;
	padding-top: 10px;
}

#sub_menu .sub .menu a:last-child {
	padding-bottom: 10px;
}

#sub_menu .sub .menu a img {
	display: block;
	margin-bottom: 7px;
}

#sub_menu .sub a#MOVE_TOP_BTN {
	display: flex;
	text-align: center;
	justify-content: center;
}

#sub_menu .sub a#MOVE_TOP_BTN img {
	display: block;
	cursor: pointer;
}



/* 헤더 영역 레이아웃 */

#header {
	width: 100%;
	height: 90px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	transition: all .25s ease-in-out;
}

#header.on {
	background-color: rgb(0,0,0);
	width: 100%;
	height: 110px;
}

#header .logo {
	float: left;
	width: 135px;
	height: 90px;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	margin-left: 80px;
}

#header.on .logo {
	height: 90px;
}

#header .nav {
	float: right;
	margin-right: 80px;
}

#header .nav ul {
	overflow: hidden;
}

#header .nav ul li {
	float: left;
	width: 135px;
	height: 90px;
	margin-right: 20px;
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
	padding-bottom: 15px;
}

#header.on .nav ul li {
	height: 90px;
}

#header .nav ul li:last-child {
	margin-right: 0;
}

#header .nav ul li.portfolio {
	padding-bottom: 0;
}

#header .nav ul li.portfolio a {
	display: block;
	padding: 15px 18px;
	border-radius: 6.5px;
	background-color: #ff2764;
	text-align: center;
	width: 100%;
}

#header .nav ul li.portfolio a:hover {
	color: lightyellow;
}

#header .nav ul li a {
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	color: #fff;
	position: relative;
}

#header .nav ul li a:hover {
	opacity: 0.85;
}

#header .nav ul li a.active::after{
	content: "";
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: #ff2764;
	position: absolute;
	top: 11px;
	right: -10px;
}




/* 배너 영역 레이아웃 */

#banner {
	width: 100%;
	height: auto;
	background: url(../images/sub/sub_mainbanner.jpg) no-repeat center center;
	background-size: cover;
}

#banner .container {
	
}

#banner .container em.title {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	font-size: 72px;
	font-weight: 600;
	color: #fff;
	margin-top: 360px;
}

#banner .container em.title span.dot {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	font-size: 72px;
	font-weight: 600;
	color: #ff2764;
}



/* 콘텐츠 영역 레이아웃 */

#contents1 {

}

#contents1 .container {

}

#contents1 .container .boxes {
	margin: 150px 0 120px;
	width: 100%;
	overflow: hidden;
	font-family: 'Noto Sans KR', sans-serif;
}

#contents1 .container .boxes .box1 {
	width: 100%;
	margin-right: 20px;
	display: flex;
	align-content: space-between;
	flex-wrap: wrap;
}

#contents1 .container .boxes .box1 .box1-1 {
	
}

#contents1 .container .boxes .box1 .box1-1 span.redbox, #contents1 .container .boxes .box1 .box1-1 span.redbox2, #contents1 .container .boxes .box1 .box1-1 span.redbox3 {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	color: #fff;
	font-weight: 600;
	font-size: 15.3px;
	background-color: #ff2764;
	padding: 5px 10px;
	height: 32px;
	letter-spacing: -0.02em;
	margin-bottom: 24px;
	margin-right: 12px;
}

#contents1 .container .boxes .box1 .box1-1 h3.pttitle {
	display: block;	
	font-weight: 700;
	font-size: 44px;
	letter-spacing: -0.02em;
	font-family: 'Montserrat', sans-serif;
	margin-bottom: 24px;
}

#contents1 .container .boxes .box1 .box1-1 span.sub_pttitle {
	display: block;
	font-weight: 700;
	font-size: 16px;
	color: #757575;
	letter-spacing: -0.02em;
}


#contents1 .container .boxes .box1 .box1-2 {
	
}

#contents1 .container .boxes .box1 .box1-2 img {
	display: block;
}

#contents1 .container .boxes .box2 {
	overflow: hidden;
	margin-top: 120px;
}

#contents1 .container .boxes .box2 div {
	
}

#contents1 .container .boxes .box2 .box2-1 {
	float: left;
	width: 49%;
	margin-right: 2%;
}

#contents1 .container .boxes .box2 .box2-2 {
	float: left;
	width: 49%;
}

#contents1 .container .boxes .box2 div h4.conttitle {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	color: #000;
	font-weight: 600;
	font-size: 20px;
	letter-spacing: -0.02em;
	margin-bottom: 20px;
}

#contents1 .container .boxes .box2 div h4.conttitle span.number {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	color: rgba(0,0,0,.5);
	font-weight: 600;
	font-size: 20px;
	letter-spacing: -0.02em;
}

#contents1 .container .boxes .box2 div p.contdesc {
	display: block;
	font-size: 16px;
	font-weight: 400;
	color: #757575;
	letter-spacing: -0.02em;
	word-break: keep-all;
	line-height: 1.75;
	margin-bottom: -4px;
}



#contents1-1 {
	font-family: 'Noto Sans KR', sans-serif;
}

#contents1-1 .container {
	
}

#contents1-1 .container .boxes {
	
}

#contents1-1 .container .boxes .box1 {
	
}

#contents1-1 .container .boxes .box1 .box1-1 {
	margin-bottom: 120px;
}

#contents1-1 .container .boxes .box1 .box1-1 h4.conttitle {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	color: #000;
	font-weight: 600;
	font-size: 20px;
	letter-spacing: -0.02em;
	margin-bottom: 20px;
}

#contents1-1 .container .boxes .box1 .box1-1 h4.conttitle span.number {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	color: rgba(0,0,0,.5);
	font-weight: 600;
	font-size: 20px;
	letter-spacing: -0.02em;
}

#contents1-1 .container .boxes .box1 .box1-1 p.contdesc {
	display: block;
	font-size: 16px;
	font-weight: 400;
	color: #757575;
	letter-spacing: -0.02em;
	word-break: keep-all;
	line-height: 1.75;
	margin-bottom: -4px;
}




#contents2 {
	width: 100%;
	background: url(../images/sub/06_bg.png) no-repeat center center;
	background-size: cover;
	height: auto;
	color: #fff;
	font-family: 'Noto Sans KR', sans-serif;
}

#contents2 .container {
	
}

#contents2 .container .boxes {
	padding: 120px 0;
}

#contents2 .container .boxes .box1 {
	overflow: hidden;
	margin-bottom: 55px;
}

#contents2 .container .boxes .box1 .box1-1 {
	float: left;
	width: 49%;
	margin-right: 2%;
}

#contents2 .container .boxes .box1 .box1-1 h4.conttitle {
	display: block;
	letter-spacing: -0.02em;
	font-weight: 600;
	font-size: 24px;
	font-family: 'Montserrat', sans-serif;
	
}

#contents2 .container .boxes .box1 .box1-2 {
	float: right;
	width: 49%;
}

#contents2 .container .boxes .box1 .box1-2 span.contdesc {
	display: block;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.75;
	letter-spacing: -0.02em;
}



#contents2 .container .boxes .box2 {
	overflow: hidden;
}

#contents2 .container .boxes .box2 div {
	float: left;
	width: 23.5%;
	margin-right: 2%;
}

#contents2 .container .boxes .box2 div:last-child {
	margin-right: 0;
}

#contents2 .container .boxes .box2 div h5.plustitle {
	display: block;
	padding: 25px 0;
	border-top: 1px solid #fff;
	border-bottom: 1px solid rgba(255,255,255,.4);
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	font-weight: 600;
	letter-spacing: -0.02em;
}

#contents2 .container .boxes .box2 div span.plusdesc {
	display: block;
	line-height: 1.75;
	letter-spacing: -0.02em;
	font-size: 14px;
	font-weight: 400;
	color: rgba(255,255,255,.5);
	word-break: keep-all;
	padding-top: 25px;
}



#contents3 {
	
}

#contents3 .container {
	
}

#contents3 .container .boxes {
	padding-top: 120px;
}

#contents3 .container .boxes div {
	display: flex;
	justify-content: space-between;
}

#contents3 .container .boxes div h4.conttitle {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	color: #000;
	font-weight: 600;
	font-size: 20px;
	letter-spacing: -0.02em;
	margin-bottom: 20px;
}

#contents3 .container .boxes div h4.conttitle span.number {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	color: rgba(0,0,0,.5);
	font-weight: 600;
	font-size: 20px;
	letter-spacing: -0.02em;
}

#contents3 .container .boxes div a {
	display: flex;
	background-color: #ff2764;
	color: #fff;
	justify-content: center;
	align-items: center;
	padding: 0 12px;
	height: 30px;
	box-sizing: border-box;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	font-weight: 600;
}


#contents4 {

}


#contents4 .container .boxes {
	margin: 40px 0 150px;
	width: 100%;
	overflow: hidden;
}

#contents4 .container .boxes>div {
	float: left;
	width: 32%;
	margin-right: 2%;
	background-color: #fff;
	text-align: center;
	border: 1px solid rgba(1,1,1,.05);
	opacity: .7;
	transform: scale(.975);
	transition: all .25s ease-in-out;
}

#contents4 .container .boxes>div:hover {
	background-color: rgba(1,1,1,.01);
	opacity: 1;
	transform: scale(1);
	box-shadow: none;
}

#contents4 .container .boxes>div:hover a>h3.title, #contents4 .container .boxes>div:hover a>span.kind {
	color: #000;
}

#contents4 .container .boxes>div:first-child {
	margin-bottom: 2%;
}

#contents4 .container .boxes>div:nth-child(2), #contents4 .container .boxes>div:nth-child(3) {
	margin-bottom: 2%;
}

#contents4 .container .boxes>div:nth-child(3n) {
	margin-right: 0;
}

#contents4 .container .boxes>div>a>span.date {
	display: block;
	margin: 30px 0 40px;
	font-family: 'Noto Sans KR', sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: #b5b5b5;
	position: relative;
}

#contents4 .container .boxes>div>a>span.date::after {
	content: "";
	width: 95px;
	height: 1px;
	background-color: #b5b5b5;
	position: absolute;
	top: 32px;
	left: 50%;
	transform: translateX(-50%);
}

#contents4 .container .boxes>div>a>img {
	display: block;
	width: 100%;
}

#contents4 .container .boxes>div>a>h3.title {
	display: block;
	font-family: 'Noto Sans KR', sans-serif;
	font-size: 22px;
	font-weight: 700;
	margin: 30px 0 10px;
	color: #474747;
}

#contents4 .container .boxes>div>a>span.kind {
	font-family: 'Noto Sans KR', sans-serif;
	display: block;
	font-size: 16px;
	font-weight: 400;
	margin-bottom: 30px;
	color: #898989;
}




/* 푸터 영역 레이아웃 */

#footer_end {
	width: 100%;
	height: 175px;
	background-color: #333;
}

#footer_end .container {
	width: 1260px;
	margin: 0 auto;
	padding: 42px 10px;
}

#footer_end .foot1 {
	float: left;
	width: 70%;
}

#footer_end .foot1 a {
	display: inline-block;
	margin-right: 50px;
	color: #ccc;
	font-weight: 700;
	font-size: 14px;
	font-family: 'Noto Sans KR', sans-serif;
}

#footer_end .foot1 a:last-child {
	margin-right: 0;
}

#footer_end .foot2 {
	float: left;
	width: 70%;
	margin-top: 24px;
}

#footer_end .foot2 ul {
	overflow: hidden;
}

#footer_end .foot2 ul li {
	float: left;
	display: inline-block;
	font-weight: 400;
	color: #888;
	margin-right: 28px;
	font-family: 'Noto Sans KR', sans-serif;
	position: relative;
	font-size: 14px;
	line-height: 1.8;
}

#footer_end .foot2 ul li::after {}

#footer_end .foot3 {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	height: 94px;
	width: 30%;
}

#footer_end .foot3 img {
	display: block;
	opacity: 0.5;
}










/* -----------------------------------------------미디어쿼리 */


@media (max-width:1910px){
	
	#footer_end .foot1, #footer_end .foot2 {
		width: 100%;
	}
	
	#footer_end .foot3 {
		display: none;
	}
	
}


@media (max-width:1680px){
	
	#footer_end .container {
		padding: 40px 200px;
		width: 100%;
	}
	
}



@media (max-width:1600px){
	
	#sub_menu {
		display: none;
	}

}



@media (max-width:1560px){
	

	
}



@media (max-width:1500px){
	

	
}


@media (max-width:1440px){
	
	
	
}



@media (max-width:1400px){
	
    #contents4>img {
        display: none;
    }
    
    #contents4 .cont_wrap {
        display: block;
        width: 100%;
    }
    
}



@media (max-width:1280px){
	
	.container {
		width: 100%;
		padding: 0 40px;
	}
    
    #contents2 .container .boxes .box1 .box1-2 span.contdesc {
		display: none;
	}
	
	#footer_end {
		height: 100px;
	}
	
	#footer_end .foot1 {
		width: 100%;
		text-align: center;
	}
	
	#footer_end .foot2 {
		display: none;
	}
	
}



@media (max-width:1180px){
	
	#header .logo {
		margin-left: 40px;
	}
	
	#header .nav {
		margin-right: 40px;
	}
	
	#header .nav ul li {
		width: 100px;
	}
	
	#header .nav ul li:last-child {
		width: 135px;
	}
	
}

@media (max-width:1100px){
	
    #header .nav ul li {
        width: 110px;
    }
    
    #header .nav ul li.portfolio {
        width: 135px;
    }
	
}




@media (max-width:960px){
	
	#header .nav>ul>li:first-child {
		display: none;
	}
	
	#header .nav>ul>li:nth-child(2), #header .nav>ul>li:nth-child(3), #header .nav>ul>li:nth-child(4) {
		display: none;
	}
	
	#header .nav>ul>li>a:last-child {
		display: block;
		padding: 10px 18px;
	}
	
	#header .nav>ul>li>a:last-child:hover {
		background-color: #891939;
	}
	
	#contents4 .container .img div {
		width: 49%;
	}
	
	#contents4 .container .img div:nth-child(2n) {
		margin-right: 0;
	}
	
	#contents4 .container .img div:nth-child(3) {
		margin-right: 2%;
	}
	
	#contents4 .container .img div:nth-child(4) {
		margin-bottom: 2%;
	}
	
}





@media (max-width:880px){
	
	#banner .container em.title {
		font-size: 54px;
	}
	
	#contents1 .container .boxes .box1 {
		width: 100%;
		margin-bottom: 24%;
	}
    
    #contents1 .container .boxes .box2>div {
        width: 100% !important;
        margin-right: 0;
    }
	
	#contents1 .container .boxes .box2 .box2-1 {
		margin-bottom: 24%;
	}
	
	#contents1 .container .boxes .box2 div p.contdesc {
		font-size: 14px;
	}
    
    #contents1-1 .container .boxes .box1 .box1-1 p.contdesc {
        font-size: 14px;
        text-align: left;
    }
    
    #contents1-1 .container .boxes .box1 .box1-1 .desc1 {
        float: none;
        width: 100%;
        margin-bottom: 24%;
    }
    
    #contents1-1 .container .boxes .box1 .box1-1 .desc2 {
        float: none;
        width: 100%;
    }
    
    #contents1-1 .container .boxes .box1 .box1-2 .img1 {
        margin-right: 0;
        width: 100%;
    }
    
    #contents1-1 .container .boxes .box1 .box1-2 .img1 img {
        display: inline-block;
        text-align: center;
        width: 100%;
    }
    
    #contents1-1 .container .boxes .box1 .box1-2 .img2 img {
        display: inline-block;
        text-align: center;
        width: 100%;
    }

    #contents1-1 .container .boxes .box1 .box1-2 .img2 {
        width: 100%;
    }
    
    #contents1-1 .container .boxes .box1 .box1-2 .img1 span.imgdesc {
        margin-bottom: 12%;
    }
    
    #contents4 .container .boxes>div {
        width: 100%;
        float: none;
    }
	
	#contents4 .container .img div:nth-child(1) {
		margin-bottom: 6%;
	}
	
	#contents4 .container .img div:nth-child(2) {
		margin-bottom: 6%;
	}
	
	#contents4 .container .img div:nth-child(3) {
		margin-bottom: 6%;
	}
	
	#footer_end .container {
		padding: 40px 20px;
	}
	
}



@media (max-width:800px){
    
	#contents2 .container .boxes .box1 .box1-1 {
		width: 100%;
		margin-right: 0;
	}
	
	#contents2 .container .boxes .box1 .box1-1 h4.conttitle {
		font-size: 18px;
		text-align: center;
	}
	
	#contents2 .container .boxes .box2 div {
		width: 100%;
		margin-right: 0;
		margin-bottom: 8%;
	}
	
	#contents2 .container .boxes .box2 div:nth-child(1) {
		margin-bottom: 8%;
	}
	
	#contents2 .container .boxes .box2 div:nth-child(2) {
		margin-bottom: 8%;
	}
	
	#contents2 .container .boxes .box2 div h5.plustitle {
		text-align: center;
		font-size: 16px;
		padding: 15px 0;
	}
	
	#contents2 .container .boxes .box2 div span.plusdesc {
		text-align: center;
	}
    
    #contents4 .cont_wrap .imgs>div {
        width: 100%;
        margin-right: 0;
        float: none;
        margin-bottom: 6%;
    }
    
    #contents4 .cont_wrap .imgs>div:nth-child(5) {
        margin-bottom: 6%;
    }
    
}





@media (max-width:560px){
	
	#banner .container em.title {
		width: 100%;
		text-align: center;
	}
	
	#contents1 .container .boxes .box1 .box1-1 {
		text-align: center;
		width: 100%;
	}

	#contents1 .container .boxes .box1 .box1-1 span.redbox {
		display: inline-block;
		font-size: 14.3px;
		padding: 8px;
		height: auto;
		margin-bottom: 22px;
	}

	#contents1 .container .boxes .box1 .box1-1 h3.pttitle {
		display: inline-block;	
		font-size: 34px;
		margin-bottom: 16px;
	}

	#contents1 .container .boxes .box1 .box1-1 span.sub_pttitle {
		font-size: 14px;
	}
	
	#contents1 .container .boxes .box2 {
		margin-top: 150px;
        width: 100%;
	}
	
	#contents1 .container .boxes .box2 div {
		width: 100%;
		text-align: center;
	}
	
	#contents1 .container .boxes .box2 div h4.conttitle {
		font-size: 18px;
		margin-bottom: 30px;
		font-weight: 700;
		text-align: center;
	}

	#contents1 .container .boxes .box2 div h4.conttitle span.number {
		font-weight: 700;
		font-size: 18px;
		text-align: center;
	}
	
	#contents1 .container .boxes .box2 div p.contdesc {
		text-align: left;
	}
    
    #contents1-1 .container .boxes .box1 .box1-1 {
        text-align: center;
    }
        
    #contents1-1 .container .boxes .box1 .box1-1 h4.conttitle {
        font-size: 18px;
        font-weight: 700;
    }

    #contents1-1 .container .boxes .box1 .box1-1 h4.conttitle span.number {
        font-size: 18px;
        font-weight: 700;
    }
	
	#contents3 .container .boxes .box1 {
		width: 100%;
		margin-right: 0;
		display: block;
		text-align: center;
	}
	
	#contents3 .container .boxes .box1 h4.conttitle {
		font-size: 18px;
		font-weight: 700;
		display: block;
		width: 100%;
	}

	#contents3 .container .boxes .box1 h4.conttitle span.number {
		font-weight: 700;
		font-size: 18px;
	}
	
	#contents3 .container .boxes .box1 a {
		display: inline-block;
		width: 160px;
		padding: 25px 20px;
		line-height: 0;
		margin-top: 16px;
	}
	
	#contents4 .container .img div {
		width: 100%;
		margin-right: 0;
	}
	
	#contents4 .container .img div:nth-child(5) {
		margin-bottom: 6%;
	}
	
	#footer_end .foot1 a:nth-child(2) {
		margin-right: 0;
	}
	
	#footer_end .foot1 a:last-child {
		display: none;
	}
	
}




@media (max-width:440px){
	
	#header.on {
	background-color: rgb(0,0,0);
	width: 100%;
	height: 100px;
	}

	#header.on .logo {
		height: 70px;
	}
	
	#header.on .nav ul li:last-child {
		height: 70px;
	}
	
	#contents1 .container .boxes .box1 .box1-1 h3.pttitle {
		font-size: 26px;
		margin-bottom: 18px;
	}
	
}



@media (max-width:375px){
	
	#header h1.logo {
		height: 70px;
	}
	
	#header .logo a img {
		width: 80%;
	}
	
	#header .nav {
		height: 70px;
	}
	
	#header .nav ul li {
		height: 70px;
	}
	
	#header .nav ul li:last-child a {
		height: 29px;
		padding: 5px 10px;
		width: 120px;
		margin-left: 10px;
	}
	
}