/*
------------------------
 element base style
------------------------
*/
/* %block */
body{
	color:#000;
	font-size:1em;
	font-family:'MS PGothic', sans-serif;
	background-color:#ccf;
	background-image:url("../image/background.gif");
	background-repeat:repeat;
}

h1,h2,h3,h4,h5,h6{
	border-width:1px thin 1px thick;
	border-style:solid;
	border-color:#666;
	margin:0.1em 0;
	padding:0.1em 0.3em;
}

h1
{
	font-size:180%;
}

h2
{
	font-size:150%;
}

h3
{
	font-size:120%;
}

h4
{
	font-size:105%;
}

h5
{
	font-size:90%;
}

h6
{
	font-size:80%;
}

address{
}

p, pre, blockquote{
	margin:0.7em 1em;
}

p{
	font-size:1em;
}

pre{
	font-size:1em;
	font-family:monospace;
	border-width:0 0 0 thick;
	border-style:solid;
	border-color:#96f;
	padding:0.3em 1em;
	overflow:auto;
}

hr{
}

blockquote{
	font-size:1em;
	border-width:0 0 0 thick;
	border-style:solid;
	border-color:#00f;
	padding:0 0.3em;
}

blockquote[cite]:after{
	color:#999;
	content:"引用元：" attr(cite);
}

/* list */
ol{
}

ol li{
}

ul{
	margin-top:0.5em;
	margin-bottom:0.5em;
}

ul li{
}

dl{
	margin:0.5em 1.5em;
}

dl dt{
	font-weight:bold;
}

dl dd{
}

/* table */
table{
	border-width:thin;
	border-style:solid;
	border-color:#000;
	margin:0.5em 4em;
	width:65%;
	caption-side:bottom;
	border-collapse:separate;
	border-spacing:0.4em 0.2em;
	empty-cells:hide;
}

table caption{
	font-size:95%;
}

table th, table td{
	border-width:1px;
	border-style:dashed;
	padding:0.1em 0.4em;
}

table th{
}

table td{
}

table thead th, table thead td, table tfoot th, table tfoot td{
	border-style:solid;
}

/* %inline - %phrase */
em{
	font-weight:bold;
	font-style:normal;
}

strong{
	font-size:180%;
	font-weight:bold;
}

abbr, acronym{
	text-decoration:underline;
	cursor:help;
}

abbr{
}

acronym{
}

cite{
}


/* INLINE - %special */
br{
}

img{
	border-width:1px;
	border-style:solid;
	border-color:#000;
}

sub{
}

sup{
}

q{
}

/* anchor */
a{
}

a:link{
	color:#33f;
}

a:visited{
	color:#f63
}

a:hover{
	color:#3f6;
}

a:active{
	color:#f00;
}

/* %flow */
div{
}

div div{
	margin:0.3em;
}

ins{
}

del{
}


/*
------------------------
 class selector
------------------------
*/
/* %block */
div.section{
	margin-bottom:1em;
}

div.section h3{
	border-color:#66f;
}

div.section h3:first-letter{
	color:#33f;
}

div.subsection{
	margin:0.3em 0.5em;
}

dl.detail{
	margin:0.3em 0.5em;
}

dl.detail dt{
	font-size:105%;
	border-width:1px thin 1px thick;
	border-style:solid;
	border-color:#666;
	margin:0.1em 0;
	padding:0.1em 0.3em;
}

dl.detail dd{
	margin:0;
}

div.guide{
	text-align:right;
	height:2.5em;
}

div.guide p.prev{
	float:left;
}

div.guide p.prev:before{
	content:"← ";
}

div.guide p.next{
}

div.guide p.next:after{
	content:" →";
}

div.dialogue{
}

div.dialogue p.chara1{
}

div.dialogue p.chara2{
}

div.dialogue p.chara3{
}

p.back_page_top{
	text-align:right;
	margin:0.7em 0.3em;
}

.annotation{
}

.ability{
}

* > .question{
}

* > .question:first-letter{
	font-size:1.2em;
}

* > .question:before{
	content:"Q. ";
}

* > .question + p:first-letter{
	font-size:1.2em;
	font-weight:bold;
}

* > .question + p:before{
	content:"A. ";
}

/* %phrase */
.attention{
	color:#f00;
}

.chatem{
	letter-spacing:1em;
}

.AA{
	font-family:'MS UI Gothic', sans-serif;
}

.joke{
	text-decoration:line-through;
}

/* dating */
.dating{
}

.dating .year{
}

.dating .year:after{
	content:"/";
}

.dating .month{
	padding:0 0.1em;
}

