@charset "utf-8";

#userSkip {position: relative; z-index: 3000}
#userSkip a {position: absolute;top: -200px;left: 0; width: 140px; text-align: center; border: 1px solid #0070f0; background-color: #000}
#userSkip a:focus {top: 0; z-index: 1000; text-decoration: none;}
#userSkip span {display: inline-block; padding: 2px 6px 0 0; font-size: 1.4rem; line-height: 20px; color: #fff; white-space: nowrap;}

#header header {width: 100%; border-bottom: 1px solid #dedede; position: fixed; top: 0; left:0; right:0; background: #fff; z-index: 1000;}
#header header > .header_inner {display: flex; justify-content: center; align-items: center;  margin: 0 auto; padding:0 40px; height: 100px;}
#header header .logo {width:203px; aspect-ratio: 203 / 63; background: url(/src/images/logo.png) no-repeat center center; background-size: contain;}
#header header .logo a {display: block; width: 100%; height: 100%;}

#header nav .nav_inner {font-size:0;}
#header nav li {position: relative; display: inline-block; padding: 0 48px;}
#header nav li:last-of-type {padding-right: 0;}
#header nav li:not(:last-of-type)::after{content:""; position: absolute; top: calc(50% - 8px); right: 0; width: 1px; height: 15px; background:#a9a9a9;}
#header nav li a {color:#333333; font-size: 1.8rem; font-weight: 500; font-family: 'GmarketSans'; }
#header nav li a:hover {color:var(--primary-blue);}
#header nav .btn_nav_close {display: none;}
#header nav .mo_only2 {display: none;}

