.section01 {
  margin-bottom: 10vh;
  margin-top: 145px;
  padding-bottom: 5vh;
  position: relative;
}
.m-content {
  display: none;
}
.section01 .swiper-container {
  width: 100%;
  height: 420px;
}


.section01 .swiper-container img {
  width: 100%;
  object-fit: cover;
}


.section01 .swiper-container .swiper-slide {
  position: relative;
}


.section01 .swiper-container .text-content {
  position: absolute;
  width: 100%;


  top: 49%;
  transform: translateY(-50%);
  color: #fff;
}


.section01 .swiper-container .text-content .inner {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}


.section01 .swiper-container .text-content .text {
  padding-right: 7vw;
}


.section01 .swiper-container .text-content .title-content {
  font-size: 3.6rem;
  font-weight: bold;


  padding-bottom: 0.5em;
  position: relative;
}


.section01 .swiper-container .text-content .title-content:after {
  content: '';
  display: block;
  width: 24px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  bottom: 0;
}


.section01 .swiper-container .text-content .sub-title {
  font-size: 2.1rem;
  padding-top: 1em;
}
.section02 .title-container {
  margin-bottom: 5vh;
}
.section02 .title-container h2 {
  font-size: 3.6rem;
  font-weight: bold;
  text-align: center;
  padding: 0.3em 0;
  position: relative;
}


.section02 .title-container h2::before {
  content: '';
  display: block;
  position: absolute;
  width: 100px;
  height: 3px;
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
  background-color: #0670b7;
}


.section02 .img-container {
  flex-wrap: wrap;
  margin-bottom: 15vh;
  width: 100%;
}


.section02 .img-container > div {
  width: 50%;
  height: 255px;
  overflow: hidden;
}
/* 
.section02 .img-container > div img {
  width: 100%;
  object-fit: cover;
} */


.service-container > div {
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
}


.service-container > div:nth-child(1) {
  background-image: url('/default/img/main01.jpg');
}


.service-container > div:nth-child(2) {
  background-image: url('/default/img/main02.jpg');
}


.service-container > div:nth-child(3) {
  background-image: url('/default/img/main03.jpg');
}


.service-container > div:nth-child(4) {
  background-image: url('/default/img/main04.jpg');
}


.service-container > div::before {
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 0;
  transition: all 0.3s;
}


.service-container > div:hover::before {
  background-color: rgba(0, 7, 47, 0.8);
}


.service-container > div .text-content {
  color: #fff;
  z-index: 3;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);


  text-align: center;
}


.service-container > div .text-content .logo-box + div {
  padding-top: 1.2em;
  margin-top: 0.2em;
  position: relative;
}


.service-container > div .text-content .logo-box + div:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: block;
  width: 25px;
  height: 1px;
  background-color: #fff;
  left: 50%;
  top: 10px;
  transform: translateX(-50%);
}


.bnr-wrap {
  margin-bottom: 15vh;
}


.bnr-box {
  width: 100%;
}


.bnr-box img {
  width: 100%;
  object-fit: contain;
}
@media (max-width: 1560px) {
  .section01 .swiper-container {
    height: initial;
  }
  .main-img-wrap > div .img img {
    width: 100%;
  }


  .right-img-box .right-wrap li {
    flex: initial;
    width: 50%;
  }


  .main-img-wrap {
    height: initial;
  }


  .section01 {
    margin-top: 130px;
  }
}


@media (max-width: 1024px) {
  .section01 {
    margin-top: 70px;


    margin-bottom: 15vh;
  }


  .section01 .swiper-container {
    height: initial;
  }


  .main-img-wrap > div.left-img-box .img .text-box .title {
    font-size: 2.4rem;
  }
  .section02 .img-container > div {
    height: 40vh;
  }


  .section02 .img-container > div .logo-box {
    max-width: 80%;
    margin: 0 auto;
  }


  .section02 .img-container > div:nth-child(4) .logo-box img {
    width: 100%;
  }


  .main-img-wrap > div.left-img-box .img .text-box .sub-txt {
    font-size: 1.6rem;
  }


  .main-img-wrap > div.right-img-box .img .text-box .title {
    font-size: 1.8rem;
  }


  .main-img-wrap > div.right-img-box .img .text-box .sub-txt {
    font-size: 1.4rem;
  }


  .section01 .swiper-container .text-content .title-content {
    font-size: 2.4rem;
  }


  .section01 .swiper-container .text-content .sub-title {
    font-size: 1.7rem;
  }
}


@media (max-width: 820px) {
  .main-img-wrap > div {
    width: 100%;
    flex: initial;
  }


  .section01 {
    margin-bottom: 7vh;
  }


  .bnr-wrap {
    margin-bottom: 5vh;
  }


  .section02 .img-container > div {
    height: 30vh;
  }
}


@media (max-width: 650px) {
  .section01 .img-container {
    height: 40vh;
  }


  .section02 .title-container h2 {
    font-size: 2.4rem;
  }


  .main-img-wrap > div.left-img-box .img .text-box .title {
    font-size: 2rem;
  }


  .main-img-wrap > div.left-img-box .img .text-box .sub-txt {
    font-size: 1.4rem;
  }


  .right-img-box .right-wrap li {
    width: 100%;
  }


  .section02 .img-container > div {
    width: 100%;
    margin-bottom: 1em;
  }


  .section01 .swiper-container {
    height: 30vh;
  }


  .section01 .swiper-container img {
    height: 100%;
  }


  .section02 .img-container > div .logo-box {
    height: 35px;
    width: auto;
  }


  .section02 .img-container > div .logo-box img {
    height: 100%;
    width: auto;
  }


  .section02 .img-container > div {
    height: 20vh;
  }


  .service-container > div .text-content {
    font-size: 1.2rem;
  }
  .m-content {
    display: block;
  }
  .web-content {
    display: none;
  }
  .bnr-wrap {
    margin-bottom: 5vh;
  }


  .bnr-wrap .inner {
    width: 100%;
  }
}

