@charset "utf-8";
/*@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap');*/
/****************************************/ 
/* Name: DESIGH WAVE
/* PART: BASE STYLE
/* Version: 1.0
/* Author: Kim Bo Reum
/****************************************/

html{height:100%; font-size:11px;}
body{height:100%; text-align: left;font-size:12px;color:#555;line-height:20px; font-family:'Pretendard', sans-serif; font-weight: 400;}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,form,fieldset,p,button,address,table, tbody, tfoot, thead, th, tr, tdvideo, tt{margin:0;padding:0; font-weight: 400;}
h1,h2,h3,h4,h5,h6,input,button,textarea,select,table{font-family:'Pretendard',sans-serif; font-size:12px; line-height:1; font-weight: 400;}
img,fieldset,iframe{border:0}
li{list-style:none;word-break:keep-all}
img,input,select,button,textarea{vertical-align:middle}
em,address,optgroup{font-style:normal}
label,button{cursor:pointer}
label{top:1px;position: relative;}
button{margin:0;padding:0}
a:link,a:visited{text-decoration:none;color:#555}
a:hover,a:focus,a:active{text-decoration:underline;color:#555}
/*input:focus, button:focus {outline: none;}*/
button img{left:-3px;}
hr{display:none}
legend,caption{ width:0; height:0; font-size:0; line-height:0; text-indent:-9999px; overflow:hidden}
table{width:100%;border-spacing:0;}/* border-collapse: collapse; ff에서 border="0" 인 경우 문제 발생 */


.screen-hide,
.blind,
.hidden {
    position: absolute;
    top: -9999px;
    left: -9999px;
    width: 0;
    height: 0;
    text-indent: -9999px;
}

a {text-decoration: none  !important;}
img { max-width:100% }

/* 웹접근성 - 바로가기 */
.skiplist {position:relative;z-index:99999;margin:0;padding:0;}
.skip {display:none; text-align:left;margin:0;padding:0;position:absolute;} /* Opera */
.skip {display:block;} /* IE */
:root .skip {display:block;} /* Moz, FF and Safari */
.skip a {padding:0 0.5em;display:inline;z-index:1000;text-decoration:none;position:absolute;width:14em;left:-200em;}
.skip a:focus, .skip a:active {position:absolute;left:0;padding:10px;border:solid #333 2px;color:#fff;background:#000;}
.skip a:hover {cursor:default;}

/*아이폰 기본 속성 제거*/
* {letter-spacing: -0.5px;} 
input, textarea, select {-webkit-border-radius:0; -webkit-appearance:none; }
input:focus {border: 0; outline: 0}
select:focus {border: 0; outline: 0}
textarea:focus {border: 0; outline: 0}

/*영문 — Pretendard 통일 (별도 웹폰트 미사용)*/
[lang="en"] {font-family: 'Pretendard', sans-serif;}


input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* 파이어폭스에서의 초기화 방법 */
input[type=number] {
    -moz-appearance: textfield;
}


/* ==================================================================
    Animation 및 효과 설정부분
===================================================================== */

/* ========== Aos (fade) ========== */
[data-aos=fade-up2] { transform: translate3d(0, 30px, 0); }
[data-aos=fade-down2] { transform: translate3d(0, -30px, 0); }
[data-aos=fade-right2] { transform: translate3d(-30px, 0, 0); }
[data-aos=fade-left2] { transform: translate3d(30px, 0, 0); }
[data-aos=fade-up-right2] { transform: translate3d(-30px, 30px, 0); }
[data-aos=fade-up-left2] { transform: translate3d(30px, 30px, 0); }
[data-aos=fade-down-right2] { transform: translate3d(-30px, -30px, 0); }
[data-aos=fade-down-left2] { transform: translate3d(30px, -30px, 0); }
[data-aos=fade-in] { transform: translate3d(0, 0, 0); }
/* ========== Aos (zoom) ========== */
[data-aos*="bg-zoom-out"]{transform: scale(1.1)}
[data-aos*="bg-zoom-out"].aos-animate {transform: scale(1);}
[data-aos*="bg-zoom-in"]{transform: scale(1)}
[data-aos*="bg-zoom-in"].aos-animate {transform: scale(1.1);}

/* ========== Aos (reveal) ========== */
[data-aos="reveal-line"]{clip-path:polygon(0 0,0 0,0 100%,0 100%);}
[data-aos="reveal-line"].aos-animate {clip-path: polygon(0 0,100% 0,100% 100%,0 100%)}
[data-aos="reveal-line-revers"]{clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%)}
[data-aos="reveal-line-revers"].aos-animate {clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)}

[data-aos="reveal-line-half"]{clip-path:polygon(0 0,50% 0,50% 100%,0 100%);}
[data-aos="reveal-line-half"].aos-animate {clip-path: polygon(0 0,100% 0,100% 100%,0 100%)}
[data-aos="reveal-line-half-revers"]{clip-path:polygon(50% 0,100% 0,100% 100%,50% 100%);}
[data-aos="reveal-line-half-revers"].aos-animate {clip-path: polygon(0 0,100% 0,100% 100%,0% 100%)}

[data-aos="reveal-top"]{clip-path:polygon(0 100%, 100% 100%, 100% 100%, 0% 100%);}
[data-aos="reveal-top"].aos-animate {clip-path: polygon(0 100%, 100% 100%, 100% 0, 0 0);}
[data-aos="reveal-bottom"]{clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);}
[data-aos="reveal-bottom"].aos-animate {clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);}
[data-aos="reveal-circle"]{clip-path: circle(0% at 50% 50%);}
[data-aos="reveal-circle"].aos-animate {clip-path:  circle(100% at 50% 50%);}
[data-aos="reveal-open"]{clip-path: polygon(50% 0, 50% 0, 50% 100%, 50% 100%)}
[data-aos="reveal-open"].aos-animate {clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)}


