@charset "UTF-8";
/* line 1, _base.scss */
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

/* Font Noto */          
@font-face{
font-display:swap;
src:local("Noto Sans Regular"),local("NotoSans-Regular"),url(../woff2/notosans-regular.woff2) format("woff2"),url(../woff/notosans-regular.woff) format("woff");
font-family:"Noto Sans";
font-style:normal;
font-weight:400
}
@font-face{
  font-display:swap;
  src:local("Noto Sans Medium"),local("NotoSans-Medium"),url(../notosans-medium.html) format("woff2"),url(../notosans-medium-2.html) format("woff");
  font-family:"Noto Sans";
  font-style:normal;
  font-weight:500
  }
@font-face{
font-display:swap;
src:local("Noto Sans Bold"),local("NotoSans-Bold"),url(../woff2/notosans-bold.woff2) format("woff2"),url(../woff/notosans-bold.woff) format("woff");
font-family:"Noto Sans";
font-style:normal;
font-weight:700
}
@font-face{
font-display:swap;
src:local("Noto Sans CJK JP Regular"),local("NotoSansCJKjp-Regular"),local("NotoSansJP-Regular"),url(../woff2/notosansjp-regular.woff2) format("woff2"),url(../woff/notosansjp-regular.woff) format("woff");
font-family:"Noto Sans JP";
font-style:normal;
font-weight:400
}
@font-face{
font-display:swap;
src:local("Noto Sans CJK JP Medium"),local("NotoSansCJKjp-Medium"),local("NotoSansJP-Medium"),url(../woff2/notosansjp-medium.woff2) format("woff2"),url(../woff/notosansjp-medium.woff) format("woff");
font-family:"Noto Sans JP";
font-style:normal;
font-weight:500
}
@font-face{
font-display:swap;
src:local("Noto Sans CJK JP Bold"),local("NotoSansCJKjp-Bold"),local("NotoSansJP-Bold"),url(../woff2/notosansjp-bold.woff2) format("woff2"),url(../woff/notosansjp-bold.woff) format("woff");
font-family:"Noto Sans JP";
font-style:normal;
font-weight:700
}
@font-face{
font-display:swap;
src:local("Noto Sans CJK JP Regular"),local("NotoSansCJKjp-Regular"),local("NotoSansSC-Regular"),url(../woff2/notosanssc-regular.woff2) format("woff2"),url(../woff/notosanssc-regular.woff) format("woff");
font-family:"Noto Sans SC";
font-style:normal;
font-weight:400
}
@font-face{font-display:swap;
src:local("Noto Sans CJK JP Medium"),local("NotoSansCJKjp-Medium"),local("NotoSansSC-Medium"),url(../woff2/notosanssc-medium.woff2) format("woff2"),url(../woff/notosanssc-medium.woff) format("woff");
font-family:"Noto Sans SC";
font-style:normal;
font-weight:500
}
@font-face{
font-display:swap;
src:local("Noto Sans CJK JP Bold"),local("NotoSansCJKjp-Bold"),local("NotoSansSC-Bold"),url(../woff2/notosanssc-bold.woff2) format("woff2"),url(../woff/notosanssc-bold.woff) format("woff");
font-family:"Noto Sans SC";
font-style:normal;
font-weight:700
}
@font-face{
font-display:swap;
src:local("Noto Sans CJK JP Regular"),local("NotoSansCJKjp-Regular"),local("NotoSansTC-Regular"),url(../woff2/notosanstc-regular.woff2) format("woff2"),url(../woff/notosanstc-regular.woff) format("woff");
font-family:"Noto Sans TC";
font-style:normal;
font-weight:400
}
@font-face{
font-display:swap;
src:local("Noto Sans CJK JP Medium"),local("NotoSansCJKjp-Medium"),local("NotoSansTC-Medium"),url(../woff2/notosanstc-medium.woff2) format("woff2"),url(../woff/notosanstc-medium.woff) format("woff");
font-family:"Noto Sans TC";
font-style:normal;
font-weight:500
}
@font-face{
font-display:swap;
src:local("Noto Sans CJK JP Bold"),local("NotoSansCJKjp-Bold"),local("NotoSansTC-Bold"),url(../woff2/notosanstc-bold.woff2) format("woff2"),url(../woff/notosanstc-bold.woff) format("woff");
font-family:"Noto Sans TC";
font-style:normal;
font-weight:700
}
@font-face{
font-display:swap;
src:local("Noto Sans CJK JP Regular"),local("NotoSansCJKjp-Regular"),local("NotoSansKR-Regular"),url(../woff2/notosanskr-regular.woff2) format("woff2"),url(../woff/notosanskr-regular.woff) format("woff");
font-family:"Noto Sans KR";
font-style:normal;
font-weight:400
}
@font-face{
font-display:swap;
src:local("Noto Sans CJK JP Medium"),local("NotoSansCJKjp-Medium"),local("NotoSansKR-Medium"),url(../woff2/notosanskr-medium.woff2) format("woff2"),url(../woff/notosanskr-medium.woff) format("woff");
font-family:"Noto Sans KR";
font-style:normal;font-weight:500
}
@font-face{
font-display:swap;
src:local("Noto Sans CJK JP Bold"),local("NotoSansCJKjp-Bold"),local("NotoSansKR-Bold"),url(../woff2/notosanskr-bold.woff2) format("woff2"),url(../woff/notosanskr-bold.woff) format("woff");
font-family:"Noto Sans KR";
font-style:normal;
font-weight:700
}

/* line 4, _base.scss */
body {
  position: relative;
  padding: 0;
  margin: 0 auto;
  font-family: "Noto Sans",sans-serif;
  -webkit-text-size-adjust: 100%;
  }

.ja {
  font-family: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight: 400;
}
.en {
  font-family: "Noto Sans",sans-serif;
  font-weight: 400;
}
.cn {
  font-family: "Noto Sans SC",sans-serif;
  font-weight: 400;
}
.tw {
  font-family: "Noto Sans TC",sans-serif;
  font-weight: 400;
}
.ko {
  font-family: "Noto Sans KR",sans-serif;
  font-weight: 400;
}

/* line 11, _base.scss */
img {
  max-width: 100%; }

/* line 14, _base.scss */
a {
  text-decoration: none;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease; }

/* line 18, _base.scss */
ul, ol {
  padding: 0;
  margin: 0;
  list-style: none; }

/* line 23, _base.scss */
body.show-modal {
  overflow: hidden; }

