@charset "utf-8";
/********************************************************
■ 공통
********************************************************/
body {word-break: keep-all;}

a:hover, a:focus, a:active {
	color: #000;
	text-decoration: none;
}


.accordion-container {
  position: relative;
  height: auto;
  margin: 10px auto;
}

.accordion-container .set {
  position: relative;
  width: 100%;
  height: auto;
}
.accordion-container .set > a {
  display: block;
  padding: 15px 0;
  text-decoration: none;
  color: #000;
  font-weight: 700;
  border-bottom: 1px solid #ddd;
  -webkit-transition:all 0.2s linear;
  -moz-transition:all 0.2s linear;
  transition:all 0.2s linear;
}
.accordion-container .set > a i {
	float: right;
	margin-top: 5px;
	margin-right: 10px;
}
.accordion-container .set > a.active {
  /*color: #fff;*/
}

.accordion-container .content {
  background-color: #fff;
  border-bottom: 1px solid #ddd;
  display:none;
}
.accordion-container .content p {
  padding: 25px 15px;
  margin: 0;
  color: #333;
}

@media all and (max-width:767px) {
	html {font-size: 12px;}
	.accordion-container .set > a {padding: 12px 0;}
	.accordion-container .content p {padding: 15px 10px;}
}



/********************************************************
■ PC 헤더(Header)
********************************************************/
#header_pc {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 501;
	-webkit-transition: all .5s;
	-moz-transition: all .5s;
	-o-transition: all .5s;
	transition: all .5s;
}
#header_pc .header_inner {padding: 20px 40px;}
#header_pc .header-logo {z-index: 999;}
#header_pc .header-logo > a {display: block;}
#nt_menu .me-list .me-li > a {
	padding: 0 20px;
	font-size: 1rem;
}

#header_pc .header-logo img {max-height: 70px;}


#header_pc.sticky {
	background-color: #000;
}

#header_pc .tel-button {
	padding: 4px 22px 3px;
	max-height: 100%;
	border: 1px solid #fff;
	border-radius: 50px;
}

#header_pc .tel-button a {color: #fff;}
#header_pc .tel-button a i {
	font-size: 17px;
	vertical-align: middle;
}


@media all and (max-width:1199px) {
	#nt_menu .me-list .me-li > a {
		padding: 0 10px;
	}

}


@media all and (max-width:991px) {
	#header_pc .mobile-button {
		display: block;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 10px;
		padding: 0;
		width: 36px;
		height: 36px;
		background: none;
		border: none;
		z-index: 999;
		cursor: pointer;
	}
	
	#header_pc .mobile-button span {
		position: absolute;
		left: 50%;
		margin-left: -11px;
		width: 22px;
		height: 2px;
		background: #fff;
		-webkit-transition: all .3s;
		-moz-transition: all .3s;
		-o-transition: all .3s;
		transition: all .3s;
	}

	#header_pc .mobile-button span:nth-of-type(1) {top: 9px;}
	#header_pc .mobile-button span:nth-of-type(2) {top: 17px;}
	#header_pc .mobile-button span:nth-of-type(3) {top: 25px;}

	#header_pc .mobile-button.open span {transition-delay: .3s;}
	#header_pc .mobile-button.open span:nth-of-type(1) {top: 18px; transform: rotate(-45deg);}
	#header_pc .mobile-button.open span:nth-of-type(2) {opacity: 0;}
	#header_pc .mobile-button.open span:nth-of-type(3) {top: 18px; transform: rotate(45deg);}

}

/********************************************************
■ 주메뉴 스타일 추가
********************************************************/
/* 공통 */
#nt_menu .me-a {
	font-weight: 400;
	text-transform: uppercase;
}

.MenuBg {display: none;}

@media all and (max-width:991px) {
	#nt_menu {
		position: fixed;
		top: 0;
		transform: translateY(0);
		right: -40%;
		width: 40%;
		height: 100%;
		background: #82B4CD;
		z-index: 100;
		-webkit-transition: all .3s;
		-moz-transition: all .5s;
		-o-transition: all .5s;
		transition: all .5s;
	}
	#nt_menu.open {right: 0;}

	#nt_menu .nt-container {
		overflow-y: auto;
		overflow-x: hidden;
		display: flex;
		padding: 140px 20px 30px;
		width: 100%;
		height: 100vh;
	}

	#nt_menu .me-list .me-li {
		flex-basis: auto;
		max-width: inherit;
	}

	#nt_menu .me-list .me-li > a {
		padding: 5px 0;
		font-size: 20px;
	}

	#nt_menu .me-list .me-li > a > .me-a {
		text-align: left;
	}
	.MenuBg {
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: #000;
		opacity: 0.6;
		z-index: 50;
	}
	
	#nt_body.pointer-events {
		pointer-events: none;
	}
}


