body {
    padding: 2rem;
    font-family: serif;
    writing-mode: horizontal-tb;
}

main {
    counter-reset: chapter figure table;
}

main h2 {
    counter-increment: chapter;
    counter-reset: section;
}

main h3 {
    counter-increment: section;
    counter-reset: subsection;
}

main h4 {
    counter-increment: subsection;
    counter-reset: article;
}

main h5 {
    counter-increment: article;
    counter-reset: subarticle;
}

main h6 {
    counter-increment: subarticle;
}

main h2::before {
    content: "第" counter(chapter, japanese-informal) "章\3000";
}

main h3::before {
    content: "第" counter(section, japanese-informal) "節\3000";
}

main h4::before {
    content: "第" counter(subsection, japanese-informal) "小節\3000";
}

main h5::before {
    content: "第" counter(article, japanese-informal) "条\3000";
}

main h6::before {
    content: "第" counter(subarticle, japanese-informal) "項\3000";
}

main caption {
    counter-increment: table;
}

main caption::before {
    content: "表" counter(table, japanese-informal) "\3000";
}

main figcaption {
    counter-increment: figure;
}

main figcaption::before {
    content: "図" counter(figure, japanese-informal) "\3000";
}

a {
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

rt {
    font-family: serif;
    font-variant-east-asian: ruby;
}

dt > figure {
    display: inline;
    margin: auto;
}

hr {
    height: 0.125rem;
    border-width: 0;
}

dl dt,
dl dd {
    break-inside: avoid;
}

sup,
sub {
    font-variant-caps: all-small-caps;
}

nav {
    column-count: 1;
    column-rule-style: solid;
}

dl {
    column-count: 1;
    column-rule-style: solid;
}

article {
    text-align: justify;
}

article p {
    display: inline;
}

article p:not(:last-child)::after {
    content: "¶";
}

article::first-letter {
    initial-letter: 2;
    -webkit-initial-letter: 2;
    font-weight: bold;
}