@charset "UTF-8";

/* ===============================================
  * Base *
=============================================== */

:root {
  --user-border-style: solid 1px #707070;
}

/* Utility */

.u-hidden {
  display: none !important;
}


/* マイページナビ */

@media (min-width: 768px) {
  .global-contents__inner.column-2 {
    grid-template-columns: 24.6rem 1fr;
    column-gap: 10%;
  }

  .global-contents__inner.column-2 .c-navigation {
    grid-column: 1 / 2;
  }

  .global-contents__inner.column-2 .usercontents {
    grid-column: 2 / 3;
  }
}

.c-navigation {
  max-width: none;
  margin: 0;
}

.c-navigation-list__heading {
  padding: 1.8rem 2.5rem;
  background-color: var(--color-black);

  font-size: 1.3rem;
  font-weight: var(--fw-medium);
  letter-spacing: normal;
  line-height: 1;
}

@media (min-width: 768px) {
  .c-navigation-list__heading {
    padding: 1.1rem 4.7rem;
    border-radius: 0;

    font-size: 1.6rem;
    font-weight: var(--fw-medium);
    text-align: center;
  }
}

.c-navigation-list__item {
  padding-inline: 4rem;

  font-weight: var(--fw-medium);
}

@media (min-width: 768px) {
  .c-navigation-list__item  {
    padding-inline: 0;
  }
}

.c-navigation-list__item.active {
  background-color: transparent;

  font-weight: var(--fw-bold);
}

@media (max-width: 767px) {
  .c-navigation-list__heading + .c-navigation-list__item {
    padding-top: 1rem;
  }
}

.c-navigation-list__item a {
  height: auto;
  padding: 2rem 0;
  border-color: var(--color-black) !important;

  font-family: var(--font-yumincho);
  font-size: 1.6rem;
  font-weight: inherit;
  letter-spacing: normal;
  line-height: 1;
}

@media (min-width: 768px) {
  .c-navigation-list__item a {
    padding: 2.6rem 2rem;
  }
}

.c-navigation-list__heading + .c-navigation-list__item a {
  border-top: none;
}

.c-navigation-list__item a::after {
  content: none;
}


/* フォーム */

@media (max-width: 767px) {
  .c-form__input--check-column {
    grid-template-columns: auto;
  }
}

.button__group {
  width: var(--inner-width);
}

@media (min-width: 768px) {
  .button__group {
    justify-content: center;
  }

  .button__group > li {
    min-width: 40%;
  }
}




/* ===============================================
  * Components - User *
=============================================== */

/* ユーザー系ページ - ページタイトル */

.c-user__page-heading {
  display: grid;
  grid-column: 1 / -1;

  margin-bottom: 1.9rem;
  padding: 1.8rem 2.5rem;
  background-color: var(--color-black);

  color: var(--color-white);
  font-size: 1.3rem;
  font-weight: var(--fw-bold);
  letter-spacing: normal;
  line-height: 1;
}

@media (min-width: 768px) {
  .c-user__page-heading {
    justify-content: center;

    margin-bottom: 2.75rem;
    padding-bottom: 4.25rem;
    background-color: transparent;
    border-bottom: solid 1px var(--color-gray-500);

    color: var(--color-text-default);
    font-size: 2.6rem;
    font-weight: var(--fw-medium);
  }
}

@media (max-width: 767px) {
  .global-contents:has(.c-user__page-heading) .c-breadcrumb {
    margin-bottom: 0;
  }
}


/* ご購入情報 */

@media (max-width: 767px) {
  .c-order-history {
    margin-top: 1.9rem;
  }
}

.c-order-history__text--heading {
  padding-bottom: 3.3rem;
  border-bottom: var(--user-border-style);

  font-family: var(--font-yumincho);
  font-size: 2rem;
  font-weight: var(--fw-medium);
  letter-spacing: .02em;
  line-height: 1;
  text-align: center;
}

@media (min-width: 768px) {
  .c-order-history__text--heading {
    padding-bottom: 3.9rem;

    font-size: 3rem;
  }
}

.c-order-history__detail-information-container {
  display: grid;

  padding-block: 3rem 4rem;
  padding-inline: 2rem;
  border-bottom: var(--user-border-style);
}

@media (min-width: 768px) {
  .c-order-history__detail-information-container {
    padding-block: 4.25rem 3.6rem;
    padding-inline: 2.5rem;
  }
}

.c-order-history__text--order-id {
  margin-bottom: 2rem;

  font-size: 1.5rem;
  letter-spacing: .01em;
  line-height: 1;
  text-align: center;
}

