@layer components {
  .d-none { display: none !important; /* Bootstrapのd-noneと同じ効果を持たせるために!importantを使用 */ }
  .badge .tag
  {
      display: inline-block;
      padding: .25em .4em;
      font-size: 75%;
      font-weight: 700;
      line-height: 1;
      text-align: center;
      white-space: nowrap;
      vertical-align: baseline;
      border-radius: .25rem;
      transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
      text-decoration: none;
  }
  .badge-secondary {
      color: #fff;
      background-color: #6c757d;
  }
  .form-field .input-block .input {
    display: inline-block;
  }
  .form-field .input-block .input {
    display: inline-block;
    border: solid 0.2rem #4c4c4c;
    border-radius: 1.0rem;
    padding: 0.7rem 2.3rem;
  }
  @media screen and (min-width: 751px) {
    section.corp-info .button-block li a {
      display: flex;
      align-items: center;          /* 縦位置を揃える */
      justify-content: space-between; /* 右端に矢印を寄せる */
      text-decoration: none;
      text-align: center;
      width: 32.3rem;
      border-radius: 1.1rem;
      border: solid 0.3rem #005da8;
      background: #fff;
      padding: 1.3rem 0rem 4.5rem 0rem;
      padding: 1.3rem 1.6rem;       /* 矢印用に左右余白を確保 */
      box-shadow: 0.4rem 0.4rem 0 0 #aaa;
      transition: opacity 200ms 0s ease;
      margin-bottom: 1rem;
    }
    section.corp-info .button-block li a:hover {
      opacity: 0.6;
    }
    section.corp-info .button-block li a::after {
      content: "";
      display: inline-block;
      width: 1.6rem;
      height: 1.6rem;
      background: url(../img/icon_arrow_black.png) center/contain no-repeat;
      margin-left: 0.5rem;
    }
    footer .fmenu {
      display: flex;
      flex-wrap: wrap;       /* 狭い画面では折り返す */
      width: 100%;
    }

    footer .fmenu ul {
      flex: 0 0 50%;         /* 各列を50%ずつ確保 */
      text-align: left;      /* 列内は左寄せ */
    }
  }
  @media screen and (max-width: 750px) {
    section.corp-info .button-block li a {
      display: flex;
      align-items: center;          /* 縦位置を揃える */
      justify-content: space-between; /* 右端に矢印を寄せる */
      text-decoration: none;
      text-align: center;
      max-width: 60.9rem;
      margin: 0 auto;
      margin-bottom: 1rem;
      border-radius: 2.3rem;
      border: solid 0.6rem #005da8;
      background: #fff;
      padding: 2.8rem 0rem 9.4rem 0rem;
      padding: 1.3rem 1.6rem;       /* 矢印用に左右余白を確保 */
      box-shadow: 0.7rem 1.0rem 0 0 #aaa;
    }
    section.corp-info .button-block li a::after {
      content: "";
      display: inline-block;
      width: 1.6rem;
      height: 1.6rem;
      background: url(../img/icon_arrow_black.png) center/contain no-repeat;
      margin-left: 0.5rem;
    }
  footer .fmenu ul {
    flex: 0 0 100%;
  }

  }
}