@charset "utf-8";

/*======================================
 global
======================================*/
html
{
	height: 100%;
}

body
{
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku GothicPro", "Osaka", "Verdana", "Arial", "ＭＳ Ｐゴシック", sans-serif;
	padding: 0px;
	margin: 0px;
	font-size: .9em;
}

em
{
	font-style: normal;
	font-weight: bold;
}

strong
{
	font-style: normal;
	font-weight: bold;
	font-size: 120%;
}

ins
{
}

del
{
	text-decoration: line-through;
}

p
{
	margin: 0px;
	padding: 0px 0px 16px 0px;
	line-height: 1.7em;
}

h1
{
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku GothicPro", "Osaka", "Arial", "ＭＳ Ｐゴシック", sans-serif;
	font-size: 108%;
	letter-spacing: .1em;
}

h2,
h3
{
	margin: 0px;
	padding: 0px 0px 4px 0px;
	font-size: 100%;
}

img
{
	border: 0px;
}

a
{
	outline: none;
}

pre
{
	margin: 1em 2.5em;
	padding: 0.5em;
	border: 1px solid;
	font-size: 100%;
	font-family: "Osaka", "ＭＳ ゴシック", "MS Gothic", sans-serif;
}

code,
samp,
var,
kbd
{
	font-family: "Osaka", "ＭＳ ゴシック", "MS Gothic", sans-serif;
}

var
{
	font-style: italic;
}

dfn
{
	font-style: normal;
	font-weight: bold;
}

hr
{
	height: 1px;
	border-width: 0px;
}

address
{
	font-style: normal;
}


/*======================================
 image positioning
======================================*/
.left
{
	float: left;
	padding: 0px 8px 0px 0px;
}

.right
{
	float: right;
	padding: 0px 0px 0px 8px;
}

.center
{
	display: block;
	text-align: center;
	margin: 0 auto;
}


/*======================================
 layout
======================================*/
/* margin lefts / margin rights - to centre content */
#main,
#links,
#footer,
#logo,
#menu,
#submenu,
#content
{
	margin-left: auto;
	margin-right: auto;
}

/* main container */
#main
{
	width: 95%;
}

/* links above the logo / footer */
#links,
#footer
{
	width: auto;
	height: 20px;
	font-size: 88%;
/*
	text-transform: uppercase;
*/
	padding: 8px 21px 0px 19px;
}

#links
{
	text-align: right;
}

#footer
{
	text-align: center;
	border-top: 2px solid;
	clear: both;
}

#links a,
#footer a,
#links a:hover,
#footer a:hover
{
	text-decoration: none;
}

/*======================================
 logo
======================================*/
#logo
{
	width: auto;
	height: 125px;
	border-top: 2px solid;
	border-bottom: 5px solid;
}

#logo div#sitetitle,
#logo div#subtitle
{
	font-weight: bold;
}

#logo div#sitetitle,
#logo div#subtitle
{
	margin: 0px;
	letter-spacing: .2em;
}

#logo div#sitetitle
{
	padding: 28px 0px 0px 28px;
	font-size: 160%;
}

#logo div#subtitle
{
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku GothicPro", "Osaka", "Arial", "ＭＳ Ｐゴシック", sans-serif;
	padding: 5px 0px 0px 28px;
	font-size: 108%;
}


/*======================================
 navigation menu
======================================*/
#menu
{
	height: 32px;
	margin-left: 28px;
	margin-top: -32px;
	position: relative;
}

#submenu
{
	height: 27px;
	margin-left: 28px;
	position: relative;
}

#menu ul,
#submenu ul
{
	margin: 0px auto;
	padding: 0px;
}

#menu li,
#submenu li
{
	float: left;
	margin: 0px 5px 0px 0px;
	padding: 0px;
	list-style: none;
}

#menu li a,
#menu li .disabled,
#submenu li a,
#submenu li .disabled
{
	display: block;
	float: left;
	height: 19px;
	text-decoration: none;
	padding: 5px 19px 3px 19px;
/*
	text-transform: uppercase;
*/
	font-size: 0.75em;
	border: 0px;
}

