/* header start */
/* top_kakao*/
.top_kakao{
  background-color: #fbe201;
  width:100%;
  left:0;
  position: fixed;
  overflow: hidden;
  z-index: 997;
}
.top_kakao_wrap{
  position: relative;
  height:50px;
}
.top_kakao img{
  position: absolute;
  left:50%;
  top:50%;
  transform: translate(-50%, -50%);
  padding:0 5px;
}
.top_icon{
  width:100%;
  position: fixed;
  left:0;
  height:50px;
  line-height: 50px;
  background-color: #880427;
  z-index: 997;

}
.top_sns{font-size:0; text-align: center;}
.top_sns li{display: inline-block; text-align: center; width:25%;}
.top_sns li img{width:30px; border-radius: 10px; vertical-align: middle;}
.top_sns_text p{font-size:12px; color:#fff; text-align: center; padding:10px 0;}

/* top */
.top{position:fixed; top:50px; left:0; z-index:997; width:100%; height:80px; background-color: #fff;}
.top.on{background:#fff; border-bottom:1px solid #ccc;}
.top .menubtn{position:relative; float:right; width:63px; margin-top:16px;}
.top .menubtn ul{position:absolute; top:0; left:0; width:63px; height:50px; padding:4px 16px;}
.top .menubtn ul li{height:1px; margin:10px 0; background:#333; transition:all 0.5s; transform-origin: left center;}
.top .menubtn ul li:nth-child(2){width:50%;}
.top .menubtn.on ul .bar_t{transform:rotate(45deg);}
.top .menubtn.on ul .bar_m{width:0;}
.top .menubtn.on ul .bar_b{transform:rotate(-45deg);}
.top .logo{padding-left:15px; padding-top:25px;}
.top .logo img{height:40px;}

/* sidemenu */
.menubox{position:fixed; top:0; left:-100%; z-index:998; width:100%; height:100%; transition:all 0.3s; background:#fff; overflow:auto;}
.menu_top_icon{
  background-color: #880427;
  width:100%;
  height:50px;
  line-height: 50px;
}
.menu_top_icon .top_sns{font-size:0; text-align: center;}
.menu_top_icon .top_sns li{display: inline-block; text-align: center; width:25%;}
.menu_top_icon .top_sns li img{width:30px; border-radius: 10px; vertical-align: middle;}
.menu_top_icon .top_sns_text p{font-size:12px; color:#fff; text-align: center; padding:10px 0;}

.menubox .logo{position: absolute; padding-left:15px; padding-top:25px; z-index: 999;}
.menubox .logo a{display: block; width:100%;}
.menubox .logo img{height:40px;}
.menubox.on{left:0;}
.sidemenu_head{position:relative; padding:40px 16px 40px; margin-bottom:10px; background-color: #c50034;}
.sidemenu_head ul{position:absolute; top:15px; right:0; width:63px; height:50px; padding:4px 16px;}
.sidemenu_head ul li{height:1px; margin:10px 0; background:#fff; transition:all 0.5s; transform-origin: left center;}
.sidemenu_head ul .bar_t{transform:rotate(45deg);}
.sidemenu_head ul .bar_m{width:0;}
.sidemenu_head ul .bar_b{transform:rotate(-45deg);}
.sidemenu_head p:nth-of-type(1){font-size:30px; color:#000;}
.sidemenu_head p:nth-of-type(2){margin-top:10px; font-size:16px; color:#000;}
.sidemenu_body{padding:0 10px;}
.sidemenu_body .sidemenu{margin-bottom:5px;}
.sidemenu_body .sidemenu p{position:relative; padding:20px; font-size:16px; font-weight:700; color:#fff; background:#fff; border-bottom:1px solid #ccc;transition:all 0.5s;}
.sidemenu_body .sidemenu p:hover{opacity:1;}
.sidemenu_body .sidemenu p .arrow{position:absolute; top:19px; right:15px; width:15px; height:15px; background:url('../img/mplus.png') no-repeat center; transition:all 0.3s;}
.sidemenu_body .sidemenu p.open .arrow{transform:rotate(135deg);}
.sidemenu_body .sidemenu p a{color:#c50034; display: block;}
.sidemenu_body .sidemenu ul{display:none; padding:5px 0 20px; background:#fff;}
.sidemenu_body .sidemenu ul li{margin-bottom:5px;}
.sidemenu_body .sidemenu ul li a{display:block; padding:15px 35px; font-size:14px; font-weight:400; color:#333; border-bottom:1px solid #ddd;}
.system p{text-align: center;}
.system p a{font-size:18px; color:#003f8a;}






/* header end */

/* visual swiper start */
.visual{
  width:100%;
  height:400px;
  margin-top:130px;
}
.typo{
position: absolute;
top:23%;
left:0;
width:100%;
z-index: 99;
text-align: left;
}

/* .typo > span.up{opacity:1; transform:translate(0,0);} */

.typo span{
color:#fff;
display:block;
/* opacity:0; */
/* transform:translate(0,100%); */
transition:all 1s ease-in-out;
font-family: 'Noto Sans KR', serif; 
margin-left:30px;
}
.typo span:first-child{
font-size:18px;
color:#2c2c2c;
/* transition-delay:0s; */
}
.typo span:first-child strong{
  font-size:18px;
}
.typo span:nth-child(2){
font-size:16px;
color:#4f4f4f;
padding:30px 0;
font-weight: 600;
/* transition-delay:0.5s; */
}
.typo span:last-child{
overflow: hidden;
border:1px solid #4f4f4f;
width:160px;
margin-top:10px;

}
.typo span:last-child::before{
content: '';
position: absolute;
top: 50%;
left: 50%;
width: 130%;
height: 200%;
border-radius: 50%;
transform: translate3d(-50%,-50%,0) scale3d(0,0,0);
transition: opacity .4s cubic-bezier(.19,1,.22,1),transform .75s cubic-bezier(.19,1,.22,1);
background-color: #a50034;
opacity: 0;
z-index: -1;
transition: all .2s ease-in-out;
}
.typo span:last-child:hover::before{
opacity: 1;
transition-duration: .85s;
transition: all .2s ease-in-out;
transform: translate3d(-50%,-50%,0) scale3d(1,1,1);
}
.typo span:last-child:hover{border:1px solid #a50034;}
.typo span:last-child:hover a{color:#fff;transition: all .2s ease-in-out;}
.typo span:last-child:hover a::after{color: #fff; transform: translateX(25px);}

.typo span:last-child a{
display: block;
font-size:14px;
padding:10px;
position: relative;
/* transition-delay:1s; */
}
.typo span:last-child a::after{
content: '¡æ';
position: absolute;
top:6px;
right:45px;
color: #4f4f4f;
font-size:24px;
transition: all .3s ease-in-out;
}


.visual .swiper-slide > img{width:100%; transform:scale(1.5); transition:all 5s ease;}
.visual .swiper-slide.swiper-slide-active > img.zoom{transform:scale(1);}

/* .visual .swiper-slide.swiper-slide-active .typo > span.up{opacity:1; transform:translate(0,0);} */

.visual .mySwiper .swiper-wrapper .swiper-slide.swiper-slide-active span:first-child{animation:top 1s .8s both;}
.visual .mySwiper .swiper-wrapper .swiper-slide.swiper-slide-active span:nth-child(2){animation:middle 1s .8s both;}
.visual .mySwiper .swiper-wrapper .swiper-slide.swiper-slide-active span:last-child{animation:bottom 1s 1.2s both;}

@keyframes top{
0%{opacity: 0;}
100%{opacity: 1;}
}
@keyframes middle{
0%{opacity: 0; transform:translateX(-300px);}
100%{opacity: .8; transform: translateX(0);}
}
@keyframes bottom{
0%{opacity: 0; transform:translateX(-300px);}
100%{opacity: .8; transform: translateX(0);}
}

.visual .swiper {
width: 100%;
height: 100%;
position: relative;
overflow: hidden;
}

.visual .swiper-slide {
width:100%;
text-align: center;
font-size: 18px;
background: #fff;
overflow: hidden;

/* 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;
}
.visual .swiper-slide img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
.visual .swiper .swiper-pagination span{margin:0 3px;}

.visual .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  border:1px solid #fff;
  background: none;
  border-radius: 100%;
}

.visual .swiper-pagination-bullet-active {
  opacity: 1;
  background: #a50034;
}
.visual .swiper .swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: .3s opacity;
  -o-transition: .3s opacity;
  transition: .3s opacity;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 10;
  left:50%;
  bottom:30px;
  transform: translate(-50%, 100%);
}
.visual .swiper-button-prev,
.visual .swiper-container-rtl .swiper-button-next {
  background-image: url("../img/swiper_prev.png");
  left: 0px;
  right: auto;
  width:20px;
}
.visual .swiper-button-next,
.visual .swiper-container-rtl .swiper-button-prev {
  background-image: url("../img/swiper_next.png");
  right: 0px;
  left: auto;
  width:20px;
}
.visual .swiper-button-next,
.visual .swiper-button-prev {
  position: absolute;
  top: 50%;
  width: 30px;
  height: 40px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 30px 40px;
  background-position: center;
  background-repeat: no-repeat
}
/* visual swiper end */

/* main_contants */
/* academ */
.academy{padding:20px 0;}
.academy_text h2{
font-size:20px;
color:#333;
text-align: center;
}
.academy_text{
position: relative;
}
/* .academy_text::after{
content: '';
position: absolute;
bottom:-10px;
left:0;
background: url(../img/logo_s.png) 50% 50% no-repeat;
background-size: cover;
width:30px;
height:25px;

}
.academy_text::before{
content: '';
position: absolute;
left:40px;
bottom:0px;
width:250px;
height:2px;
background-color: #a50034;
} */
.academy_text h2 strong{
color:#2c3084;
}
.academy_text p{
font-size:16px;
color:#333;
padding:10px 0;
text-align: center;
font-family:'Noto Sans CJK KR'
}
.academy_text span{
display: block;
font-size:12px;
line-height: 24px;
color:#333;
opacity: .8;
font-family:'Noto Sans CJK KR';
text-align: center;
letter-spacing: -1px;
}

.academy li{position: relative;}
.academy li a{
display: block;
position: relative;
background-color: #000;
overflow: hidden;
}
.academy li a p{
  position: absolute;
  right:0;
  bottom:0;
  font-size:12px;
  padding:10px 50px 10px 20px;
  color:#fff;
  background-color: #333;
  z-index: 1;
}
.academy li a p::after{
content: '¡æ';
position: absolute;
top:6px;
right:20px;
font-size:24px;
color:#fff;
transition: all .3s ease-in-out;
}
.academy li a img{width:100%;}
.academy_photo_text{
position: absolute;
top:30px;
left:15px;
z-index: 1;
}
.academy_photo_text span{
display: block;
color:#fff;
}
.academy_photo_text span:nth-child(1){font-size:14px; margin-bottom:10px;}
.academy_photo_text span:nth-child(2){font-size:18px; font-family: 'GmarketSansLight'; margin-bottom:10px;}
.academy_photo_text span:nth-child(3){font-size:24px;}

.academy li a img{transition: all .3s ease-in-out;}
.academy li a:hover img{transition: all .3s ease-in-out; transform: scale(1.1); opacity: .8;}
.academy li a:hover p::after{transition: all .3s ease-in-out; transform: translateX(8px);}
/* academ */

/* middle_slide */
.middle_slide{
padding:20px 0;
}
.middle_slide .swiper {
width: 100%;
height: 100%;
position: relative;
overflow: hidden;
}
.middle_slide .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;
}
.middle_slide .swiper-slide img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
/* middle_slide */

/* student */
.student{padding:20px 0;}
.student ul{margin-bottom:20px;}
.student_text h2{
font-size:24px;
color:#333;
text-align: center;
}
.student_text{
position: relative;
}
/* .student_text::after{
content: '';
position: absolute;
bottom:-10px;
left:0;
background: url(../img/logo_s.png) 50% 50% no-repeat;
background-size: cover;
width:30px;
height:25px;

}
.student_text::before{
content: '';
position: absolute;
left:40px;
bottom:0px;
width:250px;
height:2px;
background-color: #a50034;
} */
.student_text h2 strong{
  font-size:24px;
  color:#2c3084;
}
.student_text p{
font-size:20px;
color:#333;
padding:20px 0;
letter-spacing: -2px;
font-family:'Noto Sans CJK KR';
text-align: center;
}
.student_text span{
display: block;
font-size:15px;
line-height: 32px;
color:#333;
opacity: .8;
font-family:'Noto Sans CJK KR';
text-align: center;
margin-bottom:15px;
}
.student_text a{
font-size:18px;
color:#333;
line-height: 36px;
display: block;
position: relative;
transition: all .2s ease-in-out;
overflow: hidden;
width:120px;
text-align: center;
border:1px solid #ccc;
margin:0 auto;
}
.student_text a::before{
content: '';
position: absolute;
top: 50%;
left: 50%;
width: 130%;
height: 200%;
border-radius: 50%;
transform: translate3d(-50%,-50%,0) scale3d(0,0,0);
transition: opacity .4s cubic-bezier(.19,1,.22,1),transform .75s cubic-bezier(.19,1,.22,1);
background-color: #a50034;
opacity: 0;
z-index: -1;
transition: all .2s ease-in-out;
}
.student_text a:hover::before{
opacity: 1;
transition-duration: .85s;
transition: all .2s ease-in-out;
transform: translate3d(-50%,-50%,0) scale3d(1,1,1);
}
.student_text a:hover{color:#fff;transition: all .2s ease-in-out;}
.student_text a span{
font-size:14px;
display: inline-block;
margin-left:10px;
margin-bottom:-3px;
transform: rotate(90deg);
transition: all .3s ease-in-out;
}
.student_text a:hover span{transform: rotate(-90deg); transition: all .3s ease-in-out; color:#fff;}

.student .board .img_wrap ul{
  display: flex;
  align-items: top;
  flex-wrap: wrap;
}
.student .board .img_wrap ul li{padding:0 10px; width:50%;}
.student .board .img_wrap .img_wrap_img{position: relative; background-color: #000; overflow: hidden; padding-top:80%;}
.student .board .img_wrap .img_wrap_img img{
  position: absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  transition: all .3s ease-in-out;
}
.student .board .img_wrap .img_wrap_tit p{
  font-size:16px;
  color:#333;
  text-align: center;
  padding:10px 0;
  position: relative;
}
.student .board .img_wrap .img_wrap_tit p::before{
  content: '';
  position: absolute;
  bottom:0;
  left:0;
  width:0;
  height:1px;
  background-color: #a50034;
  transition: all .3s ease-in-out;
}

.student .board .img_wrap ul li a:hover .img_wrap_img img{transform:scale(1.1); opacity: .8;}
.student .board .img_wrap ul li a:hover .img_wrap_tit p{color:#a50034;}
.student .board .img_wrap ul li a:hover .img_wrap_tit p::before{width:100%;}
/* student */

/* main-gallery */
.main_gallery{padding:20px 0; position: relative;}
.main_gallery h2{
font-size:24px;
color:#333;
padding-left:12px;
}
.main_gallery h2 em{
  font-size:14px;
  font-weight: 200;
  color:#a40034;
  font-style: normal;
}
.main_gallery p{
font-size:16px;
color:#333;
padding-left:12px;
}
.main_gallery span{
position: absolute;
top:90px;
right:0;
}
.main_gallery span a{
display: block;
font-size:14px;
padding:10px 50px 10px 20px;
color:#333;
position: relative;
}
.main_gallery span a::after{
content: '¡æ';
position: absolute;
top:6px;
right:20px;
font-size:24px;
color:#333;
transition: all .3s ease-in-out;
}
.main_gallery span:hover a::after{transition: all .3s ease-in-out; transform: translateX(8px);color:#a50034;}
.main_gallery span:hover a{color:#a50034;}

.main_gallery .board{padding:30px 0;}

.main_gallery .board tr td table{width:100%;}
.main_gallery .board tr td table tr td{padding:5px; text-align: center; line-height: 28px;}
.main_gallery .board tr td table tr td a{display: block; overflow: hidden; background-color: #000;}
.main_gallery .board tr td table tr td img{width:100%; transition: all .2s ease-in-out; height:140px;}
.main_gallery .board tr td table tr td:hover a img{scale: 1.1; transition: all .2s ease-in-out; opacity: .8;}

.main_gallery .board .line_wrap{position: relative; margin-top:12px; background-color: #fff;}
.main_gallery .board .line_wrap .line{
position: relative;
bottom:0;
left:0;
height:2px;
width:0%;
transition: all .3s ease-in-out;
background-color: #a50034;
}
.main_gallery .board tr td .hover_wrap:hover .line{width:100%;}
/* main-gallery */

/* info */
.info{
width:100%;
margin:0 auto;
}
.info h2{
font-size:24px;
color:#333;
}
.info p{
font-size:16px;
color:#333;
}
.info span{
position: absolute;
top:25px;
right:0px;
z-index: 9;
}
.info span a{
display: block;
font-size:14px;
padding:10px 50px 10px 20px;
color:#333;
position: relative;
}
.info span a::after{
content: '¡æ';
position: absolute;
top:6px;
right:20px;
font-size:24px;
color:#333;
transition: all .3s ease-in-out;
}
.info span:hover a::after{transition: all .3s ease-in-out; transform: translateX(8px);color:#a50034;}
.info span:hover a{color:#a50034;}

.info .swiper {
width: 100%;
height: 100%;
position: relative;
overflow: hidden;
transform: translateY(-30px);
padding-top:60px;
padding-bottom:30px;
}
.info .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;
}
.info .swiper-slide img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
.info .swiper-button-prev,
.info .swiper-container-rtl .swiper-button-next {
  background-image: url("../img/swiper_prev.png");
  left: 0px;
  right: auto;
  width:20px;
}
.info .swiper-button-next,
.info .swiper-container-rtl .swiper-button-prev {
  background-image: url("../img/swiper_next.png");
  right: 0px;
  left: auto;
  width:20px;
}
.info .swiper-button-next,
.info .swiper-button-prev {
  position: absolute;
  top: 55%;
  width: 30px;
  height: 40px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 30px 40px;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 999;
}
/* .swiper_arrow_wrap{
position: absolute;
top:90%;
left:85%;
transform: translate(-50%, -50%);
width:80px;
z-index: 999;
} */
/* info */

/* footer */
footer{
width:100%;
background-color: #231f20;
padding-top:20px;
padding-bottom:90px;
}
footer ul:nth-of-type(2),
footer ul:nth-of-type(3){padding:10px 0; text-align: center;}
footer .wrap .footer_top{border-bottom:1px solid #ccc;}
footer li a{
font-size:12px;
color:#bbb;
display: inline-block;
margin-right:5px;
padding-bottom:10px;
padding-left:10px;
transition: all .3s ease-in-out;
}
footer li a:hover{
color:#a40034;
transform: translateY(-10px);
}
footer ul:nth-child(2){margin-top:20px;}
footer p{
font-size:13px;
color:#bbb;
line-height: 26px;
}
footer > .wrap > ul > li > span{
display: block;
font-size:13px;
color:#bbb;
margin-top:50px;
}

.footer_icon{
  padding:10px 0;
  padding-left:10px;
}
.footer_icon ul{overflow: hidden;}
.footer_icon li{overflow: hidden; margin-bottom:10px; float:left;}
.footer_icon li span img{width:25px; vertical-align: middle;}
.footer_icon li span{
display: block;
float:left;
font-size:13px;
color:#bbb;
margin-right:10px;
}
/* footer */


/* top_btn */
.topbtn{
  position: fixed;
  bottom:120px;
  right:20px;
  z-index:9999999;
  width:30px;
  height:30px;
  border-radius: 40px;
  background-color:  #a50034;
  transition: all 0.5s ease;
  opacity: 0;
}
.topbtn.on{opacity: 1;}

.topbtn img{
  position: absolute;
  top:50%;
  left:50%;
  transform: translate(-50%,-50%);
  width:20px;
}

.topbtn:active,
.topbtn:hover
{color:#fff; transition:all 0.5s ease; background-color: #151515;}
/* top_btn */

/* m_phone */
.m_phone{
  width:100%;
  max-width:800px;
  min-width:300px;
  position: fixed;
  bottom:0;
  z-index: 99999999999999999;
  text-align: center;
}
