@charset "UTF-8";
/************************************************
    地図
*************************************************/
.map {
  inline-size: 100%;
  block-size: 31.25em;
}

/************************************************
    Reason
*************************************************/
.reason {
  font-size: 0.6875rem;
  mix-blend-mode: multiply;
  padding-block-end: 6.25em;
  padding-inline: var(--gutter);
}
@supports not (padding-inline: var(--gutter)) {
  .reason {
    padding-inline-start: var(--gutter);
    padding-inline-end: var(--gutter);
  }
}
.reason {
  position: relative;
}
@media (min-width: 48rem) {
  .reason {
    font-size: 0.8333333333vw;
    font-size: 0.8333333333vi;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: 1fr repeat(2, auto) 1fr;
    padding-block-end: 0;
  }
}
@media (min-width: 1920px) {
  .reason {
    font-size: 1em;
  }
}
.reason__thumbnail {
  display: block;
  margin-inline: calc(var(--gutter) * -1);
}
@supports not (margin-inline: calc(var(--gutter) * -1)) {
  .reason__thumbnail {
    margin-inline-start: calc(var(--gutter) * -1);
    margin-inline-end: calc(var(--gutter) * -1);
  }
}
@media (min-width: 48rem) {
  .reason__thumbnail {
    -ms-grid-row: 1;
    -ms-grid-row-span: 4;
    grid-row: 1 / -1;
  }
}
@media (min-width: 48rem) {
  .reason:nth-of-type(odd) .reason__thumbnail {
    grid-column: 1;
    margin-inline-end: 0;
  }
}
@media (min-width: 48rem) {
  .reason:nth-of-type(even) .reason__thumbnail {
    grid-column: 2;
    margin-inline-start: 0;
  }
}
.reason__thumbnail img {
  inline-size: 100%;
}
.reason-gallery {
  margin-inline: calc(var(--gutter) * -1);
}
@supports not (margin-inline: calc(var(--gutter) * -1)) {
  .reason-gallery {
    margin-inline-start: calc(var(--gutter) * -1);
    margin-inline-end: calc(var(--gutter) * -1);
  }
}
@media (min-width: 48rem) {
  .reason-gallery {
    -ms-grid-row: 1;
    -ms-grid-row-span: 4;
    grid-row: 1 / -1;
  }
}
@media (min-width: 48rem) {
  .reason:nth-of-type(odd) .reason-gallery {
    grid-column: 1;
    margin-inline-end: 0;
  }
}
@media (min-width: 48rem) {
  .reason:nth-of-type(even) .reason-gallery {
    grid-column: 2;
    margin-inline-start: 0;
  }
}
.reason-gallery img {
  inline-size: 100%;
}
.reason-gallery .swiper-pagination {
  -js-display: flex;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: auto;
  position: absolute;
  inset-block-end: 1.25em;
}
@supports not (inset-block-end: 1.25em) {
  .reason-gallery .swiper-pagination {
    bottom: 1.25em;
  }
}
.reason-gallery .swiper-pagination {
  inset-inline-start: 0;
}
@supports not (inset-inline-start: 0) {
  .reason-gallery .swiper-pagination {
    left: 0;
  }
}
.reason-gallery .swiper-pagination {
  inset-inline-end: 0;
}
@supports not (inset-inline-end: 0) {
  .reason-gallery .swiper-pagination {
    right: 0;
  }
}
.reason-gallery .swiper-pagination {
  z-index: 2;
}
.reason-gallery .swiper-pagination-bullet {
  display: block;
  background-color: #444;
  inline-size: 0.625em;
  block-size: 0.625em;
  border-radius: 50%;
  margin: 0.625em;
  cursor: pointer;
}
.reason-gallery .swiper-pagination-bullet-active {
  background-color: var(--theme-color);
}
.reason__title {
  font-size: 2.25em;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.8333333333;
  margin-block: 1em 0;
}
@supports not (margin-block: 1em 0) {
  .reason__title {
    margin-block-start: 1em;
    margin-block-end: 0;
  }
}
.reason__title {
  position: relative;
  z-index: 2;
}
@media (min-width: 48rem) {
  .reason__title {
    grid-row: 2;
    inline-size: 31.25vi;
    margin-block-start: calc((1lh - 1em) / -2);
  }
  @supports not (margin-block-start: calc((1lh - 1em) / -2)) {
    .reason__title {
      margin-block-start: -0.4166666667em;
    }
  }
}
@media (min-width: 48rem) {
  .reason:nth-of-type(odd) .reason__title {
    grid-column: 2;
    justify-self: start;
    margin-inline-start: 2.0833333333vi;
  }
}
@media (min-width: 48rem) {
  .reason:nth-of-type(even) .reason__title {
    grid-column: 1;
    justify-self: end;
    margin-inline-end: 2.0833333333vi;
  }
}
.reason .content {
  margin-block: 2.4444444444em calc((1lh - 1em) / -2);
}
@supports not (margin-block: 2.4444444444em calc((1lh - 1em) / -2)) {
  .reason .content {
    margin-block-start: 2.4444444444em;
    margin-block-end: calc((1lh - 1em) / -2);
  }
}
.reason .content {
  position: relative;
  z-index: 2;
}
@supports not (margin-block-end: calc((1lh - 1em) / -2)) {
  .reason .content {
    margin-block-end: -0.5em;
  }
}
@media (min-width: 48rem) {
  .reason .content {
    grid-row: 3;
    inline-size: 31.25vi;
  }
}
@media (min-width: 48rem) {
  .reason:nth-of-type(odd) .content {
    grid-column: 2;
    justify-self: start;
    margin-inline-start: 2.0833333333vi;
  }
}
@media (min-width: 48rem) {
  .reason:nth-of-type(even) .content {
    grid-column: 1;
    justify-self: end;
    margin-inline-end: 2.0833333333vi;
  }
}