/* ========== Aos (animation 효과로 설정) ========== */
[data-aos="title"]{ opacity: 0;}
[data-aos="title"].aos-animate {animation: title 1s cubic-bezier(0.215, 0.610, 0.355, 1.000) both;}
[data-aos="tit_mini"]{ opacity: 0;}
[data-aos="tit_mini"].aos-animate {animation: tit_mini 1.2s cubic-bezier(0.215, 0.610, 0.355, 1.000) both;}
[data-aos="focus"]{ opacity: 0;}
[data-aos="focus"].aos-animate {animation: focus 1.2s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;}

/* ========== Animation ========== */
@keyframes title    {0% {letter-spacing: -0.5em;opacity: 0;} 40% {opacity: 0.6;}  100% {opacity: 1;} }
@keyframes tit_mini {0% {letter-spacing: 0.5em;opacity: 0;}  40% {opacity: 0.6;}  100% {letter-spacing: 0;opacity: 1;}}
@keyframes focus    {0% {-webkit-filter: blur(12px);filter: blur(12px);opacity: 0;}  100% {-webkit-filter: blur(0px);filter: blur(0px);opacity: 1;}}
@keyframes cycleM   {0% {transform:  translateY(0) scale(1);}    100% {transform: translateY(1.5rem) scale(0.95)}}
@keyframes rotate   {from{ transform: rotate(0); }to{ transform: rotate(360deg); }}
@keyframes scroll   {0% {transform: translate(-50%, 0);opacity: 0;} 40% {opacity: 1;}80% {transform: translate(-50%, 1.4rem);opacity: 0;}100% {opacity: 0;}}
@keyframes bigger   {0%{transform: scale(0); opacity:1;} 100%{transform: scale(5); opacity:0;}}
@keyframes bounce   {to {transform: translateX(2rem);opacity: 0;}}


