@charset "UTF-8";
/* reset */
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: middle; font-family:'Noto Sans KR', '맑은고딕', 'malgun gothic'; }

/* html, body{
    overflow:hidden;
    height:100%;
} */

body{
    /*overflow-x:hidden;*/
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
body {line-height: 1; margin:0;}
ol, ul {list-style: none;}
a {text-decoration:none;}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after,q:before, q:after {content: ''; content: none;}
table {border-collapse: collapse; border-spacing: 0;}
p {margin:0; padding:0;}

@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 700;
  src: url('../font/notokr-bold.eot');
  src: url('../font/notokr-bold.eot?#iefix') format('embedded-opentype'),
       url('../font/notokr-bold.woff') format('woff'),
       url('../font/notokr-bold.ttf') format('truetype');
}

@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 600;
  src: url('../font/notokr-medium.eot');
  src: url('../font/notokr-medium.eot?#iefix') format('embedded-opentype'),
       url('../font/notokr-medium.woff') format('woff'),
       url('../font/notokr-medium.ttf') format('truetype');
}

@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 500;
  src: url('../font/notokr-Regular.eot');
  src: url('../font/notokr-Regular.eot?#iefix') format('embedded-opentype'),
       url('../font/notokr-Regular.woff') format('woff'),
       url('../font/notokr-Regular.ttf') format('truetype');
}

@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 400;
  src: url('../font/notokr-demilight.eot');
  src: url('../font/notokr-demilight.eot?#iefix') format('embedded-opentype'),
       url('../font/notokr-demilight.woff') format('woff'),
       url('../font/notokr-demilight.ttf') format('truetype');
}

@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 300;
  src: url('../font/notokr-light.eot');
  src: url('../font/notokr-light.eot?#iefix') format('embedded-opentype'),
       url('../font/nnotokr-light.woff') format('woff'),
       url('../font/notokr-light.ttf') format('truetype');
}

.projects{
    position: relative;
    z-index: 5;
    padding-left: 80px;
    padding-right: 80px;
}

@-webkit-keyframes dropping {
    0% { top: 0; }
    100% { top: 100%; } 
}
  
@keyframes dropping {
    0% { top: 0; }
    100% {top: 100%; } 
}
  
.l-beginning-anim {
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
    opacity: 0;
    -webkit-transition: opacity 0.6s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: opacity 0.6s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: opacity 0.6s cubic-bezier(0.25, 0.1, 0.25, 1), transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: opacity 0.6s cubic-bezier(0.25, 0.1, 0.25, 1), transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1); 
}
.l-beginning-anim.is-launch {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px); 
}
.l-beginning-anim.is-locked {
    -webkit-transition: none;
    transition: none;
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px); 
}
  
  /*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
  /**
   * 1. Change the default font family in all browsers (opinionated).
   * 2. Correct the line height in all browsers.
   * 3. Prevent adjustments of font size after orientation changes in
   *    IE on Windows Phone and in iOS.
   */
  /* Document
     ========================================================================== */
html {
    font-family: sans-serif;
    /* 1 */
    line-height: 1.15;
    /* 2 */
    -ms-text-size-adjust: 100%;
    /* 3 */
    -webkit-text-size-adjust: 100%;
    /* 3 */ 
}
  
  /* Sections
     ========================================================================== */
  /**
   * Remove the margin in all browsers (opinionated).
   */
body {
    margin: 0; 
}
  
  /**
   * Add the correct display in IE 9-.
   */
article,
aside,
footer,
header,
nav,
section {
    display: block; 
}
  
/**
* Correct the font size and margin on `h1` elements within `section` and
* `article` contexts in Chrome, Firefox, and Safari.
*/
h1 {
    font-size: 2em;
    margin: 0.67em 0;
 }
  
/* Grouping content
    ========================================================================== */
/**
* Add the correct display in IE 9-.
* 1. Add the correct display in IE.
*/
figcaption,
figure,
main {
    /* 1 */
    display: block; 
}

/**
* Add the correct margin in IE 8.
*/
figure {
    margin: 1em 40px; 
}
  
/**
* 1. Add the correct box sizing in Firefox.
* 2. Show the overflow in Edge and IE.
*/
hr {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 1 */
    overflow: visible;
    /* 2 */ 
}
  
  /**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
pre {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */ 
}
  
  /* Text-level semantics
     ========================================================================== */
  /**
   * 1. Remove the gray background on active links in IE 10.
   * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
   */
a {
    background-color: transparent;
    /* 1 */
    -webkit-text-decoration-skip: objects;
    /* 2 */ 
}
  
  /**
   * Remove the outline on focused links when they are also active or hovered
   * in all browsers (opinionated).
   */
a:active,
a:hover {
    outline-width: 0; 
}
  
  /**
   * 1. Remove the bottom border in Firefox 39-.
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */
abbr[title] {
    border-bottom: none;
    /* 1 */
    text-decoration: underline;
    /* 2 */
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    /* 2 */ 
}
  
  /**
   * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
   */
b,
strong {
    font-weight: inherit; 
}
  
  /**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */
b,
strong {
    font-weight: bolder; 
}
  
/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */ 
}
  
  /**
   * Add the correct font style in Android 4.3-.
   */
dfn {
    font-style: italic; 
}
  
  /**
   * Add the correct background and color in IE 9-.
   */
mark {
    background-color: #ff0;
    color: #000; 
}
  
  /**
   * Add the correct font size in all browsers.
   */
small {
    font-size: 80%; 
}
  
  /**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
 }
  
sub {
    bottom: -0.25em; 
}
  
sup {
    top: -0.5em; 
}
  
  /* Embedded content
     ========================================================================== */
  /**
   * Add the correct display in IE 9-.
   */
audio,
video {
    display: inline-block; 
}
  
  /**
   * Add the correct display in iOS 4-7.
   */
audio:not([controls]) {
    display: none;
    height: 0; 
}
  
  /**
   * Remove the border on images inside links in IE 10-.
   */
img {
    border-style: none; 
}
  
  /**
   * Hide the overflow in IE.
   */
svg:not(:root) {
    overflow: hidden;
 }
  
  /* Forms
     ========================================================================== */
  /**
   * 1. Change the font styles in all browsers (opinionated).
   * 2. Remove the margin in Firefox and Safari.
   */
button,
input,
optgroup,
select,
textarea {
    font-family: sans-serif;
    /* 1 */
    font-size: 100%;
    /* 1 */
    line-height: 1.15;
    /* 1 */
    margin: 0;
    /* 2 */ 
}
  
  /**
   * Show the overflow in IE.
   * 1. Show the overflow in Edge.
*/
button,
input {
    /* 1 */
    overflow: visible; 
}
  
  /**
   * Remove the inheritance of text transform in Edge, Firefox, and IE.
   * 1. Remove the inheritance of text transform in Firefox.
   */
button,
select {
    /* 1 */
    text-transform: none; 
}
  
  /**
   * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
   *    controls in Android 4.
   * 2. Correct the inability to style clickable types in iOS and Safari.
   */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
    /* 2 */ 
}
  
  /**
   * Remove the inner border and padding in Firefox.
   */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0; 
}
  
  /**
   * Restore the focus styles unset by the previous rule.
   */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText;
}
  
  /**
   * Change the border, margin, and padding in all browsers (opinionated).
   */
fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}
  
  /**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   * 3. Remove the padding so developers are not caught out when they zero out
   *    `fieldset` elements in all browsers.
   */
legend {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /* 1 */
    color: inherit;
    /* 2 */
    display: table;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */
    white-space: normal;
    /* 1 */ 
}
  
  /**
   * 1. Add the correct display in IE 9-.
   * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
progress {
    display: inline-block;
    /* 1 */
    vertical-align: baseline;
    /* 2 */ 
}
  
  /**
   * Remove the default vertical scrollbar in IE.
   */
textarea {
    overflow: auto; 
}
  
  /**
   * 1. Add the correct box sizing in IE 10-.
   * 2. Remove the padding in IE 10-.
   */
[type="checkbox"],
[type="radio"] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */ 
}
  
  /**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto; 
}
  
  /**
   * 1. Correct the odd appearance in Chrome and Safari.
   * 2. Correct the outline style in Safari.
   */
[type="search"] {
    -webkit-appearance: textfield;
    /* 1 */
    outline-offset: -2px;
    /* 2 */ 
}
  
  /**
   * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
   */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none; 
}
  
  /**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */
::-webkit-file-upload-button {
-webkit-appearance: button;
    /* 1 */
    font: inherit;
    /* 2 */ 
}
  
  /* Interactive
     ========================================================================== */
  /*
   * Add the correct display in IE 9-.
   * 1. Add the correct display in Edge, IE, and Firefox.
   */
