.o-row-main_primary * {
    font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ＭＳ Ｐゴシック", sans-serif;
  }
  a:visited {
    color: #003399;
  }

  .bonus-hensai .o-grid {
    @media screen and (max-width: 48em) {
      flex-direction: column;
    }
  }
  .bonus-hensai .o-grid .o-grid_col-7.o-grid_col-sp-12.o-grid-col-inr-l-t-n {
    flex: 0 0 55.55%;
    max-width: 55.55%;
    @media screen and (max-width: 48em) {
      flex: unset;
      max-width: 100%;
    }
  }
  .bonus-hensai .o-grid .o-grid_col-5.o-grid_col-sp-12.o-grid-col-inr-l-t-n  {
    flex: 0 0 44.45%;
    max-width: 44.45%;
    @media screen and (max-width: 48em) {
      flex: unset;
      max-width: 100%;
    }
  }
  .bonus-hensai .m-Grid.m-Grid--12.m-Grid--default--12 > .comp-list.base.m-GridColumn.m-GridColumn--default--12 {
    display: block;
    @media screen and (max-width: 48em) {
      display: none;
    }
  }
  .bonus-hensai-link {
    display: none;
    @media screen and (max-width: 48em) {
      display: block;
    }
  }

  .newwin-text .a-btn-newwin {
    display: inline;
    padding-right: 34px;
    @media screen and (max-width: 48em) {
      padding-right: 6px;
    }
  }
  .newwin-text .a-btn-newwin::after {
    @media screen and (max-width: 48em) {
      content: "";
      position: relative;
      top: unset;
      right: unset;
      transform: unset;
      display: inline-block;
      width: 20px;
      height: 14px;
      margin-left: 4px;
      background-size: 38px 28px;
    }
  }

  @media screen and (min-width: 48.1em) {
  .cta .o-box {
    padding: 2rem 1.5rem 2rem;
  }
}
  @media screen and (max-width: 48em) {
    .cta .o-box {
      padding: 1.8rem 2rem;
    }
  }

  .cta__head > .m-Grid {
    display: flex;
    align-items: center;
  }
  @media screen and (min-width: 48.1em) {
    .cta__head > .m-Grid {
      justify-content: center;
      gap: 0 2rem;
    }
  }
  @media screen and (max-width: 48em) {
    .cta__head > .m-Grid {
      gap: 0 1rem;
    }
  }
  .cta__head > .m-Grid::before, .cta__head > .m-Grid::after {
    content: none;
  }
  .cta__head .comp-image {
    width: 4.3rem !important;
  }
  .cta__head .comp-richtext {
    width: auto !important;
  }

  .cta__body .richtext {
    display: flex;
    justify-content: center;
    gap: 1rem;
  }
  .cta__body .richtext::before {
    content: "※";
  }
  @media screen and (max-width: 48em) {
    .cta__body .richtext::before {
      font-size: 1.4rem;
    }
  }

  @media screen and (max-width: 48em) {
    .cta__btnarea > .m-Grid > .comp-button > .o-grid > .o-grid_col-12 {
      padding: 0;
    }
  }
  @media screen and (max-width: 48em) {
    .cta__btnarea .comp-button > .o-grid {
      margin: 0;
    }
  }
  .cta__btnarea .comp-button .o-grid_col-6 {
    flex: auto;
    padding: 0;
    width: 100%;
    max-width: 580px;
  }
  @media screen and (max-width: 48em) {
    .cta__btnarea .comp-button .a-btn {
      padding-right: 3.6rem !important;
      padding-left: 3.2rem !important;
    }
  }
  @media screen and (max-width: 48em) {
    .cta__btnarea .comp-button .a-fw-bold {
      font-size: 1.8rem;
    }
  }
  @media screen and (max-width: 48em) {
    .cta__btnarea .comp-button .a-fz-s .a-fw-bold {
      font-size: 1.4rem;
    }
  }
  @media screen and (min-width: 48.1em) {
    .cta__btnarea.-flex > .m-Grid {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 1rem 3.2rem;
    }
  }
  .cta__btnarea.-flex > .m-Grid::before, .cta__btnarea.-flex > .m-Grid::after {
    content: none;
  }
  @media screen and (min-width: 48.1em) {
    .cta__btnarea.-flex .comp-button {
      width: 32.8rem !important;
    }
  }
  @media screen and (max-width: 48em) {
    .cta__btnarea.-flex .comp-button:not(:first-of-type) {
      margin-top: 1rem;
    }
  }

  /* mycarNav */
  @media screen and (max-width: 48em) {
    .mycarNav .m-tab_headwrap {
      overflow: inherit;
    }
  }
  @media screen and (max-width: 48em) {
    .mycarNav .m-tab_head {
      display: flex;
      flex-wrap: wrap;
    }
  }
  .mycarNav .m-tab_item {
    font-weight: bold;
  }
  @media screen and (max-width: 48em) {
    .mycarNav .m-tab_item {
      flex: auto;
      display: block;
      width: 50%;
    }
  }
  @media screen and (max-width: 48em) {
    .mycarNav .m-tab_item:nth-of-type(odd) {
      border-left: none;
    }
  }
  @media screen and (max-width: 48em) {
    .mycarNav .m-tab_item:not(:nth-last-of-type(1)):not(:nth-last-of-type(2)) {
      border-bottom: 1px solid #d4d4d4;
    }
  }
  .mycarNav .m-tab_item a span.a-ico_arw-r {
    padding-right: 16px;
    text-align: center;
    line-height: 1.4;
  }
  @media screen and (max-width: 48em) {
    .mycarNav .m-tab_item a span.a-ico_arw-r {
      width: 100%;
    }
  }
  .mycarNav .m-tab_item a span.a-ico_arw-r::before {
    top: 50% !important;
    transform: translateY(-50%) !important;
  }
  .mycarNav .m-tab_item a:hover span.a-ico_arw-r {
    color: #E60000 !important;
  }
  .mycarNav .m-tab_item a:hover span.a-ico_arw-r::before {
    background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20141.2%20247.4%22%20fill%3D%22%23e60000%22%3E%3Cpolygon%20points%3D%228.7%2C0%200%2C8.8%2053%2C61.9%200%2C114.9%208.7%2C123.7%2070.6%2C61.8%20%22%2F%3E%3C%2Fsvg%3E) !important;
  }
  .mycarNav .m-tab_item.m-tab_item-active::before, .mycarNav .m-tab_item.m-tab_item-active::after {
    content: none;
  }
  .mycarNav .m-tab_item.m-tab_item-active a span.a-ico_arw-r {
    color: #000000;
  }
  .mycarNav .m-tab_item.m-tab_item-active a span.a-ico_arw-r::before {
    width: 6px;
    height: 10px;
    background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20141.2%20247.4%22%20fill%3D%22%235a5a5a%22%3E%3Cpolygon%20points%3D%228.7%2C0%200%2C8.8%2053%2C61.9%200%2C114.9%208.7%2C123.7%2070.6%2C61.8%20%22%2F%3E%3C%2Fsvg%3E);
    background-size: 12px 20px;
  }

  .contact-cta .richtext.a-margin-sp-t3.a-lh-m {
    text-align: right;
  }
  .contact-cta .o-box {
    border: 2px solid #D4D4D4!important;
  }
  
  .acc .m-faqcol_main {
    vertical-align: middle;
  }
  .note .richtext.a-lh-m {
    text-align: end;
  }