@media (min-width: 768px) {
  .c-order-history__text--order-id {
    margin-bottom: 3.8rem;

    font-size: 2.2rem;
  }
}

.c-order-history__text--product-name {
  display: grid;
  place-content: center;

  width: min(80%, 53.3rem);
  margin-bottom: 2.2rem;
  margin-inline: auto;
  padding: 1.6rem;
  border: var(--user-border-style);

  font-size: 1.75rem;
  letter-spacing: .02em;
  line-height: 1.5;
  text-align: center;
}

@media (min-width: 768px) {
  .c-order-history__text--product-name {
    margin-bottom: 2.8rem;
    padding: 1.8rem;

    font-size: 2.2rem;
  }
}

.c-order-history__next-shipping-date {
  display: grid;
  justify-items: center;
  row-gap: 1.8rem;

  margin-bottom: 2.2rem;

  text-align: center;
}

@media (min-width: 768px) {
  .c-order-history__next-shipping-date {
    row-gap: 2.8rem;

    margin-bottom: 2.7rem;
  }
}

.c-order-history__text--next-shipping-heading {
  font-size: 1.6rem;
  font-weight: var(--fw-bold);
  letter-spacing: .02em;
  line-height: 1;
}

@media (min-width: 768px) {
  .c-order-history__text--next-shipping-heading {
    font-size: 2.2rem;
  }
}

.c-order-history__text--next-shipping-date {
  display: grid;
  place-content: center;

  width: min(80%, 53.3rem);
  padding: 1.6rem;
  background-color: var(--color-primary);

  color: var(--color-white);
  font-size: 1.75rem;
  font-weight: var(--fw-bold);
  letter-spacing: .02em;
  line-height: 1;
}

@media (min-width: 768px) {
  .c-order-history__text--next-shipping-date {
    padding: 1.8rem;

    font-size: 2.2rem;
  }
}

.c-order-history__text--order-status {
  display: grid;
  place-content: center;

  width: min(44.1%, 30rem);
  padding: .7rem 1.8rem;
  margin-inline: auto;
  margin-bottom: 1.7rem;
  border: var(--user-border-style);

  font-size: 1.4rem;
  font-weight: var(--fw-bold);
  letter-spacing: .02em;
  line-height: 1;
}

@media (min-width: 768px) {
  .c-order-history__text--order-status {
    margin-bottom: 3.25rem;
    padding-block: 1.45rem;

    font-size: 1.6rem;
  }
}

.c-order-history__text--shipping-days {
  display: flex;
  align-items: center;
  justify-self: center;
  column-gap: .4rem;

  margin-bottom: 3rem;

  font-size: 1.5rem;
  letter-spacing: .01em;
}

@media (min-width: 768px) {
  .c-order-history__text--shipping-days {
    column-gap: 1.6rem;

    margin-bottom: 4rem;

    font-size: 1.6rem;
  }
}

.c-order-history__text--shipping-days > b {
  display: inline-block;

  padding: .7rem 1.2rem;
  border: var(--user-border-style);

  font-size: 1.5rem;
  font-weight: var(--fw-bold);
  letter-spacing: .02em;
  line-height: 1;
}

@media (min-width: 768px) {
  .c-order-history__text--shipping-days > b {
    padding: 1.3rem 1.7rem;

    font-size: 1.8rem;
  }
}

.c-order-history__name-label {
  display: grid;
  row-gap: 1.6rem;
  justify-items: center;
}

@media (min-width: 768px) {
  .c-order-history__name-label {
    row-gap: 2.2rem;
  }
}

.c-order-history__name-label-register {
  margin-bottom: 2rem;
}

@media (min-width: 768px) {
  .c-order-history__name-label-register {
    margin-bottom: 3.6rem;
  }
}

.c-order-history__text--name-label-heading {
  font-size: 1.3rem;
  font-weight: var(--fw-bold);
  letter-spacing: .02em;
  line-height: 1;
}

@media (min-width: 768px) {
  .c-order-history__text--name-label-heading {
    font-size: 1.8rem;
  }
}

.c-order-history__text--name-label-value {
  display: grid;
  place-content: center;

  width: min(44.1%, 30rem);
  margin-bottom: 2.8rem;
  padding: .75rem;
  border: var(--user-border-style);

  font-size: 1.5rem;
  letter-spacing: .02em;
  line-height: 1;
  word-break: break-all;
  text-align: center;
}

@media (min-width: 768px) {
  .c-order-history__text--name-label-value {
    margin-bottom: 3.5rem;
    padding: 1.6rem;

    font-size: 1.8rem;
  }
}