#menu li a:hover,
#menu li a#selected,
#menu li a#selected:hover,
#submenu li a:hover,
#submenu li a#selected,
#submenu li a#selected:hover
{
	height: 19px;
	padding: 5px 19px 3px 19px;
	border: 0px;
}

#menu li .disabled,
#submenu li .disabled
{
	cursor: default;
}


/*======================================
 main content
======================================*/
#content
{
	width: auto;
	overflow: hidden;
}

/*======================================
 sidebar
======================================*/
#column1
{
	width: 15em;
/*
	margin: 22px 0px 0px 0px;
*/
	float: right;
	padding: 19px 19px 15px 19px;
}

.sidebaritem
{
	text-align: left;
	width: 14.5em;
	float: left;
	margin: 0px 0px 29px 4px;
}

.sidebaritem h1,
.sidebaritem h2,
.sidebaritem p
{
	margin: 0px 10px 0px 10px;
}

.sidebaritem h1
{
	font-weight: normal;
	padding: 8px 0px 16px 0px;
/*
	text-transform: uppercase;
*/
}

.sidebaritem p
{
	line-height: 16px;
	padding: 0px 0px 8px 0px;
}

.sidebaritem a,
.sidebaritem a:hover
{
	padding: 0px 0px 2px 0px;
	text-decoration: none;
}

.sidebaritem dl
{
	margin: 0px 0px 8px 0px;
	padding: 0px 10px 0px 10px;
}

.sidebaritem dt
{
	margin: 0px;
	border-bottom: 1px solid;
}

.sidebaritem dd
{
	margin: 0px 0px 0px 1em;
}

.sidebaritem dd + dt
{
	margin-top: 1em;
}

.sbilinks ul
{
	margin: 0px 0px 0px 0px;
	padding-top: 0px;
}

.sbilinks li
{
/*
	list-style: none;
*/
	list-style-position: outside;
	margin: 0px 0px 0px 19px;
	padding: 0px 0px 0px 0px;
}

.sbilinks li a,
.sbilinks li a:hover
{
	height: 16px;
	text-decoration: none;
	width: 149px;
}


/*======================================
 page content
======================================*/
#column2
{
	text-align: justify;
	width: auto;
	padding: 2px 3px 15px 19px;
	margin-right: 18em;
}

#column2 h1
{
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku GothicPro", "Osaka", "Arial", "ＭＳ Ｐゴシック", sans-serif;
	padding: 16px 0px 5px 0px;
	margin: 0px 0px 12px 0px;
	border-bottom: 1px solid;
	font-size: 150%;
/*
	text-transform: uppercase;
	font-weight: normal;
*/
}

#column2 a,
#column2 a:hover
{
	padding: 0px 0px 2px 0px;
	text-decoration: none;
	border-bottom: 1px dashed;
}

#column2 a:hover
{
	border-bottom: 1px solid;
}

/* Based on Nifty Corners: rounded corners without images */
/* By Alessandro Fulciniti */
/* http://www.html.it/articoli/nifty/index.html */
.rtop,
.rbottom
{
	display: block;
}

.rtop .r1,
.rtop .r2,
.rtop .r3,
.rtop .r4,
.rbottom .r1,
.rbottom .r2,
.rbottom .r3,
.rbottom .r4
{
	display: block;
	height: 1px;
	overflow: hidden;
}

.r1
{
	margin: 0 5px;
}

.r2
{
	margin: 0 3px;
}

.r3
{
	margin: 0 2px;
}

.rtop .r4,
.rbottom .r4
{
	margin: 0 1px;
	height: 2px
}

.sub-navigation
{
	margin-top: 1em;
}


/*======================================
 Table
======================================*/
table
{
	margin: 0px 2em 1em;
	border-collapse: collapse;
	border: 1px solid;
}

caption
{
	margin: 1em 2em 0.2em;
	text-align: left;
	font-weight: bold;
	caption-side: top;
}

th,
td
{
	padding: 0.3em;
	empty-cells: show;
	border: 1px solid;
}


/*======================================
 List
======================================*/
ul,
ol
{
	list-style-type: square;
	margin: 0px 0px 0px 2em;
	padding: 0.5em;
	line-height: 1.3em;
}

