@charset "UTF-8";
/************************************
** 規約系ページ専用CSS
************************************/

/* 全角数字のリスト番号用。1〜9は全角、10以上は decimal にフォールバック（Chrome で10が0になる不具合対策） */
@counter-style terms-fullwidth {
  system: fixed;
  symbols: "１" "２" "３" "４" "５" "６" "７" "８" "９";
  suffix: "．";
  range: 1 9;
  fallback: decimal;
}

/* 全角数字・ suffix なし（(１)(２) 等のカッコ付き用） */
@counter-style terms-fullwidth-paren {
  system: fixed;
  symbols: "１" "２" "３" "４" "５" "６" "７" "８" "９";
  suffix: "";
  range: 1 9;
  fallback: decimal;
}

/* お引越しCSSの上書き */
.container {
  margin: 0 auto;
}
.pages {
  padding-top: 60px;
}
.content {
  margin: 0 auto;
}
.page_law .container {
  margin: 0 auto;
  width: 60% !important;
}
#footer {
  background-color: var(--color-grayscale-090);
}

/* common */
.terms__container {
  margin: 0 auto;
  max-width: 690px !important;
  width: 100%;
}
.terms .content__heading--main {
  margin-bottom: 32px;
}
.terms__heading_S {
  font-size: var(--font-size-heading-S);
  margin-bottom: 16px;
}
.terms__description p {
  margin-bottom: 32px;
}
.terms__tableWrapper {
  margin-bottom: 32px;
  overflow: auto;
}
.terms,
.terms .content__heading--main,
.terms dd,
.terms li {
  color: var(--color-grayscale-020);
}

.terms dt,
.terms dd,
.terms li {
  font-size: var(--font-size-content-S);
}
.terms dt {
  margin-bottom: 8px;
}

/* 言語選択ボタン */
.language-btn-wrapper {
  margin-bottom: 16px;
}

/* 定義リスト */
.terms dd:last-of-type {
  margin-bottom: 0;
}
.terms__box {
  margin-bottom: 32px;
}
.terms__box dt {
  font-size: var(--font-size-content-M);
  margin-bottom: 8px;
}
.terms__box dd {
  margin-bottom: 24px;
}
.terms__box dd:last-of-type {
  margin-bottom: 0;
}
.terms__box li {
  margin-bottom: 8px;
  padding-left: 18px;
  text-indent: -18px;
}

/* 番号リスト（ol）はCSSの list-style で表示 */
.terms__container ol {
  list-style-type: terms-fullwidth;
  padding-left: 2rem;
}

/* 入れ子の ol：番号を (１) (２) のように全角・カッコ付きで表示 */
.terms__container ol.terms__list--paren {
  list-style: none;
  margin: 16px 0;
  padding-left: 2rem;
}
.terms__container .terms__box > li {
  margin-bottom: 16px;
  padding-left: .25em;
  text-indent: 0;
}
ol.terms__list--paren > li::before {
  content: '(' counter(list-item, terms-fullwidth-paren) ') ';
  margin-right: .25em;
}
ol.terms__list--paren > li {
  padding-left: 0;
}

/* 中黒（・）のリスト */
.terms__list--dot {
  list-style: none;
  margin: 8px 0 16px;
  padding-left: 1.5em;
}
.terms__list--dot li {
  padding-left: .25em;
  text-indent: 0;
}
.terms__list--dot li::before {
  content: '・';
  margin-right: .25em;
}
.terms__companyInfo {
  border: 1px solid var(--color-grayscale-070);
  border-radius: 8px;
  margin: 16px 0;
  padding: 16px 24px;
}
.terms__companyInfo .title {
  border-bottom: 1px solid var(--color-grayscale-070);
  font-size: var(--font-size-content-S);
  font-weight: bold;
  margin-bottom: 16px;
  padding-bottom: 8px;
}
.terms__companyInfo .companyName {
  font-size: var(--font-size-content-S);
  font-weight: bold;
  margin-bottom: 4px;
}
.terms__companyInfo .companyAddress {
  margin-bottom: 8px;
}

/* 改訂履歴 */
.terms__revisionHistory {
  margin-bottom: 32px;
}

/* メディア・メルマガ規約 */
.terms__section {
  margin-bottom: 32px;
}
.terms__heading {
  border-left: 4px solid var(--color-grayscale-060);
  font-size: var(--font-size-emphasize);
  font-weight: bold;
  margin-bottom: 16px;
  padding-left: 8px;
}
