/* Base */
html {font-size: 16px; line-height: 1.5; }
h1, h2, h3, p, ul { margin: 0; }
ul { padding-left: 0; }
ul li { list-style-type: none; }
a { color: inherit; text-decoration: none; }
img { vertical-align: middle; }

.dummy { margin: 0 auto; max-width: 30em;}




{
	-webkit-font-smoothing:antialised;	
}


body {
	margin: 0;
	padding: 0;

	min-height: 100vh;
	background:	#FFFFFF;
	font-family:'Poppins', sans-serif;

	/*min-width: 960px; */
	
	padding-top: 0px;
}

 


.company_title
{
     font-family: 'Nanum Pen Script', cursive; font-size:10em;

	 

}

.content h3, .title
{
     font-family: 'Nanum Pen Script', cursive;
}



.upside{

	height:400px;
}



/*upperside*/

.upperside li
{
	float:right;
	border-left: 1px solid #ccc;
}

.upperside a {
    display: block;
    padding: 0 1.36em;
}
.upperside a:hover {
    background-color: rgb(240, 240, 240);
}























/*rotator*/

.rotator h2
{
	position:relative;
	font-size:3em;
	color:#444;
	width:90%;
}

.rotator h2 DFN
{
	color:#8B4513;
	display:none;
}









/*Sticky header*/


.page-header {
    background-color:#263343;
    width: 100%;  /*min-width: 960px;*/
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25); 
	position:relative; /*아래 dummy 텍스트와의 공백을 없애기 위해*/
	z-index:100;
}

.page-header.sticky { position: fixed; top: 0; }
 /* 스크롤양이 많아져 sticky class가 붙었을때의 위치 */

.page-header > .inner { 
    margin: auto; width:100%;  }

.no-boxshadow .page-header {
    border-bottom: 1px solid rgb(204, 204, 204);
}

.page-header > .inner > .navbar ul li{
	font-size: 1.5em;
	font-weight: bold;
}






/* navbar */

/*
.navbar {
	display:flex;
	justify-content: space-between;
	align-items:center;
	background-color:#263343;
	padding: 8px 12px;
	font-family:'Source Sans Pro';
}


.navbar a {
	text-decoration:none;
	color:#FFFFFF;

    display: block;
    padding: 0 1.36em;
}


.navbar_logo{
	font-size:32px;
	color:#FFFFF;
}

.navbar_logo i{
	float:left;
	display:flex;
	color:#d49466;
}
.navbar_log a{
	padding-left:10px;
}


.navbar_menu {
	display:flex;
}

.navbar_menu li{
	padding: 8px 12px;
}

.navbar_menu li:hover{
	background-color:#d49466;
	border-radius:4px;
}


.navbar_icons{
	list-style:none;
	color:#FFFFFF;
	display:flex;
	padding-left:0;
}

.navbar_icons li{
	padding:8px 12px;
}

.navbar_toggleBtn{
	position:absolute;
	right:-100px;
	font-size:32px;
}
.navbar_toggleBtn i{
	color:#d49466;
}

*/












input[id*='menu'] {display:none;}
input[id*='menu']+ label {

	display:flex;
	justify-content: space-between;
	align-items: center;
	background-color:#263343;
	padding: 8px 12px;

}
input[id*='menu']+ label + div {display:none;}



/* Logo */
.site_logo {
    float: left;
	top: 10px;
    margin-left: 10px;
	width:200px;
}


.navbar_toggleBtn{
	display:none;
}


.menu {
	margin-left:10%;
	width:100%;
	display:flex;
	font-weight:bold;
	font-family:'Source Sans Pro';
}



.logo {
	width:100px; height:80px; position:relative; top:0px; left:10px;
}




.menu li{
	font-size:25px;
	padding: 8px 12px;
	margin:0 auto;
}

.menu li:hover{
	background-color:#d49466;
	border-radius:4px;
}

.menu li a {
	text-decoration:none;
	color:#FFFFFF;

    display: block;
    padding: 0 1.36em;
}























/* 좌우 슬라이드 */
.container
{
	position:relative;
	width:100%;
	overflow:hidden;
	padding-bottom:80px;
	border:none;

}


.slider-container
{
	position:absolute;
	width:100%;
	left:0;
}

.slide
{
	position:absolute;
	width:100%;
	padding:0 10%;
	box-sizing:border-box;
	top:50%;
	transform:translateY(-50%);
	text-align:center;
	overflow:hidden;

}


.slider-container.animated
{
	-webkit-transition: left .3s ease-in;
	transition: left .3s ease-in;
}



/* 좌우 슬라이드 Utility*/
.simple-list
{
	list-style-type:none;
	margin:0;
	padding:0;
}

/* 좌우 슬라이드 Nav*/
#prev,
#next
{
	position:absolute;
	top:50%;
	left:51%;
	transform:translateY(-50%);
	z-index:10;
	display:inline-block;
	height:3em;
	width:3em;
	border-radius:50%;
	background-position:center center;
	background-repeat:no-repeat;
	-webkit-transition:all .3s ease-in;
	transition:all .3s ease-in;
	opacity:1;
}

