



/*------------------------------------------------------------------------------*/
/* 1. reset */
/*------------------------------------------------------------------------------*/
html {font-size: 62.5%; -webkit-text-size-adjust: none; -moz-text-size-adjust: none; -ms-text-size-adjust: none; -o-text-size-adjust: none;}
body {font-size: 1.6rem;position: relative;line-height: 1.3;}
:lang(ko) { word-break:keep-all }
html, body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, em, pre, code, form, fieldset, legend, address, caption, cite, p, blockquote, th, td, input, select, textarea, button, figure, figcaption {margin:0;padding:0;box-sizing:border-box;font-family:'pretendard', 'Malgun Gothic',  sans-serif;color:#333;font-weight:400;font-style:normal;letter-spacing:-0.9px;}
table {border-collapse:collapse;width:100%;}
caption, legend, caption *, legend * {font-size:0;overflow:hidden;clip:rect(0, 0, 0, 0);width:1px;height:1px;background:transparent;}
h1, h2, h3, h4, h5, h6 {font-size:2.8rem;line-height:1;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}
ul, ol, dl, dt, dd {margin:0;padding:0;list-style:none}
p {margin:0;padding:0;word-break:keep-all}
fieldset {border:solid 0px rgb(77, 61, 61);padding:0;}
legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
figure + figure {margin-left:20px;}
figcaption {color:#626262;font-size:1.5rem;text-align:center;}
label, input, button, select, img, span, p {vertical-align:middle;background: none;}
img{margin: 0; padding: 0;}
input[type="submit"],
input[type="button"],
button {cursor:pointer}
input,
button {margin:0;padding:0;font-size:1.6rem;border:0;}
::-webkit-input-placeholder {color:#777;font-weight:400;}
::-moz-placeholder {color:#777;font-weight:400;}
:-ms-input-placeholder {color:#777;font-weight:400;}
:-moz-placeholder {color:#777;font-weight:400;}
/*select::-ms-expand {display:none;display:hidden;}*/

a {color:#1b1b1b;text-decoration:none;}
/*a:link,a:visited,a:hover,a:active {outline: 1px solid #000; outline-offset: -5px;}*/
a:focus{outline:2px dotted red;}
a:focus-visible {outline: 1px solid #000;}
*, :after, :before {-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
/*------------------------------------------------------------------------------*/

.sr_only {overflow:hidden !important;position:absolute;width:1px;height:1px;margin:0;margin-left:-1px;padding:0;clip:rect(0,0,0,0);}
.hide{display:none;}
.clearfix:after {display:block;content:'';clear:both;}
.flex {display: flex; flex-wrap: wrap;}
.flex > .half {flex-basis: 49.5%;}
.flex > .third {flex-basis: 32.5%;}
.flex > .fifth {flex-basis: 17%;}

.display_ib{display: inline-block;}
.text_l{text-align: left !important;}
.text_c{text-align: center !important;}
.f-left {float:left;}
.f-right {float:right;}
.borno_l{border-left: 0 none !important;}
.borno_r{border-right: 0 none !important;}
.borno_t{border-top: 0 none !important;}
.borno_b{border-bottom: 0 none !important;}
.gm{font-family: 'Gmarket';}
.ns{font-family: 'NotoSerif';}
.txt_blue{color:#053291;}

/*text-align*/
.tx_center{text-align: center;}

/*skipNav*/
#skipNav {width:100%; position:absolute; top:0; left:0; z-index:10000; }
#skipNav a {display:block; width:100%; line-height:50px; text-align:center; background-color:#214aa6; color:#fff; font-weight:700; font-size:18px; height:0; overflow:hidden; }
#skipNav a:focus {height:50px; }


/*------------------------------------------------------------------------------*/
/* text align */
/*------------------------------------------------------------------------------*/
.mt0 {margin-top:0px;} .mt5 {margin-top:5px;} .mt10 {margin-top:10px;} .mt15 {margin-top:15px;} .mt20 {margin-top:20px;} .mt25 {margin-top:25px;} .mt30 {margin-top:30px;} .mt35 {margin-top:35px;} .mt40 {margin-top:40px;} .mt45 {margin-top:45px;} .mt50 {margin-top:50px;}
.mr0 {margin-right:0px;} .mr5 {margin-right:5px ;} .mr10 {margin-right:10px ;} .mr15 {margin-right:15px;} .mr20 {margin-right:20px;} .mr25 {margin-right:25px ;} .mr30 {margin-right:30px ;} .mr35 {margin-right:35px;} .mr40 {margin-right:40px;} .mr45 {margin-right:45px;} .mr50 {margin-right:50px;}
.mb0 {margin-bottom:0px;} .mb5 {margin-bottom:5px;} .mb10 {margin-bottom:10px;} .mb15 {margin-bottom:15px;} .mb20 {margin-bottom:20px;} .mb25 {margin-bottom:25px;} .mb30 {margin-bottom:30px;} .mb35 {margin-bottom:35px;} .mb40 {margin-bottom:40px;} .mb45 {margin-bottom:45px;} .mb50 {margin-bottom:50px;} .mb65 {margin-bottom:65px;} .mb80 {margin-bottom:80px;}
.ml0 {margin-left:0px;} .ml5 {margin-left:5px;} .ml10 {margin-left:10px;} .ml15 {margin-left:15px;} .ml20 {margin-left:20px;} .ml25 {margin-left:25px;} .ml30 {margin-left:30px;} .ml35 {margin-left:35px;} .ml40 {margin-left:40px;} .ml45 {margin-left:45px;} .ml50 {margin-left:50px;}
.pd0{ padding: 0;}

.p20{padding: 20px;} .p30{padding: 30px;}
.pt0 {padding-top:0px;} .pt5 {padding-top:5px;} .pt10 {padding-top:10px;} .pt15 {padding-top:15px;} .pt20 {padding-top:20px;} .pt25 {padding-top:25px;} .pt30 {padding-top:30px;} .pt35 {padding-top:35px;} .pt40 {padding-top:40px;} .pt45 {padding-top:45px;} .pt50 {padding-top:50px;}
.pr0 {padding-right:0px;} .pr5 {padding-right:5px ;} .pr10 {padding-right:10px ;} .pr15 {padding-right:15px;} .pr20 {padding-right:20px;} .pr25 {padding-right:25px ;} .pr30 {padding-right:30px ;} .pr35 {padding-right:35px;} .pr40 {padding-right:40px;} .pr45 {padding-right:45px;} .pr50 {padding-right:50px;}
.pb0 {padding-bottom:0px;} .pb5 {padding-bottom:5px;} .pb10 {padding-bottom:10px;} .pb15 {padding-bottom:15px;} .pb20 {padding-bottom:20px;} .pb25 {padding-bottom:25px;} .pb30 {padding-bottom:30px;} .pb35 {padding-bottom:35px;} .pb40 {padding-bottom:40px;} .pb45 {padding-bottom:45px;} .pb50 {padding-bottom:50px;} 
.pl0 {padding-left:0px;} .pl5 {padding-left:5px;} .pl10 {padding-left:10px;} .pl15 {padding-left:15px;} .pl20 {padding-left:20px;} .pl25 {padding-left:25px;} .pl30 {padding-left:30px;} .pl35 {padding-left:35px;} .pl40 {padding-left:40px;} .pl45 {padding-left:45px;} .pl50 {padding-left:50px;}
.f11{font-size: 1.1rem;}
.f18{font-size: 1.8rem;}
.f20{font-size: 2rem;}

/*inner*/
.inner{width: 1200px; margin:0 auto;}


/*list_공통*/
.dot_list > li{position: relative;}
.dot_list > li::before{position: absolute;content: "";display: inline-block;}
/*list_.*/
.dot_list > li{padding-left: 10px;color: #444;}
.dot_list > li ~ li{margin-top: 10px;}
.dot_list > li::before{top: 9px; left:0; width: 3px; height: 3px;background-color: #333333;border-radius: 10px;}
.dot_list li > ul{margin-top: 10px;}

/*------------------------------------------------------------------------------*/
/* color */
/*------------------------------------------------------------------------------*/
.red{color:red;}
.blue{color:#00579b !important;}
.blue_btn{background-color: #183370;}
.dg_btn{background-color:#444444;}

/*------------------------------------------------------------------------------*/
/* header */
/*------------------------------------------------------------------------------*/
/* Skip link */
.skip_link{ position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden; }
.skip_link:focus{ position:fixed; left:12px; top:12px; z-index:2000; width:auto; height:auto; padding:10px 14px; background:#0f2f62; color:#fff; border-radius:6px; }
/* Header */
.site_header{ position:sticky; top:0; z-index:900; background:#fff; height: 100px; padding-left: 270px; }
.header_inner{ max-width:1350px; margin:0 auto; display:grid; align-items:center; grid-template-columns:auto 1fr auto; gap:20px; padding:20px 24px; }

/* Brand */
.brand{ display:flex; align-items:center; gap:12px; text-decoration:none; width: 188px; height: auto;}
.brand_logo{object-fit: cover; width: 100%; height: 100%;}
.brand_text{ display:flex; flex-direction:column; line-height:1.1; color:#0f2f62;}
.brand_school{ font-size:14px; font-weight:600; }
.brand_dept{ font-size:16px; font-weight:700; letter-spacing:-.02em; }

/* GNB */
.gnb{ display:block; }
.gnb_list{ display:flex; gap:28px; margin-left:130px }
.gnb_list > li > a{ display:inline-block; padding:10px 6px; font-size:2.2rem; font-weight:600; color:#1e2a3a; text-decoration:none; border-radius:8px; }
.gnb_list > li > a:hover,
.gnb_list > li > a:focus{ background:#eef4ff; outline:0; }
.gnb_list > li > a[aria-current="page"]{ color:#0f2f62; position:relative; }
.gnb_list > li > a[aria-current="page"]::after{ content:""; position:absolute; left:0; right:0; bottom:4px; margin:auto; width:calc(100% - 12px); height:3px; border-radius:2px; background:#0f2f62; }

/* Util */
.util{ display:flex; align-items:center; gap:8px; }
.util_btn{ display:inline-flex; align-items:center; justify-content:center; height:34px; padding:0 14px; border-radius:999px; background:#7e7e7e; color:#fff; font-weight:700; font-size:13px; letter-spacing:.02em; text-decoration:none; }
.util_btn:hover, .util_btn:focus{ background:#ddd; }

/* Mobile: nav toggle */
.nav_toggle{ display:none; width:40px; height:40px; border-radius:10px; border:1px solid #e5e7eb; background:#fff; color:#0f2f62; }
.nav_toggle .ri-menu-line{ font-size:22px; }
.sub_menu { display:none; position:absolute; top:100%; left:0; min-width:180px; background:#fff; box-shadow:0 4px 16px rgba(0,0,0,.08); border-radius:8px; padding:8px 0; z-index:1000; }
.sub_menu li a{ display:block; padding:10px 16px; font-size:14px; color:#1e2a3a; text-decoration:none; white-space:nowrap; }
.sub_menu li a:hover, 
.sub_menu li a:focus{ background:#eef4ff; }
.gnb_list > li{ position:relative; }
.gnb_list > li.has_sub:hover > .sub_menu { display:block; }



.opinion_box{width: 100%; margin-top:100px; background:#f6f8fb; border:1px solid #e5e7eb; border-radius:14px; padding:30px 18px; }
.opinion_grid{ display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.opinion_head{ display:flex; align-items:center; gap:8px; font-weight:700; color:#111; }
.opinion_head .ico_speech{ width:34px; height:28px; display:inline-block; background: url(/ibuilder/template/theme_skin/theme128/images/sub/icon_eva.png)no-repeat; }
.opinion_radio_list{ display:flex; gap:18px; padding-left: 40px;}
.opinion_radio_list li{ list-style:none; }
.radio{ display:inline-flex; align-items:center; gap:6px; font-size:1.4rem; color:#444; }
.radio input{ appearance:none; -webkit-appearance:none; -moz-appearance:none; width:16px; height:16px; border-radius:50%; border:1px solid #cbd5e1; background:#fff; position:relative; }
.radio input:checked::after{ content:""; position:absolute; left:3px; top:3px; width:8px; height:8px; border-radius:50%; background:#1c3f8e; }
.opinion_right{ display:flex; align-items:center; gap:8px; margin-top: 20px; } 
.opinion_input{ width:380px; height:38px; padding:0 12px; border:1px solid #d1d5db; border-radius:8px; background:#fff; font-size: 1.5rem; }
.opinion_btn{ height:38px; padding:0 16px; border-radius:5px; background:#1c3f8e; color:#fff; }
.opinion_meta{margin-top:10px; text-align:right; font-size:1.3rem; color:#666; display:flex; gap:5px; justify-content:flex-end; align-items:center; }
.opinion_meta .ico_user,
.opinion_meta .ico_phone{ width:15px; height:15px; display:inline-block; }
.opinion_meta .ico_user{background: url(/ibuilder/template/theme_skin/theme128/images/sub/icon_man.png)no-repeat;}
.opinion_meta .ico_phone{background: url(/ibuilder/template/theme_skin/theme128/images/sub/icon_call.png)no-repeat;}
.opinion_meta .meta_div{ opacity:.5; }

/* High-contrast focus for a11y */
.gnb_list a:focus-visible, .util_btn:focus-visible, .nav_toggle:focus-visible, .brand:focus-visible{
  outline:3px solid #0f2f62; outline-offset:3px;
}

/*공통 table*/
.tbl_scroll{overflow-x: auto;  border-top:2px solid #000; border-bottom:1px solid #cccccc; width: 100%; -webkit-overflow-scrolling: touch; }
.tbl_scroll:focus-visible{outline:2px solid #1c3f8e; outline-offset:4px; }
.tbl_basic{ width: 100%; min-width:980px; border-collapse:collapse; table-layout:fixed; font-size:1.5rem; color:#333; }
.tbl_basic th,
.tbl_basic td{ padding:16px 18px; line-height:1.6; text-align:center; vertical-align:middle; border-bottom:1px solid #cccccc; }
.tbl_basic thead th{ background:#eaf2fb; font-weight:600; color:#111; }
.tbl_basic th + th,
.tbl_basic td + td{ border-left:1px solid #cccccc; }
.tbl_basic .tel{ display:inline-flex; align-items:center; gap:8px; color:#4b5563; }
.tbl_basic .tel::before{content: ''; display: inline-block; width: 14px; height: 14px; vertical-align: middle; background: url(/ibuilder/template/theme_skin/theme128/images/sub/icon_call.png)no-repeat;}
.tbl_basic tbody tr:hover{ background:#fafbff; }
/*게시판*/
.board_con{position: relative;width: 100%;overflow: hidden;}
.total_con span{display: inline-block;letter-spacing: 0.3px;}
div[class^="board_list"]{border-top: 1px solid #000;}
div[class^="board_list"] thead tr th,
div[class^="board_list"] tbody tr td{padding: 20px 5px;border-bottom: 1px solid #dbdbdb;}
div[class^="board_list"] thead tr th{background-color: #f8faff;font-weight: 500;}
div[class^="board_list"] tbody tr td{background-color: #fff;text-align: center;color: #444;}
div[class^="board_list"] thead tr th#num,
div[class^="board_list"] tbody tr td[headers="num"]{width: 75px;}
div[class^="board_list"] tbody tr td[headers="look"],
div[class^="board_list"] tbody tr td[headers="down"],
div[class^="board_list"] tbody tr td[headers="state"]{width: 105px;}
div[class^="board_list"] tbody tr td[headers="write"],
div[class^="board_list"] thead tr th#day,
div[class^="board_list"] tbody tr td[headers="day"]{width: 105px;}
div[class^="board_list"] tbody tr td[headers="company"]{width: 300px;}
div[class^="board_list"] tbody tr td[headers="tit"]{text-align: left;color: #000;font-size: 1.8rem;}
div[class^="board_list"] tbody tr td[headers="tit"] a{width: 100%;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 1;-webkit-box-orient: vertical;font-weight: 600;}
.board_btm{position: relative;}
/*
.board_paging {position: relative;;margin: 50px auto 0;text-align: center;}
.board_paging .paging_list {width: 100%;display: flex;justify-content: center;align-items: center;}
.board_paging li {}
.board_paging li~li {margin-left: 11px;}
.board_paging li a {display: flex;justify-content: center;align-items: center;width: 40px;height: 40px;font-size: 2rem;color: #777;}
.board_paging li a:not(.btn){border-radius: 50%;}
.board_paging li.on a {background-color: #0349a9; color: #fff;font-weight: 600;}
.board_paging .btn{background-image: url(../images/common/paging_arr.png); background-repeat: no-repeat;border:1px solid #dbdbdb;border-radius: 30px;}
.board_paging .first {background-position: 8px 10px;}
.board_paging .prev {background-position: -38px 10px;}
.board_paging .next {background-position: -76px 10px;}
.board_paging .last {background-position: -120px 10px;}
*/
/*20251017 추가*/
.paging{position: relative;;margin: 50px auto 0;text-align: center;}
.paging > ul {width: 100%;display: flex;justify-content: center;align-items: center;}
.paging > ul li~li{margin-left: 11px;}
.paging > ul li strong{display: flex;justify-content: center;align-items: center;width: 40px;height: 40px;font-size: 2rem;color: #777;}
.paging > ul > ul{/* width: 100%; */display: flex;justify-content: center;align-items: center;}
.paging > ul li.active strong{background-color:#0349a9; color:#fff; font-weight:600; border-radius: 50%;}
.paging > ul > a{background-image: url(/ibuilder/template/theme_skin/theme128/images/common/paging_arr.png); background-repeat: no-repeat;border:1px solid #dbdbdb;border-radius: 30px; text-indent: -9999px; width: 40px; height: 40px;}
.paging > ul .first {background-position: 8px 10px; margin-right: 8px;}
.paging > ul .prev {background-position: -38px 10px; margin-right: 8px;}
.paging > ul .next {background-position: -76px 10px; margin-left:8px;}
.paging > ul .last {background-position: -120px 10px; margin-left:8px;}
/*20251017 추가*/


.badge{display: inline-block;min-width:50px; height: 25px; padding: 0 5px;line-height: 25px; text-align: center; background-color: #000;color: #fff;border-radius: 20px;font-size: 1.4rem;}
.board_view_top .badge{height: 35px; margin-right: 10px;padding: 0 10px; font-size: 1.8rem; line-height: 35px;}
.badge.org{background-color: #d54100;}
.badge.skyblue{background-color: #2b7da3;}
.badge.green{background-color: #108451;}
.badge.blue{background-color: #214aa6;}
.badge_down2{display: inline-flex;}
.badge_down2::before{content: "\ed0f";font-size: 2.4rem;color: #000;font-family: "remixicon";vertical-align: middle;}
.total_con{margin-bottom: 20px;}
.table_auto .scroll_move,
.box_auto .scroll_move{display: none}

.board_seach{width: 100%;margin-top: 50px;padding: 25px; border-radius: 10px;text-align: center;}
.board_seach fieldset select,
.board_seach fieldset .search_box,
.board_seach fieldset .date input{height: 45px;border: 1px solid #cdcdcd;background-color: #f8f8f8; color: #333;border-radius: 5px; padding-left: 10px;}
.board_seach fieldset select{width: 160px;}
.board_seach fieldset .search_box{display: inline-flex;overflow: hidden;margin-left: 10px;line-height: 50px;}
.board_seach fieldset .search_box input{width: 300px;}
.board_seach fieldset .search_box.date_search input{width: 250px;}
.board_seach fieldset .allsearch_box{display: inline-block;}
.board_seach fieldset .search_box .btn_search{border-radius: 0;}
.board_seach fieldset .btn_search{display: inline-block;padding: 10px 35px;background-color: #333333;color: #FFF;border-radius: 10px;}
.board_seach fieldset .date_box +.btn_search{border-radius: 5px;}
.board_seach fieldset .btn_search:focus-visible{outline: 1px solid #fff;outline-offset: -5px;}

/*view페이지*/
.board_view_top{border-top: 1px solid #000;border-bottom: 1px solid #dbdbdb;}
.board_view_top .tit{padding: 25px 0;font-size: 2.4rem;font-weight: 600;background-color: #f8faff;text-align: center;vertical-align: middle;}
.board_view_top .board_info{padding: 16px 0;border-top: 1px solid #dbdbdb;}
.board_view_top .board_info li{display: inline-block;}
.board_view_top .board_info li ~ li{margin-left: 25px;}
.board_view_top .board_info li b{display: inline-block; min-width: 90px;border-right: 1px solid #dbdbdb;text-align: center;color: #000;}
.board_view_top .board_info li > span{display: inline-block;color: #444;padding-left: 25px;}
.board_view_top .board_info li > span .txt_blue ~ .txt_blue{margin-left: 10px;}
.board_view_top .board_info li.flex{display: flex; flex-wrap: nowrap;align-items: center;}
.board_view_top .board_info li.flex .badge_down2{display: inline-block;}
.board_view_con{width: 100%; height: 100%; overflow: hidden; padding: 50px; text-align: left;border-bottom: 1px solid #dbdbdb;}
.board_view_con img{width: 100% !important; height: 100% !important;}
.board_view_btm{border-top: 1px solid #dbdbdb;border-bottom: 1px solid #dbdbdb;}
.board_view_con *{font-size: 1.7rem;}
.board_view_con .img_box{width: 370px; /*height: 280px;*/ margin:50px auto; }
.board_view_con .img_box img ~ img{margin-top:20px;}
.board_view_con .img_box2{width: 100%; margin:0 auto;}
.board_view_con .img_box img{width: 100%; height: 100%; object-fit: cover;}
.board_view_con .img_box2 img{width: 100%; height: 100%; object-fit: cover; border-radius: 15px;}
.board_view_btm li.next{border-top: 1px solid #dbdbdb;}
.board_view_btm li a{display: flex;padding: 20px 0;}
.board_view_btm li a b{min-width: 82px;color: #000;}
.board_view_btm li a b::before{display: inline-block;width: 30px;height: 20px;content: "";font-size: 1.6rem;color: #929292;background-image: url(/ibuilder/template/theme_skin/theme128/images/common/paging_arr.png);background-repeat: no-repeat;vertical-align: middle;transform: rotate(90deg);}
.board_view_btm li.prev a b::before {background-position: -40px 0;}
.board_view_btm li.next a b::before {background-position: -80px 0;}
.board_view_btm li a span{display: inline-block; width: calc(100% - 62px); margin-left: 45px;color: #444;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 1;-webkit-box-orient: vertical;}
/* ===== 댓글달기 박스 ===== */
.cmt_box{ margin-top:24px; padding:30px 20px; background:#f5f5f5; border:1px solid #e5e7eb; border-radius:10px; }
.cmt_head{ margin-bottom:12px; }
.cmt_title{ font-size:1.8rem; font-weight:700; color:#111; }
.cmt_total{ margin-left:10px; color:#777; }
.cmt_total b{ font-weight:600; color:#000; }
.cmt_help{ margin-top:6px; color:#555; font-size:1.4rem; }

/* 댓글 목록 */
.cmt_list{ margin-top:12px; overflow:hidden; }
.cmt_item{ padding:14px 16px; border-top:1px solid #e5e7eb; position: relative; }
.cmt_item:first-child{ border-top:0; }
.cmt_meta{ display:flex; align-items:center; gap:10px; font-size:1.4rem; color:#6b7280; }
.cmt_user{ font-weight:600; color:#111;   position:relative; padding-right:10px; }
.cmt_user::after{ content:""; display:inline-block; width:1px; height:12px; background:#d1d5db; margin-left:10px; vertical-align:middle; }
.cmt_text{ margin-top:8px; line-height:1.7; color:#333; word-break:keep-all; }
.cmt_actions{ position: absolute; right: 0; top: 8px; display: flex; align-items: center; gap: 6px; }
.cmt_act{ display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 10px; border: 1px solid #d1d5db; border-radius: 16px; background: #fff; color:#374151; font-size: 1.3rem; line-height: 1; box-shadow: 0 1px 2px rgba(0,0,0,.03); transition: background-color .15s ease, border-color .15s ease; }
.cmt_act:hover, .cmt_act:focus-visible{ background:#f9fafb; border-color:#cbd5e1; outline: 0; }
.cmt_act i{ font-size: 16px; }
.cmt_edit{ border-color:#c7d2fe; }
.cmt_edit:hover, .cmt_edit:focus-visible{ background:#eef2ff; }
.cmt_delete{ border-color:#fecaca; }
.cmt_delete:hover, .cmt_delete:focus-visible{ background:#fef2f2; }

/* 입력줄 */
.cmt_form{ display:flex; align-items:center; gap:10px; }
.cmt_form input{ flex:1 1 auto; min-width:0; height:72px; padding:0 14px; background:#fff; border:1px solid #d1d5db; border-radius:5px; font-size:1.5rem; color:#333; }
.cmt_form input::placeholder{ color:#9ca3af; }

.cmt_btn{ flex:0 0 96px; height:72px; border-radius:5px; border:0; background:#002967; color:#fff; font-size:1.8rem; }
.cmt_btn:hover{ filter:brightness(1.05); }


/* 서브 popup */
.dim {position:fixed;top:0;left:0;bottom:0;right:0;width:100%;height:100%;background:rgba(0, 0, 0, .75);z-index:600;}
.popupLayer {display:none;align-items: center;justify-content: center;position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);padding: 40px;width:650px;max-height:430px;background-color:#fff;;border-radius: 30px;z-index:700;}
.popup_con .pop-close {position: absolute;top: 25px;right:30px;}
.popup_con .pop-close i {display: inline-block;width: 23px;height: 22px;background: url(../img/comm/icon_close.png);}
.popup_con .img_bx img {width: 100%;}

.popupBg {display: none;position:fixed;top:0;left:0;bottom:0;right:0;width:100%;height:100%;background:rgba(0, 0, 0, .75);z-index:600;}
.layerPop {display:none;align-items: center;justify-content: center;position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);padding: 30px;width:650px;max-height:430px;background-color:#fff;;border-radius: 30px;z-index:700;}
.layer_bx {width: 100%;}
.layer_tit {font-size: 2.5rem;font-weight: bold;}
.layer_top {display: flex;justify-content: space-between;}
.layer_con {margin-top: 30px;padding: 30px;;background-color: #f9f9f9;border: 1px solid #eaeaea;text-align: center;}
.layer_con .blue {margin-bottom: 10px;color: #00479c;font-size: 1.8rem;text-align: center;}
.layer_bx .layer_close {}
.layer_bx .layer_close i {display: inline-block;width: 23px;height: 22px;background: url(../img/comm/icon_close.png);}
label+input[type="password"] { margin-left: 5px } 
input[type="password"], input[type="number"], input[type="email"], input[type="tel"] {height: 40px;padding: 10px 15px;border:1px solid #b2b2b2;background-color: #fff;box-sizing: border-box;font-size: 1.6rem;color: #757575} 

/*게시판 lsit, view 공통*/
.btn_area {text-align: center; margin: 50px 0; display: flex; justify-content: flex-end; gap:10px}
.btn_area.abs {position: absolute;bottom: 0; right: 0;margin: 0;}
.btn_area::after { content: ""; clear: both; display: table }
.btn_left { float: left }
.btn_right { float: right }
.btn_area a[class^="btn_"]{display: block;color: #fff;width: 130px; height: 50px; border-radius: 5px; text-align: center;line-height: 50px;}
.btn_write{background-color: #214aa6;}
.btn_list{background-color: #222;}
.btn_ole{background-color: #002967;}
.btn_del{background-color: #318F23;}

/* ===== Q&A 작성 table ===== */
.write_table{ width:100%; border-collapse:collapse; border-top: 2px solid #000; font-size:1.5rem; color:#333; }
.write_table th, .write_table td{ border-bottom:1px solid #e5e7eb; padding:12px 14px; text-align:left; }
.write_table th{ background:#f8faff; width:180px; font-weight:600; color:#111; }
.write_table td{ background:#fff; }
/* 입력요소 */
.w_input{ width:100%; height:38px; padding:0 10px; border:1px solid #d1d5db; border-radius:6px; }
.w_textarea{ width:100%; min-height:220px; padding:10px; border:1px solid #d1d5db; border-radius:6px; resize:vertical; }
.w_check{ display:inline-flex; align-items:center; gap:6px;  }
.w_check [type="checkbox"]{width: 20px; height: 20px; }
.file_btn{ display:inline-block; padding:6px 14px; margin-right:8px; background:#002967; color:#fff; font-weight:600; border-radius:5px; cursor:pointer; font-size:1.6rem; }
.file_hidden{ position:absolute; left:-9999px; }
.file_name{ color:#555555; font-size:1.5rem; }
/* 버튼영역 */
.write_actions{ margin-top:20px; text-align:center; display:flex; justify-content:center; gap:10px; }
.btn2{ min-width:130px; height:50px; display:inline-flex; align-items:center; justify-content:center; font-size:1.8rem;  border-radius:6px; }
.btn2.primary{ background:#214aa6; color:#fff; }
.btn2.cancel{ background:#222; color:#fff; }

/* ===== 모바일 Quick Link 패널 ===== */
.header_ctrl{ display:none; }
.quick_mob_btn{ display:none; width:40px;height:40px;border:1px solid #e5e7eb; border-radius:10px;background:#fff;color:#0f2f62; }
.quick_mob_btn i { font-size:22px; }
.quick_mob_panel{ display:none;position:fixed;left:0;right:0;top:100px; background:#0f2f62;padding:20px 16px 30px;z-index:600; box-shadow:0 6px 18px rgba(0,0,0,.25); }
.quick_mob_panel.is_open { display:block; }
.quick_mob_list { display:grid; grid-template-columns:repeat(5, 1fr); gap:8px; }
.quick_mob_list a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; background: #123a79; color: #fff; border-radius: 10px; padding: 14px 4px; font-size: 1.2rem; text-align: center; line-height: 1.3; }
.quick_mob_list a:hover,
.quick_mob_list a:focus-visible { background:#1a4ca0; outline:0; }
.quick_mob_list a img { width: 26px; height: 26px; object-fit: contain; }

/* 반응형: 모바일 전용 */
@media (max-width:450px){
  .header_inner{ column-gap:10px; }
  .header_ctrl{ display:flex; align-items:center; gap:8px; justify-self:start; grid-column: 2;  }      
  .nav_toggle,
  .quick_mob_btn{ display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; border:1px solid #e5e7eb; border-radius:10px; background:#fff; color:#0f2f62; }
  .quick_mob_btn i{ font-size:22px; }
}




/* 반응형 */


/* ===== Responsive ===== */
@media (max-width: 1024px){
  .sub_menu{ position:static; display:none; box-shadow:none; background:transparent; padding:0; }
  .sub_menu li a{ padding:10px; }
  .gnb_list > li.open > .sub_menu{ display:block; }
  .header_inner{ grid-template-columns:auto auto 1fr; gap:12px; }
  .gnb{ position:fixed; left:0; top:74px; right:0; transform:translateY(-10px); opacity:0; visibility:hidden; transition:transform .2s ease, opacity .2s ease, visibility 0s .2s; background:#fff; box-shadow:0 8px 20px rgba(0,0,0,.08); }
  .gnb_list{ flex-direction:column; padding:12px; gap:4px; }
  .gnb_list > li > a{ padding:12px 10px; border-radius:10px; }
  .util{ justify-self:end; }
  .nav_toggle{ display:inline-flex; align-items:center; justify-content:center; }
  .site_header.is_nav_open .gnb{ transform:translateY(0); opacity:1; visibility:visible; transition-delay:0s; }
  .site_header.is_nav_open .nav_toggle[aria-expanded="true"]{ border-color:#c7d2fe; background:#eef2ff; }
}

@media (max-width:980px){
  .opinion_right{ width:100%; margin-left:0; }
  .opinion_input{ width:100%; flex:1; }
}
@media (max-width: 850px){
  .board_seach fieldset select{width: 100px;}
  .board_seach fieldset .search_box input{width: 150px;}
  .board_seach fieldset .btn_search{padding: 10px 15px;}
}
@media (max-width: 768px){
  .table_auto{position: relative;;overflow-x: auto;}
	.board_list_A.table_auto table{min-width: 850px;}
  .table_auto .scroll_move,
  .box_auto .scroll_move{display: block;position: absolute;top: 50%;bottom: 162px;transform: translate(-50%, -50%);left: 50%;display: inline-block;width: 80px;height: 80px;;background: url(/ibuilder/template/theme_skin/theme128/images/sub/scroll.png) no-repeat 5% center;background-size: cover;z-index: 1;font-size: 0;animation:move_hand 3s infinite;-webkit-animation:move_hand 3s infinite;-ms-animation:move_hand 3s infinite;}
  div[class^="board_list"] thead tr th,
  div[class^="board_list"] tbody tr td{padding: 10px 5px;}
  div[class^="board_list"] tbody tr td[headers="down"],
  div[class^="board_list"] tbody tr td[headers="look"]{width: 50px;}
  div[class^="board_list"] tbody tr td[headers="day"]{width: 100px;}
  /*view*/
  .board_view_top .tit{padding: 15px;}
  .board_view_top .board_info{padding:10px;}
  .board_view_top .board_info li{display: block;}
  .board_view_top .board_info li b{border-right: 0; text-align: left;}
  .board_view_top .board_info li > span{padding-left: 0;}
  .board_view_top .board_info li ~ li{margin: 5px 0 0 0;}
  .board_view_con{padding:20px;}
  /*write*/
  .write_table th{width: 100px;;}
  .board_view_con .img_box,
  .board_view_con .img_box2{width: 100%;}
}
@media (max-width:560px){
  .opinion_radio_list{ gap:12px; row-gap:8px; flex-wrap:wrap; }
  .tbl_basic th, .tbl_basic td{ padding:14px 12px; }
  .board_seach fieldset select{width: 90px;}
  .board_seach fieldset .search_box{margin-left: 5px;}
  .board_seach fieldset .search_box input{width: 120px;}
  .board_seach fieldset .btn_search{padding: 10px 15px;}
  .cmt_form{ gap:8px; }
  .cmt_btn{ flex-basis:84px; height:44px; }
  .cmt_form input{ height:44px; }
  .cmt_actions{ position: static; margin-top: 6px; justify-content: flex-end; }
}

@media (max-width: 450px){  
  .site_header, #mainContent, .site_footer{ padding-left: 0 !important;   }
  .quick_link_wrap{display: none !important;}
  .gnb_list{margin-left: 0;}
  .opinion_box{margin-top: 20px;}
}
@keyframes move_hand {
  0%, 100% { transform: translate(-50%, -50%) translateX(0); opacity: 0.3; }
  50%      { transform: translate(-50%, -50%) translateX(15px); opacity: 0.7; }
}

