@import 'sw-classes';
@import url('https://fonts.googleapis.com/css?family=Cedarville+Cursive');

html {
  padding: 0.5em;
}
:root {
  --timejs-serialization: dtsjp1;
  --inline-mirroring: rotateY(180deg);
  --btm-emulated: not-emulated;
  --valign: 50%;

  --quote-color: black;
  --quote-background-color: #f1edff;
  --quote-main-color: black;
  --quote-main-background-color: #f9f7ff;
  --note-color: black;
  --note-background-color: #F5FFF5;
  --note-border-color: #CCFFCC;
  --annotation-inline-font: 70%/1.0 normal;
  --annotation-side-font: 30%/1.0 normal;
  --annotation-color: #f72121;
  --annotation-background-color: transparent;
  --annotation-hover-color: red;
  --annotation-hover-background-color: transparent;
}

html, td {
  line-height: 2.2;
}

body {
  position: relative;
  max-width: 50em;
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
}

.nav {
  display: block;
  text-align: right;
}

.nav.tools {
  z-index: 600;
  position: relative;
  margin-right: 0.5em;
  margin-left: 0.5em;
}

.nav.tools > * {
  background-color: white;
}

.nav.swe-names {
  margin-left: 0.5em;
  font-size: 150%;
  font-weight: bolder;
  font-family: sans-serif;
  text-align: left;
}

.nav.swe-info,
.nav.swe-ids {
  margin: 0 auto;
  border: gray 0.3em ridge;
  padding: 0.5em 0.6em;
  width: 60%;
  line-height: 1.6;
  background-color: #f3f3f3;
  color: black;
  text-align: left;  
}

.nav.swe-ids ul {
  margin-top: 0;
}

.footer {
  display: table;
  margin-top: 1em;
  border-top: gray thin solid;
  padding-top: 0.3em;
  width: 100%;
  box-sizing: border-box;
}

.footer menu {
  display: table-cell;
  margin: 0;
  padding: 0 1em 0 0;
  text-align: right;
  font-size: 80%;
  position: relative;
  z-index: 10000;
}

.footer .copyright .amazon {
  display: block;
}

@media (max-width: 30em) {
  .footer .copyright {
    margin: 1em;
    text-indent: 0;
    line-height: 1.3;
  }

  .footer menu {
    display: table-row;
  }

  .footer menu > a {
    display: block;
    margin-block-end: 0.3em;
    margin-inline-start: 0.5em;
    margin-inline-end: 0.5em;
    text-align: start;
  }
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  margin-block-end: .5em;
  padding: .1em;
  padding-inline-start: .2em;
  padding-inline-end: .2em;
  line-height: 1.5;
  color: #004000;
  background-color: transparent;
  font-weight: bolder;
  font-family: sans-serif;
}

body > h1 {
  background-image: url(../images/sw.png) /* 107x59 */;
  background-position: middle left;
  background-repeat: no-repeat;
  padding-left: 120px;
  min-height: 59px;
  line-height: 2.0;
  font-size: 150%;
}

h2, h3,
section h1 {
  font-size: 150%;
}

h4,
section section > h1 {
  font-size: 120%;
  border-block-end: solid 1px;
  padding-block-end: 0.1em;
}

h5,
section section section h1 {
  font-size: 120%;
}

h6,
section section section section h1 {
  font-size: 100%;
}

.sw-heading-anchor,
.sw-heading-link {
  display: none;
  float: right;
  writing-mode: horizontal-tb;
  min-width: 1.5em;
  border-style: none;
  padding: 0.1em;
  font-size: 80%;
  font-weight: normal;
  color: gray;
  text-align: center;
}

.section:hover > * > .sw-heading-anchor,
.section:hover > * > .sw-heading-link,
:target > * > .sw-heading-anchor,
:target > * > .sw-heading-link {
  display: block;
  border-block-end-style: none;
}

.article, .section, section:not([hidden]) {
  display: block;
  margin: 0 0 2em 0;
  padding: 0 1em 0 2em;
}

p + .article, p + .section,
ul + .article, ul + .section,
ol + .article, ol + .section,
dl + .article, dl + .section,
table + .article, table + .section,
blockquote + .article, blockquote + .section,
.sw-comment-p + .article, .sw-comment-p + .section,
.sw-ed + .article, .sw-ed + .section,
ins + .article, ins + .section,
del + .article, del + .section {
  margin-top: 2em;
}

section[id="section-歴史"],
section[id$="\2028歴史"],
.sw-history {
  border: 0.3em gray;
  border-style: none solid;
  background: #f1f1f1;
}

.sw-history {
  margin-block-start: 1em;
  margin-block-end: 1em;
  padding: 0;
  padding-inline-start: .8em;
  padding-inline-end: .8em;
}

.section > h1,
.section > h2,
.section > h3,
.section > h4,
.section > h5,
.section > h6,
.article > header > h1,
.article > .article, .article > .section,
.section > .article, .section > .section {
  margin-inline-start: -1rem;
}

.article > header > .breadcrumb {
  margin-left: -1rem;
  font-size: 75%;
  line-height: 1.2;
  color: gray;
  background: transparent;
}

.article > header > h1 {
  font-size: 150%;
}

.article:last-child, .section:last-child {
  margin-block-end: 0.5em;
}

blockquote {
  margin-block-start: .5em;
  margin-block-end: .5em;
  margin-inline-start: 2em;
  margin-inline-end: 0;
  border-inline-start: #004000 double 0.3em;
  padding: .2em;
  padding-inline-start: .5em;
  padding-inline-end: .5em;
  background-color: var(--quote-main-background-color);
  color: var(--quote-main-color);
}

hr:not(.blank) {
  border-style: none;
  text-align: center;
}

hr::after {
  content: "* * *";
  color: #004000;
  background: transparent;
  font-weight: bolder;
  font-size: 80%;
  letter-spacing: 1em;
}

hr.blank {
  visibility: hidden;
}

hr.blank::after {
  display: none;
}

sw-dialogue {
  display: table;
  margin-block-start: 1em;
  margin-block-end: 1em;
  width: 100%;
  background: rgb(255, 250, 250);
  color: black;
}

sw-talk {
  display: table-row;
}

sw-talk::after {
  display: block;
  content: "";
  clear: both;
}

sw-speaker {
  display: table-cell;
  width: 8em;
  text-align: right;
  font-weight: bolder;
  color: #004000;
  background-color: transparent;
}

sw-speaker::after {
  content: " :\A0\A0";
  font-weight: normal;
  color: black;
  background: transparent;
}

sw-talk.sw-talk-no-speaker {
  margin-left: 1em;
  font-style: italic;
}

sw-talk.sw-talk-no-speaker::before {
  content: "\2014\2014\A0";
  display: table-cell;
  width: 8em;
  text-align: right;
}

sw-talk > p:first-of-type {
  text-indent: 0;
}

sw-box:not([hidden]) {
  display: block;
}