.c-order-history__shipping-address {
  display: grid;
  row-gap: 1.4rem;
  justify-self: center;

  width: min(80%, 53.3rem);
}

@media (min-width: 768px) {
  .c-order-history__shipping-address {
    row-gap: 1.6rem;
  }
}

.c-order-history__text--shipping-address-heading-primary {
  font-size: 1.3rem;
  text-align: center;
}

@media (min-width: 768px) {
  .c-order-history__text--shipping-address-heading-primary {
    font-size: 2rem;
  }
}

.c-order-history__text--shipping-address-heading {
  display: block;
  padding: .6rem 1rem;
  background-color: var(--color-bg-dark-gray);

  font-size: 1.2rem;
  letter-spacing: normal;
  line-height: 1;
}

@media (min-width: 768px) {
  .c-order-history__text--shipping-address-heading {
    padding: 1.2rem 1.6rem;

    font-size: 1.6rem;
  }
}

.c-order-history__text--shipping-address-data {
  padding-inline: 1rem;

  font-size: 1.3rem;
  letter-spacing: normal;
  line-height: calc(40 / 26);
}

@media (min-width: 768px) {
  .c-order-history__text--shipping-address-data {
    padding-inline: 1.5rem;

    font-size: 1.6rem;
  }
}

.c-order-history__navigation-button {
  display: grid;
  row-gap: 1.5rem;
  justify-items: center;

  margin-top: 2rem;
}

@media (min-width: 768px) {
  .c-order-history__navigation-button {
    row-gap: 3.8rem;

    margin-top: 3.6rem;
  }
}

.c-order-history__name-label-register .c-button,
.c-order-history__navigation-button .c-button {
  width: min(80%, 53.3rem);

  font-weight: var(--fw-bold);
}

.c-order-history__text--annotation {
  font-size: 1rem;
  letter-spacing: normal;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .c-order-history__text--annotation {
    font-size: 1.4rem;;
  }
}

.c-order-history__no-item {
  display: none;
}

.c-order-history:not(:has(.c-order-history__detail-information-container)) .c-order-history__no-item {
  display: grid;
  place-content: center;

  padding-block: 3.2rem;

  color: var(--color-text-sub);
  font-size: 1.2em;
  font-weight: var(--fw-bold);
  text-align: center;
}




/* ===============================================
  * Page - Mypage *
=============================================== */

@media (max-width: 767px) {
  .mypage .c-user__page-heading {
    margin-bottom: 0;
  }
}


/* 【マイページ】バナーエリア */

.p-mypage__page-top-banner {
  margin-bottom: 3.4rem;
}

@media (min-width: 768px) {
  .p-mypage__page-top-banner {
    margin-bottom: 6.35rem;
  }
}


/* 【マイページ】追加オプション, 【マイページ】蒸留所見学 */

.p-mypage__option-information {
  margin-block: 6.2rem;
}

@media (min-width: 768px) {
  .p-mypage__option-information {
    margin-block: 7.4rem;
  }
}

.p-mypage__option-text--heading {
  display: grid;
  place-content: center;

  padding-block: 1.5rem;
  background-color: var(--color-primary);

  color: var(--color-white);
  font-family: var(--font-yumincho);
  font-size: 2rem;
  font-weight: var(--fw-medium);
  letter-spacing: .06em;
  line-height: calc(60 / 40);
  text-align: center;
}

@media (min-width: 768px) {
  .p-mypage__option-text--heading {
    padding-block: 3rem;

    font-size: 3rem;
    line-height: 1;
  }
}

.p-mypage__option-detail-container {
  padding: 3rem 2.6rem 0;
}

@media (min-width: 768px) {
  .p-mypage__option-detail-container {
    padding: 4rem 2.4rem 0;
  }
}

.p-mypage__option-text--paragraph {
  font-size: 1.1rem;
  letter-spacing: normal;
  line-height: calc(40 / 22);
}

@media (min-width: 768px) {
  .p-mypage__option-text--paragraph {
    font-size: 1.6rem;
    line-height: calc(40 / 16);
  }
}

.p-mypage__option-annotation-list {
  display: grid;
}

.p-mypage__option-text--annotation {
  font-size: .9rem;
  letter-spacing: normal;
  line-height: calc(40 / 18);
}

@media (min-width: 768px) {
  .p-mypage__option-text--annotation {
    font-size: 1.4rem;
    line-height: calc(30 / 14);
  }
}

.p-mypage__option-button-container {
  display: grid;
  row-gap: 1.6rem;

  margin-top: 1.6rem;
}

@media (min-width: 768px) {
  .p-mypage__option-button-container {
    row-gap: 2.4rem;

    margin-top: 5.2rem;
  }
}

