@layer components {
  .breadcrumb {
    padding: 20px 0 0;
    background-color: #fff;
    border-block-start: 1px solid #ececec;
  }
  @media (max-width: 640px) {
    .breadcrumb {
      margin: 2px 0 0 -6px;
      padding: 7px 0 9px;
      border-block-end: 1px solid #ececec;
    }
  }
  .breadcrumb__list {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
    color: #747474;
    font-family: var(--font-ja, "Noto Sans JP", sans-serif);
    font-size: 11px;
    letter-spacing: 0.22px;
    gap: 13px;
    list-style: none;
  }
  @media (max-width: 640px) {
    .breadcrumb__list {
      font-size: 10px;
      gap: 7px;
    }
  }
  .breadcrumb__item {
    display: flex;
    align-items: center;
    color: #747474;
    font-weight: 400;
    line-height: 1.5;
  }
  .breadcrumb__item:not(:last-child)::after {
    display: inline-block;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='5' height='10' viewBox='0 0 5 10' fill='none'%3E%3Cpath d='M0.311705 5.36347e-08C0.232631 5.45393e-08 0.15171 0.033567 0.0910258 0.0987265C-0.0303421 0.229045 -0.0303421 0.442294 0.0910258 0.572613L4.24513 5.03307L0.15171 9.42837C0.0303417 9.55869 0.0303417 9.77194 0.15171 9.90226C0.273078 10.0326 0.471681 10.0326 0.593049 9.90226L4.90897 5.27002C5.03034 5.1397 5.03034 4.92645 4.90897 4.79613L0.534204 0.0987265C0.471681 0.0315925 0.392617 5.27091e-08 0.311705 5.36347e-08Z' fill='%23747474'/%3E%3C/svg%3E") no-repeat center/100% 100%;
    content: "";
    margin-inline-start: 14px;
    inline-size: 5px;
    block-size: 10px;
  }
  @media (max-width: 640px) {
    .breadcrumb__item:not(:last-child)::after {
      margin-inline-start: 7px;
      block-size: 7px;
    }
  }
  .breadcrumb__item a {
    color: inherit;
    text-decoration: underline;
    text-decoration-skip-ink: none;
    text-underline-position: from-font;
    transition: opacity var(--transition-duration-base) ease;
  }
  .breadcrumb__item a:hover {
    opacity: 0.7;
  }
  .breadcrumb__item span {
    color: inherit;
  }
}
.legal-page {
  padding: 60px 0 120px;
  background-color: #fff;
  font-family: var(--font-ja-serif);
}
.legal-page p {
  margin-block-start: 0;
}
.legal-page a,
.legal-page a:visited,
.legal-page a:hover,
.legal-page a:focus {
  color: var(--color-accent);
  text-decoration: underline;
  text-underline-offset: 0.12em;
}
.legal-page .container {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 40px;
}
@media (max-width: 640px) {
  .legal-page .container {
    padding: 0 20px;
  }
}
.legal-page .bold {
  color: var(--color-notice-bg);
  font-weight: 600;
}

.legal-title {
  margin-bottom: 60px;
  color: #000;
  font-family: var(--font-ja-serif);
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-align: center;
}
@media (max-width: 640px) {
  .legal-title {
    margin-bottom: 40px;
    font-size: 1.5rem;
  }
}

.legal-section {
  max-width: 1000px;
  margin: 0 auto 80px;
}
.legal-section:last-child {
  margin-bottom: 0;
}

#payment-methods,
#shipping-fee {
  scroll-margin-top: 150px;
}
@media (max-width: 640px) {
  #payment-methods,
  #shipping-fee {
    scroll-margin-top: 90px;
  }
}

.legal-subtitle {
  margin-bottom: 30px;
  padding-bottom: 15px;
  border-bottom: 1px solid #ddd;
  color: var(--color-fg);
  font-family: var(--font-ja-serif);
  font-size: 1.5rem;
  font-weight: 500;
}
@media (max-width: 640px) {
  .legal-subtitle {
    font-size: 1.25rem;
  }
}

.legal-content {
  color: #333;
  font-family: var(--font-ja-serif);
  font-size: 18px;
  line-height: 1.8;
}
.legal-content p {
  margin-bottom: 1.5em;
}
.legal-content p:last-child {
  margin-bottom: 0;
}

