.keyVisual {
  z-index: 2;
}
@media only screen and (max-width: 767px) {
  .keyVisual__image .photo .cap--inLeft {
    bottom: 11.4666666667vw;
  }
}

.equipment-kitchen {
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 768px) {
  .equipment-kitchen {
    padding: 172px 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .equipment-kitchen {
    padding: 21.3333333333vw 0 0;
  }
}
.equipment-kitchen:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  z-index: -1;
}
@media only screen and (min-width: 768px) {
  .equipment-kitchen:before {
    background: #2a2828 url("../img/pc/bg-contents-01@1.5x.png") no-repeat top center;
    background-size: auto 100%;
    height: 111.1111111111vw;
  }
}
@media only screen and (max-width: 767px) {
  .equipment-kitchen:before {
    background: url("../img/sp/bg-contents-01.png") no-repeat top center;
    background-size: 100% auto;
    height: 306.1333333333vw;
  }
}

.equipment-lavatory {
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 768px) {
  .equipment-lavatory {
    padding: 156px 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .equipment-lavatory {
    padding: 27.4666666667vw 0 0;
  }
}

.equipment-comfort {
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 768px) {
  .equipment-comfort {
    padding: 156px 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .equipment-comfort {
    padding: 27.4666666667vw 0 0;
  }
}

.equipment-security {
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 768px) {
  .equipment-security {
    padding: 156px 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .equipment-security {
    padding: 27.4666666667vw 0 0;
  }
}

.equipment-structure {
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 768px) {
  .equipment-structure {
    padding: 156px 0 240px;
  }
}
@media only screen and (max-width: 767px) {
  .equipment-structure {
    padding: 27.4666666667vw 0;
  }
}
.equipment-structure:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  z-index: -1;
}
@media only screen and (min-width: 768px) {
  .equipment-structure:before {
    background: url("../img/pc/bg-contents-02@1.5x.png") no-repeat top center;
    background-size: auto 100%;
    height: 111.1111111111vw;
  }
}
@media only screen and (max-width: 767px) {
  .equipment-structure:before {
    background: url("../img/sp/bg-contents-02.png") no-repeat top center;
    background-size: 100% auto;
    height: 306.1333333333vw;
  }
}

@media only screen and (min-width: 768px) {
  .equipmentSect {
    max-width: 960px;
    margin: 0 auto;
  }
}
.equipmentSect__ttl {
  font-family: "Cormorant Garamond", serif;
  letter-spacing: 0.1em;
  position: relative;
  z-index: 1;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .equipmentSect__ttl {
    font-size: 32px;
    padding-bottom: 25px;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentSect__ttl {
    font-size: 6.4vw;
    padding-bottom: 5.3333333333vw;
  }
}
.equipmentSect__ttl:after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.3);
  position: absolute;
  bottom: 0;
  left: 0;
}
.equipmentSect__ttl .inner {
  line-height: calc(1.1666666667);
}
.equipmentSect__ttl .inner:before {
  content: "";
  display: block;
  height: 0;
  width: 0;
  margin-top: calc((1 - 1.1666666667) * 0.5em);
}
.equipmentSect__ttl .inner:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
  margin-bottom: calc((1 - 1.1666666667) * 0.5em);
}
.equipmentSect__ttl .gold {
  display: inline-block;
  background: linear-gradient(0deg, #9f4f23 0%, rgb(188, 121, 78) 25%, rgb(236, 175, 131) 40%, rgb(247, 203, 168) 50%, rgb(236, 175, 131) 60%, rgba(188, 121, 78, 0.7) 75%, rgba(159, 79, 35, 0.7) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
@media only screen and (min-width: 768px) {
  .equipmentSect__head + .equipmentSect__cont {
    margin-top: 52px;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentSect__head + .equipmentSect__cont {
    margin-top: 8.9333333333vw;
  }
}

.equipmentGallery {
  display: grid;
}
@media only screen and (min-width: 768px) {
  .equipmentGallery {
    grid-template-columns: repeat(6, 1fr);
    gap: 40px 30px;
    grid-auto-flow: dense;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentGallery {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px 10px;
  }
}
@media only screen and (min-width: 768px) {
  .equipmentGallery__item {
    grid-column: auto/span 2;
  }
}
@media only screen and (min-width: 768px) {
  .equipmentGallery__item--row {
    grid-column: auto/span 6;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentGallery__item--row {
    grid-column: auto/span 2;
  }
}
@media only screen and (min-width: 768px) {
  .equipmentGallery__item--full {
    grid-column: auto/span 6;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentGallery__item--full {
    grid-column: auto/span 2;
  }
}
@media only screen and (min-width: 768px) {
  .equipmentGallery__item--half {
    grid-column: auto/span 3;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentGallery__item--half {
    grid-column: auto/span 2;
  }
}
@media only screen and (min-width: 768px) {
  .equipmentGallery__item--large {
    grid-column: auto/span 4;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentGallery__item--large {
    grid-column: auto/span 2;
  }
}
.equipmentGallery__item--col {
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (min-width: 768px) {
  .equipmentGallery__item--col {
    gap: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentGallery__item--col {
    flex-direction: column;
  }
}
@media only screen and (min-width: 768px) {
  .equipmentGallery__item--col .photo {
    width: calc(50% - 15px);
  }
}
@media only screen and (min-width: 768px) {
  .equipmentGallery + .cap {
    margin-top: 65px;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentGallery + .cap {
    margin-top: 10.6666666667vw;
  }
}

@media only screen and (min-width: 768px) {
  .equipmentCard__head + .equipmentCard__desc {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentCard__head + .equipmentCard__desc {
    margin-top: 4.2666666667vw;
  }
}
.equipmentCard__heading {
  letter-spacing: 0.1em;
  line-height: calc(1.2222222222);
}
.equipmentCard__heading:before {
  content: "";
  display: block;
  height: 0;
  width: 0;
  margin-top: calc((1 - 1.2222222222) * 0.5em);
}
.equipmentCard__heading:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
  margin-bottom: calc((1 - 1.2222222222) * 0.5em);
}
@media only screen and (min-width: 768px) {
  .equipmentCard__heading {
    font-size: 18px;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentCard__heading {
    font-size: 3.7333333333vw;
  }
}
@media only screen and (min-width: 768px) {
  .equipmentCard__heading sup {
    font-size: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentCard__heading sup {
    font-size: 2.6666666667vw;
  }
}
.equipmentCard__txt {
  letter-spacing: 0.1em;
  line-height: calc(2);
}
.equipmentCard__txt:before {
  content: "";
  display: block;
  height: 0;
  width: 0;
  margin-top: calc((1 - 2) * 0.5em);
}
.equipmentCard__txt:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
  margin-bottom: calc((1 - 2) * 0.5em);
}
@media only screen and (min-width: 768px) {
  .equipmentCard__txt {
    font-size: 13px;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentCard__txt {
    font-size: 3.2vw;
  }
}
.equipmentCard__txt .cap {
  display: block;
}
@media only screen and (min-width: 768px) {
  .equipmentCard__heading + .equipmentCard__txt {
    margin-top: 24px;
  }
}
@media only screen and (max-width: 767px) {
  .equipmentCard__heading + .equipmentCard__txt {
    margin-top: 4vw;
  }
}

.selectBox {
  background-color: #3b3939;
}
@media only screen and (min-width: 768px) {
  .selectBox {
    padding: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .selectBox {
    padding: 8.5333333333vw 4.6666666667vw;
  }
}
@media only screen and (min-width: 768px) {
  * + .selectBox {
    margin-top: 50px;
  }
}
@media only screen and (max-width: 767px) {
  * + .selectBox {
    margin-top: 10.1333333333vw;
  }
}
.selectBox__head {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
@media only screen and (min-width: 768px) {
  .selectBox__head .selectCard {
    width: calc((100% - 30px) / 4);
  }
}
@media only screen and (max-width: 767px) {
  .selectBox__head .selectCard {
    width: calc(50% - 5px);
  }
}
@media only screen and (min-width: 768px) {
  .selectBox__head + .selectBox__desc {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 767px) {
  .selectBox__head + .selectBox__desc {
    margin-top: 8.5333333333vw;
  }
}
.selectBox__heading {
  letter-spacing: 0.1em;
  line-height: calc(1.2222222222);
}
.selectBox__heading:before {
  content: "";
  display: block;
  height: 0;
  width: 0;
  margin-top: calc((1 - 1.2222222222) * 0.5em);
}
.selectBox__heading:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
  margin-bottom: calc((1 - 1.2222222222) * 0.5em);
}
@media only screen and (min-width: 768px) {
  .selectBox__heading {
    font-size: 18px;
  }
}
@media only screen and (max-width: 767px) {
  .selectBox__heading {
    font-size: 3.7333333333vw;
  }
}
@media only screen and (min-width: 768px) {
  .selectBox__heading .small {
    font-size: 13px;
  }
}
@media only screen and (max-width: 767px) {
  .selectBox__heading .small {
    font-size: 3.2vw;
  }
}
.selectBox__txt {
  letter-spacing: 0.1em;
  line-height: calc(2);
}
.selectBox__txt:before {
  content: "";
  display: block;
  height: 0;
  width: 0;
  margin-top: calc((1 - 2) * 0.5em);
}
.selectBox__txt:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
  margin-bottom: calc((1 - 2) * 0.5em);
}
@media only screen and (min-width: 768px) {
  .selectBox__txt {
    font-size: 13px;
  }
}
@media only screen and (max-width: 767px) {
  .selectBox__txt {
    font-size: 3.2vw;
  }
}
.selectBox__txt .cap {
  display: block;
}
@media only screen and (min-width: 768px) {
  .selectBox__heading + .selectBox__txt {
    margin-top: 24px;
  }
}
@media only screen and (max-width: 767px) {
  .selectBox__heading + .selectBox__txt {
    margin-top: 4vw;
  }
}

.selectCard {
  position: relative;
  z-index: 1;
}
.selectCard__ttl {
  font-family: "Cormorant Garamond", serif;
  position: absolute;
  z-index: 2;
  color: #2a2828;
  line-height: 1;
  letter-spacing: 0;
}
@media only screen and (min-width: 768px) {
  .selectCard__ttl {
    bottom: 5px;
    right: 10px;
    font-size: 24px;
  }
}
@media only screen and (max-width: 767px) {
  .selectCard__ttl {
    font-size: 5.3333333333vw;
    bottom: 1.3333333333vw;
    right: 1.3333333333vw;
  }
}
.selectCard--dark .selectCard__ttl {
  color: #ffffff;
  text-shadow: 0px 0px 10px rgba(4, 0, 0, 0.7), 1px 0px 10px rgba(4, 0, 0, 0.7), -1px 0px 10px rgba(4, 0, 0, 0.7);
}