@charset "UTF-8";
/* ----------------------------------------------------
@media
---------------------------------------------------- */
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 400;
  src: font-url("fonts/NotoSansJP-Regular.woff2") format("woff2");
  src: font-url("fonts/NotoSansJP-Regular.woff") format("woff");
  src: font-url("fonts/NotoSansJP-Regular.otf") format("opentype");
  font-display: swap; }

@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 700;
  src: font-url("fonts/NotoSansJP-Bold.woff2") format("woff2");
  src: font-url("fonts/NotoSansJP-Bold.woff") format("woff");
  src: font-url("fonts/NotoSansJP-Bold.otf") format("opentype");
  font-display: swap; }

/*
 ----------------------------------------------------------------------
# Base 各要素のスタイルを初期化します
 ----------------------------------------------------------------------
*/
/* Eric Meyer’s “Reset CSS” 2.0 */
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: baseline; }

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

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

html, body {
  height: 100%; }

/* a, input, selectにoutlineがつくのを防ぐ */
a:focus {
  outline: none; }

input,
select {
  outline: none; }

/* サイズ算出からPaddingを抜く */
* {
  box-sizing: border-box; }

*:before,
*:after {
  box-sizing: border-box; }

/* 画像のinlineの下余白を消す */
img {
  vertical-align: middle; }

