@charset "utf-8";


/* 레이아웃 크기 지정 */
/* #hd, #wrapper, #ft {min-width:1100px}

#hd_pop,
#hd_wrapper,
#gnb .gnb_wrap {width:1100px} */

/* 팝업레이어 */
#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 {border-bottom:1px solid #ebebeb}
#hd_h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}

#sbn_side {position:absolute;top:20px;right:0}

#hd_qnb {margin-top:10px;position:absolute;right:0;top:0}
#hd_qnb:after {display:block;visibility:hidden;clear:both;content:""}
#hd_qnb li {float:left;font-size:1.083em;line-height:15px;position:relative;text-align:center;margin:0 10px}
#hd_qnb li span {display:block;font-size:0.92em}
#hd_qnb a {display:inline-block}

#hd_qnb .sch_btn {float:left;margin-right:5px;color:#909090;padding:8px 10px;border:0;background:transparent}
#hd_qnb .sch_btn i {display:inline-block;font-size:1.4em;text-align:center;margin:0}

.hd_cnt_sch {display:none;display:none;position:fixed;top:0;left:0;width:100%;height:100%;z-index:999}
.hd_cnt_sch_innr {position:absolute;top:35%;left:38%;width:35%;overflow:hidden;margin-top:-100px;margin-left:-100px}
.hd_cnt_sch .bg {background:rgba(0,0,0,0.8);width:100%;height:100%}

#hd_sch {}
#hd_sch .sch_ipt {position:relative}
#hd_sch .sch_ipt:after{content:"";width:100%;position:absolute;left:0;bottom:0;border-bottom:3px solid #fff}

