:root {
    --body_color: #000000;
    --body_background_color: #ffffff;
    --body_font_size: 100%;
    --body_line_height: 1.6;
    --midashi_color: #000000;
    --midashi_background_color: transparent;
    --a_color: #0000ee;
    --anchorhighlight_color: #ffff00;
    --img_filter_invert: none;
    --color_red: #ff0000;
    --color_icon_red: #f33699;
    --color_pink: #ffc0cb;
    --color_gray: #777777;
    --color_light_gray: #dddddd;
    --font_main: serif;
    --font_gothic: sans-serif;
    --furigana_flg: 1;
    --font_number: serif;
}

body {
    color: #000000;
    background-color: #ffffff;
    font-size: 100%;
    line-height: 1.6;
    font-family: serif;
}

.anchorhighlight {
    animation: highlight 1.5s none;
}
@keyframes highlight { 10% {
		
		background-color:#ffff00;
	}
	80% {
		
		background-color:#ffff00;
	}
	100% {
		
		background-color:transparent;
	}
10% {
		
		background-color:#ffff00;
	}
	80% {
		
		background-color:#ffff00;
	}
	100% {
		
		background-color:transparent;
	}
10% {
		
		background-color:#ffff00;
	}
	80% {
		
		background-color:#ffff00;
	}
	100% {
		
		background-color:transparent;
	}
10% {
		
		background-color:#ffff00;
	}
	80% {
		
		background-color:#ffff00;
	}
	100% {
		
		background-color:transparent;
	} }
