/* mobile menu S */
#mobile_wrap {
   position: relative;
   width: 100%;
   z-index: 99999;
   display: none;
}

#mobile_wrap .mobile {
   position: absolute;
   z-index: 50;
   width: 100%;
   height: 75px;
   overflow: hidden;
   background: none;
}

#mobile_wrap .mobile_in {
   width: 100%;
}
#mobile_wrap .mobile_in .topBlank {
   width: 41px;
}
#mobile_wrap .mobile_in a img {
   overflow: hidden;
}
#mobile_wrap .mobile_in .mLogo img {
   overflow: hidden;
   width: 163px;
}

#mobile_wrap .m_gnb li a {
   display: block;
   top: 0;
   width: 100%;
   text-align: center;
   color: transparent;
}

#mobile_wrap .mobile_in a i {
   width: 20px;
   height: 20px;
   font-size: 20px;
   color: #fff;
}

#mobile_wrap .m_gnb li.home a i {
   float: left;
   position: absolute;
   width: 20px;
   height: 20px;
   line-height: 20px;
   right: 15px;
   top: 20px;
   font-size: 20px;
   color: #333;
}

#ori_header {
   position: absolute;
   display: none;
   top: 0;
   width: 100%;
   height: 100%;
   background: rgba(0, 0, 0, 0.5);
   z-index: 99998;
}

#mobile_menu {
   display: none;
   position: absolute;
   top: 0;
   right: -250px;
   /* width: 249px; */
   width: 100%;
   height: 100vh;
   background-color: #fff;
   z-index: 9999999;
}

#mobile_menu .m_menu_ti {
   height: 75px;
   background-color: #33ab83;
}

#mobile_menu .m_menu_ti .mLogo img {
   overflow: hidden;
   width: 163px;
}

#mobile_menu .m_menu_ti .sideArea {
   width: 30px;
}
#mobile_menu .m_menu_ti .sideArea i {
   font-size: 28px;
   text-align: center;
   color: #fff;
   font-weight: 700;
}

#mobile_menu .gnb_m > li {
   position: relative;
   border-bottom: 1px solid #eee;
}

#mobile_menu .gnb_m > li > a {
   font-size: 1.5rem;
   font-weight: 700;
   position: relative;
}
#mobile_menu .gnb_m > li > a:hover {
   color: #33ab83;
}

#mobile_menu .gnb_m > li > a:after {
   background: url('../images/menu_on.png') no-repeat right center;
   background-size: 20px;
   /* background-size: 100%; */
   content: '';
   position: absolute;
   width: 20px;
   height: 20px;
   right: 35px;
   top: 25px;
   /* width: 1.667rem;
   height: 1.667rem; */
}

#mobile_menu .gnb_m > li.opend > a:after {
   background-image: url('../images/menu_off.png');
}

#mobile_menu .gnb_m a {
   display: block;
}

#mobile_menu .gnb_m .submenu {
   background: #f7f7f7;
   display: none;
   font-size: 1.5rem;
}

#mobile_menu .gnb_m .submenu a {
   padding: 0.5em 1em;
   font-size: 20px;
}

#mobile_menu .gnb_m .submenu,
#mobile_menu .gnb_m > li > a {
   padding: 15px 20px;
}

#mobile_menu .langSelectBox {
   padding: 10px 20px;
}
#mobile_menu .langSelectBox a {
   font-size: 20px;
}
#mobile_menu .langSelectBox a.on {
   color: #00ff80;
}

#m_menu_con {
   background-color: #666;
   text-align: center;
   padding: 10px 0;
}

#m_menu_con i {
   color: #fff;
   font-size: 30px;
}

#m_menu_con a {
   color: #fff;
   text-align: center;
   font-size: 0.85em;
   padding: 5px 10px;
   margin: 0 2px;
   background: #c53428;
   border-radius: 3px;
}

#m_menu_con a:hover {
   background: #fff;
   color: #000;
}

@media all and (max-width: 1300px) {
   #mobile_wrap {
      display: block;
      min-width: 320px;
   }

   #head_wrap {
      display: none;
   }
}
/* mobile menu E */

/* PC HEADER */
#head_wrap {
   width: 100%;
   overflow-x: hidden;
}

#head_wrap .head_on {
   background-color: #33ab83;
   opacity: 1;
}