/* 画像がタッチエリアになってしまうのを防ぐ */
html {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

ul {
  list-style: none outside; }

body {
  font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #444444;
  font-size: 14px;
  line-height: 1.6;
  font-weight: 400;
  background: #eee; }
  @media only screen and (max-width: 767px) {
    body {
      font-size: 12px; } }

a {
  color: #42C2CB;
  text-decoration: none; }

a:hover {
  text-decoration: underline; }

a:link, a:visited {
  color: #42C2CB; }

p, li, a, h1, h2, h3, h4, h5 {
  letter-spacing: .05em; }

@media only screen and (min-width: 768px) {
  .pc-none {
    display: none; } }

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

.mr00 {
  margin-right: 0px !important; }

.mr05 {
  margin-right: 5px !important; }

.mr10 {
  margin-right: 10px !important; }

.mr15 {
  margin-right: 15px !important; }

.mr20 {
  margin-right: 20px !important; }

.mr25 {
  margin-right: 25px !important; }

.mr30 {
  margin-right: 30px !important; }

.mr35 {
  margin-right: 35px !important; }

.mr40 {
  margin-right: 40px !important; }

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

.ml00 {
  margin-left: 0px !important; }

.ml05 {
  margin-left: 5px !important; }

.ml10 {
  margin-left: 10px !important; }

.ml15 {
  margin-left: 15px !important; }

.ml20 {
  margin-left: 20px !important; }

.ml25 {
  margin-left: 25px !important; }

.ml30 {
  margin-left: 30px !important; }

.ml35 {
  margin-left: 35px !important; }

.ml40 {
  margin-left: 40px !important; }

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

.pr00 {
  padding-right: 0px !important; }

.pr05 {
  padding-right: 5px !important; }

.pr10 {
  padding-right: 10px !important; }

.pr15 {
  padding-right: 15px !important; }

.pr20 {
  padding-right: 20px !important; }

.pr25 {
  padding-right: 25px !important; }

.pr30 {
  padding-right: 30px !important; }

.pr35 {
  padding-right: 35px !important; }

.pr40 {
  padding-right: 40px !important; }

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

.pl00 {
  padding-left: 0px !important; }

.pl05 {
  padding-left: 5px !important; }

.pl10 {
  padding-left: 10px !important; }

.pl15 {
  padding-left: 15px !important; }

.pl20 {
  padding-left: 20px !important; }

.pl25 {
  padding-left: 25px !important; }

.pl30 {
  padding-left: 30px !important; }

.pl35 {
  padding-left: 35px !important; }

.pl40 {
  padding-left: 40px !important; }

.w100 {
  width: 100%; }

.w90 {
  width: 90%; }

.w80 {
  width: 80%; }

.w70 {
  width: 70%; }

.w60 {
  width: 60%; }

.w50 {
  width: 50%; }

.w40 {
  width: 40%; }

.w30 {
  width: 30%; }

.w20 {
  width: 20%; }

.w10 {
  width: 10%; }

.w00 {
  width: 0; }

.heroContent_imageWrapper .has-animation {
  display: block; }
  .heroContent_imageWrapper .has-animation.animation-ltr.animate-in:before {
    -webkit-animation: revealLTR 1.8s ease;
            animation: revealLTR 1.8s ease;
    -webkit-animation-delay: .5s;
            animation-delay: .5s; }

.heroContent_message .has-animation.animate-in p, .heroContent_message .has-animation.animate-in img, .heroContent_message .has-animation.animate-in div {
  -webkit-animation: Hidden 0.1s .6s forwards;
          animation: Hidden 0.1s .6s forwards; }

.heroContent_message .has-animation.animate-in:after {
  content: none; }

.heroContent_message .has-animation.animate-in:before {
  border-radius: 3px; }

.heroContent_message .has-animation.animation-ltr.animate-in:before {
  -webkit-animation: revealLTR 1s ease;
          animation: revealLTR 1s ease; }

.has-animation {
  display: inline-block;
  position: relative; }
  .has-animation p, .has-animation img, .has-animation div {
    opacity: 0; }
  .has-animation.animate-in p, .has-animation.animate-in img, .has-animation.animate-in div {
    -webkit-animation: Hidden 0.1s 1.6s forwards;
            animation: Hidden 0.1s 1.6s forwards; }
  .has-animation.animate-in:before, .has-animation.animate-in:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    z-index: 10; }
  .has-animation.animate-in:before {
    background-color: #42C2CB; }
  .has-animation.animate-in:after {
    background-color: #F5D060;
    -webkit-animation-delay: .5s;
            animation-delay: .5s; }
  .has-animation.animation-ltr.animate-in:before {
    -webkit-animation: revealLTR 1.8s ease;
            animation: revealLTR 1.8s ease; }
  .has-animation.animation-ltr.animate-in:after {
    -webkit-animation: revealLTR .7s .5s ease;
            animation: revealLTR .7s .5s ease; }
  .has-animation.animation-rtl.animate-in:before {
    -webkit-animation: revealRTL 1.8s ease;
            animation: revealRTL 1.8s ease; }
  .has-animation.animation-rtl.animate-in:after {
    -webkit-animation: revealRTL 1s .6s ease;
            animation: revealRTL 1s .6s ease; }

.timelineBack_border.is-show {
  visibility: visible !important;
  opacity: 1 !important;
  -webkit-animation: scaleVertical 3s 0s ease both 1;
          animation: scaleVertical 3s 0s ease both 1;
  transform-origin: 0 0;
  will-change: opacity; }

.title h2.is-show:before {
  visibility: visible !important;
  opacity: 1 !important;
  content: "";
  width: 40px;
  height: 3px;
  background: #212121;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-animation: titleLine 1s 0s ease both 1;
          animation: titleLine 1s 0s ease both 1;
  transform-origin: left; }
  @media only screen and (max-width: 767px) {
    .title h2.is-show:before {
      width: 25px; } }

.title h2.not-anim:before {
  content: none; }

.timelineBack_left.is-show:after {
  content: "HISTORY";
  font-weight: bold;
  font-size: 64px;
  transform: rotate(-90deg);
  transform-origin: right top;
  display: block;
  position: absolute;
  top: 10px;
  right: 70px;
  line-height: 1;
  letter-spacing: 6.86px;
  color: #212121;
  opacity: 0.05;
  -webkit-animation-delay: 3s;
          animation-delay: 3s;
  -webkit-animation: timeLineLeft 1s 0s ease both 1;
          animation: timeLineLeft 1s 0s ease both 1; }

#bubbleBack {
  background: url(../img/background/back.png) repeat 20% 20%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 1;
  z-index: -1;
  -webkit-animation-name: backgroundAnimate;
          animation-name: backgroundAnimate;
  -webkit-animation-duration: 200s;
          animation-duration: 200s;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  -webkit-animation-iteration-count: 10;
          animation-iteration-count: 10; }

#bubbleFront {
  background: url(../img/background/front.png) repeat 35% 35%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 1;
  z-index: -1;
  -webkit-animation-name: backgroundAnimate;
          animation-name: backgroundAnimate;
  -webkit-animation-duration: 300s;
          animation-duration: 300s;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  -webkit-animation-iteration-count: 10;
          animation-iteration-count: 10; }

@-webkit-keyframes backgroundAnimate {
  from {
    left: 0;
    top: 0; }
  to {
    left: -10000px;
    top: -2000px; } }

@keyframes backgroundAnimate {
  from {
    left: 0;
    top: 0; }
  to {
    left: -10000px;
    top: -2000px; } }

.flashing {
  width: 30px;
  height: 30px;
  cursor: pointer;
  position: absolute;
  right: 3px;
  bottom: 3px;
  margin: auto;
  z-index: 1; }

.flashing:before {
  -webkit-animation: flashing 1s 1s ease-out;
          animation: flashing 1s 1s ease-out;
  border: 3px solid #42C2CB; }

.flashing:after {
  -webkit-animation: flashing 1s .5s ease-in;
          animation: flashing 1s .5s ease-in;
  border: 3px solid #42C2CB; }

.flashing:before,
.flashing:after {
  content: "";
  width: 70%;
  height: 70%;
  display: block;
  border-radius: 50%;
  background: #42C2CB;
  opacity: 0;
  -webkit-animation-iteration-count: 50;
          animation-iteration-count: 50;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto; }

@-webkit-keyframes flashing {
  0% {
    -webkit-transform: scale(0.1, 0.1);
    opacity: 0; }
  50% {
    opacity: .5; }
  100% {
    -webkit-transform: scale(1.2, 1.2);
    opacity: 0; } }

@keyframes flashing {
  0% {
    -webkit-transform: scale(0.1, 0.1);
    opacity: 0; }
  50% {
    opacity: .5; }
  100% {
    -webkit-transform: scale(1.2, 1.2);
    opacity: 0; } }

@-webkit-keyframes revealRTL {
  0% {
    width: 0;
    right: 0; }
  65% {
    width: 100%;
    right: 0; }
  100% {
    width: 0;
    right: 100%; } }

@keyframes revealRTL {
  0% {
    width: 0;
    right: 0; }
  65% {
    width: 100%;
    right: 0; }
  100% {
    width: 0;
    right: 100%; } }

@-webkit-keyframes revealLTR {
  0% {
    width: 0;
    left: 0; }
  65% {
    width: 100%;
    left: 1px; }
  100% {
    width: 0;
    left: 100%; } }

@keyframes revealLTR {
  0% {
    width: 0;
    left: 0; }
  65% {
    width: 100%;
    left: 1px; }
  100% {
    width: 0;
    left: 100%; } }

@-webkit-keyframes Hidden {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes Hidden {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes scaleVertical {
  0% {
    transform: scaleY(0); }
  100% {
    transform: scaleY(1); } }

@keyframes scaleVertical {
  0% {
    transform: scaleY(0); }
  100% {
    transform: scaleY(1); } }

@-webkit-keyframes titleLine {
  0% {
    transform: scaleX(0); }
  100% {
    transform: scaleX(1); } }

@keyframes titleLine {
  0% {
    transform: scaleX(0); }
  100% {
    transform: scaleX(1); } }

@-webkit-keyframes AnimationGrd {
  0% {
    background-position: 50% 0%; }
  50% {
    background-position: 50% 100%; }
  100% {
    background-position: 50% 0%; } }

@keyframes AnimationGrd {
  0% {
    background-position: 50% 0%; }
  50% {
    background-position: 50% 100%; }
  100% {
    background-position: 50% 0%; } }

@-webkit-keyframes AnimationBtn {
  0% {
    background-position: 50% 0%; }
  50% {
    background-position: 50% 100%; }
  100% {
    background-position: 50% 0%; } }

@keyframes AnimationBtn {
  0% {
    background-position: 50% 0%; }
  50% {
    background-position: 50% 100%; }
  100% {
    background-position: 50% 0%; } }

@-webkit-keyframes AnimationLoading {
  0% {
    opacity: 1; }
  50% {
    opacity: .5; }
  100% {
    opacity: 0; } }

@keyframes AnimationLoading {
  0% {
    opacity: 1; }
  50% {
    opacity: .5; }
  100% {
    opacity: 0; } }

@-webkit-keyframes timelineBack_left {
  0% {
    width: 0%; }
  100% {
    width: 30%; } }

@keyframes timelineBack_left {
  0% {
    width: 0%; }
  100% {
    width: 30%; } }

@Keyframes timeLineLeft {
  0% {
    opacity: 0;
    top: 30px; }
  100% {
    opacity: 0.05;
    top: 10px; } }

.expanding-grid {
  position: relative;
  width: 100%; }
  .expanding-grid .links {
    display: block;
    margin: 0 -1em;
    overflow: hidden;
    padding: 1em 0; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .expanding-grid .links {
        padding: 1em 20px; } }
    .expanding-grid .links > li {
      box-sizing: border-box;
      float: left;
      padding: 1em; }
      .expanding-grid .links > li a {
        color: #fff;
        display: block;
        font-size: 2em;
        line-height: 1;
        position: relative;
        text-align: center;
        text-decoration: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        border: 1px solid #E2E2E2; }
        .expanding-grid .links > li a.active:before {
          background-color: transparent;
          border: 12px solid transparent;
          border-bottom: 12px solid #FFF;
          bottom: -0.57em;
          content: '';
          height: 0;
          left: 50%;
          margin-left: -0.295em;
          position: absolute;
          width: 0;
          z-index: 2; }
        .expanding-grid .links > li a.active:after {
          border: 14px solid transparent;
          border-bottom: 14px solid #E2E2E2;
          bottom: -0.57em;
          content: '';
          height: 0;
          left: 50%;
          margin-left: -0.375em;
          position: absolute;
          width: 0;
          z-index: 1; }
        .expanding-grid .links > li a img {
          width: 100%;
          transition: 0.2s linear; }
          .expanding-grid .links > li a img:hover {
            opacity: 0.5;
            transition: 0.2s linear; }
      @media only screen and (max-width: 39.99em) {
        .expanding-grid .links > li {
          width: 50%; }
          .expanding-grid .links > li:nth-of-type(2n+1) {
            clear: left; } }
      @media only screen and (min-width: 40em) and (max-width: 59.99em) {
        .expanding-grid .links > li {
          width: 33.33333%; }
          .expanding-grid .links > li:nth-of-type(3n+1) {
            clear: left; } }
      @media only screen and (min-width: 60em) {
        .expanding-grid .links > li {
          width: 25%; }
          .expanding-grid .links > li:nth-of-type(4n+1) {
            clear: left; } }
  .expanding-grid .spacer {
    clear: both;
    display: block;
    margin: 0 1em; }
  .expanding-grid .expanding-container {
    clear: both;
    display: none;
    overflow: hidden;
    width: 100%; }
    .expanding-grid .expanding-container.expanded, .expanding-grid .expanding-container:target {
      display: block; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .expanding-grid .expanding-container {
        padding: 0 20px; } }
  .expanding-grid .hentry {
    background: #fff;
    box-sizing: border-box;
    clear: both;
    color: #212121;
    min-height: 4em;
    overflow: hidden;
    width: 100%;
    border: 1px solid #E2E2E2;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
    .expanding-grid .hentry:before {
      content: "";
      position: absolute;
      top: -24px;
      left: 50%;
      margin-left: -15px;
      border: 12px solid transparent;
      border-bottom: 12px solid #FFF;
      z-index: 2; }
    .expanding-grid .hentry:after {
      content: "";
      position: absolute;
      top: -30px;
      left: 50%;
      margin-left: -17px;
      border: 14px solid transparent;
      border-bottom: 14px solid #555;
      z-index: 1; }
  .expanding-grid .expanding-inner {
    display: flex; }
    @media only screen and (max-width: 767px) {
      .expanding-grid .expanding-inner {
        display: block; } }
    .expanding-grid .expanding-inner .entry-content {
      font-weight: bold;
      padding: 36px 24px;
      width: 70%; }
      @media only screen and (max-width: 767px) {
        .expanding-grid .expanding-inner .entry-content {
          width: 100%;
          padding: 36px 16px 24px; } }
      .expanding-grid .expanding-inner .entry-content h1 {
        font-size: 36px;
        margin-bottom: 16px;
        line-height: 1; }
        @media only screen and (max-width: 767px) {
          .expanding-grid .expanding-inner .entry-content h1 {
            font-size: 24px; } }
        .expanding-grid .expanding-inner .entry-content h1 span.small {
          font-size: 18px; }
      .expanding-grid .expanding-inner .entry-content figure {
        display: none; }
      @media only screen and (max-width: 767px) {
        .expanding-grid .expanding-inner .entry-content figure {
          display: block;
          margin-bottom: 16px; }
          .expanding-grid .expanding-inner .entry-content figure img {
            width: 100%; } }
      .expanding-grid .expanding-inner .entry-content h2 {
        font-size: 18px;
        margin-bottom: 24px; }
        @media only screen and (max-width: 767px) {
          .expanding-grid .expanding-inner .entry-content h2 {
            font-size: 14px; } }
      .expanding-grid .expanding-inner .entry-content p {
        font-weight: normal;
        font-size: 14px;
        margin-bottom: 24px;
        line-height: 1.8; }
        @media only screen and (max-width: 767px) {
          .expanding-grid .expanding-inner .entry-content p {
            font-size: 10px; } }
      .expanding-grid .expanding-inner .entry-content .entry-contentBtn ul {
        display: flex; }
        @media only screen and (max-width: 767px) {
          .expanding-grid .expanding-inner .entry-content .entry-contentBtn ul {
            display: block; } }
        .expanding-grid .expanding-inner .entry-content .entry-contentBtn ul li {
          margin-right: 16px; }
          @media only screen and (max-width: 767px) {
            .expanding-grid .expanding-inner .entry-content .entry-contentBtn ul li a {
              width: 100%;
              margin-bottom: 6px; } }
    .expanding-grid .expanding-inner .entry-image {
      width: 30%; }
      @media only screen and (min-width: 768px) {
        .expanding-grid .expanding-inner .entry-image {
          min-height: 320px; } }
    .expanding-grid .expanding-inner .entry-image-mac {
      background: url(../img/img-grid-mac-detail.jpg) no-repeat center center;
      background-size: cover; }
    .expanding-grid .expanding-inner .entry-image-holika {
      background: url(../img/img-grid-holikaholika-detail.jpg) no-repeat center center;
      background-size: cover; }
    .expanding-grid .expanding-inner .entry-image-daenggi {
      background: url(../img/img-grid-DAENGGIMEORI-detail.jpg) no-repeat center center;
      background-size: cover; }
    .expanding-grid .expanding-inner .entry-image-tovet {
      background: url(../img/img-grid-tovet-detail.jpg) no-repeat center center;
      background-size: cover; }
    .expanding-grid .expanding-inner .entry-image-forwealthy {
      background: url(../img/img-grid-forwealthy-detail.jpg) no-repeat center center;
      background-size: cover; }
    .expanding-grid .expanding-inner .entry-image-amok {
      background: url(../img/img-grid-amok-detail.jpg) no-repeat center center;
      background-size: cover; }
    .expanding-grid .expanding-inner .entry-image-forencos {
      background: url(../img/img-grid-forencos-detail.jpg) no-repeat center center;
      background-size: cover; }
    .expanding-grid .expanding-inner .entry-image-javindeseoul {
      background: url(../img/img-grid-javindeseoul-detail.jpg) no-repeat center center;
      background-size: cover; }
    .expanding-grid .expanding-inner .entry-image-dewycel {
      background: url(../img/img-grid-DEWYCEL-detail.jpg) no-repeat center center;
      background-size: cover; }
  .expanding-grid .close-button {
    background: url(../img/parts/closeBtn.svg) no-repeat scroll 50% 50% transparent;
    color: #fff;
    display: inline-block;
    line-height: 1;
    overflow: hidden;
    padding: 1.5em 2em;
    text-decoration: none;
    text-indent: 5em;
    white-space: nowrap;
    width: 20px;
    will-change: opacity;
    z-index: 5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .expanding-grid .close-button {
        padding: 1.5em 4em; } }
    .expanding-grid .close-button.active {
      transition: opacity 0.2s; }
    .expanding-grid .close-button:hover {
      opacity: 0.5; }

/*!
	Modaal - accessible modals - v0.4.4
	by Humaan, for all humans.
	http://humaan.com
 */
.modaal-noscroll {
  overflow: hidden; }

.modaal-accessible-hide {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden; }

.modaal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  opacity: 0; }

.modaal-wrapper {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: auto;
  opacity: 1;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  transition: all .3s ease-in-out; }

.modaal-wrapper * {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden; }

.modaal-wrapper .modaal-close {
  border: none;
  background: 0 0;
  padding: 0;
  -webkit-appearance: none; }

.modaal-wrapper.modaal-start_none {
  display: none;
  opacity: 1; }

.modaal-wrapper.modaal-start_fade {
  opacity: 0; }

.modaal-wrapper [tabindex="0"] {
  outline: 0 !important; }

.modaal-wrapper.modaal-fullscreen {
  overflow: hidden; }

.modaal-outer-wrapper {
  display: table;
  position: relative;
  width: 100%;
  height: 100%; }

.modaal-fullscreen .modaal-outer-wrapper {
  display: block; }

.modaal-inner-wrapper {
  display: table-cell;
  width: 100%;
  height: 100%;
  position: relative;
  vertical-align: middle;
  text-align: center;
  padding: 80px 25px; }

.modaal-fullscreen .modaal-inner-wrapper {
  padding: 0;
  display: block;
  vertical-align: top; }

.modaal-container {
  position: relative;
  display: inline-block;
  width: 100%;
  margin: auto;
  text-align: left;
  color: #000;
  max-width: 1000px;
  border-radius: 0;
  background: #fff;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  cursor: auto; }

.modaal-container.is_loading {
  height: 100px;
  width: 100px;
  overflow: hidden; }

.modaal-fullscreen .modaal-container {
  max-width: none;
  height: 100%;
  overflow: auto; }

.modaal-close {
  position: fixed;
  right: 20px;
  top: 20px;
  color: #fff;
  cursor: pointer;
  opacity: 1;
  width: 50px;
  height: 50px;
  background: rgba(0, 0, 0, 0);
  border-radius: 100%;
  transition: all .2s ease-in-out; }

.modaal-close:focus, .modaal-close:hover {
  outline: 0;
  background: #fff; }

.modaal-close:focus:after, .modaal-close:focus:before, .modaal-close:hover:after, .modaal-close:hover:before {
  background: #b93d0c; }

.modaal-close span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden; }

.modaal-close:after, .modaal-close:before {
  display: block;
  content: " ";
  position: absolute;
  top: 14px;
  left: 23px;
  width: 4px;
  height: 22px;
  border-radius: 4px;
  background: #fff;
  transition: background .2s ease-in-out; }

.modaal-close:before {
  transform: rotate(-45deg); }

.modaal-close:after {
  transform: rotate(45deg); }

.modaal-fullscreen .modaal-close {
  background: #afb7bc;
  right: 10px;
  top: 10px; }

.modaal-content-container {
  padding: 30px; }

.modaal-confirm-wrap {
  padding: 30px 0 0;
  text-align: center;
  font-size: 0; }

.modaal-confirm-btn {
  font-size: 14px;
  display: inline-block;
  margin: 0 10px;
  vertical-align: middle;
  cursor: pointer;
  border: none;
  background: 0 0; }

.modaal-confirm-btn.modaal-ok {
  padding: 10px 15px;
  color: #fff;
  background: #555;
  border-radius: 3px;
  transition: background .2s ease-in-out; }

.modaal-confirm-btn.modaal-ok:hover {
  background: #2f2f2f; }

.modaal-confirm-btn.modaal-cancel {
  text-decoration: underline; }

.modaal-confirm-btn.modaal-cancel:hover {
  text-decoration: none;
  color: #2f2f2f; }

.modaal-instagram .modaal-container {
  width: auto;
  background: 0 0;
  box-shadow: none !important; }

.modaal-instagram .modaal-content-container {
  padding: 0;
  background: 0 0; }

.modaal-instagram .modaal-content-container > blockquote {
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important; }

.modaal-instagram iframe {
  opacity: 0;
  margin: -6px !important;
  border-radius: 0 !important;
  width: 1000px !important;
  max-width: 800px !important;
  box-shadow: none !important;
  -webkit-animation: instaReveal 1s linear forwards;
  animation: instaReveal 1s linear forwards; }

.modaal-image .modaal-inner-wrapper {
  padding-left: 140px;
  padding-right: 140px; }

.modaal-image .modaal-container {
  width: auto;
  max-width: 100%; }

.modaal-gallery-wrap {
  position: relative;
  color: #fff; }

.modaal-gallery-item {
  display: none; }

.modaal-gallery-item img {
  display: block; }

.modaal-gallery-item.is_active {
  display: block; }

.modaal-gallery-label {
  position: absolute;
  left: 0;
  width: 100%;
  margin: 20px 0 0;
  font-size: 18px;
  text-align: center;
  color: #fff; }

.modaal-gallery-label:focus {
  outline: 0; }

.modaal-gallery-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  opacity: 1;
  cursor: pointer;
  color: #fff;
  width: 50px;
  height: 50px;
  background: rgba(0, 0, 0, 0);
  border: none;
  border-radius: 100%;
  transition: all .2s ease-in-out; }

.modaal-gallery-control.is_hidden {
  opacity: 0;
  cursor: default; }

.modaal-gallery-control:focus, .modaal-gallery-control:hover {
  outline: 0;
  background: #fff; }

.modaal-gallery-control:focus:after, .modaal-gallery-control:focus:before, .modaal-gallery-control:hover:after, .modaal-gallery-control:hover:before {
  background: #afb7bc; }

.modaal-gallery-control span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden; }

.modaal-gallery-control:after, .modaal-gallery-control:before {
  display: block;
  content: " ";
  position: absolute;
  top: 16px;
  left: 25px;
  width: 4px;
  height: 18px;
  border-radius: 4px;
  background: #fff;
  transition: background .2s ease-in-out; }

.modaal-gallery-control:before {
  margin: -5px 0 0;
  transform: rotate(-45deg); }

.modaal-gallery-control:after {
  margin: 5px 0 0;
  transform: rotate(45deg); }

.modaal-gallery-next-inner {
  left: 100%;
  margin-left: 40px; }

.modaal-gallery-next-outer {
  right: 45px; }

.modaal-gallery-prev:after, .modaal-gallery-prev:before {
  left: 22px; }

.modaal-gallery-prev:before {
  margin: 5px 0 0;
  transform: rotate(-45deg); }

.modaal-gallery-prev:after {
  margin: -5px 0 0;
  transform: rotate(45deg); }

.modaal-gallery-prev-inner {
  right: 100%;
  margin-right: 40px; }

.modaal-gallery-prev-outer {
  left: 45px; }

.modaal-video-wrap {
  margin: auto 50px;
  position: relative; }

.modaal-video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  background: #000;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto; }

.modaal-video-container embed, .modaal-video-container iframe, .modaal-video-container object {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.modaal-iframe .modaal-content {
  width: 100%;
  height: 100%; }

.modaal-iframe-elem {
  width: 100%;
  height: 100%;
  display: block; }

.modaal-loading-spinner {
  background: 0 0;
  position: absolute;
  width: 200px;
  height: 200px;
  top: 50%;
  left: 50%;
  margin: -100px 0 0 -100px;
  transform: scale(0.25); }

.modaal-loading-spinner > div {
  width: 24px;
  height: 24px;
  margin-left: 4px;
  margin-top: 4px;
  position: absolute; }

.modaal-loading-spinner > div > div {
  width: 100%;
  height: 100%;
  border-radius: 15px;
  background: #fff; }

.modaal-loading-spinner > div:nth-of-type(1) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: 0s;
  animation-delay: 0s; }

.modaal-loading-spinner > div:nth-of-type(2) > div, .modaal-loading-spinner > div:nth-of-type(3) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(1) {
  transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(2) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .12s;
  animation-delay: .12s; }

.modaal-loading-spinner > div:nth-of-type(2) {
  transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(3) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .25s;
  animation-delay: .25s; }

.modaal-loading-spinner > div:nth-of-type(4) > div, .modaal-loading-spinner > div:nth-of-type(5) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(3) {
  transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(4) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .37s;
  animation-delay: .37s; }

.modaal-loading-spinner > div:nth-of-type(4) {
  transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(5) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .5s;
  animation-delay: .5s; }

.modaal-loading-spinner > div:nth-of-type(6) > div, .modaal-loading-spinner > div:nth-of-type(7) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(5) {
  transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(6) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .62s;
  animation-delay: .62s; }

.modaal-loading-spinner > div:nth-of-type(6) {
  transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(7) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .75s;
  animation-delay: .75s; }

.modaal-loading-spinner > div:nth-of-type(7) {
  transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(8) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .87s;
  animation-delay: .87s; }

.modaal-loading-spinner > div:nth-of-type(8) {
  transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); }

@media only screen and (min-width: 1400px) {
  .modaal-video-container {
    padding-bottom: 0;
    height: 731px; } }

@media only screen and (max-width: 1140px) {
  .modaal-image .modaal-inner-wrapper {
    padding-left: 25px;
    padding-right: 25px; }
  .modaal-gallery-control {
    top: auto;
    bottom: 20px;
    transform: none;
    background: rgba(0, 0, 0, 0.7); }
  .modaal-gallery-control:after, .modaal-gallery-control:before {
    background: #fff; }
  .modaal-gallery-next {
    left: auto;
    right: 20px; }
  .modaal-gallery-prev {
    left: 20px;
    right: auto; } }

@media screen and (max-width: 900px) {
  .modaal-instagram iframe {
    width: 500px !important; } }

@media only screen and (max-width: 600px) {
  .modaal-instagram iframe {
    width: 280px !important; } }

@media screen and (max-height: 1100px) {
  .modaal-instagram iframe {
    width: 700px !important; } }

@media screen and (max-height: 1000px) {
  .modaal-inner-wrapper {
    padding-top: 60px;
    padding-bottom: 60px; }
  .modaal-instagram iframe {
    width: 600px !important; } }

@media screen and (max-height: 900px) {
  .modaal-instagram iframe {
    width: 500px !important; }
  .modaal-video-container {
    max-width: 900px;
    max-height: 510px; } }

@media only screen and (max-height: 820px) {
  .modaal-gallery-label {
    display: none; } }

@keyframes instaReveal {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes instaReveal {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    transform: scale(1.5); }
  100% {
    opacity: .1;
    transform: scale(1); } }

@keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    transform: scale(1.5); }
  100% {
    opacity: .1;
    transform: scale(1); } }

/* ------------------------
 grobal
 ------------------------ */
html {
  height: 100%; }

body {
  height: 100%;
  padding: 16px; }
  body:before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(230deg, #9fdbc4 0%, #ace1cd 70%, #ffe79f 100%);
    background-size: 100% 100%; }
  @media only screen and (max-width: 767px) {
    body {
      padding: 12px; } }

#ie-buster-app {
  bottom: 0 !important;
  top: auto !important; }

/* ------------------------
 common
 ------------------------ */
.btn {
  text-align: center; }
  .btn a {
    background-image: linear-gradient(45deg, #42c2cb 0%, #ace1cd 50%, #f5d060 90%);
    -webkit-animation: AnimationBtn 3s ease 10 !important;
            animation: AnimationBtn 3s ease 10 !important;
    background-size: 300% 300%;
    padding: 16px 0;
    color: #fff;
    border-radius: 100px;
    font-weight: bold;
    display: inline-block;
    transition: all .4s ease-in-out;
    overflow: hidden;
    position: relative;
    text-transform: capitalize;
    width: 186px; }
    @media only screen and (max-width: 767px) {
      .btn a {
        width: 130px;
        font-size: 12px;
        padding: 10px 0; } }
    .btn a:hover {
      text-decoration: none;
      background-position: 500% 500%;
      transition: 0.2s linear; }
  .btn .btnEffect-bottom {
    transition: all 0.2s linear 0s;
    overflow: hidden; }
    .btn .btnEffect-bottom:before {
      content: "\f175";
      font-family: FontAwesome;
      position: absolute;
      display: flex;
      align-items: center;
      justify-content: center;
      bottom: 20%;
      left: 0px;
      width: 100%;
      height: 100%;
      text-align: center;
      font-size: 16px;
      transition: 0.2s linear;
      opacity: 0; }
    .btn .btnEffect-bottom:hover {
      text-indent: -9999px;
      transition: 0.2s linear; }
      .btn .btnEffect-bottom:hover:before {
        bottom: 0;
        text-indent: 0;
        opacity: 1;
        transition: 0.2s linear; }
  .btn .btnEffect-left {
    transition: all 0.2s linear 0s;
    overflow: hidden; }
    .btn .btnEffect-left:before {
      content: "\f178";
      font-family: FontAwesome;
      position: absolute;
      display: flex;
      align-items: center;
      justify-content: center;
      top: 0;
      right: 10%;
      width: 100%;
      height: 100%;
      text-align: center;
      font-size: 16px;
      transition: 0.2s linear;
      opacity: 0; }
    .btn .btnEffect-left:hover {
      text-indent: -9999px;
      transition: 0.2s linear; }
      .btn .btnEffect-left:hover:before {
        right: 0;
        text-indent: 0;
        opacity: 1;
        transition: 0.2s linear; }

.title {
  text-align: center;
  padding: 100px 0 0 0;
  margin-bottom: 60px; }
  @media only screen and (max-width: 767px) {
    .title {
      padding: 50px 0 0 0;
      margin-bottom: 30px; } }
  .title h2 {
    font-size: 36px;
    font-family: 'Caveat', cursive;
    font-weight: 700;
    display: inline-block;
    position: relative;
    margin-bottom: 16px; }
    @media only screen and (max-width: 767px) {
      .title h2 {
        font-size: 24px; } }
  .title h3 {
    font-size: 16px;
    font-weight: bold; }
    @media only screen and (max-width: 767px) {
      .title h3 {
        font-size: 14px; } }
  .title p {
    max-width: 840px;
    margin: 0 auto;
    text-align: left;
    margin: 36px auto; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .title p {
        padding: 0 20px; } }
    .title p span {
      color: #DD2F44;
      display: block; }

section > .cc {
  background: #fff;
  width: 100%; }

.mainWrapper {
  position: relative;
  height: 100%;
  width: 100%; }

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .br-sm {
    display: none; } }

@media only screen and (min-width: 768px) {
  .br-sm {
    display: none; } }

.reveal-normal,
.reveal-recruit-talent-01,
.reveal-recruit-talent-02,
.reveal-recruit-talent-03 {
  visibility: hidden; }

.none {
  display: none; }

/* ------------------------
 content
 ------------------------ */
#hero .loadingWrap {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 100px;
  height: 100px;
  -webkit-animation: AnimationLoading 0.6s 2s ease 1 forwards !important;
          animation: AnimationLoading 0.6s 2s ease 1 forwards !important;
  opacity: 0.8; }

#hero header {
  background-color: rgba(0, 0, 0, 0);
  padding: 24px 36px;
  position: fixed;
  top: 16px;
  left: 0;
  z-index: 100;
  width: 100%;
  color: #fff;
  font-weight: bold;
  visibility: hidden; }
  @media only screen and (max-width: 767px) {
    #hero header {
      padding: 16px 26px; } }
  #hero header .headerWrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: 0.9s cubic-bezier(0.69, -0.22, 0.3, 1.13); }
    #hero header .headerWrapper h1 {
      font-size: 24px;
      z-index: 1; }
      #hero header .headerWrapper h1 a {
        color: #fff;
        text-decoration: none; }
    #hero header .headerWrapper nav {
      transition: 0.9s cubic-bezier(0.69, -0.22, 0.3, 1.13); }
      #hero header .headerWrapper nav ul {
        display: flex;
        text-align: center;
        font-size: 12px; }
        #hero header .headerWrapper nav ul li {
          margin: 0 12px;
          position: relative;
          transition: 0.9s cubic-bezier(0.69, -0.22, 0.3, 1.13); }
          #hero header .headerWrapper nav ul li a {
            color: #fff;
            text-decoration: none;
            transition: 0.9s cubic-bezier(0.69, -0.22, 0.3, 1.13); }
            #hero header .headerWrapper nav ul li a span {
              font-family: 'Caveat', cursive;
              font-weight: 700;
              letter-spacing: 0.1em; }
  @media only screen and (max-width: 767px) {
    #hero header .headerWrapper {
      overflow: hidden;
      transition: all .2s ease;
      z-index: 999;
      width: 100%; }
      #hero header .headerWrapper.active {
        width: 100%;
        background: rgba(66, 194, 203, 0.8);
        border-radius: 3px;
        padding: 10px 20px;
        margin-top: -7px; }
        #hero header .headerWrapper.active .menuContent * {
          opacity: 1; }
        #hero header .headerWrapper.active h1 {
          z-index: 0; }
        #hero header .headerWrapper.active span i:nth-child(1) {
          top: 47% !important;
          left: -40%;
          width: 50%;
          transform: rotate(45deg);
          transition: width .15s, top .15s .15s, left .15s .15s, transform .15s .15s; }
        #hero header .headerWrapper.active span i:nth-child(2) {
          top: 47% !important;
          width: 50%;
          right: 42%;
          transform: rotate(-45deg);
          transition: width .15s, top .15s .15s, right .15s .15s, transform .15s .15s; }
        #hero header .headerWrapper.active h1 {
          opacity: 0; }
      #hero header .headerWrapper span.toggle {
        width: 25px;
        height: 50px;
        position: absolute;
        right: 26px;
        cursor: pointer;
        z-index: 1; }
        #hero header .headerWrapper span.toggle i {
          position: absolute;
          transform-origin: 50% 50%;
          width: 100%;
          height: 2px;
          left: 0;
          right: 0;
          margin: auto;
          background-color: #fff;
          transition: transform .3s ease, opacity .1s ease .1s; }
          #hero header .headerWrapper span.toggle i:nth-child(1) {
            top: 45%;
            transition: transform .15s; }
          #hero header .headerWrapper span.toggle i:nth-child(2) {
            transition: transform .15s;
            top: 55%; }
      #hero header .headerWrapper h1 {
        font-size: 14px; }
      #hero header .headerWrapper nav {
        position: absolute;
        width: 100%;
        height: 100%;
        line-height: 70px;
        right: 0px;
        text-align: center;
        left: 40px;
        bottom: 6px; }
        #hero header .headerWrapper nav * {
          opacity: 0; }
        #hero header .headerWrapper nav ul li {
          margin: 0 2vw;
          transition: opacity .3s ease .3s;
          cursor: pointer;
          position: relative; }
          #hero header .headerWrapper nav ul li p {
            display: none; } }
  @media only screen and (max-width: 320px) {
    #hero header .headerWrapper nav ul li {
      margin: 0 1.5vw; } }
  #hero header .headerWrapper.ani-menu {
    background: rgba(66, 194, 203, 0.8);
    padding: 10px 20px;
    transition: 0.9s cubic-bezier(0.69, -0.22, 0.3, 1.13);
    margin-top: -24px;
    border-radius: 3px; }
    @media only screen and (max-width: 767px) {
      #hero header .headerWrapper.ani-menu .toggle {
        right: 36px;
        transition: 0.2s linear; }
      #hero header .headerWrapper.ani-menu nav {
        bottom: 23px; } }
  @media only screen and (max-width: 767px) {
    #hero header .headerWrapper.active .toggle {
      right: 26px; } }

