body{
font-size: 100%;
color: #333333;
background-color: #ffff99;
padding: 0em 1em;
}

a:link, a.visited, a:active{text-decoration: underline;}
a:link{color: #0000ff;}
a:visited{color: #990099;}
a:active{color: #ff0000;}
a img{color: #ffffcc;/*transparent不可*/}

/*見出し*/
h1, h2, h3{
font-style: normal;
font-weight: bold;
}

h1, h2{color: #666666;}

h1{
font-size: 2em;
text-align: center;
margin: 0em;
border-top-width: 5px;
border-right-width: 0em;
border-bottom-width: 5px;
border-left-width: 0em;
border-color: #ffccff;
border-style: double;
padding: 5px 0em;
background-color: #ffffcc;
}

h2{
font-size: 1.5em;
margin: 1em 0em 0em 0em;
border: none;
padding: 0em;
}

h2.navi{
display: none;
}

/*フレーズ（NN4.xでサポートされているもの）*/
em, strong, cite, samp, code, var{
font-style: normal;
}

em{
font-weight: bold;
color: red;
}

strong{
font-size: 1.2em;
font-weight: bold;
color: red;
background-color: yellow;
line-height: 1.5em;
}

cite, samp{
font-weight: bold;
color: #339966;
}

samp, code, var{
font-size: 0.8em;
font-family: monospace;
}

/*シングルブロック*/
.single{
display: block;
margin: 1em 0em;
border: 3px solid #ffccff;
padding: 0.5em;
background-color: #ffffcc;
}

/*連続するブロックの最初*/
.start{
display: block;
margin: 1em 0em 0em 0em;
border-top-width: 3px;
border-right-width: 3px;
border-bottom-width: 0em;
border-left-width: 3px;
border-color: #ffccff;
border-style: solid;
padding: 0.5em 0.5em 1em 0.5em;
background-color: #ffffcc;
}

/*汎用（連続するブロックの中間）*/
h3{
font-size: 1em;
}

p{
text-indent: 1em;
}

h3, p, dl{
padding-left: 0.5em;
}

h3, p, dl{
margin: -1.5em 0em 0em 0em;
}
blockquote{
margin: -1.5em -40px 0em -40px;/*emは不可*/
/*right,bottomの負マージン指定は無理っぽい*/
}

blockquote p{
color: #0099cc;
border-color: #00cc99;
}

ul, ol{
margin: -1.5em 0em 0em -40px;/*emは不可*/
padding-left: 2em;
}

h3, blockquote, pre, p, ul, ol, dl{
border-top-width: 0em;
border-right-width: 3px;
border-bottom-width: 0em;
border-left-width: 3px;
border-color: #ffccff;
border-style: solid;
padding-top: 2.5em;
padding-right: 0.5em;
padding-bottom: 1em;
background-color: #ffffcc;
line-height: 1.5em;
}

ul p{
border-top-width: 0em;
border-right-width: 0em;
border-bottom-width: 0em;
border-left-width: 0em;
margin: 0em;
padding-top: 0em;
}

/*連続するブロックの終わり*/
.end{
display: block;
margin: -1em 0em 0em 0em;
border-top-width: 0em;
border-right-width: 3px;
border-bottom-width: 3px;
border-left-width: 3px;
border-color: #ffccff;
border-style: solid;
padding: 2.5em 0.5em 0.5em 0.5em;
background-color: #ffffcc;
line-height: 1.5em;
}

/*細かい指定、バグ避けなど*/
p.end{
margin: -1.5em 0em 0em 0em;
}

ul.single, ul.start, ul.standard, ul.end, ol.single, ol.start, ol.end{
margin-left: -40px;/*emは不可*/
padding-left: 2em;
}

ul li{
list-style-type: none;
}

ol li{
list-style-type: decimal;
}

ul.single li, ul.start li, ul.standard li, ul.end li{
list-style-type: disc;
}

ul.navi{
text-align: center;
margin: 1em 0em 1em -40px;/*emは不可*/
border: 3px solid #ffccff;
padding: 0.5em 0em;
}

ul.navi li{
display: inline;
}

ul.mado{
margin: 0em 1em 0em 0em;
border: none;
padding: 0em 0em 0em 35%;
background-color: #ffff99;
text-align: left;
}

ul.mado img{
display: block;
margin: 0em 1em 0em auto;
text-align: right;
}

dl p, dl p.single, dl p.start, dl p.end{/*dd pは不可、ddを直接セレクタに用いるとバグる*/
/*他のセレクタの宣言と並列させるとバグるので全部上書き*/
display: block;
margin: 1em 1em 1em 1em;
border: 0em none #ffffcc;
padding: 0em 0em 0em 0em;
background-color: #ffffcc;
line-height: 1.5em;
}

img.banner{/*画像がテキストに重なるバグ対策、危険かも*/
display: block;
margin: 1em 0em 1.5em 0em;
border: none;
padding: 0em;
}

address.end{
padding: 2.5em 2.5em 0.5em 0em;
}

address{
font-style: normal;
font-weight: bold;
text-align: right;
}
