.bannerbox {
  position: relative;
  z-index: 0;
  min-height: 380px;
}
.bannerbox figure.bannerbox-bg {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
}
.bannerbox figure.bannerbox-bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  min-height: 380px;
  -o-object-position: left;
     object-position: left;
}
.bannerbox .bannerbox-content {
  position: absolute;
  right: 0;
  background-image: url(../../../img/banner-pattern-right.svg);
  bottom: 0;
  min-height: 300px;
  max-width: 624px;
  width: 100%;
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: auto;
  display: flex;
}
.bannerbox .bannerbox-content__inner {
  display: flex;
  align-items: center;
  width: 100%;
  padding-left: 140px;
  padding-right: 70px;
  padding-top: 70px;
  padding-bottom: 20px;
}
.bannerbox .bannerbox-content__innertext {
  max-width: 415px;
  width: 100%;
  color: #fff;
}
.bannerbox .bannerbox-content__innertext p {
  font-size: 24px;
  line-height: 150%;
}
.bannerbox .bannerbox-content__innertext p.p-banner-large {
  font-size: 32px;
}
.bannerbox[data-type="1"] .bannerbox-content {
  left: 0;
  right: auto;
  transform: scale(-1, 1);
}
.bannerbox[data-type="1"] .bannerbox-content__inner {
  transform: scale(-1, 1);
  padding-left: 70px;
  padding-right: 140px;
}
@media screen and (max-width: 1279px) {
  .bannerbox .bannerbox-content {
    background-image: url(../../../img/banner-pattern-right-mobile.svg);
    min-height: 300px;
    max-width: 370px;
  }
  .bannerbox .bannerbox-content__inner {
    padding-left: 60px;
    padding-top: 40px;
    padding-bottom: 20px;
    padding-right: 40px;
  }
  .bannerbox .bannerbox-content__innertext p {
    font-size: 17px;
    line-height: 150%;
  }
  .bannerbox .bannerbox-content__innertext p.p-banner-large {
    font-size: 24px;
  }
  .bannerbox .bannerbox[data-type="1"] .bannerbox-content__inner {
    padding-left: 40px;
    padding-right: 60px;
  }
}
@media screen and (max-width: 580px) {
  .bannerbox {
    min-height: 600px;
  }
  .bannerbox figure.bannerbox-bg img {
    min-height: 600px;
    -o-object-position: center center;
       object-position: center center;
  }
  .bannerbox .bannerbox-content {
    background-image: url(../../../img/banner-pattern-right-mobile-2.svg);
    max-width: 100%;
    min-height: 180px;
    background-size: cover;
    background-position: top left;
  }
  .bannerbox .bannerbox-content__inner {
    padding-left: 40px;
    padding-top: 40px;
    padding-bottom: 20px;
    padding-right: 40px;
  }
  .bannerbox .bannerbox[data-type="1"] .bannerbox-content__inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}