@charset "utf-8"; 
html {height: 100%; }
body { overflow: hidden; height: 100%; }
#wrap{width: 100%; height: 100%; overflow-x: hidden; overflow-y: scroll;}

/* main_con */
.main_con {max-width: 1600px; width: 100%; margin: 0 auto; position: relative; }
.main_con .inner:after {width: 1280px; height: 1080px; position:absolute; top: 0; left: 50%; background: url('../images/main/bg_main.png') no-repeat right top; margin-left: -320px; z-index: 1; display:block; }
.main_con .bg {width: 1280px; height: 1080px; position:absolute; top: 0; left: 50%; background: url('../images/main/bg_main.png') no-repeat 0 0; margin-left: -320px; z-index: 1; }
.main_con .inner {max-width: 1280px; width: 100%; margin: 0 auto; position: relative; z-index: 2; }

/*sub*/
.container {}
.visual {background-image: url('../images/conts/bg_visual01.png'); width: 100%; height: 390px; background-size:cover; display: table; font-size: 40px; color: #fff; font-weight: 700; position: relative; z-index: 1; background-position:center top; }
.visual h2 {line-height: 40px; }
.visual.bg_visual02{background-image: url('../images/conts/bg_visual02.png'); background-position:center top; background-size:cover; }
.visual.bg_visual03{background-image: url('../images/conts/bg_visual03.png'); background-position:center top; background-size:cover; }
.visual.bg_visual04{background-image: url('../images/conts/bg_visual04.png'); background-position:center top; background-size:cover; }
.visual.bg_visual05{background-image: url('../images/conts/bg_visual05.png'); background-position:center top; background-size:cover; }/* 윤리경영 - 2023 추가개발 */
.visual.bg_visual06{background-image: url('../images/conts/bg_visual06.png'); background-position:center top; background-size:cover; }/* 윤리상담 - 2023 추가개발 */
.visual .inner {display: table-cell; width: 100%; vertical-align:bottom; text-align:center; }
.visual .inner h2 {padding-bottom: 160px; }
.visual .inner h2 {animation:ani01 both .8s .8s cubic-bezier(0.645, 0.045, 0.355, 1); transition: .1s .1s; }

h2 {font-size: 40px; line-height: 40px; color: #fff; font-weight: 400; }
h3 {font-size: 28px; line-height: 28px; color: #222222; padding-bottom: 10px; border-bottom: 1px solid #c7c7c7; width: 200px; }
h4 {font-size: 22px; line-height: 22px; color: #222222; }
.bg_gray_wr {background: #f3f3f3; }
.bg_gray_wr2 {background: #f8f8f8; }
h3.mod_t {margin-bottom: 70px; }

#pop_wrap {}
.popup .today_close_box {background: #3e4146; padding: 15px 15px; }
.popup .today_close_box:after {content: ''; clear:both; display:block; }
.popup .today_close_box li {float: left; line-height: 18px; position: relative; width: 50%; }
.popup .today_close_box li .today_mclose {font-size: 12px; color: #fff; height: 18px; padding-left: 27px; background: url(../images/common/chk_off.png) left center no-repeat; }
.popup .today_close_box p { position: relative; }
.popup .pop_close02 { width: 18px; height: 18px; background: url(../images/common/pop_today_close.png) left top no-repeat; font-size: 0; text-indent: -9999px; display: inline-block; position:absolute; top: 0px; right: 0px; }

.check_ty input {font-size: 0; opacity: 0; width: 0; height: 0; }
.check_ty label {color: #000; display: inline-block; padding-left: 27px; position: relative; height: 16px; line-height: 16px; font-family: '돋움',sans-serif; font-size: 12px; color: #fff; }
.check_ty{display: inline-block; position: relative; }
.check_ty input{font-size: 0; opacity: 0; width: 0; height: 0; }
.check_ty label {color: #000; display: inline-block; padding-left: 27px; position: relative; height: 16px; line-height: 16px; font-family: '돋움',sans-serif; font-size: 12px; color: #fff; }
.check_ty label:before{background: url(../images/common/ico_check02_off.gif) left top no-repeat; content: ""; display: inline-block; position:absolute; left: 0; top: 0px; width: 16px; height: 16px; background-size: 16px auto; }
.check_ty input:disabled + label:before{background: url(../images/common/ico_check03_off.gif) left top no-repeat; content: ""; display: inline-block; position:absolute; left: 0; top: 0px; width: 16px; height: 16px; }
.check_ty input:checked + label{color: #fff; }
.check_ty input:checked + label:before{background: url(../images/common/ico_check02_on.gif) left top no-repeat; background-size: 16px auto; }
.check_ty input:focus{width: 16px; height: 16px; opacity: 1; position:absolute; left: 0; top: 0px; background-size: 16px auto; }
.check_ty input:disabled:checked + label:before{background: url(../images/common/ico_check03_on.gif) left top no-repeat; }
.check_ty input:focus{width: 16px; height: 16px; opacity: 1; position:absolute; left: 0; top: 3px; }

.btn_top {display: none; font-size: 0; text-indent: -9999px; overflow: over; opacity: 1; position:absolute; bottom: 0; right: 0; width: 0; height: 0;  z-index: 1;}/* 2023-10-18 수정 */

/*작은 모니터 기준 테스트*/

@media all and (max-width: 1480px){
	#pop_wrap:after {}
	.visual {height: 360px; }
	.visual .inner h2 {font-size: 36px; }
}  

/* Tablet 1370 분리 테스트 */
/* pc 테스트*/
/*pc 작은 모니터 맥 사파리*/
@media all and (min-width: 1122px) and (max-width: 1265px) { 
	#pop_wrap:after {}
	.visual {height: 360px; }
	.visual .inner h2 {font-size: 36px; }
}

/* Tablet 1279px*/
/*@media all and (max-width: 1199px) and (min-resolution: 192dpi)  {*/
@media all and (max-width: 1199px){
	.visual .inner {height: 100%; }
	.visual .inner h2 {padding-bottom: 63px; font-size: 20px; line-height: 20px; }
	.visual.bg_visual03 { background-image: url(../images/conts/bg_visual03Tablet.png); background-position:center top; background-size:cover; }
}

/* mobile */
@media all and (max-width: 834px){
}

@media all and (max-width: 749px){
	.tablet_con {background: none; }
}
@media all and (max-width: 375px){
}
@keyframes ani01 {
	0% { opacity: 0; transform: translateY(150px); }
}
/* 2023 추가개발 : 공통 */
.only_pc{display: block;}
.only_mo{display: none;}
@media all and (max-width: 959px){
	.only_mo{display: block;}
	.only_pc{display: none;}
}
/* 2023 추가개발:  메뉴 분리 */
.header{position:absolute; top: 0; left: 0; z-index: 80; width: 100%; transition:all 0.7s; z-index: 99; }

/*  전체메뉴 */
.rt_menu_wr {position:fixed; top: 0; right: -80px; transition:all 0.7s; z-index: 102; display: none; vertical-align: middle; height: 100vh; background: #222222; }
.rt_menu_wr:after {content: ''; clear:both; display:block; }
.rt_menu_wr.on { right: 0; display:block; }
.rt_menu_wr .inner {display:block; overflow-y:auto; height: 100vh; padding: 125px 50px 0 82px; }
.rt_menu_wr .inner .conts{padding-bottom: 50px; }
.rt_menu_wr .inner .dep1 a{display:block; }
.rt_menu_wr .inner .dep1{padding-right: 160px; }
.rt_menu_wr .inner .dep1 .li {position: relative; }
.rt_menu_wr .inner .dep1 .li + li{ margin-top: 70px; }
.rt_menu_wr .inner .dep1 .li:last-child {margin-bottom: 0; }
.rt_menu_wr .inner .dep1 .li > a {font-size: 36px; color: #fff; padding-bottom: 0px; position: relative; padding-right: 130px; touch-action: manipulation; }
.rt_menu_wr .inner .dep1 .li > a:hover {color: #00aba2; }/* 2023-10-19 디자인 수정 */
.rt_menu_wr .inner .dep1 .li > a em {position: relative; }
.rt_menu_wr .inner .dep1 .li .arrow-wrap {position:absolute; top: 0; right: 10px; }
.rt_menu_wr .inner .dep1 .menu1 .arrow-top {display: none; }
.rt_menu_wr .inner .dep1 .menu1 .arrow-bottom {display:block; }
.rt_menu_wr .inner .dep1 .menu1.on .arrow-bottom {display: none; }
.rt_menu_wr .inner .dep1 .menu1.on .arrow-top {display:block; }
/* .rt_menu_wr .inner .dep1 .li .dep2.menu2{display: none; } 2023-10-17 2차 수정*/
.rt_menu_wr .inner .dep1 .li .dep2 li {margin-top: 22px; }
.rt_menu_wr .inner .dep1 .li .dep2 li:first-child {margin-top: 40px; }
.rt_menu_wr .inner .dep1 .li .dep2 li a {font-size: 20px; line-height: 20px; color: #999;}/* 2023-10-19 디자인 수정 */
.rt_menu_wr .inner .dep2 {margin-left: 20px; } /* 2023-10-19 디자인 수정 */
.rt_menu_wr .inner .dep1 .li .dep2 li a:hover {color: #00aba2; }/* 2023-10-19 디자인 수정 */
.rt_menu_wr .btn_close {position:absolute; top: 36px; right: 40px; display:block; width: 38px; height: 38px; background: url('../images/common/btn_close.png') no-repeat 0 0; font-size: 0; text-indent: -9999px; }
.rt_menu_wr .inner .head {display: none; }

/*작은 모니터 기준 테스트*/
@media all and (max-width: 1480px){
	.rt_menu_wr {height: 100vh; }
	.rt_menu_wr .inner {padding: 100px 30px 100px 30px; }
	.rt_menu_wr .inner .dep1 .li > a {font-size: 34px; }
	.rt_menu_wr .inner .dep1 .li + .li{margin-top: 50px; }
	.rt_menu_wr .inner .dep1 .li .dep2 li a {font-size: 20px; }
	.rt_menu_wr .btn_close {width: 30px; height: 30px; background-size: 30px auto; }
}  
/*pc 작은 모니터 맥 사파리*/
@media all and (min-width: 1122px) and (max-width: 1265px) { 
	.rt_menu_wr {height: 100vh; }
	.rt_menu_wr .inner {padding: 85px 30px 0 30px; }
	.rt_menu_wr .inner .dep1 .li > a {font-size: 32px; }/*34px*/
	.rt_menu_wr .inner .dep1 .li {margin-bottom: 35px; }
	.rt_menu_wr .inner .dep1 .li .dep2 li a {font-size: 20px; }
	.rt_menu_wr .inner .dep1 .li .dep2 li:first-child {margin-top: 30px; }
	.rt_menu_wr .btn_close {width: 30px; height: 30px; background-size: 30px auto; }
	.rt_menu_wr.on { right: 0; display:block; border: 0px solid blue; width: 48%; }
}
/*pc 작은 모니터*/
@media all and (min-width: 1200px) and (max-width: 1380px) and (min-resolution: 192dpi) {
}  

/* Tablet 1279px*/
@media all and (max-width: 1199px){
	.rt_menu_wr { right: 0; width: 70%; }
	.rt_menu_wr .inner {display:block; padding: 0; }
	.rt_menu_wr .inner .head {position:absolute; top: 0; left: 0; border-bottom: 1px solid #4e4f50; height: 100px; position: relative; display:block; }
	.rt_menu_wr .inner .head .logo {position:absolute; top: 30px; left: 20px; }/*left: 30px; */
	.rt_menu_wr .inner .head .logo em {display:block; width: 161px; height: 40px; background-size: 92px auto; background: url(../images/common/logo.png) no-repeat; }
	.rt_menu_wr .inner .head .logo span {display: none; color: #fff; font-size: 10px; line-height: 10px; margin-top: 5px; }
	.rt_menu_wr .inner .conts { overflow-y:auto; height:calc(100vh - 100px); padding: 45px 0 0 20px; }
	.rt_menu_wr .inner .dep1{padding-bottom: 50px; }
	.rt_menu_wr .inner .dep1 .li + .li{margin-top: 40px; }
	.rt_menu_wr .inner .dep1 .li > a {font-size: 23px; border: 0; padding-right: 65px; }
	.rt_menu_wr .inner .dep1 .li .dep2 li:first-child {margin-top: 20px; }
	.rt_menu_wr .inner .dep1 .li .dep2 li {margin-top: 12px; }
	.rt_menu_wr .inner .dep1 .li .dep2 li a {font-size: 15px; line-height: 15px; }
	.rt_menu_wr .btn_close {width: 19px; height: 19px; background-size: 19px auto; right: 20px; top: 18px; }
	.rt_menu_wr .inner .dep1 .li > a {font-size: 22px; } 
	.rt_menu_wr .inner .dep1 {padding-right: 0; }
	.rt_menu_wr .inner .dep1 .li .arrow-wrap{right: 40px; width: 25px; height: 25px; }
	.rt_menu_wr  .btn_close{width: 25px; height: 25px; top: 30px; background: url(../images/common/btn_close_m.png); background-size: 25px 25px; }

}	
/* mobile */
@media all and (max-width: 959px){
	.rt_menu_wr .inner .dep2 {margin-left: 10px; }
}
@media all and (max-width: 834px){
	.rt_menu_wr {width: 100%; }
	.rt_menu_wr .inner .dep1 .li > a.act em { margin-right: 15%; }
	.rt_menu_wr .inner .dep2 li:first-child { margin-top: 0; }
}
@media all and (max-width: 749px){
	.rt_menu_wr {width: 100%; }
	.rt_menu_wr .inner .dep1 .li > a {padding-right: 56px; background-size: 46px auto; }
}
@media all and (max-width: 375px){
}

/*.gnb */
.gnb_dim {display: none; position:absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #fff; opacity: .6; z-index: 81; }
.gnb_dim.on {display:block; position: fixed;}

.header{background: transparent; height: 135px; z-index: 90;   transition: .4s ease; }
.p_sub .header_dim{display: none; position:absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #000; opacity: 0; z-index: 81;}
.p_sub .header_dim.on{display: block; opacity: .6; transition: opacity .5s;}
.header::after{border-bottom: 1px solid transparent; }
.header:hover::after {content: ""; position:absolute; top: 135px; left: 0; width: 100%; border-bottom: 1px solid #e0e0e0; transition:color 3s; }
.header.fixed{position:fixed; background: #fff; border-bottom: none; }
.header:hover{background: #fff; }
.header.hidden{transform: translateY(-100%); }
.header .inner{display:flex; justify-content: space-between; align-items:flex-start; position: relative; top: 0; left: 0; z-index: 1; max-width: 1600px; height: 100%; margin: 0 auto; padding-top: 60px; background: transparent; }
.header .inner .text_logo{position: static; width: 184px; height: 46px; }
.header .text_logo a {display:block; }
.header .text_logo em {display:block; width: 184px; height: 46px; background: url(../images/common/logo.png) no-repeat; }
.header:hover .text_logo em {background: url(../images/common/logo_bk.png) no-repeat 0 0; }
.header.fixed .text_logo em {background: url(../images/common/logo_bk.png) no-repeat; }
.header .btn_all_menu {display:block; position: relative; top: -5px; width: 47px; height: 36px; background: url(../images/common/btn_all_menu_w.png) no-repeat 0 0; font-size: 0; text-indent: -9999px; z-index: 3; }
.header.fixed .btn_all_menu {background: url(../images/common/btn_all_menu_b.png) no-repeat 0 0; font-size: 0; text-indent: -9999px; z-index: 3; }
.header:hover .inner .btn_all_menu {background: url(../images/common/btn_all_menu_b.png) no-repeat 0 0; }
.header .inner .header_unit{position: static; display:flex; } 
.header .inner .lang{position: relative; margin-right: 35px; }
.header .inner .lang ul{display:flex; }
.header .inner .lang ul li{position: relative; }
.header .inner .lang ul li::after{position:absolute; left: 0; top: 3px; content: ""; width: 1px; height: 15px; background-color: #aaa; }
.header .inner .lang li:first-child::after{display: none; }
.header .inner .lang ul li a{font-size: 16px; color: #aaa; }
.header .inner .lang ul li a span{margin: 0 10px; color: #aaa; }
.header .inner .lang ul li a.on span{color: #fff; font-weight: 700; }
.header:hover .inner .lang ul li a.on span{color: #333; font-weight: 700; }
.header.fixed .inner .lang ul li a.on span{color: #333; }
.header .inner .lang li:last-child::after{ content: ""; }

.header .for-bg{ height: 100%; overflow: hidden; }
.header .gnb-w {display: inline-block; text-align:center; }
.header .gnb {display:flex; height: 100%; max-width: 800px; }
.header .gnb > li {display: inline-block; height: 100%; width: 20%; }
.header:hover .gnb > li .one-link{color: #666; }
.header .gnb > li.on .one-link{color: #333; font-weight: 700; }
.header .gnb > li .one-link {position: relative; display:flex; justify-content:center; align-items:flex-start; padding: 0 40px; height: 75px; width:auto; color: #fff; }
.header.fixed .gnb > li .one-link {color: #666; }
.header .gnb > li .one-link:hover{color: #333; font-weight: 700; }
.header .gnb > li .bor-t{position:absolute; top: 135px; left: 0; width: 100%; }
.header:hover .gnb > li .bor-t{position:absolute; border-top: 1px solid #e0e0e0; visibility: hidden; top: 135px; left: 0; width: 100%; transition: opacity 0.7s; }
.header .gnb > li .two-depth {display:flex; justify-content:center; align-items:center; width: 100%; height: 0; visibility: hidden; overflow: hidden; opacity: 0; transition-property: opacity, visibility; transition-duration: 0.5s, 0s; transition-delay: 0s, 0.1s; }
.header .gnb > li.on .two-depth{height: 90px; visibility: visible; opacity: 1; transition-property: visibility, opacity; transition-duration: 0s, 0.5s; }
.gnb .two-depth li {padding-top: 0; padding: 0 40px; }
.gnb .two-depth li a:hover{color: #333; font-weight: 700; }
.gnb_dim{z-index: 100; background-color: #000; }
@media all and (min-width: 1601px){
	.p_sub .header .inner{max-width: calc(100% - 240px);}
}
@media all and (max-width: 1600px){
	.header .inner{width: 90%; }
	.header .gnb > li .one-link {padding: 0 20px; }
}
@media all and (max-width: 1280px){
	.header:hover {background: transparent; }
	.header:hover::after{display: none; }
	.header .text_logo{position:absolute; margin-left: 0; }
	.header .text_logo em{width: 161px; height: 40px; background: url(../images/common/logo.png) no-repeat; background-size: 161px auto; }
	.header:hover .text_logo em{width: 161px; height: 40px; background: url(../images/common/logo.png) no-repeat; background-size: 161px auto; }
	.header.fixed .text_logo em {background-size: 160px auto; }/*2023-10-18 수정*/
	.header .for-bg{display: none; }

	.header .inner .btn_all_menu{display:block; position: relative; width: 32px; height: 25px; background: url(../images/common/btn_all_menu_w.png) no-repeat; background-size: 32px 25px; }
	.header:hover .inner .btn_all_menu{background-image: url(../images/common/btn_all_menu_w.png); }
	.header .inner .lang{margin-right: 60px; }
	.header .inner .lang li:last-child::after {display: none; }
	.header .inner .lang ul li:first-child{display: none; }
	.header .inner .lang ul li a span{color: #fff; font-weight: 700; }
}
@media all and (max-width: 1199px){
	.header{height: 100px; }
	.header .inner { display:block; position: relative; width:calc(100% - 40px); height: 100px; padding-top: 0; }
	.header .inner .text_logo {position:absolute; top: 30px; left: 0; }
	.header .btn_all_menu{top: 0; }
	.header.fixed .btn_all_menu {width: 23.5px; height: 18px; background-size: 23.5px auto; background: url(../images/common/btn_all_menu.png) no-repeat; background-size: 23.5px auto; }
	.header .inner .header_unit{align-items:center; position:absolute; top: 30px; right: 0; }
	.header .inner .lang{top: -5px; margin-right: 28px; }
}	
@media all and (max-width: 1023px){
}
@media all and (max-width: 959px){
}
@media all and (max-width: 834px){
	.header .inner .lang{top: 0; }
}

/* footer */
.footer { width: 100%; padding: 70px 0; background: #000; transition:all 0.7s; }
.footer .inner {position: relative; width: 1600px; margin: 0 auto; transition:all 0.7s; }
.footer ul.foot_list {display:flex; }
.footer ul.foot_list li + li{margin-left: 35px; }
.footer ul.foot_list li a {color: #999; font-size: 16px; }
.footer .foot_logo {width: 210px; height: 16px; margin-top: 40px; color: #727171; background: url('../images/common/footer_logo.png') no-repeat ; background-size:contain; }
.footer .addr {margin-top: 40px; color: #666; font-size: 15px; }
.footer .text_copyright {margin-top: 10px; color: #666; font-size: 15px; }
.footer .family_site {position:absolute; top: 30px; right: 0; width: 200px; background: #222; }
.footer .family_site .family_group{position: relative; z-index: 3; width: 200px; height: 48px; border-bottom: 0px solid #fff; }
.footer .family_site .family_group .open_layer{display:flex; align-items: center; height: 48px; margin-left: 10%; background: url(../images/common/family_open.png) no-repeat 90%; font-size: 16px; color: #fff; cursor: pointer; transition:all 0.3s; }
.footer .family_site .family_group.active .open_layer {background-image: url(../images/common/family_close.png); }
.footer .family_site .family_group div{display: none; position:absolute; bottom: 46px; left: 0; width: 100%; box-sizing:border-box; background-color: #eaeaea}
.footer .family_site .family_group div a{display:block; margin: 0; padding: 13px 10%; color: #000; font-size: 16px; }/* 2023-10-17 2차 수정 */
.footer .family_site .family_group div a:hover{background-color: #c6c6c6; }

@media all and (max-width: 1600px){
	.footer .inner{width: 90%; }
}
@media all and (max-width: 959px){
	.footer {padding: 50px 0; } 
	.footer ul.foot_list li + li{margin-left: 20px; }
	.footer .foot_logo {margin-top: 35px; width: 219px; height: 17px; }
	.footer .addr {margin-top: 25px; font-size: 13px; }
	.footer .text_copyright {font-size: 13px; }
	.footer .family_site {position: relative; top: 0; right:auto; height: 40px; margin-top: 60px; }
	.footer .family_site .family_group .open_layer{height: 40px; font-size: 14px;}
	.footer .family_site .family_group div a{padding: 10px 10%; font-size: 14px;}
}