details,
menu {
    display: block; 
}
  
  /*
   * Add the correct display in all browsers.
   */
summary {
    display: list-item; 
}
  
  /* Scripting
     ========================================================================== */
  /**
   * Add the correct display in IE 9-.
   */
canvas {
    display: inline-block; 
}
  
  /**
   * Add the correct display in IE.
   */
template {
    display: none; 
}
  
  /* Hidden
     ========================================================================== */
  /**
   * Add the correct display in IE 10-.
   */
[hidden] {
    display: none;
 }
  
.l-masonry .c-img {
    width: 100%; 
}
  
.grid-sizer,
.l-masonry__item {
    width: 100%; 
}
@media (min-width: 768px) {
      .grid-sizer,
      .l-masonry__item {
        width: 32%; 
    } 
}
  
@media (min-width: 768px) {
    .gutter-sizer {
        width: 2%; 
    } 
}
  
.l-masonry__item {
    float: left;
    margin-top: 20px; 
}
@media (min-width: 768px) {
    .l-masonry__item {
        margin-top: 2%; 
    } 
}
.l-masonry__item .c-img {
      display: inline-block; 
}
  
  /*!
   * Bootstrap v3.3.7 (http://getbootstrap.com)
   * Copyright 2011-2015 Twitter, Inc.
   * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
   */
.modal-open {
    overflow: hidden; 
}
  
.modal {
    display: none;
    overflow: hidden;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1050;
    -webkit-overflow-scrolling: touch;
    outline: 0; 
}
.modal.fade .modal-dialog {
      -webkit-transform: translate(0, -25%);
      transform: translate(0, -25%);
      -webkit-transition: -webkit-transform 0.3s ease-out;
      transition: -webkit-transform 0.3s ease-out;
      transition: transform 0.3s ease-out;
      transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out; 
}
.modal.in .modal-dialog {
      -webkit-transform: translate(0, 0);
      transform: translate(0, 0); 
}
  
.modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto; 
}
  
.modal-dialog {
    position: relative;
    width: auto;
    margin: 10px; 
}
  
.modal-content {
    position: relative;
    background-color: #fff;
    border: 1px solid #999;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
    box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
    background-clip: padding-box;
    outline: 0; 
}
  
.modal-backdrop {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1040;
    background-color: #000; 
}
.modal-backdrop.fade {
    opacity: 0;
    filter: alpha(opacity=0); 
}
.modal-backdrop.in {
    opacity: 0.5;
    filter: alpha(opacity=50); 
}
  
.modal-header {
    padding: 15px;
    border-bottom: 1px solid #e5e5e5; 
}
.modal-header:before, .modal-header:after {
    content: " ";
    display: table; 
}
.modal-header:after {
    clear: both; 
}
  
.modal-header .close {
    margin-top: -2px; 
}
  
.modal-title {
    margin: 0;
    line-height: 1.4; 
}
  
.modal-body {
    position: relative;
    padding: 15px; 
}
  
.modal-footer {
    padding: 15px;
    text-align: right;
    border-top: 1px solid #e5e5e5; 
}
.modal-footer:before, .modal-footer:after {
    content: " ";
    display: table; 
}
.modal-footer:after {
    clear: both; 
}
.modal-footer .btn + .btn {
    margin-left: 5px;
    margin-bottom: 0; 
}
.modal-footer .btn-group .btn + .btn {
    margin-left: -1px; 
}
.modal-footer .btn-block + .btn-block {
    margin-left: 0; 
}
  
.modal-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll; 
}
  
@media (min-width: 768px) {
    .modal-dialog {
        width: 600px;
        margin: 30px auto; 
    }
    .modal-content {
        -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); 
    }
    .modal-sm {
        width: 300px; 
    } 
}
  
@media (min-width: 992px) {
    .modal-lg {
        width: 900px; 
    } 
}
  
  /**
   * Set up a decent box model on the root element
   */
html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box; 
}
  
html,
body {
    font-size: 14px; 
}
@media (min-width: 768px) {
    html,
    body {
        font-size: 16px; 
    } 
}
  
body {
    position: relative;
    margin: 0;
    /* font-family: "Maison Neue", sans-serif; */
    font-family:'Noto Sans KR', '맑은고딕', 'malgun gothic';
    line-height: 1.4;
    color: #000;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    background-color: #fff; 
}
body.l-night {
      background-color: #000;
      color: #fff; 
}
  
h1, h2, h3 {
    margin: 0;
    font-size: inherit; 
}
  
  /**
   * Make all elements from the DOM inherit from the parent box-sizing
   * Since `*` has a specificity of 0, it does not override the `html` value
   * making all elements inheriting from the root box-sizing value
   * See: https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
   */
*,
*::before,
*::after {
    -webkit-box-sizing: inherit;
    box-sizing: inherit; 
}
  
  /**
   * Basic styles for links
   */
a {
    text-decoration: none; 
}
  
  /**
   * Basic styles for hr
   */
hr {
    position: relative;
    z-index: 1;
    border: 0;
    margin: 0;
    height: 1px;
    background-color: #E7EDF1; 
}
.l-night hr {
    background-color: rgba(255, 255, 255, 0.1); 
}
  
  /**
   * Reset select style
   */
button,
input {
    font: inherit; 
}
  