@media (min-width: 768px) {
  /* line 28, _base.scss */
  .for-sp {
    display: none; }

  /* line 31, _base.scss */
  h2 {
    color: #fff;
    font-size: 30px;
    position: relative;
    display: inline-block; }
    /* line 36, _base.scss */
    h2:after {
      position: absolute;
      content: '';
      display: block;
      width: 1000px;
      right: 0;
      bottom: -5px;
      height: 1px;
      background: #fff; } }
@media (max-width: 767px) {
  /* line 49, _base.scss */
  .for-pc {
    display: none; }

  /* line 52, _base.scss */
  h2 {
    color: #fff;
    font-size: 29.4px;
    font-weight: 400;
    letter-spacing: 0;
    padding: 0 0 7px;
    position: relative;
    display: inline-block; }
    /* line 60, _base.scss */
    h2:after {
      position: absolute;
      content: '';
      display: block;
      width: 1000px;
      right: 0;
      bottom: -11px;
      height: 1px;
      background: #fff; } }
@media (min-width: 768px) {
  /* line 1, _visual.scss */
  .visual {
    min-height: 600px;
    position: relative; }
    /* line 5, _visual.scss */
    .visual .container {
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0;
      z-index: 5; }
    /* line 13, _visual.scss */
    .header .logo {
      /* max-width: 1400px; */
      margin: 0 auto;
      padding: 0 30px;
      }
      /* line 17, _visual.scss */
      .header .logo h1 {
        /* background: url("../img/logo-header.png") no-repeat 50% 50%; */
        background-size: contain;
        height: 55px;
        /* text-indent: -9999px; */
        width: 180px;
        margin: 30px 0;
        }
    /* line 22, _visual.scss */
    .visual .tagline {
      position: absolute;
      left: 30px;
      right: 30px;
      top: 76%; }
      /* line 27, _visual.scss */
      .visual .tagline p {
        background: url("../png/txt-tagline.png") no-repeat 50% 50%;
        background-size: contain;
        height: 142px;
        text-indent: -9999px;
        max-width: 710px;
        height: 71px;
        width: 355px;
        margin: 0 auto; }
    /* line 34, _visual.scss */
    .visual .video-wrapper {
      z-index: -1;
      position: fixed;
      height: 0;
      overflow: hidden;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }
      /* line 43, _visual.scss */
      .visual .video-wrapper video {
        width: auto;
        height: auto;
        min-width: 100%;
        min-height: 100%;
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); }
    /* line 55, _visual.scss */
    .visual .canvas-wrapper {
      z-index: 3;
      position: relative;
      overflow: hidden; }
      /* line 59, _visual.scss */
      .visual .canvas-wrapper canvas {
        opacity: 0.85;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        display: block; } }
@media (max-width: 767px) {
  /* line 1, _visual.scss */
  .visual {
    position: relative;
    min-height: 350px; }
    /* line 73, _visual.scss */
    .visual .container {
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0;
      z-index: 5; }
    /* line 81, _visual.scss */
    .header .logo {
      flex: 0 0 100px;
      margin: 5px 0 0 0 !important;
      padding: 0 15px; }
      /* line 84, _visual.scss */
      .header .logo h1 {
        /* background: url("../img/logo-header-sp.png") no-repeat 50% 50%;
        background-size: contain;
        height: 28px;
        /* text-indent: -9999px;
        width: 91.5px;
        margin: 15px 0; */
        font-size: 0;
      }
      .header .logo h1 img {
        width: 100px;
        height: 30px;
      }
    /* line 89, _visual.scss */
    .visual .tagline {
      position: absolute;
      left: 30px;
      right: 30px;
      bottom: 20%; }
      /* line 94, _visual.scss */
      .visual .tagline p {
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        background: url("../png/txt-tagline-sp.png") no-repeat 50% 50%;
        background-size: contain;
        height: 46.5px;
        text-indent: -9999px;
        max-width: 235.5px;
        margin: 0 auto; }
    /* line 100, _visual.scss */
    .visual .video-wrapper {
      z-index: -1;
      position: fixed;
      height: 0;
      overflow: hidden;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0; }
      /* line 109, _visual.scss */
      .visual .video-wrapper video {
        width: auto;
        height: 110%;
        min-width: 100%;
        min-height: 100%;
        display: block;
        position: absolute;
        bottom: 0;
        left: 52%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); } }
      @media (max-width: 767px) and (max-width: 415px) {
        /* line 109, _visual.scss */
        .visual .video-wrapper video {
          left: 58%; } }
      @media (max-width: 767px) and (max-width: 330px) {
        /* line 109, _visual.scss */
        .visual .video-wrapper video {
          left: 60%; } }
@media (max-width: 767px) {
    /* line 127, _visual.scss */
    .visual .canvas-wrapper {
      z-index: 3;
      position: relative;
      height: 0;
      overflow: hidden; }
      /* line 132, _visual.scss */
      .visual .canvas-wrapper canvas {
        opacity: 0.85;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        display: block; } }

@media (min-width: 768px) {
  /* line 1, _lang-switch.scss */
  .lang-switch {
    /* position: absolute; */
    /* right: 30px; */
    /* top: 35px; */
    position: relative;
    }
    /* line 6, _lang-switch.scss */
    .lang-switch .current {
      padding: 7px 21px 10px 30px;
      background: url("../png/icon-lang.png") no-repeat 3px 9px;
      display: block;
      position: relative;
      color: #535353;
      font-weight: 400;
      font-size: 19px;
      line-height: 1;
      }
      /* line 11, _lang-switch.scss */
      .lang-switch .current:after {
        content: '';
        display: block;
        width: 0;
        height: 0;
        border-top: 5px solid #8c8c8c;
        border-left: 5px solid transparent;
        border-right: 5px solid transparent;
        position: absolute;
        right: 4px;
        top: 16px; }
      /* line 23, _lang-switch.scss */
      .lang-switch .current .ja {
        }
      /* line 26, _lang-switch.scss */
      .lang-switch .current .cn {
      } 
      /* line 29, _lang-switch.scss */
      .lang-switch .current .tw {
      }
      /* line 32, _lang-switch.scss */
      .lang-switch .current .ko {
      }
    /* line 37, _lang-switch.scss */
    .lang-switch.opened .current:after {
      border-top: none;
      border-bottom: 5px solid #8c8c8c; }
    /* line 42, _lang-switch.scss */
    .lang-switch ul {
      background: rgba(0, 0, 0, 0.7);
      color: #fff;
      padding: 7px 5px;
      position: absolute;
      right: 0;
      top: 40px;
      display: none;
      min-width: 112px;
      z-index: 10;
      }
      /* line 52, _lang-switch.scss */
      .lang-switch ul li a {
        display: block;
        padding: 9px 15px 9px 25px;
        position: relative; }
        /* line 56, _lang-switch.scss */
        .lang-switch ul li a:before {
          -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
          content: '';
          display: block;
          width: 5px;
          height: 5px;
          border-right: 1px solid #fff;
          border-bottom: 1px solid #fff;
          position: absolute;
          left: 10px;
          top: 13px; }
        /* line 68, _lang-switch.scss */
        .lang-switch ul li a span {
          display: block;
          -webkit-box-sizing: content-box;
                  box-sizing: content-box;
          border-bottom: 1px solid transparent; }
        /* line 73, _lang-switch.scss */
        .lang-switch ul li a:hover span {
          border-bottom: 1px solid #fff; }
        /* line 77, _lang-switch.scss */
        .lang-switch ul li a.ja span {
          background: url("../png/lang-ja.png") no-repeat 50% 50%;
          background-size: contain;
          height: 16px;
          text-indent: -9999px;
          width: 49px; }
        /* line 82, _lang-switch.scss */
        .lang-switch ul li a.cn span {
          background: url("../png/lang-cn.png") no-repeat 50% 50%;
          background-size: contain;
          height: 13px;
          text-indent: -9999px;
          width: 47px; }
        /* line 87, _lang-switch.scss */
        .lang-switch ul li a.ko span {
          background: url("../png/lang-ko.png") no-repeat 50% 50%;
          background-size: contain;
          height: 13px;
          text-indent: -9999px;
          width: 47px; }
        /* line 92, _lang-switch.scss */
        .lang-switch ul li a.tw span {
          background: url("../png/lang-tw.png") no-repeat 50% 50%;
          background-size: contain;
          height: 13px;
          text-indent: -9999px;
          width: 57px; } }
@media (max-width: 767px) {
  /* line 1, _lang-switch.scss */
  .lang-switch {
    /* position: absolute; */
    /* right: 0; */
    /* left: 0; */
    /* top: 11px; */
    }
    /* line 105, _lang-switch.scss */
    .lang-switch .current {
      padding: 7px 25px 9px 24px;
      background: url("../png/icon-lang-sp.png") no-repeat 3px 9px;
      background-size: 15px 15px;
      display: block;
      position: relative;
      float: right;
      color: #535353;
      font-weight: 400;
      font-size: 16px;
      line-height: 1;
      }
      /* line 112, _lang-switch.scss */
      .lang-switch .current:after {
        content: '';
        display: block;
        width: 0;
        height: 0;
        border-top: 4px solid #8c8c8c;
        border-left: 4px solid transparent;
        border-right: 4px solid transparent;
        position: absolute;
        right: 10px;
        top: 14px; }
      /* line 124, _lang-switch.scss */
      .lang-switch .current .ja {
      }
      /* line 127, _lang-switch.scss */
      .lang-switch .current .cn {
      }
      /* line 130, _lang-switch.scss */
      .lang-switch .current .tw {
      }
      /* line 133, _lang-switch.scss */
      .lang-switch .current .ko {
      }
    /* line 138, _lang-switch.scss */
    .lang-switch.opened .current:after {
      border-top: none;
      border-bottom: 5px solid #8c8c8c; }
    /* line 143, _lang-switch.scss */
    .lang-switch ul {
      background: rgba(0, 0, 0, 0.7);
      color: #fff;
      padding: 0;
      position: absolute;
      right: 0;
      top: 63px;
      left: 0;
      display: none;
      z-index: 10;
      }
      /* line 39, _mixin.scss */
      .lang-switch ul:before, .lang-switch ul:after {
        content: " ";
        display: table; }
      /* line 44, _mixin.scss */
      .lang-switch ul:after {
        clear: both; }
      /* line 153, _lang-switch.scss */
      .lang-switch ul li {
        float: left;
        width: 33.33%; }
        /* line 156, _lang-switch.scss */
        .lang-switch ul li a {
          display: block;
          padding: 15px 15px 15px 25px;
          border-left: 1px solid #7f7f80; }
          /* line 160, _lang-switch.scss */
          .lang-switch ul li a span {
            display: block;
            -webkit-box-sizing: content-box;
                    box-sizing: content-box;
            border-bottom: 1px solid transparent;
            margin: 0 auto;
            position: relative; }
            /* line 166, _lang-switch.scss */
            .lang-switch ul li a span:before {
              -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg);
              content: '';
              display: block;
              width: 5px;
              height: 5px;
              border-right: 1px solid #fff;
              border-bottom: 1px solid #fff;
              position: absolute;
              left: -13px;
              top: 3px; }
          /* line 179, _lang-switch.scss */
          .lang-switch ul li a:hover span {
            border-bottom: 1px solid #fff; }
          /* line 183, _lang-switch.scss */
          .lang-switch ul li a.ja span {
            background: url("../png/lang-ja-sp.png") no-repeat 50% 50%;
            background-size: contain;
            height: 15px;
            text-indent: -9999px;
            width: 45.5px; }
          /* line 188, _lang-switch.scss */
          .lang-switch ul li a.cn span {
            background: url("../png/lang-cn-sp.png") no-repeat 50% 50%;
            background-size: contain;
            height: 12px;
            text-indent: -9999px;
            width: 43.5px; }
          /* line 193, _lang-switch.scss */
          .lang-switch ul li a.ko span {
            background: url("../png/lang-ko-sp.png") no-repeat 50% 50%;
            background-size: contain;
            height: 12px;
            text-indent: -9999px;
            width: 44px; }
          /* line 198, _lang-switch.scss */
          .lang-switch ul li a.tw span {
            background: url("../png/lang-tw-sp.png") no-repeat 50% 50%;
            background-size: contain;
            height: 12px;
            text-indent: -9999px;
            width: 53.5px; }
        /* line 203, _lang-switch.scss */
        .lang-switch ul li:first-child a {
          border-left: none; } }

/* line 1, _footer.scss */
.footer {
  background: #535353;
  color: #fff; }
  @media (min-width: 768px) {
    /* line 1, _footer.scss */
    .footer {
      padding: 23px 0; }
      /* line 6, _footer.scss */
      .footer .container {
        max-width: 1360px;
        margin: 0 auto;
        padding: 0 30px; }
        /* line 39, _mixin.scss */
        .footer .container:before, .footer .container:after {
          content: " ";
          display: table; }
        /* line 44, _mixin.scss */
        .footer .container:after {
          clear: both; }
      /* line 12, _footer.scss */
      .footer .logo {
        background: url("../png/logo-footer.png") no-repeat 50% 50%;
        background-size: contain;
        height: 16px;
        text-indent: -9999px;
        width: 82px;
        float: left;
        margin: 0 40px 0 0; }
      /* line 17, _footer.scss */
      .footer ul {
        float: left; }
        /* line 19, _footer.scss */
        .footer ul li {
          float: left;
          font-size: 14px;
          border-left: 1px solid #fff;
          padding-left: 1em;
          margin-left: 1em;
          line-height: 16px; }
          /* line 26, _footer.scss */
          .footer ul li:first-child {
            border-left: none;
            padding-left: 0;
            margin-left: 0; }
          /* line 31, _footer.scss */
          .footer ul li a {
            color: inherit;
            position: relative;
            top: 1px; }
            /* line 35, _footer.scss */
            .footer ul li a:hover {
              text-decoration: underline; }
      /* line 41, _footer.scss */
      .footer .copyright {
        float: right;
        font-size: 12px; } }
  @media (max-width: 767px) {
    /* line 1, _footer.scss */
    .footer {
      text-align: center;
      padding: 0 0 12px; }
      /* line 39, _mixin.scss */
      .footer ul:before, .footer ul:after {
        content: " ";
        display: table; }
      /* line 44, _mixin.scss */
      .footer ul:after {
        clear: both; }
      /* line 51, _footer.scss */
      .footer ul li {
        float: left;
        width: 50%;
        font-size: 10px;
        border-bottom: 1px solid #6b6b6b; }
        /* line 56, _footer.scss */
        .footer ul li a {
          color: #fff;
          padding: 14px 0;
          display: block;
          position: relative; }
          /* line 61, _footer.scss */
          .footer ul li a:before {
            -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
            content: '';
            display: inline-block;
            width: 4px;
            height: 4px;
            border-right: 1px solid #fff;
            border-top: 1px solid #fff;
            margin: 0 5px 1px 0;
            vertical-align: middle; }
        /* line 73, _footer.scss */
        .footer ul li:last-child {
          border-left: 1px solid #6b6b6b; }
      /* line 79, _footer.scss */
      .footer .logo a {
        background: url("../png/logo-footer-sp.png") no-repeat 50% 50%;
        background-size: contain;
        height: 14px;
        text-indent: -9999px;
        width: 76px;
        margin: 12px auto;
        display: block; }
      /* line 85, _footer.scss */
      .footer .copyright {
        font-size: 11px; } }

@media (min-width: 768px) {
  /* line 1, _contents.scss */
  .concept {
    padding: 200px 0 0;
    }
    /* line 4, _contents.scss */
    .concept .container {
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 10px; }
      /* line 8, _contents.scss */
      .concept .container h2 {
        font-size: 28px;
        font-weight: 500;
        letter-spacing: 2px;
        line-height: 1.5;
        color: #ffffff;
        /* margin: 0 0 50px; */
        }
      .concept .container h2:after {
        background: #ffffff;
      }
    /* line 12, _contents.scss */
    .concept .text {
      color: #51489d;
      background: rgba(255, 255, 255, 0.7);
      padding: 70px 0;
      margin: 200px 0 0;
      }
      /* line 17, _contents.scss */
      .concept .text .en {
        font-size: 23px;
        font-weight: 200;
        margin: 0 0 50px;
        }
        /* line 21, _contents.scss */
        .concept .text .en h3 {
          font-size: 30px;
          margin: 0 0 18px;
          font-weight: 700;
          letter-spacing: 0;
          }
        /* line 28, _contents.scss */
        .concept .text .en p {
          width: 425px;
          margin: 0;
          letter-spacing: 0;
          font-weight: 400;
          font-size: 22px;
          }
      /* line 34, _contents.scss */
      .concept .text .ja, .concept .text .ko, .concept .text .tw, .concept .text .cn {
        font-size: 15px; }
        /* line 36, _contents.scss */
        .concept .text .ja h3, .concept .text .ko h3, .concept .text .tw h3, .concept .text .cn h3 {
          font-size: 20px;
          margin: 0 0 18px;
          font-weight: 500;
          letter-spacing: 0;
          }
        /* line 42, _contents.scss */
        .concept .text .ja p, .concept .text .ko p, .concept .text .tw p, .concept .text .cn p {
          margin: 0;
          letter-spacing: 0; }
      /* line 48, _contents.scss */
      .concept .text .ja h3 {
      }
      /* line 51, _contents.scss */
      .concept .text .ja p {
      }
      /* line 56, _contents.scss */
      .concept .text .ko h3 {
        font-weight: 700;
      }
      /* line 59, _contents.scss */
      .concept .text .ko p {
      }
      /* line 64, _contents.scss */
      .concept .text .tw h3 {
        font-weight: 700;
      }
      /* line 67, _contents.scss */
      .concept .text .tw p {
      }
      /* line 72, _contents.scss */
      .concept .text .cn h3 {
        font-weight: 700;
      }
      /* line 75, _contents.scss */
      .concept .text .cn p {
        font-size: 16px;
        letter-spacing: 1px;
        } }
@media (max-width: 767px) {
  /* line 1, _contents.scss */
  .concept {
    padding: 120px 0 0;
    }
    /* line 83, _contents.scss */
    .concept .container {
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 30px; }
      /* line 87, _contents.scss */
      .concept .container h2 {
        font-size: 24px;
        letter-spacing: 2px;
        padding: 0;
        color: #ffffff;
        /* margin: 0 0 45px; */
        }
        .concept .container h2:after {
          background: #ffffff;
        }
        /* line 89, _contents.scss */
        .concept .container h2:after {
          bottom: -7px; }
    /* line 94, _contents.scss */
    .concept .text {
      color: #fff;
      background: rgba(255, 255, 255, 0.7);
      padding: 50px 0;
      margin: 135px 0 0;
      color: #51489d;
      }
      /* line 99, _contents.scss */
      .concept .text .en {
        font-weight: 200;
        margin: 0 0 45px; }
        /* line 102, _contents.scss */
        .concept .text .en h3 {
          width: 188.5px;
          font-size: 21px;
          margin: 0 0 25px;
          font-weight: 700;
          letter-spacing: 0;
          line-height: 1.5;
          }
        /* line 110, _contents.scss */
        .concept .text .en p {
          margin: 0;
          font-size: 17px;
          letter-spacing: 0;
          }
      /* line 118, _contents.scss */
      .concept .text .ja h3, .concept .text .ko h3, .concept .text .tw h3, .concept .text .cn h3 {
        font-size: 16px;
        margin: 0 0 25px;
        font-weight: 500;
        letter-spacing: 0; }
      /* line 124, _contents.scss */
      .concept .text .ja p, .concept .text .ko p, .concept .text .tw p, .concept .text .cn p {
        margin: 0;
        letter-spacing: 0;
        font-size: 14px; }
      /* line 131, _contents.scss */
      .concept .text .ja h3 {
      }
      /* line 134, _contents.scss */
      .concept .text .ja p {
      }
      /* line 139, _contents.scss */
      .concept .text .ko h3 {
        font-weight: 700;
      }
      /* line 142, _contents.scss */
      .concept .text .ko p {
      }
      /* line 147, _contents.scss */
      .concept .text .tw h3 {
        font-weight: 700;
      }
      /* line 150, _contents.scss */
      .concept .text .tw p {
      }
      /* line 155, _contents.scss */
      .concept .text .cn h3 {
        font-size: 17px;
        font-weight: 700;
        }
      /* line 158, _contents.scss */
      .concept .text .cn p {
        } }
@media (max-width: 329px) {
  /* line 165, _contents.scss */
  .concept .container {
    padding: 0 15px; } }

@media (min-width: 768px) {
  /* line 171, _contents.scss */
  .message {
    padding: 60px 0 0;
    background: #efefef url('../png/pic-message-v2.png') no-repeat right center;
    /* background: -webkit-gradient(linear, left top, right top, from(#acacac), to(#e3e3e3));
    background: linear-gradient(90deg, #acacac, #e3e3e3);*/ } 
    /* line 175, _contents.scss */
    .message .container {
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 10px; }
      /* line 179, _contents.scss */
      .message .container h2 {
        font-size: 28px;
        font-weight: 500;
        letter-spacing: 2px;
        line-height: 1.5;
        color: #000000;
        }
        .message .container h2::after {
          background: #000000;
        }
    /* line 183, _contents.scss */
    .message .wrap {
      padding: 65px 0 0; }
      /* line 39, _mixin.scss */
      .message .wrap:before, .message .wrap:after {
        content: " ";
        display: table; }
      /* line 44, _mixin.scss */
      .message .wrap:after {
        clear: both; }
    /* line 187, _contents.scss */
    .message .text {
      float: left;
      width: 50%;
      padding: 0 0 100px;
      }
      /* line 191, _contents.scss */
      .message .text .en {
        font-size: 17px;
        font-weight: 200;
        margin: 0 0 65px; }
        /* line 195, _contents.scss */
        .message .text .en h3 {
          font-size: 33px;
          margin: 0 0 15px;
          font-weight: 400;
          letter-spacing: 0;
          letter-spacing: 0.05em;
          }
        /* line 202, _contents.scss */
        .message .text .en p {
          margin: 0;
          letter-spacing: 0.05em;
          line-height: 1.7;
          }
      /* line 209, _contents.scss */
      .message .text .ja, .message .text .ko, .message .text .tw, .message .text .cn {
        font-size: 14px; }
        /* line 211, _contents.scss */
        .message .text .ja h3, .message .text .ko h3, .message .text .tw h3, .message .text .cn h3 {
          /*font-size: 21px;
          margin: 0 0 30px;*/
          font-weight: 400;
          letter-spacing: 0; }
        /* line 217, _contents.scss */
        .message .text .ja p, .message .text .ko p, .message .text .tw p, .message .text .cn p {
          margin: 0;
          letter-spacing: 0;
          line-height: 2; }
      /* line 224, _contents.scss */
      .message .text .ja h3 {
        font-size: 22px;
        font-weight: 500;
        margin: 10px 0 15px;
      }
      /* line 227, _contents.scss */
      .message .text .ja p {
        font-size: 15px;
      }
      /* line 232, _contents.scss */
      .message .text .ko h3 {
        font-size: 24px;
        font-weight: 400;
        margin: 10px 0 15px;
      }
      /* line 235, _contents.scss */
      .message .text .ko p {
        font-size: 15px;
      }
      /* line 240, _contents.scss */
      .message .text .tw h3 {
        font-size: 24px;
        font-weight: 700;
        margin: 10px 0 15px;
       }
      /* line 243, _contents.scss */
      .message .text .tw p {
        font-size: 15px;
        font-weight: 700;
      }
      /* line 248, _contents.scss */
      .message .text .cn h3 {
        font-size: 26px;
        font-weight: 500;
        margin: 10px 0 15px;
       }
      /* line 251, _contents.scss */
      .message .text .cn p {
        font-size: 15px;
      }
    /* line 256, _contents.scss */
    .message .person {
      float: right;
      width: 50%;
      position: relative;
      padding: 55px 50px 70px;
      }
      /* line 261, _contents.scss */
      .message .person .en {
        width: 100%;
        font-weight: 200;
        }
        /* line 264, _contents.scss */
        .message .person .en h3 {
          font-size: 20px;
          font-weight: 700;
          letter-spacing: 0;
          margin: 0 0 15px;
          }
        /* line 271, _contents.scss */
        .message .person .en p {
          font-size: 15px;
          line-height: 1.7;
          letter-spacing: 0;
          margin: 0 0 0.8em;
          }
      /* line 279, _contents.scss */
      .message .person .ja, .message .person .ko, .message .person .tw, .message .person .cn {
        width: 100%;
        }
        /* line 281, _contents.scss */
        .message .person .ja h3, .message .person .ko h3, .message .person .tw h3, .message .person .cn h3 {
          font-size: 18px;
          margin: 88px 0 15px;
          letter-spacing: 0;
          }
        /* line 286, _contents.scss */
        .message .person .ja p, .message .person .ko p, .message .person .tw p, .message .person .cn p {
          font-size: 13px;
          line-height: 1.8;
          letter-spacing: 0;
          margin: 0 0 0.5em;
          }
      /* line 294, _contents.scss */
      .message .person .ja h3 {
        font-weight: 500;
        }
      /* line 297, _contents.scss */
      .message .person .ja p {
       }
      /* line 302, _contents.scss */
      .message .person .ko h3 {
        font-weight: 700;
        font-size: 18px;
      }
      /* line 305, _contents.scss */
      .message .person .ko p {
        font-size: 14px;
        font-weight: 400;
      }
      /* line 310, _contents.scss */
      .message .person .tw h3 {
        font-weight: 700;
      }
      /* line 313, _contents.scss */
      .message .person .tw p {
        font-size: 14px;
        font-weight: 700;
      }
      /* line 318, _contents.scss */
      .message .person .cn h3 {
        font-weight: 700;
        font-size: 17px;
      }
      /* line 321, _contents.scss */
      .message .person .cn p {
        font-size: 14px;
        font-weight: 400;
      }
      /* line 325, _contents.scss */
      .message .person .img {
        width: auto;
        position: absolute;
        right: 0px;
        bottom: 0; }
        /* line 330, _contents.scss */
        .message .person .img img {
          display: block; } }
  @media (min-width: 768px) and (max-width: 992px) {
    /* line 338, _contents.scss */
    .message .text .en > h3 {
      max-width: 370px; }
    /* line 341, _contents.scss */
    .message .text .en p {
      max-width: 370px; }
    /* line 346, _contents.scss */
    .message .text .ja p, .message .text .ko p, .message .text .tw p, .message .text .cn p {
      max-width: 370px; }
    /* line 351, _contents.scss */
    .message .person {
      padding: 54px 0 100px 2%;
      }
      /* line 354, _contents.scss */
      .message .person .en p {
        /*width: 230px !important;*/ }
      /* line 358, _contents.scss */
      .message .person .img {
        width: 36%;
        right: -10px;
        overflow: hidden; }
        /* line 362, _contents.scss */
        .message .person .img img {
          position: relative;
          left: 10px; } }

@media (max-width: 767px) {
  /* line 171, _contents.scss */
  .message {
    padding: 40px 0 0;
    background: #ffffff;
    /* background: -webkit-gradient(linear, left top, right top, from(#d5d5d5), to(#f8f8f8)); */
    /* background: linear-gradient(90deg, #d5d5d5, #f8f8f8); */
    }
    /* line 373, _contents.scss */
    .message .container {
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 30px; }
      /* line 377, _contents.scss */
      .message .container h2 {
        font-size: 24px;
        letter-spacing: 2px;
        padding: 0;
        font-weight: 500;
        color: #000000;
        }
        .message .container h2::after {
          background: #000000;
        }
        /* line 379, _contents.scss */
        .message .container h2:after {
          bottom: -7px; }
    /* line 384, _contents.scss */
    .message .wrap {
      padding: 40px 0 0; }
    /* line 387, _contents.scss */
    .message .text {
      letter-spacing: 0;
      padding: 0 0 60px; }
      /* line 390, _contents.scss */
      .message .text .en {
        margin: 0 0 55px; }
        /* line 392, _contents.scss */
        .message .text .en h3 {
          font-size: 23px;
          margin: 0 0 15px;
          font-weight: 600;
          }
        /* line 398, _contents.scss */
        .message .text .en p {
          margin: 0;
          font-size: 17px;
          font-weight: 400;
          line-height: 1.4;
          letter-spacing: 0; }
      /* line 408, _contents.scss */
      .message .text .ja h3, .message .text .ko h3, .message .text .tw h3, .message .text .cn h3 {
        font-size: 22px;
        margin: 0 0 25px;
        font-weight: 700;
        }
      /* line 413, _contents.scss */
      .message .text .ja p, .message .text .ko p, .message .text .tw p, .message .text .cn p {
        font-size: 14px;
        margin: 0;
        line-height: 1.6; }
      /* line 420, _contents.scss */
      .message .text .ja h3 {
        font-weight: 600;
        font-size: 22px;
        margin: 0 0 20px
      }
      /* line 423, _contents.scss */
      .message .text .ja p {
        font-size: 15px;
        }
      /* line 428, _contents.scss */
      .message .text .ko h3 {
        font-weight: 700;
      }
      /* line 431, _contents.scss */
      .message .text .ko p {
        font-size: 15px;
      }
      /* line 436, _contents.scss */
      .message .text .tw h3 {
        font-size: 22px;
        font-weight: 700;
      }
      /* line 439, _contents.scss */
      .message .text .tw p {
        font-size: 16px;
      }
      /* line 444, _contents.scss */
      .message .text .cn h3 {
        font-size: 22px;
        }
      /* line 447, _contents.scss */
      .message .text .cn p {
       }
    /* line 452, _contents.scss */
    .message .person {
      float: none;
      width: 100%;
      position: relative;
      padding: 20px 0 50px 0;
      }
      /* line 456, _contents.scss */
      .message .person .en h3 {
        font-size: 19px;
        letter-spacing: 0;
        margin: 0 0 15px 0;
        }
      /* line 463, _contents.scss */
      .message .person .en p {
        font-size: 14px;
        font-weight: 200;
        line-height: 1.7;
        letter-spacing: 0;
        margin: 0 0 0.5em; }
      /* line 473, _contents.scss */
      .message .person .ja h3, .message .person .ko h3, .message .person .tw h3, .message .person .cn h3 {
        font-size: 16px;
        margin: 30px 0 14px;
        letter-spacing: 0;
        }
      /* line 478, _contents.scss */
      .message .person .ja p, .message .person .ko p, .message .person .tw p, .message .person .cn p {
        font-size: 13px;
        line-height: 1.8;
        letter-spacing: 0;
        margin: 0 0 0.5em; }
      /* line 486, _contents.scss */
      .message .person .ja h3 {
        font-weight: 600;
       }
      /* line 489, _contents.scss */
      .message .person .ja p {
       }
      /* line 494, _contents.scss */
      .message .person .ko h3 {
        font-size: 17px;
        }
      /* line 497, _contents.scss */
      .message .person .ko p {
       }
      /* line 502, _contents.scss */
      .message .person .tw h3 {
         font-size: 17px;
         }
      /* line 505, _contents.scss */
      .message .person .tw p {
       }
      /* line 510, _contents.scss */
      .message .person .cn h3 {
       }
      /* line 513, _contents.scss */
      .message .person .cn p {
       }
      /* line 517, _contents.scss */
      .message .person .img {
        position: absolute;
        right: -15px;
        bottom: 0; }
        /* line 521, _contents.scss */
        .message .person .img img {
          display: block;
          width: 120px; } }
@media (max-width: 329px) {
  /* line 529, _contents.scss */
  .message .container {
    padding: 0 15px; }
  /* line 534, _contents.scss */
  .message .person .en p {
    /*max-width: 210px;*/ }
  /* line 539, _contents.scss */
  .message .person .ja p {
    /*max-width: 150px;*/ }
  /* line 543, _contents.scss */
  .message .person img {
    max-width: 100px; } }

@media (min-width: 768px) {
  /* line 550, _contents.scss */
  .concept-movie {
    background-image: url("../jpg/bg-concept-movie.jpg");
    padding: 200px 0 0;
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat; }
    /* line 558, _contents.scss */
    .concept-movie .container {
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 10px; }
      /* line 562, _contents.scss */
      .concept-movie .container h2 {
        font-size: 30px;
        font-weight: 500;
        letter-spacing: 2px;
        line-height: 1.5;
        }
        /* line 564, _contents.scss */
        .concept-movie .container h2:after {
          bottom: -11px; }
    /* line 569, _contents.scss */
    .concept-movie .wrap {
      margin: 200px 0 0;
      padding: 90px 0;
      background: #efefef;
      }
      /* line 573, _contents.scss */
      .concept-movie .wrap .container {
        max-width: 1240px; }
        /* line 39, _mixin.scss */
        .concept-movie .wrap .container:before, .concept-movie .wrap .container:after {
          content: " ";
          display: table; }
        /* line 44, _mixin.scss */
        .concept-movie .wrap .container:after {
          clear: both; }
        /* line 580, _contents.scss */
        .concept-movie .wrap .video {
          margin: 0 0 25px;
        }
        .concept-movie .wrap .future-vision .video a {
          display: block;
          background: url("../png/thumb-video-future.png") no-repeat 0 0;
          background-size: contain;
          padding: 56% 0 0;
          height: 0;
          text-indent: -9999px; }
        .concept-movie .wrap .daifuku-quality .video a {
          display: block;
          background: url("../png/thumb-video-quality.png") no-repeat 0 0;
          background-size: contain;
          padding: 56% 0 0;
          height: 0;
          text-indent: -9999px; }
      /* line 594, _contents.scss */
      .concept-movie .wrap h3 {
        font-size: 32px;
        font-weight: 400;
        letter-spacing: 1px;
        margin: 2px 0 20px;
        }
        /* line 603, _contents.scss */
        .concept-movie .wrap .en p {
          font-size: 17px;
          line-height: 1.6;
          letter-spacing: 0;
          margin: 0 0 25px;
          }
      /* line 613, _contents.scss */
      .concept-movie .wrap .ja p, .concept-movie .wrap .ko p, .concept-movie .wrap .tw p, .concept-movie .wrap .cn p {
        font-size: 14px;
        line-height: 2;
        letter-spacing: 0; }
      /* line 619, _contents.scss */
      .concept-movie .wrap .ja p {
      }
      /* line 622, _contents.scss */
      .concept-movie .wrap .ko p {
      }
      /* line 625, _contents.scss */
      .concept-movie .wrap .tw p {
      }
      /* line 628, _contents.scss */
      .concept-movie .wrap .cn p {
        } }
@media (max-width: 767px) {
  /* line 550, _contents.scss */
  .concept-movie {
    padding: 127px 0 0;
    position: relative; }
    /* line 636, _contents.scss */
    .concept-movie:before {
      position: absolute;
      width: 100%;
      height: 335px;
      left: 0;
      top: 0;
      z-index: 1;
      content: '';
      background-position: 50% 50%;
      background-size: 700px auto;
      background-repeat: no-repeat;
      background-image: url("../jpg/bg-concept-movie-sp.jpg");
      }
    /* line 649, _contents.scss */
    .concept-movie .container {
      position: relative;
      z-index: 2;
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 30px; }
      /* line 655, _contents.scss */
      .concept-movie .container h2 {
        font-size: 24px;
        letter-spacing: 2px;
        padding: 0;
        font-weight: 500;
        }
        /* line 657, _contents.scss */
        .concept-movie .container h2:after {
          bottom: -12px; }
    /* line 662, _contents.scss */
    .concept-movie .wrap {
      position: relative;
      z-index: 2;
      margin: 135px 0 0;
      padding: 35px 0;
      background: #efefef;
      }
      /* line 668, _contents.scss */
      .concept-movie .wrap .container {
        max-width: 1240px; }
      /* line 671, _contents.scss */
      .concept-movie .wrap .video {
        margin: 0 -15px 23px;
        }
        /* line 673, _contents.scss */
        .concept-movie .wrap .future-vision .video a {
          display: block;
          background: url("../png/thumb-video-future-sp.png") no-repeat 0 0;
          background-size: contain;
          padding: 56% 0 0;
          height: 0;
          text-indent: -9999px; }
        .concept-movie .wrap .daifuku-quality .video a {
          display: block;
          background: url("../png/thumb-video-quality-sp.png") no-repeat 0 0;
          background-size: contain;
          padding: 56% 0 0;
          height: 0;
          text-indent: -9999px; }
      /* line 682, _contents.scss */
      .concept-movie .wrap h3 {
        font-size: 24px;
        font-weight: 500;
        letter-spacing: 1px;
        margin: 0 0 20px;
        }
        /* line 691, _contents.scss */
        .concept-movie .wrap .en p {
          font-size: 17px;
          line-height: 1.5;
          letter-spacing: 0;
          font-weight: 200;
          }
      /* line 700, _contents.scss */
      .concept-movie .wrap .ja p, .concept-movie .wrap .ko p, .concept-movie .wrap .tw p, .concept-movie .wrap .cn p {
        font-size: 14px;
        line-height: 1.6;
        letter-spacing: 0.06em; }
      /* line 706, _contents.scss */
      .concept-movie .wrap .ja p {
      }
      /* line 709, _contents.scss */
      .concept-movie .wrap .ko p {
      }
      /* line 712, _contents.scss */
      .concept-movie .wrap .tw p {
      }
      /* line 715, _contents.scss */
      .concept-movie .wrap .cn p {
        } }
@media (max-width: 329px) {
  /* line 721, _contents.scss */
  .concept-movie .container {
    padding: 0 15px; } }

@media (min-width: 768px) {
  /* line 727, _contents.scss */
  .quality {
    background-image: url("../png/bg-quality.png");
    padding: 200px 0 0;
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat; }
    /* line 735, _contents.scss */
    .quality .container {
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 10px; }
      /* line 739, _contents.scss */
      .quality .container h2 {
        font-size: 30px;
        font-weight: 500;
        letter-spacing: 2px;
        line-height: 1.5;
        }
        /* line 741, _contents.scss */
        .quality .container h2:after {
          bottom: -11px; }
    /* line 746, _contents.scss */
    .quality .wrap {
      margin: 200px 0 0;
      padding: 90px 0;
      background: #e5e5e5; }
      /* line 750, _contents.scss */
      .quality .wrap .container {
        max-width: 1240px; }
        /* line 39, _mixin.scss */
        .quality .wrap .container:before, .quality .wrap .container:after {
          content: " ";
          display: table; }
        /* line 44, _mixin.scss */
        .quality .wrap .container:after {
          clear: both; }
      /* line 754, _contents.scss */
      .quality .wrap .video {
        float: left;
        width: 50%; }
        /* line 757, _contents.scss */
        .quality .wrap .video a {
          display: block;
          background: url("../png/thumb-video-quality.png") no-repeat 0 0;
          background-size: contain;
          padding: 56% 0 0;
          height: 0;
          text-indent: -9999px; }
      /* line 766, _contents.scss */
      .quality .wrap .text {
        float: right;
        width: 50%;
        padding: 0 0 0 50px; }
      /* line 771, _contents.scss */
      .quality .wrap h3 {
        max-width: 291px;
        font-size: 32px;
        font-weight: 400;
        letter-spacing: 1px;
        margin: 12px 0 30px;
        }
      /* line 778, _contents.scss */
      .quality .wrap .en {
        /* margin: 0 0 2em; */
        }
        /* line 780, _contents.scss */
        .quality .wrap .en p {
          font-size: 17px;
          line-height: 1.6;
          letter-spacing: 0;
          font-weight: 200;
          margin: 0 0 30px;
          }
      /* line 790, _contents.scss */
      .quality .wrap .ja p, .quality .wrap .ko p, .quality .wrap .tw p, .quality .wrap .cn p {
        font-size: 14px;
        line-height: 2;
        letter-spacing: 0; }
      /* line 796, _contents.scss */
      .quality .wrap .ja p {
      }
      /* line 799, _contents.scss */
      .quality .wrap .ko p {
      }
      /* line 802, _contents.scss */
      .quality .wrap .tw p {
      }
      /* line 805, _contents.scss */
      .quality .wrap .cn p {
        } }
@media (max-width: 767px) {
  /* line 727, _contents.scss */
  .quality {
    padding: 122px 0 0;
    position: relative; }
    /* line 813, _contents.scss */
    .quality:before {
      position: absolute;
      width: 100%;
      height: 335px;
      left: 0;
      top: 0;
      z-index: 1;
      content: '';
      background-position: 50% 50%;
      background-size: cover;
      background-repeat: no-repeat;
      background-image: url("../png/bg-quality-sp.png"); }
    /* line 827, _contents.scss */
    .quality .container {
      position: relative;
      z-index: 2;
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 30px; }
      /* line 833, _contents.scss */
      .quality .container h2 {
        font-size: 24px;
        letter-spacing: 2px;
        padding: 0;
        font-weight: 500;
        }
        /* line 835, _contents.scss */
        .quality .container h2:after {
          bottom: -12px; }
    /* line 840, _contents.scss */
    .quality .wrap {
      position: relative;
      z-index: 2;
      margin: 138px 0 0;
      padding: 35px 0;
      background: #f1f1f1; }
      /* line 846, _contents.scss */
      .quality .wrap .container {
        max-width: 1240px; }
      /* line 849, _contents.scss */
      .quality .wrap .video {
        margin: 0 -15px 35px; }
        /* line 851, _contents.scss */
        .quality .wrap .video a {
          display: block;
          background: url("../png/thumb-video-quality-sp.png") no-repeat 0 0;
          background-size: contain;
          padding: 56% 0 0;
          height: 0;
          text-indent: -9999px; }
      /* line 860, _contents.scss */
      .quality .wrap h3 {
        font-size: 24px;
        font-weight: 500;
        letter-spacing: 1px;
        margin: 0 0 20px;
        }
      /* line 867, _contents.scss */
      .quality .wrap .en {
        margin: 0 0 25px;
        }
        /* line 869, _contents.scss */
        .quality .wrap .en p {
          font-size: 17px;
          line-height: 1.5;
          letter-spacing: 0;
          font-weight: 200;
          }
      /* line 878, _contents.scss */
      .quality .wrap .ja p, .quality .wrap .ko p, .quality .wrap .tw p, .quality .wrap .cn p {
        font-size: 14px;
        line-height: 1.6;
        letter-spacing: 0.06em; }
      /* line 884, _contents.scss */
      .quality .wrap .ja p {
      }
      /* line 887, _contents.scss */
      .quality .wrap .ko p {
      }
      /* line 890, _contents.scss */
      .quality .wrap .tw p {
      }
      /* line 893, _contents.scss */
      .quality .wrap .cn p {
        } }
@media (max-width: 329px) {
  /* line 899, _contents.scss */
  .quality .container {
    padding: 0 15px; } }

@media (min-width: 768px) {
  /* line 905, _contents.scss */
  .technology-video {
    padding: 200px 0 0;
    background-color: #c1c8bf;
    background-image: url("../jpg/bg-technology-video.jpg");
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat; }
    /* line 914, _contents.scss */
    .technology-video .container {
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 10px; }
      /* line 918, _contents.scss */
      .technology-video .container h2 {
        font-size: 30px;
        font-weight: 500;
        letter-spacing: 2px;
        line-height: 1.5;
        }
      .technology-video .container h3 {
        margin-bottom: 15px;
        font-size: 26px;
        font-weight: 500;
      }
    /* line 922, _contents.scss */
    .technology-video .wrap {
      margin: 200px 0 0;
      background: #efefef;
      padding: 90px 0;
      overflow: hidden;
      }
      /* line 927, _contents.scss */
      .technology-video .wrap .videos {
        margin: 0 -20px -40px; }
        /* line 39, _mixin.scss */
        .technology-video .wrap .videos:before, .technology-video .wrap .videos:after {
          content: " ";
          display: table; }
        /* line 44, _mixin.scss */
        .technology-video .wrap .videos:after {
          clear: both; }
        /* line 930, _contents.scss */
        .technology-video .wrap .videos .video {
          padding: 0 20px;
          float: left;
          width: 50%;
          margin: 0 0 40px;
          position: relative; }

        .technology-video .wrap .videos .video.new::before {
          content: "";
          display: block;
          width: 68px;
          height: 34px;
          position: absolute;
          top: 6px;
          left: 26px;
          background: url("../png/icon-new.png") no-repeat 0 0;
          background-size: 100%;
          cursor: pointer; }

          /* line 935, _contents.scss */
          .technology-video .wrap .videos .video:nth-child(odd) {
            clear: left; }
          /* line 939, _contents.scss */
          .technology-video .wrap .videos .video.video-1 .open-modal {
            background: url("../png/thumb-video-1.png") no-repeat 50% 50%;
            background-size: contain;
            height: 293px;
            text-indent: -9999px;
            max-width: 520px;
            display: block;
            margin: 0 0 10px;
            background-position: 50% 0; }
          /* line 951, _contents.scss */
          .technology-video .wrap .videos .video.video-2 .open-modal {
            background: url("../png/thumb-video-2.png") no-repeat 50% 50%;
            background-size: contain;
            height: 293px;
            text-indent: -9999px;
            max-width: 520px;
            display: block;
            margin: 0 0 10px;
            background-position: 50% 0; }
          /* line 963, _contents.scss */
          .technology-video .wrap .videos .video.video-3 .open-modal {
            background: url("../png/thumb-video-3.png") no-repeat 50% 50%;
            background-size: contain;
            height: 291px;
            text-indent: -9999px;
            max-width: 520px;
            display: block;
            margin: 0 0 10px;
            background-position: 50% 0; }
          /* line 969, _contents.scss */
          .technology-video .wrap .videos .video.video-4 .open-modal {
            background: url("../png/thumb-video-4.png") no-repeat 50% 50%;
            background-size: contain;
            height: 291px;
            text-indent: -9999px;
            max-width: 520px;
            display: block;
            margin: 0 0 10px;
            background-position: 50% 0; }

          .technology-video .wrap .videos .video.video-5 .open-modal {
            background: url("../jpg/thumb-video-5.jpg") no-repeat 50% 50%;
            background-size: contain;
            height: 291px;
            text-indent: -9999px;
            max-width: 520px;
            display: block;
            margin: 0 0 10px;
            background-position: 50% 0; }

          .technology-video .wrap .videos .video.video-6 .open-modal {
            background: url("../jpg/thumb-video-6.jpg") no-repeat 50% 50%;
            background-size: contain;
            height: 291px;
            text-indent: -9999px;
            max-width: 520px;
            display: block;
            margin: 0 0 10px;
            background-position: 50% 0; }

          .technology-video .wrap .videos .video.video-7 .open-modal {
            background: url("../jpg/thumb-video-7.jpg") no-repeat 50% 50%;
            background-size: contain;
            height: 291px;
            text-indent: -9999px;
            max-width: 520px;
            display: block;
            margin: 0 0 10px;
            background-position: 50% 0; }

          .technology-video .wrap .videos .video.video-8 .open-modal {
            background: url("../jpg/thumb-video-8.jpg") no-repeat 50% 50%;
            background-size: contain;
            height: 291px;
            text-indent: -9999px;
            max-width: 520px;
            display: block;
            margin: 0 0 10px;
            background-position: 50% 0; }

          .technology-video .wrap .videos .video.video-9 .open-modal {
            background: url("../jpg/thumb-video-9.jpg") no-repeat 50% 50%;
            background-size: contain;
            height: 291px;
            text-indent: -9999px;
            max-width: 520px;
            display: block;
            margin: 0 0 10px;
            background-position: 50% 0; }

          .technology-video .wrap .videos .video.video-10 .open-modal {
            background: url("../jpg/thumb-video-10.jpg") no-repeat 50% 50%;
            background-size: contain;
            height: 291px;
            text-indent: -9999px;
            max-width: 520px;
            display: block;
            margin: 0 0 10px;
            background-position: 50% 0; }

            .technology-video .wrap .videos .video.video-11 .open-modal {
            background: url("../jpg/thumb-video-11.jpg") no-repeat 50% 50%;
            background-size: contain;
            height: 291px;
            text-indent: -9999px;
            max-width: 520px;
            display: block;
            margin: 0 0 10px;
            background-position: 50% 0; }

          .technology-video .wrap .vrow1,
          .technology-video .wrap .vrow2 {
            margin-bottom: 10px;
          }


        /* line 975, _contents.scss */
        .technology-video .wrap .videos .coming-soon {
          padding: 56% 0 0;
          position: relative;
          color: #fff;
          background: #777777;
          text-align: center;
          margin: 0 0 10px; }
          /* line 982, _contents.scss */
          .technology-video .wrap .videos .coming-soon span {
            background: url("../png/txt-coming-soon.png") no-repeat 50% 50%;
            background-size: contain;
            height: 18px;
            text-indent: -9999px;
            width: 130px;
            -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
            position: absolute;
            left: 50%;
            right: 0;
            top: 50%;
            display: block;
            font-size: 18px;
            letter-spacing: 0; } }
@media (max-width: 767px) {
  /* line 905, _contents.scss */
  .technology-video {
    padding: 120px 0 0;
    background-color: #c1c8bf;
    background-image: url("../jpg/bg-technology-video.jpg");
    background-position: 50% 0;
    background-size: 700px auto;
    background-repeat: no-repeat; }
    /* line 1004, _contents.scss */
    .technology-video .container {
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 30px; }
      /* line 1008, _contents.scss */
      .technology-video .container h2 {
        font-size: 24px;
        letter-spacing: 2px;
        padding: 0;
        font-weight: 500;
        }
        /* line 1010, _contents.scss */
        .technology-video .container h2:after {
          bottom: -7px; }
      .technology-video .container h3 {
        margin-bottom: 15px;
        margin-left: -20px;
        font-weight: 500;
        font-size: 23px;
        font-weight: 500;
      }
    /* line 1015, _contents.scss */
    .technology-video .wrap {
      margin: 135px 0 0;
      background: #efefef;
      padding: 40px 0;
      font-size: 17px;
      overflow: hidden;
      }
      /* line 1021, _contents.scss */
      .technology-video .wrap .videos {
        margin: 0 -15px -30px; }
        /* line 1023, _contents.scss */
        .technology-video .wrap .videos .video {
          margin: 0 0 30px;
          line-height: 1.5;
          position: relative; }

        .technology-video .wrap .videos .video.new::before {
          content: "";
          display: block;
          width: 68px;
          height: 34px;
          position: absolute;
          top: 3px;
          left: 3px;
          background: url("../png/icon-new.png") no-repeat 0 0;
          background-size: 100%; }

          /* line 1026, _contents.scss */
          .technology-video .wrap .videos .video video {
            display: block;
            width: 100%;
            margin: 0 0 10px; }
          /* line 1032, _contents.scss */
          .technology-video .wrap .videos .video.video-1 .open-modal {
            background: url("../png/thumb-video-1-sp.png") no-repeat 50% 50%;
            background-size: contain;
            padding: 56% 0 0;
            display: block;
            text-indent: -9999px;
            height: 0; }
          /* line 1046, _contents.scss */
          .technology-video .wrap .videos .video.video-2 .open-modal {
            background: url("../png/thumb-video-2-sp.png") no-repeat 50% 50%;
            background-size: contain;
            padding: 56% 0 0;
            display: block;
            text-indent: -9999px;
            height: 0; }
          /* line 1060, _contents.scss */
          .technology-video .wrap .videos .video.video-3 .open-modal {
            background: url("../png/thumb-video-3-sp.png") no-repeat 50% 50%;
            background-size: contain;
            padding: 56% 0 0;
            display: block;
            text-indent: -9999px;
            height: 0; }
          /* line 1069, _contents.scss */
          .technology-video .wrap .videos .video.video-4 .open-modal {
            background: url("../png/thumb-video-4-sp.png") no-repeat 50% 50%;
            background-size: contain;
            padding: 56% 0 0;
            display: block;
            text-indent: -9999px;
            height: 0; }

          .technology-video .wrap .videos .video.video-5 .open-modal {
            background: url("../jpg/thumb-video-5-sp.jpg") no-repeat 50% 50%;
            background-size: contain;
            padding: 56% 0 0;
            display: block;
            text-indent: -9999px;
            height: 0; }

          .technology-video .wrap .videos .video.video-6 .open-modal {
            background: url("../jpg/thumb-video-6-sp.jpg") no-repeat 50% 50%;
            background-size: contain;
            padding: 56% 0 0;
            display: block;
            text-indent: -9999px;
            height: 0; }

          .technology-video .wrap .videos .video.video-7 .open-modal {
            background: url("../jpg/thumb-video-7-sp.jpg") no-repeat 50% 50%;
            background-size: contain;
            padding: 56% 0 0;
            display: block;
            text-indent: -9999px;
            height: 0; }

          .technology-video .wrap .videos .video.video-8 .open-modal {
            background: url("../jpg/thumb-video-8-sp.jpg") no-repeat 50% 50%;
            background-size: contain;
            padding: 56% 0 0;
            display: block;
            text-indent: -9999px;
            height: 0; }

          .technology-video .wrap .videos .video.video-9 .open-modal {
            background: url("../jpg/thumb-video-9-sp.jpg") no-repeat 50% 50%;
            background-size: contain;
            padding: 56% 0 0;
            display: block;
            text-indent: -9999px;
            height: 0; }

          .technology-video .wrap .videos .video.video-10 .open-modal {
            background: url("../jpg/thumb-video-10-sp.jpg") no-repeat 50% 50%;
            background-size: contain;
            padding: 56% 0 0;
            display: block;
            text-indent: -9999px;
            height: 0; }

          .technology-video .wrap .videos .video.video-11 .open-modal {
            background: url("../jpg/thumb-video-11-sp.jpg") no-repeat 50% 50%;
            background-size: contain;
            padding: 56% 0 0;
            display: block;
            text-indent: -9999px;
            height: 0; }

          .technology-video .wrap .vrow1,
          .technology-video .wrap .vrow2 {
            margin-bottom: 50px;
          }


        /* line 1074, _contents.scss */
        .technology-video .wrap .videos .coming-soon {
          padding: 56% 0 0;
          position: relative;
          color: #fff;
          background: #777777;
          text-align: center;
          margin: 0 0 10px; }
          /* line 1081, _contents.scss */
          .technology-video .wrap .videos .coming-soon span {
            background: url("../png/txt-coming-soon-sp.png") no-repeat 50% 50%;
            background-size: contain;
            height: 16.5px;
            text-indent: -9999px;
            width: 122.5px;
            -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
            position: absolute;
            left: 50%;
            top: 50%;
            display: block;
            letter-spacing: 0; } }
@media (max-width: 329px) {
  /* line 1095, _contents.scss */
  .technology-video .container {
    padding: 0 15px; } }

/* line 1101, _contents.scss */
.global-network h2:after {
  background: #696969; }
@media (min-width: 768px) {
  /* line 1100, _contents.scss */
  .global-network {
    background: url("../png/img-global-network.png") #bebebe no-repeat;
    background-size: cover;
    padding: 98.9% 0 0;
    position: relative; }
    /* line 1109, _contents.scss */
    .global-network .container {
      position: absolute;
      right: 0;
      left: 0;
      top: 0;
      bottom: 0; }
      /* line 1115, _contents.scss */
      .global-network .container .wrap {
        max-width: 1100px;
        margin: 0 auto;
        padding: 20px 10px; }
        /* line 1119, _contents.scss */
        .global-network .container .wrap h2 {
          font-size: 28px;
          font-weight: 500;
          letter-spacing: 1px;
          line-height: 1.5;
          color: #535353;
          }
          /* line 1121, _contents.scss */
          .global-network .container .wrap h2:after {
            bottom: -12px; }
        /* line 1125, _contents.scss */
        .global-network .container .wrap .captions {
          background: url("../png/txt-global-caption.png") no-repeat 50% 50%;
          background-size: contain;
          height: 94px;
          text-indent: -9999px;
          width: 219px;
          margin: 72px 0 0; }
      /* line 1130, _contents.scss */
      .global-network .container .area {
        background: rgba(255, 255, 255, 0.5);
        position: absolute;
        bottom: 0;
        right: 0;
        left: 0;
        padding: 40px 0 20px;
        }
        /* line 1136, _contents.scss */
        .global-network .container .area > div {
          max-width: 1100px;
          margin: 0 auto;
          padding: 0 10px; }
          /* line 39, _mixin.scss */
          .global-network .container .area > div:before, .global-network .container .area > div:after {
            content: " ";
            display: table; }
          /* line 44, _mixin.scss */
          .global-network .container .area > div:after {
            clear: both; }
        /* line 1142, _contents.scss */
        .global-network .container .area .japan {
          float: left;
          width: 27%; }
          /* line 1145, _contents.scss */
          .global-network .container .area .japan dl {
            }
        /* line 1149, _contents.scss */
        .global-network .container .area .asia {
          float: left;
          width: 46%; }
          /* line 1152, _contents.scss */
          .global-network .container .area .asia dl {
            }
        /* line 1158, _contents.scss */
        .global-network .container .area .americas {
          float: right;
          width: 27%; }
          /* line 1161, _contents.scss */
          .global-network .container .area .americas dl {
            }
        /* line 1166, _contents.scss */
        .global-network .container .area dl {
          margin: 0 0 20px;
          }
          /* line 1168, _contents.scss */
          .global-network .container .area dl dt, .global-network .container .area dl dd {
            /* display: none; */
            } }
@media (max-width: 767px) {
  /* line 1100, _contents.scss */
  .global-network {
    background: url("../png/img-global-network-sp.png") #fff no-repeat 50% 0%;
    background-size: 100% auto; }
    /* line 1178, _contents.scss */
    .global-network h2 {
      font-size: 21px; }
      /* line 1180, _contents.scss */
      .global-network h2:after {
        bottom: -9px; }
    /* line 1185, _contents.scss */
    .global-network .container .wrap {
      padding: 40px 30px 85%; }
      /* line 1187, _contents.scss */
      .global-network .container .wrap h2 {
        font-size: 19px;
        padding: 0;
        color: #535353;
        font-weight: 600;
        }
      /* line 1190, _contents.scss */
      .global-network .container .wrap .captions {
        background: url("../png/txt-global-caption-sp.png") no-repeat 50% 50%;
        background-size: contain;
        height: 12px;
        text-indent: -9999px;
        max-width: 314px;
        margin: 22px 0 0; }
    /* line 1195, _contents.scss */
    .global-network .container .area {
      background: rgba(255, 255, 255, 0.5); }
      /* line 1197, _contents.scss */
      .global-network .container .area > div {
        margin: 0 auto;
        padding: 30px 30px;
        }
        /* line 39, _mixin.scss */
        .global-network .container .area > div:before, .global-network .container .area > div:after {
          content: " ";
          display: table; }
        /* line 44, _mixin.scss */
        .global-network .container .area > div:after {
          clear: both; }
      /* line 1203, _contents.scss */
      .global-network .container .area .japan dl {
        }
      /* line 1208, _contents.scss */
      .global-network .container .area .asia dl {
        }
      /* line 1213, _contents.scss */
      .global-network .container .area .americas dl {
        }
      /* line 1217, _contents.scss */
      .global-network .container .area dl {
        margin: 0 0 27px;
        }
        /* line 1219, _contents.scss */
        .global-network .container .area dl dt, .global-network .container .area dl dd {
          /* display: none; */
          } }
@media (max-width: 329px) {
  /* line 1229, _contents.scss */
  .global-network .container > div {
    padding: 10% 15px 0; }
  /* line 1233, _contents.scss */
  .global-network .area {
    padding: 5% 15px !important; }
    /* line 1235, _contents.scss */
    .global-network .area > div {
      padding: 0 !important; }
    /* line 1238, _contents.scss */
    .global-network .area dl {
      margin: 10px 0 !important; } }

/* line 1, _modal.scss */
.modal-wrapper {
  background: rgba(0, 0, 0, 0.8);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 100;
  display: none; }
  /* line 10, _modal.scss */
  .modal-wrapper .container {
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 0;
    right: 0; }
    /* line 16, _modal.scss */
    .modal-wrapper .container .wrap {
      max-width: 800px;
      margin: 0 auto;
      padding: 0 10px; }
  /* line 22, _modal.scss */
  .modal-wrapper .close {
    display: block;
    width: 30px;
    height: 30px;
    margin: 0 0 10px auto;
    text-indent: -99999px;
    overflow: hidden;
    position: relative; }
    /* line 30, _modal.scss */
    .modal-wrapper .close:before {
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      content: '';
      display: block;
      width: 100%;
      height: 1px;
      background: #fff;
      position: absolute;
      left: 0;
      top: 50%; }
    /* line 41, _modal.scss */
    .modal-wrapper .close:after {
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      content: '';
      display: block;
      width: 100%;
      height: 1px;
      background: #fff;
      position: absolute;
      left: 0;
      top: 50%; }
  /* line 53, _modal.scss */
  .modal-wrapper video {
    display: block;
    width: 100%; }
  @media (min-width: 768px) {
    /* line 58, _modal.scss */
    .modal-wrapper .container {
      padding: 0 10px 50px; }
    /* line 61, _modal.scss */
    .modal-wrapper .close {
      width: 50px;
      height: 50px; } }

/* 202105 vimeo
---------------------------*/

@media (max-width: 767px) {
  .visual .video-wrapper iframe {
      width: auto;
      height: 320%;
      min-width: 320%;
      min-height: 320%;
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 52%;
      margin: auto;
      -webkit-transform: translateX(-50%);
      transform: translateX(-50%);
  }
}

@media (max-width: 767px) and (max-width: 415px) {
  .visual .video-wrapper iframe {
      left: 58%;
  }
}

@media (max-width: 767px) and (max-width: 330px) {
  .visual .video-wrapper iframe {
      left: 60%;
  }
}

@media (min-width: 768px) {
  .visual .video-wrapper iframe {
      width: auto;
      height: auto;
      min-width: 115%;
      min-height: 115%;
      display: block;
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
  }
}

/* 202110 vimeo modal
---------------------------*/
.modal-video-close-btn {
  cursor: pointer;
}
.js-modal-btn {
  border: none;
  padding: 0;
  text-indent: -999pc;
  cursor: pointer;
}

#video-future-vision-btn, #video-quality-btn {
  width: 100%;
  height: 30vw;
  max-height: 341px;
}
#video-future-vision-btn {
  background: url("../png/thumb-video-future.png") no-repeat 0 0;
  background-size: contain;
}
#video-quality-btn {
  background: url("../png/thumb-video-quality.png") no-repeat 0 0;
  background-size: contain;
}

@media (max-width: 767px) {
  #video-future-vision-btn, #video-quality-btn {
    padding-top: 52%;
    height: auto;
    max-height: inherit;
  }
}

.technology-video .js-modal-btn {
  width: 100%;
  height: 24vw;
  max-height: 291px;
  margin: 0 0 10px;
}
#video-1-btn {
  background: url("../png/thumb-video-1.png") no-repeat 50% 50%;
  background-size: contain;
}
#video-2-btn {
  background: url("../png/thumb-video-2.png") no-repeat 50% 50%;
  background-size: contain;
}
#video-3-btn {
  background: url("../png/thumb-video-3.png") no-repeat 50% 50%;
  background-size: contain;
}
#video-4-btn {
  background: url("../png/thumb-video-4.png") no-repeat 50% 50%;
  background-size: contain;
}
#video-5-btn {
  background: url("../jpg/thumb-video-5.jpg") no-repeat 50% 50%;
  background-size: contain;
}
#video-6-btn {
  background: url("../jpg/thumb-video-6.jpg") no-repeat 50% 50%;
  background-size: contain;
}
#video-7-btn {
  background: url("../jpg/thumb-video-7.jpg") no-repeat 50% 50%;
  background-size: contain;
}
#video-8-btn {
  background: url("../jpg/thumb-video-8.jpg") no-repeat 50% 50%;
  background-size: contain;
}
#video-9-btn {
  background: url("../jpg/thumb-video-9.jpg") no-repeat 50% 50%;
  background-size: contain;
}
#video-10-btn {
  background: url("../jpg/thumb-video-10.jpg") no-repeat 50% 50%;
  background-size: contain;
}
#video-11-btn {
  background: url("../jpg/thumb-video-11.jpg") no-repeat 50% 50%;
  background-size: contain;
}

