@charset "utf-8";

/* 
 * layout CSS Document
 */

/***********************************************************************************
header gnb
************************************************************************************/
/* pc */
#header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  width: 100%;
  transition: transform 0.3s ease;
  height: 72px;
  border-bottom: 1px solid #dfdfdf;
  background-color: #ffffffc2;
}
#header.hide {
  transform: translateY(-100%);
}

#header.show {
  transform: translateY(0%);
}
#header #logo {
  /* position:absolute; */
  top: 23px;
  left: 30px;
  z-index: 99; /* width: 150px; */ /* height: auto; */ /* margin-right: auto; */
}
#header #logo a {
}
#header #logo img {
  width: 100%;
  height: auto;
}
#header #gnb {
  margin-left: 100px;
  margin-right: auto;
}
#header #gnb .gnb-bg {
  position: absolute;
  width: 100%;
  height: 550px;
  top: 130px;
  left: 0;
  z-index: 99;
  background-color: #ffffff;
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.1);
  display: none;
}
#header #gnb:hover .gnb-bg {
  display: block;
}
#header #gnb:hover > ul > li .depth_2 {
  display: flex;
}
/* #header:hover { background:#000d30; } */
#header.act {
  /* background:#000d30; */
  top: -100%;
}
#header #gnb > ul {
  display: flex;
  gap: 70px;
}
#header #gnb > ul > li {
  display: inline-block;
  position: relative;
}
#header #gnb > ul > li:not(:first-child):before{content:'';position: absolute;width: 3px;height: 3px;background-color: #979797;border-radius: 100%;left: -35px;top: 50%;transform: translate(-50%,-50%);}
#header #gnb > ul > li > a {
  display: flex;
  /* color: #ffffff; */
  font-size: 1.375rem;
  font-weight: 500;
  /* padding: 0 39px; */
  color: #0000004d;
  height: 72px;
  justify-content: center;
  align-items: center;
  /* border-bottom: 3px solid transparent; */
  white-space: nowrap;
}
#header #gnb > ul > li.active > a,
#header #gnb > ul > li > a:hover {
  color: #000000;
}
/* #header #gnb > ul > li.active:after,
#header #gnb > ul > li:hover:after {
  color: #000000;
} */
#header #gnb > ul > li.active > a:after,
#header #gnb > ul > li > a:hover:after {
  content: "";
  position: absolute;
  height: 5px;
  width: 100%;
  background-color: #000000;
  bottom: 0;
  left: 0;
}
#header #gnb > ul > li .depth_2 {
  position: absolute;
  z-index: 99;
  width: auto;
  min-width: 7.813rem;
  top: 130px;
  left: 50%;
  transform: translateX(-50%);
  display: none;
  width: 100%;
  padding: 30px 7.5px 0;
}
#header #gnb > ul > li:hover .depth_2 {
  height: auto;
}
#header #gnb > ul > li:hover .depth_2 {
  display: block;
}
#header #gnb > ul > li .depth_2 > div {
  float: left;
  width: 50%;
  overflow: hidden;
}
#header #gnb > ul > li .depth_2 > div.img img {
  display: block;
  min-width: 100%;
}
#header #gnb > ul > li .depth_2 > div.img {
  position: relative;
  display: none;
}
#header #gnb > ul > li .depth_2 > div.img .txt {
  position: absolute;
  right: 0;
  top: 12%;
}
#header #gnb > ul > li .depth_2 > div.img .txt strong {
  display: block;
  color: #ffffff;
  font-size: 32px;
}
#header #gnb > ul > li .depth_2 > div.img .txt strong:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 270px;
  height: 2px;
  background: #fff;
  position: relative;
  top: -2px;
  margin-left: 55px;
}
#header #gnb > ul > li .depth_2 > div.txt {
  position: relative; /* display:flex; */
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%; /* padding:0 4em; */
  padding-top: 1.25rem;
}
#header #gnb > ul > li .depth_2 > div.txt ul {
  /* display:flex; */
  position: relative;
  flex-wrap: wrap;
  padding: 1.25rem 0;
  background-color: #4a5a84;
}
#header #gnb > ul > li:hover .depth_2 > div.txt ul:before {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  width: 1.875rem;
  border-bottom: 1.25rem solid #4a5a84;
  border-right: 0.938rem solid transparent;
  border-left: 0.938rem solid transparent;
}
#header #gnb > ul > li .depth_2 > div.txt ul li {
  text-align: center;
}
#header #gnb > ul > li .depth_2 > div.txt ul li a {
  position: relative; /* margin-left:10px; */
  display: block;
  color: #939fb9;
  padding: 0 0.313rem;
  transition: 0.6s; /* text-align: center; */
  height: 1.875rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1rem;
  white-space: nowrap;
}
#header #gnb > ul > li .depth_2 > div.txt ul li:hover a {
  color: #fff;
}
#header #gnb > ul > li .depth_2 > div.txt ul li a:before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  box-sizing: border-box; /* background:#fff; */
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -2.5px;
  opacity: 0;
  transition: 0.6s;
}
#header #gnb > ul > li .depth_2 > div.txt ul li:hover a:before {
  opacity: 1;
}
ul.gnb_al_ul2 {
  width: 100%;
}
li.gnb_al_li2 {
  margin-bottom: 20px;
}
li.gnb_al_li2 > a {
  font-size: 1.125rem;
  color: #000000;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 10px;
  line-height: 18px;
  height: 18px;
}
li.gnb_al_li2.active > a,
li.gnb_al_li2 > a:hover {
  color: #3bb3c2;
  text-decoration: underline;
}
ul.gnb_al_ul3 {
  background-color: #eef8f9;
  border-radius: 10px;
  padding: 10px 0;
}
li.gnb_al_li3 {
}
li.gnb_al_li3 > a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.875rem;
  font-weight: 400;
  color: #000000;
  line-height: 30px;
  height: 30px;
}
li.gnb_al_li3.active > a,
li.gnb_al_li3 > a:hover {
  text-decoration: underline;
}
.hd_wrap {
  width: 100%;
  max-width: 1640px;
  padding: 0 40px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}
/* mo */
#header .mo_menu {
  /* padding-top:100px; */
}
#header .mo_menu.on {
  /* padding-top:100px; */
}
#header .mo_menu button {
  /* background:none; */ /* border: none; */ /* right: 20px; */ /* top: 20px; */ /* position:absolute; */
}
#header .mo_menu {
  position: fixed;
  right: -100%;
  z-index: 999;
  background: #ffffff;
  width: 100%;
  height: 100vh;
  top: 0;
  transition: 0.5s;
  /* overflow-y:hidden; */
  display: flex;
  flex-direction: column;
}
#header .mo_menu.on {
  right: 0;
}
.mo_menu_hd {
  height: 64px;
  min-height: 64px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 40px;
  border-bottom: 1px solid #dfdfdf;
  background-color: #ffffff;
}
.mo_menu_hd .logo {
  /* width: 127px; */
  /* height: 50px; */
}
.mo_menu_hd .logo a {
}
.mo_menu_hd .logo img {
  width: 100%;
  height: auth;
}
button.menu-close-btn {
}
button.menu-close-btn svg {
}
.profile {
  background-color: #ffffff;
  margin: 20px 40px;
  border-radius: 20px;
  border: 1px solid #d8d8d8;
  display: flex;
  /* justify-content: space-between; */
  align-items: center;
  padding: 0 25px;
  /* width: 100%; */
  height: 100px;
  min-height: 100px;
}
.profile .profile_img {
  width: 50px;
  height: 50px;
  min-width: 50px;
  margin-right: 25px;
}
.profile .profile_img img {
  width: 100%;
  height: auto;
}
.profile .welcome_text {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  font-size: 1.25rem;
  font-weight: 400;
}
.profile .welcome_text a {
  text-decoration: underline;
}
.profile .welcome_text a[href*="logout.php"] {
  color: #7f7f7f;
  font-size: 0.875rem;
  font-weight: 400;
  text-decoration: underline;
}
.mo_menu_nav {
  border-top: 1px solid #ebebeb;
  background-color: #ffffff;
  overflow-y: auto;
  overflow-x: hidden;
  /* min-height: calc(100% - 250px); */
  /* padding-bottom: 50px; */
}
ul.mo_menu_ul {
  padding: 0px 40px;
}
li.mo_menu_li {
  padding: 20px 0px;
  padding-left: 26px;
  border-bottom: 1px solid #ececec;
  height: 105px;
  display: flex;
  align-items: center;
}
li.mo_menu_li > a {
  font-size: 1.5rem;
  font-weight: 500;
  display: flex;
  /* padding-left: 40px; */
  position: relative;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}
li.mo_menu_li > a:hover {
  text-decoration: underline;
}
li.mo_menu_li > a:before {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  border-radius: 100%;
  background-color: #000000;
  top: 50%;
  transform: translateY(-50%);
  left: 20px;
  display: none;
}
li.mo_menu_li > a:after {
  content: "";
  width: 40px;
  height: 40px;
  background-image: url(/img/ico-nav-arr.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: 0.3s;
  display: none;
}
li.mo_menu_li > a.active {
}
li.mo_menu_li > a.active:after {
  transform: rotate(180deg);
}
ul.mo_menu_ul2 {
  margin-top: 20px;
  display: none;
}
li.mo_menu_li2 {
  padding-left: 40px;
  margin-bottom: 30px;
  display: flex;
  flex-direction: column;
}
li.mo_menu_li2 > a {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 20px;
}
ul.mo_menu_ul3 {
  margin-top: 20px;
  background-color: #eef8f9;
  padding: 20px;
  border-radius: 10px;
}
li.mo_menu_li3 {
}
li.mo_menu_li3 > a {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 35px;
}
#header .mo_menu .gnb1 {
  padding: 0 20px;
  overflow-y: auto;
  overflow-x: hidden;
  height: 100%;
}
#header .mo_menu .gnb1 > ul > li > a {
  font-size: 1.31em;
  padding: 10px 0; /* color:#fff; */
  display: block;
  border-bottom: 2px solid #eeeeee77;
}
#header .mo_menu .gnb1 > ul > li > a::before {
  content: "";
  position: relative;
  display: inline-block;
  width: 5px;
  height: 5px;
  background: #eeeeee77;
  margin: 0 12px 3px 0px;
  transform: translate(0, -50%);
}
#header .mo_menu .gnb1 > ul > li > ul > li > a {
  font-size: 14px;
  padding: 10px;
  color: #939fb9;
  display: block;
  display: none;
}
#header .mo_menu .gnb1 > ul > li > ul > li > a {
  display: block;
}
#header .mo_menu .gnb1 > ul > li > ul {
  display: none;
  border-bottom: 1px solid #eeeeee77;
}
#header .mo_menu .gnb1 > ul > li > ul.on {
  display: block;
}
#header .mo_menu .gnb1 > ul > li > ul > li {
  position: relative;
  display: block;
  border-bottom: 1px dashed #eeeeee77;
}
#header .mo_menu .gnb1 > ul > li > ul > li:last-child {
  border-bottom: none;
}
#header .mo_menu .gnb1 > ul > li > ul > li > a::before {
  content: "";
  position: relative;
  display: inline-block;
  top: -4px;
  margin: 0 12px 0px 0px;
  width: 15px;
  height: 1px;
  background: #eeeeee77;
}

.mo_menu-link {
  display: flex;
  flex-direction: column;
  gap: 20px;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 46px;
  width: 100%;
}
.mo_menu-link > a {
  font-size: 1.125rem;
  font-weight: 500;
  min-width: 170px;
  display: flex;
  height: 50px;
  width: 400px;
  border-radius: 50px;
  align-items: center;
  justify-content: center;
  gap: 5px;
}
.mo_menu-link .top-link__white {
  color: #272727;
  background-color: #ffffff;
  border: 1px solid #272727;
}
.mo_menu-link .top-link__black {
  color: #ffffff;
  background-color: #000000;
}

.login-btn,
.ebook-btn,
.menu-btn,
.menu-close-btn {
  width: 40px;
  min-width: 40px;
  height: 40px;
  background-color: #ffffff;
  /* border-radius: 100%; */
  /* border: 1px solid #EFEFEF; */
  /* box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.1); */
  display: flex;
  align-items: center;
  justify-content: center;
}
.login-btn {
}
.menu-btn {
  margin-left: 15px;
  display: none;
}

.ebook-btn {
  background-color: #1e6d76;
  width: 100px;
  border-radius: 25px;
  color: #ffffff !important;
  margin-right: 15px;
}
.ebook-btn span.ebook-text {
  margin-left: 5px;
}

#hd_sch {
  margin-left: 40px;
  height: 50px;
  width: 350px;
  background-color: #ffffff;
  border: 1px solid #000000;
  border-radius: 50px;
}
#hd_sch > form {
  display: flex;
  height: 100%;
  width: 100%;
}
#sch_submit {
  height: 100%;
  width: 22px;
  background-image: url(/img/img-sch.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
#sch_stx {
  background-color: transparent;
  border: 0;
  width: calc(100% - 46px);
  padding-left: 24px;
  height: 100%;
  font-size: 0.875rem;
  font-weight: 400;
}
/*hd_title*/
.hd_title {
}
.hd_title_wrap {
  width: 100%;
  max-width: 1760px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 250px;
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;
  background-image: url(/img/img-hd-bg.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.hd_title h2.title {
  font-size: 3rem;
  font-weight: 900;
  line-height: 1;
}
.location {
  margin-top: 26px;
}
.location ul {
  display: flex;
  white-space: nowrap;
}
.location ul li {
  margin-right: 5px;
}
.location ul li a {
  font-size: 1rem;
  font-weight: 400;
}
.location ul li a svg {
}

/*top-link*/
#top-link {
  display: flex;
  gap: 20px;
}
#top-link > a {
  font-size: 1rem;
  font-weight: 500;
  min-width: 170px;
  display: flex;
  height: 38px;
  border-radius: 50px;
  align-items: center;
  justify-content: center;
  gap: 5px;
}
#top-link .top-link__white {
  color: #272727;
  background-color: #ffffff;
  border: 1px solid #272727;
}
#top-link .top-link__black {
  color: #ffffff;
  background-color: #000000;
  width: 197px;
}

