/* font */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+KR:wght@300;400;500;700&display=swap');

@import url(//fonts.googleapis.com/earlyaccess/nanummyeongjo.css);

@import url('https://fonts.googleapis.com/css2?family=Marcellus:wght@300;400;500;700&display=swap');

@import url('https://cdn.rawgit.com/moonspam/NanumSquare/master/nanumsquare.css');

.NotoSerif {font-family: 'Noto Serif KR', serif;}
.nanummyeongjo {font-family: 'Nanum Myeongjo', 'Noto Sans KR', sans-serif; }
.marcellus {font-family: 'Marcellus','Noto Sans KR', sans-serif;}
.nanumsquare {font-family: 'NanumSquare','Noto Sans KR', sans-serif; transform : rotate(0.04deg); -webkit-transform : rotate(0.04deg); -ms-transform : rotate(0.04deg);}

/* reset & common */
* { margin: 0; padding: 0; outline: none;}
body {margin: 0; padding: 0;}
html { scroll-behavior: smooth; }
html, body {font: 300 16px/1.3 'Noto Sans KR', sans-serif;  color: #303030;}
ul, li {list-style: none;}
a {text-decoration: none; color: inherit;}

.mob {display: none;}
.pc {display: block;}

.bo_wrap { width: 100%;height: 100%; position: relative; background: #fff;} 
.bo_wrap .ani_box { overflow: hidden; display: block;}
.bo_wrap [data-aos=fade-up] { animation: forwards 1.4s 0.8s ease-out;}
.bo_contents { margin-top: 3rem; padding-bottom: 6rem;}
.bo_inner {position: relative; width: 90%; max-width: 1200px; margin: auto;}

.img-full {width: 100%;}
.text-center {text-align: center;}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {   content: none;}
.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {   content: none;}


/* effect */
.effect1 { position: relative; width: auto;  display: inline-block;}
.effect1:hover::after { -webkit-transform-origin: left top;  -ms-transform-origin: left top; transform-origin: left top;  -webkit-transform: scale(1, 1); -ms-transform: scale(1, 1);  transform: scale(1, 1);}
.effect1::after {content: '';  position: absolute;  bottom: 0;  left: 0; width: 100%; border-bottom: 1px solid #000;  -webkit-transform-origin: right top; -ms-transform-origin: right top;  transform-origin: right top; -webkit-transform: scale(0, 1);  -ms-transform: scale(0, 1);transform: scale(0, 1);  -webkit-transition: transform 0.8s cubic-bezier(1, 0, 0, 1);  transition: transform 0.8s cubic-bezier(1, 0, 0, 1);}

.effect2  { opacity: 0; -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0 100%); clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);  -webkit-transition: clip-path 1.1s cubic-bezier(.19, 1, .22, 1), opacity 1.1s ease 167ms, -webkit-clip-path 1.1s cubic-bezier(.19, 1, .22, 1); transition: clip-path 1.1s cubic-bezier(.19, 1,.22,1), opacity 1.1s ease 167ms, -webkit-clip-path 1.1s cubic-bezier(.19, 1, .22, 1); transition-property: all !important;}
.effect2.aos-animate { opacity: 1; -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }

/* sub_top */
.bo_topbox { height: 64vh; background: repeat center bottom /cover; position: relative; display: flex; justify-content: center; align-items: center;}

.bo_topbox.b_1 {background-image: url(./img/b_1_subtop.png);}
.bo_topbox.b_2 {background-image: url(./img/b_2_subtop.png);}
.bo_topbox.b_3 {background-image: url(./img/b_3_subtop.png);}
.bo_topbox.b_4 {background-image: url(./img/b_4_subtop.png);}
.bo_topbox.b_5 {background-image: url(./img/b_5_subtop.png);}
.bo_topbox.b_6 {background-image: url(./img/b_6_subtop.png);}
@media (max-width:480px) {
    .bo_topbox { height: 38vh !important;}
    .bo_topbox.b_1 {background: url(./img/b_1_subtop_m.png) 50% 100%/cover no-repeat;}
    .bo_topbox.b_2 {background: url(./img/b_2_subtop_m.png) 50% 100%/cover no-repeat;}
    .bo_topbox.b_3 {background: url(./img/b_3_subtop_m.png) 50% 100%/cover no-repeat;}
    .bo_topbox.b_4 {background: url(./img/b_4_subtop_m.png) 50% 100%/cover no-repeat;}
    .bo_topbox.b_5 {background: url(./img/b_5_subtop_m.png) 50% 100%/cover no-repeat;}
    .bo_topbox.b_6 {background: url(./img/b_6_subtop_m.png) 50% 100%/cover no-repeat;}
    .bo_topbox .txtbox { margin-bottom: 0; margin-top:4rem;}
}

.bo_topbox .inner { width: 90%; max-width: 1100px; margin: auto;}
.bo_topbox.right .inner { display: flex; justify-content: flex-end;}
.bo_topbox.center .inner { display: flex; justify-content: center;}
.bo_topbox .txtbox { margin-bottom: 0;}
.bo_topbox.right .inner .txtbox { min-width: 440px;}
.bo_topbox .txtbox .sub { font-size: 1.25rem; color: #000000; margin-bottom: 1.25rem;}
.bo_topbox .txtbox .sub.upper {text-transform: uppercase;}
.bo_topbox .txtbox .tit {font-size: 2.3rem; color: #000000; font-weight: 400; margin-bottom: 2.25rem;}
.bo_topbox .txtbox .tit.mb-0 {margin-bottom: 0;}
.bo_topbox .txtbox .desc { font-size: 1rem; color: #616161; font-weight: 400;}
.bo_topbox .txtbox .desc + .desc {margin-top: 2rem;}
.bo_topbox .txtbox .desc2 { font-size: 1.2rem; line-height: 1.6;   letter-spacing: -0.25px; color: #616161; font-weight: 400;}
.bo_topbox .txtbox .desc2 + .desc2 {margin-top: 2rem;}



/* sub_txt */
.sub_txt1 { font-size: 2.3rem; color: #000000;  font-weight: 400;  margin-bottom: 2.5rem;}
.sub_txt2 { font-size: 1rem;  font-weight: 400;  line-height: 1.7;  color: #676767; letter-spacing: -0.25px;}
.sub_txt2 + .sub_txt2  { margin-top: 2rem;}
.sub_txt3 { font-family: 'Marcellus','Noto Sans KR', sans-serif; font-weight: 400; font-size: 1.25rem; color: #676767; margin-bottom: 1.5rem;}
.sub_txt4 { font-weight: 400;  font-size: 1.25rem;  color: #254633; margin-bottom: 0.5rem;}
.sub_txt4.black {color:#000000}
.sub_txt4.light {font-weight: 300; }
.sub_txt4.deco { margin-bottom: 1.25rem; position: relative;  padding-left: 20px; box-sizing: border-box; color: #254633;}
.sub_txt4.deco::before {content: ""; position: absolute; left: 0; top: 0; width: 7px; height: 100%; background-color: #254633;}
.sub_txt5 { font-weight: 400; font-size: 1.1rem; line-height: 1.7; color: #676767;}
.sub_txt5.big { font-size: 1.2rem;  font-weight: bold;}
.sub_txt6 { font-weight: 400; font-size: 1.15rem; color: #676767;margin-bottom: 1.25rem;}



/* sub_badge */
.sub_badge { margin-bottom: 1rem;}
.sub_badge span { font-family: 'Marcellus','Noto Sans KR', sans-serif;  display: inline-block;  background-color: #254633; padding: 0.4rem 1rem;  border-radius: 20px; font-size: 1.25rem;  font-weight: 400;  color: #fff;}
.sub_badge_round {display: inline-block; padding: 0.5rem 1rem;  font-size: 0.9rem; color: #254633; font-weight: 400;  letter-spacing: -0.25px; border: 1px solid #254633;  border-radius: 50%; margin-bottom: 1.25rem;}



/* button */
.button { position: relative;  text-align: center;  border: 1px solid #254633; color: #fff;  background-color: #254633;  overflow: hidden; border-radius: 8px 50px; transition: all 0.75s cubic-bezier(0.19,1,0.22,1);  -webkit-transition: all 0.75s cubic-bezier(0.19,1,0.22,1);  -moz-transition: all 0.75s cubic-bezier(0.19,1,0.22,1); -ms-transition: all 0.75s cubic-bezier(0.19,1,0.22,1); -o-transition: all 0.75s cubic-bezier(0.19,1,0.22,1);  padding: 0.4rem 1.75rem 0.6rem 2rem; font-size: 1.15rem; line-height: 1;  display: inline-flex; align-items: center; gap: 0 0.5rem;}
a.button {color: #fff;}
.button .icon_arrow_right_s_w { margin-top: 0.2rem;}
.button:after { content: "";  position: absolute;  left: -75px;  top: -50px;  width: 50px; height: 155px;  background-color: #fff;  opacity: 0.2;   transform: rotate(35deg) translateZ(0);   -webkit-transform: rotate(35deg) translateZ(0); -moz-transform: rotate(35deg) translateZ(0); -ms-transform: rotate(35deg) translateZ(0); -o-transform: rotate(35deg) translateZ(0); transition: all 0.75s cubic-bezier(0.19,1,0.22,1); -webkit-transition: all 0.75s cubic-bezier(0.19,1,0.22,1); -moz-transition: all 0.75s cubic-bezier(0.19,1,0.22,1); -ms-transition: all 0.75s cubic-bezier(0.19,1,0.22,1); -o-transition: all 0.75s cubic-bezier(0.19,1,0.22,1);}
.button:hover { border-radius: 0;  transition: all 0.75s cubic-bezier(0.19,1,0.22,1); -webkit-transition: all 0.75s cubic-bezier(0.19,1,0.22,1); -moz-transition: all 0.75s cubic-bezier(0.19,1,0.22,1);  -ms-transition: all 0.75s cubic-bezier(0.19,1,0.22,1); -o-transition: all 0.75s cubic-bezier(0.19,1,0.22,1);}
.button:hover:after { left: 120%;}

.button.typeB { color: #000000; border-color: #254633; background-color: #fff;}
a.button.typeB {color: #000000;}

.link_btn { display: inline-flex;  align-items: center; gap: 0 0.5rem; font-size: 1.15rem; color: #455e56; letter-spacing: 1px;  cursor: pointer;}



/* Board Common */
.bo_contents { font-family: 'NanumSquare','Noto Sans KR', sans-serif; }
/* .bo_contents #bo_cate { margin: 0 0 4rem;}
.bo_contents #bo_cate ul { display: flex;  justify-content: center;  align-items: center;}
.bo_contents #bo_cate li { padding: 0; }
.bo_contents #bo_cate a { position: relative;  display: block;  font-size: 1.25rem;  line-height: 1.3;  color: #000000;  font-weight: 500;  border-radius: 0;  padding: 1rem 2rem;  border: 0;  transition: all 0.4s ease; transform : rotate(0.04deg);}
.bo_contents #bo_cate a:hover { background-color: transparent;  color: #000000;}
.bo_contents #bo_cate #bo_cate_on {background: transparent;  color: #445b54;  font-weight: 600;  border: none;  -webkit-box-shadow: none;  -moz-box-shadow: none; box-shadow: none;}
.bo_contents #bo_cate #bo_cate_on:hover { background-color: transparent;  color: #445b54;}
.bo_contents #bo_cate a::before {  content: "";  width: 5px;  height: 5px;  background-color: #254633;  border-radius: 50%;  position: absolute;  left: 50%;  top: 3px;  opacity: 0;   transition: all 0.4s ease;}
.bo_contents #bo_cate #bo_cate_on::before { opacity: 1;}
.bo_contents #bo_cate a::after {  content: "";  position: absolute;  right: 0;  top: 50%;  width: 1px;  height: 30%;  background-color: #dfdfdf; transform: translateY(-50%);}
.bo_contents #bo_cate li:last-child a::after {display: none;}
 */
.bo_contents .bo_list_total {display: none;}
.bo_contents .btn_bo_user { font-size: 15px;}
.bo_contents .btn_bo_user i { font-size: 15px;}
.bo_contents .more_opt li { width: 110px;}

.bo_contents .tbl_wrap table { border: 0;}
.bo_contents .tbl_head01 thead { border-top: 2px solid #c3c2c0; border-bottom: 1px solid #747474;}
.bo_contents .tbl_head01 thead th { border: 0;  font-size: 1rem;  color: #565656; font-weight: 600;  background: #faf9f4;}
.bo_contents .tbl_head01 tr { border-bottom: 1px solid #dddddd;  transform: rotate(0.04deg); }
.bo_contents #bo_list tr td { font-size: 0.95rem; border: 0; color: #565656; font-weight: 600; height: auto; background-color: transparent !important;}
.bo_contents #bo_list tr td span {transform : rotate(0.04deg);}
.bo_contents #bo_list .bo_tit_ul2 > span.link { margin-left: 5px;}
.bo_contents #bo_list .bo_tit_ul2 > span.thum { margin-left: 10px;}
.bo_contents #bo_list .td_num2 {width: 8%; text-align: center;}
.bo_contents #bo_list .td_wr1 {width: 13%; text-align: center; color:#304d44;}
.bo_contents #bo_list .td_subject { padding: 20px 2rem;}
.bo_contents #bo_list .tbl_head01 a { font-size: 0.95rem; color: #565656; font-weight:600;}
.bo_contents #bo_list .td_name {width: 10%; text-align: center;}
.bo_contents #bo_list .td_datetime {width: 10%; text-align: center;}
.bo_contents #bo_list .td_hit { width: 10%; text-align: center;}
.bo_contents #bo_list .td_cmt { width: 10%; text-align: center;}
.bo_contents #bo_list .td_cmt .done{ color: #445b54;}
.bo_contents #bo_list .td_cmt .ing { color: #fff;  background-color: #445b54; padding: 0.4rem 0.8rem;  border-radius: 30px;}
.bo_contents .bo_fx { float: none; margin-top: 2rem;}
.bo_contents .bo_fx .btn_bo_user_btm { text-align: right;}
.bo_contents #bo_list .bo_fx a.btn_b01 { border-radius: 0;  font-size: 1rem; padding: 0.25rem 2.5rem;  height: auto; display: inline-block;}

.bo_contents .pg_wrap { margin-top: 3rem; float: none; display: block; text-align: center;}
.bo_contents .pg_wrap .pg_page.pg_start { border: 1px solid #e1e1e1; background: url(img/btn_first.png) no-repeat center;  border-radius: 0; margin-right: 10px; margin-left: 0;}
.bo_contents .pg_wrap .pg_page.pg_prev { border: 1px solid #e1e1e1;  background: url(img/btn_prev.png) no-repeat center; border-radius: 0;  margin-right: 10px; margin-left: 0;}
.bo_contents .pg_wrap .pg_page.pg_end { border: 1px solid #e1e1e1;  background: url(img/btn_end.png) no-repeat center;  border-radius: 0;  margin-left: 10px;  margin-right: 0;}
.bo_contents .pg_wrap .pg_page.pg_next {  border: 1px solid #e1e1e1;  background: url(img/btn_next.png) no-repeat center;  border-radius: 0;  margin-left: 10px;  margin-right: 0;}
.bo_contents .pg_wrap .pg_page { color: #b0b0b0;  border: 0; font-size: 1rem; height: 30px;  line-height: 30px;  border-radius: 0;   background-color: transparent; margin: 0 15px;}
.bo_contents .pg_wrap .pg_current { font-size: 1rem; padding: 0 5px; background: transparent; border: none;  color: #565656; border-radius: 0px; margin: 0 15px;}

.bo_contents #bo_v { font-size: 1rem;  font-weight: 400;}
.bo_contents #bo_v_title .bo_v_tit { font-size: 1.35rem;}
.bo_contents #bo_v_info strong.bo_name { display: block;}
.bo_contents #bo_v_con { padding: 1rem 0; transform: rotate(0.04deg);}
.bo_contents #bo_v .add_txt1 { font-size: 1.1rem;  color: #000000;  font-weight: 600;  margin-bottom: 1rem;}
.bo_contents .cmt_btn b { font-size: 1em; }
.bo_contents .cmt_btn span.total { color: #445b54;}
.bo_contents #bo_v_share { font-size: 14px;}

.bo_contents #bo_w { font-size: 1.15rem; font-weight: 400;}
.bo_contents #bo_w .bo_v_option li label {  height: 25px;  line-height: 25px;  padding-top: 2px;  margin-right: 10px; margin-bottom: 10px; display: inline-block; transform: rotate(0.04deg); color: #000000;  font-weight: 500;}

.bo_contents #bo_sch { display: flex;  justify-content: flex-end; align-items: center; font-size: 1.1rem; margin-bottom: 1.5rem;}
.bo_contents #bo_sch >form { display: flex; align-items: center;}
.bo_contents #bo_sch select#sfl { background: url(./img/select_arrow.png) no-repeat calc(100% - 0.85rem) center; border: 1px solid rgba(112, 112, 112, 1);  border-radius: 30px; padding: 0.5rem 1rem;  color: #5b5b5b;  position: relative; width: 100px; -o-appearance: none; -webkit-appearance: none;  -moz-appearance: none; appearance: none;}
.bo_contents #bo_sch select#sfl::after { content: "▼";  position: absolute; right: 1rem; top: 50%; transform: translateY(-50%);}
.bo_contents #bo_sch .sch_input { width: 220px; border: 1px solid rgba(112, 112, 112, 1); background: transparent;  border-radius: 30px; padding: 0.5rem 1rem; color: #5b5b5b;  position: relative;  margin: 0 0.5rem;}
.bo_contents #bo_sch .sch_btn { /* background: url(./img/sch_icon.png) no-repeat center /100% !important; */ width: 20px; height: 20px;  border: 0px;}

.bo_contents .bo_cate_sel { background: url(./img/select_arrow.png) no-repeat calc(100% - 0.85rem) center; border: 1px solid #b7b7b7; border-radius: 30px;  padding: 0.5rem 1rem; color: #5b5b5b;  position: relative;  width: 100px;  -o-appearance: none;  -webkit-appearance: none;  -moz-appearance: none;  appearance: none;}


.bo_contents #bo_v_title .bo_v_tit,
.bo_contents .cmt_btn b { font-weight: 500;}

#bo_w .bo_w_select select,
#bo_w .w_inputs,
#bo_w .bo_w_flie .file_wr,
#bo_w button.btn_submit,
select,
input { font-family: 'Noto Sans KR', sans-serif}
#bo_w .bo_w_flie .file_wr {display: flex; align-items: center;}

/* 반응형 */
/* PC */

@media (max-width:1850px) {

    /* sub2-5 */
    .sub_2_5 .S4 .contbox .txtbox { padding-right: 0;}
  
  }
  
  @media (max-width:1730px) {
  
     html, body{ font-size:15px !important;}
    
  } 
  
  
  @media screen and (max-width: 1320px) {
  
    html, body{ font-size:14px !important;}
  
  }
  
    
  @media screen and (max-width: 1200px) {
  
    .bo_contents #bo_list .td_datetime { width: 13%;}

  }
  
  @media screen and (max-width: 1080px) {
  
   
  }
  
  @media screen and (max-width:1024px) {
  
    html, body{ font-size:13px !important;}
    .pc {display: none !important; }
    .mob {display: block !important;  }
    
    /* sub common */
    .bo_topbox { height: 85vh;}
    .bo_topbox .txtbox { margin-bottom: 0;}
    .bo_topbox .txtbox .sub { font-size: 1.5rem; margin-bottom: 1rem;}
    .bo_topbox .txtbox .tit { font-size: 2.4rem;  margin-bottom: 2rem;}
    .bo_topbox .txtbox .desc { font-size: 1.25rem;}
    .sub_txt1 { font-size: 2rem;  margin-bottom: 2rem;}
  
  }
  
    
  /* tablet */
  @media (hover: none) and (pointer: coarse) and (max-width:1024px)  {
    
    /* sub common */
    .bo_topbox { height: 65vh;}
  
  }
 

  @media screen and (max-width: 960px) {

    html, body{ font-size:14px !important; }

    .bo_mo_cate { position: relative !important; margin-bottom: 2rem; }
  
  }
  
  
  
  /* mobile */
  
  @media screen and (max-width: 800px) {
  
    .mob2 { display: block !important; }  
    html, body { font-size: 13px !important; } 
    
    .bo_contents { margin-top: 8rem; padding-bottom: 8rem; }
    .tbl_head01 thead th {padding: 15px 0; }
    #bo_list .tbl_head01 td { padding: 15px 5px !important; }
    .bo_contents #bo_list .td_subject { padding: 15px 1rem; }
  
  }
  
  
  @media screen and (max-width: 640px) {
  
    html, body{ font-size:12px !important; }
  
    .bo_contents .pg_wrap .pg_page { margin: 0 0.5rem; }
    .bo_contents .pg_wrap .pg_current { margin: 0 0.5rem; }
  }
  
  
  @media screen and (max-width: 599px) {
  
    html, body { font-size:11px !important;  }
  
     /* sub common */
     .sub_txt2 {  font-size: 1.2rem;}
     .bo_topbox::before { content: "";  position: absolute;  left: 0;  top: 0%;  width: 100%;  height: 35%;  backdrop-filter: blur(2px);  background: linear-gradient(to bottom, transparent, rgba(255,255,255,0.5), transparent);}   

     .bo_contents #bo_cate a {padding: 1rem;}
     .bo_contents #bo_cate a::before {width: 3px; height: 3px;}
     .bo_contents #bo_sch .sch_input { width: 150px; }

     .w_tables .thead { font-size: 1.2rem !important;}
    
      
    .bo_contents .pg_wrap span.pg{display:flex; flex-wrap:wrap; justify-content:center; align-items:flex-start;}
    .bo_contents .pg_wrap .pg_page.pg_start { width:5%; margin-right:5px;}
    .bo_contents .pg_wrap .pg_page.pg_prev { width:5%; margin-right:5px;}
    .bo_contents .pg_wrap .pg_page.pg_end {width:5%;  margin-left:5px;}
    .bo_contents .pg_wrap .pg_page.pg_next {width:5%;  margin-left:5px;}
    .bo_contents .pg_wrap .pg_page { width:12%; margin:0; font-weight:400;}
    .bo_contents .pg_wrap .pg_current { width:12%; margin:0; font-weight:400;}
  }
  
 
  @media screen and (max-width: 376px) {
  
    html, body { font-size:10px !important;}
  
  }
  
  @media screen and (max-width: 320px) {
  
    .bo_contents #bo_cate a {padding: 1rem 0.75rem;}
    .bo_contents #bo_sch .sch_input { width: 130px; }
  
  }
  
