@charset "UTF-8";
/*==================================================
** quality
==================================================*/
/* 追加: PC時の横並びレイアウトを制御するコンテナ */
.quality-container {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 5%;
  /* タブレット・スマホ時は縦並びに戻す */
}
@media screen and (max-width: 991px) and (min-width: 768px) {
  .quality-container {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .quality-container {
    display: block;
  }
}

#qualityTtl {
  width: 35%;
}
@media screen and (max-width: 991px) and (min-width: 768px) {
  #qualityTtl {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  #qualityTtl {
    width: 100%;
  }
}
#qualityTtl .txtbox {
  margin-top: 60px;
}
#qualityTtl .txtbox p {
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  #qualityTtl .txtbox {
    margin-top: 30px;
  }
}

#qualityBase {
  width: 60%;
  margin-top: 0;
}
@media screen and (max-width: 991px) and (min-width: 768px) {
  #qualityBase {
    width: 100%;
    margin-top: 60px; /* 縦並び用の余白 */
  }
}
@media screen and (max-width: 767px) {
  #qualityBase {
    width: 100%;
    margin-top: 30px; /* 縦並び用の余白 */
  }
}
#qualityBase .base-ttl {
  font-size: 26px;
  text-align: center;
  color: #ef363c;
  margin-top: 90px;
}
@media screen and (max-width: 767px) {
  #qualityBase .base-ttl {
    margin-top: 0;
    font-size: 4.5vw;
  }
}
#qualityBase .base-list {
  margin-top: 30px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
@media screen and (max-width: 767px) {
  #qualityBase .base-list {
    margin-top: 20px;
    grid-template-columns: 1fr;
    gap: 15px;
  }
}
#qualityBase .base-list-li {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 590/250;
  background: #fff;
  border-radius: 10px;
  font-size: 20px;
  line-height: 1.6;
  text-align: center;
  color: #ea0a2a;
}
@media screen and (max-width: 767px) {
  #qualityBase .base-list-li {
    border-radius: 5px;
    font-size: 3.5vw;
    aspect-ratio: 590/170;
  }
}
#qualityBase .base-sign {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  #qualityBase .base-sign {
    margin-top: 20px;
  }
}
#qualityBase .base-sign p {
  font-size: 20px;
  line-height: 1.6;
  text-align: center;
}
#qualityBase .base-sign p + p {
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  #qualityBase .base-sign p {
    font-size: 3.4vw;
  }
}