.top_util {width: 100%; background: #474B51; padding: 2px 0;}
.top_util .top_util_inner {max-width: 1280px; margin: 0 auto; padding:0 40px;}
.top_util .top_util_inner .menu_list {text-align: right;}
.top_util .top_util_inner .menu_list li {position: relative; display: inline-block; padding: 0 10px;}
.top_util .top_util_inner .menu_list li:last-of-type {padding-right: 0;}
.top_util .top_util_inner .menu_list li:not(:last-of-type)::after {content:""; display: block; width: 1px; height: 10px; background: #D7D7D7; position: absolute; right: 0; top: calc(50% - 5px);}
.top_util .top_util_inner .menu_list li a {font-size: 1.4rem; color:#D7D7D7;}

.mo_header_btn {position: absolute; top: 50%; left:24px; transform: translateY(-50%);}
.mo_header_btn > button {width:30px; height:30px; background: url(/src/images/btn/btn_menu.svg) no-repeat center center; background-size: auto;}

.mo_header_btn  img {width:40px; }
.mo_header_btn h3 {
	position: static;
	padding: 4px 8px;
	border-radius: 8px;
	border: 1px solid #D0D0D0;
	cursor: pointer;
}
.mo_header_btn .type .box  {
	position: absolute;
	width: 100%;
	background: #fff;
	z-index: 999;
	left: 0;
	right: 0;
	height: auto;
	top: 45px;
	display: none;
}
.mo_header_btn .type .box button {
	padding-top: 3px;
}
.mo_header_btn .type.active .box {
	display: block;
}

.content {padding-top: 134px;}

.swiper-pagination-bullet {background: #d9d9d9!important; opacity: 1!important; transition: width 0.3s; border-radius: 4px!important;}
.swiper-pagination-bullet-active {background:#1B6ADD!important; width: 45px!important;}

.aside_big {padding: 26px 0 19px;}
.aside_wrap {margin: 40px auto 36px; position: relative;}
.aside_wrap .close_bottom_aside {width: 3.2rem; height: 3.2rem; border-radius: 100%; background: url(/src/images/ico/ico_arrow_white@20x.svg) no-repeat center center #2CCBF4; position: absolute; top: -1.6rem; left: calc(50% - 16px); transform: rotate(90deg); transition: all 0.3s; }
aside {max-width:1200px; margin: 0 auto; border: 3px solid #2CCBF4; background: #fff; display: flex; padding: 22px 22px 28px; border-radius: 37px; justify-content: center;}
aside .aside_left {display: flex; align-items: center;}
aside .aside_left > div {border-right: 1px solid #d4d4d4; padding: 0 10px; text-align: center;}
aside .aside_left > div:first-of-type {padding-left: 0;}
aside .aside_left > div a {font-size: 2.4rem; color:#111; font-weight: 500;}
aside .aside_left .left01 {border-right: 0;}
aside .aside_left .left01 > button {display: flex; align-items: center;}
aside .aside_left .left01 i {display: inline-block; width: 64px; height:64px;}
aside .aside_left .left01 i img {width:100%; height: 100%;}
aside .aside_left .left01 p {font-size: 2.2rem; color:#005a71; font-weight: 500; line-height:1.2}
aside .aside_left .left01 p span {display: block;}
aside .aside_left .left01 .point {color:#2CCBF4; font-weight: 700;}
aside .aside_left .left02 .tit,
aside .aside_left .left03 .tit {vertical-align: middle; color:#888;}
aside .aside_left .left02 .tit img,
aside .aside_left .left03 .tit img {vertical-align: -7px;}
aside .aside_right {display: flex;}
aside .aside_right > a {display: flex; padding: 0 40px; flex-direction: column; align-items: center; border-right: 1px solid #d4d4d4; color:#111; text-align: center;}
aside .aside_right > a:last-of-type {border-right: 0;;}
aside .aside_right .ico {width: 40px; height: 40px; margin-bottom: 1rem;}
aside .aside_right .ico_right01 {background: url(/src/images/ico/ico_aside.svg) no-repeat left 6px top 6px; background-size: 170px;}
aside .aside_right .ico_right02 {background: url(/src/images/ico/ico_aside.svg) no-repeat -40px center;}
aside .aside_right .ico_right03 {background: url(/src/images/ico/ico_aside.svg) no-repeat right center;}
aside .aside_right .ico_right04 {background: url(/src/images/ico/ico_aside.svg) no-repeat right -40px center;}
aside .aside_right .ico_right05 {background: url(/src/images/ico/ico_aside.svg) no-repeat right center;}

.footer_wrap {background: #4A5368;}
footer {max-width: 1354px; margin: 0 auto; padding: 26px 20px 29px; vertical-align: middle; display: flex; justify-content: space-between; gap: 20px;}
footer .left {width: calc(100% -200px)}
footer .right {min-width: 200px; padding-left:36px; border-left: 1px solid #808695;}
footer .bar {display: inline-block; margin: 0 3px; width: 1px; height: 13px; background: #868585; vertical-align: middle;}
footer .footer_link { margin-bottom: 28px; }
footer .footer_link a { display: inline-block; padding: 0 20px; color: #fff; font-size: 1.5rem; font-weight: 700; }
footer .footer_link a:first-of-type { padding-left:0;}
footer .footer_info { margin-bottom: 10px;}
footer .footer_info span { color:#fff; line-height: 1.5; }
footer .footer_copyright p { color:#fff; line-height: 1.5; font-weight: 700;}
footer .footer_call p {color:#fff;}
footer .footer_call p.tit {font-weight: 700; margin-bottom: 5px;}
footer .footer_call p.num {font-size: 2.8rem; font-weight: 700; margin-bottom: 5px}

.floating_wrap      { position: fixed; right: -138px; top: 17%; z-index: 1001; transition: 0.5s;}
.floating_wrap.show { right:0px;  transition: 0.5s;}
.floating_wrap  .floating_visi_btn {
  display: flex;
  flex-direction: column;
  justify-content: center; 
  align-items: center;
  row-gap: 6px;
  cursor: pointer;
  position: absolute; top:19%; left:-45px; 
  width:45px; height: 210px; overflow: hidden; border-top-left-radius: 20px; border-bottom-left-radius: 20px;
  transform: translate(-50%, -50%);
  color:#FFF; z-index: 1;
  transform: rotate(360deg);
  background:#2CCBF4;
  font-size: 24px; line-height: 120%;
}

.floating_wrap  .floating_visi_btn .ico-row-right {
  width:15px; height:18px; 
  transform: rotate(180deg);
  background: url(/src/images/ico/ico_arrow_white_set.svg) no-repeat right -2px top ;  transition: 0.3s; }

.floating_wrap.show .floating_visi_btn .ico-row-right { transform: rotate(0deg); transition: 0.3s; }


.floating { border: 3px solid #2CCBF4; border-radius: 80px 80px 18px 18px; text-align: center;  font-family: 'GmarketSans', sans-serif; background: #fff;}
.floating .float_banner > div:nth-of-type(1) {padding:10px; border-bottom: 1px solid #e7e7e7; }
.floating .float_banner > div:nth-of-type(1) .ico {width: 64px; height: 64px;}
.floating .float_banner > div:nth-of-type(1) p {color: #005A71; font-size: 1.3rem; font-weight: 500; }
.floating .float_banner > div:nth-of-type(1) p > b {display: block; color: #2CCBF4; font-size: 2rem;}
.floating .float_banner > div:nth-of-type(2) {padding:10px; border-bottom: 1px solid #e7e7e7; }
.floating .float_banner > div:nth-of-type(2) span {font-size: 1.2rem; font-weight: 500; color:#666;}
.floating .float_banner > div:nth-of-type(2) p {font-size: 2.4rem; font-weight: 500; color:#111;}


.floating .float_banner > div:nth-of-type(3) {padding:10px; border-bottom: 1px solid #e7e7e7; }
.floating .float_banner > div:nth-of-type(3) span {font-size: 1.2rem; font-weight: 500; color:#666;}
.floating .float_banner > div:nth-of-type(3) p {font-size: 2.0rem; font-weight: 500; color:#111;}

.floating .float_banner > div:nth-of-type(4) {padding:10px; border-bottom: 2px solid #2CCBF4; }
.floating .float_banner > div:nth-of-type(4) .ico {margin: 0; transform: translateX(5px);}
.floating .float_banner > div:nth-of-type(4) img {width:40px; height: 40px;}
.floating .float_banner > div:nth-of-type(4) span {display:block; color:#666; font-size: 1.2rem; font-weight: 500; margin-top: 10px;}
.floating .float_banner > div:nth-of-type(4) p {color:#111; font-size: 1.4rem; font-weight: 500; margin-top:5px; line-height: 1;}
.floating .float_banner > div:nth-of-type(5) {padding:10px; border-bottom: 2px solid #2CCBF4; }
.floating .float_banner > div:nth-of-type(5) .ico {margin: 0; transform: translateX(5px);}
.floating .float_banner > div:nth-of-type(5) img {width:40px; height: 40px;}
.floating .float_banner > div:nth-of-type(5) span {display:block; color:#666; font-size: 1.2rem; font-weight: 500; margin-top: 10px;}
.floating .float_banner > div:nth-of-type(5) p {color:#111; font-size: 1.4rem; font-weight: 500; margin-top:5px; line-height: 1;}

.floating .float_banner > div:nth-of-type(6) {padding:10px; border-bottom: 2px solid #2CCBF4; }
.floating .float_banner > div:nth-of-type(6) .ico {margin: 0; transform: translateX(5px);}
.floating .float_banner > div:nth-of-type(6) img {width:40px; height: 40px;}
.floating .float_banner > div:nth-of-type(6) span {display:block; color:#666; font-size: 1.2rem; font-weight: 500; margin-top: 10px;}
.floating .float_banner > div:nth-of-type(6) p {color:#111; font-size: 1.4rem; font-weight: 500; margin-top:5px; line-height: 1;}

.floating .float_banner > div.basic {padding: 10px 20px; border-bottom: 1px solid #2CCBF44D; display: flex; align-items: flex-end; gap: 5px; justify-content: flex-start; text-align: left;}
.floating .float_banner > div.basic .ico {width: 20px; height: 20px; background: url(/src/images/ico/ico_floating_20x.svg) no-repeat; background-size: auto 20px;}
.floating .float_banner > div.basic .ico.float01 {background-position: left center;}
.floating .float_banner > div.basic .ico.float02 {background-position: right center;}
.floating_wrap .top {margin-top: 10px; width:100%; border-radius: 25px; background: url(/src/images/ico/ico_gotop@16x.svg) no-repeat 14px center #95adb3; padding: 6px 0; }
.floating_wrap .top button {font-family: 'GmarketSans' , 'Spoqa Han Sans Neo', sans-serif; font-size: 1.4rem; color:#fff; width:100%; text-align: center;}


/*
  서브메뉴
*/
.sub_v_top {height:180px; width: 100%; display: flex; align-items: center; justify-content: center; background:url(/src/images/common/sub_v_top_01.jpg) no-repeat center center; background-size: cover; margin-top: 104px;}
.sub_v_top h2 {font-size: 4rem; font-weight: 700; color:#fff; text-align: center;}

.sub_content article {padding: 28px 0 40px;}
.sub_content article.reserve_result_box01 { padding: 28px 0 0 } 
.sub_content .inner {max-width:1200px; margin: 0 auto;}
.inner.mb20 {margin-bottom:20px;}
.sub_content h3.arrow {position:relative; max-width: 1200px; margin:0 auto 14px; font-size: 2.4rem; font-weight: 500; color:#333; padding-left:40px; line-height: 1.5; font-weight: 600;}
.sub_content h3.arrow::after {content:""; display: block; width:30px; height:30px; position: absolute; left:0; top: calc(50% - 15px); background: url(/src/images/ico/ico_circle_arrow@30x.svg) no-repeat center center #2998FF; line-height: 1.5; font-weight: 600; border-radius: 100%;}
.sub_content h3.arrow.dark::after {background: url(/src/images/ico/ico_circle_arrow@30x.svg) no-repeat center center #647C93;}


/*
  테이블
*/
.table {border-top: 2px solid #000;}
.table table {width:100%; border-collapse: collapse; table-layout: fixed;}
.table th,
.table td {padding:10px; border:1px solid #DDDDDD; word-break: keep-all; color:#666; background:#fff; box-sizing: border-box; font-weight: 500;}
.table th {text-align:center; background:#F5F5F5; font-weight: 500; color:#333; border-top:0;}
.table th:first-child,
.table td:first-child {border-left:0;}
.table th:last-child,
.table td:last-child {border-right:0;}
.table thead th,
.table thead td {border-top:0;}
.table.center table {text-align:center;}
.table td.nobdr {border-right-color: transparent!important; padding-right:0;}
.table td.left {text-align: left!important;}
.table_X_scroll .table {min-width: 600px;}
.table.no_head tbody tr:first-of-type td {border-top:0;}


/*
  페이지네이션
*/
.pagination_wrap {margin-top:44px;}
.pagination {display: flex; align-items: center; justify-content: center;}
.pagination .btn-p {display: inline-block; width: 36px; height:36px;}
.pagination .btn-p > a {display: block; width:100%; height:100%; background: url(/src/images/btn/btn_pagination.svg) no-repeat; background-size: auto 36px;}
.pagination .btn-p > a.disabled {background: url(/src/images/btn/btn_pagination_disabled.svg) no-repeat; background-size: auto 36px; cursor: auto;}
.pagination .btn-p.first > a {background-position: left center;}
.pagination .btn-p.perv > a {background-position: -36px center;}
.pagination .btn-p.next > a {background-position: -72px center;}
.pagination .btn-p.last > a {background-position: right center;}
.pagination ol {height:32px;}
.pagination ol li {display: inline-block; width:32px; height:32px;}
.pagination ol li a {display: block; width:100%; height:100%; line-height: 30px; border: 1px solid transparent; text-align: center; color:#B7B7B7; font-size:1.4rem;}
.pagination ol li a.current {border-color:#BABABA; border-radius: 100%; color:#333333;}
.pagination ol li button {width:100%; height:100%; color:#B7B7B7; font-size:1.4rem;}

/*
  리스트
*/
.list li {list-style-type: "·";}

.policy {line-height: 150%; font-size: 1.4rem;}
.policy h6 {font-size: 2rem; font-weight: 700; color:#4A5368; margin: 40px 0 20px;}
.policy h6:first-child {margin-top:0;}
.policy ul li {padding-left:12px;}
.policy ol { list-style-type:decimal;margin: 0px 0 0px 15px ;}
.policy ol li { margin-bottom: 10px }

.policy ol.Alpha { list-style-type:upper-alpha;margin: 0px 0 0px 15px ;}
.policy ol.Alpha li { margin-bottom: 10px }

.policy ul.round_number  { display: grid; grid-template-columns: 1.5em 1fr; margin: 5px 0 10px 0;}
.policy ul.round_number li  {padding-left:0;}

.policy ul.line_number  { display: grid; grid-template-columns: 0.7em 1fr; margin: 0px 0 0px 0;}
.policy ul.line_number li  {padding-left:0; margin-bottom: 2px;}


/*
  버튼wrap
*/
.sub_content .btn_wrap {display: flex; margin-top:60px; column-gap: 2rem; row-gap: 1rem; text-align: center;}
.sub_content .btn_wrap.center {justify-content: center;}
.sub_content .btn_wrap.right {justify-content: flex-end;}
.sub_content .btn_wrap.side .btn +.btn.right {margin-left:auto;}

/*
  버튼 스타일:크기
*/
.btn {box-sizing: border-box;}
.btn.size {display: inline-block; padding: 0 40px; line-height: 42px; min-width: 124px; border-radius: 8px; font-weight: 600; font-size: 1.8rem; line-height: 50px;}
.btn.size.size01 {line-height: 50px; font-size: 2.4rem;}
.btn.size.size02 {line-height: 52px; font-size: 2.4rem;}

/*
  버튼 스타일: 색상
*/
.btn.color01 {background:#4E7FFF;color:#fff;}
.btn.color02 {background:#5462E1;color:#fff;}
.btn.color03 {background:var(--primary-blue);color:#fff;}
.btn.color04 {background:#fff;color:#111; border: 1px solid #333; color:#333;}

/*버튼 스타일_테이블 내부 */
.sbtn_cancel {border:1px solid #ddd; border-radius:4px; padding: 5px 12px; margin-top: 5px; display: inline-block; }
.sbtn_cancel:hover {border:1px solid #000; }

/*
  input:radio
*/
.radio {display: inline-block;}
.radio input[type="radio"] {display: none;}
.radio input[type="radio"] + label {padding-left:36px; position:relative; line-height: 24px; vertical-align: middle; white-space: nowrap; cursor: pointer;}
.radio input[type="radio"] + label:before {content:""; display: block; width: 24px; height: 24px; border-radius: 100%; background:#E9EEF2; position: absolute; left: 0; top: calc(50% - 12px)}
.radio input[type="radio"]:disabled + label {color:#bfbfbf;cursor: default;}
.radio input[type="radio"]:disabled + label:before {background:#cfcfcf;}
.radio input[type="radio"][readonly] + label {color:#bfbfbf}
.radio input[type="radio"][readonly] + label:before {background:#cfcfcf;}
.radio input[type="radio"]:checked + label:before {background:url(/src/images/ico/ico_radio.svg) no-repeat center 55% var(--primary-blue);}
.radio input[type="radio"]:checked:disabled+ label:before {background:url(/src/images/ico/ico_radio.svg) no-repeat center 55% #cfcfcf;}
.radio .radio_desc {padding-left: 37px; font-size: 1.4rem; color:#888; }
.radio + .radio {margin-left:15px;}

/*
  input:check
*/
.check {display: inline-block;}
.check input[type="checkbox"] {display: none;}
.check input[type="checkbox"] + label {padding-left:28px; position:relative; line-height: 20px; vertical-align: middle; white-space: nowrap; cursor: pointer}
.check input[type="checkbox"] + label:before {content:""; display: block; width: 20px; height: 20px; border-radius: 2px; background:#fff; position: absolute; left: 0; top: calc(50% - 10px); border: 1px solid #9b9b9b;}
.check input[type="checkbox"]:checked + label:before {border-color:var(--primary-blue); background:url(/src/images/ico/ico_check.svg) no-repeat left 55% #fff; background-size: auto 20px ;}
.check input[type="checkbox"][readonly] + label {color:#bfbfbf;}
.check input[type="checkbox"][readonly] + label:before {border-color:#C8C8C8; background:#EEEEEE;}
.check input[type="checkbox"]:disabled + label {color:#bfbfbf; cursor: default}
.check input[type="checkbox"]:disabled + label:before {border-color:#C8C8C8; background:#EEEEEE;}
.check input[type="checkbox"]:checked:disabled + label:before {border-color:#C8C8C8; background:url(/src/images/ico/ico_check.svg) no-repeat right 55% #EEEEEE; background-size: auto 20px;}
.check + .check {margin-left:15px;}

/*
  input:텍스트, textarea
*/
.form_text {font-size:0;}
.form_text label {display: inline-block; font-size: 1.6rem; color:#333; width:100px; font-weight: 500; vertical-align: middle;}
.form_text label.linetop {vertical-align: top; transform: translateY(10px);}
.form_text label.required {position: relative;}
.form_text label.required::after {content:"*"; display: block; width: 9px; height:9px; color:#ff4545; font-size: 2rem; top: calc(50% - 6px); left:-10px; position: absolute; line-height: 1;}
.form_text label.required .required {position: absolute; clip: rect(0 0 0 0); width: 1px; height: 1px; margin: -1px; overflow: hidden; left:0;}
.form_text input[type="text"],
.form_text input[type="number"],
.form_text input[type="password"],
.form_text input[type="email"] {width: calc(100% - 100px); height: 36px; padding: 8px 12px; border: 1px solid #D7D7D7; vertical-align: middle;}
.form_text.wide input[type="text"],
.form_text.wide input[type="number"],
.form_text.wide input[type="password"],
.form_text.wide input[type="email"] {width:100%;}
.form_text.flex {display: flex; column-gap: 4px; align-items: center;}
.form_text.flex label {width: 96px;}
.form_text.flex input[type="text"],
.form_text.flex input[type="number"],
.form_text.flex input[type="password"],
.form_text.flex input[type="email"] {flex:1;}
.form_text textarea {width: calc(100% - 100px); padding: 8px 12px 10px; border: 1px solid #D7D7D7; resize: none; vertical-align: middle;}
.form_text textarea::-webkit-scrollbar {display: none;}
.form_text input[type="text"]::placeholder,
.form_text input[type="number"]::placeholder,
.form_text input[type="password"]::placeholder,
.form_text input[type="email"]::placeholder,
.form_text textarea::placeholder {color:#999999;}

/*
  여러개의 form 이 같이 있을 경우
*/
.form_multi {display: flex; align-items: center;}
.form_multi > .form_text + .radio {margin-left:20px}

.error-msg {position: relative;}
.error-msg span {position: absolute; font-size: 1.1rem; color:#FF4E4E; font-weight: 500;}


.mo_pop_wrap {position: fixed; top:0; bottom:0; left:0; right:0; z-index: 1001; background-color:rgba(0,0,0,0.5); display: none;}
.mo_pop_wrap.open {display: block;}
.mo_pop_wrap .mo_pop {max-width: 90%; position: fixed; left: 50%; top: 50%; transform: translate(-50%, -50%);}
.mo_pop_wrap .mo_pop_header {display: block; width: 100%; height: 45px; background:#25435E; text-align: center;}
.mo_pop_wrap .mo_pop_header .tit {color:#fff; font-size: 2rem; font-weight: 500; line-height: 45px;}
.mo_pop_wrap .mo_pop_footer {display: block;}
.mo_pop_wrap .mo_pop_content {padding:27px; background:#f3f3f3;}
.mo_pop_wrap .mo_pop_footer .btn_close {position: absolute; width:20px; height:20px; top: 8px; right: 10px; box-sizing: content-box; padding: 5px; min-width: auto; background: transparent;}
.mo_pop_wrap .mo_pop_footer .btn_close::before {content:""; display: block; width: 1px; height: 15px; background-color:#fff; border-radius: 1px; transform: rotate(45deg); position: absolute; top: calc(50% - 7px); left: 50%;}
.mo_pop_wrap .mo_pop_footer .btn_close::after {content:""; display: block; width: 1px; height: 15px; background-color:#fff; border-radius: 1px; transform: rotate(-45deg); position: absolute; top: calc(50% - 7px); left: 50%;}

.mo_pop_wrap .mo_pop_footer .bottom_btn { background-color: #f3f3f3; padding: 27px;}
.mo_pop_wrap .mo_pop_footer .bottom_btn .btn_close_bottom { 
  position: relative; display: block; 
  width:30%; height:auto; padding: 12px 30px; 
  border-radius: 6px;
  background-color: #2F93EF; color:#Fff; font-size:18px;
  margin: 0 auto;
}


.mo_pop_wrap .mo_pop.size-sm{width: 100%; max-width: 200px;}
.mo_pop_wrap .mo_pop.size-sm .mo_pop_content {min-height: 200px;}

.mo_pop_wrap .mo_pop.size-md{width:600px; max-width:96%;}
.mo_pop_wrap .mo_pop.size-md .mo_pop_content {min-height: 200px;}

.mo_pop_wrap2 {position: fixed; top:0; bottom:0; left:0; right:0; z-index: 1001; background-color:rgba(0,0,0,0.5); display: none;}
.mo_pop_wrap2.open {display: block;}
.mo_pop_wrap2 .mo_pop {max-width: 90%; position: fixed; left: 50%; top: 50%; transform: translate(-50%, -50%);}
.mo_pop_wrap2 .mo_pop_header_pc {display: block; width: 100%; height: 45px; background:#25435E; text-align: center;}
.mo_pop_wrap2 .mo_pop_header_pc .tit {color:#fff; font-size: 2rem; font-weight: 500; line-height: 45px;}
.mo_pop_wrap2 .mo_pop_footer_pc {display: block;}
.mo_pop_wrap2 .mo_pop_content_pc {padding:27px; background:#f3f3f3;}
.mo_pop_wrap2 .mo_pop_footer_pc .btn_close {position: absolute; width:20px; height:20px; top: 8px; right: 10px; box-sizing: content-box; padding: 5px; min-width: auto; background: transparent;}
.mo_pop_wrap2 .mo_pop_footer_pc .btn_close::before {content:""; display: block; width: 1px; height: 15px; background-color:#fff; border-radius: 1px; transform: rotate(45deg); position: absolute; top: calc(50% - 7px); left: 50%;}
.mo_pop_wrap2 .mo_pop_footer_pc .btn_close::after {content:""; display: block; width: 1px; height: 15px; background-color:#fff; border-radius: 1px; transform: rotate(-45deg); position: absolute; top: calc(50% - 7px); left: 50%;}
.mo_pop_wrap2 .mo_pop.size-sm{width: 100%; max-width: 200px;}
.mo_pop_wrap2 .mo_pop.size-sm .mo_pop_content {min-height: 200px;}
.mo_pop_wrap2 .mo_pop.size-md{width:600px; max-width: 96%;}
.mo_pop_wrap2 .mo_pop.size-md .mo_pop_content {min-height: 200px;}


.ly_loading {
	left: 0px; top: 0px; width: 100%; height: 100%; position: fixed; z-index: 999; _position: absolute;
}
.ly_loading .bg {
	background: rgb(0, 0, 0); left: 0px; top: 0px; width: 100%; height: 100%; position: fixed; opacity: 0.75;
}
.ly_loading .cont {
	margin: -65px 0px 0px -115px; left: 50%; top: 50%; width: 234px; height: 148px; position: absolute;
}
.ly_loading .btn_cls {
	top: -30px; right: 0px; position: absolute;
}
.ly_loading .ele {
	color: rgb(255, 255, 255);
}
.ly_loading .ele p {
	color: rgb(255, 255, 255);
}
.ly_loading .ele {
	text-align: center; line-height: 1.5; font-size: 18px;
}
.ly_loading .ele p {
	font-size: 22px; font-weight: bold;
}
.ly_loading .ele .fa-pulse {
	color: rgb(21, 196, 239); font-size: 70px; margin-bottom: 12px;
}

/*
  기타
*/
hr.gray {background:#dddddd; height: 1px; border: 0;}
hr.gray_x10 {background:#f9f9f9; height: 10px; border: 0;}
.ellipsis {display: inline-block; max-width:100%; white-space: nowrap; text-overflow: ellipsis; overflow: hidden;}
i.new {display:inline-block; width: 18px; height:18px; margin-right:7px; background:url(/src/images/ico/ico_new@18x.svg) no-repeat center center; background-size: 18px; vertical-align: middle;}
.point.red {color:#FF4343;}
.point.blue {color:#4E7FFF;}
.point.gray {color:#999999;}
.ico {display: inline-block; margin-right: 4px; vertical-align: middle;}



.ul-table {display: grid; grid-template-columns:0.4fr 1fr; border-top:2px solid #000;}
.ul-table li { padding: 12px 12px; border-bottom: 1px solid #ddd; font-size: 16px; background-color: #fff;}
.ul-table li:nth-child(odd) { background: #fafafa; font-weight: bold; min-width: 110px}
.ul-table li:nth-child(even) { padding-left: 20px;}
.ul-table li p {padding-bottom:8px;}
.ul-table li p::before { content: '●' ; color: #2998ff; font-size: 5px; position: absolute; padding-left: 20px; margin-left: -30px;margin-top: 6px;}

h6.intitle {color:#2877b6; font-size: 20px; font-weight: bold; padding-bottom:10px;}
.fc-red { color: #FF0B0B}
.fc-blue { color: #2998ff;}
.fs-med { font-size:18px ; padding-bottom: 20px;}
.space_70 { display: block; height:3em;}


.btn_open {  margin-top: 10px; padding: 5px 10px; background: #424242; border-radius:5px; border: 0; color: #fff; cursor: pointer; }
		#mask { display: none; width: 100%; height: 100%; position: fixed; left: 0; top: 0; background: #000; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; filter: alpha(opacity=50); zoom: 1; opacity: 0.5; z-index: 9998; }
		* html #mask { position: absolute; }
		.popup_box_term { display: none; width:560px; height:auto; max-width: 90%; max-height: 90%; overflow-x: hidden; overflow-y: auto; position: fixed; top: 50%; left: 50%; background: #fff; border: 1px solid #000; z-index: 9999; transform:translate(-50%, -50%);  margin-top: 0 !important; margin-left: 0 !important;}
		* html .popup_box_term { position: absolute; }
		.popup_cont { padding: 20px; }
		.btn_close { width: 30px; height: 25px; position: absolute; top: 0px; right: 0px; background: #000; border: 0; color: #fff; cursor: pointer; }
			.terms_left {width: 110px;font-size: 14px; font-weight: bold; color:#333;}
			.terms_pli {font-size: 14px; padding-left: 20px !important; line-height: 140%;}
			.terms_pli p { position: relative;}
			.terms_pli p::before {content:'-'; position: absolute; margin-left: -20px; padding-left: 10px}




@media screen and (max-width:1550px) and (min-width: 768px) {
/*  중간사이즈 플로팅배너 작아짐 _ 제거  

    .floating_wrap {top: 50%; transform: translateY(-50%);}
    .floating:not(.hover) .float_banner > div:nth-of-type(1) {padding: 10px 5px;}
    .floating:not(.hover) .float_banner > div:nth-of-type(1) .ico {width: 40px; height: auto; margin-right:0;}
    .floating:not(.hover) .float_banner > div:nth-of-type(1) > p {position: absolute; white-space: nowrap; width:1px; height:1px; overflow: hidden; border:0; padding:0; clip: rect(0 0 0 0); clip-path: inset(50%); margin: -1px;}
    .floating:not(.hover) .float_banner > div:nth-of-type(2)::after {content:""; display: block; width:30px; height:30px; margin: 0 auto; background: url('../images/ico/ico_call_blue@24.svg') no-repeat center center; background-size: cover;}
    .floating:not(.hover) .float_banner > div:nth-of-type(2) > span,
    .floating:not(.hover) .float_banner > div:nth-of-type(2) > p {position: absolute; white-space: nowrap; width:1px; height:1px; overflow: hidden; border:0; padding:0; clip: rect(0 0 0 0); clip-path: inset(50%); margin: -1px;}
    .floating:not(.hover) .float_banner > div:nth-of-type(3) > .ico {transform: translateX(0);}
    .floating:not(.hover) .float_banner > div:nth-of-type(3) > .ico img {width:30px; height:30px;}
    .floating:not(.hover) .float_banner > div:nth-of-type(3) > span,
    .floating:not(.hover) .float_banner > div:nth-of-type(3) > p {position: absolute; white-space: nowrap; width:1px; height:1px; overflow: hidden; border:0; padding:0; clip: rect(0 0 0 0); clip-path: inset(50%); margin: -1px;}
    .floating:not(.hover) .float_banner > div.basic {padding: 10px; justify-content: center;}
    .floating:not(.hover) .float_banner > div.basic .ico {margin-right:0; width: 24px; height: 24px; background-size: cover;}
    .floating:not(.hover) .float_banner > div.basic p {position: absolute; white-space: nowrap; width:1px; height:1px; overflow: hidden; border:0; padding:0; clip: rect(0 0 0 0); clip-path: inset(50%); margin: -1px;}
    .floating_wrap .top {background-image: none;}
    */
}


@media screen and (max-width:1200px) {
	.floating_wrap {display: none;}
}


@media screen and (max-width:1240px) {
  .content {padding-top:114px}
  #header header > .header_inner {height: 80px; padding: 0 20px;}
  #header nav li {padding: 0 28px;}
  .top_util .top_util_inner {padding: 0 20px;}

  .aside_wrap {padding: 0 20px;}
  aside {padding: 12px 12px 18px; border-radius: 25px;}
  aside .aside_left > div {padding:0 10px;}
  aside .aside_left > div a {font-size: 2rem;}
  aside .aside_left .left01 p {font-size: 2rem;}
  aside .aside_left .left01 i {width: 50px; height: 50px;}
  aside .aside_left .left02 .tit,
  aside .aside_left .left03 .tit {font-size: 1.2rem;}
  aside .aside_left .left02 .tit img,
  aside .aside_left .left03 .tit img {vertical-align: -9px;}
  aside .aside_right > a {padding: 0 20px; font-size: 1.2rem;}
  aside .aside_right .ico {width: 40px; height: 40px; margin-bottom: 5px;}
  aside .aside_right .ico_right01 {background-size: auto 33px;}
  aside .aside_right .ico_right02 {background-size: auto 30px; background-position: -30px center;}
  aside .aside_right .ico_right03 {background-size: auto 30px;}
  aside .aside_left > div {border-right: 0;}
  aside .aside_left .left02 .mo_only span,
  aside .aside_left .left03 .mo_only span,
  aside .aside_left .left07.mo_only span,
  aside .aside_left .left08.mo_only span {display: block;}

  footer .right {padding-left: 20px;}
  footer .footer_link a {padding:0 10px;}

  .sub_v_top {margin-top: 114px;}
  .sub_content .inner {padding: 0 20px;}
  .sub_content h3.arrow {margin: 0 20px 10px;}
  .table_X_scroll {max-width: 100%; overflow-x: auto;}
  .table_X_scroll::-webkit-scrollbar {height: 7px; background-color: transparent;}
  .table_X_scroll::-webkit-scrollbar-thumb {height: 5px; background-color: #E0E0E0;}
  .table_X_scroll .table {width: fit-content;}
}

/* 푸터 고객센터 플러팅 버튼 768 -> 1200으로 기준 변경  24.09.09 */
@media screen and (max-width:1200px) {
  aside .aside_left {position: fixed; left:0; right: 0; bottom: 0; background: #fff; border:3px solid #2CCBF4; border-bottom: 0; border-radius: 2.8rem 2.8rem 0 0; padding: 12px 20px; justify-content: space-between; z-index: 999; align-items: flex-end; transition: bottom 0.3s;}
  aside .aside_left > div {padding: 0;}
  aside .aside_left .left01 button {flex-direction: column; justify-content: center; align-items: center;}
  aside .aside_left .left01 p {font-size: 1.6rem;}
  aside .aside_left .left01 i {margin: 0;}
  aside .aside_left.hide {bottom: -100px;}
  aside .aside_left.hide .close_bottom_aside { top: -4.6rem; transform: rotate(270deg);}
	
  aside .aside_left .left02 .mo_only span,
  aside .aside_left .left03 .mo_only span,
  aside .aside_left .left07.mo_only span,
  aside .aside_left .left08.mo_only span {font-size: 1.3rem; margin-top: 11px;}
}
@media screen and (max-width:768px) {
  .content {padding-top:62px; transition: all 0.3s;}
  #header header.hide + .content {padding-top:0}
  #header header {border-bottom: 0; transition: top 0.3s;}
  #header header > .header_inner {height: 62px; justify-content: center; box-shadow: 0 0 6px rgba(0,0,0,0.1);}
  #header header .logo {width: auto; height: 34px;}
  #header header.hide {top: -62px}
  #header nav {position:fixed; left:-100%; width:90%; top:0; bottom:0; background:#fff; z-index: 1000; transition: left 0.3s;}
  #header nav.active {left:0; box-shadow: 0 0 999px 999px rgba(0,0,0,0.5);}
  #header nav .nav_inner {display: flex; width: 100%; height:100%; align-items: flex-start; gap: 24px; flex-direction: column; padding: 30px 30px;}
  #header nav .nav_inner .logo2 {width:140px; max-width: 80vw; aspect-ratio: 29 / 9; background: url(/src/images/logo.png) no-repeat center center; background-size: contain; height: auto; margin-bottom:0px;}
  #header nav .nav_inner .lnb_ico a { display: flex;align-items: center;}
  #header nav .nav_inner .lnb_ico a p { font-size: 12px; color:#666;}
  #header nav .nav_inner .lnb_ico a p span { font-size: 15px; color:#000; font-weight:500; }
  #header nav .nav_inner .lnb_ico_kakao { display: inline-block; background: url(/src/images/ico/ico_aside.svg) no-repeat left -117px center; background-size: 190px; height:40px; width:38px; margin-right: 10px}
  #header nav .nav_inner .lnb_ico_wechat { display: inline-block; background: url(/src/images/ico/ico_aside.svg) no-repeat left -154px center; background-size: 190px; height:40px; width:38px; margin-right: 10px}
  #header nav .nav_inner .lnb_line { background: #ddd; height: 2px; width:100%;}

	
  #header nav li {padding:0}
  #header nav li:not(:last-of-type)::after {content:none;}
  #header nav .btn_nav_close {position: absolute; top:20px; right: 20px; width:25px; height: 25px; display: block;}
  #header nav .btn_nav_close::before {content:""; display: block; width: 20px; height:1px; background:#666; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(45deg); }
  #header nav .btn_nav_close::after {content:""; display: block; width: 20px; height:1px; background:#666; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) rotate(-45deg); }
  .top_util {display: none;}
  #header .mo_header_btn {display: block;}
  #header nav .mo_only2 {display: block;}
	
  .aside_wrap {margin: 0; padding: 0;}
  aside {padding: 32px 0; border-radius: 0; border: 0;}
  /* 위 aside_left 여기서 옮김 */
  aside .aside_right > a {font-size: 1.4rem; padding: 0 20px;}
  aside .aside_right .ico {width: 40px; height: 40px; margin-right: 0;}
  aside .aside_right .ico_right01 {background-size: auto 33px;}
  aside .aside_right .ico_right02 {background-size: auto 40px; background-position: -40px center;}
  aside .aside_right .ico_right03 {background-size: auto 40px;}

  .aside_big {padding: 0;}	

  footer {padding-bottom: 130px;}
  footer .right {display: none;}
  footer .footer_link {display: flex; gap: 10px 20px; flex-wrap: wrap;}
  footer .footer_link .bar {display: none;}
  footer .footer_link a {padding: 0;}

  .sub_v_top {margin-top: 62px; justify-content: flex-start; padding: 40px 20px; background: none; height: auto;}
  .sub_v_top h2 {text-align: left; color:#111; font-size: 2.8rem;}
  .sub_content h3.arrow {font-size: 2rem; background-size: auto 25px; padding-left: 30px;}
  .sub_content h3.arrow::after {width: 2.5rem; height: 2.5rem; background-size: 25px auto; background-position: center center; top: calc(50% - 12.5px)}
  .sub_content h3.arrow.dark::after {background: url(/src/images/ico/ico_circle_arrow@30x.svg) no-repeat center center #647C93; background-size: 25px auto; }
  .table th,
  .table td {font-size: 1.3rem}
  .pagination .btn-p {width: 28px; height:28px;}
  .pagination .btn-p > a {background-size: auto 28px;}
  .pagination .btn-p > a.disabled {background-size: auto 28px;}
  .pagination .btn-p.first > a {background-position: left center;}
  .pagination .btn-p.perv > a {background-position: -28px center;}
  .pagination .btn-p.next > a {background-position: -56px center;}
  .pagination .btn-p.last > a {background-position: right center;}
  .pagination ol {height: auto;}
  .pagination ol li {margin: 3px; width: 28px; height:28px;}
  .pagination ol li a {line-height: 26px}
  ul.circle_blue > li {font-size: 1.4rem;}

  .policy h6 {font-size: 1.8rem;}

  /*
  버튼wrap
  */
  .sub_content .btn_wrap {flex-wrap: wrap;column-gap: 1rem;}
  /*
    버튼 스타일:크기
  */
  .btn.size {padding: 0 20px; line-height: 42px; min-width: 124px;font-size: 18px; min-width: auto;}
  .btn.size.size01 {line-height: 36px; font-size: 1.6rem;}
  .btn.size.size02 {line-height: 48px; font-size: 1.6rem;}

  /*
    버튼 스타일: 색상
  */
  .btn.color01 {background:#4E7FFF;color:#fff;}
  .btn.color02 {background:#5462E1;color:#fff;}

  /*버튼 스타일_테이블 내부 */
  .sbtn_cancel {border:1px solid #ddd; border-radius:4px; padding: 5px 12px; margin-top: 5px; display: inline-block; }
  .sbtn_cancel:hover {border:1px solid #000; }

  /*
    input:텍스트, textarea
  */
  .form_text label {margin-bottom: 5px;}
  .form_text input[type="text"],
  .form_text input[type="password"] {width:100%;}
  .form_text.flex {flex-wrap: wrap; row-gap: 4px;}
  .form_text.flex label {width:100%;}
  .form_text.flex input[type="text"],
  .form_text.flex input[type="pqssword"],
  .form_text.flex input[type="email"] {width:100%; flex: none;}
  .form_text textarea {width:100%;}

}



@media screen and (max-width:500px) {
  .mo_pop_wrap .mo_pop {width: 95vw; }
}

@media screen and (max-width:400px) {
  .mo_pop_wrap .mo_pop_content {padding:17px;}

}

@media screen and (max-width:350px) {
  /*
  버튼wrap
  */
  .btn_wrap .btn {width:100%;}


}


@media screen and (max-width:300px) {
  .sub_v_top h2 {font-size: 2.4rem;}
}