#hero .heroContent {
  position: relative; }
  #hero .heroContent div img {
    width: 100%; }
  #hero .heroContent .heroContent_message {
    position: absolute;
    text-align: center;
    width: 100%;
    top: 44%;
    z-index: 99; }
    @media only screen and (max-width: 767px) {
      #hero .heroContent .heroContent_message {
        width: 90%;
        top: 30%;
        bottom: 0;
        right: 0;
        left: 0;
        z-index: 99;
        margin: auto; } }
    #hero .heroContent .heroContent_message .heroContent_messageInner {
      background-image: linear-gradient(45deg, rgba(66, 194, 203, 0.9) 0%, rgba(172, 225, 205, 0.9) 52%, rgba(245, 208, 96, 0.9) 90%);
      margin: 0 auto;
      padding: 12px 24px;
      text-transform: uppercase;
      display: inline-block;
      position: relative;
      border-radius: 3px; }
      #hero .heroContent .heroContent_message .heroContent_messageInner p {
        font-size: 36px;
        line-height: 1;
        color: #fff;
        font-family: 'Caveat', cursive;
        font-weight: 700; }
        @media only screen and (max-width: 767px) {
          #hero .heroContent .heroContent_message .heroContent_messageInner p {
            font-size: 8vw; } }
  #hero .heroContent .heroContent_btn {
    position: absolute;
    top: 56%;
    z-index: 99;
    visibility: hidden;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      #hero .heroContent .heroContent_btn {
        top: 65%; } }
  #hero .heroContent .heroContent_imageWrapper {
    display: flex; }
    @media only screen and (max-width: 767px) {
      #hero .heroContent .heroContent_imageWrapper {
        display: block; } }
    @media only screen and (max-width: 767px) {
      #hero .heroContent .heroContent_imageWrapper .has-animation {
        opacity: 0;
        -webkit-animation: show 20s infinite;
                animation: show 20s infinite; } }
    #hero .heroContent .heroContent_imageWrapper .heroContent_image01 {
      height: 100vh;
      width: 100vw; }
      @media only screen and (max-width: 767px) {
        #hero .heroContent .heroContent_imageWrapper .heroContent_image01 {
          height: 100vh;
          width: 100%;
          -webkit-animation-delay: 0s;
                  animation-delay: 0s; } }
      #hero .heroContent .heroContent_imageWrapper .heroContent_image01 .heroContent_imageInner {
        background: url(../img/main-01.png) no-repeat center center;
        background-size: cover;
        width: 100%;
        height: 100%; }
    #hero .heroContent .heroContent_imageWrapper .heroContent_right {
      width: 100vw;
      height: 100vh; }
      @media only screen and (max-width: 767px) {
        #hero .heroContent .heroContent_imageWrapper .heroContent_right {
          height: auto;
          width: auto; } }
      #hero .heroContent .heroContent_imageWrapper .heroContent_right .heroContent_image02 {
        width: 100%;
        height: 50%; }
        @media only screen and (max-width: 767px) {
          #hero .heroContent .heroContent_imageWrapper .heroContent_right .heroContent_image02 {
            position: absolute;
            top: 0;
            height: 100vh;
            -webkit-animation-delay: 7s;
                    animation-delay: 7s; } }
        #hero .heroContent .heroContent_imageWrapper .heroContent_right .heroContent_image02 .heroContent_imageInner {
          background: url(../img/main-02.png) no-repeat center center;
          background-size: cover;
          height: 100%; }
          @media only screen and (max-width: 767px) {
            #hero .heroContent .heroContent_imageWrapper .heroContent_right .heroContent_image02 .heroContent_imageInner {
              background-position: center right 50%; } }
      #hero .heroContent .heroContent_imageWrapper .heroContent_right .heroContent_image03 {
        width: 100%;
        height: 50%; }
        @media only screen and (max-width: 767px) {
          #hero .heroContent .heroContent_imageWrapper .heroContent_right .heroContent_image03 {
            position: absolute;
            top: 0;
            height: 100vh;
            -webkit-animation-delay: 14s;
                    animation-delay: 14s; } }
        #hero .heroContent .heroContent_imageWrapper .heroContent_right .heroContent_image03 .heroContent_imageInner {
          background: url(../img/main-03.png) no-repeat center center;
          background-size: cover;
          height: 100%; }
          @media only screen and (max-width: 767px) {
            #hero .heroContent .heroContent_imageWrapper .heroContent_right .heroContent_image03 .heroContent_imageInner {
              background-position: center right 60%; } }

