main.sub {
  padding-bottom: 0;
}

.sec_about_01 {
  margin-bottom: 200px;
}
@media only screen and (max-width: 1023px) {
  .sec_about_01 {
    margin-bottom: 10rem;
  }
}
@media only screen and (max-width: 767px) {
  .sec_about_01 {
    margin-bottom: 6.25rem;
  }
}
.sec_about_01 .container .cont {
  position: relative;
  padding: 8.75rem 0;
  text-align: center;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont {
    padding: 5rem 0;
    background: url(/public/img/moving_bg_img.jpg) no-repeat center center/cover;
  }
}
.sec_about_01 .container .cont > .img {
  font-size: 0;
  margin-bottom: 2.6875rem;
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont > .img {
    margin-bottom: 2.5rem;
  }
}
.sec_about_01 .container .cont > .img img {
  width: 26.1875rem;
  opacity: 0.9;
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont > .img img {
    width: 15rem;
  }
}
.sec_about_01 .container .cont .cont_01 {
  margin-bottom: 6.25rem;
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont .cont_01 {
    margin-bottom: 5rem;
  }
}
.sec_about_01 .container .cont .cont_01 h3 {
  font-size: 3rem;
  line-height: 1.3;
  margin-bottom: 1rem;
  font-weight: 700;
}
@media only screen and (max-width: 1023px) {
  .sec_about_01 .container .cont .cont_01 h3 {
    font-size: 2.5rem;
    line-height: 1.3;
    margin-bottom: 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont .cont_01 h3 {
    font-size: 1.375rem;
    line-height: 1.5;
    margin-bottom: 0.5rem;
  }
}
.sec_about_01 .container .cont .cont_01 p {
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 5rem;
}
@media only screen and (max-width: 1023px) {
  .sec_about_01 .container .cont .cont_01 p {
    margin: 0 auto 2.5rem;
    width: 35.5rem;
  }
  .sec_about_01 .container .cont .cont_01 p br:not(.comm) {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont .cont_01 p {
    margin: 0 auto 1.25rem;
    width: 15.625rem;
    font-size: 0.875rem;
    line-height: 1.5;
  }
}
.sec_about_01 .container .cont .cont_01 ul {
  width: 52.25rem;
  margin: 0 auto 2.5rem;
  padding: 2.5rem 16rem;
  border-radius: 1.25rem;
  background: rgba(248, 248, 250, 0.2);
}
@media only screen and (max-width: 1023px) {
  .sec_about_01 .container .cont .cont_01 ul {
    width: 34.625rem;
    padding: 2.5rem 7.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont .cont_01 ul {
    width: 17rem;
    padding: 1.5rem;
  }
}
.sec_about_01 .container .cont .cont_01 ul li {
  text-align: left;
  font-size: 1.125rem;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont .cont_01 ul li {
    font-size: 1rem;
    line-height: 1.6;
  }
}
.sec_about_01 .container .cont .cont_01 ul li + li {
  margin-top: 1.25rem;
}
@media only screen and (max-width: 1023px) {
  .sec_about_01 .container .cont .cont_01 ul li + li {
    margin-top: 1rem;
  }
}
.sec_about_01 .container .cont .cont_01 ul li strong {
  display: inline-flex;
  justify-content: space-between;
  width: 4.375rem;
  margin-right: 1.25rem;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont .cont_01 ul li strong {
    display: flex;
  }
}
.sec_about_01 .container .cont .cont_01 .bttn {
  width: 12.875rem;
  display: block;
  margin: 0 auto;
}
.sec_about_01 .container .cont .cont_02 h3 {
  font-size: 3rem;
  line-height: 1.3;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 1023px) {
  .sec_about_01 .container .cont .cont_02 h3 {
    font-size: 2.5rem;
    line-height: 1.3;
    margin-bottom: 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont .cont_02 h3 {
    font-size: 1.375rem;
    line-height: 1.5;
    margin-bottom: 0.5rem;
  }
}
.sec_about_01 .container .cont .cont_02 p {
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 5rem;
}
@media only screen and (max-width: 1023px) {
  .sec_about_01 .container .cont .cont_02 p {
    width: 27.5rem;
    margin: 0 auto 2.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont .cont_02 p {
    width: 15.625rem;
  }
}
.sec_about_01 .container .cont .cont_02 ul {
  display: flex;
  justify-content: center;
  gap: 5rem;
}
@media only screen and (max-width: 1023px) {
  .sec_about_01 .container .cont .cont_02 ul {
    gap: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont .cont_02 ul {
    display: block;
  }
}
.sec_about_01 .container .cont .cont_02 ul li {
  width: 15rem;
  text-align: center;
  font-size: 1rem;
  line-height: 1.5;
}
@media only screen and (max-width: 1023px) {
  .sec_about_01 .container .cont .cont_02 ul li {
    width: 12.5rem;
    font-size: 0.875rem;
    line-height: 1.5;
  }
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont .cont_02 ul li {
    width: 13rem;
    margin: 0 auto;
  }
  .sec_about_01 .container .cont .cont_02 ul li + li {
    margin: 1.25rem auto 0;
  }
}
.sec_about_01 .container .cont .cont_02 ul li > div {
  margin: 0 auto 1rem;
  width: 12.5rem;
  height: 12.5rem;
}
@media only screen and (max-width: 1023px) {
  .sec_about_01 .container .cont .cont_02 ul li > div {
    width: 8.75rem;
    height: 8.75rem;
  }
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont .cont_02 ul li > div {
    height: 7.5rem;
    width: 7.5rem;
  }
}
.sec_about_01 .container .cont .cont_02 ul li > div .img {
  width: 100%;
  height: 100%;
  background: no-repeat center center/cover;
}
.sec_about_01 .container .cont .cont_02 ul li .square .img {
  background-image: url(../img/square.png);
}
.sec_about_01 .container .cont .cont_02 ul li .round {
  border-radius: 50%;
}
.sec_about_01 .container .cont .cont_02 ul li .round .img {
  background-image: url(../img/round.png);
}
.sec_about_01 .container .cont .cont_02 ul li .diamond {
  background: none;
  position: relative;
  opacity: 1;
}
.sec_about_01 .container .cont .cont_02 ul li .diamond .img {
  background-image: url(../img/diamond.png);
}
.sec_about_01 .container .cont .cont_02 ul li .diamond .inner {
  position: absolute;
  top: 1.8438rem;
  left: 1.8438rem;
  transform: rotate(45deg);
  width: 8.8125rem;
  height: 8.8125rem;
  background: #000;
  overflow: hidden;
}
@media only screen and (max-width: 1023px) {
  .sec_about_01 .container .cont .cont_02 ul li .diamond .inner {
    width: 6.1875rem;
    height: 6.1875rem;
    top: 1.3125rem;
    left: 1.3125rem;
  }
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont .cont_02 ul li .diamond .inner {
    width: 5.3125rem;
    height: 5.3125rem;
    top: 1.0938rem;
    left: 1.0938rem;
  }
}
.sec_about_01 .container .cont .cont_02 ul li .diamond .inner .img {
  width: 12.5rem;
  height: 12.5rem;
  transform: translate(-1.8738rem, -1.8738rem) rotate(-45deg);
  transform-origin: center;
}
@media only screen and (max-width: 1023px) {
  .sec_about_01 .container .cont .cont_02 ul li .diamond .inner .img {
    width: 8.75rem;
    height: 8.75rem;
    transform: translate(-1.3125rem, -1.3125rem) rotate(-45deg);
  }
}
@media only screen and (max-width: 767px) {
  .sec_about_01 .container .cont .cont_02 ul li .diamond .inner .img {
    height: 7.5rem;
    width: 7.5rem;
    transform: translate(-1.0938rem, -1.0938rem) rotate(-45deg);
  }
}
.sec_about_01 .container .cont .cont_02 ul li strong {
  display: block;
  font-weight: 700;
}
.sec_about_02 .swiper .swiper-wrapper .swiper-slide {
  width: 17rem;
  margin-right: 0.625rem;
  height: 10rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .sec_about_02 .swiper .swiper-wrapper .swiper-slide {
    width: 11.25rem;
    height: 7.5rem;
    margin-right: 1.25rem;
  }
}
.sec_about_02 .swiper .swiper-wrapper .swiper-slide a {
  height: 3.875rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .sec_about_02 .swiper .swiper-wrapper .swiper-slide a {
    height: 2.5rem;
  }
}
.sec_about_02 .swiper .swiper-wrapper .swiper-slide a img {
  display: block;
  width: 12rem;
  max-height: 3.875rem;
  object-fit: contain;
}
@media only screen and (max-width: 767px) {
  .sec_about_02 .swiper .swiper-wrapper .swiper-slide a img {
    width: 7.5rem;
    max-height: 2.5rem;
  }
}