@media all and (max-width:767px) {
	#nt_menu {
		right: -100%;
		width: 100%;
	}

	#nt_menu.open {right: 0;}
}

/********************************************************
■  footer
********************************************************/
#nt_footer {
	padding: 30px 0 10px;
	background: #1c1c1c;
	color: #666;
	text-align: center;
}

#nt_footer .sns-icons {
	margin-bottom: 20px;
}

#nt_footer .sns-icons li {
	display: inline-block;
	margin: 0 12px;
}

#nt_footer .sns-icons li a {
	font-size: 25px;
	color: #b7b7b7;
}

#nt_footer .footer-info {
	margin-bottom: 20px;
}

#nt_footer .footer-info span {
	margin-right: 5px;
	margin-left: 10px;
	color: #b7b7b7;
}

@media all and (max-width:767px) {
	#nt_footer {

	}
}



/********************************************************
■ main
********************************************************/
main img {max-width: 100%;}
main section {overflow: hidden; padding: 150px 0;}
main section.section-blank {margin-bottom: -150px;}
.sub-body {margin-top: 250px;}

.main-slider {overflow: hidden;}
.main-slider .swiper-slide {
	height: 100vh;
	background-size: cover;
	background-position: center;
}

.main-article1 {
	background: url('/img/vita/section01-bg.jpg') no-repeat center top / cover;
}


.sec-title {margin-bottom: 5rem;}
.sec-title h4 {
	display: table;
	position: relative;
	margin: 0 auto;
	padding-bottom: 15px;
	text-align: center;
	text-transform: uppercase;
	font-weight: 600;
}
.sec-title h4.en {font-family: "Roboto", sans-serif !important;}

.sec-title h4::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: 50px;
	height: 2px;
	background-color: #82B4CD;
}

.sec-title h4.white-bar::after {
	background-color: #fff;
}

div.sec-box-shadow {
	padding: 50px 0;
	margin: 0 30px;
	background: #fff;
	box-shadow: 0px 10px 30px rgba(0,0,0,.2);
}

.about-banner {
	margin: 85px 30px;
}

#teachers .row img {
	display: block;
	margin: 0 auto;
	width: 75%;
}

.company-info {margin-top: 85px;}
.company-info .nt-container {
	background-color: #fff;
}

.company-info .nt-container > div {display: flex;}
.company-info .nt-container > div > div {
	flex: 1;
	position: relative;
}

.company-info .nt-container > div > div > div {
	display: table;
	margin: 0 auto;
}

.company-info .nt-container > div > div > div > div {
	float: left;
}

.company-info .nt-container > div > div > div > div:first-of-type {
	margin-right: 15px;
}

.company-info .nt-container img {
	max-height: 40px;
}


/*.company-info .d-flex img {
	margin-right: 20px;
	max-height: 40px;
}*/

.about-map .root_daum_roughmap {width: 100%;}
.about-map .root_daum_roughmap .wrap_map {height: 380px;}
.about-map .wrap_controllers {display: none;}

#program {
	position: relative;
	background: url('/img/vita/program-bg.jpg') no-repeat center center / cover;
}

#program::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 20%;
	background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 90%);
}

#program .program-slider {
	overflow: hidden;
	position: relative;
}

#program .program-slider .sec-box-shadow {
	border-radius: 30px;
}

#program .program-slider h3 {
	font-weight: 700;
}

#program .program-slider h5 {
	font-weight: 400;
	line-height: 1.5;
}

#program .program-slider .swiper-program-pagination {
	position: relative;
	display: table;
	margin: 30px auto 0;
	text-align: center;
	z-index: 5;
}

#program .program-slider .swiper-program-pagination span {
	padding: 5px 20px;
	width: auto;
	height: auto;
	background: #20556E;
	border-radius: 30px;
	color: #fff;
	opacity: 1;
}

#program .program-slider .swiper-program-pagination span.swiper-pagination-bullet-active {background-color: #000;}
#program .swiper-button-next, 
#program .swiper-button-prev {
	position: absolute;
	top: 50%;
	width: 25px;
	height: 55px;
	margin-top: -60px;
	z-index: 10;
	cursor: pointer;
	background-size: 25px 55px;
	background-position: center;
	background-repeat: no-repeat;
}