dl
{
	list-style-type: square;
	margin: 0px 0px 0px 1em;
	padding: 0.5em;
	line-height: 1.3em;
}

ul li,
ol li
{
	list-style-position: outside;
}

dt
{
	font-weight: bold;
}

dd
{
	margin-bottom: 0.5em;
}


/*======================================
 Table of contents
======================================*/
div.toc
{
	margin: 1em 1em 1em 0px;
	font-weight: bold;
}

div.toc ul,
div.toc ol
{
	margin: 0px 0px 0px 0.8em;
	padding: 0.5em;
	line-height: 1.8em;
	font-weight: normal;
}

div.toc ul ul,
div.toc ol ol,
div.toc ul ol,
div.toc ol ul
{
	margin: 0px 0px 0px 1.5em;
	padding: 0px;
	line-height: 1.8em;
}

div.toc ul li,
div.toc ol li
{
	list-style-position: inside;
}

div.toc ul.no-marker li,
div.toc ol.no-marker li
{
	list-style-position: outside;
	list-style-type: none;
}


/*======================================
 Quote
======================================*/
q
{
	padding: 1px;
	border: 2px dashed;
}

q:before, q:after
{
	content: "";
}

blockquote
{
	margin: 1em 2.5em;
	padding: 0.8em 1em 0px 1em;
	border: 2px dashed;
	border-left: 3px solid;
}

div.quote,
div.chapter div.quote
{
	margin: 1em 2.5em;
	padding: 0px;
}

div.quote blockquote
{
	margin: 0px;
}

div.ref
{
	text-align: right;
	font-size: 100%;
}

div.quote div.ref
{
	margin: 0px 0px 0px auto;
	padding: 0.3em;
	width: 26em;
	border-left: 2px dashed;
	border-right: 2px dashed;
	border-bottom: 2px dashed;
}

cite
{
	font-style: normal;
}


/*======================================
 Introduction box
======================================*/
div.introduction,
div.chapter div.introduction
{
	margin: 1em 2.5em;
	padding: 0px;
}

div.introduction div.contents
{
	margin: 0px;
	padding: 0.5em;
	border: 1px solid;
	border-width: 2px 2px 2px 3px;
}

div.introduction div.ref
{
	margin: 0px 0px 0px auto;
	padding: 0.3em;
	width: 26em;
	border-left: 2px solid;
	border-right: 2px solid;
	border-bottom: 2px solid;
}

div.introduction div.title,
blockquote div.title
{
	margin-left: 0px;
	margin-bottom: 0.5em;
	padding-left: 0.5em;
	border-left: 3px solid;
}


/*======================================
 Box
======================================*/
div.box
{
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding-bottom: 1em;
	border: 1px solid;
}

div.box div.box-title
{
	margin: 0px 0px 1em;
	padding: 5px;
	border-bottom: 1px solid;
}

div.box div.box-tag-title
{
	margin: 0px 0px 1em;
	padding: 5px;
	width: 30em;
	border-right: 1px solid;
	border-bottom: 1px solid;
}

div.box hr.box-separator
{
	margin-left: 0px;
	margin-right: 0px;
}

div.box p,
div.box div
{
	margin: 1em 1em 0px;
	padding-bottom: 0px;
}

/*
div.box p + p,
div.box p + div,
div.box div + p,
div.box div + div
{
	margin: 0px 1em 0px;
}
*/


/*======================================
 Download
======================================*/
div.download
{
	margin-left: 2em;
}

div.download .item
{
	padding: 1em;
}


/*======================================
 Changelog
======================================*/
div.changelog
{
	width: 95%;
}

div.changelog h2
{
	margin-top: 1em;
	border-bottom: 1px solid;
}

div.changelog h3
{
	margin: 0px 0px 0px 0.5em;
	padding: 0px;
	font-weight: normal;
}

div.changelog ul
{
	margin-left: 2em;
}


/*======================================
 Miscellaneous
======================================*/
div.copyright
{
	text-align: center;
	font-size: small;
}

#column2 a.button
{
	padding: 5px 2em;
	border: 1px solid;
}

#column2.headline h1
{
	font-size: 110%;
}
