.site_container.page .page_head {
  border-bottom: 1px solid var(--color-border);
  height: 416px;
  padding: 176px var(--content-margin) 20px;
}
.site_container.page .page_head .head_title {
  display: flex;
  flex-wrap: wrap;
  font-size: clamp(1.78rem, 4.19vw, 3.56rem);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.33;
  margin-bottom: 30px;
  padding-top: 50px;
  position: relative;
}
.site_container.page .page_head .head_title::before {
  background-color: var(--title-color-gray);
  content: "";
  display: block;
  height: 10px;
  left: 0;
  position: absolute;
  top: 0;
}
.js-enabled .site_container.page .page_head .head_title::before {
  opacity: 0;
  transition: width 1s ease 0.2s, opacity 0.3s ease 0.2s;
  width: 0;
  will-change: width opacity;
}
.site_container.page .page_head .head_title > span {
  display: block;
  line-height: inherit;
  opacity: 0;
  overflow: hidden;
  transform: translateY(101%);
  transition: transform 1s cubic-bezier(0.075, 0.82, 0.165, 1) 0.2s, opacity 0.4s ease-in-out 0.2s;
  will-change: opacity transform;
}
.site_container.page .page_head .head_title > span span {
  display: inline-block;
  opacity: 0;
  transform: translateY(101%);
  transition: transform 1.6s cubic-bezier(0.58, 0, 0.07, 1) 0.6s, opacity 1.6s cubic-bezier(0.58, 0, 0.07, 1) 0.6s;
  will-change: opacity, transform;
}
body.is_loaded .site_container.page .page_head .head_title > span span {
  opacity: 1;
  transform: translateY(0);
}
.js-enabled body.is_loaded .site_container.page .page_head .head_title::before {
  opacity: 1;
  width: clamp(3.75rem, 8.82vw, 7.5rem);
}
.js-enabled body.is_loaded .site_container.page .page_head .head_title > span {
  opacity: 1;
  transform: none;
}
.site_container.page .page_head .head_title_en {
  color: var(--title-color-gray);
  font-size: clamp(1rem, 2.35vw, 2rem);
  font-weight: 800;
  letter-spacing: 0.02em;
  line-height: 0.77;
}
.js-enabled .site_container.page .page_head .head_title_en {
  opacity: 0;
  transition: opacity 1s ease-in-out;
  will-change: opacity;
}
.js-enabled body.is_loaded .site_container.page .page_head .head_title_en {
  opacity: 1;
  transition-delay: 0.6s;
}
.site_container.page .page_head .head_title_en > span {
  line-height: inherit;
}

.site_container.page .page_content {
  margin: 0 auto;
  max-width: calc(var(--content-max-width) + var(--content-margin) * 2);
  padding: clamp(3.13rem, 5.88vw, 5rem) var(--content-margin);
  width: 100%;
}