.legal-business-calendar {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  align-items: flex-start;
  /* stylelint-disable selector-class-pattern */
}
.legal-business-calendar .this-month,
.legal-business-calendar .next-month {
  flex: 1 1 280px;
  max-width: 360px;
}
.legal-business-calendar .usces_calendar {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border-top: 1px solid #ddd;
  border-left: 1px solid #ddd;
  font-size: 15px;
  text-align: center;
}
.legal-business-calendar caption {
  margin-bottom: 8px;
  color: var(--color-fg);
  font-weight: 600;
  text-align: left;
}
.legal-business-calendar th,
.legal-business-calendar td {
  width: 14.2857142857%;
  padding: 8px;
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  line-height: 1.4;
}
.legal-business-calendar th {
  background-color: #f9f9f9;
  color: var(--color-fg);
  font-weight: 600;
}
.legal-business-calendar .businessday,
.legal-business-calendar .business_days_exp_box {
  background-color: var(--color-accent);
  color: #fff;
}
.legal-business-calendar .businesstoday {
  border: 1px solid #000;
  color: var(--color-fg);
  font-weight: 600;
}
.legal-business-calendar {
  /* stylelint-enable selector-class-pattern */
}
.legal-business-calendar__note {
  flex-basis: 100%;
}
.legal-business-calendar__hours {
  font-weight: 500;
}
.legal-business-calendar__reservation {
  color: var(--color-accent);
  font-weight: 600;
}
.legal-business-calendar__reservation a,
.legal-business-calendar__reservation a:visited,
.legal-business-calendar__reservation a:hover,
.legal-business-calendar__reservation a:focus {
  color: inherit;
}
.legal-business-calendar__holiday-mark {
  color: var(--color-accent);
}
@media (max-width: 640px) {
  .legal-business-calendar {
    display: block;
    /* stylelint-disable selector-class-pattern */
  }
  .legal-business-calendar .this-month,
  .legal-business-calendar .next-month {
    max-width: none;
  }
  .legal-business-calendar .this-month {
    margin-bottom: 24px;
  }
  .legal-business-calendar {
    /* stylelint-enable selector-class-pattern */
  }
}

.legal-phone--sp {
  display: none;
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 0.12em;
}

.legal-dot-list {
  margin: 0 0 1.2rem;
  padding-left: 1.2em;
  list-style: disc;
}
.legal-dot-list li {
  margin-bottom: 1.2em;
}
.legal-dot-list li:last-child {
  margin-bottom: 0;
}
.legal-dot-list li::marker {
  color: var(--color-accent);
}
.legal-dot-list--no-margin-bottom li {
  margin-bottom: 0;
}

.legal-table {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid #ddd;
}
.legal-table th,
.legal-table td {
  padding: 20px;
  border-bottom: 1px solid #ddd;
  font-size: 15px;
  line-height: 1.8;
  text-align: left;
  vertical-align: top;
}
@media (max-width: 640px) {
  .legal-table th,
  .legal-table td {
    display: block;
    width: 100%;
    padding: 15px 10px;
  }
}
.legal-table th {
  width: 25%;
  background-color: #f9f9f9;
  color: var(--color-fg);
  font-weight: 600;
}
@media (max-width: 640px) {
  .legal-table th {
    width: 100%;
    padding-bottom: 5px;
    background-color: transparent;
    border-bottom: none;
    font-size: 1rem;
  }
}
.legal-table td {
  width: 75%;
}
@media (max-width: 640px) {
  .legal-table td {
    width: 100%;
    padding-top: 5px;
  }
}
.legal-table ul {
  margin: 0;
  padding-left: 1.5em;
  list-style-type: disc;
}

.payment-list {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.payment-list .payment-item dt {
  margin-bottom: 10px;
  color: var(--color-accent);
  font-size: 19px;
  font-weight: 600;
}
.payment-list .payment-item dd {
  margin: 0;
  font-size: 18px;
}

@media (max-width: 640px) {
  .legal-phone--pc {
    display: none;
  }
  .legal-phone--sp {
    display: inline;
  }
}/*# sourceMappingURL=legal.css.map */