@-webkit-keyframes show {
  0% {
    opacity: 0; }
  20% {
    opacity: 1; }
  35% {
    opacity: 1; }
  50% {
    opacity: 0; } }

@keyframes show {
  0% {
    opacity: 0; }
  20% {
    opacity: 1; }
  35% {
    opacity: 1; }
  50% {
    opacity: 0; } }

@media only screen and (max-width: 767px) {
  #brand .brandContent {
    padding: 0 16px; } }

#brand .brandContent .brandContent_gridWrapper {
  max-width: 940px;
  margin: 0 auto; }

#company .companyContent .companyContent_ceoWrapper {
  display: flex;
  justify-content: space-between;
  max-width: 940px;
  margin: 0 auto;
  margin-bottom: 60px; }
  @media only screen and (max-width: 767px) {
    #company .companyContent .companyContent_ceoWrapper {
      padding: 0 16px;
      margin-bottom: 36px; } }
  @media only screen and (max-width: 767px) {
    #company .companyContent .companyContent_ceoWrapper {
      display: block; } }
  #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage {
    position: relative;
    width: 40%;
    visibility: hidden; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage {
        left: 30px; } }
    @media only screen and (max-width: 767px) {
      #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage {
        width: 100%;
        height: 270px;
        height: auto;
        margin-bottom: 16px; }
        #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage:before {
          content: "";
          display: block;
          padding-top: 100%;
          /* 1:1 */ } }
    #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage .companyContent_ceoImageOkada {
      position: absolute;
      width: 300px;
      z-index: 2;
      top: -30px;
      left: -20px; }
      @media only screen and (max-width: 767px) {
        #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage .companyContent_ceoImageOkada {
          top: 0;
          left: 0;
          width: 70vw; } }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage .companyContent_ceoImageOkada {
          width: 250px; } }
      #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage .companyContent_ceoImageOkada img {
        width: 100%; }
    #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage .companyContent_ceoImageBack {
      height: 100%;
      position: absolute;
      z-index: 1;
      top: 0;
      left: 10px; }
      #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage .companyContent_ceoImageBack .companyContent_ceoImageBackInner {
        height: 300px;
        width: 300px;
        position: relative; }
        @media only screen and (min-width: 768px) and (max-width: 991px) {
          #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage .companyContent_ceoImageBack .companyContent_ceoImageBackInner {
            width: 250px;
            height: 250px; } }
        @media only screen and (max-width: 767px) {
          #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage .companyContent_ceoImageBack .companyContent_ceoImageBackInner {
            height: 70vw;
            width: 70vw;
            top: 30px;
            right: -30px; } }
        #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage .companyContent_ceoImageBack .companyContent_ceoImageBackInner:before {
          content: "";
          width: 92%;
          height: 92%;
          top: 0;
          bottom: 0;
          left: 0;
          right: 0;
          position: absolute;
          background: #fff;
          z-index: 2;
          margin: auto; }
        #company .companyContent .companyContent_ceoWrapper .companyContent_ceoImage .companyContent_ceoImageBack .companyContent_ceoImageBackInner:after {
          content: "";
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0;
          left: 0;
          z-index: 1;
          background-image: linear-gradient(45deg, #42c2cb 0%, #ace1cd 50%, #f5d060 90%);
          background-size: 300% 300%;
          -webkit-animation: AnimationGrd 10s ease 10;
                  animation: AnimationGrd 10s ease 10; }
  #company .companyContent .companyContent_ceoWrapper .companyContent_ceoDetail {
    width: 70%;
    padding-left: 36px; }
    @media only screen and (max-width: 767px) {
      #company .companyContent .companyContent_ceoWrapper .companyContent_ceoDetail {
        width: 100%;
        padding-left: 0; } }
    #company .companyContent .companyContent_ceoWrapper .companyContent_ceoDetail dl dt {
      font-size: 24px;
      font-weight: 500;
      margin-bottom: 12px; }
      @media only screen and (max-width: 767px) {
        #company .companyContent .companyContent_ceoWrapper .companyContent_ceoDetail dl dt {
          font-size: 18px; } }
    #company .companyContent .companyContent_ceoWrapper .companyContent_ceoDetail dl dd {
      font-size: 14px; }
      @media only screen and (max-width: 767px) {
        #company .companyContent .companyContent_ceoWrapper .companyContent_ceoDetail dl dd {
          font-size: 12px; } }