/***********************************************************************************
footer
************************************************************************************/
footer {
  position: relative;
  display: block;
}
.gotop {
  position: absolute;
  z-index: 9;
  top: -76px;
  right: 40px;
  cursor: pointer;
  width: 38px;
  height: 38px;
  background-color: #000000;
  border-radius: 100%;
}
.gotop  > svg{
    width: 38px;
    height: 38px;
}
/*footer*/
footer {
  /* border-top: 1px solid #EBEBEB; */
  padding-top: 50px;
  padding-bottom: 100px;
  margin-top: 100px;
  background-color: #f2f2f2;
}
.ft_wrap {
  width: 100%;
  max-width: 1640px;
  padding: 0 40px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  /* align-items: center; */
}
.ft_wrap_ {
}
footer .logo {
  width: 124px;
  height: 43px;
  min-width: 124px;
  margin-right: 50px;
}
footer .logo img {
  width: 100%;
  height: auto;
}
footer .ft-cont {
  margin-left: 0;
  margin-right: auto;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2;
  margin-top: 20px;
  font-family: "Pretendard";
  color: #575757;
}
footer .ft-cont b {
  font-weight: 700;
}
.ft-link-title {
  font-family: "Pretendard";
  font-size: 1rem;
  font-weight: 700;
}
.ft-link {
  font-family: "Pretendard";
  margin-top: 10px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ft-link li {
}
.ft-link li a {
  font-size: 0.875rem;
  font-weight: 400;
  text-decoration: underline;
}
footer .top {
}
footer .top ul {
  display: flex;
}
footer .top li {
  padding-right: 14px;
  position: relative;
}
footer .top li:not(:first-child) {
  padding-left: 14px;
}
footer .top li:not(:first-child):before {
  content: "";
  position: absolute;
  height: 7px;
  width: 1px;
  border-left: 1px solid #ececec;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
footer .top a {
  font-size: 0.75rem;
  color: #7f7f7f;
  font-weight: 400;
  white-space: nowrap;
}
footer .bot {
  margin-top: 11px;
}
footer .bot .txt {
  font-size: 0.875rem;
  color: #a2a2a2;
  font-weight: 400;
}
footer .bot span {
}
footer .bot address {
}
footer .copy {
  font-size: 0.75rem;
  font-weight: 400;
  color: #aaaaaa;
  margin-top: 5px;
}
.ft-contact {
  display: flex;
  gap: 16px;
  margin-top: 20px;
}
.ft-contact li {
  font-size: 1rem;
  font-weight: 500;
  color: #575757;
  position: relative;
}
.ft-contact li:not(:first-child):before {
  content: "";
  width: 1px;
  height: 12px;
  position: absolute;
  background-color: #575757;
  top: 50%;
  left: -8px;
  transform: translateY(-50%);
}
.ft-contact li a {
}
.ft-contact li a:hover {
  text-decoration: underline;
}
footer select.ft-link {
  width: 180px;
  height: 40px;
  min-width: 180px;
  background: url(/img/img-select-arr.png) right no-repeat #ffffff;
  background-size: 40px;
  border: 1px solid #d8d8d8;
  border-radius: 5px;
  color: #7f7f7f;
  font-size: 0.875rem;
  font-weight: 500;
}

/*ft-float*/
#ft-float {position: fixed;bottom: 0;left: 0;width: 100%;background-color: #272727;border-top-right-radius: 30px;border-top-left-radius: 30px;z-index: 1;transition: 0.3s;}
.ft-float-wrap{
  width: 100%;
  height: 80px;
  max-width: 1640px;
  padding: 0 40px;
  margin: 0 auto;
  position: relative;
  display: flex;
  align-items: center;
}
#ft-float .ft-contact-tel {position: absolute;background-color: #EF3739;width: 230px;height: 60px;display: flex;justify-content: center;align-items: center;flex-direction: column;border-radius: 10px;top: -90px;right: 90px;}
#ft-float .ft-contact-tel:after{content:'';position: absolute; /* 빨간색 */background-image: url("data:image/svg+xml,%3Csvg width='28' height='19' viewBox='0 0 28 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.5328 17.5845C12.7303 18.9845 14.8949 18.9845 16.0924 17.5845L26.8992 4.94992C28.5642 3.00328 27.181 -8.2016e-05 24.6194 -8.2016e-05H3.00579C0.444205 -8.2016e-05 -0.939043 3.00327 0.725985 4.94991L11.5328 17.5845Z' fill='%23F03B3D'/%3E%3C/svg%3E%0A");background-repeat: no-repeat;background-position: center;background-size: contain;display: inline-block;width: 20px;height: 19px;bottom: -13px;}
.ft-contact-tel > p {font-size: 0.875rem;font-weight: 300;color: #ffffff;}
.ft-contact-tel > div {font-size: 1rem;color: #ffffff;}
.ft-contact-tel > div > b {
}

.ft-contact-form {width: 100%;}
.ft-contact-form .ft-arr-btn {position: absolute;background-color: #272727;top: -30px;left: 40px;width: 60px;height: 30px;border-top-right-radius: 20px;border-top-left-radius: 20px;display: flex;justify-content: center;align-items: flex-end;cursor: pointer;}
.ft-contact-form fieldset#ft-contact-aply {display: flex;align-items: center;}
.ft-contact-aply-title{
    font-size: 1.5rem;
    font-weight: 700;
    color: #ffffff;
    white-space: nowrap;
    margin-right: 60px;
    margin-left: 0;
}
fieldset#ft-contact-aply legend {}
fieldset#ft-contact-aply form {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
fieldset#ft-contact-aply input[type="text"] {width: 100%;max-width: 240px;height: 44px;border-radius: 10px;background-color: #494949;color: #ffffff;border-color: #818181;margin-right: 20px;min-width: 100px;}
fieldset#ft-contact-aply .agree{
    margin-left: 15px;
    margin-right: 15px;
}
fieldset#ft-contact-aply .agree label{color: #ffffff;font-size: 1.125rem;font-weight: 400;white-space: nowrap;}
fieldset#ft-contact-aply #f_ft_contact_form_submit {max-width: 280px;min-width: 100px;width: 100%;height: 44px;display: flex;justify-content: center;align-items: center;border-radius: 50px;background-color: #EF3739;margin-right: 0;margin-left: auto;font-size: 1.500rem;font-weight: 700;color: #ffffff;}

.contact-btn {
  display: none;
}
.contact-btn > a {
}

/***********************************************************************************
wrap
************************************************************************************/
.cont-wrap {
    width: 100%;
    max-width: 1640px;
    padding: 0 40px;
    margin: 0 auto;
}
.cont-wrap-inner {
    width: 100%;
    max-width: 990px;
    padding: 0 40px;
    margin: 0 auto;
}
.img-wrap img{
    width: 100%;
    height:auto;
}
/***********************************************************************************
tab
************************************************************************************/
nav.tab {
  margin-bottom: 50px;
}
nav.tab > ul {
  display: flex;
  gap: 10px;
  overflow: auto;
}
nav.tab > ul > li {
}
nav.tab > ul > li > a {
  font-size: 1.125rem;
  font-weight: 700;
  color: #51b9c7;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 90px;
  height: 40px;
  border-radius: 50px;
  border: 1px solid #51b9c7;
  padding: 0 15px;
  white-space: nowrap;
}
nav.tab > ul > li.active {
}
nav.tab > ul > li.active > a {
  color: #ffffff;
  background-color: #51b9c7;
}
.tab-content-wrap {
}
.tab-content > li {
  display: none;
  overflow: hidden;
}
.tab-content > li.active {
  display: block;
  /* 초기에는 보이지 않도록 설정 */
  animation: fadeInUp 0.3s ease-out forwards;
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(10px); /* 아래에서 위로 이동 */
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/***********************************************************************************
scroll
************************************************************************************/
.hd-info-box {
  padding: 30px 60px;
  border-radius: 20px;
  margin-bottom: 80px;
}
nav.scroll {
  display: flex;
  flex-direction: column;
  /* flex-wrap: wrap; */
}
nav.scroll.row4-col2 {
}
nav.scroll.row4-col2 ul {
  height: 165px;
}
nav.scroll.row4-col2 ul > * {
  /* flex: 0 0 25%; */
  width: calc(50% - 40px);
  /* flex-basis: calc(25% - 10px); */ /* 4등분 */
  /* height: calc(25% - 1/4*75px); */
}
nav.scroll.row4-col2 ul span.scroll-info {
}
nav.scroll.row4-col4 {
}
nav.scroll.row4-col4 ul {
  gap: 25px 0px;
}
nav.scroll.row4-col4 ul > * {
  /* width: 152px; */
}
nav.scroll.row4-col4 span.scroll-info {
}
nav.scroll.row2-col4 {
}
nav.scroll.row2-col4 ul {
  gap: 25px 0px;
  grid-template-rows: repeat(2, 1fr);
}
nav.scroll.row2-col4 ul > * {
  /* width: 152px; */
}
nav.scroll.row2-col4 span.scroll-info {
}

nav.scroll span.scroll-info {
  background-color: #ffffff;
  color: #737373;
  display: flex;
  height: 30px;
  min-height: 30px;
  padding: 0 18px;
  font-size: 0.875rem;
  font-weight: 400;
  border-radius: 40px;
  align-items: center;
  justify-content: center;
  width: auto;
  margin-left: 0;
  margin-right: auto;
  min-width: 262px;
  margin-bottom: 25px;
}
nav.scroll span.scroll-info svg {
  margin-right: 5px;
}
nav.scroll ul {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  width: 100%;
  gap: 25px 80px;
  height: auto;
  align-items: flex-start;
  height: 165px;
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(4, 1fr);
  gap: 10px;
  width: auto;
  max-height: 400px;
  height: auto;
  /* overflow-y: auto; */
}
nav.scroll ul.row8 {
  grid-template-rows: repeat(8, 1fr);
}
nav.scroll ul.horizontal {
  display: grid;
  grid-template-columns: repeat(4, 1fr); /* 4열 고정, 가로로 정렬 */
  grid-auto-flow: row; /* 가로 방향으로 먼저 채우기 */
  gap: 10px;
  width: 100%;
  max-height: 400px;
  align-items: flex-start;
  overflow-y: auto; /* 필요 시 스크롤 추가 */
}
nav.scroll ul.col4 {
  gap: 25px 0px;
  grid-template-rows: repeat(2, 1fr);
  padding-top: 3px;
}
nav.scroll ul li {
  font-size: 1.25rem;
  font-weight: 400;
  -webkit-text-stroke: 0.3px #3bb3c2;
  color: #000000;
  line-height: 1;
  cursor: pointer;
  white-space: nowrap;
}
nav.scroll ul li span {
  border-bottom: 1px solid #000000;
}

/***********************************************************************************
체크박스 & 라디오
************************************************************************************/
/*-- 공통 --*/
input[type="checkbox"],
input[type="radio"] {
  position: absolute;
  width: 0;
  height: 0;
  padding: 0;
  margin: 0;
  border: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type="checkbox"] + label,
input[type="radio"] + label {
  display: flex;
  align-items: center;
  font-size: 16px;
  font-weight: 400;
  color: #26282b;
  cursor: pointer;
  user-select: none;
}

input[type="checkbox"] + label::before,
input[type="radio"] + label::before {
  content: ""; /* border: 1px solid #9EA4AA; */
  margin-right: 8px;
  box-sizing: border-box;
  border-radius: 1px;
  width: 24px;
  height: 24px;
  border-radius: 100%;
}

input[type="checkbox"]:checked + label::before,
input[type="radio"]:checked + label::before {
  content: "";
  /* background: url(../../images/cmn/ico-chk.svg) no-repeat 50%; */
  /* border: 1px solid #454C53; */
  /* background-color: #1F1F1F; */
}

/*-- CHECK BOX --*/
input[type="checkbox"] + label {font-size: 0.875rem;}
input[type="checkbox"] + label::before {
  width: 24px;
  height: 24px;
  background-image: url(/img/ico-chk.svg);
  border-radius: 0;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
input[type="checkbox"]:checked + label::before {
  background-image: url(/img/ico-chk-checked.svg);
}
@media screen and ( max-width : 600px ) {
  input[type="checkbox"] + label::before,
  input[type="checkbox"]:checked + label::before {
    width: 20px;
    height: 20px;
  }
}
/* type */
.chkbox-red {
}
input[type="checkbox"].chkbox-red + label,
input[type="radio"].chkbox-red + label {
  color: #a7268f;
}
input[type="checkbox"].chkbox-red + label::before,
input[type="radio"].chkbox-red + label::before {
  border: 1px solid #a7268f;
}
input[type="checkbox"].chkbox-red:checked + label::before,
input[type="radio"].chkbox-red:checked + label::before {
  /* background: url(../../images/cmn/ico-chk-red.svg) no-repeat 50%; */
  border: 1px solid #a7268f;
}

.chkbox-s {
}
input[type="checkbox"].chkbox-s + label,
input[type="radio"].chkbox-s + label {
  font-size: 16px;
  font-weight: 500;
  color: #6d7278;
}
input[type="checkbox"].chkbox-s + label::before,
input[type="radio"].chkbox-s + label::before {
  width: 16px;
  height: 16px;
  margin-right: 12px;
}
input[type="checkbox"].chkbox-s:checked + label::before,
input[type="radio"].chkbox-s:checked + label::before {
  /* background: url(../../images/cmn/ico-chk-s.svg) no-repeat 50%; */
}

.chkbox-reverse {
}
input[type="checkbox"].chkbox-reverse + label,
input[type="radio"].chkbox-reverse + label {
  flex-direction: row-reverse;
  font-size: 16px;
  font-weight: 500;
  color: #26282b;
  margin-left: 10px;
}

input[type="checkbox"].chkbox-reverse + label::before,
input[type="radio"].chkbox-reverse + label::before {
  margin-right: 0;
  margin-left: 4px;
}

/*-- RADIO --*/
input[type="radio"] + label {
  /* color:#232323; */
}
input[type="radio"] + label::before {
  /* width:20px; */ /* height:20px; */ /* border-radius:50%; */
}

/* type */
.radio-02 input[type="radio"]:checked + label::after {
  left: 4px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
}

/***********************************************************************************
테이블
************************************************************************************/
.board_wrap {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  margin-top: 50px;
  /* position: relative; */
}
table {
  display: table;
  position: relative;
  width: 100% !important;
  table-layout: auto;
  line-height: 1.4;
  border-top: 2px solid #000000;
}
table thead th,
table thead td,
table tbody th,
table tbody td {
  border-style: solid;
  border-color: #d3d3d3 !important;
  border-width: 1px;
  padding: 10px;
  border-spacing: inherit;
  vertical-align: middle;
}
table tbody {
  border-top: 1px solid #d3d3d3;
}

table thead th *,
table thead td *,
table tbody th *,
table tbody td * {
  display: inline-block;
  vertical-align: middle;
}

table thead tr th:first-child,
table tbody tr td:first-child {
  padding-left: 20px;
}
table thead tr th:last-child,
table tbody tr td:last-child {
  padding-right: 20px;
}

table tbody td.subject {
  width: auto;
  text-align: left;
  font-weight: 400;
  white-space: nowrap;
  display: flex;
  align-items: center;
}
table tbody td.subject > a:not(.bo_cate_link) {
  display: inline-block;
  max-width: calc(100% - 35px);
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  vertical-align: middle; /* width: 100%; */
}
table tbody td.subject a.bo_cate_link {
  font-size: 1.125rem;
  font-weight: 700;
}
table tbody td.subject a.bo_cate_link:before {
  content: "[";
}
table tbody td.subject a.bo_cate_link:after {
  content: "]";
}
table tbody td.subject > a:hover {
  text-decoration: underline;
}
table tbody tr {
  background: #fff;
}
table tbody tr.is_notice {
  background: #f4f4f4;
}
table tbody tr:hover {
  /* background:#f8f8f8; */
}

.table_wrap {
  position: relative;
}
.table_wrap.scroll {
  overflow: auto;
}
.table_wrap .product_table tbody tr td:first-child,
.table_wrap .product_table thead tr th {
  background: #f7f7f7;
  font-weight: 600;
}

.bo_li {
  table-layout: fixed;
}
.bo_li thead th {
  padding: 12px 6px;
  font-weight: 700;
  height: 70px;
  border: 0; /* border-top: 2px solid #000000; */
  font-size: 1.125rem;
}
.bo_li tbody th,
.bo_li tbody td {
  height: 70px;
  line-height: 1;
  padding: 8px 6px;
  border-width: 0 0 1px 0 !important;
  text-align: center;
  vertical-align: middle;
  font-size: 1.125rem;
}
.bo_li tbody td .new {
  display: inline-block;
  position: relative;
  margin-left: 5px;
  font-size: 0;
}
.bo_li tbody td .new::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  background: url("../img/icon_new.svg") center no-repeat;
}

.bo_li .download,
.bo_li .num {
  /* color:#888; */
  width: 102px; /* padding-left: 40px; */
  font-weight: 700;
}
.bo_li .name {
  width: 150px;
  color: #878787;
}
.bo_li .date {
  width: 120px;
  color: #878787;
}
.bo_li .hit {
  width: 100px;
  color: #878787;
}
.notice_icon {
}
.new_icon {
  font-size: 0.875rem;
  font-weight: 700;
  color: #ffffff;
  background-color: #a40203;
  width: 45px;
  height: 21px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  margin-right: 10px;
}
.file_icon {
  width: 17px;
  min-width: 17px;
  height: 17px;
  background-image: url(/img/ico-file-tag.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  margin-left: 8px;
}
.image_icon {
  width: 17px;
  min-width: 17px;
  height: 17px;
  background-image: url(/img/ico-image-tag.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  margin-left: 8px;
}
ul.board_btn {
  position: absolute;
  right: 0;
  bottom: -75px;
  z-index: 1;
  display: flex;
  gap: 10px;
}
ul.board_btn li {
}
ul.board_btn li .write_btn {
  display: flex;
  min-width: 120px;
  height: 40px;
  border-radius: 50px;
  background-color: #42b5c3;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 1.125rem;
  font-weight: 700;
}
ul.board_btn li .btn_list {
  display: flex;
  min-width: 120px;
  height: 40px;
  border-radius: 50px;
  background-color: #f4f4f4;
  align-items: center;
  justify-content: center;
  color: #2b2b2b;
  font-size: 1.125rem;
  font-weight: 700;
}
ul.board_btn li .delete_btn {
  display: flex;
  min-width: 120px;
  height: 40px;
  border-radius: 50px;
  background-color: #c28e35;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 1.125rem;
  font-weight: 700;
}
ul.board_btn.btn_confirm {
  position: relative;
  bottom: auto;
  margin-top: 50px;
}
ul.board_btn.btn_confirm li {
  width: 100%;
}
ul.board_btn.btn_confirm .btn_submit {
  width: 100%;
  height: 60px;
  background-color: #42b5c3;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 40px;
  font-size: 1.5rem;
  font-weight: 700;
  color: #ffffff;
}

/*==========가로스크롤테이블=============*/
.scroll-x-wrap {
  overflow-x: auto;
  overflow-y: hidden;
}
.scroll-x-info {
}
.scroll-x-wrap table {
  width: 1200px !important;
}

/*==========tb1 : 일반 테이블1=============*/
table.tb1 {
  border-top: 0;
}
table.tb1 tbody {
  border-top: 0;
}
table.tb1 tbody tr {
  background: none;
}
table.tb1 th {
  border: 0;
  background-color: #f8f3f3;
  height: 50px;
  font-size: 1.125rem;
  font-weight: 700;
  color: #2b2b2b;
}
table.tb1 th.back-bold {
  background-color: #e6e3e3;
}
table.tb1 tbody td:first-child,
table.tb1 tbody td:last-child,
table.tb1 tbody td {
  padding: 10px;
  border: 0;
  text-align: center;
  height: 60px;
  border-bottom: 1px solid #d3d3d3;
  font-size: 1rem;
  font-weight: 400;
  color: #2b2b2b;
}

/* 등록된 게시물 없음 */
table.no_data tbody tr:hover {
  background: #fff;
}
.no_data_wrap {
  display: grid;
  place-items: center;
  padding: 9em 0;
}
.no_data_wrap p {
  padding-top: 50px;
  color: #9f9f9f;
}

/* 게시판 검색 */
.bo_top {
  position: relative; /* margin-bottom:1.2em; */
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 20px;
}
.bo_top::after {
  /* content:''; */
  display: block;
  clear: both;
}
.bo_top .search {
  width: 400px;
}
.bo_top .search .search_wrap {
  display: inline-block;
  width: 100%;
  max-width: 400px;
  height: 60px;
  line-height: 60px;
  background: #f4f4f4;
  vertical-align: top;
  border-radius: 40px;
}
.bo_top .search .search_wrap .search_input {
  display: flex;
  position: relative;
  width: 100%;
}
.bo_top .search.no_select .search_wrap .search_input {
  width: 100%;
}
.bo_top .search.no_select .search_wrap .search_input::before {
  content: none;
}
.bo_top .search.no_select .search_wrap .search_input button {
  top: -1px;
}
.bo_top .search .search_wrap::after,
.bo_top .search .search_wrap .search_input::after {
  /* content:''; */
  display: block;
  clear: both;
}
.bo_top .search .search_wrap .search_input::before {
  content: "";
  position: absolute;
  top: 30%;
  left: 2px;
  width: 1px;
  height: 40%;
  background: #e6e6e6;
}
.bo_top .search .search_wrap .search_input input {
  /* float:left; */
  width: calc(100% - 60px);
  height: 60px;
  line-height: 60px;
  background: transparent;
  border: 0;
  padding-left: 30px;
  font-size: 1.125rem;
  font-weight: 400;
  color: #2b2b2b;
}
.bo_top .search .select_wrap {
  float: left;
}
.bo_top .search select {
  height: 48px;
  line-height: 48px;
}
.bo_top .search button {
  position: relative;
  width: 60px;
  height: 60px;
}
.bo_top .search button span {
  display: inline-block;
  font-size: 0;
}
.bo_top .search button span::before {
  content: "";
  display: inline-block;
  position: relative;
  top: -1px;
  width: 21px;
  height: 21px;
  background: url(/img/ico-sch.svg) center no-repeat;
}
.bo_top .post {
  /* float:left; */ /* margin-top:15px; */
}
.bo_top .post strong,
.bo_top .post span {
  color: #2b2b2b;
  font-size: 1.125rem;
  font-weight: 700;
}

/***********************************************************************************
갤러리 게시판
************************************************************************************/
.gallery_li {
  display: grid;
  grid-auto-flow: dense;
  height: fit-content;
  grid-column-gap: 2.5rem;
  grid-row-gap: 5rem;
}
.gallery_li.col01 {
  grid-template-columns: repeat(1, 1fr);
  grid-row-gap: 1rem;
}
.gallery_li.col02 {
  grid-template-columns: repeat(2, 1fr);
}
.gallery_li.col03 {
  grid-template-columns: repeat(3, 1fr);
}
.gallery_li.col04 {
  grid-template-columns: repeat(4, 1fr);
}

.gallery_li .li {
  position: relative;
  grid-column: auto/span 1;
}
.gallery_li .li a {
  display: block;
}
.gallery_li .li a:focus .txt .tit,
.gallery_li .li a:hover .txt .tit {
  text-decoration: underline;
}
.gallery_li .li img {
  display: block;
  width: auto;
  max-width: 100%; /*width:100%;*/
}
.gallery_li .li .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.gallery_li.col03 .li .img_wrap {
  padding: 2em;
  background: #f2f3f7;
}
.gallery_li.col03 .li .img {
  overflow: hidden;
  position: relative;
  width: 100%;
  padding-top: 56%;
  height: auto;
}
.gallery_li.col03 .li .img img {
  margin: 0 auto;
  object-fit: contain;
  height: 100%;
}
.gallery_li.col03 .li .img.video::before,
.gallery_li.col03 .li .img.video::after {
  content: "";
  position: absolute;
}
.gallery_li.col03 .li .img.video::before {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 54px;
  height: 54px;
  background: url(../images/user/play02.png) no-repeat;
  z-index: 2;
}
.gallery_li.col03 .li .img.video::after {
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  background: rgba(0, 0, 0, 0.3);
}

/* .gallery_li.col03 .li .img.data { overflow:visible; } */
.gallery_li.col03 .li .img.data img {
  top: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  max-height: 100%; /*box-shadow:11px 11px 10px 0 rgb(0 0 0 / 5%);*/
}

.gallery_li.col03 .li .img.no_img img {
  max-width: 60px;
  transform: translate(-50%, -55%);
}
.gallery_li.col03 .li .img.no_img span {
  margin-top: 30px;
  font-size: 0.9em;
}

/***********************************************************************************
게시판 페이징
************************************************************************************/
.pagination {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 35px auto 0;
  text-align: center;
}
a.pass {
  position: relative;
  display: flex;
  width: 40px;
  height: 40px;
  line-height: 1;
  justify-content: center;
  align-items: center;
  background-color: #f4f4f4;
  border-radius: 100%;
  color: #2b2b2b;
  font-size: 1.125rem;
  font-weight: 700;
}
a.page_group {
  display: flex;
  width: 40px;
  height: 40px;
  line-height: 1;
  justify-content: center;
  align-items: center;
  background-color: #f4f4f4;
  border-radius: 100%;
  color: #2b2b2b;
  font-size: 1.125rem;
  font-weight: 700;
  margin: 0 2.5px;
}
a.page_group.current.active,
a.page_group:hover {
  text-decoration: underline;
}
.page_control {
  display: flex;
  align-items: center;
  vertical-align: middle;
}
.page_control a:first-child {
  margin-left: 10px;
}
.page_control a:last-child {
  margin-right: 10px;
}
/*.pass.first{
    margin-right: 17.5px;
}
.pass.last{
    margin-left: 17.5px;
}*/
.pass.first:before {
  content: "<<";
}
.pass.last:before {
  content: ">>";
}

.pass.prev {
  margin-right: 17.5px;
}
.pass.next {
  margin-left: 17.5px;
}
.pass.prev:before {
  content: "<";
}
.pass.next:before {
  content: ">";
}

.page_control .last,
.page_control .next,
.page_control .prev,
.page_control .first {
  margin: 0 3px;
}

.page_control .last:before,
.page_control .next:before,
.page_control .prev:before,
.page_control .first:before {
  content: "";
  display: inline-block;
  position: absolute;
  vertical-align: middle;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.page_control .first::before {
  width: 14px;
  height: 16px;
  background: url(../img/page_first.svg) center no-repeat;
}
.page_control .next::before {
  width: 9px;
  height: 16px;
  background: url(../img/page_next.svg) center no-repeat;
}
.page_control .prev::before {
  width: 9px;
  height: 16px;
  background: url(../img/page_prev.svg) center no-repeat;
}
.page_control .last::before {
  width: 14px;
  height: 16px;
  background: url(../img/page_last.svg) center no-repeat;
}

/***********************************************************************************
게시판 팝업 및 파일
************************************************************************************/
.bo_download {
  width: 50px;
  height: 50px;
  border: 1px solid var(--c01);
  border-radius: 50%;
  font-size: 0;
  background: var(--c01);
}
.bo_download::before,
.bo_preview::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 15px;
}
.bo_download::before {
  background: url(../img/icon_down.svg) no-repeat;
}

/***********************************************************************************
게시판 view
************************************************************************************/
.bo_v {
  position: relative;
}
.bo_v .head {
  /* border-top:2px solid #1E2633; */ /* border-bottom:1px solid #B1B2B5; */ /* padding:2.50em 0.63em; */
}
.bo_v .field_cont.date {
  color: #888888;
}
.bo_v .bo_v_atch {
  padding: 1.56em 0.63em;
  border-bottom: 1px solid #b1b2b5;
}

.bo_v p.subject {
  font-size: 1.75rem;
  color: #2b2b2b;
  font-weight: 700;
}
.bo_v .head .head_field {
  margin-top: 30px;
  border-top: 2px solid #000000;
  display: flex;
  background-color: #f4f4f4;
  height: 50px;
  justify-content: flex-end;
  align-items: center;
  padding: 0 20px;
  gap: 19px;
}
.bo_v ul.bo_info {
  width: 100%;
}
.bo_v ul.bo_info > li {
  display: flex;
  align-items: center;
  border-top: 1px solid #e5e5e5;
}
.bo_v ul.bo_info > li::after {
  content: "";
  display: block;
  clear: both;
}
.bo_v ul.bo_info > li:last-child {
  border-bottom: 1px solid #cdcdcd;
}
.bo_v ul.bo_info > li .field_name,
.bo_v ul.bo_info > li .field_cont {
  padding: 12px;
}
/* .bo_v ul.bo_info > li .field_name { width:150px; vertical-align:middle; } */
.bo_v ul.bo_info > li .field_cont {
  width: calc(100% - 150px);
}
.bo_v ul.bo_info > li .field_cont.date {
  letter-spacing: 0.02em;
}

.bo_v ul.bo_info .info_file li {
  margin-bottom: 5px;
}
.bo_v ul.bo_info .info_file li:last-child {
  margin-bottom: 0;
}
.bo_v ul.bo_info .info_file p {
  display: inline-block;
  margin-right: 15px;
  word-break: break-all;
}
.bo_v ul.bo_info .info_file .file_btn_wrap {
  display: inline-block;
}

.bo_v .v_cont {
  padding: 5em 0.63em;
  color: #1e2633; /* border-bottom:1px solid #cdcdcd; */
}
.bo_v .v_cont::after {
  content: "";
  display: block;
  clear: both;
}
.bo_v .view_image {
  display: inline-block;
}
.bo_v .v_cont .video_wrap {
  max-width: 600px;
  margin: 0 auto;
}
.bo_v .v_cont .iframe {
  position: relative;
  width: 100%;
  height: auto;
  padding-bottom: 56.25%;
  margin: 0 auto;
}
.bo_v .v_cont .iframe iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.bo_v .v_cont img {
  display: block;
  max-width: 100% !important;
  height: auto !important;
}

.bo_v .field_cont .info_file {
  position: relative;
  display: flex;
  justify-content: space-between;
  overflow: hidden;
  align-items: center;
}
.bo_v .field_cont .info_file .left {
  position: relative;
}
.bo_v .field_cont .info_file .right {
  position: relative;
  cursor: pointer;
  text-align: center;
  background: #303e63;
  color: #fff;
}
.bo_v .field_cont .info_file .right button {
  margin: 18px 30px;
}
.bo_v .field_cont .info_file .right button::after {
  content: "";
  position: relative;
  display: inline-block;
  margin-left: 8px;
  width: 13px;
  height: 13px;
  background: url("../img/icon_link01.svg") no-repeat center;
}

.bo_v .field_cont .info_file .left li {
  padding-bottom: 5px;
}
.bo_v .field_cont .info_file .left li span {
  position: relative;
  color: #888;
}
.bo_v .field_cont .info_file .left li a {
  position: relative;
  color: #1d1f22;
}
.bo_v .field_cont .info_file .left li a::after {
  content: "";
  position: relative;
  display: inline-block;
  margin: 0 0 0 8px;
  top: 1px;
  width: 17px;
  height: 15px;
  background: url("../img/icon_down_small.svg") no-repeat center;
}
.bo_v .field_cont .info_file .left li span::after {
  content: "";
  position: relative;
  display: inline-block;
  margin: 0px 15px;
  top: 1px;
  width: 1px;
  height: 15px;
  background: #d1d5e3;
}

.bo_v .field_cont .info_file .left li:hover a {
  text-decoration: underline;
}

.btn_group {
  position: relative;
  display: flex;
  justify-content: space-between;
  padding: 2.5em 0;
}
.btn_next > p,
.btn_prev > p {
  position: relative;
  text-transform: uppercase;
  font-size: 1.13em;
  color: #c6c6c6;
}
.btn_next {
  padding-left: 30px;
}
.btn_prev {
  padding-right: 30px;
}
.btn_next::after {
  content: "";
  width: 9px;
  height: 15px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  display: inline-block;
  background: url("../img/icon_next.svg") no-repeat center;
}
.btn_prev::after {
  content: "";
  width: 9px;
  height: 15px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  display: inline-block;
  background: url("../img/icon_prev.svg") no-repeat center;
}
.btn_list {
}
.btn_list p {
  color: #fff;
}

.btn_next p {
  position: relative;
  width: 100%;
}
.btn_next:hover p,
.btn_prev:hover p {
  color: #000d30;
  font-weight: 600;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.btn_next p::before,
.btn_prev p::before {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 0;
  height: 2px;
  background: #1e2633;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.btn_next:hover p::before,
.btn_prev:hover p::before {
  width: 100%;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.btn_next:hover::after {
  background: url("../img/icon_next_active.svg") no-repeat center;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.btn_prev:hover::after {
  background: url("../img/icon_prev_active.svg") no-repeat center;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.bo_v .v_cont table thead th {
  border-width: 1px !important;
}
.bo_v .v_cont .bo_li tbody td {
  border-width: 0 1px 1px 1px !important;
}
.bo_v .v_cont table {
  width: auto;
  border-collapse: collapse !important;
  font-size: 0.941em;
}

/* ckeditor 단축키 */
.cke_sc {
  margin: 0 0 5px;
  text-align: right;
}
.btn_cke_sc {
  display: inline-block;
  padding: 0 10px;
  height: 23px;
  border: 1px solid #ccc;
  background: #fafafa;
  color: #000;
  text-decoration: none;
  line-height: 1.9em;
  vertical-align: middle;
  cursor: pointer;
}
.cke_sc_def {
  margin: 0 0 5px;
  padding: 10px;
  border: 1px solid #ccc;
  background: #f7f7f7;
  text-align: center;
}
.cke_sc_def dl {
  margin: 0 0 5px;
  text-align: left;
  zoom: 1;
}
.cke_sc_def dl:after {
  display: block;
  visibility: hidden;
  clear: both;
  content: "";
}
.cke_sc_def dt,
.cke_sc_def dd {
  float: left;
  margin: 0;
  padding: 5px 0;
  border-bottom: 1px solid #e9e9e9;
}
.cke_sc_def dt {
  width: 20%;
  font-weight: bold;
}
.cke_sc_def dd {
  width: 30%;
}

/***********************************************************************************
tipbox
txtbox
text
************************************************************************************/
.lable {
  position: relative;
  margin-bottom: 30px;
  display: block;
}
.lable span:first-child {
  position: relative;
  padding: 0.8em 1.9em;
  border-radius: 0 0 20px 0px;
  background: #596482;
  color: #fff;
}
.lable span:first-child::after {
  content: "";
  position: absolute;
  bottom: -1px;
  right: 0;
  width: 20px;
  height: 23px;
  background: url("../img/lable.png") no-repeat center;
}
.lable span:last-child {
  position: relative;
  padding: 0em 1em;
  font-size: 20px;
}

.tip_box1 {
  position: relative;
  display: block;
  background: #f2f3f7;
  padding: 30px;
}
.tip_box1 p {
  color: #4a4a4a;
}
.tip_box1 strong {
  margin-bottom: 15px;
  position: relative;
  display: inline-block;
  color: #000;
  border-bottom: 3px solid #000;
  font-size: 1.13em;
  font-weight: 700;
}
.tip_box1 b {
  font-weight: 600;
  color: #4a5a84;
}
.tip_box1 em {
  text-decoration: underline;
  color: #4a5a84;
}

.tip_box1 ul .tip_box1 ul li {
  position: relative;
  display: block;
  margin: 5px !important;
}
.tip_box1 ul li::before {
  content: "";
  position: relative;
  display: inline-block;
  top: -5px;
  margin-right: 8px;
  width: 14px;
  height: 1px;
  background: #4a4a4a;
}
.tip_box1 ul li.tit {
  font-weight: 600;
  color: #000d30;
  position: relative;
  display: inline-block;
  margin-bottom: 8px;
}
.tip_box1 ul li.tit::before {
  display: none;
}

.tip_box1 .txt {
  border-radius: 10px;
  margin-top: 8px;
  position: relative;
  background: #fff;
  padding: 22px;
}
.tip_box1 .txt .tit {
  font-weight: 600;
  margin-bottom: 5px;
  color: #000;
}
.tip_box1 .txt p {
  color: #888;
}

.tip_box2 {
  position: relative;
  text-align: center;
}
.tip_box2 p {
  position: relative;
  display: inline-block;
  font-size: 1.2em;
  font-weight: 600;
  color: #fff;
  padding: 10px 30px;
  border-radius: 50px;
  background: #000d30;
  margin-bottom: 20px;
}
.tip_box2 ul {
  position: relative;
  display: block;
  text-align: left;
  border: solid #f4f5fb;
  border-width: 4px 0 4px 0;
  padding: 2em;
}
.tip_box2 ul li {
  display: flex;
  color: #4a4a4a;
  padding-bottom: 10px;
}
.tip_box2 ul li:last-child {
  padding-bottom: 0;
}
.tip_box2 ul li > span {
  position: relative;
  padding: 4px 0;
  text-align: center;
  display: inline-block;
  width: 30px;
  height: 30px;
  background: #303e63;
  color: #fff;
  margin-right: 15px;
  font-weight: 600;
  font-size: 13px;
  text-transform: capitalize;
}

.tip_box3 {
  position: relative;
  display: block;
  border: 3px solid #f2f3f7;
  border-width: 3px 0 3px 0;
  padding: 2em 0em;
}
.tip_box3 p {
  font-weight: 18px;
}

.h4_wrap {
  position: relative;
  display: inline-block;
  margin: 40px 0 15px 0;
}
.h4_wrap h4 {
  font-size: 25px;
  color: #1e2633;
  font-weight: 700;
}
.h4_wrap h4.txt1::before {
  content: "";
  position: relative;
  display: inline-block;
  margin-right: 10px;
  width: 21px;
  height: 24px;
  background: url("../img/icon_h4.png") no-repeat center;
}
.h4_wrap h4.txt2::before {
  content: "";
  top: 3px;
  position: relative;
  display: inline-block;
  margin-right: 10px;
  width: 5px;
  height: 24px;
  background: #000d30;
}

.img_box {
  position: relative;
  margin: 0 auto;
  padding: 4em;
  margin-bottom: 30px;
  display: flex;
  align-items: center;
  justify-content: center !important;
  width: 100%;
  height: auto;
  border: 1px solid #bdbdbd;
  border-radius: 30px;
}
.img_box span.cert {
  -webkit-box-shadow: 5px 5px 15px 5px rgba(220, 220, 220, 0.26);
  box-shadow: 5px 5px 15px 5px rgba(220, 220, 220, 0.26);
  z-index: 2;
  color: #fff;
  text-align: center;
  border-radius: 50%;
  background: linear-gradient(
    344deg,
    rgba(133, 130, 102, 1) 0%,
    rgba(183, 172, 48, 1) 100%
  );
  position: absolute;
  top: 2em;
  right: 2em;
  width: 90px;
  height: 90px;
}
.img_box span.cert strong {
  font-weight: 600;
  line-height: 90px;
}
.img_box img {
  position: relative;
  max-width: fit-content;
  width: 100%;
}

.txt_box {
  position: relative;
  text-align: center;
  margin-bottom: 40px;
}
.txt_box p {
  position: relative;
  display: inline-block;
  color: #fff;
  border-radius: 20px;
  text-align: center;
  padding: 8px 20px;
  background: #303e63;
}

.info_wrap {
  position: relative;
  display: block;
  border: 2px solid #000d30;
  border-width: 2px 0px 2px 0px;
}
.info_wrap .info_box {
  display: flex;
  width: 100%;
  padding: 1em;
  border-bottom: 1px solid #888888;
}
.info_wrap .info_box .right {
  position: relative;
  display: inline-block;
  width: 30%;
}
.info_wrap .info_box .right .tit {
  font-size: 1.2em;
  font-weight: 600;
  color: #000d30;
}

.info_wrap .info_box .left {
  width: calc(100% - 20%);
}
.info_wrap .info_box .left ul {
  margin-bottom: 15px;
}
.info_wrap .info_box .left ul:last-child {
  margin-bottom: 0px;
}
.info_wrap .info_box .left ul li.li {
  padding-bottom: 5px;
  color: #4a4a4a;
}
.info_wrap .info_box .left ul li.li::before {
  content: "";
  position: relative;
  display: inline-block;
  top: -5px;
  margin-right: 8px;
  width: 14px;
  height: 1px;
  background: #888;
}
.info_wrap .info_box .left ul li.li p {
  color: #6a6a6a;
  margin-left: 22px;
  font-size: 15px;
  padding: 3px 0;
}
.info_wrap .info_box .left ul li.li p:last-child {
  padding-bottom: 0px;
}

.info_wrap .info_box .left ul li.tit {
  color: var(--c01);
  font-size: 1.1em;
  font-weight: 600;
  padding-bottom: 8px;
}
.info_wrap .info_box .left ul li.tit::before {
  content: "";
  width: 5px;
  height: 5px;
  top: -4px;
  margin-right: 15px;
  position: relative;
  display: inline-block;
  background: #000d30;
}
.info_wrap .info_box .left ul li.tit::before {
  content: "";
  width: 5px;
  height: 5px;
  top: -4px;
  margin-right: 15px;
  position: relative;
  display: inline-block;
  background: #000d30;
}

/* .item_box {flex:1;} */
/* .item_box .label{max-width: calc(100% - 6em);} */
.item_box {
  margin: 5em 0 2em 0;
  text-align: center;
}
.item_box .label {
  background: #000d30;
  top: -50px;
  border: 7px solid #fff;
  text-align: center;
  color: #fff;
  font-size: 1.1em;
  font-weight: 600;
  padding: 1em 2.5em;
  display: inline-flex;
  margin: auto;
  position: relative;
  justify-content: center;
}

.item_box .txt {
  padding: 5em;
  border-radius: 10px;
  background: #f4f5fb;
  margin-top: -85px;
  word-break: keep-all;
}
.item_box .txt img {
  position: relative;
  max-width: fit-content;
  width: 100%;
}
.item_box .txt ul {
  position: relative;
  display: flex;
}
.item_box .txt ul li {
  flex: 1; /*height:100%;*/
  min-height: auto;
  background: #fff;
  padding: 2em;
  margin: 0 0 20px 20px;
  border-radius: 20px;
}
.item_box .txt ul li strong.tit {
  position: relative;
  display: block;
  border-radius: 5px;
  background: #303e63;
  padding: 1em;
  color: #fff;
  margin-bottom: 15px;
  font-weight: 600;
}
.item_box .txt ul li p {
  text-align: left;
}
.item_box .txt ul li p::before {
  content: "";
  width: 3px;
  height: 3px;
  top: -3px;
  background: #303e63;
  position: relative;
  display: inline-block;
  margin-right: 10px;
}

.download_btn {
  /*margin-bottom:50px;*/
}
.download_btn li {
  position: relative;
  display: inline-block;
  margin-bottom: 6px;
  padding: 10px 25px;
  border: 1px solid #1d1f22;
}
.download_btn li span {
  position: relative;
  color: #888888;
}
.download_btn li a {
  position: relative;
  color: #1d1f22;
}
.download_btn li a::after {
  content: "";
  position: relative;
  display: inline-block;
  margin: 0 0 0 8px;
  top: 1px;
  width: 17px;
  height: 15px;
  background: url("../img/icon_down_small.svg") no-repeat center;
}
.download_btn li span::after {
  content: "";
  position: relative;
  display: inline-block;
  margin: 0px 15px;
  top: 3px;
  width: 1px;
  height: 15px;
  background: #d1d5e3;
}
.download_btn li:hover a {
  text-decoration: underline;
}

.important p {
  padding-bottom: 7px;
  font-size: 0.9em;
  color: #6a6a6a;
}
.important p::before {
  content: "";
  top: 3px;
  margin-right: 8px;
  width: 17px;
  height: 17px;
  position: relative;
  display: inline-block;
  background: url("../img/icon_important.svg") no-repeat center;
}

/***********************************************************************************
  layer popup 
************************************************************************************/
.close_popup {
  width: 100%;
  padding: 0.8em;
  border-radius: 3px;
}
.not_scroll {
  overflow: hidden !important;
  width: 100%;
  height: 100%;
  min-height: 100%;
  touch-action: none;
}

.popup_wrap {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9;
}
.popup_wrap.active {
  display: block;
}
.popup_wrap .layer_bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
}

.popup_wrap .popup {
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 94%;
  max-width: 400px;
  min-width: 320px;
  height: auto;
}
.popup p.title {
  display: block;
  padding: 0.5em 0.8em;
  font-size: 1.5em;
  color: #000000;
}
.popup:focus {
  outline: none;
}
.popup .btngroup {
  margin-top: 0;
  max-width: 100%;
  padding: 0.8em;
  border-top: 1px solid #e5e5e5;
}
.popup_cont {
  border-radius: 5px;
  background: #fff;
}
.popup_cont .cont {
  display: block; /*display:flex; justify-content:center; align-items:center;*/
  padding: 2em 1.5em;
  border-top: 1px solid #e5e5e5;
  text-align: center;
}
.popup_cont .cont img {
  margin: 0 auto;
  width: 100%;
  height: auto;
  max-width: fit-content;
}
.popup.nontitle {
  border-radius: 0;
}
.popup.nontitle .popup_cont .cont {
  border-top: 0;
}
.popup .btn_close {
  position: absolute;
  width: 50px;
  height: 50px;
  top: -60px;
  right: -15px;
  text-indent: -9999px;
}
.popup .btn_close::before,
.popup .btn_close::after {
  content: "";
  position: absolute;
  right: 30%;
  top: 50%;
  width: 30px;
  height: 2px;
  background: #fff;
}
.popup .btn_close::before {
  transform: rotate(-45deg);
}
.popup .btn_close::after {
  transform: rotate(45deg);
}
.popup_cont .cont.no_file {
  text-align: center !important;
}

/* .popup.s { max-width:400px; }
.popup.m { max-width:550px; } */
.popup.l {
  max-width: 700px;
}
.popup.xl {
  max-width: 900px;
}
/* .popup.xl img { padding-top:1.5em; } */

.popup_cont .tit {
  position: relative;
  display: block;
  text-align: left;
  font-size: 1.13em;
  padding-bottom: 8px;
}
.popup_cont .tit p {
  font-weight: 600;
}

.list_wrap {
  position: relative;
  display: block;
  border-top: 2px solid #000d30;
}
.list_wrap .list {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 1em;
  border-bottom: 1px solid #888888;
}
.list_wrap .list .right {
  position: relative;
  display: inline-block;
  width: 30%;
  text-align: left;
}
.list_wrap .list .right .subject {
  font-size: 18px;
  font-weight: 600;
  color: #000d30;
}

.list_wrap .list .left {
  width: calc(100% - 30%);
  text-align: left;
}
.list_wrap .list .left ul {
}
.list_wrap .list .left ul:last-child {
  margin-bottom: 0px;
}
.list_wrap .list .left ul li.li {
  color: #4a4a4a;
}
.list_wrap .list .left ul li.li::before {
  content: "";
  position: relative;
  display: inline-block;
  top: -5px;
  width: 14px;
  height: 1px;
  background: #888;
}
.list_wrap .list .left ul li.li p {
  color: #6a6a6a;
  margin-left: 22px;
  font-size: 15px;
  padding: 3px 0;
}
.list_wrap .list .left ul li.li p:last-child {
  padding-bottom: 0px;
}

.list_wrap .list .left ul li.subject {
  color: var(--c01);
  font-size: 1.1em;
  font-weight: 600;
  padding-bottom: 8px;
}
.list_wrap .list .left ul li.subject::before {
  content: "";
  width: 5px;
  height: 5px;
  top: -4px;
  margin-right: 15px;
  position: relative;
  display: inline-block;
  background: #000d30;
}

/*로케*/
#location {
  /* background-color: rgb(51 51 51 / 0.7); */
  /* margin-top: -50px; */
  position: absolute;
  height: 80px;
  z-index: 1;
  bottom: 0;
  left: 0;
  width: 100%;
}
#location::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0; /* bottom:-50px; */
  width: 100%;
  height: 1px;
  background: #fff;
  opacity: 30%;
  animation: lineH 1s both;
}

.location_wrap {
  width: 100%;
  max-width: var(--w1600);
  margin: 0 auto;
  font-size: 0;
}

.home_btn_wrap {
  display: inline-block;
  vertical-align: top;
  font-size: 0;
}

.home_btn {
  display: block;
  background-image: url(../img/ico-home.svg);
  /* background-color: #C48B3A; */
  width: 50px;
  height: 100%;
  background-repeat: no-repeat;
  background-position: left;
  position: relative;
}
.home_btn:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  height: 20px;
  border-right: 1px solid #ffffff;
  opacity: 30%;
}

#location ul {
  display: inline-block;
  position: relative;
  /* border-right: 1px solid #696969; */
}

#location ul:after,
#location ul:before {
  content: "";
  position: absolute;
  height: 1px;
  width: 8px;
  background: #fff;
  right: 18px;
  top: 40px;
  display: block;
  transition: all 0.2s;
}

#location ul:after {
  margin-right: 1px;
  transform: rotate(45deg);
}

#location ul:before {
  transform: rotate(-45deg);
  margin-right: -5px;
}

#location ul.on:after {
  transform: rotate(-45deg);
}

#location ul.on:before {
  transform: rotate(45deg);
}

#location ul li {
  width: 280px;
  height: 50px;
  background-color: rgb(51 51 51 / 0.2);
  transition: 0.2s;
}

#location ul li a {
  font-size: 16px;
  font-weight: 500;
  color: #fff;
  display: flex;
  padding: 13px 25px;
  height: 80px;
  align-items: center;
}
#location ul li.active > a,
#location ul li:hover > a {
  /* font-weight: 700 !important; */
}
#location .location_ul {
}
#location .location_ul.on .location_li {
  height: 80px;
}
#location .location_ul.on .location_li:not(:first-child) {
  height: 50px;
}
#location .location_ul.on .location_li:not(:first-child) > a {
  padding: 3px 25px;
  font-size: 14px;
  font-weight: 400;
  height: 50px;
}
#location .location_ul2.on .location_li2 {
  height: 80px;
}
#location .location_ul2.on .location_li2:not(:first-child) {
  height: 50px;
}
#location .location_ul2.on .location_li2:not(:first-child) > a {
  padding: 3px 25px;
  font-size: 14px;
  font-weight: 400;
  height: 50px;
}
#location .location_ul3.on .location_li3 {
  height: 50px;
}
#location .location_ul3.on .location_li3:not(:first-child) {
  height: 30px;
}
#location .location_ul3.on .location_li3:not(:first-child) > a {
  padding: 3px 25px;
  font-size: 14px;
  font-weight: 400;
}
#location ul.on li:not(:first-child) {
  background-color: rgb(51 51 51 / 0.2);
}
#location ul.on li:first-child {
  background-color: transparent;
  height: 80px;
}
#location .location_li {
  height: 0;
  overflow: hidden;
}

