@charset "UTF-8";
/* ---------------------------------------
	ACF用ブロックパーツ：画像・説明・ボタン
-----------------------------------------*/
.img-and-text-block {
  --cl-text: #121212;
  --cl-white: #ffffff;
  --transition: 0.3s ease-out;
  --opacity: 0.75;
  display: grid;
}
@media screen and (width > 1280px) {
  .img-and-text-block {
    grid-template-columns: 23.125rem 1fr;
    grid-template-rows: auto;
    gap: 2rem;
  }
}
@media screen and (width <= 1280px) {
  .img-and-text-block {
    grid-template-columns: 28.90625vw 1fr;
    grid-template-rows: auto;
    gap: 2.5vw;
  }
}
@media screen and (width <= 991px) {
  .img-and-text-block {
    grid-template-columns: 39.0625vw 1fr;
    gap: 4.1666666667vw;
  }
}
@media screen and (width <= 767px) {
  .img-and-text-block {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    gap: 4.1025641026vw;
  }
}
.img-and-text-block__img {
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
}
.img-and-text-block__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.img-and-text-block__heading {
  font-weight: bold;
  letter-spacing: 0.04em;
  line-height: 2;
}
@media screen and (width > 1280px) {
  .img-and-text-block__heading {
    font-size: 1rem;
    margin-bottom: 0.5rem;
  }
}
@media screen and (width <= 1280px) {
  .img-and-text-block__heading {
    font-size: 16px;
    font-size: 1.25vw;
    margin-bottom: 0.625vw;
  }
}
@media screen and (width <= 991px) {
  .img-and-text-block__heading {
    font-size: 14px;
    font-size: 1.8229166667vw;
    margin-bottom: 1.0416666667vw;
  }
}
@media screen and (width <= 767px) {
  .img-and-text-block__heading {
    font-size: 14px;
    font-size: 3.5897435897vw;
    margin-bottom: 2.0512820513vw;
  }
}
@media screen and (width <= 767px) {
  .img-and-text-block__description {
    padding-inline: 4.1025641026vw;
  }
}
.img-and-text-block__text {
  letter-spacing: 0.04em;
  line-height: 1.8;
}
@media screen and (width > 1280px) {
  .img-and-text-block__text {
    font-size: 0.9375rem;
  }
}
@media screen and (width <= 1280px) {
  .img-and-text-block__text {
    font-size: 15px;
    font-size: 1.171875vw;
  }
}
@media screen and (width <= 991px) {
  .img-and-text-block__text {
    font-size: 14px;
    font-size: 1.8229166667vw;
  }
}
@media screen and (width <= 767px) {
  .img-and-text-block__text {
    font-size: 12px;
    font-size: 3.0769230769vw;
  }
}
.img-and-text-block__btn-wrapper {
  display: flex;
  justify-content: flex-end;
}
@media screen and (width > 1280px) {
  .img-and-text-block__btn-wrapper {
    -moz-column-gap: 0.5rem;
         column-gap: 0.5rem;
    margin-top: 1rem;
  }
}
@media screen and (width <= 1280px) {
  .img-and-text-block__btn-wrapper {
    -moz-column-gap: 0.625vw;
         column-gap: 0.625vw;
    margin-top: 1.25vw;
  }
}
@media screen and (width <= 991px) {
  .img-and-text-block__btn-wrapper {
    -moz-column-gap: 1.5625vw;
         column-gap: 1.5625vw;
    margin-top: 2.0833333333vw;
  }
}
@media screen and (width <= 767px) {
  .img-and-text-block__btn-wrapper {
    -moz-column-gap: 3.0769230769vw;
         column-gap: 3.0769230769vw;
    margin-top: 4.1025641026vw;
  }
}
.img-and-text-block__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  background-color: var(--cl-white);
  color: var(--cl-text);
  font-weight: bold;
  letter-spacing: 0.04em;
  box-sizing: border-box;
  transition: var(--transition);
  box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
}
@media screen and (width > 1280px) {
  .img-and-text-block__btn {
    -moz-column-gap: 0.75rem;
         column-gap: 0.75rem;
    font-size: 0.8125rem;
    padding: 0.375rem 1.25rem;
    border: var(--cl-text) 0.125rem solid;
  }
}
@media screen and (width <= 1280px) {
  .img-and-text-block__btn {
    -moz-column-gap: 0.9375vw;
         column-gap: 0.9375vw;
    font-size: 1.015625vw;
    padding: 0.46875vw 1.5625vw;
    border: var(--cl-text) 0.15625vw solid;
  }
}
@media screen and (width <= 991px) {
  .img-and-text-block__btn {
    font-size: 1.5625vw;
    padding: 0.78125vw 2.6041666667vw;
    border: var(--cl-text) 0.2604166667vw solid;
  }
}
@media screen and (width <= 767px) {
  .img-and-text-block__btn {
    font-size: 3.0769230769vw;
    padding: 1.5384615385vw 5.1282051282vw;
    border: var(--cl-text) 0.5128205128vw solid;
  }
}
@media (any-hover: hover) {
  .img-and-text-block__btn:hover {
    opacity: var(--opacity);
  }
}
.img-and-text-block__btn::after {
  content: "";
  display: block;
  background-image: url("../../../images/parts/chevron-right.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (width > 1280px) {
  .img-and-text-block__btn::after {
    width: 0.375rem;
    height: 0.625rem;
  }
}
@media screen and (width <= 1280px) {
  .img-and-text-block__btn::after {
    width: 0.46875vw;
    height: 0.78125vw;
  }
}
@media screen and (width <= 991px) {
  .img-and-text-block__btn::after {
    width: 0.78125vw;
    height: 1.3020833333vw;
  }
}
@media screen and (width <= 767px) {
  .img-and-text-block__btn::after {
    width: 1.5384615385vw;
    height: 2.5641025641vw;
  }
}
.img-and-text-block__btn--black {
  background-color: var(--cl-text);
  color: var(--cl-white);
  border: none;
}
.img-and-text-block__btn--black::after {
  background-image: url("../../../images/parts/chevron-right-w.svg");
}
@media (any-hover: hover) {
  .img-and-text-block__btn--black:hover {
    color: var(--cl-white);
  }
}
/*# sourceMappingURL=../../maps/pages/acf-blocks/img-and-text-block.css.map */