@media (max-width: 767px) {
  .technology-video .js-modal-btn {
    padding-top: 52%;
    height: auto;
    max-height: inherit;
    margin: 0;
  }

  #video-1-btn {
    background: url("../png/thumb-video-1-sp.png") no-repeat 50% 50%;
    background-size: contain;
  }
  #video-2-btn {
    background: url("../png/thumb-video-2-sp.png") no-repeat 50% 50%;
    background-size: contain;
  }
  #video-3-btn {
    background: url("../png/thumb-video-3-sp.png") no-repeat 50% 50%;
    background-size: contain;
  }
  #video-4-btn {
    background: url("../png/thumb-video-4-sp.png") no-repeat 50% 50%;
    background-size: contain;
  }
  #video-5-btn {
    background: url("../jpg/thumb-video-5-sp.jpg") no-repeat 50% 50%;
    background-size: contain;
  }
  #video-6-btn {
    background: url("../jpg/thumb-video-6-sp.jpg") no-repeat 50% 50%;
    background-size: contain;
  }
  #video-7-btn {
    background: url("../jpg/thumb-video-7-sp.jpg") no-repeat 50% 50%;
    background-size: contain;
  }
  #video-8-btn {
    background: url("../jpg/thumb-video-8-sp.jpg") no-repeat 50% 50%;
    background-size: contain;
  }
  #video-9-btn {
    background: url("../jpg/thumb-video-9-sp.jpg") no-repeat 50% 50%;
    background-size: contain;
  }
  #video-10-btn {
    background: url("../jpg/thumb-video-10-sp.jpg") no-repeat 50% 50%;
    background-size: contain;
  }
  #video-11-btn {
    background: url("../jpg/thumb-video-11-sp.jpg") no-repeat 50% 50%;
    background-size: contain;
  }
}