#company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content {
  display: flex;
  pointer: relative; }
  #company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content .timelineBack_left {
    width: 0px;
    background-color: #F9F9F9;
    position: relative;
    -webkit-animation: timelineBack_left 1s ease forwards;
            animation: timelineBack_left 1s ease forwards; }
  #company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content .timelineBack_border {
    visibility: hidden;
    opacity: 0; }
    #company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content .timelineBack_border span {
      width: 4px;
      display: block;
      height: 100%;
      background-image: linear-gradient(45deg, #42c2cb 0%, #ace1cd 50%, #f5d060 90%);
      background-size: 300% 300%;
      -webkit-animation: AnimationGrd 10s ease 10;
              animation: AnimationGrd 10s ease 10; }
  #company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content .timelineBack_right {
    width: 69%;
    background: #fff;
    z-index: 1; }
    #company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content .timelineBack_right ul {
      margin-left: -77px;
      visibility: hidden; }
      @media only screen and (max-width: 767px) {
        #company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content .timelineBack_right ul {
          margin-left: -64px; } }
      #company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content .timelineBack_right ul li {
        display: flex;
        padding: 24px 0; }
        #company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content .timelineBack_right ul li span {
          width: auto; }
        #company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content .timelineBack_right ul li .reveal-timeline-circle {
          margin: 0 11px; }
          @media only screen and (max-width: 767px) {
            #company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content .timelineBack_right ul li .reveal-timeline-circle {
              margin: 0 6px; } }
        #company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content .timelineBack_right ul li dl {
          width: 70%; }
          #company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content .timelineBack_right ul li dl dt {
            font-weight: bold;
            margin-bottom: 8px; }
          @media only screen and (max-width: 767px) {
            #company .companyContent .companyContent_timelineWrapper .companyContent_timelineInner .timelineInner_content .timelineBack_right ul li dl dd {
              font-size: 11px; } }