.dating .month:after{
	content:"/";
}

.dating .date{
}

.dating .date:after{
	content:"";
}

/* anchr to external site */
a.external{
	text-decoration:overline underline;
	background-color:#cff;
}

a.external:link{
}

a.external:visited{
	background-color:#ffc;
}

a.external:hover{
	color:#f00;
	background-color:#fc9;
}

a.external:active{
}

/* RO attribute */
.attr_none{
}

.attr_water{
	background-color:#9cf;
}

.attr_earth{
	background-color:#ffc;
}

.attr_fire{
	background-color:#fcc;
}

.attr_wind{
	background-color:#cfc;
}

.attr_poison{
	background-color:#c9f;
}

.attr_holy{
}

.attr_shadow{
}

.attr_ghost{
	background-color:#c9f;
}

.attr_undead{
}


/*
------------------------
 id selector
------------------------
*/
#header, #menu, #main, #footer, div.guide{
	background-color:#fff;
	margin: 5px;
	border-width:thin;
	border-style:solid;
	border-color:#000;
}

/* header - top of the page */
#header{
	margin-top:1em;
	height:4em;
}

#site_name{
	font-size:200%;
	border:0;
	margin:0.1em 0.3em;
	padding:0;
}

#site_name:first-letter{
	color:#f00;
}

#site_description{
	font-size:95%;
	margin:0 0.3em 0.3em 1.5em;
	padding:0;
	float:left;
}

#access_counter{
	text-align:right;
	margin:0.2em;
}

#page_title{
	background-color:#fff;
	border-width:thin thin thin thick;
	border-style:solid;
	border-color:#000 #000 #000 #00f;
	margin: 5px;
	padding:0 0.3em;
	clear:left;
}

#page_title:first-letter{
	color:#00f;
}

/* menu */
#menu{
	padding:0.1em 0.3em 0.4em 0.3em;
}

#menu h2{
	font-size:120%;
	border:0;
	margin:0;
	padding:0 0.1em;
	display:none;
}

#menu h3{
	font-size:105%;
	text-align:center;
	white-space:nowrap;
	border-width:0 0 1px medium;
	border-style:dashed solid;
	border-color:#66f;
	margin:0 0.2em 0 0;
	padding:0;
	width:17%;
	float:left;
}

#menu ul{
	margin:0;
	padding:0;
	width:100%;
	line-height:1.2em;
}

#menu ul li{
	white-space:nowrap;
	margin:0 0.2em;
	padding:0;
	list-style-type:none;
	float:left;
}

#menu ul li a{
	font-weight:bold;
	text-decoration:none;
	margin:0;
	padding:0 0.7em;
	display:block;
	float:left;
	border-width:0 0 1px medium;
	border-style:dashed solid;
}

#menu ul li a:link{
	color:#66f;
	border-color:#99c;
	background-color:#fff;
}

#menu ul li a:visited{
	color:#f66;
	border-color:#f99;
	background-color:#fff;
}

#menu ul li a:hover{
	color:#00f;
	border-color:#03f;
	background-color:#cff;
}

#menu ul li a:active{
	color:#f00;
	border-color:#f00;
	background-color:#fcc;
}

#menu ul li a.current{
	color:#f00;
	border-width:0 1px 1px thick;
	border-color:#f00;
	border-style:solid;
	background-color:#ffc;
}

#menu ul li a.current:link{
	color:#f00;
	border-color:#f00;
	background-color:#ffc;
}

#menu ul li a.current:visited{
	color:#f00;
	border-color:#f00;
	background-color:#ffc;
}

#menu ul li a.current:hover{
	color:#00f;
	border-color:#03f;
	background-color:#fff;
}

#menu ul li a.current:active{
	color:#0f0;
	border-color:#0f3;
	background-color:#fff;
}

#menu ul li ul li{
	font-size:0.75em;
}

#site_menu, #sub_menu, #subsub_menu, #page_menu{
	margin:0.1em 0;
	padding:0;
	line-height:1.2em;
	clear:left;
}

#site_menu:after, #sub_menu:after, #subsub_menu:after, #page_menu:after{
	content:"　";
}

#menu ul li#link2map{
	float:right;
}

/* main */
#main{
	clear:left;
}

#update{
}

/* footer */
#footer{
	text-align:right;
	font-size:0.7em;
}

#footer *{
	margin:0;
	padding:0.1em;
}

#footer p{
	padding:0;
}

#footer address{
	border-width:thin 0 0 0;
	border-style:solid;
	border-color:#000;
}

#foot_RO_copy{
}

#foot_site_copy{
}