#location .location_li.li_plus {
}

#location .location_li.active {
  display: inline-block;
  /* position: relative; */
  height: 100%;
  background-color: transparent;
}

#location .location_ul2 {
  position: absolute;
  top: 0;
  left: 100%;
  display: none;
}
#location .location_li.active .location_ul2 {
  display: inline-block;
}
#location .location_li2 {
  height: 0;
  overflow: hidden;
}

#location .location_li2.li_plus {
}

#location .location_ul.on .location_ul2:not(.on) .location_li2.active,
#location .location_li2.active {
  background-color: transparent;
  height: 50px;
}

#location .location_ul3 {
  position: absolute;
  top: 0;
  left: 100%;
  display: none;
}
#location .location_li2.active .location_ul3 {
  display: inline-block;
}
#location .location_li3 {
  height: 0;
  overflow: hidden;
}

#location .location_ul2.on .location_ul3:not(.on) .location_li3.active,
#location .location_li3.active {
  background-color: transparent;
  height: 50px;
}

/* 컨텐트 */
.ctt_wrap {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  margin-top: 80px;
}

.ctt_wrap img,
.se2_inputarea img {
  width: 100%;
  height: auto;
}

/*===========list-type=============*/
ul.list-type-number {
  list-style: none; /* 기본 리스트 스타일 제거 */
  counter-reset: number-counter; /* 카운터 초기화 */
  margin-bottom: 50px;
}

