:root {
  --clip-triangle-top: polygon(50% 0, 100% 100%, 0 100%);
  --clip-triangle-bottom: polygon(0 0, 100% 0, 50% 100%);
  --clip-triangle-right: polygon(0 0, 100% 50%, 0 100%);
  --clip-triangle-left: polygon(0 50%, 100% 0, 100% 100%);
  --clip-triangle-lower-left: polygon(0 0, 100% 100%, 0 100%);
  --clip-triangle-upper-left: polygon(0 0, 100% 0, 0 100%);
  --clip-triangle-lower-right: polygon(100% 0, 100% 100%, 0 100%);
  --clip-triangle-upper-right: polygon(0 0, 100% 0, 100% 100%);
}

.p-qualityPage__policyItem + .p-qualityPage__policyItem {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .p-qualityPage__policyItem + .p-qualityPage__policyItem {
    margin-top: 3.6rem;
  }
}

.p-qualityPage__policyItemHead {
  line-height: 1.25;
}

.p-qualityPage__policyItemHeadNum {
  font-family: "Big Shoulders Text", sans-serif;
  font-size: 2.6rem;
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  .p-qualityPage__policyItemHeadNum {
    font-size: 3rem;
  }
}

.p-qualityPage__policyItemHeadText {
  font-size: 1.8rem;
  font-feature-settings: "palt";
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  .p-qualityPage__policyItemHeadText {
    font-size: 2.1rem;
  }
}

.p-qualityPage__policyItemBody {
  margin-top: 5px;
}

.p-qualityPage__policyItemBodyText {
  font-size: 1.4rem;
  line-height: 1.75;
}
@media screen and (min-width: 768px) {
  .p-qualityPage__policyItemBodyText {
    font-size: 1.6rem;
  }
}

.p-qualityPage__materialBody {
  margin-top: 2rem;
  display: grid;
  gap: 2rem;
}
@media screen and (min-width: 768px) {
  .p-qualityPage__materialBody {
    grid-template-columns: 50% 1fr;
    gap: 6rem;
  }
}

.p-qualityPage__materialGrid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.p-qualityPage__materialImg img {
  aspect-ratio: 230/144;
  object-fit: cover;
  object-position: center;
}

.p-qualityPage__inspectionItem + .p-qualityPage__inspectionItem {
  margin-top: 3rem;
}

.p-qualityPage__iso {
  margin-top: 6rem;
}
@media screen and (min-width: 768px) {
  .p-qualityPage__iso {
    margin-top: 8rem;
  }
}

.mfp-figure::before {
  content: "";
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: 2;
  background: transparent;
}

.popup-img {
  display: block;
}

@media print {
  img.mfp-img {
    display: none;
  }
  .popup-img {
    display: none;
  }
}