/* =============== Color ===============*/
.point-color   {color: var(--pointColor)!important;  color: var(--pointColor)}/* 익스용 CSS > impotant 쓰면 적용안되는 부분으로 한줄더 작성 */
.point-color2   {color: var(--pointColor2)!important; color: var(--pointColor2)}/* 익스용 CSS > impotant 쓰면 적용안되는 부분으로 한줄더 작성 */


/* ========== Position & Visible ========== */
.hidden   {overflow: hidden;}
.relative {position: relative;}
.absolute {position: absolute;}
.pointerNon{pointer-events: none;}

.visible-lg, .visible-md, .visible-sm, .visible-xs,.visible-xxs {display:none !important}
@media (max-width:1580px) { .hidden-lg {display:none!important} .visible-lg {display:block!important}}
@media (max-width:1240px) { .hidden-md {display:none!important} .visible-md {display:block!important}}
@media (max-width:990px)  { .hidden-sm {display:none!important} .visible-sm {display:block!important}}
@media (max-width:768px)  { .hidden-xs {display:none!important} .visible-xs {display:block!important}}
@media (max-width:500px)  { .hidden-xxs{display:none!important} .visible-xxs{display:block!important}}

/* ==================================================================
    기본 box style Layout
===================================================================== */
.flexList { --x-gap:2rem; --y-gap:2rem;   display:flex;  flex-wrap:wrap;  gap:var(--y-gap) var(--x-gap);}
.flexList > .box{width:calc(100% / var(--count) - (var(--x-gap) * (var(--count) - 1)) / var(--count)); }
.flexList[layoutStyle="fullbox"] {--x-gap:0; --y-gap:10px; }
.flexList[layoutStyle="fullbox"] > .box{  width:calc(100% / var(--count)) }

/* boxCout */
[boxCount="2"],[boxcount="2"]{ --count:2; }
[boxCount="3"],[boxcount="3"]{ --count:3; }
[boxCount="4"],[boxcount="4"]{ --count:4; }
[boxCount="5"],[boxcount="5"]{ --count:5; }
[boxCount="6"],[boxcount="6"]{ --count:6; }

@media (max-width:1580px){
    .lg-direction{flex-direction: column;}
    .lg-w100{width:100%}
    .lg-w90{width:90%}
    .lg-w80{width:80%}
    .lg-order{order: 1}
    .lg-cont_box {margin-top: 4.68rem;}

    .lg-wrap3{--count:3}
    .lg-wrap2{--count:2}
    .lg-wrap1{--count:1}
}
@media (max-width:1240px){
    .md-direction{flex-direction: column;}
    .md-w100{width:100%}
    .md-w90{width:90%}
    .md-w80{width:80%}
    .md-order{order: 1}
    .md-cont_box {margin-top: 4.68rem;}

    .md-wrap3{--count:3}
    .md-wrap2{--count:2}
    .md-wrap1{--count:1}
}
@media (max-width:990px){
    .sm-direction{flex-direction: column;}
    .sm-w100{width:100%}
    .sm-w90{width:90%}
    .sm-w80{width:80%}
    .sm-order{order: 1}
    .sm-cont_box {margin-top: 4.68rem;}

    .sm-wrap3{--count:3}
    .sm-wrap2{--count:2}
    .sm-wrap1{--count:1}
}
@media (max-width:768px){
    .xs-direction{flex-direction: column;}
    .xs-w100{width:100%}
    .xs-w90{width:90%}
    .xs-w80{width:80%}
    .xs-order{order: 1}
    .lg-cont_box,.md-cont_box,.sm-cont_box,.xs-cont_box {margin-top: 3.5rem;}

    .xs-wrap3{--count:3}
    .xs-wrap2{--count:2}
    .xs-wrap1{--count:1}
}
@media (max-width:500px){
    .xxs-direction{flex-direction: column;}
    .xxs-w100{width:100%}
    .xxs-w90{width:90%}
    .xxs-w80{width:80%}
    .xxs-order{order: 1}
    .xxs-cont_box {margin-top: 3.5rem}

    .xxs-wrap2{--count:2}
    .xxs-wrap1{--count:1}
}

