/************************************************/
/******************** 메뉴 S ********************/
/************************************************/
#hd_wrapper {
   display: block;
   position: fixed;
   height: 96px;
   left: 0;
   top: 0;
   width: 100%;
   z-index: 99;
   background-color: #ffffff;
}
.on #hd_wrapper {
   background-color: #ffffff;
}

.fixed #hd_wrapper {
   background-color: #ffffff;
}

#hd_wrapper > .inner {
   position: relative;
   display: flex;
   justify-content: space-around;
   align-items: center;
   height: 100%;
}
#logo {
   width: 400px;
   /* height: 56px; */
   display: block;
   cursor: pointer;
   align-self: center;
}
@media (max-width: 1200px) {
   #logo {
      width: 250px;
      margin-left: 1rem;
      
   }
}

#lnb {
   display: none;
}
#gnb_1dul > li {
   float: left;
   position: relative;
}
#gnb_1dul > li > a {
   display: block;
   padding: 35px 0px;
   font-size: 20px;
   font-weight: 700;
   height: 96px;
   text-align: center;
   /* width: 184px; */
   width: 150px;
}

.fixed #gnb_1dul > li > a {
   color: #000;
}

/* 서브메뉴 영역 */
#lnb .submenu {
   position: absolute;
   top: 96px;
   left: 0;
   width: 170px;
   text-align: center;
   padding: 0.5rem 0;
   z-index: 99 !important;
   width: 100%;
   display: none;
   height: 310px;
   border-top: 1px solid var(--bs-border-color);
}
#lnb .submenu li {
   margin-top: 1.5rem;
}
#lnb .submenu a {
   display: inline-block;
   color: #212529;
   font-weight: 500;
   height: 30px;
}
#lnb .submenu a:hover {
   color: #fffefe;
}
#lnb .submenu a:hover {
   font-weight: 900;
}

.lnb_bg {
   background: #fff;
   left: 0;
   position: absolute;
   width: 100%;
   top: 96px;
   height: 310px;;
   display: none;
   background: #f8f9fa;
}
.lnb_bg .inner {
   position: relative;
   height: 100%;
   border-top: 1px solid var(--bs-border-color);
}
/* 버튼 영역 S */
.btn-menu2 {
   height: 32px;
   width: 32px;
   background-image: url('/img/btn_navb.png');
   background-repeat: no-repeat;
   background-position: center center;
   margin-right: 1rem;
}

/* 버튼 영역 E */

a.a_smenu:link,
.fixed a.a_smenu:link {
   color: #212529;
   font-weight: 500;
}

a.a_smenu:visited,
.fixed a.a_smenu:visited {
   color: #212529;
   font-weight: 500;
}

a.a_smenu:hover,
.fixed a.a_smenu:hover {
   color: #fffefe;
   font-weight: 900;
}

a.a_smenu:active,
.fixed a.a_smenu:active {
   color: #fffefe;
   font-weight: 900;
}

a.a_smenu_on:link,
.fixed a.a_smenu_on:link {
   color: #fffefe !important;
   font-weight: 500;
}

a.a_smenu_on:visited,
.fixed a.a_smenu_on:visited {
   color: #fffefe !important;
   font-weight: 500;
}

a.a_smenu_on:hover,
.fixed a.a_smenu_on:hover {
   color: #fffefe !important;
   font-weight: 900;
}
a.a_smenu_on:hover::after,
.fixed a.a_smenu_on:hover::after {
   color: #fffefe !important;
   font-weight: 900;
   content: '';
   display: block;
   margin: 3px auto 0;
   width: 100%;
   height: 2px;
   background: #fff;
}

a.a_smenu_on:active,
.fixed a.a_smenu_on:active {
   color: #fffefe !important;
   font-weight: 900;
}

/* 메뉴 펼쳤을 경우 */
/* .on #logo {
   background-image: url('../images/logo_head.png');
} */