#hd_sch #sch_stx {width:100%;height:50px;padding-left:10px;border:0;background:transparent;color:#fff;font-size:2em}
#hd_sch ::-webkit-input-placeholder {color:#fff;opacity:1}
#hd_sch ::-moz-placeholder {color:#fff;opacity:1}
#hd_sch ::-moz-placeholder {color:#fff;opacity:1}
#hd_sch ::-ms-input-placeholder {color:#fff;opacity:1}
#hd_sch ::placeholder {color:#fff;opacity:1}
#hd_sch #sch_stx:focus-within {padding:5px 0}
#hd_sch #sch_submit {position:absolute;right:0;top:0;width:50px;height:35px;border:0;color:#fff;background:transparent;cursor:pointer;font-size:2em}
.sch_close_btn {position:absolute;right:50px;top:50px;background:transparent;color:#fff;border:0;font-size:2.5em}

.hd_cnt_login {float:left;position:relative}
.hd_cnt_login .sch_btn,
.hd_cnt_login .login_btn {border:0;background:transparent}
.hd_cnt_login .login_btn {border:1px solid #ebebeb;position:relative;background:#f8f8f8;padding:8px 10px;border-radius:5px}
.hd_cnt_login #member_menu {display:none;width:320px;position:absolute;right:0px;top:50px;z-index:9999;background:#fff;border-radius:3px;-moz-box-shadow:6px 6px 10px -4px rgba(0, 0, 0, 0.28);-webkit-box-shadow:6px 6px 10px -4px rgba(0, 0, 0, 0.28);box-shadow:6px 6px 10px -4px rgba(0, 0, 0, 0.28);border:1px solid #ebebeb}
.hd_cnt_login #member_menu:after {content:"";position:absolute;top:-5px;right:25px;width:10px;height:10px;background:url('../img/ico_arrow.png') no-repeat}
.hd_cnt_login .member_div {}
.hd_cnt_login .login_cls_btn {position:absolute;right:0;top:0;border:0;background:transparent;font-size:1.4em}
.hd_cnt_login .login_cls_btn i {color:#b1b8c0;padding:15px}


/* 게시물 선택복사 선택이동 */
#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;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: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 #c2c9d9;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}
#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}
#captcha #captcha_key {margin:0 0 0 3px;padding:0 5px;width:90px;height:40px;border:1px solid #c2c9d9;background:#fff;font-size:1.333em;font-weight:bold;text-align:center;vertical-align:top}
#captcha #captcha_info {display:block;margin:5px 0 0;font-size:0.95em;letter-spacing:-0.1em}

/* 캡챠 자동등록(입력)방지 기본 - mobile */
#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 단축키 */
.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}

/*컬러*/
.color_1 {background:#169dd6}
.color_2 {background:#14d53d}
.color_3 {background:#3814ff}
.color_4 {background:#7520c5}

/* 기본테이블 */
.tbl_wrap table {width:100%;border-collapse:collapse;border-spacing:0 5px;border-top:2px solid #000;border-bottom:1px solid #f0f0f0}
.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:15px 0;font-weight:normal;text-align:center;border-bottom:1px solid #ddd;height:40px}
.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;background:#fff;padding:10px 5px;border-top:1px solid #ecf0f1;line-height:1.4em;height:60px;font-size:1.2em;word-break:break-all}
.tbl_head01 tbody tr:hover td {background:#f9f9f9}
.tbl_head01 a:hover {text-decoration:underline}

.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 #ccc;background:#fff;color:#000;vertical-align:middle;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 {height:40px}

.full_input {width:100%}
.half_input {width:49.5%}
.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 li {border:1px solid #dbdbdb;background:#fff;border-radius:3px;margin:3px 0;padding:10px 15px;list-style:none;position:relative}
.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}

/* 쪽지 리스트 */
.list_02 ul {border:1px solid #d9dee9}
.list_02 li {position:relative;border-bottom:1px solid #d9dee9;background:#fff;list-style:none}
.list_02 li:last-child {border-bottom:0}
.list_02 li:after {display:block;visibility:hidden;clear:both;content:""}
.list_02 li:hover {background:#f9f9f9}
.list_02 li.empty_li {padding:20px 0;text-align:center;color:#666}

.list_03 li {position:relative;padding:10px;border-bottom:1px solid #d9dee9;background:#fff;list-style:none}
.list_03 li:after {display:block;visibility:hidden;clear:both;content:""}
.list_03 li:hover {background:#f9f9f9}
.list_03 li.empty_li {padding:20px 0;text-align:center;color:#666}

/*폼 리스트*/
.form_01 h2 {margin:0 0 10px;font-size:1.167em}
.form_01 li {margin:10px 0}
.form_01 li:after {display:block;visibility:hidden;clear:both;content:""}
.form_01 li .right_input {float:right}
.form_01 textarea {height:100px;width:100%}
.form_01 .frm_label {}

/* 자료 없는 목록 */
.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:120px;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:120px;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 {}
.new_win #win_title {height:50px;line-height:30px;padding:10px;font-size:1.25em}
.new_win #win_title .sv {font-size:0.75em;line-height:1.2em}
.new_win_con {margin:0 10px 10px}

.new_win .win_ul {margin:0 0 10px 1px}
.new_win .win_ul:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .win_ul li {float:left;width:33.333%;margin-left:-1px;text-align:center;background:#fff}
.new_win .win_ul li a {display:block;padding:10px 0;color:#667287;border:1px solid #dedede}
.new_win .win_ul .selected {position:relative;border:1px solid #4158d1;color:#4158d1;z-index:5}
.new_win .win_ul .selected a {font-weight:bold;background:#17bb9c;color:#fff}

.new_win .win_desc {padding:10px 0;margin:10px 0;font-size:0.92em;font-weight:bold;color:#364154;background:#dfe3ea;text-align:center}
.new_win .frm_info {display:block;margin:3px 0 0 0;text-align:right;font-size:0.92em;color:#707e8b}
.new_win .win_total {text-align:left;margin:10px 0;background:#e6f4ff;border:1px solid #d5dcff;padding:10px 15px}
.new_win .win_total span {display:inline-block;font-size:0.92em;color:#4158d1}
.new_win .win_total span.win_total_r {float:right}

.new_win .win_btn {text-align:center;margin-bottom:10px}
.new_win .memo_view_opt {padding:10px;border:1px solid #d9dee9;border-top:0;text-align:left;background:#f7f7f9}
.new_win .memo_view_opt:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .memo_view_opt .btn_right {float:right;margin-left:5px}
.new_win .memo_view_btn {margin:25px 0;text-align:center}
.new_win .btn_close {height:40px;border:1px solid #ccc;padding:0 10px;line-height:35px;border-radius:3px;background:#fff;color:#000;cursor:pointer}
.new_win .btn_submit {height:40px;font-weight:bold;font-size:1.083em}

/* 검색결과 색상 */
.sch_word {color:#00c4ac}

/* 자바스크립트 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:30px 0;text-align:center}
.pg_wrap:after {display:block;visibility:hidden;clear:both;content:""} 
.pg {}
.pg_page, .pg_current {display:inline-block;vertical-align:middle}
.pg a:focus, .pg a:hover {text-decoration:none}
.pg_page {color:#555;font-size:1.083em;height:30px;line-height:28px;padding:0 5px;min-width:30px;text-decoration:none;border-radius:50%}
.pg_page:hover {background-color:#ddd}
.pg_start {text-indent:-999px;overflow:hidden;background:url('../img/btn_first.gif') no-repeat 50% 50% #fff;padding:0}
.pg_prev {text-indent:-999px;overflow:hidden;background:url('../img/btn_prev.gif') no-repeat 50% 50% #fff;padding:0}
.pg_end {text-indent:-999px;overflow:hidden;background:url('../img/btn_end.gif') no-repeat 50% 50% #fff;padding:0}
.pg_next {text-indent:-999px;overflow:hidden;background:url('../img/btn_next.gif') no-repeat 50% 50% #fff;padding:0}
.pg_start:hover,.pg_prev:hover,.pg_end:hover,.pg_next:hover {background-color:#fafafa}

.pg_current {display:inline-block;background:#5a5f6b;color:#fff;font-weight:bold;height:30px;line-height:30px;padding:0 10px;min-width:30px;border-radius:50%}

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

/* 수영 */

/* 초기화 */
/* 한글 */
@font-face {
  font-family: "Pretendard-Regular";
  src: url("https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Regular.woff")
    format("woff");
  font-weight: 400;
  font-style: normal;
}
@font-face {
    font-family: 'GmarketSansMedium';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansMedium.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
  font-family: 'KoPubWorld Batang';
  src: url('../font/KoPubWorld Batang Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'KoPubWorld Batang';
  src: url('../font/KoPubWorld Batang Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'KoPubWorld Batang';
  src: url('../font/KoPubWorld Batang Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
}

@font-face {
    font-family: 'yleeMortalHeartImmortalMemory';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2205@1.0/yleeMortalHeartImmortalMemory.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
  font-family: 'InkLipquid';
  src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_one@1.0/InkLipquid.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

:root{
  --main-color: #001E44;
  --cont-text1: #404650;
  --cont-text2: #616C7B;
  --point-text: #003C88;
  --line-color: #CDD1D5;
  --content-bg: #F0F1F2;
  --body-bg: #F3F6FB;
  --sub-color: #B1C1D6;
}
* {padding: 0; margin: 0; box-sizing: border-box;}
html,body {font-size: 17px; line-height: 1.2; font-family: 'GmarketSansMedium'; color: var(--cont-text1); /* overflow-x: hidden; */}
.scroll-lock{overflow: hidden; touch-action: none;}
li {list-style: none;}
a {color: inherit; text-decoration: none; cursor: pointer;}
i {font-style: normal;}
h1, h2,h3,h4,h5 {font-weight: normal;}
button {background: inherit; border: none; box-shadow: none; border-radius: 0; padding: 0; overflow: visible; cursor: pointer;}
fieldset {border: none; padding: 0; margin: 0; min-inline-size: unset;}
legend {padding: 0; margin: 0; font-weight: normal; font-size: inherit;}


/* 공통 */
.sc-btn{padding: 0.5rem 1rem; border-radius: 20px; border: 1px solid var(--line-color); display: flex; align-items: center; column-gap: 0.5rem; overflow: hidden; position: relative;}
.sc-btn span, .sc-btn svg{z-index: 10;}
.sc-btn:after{content: ''; display: block; width: 100%; height: 0%; position: absolute; z-index: 1; left: 0; bottom: 0; transition: all 0.3s; background-color: var(--cont-text1);}
.sc-btn:hover{color: #fff;}
.sc-btn:hover svg path{fill: #fff;}
.sc-btn:hover:after{height: 100%;}

/* 헤더 */
#header{border-bottom: 1px solid rgba(255, 255, 255, 0.5); width: 100%; height: 112px; position: fixed; top: 0; z-index: 99; transition: all 0.3s;}
.header_wrap{width: 100%; margin: 0 auto; padding: 0 5rem; height: 100%; display: flex; align-items: center; justify-content: space-between;}
#logo{height: 100%; max-height: 52px;}
#logo a {display: inline-block; height: 100%; display: flex; align-items: center; justify-content: center;}
#logo img{height: 100%; -webkit-filter: brightness(0) invert(1); filter: brightness(0) invert(1);}
#header .slogan {font-family: 'InkLipquid'; font-size: 2rem; color: #fff;}
#header .menu_btn,#header .close_btn,.gnb_1dli .arrow-icon, .gnb_bg{display: none;}
#gnb {height: 100%;}
#gnb h2{display: none;}
#gnb a {display: flex; padding: 1rem; height: 100%; vertical-align: middle; align-items: center; justify-content: center;}
#gnb_1dul {height: 100%; display: flex; align-items: center;}
.gnb_1dli{height: 100%; font-size: 1.125rem; color: #fff; position: relative; display: flex; align-items: center;}
#gnb_2dul {display: none; position: absolute; top: 100%; left: 0; width: 100%; background: rgba(255, 255, 255, 0.88); backdrop-filter: blur(10px); border: 1px solid var(--line-color); border-top: 0;}
.gnb_2dli {color: var(--cont-text1);}
#header.active{background: rgba(255, 255, 255, 0.88); backdrop-filter: blur(10px); border-bottom: 1px solid var(--line-color);}
#header.active .slogan{color: var(--main-color);}
#header.active .gnb_1dli {color: var(--main-color)}
#header.active #logo img{-webkit-filter: none; filter: none;}

/* 관리자 */
#hd_admin {height: 50px; background:#4051b3; box-shadow: 0 0 4px rgba(0, 0, 0, 0.5); position: fixed; bottom: 1rem; left: 1rem; transform: translateY(-50%); z-index: 50;}
#hd_admin .hello_adm {height: 100%; display:inline-block; padding:15px;color:#fff}
#hd_admin .hello_adm b {color:#fff79d}
#hd_admin a.admin_btn {height: 100%; display:inline-block; padding:15px;border-left:1px solid #1c3675;background:#30409d;color:#fff}

/* 중간 레이아웃 */
#wrapper{}
/* 메인배너 */
#main_bn {width: 100%; margin: 0 auto; position: relative; height: 100vh; min-height: 50vw; overflow:hidden}
#main_bn .swiper-slide {position: relative;}
#main_bn .swiper-slide img {width: 100%; height: 100%; object-fit: cover; object-position: top center; display: block;}
#main_bn .overlay {position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.3); pointer-events: none;}
#main_bn .txt-wrap {min-width: 25rem; position: absolute; bottom: calc(10% + 5rem); left: 20vw; color: #fff; /* text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3); */}
#main_bn .txt-wrap p {font-size: 3rem; font-weight: bold; margin-bottom: 2rem; white-space: nowrap;}
#main_bn .txt-wrap span {display: inline-block; font-size: 1.25rem;}
.progress-wrap{position: absolute; bottom: 10%; left: 20vw; z-index: 99; display: flex; align-items: center;column-gap: 8px;}
.progress-bar-container {width: 25rem; height: 4px; background: rgba(255, 255, 255, 0.3); z-index: 10;}
.progress-bar {height: 100%; width: 0%; background: #fff; transition: width 0.1s linear;}

/* 메인배너 - slide_v2 */
#main_bn .slide_v2 .overlay, #main_bn .slide_v3 .overlay {background-color: rgba(0, 0, 0, 0.1);}
#main_bn .slide_v2 .txt-wrap {transition: all 0.3s; top: 50%; bottom: unset; transform: translateY(-50%); color: var(--cont-text1); text-shadow: unset;}
#main_bn .slide_v2 .txt-wrap p {letter-spacing: -1px; font-size: 4rem; font-weight: normal; margin-bottom: 2rem; white-space: nowrap;}
#main_bn .slide_v2 .txt-wrap p strong{font-weight: bold;}
#main_bn .slide_v2 .txt-wrap span {font-size: 1rem; color: var(--cont-text2);}

#main_bn .slide_v3 .txt-wrap p, #main_bn .slide_v3 .txt-wrap span {color: #205041;}
/* 메인 콘텐츠 */
.idx-container {margin-top: 12.5rem;}
.idx_section {max-width: 1280px; width: 100%; margin: 0 auto 15rem;}
.idx_section h3{position: relative; text-align: center; font-size: 2rem; color: var(--main-color); margin-bottom: 3rem; font-family: 'KoPubWorld Batang', serif;}
.idx_section h3 p{font-family: 'GmarketSansMedium'; margin-top: 1rem; font-size: 1.125rem; color: var(--cont-text2);}
.idx_section h3 .more-btn{position: absolute; right: 0; top: 50%; transform: translateY(-50%); display: flex; flex-direction: column; align-items: flex-start;}
.idx_section h3 .more-btn span{font-size: 0.875rem; color: var(--cont-text2); margin-bottom: -0.3rem; padding-left: 0.3rem;}

.idx_section h3 .more-btn{display: flex; flex-direction: column; align-items: flex-start; row-gap: 0.5rem;}
.idx_section h3 .more-btn span{transition: all 0.3s; opacity: 0.5; font-size: 0.875rem; color: var(--cont-text2); margin-bottom: -0.3rem; padding-left: 0.3rem;}
.idx_section h3 .more-btn svg{transition: all 0.3s;}
.idx_section h3 .more-btn:hover span{opacity: 1;}
.idx_section h3 .more-btn:hover svg{margin-left: 1rem;}

.idx_section .cont{display: flex;}
.idx_section .cont-wrap {display: flex; flex-direction: column; align-items: flex-start;}
.idx_section .cont-tit{font-size: 1.5rem; font-weight: bold; margin-bottom: 1.25rem;}
.idx_section .cont-body{font-size: 1rem; margin-bottom: 2rem;}
/* YOUNGLONG BEST */
.best-cont{column-gap: 2rem;}
.best-cont>div{width: calc(50% - 1rem);}
.best-cont>div:last-child{margin-top: 7.5rem;}
.best-cont .img-wrap{height: 290px;margin-bottom: 2rem; overflow: hidden;}
.best-cont .img-wrap img{width: 100%; height: 100%; object-fit: cover;}
.best-cont .line{width: 100%; display: inline-block; border-top: 1px dashed var(--line-color); margin-bottom: 2.5rem;}
.best-cont .cont-body p:not(:last-child){margin-bottom: 1rem;}
.best-cont .sc-btn{background-color: #fff;}

.idx_section2 {max-width: 100%; position: relative; background-color: var(--content-bg); height: 30rem; display: flex; align-items: center; justify-content: space-between; padding: 0 5rem;}
.idx_section2 > div {display: flex; max-width: 1280px; width: 100%; justify-content: space-between; margin: 0 auto;}
.idx_section2 > img {height: 100%; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%);}
.idx_section2 > .slogan{text-align: center; width: calc(100% - 3rem); font-family: 'yleeMortalHeartImmortalMemory'; position: absolute; top: 20%; left: 1.5rem; font-size: 6rem; color: #E1E3E5;}
.idx_section2 .cont-tit{font-size: 2rem; margin-bottom: 1.5rem;}
.idx_section2 .cont-body{margin-bottom: 4.5rem;}
.idx_section2 .stat-item{text-align: right; margin-bottom: 3.5rem;}
.idx_section2 .stat-item:last-child {margin-bottom: 0;}
.idx_section2 .stat-label{font-size: 1.125rem; margin-bottom: 0.5rem;}
.idx_section2 .stat-value {font-size: 2rem; font-weight: bold;}
.idx_section2 .stats-wrap .sc-btn{display: none;}

/* 시술리스트 */
/* .idx_section3 {position: relative; max-width: 100%; height: 40rem; background-attachment: fixed; background-image: url(../img/main/bg_img.jpg); background-position: 50% 50%; background-size: cover; background-repeat: no-repeat;}
.idx_section3::after{content: ''; display: block; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.3); position: absolute; top: 0; left: 0; z-index: 1;}
.idx_section3 .inner {max-width: 1280px; height: 100%; margin: 0 auto; display: flex; flex-direction: column; align-items: center; row-gap: 5rem; justify-content: center; position: relative; z-index: 10;}
.idx_section3 .service-list {display: flex; column-gap: 4rem;}
.idx_section3 .service-list li{display: flex; flex-direction: column; align-items: center; color: #fff;} */
.idx_section3 {max-width: 100%;}
.idx_section3 .sg-cont{display:flex; height: 45rem;}
.idx_section3 .sg-cont>li{position:relative; width: calc(100%/4); height:100%; overflow:hidden;}
.idx_section3 .sg-cont>li .bg{position:absolute;top:0;left:0;width:100%; height:100%;z-index:-1;opacity:0.5;transition:all 0.5s;}
.idx_section3 .sg-cont>li.s01 .bg{background:url(../img/main/sg-img.png) no-repeat center center/cover;}
.idx_section3 .sg-cont>li.s02 .bg{background:url(../img/main/sg-img2.png) no-repeat center center/cover;}
.idx_section3 .sg-cont>li.s03 .bg{background:url(../img/main/sg-img3.png) no-repeat center center/cover;}
.idx_section3 .sg-cont>li.s04 .bg{background:url(../img/main/sg-img4.png) no-repeat center center/cover;}
.idx_section3 .sg-cont>li>a{display:flex; height:100%; padding-bottom:60px; justify-content:center; align-items:flex-end; transition:all 0.3s;}
.idx_section3 .sg-cont>li>a:hover{align-items:center; padding-bottom:0;}
.idx_section3 .sg-cont>li>a:after{content:'';position:absolute;top:100%;left:0;width:100%;height:100%;background:var(--main-color); opacity: 0.7; transition:all 0.4s;}
.idx_section3 .sg-cont>li>a:hover:after{top:0;}
.idx_section3 .sg-cont>li dl{position:relative; z-index:1; display: flex; flex-direction: column; align-items: center;}
.idx_section3 .sg-cont>li dt{font-family:'KoPubWorld Batang', serif; font-size:1.5rem; color:var(--main-color)}
.idx_section3 .sg-cont>li>a:hover dt{color:#fff;}
.idx_section3 .sg-cont>li dd:not(.sc-btn){padding-top:1.125rem; font-size:2rem;}
.idx_section3 .sg-cont>li>a:hover dd:not(.sc-btn){color:#fff;}
.idx_section3 .sg-cont>li .sc-btn {display: none;}
.idx_section3 .sg-cont>li>a:hover .sc-btn{display: flex; margin-top: 3rem;}
.idx_section3 .sg-cont>li .sc-btn svg path {fill: #fff;}
.idx_section3 .sg-cont>li .sc-btn span {color: #fff;}
.idx_section3 .sg-cont>li .sc-btn:hover:after {background-color: #fff;}
.idx_section3 .sg-cont>li .sc-btn:hover svg path {fill: var(--cont-text1);}
.idx_section3 .sg-cont>li .sc-btn:hover span {color: var(--cont-text1);}


/* 영롱한 후기 */
.review-cont{column-gap: 1rem;}

/* 오시는 길 */
.idx_section5{display: flex; align-items: center; column-gap: 5rem; position: relative;}
.idx_section5:after{content: ''; display: block; background-color: var(--content-bg); width: 100vw; height: calc(100% + 6rem); position: absolute; top: 50%; right: 25%; transform: translateY(-50%); z-index: -1;} 
.idx_section5 .clinic-info {padding: 1.25rem 0;}
.idx_section5 .clinic-info .info-wrap:not(:last-child){margin-bottom: 3rem;}
.idx_section5 .clinic-info .info-wrap h6{font-size: 1rem; margin-bottom: 1rem;}
.idx_section5 .clinic-info .info-wrap .tags{display: flex; gap: 0.5rem; flex-wrap: wrap; }
.idx_section5 .clinic-info .info-wrap .tags span{display: inline-block; padding: 0.25rem 0.5rem; border-radius: 1rem; border: 1px solid var(--line-color); font-size: 0.875rem;}
.idx_section5 .clinic-info .info-wrap li{padding: 1rem 0.5rem; border-top: 1px solid var(--line-color); font-size: 0.875rem; display: flex; align-items: center; column-gap: 2.5rem;}
.idx_section5 .clinic-info .info-wrap li:last-child{border-bottom: 1px solid var(--line-color);}
.idx_section5 .clinic-info .info-wrap li strong {color: var(--cont-text2); font-weight: normal; width: 2.5rem; display: flex; align-items: center; justify-content: space-between;}

.idx_section5 .clinic-map {width: 50%; height: 25rem; overflow: hidden; flex-shrink: 0;}
.idx_section5 .clinic-map iframe{width: 100%; height: 100%;}

/* 푸터 */
.ft_wr{width: 100%; border-top: 1px solid var(--line-color); padding: 2.5rem; padding-bottom: 3.5rem; text-align: center; font-size: 0.875rem;}
.ft_wr.is-mobile{margin-bottom: 78px;}
.ft_wr > div {display: flex; align-items: center; justify-content: center; column-gap: 0.5rem;}
.ft_wr > div:not(:last-child){margin-bottom: 1.5rem;}
.ft_wr .ft_top span{display: inline-block; height: 0.75rem; width: 1px; background-color: var(--cont-text1);}
.ft_wr .ft_bot {column-gap: 1rem;}
.ft_wr .ft_bot span strong{color: var(--cont-text2); font-weight: normal; margin-left: 0.25rem;}

/* 퀵메뉴 */
.quick-menu {position: fixed; top: 50%; right: 1rem; transform: translateY(-50%); z-index: 50; display: flex; flex-direction: column; align-items: flex-end; row-gap: 1rem;}
.quick-menu a {border: 1px solid #cdd1d54d; transition: all 0.3s; position: relative; display: flex; align-items: center; justify-content: center; min-width: 3rem; height: 3rem; border-radius: 1.5rem; background-color: #fff;     box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.1);}
.quick-menu a span{display: none; position: absolute; top: 50%; right: calc(100% + 0.5rem); transform: translateY(-50%); font-size: 0.75rem; white-space: nowrap; background-color: #000; color: #fff; padding: 0.25rem 0.5rem; border-radius: 0.25rem;}
.quick-menu a:hover span{display: block;}
/* .quick-menu a:nth-child(1):hover{background-color: #431e77;}
.quick-menu a:nth-child(2):hover{background-color: #FAE100;}
.quick-menu a:nth-child(3):hover{background-color: #03c75a;}
.quick-menu a:hover svg path{fill: #fff;}
.quick-menu a:nth-child(2):hover svg path{fill: #3C1E1E;} */
.quick-menu a:not(.scroll-top) svg path{fill: var(--cont-text2);}
.quick-menu.is-mobile .quick-apply{display: none;}
.quick-menu a.scroll-top{flex-direction: column; row-gap: 0.5rem; background-color: var(--cont-text1); color: #fff; font-size: 0.75rem;}

.popup {box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.1); background: #fff; position: fixed; bottom: 2rem; right: 2rem; z-index: 9999; width: 25rem; max-width: 80%;}
.popup img {width: 100%;}
.popup .close-wrap{padding: 1rem; width: 100%; display: flex; justify-content: space-between;}

/* 탑버튼 */
/* .scroll-top {transition: all 0.3s; cursor: pointer; width: 3rem; position: fixed; bottom: 1rem; right: 1rem; transform: translateY(-50%); z-index: 99; display: flex; flex-direction: column; align-items: center; row-gap: 0.5rem; color: var(--cont-text2);}
.scroll-top span{writing-mode:vertical-rl;}
.scroll-top:hover{color: var(--main-color);}
.scroll-top.is-mobile{bottom: 4rem;} */

/* 서브페이지 */
.sub-top{/* background: url(../img/sub/content_bg.png) no-repeat center center/cover; */ position: relative; height: 35vw; max-height: 70vh; min-height: 30rem; overflow: hidden;}
.sub-bg{width: 100%; height: 100%; position: absolute;}
.sub-bg img{width: 100%; height: 100%; object-fit: cover;}
.sub-bg::after{content: ''; display: block; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); position: absolute; top: 0; left: 0;}
.sub-tit{position: relative; display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100%;}
.sub-tit h2 {text-align: center; padding-top: 8%; font-size: 3rem; color: #fff; padding-bottom: 10rem; position: relative;}
.sub-tit h2::after{content: ''; position: absolute; bottom: 2.5rem; left: 50%; transform: translateX(-50%); display: block; width: 1px; height: 5rem; background: #fff;}
.sub-tit h3 {font-size: 1.125rem; color: rgba(255, 255, 255, 0.7);}
.sub-top .circle{width: 120px; height: 120px; position: absolute; top: 100%; left: 50%; transform: translate(-50%, -50%);}
.sub-top .circle img {display: block; width: 100%; height: 100%; -o-object-fit: contain; animation: circle_img 25s 0s linear infinite; opacity: 0.3;}
@keyframes circle_img {
	from { transform: rotate(360deg); }
	to {  }
}

.sub-body{width: 100%; padding: 8rem 0 12rem;}
.sub-content{max-width: 1280px; width: 100%; margin: 0 auto;}

.sub-tit .line{display: inline-block; width: 2rem; height: 1px; background-color: var(--main-color); margin: 2rem 0;}
.sub-text {margin-bottom: 8.75rem; text-align: center;}
.sub-text p {line-height: 1.5; font-size: 1rem; color: var(--cont-text1); margin-bottom: 2.5rem;}
.sub-text p:last-child {margin-bottom: 0;}
.sub-text p strong{font-size: 1.5rem; font-weight: bold;}
.sub-text p b{color: var(--point-text);}
.sub-text svg{display: block; margin: 0 auto; margin-bottom: 2.5rem;}
.sub-text svg:last-child{margin-bottom: 0;}

/* 병원소개 */
.hospital-slider {margin: 0 auto; width: 100%; max-width: 30rem; height: 45rem; border-radius: 15rem;}
.hospital-slider .swiper-slide{position: relative;}
.hospital-slider .swiper-slide::after{display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; content: ''; background-color: #fff; opacity: 0.3;}
.hospital-slider img{width: 100%; height: 100%; object-fit: cover;}
.hospital-slider .swiper-pagination-bullet-active{background-color: #fff;}
/* .hospital-body{position: relative; width: 100%;}
.hospital-body hr {position: absolute; top: 50%; left: 0; width: 100%; height: 1px; background: var(--main-color); border: 0; transform: translateY(-50%);}
.hospital-body::after, .hospital-body::before {content: ''; position: absolute; top: 50%; transform: translateY(-50%); display: block; width: 0.75rem; height: 0.75rem; border-radius: 50%; background: var(--main-color);}
.hospital-body::after{right: 0;}
.hospital-body::before{left: 0;}
.swiper-pagination-bullet{background-color: #fff !important;}
.swiper-pagination-bullet-active {background-color: var(--main-color) !important;} */

/* 병원장소개 */
.doctor-info{position: relative; width: 100%; height: 700px; overflow: hidden; background-color: #F3F5F7;}
.doctor-info .doctor-img{height: 90%; position: absolute; right: 6rem; bottom: 0;}
.doctor-info .slogan {width: calc(100% - 3rem); font-family: 'yleeMortalHeartImmortalMemory'; position: absolute; top: 20%; left: 1.5rem; font-size: 6rem; color: #E1E3E5;}
.doctor-info .info-wrap{padding: 2rem 2.5rem; width: 100%; height: 40%; background-color: rgba(255, 255, 255, 0.7); position: absolute; left: 0; bottom: 0; display: flex; justify-content: space-between;}
.doctor-info .info-wrap h5{font-size: 1.25rem;}
.doctor-info .info-wrap .line{display: none;}
.doctor-info .info-wrap .info-cont{display: flex; flex-direction: column; align-items: flex-end; justify-content: space-between;}
.doctor-info .info-wrap .info-cont li{text-align: right; margin-bottom: 0.5rem;}
.doctor-info .info-wrap .info-cont li:last-child{margin-bottom: 0;}
.doctor-info .info-wrap .info-cont ul:last-child li{color: var(--cont-text2);}

/* 상담/예약 */
.consulting-body{max-width: 50rem; width: 100%; margin: 0 auto;}
.consulting-body>a{transition: all 0.3s; cursor: pointer; margin-bottom: 2rem; display: block; width: 100%; padding: 2rem 2.5rem; border: 1px solid var(--line-color);}
.consulting-body>a:last-child{margin-bottom: 0;}
.consulting-body>a>span{font-size: 1rem; color: var(--cont-text2);}
.consulting-body>a>p{font-size: 2.5rem; margin-top: 0.5rem;}
.consulting-body>a:hover{background-color: var(--main-color);}
.consulting-body>a:hover>p{color: #fff;}

/* 가격,시술 안내 */
.clinic-body .tab-group{width: 100%; display: flex; margin-bottom: 5rem;}
.clinic-body .tab-group>a{color: var(--cont-text2); display: block; width: calc(100% / 5); padding: 0.5rem; text-align: center; border: 1px solid var(--line-color); border-right: 0; white-space: nowrap;}
.clinic-body .tab-group>a:last-child{border-right: 1px solid var(--line-color);}
.clinic-body .tab-group>a.on{background-color: var(--main-color); color: #fff;}
.clinic-list{display: flex; flex-wrap: wrap; gap: 2rem;}
.clinic-list > li {cursor: pointer; width: calc(50% - 1rem); padding: 2rem; border: 1px solid var(--line-color);}
.clinic-list > li .clinic-item{ width: 100%; display: flex; align-items: flex-start; justify-content: space-between; column-gap: 1rem;}
.clinic-list > li .clinic-info p{font-size: 1.125rem; line-height: 2.5rem;}
.clinic-list > li .clinic-info span{font-size: 0.875rem; display: inline-block; margin-top: 0.5rem;}
.clinic-list > li .clinic-info img{display: none;}
.clinic-list > li .clinic-item .sc-btn {flex-shrink: 0;}
.clinic-list > li .line{display: block; width: 100%; height: 1px; border-top: 1px dashed var(--line-color); margin: 1rem 0;}
.clinic-price{text-align: right; font-size: 1.25rem; color: #DA5A4D; display: flex; align-items: center; justify-content: flex-end; margin-bottom: 1rem;}
.clinic-price:last-child{margin-bottom: 0;}
.clinic-price .price{font-family: 'KoPubWorld Batang', serif; color: #DA5A4D; font-weight: bold;}
.clinic-price span:not(.price){font-size: 0.875rem; color: var(--cont-text1); margin-right: 0.5rem;}
.clinic-price .default-price{position: relative;}
.clinic-price .default-price::after{content: ''; display: block; width: 100%; height: 1px; background-color: var(--cont-text1); position: absolute; top: 50%; left: 0; transform: translateY(-50%);}
.clinic-price svg{margin-right: 0.5rem;}
#clinic-modal {width: 100%; height: 100%; background: rgba(0, 0, 0, 0.7); position: fixed; top: 0; left: 0; z-index: 9999; display: flex; justify-content: center; align-items: center;}
#clinic-modal .modal-content {overflow-x: hidden; overflow-y: auto; padding: 1.5rem 2rem; width: 80%; max-width: 1200px; max-height: 90%; background-color: #fff; position: relative; display: flex; flex-direction: column;}
#clinic-modal .modal-content .close_btn{position: absolute; top: 1rem; right: 1rem; background-color: transparent; opacity: 0.5;}
#clinic-modal .modal-content .close_btn:hover {opacity: 1;}
#clinic-modal .modal-content .close_btn svg path{fill: var(--cont-text1);}
#clinic-modal .modal-content > div:not(.clinic-top) {display: flex; justify-content: space-between;}                                                                                                                       
#clinic-modal .modal-content > div:not(.clinic-top) > div {width: 50%; padding-top: 2rem; height: 100%; overflow-y: auto; position: sticky; top: -1.5rem;}
#clinic-modal .modal-content .clinic-info{padding-right: 2rem;}

#clinic-modal .clinic-swiper {width: 100%; height: 0; background-color: var(--content-bg);}
#clinic-modal .clinic-swiper.active{height: auto;}
#clinic-modal .clinic-swiper img{width: 100%; height: 100%;}
#clinic-modal .clinic-swiper .swiper-slide{margin: auto;}
#clinic-modal .clinic-swiper .swiper-pagination-bullet-active{background-color: #fff;}

#clinic-modal .modal-content .clinic-info>span{display: inline-block; font-size: 0.875rem; margin-bottom: 1.25rem;}
#clinic-modal .modal-content .clinic-apply{padding-left: 2rem;}
#clinic-modal .modal-content .clinic-apply .submit-btn{margin-bottom: 0;}
#clinic-modal .modal-content .clinic-top{border-bottom: 1px dashed var(--line-color); padding-bottom: 1.5rem;}
#clinic-modal .modal-content .clinic-name{font-size: 1.5rem; margin-bottom: 0.5rem;}
#clinic-modal .modal-content .clinic-prices {padding-bottom: 1rem; margin-bottom: 2rem; border-bottom: 1px dashed var(--line-color);}

#clinic-modal .modal-content .clinic-inst {width: 100%;}
#clinic-modal .modal-content .clinic-inst img {width: 100%;}

/* 폼 */
input[type="text"], textarea {background: transparent; border: 1px solid var(--line-color); font-size: 1rem; resize: none; padding: 0.5rem 1rem; border-radius: 0;}
input[type="text"]:focus,textarea:focus {outline: none;}
textarea {width: 100%; height: 150px; padding: 1rem;}

/* 폼 레이아웃 */
.form-wrapper {width: 100%; margin: 0 auto; display: flex; flex-direction: column; row-gap: 2rem;}
.form-wrapper .form-wrap .form-row:not(:last-child),
.form-wrapper .form-wrap .form-group:not(:last-child){margin-bottom: 2rem;}
.form-wrapper .input-tit{font-size: 1rem; margin-bottom: 0.5rem; padding: 0 0.25rem;}
.form-wrap .form:not(:first-child){margin-top: 2rem;}
.form-wrap h4{font-size: 1.5rem; color: var(--main-color); margin-bottom: 1.5rem; display: flex; column-gap: 0.5rem; align-items: center;}
.form-wrap h4 > .check-box input[type="checkbox"] + label {width: 1.5rem; height: 1.5rem;}
.form-wrap h4 > p {font-size: 0.875rem; color: var(--cont-text2);}

/* 인풋 묶음 */
.form-row {display: flex; gap: 1rem; margin-bottom: 20px;}
.form-row .input-group{display: flex; flex-direction: column; align-items: flex-start;}
.form-row .input-group input {width: 100%; height: 3.125rem;}
.form-row .input-group .input-wrap {width: 100%; height: 3.125rem; display: flex; gap: 0.5rem;}
/* form-row1 ::: 1:2 비율 */
.form-row1 .input-group:first-child{flex: 1;}
.form-row1 .input-group:last-child{flex: 2;}
/* form-row2 ::: 1:1:1 비율 */
.form-row2 .input-group{width: calc(100%/3);}
/* form-row3 ::: 한줄짜리 */
.form-row3 .input-group{width: 100%;}
/* 라디오그룹 */
.radio-group {display: flex; gap: 1rem;}
.radio-group input[type="radio"] {display: none;}
.radio-group label {font-size: 0.875rem; width: 100%; min-height: 3.125rem; text-align: center; display: flex; justify-content: center; align-items: center;  padding: 0.5rem; border: 1px solid var(--line-color); cursor: pointer; background-color: transparent; transition: background-color 0.3s, color 0.3s;}
.radio-group input[type="radio"]:checked + label {background-color: var(--main-color); color: #fff;}
/* 체크박스그룹 */
.checkbox-group {display: flex; gap: 1rem;}
.checkbox-group input[type="checkbox"] {display: none;}
.checkbox-group label {font-size: 0.875rem; width: 100%; min-height: 3.125rem; text-align: center; display: flex; justify-content: center; align-items: center; padding: 0.5rem; border: 1px solid var(--line-color); cursor: pointer; background-color: transparent; transition: background-color 0.3s, color 0.3s;}
.checkbox-group input[type="checkbox"]:checked + label {background-color: var(--main-color); color: #fff;}
/* 제출버튼 */
.submit-btn {background: var(--main-color); color: #fff; border: 1px solid var(--line-color); width: 100%; font-size: 1.25rem; cursor: pointer; margin-bottom: 2rem; min-height: 4rem;}
.submit-btn > a {width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; min-height: 4rem;}
/* 체크박스 */
.form-check {display: flex; align-items: center; gap: 0.5rem;}
.check-box input[type="checkbox"] {display: none;}
.check-box input[type="checkbox"] + label {cursor: pointer; border: 1px solid var(--line-color); width: 1rem; height: 1rem; display: flex; justify-content: center; align-items: center;}
.check-box input[type="checkbox"]:checked + label {background-color: var(--main-color);}
.apply .form-wrapper{max-width: 800px;}

/* 모바일 네비게이션 */
.mobile-nav {display: none;}
.mobile-nav.is-mobile {display: flex; z-index: 999; position: fixed; left: 0; bottom: 0; background: #fff; width: 100%; border-top: 1px solid var(--line-color); padding: 1rem 0 1.25rem; align-items: center; justify-content: space-between;}
ul.mobile-nav::after {content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: #fff; z-index: -1;}
.mobile-nav .home-btn {width: 78px; flex-shrink: 0;}
.mobile-nav .home-btn a{position: relative; height: 44px;}
.mobile-nav .home-btn a img{width: 78px; height: 90px; padding-bottom: 12px; position: absolute; bottom: 0; z-index: 10;}
.mobile-nav .home-btn a::after, .mobile-nav .home-btn a::before{border-radius: 50%; background: #fff; content: ''; display: block; position: absolute; left: 50%; transform: translateX(-50%);}
.mobile-nav .home-btn a::after{width: 88px; height: 88px; bottom: 0; z-index: 1;}
.mobile-nav .home-btn a::before{width: 90px; height: 90px; bottom: -1px; z-index: -1; border: 1px solid var(--line-color);}
.mobile-nav li {width: 100%;}
.mobile-nav li a {display: flex; flex-direction: column; align-items: center; row-gap: 0.5rem;}

/* 로딩 */
.loading{display: none; justify-content: center; align-items: center; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.7); backdrop-filter: blur(50px); z-index: 99999;}
.loader {width: 50px; --b: 8px; aspect-ratio: 1; border-radius: 50%; padding: 1px; background: conic-gradient(#0000 10%,var(--main-color)) content-box; -webkit-mask: repeating-conic-gradient(#0000 0deg,#000 1deg 20deg,#0000 21deg 36deg), radial-gradient(farthest-side,#0000 calc(100% - var(--b) - 1px),#000 calc(100% - var(--b))); -webkit-mask-composite: destination-in; mask-composite: intersect; animation:l4 1s infinite steps(10);}
@keyframes l4 {to{transform: rotate(1turn)}}

@media screen and (min-width: 2560px){
  body {max-width: 2560px; margin: 0 auto;}
  header {max-width: 2560px; left: 50%; transform: translateX(-50%);}
  #main_bn {min-height: unset;}
}

/* 반응형 */
@media screen and (min-width: 1281px){
  #header:hover{background: rgba(255, 255, 255, 0.88); backdrop-filter: blur(10px); border-bottom: 1px solid var(--line-color);}
  #header:hover .slogan,
  #header:hover .gnb_1dli {color: var(--main-color)}
  #header:hover #logo img{-webkit-filter: none; filter: none;}
  #header:hover .menu_btn svg path {fill: var(--main-color);}
  #gnb a span{position: relative;}
  #gnb a span::after{content: '';display: inline-block;position: absolute;top: calc(100% + 4px);left: 50%;transform: translateX(-50%);width: 0;height: 2px;background-color: var(--main-color);}
  #gnb a:hover span::after{transition: all 0.3s;width: 100%;}
}

@media screen and (max-width: 1400px) {
  /** 타블렛 가로, 노트북 */
  html,body {font-size: 16px;}
  .header_wrap, .sub-body {padding-left: 3rem; padding-right: 3rem;}
}

@media screen and (max-width: 1280px) {
  /** 타블렛 가로, 노트북 */
  .header_wrap, .sub-body {padding-left: 1.5rem; padding-right: 1.5rem;}
  #header{height: 60px;}
  #header .menu_btn,#header .close_btn, .gnb_1dli .arrow-icon{display: block; background: none;}
  #header .close_btn{position: absolute; top: 1rem; right: calc(100% + 1rem);}
  #header .slogan,
  #header.active #logo {display: none;}
  #header.active .slogan {display: block;}
  #header.active .menu_btn svg path{fill: var(--main-color);}
  .header_wrap{padding: 0.25rem 3rem;}
  #logo{height: 75%;}
  #gnb{padding: 2rem 1rem; z-index: 99; height: 100vh; position: fixed; background-color: var(--cont-text2); top: 0; right: -100%; transition: all 0.3s;}
  #gnb.on{right: 0; width: 25rem; min-width: 300px;}
  #gnb.on + .gnb_bg {display: block; width: 100%; height: 100vh; background: rgba(0, 0, 0, 0.5); position: fixed; top: 0; right: 0; z-index: 1;}
  #gnb a{width: 100%; justify-content: space-between;}
  #gnb_1dul{height: auto; flex-direction: column;}
  .gnb_1dli{width: 100%; flex-direction: column; color: #fff;}
  #header.active .gnb_1dli{color: #fff;}
  .gnb_1dli>a>span{font-size: 1.25rem;}
  .gnb_1dli .arrow-icon.open{transform: rotate(-180deg);}
  #gnb_2dul{background-color: transparent; position: unset; padding-left: 1rem; border: 0; display: block !important;}
  .gnb_2dli {color: rgba(255, 255, 255, 0.7);}
  .gnb_2dli>a>span{font-size: 1.125rem;}
  .gnb_1dli,.gnb_2dli {letter-spacing: -5%;}
  .gnb_1dli a:hover,.gnb_2dli a:hover{color: var(--main-color);}
  #main_bn {height: 80vh;}
  #main_bn .txt-wrap,
  #main_bn .progress-wrap{text-align: center; left: 50%; transform: translateX(-50%); max-width: 80%;}
  #main_bn .slide_v2 .txt-wrap {text-align: left; left: 10vw; transform: translate(0,-50%);}
  #main_bn .slide_v3 .txt-wrap{text-align: center; top: unset;bottom: calc(10% + 5rem); left: 50%; transform: translate(-50%,0);}
  #main_bn .slide_v3 .txt-wrap p{font-size: 3rem; color: #fff;}
  #main_bn .slide_v3 .txt-wrap span{font-size: 1.25rem; color: #fff;}
  #main_bn .slide_v3 .overlay {background-color: rgba(0, 0, 0, 0.3)}
  #main_bn .slide_v3 img {object-position: center right;}
  .idx_section {padding: 0 1rem;}
  .idx_section2 {padding: 0 2rem;}

  .idx_section3 .sg-cont{row-gap: 0; flex-direction:unset;flex-wrap: wrap; height: 80vh;}
  .idx_section3 .sg-cont>li{width: 50%; height: 50%;}
  .idx_section3 .sg-cont>li dt{font-size: 1.125rem;}
  .idx_section3 .sg-cont>li dd:not(.sc-btn){font-size: 1.5rem;}
}

@media screen and (max-width: 1024px) {
  /** 타블렛 가로, 노트북 */
  html,body{font-size: 15px;}

  #main_bn{height: 90vh;}
  #main_bn .txt-wrap p, #main_bn .slide_v3 .txt-wrap p{font-size: 1.75rem; margin-bottom: 1rem;}
  #main_bn .txt-wrap span, #main_bn .slide_v3 .txt-wrap span{font-size: 1rem;}
  #main_bn .slide_v3 img{object-position: 90%;}

  #main_bn .slide_v2:not(.slide_v3) .txt-wrap {left: 3rem;}

  .idx_section .cont{flex-direction: column; row-gap: 3rem;}
  .best-cont>div:last-child{margin-top: 0;}
  .best-cont>div{width: 100%; flex-direction: column; align-items: flex-start;}
  .best-cont .img-wrap{height: 50vw}
  
  .review-wrap{width: 100% !important;}
  
  .idx_section2 {justify-content: flex-end; overflow: hidden;}
  .idx_section2 > img{left: 2rem; transform: translateX(0);}
  .idx_section2 .cont-wrap{display: none;}
  .idx_section2 .stats-wrap {width: 100%; display: flex; flex-direction: column; align-items: flex-end;}
  .idx_section2 .stats-wrap .sc-btn{display: flex;}

  /* .idx_section3 .service-list{column-gap: 2rem;}
  .idx_section3 .service-list img{width: 5rem; height: 5rem;} */
  .idx_section3 .sg-cont{row-gap: 0; flex-direction:unset;flex-wrap: wrap; height: 80vh;}
  
  .idx_section5{flex-direction: column-reverse; row-gap: 3rem;}
  .idx_section5:after{display: none;}
  
  .idx_section5 .clinic-info,.idx_section5 .clinic-map{width: 100%;}

  .ft_wr .ft_bot{flex-direction: column; row-gap: 1rem;}

  /* 서브페이지 */
  /* .sub-container:not(.idx-container) {margin: 12.5rem auto 12.5rem;} */
  .sub-tit {margin-bottom: 5rem;}
  .sub-tit p strong{font-size: 1.25rem;}
  .doctor-info .slogan{text-align: center;}
  .doctor-info .info-wrap{padding: 2rem 1.5rem; flex-direction: column; align-items: flex-end; row-gap: 1rem; justify-content: unset;}
  .doctor-info .info-wrap .info-cont {height: 100%;}
  .doctor-info .info-wrap .line{display: block; width: 100%; height: 1px; border-top: 1px solid var(--line-color);}
  /* .hospital-body .hospital-slider{height: 60vw;} */
  .clinic-list > li{width: 100%;}
  #clinic-modal .modal-content{padding: 1.5rem;}
  #clinic-modal .modal-content .clinic-name{padding-bottom: 1rem;}
  #clinic-modal .modal-content > div:not(.clinic-top) > div{padding-top: 1rem;}
  #clinic-modal .modal-content .clinic-apply{background-color: #fff;}
  #clinic-modal .modal-content .clinic-info{min-height: 45vw;}
  /* #clinic-modal .clinic-swiper.active {height: 40vw;} */

  /* 폼 */
  .form-wrap h4{flex-wrap: wrap;}
  .form-wrap h4 > p {margin-top: 0.5rem;}
  .type-check-body .form-row, .type-check-body .radio-group, .type-check-body .checkbox-group, .form-row1{flex-wrap: wrap;}
  .form-row .input-group {width: 100%; flex: unset !important;}
  .form-row2 .input-group {width: calc(100% / 3 - 2rem / 3);}
  .form-row2.has-phone .input-group {width: calc(100% / 2 - 0.5rem);}
  .form-row2.has-phone fieldset.input-group {width: 100%;}

  #clinic-modal .modal-content > div:not(.clinic-top){flex-direction: column-reverse;}
  #clinic-modal .modal-content > div:not(.clinic-top) > div{width: 100%;}
  #clinic-modal .modal-content .clinic-info{padding-right: 0;}
  #clinic-modal .modal-content .clinic-apply{padding-left: 0;}
}

@media screen and (max-width: 768px) {
  #main_bn{min-height: 100vw;}
  #main_bn .slide_v2 .txt-wrap , #main_bn .slide_v3 .txt-wrap{display: none;}
  #main_bn .slide_v3 .overlay{background-color: rgba(0, 0, 0, 0.1);}
  #main_bn .slide_v3 img{object-position: center center;}
  #main_bn .swiper-slide.slide_v2 img {padding-top: 30px;}
  #main_bn .swiper-slide.slide_v3 img {padding-top: 0;}
  .idx_section2 > img{left: unset; right: 35%;}
  .popup {bottom: unset; right: unset; top: 20%; left: 10%;}
}


@media screen and (max-width: 480px) {
  /** 모바일 세로 */
  html,body{font-size: 13px;}
  .header_wrap, .sub-body {padding-left: 1rem; padding-right: 1rem;}
  #clinic-modal .modal-content{width: 90%;}
}