@charset "utf-8";

@font-face {
   font-family: "enphase-visuelt-regular";
   src: url(../fonts/EnphaseVisuelt-Regular.woff2) format("woff2"), url(../fonts/EnphaseVisuelt-Regular.woff) format("woff"), url(../fonts/EnphaseVisuelt-Regular.ttf) format("truetype");
   font-weight: normal;
   font-style: normal;
   font-display: swap
}

@font-face {
   font-family: "enphase-visuelt-medium";
   src: url(../fonts/EnphaseVisuelt-Medium.woff2) format("woff2"), url(fonts/EnphaseVisuelt-Medium.woff) format("woff"), url(../fonts/EnphaseVisuelt-Medium.ttf) format("truetype");
   font-weight: normal;
   font-style: normal;
   font-display: swap
}

/* .page_scroll_wrap {
    -webkit-transform-style: preserve-3d !important;
    -webkit-backface-visibility: hidden !important;
} */
* {
   margin: 0;
   padding: 0;
}

html,
body {
   width: 100%;
   height: 100%;
   font-size: 62.5%;
}

html {
   -webkit-font-smoothing: antialiased;
}

body {
   *word-break: break-all;
   -ms-word-break: break-all;
   -webkit-text-size-adjust: 100% !important;
   -moz-text-size-adjust: 100% !important;
   -ms-text-size-adjust: 100% !important;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
th,
td,
input,
textarea,
select,
option {
   color: #555;
   font-size: 100%;
   font-weight: normal
}

br {
   font-family: initial;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
svg {
   display: block;
}

table {
   border-collapse: collapse;
   border-spacing: 0;
}

img,
fieldset,
iframe {
   border: 0 none
}

ul,
ol,
li {
   list-style: none
}

em,
address {
   font-style: normal
}

img,
input,
select,
textarea {
   vertical-align: middle
}

input {
   -webkit-appearance: none;
   -webkit-border-radius: 0;
}

a {
   color: inherit;
   text-decoration: none;
   cursor: pointer
}

a:hover {
   color: var(--color);
   text-decoration: none
}

button,
label {
   cursor: pointer;
}

button {
   background: 0;
   border: 0;
   outline: 0;
   font-size: inherit;
   font-weight: inherit;
   font-family: inherit
}

button img {
   left: -3px;
   *left: auto
}

html:first-child select {
   height: 20px;
   padding-right: 6px
}

option {
   padding-right: 6px
}

textarea {
   overflow: auto;
   *margin: -1px 0;
   padding-right: 1px
}

.blind,
legend,
caption {
   position: absolute !important;
   height: 1px;
   width: 1px;
   overflow: hidden;
   clip: rect(1px 1px 1px 1px);
   clip: rect(1px, 1px, 1px, 1px);
}

blockquote,
q {
   quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
   content: '';
   content: none;
}

hr {
   display: none
}

legend {
   *width: 0
}

:root legend {
   margin-top: -1px;
   font-size: 0;
   line-height: 0
}

caption {
   *line-height: 0
}

sub {
   font-size: 10px;
}

.clear:after {
   clear: both;
   content: '';
   display: block;
}

#bg {
   position: fixed;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   background: rgba(0, 0, 0, 0.6);
   display: none;
   z-index: 1001;
}

div.ie_alert_text {
   display: none;
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 50px;
   background: #ddd;
   z-index: 10000;
   text-align: center;
   padding-top: 10px;
   font-size: 13px;
   font-family: 'Noto Sans KR', sans-serif;
}

#skip-nav {
   font-size: 16px;
   line-height: 40px;
   position: fixed;
   z-index: 100000;
   top: -40px;
   left: 0;
   width: 100%;
   -webkit-transition: .4s;
   transition: .4s;
   text-align: center;
   color: #fff;
   background: rgba(0, 0, 0, .6);
}

#skip-nav:focus {
   top: 0
}

.e_ {
   overflow: hidden;
   text-overflow: ellipsis;
   -webkit-line-clamp: 1;
   -webkit-box-orient: vertical;
   word-wrap: break-word;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   display: -webkit-box
}

.layui-form input[type=checkbox],
.layui-form input[type=radio],
.layui-form select {
   display: none;
}

/* margin-top 0 5 10 15 20 ··· 150 */
.mt00 {
   margin-top: 0px !important;
}

.mt05 {
   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;
}

.mt35 {
   margin-top: 35px !important;
}

.mt40 {
   margin-top: 40px !important;
}

.mt45 {
   margin-top: 45px !important;
}

.mt50 {
   margin-top: 50px !important;
}

.mt55 {
   margin-top: 55px !important;
}

.mt60 {
   margin-top: 60px !important;
}

.mt65 {
   margin-top: 65px !important;
}

.mt70 {
   margin-top: 70px !important;
}

.mt80 {
   margin-top: 80px !important;
}