#head {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   min-height: 112px;
   /* background-color: rgba(0, 0, 0, 0); */
   z-index: 500 !important;
   /* border-bottom: solid 1px #7accb1 */
   border-radius: 0 0 16px 16px;
}
.head_on .br_line {
   position: absolute;
   z-index: 400;
   background-color: #7accb1;
   width: 100%;
   height: 1px;
   top: 112px;
}
.pc_menu .head_in {
   transition: all 0.3s ease-in-out;
}

.top_box {
   width: 100%;
   background: none;
   min-height: 112px;
}

.top_box h1 {
   margin-top: 28px;
}

#top_menu_wrap .top_menu {
   position: relative;
   overflow: hidden;
   visibility: hidden;
   height: 470px;      
}

#top_menu_wrap .top_menu > ul {
   height: 100%;
}
#top_menu_wrap .top_menu > ul > li {
   height: 100%;
   float: left;
}

#top_menu_wrap .top_menu > ul > li > a {
   display: block;
   width: 100%;
   padding: 0 30px;
   font-size: 20px;
   font-weight: 700;
   color: #fff;
   height: 112px;
   line-height: 100px;
   text-align: center;   
   
}
.head_on #top_menu_wrap .top_menu > ul > li > a {
   display: block;
   width: 100%;
   padding: 0 30px;
   font-size: 20px;
   font-weight: 700;
   color: #fff;
}

#top_menu_wrap .top_menu > ul > li.current > a,
#top_menu_wrap .top_menu > ul > li.actived > a {
   color: #fff;
   font-weight: 700;
   border-bottom: 0px solid rgba(255, 255, 255, 1);
   transition: 0.5s all ease;
   -webkit-transition: 0.5s all ease;
   -moz-transition: 0.5s all ease;
   -ms-transition: 0.5s all ease;
   -o-transition: 0.5s all ease;
}
#top_menu_wrap .top_menu > ul > li > a > span {
   /* display: block;
   background: #00a19c;
   width: 0px;
   height: 2px;
   margin: 0 auto;
   transition: 0.5s all ease;
   -webkit-transition: 0.5s all ease;
   -moz-transition: 0.5s all ease;
   -ms-transition: 0.5s all ease;
   -o-transition: 0.5s all ease;    */
}

#top_menu_wrap .top_menu > ul > li.current > a > span,
#top_menu_wrap .top_menu > ul > li.actived > a > span {
   display: block;
   background: #00a19c;
   width: 100%;
}

#top_menu_wrap .tmenu_sub {
   margin-top: 30px;
   text-align: center;
   width: 174px;
   height: 100%;
}

#top_menu_wrap .tmenu_sub li a {
   display: block;
   padding: 0;
   margin: 0 0 2px 0;
   height: 40px;
   color: #fff;
   line-height: 1.4;
   font-size: 1rem !important;
   font-weight: 400;
}

#top_menu_wrap .tmenu_sub li a:hover {
   display: block;
   color: #fff;
   font-weight: 700;
   /* background-color: rgba(255, 255, 255, 0); */
   height: 40px;
}

#tmenu li:hover,
.tmenu_sub:hover {
   background-color: #2e9975;
}

.menu_control_box {
   margin-top: 40px;
}
.pcLangSelectWrap a {
   font-size: 14px;
   font-weight: bold;
   color: #fff;
}
.pcLangSelectWrap a.on {
   color: #00ff80;
}
.pcMenuAllBtn {
}

.pc_menu_fix {
   min-height: auto !important;
}

.pc_menu_fix #pcSubMenu {
   display: block;
}
.pc_menu_fix #pcSubMenu {
   display: block;
}


.pc_menu_fix .head_in {
   position: fixed !important;
   top: 0px;
   width: 100% !important;
   transition: all 0.3s ease-in-out;
   min-height: 112px;
   z-index: 999990;
   background-color: #33ab83;
   border-radius: 0 0 16px 16px;
}
.pc_menu_fix.head_on .head_in .br_line {
   position: absolute;
   z-index: 400;
   width: 100%;
   background-color: #7accb1;
   height: 1px;
   top: 112px;
}

.pc_menu_fix .top_box {
   width: 100%;
   background: none;
}

.pc_menu_fix .top_box h1 {
   margin-top: 28px;
}

