/* index, taxonomy
---------------------------------------------------------------------------- */
/* m-page-mv01
---------------------------------------------------------------------------- */
.m-page-mv01 {
  background-image: url(../../images/column/bg_mv_pc.png);
}

@media screen and (max-width: 767px) {
  .m-page-mv01 {
    background-image: url(../../images/column/bg_mv_sp.png);
  }
}
/* p-column
---------------------------------------------------------------------------- */
.p-column-block-link {
  border: 0.2rem solid #062551;
  padding-block: 3.8rem;
  padding-inline: 5.6rem;
  display: grid;
  grid-template-columns: 37.3rem 1fr;
  align-items: center;
  gap: 0 5rem;
  position: relative;
}

.p-column-block-link::after {
  content: "";
  position: absolute;
  bottom: 2.5rem;
  right: 2.7rem;
  width: 1.6rem;
  height: 1.3rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(../../images/common/icn_arw01.svg);
  transition: transform 0.3s ease 0s;
}

.p-column-block-link:hover::after {
  transform: translateX(0.5rem);
}

.p-column-block-img {
  width: 100%;
  aspect-ratio: 373/230;
  position: relative;
}
.p-column-block-img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.p-column-block-wrap-ttl {
  font-size: 2.2rem;
  line-height: 1.7727272727;
  letter-spacing: 0.04em;
  font-weight: 700;
  color: #062551;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.p-column-block-wrap-txt {
  font-size: 1.8rem;
  line-height: 1.7777777778;
  letter-spacing: 0.04em;
  font-weight: 500;
  margin-top: 2.8rem;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.p-column-block-wrap-box {
  display: flex;
  gap: 0 1.7rem;
  margin-top: 3rem;
}

.p-column-block-wrap-box-date {
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: normal;
  color: #898989;
}

.p-column-block-wrap-box-lists {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
}

.p-column-block-wrap-box-list {
  font-size: 1.3rem;
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: normal;
  color: #006dc9;
  border: 1px solid currentColor;
  border-radius: 1.2rem;
  padding-inline: 1.3rem;
  background-color: #fff;
}

.p-column-container {
  display: grid;
  grid-template-columns: 86rem 1fr;
  gap: 0 6rem;
  margin-top: 6rem;
}

@media screen and (max-width: 767px) {
  .p-column-block-link {
    border-width: 0.5333333333vw;
    padding-block: 4.8vw 10.1333333333vw;
    padding-inline: 4.8vw;
    grid-template-areas: "img ttl" "txt txt" "box box";
    grid-template-columns: 35.4666666667vw 1fr;
    gap: 0 5.3333333333vw;
  }
  .p-column-block-link::after {
    bottom: 4.8vw;
    right: 4.5333333333vw;
    width: 4.2666666667vw;
    height: 3.4666666667vw;
  }
  .p-column-block-link:hover::after {
    transform: translateX(1.3333333333vw);
  }
  .p-column-block-img {
    aspect-ratio: 133/83;
    grid-area: img;
  }
  .p-column-block-wrap {
    display: contents;
  }
  .p-column-block-wrap-ttl {
    font-size: 4.2666666667vw;
    line-height: 1.5625;
    grid-area: ttl;
  }
  .p-column-block-wrap-txt {
    font-size: 3.7333333333vw;
    line-height: 1.6428571429;
    grid-area: txt;
    margin-top: 2.4vw;
  }
  .p-column-block-wrap-box {
    flex-wrap: wrap;
    gap: 2.4vw;
    grid-area: box;
    margin-top: 2.1333333333vw;
  }
  .p-column-block-wrap-box-date {
    font-size: 4vw;
  }
  .p-column-block-wrap-box-lists {
    gap: 2.6666666667vw;
  }
  .p-column-block-wrap-box-list {
    font-size: 3.4666666667vw;
    border-width: 0.2666666667vw;
    border-radius: 3.2vw;
    padding-inline: 3.4666666667vw;
  }
  .p-column-container {
    grid-template-columns: 1fr;
    gap: 13.3333333333vw;
    margin-top: 5.3333333333vw;
  }
}
