@media screen and (min-width: 768px) {
  .mv .mv-wrap:nth-of-type(1) .mv__txt,
  .mv .mv-wrap:nth-of-type(2) .mv__txt,
  .mv .mv-wrap:nth-of-type(3) .mv__txt {
    width: 100%;
    font-size: 2.7rem;
    text-align: center;
    line-height: 2.4rem;
    top: auto;
    bottom: 170px;
    left: auto;
    right: auto; }

  .mv .lang-btn__list.-active {
    bottom: 45px;
    background: rgba(0, 0, 0, 0.8); }

  .lang-btn .jp-link {
    width: 200px; }

  .about {
    padding-top: 370px; }

  .about-image__horizontal {
    position: absolute;
    top: -240px;
    left: 50%;
    width: 90%;
    font-size: 3rem;
    line-height: 5.5rem;
    letter-spacing: .1rem;
    text-align: center;
    margin: 0 0 0 -45%; }

  .about .sec-txt {
    font-size: 1.8rem;
    max-width: 900px;
    margin: 50px auto 0;
    padding: 50px;
    text-align: center;
    line-height: 2.5;
    letter-spacing: .1rem; }

  .facility {
    margin-top: 100px; }

  .facility {
    margin-top: 70px; }
    .facility .sec-ttl {
      position: relative;
      letter-spacing: .2rem;
      margin-top: 100px; }
    .facility .sec-ttl:before {
      content: "";
      position: absolute;
      top: 75px;
      left: 50%;
      width: 250px;
      height: 4px;
      background: #b09833;
      margin: 0 0 0 -125px; }
    .facility .sec-lead {
      margin-top: 100px;
      letter-spacing: .1em;
      line-height: 5.5rem; }
    .facility .sec-txt {
      margin-top: 20px; }
    .facility .sec-txt {
      font-size: 1.8rem;
      max-width: 900px;
      margin: 0 auto 0;
      padding: 50px;
      text-align: center;
      line-height: 2.5;
      letter-spacing: .1rem; }
    .facility .gallery {
      margin-top: 70px; }
    .facility .sketch {
      margin: 100px 0 0; }
      .facility .sketch dl {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        max-width: 420px;
        min-width: 350px;
        font-size: 1.5rem;
        padding: 0 0 0 40px; }
        .facility .sketch dl dt {
          width: 35%;
          text-align-last: auto;
          margin: 30px 0 0 0; }
        .facility .sketch dl dt:after {
          right: 0px;
          margin: 0 10px;
          top: 0px; }
        .facility .sketch dl dd {
          width: 65%;
          letter-spacing: .1rem; }

  .access {
    margin-top: 180px; }
    .access .sec-ttl {
      position: relative;
      letter-spacing: .2rem;
      margin-top: 100px; }
    .access .sec-ttl:before {
      content: "";
      position: absolute;
      top: 75px;
      left: 50%;
      width: 250px;
      height: 4px;
      background: #b09833;
      margin: 0 0 0 -125px; }
    .access .sec-lead {
      margin: 100px 0 0 0;
      letter-spacing: .1rem; }
    .access .sec-txt {
      font-size: 1.8rem;
      max-width: 900px;
      margin: 20px auto 0;
      padding: 10px;
      text-align: center;
      line-height: 2.0;
      letter-spacing: .1rem; }
    .access .gmap {
      margin-top: 120px; }
    .access .address {
      margin: 50px 0 0 0; }
    .access .address__ttl {
      font-size: 4rem;
      letter-spacing: .1rem; }
    .access .address__lead {
      font-size: 1.8rem;
      letter-spacing: .1rem; }
    .access .address__txt {
      font-size: 1.2rem;
      letter-spacing: .1rem; }
    .access .contact {
      margin: 40px auto 0;
      padding: 55px 10px; }
      .access .contact img {
        max-width: 470px; }

  .series .sec-ttl {
    position: relative;
    letter-spacing: .2rem;
    font-size: 3.5rem; }
  .series .sec-ttl:before {
    content: "";
    position: absolute;
    top: 65px;
    left: 50%;
    width: 300px;
    height: 4px;
    background: #b09833;
    margin: 0 0 0 -150px; }
  .series .series-link {
    margin-top: 120px; }
  .series .series-link__txt {
    font-size: 1.8rem;
    letter-spacing: .1rem; }
    .series .series-link__txt strong {
      font-size: 2.8rem;
      letter-spacing: .1rem; }

  .footer-copy .lang-btn__list.-active {
    display: block !important;
    background: #1a1a1a; } }
@media screen and (max-width: 767px) {
  .reserve-btn.-footer {
    position: unset; }

  .header-inner .logo {
    padding: 0 13% 0 0; }

  .reserve-btn {
    position: absolute;
    right: 180px; }

  .header-inner .inner {
    position: relative; }

  .reserve-btn.-white {
    position: absolute;
    right: 85px;
    margin: 0;
    padding: 3px 10px; }

  .header-inner .toggle {
    top: 8px; }

  .access-btn {
    margin-right: 33px; }

  .mv__txt {
    width: 90%;
    font-size: 1.2rem;
    line-height: 2.4rem; }

  .about-image__horizontal {
    position: absolute;
    top: -100px;
    left: 50%;
    width: 90%;
    font-size: 1.5rem;
    line-height: 3rem;
    letter-spacing: .1rem;
    text-align: center;
    margin: 0 0 0 -45%; }

  .sec-txt {
    text-align: center;
    font-size: 1.1rem;
    line-height: 2.5;
    letter-spacing: .5px;
    padding: 0 40px; }

  .facility {
    margin-top: 70px; }
    .facility .sec-ttl {
      position: relative;
      letter-spacing: .2rem; }
    .facility .sec-ttl:before {
      content: "";
      position: absolute;
      top: 40px;
      left: 50%;
      width: 124px;
      height: 2px;
      background: #b09833;
      margin: 0 0 0 -62px; }
    .facility .sec-lead {
      margin-top: 50px;
      letter-spacing: .1em;
      line-height: 3rem; }
    .facility .sec-txt {
      margin-top: 20px; }
    .facility .sketch {
      margin: 0; }
      .facility .sketch dl {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        max-width: 340px;
        font-size: 1rem;
        padding: 0 0 0 40px; }
        .facility .sketch dl dt {
          width: 30%;
          text-align-last: auto;
          margin: 30px 0 0 0; }
        .facility .sketch dl dt:after {
          right: 0px;
          margin: 0 10px;
          top: 0px; }
        .facility .sketch dl dd {
          width: 70%;
          letter-spacing: .1rem; }

  .access {
    margin-top: 70px; }
    .access .sec-ttl {
      position: relative;
      letter-spacing: .2rem; }
    .access .sec-ttl:before {
      content: "";
      position: absolute;
      top: 40px;
      left: 50%;
      width: 124px;
      height: 2px;
      background: #b09833;
      margin: 0 0 0 -62px; }
    .access .sec-lead {
      margin: 60px 0 0 0;
      letter-spacing: .1rem; }
    .access .sec-txt {
      margin: 20px 0 0 0;
      text-align: center; }
    .access .address {
      margin: 50px 0 0 0; }
    .access .address__ttl {
      font-size: 2rem;
      letter-spacing: .1rem; }
    .access .address__lead {
      font-size: 1.0rem;
      letter-spacing: .1rem; }
    .access .address__txt {
      font-size: 1.2rem; }
    .access .contact {
      margin: 40px auto 0;
      padding: 45px 10px; }
      .access .contact img {
        max-width: 200px; }

  .series {
    margin-top: 70px; }
    .series .sec-ttl {
      position: relative;
      letter-spacing: .2rem; }
    .series .sec-ttl:before {
      content: "";
      position: absolute;
      top: 40px;
      left: 50%;
      width: 150px;
      height: 2px;
      background: #b09833;
      margin: 0 0 0 -75px; }
    .series .series-link__txt {
      font-size: 1rem;
      letter-spacing: .1rem; }
      .series .series-link__txt strong {
        font-size: 2rem;
        letter-spacing: .1rem; } }
