/* Image Link */

a.image-link {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

a.image-link:hover {
  opacity: 0.85;
  text-decoration: underline;
}

.link-text,
.image-link-text {
  display: flex;
  width: 100%;
  height: 100%;
  position: relative;
  padding: 20px;
}

.image-link-text.image-text-valign-above,
.image-link-text.image-text-valign-under {
  padding: 0;
  padding-bottom: 0.25rem;
}

.image-link-text.image-text-valign-above {
  padding-bottom: 0.25rem;
}

.image-link-text.image-text-valign-under {
  padding-top: 0.25rem;
}

.link-text-halign-left,
.image-text-halign-left {
  justify-content: flex-start;
}

.link-text-halign-center,
.image-text-halign-center {
  justify-content: center;
  text-align: center;
}

.link-text-halign-right,
.image-text-halign-right {
  justify-content: flex-end;
  text-align: right;
}

@media screen and (max-width: 767px) {
  .sp-align-left {
    justify-content: flex-start;
  }

  .sp-align-center {
    justify-content: center;
    text-align: center;
  }

  .sp-align-right {
    justify-content: flex-end;
    text-align: right;
  }

}

.image-text-halign-justify {
  justify-content: stretch;
}

.link-text-valign-top,
.image-text-valign-top {
  align-items: flex-start;
}

.link-text-valign-center,
.image-text-valign-center {
  align-items: center;
}

.link-text-valign-bottom,
.image-text-valign-bottom {
  align-items: flex-end;
}

.image-text-bg p {
  margin-bottom: 0;
}

.paragraph--type--image-link .bg-image {
  position: relative;
  margin: 0 auto;
  max-width: 100%;
}

.paragraph--type--image-link .bg-image .mask,
.paragraph--type--image-link .bg-image .link-text-mask {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-attachment: fixed;
}

.paragraph--type--image-link .image-link-text p {
  margin-bottom: 0.5rem;
}

.paragraph--type--image-link .image-link-text p:last-child {
  margin-bottom: 0;
}

.paragraph--type--image-link .paragraph--type--link-button .btn {
  --bs-btn-padding-x: 1rem;
  --bs-btn-padding-y: 0.5rem;
}

.paragraph--type--image-link .image-description {
  word-break: break-all;
}

.paragraph--type--image-link .paragraph--type--link-button {
  margin-top: 0;
  margin-bottom: 0;
}