#company .companyContent_overviewWrapper {
  display: flex; }
  @media only screen and (max-width: 767px) {
    #company .companyContent_overviewWrapper {
      display: block; } }
  #company .companyContent_overviewWrapper .companyContent_overviewDetail {
    width: 60%; }
    @media only screen and (max-width: 767px) {
      #company .companyContent_overviewWrapper .companyContent_overviewDetail {
        width: 100%; } }
    #company .companyContent_overviewWrapper .companyContent_overviewDetail .overviewDetail_Inner {
      padding: 60px 36px; }
      @media only screen and (max-width: 767px) {
        #company .companyContent_overviewWrapper .companyContent_overviewDetail .overviewDetail_Inner {
          padding: 40px 24px; } }
      #company .companyContent_overviewWrapper .companyContent_overviewDetail .overviewDetail_Inner dl {
        display: flex;
        margin-bottom: 16px; }
        #company .companyContent_overviewWrapper .companyContent_overviewDetail .overviewDetail_Inner dl:last-child {
          margin-bottom: 0; }
        #company .companyContent_overviewWrapper .companyContent_overviewDetail .overviewDetail_Inner dl dt {
          font-weight: bold;
          width: 15%; }
          @media only screen and (max-width: 767px) {
            #company .companyContent_overviewWrapper .companyContent_overviewDetail .overviewDetail_Inner dl dt {
              width: 35%; } }
        #company .companyContent_overviewWrapper .companyContent_overviewDetail .overviewDetail_Inner dl dd {
          width: 85%; }
          @media only screen and (max-width: 767px) {
            #company .companyContent_overviewWrapper .companyContent_overviewDetail .overviewDetail_Inner dl dd {
              width: 65%; } }
          #company .companyContent_overviewWrapper .companyContent_overviewDetail .overviewDetail_Inner dl dd span {
            margin-left: 12px; }
  #company .companyContent_overviewWrapper .companyContent_overviewMap {
    width: 40%; }
    @media only screen and (max-width: 767px) {
      #company .companyContent_overviewWrapper .companyContent_overviewMap {
        width: 100%; } }
    #company .companyContent_overviewWrapper .companyContent_overviewMap .g-map {
      width: 100%;
      height: 500px; }
      @media only screen and (max-width: 767px) {
        #company .companyContent_overviewWrapper .companyContent_overviewMap .g-map {
          height: 250px; } }

