/* 공통 */
.wrap{width: 1240px; margin: auto; height: auto; position: relative;}

/* 상단_탑 */
.head{width: 100%; position: fixed; top: 0; left: 0; z-index: 999; border-bottom: 1px solid #ddd; background: #fff;}
.head .wrap{height: 100%;}

.hd_top{background: #f7f7f7; height: 50px;}
.hd_top .link_list{position: absolute; bottom: 0; left: 0;}
.hd_top .link_list li{float: left; padding: 0 20px; position: relative;}
.hd_top .link_list li a{font-size: 13px; color: #999; line-height: 40px;}

.hd_top .link_list li::before{content: ''; display: block; position: absolute; top: 50%; left: 0; transform: translate(0, -50%); background: #ccc; width: 1px; height: 13px;}
.hd_top .link_list li:first-child::after{display: none;}
.hd_top .link_list::after{content: ''; display: block; clear: both;}

.hd_top .link_list .on::before{content: ''; width: calc(100% + 1px); height: 40px; position: absolute; bottom: 0; left: 0; background: #fff; border-radius: 10px 10px 0 0; z-index: 9;}
.hd_top .link_list .on a{color: #034aa6; font-weight: 600; z-index: 10; position: relative;}

.hd_top .user_list{position: absolute; top: 50%; right: 0; transform: translate(0, -50%);}
.hd_top .user_list li{float: left; margin-right: 40px; position: relative;}
.hd_top .user_list li:last-child{margin-right: 0;}
.hd_top .user_list li::before{content: ''; display: block; position: absolute; top: 50%; left: -20px; transform: translate(0, -50%); background: #ccc; width: 1px; height: 14px;}
.hd_top .user_list li:first-child::before{display: none;}
.hd_top .user_list li a{font-size: 14px; color: #999;}

/* 상단_메뉴 */
.hd_con{width: 100%; height: 100px;}
.hd_con .wrap{height: 100%;}

.hd_con .logo{position: absolute; top: 50%; left: 0; transform: translate(0, -50%);}
.hd_con .logo img{max-width: 100%;}

.hd_con .menu{position: absolute; top: 50%; right: 0; transform: translate(0, -50%); z-index: 9;}
.hd_con .menu li{float: left; margin-right: 50px; position: relative;}
.hd_con .menu li:last-child{margin-right: 0;}
.hd_con .menu li a{font-size: 18px; font-weight: 600; letter-spacing: -1px;}
.hd_con .menu::after{content: ''; display: block; clear: both;}
.hd_con .menu li::before{content: ''; display: block; position: absolute; top: 0; left: 50%; transform: translate(-50%, 0); width: 5px; height: 5px; background: #f28705; border-radius: 50%; opacity: 0; transition: all 0.3s;}

.hd_con .sch_box{position: absolute; top: 50%; right: 65px; transform: translate(0, -50%); width: 350px; height: 50px; border: 2px solid #034aa6; background: #fff; border-radius: 25px; overflow: hidden;}
.hd_con .sch_box input{height: 48px; line-height: 48px; font-size: 14px; padding: 0 20px; width: calc(100% - 50px); float: left; border: none;}
.hd_con .sch_box button{float: left; background: #fff; width: 50px; height: 48px;}
.hd_con .sch_box button img{}
.hd_con .sch_box::after{content: ''; display: block; clear: both;}

.hd_con .cart_link{position: absolute; top: 54%; right: 12px; transform: translate(0, -50%);}
.hd_con .cart_link img{max-width: 100%;}
.hd_con .cart_link .num{display: block; position: absolute; top: -12px; right: -12px; width: 25px; height: 25px; border-radius: 50%; background: #f28705; font-size: 10px; font-weight: 500; color: #fff; text-align: center; line-height: 25px;}

/* top_btn */
.top_btn{background: #000; color: #fff; text-align: center; line-height: 50px; width: 50px; height: 50px; font-size: 12px; font-weight: 600; cursor: pointer; position: fixed; bottom: 10px; right: 10px; display: none; z-index: 100;}

/* 모바일 메뉴 */
.m_menu_box{position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; opacity: 0; visibility: hidden; background: rgba(0, 0, 0, 0.8);transition-delay: 300ms; transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1);}
.m_menu_box .wrap{background: #fff; width: 100%; height: 100vh; position: absolute; top: 0; right: 0; bottom: 0; transition: all 600ms cubic-bezier(0.86, 0, 0.07, 1); transform: translateX(-100%); margin-top: 0;}

.m_menu_box .close_btn{display: block; width: 55px; height: 55px; background: #034aa6; position: absolute; top: 0; right: 0; z-index: 99;}
.m_menu_box .close_btn i{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: 18px; font-weight: 300; color: #fff;}

.m_menu_box .user_menu{position: absolute; top: 0; left: 0; background: #fff; height: 55px; width: 100%; border-bottom: 1px solid #eee;}
.m_menu_box .user_menu li{display: inline-block; position: relative;}
.m_menu_box .user_menu li:last-child::after{display: none;}
.m_menu_box .user_menu a{font-size: 12px; font-weight: 600; color: #999; border: 1px solid #ddd; height: 35px; line-height: 35px; padding: 0 15px; border-radius: 5px; display: block; margin-top: 10px; background: #fff;}
.m_menu_box .user_menu li:first-child{margin-left: 10px;}

.m_menu_box .mm_wrap{height: calc(100vh - 55px); overflow-y: scroll; margin-top: 55px;}
.m_menu_box .m_menu{}
.m_menu_box .m_menu li{font-size: 16px; font-weight: 600; color: #000; border-bottom: 1px solid #eee;}
.m_menu_box .m_menu a{padding: 17px 20px; display: block;}
.m_menu_box .m_menu .more_li{display: block; position: relative;}
.m_menu_box .m_menu img{position: absolute; top: 50%; right: 20px; transform: translate(0, -50%) rotate(0deg);}
.m_menu_box .m_sub_menu{background: #f9f9f9; padding: 15px 20px; display: none; border-top: 1px solid #eee;}
.m_menu_box .m_sub_menu li{font-size: 14px; color: #666; font-weight: 500; border-bottom: none;}
.m_menu_box .m_sub_menu a{padding: 8px 0;}

.acteve_menu_box{z-index: 999999; opacity: 1; visibility: visible; transition-delay: 0ms;}
.acteve_menu_box .wrap{transition-delay: 300ms; transform: translateX(0);}
.active_menu{color: #034aa6; font-weight: 700;}
.active_menu img{transition: all 0.4s; transform: translate(0, -50%) rotate(180deg)!important; top: -3px;}

/* 햄버거바(모바일용) */
.ham_icon{height: 55px; width: 40px; border: 0; background: 0; font-size: 18px; vertical-align: top; position: absolute; top: 0; left: 5px; color: #333; display: none;}
.ham_icon i{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}



/* 서브 상단 */
.sub_main{width: 100%; height: 600px; background: url(/images/company_sm_01.jpg); background-position: center; background-repeat: no-repeat; background-size: cover; background-attachment: fixed; position: relative; margin: 150px auto 100px; }
.sub_main .text{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); text-align: center; width: 100%;}
.sub_main h1{color: #fff; font-size: 60px; text-transform: uppercase; font-style: italic; font-weight: 800; text-shadow: 0 0 10px rgba(0,0,0,0.4); margin-bottom: 20px;}
.sub_main p{color: #fff; font-size: 25px; font-weight: 500; text-shadow: 0 0 10px rgba(0,0,0,0.4);}

/* 서브 타이틀 */
.com_title{text-align: center; font-size: 40px; font-weight: 600;}
.com_title::after{content: ''; display: block; width: 40px; height: 3px; background: #034aa6 ; margin: 40px auto 60px;}

/* 페이징 */
.pg_wrap{margin-top: 80px;}
.pg_current{background: #000; border: 1px solid #000; border-radius: 50%; font-size: 12px; font-weight: 600;}
.pg_page{color: #999; font-size: 12px; font-weight: 500; height: 30px; line-height: 28px; padding: 0 5px; min-width: 30px; text-decoration: none;border-radius: 3px; cursor: pointer;}

/* 회사개요 */
.summary{display: flex;}
.summary img{width: 50%;}
.summary table{width: 50%; margin-left: 20px; border-top: 2px solid #000;}
.summary table td{border-bottom: 1px solid #ddd; border-left: 1px solid #ddd; padding: 20px; font-size: 16px; line-height: 24px;}
.summary table td:first-child{border-left: none;}
.summary table .th{background: #f7f7f7; text-align: center; font-weight: 600; color: #666; width: 150px;}

/* 인사말 */
.ceo{background: url(/images/ceo_bg.jpg); background-position: center; background-repeat: no-repeat; background-size: cover; padding: 100px 0 120px;}
.ceo_text {text-align: center;}
.ceo_text h1{font-size: 30px; font-weight: 500; line-height: 45px; color: #f28705; margin-bottom: 40px;}
.ceo_text p{font-size: 20px; line-height: 35px;}
.ceo_text p .bold{font-weight: 600;}
.ceo_text h2{font-size: 18px; font-weight: 600; color: #034aa6; line-height: 45px; margin-top: 40px;}
.ceo_text h3{font-size: 18px; font-weight: 600; margin-top: 40px; }
.ceo_text h3 img{display: inline-block;}

/* 연혁 */
.his_box{display: flex; align-items: flex-start;}
.his_box h1{color: #034aa6; font-size: 40px; font-weight: 800; top: 10px; width: 250px; position: relative;}
.his_box h1::after{content: ''; display: inline-block; width: 70px; height: 1px; background: #f28705; position: absolute; top: 25px; right: 0;}
.his_box h1::before{content: ''; display: block; position: absolute; top: 21px; right: -3px; width: 7px; height: 7px; border-radius: 50%; background: #f28705; z-index: 1;}
.his_box .month{padding: 20px 0 100px 80px; border-left: 1px dotted #ddd; top: 10px; width: calc(100% - 250px); position: relative;}
.his_box .month::before{content: ''; display: block; position: absolute; top: 18px; left: -8px; width: 13px; height: 13px; background: #fff; border: 1px solid  #f28705; border-radius: 50%;}
.his_box .text{display: flex; margin-bottom: 20px;}
.his_box .text:last-child{margin-bottom: 0;}
.his_box .text h2{width: 100px; color: #999; font-size: 18px; font-weight: 700;}
.his_box .hb_list{}
.his_box .hb_list li{margin-bottom: 15px; line-height: 26px; font-size: 18px; font-weight: 400; padding-left: 20px; position: relative;}
.his_box .hb_list li::before{content: ''; display: block; width: 4px; height: 4px; background: #999; border-radius: 50%; position: absolute; top: 9px; left: 0;}

/* 사업분야 */
.business_text{}
.business_text li{display: flex; align-items: center;}
.business_text li:first-child{flex-direction: row;}
.business_text li:last-child{flex-direction: row-reverse;}

.business_text .img{background: #f7f7f7; width: 50%; padding-top: 35%; position: relative; overflow: hidden;}
.business_text .img img{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); height: 100%;}
.business_text .text{width: 50%; padding: 0 50px;}
.business_text .text h1{font-size: 30px; font-weight: 700; margin-bottom: 30px;}
.business_text .text p{font-size: 18px; line-height: 32px; color: #666;}

.business_text li:first-child h1{color: #f28705;}
.business_text li:last-child h1{color: #034aa6;}

/* 인증현황 */
.mfp-figure small{display: none!important;}
.cert_box .popup-gallery{}
.cert_box .popup-gallery li{display: inline-block; vertical-align: top; width: calc(100% / 4 - 21px); margin-right: 25px; margin-bottom: 60px; position: relative;}
.cert_box .popup-gallery li:nth-child(4n){margin-right: 0;}
.cert_box .popup-gallery a{}
.cert_box .popup-gallery .chk{position: absolute; top: 10px ;left: 10px; width: 16px; height: 16px; z-index: 99;}
.cert_box .popup-gallery img{border: 1px solid #efefef;}
.cert_box .popup-gallery h1{margin-top: 15px; font-size: 18px; font-weight: 600; text-align: center;}

.center_form .online{border-top: 2px solid #000;}
.center_form .online{}
.center_form .online li{display: flex; padding: 10px 0;border-bottom: 1px solid #eee;}

.center_form .online h1{font-weight: 500; width: 200px; height: 50px; line-height: 50px; font-size: 16px; font-weight: 600;}
.center_form .online h1 .color{color: red;}
.center_form .online h1 p{font-size: 12px; color: #999; font-weight: 600; display: inline-block; margin-left: 5px;}

.center_form .online .input_div{width: calc(100% - 200px);}
.center_form .online .input_div input{border: 1px solid #ccc; padding: 0 10px; font-size: 16px; width: 100%; height: 50px; line-height: 50px;}

.center_form .online .input_div textarea{border: 1px solid #ccc; padding: 10px; width: 100%; resize: none; height: 300px; font-size: 16px; line-height: 25px;}

.center_form .online .file_div{height: auto; border: none; display: flex; flex-direction: column; justify-content: center;}
.center_form .online .file_div>input{font-size: 14px;}
.center_form .online .file_div .span{display: block; margin-top: 5px;}
.center_form .online .file_div .span input{width: auto; width: 18px; height: 18px; display: inline-block; vertical-align: middle; margin-right: 5px;}
.center_form .online .file_div .span label{cursor: pointer; font-size: 14px;}

.center_form .write_btn{display: block; margin: 50px auto 0; background: #034aa6; color: #fff; border: 1px solid #034aa6; width: 180px; height: 60px; line-height: 60px; font-size: 16px; font-weight: bold;}

.mfp-close{cursor: pointer!important;}
.mfp-title{font-size: 16px; line-height: 24px!important; margin-top: 5px;}

/* 게시판 버튼 */
.adm_btn{display: flex; align-items: center; justify-content: flex-end; width: 100%; margin: 10px auto}
.adm_btn>*{margin-left: 10px; width: 75px; height: 40px; background: #999; color: #fff; text-align: center; line-height: 40px; cursor: pointer; font-size: 14px; font-weight: 500; border-radius: 5px; border: none;}
.adm_btn>*:nth-child(1){margin-left: 0;}
.adm_btn>*:nth-child(2){background: #666;}
.adm_btn>*:last-child{background: #333;}
.adm_btn .list_btn{background: #c4993c;}

/* 조직도 */
.organization_img img{max-width: 80%; display: block; margin: auto;}

/* 오시는길 */
.location{}
.location #map{width: 100%; height: 500px;}
.location #map .root_daum_roughmap .wrap_map{height: calc(100% - 32px);}
.location .table{margin-top: 30px; border-top: 2px solid #000; width: 100%;}
.location .table td{border-bottom: 1px solid #ddd; padding: 25px; font-size: 16px; line-height: 24px;}
.location .table .th{width: 200px; background: #f7f7f7; text-align: center; color: #666; font-weight: 600; }
.location .table p:first-child{margin-bottom: 10px;}
.location .table .color{display: inline-block; background: #54afff; color: #fff; font-size: 14px; font-weight: 600; margin-right: 5px; border-radius: 50px; width: 80px; text-align: center; padding: 5px 0;}

/* 하단 */
.foot{margin-top: 120px; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd;}

.foot .ft_01{padding: 40px 0 35px; float: left;}
.foot .ft_01 .ft_link{margin-bottom: 20px;}
.foot .ft_01 .ft_link li{font-weight: 600; float: left; margin-right: 30px; position: relative; font-size: 16px;}
.foot .ft_01 .ft_link li::after{content: '';  display: block; position: absolute; top: 50%; left: -15px; transform: translate(0, -50%); background: #999; width: 1px; height: 14px;}
.foot .ft_01 .ft_link li:first-child::after{display: none;}
.foot .ft_01 .ft_link li:last-child{margin-right: 0;}
.foot .ft_01 .ft_link::after{content: ''; display: block; clear: both;}

.foot .ft_01 .ft_info{}
.foot .ft_01 .ft_info li{color: #999; margin-right: 20px; display: inline-block; margin-bottom: 5px; font-size: 16px;}
.foot .ft_01 .ft_info li:last-child{margin-right: 0;}

.foot .ft_02{border-left: 1px solid #ddd; border-right: 1px solid #ddd; padding: 40px 50px 42px; position: absolute; top: 0; right: 267px;}
.foot .ft_02 h2{font-size: 16px; font-weight: 600; margin-bottom: 10px;}
.foot .ft_02 img{margin-bottom: 5px;}
.foot .ft_02 h1{font-size: 21px; font-weight: 700;}
.foot .ft_02 p{color: #999; font-size: 14px; margin-top: 10px;}

.foot .ft_03{padding: 20px 0; float: right;}
.foot .ft_03 h2{font-size: 16px; font-weight: 600; margin-bottom: 5px;}
.foot .ft_03 h1{font-size: 30px; color: #f28705;}
.foot .ft_03 p{color: #999; font-size: 14px; margin-top: 5px; line-height: 22px;}
.foot .ft_03 p a{display: inline-block; font-weight: 600;}

.foot .wrap::after{content: ''; display: block; clear: both;}

.copy{padding: 20px 0; color: #999; font-size: 14px;}



/* 마우스 하버 스타일(모바일 방지) */
@media screen and (min-width:1000px) and (max-width:3000px){
	/* 상단_메뉴 */
    .hd_con .menu li:hover a{color: #034aa6;}
	.hd_con .menu li:hover::before{top: -10px; opacity: 1;}
	
	/* 인증현황 */
	.cert_box .popup-gallery li:hover img{border-color: #fff; box-shadow: 0 0 10px rgba(0,0,0,0.1);}
	.cert_box .popup-gallery li:hover h1{color: #034aa6;}
}



/* 모바일 */
@media screen and (max-width: 1000px){
	/* 공통 */
	*{word-break: keep-all!important;}
	.wrap{width: calc(100% - 20px);}
	
	/* 상단 */
	.hd_top{height: auto; padding-top: 5px;}
	.hd_top .link_list{display: flex; position: relative; bottom: auto; left: auto;}
	.hd_top .link_list li{float: inherit; width: calc(100% / 3); padding: 0;}
	.hd_top .link_list li a{color: #999; display: block; font-weight: 600; padding: 7px 0; font-size: 12px; position: relative; line-height: normal; text-align: center;}
	.hd_top .link_list .on::before{height: 100%;}
	
	.hd_con{height: 55px; position: relative;}
	.hd_con .logo{width: 130px; left: 50%; transform: translate(-50%, -50%);}
	
	.hd_con .menu{display: none;}
	.ham_icon{display: block;}
	.hd_con .menu li::before{display: none;}
	
	/* 서브 상단 */
	.sub_main{margin: 90px auto 50px; height: auto; padding-top: 100%; background-attachment: scroll;}
	.sub_main .text{padding: 0 30px;}
	.sub_main h1{font-size:  8vw; line-height: 8.5vw; font-style: normal; font-weight: 900; margin-bottom: 15px; text-shadow: 0 0 10px rgba(0,0,0,0.8);}
	.sub_main p{font-size: 16px; line-height: 24px; text-shadow: 0 0 10px rgba(0,0,0,0.8);}
	
	/* 서브 타이틀 */
	.com_title{font-size: 22px;}
	.com_title::after{width: 28px; margin: 20px auto 40px;}
	
	/* 하단 */
	.top_btn{line-height: 45px; width: 45px; height: 45px; font-size: 12px; font-weight: 700;}
	
	.foot{margin-top: 50px;}

	.foot .ft_01{padding: 20px 0; float: inherit;}
	.foot .ft_01 .ft_info li{font-size: 14px; line-height: 22px;}

	.foot .ft_03{float: inherit; padding: 20px 0; border-top: 1px dashed #eee;}
	.foot .ft_03 h1{font-size: 20px;}

	/* 회사개요 */
	.summary{display: block;}
	.summary img{width: 100%;}
	.summary table{width: 100%; margin-left: 0; margin-top: 20px;}
	.summary table td{padding: 15px; font-size: 14px; line-height: 22px;}
	.summary table .th{width: 80px;}
	
	/* 인사말 */
	.ceo{background: #fff; padding: 50px 0;}
	.ceo_text h1{font-size: 16px; line-height: 26px; margin-bottom: 20px; font-weight: 600;}
	.ceo_text p{font-size: 14px; line-height: 24px;}
	.ceo_text h2{font-size: 14px; font-weight: 600; color: #034aa6; line-height: 24px; margin-top: 20px;}
	.ceo_text h3{font-size: 14px; font-weight: 600; margin-top: 20px; }
	.ceo_text h3 img{width: 150px;}
	.ceo_text br{display: none;}
	.ceo_text .br{display: block; padding: 10px;}
	
	/* 연혁 */
	.his_box{display: block; margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px dashed #eee;}
	.his_box h1{font-size: 18px; line-height: inherit; top: 0; margin-bottom: 10px; width: 100%;}
	.his_box h1::after, .his_box h1::before{display: none;}
	.his_box .month{padding: 0; top: 0; border-left: none; width: 100%;}
	.his_box .month::before{display: none;}
	.his_box .text{margin-bottom: 15px;}
	.his_box .text h2{width: 50px; margin-right: 10px;}
	.his_box .text h2, .his_box .hb_list li{font-size: 14px; line-height: 22px;}
	.his_box .hb_list{width: calc(100% - 60px);}
    .his_box .hb_list li{margin-bottom: 5px; margin-left: 15px;}
	.history .his_box:last-child{margin-bottom: 0; padding-bottom: 0; border-bottom: none;}
	
	/* 사업분야 */
	.business_text li{display: block; align-items: inherit;}
	.business_text li:first-child{flex-direction: inherit; margin-bottom: 40px;}
	.business_text li:last-child{flex-direction: inherit;}
	.business_text .img{width: 100%; padding-top: 0;}
	.business_text .img img{position: relative; top: auto; left: auto; transform: inherit; height: auto;}
	.business_text .text{width: 100%; padding: 0; margin-top: 20px;}
	.business_text .text h1{font-size: 18px; font-weight: 700; margin-bottom: 10px;}
	.business_text .text p{font-size: 14px; line-height: 23px;}
	
	/* 인증현황 */
	.cert_box .popup-gallery li{width: calc(100% / 2 - 5.5px); margin-right: 8px; margin-bottom: 40px;}
	.cert_box .popup-gallery li:nth-child(4n){margin-right: 10px;}
	.cert_box .popup-gallery li:nth-child(2n){margin-right: 0;}

	.cert_box .popup-gallery .chk{ width: 14px; height: 14px;}
	.cert_box .popup-gallery h1{margin-top: 10px; font-size: 14px; line-height: 22px;}
	
	.mfp-title{font-size: 14px; line-height: 22px!important;}
	
	.center_form .online li{display: block;}
	.center_form .online h1{font-size: 14px; margin-bottom: 10px; width: 100%; line-height: normal; height: auto;}
	.center_form .online .input_div{width: 100%;}
	.center_form .online .input_div input{border: 1px solid #ccc; padding: 0 10px; font-size: 14px; width: 100%; height: 40px; line-height: 40px;}
	.center_form .online .input_div textarea{border: 1px solid #ccc; padding: 10px; width: 100%; resize: none; height: 200px; font-size: 14px; line-height: 22px;}
	
	.center_form .write_btn{height: 45px; line-height: 45px; border-radius: 3px; font-size: 1.083em; margin: 20px auto 0;}
	
	/* 게시판 버튼 */
	.adm_btn>*{font-size: 12px; font-weight: 600; width: 60px; height: 35px; line-height: 35px; margin-left: 5px;}
	
	/* 조직도 */
	.organization_img img{max-width: 100%;}
	
	/* 오시는길 */
	.location #map{height: 300px;}
	.location .table{margin-top: 20px;}
	.location .table td{padding: 15px; font-size: 14px; line-height: 22px;}
	.location .table .th{width: 80px;}
	.location .table .color{display: block; margin-right: 0; margin-bottom: 5px;}
}