.sec_dec_ttl {
  margin-bottom: 1em;
}
.quality_link_area {
  padding: 4rem 0;
  background-color: #eff4f0;
}
.quality_link {
  filter: drop-shadow(0 2px 2px #dfdfdf);
  display: flex;
}
.quality_link li {
  width: 30%;
}
.quality_link li:first-child {
  width: 40%;
}
.quality_link li a {
  display: block;
  font-size: 1.8rem;
  font-weight: 600;
  text-align: center;
  padding: 1em;
  background: #fff url(/common/img/icon_arrow_cgr01.png) no-repeat center right 1em/1.8em;
  border: 2px solid #cacdcb;
}
.quality_link li a:not(.active):hover {
  color: #fff;
  background-color: #07a33e;
}
.quality_link li a.active {
  background: #cbebd6;
}
.quality_link li:first-child a {
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}
.quality_link li:last-child a {
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}
.quality_link li:not(:last-child) a {
  border-right: none;
}
.quality_wrap {
  display: flex;
  justify-content: space-between;
}
.quality_txt {
  font-size: 1.8rem;
  line-height: 1.8;
}
#quality_lead .lead_wrap {
  position: relative;
}
#quality_lead .lead_img img {
  width: 100%;
}
#quality_lead .lead_txt {
  color: #07a33e;
  font-size: 3.2rem;
  font-weight: 600;
  line-height: 2;
  padding: 6rem;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 15px;
  width: fit-content;
}
#quality_lead .txt_area {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-6rem, -50%);
}
#sec01 .gmp_area {
  margin-top: 4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
#sec01 .gmp_area::before {
  content: '';
  width: 100%;
  height: 80%;
  background-color: #f4f4f4;
  border-radius: 15px;
  position: absolute;
  top: 10%;
  left: 0;
  z-index: -1;
}
#sec01 .gmp_area .img {
  width: 35%;
}
#sec01 .gmp_area .quality_txt {
  margin-left: 4%;
}
#sec01 .gmp_area .quality_txt strong {
  display: inline-block;
  font-size: 105%;
}
#sec01 .quality_wrap {
  margin-top: 4rem;
  flex-direction: row-reverse;
}
#sec01 .quality_wrap .img {
  width: 48%;
}
#sec01 .quality_wrap .quality_txt {
  width: 48%;
}
#sec01 .notes {
  margin-top: 2em;
  font-size: 1.5rem;
}
#sec02 .system_list {
  margin: 5rem 0;
  display: flex;
}
#sec02 .system_list li {
  width: 48%;
  margin: 0 1%;
  background-color: #7ccc1f;
  border-radius: 22px;
  overflow: hidden;
}
#sec02 .system_list .list_ttl {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.3;
}
#sec02 .system_list .list_ttl span {
  font-size: 90%;
}
#sec02 .system_list .list_txt {
  margin-top: 0.8em;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4;
  color: #fff;
}
#sec02 .system_list .txt_area {
  padding: 1.5em;
  text-align: center;
}
#sec03 .quality_wrap {
  align-items: center;
}
#sec03 .quality_wrap .img_ttl {
  width: fit-content;
  margin: 0 auto;
  padding: 0.5em 3em;
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
  background-color: #eee;
  border: 1px solid #000;
}
#sec03 .quality_wrap .img_txt {
  font-size: 1.8rem;
  font-weight: 600;
  text-align: center;
  margin: 0.8em 0 1.5em;
}
#sec03 .quality_wrap .img_area {
  width: 48%;
}
#sec03 .quality_wrap .quality_txt {
  width: 48%;
}
#sec04 .quality_wrap {
  margin: 5rem 0 4rem;
}
#sec04 .quality_wrap .img {
  width: 41%;
}
#sec04 .quality_wrap .txt_area {
  width: 55%;
}
#sec04 .quality_subttl {
  font-size: 2.2rem;
  font-weight: 600;
  padding: 0.8em 1.2em;
  background-color: #eff5f0;
}
#sec04 .quality_subttl span {
  color: #07a33e;
}
#sec04 .quality_txt:not(.top) {
  margin-top: 1em;
}
#sec05 .quality_wrap .img {
  width: 41%;
}
#sec05 .quality_wrap .txt_area {
  width: 55%;
}
#sec05 .quality_subttl {
  font-size: 2.2rem;
  font-weight: 600;
  padding: 0.8em 1em;
  background-color: #eff5f0;
}
#sec05 .quality_subttl span {
  color: #07a33e;
}
#sec05 .quality_txt:not(.top) {
  margin-top: 1em;
}


.guarantee_box:not(:last-child) {
	 margin-bottom: 5rem;
	 padding-bottom: 5rem;
	 /*border-bottom: 1px solid #07a33e;*/
}
 .guarantee_inner_box {
	 margin-top: 3rem;
	 padding: 3rem;
	 background-color: #f7f7f7;
	 border-bottom-left-radius: 22px;
	 border-top-right-radius: 22px;
}
 .guarantee_inner_box .box_ttl {
	 font-size: 1.8rem;
	 text-align: left;
}
 .guarantee_inner_box .efforts_txt {
	 margin-top: 0;
}
.guarantee_box .box_ttl {
	 color: #07a33e;
	 font-size: 2.2rem;
	 font-weight: 600;
	 text-align: center;
}
.guarantee_box .box_ttl.top {
	 font-size: 2.8rem;
    color: #000000
}
.guarantee_box .policy_area {
	 margin: 3rem 0 0;
	 padding: 3rem 12rem;
	 border: 1px solid #07a33e;
}
.guarantee_box .policy_list {
	 margin-top: 1.5em;
	 counter-reset: my-counter;
}
.guarantee_box .policy_list li {
	 font-size: 1.8rem;
	 margin-top: 0.5em;
	 padding-left: 1em;
	 position: relative;
}
.guarantee_box .policy_list li::before {
	 content: counter(my-counter) '.';
	 counter-increment: my-counter;
	 position: absolute;
	 left: 0;
}
#sec05 .inner .img {
    margin: 5rem 0;
    padding: 0 5rem;
}
 



