.main-visual .page-name {
  color: #000;
}

.roomplan:not(:first-of-type) {
  margin-top: 10rem;
}

.roomplan-header {
  background-color: #e2e1d9;
  position: relative;
  text-align: center;
  padding: 4rem 5%;
  z-index: -1;
}
.roomplan-header::before {
  content: "";
  background: url(../img/common/bg_wave.png) no-repeat;
  background-size: 100% auto;
  position: absolute;
  left: 4rem;
  top: 0;
  z-index: -1;
  width: 35.4rem;
  height: 26.4rem;
}
.roomplan-header .copy {
  font-size: 3rem;
  line-height: 1.5;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.05em;
}
.roomplan-header .text {
  font-size: 1.4rem;
  line-height: 2.2;
  margin-top: 2rem;
  letter-spacing: 0.05em;
}
.roomplan-header .logo {
  margin-top: 2rem;
}

.roomplan-body {
  --plan-width: 562px;
  width: 90%;
  margin-inline: auto;
  margin-top: 6rem;
}
.roomplan-body .catch-copy {
  max-width: 850px;
  margin-inline: auto;
  font-size: 2rem;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.1em;
  border-bottom: 1px solid #000;
  text-align: center;
  padding-bottom: 1.5rem;
}
.roomplan-body .spec {
  max-width: var(--plan-width);
  margin-inline: auto;
  margin-top: 6rem;
}
.roomplan-body .merit {
  max-width: var(--plan-width);
  margin-inline: auto;
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 8px;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.roomplan-body .merit li {
  display: grid;
  grid-template-columns: 1.8rem 1fr;
  gap: 3px;
  font-size: 1.5rem;
  line-height: 1.2;
  color: #727171;
}
.roomplan-body .merit li .number {
  color: #fff;
  background-color: #b70004;
  border-radius: 50%;
  width: 1.8rem;
  height: 1.8rem;
  text-align: center;
}
.roomplan-body .figure {
  margin-inline: auto;
  margin-top: 4rem;
}
.roomplan-body .equipment {
  max-width: var(--plan-width);
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;
  margin-top: 4rem;
}
.roomplan-body .equipment li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #eef4fb;
  border: 1px solid #5688b2;
  color: #5688b2;
  font-size: 11px;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  text-align: center;
  padding: 1rem 2px;
  line-height: 1;
}
.roomplan-body .equipment li:nth-child(1) {
  background-color: #5688b2;
  color: #fff;
}
.roomplan-body .bels {
  max-width: 310px;
  margin-inline: auto;
  margin-top: 4rem;
}
.roomplan-body .bels .note {
  margin-top: 10px;
}

.page-caption {
  width: 90%;
  max-width: 1100px;
  margin-top: 6rem;
  margin-inline: auto;
}

.daiwa-house .roomplan-body .figure {
  max-width: 591px;
}
.daiwa-house .roomplan-body .equipment li {
  background-color: #f7f5e6;
  border: 1px solid #ada177;
  color: #ada177;
}
.daiwa-house .roomplan-body .equipment li:nth-child(-n+2) {
  background-color: #ada177;
  color: #fff;
}

.koguma-home .roomplan-body .figure {
  max-width: 365px;
}

.ishida .roomplan-header .logo {
  mix-blend-mode: multiply;
}
.ishida .roomplan-body .figure {
  max-width: 427px;
}

@media (max-width: 960px) {
  .roomplan-body .equipment {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 520px) {
  .roomplan-header::before {
    left: 0;
    width: 24.8rem;
    height: 18.3rem;
  }
  .roomplan-body .spec img {
    width: 100%;
    height: auto;
  }
  .roomplan-body .equipment {
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
  }
}