@charset "Shift_JIS";
@import url("../template.css");

/*==== Document Module ====*/

body { 
  line-height: 1.6; 
  text-align: left; 
  color: #000; 
  background: #fff; 
  padding: 1em; 
}


/*==== Structural Module ====*/

h1, h2, h3, h4, h5, h6 { 
  font-weight: bolder; 
  line-height: 1.2; 
}
h1 { 
  font-size: 2em; 
  text-align: center; 
  background: #cfc; 
  margin-bottom: 1em; 
  border-top: 2px #9f9 solid; 
  border-bottom: 2px #9f9 solid; 
  border-left: 1.5em #9f9 solid; 
  border-right: 1.5em #9f9 solid; 
  padding: 0.1em; 
}
h2 { 
  font-size: 1.5em; 
  text-align: center; 
  background: #cfc; 
  margin-bottom: 0.5em; 
  border-top: 2px #9f9 solid; 
  border-bottom: 2px #9f9 solid; 
  padding: 0.1em 0.15em; 
}
h3 { 
  font-size: 1.2em; 
  background: #cfc; 
  margin-bottom: 0.5em; 
  border-top: 2px #9f9 solid; 
  border-bottom: 2px #9f9 solid; 
  padding: 0.15em 0.25em; 
}
h4 { 
  margin: 0.5em 0 0.5em 0.5em; 
  border-left: 1em #9f9 solid; 
  border-bottom: 1px #9f9 solid; 
  padding: 0.1em 0 0.18em 0.18em; 
}
p { 
  margin: 1.3em 1em; 
}
p.talk { 
  margin: 0.5em 1em; 
}
p.talk span.name { 
  font-weight: bolder; 
  margin: 0; 
  display: block; 
}
address { 
  font-style: normal; 
  line-height: 1.2; 
  text-align: right; 
  margin: 1.3em 0; 
  padding-left: 5em; 
  padding-right: 0.25em; 
  border-right: 0.4em #0c9 solid; 
}
blockquote { 
  margin: 1.3em 1em; 
  border: 2px #f90 solid; 
}
blockquote[title]:before { 
  font-weight: bolder; 
  color: #000; 
  background: #ffc; 
  line-height: 1.2; 
  display: block; 
  content: attr(title); 
  border-bottom: 1px #f90 solid; 
  padding: 0.2em 0.5em; 
}
blockquote[cite]:after { 
  color: #000; 
  background: #ffc; 
  line-height: 1.2; 
  text-align: right; 
  display: block; 
  content: "cite: "attr(cite); 
  border-top: thin #f90 solid; 
  padding: 0.2em 0.5em; 
}
pre { 
  font-size: 0.9em; 
  margin: 1.3em 1em; 
  padding: 0.2em; 
  border: 2px #ccc solid; 
}
pre.code { 
  background: #eee; 
}
hr { 
  margin: 0.5em 1em; 
  border-top: 1px #666 inset; 
}
div#header div.navi { 
  padding-left: 0.25em; 
  border-left: 0.4em #0c9 solid; 
  margin-bottom: 2em; 
}
div#news, div#toc, div#main, div#side { 
  margin: 1em 0; 
  border: thin #000 solid; 
}
div#main address { 
 margin: 1.3em 1em; 
}
div#main div.section, 
div#side div.section { 
  margin-top: 0em; 
  margin-bottom: 4em; 
}
div#main div.section div.section, 
div#side div.section div.section { 
  margin-top: 2em; 
  margin-bottom: 3em; 
}
div#main div.section div.section div.section, 
div#side div.section div.section div.section { 
  margin-top: 1.5em; 
  margin-bottom: 2em; 
}
div#footer { 
  padding-left: 2em; 
}
div.image { 
 margin: 1.3em 1em; 
}


/*==== Text Module ====*/

