@charset "utf-8";
@import url(//cdn.rawgit.com/hiun/NanumSquare/master/nanumsquare.css); /* font-family: 'Nanum Square', sans-serif; */
@import url(https://cdn.rawgit.com/theeluwin/NotoSansKR-Hestia/master/stylesheets/NotoSansKR-Hestia.css); /* font-family: 'Noto Sans Korean', sans-serif !important; */
/* 초기화 */


#hd_pop,
#hd_wrapper,
#tnb .inner,

#gnb .gnb_wrap,
#container_wr,
#ft_wr {min-width:1600px; padding: 0 70px;}

#hd {position: fixed; width: 100%; height: auto; float: left; top: 0; left: 0; z-index: 99;}
#hd.back_color2 {background: #fff; box-shadow: 2px 2px 15px rgba(0,0,0,0.1);}
#hd_h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}

#hd.back_color::before{position: absolute; display: inline-block; width: 100%; height: 1px; float: left; top: 127px; left: 0; background: #ddd; content: ""; z-index: 2;}

#tnb {border-bottom:1px solid #383838;margin:0 auto}
#tnb:after {display:block;visibility:hidden;clear:both;content:""}
#tnb .inner {margin:0 auto}

#hd_wrapper {margin:0 auto;height:auto;zoom:1;text-align: center;}
#hd_wrapper:after {display:block;visibility:hidden;clear:both;content:""}

#logo {display: inline-block; width: auto; float: left; padding: 20px 0; position: relative; z-index: 1;}
#logo.logo_img_2 a{ padding-left: 20px;}
#logo a{display: inline-block; width: auto; float: left;}
#logo a img{width: auto; height: 55px;}
#logo a img:nth-child(2){display: none;}
#hd.back_color #logo a img:nth-child(1){display: none;}
#hd.back_color #logo a img:nth-child(2){display: inline-block;}
#hd.back_color2 #logo a img:nth-child(1){display: none;}
#hd.back_color2 #logo a img:nth-child(2){display: inline-block;}

/*menu*/
.hd_menu_wrap {display: inline-block; width: auto; height: auto; float: left; margin-left: 30px;}
span.hd_menu_bg {position: absolute; top: 0; left: 0; width: 100%; height: 370px; background: #fff; border-bottom: 1px solid #eee;}

ul.main_menu_wrap{ display: inline-block; float: left; width: auto; height: auto;}
ul.main_menu_wrap>li{ display: inline-block; width: auto; float: left; position: relative;}
ul.main_menu_wrap>li:last-child{ margin-right: 0;}
ul.main_menu_wrap>li>a{ display: inline-block; font-size:21px; font-weight:bold; color: #fff; width: auto; padding: 0 35px; line-height: 95px; transition: color 0.5s ease-in-out;}
#hd.back_color ul.main_menu_wrap>li>a{ color: #000;}
#hd.back_color2 ul.main_menu_wrap>li>a{ color: #000;}
ul.main_menu_wrap>li a:hover{ color: #2a3e50 !important;}

.sub_menu_wrap{ width: 100%; float: left; height: auto; font-size:17px; position: absolute; top: 95px; left: 0; }
.sub_menu_wrap ul{ display: inline-block; width: 100%; float: left; height: auto;}
.sub_menu_wrap ul li{ display: inline-block; width: 100%; float: left; height: auto;}
.sub_menu_wrap ul li a{ display: inline-block; width: 100%; float: left; height: auto; color: #888; padding: 8px 0; font-weight: 400; line-height: 1.3;}
.sub_menu_wrap ul li:first-child a{ padding-top: 25px;}

div.search_icon_wrap{ display: inline-block; float: right; line-height: 95px; position: relative; z-index: 1;}

div.pa_icon_wrap { display:flex; float: right; position: relative; z-index: 1; margin-left: 20px; padding: 20px 0;}
div.pa_icon_wrap a.qa { display: inline-block; width: 140px; color: #fff; font-size: 15px; position: relative; transition: all 0.3s ease-in-out; border: solid 1px #fff; border-radius: 55px; line-height: 48px; overflow: hidden;}
div.pa_icon_wrap a.qa::before { content: ""; position: absolute; background: #2a3e50; width: 0; height: 100%; left: 0; top: 0; z-index: -1; transition: width 0.3s ease-in-out;}
div.pa_icon_wrap a.qa:hover{ color: #fff; border-color: #2a3e50;}
div.pa_icon_wrap a.qa:hover::before{ width: 100%;}
div.pa_icon_wrap a.qa:hover{ z-index: 1;}

#hd.back_color div.pa_icon_wrap a{ color: #2a3e50; border-color: #2a3e50;}
#hd.back_color2 div.pa_icon_wrap a{ color: #2a3e50; border-color: #2a3e50;}
#hd.back_color2 div.pa_icon_wrap a:hover{ color: #fff; border-color: #2a3e50;}

div.search_icon_wrap img{ width: auto; height: 31px; cursor: pointer;}
div.search_icon_wrap img:nth-child(2){ display: none;}

#hd.back_color div.search_icon_wrap img:nth-child(1){ display: none;}
#hd.back_color div.search_icon_wrap img:nth-child(2){ display: inline-block;}

#hd.back_color2 div.search_icon_wrap img:nth-child(1){ display: none;}
#hd.back_color2 div.search_icon_wrap img:nth-child(2){ display: inline-block;}

span.search_icon_wrap2{ display: none; line-height: 95px; position: relative; float: right; z-index: 1; margin-left: 20px;}
span.search_icon_wrap2 img{ width: auto; height: 29px; cursor: pointer; margin-top: -4px;}

span.search_popup{ position: relative; z-index: 1; display: none; float: right; padding: 10.5px 20px; width: 350px; height: auto; background: #2a3e50; border-radius: 13px; margin-top: 20px; animation: search_popup_animation 0.5s linear; transition: 1s;}
span.search_popup input{ display: inline-block; width: calc(100% - 29px); float: left; height: auto; border: 0; outline: 0; background-color: transparent; line-height: 31px; color: #fff; font-size: 15px; padding-right: 15px; transition-delay: 3s; animation: search_popup_animation2 1s linear;}
span.search_popup img{ width: auto; height: 29px; cursor: pointer; float: left; transition-delay: 3s; animation: search_popup_animation3 1s linear;}

span.search_event_css{ display: inline-block;}
span.search_event_css2{ display: none;}
div.search_event_css2{ display: none;}

@keyframes search_popup_animation {
  0% { width: 0px;}
  100% { width: 350px;}
}
@keyframes search_popup_animation2 {
  0% { opacity: 0; display: none;}
  100% { opacity: 1; display: block;}
}
@keyframes search_popup_animation3 {
  0% { opacity: 0; display: none;}
  20% { opacity: 0; display: none;}
  100% { opacity: 1; display: block;}
}

/*main con*/
span.main_slide{ display: inline-block; width: 100%; height: 100vh; float: left; background: #000;}
span.main_slide span.text_box{ display: flex; width: 100%; height: 100%; position: relative; align-items: center; text-align: left; justify-content: center; float: left; flex-wrap: wrap; flex-direction: column;}
span.main_slide span.text_box span.point_text{ display: inline-block; width: 1600px; height: auto; float: left; font-size: 60px; font-weight: 500; color: #fff;}
span.main_slide span.text_box span.text{ display: inline-block; width: 1600px; height: auto; float: left; font-size: 24px; color: #fff; margin: 5px 0 60px; font-weight: 300;}
span.main_slide span.text_box span.button{ display: inline-block; width: 1600px; height: auto; float: left; margin-bottom: 70px;}
span.main_slide span.text_box span.button a{ display: inline-block; width: auto; height: auto; padding: 20px 55px; font-size: 17px; color: #fff; line-height: 1; border-radius: 55px; border: 1px solid #fff; font-weight: 300;}
span.main_slide span.text_box span.button a:hover{ color: #fff; background: #B30002; border-color: #B30002;}
span.main_slide span.text_box img{ position: absolute; display: block; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 100%; height: 100%; object-fit: cover; z-index: -1;}
span.main_slide .mySwiper .swiper-horizontal>.swiper-pagination-bullets, span.main_slide .mySwiper .swiper-pagination-bullets.swiper-pagination-horizontal, span.main_slide .mySwiper .swiper-pagination-custom, span.main_slide .mySwiper .swiper-pagination-fraction{ bottom: 50px;}
span.main_slide .mySwiper .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, span.main_slide .mySwiper .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{ margin: 0 10px;}
span.main_slide .mySwiper .swiper-pagination-bullet{ border-radius: 0;}
span.main_slide .mySwiper .swiper-pagination-bullet-active{ width: 100px; background: #2a3e50;}
span.main_slide .swiper{ width: 100%; height: 100%;}
span.main_slide .swiper-slide{text-align: center; display: flex; justify-content: center; align-items: center;}

span.main_product_wrap{ margin:50px 0 150px;}
span.main_product{ display: inline-flex; width: 1600px; height: auto; justify-content: center; flex-wrap: wrap;}
span.main_product::after{ position: absolute; bottom: 35%; left: 0; display: inline-block; width: 100%; height: 150px; background: #f5f6f7; content: ""; z-index: -1; transform: translateY(50%);}

span.main_product_title {width:100%; height: auto; float: left; display:inline-block; font-size:45px; line-height:1.4; text-align:center; margin-bottom:100px; font-weight:500;}
span.main_product_stitle {width:100%; height: auto; float: left; display:inline-block; font-size:25px; line-height:1.4; text-align:center; margin-bottom:10px;}

span.main_product a.product_list{ display: inline-block; width: 25%; height: auto; float: left; position: relative; transition: 1s;}

span.main_product a.product_list span.img_box{ display: inline-block; width: 100%; height: auto; float: left; text-align: center;}
span.main_product a.product_list span.img_box img{ width: auto; height:250px;}

span.main_product a.product_list span.text_box {display: inline-block; width: 100%; height: auto; float: left; margin:50px 0 0 0; padding:0 20px;}
span.main_product a.product_list span.text_box span.point { display: inline-block; width: 100%; height: auto; float: left; font-size: 23px; font-weight:bold; padding-bottom:10px;}
span.main_product a.product_list span.text_box span.point_info { display: inline-block; width: 100%; height: auto; float: left; font-size: 17px; font-weight: 300;}

span.main_product a.product_list span.button{ position: absolute; top: 45%; left: 50%; transform: translate(-50%,-50%); z-index: 1; display: inline-block; width: 75px; height: 75px; border-radius: 50%; overflow: hidden; background: #B30002; opacity: 0; transition: 1s;}
span.main_product a.product_list:hover span.button{ opacity: 1;}
span.main_product a.product_list span.button p{position: relative;width: 100%; height: 100%;}
span.main_product a.product_list span.button p i{ background-color: #fff; position: absolute; -webkit-transform: translate(-50% , -50%);-ms-transform: translate(-50% , -50%);transform: translate(-50% , -50%);left: 50% ;top: 50%;}
span.main_product a.product_list span.button p i{ width: 20px; height: 2px;}
span.main_product a.product_list span.button p .i02{width: 2px;height: 10px;top: calc(50% - 4px);}
span.main_product a.product_list span.button p .i03{width: 2px;height: 10px;top: calc(50% + 4px);}

span.main_con { display: inline-block; width: 100%; height: auto; float: left; position: relative; text-align: center;}
span.main_con span.con_inbox { position: relative; display: inline-block; width: 1600px; height: auto; padding:100px 0 100px 0; text-align: left;}

span.main_con span.title_box{display: inline-block; width: 100%; height: auto; float: left; position: relative;}
span.main_con span.title_box span.title{display: inline-block; width: 100%; height: auto; float: left; font-size: 35px; font-weight: 500;}

span.main_con span.con_info_box{ display: inline-block; width: 100%; height: auto; float: left; padding-top: 50px;}
span.main_con span.con_info_box a.con_info_list{ display: inline-block; width: 23%; height: auto; float: left; margin-right: 2.66%; background: #fff; border-radius: 13px; overflow: hidden; box-shadow: 2px 2px 15px rgba(0,0,0,0.15);}
span.main_con span.con_info_box a.con_info_list:last-child{ margin-right: 0;}

a.con_info_list span.img_box{ display: inline-block; width: 100%; height: 250px; float: left; overflow: hidden;}
a.con_info_list span.img_box img{ display: block; width: 100%; height: 100%; object-fit: cover; transition: 1s;}

a.con_info_list span.info_text{ display: inline-block; width: 100%; height: auto; float: left; padding: 20px; border-top: 1px solid #eee; min-height: 165px;}
a.con_info_list span.info_text span.title{ display: inline-block; width: 100%; height: auto; float: left; font-size: 15px; color: #454545;}
a.con_info_list span.info_text span.sub{ display: inline-block; width: 100%; height: auto; float: left; font-size: 17px; margin: 10px 0 20px;}
a.con_info_list span.info_text span.sub span{ background: linear-gradient(to right, rgba(100, 200, 200, 0), rgba(100, 200, 200, 0)), linear-gradient(to right, #B30002, #B30002, #B30002); background-size: 100% 0.1em, 0 0.1em; background-position: 100% 100%, 0 100%; background-repeat: no-repeat; transition: background-size 400ms;}
a.con_info_list span.info_text span.date{ display: inline-block; width: 100%; height: auto; float: left; font-size: 15px; color: #999;}

a.con_info_list:hover span.info_text span.sub span, a.con_info_list:focus span.info_text span.sub span{ background-size: 0 0.1em, 100% 0.1em;}
a.con_info_list:hover span.img_box img{ transform: scale(1.2);}

span.main_con .toptxt .learnmore{position: absolute; top: 0; right: 0;color: #fff;font-size: 17px;}
span.main_con .toptxt .learnmore:hover a span.back{width: 200px;}
span.main_con .toptxt .learnmore a span.text{ -webkit-transition: all 0.15s ease-out; -o-transition: all 0.15s ease-out; transition: all 0.15s ease-out; margin-right: 10px;}
span.main_con .toptxt .learnmore a p{position: relative;}
span.main_con .toptxt .learnmore a p i{ background-color: #000; position: absolute; -webkit-transform: translate(-50% , -50%);-ms-transform: translate(-50% , -50%);transform: translate(-50% , -50%);left: 50% ;top: 50%;-webkit-transition: all 0.15s ease-out; -o-transition: all 0.15s ease-out;transition: all 0.15s ease-out;}
span.main_con .toptxt .learnmore a p i{ width: 14px; height: 2px;}
span.main_con .toptxt .learnmore a p .i02{width: 2px;height: 7px;top: calc(50% - 4px);}
span.main_con .toptxt .learnmore a p .i03{width: 2px;height: 7px;top: calc(50% + 4px);}

span.main_con .toptxt .learnmore:hover a p{-webkit-animation: arrow_left_right_move 1.2s infinite forwards; animation: arrow_left_right_move 1.2s infinite forwards;}
span.main_con .toptxt .learnmore:hover a p .i01{ width: 18px;}
span.main_con .toptxt .learnmore:hover a p .i02{ -webkit-transform: translate(-50% , -50%) rotate(-45deg); -ms-transform: translate(-50% , -50%) rotate(-45deg); transform: translate(-50% , -50%) rotate(-45deg); left: calc(50% + 6px); top: calc(50% - 3px);}
span.main_con .toptxt .learnmore:hover a p .i03{ -webkit-transform: translate(-50% , -50%) rotate(45deg); -ms-transform: translate(-50% , -50%) rotate(45deg); transform: translate(-50% , -50%) rotate(45deg); left: calc(50% + 6px); top: calc(50% + 3px);}
@-webkit-keyframes arrow_left_right_move {
	0%{ -webkit-transform: translateX(0px); transform: translateX(0px);}
	50%{ -webkit-transform: translateX(5px); transform: translateX(5px);}
	100%{ -webkit-transform: translateX(0px); transform: translateX(0px);}
}
span.main_con .toptxt .learnmore a{display: -webkit-box;display: -ms-flexbox;display: flex;gap: 12px;position: relative; width: 200px;height: 52px;-webkit-box-align: center;-ms-flex-align: center;align-items: center;-webkit-box-pack: center;-ms-flex-pack: center; justify-content: center; border-radius: 100px; overflow: hidden; font-weight: 400;}
span.main_con .toptxt .learnmore a span.back {width: 52px;height: 52px;border-radius: 100px;background-color: #B30002;opacity: 0.3;position: absolute;left: 0px;top: 50%;-webkit-transform: translateY( -50%);-ms-transform: translateY( -50%);transform: translateY( -50%);-webkit-transition: all 0.2s ease;-o-transition: all 0.2s ease;transition: all 0.2s ease;}

/*main banner*/
span.main_banner{ display: inline-block; width: 100%; height: 450px; float: left; overflow: hidden;}
span.main_banner a.banner_inbox{ display: inline-flex; width: 50%; height: 100%; float: left; text-align: center; position: relative; padding: 135px 150px; justify-content: center; flex-wrap: wrap; flex-direction: column; align-items: center;}

span.main_banner a.banner_inbox span.icon_box{ display: inline-block; width: 180px; height: 180px; border-radius: 180px; overflow: hidden; line-height: 170px;}
span.main_banner a.banner_inbox.left_box span.icon_box{ background: #fff;}
span.main_banner a.banner_inbox.right_box span.icon_box{ background: #B30002;}
span.main_banner a.banner_inbox span.icon_box img{ width: 60%; height: auto;}

span.main_banner a.banner_inbox span.text_box{ display: inline-block; width: calc(100% - 180px); height: 100%; float: left; text-align: left; padding-left: 50px;}
span.main_banner a.banner_inbox span.text_box>span{ display: inline-block; width: 100%; height: auto; float: left; color: #fff; font-size: 25px; font-weight: 500;}
span.main_banner a.banner_inbox.right_box span.text_box>span{ color: #000;}
span.main_banner a.banner_inbox span.text_box>span:nth-child(1){ font-size: 19px; font-weight: 300; margin-bottom: 10px; opacity: 0.5;}
span.main_banner a.banner_inbox span.text_box>span.button{ font-size: 17px; font-weight: 300; margin-top: 30px;}

span.main_banner a.banner_inbox span.text_box>span.button span { display: inline-block; width: auto; height: auto; float: left; margin-right: 50px;}
span.main_banner a.banner_inbox span.text_box>span.button p { position: relative; display: inline-block; width: auto; height: 25px; float: left;}
span.main_banner a.banner_inbox span.text_box>span.button p i{ background-color: #000; position: absolute; -webkit-transform: translate(-50% , -50%);-ms-transform: translate(-50% , -50%);transform: translate(-50% , -50%);-webkit-transition: all 0.15s ease-out; -o-transition: all 0.15s ease-out;transition: all 0.15s ease-out;}
span.main_banner a.banner_inbox.left_box span.text_box>span.button p i{ background-color: #fff;}

span.main_banner a.banner_inbox span.text_box>span.button p .i01{ width: 18px; height: 2px;left: 50% ;top: 50%;}
span.main_banner a.banner_inbox span.text_box>span.button p .i02{width: 2px;height: 7px; -webkit-transform: translate(-50% , -50%) rotate(-45deg); -ms-transform: translate(-50% , -50%) rotate(-45deg); transform: translate(-50% , -50%) rotate(-45deg); left: calc(50% + 6px); top: calc(50% - 3px);}
span.main_banner a.banner_inbox span.text_box>span.button p .i03{width: 2px;height: 7px; -webkit-transform: translate(-50% , -50%) rotate(45deg); -ms-transform: translate(-50% , -50%) rotate(45deg); transform: translate(-50% , -50%) rotate(45deg); left: calc(50% + 6px); top: calc(50% + 3px);}

span.main_banner a.banner_inbox:hover span.text_box>span.button p{-webkit-animation: arrow_left_right_move2 1.2s infinite forwards; animation: arrow_left_right_move2 1.2s infinite forwards;}
span.main_banner a.banner_inbox:hover span.text_box>span.button p .i02{ -webkit-transform: translate(-50% , -50%) rotate(-45deg); -ms-transform: translate(-50% , -50%) rotate(-45deg); transform: translate(-50% , -50%) rotate(-45deg);}
span.main_banner a.banner_inbox:hover span.text_box>span.button p .i03{ -webkit-transform: translate(-50% , -50%) rotate(45deg); -ms-transform: translate(-50% , -50%) rotate(45deg); transform: translate(-50% , -50%) rotate(45deg);}

@keyframes arrow_left_right_move2 {
	0%{-webkit-transform: translateX(0px);transform: translateX(0px);}
	50%{-webkit-transform: translateX(5px);transform: translateX(5px);}
	100% {-webkit-transform: translateX(0px);transform: translateX(0px);}
}

span.main_banner a.banner_inbox span.img_box{ position: absolute; top: 0; left: 0; display: inline-block; width: 100%; height: 100%; float: left; z-index: -1; overflow: hidden;}
span.main_banner a.banner_inbox span.img_box img{ display: block; width: 100%; height: 100%; object-fit: cover; transition: 1s;}

span.main_banner a.banner_inbox:hover span.img_box img{ transform: scale(1.1);}

/*video*/
span.youtube_box{ display: inline-block; width: 1600px; height: 300px; border-radius: 13px; margin-bottom: 130px; overflow: hidden; position: relative; cursor: pointer;}
span.youtube_box span.text_box{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index: 1; display: inline-block; width: 100%; height: auto; float: left;}
span.youtube_box span.text_box img{ width: 75px; height: auto; margin-bottom: 25px;}
span.youtube_box span.text_box span{ display: inline-block; width: 100%; height: auto; color: #fff; font-size: 24px; font-weight: 500;}
span.youtube_box>img{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); display: block; width: 100%; height: 100%; object-fit: cover;z-index: 0;}

span.youtube_popup{ position: fixed; top: 0; left: 0; display: none; width: 100%; height: 100%; background: #000; z-index:1100; padding: 5%;}
span.youtube_popup_event{ display: inline-block;}
span.pop_menu_close{ position: absolute; top: 20px; right: 20px; display: inline-block; width: 50px; height: 50px; overflow: hidden; cursor: pointer;}
span.pop_menu_close img{ width: 100%; height: 100%; object-fit: cover; display: block;}

/*slide banner*/
.solution .btn_more{ width:200px; height:70px; border-radius:70px; line-height:68px; margin:50px auto 0; font-size:17px; font-weight:500; border:1px solid #666; display:block; color: #666; transition: 1s;}
.solution .btn_more:hover{ color: #B30002; border-color: #B30002;}
.solution {width:100%; height:auto; overflow:hidden; position:relative; margin:0 auto;  margin-bottom:120px;}
.solution_txt { width:100%; color:#000; position:absolute; top:8%; text-align:center;}
.solution_txt h2 { font-size:55px; font-weight:400;}
.solution_txt span { font-size:19px; line-height:30px; font-weight:300;  margin-top: 10px; display: inline-block; width: 100%; height: auto;}
.solution .swiper_container_solution { width:78%; height:630px; margin:0 auto; background-color:#fff;}
.solution .swiper_container_solution .swiper-slide-wrap { position:absolute; top:-20px; width:100%; overflow:hidden;}
.solution .swiper_container_solution .img_zoom img { max-width:initial !important; opacity:0.9; }
.solution .swiper_container_solution .img_zoom img,.solution .section04 div .img_zoom{-webkit-transform:scale(1.0);-moz-transform:scale(1.0);-o-transform:scale(1.0);transform:scale(1.0);transition: transform .45s;-o-transition: transform .45s;-moz-transition: transform .45s;-webkit-transition: transform .45s;}
.solution .swiper_container_solution .img_zoom:hover img,.solution .section04 div:hover .img_zoom {-webkit-transform:scale(1.03);-moz-transform:scale(1.03);-o-transform:scale(1.03);transform:scale(1.03);transition: transform .55s;-o-transition: transform .55s;-moz-transition: transform .55s;-webkit-transition: transform .55s;}
.solution .swiper-pagination { margin:0 auto; text-align:center; width:76% !important; height:130px; position:absolute; bottom:0 !important; left:50% !important; background-color:#fff; z-index:5; transform: translateX(-50%);}
.solution .swiper-pagination span { display:block; width:16.66%; height:130px; float:left; border-radius: 0; opacity:1;}
.solution .swiper-pagination span:before { width:100%; height:130px;}

.solution .swiper-button-next:after, .solution .swiper-button-prev:after { display: none;}
.solution .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.solution .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{ margin: 0;}

.solution .swiper-pagination-bullet-active:before { height:130px; display:block; border-top:4px solid #a12944; box-sizing: border-box;}



/*con3*/
span.con3_wrap{ display: inline-flex; width: 100%; height: auto; padding: 130px 0; float: left; background: #f5f6f7; justify-content: center;align-items: center;}
span.con3_wrap span.con3_inbox{ display: inline-block; width: 1500px; height: auto; float: left; text-align: center;}

span.con3_wrap span.con3_title_box{ display: inline-block; width: 100%; height: auto; float: left;}
span.con3_wrap span.con3_title_box span.title{ display: inline-block; width: 100%; height: auto; float: left; margin-bottom: 80px; font-size: 3em; font-weight: 400; position: relative; line-height: 1;}
span.con3_wrap span.con3_title_box span.title::after{ position: absolute; bottom: -20px; left: 50%; transform: translateX(-50%); display: inline-block; width: 100px; height: 2px; background: #B30002; content: "";}
span.con3_wrap span.con3_title_box span.tab{ display: inline-flex; width: 100%; height: auto; float: left; justify-content: center;align-items: center; margin-bottom: 50px;}
span.con3_wrap span.con3_title_box span.tab span{ display: inline-flex; width: auto; height: auto; float: left; margin: 0 20px; font-size: 1.2em; cursor: pointer; color: #ccc;}
span.con3_wrap span.con3_title_box span.tab span.point_color{ color: #B30002;}

span.con3_wrap span.con3_info{ display: none; width: 100%; height: auto; float: left;}
span.con3_wrap span.con3_info.view_css{ display: inline-block;}
span.con3_wrap span.con3_info a.con3_info_box_list{ display: inline-block; width: 23.5%; height: auto; margin-right: 2%; float: left;}
span.con3_wrap span.con3_info a.con3_info_box_list:last-child{ margin-right: 0;}
span.con3_wrap span.con3_info a.con3_info_box_list span.img_box{ display: inline-flex; width: 100%; height: auto; aspect-ratio: 1 / 0.7; float: left; border-radius: 15px; overflow: hidden; align-items: center; justify-content: center;}
span.con3_wrap span.con3_info a.con3_info_box_list span.img_box img{ display: block; width: auto; height: 100%; object-fit: cover; transition: 1s;}
span.con3_wrap span.con3_info a.con3_info_box_list:hover span.img_box img{ transform: scale(1.1);}
span.con3_wrap span.con3_info a.con3_info_box_list span.text_box{ display: inline-block; width: 100%; height: auto; float: left; padding-top: 15px; font-size: 1.2em; font-weight: 300;}

/*sub page*/
span.sub_menu_back { display: inline-block; width: 100%; height: auto; float: left; position: relative; text-align: center;}
span.sub_menu_title { display: inline-flex; width: 30%; height: calc(100% - 100px); color: #fff; font-size: 35px; font-weight: 700; float: left; position: absolute; bottom: -60px; left: 0; z-index: 2; background: #2b3e4c; align-items: center; justify-content: center; border-radius:0 0 15px 0;}
span.sub_menu_title span.detail_name { display: inline-flex; width:100%; color: #fff; font-size: 15px; font-weight: 700; float: left;  z-index: 2; background: #2b3e4c; align-items: center; justify-content: center; border-radius:0 0 15px 0;}
span.sub_banner_back {width: 100%; height: 230px; display: inline-block; float: left;  background-image: url("../img/sub/public_head2.jpg"); background-repeat: no-repeat; background-position: center; background-size: cover; border-bottom:5px solid #2b3e4c}

span.sub_menu_box{ display: inline-block; width: auto; height: auto; float: left;}
span.sub_menu_box.scroll_event_css{ position: fixed; left: 50%; transform: translateX(-50%); max-width: 1500px; width: calc(100% - 120px); top: 0;}
ul.subpage_menu_wrap{ display: inline-block; width: 260px; float: left; position: absolute; top: 0; left: 0; z-index: 1; border-left: 1px solid #eee; padding-top: 160px;}
ul.subpage_menu_wrap li{ display: inline-block; width: 100%; height: auto; float: left;}
ul.subpage_menu_wrap li a{ display: inline-block; width: 100%; float: left; font-size:19px; color: #888; padding: 0px 25px; position: relative; line-height: 80px;}
ul.subpage_menu_wrap li a::before { display: inline-block; width:5px; height: auto; background: #2b3e4c; position: absolute; bottom: 0; left: 50%; content: ""; transition: all 0.4s;}
ul.subpage_menu_wrap li a:hover::before { height: 100%; margin-left: -50%; color: #2b3e4c;}
ul.subpage_menu_wrap li a:hover {font-weight:500; color: #2b3e4c;}
ul.subpage_menu_wrap li a.sub_menu_point {font-weight:bold; color: #2b3e4c;}
ul.subpage_menu_wrap li a.sub_menu_point::before {height: 100%; margin-left: -50%;}

span.sub_info_wrap{ display: inline-flex; width: 100%; height: auto; float: left; text-align: center; align-items: center; justify-content: center; position: relative;}
span.sub_info_box{ display: inline-flex; width: 1500px; height: auto; text-align: left; float: left; padding: 160px 0 100px 260px; overflow: hidden; position: relative; min-height: 640px;}

span.sub_info{ display: inline-block; width: 100%; height: auto; float: left;}

span.ready_box{ display: inline-block; width: 100%; height: auto; float: left; text-align: center; font-size: 3em; font-weight: 400; line-height: 380px;}

.bo_v_nb.mo_prev_href{ display: none !important;}

input, progress { accent-color: #B30002;}

span.sub_about_box{ display: inline-flex; width: 100%; height: auto; float: left; line-height: 1.7; word-break: keep-all;}
span.sub_about_box span { display: inline-block; width: 60%; height: auto; float: left; padding-left: 50px; font-size:17px;}
span.sub_about_box span.img_box { display: inline-block; width: 50%; height: auto; float: left; padding-left: 0;}
span.sub_about_box span.img_box img { width: 100%;  float: left; object-fit: cover; border-radius:7px;}

/*연혁*/
ul.history_wrap{ display: inline-block; width: 100%; height: auto; float: left;}
ul.history_wrap li{ display: inline-block; width: 100%; height: auto; float: left; margin-bottom: 100px;}
ul.history_wrap li:last-child{ margin-bottom: 0;}

span.history_title{ display: inline-block; width: 100%; height: auto; float: right; line-height: 1; margin-bottom: 25px; font-size: 35px; font-weight: bold;}

span.history_info{ display: inline-block; width: 100%; height: auto; float: right; line-height: 1.8; font-size: 18px; color: #555; border-bottom: 1px dashed #eee; padding-bottom: 10px; margin-bottom: 10px;}

span.history_info b{ display: inline-block; width: 220px; height: auto; float: left; position: relative; padding-left: 20px;}
span.history_info b::before{ display: inline-block; float: left; width: 12px; height: 12px; vertical-align: bottom; border-radius: 50px; border: 2px solid #B30002; content: ""; position: absolute; left: 0; top: 55%; transform: translateY(-50%);}

span.history_info span{ display: inline-block; width: calc(100% - 220px); height: auto; float: left;}

div#m_public_head{ display: none;}
ul.mo_prev_href{ display: none;}



/* 서브 공통 */
span.about_title { display: inline-block; width: 100%; height: auto; float: left; padding-left: 0; margin-bottom: 30px; font-size: 29px; font-weight: 500;}
span.about_title2 { margin-top: 100px;}
span.sub_about_box2 { display: inline-block; width: 100%; height: auto; float: left;}
span.sub_about_box2 span.text { display: inline-block; width: auto; height: auto; float: left; margin-bottom: 10px;}
span.sub_about_box2 span.text2 { display: inline-block; width: auto; height: auto; float: right; margin-bottom: 10px;}

.os_mac.root_daum_roughmap, .os_mac.root_daum_roughmap button, .os_mac.root_daum_roughmap input, .os_mac.root_daum_roughmap select, .os_mac.root_daum_roughmap td, .os_mac.root_daum_roughmap textarea, .os_mac.root_daum_roughmap th {width:100% !important;}
.root_daum_roughmap .wrap_controllers { display:none !important;}
.root_daum_roughmap .border1 {border:0px;}
.root_daum_roughmap .border4 {border:0px !important; width:0px;}
.root_daum_roughmap_landing{ float: left;}

span.button_box { display: inline-flex; width: 100%; height: auto; float: left; align-items: center; justify-content: center; margin-top: 50px;}
span.button_box a { display: flex; justify-content: center; align-items: center; width: auto; height: auto; float: left; padding: 10px 30px; text-align: center; border: 1px solid #ddd; font-size:17px; border-radius:7px; transition:all 0.2s;}
span.button_box a img.map { display:inline-block; float:left; width:50px; border-radius:10px;}
span.button_box a span { display:inline-block; float:left; padding:0 0 5px 10px;}
span.button_box a:hover { border-color: #2b3e4c; color: #2b3e4c;}
span.button_box a:nth-child(1) { margin-right: 15px;}
span.button_box a:nth-child(2) { margin-left: 15px;}

@media all and ( max-width: 950px ){
span.about_title{ display: inline-block; width: 100%; height: auto; float: left; padding-left: 0; margin-bottom: 10px; font-size: 1.4em; font-weight: 500;}
span.about_title2{ margin-top: 50px;}
span.sub_about_box2{ display: inline-block; width: 100%; height: auto; float: left;}
span.sub_about_box2 span.text{ display: inline-block; width: 100%; height: auto; float: left; margin-bottom: 5px;}
span.sub_about_box2 span.text2{ display: inline-block; width: 100%; height: auto; float: left; margin-bottom: 15px;}

.os_mac.root_daum_roughmap, .os_mac.root_daum_roughmap button, .os_mac.root_daum_roughmap input, .os_mac.root_daum_roughmap select, .os_mac.root_daum_roughmap td, .os_mac.root_daum_roughmap textarea, .os_mac.root_daum_roughmap th {width:100% !important;}
.root_daum_roughmap .wrap_controllers { display:none !important;}
.root_daum_roughmap .border1 {border:0px;}
.root_daum_roughmap .border4 {border:0px !important; width:0px;}
.root_daum_roughmap_landing{ float: left; width: 100% !important;}

span.button_box{ display: inline-flex; width: 100%; height: auto; float: left; align-items: center; justify-content: center; margin-top: 20px;}
span.button_box a{ display: inline-block; width: calc(50% - 10px); height: auto; float: left; padding: 10px; text-align: center; border: 1px solid #ddd;}
span.button_box a:hover{ border-color: #B30002; color: #B30002;}
span.button_box a:nth-child(1){ margin-right: 10px;}
span.button_box a:nth-child(2){ margin-left: 10px;}

}


















