/*!
 * normative_final.css
 * 完全修正版
 */

.legal-doc{
  --maxw: 52rem;
  --lh: 1.9;
  --fz: 1rem;
  --gap: .6rem;

  max-width: var(--maxw);
  margin: 0 auto;
  font-size: var(--fz);
  line-height: var(--lh);
}

/* reset inside */
.legal-doc p, .legal-doc h1, .legal-doc h2, .legal-doc pre{ margin: 0; }
.legal-doc{ padding: 0; }

/* ヘッダー */
.law-head{ margin: 1rem 0 1.2rem; }
.law-order{ text-align: right; opacity: .85; }
.law-title{ font-size: 1.15rem; font-weight: 700; margin-top: .2rem; }

/* ナビゲーションメニュー */
.law-nav{
  margin: 1.5rem 0 2rem;
  padding: 1.2rem 1.5rem;
  background: linear-gradient(to bottom, #f8f9fa, #ffffff);
  border: 1px solid #e0e0e0;
  border-radius: .3rem;
  box-shadow: 0 1px 3px rgba(0,0,0,.05);
}

.law-nav ul{
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .4rem .8rem;
}

.law-nav li{
  margin: 0;
}

.law-nav a{
  display: inline-block;
  text-decoration: none;
  color: #0066cc;
  padding: .4rem .8rem;
  border: 1px solid #d0d0d0;
  border-radius: .25rem;
  background: #ffffff;
  font-size: .95rem;
  transition: all .2s ease;
}

.law-nav a:hover{
  background: #0066cc;
  color: #ffffff;
  border-color: #0066cc;
  box-shadow: 0 2px 4px rgba(0,102,204,.2);
}

.law-preamble{ margin: .8rem 0 1rem; }

/* 節見出し：太字、段落間スペース増 */
.law-section{
  font-size: 1.05rem;
  font-weight: 700;
  margin: 2rem 0 1rem;  /* 上下のスペースを増やす */
}

/* 条見出し：太字にしない */
.law-article{
  font-size: 1.05rem;
  font-weight: normal;
  margin: 1.2rem 0 .55rem;
}

.law-article .law-no{ 
  margin-right: 1em;
  white-space: nowrap; 
}

/* 通常の行 */
.law-line{ 
  margin: var(--gap) 0; 
}

/* レベル1（漢数字「一」「二」）：左端から */
.law-item-l1{
  /* インデントなし */
}

.law-item-l1 .law-no{
  margin-right: 1em;
  white-space: nowrap;
}

/* レベル2（括弧付き「(一)」「(二)」）：1字下げ + インデント */
.law-item-l2{
  padding-left: 4em;  /* 1em(1字下げ) + 3em(インデント) */
  text-indent: -1.5em;
}

.law-item-l2 .law-no{
  display: inline-block;
  width: 1.2em;
  margin-right: .3em;
  white-space: nowrap;
}

/* レベル3（カタカナ「イ」「ロ」）：さらにインデント */
.law-item-l3{
  padding-left: 6em;  /* 1em(1字下げ) + 5em(インデント) */
  text-indent: -1.5em;
}

.law-item-l3 .law-no{
  display: inline-block;
  width: 1.2em;
  margin-right: .3em;
  white-space: nowrap;
}

/* レベル4（数字付き括弧「(1)」「(2)」）：さらにインデント */
.law-item-l4{
  padding-left: 8em;  /* 1em(1字下げ) + 7em(インデント) */
  text-indent: -1.5em;
}

.law-item-l4 .law-no{
  display: inline-block;
  width: 1.2em;
  margin-right: .3em;
  white-space: nowrap;
}

/* 旧クラス（互換性のため残す）*/
.law-inline{
  /* 削除予定 */
}

.law-item{
  /* 削除予定 */
}

/* 附則 */
.law-supp{
  font-size: 1.05rem;
  font-weight: normal;
  margin: 1.2rem 0 .55rem;
}

/* 表 */
.law-table{
  margin: .9rem 0;
  width: 100%;
  border-collapse: collapse;
  font-size: .95em;
  line-height: 1.6;
}

.law-table thead th{
  background: #f5f5f5;
  border: 1px solid #ddd;
  padding: .6rem .8rem;
  text-align: left;
  font-weight: 600;
}

.law-table tbody td{
  border: 1px solid #ddd;
  padding: .6rem .8rem;
  vertical-align: top;
}

.law-table tbody tr:nth-child(even){
  background: #fafafa;
}
/*!
 * normative_final.css
 * 完全修正版
 */

.legal-doc{
  --maxw: 52rem;
  --lh: 1.9;
  --fz: 1rem;
  --gap: .6rem;

  max-width: var(--maxw);
  margin: 0 auto;
  font-size: var(--fz);
  line-height: var(--lh);
}

/* reset inside */
.legal-doc p, .legal-doc h1, .legal-doc h2, .legal-doc pre{ margin: 0; }
.legal-doc{ padding: 0; }

/* ヘッダー */
.law-head{ margin: 1rem 0 1.2rem; }
.law-order{ text-align: right; opacity: .85; }
.law-title{ font-size: 1.15rem; font-weight: 700; margin-top: .2rem; }

/* ナビゲーションメニュー */
.law-nav{
  margin: 1.5rem 0 2rem;
  padding: 1.2rem 1.5rem;
  background: linear-gradient(to bottom, #f8f9fa, #ffffff);
  border: 1px solid #e0e0e0;
  border-radius: .3rem;
  box-shadow: 0 1px 3px rgba(0,0,0,.05);
}

.law-nav ul{
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .4rem .8rem;
}

.law-nav li{
  margin: 0;
}

.law-nav a{
  display: inline-block;
  text-decoration: none;
  color: #0066cc;
  padding: .4rem .8rem;
  border: 1px solid #d0d0d0;
  border-radius: .25rem;
  background: #ffffff;
  font-size: .95rem;
  transition: all .2s ease;
}

.law-nav a:hover{
  background: #0066cc;
  color: #ffffff;
  border-color: #0066cc;
  box-shadow: 0 2px 4px rgba(0,102,204,.2);
}

.law-preamble{ margin: .8rem 0 1rem; }

/* 節見出し：太字、段落間スペース増 */
.law-section{
  font-size: 1.05rem;
  font-weight: 700;
  margin: 2rem 0 1rem;  /* 上下のスペースを増やす */
}

/* 条見出し：太字にしない */
.law-article{
  font-size: 1.05rem;
  font-weight: normal;
  margin: 1.2rem 0 .55rem;
}

.law-article .law-no{ 
  margin-right: 1em;
  white-space: nowrap; 
}

/* 通常の行 */
.law-line{ 
  margin: var(--gap) 0; 
}

/* レベル1（漢数字「一」「二」）：左端から */
.law-item-l1{
  /* インデントなし */
}

.law-item-l1 .law-no{
  margin-right: 1em;
  white-space: nowrap;
}

/* レベル2（括弧付き「(一)」「(二)」）：1字下げ + インデント */
.law-item-l2{
  padding-left: 4em;  /* 1em(1字下げ) + 3em(インデント) */
  text-indent: -1.5em;
}

.law-item-l2 .law-no{
  display: inline-block;
  width: 1.2em;
  margin-right: .3em;
  white-space: nowrap;
}

/* レベル3（カタカナ「イ」「ロ」）：さらにインデント */
.law-item-l3{
  padding-left: 6em;  /* 1em(1字下げ) + 5em(インデント) */
  text-indent: -1.5em;
}

.law-item-l3 .law-no{
  display: inline-block;
  width: 1.2em;
  margin-right: .3em;
  white-space: nowrap;
}

/* レベル4（数字付き括弧「(1)」「(2)」）：さらにインデント */
.law-item-l4{
  padding-left: 8em;  /* 1em(1字下げ) + 7em(インデント) */
  text-indent: -1.5em;
}

.law-item-l4 .law-no{
  display: inline-block;
  width: 1.2em;
  margin-right: .3em;
  white-space: nowrap;
}

/* 旧クラス（互換性のため残す）*/
.law-inline{
  /* 削除予定 */
}

.law-item{
  /* 削除予定 */
}

/* 附則 */
.law-supp{
  font-size: 1.05rem;
  font-weight: normal;
  margin: 1.2rem 0 .55rem;
}

/* 表 */
.law-table{
  margin: .9rem 0;
  width: 100%;
  border-collapse: collapse;
  font-size: .95em;
  line-height: 1.6;
}

.law-table thead th{
  background: #f5f5f5;
  border: 1px solid #ddd;
  padding: .6rem .8rem;
  text-align: left;
  font-weight: 600;
}

.law-table tbody td{
  border: 1px solid #ddd;
  padding: .6rem .8rem;
  vertical-align: top;
}

.law-table tbody tr:nth-child(even){
  background: #fafafa;
}
