@charset "UTF-8";
@font-face {
  font-family: "Helvetica";
  src: url("../font/Helvetica.ttf") format("truetype");
}
#quality-policy {
  /* ▼ philosophy 
    --------------------------------------- */
}
#quality-policy .philosophy {
  background: #f8f8f8;
  position: relative;
}
#quality-policy .philosophy__inner {
  padding-block: 87rem 0;
}
@media screen and (max-width: 767px) {
  #quality-policy .philosophy__inner {
    padding-block: 55rem 0;
  }
}
#quality-policy .philosophy__text {
  font-size: max(14px, 18rem);
  line-height: 2;
  letter-spacing: 0.02em;
  margin-top: 30rem;
}
@media screen and (max-width: 767px) {
  #quality-policy .philosophy__text {
    font-size: max(12px, 14rem);
    margin-top: 16rem;
  }
}
#quality-policy .philosophy__list {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: max(110px, 130rem);
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-column-gap: 68rem;
     -moz-column-gap: 68rem;
          column-gap: 68rem;
  margin-top: 40rem;
}
@media screen and (max-width: 767px) {
  #quality-policy .philosophy__list {
    height: unset;
    -ms-flex-wrap: unset;
        flex-wrap: unset;
  }
}
#quality-policy .philosophy__list li {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
#quality-policy .philosophy__office {
  width: 100%;
  color: #fff;
  padding-block: 56rem 64rem;
  padding-inline: 50rem 0;
  position: relative;
  z-index: 3;
  margin-top: 20rem;
  top: 30rem;
}
@media screen and (max-width: 1110px) {
  #quality-policy .philosophy__office {
    width: 90%;
    margin-left: auto;
  }
}
@media screen and (max-width: 767px) {
  #quality-policy .philosophy__office {
    width: 100%;
    padding-block: 40rem;
    padding-inline: 33rem 0;
    margin-top: -21rem;
    top: 61rem;
  }
}
#quality-policy .philosophy__office::after {
  content: "";
  width: calc(100% + (100vw - 1110rem) / 2);
  height: 100%;
  background: #AFA7A7;
  border-radius: 60rem 0 0 60rem;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  #quality-policy .philosophy__office::after {
    width: calc(100% + 20rem);
  }
}
#quality-policy .philosophy__office-title {
  font-size: max(18px, 18rem);
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.3333333333;
}
@media screen and (max-width: 767px) {
  #quality-policy .philosophy__office-title {
    font-size: 16rem;
    line-height: 1.3125;
  }
}
#quality-policy .philosophy__office-lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-left: 20rem;
  margin-top: 16px;
}
@media screen and (max-width: 1110px) {
  #quality-policy .philosophy__office-lists {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-left: 40rem;
  }
}
@media screen and (max-width: 767px) {
  #quality-policy .philosophy__office-lists {
    padding-left: 5rem;
    margin-left: unset;
  }
}
#quality-policy .philosophy__office-list-wrap li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  font-weight: 500;
  line-height: 1.875;
}
@media screen and (max-width: 767px) {
  #quality-policy .philosophy__office-list-wrap li {
    line-height: 2;
  }
}
#quality-policy .philosophy__office-list-wrap li::before {
  content: "・";
}
#quality-policy {
  /* ▼ policy
    --------------------------------------- */
}
#quality-policy .policy {
  margin-top: 135rem;
}
#quality-policy .policy__list {
  margin-top: 28rem;
}
@media screen and (max-width: 900px) {
  #quality-policy .policy__list br.pc {
    display: none;
  }
}