@charset "UTF-8";
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  letter-spacing: 0.1em; }

ul {
  list-style-type: none; }

a {
  color: inherit;
  text-decoration: none; }

ul,
ol,
div {
  margin: 0;
  padding: 0; }

html {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
  color: #303030;
  font-size: 10px;
  -webkit-font-feature-settings: 'palt';
          font-feature-settings: 'palt';
  scroll-behavior: smooth; }
  @media screen and (max-width: 980px) {
    html {
      min-width: 980px; } }
  @media screen and (max-width: 767px) {
    html {
      min-width: 100%; } }

.overflow {
  overflow: hidden; }

.anchor {
  display: block;
  position: relative;
  top: -80px;
  visibility: hidden;
}
@media screen and (max-width: 767px) {
  .anchor {
    top: -60px; } }

span.autofill {
  background-color: #666261;
  color: #fff;
  font-size: 18px;
  cursor: pointer;
  padding: 8.5px 29.5px;
  margin-left: 10px; }
  @media screen and (max-width: 767px) {
    span.autofill {
      padding: 8.5px 10px;
      font-size: 16px; } }

/* stylelint-disable */
.img-o-cover {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: 'object-fit: cover; object-position: center;'; }

/* stylelint-enable */
.mobile-hide {
  display: block; }
  @media screen and (max-width: 767px) {
    .mobile-hide {
      display: none; } }

.mobile-show {
  display: none; }
  @media screen and (max-width: 767px) {
    .mobile-show {
      display: block; } }

