  .top-img {
    position: relative;
  }

  .slide li.scale img.mv-img {
    opacity: .7;
    transform: scale(1.15);
  }

  .slide li.scale.active img.mv-img {
    animation: zoomOut 6s ease-out forwards;
  }

  @keyframes zoomOut {
    0% {
      opacity: .7;
      transform: scale(1.15);
    }

    100% {
      opacity: 1;
      transform: scale(1);
    }
  }

  .slide li .mv-txt {
    align-items: center;
    background-color: rgba(22, 45, 153, 0.9);
    bottom: 0;
    box-sizing: border-box;
    color: #fff;
    display: flex;
    flex-direction: column;
    font-size: 18px;
    height: calc((170/ 2000)* 100vw);
    left: 0;
    opacity: 1;
    padding-top: calc((20/ 2000)* 100vw);
    position: absolute;
    width: calc((950/ 2000)* 100vw);
  }

  .slide li:nth-of-type(1) .mv-txt {
    left: -100%;
    opacity: 0;
    transition: left .5s, opacity 3s;
  }

  .slide li:nth-of-type(1).active .mv-txt {
    left: 0;
    opacity: 1;
  }

  .slide li .mv-txt p {
    display: inline-block;
    max-width: calc((840/ 2000)* 100vw);
    position: relative;
  }

  .slide li:nth-of-type(1) .mv-txt p img {
    opacity: 0;
    transform: translate(0, 50px);
  }

  .slide li:nth-of-type(1).active .mv-txt p img {
    animation: show-mv-txt .5s ease forwards;
    animation-delay: 1.5s;
  }

  .slide li .mv-txt p img {
    width: 100%;
  }

  .slide li .mv-txt p::before {
    background: linear-gradient(transparent 60%, #fff 60%);
    bottom: calc((-20/ 2000)* 100vw);
    content: "";
    height: 5px;
    left: 0;
    display: block;
    position: absolute;
    width: 100%;
    z-index: 2;
  }

  .slide li:nth-of-type(1).active .mv-txt p::before {
    animation: underAnime .5s ease-out forwards;
    animation-delay: .5s;
    width: 0;
  }

  .slide li .mv-txt span {
    display: block;
    font-size: calc((26/ 2000)* 100vw);
    margin-top: calc((35/ 2000)* 100vw);
    position: relative;
  }

  .slide li:nth-of-type(1) .mv-txt span,
  .slide li:nth-of-type(2) .mv-txt span {
    opacity: 0;
    transform: translate(0, 50px);
  }

  .slide li:nth-of-type(1).active .mv-txt span {
    animation: show-mv-txt .3s ease forwards;
    animation-delay: 1.8s;
  }

  .slide li:nth-of-type(2).active .mv-txt span {
    animation: show-mv-txt .5s ease forwards;
    animation-delay: .3s;
  }

  @keyframes show-mv-txt {
    0% {
      opacity: 0;
      transform: translate(0, 50px);
    }

    100% {
      opacity: 1;
      transform: translate(0, 0);
    }
  }

  @keyframes underAnime {
    0% {
      width: 0;
    }

    100% {
      width: 100%;
    }
  }

  .bx-wrapper .bx-pager {
    bottom: -30px;
  }

  .bx-wrapper .bx-pager.bx-default-pager a {
    background-color: #fff;
  }

  .link-box {
    display: inline-block;
    padding: 30px 40px;
    border: 1px solid #ccc;
    margin-bottom: 30px;
  }

  .open-sans {
    font-family: "Open Sans";
  }

  .section-heading h2 {
    align-items: center;
    color: #8bb4e6;
    display: flex;
    font-size: 72px;
    font-weight: bold;
    left: 0;
    letter-spacing: 0;
    margin: 0;
    position: absolute;
    text-decoration: none;
    top: -.25em;
  }

  .section-heading h2::after {
    display: none;
  }

  .section-heading h2 .sub-ttl {
    color: #3f64a0;
    font-size: 24px;
    margin-left: 1em;
  }

  .section-heading .leadTxt {
    opacity: 0;
  }

  .aboutus.is-animation .section-heading .leadTxt {
    animation: fadein 2s ease-in-out forwards;
  }

  @keyframes fadein {
    0% {
      opacity: 0;
    }

    100% {
      opacity: 1;
    }
  }

  .section-heading h3 {
    font-size: 20px;
    font-weight: bold;
    margin-top: 45px;
  }

  .section-heading h3 .animate-under-line-box {
    display: block;
    line-height: 2;
    margin-top: 20px;
  }

  .section-heading h3 .animate-under-line {
    background-image: linear-gradient(90deg, #cee0f6, #cee0f6);
    background-repeat: no-repeat;
    background-position: left 85%;
    background-size: 0 50%;
    display: inline-block;
    font-size: 30px;
    opacity: 0;
    transform: translate(10px, 50px);
    transition: all .9s ease;
  }

  .aboutus.is-animation .section-heading h3 .animate-under-line.show {
    animation: underline .7s ease forwards;
  }

  @keyframes underline {
    0% {
      background-size: 0 50%;
      opacity: 0;
      transform: translate(10px, 50px);
    }

    50% {
      background-size: 30% 25%;
      opacity: .5;
    }

    100% {
      background-size: 100% 25%;
      opacity: 1;
      transform: translate(0, 0);
    }
  }

  .aniTxt-box {
    margin-top: 35px;
    margin-left: -300%;
  }

  .aniTxt-box p {
    opacity: 0;
    max-width: 600px;
  }

  .aboutus.is-animation .aniTxt-box p.show {
    opacity: 1;
    transition: all 2.5s ease-in-out;
  }

  .aboutus.is-animation .aniTxt-box.move {
    animation: moveBox 2s ease forwards;
  }

  @keyframes moveBox {
    0% {
      margin-left: -200%;
    }

    30% {
      margin-left: -50%;
    }

    100% {
      margin-left: 0;
    }
  }

  .section-heading p {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.875;
  }

  .com-btn-v01r {
    background: #4065a2;
    color: #fff;
    display: inline-block;
    font-size: 13px;
    font-weight: bold;
    padding: 22px 45px;
    text-align: center;
    text-decoration: none;
    width: 275px;
  }

  .com-btn-v01r:hover {
    background: #438bc5;
    border-color: #438bc5;
    color: #fff;
    text-decoration: none;
  }

  .section-heading {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    margin: auto;
    max-width: 2000px;
    min-height: 600px;
    position: relative;
    width: 100%;
  }

  .aboutus {
    margin-top: 100px;
  }

  .aboutus .section-heading {
    background-image: url(/assets/img/aboutus-bg_pc.png);
  }

  .aboutus .com-btn-v01r {
    margin-top: 45px;
  }

  .aboutus-links {
    display: flex;
    justify-content: space-between;
  }

  .aboutus-links li a {
    text-decoration: none;
  }

  .aboutus-links li:hover {
    opacity: 0.9;
  }

  .aboutus-links.col2 {
    margin-top: 50px;
  }

  .aboutus-links.col2 li {
    background-size: contain;
    background-repeat: no-repeat;
    box-sizing: border-box;
    height: 340px;
    padding: 60px 40px;
    position: relative;
    width: 49%;
  }

  .aboutus-links.col2 li h3,
  .aboutus-links.col2 li p {
    color: #fff;
  }

  .aboutus-links.col2 li h3 {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 40px;
  }

  .aboutus-links.col2 li h3 span {
    display: block;
    font-size: 16px;
    margin-bottom: 20px;
  }

  .aboutus-links.col2 li p {
    font-size: 13px;
    line-height: 2;
  }

  .aboutus-links.col2 li .arrow {
    bottom: 25px;
    color: #fff;
    font-size: 14px;
    right: 35px;
    position: absolute;
  }

  .aboutus-links.col2 li .arrow img {
    height: auto;
    width: 45px;
  }

  .aboutus-links.col2 li.link-people {
    background-image: url(/assets/img/people-bg.png);
  }

  .aboutus-links.col2 li.link-data {
    background-image: url(/assets/img/data-bg.png);
  }

  .aboutus-links.col2 li.link-data h3 {
    line-height: 1.8;
  }

  .aboutus-links.col4 li {
    height: 400px;
    overflow: hidden;
    width: 23.5%;
  }

  .aboutus-links.col4 li img {
    vertical-align: bottom;
  }

  .aboutus-links.col4 li .img-box {
    margin: 0 auto;
    overflow: hidden;
  }

  .aboutus-links.col4 li a:hover .img-box img {
    transform: scale(1.15, 1.15);
    transition: .5s all;
  }

  .aboutus-links.col4 li .link-content {
    background-image: url('/assets/img/section-bg.png');
    background-repeat: no-repeat;
    background-size: cover;
    box-sizing: border-box;
    color: #fff;
    height: 235px;
    padding: 20px 25px 30px;
    text-align: center;
  }

  .aboutus-links.col4 li .link-content .icon {
    max-width: 50px;
  }

  .aboutus-links.col4 li .link-content h3 {
    margin: 20px 0 25px;
    font-size: 20px;
    font-weight: bold;
    position: relative;
  }

  .aboutus-links.col4 li .link-content h3::after {
    background-color: #fff;
    bottom: -.7em;
    content: "";
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    height: 2px;
    width: 35px;
  }

  .aboutus-links.col4 li .link-content p {
    font-size: 13px;
    line-height: 1.9;
  }

  .workstyle {
    margin-top: 60px;
  }

  .workstyle .section-heading {
    background-image: url(/assets/img/workstyle-bg_pc.jpg);
  }

  .workstyle .workstyle-contents {
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    width: 100%;
  }

  .workstyle .workstyle-contents ul {
    box-sizing: border-box;
    margin-top: 70px;
    width: 370px;
  }

  .workstyle .workstyle-contents ul li+li {
    margin-top: 30px;
  }

  .workstyle .workstyle-contents ul li a {
    display: block;
  }

  .sportclub-link {
    text-align: center;
  }

  .sportclub-link a {
    display: inline-block;
    width: 550px;
  }

  .sportclub-link a img {
    height: auto;
    margin: 40px auto;
    width: 100%;
  }

  .big-footer,
  .sp-footer {
    margin-top: 0;
  }

  @media screen and (max-width: 639px),
  only screen and (min-device-width: 375px) and (max-device-width: 667px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: landscape),
  only screen and (min-device-width: 414px) and (max-device-width: 736px) and (-webkit-min-device-pixel-ratio: 3) and (orientation: landscape) {

    .bx-wrapper .bx-pager {
      bottom: -25px;
    }

    .slide li:nth-of-type(1) .mv-txt {
      transition: left 1s, opacity 3s;
    }

    .slide li:nth-of-type(1).active .mv-txt p::before {
      animation-delay: 1s;
    }

    .slide li .mv-txt {
      height: calc((100/ 375)* 100vw);
      padding: calc((10/ 375)* 100vw) 0;
      width: 100%;
    }

    .slide li .mv-txt p {
      font-size: calc((16/ 375)* 100vw);
      margin: 0;
      max-width: 100%;
      padding-bottom: calc((10/ 375)* 100vw);
    }

    .slide li .mv-txt p::before {
      bottom: calc((40/ 375)* 100vw);
      height: calc((8/ 375)* 100vw);
    }

    .slide li .mv-txt span {
      box-sizing: border-box;
      display: block;
      font-size: calc((15/ 375)* 100vw);
      line-height: 1.4;
      margin-top: calc((25/ 375)* 100vw);
      margin-left: calc((-30/ 375)* 100vw);
      padding-left: calc((20/ 375)* 100vw);
      width: 100%;
    }

    .slide li .mv-txt p img {
      transform: translate(calc((15/375) * 100vw), calc((-55/375) * 100vw));
      width: 90%;
    }

    .slide li:nth-of-type(1).active .mv-txt p img {
      transform: translate(calc((15/375) * 100vw), 50%);
    }

    @keyframes show-mv-txt {
      0% {
        opacity: 0;
        transform: translate(calc((15/375) * 100vw), 50px);
      }
  
      100% {
        opacity: 1;
        transform: translate(calc((15/375) * 100vw), calc((-55/375) * 100vw));
      }
    }

    .slide li:nth-of-type(3) .mv-txt span {
      opacity: 1;
      transform: translate(calc((15/375) * 100vw), calc((-55/375) * 100vw));
    }

    .sp-pt0 {
      padding-top: 0;
    }

    .company-link {
      text-align: center;
    }

    .com-btn-v01r {
      box-sizing: border-box;
      width: calc((300/375)*100vw);
    }

    .section-heading {
      background-color: #e7eef6;
      min-height: auto;
    }

    .section-heading h2 {
      display: block;
      font-size: calc((50/375)*100vw);
      left: calc((20/375)*100vw);
      top: -.4em;
    }

    .section-heading h2 .sub-ttl {
      display: block;
      font-size: calc((18/375)*100vw);
      margin: 1.5em 0 0;
      text-align: left;
    }

    .section-heading h3 {
      font-size: calc((16/375)*100vw);
    }

    .section-heading h3 .animate-under-line {
      font-size: calc((21/375)*100vw);
    }

    .section-heading p {
      font-size: 14px;
    }

    .aboutus {
      margin-top: 80px;
    }

    .aboutus .section-heading {
      background-image: url(/assets/img/aboutus-bg_sp.png);
      background-size: contain;
      background-position: bottom;
      min-height: calc((930/375)*100vw);
    }

    .aboutus .aniTxt-box {
      min-height: calc((180/375)*100vw);
    }

    .aboutus-links li a {
      box-sizing: border-box;
      display: block;
    }

    .aboutus-links.col2 {
      display: block;
      margin-top: calc((20/375)*100vw);
      ;
    }

    .aboutus-links.col2 li {
      height: calc((225/375)*100vw);
      padding: calc((40/375)*100vw) calc((20/375)*100vw);
      width: 100%;
    }

    .aboutus-links.col2 li+li {
      margin-top: calc((20/375)*100vw);
    }

    .aboutus-links.col2 li h3 {
      font-size: calc((20/375)*100vw);
      margin-bottom: calc((15/375)*100vw);
    }

    .aboutus-links.col2 li h3 span {
      font-size: calc((12/375)*100vw);
    }

    .aboutus-links.col2 li p {
      font-size: calc((11/375)*100vw);
      line-height: 2;
    }

    .aboutus-links.col2 li .arrow {
      bottom: calc((15/375)*100vw);
      font-size: calc((12/375)*100vw);
      right: calc((15/375)*100vw);
    }

    .aboutus-links.col4 {
      flex-wrap: wrap;
      margin-top: calc((-50/375)*100vw);
    }

    .aboutus-links.col4 li {
      height: auto;
      width: 48%;
    }

    .aboutus-links.col4 li:nth-child(n + 3) {
      margin-top: 20px;
    }

    .aboutus-links.col4 li .link-content {
      height: calc((200/375)*100vw);
      padding: calc((20/375)*100vw) calc((8/375)*100vw);
    }

    .aboutus-links.col4 li .link-content h3 {
      margin: 15px 0 20px;
      font-size: 16px;
    }

    .aboutus-links.col4 li .link-content p {
      font-size: calc((11/375)*100vw);
      word-break: break-all;
    }

    .aboutus-links.col4 li .link-content .icon {
      max-width: calc((35/375)*100vw);
    }

    .aboutus-img,
    .workstyle-img {
      margin-top: 20px;
    }

    .workstyle {
      margin-top: 40px;
    }

    .workstyle .section-heading {
      background-image: url(/assets/img/workstyle-bg_sp.jpg);
      background-size: contain;
      background-position: bottom;
      min-height: calc((620/375)*100vw);
    }

    .workstyle .workstyle-contents {
      display: block;
      padding-top: 30px;
    }

    .workstyle-contents p {
      margin-top: 0;
    }

    .workstyle .workstyle-contents ul {
      margin: 20px auto 40px;
      width: 90%;
    }

    .workstyle .workstyle-contents ul li+li {
      margin-top: calc((20/375) * 100vw);
    }

    .workstyle .com-btn-v01r {
      padding: calc((22/375) * 100vw) calc((45/375) * 100vw);
    }

    .sportclub-link a {
      width: calc((340/375) * 100vw);
    }
  }

  @media screen and (max-width: 320px) {
    .aboutus .section-heading {
      min-height: calc((1050 / 375)* 100vw);
    }

    .workstyle .section-heading  {
      background-size: cover;
      min-height: calc((680 / 375)* 100vw);
    }
    
  }

  .slider-txt li.none {
    display: none;
  }