[class*="p-mypage__option-button--"] {
  width: 82.7%;
  margin-inline: auto;
  border-radius: .8rem;

  font-size: 1.4rem;
  letter-spacing: normal;
}

@media (min-width: 768px) {
  [class*="p-mypage__option-button--"] {
    width: 76.8%;
    border-radius: 1.6rem;

    font-size: 2.2rem;
  }
}

.p-mypage__option-button--primary {
  background-color: #FDB105;

  color: var(--color-white);
}

.p-mypage__option-button--secondary {
  background-color: var(--color-cta-secondary);

  color: var(--color-black);
  font-weight: var(--fw-medium);
}




/* ===============================================
  * Page - OrderHistoryList *
=============================================== */

.orderhistorylist .c-bg-area,
.orderhistorydetail .c-bg-area {
  padding: 0;
  border: none;
  background-color: unset;
}

.orderhistorylist .c-heading,
.orderhistorydetail .c-heading {
  text-align: right;
  font-size: 2.6rem;
  line-height: 1;
  letter-spacing: 0;
  padding-bottom: 3.6rem;
  margin-bottom: 4.3rem;
}

/* orderhistory dake */
.orderhistory-list {
  padding: 0;
  border: none;
  background-color: unset;
}

.orderhistory-list .form__section--item,
.orderhistorydetail .form__section--item {
  border-radius: unset;
  border: none;
  margin: 0;
  padding-inline: 4rem;
  padding-bottom: 6.5rem;
}

.orderhistory-list .form__section--item + .form__section--item {
  border-top: 1px solid #707070;
  padding-top: 6.4rem;
}

.orderhistory-list .purchase-info__id {
  display: flex;
  flex-direction: column;
  text-align: center;
}

.orderhistory-list .purchase-info__id dt,
.orderhistorydetail .form__section--heading {
  display: block;
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 1;
  letter-spacing: 0.2em;
  padding: 2.5rem 2.5rem 1.8rem;
  color: var(--color-white);
  background-color: var(--color-primary);
}

.orderhistory-list .purchase-info__id dd a {
  display: block;
  text-align: center;
  width: 100%;
  text-decoration: none;
  padding: 2.5rem 2.5rem 1.7rem;
  border-bottom: 1px solid #707070;
  font-weight: 600;
  font-size: 2rem;
  line-height: 1;
  letter-spacing: 0.1em;
}

.orderhistory-list .order-detail {
  display: block;
}

.global-contents__inner.column-2 .form__section--content {
  padding: 3.5rem 0 0;
}

.order-detail__purchaseinfo dl {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 3rem 1.2rem;
  border-bottom: 1px solid #707070;
  color: #000;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0;
}

.order-detail__purchaseinfo dt,
.order-detail__purchaseinfo dd {
  color: inherit;
  font-size: inherit;
}

.order-detail__purchaseinfo dl > dt {
  word-break: keep-all;
}

.orderhistory-list .user-contents {
  display: flex;
  flex-direction: column;
}

.orderhistory-list .form__changearea {
  margin-top: 4rem;
}

.orderhistory-list .form__changearea .c-button {
  width: 42.2rem;
  height: auto;
  border-radius: 1.6rem;
  background-color: var(--color-cta-secondary);
  color: #000;
  font-size: 2rem;
  line-height: 1;
  letter-spacing: 0.2em;
  padding: 3rem;
  border: none;
  margin-inline: auto;
}

.orderhistorydetail .form__view {
  border-bottom: 1px solid #707070;
}

@media screen and (max-width: 767px) {
  .orderhistorylist .orderhistory-list {
    padding-top: 1.9rem;
  }

  .orderhistory-list .form__section--item {
    padding: 0 1.8rem 3.25rem;
  }

  .orderhistory-list .form__section--item+.form__section--item {
    padding-top: 3.2rem;
  }

  .orderhistory-list .purchase-info__id dt {
    font-size: 1.25rem;
    padding: 1.15rem 1rem;
  }

  .orderhistory-list .purchase-info__id dd a {
    padding: 1.25rem 1.25rem 0.85rem;
    font-size: 1.5rem;
  }

  .global-contents__inner.column-2 .form__section--content {
    padding-top: 1.8rem;
  }

  .order-detail__purchaseinfo dl {
    padding: 1.5rem 0.8rem;
    font-size: 1.3rem;
  }

  .orderhistory-list .form__changearea .c-button {
    width: 80%;
    border-radius: 0.8rem;
    padding: 2rem;
    font-size: 1.4rem;
  }

  .orderhistory-list .form__changearea {
    margin-top: 2rem;
  }
}