.reasons {
  background: no-repeat center / cover;
}
@supports ((background-image: -webkit-image-set(url("../img/reasons.webp") 1x, url("../img/reasons@2x.webp") 2x, url("../img/reasons@3x.webp") 3x)) or (background-image: image-set(url("../img/reasons.webp") 1x, url("../img/reasons@2x.webp") 2x, url("../img/reasons@3x.webp") 3x))) {
  .webp .reasons {
    background-image: -webkit-image-set(url("../img/reasons.webp") 1x, url("../img/reasons@2x.webp") 2x, url("../img/reasons@3x.webp") 3x);
    background-image: image-set(url("../img/reasons.webp") 1x, url("../img/reasons@2x.webp") 2x, url("../img/reasons@3x.webp") 3x);
  }
}
@supports ((background-image: -webkit-image-set(url("../img/reasons.png") 1x, url("../img/reasons@2x.png") 2x, url("../img/reasons@3x.png") 3x)) or (background-image: image-set(url("../img/reasons.png") 1x, url("../img/reasons@2x.png") 2x, url("../img/reasons@3x.png") 3x))) {
  .no-webp .reasons {
    background-image: -webkit-image-set(url("../img/reasons.png") 1x, url("../img/reasons@2x.png") 2x, url("../img/reasons@3x.png") 3x);
    background-image: image-set(url("../img/reasons.png") 1x, url("../img/reasons@2x.png") 2x, url("../img/reasons@3x.png") 3x);
  }
}
@supports not ((background-image: -webkit-image-set(url("../img/reasons.webp") 1x, url("../img/reasons@2x.webp") 2x, url("../img/reasons@3x.webp") 3x)) or (background-image: image-set(url("../img/reasons.webp") 1x, url("../img/reasons@2x.webp") 2x, url("../img/reasons@3x.webp") 3x))) {
  .reasons {
    background-image: url("../img/reasons.webp");
  }
  @media screen and (min-resolution: 2dppx) {
    .webp .reasons {
      background-image: url("../img/reasons@2x.webp");
    }
  }
  @media screen and (min-resolution: 3dppx) {
    .webp .reasons {
      background-image: url("../img/reasons@3x.webp");
    }
  }
}
@supports not ((background-image: -webkit-image-set(url("../img/reasons.png") 1x, url("../img/reasons@2x.png") 2x, url("../img/reasons@3x.png") 3x)) or (background-image: image-set(url("../img/reasons.png") 1x, url("../img/reasons@2x.png") 2x, url("../img/reasons@3x.png") 3x))) {
  .reasons {
    background-image: url("../img/reasons.png");
  }
  @media screen and (min-resolution: 2dppx) {
    .no-webp .reasons {
      background-image: url("../img/reasons@2x.png");
    }
  }
  @media screen and (min-resolution: 3dppx) {
    .no-webp .reasons {
      background-image: url("../img/reasons@3x.png");
    }
  }
}
_:-ms-lang(x)::-ms-backdrop, .reasons {
  background-image: url("../img/reasons.png");
}
@media screen and (min-resolution: 2dppx) {
  .no-webp _:-ms-lang(x)::-ms-backdrop, .no-webp .reasons {
    background-image: url("../img/reasons@2x.png");
  }
}
@media screen and (min-resolution: 3dppx) {
  .no-webp _:-ms-lang(x)::-ms-backdrop, .no-webp .reasons {
    background-image: url("../img/reasons@3x.png");
  }
}

