@charset "utf-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

figcaption, figure, footer, header, main, nav, section {
  display: block;
}

html {
  height: 100%;
}

body {
  background-color: #FFF;
  color: #000;
  font-family: "Noto Sans Japanese", sans-serif;
  line-height: 1.5;
  margin: 0;
  min-height: 100%;
  position: relative;
}

body > header {
  background-color: #976;
  border-top: 2px solid #000;
  border-bottom: 2px solid #000;
}

body > header p {
  margin: 1em;
}

header + nav {
  padding: 0 .5em;
}

header + nav ol {
  margin: .5em 0;
  padding: 0;
}

header + nav li {
  display: inline;
}

header + nav li:before {
  content: ' > ';
}

header + nav li:first-child:before {
  content: '';
}

main {
  padding: 0 5px 4em;
}

section {
  background-color: #FAFAFA;
  border: 1px solid #DDD;
  border-radius: .5em;
  clear: left;
  display: inline-block;
  margin: .5em;
  padding: 0 .5em;
  vertical-align: top;
}

body > footer {
  background-color: #976;
  border-top: 2px solid #000;
  bottom: 0;
  position: absolute;
  width: 100%;
}

body > footer p {
  color: #FFF;
  text-align: center;
}

h1, h2, h3 {
  border-radius: .3em;
  color: #FFF;
  line-height: 1.2;
}
h1:before, h2:before, h3:before {
  content: "\00A7";
  opacity: 0.5;
}

h1 {
  background-color: #0067EA;
  font-size: 200%;
  margin: .5em 0;
  padding: 4px 6px;
}

h2 {
  background-color: #C744D9;
  font-size: 167%;
  margin: .6em 0;
  padding: 2px 6px;
}

h3 {
  background-color: #FF95A0;
  font-size: 143%;
  margin: .7em 0;
  padding: 0 6px;
}

li > p {
  margin: 0;
}

table {
  border-collapse: collapse;
  display: inline-block;
  margin: 0 0 1em;
  vertical-align: top;
}

th, td {
  border: 1px dotted #AAA;
  padding: 2px;
}

img, img a {
  border: none;
}

main a:link {
  color: #0067EA;
}

main a:visited {
  color: #860098;
}

section dl {
  display: inline-block;
  margin: 0;
  vertical-align: top;
}

dt {
  background-color: #EEE;
  border: 2px solid #DDD;
  border-radius: .8em;
  display: inline-block;
  margin: 0 0 -1px;
  min-width: 5.5em;
  padding: 2px .5em 1px;
}

dd {
  border-left: 8px double #DDD;
  border-radius: 0 0 0 13px;
  margin: 0 0 .3em 1em;
  padding: 0 0 .5em .4em;
}

dt + dd {
  padding-top: .4em;
}

dd > p {
  margin: .5em 0;
}

dd > p:first-child {
  margin-top: 0;
}

dd > p:last-child {
  margin-bottom: 0;
}

dd > ul {
  margin: 0;
  padding: 0 0 0 1.5em;
}

figure {
  background-color: #D4D4D4;
  border-radius: 10px;
  display: inline-block;
  margin: 1em 0;
  padding: 0 .5em;
  vertical-align: top;
}

figcaption {
  font-weight: bold;
  text-align: center;
}

figcaption:first-child {
  margin-bottom: .5em;
}

figcaption:last-child {
  margin-top: .5em;
}

i {
  font-style: normal;
}

var {
  color: #FF5659;
  font-style: normal;
  text-shadow: 0 0 1px #C744D9;
}

pre {
  font-family: monospace;
  font-size: 100%;
  line-height: 1;
}
