@charset "UTF-8";
#container {
  background-color: #fff;
  overflow: hidden;
}

.u-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.zehm_inner {
  max-width: 980px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1200px) {
  .zehm_inner {
    max-width: none;
    width: 81.6666666667vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_inner {
    width: 83.5%;
    max-width: none;
  }
}

/*--- MV ---*/
.zehm_mv {
  position: relative;
  line-height: 0;
}
.zehm_mv img {
  width: 100%;
  height: auto;
}

/*--- リード文 ---*/
.zehm_lead {
  font-size: 22px;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.1em;
  color: #231815;
  text-align: center;
  margin-top: 110px;
}
@media screen and (max-width: 1200px) {
  .zehm_lead {
    font-size: 1.8333333333vw;
    margin-top: 9.1666666667vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_lead {
    font-size: 2.9333333333vw;
    letter-spacing: 0.15em;
    margin-top: 15.7333333333vw;
  }
}

/*--- ZEH-Mロゴ ---*/
.zehm_logo {
  width: 305px;
  margin: 65px auto 0;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  .zehm_logo {
    width: 25.4166666667vw;
    margin-top: 5.4166666667vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_logo {
    width: 40.6666666667vw;
    margin-top: 9.3333333333vw;
  }
}
.zehm_logo img {
  width: 100%;
  height: auto;
}

/*--- 見出し2 ---*/
.zehm_heading {
  font-size: 22px;
  font-weight: 500;
  line-height: 2.2em;
  letter-spacing: 0.1em;
  color: #231815;
  text-align: center;
  margin-top: 70px;
}
@media screen and (max-width: 1200px) {
  .zehm_heading {
    font-size: 1.8333333333vw;
    margin-top: 5.8333333333vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_heading {
    font-size: 2.9333333333vw;
    margin-top: 9.3333333333vw;
  }
}

/*--- 本文共通 ---*/
.zehm_text {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.9;
  letter-spacing: 0.02em;
  color: #231815;
  margin-top: 45px;
}
@media screen and (max-width: 1200px) {
  .zehm_text {
    font-size: 1.1666666667vw;
    margin-top: 3.75vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_text {
    font-size: 1.8666666667vw;
    margin-top: 6vw;
  }
}
.zehm_text sup {
  font-size: 0.9em;
}

/*--- ZEHの説明文・出典（Figma実測どおり中央に幅を絞って配置） ---*/
.zehm_intro_text {
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1200px) {
  .zehm_intro_text {
    max-width: none;
    width: 62.5vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_intro_text {
    max-width: none;
    width: 71.6vw;
  }
}

.zehm_intro_source {
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1200px) {
  .zehm_intro_source {
    max-width: none;
    width: 62.5vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_intro_source {
    max-width: none;
    width: 71.6vw;
  }
}

/*--- 出典・注釈共通 ---*/
.zehm_source,
.zehm_note {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.02em;
  margin-top: 8px;
}
@media screen and (max-width: 1200px) {
  .zehm_source,
  .zehm_note {
    font-size: 1vw;
    margin-top: 0.6666666667vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_source,
  .zehm_note {
    font-size: 1.6vw;
    margin-top: 0.9333333333vw;
  }
}

/*--- BELSボックス ---*/
.zehm_bels {
  border: 1px solid #231815;
  text-align: left;
  padding: 6px 20px 5px 12px;
  margin-top: 90px;
}
@media screen and (max-width: 1200px) {
  .zehm_bels {
    padding: 0.5vw 1.6666666667vw 0.4166666667vw 1vw;
    margin-top: 7.5vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_bels {
    padding: 1.0666666667vw 2.6666666667vw 1.2vw 2vw;
    margin-top: 11.3333333333vw;
  }
}
.zehm_bels_ttl, .zehm_bels_txt {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.02em;
  color: #231815;
}
@media screen and (max-width: 1200px) {
  .zehm_bels_ttl, .zehm_bels_txt {
    font-size: 1.3333333333vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_bels_ttl, .zehm_bels_txt {
    font-size: 2.1333333333vw;
  }
}
.zehm_bels_txt {
  margin-top: 0.3em;
}

/*--- BELS説明文 + 星表/UA表 + 証書エリア ---
  PC: 説明文/注釈は全幅、その下に「星表+UA表」と「証書」が横並び
  SP: 証書は説明文・注釈の右側に配置される独自レイアウト（Figma実測に基づく） */
.zehm_bels_area {
  display: grid;
  grid-template-columns: 1fr 207px;
  -moz-column-gap: 34px;
       column-gap: 34px;
  grid-template-areas: "text text" "note note" "row  cert";
  align-items: start;
  margin-top: 19px;
}
@media screen and (max-width: 1200px) {
  .zehm_bels_area {
    -moz-column-gap: 2.8333333333vw;
         column-gap: 2.8333333333vw;
    grid-template-columns: 1fr 17.25vw;
    margin-top: 1.5833333333vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_bels_area {
    grid-template-columns: 1fr 27.6vw;
    -moz-column-gap: 2vw;
         column-gap: 2vw;
    grid-template-areas: "text cert" "note cert" "row  row";
    margin-top: 3.3333333333vw;
  }
}
.zehm_bels_area_text {
  grid-area: text;
  margin-top: 0 !important;
}
.zehm_bels_area_note {
  grid-area: note;
}
@media screen and (max-width: 768px) {
  .zehm_bels_area_note {
    text-indent: -1em;
    padding-left: 1em;
    position: relative;
    top: -3.5em;
  }
}
.zehm_bels_area_row {
  grid-area: row;
  margin-top: 22px;
}
@media screen and (max-width: 1200px) {
  .zehm_bels_area_row {
    margin-top: 1.8333333333vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_bels_area_row {
    margin-top: 3.7333333333vw;
  }
}
.zehm_bels_area_cert {
  grid-area: cert;
  width: 207px;
}
@media screen and (max-width: 1200px) {
  .zehm_bels_area_cert {
    width: 17.25vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_bels_area_cert {
    width: 27.6vw;
  }
}

/*--- ■見出し + 表エリア（星表 / UA・ηAC表 の2カラム） ---*/
.zehm_row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 710px;
}
@media screen and (max-width: 1200px) {
  .zehm_row {
    width: 59.1666666667vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_row {
    width: 100%;
  }
}
.zehm_row_col {
  width: 270px;
}
@media screen and (max-width: 1200px) {
  .zehm_row_col {
    width: 22.5vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_row_col {
    width: 32.2666666667vw;
  }
}
.zehm_row_col + .zehm_row_col {
  width: 400px;
}
@media screen and (max-width: 1200px) {
  .zehm_row_col + .zehm_row_col {
    width: 33.3333333333vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_row_col + .zehm_row_col {
    width: 45.0666666667vw;
  }
}
.zehm_row_heading {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: #231815;
}
@media screen and (max-width: 1200px) {
  .zehm_row_heading {
    font-size: 1.1666666667vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_row_heading {
    font-size: 2.4vw;
  }
}
.zehm_row_text {
  font-size: 11px;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.02em;
  color: #231815;
  margin-top: 0.8em;
}
@media screen and (max-width: 1200px) {
  .zehm_row_text {
    font-size: 0.9166666667vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_row_text {
    font-size: 1.8666666667vw;
  }
}
.zehm_row_img {
  margin-top: 12px;
}
@media screen and (max-width: 1200px) {
  .zehm_row_img {
    margin-top: 1vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_row_img {
    margin-top: 2vw;
  }
}
.zehm_row_img img {
  width: 100%;
  height: auto;
}
.zehm_row_note {
  font-size: 10px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.02em;
  margin-top: 9px;
}
@media screen and (max-width: 1200px) {
  .zehm_row_note {
    font-size: 0.8333333333vw;
    margin-top: 0.75vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_row_note {
    font-size: 1.4666666667vw;
    margin-top: 1.6vw;
    text-align: right;
    text-indent: -1em;
    padding-left: 1em;
  }
}
.zehm_row_cert_img {
  width: 207px;
}
@media screen and (max-width: 1200px) {
  .zehm_row_cert_img {
    width: 17.25vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_row_cert_img {
    width: 27.6vw;
  }
}
.zehm_row_cert_img img {
  width: 100%;
  height: auto;
}
.zehm_row_cert_note {
  font-size: 10px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: -0.02em;
  margin-top: 6px;
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (max-width: 1200px) {
  .zehm_row_cert_note {
    font-size: 0.8333333333vw;
    margin-top: 0.5vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_row_cert_note {
    font-size: 1.6vw;
    margin-top: 1.0666666667vw;
    letter-spacing: 0.02em;
  }
}

/*--- 高効率設備 / 断熱性の向上 ---*/
.zehm_energy {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-top: 40px;
}
@media screen and (max-width: 1200px) {
  .zehm_energy {
    margin-top: 3.3333333333vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_energy {
    display: block;
    margin-top: 5.2vw;
  }
}
.zehm_energy_col {
  width: 345px;
}
@media screen and (max-width: 1200px) {
  .zehm_energy_col {
    width: 28.75vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_energy_col {
    width: 100%;
  }
}
.zehm_energy_col + .zehm_energy_col {
  width: 600px;
}
@media screen and (max-width: 1200px) {
  .zehm_energy_col + .zehm_energy_col {
    width: 50vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_energy_col + .zehm_energy_col {
    width: 100%;
    margin-top: 5.0666666667vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_energy_col_row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  .zehm_energy_col_body {
    width: 50.2666666667vw;
  }
}
.zehm_energy_col_body .zehm_mid_heading,
.zehm_energy_col_body .zehm_text {
  margin-top: 18px;
}
@media screen and (max-width: 1200px) {
  .zehm_energy_col_body .zehm_mid_heading,
  .zehm_energy_col_body .zehm_text {
    margin-top: 1.5vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_energy_col_body .zehm_mid_heading,
  .zehm_energy_col_body .zehm_text {
    width: 120%;
    margin-top: 2.6666666667vw;
  }
}
.zehm_energy_col_body .zehm_text {
  margin-top: 15px;
}
@media screen and (max-width: 1200px) {
  .zehm_energy_col_body .zehm_text {
    margin-top: 1.25vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_energy_col_body .zehm_text {
    margin-top: 2.4vw;
  }
}
.zehm_energy .zehm_energy_col + .zehm_energy_col .zehm_mid_heading {
  margin-top: 18px;
}
@media screen and (max-width: 1200px) {
  .zehm_energy .zehm_energy_col + .zehm_energy_col .zehm_mid_heading {
    margin-top: 1.5vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_energy .zehm_energy_col + .zehm_energy_col .zehm_mid_heading {
    margin-top: 3.0666666667vw;
  }
}
.zehm_energy .zehm_energy_col + .zehm_energy_col .zehm_text {
  margin-top: 15px;
}
@media screen and (max-width: 1200px) {
  .zehm_energy .zehm_energy_col + .zehm_energy_col .zehm_text {
    margin-top: 1.25vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_energy .zehm_energy_col + .zehm_energy_col .zehm_text {
    margin-top: 2.4vw;
  }
}
.zehm_energy_img {
  margin-top: 30px;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  .zehm_energy_img {
    margin-top: 2.5vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_energy_img {
    margin-top: 0.6666666667vw;
  }
}
.zehm_energy_img img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .zehm_energy_col_row .zehm_energy_img {
    width: 45.7333333333vw;
    margin-top: 4.5333333333vw;
    flex-shrink: 0;
  }
}
@media screen and (max-width: 768px) {
  .zehm_energy_col + .zehm_energy_col .zehm_energy_img {
    margin-top: 0.6666666667vw;
  }
}
.zehm_energy .zehm_source {
  margin-top: 16px;
  text-align: right;
}
@media screen and (max-width: 1200px) {
  .zehm_energy .zehm_source {
    margin-top: 1.3333333333vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_energy .zehm_source {
    margin-top: 1.6vw;
  }
}

/*--- 緑帯見出し ---*/
.zehm_band {
  background-color: #5a8470;
  text-align: left;
  padding: 0.5em 0 0.5em 12px;
}
@media screen and (max-width: 1200px) {
  .zehm_band {
    padding: 0.5em 0 0.5em 1vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_band {
    padding: 0.3em 0 0.3em 2.4vw;
  }
}
.zehm_band p {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #fff;
}
@media screen and (max-width: 1200px) {
  .zehm_band p {
    font-size: 1.0833333333vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_band p {
    font-size: 2.1333333333vw;
  }
}

/*--- 中見出し ---*/
.zehm_mid_heading {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: #231815;
}
@media screen and (max-width: 1200px) {
  .zehm_mid_heading {
    font-size: 1.1666666667vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_mid_heading {
    font-size: 2.4vw;
  }
}

/*--- コンテンツ全体の上下余白 ---*/
.zehm_content {
  padding-bottom: 187px;
}
@media screen and (max-width: 1200px) {
  .zehm_content {
    padding-bottom: 15.5833333333vw;
  }
}
@media screen and (max-width: 768px) {
  .zehm_content {
    padding-bottom: 31.2vw;
  }
}/*# sourceMappingURL=style_zeh-m.css.map */