sw-box.set:not([hidden]) {
  display: flex;
}

sw-box.set > sw-box {
  flex-grow: 1;
  text-indent: 0;
}

sw-box.set > sw-box + sw-box {
  text-align: right;
  order: 2;
}

sw-box.set > sw-box + sw-box + sw-box {
  text-align: center;
  order: 1;
}

sw-box.items:not([hidden]) {
  display: flex;
}

sw-box.items > sw-vlrbox,
sw-box.items > sw-vrlbox {
  text-indent: 0;
  width: auto;
}

sw-box.center {
  text-align: center;
}

sw-box.center table {
  margin-left: auto;
  margin-right: auto;
  text-align: start;
}

sw-box.left {
  text-align: left;
}

sw-box.left table {
  margin-left: 0;
  margin-right: auto;
}

sw-box.right {
  text-align: right;
}

sw-box.right table {
  margin-right: 0;
  margin-left: auto;
}

sw-box.indent {
  -webkit-margin-start: 2em;
}

sw-box.spacing1 {
  letter-spacing: 1em;
}

sw-box.vertical,
sw-vrlbox,
sw-vlrbox {
  max-height: 80vh;
  width: 100%;
  overflow: auto;
  --inline-mirroring: rotateX(180deg);
  --valign: middle;
  position: relative;
}
sw-box.vertical {
  writing-mode: vertical-rl;
}
sw-vrlbox {
  text-orientation: mixed;
  direction: ltr;
}
sw-vlrbox {
  text-orientation: mixed;
}

sw-leftbox:not([hidden]),
sw-rightbox:not([hidden]),
sw-leftbtbox:not([hidden]),
sw-rightbtbox:not([hidden]) {
  display: block;
}
sw-leftbox,
sw-rightbox,
sw-leftbtbox,
sw-rightbtbox {
  direction: ltr;
  max-width: 80vw;
  height: 100%;
  overflow: auto;
  --inline-mirroring: rotateY(180deg);
  --valign: 50%;
}
sw-rightbox,
sw-rightbtbox {
  direction: rtl;
}

/* Sidebar menu */

.side-menu[data-open] {
  position: fixed;
  top: 0;
  left: 0;
  width: 15em;
  bottom: 0;
  z-index: 2;
  background: rgba(250, 250, 250, 0.8);
  color: black;
  margin: 0;
  padding: 0;
  overflow: auto;
}

@media (max-width: 80em) {
  .side-menu:not([data-open]) {
    display: none;
  }

  a.show-side-menu-button {
    display: block;
    position: fixed;
    top: 2em;
    left: 0;
    width: 1em;
    height: 1em;
    border-style: none;
    padding: 0;
    text-align: center;
    line-height: 1.0;
    font-size: 200%;
    text-decoration: none;
  }
}

@media (min-width: 80em) {
  body:not(.swe-has-sidebar) {
    width: 65em;
    max-width: none;
    padding-left: 15em;
    padding-right: 0;
  }

  .side-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 15em;
    height: 100vh;
    margin: 0;
    padding: 0;
    overflow: auto;
  }

  .side-menu .hide-side-menu-button {
    display: none;
  }
}

.show-side-menu-button {
  display: none;
}

.side-menu[data-open] ~ .show-side-menu-button {
  display: none;
}

.side-menu > nav a {
  display: inline-block;
  min-width: 2em;
  margin: .2rem;
  border-style: none none hidden none;
  padding: .2rem;
  line-height: 1.0;
  text-decoration: none;
  text-align: center;
}

.side-menu > nav a:not(:hover) {
  color: inherit;
  background: transparent;
}

.side-menu > nav a.active {
  border-block-end-style: solid;
  font-weight: bolder;
}

.side-menu > nav a.hide-side-menu-button {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: 0;
  font-size: 30%;
  line-height: 100vh;
  min-width: 0;
  text-align: center;
}

.side-menu > section-group {
  display: block;
  position: absolute;
  top: 2em;
  bottom: 0;
  width: 14.3em;
  overflow: auto;
}

.side-menu > section-group > section {
  margin: 0;
  padding: 0 0.5em;
}

.side-menu > section-group > section:not(.active) {
  display: none;
}

.side-menu > section-group > section > h1 {
  display: none;
}

/* TOC */

.toc {
  margin-top: 1em;
  margin-left: -1em;
  margin-bottom: 1em;
}

.toc > h1 {
  margin-left: -1em;
  padding: 0.1em 0.2em;
  background: none;
  font-size: 150%;
  min-height: 0;
  line-height: 1.5;
}

.toc > ol {
  padding: 0;
  -webkit-column-width: 13em;
  column-width: 13em;
}

.toc > ol li {
  display: block;
  -webkit-column-break-inside: avoid;
  column-break-inside: avoid;
}

.toc > ol ol {
  margin-left: 0;
  padding-left: 1em;
}

.toc > ol li li a::before {
  content: "\2798  ";
}

.toc a {
  display: block;
  padding: 0.2em;
  padding-block-start: .5em;
  padding-block-end: .5em;
  text-decoration: none;
  color: inherit;
}

.toc a:not(:hover) {
  border-block-end-color: transparent;
}

.toc code {
  word-break: break-all;
}

#side-defs ol {
  padding: 0;
}

#side-defs ol > li {
  display: block;
}

#side-defs ol > li > a {
  display: block;
  border-block-end: none;
  line-height: 1.5;
}

/* Note blocks */

.sw-note-block {
  display: block;
  margin-block: 1em;
  margin-inline: 5em 0;
  padding-block: 0.5em;
  padding-inline: 1.3em;
  color: var(--note-color);
  background-color: var(--note-background-color);
  text-indent: 0;
  font-size: 90%;
  line-height: 2.2;
  column-span: all;
}

.sw-note-block::before {
  display: block;
  content: "# ";
  font-size: 300%;
  float: inline-start;
  margin-inline-start: -2em;
  inline-size: 1.7em;
  box-sizing: border-box;
  padding-inline-end: 0.3em;
  text-align: end;
  line-height: 1.0;
  color: var(--note-border-color);
  background: transparent;
  font-weight: bolder;
  font-family: sans-serif;
  text-orientation: upright;
}

.sw-preamble {
  margin-right: 5em;
  background: #f0e3f1;
  color: black;
}

.sw-postamble {
  margin-right: 5em;
  background: #ffe0c5;
  color: black;
}

@media (max-width: 30em) {
  .sw-note-block {
    margin-inline: 1em 0;
  }

  sw-vrlbox .sw-note-block,
  sw-vlrbox .sw-note-block {
    margin-inline: 3em 0;
  }

  .sw-note-block::before {
    font-size: 250%;
  }
}

.sw-ed {
  display: block;
  margin: 1em 0;
  border: medium solid;
  padding: 0.5em 1em 0.5em 2em;
  color: rgb(229, 0, 0);
  background-color: transparent;
  text-indent: -1em;
}