ul.list-type-number > li {
  counter-increment: number-counter; /* 각 항목에 번호 증가 */
  position: relative;
  /* padding-left: 20px; */ /* 말머리와 텍스트 사이 여백 */
  font-size: 1rem;
  line-height: 1.875;
  font-weight: 700;
  color: #000000;
  margin-bottom: 15px;
}

ul.list-type-number > li::before {
  content: counter(number-counter) "."; /* "1." 형식 적용 */
  font-weight: bold;
  margin-right: 5px;
}

ul.list-type-pl {
  list-style: none; /* 기본 리스트 스타일 제거 */
  counter-reset: pl-counter; /* 카운터 초기화 */
}

ul.list-type-pl > li {
  counter-increment: pl-counter; /* 각 항목에 번호 증가 */
  position: relative;
  /* padding-left: 19px; */ /* 말머리와 텍스트 사이 여백 */
  font-size: 1rem;
  line-height: 1.875;
  font-weight: 400;
  color: #000000;
  margin-bottom: 15px;
}

ul.list-type-pl > li::before {
  content: counter(pl-counter) ")"; /* "1)" 형식 적용 */
  margin-right: 5px;
}

ul.list-type-dot {
  list-style: none; /* 기본 리스트 스타일 제거 */
}

ul.list-type-dot > li {
  position: relative;
  padding-left: 10px; /* 말머리와 텍스트 사이 여백 */
  font-size: 1rem;
  line-height: 1.875;
  font-weight: 400;
  color: #000000;
}

