@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+KR:wght@300;400;500;700&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Marcellus:wght@300;400;500;700&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Sorts+Mill+Goudy&display=swap');


@import "//cdn.jsdelivr.net/npm/font-kopub@1.0/kopubdotum.min.css";
@import "//cdn.jsdelivr.net/npm/font-kopub@1.0/kopubbatang.min.css";
@import url('https://webfontworld.github.io/kopus/KoPubWorldDotum.css'); 
@import url('https://webfontworld.github.io/kopus/KoPubWorldBatang.css');
/* @font-face {
  font-family: 'KoPubWorld_Batang_Pro_Bold';
  src: url('../fonts/KoPubWorld_Batang_Pro_Bold.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'KoPubWorld_Batang_Pro_m';
  src: url('../fonts/KoPubWorld_Batang_Pro_Medium.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'KoPubWorld_Batang_Pro_l';
  src: url('../fonts/KoPubWorld_Batang_Pro_Light.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
} */ 

@import url("https://fonts.googleapis.com/css2?family=Nanum+Myeongjo:wght@400;700;800&display=swap");

@import url('https://fonts.cdnfonts.com/css/minion-pro');

@import url('https://webfontworld.github.io/pretendard/Pretendard.css');

/********************************************************** 
* Fonts
***********************************************************/ 
.notoserif *,.notoserif {
    font-family: 'Noto Serif KR', serif;
	-webkit-font-smoothing: antialiased;
    letter-spacing: -0.02em;
}
.marcellus *,.marcellus {
    font-family: 'Marcellus','Noto Sans KR', sans-serif;
}
.notosans *,.notosans {
    font-family: 'Noto Sans KR', sans-serif;
}
.kopubworlddotum *,.kopubworlddotum {
    font-family: 'KoPubWorldDotum', sans-serif;
}
.kopubworldbatang *,.kopubworldbatang {
   font-family: 'KoPubWorldBatang', sans-serif;
   /* font-family: 'KoPubWorld_Batang_Pro_l'; */
} 
/* .kopubworldbatang .medium { font-family: 'KoPubWorld_Batang_Pro_m'; }
.kopubworldbatang.medium { font-family: 'KoPubWorld_Batang_Pro_m'; } */
/* .kopubworldbatang *,.kopubworldbatang {
 font-family: 'KoPubWorld_Batang_Pro_l';
} */
/* .kopubworldbatang .medium {font-family: 'KoPubWorld_Batang_Pro_Bold';}
.kopubworldbatang.medium {font-family: 'KoPubWorld_Batang_Pro_Bold';}
 */
.sortsmillgoudy *,.sortsmillgoudy {
    font-family: 'Sorts Mill Goudy', sans-serif;
}
.nanummyeongjo *,.nanummyeongjo {
    font-family: 'Nanum Myeongjo', serif;
}
.minionpro *,.minionpro {
    font-family: 'Minion Pro', sans-serif;
}
.pretendard *,.pretendard {
    font-family: 'Pretendard';
}



