/* header start */
/* top */
.top{position:fixed; top:0px; 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:30px;}

/* sidemenu */
.menubox{position:fixed; top:0; left:-100%; z-index:998; width:100%; height:100%; transition:all 0.3s; background:#fff; overflow:auto;}
.menubox .logo{position: absolute; padding-left:15px; padding-top:25px; z-index: 999;}
.menubox .logo a{display: block; width:100%;}
.menubox .logo img{height:30px;}
.menubox.on{left:0;}
.sidemenu_head{position:relative; padding:40px 16px 40px; margin-bottom:10px; background-color: #153b7a;}
.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:#153b7a; 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;}
/* header end */

/* visual swiper start */
.visual{
  width:100%;
  height:100%;
  margin-top:80px;
}
.typo{
  position: absolute;
  top:50%;
  transform: translateY(-50%);
  left:0;
  width:100%;
  z-index: 99;
  text-align: left;
}
.typo span{
  display:block;
  transition:all 1s ease-in-out;
  color:#fff;
  text-align: center;
}
.typo span:first-child{
  font-size:24px;
  transition-delay:0s;
  color:#fff;
  font-family: 'GmarketSansLight';
}
.typo span:nth-child(2){
  font-size:18px;
  transition-delay:0.5s;
  color:#fff;
  font-family: 'GmarketSansBold';
}
.typo span:last-child{
transition-delay:1s;
font-size:14px;
color:#fff;
font-weight: 400;
}

.typo span:last-child a:hover{background-color: #0064b1;}
.typo span:last-child a:hover::before{right:15px;}
.typo span:last-child a:hover::after{width:100%;}

.visual .swiper-slide > img{width:100%; transform:scale(1.2); 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 .2s both;}
.visual .mySwiper .swiper-wrapper .swiper-slide.swiper-slide-active span:nth-child(2){animation:middle 1s .4s both;}
.visual .mySwiper .swiper-wrapper .swiper-slide.swiper-slide-active span:last-child{animation:bottom 1s .6s both;}

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

.visual .mySwiper .swiper-wrapper .swiper-slide.swiper-slide-active .typo_line_wrap{animation:line 1s .2s both;}
@keyframes line{
0%{opacity: 0; transform:translateX(300px);}
100%{opacity: 1; 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;
position: relative;
z-index: 0;

/* 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-slide::before{
position: absolute;
content: '';
top:0;
left:0;
width:100%;
height:100%;
background-color: rgba(0, 0, 0, 0.4);
z-index: 1;
}

.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: #0064b1;
}
.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 {
  left: 0px;
  right: auto;
  width:20px;
  color:#fff;
}
.visual .swiper-button-next,
.visual .swiper-container-rtl .swiper-button-prev {
  right: 0px;
  left: auto;
  width:20px;
  color:#fff;
}
.visual .swiper-button-prev:after, .swiper-rtl .swiper-button-next:after{font-size:24px;}
.visual .swiper-button-next:after, .swiper-rtl .swiper-button-prev:after{font-size:24px;}

.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 */

/* image_show_wrap 공통 */
section .image_show_wrap,
section .image_show_wrap2{position: relative; top: 0px; left: 0%; width: 100%;}
section .image_show_wrap{overflow: hidden; animation-duration: 1.4s;}
section .image_show_wrap2{animation-duration: 1.4s;}
section .show_img01{animation-name: show_img01;}
@keyframes show_img01{0%{opacity: 0; transform: translate3d(-100%, 0, 0);}}
section .show_img02{animation-name: show_img02;}
@keyframes show_img02{0%{opacity: 0; transform: translate3d(100%, 0, 0);}}
section .show_img03{animation-name: show_img03;}
@keyframes show_img03{0%{opacity: 0; transform: translate3d(100%, 0, 0);}}
section .show_img04{animation-name: show_img04;}
@keyframes show_img04{0%{opacity: 0; transform: translate3d(-100%, 0, 0);}}
section .show_img05{animation-name: show_img05;}
@keyframes show_img05{0%{opacity: 0; transform: translate3d(0, 100%, 0);}}
section .show_img06{animation-name: show_img06;}
@keyframes show_img06{0%{opacity: 0; transform: translate3d(0, -100%, 0);}}
/* image_show_wrap 공통 */

/* ------------------------------------- section ------------------------------------- */
/* section1 */
.cont1{padding:60px 0;}
.cont1 .special h2{
  font-size:24px;
  color:#333;
  text-align: center;
  font-weight: 400;
}
.cont1 .special h2 strong{
  font-size:24px;
  font-weight: 800;
}
.cont1 .special ul{
  margin-top:30px;
  display: flex;
  flex-wrap: nowrap;
  align-items: top;
  justify-content: space-between;
  gap:10px;
}
.cont1 .special ul li{text-align: center; border:1px solid #ccc; width:33.333%; padding:30px 0;}
.cont1 .special ul li:nth-of-type(1){border-radius: 30px 0 0 30px;}
.cont1 .special ul li:nth-of-type(3){border-radius: 0 30px 30px 0;}
.cont1 .special ul li span{
  display: block;
  font-size:24px;
  color:#878787;
  font-weight: 800;
}

.cont1 .special ul li .icon{
  width:80px;
  height:80px;
  border-radius: 50%;
  margin:30px auto 30px auto;
  background-color: #99ADBF;
  position: relative;
}
.cont1 .special ul li .icon h3{
  position: absolute;
  top:50%;
  left:50%;
  transform: translate(-50%, -50%);
  font-size:24px;
  color:#fff;
  text-align: center;
  font-family: 'GmarketSansBold';
}
.cont1 .special ul li .icon2{background-color: #163E73;}
.cont1 .special ul li .icon3{background-color: #049DD9;}

.cont1 .special ul li .icon img{width:100%;}
.cont1 .special ul li h3{
  font-size:18px;
  color:#1F4373;
  font-weight: 800;
  text-align: center;
  margin-bottom:10px;
}
.cont1 .special ul li p{
  font-size:16px;
  color:#333;
  text-align: center;
  line-height: 32px;
}
/* section1 */

/* section2 */
.cont2{
  padding:60px 0;
  background-color: #fbfbfb;
}
.cont2 .inner > ul{
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
.cont2 .inner > ul::before{
  content: '';
  position: absolute;
  top:0;
  left:450px;
  background: url(../../img/section2/logo_s.png) no-repeat;
  background-size: cover;
  width:200px;
  height:283px;
  z-index: 99;
}
.cont2 ul li{width:100%;}
.cont2 ul li:nth-of-type(2){margin-top:30px;}
.cont2 .tidings h2{
  font-size:24px;
  color:#333;
  text-align: center;
  font-weight: 400;
}
.cont2 .tidings h2 strong{
  font-size:24px;
  font-weight: 800;
}
.cont2 .tidings > span{
  display: block;
  font-size:16px;
  color:#8C8C8C;
  font-weight: 800;
  letter-spacing: 3.5px;
  padding:10px 0;
  text-align: center;
}
.cont2 .tidings > p{
  font-size:17px;
  color:#333;
  text-align: center;
  line-height: 32px;
}
.cont2 .button{margin-top:60px;}
.cont2 .button a{
  display: block;
  width:150px;
  height:40px;
  line-height: 40px;
  border-radius: 20px;
  padding-left:30px;
  background-color: #153b7a;
  color:#fff;
  transition: all .3s ease-in-out;
  position: relative;
  z-index: 1;
  overflow: hidden;
  margin:0 auto;
}
.cont2 .button a::before{
  content: '';
  position: absolute;
  top:0;
  left:0;
  width:0;
  height:100%;
  background-color: #049DD9;
  transition: all .3s ease-in-out;
  z-index: -1;
}
.cont2 .button a img{
  position: absolute;
  top:10px;
  right:30px;
  width:20px;
  z-index: 99;
  transition: all .3s ease-in-out;
}
.cont2 .button a:hover::before{width:100%;}
.cont2 .button a:hover img{transform: rotate(180deg);}

.cont2 .notice{border:1px solid #ccc; padding:20px; background-color: #fff; border-radius: 10px;}
.cont2 .notice > a{
  display: block;
  font-size:20px;
  color:#000;
  padding:20px;
  border-bottom:1px solid #ccc;
  position: relative;
  transition: all .3s ease-in-out;
}
.cont2 .notice > a img{
  position: absolute;
  top:25px;
  right:30px;
  width:20px;
  z-index: 99;
  transition: all .3s ease-in-out;
}
.cont2 .notice > a:hover{color:red;}
.cont2 .notice > a:hover img{transform: rotate(180deg);}

.cont2 .notice .board .lst{margin-top:20px;}
.cont2 .notice .board .lst li{
  display: flex;
  justify-content: space-between;
  width:100%;
}
.cont2 .notice .board .lst a{
  font-size:18px;
  color:#333;
  text-align: left;
  line-height: 32px;
}
.cont2 .notice .board .lst span{
  font-size:16px;
  color:#333;
  opacity: .8;
}
.cont2 .notice .board .lst a:hover{color:red;}
/* section2 */

/* section3 */
.cont3{padding:60px 0;}
.cont3 .schedule h2{
  font-size:24px;
  color:#333;
  font-weight: 400;
  text-align: center;
}
.cont3 .schedule h2 strong{
  font-size:24px;
  font-weight: 800;
}
.cont3 .schedule .inner > span{
  display: block;
  font-size:16px;
  color:#8C8C8C;
  font-weight: 800;
  letter-spacing: 3.5px;
  padding:10px 0;
  text-align: center;
}
/* section3 */

/* section4 */
.cont4{position: relative;}
.cont4 > ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width:100%;
  height:100%;
}
.cont4 > ul > li{width:100%;}
/* .cont4 > ul > li:nth-of-type(1){background: url(../img/section4/map.jpg) no-repeat 50% 50%; background-size: cover;} */
.cont4 > ul > li:nth-of-type(2){background-color: #153b7a; padding:10px;}

.cont4 ul li .tit{padding:30px 0;}
.cont4 ul li .tit h3{
  font-size:24px;
  color:#fff;
  text-align: left;
}
.cont4 ul li .tit p{
  font-size:16px;
  color:#fff;
  text-align: left;
  margin-top:10px;
  line-height: 32px;
}
.cont4 ul li .tit p strong{
  font-size:16px;
  color:#fff;
}

.cont4 ul li .txt{position: relative;}
.cont4 ul li .txt h3{
  font-size:24px;
  color:#fff;
  text-align: #fff;
  padding-bottom:20px;
  border-bottom:2px solid #fff;
}
.cont4 ul li .txt ul li{
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  border-bottom:1px solid #ccc;
  height:40px;
  line-height: 40px;
}
.cont4 ul li .txt ul li p{
  font-size:16px;
  color:#fff;
  padding-left:30px;
  position: relative;
}
.cont4 ul li .txt ul li p::before{
  content: '';
  position: absolute;
  top:50%;
  transform: translateY(-50%);
  left:0;
  width:10px;
  height:10px;
  border-radius: 50%;
  background-color: #fff;
}

.cont4 ul li .txt ul li span{
  display: block;
  font-size:16px;
  color:#fff;
}
.cont4 ul li .txt > span{
  display: block;
  font-size:16px;
  color:#04D9D1;
  text-align: left;
  margin-top:10px;
}
.cont4 ul li .txt .cont4_logo{
  position: absolute;
  top:210px;
  right:0px;
}
.cont4 ul li .txt .cont4_logo img{width:130px; opacity: .2;}
/* section4 */

/* footer */
.footer{background-color: #0D0D0D;}
.footer .top_info{
  display: flex;
  align-items: center;
  justify-content: center;
  padding:10px 0;
  border-bottom:1px solid #ccc;
  gap:30px;
}
.footer .top_info a{
  display: block;
  font-size:12px;
  color:#fff;
  transition: all .3s ease-in-out;
}
.footer .top_info a:hover{color:red;}
.footer .bottom_info{padding:20px 0 60px 0;}
.footer .bottom_info p{
  font-size:12px;
  color:#fff;
  text-align: center;
  line-height: 26px;
}
.footer .bottom_info span{
  display: block;
  font-size:11px;
  margin-top:10px;
  color:#ccc;
  text-align: center
}
/* footer */

/* top_btn */
.topbtn{
  position: fixed;
  bottom:70px;
  right:20px;
  z-index:9999999;
  width:30px;
  height:30px;
  border-radius: 40px;
  background-color:  #153b7a;
  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;
}