.mt90 {
   margin-top: 90px !important;
}

.mt100 {
   margin-top: 100px !important;
}

.mt105 {
   margin-top: 105px !important;
}

.mt110 {
   margin-top: 110px !important;
}

.mt115 {
   margin-top: 115px !important;
}

.mt120 {
   margin-top: 120px !important;
}

.mt125 {
   margin-top: 125px !important;
}

.mt130 {
   margin-top: 130px !important;
}

.mt135 {
   margin-top: 135px !important;
}

.mt140 {
   margin-top: 140px !important;
}

.mt145 {
   margin-top: 145px !important;
}

.mt150 {
   margin-top: 150px !important;
}

/* margin-bottom 0 5 10 15 20 ··· 150 */
.mb00 {
   margin-bottom: 0px !important;
}

.mb05 {
   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;
}

.mb35 {
   margin-bottom: 35px !important;
}

.mb40 {
   margin-bottom: 40px !important;
}

.mb45 {
   margin-bottom: 45px !important;
}

.mb50 {
   margin-bottom: 50px !important;
}

.mb55 {
   margin-bottom: 55px !important;
}

.mb60 {
   margin-bottom: 60px !important;
}

.mb65 {
   margin-bottom: 65px !important;
}

.mb70 {
   margin-bottom: 70px !important;
}

.mb80 {
   margin-bottom: 80px !important;
}

.mb90 {
   margin-bottom: 90px !important;
}

.mb100 {
   margin-bottom: 100px !important;
}

.mb105 {
   margin-bottom: 105px !important;
}

.mb110 {
   margin-bottom: 110px !important;
}

.mb115 {
   margin-bottom: 115px !important;
}

.mb120 {
   margin-bottom: 120px !important;
}

.mb125 {
   margin-bottom: 125px !important;
}

.mb130 {
   margin-bottom: 130px !important;
}

.mb135 {
   margin-bottom: 135px !important;
}

.mb140 {
   margin-bottom: 140px !important;
}

.mb145 {
   margin-bottom: 145px !important;
}

.mb150 {
   margin-bottom: 150px !important;
}

/* padding-top 0 5 10 15 20 ··· 150 */
.pt00 {
   padding-top: 0px !important;
}

.pt05 {
   padding-top: 5px !important;
}

.pt10 {
   padding-top: 10px !important;
}

.pt15 {
   padding-top: 15px !important;
}

.pt20 {
   padding-top: 20px !important;
}

.pt25 {
   padding-top: 25px !important;
}

.pt30 {
   padding-top: 30px !important;
}

.pt35 {
   padding-top: 35px !important;
}

.pt40 {
   padding-top: 40px !important;
}

.pt45 {
   padding-top: 45px !important;
}

.pt50 {
   padding-top: 50px !important;
}

.pt55 {
   padding-top: 55px !important;
}

.pt60 {
   padding-top: 60px !important;
}

.pt65 {
   padding-top: 65px !important;
}

.pt70 {
   padding-top: 70px !important;
}

.pt80 {
   padding-top: 80px !important;
}

.pt90 {
   padding-top: 90px !important;
}

.pt100 {
   padding-top: 100px !important;
}

.pt105 {
   padding-top: 105px !important;
}

.pt110 {
   padding-top: 110px !important;
}

.pt115 {
   padding-top: 115px !important;
}

.pt120 {
   padding-top: 120px !important;
}

.pt125 {
   padding-top: 125px !important;
}

.pt130 {
   padding-top: 130px !important;
}

.pt135 {
   padding-top: 135px !important;
}

.pt140 {
   padding-top: 140px !important;
}

.pt145 {
   padding-top: 145px !important;
}

.pt150 {
   padding-top: 150px !important;
}

/* padding-bottom 0 5 10 15 20 ··· 150 */
.pb00 {
   padding-bottom: 0px !important;
}

.pb05 {
   padding-bottom: 5px !important;
}

.pb10 {
   padding-bottom: 10px !important;
}

.pb15 {
   padding-bottom: 15px !important;
}

.pb20 {
   padding-bottom: 20px !important;
}

.pb25 {
   padding-bottom: 25px !important;
}

.pb30 {
   padding-bottom: 30px !important;
}

.pb35 {
   padding-bottom: 35px !important;
}

.pb40 {
   padding-bottom: 40px !important;
}

.pb45 {
   padding-bottom: 45px !important;
}

.pb50 {
   padding-bottom: 50px !important;
}

.pb55 {
   padding-bottom: 55px !important;
}

.pb60 {
   padding-bottom: 60px !important;
}

.pb65 {
   padding-bottom: 65px !important;
}

.pb70 {
   padding-bottom: 70px !important;
}

.pb80 {
   padding-bottom: 80px !important;
}

.pb90 {
   padding-bottom: 90px !important;
}

.pb100 {
   padding-bottom: 100px !important;
}