strong, dfn { 
  font-weight: bolder; 
}
em { 
  font-style: normal; 
  border-bottom: 3px #000 double; 
  padding-bottom: 0.05em; 
}
strong { 
  color: #c00; 
  font-size: 1.05em; 
}
dfn { 
  color: #099; 
  font-size: 1.05em; 
  font-style: normal; 
}
q { 
  color: #c60; 
  quotes: none; 
}
q:before { 
  content: "u"; 
}
q:after { 
  content: "v"; 
  
}
cite { 
  font-style: normal; 
  background: #ffc; 
}
cite:lang(en) { 
  font-style: italic; 
}
kbd { 
  color: #000; 
  background: #fff; 
  margin: 0 0.2em; 
  border: medium outset; 
  padding: 0 0.2em; 
}
code { 
  background: #ccc; 
}
samp { 
  color: #96f; 
}
var { 
  font-style: italic; 
  color: #900; 
}
abbr[title] { 
  border-bottom: thin #000 dotted; 
  padding-bottom: 0.05em; 
}
sub, sup { 
  font-size: 0.8em; 
}
sub { 
  vertical-align: sub; 
}
sup { 
  vertical-align: super; 
}
span.line, span.talk { 
  display: block; 
}
span.mark { 
  white-space: nowrap; 
}


/*==== Hypertext Module ====*/

a { 
  text-decoration: underline; 
}
a:link { 
  color: #00f; 
}
a:visited { 
  color: #609; 
}
a:active { 
  color: #f36; 
}


/*==== List Module ====*/

dl { 
  margin: 1.3em 1em; 
}
dt { 
  font-weight: bolder; 
  margin-top: 0.5em; 
  margin-bottom: 0.2em; 
  border-bottom: 2px #9cc solid; 
}
dd { 
  margin-left: 2em; 
}
dd dl { 
  margin: 0.65em 0; 
}
dd dl dt { 
  border-bottom: 1px #9cc solid; 
}
dd ul, dd ol { 
  margin: 0.5em 0 0.5em 2em; 
}
ul, ol { 
  margin: 1.3em 1em 1.3em 4em; 
}
ul { 
  list-style: disc none outside; 
}
ul li ul { 
  list-style-type: circle; 
}
ul li ul li ul { 
  list-style-type: square; 
}
ol { 
  list-style-type: decimal; 
}
li ul, li ol { 
  margin: 0.1em 0 0.1em 2em; 
}
li dl { 
  margin: 1.3em 0; 
}
td ul, td ol, td dl { 
  text-align: left; 
}
td ul, td ol { 
  margin: 0.5em; 
  list-style-position: inside; 
}
td li ul, td li ol { 
  margin: 0.1em 0 0.1em 1em; 
}


/*==== Tables Module ====*/

table { 
  border-spacing: 2px;
  margin: 1.3em 1em; 
  border: 2px #999 ridge; 
}
caption, th { 
  font-weight: bolder; 
}
caption { 
  text-align: center; 
  font-size: 1.1em; 
}
colgroup.header { 
  border-right: 2px #999 ridge; 
}
colgroup.total { 
  border-left: 2px #999 ridge; 
}
thead, tfoot { 
  background: #ffc; 
  border-bottom: 2px #999 ridge; 
}
thead { 
  border-bottom: 2px #999 ridge; 
}
tfoot, tr.total { 
  border-top: 2px #999 ridge; 
}
th, td { 
  text-align: center; 
  border: 1px #999 ridge; 
  padding: 0.25em; 
}
colgroup.text, td.text { 
  text-align: left; 
}


/*==== Image Module ====*/

img { 
  max-width: 100%; 
}


/*==== Edit Module ====*/

ins { 
  background: #ccc; 
}
del { 
  color: #666; 
  text-decoration: line-through; 
}


/*==== all elements ====*/

.example { 
  margin: 1.3em 1em; 
  border: 2px #96f solid; 
}
.example[title]:before { 
  font-weight: bolder; 
  color: #000; 
  background: #ffc; 
  line-height: 1.2; 
  display: block; 
  content: attr(title); 
  border-bottom: 1px #96f solid; 
  padding: 0.2em 0.5em; 
}
.bad-example { 
  margin: 1.3em 1em; 
  border: 2px #f00 solid; 
}
.bad-example[title]:before { 
  font-weight: bolder; 
  color: #000; 
  background: #ffc; 
  line-height: 1.2; 
  display: block; 
  content: attr(title); 
  border-bottom: 1px #f00 solid; 
  padding: 0.2em 0.5em; 
}
.aux { 
  font-size: 0.9em; 
  background: #ccc; 
  margin: 1.3em 1em; 
  border: thin #000 dotted; 
}
