.equipmentBlock__visual .photo__image {
  width: 100%;
}

.equipmentBlock__ttl {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #263d5a;
  color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px 24px;
  padding: 6px 8px 9px 8px;
}

.equipmentBlock__ttl .txt {
  font-size: 16px;
  line-height: 1.2;
}

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

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

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

@media screen and (max-width: 768px) {
  .equipmentBlock__ttl .txt {
    font-size: 14px;
  }
}

.equipmentBlock__ttl .txt .caption {
  padding-top: 0;
}

.equipmentBlock__ttl:has(.equipmentBlock__label) {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.equipmentBlock__ttlCap {
  color: #999999;
  font-size: 10px;
}

* + .equipmentBlock__ttlCap {
  margin-top: 6px;
}

.equipmentBlock__label {
  background-color: #e6e6d9;
  color: #ffffff;
  display: inline-block;
  font-size: 11px;
  line-height: 1.5;
  padding: 2px 6px;
}

.equipmentBlock__desc .txt {
  font-size: 12px;
}

@media screen and (max-width: 768px) {
  .equipmentBlock__desc .txt {
    font-size: 11px;
  }
}

* + .equipmentBlock__desc {
  margin-top: 16px;
}

.equipmentBlock__cap {
  color: #999999;
  font-size: 10px;
}

* + .equipmentBlock__cap {
  margin-top: 9px;
}

@media print, screen and (min-width: 768px) {
  .equipmentBlock--ttlCap .equipmentBlock__ttl .txt {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

.equipmentSect__head .heading + .heading {
  margin-top: 30px;
}

.equipmentSect__cont .blockList + .heading {
  margin-top: 30px;
}

.equipmentSect__cont .blockList + .blockList {
  margin-top: 35px;
}

.equipmentSect__cont .heading + .blockList {
  margin-top: 30px;
}

@media print, screen and (min-width: 768px) {
  .equipmentSect__head + .equipmentSect__cont {
    margin-top: 30px;
  }
}

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

.featureDesc {
  border-bottom: 1px solid #cbcccc;
  padding-bottom: 24px;
}

@media print, screen and (min-width: 768px) {
  .featureDesc {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    display: grid;
    gap: 20px;
    grid-template-columns: auto;
    grid-template-rows: -webkit-min-content 1fr;
    grid-template-rows: min-content 1fr;
    height: 100%;
  }
}

@media print, screen and (min-width: 768px) {
  .featureDesc__head {
    grid-column: 1 / 3;
  }
}

.featureDesc__ttl {
  background-color: #263d5a;
  color: #ffffff;
  line-height: 1.5;
  padding: 6px 0 6px 12px;
}

@media print, screen and (min-width: 768px) {
  .featureDesc__cont {
    grid-row: auto / span 2;
    padding: 0 0 0 20px;
  }
}

@media screen and (max-width: 768px) {
  .featureDesc__cont {
    padding: 0 0 0 10px;
  }
}

@media screen and (max-width: 768px) {
  * + .featureDesc__cont {
    margin-top: 12px;
  }
}

@media print, screen and (min-width: 768px) {
  .featureDesc__desc .txt {
    font-size: 12px;
  }
}

@media screen and (max-width: 768px) {
  .featureDesc__desc .txt {
    font-size: 11px;
  }
}

* + .featureDesc__desc {
  margin-top: 20px;
}

.featureDesc__visual {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media print, screen and (min-width: 768px) {
  .featureDesc__visual {
    grid-column: 2 / 3;
    grid-row: 2 / 3;
  }
}

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

.featureDesc--border {
  border: 1px solid #cbcccc;
}

@media print, screen and (min-width: 768px) {
  .lifeSect__cont {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0 20px;
  }
}

* + .lifeSect__cont {
  margin-top: 30px;
}

@media print, screen and (min-width: 768px) {
  .lifeSect__featureDesc {
    width: 320px;
  }
}

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

.lifeSect__iconArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 16px 22px;
}

@media print, screen and (min-width: 768px) {
  .lifeSect__iconArea {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media screen and (max-width: 768px) {
  .lifeSect__iconArea {
    margin: 0 auto;
    width: 278px;
  }
}

* + .lifeSect__iconArea {
  margin-top: 32px;
}

@media print, screen and (min-width: 768px) {
  .storageSect__cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0 20px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

* + .storageSect__cont {
  margin-top: 32px;
}

@media print, screen and (min-width: 768px) {
  .storageSect__figure {
    width: 320px;
  }
}

@media print, screen and (min-width: 768px) {
  .storageSect__features {
    width: 660px;
  }
}

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

@media print, screen and (min-width: 768px) {
  .equipment-intro {
    padding: 100px 0;
  }
}

@media screen and (max-width: 768px) {
  .equipment-intro {
    padding: 60px 0;
  }
}

@media print, screen and (min-width: 768px) {
  .equipment-kitchen,
  .equipment-sanitary,
  .equipment-bathroom,
  .equipment-life,
  .equipment-others,
  .equipment-comfort {
    padding: 0 0 100px;
  }
}

@media screen and (max-width: 768px) {
  .equipment-kitchen,
  .equipment-sanitary,
  .equipment-bathroom,
  .equipment-life,
  .equipment-others,
  .equipment-comfort {
    padding: 0 0 60px;
  }
}

@media print, screen and (min-width: 768px) {
  * + .equipment-others .equipmentSect__storage {
    margin-top: 64px;
  }
}

@media screen and (max-width: 768px) {
  * + .equipment-others .equipmentSect__storage {
    margin-top: 40px;
  }
}