ul.list-type-dot > li::before {
  content: "•";
  position: absolute;
  left: -5px;
  font-size: 1rem;
  line-height: 1.875;
}

ul.list-type-circle {
  list-style: none; /* 기본 리스트 스타일 제거 */
  counter-reset: circle-counter; /* 카운터 초기화 */
  margin-bottom: 50px;
}

ul.list-type-circle > li {
  counter-increment: circle-counter; /* 각 항목에 번호 증가 */
  position: relative;
  /* padding-left: 20px; */ /* 말머리와 텍스트 사이 여백 */
  font-size: 1rem;
  line-height: 1.875;
  font-weight: 700;
  color: #000000;
  margin-bottom: 15px;
}

ul.list-type-circle > li::before {
  content: counter(circle-counter);
  font-weight: bold;
  margin-right: 5px;
  background-color: #51b9c7;
  color: #ffffff;
  display: inline-flex;
  width: 24px;
  height: 24px;
  justify-content: center;
  align-items: center;
  border-radius: 100%;
}

ul.list-type-number ul,
li > ul.ul.list-type-pl,
li > ul.list-type-dot {
  padding-left: 15px;
}
ul.list-type-circle ul {
  padding-left: 30px;
}

/*================일반텍스트=================*/
/* .subj {
  display: inline-flex;
  height: 40px;
  border-radius: 50px;
  font-size: 1.125rem;
  font-weight: 700;
  justify-content: center;
  align-items: center;
  padding: 0 16px;
  margin-bottom: 15px;
  margin-left: 0;
  margin-right: 100%;
  width: auto;
  white-space: nowrap;
} */
.subj.ico-dia:before {
  content: "";
  width: 10px;
  height: 16px;
  margin-right: 3px;
  background-image: url(/img/ico-dia.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.subj.subj-blue {
  background-color: #51b9c7;
  color: #ffffff;
}

p.common-text {
  font-size: 1rem;
  font-weight: 400;
  color: #000000;
  margin-bottom: 50px;
}

.mid-box {
  padding: 30px;
  border-radius: 20px;
  line-height: 1.875;
  font-size: 1rem;
  width: auto;
  display: inline-block;
}

.flex {
  display: flex;
}
.space-between {
  justify-content: space-between;
}
.align-center {
  align-items: center;
}
.max-w-900 {
  max-width: 900px;
}
.w-full {
  width: 100%;
}
.pc-only {
  display: block;
}
.tb-only {
  display: none;
}
.mo-only {
  display: none;
}

/***********************************************************************************
mediaquery
************************************************************************************/
@media screen and (max-width: 1420px) {
  .hd_wrap,
  .ft_wrap {
    padding: 0 40px;
  }
  /*hd_title*/
  .hd_title {
    padding: 0 40px;
  }
  .hd_title_wrap {
  }

  #header #logo {
    order: 0;
    margin-right: 20px;
  }
  /*gnb*/
  #header #gnb {
    display: none;
  }

  /*top*/
  #top-link {
    display: none;
  }
  #header {
    height: 64px;
  }
  #header .menu_open {
    display: block;
    position: absolute;
    right: 20px;
    top: 30px;
  }
  #header .menu_open button {
    background: none;
    padding-top: 2px;
    padding-left: 20px;
  }
  #header .menu_open i.line01 {
    margin-bottom: 5px;
  }
  #header .menu_open i {
    display: block;
    width: 26px;
    height: 1px;
    background: #fff;
  }
  #header .menu_open {
    top: 34px;
  }
  #header .mo_menu .gnb1 > ul > li > a {
    position: relative;
  }
  .login-btn {
    order: 3;
    margin-left: 15px;
  }
  .menu-btn {
    display: flex;
    order: 4;
  }
  .ebook-btn {
    order: 2;
    margin-left: 15px;
    width: 50px;
    border-radius: 50%;
    margin-right: 0;
  }
  .ebook-btn span.ebook-text {
    display: none;
  }

  #hd_sch {
    order: 1;
    margin-left: 0;
    margin-right: auto;
  }
  /*footer*/
  footer {
  }
  .ft_wrap {
    /* padding: 0px 40px; */
  }
  /*ft-float*/
  #ft-float {
  transform: translateY(0) !important;
  }
  .ft-float-wrap{padding: 0;height: 70px;}
  .ft-contact-tel {
  }
  .ft-contact-tel > p {
  }
  .ft-contact-tel > div {
  }
  .ft-contact-tel > div > b {
  }
  #ft-float .ft-contact-tel{
    display: none;
}
  .ft-contact-form {
    display: none;
  }
  .ft-contact-form .ft-arr-btn {
  }
  .ft-contact-form fieldset#ft-contact-aply {
  }
  fieldset#ft-contact-aply legend {
  }
  fieldset#ft-contact-aply form {
  }
  fieldset#ft-contact-aply input[type="text"] {
  }
  fieldset#ft-contact-aply .agree {
  }
  fieldset#ft-contact-aply #f_ft_contact_form_submit {
  }
  .contact-btn{display: flex;width: 100%;height: 100%;}
  .contact-btn > a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.375rem;
  color: #ffffff;
  font-weight: 400;
  }
  .contact-btn > a:not(:first-child){
      font-weight: 700;
      position: relative;
  }
  .contact-btn > a:not(:first-child):before{content:'';position: absolute;width: 1px;height: 25px;background-color: #ffffff33;left: 0;top: 50%;transform: translateY(-50%);}
  /***********************************************************************************
  wrap
  ************************************************************************************/
  .cont-wrap {}
  .cont-wrap-inner {}
}
/*================================================================================================*/
@media (max-width: 1540px) {
  #header #gnb > ul > li > a {
    /* line-height:71px; */ /* padding:0 32px; */
  }
  #header #gnb > ul > li > a {
    /* padding: 0 28px; */
  }
  #header #gnb > ul > li .depth_2 {
    /* top: 71px; */
  }
  #header #gnb > ul > li .depth_2 > div.txt ul li a {
    font-size: 14.4px; /*line-height: 40px;*/
  }
  #header #gnb > ul > li:hover .depth_2 {
    height: 235px;
  }
  #header #gnb > ul > li:nth-child(6):hover .depth_2 {
    height: 260px;
  }
}
/*================================================================================================*/
@media screen and (max-width: 1280px) {
  footer .footer {
    margin-top: 100px;
  }

  /* ====================board=================== */
  .bo_li .num,
  .bo_li .hit,
  .bo_li .division,
  .bo_li .preview,
  .bo_li .download {
    /* width:60px; */
  }
  .bo_li .num {
    height: 90px;
  }
  .bo_li .date {
    width: 120px;
  }

  table.bo_li {
    display: block;
  }
  table.bo_li thead {
    display: none;
  }
  table.bo_li tbody {
    display: block;
    width: 100%;
  }

  .table_wrap .bo_li thead tr th,
  .table_wrap .bo_li tbody tr th,
  .table_wrap .bo_li tbody tr td {
    height: auto;
    line-height: normal;
    padding: 0; /* width: 100%; */
    border: 0;
  }
  .table_wrap .bo_li tbody tr td.num {
    height: 100%;
    width: 90px;
    padding: 0 20px;
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .bo_li tbody tr {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    position: relative;
    min-height: 90px;
    padding: 20px 20px 20px 90px;
    border-bottom: 1px solid #d3d3d3;
  }
  .bo_li tbody tr td {
    border-width: 0 0 1px 0 !important;
    width: 100%;
  }
  .bo_li tbody tr td.subject {
    display: block;
  }
  .bo_li tbody tr td.date,
  .bo_li tbody tr td.hit,
  .bo_li tbody tr td.name {
    display: inline-block;
    text-align: left;
    width: auto;
    margin-top: 8px;
  }
  .bo_li tbody tr td.date:before,
  .bo_li tbody tr td.hit:before {
    margin-left: 5px;
    content: " l ";
    font-size: 1.125rem;
    color: #878787;
    opacity: 0.25;
  }
  /* 페이징 */
  a.page_group {
    line-height: 2.6;
  }
  /*hd_title*/
  .hd_title {
  }
  .hd_title_wrap {
    height: 200px;
  }
  .hd_title h2.title {
    font-size: 2rem;
  }
  .location {
    margin-top: 15px;
  }
  .location ul {
  }
  .location ul li {
  }
  .location ul li a {
    font-size: 0.875rem;
  }
  .location ul li a svg {
  }

  .board_wrap {
    padding: 0 40px;
    margin-top: 30px;
  }

  /* 게시판 검색 */
  .bo_top {
    position: relative; /* margin-bottom:1.2em; */
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 20px;
  }
  .bo_top::after {
    /* content:''; */
    display: block;
    clear: both;
  }
  .bo_top .search {
    width: 400px;
  }
  .bo_top .search .search_wrap {
    display: inline-block;
    width: 100%;
    max-width: 400px;
    height: 60px;
    line-height: 60px;
    background: #f4f4f4;
    vertical-align: top;
    border-radius: 40px;
  }
  .bo_top .search .search_wrap .search_input {
    display: flex;
    position: relative;
    width: 100%;
  }
  .bo_top .search.no_select .search_wrap .search_input {
    width: 100%;
  }
  .bo_top .search.no_select .search_wrap .search_input::before {
    content: none;
  }
  .bo_top .search.no_select .search_wrap .search_input button {
    top: -1px;
  }
  .bo_top .search .search_wrap::after,
  .bo_top .search .search_wrap .search_input::after {
    /* content:''; */
    display: block;
    clear: both;
  }
  .bo_top .search .search_wrap .search_input::before {
    content: "";
    position: absolute;
    top: 30%;
    left: 2px;
    width: 1px;
    height: 40%;
    background: #e6e6e6;
  }
  .bo_top .search .search_wrap .search_input input {
    /* float:left; */
    width: calc(100% - 60px);
    height: 60px;
    line-height: 60px;
    background: transparent;
    border: 0;
    padding-left: 30px;
    font-size: 1.125rem;
    font-weight: 400;
    color: #2b2b2b;
  }
  .bo_top .search .select_wrap {
    float: left;
  }
  .bo_top .search select {
    height: 48px;
    line-height: 48px;
  }
  .bo_top .search button {
    position: relative;
    width: 60px;
    height: 60px;
  }
  .bo_top .search button span {
    display: inline-block;
    font-size: 0;
  }
  .bo_top .search button span::before {
    content: "";
    display: inline-block;
    position: relative;
    top: -1px;
    width: 21px;
    height: 21px;
    background: url(/img/ico-sch.svg) center no-repeat;
  }
  .bo_top .post {
    /* float:left; */ /* margin-top:15px; */
  }
  .bo_top .post strong,
  .bo_top .post span {
    color: #2b2b2b;
    font-size: 1.125rem;
    font-weight: 700;
  }

  /* 컨텐트 */
  .ctt_wrap {
    padding: 0 40px;
    margin-top: 30px;
  }

  /***********************************************************************************
tab
************************************************************************************/
  nav.tab {
    margin-right: -40px;
  }
  nav.tab > ul {
    padding-right: 40px;
  }
  nav.tab > ul > li {
  }
  nav.tab > ul > li > a {
  }
  nav.tab > ul > li.active {
  }
  nav.tab > ul > li.active > a {
  }
  .tab-content-wrap {
  }
  .tab-content {
  }
  .tab-content.active {
  }

  /***********************************************************************************
scroll
************************************************************************************/
  .hd-info-box {
    padding: 20px 40px;
    margin-bottom: 40px;
  }
  nav.scroll {
  }
  nav.scroll.row4-col2 {
  }
  nav.scroll.row4-col2 ul {
  }
  nav.scroll.row4-col2 ul > * {
  }
  nav.scroll.row4-col4 {
  }
  nav.scroll.row4-col4 ul {
  }
  nav.scroll.row4-col4 ul > * {
  }
  nav.scroll span.scroll-info {
  }
  nav.scroll span.scroll-info svg {
  }
  nav.scroll ul {
    gap: 25px;
  }
  nav.scroll ul li {
    font-size: 1rem;
  }

  /*==========가로스크롤테이블=============*/
  .scroll-x-wrap {
  }
  .scroll-x-info {
    position: absolute;
    right: 0px;
    top: 0px;
    font-size: 0.625rem;
    color: #3bb3c2;
    font-weight: 500;
    padding-top: 14px;
    background-image: url(/img/ico-scroll-arr.svg);
    background-repeat: no-repeat;
    background-position: top;
    background-size: contain;
    height: 34px;
  }
  .scroll-x-info:before {
    content: "좌우스크롤";
  }
  .scroll-x-wrap table {
  }

  /*==========tb1 : 일반 테이블1=============*/
  table.tb1 {
  }
  table.tb1 tr {
  }
  table.tb1 th {
  }
  table.tb1 td {
  }

  /*================일반텍스트=================*/
  .subj {
  }
  .subj:before {
  }
  .subj.subj-blue {
  }
  p.common-text {
  }

  .pc-only {
    display: none;
  }
  .tb-only {
    display: block;
  }
  .mo-only {
    display: none;
  }
}
/*================================================================================================*/
@media screen and (max-width: 1024px) {
  /* 게시판 */
  .bo_li .name {
    width: 80px;
  }
  .bo_li .part {
    width: 130px;
  }

  .tip_box2 ul {
    padding: 1em;
  }
  .tip_box2 ul li {
  }
  .tip_box2 ul li > span {
    display: block;
    text-align: center;
    margin-bottom: 8px;
  }
}
/*================================================================================================*/
@media screen and (max-width: 946px) {
  #header {
    /* height: 70px; */
  }
  #header #logo {
    left: 20px;
    top: 18px;
  }
  #header #logo img {
    /* height:32px; */
  }
  #header .menu_open {
    top: 30px;
  }

  .item_box .txt {
    padding: 5em 3em;
  }
  .item_box .txt ul {
    display: block;
  }
  .item_box .txt ul li {
    margin: 0 0 20px 0px;
  }
}
/*================================================================================================*/
@media screen and (max-width: 800px) {
  /*footer*/
  footer {
    padding-top: 20px;
    padding-bottom: 30px;
  }
  .ft_wrap {
    /* padding: 0px 14px; */
    /* flex-direction: column; */
    /* align-items: center; */
  }
  footer .logo {
    margin: 0;
  }
  footer .logo img {
  }
  footer .ft-cont {
    margin: 0;
    /* text-align: center; */
    margin-top: 15px;
  }
  footer .top {
  }
  footer .top ul {
  }
  footer .top li {
  }
  footer .top a {
  }
  footer .bot {
  }
  footer .bot .txt {
  }
  footer .bot span {
  }
  footer .bot address {
  }
  footer .copy {
  }
  footer select.ft-link {
    margin-top: 30px;
    width: 100%;
  }

  .lable span:last-child {
    font-size: 18px;
  }
  .img_box {
    margin-bottom: 20px;
  }
  .lable {
    margin-bottom: 20px;
  }
}
/*================================================================================================*/
@media screen and (max-width: 768px) {
  table tbody tr:hover {
    background: #fff;
  }
  /* bo_top */
  .bo_top .search .inner {
    max-width: 350px;
  }
  .bo_top_center .search .inner {
    max-width: 100%;
  }

  /* tip box, txt */
  .h4_wrap h4 {
    font-size: 18px;
    color: #1e2633;
    font-weight: 700;
  }

  /* .tab_depth li { padding:15px 0; } */
  .product .tab_depth {
    border-bottom: none;
  }
  .product .tab_depth.col07 li {
    border-bottom: 1px solid #d1d5e3;
  }
  .product .tab_depth.col07 li {
    width: 50%;
  }

  .example_nav li {
    width: 100px;
    height: 60px;
  }

  .sub {
    padding: 16px;
  }
  .sub_top {
    max-height: 266px;
    height: 266px;
  }
  .sub_top .txtbox .txt {
    text-align: center;
  }
  .sub_top .txtbox .txt h2 {
    font-size: 2.5em;
  }
  .sub_top .wrap_wide {
    justify-content: space-evenly;
    padding-top: 20px;
  }
  .sub_top::before {
    height: 70px;
    bottom: -35px;
  }

  .sub_head {
    padding: 1em 0;
  }
  .sub_head .sub_title h2 {
    font-size: 1.3em;
  }

  .h4_wrap h4.txt2::before {
    top: 6px;
  }

  /* q코드정보 */
  .gallery_li.col03 {
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 1.5rem;
    grid-row-gap: 3rem;
  }

  /* 고객 문의 */
  textarea.input_text {
    padding: 15px;
  }
  .contact .contact_wrap {
    padding: 3em 2em;
  }
  .contact .contact_wrap .tit {
    font-size: 2em;
  }
  .contact .contact_wrap .input_wrap .box {
    display: block;
    padding-bottom: 0;
  }
  .contact .contact_wrap .input_wrap .box .left,
  .contact .contact_wrap .input_wrap .box .right {
    padding: 0 0 20px 0;
    width: 100%;
  }

  .selectbox {
    display: block;
  }
  .selectbox dl {
    display: block;
  }
  .selectbox dl dt {
    margin: 6px 0;
  }
  .selectbox dl dd {
    margin: 0;
  }
  .selectbox dl.nocontent dd {
    display: none;
  }

  .certification .cont .li .txt .tit {
    font-size: 1em;
  }

  .tip_box2 p {
    font-size: 1em;
  }

  .item_box .txt {
    padding: 3.8em 20px;
  }
  .item_box .txt ul li {
    border-radius: 10px;
  }

  /*로케*/
  #location {
    /* background-color: rgb(51 51 51 / 0.7); */
    /* margin-top: -50px; */
    /* position: relative; */
    height: 60px;
    z-index: 1;
  }

  .location_wrap {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
    font-size: 0;
  }

  .home_btn_wrap {
    display: inline-block;
    vertical-align: top;
    font-size: 0;
  }

  .home_btn {
    display: block;
    background-image: url(../img/ico-home.svg);
    /* background-color: #C48B3A; */
    width: 70px;
    height: 60px;
    background-position: center;
    padding: 0 10px;
  }

  #location ul {
    display: inline-block;
    position: relative;
    border-right: 1px solid #696969;
  }

  #location ul:after,
  #location ul:before {
    content: "";
    position: absolute;
    height: 1px;
    width: 8px;
    background: #fff;
    right: 18px;
    top: 30px;
    display: block;
    transition: all 0.2s;
  }

  #location ul:after {
    margin-right: 1px;
    transform: rotate(45deg);
  }

  #location ul:before {
    transform: rotate(-45deg);
    margin-right: -5px;
  }

  #location ul.on:after {
    transform: rotate(-45deg);
  }

  #location ul.on:before {
    transform: rotate(45deg);
  }

  #location ul li {
    width: 220px;
    height: 50px;
    background-color: rgb(51 51 51 / 0.7);
    transition: 0.2s;
  }

  #location ul li a {
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    /* display: block; */
    padding: 13px 25px;
    height: 60px;
  }
  #location ul li.active > a,
  #location ul li:hover > a {
    /* font-weight: 700 !important; */
  }
  #location .location_ul {
    width: calc(100% - 70px);
  }
  #location .location_ul.on .location_li {
    height: 50px;
  }
  #location .location_ul.on .location_li:not(:first-child) {
    height: 30px;
  }
  #location .location_ul.on .location_li:not(:first-child) > a {
    padding: 3px 25px;
    font-size: 14px;
    font-weight: 400;
  }
  #location .location_ul2.on .location_li2 {
    height: 60px;
  }
  #location .location_ul2.on .location_li2:not(:first-child) {
    height: 30px;
  }
  #location .location_ul2.on .location_li2:not(:first-child) > a {
    padding: 3px 25px;
    font-size: 14px;
    font-weight: 400;
    height: 30px;
  }
  #location .location_ul3.on .location_li3 {
    height: 50px;
  }
  #location .location_ul3.on .location_li3:not(:first-child) {
    height: 30px;
  }
  #location .location_ul3.on .location_li3:not(:first-child) > a {
    padding: 3px 25px;
    font-size: 14px;
    font-weight: 400;
  }
  #location ul.on li:not(:first-child) {
    /* background-color: rgb(51 51 51 / 0.7); */
  }
  #location ul.on li:first-child {
    background-color: transparent;
  }
  #location .location_li {
    height: 0;
    overflow: hidden;
    width: 100%;
  }

  #location .location_li.li_plus {
  }

  #location .location_li.active {
    display: inline-block;
    /* position: relative; */
    height: 60px;
    background-color: transparent;
  }

  #location .location_ul2 {
    position: absolute;
    top: 0;
    left: 100%;
    display: none;
    width: 100%;
  }
  #location .location_li.active .location_ul2 {
    display: inline-block;
  }
  #location .location_li2 {
    height: 0;
    overflow: hidden;
    width: 100%;
  }

  #location .location_li2.li_plus {
  }

  #location .location_ul.on .location_ul2:not(.on) .location_li2.active,
  #location .location_li2.active {
    background-color: transparent;
    height: 50px;
  }

  #location .location_ul3 {
    position: absolute;
    top: 0;
    left: 100%;
    display: none;
    width: 100%;
  }
  #location .location_li2.active .location_ul3 {
    display: inline-block;
  }
  #location .location_li3 {
    height: 0;
    overflow: hidden;
    width: 100%;
  }

  #location .location_ul2.on .location_ul3:not(.on) .location_li3.active,
  #location .location_li3.active {
    background-color: transparent;
    height: 50px;
  }
  #location .li_plus > a:after {
    content: ">";
  }

  #location.loca_lv_1 {
  }

  #location.loca_lv_2 {
  }
  #location.loca_lv_2 .location_li {
    width: 0;
  }
  #location.loca_lv_2 .location_li > a {
    display: none;
  }
  #location.loca_lv_2 .location_ul2 {
    left: 0;
  }
  #location.loca_lv_2 .location_ul:before,
  #location.loca_lv_2 .location_ul:after {
    display: none;
  }

  #location.loca_lv_3 {
  }
  #location.loca_lv_3 .location_li {
    width: 0;
  }
  #location.loca_lv_3 .location_li > a {
    display: none;
  }
  #location.loca_lv_3 .location_ul2 {
    left: 0;
  }
  #location.loca_lv_3 .location_li2 {
    width: 0;
  }
  #location.loca_lv_3 .location_li2 > a {
    display: none;
  }
  #location.loca_lv_3 .location_ul3 {
    left: 0;
  }
  #location.loca_lv_3 .location_ul:before,
  #location.loca_lv_3 .location_ul:after,
  #location.loca_lv_3 .location_ul2:before,
  #location.loca_lv_3 .location_ul2:after {
    display: none;
  }
}