.sw-ed:before {
  content: "@@ ";
}

/* Paragraphs */

p {
  margin: 0;
  text-indent: 1em;
}

pre {
  margin: 0;
  white-space: pre-wrap;
}

/* Lists */

ul, ol, dl {
  margin: 0;
  text-indent: 0;
  font-size: 90%;
  line-height: 2;
}

li, dt {
  -webkit-column-break-inside: avoid;
  column-break-inside: avoid;
}

li li li ul,
li li li ol,
li li li dl {
  font-size: 100%;
}

ul li, ol li {

}

/* Tables */

table {
  margin: 0 0.5em;
  border: 1px solid gray;
  border-collapse: collapse;
  font-size: 90%;
  box-shadow: 0.3em 0.3em #ccc;
}

caption {
  color: #004000;
  background-color: transparent;
  font-weight: bolder;
}

thead, tfoot, th {
  font-weight: bolder;
  font-family: sans-serif;
}

td, th {
  padding: 0.1em 0.5em;
  border: 1px solid gray;
  empty-cells: show;
  text-indent: 0;
  line-height: 2;
}

th {
  color: #004000;
  background-color: transparent;
}

th[scope="row"], th[scope="rowgroup"] {
  text-align: start;
  border-inline-end: 1px solid #C0C0C0;
}
th[scope="col"], th[scope="colgroup"] {
  text-align: center;
  border-block-end: 1px solid #C0C0C0;
}

tr:hover {
  background-color: #ffecf5;
  color: black;
}

th:hover, td:hover {
  background-color: #f4fffa;
  color: black;
}


/* Edits */

ins {
  border-block-end: solid 1px;
  padding-block-end: 0.1em;
  background-color: rgb(255, 255, 153);
  color: black;
  text-decoration: none;
}

del {
  background-color: #FFBBBB;
  color: black;
  font-size: 80%;
  text-decoration: line-through;
}

.article > ins,
.article > del,
.section > ins,
.section > del,
blockquote > ins,
blockquote > del {
  display: block;
  margin: 0.5em 0;
  padding: 0.2em 0.5em;
}

/* Anchors */

:link, :visited {
  border-block-end: solid 1px #babaff;
  padding-block-end: 0.1em;
  text-decoration: none;
}

.sw-anchor:link, .sw-anchor:visited {
  border-block-end-style: dashed;
  color: inherit;
  background-color: transparent;
}

/*
.sw-anchor + .sw-anchor,
.sw-anchor + em,
.sw-anchor + ins,
em + .sw-anchor,
em + em,
em + ins,
ins + .sw-anchor,
ins + em,
ins + ins {
  margin-left: 0.3em;
}
*//* Split border-block-ends */

.sw-anchor:visited {
  border-block-end-color: #EE82EE;
}

.sw-anchor-internal {
/*  color: inherit;
  background-color: transparent; */
  border-block-end-style: none;
}

.sw-anchor-external {
  word-break: break-all;
}

.sw-anchor-external::before {
  content: "<";
}

.sw-anchor-external::after {
  content: ">";
}

.sw-anchor-end {
  display: block;
  position: absolute;
  inset-inline-start: 0.4em;
  inset-block-start: auto;
  border-style: none;
  color: gray;
  background: white;
  line-height: 1.0;
  text-indent: 0;
  font-size: 12px;
  font-weight: normal;
  font-style: normal;
  text-decoration: none;
}

figure .sw-anchor-end {
  left: auto;
  right: 0.4em;
}

a:hover,
.sw-anchor:hover,
.sw-anchor-internal:hover,
.sw-anchor-external:hover,
.nav.tools > *:hover {
  background-color: #FFA;
  color: #000080;
  border-block-end-style: solid;
}

:target > h1, :target > h2, :target > h3,
:target > h4, :target > h5, :target > h6,
h1:target {
  background-color: #FFA;
}

:hover > .sw-anchor-end,
.sw-anchor-end:target {
  background-color: #FFA;
  color: #000080;
  border-style: none;
}

dfn:target {
  background-color: #FFA;
  color: #000080;
}

[rel~=bookmark]:not(.sw-anchor-end) {
  border-style: none !important;
  color: inherit !important;
  background-color: transparent !important;
}

/* Figures */

svg {
  text-indent: 0;
}

figure {
  display: block;
  position: relative;
  margin: 1em 3em;
  border: 1px #004000 solid;
  padding: 0.3em 2.5em 0.3em 1em;
  line-height: 1.5;
}

@media (max-width: 30em) {
  figure {
    margin-left: 1em;
    margin-right: 1em;
  }
}

figcaption {
  display: block;
  margin: 0;
  text-align: center;
  font-weight: bolder;
  font-family: sans-serif;
  column-span: all;
}

figure > p:first-child {
  text-indent: 0;
}

figure.list,
figure.notes {
  color: black;
  background-color: #FCFCFC;
  border-style: none;
}

figure.notes {
  color: green;
}

figure.list.short {
  -webkit-column-width: 10em;
  column-width: 10em;
}

figure.list.middle {
  -webkit-column-width: 14em;
  column-width: 14em;
}

figure.list.members {
  border: solid 1px #ccc;
  border-bottom-left-radius: 0.5em;
  border-bottom-right-radius: 0.5em;
}

figure.list > ul,
figure.notes > ul {
  padding-left: 2em;
}

figure.list > ul > li,
figure.notes > ul > li {
  display: block;
  margin-left: 0;
  padding-left: 0;
  text-indent: -1em;
}

figure.list > ul > li::before {
  content: "\25BB  \A0";
}

figure.notes > ul > li::before {
  content: "※\A0";
}

figure.list dl {
}

figure.list dt {
  display: inline;
  margin-right: 0;
  font-weight: bolder;
}

figure.list dt::before {
  content: "\25BB  \A0";
}

figure.list dt::after {
  content: ": ";
}

figure.list.members dt::after {
  content: " := ";
  font-family: "Courier New", monospace;
}

figure.list dd {
  display: inline;
  margin: 0;
  padding: 0;
}

figure.list dd::after {
  display: block;
  content: "";
}

figure.list figure.list,
figure.list figure.notes {
  margin: 0 -2.5em 0 1.5em;
}

figure.steps li > figure.list.members {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}

figure.list figure.list.members {
  margin-block-start: 0.4em;
  margin-block-end: 0.4em;
}

figure.list.members > figcaption {
  margin: 0 -2.5em 0.5em -1em;
  border-bottom: 1px #ccc solid;
  padding: 0 1em 0.2em;
  text-align: left;
}

figure.list.members > figcaption > p {
  margin: 0;
  padding: 0;
  text-indent: 0;
}

figure.quote {
  margin: 0;
  margin-block-start: .5em;
  margin-block-end: .5em;
  border-style: none;
  border-inline-start: #004000 double 0.3em;
  padding: .2em;
  padding-inline-start: 1em;
  padding-inline-end: 3em;
  background-color: var(--quote-background-color);
  color: var(--quote-color);
}

