@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

/* 変数 */
:root {
  --contents-bg-blue: #E7F3FF;
  --contents-bg-light-blue: #F7FBFF;
  --contents-key-color: #0068DE;
  --contents-hover-color: #0059BD;
  --contents-active-color: #00428D;
  --contents-disabled-color: #e9e9e9;
  --contents-txt-secondary: #575757;
  --contents-blue-berry: #3F9FFF;
  --contents-leading-trim: calc((1em - 1lh) / 2);
}
@supports not (top: 1lh) {
  :root {
    --contents-leading-trim: 0px;
  }
}

/* debitA */
a.debitA {
  color: var(--contents-key-color);
}
a.debitA:hover {
  color: var(--contents-hover-color);
}
a.debitA:active {
  color: var(--contents-active-color);
}

/* container */
.container > main {
  padding-bottom: 0;
  background: #fff;
}

/* .m-linkBlank */
a.m-linkBlank {
  color: var(--contents-key-color);
}
.m-linkBlank:before {
  color: var(--contents-key-color);
}

/* topArrow */
@keyframes topArrow1 {
  0% {
    transform: translateY(-300%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes topArrow2 {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(300%);
  }
}
.topArrow {
  position: relative;
  border-radius: 9999px;
  width: 25px;
  height: 25px;
  background: #fff;
  overflow: hidden;
}
.topArrow::after,
.topArrow::before {
  content: '';
  position: absolute;
  top: 7px;
  left: 7px;
  display: block;
  width: 11px;
  height: 12px;
  background: url(/contents/cdn-img/lineup/debitcard/icon_button_anchor_01.svg) no-repeat center center;
  background-size: 11px 12px;

  animation-fill-mode: forwards;
  animation-duration: 0.6s;
}
.topArrow::after {
  transform: translateY(-300%);
}
a:hover .topArrow:before {
  animation-name: topArrow2;
  animation-delay: 0s;
}
a:hover .topArrow:after {
  animation-name: topArrow1;
  animation-delay: 0.2s;
}

/* debitBtn */
a.debitBtn {
  display: flex;
  justify-content: center;
  align-items: center;

  position: relative;
  border-radius: 9999px;
  width: min(100%, 320px);
  height: 48px;
  background: var(--contents-key-color);
  color: #fff;
  font-size: 16px;
  font-weight: 300;

  transition: background-color 0.3s ease;
}
a.debitBtn::before {
  content: '';
  position: absolute;
  inset: -2px;
  display: block;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  border-radius: 9999px;
  border: 2px solid var(--contents-key-color);

  transition: opacity 0.3s ease;
  opacity: 0;
}
a.debitBtn:hover {
  background-color: var(--contents-hover-color);
  text-decoration: none;
}
a.debitBtn:active {
  background-color: var(--contents-active-color);
}
a.debitBtn:focus {
  background: var(--contents-key-color);
}
a.debitBtn:focus::before {
  opacity: 1;
  border: none;
}
a.debitBtn.-anchor .debitBtn_txt {
  position: relative;
  display: inline-block;
  margin-block: var(--contents-leading-trim);
  padding-left: 40px;
  line-height: 1.2;
}
a.debitBtn.-anchor .topArrow {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -12.5px;
}
@media screen and (max-width: 559px) {
  a.debitBtn {
    width: calc((248 / 360) * 100vw);
    height: 40px;
    font-size: 14px;
  }
  a.debitBtn.-anchor .debitBtn_txt {
    padding-left: 32px;
  }
}

/* debitBtnBorder */
a.debitBtnBorder {
  display: inline-flex;
  justify-content: center;
  align-items: center;

  position: relative;
  border: 1px solid var(--contents-key-color);
  border-radius: 9999px;
  width: min(100%, 312px);
  height: 56px;
  background: #fff;
  color: var(--contents-key-color);
  font-size: 16px;
  font-weight: 300;
  line-height: 1.25;

  transition: background-color 0.3s ease;
}
a.debitBtnBorder::before {
  content: '';
  position: absolute;
  inset: -3px;
  display: inline-block;
  width: calc(100% + 6px);
  height: calc(100% + 6px);
  border-radius: 9999px;
  border: 2px solid var(--contents-key-color);

  transition: opacity 0.3s ease;
  opacity: 0;
}
a.debitBtnBorder:hover {
  background-color: #F3F8FF;
  text-decoration: none;
}
a.debitBtnBorder:active {
  background-color: #E6F1FE;
}
a.debitBtnBorder:focus::before {
  opacity: 1;
  border: none;
}
.debitBtnBorder_txt {
  position: relative;
  display: inline-block;
  padding-right: 28px;
}
.debitBtnBorder_txt::before {
  content: '';
  position: absolute;
  top: 1px;
  right: 0;
  display: block;
  width: 20px;
  height: 20px;
  background: url(/contents/cdn-img/lineup/debitcard/icon_arrow_right.svg) no-repeat 0 0;
  background-size: 20px 20px;
}
@media screen and (max-width: 559px) {
  a.debitBtnBorder {
    width: 100%;
  }
}

/* debitNotes */
.debitNotes {
  color: var(--contents-txt-secondary);
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
}
.debitNotes_item + .debitNotes_item {
  margin-top: 8px;
}
.debitNotes_vessel {
  display: table;
  width: 100%;
}
.debitNotes_txt,
.debitNotes_no {
  display: table-cell;
  vertical-align: top;
}
.debitNotes_no {
  padding-right: 8px;
  width: 1em;
  white-space: nowrap;
}
.debitNotes_txt {
  width: auto;
}
@media screen and (max-width: 559px) {
  .debitNotes {
    font-size: 12px;
  }
}

/* topWidthPc */
.topWidthPc {
  margin-inline: auto;
  width: min(100%, 1040px);
}

/* topKv */
.topKv {
  position: relative;
  line-height: 0;
  background: #00D4D2;
}
.topKv_topRight {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 50%;
  height: 50%;
  background: #00B3B3;
}
.topKv_bottomLeft {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 50%;
  height: 50%;
  /*background: #FFBAAE;*/
  background: #ffbdb1;
}
.topKv_bottomRight {
  position: absolute;
  bottom: 0;
  right: 0;
  display: block;
  width: 50%;
  height: 50%;
  background: #FF8B81;
}
.topKv img {
  width: 100%;
  height: auto;
}
.topKv h1 {
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 819px) {
  .topKv {
    background: #fff;
  }
  .topKv_bottomRight,
  .topKv_bottomLeft,
  .topKv_topRight {
    display: none;
  }
}

/* topDebitAttention */
.topDebitAttention {
  padding: 32px 48px;
}
.topDebitAttention_vessel {
  margin-inline: auto;
  width: min(100%, 848px);
}
.topDebitAttention .m-ctsAttentionPulldown {
  margin-top: 0;
}
.topDebitAttention .m-ctsAttentionPulldown .m-ctsAttentionPulldown-tit:before {
  top: 50%;
  margin-top: -0.5em;
}
.topDebitAttention .m-ctsAttentionPulldown .m-ctsAttentionPulldown-tit.m-open:before {
  top: 50%;
  margin-top: -0.05em;
}
.topDebitAttention .m-ctsAttentionPulldown .m-ctsAttentionPulldown-tit .m-def {
  padding: 5px 5px 5px 0;
  height: auto;
  min-height: 34px;
  line-height: 1.5;
}
.topDebitAttention .m-ctsAttentionPulldown .m-ctsAttentionPulldown-tit .m-icon-excl {
  display: block;
}
@media screen and (max-width: 559px) {
.topDebitAttention {
  padding: 8.88vw 4.44vw;
}
}

/* topIntro */
.topIntro {
  padding: calc((48 / 1040) * 100%);
  background: var(--contents-bg-blue);
}
.topIntro_vessel {
  margin-inline: auto;
  width: min(100%, 1040px);
}
.topIntro_inner {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-direction: row;

  margin-inline: auto;
  width: calc((697 / 1040) * 100%);
}
.topIntro_image {
  order: 2;

  width: 265px;
  width: calc((265 / 697) * 100%);
}
.topIntro_main {
  order: 1;

  width: 352px;
  width: calc((352 / 697) * 100%);
}
.topIntro_button {
  position: relative;
}
@media screen and (min-width: 820px) and (max-width: 1199px) {
  .topIntro_inner {
    width: 90%;
  }
}
@media screen and (max-width: 819px) {
  .topIntro {
    padding: 8.88vw 4.44vw;
  }
  .topIntro_inner {
    display: block;

    width: auto;
  }
  .topIntro_image {
    width: auto;
    text-align: center;
  }
  .topIntro_image img {
    width: 197px;
    width: calc((197 / 328) * 100%);
    height: auto;
  }
  .topIntro_main {
    width: auto;
  }
  .topIntro_button {
    display: flex;
    justify-content: center;

    margin-top: 6.66vw;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .topIntro_main {
    margin-inline: auto;
    width: calc((350 / 584) * 100%);
  }
  .topIntro_button {
    justify-content: flex-start;
  }
}

/* topIntroLinkList */
.topIntroLinkList {
  margin-top: 24px;
}
.topIntroLinkList_item {
  position: relative;
  padding-left: 24px;
  font-size: 16px;
  line-height: 1.5;
}
.topIntroLinkList_item + .topIntroLinkList_item {
  margin-top: 10px;
}
.topIntroLinkList_item::before {
  content: '';
  position: absolute;
  top: 2px;
  left: 0;
  display: block;
  width: 20px;
  height: 20px;
  background: url(/contents/cdn-img/lineup/debitcard/icon_arrow_right.svg) no-repeat 0 0;
  background-size: 20px 20px;
}
a.topIntroLinkList_a {
  position: relative;
  display: inline-flex;
  gap: 4px;
  color: var(--contents-key-color);
}
a.topIntroLinkList_a:hover {
  color: var(--contents-hover-color);
}
a.topIntroLinkList_a:active {
  color: var(--contents-active-color);
}
a.topIntroLinkList_a:focus {
  color: var(--contents-key-color);
}
a.topIntroLinkList_a[target="_blank"] {
  padding-right: 24px;
}
a.topIntroLinkList_a[target="_blank"]::after {
  content: '';
  position: absolute;
  top: 2px;
  right: 0;
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url(/contents/cdn-img/lineup/debitcard/icon_link_blank.svg) no-repeat 0 0;
  background-size: 20px 20px;
}
@media screen and (max-width: 819px) {
  .topIntroLinkList {
    margin-top: 6.66vw;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .topIntroLinkList {
    margin-top: calc((32 / 640) * 100vw );
  }
  .topIntroLinkList_item {
    font-size: 14px;
  }
  .topIntroLinkList_item::before {
    content: '';
    position: absolute;
    top: 0;
  }
  a.topIntroLinkList_a[target="_blank"]::after {
    content: '';
    position: absolute;
    top: 0;
  }
}

/* aboutSection */
.aboutSection a {
  color: var(--contents-key-color);
}

/* aboutArea */
.aboutArea {
  padding: 150px calc((100 / 1040) * 100%);
  background: #fff;
  color: #2B2B2B;
}
.aboutArea.-no2 {
  background: var(--contents-bg-light-blue);
}
.aboutArea_vessel {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: row;
}
.aboutArea_contents {
  width: calc((400 / 848) * 100%);
}
.aboutArea.-no2 .aboutArea_contents {
  order: 1;
}
.aboutArea_header {
  position: relative;
}
.aboutArea_image {
  position: relative;
  width: calc((400 / 848) * 100%);
}
.aboutArea.-no2 .aboutArea_image {
  order: 2;
}
.aboutArea_body {
  padding-top: 28px;
}
.aboutArea_sub {
  font-size: 20px;
  font-weight: 300;
  line-height: 1.5;
  text-align: center;
}
.aboutArea_hdr {
  margin-inline: -2em;
  font-size: 32px;
  font-weight: 300;
  line-height: 1.8;
  text-align: center;
  text-indent: 0.03em;
  letter-spacing: 0.03em;
}
* + .aboutArea_hdr {
  margin-top: 16px;
}
.aboutArea_hdr br {
  display: none;
}
.aboutArea_lead {
  font-size: 16px;
  font-weight: 300;
  line-height: 1.88;
  letter-spacing: 0.01em;
}
.aboutArea_kome {
  font-size: 10px;
}
.aboutAreaNotes {
  margin-top: 16px;
}
.aboutAreaNotes a {
  text-decoration: underline;
}
@media screen and (min-width: 820px) and (max-width: 1280px) {
  .aboutArea {
    padding-block: 100px;
  }
}
@media screen and (max-width: 819px) {
  .aboutArea {
    padding: 0;
  }
  .aboutArea.-no2 {
    background: #fff;
  }
  .aboutArea_vessel {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
  }
  .aboutArea_contents {
    display: contents;
  }
  .aboutArea_header {
    order: 1;

    padding: 11.94vw 4.44vw 0 4.44vw;
    width: 100%;
  }
  .aboutArea_image {
    margin-top: 8.88vw;
    order: 2;

    width: 100%;
  }
  .aboutArea_body {
    order: 3;

    padding: 16px 4.44vw 11.11vw 4.44vw;
    width: 100%;
    background: var(--contents-bg-light-blue);
  }
  .aboutArea_sub {
    font-size: 16px;
    line-height: 1.6;
  }
  .aboutArea_hdr {
    font-size: 28px;
    line-height: 1.71;
  }
  * + .aboutArea_hdr {
    margin-top: 10px;
  }
  .aboutArea_hdr br {
    display: inline;
  }
  .aboutArea_lead {
    font-size: 16px;
    line-height: 1.9;
  }
  .aboutAreaNotes {
    margin-top: 4.44vw;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .aboutArea.-no1 {
    padding-top: 0;
  }
  .aboutArea_header {
    padding-top: calc((80 / 640) * 100vw);
  }
  .aboutArea_image {
    margin-top: calc((32 / 640) * 100vw);
  }
  .aboutArea_body {
    padding: calc((24 / 640) * 100vw) calc((48 / 640) * 100vw) calc((64 / 640) * 100vw);
  }
  .aboutArea_hdr {
    margin-top: 16px;
    font-size: clamp(28px, 5vw, 32px);
    line-height: 1.8;
  }
  .aboutArea_hdr br {
    display: none;
  }
  .aboutArea_sub {
    font-size: 20px;
  }
}

/* aboutAreaImage */
@keyframes aboutArea01Parts {
  0% {
    opacity: 0;
    scale: 0;
  }
  100% {
    opacity: 1;
    scale: 1;
  }
}
@keyframes aboutArea02Circle {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.aboutAreaImage {
  position: relative;
}
.aboutAreaImage.-pc {
  display: block;
}
.aboutAreaImage.-sp {
  display: none;
}
.aboutAreaImage01_parts02,
.aboutAreaImage01_parts01 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;

  opacity: 0;
  scale: 0;
}
.aboutSection01.-is-active .aboutAreaImage01_parts01 {
  animation: aboutArea01Parts 0.5s 0.5s forwards;
}
.aboutSection01.-is-active .aboutAreaImage01_parts02 {
  animation: aboutArea01Parts 0.5s 1s forwards;
}
.aboutAreaImage02_circle {
  height: auto;
  opacity: 0;
}
img[src$=".svg"].aboutAreaImage02_circle {
  width: calc((69 / 400) * 100%);
}
.aboutAreaImage02_circle01 {
  position: absolute;
  top: calc((20 / 400) * 100%);
  left: calc((43 / 400) * 100%);
}
.aboutSection02.-is-active .aboutAreaImage02_circle01 {
  animation: aboutArea02Circle 0.5s 1s forwards;
}
.aboutAreaImage02_circle02 {
  position: absolute;
  top: calc((20 / 400) * 100%);
  left: calc((167 / 400) * 100%);
}
.aboutSection02.-is-active .aboutAreaImage02_circle02 {
  animation: aboutArea02Circle 0.5s 1.5s forwards;
}
.aboutAreaImage02_circle03 {
  position: absolute;
  top: calc((20 / 400) * 100%);
  left: calc((286 / 400) * 100%);
}
.aboutSection02.-is-active .aboutAreaImage02_circle03 {
  animation: aboutArea02Circle 0.5s 2s forwards;
}
.aboutAreaImage03_bg {
  display: none;
}
@media screen and (max-width: 819px) {
  .aboutAreaImage.-pc {
    display: none;
  }
  .aboutAreaImage.-sp {
    display: block;
  }
  .aboutArea.-no1 .aboutAreaImage {
    position: relative;
    text-align: center;
  }
  .aboutArea.-no1 .aboutAreaImage::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: calc((140 / 360) * 100vw);
    background: #00D5CE;
    z-index: 1;
  }
  .aboutArea.-no1 .aboutAreaImage_vessel {
    position: relative;
    margin-inline: auto;
    width: calc((260 / 360) * 100vw);
    height: auto;
    z-index: 2;
  }
  .aboutArea.-no2 .aboutAreaImage {
    position: relative;
    text-align: center;
  }
  .aboutAreaImage02_bg {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100vw;
    height: 143px;
    height: calc((130 / 360) * 100vw);
    background: var(--contents-blue-berry);
    z-index: 1;
  }
  .aboutSection02.-is-active .aboutAreaImage02_bg {
    animation: aboutArea02slideIn 0.5s 0.5 forwards;
  }
  .aboutArea.-no2 .aboutAreaImage::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 40%;
    background: var(--contents-bg-light-blue);
    z-index: 1;
  }
  .aboutAreaImage02_main {
    position: relative;
    width: 285px;
    width: calc((285 / 360) * 100vw);
    height: auto;
    z-index: 2;
  }
  img[src$=".svg"].aboutAreaImage02_circle {
    width: calc((57 / 360) * 100vw);
  }
  .aboutAreaImage02_circle01 {
    position: absolute;
    top: 0;
    left: calc((46.5 / 360) * 100vw);
    z-index: 2;
  }
  .aboutAreaImage02_circle02 {
    position: absolute;
    top: calc((50 / 360) * 100vw);
    left: calc((151.5 / 360) * 100vw);
    z-index: 2;
  }
  .aboutAreaImage02_circle03 {
    position: absolute;
    top: calc((110 / 360) * 100vw);
    left: calc((256.5 / 360) * 100vw);
    z-index: 2;
  }
  .aboutAreaImage03_bg {
    display: none;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .aboutArea.-no1 .aboutAreaImage::before {
    content: '';
    height: calc((200 / 640) * 100vw);
  }
  .aboutArea.-no1 .aboutAreaImage_vessel {
    width: calc((372 / 640) * 100vw);
  }
  .aboutAreaImage02_bg {
    bottom: calc((15 / 640) * 100vw);
    height: calc((200 / 640) * 100vw);
  }
  .aboutAreaImage03 {
    margin-inline: auto;
    width: calc((426 / 640) * 100vw);
  }
  .aboutAreaImage03_bg {
    display: block;

    position: absolute;
    bottom: 0;
    left: 0;
    width: 100vw;
    height: calc((200 / 640) * 100vw);
    background: #FF8A7F;
    z-index: 1;
  }
  .aboutAreaImage03 img {
    position: relative;
    z-index: 2;
  }
}

/* aboutAreaLinkList */
.aboutAreaLinkList {
  margin-top: 32px;
}
.aboutAreaLinkList_item {
  position: relative;
  padding-left: 24px;
  font-size: 16px;
  line-height: 1.5;
}
.aboutAreaLinkList_item::before {
  content: '';
  position: absolute;
  top: 2px;
  left: 0;
  display: block;
  width: 20px;
  height: 20px;
  background: url(/contents/cdn-img/lineup/debitcard/icon_arrow_right.svg) no-repeat 0 0;
  background-size: 20px 20px;
}
.aboutAreaLinkList_item + .aboutAreaLinkList_item {
  margin-top: 8px;
}
a.aboutAreaLinkList_a {
  position: relative;
  display: inline-flex;
  gap: 4px;
  color: var(--contents-key-color);
}
a.aboutAreaLinkList_a:hover {
  color: var(--contents-hover-color);
}
a.aboutAreaLinkList_a:active {
  color: var(--contents-active-color);
}
a.aboutAreaLinkList_a[target="_blank"] {
  padding-right: 24px;
}
a.aboutAreaLinkList_a[target="_blank"]::after {
  content: '';
  position: absolute;
  top: 2px;
  right: 0;
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url(/contents/cdn-img/lineup/debitcard/icon_link_blank.svg) no-repeat 0 0;
  background-size: 20px 20px;
}
@media screen and (max-width: 819px) {
  .aboutAreaLinkList {
    margin-top: 6.66vw;
  }
  .aboutAreaLinkList_item {
    font-size: 16px;
  }
  .aboutAreaLinkList_item::before {
    content: '';
    position: absolute;
    top: 2px;
  }
  a.aboutAreaLinkList_a[target="_blank"]::after {
    content: '';
    position: absolute;
    top: 2px;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .aboutAreaLinkList {
    margin-top: calc((24 / 640) * 100vw);
  }
  .aboutAreaLinkList_item {
    font-size: 14px;
  }
  .aboutAreaLinkList_item::before {
    content: '';
    position: absolute;
    top: 0;
  }
  a.aboutAreaLinkList_a[target="_blank"]::after {
    content: '';
    position: absolute;
    top: 0;
  }
}

/* aboutAreaPayment */
.aboutAreaPayment {
  margin-top: 24px;
  padding: 15px 0;
  border: 1px solid #D1D1D1;
  border-radius: 10px;
}
.aboutAreaPayment_lead {
  color: #6E6E6E;
  font-size: 16px;
  font-size: clamp(14px, 1.25vw, 16px);
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.05em;
}
.aboutAreaPayment_icon {
  position: relative;
  display: inline-block;
  padding-left: 20px;
}
.aboutAreaPayment_icon::before {
  content: '';
  position: absolute;
  top: 2px;
  left: 0;
  display: block;
  width: 17px;
  height: 18px;
  background: url(/contents/cdn-img/lineup/debitcard/icon_triangle_01.svg) no-repeat 0 0;
  background-size: 17px 18px;
}
.aboutAreaPayment_layout {
  display: flex;
  justify-content: flex-start;

  position: relative;
  margin-top: 16px;
}
.aboutAreaPayment_layout::before {
  content: '';
  position: absolute;
  top: 0;
  left: 131px;
  left: 32.75%;
  display: block;
  width: 1px;
  height: 61px;
  background: #D4D4D4;
}
.aboutAreaPayment_block {
  display: flex;
  flex-direction: column;
}
.aboutAreaPayment_block.-card {
  width: 139px;
  width: calc((139 / 400) * 100%);
}
.aboutAreaPayment_block.-sp {
  margin-left: 22px;
  width: 204px;
  width: calc((204 / 400) * 100%);
}
.aboutAreaPayment_data {
  text-align: center;
}
.aboutAreaPayment_image {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0;
  margin-bottom: 7px;
}
.aboutAreaPayment_imageWrap.-android .aboutAreaPayment_image,
.aboutAreaPayment_imageWrap.-ios .aboutAreaPayment_image {
  justify-content: space-between;
}
.aboutAreaPayment_imageWrap.-android .aboutAreaPayment_google,
.aboutAreaPayment_imageWrap.-ios .aboutAreaPayment_apple {
  margin-left: auto;
}
.aboutAreaPayment_master {
  margin-top: 11px;
  width: 44px;
  width: calc(((44 / 139) * 100%));
  height: auto;
}
.aboutAreaPayment_contactless {
  width: 41px;
  width: calc(((41 / 204) * 100%));
  height: auto;
}
.aboutAreaPayment_google {
  margin-left: calc(((7 / 204) * 100%));
  width: 55px;
  width: calc(((55 / 204) * 100%));
  height: auto;
}
.aboutAreaPayment_apple {
  margin-left: calc(((3 / 204) * 100%));
  width: 55px;
  width: calc(((55 / 204) * 100%));
  height: auto;
}
.aboutAreaPayment_id {
  margin-left: auto;
  width: 33px;
  width: calc(((33 / 204) * 100%));
  height: auto;
}
.aboutAreaPayment_txt {
  margin-top: auto;

  color: #000;
  font-size: 13px;
  font-size: clamp(12px, 1.01vw, 13px);
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
  text-indent: 0.01em;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 819px) {
  .aboutAreaPayment_image.-pc {
    display: none;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .aboutAreaPayment {
    margin-inline: auto;
    background: #fff;
    width: calc((400 / 640) * 100vw);
  }
}
@media screen and (max-width: 559px) {
  .aboutAreaPayment {
    margin-top: 6.66vw;
    padding: 4.44vw 0;
    background: #fff;
  }
  .aboutAreaPayment_layout {
    margin-top: 4px;
  }
  .aboutAreaPayment_layout::before {
    content: '';
    position: absolute;
    top: calc((30 / 131) * 100%);
    left: calc((135 / 326) * 100%);
    height: calc((48 / 131) * 100%);
  }
  .aboutAreaPayment_block.-card {
    margin-left: calc((14 / 326) * 100%);
    padding-top: calc((35 / 326) * 100%);
    width: 121px;
    width: calc((121 / 326) * 100%);
  }
  .aboutAreaPayment_block.-sp {
    margin-left: calc((33 / 326) * 100%);
    width: calc((125 / 326) * 100%);
  }
  .aboutAreaPayment_image {
    position: relative;
    display: block;
    margin-bottom: calc(((27 / 125) * 100%));
    aspect-ratio: 125 / 87;
  }
  .aboutAreaPayment_master {
    margin-top: 0;
    width: 49px;
    width: calc(((49 / 121) * 100%));
    height: auto;
  }
  .aboutAreaPayment_contactless {
    position: absolute;
    top: calc(((28 / 125) * 100%));
    left: 0;
    width: calc(((51 / 125) * 100%));
  }
  .aboutAreaPayment_google {
    position: absolute;
    top: 0;
    right: 0;
    margin-left: auto;
    width: calc(((66 / 125) * 100%));
  }
  .aboutAreaPayment_apple {
    position: absolute;
    top: 0;
    right: 0;
    margin-left: auto;
    width: calc(((66 / 125) * 100%));
  }
  .aboutAreaPayment_id {
    position: absolute;
    bottom: 0;
    right: calc(((13 / 125) * 100%));
    width: calc(((37 / 125) * 100%));
  }
  .aboutAreaPayment_txt {
    font-size: 11px;
  }
}

/* voiceArea */
.voiceSection .voiceArea_slider {
  display: none;
}
.voiceSection .voiceArea.-top .voiceArea_slider.-debitTop {
  display: block;
}
.voiceSection .voiceArea.-mastercard .voiceArea_slider.-debitMastercard {
  display: block;
}
.voiceSection .voiceArea.-mastercard-pointplus .voiceArea_slider.-debitMastercardPointPlus {
  display: block;
}
.voiceSection .voiceArea.-mastercard-platinum .voiceArea_slider.-debitMastercardPlatinum {
  display: block;
}

.voiceArea {
  padding: calc((80 / 1040) * 100%) calc((32 / 1040) * 100%);

  background: var(--contents-blue-berry);
  color: #fff;
}
.voiceArea.-mastercard {
  background: #F9F9F9;
  color: #2B2B2B;
}
.voiceArea.-mastercard-pointplus {
  background: #F4F2ED;
  color: #2B2B2B;
}
.voiceArea.-mastercard-platinum {
  background: #757575;
  color: #fff;
}
.voiceArea_slider {
  margin-top: 32px;
}
.voiceArea_content {
  display: none;
}
.voiceArea_content.-is-active {
  display: block;
}

.voiceArea.-mastercard-platinum .topWidthPc,
.voiceArea.-mastercard-pointplus .topWidthPc,
.voiceArea.-mastercard .topWidthPc {
  width: min(100%, 976px);
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .voiceArea {
    padding: 12.5vw 5vw;
  }
  .voiceArea.-mastercard {
    padding-top: 7.81vw;
    padding-bottom: 6.25vw;
  }
}
@media screen and (max-width: 559px) {
  .voiceArea {
    padding: 25px 16px 40px 16px;
    padding: 6.94vw 16px 11.11vw 16px;
  }
  .voiceArea_slider {
    margin-top: calc((32 / 360) * 100vw);
  }
}

/* voiceAreaHeader */
.voiceAreaHeader {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: row;
  padding-inline: 46px; /* px指定 */
}
.voiceAreaHeader_contents {
  flex: 1;

  padding-right: 46px;
}
.voiceAreaHeader_main {
  position: relative;
}
.voiceAreaHeader_image {
  width: calc((200 / 884) * 100%);
}
.voiceArea.-mastercard-platinum .voiceAreaHeader_image,
.voiceArea.-mastercard-pointplus .voiceAreaHeader_image,
.voiceArea.-mastercard .voiceAreaHeader_image {
  width: 162px;
}
.voiceAreaHeader_list {
  padding-top: 27px;
}
.voiceAreaHeader_en {
  font-size: 42px;
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.voiceAreaHeader_en br {
  display: none;
}
.voiceAreaHeader_hdr {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.03em;
}
* + .voiceAreaHeader_hdr {
  margin-top: 15px;
}
.voiceAreaHeader_hdrMain {
  display: block;
  font-size: 32px;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0.03em;
}
.voiceArea.-mastercard-pointplus .voiceAreaHeader_hdrMain img {
  width: 180px;
}
.voiceArea.-mastercard-platinum .voiceAreaHeader_hdrMain img {
  width: 238px;
}
.voiceAreaHeader_hdrSub {
  display: block;
  margin-top: 24px;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.11;
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .voiceAreaHeader {
    padding-inline: 0;
  }
  .voiceAreaHeader_image {
    width: calc((200 / 640) * 100vw);
  }
}
@media screen and (max-width: 559px) {
  .voiceAreaHeader {
    display: grid;
    grid-template-areas:
    "main image"
    "list list";
    grid-template-columns: 1fr 30.83vw;

    padding-inline: 0;
    width: 100%;
  }
  .voiceArea.-mastercard-platinum .voiceAreaHeader,
  .voiceArea.-mastercard-pointplus .voiceAreaHeader,
  .voiceArea.-mastercard .voiceAreaHeader {
    grid-template-columns: 1fr 40.56vw;
  }
  .voiceAreaHeader_contents {
    display: contents;
  }
  .voiceAreaHeader_main {
    grid-area: main;

    padding-top: 23px;
  }
  .voiceAreaHeader_image {
    grid-area: image;
    width: 111px;
    width: 30.83vw;
  }
  .voiceArea.-mastercard-platinum .voiceAreaHeader_image,
  .voiceArea.-mastercard-pointplus .voiceAreaHeader_image,
  .voiceArea.-mastercard .voiceAreaHeader_image {
    width: 146px;
    width: 40.56vw;
  }
  .voiceAreaHeader_list {
    grid-area: list;
    padding-top: 41px;
/*
    margin-inline: -16px;
    padding-inline: 16px;
    overflow: hidden;
    overflow-x: auto;
    webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
  */
  }
  .voiceAreaHeader_en {
    font-size: 26px;
    font-weight: 500;
    line-height: 1.38;
    letter-spacing: 0.03em;
  }
  .voiceAreaHeader_en br {
    display: inline;
  }
  .voiceAreaHeader_hdr {
    font-size: 12px;
  }
  * + .voiceAreaHeader_hdr {
    margin-top: 8px;
  }

  .voiceAreaHeader_hdrMain {
    font-size: 22px;
    letter-spacing: 0.01em;
  }
  .voiceAreaHeader_hdrSub {
    margin-top: 16px;
    font-size: 12px;
    line-height: 1.5;
  }

  .voiceArea.-mastercard-pointplus .voiceAreaHeader_hdrMain img {
    width: 143px;
  }
  .voiceArea.-mastercard-platinum .voiceAreaHeader_hdrMain img {
    width: 166px;
  }
}

/* voiceAreaSwitch */
.voiceAreaSwitch {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 16px;
}
.voiceAreaSwitch_btn {
  display: flex;
  justify-content: center;
  align-items: center;

  padding: 0 14px;
  border-radius: 9999px;
  height: 32px;
  border: 2px solid #fff;
  background: #fff;
  color: var(--contents-key-color);
  transition: border-color 0.3s ease, background-color 0.3s ease;
}
.voiceAreaSwitch_btn:hover {
  border-color: #EDF3FF;
  background: #EDF3FF;
}
.voiceAreaSwitch_btnInner {
  cursor: pointer;
}
.voiceAreaSwitch_btn.-is-active .voiceAreaSwitch_btnInner {
  cursor: default;
}
.voiceAreaSwitch_btnInner {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  font-weight: 300;
  line-height: 28px;
  margin-block: var(--contents-leading-trim);
}
.voiceAreaSwitch_btn.-is-active {
  background: var(--contents-key-color);
  color: #fff;
  cursor: default;
}
@media screen and (max-width: 559px) {
  .voiceAreaSwitch {
    gap: 8px;
/*
    flex-wrap: nowrap;
*/
  }
  /*
  .voiceAreaSwitch_item {
    white-space: nowrap;
  }
    */
}

/* debitVoiceSwiperWrap */
.debitVoiceSwiperWrap {
  overflow: hidden;
  position: relative;
  padding-inline: 46px; /* px指定 */
}
.debitVoiceSwiperWrap::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 44px;
  height: 100%;
  background: var(--contents-blue-berry);
  z-index: 2;
}
.debitVoiceSwiperWrap::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 44px;
  height: 100%;
  background: var(--contents-blue-berry);
  z-index: 2;
}
.voiceArea.-mastercard .debitVoiceSwiperWrap::after,
.voiceArea.-mastercard .debitVoiceSwiperWrap::before {
  background: #F9F9F9;
}
.voiceArea.-mastercard-pointplus .debitVoiceSwiperWrap::after,
.voiceArea.-mastercard-pointplus .debitVoiceSwiperWrap::before {
  background: #F4F2ED;
}
.voiceArea.-mastercard-platinum .debitVoiceSwiperWrap::after,
.voiceArea.-mastercard-platinum .debitVoiceSwiperWrap::before {
  background: #757575;
}

.voiceArea .debitVoiceSwiperWrap:has(.debitVoiceSwiper-button-next.swiper-button-disabled) .debitVoiceSwiper-pagination {
  display: none;
}
@media screen and (max-width: 819px) {
  .debitVoiceSwiperWrap {
    padding-inline: 0;
    overflow: visible;
  }
  .debitVoiceSwiperWrap::before {
    display: none;
  }
  .debitVoiceSwiperWrap::after {
    display: none;
  }
  .debitVoiceSwiperWrap .swiper-slide {
    transition: opacity 0.5s;
  }
  .debitVoiceSwiperWrap .swiper-slide.swiper-slide-prev {
    opacity: 0;
  }
}

/* debitVoiceSwiper */
.debitVoiceSwiper .swiper-slide {
  width: 282px;
  width: calc((99.99% - 32px) / 3);
  height: auto;
}
.debitVoiceSwiper .swiper-wrapper {
  margin-bottom: 40px; /* px指定 */
}
.debitVoiceSwiper.swiper-container-horizontal>.swiper-pagination-bullets {
  bottom: 0;
  height: 8px;
  line-height: 0;
}
.debitVoiceSwiper.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 6px;
}
.debitVoiceSwiper .swiper-pagination-bullet {
  background: #0281FF;
  opacity: 1;
}
.voiceArea.-mastercard .debitVoiceSwiper .swiper-pagination-bullet {
  background: #DDD;
}
.voiceArea.-mastercard-pointplus .debitVoiceSwiper .swiper-pagination-bullet {
  background: #E4DECF;
}
.voiceArea.-mastercard-platinum .debitVoiceSwiper .swiper-pagination-bullet {
  background: #979797;
}
.debitVoiceSwiper .swiper-pagination-bullet-active {
  background: #D2FDFD;
}
.voiceArea.-mastercard .debitVoiceSwiper .swiper-pagination-bullet-active {
  background: #B1B1B1;
}
.voiceArea.-mastercard-pointplus .debitVoiceSwiper .swiper-pagination-bullet-active {
  background: #fff;
}
.voiceArea.-mastercard-platinum .debitVoiceSwiper .swiper-pagination-bullet-active {
  background: #fff;
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitVoiceSwiper .swiper-slide {
    width: 43.75vw;
  }
  .debitVoiceSwiper .swiper-wrapper {
    margin-bottom: 40px; /* px指定 */
  }
  .debitVoiceSwiper.swiper-container-horizontal>.swiper-pagination-bullets {
    bottom: -40px;
  }
}
@media screen and (max-width: 559px) {
  .debitVoiceSwiper .swiper-slide {
    width: 280px;
    width: 77.77vw;
  }
  .debitVoiceSwiper .swiper-wrapper {
    margin-bottom: 32px; /* px指定 */
  }
  .debitVoiceSwiper.swiper-container-horizontal>.swiper-pagination-bullets {
    bottom: -32px;
  }
}

/* debitVoiceSwiper-button */
.debitVoiceSwiper-button-prev,
.debitVoiceSwiper-button-next {
  position: absolute;
  top: 50%;
  left: -5px;
  display: block;
  margin-top: -40px;
  width: 40px;
  height: 40px;
  background: url(/contents/cdn-img/lineup/debitcard/btn_slider_arrow_01.svg) no-repeat 0 0;
  background-size: 40px 40px;
  cursor: pointer;
  text-indent: -9999px;
  overflow: hidden;
  
  z-index: 10;

  user-select: none;
	-webkit-user-select: none;
}
.voiceArea.-mastercard .debitVoiceSwiper-button-prev,
.voiceArea.-mastercard .debitVoiceSwiper-button-next {
  background: url(/contents/cdn-img/lineup/debitcard/mastercard/btn_slider_arrow_01.svg) no-repeat 0 0;
  background-size: 40px 40px;
}
.voiceArea.-mastercard-pointplus .debitVoiceSwiper-button-prev,
.voiceArea.-mastercard-pointplus .debitVoiceSwiper-button-next {
  background: url(/contents/cdn-img/lineup/debitcard/mastercard-pointplus/btn_slider_arrow_01.svg) no-repeat 0 0;
  background-size: 40px 40px;
}
.voiceArea.-mastercard-platinum .debitVoiceSwiper-button-prev,
.voiceArea.-mastercard-platinum .debitVoiceSwiper-button-next {
  background: url(/contents/cdn-img/lineup/debitcard/mastercard/platinum/btn_slider_arrow_01.svg) no-repeat 0 0;
  background-size: 40px 40px;
}
.voiceArea.-mastercard-pointplus .debitVoiceSwiper-button-next,
.voiceArea.-mastercard .debitVoiceSwiper-button-next,
.debitVoiceSwiper-button-next {
  left: auto;
  right: -5px;
  transform: rotate(180deg);
}
.debitVoiceSwiper-button-prev.swiper-button-disabled,
.debitVoiceSwiper-button-next.swiper-button-disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
@media screen and (max-width: 819px) {
  .debitVoiceSwiper-button-prev,
  .debitVoiceSwiper-button-next {
    display: none;
  }
}

/* debitVoiceBox */
.debitVoiceBox {
  display: flex;
  flex-direction: column;

  padding: 23px 16px 0 16px;
  background: #fff;
  height: 100%;
  color: #1B1B1B;
  border-radius: 10px;
}
.debitVoiceBox_hdr {
  position: relative;
  padding-left: 11px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.03em;
}
.debitVoiceBox_hdr::before {
  content: '';
  position: absolute;
  top: 1px;
  left: 0;
  display: block;
  border-radius: 9999px;
  width: 5px;
  height: 18px;
  background: var(--contents-key-color);
}
.voiceArea.-mastercard .debitVoiceBox_hdr::before {
  background: #00D5CE;
}
.voiceArea.-mastercard-pointplus .debitVoiceBox_hdr::before {
  background: #FF8A7F;
}
.voiceArea.-mastercard-platinum .debitVoiceBox_hdr::before {
  background: #757575;
}
.debitVoiceBox_txt {
  margin-top: 9px;
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0.02em;
}
.debitVoiceBox_txt em {
  font-style: normal;
  font-weight: 500;
}
.debitVoiceBox_bottom {
  margin-top: auto;
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitVoiceBox_hdr::before {
    content: '';
    position: absolute;
    top: -1px;
  }
  .debitVoiceBox_hdr {
    font-size: 14px;
  }
}
@media screen and (max-width: 559px) {
  .debitVoiceBox {
    padding: 25px 16px 0 16px;
  }
  .debitVoiceBox_hdr {
    font-size: 14px;
  }
  .debitVoiceBox_hdr::before {
    content: '';
    position: absolute;
    top: -1px;
  }
  .debitVoiceBox_txt {
    margin-top: 11px;
    margin-bottom: 16px;
    font-size: 14px;
    line-height: 1.7;
  }
}

/* debitVoiceProfile */
.debitVoiceProfile {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: row;
}
.debitVoiceBox_bottom .debitVoiceProfile:only-child {
  padding-bottom: 16px;
}
.debitVoiceProfile_main {
  flex: 1;

  padding: 0 8px 0 0 ;
  text-align: right;
}
.debitVoiceProfile_image {
  width: 56px;
  min-height: 56px;
  line-height: 0;
}
.debitVoiceProfile_txt {
  font-size: 14px;
  font-weight: 300;
  line-height: 1.375;
}
.debitVoiceProfile_txt em {
  font-style: normal;
  font-weight: 600;
}
@media screen and (max-width: 559px) {
  .debitVoiceProfile_txt {
    font-size: 14px;
    line-height: 1.57;
    letter-spacing: 0.06em;
  }
}

/* debitVoiceLink */
a.debitVoiceLink_a {
  display: flex;
  justify-content: center;
  align-items: center;

  position: relative;
  margin: 16px -16px 0 -16px;
  padding: 0 15px;
  border-radius: 0 0 10px 10px;
  background: var(--contents-bg-blue);
  color: var(--contents-key-color);
  height: 56px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.5;
}
.voiceArea.-mastercard-platinum a.debitVoiceLink_a,
.voiceArea.-mastercard-pointplus a.debitVoiceLink_a,
.voiceArea.-mastercard a.debitVoiceLink_a {
  background: var(--contents-bg-light-blue);
}
.debitVoiceLink_inner {
  position: relative;
  display: inline-block;
  padding: 0 0 0 24px;
}
.debitVoiceLink_inner::before {
  content: '';
  position: absolute;
  top: 2px;
  left: 0;
  display: block;
  width: 20px;
  height: 20px;
  background: url(/contents/cdn-img/lineup/debitcard/icon_arrow_right.svg) no-repeat 0 0;
  background-size: 20px 20px;
}
a.debitVoiceLink_a[target="_blank"] .debitVoiceLink_inner {
  padding-right: 23px;
}
a.debitVoiceLink_a[target="_blank"] .debitVoiceLink_inner::after {
  content: '';
  position: absolute;
  top: 2px;
  right: 0;
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url(/contents/cdn-img/lineup/debitcard/icon_link_blank.svg) no-repeat 0 0;
  background-size: 20px 20px;
}
@media screen and (max-width: 559px) {
	a.debitVoiceLink_a[target="_blank"] .debitVoiceLink_inner {
		padding-right: 20px;
	}
}

/* topCard */
.topCard {
  padding: 64px 134px;
  padding: calc((64 / 1040) * 100%) calc((134 / 1040) * 100%);
  background: #fff;
}
.topCard.-platinum {
  background: #757575;
  color: #fff;
}
.topCard.-regular {
  background: #F5F5F5;
}
.topCard .topWidthPc {
  width: min(100%, 760px);
}
.topCard_vessel {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: row;
}
.topCard_inner {
  width: calc((312/ 776) * 100%);
}
.topCard.-platinum .topCard_inner {
  order: 1;
}
.topCard_header {
  position: relative;
}
.topCard_image {
  width: calc((400 / 776) * 100%);
}
.topCard.-platinum .topCard_image {
  order: 2;
}
.topCard_body {
  padding-top: 24px;
}
.topCard_sub {
  color: var(--contents-txt-secondary);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.77;
  letter-spacing: 0.01em;
}
.topCard.-platinum .topCard_sub {
  color: #fff;
}
.topCard.-point .topCard_hdr {
  margin-top: 8px;
  line-height: 0;
}
.topCard.-platinum .topCard_hdr {
  margin-top: 7px;
  line-height: 0;
}
.topCard.-point .topCard_hdr img {
  width: 161px;
  height: auto;
}
.topCard.-platinum .topCard_hdr img {
  width: 219px;
  height: auto;
}
.topCard_hdrP {
  display: block;
  color: var(--contents-txt-secondary);
  font-size: 32px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.01em;
}
.topCard_hdrS {
  display: block;
  color: var(--contents-txt-secondary);
  font-size: 17px;
  font-weight: 400;
  line-height: 1.88;
  letter-spacing: 0.01em;
}
.topCard_button {
  position: relative;
  margin-top: 32px;
}
@media screen and (max-width: 819px) {
  .topCard {
    padding: calc((40 / 360) * 100%) calc((24 / 360) * 100%);
  }
  .topCard .topWidthPc {
    width: 100%;
  }
  .topCard_vessel {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    flex-direction: column;
  }
  .topCard_inner {
    display: contents;
  }
  .topCard_header {
    order: 1;
  }
  .topCard_image {
    order: 2;
  
    margin-top: calc((27 / 360) * 100%);
    width: auto;
    text-align: center;
  }
  .topCard.-regular .topCard_image {
    margin-top: calc((20 / 360) * 100%);
  }
  .topCard_image img {
    width: 92.94%;
    height: auto;
  }
  .topCard_body {
    order: 3;

    padding-top: calc((28 / 360) * 100%);
  }
  .topCard_sub {
    font-size: 16px;
  }
  .topCard.-point .topCard_hdr {
    margin-top: 16px;
  }
  .topCard.-regular .topCard_hdr {
    margin-top: 1px;
  }
  .topCard_hdrP {
    font-size: 28px;
  }
  .topCard_hdrS {
    margin-top: -5px;
  }
  .topCard_button {
    margin-top: calc((24 / 360) * 100%);
    text-align: center;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .topCard {
    padding: calc((64 / 640) * 100%) calc((24 / 640) * 100%);
  }
  .topCard_sub {
    font-size: 18px;
    text-align: center;
  }
  .topCard_hdr {
    margin-top: 8px;
    text-align: center;
  }
  .topCard.-regular .topCard_hdr {
    margin-top: 8px;
  }
  .topCard_image {
    margin: calc((24 / 640) * 100vw) auto 0 auto;
    width: calc((400 / 640) * 100vw);
  }
  .topCard_image img {
    width: 100%;
  }
  .topCard_body {
    margin: calc((24 / 640) * 100vw) auto 0 auto;
    padding-top: 0;
    width: calc((400 / 640) * 100vw);
  }
  .topCard_hdrP {
    font-size: 32px;
  }
  .topCard_hdrS {
    margin-top: 1px;
  }
  .topCard_button {
    margin-top: calc((24 / 640) * 100vw);
  }
  .topCard_button .debitBtnBorder {
    width: 100%;
  }
}

/* debitInfo */
.debitInfo {
  line-height: 0;
}
.debitInfo_vessel {
  display: inline-flex;
  justify-content: center;
  align-items: center;

  padding: 7px 6px 5px 6px;
  border-radius: 3px;
  background: #f5f5f5;
  color: rgba(27, 27, 27, 0.95);
  font-weight: 300;
  font-size: 14px;
  line-height: 1.2;
}
.topCard.-platinum .debitInfo_vessel {
  background: #646464;
  color: #fff;
}
.topCard.-regular .debitInfo_vessel {
  background: #f0f0f0;
}
@media screen and (max-width: 559px) {
  .debitInfo_vessel {
    padding: 5px 6px 3px 6px;
    font-size: 12px;
  }
}

/* debitInfoList */
.debitInfoList {
  color: #1B1B1B;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.5;
}
.topCard.-platinum .debitInfoList {
  color: #fff;
}
* + .debitInfoList {
  margin-top: 17px;
}
.debitInfoList_item {
  position: relative;
  padding-left: 24px;
}
.debitInfoList_item::before {
  content: '';
  position: absolute;
  top: 2px;
  left: 0;
  display: block;
  width: 16px;
  height: 17px;
  background: url(/contents/cdn-img/lineup/debitcard/icon_circle_check_01.svg) no-repeat 0 0;
  background-size: 16px 17px;
}
.topCard.-platinum .debitInfoList_item::before {
  background: url(/contents/cdn-img/lineup/debitcard/icon_circle_check_01_w.svg) no-repeat 0 0;
  background-size: 16px 17px;
}
.debitInfoList_item + .debitInfoList_item {
  margin-top: 5px;
}
@media screen and (max-width: 559px) {
  .debitInfoList {
    font-size: 14px;
  }
  * + .debitInfoList {
    margin-top: 10px;
  }
  .debitInfoList_item {
    padding-left: 20px;
  }
  .debitInfoList_item::before {
    content: '';
    position: absolute;
    top: 2px;
    width: 12px;
    height: 13px;
    background: url(/contents/cdn-img/lineup/debitcard/icon_circle_check_01_sp.svg) no-repeat 0 0;
    background-size: 12px 13px;
  }
  .topCard.-platinum .debitInfoList_item::before {
    background: url(/contents/cdn-img/lineup/debitcard/icon_circle_check_01_sp_w.svg) no-repeat 0 0;
    background-size: 12px 13px;
  }
}

/* debitTopFd */
.debitTopFd {
  padding: calc((48 / 1040) * 100%) 0 0 0;
  background: #fff;
}
.debitTopFd_hdr {
  margin-top: min(7.5vw, 96px);
  color: #1B1B1B;
  font-size: 32px;
  font-weight: 300;
  line-height: 1.2;
  text-align: center;
  text-indent: 0.02em;
  letter-spacing: 0.02em;
}
.debitTopFd .m-cols {
  margin-inline: calc((128 / 1040) * 100%);
}
.debitTopFd .m-cols:first-child {
  margin-top: 0;
}
.debitTopFd .m-listQaLink {
  margin-inline: calc((98 / 1040) * 100%);
}
.debitTopFd .m-boxLinkList {
  margin-inline: calc((98 / 1040) * 100%);
}
@media screen and (max-width: 559px) {
  .debitTopFd {
    padding: 8.88vw 4.44vw 0 4.44vw;
  }
  .debitTopFd.-lower {
    padding-top: 6.66vw;
  }
  .debitTopFd_hdr {
    margin-top: 40px;
    margin-top: 11.11vw;
    font-size: 28px;
  }
  .debitTopFd .m-cols {
    margin-left: 0;
    margin-right: 0;
  }
  .debitTopFd .m-listQaLink {
    margin: 20px 0 0 0;
  }
  .debitTopFd .m-boxLinkList {
    margin: 40px 0 0 0;
  }
  .debitTopFd .m-linkAreaLine-ttl {
    font-size: 14px;
  }
  .debitTopFd .m-linkAreaLine-txt {
    font-size: 14px;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitTopFd.-lower  {
    padding: 7.5vw 7.5vw 0 7.5vw;
  }
  .debitTopFd .m-cols {
    margin-left: 0;
    margin-right: 0;
  }
  .debitTopFd .m-listQaLink {
    margin: 20px 0 0 0;
  }
  .debitTopFd .m-boxLinkList {
    margin: 40px 0 0 0;
  }
}

/* debitFooterNotes */
.debitFooterNotes {
  margin-top: calc((48 / 1040) * 100%);
  padding: calc((40 / 1040) * 100%) calc((32 / 1040) * 100%);
  background: #F5F5F5;
}
.debitFooterNotes.-lower {
  padding: 48px 0;
}
.debitFooterNotes.-lower .topWidthPc {
  width: min(100%, 1040px);
}
.debitFooterNotes.-lower .debitFooterNotes_vessel {
  padding-inline: calc((98 / 1040) * 100%);
}
.debitFooterNotes.-lower .debitFooterNotes_vessel {
  padding-inline: calc((98 / 1040) * 100%);
}
.debitFooterNotes_hdr {
  color: #000;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
}
* + .debitFooterNotes_list {
  margin-top: 8px;
}
.debitFooterLinkWrap + .debitFooterNotes_list {
  margin-top: 16px;
}
.debitFooterNotes_item {
  position: relative;
  padding-left: 22px;
  color: #000;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.5;
}
.debitFooterNotes_item::before {
  content: '';
  position: absolute;
  top: 5px;
  left: 3px;
  display: block;
  border-radius: 9999px;
  width: 6px;
  height: 6px;
  background: #000;
}
.debitFooterNotes_item + .debitFooterNotes_item {
  margin-top: 8px;
}
.debitFooterNotes_item a {
  position: relative;
  color: var(--contents-key-color);
  text-decoration: underline;
}
@media screen and (max-width: 559px) {
  .debitFooterNotes {
    margin: 8.88vw -4.44vw 0 -4.44vw;
    padding: 8.88vw 6.66vw;
  }
  .debitFooterNotes.-lower {
    padding: 8.88vw 0;
  }
  .debitFooterNotes.-lower .debitFooterNotes_vessel {
    padding-inline: 6.66vw;
  }
  .debitFooterNotes.-lower .debitFooterNotes_vessel {
    padding-inline: 6.66vw;
  }
  .debitFooterNotes_item {
    font-size: 12px;
  }
  .debitFooterNotes_item::before {
    content: '';
    position: absolute;
    top: 7px;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitFooterNotes.-lower {
    margin: 7.5vw -7.5vw 0 -7.5vw;
    padding: 7.5vw 0;
  }
  .debitFooterNotes.-lower .debitFooterNotes_vessel {
    padding-inline: 7.5vw;
  }
  .debitFooterNotes.-lower .debitFooterNotes_vessel {
    padding-inline: 7.5vw;
  }
}

/* debitFooterLink */
* + .debitFooterLinkWrap {
  margin-top: 16px;
}
a.m-boxLink.debitFooterLink {
  display: flex;
  justify-content: flex-start;
  align-items: center;

  padding: 20px 28px 18px 16px;
  border: 1px solid #E9E9E9;
  width: min(100%, 600px);
  min-height: 64px;
  background: #fff;
  color: #0058A0;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.5;
}
a.m-boxLink.debitFooterLink:hover {
  text-decoration: none;
  background-color: #eee;
}
.debitFooterLink_vessel {
  display: inline-block;
  text-align: left;
}
img[src$=".svg"].debitFooterLink_pdf {
  display: inline;
  margin: 1px 0 0 6px;
  width: 12px;
  height: 16px;
}

/* debitScrollFadeIn */
.debitScrollFadeIn {
  position: relative;
  transform: translateY(50px);
  opacity: 0;
  transition: .5s .5s;
}
.debitScrollFadeIn.-is-active {
  opacity: 1;
  transform: translateY(0);
}
.js-scrollFadeIn.-is-active .debitScrollFadeIn {
	opacity: 1;
	transform: translateY(0);
}

/* debitFixedLink */
.debitFixedLink {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000;
}
.debitFixedLink_vessel {
  padding: 24px 16px;
  border-radius: 16px 16px 0px 0px;
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0px -4px 4px rgba(0, 0, 0, 0.04);
  backdrop-filter: blur(3px);
}
.debitFixedLink_items {
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-direction: row;
}
.debitFixedLink_item {
  width: min(100%, 350px);
}
.debitFixedLink_item + .debitFixedLink_item {
  margin-left: 24px;
}
.debitFixedLink_item .debitBtnBorder,
.debitFixedLink_item .debitBtn {
  width: 100%;
  height: 56px;
}
.debitFixedLink_item .debitBtnBorder .debitBtnBorder_txt {
  padding-right: 0;
}
.debitFixedLink_item .debitBtnBorder .debitBtnBorder_txt::before {
  display: none;
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitFixedLink_item + .debitFixedLink_item {
    margin-left: 16px;
  }
}
@media screen and (max-width: 559px) {
  .debitFixedLink {
    display: none;
  }
}

/* debitFixedLinkSp */
.debitFixedLinkSp {
  display: none;
}
@media screen and (max-width: 559px) {
  .debitFixedLinkSp {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1000;
  }
  .debitFixedLinkSp_vessel {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    flex-direction: row;

    padding: 16px 16px 16px 8px;
    border-radius: 16px 16px 0px 0px;
    background: rgba(255, 255, 255, 0.95);
    box-shadow: 0px -4px 4px rgba(0, 0, 0, 0.04);
    backdrop-filter: blur(3px);
  }
  .debitFixedLinkSp_main {
    flex: 1;
    padding: 0 0 0 8px;
    border-left: 1px solid #E9E9E9;
  }
  .debitFixedLinkSp_side {
    align-self: center;

    width: 66px;
    min-width: 66px;

    font-size: 10px;
    line-height: 1.6;
    text-align: center;
  }
  a.debitFixedLinkSp_btn {
    display: flex;
    justify-content: center;
    align-items: center;

    border-radius: 9999px;
    width: 100%;
    height: 56px;
    background: var(--contents-key-color);
    color: #fff;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.25;
  }
  a.debitFixedLinkSp_btn:hover {
    color: #fff;
    text-decoration: none;
  }
  a.debitFixedLinkSp_btn:active {
    color: #fff;
    text-decoration: none;
  }
  .debitFixedLinkSp_a {
    color: var(--contents-key-color);
  }
}

/* debit lower page */
/* debitHeadMain */
.debitHeadMain {
  padding: 72px 0 0 0;
}
.debitHeadMain_vessel {
  display: grid;
  grid-template-columns: 1fr 55.76%;
  grid-template-rows: auto auto;
  grid-template-areas:
    "main image"
    "notes notes";
}
.debitHeadMain_image {
  grid-area: image;
}
.debitHeadMain_image img {
  width: 100%;
  height: auto;
}
.debitHeadMain_content {
  display: contents;
}
.debitHeadMain_main {
  grid-area: main;
  align-content: center;

  padding: 0 min(3.75vw, 48px);
}
.debitHeadMain.-mastercard-platinum .debitHeadMain_main {
  align-content: flex-end;
}
.debitHeadMain_notes {
  grid-area: notes;

  padding: min(4.37vw, 56px) min(3.75vw, 48px) 0 min(3.75vw, 48px);
}
.debitHeadMain_notes a {
  text-decoration: underline;
}
@media screen and (min-width: 1501px) {
  .debitHeadMain_vessel {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
      "content image"
      "content image";
  }
  .debitHeadMain_content {
    grid-area: content;

    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;

    padding: 0 48px 0 150px;
    padding: 0 2.24vw 0 7.57vw;
  }
  .debitHeadMain_main {
    padding: 0;
    width: 100%;
  }
  .debitHeadMain_notes {
    padding: 51px 0 0 0;
    padding: 2.57vw 0 0 0;
    width: 100%;
  }
}
@media screen and (min-width: 820px) and (max-width: 1279px) {
  .debitHeadMain_vessel {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 819px) {
  .debitHeadMain {
    padding: 0;
  }
  .debitHeadMain_vessel {
    display: block;
  }
  .debitHeadMain_main {
    padding: 32px 24px 24px 24px;
    padding: 8.88vw 6.66vw 6.66vw 6.66vw;
  }
  .debitHeadMain_notes {
    border-top: 1px solid #F5F5F5;
    padding: 24px 16px;
    padding: 6.66vw 4.44vw;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitHeadMain_main {
    padding: 44px 48px 32px 48px;
    padding: 6.87vw 7.5vw 5vw 7.5vw;
  }
  .debitHeadMain_notes {
    padding: 24px 48px;
    padding: 3.75vw 7.5vw;
  }
}

/* debitHeadMainHdr */
.debitHeadMainHdr {
  color: #575757;
  font-weight: 300;
}
.debitHeadMainHdr_main {
  display: block;
  font-size: 32px;
  line-height: 1.2;
}
.debitHeadMain.-mastercard-platinum .debitHeadMainHdr_main,
.debitHeadMain.-mastercard-pointplus .debitHeadMainHdr_main {
  line-height: 0;
}
.debitHeadMain.-mastercard-pointplus .debitHeadMainHdr_main img {
  width: 180px;
  height: auto;
}
.debitHeadMain.-mastercard-platinum .debitHeadMainHdr_main img {
  width: 242px;
  height: auto;
}
.debitHeadMainHdr_sub {
  display: block;
  margin-top: 16px;
  font-size: 16px;
  line-height: 1.5;
}
.debitHeadMainHdr_sub2 {
  display: block;
  margin-top: 16px;
  font-size: 14px;
  line-height: 1.6;
}
.debitHeadMainHdr_sub2 em {
  font-size: 18px;
  font-weight: 300;
}
@media screen and (min-width: 1501px) {
  .debitHeadMainHdr_main {
    font-size: clamp(32px, 2.12vw, 42px);
    line-height: 1.2;
  }
  .debitHeadMain.-mastercard-platinum .debitHeadMainHdr_main,
  .debitHeadMain.-mastercard-pointplus .debitHeadMainHdr_main {
    line-height: 0;
  }
  .debitHeadMain.-mastercard-platinum .debitHeadMainHdr_main img {
    width: 266px;
  }
}
@media screen and (max-width: 559px) {
  .debitHeadMainHdr_main {
    font-size: 28px;
  }
  .debitHeadMain.-mastercard .debitHeadMainHdr_main {
    display: inline-block;
  }
  .debitHeadMain.-mastercard-pointplus .debitHeadMainHdr_main img {
    width: 140px;
  }
  .debitHeadMain.-mastercard-platinum .debitHeadMainHdr_main img {
    width: 192px;
  }
  .debitHeadMainHdr_sub {
    margin-top: 0;
    font-size: 12px;
  }
  .debitHeadMain.-mastercard .debitHeadMainHdr_sub {
    display: inline-block;
  }
  .debitHeadMainHdr_sub2 {
    margin-top: 16px;
    font-size: 14px;
  }
  .debitHeadMainHdr_sub2 em {
    font-size: 16px;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitHeadMainHdr_main {
    font-size: 34px;
  }
  .debitHeadMain.-mastercard-pointplus .debitHeadMainHdr_main img {
    width: 161px;
  }
  .debitHeadMainHdr_sub {
    display: block;
    margin-top: 16px;
    font-size: 16px;
    line-height: 1.5;
  }
  .debitHeadMainHdr_sub2 {
    margin-top: 16px;
    font-size: 12px;
  }
  .debitHeadMainHdr_sub2 em {
    font-size: 16px;
  }
}

/* debitRibbon */
.debitRibbon {
  margin-top: min(3.9vw, 50px);
}
.debitRibbon_cap {
  display: inline-flex;
  justify-content: center;
  align-items: center;

  padding: 0 8px;
  border-radius: 3px;
  height: 29px;
  background: #F9F9F9;
  color: rgba(0, 0, 0, 0.6);
  font-size: 14px;
  font-weight: 300;
}
@media screen and (min-width: 1501px) {
  .debitRibbon {
    margin-top: clamp(50px, 2.77vw, 55px);
  }
}
@media screen and (max-width: 559px) {
  .debitRibbon {
    margin-top: 20px;
    margin-top: 5.55vw;
  }
  .debitRibbon_cap {
    padding: 0 6px;
    height: 22px;
    font-size: 12px;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitRibbon {
    margin-top: 28px;
    margin-top: 4.37vw;
  }
}

/* debitSpec */
.debitSpec {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px 0;
}
.debitHeadMain.-mastercard-pointplus .debitSpec {
  grid-template-columns: repeat(2, 1fr);
}
* + .debitSpec {
  margin-top: 16px;
}
.debitSpec_item {
  position: relative;
  padding: 48px 0 10px 0;
}
.debitSpec_item::before {
  content: '';
  position: absolute;
  top: 10px;
  left: 50%;
  display: block;
  margin-left: -15px;
  width: 30px;
  height: 31px;
}
.debitSpec_item.-point::before {
  margin-left: -15.5px;
  width: 31px;
  height: 30px;
  background: url(/contents/cdn-img/lineup/debitcard/icn_detail_spec_point_01.png) no-repeat 0 0;
  background-size: 31px 30px;
}
.debitSpec_item.-payment::before {
  background: url(/contents/cdn-img/lineup/debitcard/icn_detail_spec_payment_01.svg) no-repeat 0 0;
  background-size: 30px 31px;
}
.debitSpec_item.-payment2::before {
  height: 30px;
  background: url(/contents/cdn-img/lineup/debitcard/icn_detail_spec_payment_02.svg) no-repeat 0 0;
  background-size: 30px 30px;
}
.debitSpec_item.-card::before {
  background: url(/contents/cdn-img/lineup/debitcard/icn_detail_spec_card_01.svg) no-repeat 0 0;
  background-size: 30px 31px;
}
.debitSpec_item.-card2::before {
  background: url(/contents/cdn-img/lineup/debitcard/icn_detail_spec_card_02.svg) no-repeat 0 0;
  background-size: 30px 31px;
}
.debitSpec_item.-card3::before {
  background: url(/contents/cdn-img/lineup/debitcard/icn_detail_spec_card_03.svg) no-repeat 0 0;
  background-size: 30px 31px;
}
.debitSpec_item.-hoken::before {
  background: url(/contents/cdn-img/lineup/debitcard/icn_detail_spec_hoken_01.svg) no-repeat 0 0;
  background-size: 30px 31px;
}
.debitSpec_item.-hoken2::before {
  background: url(/contents/cdn-img/lineup/debitcard/icn_detail_spec_hoken_02.svg) no-repeat 0 0;
  background-size: 30px 31px;
}
.debitSpec_item.-travel::before {
  background: url(/contents/cdn-img/lineup/debitcard/icn_detail_spec_travel_01.svg) no-repeat 0 0;
  background-size: 30px 31px;
}
.debitSpec_item.-program::before {
  background: url(/contents/cdn-img/lineup/debitcard/icn_detail_spec_program_01.svg) no-repeat 0 0;
  background-size: 30px 31px;
}
.debitSpec_item + .debitSpec_item:not(:nth-of-type(3n+1))::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  margin-top: -24px;
  width: 1px;
  height: 48px;
  background: #DDD;
}
.debitHeadMain.-mastercard-pointplus .debitSpec_item + .debitSpec_item:not(:nth-of-type(3n+1))::after {
  display: none;
}
.debitHeadMain.-mastercard-pointplus .debitSpec_item + .debitSpec_item:not(:nth-of-type(2n+1))::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  margin-top: -24px;
  width: 1px;
  height: 48px;
  background: #DDD;
}
.debitSpec_text {
  color: #1B1B1B;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.5;
  text-align: center;
}
.debitSpec_text sup {
  font-size: 12px;
  font-weight: 400;
  vertical-align: super;
}
@media screen and (min-width: 1501px) {
  .debitSpec_text br {
    display: none;
  }
  .debitSpec_text br.debitSpec_brPc {
    display: inline;
  }
}
@media screen and (max-width: 559px) {
  .debitSpec {
    gap: 0 0;
  }
  * + .debitSpec {
    margin-top: 8px;
  }
  .debitSpec_item {
    padding-top: 44px;
  }
  .debitSpec_text {
    font-size: 12px;
  }
  .debitSpec_text sup {
    font-size: 10px;
  }
}

/* debitMainInfo */
.debitMainInfo {
  color: #1B1B1B;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.5;
}
* + .debitMainInfo {
  margin-top: 48px;
}
.debitMainInfo_item {
  position: relative;
  padding-left: 21px;
}
.debitMainInfo_item::before {
  content: '';
  position: absolute;
  top: 4px;
  left: 0;
  display: block;
  width: 13px;
  height: 14px;
  background: url(/contents/cdn-img/lineup/debitcard/icon_circle_check_01.svg) no-repeat 0 0;
  background-size: 13px 14px;
}
.debitMainInfo_item + .debitMainInfo_item {
  margin-top: 9px;
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitHeadMain.-mastercard-pointplus .debitSpec {
    grid-template-columns: repeat(4, 1fr);
  }
  .debitHeadMain.-mastercard-pointplus .debitSpec_item + .debitSpec_item:not(:nth-of-type(3n+1))::after {
    display: none;
  }
  .debitHeadMain.-mastercard-pointplus .debitSpec_item + .debitSpec_item:not(:nth-of-type(4n+1))::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    margin-top: -24px;
    width: 1px;
    height: 48px;
    background: #DDD;
  }
}
@media screen and (max-width: 559px) {
  .debitMainInfo {
    font-size: 14px;
  }
  * + .debitMainInfo {
    margin-top: 10px;
  }
  .debitMainInfo_item {
    padding-left: 20px;
  }
  .debitMainInfo_item::before {
    content: '';
    position: absolute;
    top: 2px;
    width: 12px;
    height: 13px;
    background: url(/contents/cdn-img/lineup/debitcard/icon_circle_check_01_sp.svg) no-repeat 0 0;
    background-size: 12px 13px;
  }
  .debitHeadMain * + .debitMainInfo {
    margin-top: 16px;
  }
  .debitHeadMain .debitMainInfo_item + .debitMainInfo_item {
    margin-top: 5px;
  }
}

/* debitLowerAd */
.debitLowerAd {
  margin-top: 10px;
  padding: min(3.9vw, 50px) 0;
}
@media screen and (min-width: 1281px) {
  .debitLowerAd {
    margin-top: 0;
    padding: 80px 0;
    padding: 4.04vw 0;
  }
}
@media screen and (max-width: 819px) {
  .debitLowerAd {
    margin-top: 0;
    padding: 24px 0;
  }
}

/* debitDetail */
.debitDetail {
  padding: 160px min(7.18vw, 92px);
}
.debitDetail.-mastercard-pointplus-section1 {
  padding-top: 0;
  padding-bottom: 160px;
}
.debitDetail.-cardFace {
  padding-block: 160px;
}
.debitDetail.-gray {
  background: #F9F9F9;
}
.debitDetail_vessel {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-direction: row;

  margin-inline: auto;
  width: min(100%, 856px);
}
.debitDetail_content {
  align-content: center;

  width: calc((100% - 6.54%) / 2);
}
.debitDetail.-mastercard-pointplus-section1 .debitDetail_content {
  padding-bottom: min(1.56vw, 20px);
}
.debitDetail.-reverse .debitDetail_content {
  order: 2;
}
.debitDetail_image {
  grid-area: image;
  align-content: center;
  width: calc((100% - 6.54%) / 2);
}
.debitDetail.-reverse .debitDetail_image {
  order: 1;
}
.debitDetail.-cardFace .debitDetail_image {
  text-align: center;
}
.debitDetail.-cardFace .debitDetail_image img {
  width: 51%;
  height: auto;
}
.debitDetail.-mastercard-pointplus-section1 .debitDetail_image {
  text-align: center;
}
.debitDetailImagePP1 {
  position: relative;
  display: inline-block;
}
.debitDetailImagePP1.-sp {
  display: none;
}
.debitDetail.-mastercard-pointplus-section1 .debitDetail_image img.debitDetailImagePP1_img1 {
  margin-left: min(1.875vw, 24px);
  width: min(70%, 256px);
}
.debitDetail.-mastercard-pointplus-section1 .debitDetail_image img.debitDetailImagePP1_img2 {
  position: absolute;
  top: min(8.9%, 55px);
  right: 0;
  width: min(30%, 110px);
} 
.debitDetail_main {
  grid-area: main;
}
.debitDetail_bottom {
  grid-area: bottom;
}
.debitDetail_lead {
  color: #2B2B2B;
  font-size: clamp(16px, 1.56vw, 20px);
  font-weight: 300;
  line-height: 1.5;
  text-align: center;
}
.debitDetail_hdr {
  color: #2B2B2B;
  font-size: clamp(26px, 2.5vw, 32px);
  font-weight: 300;
  line-height: 1.8;
  text-align: center;
  text-indent: 0.03em;
  letter-spacing: 0.03em;
}
.debitDetail.-mastercard-pointplus-section1 .debitDetail_hdr {
  font-size: clamp(22px, 2.18vw, 28px);
  line-height: 1.71;
}
* + .debitDetail_hdr {
  margin-top: 18px;
}
.debitDetail_hdrBrSp {
  display: none;
}
.debitDetail_txt {
  padding-top: 24px;
  color: #000;
  font-size: clamp(16px, 1.25vw, 16px);
  font-weight: 300;
  line-height: 1.7;
  letter-spacing: 0.01em;
}
.debitDetail_txt sup {
  font-size: 14px;
  font-weight: 400;
  vertical-align: super;
}
.debitDetail .debitNotes {
  margin-top: 18px;
}
.debitDetail .debitNotes a {
  text-decoration: underline;
}
@media screen and (min-width: 1281px) {
  .debitDetail_vessel {
    width: min(100%, 955px);
  }
  .debitDetail_content {
    width: 52.25%;
  }
  .debitDetail_image {
    width: 41.88%;
  }
  .debitDetail_hdrBrPcSp {
    display: none;
  }
}
@media screen and (max-width: 819px) {
  .debitDetail.-mastercard-pointplus-section1,
  .debitDetail.-cardFace,
  .debitDetail {
    padding: 0;
  }
  .debitDetail.-gray {
    background: #fff;
  }
  .debitDetail_vessel {
    width: 100%;

    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    grid-template-areas:
    "main"
    "image"
    "bottom";
    gap: 0;
  }
  .debitDetail_content {
    display: contents;
  }
  .debitDetail.-mastercard-pointplus-section1 .debitDetail_content {
    padding-bottom: 0;
  }
  .debitDetail_image {
    margin-top: 16px;
    width: 100%;
    text-align: center;
  }
  .debitDetail_image.-howto {
    padding-inline: 4.44vw;
  }
  .debitDetail_image img {
    width: min(100%, 360px);
  }
  .debitDetail.-cardFace .debitDetail_image img {
    width: min(42.5%, 153px);
  }
  .debitDetailImagePP1.-pc {
    display: none;
  }
  .debitDetailImagePP1.-sp {
    display: block;
  }
  .debitDetail.-mastercard-pointplus-section1 .debitDetail_image img.debitDetailImagePP1_img1 {
    margin-left: auto;
    width: min(100%, 400px);
  }
  .debitDetail_bottom.-spGray {
    background: #F9F9F9;
  }
  .debitDetail_bottom .debitDetail_txt {
    padding-top: 0;
  }
  .debitDetail.-mastercard-pointplus-section1 .debitDetail_hdr {
    font-size: min(7.77vw, 28px);
  }
  .debitDetail_hdrBrSp {
    display: inline;
  }
}
@media screen and (max-width: 559px) {
  .debitDetail_main {
    padding: 48px 16px 16px 16px;
    padding: 13.33vw 4.44vw 4.44vw 4.44vw;
  }
  .debitDetail_image {
    margin-top: 16px;
    margin-top: 4.44vw;
  }
  .debitDetail.-cardFace .debitDetail_image {
    padding-bottom: 24px;
    padding-bottom: 6.66vw;
  }
  .debitDetail_image.-howto {
    margin-top: 8px;
    margin-top: 2.22vw;
  }
  .debitDetail_bottom {
    padding: 24px 16px 40px 16px;
    padding: 6.66vw 4.44vw 11.11vw 4.44vw;
  }
  .debitDetail_bottom.-spGray {
    padding: 16px 16px 40px 16px;
    padding: 4.44vw 4.44vw 11.11vw 4.44vw;
  }
  .debitDetail.-withAccordion .debitDetail_bottom {
    padding-bottom: 24px;
    padding-bottom: 6.66vw;
  }
  .debitDetail.-mastercard-platinam-section1 .debitDetail_bottom,
  .debitDetail.-mastercard-pointplus-section1 .debitDetail_bottom {
    padding-bottom: 4.44vw;
  }
  .debitDetail_lead {
    font-size: 16px;
  }
  .debitDetail_hdr {
    font-size: 28px;
    line-height: 1.71;
  }
  * + .debitDetail_hdr {
    margin-top: 12px;
  }
  .debitDetail_hdrBrPc {
    display: none;
  }
  .debitDetail_txt {
    padding-top: 40px;
    font-weight: 300;
    line-height: 1.9;
  }
  .debitDetail .debitNotes {
    margin-top: 16px;
    margin-top: 4.44vw;
  }
  .debitDetail_bottom > .aboutAreaLinkList:first-child {
    margin-top: 0;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitDetail_main {
    padding: 48px 48px 0 48px;
    padding: 7.5vw 7.5vw 0 7.5vw;
  }
  .debitDetail_image {
    margin-top: 32px;
    margin-top: 3.75vw;
  }
  .debitDetail.-cardFace .debitDetail_image {
    padding-bottom: 24px;
    padding-bottom: 4vw;
  }
  .debitDetail_bottom {
    padding: 16px 48px 40px 48px;
    padding: 2.5vw 7.5vw 6.25vw 7.5vw;
  }
  .debitDetail.-withAccordion .debitDetail_bottom {
    padding-bottom: 24px;
    padding-bottom: 3.75vw;
  }
  .debitDetail.-mastercard-platinam-section1 .debitDetail_bottom,
  .debitDetail.-mastercard-pointplus-section1 .debitDetail_bottom {
    padding-bottom: 2.5vw;
  }
  .debitDetail_lead {
    font-size: 20px;
  }
  .debitDetail_hdr {
    font-size: 32px;
  }
  * + .debitDetail_hdr {
    margin-top: 16px;
  }
  .debitDetail_hdrBrPcSp {
    display: none;
  }
  .debitDetail_txt {
    padding-top: 24px;
    color: #000;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.7;
    letter-spacing: 0.01em;
  }
  .debitDetail .aboutAreaLinkList_item {
    font-size: 16px;
  }
  .debitDetail .aboutAreaLinkList_item::before {
    top: 2px;
  }
  .debitDetail .debitNotes {
    margin-top: 18px;
  }
  .debitDetail_bottom > .aboutAreaLinkList:first-child {
    margin-top: 8px;
    margin-top: 1.25vw;
  }
}

/* debitDetailBottom */
.debitDetailBottom {
  position: relative;
  margin-inline: auto;
  padding-top: 48px;
  width: min(100%, 960px);
  background: #fff;
  z-index: 1;
}
.debitDetail.-gray .debitDetailBottom {
  background: #F9F9F9;
}
.debitDetail.-mastercard-pointplus-section1 .debitDetailBottom {
  margin-top: max(-8.75vw, -112px);
  padding-top: 0;
}
@media screen and (max-width: 819px) {
  .debitDetailBottom {
    padding-top: 0;
    background: #F9F9F9;
  }
  .debitDetail.-mastercard-pointplus-section1 .debitDetailBottom {
    margin-top: 0;
  }
}
@media screen and (max-width: 559px) {
  .debitDetailBottom {
    padding: 0 4.44vw 11.11vw 4.44vw;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitDetailBottom {
    padding: 0 7.5vw 6.25vw 7.5vw;
  }
}

/* debitDetailTable */
.debitDetailTable {
  position: relative;
}
.debitDetailTable em {
  font-weight: 600;
}
.debitDetailTable table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border-top: 1px solid #E9E9E9;
  border-left: 1px solid #E9E9E9;
  table-layout: fixed;
}
.debitDetailTable td,
.debitDetailTable th {
  padding: 26px 10px;
  border-bottom: 1px solid #E9E9E9;
  border-right: 1px solid #E9E9E9;
  color: #000;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.5;
  text-align: center;
  vertical-align: middle;
}
.debitDetailTable thead tr th {
  border-right: 1px solid #fff;
  background: #E9E9E9;
}
.debitDetailTable thead tr th:last-child {
  border-right: 1px solid #E9E9E9;
}
.debitDetailTable th br {
  display: none;
}
.debitDetailTable tbody tr th {
  background: #F5F5F5;
}
.debitDetailTable tbody tr.debitDetailTable_total th {
  background: #E6F1FE;
}
.debitDetailTable tbody tr.debitDetailTable_total td {
  background: #F3F8FF;
}
@media screen and (max-width: 819px) {
  .debitDetailTable th br {
    display: inline;
  }
}
@media screen and (max-width: 559px) {
  .debitDetailTable td,
  .debitDetailTable th {
    padding: 20px 5px;
    font-size: 12px;
  }
  .debitDetailTable tbody tr th {
    padding-block: 30px;
  }
  .debitDetailTable tbody tr td {
    font-size: 14px;
  }
}

/* debitDetailTableNotes */
.debitDetailTableNotes {
  margin-top: 8px;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.6;
  text-align: right;
}

/* debitDetailPoint */
.debitDetailPoint {
  padding: 30px min(6.5%, 26px) 26px min(6.5%, 26px);
  border: 1px solid #DDD;
  border-radius: 10px;
  background: #fff;
}
.debitDetailPoint_lead {
  color: #6E6E6E;
  font-size: 16px;
  font-size: clamp(14px, 1.25vw, 16px);
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.05em;
}
.debitDetailPoint_icon {
  position: relative;
  display: inline-block;
  padding-left: 20px;
}
.debitDetailPoint_icon::before {
  content: '';
  position: absolute;
  top: 2px;
  left: 0;
  display: block;
  width: 17px;
  height: 18px;
  background: url(/contents/cdn-img/lineup/debitcard/icon_triangle_01.svg) no-repeat 0 0;
  background-size: 17px 18px;
}
.debitDetailPoint_main {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-direction: row;

  margin-top: 18px;
}
.debitDetailPoint_block {
  display: flex;
  flex-direction: column;

  width: min(((100% - 24px) / 2), 162px);
  text-align: center;
}
.debitDetailPoint_block.-no1 img {
  width: 162px;
}
.debitDetailPoint_block.-no2 img {
  width: 137px;
}
.debitDetailPoint_or {
  padding-top: 47px;
  color: #0068DE;
  font-size: 20px;
  font-weight: 600;
  text-align: center;
}
.debitDetailPoint_image {
  margin-bottom: 10px;
}
.debitDetailPoint_text {
  margin-top: auto;
  color: #000;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.5;
  text-align: center;
  text-indent: 0.01em;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 819px) {
  .debitDetailPoint {
    padding: 17px 0;
    margin-inline: auto;
    width: min(100%, 328px);
  }
  .debitDetailPoint_icon::before {
    content: '';
    position: absolute;
    top: 1px;
    width: 14px;
    height: 16px;
    background: url(/contents/cdn-img/lineup/debitcard/icon_triangle_01.svg) no-repeat 0 0;
    background-size: 14px 16px;
  }
  .debitDetailPoint_main {
    margin: 4px auto 0 auto;
    width: min(100%, 280px);
  }
  .debitDetailPoint_block {
    width: min(((100% - 20px) / 2), 122px);
  }
  .debitDetailPoint_block.-no1 img {
    width: 122px;
  }
  .debitDetailPoint_block.-no2 img {
    width: 108px;
  }
  .debitDetailPoint_or {
    padding-top: 41px;
    font-size: 17px;
  }
  .debitDetailPoint_image {
    margin-bottom: 8px;
  }
  .debitDetailPoint_text {
    font-size: 11px;
    font-weight: 500;
  }
  .debitDetailPoint_text br {
    display: none;
  }
}

/* debitDetailAccordion */
.debitDetailAccordion {
  margin: min(4.37vw, 56px) auto 0 auto;
  width: min(100%, 840px);
}
.debitDetailAccordion_dl {
  border-bottom: 1px solid #E9E9E9;
}
.debitDetailAccordion_dt {
  position: relative;
  padding: 16px 40px 16px 16px;
  color: #1B1B1B;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.5;
  cursor: pointer;
}
.debitDetailAccordion_icon {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  margin-top: -14px;
  width: 28px;
  height: 28px;
  pointer-events: none;
}
.debitDetailAccordion_icon::after,
.debitDetailAccordion_icon::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 28px;
  height: 28px;
  background: url(/contents/cdn-img/lineup/debitcard/icn_plus_circle_01.svg) no-repeat 0 0;
  background-size: 28px 28px;
  
  transition: opacity 0.3s ease;
}
.debitDetailAccordion_dl.-is-opened .debitDetailAccordion_icon::before {
  opacity: 0;
}
.debitDetailAccordion_icon::after {
  content: '';
  background: url(/contents/cdn-img/lineup/debitcard/icn_minus_circle_01.svg) no-repeat 0 0;
  background-size: 28px 28px;

  opacity: 0;
}
.debitDetailAccordion_dl.-is-opened .debitDetailAccordion_icon::after {
  opacity: 1;
}
.debitDetailAccordion_dd {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.2s ease-out;
}
.debitDetailAccordion_dl.-is-opened .debitDetailAccordion_dd {
  grid-template-rows: 1fr;
}
.debitDetailAccordion_ddVessel {
  overflow: hidden;
}
.debitDetailAccordion_ddInner {
  padding: 0 16px 16px 16px;
}
.debitDetailAccordion_ddTxt {
  color: #1B1B1B;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.5;
}
.debitDetailAccordion_ddTxt + .debitDetailAccordion_ddTxt {
  margin-top: 1.5em;
}
@media screen and (min-width: 1281px) {
  .debitDetailAccordion {
    width: min(100%, 955px);
  }
}
@media screen and (max-width: 819px) {
  .debitDetailAccordion {
    margin-top: 0;

    background: #F9F9F9;
  }
  .debitDetailAccordion .debitDetailAccordion_dl:first-child {
    border-top: 1px solid #E9E9E9;
  }
  .debitDetailAccordion_dt {
    padding: 19px 40px 19px 0;
    font-size: 14px;
  }
  .debitDetailAccordion_ddInner {
    padding: 0 0 16px 0;
  }
}
@media screen and (max-width: 559px) {
  .debitDetailAccordion {
    padding: 0 4.44vw 11.11vw 4.44vw;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitDetailAccordion {
    padding: 0 7.5vw 6.25vw 7.5vw;
  }
}

/* debitFeature */
.debitFeature {
  background: var(--contents-bg-light-blue);
}
.debitFeature_vessel {
  margin-inline: auto;
  padding: 160px min(3.12vw, 40px) 160px min(3.12vw, 40px);
  width: min(100%, 1040px);
}
.debitFeature_h2 {
  color: #2B2B2B;
  font-size: 32px;
  font-weight: 300;
  line-height: 1.8;
  text-align: center;
  text-indent: 0.03em;
  letter-spacing: 0.03em;
}
.debitFeature_h2 br {
  display: none;
}
.debitFeature_body {
  margin-top: 48px;
}
.debitFeature_items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.debitFeature_items.-clm2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  /*
  grid-template-columns: calc((100% - 32px) / 3) calc((100% - 32px) / 3);
  gap: 16px;
  justify-content: center;
  */
}
.debitFeature_item {
  padding: 38px 24px 32px 24px;
  border-radius: 20px;
  background: #fff;
}
.debitFeature_lead {
  color: #2B2B2B;
  font-size: 20px;
  font-weight: 300;
  line-height: 1.5;
  text-align: center;
}
.debitFeature_image {
  margin-top: 20px;
  text-align: center;
}
.debitFeature_image img {
  width: min(100%, 200px);
  height: auto;
}
.debitFeature_main {
  margin-top: 16px;
}
.debitFeature_txt {
  color: #000;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.7;
  letter-spacing: 0.01em;
}
.debitFeature .aboutAreaLinkList {
  margin-top: 16px;
}
.debitFeature .debitNotes {
  margin-top: 16px;
}
@media screen and (min-width: 820px) and (max-width: 1100px) {
  .debitFeature_items.-clm2,
  .debitFeature_items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
}
@media screen and (max-width: 819px) {
  .debitFeature_items.-clm2,
  .debitFeature_items {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 0;
  }
  .debitFeature_item {
    border-radius: 0;
    background: transparent;
  }
  .debitFeature_item + .debitFeature_item {
    border-top: 2px solid #fff;
  }
  .debitFeature_lead br {
    display: none;
  }
  .debitFeature_image {
    margin-top: 16px;
  }
  .debitFeature_lead {
    font-size: 20px;
  }
  .debitFeature_txt {
    font-size: 14px;
    line-height: 1.9;
  }
  .debitFeature .aboutAreaLinkList {
    margin-top: 24px;
  }
  .debitFeature .debitFeature_txt + .aboutAreaLinkList {
    margin-top: 16px;
  }
}
@media screen and (max-width: 559px) {
  .debitFeature_vessel {
    padding: 11.11vw 0 0 0;
  }
  .debitFeature_h2 {
    padding-inline: 4.44vw;
    font-size: 28px;
    line-height: 1.71;
  }
  .debitFeature_h2 br {
    display: inline;
  }
  .debitFeature_body {
    margin-top: 4.44vw;
    padding: 0;
  }
  .debitFeature_item {
    padding: 30px 16px 40px 16px;
    padding: 8.33vw 4.44vw 11.11vw 4.44vw;
  }
  .debitFeature_lead {
    font-size: 18px;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitFeature_vessel {
    padding: 64px 0 16px 0;
    padding: 10vw 0 2.5vw 0;
  }
  .debitFeature_body {
    margin-top: 2.5vw;
    padding: 0 7.5vw;
  }
  .debitFeature_item {
    padding: 48px 16px;
    padding: 7.5vw 2.5vw;
  }
  .debitFeature .aboutAreaLinkList_item {
    font-size: 16px;
  }
  .debitFeature .aboutAreaLinkList_item::before {
    top: 2px;
  }
}

/* debitFeaturePayment */
.debitFeaturePayment {
  margin-top: 16px;
  padding: 15px;
  border: 1px solid #DDD;
  background: #fff;
  border-radius: 10px;
}
.debitFeaturePayment_lead {
  margin-inline: -8px;
  color: #6E6E6E;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.71;
  letter-spacing: 0.08em;
  text-align: center;
}
.debitFeaturePayment_leadCap {
  display: inline-block;
  position: relative;
  padding: 0 0 0 18px;
}
.debitFeaturePayment_leadCap::before {
  content: '';
  position: absolute;
  top: 1px;
  left: 0;
  display: block;
  width: 17px;
  height: 18px;
  background: url(/contents/cdn-img/lineup/debitcard/icon_triangle_01.svg) no-repeat 0 0;
  background-size: 17px 18px;
}
.debitFeaturePayment_items {
  display: flex;
  justify-content: space-between;
  align-items: center;

  margin: 8px auto 0 auto;
  width: min(100%, 230px);
} 
.debitFeaturePayment_item.-google img {
  width: 55px;
}
.debitFeaturePayment_item.-apple img {
  width: 46px;
}
.debitFeaturePayment_item.-mastercard img {
  width: 41px;
}
.debitFeaturePayment_item.-id img {
  width: 44px;
}
@media screen and (max-width: 819px) {
  .debitFeaturePayment {
    margin-inline: auto;
    width: min(100%, 328px);
  }
  .debitFeaturePayment_main.-pc {
    display: none;
  }
  .debitFeaturePayment_items {
    margin-inline: auto;
    width: min(100%, 173px);
  }
}

/* debitLineup */
.debitLineup_vessel {
  margin-inline: auto;
  padding: 120px min(7.81vw, 100px) 120px min(7.81vw, 100px);
  width: min(100%, 1040px);
}
.debitLineup_h2 {
  color: #2B2B2B;
  font-size: 32px;
  font-weight: 300;
  line-height: 1.8;
  text-align: center;
  text-indent: 0.03em;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 559px) {
  .debitLineup_vessel {
    padding: 48px 24px;
    padding: 13.33vw 6.66vw;
  }
  .debitLineup_h2 {
    font-size: 28px;
    line-height: 1.71;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitLineup_vessel {
    padding: 60px 16px 48px 16px;
    padding: 9.37vw 2.5vw 7.5vw 2.5vw;
  }
}

/* debitLineupNav */
.debitLineupNav {
  display: flex;
  justify-content: center;

  margin-top: 48px;
}
.debitLineupNav_item {
  width: min(100%, 314px);
}
.debitLineupNav_item + .debitLineupNav_item {
  margin-left: 48px;
}
.debitLineupNav_a {
  display: block;
  transition: opacity 0.3s ease;
}
.debitLineupNav_a:hover {
  opacity: 0.8;
}
@media screen and (max-width: 819px) {
  .debitLineupNav {
    display: block;

    width: min(100%, 360px);
  }
  .debitLineupNav_item {
    width: 100%;
  }
}
@media screen and (max-width: 559px) {
  .debitLineupNav {
    margin: 8.88vw auto 0 auto;
  }
  .debitLineupNav_item + .debitLineupNav_item {
    margin: 4.44vw 0 0 0;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitLineupNav {
    margin: 26px auto 0 auto;
    margin: 4.06vw auto 0 auto;
  }
  .debitLineupNav_item + .debitLineupNav_item {
    margin: 5vw 0 0 0;
  }
}

/* debitLineupDetail */
.debitLineupDetail {
  margin-inline: auto;
  padding: min(2.5vw, 32px) min(7.81vw, 100px);
  width: min(100%, 1040px);
}
.debitLineupDetail_dl {
  border-top: 1px solid #E9E9E9;
  border-bottom: 1px solid #E9E9E9;
}
.debitLineupDetail_dt {
  position: relative;
  padding: 16px 40px 16px 16px;
  color: #1B1B1B;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.5;
  cursor: pointer;
}
.debitLineupDetail_icon {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  margin-top: -14px;
  width: 28px;
  height: 28px;
  pointer-events: none;
}
.debitLineupDetail_icon::after,
.debitLineupDetail_icon::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 28px;
  height: 28px;
  background: url(/contents/cdn-img/lineup/debitcard/icn_plus_circle_01.svg) no-repeat 0 0;
  background-size: 28px 28px;
  
  transition: opacity 0.3s ease;
}
.debitLineupDetail_dl.-is-opened .debitLineupDetail_icon::before {
  opacity: 0;
}
.debitLineupDetail_icon::after {
  content: '';
  background: url(/contents/cdn-img/lineup/debitcard/icn_minus_circle_01.svg) no-repeat 0 0;
  background-size: 28px 28px;

  opacity: 0;
}
.debitLineupDetail_dl.-is-opened .debitLineupDetail_icon::after {
  opacity: 1;
}
.debitLineupDetail_dd {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.2s ease-out;
}
.debitLineupDetail_dl.-is-opened .debitLineupDetail_dd {
  grid-template-rows: 1fr;
}
.debitLineupDetail_ddVessel {
  overflow: hidden;
}
.debitLineupDetail_ddInner {
  padding: 10px 20px 34px 20px;
}
.debitLineupDetail_table {
  width: 100%;
  height: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-top: 1px solid #E3E5E9;
  border-left: 1px solid #E3E5E9;
}
.debitLineupDetail_table tr td,
.debitLineupDetail_table tr th {
  border-bottom: 1px solid #E3E5E9;
  border-right: 1px solid #E3E5E9;
  font-weight: 300;
}
.debitLineupDetail_table thead tr th {
  padding: 16px;
  background: #E3E5E9;
  border-bottom: none;
  vertical-align: top;
  text-align: center;
  height: 100%;
}
.debitLineupDetail_table thead tr th:first-child {
  vertical-align: middle;
}
.debitLineupDetail_table thead tr th:not(:last-child) {
  border-right: 1px solid #fff;
}
.debitLineupDetail_thVessel {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
  height: 100%;
}
.debitLineupDetail_image {
  text-align: center;
}
.debitLineupDetail_image img {
  width: auto;
  height: 60px;
}
.debitLineupDetail_title {
  align-self: center;

  margin-top: 8px;
  color: #000;
  font-size: 14px;
  line-height: 1.5;
}
br.debitLineupDetail_sp {
  display: none;
}
.debitLineupDetail_small {
  font-size: 12px;
}
.debitLineupDetail_table tbody tr td,
.debitLineupDetail_table tbody tr th {
  padding: 12px 15px;
  font-size: 14px;
  line-height: 1.5;
  text-align: center;
}
.debitLineupDetail_table tbody tr th {
  background: #F1F2F4;
  height: 87px;
}
.debitLineupDetail_table tbody tr th sup {
  font-size: 12px;
  vertical-align: top;
}
.debitLineupDetail .debitNotes {
  margin-top: 16px;
}
@media screen and (max-width: 819px) {
  .debitLineupDetail_dt {
    padding: 19px 40px 19px 8px;
    font-size: 14px;
  }
  .debitLineupDetail_ddInner {
    padding: 0 0 24px 0;
  }
  .debitLineupDetail_table tbody tr th {
    height: auto;
  }
  br.debitLineupDetail_sp {
    display: inline;
  }
}
@media screen and (max-width: 559px) {
  .debitLineupDetail {
    padding: 0 4.44vw;
  }
  .debitLineupDetail_table thead tr th {
    padding: 8px 2px;
    font-size: 10.5px;
  }
  .debitLineupDetail_image img {
    height: 44px;
  }
  .debitLineupDetail_title {
    align-self: start;
    font-size: 10.5px;
  }
  .debitLineupDetail_small {
    font-size: 9px;
  }
  .debitLineupDetail_table tbody tr td,
  .debitLineupDetail_table tbody tr th {
    padding: 12px 4px;
    font-size: 10.5px;
  }
  .debitLineupDetail_table tbody tr th sup {
    font-size: 9px;
  }
}
@media screen and (min-width: 560px) and (max-width: 819px) {
  .debitLineupDetail {
    padding: 0 10vw;
  }
  .debitLineupDetail_table thead tr th {
    padding: 16px 2px;
    font-size: clamp(12px, 0.21vw, 14px);
  }
  .debitLineupDetail_title {
    font-size: clamp(12px, 0.21vw, 14px);
  }
  .debitLineupDetail_small {
    font-size: clamp(10px, 0.18vw, 12px);
  }
  .debitLineupDetail_table tbody tr td,
  .debitLineupDetail_table tbody tr th {
    font-size: clamp(12px, 0.21vw, 14px);
  }
  .debitLineupDetail_table tbody tr th sup {
    font-size: 10px;
  }
}

/* debitVisaClm */
.debitVisaClm {
  padding: 0 18vw;
  background: #fff;
}
.debitVisaClm_headMain {
  font-size: 32px;
  font-weight: 300;
  line-height: 1.4;
  text-align: center;
}
.debitVisaClm_headMainBr {
  display: none;
}
.debitVisaClm_lead {
  margin-top: 42px;
  margin-top: 3.23vw;
  color: #000;
  font-size: 16px;
  line-height: 1.72;
}
.debitVisaClm .debitNotes {
  margin-top: 38px;
  margin-top: 2.92vw;
}
.debitVisaClm .debitNotes_items + .debitNotes_items {
  margin-top: 15px;
}
.debitVisaClm .debitNotes_text,
.debitVisaClm .debitNotes_no {
  color: #727f8d;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0.01em;
}
.debitVisaClm .debitNotes_no {
  padding-right: 8px;
}
@media screen and (min-width: 560px) and (max-width: 939px) {
  .debitVisaClm {
    padding: 0 5vw;
  }
  .debitVisaClm_lead {
    margin-top: 4.47vw;
  }
  .debitVisaClm .debitNotes {
    margin-top: 4.04vw;
  }
}
@media screen and (max-width: 559px) {
  .debitVisaClm {
    padding: 5vw 8vw 0 8vw;
  }
  .debitVisaClm_headMain {
    margin-inline: -1em;
    font-size: 28px;
    line-height: 1.71;
    text-indent: 0.03em;
    letter-spacing: 0.03em;
  }
  .debitVisaClm_headMainBr {
    display: inline;
  }
  .debitVisaClm_lead {
    margin-top: 27px;
    margin-top: 7.2vw;
    font-size: 14px;
  }
  .debitVisaClm .debitNotes {
    margin-top: 26px;
    margin-top: 6.93vw;
  }
  .debitVisaClm .debitNotes_items + .debitNotes_items {
    margin-top: 8px;
  }
}