.FindItem {
    font-style: normal;
    padding: 0 3px;
    background-color: #FFCC66;
}
body.dark .FindItem {
    font-style: normal;
    padding: 0 3px;
    background-color: #ff8800;
}
.FindItem2 {
    font-style: normal;
    padding: 0 3px;
    background-color: #87cefa;
}
body.dark .FindItem2 {
    font-style: normal;
    padding: 0 3px;
    background-color: #009dff;
}
body {
    margin: 0;
    padding: 8px 8px 8px 8px;
    color: #000000;
    background-color: #ffffff;
    font-family: serif;
    font-size: 100%;
    line-height: 1.6;
}
img {
    user-select: none;
    image-rendering: -webkit-optimize-contrast;
}
a {
    text-decoration: none;
}
a[href] {
    color: #0000ee;
    --body_color: #0000ee;
}
.footer {
    position: fixed;
    right: 0.1em;
    top: 0.1em;
    margin: 0;
}
.footer_title {
    display: inline-block;
    padding: 0.5em 0.2em;
    border: 1px solid #555555;
    border-radius: 0.25em;
    background-color: #ffffff;
    font-size: 0.8em;
    line-height: 1.1em;
}
.footer_button {
    display: inline-block;
    padding: 0.5em 0.2em;
    border: 1px solid #555555;
    border-radius: 0.25em;
    background-color: #ffffff;
    font-size: 0.8em;
    line-height: 1.1em;
}
svg {
    image-rendering: -webkit-optimize-contrast;
}
html {
    margin: 0;
    padding: 0;
}
html.h {
    -ms-writing-mode: lr-tb;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
}
i {
    margin-top: 0.1em;
}
sub {
    vertical-align: baseline;
    font-size: 80%;
}
sup {
    font-size: 75%;
}
b {
    font-family: sans-serif;
}
.homophone_1 {
    display: inline-block;
    -ms-writing-mode: lr-tb;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    color: #ff0000;
    text-align: center;
    text-indent: 0;
    font-weight: bold;
    margin: 0 2px 0 2px;
}
.homophone_3 {
    display: inline-block;
    -ms-writing-mode: lr-tb;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    color: #ff0000;
    text-align: center;
    text-indent: 0;
    font-weight: bold;
    margin: 0 2px 0 2px;
}
.homophone_2 {
    display: inline-block;
    color: #ff0000;
    text-align: center;
    text-indent: 0;
    font-weight: bold;
    margin: 0 2px 0 2px;
}
.midashi_kana {
    font-size: 1.2em;
    font-weight: bold;
    font-family: sans-serif;
}
.not_listed_mark {
    display: inline-block;
    font-size: 0.6em;
    vertical-align: middle;
}
.not_common_mark {
    display: inline-block;
    font-size: 0.6em;
    vertical-align: middle;
}
.ateji_mark {
    display: inline-block;
}
.pos_usage {
    font-family: sans-serif;
    font-size: 0.875em;
}
.original_domicile {
    font-size: 0.875em;
}
.mj_ruby_body {
    display: inline-flex;
    flex-direction: column;
    vertical-align: super;
    margin: 0.2em;
}
.mj_ruby {
    font-size: 0.5em;
    line-height: 1.25em;
}
.rhetorical {
    display: inline-block;
    padding: 2px 4px 1px 2px;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    line-height: 1.0em;
    text-align: center;
    text-indent: 0;
    white-space: nowrap;
    vertical-align: baseline;
    color: #ffffff;
    background-color: #000000;
    border: 1px solid;
    border-radius: 1.0em;
    border-color: #000000;
}
.archaic_word {
    display: inline-block;
    padding: 1px 4px 1px 2px;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    line-height: 1.0em;
    text-align: center;
    text-indent: 0;
    white-space: nowrap;
    vertical-align: baseline;
    color: #ffffff;
    background-color: #000000;
    border: 1px solid;
    border-radius: 1.0em;
    border-color: #000000;
}
.work_title {
    display: inline-block;
    padding: 2px 4px 1px 2px;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    line-height: 1.0em;
    text-align: center;
    text-indent: 0;
    white-space: nowrap;
    vertical-align: baseline;
    color: #ffffff;
    background-color: #000000;
    border: 1px solid;
    border-radius: 1.0em;
    border-color: #000000;
}
.person_name {
    display: inline-block;
    padding: 2px 4px 1px 2px;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    line-height: 1.0em;
    text-align: center;
    text-indent: 0;
    white-space: nowrap;
    vertical-align: baseline;
    color: #ffffff;
    background-color: #000000;
    border: 1px solid;
    border-radius: 1.0em;
    border-color: #000000;
}
.image_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    padding: 2px 4px 1px 2px;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    color: #ffffff;
    background-color: #000000;
    border: 0.1em solid;
    border-radius: 5px;
    border-color: #000000;
    margin-left: 3px;
    margin-right: 3px;
}
.season_mark {
    display: inline-block;
    padding: 2px 2px 1px 1px;
    font-family: sans-serif;
    font-size: 0.9em;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    color: #ffffff;
    background-color: #000000;
    border: 1px solid;
    border-radius: 5px;
    border-color: #000000;
    font-weight: bold;
    text-indent: 0;
    margin: 0 5px 0 3px;
}
.derivative_mark {
    display: inline-block;
    padding: 2px 2px 1px 1px;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    border: 1px solid;
    border-radius: 5px;
    margin-right: 0.2em;
    text-indent: 0;
    margin: 0 5px 0 3px;
}
.possibilityG_mark {
    display: inline-block;
    padding: 2px 4px 1px 2px;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    border: 1px solid;
    border-radius: 5px;
    margin-right: 0.2em;
}
.etymological_info_mark {
    display: inline-block;
    padding: 2px 2px 1px 1px;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    border: 1px solid;
    border-radius: 5px;
    margin-right: 0.2em;
    text-indent: 0;
    margin: 0 5px 0 3px;
}
.example_mark {
    display: inline-block;
    padding: 2px 4px 1px 2px;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    border: 1px solid;
    border-radius: 5px;
    margin-right: 0.2em;
}
.onkun_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    color: #ff0000;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 2px 2px 1px 1px;
    border: 1px solid;
    margin-right: 0.2em;
    text-indent: 0;
    margin: 0 5px 0 3px;
}
.relationG_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    color: #ff0000;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 2px 2px 1px 1px;
    border: 1px solid;
    border-radius: 5px;
    margin: 0 5px 0 3px;
    text-indent: 0;
}
.antonymG_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    color: #ff0000;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 2px 2px 1px 1px;
    border: 1px solid;
    border-radius: 5px;
    margin: 0 5px 0 3px;
    text-indent: 0;
}
.synonymG_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    color: #ff0000;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 2px 2px 1px 1px;
    border: 1px solid;
    border-radius: 5px;
    margin: 0 5px 0 3px;
    text-indent: 0;
}
.derivation_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    color: #ff0000;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 2px 2px 1px 1px;
    border: 1px solid;
    border-radius: 5px;
    margin: 0 5px 0 3px;
    text-indent: 0;
}
.warning_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    color: #ffffff;
    background-color: #ff0000;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 2px 2px 1px 1px;
    border: 1px solid;
    border-radius: 5px;
    text-indent: 0;
    margin: 0 5px 0 3px;
}
.reference_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    color: #ffffff;
    background-color: #ff0000;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 2px 2px 1px 1px;
    border: 1px solid;
    border-radius: 5px;
    text-indent: 0;
    margin: 0 5px 0 3px;
}
.usage_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    color: #ffffff;
    background-color: #ff0000;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 2px 2px 1px 1px;
    border: 1px solid;
    border-radius: 5px;
    text-indent: 0;
    margin: 0 5px 0 3px;
}
.comparative_infoG_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    color: #ffffff;
    background-color: #ff0000;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 2px 2px 1px 1px;
    border: 1px solid;
    border-radius: 5px;
    text-indent: 0;
    margin: 0 5px 0 3px;
}
.honorificG_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    color: #ffffff;
    background-color: #ff0000;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 2px 2px 1px 1px;
    border: 1px solid;
    border-radius: 5px;
    text-indent: 0;
    margin: 0 5px 0 3px;
}
.modestyG_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    color: #ffffff;
    background-color: #ff0000;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 2px 2px 1px 1px;
    border: 1px solid;
    border-radius: 5px;
    text-indent: 0;
    margin: 0 5px 0 3px;
}
.compare_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    color: white;
    background-color: #ff0000;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 2px 4px 1px 2px;
    border: 1px solid;
    border-radius: 5px;
    margin-left: -1.0em;
}
.oyaji_yomi {
    font-size: 1.2em;
    font-weight: bold;
    font-family: sans-serif;
}
.oyaji {
    font-size: 1.5em;
    font-weight: bold;
}
.oyaji_stroke_count {
    font-size: 0.6em;
    font-weight: normal;
}
.oyaji_stroke_num {
    display: inline-block;
    text-align: center;
    margin: 0.2em;
}
.oyaji_trad_char_group {
    font-size: 0.75em;
}
.oyaji_trad_char {
    margin: 0 -0.8em 0 -0.5em;
}
.stroke_cut_group {
    display: inline-block;
    margin-left: 0.5em;
    border-left: 1px solid #000000;
    height: 1.5em;
}
.stroke_cut {
    height: 1.5em;
    width: auto;
    vertical-align: middle;
    margin-left: 0.5em;
    filter: invert(none);
}
.conj_seg {
    transform: translateY(-0.25em);
    display: inline-block;
    height: 0.6em;
}
.word_form {
    transform: scaleY(0.5) translateY(-0.25em);
    display: inline-block;
    height: 0.5em;
    text-indent: 0;
}
.empty_onkun {
    margin-right: 0.5em;
}
.okuri_hyph {
    height: 0.5em;
}
.dai_gogi_num {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    color: #ffffff;
    background-color: #000000;
    line-height: 1.0em;
    height: 1.0em;
    width: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 1px 1px 0 0;
    border: 1px solid;
    border-radius: 0;
    border-color: #000000;
    margin-right: 0.1em;
    text-indent: 0;
}
.dai_gogi_num2 {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.8em;
    line-height: 1.0em;
    height: 1.0em;
    width: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 1px;
    border: 1px solid;
    border-radius: 0;
    text-indent: 0;
}
.gogi_num {
    display: inline-block;
    height: 1.0em;
    width: 1.0em;
    font-family: "NotoSansJP",serif;
    font-size: 0.9em;
    line-height: 1.0em;
    color: #ffffff;
    background-color: #000000;
    padding: 1px 2px 1px 1px;
    border-radius: 1.0em;
    text-combine-upright: all;
    -webkit-text-combine: horizontal;
    text-align: center;
    text-indent: 0;
    border: 1px solid;
    border-color: #000000;
    margin-right: 0.2em;
}
.gogi_num2 {
    display: inline-block;
    height: 1.1em;
    width: 1.0em;
    font-family: "NotoSansJP",serif;
    font-size: 0.7em;
    line-height: 1.0em;
    padding: 2px 2px 2px 2px;
    text-combine-upright: all;
    -webkit-text-combine: horizontal;
    text-align: center;
    border: 1px solid;
    border-radius: 1.0em;
}
.fukugi {
    display: block;
    margin-left: 0.5em;
}
.fukugi_num {
    display: inline-block;
    font-size: 0.8em;
    height: 1.0em;
    width: 1.0em;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    padding: 0 1px 0 0;
    border: 1px solid;
    border-radius: 1.0em;
    font-family: sans-serif;
    text-indent: 0;
}
.ref_kanji_yomi {
    font-family: sans-serif;
}
.item_ku {
    margin-left: 1.0em;
    margin-top: 0.2em;
}
.homophone_ku_1 {
    display: inline-block;
    margin-left: -0.3em;
    color: #ff0000;
    font-weight: bold;
}
.homophone_ku_2 {
    display: inline-block;
    margin-left: -0.3em;
    color: #ff0000;
    font-weight: bold;
}
.homophone_ku_3 {
    display: inline-block;
    margin-left: -0.3em;
    color: #ff0000;
    font-weight: bold;
}
.midashi_ku {
    font-family: sans-serif;
    font-weight: bold;
}
.compare_column {
    border-style: solid;
    border-color: #ff0000;
    margin: 0.5em 1.0em;
}
.compare_item {
    margin-left: 1.0em;
}
.bottom_parts {
    margin-left: 2.0em;
}
.bottom_logo_mark {
    display: inline-block;
    color: #ff0000;
}
.same_bottom_table {
    border-collapse: collapse;
    margin-left: 2.5em;
}
.same_bottom_td {
    border: 1px dotted #000000;
    padding: 0 0.2em;
    text-align: justify;
}
.midashi_dash {
    display: inline-block;
    height: 2.0em;
    text-indent: 0;
    transform: scaleY(1.8) translate(-2px, 0.5em);
}
.source {
    font-size: 0.9em;
}
.abbrev_mark_s {
    margin-left: -0.5em;
}
.paraphG_s2 {
    display: inline-block;
    height: 0.8em;
    margin-left: -0.25em;
}
.em_textbook {
    font-size: 1.125em;
}
.yokoC {
    display: inline-block;
    margin: 0 0.1em;
}
.yokoC_copyright {
    display: inline-block;
    margin: 0 0.1em;
}
.yoko_in_tate {
    display: inline-block;
    margin: 0 0.1em;
    text-indent: 0;
}
.rotate90 {
    display: inline-block;
    transform: rotate(90deg);
}
.add_noteG_block {
    display: block;
}
.add_noteG_inline {
    display: inline;
}
.add_noteG_inline .usage_exampleG {
    display: inline;
}
.referG_mark {
    margin-left: 0.5em;
    margin-right: 0.2em;
    font-family: serif;
}
.refer_compare_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.8em;
    font-weight: bold;
    color: #ff0000;
    line-height: 0.9em;
    text-align: center;
    white-space: nowrap;
    padding: 3px 5px 2px 3px;
    border: 1px solid;
    border-radius: 1.0em;
    margin-right: 3px;
}
.refer_apendix_title {
    font-family: sans-serif;
}
.refer_image_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.9em;
    font-weight: bold;
    padding: 2px 4px 1px 2px;
    line-height: 1.0em;
    text-align: center;
    white-space: nowrap;
    color: #ffffff;
    background-color: #0000ee;
    border: 0.1em solid;
    border-radius: 5px;
    border-color: #0000ee;
    margin-left: 3px;
    margin-right: 3px;
}
.refer_logo_mark {
    display: inline-block;
    font-family: sans-serif;
    font-size: 0.8em;
    font-weight: bold;
    color: #ff0000;
    line-height: 0.9em;
    text-align: center;
    white-space: nowrap;
    padding: 3px 5px 2px 3px;
    border: 1px solid;
    border-radius: 1.0em;
    margin-right: 3px;
}
.italic {
    font-style: italic;
}
.gothic {
    font-family: sans-serif;
}
.quater_size {
    font-size: 0.25em;
}
.fraction {
    display: inline-block;
    text-align: center;
}
.fraction .integer {
    display: inline-block;
    -ms-writing-mode: lr-tb;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    position: relative;
    left: 2.2em;
    bottom: -0.5em;
    margin-left: -1.5em;
}
.fraction .numerator {
    display: inline-block;
    -ms-writing-mode: lr-tb;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
}
.fraction .denominator {
    display: inline-block;
    -ms-writing-mode: lr-tb;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    border-left: 1px solid #000;
}
.set_color_red {
    color: #ff0000;
}
.birth_death_years {
    display: inline-flex;
    flex-direction: column;
    margin-left: 0.5em;
    margin-right: 0.5em;
    width: 1.5em;
}
.birth_death_years_s {
    display: inline-block;
    transform: translateX(0em) translateY(-1em);
}
.birth_death_years_e {
    display: inline-block;
    transform: translateX(2.7em) translateY(2em);
}
.birth_years {
    font-size: 0.5em;
    line-height: 1.25em;
    display: inline-block;
    transform: translateX(2.7em);
}
.death_years {
    font-size: 0.5em;
    line-height: 1.25em;
    display: inline-block;
    transform: translateX(2.7em);
}
.birth_death_years .middle_dot_mark:nth-of-type(4) {
    transform: translateX(2.7em) translateY(2.2em);
}
.birth_death_years .birth_years:nth-of-type(5) {
    transform: translateX(8.1em) translateY(6em);
}
.birth_death_years .death_years:nth-of-type(6) {
    transform: translateX(8.1em) translateY(6em);
}
.birth_death_years .birth_death_years_e:nth-of-type(7) {
    transform: translateX(5.4em) translateY(5.5em);
    margin-right: 4.5em;
}