figure.quote > figcaption {
  text-align: start;
  font-weight: normal;
}

figure.quote > figcaption > p {
  text-indent: 0;
}

figure.quote > figcaption cite {
  font-weight: bolder;
}

figure.quote > blockquote {
  border-style: none;
}

figure.pull-quote {
  margin: 0 0 0 auto;
  max-width: 20em;
  border-style: none;
}

figure.pull-quote > blockquote {
  display: block;
  margin: 0;
  border-style: none;
  padding: 0;
  background: transparent;
  color: inherit;
  font-size: 150%;
  font-style: italic;
  font-family: "Times New Roman", serif;
  text-align: justify;
}

figure.pull-quote > blockquote::before {
  content: "“";
  display: block;
  float: left;
  margin-left: -0.5em;
  margin-top: -0.3em;
  font-size: 350%;
  color: #004000;
  opacity: 0.2;
  text-align: left;
  font-style: normal;
}

figure.pull-quote > blockquote::after {
  content: "”";
  display: block;
  float: right;
  margin-right: -0.5em;
  margin-top: -0.8em;
  font-size: 350%;
  color: #004000;
  opacity: 0.2;
  text-align: right;
  font-style: normal;
}

figure.pull-quote > blockquote > p:first-child {
  text-indent: 0;
}

figure.pull-quote > figcaption {
  display: block;
  margin: 0;
  padding: 0;
  font-weight: normal;
  text-align: right;
  font-size: 90%;
  color: gray;
}

figure.pull-quote > figcaption::before {
  content: "\2015\2015";
  white-space: pre;
  padding-right: 0.5em;
}

figure.pull-quote::after {
  display: block;
  content: "";
  clear: both;
}

figure.corollary {
  margin-top: 0;
  margin-bottom: 0;
  border-style: none;
  font-size: 90%;
  line-height: 2;
}

figure.corollary::before {
  display: block;
  position: absolute;
  left: -2em;
  width: 2em;
  top: 0;
  content: "★";
  color: #004000;
  text-align: center;
  font-size: 50%;
}

figure.corollary > *:first-child > .sw-anchor-end {
  display: block;
  position: absolute;
  left: -2em;
  width: 2em;
  top: 1em;
  color: #004000;
  text-align: center;
  font-size: 70%;
}

figure.important {
  display: block;
  margin: 1em 0;
  border: 0.5em solid;
  padding: 0.5em 1em 0.5em 2em;
  border-color: rgb(229, 0, 0);
  background-color: transparent;
  color: inherit;
  text-indent: -1em;
  line-height: 2.0;
}

figure.important > p {
  text-indent: 1em;
}

figure.steps {
  margin-left: 0;
  margin-right: 0;
  border-style: none;
  border-left: #400080 1px solid;
  padding-left: 0;
  color: black;
  background-color: #FCFCFC;
}

figure.steps ol {
  margin: 0.3em 0;
  border-left: #400080 1px solid;
  padding-left: 3em;
}

figure.steps > ol {
  border-left: none;
}

figure.steps ol ol,
figure.steps ol ul,
figure.steps ol dl {
  font-size: 100%;
}

figure.steps figure.list:not(.members) {
  margin: 0.5em 0;
  border-left: 1px dashed #400080;
  padding: 0 0.25em;
}

figure.steps figure.list.members > dl > dd > figure.steps {
  margin-top: 0;
  margin-left: 3em;
}

figure.switch {
  margin-left: 0;
  margin-right: 0;
  border-style: none;
  padding-left: 0;
  color: black;
  background-color: #FCFCFC;
}

figure.steps li > figure.switch {
  margin-top: 0;
}

figure.switch > dl > dt {
  font-weight: bolder;
}

figure.switch > dl > dt:before {
  content: "\21AA";
  padding: 0 0.5em 0 0;
  display: inline-block;
  width: 1em;
  text-align: right;
  line-height: 0.5em;
}

figure.switch > dl > dd > figure.steps {
  margin-top: 0;
}

figure.states svg {
  height: 15em;
}

figure.states .edge, #triangle {
  stroke: gray;
}