/********************************************************** 
* Common
***********************************************************/ 
:root { /* 다크모드 막기 */
    color-scheme: light only !important;
}
@media (prefers-color-scheme: dark) { /* 다크모드 막기 */
    html,
    body {
        background: #fff !important;
        background-color: #fff !important;
    }
    :root { /* 다크모드 막기 */
        color-scheme: light only !important;
    }
}
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
html, body{
	font:300 16px/1.3 'Pretendard Variable', 'Noto Sans KR', sans-serif;
	color: #000;
    overflow-x: hidden !important;
    /*overflow-y: hidden;*/
}
html.open{overflow-y:hidden !important;}
body.open{width:100%; height:100%; overflow-y:hidden !important;}
body{
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: auto;
}
body *{box-sizing: border-box; word-break: keep-all;}
a:hover, a:link, a:visited, a:active {text-decoration: none; color: inherit;}
hr{border:0; margin:0; width:100%; height:1px; background: #fff;}
button{font-family: inherit;}
address {font-style: normal;}

/*
input{
  ios대응<!-- 주석해야됌 -->
  appearance: none;
  -webkit-appearance: none;
  -webkit-border-radius: 0;
}
*/
select{
  /*ios대응*/
  -webkit-appearance: none;
  -moz-appearance: none; 
  appearance: none;

  /*화살표 배경 넣기*/
/*  background: url('../img/select-down-arrow.svg') no-repeat 93% 50% rgba(255, 255, 255, 0); background-size:12px;화살표 select박스 오른쪽 중앙 배치,배경 흰색*/
}
select::-ms-expand{ 
  display:none; /* 화살표 없애기 for IE10, 11*/
}
a { -webkit-tap-highlight-color:transparent;}
* {-webkit-tap-highlight-color:transparent;}
img {max-width: 100%; vertical-align: top;}

/********************************************************** 
* scrollbar - 스크롤 바
***********************************************************/
/* width */
::-webkit-scrollbar {
	width:8px; height:100vh; background:transparent;
}

/* Track */
::-webkit-scrollbar-track {
    display:none;
    background-color:transparent;
    border-radius:2rem;
    box-shadow:inset 0px 0px 5px transparent;
}

/* Handle */
::-webkit-scrollbar-thumb {
	width:8px; background-color:rgba(0, 0, 0, 0.7);
	border-radius: 2rem;
	-webkit-border-radius: 2rem;
	-moz-border-radius: 2rem;
	-ms-border-radius: 2rem;
	-o-border-radius: 2rem;
    background-clip:padding-box;
    border:0;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
	background-color:rgba(0, 0, 0, 0.7);
}

.container {padding: 0 65px;}

.dp_ib {display: inline-block;}
.dp_none {display: none;}

.p_r{position:relative;}

body > #preview_item{display:none;}
body > #hd_login_msg{display:none;}

/********************************************************** 
* skip
***********************************************************/ 
#skip a {position: absolute; top: 0; left: -9999px; z-index: 1000;}
#skip a:focus, #skip a:active {display: block; top: 0; left: 0;  width: 100%; padding: 10px 0; background: #345243; color: #fff; text-align: center;}

/********************************************************** 
* hide text
***********************************************************/ 
.blind {font-size: 0; line-height: 0; width: 1px; height: 1px; line-height: 1px; text-align: -9999px; text-indent: -9999px; overflow: hidden; position: absolute; top: 0; left: -9999px;}
.ir_text{display: block; width: 100%; height: 100%; text-indent: -9999em;}

/********************************************************** 
* font-size
***********************************************************/ 
.h1{font-size:2.813rem; line-height: 1.4;}
.h2{font-size:2.5rem; line-height: 1.4;}
.h3{font-size:2.25rem; line-height: 1.4;}
.h4{font-size:1.875rem; line-height: 1.4;}
.h5{font-size:1.563rem; line-height: 1.4;}
.h6{font-size:1.5rem; line-height: 1.4;}

.fz_10{font-size: 0.625rem;}
.fz_11{font-size: 0.688rem;}
.fz_12{font-size: 0.75rem;}
.fz_13{font-size: 0.813rem;}
.fz_14{font-size: 0.875rem;}
.fz_15{font-size: 0.938rem;}
.fz_16{font-size: 1rem; line-height: 1.6;}
.fz_17{font-size: 1.063rem; line-height: 1.6;}
.fz_18{font-size: 1.125rem; line-height: 1.6;}
.fz_19{font-size: 1.188rem; line-height: 1.6;}
.fz_20{font-size: 1.25rem; line-height: 1.6;}
.fz_21{font-size: 1.313rem; line-height: 1.6;}
.fz_22{font-size: 1.375rem; line-height: 1.6;}
.fz_23{font-size: 1.438rem; line-height: 1.6;}
.fz_24{font-size: 1.5rem; line-height: 1.6;}
.fz_25{font-size: 1.563rem; line-height: 1.6;}
.fz_26{font-size: 1.625rem; line-height: 1.6;}
.fz_27{font-size: 1.688rem; line-height: 1.6;}
.fz_28{font-size: 1.75rem; line-height: 1.6;}
.fz_29{font-size: 1.813rem; line-height: 1.6;}
.fz_30{font-size: 1.875rem; line-height: 1.6;}
.fz_31{font-size: 1.938rem; line-height: 1.6;}
.fz_32{font-size: 2rem; line-height: 1.6;}
.fz_33{font-size: 2.063rem; line-height: 1.6;}
.fz_34{font-size: 2.125rem; line-height: 1.6;}
.fz_35{font-size: 2.188rem; line-height: 1.6;}
.fz_36{font-size: 2.25rem; line-height: 1.6;}
.fz_37{font-size: 2.313rem; line-height: 1.6;}
.fz_38{font-size: 2.375rem; line-height: 1.6;}
.fz_39{font-size: 2.438rem; line-height: 1.6;}
.fz_40{font-size: 2.5rem; line-height: 1.6;}
.fz_42{font-size: 2.625rem; line-height: 1.6;}
.fz_43{font-size: 2.688rem; line-height: 1.6;}
.fz_45{font-size: 2.813rem; line-height: 1.6;}
.fz_46{font-size: 2.875rem; line-height: 1.6;}
.fz_47{font-size: 2.9375rem; line-height: 1.6;}
.fz_48{font-size: 3rem; line-height: 1.6;}
.fz_50{font-size: 3.125rem; line-height: 1.4;}
.fz_52{font-size: 3.25rem; line-height: 1.4;}
.fz_55{font-size: 3.438rem; line-height: 1.4;}
.fz_57{font-size: 3.5625rem; line-height: 1.4;}
.fz_59{font-size: 3.688rem; line-height: 1.4;}
.fz_60{font-size: 3.75rem; line-height: 1.4;}
.fz_70{font-size: 4.375rem; line-height: 1.4;}
.fz_72{font-size: 4.5rem; line-height: 1.4;}
.fz_75{font-size: 4.688rem; line-height: 1.4;}
.fz_80{font-size: 5rem; line-height: 1.4;}
.fz_85{font-size: 5.313rem; line-height: 1.4;}
.fz_90{font-size: 5.625rem; line-height: 1.4;}
.fz_95{font-size: 5.938rem; line-height: 1.4;}
.fz_100{font-size: 6.25rem; line-height: 1.4;}
.fz_110{font-size: 6.875rem;}
.fz_120{font-size: 7.5rem;}
.fz_130{font-size: 8.125rem;}
.fz_140{font-size: 8.75rem;}
.fz_150{font-size: 9.375rem;}
.fz_170{font-size: 10.625rem;}
.fz_180{font-size: 11.25rem;}
.fz_200{font-size: 12.5rem;}
.fz_210{font-size: 13.125rem;}
.fz_215{font-size: 13.438rem;}
.fz_220{font-size: 13.75rem;}
.fz_230{font-size: 14.375rem;}
.fz_235{font-size: 14.688rem;}



/********************************************************** 
* font style
***********************************************************/
.ta_c{text-align: center;}
.ta_l{text-align: left;}
.ta_r{text-align: right;}

.light{font-weight: 300;}
.normal{font-weight: 400;}
.medium{font-weight: 500;}
.semibold{font-weight: 600;}
.bold{font-weight: 700;}

.italic{font-style:italic;}


/********************************************************** 
* color
***********************************************************/
.c-w{color:#fff;}
.c-b{color:#000;}
.c-gray {color:#767676;}
.c-010101 {color:#010101;}
.c-a3a3a3 {color:#a3a3a3;}
.c-a7a59d {color:#a7a59d;}
.c-f2f2f3 {color:#f2f2f3;}
.c-f6f6f6 {color:#f6f6f6;}
.c-727272{color:#727272;}
.c-7f7f7f{color:#7f7f7f;}
.c-2d2d2d{color:#2d2d2d;}
.c-252525{color:#252525;}
.c-233d2d{color:#233d2d;}
.c-303030{color:#303030;}
.c-333{color:#333;}
.c-343434{color:#343434;}
.c-363636{color:#363636;}
.c-374326{color:#374326;}
.c-444{color:#444;}
.c-4b3b2b{color:#4b3b2b;}
.c-4e4e4e{color:#4e4e4e;}
.c-455e56{color:#455e56;}
.c-4f6d24{color:#4f6d24;}
.c-535353{color:#535353;}
.c-553819{color:#553819;}
.c-555{color:#555;}
.c-565656{color:#565656;}
.c-595959{color:#595959;}
.c-515c3e{color:#515c3e;}
.c-6d6d6d{color:#6d6d6d;}
.c-6b6b6b{color:#6b6b6b;}
.c-626262{color:#626262;}
.c-676767{color:#676767;}
.c-959595{color:#959595;}
.c-979797{color:#979797;}
.c-60656e{color:#60656e;}
.c-1f3d74{color:#1f3d74;}
.c-4b3b2b{color:#4b3b2b;}
.c-c6a582{color:#c6a582;}
.c-ebebeb{color:#ebebeb;}
.c-edecec{color:#edecec;}
.c-e3e3e3{color:#e3e3e3;}
.c-5580b8{color:#5580b8;}
.c-6a8ec9{color:#6a8ec9;}
.c-698fc0{color:#698fc0;}
.c-7198bd{color:#7198bd;}
.c-8c8c8c{color:#8c8c8c;}
.c-a2aa32{color:#a2aa32;}
.c-bac636{color:#bac636;}
.c-707714{color:#707714;}
.c-919234{color:#919234;}
.c-c83434{color:#c83434;}
.c-004b97{color:#004b97;}
.c-15a53a{color:#15a53a;}
.c-4385b7{color:#4385b7;}
.c-c33c3c{color:#c33c3c;}
.c-c33636{color:#c33636;}
.c-848ca4{color:#848ca4;}
.c-20263c{color:#20263c;}
.special_text{color:#f27434;}

/********************************************************** 
* line-height
***********************************************************/
.lh_1{line-height: 1;}
.lh_11{line-height: 1.1;}
.lh_12{line-height: 1.2;}
.lh_13{line-height: 1.3;}
.lh_14{line-height: 1.4;}
.lh_15{line-height: 1.5;}
.lh_16{line-height: 1.6;}
.lh_17{line-height: 1.7;}
.lh_18{line-height: 1.8;}
.lh_19{line-height: 1.9;}
.lh_2{line-height: 2;}
.lh_21{line-height: 2.1;}
.lh_22{line-height: 2.2;}
.lh_23{line-height: 2.3;}
.lh_24{line-height: 2.4;}

/********************************************************** 
* letter-spacing
***********************************************************/
.ls_p1{letter-spacing:0.01em;}
.ls_p2{letter-spacing:0.02em;}
.ls_p3{letter-spacing:0.03em;}
.ls_p4{letter-spacing:0.04em;}
.ls_p5{letter-spacing:0.05em;}
.ls_p6{letter-spacing:0.06em;}
.ls_p7{letter-spacing:0.07em;}
.ls_p8{letter-spacing:0.08em;}
.ls_p10{letter-spacing:0.1em;}
.ls_p20{letter-spacing:0.2em;}
.ls_p30{letter-spacing:0.3em;}
.ls_p40{letter-spacing:0.4em;}
.ls_p50{letter-spacing:0.5em;}

.ls_0{letter-spacing:0em;}
.ls_1{letter-spacing:-0.01em;}
.ls_2{letter-spacing:-0.02em;}
.ls_3{letter-spacing:-0.03em;}
.ls_4{letter-spacing:-0.04em;}
.ls_5{letter-spacing:-0.05em;}
.ls_10{letter-spacing:-0.1em;}
.ls_11{letter-spacing:-0.11em;}
.ls_12{letter-spacing:-0.12em;}
.ls_13{letter-spacing:-0.13em;}
.ls_14{letter-spacing:-0.14em;}
.ls_15{letter-spacing:-0.15em;}
.ls_20{letter-spacing:-0.2em;}
.ls_25{letter-spacing:-0.25em;}
.ls_30{letter-spacing:-0.3em;}
.ls_40{letter-spacing:-0.4em;}
.ls_50{letter-spacing:-0.5em;}

/********************************************************** 
* margin-bottom
***********************************************************/
.m_5{margin-bottom: 5px;}
.m_10{margin-bottom: 10px;}
.m_15{margin-bottom: 15px;}
.m_20{margin-bottom: 20px;}
.m_30{margin-bottom: 30px;}
.m_40{margin-bottom: 40px;}
.m_50{margin-bottom: 50px;}
.m_60{margin-bottom: 60px;}
.m_80{margin-bottom: 80px;}
.m_100{margin-bottom: 100px;}
.m_120{margin-bottom: 120px;}
.m_160{margin-bottom: 160px;}
.m_200{margin-bottom: 200px;}

/********************************************************** 
* margin-left
***********************************************************/
.ml_10{margin-left: 10px;}
.ml_20{margin-left: 20px;}
.ml_30{margin-left: 30px;}
.ml_40{margin-left: 40px;}

/********************************************************** 
* padding
***********************************************************/
.pd_60{padding: 60px 0;}
.pd_80{padding: 80px 0;}
.pd_100{padding: 100px 0;}
.pd_120{padding: 120px 0;}
.pd_140{padding: 140px 0;}
.pd_160{padding: 160px 0;}
.pd_200{padding: 200px 0;}

/********************************************************** 
* padding-top
***********************************************************/
.pt_5{padding-top: 5px;}
.pt_10{padding-top: 10px;}
.pt_20{padding-top: 20px;}
.pt_30{padding-top: 30px;}
.pt_40{padding-top: 40px;}
.pt_60{padding-top: 60px;}
.pt_80{padding-top: 80px;}
.pt_100{padding-top: 100px;}
.pt_120{padding-top: 120px;}
.pt_140{padding-top: 140px;}
.pt_160{padding-top: 160px;}
.pt_180{padding-top: 180px;}
.pt_200{padding-top: 200px;}
.pt_210{padding-top: 210px;}
.pt_230{padding-top: 230px;}
.pt_250{padding-top: 250px;}

/********************************************************** 
* padding-left
***********************************************************/
.pl_4px{padding-left:4px;}
.pl_5px{padding-left:5px;}
.pl_10{padding-left:10%;}
.pl_11{padding-left:11%;}
.pl_12{padding-left:12%;}
.pl_13{padding-left:13%;}
.pl_14{padding-left:14%;}
.pl_15{padding-left:15%;}
.pl_16{padding-left:16%;}
.pl_17{padding-left:17%;}
.pl_18{padding-left:18%;}
.pl_19{padding-left:19%;}
.pl_20{padding-left:20%;}
.pl_21{padding-left:21%;}
.pl_22{padding-left:22%;}
.pl_23{padding-left:23%;}
.pl_24{padding-left:24%;}
.pl_25{padding-left:25%;}
.pl_26{padding-left:26%;}

.m_auto{
    margin-left: auto;
    margin-right: auto;
}
.mx300{max-width: 300px;}
.mx400{max-width: 400px;}
.mx500{max-width: 500px;}
.mx520{max-width: 520px;}
.mx540{max-width: 540px;}
.mx550{max-width: 550px;}
.mx570{max-width: 570px;}


/********************************************************** 
* icon
***********************************************************/
.n_icon { display:inline-block; position:relative; width:1.1875rem; height:1.1875rem; background:url("../img/n_icon.png") 50% 50%/100% no-repeat; }
.check_icon { display:inline-block; position:relative; width:1rem; height:0.625rem; background:url("../img/check_icon.png") 50% 50%/100% no-repeat; }
.check_icon2 { display:inline-block; position:relative; width:1.375rem; height:1.375rem; background:url("../img/check_icon2.png") 50% 50%/100% no-repeat; }
.check_icon3 { display:inline-block; position:relative; width:1.9375rem; height:1.9375rem; background:url("../img/check_icon3.png") 50% 50%/100% no-repeat; }
.check_icon4 { display:inline-block; position:relative; width:1.375rem; height:1.375rem; background:url("../img/check_icon4.png") 50% 50%/100% no-repeat; }
.blog_icon { display:inline-block; position:relative; width:1.5rem; height:1.25rem; margin-right:0.5rem; background:url("../img/blog_icon.png") 50% 50%/100% no-repeat; }
.youtube_icon { display:inline-block; position:relative; width:1.125rem; height:0.813rem; margin-right:0.5rem; background:url("../img/youtube_icon.svg") 50% 50%/100% no-repeat; }
.close_icon{ display:inline-block; position:relative; width:1.875rem; height:1.875rem; background:url("../img/close_btn.svg") 50% 50%/100% no-repeat; }
.close_icon2{ display:inline-block; position:relative; width:0.875rem; height:0.875rem; background:url("../img/close_btn2.svg") 50% 50%/100% no-repeat; }
.text_popup_slide_icon{ display:inline-block; position:relative; width:1.125rem; height:0.938rem; background:url("../img/text_popup_slide_icon.png") 50% 50%/100% no-repeat; }
.more_btn_arrow{ display:inline-block; position:relative; width:0.75rem; height:0.625rem; background:url("../img/main_more_arrow.svg") 50% 50%/100% no-repeat; }
.award_cup_icon{ display:inline-block; position:relative; width:1.3125rem; height:1.3125rem; background:url("../img/award_cup_icon.png") 50% 50%/100% no-repeat; }
.winner_icon{ display:inline-block; position:relative; width:6.375rem; height:2.1875rem; background:url("../img/main_winner_icon.png") 50% 50%/100% no-repeat; }
.iaward_icon{ display:inline-block; position:relative; width:1.8125rem; height:2.125rem; background:url("../img/main_iaward_icon_v3.png") 50% 50%/100% no-repeat; }
.naward_icon{ display:inline-block; position:relative; width:4rem; height:1.5rem; background:url("../img/naward_icon.png") 50% 50%/100% no-repeat; }
.gdweb_icon{ display:inline-block; position:relative; width:1.9375rem; height:3rem; background:url("../img/main_gdweb_icon.png") 50% 50%/100% no-repeat; }
.download_icon{ display:inline-block; position:relative; width:0.875rem; height:0.875rem; background:url("../img/download_icon.png") 50% 50%/100% no-repeat; }
.arrow_icon{ display:inline-block; position:relative; width:1rem; height:0.875rem; background:url("../img/arrow_icon.svg") 50% 50%/100% no-repeat; }
.arrow_icon_w{ display:inline-block; position:relative; width:1rem; height:0.875rem; background:url("../img/arrow_icon_w.svg") 50% 50%/100% no-repeat; }
.ft_insta_icon{ display:inline-block; position:relative; width:1.625rem; height:1.625rem; background:url("../img/ft_insta_icon.png") 50% 50%/100% no-repeat; }
.ft_blog_icon{ display:inline-block; position:relative; width:1.75rem; height:1.5rem; background:url("../img/ft_blog_icon.png") 50% 50%/100% no-repeat; }

/********************************************************** 
* flex-box
***********************************************************/
.flex_row{display: flex; }
.flex_row.fw{flex-wrap:wrap; }
.flex_row.al_fs{display: flex; align-items: flex-start;}
.flex_row.al_fe{display: flex; align-items: flex-end;}
.flex_row.center{display: flex; align-items: center;}
.flex_row.jc_center{justify-content: center;}
.flex_row.jc_fs{justify-content: flex-start;}
.flex_row.jc_fe{justify-content: flex-end;}
.flex_row.sb{justify-content:space-between;}
.flex_row.sa{justify-content:space-around;}
.flex_row.se{justify-content:space-evenly;}
.fd_c{flex-direction:column;}

.column_half{width: 50%;}
.column_half_40{width: 40%;}
.column_third{width: 33.3333%;}
.column_third_30{width: 30%;}
.column_quarter{width: 25%;}
.column_fifth{width: 20%;}
.column_sixth{width: 16.666666%;}

.container-1600{position:relative; width:100%; max-width:1600px; padding:0; margin-left:auto; margin-right:auto;}
.container-1580{position:relative; width:100%; max-width:1580px; padding:0; margin-left:auto; margin-right:auto;}
.container-1500{position:relative; width:100%; max-width:1500px; padding:0; margin-left:auto; margin-right:auto;}
.container-md{width: 100%; max-width: 1440px; margin-left: auto; margin-right: auto; padding:0 40px; position: relative;}
.container-sm{width: 100%; max-width: 1400px; margin-left: auto; margin-right: auto; padding:0 40px; position: relative;}
.container-1400{width: 100%; max-width: 1400px; margin-left: auto; margin-right: auto; padding:0; position: relative;}
.container-1300{width: 100%; max-width: 1300px; margin-left: auto; margin-right: auto; padding:0; position: relative;}
.container-1200{width: 100%; max-width: 1240px; margin-left: auto; margin-right: auto; padding:0; position: relative;}
.container-xs{width: 100%; max-width: 1100px; margin-left: auto; margin-right: auto; padding:0; position: relative;}
.container-800{width: 100%; max-width: 800px; margin-left: auto; margin-right: auto; padding:0; position: relative;}

.pc_cont_1440{display:block; opacity:1; visibility:visible;}
.m_cont_1440{display:none; opacity:0; visibility:hidden;}

.pc_cont_1280{display:block; opacity:1; visibility:visible;}
.m_cont_1280{display:none; opacity:0; visibility:hidden;}

.pc_cont_1024{display:block; opacity:1; visibility:visible;}
.m_cont_1024{display:none; opacity:0; visibility:hidden;}
.pc_cont_1024_in{display:inline-block; opacity:1; visibility:visible;}
.m_cont_1024_in{display:none; opacity:0; visibility:hidden;}

.pc_cont{display:block; opacity:1; visibility:visible;}
.m_cont{display:none; opacity:0; visibility:hidden;}

.pc_cont_960{display:block; opacity:1; visibility:visible;}
.m_cont_960{display:none; opacity:0; visibility:hidden;}
.pc_cont_960_in{display:inline-block; opacity:1; visibility:visible;}
.m_cont_960_in{display:none; opacity:0; visibility:hidden;}

.pc_cont_640{display:block; opacity:1; visibility:visible;}
.m_cont_640{display:none; opacity:0; visibility:hidden;}

.pc_cont_480{display:block; opacity:1; visibility:visible;}
.m_cont_480{display:none; opacity:0; visibility:hidden;}
.pc_cont_480_in{display:inline-block; opacity:1; visibility:visible;}
.m_cont_480_in{display:none; opacity:0; visibility:hidden;}

.pc_cont_434{display:block; opacity:1; visibility:visible;}
.m_cont_434{display:none; opacity:0; visibility:hidden;}
.pc_cont_434_flex{display:flex; opacity:1; visibility:visible;}
.m_cont_434_flex{display:none; opacity:0; visibility:hidden;}

.pc_cont_400{display:block; opacity:1; visibility:visible;}
.m_cont_400{display:none; opacity:0; visibility:hidden;}

.pc_cont_376{display:block; opacity:1; visibility:visible;}
.m_cont_376{display:none; opacity:0; visibility:hidden;}


/********************************************************** 
* card-motion - 텍스트 효과
***********************************************************/
.card-motion figure { position:relative; overflow:hidden; background:none; }
.card-motion figure img { opacity:0; -webkit-clip-path:polygon(0 0, 0 0, 0 100%, 0 100%); clip-path:polygon(0 0, 0 0, 0 100%, 0 100%); -webkit-transition:clip-path 1.5s cubic-bezier(.19, 1, .22, 1), opacity 1.5s ease 200ms, -webkit-clip-path 1.5s cubic-bezier(.19, 1, .22, 1); transition:clip-path 1.5s cubic-bezier(.19, 1,.22,1), opacity 1.5s ease 200ms, -webkit-clip-path 1.5s cubic-bezier(.19, 1, .22, 1); }

.card-motion.animate figure img { opacity:1; -webkit-clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%); clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%); }


/********************************************************** 
* reveal - 텍스트 효과
***********************************************************/
.reveal { transition:transform 0.8s ease-out, opacity 0.8s ease-out; will-change:transform, opacity; transition-delay: .1s;}
.fade-in { opacity:0; }
.fade-up { transform:translateY(50px); opacity:0; }
.fade-down { transform:translateY(-50px); opacity:0; }
.fade-left { transform:translateX(-100px); opacity:0; }
.fade-right { transform:translate(50%,-0%); opacity:0; }
.active.fade-in { opacity:1; }
.active.fade-up { transform:translateY(0); opacity:1; }
.active.fade-down { transform:translateY(0); opacity:1; }
.active.fade-left { transform:translateX(0); opacity:1; }
.active.fade-right { transform:translate(0,-0%); opacity:1; }
.reveal.highlight:before { width:0%; transition:width 0.8s ease-in-out; }
.reveal.highlight.active:before { width:100%; }

@media (max-width:639px) {
    /*.fade-left { transform:translateY(50px); opacity:0; }
    .fade-right { transform:translateY(50%); opacity:0; }
    .active.fade-left { transform:translateY(0); opacity:1; }
    .active.fade-right { transform:translateY(-0%); opacity:1; }*/
}

.active.delay_100{transition-delay: .1s}
.active.delay_200{transition-delay: .2s}
.active.delay_300{transition-delay: .3s}
.active.delay_400{transition-delay: .4s}
.active.delay_500{transition-delay: .5s}
.active.delay_600{transition-delay: .6s}
.active.delay_700{transition-delay: .7s}
.active.delay_800{transition-delay: .8s}
.active.delay_900{transition-delay: .9s}
.active.delay_1000{transition-delay: 1.0s}
.active.delay_1100{transition-delay: 1.1s}
.active.delay_1200{transition-delay: 1.2s}
.active.delay_1400{transition-delay: 1.4s}
.active.delay_1600{transition-delay: 1.6s}
.active.delay_1800{transition-delay: 1.8s}
.active.delay_2000{transition-delay: 2.0s}
.active.delay_2100{transition-delay: 2.1s}
.active.delay_2200{transition-delay: 2.2s}
.active.delay_2300{transition-delay: 2.3s}
.active.delay_2400{transition-delay: 2.4s}
.active.delay_2500{transition-delay: 2.5s}
.active.delay_2600{transition-delay: 2.6s}
.active.delay_2700{transition-delay: 2.7s}
.active.delay_2800{transition-delay: 2.8s}
.active.delay_2900{transition-delay: 2.9s}
.active.delay_3000{transition-delay: 3.0s}
.active.delay_3500{transition-delay: 3.5s}
.active.delay_4000{transition-delay: 4.0s}



/********************************************************** 
* more_btn
***********************************************************/
.more_btn01{position:relative; width:auto; margin:2.5rem 0 0;}
.more_btn01 > a{position:relative; width:160px; padding:1rem 1.5rem; color:#fff; background-color:#000; display:inline-block; overflow:hidden; border-radius:50px;}
.more_btn01 > a:hover{
    color:#000;
    background-color:transparent;
    transition: background 0.1s 0.1s ease;
    -webkit-transition: background 0.1s 0.1s ease;
    -moz-transition: background 0.1s 0.1s ease;
    -ms-transition: background 0.1s 0.1s ease;
    -o-transition: background 0.1s 0.1s ease;
}
.more_btn01 > a > p{position:relative; width:100%; display:flex; justify-content:center; align-items:center;}
.more_btn01 > a > p > span{position:relative; display:inline-block; z-index:2;}
.more_btn01 > a > p > span + span{margin-left:0.8rem;}
.more_btn01 > a::after{
    content:''; position:absolute; top:-1rem; left:-1rem; width:calc(100% + 2rem); height:calc(100% + 2rem); background-color:#fff; z-index:1;
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0, 1);
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transition: transform 0.8s cubic-bezier(0.19,1,0.22,1);
    transition: transform 0.8s cubic-bezier(0.19,1,0.22,1);
}
.more_btn01 > a:hover::after{
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1)
}


/********************************************************** 
* smooth-scroll
***********************************************************/
.smooth-scroll{position:relative; overflow:hidden;}


/********************************************************** 
* header
***********************************************************/
.main-header {
    position:fixed; top:0; left:0; width: 100%; height:auto; z-index:15;
    transition: top 0.5s ease; 
    -webkit-transition: top 0.5s ease; 
    -moz-transition: top 0.5s ease; 
    -ms-transition: top 0.5s ease; 
    -o-transition: top 0.5s ease;
}
/*.main-header.nav-up{top:-101%;}*/
.main-header.active{background: #fff;}
.main-header.active .hamberger02:after{background: #000;}
.main-header.active .hamberger02:before{background: #000;}
.main-header.active .main_cont02  .hamberger02 .bar:after{background: #000;}

.ht-inner {
    position:relative; width:100%; height:auto; 
    margin-left: auto; margin-right: auto; 
    padding:1rem 4rem; background-color:#fff; 
    display: flex; justify-content: space-between; align-items: center; 
    transition: 0.3s ease-in-out; 
    -webkit-transition: 0.3s ease-in-out; 
    -moz-transition: 0.3s ease-in-out; 
    -ms-transition: 0.3s ease-in-out; 
    -o-transition: 0.3s ease-in-out;
}
.ht-inner.main_cont02{background-color:transparent; display: flex; align-items: center;}
.open .ht-inner{background-color:transparent;}
.ht-inner__left, .ht-inner__right {position:relative; width:20%; height:100%; display: flex; align-items: center;}
.ht-inner__right{justify-content: flex-end; gap:0 2rem;}
.ht-inner__center{width:60%; display:flex; justify-content:center; align-items:center;}
.ht-inner__center .logo{display: flex; align-items: center; justify-content: center}
.logo {width:auto;}
.logo > a > .logo01{display:none;}
.logo > a > .logo02{display:none;}
.logo > a > .logo01.active{display: block;}
.logo > a > .logo02.active{display: block;}
.open .logo > a > .logo01{display:none;}
.open .logo > a > .logo02{display:none;}
.open .main_cont02 .logo > a > .logo01{display:none;}
.open .main_cont02 .logo > a > .logo02{display:block;}


/********************************************************** 
* 전화 버튼
***********************************************************/
.m_call_btn{position:relative; width:2.6rem; height:2.6rem; background: url(../img/call_icon.png)0 0%/100% no-repeat;}
.main_cont02 .m_call_btn{background: url(../img/call_icon_w.png)0 100%/100% no-repeat;}
.open .m_call_btn{background: url(../img/call_icon_w.png)0 100%/100% no-repeat;}
.m_call_btn > a{display:block; width:100%; height:100%;}


/********************************************************** 
* header_menu - 헤더 센터 메뉴
***********************************************************/
.header_menu{position:relative; width: auto; padding: 0.5rem 1.2rem; border: 1px solid #d4d4d4; border-radius: 50px; background-color: #fff; }
.header_menu > ul{position:relative; width:100%; gap:0;}
.header_menu_li{position:relative; width:auto; padding:0.25rem 1.25rem; display:flex; justify-content:center; align-items:center;}
.header_menu_li.on{background-color: #f0f0f0; border-radius: 50px;}
.header_menu_li > a{position:relative; color:#000; /*display:flex; justify-content:center; align-items:center;*/}
.header_menu_li > a > span{margin-right:0.4rem;}
.header_menu_li.on > a > span{margin-right:0rem;}
.main_cont02 .header_menu{border: 1px solid #fff; background-color:transparent;}
.main_cont02 .header_menu_li.on{background-color: #9c9c9c;}
.main_cont02 .header_menu_li > a{color:#fff;}
/*.header_menu_li > a::after{
    content:''; position:absolute; bottom:-5px; left:0; width:100%; border-bottom:1px solid #000; 
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: scale(0, 1);
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transition: transform 0.8s cubic-bezier(1, 0, 0, 1);
    transition: transform 0.8s cubic-bezier(1, 0, 0, 1);
}
.main_cont02 .header_menu_li > a::after{
    border-bottom:1px solid #fff; 
}
.header_menu_li > a:hover::after{
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1)
}*/


/********************************************************** 
* 헤더 프로젝트 문의 버튼
***********************************************************/
.h_contact_btn{
    position:relative; width:auto; border-radius:50px; background-color:#105d4e; border:1px solid #105d4e; overflow:hidden;
    transition: 0.5s ease;
    -webkit-transition: 0.5s ease;
    -moz-transition: 0.5s ease;
    -ms-transition: 0.5s ease;
    -o-transition: 0.5s ease;
}
.h_contact_btn:hover{border-top-left-radius:0px; border-top-right-radius:25px; border-bottom-left-radius:25px; border-bottom-right-radius:0px;}
.h_contact_btn > a{
    position:relative; width:auto; display:inline-block; padding:0.5rem 1.5rem;
}




/********************************************************** 
* login
***********************************************************/
.login_wrap {display:none; position:relative; width: auto; z-index:16;}
.open .login_wrap {display:block;}
.login_wrap .login_menu{position: relative; width: 100%; padding:0 0;}
.login_wrap .login_menu_item{position:relative; display:inline-block; padding:0 0.8rem; color:#fff !important;}
.login_wrap .login_menu_item:first-child::after{content:''; position:absolute; top:28%; right:0; width:1px; height:50%; background:#fff;}



/********************************************************** 
* gnb
***********************************************************/
.gnb-inner{display:flex !important;}
.gnb-menu-list{position:relative; overflow: hidden;}
.gnb-menu-depth1{position:relative; width:100%; margin:0 auto; overflow:hidden;}


/********************************************************** 
* 텍스트 팝업 슬라이드
***********************************************************/
.text_popup_wrap{
    position:fixed; 
    top:76%; left:4rem; 
    width:1.85rem; height:1.85rem;
    background-color:#000;
    border-radius:100px;
    display:flex; justify-content:center; align-items:center;
    overflow:hidden;
    transition: width 0.6s ease;
    -webkit-transition: width 0.6s ease;
    -moz-transition: width 0.6s ease;
    -ms-transition: width 0.6s ease;
    -o-transition: width 0.6s ease;
    z-index:11;
}
.text_popup_wrap.open{width:14.5rem;}
.text_popup_btn{position:relative; width:1.85rem; height:100%; display:flex; flex-direction:column; justify-content:center; align-items:center;}
.text_popup_btn > div{width:100%; height:100%; display:flex; justify-content:center; align-items:center; cursor:pointer;}
.text_popup_wrap .text_popup_btn_open{display:flex;}
.text_popup_wrap .text_popup_btn_open > i{margin-left:-2px;}
.text_popup_wrap .text_popup_btn_close{display:none;}
.text_popup_wrap.open .text_popup_btn_open{display:none;}
.text_popup_wrap.open .text_popup_btn_close{display:flex;}
.text_popup_slide_wrap{position:relative; width:calc(100% - 2rem); height:100%; overflow:hidden; display:flex; flex-direction:column; justify-content:center; align-items:flex-start;}
.text_popup_slide{
    position:relative; width:42rem; height:100%; display:flex; justify-content:flex-end; align-items:center;
    transform: translateX(15%) translateZ(0);
    -webkit-transform: translateX(15%) translateZ(0);
    -moz-transform: translateX(15%) translateZ(0);
    -ms-transform: translateX(15%) translateZ(0);
    -o-transform: translateX(15%) translateZ(0);
    animation: text_popup_slide 18s cubic-bezier(0,0,0,0) infinite;
    -webkit-animation: text_popup_slide 18s cubic-bezier(0,0,0,0) infinite;
    -moz-animation: text_popup_slide 18s cubic-bezier(0,0,0,0) infinite;
    -ms-animation: text_popup_slide 18s cubic-bezier(0,0,0,0) infinite;
    -o-animation: text_popup_slide 18s cubic-bezier(0,0,0,0) infinite;
}
.text_popup_slide_box{margin:0 2rem; display:flex; justify-content:flex-start; align-items:center;}
.text_popup_slide_box > a{display:flex; justify-content:flex-start; align-items:center;}
.text_popup_slide_box > a > i{margin-right:8px;}
.text_popup_slide_box > a > p{}

@keyframes text_popup_slide{
    0%{
        transform: translateX(15%) translateZ(0);
        -webkit-transform: translateX(15%) translateZ(0);
        -moz-transform: translateX(15%) translateZ(0);
        -ms-transform: translateX(15%) translateZ(0);
        -o-transform: translateX(15%) translateZ(0);
    }
    100%{
        transform: translateX(-105%) translateZ(0);
        -webkit-transform: translateX(-105%) translateZ(0);
        -moz-transform: translateX(-105%) translateZ(0);
        -ms-transform: translateX(-105%) translateZ(0);
        -o-transform: translateX(-105%) translateZ(0);
    }
}
@-webkit-keyframes text_popup_slide{
    0%{
        transform: translateX(15%) translateZ(0);
        -webkit-transform: translateX(15%) translateZ(0);
        -moz-transform: translateX(15%) translateZ(0);
        -ms-transform: translateX(15%) translateZ(0);
        -o-transform: translateX(15%) translateZ(0);
    }
    100%{
        transform: translateX(-105%) translateZ(0);
        -webkit-transform: translateX(-105%) translateZ(0);
        -moz-transform: translateX(-105%) translateZ(0);
        -ms-transform: translateX(-105%) translateZ(0);
        -o-transform: translateX(-105%) translateZ(0);
    }
}


/********************************************************** 
* 모바일 상단 배너
***********************************************************/
.m_header_banner_wrap{
    display:none; position:relative; width:100%; background-color:#000; padding:0.5rem 0;
    transition: transform 0.5s ease;
    -webkit-transition: transform 0.5s ease;
    -moz-transition: transform 0.5s ease;
    -ms-transition: transform 0.5s ease;
    -o-transition: transform 0.5s ease;
}
.open .m_header_banner_wrap{
    transform: translateY(-101%) translateZ(0);
    -webkit-transform: translateY(-101%) translateZ(0);
    -moz-transform: translateY(-101%) translateZ(0);
    -ms-transform: translateY(-101%) translateZ(0);
    -o-transform: translateY(-101%) translateZ(0);
}
.m_header_banner{position:relative; width:100%;}
.m_header_banner > .swiper-wrapper{transition-timing-function: linear;}
.m_header_banner{width:auto !important; padding:0 4rem;}



/********************************************************** 
* 퀵메뉴 - pc
***********************************************************/
.quick_wrap{
    position:fixed; bottom:4rem; right:2.5rem; width:3.125rem; padding-top:0; opacity:0; z-index:14; pointer-events:none;
    animation: bouncing1 .7s infinite alternate;
    -webkit-animation: bouncing1 .7s infinite alternate;
    -moz-animation: bouncing1 .7s infinite alternate;
    -ms-animation: bouncing1 .7s infinite alternate;
    -o-animation: bouncing1 .7s infinite alternate;
    transition: 0.4s ease;
    -webkit-transition: 0.4s ease;  
    -moz-transition: 0.4s ease;  
    -ms-transition: 0.4s ease;  
    -o-transition: 0.4s ease;
}
.quick_wrap.scrolled{opacity:1; pointer-events:auto;}
.open .quick_wrap{display:none;}
.quick_menu_wrap{
    position:relative; 
}
.quick_menu{position:relative; width:100%; height:100%; display:flex; flex-direction:column; justify-content:center; align-items:center; gap: 0;}
.quick_menu_list{
    position:relative; width:3.125rem; height:3.125rem; margin:0.25rem 0; opacity:1; border-radius:100%;
    display:flex; flex-direction:column; justify-content:center; align-items:center;
}

.quick_menu_list > a{position:relative; width:100%; height:100%; text-align:center; display:flex; justify-content:center; align-items:center; gap:0; overflow:hidden; color:#000; }
.quick_icon{
    position:relative; display:block; width:3.125rem; height:3.125rem; 
}
.quick_icon.quick_icon_youtube{background: url(../img/quick_youtube.png) 50% 50%/100% no-repeat;}
.quick_icon.quick_icon_blog{background: url(../img/quick_blog.png) 50% 50%/100% no-repeat;}
.quick_icon.quick_icon_insta{background: url(../img/quick_insta.png) 50% 50%/100% no-repeat;}
.quick_wrap .quick_menu_list:hover .quick_icon.quick_icon_youtube{background: url(../img/quick_youtube.png) 50% 50%/100% no-repeat;}
.quick_wrap .quick_menu_list:hover .quick_icon.quick_icon_blog{background: url(../img/quick_blog.png) 50% 50%/100% no-repeat;}
.quick_wrap .quick_menu_list:hover .quick_icon.quick_icon_insta{background: url(../img/quick_insta.png) 50% 50%/100% no-repeat;}

.top_btn_wrap{
    position:relative; text-align:center; margin:0.8rem 0 0; z-index:3; opacity:0;
    transition: opacity 0.5s ease;
    -webkit-transition: opacity 0.5s ease;
    -moz-transition: opacity 0.5s ease;
    -ms-transition: opacity 0.5s ease;
    -o-transition: opacity 0.5s ease;
}
.top_btn_wrap.scrolled{opacity:1;}
.top_btn_wrap > div{position:relative; width:100%; height:100%; display:inline-block; cursor:pointer;}

@keyframes bouncing1 {
    0%{
        transform:translate3d(0,-15px,0);
        -webkit-transform:translate3d(0,-15px,0);
        -moz-transform:translate3d(0,-15px,0);
        -ms-transform:translate3d(0,-15px,0);
        -o-transform:translate3d(0,-15px,0);
    }
    100%{
        transform:translate3d(0,0,0);
        -webkit-transform:translate3d(0,0,0);
        -moz-transform:translate3d(0,0,0);
        -ms-transform:translate3d(0,0,0);
        -o-transform:translate3d(0,0,0);
    }
}


/********************************************************** 
* 퀵메뉴 - 모바일
***********************************************************/
.radial_quick_icon{position:relative; display:block; width:2.5rem; height:2.5rem; }
.radial_quick_icon.radial_quick_icon_call{background: url(../img/m_quick_icon_call.png) 50% 50%/100% no-repeat;}
.radial_quick_icon.radial_quick_icon_insta{background: url(../img/m_quick_icon_insta.png) 50% 50%/100% no-repeat;}
.radial_quick_icon.radial_quick_icon_contact{width:2.8rem; height:2.8rem; background: url(../img/m_quick_icon_contact.png) 50% 50%/100% no-repeat;}
.radial_quick_icon.radial_quick_icon_blog{background: url(../img/m_quick_icon_blog.png) 50% 50%/100% no-repeat;}
.radial_quick_icon.radial_quick_icon_youtube{background: url(../img/m_quick_icon_youtube.png) 50% 50%/100% no-repeat;}

.radial_quick_wrap{
    position:fixed; bottom:0; left:calc(50% - 2rem); 
    width:4rem; height:4rem; 
    outline:none; border:none; border-radius:100%; z-index:100;
}
.radial_quick_wrap.q_open{
    bottom:0; left:0; width:100%; height:100%; border-radius:0;
}
.radial_quick_wrap.gnb_open{display:none;}
.radial_quick_wrap.q_open.gnb_open{display:none;}
.radial_quick_dimmed{
    position:absolute; top:0; bottom:0; left:0; right:0; background-color:rgba(0, 0, 0, 0.5); opacity:0; z-index:1;
}
.radial_quick_wrap.q_open .radial_quick_dimmed{opacity:1;}
.radial_quick_menu_wrap{
    position:absolute; bottom:-8rem; left:calc(50% - 13rem); width:26rem; height:26rem; opacity:0;
    transform:rotate(-112deg) scale(0.2) translateZ(0); 
    -webkit-transform:rotate(-112deg) scale(0.2) translateZ(0); 
    -moz-transform:rotate(-112deg) scale(0.2) translateZ(0); 
    -ms-transform:rotate(-112deg) scale(0.2) translateZ(0); 
    -o-transform:rotate(-112deg) scale(0.2) translateZ(0); 
    transition: 0.2s cubic-bezier(.215,.61,.355,1);
    -webkit-transition: 0.2s cubic-bezier(.215,.61,.355,1); 
    -moz-transition: 0.2s cubic-bezier(.215,.61,.355,1); 
    -ms-transition: 0.2s cubic-bezier(.215,.61,.355,1); 
    -o-transition: 0.2s cubic-bezier(.215,.61,.355,1); 
    background: url(../img/m_quick_menu_bg.png) 50% 100%/100% no-repeat; z-index:2;
}
.radial_quick_wrap.q_open .radial_quick_menu_wrap{
    opacity:1;
    transform:rotate(0deg) scale(1) translateZ(0); 
    -webkit-transform:rotate(0deg) scale(1) translateZ(0); 
    -moz-transform:rotate(0deg) scale(1) translateZ(0); 
    -ms-transform:rotate(0deg) scale(1) translateZ(0); 
    -o-transform:rotate(0deg) scale(1) translateZ(0); 
}
.radial_quick_menu_btn{
    position:absolute; bottom:2rem; left:calc(50% - 2rem); width:4rem; height:4rem; outline:none;
    border:none; border-radius:100%; box-shadow:0px 0px 6px 2px rgba(0, 0, 0, 0.3);
    transition: 0.2s cubic-bezier(.215,.61,.355,1);
    -webkit-transition: 0.2s cubic-bezier(.215,.61,.355,1); 
    -moz-transition: 0.2s cubic-bezier(.215,.61,.355,1); 
    -ms-transition: 0.2s cubic-bezier(.215,.61,.355,1); 
    -o-transition: 0.2s cubic-bezier(.215,.61,.355,1); 
    animation: bouncing2 .7s infinite alternate;
    -webkit-animation: bouncing2 .7s infinite alternate;
    -moz-animation: bouncing2 .7s infinite alternate;
    -ms-animation: bouncing2 .7s infinite alternate;
    -o-animation: bouncing2 .7s infinite alternate;
    background: url(../img/m_quick_menu_toggle.png) 50% 100%/100% no-repeat; z-index:2;
}
.radial_quick_wrap.q_open .radial_quick_menu_btn{
    bottom:1rem; left:calc(50% - 4rem); width:8rem; height:8rem;
    animation: none;
    -webkit-animation: none;
    -moz-animation: none;
    -ms-animation: none;
    -o-animation: none;
}
.radial_quick_menu_btn:focus,
.radial_quick_menu_btn:active{outline:none; border:none;}

.radial_quick_menu{
    position:relative; width:100%; height:100%;
    transform:rotate(-112deg) translateZ(0); 
    -webkit-transform:rotate(-112deg) translateZ(0); 
    -moz-transform:rotate(-112deg) translateZ(0); 
    -ms-transform:rotate(-112deg) translateZ(0); 
    -o-transform:rotate(-112deg) translateZ(0); 
    transition: 0.2s cubic-bezier(.215,.61,.355,1);
    -webkit-transition: 0.2s cubic-bezier(.215,.61,.355,1); 
    -moz-transition: 0.2s cubic-bezier(.215,.61,.355,1); 
    -ms-transition: 0.2s cubic-bezier(.215,.61,.355,1); 
    -o-transition: 0.2s cubic-bezier(.215,.61,.355,1);
}
.radial_quick_wrap.q_open .radial_quick_menu{
    transform:rotate(0deg) translateZ(0); 
    -webkit-transform:rotate(0deg) translateZ(0); 
    -moz-transform:rotate(0deg) translateZ(0); 
    -ms-transform:rotate(0deg) translateZ(0); 
    -o-transform:rotate(0deg) translateZ(0); 
}
.radial_quick_menu > li{position:absolute; }
.radial_quick_menu > li.radial_quick_menu_li_call{top:11.6rem; left:2.7rem;}
.radial_quick_menu > li.radial_quick_menu_li_insta{top:5rem; left:3.6rem;}
.radial_quick_menu > li.radial_quick_menu_li_contact{top:1.6rem; left:11.2rem;}
.radial_quick_menu > li.radial_quick_menu_li_blog{top:5.1rem; left:18.9rem;}
.radial_quick_menu > li.radial_quick_menu_li_youtube{top:11.7rem; left:20.6rem;}
.radial_quick_menu > li > a{position:relative; width:auto; text-align:center; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:0.4rem 0;}
.radial_quick_menu > li.radial_quick_menu_li_contact > a > .txt01{margin:0.2rem 0 0;}
.radial_quick_menu > li > a > .txt01{display:block; color:#fff;}

.radial_quick_contact_btn{
    position:absolute; top:0; left:50%; 
    width:2.8rem; height:2.8rem; 
    border-radius:100%; text-align:center; 
    margin-left:auto; margin-right:auto; 
    display:flex; justify-content:space-evenly; align-items:center; 
    transform:translate(-50%, 0) translateZ(0); 
    -webkit-transform:translate(-50%, 0) translateZ(0); 
    -moz-transform:translate(-50%, 0) translateZ(0); 
    -ms-transform:translate(-50%, 0) translateZ(0); 
    -o-transform:translate(-50%, 0) translateZ(0);
}
.radial_quick_contact_btn > div { 
    width:5px; height:5px; border-radius:100%; 
    display:inline-block; margin:0; 
    background-color:#105d4e; 
    -webkit-animation:sk-bouncedelay 1.4s infinite ease-in-out both; 
    animation:sk-bouncedelay 1.4s infinite ease-in-out both; 
    transition: 0.3s ease;
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -ms-transition: 0.3s ease;
    -o-transition: 0.3s ease;
}
.radial_quick_contact_btn > .bounce1 { -webkit-animation-delay:-0.32s; animation-delay:-0.32s; }
.radial_quick_contact_btn > .bounce2 { -webkit-animation-delay:-0.16s; animation-delay:-0.16s; }

@keyframes bouncing2 {
    0%{
        transform:translate(0, 0) translateZ(0);
        -webkit-transform:translate(0, 0) translateZ(0);
        -moz-transform:translate(0, 0) translateZ(0);
        -ms-transform:translate(0, 0) translateZ(0);
        -o-transform:translate(0, 0) translateZ(0);
    }
    100%{
        transform:translate(0, 10px) translateZ(0);
        -webkit-transform:translate(0, 10px) translateZ(0);
        -moz-transform:translate(0, 10px) translateZ(0);
        -ms-transform:translate(0, 10px) translateZ(0);
        -o-transform:translate(0, 10px) translateZ(0);
    }
}
@-webkit-keyframes sk-bouncedelay {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
    }
    
    40% {
        -webkit-transform: scale(1.0);
    }
}
@keyframes sk-bouncedelay {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    
    40% {
        -webkit-transform: scale(1.0);
        transform: scale(1.0);
    }
}



/********************************************************** 
* 마우스 커서 - 메인
***********************************************************/
.circle-cursor { 
    position:fixed; 
    top:0; left:0; 
    width:4.75rem; height:4.75rem; 
    z-index:100;
    border-radius:50%; 
    -webkit-border-radius:50%; 
    -moz-border-radius:50%; 
    -ms-border-radius:50%; 
    -o-border-radius:50%; 
    transform:translate(-50%, -50%); 
    -webkit-transform:translate(-50%, -50%); 
    -moz-transform:translate(-50%, -50%); 
    -ms-transform:translate(-50%, -50%); 
    -o-transform:translate(-50%, -50%); 
    pointer-events:none; 
}
.circle-cursor.is-expand-slider::after { 
    content:''; 
    position:absolute; 
    top:50%; left:50%; 
    width:100%; height:100%; 
    background: url(../img/circleCursor.png) 50% 50%/99% no-repeat; 
    border-radius:0; 
    -webkit-border-radius:0; 
    -moz-border-radius:0; 
    -ms-border-radius:0; 
    -o-border-radius:0; 
    transform:translate(-50%,-50%) translateZ(0); 
    -webkit-transform:translate(-50%,-50%) translateZ(0); 
    -moz-transform:translate(-50%,-50%) translateZ(0); 
    -ms-transform:translate(-50%,-50%) translateZ(0); 
    -o-transform:translate(-50%,-50%) translateZ(0);
}



.fixed_slide_text_item{position:fixed; bottom:2rem; right:0; width:14rem; overflow:hidden; z-index:3;}
.fixed_slide_text_wrap{position:relative; width:100%; height:100%; overflow:hidden; display:flex; flex-direction:column; justify-content:center; align-items:flex-start;}
.fixed_slide_text{
    position:relative; width:14rem; height:100%; display:flex; justify-content:flex-end; align-items:center;
    transform: translateX(95%) translateZ(0);
    -webkit-transform: translateX(95%) translateZ(0);
    -moz-transform: translateX(95%) translateZ(0);
    -ms-transform: translateX(95%) translateZ(0);
    -o-transform: translateX(95%) translateZ(0);
    animation: fixed_slide_text 10s cubic-bezier(0,0,0,0) infinite;
    -webkit-animation: fixed_slide_text 10s cubic-bezier(0,0,0,0) infinite;
    -moz-animation: fixed_slide_text 10s cubic-bezier(0,0,0,0) infinite;
    -ms-animation: fixed_slide_text 10s cubic-bezier(0,0,0,0) infinite;
    -o-animation: fixed_slide_text 10s cubic-bezier(0,0,0,0) infinite;
}
.fixed_slide_text_box{margin:0 2rem; display:flex; justify-content:flex-start; align-items:center;}
.fixed_slide_text_box > a{display:flex; justify-content:flex-start; align-items:center;}
.fixed_slide_text_box > a > p{border-bottom:1px solid #000;}

@keyframes fixed_slide_text{
    0%{
        transform: translateX(95%) translateZ(0);
        -webkit-transform: translateX(95%) translateZ(0);
        -moz-transform: translateX(95%) translateZ(0);
        -ms-transform: translateX(95%) translateZ(0);
        -o-transform: translateX(95%) translateZ(0);
    }
    100%{
        transform: translateX(-105%) translateZ(0);
        -webkit-transform: translateX(-105%) translateZ(0);
        -moz-transform: translateX(-105%) translateZ(0);
        -ms-transform: translateX(-105%) translateZ(0);
        -o-transform: translateX(-105%) translateZ(0);
    }
}
@-webkit-keyframes fixed_slide_text{
    0%{
        transform: translateX(95%) translateZ(0);
        -webkit-transform: translateX(95%) translateZ(0);
        -moz-transform: translateX(95%) translateZ(0);
        -ms-transform: translateX(95%) translateZ(0);
        -o-transform: translateX(95%) translateZ(0);
    }
    100%{
        transform: translateX(-105%) translateZ(0);
        -webkit-transform: translateX(-105%) translateZ(0);
        -moz-transform: translateX(-105%) translateZ(0);
        -ms-transform: translateX(-105%) translateZ(0);
        -o-transform: translateX(-105%) translateZ(0);
    }
}




/********************************************************** 
* footer
***********************************************************/
.footer{position:relative;width:100%;min-height:415px;padding:100px 40px 90px;background:#111;}
.footer *{box-sizing:border-box;}
.footer a{color:inherit;text-decoration:none;}
.footer .ft_inner{position:relative;width:100%;max-width:1600px;margin:0 auto; display: flex; flex-direction: column; gap: 80px;}
.footer .ft_top{display:flex;width:100%;align-items:flex-start;justify-content:space-between;gap:60px;}
.footer .ft_brand{display:flex;min-width:0;flex-direction:column;align-items:flex-start;}
.footer .f_logo{width:auto;margin:0;}
.footer .f_logo a{display:block;}
.footer .ft_company_info{display:flex;align-items:center;flex-wrap:wrap;margin-top:20px;}
.footer .ft_company_info li{position:relative;color:#888;font-family:Pretendard;font-size:16px;font-style:normal;font-weight:500;line-height:1.5;letter-spacing:-.16px;white-space:nowrap;}
.footer .ft_company_info li+li{margin-left:14px;padding-left:15px;}
.footer .ft_company_info li+li::before{position:absolute;top:50%;left:0;width:1px;height:14px;background:#777;content:"";transform:translateY(-50%);}
.footer .ft_company_info li a{color:#888;transition:color .3s ease;}
.footer .ft_company_info li a:hover{color:#fff;}

.footer .ft_site{position:relative;width:208px;flex:0 0 208px;}
.footer .ft_site_btn{display:flex;width:100%;height:57px;padding:0 30px;align-items:center;justify-content:space-between;border:1px solid #fff;border-radius:8px;background:transparent;color: #FFF; font-family: Pretendard; font-size: 20px; font-style: normal; font-weight: 500; line-height: 2.5; /* 250% */ letter-spacing: -0.2px; text-transform: uppercase;cursor:pointer;}
.footer .ft_site_arrow{display:flex;width:18px;height:18px;align-items:center;justify-content:center;}
.footer .ft_site_arrow img{display:block; height:auto;transition:transform .3s ease;}
.footer .ft_site.is-open .ft_site_arrow img{transform:rotate(180deg);}
.footer .ft_site_list{position:absolute;top:calc(100% + 10px);right:0;z-index:20;display:none;width:100%;overflow:hidden;border:1px solid rgba(255,255,255,.25);border-radius:8px;background:#1b1b1b;box-shadow:0 12px 25px rgba(0,0,0,.25);}
.footer .ft_site.is-open .ft_site_list{display:block;}
.footer .ft_site_list li+li{border-top:1px solid rgba(255,255,255,.1);}
.footer .ft_site_list a{display:flex;min-height:48px;padding:0 20px;align-items:center;color:#aaa;font-family:Pretendard;font-size:14px;font-weight:500;transition:color .3s ease,background .3s ease;}
.footer .ft_site_list a:hover{background:#292929;color:#fff;}

.footer .ft_bottom{display:flex;width:100%;align-items:flex-end;justify-content:space-between; }
.footer .ft_copyright{margin:0;color:#777;font-family:Pretendard;font-size:13px;font-style:normal;font-weight:400;line-height:1.5;letter-spacing:-.13px;}
.footer .ft_sns{display:flex;align-items:center;gap:28px;}
.footer .ft_sns a{display:flex; align-items:center;justify-content:center;transition:opacity .3s ease,transform .3s ease;}
.footer .ft_sns a:hover{opacity:.7;transform:translateY(-3px);}
.footer .ft_sns img{display:block;max-width:100%;max-height:100%;object-fit:contain;}

@media(max-width:1200px){
        html,body{overflow-x:hidden;}

    /* header */
    #header.main-header{width:100%;z-index:9999;}
    .active .content_btn_renew a {padding: 8px 15px; white-space: nowrap;}
    #header.point{background: #045545;}
    #header .ht-inner{height:64px;padding:0 20px;display:flex;align-items:center;justify-content:space-between; }
    #header .ht-inner__left{width:120px;display:flex;justify-content:flex-start;}
    #header .ht-inner__center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}
    #header .ht-inner__right{width:120px;display:flex;justify-content:flex-end;}
    #header .logo a{display:block;position:relative;width:150px;}

    #gnb.gnb-outer{position:fixed;left:0;top:0;width:100%;height:100vh;z-index:9990;}
    #gnb .gnb-inner{height:100%;display:flex;align-items:center;justify-content:center;padding:100px 20px 60px;     background-color: rgba(4, 85, 69, 0.98);}
    #gnb .gnb-menu-list{display:flex;flex-direction:column;gap:30px;text-align:center;}
    #gnb .gnb-menu-depth1 a p{font-size:32px;line-height:1.2;}
    .footer{padding:80px 40px;}
    .footer .ft_company_info{max-width:800px;row-gap:8px;}
}

@media(max-width:768px){
        /* header */
    #header .ht-inner{height:54px;padding:0 16px;}
    #header .ht-inner__left{display:none;}
    #header .ht-inner__right{width:40px;margin-left:auto;}
    #header .ht-inner__center{left:50%;top:50%;transform:translate(-50%,-50%);}
    #gnb .gnb-inner{padding:90px 20px 50px;}
    #gnb .gnb-menu-list{gap:24px;}
    #gnb .gnb-menu-depth1 a p{font-size:16px;}
    .footer{min-height:auto;padding:64px 24px 50px;}
    .footer .ft_top{flex-direction:column;gap:38px;}
    .footer .ft_company_info{align-items:flex-start;flex-direction:column;gap:8px;margin-top:24px;align-items: center;}
    .footer .ft_company_info li{font-size:14px;white-space:normal;}
    .footer .ft_company_info li+li{margin-left:0;padding-left:0;}
    .footer .ft_company_info li+li::before{display:none;}
    .footer .ft_site{width:100%;flex-basis:auto;}
    .footer .ft_site_btn{height:44px;padding:0 22px;font-size:14px; width: fit-content; gap: 10px;margin-inline: auto;}
    .footer .ft_bottom{align-items:flex-start;flex-direction:column-reverse;gap:30px; margin-top: 0;}
    .footer .ft_copyright{font-size:12px;line-height:1.7;}
    .footer .ft_sns{gap:20px; margin-inline: auto;}
    .footer .ft_sns a{width:34px;height:34px;}

    .footer .ft_brand {align-items: center;margin-inline: auto;}
}



/* 리뉴얼 헤더 추가 */
.content_btn_renew a{transition: .5s; padding: 13.5px 31.5px; background: #fff; border-radius: 5px; overflow: hidden; display: flex; align-items: center; justify-content: center; color: #045545; text-align: center; font-family: Pretendard; font-size: 18px; font-style: normal; font-weight: 700; line-height: normal;}
.active .content_btn_renew a{background: #045545; color: #fff;}
.content_btn_renew:hover a{border-top-left-radius: 0px; border-top-right-radius: 25px; border-bottom-left-radius: 25px; border-bottom-right-radius: 0px;}