.c-h1 {
    margin: 0;
    font-weight: 600;
    font-size: 4.375rem; 
}
.c-h1-2 {
    margin: 0;
    font-weight: 600;
    font-size: 3.375rem; 
}
.c-h1--gradient {
    background: -webkit-linear-gradient(#fff, #000);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke: 2px #000000; 
}
@keyframes mg02_m{
  100%{
    top:42%;
    left:21% ;
  }
}
@keyframes mg03_m{
  100%{
    top:-22%;
    left:37%;
  }
}

  
.c-h2 {
    margin: 0;
    font-weight: 600;
    font-size: 1.75rem; 
}
  
.c-h3 {
    margin: 0;
    font-weight: 600;
    font-size: 0.9375rem; 
}
  
.c-p {
    margin: 0; 
}

  
.u-xlarge {
    font-size: 1.375rem; 
}
  
.u-large {
    font-size: 1.125rem; 
}
  
.u-huge {
    font-size: 6.875rem; 
}
  
.u-normal-weight {
    font-weight: 500 !important; 
}
  
@media (min-width: 768px) {
    .u-lh-60 {
        line-height: 60px; 
    } 
}
  
.u-light {
    font-family: "Maison Neue Light";
    font-weight: 300; 
}
  
.u-bold {
    font-family: "Maison Neue Bold";
    font-weight: bold; 
}
  
.u-grey10 {
    color: #E7EDF1 !important; 
}
  
.u-grey20 {
    color: #8B99A1 !important; 
}
.l-night .u-grey20 {
    color: #595959 !important; 
}
  
.u-white {
    color: #fff !important; 
}
  
.u-black {
    color: #000 !important; 
}
  
.u-inline-center {
    text-align: center !important; 
}
  
.u-inline-right {
    text-align: right !important; 
}
  
.u-inline-left {
    text-align: left !important; 
}
  
.u-relative {
    position: relative; 
}
  
.u-inline-block {
    display: inline-block; 
}
  
.u-block {
    display: block; 
}
  
.u-line-height-reset {
    line-height: 1 !important; 
}
  
.u-zindex-content {
    z-index: 5; 
}
  
.u-zindex-overcontent {
    z-index: 6 !important; 
}

@media (max-width: 767px) {
    .u-hide-mobile-down {
        display: none; 
    } 
}


@media (min-width: 768px) {
    .u-hide-mobile-up, .material-icons {
        display: none; 
    } 
}

.material-icons {font-weight: normal; font-size: 24px}
.black-header .material-icons {color: #fff}

  
.u-clearfix::after {
    clear: both;
    content: '';
    display: table; 
}
  
.u-margin-10 {
    margin: 10px !important; 
}
  
.u-margin-t-10 {
    margin-top: 10px !important; 
}
  
.u-margin-r-10 {
    margin-right: 10px !important; 
}
  
.u-margin-b-10 {
    margin-bottom: 10px !important; 
}
  
.u-margin-l-10 {
    margin-left: 10px !important; 
}
  
.u-margin-x-10 {
    margin-left: 10px !important;
    margin-right: 10px !important; 
}
  
.u-margin-y-10 {
    margin-top: 10px !important;
    margin-bottom: 10px !important; 
}
  
.u-margin-15 {
    margin: 15px !important; 
}
  
.u-margin-t-15 {
    margin-top: 15px !important; 
}
  
.u-margin-r-15 {
    margin-right: 15px !important; 
}
  
.u-margin-b-15 {
    margin-bottom: 15px !important; 
}
  
.u-margin-l-15 {
    margin-left: 15px !important; 
}
  
.u-margin-x-15 {
    margin-left: 15px !important;
    margin-right: 15px !important; 
}
  
.u-margin-y-15 {
    margin-top: 15px !important;
    margin-bottom: 15px !important; 
}
  
.u-margin-20 {
    margin: 20px !important; 
}
  
.u-margin-t-20 {
    margin-top: 20px !important; 
}
  
.u-margin-r-20 {
    margin-right: 20px !important; 
}
  
.u-margin-b-20 {
    margin-bottom: 20px !important; 
}
  
.u-margin-l-20 {
    margin-left: 20px !important; 
}
  
.u-margin-x-20 {
    margin-left: 20px !important;
    margin-right: 20px !important; 
}
  
.u-margin-y-20 {
    margin-top: 20px !important;
    margin-bottom: 20px !important; 
}
  
.u-margin-25 {
    margin: 25px !important; 
}
  
.u-margin-t-25 {
    margin-top: 25px !important; 
}
  
.u-margin-r-25 {
    margin-right: 25px !important; 
}
  
.u-margin-b-25 {
    margin-bottom: 25px !important; 
}
  
.u-margin-l-25 {
    margin-left: 25px !important; 
}
  
.u-margin-x-25 {
    margin-left: 25px !important;
    margin-right: 25px !important; 
}
  
.u-margin-y-25 {
    margin-top: 25px !important;
    margin-bottom: 25px !important; 
}
  
.u-margin-30 {
    margin: 30px !important; 
}
  
.u-margin-t-30 {
    margin-top: 30px !important; 
}
  
.u-margin-r-30 {
    margin-right: 30px !important; 
}
  
.u-margin-b-30 {
    margin-bottom: 30px !important; 
}
  
.u-margin-l-30 {
    margin-left: 30px !important; 
}
  
.u-margin-x-30 {
    margin-left: 30px !important;
    margin-right: 30px !important; 
}
  
.u-margin-y-30 {
    margin-top: 30px !important;
    margin-bottom: 30px !important; 
}
  
.u-margin-40 {
    margin: 40px !important; 
}
  
.u-margin-t-40 {
    margin-top: 40px !important; 
}
  
.u-margin-r-40 {
    margin-right: 40px !important; 
}
  
.u-margin-b-40 {
    margin-bottom: 40px !important; 
}
  
.u-margin-l-40 {
    margin-left: 40px !important; 
}
  
.u-margin-x-40 {
    margin-left: 40px !important;
    margin-right: 40px !important; 
}
  
.u-margin-y-40 {
    margin-top: 40px !important;
    margin-bottom: 40px !important; 
}
  
.u-margin-50 {
    margin: 50px !important; 
}
  
.u-margin-t-50 {
    margin-top: 50px !important; 
}
  
  .u-margin-r-50 {
    margin-right: 50px !important; }
  
  .u-margin-b-50 {
    margin-bottom: 50px !important; }
  
  .u-margin-l-50 {
    margin-left: 50px !important; }
  
  .u-margin-x-50 {
    margin-left: 50px !important;
    margin-right: 50px !important; }
  
  .u-margin-y-50 {
    margin-top: 50px !important;
    margin-bottom: 50px !important; }
  
  .u-margin-80 {
    margin: 80px !important; }
  
  .u-margin-t-80 {
    margin-top: 80px !important; }
  
  .u-margin-r-80 {
    margin-right: 80px !important; }
  
  .u-margin-b-80 {
    margin-bottom: 80px !important; }
  
  .u-margin-l-80 {
    margin-left: 80px !important; }
  
  .u-margin-x-80 {
    margin-left: 80px !important;
    margin-right: 80px !important; }
  
  .u-margin-y-80 {
    margin-top: 80px !important;
    margin-bottom: 80px !important; }
  
  .u-margin-90 {
    margin: 90px !important; }
  
  .u-margin-t-90 {
    margin-top: 90px !important; }
  
  .u-margin-r-90 {
    margin-right: 90px !important; }
  
  .u-margin-b-90 {
    margin-bottom: 90px !important; }
  
  .u-margin-l-90 {
    margin-left: 90px !important; }
  
  .u-margin-x-90 {
    margin-left: 90px !important;
    margin-right: 90px !important; }
  
  .u-margin-y-90 {
    margin-top: 90px !important;
    margin-bottom: 90px !important; }
  
  .u-margin-100 {
    margin: 100px !important; }
  
  .u-margin-t-100 {
    margin-top: 100px !important; }
  
  .u-margin-r-100 {
    margin-right: 100px !important; }
  
  .u-margin-b-100 {
    margin-bottom: 100px !important; }
  
  .u-margin-l-100 {
    margin-left: 100px !important; }
  
  .u-margin-x-100 {
    margin-left: 100px !important;
    margin-right: 100px !important; }
  
  .u-margin-y-100 {
    margin-top: 100px !important;
    margin-bottom: 100px !important; }
  
  .u-margin-120 {
    margin: 120px !important; }
  
  .u-margin-t-120 {
    margin-top: 120px !important; }
  
  .u-margin-r-120 {
    margin-right: 120px !important; }
  
  .u-margin-b-120 {
    margin-bottom: 120px !important; }
  
  .u-margin-l-120 {
    margin-left: 120px !important; }
  
  .u-margin-x-120 {
    margin-left: 120px !important;
    margin-right: 120px !important; }
  
  .u-margin-y-120 {
    margin-top: 120px !important;
    margin-bottom: 120px !important; }
  
  .u-margin-150 {
    margin: 150px !important; }
  
  .u-margin-t-150 {
    margin-top: 150px !important; }
  
  .u-margin-r-150 {
    margin-right: 150px !important; }
  
  .u-margin-b-150 {
    margin-bottom: 150px !important; }
  
  .u-margin-l-150 {
    margin-left: 150px !important; }
  
  .u-margin-x-150 {
    margin-left: 150px !important;
    margin-right: 150px !important; }
  
  .u-margin-y-150 {
    margin-top: 150px !important;
    margin-bottom: 150px !important; }
  
  .u-margin-200 {
    margin: 200px !important; }
  
  .u-margin-t-200 {
    margin-top: 200px !important; }
  
  .u-margin-r-200 {
    margin-right: 200px !important; }
  
  .u-margin-b-200 {
    margin-bottom: 200px !important; }
  
  .u-margin-l-200 {
    margin-left: 200px !important; }
  
  .u-margin-x-200 {
    margin-left: 200px !important;
    margin-right: 200px !important; }
  
  .u-margin-y-200 {
    margin-top: 200px !important;
    margin-bottom: 200px !important; }
  
@media (max-width: 767px) {
    .u-margin-t-20-mobile-down {
        margin-top: 20px; 
    } 
    .u-margin-t-40-mobile-down {
        margin-top: 40px; 
    } 

    .u-margin-t-50-mobile-down {
        margin-top: 50px !important; 
    } 
}
  
  .u-padding-20 {
    padding: 20px !important; }
  
  .u-padding-t-20 {
    padding-top: 20px !important; }
  
  .u-padding-r-20 {
    padding-right: 20px !important; }
  
  .u-padding-b-20 {
    padding-bottom: 20px !important; }
  
  .u-padding-l-20 {
    padding-left: 20px !important; }
  
  .u-padding-x-20 {
    padding-left: 20px !important;
    padding-right: 20px !important; }
  
  .u-padding-y-20 {
    padding-top: 20px !important;
    padding-bottom: 20px !important; }
  
  .u-padding-35 {
    padding: 35px !important; }
  
  .u-padding-t-35 {
    padding-top: 35px !important; }
  
  .u-padding-r-35 {
    padding-right: 35px !important; }
  
  .u-padding-b-35 {
    padding-bottom: 35px !important; }
  
  .u-padding-l-35 {
    padding-left: 35px !important; }
  
  .u-padding-x-35 {
    padding-left: 35px !important;
    padding-right: 35px !important; }
  
  .u-padding-y-35 {
    padding-top: 35px !important;
    padding-bottom: 35px !important; }
  
  .u-padding-50 {
    padding: 50px !important; }
  
  .u-padding-t-50 {
    padding-top: 50px !important; }
  
  .u-padding-r-50 {
    padding-right: 50px !important; }
  
  .u-padding-b-50 {
    padding-bottom: 50px !important; }
  
  .u-padding-l-50 {
    padding-left: 50px !important; }
  
  .u-padding-x-50 {
    padding-left: 50px !important;
    padding-right: 50px !important; }
  
  .u-padding-y-50 {
    padding-top: 50px !important;
    padding-bottom: 50px !important; }
  
  .u-padding-90 {
    padding: 90px !important; }
  
  .u-padding-t-90 {
    padding-top: 90px !important; }
  
  .u-padding-r-90 {
    padding-right: 90px !important; }
  
  .u-padding-b-90 {
    padding-bottom: 90px !important; }
  
  .u-padding-l-90 {
    padding-left: 90px !important; }
  
  .u-padding-x-90 {
    padding-left: 90px !important;
    padding-right: 90px !important; }
  
  .u-padding-y-90 {
    padding-top: 90px !important;
    padding-bottom: 90px !important; }
  
  @media (max-width: 767px) {
    .u-padding-x-10-mobile-down {
      padding-left: 10px;
      padding-right: 10px; } }
  
  .u-object-fit-cover {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover"; }
  
  .u-object-fit-contain {
    -o-object-fit: contain;
    object-fit: contain;
    font-family: "object-fit: contain";
    background: 0; }
  
  @media (max-width: 767px) {
    .u-text-ellipsis {
      overflow: hidden;
      white-space: nowrap;
      text-overflow: ellipsis; } }
  
.l-header {
    margin-top: 60px; 
}
.l-header.no-margin-t {
    margin-top: 0;
}

  
  .l-header-collapse {
    position: fixed;
    width: 80%;
    left: 0;
    top: 0;
    bottom: 0;
    background-color: #E7EDF1;
    z-index: 1101;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: -webkit-transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    padding: 30px; }
    .l-header-collapse .c-link {
      display: block;
      padding-top: 20px;
      padding-bottom: 20px;
      font-size: 16px; }
.l-header-collapse .c-link.is-active {
        text-decoration: underline; 
}
    .l-header-collapse .c-link-icon {
      color: #8B99A1 !important; }
    .l-header-collapse.is-open {
      -webkit-transform: translateX(0%);
      transform: translateX(0%); }
    .l-header-collapse__backdrop {
      position: fixed;
      top: 0;
      bottom: 0;
      right: 0;
      left: 0;
      background-color: #000;
      opacity: .8;
      z-index: 1100;
      display: none; }
      .l-header-collapse__backdrop.is-open {
        display: block; }
  
  .l-container {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container {
        width: 790px; } }
    @media (min-width: 992px) {
      .l-container {
        width: 1480px; } }
  
.l-container-fluid {
    position: relative;
    z-index: 5;
    padding-left: 80px;
    padding-right: 80px; 
}
.l-container-fluid.black-header {background: #0a459b; padding-top: 20px; padding-bottom: 20px}

@media (max-width: 767px) {
      .l-container-fluid {
        margin-right: auto;
        margin-left: auto;
        max-width: 100%;
        padding-left: 20px;
        padding-right: 20px; } 
}
  
  .l-container-1 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-1 {
        width: 102.5px; } }
    @media (min-width: 992px) {
      .l-container-1 {
        width: 160px; } }
  
  .l-container-2 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-2 {
        width: 165px; } }
    @media (min-width: 992px) {
      .l-container-2 {
        width: 280px; } }
  
  .l-container-3 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-3 {
        width: 227.5px; } }
    @media (min-width: 992px) {
      .l-container-3 {
        width: 400px; } }
  
  .l-container-4 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-4 {
        width: 290px; } }
    @media (min-width: 992px) {
      .l-container-4 {
        width: 520px; } }
  
  .l-container-5 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-5 {
        width: 352.5px; } }
    @media (min-width: 992px) {
      .l-container-5 {
        width: 640px; } }
  
  .l-container-6 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-6 {
        width: 415px; } }
    @media (min-width: 992px) {
      .l-container-6 {
        width: 760px; } }
  
  .l-container-7 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-7 {
        width: 477.5px; } }
    @media (min-width: 992px) {
      .l-container-7 {
        width: 880px; } }
  
  .l-container-8 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-8 {
        width: 540px; } }
    @media (min-width: 992px) {
      .l-container-8 {
        width: 1000px; } }
  
  .l-container-9 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-9 {
        width: 602.5px; } }
    @media (min-width: 992px) {
      .l-container-9 {
        width: 1120px; } }
  
  .l-container-10 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-10 {
        width: 665px; } }
    @media (min-width: 992px) {
      .l-container-10 {
        width: 1240px; } }
  
  .l-container-11 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-11 {
        width: 727.5px; } }
    @media (min-width: 992px) {
      .l-container-11 {
        width: 1360px; } }
  
  .l-container-12 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-12 {
        width: 790px; } }
    @media (min-width: 992px) {
      .l-container-12 {
        width: 1480px; } }
  
  .l-container-13 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-13 {
        width: 852.5px; } }
    @media (min-width: 992px) {
      .l-container-13 {
        width: 1600px; } }
  
  .l-container-14 {
    position: relative;
    z-index: 5;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    padding-left: 30px;
    padding-right: 30px; }
    @media (min-width: 768px) {
      .l-container-14 {
        width: 915px; } }
    @media (min-width: 992px) {
      .l-container-14 {
        width: 1720px; } }
  
  .l-container-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .l-container-flex .l-container-flex__cell {
      -ms-flex-item-align: center;
      align-self: center; }
    .l-container-flex .l-container-flex__cell--equalize {
      max-width: 100%;
      width: 130px; }
      @media (min-width: 768px) {
        .l-container-flex .l-container-flex__cell--equalize {
          width: 214px; } }
  
  @media (min-width: 992px) and (max-width: 1480px) {
    .l-container-80 {
      width: 80%; } }
  
  .l-grid-row {
    margin-left: -15px;
    margin-right: -15px; }
    .l-grid-row:before, .l-grid-row:after {
      content: " ";
      display: table; }
    .l-grid-row:after {
      clear: both; }
    .l-grid-row--no-gutter {
      margin-left: 0;
      margin-right: 0; }
      .l-grid-row--no-gutter > [class^="l-col-"],
      .l-grid-row--no-gutter > [class*=" l-col-"] {
        padding-left: 0;
        padding-right: 0; }
    .l-grid-row--20 {
      margin-left: -10px;
      margin-right: -10px; }
      .l-grid-row--20 > [class^="l-col-"],
      .l-grid-row--20 > [class*=" l-col-"] {
        padding-left: 10px;
        padding-right: 10px; }
    @media (min-width: 768px) {
      .l-grid-row--80 {
        margin-left: -40px;
        margin-right: -40px; }
        .l-grid-row--80 > [class^="l-col-"],
        .l-grid-row--80 > [class*=" l-col-"] {
          padding-left: 40px;
          padding-right: 40px; } }
  