.reasons {
  padding: 0;
  margin: 0;
}
@media (min-width: 48rem) {
  .reasons {
    padding-block-end: 29.1666666667vi;
  }
}
.section .reasons {
  background: none;
  margin-inline: calc(var(--gutter) * -1);
}
@supports not (margin-inline: calc(var(--gutter) * -1)) {
  .section .reasons {
    margin-inline-start: calc(var(--gutter) * -1);
    margin-inline-end: calc(var(--gutter) * -1);
  }
}
@media (min-width: 48rem) {
  .section .reasons {
    padding-block-end: 0;
  }
}
.section__title + .reasons {
  margin-block-start: 3.75em;
}

/************************************************
    代表挨拶
*************************************************/
.section-Greeting {
  background: no-repeat center / cover;
}
@supports ((background-image: -webkit-image-set(url("../img/section-Greeting.webp") 1x, url("../img/section-Greeting@2x.webp") 2x, url("../img/section-Greeting@3x.webp") 3x)) or (background-image: image-set(url("../img/section-Greeting.webp") 1x, url("../img/section-Greeting@2x.webp") 2x, url("../img/section-Greeting@3x.webp") 3x))) {
  .webp .section-Greeting {
    background-image: -webkit-image-set(url("../img/section-Greeting.webp") 1x, url("../img/section-Greeting@2x.webp") 2x, url("../img/section-Greeting@3x.webp") 3x);
    background-image: image-set(url("../img/section-Greeting.webp") 1x, url("../img/section-Greeting@2x.webp") 2x, url("../img/section-Greeting@3x.webp") 3x);
  }
}
@supports ((background-image: -webkit-image-set(url("../img/section-Greeting.png") 1x, url("../img/section-Greeting@2x.png") 2x, url("../img/section-Greeting@3x.png") 3x)) or (background-image: image-set(url("../img/section-Greeting.png") 1x, url("../img/section-Greeting@2x.png") 2x, url("../img/section-Greeting@3x.png") 3x))) {
  .no-webp .section-Greeting {
    background-image: -webkit-image-set(url("../img/section-Greeting.png") 1x, url("../img/section-Greeting@2x.png") 2x, url("../img/section-Greeting@3x.png") 3x);
    background-image: image-set(url("../img/section-Greeting.png") 1x, url("../img/section-Greeting@2x.png") 2x, url("../img/section-Greeting@3x.png") 3x);
  }
}
@supports not ((background-image: -webkit-image-set(url("../img/section-Greeting.webp") 1x, url("../img/section-Greeting@2x.webp") 2x, url("../img/section-Greeting@3x.webp") 3x)) or (background-image: image-set(url("../img/section-Greeting.webp") 1x, url("../img/section-Greeting@2x.webp") 2x, url("../img/section-Greeting@3x.webp") 3x))) {
  .section-Greeting {
    background-image: url("../img/section-Greeting.webp");
  }
  @media screen and (min-resolution: 2dppx) {
    .webp .section-Greeting {
      background-image: url("../img/section-Greeting@2x.webp");
    }
  }
  @media screen and (min-resolution: 3dppx) {
    .webp .section-Greeting {
      background-image: url("../img/section-Greeting@3x.webp");
    }
  }
}
@supports not ((background-image: -webkit-image-set(url("../img/section-Greeting.png") 1x, url("../img/section-Greeting@2x.png") 2x, url("../img/section-Greeting@3x.png") 3x)) or (background-image: image-set(url("../img/section-Greeting.png") 1x, url("../img/section-Greeting@2x.png") 2x, url("../img/section-Greeting@3x.png") 3x))) {
  .section-Greeting {
    background-image: url("../img/section-Greeting.png");
  }
  @media screen and (min-resolution: 2dppx) {
    .no-webp .section-Greeting {
      background-image: url("../img/section-Greeting@2x.png");
    }
  }
  @media screen and (min-resolution: 3dppx) {
    .no-webp .section-Greeting {
      background-image: url("../img/section-Greeting@3x.png");
    }
  }
}
_:-ms-lang(x)::-ms-backdrop, .section-Greeting {
  background-image: url("../img/section-Greeting.png");
}
@media screen and (min-resolution: 2dppx) {
  .no-webp _:-ms-lang(x)::-ms-backdrop, .no-webp .section-Greeting {
    background-image: url("../img/section-Greeting@2x.png");
  }
}
@media screen and (min-resolution: 3dppx) {
  .no-webp _:-ms-lang(x)::-ms-backdrop, .no-webp .section-Greeting {
    background-image: url("../img/section-Greeting@3x.png");
  }
}

