/* ポリシーや方針のページ */
.site_container.page .rules {
  width: 1140px;
  margin-right: auto;
  margin-left: auto;
}

.site_container.page .rules ul,
.site_container.page .rules ol {
  margin-bottom: 20px;
}

.site_container.page .page_content .content_main .rules .box {
  padding: 0;
  padding-bottom: 16px;
}

.site_container.page .rules .box:last-child {
  margin-top: 20px;
  padding-bottom: 0;
}

.site_container.page .rules .box:last-child p {
  margin-bottom: 0;
}

.site_container.page .rules .h2_tit_01 {
  font-size: 150%;
  font-feature-settings: "palt";
  margin-top: 55px;
  margin-bottom: 45px;
  padding-bottom: 7px;
}

.site_container.page .rules .h3_tit_01 {
  font-size: 125%;
  font-feature-settings: "palt";
  margin-bottom: 12px;
  padding-left: 0;
}

.site_container.page .rules .h3_tit_01::before {
  background: none;
}

/* テーブル装飾（古物営業法など） */
.site_container.page .rules .tbl-info {
  width: 100%;
}

.site_container.page .rules .tbl-info th,
.site_container.page .rules .tbl-info td {
  font-size: 1em;
  line-height: 1.75;
  padding: 25px 0 34px 1em;
  position: relative;
  border-top: 1px solid #dcdcdc;
  box-sizing: border-box;
  background-clip: padding-box;
}

.site_container.page .rules .tbl-info tr:last-child th,
.site_container.page .rules .tbl-info tr:last-child td {
  border-bottom: 1px solid #dcdcdc;
}

.site_container.page .rules .tbl-info th {
  width: 30%;
  text-align: left;
  background-color: #f3f3f3;
}

.site_container.page .rules .tbl-info th::before,
.site_container.page .rules .tbl-info th::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  background: #fff;
  z-index: 1;
  height: 3px;
}

.site_container.page .rules .tbl-info th::before {
  top: 0;
}

.site_container.page .rules .tbl-info th::after {
  bottom: 0;
}

.site_container.page .rules .tbl-info td {
  width: 70%;
  background-color: #fff;
}

/* p, li, address等の細部装飾 */
.site_container.page .rules p {
  font-feature-settings: "palt";
}

.site_container.page .rules p.signature {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-start;
  margin-right: 1em;
  margin-bottom: 20px;
}

.site_container.page .rules li {
  font-feature-settings: "palt";
}

.site_container.page .rules li li {
  list-style: decimal;
  list-style-position: inside;
  padding-inline-start: 2.5rem;
}

.site_container.page .rules address {
  font-size: 100%;
  font-feature-settings: "palt";
  line-height: 1.75;
  font-style: normal;
}

/* 個別ページ（.privacy-policy, .anti, .terms） */
.site_container.page.privacy-policy .page_content .content_main .rules .h3_tit_01 {
  margin-top: 0;
}

.site_container.page.privacy-policy .page_content .content_main .rules p {
  margin-top: 0;
}

.site_container.page.anti .page_content .content_main .rules .h3_tit_01,
.site_container.page.terms .page_content .content_main .rules .h3_tit_01 {
}

.site_container.page.anti .page_content .content_main .rules p,
.site_container.page.terms .page_content .content_main .rules p {
  margin-top: 0;
}

.site_container.page .page_content .content_main .rules p {
  font-feature-settings: "palt";
}

/* グローバルaddress用（必要に応じて） */
address {
  font-size: 100%;
  font-feature-settings: "palt";
  line-height: 1.75;
  font-style: normal;
}

/* レスポンシブ対応（スマホ） */
@media screen and (max-width: 600px) {
  .site_container.page .rules {
    width: auto;
  }

  .site_container.page .rules .box {
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 6.67vw;
    padding-left: 0;
  }

  .site_container.page .rules .box:last-child {
    margin-top: 0;
    padding-bottom: 0;
  }

  .site_container.page .rules .h2_tit_01 {
    font-size: 4.8vw;
    margin-top: 6vw;
    margin-bottom: 7.33vw;
    padding-bottom: 1vw;
  }

  .site_container.page .rules .h3_tit_01 {
    font-size: 4vw;
  }

  .site_container.page .rules p {
    margin-bottom: 0;
  }

  .site_container.page .rules li li {
    padding-inline-start: 1.5rem;
  }

  .site_container.page .rules .tbl-info {
    margin-top: 2.5rem;
  }

  .site_container.page .rules .tbl-info th,
  .site_container.page .rules .tbl-info td {
    padding-top: calc(5.362vw - (0.375 * 3.73vw));
    padding-bottom: calc(6.168vw - (0.375 * 3.73vw));
  }

  .site_container.page.privacy-policy .page_content .content_main .rules p:first-child,
  .site_container.page.anti .page_content .content_main .rules p:first-child,
  .site_container.page.terms .page_content .content_main .rules p:first-child {
    margin-top: 6vw;
  }

  .site_container.page.privacy-policy .page_content .content_main .rules p {
    margin-top: 0;
    margin-bottom: 20px;
  }

  .site_container.page.privacy-policy .page_content .content_main .rules p:last-child {
    margin-bottom: 0;
  }

  .site_container.page.terms .page_content .content_main .h3_tit_01:first-of-type {
    margin-top: 5.33vw;
  }
}
