.modRmKeyVisual > .inner {
  padding: 0;
}
.modRmKeyVisual > .inner .imageBackground {
  position: relative;
  overflow: hidden;
}
.modRmKeyVisual > .inner .imageBackground > figure.image,
.modRmKeyVisual > .inner .imageBackground > figure.video {
  width: 100%;
  margin: 0;
}
.modRmKeyVisual > .inner .imageBackground .videoAutoplay > figure.video {
  margin: 0;
}
.modRmKeyVisual > .inner .imageBackground .image > .position-relative,
.modRmKeyVisual > .inner .imageBackground .video > .embed {
  position: relative;
  width: 100%;
  max-height: 765px;
  aspect-ratio: 16/9;
  overflow: hidden;
}
.modRmKeyVisual > .inner .imageBackground .image picture {
  width: 100%;
  height: 100%;
  max-height: none;
}
.modRmKeyVisual > .inner .imageBackground .image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
.modRmKeyVisual > .inner .imageBackground .video .embed-responsive-16by9::before {
  display: none;
  padding-top: 0;
}
.modRmKeyVisual > .inner .imageBackground .video video {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: cover;
  object-position: top;
}
@media (max-width: 991.98px) {
  .modRmKeyVisual > .inner .imageBackground figure {
    margin-bottom: 40px;
  }
}
@media (max-width: 1199.98px) {
  .modRmKeyVisual > .inner .imageBackground .containerXl {
    padding: 0;
    max-width: 100%;
  }
}
.modRmKeyVisual > .inner .imageBackground .containerXl .textWrapper {
  position: absolute;
  z-index: 1;
  bottom: 0;
  max-width: 650px;
  min-height: 450px;
  display: flex;
  align-items: start;
  background: rgba(0, 0, 0, 0.7019607843);
  padding: 72px 60px;
  border-radius: 30px 30px 0 0;
}
.modRmKeyVisual > .inner .imageBackground .containerXl .textWrapper p, .modRmKeyVisual > .inner .imageBackground .containerXl .textWrapper span, .modRmKeyVisual > .inner .imageBackground .containerXl .textWrapper header, .modRmKeyVisual > .inner .imageBackground .containerXl .textWrapper a {
  color: #fff;
}
.modRmKeyVisual > .inner .imageBackground .containerXl .textWrapper p.btn-secondary, .modRmKeyVisual > .inner .imageBackground .containerXl .textWrapper span.btn-secondary, .modRmKeyVisual > .inner .imageBackground .containerXl .textWrapper header.btn-secondary, .modRmKeyVisual > .inner .imageBackground .containerXl .textWrapper a.btn-secondary {
  color: #0051BA;
}
@media (max-width: 1199.98px) {
  .modRmKeyVisual > .inner .imageBackground .containerXl .textWrapper {
    position: relative;
    top: 0;
    max-width: none;
    padding: 20px calc(var(--bs-gutter-x) * 0.5);
    border-radius: 0;
    min-height: fit-content;
  }
  .modRmKeyVisual > .inner .imageBackground .containerXl .textWrapper.backgroundVideo {
    top: 10px;
  }
}
@media (max-width: 1199.98px) {
  .modRmKeyVisual > .inner .keyVisualCarousel .carousel-inner {
    overflow: hidden;
    background: rgba(0, 0, 0, 0.7019607843);
  }
  .modRmKeyVisual > .inner .keyVisualCarousel .carousel-inner .textWrapper {
    background: none;
  }
}