.btn-course-order {
  margin-bottom: 2.7rem;
}

@media (min-width: 768px) {
  .btn-course-order {
    margin-bottom: 4rem;
  }
}

.custom-link-button.p-order-history__button--bulk-purchase {
  display: grid;
  place-content: center;

  width: min(80%, 42.2rem);
  margin-inline: auto;
  padding-block: 2rem;
  background-color: #ED5127;
  border-radius: .8rem;

  color: var(--color-white);
  font-size: 1.4rem;
  font-weight: var(--fw-bold);
  letter-spacing: .02em;
  line-height: 1;
}

@media (min-width: 768px) {
  .custom-link-button.p-order-history__button--bulk-purchase {
    padding-block: 3rem;
    border-radius: 1.6rem;

    font-size: 2rem;
  }
}

.orderhistory-list .p-order-history__lottery-result {
  margin-block: 2.7rem 0;
}

@media (min-width: 768px) {
  .orderhistory-list .p-order-history__lottery-result {
    margin-block: 3.45rem 0;
  }
}

.orderhistory-list [class*="p-order-history__lottery-result-text--result-"] {
  margin-bottom: 0;
}

.orderhistory-list .form__section--item:not(:has(.p-order-history__lottery-result)) .form__section--content.order-detail {
  padding-top: 0;
}

.orderhistory-list .form__section--item:has(.p-order-history__lottery-result) .order-detail__purchaseinfo > dl:first-of-type {
  border-top: 1px solid #707070;
}

.orderhistory-list .form__changearea {
  display: grid;
  row-gap: 1rem;
}

@media (min-width: 768px) {
  .orderhistory-list .form__changearea {
    row-gap: 3rem;
  }
}

.orderhistory-list .form__section--item .c-button__primary {
  background-color: #ED5127;

  color: var(--color-white);
}




/* ===============================================
  * Page - OrderHistoryDetail *
=============================================== */

/* Text */

.p-order-history-detail__text--heading {
  display: grid;
  place-content: center;

  padding: 1.2rem 0;
  margin-bottom: 2.9rem;
  background-color: var(--color-primary);

  color: var(--color-white);
  font-size: 1.25rem;
  font-weight: var(--fw-bold);
  letter-spacing: .2em;
  line-height: 1;
}

@media (min-width: 768px) {
  .p-order-history-detail__text--heading {
    padding-block: 2rem;

    font-size: 2.2rem;
  }
}

.p-order-history-detail__text--error {
  margin-block: 2rem;

  color: var(--color-emphasis);
  font-weight: var(--fw-bold);
  letter-spacing: .05em;
  line-height: 1.5;
}

.p-order-history-detail__text--error:empty {
  display: none;
}


/* Components */

.p-order-history-detail__content .c-button {
  max-width: 42.2rem;
}


/* Layout */

@media (max-width: 767px) {
  .p-order-history-detail__content {
    padding-inline: 2.2rem;
  }
}

.p-order-history-detail__content-container {
  display: grid;
  row-gap: 4rem;

}

@media (min-width: 768px) {
  .p-order-history-detail__content-container {
    row-gap: 6rem;
  }
}


/* Description List */

.orderhistorydetail {
  --dl-row-gap: 1rem;
  --dl-column-row-gap: 1.3rem;
  --border-style: var(--user-border-style);
}

@media (min-width: 768px) {
  .orderhistorydetail {
    --dl-row-gap: 2rem;
    --dl-column-row-gap: 2.5rem;
  }
}

.p-order-history__description-list:not(table),
table.p-order-history__description-list > tbody {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--dl-row-gap);
}

table.p-order-history__description-list {
  width: 100%;
}

.p-order-history__description-list-item {
  display: grid;
  align-items: baseline;
  grid-template-columns: subgrid;
  grid-column: span 2;

  padding-bottom: var(--dl-row-gap);
  border-bottom: var(--border-style);
}

.p-order-history__description-list-item > *:nth-child(1) {
  justify-self: flex-start;
  text-align: left;
  /* word-break: keep-all; */
  /* white-space: nowrap; */
}

.p-order-history__description-list-item > *:nth-child(2) {
  display: grid;
  justify-items: flex-end;
  justify-self: flex-end;
}

.p-order-history__description-list-item > * {
  font-size: 1.3rem;
  font-weight: var(--fw-medium);
  letter-spacing: .12em;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .p-order-history__description-list-item > * {
    font-size: 1.6rem;
  }
}

.p-order-history__description-list-item:has(dd[style="display:none;"]) {
  display: none;
}