.on #gnb_1dul > li > a {
   color: #000;
   font-weight: 700;
   /* width: 184px; */
   width: 150px;
}
.on #gnb_1dul > li > a.a_menu_on,
.fixed .on #gnb_1dul > li > a.a_menu_on {
   background-color: var(--bs-main-bg-color);
}
.on #gnb_1dul > li > a.a_menu:link,
.fixed .on #gnb_1dul > li > a.a_menu:link {
   color: #000;
}
.on #gnb_1dul > li > a.a_menu:visited,
.fixed .on #gnb_1dul > li > a.a_menu:visited {
   color: #000;
}
.on #gnb_1dul > li > a.a_menu:hover,
.fixed .on #gnb_1dul > li > a.a_menu:hover {
   color: #fff;
}
.on #gnb_1dul > li > a.a_menu:active,
.fixed .on #gnb_1dul > li > a.a_menu:active {
   color: #000;
}
.on #gnb_1dul > li > a.a_menu_on:link,
.fixed .on #gnb_1dul > li > a.a_menu_on:link {
   color: #fff !important;
}
.on #gnb_1dul > li > a.a_menu_on:visited,
.fixed .on #gnb_1dul > li > a.a_menu_on:visited {
   color: #fff !important;
}
.on #gnb_1dul > li > a.a_menu_on:hover,
.fixed .on #gnb_1dul > li > a.a_menu_on:hover {
   color: #fff !important;
}
.on #gnb_1dul > li > a.a_menu_on:active,
.fixed .on #gnb_1dul > li > a.a_menu_on:active {
   color: #fff !important;
}

.allmenu {
   position: fixed;
   width: 100%;
   z-index: 999;
   background-color: #fff;
   right: 0;
   display: none;
   top: 96px;
}

.menu-sel_m {
   border-bottom: 1px solid #ddd;
   position: relative;
   height: 96px;
}
.menu-sel_m a {
   float: left;
   position: relative;
   top: 30px;
   left: 20px;
}
.gnb_m {
   border-top: 1px solid #dee2e6;
   width: 100%;
   padding: 0;
}

.gnb_m > li {
   border-bottom: 1px solid #dee2e6;
}

.gnb_m > li > a {
   font-weight: 700;
}

.gnb_m > li > a:after {
   background: url('../images/menu_on.png') right center no-repeat;
   background-size: 20px;
   content: '';
   position: absolute;
   width: 20px;
   height: 20px;
   right: 20px;
}

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

.gnb_m a {
   display: block;
}

.gnb_m .submenu {
   background: #f7f7f7;
   display: none;
}

.gnb_m .submenu a {
   padding: 0.5em 1em;
}

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


.btn-close img {
   display: block;
}

/* 로그인, 회원가입, sms 링크 S */
#btn_area {
   display: none;
}
#btn_area a i {
   font-size: 2rem;
   font-weight: 700;
   color: #2b2f32;
   vertical-align: middle;
}

.btn- -dee2e6 {
   border: 1px solid #dee2e6;
   border-radius: 15px;
   padding: 5px 8px;
   text-align: center;
   font-size: 0.875em;
   color: #2b2f32;
}
@media (max-width: 1200px) {
   .btn-menu2 {
      display: block;
   }
}
@media (min-width: 1200px) {
   #lnb {
      display: block;
   }
   .btn-menu2 {
      display: none;
   }
   #btn_area {
      display: block;
      width: 32px;
   }
}
/************************************************/
/******************** 메뉴 E ********************/
/************************************************/