figure.states .edge {
  stroke-width: 1;
  marker-end: url(#triangle);
}

figure.states .node {
  text-align: center;
}

figure.states .node rect {
  fill: transparent;
  stroke: black;
  stroke-width: 1;
}

figure.railroad {
  margin: 0.8em 0 0.8em 3em;
  border-style: none;
  padding-left: 1em;
  color: black;
  background-color: #FCFCFC;
  line-height: 2.0;
  font-size: 90%;
}

figure.railroad svg.railroad-diagram {
}

figure.railroad svg.railroad-diagram path {
  stroke-width: 3;
  stroke: black;
  fill: rgba(0, 0, 0, 0);
}

figure.railroad svg.railroad-diagram text,
figure.railroad svg.railroad-diagram .text {
  font: 14px monospace;
  text-anchor: middle;
  overflow: visible;
}

figure.railroad svg.railroad-diagram text code,
figure.railroad svg.railroad-diagram .text code {
  font-family: monospace;
  font-size: 14px;
}

figure.railroad svg.railroad-diagram text.label {
  text-anchor: start;
}

figure.railroad svg.railroad-diagram text.comment {
  font: bold 12px monospace;
}

figure.railroad svg.railroad-diagram rect {
  stroke-width: 3;
  stroke: black;
  fill: #e0ffe0;
}

figure.sequence {
  border-style: none;
}

figure.sequence > figcaption {
  text-align: left;
}

figure.sequence dd {
  position: absolute;
  display: block;
  margin: 0;
  padding: 0;
  font-size: 0.9em;
  font-size: 0.9rem;
  line-height: 1.2;
  min-width: 3em;
}

figure.sequence line {
  stroke: black;
  stroke-width: 2;
/*  stroke-dasharray: 6, 2; */
}

figure.sequence .actor-timeline {
  stroke-width: 1;
}

figure.sequence .text {
  font-size: 0.9em;
  font-size: 0.9rem;
  background: rgba(255, 255, 255, 0.8);
  text-align: center;
  overflow: visible;
}

figure.sequence .textbox {
  stroke: black;
  stroke-width: 2;
  fill: white;
}

figure.sequence .note-label.textbox {
  stroke-width: 1;
  fill: rgba(255, 255, 255, 0.8);
}

figure.flow path {
  fill: transparent;
  stroke: currentcolor;
  stroke-width: 1px;
}

figure.flow .text {
  padding: 0.15em 0.45em;
  line-height: 1.5;
}

.figure-flow-measure {
  padding: 0.2em 0.5em;
  line-height: 1.5;
}

figure.packet {
  border: none;
}

figure.packet table {
  margin-left: auto;
  margin-right: auto;
  border: none;
  border-collapse: collapse;
  box-shadow: none;
}

figure.packet table tr:hover {
  background: transparent;
}

figure.packet table > thead > tr > th {
  width: 1em;
  border: none;
  padding: 0;
  line-height: 1.5;
  font-size: 90%;
  font-weight: normal;
  text-align: center;
  color: gray;
  transform: rotate(270deg);
}

figure.packet table > tbody > tr > td {
  box-sizing: border-box;
  border: 1px solid black;
  padding: 0.3em 0.5em;
  line-height: 1.5;
  font-size: 90%;
  text-align: center;
}

figure.packet table > tbody > tr > td[colspan="1"] {
  width: 1em;
  max-width: 1em;
  text-indent: -0.8em;
  transform: rotate(270deg);
}
figure.packet table > tbody > tr > td[colspan="2"] { width: 2em; max-width: 2em }
figure.packet table > tbody > tr > td[colspan="3"] { width: 3em; max-width: 3em }
figure.packet table > tbody > tr > td[colspan="4"] { width: 4em; max-width: 4em }
figure.packet table > tbody > tr > td[colspan="5"] { width: 5em; max-width: 5em }
figure.packet table > tbody > tr > td[colspan="6"] { width: 6em; max-width: 6em }
figure.packet table > tbody > tr > td[colspan="7"] { width: 7em; max-width: 7em }
figure.packet table > tbody > tr > td[colspan="8"] { width: 8em; max-width: 8em }
figure.packet table > tbody > tr > td[colspan="9"] { width: 9em; max-width: 9em }
figure.packet table > tbody > tr > td[colspan="10"] { width: 10em; max-width: 10em }
figure.packet table > tbody > tr > td[colspan="11"] { width: 11em; max-width: 11em }
figure.packet table > tbody > tr > td[colspan="12"] { width: 12em; max-width: 12em }
figure.packet table > tbody > tr > td[colspan="13"] { width: 13em; max-width: 13em }
figure.packet table > tbody > tr > td[colspan="14"] { width: 14em; max-width: 14em }
figure.packet table > tbody > tr > td[colspan="15"] { width: 15em; max-width: 15em }
figure.packet table > tbody > tr > td[colspan="16"] { width: 16em; max-width: 16em }
figure.packet table > tbody > tr > td[colspan="24"] { width: 24em; max-width: 24em }
figure.packet table > tbody > tr > td[colspan="32"] { width: 32em; max-width: 32em }

figure.packet table > tbody > tr > td:hover {
  background: transparent;
}

figure.packet table .continue {
  text-align: left;
  color: gray;
}

figure.packet table .continue-start {
  border-left: dashed 1px black;
}

figure.packet table .continue-end {
  border-right: dashed 1px black;
}

figure.packet table .continue-more {
  border-bottom: dashed 1px black;
}

figure.suntime {
  display: inline-block;
  min-width: 20em;
  width: 30em;
  max-width: 100%;
  margin: 5px 0;
  border: none;
  padding: 0;
  vertical-align: middle;
}
figure.suntime .day {
  fill: #ffcf00;
}
figure.suntime .night {
  fill: #ccc;
}
figure.suntime line.time {
  stroke: black;
}
figure.suntime text.time {
  fill: gray;
}

figure.bookmarklet .sw-anchor-external-container {
  display: block;
  overflow: hidden;
  color: transparent;
}

figure.bookmarklet .sw-anchor-external-container::before {
  display: block;
  content: "Bookmarklet: ";
  font-weight: bolder;
  line-height: 1.5;
  color: #004000;
  background-color: transparent;
}

figure.bookmarklet .sw-anchor-external-container > a {
  white-space: nowrap;
  padding-block-start: 0.5em;
  padding-block-end: 0.5em;
  line-height: 2.0;
}

table.fig.col > tbody > tr > th {
  text-align: right;
  vertical-align: top;
}

table.fig.col > tbody > tr > td {
  vertical-align: top;
}

figure.math {
  border-color: #ddd;
  text-align: center;
}

figure.sw-items {
  margin: 1em 0em;
  border: none;
  padding: 0.3em 0.8em;
  background: #f0fff9;
  color: black;
}

figcaption.sw-itemtypes {
  font-size: 80%;
  font-weight: normal;
  text-align: end;
}

.amazon-item {
  display: block;
  cursor: pointer;
  margin: 1em 2em;
}

.amazon-item::after {
  content: "";
  display: block;
  clear: both;
}

.amazon-item > img {
  float: left;
  margin-right: 1em;
}

.amazon-item cite {
  display: inline;
  font-weight: bolder;
}

.amazon-item .authors {
  display: block;
  margin-left: 1em;
  font-size: 80%;
}

.amazon-item .authors > a {
  margin-right: 0.5em;
}

/* Examples */

.sw-example {
  margin: 0.8em 0 0.8em 3em;
  border-left: #004000 double 3px;
  padding-left: 1em;
  color: black;
  background-color: #FCFCFC;
  line-height: 2.0;
  font-size: 90%;
}

/* Code fragments */

code, samp, pre.code {
  color: #800000;
  font-family: "Courier New", monospace;
  white-space: pre-wrap;
}

.short code {
  word-break: break-all;
}


var {
  margin: 0 0.25em;
  padding: 0.2em 0.25em;
  background-color: #efefce;
  color: black;
  font-size: 95%;
}

var sub, var sup {
  font-style: normal;
}

.math var {
  margin: 0 0.05em;
  background-color: transparent;
}

.sw-f {
  margin: 0 0.25em;
  padding: 0.2em 0.25em;
  background-color: #effed9;
  color: black;
  font-size: 95%;
}

.sw-f.s::before { content: "[" }
.sw-f.s::after { content: "]" }
.sw-f.ss::before { content: "[[" }
.sw-f.ss::after { content: "]]" }

/* Quotations and citations */

.sw-refs {
  background-color: #FDFDEC;
  line-height: 1.5;
  padding: 0.3em .8em;
  margin-block-end: 0.5em;
}

.sw-refs > ul {
  margin: 0;
  padding-left: 0;
}

.sw-refs > ul > li {
  display: block;
  margin-left: 0;
  padding-left: 0;
}

.sw-refs .sw-anchor-end {
  position: static;
  font-size: 100%;
  display: inline;
}

.sw-refs .sw-anchor-external-container {
  display: block;
  line-height: 1.1;
  font-size: 60%;
}

.sw-refs .sw-anchor-external-container a {
  display: block;
  border-style: none;
  padding-block-end: 0;
  min-height: 2em;
  text-decoration: none;
}

.sw-refs .sw-anchor-external-container a:focus,
.sw-refs .sw-anchor-external-container a:active,
.sw-refs .sw-anchor-external-container a:hover {
  text-decoration: underline;
}

cite {
  font-style: normal;
  unicode-bidi: isolate;
}

cite:before {
  content: "『";
}

cite:after {
  content: "』";
}

.sw-csection {

}

.sw-csection:before {
  content: "「";
}

.sw-csection:after {
  content: "」";
}

.sw-src {
  font-style: normal;
  font-weight: normal;
  font-size: 60%;
  color: gray;
  vertical-align: super;
}

.sw-src:before {
  content: " [";
}

.sw-src:after {
  content: "] ";
}

q:before {
  content: " 「";
}

q:after {
  content: "」 ";
}

q q:before {
  content: " 『";
}

q q:after {
  content: "』 ";
}

ins.sw-snip {
  margin: 0.2em 0.4em;
  border: none;
  padding: 0.1em;
  line-height: 1;
  vertical-align: middle;
  font-size: 70%;
  background: rgba(255, 217, 217, 1);
  color: gray;
  text-decoration: none;
}

ins.sw-snip:empty::after {
  content: "...";
}

/* Emphases and important words */

strong {

}

em {
/*
  border-block-end: solid 0.1em;
  padding-block-end: 0.1em;
*/
  font-style: normal;
  -webkit-text-emphasis: dot;
}

em:lang(en) {
  font-style: italic;
  -webkit-text-emphasis: none;
}

.rfc2119 {
  text-transform: lowercase;
  font-variant: small-caps;
  font-style: normal;
  text-decoration: none;
  font-weight: bolder;
  font-family: sans-serif;
  -webkit-text-emphasis: none;
  text-emphasis: none;
}

.sw-weak {
  font-size: smaller;
  color: gray;
  background-color: transparent;
}

mark.sw-asis:not([hidden]) {
  display: inline-flex;
  flex-direction: column-reverse;
  background: transparent;
  color: inherit;
  text-indent: 0;
  vertical-align: var(--valign);
  text-align: center;
}

mark.sw-asis:not(.sw-asis-has-base) {
  line-height: 1.0;
}

mark.sw-asis:not([hidden]).after {
  flex-direction: column;
}

mark.sw-asis:hover {
  background: #ecffcc;
  color: black;
}

sw-asis-base {
  line-height: 1.0;
}

sw-asis-title,
mark.sw-asis::after {
  text-align: right;
  font: var(--annotation-side-font);
  color: var(--annotation-color);
  background-color: var(--annotation-background-color);
}

mark.sw-asis:not(.sw-asis-has-title)::after {
  display: block;
  content: "(ママ)";
}

mark.sw-asis:not(.sw-asis-has-title):lang(en)::after {
  content: "(sic)";
}

mark.sw-asis:not(.sw-asis-has-title)[title]::after {
  content: attr(title);
}

mark.sw-asis:hover::after {
  color: var(--annotation-hover-color);
  background: var(--annotation-hover-background-color);
}

sw-cursive {
  font-family: 'Cedarville Cursive', cursive;
}

sw-see {
  margin: 0 1em;
  background: transparent;
  font-size: 80%;
}

sw-see:not(:hover) {
  opacity: 0.7;
}

sw-see::before {
  content: "\01F449  ";
  white-space: nowrap;
}

sw-see .sw-anchor:not([hidden]) {
  display: inline-block;
}

sw-see .sw-anchor:link,
sw-see .sw-anchor:visited {
  min-width: 5em;
  text-align: center;
  font-size: 120%;
  line-height: 1.4;
  font-weight: bolder;
  border-block-end-style: solid;
  text-indent: 0;
}

/* Inline structures */

sub, sup, rt {
  font-size: 50%;
}

ruby {
  -webkit-ruby-position: before;
  ruby-position: before;
  line-height: 1.0;
}

sw-box.vertical ruby {
  vertical-align: middle;
  vertical-align: -webkit-baseline-middle;
}

ruby.sw-rubyb {
  -webkit-ruby-position: after;
  ruby-position: after;
}

ruby.sw-ruby-both {
  display: inline-flex;
  flex-direction: column-reverse;
  text-align: center;
  vertical-align: middle;
}

rp {
  display: none;
}

rt {
  text-align: center;
  line-height: 1;
}

ruby.sw-ruby > rt,
ruby.sw-rubyb > rt {
}

rt ~ rt {
  order: -1;
}

ruby.sw-okuri rt {
  text-align: left;
}

ruby.sw-okuri:not(.sw-ruby-both) > rt:not([hidden]) {
  display: inline;
  vertical-align: 1.5em;
}

ruby.sw-okuri.sw-ruby-both > rt:first-of-type {
  -webkit-margin-after: 1em;
}

ruby.sw-okuri.sw-ruby-both > rt:last-of-type {
  -webkit-margin-before: 1em;
}

math {
  display: inline;
  text-indent: 0;
}

math[class~=sw-frac],
math[class~=sw-root],
math[class~=sw-sqrt],
math[class~=sw-under],
math[class~=sw-underover] {
  margin-left: 0.3rem;
  margin-right: 0.3rem;
}

mfrac {
  display: inline-block;
  text-align: center;
  vertical-align: -50%;
  border-collapse: collapse;
}

mfrac > *:nth-child(1) {
  display: block;
  border-block-end: solid thin;
}

mfrac > *:nth-child(2) {
  display: inline-block;
  vertical-align: top;
}

msqrt, mroot {
  display: inline-flex;
  margin-inline-start: .5em;
  border-block-start: solid thin;
  vertical-align: middle;
}

msqrt::before,
mroot::before {
  margin-inline-start: -0.5em;
  line-height: 1;
  content: "\221A";
}

mroot > *:nth-child(2) {
  margin-inline-start: -0.75em;
  margin-inline-end: -0.25em;
  font-size: 80%;
  order: -1;
}

mtext {
  min-width: 1em;
  box-sizing: border-box;
  padding-left: 0.25em;
  padding-right: 0.25em;
  text-align: center;
  line-height: 1.4;
}

mroot > mtext:nth-child(2) {
  line-height: 1.0;
}

mtext > span {
}

munder, munderover {
  display: inline-flex;
  flex-direction: column;
}

munder {
  vertical-align: text-top;
}

munderover {
  vertical-align: middle;
}

munder > *:nth-child(2),
munderover > *:nth-child(2) {
  order: +1;
  font-size: 80%;
}

munderover > *:nth-child(3) {
  order: -1;
  font-size: 80%;
}

math[class~=sw-under] > munder > mtext:first-child > span,
math[class~=sw-underover] > munderover > mtext:first-child > span {
  font-size: 100%;
}

ruby.sw-dotabove > rt {
  line-height: 1.0;
}

sw-macron {
  text-decoration: overline;
}

sw-subsup:not([hidden]) {
  display: inline-flex;
  flex-direction: column-reverse;
  vertical-align: middle;
}

sw-box.vertical sw-subsup {
  vertical-align: middle;
  vertical-align: -webkit-baseline-middle;
}

sw-box.vertical sub,
sw-box.vertical sup {
  font-size: 50%;
  line-height: 1.0;
}

sw-box.vertical sub {
  vertical-align: -.5em;
}

sw-box.vertical sup {
  vertical-align: .5em;
}

sw-subsup.before {
  text-align: right;
}

sw-subsup > sub,
sw-subsup > sup {
  vertical-align: middle;
  font-size: 50%;
  line-height: 1.0;
  text-indent: 0;
}

sw-lines:not([hidden]) {
  display: inline-block;
}
sw-lines {
  vertical-align: middle;
  text-indent: 0;
}

sw-lines > sw-line:not([hidden]) {
  display: block;
}
sw-lines > sw-line {
  line-height: 1.4;
}

sw-fenced:not([hidden]) {
  display: inline-block;
  --fence-size: 100%;
  vertical-align: middle;
  text-indent: 0;
}

sw-fenced[data-fence-size="2"] { --fence-size: 200% }
sw-fenced[data-fence-size="3"] { --fence-size: 300% }
sw-fenced[data-fence-size="4"] { --fence-size: 400% }
sw-fenced[data-fence-size="5"] { --fence-size: 500% }
sw-fenced[data-fence-size="6"] { --fence-size: 600% }
sw-fenced[data-fence-size="7"] { --fence-size: 700% }
sw-fenced[data-fence-size="8"] { --fence-size: 800% }
sw-fenced[data-fence-size="9"] { --fence-size: 900% }

sw-fenced > sw-openfence,
sw-fenced > sw-closefence {
  font-size: var(--fence-size);
  vertical-align: middle;
}

/* Physical annotations */

b {
  font-weight: bolder;
}

i {
  font-style: italic;
}

u {
  text-decoration: underline;
}

sw-smallcaps {
  text-transform: lowercase;
  font-variant: small-caps;
}

sw-yoko {
  writing-mode: horizontal-tb;
  line-height: 1.0;
  text-indent: 0;
  --inline-mirroring: rotateY(180deg);
  --valign: 50%;
}

sw-tate {
  writing-mode: vertical-rl;
  direction: ltr;
  line-height: 1.0;
  text-indent: 0;
  vertical-align: middle;
  text-orientation: mixed;
  --inline-mirroring: rotateX(180deg);
  --valign: middle;
}

sw-l, sw-lt, sw-r, sw-rt, sw-v, sw-vt, sw-vb, sw-vbt,
sw-left, sw-right, sw-vrl, sw-vlr,
sw-leftbox, sw-rightbox, sw-leftbtbox, sw-rightbtbox, sw-vrlbox, sw-vlrbox {
  font-family: var(--suikawiki-composed-font-family);
}

sw-l,
sw-lt {
  unicode-bidi: bidi-override;
  direction: ltr;
  text-orientation: sideways;
  --inline-mirroring: rotateY(180deg);
}
sw-r,
sw-rt {
  unicode-bidi: bidi-override;
  direction: rtl;
  text-orientation: sideways;
  --inline-mirroring: rotateY(180deg);
}
sw-v,
sw-vt {
  text-orientation: mixed;
  --inline-mirroring: rotateX(180deg);
}
sw-vb,
sw-vbt {
  unicode-bidi: bidi-override;
  direction: rtl;
  text-orientation: mixed;
  --inline-mirroring: rotateX(180deg);
}
sw-lt:not([hidden]),
sw-rt:not([hidden]),
sw-vt:not([hidden]),
sw-vbt:not([hidden]) {
  display: inline-block;
}
sw-lt,
sw-rt,
sw-vt,
sw-vbt {
  text-indent: 0;
  transform: rotate(180deg);
}
:-webkit-any(sw-vrl, sw-vlr, sw-vrlbox, sw-vlrbox)
:-webkit-any(sw-l, sw-lt, sw-r, sw-rt) {
  --valign: middle;
  --inline-mirroring: rotateX(180deg);
}


sw-vrl:not([hidden]),
sw-vlr:not([hidden]),
sw-left:not([hidden]),
sw-right:not([hidden]) {
  display: block;
}

sw-vrl,
sw-vlr {
  text-orientation: mixed;
  --inline-mirroring: rotateY(180deg);
  --valign: middle;
}
sw-left {
  direction: ltr;
  --inline-mirroring: rotateX(180deg);
  --valign: 50%;
}
sw-right {
  direction: rtl;
  --inline-mirroring: rotateX(180deg);
  --valign: 50%;
}

sw-mirrored:not([hidden]) {
  display: inline-block;
}
sw-mirrored {
  text-indent: 0;
  transform: var(--inline-mirroring);
}

sw-mirrored.rtl {
  direction: ltr;
  unicode-bidi: bidi-override;
}

sw-br {
  white-space: pre;
}

sw-br-hyphen::after {
  content: "\23CE";
  font: var(--annotation-inline-font);
  color: var(--annotation-color);
  background-color: var(--annotation-background-color);
  vertical-align: middle;
}

/* Other inlines */

dfn {
  font-style: normal;
  font-weight: bolder;
  font-family: sans-serif;
}

dfn rt, strong rt,
h1 rt, h2 rt, h3 rt, h4 rt, h5 rt, h6 rt {
  font-weight: normal;
}

/* ------ Characters ------ */

.sw-sw-cc {
  background-color: transparent;
  color: inherit;
  font-family: ui-monospace;
  letter-spacing: 0.1em;
}

/* ISO/IEC 10646 style character names */
.sw-sw-cn, .charname {
  background-color: transparent;
  color: inherit;
  text-transform: lowercase;
  font-variant: small-caps;
  font-family: ui-monospace;
  letter-spacing: 0.1em;
}

.charname var {
  text-transform: none;
  font-variant: normal;
}

.sw-sw-ch:not([hidden]) {
  display: inline-block;
}
.sw-sw-ch {
  min-width: 1em;
  margin: 0;
  border: 1px solid #ccc;
  padding: 0;
  line-height: 1;
  vertical-align: bottom;
  text-align: center;
  font-size: 300%;
  font-family: var(--suikawiki-composed-font-family);
  background-color: transparent;
  color: inherit;
  text-indent: 0;
}

.sw-sw-ch-anchor:not([hidden]) {
  display: inline-block;
}
.sw-sw-ch-anchor {
  margin: 0 .5em;
  padding: .2em;
  text-align: center;
  text-indent: 0;
  vertical-align: middle;
}

/* Entity references (obsolete) */
.sw-replace {
  color: red;
}

.sw-replace:before, .sw-replace:after {
  content: " ";
}

.sw-char-glyph {
  width: 1em;
  height: 1em;
  vertical-align: middle;
  
  /* alt */
  color: red;
}

/* Edit forms */

form {
  border: blue dashed 0.1em;
  padding: 0.3em 0.7em;
}

form p {
  text-indent: 0;
}

textarea {
  width: 98%;
  height: 10em;
  padding: 0.3em;
}

textarea[name=text] {
  height: 30em;
}

textarea[name=names] {
  height: 14em;
}

input[name=title] {
  width: 98%;
}

.body-area {
  display: table;
  width: 100%;
}

.body-area > .text-toolbar {
  display: table-cell;
  width: 3em;
  vertical-align: top;
  text-align: right;
  line-height: 1.0;
}

.body-area > .text-toolbar > button {
  min-width: 3em;
}

.body-area textarea {
  box-sizing: border-box;
  height: 100vh;
}

section.errors {
  margin: 0;
  padding: 0;
  font-size: 70%;
  line-height: 1.0;
}

section.errors h1 {
  display: inline;
  margin: 0 1em 0 0;
  font-size: 100%;
}

section.errors h1::after {
  content: ":";
}

.errors ul {
  display: inline;
  margin: 0;
  padding: 0;
}

.errors li {
  display: inline-block;
  margin: 0 1em 0 0;
}

.errors li::after {
  content: ";";
}

/* Sidebar */

body > aside {
}

@media (min-width: 50em) {
  body.swe-has-sidebar {
    max-width: none;
    width: auto;
    padding-right: 10em;
  }

  body.swe-has-sidebar > aside:not(.swe-ad) {
    display: block;
    position: absolute;
    top: 7em;
    right: 0em;
    width: 10em;
    margin: 0;
  }
}

@media (min-width: 65em) {
  body.swe-has-sidebar {
    max-width: none;
    width: 60em;
    padding-right: 10em;
  }

  body.swe-has-sidebar > aside:not(.swe-ad) {
    display: block;
    position: absolute;
    left: 50em;
    top: 7em;
    margin: 0;
  }
}

@media (min-width: 80em) {
  body.swe-has-sidebar {
    width: 75em;
    padding-left: 15em;
    padding-right: 10em;
  }

  body.swe-has-sidebar > aside:not(.swe-ad) {
    left: 65em;
  }

  .article {
    position: relative;
  }
}

.swe-page-names {
  display: block;
  margin: 0 0 0 2rem;
  padding: 0 0 0 0.5em;
  font-size: 70%;
  line-height: 1.5;
}

.swe-page-names::before {
  content: "Names: ";
  display: block;
  margin-left: -0.5em;
  font-weight: bolder;
  font-size: 120%;
  color: #004000;
}

.swe-page-names li {
  display: block;
  margin: 0;
}

.swe-page-links {
  display: block;
  margin-left: 2rem;
  font-size: 80%;
}

/* Advertisements */

.swe-ad {
  display: block;
  text-align: center;
}

body > .swe-ad {
  margin-left: 2em;
}

aside .swe-ad {
  display: none;
  overflow: hidden;
}

@media (min-width: 50em) {
  aside .swe-ad {
    display: block;
  }
}

.swe-ad > ins {
  background: transparent;
  color: inherit;
  border: none;
  padding: 0;
}

#toc > ins[style*="height: 0px"],
.swe-ad > ins[style*="height: 0px"] {
  display: none ! important;
}

.swe-ad-amazon {
}

/* Search form */

.google-search-link {
  margin-left: 2em;
  font-size: 90%;
}

#cse-search-form {
  margin-left: 2em;
}