.pc_menu_fix .head_in #top_menu_wrap .top_menu {
   position: relative;
   overflow: hidden;
   visibility: hidden;
   height: 400px;
}

.pc_menu_fix .head_in #top_menu_wrap .top_menu > ul > li {
   float: left;
}

.pc_menu_fix .head_in #top_menu_wrap .top_menu > ul > li > a {
   display: block;
   width: 100%;
   padding: 0 30px;
   font-size: 20px;
   font-weight: 700;
   color: #fff;
}

.pc_menu_fix .head_in #top_menu_wrap .top_menu > ul > li > a > span {
   /* display: block;
   background: #33ab83;
   width: 0px;
   height: 2px;
   margin: 0 auto;
   transition: 0.5s all ease;
   -webkit-transition: 0.5s all ease;
   -moz-transition: 0.5s all ease;
   -ms-transition: 0.5s all ease;
   -o-transition: 0.5s all ease; */
}

.pc_menu_fix .head_in #top_menu_wrap .top_menu > ul > li.current > a,
.pc_menu_fix .head_in #top_menu_wrap .top_menu > ul > li.actived > a {
   color: #fff;
   font-weight: 700;
   border-bottom: 0px solid rgba(255, 255, 255, 1);
   transition: 0.5s all ease;
   -webkit-transition: 0.5s all ease;
   -moz-transition: 0.5s all ease;
   -ms-transition: 0.5s all ease;
   -o-transition: 0.5s all ease;
}

.pc_menu_fix .head_in #top_menu_wrap .top_menu > ul > li.current > a > span,
.pc_menu_fix .head_in #top_menu_wrap .top_menu > ul > li.actived > a > span {
   display: block;
   background: #00a19c;
   width: 100%;
}

.pc_menu_fix .head_in #top_menu_wrap .tmenu_sub {
   margin-top: 30px;
   text-align: center;
   height: 100%;
}

.pc_menu_fix .head_in #top_menu_wrap .tmenu_sub li a {
   display: block;
   color: #d5ede3;
   padding: 0;
   margin: 0 0 2px 0;
   height: 40px;
   line-height: 1.4;
   font-size: 1rem;
   font-weight: 400;
}

.pc_menu_fix .head_in #top_menu_wrap .tmenu_sub li a:hover {
   display: block;
   color: #fff;
   font-weight: 700;
   font-size: 1rem;
   background-color: rgba(255, 255, 255, 0);
   height: 40px;
}

.tel_addr {
   background-color: #00a19a;
   padding: 20px 0;
}

.longbg_tel .left_title {
   color: #ffffff;
   font-weight: 500;
   font-size: 18px;
   font-family: 'Noto Sans KR', sans-serif;
   padding-left: 10px;
}

.longbg_tel .left_tel {
   color: #ffffff;
   font-weight: 700;
   font-size: 27px;
   font-family: 'Noto Sans KR', sans-serif;
   padding-left: 20px;
}

@media (max-width: 600px) {
   .longbg_tel .left_title {
      font-size: 14px;
   }

   .longbg_tel .left_tel {
      font-size: 14px;
   }
}

.longbg_addr .right_title {
   color: #ffffff;
   font-weight: 500;
   font-size: 18px;
   font-family: 'Noto Sans KR', sans-serif;
   padding-left: 10px;
}

.longbg_addr .right_addr {
   color: #ffffff;
   font-weight: 700;
   font-size: 18px;
   font-family: 'Noto Sans KR', sans-serif;
   padding-left: 10px;
}

@media (max-width: 600px) {
   .longbg_addr .right_title {
      font-size: 14px;
   }

   .longbg_addr .right_addr {
      font-size: 14px;
   }
}

/* pc 상단 우측 사이드 전체메뉴 S */
.language-selector {
   position: absolute;
   right: 182px;
   top: 30px;
   font-size: 0;
   line-height: 0;
}

.language-selector li {
   position: relative;
   color: #010101;
   vertical-align: top;
   display: inline-block;
}

.language-selector li a {
   font-size: 13px;
   font-weight: 700;
   color: inherit;
   line-height: 28px;
   padding: 0 11px 0 12px;
   display: block;
   transition: color 0.25s ease-out;
}
.language-selector li a.on {
   color: #00ff80 !important;
}
.hoverable .language-selector li a:hover {
   color: #1498a3;
}

