@charset "UTF-8";
/*color*/
/*addcolor*/
/*font-family*/
/*左カタカナ平仮名、右漢字*/
/*filler color*/
/*brightness(106%)*/
/*text-shadow*/
/*media query break point*/
/*mainBP*/
/*gHeader用*/
/*追加*/
/*topMV*/
/*members*/
/*topMV*/
/*topScroll*/
/*grid settings*/
/* media query */
.c-imgBox__cap {
  background-color: unset !important;
  color: #333;
}

em,
i {
  font-style: normal;
}

i {
  display: inline-block;
}

.p-zeh {
  color: #000;
}
.p-zeh__mv {
  position: relative;
}
.p-zeh__mv .c-cap {
  color: #fff;
}

.p-zeh__cont {
  color: #000;
}
.p-zeh__cont__area__wrap-cont {
  width: 90%;
  max-width: 1366px;
  margin-left: auto;
  margin-right: auto;
}
.p-zeh__cont__area__zehd {
  padding: 4rem 0 3rem;
  color: #000;
  background-color: #f8f5ec;
}
@media only screen and (max-width: 768px) {
  .p-zeh__cont__area__zehd {
    padding: 4rem 0 5rem;
  }
}
.p-zeh__cont__area__zehd small {
  margin: 3rem 0;
  display: block;
}
.p-zeh__cont__area__zehd dl {
  background-color: #fff;
  padding: 2rem;
  margin: 6rem 0;
}
@media only screen and (max-width: 768px) {
  .p-zeh__cont__area__zehd dl {
    margin: 3rem 0;
  }
}
.p-zeh__cont__area__zehd dl dt {
  font-size: min(2.6vw, 4rem);
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-zeh__cont__area__zehd dl dt {
    font-size: 20px;
    font-size: 2rem;
  }
}
@media only screen and (max-width: 768px) and (max-width: 768px) {
  .p-zeh__cont__area__zehd dl dt {
    font-size: 14px;
  }
}
@media only screen and (max-width: 768px) and (max-width: 768px) {
  .p-zeh__cont__area__zehd dl dt {
    font-size: 1.4rem;
  }
}
.p-zeh__cont__area__zehd dl dd {
  font-size: 20px;
  font-size: 2rem;
  padding: 3rem 0 6rem;
}
@media (max-width: 768px) {
  .p-zeh__cont__area__zehd dl dd {
    font-size: 14px;
  }
}
@media (max-width: 768px) {
  .p-zeh__cont__area__zehd dl dd {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .p-zeh__cont__area__zehd dl dd {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 2rem 0 2rem;
  }
}
@media only screen and (max-width: 768px) and (max-width: 768px) {
  .p-zeh__cont__area__zehd dl dd {
    font-size: 14px;
  }
}
@media only screen and (max-width: 768px) and (max-width: 768px) {
  .p-zeh__cont__area__zehd dl dd {
    font-size: 1.4rem;
  }
}
.p-zeh__cont__area__zhbtn a {
  margin: 0 auto;
  color: #A67C52;
  border: 1px solid #A67C52;
  padding: 1rem 2rem;
  border-radius: 50px;
  display: flex;
  width: 80%;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  max-width: 22rem;
  background-color: transparent;
  transition: 0.3s;
}
.p-zeh__cont__area__zhbtn a:hover {
  background-color: #fff;
}
.p-zeh__cont__ttl {
  font-size: 90px;
  font-size: 9rem;
  font-size: min(5vw, 9rem);
  line-height: 1.3;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin: 2rem auto 5rem;
}
@media (max-width: 768px) {
  .p-zeh__cont__ttl {
    font-size: 14px;
  }
}
@media (max-width: 768px) {
  .p-zeh__cont__ttl {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 1080px) {
  .p-zeh__cont__ttl {
    font-size: 60px;
    font-size: 6rem;
    margin: 0 auto 2rem auto;
  }
}
@media only screen and (max-width: 1080px) and (max-width: 768px) {
  .p-zeh__cont__ttl {
    font-size: 14px;
  }
}
@media only screen and (max-width: 1080px) and (max-width: 768px) {
  .p-zeh__cont__ttl {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .p-zeh__cont__ttl {
    font-size: 50px;
    font-size: 5rem;
  }
}
@media only screen and (max-width: 768px) and (max-width: 768px) {
  .p-zeh__cont__ttl {
    font-size: 14px;
  }
}
@media only screen and (max-width: 768px) and (max-width: 768px) {
  .p-zeh__cont__ttl {
    font-size: 1.4rem;
  }
}
.p-zeh__cont__ttl span {
  font-size: 0.312em;
  display: block;
  position: absolute;
  font-size: 0.28em;
}
.p-zeh__cont__ttl::before, .p-zeh__cont__ttl::after {
  content: "";
  display: block;
  position: absolute;
  width: 5vw;
  height: 5vw;
  border: 0.7vw solid rgba(203, 203, 203, 0.5);
}
@media only screen and (max-width: 1080px) {
  .p-zeh__cont__ttl::before, .p-zeh__cont__ttl::after {
    width: 5rem;
    height: 5rem;
    border: 7px solid rgba(203, 203, 203, 0.5);
  }
}
.p-zeh__cont__ttl::before {
  left: -2.4vw;
  top: -0.7vw;
  border-bottom: none;
  border-right: none;
}
@media only screen and (max-width: 1080px) {
  .p-zeh__cont__ttl::before {
    left: -2.5rem;
    top: -0.7rem;
  }
}
.p-zeh__cont__ttl::after {
  right: -2.4vw;
  bottom: -3vw;
  border-top: none;
  border-left: none;
}
@media only screen and (max-width: 1080px) {
  .p-zeh__cont__ttl::after {
    right: -2rem;
    bottom: -3.5rem;
  }
}
.p-zeh__cont__ttl2 {
  color: #A67C52;
  text-align: center;
  font-size: 36px;
  font-size: 3.6rem;
  font-size: min(1.8vw, 3.6rem);
  line-height: 2;
  margin: 1rem auto 3rem;
}
@media (max-width: 768px) {
  .p-zeh__cont__ttl2 {
    font-size: 14px;
  }
}
@media (max-width: 768px) {
  .p-zeh__cont__ttl2 {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .p-zeh__cont__ttl2 {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.7;
  }
}
@media only screen and (max-width: 768px) and (max-width: 768px) {
  .p-zeh__cont__ttl2 {
    font-size: 14px;
  }
}
@media only screen and (max-width: 768px) and (max-width: 768px) {
  .p-zeh__cont__ttl2 {
    font-size: 1.4rem;
  }
}

.zehm {
  color: #000;
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 5rem 0;
}
@media only screen and (max-width: 768px) {
  .zehm {
    width: 90%;
  }
}
.zehm__intro {
  padding: 2rem 0;
  text-align: center;
}
.zehm__title {
  font-size: min(3.3vw, 4rem);
  margin-bottom: 5rem;
}
@media only screen and (max-width: 768px) {
  .zehm__title {
    font-size: 2rem;
  }
}
.zehm__description {
  font-size: min(2.6vw, 3rem);
  margin-bottom: 2rem;
}
@media only screen and (max-width: 768px) {
  .zehm__description {
    font-size: 1.8rem;
    margin-bottom: 1rem;
  }
}
.zehm__description small {
  font-size: 0.7em;
  letter-spacing: -0.1em;
}
.zehm__description span {
  font-size: 0.5em;
  vertical-align: super;
}
.zehm__details {
  text-align: center;
}
.zehm__details__images--m {
  width: 50%;
  margin: 0 auto 2rem;
}
@media only screen and (max-width: 768px) {
  .zehm__details__images--m {
    width: 100%;
  }
}
.zehm__details__images--zero {
  width: 47%;
  margin: 0 auto 3rem;
}
@media only screen and (max-width: 768px) {
  .zehm__details__images--zero {
    width: 80%;
  }
}
.zehm__details__images--img3 {
  width: 100%;
  margin: 0 auto 3rem;
  padding-bottom: 2rem;
}
@media only screen and (max-width: 768px) {
  .zehm__details__images--img3 {
    width: 100%;
  }
}
.zehm__details__images img {
  width: 100%;
}
.zehm__details--cap {
  margin-top: 1rem;
  font-size: 1.3rem;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .zehm__details--cap {
    font-size: 1rem;
  }
}
.zehm__details--cap.left {
  text-align: left;
}
@media only screen and (max-width: 768px) {
  .zehm__details--cap.leftSp {
    text-align: left;
  }
}
.zehm__details--cap.right {
  text-align: right;
}
@media only screen and (max-width: 768px) {
  .zehm__details--cap.right {
    text-align: left;
  }
}
.zehm__details__certification {
  text-align: center;
}
.zehm__details__certification__cert-title {
  font-size: min(3vw, 3rem);
  line-height: 1.5;
  border: 1px solid #333;
  border-bottom: none;
  padding: 1rem;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .zehm__details__certification__cert-title {
    font-size: 1.8rem;
  }
}
.zehm__details__certification__cert-txt {
  font-size: min(1.8vw, 1.8rem);
  margin: 0 auto 2rem;
  line-height: 2;
}
@media only screen and (max-width: 768px) {
  .zehm__details__certification__cert-txt {
    font-size: 1.3rem;
  }
}
.zehm__details__certification__cert-txt span {
  font-size: 0.6em;
  vertical-align: super;
}
.zehm__details__certification img {
  width: 60%;
}
.zehm .zehm__borderWrap {
  border: 1px solid #333;
  padding: 3rem 6rem;
}
@media only screen and (max-width: 768px) {
  .zehm .zehm__borderWrap {
    padding: 3rem 2rem;
  }
}

.zehEq {
  color: #000;
  background-color: #c8d6c1;
  padding: 5rem 0;
}
.zehEq__wrap {
  width: 80%;
  max-width: 920px;
  margin: 20px auto;
}
@media only screen and (max-width: 768px) {
  .zehEq__wrap {
    width: 90%;
  }
}
.zehEq__ttlWrap {
  margin-bottom: 6rem;
}
@media only screen and (max-width: 768px) {
  .zehEq__ttlWrap {
    margin-bottom: 4rem;
  }
}
.zehEq__ttlWrap--icom {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  border: 1px solid #604c3f;
  color: #604c3f;
  aspect-ratio: 1/1;
  width: 10rem;
  height: 10rem;
  text-align: center;
  line-height: 1.5;
  font-size: 2rem;
}
@media only screen and (max-width: 768px) {
  .zehEq__ttlWrap--icom {
    font-size: 1.8rem;
    width: 8rem;
    height: 8rem;
  }
}
.zehEq__txtWrap {
  display: flex;
  align-items: center;
  gap: 2.5rem;
  margin-bottom: 3rem;
  width: -moz-fit-content;
  width: fit-content;
}
@media only screen and (max-width: 768px) {
  .zehEq__txtWrap {
    flex-direction: column;
    align-items: center;
    margin: 0 auto;
    gap: 1rem;
  }
}
.zehEq__txtWrap--txt {
  font-size: min(2.8vw, 3rem);
  line-height: 1.7;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 768px) {
  .zehEq__txtWrap--txt {
    font-size: 2rem;
    text-align: center;
    margin-bottom: 2rem;
  }
}
.zehEq__txtWrap--lead {
  font-size: min(2vw, 2rem);
  line-height: 1.7;
  margin-left: 11.5rem;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 768px) {
  .zehEq__txtWrap--lead {
    text-align: center;
    font-size: 1.3rem;
    margin: 0 auto;
  }
}
.zehEq__txtWrap--lead span {
  display: inline-block;
  padding: 0 0.5rem;
  position: relative;
}
.zehEq__txtWrap--lead span::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 0.5em;
  background-color: #fff359;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
.zehEq__txtWrap--lead span b {
  font-size: 1.5em;
  line-height: 1;
  font-weight: normal;
}
.zehEq__txtWrap--lead span em {
  font-size: 1.2em;
  line-height: 1;
}
.zehEq__netu {
  background-color: #f4f4f4;
  padding: 5rem 8rem;
  margin-bottom: 8rem;
}
@media only screen and (max-width: 768px) {
  .zehEq__netu {
    padding: 2rem;
    margin-bottom: 8rem;
  }
}
.zehEq__netu--img {
  display: block;
  position: relative;
  margin-bottom: 3rem;
}
.zehEq__netu__listWrap {
  border: 2px solid #604c3f;
  padding: 3rem;
}
@media only screen and (max-width: 768px) {
  .zehEq__netu__listWrap {
    padding: 1rem;
  }
}
.zehEq__netu__listWrap__inner {
  display: flex;
  justify-content: start;
  gap: 2rem;
}
@media only screen and (max-width: 768px) {
  .zehEq__netu__listWrap__inner {
    flex-direction: column;
    gap: 0;
  }
}
.zehEq__netu__listWrap ol {
  counter-reset: my-counter;
  list-style: none;
}
.zehEq__netu__listWrap ol :last-of-type {
  line-height: 1;
}
.zehEq__netu__listWrap ol li {
  line-height: 1.5;
  padding-left: 30px;
  position: relative;
  margin-bottom: 0.8rem;
}
.zehEq__netu__listWrap ol li small {
  font-size: 0.8em;
}
.zehEq__netu__listWrap ol li::before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #76685c;
  border: 1px solid;
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 22px;
  width: 22px;
  color: #ffffff;
  font-size: 85%;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
}
.zehEq__netu__listWrap ol li.five {
  counter-reset: my-counter 4; /* 4とすることで次の番号が5になる */
  counter-increment: 0;
}

.description, .economy, .loan {
  margin-bottom: 20px;
}

h2 {
  font-size: 1.5em;
  margin-bottom: 10px;
}

p {
  line-height: 1.6;
}

.image-container {
  text-align: center;
  margin-bottom: 20px;
}

.image-container img {
  max-width: 100%;
  height: auto;
}

.table-container {
  overflow-x: auto;
}
@media only screen and (max-width: 768px) {
  .table-container {
    overflow-x: scroll;
  }
}

table {
  width: 100%;
  border-collapse: collapse;
  white-space: nowrap;
  background-color: #fff;
}
@media only screen and (max-width: 768px) {
  table {
    width: 150%;
  }
}

th, td {
  border: 1px solid #aaaaaa;
  padding: 1rem;
  text-align: center;
  vertical-align: middle;
  font-size: min(2vw, 2.2rem);
  font-weight: normal;
  line-height: 1.5;
}
@media only screen and (max-width: 768px) {
  th, td {
    font-size: 1.3rem;
  }
}
th.zehEq-light, td.zehEq-light {
  background-color: #b9da9a;
}
th b, td b {
  font-size: 1.4em;
  line-height: 1;
  font-weight: normal;
}
th em, td em {
  font-size: 1.2em;
  line-height: 1;
}
th span, td span {
  font-size: 0.5em;
  line-height: 1;
  vertical-align: text-top;
}

th {
  background-color: #006f57;
  color: #fff;
}/*# sourceMappingURL=style.css.map */