/**
 * Component - Button
 * ボタン
 */

/* -
  primary
  黒ボタン
  黒枠白ボタン（outline）
 ---------------------- */
.c-buttonPrimary {
  color: var(--color-text-light);
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  background-color: var(--color-bg-black);
  background-image: linear-gradient(
    var(--color-accent-yellow),
    var(--color-accent-yellow)
  );
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 0% 100%;
  transition: background-size 0.35s ease, color 0.35s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-width: 320px;
  min-height: 72px;
  border: 2px solid var(--color-border-black);
  border-radius: var(--radius-sm);
  padding-block: 1rem;
  padding-inline: 2rem;
  @media screen and (max-width: 767px) {
    font-size: 1rem;
    width: 100%;
    max-width: 380px;
    padding-block: 12px;
    min-height: 62px;
  }

  &::before {
    content: "";
    display: inline-block;
    width: 1px;
    height: 30px;
    background-color: var(--color-bg-white);
    margin-inline: 1.5rem;
    order: 1;
    transition: background-color 0.35s ease;
  }

  &::after {
    content: "";
    width: 24px;
    height: 24px;
    display: inline-block;
    background-image: url("../../../images/icon_arrow_right_white.svg");
    background-size: contain;
    background-position: top center;
    order: 2;
  }

  &:hover {
    background-size: 100% 100%;
    color: var(--color-text-main);

    &::before {
      background-color: var(--color-text-main);
    }

    &::after {
      background-image: url("../../../images/icon_arrow_right_black.svg");
    }
  }

  &.--outline {
    color: var(--color-text-main);
    border: 2px solid var(--color-border-black);
    background-color: var(--color-bg-white);
    background-image: linear-gradient(
      var(--color-bg-black),
      var(--color-bg-black)
    );
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 0% 100%;
    transition: background-size 0.35s ease, color 0.35s ease;

    &::before {
      background-color: var(--color-bg-black);
    }

    &::after {
      background-image: url("../../../images/icon_arrow_right_black.svg");
    }

    &:hover {
      background-size: 100% 100%;
      color: var(--color-text-light);

      &::before {
        background-color: var(--color-bg-white);
      }

      &::after {
        background-image: url("../../../images/icon_arrow_right_white.svg");
      }
    }
  }
}

/* -
  secondary
  小さめ黒ボタン
 ---------------------- */
.c-buttonSecondary {
  color: var(--color-text-light);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  width: fit-content;
  min-height: 48px;
  padding: 12px;
  background-color: var(--color-bg-black);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-radius: var(--radius-sm);

  &::after {
    content: "";
    display: inline-block;
    width: 1rem;
    height: 1rem;
    background-image: url("../../../images/icon_arrow_right_white.svg");
    background-size: contain;
    background-position: center;
  }
}

.c-buttonSecondaryInner {
  display: flex;
  flex-direction: column;
}