.site_container.page .page_content {
  margin: 0 auto;
  max-width: calc(var(--content-max-width-sm) + var(--content-margin) * 2);
  width: 100%;
}
.site_container.page .article_body {
  word-wrap: break-word;
  font-size: clamp(0.91rem, 1.57vw, 1.19rem);
  overflow-wrap: break-word;
}
.site_container.page .article_body p,
.site_container.page .article_body li {
  font-feature-settings: "palt" 1;
  font-size: 100%;
  letter-spacing: 0.02em;
  line-height: 1.79;
  text-align: justify;
}
.site_container.page .article_body p a,
.site_container.page .article_body li a {
  color: var(--color-text-blue);
}
.site_container.page .article_body p,
.site_container.page .article_body ul,
.site_container.page .article_body ol {
  margin: 0 0 var(--entry-margin-01);
}
.site_container.page .article_body p:empty {
  display: none;
  margin: 0;
}
.site_container.page .article_body strong,
.site_container.page .article_body b {
  font-weight: 700;
}
.site_container.page .article_body em,
.site_container.page .article_body i {
  font-style: italic;
}
.site_container.page .article_body h2 {
  color: var(--font-color);
  font-size: 136.84%;
  font-weight: 700;
  line-height: 1.4;
  margin: var(--entry-margin-03) 0 var(--entry-margin-01);
  padding-left: 22px;
  position: relative;
}
.site_container.page .article_body h2::before {
  background-color: var(--title-color-gray);
  content: "";
  height: 38px;
  left: 0;
  position: absolute;
  top: 0;
  width: 6px;
}
.site_container.page .article_body h3 {
  font-size: 126.32%;
  font-weight: 700;
  line-height: 1.46;
  margin: var(--entry-margin-02) 0 var(--entry-margin-01);
}
.site_container.page .article_body h4 {
  font-size: 115.79%;
  font-weight: 700;
  line-height: 1.46;
  margin: var(--entry-margin-02) 0 var(--entry-margin-01);
}
.site_container.page .article_body h5,
.site_container.page .article_body h6 {
  font-size: 100%;
  font-weight: 700;
  line-height: 1.46;
  margin: var(--entry-margin-01) 0 var(--entry-margin-04);
}
.site_container.page .article_body table {
  border-collapse: collapse;
  font-size: 94.74%;
  margin-bottom: var(--entry-margin-01);
  width: 100%;
}
.site_container.page .article_body table th,
.site_container.page .article_body table td {
  border: 1px solid var(--color-border);
  line-height: 1.78;
  padding: 13px 10px 13px 35px;
  text-align: left;
}
.site_container.page .article_body table th {
  background-color: var(--color-bg-gray);
  font-weight: 700;
  vertical-align: top;
}
.site_container.page .article_body table tr > th:first-child:has(+ td:last-child) {
  width: 24.06%;
}
.site_container.page .article_body .rules > *:first-of-type {
  margin-top: 0;
}
.site_container.page.privacy-policy .article_body .rules address {
  font-size: clamp(0.91rem, 1.4vw, 1.19rem);
  line-height: 1.79;
}
.site_container.page.privacy-policy .article_body .rules address a {
  color: var(--color-text-blue);
}
.site_container.page.privacy-policy .article_body .rules address {
  font-style: normal;
}
.site_container.page.anti .article_body .rules .signature {
  text-align: right;
}
.js-enabled .site_container.page .js-observe.upin_title.is_inview > span {
  opacity: 1;
  transform: none;
}
.js-enabled .site_container.page .js-observe.anm_fade_in {
  opacity: 0;
  transition: opacity 1s ease-in-out 0.6s;
  will-change: opacity;
}
.js-enabled .site_container.page .js-observe.anm_fade_in.is_inview {
  opacity: 1;
  transform: none;
}
@media screen and (max-width: 1210px) {
  .site_container.page .page_content {
    padding-bottom: clamp(25px, 13.33vw, 50px);
    padding-top: clamp(25px, 13.33vw, 50px);
  }
}
@media screen and (max-width: 960px) and (orientation: landscape) {
  .site_container.page .page_head .head_title > span:first-of-type {
    width: 100%;
  }
}
@media screen and (max-width: 960px) {
  .site_container.page .page_head {
    height: clamp(141.5px, 75.47vw, 283px);
    max-height: var(--win-vh);
    padding: clamp(76.5px, 40.8vw, 153px) var(--content-margin) 0;
  }
  .site_container.page .page_head .head_title {
    font-size: clamp(0.89rem, 7.6vw, 1.78rem);
    margin-bottom: clamp(0.44rem, 3.73vw, 0.88rem);
    padding-top: clamp(0.8rem, 6.67vw, 1.56rem);
  }
  .site_container.page .page_head .head_title::before {
    height: 5px;
  }
  .site_container.page .page_head .head_title_en {
    font-size: clamp(0.5rem, 4.27vw, 1rem);
    line-height: 0.97;
  }
  .site_container.page .article_body {
    font-size: clamp(7.25 + px, 3.87vw, 0.91rem);
  }
  .site_container.page .article_body p,
  .site_container.page .article_body li {
    line-height: 1.79;
  }
  .site_container.page .article_body p + h2 {
    margin-top: clamp(20px, 9.33vw, 35px);
  }
  .site_container.page .article_body h2 {
    font-size: 127.59%;
    padding-left: clamp(8px, 4.27vw, 16px);
  }
  .site_container.page .article_body h2::before {
    height: clamp(13.5px, 7.2vw, 27px);
    width: clamp(2px, 1.07vw, 4px);
  }
  .site_container.page .article_body h2 + p {
    margin-top: calc(clamp(2.5px, 1.33vw, 5px) * -1);
  }
  .site_container.page .article_body h3 {
    font-size: 120.69%;
    line-height: 1.43;
  }
  .site_container.page .article_body h4 {
    font-size: 110.34%;
    line-height: 1.43;
  }
  .site_container.page .article_body h5,
  .site_container.page .article_body h6 {
    font-size: 100%;
    line-height: 1.43;
  }
  .site_container.page .article_body table {
    font-size: 89.66%;
  }
  .site_container.page .article_body table th,
  .site_container.page .article_body table td {
    padding: clamp(5px, 2.67vw, 10px) clamp(5px, 2.67vw, 10px) clamp(5px, 2.27vw, 10px);
  }
  .site_container.page .article_body table tr > th:first-child:has(+ td:last-child) {
    width: 24.15%;
  }
  .site_container.page.kobutsu .page_head .head_title {
    letter-spacing: 0;
  }
  .site_container.page.privacy-policy .article_body .rules address {
    font-size: clamp(7.25px, 3.87vw, 0.91rem);
    line-height: 1.79;
  }
  .site_container.page.anti .page_head {
    padding-top: calc(clamp(76.5px, 40.8vw, 153px) - clamp(0.89rem, 7.6vw, 1.78rem) * 1.33);
  }
}
@media screen and (max-width: 600px) {
  .site_container.page .page_head .head_title::before {
    height: 1.33vw;
  }
  .js-enabled body.is_loaded .site_container.page .page_head .head_title::before {
    width: 16vw;
  }
  .js-enabled .site_container.page .js-observe.upin_title > span {
    opacity: 0;
    transform: translateY(101%);
    transition: transform 1s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s, opacity 0.4s ease-in-out 0.4s;
    will-change: opacity transform;
  }
  .js-enabled .site_container.page .js-observe.upin_title.is_inview > span + span {
    transition-delay: 0.6s;
  }
}
@media print {
  .site_container.page .page_head {
    height: auto !important;
    padding: 0 0 30px;
  }
  .site_container.page .page_head .head_title {
    margin-bottom: 15px;
    padding-top: 25px;
  }
  .site_container.page .page_content {
    padding: 5mm 0 10mm !important;
  }
  .js-enabled .site_container.page .js-observe.upin_title > span {
    opacity: 1;
    transform: none;
  }
  .js-enabled .site_container.page .js-observe.anm_fade_in {
    opacity: 1;
  }
}
@media screen and (min-width: 601px), print {
  .js-enabled .site_container.page .js-observe.upin_title > span {
    opacity: 0;
    transform: translateY(101%);
    transition: transform 1s cubic-bezier(0.075, 0.82, 0.165, 1) 0.4s, opacity 0.4s ease-in-out 0.4s;
    will-change: opacity transform;
  }
  .js-enabled .site_container.page .js-observe.upin_title.is_inview > span + span {
    transition-delay: 0.6s;
  }
}
@media screen and (min-width: 961px), print {
  .site_container.page .page_head .head_title > span:first-of-type {
    width: 100%;
  }
  .site_container.page .article_body p + h2 {
    margin-top: clamp(1.88rem, 4.96vw, 3.75rem);
  }
  .site_container.page .article_body h2 + p {
    margin-top: calc(clamp(0rem, 0.5vw, 0.38rem) * -1);
  }
}