@media (min-width: 48rem) {
  .section-Greeting .section__title {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1 / -1;
    grid-row: 1;
  }
}
@media (min-width: 48rem) {
  .section-Greeting {
    display: grid;
    grid-template-columns: 1fr 34.375em 3.125em 25em 1fr;
    grid-template-rows: repeat(3, auto) 1fr;
  }
}
@media (min-width: 48rem) {
  .section-Greeting .content {
    grid-column: 2;
  }
}
.section-Greeting .section__title + .content {
  margin-block-start: 2.8333333333em;
}
.section-Greeting__2ndTitle {
  font-size: 1.75em;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-block: 1.8928571429em 0.6428571429em;
}
@supports not (margin-block: 1.8928571429em 0.6428571429em) {
  .section-Greeting__2ndTitle {
    margin-block-start: 1.8928571429em;
    margin-block-end: 0.6428571429em;
  }
}
@media (min-width: 48rem) {
  .section-Greeting__2ndTitle {
    grid-column: 2;
  }
}
.section-Greeting-ceo {
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  margin-block: 3.75em 0;
  margin-inline: auto;
}
@supports not (margin-block: 3.75em 0) {
  .section-Greeting-ceo {
    margin-block-start: 3.75em;
    margin-block-end: 0;
  }
}
@supports not (margin-inline: auto) {
  .section-Greeting-ceo {
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}
@media (min-width: 48rem) {
  .section-Greeting-ceo {
    grid-column: 4;
    -ms-grid-row: 2;
    -ms-grid-row-span: 3;
    grid-row: 2 / -1;
  }
}
.section-Greeting-ceo .caption {
  font-size: 1.125em;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.7142857143;
  margin-block: 0.7777777778em -0.2222222222em;
}
@supports not (margin-block: 0.7777777778em -0.2222222222em) {
  .section-Greeting-ceo .caption {
    margin-block-start: 0.7777777778em;
    margin-block-end: -0.2222222222em;
  }
}
.section-Greeting-ceo .caption p {
  margin: 0;
}
.section-Greeting-ceo .caption .name {
  font-size: 1.3333333333em;
}

/************************************************
    信頼される理由
*************************************************/
.section-ReasonsToBeTrusted {
  padding-block-end: 0;
}

/************************************************
    企業情報
*************************************************/
.section-CompanyInformation {
  background-color: #ecf3f5;
}

/************************************************
    ZEH達成実績
*************************************************/
.section-Zeh-achievements {
  font-weight: 500;
  letter-spacing: 0.05em;
  margin-block: 3em 0;
}
@supports not (margin-block: 3em 0) {
  .section-Zeh-achievements {
    margin-block-start: 3em;
    margin-block-end: 0;
  }
}
.section-Zeh-achievements {
  margin-inline: auto;
}
@supports not (margin-inline: auto) {
  .section-Zeh-achievements {
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}
.section-Zeh-achievements {
  overflow: auto;
}
.section-Zeh-achievements-table {
  box-sizing: border-box;
  inline-size: -moz-max-content;
  inline-size: max-content;
  border-collapse: collapse;
  border-block-start: 1px solid currentColor;
  border-inline-start: 1px solid currentColor;
  margin-inline: auto;
}
@supports not (margin-inline: auto) {
  .section-Zeh-achievements-table {
    margin-inline-start: auto;
    margin-inline-end: auto;
  }
}
.section-Zeh-achievements th, .section-Zeh-achievements td {
  padding-block: 0.5em;
}
@supports not (padding-block: 0.5em) {
  .section-Zeh-achievements th, .section-Zeh-achievements td {
    padding-block-start: 0.5em;
    padding-block-end: 0.5em;
  }
}
.section-Zeh-achievements th, .section-Zeh-achievements td {
  padding-inline: 0.55em 0.5em;
}
@supports not (padding-inline: 0.55em 0.5em) {
  .section-Zeh-achievements th, .section-Zeh-achievements td {
    padding-inline-start: 0.55em;
    padding-inline-end: 0.5em;
  }
}
.section-Zeh-achievements th, .section-Zeh-achievements td {
  border-block-end: 1px solid currentColor;
  border-inline-end: 1px solid currentColor;
}
@media (min-width: 48rem) {
  .section-Zeh-achievements th, .section-Zeh-achievements td {
    padding-inline: 1.05em 1em;
  }
  @supports not (padding-inline: 1.05em 1em) {
    .section-Zeh-achievements th, .section-Zeh-achievements td {
      padding-inline-start: 1.05em;
      padding-inline-end: 1em;
    }
  }
}
.section-Zeh-achievements th {
  font-weight: 700;
}
.section-Zeh-achievements td {
  text-align: end;
}
.section-Zeh-achievements .scroll-hint-icon {
  top: calc(50% - 40px);
}/*# sourceMappingURL=../maps/company.css.map */