/************************************************/
/**************** PC 전체 메뉴 S ****************/
/************************************************/
#gnb_all {
   position: fixed;
   width: 90vw;
   height: 75vh;
   z-index: 999;
   background-color: rgba(255, 255, 255, 1);
   top: 50%;
   left: 50%;
   padding: 1em;
   overflow-x: hidden;
   overflow-y: scroll;
   display: none;
   -webkit-box-sizing: border-box;
   transform: translate(-50%, -50%);
   box-sizing: border-box;
   overflow: hidden;
   box-shadow: 0 0 10px rgba(0, 0, 0, 0.65);
   max-width: 90%;
   max-height: 600px;
}
#gnb_all .gnb_al_ul:after {
   display: block;
   visibility: hidden;
   clear: both;
   content: '';
}
#gnb_all .gnb_al_ul {
   width: 100%;
   position: relative;
   top: 49px;
   display: flex;
   flex-direction: row;
   flex-wrap: wrap;
   height: 100%;
   overflow-y: auto;
   justify-content: space-between;
   align-content: flex-start;
   align-items: flex-start;
}
.gnb_all_back {
   position: fixed;
   width: 100vw;
   height: 100vh;
   background-color: rgba(0, 0, 0, 0.8);
   z-index: 100;
   top: 0;
}

#gnb_all .gnb_al_li {
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
}
#gnb_all .gnb_al_ul .gnb_al_li {
   flex-basis: max-content;
   flex-shrink: 0;
   flex-grow: 1;
   padding: 5px 10px;
}

#gnb_all .gnb_al_li .gnb_al_a {
   border-radius: 5px;
   background-color: rgba(255, 255, 255, 0.75);
   position: relative;
   border: 1px solid var(--bs-main-bg-color);
}
#gnb_all .gnb_al_li .gnb_al_a .gnb_img {
   display: none;
   width: 100%;
}
#gnb_all .gnb_al_li .gnb_al_a .gnb_img > img {
   display: block;
   /* max-width: 184px; */
   max-width: 150px;   
   width: 100%;
   height: auto;
   margin: 0 auto;
}
#gnb_all .gnb_al_li .gnb_al_a {
   font-size: 1.05em;
   display: block;
   position: relative;
   margin-bottom: 10px;
   font-weight: 400;
   color: #fff;
   padding: 0.6rem 0.5rem;
   background-color: var(--bs-main-bg-color);
}
#gnb_all .gnb_al_li .gnb_al_a .gnb_subject {
   font-size: 1.1rem;
   z-index: 1;
   width: 100%;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   text-align: center;
   letter-spacing: -0.1em;
   display: block;
}
#gnb_all .gnb_al_li li {
   padding-left: 10px;
   line-height: 2em;
   border-bottom: 1px solid #ddd;
}
#gnb_all .gnb_al_li li i {
   color: #fff;
}
#gnb_all .gnb_al_li li a {
   color: #444;
   display: block;
   text-align: left;
   font-size: 1rem;
}
#gnb_all .gnb_al_li li a:hover,
#gnb_all .gnb_al_li li a:focus {
   color: var(--bs-main-bg-color);
}
#gnb_all .gnb_close_btn {
   position: fixed;
   top: 0;
   right: 0px;
   background-color: transparent;
   display: block;
   width: 60px;
   height: 60px;
   overflow: hidden;
   padding: 0;
   line-height: 60px;
}
#gnb_all .gnb_close_btn > i {
   font-size: 2rem;
   color: #000;
   display: inline-block;
   font-weight: 700;
   width: 32px;
   height: 32px;
   line-height: 32px;
   padding: 0;
   vertical-align: top;
   margin: 0;
   position: relative;
   top: 14px;
   right: 14px;
}
#gnb_all .gnb_al_sub {
   position: relative;
}
#gnb_all .gnb_al_sub li {
   position: relative;
}
#gnb_all .gnb_al_sub .treeview-menu {
   display: none;
}
#gnb_all .gnb_al_sub .treeview > a {
   position: relative;
}
#gnb_all .gnb_al_sub .treeview > a:after {
   display: block;
   content: '\f3d0';
   position: absolute;
   top: 50%;
   right: 10px;
   -webkit-transform: translate(0, -50%);
   -ms-transform: translate(0, -50%);
   transform: translate(0, -50%);
   font-family: 'Ionicons';
   font-size: 0.8rem;
}
#gnb_all .gnb_al_sub .treeview.menu-open > a:after {
   content: '\f3d8';
}
.treeview-menu li {
   background-color: #eeeeee;
}
/************************************************/
/**************** PC 전체 메뉴 E ****************/
/************************************************/
