@charset "utf-8";

/* base */
@font-face {
    font-family: 'Pretendard-Regular';
    src: url('https://fastly.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'MaruBuri';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Light.eot);
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Light.eot?#iefix) format("embedded-opentype"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Light.woff2) format("woff2"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Light.woff) format("woff"), url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Light.ttf) format("truetype");
}
@font-face {
	font-family: 'RenaissanceRebond';
	src: url('/fonts/RenaissanceRebond/RenaissanceRebond-Headline.otf') format('opentype');
	font-weight: 400;
	font-style: normal;
}
@font-face {
	font-family: 'ProximaNova';
	src: url('/fonts/ProximaNova/ProximaNova-Regular.otf') format('opentype');
	font-weight: 400;
	font-style: normal;
}

/* root */
:root {
    --theme-color: #CF3A4E !important;
}

::-webkit-scrollbar { -webkit-appearance: none; }
::-webkit-scrollbar-thumb {
    background-clip: padding-box;
    background-color: #e5e5e5;
    border: 4px solid transparent;
    border-radius: 10px;
    cursor: pointer;
}
::-webkit-scrollbar-thumb:hover { background-color: #d7d7d7; }
::-webkit-scrollbar-track { background-color: #f9f9f9; }

/* reset */
* {padding:0; margin:0; border:0; line-height:100%; letter-spacing:-0.5px; box-sizing:border-box; vertical-align:top; outline:0; font-weight:400; font-family: 'Pretendard-Regular'; -webkit-tap-highlight-color: rgba(0,0,0,0); appearance:none; -webkit-appearance:none; line-height: 2.1rem; color:#000000C7; letter-spacing: -0.3px !important; }

html { font-size: 62.5% !important; }
body { font-size: 1.4rem; }

/* 테이블태그 */
table {width:100%; border-spacing:0; table-layout:fixed;}
th , td {vertical-align:middle; text-align:center; }
legend , caption {display:none;}

/* 모바일 가로모드 폰트확대 방지 */
body {-webkit-text-size-adjust:none;}

/* 버튼태그 */
a , button {outline:0; display:inline-block; vertical-align:top; box-sizing:border-box; cursor:pointer; background:none;}

/* 헤더 폰트 사이즈 초기화 */
h1 , h2 , h3 , h4 , h5 , h6 {font-size:100%; font-weight:normal; color:#000;}
h3 {font-size:20px; font-weight:500;}
h4 {font-size:17px; font-weight:500;}

/* 이미지 및 필드셋에서 보더 표시 초기화 */
img , fieldset {border:none;}
img , object {vertical-align:top; display: inline-block;}

/* 폼태그 초기화 */
textarea {resize:none;}
select {border-radius:0; background:#fff;}
input[type="file"], input[type="checkbox"] { display: none; }
input[type=file], input[type=text], input[type=password], input[type=tel], input[type=email] { height: 41px; border-radius: 0px; }
input#key_word { height: 100%; }

/* 입력폼 예시표시 */
::placeholder {color: var(--theme-color);}

/* 리스트의 스타일 제거 */
ul , ol , li {list-style:none;}
em ,address {font-style:normal;}

/* 텍스트의 색상 표시 */
a:link {color:inherit; text-decoration:none;}
a:active {color:inherit; text-decoration:none;}
a:visited {color:inherit; text-decoration:none;}
a:hover {color:inherit; text-decoration:none;}

/* 입력폼 사파리에서의 초기화 */
input , textarea {-webkit-border-radius:0;}
input:-internal-autofill-selected {background:transparent !important;}

/* 클리어픽스 */
.clearfix::after {content:""; clear:both; display:block;}

/* 셀렉박스 커스텀 */
select { background:url('/images/skin/renaissance/ico_arrowD_gray_2x.png') no-repeat center; background-size: 2rem 2rem; background-position: calc(100% - 8px) center; }

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox  */
input[type='number'] {
  -moz-appearance: textfield;
}

/* swiper */
.swiper-wrapper { z-index: 1 !important; }
.swiper-container button:disabled { background: unset !important; opacity: 0.5; }

/* 드래그 */
::selection {background:#F6D9DD; border:0;}

/* 강조어 */
.highlight {color:var(--theme-color) !important;}

/* 태그표시 */
.hidden {display:none !important;}

/* 텍스트표시 */
.txt-hidden {overflow:hidden; white-space:nowrap; text-overflow:ellipsis;}
.ft-maruburi, .ft-maruburi * { font-family: "RenaissanceRebond", "MaruBuri" !important; }
.ft-maruburi-hype, .ft-maruburi-hype * { font-family: "MaruBuri" !important; }
.ft-pretendard, .ft-pretendard * { font-family: "Pretendard-Regular" !important; }
.cursor-pointer {cursor: pointer;}
.cursor-default {cursor: default;}
b { display: inline-block; font-weight: 700; }
.fs-12 { font-size: 1.2rem !important; }
.fs-14 { font-size: 1.4rem !important; }

/* 텍스트방향 */
.txt-left {text-align:left;}
.txt-right {text-align:right;}
.txt-center {text-align:center;}

/* 위치조절 */
.pull-left {float:left; }
.pull-left.final_ui {float:left; padding-bottom:300px; }
.pull-right {float:right;}

/* 줄수설정  */
.text-line-two {display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; height:40px; line-height:20px; overflow:hidden; text-overflow:ellipsis;}

/* 테두리설정 */
.bd0 {border:0 !important;}
.bt0 {border-top:0 !important;}
.br0 {border-right:0 !important;}
.bb0 {border-bottom:0 !important;}
.bl0 {border-left:0 !important;}
.bt1 { border-top: 1px solid #D8D8D8 !important; }
.bb1 { border-bottom: 1px solid #D8D8D8 !important; }
.bl1 { border-left: 1px solid #D8D8D8 !important; }
.br1 { border-right: 1px solid #D8D8D8 !important; }

/* 여백설정 */
.menuPd { padding-top: 8.6rem }

.p0 { padding: 0 !important; }
.pt0 { padding-top: 0 !important; }
.pb0 { padding-bottom: 0 !important }
.pl0 { padding-left: 0 !important }
.pr0 { padding-right: 0 !important }

.pt2 { padding-top: 2px !important; }
.pt4 { padding-top: 4px !important; }
.pt8 { padding-top: 8px !important; }
.pt10 { padding-top: 10px !important; }
.pt12 { padding-top: 12px !important; }
.pt16 { padding-top: 16px !important; }
.pt20 { padding-top: 20px !important; }
.pt24 { padding-top: 24px !important; }
.pt28 { padding-top: 28px !important; }
.pt32 { padding-top: 32px !important; }
.pt40 { padding-top: 40px !important; }
.pt48 { padding-top: 48px !important; }

.pb2 { padding-bottom: 2px !important; }
.pb4 { padding-bottom: 4px !important; }
.pb8 { padding-bottom: 8px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb12 { padding-bottom: 12px !important; }
.pb16 { padding-bottom: 16px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb24 { padding-bottom: 24px !important; }
.pb28 { padding-bottom: 28px !important; }
.pb32 { padding-bottom: 32px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb48 { padding-bottom: 48px !important; }

.pl2 { padding-left: 2px !important; }
.pl4 { padding-left: 4px !important; }
.pl8 { padding-left: 8px !important; }
.pl10 { padding-left: 10px !important; }
.pl12 { padding-left: 12px !important; }
.pl16 { padding-left: 16px !important; }
.pl18 { padding-left: 18px !important; }
.pl20 { padding-left: 20px !important; }
.pl24 { padding-left: 24px !important; }
.pl28 { padding-left: 28px !important; }
.pl48 { padding-left: 48px !important; }

.pr2 { padding-right: 2px !important; }
.pr4 { padding-right: 4px !important; }
.pr8 { padding-right: 8px !important; }
.pr10 { padding-right: 10px !important; }
.pr12 { padding-right: 12px !important; }
.pr16 { padding-right: 16px !important; }
.pr20 { padding-right: 20px !important; }
.pr24 { padding-right: 24px !important; }
.pr28 { padding-right: 28px !important; }
.pr48 { padding-right: 48px !important; }

.mt2 { margin-top: 2px !important; }
.mt4 { margin-top: 4px !important; }
.mt8 { margin-top: 8px !important; }
.mt10 { margin-top: 10px !important; }
.mt12 { margin-top: 12px !important; }
.mt16 { margin-top: 16px !important; }
.mt20 { margin-top: 20px !important; }
.mt24 { margin-top: 24px !important; }
.mt28 { margin-top: 28px !important; }
.mt48 { margin-top: 48px !important; }

.rn_mb0 { margin-bottom: 0px !important; }
.mb2 { margin-bottom: 2px !important; }
.mb4 { margin-bottom: 4px !important; }
.mb8 { margin-bottom: 8px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb12 { margin-bottom: 12px !important; }
.mb16 { margin-bottom: 16px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb24 { margin-bottom: 24px !important; }
.mb28 { margin-bottom: 28px !important; }
.mb32 { margin-bottom: 32px !important; }

.ml2 { margin-left: 2px !important; }
.ml4 { margin-left: 4px !important; }
.ml8 { margin-left: 8px !important; }
.ml10 { margin-left: 10px !important; }
.ml12 { margin-left: 12px !important; }
.ml16 { margin-left: 16px !important; }
.ml18 { margin-left: 18px !important; }
.ml20 { margin-left: 20px !important; }
.ml24 { margin-left: 24px !important; }
.ml28 { margin-left: 28px !important; }

.mr2 { margin-right: 2px !important; }
.mr4 { margin-right: 4px !important; }
.mr8 { margin-right: 8px !important; }
.mr10 { margin-right: 10px !important; }
.mr12 { margin-right: 12px !important; }
.mr16 { margin-right: 16px !important; }
.mr20 { margin-right: 20px !important; }
.mr24 { margin-right: 24px !important; }
.mr28 { margin-right: 28px !important; }

/* 디스플레이 */
.d-block { display: block; }
.d-flex { display: flex; }
.d-inline { display: inline; }
.d-inlineB { display: inline-block; }
.j-center { justify-content: center; }
.j-between { justify-content: space-between; }
.j-start { justify-content: start; }
.j-end { justify-content: end; }
.j-around { justify-content: space-around; }
.a-center { align-items: center; }
.a-start { align-items: flex-start; }
.a-end { align-items: flex-end; }
.d-flex-column { flex-direction: column; }
.flex-wrap { flex-wrap: wrap; }

/* 레이아웃 */
.col { padding: 0 8px; } 
.col:first-child { padding-left: 0; } 
.col:last-child { padding-right: 0; } 
.col_10 { width: 10% !important; } 
.col_20 { width: 20% !important; } 
.col_25 { width: 25% !important; } 
.col_30 { width: 30% !important; } 
.col_32 { width: 31.5% !important; } 
.col_33 { width: 33.333% !important; } 
.col_40 { width: 40% !important; } 
.col_45 { width: 45% !important; } 
.col_50 { width: 50% !important; } 
.col_50.pr-3 { width: 50%; padding-right: 3px; } /* 패널이 하나일때 */
.col_55 { width: 55% !important; } 
.col_60 { width: 60% !important; } 
.col_70 { width: 70% !important; } 
.col_75 { width: 75% !important; } 
.col_80 { width: 80% !important; } 
.col_90 { width: 90% !important; } 
.col_100 { width: 100% !important; } 
.col_leftFix { width: calc(100% - 550px); } 
.col_rightFix { width: 550px; } 

.w100p { width: 100%; }
.w20 { width: 2rem; }
.w100 { width: 10rem; }
.w120 { width: 12rem; }
.w150 { width: 15rem; }
.w180 { width: 18rem; }
.w200 { width: 20rem; }
.w738 { width: 73.8rem; margin: 0 auto; }
.w462 { width: 46.2rem; }
.w462b { width: calc(100% - 462px); }
.h100p { height: 100%; }

/* 색상설정 */
.theme_col { color: var(--theme-color); }
.theme_bgCol { background-color: var(--theme-color); }
.theme_border { border-color: var(--theme-color); }
.theme_hover:hover { color: var(--theme-color); }
.theme_bgHov:hover { background-color: var(--theme-color) !important; }
.theme_bgHov:active { background-color: #A62E3E !important; }

/* 캘린더 UI 수정 */
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover { border-color: var(--theme-color) !important; background: var(--theme-color) !important; }
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight { color: var(--theme-color) !important; }

/* 공통 페이지 UI */
.paging .paging-num .page span { line-height: 4.1rem; }
.page-title-type1.board-header p, .page-title-type1 p, .page-title-type1 .title { margin-bottom: 16px; font-weight: bold; font-size: 24px; line-height: 120%; color: #000; }
.board-gallery-type1 .board-box > a { width: 100%; }



body { position: relative; }
.main { padding-top: 13.6rem; width: 100%; min-height: 100vh; overflow-x: hidden; }
.container { margin-top: 22rem !important; margin-bottom: 12rem; }
.stn { width: 100%; }
.cont { max-width: 120rem; height: 100%; margin: 0 auto; }
.cnt_left { width: calc(100% - 74rem); }
.cnt_right { width: 74rem;  padding: 3.2rem 0; }
.cnt_left, .cnt_right { padding-top: 8.6rem; }
.mobile { display: none; }


/* header */
header { position: fixed; top: 0; left: 0; width: 100%; padding: 1.6rem 0 0 0; border-bottom: 1px solid #D8D8D8; z-index: 1; background-color: #fff; transition: top 0.5s; z-index: 10; }
header * { font-family: "RenaissanceRebond", "Pretendard-Regular" !important; }
header.gnb { display: block !important; }
header.down { top: -100%; }
.logo img { width: auto; height: 4.6rem;  }
.menu_1dp { gap: 11.4rem; }
.menu_1dp li { position: relative; font-size: 1.5rem; font-weight: 700; cursor: pointer; }
.menu_1dp > li { padding: 6px 0; }
.menu_1dp li.active { border-bottom: 2px solid var(--theme-color); }
.menu_1dp .nav_combo { display: none; position: absolute; left: 0; top: 100%; width: max-content; min-width: 142px; background: #fff; padding: 16px 0; box-shadow: 0 4px 12px #0000001F; }
.menu_1dp li > a { font-weight: 800; }
.menu_1dp .nav_combo a { padding: 4px 1.6rem; margin-bottom: 8px; width: 100%; font-size: 1.3rem; line-height: 2rem; }
.menu_1dp .nav_combo a:last-child { margin: 0; }
.menu_1dp .nav_combo a:hover { background: #F7F7F7; }
.menu_1dp .nav_combo a:active { background: #F1EFE3; }
.menu_1dp li:not(.active):hover .nav_combo { display: flex; flex-direction: column; }
.menu_2dp { gap: 6.4rem; border-top: 1px solid #eee; }
.menu_2dp li a { padding: 16px 0; line-height: 2.1rem; }
.menu_2dp li a:active { color: #A62E3E; }
.menu_2dp li a.active span { font-weight: 700; color: var(--theme-color); }
.menu_2dp li a:hover span { color: #CF3A4E; }
.btn_quote:not(.not_button) { position: relative; padding: 0 2.4rem 0 5.2rem; height: 4.2rem; border: 1px solid #D8D8D8; border-radius: 3rem; font-size: 1.5rem; font-weight: 800; line-height: 4rem; }
.btn_quote:not(.not_button)::before { content:''; display: block; position: absolute; left: 1.6rem; top: 50%; transform: translateY(-50%); width: 3.2rem; height: 3.2rem; background: url("/images/skin/renaissance/igo_subPaper_2x.png") no-repeat; background-size: 100%; background-position: top; }
.btn_quote:not(.not_button):hover::before { background-position: bottom; }
.btn_quote:not(.not_button):hover { background-color: var(--theme-color); color: #fff; border-color: var(--theme-color) }
.btn_quote:not(.not_button):active { background-color: #A62E3E; color: #fff; border-color: #A62E3E; }
.user_menu_wrap { gap: 2.4rem; }
.user_menu_wrap li img { display: inlie-block !important; width: 2.4rem; height: auto; }
.user_menu_wrap li span { line-height: 2.4rem; }
.nation_select_wrap a { position: relative; padding:0 1.1rem; line-height: 2.4rem; font-weight: 800; color: #0000004D; }
.nation_select_wrap a:first-child { padding-left: 0; }
.nation_select_wrap a:last-child { padding-right: 0; }
.nation_select_wrap a.active { color: #000000C7; }
.nation_select_wrap a::after { content:''; display: block; position:absolute; right:0; top: 50%; transform: translateY(-50%); width: 2px; height: 1rem; background-color: #D8D8D8; }
.nation_select_wrap a:last-child::after { display: none; }
.user { position: relative; }
.user .user_combo { display: none; position: absolute; top: calc(100% + 8px); left: calc(50% - 1.5rem); transform: translateX(-50%); padding: 8px 1.2rem; background: #fff; border: 1px solid #B2B2B2; box-shadow: 0 4px 1.2rem #0000001F; z-index: 1; }
.user.active .user_combo { display: flex; flex-direction: column; width: max-content; }
.user .user_combo a { font-size: 1.3rem; line-height: 2rem; }
.user .user_combo a:hover { font-weight: 800; }

/* pc slider header depth2 */
.pc-2depth-slider { position: fixed; top: -100%; left: 50%; transform: translateX(-50%); padding: 9px 40px; width: 100%; max-width: 128rem; background: #fff; z-index:2; border: 1px solid #D8D8D8; border-top: 0px; transition: top 0.65s; }
.pc-2depth-slider.down { top:0; }
.pc-2depth-slider ul { gap: 3.2rem; padding: 1.6rem; width: max-content; }
.pc-2depth-slider ul li a { font-size: 1.4rem; line-height: 2.1rem; }
.pc-2depth-slider ul li.active a { color:var(--theme-color); font-weight: 700; }
.pc-2depth-slider * { font-family: "RenaissanceRebond", "Pretendard-Regular" !important; }

/* footer */
footer { position: relative; padding: 7.2rem 0; background: #222824; }
.footer { position: relative; }
footer * { color: #fff; }
.ft_left { gap: 7.2rem; }
.ft_right { text-align: right; }
.btm_logo { width: 23.6rem; }
.btm_logo img { width: 100%; height: 100%; filter: brightness(0) invert(1); }
footer .kor_logo { font-size: 2rem; line-height: 2.4rem; }
.cmpy_info_wrap { width: 100%; max-width: calc(100% - 302px); }
.cmpy_info_url { padding: 3.2rem 0; gap: 3.2rem; }
.cmpy_info_url li a { font-size: 1.5rem; font-weight: 800; letter-spacing: -0.3px; }
.cmpy_info_url li:last-child a { color: #CAC3A3; }
.cmpy_name { padding-bottom: 1.3rem; font-weight: 700; color: #FFFFFFC7; }
.cmpy_info p { padding-bottom: 8px; }
.cmpy_info p span { color: #FFFFFFC7; font-weight: 400; }
.ft_right > div p { position: relative; padding-right: 1.8rem; color: #FFFFFF94; }
.ft_right > div p::after { content: ''; position: absolute; right: 0; top: 50%; transform: translateY(-50%); display: block; width: 2px; height: 1.2rem; background: #fff; } 
.ft_right ul { padding-left: 1.6rem; gap: 1.6rem; }
.ft_right ul li a { height: 1.6rem; width: 1.6rem; filter: brightness(0) invert(1); vertical-align: middle; }
.btn_quote_bottom { margin-top: 4.8rem; padding: 2.8rem 0; width: 12rem; height: 12rem; border: 1px solid #FFFFFF94; border-radius: 8px; text-align: center; }
.btn_quote_bottom img { width: 3.2rem; height: auto; }
.btn_quote_bottom p { padding-top: 8px; font-size: 1.5rem; font-weight: 800; }
.copyright { clear: both; padding-top: 1.3rem; font-size: 1.3rem; font-weight: 400; color: #FFFFFF94; }

/* float menu */
.float_menu { position: fixed; top: 22rem; right: 4%; opacity: 0; pointer-events: none; transition: opacity 0.5s, right 0.5s; z-index: 50; }
.float_menu.active { right: 5%; opacity: 1; pointer-events: all; }
.float_menu .sns_wrap { display: block; margin-bottom: 1.3rem; padding: 2.4rem 1.5rem; border: 1px solid #EEEEEE; background: #FFFFFFB2; backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); }
.float_menu .sns_wrap li a { margin-bottom: 3.2rem; width: 2.4rem; height: 2.4rem; }
.float_menu .sns_wrap li:last-child a { margin-bottom: 0; }
.ico.insta { background: url('/images/skin/renaissance/img_insta_sub_2x.png') no-repeat center; background-size: 100%; }
.ico.blog { background: url('/images/skin/renaissance/img_blog_sub_2x.png') no-repeat center; background-size: 100%; }
.ico.youtube { background: url('/images/skin/renaissance/img_yutube_sub_2x.png') no-repeat center; background-size: 100%; }
.float_menu .btn_quote_float { display: block; margin: 1.3rem 0; padding: 1rem 0;  width: 5.6rem; height: 5.6rem; background: #191818; color: #fff; text-align: center; font-size: 1.3rem; font-weight: 700; line-height: 1.8rem; }
.float_menu .btn_top { position: relative; margin-top:1.4rem; width: 5.6rem; height: 5.6rem; border: 1px solid #EEEEEE; background: #FFFFFFB2; backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); }
.float_menu .btn_top::after { content:''; position: absolute; top: -1.4rem; left: 50%; transform:  translateX(-50%); display: block; width: 1.6rem; height: 1px; background: #eee; } 
.float_menu .btn_top p { font-weight: 600; font-size: 1rem; color: #000; }

/* 로케이션 */
.location_wrap img { width: 4.4rem; height: auto; }
.location_wrap .list_wrap img { width: 1.5rem; height: auto; }
.location_wrap .list_wrap { gap: 8px; }
.location_wrap .list_wrap p { font-size: 1.5rem; line-height: 2.2rem; }

/* 페이지 인포메이션 */
.page_info_wrap { padding: 3.6rem 0; border-bottom: 2px solid #222; }
.page_info_tit { padding-bottom: 1.6rem; font-size: 3.2rem; line-height: 3.8rem; }
.page_info_txt { line-height: 2.1rem; }

/* input */
.cnt_input, .ctn_select { padding: 9px 28px 9px 8px; width: 100%; border: 1px solid #D8D8D8; font-size: 1.4rem; line-height: 2.1rem; font-weight: 700; color: #000000C7; text-overflow: ellipsis; white-space: nowrap; }
.cnt_input::placeholder { color: #0000004D; }
.cnt_input:disabled, .ctn_select:disabled, .cnt_input:read-only { background: #F7F7F7; }
.txt_notice { position: relative; padding-left: 8px; font-size: 1.2rem; line-height: 1.8rem; color: var(--theme-color); }
.txt_notice::before { content:''; position: absolute; left:0; top: 50%; transform: translateY(-50%); display: block; width: 3px; height: 3px; background: var(--theme-color); }
.ipt_check { cursor: pointer; }
.ipt_check p { display: inline-block; padding-left: 2.8rem; background: url('/images/skin/renaissance/ico_check_2x.png') no-repeat; background-size: 2rem; background-position: 0 bottom; height: 2rem; line-height: 2rem; color: #00000094; }
.ipt_check p b { font-weight: 700; color: #000000C7; }
.ipt_check input:checked + p { background-position: 0 top; }

/* button */
.btn_default { padding: 0 1.6rem; min-width: 4.1rem; height: 4.1rem; line-height: 4rem; border: 1px solid #B2B2B2; background: #fff; cursor: pointer; }
.btn_default:hover { background: #F7F7F7; }
.btn_default:active { background: #F1EFE3; }
.btn_default.w40 { padding:0; display: flex; justify-content: center; align-items: center; width: 4.1rem; }
.btn_default.w40 img { width: 1.333rem; height: auto; }
.btn_default.btn_file { padding: 3.8rem 0; width: 12rem; height: 12rem; text-align: center; }
.btn_default.btn_file span { line-height: 2.1rem; font-weight: 700; color: #00000094; }
.ico_file { display: block; margin: 0 auto; width: 2.4rem; height: 2.2rem; background: url('/images/skin/renaissance/ico_file_upload_2x.png') center no-repeat; background-size: 100%; }
.ico_info { display: block; width: 1.8rem; height: 1.8rem; background:url('/images/skin/renaissance/ico_info_2x.png') center no-repeat; background-size: 100%; }
.btn_default_sm { height: 3.2rem; line-height: 3.2rem; }
.btn_default_sm.btn_delete { min-width: 3.2rem; padding: 0; }
.btn_toggle_desc.off img { position: relative; transform: rotate(180deg); }
.btn_arrow_lg { padding: 1.6rem 3.2rem; background: var(--theme-color); }
.btn_arrow_lg p { padding-left: 4.4rem; background: url('/images/skin/renaissance/ico_btnArrow_2x.png') no-repeat; background-size: 3.2rem 3.2rem; background-position: left center; font-size: 1.5rem; line-height: 3.2rem; color: #fff; }
.btn_arrow_lg:hover { background: #E32C44; box-shadow:  0 4px 12px #0000001F; }
.btn_arrow_lg:active { background: #A62E3E; }
.btn_landing { padding-left: 6rem; width: fit-content; background: url('/images/skin/renaissance/ico_btnArrow_blk_2x.png') no-repeat; background-position: left center; background-size: 4.8rem 4.8rem; }
.btn_landing.download { background-image:url('/images/skin/renaissance/ico_btnDown_blk_2x.png') !important; }
.btn_landing.download:hover { background-image:url('/images/skin/renaissance/ico_btnDown_red_2x.png') !important; }
.btn_landing p { font-size: 2.4rem; line-height: 4.8rem; }
.btn_landing:hover { background: url('/images/skin/renaissance/ico_btnArrow_red_2x.png') no-repeat; background-position: left center; background-size: 4.8rem 4.8rem; }
.btn_landing:hover p { color: var(--theme-color); }
.btn_landing.sm { padding-left: 4.4rem; background-image:url('/images/skin/renaissance/ico_btnArrow_blk_2x.png'); background-size: 3.2rem 3.2rem !important; }
.btn_landing.sm.col-wht { background-image:url('/images/skin/renaissance/ico_btnArrow_2x.png'); }
.btn_landing.sm.col-wht:hover { background-image:url('/images/skin/renaissance/ico_btnArrow_red_sm_2x.png') !important; }
.btn_landing.sm p { font-size: 1.5rem; line-height: 3.2rem; }

.stn_main_tit { font-size: 3.9rem; line-height: 4.6rem; font-family: "RenaissanceRebond", "MaruBuri" !important; color: #000000C7; }
.stn_sub_tit { font-size: 2.4rem; line-height: 3.6rem; font-family: "RenaissanceRebond", "MaruBuri" !important; color: #000000C7; }
.stn_main_desc { font-size: 1.6rem; line-height: 2.4rem; color:#000000C7; }
.stn_main_txt { font-size: 1.4rem; line-height: 2.1rem; color: #00000094 }
.page_main_txt, .page_main_txt * { font-size: 2.4rem; line-height: 3.6rem; }
.page_sub_txt, .page_sub_txt * { font-size: 1.9rem; line-height: 2.8rem; }
.page_etc_txt, .page_etc_txt * { font-size: 1.6rem; line-height: 2.4rem; }

/* 공지 */
.htable-wrap .tbody > ul > li.cell-no .flag.notice { background: #fff !important; }

/* 메인 배너 */
.stn_hero { position: relative; padding-top: 3.2rem; }
.vdo_wrap { position: absolute; left:50%; top:0; transform: translateX(-50%); width: 100%; max-width: 192rem; height: 100%; background: url('/images/skin/renaissance/vdo_main.mp4') center no-repeat; z-index: 0; overflow:hidden; }
.vdo_wrap video { position: relative; transform: scale(1.01); margin-top: 2rem; width: 100%; }
.stn_hero .cont { position: relative; right: -100%; animation: loadAni2 1s 1.4s forwards; }
@keyframes loadAni2 {
	0% { right: -100%; }
	100% { right: 0; }
}

.swp_main .swiper-slide { width: 40.2rem !important; height: 53.5rem !important; transition: transform 0.3s; }

.swp_main .swiper-slide > div { background: #fff; border: 1px solid #D8D8D8; box-shadow: 0 17px 38px #44444433; transition: box-shadow 0.3s; cursor: pointer; transform: rotateY(90deg); animation:cardAni 0.6s 2.5s forwards; }
.swp_main .swiper-slide:nth-of-type(2) > div { animation-delay: 2.7s; }
.swp_main .swiper-slide:nth-of-type(3) > div { animation-delay: 2.8s; }
.swp_main .swiper-slide:nth-of-type(4) > div { animation-delay: 2.9s; }
@keyframes cardAni {
	0% { transform: rotateY(90deg); }
	100% { transform: rotateY(0deg); }
}
.swp_main .swiper-slide .card_wrap { transform: rotateY(0deg); animation:cardAni2 0.6s 2s forwards; }
.swp_main .swiper-slide:nth-of-type(n+5) .card_wrap { display: none; }
.swp_main .swiper-slide:nth-of-type(1) .card_wrap { position: absolute; left:0; top:0;  width: 100%; height: 100%; background:url(/images/skin/renaissance/img_card01.png) no-repeat; background-size: 100%; }
.swp_main .swiper-slide:nth-of-type(2) .card_wrap { position: absolute; left:0; top:0;  width: 100%; height: 100%; background:url(/images/skin/renaissance/img_card02.png) no-repeat; background-size: 100%; animation-delay: 2.2s; }
.swp_main .swiper-slide:nth-of-type(3) .card_wrap { position: absolute; left:0; top:0;  width: 100%; height: 100%; background:url(/images/skin/renaissance/img_card03.png) no-repeat; background-size: 100%; animation-delay: 2.3s; }
.swp_main .swiper-slide:nth-of-type(4) .card_wrap { position: absolute; left:0; top:0;  width: 100%; height: 100%; background:url(/images/skin/renaissance/img_card04.png) no-repeat; background-size: 100%; animation-delay: 2.4s; }
@keyframes cardAni2 {
	0% { transform: rotateY(0deg); }
	100% { transform: rotateY(90deg); }
}
.swp_main .swiper-slide > div { height: 100%; }
.swp_main .swiper-slide:hover { position: relative; transform: translateY(-8px); }
.swp_main .swiper-slide:hover > div { box-shadow: 0 17px 38px #00000052; }
.swp_main .swiper-slide::after { content: ''; display: block; position: absolute; top: 2.4rem; right: 2.4rem; width: 3.35rem; height: 3.35rem; background: url('/images/skin/renaissance/ico_link_2x.png') center no-repeat; background-size: 100%; z-index: 2; opacity: 0; transition: opacity 0.3s; mix-blend-mode: multiply; }
.swp_main .swiper-slide:hover::after { opacity: 1; }
.swp_main .bn_type_01::after, .swp_main .bn_type_03::after { display: none !important; }
.swp_main .swiper-slide img:not(.btn_play) { width: 400px; height: 225px; object-fit: cover; }
.swp_main .swiper-slide a { width: 100%; height: 100%; }
.swp_main .swiper-slide.bn_type_01 img:not(.btn_play) { width: 100%; height: 100%; }
.swp_main .swiper-pagination { position: unset !important; padding-left: 2px !important; width: 3.6rem !important; text-align: left !important; font-size: 1.4rem !important; line-height: 2.2rem !important; z-index: 0; }
.swp_main .swiper-pagination-total {font-weight: 400 !important;  color: #0000004D !important; }
.btn_pause svg:nth-child(1) { display: block; }
.btn_pause svg:nth-child(2) { display: none; }
.btn_pause.on svg:nth-child(1) { display: none; }
.btn_pause.on svg:nth-child(2) { display: block; }

.bn_type_02 .bn_desc { padding: 2.4rem; }
.bn_type { position: relative; padding-left: 3.5rem; font-size: 1.5rem; line-height: 3.2rem; }
.bn_type::before { content: ''; display: block; position: absolute; left:0; top: 0; width: 3.2rem; height: 3.2rem; background-size: 100% !important; }
.bn_type_edu .bn_type::before { background: url('/images/skin/renaissance/ico_edu.png') no-repeat center; } 
.bn_type_resv .bn_type::before { background: url('/images/skin/renaissance/ico_reserve.png') no-repeat center; } 
.bn_type_notice .bn_type::before { background: url('/images/skin/renaissance/ico_notice.png') no-repeat center; } 
.bn_title { font-size: 2.4rem; line-height: 3.6rem; }
.bn_date b { font-size: 1.2rem; font-weight: 700; line-height: 2.2rem; }
.bn_date span { font-size: 1.5rem; line-height: 2.2rem; }
.btn_play .play_img_wrap { position: relative; }
.btn_play .play_img_wrap::before { content:''; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); display: block; width: 6rem; height: 6rem; background: url('/images/skin/renaissance/btn_play_2x.png') no-repeat center; background-size: 100%; opacity: 0; transition: opacity 0.3s; z-index: 1; }
.btn_play:hover .play_img_wrap::before { opacity: 1; }

.bn_type_03 > div { height: 100%; display: flex !important; flex-direction: column; justify-content: space-between; gap: 2.3rem; padding: 2.4rem; cursor: default !important; }
.bn_type_03 a { padding: 0 3.2rem; height: 100%; border: 1px solid #eee; }
.bn_type_03 a:hover { border-color: #d4d4d4; }
.bn_type_03 a span { font-size: 1.5rem; line-height: 2.2rem; font-family: 'MaruBuri'; }
.bn_type_03 a img { width: 3.2rem !important; height: 3.2rem !important; }

/* 메인 - 왜 르네상스일까요? */
.stn_why_renaissance { padding: 16rem 0;
/* background: url('/images/skin/renaissance/img_line_bg_2x.png') no-repeat; */
background-size: 50vw auto; background-position: calc(100% + 1vw) top; }
.stn_why_renaissance .btn_arrow_lg { margin-top: 9rem; }
.stn_why_renaissance .cnt_content > img { width: 14.4rem; height: auto; }
.stn_why_renaissance .cnt_content:nth-of-type(1) { padding-top: 7rem; }
.why_rn_right { position: relative; }
.why_rn_right::before { top: 0; transform: translateY(-100%); height: 21rem; }
.why_rn_right::after { bottom: 0; transform: translateY(100%); height: 16rem; }
.ico_animation { width: 144px; height: 144px; overflow: hidden; }
.ico_animation.on { animation: icoAni 3s steps(59) forwards; }
@keyframes icoAni {
	from { background-position: center 0; }
	to { background-position: center 100%; }
}
.ico_animation.icoAni01 { background: url('/images/skin/renaissance/ani_icon01.png') no-repeat; background-size: 100%; }
.ico_animation.icoAni02 { background: url('/images/skin/renaissance/ani_icon02.png') no-repeat; background-size: 100%; }
.ico_animation.icoAni03 { background: url('/images/skin/renaissance/ani_icon03.png') no-repeat; background-size: 100%; }
.ico_animation.icoAni04 { margin: 0 auto; background-color: #fff !important; border-radius: 100px; border: 1px solid #ddd; width: 160px; height: 160px; background: url('/images/skin/renaissance/ani_icon04.png') no-repeat; background-size: 100%; }
.ico_animation.on.icoAni04 { animation: icoAni 3s steps(60) forwards; }


/* 메인 - 성공사례 */
.stn_success {  }
.stn_success * { color: #fff; }
.stn_success { padding: 14rem; background: #191818; }
.tch_info_wrap {  }
.ux_typing { display: flex; justify-content: flex-start; align-items: flex-start; width: 100%; }
.ux_typing > * { width: 100%; }
.ux_typing .typing-txt { position: relative; }
.ux_typing .typing-txt span { position: relative; display: inline-block; font-size: 2.3rem; font-weight: 400; line-height: 3.6rem; letter-spacing: -1px; font-family: 'MaruBuri'; }
.ux_typing .typing-txt b { margin: 0 4px; }
.ux_typing .typing-txt::after { content: ""; display: inline-block; width: 2px; height: 24px; background-color: var(--theme-color); position: relative; top: 14px; left: 3px; margin-top: -11px; }
.ux_typing .typing-txt.ex { min-height: 7.2rem; }
.ux_typing .typing-txt-fake { position: absolute; top: 0; }
.ux_typing.en .typing-txt.ex { min-height: 11.2rem; }
.ux_typing .typing-txt-fake.ex { position: absolute; top: 0; }
.ux_typing .typing-txt-fake span { position: relative; display: inline-block; font-size: 2.3rem; font-weight: 400; line-height: 3.6rem; letter-spacing: -1px; color: rgba(255, 255, 255, 0.78); opacity: 0.24; font-family: 'MaruBuri'; }
.ux_typing .typing-txt-fake b { margin: 0 4px; }
.ux_typing>p { font-size: 20px; font-weight: 400; line-height: 1.6; letter-spacing: -1px; text-align: left; min-height: 64px; }
.web_br { display: block; }
.ux_typing .typing-txt b { margin: 0 4px; }

.stn_success .swiper-slide { display: flex !important; align-items: center; justify-content: center; }
/* .stn_success .swiper-slide .ux_typing { display: none; } */
.stn_success .swiper-slide.swiper-slide-active .ux_typing { display: block; }
.tch_img_wrap { padding-left: 10rem; }
.tch_img_wrap img { width: 22rem; height: 22rem; }
.swp_success .swiper-slide { background: #191818; }
.swp_btn_wrap { padding-left: 46.2rem; }
.swiper-button-prev2, .swiper-button-next2 { width: 4rem; height: 4rem; border-radius: 8px; border: 1px solid #FFFFFF4D; }

/* 메인 - 프로그램 */
.stn_program {  }
.stn_program .w462 { margin-left: calc(50% - 60rem); padding: 12rem 0 8rem 0; border-right: 1px solid #EEEEEE; }
.stn_program .w462b { width: calc(100% - 46.2rem - (50% - 60rem)) !important; }
.stn_program .stn_main_desc { padding-bottom: 36rem; }
.stn_program .swp_program { padding: 10rem 4rem 6rem 4rem; overflow-x: hidden; }
.stn_program .swp_program .swiper-slide { width: 39.5rem; height: 51.4rem; box-shadow: 0 18px 40px #44444433; }
.stn_program .swp_program .swiper-slide a { width: 100%; height: 100%; }
.stn_program .swp_program .swiper-slide .card_top { position: relative; width: 100%; height: 8rem; background-color: #F1EFE3; background-image: url(/images/skin/renaissance/ico_logo_bgVer_2x.png); background-repeat: no-repeat; background-position: center; background-size: 14.1rem 1.8rem; }
.stn_program .swp_program .swiper-slide .card_top::before { content:''; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 8rem; height: 2px; background: #CAC3A3; }
.stn_program .swp_program .swiper-slide .card_top::after { content:''; position: absolute; top: 50%; right: 0; transform: translateY(-50%); width: 8rem; height: 2px; background: #CAC3A3; }
.stn_program .swp_program .swiper-slide .card_mid { height: calc(100% - 17.6rem); filter: grayscale(1); transition: filter 0.3s; }
.stn_program .swp_program .swiper-slide:hover .card_mid { filter: grayscale(0); }
.stn_program .swp_program .swiper-slide.on .card_mid { filter: grayscale(0); }
/* .stn_program .swp_program .swiper-slide-active .card_mid { filter: grayscale(0); } */
.stn_program .swp_program .swiper-slide .card_bottom { padding: 0 2.4rem 2.4rem 2.4rem; gap: 2.4rem; }
.stn_program .swp_program .swiper-slide .card_bottom p { font-size: 1.6rem; font-weight: 400; line-height: 2.4rem; }
.stn_program .swp_program .swiper-slide .card_bottom p span { display: block; }
.stn_program .swp_program .swiper-slide .card_bottom p span:nth-child(1) { font-size: 1.6rem; font-weight: 700; line-height: 2.4rem; }
.stn_program .swp_program .swiper-slide .card_bottom p span:nth-child(2) { font-size: 3.2rem; font-weight: 500; line-height: 4.8rem; }

/* 메인 - 브로슈어 */
.stn_brochure { padding: 14rem 0; background: #EEEFEC; border-bottom: 1px solid #DFD7B4; }
.stn_brochure .cont { gap: 8rem; }
.stn_brochure .stn_left {  }
.stn_brochure .stn_right { width: 62.6rem; }
.stn_brochure .stn_right .stn_main_txt.ft-maruburi { padding-bottom: 1.6rem; font-size: 1.5rem; }
.stn_brochure .download_wrap { padding-top: 3.2rem; gap: 3.2rem; }

/* 메인 - 서포트 */
.stn_support { padding: 8rem 0 12rem; text-align: center; background: #f7f7f7; }
.stn_support ul {  }
.stn_support ul li { width: 37.2rem; text-align: center; }
.stn_support.en ul li { width: 38.6rem; text-align: center; }
.stn_support .stn_sub_tit { padding: 2.4rem 0; }
.stn_support .stn_main_desc { padding-bottom: 2.4rem; }
.stn_support ul li a:not(.spt_tell), .btn_txt { display: inline-block; padding: 0 3.2rem; line-height: 4.8rem; border-radius: 10rem; background: #191818; color: #fff; font-weight: 800; }
.btn_bank_spt:hover .btn_txt, .btn_mail_spt:hover .btn_txt { background-color: var(--theme-color) !important; }
.btn_bank_spt:active .btn_txt, .btn_mail_spt:active .btn_txt { background-color: #A62E3E !important; }
.stn_support ul li a span, .btn_txt span { color: #fff; font-weight: 800; line-height: 4.8rem; }
a.btn_spt_kakao { padding-left: 6.5rem !important; background-image:url('/images/skin/renaissance/ico_support_kakao_2x.png') !important; background-repeat: no-repeat !important; background-size: 2.5rem 2.4rem !important; background-position: 32px center !important; }
a.btn_spt_call { margin-right: 8px; padding: 0 !important; width: 4.8rem; height: 4.8rem; background-image:url('/images/skin/renaissance/ico_support_phone_2x.png') !important; background-repeat: no-repeat !important; background-size: 2.4rem 2.4rem !important; background-position: center !important; }
a.btn_spt_call:hover { background-image:url('/images/skin/renaissance/ico_support_phone_hover_2x.png') !important; }
a.btn_spt_mail, .btn_mail_spt .btn_txt { color: #FFFFFF80 !important; }
a.btn_spt_bank, .btn_bank_spt .btn_txt { background-image:url('/images/skin/renaissance/ico_support_kb_2x.png') !important; background-repeat: no-repeat !important; background-size: 2.3rem 1.6rem !important; background-position: 103px center !important; }
.btn_spt_bank input, .btn_bank_spt .btn_txt input, .btn_mail_spt .btn_txt input { background: transparent; color: #fff; width: 132px; display: inline-block; vertical-align: middle; font-size: 14px; font-weight: 800; margin-left: 2px; cursor: default; }
a.btn_spt_mail span, a.btn_spt_bank span, .btn_bank_spt .btn_txt span , .btn_mail_spt .btn_txt span { padding-left: 2px; }


/* 견적요청하기 */
.form_tit_wrap { padding-bottom: 8px; border-bottom: 1px solid #D8D8D8; }
.form_tit { font-size: 2.4rem; line-height: 3.6rem; }
.input_tit { font-size: 1.2rem; line-height: 1.8rem; font-weight: 700; color: #00000094; }
.ico_input_tit { width: 1.1rem; height: 1.3rem; background: url('/images/skin/renaissance/ico_logo_mini_red.png') no-repeat center; background-size: 100%; }
.form_area { max-width: 54.8rem; }
.policy_desc { padding: 1.6rem; border: 1px solid #DDDDDD; border-radius: 8px; font-size: 1.3rem; color: #00000061; }
.policy_desc b { font-size: 1.4rem; }
.agree_wrap { padding-bottom: 5.2rem; }
.quote_submit_wrap { padding-bottom: 18rem; border-top: 2px solid #222; }
.ui-datepicker .ui-datepicker-title { line-height: 21px; }

/* 계약현황 */
.stn_cont_info .info-card { background-color: #f3f2e9; border: 1px solid #D8D8D8; border-radius: 8px; margin-top: 2.4rem; padding: 1.6rem; width: 100%; display: grid; grid-template-columns: 1fr 1fr 1fr; row-gap: 8px; column-gap: 2rem; }
.stn_cont_info .info-item { font-size: 1.2rem; color: #333; }
.stn_cont_info .info-item.item01 { grid-column: 1 / 4; }
/* .stn_cont_info .info-item.item02 { grid-column: 1 / 3; } */
.stn_cont_info .label { color: #666; font-weight: normal; margin-bottom: 5px; }
.stn_cont_info .value { font-weight: bold; font-size: 1.6rem; color: #333; }
.stn_cont_info .info-card .divider { grid-column: span 3; border-top: 1px solid #ddd; }

.stn_cont_item .cont { border-bottom: 2px solid #000; }
.stn_cont_item .data-table { width: 100%; border-collapse: collapse; font-size: 1.2rem; }
.stn_cont_item .data-table th { padding: 8px 4px; text-align: center; overflow-wrap: break-word; hyphens: manual; }
.stn_cont_item .data-table td { padding: 8px 4px; text-align: center; }
.stn_cont_item .data-table th { background-color: #fff; font-weight: 700; border-top: 2px solid #000; border-bottom: 1px solid #ccc; border-right: 1px solid #ccc; }
.stn_cont_item .data-table td { border-right: 1px solid #ccc; border-bottom: 1px solid #ccc; }
.stn_cont_item .data-table th:last-child, .stn_cont_item .data-table td:last-child { border-right: none; }
.stn_cont_item .data-table td:nth-child(3) { padding: 8px; text-align: left; } 
.stn_cont_purchase { padding-bottom: 20rem; }
.table_wrap { overflow-x: auto; }
.table_wrap table { min-width: 73.8rem; }

/* 마이페이지 */
.stn_mypage_edit { padding-bottom: 20rem; }
.stn_mypage_edit .form_wrap { border-top: 1px solid #D8D8D8; }
.stn_mypage_edit .profile_wrap { margin-top: 3.2rem; padding: 1.6rem 0; border-top: 2px solid #000; }
.stn_mypage_edit .profile_pic{ gap: 1.2rem; } 
.stn_mypage_edit .pic_edit { position: relative; width: 8rem; height:  8rem; border: 1px solid #EEEEEE; border-radius: 100%; padding: 3px; box-shadow: 0 4px 8px #00000014; } 
.stn_mypage_edit .pic_edit img { width: 100%; height: auto; } 
.stn_mypage_edit .pic_edit button { position: absolute; right: 0; bottom: 0; width: 2.4rem; height: 2.4rem; background-color: #fff; border-radius: 4rem; box-shadow: 0 4px 8px #00000014; } 
.stn_mypage_edit .pic_edit button img { width: 1rem; height: auto; }
.stn_mypage_edit .profile_name { font-size: 1.6rem; font-weight: 700; line-height: 2rem; color: #40454E; }
.sub-member-info { max-width: 73.8rem; margin: 0 auto; }



/* 콘텐츠 페이지 공통항목 */
.content_page_hero { width: 100%; height: 33.34vw; background-size: 120%; animation: bgLoadAni 6s forwards; }
@keyframes bgLoadAni {
    0% { background-size: 120%; }
    100% { background-size: 100%; }
}

.cont_inner { max-width: 1200px; margin: 0 auto; }
.cont_inner .location_wrap { margin-top: 1.6rem; margin-bottom: 4.2rem; padding: 0 !important; }

.hero_desc_wrap { display: flex; flex-direction: column; justify-content: center; height: 100%; }
.hero_main_tit { position: relative; padding-bottom: 4rem; font-size: 4.8rem; line-height: 5.8rem; font-weight: 400; color: #fff; opacity: 0; animation: textLoadAni 1s 0.3s forwards; }
.hero_sub_tit { position: relative; opacity: 0; animation: textLoadAni 1s 0.5s forwards; }
.hero_sub_tit p { font-size: 2.4rem; line-height: 3.6rem; font-weight: 400; color: #fff; }
.hero_sub_txt { padding-top: 4rem; font-size: 1.6rem; line-height: 2.4rem; font-weight: 400; color: #fff; opacity: 0; animation: textLoadAni 1s 0.8s forwards; }
@keyframes textLoadAni {
    0% { opacity: 0; transform: translateY(36px); }
    100% { opacity: 1; transform: translateY(0); }
}
.hero_sub_tit .typingTxt { display:inline; }
.hero_sub_tit .typingFloat { position: absolute; left:0; top:0; z-index: 1; }
.hero_sub_tit .typingBg { position: relative; z-index: 0; opacity: 0.6; }
.typed-cursor{ position: relative; display:inline-block; margin-left: -2px; font-size:3.2rem !important; line-height: 3.2rem; color: var(--theme-color) !important; z-index: 2; }

.type_tit { position: relative; margin: 0 auto; width: 72.8rem; font-size: 3.2rem; line-height: 3.8rem; }
.type_tit .typingTxt { display:inline; color: #00000094; }
.type_tit .typingFloat { position: absolute; left:0; top:0; z-index: 1; }
.type_tit .typingBg { position: relative; z-index: 0; opacity: 0.6; }
.type_tit .typed-cursor{ position: relative; display:inline-block; margin-left: -3px; font-size:3.2rem !important; line-height: 2rem; color: var(--theme-color) !important; z-index: 2; }

.page_main {  }
.page_main .cont {  }
.page_main_tit { margin-bottom: 4.8rem; padding-bottom: 2.4rem; border-bottom: 1px solid #B2B2B2; text-align: center; font-size: 4rem; line-height: 4.8rem; font-weight: 400; word-break: keep-all; }
.page_sub_desc { max-width: 80rem; margin: 0 auto; }
.page_sub_desc p, .page_sub_desc p span { font-size: 2.4rem; font-weight: 400; line-height: 3.6rem; }
.page_sub_desc .d-flex { gap: 4.8rem; }
.dotline_top, .dotline_bottom { position: relative; width:100%; height:4.8rem; }
.dotline_top::before { content:''; position: absolute; left:0; top:0; width: 9.6rem; height: 100%; border-top: 1px dashed #000; border-left: 1px dashed #000; }
.dotline_top::after { content:''; position: absolute; right:0; top:0; width: 9.6rem; height: 100%; border-top: 1px dashed #000; border-right: 1px dashed #000; }
.dotline_bottom::before { content:''; position: absolute; left:0; bottom:0; width: 9.6rem; height: 100%; border-bottom: 1px dashed #000; border-left: 1px dashed #000; }
.dotline_bottom::after { content:''; position: absolute; right:0; bottom:0; width: 9.6rem; height: 100%; border-bottom: 1px dashed #000; border-right: 1px dashed #000; }

.page_main .cnt_data ul { padding-bottom: 9.6rem; }

.list_dot { position: relative; padding-left:1.2rem; font-size: 1.6rem; line-height: 2.4rem; }
.list_dot::before { content:''; position: absolute; left:0; top: 1rem; width: 3px; height: 3px; background: var(--theme-color); border-radius: 10px; }


.program_hero { position: relative; }
.program_hero .cont_inner { position: absolute; top:50%; left:50%; transform: translate(-50%, -50%); width: 100%; }
.program_hero_tit, .program_hero_tit * { font-size: 3.2rem; line-height: 4.8rem; color: #fff; }
.program_hero_txt, .program_hero_txt * { font-size: 1.4rem; line-height: 2.1rem; color: #fff; }


/* EN */
.ft-proxima, .ft-proxima * { font-family: "ProximaNova" !important; }
.stn_program.en .swp_program .swiper-slide .card_mid { height: calc(100% - 25.6rem); }
.stn_program.en .swp_program .swiper-slide .card_bottom p span:nth-child(1) { min-width: 104px; }
.stn_support.en .stn_main_desc { font-size: 1.5rem; }