#program .swiper-button-next {
	background-image: url("/img/vita/swiper-program-next.png");
	right: 50px;
	left: auto;
}

#program .swiper-button-prev {
	background-image: url("/img/vita/swiper-program-prev.png");
	left: 50px;
	right: auto;
}



.sns-list {
	display: table;
	margin: 0 auto;
}
.sns-list::after {
	content: "";
	display: block;
	clear: both;
}

.sns-list li {
	float: left;
	padding: 0 10px;
}

.sns-list li a {display: block;}


#facility {
	background: url('/img/vita/facility-bg.jpg') no-repeat center center / cover;
}

.center-absolute-img {
	position: absolute;
	right: 24%;
	bottom: -80px;
	z-index: 55;
}

.center-absolute-img li {
	float: left;
	padding: 0 10px;
	width: 50%;
}

.center-absolute-img li:last-of-type {
	margin-top: 70px;
}

#counseling {
	background: url('/img/vita/counseling-bg.jpg') no-repeat center center / cover;
}

#counseling .counseling-box > .col-12 > div {padding: 20% 10%;}
#counseling .counseling-box > .col-12 > div i {
	margin-bottom: 2rem;
	color: #82b4cd;
	font-size: 40px;
}

.inquiry .position-relative::after {
	content: "";
	display: block;
	clear: both;
}

.inquiry ul {
	position: absolute;
	left: 50%;
	bottom: 30px;
	transform: translateX(-50%);
	width: 80%;
	text-align: center;

}

.inquiry ul li a {
	display: block;
	font-weight: 700;
	margin: 8px 0;
	padding: 4px 0;
	font-size: 1.25rem;
}
.inquiry ul li:first-of-type a {
	background-color: #82b4cd;
	color: #fff;
}

.inquiry ul li:last-of-type a {
	background: #fff;
}




@media all and (min-width:992px) {
	.company-info .nt-container > div > div:not(:last-of-type)::after {
		content: "";
		display: block;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
		width: 1px;
		height: 80%;
		background: #ddd;
	}

	#counseling .counseling-box > .col-12 {min-height: 350px;}
}

@media all and (max-width:991px) {
	main section {padding: 100px 0;}
	main section.section-blank {margin-bottom: -100px;}

	#header_pc .header-logo > a img {max-height: 60px;}
	
	div.sec-box-shadow {margin: 0 10px;}
	.about-banner {margin: 45px 10px;}

	#teachers .row img {width: 85%;}

	.company-info {margin-top: 45px;}

	.company-info .nt-container > div {display: block;}
	.company-info .nt-container > div > div {flex: none;}
	.company-info .nt-container > div > div:not(:last-of-type) {
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	.company-info .nt-container > div > div:not(:last-of-type)::after {
		content: "";
		display: block;
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 100%;
		height: 1px;
		background: #ddd;
	}
	.company-info .nt-container > div > div > div {
		display: flex;
	}
	.company-info .nt-container > div > div > div > div:first-of-type {
		min-width: 15%;
	}
	.company-info .nt-container img {
		display: block;
		margin: 0 auto;
	}

	#counseling .counseling-box > .col-12 > div {padding: 5%;}
}

@media all and (max-width:767px) {
	#header_pc .header-logo > a img {max-height: 50px;}

	main section {padding: 80px 0;}
	main section.section-blank {margin-bottom: -80px;}

	.sec-title {
		margin-bottom: 3rem;
	}
	
	.main-slider .swiper-slide {
		height: 450px;
	}

	.about-banner {margin: 25px 10px;}

	#teachers .row img {width: 70%;}
	/*#teachers .row h5 {font-size: 1rem;}*/

	.company-info {margin-top: 25px;}
	.about-map .root_daum_roughmap .wrap_map {height: 300px;}


	#program .program-slider .swiper-program-pagination span {margin: 5px;}

	.center-absolute-img {
		bottom: -40px;
	}

	.center-absolute-img li:last-of-type {margin-top: 40px;}
	
	.center-absolute-img li {
		padding: 0 5px;
	}

	.sns-list img {
		max-height: 50px;
	}
	
	.inquiry ul {bottom: 20px;}
	.inquiry ul li a {
		margin: 4px 0;
		font-size: 1rem;
	}

}