@charset "utf-8";
/* CSS Document */
@-ms-viewport{width:device-width}
html{-ms-text-size-adjust: 100%;-webkit-text-size-adjust: 100%;}
html,body,div,p,span,a,img,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,form,input,select,textarea,button,label,fieldset,table,tr,td,th,tbody,thead,tfoot,caption,video,strong,em,i,b{margin:0;padding:0; word-break:keep-all;}
ul,ol,li{list-style:none}
img { border:none; max-width:100%}
em,i{ font-style:normal}
table{ border-collapse:collapse; border-spacing:0}
span, strong, a, em, b, input, button, textarea, select{ font-size:inherit; font-family:inherit; font-weight: inherit}
strong,h1,h2,h3,th{ font-weight:inherit}
input[type=button], input[type=submit], button{ cursor:pointer}
select{ max-width:100%}
input[type=text], input[type=button], input[type=submit], input[type=tel], input[type=file], button, label, textarea{ appearance:none;-webkit-appearance:none; }
a, input, button, textarea, select, li{ -webkit-tap-highlight-color:transparent}
a:focus, input:focus, button:focus, textarea:focus, select:focus{ outline:none}
fieldset{border:0;}

a:link{color:#111;text-decoration:none}
a:visited{color:#111;}
a:active{color:#111;}
a:hover{color:#111;text-decoration:none}

*, :after, :before {
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}

html{overflow-x:hidden}
body{font-family: 'Pretendard'; font-weight:400; line-height:1.5; letter-spacing:-.5px; color:#000;}
body.hidden{overflow-y: hidden;}

:root { 
    --mainColor:#48518d;
    --subColor:;
    --bor_r:3px;
    --item_r:30px;
	--header_H:80px;
}

/*inc*/
input::-webkit-input-placeholder{ color:#aaa !important}
input::-moz-placeholder{ color:#aaa !important}
input:-moz-placeholder{ color:#aaa !important}
input:-ms-input-placeholder{ color:#aaa !important}

.resize{ display:block; height:0; padding-bottom:56.25%; position:relative}
.resize .re{ position:absolute; left:0; top:0; width:100%; height:100%}
.resize.s1{ padding-bottom:100%}


.flex{display: -webkit-box; display: -moz-box; display: -ms-flexbox; display:flex}
.flex.fw{ -webkit-box-lines: multiple; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap:wrap}
.flex.col{ -webkit-box-orient: vertical; -moz-flex-direction: column; -ms-flex-direction: column;flex-direction:column}
.flex.space{ -webkit-box-pack: justify; -moz-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between}
.flex.hc{-webkit-box-pack: center; -moz-box-justify-content: center; -ms-flex-pack: center; justify-content:center}
.flex.hr{ -webkit-box-pack: end; -moz-box-justify-content: flex-end; -ms-flex-pack: end; justify-content:flex-end}
.flex.vt{ -webkit-box-align: start; -moz-align-items: flex-start; -ms-flex-align: start; align-content:flex-start; align-items:flex-start}
.flex.vc{ -webkit-box-align: center; -moz-align-items: center; -ms-flex-align: center; align-content:center; align-items:center}
.flex.vb{ -webkit-box-align: end; -moz-align-items: flex-end; -ms-flex-align: end; align-content:flex-end; align-items:flex-end}
.flex.rev{ -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -moz-flex-direction: row-reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse;}
.flex.cev{ -webkit-box-orient: vertical; -webkit-box-direction: reverse; -moz-flex-direction: column-reverse; -ms-flex-direction: column-reverse; flex-direction: column-reverse;}
.flex .mgL{ margin-left:auto}
.flex .mgR{ margin-right:auto}
.flex .mgT{ margin-top:auto}

	
	
.di_wrap{font-size:0}
.di_wrap > li{display:inline-block; vertical-align:top; font-size:16px; font-size:1rem;}
.di_wrap > li > a,
.di_wrap > li > .in{ display:block}

.fl_wrap > *{ float:left}
.fl_wrap::after{ content:""; display:block; clear:both}

.va_wrap{ display:block; text-align:center; white-space: nowrap}
.va_wrap:before{ content:""; display:inline-block; vertical-align:middle; width:0; height:100%}
.va{display:inline-block; vertical-align:middle; max-width:100%; height:auto; white-space:normal}
.va_wrap img{vertical-align:middle; display:inline-block; max-width:100%; max-height:100%}

.bgfix{ background-position:center; background-repeat:no-repeat; background-size:cover}

.al{ text-align: left !important;}
.ac{ text-align: center !important;}
.ar{ text-align: right !important;}

.fl{ float:left !important;}
.fr{ float:right !important;}
.cl{ clear:both !important; display:block}

.cut_txt {text-overflow : ellipsis; overflow : hidden;white-space : nowrap;}
.cut_txt2 {overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; text-overflow: ellipsis; white-space: normal;}
.cut_txt3 {overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; text-overflow: ellipsis; white-space: normal;}

.wrap_idx{ overflow:hidden}
.con_idx{ position:relative}
.con_idx > .idx{ position:absolute; left:0; top:0; width:100%; visibility:hidden;filter:alpha(opacity=0);opacity:0;}
.con_idx > .idx.on{ position:relative; visibility: visible; filter:alpha(opacity=100);opacity:1;}


/**/
.c_point{ color: var(--mainColor)!important; vertical-align:baseline;}
.c_blue{ color: #1478eb !important; vertical-align:baseline;}
.c_red{ color: #ff3838 !important; vertical-align:baseline;}
.c_black{ color:#000 !important; vertical-align:baseline;}
.c_gray{ color:#999 !important; vertical-align:baseline;}

.strong{font-weight:700}

.page_sec1{ margin-top:1em !important}
.page_sec2{ margin-top:2em !important}
.page_sec3{ margin-top:3em !important}
.page_sec4{ margin-top:4em !important}
.page_sec5{ margin-top:5em !important}


.pd0{ padding:0 !important;}
.pt0{ padding-top:0 !important;}
.pb0{ padding-bottom:0 !important;}
.pl0{ padding-left:0 !important;}
.pr0{ padding-right:0 !important;}

.mt0{ margin-top:0 !important;}
.mt3{ margin-top:3px !important;}
.mt5{ margin-top:5px !important;}
.mt7{ margin-top:7px !important;}
.mt10{ margin-top:10px !important;}
.mt15{ margin-top:15px !important;}
.mt20{ margin-top:20px !important;}
.mt25{ margin-top:25px !important;}
.mt30{ margin-top:30px !important;}
.mt40{ margin-top:40px !important;}
.mt50{ margin-top:50px !important;}

.mb0{ margin-bottom:0 !important;}
.mb3{ margin-bottom:3px !important;}
.mb5{ margin-bottom:5px !important;}
.mb10{ margin-bottom:10px !important;}
.mb15{ margin-bottom:15px !important;}
.mb20{ margin-bottom:20px !important;}
.mb25{ margin-bottom:25px !important;}
.mb30{ margin-bottom:30px !important;}
.mb40{ margin-bottom:40px !important;}
.mb50{ margin-bottom:50px !important;}

.ml0{ margin-left:0 !important;}
.ml5{ margin-left:5px !important;}
.ml10{ margin-left:10px !important;}
.ml15{ margin-left:15px !important;}
.ml20{ margin-left:20px !important;}
.ml25{ margin-left:25px !important;}
.ml30{ margin-left:30px !important;}
.ml40{ margin-left:40px !important;}
.ml50{ margin-left:50px !important;}

.mr0{ margin-right:0 !important;}
.mr3{ margin-right:3px !important;}
.mr5{ margin-right:5px !important;}
.mr10{ margin-right:10px !important;}
.mr15{ margin-right:15px !important;}
.mr20{ margin-right:20px !important;}
.mr25{ margin-right:25px !important;}
.mr30{ margin-right:30px !important;}
.mr40{ margin-right:40px !important;}
.mr50{ margin-right:50px !important;}

.fwB{ font-weight:700}
.fwM{ font-weight:500}
.fwR{ font-weight:400}
.fwL{ font-weight:300}

.w100{ width:100%!important;}
.f100{ flex:100%!important;}
.scrollst{ overflow:hidden}

.label_wrap{ }
.label_wrap > li{ flex:0 1 25%; margin:.5em 0; box-sizing:border-box}
.label_wrap.stw_2 > li{ flex:0 1 50%;}
.label_wrap.stw_16 > li{ flex:0 1 16.66%;}

.label_st{ display:inline-block;cursor:pointer}
.label_st > *{ display:inline-block;vertical-align:middle; cursor:pointer;}
.label_st:not(.cssbrowser) .xi:before{ font-family:'xeicon'!important; font-style:normal; font-size:1.25em; padding-right:.25em}
.label_st:not(.cssbrowser) input ~ span{ color:#888}
.label_st:not(.cssbrowser) input ~ .xi:before{ color:#aaa}
.label_st:not(.cssbrowser) input:checked ~ span{ color:#333}
.label_st:not(.cssbrowser) input:checked ~ .xi:before{ color:var(--mainColor);}
.label_st:not(.cssbrowser) input[type=checkbox] ~ .xi:before{ content:"\e9c6"}
.label_st:not(.cssbrowser) input[type=checkbox]:checked ~ .xi:before{ content:"\e92b"}
.label_st:not(.cssbrowser) input[type=radio] ~ .xi:before{ content:"\e9c6"}
.label_st:not(.cssbrowser) input[type=radio]:checked ~ .xi:before{ content:"\e92b"}
.label_st:not(.cssbrowser) input[type=checkbox],
.label_st:not(.cssbrowser) input[type=radio]{ opacity: 0; overflow:hidden;}

.label_st:not(.cssbrowser) input ~ .xi.st1{ padding-right:0; padding-left:.125em; font-size:1em}
.label_st:not(.cssbrowser) input ~ .xi.st1:before{ content:"\e929"; opacity:0}
.label_st:not(.cssbrowser) input:checked ~ .xi.st1:before{ content:"\e929"; opacity:1}

.label_st.mg{ margin-left:2em}
.label_st.mg:first-child{ margin-left:0}

.label_select{ position:relative; background:#fff; display:inline-block; }
.label_select select{ background:none; padding-right:2.25em !important; appearance:none;-webkit-appearance:none; position:relative; z-index:1}
.label_select select::-ms-expand{display:none;}
.label_select:after{ content:"\e942"; font-family:xeicon!important; position:absolute; z-index:0; right:0; top:50%; transform: translateY(-50%); width:3em; text-align:center}

.input_st{display:inline-block; vertical-align:middle; border:1px solid #ddd; color:#666; padding:.5em 1em;  box-sizing:border-box; line-height:2em; height:3em; border-radius: var(--bor_r);}
/*input[type=file].input_st{ background:none; border:none; padding:0}*/
textarea.input_st{ padding:1em; width:100%; height:10em!important; line-height:1.2}

input[type=button]:not([readonly=readonly]).input_st:hover,
input[type=submit]:not([readonly=readonly]).input_st:hover,
button:not([readonly=readonly]).input_st:hover,
a.input_st:hover{transition:.3s}

.input_st .xi{ margin:0 .125em; vertical-align: middle;} 

.input_st:hover,
.input_st:focus{ border-color:#666; color:#111}
.label_select .input_st:hover,
.label_select .input_st:focus{ background:none}
.input_st[disabled=disabled]:not([type=button]),
.input_st[readonly=readonly]:not([type=button]){ cursor:default; background:#f5f5f5; border-color:#ddd !important; color:#666}

select.input_st:hover,
select.input_st:focus{ color:#666}

.input_st.s1{ line-height:2.5em; height:3.5em; padding:.5em 1.5em; font-size:1.063em}
.input_st.s2{ line-height:1em; height:2.5em; padding:.5em 1em; font-size:.938em}
.input_st.s3{ line-height:1em; height:2em; padding:.25em .5em; font-size:.875em}

.input_st.c1{ background:var(--mainColor); border-color:var(--mainColor); color:#fff}
.input_st.c1.re{ background:none; border-color:var(--mainColor); color:var(--mainColor)}
.input_st.c2{ background:#999; border-color:#999; color:#fff}
.input_st.c2.re{ background:#f5f5f5; border-color:#ccc; color:#888}
.input_st.c3{ background:#333; border-color:#333; color:#fff}
.input_st.c3.re{ background:#fff; border-color:#666; color:#666}
.input_st.c4{ background:#eb3b4b; border-color:#eb3b4b; color:#222}
.input_st.c4.re{ background:#fff; border-color:#eb3b4b; color:#222}

.input_st.w1{ width:16.25em}
.input_st.w2{ width:7.5em}
.input_st.w3{ width:37em; max-width:100%}
.input_st.w4{ width:20em}
.input_st.w5{ width:9.4em}
.input_st.w6{ width:3em}
.input_st.w7{ width:120px}

.w_form_tit{width:13em;}
.w_auto{width:auto;} 

.w10{ width:10% !important}
.w15{ width:15% !important}
.w25{ width:25% !important}
.w30{ width:30% !important}
.w35{ width:35% !important}
.w45{ width:45% !important}
.w50{ width:50% !important}
.w65{ width:65% !important}
.w75{ width:75% !important}
.w100{ width:100% !important}

.input_sec{ display:inline-block; width:1.25em; text-align:center; /*vertical-align:middle*/}
.input_sec.s1{ width:.5em}
.input_sec.s2{ padding:0 1.5em 0 .5em}
.input_sec.s3{ width:3em; text-align:left;}
.input_sec.s4{ width:4em;}

.input_st::-webkit-input-placeholder{ color:#aaa}
.input_st::-moz-placeholder{ color:#aaa}
.input_st:-moz-placeholder{ color:#aaa}
.input_st:-ms-input-placeholder{ color:#aaa}

.input_tt{ margin-top:.5em; opacity:.8}
.input_tt:before{ content:"- "}

   
/*ani*/
.scrollAni{ visibility:hidden; opacity:0}
.scrollAni.Aon{ visibility:visible; opacity:1; transition:.4s; transition-timing-function:ease-in;}
.scrollAni.fade{ opacity:0}
.scrollAni.fade.Aon{ opacity:1}
.scrollAni.moveL{ transform:translateX(-50px); }
.scrollAni.moveL.Aon{ transform:translateX(0); }
.scrollAni.moveR{ transform:translateX(50px)}
.scrollAni.moveR.Aon{ transform:translateX(0)}
.scrollAni.moveT{ transform:translateY(50px)}
.scrollAni.moveT.Aon{ transform:translateY(0)}
.scrollAni.moveB{ transform:translateY(-50px)}
.scrollAni.moveB.Aon{ transform:translateY(0)}
.scrollAni.scale{ transform:scale(0)}
.scrollAni.scale.Aon{ transform:scale(1)}
.scrollAni.scaleX{ transform:scaleX(0); transform-origin:left top}
.scrollAni.scaleX.Aon{ transform:scaleX(1)}
.scrollAni.scaleX.right{transform-origin:right top}
.scrollAni.scaleY{ transform:scaleY(0); transform-origin:left top}
.scrollAni.scaleY.Aon{ transform:scaleY(1)}
.scrollAni.rotate{}
.scrollAni.rotate.Aon{ transform:rotate(180deg)}
.scrollAni.delay1.Aon{ transition-delay:.3s}
.scrollAni.delay2.Aon{ transition-delay:.6s}
.scrollAni.delay3.Aon{ transition-delay:.9s}
.scrollAni.delay4.Aon{ transition-delay:1.2s} 
.scrollAni.delay5.Aon{ transition-delay:1.5s} 
.scrollAni.delay6.Aon{ transition-delay:1.8s} 
.scrollAni.delay7.Aon{ transition-delay:2.1s} 
.scrollAni.delay8.Aon{ transition-delay:2.4s} 
.scrollAni.delay9.Aon{ transition-delay:2.7s} 
.scrollAni.delay10.Aon{ transition-delay:3s} 
.section.fix .scrollAni{ transition:1s; transition-delay:.3s; transform:translateY(0); opacity:1}

/*모달팝업*/ 
.scrollHidden{ overflow: hidden}
.modal {position: fixed; left: 0; top: 0; width: 100%; height: 100vh; overflow: auto; z-index: 1000; background: rgba(0,0,0,0.6);  opacity: 0; visibility: hidden; transition: .3s ease; display:block;}
.modal.active {opacity: 1; visibility: visible;}
.modal__inner {width: 500px; max-width: 96%; margin: 10rem auto 7rem; cursor: auto; box-shadow: 8px 8px 20px 0 rgba(0,0,0,0.6);position: relative; border-radius: 1rem; overflow: hidden;}
.modalCont{ position: relative; z-index: 2;background-color: #fff; padding: 3rem 2rem;}
.modal--close{position: absolute;top: 0;right: 0;padding: 1rem;z-index: 3; color: #aaa!important; font-size:2em;}
.modal--close:hover{ color: #555!important;}
.modal__inner .pop_tit{font-size:1.5em; font-weight:600; margin-bottom:10px;}


/*pc_all_menu*/
/*.pc_menu_on #header #logo{z-index:600 }
.pc_all_menu{ background: #fff; position: fixed; top: 0; left: 0; width: 100%; height: 100vh; z-index: 500; opacity: 0; visibility: hidden;}
.pc_all_menu.on{opacity: 1; visibility: visible;}
.pc_all_menu .all_m_wrap{height:calc(100vh - var(--header_H));}
.pc_all_menu .all_m_img{width:37%; height: 100%; background-image: url(../img/sub/v_02.jpg);}
.pc_all_menu .gnb_all{width:63%; height: 100%; position: relative; padding:6em 4em; background-color: #f9f9f9;}
.pc_all_menu .gnb_all > li.depth1{margin-bottom:4em; width:100%;}
.pc_all_menu .gnb_all > li.depth1:last-child{margin-bottom:0;}
.pc_all_menu .gnb_all > li.depth1 > a.dp1{width:50%; font-size: 2.375em; letter-spacing: -.5px; color:#111; line-height: 1.1; font-weight: 800; opacity: .5; position: relative;}
.pc_all_menu .gnb_all > li.depth1 > a.dp1:hover,
.pc_all_menu .gnb_all > li.depth1 > a.dp1.on{opacity: 1;}
.pc_all_menu .gnb_all > li.depth1 > a.dp1.on:before{content:'\e907'; font-family: 'xeicon'; position: absolute; right: 50px; top: 50%; transform: translateY(-50%);} 
.pc_all_menu .gnb_all > li.depth1 .dp2_menu{width:50%; position: absolute; top: 0; right: 0; display: none; padding:6em 4em; height: 100%; background-color: #fff;}
.pc_all_menu .gnb_all > li.depth1 .dp2_menu.on{display: block;}
.pc_all_menu .gnb_all > li.depth1 .dp2_menu > li a{font-size:1.45em; position: relative; color:#333; margin-bottom: 20px; display: block; opacity: .5;}
.pc_all_menu .gnb_all > li.depth1 .dp2_menu > li a:hover{opacity: 1;}
.pc_all_menu .all_m_top{ position: relative; height: var(--header_H);}*/

/*pc_all_menu*/
.pc_menu_on #header #logo{z-index:600 }
.pc_all_menu{ background: #fff; position: fixed; top: 0; left: 0; width: 100%; height: 100vh; z-index: 500; opacity: 0; visibility: hidden;}
.pc_all_menu.on{opacity: 1; visibility: visible;}
.pc_all_menu .gnb_all{padding:5em 0 0;}
.pc_all_menu .gnb_all > li.depth1{margin-bottom:2em; width:100%;}
.pc_all_menu .gnb_all > li.depth1:last-child{margin-bottom:0;}
.pc_all_menu .gnb_all > li.depth1 > a.dp1{width:450px; font-size: 2.375em; letter-spacing: -.5px; color:#111; line-height: 1.1; font-weight: 800;}
.pc_all_menu .gnb_all > li.depth1 > a.dp1 .c_dot{ font-size: 1.375em; color: var(--mainColor);}
.pc_all_menu .gnb_all > li.depth1 .dp2_menu{width:calc(100% - 450px); margin-top:1em;}
.pc_all_menu .gnb_all > li.depth1 .dp2_menu > li a{margin-right:30px; font-size:1.125em; position: relative; color:#666; margin-bottom: 10px;}
.pc_all_menu .gnb_all > li.depth1 .dp2_menu > li a:hover{ color:#333;}
.pc_all_menu .gnb_all > li.depth1 .dp2_menu > li a:after{content:''; display: block; width:0; height: 12px; background:var(--mainColor); position: absolute; bottom: -4px; left: 0; opacity: 0; transition: .3s;}
.pc_all_menu .gnb_all > li.depth1 .dp2_menu > li a:hover:after{opacity: .5; width:100%;}
.pc_all_menu .all_m_top{border-bottom:1px solid #ddd; position: relative; height: var(--header_H);}


/*mo_all_menu*/
.mo_all_menu{display:none;}
.mo_all_menu.on{right:0;}
.mo_all_menu{background: rgba(255, 255, 255, .9);  position: fixed; top: 0; right: -300px; width: 280px; height: 100vh; z-index: 1000;  box-shadow: 0 0 0.5625rem rgba(0,0,0,.2); backdrop-filter: blur(5px); transition: .3s; padding:80px 15px 10px;}
.mo_all_menu .mobile_gnb{}
.mo_all_menu .mobile_gnb .depth1{margin-bottom:1em;}
.mo_all_menu .mobile_gnb .depth1 .dp1{font-size:1.25em; font-weight: 500; padding:10px 0; display: block; position: relative;}
.mo_all_menu .mobile_gnb .depth1 .dp1:before{content:'+'; position: absolute; top: 50%; right: 0; transform: translateY(-50%); color:#777;}
.mo_all_menu .mobile_gnb .depth1.on .dp1:before{content:'-';}
.mo_all_menu .mobile_gnb .depth1.on .dp2_menu{display:block;}
.mo_all_menu .mobile_gnb .dp2_menu{display:none; background-color: rgba(255, 255, 255, .7); padding: 8px 0; border:1px solid #e1e1e1;}
.mo_all_menu .mobile_gnb .dp2_menu > li a{padding:10px 20px; display: block; color:#555; transition: .3s;}
.mo_all_menu .mobile_gnb .dp2_menu > li a:before{content:'-'; margin-right:5px;}



