@charset "UTF-8";
/*日本語*/
main.quality {
  display: block;
  width: 100%;
  line-height: 2;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality {
    font-size: 3.1290743155vw;
  }
}
main.quality h1 {
  font-size: 37px;
  line-height: 1.6;
  font-family: "UD Shin Go Medium", sans-serif;
  color: #005baa;
  margin-bottom: 4rem;
  text-align: center;
}
@media screen and (max-width: 1280px) {
  main.quality h1 {
    font-size: 2.890625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality h1 {
    font-size: 4.8239895698vw;
    margin-bottom: 3rem;
  }
}
main.quality h2 {
  font-size: 25px;
  font-weight: 500;
  line-height: 1.8;
  margin-bottom: 1rem;
  color: #005baa;
}
@media screen and (max-width: 1280px) {
  main.quality h2 {
    font-size: 1.953125vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality h2 {
    font-size: 4.1720990874vw;
  }
}
main.quality h2.fs30 {
  font-size: 30px;
  font-weight: 500;
  line-height: 1.8;
  margin-bottom: 1rem;
  color: #005baa;
}
@media screen and (max-width: 1280px) {
  main.quality h2.fs30 {
    font-size: 2.34375vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality h2.fs30 {
    font-size: 5.2151238592vw;
  }
}
main.quality p.fs25 {
  font-size: 25px;
  font-weight: 500;
  line-height: 1.8;
  margin-bottom: 1rem;
  color: #005baa;
}
@media screen and (max-width: 1280px) {
  main.quality p.fs25 {
    font-size: 1.953125vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality p.fs25 {
    font-size: 3.6505867014vw;
  }
}
main.quality p.fs20 {
  color: #888;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality p.fs20 {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality p.fs20 {
    font-size: 3.6505867014vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality p {
    font-size: 3.6505867014vw;
    letter-spacing: 0.1em;
    line-height: 2;
  }
}
main.quality .mb {
  margin-bottom: 5rem;
}
main.quality .mb1 {
  margin-bottom: 0.8rem;
}
main.quality .mb2 {
  margin-bottom: 2rem;
}
main.quality .left {
  text-align: left !important;
}
main.quality .note {
  line-height: 2;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality .note {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality .note {
    font-size: 2.6075619296vw;
  }
}
main.quality .note .blue {
  color: #005baa;
}
main.quality .scr {
  display: none;
}
@media screen and (max-width: 767px) {
  main.quality .scr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    color: #005baa;
    font-size: 3.259452412vw;
    letter-spacing: 0.1em;
    line-height: 1;
    margin-bottom: 2rem;
  }
}
main.quality .scr span {
  margin-right: 0.3rem;
}
main.quality .scr img {
  width: 10%;
  -webkit-animation: scrMov 0.8s infinite linear alternate;
          animation: scrMov 0.8s infinite linear alternate;
}
@-webkit-keyframes scrMov {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(0.5rem);
            transform: translateX(0.5rem);
  }
}
@keyframes scrMov {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(0.5rem);
            transform: translateX(0.5rem);
  }
}
main.quality section {
  padding: 0 4rem;
}
main.quality section .inner {
  max-width: 1040px;
  margin: 0 auto;
  display: block;
}
@media screen and (max-width: 767px) {
  main.quality section {
    padding: 0 1.5rem;
  }
}
main.quality section.btn {
  margin-bottom: 4rem;
  z-index: 3;
  padding: 0;
}
main.quality section.btn ul {
  max-width: 1200px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 auto;
  margin-top: 3rem;
}
main.quality section.btn li {
  display: inline-block;
  text-align: center;
  -ms-flex-preferred-size: 23%;
      flex-basis: 23%;
  margin: 1rem 0.5rem;
}
@media screen and (max-width: 767px) {
  main.quality section.btn li {
    -ms-flex-preferred-size: 45%;
        flex-basis: 45%;
    margin: 0.5rem;
    margin: 1rem 0.3rem;
  }
}
main.quality section.btn li a {
  font-size: 25px;
  font-weight: 500;
  color: #005baa;
  line-height: 1.4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #fff;
  -webkit-box-shadow: 0px 3px 12px -4px #005baa;
          box-shadow: 0px 3px 12px -4px #005baa;
  border-radius: 5rem;
  height: 6rem;
  position: relative;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
@media screen and (max-width: 1280px) {
  main.quality section.btn li a {
    font-size: 1.953125vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.btn li a {
    font-size: 3.3898305085vw;
    height: 5rem;
  }
}
main.quality section.btn li a span {
  display: inline-block;
  vertical-align: middle;
}
main.quality section.btn li a span::after {
  height: 1;
  display: block;
  content: "▶";
  position: absolute;
  top: 50%;
  right: 0.5rem;
  -webkit-transform: translateY(-50%) scaleX(0.3) scaleY(0.4);
          transform: translateY(-50%) scaleX(0.3) scaleY(0.4);
}
@media screen and (max-width: 1280px) {
  main.quality section.btn li a span::after {
    right: 0.2rem;
  }
}
main.quality section.btn li a:hover {
  color: #fff;
  background-color: #005baa;
}
main.quality.announcement section.btn ul li:nth-child(1) a {
  color: #fff;
  background-color: #A8A8A8;
  pointer-events: none;
}
main.quality.qualityIndex section.btn ul li:nth-child(2) a {
  color: #fff;
  background-color: #A8A8A8;
  pointer-events: none;
}
main.quality.stable-supply section.btn ul li:nth-child(4) a {
  color: #fff;
  background-color: #A8A8A8;
  pointer-events: none;
}
main.quality.assurance section.btn ul li:nth-child(3) a {
  color: #fff;
  background-color: #A8A8A8;
  pointer-events: none;
}
main.quality.information section.btn ul li:nth-child(5) a {
  color: #fff;
  background-color: #A8A8A8;
  pointer-events: none;
}
main.quality.flow section.btn ul li:nth-child(6) a {
  color: #fff;
  background-color: #A8A8A8;
  pointer-events: none;
}
main.quality.system section.btn ul li:nth-child(7) a {
  color: #fff;
  background-color: #A8A8A8;
  pointer-events: none;
}
main.quality.faq section.btn ul li:nth-child(8) a {
  color: #fff;
  background-color: #A8A8A8;
  pointer-events: none;
}
main.quality section.qa {
  margin-top: 2rem;
  padding: 5rem;
  background-color: #fff;
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  main.quality section.qa {
    padding: 4rem 2rem;
    margin-top: 4rem;
  }
}
main.quality section.qa .inner {
  max-width: 1040px;
  margin: 0 auto;
  display: block;
}
main.quality section.qa .inner h2 {
  text-align: center;
  font-size: 30px;
  font-weight: 500;
  color: #005baa;
  margin-bottom: 2rem;
}
@media screen and (max-width: 1280px) {
  main.quality section.qa .inner h2 {
    font-size: 2.34375vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qa .inner h2 {
    font-size: 4.1720990874vw;
  }
}
main.quality section.qa .inner p.fs20 {
  line-height: 2.5;
  text-align: center;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  main.quality section.qa .inner p.fs20 {
    line-height: 2;
  }
}
main.quality section.qa .inner dl dt.q {
  border-bottom: 1px solid #005baa;
  margin-bottom: 1rem;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  main.quality section.qa .inner dl dt.q {
    padding-bottom: 0.8rem;
  }
}
main.quality section.qa .inner dl dt.q div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 25px;
  font-weight: 500;
  line-height: 1.7;
  color: #005baa;
  position: relative;
}
@media screen and (max-width: 1280px) {
  main.quality section.qa .inner dl dt.q div {
    font-size: 1.953125vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qa .inner dl dt.q div {
    font-size: 4.1720990874vw;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
main.quality section.qa .inner dl dt.q div::before {
  -ms-flex-preferred-size: 5%;
      flex-basis: 5%;
  font-family: "Noto Sans JP", sans-serif;
  content: "Q";
  font-size: 40px;
  font-weight: 500;
  color: #005baa;
  border-radius: 5rem;
}
@media screen and (max-width: 1280px) {
  main.quality section.qa .inner dl dt.q div::before {
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qa .inner dl dt.q div::before {
    font-size: 5.8670143416vw;
    -ms-flex-preferred-size: 10%;
        flex-basis: 10%;
    position: relative;
    top: -0.5rem;
  }
}
main.quality section.qa .inner dl dt.q div span {
  -ms-flex-preferred-size: 90%;
      flex-basis: 90%;
}
main.quality section.qa .inner dl dt.q div::after {
  content: "+";
  font-size: 60px;
  font-weight: 300;
  line-height: 1.8;
  color: #005baa;
}
@media screen and (max-width: 1280px) {
  main.quality section.qa .inner dl dt.q div::after {
    font-size: 4.6875vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qa .inner dl dt.q div::after {
    font-size: 5.8670143416vw;
    position: relative;
    top: -0.5rem;
  }
}
main.quality section.qa .inner dl dt.opened div::after {
  content: "-";
  -webkit-transform: scaleX(2);
          transform: scaleX(2);
  position: relative;
  left: 0.5rem;
}
@media screen and (max-width: 767px) {
  main.quality section.qa .inner dl dt.opened div::after {
    left: 0.1rem;
  }
}
main.quality section.qa .inner dl dd div.wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 20px;
  line-height: 2;
  font-weight: 400;
  padding-bottom: 2rem;
}
@media screen and (max-width: 1280px) {
  main.quality section.qa .inner dl dd div.wrap {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qa .inner dl dd div.wrap {
    font-size: 3.259452412vw;
    position: relative;
    top: -0.5rem;
  }
}
main.quality section.qa .inner dl dd div.wrap .inner {
  -ms-flex-preferred-size: 94%;
      flex-basis: 94%;
  padding-top: 0.4rem;
}
@media screen and (max-width: 767px) {
  main.quality section.qa .inner dl dd div.wrap .inner {
    -ms-flex-preferred-size: 90%;
        flex-basis: 90%;
  }
}
main.quality section.qa .inner dl dd div.wrap .inner a {
  margin-top: 1rem;
  display: inline-block;
  color: #005baa;
  text-decoration: underline;
}
main.quality section.qa .inner dl dd div.wrap::before {
  -ms-flex-preferred-size: 5%;
      flex-basis: 5%;
  content: "A";
  font-size: 40px;
  font-weight: 500;
  color: #005baa;
  font-family: "Noto Sans JP", sans-serif;
  border-radius: 5rem;
  position: relative;
  top: -1rem;
  left: 0.3rem;
}
@media screen and (max-width: 1280px) {
  main.quality section.qa .inner dl dd div.wrap::before {
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qa .inner dl dd div.wrap::before {
    font-size: 5.8670143416vw;
    -ms-flex-preferred-size: 10%;
        flex-basis: 10%;
    top: 0rem;
    left: 0.2rem;
  }
}
main.quality section.info2_1 {
  margin-top: 6rem;
}
main.quality section.info2_1 p {
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality section.info2_1 p {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.info2_1 p {
    font-size: 3.1290743155vw;
  }
}
main.quality section.info2_1 p.fs16 {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality section.info2_1 p.fs16 {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.info2_1 p.fs16 {
    font-size: 3.1290743155vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.info2_1 .inner {
    padding: 0;
  }
}
main.quality section.info2_1 .inner p.fs20 {
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality section.info2_1 .inner p.fs20 {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.info2_1 .inner p.fs20 {
    font-size: 3.6505867014vw;
  }
}
main.quality section.info2_1 .inner h1 + p.fs20 {
  line-height: 2.5;
  text-align: center;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  main.quality section.info2_1 .inner h1 + p.fs20 {
    line-height: 2;
    font-size: 3.6505867014vw;
  }
}
main.quality section.info2_1 .inner .overflow {
  width: 100%;
  margin-bottom: 3rem;
}
main.quality section.info2_1 .inner .overflow img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  main.quality section.info2_1 .inner .overflow {
    font-size: 3.75vw;
    padding: 0;
    width: 100%;
    overflow-x: auto;
    white-space: nowrap;
    overflow-scrolling: touch;
    -webkit-overflow-scrolling: touch;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    margin-bottom: 0.5rem;
  }
  main.quality section.info2_1 .inner .overflow img {
    width: 150vw;
    left: 0;
  }
}
main.quality section.info2_1 .inner table {
  width: 100%;
  text-align: left;
  color: #888;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
  margin-bottom: 1rem;
}
@media screen and (max-width: 1280px) {
  main.quality section.info2_1 .inner table {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.info2_1 .inner table {
    font-size: 2.6075619296vw;
  }
}
main.quality section.info2_1 .inner table tr th,
main.quality section.info2_1 .inner table tr td {
  border-left: 1px solid #D1D1D1;
  border-bottom: 1px solid #D1D1D1;
  padding: 0.5rem;
  vertical-align: middle;
}
main.quality section.info2_1 .inner table tr td {
  border-right: 1px solid #D1D1D1;
}
main.quality section.info2_1 .inner table tr:first-child {
  border-top: 1px solid #D1D1D1;
}
main.quality section.info2_1 .inner table + p {
  margin-bottom: 2rem;
}
main.quality section.info2_1 .inner .table2 {
  text-align: center;
}
main.quality section.info2_1 .inner .table2 tr th {
  background-color: #005baa10;
}
main.quality section.info2_1 .inner .table2 tr th:nth-child(2) {
  border-right: 1px solid #D1D1D1;
}
main.quality section.info2_1 .inner .cmnBtn.btn1 {
  width: 16rem;
  margin: 0 auto 6rem 0;
}
main.quality section.info2_1 .inner .cmnBtn.btn2 {
  width: 19rem;
  margin: 0 auto 3rem 0;
}
main.quality section.info2_1 .wrap4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  main.quality section.info2_1 .wrap4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding-bottom: 1rem;
  }
}
main.quality section.info2_1 .wrap4 .text {
  -ms-flex-preferred-size: 44%;
      flex-basis: 44%;
  margin-right: 5rem;
}
@media screen and (max-width: 767px) {
  main.quality section.info2_1 .wrap4 .text {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    margin-right: 0;
  }
  main.quality section.info2_1 .wrap4 .text p.mb {
    margin-bottom: 2rem;
  }
}
main.quality section.info2_1 .wrap4 img {
  -ms-flex-preferred-size: 28%;
      flex-basis: 28%;
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  main.quality section.info2_1 .wrap4 img {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    width: 70%;
    margin: 0 auto 0 6rem;
  }
}
main.quality body.Android br.AndroidNone {
  display: none !important;
}
main.quality section.assurance1 {
  margin-bottom: 7rem;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 {
    margin-bottom: 5rem;
  }
}
main.quality section.assurance1 .inner {
  max-width: 1200px;
  display: block;
  margin: 0 auto;
}
main.quality section.assurance1 .inner p {
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality section.assurance1 .inner p {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner p {
    font-size: 3.1290743155vw;
  }
}
main.quality section.assurance1 .inner p.fs16 {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality section.assurance1 .inner p.fs16 {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner p.fs16 {
    font-size: 3.1290743155vw;
  }
}
main.quality section.assurance1 .inner p.fs20 {
  color: #888;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
}
main.quality section.assurance1 .inner p.fs20.blue {
  color: #005baa;
}
@media screen and (max-width: 1280px) {
  main.quality section.assurance1 .inner p.fs20 {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner p.fs20 {
    font-size: 3.6505867014vw;
    letter-spacing: 0.1em;
    line-height: 2;
  }
}
main.quality section.assurance1 .inner h1 + p.fs20 {
  line-height: 2.5;
  text-align: center;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner h1 + p.fs20 {
    font-size: 3.6505867014vw;
    letter-spacing: 0.1em;
    line-height: 2;
  }
}
main.quality section.assurance1 .inner .overflow {
  width: 100%;
  margin-top: 1rem;
}
main.quality section.assurance1 .inner .overflow img {
  width: 100%;
  height: auto;
  opacity: 0;
  -webkit-transform: translateY(5rem);
          transform: translateY(5rem);
  -webkit-transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: transform 0.8s ease-out, opacity 0.7s;
  transition: transform 0.8s ease-out, opacity 0.7s, -webkit-transform 0.8s ease-out;
}
main.quality section.assurance1 .inner .overflow img.start {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner .overflow {
    font-size: 3.75vw;
    padding: 0;
    width: 100%;
    overflow-x: auto;
    white-space: nowrap;
    overflow-scrolling: touch;
    -webkit-overflow-scrolling: touch;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  main.quality section.assurance1 .inner .overflow img {
    width: 150vw;
    left: 0;
    -webkit-transform: translateY(0rem);
            transform: translateY(0rem);
  }
}
main.quality section.assurance1 .inner .overflow1 {
  margin-bottom: 1rem;
}
main.quality section.assurance1 .inner .overflow1 + p.note {
  padding-left: 5rem;
  padding-left: 0;
}
main.quality section.assurance1 .inner .wrap1 {
  margin-top: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner .wrap1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 4rem;
  }
}
main.quality section.assurance1 .inner .wrap1 .text {
  -ms-flex-preferred-size: 45%;
      flex-basis: 45%;
  text-align: justify;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner .wrap1 .text {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    margin-bottom: 1rem;
  }
}
main.quality section.assurance1 .inner .wrap1 .imgArea {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner .wrap1 .imgArea {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
}
main.quality section.assurance1 .inner .wrap1 .imgArea img {
  margin-top: 1rem;
  width: 100%;
  height: auto;
  opacity: 0;
  -webkit-transform: translateY(5rem);
          transform: translateY(5rem);
  -webkit-transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: transform 0.8s ease-out, opacity 0.7s;
  transition: transform 0.8s ease-out, opacity 0.7s, -webkit-transform 0.8s ease-out;
}
main.quality section.assurance1 .inner .wrap1 .imgArea img.start {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
main.quality section.assurance1 .inner .wrap1_2 {
  margin-top: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner .wrap1_2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 4rem;
  }
}
main.quality section.assurance1 .inner .wrap1_2 .text {
  -ms-flex-preferred-size: 48%;
      flex-basis: 48%;
  text-align: justify;
  margin-right: 3rem;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner .wrap1_2 .text {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    margin-bottom: 1rem;
    margin-right: 0;
  }
  main.quality section.assurance1 .inner .wrap1_2 .text img {
    width: 80%;
    height: auto;
    margin: 0 auto;
    margin-right: 4rem;
    margin-bottom: 2rem;
    opacity: 0;
    -webkit-transform: translateY(5rem);
            transform: translateY(5rem);
    -webkit-transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
    transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.7s;
    transition: transform 0.8s ease-out, opacity 0.7s, -webkit-transform 0.8s ease-out;
  }
  main.quality section.assurance1 .inner .wrap1_2 .text img.start {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  main.quality section.assurance1 .inner .wrap1_2 .text p.rightA {
    text-align: right;
    margin-bottom: 3rem;
    padding-right: 0;
  }
}
main.quality section.assurance1 .inner .wrap1_2 .text p.fs20.blue {
  margin-bottom: 1rem;
}
main.quality section.assurance1 .inner .wrap1_2 .imgArea {
  -ms-flex-preferred-size: 32%;
      flex-basis: 32%;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner .wrap1_2 .imgArea {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
}
main.quality section.assurance1 .inner .wrap1_2 .imgArea img {
  margin-top: 1rem;
  width: 100%;
  height: auto;
  opacity: 0;
  -webkit-transform: translateY(5rem);
          transform: translateY(5rem);
  -webkit-transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: transform 0.8s ease-out, opacity 0.7s;
  transition: transform 0.8s ease-out, opacity 0.7s, -webkit-transform 0.8s ease-out;
}
main.quality section.assurance1 .inner .wrap1_2 .imgArea img.start {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
main.quality section.assurance1 .inner p.rightA {
  text-align: right;
  margin-bottom: 3rem;
  padding-right: 1.5rem;
}
main.quality section.assurance1 .inner .wrap2 {
  padding-top: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner .wrap2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
main.quality section.assurance1 .inner .wrap2 .imgWrap {
  -ms-flex-preferred-size: 30%;
      flex-basis: 30%;
  padding-right: 2rem;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner .wrap2 .imgWrap {
    margin-bottom: 2rem;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
  }
}
main.quality section.assurance1 .inner .wrap2 .imgWrap img {
  width: 100%;
  height: auto;
  opacity: 0;
  -webkit-transform: translateY(5rem);
          transform: translateY(5rem);
  -webkit-transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: transform 0.8s ease-out, opacity 0.7s;
  transition: transform 0.8s ease-out, opacity 0.7s, -webkit-transform 0.8s ease-out;
}
main.quality section.assurance1 .inner .wrap2 .imgWrap img.start {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
main.quality section.assurance1 .inner .wrap2 + p.fs20 {
  text-align: right;
  position: relative;
  top: -1rem;
  right: 0;
}
main.quality section.assurance1 .inner .overflow2 {
  padding-top: 1rem;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .inner .overflow2 {
    margin-bottom: 0.5rem;
  }
}
main.quality section.assurance1 .wrap3 {
  border: #005baa 2px solid;
  padding: 2rem 4rem;
  background-color: #fff;
  border-radius: 1rem;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .wrap3 {
    padding: 2rem;
  }
}
main.quality section.assurance1 .wrap3 h2 {
  text-align: center;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .wrap3 h2 {
    text-align: left;
  }
}
main.quality section.assurance1 .wrap3 ul {
  color: #888;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
  list-style-position: outside;
  padding-left: 4rem;
}
@media screen and (max-width: 1280px) {
  main.quality section.assurance1 .wrap3 ul {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .wrap3 ul {
    font-size: 3.6505867014vw;
    letter-spacing: 0.1em;
    line-height: 2;
    padding-left: 2rem;
  }
}
main.quality section.assurance1 .wrap3 ul li {
  margin-bottom: 0.5rem;
  position: relative;
}
main.quality section.assurance1 .wrap3 ul li:nth-child(1) span::before {
  content: "1)";
  position: absolute;
  left: -2.5rem;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .wrap3 ul li:nth-child(1) span::before {
    left: -2rem;
  }
}
main.quality section.assurance1 .wrap3 ul li:nth-child(2) span::before {
  content: "2)";
  position: absolute;
  left: -2.5rem;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .wrap3 ul li:nth-child(2) span::before {
    left: -2rem;
  }
}
main.quality section.assurance1 .wrap3 ul li:nth-child(3) span::before {
  content: "3)";
  position: absolute;
  left: -2.5rem;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .wrap3 ul li:nth-child(3) span::before {
    left: -2rem;
  }
}
main.quality section.assurance1 .wrap3 ul li:nth-child(4) span::before {
  content: "4)";
  position: absolute;
  left: -2.5rem;
}
@media screen and (max-width: 767px) {
  main.quality section.assurance1 .wrap3 ul li:nth-child(4) span::before {
    left: -2rem;
  }
}
main.quality section.assurance1 .wrap3 ul + p {
  text-align: right;
}
main.quality section.supply1 {
  margin-top: 6rem;
  margin-bottom: 6rem;
}
main.quality section.supply1 p.fs20 {
  line-height: 2.5;
  text-align: center;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  main.quality section.supply1 p.fs20 {
    line-height: 2;
  }
}
main.quality section.supply1 p {
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality section.supply1 p {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.supply1 p {
    font-size: 3.1290743155vw;
  }
}
main.quality section.supply1 p {
  line-height: 1.8;
  margin-bottom: 1rem;
}
main.quality section.supply1 p.mb {
  margin-bottom: 3rem;
}
main.quality section.supply1 .btn {
  padding-top: 2rem;
  width: 35rem;
  display: block;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  main.quality section.supply1 .btn {
    width: 75%;
  }
}
main.quality section.supply1 .btn a {
  width: 100%;
  position: relative;
  text-align: center;
  color: #fff;
  display: block;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
  background-color: #005baa;
  border-radius: 5rem;
  padding: 1rem;
  -webkit-box-shadow: 0px 3px 12px -4px #005baa;
          box-shadow: 0px 3px 12px -4px #005baa;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
@media screen and (max-width: 1280px) {
  main.quality section.supply1 .btn a {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.supply1 .btn a {
    font-size: 3.1290743155vw;
  }
}
main.quality section.supply1 .btn a i {
  position: absolute;
  line-height: 1;
  height: 1rem;
  top: -0.1rem;
  right: 1rem;
  bottom: 0;
  margin: auto;
  -webkit-transform: scale(0.9);
          transform: scale(0.9);
}
main.quality section.supply1 .btn a:hover {
  color: #005baa;
  background-color: #fff;
}
main.quality section.info1 {
  margin-top: 6rem;
}
main.quality section.info1 h2.fs30 {
  text-align: center;
  margin-bottom: 4rem;
}
main.quality section.info1 p {
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality section.info1 p {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.info1 p {
    font-size: 3.1290743155vw;
  }
}
main.quality section.info1 p.fs20 {
  line-height: 2.5;
  text-align: center;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  main.quality section.info1 p.fs20 {
    line-height: 2;
  }
}
main.quality section.info1 ul {
  list-style-type: disc;
  list-style-position: outside;
  padding-left: 1.2rem;
  margin-bottom: 5rem;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality section.info1 ul {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.info1 ul {
    font-size: 3.1290743155vw;
  }
}
main.quality section.info1 ul li {
  margin-bottom: 0.8rem;
}
main.quality section.info1 .wrap {
  border: #005baa 1px solid;
  border-radius: 1rem;
  padding: 2rem;
  margin-bottom: 4rem;
}
main.quality section.info1 .wrap p.fs16 {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality section.info1 .wrap p.fs16 {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.info1 .wrap p.fs16 {
    font-size: 3.1290743155vw;
  }
}
main.quality section.info1 .wrap ul {
  margin-bottom: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality section.info1 .wrap ul {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.info1 .wrap ul {
    font-size: 3.1290743155vw;
  }
}
main.quality section.info2 {
  text-align: center;
  margin-bottom: 7rem;
}
@media screen and (max-width: 767px) {
  main.quality section.info2 {
    padding: 0;
    margin-bottom: 5em;
  }
}
main.quality section.info2 .circleWrap {
  max-width: 1040px;
  display: block;
  margin: 0 auto;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  text-align: center;
}
@media screen and (max-width: 767px) {
  main.quality section.info2 .circleWrap {
    padding-top: 0.5rem;
  }
}
main.quality section.info2 .circleWrap .circle {
  text-align: center;
  display: inline-block;
  width: 20rem;
  height: 20rem;
  background-color: #fff;
  -webkit-box-shadow: 0px 3px 12px -4px #005baa;
          box-shadow: 0px 3px 12px -4px #005baa;
  border-radius: 50%;
  font-size: 23px;
  font-weight: 500;
  line-height: 1.8;
  margin-bottom: 1rem;
  color: #005baa;
  position: relative;
  margin: 0 0.5rem;
  opacity: 0;
  -webkit-transform: translateY(5rem);
          transform: translateY(5rem);
  -webkit-transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: transform 0.8s ease-out, opacity 0.7s;
  transition: transform 0.8s ease-out, opacity 0.7s, -webkit-transform 0.8s ease-out;
}
@media screen and (max-width: 1280px) {
  main.quality section.info2 .circleWrap .circle {
    font-size: 1.796875vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.info2 .circleWrap .circle {
    font-size: 3.1290743155vw;
    margin-bottom: 0;
    width: 13rem;
    height: 13rem;
  }
}
main.quality section.info2 .circleWrap .circle span {
  width: 100%;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
}
@media screen and (min-width: 768px) and (max-width: 9999px) {
  main.quality section.info2 .circleWrap.start .circle:nth-child(1) {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  main.quality section.info2 .circleWrap.start .circle:nth-child(3) {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  main.quality section.info2 .circleWrap.start .circle:nth-child(4) {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    -webkit-transition-delay: 0.8s;
            transition-delay: 0.8s;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.info2 .circleWrap .circle.start {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
main.quality section.flow1 {
  margin-top: 6rem;
}
main.quality section.flow1 p.fs20 {
  color: #888;
  text-align: center;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  main.quality section.flow1 p.fs20 {
    text-align: left;
    font-size: 3.6505867014vw;
    letter-spacing: 0.05em;
  }
}
main.quality section.flow1 table {
  width: 100%;
  text-align: left;
  color: #888;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
  margin-bottom: 8rem;
}
@media screen and (max-width: 1280px) {
  main.quality section.flow1 table {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.flow1 table {
    font-size: 2.998696219vw;
    margin-bottom: 4rem;
  }
}
main.quality section.flow1 table tr th {
  background-color: #005baa10;
}
main.quality section.flow1 table tr th:last-child {
  border-right: 1px solid #D1D1D1;
}
@media screen and (max-width: 767px) {
  main.quality section.flow1 table tr th {
    text-align: center;
    padding: 1rem 0rem !important;
  }
  main.quality section.flow1 table tr th.tume {
    letter-spacing: -0.03em;
  }
}
main.quality section.flow1 table tr th,
main.quality section.flow1 table tr td {
  border-left: 1px solid #D1D1D1;
  border-bottom: 1px solid #D1D1D1;
  padding: 1rem 0.3rem 1rem 0.8rem;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  main.quality section.flow1 table tr th,
main.quality section.flow1 table tr td {
    padding: 1rem 0.1rem 1rem 0.7rem;
  }
}
main.quality section.flow1 table tr td {
  border-right: 1px solid #D1D1D1;
}
main.quality section.flow1 table tr td.tdleft {
  width: 13%;
  line-height: 2.6;
}
@media screen and (max-width: 767px) {
  main.quality section.flow1 table tr td.tdleft {
    width: 19%;
  }
}
main.quality section.flow1 table tr td.tdceter {
  width: 27%;
}
@media screen and (max-width: 767px) {
  main.quality section.flow1 table tr td.tdceter {
    width: 37%;
  }
}
main.quality section.flow1 table tr td.tdright {
  width: 27%;
}
@media screen and (max-width: 767px) {
  main.quality section.flow1 table tr td.tdright {
    width: 43%;
  }
}
main.quality section.flow1 table tr:first-child {
  border-top: 1px solid #D1D1D1;
}
main.quality section.flow1 table ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  line-height: 1.5rem;
  margin-bottom: 0.5rem;
}
main.quality section.flow1 table ul li::before {
  content: "●";
  -ms-flex-preferred-size: 0.8rem;
      flex-basis: 0.8rem;
  margin-right: 0.1rem;
}
main.quality section.flow1 table ul li:last-child {
  margin-bottom: 0;
}
main.quality section.flow1 table ul li span {
  -ms-flex-preferred-size: 83%;
      flex-basis: 83%;
}
@media screen and (max-width: 767px) {
  main.quality section.flow1 table ul li span {
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
  }
}
main.quality section.flow1 table ul li span.fs12 {
  font-size: 12px;
  font-weight: 500;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  padding-left: 1rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  main.quality section.flow1 table ul li span.fs12 {
    -ms-flex-preferred-size: 95%;
        flex-basis: 95%;
    font-size: 2.6075619296vw;
  }
}
main.quality section.flow1 table ul.ul2 li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 1rem;
}
main.quality section.flow1 table ul.ul2 li::before {
  content: "";
  -ms-flex-preferred-size: 0.8rem;
      flex-basis: 0.8rem;
  margin-right: 0.1rem;
}
main.quality section.flow1 table ul.ul2 li:last-child {
  margin-bottom: 0;
}
main.quality section.flow1 table ul.ul2 li span {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
@media screen and (max-width: 767px) {
  main.quality section.flow1 table ul.ul2 li span {
    width: 60%;
  }
}
main.quality section.flow2 {
  margin-top: 6rem;
  margin-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  main.quality section.flow2 {
    margin-bottom: 5rem;
  }
}
main.quality section.flow2 h2 {
  font-size: 37px;
  line-height: 1.6;
  font-family: "UD Shin Go Medium", sans-serif;
  color: #005baa;
  margin-bottom: 4rem;
  text-align: center;
}
@media screen and (max-width: 1280px) {
  main.quality section.flow2 h2 {
    font-size: 2.890625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.flow2 h2 {
    font-size: 4.6936114733vw;
    margin-bottom: 3rem;
  }
}
main.quality section.flow2 h2 + p {
  text-align: center;
}
@media screen and (max-width: 767px) {
  main.quality section.flow2 h2 + p {
    text-align: left;
    font-size: 3.6505867014vw;
    letter-spacing: 0.1em;
  }
}
main.quality section.flow2 ul {
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  main.quality section.flow2 ul {
    margin-top: 2rem;
  }
}
main.quality section.flow2 ul li {
  opacity: 0;
  -webkit-transform: translateY(5rem);
          transform: translateY(5rem);
  -webkit-transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: transform 0.8s ease-out, opacity 0.7s;
  transition: transform 0.8s ease-out, opacity 0.7s, -webkit-transform 0.8s ease-out;
}
main.quality section.flow2 ul li.start {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
main.quality section.flow2 ul li::after {
  content: url(../img/arrow.svg);
  margin: 1rem;
  display: block;
  padding-left: 1.6rem;
}
main.quality section.flow2 ul li:last-child::after {
  content: "";
}
main.quality section.flow2 ul li:nth-child(2) p {
  letter-spacing: -0.03em;
}
main.quality section.flow2 ul li .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
main.quality section.flow2 ul li .wrap .imgWrap {
  -ms-flex-preferred-size: 10%;
      flex-basis: 10%;
}
@media screen and (max-width: 767px) {
  main.quality section.flow2 ul li .wrap .imgWrap {
    -ms-flex-preferred-size: 23%;
        flex-basis: 23%;
  }
}
main.quality section.flow2 ul li .wrap .imgWrap img {
  width: 100%;
  height: auto;
}
main.quality section.flow2 ul li .wrap .text {
  -ms-flex-preferred-size: 88%;
      flex-basis: 88%;
}
@media screen and (max-width: 767px) {
  main.quality section.flow2 ul li .wrap .text {
    -ms-flex-preferred-size: 74%;
        flex-basis: 74%;
  }
}
main.quality section.flow2 ul li .wrap .text h3 {
  font-size: 30px;
  font-weight: 500;
  color: #005baa;
  line-height: 1.1;
}
@media screen and (max-width: 1280px) {
  main.quality section.flow2 ul li .wrap .text h3 {
    font-size: 2.34375vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.flow2 ul li .wrap .text h3 {
    font-size: 3.9113428944vw;
    letter-spacing: 0.1em;
  }
}
main.quality section.flow2 ul li .wrap .text p {
  color: #888;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality section.flow2 ul li .wrap .text p {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.flow2 ul li .wrap .text p {
    font-size: 3.6505867014vw;
    letter-spacing: 0.1em;
  }
}
main.quality section.system1 {
  margin-top: 6rem;
  margin-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  main.quality section.system1 {
    margin-bottom: 3rem;
  }
}
main.quality section.system1 p.fs20 {
  color: #888;
  text-align: center;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.8;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  main.quality section.system1 p.fs20 {
    text-align: left;
    font-size: 3.6505867014vw;
    letter-spacing: 0.05em;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.system1 .spImg {
    width: 100%;
    height: auto;
    margin-bottom: 4rem;
    opacity: 0;
    -webkit-transform: translateY(5rem);
            transform: translateY(5rem);
    -webkit-transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
    transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
    transition: transform 0.8s ease-out, opacity 0.7s;
    transition: transform 0.8s ease-out, opacity 0.7s, -webkit-transform 0.8s ease-out;
  }
  main.quality section.system1 .spImg.start {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  main.quality section.system1 .spImg img {
    width: 100%;
    height: auto;
  }
}
main.quality section.system1 .systemWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
main.quality section.system1 .systemWrap .num {
  color: #fff;
  width: 4.5rem;
  height: 4.5rem;
  line-height: 1;
  font-size: 37px;
  font-weight: 500;
  line-height: 1.8;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #005baa;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 1280px) {
  main.quality section.system1 .systemWrap .num {
    font-size: 2.890625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.system1 .systemWrap .num {
    font-size: 4.6936114733vw;
    letter-spacing: 0.1em;
    width: 2.7rem;
    height: 2.7rem;
  }
}
main.quality section.system1 .systemWrap h3 {
  color: #005baa;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.8;
  text-align: center;
  display: block;
  margin-bottom: 1rem;
}
@media screen and (max-width: 1280px) {
  main.quality section.system1 .systemWrap h3 {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.system1 .systemWrap h3 {
    font-size: 3.6505867014vw;
  }
}
main.quality section.system1 .systemWrap h3 span {
  font-size: 25px;
  margin: 0 0.5rem;
}
@media screen and (max-width: 1280px) {
  main.quality section.system1 .systemWrap h3 span {
    font-size: 1.953125vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.system1 .systemWrap h3 span {
    font-size: 4.1720990874vw;
  }
}
main.quality section.system1 .systemWrap p {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}
@media screen and (max-width: 1280px) {
  main.quality section.system1 .systemWrap p {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.system1 .systemWrap p {
    font-size: 3.6505867014vw;
    letter-spacing: 0.1em;
  }
}
main.quality section.system1 .systemWrap .box {
  border: 1px #005baa solid;
  position: relative;
  padding: 2rem;
}
@media screen and (max-width: 767px) {
  main.quality section.system1 .systemWrap .box {
    margin-bottom: 2rem;
  }
}
main.quality section.system1 .systemWrap .box1 {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
main.quality section.system1 .systemWrap .box2,
main.quality section.system1 .systemWrap .box3,
main.quality section.system1 .systemWrap .box4,
main.quality section.system1 .systemWrap .box5 {
  -ms-flex-preferred-size: 46%;
      flex-basis: 46%;
}
@media all and (-ms-high-contrast: none) {
  main.quality section.system1 .systemWrap .box2,
main.quality section.system1 .systemWrap .box3,
main.quality section.system1 .systemWrap .box4,
main.quality section.system1 .systemWrap .box5 {
    -ms-flex-preferred-size: 38%;
        flex-basis: 38%;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.system1 .systemWrap .box2,
main.quality section.system1 .systemWrap .box3,
main.quality section.system1 .systemWrap .box4,
main.quality section.system1 .systemWrap .box5 {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
}
main.quality section.system1 .systemWrap .box4,
main.quality section.system1 .systemWrap .box5 {
  border: 1px #888 solid;
}
main.quality section.system1 .systemWrap .box4 .num,
main.quality section.system1 .systemWrap .box5 .num {
  background-color: #888;
}
main.quality section.system1 .systemWrap .box4 h3,
main.quality section.system1 .systemWrap .box5 h3 {
  color: #888;
}
main.quality section.system1 .systemWrap .arrow1 {
  -ms-flex-preferred-size: 46%;
      flex-basis: 46%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.8rem;
}
main.quality section.system1 .systemWrap .arrow1 img {
  margin: 0 auto;
  display: block;
}
main.quality section.system1 .systemWrap .arrow2 {
  -ms-flex-preferred-size: 8%;
      flex-basis: 8%;
  text-align: center;
  display: block;
  position: relative;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
main.quality section.system1 .systemWrap .arrow2 img {
  position: absolute;
  width: 100%;
  height: auto;
  display: block;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex1 {
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex1 .inner {
    width: 100%;
  }
}
main.quality section.qualityIndex1 p.fs20.p2rem {
  white-space: nowrap;
  text-align: center;
  line-height: 2.5;
}
@media screen and (max-width: 1280px) {
  main.quality section.qualityIndex1 p.fs20.p2rem {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex1 p.fs20.p2rem {
    font-size: 3.6505867014vw;
    letter-spacing: 0.1em;
    white-space: normal;
    text-align: left;
    padding: 0 2rem;
  }
}
main.quality section.qualityIndex1 ul {
  padding-top: 5rem;
  max-width: 1100px;
  margin: 0 auto;
  display: block;
  text-align: center;
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex1 ul {
    width: 100%;
    padding-top: 3rem;
  }
}
main.quality section.qualityIndex1 ul li {
  width: 15rem;
  height: 15rem;
  display: inline-block;
  -webkit-box-shadow: 0px 3px 12px -4px #005baa;
          box-shadow: 0px 3px 12px -4px #005baa;
  border-radius: 50%;
  margin: 0 0.8rem;
  opacity: 0;
  -webkit-transform: translateY(5rem);
          transform: translateY(5rem);
  -webkit-transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: transform 0.8s ease-out, opacity 0.7s;
  transition: transform 0.8s ease-out, opacity 0.7s, -webkit-transform 0.8s ease-out;
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex1 ul li {
    width: 42%;
    height: 42%;
    margin: 0.7rem;
  }
}
main.quality section.qualityIndex1 ul li a {
  padding: 1rem;
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex1 ul li a {
    padding: 0.5rem;
  }
}
main.quality section.qualityIndex1 ul li a img {
  width: 60%;
  height: auto;
  margin: 0 auto;
  display: block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
main.quality section.qualityIndex1 ul li a p {
  display: block;
  font-size: 28px;
  font-family: "UD Shin Go Regular", sans-serif;
  color: #005baa;
}
@media screen and (max-width: 1280px) {
  main.quality section.qualityIndex1 ul li a p {
    font-size: 2.1875vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex1 ul li a p {
    font-size: 4.6936114733vw;
    letter-spacing: 0.1em;
    white-space: normal;
  }
}
main.quality section.qualityIndex1 ul li a:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
main.quality section.qualityIndex1 ul.start li:nth-child(1) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
main.quality section.qualityIndex1 ul.start li:nth-child(2) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
main.quality section.qualityIndex1 ul.start li:nth-child(3) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
main.quality section.qualityIndex1 ul.start li:nth-child(4) {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
main.quality section.qualityIndex2 {
  padding-top: 5rem;
}
main.quality section.qualityIndex2 .inner {
  max-width: 1200px;
}
main.quality section.qualityIndex2 .box {
  width: 100%;
  padding-top: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: -15rem;
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex2 .box {
    padding-top: 2rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 4rem;
  }
}
main.quality section.qualityIndex2 .box .circle {
  -ms-flex-preferred-size: 15%;
      flex-basis: 15%;
  width: 15rem;
  display: block;
  margin: 0 1rem;
  text-align: center;
  margin-right: 10rem;
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex2 .box .circle {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    margin-right: 0;
  }
}
main.quality section.qualityIndex2 .box .circle .imgWrap {
  width: 7rem;
  height: 7rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto;
  -webkit-box-shadow: 0px 3px 12px -4px #005baa;
          box-shadow: 0px 3px 12px -4px #005baa;
  border-radius: 50%;
  overflow: hidden;
  margin-bottom: 1rem;
}
main.quality section.qualityIndex2 .box .circle .imgWrap img {
  width: 85%;
  height: auto;
  display: block;
  margin: auto;
}
main.quality section.qualityIndex2 .box .circle p {
  color: #005baa;
  font-family: "UD Shin Go Medium", sans-serif;
  font-size: 17px;
  letter-spacing: 0.055;
  padding-left: 0.4rem;
  line-height: 1;
}
@media screen and (max-width: 1280px) {
  main.quality section.qualityIndex2 .box .circle p {
    font-size: 1.328125vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex2 .box .circle p {
    font-size: 2.6075619296vw;
    letter-spacing: 0.1em;
  }
}
main.quality section.qualityIndex2 .box .circle h2 {
  font-family: "UD Shin Go Medium", sans-serif;
  font-size: 37px;
  letter-spacing: 0.055;
}
@media screen and (max-width: 1280px) {
  main.quality section.qualityIndex2 .box .circle h2 {
    font-size: 2.890625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex2 .box .circle h2 {
    font-size: 4.6936114733vw;
    letter-spacing: 0.1em;
  }
}
main.quality section.qualityIndex2 .illustration {
  -ms-flex-preferred-size: 59%;
      flex-basis: 59%;
  padding-top: 0.5rem;
  position: relative;
  opacity: 0;
  -webkit-transform: translateY(5rem);
          transform: translateY(5rem);
  -webkit-transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: opacity 0.7s, -webkit-transform 0.8s ease-out;
  transition: transform 0.8s ease-out, opacity 0.7s;
  transition: transform 0.8s ease-out, opacity 0.7s, -webkit-transform 0.8s ease-out;
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex2 .illustration {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
}
main.quality section.qualityIndex2 .illustration img {
  width: 100%;
  height: auto;
}
main.quality section.qualityIndex2 .illustration img.circle3 {
  width: 56%;
  height: auto;
  display: block;
  margin: auto;
  position: absolute;
  top: 29rem;
  left: 0;
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex2 .illustration img.circle3 {
    width: 50%;
    top: 9rem;
    left: 52%;
  }
}
main.quality section.qualityIndex2 .illustration.start {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
main.quality section.qualityIndex2 .text {
  -ms-flex-preferred-size: 62%;
      flex-basis: 62%;
  height: auto;
  display: block;
  padding: 4rem 2.5rem;
  background-color: #fff;
  -webkit-box-shadow: 0px 3px 12px -4px #005baa;
          box-shadow: 0px 3px 12px -4px #005baa;
  border-radius: 1rem;
  position: relative;
  top: -23rem;
  right: 0;
}
@media all and (-ms-high-contrast: none) {
  main.quality section.qualityIndex2 .text {
    -ms-flex-preferred-size: 55%;
        flex-basis: 55%;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex2 .text {
    -ms-flex-preferred-size: 90%;
        flex-basis: 90%;
    top: -2rem;
    right: 0;
    padding: 2rem 1.5rem 3.5rem 1.5rem;
  }
}
main.quality section.qualityIndex2 .text h3 {
  font-size: 31px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4;
  color: #005baa;
  margin-bottom: 4rem;
}
@media screen and (max-width: 1280px) {
  main.quality section.qualityIndex2 .text h3 {
    font-size: 2.421875vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex2 .text h3 {
    font-size: 4.1720990874vw;
    letter-spacing: 0;
    margin-bottom: 1.5rem;
  }
}
main.quality section.qualityIndex2 .text p {
  font-size: 20px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 2.5;
  text-align: justify;
}
@media screen and (max-width: 1280px) {
  main.quality section.qualityIndex2 .text p {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex2 .text p {
    font-size: 3.6505867014vw;
    letter-spacing: 0.1em;
    line-height: 2;
  }
}
main.quality section.qualityIndex2 .text .btn {
  text-align: center;
  display: block;
  margin: 0 auto;
  position: relative;
  top: 2.5rem;
  height: 1px;
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex2 .text .btn {
    width: 100%;
    top: 1.8rem;
  }
}
main.quality section.qualityIndex2 .text .btn a {
  text-align: center;
  background-color: #fff;
  -webkit-box-shadow: 0px 3px 12px -4px #005baa;
          box-shadow: 0px 3px 12px -4px #005baa;
  color: #005baa;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
  border-radius: 5rem;
  padding: 1.5rem 3.5rem 1.5rem 3rem;
  position: relative;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
@media screen and (max-width: 1280px) {
  main.quality section.qualityIndex2 .text .btn a {
    font-size: 1.875vw;
  }
}
@media screen and (max-width: 767px) {
  main.quality section.qualityIndex2 .text .btn a {
    font-size: 3.6505867014vw;
    letter-spacing: 0.1em;
    line-height: 2;
    width: 90%;
    display: block;
    margin: 0 auto;
    padding: 0.5rem 3.5rem 0.5rem 3rem;
  }
}
main.quality section.qualityIndex2 .text .btn a span::after {
  position: absolute;
  content: "▶";
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
  right: 1rem;
}
main.quality section.qualityIndex2 .text .btn a:hover {
  background-color: #005baa;
  color: #fff;
}
/*# sourceMappingURL=style.css.map */