html {
  font-family: '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro',
    'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif;
  font-size: 16px;
  color: #333333;
}

body {
  max-width: 1200px;
  line-height: 1.5em;
  margin: 6em auto;
  color: #333337;
  padding: 0 2em;
  word-wrap: break-word;
}

h1 {
  text-align: center;
  margin-bottom: 2em;
  font-size: 1.5em;
}

ul,
ol {
  padding-inline-start: 24px;
}

/* 1段目の1)スタイル（parentheses クラス用） */
ol.parentheses {
  list-style-type: none;
  counter-reset: item;
  padding-inline-start: 16px;
}

ol.parentheses > li {
  display: block;
  position: relative;
  padding-left: 24px;
}

ol.parentheses > li:before {
  content: counter(item) ")";
  counter-increment: item;
  position: absolute;
  left: 0;
  min-width: 20px;
  text-align: right;
}

/* ネストしたリストの1.スタイル */
ol ol {
  list-style-type: none;
  counter-reset: item;
  padding-inline-start: 16px;
}

ol ol > li {
  display: block;
  position: relative;
  padding-left: 24px;
}

ol ol > li:before {
  content: counter(item) ".";
  counter-increment: item;
  position: absolute;
  left: 0;
  min-width: 20px;
  text-align: right;
}

/* 別紙の見出しを右寄せ */
h1.appendix-title {
  margin-top: 2em;
  font-size: 1.2em;
  text-align: right;
  position: relative;
  font-weight: normal;
}

h1.appendix-title::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #333;
  margin-bottom: 1em;
}

table {
  width: 100%;
  border-collapse: collapse;
  margin: 1em 0;
}

th,
td {
  border: 1px solid #ddd;
  padding: 8px;
  text-align: left;
}

th {
  background-color: #f5f5f5;
  font-weight: bold;
}

tr:nth-child(even) {
  background-color: #f9f9f9;
}
