#quality {
  /* overflow-x: hidden; */
}


#quality #anchornavi {
  padding: 40px 0;
}
#quality #anchornavi ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
}
#quality #anchornavi li {
  list-style: none;
  padding: 10px 0;
  width: 15em;
  font-size: 180%;
  letter-spacing: .2em;
  color: #4d4a52;
  text-align: center;
  background-color: #fff;
  border: #4d4a52 solid 1px;
  cursor: pointer;
}
#quality #anchornavi li.active {
  color: var(--bodycolor);
  background-color: #a2999b;
  border: #a2999b solid 1px;
  pointer-events: none;
}
#quality #anchornavi li:hover {
  color: var(--bodycolor);
  background-color: #a2999b;
  border: #a2999b solid 1px;
}
#quality #anchornavi li a {
  pointer-events: none;
  user-select: none;
}

#quality section .headcopy {
  font-size: 200% !important;
}
#quality section .bodycopy {
  font-size: 120% !important;
}

/* longterm */
#quality section#longterm {
  display: none;
}
#quality section#longterm.active {
  display: block;
}
#quality section#longterm ol.merit {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 40px;
  margin: 40px auto;
  max-width: 800px;
}
#quality section#longterm ol.merit li {
  display: flex;
  flex-direction: column;
  gap: 20px;
  justify-content: center;
  padding: 40px 20px;
  width: calc(50% - 20px);
  text-align: center;
  background-color: #d9ecdf;
}
#quality section#longterm ol.merit li .title {
  display: flex;
  gap: 20px;
  justify-content: center;
  align-items: center;
}
#quality section#longterm ol.merit li .title .text {
  font-size: 200%;
  line-height: 120%;
}
#quality section#longterm ol.merit li .title .text p {
  font-weight: 600;
}
#quality section#longterm ol.merit li .title .text p span {
  display: block;
  margin-top: 10px;
  font-size: 60%;
  font-weight: 400;
  line-height: 120%;
}
#quality section#longterm ol.merit li .title .text p span b {
  font-size: 140%;
  font-weight: 500;
}

#quality section#longterm ol.merit li .title > figure {
  /* max-width: 80px; */
  height: 80px;
}
#quality section#longterm ol.merit li .title > figure img {
  height: 100%;
}

#quality section#longterm ol.merit li .explanation {
  margin: unset;
  font-size: 120%;
  letter-spacing: .1em;
  line-height: 1.4em;
}
#quality section#longterm ol.merit li:nth-child(2) .explanation,
#quality section#longterm ol.merit li:nth-child(3) .explanation,
#quality section#longterm ol.merit li:nth-child(5) .explanation,
#quality section#longterm ol.merit li:nth-child(9) .explanation {
  letter-spacing: 0;
}

#quality section#longterm .grade {
  margin: 0 auto 40px;
  padding: 0 100px 60px 100px;
  max-width: 800px;
  background-image: url("../../quality/img/bg.jpg");
}
#quality section#longterm .grade .headcopy {
  font-size: 180% !important;
  letter-spacing: .2rem;
}
#quality section#longterm .grade .headcopy .r {
  font-weight: 600;
}
#quality section#longterm .grade .headcopy b {
  font-size: 140%;
}
#quality section#longterm .grade figure {
  margin-top: 30px;
}

#quality section#longterm .loan {
  margin: auto;
  padding: 20px;
  max-width: 740px;
}

#quality section#longterm .loan .deduction {
  padding-top: 40px;
  font-size: 220%;
  font-weight: 500;
  letter-spacing: .1em;
  text-align: center;
}
#quality section#longterm .loan .deduction .r {
  font-size: 140%;
  font-weight: 500;
  color: #852018;
}
#quality section#longterm .loan figure {
  margin-top: 40px;
}
#quality section#longterm .loan figure:last-child {
  margin-top: 100px;
}

#quality section#longterm .achievement {
  margin: 100px auto;
  padding: 0 100px 60px 100px;
  max-width: 800px;
  background-image: url("../../quality/img/bg.jpg");
}
#quality section#longterm .achievement .headcopy {

}
#quality section#longterm .achievement .headcopy span {
  display: block;
  font-size: 70%
}
#quality section#longterm .achievement figure {
  margin-top: 40px;
}


/* zeh */
#quality section#zeh {
  display: none;
}
#quality section#zeh.active {
  display: block;
}
#quality section#zeh .bodycopy span {
  display: block;
}

#quality section#zeh .zeh_gm {
  margin-top: 40px;
  padding-bottom: 40px;
  background-color: #e7f2f4;
}
#quality section#zeh .zeh_gm .headcopy {
  font-size: 250% !important;
}
#quality section#zeh .zeh_gm figure {
  margin: 40px auto 0;
  width: 50%;
}

#quality section#zeh .developer {

}
#quality section#zeh .developer .bodycopy {

}

#quality section#zeh .developer figure {
  margin: 40px auto;
  max-width: 960px;
}
#quality section#zeh .developer figure figcaption {
  margin-top: 1em;
}
#quality section#zeh .developer figure figcaption span {
  display: block;
}

#quality section#zeh .environment {
  margin-top: 100px;
}
#quality section#zeh .environment > div > .title {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: auto;
  width: 160px;
  height: 160px;
  font-size: 140%;
  letter-spacing: .3rem;
  color: var(--bodycolor);
  background-color: #8fc31f;
}

