/* =========================================
   Icon Text Link Plugin
   1リンク = 1行固定
========================================= */

.itl-link-block{
  display:block;
  margin-bottom: .8em;
  flex: 0 0 100%;
}

.itl-link {
  display: inline-flex;
  align-items: center;
  gap: .4em;
  text-decoration: none;
  color: #1e3765;
  font-weight: 600;
  letter-spacing: .04em;
}

/* 前アイコン */
.itl-before-icon{
  font-size:1em;
}

/* 後ろの矢印 */
.itl-after{
  display:inline-block;
  position:relative;
  width:1.6rem;
  height:1rem;
  margin-left:.35em;
}

.itl-after .itl-icon{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  transition:all .45s cubic-bezier(0.65, 0, 0.076, 1);
}

.itl-after .itl-icon.arrow{
  left:.2rem;
  width:1.125rem;
  height:.1rem;
  background:none;
}

.itl-after .itl-icon.arrow::before{
  content:"";
  position:absolute;
  top:-.3rem;
  right:.0625rem;
  width:.625rem;
  height:.625rem;
  border-top:.125rem solid currentColor;
  border-right:.125rem solid currentColor;
  transform:rotate(45deg);
}

.itl-link:hover .itl-after .itl-icon.arrow{
  background:currentColor;
  transform:translate(1rem, -50%);
}


/* =========================================
   ITL: RichText 用の装飾（任意）
========================================= */
.itl-text .itl-mark{
  display: inline-block;
  padding: .1em .45em;
  border-radius: 999px;
  border: 1px solid rgba(30,55,101,.25);
  background: rgba(30,55,101,.06);
  margin: 0 .15em;
  font-size: .92em;
}

.itl-text .itl-small{
  font-size: .86em;
  opacity: .85;
}

.red {
  color: red;
}