.top_link_button {
  flex-wrap: wrap;
  justify-content: center;
}

@media screen and (min-width: 1024px) and (max-width: 1150px) {
  .top_link_button {
    flex-wrap: wrap;
  }
}

.top_link_button .imgX {
  /* aspect-ratio: 412 / 193; */
  overflow: hidden;
  border-radius: 0;
}

@media (min-width: 1024px) {
  .top_link_button .imgX {
    flex: initial;
    width: 19%;
  }
}

.linkBox_txt {
  font: normal 700 14px / 24px 'BIZ UDPMincho', "Noto Serif JP", serif;
  transform: translate(50%, -50%);
  width: 95%;
}

.gjs-dashed .linkBox_txt {
  transform: translate(50%, -50%);
}

.top_link_button .imgX img {
  transform-origin: center center;
  transition: transform 0.4s ease-in-out;
  aspect-ratio: 412 / 193;
}

.top_link_button .imgX img:hover {
  transform: scale(1.1);
}

@media (max-width: 768px) {
  .top_link_button {
    display: flex !important;
    width: 100%;
    flex-direction: column;
    align-items: start;
    justify-content: center;
    row-gap: 40px;
    column-gap: 2%;
  }

  .top_link_button .imgX {
    width: 100%;
  }

  .top_link_button .imgX img {
    width: 100%;
    border-radius: 6px;
  }
}

.top_link_button.d-none {
  display: none !important;
}

.linkBox_txt2-wrapper {
  padding: 8px;
  border: solid 1px #ccc;
  border-top: none;
  min-height: 4em;
  text-align: center;
}

.linkBox_txt2 {
  color: #000;
  text-align: center;
  width: 100%;
}

.linkBox_txt2-button {
  display: inline-block;
  position: relative;
  border: none;
  color: #70bab8;
  padding: 8px 24px 8px 0;
  font-size: 14px;
}

.linkBox_txt2-button::before {
  content: "→";
  position: absolute;
  right: 0;
  left: auto;
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  line-height: 1;
  transform: none;
}

/* 下線 */
.linkBox_txt2-button::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
}

.top_link_button .linkBox_txt2 {
  min-height: 80px;
}