@media screen and (min-width: 768px) and (max-width: 1240px) {
  #quality_lead .lead_txt {
    font-size: 2.5vw;
    padding: 4.8vw 6rem;
  }
  .quality_link li a {
    font-size: 1.4vw;
  }
  .quality_txt {
    font-size: 1.4vw;
  }
  #sec02 .system_list .list_ttl {
    font-size: 1.6vw;
  }
  #sec02 .system_list .list_txt {
    font-size: 1.4vw;
  }
  #sec03 .quality_wrap .img_ttl {
    font-size: 1.6vw;
  }
  #sec03 .quality_wrap .img_txt {
    font-size: 1.4vw;
  }
  #sec04 .quality_subttl {
    font-size: 1.7vw;
  }
  #sec05 .quality_subttl {
    font-size: 1.7vw;
  }
}
@media screen and (max-width: 767px) {
  .quality_link_area {
    padding: 2rem 0;
  }
  .quality_link li {
    width: 30%;
  }
  .quality_link li:first-child {
    width: 40%;
  }
  .quality_link li a {
    font-size: 3.4vw;
    text-align: left;
    background-size: 1em auto;
    background-position: center right 0.5em;
    border-width: 1px;
    height: 7em;
    display: flex;
    align-items: center;
  }
  .quality_link li:first-child a {
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
  }
  .quality_link li:last-child a {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
  }
  .quality_wrap {
    display: block;
  }
  .quality_txt {
    font-size: 3.7vw;
  }
  #quality_lead .lead_txt {
    color: #000;
    font-size: 4.6vw;
    line-height: 1.8;
    padding: 1.5rem;
    border-radius: 8px;
  }
  #quality_lead .txt_area {
    top: auto;
    bottom: 1.5rem;
    transform: translate(0, 0);
  }
  #sec01 .gmp_area {
    margin-top: 1rem;
    padding: 1.5rem;
    display: block;
  }
  #sec01 .gmp_area::before {
    height: 90%;
    border-radius: 8px;
    top: 12%;
  }
  #sec01 .gmp_area .img {
    width: 100%;
  }
  #sec01 .gmp_area .quality_txt {
    margin: 1em 0 0;
  }
  #sec01 .quality_wrap .img {
    width: 100%;
  }
  #sec01 .quality_wrap .quality_txt {
    width: 100%;
    margin-top: 3rem;
  }
  #sec01 .notes {
    font-size: 3.2vw;
  }
  #sec02 .system_list {
    margin: 2rem 0;
    display: block;
  }
  #sec02 .system_list li {
    width: 100%;
    margin: 0 0 3%;
    border-radius: 11px;
  }
  #sec02 .system_list .list_ttl {
    font-size: 4vw;
  }
  #sec02 .system_list .list_txt {
    font-size: 3.3vw;
  }
  #sec02 .system_list .txt_area {
    padding: 1em;
  }
  #sec03 .quality_wrap .img_ttl {
    font-size: 3.4vw;
  }
  #sec03 .quality_wrap .img_txt {
    font-size: 3.2vw;
  }
  #sec03 .quality_wrap .img_area {
    width: 100%;
  }
  #sec03 .quality_wrap .quality_txt {
    width: 100%;
    margin-top: 1.5em;
  }
  #sec04 .quality_wrap {
    margin: 3rem 0;
  }
  #sec04 .quality_wrap .img {
    width: 100%;
    margin-top: 2rem;
  }
  #sec04 .quality_wrap .txt_area {
    width: 100%;
  }
  #sec04 .quality_subttl {
    font-size: 4.8vw;
    padding: 0.8em 1em;
  }

.guarantee_box:not(:last-child) {
	 margin-bottom: 0;
	 padding-bottom: 3rem;
}
.guarantee_box .efforts_txt {
	 margin-top: 1em;
}
.guarantee_box .efforts_wrap .img {
	 width: 100%;
	 margin-top: 1.5rem;
}
.guarantee_box .efforts_wrap .efforts_img {
	 width: 100%;
}
.guarantee_box .efforts_wrap .efforts_txt {
	 width: 100%;
}
.guarantee_box .efforts_wrap .img_area {
	 width: 100%;
}
.guarantee_box .efforts_wrap .txt_area {
	 width: 100%;
}
.guarantee_box .guarantee_inner_box {
	 margin-top: 2rem;
	 padding: 2rem 1.5rem;
}
.guarantee_box .guarantee_inner_box .img_list {
	 width: 95%;
}
.guarantee_box .box_ttl {
	 font-size: 4.2vw;
}
.guarantee_box .box_ttl.top {
	 font-size: 4.5vw;
}
.guarantee_box .policy_area {
	 margin: 2rem 0 2rem;
	 padding: 2rem 1rem;
}
.guarantee_box .policy_list {
	 margin-top: 1em;
}
.guarantee_box .policy_list li {
	 font-size: 4vw;
}
.guarantee_box .system_list {
	 margin-top: 2rem;
	 display: block;
}
#sec05 .inner .img{
    margin: 1em 0;
    padding: 0
}

#sec05 .inner .img .sp-caption {
    font-size: 2.5vw;
    margin: 2em 0;
}
 
}
/*# sourceMappingURL=quality.css.map */