@charset "utf-8";
/*------------------------------------------------------------
  ユーザ利用規約
------------------------------------------------------------*/

.container {
  margin-bottom: 65px;
}

p, dl, dt, dd, li {
  line-height: 1.8rem;
}

#enactment {
  text-align: right;
  margin-bottom: 1rem;
  font-size: 1.2rem
}

ul.default {
  list-style: outside disc;
  margin: 0.45rem;
  margin-left: 3.6rem;
  padding: 0;
}

ul.default>li {
  margin-bottom: 0rem;
}

/* comment-dl */
.comment-dl>dd {
  margin-bottom: 30px;
  padding-left: 16px;
}

.comment-dl>dd:last-child {
  margin-bottom: 0;
}

.comment-dl>dd p {
  margin-bottom: 15px;
}

.comment-dl>dd p:last-child {
  margin-bottom: 0;
}

.comment-dl+.comment-dl {
  margin-top: 28px;
}

.comment-dl p a:hover {
  text-decoration: underline;
}

/*------------------------------------------------------------
  プライバシーポリシー・GDPRプライバシーポリシー同意確認
------------------------------------------------------------*/

div.policy {
  /* 見出し連番初期化 */
  counter-reset: h2_title 0;

  /* 見出し */
  h2 {
    counter-reset: p_num 0;
    counter-increment: h2_title 1;
    margin-bottom: 0.4rem;
    padding: 0.7em 0.5em;
    line-height: 1.8rem;
    background: #E7E6E6;
    border-left: solid 1.5em #333F50;
    font-size:120%;
    &::before { content: counter(h2_title) ".  "; }
  }

  /* 本文レベル (ネスト可) */
  div.body {
    counter-reset: p_num 0;
    counter-reset: l_alpha 0;
    counter-reset: u_alpha 0;
    margin-bottom: 0.4rem;
    padding: 0.9rem;

    & div.body {
      padding:0;
      padding-left: 2rem;
    }
  }

  /* 番号・英小文字見出し付き本文 */
  p.num, p.lower_alphabet {
    position: relative;
    padding-left: 1.8rem;

    &::before {
      position: absolute;
      top: 0;
      left: 0;
    }
  }

  /* 番号付き本文 */
  p.num {
    counter-increment: p_num 1;

    &::before { content: "(" counter(p_num) ") "; }
  }

  /* 英小文字見出し付き本文 */
  p.lower_alphabet {
    counter-increment: l_alpha 1;

    &::before { content: counter(l_alpha, lower-alpha) ") "; }
  }

  /* 見出し的本文 */
  p.title {
    margin-top: 0.8rem;
  }

  /* 箇条書き共通部 */
  ul, ol {
    margin: 0.45rem;
    margin-left: 3.6rem;
    padding: 0;
  }

  li {
    line-height: 1.8rem;
  }

  ul li {
    list-style-type: disc;
  }

  /* 番号付き箇条書き */
  ol {
    counter-reset: ol_counter 0;

    & li {
      /* 番号付き箇条書き・独自連番変数 */
      counter-increment: ol_counter 1;
      list-style-type: none;
      position: relative;

      &::before {
        position: absolute;
        top: 0;
      }

      /* 小文字ローマ数字 */
      ol.i &::before {
        display: inline-block;
        width: 2.5em;
        text-align: right;
        left: -3em;
        content: counter(ol_counter, lower-roman) ".";
      }

      /* カッコつき数字 */
      ol.num &::before {
        left: -2em;
        content: "(" counter(ol_counter) ") ";
      }

      /* 大文字アルファベット */
      ol.upper_alphabet &::before {
        left: -1.5em;
        content: counter(ol_counter, upper-alpha) ") ";
      }
    }
  }

  /* 画像を垂直方向に中央揃え */
  .align_middle {
    vertical-align: middle;
  }
}

/*------------------------------------------------------------
  登録申請確認
------------------------------------------------------------*/
span.mail_address {
  overflow-wrap: break-word;
}

span.purpose {
  overflow-wrap: break-word;
}
