/*=======================================================
invList（ご依頼ページ：国内向け / 海外向け / 企業向け）
=======================================================*/
/* パンくず直下は白地を挟んでから和紙背景（XD: パンくず帯 y320-372） */
.bl_invList {
  margin-top: 14px;
  padding: 80px 0;
}
.bl_invList_unit {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
}
.bl_invList_card {
  width: calc((100% - 32px) / 2);
  padding: 30px 40px 32px;
  background: #fff;
  display: flex;
  flex-direction: column;
}
.bl_invList_card__wide {
  width: 100%;
}
.bl_invList_ttl {
  position: relative;
  padding-bottom: 24px;
  margin-bottom: 24px;
  font-size: 26px;
  line-height: 41px;
  letter-spacing: 0.06em;
  text-align: center;
}
.bl_invList_ttl::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 18px;
  bottom: 0;
  left: 0;
  background: url("../images/invitation_list/ribbon_line_card.svg") top center/100% 100% no-repeat;
}
.bl_invList_card__wide .bl_invList_ttl::after {
  background-image: url("../images/invitation_list/ribbon_line_wide.svg");
}
.bl_invList_txt {
  margin-bottom: 38px;
  line-height: 27px;
}
/* カード下端にボタンを揃える。英語表示で文字が増えても高さが伸びるよう height は固定しない */
.bl_invList .el_btn.el_arrow {
  height: auto;
  min-height: 64px;
  margin-top: auto;
}
.bl_invList_btnList {
  margin-top: auto;
  display: flex;
  justify-content: center;
  gap: 80px;
}
.bl_invList_btnList .el_btn.el_arrow {
  margin: 0;
}
/* 日本語の長いラベルが矢印に重ならないよう、XDの文字位置（ボタン中心から左へ7px / 18px）に合わせる */
html:lang(ja) .bl_invList_btnList .el_btn.el_arrow:first-child {
  padding-right: 14px;
}
html:lang(ja) .bl_invList_btnList .el_btn.el_arrow:last-child {
  padding-right: 36px;
}
/* 英語は文字数が増えるため見出しの文字サイズを下げて帯（高さ64px）に収める */
html:lang(en) .bl_invList .ttl_bg {
  font-size: 24px;
}
/* 英語ボタンは360pxでは1行に収まらず2行になるため、上下に余白を持たせて詰まりを防ぐ（右余白は矢印との間隔を保つ） */
html:lang(en) .bl_invList .el_btn.el_arrow {
  padding: 14px 52px 17px 16px;
}
@media screen and (max-width: 750px) {
  .bl_invList .ttl_bg {
    font-size: 40px;
  }
  html:lang(en) .bl_invList .ttl_bg {
    font-size: 32px;
  }
  html:lang(en) .bl_invList .el_btn.el_arrow {
    padding: 18px 80px 22px 16px;
  }
  /* SPは文字幅がボタン幅に近いため、矢印（幅46px＋右24px）より左の領域の中央に文字を置く */
  html:lang(ja) .bl_invList_btnList .el_btn.el_arrow:first-child,
  html:lang(ja) .bl_invList_btnList .el_btn.el_arrow:last-child {
    padding-right: 70px;
  }
  .bl_invList {
    margin-top: 0;
    padding: 96px 0;
  }
  .bl_invList_unit {
    gap: 40px;
  }
  .bl_invList_card {
    width: 100%;
    padding: 48px;
  }
  .bl_invList_ttl {
    padding-bottom: 40px;
    margin-bottom: 32px;
    font-size: 40px;
    line-height: 60px;
  }
  .bl_invList_ttl::after,
  .bl_invList_card__wide .bl_invList_ttl::after {
    height: 32px;
    background-image: url("../images/invitation_list/ribbon_line_sp.svg");
  }
  .bl_invList_txt {
    margin-bottom: 48px;
    line-height: 1.5;
  }
  .bl_invList .el_btn.el_arrow {
    min-height: 96px;
  }
  .bl_invList_btnList {
    flex-direction: column;
    align-items: center;
    gap: 32px;
  }
}