/*================================================================================================*/
@media screen and (max-width: 600px) {
  .hd_wrap {
    flex-wrap: wrap;
    padding: 0 20px;
  }
  #header #logo {
    order: 0;
    margin-right: auto;
    /* width: 98px; */
    /* height: 37px; */
  }
  #header {
    height: 56px;
  }
  .login-btn,
  .menu-btn,
  .ebook-btn,
  .menu-close-btn {
    width: 40px;
    min-width: 40px;
    height: 40px;
  }
  .login-btn {
    order: 1;
  }
  .login-btn svg {
    width: 16px;
  }
  .menu-btn {
    display: flex;
    order: 3;
  }
  .menu-btn svg {
    /* width: 14px; */
  }
  .ebook-btn {
    display: flex;
    order: 2;
  }
  .ebook-btn svg {
    width: 20px;
  }
  #hd_sch {
    order: 4;
    margin-left: 0;
    margin-right: auto;
    width: 100%;
    height: 40px;
    margin-top: 13px;
  }
  #sch_stx {
    font-size: 0.75rem;
  }

  /*mo_menu*/
  .mo_menu_hd {
    height: 56px;
    min-height: 56px;
    padding: 0 14px;
  }
  .mo_menu_hd .logo {
    /* width: 127px; */
    /* height: 50px; */
  }
  .mo_menu_hd .logo a {
  }
  .mo_menu_hd .logo img {
    width: 100%;
    height: auto;
  }
  button.menu-close-btn {
  }
  button.menu-close-btn svg {
    /* width: 12px; */
  }
  .profile {
    margin: 14px;
    border-radius: 10px;
    padding: 0 15px;
    height: 60px;
    min-height: 60px;
  }
  .profile .profile_img {
    width: 40px;
    height: 40px;
    min-width: 40px;
    margin-right: 15px;
  }
  .profile .profile_img img {
    width: 100%;
    height: auto;
  }
  .profile .welcome_text {
    font-size: 1rem;
  }
  .profile .welcome_text a {
    text-decoration: underline;
  }
  .profile .welcome_text a[href*="logout.php"] {
    font-size: 0.75rem;
    width: 18px;
    display: flex;
    line-height: 1.2;
  }
  .mo_menu_nav {
    border-top: 1px solid #ebebeb;
    background-color: #ffffff;
    overflow-y: auto;
    overflow-x: hidden;
    /* padding-bottom: 50px; */
  }
  ul.mo_menu_ul {
    padding: 0px 20px;
  }
  li.mo_menu_li {
    padding: 15px 0px;
    padding-left: 20px;
    height: 75px;
  }
  li.mo_menu_li > a {
    font-size: 1.125rem;
    gap: 10px;
  }
  li.mo_menu_li > a > svg {
    width: 28px;
  }
  li.mo_menu_li > a:before {
    content: "";
    left: 13px;
  }
  li.mo_menu_li > a:after {
    content: "";
    width: 40px;
    height: 40px;
    background-image: url(/img/ico-nav-arr.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: 0.3s;
  }
  li.mo_menu_li > a.active {
  }
  li.mo_menu_li > a.active:after {
    transform: rotate(180deg);
  }
  ul.mo_menu_ul2 {
    margin-top: 15px;
    display: none;
  }
  li.mo_menu_li2 {
    padding-left: 32px;
    margin-bottom: 25px;
  }
  li.mo_menu_li2 > a {
    font-size: 1rem;
    line-height: 16px;
  }
  ul.mo_menu_ul3 {
    background-color: #ececec;
    padding: 15px 20px;
  }
  li.mo_menu_li3 {
  }
  li.mo_menu_li3 > a {
    font-size: 1rem;
    line-height: 36px;
  }

  .mo_menu-link {
    gap: 10px;
  }
  .mo_menu-link > a {
    width: 200px;
    height: 40px;
    font-size: 1rem;
  }
  .mo_menu-link .top-link__white {
  }
  .mo_menu-link .top-link__black {
  }

  /*footer*/
  footer {
    padding-top: 20px;
    padding-bottom: 0;
  }
  .ft_wrap {
    padding: 0;
    flex-direction: column;
  }
  .gotop {
    right: 14px;
  }
  .ft_wrap_:first-of-type {
    padding: 0 20px;
  }
  footer .logo {
  }
  footer .logo img {
  }
  footer .ft-cont {
    font-size: 0.75rem;
  }
  footer .top {
  }
  footer .top ul {
  }
  footer .top li {
  }
  footer .top a {
  }
  footer .bot {
  }
  footer .bot .txt {
  }
  footer .bot span {
  }
  footer .bot address {
  }
  footer .copy {
    font-size: 0.625rem;
  }
  .ft-link-title {
    display: none;
  }
  .ft-link {
    display: flex;
    flex-direction: row;
    justify-content: center;
    /* height: 30px; */
    background-color: #bababa66;
    margin-top: 32px;
    gap: 30px;
    padding-bottom: 50px;
  }
  .ft-link li {
    display: flex;
    align-items: center;
    height: 30px;
  }
  .ft-link li a {
    font-size: 0.75rem;
    font-weight: 400;
    color: #777777;
  }
  footer select.ft-link {
    margin-top: 20px;
  }

  /*ft-float*/
  #ft-float {
  }
  .ft-float-wrap{padding: 0 20px;height: 50px;}
  .ft-contact-tel {
  }
  .ft-contact-tel > p {
  }
  .ft-contact-tel > div {
  }
  .ft-contact-tel > div > b {
  }

  .ft-contact-form {
  }
  .ft-contact-form .ft-arr-btn {
  }
  .ft-contact-form fieldset#ft-contact-aply {
  }
  fieldset#ft-contact-aply legend {
  }
  fieldset#ft-contact-aply form {
  }
  fieldset#ft-contact-aply input[type="text"] {
  }
  fieldset#ft-contact-aply .agree {
  }
  fieldset#ft-contact-aply #f_ft_contact_form_submit {
  }

  .contact-btn {
  }
  .contact-btn > a {
    font-size: 1.063rem;
  }
  .contact-btn > a:not(:first-child){font-size: 0.938rem;}

  /***********************************************************************************
  wrap
  ************************************************************************************/
  .cont-wrap {
    padding: 0 20px;
}
  .cont-wrap-inner {
    padding: 0 20px;
}
    
  /* bo_top */
  .bo_util {
    display: block;
  }
  .post_num {
    margin-bottom: 5px;
  }
  .bo_search_wrap {
    display: block;
  }
  .bo_search {
    max-width: 100%;
  }

  .bo_li {
    margin-top: 0.5em;
  }
  .bo_li .state03 {
    font-size: 1.05em;
  } /* 진행중 */
  .bo_li .state04 {
    font-size: 1.05em;
  } /* 마감 */

  /* 테이블 */
  .board_wrap {
    padding: 0 14px;
    margin-top: 20px;
  }

  .product_table {
    max-width: 600px !important;
  }
  .img_box {
    padding: 3em;
    margin-bottom: 30px;
    border-radius: 20px;
  }
  .example_cont > li {
    padding: 3em;
  }

  .bo_top {
    display: block;
  }
  .bo_top .post {
    float: none;
    margin-bottom: 10px;
    display: none;
  }
  .bo_top .search {
    float: none;
    width: 100%;
    text-align: left;
  }
  .bo_top .search .search_wrap {
    max-width: 100%;
    height: 50px;
    line-height: 50px;
  }
  .bo_top .search .search_wrap .search_input input {
    height: 50px;
    line-height: 50px;
  }
  .bo_top .search button {
    width: 50px;
    height: 50px;
  }

  .table_wrap .bo_li thead tr th,
  .table_wrap .bo_li tbody tr th,
  .table_wrap .bo_li tbody tr td {
    height: auto;
    line-height: normal;
    padding: 0; /* width: 100%; */
    border: 0;
  }
  .table_wrap .bo_li tbody tr td.num {
    display: none;
  }
  .bo_li tbody tr {
    padding: 20px;
  }
  .bo_li tbody tr td {
    border-width: 0 0 1px 0 !important;
    width: 100%;
    font-size: 1rem;
  }
  .bo_li tbody tr td.subject {
    display: block;
  }
  table tbody td.subject a.bo_cate_link {
    font-size: 1rem;
  }
  .bo_li tbody tr td.date,
  .bo_li tbody tr td.hit,
  .bo_li tbody tr td.name {
    display: inline-block;
    text-align: left;
    width: auto;
    margin-top: 8px;
  }
  .bo_li tbody tr td.date:before,
  .bo_li tbody tr td.hit:before {
    margin-left: 5px;
    content: " l ";
    font-size: 1.125rem;
    color: #878787;
    opacity: 0.25;
  }
  [class*="_list"] ul.board_btn {
    /* display: block; */
    /* padding-top: 100px; */
    bottom: -130px;
  }

  .footer .bot .txt span {
    position: relative;
    display: block;
  }
  /*hd_title*/
  .hd_title {
    padding: 0 14px;
  }
  .hd_title_wrap {
    height: 110px;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
  }
  .hd_title h2.title {
    font-size: 1.75rem;
  }
  .location {
    margin-top: 10px;
  }
  .location ul {
  }
  .location ul li {
  }
  .location ul li a {
    font-size: 0.75rem;
  }
  .location ul li a svg {
  }

  /* 컨텐트 */
  .ctt_wrap {
    padding: 0 14px;
    margin-top: 20px;
  }

  /***********************************************************************************
tab
************************************************************************************/
  nav.tab {
    margin-bottom: 30px;
    margin-right: -14px;
  }
  nav.tab > ul {
    padding-right: 14px;
  }
  nav.tab > ul::-webkit-scrollbar {
    width: 0;
    height: 0;
  }
  nav.tab > ul::-webkit-scrollbar-button {
    width: 0;
    height: 0;
  }
  nav.tab > ul::-webkit-scrollbar-thumb {
    background: transparent;
    border: 0;
  }
  nav.tab > ul > li {
  }
  nav.tab > ul > li > a {
    font-size: 1rem;
    min-width: 80px;
    height: 35px;
  }
  nav.tab > ul > li.active {
  }
  nav.tab > ul > li.active > a {
  }
  .tab-content-wrap {
  }
  .tab-content {
  }
  .tab-content.active {
  }

  /***********************************************************************************
scroll
************************************************************************************/
  .hd-info-box {
    padding: 20px;
    margin-bottom: 30px;
    border-radius: 10px;
  }
  nav.scroll {
  }
  nav.scroll.row4-col2 {
  }
  nav.scroll.row4-col2 ul {
    height: auto;
    display: flex;
    max-height: 100%;
  }
  nav.scroll.row4-col2 ul > * {
    width: 100%;
  }
  nav.scroll.row4-col4 {
  }
  nav.scroll.row4-col4 ul {
    grid-template-rows: repeat(
      12,
      1fr
    ); /* 가로로 쌓이도록 변경 */ /* 2열로 배치 */ /* 높이를 자동으로 설정 */
    max-height: 100%;
    gap: 15px;
  }
  nav.scroll.row4-col4 ul > * {
    width: 100%;
  }
  nav.scroll span.scroll-info {
    width: 100%;
    margin-bottom: 20px;
  }
  nav.scroll span.scroll-info svg {
  }
  nav.scroll ul {
    /* flex-direction: row; */ /* 줄바꿈 방지 */
    /* flex-wrap: wrap; */ /* 여유 공간이 없을 경우 아래로 정렬 */
    align-items: flex-start; /* 아이템이 왼쪽에서 시작 */
    gap: 10px;
    max-height: 100%;
  }
  nav.scroll ul li {
    width: 100%;
    font-size: 0.875rem;
  }

  /*==========가로스크롤테이블=============*/
  .scroll-x-wrap {
  }
  .scroll-x-info {
    position: relative;
    width: 49px;
    margin: 0 auto;
    text-align: center;
    margin-bottom: 30px;
  }
  .scroll-x-wrap table {
  }

  /*==========tb1 : 일반 테이블1=============*/
  table.tb1 {
  }
  table.tb1 tr {
  }
  table.tb1 th {
  }
  table.tb1 td {
  }

  /*===========list-type=============*/
  ul.list-type-number {
  }

  ul.list-type-number > li {
    font-size: 0.875rem;
  }

  ul.list-type-number > li::before {
  }

  ul.list-type-pl {
  }

  ul.list-type-pl > li {
    font-size: 0.875rem;
  }

  ul.list-type-pl > li::before {
  }

  ul.list-type-dot {
    margin-left: 7px;
  }

  ul.list-type-dot > li {
    font-size: 0.875rem;
    padding-left: 6px;
  }
  ul.list-type-dot > li::before {
  }

  ul.list-type-circle {
  }

  ul.list-type-circle > li {
    font-size: 0.875rem;
  }

  ul.list-type-circle > li::before {
    width: 22px;
    height: 22px;
  }

  ul.list-type-number ul,
  li > ul.ul.list-type-pl,
  li > ul.list-type-dot {
    padding-left: 7px;
  }

  /*================일반텍스트=================*/
  .subj {
    font-size: 0.875rem;
    height: 30px;
    margin-bottom: 13px;
  }
  .subj:before {
  }
  .subj.subj-blue {
  }
  p.common-text {
    font-size: 0.875rem;
  }

  .mid-box {
    padding: 20px;
    border-radius: 10px;
    line-height: 1.875;
    font-size: 0.875rem;
    width: 100%;
  }

  .pc-only {
    display: none;
  }
  .tb-only {
    display: none;
  }
  .mo-only {
    display: block;
  }
}