#cse-search-form form {
  border-style: none;
  padding-left: 0;
  width: auto;
}

#cse-search-form table,
#cse-search-form th,
#cse-search-form td {
  border-style: none;
  line-height: 1.0;
}

#cse-search-form tr:hover,
#cse-search-form table td:hover,
#cse-search-form table th:hover {
  background-color: transparent;
}

#cse-search-form .gsc-thinWrapper {
  width: auto;
  float: none;
}

#cse-search-form .gsc-tabsArea {
  margin: 0;
}

#cse-search-form .gsc-tabHeader.gsc-tabhActive {
  margin-top-color: #004000;
}

#cse-search-form .gsc-webResult .gsc-result {
  padding: 0;
  border-block-end: none;
}

#cse-search-form .gsc-webResult .gsc-result td {
  line-height: 2.0;
}

#cse-search-form .gs-title {
  text-align: left;
  height: auto;
  text-decoration: none;
}

#cse-search-form .gs-snippet {
  line-height: 1.2;
}

#cse-search-form .gs-visibleUrl {
/*  display: none; */
  line-height: 1.1;
}

#cse-search-form .gs-per-result-labels {
  display: none;
  line-height: 1.1;
}

/* Links */

.swe-links {
  margin-left: 0.4em;
  margin-right: 0.4em;
  padding: 0;
  text-indent: 0;
}