#quality section#zeh .environment ol {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin: 100px auto;
  max-width: 880px;
}
#quality section#zeh .environment ol li {
  list-style: none;
}
#quality section#zeh .environment ol li > .title {
  margin-bottom: 20px;
  padding: .5em 0;
  font-size: 160%;
  line-height: 1em;
  letter-spacing: .3rem;
  color: var(--bodycolor);
  text-align: center;
  background-color: #334e41;
}
#quality section#zeh .environment ol li .explanation {
  font-size: 120%;
  letter-spacing: .1em;
  line-height: 2rem;
}
#quality section#zeh .environment ol li figure figcaption {
  margin-top: .5rem;
}
#quality section#zeh .environment ol li figure figcaption span {
  display: block;
}
#quality section#zeh .environment ol li > div.row {
  display: flex;
  align-items: center;
  gap: 30px;
  margin: auto;
  width: 80%;
}
#quality section#zeh .environment ol li:first-child .explanation {
  padding: 0 5%;
  width: 50%;
}
#quality section#zeh .environment ol li:first-child .annotation {
  text-align: center;
}
#quality section#zeh .environment ol li:nth-child(n+2):nth-child(-n+3) figure {
  margin: 30px auto;
  max-width: 800px;
}
#quality section#zeh .environment ol li:last-child .logo {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin: 20px auto;
  max-width: 840px;
}
#quality section#zeh .environment ol li:last-child .logo figure {
  width: 25%;
}
#quality section#zeh .environment ol li:last-child .logo div {
  width: calc(75% - 20px);
}
#quality section#zeh .environment ol li:last-child .logo div .title {
  padding-left: .5rem;
  font-size: 200%;
  line-height: 1em;
  color: #334e41;
  border-left: #334e41 solid 5px;
}
#quality section#zeh .environment ol li:last-child .logo div .explanation {
  margin-top: 20px;
}





@media all and (max-width: 999px) {

  #quality {

  }
  #quality section .headcopy {
    font-size: 120% !important;
  }
  #quality section .bodycopy {
    font-size: 90% !important;
  }

  #quality #anchornavi {
    padding: 0 20px;
  }
  #quality #anchornavi ul {
    gap: 20px;
  }
  #quality #anchornavi li {
    font-size: 120%;
  }


  #quality section#longterm {
    overflow-x: hidden;
  }
  #quality section#longterm ol.merit {
    gap: 10px;
    margin: 20px auto;
  }
  #quality section#longterm ol.merit li {
    padding: 20px;
    width: 100%;
  }
  #quality section#longterm ol.merit li .title {
    font-size: 80%;
  }
  #quality section#longterm ol.merit li .explanation {
    font-size: 100%;
  }

  #quality section#longterm .grade {
    padding: 0 0 20px 0;
  }
  #quality section#longterm .grade .headcopy {
    font-size: 120% !important;
  }
  body > div:not(#top) section .bodycopy {
    margin-top: 20px;
    padding: 0 20px 20px;
    text-align: justify;
  }
  #quality section#longterm .grade figure {
    margin: 0 auto;
  }

  #quality section#longterm .loan {
    padding: unset;
  }
  #quality section#longterm .loan .headcopy {
    padding-top: 0 !important;
  }
  #quality section#longterm .loan .deduction {
    padding-top: 20px;
    font-size: 160%;
    line-height: 2rem;
  }
  #quality section#longterm .loan figure:last-child {
    margin-top: 40px;
  }

  #quality section#longterm .achievement {
    margin: 40px auto;
    padding: 10px;
  }
  #quality section#longterm .achievement .headcopy {
    font-size: 160% !important;
  }
  #quality section#longterm .achievement figure {
    margin-top: unset;
  }



  #quality section#zeh {
    overflow-x: hidden;
  }
  #quality section#zeh .zeh_gm {
    margin-top: 30px;
    padding-bottom: 20px;
  }
  #quality section#zeh .zeh_gm .headcopy {
    padding-top: 20px;
    font-size: 130% !important;
  }
  #quality section#zeh .zeh_gm figure {
    margin: 20px auto 0;
    width: 90%;
  }
  #quality section#zeh .developer .bodycopy {

  }
  #quality section#zeh .developer .bodycopy span,
  #quality section#zeh .environment .bodycopy span {
    text-align: justify;
  }

  #quality section#zeh .developer figure {
    margin: 0 auto 40px;
  }
  #quality section#zeh .developer figure figcaption,
  #quality section#zeh .environment ol li figure figcaption {
    font-size: 80%;
  }
  #quality section#zeh .developer figure figcaption span,
  #quality section#zeh .environment ol li figure figcaption span {
    text-indent: -1em;
    padding-left: 1em;
  }


  #quality section#zeh .environment {
    margin-top: 60px;
  }
  #quality section#zeh .environment > div > .title {
    width: 120px;
    height: 120px;
  }

  #quality section#zeh .environment ol {
    gap: 40px;
    margin: 40px auto;
  }
  #quality section#zeh .environment ol li > .title {
    font-size: 120%;
    line-height: 1.2em;
    letter-spacing: .1rem;
  }

  #quality section#zeh .environment ol li > div.row {
    flex-direction: column;
    gap: 20px;
  }
  #quality section#zeh .environment ol li > div.row > .explanation {
    width: 100% !important;
  }
  #quality section#zeh .environment ol li > div.row > figure {
    width: 90% !important;
  }
  #quality section#zeh .environment ol li .explanation {
    font-size: 90%;
    line-height: 1.5rem;
  }

  #quality section#zeh .environment ol li:nth-child(n+2):nth-child(-n+3) figure {
    margin: 20px auto 0;
  }

  #quality section#zeh .environment ol li:last-child .logo {
    flex-direction: column;
    align-items: center;
  }
  #quality section#zeh .environment ol li:last-child .logo div {
    width: 80%;
  }
  #quality section#zeh .environment ol li:last-child .logo div .title {
    font-size: 160%;
    line-height: 1.2em;
  }
  #quality section#zeh .environment ol li:last-child .logo figure {
    width: 120px;
  }



}

