@charset "utf-8";
/* CSS Document */
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; font-size:inherit}
ul,ol,li{list-style:none}
img { border:none; max-width:100%}
em,i{ font-style:normal}
table{ border-collapse:collapse; border-spacing:0; table-layout:fixed;}
span, strong, a, em, i, b, input, button, textarea, select, label{ display:inline-block; font-size:inherit; font-family:inherit; color:inherit; vertical-align: middle}
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; -webkit-border-radius:0}
a, input, button, textarea, select, li{ -webkit-tap-highlight-color:transparent}
a:focus, input:focus, button:focus, textarea:focus, select:focus{ outline:none}

a,
a:active,
a:hover{text-decoration:none}

@font-face {
    font-family: 'NanumSquareRound';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_two@1.0/NanumSquareRound.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'SBAggroB';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2108@1.1/SBAggroB.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

html{overflow-x:hidden}
body{ font-weight:400; /*font-family:roboto,ns,sans-serif;*/ font-family:'NanumSquareRound'; line-height:1.2; color:#111; font-size:16px}
body.hidden, html.hidden{ overflow-y:hidden}

.fixWrap{position:relative;}
.fixWrap .fixIn{ position:absolute; height:100%; top:0}
.fixWrap .fixIn .fixObj{ position:absolute; transition:.3s}
.fixWrap .fixIn .fixObj.scroll{ position:fixed}
.fixWrap .fixIn .fixObj.bottom{ position:absolute; bottom:0}

.vm_wrap{ text-align:center; white-space:nowrap}
.vm_tt{ display:inline-block; *display:inline; zoom:1; vertical-align:middle; width:auto; height:100%; white-space:normal}
.vm_tt:before{ content:""; display:inline-block; *display:inline; zoom:1; vertical-align:middle; width:0; height:100%;}
.vm_tt > *{ display:inline-block; *display:inline; zoom:1; vertical-align:middle;}
.vm_tt img{ vertical-align:middle;}

/*inc*/
.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;}

.fixWrap{position:relative;}
.fixWrap .fixIn{ position:absolute; height:100%}
.fixWrap .fixIn .fixObj{ position:absolute; transition:.3s}
.fixWrap .fixIn .fixObj.scroll{ position:fixed}
.fixWrap .fixIn .fixObj.bottom{ position:absolute; bottom:0}

.layerWrap{ position:fixed; left:0; top:0; width:100%; height:100%; visibility:hidden; z-index:100000000}
.layerWrap .layerBg{position:absolute; z-index:9999; width:100%; height:100%; left:0; top:0; background:#000; opacity:0; transition:.3s}
.layerWrap .layerFrame{ position:absolute; z-index:10000; left:0; top:0; margin-top:90%; width:100%; height:100%; transition:.3s}
.layerWrap .layerImg{ position:absolute; z-index:10000; left:3%; top:3%; width:94%; height:90%; transition:.3s; overflow-y:auto}
.layerWrap.on{ visibility:visible}
.layerWrap.on .layerBg{ opacity:.5}
.layerWrap.on .layerFrame{ margin-top:0}
body.pop{background:transparent; display:flex; justify-content:center; align-items:center; width:100vw; height:100vh}
body.pop .popWrap{ position:relative; display:flex; flex-direction:column; justify-content:center; max-width:96vw; height:90vh}
body.pop .popWrap .popTit{ position:relative; z-index:1; padding:1em 1em 1em 2em; display:flex; background:#fff; border-radius:.5em .5em 0 0}
body.pop .popWrap .popTit .tit{ flex:1 1 100%; padding-top:1em}
body.pop .popWrap .popTit .tit .t1{ font-weight:700; font-size:1.5em}
body.pop .popWrap .popTit .popClose{ flex:0 0 auto; text-align:center; width:3em; line-height:3em; border-radius:100%; text-align:center}
body.pop .popWrap .popTit .popClose .xi{ transition:.3s; font-size:2em; color:#666}
body.pop .popWrap .popTit .popClose .xi:before{ content:"\e9af"}
body.pop .popWrap .popTit .popClose:hover .xi{ transform:rotate(180deg)}
body.pop .popWrap .popIn{ box-sizing:border-box; padding:1em 2em 2em 2em;  background:#fff; border-radius:0 0 .5em .5em; box-shadow:1px 1px 10px #333; position:relative}
body.pop .popWrap .popIn .popCon{ min-height:5em}

.scrollst{overflow-y:auto; scrollbar-width: thin; scrollbar-color: gray transparent;scrollbar-face-color: #fff;
  scrollbar-track-color: #fff;
  scrollbar-arrow-color: none;
  scrollbar-highlight-color: #fff;
  scrollbar-3dlight-color: none;
  scrollbar-shadow-color: #eee;
  scrollbar-darkshadow-color: none;}
.scrollst::-webkit-scrollbar  { width: 10px}
.scrollst::-webkit-scrollbar-track  { background-color: transparent}
.scrollst::-webkit-scrollbar-thumb  { border-radius: 10px; background-color: gray; background-clip: padding-box; border: 3px solid transparent}
.scrollst::-webkit-scrollbar-button  { width: 0; height: 0;}

.ts_r.scrollst::-webkit-scrollbar{}
.ts_r.scrollst::-webkit-scrollbar-thumb{border-width:5px;}

.fixWrap{position:relative;}
.fixWrap .fixIn{ position:absolute; height:100%; top:0}
.fixWrap .fixIn .fixObj{ position:absolute; transition:.3s}
.fixWrap .fixIn .fixObj.scroll{ position:fixed}
.fixWrap .fixIn .fixObj.bottom{ position:absolute; bottom:0}

/**/
.pd0{ padding:0 !important;}
.pt0{ padding-top:0 !important;}
.pb0{ padding-bottom:0 !important;}

.mt0{ margin-top:0 !important;}
.mt3{ margin-top:3px !important;}
.mt5{ margin-top:5px !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;}
.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;}
.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;}

.ps05{ margin-top:.5em !important;}
.ps1{ margin-top:1em !important;}
.ps2{ margin-top:2em !important;}
.ps3{ margin-top:3em !important;}
.ps4{ margin-top:4em !important;}
.ps5{ margin-top:5em !important;}

.fwB{ font-weight:700}
.fwM{ font-weight:500}
.fwR{ font-weight:400}
.fwL{ font-weight:300}

.fs12{ font-size:.75em !important}
.fs13{ font-size:.813em !important}
.fs14{ font-size:.875em !important}
.fs15{ font-size:.938em !important}
.fs16{ font-size:1em !important}
.fs17{ font-size:1.063em !important}
.fs18{ font-size:1.125em !important}
.fs19{ font-size:1.188em !important}
.fs20{ font-size:1.25em !important}
.fs21{ font-size:1.313em !important}
.fs22{ font-size:1.375em !important}
.fs23{ font-size:1.438em !important}
.fs24{ font-size:1.5em !important}
.fs25{ font-size:1.563em !important}
.fs26{ font-size:1.615em !important}
.fs27{ font-size:1.688em !important}
.fs28{ font-size:1.75em !important}
.fs29{ font-size:1.813em !important}
.fs30{ font-size:1.875em !important}
.fs31{ font-size:1.938em !important}
.fs32{ font-size:2em !important}

/**/
.loading_st{position:fixed; left:0; top:0; width:100%; height:100%; z-index:1001; text-align:center; transition:.3s}
.loading_st .xi:before{ content:"\ec34"; font-size:3em; color:#00a3dd}
.load .loading_st{ display:none}

.swiper-wrapper.center{ justify-content:center}
.slide_wrap{ position:relative}
.slide_wrap .swiper-pagination{ bottom:1em}
.swiper-pagination.out{ bottom:-2em}
.swiper-pagination.st1{ bottom:1em}
.swiper-pagination.st1 span{ position:relative; width:1.5em; height:.25em; border-radius:0; background:#333; opacity:.5; transition:.3s}
.swiper-pagination.st1 span.swiper-pagination-bullet-active{ opacity:1; width:3em}

.fadeAni{ animation-name: fadeAni; animation-duration: 2s; animation-iteration-count: infinite}
@keyframes fadeAni{
30% {opacity:0}
50% {opacity:1}
}
.fadeAni:hover{animation-name: none}

.scrollAni{ opacity:0}
.scrollAni.on{ opacity:1; transition:1s; transition-timing-function:ease-out;}
.scrollAni.fade{ opacity:0}
.scrollAni.fade.on{ opacity:1}
.scrollAni.moveL{ transform:translateX(-10rem); }
.scrollAni.moveL.on{ transform:translateX(0); }
.scrollAni.moveR{ transform:translateX(10rem)}
.scrollAni.moveR.on{ transform:translateX(0)}
.scrollAni.moveT{ transform:translateY(6rem)}
.scrollAni.moveT.on{ transform:translateY(0)}
.scrollAni.moveB{ transform:translateY(-6rem)}
.scrollAni.moveB.on{ transform:translateY(0)}
.scrollAni.width{ width:0}
.scrollAni.width.on{ width:100%}
.scrollAni.scale.on{ transform:scale(1)}
.scrollAni.scale{ transform:scale(0)}
.scrollAni.scale.on{ transform:scale(1)}
.scrollAni.scaleX{ transform:scaleX(0); transform-origin:left top}
.scrollAni.scaleX.on{ transform:scaleX(1)}
.scrollAni.scaleX.right{transform-origin:right top}
.scrollAni.scaleY{ transform:scaleY(0); transform-origin:left top}
.scrollAni.scaleY.on{ transform:scaleY(1)}
.scrollAni.delay.on:nth-child(2){ transition-delay:.1s}
.scrollAni.delay.on:nth-child(3){ transition-delay:.2s}
.scrollAni.delay.on:nth-child(4){ transition-delay:.3s}
.scrollAni.delay.on:nth-child(5){ transition-delay:.4s}
.scrollAni.delay.on:nth-child(6){ transition-delay:.5s}
.scrollAni.delay.on:nth-child(7){ transition-delay:.6s}
.scrollAni.delay.on:nth-child(8){ transition-delay:.7s}
.scrollAni.delay.on:nth-child(9){ transition-delay:.8s}
.scrollAni.delay.on:nth-child(10){ transition-delay:.9s}

.l-nav .gnb{ display:block;}
.l-nav .gnb > li:first-child .dp1.va_wrap{border-top:1px solid #ddd;}
.l-nav .gnb > li .va_wrap{ display:block; text-align:left;}

.l-nav .gnb > li .dp1.va_wrap{padding:1.5em 0;  position:relative; border-bottom: 1px solid #ddd; padding-left:1em;}
.l-nav .gnb > li .dp1.va_wrap:hover{ border-bottom:1px solid #0c66c6; border-top:1px solid #0c66c6;}
.l-nav .gnb > li .dp1 .va{padding:2em 0; display:inline;}
.l-nav .gnb > li .dp1 .va:after{ content:'+'; color:#ddd; position:absolute; top:16px; right:20px; font-size:1.5em; font-weight: bold; color:#0c66c6;}

.l-nav .gnb .dp1.on{ background-color:#0c66c6;}
.l-nav .gnb .dp1.on .va{color:#fff;}
.l-nav .gnb .dp1.on .va:after{ content:'-'; color:#fff; font-size:2em; top:9px;}

.l-nav .gnb > li .dp2 {display: none;}
.l-nav .gnb > li .dp2 .va_wrap{ border-bottom: 1px solid #ddd; background: #fbfbfb;}
.l-nav .gnb > li .dp2 .va{padding:1em 0; padding-left: 1.8em; position:relative; font-size:.9rem;}
.l-nav .gnb > li .dp2 .va:after{content:'-'; color:#333; position:absolute; top:13px; left:10px;}

.l-nav .gnb > li .dp3{ display:none;}

.l-nav .nav_logo{ margin:.375em 0.5em; position:relative;}
.l-nav .nav_logo img{ width:5.25em; margin: 0;}
.I-nav .nav_close { position:absolute; top:0; right:0;}
.l-nav .xi-close{color:#333; font-size:2.5em; margin-top:-14px;}

.l-nav .nav_top{ background:#de6972; padding:.5em; margin-bottom:1.5em;}
.l-nav .nav_top li a{ background:#fff; border:1px solid #ddd; font-size:.875em; margin-right:5px; padding:.5em 1.5em;}

.l-wrapper{ overflow:hidden}
.l-main {
  -webkit-transition: -webkit-transform 500ms ease;
  -moz-transition: -moz-transform 500ms ease;
  -o-transition: -o-transform 500ms ease;
  transition: transform 500ms ease;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
  position: relative;
  z-index: inherit;
  overflow: hidden;  
}

.l-nav {
  -webkit-transition: opacity 700ms ease;
  -moz-transition: opacity 700ms ease;
  -o-transition: opacity 700ms ease;
  transition: opacity 700ms ease;
  opacity: 0;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: 0;
  overflow-y: auto;
  overflow-x: hidden;
  z-index:1
}
.l-nav::-webkit-scrollbar {width: 0;}

html.l-nav-open .l-nav{width: 80%;}

html.l-nav-open,
html.l-nav-open body {
  height: 100%;
  overflow: hidden
}
html.l-nav-closing body {
  background: none;
}
html.l-nav-open .l-main {
  -webkit-transform: translate3d(-80%, 0, 0);
  -moz-transform: translate3d(-80%, 0, 0);
  -o-transform: translate3d(-80%, 0, 0);
  transform: translate3d(-80%, 0, 0);
}
html.l-nav-open .l-nav {
  -webkit-overflow-scrolling: touch;
  -moz-overflow-scrolling: touch;
  -ms-overflow-scrolling: touch;
  -o-overflow-scrolling: touch;
  overflow-scrolling: touch;
  opacity: 1;
  -webkit-box-shadow: 0 0 0.5625rem #666;
  box-shadow: 0 0 0.5625rem #666;
  background:linear-gradient(180deg, rgba(236,155,161,1) 0%, rgba(164,195,235,1) 100%);
}
.l-nav-open .l-nav,
.l-nav-closing .l-nav {
  display: block;
}
html.l-nav-open .l-nav .gnb li{height:80px; display:flex; algin-items:center; padding-left:20px; margin-right:20px; box-sizing:border-box; overflow:hidden;}
html.l-nav-open .l-nav .gnb li a{font-size:1.75em; display:flex; align-items:center; position:relative;}
html.l-nav-open .l-nav .gnb li a:before{content:''; display:block; width:500px; height:2px; background:#f1f1f1; position:absolute; left:calc(100% + 30px); top:50%; transform:translateY(-50%);}