.imgcut {
    display: block;
    max-width: 100%;
    padding: 5px;
    box-sizing: border-box;
}

.image_cut {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
    border: 1px solid #ccc;
    box-sizing: border-box;
}

.image_cut_caption {
    display: none;
}
.eg_comma {
    display: inline-block;
    transform: translate(-0.2em, 0.5em);
}
.eg_dakuten {
    display: inline-block;
    transform: translateX(0.5em);
}
.eg_dash {
    display: inline-block;
    height: 1em;
}
.eg_doublequot {
    display: inline-block;
    margin: 0 -0.4em;
}
.eg_handakuten {
    display: inline-block;
    transform: translateX(0.5em);
}
.eg_kaeriten_ge {
    font-size: 0.7em;
    vertical-align: sub;
}
.eg_kaeriten_iti {
    font-size: 0.7em;
    vertical-align: sub;
}
.eg_kaeriten_jou {
    font-size: 0.7em;
    vertical-align: sub;
}
.eg_kaeriten_kou {
    font-size: 0.7em;
    vertical-align: sub;
}
.eg_kaeriten_ni {
    font-size: 0.7em;
    vertical-align: sub;
}
.eg_kaeriten_otu {
    font-size: 0.7em;
    vertical-align: sub;
}
.eg_kaeriten_re {
    font-size: 0.7em;
    vertical-align: sub;
}
.eg_kaeriten_san {
    font-size: 0.7em;
    vertical-align: sub;
}
.eg_kaeritenmiddot {
    font-size: 0.7em;
    vertical-align: sub;
}
.eg_kagikakko_open {
    display: inline-block;
    height: 1.5em;
}
.eg_kuten {
    display: inline-block;
    transform: translate(-0.2em, 0.5em);
}
.eg_period {
    display: inline-block;
    transform: translate(-0.2em, 0.5em);
}
.eg_singlequot {
    display: inline-block;
    margin: 0 -0.5em;
}
.eg_touten {
    display: inline-block;
    transform: translate(-0.2em, 0.5em);
}
.eg_yamakakko_close {
    display: inline-block;
    height: 1.0em;
    margin-left: 0.5em;
}
.item_column {
    margin-bottom: 0.5em;
    padding: 0.5em;
    border: 1px solid #ff0000;
    background-color: blanchedalmond;
}
body.dark .item_column {
    background-color: #7F7567;
}
.col_logo {
    font-weight: bold;
}
.col_book_s {
    color: #ff0000;
}
.col_book_e {
    color: #000000;
}
.col_title {
    line-height: 2em;
}
.col_subject {
    font-size: 2.0em;
    font-weight: bold;
    margin-left: 0.25em;
}
.col_subject_sub {
    font-size: 1.5em;
    font-weight: bold;
}
.col_sub_subject {
    font-family: sans-serif;
    font-weight: bold;
}
.col_oo_midashi {
    margin-top: 1em;
    margin-left: 0.5em;
    font-family: sans-serif;
    font-weight: bold;
}
.col_oo_midashi_mark {
    color: #ff0000;
    margin: 0 0.25em 0 0;
}
.col_ko_midashi {
    font-family: sans-serif;
}
.col_compare_info {
    margin-top: 1em;
    margin-left: 1.5em;
}
.col_compare_info_mark {
    color: #ff0000;
    margin-left: -1em;
}
.col_compare_words {
    font-family: sans-serif;
}
.col_compare_disp_mark {
    display: inline-block;
    transform: translateX(-0.1em);
    margin: 0 0.25em 0 0;
}
.col_supple_info {
    margin-top: 1em;
    margin-left: 1.5em;
}
.col_supple_info_mark {
    margin: 0 0.25em 0 -1em;
    color: #ff0000;
}
div .col_referenceG {
    margin-left: 1.5em;
}
span .col_referenceG {
    margin-left: 0.5em;
}
.col_reference_subG {
    font-weight: bold;
}
.col_reference_subG_mark {
    font-family: sans-serif;
}
.col_paragraph {
    margin-left: 1.5em;
}
.col_paragraph_midashi1 {
    font-family: sans-serif;
}
.col_paragraph_midashi2 {
    font-family: sans-serif;
    font-weight: bold;
    margin-left: -1em;
}
.col_paragraph_midashi_mark {
    color: #ff0000;
    margin: 0 0.25em;
}
.col_words_slash {
    display: inline-block;
    transform: rotate(-45deg);
    margin-left: 0.5em;
    margin-right: 0.25em;
}
.col_em_gothic {
    font-family: sans-serif;
}
.abc_title {
    line-height: 2em;
}
.abc_midashi {
    font-family: sans-serif;
    font-size: 1.2em;
    font-weight: bold;
}
.abc_midashi_yomiG {
    font-family: serif;
    font-size: 0.9em;
    font-weight: normal;
}
.abc_gogi {
    margin-bottom: 1.5em;
}
.abc_gogi_num {
    display: inline-block;
    height: 1.0em;
    width: 1.0em;
    font-family: "NotoSansJP",serif;
    font-size: 0.9em;
    line-height: 1.0em;
    text-align: center;
    color: #ffffff;
    background-color: #000000;
    padding: 2px 3px 2px 2px;
    border: 1px solid;
    border-radius: 1.0em;
    border-color: #000000;
    margin-top: 0.2em;
    margin-bottom: -1em;
}
.abc_original_domicile {
    font-size: 0.875em;
}
.abc_relationG_mark {
    margin: 0.2em 0 0.5em 0;
    display: inline-block;
    font-family: sans-serif;
    font-weight: bold;
    border: 1px solid;
    border-radius: 5px;
    line-height: 1.1em;
    text-align: center;
    white-space: nowrap;
    text-indent: 0;
    vertical-align: text-bottom;
    color: #ff0000;
}
.abc_antonymG_mark {
    margin: 0.2em 0 0.5em 0;
    display: inline-block;
    font-family: sans-serif;
    font-weight: bold;
    border: 1px solid;
    border-radius: 5px;
    line-height: 1.1em;
    text-align: center;
    white-space: nowrap;
    text-indent: 0;
    vertical-align: text-bottom;
    color: #ff0000;
}
.abc_synonymG_mark {
    margin: 0.2em 0 0.5em 0;
    display: inline-block;
    font-family: sans-serif;
    font-weight: bold;
    border: 1px solid;
    border-radius: 5px;
    line-height: 1.1em;
    text-align: center;
    white-space: nowrap;
    text-indent: 0;
    vertical-align: text-bottom;
    color: #ff0000;
}
.abc_derivation_mark {
    margin: 0.2em 0 0.5em 0;
    display: inline-block;
    font-family: sans-serif;
    font-weight: bold;
    border: 1px solid;
    border-radius: 5px;
    line-height: 1.1em;
    text-align: center;
    white-space: nowrap;
    text-indent: 0;
    vertical-align: text-bottom;
    color: #ff0000;
}
.abc_quater_size {
    font-size: 0.25em;
}
.abc_dai_gogi_num2 {
    display: inline-block;
    line-height: 1.0em;
    height: 1.0em;
    width: 1.0em;
    padding: 1px;
    font-family: sans-serif;
    border: 1px solid;
    border-radius: 0;
    text-align: center;
    white-space: nowrap;
    text-indent: 0;
    vertical-align: text-bottom;
    transform: scale(0.8);
}
.abc_gogi_num2 {
    display: inline-block;
    line-height: 1.0em;
    height: 1.0em;
    width: 1.0em;
    padding: 1px;
    font-family: serif;
    border: 1px solid;
    border-radius: 1.0em;
    text-align: center;
    white-space: nowrap;
    text-indent: 0;
    vertical-align: text-bottom;
    transform: scale(0.8);
}
.abc_abbrev_mark_s {
    font-family: serif;
    font-size: 0.9em;
    font-weight: normal;
}
.abc_abbrev_mark_e {
    font-family: serif;
    font-size: 0.9em;
    font-weight: normal;
}
.abc_example_mark {
    display: inline-block;
    padding: 2px 2px 1px 2px;
    font-family: sans-serif;
    font-weight: bold;
    border: 0.1em solid;
    border-radius: 5px;
    line-height: 1.0em;
    text-align: center;
    transform: scale(0.9);
    white-space: nowrap;
    text-indent: 0;
    vertical-align: text-bottom;
    margin: 0.2em 0 0.5em 0;
}
.bm img {
    display: inline-block;
    position: absolute;
    height: 1.0em;
    width: 1.0em;
    left: 8px;
    margin: 0.3em 0 0 0;
}
.bm_ img {
    display: inline-block;
    position: absolute;
    height: 1.0em;
    width: 1.0em;
    left: 8px;
    margin: 0.3em 0 0 0;
    filter: invert(100%);
}
.gaiji_svg svg {
    height: 1.1em;
    filter: invert(none);
}
.index_part {
    padding: 5px 0 5px 5px;
}
.midashi_info_appendix {
    font-family: sans-serif;
    font-size: 1.1em;
    font-weight: bold;
    margin-top: 3px;
    margin-bottom: 8px;
    padding: 5px;
    border: solid;
    border-width: 0 1px 0 0;
    border-color: #000000;
    margin: 0 5px 0 0;
    border-right: 1px solid black;
    padding-right: 0.25em;
    margin-right: 0.25em;
}
table {
    margin-left: 5px;
}
td {
    padding: 5px 0 5px 0;
}
.anchor-target {
    display: block;
    height: 0;
    margin: 0;
    padding: 0;
}
.bg {
    font-family: sans-serif;
    font-weight: bold;
}
.chapter_title {
    font-family: sans-serif;
    font-weight: bold;
}
.exampleG {
    margin-left: 3.0em;
}
.item_style_2-2 .exampleG {
    margin-left: 1em;
}
.exampleG_space {
    margin-right: 1.25em;
}
.g {
    font-family: sans-serif;
}
.inter_section {
    line-height: 0.5em;
}
.item.item_style_0-1 {
    text-indent: -1em;
    margin-left: 1em;
}
.item.item_style_1-0 {
    text-indent: 1em;
    margin-left: 0;
}
.item.item_style_1-2 {
    text-indent: -1em;
    margin-left: 2em;
}
.item.item_style_2-1 {
    text-indent: 1em;
    margin-left: 1em;
}
.item.item_style_2-2 {
    text-indent: 0;
    margin-left: 2em;
}
.item.item_style_3-2 {
    text-indent: 1em;
    margin-left: 2em;
}
.item.item_style_3-3 {
    text-indent: 0;
    margin-left: 3em;
}
.item.item_style_right {
    text-align: right;
}
.span_sizeS {
    font-size: 0.8em;
}
.chapter_title_num {
    display: inline-block;
    height: 1.0em;
    width: 1.0em;
    font-family: "NotoSansJP",serif;
    font-size: 0.9em;
    line-height: 1.0em;
    text-align: center;
    text-indent: 0;
    padding: 1px 2px 1px 1px;
    color: #ffffff;
    background-color: #000000;
    border: 1px solid;
    border-radius: 1.0em;
    border-color: #000000;
    text-combine-upright: all;
    -webkit-text-combine: horizontal;
    margin-right: 0.2em;
}
.item_numh {
    display: inline-block;
    height: 1.0em;
    width: 1.0em;
    font-family: "NotoSansJP",serif;
    font-size: 0.9em;
    line-height: 1.0em;
    text-align: center;
    text-indent: 0;
    padding: 1px 2px 1px 1px;
    color: #ffffff;
    background-color: #000000;
    border: 1px solid;
    border-radius: 1.0em;
    border-color: #000000;
    text-combine-upright: all;
    -webkit-text-combine: horizontal;
    margin-right: 0.2em;
}
.item_num {
    display: inline-block;
    height: 1.0em;
    width: 1.0em;
    font-family: "NotoSansJP",serif;
    font-size: 0.8em;
    line-height: 1.0em;
    text-align: center;
    text-indent: 0;
    padding: 1px 2px 1px 1px;
    border: 1px solid;
    border-radius: 1.0em;
    text-combine-upright: all;
    -webkit-text-combine: horizontal;
    margin-right: 0.2em;
}
.exampleG_mark {
    display: inline-block;
    font-family: sans-serif;
    font-weight: bold;
    line-height: 1.0em;
    text-align: center;
    text-indent: 0;
    border: 1px solid;
    border-radius: 5px;
    padding: 2px 2px 1px 1px;
    margin: 0 5px 0 3px;
}
.gyou.marginleft2em {
    margin-bottom: 2em;
}
.anchor {
    display: block;
    visibility: hidden;
    line-height: 0;
}
.aste_0 {
    margin-bottom: 0.5em;
}
.aste_1 {
    display: inline-block;
    color: #ff0000;
    white-space: pre;
    line-height: 0.5;
    transform: translateY(0.25em);
}
.aste_2 {
    display: inline-block;
    color: #ff0000;
    white-space: pre;
    line-height: 0.5;
    transform: translateY(0.5em);
}
.box {
    text-align: center;
    overflow-x: auto;
    overflow-y: hidden;
    width: 100%;
}
.columns {
    margin-bottom: 2em;
    padding: 0.2em 0 0.2em 0.2em;
}
.columns .si::before {
    content: '📖';
    padding-top: 8px;
    margin-bottom: -1em;
}
.contents {
    overflow-y: auto;
    width: 100%;
    height: 100%;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
.header {
    position: fixed;
    left: 0;
    width: 100%;
    background-color: #f9f9f9;
    z-index: 1000;
    padding: 0 5px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}
.index {
    background-color: #D5B385;
    padding: 0 0 5px 0;
    font-weight: bold;
    vertical-align: -2px;
}
.items {
    margin-bottom: 1em;
    padding: 0.2em 0 0.2em 0.2em;
}
.lead {
    margin-bottom: 1em;
}
.lead_mark {
    margin-bottom: -1em;
}
.link_50on {
    display: inline-block;
    text-align: center;
    padding: 2px 0 2px 0;
}
.link_list {
    height: 1.3em;
    white-space: nowrap;
    margin: 0;
}
.main_category_title {
    font-weight: bold;
    font-family: sans-serif;
}
.si {
    cursor: pointer;
    color: blue;
    white-space: nowrap;
}
.sub_category {
    margin-bottom: 1em;
}
.sub_category_title {
    font-weight: bold;
    font-family: sans-serif;
}
.title {
    text-align: center;
    font-size: 1.2em;
    font-weight: bold;
}
.appendix_image {
    height: 50em;
}

img { max-width: 100%; }

/* Fix SVG size */
.gaiji_svg, img[src$=".svg"] {
    height: 1.1em !important;
    width: auto !important;
    vertical-align: middle !important;
    display: inline-block !important;
}

/* Fix trad char group overlap - reset negative margins from vertical hacks */
.oyaji_trad_char, .oyaji_acceptable_char {
    margin: 0 !important;
}

/* Fix index pages overlap and flow */
.columns .si::before, .items .si::before, .lead_mark {
    margin-right: 0.5em !important;
}
/* Revert to block to ensure one item per line, but keep padding/margins for clarity */
.columns, .items {
    display: block !important;
    margin-bottom: 0.3em !important;
}

/* Fix ruby alignment to prevent overlap and improve IE compatibility */
.mj_ruby_body {
    display: inline-block !important;
    vertical-align: baseline !important;
    line-height: 1 !important;
    margin: 0 0.12em !important;
    text-align: center !important;
}
.mj_ruby {
    display: block !important;
    font-size: 0.6em !important;
    line-height: 1 !important;
    text-align: center !important;
    margin-bottom: 0.1em !important; /* Space between ruby and base */
}

/* Fix hanrei_page and general item indentation */
.item {
    padding-left: 1.5em !important;
    text-indent: -1.5em !important;
    margin-left: 0 !important;
    display: block !important;
    margin-bottom: 0.5em !important;
}
.item_style_1-0, .item_style_2-1, .item_style_3-2 {
    text-indent: 1em !important;
}
.item_style_2-2, .item_style_3-3, .item_style_right {
    text-indent: 0 !important;
    padding-left: 0 !important;
}

a.si {
    color: #0000ee; /* Fallback for --a_color */
    text-decoration: underline;
}

a[name],
a[name]:link,
a[name]:visited,
a[name]:hover,
a[name]:active {
    color: inherit !important;
    text-decoration: none !important;
}

a[name] * {
    text-decoration: none !important;
}