.language-selector li + li:before {
   position: absolute;
   left: 0;
   top: 10px;
   height: 11px;
   content: '';
   border-left: 1px solid currentColor;
   opacity: 0.3;
}

@media (max-width: 767px) {
   .language-selector {
      display: none;
   }
}

#menu {
   position: fixed;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   color: #000;
   background: #fff;
   overflow: hidden;
   visibility: hidden;
   z-index: 998;
   transform: translate3d(100%, 0, 0);
}

#menu:before {
   position: absolute;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   content: '';
   transform: scale3d(1.025, 1.025, 1);
}

#menu:before,
#menu .logo,
#menu .close {
   opacity: 0;
}

#menu.open {
   visibility: visible;
   transform: translate3d(0, 0, 0);
   transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}

#menu.open .logo,
#menu.open .close {
   opacity: 1;
   transition: opacity 0.5s 0.4s;
}

#menu.open:before {
   opacity: 1;
   transform: scale3d(1, 1, 1);
   transition: opacity 0.5s, transform 0.65s cubic-bezier(0.215, 0.61, 0.355, 1);
   transition-delay: 0.4s;
}

#menu.open .menu-list > li {
   opacity: 1;
   transform: translate3d(0, 0, 0);
   transition: opacity 0.5s, transform 0.65s cubic-bezier(0.165, 0.84, 0.44, 1);
}

#menu.open .menu-list > li:nth-child(1) {
   transition-delay: 0.4s;
}

#menu.open .menu-list > li:nth-child(2) {
   transition-delay: 0.435s;
}

#menu.open .menu-list > li:nth-child(3) {
   transition-delay: 0.47s;
}

#menu.open .menu-list > li:nth-child(4) {
   transition-delay: 0.505s;
}

#menu.open .menu-list > li:nth-child(5) {
   transition-delay: 0.54s;
}

#menu.open .menu-list > li:nth-child(6) {
   transition-delay: 0.575s;
}

#menu.close {
   opacity: 0;
   transition: opacity 0.15s;
}

#menu a {
   color: #000;
}

#menu .scroll {
   position: absolute;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   overflow: hidden;
   overflow-y: scroll;
   -webkit-overflow-scrolling: touch;
   overscroll-behavior: contain;
   
   
}

#menu .scroll {
   scrollbar-width: none;
   -ms-overflow-style: none;
   background: url('../images/bg_sitemap.jpg') no-repeat 70% bottom;
}

#menu .scroll::-webkit-scrollbar {
   width: 0;
}

#menu .menu-list {
   position: absolute;
   display: flex;
   left: 50%;
   top: 114px !important;
   width: 1300px;
   max-width: calc(100% - 120px);
   /* padding: 100px 0; */
   padding:0;
   transform: translateX(-50%);
   transition: top 0.65s cubic-bezier(0.455, 0.03, 0, 1);   
}

#menu .menu-list.child-opened > li:not(.open) > a {
   /* color: rgba(255, 255, 255, 0.3);    */
}

#menu .menu-list > li {
   position: relative;
   width: 260px;
   height: 793px; 
   font-size: 32px;
   font-weight: 700;
   border-left: 1px solid #dee2e6;
   padding-left: 25px;
   line-height: 1.25;   
   /* transform: translate3d(0, 100px, 0); */
}
#menu .menu-list > li:last-child {
   border-right: 1px solid #dee2e6;
}

#menu .menu-list > li > a {
   /* margin-left: -65px;
   padding: 0 30px 0 65px; */
   display: inline-block;
   /* transition: color 0.65s; */
}

#menu .menu-list > li > a:before,
#menu .menu-list > li > a:after {
   /* position: absolute;
   left: 0;
   top: 46px;
   width: 22px;
   height: 1px;
   content: '';
   background: currentColor; */

}

#menu .menu-list > li > a:after {
   /* transform: rotateZ(0deg);
   transition: transform 0.65s cubic-bezier(0.455, 0.03, 0, 1); */
}

#menu .menu-list > li:not(.open) .mask {
   /* height: 0 !important;
   opacity: 0; */
}

#menu .menu-list > li:not(.open) .mask > ul {
   /* visibility: hidden; */
}

