@charset "UTF-8";
/* Video */
.frame {
  position: relative;
  height: 770px;
  overflow: hidden;
  width: 100%; }
  .frame span:first-child {
    z-index: 3;
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #ffffff; }
  .frame span:nth-child(2) {
    z-index: 3;
    position: absolute;
    top: 0;
    right: 0;
    width: 30px;
    height: 100%;
    background-color: #ffffff; }
  .frame .movie-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    overflow: hidden;
    width: 100%;
    height: 100%; }

.trace {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  text-align: center;
  opacity: 0.5; }

.contents {
  max-width: none;
  min-width: 1080px;
  width: auto;
  padding: 0; }

.header {
  position: fixed;
  left: 0;
  top: 0;
  -webkit-transform: translate(0, -136px);
          transform: translate(0, -136px);
  -webkit-transition: -webkit-transform 0.9s 0.5s cubic-bezier(0, 0, 0.03, 1.05);
  transition: -webkit-transform 0.9s 0.5s cubic-bezier(0, 0, 0.03, 1.05);
  transition: transform 0.9s 0.5s cubic-bezier(0, 0, 0.03, 1.05);
  transition: transform 0.9s 0.5s cubic-bezier(0, 0, 0.03, 1.05), -webkit-transform 0.9s 0.5s cubic-bezier(0, 0, 0.03, 1.05);
  width: 100%;
  z-index: 10; }
  .header.open {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }

.ie9 .mask {
  display: none; }

.ie9 .opening path {
  fill: #fff;
  -webkit-transition: all 0.8s 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition: all 0.8s 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955); }

