@charset "utf-8";

/* =========================
   초기화 / 기본 글꼴
========================= */
html { overflow-y: scroll; }
body { margin:0; padding:0; font-size:0.75em; background:#fff; }
html, h1, h2, h3, h4, h5, h6, form, fieldset, img { margin:0; padding:0; border:0; }
h1, h2, h3, h4, h5, h6 { font-size:1em; font-family:'', dotum, sans-serif; }

h3 { font-size:2.8em; margin:0 auto; padding:48px 0 0 0; border:0; text-align:center; color:#373737; }
h4 { margin:0; padding:24px 0; border:0; text-align:center; color:#bbb; font-size:clamp(1.2rem, 5vw, 2.6rem); }
p5 { font-size:2.8em; padding:0; border:0; text-align:center; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display:block; }
p3 { font-size:clamp(16px, 1vw, 20px); padding:0; border:0; text-align:center; color:#999; }
ul, dl, dt, dd { margin:0; padding:0; list-style:none; }
legend { position:absolute; margin:0; padding:0; font-size:0; line-height:0; text-indent:-9999em; overflow:hidden; }
label, input, button, select, img { vertical-align:middle; font-size:1em; }
input, button { margin:0; padding:0; font-family:'Malgun Gothic', dotum, sans-serif; font-size:1em; }
input[type="submit"] { cursor:pointer; }
button { cursor:pointer; }
textarea, select { font-family:'Malgun Gothic', dotum, sans-serif; font-size:1em; }
select { margin:0; }
p { margin:0; padding:0; word-break:break-all; }
hr { display:none; }
pre { overflow-x:scroll; font-size:1.1em; }
a { color:#000; text-decoration:none; }

*, :after, :before { -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }

input[type=text], input[type=password], textarea {
  -webkit-transition:all 0.30s ease-in-out;
  -moz-transition:all 0.30s ease-in-out;
  -ms-transition:all 0.30s ease-in-out;
  -o-transition:all 0.30s ease-in-out;
  outline:none;
}
input[type=text]:focus, input[type=password]:focus, textarea:focus, select:focus {
  -webkit-box-shadow:0 0 5px #9ed4ff;
  -moz-box-shadow:0 0 5px #9ed4ff;
  box-shadow:0 0 5px #9ed4ff;
  border:1px solid #558ab7 !important;
}

.placeholdersjs { color:#aaa !important; }
:root {
  --font-primary: 'Pretendard Variable', -apple-system, BlinkMacSystemFont,
                  'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}
html, body, button, input, select, textarea {
  font-family: var(--font-primary);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* =========================
   레이아웃
========================= */
#hd, #wrapper, #ft {}
#hd_pop, #hd_wrapper, #tnb .inner, #gnb .gnb_wrap, #container_wr, #ft_wr { margin:0 auto; }

/* 팝업레이어 */
#hd_pop { z-index:1000; position:relative; margin:0 auto; height:0; }
#hd_pop h2 { position:absolute; font-size:0; line-height:0; overflow:hidden; }
.hd_pops { position:absolute; border:1px solid #e9e9e9; background:#fff; }
.hd_pops img { max-width:100%; }
.hd_pops_con {}
.hd_pops_footer { padding:0; background:#000; color:#fff; text-align:left; position:relative; }
.hd_pops_footer:after { display:block; visibility:hidden; clear:both; content:""; }
.hd_pops_footer button { padding:10px; border:0; color:#fff; }
.hd_pops_footer .hd_pops_reject { background:#000; text-align:left; }
.hd_pops_footer .hd_pops_close { background:#393939; position:absolute; top:0; right:0; }

/* 상단 레이아웃 */
#hd {  background-color:#fff; }
#hd_h1 { position:absolute; font-size:0; line-height:0; overflow:hidden; }

#tnb { border-bottom:1px solid #383838; margin:0 auto; }
#tnb:after { display:block; visibility:hidden; clear:both; content:""; }
#tnb .inner { margin:0 auto; }

/* 헤더 래퍼(고정) */
#hd_wrapper{
  position: fixed;
  top:0; left:0; width:100%;
  z-index:9999 !important;
  background: rgba(0,0,0,0.05);
  height:auto; min-height:120px;
  transition: background .3s ease;
}
#hd_wrapper.scrolled { background: rgba(0,0,0,0.8); }
#hd_wrapper:after { display:block; visibility:hidden; clear:both; content:""; }

#logo { width:100%; height:auto; max-width:248px; padding:0; float:left; }
#logo img{ width:100%; height:auto; max-width:248px; }

.hd_sch_wr { float:left; padding:30px 0; width:445px; margin-left:65px; }
#hd_sch h3 { position:absolute; font-size:0; line-height:0; overflow:hidden; }
#hd_sch { border-radius:30px; overflow:hidden; }
#hd_sch #sch_stx { float:left; width:385px; height:45px; padding-left:10px; border-radius:30px 0 0 30px; background:#2c2c2c; border:0; border-right:0; font-size:1.25em; color:#fff; }
#hd_sch #sch_submit { float:left; width:60px; height:45px; border:0; background:#2c2c2c; color:#fff; border-radius:0 30px 30px 0; cursor:pointer; font-size:16px; }

#hd_define { float:left; }
#hd_define:after { display:block; visibility:hidden; clear:both; content:""; }
#hd_define li { float:left; font-size:1.083em; line-height:14px; border-right:1px solid #4a4a4a; position:relative; text-align:center; margin:15px 10px 15px 0; padding-right:10px; }
#hd_define li:last-child { padding-right:0; margin-right:0; border-right:0; }
#hd_define li a { display:inline-block; color:#919191; }
#hd_define li.active a { color:#fff; }

#hd_qnb { float:right; text-align:right; }
#hd_qnb:after { display:block; visibility:hidden; clear:both; content:""; }
#hd_qnb li { float:left; font-size:1.083em; line-height:14px; border-right:1px solid #4a4a4a; position:relative; text-align:center; margin:15px 10px 15px 0; padding-right:10px; }
#hd_qnb li:last-child { padding-right:0; margin-right:0; border-right:0; }
#hd_qnb li span { display:block; margin-top:5px; font-size:0.92em; }
#hd_qnb li a { display:inline-block; color:#919191; }
#hd_qnb .visit .visit-num { display:inline-block; line-height:16px; padding:0 5px; margin-left:5px; border-radius:10px; background:#da22f5; color:#fff; font-size:10px; }

.hd_login {display:none;}
.hd_login li { float:left; margin:0 5px; padding-left:10px; line-height:13px; }
.hd_login li:first-child { border-left:0; }
.hd_login a { color:#212020; }

/* =========================
   GNB (메인메뉴)
========================= */
#gnb { position:relative; font-size:18px; width:96%; margin:0 auto; }
#gnb > h2 { position:absolute; font-size:0; line-height:0; overflow:hidden; }
#gnb .gnb_wrap { max-width:1440px; margin:0 auto; position:relative; }
#gnb .gnb_wrap:hover, #gnb .gnb_wrap:focus, #gnb .gnb_wrap:active { z-index:3; }
#gnb #gnb_1dul { font-size:1.1em; padding-left:30%; zoom:1; }
#gnb ul:after { display:block; visibility:hidden; clear:both; content:""; }
#gnb .gnb_1dli { float:left; line-height:55px; padding:0; position:relative; }
#gnb .gnb_1dli:hover > a {
  color:#93BFFF;
  transition:background-color .3s ease-out;
}

.gnb_1dli .bg { position:absolute; top:24px; right:8px; display:none; width:10px; height:10px; overflow:hidden; background:url('../img/gnb_bg2.gif') no-repeat 50% 50%; text-indent:-999px; }
.gnb_1da { display:block; font-weight:bold; padding:0 24px; color:#fff; text-decoration:none; }
.gnb_1dli.gnb_al_li_plus .gnb_1da{ padding-right:25px; }

.gnb_2dli:first-child { border:0; }
.gnb_2dul { display:none; position:absolute; top:54px; min-width:140px; padding-top:2px; }
.gnb_2dul .gnb_2dul_box { border-top:0; padding:0;
  -webkit-box-shadow:0 1px 5px rgba(97,97,97,.2);
  -moz-box-shadow:0 1px 5px rgba(97,97,97,.2);
  box-shadow:0 1px 5px rgba(97,97,97,.2);
}
.gnb_2da {
  width:100%; min-width:158px; display:block;
  padding:12px 24px; line-height:24px;
  background-color:#fff; color:#222; text-align:left; text-decoration:none; border-bottom:1px solid #ddd; "Pretendard Medium"; font-size:16px;
}
.fa {
    display: inline-block;
    font: normal normal normal 14px / 1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
a.gnb_2da:hover {
  color:#fff; background:#3a8afd;transition:all .3s ease-out;}
.gnb_1dli_over .gnb_2dul { display:block; left:0; }
.gnb_1dli_over2 .gnb_2dul { display:block; right:0; }
.gnb_wrap .gnb_empty { padding:10px 0; width:100%; text-align:center; line-height:2.7em; color:#080808; }
.gnb_wrap .gnb_empty a { color:#3a8afd; text-decoration:underline; }
.gnb_wrap .gnb_al_ul .gnb_empty, .gnb_wrap .gnb_al_ul .gnb_empty a { color:#555; }

#gnb .gnb_menu_btn { background:rgba(0,0,0,0.1); color:#fff; width:48px; height:48px; border:0; vertical-align:top; font-size:20px; margin-top:8px; border-radius:8px; }
#gnb .gnb_close_btn { background:#fff; color:#b6b9bb; width:50px; height:50px; border:0; vertical-align:top; font-size:18px; position:absolute; top:0; right:0; border-radius:12px; }
#gnb .gnb_mnal { float:right; padding:0; }

/* =========================
   전체메뉴(오버레이) - 그리드 / 세로깨짐 방지
========================= */
#gnb_all{
  display:none;
  position:fixed;
  left:0; right:0; top:0; bottom:0;
  padding:24px;
  width:auto; max-width:none;
  background:rgba(255,255,255,0.95);
  z-index:1000;
  box-shadow:0 2px 5px rgba(0,0,0,0.2);
  border-radius:12px;
  overflow:auto;
  
  max-width:1280px;
  margin:120px auto;
}
#gnb_all .gnb_close_btn{
  position:absolute; top:12px; right:12px; z-index:1001;
}
#gnb_all_bg{
  display:none; background:rgba(0,0,0,0.1);
  width:100%; height:100%; position:fixed; left:0; top:0; z-index:999;
}

/* 세로 글자 깨짐 강제 방지 */
#gnb_all, #gnb_all *{
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
}

/* 그리드 컬럼 */
#gnb_all .gnb_al_ul{
  display:grid;
  grid-template-columns: repeat(6, minmax(180px, 228px));
  gap:16px 24px;
  padding:8px 8px 24px;
  list-style:none;
}
#gnb_all .gnb_al_li{
  float:none; width:auto; min-height:auto;
  padding:12px 16px 24px; border-left:0; box-sizing:border-box;
}
#gnb_all .gnb_al_ul > li:nth-child(5n+1){ border-left:0; }

#gnb_all .gnb_al_li .gnb_al_a{
  font-size:1.2em; display:block; position:relative;
  margin-bottom:10px; font-weight:bold; color:#3a8afd; white-space:nowrap;
}
#gnb_all .gnb_al_li li{ line-height:2em; }
#gnb_all .gnb_al_li li a{
  color:#171717;
  word-break: keep-all;
  overflow-wrap: break-word;
}
.nav_menu_btn {
  width:56px; height:56px;   /* ← 크기 키움 */
  border:0; border-radius:12px;
  background:rgba(255,255,255,0.12);
  color:#fff; font-size:22px; /* 아이콘 크기 */
  display:flex; align-items:center; justify-content:center;
  cursor:pointer;
  transition:background .2s ease, transform .1s ease;
}
.nav_menu_btn:hover { background:rgba(255,255,255,0.2); }
.nav_menu_btn:active { transform:scale(.96); }

/* KOR 버튼 */

#nav_list .lang a:hover { background:rgba(255,255,255,0.25); }
/* 반응형 컬럼 수 */
@media (max-width:1280px){ #gnb_all .gnb_al_ul{ grid-template-columns:repeat(4, minmax(180px,1fr)); } }
@media (max-width:1024px){ #gnb_all .gnb_al_ul{ grid-template-columns:repeat(3, minmax(180px,1fr)); } }
@media (max-width:768px) { #gnb_all .gnb_al_ul{ grid-template-columns:repeat(2, minmax(160px,1fr)); } }
@media (max-width:520px) { #gnb_all .gnb_al_ul{ grid-template-columns:1fr; } }

/* 헤더 전체 */
#hd_wrapper {
  position: fixed;
  top:0; left:0; width:100%;
  z-index:9999 !important;
  background: rgba(0,0,0,0.05);
  transition: background .3s ease;
  display:flex; align-items:center;
}
#hd_wrapper.scrolled { background: rgba(0,0,0,0.8); }

/* Navigation */
#main_nav {
  flex:1 1 auto;
  font-size:18px;
  width:100%;
  max-width:1880px;
  margin:0 auto;
  display:flex; 
  align-items:center;
justify-content: center;
}
.nav_wrap{width:100%; max-width:1560px; padding:0 48px 0 48px;}
#main_nav > h2 { position:absolute; font-size:0; line-height:0; overflow:hidden; }

/* Logo */
#logo { flex:0 0 auto; max-width:248px; padding-top:6px;}
#logo img { width:100%; height:auto; }

/* nav_list */
#nav_list {
  flex:1 1 auto;
  display:flex; align-items:center; justify-content:flex-end;
  gap:24px;
  list-style:none;
  margin:0; padding:0;
}

/* 1depth */
.nav_item { position:relative; font-size:20px; font-family:"Pretendard SemiBold";}
.nav_link {
  display:block;
  font-weight:600;
  padding:0 12px;
  color:#fff;
  text-decoration:none;
  line-height:60px;
  white-space:nowrap;
}
#nav_list > .nav_item:nth-child(4){padding-right:16%;}
.nav_item:hover > .nav_link { color:#93BFFF; }

/* KOR 버튼 */
#nav_list .lang a {
  display:inline-block;
  padding:6px 14px;
  letter-spacing:.02em;
  color:#fff;
  transition:all .2s ease;
     width: 68px;
    height: 28px;
    float: right;
    margin-top: 12px;
    text-align: center;
    line-height: 18px;
    border: .5px solid #999;
    border-radius: 36px;
	font-size:14px;
}

#nav_list .lang a:hover {
  background:rgba(255,255,255,0.25);
}

/* 2depth submenu */
.submenu {
  display:none;
  position:absolute;
  top:100%;
  left:0;
  min-width:180px;
  padding-top:8px;
}
.submenu_link {
  display:block;
  padding:10px 16px;
  background:#fff;
  color:#111;
  text-align:left;
  font-size:16px;
  text-decoration:none;
}
.submenu_link:hover { color:#3a8afd; background:#f7f7f7; }
.nav_item:hover .submenu { display:block; }

#all_menu { display:none; position:fixed; inset:0; padding:24px; background:rgba(255,255,255,0.95); z-index:1000; border-radius:12px; overflow:auto; max-width:1280px; margin:120px auto; box-sizing:border-box; overflow-x:hidden; }
#all_menu_bg { display:none; background:rgba(0,0,0,0.35); width:100%; height:100%; position:fixed; inset:0; z-index:999; }
#all_menu.is-open { display:grid; grid-template-columns:1fr max-content; column-gap:24px; row-gap:16px; align-items:start; }
#all_menu_bg.is-open { display:block; }
#all_menu .all_menu_ul { display:grid; grid-template-columns:repeat(6, minmax(180px,1fr)); gap:16px 24px; list-style:none; margin:0; padding:0; min-width:0; }
.all_menu_item { padding:12px 16px 24px; min-width:0; }
.all_menu_link { font-size:1.2em; font-weight:bold; color:#3a8afd; margin-bottom:10px; display:block; text-decoration:none; line-height:1.2; word-break:keep-all; }
.all_menu_link:hover, .all_menu_link:focus { text-decoration:underline; }
#all_menu .all_menu_item>ul { list-style:none; margin:0; padding:0; }
#all_menu .all_menu_item>ul>li>a { display:block; padding:8px 0; color:#222; text-decoration:none; line-height:1.35; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#all_menu .all_menu_item>ul>li>a:hover, #all_menu .all_menu_item>ul>li>a:focus { color:#0b57d0; text-decoration:underline; }


#nav_list > li.nav_item:nth-of-type(6) {

}
#nav_list{
  flex:1 1 auto; display:flex; align-items:center; gap:20px;
  list-style:none; margin:0; padding:0; justify-content:flex-end;
}
.nav_left_group{ display:flex; align-items:center; gap:12px; margin-right:auto; }

/* 햄버거 버튼: 반투명 네모 + 둥근 모서리 + 블러 */
.nav_menu_btn{
      background: rgba(0, 0, 0, 0.1);
    color: #fff;
    width: 48px;
    height: 48px;
    border: 0;
    vertical-align: top;
    font-size: 20px;
    margin-top: 8px;
    border-radius: 8px;
}
.latest_top_wr img{display:none;}
.nav_menu_btn:focus-visible{ outline:2px solid #111; outline-offset:2px; }

/* 세 줄을 box-shadow로 한 번에 그리기 */
.nav_menu_btn::before{
  content:"";
  width:var(--size);
  height:var(--thick);
  background:currentColor;
  box-shadow: 0 calc(var(--gap)) 0 0 currentColor,
              0 calc(var(--gap) * -1) 0 0 currentColor;
  border-radius:1px;
  display:block;
}
.nav_menu_btn:hover{ background:rgba(140,140,180,0.42); box-shadow:0 8px 18px rgba(0,0,0,0.22); }
.nav_menu_btn:active{ transform:scale(.96); }

/* 햄버거 아이콘(3줄) - 폰트아이콘 없이 CSS로 그리기 */
.icon-burger{
  position:relative; width:24px; height:2px; background:#fff; border-radius:2px;
}
.icon-burger::before, .icon-burger::after{
  content:""; position:absolute; left:0; right:0; height:2px; background:#fff; border-radius:2px;
}
.icon-burger::before{ top:-8px; }
.icon-burger::after{ top:8px; }

/* ENG/KOR 칩: 얇은 라인 + 살짝 글래스 */
.lang_chip{
  display:inline-block; padding:8px 14px; border-radius:999px;
  border:1px solid rgba(240,230,140,0.7); /* 연한 노랑 라인 */
  color:#fff; text-decoration:none; font-weight:600; letter-spacing:.06em;
  background:rgba(255,255,255,0.06);
  backdrop-filter:saturate(120%) blur(4px);
  -webkit-backdrop-filter:saturate(120%) blur(4px);
  transition:background .2s ease, border-color .2s ease;
}
.lang_chip:hover{ background:rgba(255,255,255,0.12); border-color:rgba(255,255,255,0.9); }

/* 헤더 스크롤 상태에서도 버튼/칩 가독성 유지 */
#hd_wrapper.scrolled .lang_chip{ background:rgba(255,255,255,0.1); border-color:rgba(255,255,255,0.8); }
#hd_wrapper.scrolled .nav_menu_btn{ background:rgba(90,90,120,0.5); }


/* =========================
   중간 레이아웃
========================= */
#wrapper {}
#container_wr:after { display:block; visibility:hidden; clear:both; content:""; }
#container_wr { margin:0 auto; zoom:1; }
#aside { float:right; width:235px; padding:0; height:100%; margin:20px 0 20px 20px; display:none; }

#container { position:relative; float:left; min-height:500px; height:auto !important; margin:20px 0; font-size:1em; width:930px; zoom:1; }
#container:after { display:block; visibility:hidden; clear:both; content:""; }
#container_title { font-size:1.333em; margin:0 auto; font-weight:bold; }
#container_title span { margin:0 auto 10px; display:block; line-height:30px; }

.lt_wr { width:32%; }
.lt_wr:nth-child(3n+1) { clear:both; }
.latest_wr { margin-top:120px; margin-bottom:20px; }
.latest_wr:after { display:block; visibility:hidden; clear:both; content:""; }
.latest_top_wr { width:100%; max-width:1440px; display:flex; justify-content:space-between; margin:0 auto; padding:0; }
.latest_top_wr:after { display:none; visibility:hidden; clear:both; content:""; }

/* =========================
   하단 레이아웃
========================= */
#ft { width:100%; background:#212020; margin:0 auto; text-align:center; }
#ft h1 { position:absolute; font-size:0; line-height:0; overflow:hidden; }
#ft_wr {
  display:block;
  width:100%; max-width:1440px;
  margin:0 auto; padding:48px 12px 68px 12px; box-sizing:border-box;
}
#ft_wr:after { display:block; visibility:hidden; clear:both; content:""; }
#ft_wr .ft_cnt { float:left; padding:0 20px; box-sizing:border-box; }
#ft_wr .ft_cnt img { display:block; max-width:248px; height:auto; }
#ft_link { text-align:left; width:100%; max-width:148px; }
#ft_link a { display:block; color:#fff; line-height:2em; font-weight:bold; }
#ft_company h2 { font-size:1.2em; margin-bottom:20px; }
#ft_company { font-weight:normal; color:#e3e3e3; line-height:2em; text-align:left; float:right !important;  font-size: clamp(16px, 0.9vw, 18px); }
#ft_catch { margin:20px 0 10px; }
#ft_copy { text-align:center; max-width:1200px; margin:0 auto; padding:20px 0; color:#5b5b5b; font-size:0.92em; border-top:1px solid #383838; }
#top_btn { position:fixed; bottom:140px; right:20px; width:50px; height:50px; line-height:46px; border:1px solid #FF8C42; color:#fff; text-align:center; font-size:15px; z-index:90; background:#FF8C42; border-radius:68px; }
#top_btn:hover { border-color:#3059c7; background:#3059c7; color:#fff; }

/* =========================
   기타 컴포넌트
========================= */
#copymove {}
#copymove .win_desc { text-align:center; display:block; }
#copymove .tbl_wrap { margin:20px; }
#copymove .win_btn { padding:0 20px 20px; }
.copymove_current { float:right; background:#ff3061; padding:5px; color:#fff; border-radius:3px; }
.copymove_currentbg { background:#f4f4f4; }

#hd_login_msg { position:absolute; top:0; left:0; font-size:0; line-height:0; overflow:hidden; }
.msg_sound_only, .sound_only { display:inline-block !important; position:absolute; top:0; left:0; width:0; height:0; margin:0 !important; padding:0 !important; font-size:0; line-height:0; border:0 !important; overflow:hidden !important; }

#skip_to_container a { z-index:100000; position:absolute; top:0; left:0; width:1px; height:1px; font-size:0; line-height:0; overflow:hidden; }
#skip_to_container a:focus, #skip_to_container a:active { width:100%; height:75px; background:#21272e; color:#fff; font-size:2em; font-weight:bold; text-align:center; text-decoration:none; line-height:3.3em; }

.img_fix { width:100%; height:auto; }

/* 캡챠 */
#captcha { display:inline-block; position:relative; }
#captcha legend { position:absolute; margin:0; padding:0; font-size:0; line-height:0; text-indent:-9999em; overflow:hidden; }
#captcha #captcha_img { height:40px; border:1px solid #898989; vertical-align:top; padding:0; margin:0; }
#captcha #captcha_mp3 { margin:0; padding:0; width:40px; height:40px; border:0; background:transparent; vertical-align:middle; overflow:hidden; cursor:pointer; background:url('../../../img/captcha2.png') no-repeat; text-indent:-999px; border-radius:3px; }
#captcha #captcha_reload { margin:0; padding:0; width:40px; height:40px; border:0; background:transparent; vertical-align:middle; overflow:hidden; cursor:pointer; background:url('../../../img/captcha2.png') no-repeat 0 -40px; text-indent:-999px; border-radius:3px; }
#captcha #captcha_key { margin:0 0 0 3px; padding:0 5px; width:90px; height:40px; border:1px solid #ccc; background:#fff; font-size:1.333em; font-weight:bold; text-align:center; border-radius:3px; vertical-align:top; }
#captcha #captcha_info { display:block; margin:5px 0 0; font-size:0.95em; letter-spacing:-0.1em; }

#captcha.m_captcha audio { display:block; margin:0 0 5px; width:187px; }
#captcha.m_captcha #captcha_img { width:160px; height:60px; border:1px solid #e9e9e9; margin-bottom:3px; margin-top:5px; display:block; }
#captcha.m_captcha #captcha_reload { position:static; margin:0; padding:0; width:40px; height:40px; border:0; background:transparent; vertical-align:middle; overflow:hidden; cursor:pointer; background:url('../../../img/captcha2.png') no-repeat 0 -40px; text-indent:-999px; }
#captcha.m_captcha #captcha_reload span { display:none; }
#captcha.m_captcha #captcha_key { margin:0; padding:0 5px; width:115px; height:29px; border:1px solid #b8c9c2; background:#f7f7f7; font-size:1.333em; font-weight:bold; text-align:center; line-height:29px; margin-left:3px; }
#captcha.m_captcha #captcha_info { display:block; margin:5px 0 0; font-size:0.95em; letter-spacing:-0.1em; }
#captcha.m_captcha #captcha_mp3 { width:31px; height:31px; background:url('../../../img/captcha2.png') no-repeat 0 0; vertical-align:top; overflow:hidden; cursor:pointer; text-indent:-9999px; border:none; }

/* ckeditor / sv / 페이징 등 */
.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%; }

#bo_v_con ul { display:block; list-style-type:disc; margin:1em 0; padding-left:40px; }
#bo_v_con ol { display:block; list-style-type:decimal; margin:1em 0; padding-left:40px; }
#bo_v_con li { display:list-item; }

a.btn,.btn { line-height:35px; height:35px; padding:0 10px; text-align:center; font-weight:bold; border:0; font-size:1.4em; transition:background-color .3s ease-out; }
a.btn01 { display:inline-block; padding:7px; border:1px solid #ccc; background:#fafafa; color:#000; text-decoration:none; vertical-align:middle; }
a.btn01:focus, a.btn01:hover { text-decoration:none; }
button.btn01 { display:inline-block; margin:0; padding:7px; border:1px solid #ccc; background:#fafafa; color:#000; text-decoration:none; }
a.btn02 { display:inline-block; padding:7px; border:1px solid #3b3c3f; background:#4b545e; color:#fff; text-decoration:none; vertical-align:middle; }
a.btn02:focus, .btn02:hover { text-decoration:none; }
button.btn02 { display:inline-block; margin:0; padding:7px; border:1px solid #3b3c3f; background:#4b545e; color:#fff; text-decoration:none; }

.btn_confirm { text-align:right; }
.login_if_auto chk_box{max-width:280px;}
.btn_submit { border:0; background:#3a8afd; color:#fff; cursor:pointer; border-radius:3px; padding: 4px 12px;margin:12px 0;}
#login_info a{padding-right:20px;}
.btn_submit:hover { background:#2375eb; }
.btn_close { border:1px solid #dcdcdc; cursor:pointer; border-radius:3px; background:#fff; }
a.btn_close { text-align:center; line-height:50px; }

a.btn_cancel, button.btn_cancel { display:inline-block; background:#969696; color:#fff; text-decoration:none; vertical-align:middle; }
.btn_cancel:hover { background:#aaa; }
a.btn_frmline, button.btn_frmline { display:inline-block; width:128px; padding:0 5px; height:40px; border:0; background:#434a54; border-radius:3px; color:#fff; text-decoration:none; vertical-align:top; }

a.btn_b01,.btn_b01 { display:inline-block; color:#bababa; text-decoration:none; vertical-align:middle; border:0; background:transparent; }
.btn_b01:hover { color:#000; }
a.btn_b02,.btn_b02 { display:inline-block; background:#253dbe; padding:0 10px; color:#fff; text-decoration:none; border:0; vertical-align:middle; }
a.btn_b02:hover { background:#0025eb; }
a.btn_b03, .btn_b03 { display:inline-block; background:#fff; border:1px solid #b9bdd3; color:#646982; text-decoration:none; vertical-align:middle; }
a.btn_b03:hover { background:#ebedf6; }
a.btn_b04, .btn_b04 { display:inline-block; background:#fff; border:1px solid #ccc; color:#707070; text-decoration:none; vertical-align:middle; }
a.btn_b04:hover { color:#333; background:#f9f9f9; }
a.btn_admin,.btn_admin { display:inline-block; color:#d13f4a; text-decoration:none; vertical-align:middle; }
.btn_admin:hover { color:#ff3746; }

/* 기본/리스트/폼 테이블 */
.tbl_wrap table { width:100%; border-collapse:collapse; border-spacing:0 5px; background:#fff; border-top:1px solid #ececec; border-bottom:1px solid #ececec; }
.tbl_wrap caption { padding:10px 0; font-weight:bold; text-align:left; }

.tbl_head01 { margin:0 0 10px;font-family:"Pretendard Medium"; font-size:clamp(16px, 1vw, 18px); color:#333; }
.tbl_head01 caption { padding:0; font-size:0; line-height:0; overflow:hidden; }
.tbl_head01 thead th { padding:20px 0; font-weight:normal; text-align:center; border-bottom:1px solid #ececec; height:40px; }
.tbl_head01 thead th input { vertical-align:top; }
.tbl_head01 tfoot th, .tbl_head01 tfoot td { padding:10px 0; border-top:1px solid #c1d1d5; border-bottom:1px solid #c1d1d5; background:#d7e0e2; text-align:center; }
.tbl_head01 tbody th { padding:8px 0; border-bottom:1px solid #e8e8e8; }
.tbl_head01 td { color:#666; padding:10px 5px; border-top:1px solid #ecf0f1; border-bottom:1px solid #ecf0f1; line-height:1.4em; height:60px; word-break:break-all; }
.tbl_head01 tbody tr:hover td { background:#fafafa; }
.tbl_head01 a:hover { text-decoration:underline; }
.tbl_head01 table{min-width:0px;}

.tbl_head02 { margin:0 0 10px; }
.tbl_head02 caption { padding:0; font-size:0; line-height:0; overflow:hidden; }
.tbl_head02 thead th { padding:5px 0; border-top:1px solid #d1dee2; border-bottom:1px solid #d1dee2; background:#e5ecef; color:#383838; font-size:0.95em; text-align:center; letter-spacing:-0.1em; }
.tbl_head02 thead a { color:#383838; }
.tbl_head02 thead th input { vertical-align:top; }
.tbl_head02 tfoot th, .tbl_head02 tfoot td { padding:10px 0; border-top:1px solid #c1d1d5; border-bottom:1px solid #c1d1d5; background:#d7e0e2; text-align:center; }
.tbl_head02 tbody th { padding:5px 0; border-top:1px solid #e9e9e9; border-bottom:1px solid #e9e9e9; background:#fff; }
.tbl_head02 td { padding:5px 3px; border-top:1px solid #e9e9e9; border-bottom:1px solid #e9e9e9; background:#fff; line-height:1.4em; word-break:break-all; }

.tbl_frm01 { margin:0 0 20px; }
.tbl_frm01 table { width:100%; border-collapse:collapse; border-spacing:0; }
.tbl_frm01 th { width:70px; padding:7px 13px; border:1px solid #e9e9e9; border-left:0; background:#f7f7fb; text-align:left; }
.tbl_frm01 td { padding:7px 10px; border-top:1px solid #e9e9e9; border-bottom:1px solid #e9e9e9; background:transparent; }
.wr_content textarea,.tbl_frm01 textarea,.form_01 textarea, .frm_input {
  border:1px solid #e2e2ff; background:#fff; color:#333; vertical-align:middle; border-radius:3px; padding:5px;
  -webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);
  -moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);
  box-shadow:inset 0 1px 1px rgba(0,0,0,.075);
}
.tbl_frm01 textarea { padding:2px 2px 3px; }
.frm_input {}
.full_input { width:100%; }
.half_input { width:49.5%; }
.twopart_input { width:385px; margin-right:10px; }
.tbl_frm01 textarea, .write_div textarea { width:100%; height:100px; }
.tbl_frm01 a { text-decoration:none; }
.tbl_frm01 .frm_file { display:block; margin-bottom:5px; }
.tbl_frm01 .frm_info { display:block; padding:0 0 5px; line-height:1.4em; }

/* 리스트 */
.list_01 ul { border-top:1px solid #ececec; }
.list_01 li { border-bottom:1px solid #ececec; background:#fff; padding:10px 15px; list-style:none; position:relative; }
.list_01 li:nth-child(odd) { background:#f6f6f6; }
.list_01 li:after { display:block; visibility:hidden; clear:both; content:""; }
.list_01 li:hover { background:#f9f9f9; }
.list_01 li.empty_li { text-align:center; padding:20px 0; color:#666; }

/* 자료 없는 목록 */
.empty_table { padding:50px 0 !important; text-align:center; }
.empty_list { padding:20px 0 !important; color:#666; text-align:center; }

/* 필수입력 표시 */
.required, textarea.required { background-image:url('../img/require.png') !important; background-repeat:no-repeat !important; background-position:right top !important; }

/* 새창 기본 스타일 */
.new_win { position:relative; }
.new_win .tbl_wrap { margin:0 20px; }
.new_win #win_title { font-size:1.3em; height:50px; line-height:30px; padding:10px 20px; background:#fff; color:#000; box-shadow:0 1px 10px rgba(0,0,0,.1); }
.new_win #win_title .sv { font-size:0.75em; line-height:1.2em; }
.new_win .win_ul { margin-bottom:15px; padding:0 20px; }
.new_win .win_ul:after { display:block; visibility:hidden; clear:both; content:""; }
.new_win .win_ul li { float:left; background:#fff; text-align:center; padding:0 10px; border:1px solid #d6e9ff; border-radius:30px; margin-left:5px; }
.new_win .win_ul li:first-child { margin-left:0; }
.new_win .win_ul li a { display:block; padding:8px 0; color:#6794d3; }
.new_win .win_ul .selected { background:#3a8afd; border-color:#3a8afd; position:relative; z-index:5; }
.new_win .win_ul .selected a { color:#fff; font-weight:bold; }
.new_win .win_desc { position:relative; margin:10px; border-radius:5px; font-size:1em; background:#f2838f; color:#fff; line-height:50px; text-align:left; padding:0 20px; }
.new_win .win_desc i { font-size:1.2em; vertical-align:baseline; }
.new_win .win_desc:after { content:""; position:absolute; left:0; top:0; width:4px; height:50px; background:#da4453; border-radius:3px 0 0 3px; }
.new_win .frm_info { font-size:0.92em; color:#919191; }
.new_win .win_total { float:right; display:inline-block; line-height:30px; font-weight:normal; font-size:0.75em; color:#3a8afd; background:#f6f6f6; padding:0 10px; border-radius:5px; }
.new_win .new_win_con { margin:20px 0; padding:20px; }
.new_win .new_win_con:after { display:block; visibility:hidden; clear:both; content:""; }
.new_win .new_win_con2 { margin:20px 0; }
.new_win .btn_confirm:after { display:block; visibility:hidden; clear:both; content:""; }
.new_win .win_btn { text-align:center; }
.new_win .cert_btn { margin-bottom:30px; text-align:center; }
.new_win .btn_close { padding:0 20px; height:45px; overflow:hidden; cursor:pointer; }
.new_win .btn_submit { padding:0 20px; height:45px; font-weight:bold; font-size:1.083em; }

.sch_word { color:#fff; background:#ff005a; padding:2px 5px 3px; line-height:18px; margin:0 2px; }

/* 사이드뷰 */
.sv_wrap { position:relative; font-weight:normal; }
.sv_wrap .sv { z-index:1000; display:none; margin:5px 0 0; font-size:0.92em; background:#333; box-shadow:2px 2px 3px 0 rgba(0,0,0,0.2); }
.sv_wrap .sv:before { content:""; position:absolute; top:-6px; left:15px; width:0; height:0; border-style:solid; border-width:0 6px 6px 6px; border-color:transparent transparent #333 transparent; }
.sv_wrap .sv a { display:inline-block; margin:0; padding:0 10px; line-height:30px; width:100px; font-weight:normal; color:#bbb; }
.sv_wrap .sv a:hover { background:#000; color:#fff; }
.sv_member { color:#333; }
.sv_on { display:block !important; position:absolute; top:23px; left:0; width:auto; height:auto; }
.sv_nojs .sv { display:block; }

/* 페이징 */
.pg_wrap { clear:both; float:left; display:inline-block; }
.pg_wrap:after { display:block; visibility:hidden; clear:both; content:""; }
.pg { text-align:center; }
.pg_page, .pg_current { display:inline-block; vertical-align:middle; background:#eee; border:1px solid #eee; }
.pg a:focus, .pg a:hover { text-decoration:none; }
.pg_page { color:#959595; font-size:1.083em; height:30px; line-height:28px; padding:0 5px; min-width:30px; text-decoration:none; border-radius:3px; }
.pg_page:hover { background:#fafafa; }
.pg_start { text-indent:-999px; overflow:hidden; background:url('../img/btn_first.gif') no-repeat 50% 50% #eee; padding:0; border:1px solid #eee; }
.pg_prev  { text-indent:-999px; overflow:hidden; background:url('../img/btn_prev.gif')  no-repeat 50% 50% #eee; padding:0; border:1px solid #eee; }
.pg_end   { text-indent:-999px; overflow:hidden; background:url('../img/btn_end.gif')   no-repeat 50% 50% #eee; padding:0; border:1px solid #eee; }
.pg_next  { text-indent:-999px; overflow:hidden; background:url('../img/btn_next.gif')  no-repeat 50% 50% #eee; padding:0; border:1px solid #eee; }
.pg_start:hover,.pg_prev:hover,.pg_end:hover,.pg_next:hover { background:#fafafa; }
.pg_current { display:inline-block; background:#3a8afd; border:1px solid #3a8afd; color:#fff; font-weight:bold; height:30px; line-height:30px; padding:0 10px; min-width:30px; border-radius:3px; }

/* cheditor 이슈 */
.cheditor-popup-window *, .cheditor-popup-window :after, .cheditor-popup-window :before {
  -webkit-box-sizing:content-box; -moz-box-sizing:content-box; box-sizing:content-box;
}

/* =========================
   헤더(로고/내비) + 모바일 네비
========================= */
#gnb:hover + #allmenu, #allmenu:hover { display:block; }
#allmenu .menu_div { display:flex; justify-content:space-between; flex-wrap:wrap; }
#allmenu .menu_div ul { flex:1 1 150px; min-width:120px; text-align:center; }

#allmenu {
  display:none; position:absolute; background:#F44855; padding:2em;
  width:100%; top:134px; left:0; z-index:99; border-radius:0 0 40px 40px; color:#fff; opacity:.95;
}


.mobile_nav { position:fixed; top:0; left:-100%; width:80%; height:100%; background:#fff; z-index:999; transition:left .3s ease-in-out; overflow-y:auto; padding:2em; }
.mobile_nav.active { left:0; }
.mobile_nav .m_nav-tit { font-weight:bold; font-size:1.5em; margin-bottom:1em; }
.mobile_nav .m_nav > li > a { font-size:1.1em; font-weight:700; display:block; margin-bottom:.5em; }
.mobile_nav .m_nav .sub { margin-left:1em; font-size:.95em; }
.transparency.active { position:fixed; top:0; left:0; background:rgba(0,0,0,.4); width:100%; height:100%; z-index:998; }


header h1{ position:absolute; left:0; top:50%; transform:translateY(-50%); }
header h1 img{ width:100%; max-width:427px; }
header nav{ width:100%; display:inline-block; padding-top:1.1em; }
header nav ul{ text-align:center; margin:auto; }
header nav ul li{ display:inline-block; vertical-align:middle; padding:0 1.5em; }
header nav ul li a{ font-family:'TTWanjudaedunsancheB'; font-size:1.4em; line-height:100%; }

#trigger{ display:none; position:absolute; right:0; width:45px; height:40px; cursor:pointer; }
#trigger span{ display:block; width:1px; padding:0 1em; background:#333; height:3px; position:absolute; }
#trigger span:nth-child(2){ margin-top:.52em; }
#trigger span:nth-child(3){ margin-top:1em; }

#allmenu a{ color:#fff; display:block; }
#allmenu .menu_div{ width:100%; max-width:760px; margin:auto; }
#allmenu .menu_div ul{ display:inline-block; vertical-align:top; width:20%; min-width:100px; text-align:center; }
#allmenu .menu_div ul li{ padding:0 0 .3em 0; }
#allmenu .menu_div ul:first-child{ width:140px; }
#allmenu .menu_div ul:nth-child(2){ width:140px; }
#allmenu .menu_div ul:nth-child(3){ width:165px; }
#allmenu .menu_div ul:nth-child(4){ width:165px; }
#allmenu .menu_div ul:nth-child(5){ width:130px; }
#all_menu .nav_close_btn i {font-size: 16px; padding:12px;}
#all_menu.is-open { display:grid; grid-template-columns:1fr max-content; column-gap:24px; align-items:start; padding:24px; background:rgba(255,255,255,0.95); border-radius:12px; max-width:1280px; margin:120px auto; box-sizing:border-box; overflow-y:auto; overflow-x:hidden; }
#all_menu .all_menu_ul { display:grid; grid-template-columns:repeat(6,minmax(180px,1fr)); gap:16px 24px; list-style:none; margin:0; padding:0; }
.all_menu_item { padding:12px 16px 24px; }
.all_menu_link { font-size:1.2em; font-weight:bold; color:#3a8afd; margin-bottom:10px; display:block; text-decoration:none; }
.all_menu_link:hover { text-decoration:underline; }
#all_menu .nav_close_btn { justify-self:end; align-self:start; display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:4px; border:1px solid rgba(0,0,0,.15); background:#fff; box-shadow:0 2px 6px rgba(0,0,0,.1); cursor:pointer; padding:0; }
#all_menu .nav_close_btn i { font-size:18px; line-height:1; }
@media (max-width:1280px) { #all_menu .all_menu_ul { grid-template-columns:repeat(4,minmax(160px,1fr)); } }
@media (max-width:960px) { #all_menu .all_menu_ul { grid-template-columns:repeat(2,minmax(140px,1fr)); } }
@media (max-width:560px) { #all_menu .all_menu_ul { grid-template-columns:1fr; } }

.social_icons{ position:absolute; top:60%; transform:translateY(-60%); right:0; }
.social_icons li{ text-align:center; display:inline-block; vertical-align:top; padding:0 6px; }

/* 서브 비주얼 */
.subvisual_img{ background:url(/images/kbp-bg.png) no-repeat top center; background-color:#EE3543; height:346px; text-align:center; }
.subvisual_img div{ text-align:center; position:absolute; top:28%; transform:translateY(-22%); width:100%; }
.subvisual_img div strong{ display:block; font-size:3.2em; line-height:1.4em; font-weight:900; color:#fff; font-family:'TTWanjudaedunsancheB'; }
.subvisual_img div p{ color:#fff; font-size:1.3em; letter-spacing:-1px; font-weight:800; }

.sub_leftmenu{ position: relative;   z-index: 2; text-align:center; padding:1.6em 0; box-shadow:3px 3px 5px #e3e3e3; border-bottom:1px solid #ddd; }
.sub_leftmenu ul{ text-align:center; }
.sub_leftmenu ul li{ text-align:center; display:inline-block; vertical-align:top; }
.sub_leftmenu ul li a{ font-weight:600; font-size: clamp(16px, 2.5vw, 18px); padding:0 1.5em; display:block; }
.sub_leftmenu ul li a:hover{ color:#3B8BFF; }
.sub_leftmenu ul li a.active{ font-weight:600; color:#3B8BFF; }

#rightQuick{ position:absolute; right:0; top:150px; z-index:99; }
#rightQuick ul{ background:#333; border-radius:15px 0 0 15px; padding:.5em; width:120px; }
#rightQuick ul li{ border-bottom:1px solid #5f5550; text-align:center; padding:.7em .3em; word-break:keep-all; line-height:24px; }
#rightQuick ul li img{ filter:invert(80%) sepia(100%) saturate(25%) hue-rotate(346deg) brightness(108%) contrast(106%); }
#rightQuick ul li:first-child a{ color:#ffcf0f; }
#rightQuick ul li:first-child img{ filter:invert(68%) sepia(75%) saturate(516%) hue-rotate(0deg) brightness(107%) contrast(101%); }
#rightQuick ul li img{ max-width:46px; height:40px; display:block; margin:0 auto 5px; }
#rightQuick ul li a{ color:#fff; font-size:90%; }
#rightQuick ul li:last-child{ border-bottom:0; }

#headerQuick{ display:none; }

#ft_company a{color:#e3e3e3;}
/* 메인 배너 문구 */
.slide-caption{
  width:100%;
  position:absolute; top:36%; left:50%; transform:translate(-50%,-50%);
  text-align:center; color:#fff; text-shadow:0 2px 8px rgba(0,0,0,.6);
  z-index:10; padding:0 1rem;
}
.slide-caption h2{ margin-bottom:.5rem; font-size:clamp(2.2rem, 5vw, 3.5rem); line-height:1.2; font-family:"Pretendard ExtraBold"; }
.slide-caption p{ font-size:clamp(1.5rem, 3vw, 2rem); }

.kr_en{ width:68px; height:28px; float:right; margin-top:18px; text-align:center; line-height:22px; margin-left:24px; border:.5px solid #999; border-radius:36px; }
.kr_en a{ color:#fff; font-size:.7em; }

#tail_login{ float:right; }

/* 메인배너 스와이퍼 */
.swiper{
  width:100%;
  aspect-ratio:16 / 8;
  max-height:100vh; /* 유효값으로 수정 */
  overflow:hidden;
  max-width:100%;
  height:auto;
  z-index:1 !important;
}
.swiper-slide{ text-align:center; font-size:18px; background:#444; }
.swiper-slide img{
  display:block; width:100%; height:100%;
  object-fit:cover; object-position:center;
}

/* .main2_ul 배너 */
.main2_ul .mySwiper2{ width:100%; height:auto !important; aspect-ratio:auto !important; overflow:visible; }
.main2_ul .mySwiper2 .swiper-wrapper{ align-items:stretch; }
.main2_ul .mySwiper2 .swiper-slide{ display:block; height:auto !important; padding:0 !important; background:transparent !important; overflow:hidden; }
.main2_ul .mySwiper2 .swiper-slide img{ display:block; width:100%; height:auto; }


/*GNB li*/
.gnb_2dul_box li:first-child .gnb_2da {border-radius:12px 12px 0 0;}
.gnb_2dul_box li:last-child .gnb_2da {border-radius:0 0 12px 12px;}


/*관리자 로그인*/
#mb_login { width:100%; max-width:1440px; margin:0 auto; display:flex; justify-content:center; }
.mbskin_box { padding:48px 0; font-family:"Pretendard Medium"; font-size:16px; }
.ctt_admin, .hd_login_msg { display:none; }
.mbskin_box h1 { font-size:20px; font-family:"Pretendard Medium"; padding-bottom:12px; color:#272727; }

/* ========== 게시물 작성폼 디자인 ========== */
#bo_w {  width: 100%;  max-width: 1080px;  margin: 0 auto; text-align:center; padding: 60px 24px 100px;  font-family: "Pretendard", system-ui, sans-serif;  color: #333;  background: #fff;}
.bo_w_info write_div{ width:100%; max-width:1080px;}
#bo_w .write_div { width:100%; max-width:1080px;}
#bo_w label.sound_only {  display: none;}
/* 입력창 기본 */
#bo_w .frm_input {  width: 100%;  padding: 14px 16px;  font-size:clamp(14px, 1vw, 16px); color:#999 !important;  border: 1px solid #e2e2ff;  border-radius: 10px;  background: #f7f7fb;  transition: all 0.25s ease;}
#bo_w .frm_input:focus {  border-color: #FF8C42;  background: #fff;  box-shadow: 0 0 6px rgba(255,140,66,0.2);}
/* 반절 입력창 */
#bo_w .half_input { width: calc(80% - 6px);  display: inline-block;  margin-right: 8px;}

/* 제목 입력창 */
#bo_w .full_input { width: 100%;}

/* 옵션 체크박스 */
.bo_v_option {  display: flex;  flex-wrap: wrap;  gap: 12px;  padding: 8px 0;}
.bo_v_option .chk_box {  display: flex;  align-items: center;  font-size: 15px;  color: #555;}
.bo_v_option input[type="checkbox"] {  accent-color: #FF8C42;  margin-right: 6px;}
.f_tit{margin:0 auto; font-size:clamp(16px, 1.2vw, 20px); font-family:"Noto Sans KR SemiBold"; color:#474747; padding:24px;}

/* 파일 업로드 */
.bo_w_flie input[type=file] {
 display: block;  width: 100%;  padding: 12px;  border: 1px dashed #ccc;  border-radius: 8px;  background: #fafafa;  cursor: pointer;  font-size: 15px;}
.bo_w_flie input[type=file]:hover {  border-color: #FF8C42;}

/* 버튼영역 */
.btn_confirm {  display: flex;  justify-content: center;  gap: 12px; align-items: center; }
#bo_w .btn {  display:flex;   border: 1px solid #FF8C42;  border-radius: 8px; font-size: clamp(16px, 1.0vw, 18px); margin-top:24px; cursor: pointer;  transition: all 0.25s ease;  font-family: "Pretendard Medium";  align-items: center;}
.btn_submit {  background: #FF8C42;  color: #fff; }
.btn_submit:hover {  background: #ff802e;}
.btn_cancel {  background: #fff;  color: #FF8C42;}
.btn_cancel:hover {  background: #fff5ee;}


/* 안내문구 */
#char_count_desc, #char_count_wrap {  font-size: 14px;  color: #777;  margin-top: 8px;}
/* 에디터 영역 */
.wr_content {  border: 1px solid #ddd;  border-radius: 12px;  background: #fafafa;  padding: 12px; width:100%;}
.bo_w_info.write_div {display:flex; flex-direction:column; gap:14px; width:100%; max-width:1080px;  border:4px solid #e2e2ff; border-radius:20px; padding:48px;}
.form_row {display:flex; font-size:clamp(16px, 1.1vw, 18px); align-items:center; justify-content:flex-start; gap:12%; padding-left:20%; padding-bottom:2%;}
.form_label {width:100px; text-align:left; font-weight:600; color:#333;}
.input_wrap {position:relative; width:100%; }
.frm_input {width:100%; padding:10px 12px; border:1px solid #ddd; border-radius:6px; font-size:15px; box-sizing:border-box;}
.req_star {display:none;}
.pw_field input::placeholder {color:#333; font-weight:500; letter-spacing:0.05em;}

.table-container {  width: 100%;  overflow-x: auto !important;  -webkit-overflow-scrolling: touch;}
.table-container .custom-inventory-table {  min-width: 900px !important;  width: auto !important;  display: table;  white-space: nowrap;}



#bo_v_title{width:100%; max-width:1080px; margin:0 auto; text-align:center; font-family:"Pretendard Medium"; font-size:clamp(18px, 1vw, 20px); color:#333;}
#bo_v_info .profile_info .pf_img {display:none;}
#bo_v_info .profile_info {width:100%; max-width:1080px; display: flex;    text-align:center;font-family:"Pretendard Medium"; font-size:clamp(14px, 1vw, 16px); color:#666;}
#bo_v_info .profile_info .profile_info_ct  {width:100%; max-width:1080px; margin:0 auto; text-align:center;font-family:"Pretendard Medium"; font-size:clamp(14px, 1vw, 18px); color:#666;}
#bo_v_info {    display: flex;   align-items: center;    justify-content: space-between;     width: 100%; }
.profile_info {   display: flex;     align-items: center;     gap: 10px;}
.profile_info_ct {   display: flex;     align-items: center;  gap: 8px;   white-space: nowrap;}
#bo_v_top {    display: flex;    justify-content: flex-end;     align-items: center;}
.btn_bo_user.bo_v_com {     display: flex;     list-style: none;     padding: 0;     margin: 0; }
.btn_bo_user.bo_v_com li {     margin-left: 5px; }
#bo_v_con{font-family:"Pretendard Medium"; font-size:clamp(14px, 1vw, 18px); color:#666;}
.bo_v_nb{font-family:"Pretendard Medium"; font-size:clamp(14px, 1vw, 18px); color:#666;}


.tj-privacy-container { font-family:"Pretendard Medium"; line-height: 1.6; color: #333; max-width: 1080px; width: 100%; box-sizing: border-box; margin: 88px auto; padding: clamp(15px, 4vw, 30px); border: 1px solid #ddd; border-radius: 8px; background-color: #fff; }
/* 제목 스타일 */
.tj-privacy-title {font-family:"Pretendard Medium"; font-size: clamp(20px, 4.5vw, 28px); color: #0448a0; border-bottom: 3px solid #0448a0; padding-bottom: 10px; margin-bottom: clamp(15px, 4vw, 20px); word-break: keep-all; }
/* 섹션 제목 스타일 */
.tj-privacy-section-title {font-family:"Pretendard Medium"; font-size: clamp(18px, 3.5vw, 20px); color: #2c3e50; margin-top: clamp(20px, 4vw, 30px); margin-bottom: 15px; border-left: 5px solid #0448a0; padding-left: 10px; word-break: keep-all; }
/* 하위 섹션 제목 스타일 */
.tj-privacy-subsection-title { font-size: clamp(16px, 3vw, 17px); color: #34495e; margin-top: 15px; margin-bottom: 8px; text-align:left;}
/* 리스트, 단락, 테이블 기본 마진 */
.tj-privacy-paragraph, .tj-privacy-list, .tj-privacy-table { margin-bottom: 15px; font-size: clamp(14px, 2.5vw, 16px); }
/* 리스트 스타일 */
.tj-privacy-list { list-style: disc; margin-left: 20px; padding-left: 0; }
.tj-privacy-ordered-list { list-style: decimal; margin-left: 20px; padding-left: 0; }
/* 테이블 컨테이너: 가로 스크롤 가능하게 하여 모바일 깨짐 방지 */
.tj-table-responsive { overflow-x: auto; margin-bottom: 20px; }
/* 테이블 스타일 */
.tj-privacy-table { width: 100%; min-width: 500px; border-collapse: collapse; margin-bottom: 0; font-size: clamp(13px, 2.3vw, 14px); }
.tj-privacy-table th, .tj-privacy-table td { border: 1px solid #ccc; padding: 8px; text-align: left; }
.tj-privacy-table th { background-color: #f8f8f8; font-weight: bold; white-space: nowrap; }
/* 연락처 테이블 특정 컬럼 강조 */
.tj-privacy-contact-info td:first-child { font-weight: bold; width: 30%; min-width: 100px; }
/* 공고일자 스타일 */
.tj-privacy-notice-date { font-size: clamp(12px, 2vw, 14px); color: #777; text-align: right; border-top: 1px solid #eee; padding-top: 10px; margin-top: 20px; }
/* 개인정보 동의 박스 컨테이너 */
.tj-consent-box { font-family:"Pretendard Medium"; line-height: 1.5; color: #333; max-width: 100%; margin: 20px 0; padding: 15px; border: 2px solid #ddd; border-radius: 6px; background-color: #f7faff; }
/* 제목 */
.tj-consent-title { font-size: clamp(16px, 3.5vw, 18px); color: #666; margin-top: 0; margin-bottom: 10px; border-bottom: 1px solid #cceeff; padding-bottom: 5px; }
/* 설명 문구 */
.tj-consent-intro { font-size: clamp(13px, 2.5vw, 14px); margin-bottom: 15px; }
/* 세로형 테이블 스타일 */
.tj-consent-vertical-table { width: 100%; min-width: 450px; border-collapse: collapse; font-size: clamp(12px, 2.2vw, 13px); }
.tj-consent-vertical-table th, .tj-consent-vertical-table td { border: 1px solid #ddd; padding: 8px 10px; text-align: left; }
.tj-consent-vertical-table thead th { background-color: #007bff; color: #fff; text-align: center; }
.tj-consent-vertical-table th { background-color: #e9f2ff; font-weight: bold; white-space: nowrap; }
/* 유의사항 리스트 */
.tj-consent-notes { list-style: none; padding-left: 24px; margin-top: 10px; margin-bottom: 15px; font-size: clamp(12px, 2.2vw, 13px); color: #555; text-align:left;}
.tj-consent-notes li { margin-bottom: 5px; padding-left: 12px; }
.tj-consent-notes li::before { content: "•"; color: #007bff; font-weight: bold; display: inline-block; width: 15px; }
/* 링크 스타일 */
.tj-consent-link { color: #007bff; text-decoration: underline; }
/* 체크박스 영역 */
.tj-consent-checkbox { margin-top: 15px; padding-top: 10px; border-top: 1px solid #eee; text-align: center; font-size: clamp(14px, 2.8vw, 16px); font-weight: bold; }
.tj-consent-checkbox input[type="checkbox"] { margin-right: 5px; transform: scale(1.2); }


/* =========================
   반응형
========================= */
@media (max-width:1580px){
#nav_list{gap:16px; font-size:16px;}
}
@media (max-width:1440px){
  #gnb{ font-size:15px;}
  #nav_list > li.nav_item:nth-of-type(6) {padding-right: 8px;gap:12px;}
  #logo{max-width:208px;}
}
@media (max-width:1380px){
	#nav_list > li.nav_item:nth-of-type(1) {display:none;}
	#nav_list > li.nav_item:nth-of-type(2) {display:none;}
	#nav_list > li.nav_item:nth-of-type(3) {display:none;}
	#nav_list > li.nav_item:nth-of-type(4) {display:none;}
}
@media (max-width:1280px){
  #gnb_1dul > li.gnb_1dli.gnb_al_li_plus { font-size:17px; }
  .gnb_1da{ padding:0 10px; }
  .gnb_all{max-height:none;}
 #all_menu .all_menu_ul { grid-template-columns:repeat(4, minmax(160px,1fr)); }
}
@media (max-width:1098px){
  #gnb_1dul > li.gnb_1dli.gnb_al_li_plus { display:none; }
   ul.gnb_1dul > li.gnb_1dli:first-child {{ display:none; }
   #gnb_1dul > li.gnb_1dli:nth-of-type(6) > a { display:none; }

  #ft_link{ display:flex; gap:1rem; flex-wrap:nowrap; }
  #ft_link a{ display:inline-block; flex-wrap:nowrap; flex-shrink:0; margin:0; padding:0; }

  #ft_wr .ft_cnt{ float:none; width:100%; padding:0 10px; margin-bottom:20px; }

  /* 전체메뉴 모바일 방향 정렬 */
  #gnb_all > ul{ display:flex; flex-direction:column; gap:.5em; }
  #gnb_all ul li{ display:block; width:100%; margin:.3em 0; }
  #gnb_all .gnb_al_li{ width:100%; padding:12px 0 0 24px; margin:0; min-height:36px; }
}
@media (max-width:1080px){
  #gnb_1dul{ padding-left:12%; }
}
@media (max-width:1024px){
  #trigger{ display:block; }
}
@media (max-width:960px) {
	 #all_menu.is-open { grid-template-columns:1fr max-content; } #all_menu .all_menu_ul { grid-template-columns:repeat(2, minmax(140px,1fr)); }
}
@media (max-width:768px){
  .swiper{ aspect-ratio:4 / 3; }
  #gnb_all .gnb_al_ul{ grid-template-columns:repeat(2, minmax(160px,1fr)); }
}
@media (max-width:560px) {
	#all_menu { padding:16px; margin:96px auto; } #all_menu .all_menu_ul { grid-template-columns:1fr; }
}
@media (max-width:670px){
  .slide-caption{ width:92%; top:48%; }
}
@media (max-width:520px){
  #gnb_all .gnb_al_ul{ grid-template-columns:1fr; }
}
@media (max-width:480px){
  .swiper{ aspect-ratio:4 / 3; min-height:420px; }
}


@charset "utf-8";

/* 새글 스킨 (latest) */
.pic_li_lt {position:relative;width:100%; max-width:770px; float:left;padding:0 10px;background:#fff; border-radius:12px;}
.pic_li_lt .lat_title {display:block;line-height:45px;font-size:24px;color:#253dbe; padding-top:20px; font-family:"Pretendard ExtraBold";}
.pic_li_lt .lat_title a {color:#373737;display:inline-block;position:relative; font-size: 28px; padding-left:12px;}
.latest_top_wr .pic_li_lt:nth-child(3n+1) {clear: both!important}

.pic_li_lt .lt_more {position:absolute;top:11px;right:10px;display:block;width:25px;line-height:25px;color:#aaa;border-radius:3px;text-align:center}
.pic_li_lt .lt_more:hover {color:#777}
.pic_li_lt ul:after {display:block;visibility:hidden;clear:both;content:""}
.pic_li_lt li {border-bottom:1px solid #e5ecee;margin-bottom:10px}
.pic_li_lt li .lt_img {display:none}
.pic_li_lt li:first-child .lt_img {display:block;margin:0 0 10px;}
.pic_li_lt li:first-child .lt_img img, .pic_li_lt li .lt_img video {width:100%;height:auto}
.pic_li_lt li .pic_li_tit {font-weight:bold;font-size:1.2em;line-height:20px;vertical-align:middle}

.pic_li_lt li .fa-heart {color:#ff0000}
.pic_li_lt li .fa-lock {display:inline-block;line-height:14px;width:16px;color:#4f818c;background:#cbe3e8;text-align:center;border-radius:2px;font-size:12px;border:1px solid #cbe3e8;vertical-align:middle}
.pic_li_lt li .new_icon {display:inline-block;width:16px;line-height:16px;font-size:0.833em;color:#23db79;background:#b9ffda;text-align:center;border-radius:2px;margin-left:2px;font-weight:bold;vertical-align:middle}
.pic_li_lt li .hot_icon {display:inline-block;width:16px;line-height:16px;font-size:0.833em;color:#ff0000;background:#ffb9b9;text-align:center;border-radius:2px;vertical-align:middle}
.pic_li_lt li .fa-caret-right {color:#bbb}
.pic_li_lt li .fa-download {display:inline-block;width:16px;line-height:16px;font-size:0.833em;color:#daae37;background:#ffefb9;text-align:center;border-radius:2px;vertical-align:middle}
.pic_li_lt li .fa-link {display:inline-block;width:16px;line-height:16px;font-size:0.833em;color:#b451fd;background:#edd3fd;text-align:center;border-radius:2px;vertical-align:middle}

.pic_li_lt .profile_img img{border-radius:50%}

.lt_info {padding:10px 0}
.lt_info .lt_nick {}
.lt_info .lt_date {color:#888}

.pic_li_lt .empty_li {line-height:145px;color:#666;text-align:center;}
.pic_li_lt .empty_li:before {background:none;padding:0}
.pic_li_lt ul{padding-bottom:12px;}

.pic_li_lt .lt_cmt {background:#e9eff5;color:#3a8afd;font-size:11px;height:16px;line-height:16px;padding:0 5px;border-radius:3px;vertical-align:middle}
.pic_li_lt .lt_more {position: absolute;right: 10px;display: block;width: 36px;height: 36px;line-height: 30px;color: #fff;border-radius: 3px;text-align: center; font-size: 28px;background-color: #ddd; top:26px; border-radius: 36px;}
.pic_li_lt .lt_more:hover {color:#777}