@media only screen and (max-width: 767px) {
  #recruit .recruitContent {
    padding: 0 16px; } }

#recruit .recruitContent h3 {
  font-size: 18px;
  text-align: center;
  margin-bottom: 24px; }
  @media only screen and (max-width: 767px) {
    #recruit .recruitContent h3 {
      margin-bottom: 12px; } }

#recruit .recruitContent .recruitContent_talentedWrapper {
  margin-bottom: 60px; }
  #recruit .recruitContent .recruitContent_talentedWrapper .recruitContent_talentedInner {
    display: flex;
    max-width: 840px;
    margin: 0 auto;
    justify-content: space-around;
    margin: 0 auto; }
    @media only screen and (max-width: 767px) {
      #recruit .recruitContent .recruitContent_talentedWrapper .recruitContent_talentedInner {
        display: block; } }
    #recruit .recruitContent .recruitContent_talentedWrapper .recruitContent_talentedInner dl {
      width: 30%; }
      @media only screen and (max-width: 767px) {
        #recruit .recruitContent .recruitContent_talentedWrapper .recruitContent_talentedInner dl {
          width: 100%; } }
      #recruit .recruitContent .recruitContent_talentedWrapper .recruitContent_talentedInner dl dt {
        font-size: 16px;
        font-weight: 500; }
        #recruit .recruitContent .recruitContent_talentedWrapper .recruitContent_talentedInner dl dt span {
          font-family: 'Caveat', cursive;
          font-weight: 700;
          font-size: 36px;
          margin-right: 10px; }

#recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner {
  max-width: 840px;
  margin: 0 auto; }
  #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tab {
    overflow: hidden;
    margin-bottom: 8px;
    display: flex;
    justify-content: center; }
    #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tab li {
      padding: 5px 0;
      margin-right: 1px;
      cursor: pointer;
      transition: 0.9s cubic-bezier(0.69, -0.22, 0.3, 1.13);
      width: 150px;
      text-align: center; }
    #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tab li.select:after {
      content: "";
      height: 3px;
      background-image: linear-gradient(45deg, #42c2cb 0%, #ace1cd 50%, #f5d060 90%);
      background-size: 300% 300%;
      -webkit-animation: AnimationGrd 10s ease 10;
              animation: AnimationGrd 10s ease 10;
      display: block;
      margin-top: 10px; }
  #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner {
    background: #F9F9F9;
    padding: 24px;
    display: flex;
    justify-content: space-between; }
    @media only screen and (max-width: 767px) {
      #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner {
        display: block;
        padding: 16px; } }
    #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerEntry {
      width: 38%; }
      @media only screen and (max-width: 767px) {
        #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerEntry {
          width: 100%;
          margin-bottom: 24px; } }
      #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerEntry p {
        margin-bottom: 24px; }
      #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerEntry dl {
        background-image: linear-gradient(45deg, #42c2cb 0%, #ace1cd 50%, #f5d060 90%);
        background-size: 300% 300%;
        -webkit-animation: AnimationGrd 10s ease 10;
                animation: AnimationGrd 10s ease 10;
        color: #fff;
        text-align: center;
        padding: 24px 16px; }
        #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerEntry dl dt {
          font-size: 24px;
          font-weight: bold;
          line-height: 1;
          margin-bottom: 24px; }
        #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerEntry dl dd {
          font-weight: 500; }
          #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerEntry dl dd a {
            color: #fff;
            text-decoration: underline; }
    #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerDetail {
      width: 58%; }
      @media only screen and (max-width: 767px) {
        #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerDetail {
          width: 100%; } }
      #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerDetail dl {
        display: flex;
        margin-bottom: 16px; }
        #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerDetail dl dt {
          font-weight: bold;
          width: 20%; }
          @media only screen and (max-width: 767px) {
            #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerDetail dl dt {
              width: 30%; } }
        #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerDetail dl dd {
          width: 80%; }
          @media only screen and (max-width: 767px) {
            #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .tabContent_Inner .tabContent_InnerDetail dl dd {
              width: 70%; } }
  #recruit .recruitContent .recruitContent_wantedWrapper .recruitContent_wantedInner .tabContent .hide {
    display: none;
    transition: 0.9s cubic-bezier(0.69, -0.22, 0.3, 1.13); }

#recruit .recruitContent .recruitContent_wantedNone {
  max-width: 540px;
  margin: 0 auto;
  text-align: center;
  padding: 10px 0; }

.inlineContents .modaal-content-container {
  border: 5px solid #42C2CB;
  box-sizing: border-box; }

.inlineContents .modaal-inner-wrapper {
  padding: 80px 16px; }

.inlineContents .modaal-close:focus:after, .inlineContents .modaal-close:focus:before, .inlineContents .modaal-close:hover:after, .inlineContents .modaal-close:hover:before {
  background-color: #42C2CB; }

.inlineContents h2 {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 24px;
  text-align: center;
  border-top: 1px solid #8e8e8e;
  border-bottom: 1px solid #8e8e8e;
  padding-top: 16px;
  padding-bottom: 16px; }

.inlineContents h3 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 8px; }

.inlineContents p {
  margin-bottom: 24px; }
  .inlineContents p.name {
    text-align: right; }

.inlineContents ul {
  margin-bottom: 24px; }
  .inlineContents ul li.small {
    font-size: 12px;
    padding-left: 16px; }

.inlineContents .flex {
  display: -ms-flex;
  display: flex;
  justify-content: space-between; }

@media only screen and (max-width: 767px) {
  #contact .contactContent {
    padding: 0 16px; } }

#contact .contactContent .title p {
  text-align: center; }

