@charset "utf-8";
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");

/* 초기화 */
html {overflow-y:scroll; font-size:10px;}
body {padding:0; margin:0 auto; font-size:1.2rem;font-family:'Pretendard Variable', 'Pretendard', sans-serif !important; font-weight: 400; -webkit-text-size-adjust: 100%; letter-spacing:-0.5px;}
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-weight: 600;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}

ul, li, 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:1.5rem;}
input, button {margin:0;padding:0;font-family:'Pretendard Variable', 'Pretendard', sans-serif !important; font-size:1.5rem; font-weight: 400; border-radius: 0;}
input[type="submit"] {cursor:pointer; -webkit-appearance: none;}
button {cursor:pointer}
img {max-width:100%; height:auto;}
textarea, select {font-family:'Pretendard Variable', 'Pretendard', sans-serif !important; font-size:1.5rem; font-weight: 400; border-radius: 0;}
select {width:100%; height:4rem; padding: 0 1rem; padding-right:3rem; font-size:1.5rem; color:#111; background: url('/img/arr_down_b.svg') no-repeat 98% 50% #fff; background-size:2.4rem; -webkit-appearance: none; -moz-appearance: none; appearance: none; border: 1px solid #ccc; border-radius: 0px;}
select::-ms-expand {display: none;}
p {margin:0;padding:0;word-break:keep-all;}
hr {display:none}
pre {overflow-x:scroll;font-size:1.1em}
a {color:#222;text-decoration:none; transition: All 0.3s ease; -webkit-transition: All 0.3s ease; -moz-transition: All 0.3s ease; -o-transition: All 0.3s ease;}

*, :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-scrollbar {
  width: 3px;
  height: 3px;
}
*::-webkit-scrollbar-thumb {
  background: #7a7a7a;
  border-radius: 10px;
}
*::-webkit-scrollbar-track {
  background: transparent;
}

.placeholdersjs {color:#aaa !important}


/* 팝업레이어 */
#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}

#container_title,
#hd_h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}

/* 게시물 선택복사 선택이동 */
#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}

/* ie6 이미지 너비 지정 */
.img_fix {width:100%;height:auto}

/* 캡챠 자동등록(입력)방지 기본 -pc */
#captcha {display:flex;position:relative; gap: 8px;}
#captcha legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
#captcha #captcha_img {border:1px solid #898989;vertical-align:top;padding:0;margin:0}
#captcha #captcha_mp3,
#captcha #captcha_reload {font-size: 0; width: 6.2rem; height: 6.2rem; border: 1px solid #ccc;}
#captcha #captcha_mp3 {background: url(/img/speak.svg) no-repeat center/3.6rem #FFF;}
#captcha #captcha_reload {background: url(/img/refresh.svg) no-repeat center/3.6rem #FFF;}
#captcha #captcha_key {border: 1px solid #CCC; width: 16rem; height: 6.2rem; font-size: 2.4rem; text-align: center;}
#captcha #captcha_info {display: none; margin:5px 0 0;font-size:0.95em;letter-spacing:-0.1em;}

/* 캡챠 자동등록(입력)방지 기본 - mobile */
#captcha.m_captcha audio {display:none;margin:0 0 5px;width:187px}

/* ckeditor 단축키 */
.cke_sc {margin:0 0 5px;text-align:right}
.btn_cke_sc {display:inline-block;padding:0 10px;height:23px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none;line-height:1.9em;vertical-align:middle;cursor:pointer}
.cke_sc_def {margin:0 0 5px;padding:10px;border:1px solid #ccc;background:#f7f7f7;text-align:center}
.cke_sc_def dl {margin:0 0 5px;text-align:left;zoom:1}
.cke_sc_def dl:after {display:block;visibility:hidden;clear:both;content:""}
.cke_sc_def dt, .cke_sc_def dd {float:left;margin:0;padding:5px 0;border-bottom:1px solid #e9e9e9}
.cke_sc_def dt {width:20%;font-weight:bold}
.cke_sc_def dd {width:30%}

/* ckeditor 태그 기본값 */
#bo_v_con ul {display:block;list-style-type:disc;margin-top:1em;margin-bottom:1em;margin-left:0;margin-right:0;padding-left:40px}
#bo_v_con ol {display:block;list-style-type:decimal;margin-top:1em;margin-bottom:1em;margin-left:0;margin-right:0;padding-left:40px}
#bo_v_con li {display:list-item}

/* 버튼 */
a.btn,.btn {line-height:40px !important;height:40px !important;padding:0 16px !important;text-align:center;border:0;font-size:1.5rem; border-radius: 3px !important;}

a.btn01 {display:inline-block;padding:7px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none;vertical-align:middle}
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}
button.btn02 {display:inline-block;margin:0;padding:7px;border:1px solid #3b3c3f;background:#4b545e;color:#fff;text-decoration:none}

.btn_confirm {text-align: center; margin-top: 6rem !important;} /* 서식단계 진행 */

.btn_submit {border:0;background:#014099 !important;color:#fff;cursor:pointer;border-radius:3px}
.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 {display:inline-block;background:#969696;color:#fff;text-decoration:none;vertical-align:middle}
button.btn_cancel {display:inline-block;background:#969696;color:#fff;text-decoration:none;vertical-align:middle}
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_frmline {}
button.btn_frmline {font-size:1em}

/* 게시판용 버튼 */
a.btn_b01,.btn_b01 {display:inline-block;color:#bababa;text-decoration:none;vertical-align:middle;border:0;background:transparent}
a.btn_b02,.btn_b02 {display:inline-block;background:#014099 !important;padding:0 10px;color:#fff;text-decoration:none;border:0;vertical-align:middle}
a.btn_b03, .btn_b03 {display:inline-block;background:#fff;border:1px solid #b9bdd3;color:#646982;text-decoration:none;vertical-align:middle}
a.btn_b04, .btn_b04 {display:inline-block;background:#fff;border:1px solid #ccc;color:#707070;text-decoration:none;vertical-align:middle}
a.btn_admin,.btn_admin {display:inline-block;color:#d13f4a;text-decoration:none;vertical-align:middle} /* 관리자 전용 버튼 */


/* 기본테이블 */
.tbl_wrap table {width:100%;border-collapse:collapse;border-spacing:0 5px;background:#fff;border-top:1px solid #ccc;border-bottom:1px solid #ccc} 
.tbl_wrap caption {padding:10px 0;font-weight:bold;text-align:left}
.tbl_head01 {margin:0 0 10px}
.tbl_head01 caption {padding:0;font-size:0;line-height:0;overflow:hidden}
.tbl_head01 thead th {padding: 1.6rem 1.6rem; text-align:center;border-bottom:1px solid #ccc;height:8rem; border-top: 2px solid #222; font-size: 1.6rem; font-weight: 500;}
.tbl_head01 thead th input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.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: 1.6rem 1.6rem; background: #FAFAFA; border-top:1px solid #ccc;border-bottom:1px solid #ccc;line-height:1.4em;height:8rem;word-break:break-all}
.tbl_head01 tbody tr:hover td {background:#FFF;}

.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} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.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_head02 a {}

/* 폼 테이블 */
.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:#f5f8f9;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 #d0d3db;background:#fff;color:#000;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);
}
.wr_content textarea {padding: 1.6rem 1.6rem; line-height: 1.5;}
.tbl_frm01 textarea {padding:2px 2px 3px}
.frm_input {height: 4.8rem;}
.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 #ccc}
.list_01 li {border-bottom:1px solid #ccc;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}

/*폼 리스트*/
.form_01 h2 {font-size:1.167em}
.form_01 li {margin-bottom:10px}
.form_01 ul:after,
.form_01 li:after {display:block;visibility:hidden;clear:both;content:""}
.form_01 .left_input {float:left}
.form_01 .margin_input {margin-right:1%}
.form_01 textarea {height:100px;width:100%}
.form_01 .frm_label {display:inline-block;width:130px}

/* 자료 없는 목록 */
.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}

/* 테이블 항목별 정의 */
.td_board {width:80px;text-align:center}
.td_category {width:80px;text-align:center}
.td_chk {width:30px;text-align:center}
.td_date {width:60px;text-align:center}
.td_datetime {width:110px;text-align:center}
.td_group {width:80px;text-align:center}
.td_mb_id {width:100px;text-align:center}
.td_mng {width:80px;text-align:center}
.td_name {width:100px;text-align:left}
.td_nick {width:100px;text-align:center}
.td_num {width:50px;text-align:center}
.td_numbig {width:80px;text-align:center}
.td_stat {width:60px;text-align:center}

.txt_active {color:#5d910b}
.txt_done {color:#e8180c}
.txt_expired {color:#ccc}
.txt_rdy {color:#8abc2a}

/* 새창 기본 스타일 */
.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;-webkit-box-shadow:0 1px 10px rgba(0,0,0,.1);
-moz-box-shadow:0 1px 10px rgba(0,0,0,.1);
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:#014099 !important;border-color:#014099 !important;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:#014099 !important;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}

/* 자바스크립트 alert 대안 */
#validation_check {margin:100px auto;width:500px}
#validation_check h1 {margin-bottom:20px;font-size:1.3em}
#validation_check p {margin-bottom:20px;padding:30px 20px;border:1px solid #e9e9e9;background:#fff}

/* 사이드뷰 */
.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;
-webkit-box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2);
-moz-box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2);
box-shadow:2px 2px 3px 0px 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:0px;width:auto;height:auto}
.sv_nojs .sv {display:block}

/* 페이징 */
.pg_wrap {clear:both; margin:3rem auto; text-align:center;}
.pg_wrap:after {display:block;visibility:hidden;clear:both;content:""} 
.pg {display:inline-block;}
.pg_page, .pg_current {display:inline-block;vertical-align:middle;background:#fff;border:1px solid #ddd;}
.pg a:focus, .pg a:hover {text-decoration:none}
.pg_page {color:#767676;font-size:1.5rem;height:40px;line-height:38px;padding:0 5px;min-width:40px;text-decoration:none;border-radius:0; border:1px solid #dedede;}
.pg_start {text-indent:-999px;overflow:hidden;background:url('../img/btn_first.gif') no-repeat 50% 50% #fff;padding:0;border:1px solid #ddd}
.pg_prev {text-indent:-999px;overflow:hidden;background:url('../img/btn_prev.gif') no-repeat 50% 50% #fff;padding:0;border:1px solid #ddd}
.pg_end {text-indent:-999px;overflow:hidden;background:url('../img/btn_end.gif') no-repeat 50% 50% #fff;padding:0;border:1px solid #ddd}
.pg_next {text-indent:-999px;overflow:hidden;background:url('../img/btn_next.gif') no-repeat 50% 50% #fff;padding:0;border:1px solid #ddd}
.pg_current {display:inline-block; font-size: 1.5rem; background:#575757;border:1px solid #dedede;color:#FFF;font-weight:600;height:40px;line-height:40px;padding:0 10px;min-width:40px;border-radius:0;}

/* 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;
}

/* Mobile화면으로 */
#device_change {display:block;margin:0.3em;padding:0.5em 0;border:1px solid #eee;border-radius:2em;background:#fff;color:#000;font-size:2em;text-decoration:none;text-align:center}

.gap4 {gap: 0.4rem;}
.gap8 {gap: 0.8rem;}
.gap16 {gap: 1.6rem;}
.gap20 {gap: 2rem;}
.flex {display: flex;}
.aic {align-items: center;}
.aie {align-items: end;}
.jsc {justify-content: center;}
.jsb {justify-content: space-between;}
.jsr {justify-content: right;}
.tac {text-align: center;}
.tal {text-align: left !important;}
.tar {text-align: right;}
.fx1 {flex: 1;}

.fw200 {font-weight: 200;}
.fw300 {font-weight: 300;}
.fw400 {font-weight: 400;}
.fw500 {font-weight: 500;}
.fw600 {font-weight: 600;}
.fw700 {font-weight: 700;}

.mgt4 {margin-top: 0.4rem;}
.mgb4 {margin-bottom: 0.4rem;}
.mgt8 {margin-top: 0.8rem;}
.mgb8 {margin-bottom: 0.8rem;}
.mgt12 {margin-top: 1.2rem;}
.mgb12 {margin-bottom: 1.2rem;}
.mgt16 {margin-top: 1.6rem;}
.mgb16 {margin-bottom: 1.6rem;}
.mgt20 {margin-top: 2rem;}
.mgb20 {margin-bottom: 2rem;}
.mgt32 {margin-top: 3.2rem;}
.mgb32 {margin-bottom: 3.2rem;}
.mgt36 {margin-top: 3.6rem;}
.mgb36 {margin-bottom: 3.6rem;}
.mgt40 {margin-top: 4rem;}
.mgb40 {margin-bottom: 4rem;}
.mgt50 {margin-top: 5rem;}
.mgb50 {margin-bottom: 5rem;}
.mgt60 {margin-top: 6rem;}
.mgb60 {margin-bottom: 6rem;}
.mgt80 {margin-top: 8rem;}
.mgb80 {margin-bottom: 8rem;}
.mgt140 {margin-top: 14rem;}

.top-bottom {transform: translate(0,-50px); -webkit-transform: translate(0,-50px); -webkit-transition: 0.45s; transition: 0.45s; opacity:0;}
.bottom-top {transform: translate(0,50px); -webkit-transform: translate(0,50px); -webkit-transition: 0.45s; transition: 0.45s; opacity:0;}
.img-ani {transition: transform 0.45s cubic-bezier(0.16, 0.68, 0.43, 0.99),opacity 0.45s ease-in-out; opacity: 0;}
.img-aniload {transform: translate(0,0); -webkit-transform: translate(0,0); opacity:1;}
.img-aniload.top-bottom,
.img-aniload.bottom-top {transition-delay: 0.2s; -webkit-transition-delay: 0.2s; transform: translate(0,0); -webkit-transform: translate(0,0); opacity: 1;}
.txt-ani {overflow: hidden; -webkit-transition: all 1s ease; transition: all 1s ease; opacity: 0; color:#111;}
.txt-ani > span {-webkit-transition: inherit; transition: inherit; transform: translate(0,100px); -webkit-transform: translate(0,100px); opacity: 0; display: inline-block;}
.txt-aniload > span {transform: translate(0,0); -webkit-transform: translate(0,0); opacity: 1;}
.tech-img {display:inline-block; max-width: 100%;}
.tech-img img {max-width: 1200px;}
.tech-img > div {width: 0; overflow: hidden; -webkit-transition: all 1.2s ease; transition: all 1.2s ease; opacity: 0;}
.tech-aniload > div {width: 100%; opacity: 1;}
.left-right {opacity:0; transform: translate(-40px,0); -webkit-transform: translate(-40px,0); transition: all 0.45s ease; -webkit-transition: all 0.45s ease;}
.right-left {opacity:0; transform: translate(40px,0); -webkit-transform: translate(40px,0); transition: all 0.45s ease; -webkit-transition: all 0.45s ease;}
.img-aniload .left-right,
.img-aniload .right-left,
.img-aniload.left-right,
.img-aniload.right-left {transition-delay: 0.3s; -webkit-transition-delay: 0.3s; transform: translate(0,0); -webkit-transform: translate(0,0); -moz-transform: translate(0,0); -ms-transform: translate(0,0); -o-transform: translate(0,0); opacity: 1;}
.dy2 {transition-delay: 0.3s !important;}
.dy3 {transition-delay: 0.4s !important;}
.dy4 {transition-delay: 0.5s !important;}
.dy5 {transition-delay: 0.6s !important;}
.gnb_pc {display:block;}
.gnb_m {display:none;}
.pc_on {display:block;}
.m_on {display:none;}

#wrapper {}
.wrap {position: relative; max-width: 132rem; padding: 0 2rem; margin: 0 auto;}
.blk {display: block;}

#hd {}
#c_gnb {position:fixed; width:100%; overflow:hidden; height: 15rem; z-index: 9; border-bottom: 1px solid rgba(255, 255, 255, 0.25);}
#c_gnb .wrap {position: relative; display: flex; justify-content: space-between;}
#c_gnb .mn_ul {position: relative; z-index:3; display: flex; justify-content: space-between; padding-left: 6rem; height: 32rem;}
#c_gnb .mn_ul .tit_menu {padding: 0 0; text-align:center;}
#c_gnb .mn_ul .dep_w {}
#c_gnb .mn_ul .dep_w .de1 {}
#c_gnb .mn_ul .dep_w .de1 a {display: flex; height: 10rem; justify-content: center; align-items: center; font-size: 2rem; font-weight: 600; color: #FFF;}
#c_gnb .mn_ul .dep_w .de1 a span {position:relative; padding:0 1.5rem;}
#c_gnb .mn_ul .dep_w .de1#on a {color: #0092e2;}
#c_gnb .mn_ul .tit_menu:hover .dep_w .de1 a {color: #111;}
#c_gnb .mn_ul .dep_w #on.de1 a span::before {/*content: ''; position: absolute; top: -12px; left: 12px; width: 8px; height: 8px; border-radius: 5rem; background: #DE4446;*/}
#c_gnb .mn_ul li .dep_w .de1 span:after {opacity: 0; content: ''; position: absolute; left: 0; width: 0; bottom: -25px; height: 3px; background: #0695e3; transition: all 0.2s ease;}
#c_gnb .mn_ul li:hover .dep_w .de1 span:after {opacity: 1; width: 100%;}
#c_gnb .mn_ul .dep_m {}
#c_gnb .mn_ul .dep_w .dep_m a {font-size: 1.8rem; padding: 8px 0; display: block; word-break: keep-all; color:#ddd;}
#c_gnb .mn_ul .dep_w .dep_m a:hover {color:#0092e2 !important;}
#c_gnb .mn_ul .dep_m li.on a {color:#0092e2 !important;}
#c_gnb .logo {position:relative;  z-index:5;}
#c_gnb .logo a {display: flex; align-items: center; height: 15rem; background: url(/img/env_logo_w.png) no-repeat center left; width: 30rem; background-size: 227px;}
#c_gnb .ov_bg {position: absolute; top: 0; left: 0; width: 100%; height: 10rem; background: transparent;}
.riTop {flex: 1; border-left: 1px solid rgba(255, 255, 255, 0.25);}
.riTop .abox {height: 5rem; position: relative; border-bottom: 1px solid rgba(255, 255, 255, 0.25);}
.riTop .abox::after {content: ''; position: absolute; right: -100%; width: 100%; z-index: 1; border-bottom: 1px solid rgba(255, 255, 255, 0.25);}
.riTop .abox ul {display: flex; align-items: center; justify-content: right; height: 100%;}
.riTop .abox ul li {}
.riTop .abox .tel {background: #0092e2; color: #FFF; font-size: 1.6rem; font-weight: 600; display: flex; align-items: center; gap: 6px; height: 2.4rem; padding: 0 2rem; border-radius: 5rem; margin-right: 2rem;}
.riTop .abox .tel::before {content: ''; width: 1.6rem; height: 1.8rem; background: url(/img/phone_ic.png) no-repeat center;}
.riTop .abox .sns a {width: 3rem; height: 5rem; display: block;}
.riTop .abox .s1 a {background: url(/img/sns_i1.png) no-repeat center; background-size: 14px;}
.riTop .abox .s2 a {background: url(/img/sns_i2.png) no-repeat center; background-size: 16px;}
.riTop .abox .s3 a {background: url(/img/sns_i3.png) no-repeat center; background-size: 10Px;}
.riTop .abox .s4 a {background: url(/img/sns_i4.png) no-repeat center; background-size: 24px;}

#c_gnb.fixed,
#c_gnb.mn_hover {background: #FFF;}

#c_gnb.fixed {border-bottom: 1px solid #d4d4d4;}

#c_gnb.fixed .logo a,
#c_gnb.mn_hover .logo a {background: url(/img/env_logo_b.png) no-repeat center left; background-size: 227px;}

#c_gnb.fixed .mn_ul .dep_w .dep_m a,
#c_gnb.mn_hover .mn_ul .dep_w .dep_m a {color: #7c7c7c;}

#c_gnb.fixed .mn_ul .dep_w .de1 a,
#c_gnb.mn_hover .mn_ul .dep_w .de1 a {color: #111;}

#c_gnb.fixed .riTop .abox .s1 a,
#c_gnb.mn_hover .riTop .abox .s1 a {background: url(/img/sns_i1_on.png) no-repeat center; background-size: 14px;}

#c_gnb.fixed .riTop .abox .s2 a,
#c_gnb.mn_hover .riTop .abox .s2 a {background: url(/img/sns_i2_on.png) no-repeat center; background-size: 16px;}

#c_gnb.fixed .riTop .abox .s3 a,
#c_gnb.mn_hover .riTop .abox .s3 a {background: url(/img/sns_i3_on.png) no-repeat center; background-size: 10px;}

#c_gnb.fixed .riTop .abox .s4 a,
#c_gnb.mn_hover .riTop .abox .s4 a {background: url(/img/sns_i4_on.png) no-repeat center; background-size: 24px;}

#c_gnb.fixed .riTop .abox::after,
#c_gnb.fixed .riTop .abox,
#c_gnb.mn_hover .riTop .abox::after,
#c_gnb.mn_hover .riTop .abox {border-bottom: 1px solid #d4d4d4;}

#c_gnb.fixed .riTop,
#c_gnb.mn_hover .riTop {border-left: 1px solid #d4d4d4;}

.rMenu {height: 10rem; display: none; align-items: center;}
.rMenu .rMenuUl {display: flex; align-items: center; gap: 2.8rem; height: 100%;}
.rMenu .rMenuUl .ham {width: 4rem; height: 4rem; background: #ed6d00; border-radius: 50%; display: flex; flex-direction: column; gap: 4px; align-items: center; cursor: pointer; justify-content: center;}
.rMenu .rMenuUl .ham span {height: 2px; background: #FFF; width: 2rem;}
.rMenu .rMenuUl .ham .s1 {}
.rMenu .rMenuUl .ham .s2 {}
#menu {opacity:0; width: 30rem; position: fixed; top: 2rem; bottom: 2rem; border-radius: 1.2rem; right:-100%; z-index: 11; background: #fff; transition: All 0.3s ease; -webkit-transition: All 0.3s ease;}
body.open #menu {right: 2rem; opacity:1; z-index:10;}.dim {position:fixed; top:0; left:0; right:0; bottom:0; z-index:9; opacity:0; display:none; background:rgba(0,0,0,0.5);}
.dim {position:fixed; top:0; left:0; right:0; bottom:0; z-index:9; opacity:0; display:none; background:rgba(0,0,0,0.4); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);}
body.open .dim {opacity:1; display:block;}
.slide_close {width: 60px; height: 60px; position: absolute; z-index: 2; right: 0px; top: 5px; background-image: url('/img/close_btn_b.svg'); background-size: 2rem; background-repeat: no-repeat; background-position: center; cursor: pointer;}
#menu #cssmenu {position: relative; padding-top: 8rem;}
#menu #cssmenu li li {position: relative;}
#menu #cssmenu .cssmenu_list {padding: 0 2rem;}
#menu #cssmenu ul li a {display:block; position: relative;}
#menu #cssmenu .has-sub {}
#menu #cssmenu:after, #menu #cssmenu ul:after {content:''; display:block; clear:both;}
#menu #cssmenu ul ul {display: none;}
#menu .cssmenu_list > li:first-child {}
#menu #cssmenu > ul > li.active > ul {display: block;}
#menu #cssmenu > ul > li > a {padding: 1.6rem 6px;margin:0 0; cursor: pointer; z-index: 2; font-size: 16px; text-decoration: none; color: #242424; -webkit-transition: color .2s ease; -o-transition: color .2s ease; transition: color .2s ease; border-bottom:1px solid #ddd; font-weight:500;}
#menu #cssmenu > ul > li > a:hover {}
#menu #cssmenu ul > li.has-sub > a:after {content: ""; position: absolute; top: 1.6rem; right: 4px; width: 2rem; height: 2rem; background: url(/img/arr_down_b.svg) no-repeat center / 2.4rem; -webkit-transition: all 0.1s ease-out; transition: all 0.1s ease-out;}
#menu #cssmenu ul > li.has-sub.open > a:after {-webkit-transform: rotate(180deg); transform: rotate(180deg);}
#menu #cssmenu ul ul li a {padding: 6px 1.2rem; cursor: pointer; z-index: 2; font-size: 15px; text-decoration: none; color: #666; background: #fff; -webkit-transition: color .2s ease; -o-transition: color .2s ease; transition: color .2s ease;}
#menu #cssmenu .open {}
#menu #cssmenu .open > a {color: #775230;}
#menu #cssmenu .open ul {padding: 10px 0; border-bottom:1px solid #999;}
.s_logo {position: absolute; top: 12px; left: 6px; z-index: 2;}
.s_logo a {display: flex; align-items: center; position: relative; height: 7rem; padding: 0 2rem;}
.s_logo a img {height: 3.2rem;}

.main_s01 {height: 100dvh; position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden;}
.main_s01 .bg {position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: url(/img/main_sd1-1.jpg) no-repeat center/cover; transform: scale(1.15); transition: all 2s ease-in-out;}
.main_s01 .txt {color: #FFF; position: relative; z-index: 1; text-align: center;}
.main_s01 .bg.img-aniload {transform: scale(1);}
.main_s01 .txt .m1 {font-size: 3.2rem; font-weight: 600; transition-delay: 0.6s;}
.main_s01 .txt h2 {font-size: 8.2rem; font-weight: 700; margin-top: 2.4rem; transition-delay: 0.9s;}
.main_s02 {padding: 10rem 0; overflow: hidden;}
.idxH3 {font-size: 4rem; color: #191919; font-weight: 700; text-align: center; margin-bottom: 1rem;}
.infoSdCont {overflow: hidden; margin-right: -100%; padding-bottom: 6rem; position: relative; margin-top: 5rem;}
.infoSdCont .swiper-slide {width: 32.4rem;}
.infoSdCont .in {position: relative;}
.infoSdCont .img {}
.infoSdCont .img img {border-radius: 1.2rem;}
.infoSdCont .bg1 {}
.infoSdCont .int {display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; overflow: hidden; border-radius: 1.2rem;}
.infoSdCont .int::before {content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,146,226,0.8); border-radius: 1.2rem; opacity: 0; transition: all 0.5s ease; transform: translateX(-70%);}
.infoSdCont .int .txt {position: absolute; left: 2rem; bottom: 3rem; right: 2rem; color: #FFF; opacity: 0; transition: all 0.3s ease; transform: translateY(30px);}
.infoSdCont .int .txt h4 {font-size: 2.8rem; font-weight: 600; margin-bottom: 6px;}
.infoSdCont .int .txt p {font-size: 2rem; line-height: 1.5; margin-bottom: 2.4rem;}
.infoSdCont .int .txt .ic {width: 6rem; height: 6rem; border-radius: 5rem; font-size: 0; background: url(/img/plus_ic.svg) no-repeat center/33px #FFF; color: #4fc0ff; display: flex; align-items: end; justify-content: center; font-weight: 500;}

.infoSdCont .swiper-slide.swiper-slide-active {}
.infoSdCont .swiper-slide:hover .int::before,
.infoSdCont .swiper-slide.swiper-slide-active .int::before {opacity: 1; transform: translateX(0);}
.infoSdCont .swiper-slide:hover .int .txt,
.infoSdCont .swiper-slide.swiper-slide-active .int .txt {opacity: 1; transform: translateY(0); transition-delay: 0.2s;}
.infoSdCont .btCont {position: absolute; left: 0; bottom: 0; right: 0; max-width: 128rem; z-index: 1;}
.infoSdCont .btCont .swiper-pagination-progressbar {height: 6px; left: 0; background: #f3f3f3; bottom: 0; right: 0; margin-right: 16rem;}
.infoSdCont .btCont .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {background: #0092e2;}
.infoSdCont .btArr {position: absolute; right: 0; bottom: 0; width: 10rem;}
.infoSdCont .btArr .swiper-button-next,
.infoSdCont .btArr .swiper-button-prev {background-image: url(/img/arr_long.png); width: 3rem; height: 3rem; background-size: 3rem;}
.infoSdCont .btArr .swiper-button-next {transform: rotate(-180deg);}
.infoSdCont .btArr .swiper-button-prev {}

.main_s03 {padding: 5rem 0 0; position: relative;}
.main_s03::before {content: ''; position: absolute; top: 0; left: 0; right: 0; background: url(/img/sec3_t1-1.png) no-repeat right bottom #f3f3f3; height: 50rem;}
.main_s03 .cont {}
.main_s03 .cont .img {}
.main_s03 .cont .img img {}
.main_s03 .cont .txt {padding-top: 8rem; padding-left: 4rem;}
.main_s03 .cont .txt h3 {margin-bottom: 2.4rem;}
.main_s03 .cont .txt p {font-size: 2.4rem; color: #525252; line-height: 1.7; padding-left: 1.8rem; position: relative;}
.main_s03 .cont .txt p::before {content: ''; position: absolute; top: 1rem; bottom: 1rem; left: 0; width: 5px; background: #0092e2; border-radius: 5rem;}

.main_s04 {padding: 6rem 0 9rem; margin-bottom: 9rem;}
.main_s04 h3 {}
.main_s04 .cont {margin-top: 5rem;}
.main_s04 .cont ul {}
.main_s04 .cont ul li {margin-right: -43px;}
.main_s04 .cont ul li .in {width: 29rem; height: 29rem; border: 1px solid #999; border-radius: 50%; text-align: center; display: flex; align-items: center; justify-content: center; flex-direction: column; box-shadow: 0px 0px 40px rgba(0, 0, 0, 0.22); background: #FFF; position: relative; transition: all 0.3s ease;}
.main_s04 .cont ul li .in h4 {font-size: 2.4rem; font-weight: 600; color: #1a1a1a; position: relative; z-index: 2; transition: all 0.3s ease;}
.main_s04 .cont ul li .in .ic {margin-top: 2rem; position: relative; z-index: 2;}
.main_s04 .cont ul li .in .ic img {transition: all 0.3s ease;}
.main_s04 .cont ul li .in .int {position: absolute; font-size: 7.6rem; font-weight: 800; letter-spacing: -3px; color: #eee; z-index: 1; transition: all 0.3s ease;}
.main_s04 .cont ul li:nth-of-type(2),
.main_s04 .cont ul li:nth-of-type(4) {transform: translateY(8rem);}
.main_s04 .cont ul li:nth-of-type(1) {z-index: 1;}
.main_s04 .cont ul li:nth-of-type(2) {z-index: 2;}
.main_s04 .cont ul li:nth-of-type(3) {z-index: 3;}
.main_s04 .cont ul li:nth-of-type(4) {z-index: 4;}
.main_s04 .cont ul li:nth-of-type(5) {z-index: 5;}
.main_s04 .cont ul li.on .in {background: #0092e2;}
.main_s04 .cont ul li.on .in h4 {color: #FFF;}
.main_s04 .cont ul li.on .in .int {color: rgba(255,255,255,0.1);}

.main_s05 {padding: 10rem 0; background: url(/img/main_bg5-1.jpg) no-repeat center/cover;}
.main_s05 .cont {padding: 0 4rem; display: flex; align-items: center; justify-content: space-between;}
.main_s05 .cont .le {}
.main_s05 .cont .le .m1 {font-size: 2.8rem; color: #0092e2; font-weight: 700;}
.main_s05 .cont .le .m2 {font-size: 4.8rem; color: #FFF; font-weight: 700; margin: 2rem 0 4rem; line-height: 1.4;}
.req_dl {display: flex; align-items: center; gap: 8px;}
.req_dl.mgt {margin-top: 1rem;}
.req_dl dt {width: 3.2rem; height: 3.2rem; background: #0092e2; display: flex; align-items: center; justify-content: center; border-radius: 5rem; flex-shrink: 0;}
.req_dl dt img {height: 2rem;}
.req_dl dd {font-size: 2.8rem; font-weight: 400; flex: 1; color: #FFF;}
.req_dl dd a {display: block; color: #FFF; font-weight: 700; font-size: 3.6rem;}
.req_lk {margin-top: 4.4rem;}
.req_lk a {font-size: 2.2rem; color: #FFF; font-weight: 600; padding: 1.6rem 2.8rem; display: inline-flex; align-items: center; background: #3f4346; border-radius: 5rem;}
.req_lk a span {margin-left: 2rem; display: inline-flex; align-items: center; width: 4.8rem; height: 3.2rem; background: #0092e2; border-radius: 1.6rem; justify-content: center; transition: all 0.3s ease;}
.req_lk a:hover span {transform: translateX(10px);}
.req_lk a span img {height: 3.2rem;}
.main_s05 .cont .ri {width: 62rem;}
.main_s05 .cont .ri h3 {text-align: center; color: #FFF; margin-bottom: 2rem;}
.rsvState {}
.rsvState .subj {margin-bottom: 1.6rem;}
.rsvState .subj ul {display: flex; align-items: center; background: #181818; color: #FFF; height: 6rem; border-radius: 1rem;}
.rsvState .subj  ul li {width: 25%; text-align: center; font-size: 1.8rem;}
.rsvSd {height: 36rem; position: relative; overflow: hidden;}
.rsvSd .swiper-slide {}
.rsvSd .swiper-slide ul {padding: 1.2rem 0; display: flex; align-items: center; border-bottom: 1px solid rgba(255, 255, 255, 0.4);}
.rsvSd .swiper-slide ul li {width: 25%; text-align: center; font-size: 1.8rem; color: #FFF;}
.rsvSd .swiper-slide .end,
.rsvSd .swiper-slide .ing,
.rsvSd .swiper-slide .rdy {display: inline-flex; align-items: center; width: 10rem; height: 3.2rem; justify-content: center; border-radius: 3rem; font-size: 1.6rem;}
.rsvSd .swiper-slide .end {background: #004de7;}
.rsvSd .swiper-slide .ing {background: #2496d5;}
.rsvSd .swiper-slide .rdy {background: #2496d5;}
.rsvState .li1 {}
.rsvState .li2 {}
.rsvState .li3 {}
.rsvState .li4 {}
#footer {padding: 8rem 0;}
#footer .cont {display: flex; justify-content: space-between; align-items: flex-end;}
#footer .cont .le {flex: 1;}
#footer .cont .in {display: flex; flex-wrap: wrap;}
#footer .cont dl {font-size: 1.8rem; display: flex; margin-bottom: 1.2rem;}
#footer .cont dl dt {color: #767676; flex-shrink: 0; width: 10rem;}
#footer .cont dl dd {color: #242424;}
#footer .cont .dl1 {width: 35%;}
#footer .cont .dl2 {width: 65%;}
#footer .cont .ri {}
#footer .cont .ri .m1 {font-size: 1.8rem; margin-bottom: 1.2rem; color: #FFF; padding: 1rem 2rem; line-height: 1.5; border-radius: 1rem; text-align: center; background: #9fa1a2;}
#footer .copy {font-size: 1.6rem; color: #8b8b8b; padding-top: 2.4rem; margin-top: 2.4rem; border-top: 1px solid #b2b4b5;}

.m28 {font-size: 2.2rem; line-height: 1.6;}
.c52 {color: #525252;}

.main_gall {padding: 10rem 0 18rem; overflow: hidden; position: relative;}
.main_gall::after {content: ''; position: absolute; left: 0; bottom: 0; right: 0; height: 36rem; background-image: linear-gradient(to right, #0072f4, #0092e2); z-index: -1;}
.main_gall::before {content: 'OUR PROJECTS'; position: absolute; font-family: "Outfit", sans-serif; left: 0; bottom: 5rem; right: 0; font-size: 15rem; font-weight: 800; color: rgba(255, 255, 255, 0.1); text-align: center;}
.main_gall .cont {margin-top: 5rem;}

.qk {position: fixed; bottom: 2rem; right: 2rem; z-index: 8;}
.qk .ctt {margin-bottom: 1rem;}
.qk .ctt a {width: 7.2rem; font-size: 2rem; color: #FFF; font-weight: 600; background: #004de7; padding: 2.4rem 0; display: flex; justify-content: center; border-radius: 5rem;}
#top_btn {width: 7.2rem; height: 7.2rem; background: url(/img/arr_long.png) no-repeat center #FFF; background-size: 3.6rem; border-radius: 5rem; border: 1px solid #ddd; transform: rotate(90deg);}

.blue {color: #0092e2 !important;}
#subp_top {position: relative;}
#subp_top .commBg {overflow: hidden; height: 100dvh; position: relative;}
#subp_top .commBg .bg {position: absolute; top: 0; left: 0; right: 0; bottom: 0; transform: scale(1.1); transition: all 2.0s ease;}
#subp_top .commBg .bg.img-aniload {transform: scale(1.0);}
#subp_top .bg1 {background: url(/img/subp_bg1.jpg) no-repeat center/cover;}
#subp_top .bg2 {background: url(/img/subp_bg2.jpg) no-repeat center/cover;}
#subp_top .bg3 {background: url(/img/subp_bg3.jpg) no-repeat center/cover;}
#subp_top .bg4 {background: url(/img/subp_bg4.jpg) no-repeat center/cover;}
#subp_top .bg5 {background: url(/img/subp_bg5.jpg) no-repeat center/cover;}
#subp_top .bg6 {background: url(/img/subp_bg6.jpg) no-repeat center/cover;}
#subp_top .bg7 {background: url(/img/subp_bg7.jpg) no-repeat center/cover;}
#subp_top .bg8 {background: url(/img/subp_bg8.jpg) no-repeat center/cover;}
#subp_top .bg9 {background: url(/img/subp_bg9.jpg) no-repeat center/cover;}
#subp_top .bg10 {background: url(/img/subp_bg10.jpg) no-repeat center/cover;}
#subp_top .bg11 {background: url(/img/subp_bg11.jpg) no-repeat center/cover;}
#subp_top .bg12 {background: url(/img/subp_bg12.jpg) no-repeat center/cover;}
#subp_top .wrap {height: 100%; display: flex; align-items: center;}
#subp_top .txt {position: relative; z-index: 1; margin-top: 12rem;}
#subp_top .txt h2 {font-size: 6.8rem; font-weight: 800; color: #FFF;}
#subp_top .txt p {font-size: 2.4rem; color: #FFF; line-height: 1.6; margin-top: 4rem;}
.out {font-family: "Outfit", sans-serif;}
.fstCont {padding: 8rem 0;}
.fstCont ul {margin: 5rem -2.5rem 0; display: flex; flex-wrap: wrap;}
.fstCont ul li {width: 33.3333333%; padding: 0 2.5rem; text-align: center;}
.fstCont .outb {border: 3px solid #0092e2; border-radius: 3rem; min-height: 38rem; display: flex; align-items: center; justify-content: center;}
.fstCont .inb {}
.fstCont .inb .out {font-size: 6rem; color: #0092e2; font-weight: 900; position: relative; display: inline-flex;}
.fstCont .inb .out::after {content: ''; position: absolute; top: -3rem; right: -4rem; width: 12rem; height: 12rem; border-radius: 50%; background: #e5f4fc; z-index: -1;}
.fstCont .inb .txt {margin-top: 4rem;}
.fstCont .inb .txt .m1 {font-size: 2.4rem; color: #191919; font-weight: 700; margin-bottom: 1.2rem;}
.fstCont .inb .txt .m2 {font-size: 1.8rem; color: #525252; line-height: 1.6; letter-spacing: -1.5px;}
.fstCont .mid .outb {border: 3px solid #004de7;}
.fstCont .mid .outb .out {color: #004de7;}
.fstCont .mid .inb .out::after {background: #e5edfd; right: -1rem;}

.fstWhe {background: #f3f3f3; padding: 8rem 0;}
.fstWhe .cont {margin-top: 5rem; position: relative;}
.fstWhe .cont .img {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transform-style: preserve-3d; z-index: 1;}
.fstWhe .cont .img img {height: 32rem;}
.fstWhe .cont ul {display: flex; flex-wrap: wrap; margin: 0 -4rem; gap: 4rem 0;}
.fstWhe .cont ul li {width: 50%; padding: 0 4rem;}
.fstWhe .cont .in {height: 38rem; padding: 9rem 7rem 0;}
.fstWhe .cont .m1 {font-size: 3.6rem; color: #FFF; font-weight: 700; margin-bottom: 1.2rem;}
.fstWhe .cont .m2 {font-size: 2rem; color: rgba(255,255,255,0.85); line-height: 1.6;}
.fstWhe .cont .bg1 .in {background: url(/img/fst_w1.png) no-repeat center;}
.fstWhe .cont .bg2 .in {background: url(/img/fst_w2.png) no-repeat center; text-align: right;}
.fstWhe .cont .bg3 .in {background: url(/img/fst_w3.png) no-repeat center;}
.fstWhe .cont .bg4 .in {background: url(/img/fst_w4.png) no-repeat center; text-align: right;}

.workFlow {padding: 8rem 0; background: url(/img/work_bg.jpg) no-repeat center/cover; background-attachment: fixed;}
.workFlow .tbox h3 {color: #FFF;}
.workFlow .tbox .m28 {color: rgba(255,255,255,0.7);}
.workFlow ul {display: flex; margin: 4rem -1rem 0; flex-wrap: wrap;}
.workFlow ul li {width: 25%; padding: 0 1rem; text-align: center;}
.workFlow .m1 {font-size: 4.2rem; font-weight: 700;}
.workFlow .m2 {font-size: 2.2rem; color: #525252; font-weight: 700; background: #FFF; padding: 2rem 0; border-radius: 1.2rem; margin-top: 1rem;}
.workFlow .txt {background: #004de7; height: 30rem; border-radius: 1.2rem; display: flex; flex-direction: column; align-items: center; justify-content: center;}
.workFlow ul li:nth-of-type(2) .txt,
.workFlow ul li:nth-of-type(4) .txt {background: #0092e2;}
.workFlow .txt .ic {height: 14rem; display: flex; align-items: center;}
.workFlow .txt .ic img {}
.workFlow .m3 {font-size: 1.8rem; color: #FFF; line-height: 1.7; margin-top: 2rem; letter-spacing: -2px;}

.main_info {padding: 16rem 0; height: 733px; background: url(/img/info_bg-1.jpg) no-repeat center/cover;}
.main_info .wrap {height: 100%;}
.main_info .cont {padding-left: 18rem; height: 100%; display: flex; flex-wrap: wrap;}
.main_info .cont .le {background: #FFF; flex: 1; border-radius: 3rem 0 0 0; margin-right: 3.2rem; padding-top: 8rem; padding-left: 6rem;}
.main_info .cont .ri h3,
.main_info .cont .le .m1 {font-size: 2.8rem; color: #191919; font-weight: 700; margin-bottom: 1.6rem;}
.main_info .cont .le .m2 {font-size: 1.8rem; padding-left: 1.8rem; margin-left: -1.8rem; color: #525252; line-height: 2; position: relative;}
.main_info .cont .le .m2::before {content: ''; position: absolute; top: 1rem; bottom: 1rem; left: 0; width: 5px; background: #0092e2; border-radius: 5rem;}
.main_info .cont .ri {background: #FFF; width: 44rem; border-radius: 3rem 0 0 0; padding-top: 8rem; padding-left: 6rem;}
.main_info .cont .ri h3 {}
.main_info .req_dl dd a,
.main_info .req_dl dd {color: #191919;}
.main_info .req_lk a {color: #191919; background: #dcdcdc;}
.main_info .req_lk a span {background: #004de7;}

.workRag {background: #f3f3f3; padding: 8rem 0;}
.workRag ul {margin: 5rem -1.2rem 0; display: flex; flex-wrap: wrap;}
.workRag ul li {width: 25%; padding: 0 1.2rem; margin-bottom: 2.4rem;}
.workRag ul li .in {font-size: 1.8rem; padding: 1.6rem 1rem; border-radius: 1.2rem; border: 1px solid #797979; text-align: center; color: #525252; box-shadow: 5px 7px 0 #dcdcdc;}

.work_infot {position: relative; padding-left: 2.8rem; margin-top: 3rem;}
.work_infot::before {content: ''; position: absolute; top: 0; bottom: 0; left: 0; width: 5px; background: #0092e2; border-radius: 5rem;}
.work_infot .m1 {font-size: 2.4rem; color: #191919; font-weight: 600; margin-bottom: 1.6rem;}
.work_infot .m2 {font-size: 1.8rem; color: #525252; line-height: 1.6;}

#subp_top.bbs .commBg {height: 52dvh;}
#subp_top.bbs .txt {text-align: center; color: #FFF; font-size: 7.8rem; width: 100%; font-weight: 700;}
.bbs_v_list {margin-top: 6rem;text-align: center;}
.bbs_v_list a {width: 24rem; height: 6rem; font-size: 2rem; color: #FFF; border: 0; border-radius: 5px; background: #0092e2; transition: all 0.3s ease; display: inline-flex; align-items: center; justify-content: center;}
.bbs_v_list a:hover {background: #111;}

.cstGall {}
.cstGall .img a {position: relative; display: block;}
.cstGall .gallery_li img,
.cstGall .img img {border-radius: 1.2rem 1.2rem 0 0; width: 100%; position: absolute; top: 0; left: 0; height: 100%; object-fit: cover;}
.cstGall .cate {position: absolute; top: 4rem; left: 2.5rem; z-index: 1; background: #0092e2; color: #FFF; border-radius: 5rem; font-size: 1.8rem; padding: 4px 16px;}
.cstGall .txt {background: #FFF; text-align: center; border-radius: 0 0 1.2rem 1.2rem; border: 1px solid #ddd; border-top: 0; padding: 2rem 1rem;}
.cstGall .txt .addr {color: #767676; font-size: 1.5rem; margin-bottom: 4px;}
.cstGall .txt .name {font-size: 1.8rem; color: #525252; font-weight: 600;}
.cstGall .gallery_li a,
#bo_gall.main_doc .img a {display: block; background: #FFF; padding-bottom: 120%; overflow: hidden; position: relative;}
.cstGallSd .gallery_li {width: 32rem;}

.halfCont {display: flex; flex-wrap: wrap; gap: 3rem 2.4rem;}
.halfCont .w50 {width: calc(50% - 1.2rem);}
.halfCont .w100 {width: 100%;}
.halfCont .ipt {}
.halfCont .ipt input {width: 100%;}
#bo_w .halfCont .ipt select {border: 1px solid #d0d3db; height: 4.8rem; border-radius: 3px; -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);}

.landing_v1 {font-size: 1.8rem; margin-bottom: 1rem;}


.main_wr {position:relative;}
.main_vs {margin-bottom:0 !important;}
.main_txt {display: flex; align-items: center; justify-content: center; text-align: center; position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 1;}
.main_txt .txt {color:#fff;}
.main_txt .txt .m2 {font-size: 4rem; margin-bottom: 3.2rem; font-weight:600;}
.main_txt .txt .m3 {font-size: 10rem; font-weight: 800;}
.main_txt .txt .lk {}
.main_vs .sd1 {background-image:url('/img/main_sd1-1.jpg');}
.main_vs .sd2 {background-image:url('/img/main_sd2.jpg');}
.main_vs .sd3 {background-image:url('/img/main_sd3.jpg');}
.main_vs .item {height:100vh; overflow: hidden;}
.main_vs .item .img {background-repeat:no-repeat; background-size:cover; background-position:center; width: 100%; height: 100%; -webkit-transform: scale(1.3); transform: scale(1.3); -webkit-transition: transform 5000ms ease-in-out; transition: transform 5000ms ease-in-out;}
.main_vs .item.active .img {transform: scale(1.15);}

.cs_dot {position: absolute; top: 50%; left: 4rem; z-index: 1;}
.cs_dot .slick-dots {position: static;}
.main_wr .slick-dots li {width: 4rem; margin: 4px 0;}
.main_wr .slick-dots li button {position: relative; width: 100%; height: 1rem; background: transparent; border:1px solid #fff; border-radius: 0;}
.main_wr .slick-dots li.slick-active button {width:100%; border-radius:0;}
.main_wr .s-line-fill {content:""; width:0; height:100%; background-color:#fff; position:absolute; top:0; left:0; opacity:1;}
.main_wr .slick-dots .slick-active .s-line-fill {animation:slick-progressbar 4.5s 1; animation-fill-mode: forwards;}
.cs_arr {position: absolute; top: 50%; left: 0; right: 0; max-width: 128rem; margin: 0 auto;}
.main_wr .slick-arrow {}
.main_wr .slick-prev {left:0; background-image: url('/img/sd_prev_w.svg');}
.main_wr .slick-next {right:0; background-image: url('/img/sd_next_w.svg');}

@keyframes slick-progressbar {
    0% {
        width:0%;
    }
    100% {
        width:100%;
    }
}
.animated {
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

.bt_adm {margin-top: 1rem;}
.bt_adm a {}

.ft_adm {display: flex; align-items: center; margin-top: 2rem; border-top: 1px solid #ddd; padding-top: 1rem;}
.ft_adm a {display: block; font-size: 1.5rem; padding: 1rem 2rem;}























@media (max-width:1024px) {

.hd_pops {top: 8rem !important; left: 1rem !important; right: 1rem !important;}
.hd_pops_con {width: auto !important; height: auto !important;}
.hd_pops_footer button {font-size: 1.4rem;}

.pc_on {display: none;}
.m_on {display: block;}

.rMenu {display: block; height: 8rem;}
#c_gnb .ov_bg,
.riTop {display: none;}

#c_gnb {height: 8rem;}
#c_gnb.fixed .logo a, #c_gnb.mn_hover .logo a,
#c_gnb .logo a {width: 16rem; height: 8rem; background-size: 150px;}
.rMenu .rMenuUl .ham {background: #0092e2;}
.main_s01 .txt .m1 {font-size: 2rem;}
.main_s01 .txt h2 {font-size: 4rem;}
.qk .ctt a {width: 5.2rem; font-size: 1.8rem;}
#top_btn {width: 5.2rem; height: 5.2rem; background-size: 2.6rem;}
.qk {bottom: 1.2rem; right: 1.2rem;}
.idxH3 {font-size: 2.4rem;}
.m28 {font-size: 1.8rem;}
.main_s02 {padding: 6rem 0 2rem;}
.infoSdCont .swiper-slide {width: 30rem;}
.infoSdCont .int .txt h4 {font-size: 2.4rem;}
.infoSdCont .int .txt p {font-size: 1.8rem; margin-bottom: 2rem;}
.infoSdCont .int .txt .ic {width: 4rem; height: 4rem; font-size: 3rem; align-items: flex-start;}
.infoSdCont {margin-right: -2rem; margin-top: 3rem}
.infoSdCont .btCont .swiper-pagination-progressbar {bottom: 4px; margin-right: 10rem;}
.infoSdCont .btArr {width: 8.6rem;}
.main_s03 .cont {flex-wrap: wrap;}
.main_s03 .cont .img {width: 100%;}
.main_s03 .cont .txt {padding-top: 5rem; padding-left: 0rem; width: 100%;}
.main_s03 .cont .txt p {font-size: 2rem;}
.main_s03::before {height: 32rem; background-size: 73%; top: 12rem;}
.main_s04 {padding: 8rem 0 0; margin-bottom: 6rem;}
.main_s04 .cont ul {flex-wrap: wrap;}
.main_s04 .cont ul li .in h4 {font-size: 2rem;}
.main_s04 .cont ul li .in .ic img {height: 4rem;}
.main_s04 .cont ul li .in .int {font-size: 4.6rem; letter-spacing: -2px;}
.main_s04 .cont ul li .in {width: 100%; height: auto; border-radius: 1rem; padding: 2rem 0;}
.main_s04 .cont ul li {margin-right: 0; width: 100%; margin-bottom: 1.2rem;}
.main_s04 .cont ul li:nth-of-type(2), .main_s04 .cont ul li:nth-of-type(4) {transform: translateY(0);}
.main_s04 .cont ul li .in .ic {margin-top: 1rem;}
.main_s04 .cont {margin-top: 3rem;}
.main_s05 {padding: 6rem 0;}
.main_s05 .cont {flex-wrap: wrap; padding: 0 0;}
.main_s05 .cont .le {width: 100%;}
.main_s05 .cont .ri {width: 100%; padding-top: 6rem;}
.main_s05 .cont .le .m1 {font-size: 2rem;}
.main_s05 .cont .le .m2 {font-size: 3.2rem;}
.req_dl dd a {font-size: 3rem;}
.req_dl dd {font-size: 2.2rem;}
.req_lk a {display: flex; justify-content: center;}
.rsvState .subj ul li {font-size: 1.6rem;}
.rsvSd .swiper-slide .end, .rsvSd .swiper-slide .ing, .rsvSd .swiper-slide .rdy {font-size: 1.4rem; width: 7rem;}
.rsvSd .swiper-slide ul li {font-size: 1.4rem;}
.main_gall {padding: 6rem 0 12rem;}
.cstGallSd .gallery_li {width: 28rem;}
.main_gall .cont {margin-top: 3rem; overflow: hidden; margin-right: -2rem;}
.cstGall .cate {top: 1.6rem; left: 1.6rem; font-size: 1.6rem;}
.main_gall::before {font-size: 4.4rem; bottom: 3rem;}
#footer {padding: 6rem 0;}
#footer .cont {flex-wrap: wrap;}
#footer .cont .le {flex: 100%;}
#footer .cont .ri {width: 100%;}
#footer .cont dl {font-size: 1.6rem;}
#footer .cont .dl1 {width: 100%;}
#footer .cont .dl2 {width: 100%;}
#footer .cont dl dt,
#footer .cont dl dd {line-height: 1.5;}
#footer .cont .ri .m1 {margin: 2rem 0 0;}
#subp_top .txt h2 {font-size: 3.6rem;}
#subp_top .txt p {font-size: 1.8rem;}
.fstCont {padding: 6rem 0;}
.fstCont ul {margin: 3rem -2.5rem 0; gap: 2rem;}
.fstCont ul li {width: 100%;}
.fstCont .inb .out {font-size: 4rem;}
.fstCont .inb .out::after {top: -3rem; right: -2rem; width: 8rem; height: 8rem;}
.fstCont .inb .txt .m1 {font-size: 2rem;}
.fstCont .inb .txt .m2 {font-size: 1.8rem;}
.fstCont .inb .txt {margin-top: 2rem;}
.fstCont .outb {padding: 6rem 0; height: auto; min-height: auto;}
.workRag {padding: 6rem 0;}
.workRag ul {margin: 3rem -1.2rem 0;}
.workRag ul li {width: 100%; margin-bottom: 1.6rem;}
.workRag ul li .in {font-size: 1.8rem;}
.work_infot .m1 {font-size: 2rem;}
.work_infot .m2 {font-size: 1.8rem;}
.workFlow {padding: 6rem 0;}
.workFlow ul {margin: 3rem -1rem 0; gap: 3rem;}
.workFlow ul li {width: 100%;}
.workFlow .m2 {font-size: 2rem;}
.workFlow .txt .ic {height: auto;}
.workFlow .txt .ic img {height: 7rem;}
.workFlow .m3 {font-size: 1.8rem; letter-spacing: -1px;}
.workFlow .txt {height: auto; padding: 3rem 0;}
.workFlow .m1 {font-size: 3.2rem;}
.main_info {padding: 3rem 0; height:auto;}
.main_info .cont {padding-left: 0;}
.main_info .cont .le {margin-right: 0; padding: 4rem 4rem; margin-bottom: 2rem;}
.main_info .cont .ri h3, .main_info .cont .le .m1 {font-size: 2rem;}
.main_info .cont .le .m2 {font-size: 1.8rem; line-height: 1.6;}
.main_info .cont .ri {width: 100%; padding: 4rem 4rem;}
.main_info .req_lk a {font-size: 1.8rem;}
.main_info .cont .le .m2::before {top: 0; bottom: 0;}
#sub_content {overflow: hidden;}
.fstWhe {padding: 6rem 0;}
.fstWhe .cont .img {position: static; transform: none; text-align: center; margin-bottom: 3rem;}
.fstWhe .cont {margin-top: 3rem;}
.fstWhe .cont .img img {height: 20rem;}
.fstWhe .cont ul {margin: 0 0; gap: 2rem;}
.fstWhe .cont ul li {width: 100%; padding: 0 0;}
.fstWhe .cont .in {padding: 3rem 3rem;}
.fstWhe .cont .m1 {font-size: 2.8rem;}
.fstWhe .cont .m2 {font-size: 1.8rem;}
.fstWhe .cont .m2 .blk {display: inline-block;}
.fstWhe .cont .bg2 .in,
.fstWhe .cont .bg4 .in {text-align: left;}
.fstWhe .cont .in {height: 30rem; display: flex; flex-direction: column; justify-content: center;}
#subp_top.bbs .txt {font-size: 3.6rem; margin-top: 6rem;}
#subp_top.bbs .commBg {height: 40dvh;}
.bbs_v_list a {font-size: 1.8rem;}

.halfCont .w50 {width: 100%;}

#captcha #captcha_img {height: 5rem;}
#captcha #captcha_key {width: auto; flex: 1; height: 5rem;}
#captcha #captcha_mp3, #captcha #captcha_reload {width: 5rem; height: 5rem;}

.main_txt .txt .m2 {font-size: 2.2rem;}
.main_txt .txt .m3 {font-size: 4.4rem;}
.cs_dot {top: auto; left: 4rem; bottom: 4rem;}

#menu .tel {margin-top: 2rem; padding: 0 2rem;}
#menu .tel a {background: #0092e2; color: #FFF; font-size: 1.6rem; font-weight: 600; display: flex; justify-content: center; align-items: center; gap: 8px; height: 4rem; padding: 0 2rem; border-radius: 5rem;}
#menu .tel a::before {content: ''; width: 1.6rem; height: 1.8rem; background: url(/img/phone_ic.png) no-repeat center;}
#menu .sns {margin-top: 1rem;}
#menu .sns ul {display: flex; align-items: center; justify-content: center;}
#menu .sns a {width: 4rem; height: 5rem; display: block;}
#menu .s1 a {background: url(/img/sns_i1_on.png) no-repeat center; background-size: 20px;}
#menu .s2 a {background: url(/img/sns_i2_on.png) no-repeat center; background-size: 22px;}
#menu .s3 a {background: url(/img/sns_i3_on.png) no-repeat center; background-size: 14px;}
#menu .s4 a {background: url(/img/sns_i4_on.png) no-repeat center; background-size: 30px;}



}