.l-col-1 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; 
}
@media (min-width: 768px) {
    .l-col-1 {
        float: left;
        width: 8.33333%; 
    } 
}
  
.l-col-2 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; 
}
@media (min-width: 768px) {
    .l-col-2 {
        float: left;
        width: 16.66667%;
    } 
}
  
.l-col-3 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; 
}
@media (min-width: 768px) {
    .l-col-3 {
        float: left;
        width: 25%; 
    } 
}
  
.l-col-4 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; 
}
@media (min-width: 768px) {
    .l-col-4 {
        float: left;
        width: 33.33333%; 
    } 
}
  
.l-col-5 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; 
}
@media (min-width: 768px) {
    .l-col-5 {
        float: left;
        width: 41.66667%; 
    } 
}
  
.l-col-6 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; 
}
@media (min-width: 768px) {
    .l-col-6 {
        float: left;
        width: 50%; 
    }
}
  
.l-col-7 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; 
}
@media (min-width: 768px) {
    .l-col-7 {
        float: left;
        width: 58.33333%; 
    } 
}
  
.l-col-8 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; 
}
@media (min-width: 768px) {
      .l-col-8 {
        float: left;
        width: 66.66667%; 
    } 
}
  
.l-col-9 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; 
}
@media (min-width: 768px) {
    .l-col-9 {
        float: left;
        width: 75%; 
    } 
}
  
.l-col-10 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; 
}
@media (min-width: 768px) {
    .l-col-10 {
        float: left;
        width: 83.33333%; 
    } 
}
  
.l-col-11 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; 
}
@media (min-width: 768px) {
    .l-col-11 {
        float: left;
        width: 91.66667%; 
    } 
}
  
.l-col-12 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px; 
}
@media (min-width: 768px) {
    .l-col-12 {
        float: left;
        width: 100%; 
    } 
}
  
@media (max-width: 991px) {
    .l-col-1-md {
        position: relative;
        min-height: 1px;
        padding-left: 15px;
        padding-right: 15px; 
    } 
}
@media (max-width: 991px) and (min-width: 768px) {
    .l-col-1-md {
        float: left;
        width: 8.33333%; 
    } 
}
  