/*================================================================================================*/
@media screen and (max-width: 520px) {
  /* 첨부파일 */
  .bo_v .field_cont .info_file {
    display: block;
  }
  .bo_v .field_cont .info_file .right {
    margin-top: 20px;
  }

  .btn_list {
    padding: 1.2em 0;
  }
}

/*================================================================================================*/
@media screen and (max-width: 480px) {
  /* bo_top */
  .bo_top_center .search .inner button {
    top: 0;
  }

  /* 테이블 */
  table tbody tr td .txt_li01 li::before {
    top: 7px;
  }
  table tbody td.subject > a {
    max-width: 100%;
  }

  /* 게시판 */
  .bo_v ul.bo_info > li.bo_v_atch {
    display: block;
    padding: 10px 0 15px 0;
  }
  .bo_v ul.bo_info > li.bo_v_atch .field_name,
  .bo_v ul.bo_info > li.bo_v_atch .field_cont {
    display: block;
    width: 100%;
  }
  .bo_v ul.bo_info > li.bo_v_atch .field_name {
    padding-bottom: 5px;
  }
  .bo_v ul.bo_info > li.bo_v_atch .field_cont {
    padding-top: 0;
  }
  .bo_v ul.bo_info > li .field_name,
  .bo_v ul.bo_info > li .field_cont {
    padding: 6px;
  }
  .bo_v ul.bo_info > li .field_name {
    font-weight: 600;
  }
  .bo_v ul.bo_info > li .field_cont {
    color: #707070;
  }
  .bo_v ul.bo_info .info_file .file_btn_wrap {
    display: block;
  }
  .btn.btn_down,
  .btn.btn_show {
    padding: 0.5em 0.9em;
  }
  .bo_v.gallery_v .img.noimg span {
    font-size: 1em;
  }

  /* bo_top */
  .bo_top_center .search .select_wrap {
    max-width: 170px;
  }

  /* 게시판 페이징 */
  .pass {
    width: 24px;
  }
  a.page_group {
    width: 35px;
    height: 35px;
    line-height: 2.7;
    font-size: 0.95em;
  }
  .page_control {
    margin: 0;
  }
  .page_control .last,
  .page_control .next,
  .page_control .prev,
  .page_control .first {
    background: 0;
  }

  /*로케*/
  #location {
    /* background-color: rgb(51 51 51 / 0.7); */
    /* margin-top: -50px; */
    /* position: relative; */
    height: 50px;
    z-index: 1;
  }

  .location_wrap {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
    font-size: 0;
  }

  .home_btn_wrap {
    display: inline-block;
    vertical-align: top;
    font-size: 0;
  }

  .home_btn {
    display: block;
    background-image: url(../img/ico-home.svg);
    /* background-color: #C48B3A; */
    width: 50px;
    height: 50px;
    background-position: center;
    padding: 0;
  }

  #location ul {
    display: inline-block;
    position: relative;
    border-right: 1px solid #696969;
  }

  #location ul:after,
  #location ul:before {
    content: "";
    position: absolute;
    height: 1px;
    width: 8px;
    background: #fff;
    right: 18px;
    top: 25px;
    display: block;
    transition: all 0.2s;
  }

  #location ul:after {
    margin-right: 1px;
    transform: rotate(45deg);
  }

  #location ul:before {
    transform: rotate(-45deg);
    margin-right: -5px;
  }

  #location ul.on:after {
    transform: rotate(-45deg);
  }

  #location ul.on:before {
    transform: rotate(45deg);
  }

  #location ul li {
    width: 220px;
    height: 50px;
    background-color: rgb(51 51 51 / 0.7);
    transition: 0.2s;
  }

  #location ul li a {
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    /* display: block; */
    padding: 13px 25px;
    height: 50px;
  }
  #location ul li.active > a,
  #location ul li:hover > a {
    /* font-weight: 700 !important; */
  }
  #location .location_ul {
    width: calc(100% - 50px);
  }
  #location .location_ul.on .location_li {
    height: 50px;
  }
  #location .location_ul.on .location_li:not(:first-child) {
    height: 30px;
  }
  #location .location_ul.on .location_li:not(:first-child) > a {
    padding: 3px 25px;
    font-size: 14px;
    font-weight: 400;
  }
  #location .location_ul2.on .location_li2 {
    height: 50px;
  }
  #location .location_ul2.on .location_li2:not(:first-child) {
    height: 30px;
  }
  #location .location_ul2.on .location_li2:not(:first-child) > a {
    padding: 3px 25px;
    font-size: 14px;
    font-weight: 400;
    height: 30px;
  }
  #location .location_ul3.on .location_li3 {
    height: 50px;
  }
  #location .location_ul3.on .location_li3:not(:first-child) {
    height: 30px;
  }
  #location .location_ul3.on .location_li3:not(:first-child) > a {
    padding: 3px 25px;
    font-size: 14px;
    font-weight: 400;
  }
  #location ul.on li:not(:first-child) {
    /* background-color: rgb(51 51 51 / 0.7); */
  }
  #location ul.on li:first-child {
    background-color: transparent;
  }
  #location .location_li {
    height: 0;
    overflow: hidden;
    width: 100%;
  }

  #location .location_li.li_plus {
  }

  #location .location_li.active {
    display: inline-block;
    /* position: relative; */
    height: 60px;
    background-color: transparent;
  }

  #location .location_ul2 {
    position: absolute;
    top: 0;
    left: 100%;
    display: none;
    width: 100%;
  }
  #location .location_li.active .location_ul2 {
    display: inline-block;
  }
  #location .location_li2 {
    height: 0;
    overflow: hidden;
    width: 100%;
  }

  #location .location_li2.li_plus {
  }

  #location .location_ul.on .location_ul2:not(.on) .location_li2.active,
  #location .location_li2.active {
    background-color: transparent;
    height: 50px;
  }

  #location .location_ul3 {
    position: absolute;
    top: 0;
    left: 100%;
    display: none;
    width: 100%;
  }
  #location .location_li2.active .location_ul3 {
    display: inline-block;
  }
  #location .location_li3 {
    height: 0;
    overflow: hidden;
    width: 100%;
  }

  #location .location_ul2.on .location_ul3:not(.on) .location_li3.active,
  #location .location_li3.active {
    background-color: transparent;
    height: 50px;
  }
  #location .li_plus > a:after {
    content: ">";
  }

  #location.loca_lv_1 {
  }

  #location.loca_lv_2 {
  }
  #location.loca_lv_2 .location_li {
    width: 0;
  }
  #location.loca_lv_2 .location_li > a {
    display: none;
  }
  #location.loca_lv_2 .location_ul2 {
    left: 0;
  }
  #location.loca_lv_2 .location_ul:before,
  #location.loca_lv_2 .location_ul:after {
    display: none;
  }

  #location.loca_lv_3 {
  }
  #location.loca_lv_3 .location_li {
    width: 0;
  }
  #location.loca_lv_3 .location_li > a {
    display: none;
  }
  #location.loca_lv_3 .location_ul2 {
    left: 0;
  }
  #location.loca_lv_3 .location_li2 {
    width: 0;
  }
  #location.loca_lv_3 .location_li2 > a {
    display: none;
  }
  #location.loca_lv_3 .location_ul3 {
    left: 0;
  }
  #location.loca_lv_3 .location_ul:before,
  #location.loca_lv_3 .location_ul:after,
  #location.loca_lv_3 .location_ul2:before,
  #location.loca_lv_3 .location_ul2:after {
    display: none;
  }
}
@media screen and (max-width: 340px) {
}