.p-order-history__description-list-item .c-button:where(:not(.c-button__order-history-detail-huge)) {
  width: fit-content;
  height: auto;
  margin-block: 1rem;
  margin-inline: auto 0;
  padding: 1rem 1.6rem;

  font-size: 1.6rem;
  word-break: keep-all;
}

@media (max-width: 767px) {
  .p-order-history__description-list-item--expanded {
    grid-template-columns: initial;
    grid-column: 1 / -1;
    row-gap: 1rem;
  }

  .p-order-history__description-list-item--expanded > th {
    grid-row: 1 / 2;
    grid-column: 1 / -1;
  }

  .p-order-history__description-list-item--expanded > td * {
    word-break: break-all;
  }

  .p-order-history__description-list-item--expanded .c-form__input--check-column,
  .p-order-history__description-list-item--expanded .c-form__input--radio-column {
    grid-template-columns: auto 1fr;
  }

  .p-order-history__description-list-item--expanded > *:nth-child(2) {
    justify-items: initial;
    justify-self: initial;
  }

  .p-order-history__description-list-item--expanded .c-form__input--check label,
  .p-order-history__description-list-item--expanded .c-form__input--radio label {
    width: fit-content;
  }
}

.p-order-history__description-list-item .c-form__subitem {
  width: 100%;
}

.p-order-history__description-list-item .c-form__input--check-column br,
.p-order-history__description-list-item .c-form__input--radio-column br {
  display: none;
}

.p-order-history__description-list--total {
  margin-top: .2rem;
  padding-top: var(--dl-row-gap);
  border-top: var(--border-style);
}

.p-order-history-detail__content .c-form__item--block {
  margin-bottom: 3rem;
}

.p-order-history-detail__content .c-form__item:has(> dt:nth-of-type(2)) > dt:not(:first-of-type) {
  margin-top: 3rem;
}

.p-order-history__description-list-item:has(+ .p-order-history__update-button-row) {
  padding-bottom: 0;
  border-bottom: none;
}

.p-order-history__update-button-row {
  grid-template-columns: initial;

  margin-top: 2rem;
  border-bottom: var(--border-style);
}

.p-order-history__update-button-container {
  display: flex;
  justify-content: flex-end;
  column-gap: 1rem;
}

.p-order-history__update-button-container .c-button {
  margin: 0;
}

.u-order-history__hidden-button:has([class*="c-form__input--"]) .p-mypage__option-button--secondary {
  display: none;
}

.orderhistorydetail .p-order-history__description-list-item {
  align-items: center;
}


/* Description List - Column */

.p-order-history__description-list--column,
table.p-order-history__description-list--column > tbody {
  grid-template-columns: initial;
  row-gap: var(--dl-column-row-gap);
}

.p-order-history__description-list--column .p-order-history__description-list-item {
  display: grid;
  grid-template-columns: initial;
  grid-column: initial;
  align-items: center;
  justify-content: initial;
  row-gap: var(--dl-column-row-gap);

  padding-bottom: 0;
  border-bottom: none;
}

.p-order-history__description-list--column .p-order-history__description-list-item[hidden] {
  display: none;
}

.p-order-history__description-list--column .p-order-history__description-list-item > * {
  justify-items: initial;
  justify-self: initial;

  font-size: 1.3rem;
  letter-spacing: normal;
}

@media (min-width: 768px) {
  .p-order-history__description-list--column .p-order-history__description-list-item > * {
    font-size: 1.6rem;;
  }
}

.p-order-history__description-list--column .p-order-history__description-list-item dt,
.p-order-history__description-list--column .p-order-history__description-list-item th {
  padding: 1.2rem 1.5rem;
  background-color: var(--color-bg-dark-gray);

  line-height: 1;
}

.p-order-history__description-list--column .p-order-history__description-list-item dd,
.p-order-history__description-list--column .p-order-history__description-list-item td {
  line-height: 1.5;
}


/* Lottery Result */

.p-order-history__lottery-result {
  margin-bottom: 3rem;
}

@media (min-width: 768px) {
  .p-order-history__lottery-result {
    margin-bottom: 8rem;
  }
}

.p-order-history__lottery-result-text--heading {
  display: block;

  margin-bottom: 2rem;

  font-family: var(--font-yumincho);
  font-size: 1.6rem;
  letter-spacing: .02em;
  line-height: 1;
  text-align: center;
}

@media (min-width: 768px) {
  .p-order-history__lottery-result-text--heading {
    font-size: 2rem;
  }
}