.ie9 .opening .opening-box span {
  background-color: #fff !important; }

.ie9 .opening .opening-cover {
  background-color: transparent; }

.ie9 .opening .opening-cover__item {
  border-right-color: rgba(255, 255, 255, 0.15) !important;
  background-color: transparent !important; }
  .ie9 .opening .opening-cover__item span {
    background-color: transparent !important; }

.ie9 .about-block * {
  opacity: 1; }

.ie9 .about-block .about-cover {
  background-color: transparent; }

.ie9 .about-block .about-cover__item {
  border-right-color: rgba(255, 255, 255, 0.15) !important;
  background-color: transparent !important; }
  .ie9 .about-block .about-cover__item span {
    background-color: transparent !important; }

.main-block {
  padding: 0;
  height: 100vh;
  width: 100%;
  padding-top: 0;
  overflow: hidden;
  position: relative;
  /* 10年先の文字表示 */ }
  .main-block img {
    width: 100%; }
  .main-block .opening {
    width: 100%;
    height: 100%;
    z-index: 4;
    position: relative;
    left: 0;
    top: 0;
    overflow: hidden; }
    .main-block .opening-logo {
      width: 1000px;
      margin: -60px auto 0;
      height: 162px;
      position: relative;
      top: 50%;
      z-index: 1; }
      .main-block .opening-logo svg {
        overflow: visible !important; }
        .main-block .opening-logo svg g.type1 {
          -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease;
          opacity: 0;
          -webkit-transform: translate(-10px, 0);
                  transform: translate(-10px, 0); }
        .main-block .opening-logo svg g.type2 {
          -webkit-transition: all 0.3s 2.8s ease;
          transition: all 0.3s 2.8s ease;
          opacity: 0;
          -webkit-transform: translate(-10px, 0);
                  transform: translate(-10px, 0); }
    .main-block .opening.open .opening-btn {
      display: block;
      opacity: 1; }
    .main-block .opening .opening-btn {
      display: none;
      opacity: 0;
      width: 110px;
      margin: 64px 0 0; }
      .main-block .opening .opening-btn a {
        display: block;
        position: relative;
        font-family: "Open Sans", sans-serif;
        font-size: 16px;
        font-weight: 600;
        color: #fff;
        letter-spacing: 0.08em;
        border-color: #fff;
        text-decoration: none;
        -webkit-transition: all 0.6s 0s ease;
        transition: all 0.6s 0s ease; }
        .main-block .opening .opening-btn a:before {
          content: "\e902";
          font-size: 17px;
          margin-top: -8px;
          position: absolute;
          right: 0;
          top: 50%;
          /* use !important to prevent issues with browser extensions that change fonts */
          font-family: "icon" !important;
          speak: none;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease; }
        .main-block .opening .opening-btn a:after {
          content: "";
          position: absolute;
          left: 0;
          bottom: -4px;
          height: 2px;
          width: 100%;
          background-color: #ffffff;
          -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease;
          z-index: -1; }
        .main-block .opening .opening-btn a:hover:after {
          width: 110%; }
        .main-block .opening .opening-btn a:hover:before {
          right: -10%; }
    .main-block .opening-cover {
      position: absolute;
      left: 0;
      top: 0; }
      .main-block .opening-cover ul {
        position: absolute;
        left: 50%;
        top: 0;
        width: 100%; }
    .main-block .opening.show .opening-cover {
      -webkit-transition: all 0s 5s linear;
      transition: all 0s 5s linear;
      background-color: transparent; }
      .main-block .opening.show .opening-cover__item {
        height: 100%;
        -webkit-transition: all 0.5s 4s ease-out;
        transition: all 0.5s 4s ease-out; }
        .main-block .opening.show .opening-cover__item:nth-child(2n) {
          -webkit-transform: translate3d(0, 0, 0);
                  transform: translate3d(0, 0, 0); }
    .main-block .opening.open .opening-cover__item {
      border-color: transparent;
      -webkit-transition: all 0s 1s cubic-bezier(0.455, 0.03, 0.515, 0.955);
      transition: all 0s 1s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
    .main-block .opening.open .opening-cover__item span {
      -webkit-transform: translate3d(110%, 0, 0);
              transform: translate3d(110%, 0, 0);
      -webkit-transition: all 0.8s 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
      transition: all 0.8s 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
    .main-block .opening.open .opening-logo #layer path {
      fill: #fff;
      -webkit-transition: all 0.8s 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
      transition: all 0.8s 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
    .main-block .opening.open .opening-box svg path {
      stroke: #fff;
      -webkit-transition: all 0.8s 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
      transition: all 0.8s 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
    .main-block .opening svg#layer {
      width: 432px;
      height: 162px; }
    .main-block .opening-box {
      width: 245px;
      height: 162px;
      position: absolute;
      left: 0;
      top: 0; }
      .main-block .opening-box svg {
        width: 248px;
        height: 87px;
        position: absolute;
        left: 2px;
        bottom: 0; }
        .main-block .opening-box svg path {
          fill: none !important;
          stroke: #1f1f1f;
          stroke-width: 3px; }
        .main-block .opening-box svg .stroke-top {
          -webkit-transform: translate(-1.5px, 0);
                  transform: translate(-1.5px, 0);
          stroke-dasharray: 275;
          stroke-dashoffset: 275; }
        .main-block .opening-box svg .stroke-bottom {
          stroke-dasharray: 305;
          stroke-dashoffset: 305; }
      .main-block .opening-box .opening-box__text ul {
        position: absolute;
        width: 258px;
        height: 89px;
        list-style-type: none;
        margin: 0;
        padding: 0;
        top: 75px; }
        .main-block .opening-box .opening-box__text ul li {
          opacity: 0;
          position: absolute;
          top: -50%;
          left: -50%;
          margin: 0;
          padding: 0; }
        .main-block .opening-box .opening-box__text ul li.show {
          opacity: 1; }
    .main-block .opening .opening-cover {
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0;
      left: 50%;
      margin-left: -130px;
      background-color: #fff;
      overflow: hidden;
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }
      .main-block .opening .opening-cover__item {
        list-style: none;
        border-right: 1px solid #f1f1f1;
        height: 100%;
        width: 200px;
        float: left;
        overflow: hidden;
        height: 0;
        position: relative; }
        .main-block .opening .opening-cover__item:nth-child(2n) {
          height: 100%;
          -webkit-transform: translate3d(0, 100%, 0);
                  transform: translate3d(0, 100%, 0); }
        .main-block .opening .opening-cover__item span {
          display: block;
          width: 100%;
          height: 100%;
          background-color: #fff; }

@-webkit-keyframes key-opening-panel {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  100% {
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0); } }

@keyframes key-opening-panel {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  100% {
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0); } }
  .main-block .show svg g.type1 {
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
  .main-block .show svg g.type2 {
    -webkit-transition: all 0.6s 2.2s ease;
    transition: all 0.6s 2.2s ease;
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
  .main-block__video {
    z-index: 3;
    position: absolute;
    width: 100%;
    min-width: 1020px;
    left: 0;
    top: 136px;
    overflow: hidden; }
    .main-block__video iframe {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 100%;
      height: 100%;
      min-width: 1080px; }
  .main-block__scroll {
    z-index: 5;
    position: absolute;
    left: 50%;
    bottom: 30px;
    width: 100px;
    height: 39px;
    margin-left: -50px;
    cursor: pointer;
    opacity: 0;
    -webkit-transform: translate(0, 20px);
            transform: translate(0, 20px);
    -webkit-transition: all 0.6s 0.6s ease-out;
    transition: all 0.6s 0.6s ease-out; }
    .main-block__scroll-bar {
      position: absolute;
      bottom: 0;
      left: 50%;
      width: 1px;
      height: 20px;
      margin: 0;
      overflow: hidden;
      -webkit-transition: all 0.5s 0.4s ease-out;
      transition: all 0.5s 0.4s ease-out; }
      .main-block__scroll-bar span {
        position: absolute;
        top: 0;
        left: 0;
        width: 1px;
        height: 20px;
        display: block;
        background-color: #fff;
        -webkit-transition: all 0.8s 0s ease-out;
        transition: all 0.8s 0s ease-out;
        -webkit-animation: load1 1s infinite ease-in-out;
                animation: load1 1s infinite ease-in-out; }

@-webkit-keyframes load1 {
  0% {
    top: 0;
    bottom: auto;
    height: 0; }
  40% {
    top: 0;
    bottom: auto;
    height: 20px; }
  80% {
    top: auto;
    bottom: 0;
    height: 20px; }
  100% {
    top: auto;
    bottom: -20px;
    height: 0; } }

@keyframes load1 {
  0% {
    top: 0;
    bottom: auto;
    height: 0; }
  40% {
    top: 0;
    bottom: auto;
    height: 20px; }
  80% {
    top: auto;
    bottom: 0;
    height: 20px; }
  100% {
    top: auto;
    bottom: -20px;
    height: 0; } }
    .main-block__scroll-text {
      position: absolute;
      top: -3px;
      left: 0;
      width: 100%;
      height: 20px;
      margin: 0;
      color: #ffffff;
      text-align: center; }
  .open .main-block__overlay {
    opacity: 1; }
  .main-block__overlay {
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    opacity: 0;
    background: transparent url(../images/index/index-main-visual-overlay.png) repeat left top; }
  .main-block__play {
    position: absolute;
    right: 60px;
    bottom: 30px;
    color: #fff;
    height: 30px;
    text-align: center;
    cursor: pointer;
    z-index: 3;
    -webkit-transform: translate(0, 20px);
            transform: translate(0, 20px);
    opacity: 0;
    -webkit-transition: all 0.6s 0.6s ease-out;
    transition: all 0.6s 0.6s ease-out; }
  .main-block__play-btn {
    display: inline-block;
    width: 30px;
    height: 30px;
    margin-left: 10px;
    position: relative;
    float: right; }
    .main-block__play-btn svg {
      position: absolute;
      left: 0;
      top: 0;
      width: 30px;
      height: 30px; }
  .main-block .open.main-block__scroll {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
    .main-block .open.main-block__scroll .main-block__scroll-bar span {
      height: 20px; }

.notice-block {
  overflow: hidden;
  min-width: 1080px;
  width: 100%;
  padding: 0 30px 0;
  margin-top: 70px;
  margin-bottom: -30px;
  text-align: center; }
  .notice-block a {
    margin-top: 40px;
    display: inline-block;
    text-decoration: none;
    width: auto;
    height: auto;
    padding: 5px 40px 5px 20px;
    border: 1px solid #1f1f1f;
    color: #1f1f1f;
   }



.about-block {
  overflow: hidden;
  min-width: 1080px;
  width: 100%;
  padding: 0 30px 0;
  margin-top: 70px; }
  .about-block-wrapper {
    width: 1470px;
    position: relative;
    left: 50%;
    margin-left: -775px; }
  .about-block .about-line__start {
    position: absolute;
    top: 565px;
    right: 350px;
    opacity: 0; }
  .about-block .about-line__item--1 {
    position: absolute;
    top: 587px;
    right: 356px;
    overflow: hidden;
    height: 0;
    z-index: 1; }
  .about-block .about-line__item--2 {
    position: absolute;
    top: 1313px;
    right: 654px;
    overflow: hidden;
    width: 0;
    z-index: 1; }
    .about-block .about-line__item--2 img {
      float: right; }
  .about-block.show .about-cover {
    -webkit-transition: all 0s 0.5s linear;
    transition: all 0s 0.5s linear;
    background-color: transparent; }
    .about-block.show .about-cover__item {
      height: 100%;
      -webkit-transition: all 0.5s ease-out;
      transition: all 0.5s ease-out; }
      .about-block.show .about-cover__item:nth-child(2n) {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0); }
  .about-block.open .about-cover__item {
    border-right-color: rgba(255, 255, 255, 0.15);
    -webkit-transition: all 0.8s 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition: all 0.8s 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
  .about-block.open .about-cover__item span {
    -webkit-transform: translate3d(110%, 0, 0);
            transform: translate3d(110%, 0, 0);
    -webkit-transition: all 0.8s 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition: all 0.8s 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
  .about-block .about-cover {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    background-color: #fff;
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 0; }
    .about-block .about-cover__item {
      list-style: none;
      border-right: 1px solid #f1f1f1;
      height: 100%;
      width: 200px;
      float: left;
      overflow: hidden;
      height: 0;
      position: relative; }
      .about-block .about-cover__item:nth-child(2n) {
        height: 100%;
        -webkit-transform: translate3d(0, 100%, 0);
                transform: translate3d(0, 100%, 0); }
      .about-block .about-cover__item span {
        display: block;
        width: 100%;
        height: 100%;
        background-color: #fff; }
  .about-block__item {
    position: relative; }
    .about-block__item--01 {
      padding-bottom: 127px; }
      .about-block__item--01 .about-block__bg {
        margin-left: 70px;
        position: relative;
        overflow: hidden;
        width: 1400px; }
      .about-block__item--01 .about-block__pic {
        top: 0;
        padding-top: 90px; }
      .about-block__item--01 .about-block__inner {
        padding-top: 237px;
        padding-left: 900px;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        z-index: 2; }
      .about-block__item--01 .about-block__type {
        margin-left: -20px; }
      .about-block__item--01 .about-block__title {
        margin: 0 0 26px -29px;
        padding: 0; }
      .about-block__item--01 .about-block__explain,
      .about-block__item--01 .about-block__btn {
        margin-left: 50px; }
      .about-block__item--01 .about-block__btn a.parts__btn:hover {
        color: #1f1f1f; }
      .about-block__item--01 .about-block__btn a.parts__btn:after {
        content: "";
        background-color: #ffffff; }
    .about-block__item--02 {
      float: right;
      margin-right: 20px; }
      .about-block__item--02 .about-block__pic {
        position: relative; }
      .about-block__item--02 .about-block__inner {
        color: #000;
        padding-left: 180px;
        margin-top: -46px; }
    .about-block__item--03 {
      float: left;
      margin-left: 170px;
      padding-top: 62px;
      width: 490px;
      padding-bottom: 140px; }
      .about-block__item--03 .about-block__pic {
        position: relative; }
      .about-block__item--03 .about-block__inner {
        color: #000; }
      .about-block__item--03 .about-block__inner {
        color: #000;
        padding-left: 20.5%;
        margin-top: -46px; }
    .about-block__item--white {
      color: #fff; }
      .about-block__item--white .about-block__type {
        border-color: #fff;
        color: #fff; }
      .about-block__item--white .about-block__btn a {
        border-color: #fff;
        color: #fff; }
  .about-block__bg {
    z-index: -1; }
  .about-block__pic {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0; }
  .about-block__type {
    display: inline-block;
    padding-bottom: 8px;
    letter-spacing: 0.08em;
    margin-bottom: 22px;
    border-bottom: 3px solid #1f1f1f; }
  .about-block__title {
    margin: 5px 0 10px 0;
    padding: 0; }
  .about-block__inner {
    position: relative;
    opacity: 0; }
  .about-block__explain {
    margin-bottom: 22px; }
    .about-block__explain span {
      margin: 0 -0.14em; }

.blog-block {
  background-color: #f4f4f4;
  overflow: hidden; }
  .blog-block a {
    text-decoration: none;
    display: block; }
    .blog-block a .blog-article__pic:before {
      opacity: 0;
      content: "READ";
      color: #fff;
      display: block;
      position: absolute;
      left: 0;
      top: 50%;
      padding-bottom: 30px;
      text-align: center;
      z-index: 1;
      width: 100%;
      margin-top: -20px;
      -webkit-transform: translate(-10px, 0);
              transform: translate(-10px, 0);
      background: transparent url(../images/common/arrow-right-short-wh.svg) no-repeat center 30px;
      background-size: 20px 20px;
      box-sizing: border-box;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
    .blog-block a .blog-article__pic:after {
      content: "";
      opacity: 0;
      position: absolute;
      left: 0;
      top: 0;
      height: 100%;
      width: 50%;
      text-align: center;
      box-sizing: border-box;
      background: rgba(0, 0, 0, 0.4);
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease;
      overflow: hidden; }
    .blog-block a:hover .blog-article__pic:before {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0);
      opacity: 1; }
    .blog-block a:hover .blog-article__pic:after {
      opacity: 1;
      width: 100%;
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }
  .blog-block__title {
    color: #fff;
    margin: -19px 0 111px;
    padding: 0 30px 0 0;
    text-align: right; }
  .blog-block__inner {
    width: 1080px;
    margin: 0 auto; }
  .blog-block__btn {
    width: 320px;
    margin: 10px auto 0;
    padding-bottom: 96px; }
    .blog-block__btn a {
      z-index: 1; }

.blog-column {
  clear: both;
  margin-top: -80px;
  overflow: hidden; }

.blog-block.show .blog-article:nth-child(1) {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition-delay: 0.125s;
          transition-delay: 0.125s; }

.blog-block.show .blog-article:nth-child(2) {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition-delay: 0.25s;
          transition-delay: 0.25s; }

.blog-block.show .blog-article:nth-child(3) {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition-delay: 0.375s;
          transition-delay: 0.375s; }

.blog-block.show .blog-article:nth-child(4) {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s; }

.blog-article {
  width: 500px;
  float: left;
  position: relative;
  opacity: 0;
  -webkit-transform: translate3d(0, -30px, 0);
          transform: translate3d(0, -30px, 0);
  -webkit-transition: all 0.5s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: all 0.5s cubic-bezier(0.39, 0.575, 0.565, 1); }
  .blog-article__pic {
    margin: 0 0 -20px;
    position: relative; }
  .blog-article--new:after {
    content: "";
    display: block;
    width: 50px;
    height: 74px;
    background: url(../images/common/label-new.png) no-repeat left top;
    background-size: 50px auto;
    position: absolute;
    right: 0;
    top: 15px; }
  .blog-article__label, .blog-article__title, .blog-article__date {
    margin: 0 40px;
    padding: 0; }
  .blog-article__label {
    height: 36px;
    display: inline-block;
    line-height: 36px;
    letter-spacing: 0.16em;
    font-size: 16px;
    font-family: "Open Sans", sans-serif;
    font-weight: 600;
    color: #1f1f1f;
    background-color: #fff;
    padding: 0 20px;
    margin-bottom: 11px;
    z-index: 1;
    position: relative; }
  .blog-article__title {
    color: #1f1f1f;
    font-size: 18px;
    font-family: "Midashi Go MB1", Meiryo, "メイリオ", sans-serif;
    line-height: 1.8;
    letter-spacing: 0.08em;
    margin: 0 40px 16px;
    padding: 0; }
  .blog-article__date {
    font-family: "Open Sans", sans-serif;
    color: #999999;
    font-size: 14px;
    letter-spacing: 0.08em; }
  .blog-article__body {
    height: 200px; }
  .blog-article:nth-child(2n) {
    float: right;
    margin-top: 80px; }

.blog-column:after {
  content: "";
  display: table;
  clear: both; }

.news-block {
  padding-top: 93px; }
  .news-block__title {
    color: #1f1f1f;
    font-family: "Open Sans", sans-serif;
    letter-spacing: 0.08em;
    margin: 0 0 43px;
    padding: 0;
    font-size: 45px;
    font-weight: 600;
    line-height: 1;
    text-align: center; }
  .news-block__btn {
    width: 320px;
    margin: 0 auto;
    padding-bottom: 96px; }

.news-column {
  width: 1000px;
  margin: 0 auto 50px; }

.news-column:after {
  content: "";
  display: table;
  clear: both; }

.news-block.show .news-article:nth-child(1) {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition-delay: 0.125s;
          transition-delay: 0.125s; }

.news-block.show .news-article:nth-child(2) {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition-delay: 0.25s;
          transition-delay: 0.25s; }

.news-block.show .news-article:nth-child(3) {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition-delay: 0.375s;
          transition-delay: 0.375s; }

.news-article {
  position: relative;
  background-color: #f4f4f4;
  width: 320px;
  height: 360px;
  float: left;
  margin-right: 20px;
  opacity: 0;
  -webkit-transform: translate3d(0, -30px, 0);
          transform: translate3d(0, -30px, 0);
  -webkit-transition: all 0.5s cubic-bezier(0.39, 0.575, 0.565, 1);
  transition: all 0.5s cubic-bezier(0.39, 0.575, 0.565, 1); }
  .news-article__pic:before {
    opacity: 0;
    z-index: 1;
    content: "READ";
    color: #fff;
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    padding-bottom: 30px;
    text-align: center;
    margin-top: -20px;
    -webkit-transform: translate(-10px, 0);
            transform: translate(-10px, 0);
    background: transparent url(../images/common/arrow-right-short-wh.svg) no-repeat center 30px;
    background-size: 20px 20px;
    box-sizing: border-box;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
  .news-article__pic:after {
    content: "";
    opacity: 0;
    text-align: center;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 50%;
    box-sizing: border-box;
    background: rgba(0, 0, 0, 0.4);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    overflow: hidden; }
  .news-article a {
    text-decoration: none;
    display: block;
    height: 368px; }
  .news-article a:hover .news-article__pic:before {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1; }
  .news-article a:hover .news-article__pic:after {
    opacity: 1;
    width: 100%;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
  .news-article__pic {
    margin: 0;
    position: relative; }
  .news-article__title {
    color: #1f1f1f;
    margin: 10px 0 0 0;
    padding: 0 20px; }
  .news-article__label, .news-article__date {
    position: absolute;
    bottom: 20px;
    left: 20px;
    margin: 0;
    padding: 0;
    color: #999999; }
  .news-article__label {
    left: auto;
    right: 20px; }

.news-article:nth-child(3n) {
  margin-right: 0; }

/* Sprite Animation */
.opening-box__text ul {
  /* Show */ }
  .opening-box__text ul li:nth-child(1) {
    -webkit-transform: scale(0.5, 0.5);
            transform: scale(0.5, 0.5);
    background: transparent url(../images/index/index-copy-1-sprite.png) no-repeat 0 0;
    width: 496px;
    height: 172px; }
  .opening-box__text ul li:nth-child(2) {
    -webkit-transform: scale(0.5, 0.5);
            transform: scale(0.5, 0.5);
    background: transparent url(../images/index/index-copy-2-sprite.png) no-repeat 0 0;
    width: 496px;
    height: 172px; }
  .opening-box__text ul li:nth-child(3) {
    -webkit-transform: scale(0.5, 0.5);
            transform: scale(0.5, 0.5);
    background: transparent url(../images/index/index-copy-3-sprite.png) no-repeat 0 0;
    width: 496px;
    height: 172px; }
  .opening-box__text ul li:nth-child(4) {
    -webkit-transform: scale(0.5, 0.5);
            transform: scale(0.5, 0.5);
    background: transparent url(../images/index/index-copy-4-sprite.png) no-repeat 0 0;
    width: 496px;
    height: 172px; }
  .opening-box__text ul li.show:nth-child(1) {
    -webkit-animation: spriteAnimation1 2.2s steps(39) forwards;
            animation: spriteAnimation1 2.2s steps(39) forwards; }
  .opening-box__text ul li.show:nth-child(2) {
    -webkit-animation: spriteAnimation2 2.8s steps(46) forwards;
            animation: spriteAnimation2 2.8s steps(46) forwards; }
  .opening-box__text ul li.show:nth-child(3) {
    -webkit-animation: spriteAnimation3 2.8s steps(46) forwards;
            animation: spriteAnimation3 2.8s steps(46) forwards; }
  .opening-box__text ul li.show:nth-child(4) {
    -webkit-animation: spriteAnimation4 2.2s steps(39) forwards;
            animation: spriteAnimation4 2.2s steps(39) forwards; }

@-webkit-keyframes spriteAnimation1 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 0 -7098px; } }

@keyframes spriteAnimation1 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 0 -7098px; } }

@-webkit-keyframes spriteAnimation2 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 0 -8372px; } }

@keyframes spriteAnimation2 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 0 -8372px; } }

@-webkit-keyframes spriteAnimation3 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 0 -8372px; } }

@keyframes spriteAnimation3 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 0 -8372px; } }

@-webkit-keyframes spriteAnimation4 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 0 -7098px; } }

@keyframes spriteAnimation4 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 0 -7098px; } }
