@charset "UTF-8";
.page-policy .policy-section {
  margin-top: 3rem;
}
.page-policy .policy-section__inner {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.page-policy .policy-section__inner *:first-child {
  margin-top: 0;
}
.page-policy .policy-section__inner h2 {
  font-weight: 700;
  line-height: 1.35;
  font-size: 2rem;
  letter-spacing: 0.04em;
  border-bottom: 1px solid var(--colorBorder5);
  position: relative;
  color: var(--colorMain2);
  padding-bottom: 1.5rem;
  margin-top: 3rem;
  margin-bottom: 1.2rem;
}
.page-policy .policy-section__inner h2::before {
  content: "";
  display: block;
  width: 2.4rem;
  height: 1px;
  background: var(--colorMain2);
  position: absolute;
  bottom: -1px;
  left: 0;
}
.page-policy .policy-section__inner p {
  margin-top: 1em;
  margin-bottom: 1em;
}
.page-policy .policy-section__inner strong {
  font-weight: 600;
}
.page-policy .policy-section__inner ol, .page-policy .policy-section__inner ul {
  margin-top: 0.25em;
}
.page-policy .policy-section__inner li {
  position: relative;
  padding-left: 1.1em;
  margin-bottom: 0.25em;
}
.page-policy .policy-section__inner li:last-child {
  margin-bottom: 0;
}
.page-policy .policy-section__inner ol {
  counter-reset: number 0;
}
.page-policy .policy-section__inner ol > li:nth-child(n+10) {
  padding-left: 1.6em;
}
.page-policy .policy-section__inner ol > li::before {
  counter-increment: number 1;
  content: counter(number) ".";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--colorMain2);
  font-weight: 600;
}
.page-policy .policy-section__inner ol.katakana > li {
  padding-left: 3em;
}
.page-policy .policy-section__inner ol.katakana > li::before {
  content: "（" counter(number, katakana) "）";
}
.page-policy .policy-section__inner ol ol > li {
  padding-left: 2.5em;
}
.page-policy .policy-section__inner ol ol > li::before {
  content: "（" counter(number) "）";
}
.page-policy .policy-section__inner ul > li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
.page-policy .policy-section__inner a {
  text-decoration: underline;
  color: var(--colorMain1);
}
.page-policy .policy-section__inner a[target=_blank]::after {
  content: "";
  display: inline-block;
  aspect-ratio: 14/12;
  width: 1.4rem;
  margin-left: 0.2rem;
  background: url("/assets/img/common/icon_window.svg") no-repeat center center/contain;
  filter: var(--filterColorMain1);
}
@media (min-width: 768px) {
  .page-policy .policy-section {
    margin-top: 6rem;
  }
  .page-policy .policy-section__inner {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  .page-policy .policy-section__inner h2 {
    font-size: 2.4rem;
    margin-top: 5rem;
    padding-bottom: 1.7rem;
  }
  .page-policy .policy-section__inner h2::before {
    width: 3.2rem;
  }
}