@media (max-width: 991px) {
    .l-col-2-md {
        position: relative;
        min-height: 1px;
        padding-left: 15px;
        padding-right: 15px; 
    } 
}
@media (max-width: 991px) and (min-width: 768px) {
    .l-col-2-md {
        float: left;
        width: 16.66667%; 
    } 
}
  
  @media (max-width: 991px) {
    .l-col-3-md {
      position: relative;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px; } }
    @media (max-width: 991px) and (min-width: 768px) {
      .l-col-3-md {
        float: left;
        width: 25%; } }
  
  @media (max-width: 991px) {
    .l-col-4-md {
      position: relative;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px; } }
    @media (max-width: 991px) and (min-width: 768px) {
      .l-col-4-md {
        float: left;
        width: 33.33333%; } }
  
  @media (max-width: 991px) {
    .l-col-5-md {
      position: relative;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px; } }
    @media (max-width: 991px) and (min-width: 768px) {
      .l-col-5-md {
        float: left;
        width: 41.66667%; } }
  
  @media (max-width: 991px) {
    .l-col-6-md {
      position: relative;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px; } }
    @media (max-width: 991px) and (min-width: 768px) {
      .l-col-6-md {
        float: left;
        width: 50%; } }
  
  @media (max-width: 991px) {
    .l-col-7-md {
      position: relative;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px; } }
    @media (max-width: 991px) and (min-width: 768px) {
      .l-col-7-md {
        float: left;
        width: 58.33333%; } }
  
  @media (max-width: 991px) {
    .l-col-8-md {
      position: relative;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px; } }
    @media (max-width: 991px) and (min-width: 768px) {
      .l-col-8-md {
        float: left;
        width: 66.66667%; } }
  
  @media (max-width: 991px) {
    .l-col-9-md {
      position: relative;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px; } }
    @media (max-width: 991px) and (min-width: 768px) {
      .l-col-9-md {
        float: left;
        width: 75%; } }
  
  @media (max-width: 991px) {
    .l-col-10-md {
      position: relative;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px; } }
    @media (max-width: 991px) and (min-width: 768px) {
      .l-col-10-md {
        float: left;
        width: 83.33333%; } }
  
  @media (max-width: 991px) {
    .l-col-11-md {
      position: relative;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px; } }
    @media (max-width: 991px) and (min-width: 768px) {
      .l-col-11-md {
        float: left;
        width: 91.66667%; } }
  
  @media (max-width: 991px) {
    .l-col-12-md {
      position: relative;
      min-height: 1px;
      padding-left: 15px;
      padding-right: 15px; } }
    @media (max-width: 991px) and (min-width: 768px) {
      .l-col-12-md {
        float: left;
        width: 100%; } }
  
  @media (min-width: 768px) {
    .l-col--offset-1 {
      margin-left: 8.33333%; } }
  
  .l-grid-table {
    display: table;
    width: 100%; }
    .l-grid-table > .l-grid-table__cell {
      display: table-cell;
      vertical-align: middle;
      white-space: nowrap; }
      .l-grid-table > .l-grid-table__cell--main {
        width: 100%;
        white-space: normal; }
    .l-grid-table--top > .l-grid-table__cell {
      vertical-align: top; }
    .l-grid-table--bottom > .l-grid-table__cell {
      vertical-align: bottom; }
    @media (max-width: 767px) {
      .l-grid-table--responsive > .l-grid-table__cell {
        display: block;
        white-space: normal; }
      .l-grid-table--responsive .l-grid-table__cell + .l-grid-table__cell {
        margin-top: 10px; } }
  
.js-in-view {
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
    opacity: 0;
    -webkit-transition: opacity 0.6s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: opacity 0.6s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: opacity 0.6s cubic-bezier(0.25, 0.1, 0.25, 1), transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: opacity 0.6s cubic-bezier(0.25, 0.1, 0.25, 1), transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.6s cubic-bezier(0.25, 0.1, 0.25, 1); 
}

.js-in-view.in-view {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px); 
}

.js-in-view.is-locked {
    -webkit-transition: none;
    transition: none;
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px); 
}

@media (min-width: 768px) {
    .js-in-view--delayed-20 {
        -webkit-transition-delay: .2s;
        transition-delay: .2s; 
    } 
}
@media (min-width: 768px) {
    .js-in-view--delayed-15 {
        -webkit-transition-delay: .15s;
        transition-delay: .15s; 
    } 
}
@media (min-width: 768px) {
    .js-in-view--delayed-30 {
        -webkit-transition-delay: .30s;
        transition-delay: .30s;
    } 
}
  
  .is-loading .js-in-view {
    opacity: 0 !important;
    -webkit-transform: translateY(100px) !important;
    transform: translateY(100px) !important; }
  
  .l-rain {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    pointer-events: none; }
    .l-rainy .l-rain {
      display: block; }
    .l-rain__drop {
      position: absolute;
      height: 78px;
      width: 6px;
      top: -100px;
      border-radius: 100px;
      background-color: #52C0FF;
      -webkit-animation-name: dropping;
      animation-name: dropping;
      -webkit-animation-duration: 8s;
      animation-duration: 8s;
      -webkit-animation-fill-mode: forwards;
      animation-fill-mode: forwards;
      -webkit-animation-iteration-count: infinite;
      animation-iteration-count: infinite;
      -webkit-animation-timing-function: linear;
      animation-timing-function: linear; }
      .l-rain__drop--blue20 {
        background-color: #427CFF; }
      .l-rain__drop--blue30 {
        background-color: #0200FF; }
      .l-rain__drop:nth-child(2) {
        -webkit-animation-duration: 7s;
        animation-duration: 7s;
        -webkit-animation-delay: 5.5s;
        animation-delay: 5.5s; }
      .l-rain__drop:nth-child(3) {
        -webkit-animation-duration: 8.6s;
        animation-duration: 8.6s;
        -webkit-animation-delay: 7.2s;
        animation-delay: 7.2s; }
      .l-rain__drop:nth-child(3) {
        -webkit-animation-duration: 8s;
        animation-duration: 8s;
        -webkit-animation-delay: 1.5s;
        animation-delay: 1.5s; }
      .l-rain__drop:nth-child(3) {
        -webkit-animation-duration: 7.4s;
        animation-duration: 7.4s;
        -webkit-animation-delay: 3.9s;
        animation-delay: 3.9s; }
      .l-rain__drop:nth-child(4) {
        -webkit-animation-duration: 8.2s;
        animation-duration: 8.2s;
        -webkit-animation-delay: 2.4s;
        animation-delay: 2.4s; }
      .l-rain__drop:nth-child(5) {
        -webkit-animation-duration: 8.7s;
        animation-duration: 8.7s;
        -webkit-animation-delay: 3.6s;
        animation-delay: 3.6s; }
      .l-rain__drop:nth-child(6) {
        -webkit-animation-duration: 9.1s;
        animation-duration: 9.1s;
        -webkit-animation-delay: 6.6s;
        animation-delay: 6.6s; }
      .l-rain__drop:nth-child(7) {
        -webkit-animation-duration: 7.7s;
        animation-duration: 7.7s;
        -webkit-animation-delay: 1.6s;
        animation-delay: 1.6s; }
      .l-rain__drop:nth-child(8) {
        -webkit-animation-duration: 8s;
        animation-duration: 8s;
        -webkit-animation-delay: 2.2s;
        animation-delay: 2.2s; }
      .l-rain__drop:nth-child(9) {
        -webkit-animation-duration: 8.5s;
        animation-duration: 8.5s;
        -webkit-animation-delay: 4.5s;
        animation-delay: 4.5s; }
      .l-rain__drop:nth-child(9) {
        -webkit-animation-duration: 7s;
        animation-duration: 7s;
        -webkit-animation-delay: 5.7s;
        animation-delay: 5.7s; }
  
  .l-wave {
    position: absolute;
    top: 0;
    right: 5px;
    width: 20px; }
    .activating-modal .l-wave {
      display: none; }
    .l-wave__overflow {
      overflow: hidden;
      height: 280px; }
  
  #animatedWave {
    -webkit-animation: moveTheWave .8s linear infinite;
    animation: moveTheWave .8s linear infinite; }
  
  @-webkit-keyframes moveTheWave {
    0% {
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0); }
    100% {
      -webkit-transform: translate3d(0, -41px, 0);
      transform: translate3d(0, -41px, 0); } }
  
  @keyframes moveTheWave {
    0% {
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0); }
    100% {
      -webkit-transform: translate3d(0, -41px, 0);
      transform: translate3d(0, -41px, 0); } }
  
.c-link {
    color: #8B99A1;
    font-weight: 300;
    -webkit-transition: 0.4s ease;
    transition: 0.4s ease; 
}

.c-link:hover, .c-link:active,
.is-active > .c-link {
      color: #000; 
}

.black-header .c-link:hover, 
.black-header .c-link:active,
.is-active > .c-link {
      color: #fff; 
}