#menu .menu-list > li:not(.open) > a:after {
   /* transform: rotateZ(-90deg); */
}

#menu .menu-list > li .mask {
   overflow: hidden;
   /* transition: opacity 0.3s 0.1s, height 0.65s cubic-bezier(0.455, 0.03, 0, 1); */
   margin-top: 30px;
}

#menu .menu-list > li .mask > ul {
   display: flex;
   flex-direction: column;
   font-size: 0;
   line-height: 0;
   padding-left: 3px;
   transition: visibility 0.65s;
   
}

#menu .menu-list > li .mask > ul > li {
   margin-bottom: 2rem;
}
#menu .menu-list > li .mask > ul > li > a {
   font-size: 20px;
   font-weight: 500;
   line-height: 1.5;
   color: #343a40;   
   /* vertical-align: top;
   padding-right: 80px;
   padding-bottom: 28px;
   display: inline-block; */
}
#menu .menu-list > li .mask > ul > li > a:hover {
   color: #33ab83;
   font-weight: 600;
}

#menu .menu-list > li .mask > ul > li ul {
   margin-right: -80px;
   padding-top: 0.5rem;
   padding-bottom: 0.5rem;   

}

#menu .menu-list > li .mask > ul > li ul li {
   font-size: 14px;
   font-weight: 400;
   line-height: 1.5;
}

#menu .menu-list > li .mask > ul > li ul li a {
   color: #495057;
}
#menu .menu-list > li .mask > ul > li ul li a:hover {
   color: #33ab83;
   font-weight: 600;
}

#menu .menu-list > li .mask > ul > li:last-child {
   padding-right: 0;
   padding-bottom: 0.25rem;
}

#menu .menu-list > li .mask > ul > li:last-child ul {
   margin-right: 0;
   padding-bottom: 0;
}

#menu .logo {
   position: absolute;
   left: 65px;
   top: 22px;
}

#menu .logo a {
   display: block;
}

#menu .logo img {
   width: 190px;
   padding: 10px;
   display: block;
}

#menu .close {
   position: absolute;
   right: 69px;
   top: 22px;
   width: 54px;
   height: 54px;
   text-indent: -999em;
   background: url('../images/icon-menu-close.png') no-repeat 50% 50%/27px auto;
   overflow: hidden;
}

@media (max-width: 767px) {
   #menu .menu-list {
      left: 60px;
      top: 0;
      width: auto;
      max-width: 100%;
      padding: 95px 0;
      transform: none;
   }

   #menu .menu-list > li {
      font-size: 30px;
      line-height: 70px;
      padding-left: 33px;
      transform: translate3d(0, 50px, 0);
   }

   #menu .menu-list > li > a {
      margin-left: -33px;
      padding: 0 0 0 33px;
   }

   #menu .menu-list > li > a:before,
   #menu .menu-list > li > a:after {
      top: 31px;
      width: 11px;
   }

   #menu .menu-list > li .mask > ul {
      padding-top: 2px;
      padding-left: 2px;
      padding-bottom: 28px;
   }

   #menu .menu-list > li .mask > ul > li {
      font-size: 16px;
      line-height: 48px;
      padding-right: 0;
      padding-bottom: 0;
      display: block;
   }

   #menu .menu-list > li .mask > ul > li ul {
      margin-right: 0;
      padding-bottom: 9px;
   }

   #menu .menu-list > li .mask > ul > li ul li {
      font-size: 14px;
      line-height: 34px;
   }

   #menu .menu-list > li .mask > ul > li:last-child {
      padding-right: 0;
      padding-bottom: 0;
   }

   #menu .menu-list > li .mask > ul > li:last-child ul {
      margin-right: 0;
      padding-bottom: 0;
   }

   #menu .logo {
      display: none;
   }



   #menu .language-selector li {
      color: #fff;
   }

   #menu .language-selector a {
      font-size: 11px;
      line-height: 23px;
      padding: 0 8px 0 11px;
   }

   #menu .language-selector li + li:before {
      top: 7px;
      height: 9px;
   }

   #menu .close {
      right: 7px;
      top: 13px;
      width: 40px;
      height: 40px;
      background-image: url('../img/menu-new/icon-menu-close-m.png');
      background-size: 18px auto;
   }
}
/* pc 상단 우측 사이드 전체메뉴 E */