.ft_info_txt {}

.ft_info_txt.info_co {
  font-weight: 500;
  margin-top: 17px;
  display: inline-block;
  padding-right: 22px;
  position: relative;
  cursor: pointer;
}



.ft_info_txt.info_co:after,
.ft_info_txt.info_co:before {content:'';position:absolute;height: 1px;width: 5px;background: #999999;left: calc(100% - 20px);top: 14px;display: block;transition: all .2s;}


.ft_info_txt.info_co:after {
  margin-left: 8px;
  transform: rotate(-45deg);
}

.ft_info_txt.info_co:before {
  transform: rotate(45deg);
  margin-left: 5px;
}

.ft_info_txt.info_co.active:after {
  transform: rotate(45deg);
}

.ft_info_txt.info_co.active:before {
  transform: rotate(-45deg);
}


.agree-arrow {
  font-weight: 500;
  display: inline-block;
  position: relative;
  cursor: pointer;
}

.agree-arrow:after,
.agree-arrow:before {
  content: '';
  position: absolute;
  height: 2px;
  width: 9px;
  background: #000000;
  left: -24px;
  top: 20px;
  display: block;
  transition: all .2s;
}


.agree-arrow:after {
  margin-left: 8px;
  transform: rotate(-45deg);
}

.agree-arrow:before {
  transform: rotate(45deg);
  margin-left: 2px;
}

.agree-arrow.active:after {
  transform: rotate(45deg);
}

.agree-arrow.active:before {
  transform: rotate(-45deg);
}

.agree-popup {
  display: none;
  position: absolute;
  background: #fff;
  border: 1px solid #ccc;
  padding: 15px;
  border-radius: 8px;
  box-shadow: 0px 4px 10px rgba(0,0,0,0.1);
  z-index: 1000;
  width: 350px;
}

/* 꼬리 – 위쪽 말풍선 */
.agree-popup::before {
  content: '';
  position: absolute;
  bottom: -10px;
  right: 55px;
  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #ccc transparent transparent transparent;
}

.agree-popup::after {
  content: '';
  position: absolute;
  bottom: -8px;
  right: 56px;
  border-width: 9px 9px 0 9px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}


.rb-popup-container {
  position: fixed;
  bottom: 100px;
  right: 20px;
  width: 320px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.3);
  overflow: hidden;
  z-index: 9999;
  max-width: 90%;
  display: none;
}

.rb-popup-image {
  width: 100%;
  display: block;
  height: auto;
}

.rb-popup-footer {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 10px;
  background: #f8f8f8;
  border-top: 1px solid #ddd;
  flex-wrap: wrap;
}

.rb-btn {
  flex: 1 1 auto;
  padding: 8px 10px;
  border: none;
  border-radius: 5px;
  font-weight: bold;
  cursor: pointer;
  font-size: 0.9rem;
}

.rb-hide-btn {
  background-color: #e0e0e0;
  color: #333;
}

.rb-close-btn {
  background-color: #007bff;
  color: white;
}

/* 모바일 대응 */
@media screen and (max-width: 480px) {
  .rb-popup-footer {
    flex-direction: column;
  }

  .rb-btn {
    width: 100%;
  }
}