.l-night .c-link {
      color: #595959; 
}
      .l-night .c-link:hover, .l-night .c-link:active {
        color: #fff; }
    .l-night .is-active > .c-link {
      color: #fff; }
    .c-link--basic {
      color: inherit;
      font-weight: inherit;
      text-decoration: underline; }
      .c-link--basic:hover {
        color: inherit; }
      .l-night .c-link--basic {
        color: #fff; }
    .c-link--primary {
      color: #000; }
      .l-night .c-link--primary {
        color: #fff; }
    .c-link--underline {
      position: relative; }
      .c-link--underline::after {
        display: block;
        content: '';
        position: absolute;
        left: 0;
        width: 0px;
        bottom: -3px;
        height: 2px;
        background-color: #E7EDF1;
        -webkit-transition: width 0.4s ease;
        transition: width 0.4s ease; }
      .is-active > .c-link--underline::after {
        width: 100% !important; }
      .c-link--underline.hover-in::after {
        width: 100%; }
      .c-link--underline.hover-out::after {
        width: 0%;
        right: 0;
        left: auto; }
    .c-link--underline-reverse {
      position: relative; }
      .c-link--underline-reverse::after {
        display: block;
        content: '';
        position: absolute;
        right: 0;
        width: 100%;
        bottom: -3px;
        height: 2px;
        background-color: #000;
        -webkit-transition: width 0.4s ease;
        transition: width 0.4s ease; }
      .c-link--underline-reverse.hover-in::after {
        width: 0px; }
      .c-link--underline-reverse.hover-out::after {
        width: 100%;
        left: 0;
        right: inherit; }
    .c-link__arrow {
      position: absolute;
      top: 0;
      bottom: 0;
      margin: auto;
      right: -10px; }
      .c-link__arrow:after {
        display: block;
        content: '';
        position: absolute;
        background-image: url("/img/arrow.svg");
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        width: 8px;
        height: 12px;
        top: 0;
        left: 0;
        bottom: 0;
        will-change: left;
        margin: auto;
        -webkit-transition: left 0.4s ease;
        transition: left 0.4s ease; }
      .c-link__arrow:before {
        position: absolute;
        content: '';
        top: 0;
        left: 0;
        bottom: 0;
        margin: auto;
        display: block;
        height: 2px;
        width: 10px;
        -webkit-transform: translate(80%, 200%);
        transform: translate(80%, 200%);
        -webkit-transition: -webkit-transform 0.4s ease;
        transition: -webkit-transform 0.4s ease;
        transition: transform 0.4s ease;
        transition: transform 0.4s ease, -webkit-transform 0.4s ease;
        background-color: #000; }
      .c-link:hover .c-link__arrow:after {
        left: 5px; }
      .c-link:hover .c-link__arrow:before {
        -webkit-transform: translate(0);
        transform: translate(0); }
  
  .c-link-icon {
    color: #8B99A1;
    font-size: 20px;
    -webkit-transition: color 0.4s ease;
    transition: color 0.4s ease; }
    .c-link-icon:hover {
      color: black; }
    .l-night .c-link-icon {
      color: #fff; }
      .l-night .c-link-icon:hover {
        color: #8B99A1; }
  
.c-link-image {
    display: block;
    position: relative;
    border: 0;
    cursor: pointer;
    width: 100%;
    padding: 0;
    overflow: hidden; 
}
.c-link-image .c-img {
    -webkit-transition: -webkit-transform 0.4s ease;
    transition: -webkit-transform 0.4s ease;
    transition: transform 0.4s ease;
    transition: transform 0.4s ease, -webkit-transform 0.4s ease; 
}

/* .c-link-image::before {
    content: '';
    position: absolute;
    background: #fff;
    left: 50%;
    top: 0;
    height: 100%;
    width: 30px;
    z-index: 10;
} */
.c-link-image::after {
      position: absolute;
      display: block;
      content: '';
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      border: 0 solid #fff;
      -webkit-transition: border 0.5s ease;
      transition: border 0.5s ease; 
}
.l-night .c-link-image::after {
    border: 0 solid #000; 
}
.c-link-image:focus {
    outline: 0; 
}
.c-link-image:hover::after {
    border: 10px solid #fff; 
}
.l-night .c-link-image:hover::after {
    border: 10px solid #000; 
}
.c-link-image:hover .c-img {
      -webkit-transform: scale(1.02);
      transform: scale(1.02); 
}
  
  .c-link-block {
    position: relative;
    display: block;
    border: 0;
    cursor: pointer;
    height: 200px;
    width: 100%;
    background-color: #F9F9F9; }
    @media (min-width: 768px) {
      .c-link-block {
        height: 480px; } }
    .c-link-block .c-p,
    .c-link-block .c-h2 {
      position: relative;
      z-index: 5;
      color: #000;
      -webkit-transition: color 0.4s ease;
      transition: color 0.4s ease; }
    .c-link-block::before {
      position: absolute;
      bottom: 0;
      right: 0;
      left: 0;
      display: block;
      z-index: 2;
      content: '';
      height: 0px;
      background-color: #000;
      -webkit-transition: height 0.4s ease;
      transition: height 0.4s ease; }
    .c-link-block:hover::before, .c-link-block.is-hover::before {
      height: 100%; }
    .c-link-block:hover .c-p,
    .c-link-block:hover .c-h2, .c-link-block.is-hover .c-p,
    .c-link-block.is-hover .c-h2 {
      color: #fff !important; }
    .c-link-block:focus {
      outline: 0; }
  
.c-img {
    display: block;
    margin: 0 auto;
    max-width: 100%; 
    position: relative;
}



.c-img--full-width {
      width: 100%; 
}
@media (min-width: 768px) {
    .c-img--cover {
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 100%; 
    } 
}
.c-img--height-528 {
    height: 225px; 
}
@media (min-width: 768px) {
    .c-img--height-528 {
        height: 528px; 
    } 
}
.c-img--height-600 {
      height: 250px; 
}
@media (min-width: 768px) {
    .c-img--height-600 {
        height: auto; 
        width: 50%;
    } 
}
@media (max-width: 767px) {
    .c-img--height-600 {
        height: auto; 
    } 
}
.c-img--height-690 {
    height: 690px; 
}
.c-img--height-740 {
    height: 280px; 
}
@media (min-width: 768px) {
    .c-img--height-740 {
        height: 740px; 
    } 
}
.c-img--height-800 {
    height: 300px; 
}
@media (min-width: 768px) {
    .c-img--height-800 {
        height: 800px; 
    } 
}
.c-img--height-1000 {
    height: 1000px; 
}
  
#logo-footer {
    width: 200px; 
}
.l-night #logo-footer {
    fill: #fff;
    stroke: #fff; 
}
  
#house {
    visibility: hidden;
    -webkit-animation: 2.64s show infinite;
    animation: 2.64s show infinite; 
}

#wave {
    visibility: hidden;
    -webkit-animation: 2.64s show infinite;
    animation: 2.64s show infinite;
    -webkit-animation-delay: -.66s;
    animation-delay: -.66s; 
}

#prisme {
    visibility: hidden;
    -webkit-animation: 2.64s show infinite;
    animation: 2.64s show infinite;
    -webkit-animation-delay: -1.32s;
    animation-delay: -1.32s; 
}

#internet {
    visibility: hidden;
    -webkit-animation: 2.64s show infinite;
    animation: 2.64s show infinite;
    -webkit-animation-delay: -1.98s;
    animation-delay: -1.98s; 
}

@-webkit-keyframes show {
    0% {
        visibility: visible; 
    }
    25% {
        visibility: visible; 
    }
    25.1% {
        visibility: hidden; 
    }
    100% {
        visibility: hidden; 
    }
}

@keyframes show {
    0% {
        visibility: visible; 
    }
    25% {
        visibility: visible; 
    }
    25.1% {
        visibility: hidden; 
    }
    100% {
        visibility: hidden; 
    } 
}

.c-loading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: 2001;
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
    background-color: #000;
    -webkit-transition: height .7s;
    transition: height .7s;
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    overflow: hidden; 
}
.c-loading.is-hidden {
    height: 0; 
}
.c-loading .txt {
    display: inline-block;
    margin-bottom: 35px;
    -ms-flex-item-align: end;
    align-self: flex-end; 
}
  
.c-badge {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: rgba(139, 153, 161, 0.08); 
}
.c-badge::before {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    margin: auto;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: rgba(139, 153, 161, 0.1);
    -webkit-animation: shockwave 4s ease-out infinite;
    animation: shockwave 4s ease-out infinite;
    z-index: -1; 
}
.c-badge::after {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    margin: auto;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: rgba(139, 153, 161, 0.1);
    -webkit-animation: shockwave2 4s ease-out infinite;
    animation: shockwave2 4s ease-out infinite;
    z-index: -1; 
}
.c-badge__back {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    margin: auto;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #fff;
    z-index: -1; 
}
.l-night .c-badge__back {
    background-color: #000; 
}
.c-badge__emoji {
    font-size: 25px;
    line-height: 40px;
    margin-top: 3px;
    margin-left: 1px;
    display: block; 
}
.c-badge__emoji.c-badge__emoji--window {
    margin-top: inherit; 
}
  
@-webkit-keyframes shockwave {
    0% {
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1);
        opacity: 1; }
    20% {
        opacity: 0;
        -webkit-transform: translate(-50%, -50%) scale(1.5);
        transform: translate(-50%, -50%) scale(1.5); }
    20.01% {
        opacity: 0;
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1); } 
}
  
@keyframes shockwave {
    0% {
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1);
        opacity: 1; }
    20% {
        opacity: 0;
        -webkit-transform: translate(-50%, -50%) scale(1.5);
        transform: translate(-50%, -50%) scale(1.5); }
    20.01% {
        opacity: 0;
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1); } 
}
  
