@charset "UTF-8";

#key-visual {
  background-image: url(../images/service-key-visual.jpg);
}

#sec02:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  border-left: 21.8vw solid #ffd700;
  border-bottom: 21.8vw solid transparent;
  z-index: 1;
}
#sec02:after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  border-bottom: min(29.3vw, 42rem) solid #c01b2c;
  border-left: min(29.3vw, 42rem) solid transparent;
  z-index: 1;
}
#sec02 .pic {
  width: calc(100% - 2rem);
}
#sec02 .pic-area {
  padding-top: 6rem;
  z-index: 9;
}

/* +++#sec02+++ */
#sec02 {
  overflow: hidden;
  background: url(../images/company-bg01.jpg) no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
}
#sec02 .service {
  background-color: #f6f6f6;
}
/* #sec02 .service:nth-of-type(2n) .inner {
  flex-direction: row-reverse;
}
#sec02 .service:nth-of-type(2n + 1):before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  right: calc(50% + 2rem);
  top: 0;
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-position: right top;
  background-image: url(../images/service-bg01.svg);
}
#sec02 .service:nth-of-type(2n) {
  background-color: #fff;
}
#sec02 .service:nth-of-type(2n):before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: calc(50% + 2rem);
  top: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: left top;
  background-image: url(../images/service-bg02.svg);
} */

#sec02 .pic {
  width: calc(50% - 2rem);
  position: relative;
  z-index: 9;
}
#sec02 .txt {
  width: calc(50% - 2rem);
  position: relative;
  z-index: 9;
  padding-top: min(5rem, 3.47222vw);
}
#sec02 .txt p {
  /* padding-left: 7rem; */
}
#sec02 .service:nth-of-type(2n + 1) .txt {
  padding-left: min(2rem, 1.388vw);
  padding-right: min(4rem, 2.777vw);
}
#sec02 .service:nth-of-type(2n) .txt {
  padding-left: min(4rem, 2.777vw);
  padding-right: min(2rem, 1.388vw);
}

.pic {
  display: flex;
  gap: 1.5rem;
  justify-content: center;
}
.pic_img {
  width: 100%;
  max-width: 48%;
  height: auto;
  border-radius: 8px;
  object-fit: cover;
}
.button01 {
  margin-top: 3.6rem;
  width: 27rem;
  height: 5rem;
  border-radius: 2.5rem;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
}
/* .inner {
  text-align: center;
} */

.button01,
.button02 {
  display: inline-block;
  margin: 0 auto;
  text-align: center;
  vertical-align: middle;
  line-height: 5rem;
}

@media screen and (max-width: 599px) {
  #sec02:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    border-left: 19vw solid #ffd700;
    border-bottom: 19vw solid transparent;
    z-index: 1;
  }
  #sec02:after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    border-bottom: 28.7rem solid #c01b2c;
    border-left: 28.7rem solid transparent;
    z-index: 1;
  }
  #sec02 .pic {
    width: 100%;
    padding-top: 8rem;
  }
  #sec02 .pic-area {
    width: 100%;
    padding-top: 0;
  }
  .pic {
    flex-direction: column;
  }
  .pic_img {
    max-width: 100%;
  }
  .button01 {
    margin-top: 2rem;
    width: 100%;
    min-width: 0;
    height: 10rem;
    font-size: 3.3rem;
    border-radius: 2rem;
    z-index: 1000;
    position: relative;
  }
  .button01,
  .button02 {
    line-height: 10rem;
  }

  /* +++#sec02+++ */

  #sec02 .service .inner {
    flex-direction: column !important;
  }
  #sec02 .service:nth-of-type(2n + 1):before {
    right: 0;
    background-position: right 12rem top;
  }
  #sec02 .service:nth-of-type(2n):before {
    left: 0;
    background-position: left 12rem top;
  }

  #sec02 .pic {
    width: 100%;
  }
  #sec02 .txt {
    width: 100%;
    padding-top: 8rem;
  }
  #sec02 .txt p {
    /* padding-left: 10rem; */
  }
  #sec02 .service:nth-of-type(2n + 1) .txt {
    padding-left: 0;
    padding-right: 0;
  }
  #sec02 .service:nth-of-type(2n) .txt {
    padding-left: 0;
    padding-right: 0;
  }
}