.pb105 {
   padding-bottom: 105px !important;
}

.pb110 {
   padding-bottom: 110px !important;
}

.pb115 {
   padding-bottom: 115px !important;
}

.pb120 {
   padding-bottom: 120px !important;
}

.pb125 {
   padding-bottom: 125px !important;
}

.pb130 {
   padding-bottom: 130px !important;
}

.pb135 {
   padding-bottom: 135px !important;
}

.pb140 {
   padding-bottom: 140px !important;
}

.pb145 {
   padding-bottom: 145px !important;
}

.pb150 {
   padding-bottom: 150px !important;
}



/* module --------------------------------------------------------------------------------------------------------------------*/

/* con */
[class*="con-"][class*="-width1"] {
   position: relative;
   max-width: 1560px;
   width: 90%;
   margin: 0 auto;
}

[class*="con-"][class*="-width2"] {
   position: relative;
   max-width: 1720px;
   width: 90%;
   margin: 0 auto;
}

[class*="con-"][class*="-width3"] {
   position: relative;
   max-width: 1400px;
   width: 90%;
   margin: 0 auto;
}

[class*="-layout"] {
   position: relative;
}

/* col */
[class*="col-"][class*="-1"] {
   width: 100% !important;
}

[class*="col-"][class*="-2"] {
   width: 50% !important;
}

[class*="col-"][class*="-3"] {
   width: 33.33% !important;
}

[class*="col-"][class*="-4"] {
   width: 25% !important;
}

[class*="col-"][class*="-5"] {
   width: 20% !important;
}

[class*="col-"][class*="-6"] {
   width: 16.66% !important;
}

[class*="col-"][class*="-7"] {
   width: 14.28% !important;
}

[class*="col-"][class*="-8"] {
   width: 12.5% !important;
}

/* con */
[class*="con-"][class*="-1000"] {
   width: 1000px;
   margin: 0 auto;
}

[class*="con-"][class*="-1100"] {
   width: 1100px;
   margin: 0 auto;
}

[class*="con-"][class*="-1200"] {
   width: 1200px;
   margin: 0 auto;
}

[class*="con-"][class*="-1300"] {
   width: 1300px;
   margin: 0 auto;
}

[class*="con-"][class*="-1400"] {
   width: 1400px;
   margin: 0 auto;
}

[class*="con-"][class*="-1500"] {
   width: 1500px;
   margin: 0 auto;
}

[class*="m-"][class*="-width1"] {
   width: 93%;
   margin: 0 auto;
}

/* lang ko en */
#container [lang="ko"] {
   font-family: 'Noto Sans KR', '나눔고딕', 'NanumGothic', 'Nanum Gothic', '돋움', dotum, sans-serif !important;
}

#container [lang="en"] {
   font-family: 'Montserrat', sans-serif !important;
}

.c-scrollbar {
   z-index: 10000;
}


/* module --------------------------------------------------------------------------------------------------------------------*/
body {
   height: 100%;
}

body::-webkit-scrollbar,
.page_scroll_wrap::-webkit-scrollbar {
   width: 0px;
   height: 0;
}

body::-webkit-scrollbar-thumb {
   background-color: transparent;
   border-radius: 10px;
}

body::-webkit-scrollbar-track {
   background-color: transparent;
}

::-moz-selection {
   background: #cbcbcb;
   color: #fff;
}

::selection {
   background: #cbcbcb;
   color: #fff;
}

/* container */
#wrap,
#container {
   width: 100%;
   position: relative;
   overflow: hidden;
}

#contents {
   position: relative;
}

.inner * {
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
}


.laybg {
   background: #000;
   opacity: 0.5;
   position: fixed;
   left: 0;
   top: 0;
   z-index: 766;
   width: 100%;
   height: 100vh;
}

.layvideo {
   position: fixed;
   z-index: 799;
   max-width: 1200px;
   width: 80%;
   left: 50%;
   top: 50%;
   transform: translate(-50%, -50%);
}

.layvideo {
   max-height: 75vh;
   text-align: center;
}

.layvideo video {
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.laybg,
.layvideo {
   display: none;
}

.layclose {
   position: absolute;
   right: -40px;
   top: 0;
   color: #fff;
   font-size: 24px;
   width: 40px;
   height: 40px;
   line-height: 40px;
   text-align: center;
}

.layclose {
   transform: rotateZ(45deg);
}

.layclose i {
   font-size: 24px;
}

.layclose i,
.js_video_play i {
   display: inline-block;
   position: absolute;
   width: 100%;
   height: 100%;
   top: 0;
   left: 0;
}


@media screen and (max-width: 768px) {
   .layvideo {
      width: 100%;
   }

   .layclose {
      right: auto;
      left: 50%;
      transform: rotateZ(45deg);
      -webkit-transform: rotateZ(45deg);
   }

   .layclose {
      bottom: -40px;
      top: auto;
   }
}