#prev.disabled, #next.disabled {display:none; opacity:0;}

#prev {background-image:url('arrow-left-out.svg'); margin-left:-50%; margin-top:10%;}

#prev:hover {background-image:url('arrow-left-over.svg');}

#next {background-image:url('arrow-right-out.svg'); margin-left:42%; margin-top:10%;}

#next:hover {background-image:url('arrow-right-over.svg');}

.pager
{
	position:absolute;
	left:0; right:0; bottom:0;
	text-align:center;
	margin:0;
	padding:0;
}

.pager span
{
	width:10px; 
	height:10px; 
	background:#ccc;
	border-radius:50%;
	display:inline-block;
	text-indent:-999em;
	margin:0 5px;
}

.pager span.active
{
	background:#FF0000;
}
















/*Skewed*/

.skewed-container {
	position:relative;
	width:90%;
	display:grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	grid-template-rows:auto;
	grid-gap: 20px 40px;
	margin:0 auto

}

.skewed-container .box {
	position:relative;
	height:400px;
	background: #060c21;

	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #000;
}

.skewed-container .box:before {
	content:'';
	position: absolute;
	top: -2px;
	left: -2px;
	right: -2px;
	bottom: -2px;
	background: #fff;
	transform: skew(3deg, 3deg);
	z-index: -1;
}