/* 202205 stories
---------------------------*/
body {
  position: relative;
}
.bnr-stories {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: #504084;
  font-size: 0;
  z-index: 99;
  opacity: 0;
  animation-name: fadein;
  animation-duration: 1s;
  animation-iteration-count: 1;
  animation-delay: .3s;
  animation-fill-mode: forwards;
}
.bnr-stories img {
  display: block;
  margin: 0 auto;
}

@media (min-width: 768px) {
  .slick-list {
    margin-left: -15%;
  }
  .bnr-stories img {
    min-height: 75px;
    width: auto;
    max-width: inherit;
  }
}

@media (min-width: 1000px) {
  .slick-list {
    margin-left: 0;
  }
}

@media (min-width: 1200px) {
  .slick-list {
    margin-left: 0;
  }
  .slick-slider {
    background: url("../png/bnr-stories-bg02.png") no-repeat center;
    background-size: contain;
    z-index: 2;
  }
  .bnr-stories-inner {
    position: relative;
  }
  .bnr-stories-inner::before {
    content: "";
    display: block;
    width: 30%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background: #504084 url("../png/bnr-stories-bg.png") repeat 0 0;
    background-size: contain;
    z-index: 1;
  }
}

@media (min-width: 1300px) {

}

/* Animation
------------------------------------*/
@keyframes fadein {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

/* Header
------------------------------------*/
.header {
  background: #ffffff;
  position: relative;
  height: 63px;
}
.header-inner {
  width: 100%;
  max-width: 1360px;
  height: 100%;
  margin: 0 auto;
  padding: 0 10px 0 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.header .logo {
  margin: 0 0 1px 0;
  padding: 0;
}
.header .logo h1 {
  margin: 0;
}

@media (min-width: 768px) {
  .header {
    height: 116px;
    position: absolute;
    width: 100%;
    z-index: 10;
    padding: 0 40px;
  }
  .header-inner {
    padding: 30px 0;
  }
}

/* Responsive
------------------------------------*/
.sp { display: block; }
.pc { display: none; }
@media (min-width: 768px) {
  .sp { display: none; }
  .pc { display: block; }  
}

/* Video
------------------------------------*/
.technology-video .wrap .videos .video .open-modal {
  margin: 0 0 10px;
}
.technology-video .wrap .videos .video p {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .technology-video .wrap .videos .video p {
    font-size: 17px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: .5px;
    margin: 5px 0 10px;
  }
}

/* Network
------------------------------------*/
.global-network .container .area .area-ttl {
  display: inline-block;
  background: #ccc;
  font-weight: 400;
  font-size: 18px;
  color: #ffffff;
  padding: 2px 15px 4px;
  margin: 5px 0 17px;
  background: rgb(154,154,154);
  background: linear-gradient(145deg, rgba(154,154,154,1) 20%, rgba(178,178,178,1) 100%);
}
.global-network .container .area dl dt {
  font-weight: 700;
  border-bottom: solid 1px #000000;
  font-size: 17px;
  margin: 0 0 10px;
  padding: 0 0 2px;
}
.global-network .container .area dl dd {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .global-network .container .area dl dt {
    display: inline-block;
    font-size: 16px;
    margin: 0 0 7px;
  }
}

/* concept-movie-row
------------------------------------*/
.concept-movie-box {
  margin: 0 0 40px;
}
@media (min-width: 768px) {
  .concept-movie-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .concept-movie-box {
    flex: 0 1 47%;
    margin: 0;
  }
}