[class*="p-order-history__lottery-result-text--result-"] {
  display: grid;
  place-content: center;

  margin-bottom: 3.5rem;
  padding-block: 1.5rem;

  color: var(--color-white);
  font-size: 1.75rem;
  font-weight: var(--fw-bold);
  letter-spacing: .02em;
  line-height: 1;
}

@media (min-width: 768px) {
  [class*="p-order-history__lottery-result-text--result-"] {
    max-width: 42.2rem;
    margin-inline: auto;
    margin-bottom: 6.25rem;
    padding-block: 2.5rem;

    font-size: 2.8rem;
  }
}

.p-order-history__lottery-result-text--result-win {
  background-color: #2FCBA7;
}

.p-order-history__lottery-result-text--result-lose {
  background-color: #7E7E7E;
}

.p-order-history__lottery-result-image {
  width: 76%;
  margin-inline: auto;
  margin-bottom: 3.5rem;
}

@media (min-width: 768px) {
  .p-order-history__lottery-result-image {
    margin-bottom: 6.25rem;
  }
}

.p-order-history__not-lottery-result-content {
  display: grid;

  row-gap: 1.9rem;
}

@media (min-width: 768px) {
  .p-order-history__not-lottery-result-content {
    row-gap: 5rem;
  }
}

.p-order-history__note-lottery-result-text--heading {
  font-size: 1.5rem;
  letter-spacing: .01em;
  line-height: 2;
  text-align: center;
}

@media (min-width: 768px) {
  .p-order-history__note-lottery-result-text--heading {
    font-size: 2.2rem;
  }
}

.p-order-history__note-lottery-result-image {
  display: grid;

  width: 100%;
  border-radius: 1rem;
  overflow: hidden;
}

.p-order-history__lottery-button-container {
  margin-top: 2.5rem;
}

@media (min-width: 768px) {
  .p-order-history__lottery-button-container {
    margin-top: 3.46rem;
  }
}

.p-order-history__lottery-text--state {
  margin-top: 1rem;

  text-align: center;
}


/* Order Summary */

.p-order-history__order-summary-content {
  display: grid;
  row-gap: 1.5rem;

  margin-bottom: 5rem;

  text-align: center;
}

@media (min-width: 768px) {
  .p-order-history__order-summary {
    row-gap: 2rem;
  }
}

.p-order-history__order-summary-text--product-name,
.p-order-history__order-summary-text--price {
  font-size: 1.5rem;
  letter-spacing: .01em;
  line-height: 1.5;
}


/* Receipt */

.p-order-history__description-list--receipt .p-order-history__description-list-item--receipt-input-form {
  row-gap: 1rem;

  padding-bottom: 0;
  border-bottom: none;
}

.p-order-history__description-list--receipt tbody {
  --dl-row-gap: 3rem;
}

.p-order-history__description-list--receipt .p-order-history__description-list-item--receipt-input-form :is(th, td) {
  grid-column: 1 / -1;

  justify-content: initial;
  justify-self: initial;
}

.p-order-history__description-list-item--receipt {
  padding-bottom: 0;
  border-bottom: none;
}

.p-order-history__description-list-item.p-order-history__description-list-item--receipt td {
  grid-column: 1 / -1;
  justify-items: initial;
  justify-self: initial;
}


/* Others */

.orderhistorydetail :is(#modal, #personalInformationConsentWrapper) {
  display: none;
}

.c-button__order-history-detail-huge {
  margin-top: var(--dl-column-row-gap);
}




/* ===============================================
  * Page - Course Order List *
=============================================== */

.p-course-order-list {
  --dl-row-gap: 1rem;
  --dl-column-row-gap: 1.3rem;
  --border-style: var(--user-border-style);
}

@media (min-width: 768px) {
  .p-course-order-list {
    --dl-row-gap: 2rem;
    --dl-column-row-gap: 2.5rem;
  }
}

.p-course-order__container {
  display: grid;
  row-gap: 3.5rem;;
}

@media (min-width: 768px) {
  .p-course-order__container {
    row-gap: 8rem;
  }
}

.p-course-order__text--annotation {
  display: block;

  margin-bottom: 1.9rem;

  font-size: 1.2rem;
  letter-spacing: normal;
  line-height: calc(30 / 24);
  text-align: center;
}

@media (min-width: 768px) {
  .p-course-order__text--annotation {
    font-size: 1.8rem;
  }
}

@media (max-width: 767px) {
  .p-course-order__content {
    padding-inline: 2.2rem;;
  }
}

.p-course-order__text--purchase-id {
  display: grid;
  place-content: center;

  margin-bottom: 3rem;
  padding-bottom: 1rem;
  border-bottom: var(--user-border-style);

  font-size: 1.5rem;
  font-weight: var(--fw-medium);
  letter-spacing: .01em;
  text-align: center;
}