#contact .contactContent .contactContent_formWrapper {
  max-width: 940px;
  margin: 0 auto;
  text-align: center;
  padding-bottom: 60px; }
  #contact .contactContent .contactContent_formWrapper .mail_form {
    width: 400px;
    margin: 0 auto; }
    @media only screen and (max-width: 767px) {
      #contact .contactContent .contactContent_formWrapper .mail_form {
        width: 100%; } }
    #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group {
      position: relative;
      margin-bottom: 45px; }
      @media only screen and (max-width: 767px) {
        #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group {
          margin-bottom: 15px; } }
      #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input {
        font-size: 16px;
        padding: 16px 10px 10px 5px;
        -webkit-appearance: none;
        display: block;
        color: rgba(0, 0, 0, 0.42);
        width: 100%;
        border: none;
        border-radius: 0;
        border-bottom: 1px solid rgba(0, 0, 0, 0.42); }
        #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input:focus {
          outline: none; }
        @media only screen and (max-width: 767px) {
          #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input {
            font-size: 14px; } }
        #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input::-webkit-input-placeholder {
          color: #999;
          font-size: 18px;
          font-weight: normal; }
        #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input::-moz-placeholder {
          color: #999;
          font-size: 18px;
          font-weight: normal; }
        #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input:-ms-input-placeholder {
          color: #999;
          font-size: 18px;
          font-weight: normal; }
        #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input::-ms-input-placeholder {
          color: #999;
          font-size: 18px;
          font-weight: normal; }
        #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input::placeholder {
          color: #999;
          font-size: 18px;
          font-weight: normal; }
      #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group label {
        color: #999;
        font-size: 18px;
        font-weight: normal;
        position: absolute;
        pointer-events: none;
        left: 5px;
        top: 10px;
        transition: all 0.2s ease; }
        @media only screen and (max-width: 767px) {
          #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group label {
            font-size: 14px; } }
      #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input:focus ~ label, #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input.used ~ label {
        top: -20px;
        transform: scale(0.75);
        left: -2px;
        color: #42C2CB; }
        @media only screen and (max-width: 767px) {
          #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input:focus ~ label, #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input.used ~ label {
            top: -10px; } }
      #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group .wpcf7-not-valid-tip {
        text-align: left;
        color: #DD2F44; }
      #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group .bar {
        position: relative;
        display: block;
        width: 100%; }
        #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group .bar:before, #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group .bar:after {
          content: '';
          height: 2px;
          width: 0;
          bottom: 1px;
          position: absolute;
          background: #42C2CB;
          transition: all 0.2s ease; }
        #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group .bar:before {
          left: 50%; }
        #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group .bar:after {
          right: 50%; }
      #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input:focus ~ .bar:before,
      #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input:focus ~ .bar:after {
        width: 50%; }
      #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .group input:focus ~ .highlight {
        -webkit-animation: inputHighlighter 0.3s ease;
                animation: inputHighlighter 0.3s ease; }

@-webkit-keyframes inputHighlighter {
  from {
    background: #4a89dc; }
  to {
    width: 0;
    background: transparent; } }

@keyframes inputHighlighter {
  from {
    background: #4a89dc; }
  to {
    width: 0;
    background: transparent; } }
    #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .submit {
      position: relative; }
      #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .submit .wpcf7-spinner {
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        right: -34%;
        left: 0;
        background-color: transparent; }
    #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .wpcf7-response-output {
      border-color: transparent;
      color: #DD2F44;
      font-size: 12px; }
    #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .button {
      background-image: linear-gradient(45deg, #42c2cb 0%, #ace1cd 50%, #f5d060 90%);
      -webkit-animation: AnimationBtn 3s ease 10 !important;
              animation: AnimationBtn 3s ease 10 !important;
      background-size: 300% 300%;
      padding: 12px 56px;
      color: #fff;
      border-radius: 100px;
      font-weight: bold;
      display: inline-block;
      cursor: pointer;
      font-size: 14px;
      outline: none;
      border: 0;
      position: relative;
      width: 186px; }
      #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .button:focus {
        outline: 0; }
    #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .btnEffect-send {
      transition: all 0.2s linear 0s;
      overflow: hidden; }
      #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .btnEffect-send:before {
        content: "\f0e0";
        font-family: FontAwesome;
        position: absolute;
        display: flex;
        align-items: center;
        justify-content: center;
        top: 0;
        right: 10%;
        width: 100%;
        height: 100%;
        text-align: center;
        font-size: 16px;
        transition: 0.2s linear;
        opacity: 0; }
      #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .btnEffect-send:hover {
        opacity: .8;
        background-image: linear-gradient(90deg, #42c2cb 0%, #ace1cd 50%, #f5d060 90%);
        transition: 0.2s linear; }
        #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner .btnEffect-send:hover:before {
          right: 0;
          text-indent: 0;
          opacity: 1;
          transition: 0.2s linear; }
    #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner div {
      margin-bottom: 36px; }
      #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner div textarea {
        max-width: 400px;
        min-width: 400px;
        height: 180px;
        border: 1px solid rgba(0, 0, 0, 0.42);
        border-radius: 5px;
        padding: 16px;
        font-size: 16px; }
        @media only screen and (max-width: 767px) {
          #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner div textarea {
            width: 100%;
            min-width: 100%; } }
        #contact .contactContent .contactContent_formWrapper .mail_form .contactContent_formInner div textarea:focus {
          outline-color: #42C2CB; }

.formWrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%; }

.formEnd {
  width: 700px;
  margin: 0 auto;
  color: #555;
  line-height: 170%;
  background: rgba(255, 255, 255, 0.5);
  padding: 30px 26px;
  border-radius: 3px;
  position: relative; }

@media only screen and (max-width: 767px) {
  .formEnd {
    width: 100%; } }

footer {
  padding: 16px 0;
  text-align: center;
  color: #fff; }

.newsWrapper {
  max-width: 940px;
  margin: 0 auto; }
  @media only screen and (max-width: 767px) {
    .newsWrapper {
      padding: 0 12px; } }
  .newsWrapper .newsList {
    display: -ms-flex;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0 16px;
    flex-wrap: wrap; }
    @media only screen and (max-width: 767px) {
      .newsWrapper .newsList {
        flex-direction: column; } }
    .newsWrapper .newsList .list {
      transition: all 0.4s ease 0s;
      display: -ms-flex;
      display: flex;
      justify-content: space-between;
      gap: 0 24px;
      width: calc(50% - 16px);
      margin-bottom: 16px; }
      @media only screen and (max-width: 767px) {
        .newsWrapper .newsList .list {
          width: 100%;
          gap: 0 16px; } }
      .newsWrapper .newsList .list.is-hidden {
        visibility: hidden;
        opacity: 0;
        height: 0;
        padding: 0;
        gap: 0;
        margin-bottom: 0; }
      .newsWrapper .newsList .list .images {
        width: 85%; }
        .newsWrapper .newsList .list .images img {
          width: 100%;
          border: 1px #E2E2E2 solid; }
      .newsWrapper .newsList .list .contents {
        padding-top: 8px;
        width: 100%; }
        @media only screen and (max-width: 767px) {
          .newsWrapper .newsList .list .contents {
            padding-top: 4px; } }
        .newsWrapper .newsList .list .contents .day {
          font-size: 16px;
          line-height: 1; }
          @media only screen and (max-width: 767px) {
            .newsWrapper .newsList .list .contents .day {
              font-size: 12px; } }
        .newsWrapper .newsList .list .contents .newsTitle {
          font-size: 15px;
          line-height: 1.5;
          font-weight: 500;
          margin-top: 4px; }
          @media only screen and (max-width: 767px) {
            .newsWrapper .newsList .list .contents .newsTitle {
              font-size: 12px; } }

.newsMore_wrap {
  max-width: 940px;
  margin: 8px auto 0; }
  @media only screen and (max-width: 767px) {
    .newsMore_wrap {
      padding: 0 12px; } }
  .newsMore_wrap .more {
    text-align: center;
    margin-top: 8px;
    border: 1px solid #E2E2E2;
    background-color: #F9F9F9;
    width: 100%;
    padding: 24px 0;
    cursor: pointer;
    transition: ease .4s; }
    @media only screen and (max-width: 767px) {
      .newsMore_wrap .more {
        padding: 16px 0; } }
    .newsMore_wrap .more:hover {
      transform: translateY(10px);
      transition: ease .4s;
      box-shadow: 0px -10px 20px rgba(0, 0, 0, 0.05); }
    .newsMore_wrap .more button {
      cursor: pointer;
      border: none;
      outline: none;
      color: #42C2CB;
      background-color: transparent;
      font-weight: bold;
      font-size: 16px; }
      @media only screen and (max-width: 767px) {
        .newsMore_wrap .more button {
          font-size: 14px; } }