.skewed-container .box:nth-child(1):before{
	background: linear-gradient(315deg, #ff0057, #e64a19);
}

.skewed-container .box:nth-child(2):before{
	background: linear-gradient(315deg, #89ff00, #00bcd4);
}

.skewed-container .box:nth-child(3):before{
	background: linear-gradient(315deg, #e91e63, #5d02ff);
}

.skewed-container .box:nth-child(4):before{
	background: linear-gradient(315deg, #ff0000, #ffc107);
}

.skewed-container .box:nth-child(5):before{
	background: linear-gradient(315deg, #ff0000, #ffc107);
}

.skewed-container .box:nth-child(6):before{
	background: linear-gradient(315deg, #ff0000, #ffc107);
}



.skewed-container .box:after {
	content:'';
	position: absolute;
	top:0;
	left:0;
	width:50%;
	height:100%;
	background: rgba(255,255,255,0.05);
	pointer-events:none;
}

.content {
	position: relative;
	padding: 20px;
	transform:translateY(40px);
}

.content h2 {
	position: absolute;
	top: -60px;
	right: 20px;
	margin: 0;
	padding: 0;
	font-size: 12em;
	color: rgba(255, 255, 255, .1);
	transition: 0.5s;
}

.box:hover .content h2 {
	top: -140px;
}

.box .content h3 {
	margin: 0 0 10px;
	padding: 0;
	font-size: 4em;
	font-weight: 500;
	color: #fff;
}

.box .content p {
	margin: 0;
	padding: 0;
	color: #fff;
	font-size: 1.5em;
	transition: 0.5s;
}


.box .content a {
	position: relative;
	margin: 10px 0 0;
	padding: 10px 20px;
	text-decoration: none;
	border: 1px solid #fff;
	display: inline-block;
	color: #fff;
	transition: 0.5s;
	transform: translateY(0px);
	opacity: 0;
	visibility: hidden;
}

.box:hover .content a {
	transform: translateY(-300%);
	opacity: 1;
	visibility: visible;
}

.box .content a:hover {
	color: #000;
	background: #fff;
}

.box:hover .content p{
	opacity: 0;
}










/*progress-bar*/


.progress-bar{
	position:relative;
	width:960px; height:30px;
	margin:3em auto;
	border:1px solid green;
}

.bar{
	position:absolute;
	left:0; top:0; bottom:0; width:10%;
	background:green;
}

.rate{
	position:absolute;
	top:0; bottom:0; right:15px;
	font-size:1.2em; color:green;
	line-height:30px;
}















/*swiper*/

	
	.swiper-container {
      width: 100%;
	  height:50%;
    }
    .swiper-slide {
      text-align: center;
      font-size: 18px;
      background: #fff;
      /* Center slide text vertically */
      display: -webkit-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-align-items: center;
      align-items: center;
    }
    .swiper-pagination-bullet {
      width: 20px;
      height: 20px;
      text-align: center;
      line-height: 20px;
      font-size: 12px;
      color:#000;
      opacity: 1;
      background: rgba(0,0,0,0.2);
    }
    .swiper-pagination-bullet-active {
      color:#fff;
      background: #007aff;
    }












































/*Num_animation*/


.num_animation-container {
	position:relative;
	width:90%;
	display:grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	grid-template-rows:auto;
	grid-gap: 10px 0px;
	margin:0 auto;
	margin-right:10px;


}

.num_animation-container .box {
	position:relative;
	height:150px;
	width: 150px;
	background: #FFFFFF;

	
	justify-content: center;
	align-items: center;
	border:none;
}

.num_animation-container .box .box_title{

	display:block;
	width:150px;
	text-align:center;
	background:#FF8C00;
}



.num_animation-container .box .box_title .num_animation{
	
	display:block;
	border:none;
	text-align:center;
	align-items:center;
}






















/*스크롤 시 TOP버튼 (상단 이동)*/

#back-to-top {
    position: fixed;
    bottom: 3em;
    right: 3em;
    background-color: rgba(255, 255, 255, .9);
    color: #313943;
    border: none;
    border-radius: 5px;
    padding: 1em;
    text-transform: uppercase;
    cursor: pointer;
    font-weight: 700;
    box-shadow: 0 0 2em 0 rgba(0, 0, 0, .25);
    transition: all .3s ease-in-out;
    display: inline-block;
    opacity: 0;
    text-decoration: none;
    font-size: 1em;
	z-index:100;
}

    #back-to-top:hover {
        background-color: #fff;
        padding: 1em 3em;
    }

#back-to-top.visible {
    opacity: 1;
}












/*bar형태로 개념, 교재, 오답, 테스트 사진파일*/

.web_bar_container{
	position:relative;
	text-align:cetner;

}

.web_bar {

	position:relative;
	display:block;
	width:100%;
	margin-top:10px;

}


.web_bar_mobile {
	display:none;
}







/*footer*/

.footer_info{
	position:relative;
	padding: 50px;

}


.footer_info ul{

text-align:center;

}

.footer_info ul li{
	position:relative;
	display:inline-block;
	padding:0.8em;
	font-size:1em;
	line-height:22px;


}

































@media screen and (max-width:1500px){


.blog_bar{
	display:none;
}


.mobile_blog_bar{
	font-size:4em;
}




.company_title{
	font-size:3em;
}

.upside{

	height:650px;
}



.mplus_naver_img{

	width:200px;

}


.upperside ul li{

	font-size:1.5em;

}

.site_logo {
	position:relative;
	top:-10px;
	left:-10px;
}


.navbar_toggleBtn{
	display:block;
	position:absolute;
	transform:translateX(-200px) translateY(0px);
}



.rotator h2{
	font-size:2em;
}



/*
	.navbar{
		flex-direction:column;
		align-items:flex-start;
		padding: 8px 24px;
	}
	
	.navbar_menu{
		display:none;
		flex-direction:column;
		align-items:center;
		width:100%;
	}

	.navbar_menu li{
		width:100%;
		text-align:center;
	}


	.navbar_icons{
		display:none;
		justify-content:center;
		width:100%;

	}

	.navbar_toggleBtn{
		right:24px;
	}

	.navbar_menu.active,
	.navbar_icons.active{
		display:flex;
	}

*/




	
input[id*='menu'] {display:none;}
input[id*='menu'] + label {display:block; padding:20px; height:55px; border:1px solid #232188; border-bottom:0; color:#fff; font-weight:900; background:#263343; cursor:pointer; position:relative;}

	
input[id*='menu'] + label + div {display:inline-block; max-height:0px; width:100%; transition:all .35s; overflow:hidden; background:#263343; font-size:25px; font-weight:bold; color:#FFFFFF;}

input[id*='menu'] + label + div p {display:inline-block; width:100%; padding:5px;}

input[id*='menu']:checked + label + div {display:inline-block; max-height:800px;}


.logo {
	position:relative;
	transform:translateX(-10px) translateY(-12px);
	
}



.menu li{display:none;}


.mobile_menu ul{
		width:100%;
		padding: 8px 24px;
		padding-left:0;
}

.mobile_menu li{
		width:100%;
		text-align:center;
		margin-left:0;
		padding-top:10px;
		padding-bottom:10px;
}

.mobile_menu li:hover{
	background-color:#d49466;
	border-radius:4px;
}



.navbar_toggleBtn{
	position:absolute;

	right:-150px;
	top:20px;
	font-size:50px;
}
.navbar_toggleBtn i{
	color:#d49466;
}





.swiper-slide img{
	width:100%;
}







.web_bar {
	display:none;
}


.web_bar_mobile {
	display:inline;
	width:100%;
	margin-top:10px;
}







.footer_info ul li{

	font-size:1.5em;

}





}		/*media screen max-width:1500px*/





.blog_bar{
	font-size:4em;
}

.mobile_blog_bar{
	display:none;
}



@media screen and (max-width:1500px){

.blog_bar{
	display:none;
}

.mobile_blog_bar{
	display:inline;
	font-family: 'sans-serif', cursive;
	text-align:center;
}

.mplus_naver_img{
	width:100vw;
}

.footer_info{
	width:90vw;
}

.slider-container{
	width:100vw;
}

}





.slide_img{

	width:130%; 
	transform:translateX(-10%);

}

@media screen and (min-width:1500px){

	.slide_img{
		width:1500px;
		transform:translateX(0%);
	}

}