@media (min-width: 768px) {
  .p-course-order__text--purchase-id {
    margin-bottom: 7rem;
    padding-bottom: 2.5rem;

    font-size: 1.6rem;
  }
}

.p-course-order-list .p-course-order__content .c-button {
  margin-top: 2.9rem;
}

@media (min-width: 768px) {
  .p-course-order-list .p-course-order__content .c-button {
    margin-top: 4.25rem;
  }
}

.p-course-order-list:has(.p-mypage-order-list__empty-wrapper) .p-course-order__text--annotation {
  display: none;
}

.p-mypage-order-list__empty-wrapper {
  display: grid;
  place-content: center;

  padding-block: 3.2rem;

  color: var(--color-text-sub);
  font-weight: var(--fw-bold);
}




/* ===============================================
  * Page - Course Order Detail *
=============================================== */

.p-course-order-detail {
  --dl-row-gap: 1rem;
  --dl-column-row-gap: 1.3rem;
  --border-style: var(--user-border-style);
}

@media (min-width: 768px) {
  .p-course-order-detail {
    --dl-row-gap: 2rem;
    --dl-column-row-gap: 2.5rem;
  }
}

.p-course-order-detail__text--product-name {
  display: grid;
  place-content: center;

  width: 100%;
  padding: 1.6rem;
  border: var(--user-border-style);

  font-size: 1.75rem;
  font-weight: var(--fw-medium);
  letter-spacing: .02em;
  line-height: calc(60 / 35);
  text-align: center;
}

@media (min-width: 768px) {
  .p-course-order-detail__text--product-name {
    padding-block: 1.8rem;

    font-size: 2.2rem;
  }
}

.p-course-order-detail__shipping-date-table .p-order-history__description-list-item th {
  text-align: left;
}

.p-course-order-detail__text--shipping-annotation {
  display: block;
  margin-top: 1.4rem;

  font-size: 1.1rem;
  letter-spacing: normal;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .p-course-order-detail__text--shipping-annotation {
    margin-top: 2rem;

    font-size: 1.4rem;
  }
}

.p-course-order-detail__shipping-date-table .p-order-history__update-button-container .c-button {
  margin-top: 0;
}

.p-course-order-detail__name-label-content {
  display: grid;
  justify-items: center;
  row-gap: 1.6rem;
}

@media (min-width: 768px) {
  .p-course-order-detail__name-label-content {
    row-gap: 2.2rem;
  }
}

.p-course-order-detail__text--name-flg {
  font-size: 1.8rem;
  font-weight: var(--fw-bold);
  letter-spacing: .02em;
  line-height: 1;
}

.p-course-order-detail__text--output-name-label {
  display: grid;
  place-content: center;

  max-width: 100%;
  min-width: 15rem;
  padding: .75rem;
  border: var(--border-style);

  font-size: 1.5rem;
  letter-spacing: .02em;
  line-height: 2;
}

@media (min-width: 768px) {
  .p-course-order-detail__text--output-name-label {
    min-width: 30rem;

    font-size: 1.8rem;
  }
}

.p-course-order-detail__text--output-name-label:empty {
  display: none;
}

.p-course-order-detail__name-label-content .c-button {
  margin-top: 0;
}

.p-course-order-detail__change-shipping-info-button-row {
  display: grid;
}

.p-course-order-detail__change-shipping-info-button-row > td {
  grid-column: 1 / -1;
}

.p-course-order-detail__change-shipping-info-button-row .c-button {
  margin-top: 0;
}

.p-course-order-detail .c-form__item--block {
  margin-bottom: 3rem;
}

.p-course-order-detail .c-form__item--block .form__view {
  border-bottom: var(--border-style);
}

.p-course-order-detail .p-course-order__content .p-order-history__update-button-container .c-button {
  margin-top: 0;
}

.p-course-order-detail .p-course-order__content .c-form__item:has(> dt:nth-of-type(2)) > dt:not(:first-of-type) {
  margin-top: 3rem;
}

.p-course-order-detail__text--link {
  color: #41BAC4;
  font-size: 1.3rem;
  letter-spacing: .01em;
  line-height: 1;
  text-decoration: underline;
}

@media (min-width: 768px) {
  .p-course-order-detail__text--link {
    font-size: 1.6rem;
  }
}

.usercreditcardlist .global-contents__inner.column-2 .form__section--content{
  padding: 2rem;
}

@media (min-width: 768px) {
  .usercreditcardlist .global-contents__inner.column-2 .form__section--content{
    padding: 3rem;
  }
}
