/* スライド用 */

.swiper-slide img {
  object-fit: cover;
  /* width: 100%; */
}

.swiper-container {
  margin-left: auto;
  /* margin-right: auto; */
  max-width: 1780px;
  width: 100%;
}

.swiper-wrapper {
  height: 625px;
  width: 100%;
}

.swiper-slide.swiper-slide-active {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.swiper-button-next {
  bottom: 0;
  left: 50%;
  margin: 0;
  top: auto;
  transform: translate(-50%, 0px) rotate(90deg);
}



:root {
  --swiper-theme-color: black;
}

/* 幻灯片结束 */


.img-recruit {
  position: absolute;
  right: 0;
  bottom: 30px;
  z-index: 2;
}

@media screen and (max-width: 991px) {

  .img-recruit {
    position: absolute;
    right: 10px;
    bottom: 10px;
    z-index: 2;
    width: 400px;
  }
}



.swiper-slide.swiper-slide-active {
  position: relative;
}

.jumbotron.jumbotron-common.home-slider {
  background-color: #fff;
}



@media only screen and (max-width: 575px) {
  .swoper-title.ttl-01 {
    position: absolute;
    z-index: 2;
    color: #fff;
    top: 50%;
    left: 50%;
    padding: 0;
    transform: translate(-50%, -50%);
    letter-spacing: 3px;
    font-size: 35px;
    line-height: 60px;
    writing-mode: tb-rl;


  }
}





@media screen and (min-width: 576px) {
  .swoper-title.ttl-01 {
    position: absolute;
    z-index: 2;
    color: #fff;
    top: 50%;
    left: 8%;
    right: 8%;
    padding: 0;
    transform: translateY(-50%);
    letter-spacing: 5px;
    font-size: 56px;
    line-height: 72px;
  }
}




@media only screen and (min-width: 992px) {
  .row-base .title {
    margin-left: 10px;
    margin-top: 15px;
  }

  .home main.active {
    padding-top: 155px;
  }

}



/* 第二部分 */
@media screen and (max-width: 767px) {
  .btn-circle {
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 73px;
    height: 73px;
    background: #000;
    color: #FFF;
    text-decoration: none;
    text-align: center;
    margin: 10px 0;
    margin: auto;
  }
}

@media screen and (min-width: 768px) {
  .btn-circle {
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 73px;
    height: 73px;
    background: #000;
    color: #FFF;
    text-decoration: none;
    text-align: center;
    margin: 10px 0;
  }
}



.ttl,
p {
  color: #000;
}

.row-service .ttl-04 {
  margin-top: 1rem;
}

@media screen and (max-width: 767px) {

  .row-service .cont .metabox:last-child,
  .cont .metabox p:last-child {
    margin-bottom: 15px;
  }

}

p {
  line-height: 2rem;
}

/* 第三部分 */
.home-part-3 .title .ttl {
  display: grid;
}

.row-title-works:first-child .col-md-6 {
  display: flex;
}

.row-title-works:first-child .col-md-6 p {
  margin-left: 40px;
}

.row-title-works {
  justify-content: end;
  align-items: center;
}


.ttl-red {
  color: #cd1723;
}

.btn-red {
  background-color: #cd1723;
}

.ttl .ttl-eng.ttl-red {
  color: #cd1723;
}

.gap {
  padding: 150px 0 150px 0;
}

.row-works {
  margin-top: 10px;
  justify-content: center;
}


@media screen and (min-width: 768px) {

  .swiper-pagination-vertical.swiper-pagination-bullets,
  .swiper-vertical>.swiper-pagination-bullets {
    left: 50px;
    top: 50%;
    transform: translate3d(0px, -50%, 0);
  }

  .br-01 {
    border-radius: 20px 0 0 0;
  }

  .br-02 {
    border-radius: 0 20px 0 0;
    margin-top: 15px;
  }

  .br-03 {
    border-radius: 0 0 20px 0;
  }

  .br-04 {
    border-radius: 0 0 0 20px;
    margin-top: 15px;
  }

  .br-05 {
    border-radius: 20px 0 0 0;
  }
}

@media screen and (max-width: 767px) {
  .br-01 {
    border-radius: 20px 0 0 0;
    padding: 10px 0;
  }

  .br-02 {
    border-radius: 0 20px 0 0;
    padding: 10px 0;
  }

  .br-03 {
    border-radius: 0 0 20px 0;
    padding: 10px 0;
  }

  .br-04 {
    border-radius: 0 0 0 20px;
    padding: 10px 0;
  }

  .br-05 {
    border-radius: 20px 0 0 0;
    padding: 10px 0;
  }
}

/* 第四部分 */
.part-bg-yellow {
  background-color: #eaeaea;
}

.bg-common.company {
  background-color: #000;
}



/* 
.row-base:first-child .item {
  display: block;
} */

.row-base-1 {
  /* display: flex; */
  align-items: baseline;
}


.btn-circle-1 {
  border-radius: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 91px;
  height: 41px;
  background: #000;
  color: #FFF;
  text-decoration: none;
  text-align: center;
  margin: 42px 0;
}

.btn-circle-2 {
  border-radius: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 91px;
  height: 41px;
  background: #cd1723;
  color: #FFF;
  text-decoration: none;
  text-align: center;
  margin: 42px 0;
}

.btn-circle-2:hover {
  border-radius: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 91px;
  height: 41px;
  background: #cd1723;
  color: #000;
  text-decoration: none;
  text-align: center;
  margin: 42px 0;
}

.row-base .item-image img {
  border-radius: 65px 0 0 0;
}

.row-base-1 .ttl-03 {
  margin-bottom: 1.5rem;
}

.row-base-1 p {
  line-height: 24px;
}

/* .row-base .item-image img {
  height: 430px;
 } */
.ttl-03 {
  color: #000;
}

/* 第五部分 */
.bg-common.recruit {
  background-color: #cb3c45;
}

.bg-common.recruit .ttl-eng {
  text-transform: capitalize;
  text-align: initial;

}

.bg-common.recruit .ttl-jpn {
  color: #cd1723;
}

@media screen and (min-width: 768px) and (max-width: 991px) {
  .row.row-works.row-styleB.row-stretch {
    margin-right: 15px;
    margin-left: 15px;
  }

  .row-base-1 [class^="col-"]:nth-child(2) {
    display: block;
    /* position: relative; */
    /* top: -18px; */
    padding-right: 0;
  }

}

@media only screen and (min-width: 992px) {
  .row-base-1 [class^="col-"]:nth-child(2) {
    display: block;
    /* position: relative; */
    /* top: -18px; */
    padding-right: 20%;
  }
}

@media only screen and (min-width: 768px) {
  .bg-common.recruit .row-base-1 {
    flex-direction: row-reverse;
  }
}

.bg-common.recruit .row-base-1 [class^="col-"]:nth-child(2) {
  padding-right: 20%;
  padding-left: 25px;
}

.part-bg-pink {
  background-color: #faecec;
  border-radius: 0 0 100px 0;
  margin-right: 10%;
}

.img-pump {
  margin-left: 83%;
  margin-bottom: 10px;
}

.img-pump-02-red {
  margin-left: 11%;
  margin-top: 10px;
}

.img-pump-03 {
  margin-left: 83%;
  margin-top: 10px;
}

.part-5 .row-base-1,
.part-4 .row-base-1 {
  padding: 10px;
}

.img-part-5-title {
  margin-bottom: 20px;
}

.part-5 .row-base .item-image img {
  border-radius: 0 65px 0 0;
}

.row-recruit .ttl-area .ttl.ttl-02.b0 {
  display: flex;
}

/* 手机端各页面调节 */
@media only screen and (max-width: 767px) {
  .bg-common.home-part-3 {
    padding-left: 15px;
    padding-right: 15px;
  }

  .bg-common.company {
    padding-right: 0px;
    padding-left: 0px;
  }

  .gap {
    padding: 40px 0 40px 0;
  }

  .bg-common.company.part-4 .row-base [class^="col-"]:first-child {
    /* padding: 8px; */
    text-align: center;
  }

  .row-base-1 [class^="col-"]:nth-child(2) {
    display: block;
    /* padding-right: 15px; */
  }

  .btn-circle-1 {
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 91px;
    height: 41px;
    background: #000;
    color: #FFF;
    text-decoration: none;
    text-align: center;
    margin: auto;
  }

  .part-bg-pink {
    background-color: #faecec;
    border-radius: 0 0 100px 0;
    margin-right: 0;
  }

  .bg-common.recruit.part-5 {
    padding-left: 0px;
    padding-right: 0px;
  }

  .row.row-base.row-recruit {
    flex-direction: column-reverse;
  }

  .bg-common.recruit .row-base-1 [class^="col-"]:nth-child(2) {
    padding-right: 0;
    padding-left: 0px;
  }

  .part-5 .row-base-1 {
    /* padding: 12px; */
    text-align: center;
  }

  .btn-circle-2 {
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 91px;
    height: 41px;
    background: #cd1723;
    color: #FFF;
    text-decoration: none;
    text-align: center;
    margin: auto;
  }
}


/* 总的字体手机端设置 */
@media only screen and (max-width: 575px) {
  .row-base-1 .ttl-03 {
    font-size: 20px;
  }

  .ttl-04 {
    font-size: 15px;
  }

  .cont .metabox p {
    font-size: 12px;
  }

  p {
    font-size: 8px;
    line-height: 20px
  }

  .ttl-jpn {
    font-size: 25px;
  }

}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: .3s opacity;
  transform: translate3d(0, 0, 0);
  z-index: 9;
}

@media screen and (max-width: 767px) {

  .swiper-horizontal>.swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal,
  .swiper-pagination-custom,
  .swiper-pagination-fraction {
    bottom: 2px;
    left: 0;
    width: 100%;
  }

  .row-base-1 .col-md-2 {
    display: flex;
    justify-content: center;
    margin-bottom: 25px;
  }

  .row-title-works .col-12.col-md-3.item {
    display: flex;
    justify-content: center;
  }

  /* 幻灯片部分 */
  .swiper-pagination {
    position: relative;
    text-align: center;
    transition: .3s opacity;
    transform: translate3d(0, 0, 0);
    z-index: 9;
  }

  .swiper-pagination-vertical.swiper-pagination-bullets,
  .swiper-vertical>.swiper-pagination-bullets {
    display: flex;
    justify-content: center;
    margin-top: 30px;
  }

  .swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin-right: 5px;
  }
}

.row-title-works .col-12.col-md-3.item a:hover {
  color: #000;
}

.row-title-works .ttl-jpn.ttl-red {
  min-width: 120px;
}