@charset "UTF-8";
.equipmentFeature {
  font-family: Inter, sans-serif;
  position: relative;
  z-index: 1;
}

.equipmentFeature:before {
  background-color: #fff000;
  content: '';
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100vw;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .equipmentFeature__inner {
    margin: 0 auto;
    max-width: 1600px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature__cont {
    margin-top: calc(40 / 390 * 100vw);
  }
}

.equipmentFeature__heading {
  font-weight: 700;
  letter-spacing: .04em;
  line-height: .8;
}

@media screen and (min-width: 768px) {
  .equipmentFeature__heading {
    font-size: calc(128 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature__heading {
    font-size: 128px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature__heading {
    font-size: calc(48 / 390 * 100vw);
    text-align: left;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature__heading + .equipmentFeature__ttl {
    margin-top: calc(40 / 390 * 100vw);
  }
}

.equipmentFeature__ttl {
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight: bold;
  line-height: 1.6;
}

@media screen and (min-width: 768px) and (min-width: 768px) {
  .equipmentFeature__ttl {
    font-size: calc(20 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature__ttl {
    font-size: 20px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature__ttl {
    font-size: calc(16 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature__ttl + .equipmentFeature__txt {
    margin-top: calc(20 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature__ttl + .equipmentFeature__txt {
    margin-top: 20px;
  }
}

.equipmentFeature__txt {
  line-height: 1.6;
}

@media screen and (min-width: 768px) {
  .equipmentFeature__txt {
    font-size: calc(16 / 1440 * 100vw);
    width: calc(480 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature__txt {
    font-size: 16px;
    width: 480px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature__txt {
    font-size: calc(14 / 390 * 100vw);
    margin-top: calc(24 / 390 * 100vw);
  }
}

.equipmentFeature__enTtl {
  color: #6f6e6f;
  font-family: Inter, sans-serif;
  font-weight: 800;
  line-height: 1;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .equipmentFeature__enTtl {
    font-size: calc(52 / 1600 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1600px) {
  .equipmentFeature__enTtl {
    font-size: 52px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature__enTtl {
    font-size: calc(48 / 390 * 100vw);
  }
}

.equipmentFeature__enTxt {
  font-weight: bold;
  letter-spacing: .02em;
}

@media screen and (min-width: 768px) {
  .equipmentFeature__enTxt {
    font-size: calc(14 / 1440 * 100vw);
    line-height: 1.6;
    margin-top: calc(50 / 1440 * 100vw);
    width: calc(344 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature__enTxt {
    font-size: 14px;
    margin-top: 50px;
    width: 344px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature__enTxt {
    font-size: calc(12 / 390 * 100vw);
    left: 50%;
    line-height: 1.8;
    margin-top: calc(40 / 390 * 100vw);
    width: calc(344 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--fitting {
    margin-top: 108px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--fitting {
    margin-top: calc(80 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--fitting:before {
    height: calc(270 / 1440 * 100vw);
    top: calc(70 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--fitting:before {
    height: 270px;
    top: 70px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--fitting:before {
    height: calc(445 / 390 * 100vw);
    top: calc(365 / 390 * 100vw);
  }
}

.equipmentFeature--fitting .equipmentFeature__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (min-width: 768px) {
  .equipmentFeature--fitting .equipmentFeature__inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    gap: calc(80 / 1440 * 100vw);
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--fitting .equipmentFeature__inner {
    gap: 80px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--fitting .equipmentFeature__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--fitting .equipmentFeature__head {
    padding: 0 calc(24 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--fitting .equipmentFeature__cont .photo {
    width: calc(753 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--fitting .equipmentFeature__cont .photo {
    min-width: 753px;
    width: calc(900 / 1600 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1600px) {
  .equipmentFeature--fitting .equipmentFeature__cont .photo {
    width: 900px;
  }
}

.equipmentFeature--fitting .equipmentFeature__cont .photo__capIn {
  bottom: unset;
  top: 5px;
}

@media screen and (max-width: 768px) {
  .equipmentFeature--fitting .equipmentFeature__cont .photo__capIn {
    left: 5px;
    right: unset;
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--fitting .equipmentFeature__heading + .equipmentFeature__ttl {
    margin-top: calc(70 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--fitting .equipmentFeature__heading + .equipmentFeature__ttl {
    margin-top: 70px;
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--fitting .equipmentFeature__enTxt {
    margin-left: calc(-156 / 1440 * 100vw);
    width: calc(595 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--fitting .equipmentFeature__enTxt {
    margin-left: -156px;
    width: 595px;
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--water {
    margin-top: 80px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--water {
    margin-top: calc(80 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--water:before {
    height: calc(180 / 1440 * 100vw);
    top: calc(83 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--water:before {
    height: 180px;
    top: 83px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--water:before {
    height: calc(208 / 390 * 100vw);
    top: calc(76 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--water .equipmentFeature__head {
    margin-left: calc(100 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--water .equipmentFeature__head {
    margin-left: 100px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--water .equipmentFeature__head {
    padding: 0 calc(24 / 390 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--water .equipmentFeature__heading {
    line-height: 1;
  }
}

.equipmentFeature--water .equipmentFeature__enTtl {
  position: relative;
}

@media screen and (min-width: 768px) {
  .equipmentFeature--water .equipmentFeature__enTtl {
    margin-top: calc(47 / 1440 * 100vw);
    padding-left: calc(199 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--water .equipmentFeature__enTtl {
    margin-top: 47px;
    padding-left: 199px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--water .equipmentFeature__enTtl {
    margin-top: calc(73 / 390 * 100vw);
  }
}

.equipmentFeature--water .equipmentFeature__enTtl:before {
  color: #000000;
  content: 'ウルトラファインバブル';
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  line-height: 1;
  position: absolute;
}

@media screen and (min-width: 768px) {
  .equipmentFeature--water .equipmentFeature__enTtl:before {
    font-size: calc(14 / 1440 * 100vw);
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--water .equipmentFeature__enTtl:before {
    font-size: 14px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--water .equipmentFeature__enTtl:before {
    font-size: calc(14 / 390 * 100vw);
    left: 0;
    top: calc(-27 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--water .equipmentFeature__ttl {
    margin-top: calc(80 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--water .equipmentFeature__ttl {
    margin-top: 80px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--water .equipmentFeature__ttl {
    margin-top: calc(40 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--water .equipmentFeature__ttl + .equipmentFeature__txt {
    margin-top: calc(40 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--water .equipmentFeature__ttl + .equipmentFeature__txt {
    margin-top: 40px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--water .equipmentFeature__ttl + .equipmentFeature__txt {
    margin-top: calc(12 / 390 * 100vw);
  }
}

.equipmentFeature--water .equipmentFeature__cont {
  position: relative;
  z-index: -2;
}

@media screen and (min-width: 768px) {
  .equipmentFeature--water .equipmentFeature__cont {
    position: absolute;
    top: calc(263 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--water .equipmentFeature__cont {
    top: 263px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--water .equipmentFeature__cont {
    margin-top: calc(-241 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--floor {
    margin-top: 108px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--floor {
    margin-top: calc(80 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--floor:before {
    height: calc(300 / 1440 * 100vw);
    top: calc(147 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--floor:before {
    height: 300px;
    top: 147px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--floor:before {
    height: calc(233 / 390 * 100vw);
    top: calc(402 / 390 * 100vw);
  }
}

.equipmentFeature--floor .equipmentFeature__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (min-width: 768px) {
  .equipmentFeature--floor .equipmentFeature__inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    gap: calc(80 / 1440 * 100vw);
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--floor .equipmentFeature__inner {
    gap: 80px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--floor .equipmentFeature__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--floor .equipmentFeature__head {
    padding: 0 calc(24 / 390 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--floor .equipmentFeature__cont {
    margin-top: calc(40 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--floor .equipmentFeature__cont .photo {
    width: calc(780 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--floor .equipmentFeature__cont .photo {
    min-width: 780px;
    width: calc(900 / 1600 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1600px) {
  .equipmentFeature--floor .equipmentFeature__cont .photo {
    width: 900px;
  }
}

.equipmentFeature--floor .equipmentFeature__heading {
  line-height: 1;
}

@media screen and (min-width: 768px) {
  .equipmentFeature--floor .equipmentFeature__heading {
    margin-top: calc(-65 / 1440 * 100vw);
    position: relative;
    z-index: 0;
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--floor .equipmentFeature__heading {
    margin-top: -65px;
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--floor .equipmentFeature__enTxt {
    margin-top: calc(120 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--floor .equipmentFeature__enTxt {
    margin-top: 120px;
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--floor .equipmentFeature__enTxt + .equipmentFeature__ttl {
    margin-top: calc(60 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--floor .equipmentFeature__enTxt + .equipmentFeature__ttl {
    margin-top: 60px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--floor .equipmentFeature__enTxt + .equipmentFeature__ttl {
    margin-top: calc(40 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--floor .equipmentFeature__enTxt + .equipmentFeature__ttl + .equipmentFeature__txt {
    margin-top: calc(20 / 1440 * 100vw);
    width: calc(420 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--floor .equipmentFeature__enTxt + .equipmentFeature__ttl + .equipmentFeature__txt {
    margin-top: 60px;
    width: 420px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--floor .equipmentFeature__enTxt + .equipmentFeature__ttl + .equipmentFeature__txt {
    margin-top: calc(12 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--powder {
    margin-top: 108px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--powder {
    margin-top: calc(80 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--powder:before {
    height: calc(460 / 1440 * 100vw);
    top: calc(70 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--powder:before {
    height: 460px;
    top: 70px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--powder:before {
    height: calc(400 / 390 * 100vw);
    top: calc(63 / 390 * 100vw);
  }
}

.equipmentFeature--powder .equipmentFeature__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (min-width: 768px) {
  .equipmentFeature--powder .equipmentFeature__inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--powder .equipmentFeature__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--powder .equipmentFeature__head {
    margin-top: calc(147 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--powder .equipmentFeature__head {
    margin-top: 147px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--powder .equipmentFeature__head {
    padding: 0 calc(24 / 390 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--powder .equipmentFeature__cont {
    margin-top: calc(120 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--powder .equipmentFeature__cont .photo {
    width: calc(650 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--powder .equipmentFeature__cont .photo {
    min-width: 650px;
    width: calc(900 / 1600 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1600px) {
  .equipmentFeature--powder .equipmentFeature__cont .photo {
    width: 900px;
  }
}

.equipmentFeature--powder .equipmentFeature__cont .photo__capIn {
  left: 5px;
  right: unset;
}

.equipmentFeature--powder .equipmentFeature__heading {
  line-height: .9;
}

@media screen and (min-width: 768px) {
  .equipmentFeature--powder .equipmentFeature__heading + .equipmentFeature__ttl {
    margin-left: auto;
    margin-right: calc(-120 / 1440 * 100vw);
    margin-top: calc(40 / 1440 * 100vw);
    width: calc(344 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--powder .equipmentFeature__heading + .equipmentFeature__ttl {
    margin-right: -20px;
    margin-top: 40px;
    width: 344px;
  }
}

.equipmentFeature--powder .equipmentFeature__enTxt {
  position: relative;
}

@media screen and (min-width: 768px) {
  .equipmentFeature--powder .equipmentFeature__enTxt {
    margin-left: auto;
    margin-right: calc(-120 / 1440 * 100vw);
    margin-top: calc(20 / 1440 * 100vw);
    width: calc(344 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--powder .equipmentFeature__enTxt {
    margin-right: -20px;
    width: 344px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--powder .equipmentFeature__enTxt {
    left: unset;
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--powder .equipmentFeature__txt {
    margin-left: auto;
    margin-right: calc(-120 / 1440 * 100vw);
    width: calc(344 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--powder .equipmentFeature__txt {
    margin-right: -20px;
    width: 344px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--powder .equipmentFeature__txt {
    margin-top: calc(12 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--kitchen {
    margin-top: calc(60 / 1600 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--kitchen {
    margin-top: calc(100 / 1600 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1800px) {
  .equipmentFeature--kitchen {
    margin-top: calc(160 / 1600 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--kitchen {
    margin-top: calc(320 / 390 * 100vw);
    padding: 0 calc(24 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--kitchen:before {
    height: calc(440 / 1440 * 100vw);
    top: calc(70 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--kitchen:before {
    height: 440px;
    top: 70px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--kitchen:before {
    height: calc(680 / 390 * 100vw);
    top: calc(-90 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--kitchen .equipmentFeature__inner {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: calc(80 / 1440 * 100vw);
    margin-left: calc(100 / 1600 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1600px) {
  .equipmentFeature--kitchen .equipmentFeature__inner {
    gap: 80px;
    margin-left: 10px;
  }
}

.equipmentFeature--kitchen .equipmentFeature__heading {
  line-height: .7;
}

@media screen and (min-width: 768px) {
  .equipmentFeature--kitchen .equipmentFeature__heading {
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
  }
}

.equipmentFeature--kitchen .equipmentFeature__cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (min-width: 768px) {
  .equipmentFeature--kitchen .equipmentFeature__cont {
    gap: calc(40 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--kitchen .equipmentFeature__cont {
    gap: 40px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--kitchen .equipmentFeature__cont {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: calc(40 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--kitchen .equipmentFeature__item {
    width: calc(380 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--kitchen .equipmentFeature__item {
    width: 380px;
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--kitchen .equipmentFeature__enTtl {
    font-size: calc(48 / 1600 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1600px) {
  .equipmentFeature--kitchen .equipmentFeature__enTtl {
    font-size: 48px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--kitchen .equipmentFeature__enTtl {
    font-size: calc(40 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .equipmentFeature--kitchen .equipmentFeature__enTtl + .photo {
    margin-top: calc(16 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1600px) {
  .equipmentFeature--kitchen .equipmentFeature__enTtl + .photo {
    margin-top: 16px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--kitchen .equipmentFeature__enTtl + .photo {
    margin-top: calc(20 / 390 * 100vw);
  }
}

.equipmentFeature--kitchen .equipmentFeature__info {
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .equipmentFeature--kitchen .equipmentFeature__info {
    font-size: calc(14 / 1440 * 100vw);
    margin-top: calc(16 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) and (min-width: 1440px) {
  .equipmentFeature--kitchen .equipmentFeature__info {
    font-size: 14px;
    margin-top: 16px;
  }
}

@media screen and (max-width: 768px) {
  .equipmentFeature--kitchen .equipmentFeature__info {
    font-size: calc(14 / 390 * 100vw);
    margin-top: calc(16 / 390 * 100vw);
  }
}

.guidanceArea {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (min-width: 768px) {
  .guidanceArea {
    margin: auto;
    width: 970px;
  }
}

@media screen and (max-width: 768px) {
  .guidanceArea {
    padding: 0 calc(35 / 390 * 100vw);
  }
}

.guidanceSect {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

@media screen and (min-width: 768px) {
  .guidanceSect {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 40px;
       -moz-column-gap: 40px;
            column-gap: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 768px) {
  .guidanceSect__head {
    width: 600px;
  }
}

@media screen and (min-width: 768px) {
  .guidanceSect__cont {
    margin-top: 0;
  }
}

@media screen and (max-width: 768px) {
  .guidanceSect__cont {
    margin-top: -10px;
  }
}

.guidanceSect__cont .enTtl {
  color: #000000;
  font-family: "Cinzel", serif;
  font-weight: 400;
}

@media screen and (min-width: 768px) {
  .guidanceSect__cont .enTtl {
    font-size: 42px;
    letter-spacing: .05em;
  }
}

@media screen and (max-width: 768px) {
  .guidanceSect__cont .enTtl {
    font-size: calc(42 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .guidanceSect__cont .enTtl .large {
    font-size: 84px;
  }
}

@media screen and (max-width: 768px) {
  .guidanceSect__cont .enTtl .large {
    font-size: calc(84 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .guidanceSect__cont .enTtl + .txt {
    margin-top: 24px;
  }
}

@media screen and (max-width: 768px) {
  .guidanceSect__cont .enTtl + .txt {
    margin-top: calc(24 / 390 * 100vw);
  }
}

.guidanceSect__cont .txt {
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  line-height: 1.8;
}

.guidanceSect__cont .txt:before {
  content: '';
  margin-top: calc((1 - 1.8) * .5em);
}

.guidanceSect__cont .txt:after {
  margin-bottom: calc((1 - 1.8) * .5em);
}

.guidanceSect__cont .txt:before, .guidanceSect__cont .txt:after {
  content: '';
  display: block;
  height: 0;
  width: 0;
}

@media screen and (min-width: 768px) {
  .guidanceSect__cont .txt {
    font-size: 16px;
  }
}

@media screen and (max-width: 768px) {
  .guidanceSect__cont .txt {
    font-size: calc(16 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .guidanceSect__cont .txt + .guidanceSect__coming {
    margin-top: 24px;
  }
}

@media screen and (max-width: 768px) {
  .guidanceSect__cont .txt + .guidanceSect__coming {
    margin-top: calc(24 / 390 * 100vw);
  }
}

.guidanceSect__coming {
  color: #726f3d;
  font-family: "DIN Alternate", sans-serif;
}

@media screen and (min-width: 768px) {
  .guidanceSect__coming {
    font-size: 16px;
  }
}

@media screen and (max-width: 768px) {
  .guidanceSect__coming {
    font-size: calc(16 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .guidanceSect--location {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .guidanceSect--access {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    margin-left: auto;
  }
}

@media screen and (min-width: 768px) {
  .guidanceSect + .guidanceSect {
    margin-top: 60px;
  }
}

@media screen and (max-width: 768px) {
  .guidanceSect + .guidanceSect {
    margin-top: calc(40 / 390 * 100vw);
  }
}

.informationSect {
  font-family: "YakuHanMP", "Hiragino Mincho Pro", "Hiragino Mincho ProN", "Noto Serif JP", "YuMincho", "Yu Mincho", "MS PMincho", serif;
  margin: 0 auto;
  position: relative;
  text-align: center;
  z-index: 1;
  color: #74604d;
}

@media screen and (min-width: 768px) {
  .informationSect {
    max-width: 1000px;
  }
}

@media screen and (max-width: 768px) {
  .informationSect {
    margin: 0 24px;
  }
}

.informationSect__head {
  letter-spacing: .15em;
  border-bottom: 1px solid #74604d;
}

@media screen and (min-width: 768px) {
  .informationSect__head {
    padding-bottom: 40px;
    font-size: 34px;
  }
}

@media screen and (max-width: 768px) {
  .informationSect__head {
    padding-bottom: 26px;
    font-size: calc(26 / 390 * 100vw);
    line-height: 1.8;
  }
}

.informationSect__ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 24px;
  margin: 0 auto;
  font-family: "Cinzel", serif;
  line-height: 0.9;
}

@media screen and (min-width: 768px) {
  .informationSect__ttl {
    font-size: 24px;
  }
}

@media screen and (max-width: 768px) {
  .informationSect__ttl {
    font-size: calc(18 / 390 * 100vw);
  }
}

.informationSect__ttl:before, .informationSect__ttl:after {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  content: '';
  display: block;
  height: 1px;
  background-color: #74604d;
}

@media screen and (min-width: 768px) {
  .informationSect__lead {
    font-size: 34px;
  }
}

@media screen and (max-width: 768px) {
  .informationSect__lead {
    font-size: calc(32 / 390 * 100vw);
    letter-spacing: .05em;
  }
}

.informationSect__lead .en {
  line-height: 1.4;
}

@media screen and (max-width: 768px) {
  .informationSect__lead .en {
    margin-top: 10px;
  }
}

@media screen and (max-width: 768px) {
  .informationSect__lead .date {
    font-size: calc(24 / 390 * 100vw);
  }
}

.informationSect__cont {
  letter-spacing: .08em;
}

@media screen and (min-width: 768px) {
  .informationSect__cont {
    font-size: 18px;
    line-height: 1.8;
    margin-top: 30px;
  }
}

@media screen and (max-width: 768px) {
  .informationSect__cont {
    font-size: calc(18 / 390 * 100vw);
    line-height: 2;
    padding-top: calc(15 / 390 * 100vw);
  }
}

.informationSect__cont .generalBtn {
  margin: 0 auto;
}

.informationSect__inner {
  display: grid;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  row-gap: 80px;
  -webkit-column-gap: 40px;
     -moz-column-gap: 40px;
          column-gap: 40px;
}

@media screen and (min-width: 768px) {
  .informationSect__inner {
    grid-template-columns: repeat(2, 326px);
    gap: 36px;
    margin-top: 40px;
  }
}

@media screen and (max-width: 768px) {
  .informationSect__inner {
    row-gap: 24px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: calc(24 / 390 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .informationSect__item:not(.informationSect__item--bnr) + .informationSect__item--bnr {
    margin-top: 20px;
  }
}

.informationSect__txt {
  letter-spacing: .12em;
}

@media screen and (min-width: 768px) {
  .informationSect__txt {
    line-height: 1.8;
    font-size: 16px;
    padding-bottom: 20px;
    white-space: nowrap;
  }
}

@media screen and (max-width: 768px) {
  .informationSect__txt {
    font-size: calc(14 / 390 * 100vw);
    line-height: 2;
  }
}

.informationSect__txt--large {
  line-height: 1.6;
}

@media screen and (min-width: 768px) {
  .informationSect__txt--large {
    margin-top: 40px;
    font-size: 26px;
  }
}

@media screen and (max-width: 768px) {
  .informationSect__txt--large {
    margin-top: calc(26 / 390 * 100vw);
    font-size: calc(18 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .informationSect__txt + .generalBtn {
    margin-top: 20px;
  }
}

@media screen and (max-width: 768px) {
  .informationSect__txt + .generalBtn {
    margin-top: 20px;
  }
}

.informationSect__txt .caption {
  display: inline-block;
  line-height: 2;
}

.informationSect__bnr {
  -webkit-transition: opacity .3s ease;
  transition: opacity .3s ease;
}

.informationSect__bnr:hover {
  opacity: .8;
}

.mainVisual {
  font-family: Inter, sans-serif;
  overflow: hidden;
  position: relative;
  width: 100%;
  z-index: 3;
}

@media screen and (min-width: 768px) {
  .mainVisual__inner {
    margin: 0 100px;
    max-width: 1600px;
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .mainVisual__inner {
    margin: calc(40 / 390 * 100vw) calc(24 / 390 * 100vw);
  }
}

.mainVisual__logo {
  -webkit-animation: fadeIn 1.1s ease-in-out .1s forwards;
          animation: fadeIn 1.1s ease-in-out .1s forwards;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@media screen and (min-width: 768px) {
  .mainVisual__logo {
    top: calc(200 / 1440 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .mainVisual__logo {
    top: calc(180 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .mainVisual__logo .photo {
    height: auto;
    width: calc(197 / 1440 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .mainVisual__logo .photo {
    height: auto;
    width: calc(120 / 390 * 100vw);
  }
}

.mainVisual__logo .photo img {
  width: 100%;
}

.mainVisual__txt {
  -webkit-animation: fadeIn 1.1s ease-in-out .1s forwards;
          animation: fadeIn 1.1s ease-in-out .1s forwards;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@media screen and (min-width: 768px) {
  .mainVisual__txt {
    top: calc(330 / 1440 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .mainVisual__txt {
    top: calc(260 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .mainVisual__txt .photo {
    height: auto;
    width: calc(637 / 1440 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .mainVisual__txt .photo {
    height: auto;
    width: calc(335 / 390 * 100vw);
  }
}

.mainVisual__txt .photo img {
  width: 100%;
}

.opening {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  -webkit-transition-delay: 3.6s;
          transition-delay: 3.6s;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  width: 100%;
  z-index: 9999;
}

.opening.is-end {
  z-index: 0;
}

.opening__inner {
  opacity: 0;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
}

.opening .willroseLogo {
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .opening .willroseLogo {
    width: 360px;
  }
}

@media screen and (max-width: 768px) {
  .opening .willroseLogo {
    width: 230px;
  }
}

.opening .loader {
  height: 2px;
  margin: 0 auto;
  position: relative;
}

@media screen and (min-width: 768px) {
  .opening .loader {
    margin-top: 100px;
    width: 360px;
  }
}

@media screen and (max-width: 768px) {
  .opening .loader {
    margin-top: 75px;
    width: 230px;
  }
}

.opening .loader:before, .opening .loader:after {
  bottom: 0;
  content: '';
  position: absolute;
  width: 100%;
}

.opening .loader:before {
  background-color: #999999;
  height: 2px;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition-delay: .6s;
          transition-delay: .6s;
  -webkit-transition-duration: 3s;
          transition-duration: 3s;
  z-index: 2;
}

.opening .loader:after {
  background-color: #cccccc;
  height: 1px;
  z-index: 1;
}

.is-firstVisit.is-load .opening {
  opacity: 0;
}

.is-firstVisit.is-load .opening__inner {
  opacity: 1;
}

.is-firstVisit.is-load .opening .loader:before {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.is-load.is-visited .opening {
  display: none;
  z-index: -1 !important;
}

.uspArea {
  position: relative;
  z-index: 1;
  text-align: center;
  background-color: #262c1e;
}

@media screen and (min-width: 768px) {
  .uspArea {
    margin: 0 auto;
    padding: 30px 0;
  }
}

@media screen and (max-width: 768px) {
  .uspArea {
    padding: 40px calc(24 / 390 * 100vw);
  }
}

.uspArea__desc {
  text-align: center;
  line-height: 1.8;
}

.uspArea__desc:before {
  content: '';
  margin-top: calc((1 - 1.8) * .5em);
}

.uspArea__desc:after {
  margin-bottom: calc((1 - 1.8) * .5em);
}

.uspArea__desc:before, .uspArea__desc:after {
  content: '';
  display: block;
  height: 0;
  width: 0;
}

@media screen and (min-width: 768px) {
  .uspArea__desc {
    font-size: 16px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__desc {
    font-size: calc(14 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .uspArea__desc + .uspArea__col {
    margin-top: 60px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__desc + .uspArea__col {
    margin-top: calc(80 / 390 * 100vw);
  }
}

.uspArea__col {
  position: relative;
}

@media screen and (min-width: 768px) {
  .uspArea__col {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.uspArea__item {
  position: relative;
}

@media screen and (min-width: 768px) {
  .uspArea__item {
    padding-left: 30px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__item {
    padding-bottom: calc(20 / 390 * 100vw);
  }
}

.uspArea__item:after {
  background-color: #000000;
  content: '';
  left: 0;
  position: absolute;
}

@media screen and (min-width: 768px) {
  .uspArea__item:after {
    height: 65px;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(20deg);
            transform: translateY(-50%) rotate(20deg);
    width: 1px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__item:after {
    bottom: 0;
    height: 1px;
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .uspArea__item + .uspArea__item {
    margin-left: 30px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__item + .uspArea__item {
    margin-top: calc(20 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .uspArea__item:nth-child(1):after {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__item:last-child {
    padding-bottom: 0;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__item:last-child:after {
    display: none;
  }
}

.uspArea__txt {
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  line-height: 1;
  position: relative;
}

@media screen and (min-width: 768px) {
  .uspArea__txt {
    font-size: 36px;
    text-align: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__txt {
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .uspArea__txt .med {
    font-size: 34px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__txt .med {
    font-size: calc(26 / 390 * 100vw);
    letter-spacing: .08em;
  }
}

.uspArea__txt .lead {
  display: block;
}

@media screen and (min-width: 768px) {
  .uspArea__txt .lead {
    font-size: 44px;
    margin-top: 12px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__txt .lead {
    font-size: calc(34 / 390 * 100vw);
    margin-top: calc(12 / 390 * 100vw);
  }
}

.uspArea__txt .lead sup {
  font-size: 16px;
}

@media screen and (min-width: 768px) {
  .uspArea__txt .lead .middle {
    font-size: 32px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__txt .lead .middle {
    font-size: calc(24 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .uspArea__txt .small {
    font-size: 20px;
    letter-spacing: .16em;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__txt .small {
    font-size: calc(16 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .uspArea__txt .small .num {
    font-size: 28px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__txt .small .num {
    font-size: calc(18 / 390 * 100vw);
  }
}

.uspArea__txt .num {
  color: #000000;
}

@media screen and (min-width: 768px) {
  .uspArea__txt .num {
    font-size: 52px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__txt .num {
    font-size: calc(44 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .uspArea__txt .area {
    font-size: 20px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__txt .area {
    font-size: calc(16 / 390 * 100vw);
  }
}

.uspArea__txt .inner {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.uspArea__txt .caption {
  color: #000000;
}

@media screen and (min-width: 768px) {
  .uspArea__txt .caption {
    font-size: 12px;
    margin-top: 5px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__txt .caption {
    font-size: 10px;
    margin-top: 5px;
  }
}

.uspArea__price {
  /* background-color: #2d2d2d; */
  color: rgba(255, 255, 255, 0.9);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-family: 'Noto Sans JP', san-serif;
  -webkit-font-feature-settings: 'palt';
          font-feature-settings: 'palt';
  font-weight: 500;
  letter-spacing: .1em;
  max-width: 1000px;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .uspArea__price {
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.65)), to(rgba(0, 0, 0, 0.65))), url(../imgs/pc/img-bnr-01@2x.jpg);
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0.65)), url(../imgs/pc/img-bnr-01@2x.jpg);
  }
}

@media screen and (max-width: 768px) {
  .uspArea__price {
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.65)), to(rgba(0, 0, 0, 0.65))), url(../imgs/sp/img-bnr-01@2x.jpg);
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.65), rgba(0, 0, 0, 0.65)), url(../imgs/sp/img-bnr-01@2x.jpg);
    background-size: cover;
  }
}

@media screen and (min-width: 768px) {
  .uspArea__price {
    font-size: 30px;
    gap: 20px;
    margin: 70px auto 0;
    padding-block: 28px 84px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__price {
    font-size: calc(24 / 390 * 100vw);
    gap: 10px;
    margin-top: calc(74 / 390 * 100vw);
    padding-block: 40px 82px;
  }
}

.uspArea__price .largeNum {
  color: #fef001;
  font-family: Inter,san-serif;
}

@media screen and (min-width: 768px) {
  .uspArea__price .largeNum {
    font-size: 75px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__price .largeNum {
    font-size: calc(50 / 390 * 100vw);
  }
}

.uspArea__price .num {
  color: #fef001;
  font-size: 26px;
}

@media screen and (max-width: 768px) {
  .uspArea__price .secondLineSp .largeNum {
    font-size: calc(80 / 390 * 100vw);
  }
}

.uspArea__price .inner--02 {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 28px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 768px) {
  .uspArea__price .inner--02 {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 32px;
  }
}

.uspArea__price .planned {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 24px;
  gap: 14px;
  position: relative;
}

.uspArea__price .planned .label {
  border: 1px solid #ffffff;
  font-size: 12px;
  height: auto;
  padding: 8px;
}

@media screen and (max-width: 768px) {
  .uspArea__price .planned .label {
    padding: 4px 6px;
  }
}

.uspArea__price .planned .num {
  font-size: 28px;
}

.uspArea__price .planned .price {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0;
}

@media screen and (min-width: 768px) {
  .uspArea__price .planned:after {
    background: rgba(255, 255, 255, 0.5);
    bottom: 0;
    content: '';
    height: 70%;
    position: absolute;
    right: -14px;
    width: 1px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__price .planned:after {
    background: rgba(255, 255, 255, 0.5);
    bottom: -20px;
    content: '';
    height: 1px;
    left: 50%;
    position: absolute;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: calc(270 / 390 * 100vw);
  }
}

.uspArea__price .price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 28px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .uspArea__price .price {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 10px 28px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.uspArea__price .price .item {
  font-size: 20px;
  position: relative;
}

.uspArea__price .price .item .small {
  font-size: 12px;
  letter-spacing: .02em;
  padding-right: 6px;
}

.uspArea__price .price .item .num {
  font-size: 32px;
}

@media screen and (min-width: 768px) {
  .uspArea__price .price .item:nth-child(n+2):before {
    background: #ffffff;
    bottom: 0;
    content: '';
    height: 50%;
    left: -14px;
    position: absolute;
    -webkit-transform: rotate(35deg);
            transform: rotate(35deg);
    width: 1px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__price .price .item:nth-child(n+3):before {
    background: #ffffff;
    bottom: 2px;
    content: '';
    height: 50%;
    left: -14px;
    position: absolute;
    -webkit-transform: rotate(25deg);
            transform: rotate(25deg);
    width: 1px;
  }
}

.uspArea__price .more {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: rgba(0, 0, 0, 0.9);
  bottom: 0;
  color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 16px;
  font-weight: 700;
  gap: 16px;
  height: 54px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 0;
  letter-spacing: .08em;
  line-height: 1;
  position: absolute;
  -webkit-transition: background-color .8s ease;
  transition: background-color .8s ease;
  width: 100%;
  z-index: 2;
}

.uspArea__price .more .arrowSVG {
  aspect-ratio: 1/1;
  display: block;
  -webkit-transition: -webkit-transform .8s ease;
  transition: -webkit-transform .8s ease;
  transition: transform .8s ease;
  transition: transform .8s ease, -webkit-transform .8s ease;
  width: 24px;
}

@media screen and (min-width: 768px) {
  .uspArea__price .more:hover {
    background-color: rgba(255, 255, 255, 0.25);
  }
  .uspArea__price .more:hover .arrowSVG {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
}

@media (hover: hover) and (pointer: fine) {
  .uspArea__price .more:hover {
    background-color: rgba(255, 255, 255, 0.25);
  }
  .uspArea__price .more:hover .arrowSVG {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
}

.uspArea__price + .caption {
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .uspArea__price + .caption {
    margin-top: 10px;
    max-width: 960px;
  }
}

@media screen and (max-width: 768px) {
  .uspArea__price + .caption {
    margin-top: 10px;
    padding: 0 5px;
  }
}

.container:before {
  content: '';
  height: 100%;
  position: fixed;
  width: 100vw;
  z-index: 0;
}

@media screen and (min-width: 768px) {
  .container:before {
    background: url("../common/imgs/pc/bg-texture-01@2x.jpg") repeat center top;
  }
}

@media screen and (max-width: 768px) {
  .container:before {
    background: url("../common/imgs/sp/bg-texture-01.jpg") no-repeat center bottom;
  }
}

.top-usp {
  background-color: #ffffff;
  position: relative;
  z-index: 1;
}

.top-info {
  background-color: #ffffff;
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .top-info {
    margin: 0 auto;
    padding: 60px 0 20px;
  }
}

@media screen and (max-width: 768px) {
  .top-info {
    margin: 0 auto;
    padding: calc(60 / 390 * 100vw) 0 0;
  }
}

.top-concept {
  background-color: #262c1e;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .top-concept {
    padding-bottom: calc(250px * var(--windowVhScale));
  }
}

@media screen and (max-width: 768px) {
  .top-concept {
    padding-bottom: calc(220 / 390 * 100vw);
  }
}

.top-perth {
  position: relative;
}

@media screen and (min-width: 768px) {
  .top-perth {
    margin-top: calc(0 / 1440 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .top-perth {
    margin-top: calc(0 / 390 * 100vw);
  }
}

.top-concept {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

@media screen and (min-width: 768px) {
  .top-concept {
    gap: 40px;
    margin-top: 80px;
    padding: 40px 0 0;
  }
}

@media screen and (max-width: 768px) {
  .top-concept {
    gap: calc(20 / 390 * 100vw);
    margin-top: calc(60 / 390 * 100vw);
    padding: calc(100 / 390 * 100vw) 0 0;
  }
}

.conceptOutline {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .conceptOutline {
    padding-bottom: 60px;
  }
}

@media screen and (max-width: 768px) {
  .conceptOutline {
    padding: 0 20px calc(50 / 390 * 100vw);
  }
}

.conceptOutline__head {
  color: #c9bc9c;
  font-family: "Cinzel", serif;
}

.conceptOutline__ttl {
  font-size: 24px;
}

@media screen and (min-width: 768px) {
  .conceptOutline__logo {
    margin-top: 80px;
  }
}

@media screen and (max-width: 768px) {
  .conceptOutline__logo {
    margin-top: 60px;
  }
}

@media screen and (min-width: 768px) {
  .conceptOutline__enConcept {
    font-size: 28px;
    letter-spacing: .2em;
    margin-top: 24px;
  }
}

@media screen and (max-width: 768px) {
  .conceptOutline__enConcept {
    font-size: 16px;
    margin-top: 20px;
  }
}

.conceptOutline__body {
  color: #ffffff;
}

@media screen and (min-width: 768px) {
  .conceptOutline__body {
    margin-top: 40px;
  }
}

@media screen and (max-width: 768px) {
  .conceptOutline__body {
    margin-top: 24px;
  }
}

@media screen and (min-width: 768px) {
  .conceptOutline__jpConcept {
    font-size: 36px;
  }
}

@media screen and (max-width: 768px) {
  .conceptOutline__jpConcept {
    font-size: 18px;
  }
}

.conceptOutline__txt {
  line-height: 2;
}

@media screen and (min-width: 768px) {
  .conceptOutline__txt {
    font-size: 16px;
    margin-top: 28px;
  }
}

@media screen and (max-width: 768px) {
  .conceptOutline__txt {
    font-size: calc(14 / 390 * 100vw);
    margin-top: 20px;
  }
}

.lowLayerSect__inner {
  position: relative;
  z-index: 0;
}

.lowLayerSect__head {
  background-color: #262c1e;
  bottom: 0;
  left: 0;
  position: absolute;
  z-index: 1;
}

@media screen and (max-width: 768px) {
  .lowLayerSect__head {
    right: 24px;
  }
}

.lowLayerSect:nth-child(2n + 1) .lowLayerSect__head {
  left: auto;
  right: 0;
}

@media screen and (max-width: 768px) {
  .lowLayerSect:nth-child(2n + 1) .lowLayerSect__head {
    left: 24px;
  }
}

.lowLayerSect__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  position: relative;
}

@media screen and (min-width: 768px) {
  .lowLayerSect__link {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 24px 112px 24px 98px;
  }
}

@media screen and (max-width: 768px) {
  .lowLayerSect__link {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    padding: calc(20 / 390 * 100vw) calc(24 / 390 * 100vw) calc(20 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .lowLayerSect:nth-child(2n + 1) .lowLayerSect__link {
    padding: 24px 196px 24px 41px;
  }
}

@media screen and (min-width: 768px) {
  .lowLayerSect__link:before, .lowLayerSect__link:after {
    content: '';
  }
}

@media screen and (max-width: 768px) {
  .lowLayerSect__link:before, .lowLayerSect__link:after {
    content: none;
  }
}

.lowLayerSect__link:before {
  background-color: #ffffff;
  border-radius: 50%;
  height: 44px;
  position: absolute;
  right: 48px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out;
  width: 44px;
}

.lowLayerSect:nth-child(2n + 1) .lowLayerSect__link:before {
  right: 112px;
}

.lowLayerSect__link:after {
  border-bottom: 5px solid transparent;
  border-left: 9px solid #262c1e;
  border-top: 5px solid transparent;
  height: 0;
  position: absolute;
  right: 64px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out;
  width: 0;
}

.lowLayerSect:nth-child(2n + 1) .lowLayerSect__link:after {
  right: 128px;
}

.lowLayerSect__link:hover:before {
  -webkit-transform: translateY(-50%) scale(0.9);
          transform: translateY(-50%) scale(0.9);
}

.lowLayerSect__link:hover:after {
  -webkit-transform: translateY(-50%) scale(1.1);
          transform: translateY(-50%) scale(1.1);
}

.lowLayerSect__heading {
  color: #ffffff;
  font-family: "Cinzel", serif;
  line-height: 1;
  position: relative;
}

@media screen and (min-width: 768px) {
  .lowLayerSect__heading {
    font-size: 44px;
  }
}

@media screen and (max-width: 768px) {
  .lowLayerSect__heading {
    font-size: calc(32 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .lowLayerSect__heading:before, .lowLayerSect__heading:after {
    content: none;
  }
}

@media screen and (max-width: 768px) {
  .lowLayerSect__heading:before, .lowLayerSect__heading:after {
    content: '';
  }
}

.lowLayerSect__heading:before {
  background-color: #ffffff;
  border-radius: 50%;
  height: 30px;
  left: calc(100% + 24px);
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out;
  width: 30px;
}

.lowLayerSect:nth-child(2n + 1) .lowLayerSect__heading:before {
  right: 112px;
}

.lowLayerSect__heading:after {
  border-bottom: 5px solid transparent;
  border-left: 9px solid #262c1e;
  border-top: 5px solid transparent;
  height: 0;
  left: calc(100% + 35px);
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out;
  width: 0;
}

.lowLayerSect:nth-child(2n + 1) .lowLayerSect__heading:after {
  right: 128px;
}

.lowLayerSect__txt {
  color: #ffffff;
  letter-spacing: .1em;
  line-height: 2;
}

@media screen and (min-width: 768px) {
  .lowLayerSect__txt {
    font-size: 16px;
  }
}

@media screen and (max-width: 768px) {
  .lowLayerSect__txt {
    font-size: calc(13 / 390 * 100vw);
  }
}

.lowLayerSect__cont {
  position: relative;
}