.header {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 999; }
  .header__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0 0 0 20px;
    height: 100px;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    background: #fff; }
    @media screen and (max-width: 767px) {
      .header__container {
        padding: 10px 5%;
        height: 70px; } }
    @media screen and (max-width: 1360px) and (min-width: 768px) {
      .header__container {
        padding: 10px 5%;
        height: 70px; } }
  .header__logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media screen and (max-width: 767px) {
      .header__logo {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; } }
    .header__logo img {
      width: 80px;
      -webkit-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      @media screen and (max-width: 767px) {
        .header__logo img {
          width: 50px; } }
      @media screen and (max-width: 1360px) and (min-width: 768px) {
        .header__logo img {
          width: 50px; } }
  .header__logo-text {
    margin-left: 15px;
    font-size: 1.6rem;
    font-weight: 700;
    color: #666261;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    @media screen and (max-width: 767px) {
      .header__logo-text {
        font-size: 1.2rem;
        margin-left: 10px; } }
    @media screen and (max-width: 424px) and (min-width: 320px) {
      .header__logo-text {
        font-size: 1.1rem; } }
    @media screen and (max-width: 1360px) and (min-width: 768px) {
      .header__logo-text {
        font-size: 1.2rem;
        margin-left: 10px; } }
    @media screen and (max-width: 1490px) and (min-width: 981px) {
      .header__logo-text {
        font-size: 1.4rem; } }
    .header__logo-text p.large {
      font-size: 2rem;
      -webkit-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      @media screen and (max-width: 1490px) and (min-width: 981px) {
        .header__logo-text p.large {
          font-size: 1.8rem; } }
      @media screen and (max-width: 767px) {
        .header__logo-text p.large {
          font-size: 1.4rem; } }
      @media screen and (max-width: 1360px) and (min-width: 768px) {
        .header__logo-text p.large {
          font-size: 1.4rem; } }
  .header__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%; }
    @media screen and (max-width: 767px) {
      .header__list {
        display: none; } }
    @media screen and (max-width: 1360px) and (min-width: 768px) {
      .header__list {
        display: none; } }
  .header__container-sp {
    display: none; }
    @media screen and (max-width: 767px) {
      .header__container-sp {
        display: block;
        position: fixed;
        width: 80%;
        z-index: 99;
        top: 69px;
        right: 0;
        -webkit-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease; } }
    @media screen and (max-width: 1360px) and (min-width: 768px) {
      .header__container-sp {
        display: block;
        position: fixed;
        width: 80%;
        z-index: 99;
        top: 69px;
        right: 0;
        -webkit-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease; } }
  @media screen and (max-width: 767px) {
    .header__list-sp {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      position: absolute;
      width: 100%;
      top: 0;
      right: 0;
      padding: 0 6% 130px;
      background-color: #fff;
      -webkit-transform: translateX(100%);
          -ms-transform: translateX(100%);
              transform: translateX(100%);
      -webkit-transition: all 0.4s ease;
      -o-transition: all 0.4s ease;
      transition: all 0.4s ease; } }
  @media screen and (max-width: 1360px) and (min-width: 768px) {
    .header__list-sp {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      position: absolute;
      width: 100%;
      top: 0;
      right: 0;
      padding: 0 6% 130px;
      background-color: #fff;
      -webkit-transform: translateX(100%);
          -ms-transform: translateX(100%);
              transform: translateX(100%);
      -webkit-transition: all 0.4s ease;
      -o-transition: all 0.4s ease;
      transition: all 0.4s ease; } }
  .header__item {
    margin: 0 16px;
    height: 100%;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    overflow: hidden;
    -webkit-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease; }
    @media screen and (max-width: 767px) {
      .header__item {
        width: 100%;
        padding: 10px 9px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        border-bottom: 1px solid #666261;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        margin: 0 !important; } }
    @media screen and (max-width: 1360px) and (min-width: 768px) {
      .header__item {
        width: 100%;
        padding: 10px 9px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        border-bottom: 1px solid #666261;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        margin: 0 !important; } }
    @media screen and (max-width: 1620px) and (min-width: 981px) {
      .header__item {
        margin: 0 8px; } }
    .header__item:last-child {
      margin-right: 0; }
    .header__item::after {
      content: '';
      width: 100%;
      max-width: 0;
      height: 2px;
      background: #666261;
      position: absolute;
      bottom: 35px;
      left: 0;
      right: 0;
      margin: 0 auto;
      -webkit-transition: all 0.4s cubic-bezier(0.54, 0, 0.32, 0.99);
      -o-transition: all 0.4s cubic-bezier(0.54, 0, 0.32, 0.99);
      transition: all 0.4s cubic-bezier(0.54, 0, 0.32, 0.99); }
    .header__item:hover::after {
      max-width: 100%; }
  .header__link {
    font-size: 1.5rem;
    font-weight: 500;
    color: #666261; }
    @media screen and (max-width: 767px) {
      .header__link {
        font-size: 1.4rem; } }
    @media screen and (max-width: 1490px) and (min-width: 981px) {
      .header__link {
        font-size: 1.4rem; } }
    .header__item--contact {
      background: #000;
      padding: 0 20px;
      margin-left: 0;
      justify-content: center;
    }
    .header__item--line {
      background: #00B900;
      padding: 0 20px;
      margin-right: 0;
      justify-content: center;
    }
    .header__item--contact .header__link,
    .header__item--line .header__link {
      color: #fff;
      text-align: center;
    }
    .header__item--contact::after,
    .header__item--line::after {
      display: none;
    }
    .header__item--long .header__link {
      text-align: center;
    }
    @media screen and (max-width: 767px) {
      .header__item--contact,
      .header__item--line {
        width: 100%;
        padding: 10px 9px;
        margin: 0; } 
      .header__item::after {
        display: none;
      }}
    @media screen and (max-width: 1360px) and (min-width: 768px) {
      .header__item--contact,
      .header__item--line {
        width: 100%;
        padding: 10px 9px;
        margin: 0; }
      .header__item::after {
        display: none;
      } }

    .header__item--long::after {
      bottom: 20px;
    }
  .header__hamburger {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    display: none;
    z-index: 9999; }
    @media screen and (max-width: 767px) {
      .header__hamburger {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; } }
    @media screen and (max-width: 1360px) and (min-width: 768px) {
      .header__hamburger {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; } }
    .header__hamburger span {
      height: 2px;
      width: 30px;
      background: #333030;
      -webkit-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .header__hamburger span:not(:last-child) {
        margin-bottom: 6px; }
    .header__hamburger::after {
      content: 'OPEN';
      font-size: 1.4rem;
      text-align: center;
      font-weight: 500;
      font-family: "Montserrat", sans-serif;
      margin-top: 6px;
      -webkit-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease; }
  .header__submenu {
    position: absolute;
    left: -120px;
    top: 59px;
    width: 350px;
    max-height: 0;
    background-color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-transition: all 400ms ease;
    -o-transition: all 400ms ease;
    transition: all 400ms ease;
    overflow: hidden;
    opacity: 0;
    z-index: -1;
    padding: 0 50px;
    white-space: nowrap; }
    .header__submenu .header__link:not(:last-of-type) {
      margin-bottom: 10px; }
    .header__submenu.active {
      opacity: 1;
      z-index: 1;
      max-height: 230px;
      padding: 40px; }
  .header .js-header-hover {
    position: relative; }
    .header .js-header-hover:hover .header__submenu {
      opacity: 1;
      z-index: 1;
      max-height: 230px;
      padding: 40px; }
  .header--active .header__hamburger span {
    opacity: 1;
    -webkit-transform: rotate(45deg) translate(5px, 6px);
        -ms-transform: rotate(45deg) translate(5px, 6px);
            transform: rotate(45deg) translate(5px, 6px); }
    .header--active .header__hamburger span:nth-child(3) {
      -webkit-transform: rotate(-45deg) translate(5px, -6px);
          -ms-transform: rotate(-45deg) translate(5px, -6px);
              transform: rotate(-45deg) translate(5px, -6px); }
    .header--active .header__hamburger span:nth-child(2) {
      opacity: 0;
      -webkit-transform: rotate(0);
          -ms-transform: rotate(0);
              transform: rotate(0); }
  .header--active .header__hamburger::after {
    content: 'CLOSE'; }
  .header--active .header__container-sp {
    height: 100vh;
    overflow-y: scroll; }
    @media screen and (max-width: 1360px) and (min-width: 768px) {
      .header--active .header__container-sp {
        height: 100%; } }
  .header--active .header__list-sp {
    visibility: visible;
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0); }
  .header.top-active .header__container {
    background: #fff;
    height: 80px; }
    @media screen and (max-width: 767px) {
      .header.top-active .header__container {
        height: 70px; } }
    @media screen and (max-width: 1360px) and (min-width: 768px) {
      .header.top-active .header__container {
        height: 70px; } }
    .header.top-active .header__container .header__logo img {
      width: 70px; }
      @media screen and (max-width: 767px) {
        .header.top-active .header__container .header__logo img {
          width: 50px; } }
      @media screen and (max-width: 1360px) and (min-width: 768px) {
        .header.top-active .header__container .header__logo img {
          width: 50px; } }
    .header.top-active .header__container .header__logo-text {
      font-size: 1.2rem; }
      @media screen and (max-width: 767px) {
        .header.top-active .header__container .header__logo-text {
          font-size: 1.2rem;
          margin-left: 10px; } }
      .header.top-active .header__container .header__logo-text p.large {
        font-size: 1.7rem; }
        @media screen and (max-width: 767px) {
          .header.top-active .header__container .header__logo-text p.large {
            font-size: 1.4rem; } }
    .header.top-active .header__container .header__item::after {
      bottom: 5px; }
  .header__button {
    position: fixed;
    top: 50px;
    bottom: 0;
    right: 0;
    margin: auto 0;
    background: #666261;
    color: #fff;
    height: 180px;
    display: block;
    font-size: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-radius: 10px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    padding: 10px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    z-index: 11; }
    @media screen and (max-width: 767px) {
      .header__button {
        height: 100px;
        width: 50px;
        font-size: 1.4rem;
        padding: 7px 5px;
        top: auto;
        bottom: 130px; } }
    .header__button p {
      -webkit-text-orientation: upright;
              text-orientation: upright;
      -webkit-writing-mode: tb;
          -ms-writing-mode: tb;
              writing-mode: tb;
      line-height: 1.4; }

.footer {
  width: 100%;
  background-color: #e3e5e4; }
  .footer__title {
    padding-top: 60px;
    font-size: 3rem;
    color: #333030;
    font-weight: 700;
    text-align: center;
    margin-bottom: 60px; }
    @media screen and (max-width: 767px) {
      .footer__title {
        font-size: 1.8rem;
        padding-top: 30px;
        margin-bottom: 30px; } }
  .footer__nav {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 535px;
    margin: auto;
    padding-bottom: 100px; }
    @media screen and (max-width: 767px) {
      .footer__nav {
        width: 90%; } }
  .footer__nav-row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 1.6rem;
    color: #333030;
    font-weight: 500;
    line-height: 1.875em; }
    @media screen and (max-width: 767px) {
      .footer__nav-row {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
            -ms-flex-align: start;
                align-items: flex-start; } }
    .footer__nav-row:not(:last-of-type) {
      margin-bottom: 30px; }
    .footer__nav-row * {
      letter-spacing: 0; }
    .footer__nav-row.ai-start {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start; }
  .footer__nav-title {
    font-weight: 700;
    margin-right: 40px;
    width: 80px; }
  .footer .icon {
    position: relative; }
    .footer .icon::before {
      content: '';
      position: absolute;
      bottom: -5px;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      width: 0;
      height: 2px;
      background-color: #333030;
      border-radius: 5px;
      -webkit-transition: all 400ms ease;
      -o-transition: all 400ms ease;
      transition: all 400ms ease; }
    .footer .icon::after {
      content: url("./src/img/copy-icon.png");
      position: absolute;
      right: -30px;
      top: 0; }
    .footer .icon:hover::before {
      width: 100%; }
  .footer__copyright {
    padding: 20px 0;
    text-align: center;
    background-color: #666261;
    color: #fff;
    font-size: 1.2rem;
    line-height: 3.33333em;
    letter-spacing: 0;
    font-weight: 500; }

.banner {
  width: 100%;
  height: 120vh;
  max-height: 800px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 100px;
  position: relative; }
  @media screen and (max-width: 767px) {
    .banner {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: column-reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse;
      height: auto;
      margin-bottom: 0; } }
  .banner__col:first-of-type {
    width: 48%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media screen and (max-width: 767px) {
      .banner__col:first-of-type {
        width: 80%;
        max-width: 500px;
        margin: 0 auto 0; } }
  .banner__col.second {
    position: relative;
    overflow: hidden;
    width: 52.1%;
    border-bottom-left-radius: 40px; }
    @media screen and (max-width: 767px) {
      .banner__col.second {
        width: 270px;
        height: 360px;
        margin-top: 70px;
        overflow: visible;
        margin-left: auto; } }
     @media screen and (max-width: 424px) and (min-width: 320px) {
      .banner__col.second {
        width: 270px;
        height: 360px;
        margin-top: 70px; } }
    .banner__col.second img {
      height: 165%;
      position: absolute;
      object-position: left bottom;
      top: -55%; }
      @media screen and (max-width: 767px) {
        .banner__col.second img {
          height: 100%;
          position: static;
          border-bottom-left-radius: 40px;
          top: 20vw; } }
      @media screen and (max-width: 424px) and (min-width: 320px) {
      .banner__col.second img {
        position: static;
        border-bottom-left-radius: 40px;
        top: 20vw; } }
  .banner__text-container {
    width: 100%;
    height: 100%;
    padding: 15% 13.04% 0 16.3%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #666261; }
    @media screen and (max-width: 767px) {
      .banner__text-container {
        padding: 0; } }
    .banner__text-container h2 {
      font-size: 5rem;
      line-height: 1.66667em; }
      @media screen and (max-width: 767px) {
        .banner__text-container h2 {
          font-size: 30px;
          white-space: pre-wrap; } }
      @media screen and (max-width: 1180px) and (min-width: 768px) {
        .banner__text-container h2 {
          font-size: 3.4rem; } }
    .banner__subtext {
      font-size: 3.5rem;
      display: block;
    }
    @media screen and (max-width: 767px) {
      .banner__subtext {
        font-size: 20px;
      }
    }
    @media screen and (max-width: 1180px) and (min-width: 768px) {
      .banner__subtext {
        font-size: 25px;
      }
    }
    .banner__text-container ul {
      font-size: 2.1rem;
      letter-spacing: 0.04em;
      margin-top: 10px; }
      @media screen and (max-width: 767px) {
        .banner__text-container ul {
          font-size: 1.3rem; } }
      @media screen and (max-width: 424px) and (min-width: 320px) {
        .banner__text-container ul {
          font-size: 1.3rem; } }
      .banner__text-container ul li  {
        display: inline-flex;
      }
      .banner__text-container ul li::before  {
        content: '●';
        font-size: 1.6rem;
        display: inline-flex;
        margin-right: 10px;
      }
    .banner__button-container {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-top: 40px;
    }
    @media screen and (max-width: 767px) {
      .banner__button-container {
        margin-top: 20px; } }
    .banner__button-container a.button {
      width: 230px;
      height: 80px;
      margin: 0 5px;
      background-color: #333030;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      font-size: 1.8rem;
      color: #fff;
      -webkit-transition: all 300ms ease;
      -o-transition: all 300ms ease;
      transition: all 300ms ease; }
      @media screen and (max-width: 767px) {
        .banner__button-container {
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column;
        }
        .banner__button-container a.button {
          width: 100%;
          height: 80px;
          font-size: 1.4rem;
          margin: 5px 0; } }
      .banner__button-container a:hover {
        letter-spacing: 3px; }
    .banner__button-container a.button--line {
      background: #00B900;
    }

.one-seat {
  width: 100%;
  margin: 110px auto 100px;
  position: relative;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .one-seat {
      margin-top: 50px;
      margin-bottom: 50px; } }
  .one-seat__intro {
    color: #666261;
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.8125em;
    margin-bottom: 100px; }
    @media screen and (max-width: 767px) {
      .one-seat__intro {
        font-size: 15px;
        margin-bottom: 40px; } }
  .one-seat__image {
    width: 100%;
    height: 500px;
    max-width: 1200px;
    margin: auto;
    position: relative;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      .one-seat__image {
        width: 93%;
        max-width: 700px;
        height: 290px; } }
    .one-seat__image img {
      width: 100%;
      height: 180%;
      position: absolute;
      object-fit: contain;
      top: -40%;
      left: 0; }
      @media screen and (max-width: 767px) {
        .one-seat__image img {
          height: 150%;
          width: auto;
          object-fit: cover;
          top: 50%;
          left: 50%;
          -webkit-transform: translateY(-50%) translateX(-50%);
              -ms-transform: translateY(-50%) translateX(-50%);
                  transform: translateY(-49%) translateX(-47%); } }

.scroll-down {
  position: absolute;
  bottom: -170px;
  left: 20px;
  width: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  @media screen and (max-width: 767px) {
    .scroll-down {
      bottom: 30px;
      top: auto; } }
  .scroll-down__line {
    height: 150px;
    width: 2px;
    background-color: #e3e5e4;
    position: relative; }
  .scroll-down__sub {
    width: 2px;
    height: 20px;
    background-color: #666261;
    -webkit-animation: slideLineDown 1.5s ease-out forwards infinite;
            animation: slideLineDown 1.5s ease-out forwards infinite;
    position: absolute; }
  .scroll-down__text {
    font-family: "Montserrat", sans-serif;
    font-size: 2rem;
    font-weight: 500;
    color: #666261;
    letter-spacing: 0;
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
    width: 0; }

@-webkit-keyframes slideLineDown {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  to {
    -webkit-transform: translateY(130px);
            transform: translateY(130px); } }

@keyframes slideLineDown {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  to {
    -webkit-transform: translateY(130px);
            transform: translateY(130px); } }

.section__title, .section__subtitle {
  font-size: 2rem;
  font-weight: 500;
  color: #666261;
  letter-spacing: 0;
  line-height: 2em;
  position: relative;
  font-family: "Montserrat", sans-serif;
  padding-bottom: 10px;
  z-index: 1; }
  @media screen and (max-width: 767px) {
    .section__title, .section__subtitle {
      font-size: 1.8rem; } }
  .section__title::before, .section__subtitle::before {
    content: '';
    position: absolute;
    bottom: 0;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 50px;
    height: 2px;
    background-color: #666261; }
  .section__title strong, .section__subtitle strong {
    margin-top: 15px;
    font-size: 3rem;
    line-height: 1.73333em;
    font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
    font-weight: 700; }
    @media screen and (max-width: 767px) {
      .section__title strong, .section__subtitle strong {
        font-size: 2.4rem; } }

.section__title {
  text-align: center; }
  .section__title::before {
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }

.section__subtitle::before {
  left: 0;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0); }

.section__intro {
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
  color: #333030;
  letter-spacing: 0;
  line-height: 1.875em; }
.section__intro .red {
  color: red;
}

.section--bg-gray {
  width: 100%;
  background-color: #f1f2f1; }

.bg-strip {
  position: absolute; }
  .bg-strip--white {
    background-color: #fff; }
  .bg-strip--gray {
    background-color: #f7f7f7; }

.service {
  width: 100%;
  padding: 80px 0;
  position: relative;
  background-color: #f1f2f1; }
  @media screen and (max-width: 767px) {
    .service {
      padding: 40px 0; } }
  .service__list {
    max-width: 1100px;
    margin: 60px auto 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
    @media screen and (max-width: 767px) {
      .service__list {
        margin-top: 30px;
        width: 90%; } }
  .service__list-item {
    width: 23%;
    max-width: 300px;
    margin-bottom: 55px;
    margin-right: 28px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media screen and (max-width: 767px) {
      .service__list-item {
        margin-bottom: 50px;
        margin-right: 6%;
        width: 47%; } }
    .service__list-item:nth-of-type(4) {
      margin-right: 0;
      margin-bottom: -30px;
    }
    @media screen and (max-width: 767px) {
      .service__list-item:nth-of-type(4) {
        margin-bottom: 50px; }
      .service__list-item:nth-of-type(2n) {
        margin-right: 0; } }
    .service__list-item:last-of-type {
      margin-right: 0;
    }
  .service__list-icon {
    width: 150px;
    height: 150px;
    margin-bottom: 20px;
    border-radius: 50%;
    background-color: #fff;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .service__list-icon img {
      width: 40%;
    }
    @media screen and (max-width: 767px) {
      .service__list-icon {
        width: 100px;
        height: 100px; } }
    @media screen and (max-width: 767px) {
      .service__list-icon img {
        width: 40px; } }
  .service__list-description {
    text-align: center;
    font-size: 1.6rem;
    color: #333030;
    line-height: 1.66667em;
    letter-spacing: 0; }
    .service__list-description span {
      font-size: 13px;
      display: block;
    }
    @media screen and (max-width: 767px) {
      .service__list-description {
        font-size: 1.3rem; }
      .service__list-description span {
        font-size: 1.1rem; } }

.salon {
  width: 100%;
  margin: 45px auto;
  padding-top: 100px;
  position: relative; }
  @media screen and (max-width: 767px) {
    .salon {
      padding-top: 60px; } }
  .salon .section__subtitle {
    max-width: 1200px;
    margin: auto; }
    @media screen and (max-width: 767px) {
      .salon .section__subtitle {
        width: 90%; } }
  .salon .bg-strip--white {
    top: 0;
    left: 0;
    width: 78.13%;
    height: 500px; }
    @media screen and (max-width: 767px) {
      .salon .bg-strip--white {
        height: 350px; } }
  .salon__list {
    width: 100%;
    max-width: 1200px;
    margin: 60px auto 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    @media screen and (max-width: 767px) {
      .salon__list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        width: 90%;
        margin-top: 30px; } }
  .salon__list-item-image {
    width: 100%;
    height: 380px;
    position: relative;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      .salon__list-item-image {
        height: 50vw;
        max-height: 300px; } }
    .salon__list-item-image img {
      width: 100%;
      height: auto;
      position: absolute;
      top: -47px; }
      @media screen and (max-width: 767px) {
        .salon__list-item-image img {
          position: static; } }
  .salon__list-item {
    width: 47.5%; }
    @media screen and (max-width: 767px) {
      .salon__list-item {
        width: 75%;
        margin-top: 30px; } }
    @media screen and (max-width: 767px) {
      .salon__list-item:nth-of-type(odd) {
        margin-left: auto; } }
    .salon__list-item:nth-of-type(2n) {
      margin-top: 50px; }
    .salon__list-item:nth-of-type(2) {
      margin-top: 220px; }
    .salon__list-item:nth-of-type(3) {
      margin-top: -160px; }
    .salon__list-item:nth-of-type(5) {
      margin-top: -150px; }
      @media screen and (max-width: 767px) {
        .salon__list-item:nth-of-type(2n),
        .salon__list-item:nth-of-type(2),
        .salon__list-item:nth-of-type(3),
        .salon__list-item:nth-of-type(5) {
          margin-top: 30px; } }
    .salon__list-item:last-of-type .salon__list-item-image img {
      top: -28px; }
  .salon__list-item-description {
    width: 100%;
    background-color: #666261;
    color: #fff;
    padding: 20px;
    min-height: 80px;
    font-size: 1.6rem;
    letter-spacing: 0;
    line-height: 1.3125em; }
    @media screen and (max-width: 767px) {
      .salon__list-item-description {
        position: relative;
        z-index: 1; } }
    .salon__list-item-description ul li {
      display: inline-flex;
    }
    .salon__list-item-description ul li::before {
      content: '●';
      display: inline-flex;
      font-size: 1.4rem;
      margin-right: 10px;
    }

.case {
  width: 78.13%;
  background-color: #fff;
  margin: auto;
  padding: 60px 10% 100px; }
  @media screen and (max-width: 767px) {
    .case {
      width: 90%;
      padding: 40px 7.5% 60px; } }
  .case .section__intro {
    margin-top: 55px; }
    @media screen and (max-width: 767px) {
      .case .section__intro {
        text-align: start; } }
  .case__list {
    margin-top: 60px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    @media screen and (max-width: 767px) {
      .case__list {
        margin-top: 30px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
  .case__list-item {
    width: 47.5%; }
    @media screen and (max-width: 767px) {
      .case__list-item {
        width: 100%; } }
    @media screen and (max-width: 767px) {
      .case__list-item:first-of-type {
        margin-bottom: 30px; } }
  .case__list-item-title {
    position: relative;
    font-size: 2rem;
    font-family: "Montserrat", sans-serif;
    color: #666261;
    line-height: 2em;
    letter-spacing: 0;
    font-weight: 500;
    text-align: center; }
    .case__list-item-title::before, .case__list-item-title::after {
      content: '';
      position: absolute;
      left: 0;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 35.1%;
      height: 2px;
      background-color: #666261; }
    .case__list-item-title::after {
      left: auto;
      right: 0; }
  .case__list-item-image {
    margin-top: 45px;
    width: 100%;
    position: relative;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      .case__list-item-image {
        margin-top: 20px; } }
    .case__list-item-image img {
      width: 100%;
      height: auto; }

.cost {
  width: 100%;
  padding-top: 100px;
  /* stylelint-disable */
  /* stylelint-enable */ }
  @media screen and (max-width: 767px) {
    .cost {
      padding-top: 50px; } }
  .cost__intro {
    max-width: 1200px;
    margin: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media screen and (max-width: 767px) {
      .cost__intro {
        width: 76%;
        margin: auto;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
  .cost__col {
    width: 45%; }
    @media screen and (max-width: 767px) {
      .cost__col {
        width: 100%; } }
    .cost__col:first-of-type {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      @media screen and (max-width: 767px) {
        .cost__col:first-of-type {
          -webkit-box-pack: center;
          -webkit-justify-content: center;
              -ms-flex-pack: center;
                  justify-content: center;
          margin-bottom: 20px; } }
  .cost__image {
    width: 46.3%;
    height: 400px;
    position: relative;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      .cost__image {
        height: 250px;
        max-width: 150px; } }
    .cost__image:last-of-type {
      margin-top: 50px; }
      @media screen and (max-width: 767px) {
        .cost__image:last-of-type {
          margin-left: 30px; } }
    .cost__image img {
      width: 100%;
      height: 100%; }
  .cost__message {
    margin-top: 45px;
    font-size: 1.8rem;
    line-height: 1.66667em;
    letter-spacing: 0;
    font-weight: 500;
    color: #333030; }
    @media screen and (max-width: 767px) {
      .cost__message {
        margin-top: 20px; } }
    .cost__message b {
      font-size: 6rem;
      letter-spacing: 0; }
  .cost__text {
    font-size: 1.6rem;
    line-height: 1.875em;
    letter-spacing: 0;
    color: #333030;
    margin-top: 40px; }
    @media screen and (max-width: 767px) {
      .cost__text {
        margin-top: 20px; } }
    .cost__text.border {
      font-weight: 700px;
      padding: 20px;
      border: 1px solid #666261;
    }
    @media screen and (max-width: 767px) {
      .cost__text.border {
        padding: 10px; } }
  .cost__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 100%;
    margin-top: 120px; }
    @media screen and (max-width: 767px) {
      .cost__list {
        margin-top: 50px; } }
  .cost__list-row {
    max-width: 1200px;
    margin: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media screen and (max-width: 767px) {
      .cost__list-row {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: column-reverse;
            -ms-flex-direction: column-reverse;
                flex-direction: column-reverse; } }
  .cost__list-image {
    width: 100%;
    height: 325px;
    position: relative;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      .cost__list-image {
        height: auto; } }
    .cost__list-image img {
      width: 100%;
      height: auto; }
  .cost__list-item {
    width: 100%;
    position: relative; }
    .cost__list-item::before {
      content: '';
      position: absolute; }
    .cost__list-item:nth-of-type(2) {
      margin: 200px 0; }
      @media screen and (max-width: 767px) {
        .cost__list-item:nth-of-type(2) {
          margin: 10px 0; } }
      .cost__list-item:nth-of-type(2)::before {
        left: 0;
        bottom: -50px;
        width: 78.13%;
        height: 300px;
        background-color: #f7f7f7; }
        @media screen and (max-width: 767px) {
          .cost__list-item:nth-of-type(2)::before {
            display: none; } }
    .cost__list-item:nth-of-type(odd)::before {
      right: 0;
      bottom: -5px;
      width: 78.13%;
      height: 300px;
      background-color: #f7f7f7; }
      @media screen and (max-width: 767px) {
        .cost__list-item:nth-of-type(odd)::before {
          display: none; } }
    @media screen and (max-width: 767px) {
      .cost__list-item:nth-of-type(odd) .cost__list-col:nth-of-type(2)::before {
        left: auto;
        right: 0; } }
    .cost__list-item:nth-of-type(odd) .cost__list-row {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: row-reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; }
      @media screen and (max-width: 767px) {
        .cost__list-item:nth-of-type(odd) .cost__list-row {
          -webkit-box-orient: vertical;
          -webkit-box-direction: reverse;
          -webkit-flex-direction: column-reverse;
              -ms-flex-direction: column-reverse;
                  flex-direction: column-reverse; } }
    .cost__list-item:nth-of-type(odd) .cost__list-image img {
      width: 114%;
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%); }
      @media screen and (max-width: 767px) {
        .cost__list-item:nth-of-type(odd) .cost__list-image img {
          position: static;
          -webkit-transform: translate(0);
              -ms-transform: translate(0);
                  transform: translate(0); } }
  .cost__list-col {
    width: 45%; }
    @media screen and (max-width: 767px) {
      .cost__list-col {
        width: 100%; } }
    @media screen and (max-width: 767px) {
      .cost__list-col:first-of-type {
        padding: 40px 12%;
        position: relative; }
        .cost__list-col:first-of-type::before {
          content: '';
          position: absolute;
          top: -5px;
          left: 0;
          width: 92%;
          height: 200px;
          background-color: #f7f7f7;
          z-index: -1; } }
  .cost__list-item-title {
    font-size: 3rem;
    font-weight: 700;
    color: #666261;
    line-height: 1.73333em;
    margin-bottom: 50px; }
    @media screen and (max-width: 767px) {
      .cost__list-item-title {
        font-size: 2.4rem;
        margin-bottom: 20px; } }
  .cost__list-item-details {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    font-size: 1.6rem;
    letter-spacing: 0;
    line-height: 1.75em;
    font-weight: 500;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    .cost__list-item-details p {
      position: relative;
    }
    .cost__list-item-details li {
      padding-left: 20px;
      font-size: 1.6rem;
      color: #333030;
      letter-spacing: 0;
      line-height: 1.75em;
      font-weight: 500;
      position: relative; }
      .cost__list-item-details li:not(:last-of-type) {
        margin-bottom: 30px; }
        @media screen and (max-width: 767px) {
          .cost__list-item-details li:not(:last-of-type) {
            margin-bottom: 15px; } }
      .cost__list-item-details li::before {
        content: '✓';
        position: absolute;
        left: 0;
        top: 0;
        font-size: 1.6rem;
        color: #333030; }

.voice {
  width: 100%;
  max-width: 1200px;
  margin: 115px auto 120px; }
  @media screen and (max-width: 767px) {
    .voice {
      width: 88%;
      margin: 50px auto; } }
  .voice__list {
    margin-top: 60px; }
  .voice__salon {
    width: 100%;
    height: 100px;
    background-color: #666261;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    text-align: center;
    position: relative;
    padding: 30px; }
    .voice__salon .wrap {
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
    }
    .voice__salon::before {
      content: '';
      width: 25px;
      height: 3px;
      background: #fff;
      position: absolute;
      right: 20px;
      top: 0;
      bottom: 0;
      margin: auto 0;
      border-radius: 5px;
    }
    .voice__salon::after {
      content: '';
      height: 25px;
      width: 3px;
      background: #fff;
      position: absolute;
      right: 30px;
      top: 0;
      bottom: 0;
      margin: auto 0;
      border-radius: 5px;
      transition: all 0.3s ease;
    }
  .voice__salon-button {
    display: none;
  }
    @media screen and (max-width: 767px) {
      .voice__salon {
        width: 100%;
        height: auto;
        padding: 3%;
        padding-right: 30px;
        position: relative; }
      .voice__salon::after {
        right: 20px; }
      .voice__salon::before {
        right: 9px; } 
      .voice__salon .wrap {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
        margin-left: 10px;
      }
      .voice__salon img {
        width: 40px;
      }
      .voice__salon--active::after {
        content: '';
        border-width: 0 7.5px 10px 7.5px;
        border-color: transparent transparent #fff transparent; }
      .voice__salon-wrap {
        display: none;
      }
      .voice__salon-wrap--active {
        display: block;
      }
      .voice__salon-button {
        color: #fff;
        display: block;
        width: 170px;
        margin: 0 auto;
        text-align: center;
        background: #303030;
        padding: 12px 15px 20px;
        border-radius: 10px;
        font-size: 1.6rem;
        font-weight: 700;
        margin-bottom: 30px;
        position: relative;
      }
      .voice__salon-button::after {
        content: '';
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 8px 6px 0 6px;
        border-color: #fff transparent transparent transparent;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 8px;
        margin: 0 auto;
        transition: all 0.3s ease;
      }
      .voice__salon-button.active::after {
        content: '';
        border-width: 0 7.5px 10px 7.5px;
        border-color: transparent transparent #fff transparent;
      } }
  .voice__salon-branch {
    font-size: 1.8rem;
    font-weight: 700;
    color: #fff;
    margin: 0 25px;
    letter-spacing: 0; }
    @media screen and (max-width: 767px) {
      .voice__salon-branch {
        margin: 0 0 5px 0;
      font-size: 1.4rem; } }
  .voice__salon-description {
    font-size: 1.5rem;
    font-weight: 500;
    color: #fff;
    line-height: 1.6em;
    letter-spacing: 0; }
    @media screen and (max-width: 767px) {
      .voice__salon-description {
      font-size: 1.3rem; } }
  .voice__salon-details {
    width: 100%;
    opacity: 0;
    visibility: hidden;
    max-height: 0;
    -webkit-transition: all ease 500ms;
    -o-transition: all ease 500ms;
    transition: all ease 500ms;
    margin-left: 40px; }
    @media screen and (max-width: 767px) {
      .voice__salon-details {
        width: 100%;
        margin-left: 0;
        padding: 0;
        transition: all 0.3s ease; } 
      .voice__salon-details--active {
        opacity: 1;
        max-height: 300px;
        visibility: visible; } }
    
  .voice__salon-detail:not(:last-of-type) {
    margin-bottom: 40px; }
    @media screen and (max-width: 767px) {
      .voice__salon-detail:not(:last-of-type) {
        margin-bottom: 20px; } }
  .voice__salon-detail-title {
    font-size: 1.8rem;
    color: #666261;
    font-weight: 700;
    letter-spacing: 0;
    padding-left: 50px;
    position: relative; }
    @media screen and (max-width: 767px) {
      .voice__salon-detail-title {
        padding-left: 40px;
        font-size: 1.6rem; } }
    .voice__salon-detail-title::before {
      content: url("./src/img/voice-q-icon.png");
      position: absolute;
      left: 0;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      height: 30px; }
  .voice__salon-detail-text {
    font-size: 1.6rem;
    font-weight: 500;
    color: #333030;
    line-height: 1.3125em;
    margin-top: 30px;
     }
  .voice__list-item {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; }
    @media screen and (max-width: 767px) {
      .voice__list-item {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
    .voice__list-item:not(:last-of-type) {
      margin-bottom: 60px; }
      @media screen and (max-width: 767px) {
        .voice__list-item:not(:last-of-type) {
          margin-bottom: 25px; } }
    .voice__list-item:nth-of-type(2n) .voice__salon {
      background-color: #e3e5e4; }
    .voice__list-item:nth-of-type(2n) .voice__salon-branch {
      color: #666261; }
    .voice__list-item:nth-of-type(2n) .voice__salon-description {
      color: #333030; }
    .voice__list-item:nth-of-type(2n) .voice__salon::before,
    .voice__list-item:nth-of-type(2n) .voice__salon::after {
      background: #666261; }

.flow {
  width: 100%;
  margin: auto;
  padding: 60px 0 100px;
  /* stylelint-disable */
  /* stylelint-enable */ }
  @media screen and (max-width: 767px) {
    .flow {
      padding: 30px 0; } }
  .flow__list {
    width: 100%;
    max-width: 1200px;
    margin: 60px auto 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    @media screen and (max-width: 767px) {
      .flow__list {
        width: 90%; } }
  .flow__list-count {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 20px 0; }
    @media screen and (max-width: 767px) {
      .flow__list-count {
        margin: 10px 0; } }
  .flow__list-number {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border: 1px solid #666261;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 1.8rem;
    color: #666261;
    letter-spacing: 0;
    font-family: "Montserrat", sans-serif;
    margin-right: 20px; }
    @media screen and (max-width: 767px) {
      .flow__list-number {
        width: 40px;
        height: 40px;
        font-size: 1.4rem;
        margin-right: 10px; } }
  .flow__list-title {
    font-size: 2.4rem;
    font-weight: 700;
    color: #666261;
    line-height: 1.75em; }
    @media screen and (max-width: 767px) {
      .flow__list-title {
        font-size: 1.6rem; } }
  .flow__list-detail {
    font-size: 1.6rem;
    line-height: 1.875em;
    color: #333030;
    letter-spacing: 0; }
  .flow__list-image {
    width: 100%;
    position: relative;
    overflow: hidden; }
    @media screen and (max-width: 767px) and (orientation: landscape) {
      .flow__list-image {
        max-height: 215px; } }
    .flow__list-image img {
      width: 100%;
      height: auto; }
      @media screen and (max-width: 767px) {
        .flow__list-image img {
          max-height: 110px;
          max-width: 170px; } }
      @media screen and (max-width: 767px) and (orientation: landscape) {
        .flow__list-image img {
          max-width: 100%;
          max-height: 100%; } }
  .flow__link {
    width: 300px;
    height: 100px;
    background-color: #333030;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff;
    font-size: 2rem;
    letter-spacing: 0.04em;
    font-weight: 700;
    -webkit-transition: all 400ms ease;
    -o-transition: all 400ms ease;
    transition: all 400ms ease; }
    @media screen and (max-width: 767px) {
      .flow__link {
        width: 100%;
        max-width: 300px;
        height: 50px;
        font-size: 1.4rem; } }
    @media screen and (max-width: 767px) and (orientation: landscape) {
      .flow__link {
        max-width: 100%; } }
    .flow__link:hover {
      opacity: 0.6; }
  .flow__list-item {
    width: 31.67%;
    margin-bottom: 100px; }
    @media screen and (max-width: 767px) {
      .flow__list-item {
        margin-bottom: 50px;
        width: 49.25%; } }
    .flow__list-item--first, .flow__list-item--last {
      width: 100%;
      height: 380px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      @media screen and (max-width: 767px) {
        .flow__list-item--first, .flow__list-item--last {
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column;
          height: auto; } }
      .flow__list-item--first .flow__list-image, .flow__list-item--last .flow__list-image {
        width: 47.5%; }
        @media screen and (max-width: 767px) {
          .flow__list-item--first .flow__list-image, .flow__list-item--last .flow__list-image {
            width: 100%; } }
        @media screen and (max-width: 767px) and (orientation: landscape) {
          .flow__list-item--first .flow__list-image, .flow__list-item--last .flow__list-image {
            max-height: 100%; } }
        @media screen and (max-width: 767px) {
          .flow__list-item--first .flow__list-image img, .flow__list-item--last .flow__list-image img {
            max-width: 100%;
            max-height: 100%; } }
      .flow__list-item--first .flow__list-count, .flow__list-item--last .flow__list-count {
        margin: 0; }
      .flow__list-item--first .flow__list-details, .flow__list-item--last .flow__list-details {
        width: 52.5%;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column;
        background-color: #fff;
        padding: 30px 100px 10px; }
        @media screen and (max-width: 767px) {
          .flow__list-item--first .flow__list-details, .flow__list-item--last .flow__list-details {
            width: 100%;
            padding: 30px 7%; } }
      .flow__list-item--first .flow__list-detail, .flow__list-item--last .flow__list-detail {
        margin: 40px 0; }
        @media screen and (max-width: 767px) {
          .flow__list-item--first .flow__list-detail, .flow__list-item--last .flow__list-detail {
            margin: 15px 0; } }
    .flow__list-item--last {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: row-reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse;
      margin-bottom: 0; }
      @media screen and (max-width: 767px) {
        .flow__list-item--last {
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -webkit-flex-direction: column;
              -ms-flex-direction: column;
                  flex-direction: column; } }
      .flow__list-item--last .flow__list-details {
        padding: 0;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        background-color: #666261; }
        @media screen and (max-width: 767px) {
          .flow__list-item--last .flow__list-details {
            padding: 40px 0; } }
      .flow__list-item--last .flow__list-number {
        border: 1px solid #fff;
        color: #fff; }
      .flow__list-item--last .flow__list-title {
        color: #fff; }
  .flow__message {
    width: 100%;
    position: relative;
    height: 340px; }
    @media screen and (max-width: 767px) {
      .flow__message {
        height: auto; } }
    .flow__message::after {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      width: 81.25%;
      min-width: 1560px;
      height: 100%;
      background-color: #fff; }
      @media screen and (max-width: 767px) {
        .flow__message::after {
          width: 95%;
          min-width: auto; } }
  .flow__message-content {
    width: 100%;
    height: 100%;
    max-width: 1200px;
    margin: 140px auto 0;
    padding: 0 60px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    z-index: 1; }
    @media screen and (max-width: 767px) {
      .flow__message-content {
        max-width: 90%;
        margin: 50px auto 0;
        padding: 20px 7.5%; } }
  .flow__message-text-container {
    height: 100%;
    width: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-left: 20px;
    position: relative;
    max-width: 560px; }
  .flow__message-text {
    font-size: 1.6rem;
    color: #333030;
    font-weight: 500;
    line-height: 1.75em;
    letter-spacing: 0;
    position: relative; }
    .flow__message-text:first-of-type {
      margin-bottom: 30px; }
    .flow__message-text::before {
      content: '✓';
      position: absolute;
      left: -20px;
      top: 0; }
    .flow__message-text span {
      font-size: 1.4rem;
      line-height: 2em;
      letter-spacing: 0; }
  .flow__message-image {
    position: relative;
    overflow: hidden;
    padding-top: 40px; }
    @media screen and (max-width: 767px) {
      .flow__message-image {
        position: absolute;
        bottom: 0;
        right: 0;
        z-index: -1; } }
    .flow__message-image img {
      margin-bottom: -5px; }
      @media screen and (max-width: 767px) {
        .flow__message-image img {
          width: 150px; } }

.faq {
  padding-top: 60px; }
  @media screen and (max-width: 767px) {
    .faq {
      padding-top: 40px; } }
  .faq__container {
    max-width: 1000px;
    margin: 0 auto;
    width: 100%; }
    @media screen and (max-width: 767px) {
      .faq__container {
        max-width: 100%;
        padding: 0 6%; } }
  .faq__question, .faq__answer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 15px 10px;
    padding-left: 50px; }
    @media screen and (max-width: 767px) {
      .faq__question, .faq__answer {
        padding-left: 40px;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start; } }
  .faq__question-icon, .faq__answer-icon {
    margin: 5px 20px 0 0;
    width: 24px;
    height: 24px; }
    @media screen and (max-width: 767px) {
      .faq__question-icon, .faq__answer-icon {
        margin: 4px 15px 0 0; } }
  .faq__item {
    border-bottom: 1px solid #666261; }
  .faq__item:first-of-type {
    margin-top: 30px; }
  .faq__question {
    position: relative;
    cursor: pointer; }
    .faq__question::before {
      content: '';
      width: 30px;
      height: 30px;
      background: url("./src/img/icon-maximize.png") no-repeat;
      background-size: contain;
      position: absolute;
      top: 50%;
      left: 10px;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%); }
      @media screen and (max-width: 767px) {
        .faq__question::before {
          top: 35%;
          width: 20px;
          height: 20px;
          -webkit-transform: translateY(0);
              -ms-transform: translateY(0);
                  transform: translateY(0); } }
    .faq__question.question-active::before {
      background: url("./src/img/icon-minimize.png") no-repeat;
      background-size: contain; }
    .voice__salon.question-active::after {
      transform: rotate(90deg); }
  .faq__question-text {
    font-size: 20px;
    font-weight: 500;
    color: #666261; }
    @media screen and (max-width: 767px) {
      .faq__question-text {
        font-size: 15px;
        width: 100%; } }
  .faq__answer {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    opacity: 0;
    visibility: hidden;
    max-height: 0;
    display: flex;
    padding: 0 10px;
    -webkit-transition: all ease 500ms;
    -o-transition: all ease 500ms;
    transition: all ease 500ms; }
    .faq__answer.answer-active {
      opacity: 1;
      padding: 5px 10px 15px;
      visibility: visible;
      max-height: 300px; }
    .voice__salon-details.answer-active {
      opacity: 1;
      padding: 0;
      visibility: visible;
      max-height: 300px;
      margin-left: 0;
      padding: 0 20px;
    }
    @media screen and (max-width: 767px) {
      .voice__salon-details.answer-active {
        opacity: 1;
        padding: 0;
        visibility: visible;
        max-height: 700px;
        margin-left: 0;
        padding: 0 20px;
      }
    }
  .faq__answer-text {
    font-size: 16px;
    font-weight: 500;
    line-height: 40px;
    width: 100%; }
    .faq__answer-text span.red {
      color: #f90000;
      font-weight: 700;
    }
    @media screen and (max-width: 767px) {
      .faq__answer-text {
        font-size: 16px;
        width: 100%;
        line-height: 30px; } }
  .faq__text-wrapper {
    margin-top: 100px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .faq__text-wrapper {
        margin-top: 50px; } }
    .faq__text-wrapper p {
      font-size: 18px;
      font-weight: 500;
      line-height: 40px; }
      @media screen and (max-width: 767px) {
        .faq__text-wrapper p {
          font-size: 16px;
          line-height: 30px; } }

.contact {
  width: 100%;
  max-width: 1000px;
  margin: auto;
  padding: 100px 0;
  font-size: 1.8rem;
  /* stylelint-disable */
  /* stylelint-enable */ }
  @media screen and (max-width: 767px) {
    .contact {
      padding: 50px 0;
      width: 90%; } }
  .contact .section__intro {
    font-size: 1.8rem;
    line-height: 1.66667em;
    margin-top: 60px; }
  .contact__steps-container {
    max-width: 750px;
    margin: 60px auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: relative; }
    @media screen and (max-width: 767px) {
      .contact__steps-container {
        margin: 30px auto; } }
    .contact__steps-container::before, .contact__steps-container::after {
      content: '';
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 150px;
      height: 3px;
      background-color: #b3b3b3; }
      @media screen and (max-width: 767px) {
        .contact__steps-container::before, .contact__steps-container::after {
          width: 12%; } }
    .contact__steps-container::before {
      left: 133px; }
      @media screen and (max-width: 767px) {
        .contact__steps-container::before {
          left: 25%; } }
    .contact__steps-container::after {
      right: 133px; }
      @media screen and (max-width: 767px) {
        .contact__steps-container::after {
          right: 25%; } }
  .contact__step-number {
    font-size: 1.6rem;
    font-family: "Montserrat", sans-serif;
    color: #333030;
    letter-spacing: 0.06em;
    line-height: 1.75em; }
    @media screen and (max-width: 767px) {
      .contact__step-number {
        font-size: 1.4rem; } }
  .contact__step-title {
    font-size: 1.7rem;
    color: #333030;
    letter-spacing: 0.01em;
    font-weight: 700;
    text-align: center;
    line-height: 2.35294em; }
    @media screen and (max-width: 767px) {
      .contact__step-title {
        font-size: 1.5rem; } }
  .contact__step {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: space-evenly;
    -webkit-justify-content: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    color: #fff;
    border: 1px solid #333030; }
    @media screen and (max-width: 767px) {
      .contact__step {
        width: 65px;
        height: 65px; } }
    .contact__step.active {
      background-color: #333030; }
      .contact__step.active span {
        color: #fff; }
      .contact__step.active p {
        color: #fff; }
    .contact__step:nth-of-type(2) .contact__step-title {
      line-height: 1.17647em; }
  .contact__form-row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 30px 105px;
    border-bottom: 1px solid #9a9b9b; }
    @media screen and (max-width: 767px) {
      .contact__form-row {
        padding: 15px 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
    .contact__form-row.ai-start {
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start; }
  .contact__form-label-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 200px;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media screen and (max-width: 767px) {
      .contact__form-label-container {
        width: 100%;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start; } }
  .contact__form-label {
    font-size: 1.8rem;
    font-weight: 500;
    color: #333030;
    line-height: 2.22222em; }
    @media screen and (max-width: 767px) {
      .contact__form-label {
        margin-right: 30px; } }
  .contact__form-require {
    font-size: 1.3rem;
    font-weight: 700;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: #d60505;
    color: #fff;
    width: 40px;
    height: 20px; }
  .contact__form-input-container {
    width: 500px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media screen and (max-width: 767px) {
      .contact__form-input-container {
        width: 100%; } }
    .contact__form-input-container input[type="text"] {
      width: 100%;
      border: 1px solid #666261;
      color: #666261;
      padding: 10px 15px;
      font-size: 1.8rem;
      font-weight: 700;
      letter-spacing: 0.05em; }
      @media screen and (max-width: 767px) {
        .contact__form-input-container input[type="text"] {
          font-size: 1.6rem; } 
          .contact__form-input-container input#zipcode {
            width: 150px; }}
      .contact__form-input-container input[type="text"]::-webkit-input-placeholder {
        color: #9a9b9b; }
      .contact__form-input-container input[type="text"]:-ms-input-placeholder {
        color: #9a9b9b; }
      .contact__form-input-container input[type="text"]::-ms-input-placeholder {
        color: #9a9b9b; }
      .contact__form-input-container input[type="text"]::placeholder {
        color: #9a9b9b; }
    .contact__form-input-container--half input[type="text"] {
      width: 250px; }
    .contact__form-input-container.row {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .contact__form-input-container textarea {
      width: 100%;
      height: 160px;
      padding: 10px;
      font-size: 1.8rem;
      line-height: 1.72222em;
      color: #666261;
      border: 1px solid #666261; }
  .contact__form-input-hint {
    margin-top: 10px;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.75em;
    color: #808080; }
  .contact__form-radio {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-right: 40px; }
    .contact__form-radio span {
      font-size: 1.8rem;
      font-weight: 500;
      line-height: 2.22222em;
      letter-spacing: 0.05em;
      color: #333030;
      margin-left: 10px;
      position: relative; }
      .contact__form-radio span::before {
        content: '';
        position: absolute;
        top: 50%;
        left: -25px;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%);
        width: 15px;
        height: 15px;
        border: 1px solid #666261;
        border-radius: 50%; }
      .contact__form-radio span::after {
        content: '';
        position: absolute;
        left: -22px;
        top: 50%;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%);
        width: 9px;
        height: 9px;
        background-color: #666261;
        border-radius: 50%;
        -webkit-transition: all 400ms ease;
        -o-transition: all 400ms ease;
        transition: all 400ms ease;
        opacity: 0; }
    .contact__form-radio input {
      opacity: 0; }
      .contact__form-radio input:checked ~ span::after {
        opacity: 1; }
  .contact .contact__form-input-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    .contact .contact__form-input-wrapper:not(:last-of-type) {
      margin-bottom: 20px; }
    .contact .contact__form-input-wrapper.checkbox-wrapper {
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-bottom: 0;
    }
    .contact .contact__form-input-wrapper.checkbox-wrapper span.mwform-checkbox-field {
      margin-right: 15px;
      margin: 5px 10px !important;
      font-size: 1.6rem;
    }
    .contact .contact__form-input-wrapper.select-wrapper {
      width: 260px;
      height: 40px;
      position: relative; }
    .contact .contact__form-input-wrapper.hide {
      display: none;
    margin-top: 0; }
    .contact .contact__form-input-wrapper.js-selectItem,
    .contact .contact__form-input-wrapper.js-selectItem2 {
    margin-top: 20px; }
    .contact .contact__form-input-wrapper.contact__form-input-wrapper--long.select-wrapper {
      width: 500px;
      height: 40px;
      margin-bottom: 0;
      position: relative; }
      @media screen and (max-width: 767px) {
        .contact .contact__form-input-wrapper.contact__form-input-wrapper--long.select-wrapper {
          width: 100%;}
      }
      .contact .contact__form-input-wrapper.select-wrapper::after {
        content: '';
        position: absolute;
        top: 50%;
        right: 15px;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%);
        border-style: solid;
        border-width: 10px 7px 0 7px;
        border-color: #333030 transparent transparent transparent; }
      .contact .contact__form-input-wrapper.select-wrapper select {
        width: 100%;
        height: 100%;
        -webkit-appearance: none;
        border: 1px solid #666261;
        font-size: 1.8rem;
        padding: 10px; }
        @media screen and (max-width: 767px) {
          .contact .contact__form-input-wrapper.select-wrapper select {
            font-size: 1.4rem; } }
  .contact .js-postal-search {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    .contact .js-postal-search input[type="text"] {
      width: 260px;
      margin-right: 10px; }
    .contact .js-postal-search button {
      width: 130px;
      height: 40px;
      display: -webkit-inline-box;
      display: -webkit-inline-flex;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      font-size: 1.8rem;
      line-height: 1.72222em;
      letter-spacing: 0.05em;
      color: #fff;
      font-weight: 700;
      border: 0;
      background-color: #666261;
      cursor: pointer;
      -webkit-transition: all 400ms ease;
      -o-transition: all 400ms ease;
      transition: all 400ms ease; }
      @media screen and (max-width: 767px) {
        .contact .js-postal-search button {
          margin: 10px 0; } }
      .contact .js-postal-search button:hover {
        opacity: 0.6; }
  .contact__form-message {
    margin-top: 40px;
    width: 100%;
    padding: 20px 25px;
    height: 170px;
    overflow-y: scroll;
    border: 1px solid #666261; }
    @media screen and (max-width: 767px) {
      .contact__form-message {
        width: 100%;
        padding: 15px; } }
  .contact__form-message-title {
    font-size: 1.6rem;
    color: #333030;
    letter-spacing: 0;
    line-height: 2.5em;
    padding-left: 15px;
    border-bottom: 1px solid #333030; }
  .contact__form-message-text {
    font-size: 1.5rem;
    font-weight: 700;
    color: #333030;
    line-height: 1.73333em;
    padding: 15px;
    padding-bottom: 0;
    letter-spacing: 0.05em; }
  .contact__form-agree {
    margin-top: 20px;
    cursor: pointer;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .contact__form-agree .contact__form-require {
      background-color: transparent;
      border: 1px solid #d60505;
      font-size: 1.2rem;
      width: 36px;
      height: 20px;
      color: #d60505;
      letter-spacing: 0.05em; }
    .contact__form-agree input[type="checkbox"] {
      margin: 0 5px;
      width: 15px;
      height: 15px;
      border-radius: 0; }
    .contact__form-agree label {
      font-size: 1.4rem;
      color: #333030;
      letter-spacing: 0.05em;
      font-weight: 700 !important;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none;
      cursor: pointer;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; }
  .contact__form-button-row {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 20px; }
    @media screen and (max-width: 767px) {
      .contact__form-button-row {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
  .contact__form-back {
    display: none;
    text-align: center;
    margin-right: 20px;
    width: 150px;
    height: 50px;
    border: 1px solid #666261;
    position: relative; }
    @media screen and (max-width: 767px) {
      .contact__form-back {
        margin-bottom: 10px;
        width: 100%; } }
    .contact__form-back::before {
      content: '';
      position: absolute;
      top: 50%;
      left: 10px;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 0;
      height: 0;
      border-top: 6px solid transparent;
      border-right: 6px solid #666261;
      border-bottom: 6px solid transparent;
      -webkit-transition: all 300ms ease;
      -o-transition: all 300ms ease;
      transition: all 300ms ease; }
    .contact__form-back input {
      cursor: pointer;
      width: 100%;
      height: 100%;
      font-size: 1.8rem;
      font-weight: 700;
      -webkit-transition: all 400ms ease;
      -o-transition: all 400ms ease;
      transition: all 400ms ease;
      background-color: transparent;
      border: 0;
      color: #666261;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
      @media screen and (max-width: 767px) {
        .contact__form-back input {
          width: 100%; } }
      .contact__form-back input:hover {
        background-color: #666261;
        color: #fff; }
  .contact__form-submit {
    text-align: center;
    width: 340px;
    height: 50px;
    position: relative; }
    @media screen and (max-width: 767px) {
      .contact__form-submit {
        width: 100%; } }
    .contact__form-submit input {
      cursor: pointer;
      -webkit-appearance: none;
      width: 100%;
      height: 100%;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      color: #fff;
      font-size: 1.8rem;
      font-weight: 700;
      background-color: transparent;
      letter-spacing: 0.05em;
      border: 0;
      background-color: #d60505;
      -webkit-transition: all 400ms ease;
      -o-transition: all 400ms ease;
      transition: all 400ms ease; }
      @media screen and (max-width: 767px) {
        .contact__form-submit input {
          width: 100%;
          font-size: 1.4rem; } }
      .contact__form-submit input:hover {
        opacity: 0.7; }
  .partner__mail-button-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 20px; }
  .partner__mail-button {
    width: 340px;
    height: 50px;
    background-color: #d60505;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    cursor: pointer;
    color: #fff;
    font-size: 1.8rem;
    -webkit-transition: all ease 500ms;
    -o-transition: all ease 500ms;
    transition: all ease 500ms; }
    @media screen and (max-width: 767px) {
      .partner__mail-button {
        width: 100%; } }
    .partner__mail-button span {
      font-size: 18px;
      font-weight: 500;
      color: #fff; }
      @media screen and (max-width: 767px) {
        .partner__mail-button span {
          font-size: 16px; } }
    .partner__mail-button--back {
      background: #fff;
      width: 150px;
      margin: 0 10px;
      border: 1px solid #333030;
      position: relative;
      color: #333030; }
      .partner__mail-button--back::before {
        content: '◀';
        position: absolute;
        font-size: 1.8rem;
        color: #333030;
        left: 10px;
        top: 0;
        bottom: 0;
        margin: auto 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
        @media screen and (max-width: 767px) {
          .partner__mail-button--back::before {
            font-size: 1.6rem; } }
      .partner__mail-button--back span {
        color: #333030; }
    .partner__mail-button--submit {
      border: 1px solid #d60505;
      position: relative;
      color: #fff; }
      .partner__mail-button--submit::before {
        content: '▶';
        position: absolute;
        font-size: 1.8rem;
        color: #fff;
        right: 10px;
        top: 0;
        bottom: 0;
        margin: auto 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
        @media screen and (max-width: 767px) {
          .partner__mail-button--submit::before {
            font-size: 1.6rem; } }
    .partner__mail-button:hover {
      opacity: 0.8; }
  .contact .nxt::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-left: 6px solid #fff;
    border-bottom: 6px solid transparent;
    -webkit-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
    display: none; }
  .contact .confirm-intro {
    display: none; }
  .contact__form-totop {
    width: 340px;
    height: 50px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    border: 1px solid #d60505;
    font-size: 1.8rem;
    color: #d60505;
    font-weight: 700;
    margin: 40px auto 0; }
    @media screen and (max-width: 767px) {
      .contact__form-totop {
        width: 100%; } }
  .contact--confirm .confirm-intro {
    display: block; }
  .contact--confirm .contact__form-back {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .contact--complete .complete-hide {
    display: none; }

.footer__page-top {
    width: 100px;
    height: 100px;
    border-radius: 100%;
    background: #e3e5e4;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: fixed;
    bottom: -150px;
    right: 30px;
    cursor: pointer;
    -webkit-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease; }
    @media screen and (max-width: 767px) {
      .footer__page-top {
        width: 65px;
        height: 65px;
        right: 5%; } }
    .footer__page-top img {
      margin-left: -10px; }
      @media screen and (max-width: 767px) {
        .footer__page-top img {
          width: 12px; } }
    .footer__page-top.top-active {
      bottom: 30px; }
    .footer__page-top:hover {
      bottom: 35px;
      -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.3);
              box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.3); }

.white {
  color: #fff; }

.white-bg {
  background: #fff; }

.black {
  color: #000; }

.black-bg {
  background: #000; }

.primary {
  color: #0b1e5a; }

.primary-bg {
  background: #0b1e5a; }

.mwform-radio-field {
  margin-right: 40px; }
  .mwform-radio-field .mwform-radio-field-text {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 2.22222em;
    letter-spacing: 0.05em;
    color: #333030;
    margin-left: 10px;
    position: relative; }
    .mwform-radio-field .mwform-radio-field-text::before {
      content: '';
      position: absolute;
      top: 50%;
      left: -25px;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 15px;
      height: 15px;
      border: 1px solid #666261;
      border-radius: 50%; }
    .mwform-radio-field .mwform-radio-field-text::after {
      content: '';
      position: absolute;
      left: -22px;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 9px;
      height: 9px;
      background-color: #666261;
      border-radius: 50%;
      -webkit-transition: all 400ms ease;
      -o-transition: all 400ms ease;
      transition: all 400ms ease;
      opacity: 0; }
  .mwform-radio-field input {
    opacity: 0; }
    .mwform-radio-field input:checked ~ span::after {
      opacity: 1; }

.mw_wp_form_confirm {
  border-top: 1px solid #666261; }
  .mw_wp_form_confirm .contact__form-row {
    border-bottom: 0; }
  .mw_wp_form_confirm .contact__form-input-hint {
    display: none; }
  .mw_wp_form_confirm .js-postal-search button {
    display: none; }
  .mw_wp_form_confirm .select-wrapper {
    height: auto; }
    .mw_wp_form_confirm .select-wrapper::after {
      display: none; }
  .mw_wp_form_confirm .contact__form-message {
    display: none; }
  .mw_wp_form_confirm .contact__form-agree {
    display: none; }
  .mw_wp_form_confirm .nxt::before {
    display: block; }

  .sp {
    display: none;
  }

  @media screen and (max-width: 767px) {
    .pc {
      display: none;
    }

    .sp {
      display: block;
    }

    .sp-flex {
      display: flex;
    }
  }

.interview {
  margin: 70px auto 40px;
  max-width: 1200px;
  width: 100%; }
  @media screen and (min-width: 1200px) {
    .interview {
      margin: 70px auto 40px;
      padding: 0 3%; }
  }
  @media screen and (max-width: 767px) {
    .interview {
      margin: 40px auto 20px;
      padding: 0 3%; } }
  .interview__video {
    margin: 40px auto;
    width: 100%;
    height: 630px;
    position: relative; }
    @media screen and (max-width: 767px) {
      .interview__video {
        width: 100%;
        height: 53vw; } }
    .interview__video img {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
    .interview__video::after {
      content: '';
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.5);
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      margin: auto; }
  .interview__video-button {
    position: absolute;
    width: 165px;
    height: 165px;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    cursor: pointer; }
    .interview__video-button p {
      font-size: 2rem;
      color: #fff;
      margin-top: 20px;
      letter-spacing: 1px; }
      @media screen and (max-width: 767px) {
        .interview__video-button p {
          font-size: 1.8rem; } }
  .interview__play {
    width: 100px !important;
    height: auto !important;
    -o-object-fit: contain !important;
       object-fit: contain !important; }
    @media screen and (max-width: 767px) {
      .interview__play {
        width: 70px !important; } }
  .interview__links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .interview__link {
    width: 48%;
    height: 100px;
    background: #333030;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 20px;
    margin: 20px 0;
    position: relative;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease; }
    @media screen and (max-width: 767px) {
      .interview__link {
        padding: 15px;
        margin: 10px 0;
        width: 100%; } }
    .interview__link::after {
      content: '';
      width: 9px;
      height: 17px;
      background: url("./src/img/arrow-white.png") no-repeat;
      background-size: 100%;
      position: absolute;
      top: 0;
      bottom: 0;
      right: 20px;
      margin: auto 0;
      -webkit-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease; }
    .interview__link p {
      font-size: 2rem;
      color: #fff; }
      @media screen and (max-width: 767px) {
        .interview__link p {
          font-size: 1.8rem; } }
    .interview__link span {
      font-size: 1.4rem;
      color: #b2b0b0;
      margin-top: 10px;
      display: block; }
    .interview__link:hover {
      letter-spacing: 1px; }
      .interview__link:hover::after {
        right: 15px; }
  .interview__close {
    font-size: 4rem;
    color: #fff;
    font-weight: 700;
    position: absolute;
    top: 100px;
    right: 10%;
    cursor: pointer; }
  .interview__modal {
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    visibility: hidden;
    opacity: 0;
    -webkit-transform: scale(0);
        -ms-transform: scale(0);
            transform: scale(0);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-transition: all 0.3 ease;
    -o-transition: all 0.3 ease;
    transition: all 0.3 ease; }
    .interview__modal.active {
      opacity: 1;
      visibility: visible;
      z-index: 3;
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1); }
  .interview__modal-content {
    width: 760px;
    margin: 70px auto 0;
    height: 450px; }
    @media screen and (max-width: 767px) {
      .interview__modal-content {
        height: 55vw;
        width: 85%; } }
  .interview__iframe {
    width: 100%;
    height: 100%; }
  
  .interview__text {
    background: #f7f7f7;
    padding: 50px;
    margin-top: 40px;
    width: 100%;
    font-size: 1.6rem;
    line-height: 1.6;
  }

  .interview__label span {
    font-size: 2.4rem;
  }

  .interview__hr {
    position: relative;
    width: 100%;
    margin: 20px 0;
  }

  .interview__hr span {
    background: #f7f7f7;
    z-index: 1;
    padding: 5px 10px;
    font-size: 1.4rem;
    color: #666261;
    position: relative;
  }

  .interview__hr::before {
    content: '';
    width: 100%;
    height: 1px;
    background: #666261;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto 0;
  }
  @media screen and (max-width: 767px) {
    .interview__text {
      padding: 4%;
    }

    .interview__label span {
      font-size: 1.8rem;
    }
  }

    .title {
  color: #666261; }
  .title h2 {
    font-size: 10rem;
    font-family: "Cormorant Garamond", serif;
    font-weight: 500;
    letter-spacing: 1px; }
    @media screen and (max-width: 767px) {
      .title h2 {
        font-size: 6rem; } }
  .title p {
    font-size: 2rem;
    position: relative; }
    @media screen and (max-width: 767px) {
      .title p {
        font-size: 1.6rem; } }
    .title p.line {
      display: inline-block; }
      .title p.line::before, .title p.line::after {
        content: '';
        width: 20px;
        height: 1px;
        background: #666261;
        position: absolute;
        top: 0;
        bottom: 0;
        left: -30px;
        margin: auto 0;
        display: block; }
      .title p.line::after {
        right: -30px;
        left: auto; }
  .title--center {
    text-align: center; }
.underline {
  text-decoration: underline;
  color: #00B900;
  
}


/*# sourceMappingURL=style.css.map*/