@-webkit-keyframes shockwave2 {
    0% {
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1);
        opacity: 1; }
    4% {
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1);
        opacity: 1; }
    20% {
        opacity: 0;
        -webkit-transform: translate(-50%, -50%) scale(1.5);
        transform: translate(-50%, -50%) scale(1.5); }
    20.01% {
        opacity: 0;
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1); 
    } 
}
  
@keyframes shockwave2 {
    0% {
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1);
        opacity: 1; }
    4% {
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1);
        opacity: 1; }
    20% {
        opacity: 0;
        -webkit-transform: translate(-50%, -50%) scale(1.5);
        transform: translate(-50%, -50%) scale(1.5); }
    20.01% {
        opacity: 0;
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1); } 
}
  
.c-leave {
    position: fixed;
    height: 0px;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1500;
    -webkit-transition: height 0.4s ease;
    transition: height 0.4s ease; 
}
.c-leave .c-h1 {
    display: none;
    color: #fff;
    z-index: 1502; 
}
.c-leave.is-active {
    bottom: 0;
    height: 100%;
    background-color: #000;
    cursor: pointer; 
}
.c-leave.is-active .c-h1 {
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); 
}

.c-leave.is-active .l-emoji__drop {
    display: inherit; 
}
  
.c-leave__trigger {
    position: fixed;
    height: 1px;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1500; 
}
  
  .l-emoji__drop {
    display: none;
    position: absolute;
    font-size: 40px;
    top: -100px;
    z-index: 1501;
    -webkit-animation-name: dropping;
    animation-name: dropping;
    -webkit-animation-duration: 8s;
    animation-duration: 8s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear; }
    .l-emoji__drop:nth-child(2) {
      -webkit-animation-duration: 7s;
      animation-duration: 7s;
      -webkit-animation-delay: 5.5s;
      animation-delay: 5.5s; }
    .l-emoji__drop:nth-child(3) {
      -webkit-animation-duration: 8.6s;
      animation-duration: 8.6s;
      -webkit-animation-delay: 7.2s;
      animation-delay: 7.2s; }
    .l-emoji__drop:nth-child(3) {
      -webkit-animation-duration: 8s;
      animation-duration: 8s;
      -webkit-animation-delay: 1.5s;
      animation-delay: 1.5s; }
    .l-emoji__drop:nth-child(3) {
      -webkit-animation-duration: 7.4s;
      animation-duration: 7.4s;
      -webkit-animation-delay: 3.9s;
      animation-delay: 3.9s; }
    .l-emoji__drop:nth-child(4) {
      -webkit-animation-duration: 8.2s;
      animation-duration: 8.2s;
      -webkit-animation-delay: 2.4s;
      animation-delay: 2.4s; }
    .l-emoji__drop:nth-child(5) {
      -webkit-animation-duration: 8.7s;
      animation-duration: 8.7s;
      -webkit-animation-delay: 3.6s;
      animation-delay: 3.6s; }
    .l-emoji__drop:nth-child(6) {
      -webkit-animation-duration: 9.1s;
      animation-duration: 9.1s;
      -webkit-animation-delay: 6.6s;
      animation-delay: 6.6s; }
    .l-emoji__drop:nth-child(7) {
      -webkit-animation-duration: 7.7s;
      animation-duration: 7.7s;
      -webkit-animation-delay: 1.6s;
      animation-delay: 1.6s; }
    .l-emoji__drop:nth-child(8) {
      -webkit-animation-duration: 8s;
      animation-duration: 8s;
      -webkit-animation-delay: 2.2s;
      animation-delay: 2.2s; }
    .l-emoji__drop:nth-child(9) {
      -webkit-animation-duration: 8.5s;
      animation-duration: 8.5s;
      -webkit-animation-delay: 4.5s;
      animation-delay: 4.5s; }
    .l-emoji__drop:nth-child(9) {
      -webkit-animation-duration: 7s;
      animation-duration: 7s;
      -webkit-animation-delay: 5.7s;
      animation-delay: 5.7s; }
  
  .c-video {
    display: block;
    margin: 0 auto;
    max-width: 100%; }
    .c-video--full-width {
      width: 100%; }
    @media (min-width: 768px) {
      .c-video--height-600 {
        height: 600px; } }
  
.c-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff;
    z-index: 1001;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    opacity: 0;
    -webkit-transition: opacity 1s, -webkit-transform 1s;
    transition: opacity 1s, -webkit-transform 1s;
    transition: transform 1s, opacity 1s;
    transition: transform 1s, opacity 1s, -webkit-transform 1s;
    -webkit-transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
    transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
    will-change: transform; 
}
    .c-modal__container {
      padding-top: 190px;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      /* let it scroll */
      overflow: auto;
      -webkit-overflow-scrolling: touch; }
    .c-modal__close-btn {
      text-transform: uppercase;
      cursor: pointer;
      position: fixed;
      -webkit-transform: translate3d(0, 0, 0);
      top: 90px;
      left: 30px;
      z-index: 1002;
      opacity: 0;
      -webkit-transition: opacity 0.4s ease;
      transition: opacity 0.4s ease;
      pointer-events: none; }
      .active-modal .c-modal__close-btn {
        opacity: 1;
        pointer-events: auto; }
      @media (min-width: 1480px) {
        .c-modal__close-btn {
          left: calc((100vw - 1480px) / 2 + 30px); } }
    .c-modal.is-active {
      opacity: 1;
      -webkit-transform: translateY(0);
      transform: translateY(0); }
    .c-modal:focus {
      outline: none; }
    .c-modal .c-p,
    .c-modal .c-h2 {
      color: #000; }
    .c-modal hr {
      background-color: #E7EDF1; }
  
.c-modal-transit {
    position: fixed;
    display: block;
    z-index: 1000;
    content: '';
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    height: 100%;
    width: 100%;
    background: #000;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transition: -webkit-transform 1s;
    transition: -webkit-transform 1s;
    transition: transform 1s;
    transition: transform 1s, -webkit-transform 1s;
    -webkit-transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
    transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
    -webkit-transition-delay: .5s;
    transition-delay: .5s; 
}
.activating-modal .c-modal-transit {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%); 
}
.l-night .c-modal-transit {
    background: #fff; 
}
  
.c-link-image__shutter {
    position: absolute;
    display: block;
    content: '';
    height: 0;
    opacity: 0;
    top: inherit;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;
    -webkit-transition: height .5s, opacity .5s;
    transition: height .5s, opacity .5s;
    -webkit-transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
    transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1); 
}
.activating-modal .c-link-image__shutter {
    opacity: 1;
    height: 100%; 
}
.l-night .c-link-image__shutter {
      background: #000; 
}
  
  .affix {
    top: calc(50px + 20px);
    position: fixed;
    width: 20px;
    right: 10px; }
    @media (min-width: 768px) {
      .affix {
        right: 70px; } }
  
  .affix-bottom {
    position: absolute; }
  
  .c-timer {
    position: fixed;
    height: 0px;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1503;
    -webkit-transition: height 0.4s ease;
    transition: height 0.4s ease; }
    .c-timer .c-h1 {
      display: none;
      color: #fff; }
    .c-timer.is-active {
      bottom: 0;
      height: 100%;
      background-color: #000;
      cursor: pointer; }
      .c-timer.is-active .c-h1 {
        position: absolute;
        display: block;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); }
  
  .c-list {
    padding: 0;
    margin: 0;
    list-style: none; }
    .c-list li {
      display: inline-block; }
    .c-list li + li {
      position: relative;
      margin-left: 30px; }
      .c-list li + li::before {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        left: -20px;
        display: block;
        content: '-';
        font-size: 18px; }
  
  .c-list-vt {
    padding: 0;
    margin: 0;
    list-style: none; }
    .c-list-vt li + li {
      margin-top: 10px; }
  