.swe-links li {
  display: inline;
  list-style: none;
  margin: 0;
  padding: 0;
}

.swe-links li::after {
  content: " ";
  padding-right: 0.5em;
}

/* Bookmarklet */

.suikawiki-bookmarklet-post,
.suikawiki-bookmarklet-post body {
  margin: 0;
  padding: 0;
}

.suikawiki-bookmarklet-post form {
  border-style: none;
  padding: 0.3em 0.6em;
}

.suikawiki-bookmarklet-post h1 {
  background: none;
  margin: 0;
  padding: 0.3em 0.6em;
  font-weight: bolder;
  font-size: 100%;
  text-align: left;
  color: #004000;
  line-height: 1.2;
  min-height: 0;
}

.suikawiki-bookmarklet-post p {
  margin: 0;
  text-align: left;
  line-height: 1.2;
}

.suikawiki-bookmarklet-post .buttons { margin-top: 1em; text-align: center }

.suikawiki-bookmarklet-post input:not([type=checkbox]) { width: 100% }

.suikawiki-bookmarklet-post input[name=title-lang] {
  width: 5em;
}

.suikawiki-bookmarklet-post button { min-width: 6em }
.suikawiki-bookmarklet-post .ok { font-weight: bolder }
.suikawiki-bookmarklet-post .cancel { font-size: smaller }

  .pattern-1 { background-color: #ffdddd }
  .pattern-2 { background-color: #ffffdd }
  .pattern-3 { background-color: #ddffdd }
  .pattern-4 { background-color: #dde5ff }
  .pattern-5 { background-color: #ffcccc }
  .pattern-6 { background-color: #cc99cc }
  .pattern-7 { background-color: #FFEFD5 }
  .pattern-8 { background-color: #E0FFFF }
  .pattern-9 { background-color: #98FB98 }
  .pattern-10 { background-color: #ADD8E6 }
  .pattern-11 { background-color: #F0E68C }
  .pattern-12 { background-color: #FFA07A }

.p1 sw-speaker { color: red; background: transparent }
.p2 sw-speaker { color: green; background: transparent }
.p3 sw-speaker { color: blue; background: transparent }
.p4 sw-speaker { color: orangered; background: transparent }
.p5 sw-speaker { color: purple; background: transparent }

/* 

License:

Copyright 2002-2023 Wakaba <wakaba@suikawiki.org>.

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.

Acknowledgements:

  This style sheet is partially inspired by
  <https://fred-wang.github.io/mathml.css/mathml.css>.

*/
