@charset "utf-8";

.document {
    overflow: hidden;
    line-height: 2;
}

@media only screen and (min-width: 992px ) {
  .document .container{
      max-width: 880px;
  }
}

.document ul {
    padding-left: 1.5em;
}
.document ul > li {
    list-style-type: disc;
}
.document ol {
    padding-left: 1.5em;
}

/*
 * 番号付きリストのネスト表記
 * 1段目: 1. 2. 3.
 * 2段目: (1) (2) (3)
 * 3段目: ①②③（21項目目以降はブラウザにより表記が異なる場合あり）
 */
@counter-style doc-circled-decimal {
    system: fixed;
    symbols: '①' '②' '③' '④' '⑤' '⑥' '⑦' '⑧' '⑨' '⑩' '⑪' '⑫' '⑬' '⑭' '⑮' '⑯' '⑰' '⑱' '⑲' '⑳';
    suffix: ' ';
}

.document ol > li {
    list-style-type: decimal;
}

/* 2段目: (1)(2) — ::marker は .document の overflow:hidden で欠けやすいため ::before を使用 */
.document ol > li > ol {
    list-style-type: none;
    counter-reset: doc-ol-paren;
}

.document ol > li > ol > li {
    counter-increment: doc-ol-paren;
    list-style-type: none;
    position: relative;
    padding-inline-start: 2.5em;
}

.document ol > li > ol > li::before {
    position: absolute;
    left: 0;
    top: 0;
    width: 2.25em;
    text-align: start;
    content: '(' counter(doc-ol-paren, decimal) ') ';
    font-variant-numeric: tabular-nums;
}

/* 3段目: ①②③（L2 の ::before を無効化してネイティブマーカーを使う） */
.document ol > li > ol > li > ol {
    list-style-type: doc-circled-decimal;
}

.document ol > li > ol > li > ol > li {
    list-style-type: doc-circled-decimal;
    padding-inline-start: 2em;
}

.document ol > li > ol > li > ol > li::before {
    content: none;
    display: none;
}

.document ol > li > ol > li > ol > li::marker {
    content: normal;
}

.document ol.list_parentheses{
  padding: 0;
}
.document ol.list_parentheses > li{
  list-style-type:none;
  counter-increment: cnt;
}
.document ol.list_parentheses > li:before{
  display: marker;
  content: "(" counter(cnt) ") ";
}
.document ul .indent,
.document ol .indent {
    padding-left: 1.5em;
}

/*
 * 見出し（a. b. c. 等）の直後で、ネストなしに (1)(2)… を付けたい番号付きリスト
 * （カスタマーハラスメント方針の箇条書きなど）
 */
.document ol.list_top_paren {
    list-style-type: none;
    counter-reset: doc-ol-paren-top;
    padding-left: 0;
    margin-bottom: 1.5em;
}

.document ol.list_top_paren > li {
    counter-increment: doc-ol-paren-top;
    list-style-type: none;
    position: relative;
    padding-inline-start: 2.5em;
}

.document ol.list_top_paren > li::before {
    position: absolute;
    left: 0;
    top: 0;
    width: 2.25em;
    text-align: start;
    content: '(' counter(doc-ol-paren-top, decimal) ') ';
    font-variant-numeric: tabular-nums;
}

.document h4 + ol.list_top_paren {
    margin-top: 0.35em;
}

/* アコーディオン見出し（set.css の .accordion と併用） */
.document .accordion {
    cursor: pointer;
    margin-bottom: 0;
}
.document .accordion + .collapse {
    margin-bottom: 1em;
}

/*
 * Tailwind dist の .collapse { visibility: collapse } が Bootstrap の .collapse と衝突し、
 * 展開直後は見えて完了後に本文が消える。FAQ（faq-archive.css）と同様に上書きする。
 * set.css の .collapse { overflow: hidden } も長文で欠けるため展開後は visible。
 */
.document .collapse,
.document .collapse.collapsing {
    visibility: visible;
}
.document .collapse.show {
    overflow: visible;
}

.document a:not(.btn) {
    border-bottom: 1px solid currentColor;
}
.document h3 {
    margin-top: 50px;
    margin-bottom: 20px;
    font-size: 20px;
    letter-spacing: .05em;
}
.document h4 {
    margin: 0;
    line-height: inherit;
    text-align: left;
    font-size: 18px;
}
.document h5 {
    margin-top: 0;
    margin-bottom: 10px;
    font-size: 16px;
}

.document figure {
    margin-bottom: 15px;
    overflow-x: auto;
}

.document p.cap {
    font-size: 11px;
    color: #707372;
}

.document hr {
    margin-top: 75px;
    margin-bottom: 75px;
    border-top: 1px solid #F4F4F3;
}
@media only screen and (max-width: 767px ) {
  .document hr {
      margin-top: 50px;
      margin-bottom: 50px;
  }
}

table.table {
    width: 100%;
    color: inherit;
    border-right: 1px solid #44443C;
    border-bottom: 1px solid #44443C;
}
@media only screen and (max-width: 767px ) {
  table.table {
      width: auto;
      min-width: 100%;
  }
}
table.table thead {
    background: #E1E0DF;
}
table.table th,
table.table td {
    padding: 1em;
    border-top: 1px solid #44443C;
    border-left: 1px solid #44443C;
    border-bottom: 0;
    font-weight: normal;
    vertical-align: middle;
    font-size: 12px;
    text-align: center;
    white-space: nowrap;
}
table.table td {
    text-align: center;
}
table.table p {
    margin: 0;
    text-align: left;
}
.th_bg_slash {
    position: relative;
    overflow: hidden;
    min-width: 200px;
}
.th_bg_slash::after {
    content: '';
    display: block;
    margin: 0 auto;
    background: #44443C;
    width: 1px;
    height: 150%;
    -wbkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transform-origin: center center;
    position: absolute;
    top: -25%;
    left: 50%;
    opacity: .5;
}
.th_bg_slash p:nth-of-type(1) {
    text-align: right;
    padding-left: 45%;
}
.th_bg_gray {
    background: #EAE9E7;
}


/*********************
PRINT STYLESHEET
*********************/
@media print {
  * {
    position: static !important;
    background: transparent !important;
    color: black !important;
    text-shadow: none !important;
    filter: none !important;
    -ms-filter: none !important; }

  a, a:visited {
    display: block !important;
    color: #444 !important;
    text-decoration: underline; }

  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }

  pre, blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }

  thead {
    display: table-header-group; }

  tr, img {
    page-break-inside: avoid; }

  img {
    display: block !important;
    max-width: 100% !important; }

  @page {
    margin: 0.5cm; }
  p, h2, h3 {
    orphans: 3;
    widows: 3; }

  h2,
  h3 {
    page-break-after: avoid; }

  .sidebar,
  .page-navigation,
  .wp-prev-next,
  .respond-form,
  nav,
  .navBar__left,
  .navBar__right {
    display: none !important; }

  .navBar__logo {
    width: 200px !important;
  }

  #footer {
    margin-top: 50px !important; }

}