.c-nav {
    padding: 0;
    margin: 0;
    list-style: none; 
}
.c-nav li {
    display: inline-block;
    text-align: center; 
}
.c-nav li + li {
    margin-left: 20px; 
}
.c-nav .c-link {
    display: inline-block; 
}
  


.project-discription{ vertical-align:middle; text-align:center; background:#fff; padding:35px 0 30px 0;}
.project-discription ul{ max-width:320px; margin:0 auto; position:relative; padding-top:30px;}
.project-discription ul:before{ content:''; position:absolute; width:3px; height:105px; background:#000; left:-15px; top:39px}
.project-discription ul li{ text-align:left; font-family:'Noto Sans KR'; font-size:15px; color:#333; line-height:2.1}
.project-discription ul li span{ font-weight:bold; display:inline-block; width:85px; letter-spacing:1}


.section07_sub{ width:100%; position:relative; background:#333}
.section07_sub .data_area{ width:100%; margin:0 auto; padding:52px 0 38px 0; position:relative}
.section07_sub .data_area ul{ }
.section07_sub .data_area ul li{ width:50%; float:left; font-family:'Noto Sans KR'; font-size:15px; color:#a2a2a2; margin-bottom:4px; font-weight:lighter; text-align:left; line-height:1.2}
.section07_sub .data_area ul li.w100{ width:100%; margin-top:33px;}
.section07_sub .data_area ul li span{ font-weight:normal; display:inline-block; margin-right:20px;}
.section07_sub .data_area ul li span.w40{ width:38px;}
.section07_sub .map_area{ position:absolute; right:0; top:40px}
.section07_sub .copyright{ height:40px; line-height:45px; color:#676767; font-size:14px; font-family:'Noto Sans KR'; font-weight:lighter; margin-top:40px; background:url(../images/img_foot_logo.png) no-repeat 0 0; padding:0 0 0 140px; background-size: 10%}


.port_sub_tit{ background:#be2a2f; text-align:center; padding:40px 0 50px 0; width:100%; position:static; z-index:101; }
.port_sub_tit p{animation:main_txt .3s ease-in 1 alternate; -webkit-animation:main_txt .3s ease-in 1 alternate;}
.port_sub_tit span{ font-size:13px; color:#fff; font-family:'Noto Sans KR'; letter-spacing:3px; font-weight:bold}
.port_sub_tit .title{ font-size:40px; font-family:'Noto Sans KR'; font-weight:bold; color:#fff; letter-spacing:-1px; margin-top:0;  margin-bottom:30px; text-shadow:2px 2px 12px #333; line-height:1.4}
.port_sub_tit .title span{font-size:30px; font-family:'Noto Sans KR'; font-weight:bold; color:#fff; letter-spacing:-1px; display:block; opacity:0.8}
.port_sub_tit p.text{font-family:'Noto Sans KR'; color:#fff; font-size:20px;  line-height:1.4}
.port_sub_tit p.text em{ display:block}

.c-logo img{width: 100%}
.c-logo {width: 400px}

@media (max-width: 767px) {
    .c-logo {width: 200px; } 
    

}



.mac_size{position: relative; z-index: -20; width:50%; padding-top: calc(778/991 * 50%); background:url(../images/bg_mac.png)0 0 / cover no-repeat; margin:0 auto;}
.slide-wrap{position: absolute !important; top:4%; left:5.7%; z-index: -10 !important; width:88.6%; height: 64.3%;}
.mac_size .slide-wrap .pc_project_img {height: 100%;}
.mac_size .slide-wrap .pc_project_img p{display:inline-block; width:100%; height: 100%;}
.mac_size .slide-wrap .pc_project_img .slide01{position: relative; top:0; background:url(../images/common/work_25.png) 0 0 / 100% no-repeat; width: 100%; height: 100%;}
.mac_size .slide-wrap .pc_project_img .slide02{position: relative; top:0; background:url(../images/common/work_26.png) 0 0 / 100% no-repeat; width: 100%; height: 100%;}


.iphone_size{position: absolute; bottom:0; right:-11%; width:20%; padding-top: calc( 164.8/82 * 20%); background:url(../images/bg_iphone.png)0 0 / cover no-repeat;}
.m_slide-wrap{position: absolute !important; top:2.9%; left:6.5%; z-index:-1 !important; width:88.6%; height: 90.9%;}
.iphone_size .m_project_img{width:100%; height:100%;} 
.iphone_size .m_project_img p{display:inline-block;  z-index: 1; width:100%;  height: 100%;}
.iphone_size .m_project_img .slide03{position: relative; top:0;  background:url(../images/common/work_27.png) 0 0 / 100% no-repeat;  width: 100%; height: 100%;}
.iphone_size .m_project_img .slide04{position: relative; top:0; background:url(../images/common/work_28.png) 0 0 / 100% no-repeat;  width: 100%; height: 100%;}

.mg_banner{ position: relative; width:100%; padding:13%; overflow: hidden; background-color: #eee;}
.mg_banner ul{width:100%;}
.mg_banner ul li{ position: absolute; display: inline-block; transform: rotate(-38deg);width:14.5%;  padding-top: calc(618/331 * 15%);}
.mg_banner ul .banner_img01{ top:104%; left:28%;   background: url(../images/common/work_29.png)0 0 / 100% no-repeat; }
.mg_banner ul .banner_img02{ top:-106%; left:13%;  background: url(../images/common/work_30.png)0 0 / 100% no-repeat; }
.mg_banner ul .banner_img03{ top:104%; left:74.8%; background: url(../images/common/work_31.png)0 0 / 100% no-repeat; }
.mg_banner ul .banner_img04{ top:-106%; right:26%; background: url(../images/common/work_32.png)0 0 / 100% no-repeat; }

.mg_banner ul .banner_img01.kjb-pb {background-image: url(../images/common/work_33.png); background-size: cover;}
.mg_banner ul .banner_img02.kjb-pb {background-image: url(../images/common/work_34.png); background-size: cover;}
.mg_banner ul .banner_img03.kjb-pb {background-image: url(../images/common/work_35.png); background-size: cover;}
.mg_banner ul .banner_img04.kjb-pb {background-image: url(../images/common/work_36.png); background-size: cover;}

.mg_banner ul .banner_img01.kjb-bb {background-image: url(../images/common/work_37.png); background-size: cover;}
.mg_banner ul .banner_img02.kjb-bb {background-image: url(../images/common/work_38.png); background-size: cover;}
.mg_banner ul .banner_img03.kjb-bb {background-image: url(../images/common/work_39.png); background-size: cover;}
.mg_banner ul .banner_img04.kjb-bb {background-image: url(../images/common/work_40.png); background-size: cover;}

.c-modal.is-active .mg_banner ul .banner_img01 {animation: mg01 1.4s 0.3s ease-out alternate both; }
.c-modal.is-active .mg_banner ul .banner_img02 {animation: mg02 1.4s 0.8s ease-out alternate both; }
.c-modal.is-active .mg_banner ul .banner_img03 {animation: mg03 1.4s 1.3s ease-out alternate both; }
.c-modal.is-active .mg_banner ul .banner_img04 {animation: mg04 1.4s 1.5s ease-out alternate both; }

@keyframes mg01{
  100%{
    top:5%;
    left:7%;
  }
}
@keyframes mg02{
  100%{
    top:23%;
    left:35%
  }
}
@keyframes mg03{
  100%{
    top:-24%;
    left:50.8%;
  }
}
@keyframes mg04{
  100%{
    top:7%;
    right:7%; 
  }
}
@media (max-width: 767px) {
  .c-h1 {
      font-size: 40px; 
  } 
  .c-h1-2 {
      font-size: 30px;
  }

  .mg_banner ul .banner_img02{ top:110% ; left:70% ;  background: url(../images/common/work_30.png)0 0 / 100% no-repeat; }
  .mg_banner ul .banner_img03{ top:-110% ; left:-20% ; background: url(../images/common/work_31.png)0 0 / 100% no-repeat; }
  /* 광주은행 개인뱅킹 */
  .mg_banner ul .banner_img02.kjb-pb {background-image: url(../images/common/work_34.png);}
  .mg_banner ul .banner_img03.kjb-pb {background-image: url(../images/common/work_35.png);}

  .mg_banner { position: relative; width: 100%; padding: 45% !important; overflow: hidden;}
  .mg_banner ul li{ position: absolute; display: inline-block; transform: rotate(-38deg); width:45% !important;  padding-top: calc(618/331 * 45%) !important;}
  .mg_banner ul .banner_img01{display: none;}
  .mg_banner ul .banner_img04{display: none;}

  .c-modal.is-active .mg_banner ul .banner_img02 {animation: mg02_m 1.5s 0.5s ease-out alternate both ; }
  .c-modal.is-active .mg_banner ul .banner_img03 {animation: mg03_m 1.5s 1s ease-out alternate both; }
  }