@charset "Shift_JIS";

/*
 * screenメディア用スタイルシート
 * http://confetto.s31.xrea.com/
 */

* {
	margin: 0;
	padding: 0;
	font: inherit;
}

/******************************************************************************
 * ブロックレベル要素
 ******************************************************************************/

html {
	background: #fff url(/Icons/top-shadow.png) repeat-x top;
}

body {
	color: #333;
	background: url(../Icons/snail.png) no-repeat fixed right bottom;
	line-height: 1.5;
	padding: 8px 5%;
}

address {
	font-family: "Times New Roman", Times, serif;
	font-style: italic;
	text-align: right;
	margin-top: 1em;
	border-top: 1px solid #ccc;
}

blockquote {
	margin: 1em 40px;
	border-left: .3em solid #333;
	padding-left: 8px;
}

blockquote:before {
	display: block;
	font-style: italic;
}

blockquote[cite]:before {
	content: attr(cite) " より";
}

blockquote[title]:before {
	content: attr(title) " より";
}

fieldset, form, p {
	margin: 1em 0;
}

p {
	text-align: justify;
}

pre {
	font-family: monospace;
	line-height: 1.2;
	white-space: pre;
	border: 1px solid #ccc;
	padding: 4px;
	margin-left: -4px;
	overflow: auto;
	background: #eee /*url(/Icons/box-gra.png) no-repeat left bottom*/;
}

/* 見出し */

h1, h2, h3, h4, h5, h6 {
	font-weight: bolder;
}

h1 {
	font-size: 2em;
}

h2 {
	font-size: 1.2em;
	margin: 2.5em 0 1.5em -8px;
	padding-left: 8px;
	border-bottom: 1px solid #ccc;
	color: #369;
}

h3 {
	font-size: 1em;
	margin: 1em 0;
	border-bottom: 1px solid #ccc;
}

h4 {
	margin: 1em 1em 0;
}

h5 {
	font-size: .83em;
	margin: 1.67em 0;
}

h6 {
	font-size: .67em;
	margin: 2.33em 0;
}

/* リスト */

ul, ol, dl {
	margin: 1em 0;
}


ul, ol {
	padding-left: 40px;
}

dd {
	margin-left: 40px;
}

ul {
	list-style-image: url(../Icons/arrow.png);
}

li ul, li ol, li dl,
dd ul, dd ol, dd dl,
td ul, td ol, td dl {
	margin-top: 0;
	margin-bottom: 0;
}

td ul, td ol {
	padding-left: 0;
	list-style: none;
}

/* 表 */

table {
	border-collapse: collapse;
	margin: 0 -4px;
}

thead {
	background: #eee /*url(/Icons/box-gra.png) no-repeat top right*/;
}

td, th {
	border: 1px solid #ccc;
	padding: 0 4px;
}

th {
/*	background-color: #eee;
*/	text-align: center;
}


caption {
	text-align: center;
}

/******************************************************************************
 * インライン要素
 ******************************************************************************/

/*
 * アンカー
 */

a:link {
	color: #009;
}

a:visited {
	color: #606;
}

a:active {
	color: #f00;
}

a[name]:active {
	color: inherit;
}

a:hover, a:focus {
	background-color: #eee;
}

a[name]:hover, a[name]:focus {
	background-color: transparent;
}

a[rel~="contents"] {
	background-image: url(../Icons/toc.png);
	background-repeat: no-repeat;
	background-position: left;
	padding-left: 18px;
}

a[hreflang|="en"]:after {
	content: " [英語]";
	font-size: smaller;
}

a[href^="mailto:"]/*, a[href$=".zip"]*/ {
	background-repeat: no-repeat;
	background-position: left;
	padding-left: 18px;
}

a[href^="mailto:"] {
	background-image: url(../Icons/mail.png);
}

/*
a[href$=".zip"] {
	background-image: url(../Icons/zip.png);
}
*/

/*
 * その他インライン要素
 */

abbr {
	border-bottom: 1px dotted;
}

cite {
	font-style: italic;
}

code, var {
	font-family: "Courier New", Courier, monospace;
}

var {
	font-style: italic;
}

del {
	text-decoration: line-through;
}

ins {
	text-decoration: underline;
}

/* Mozilla 5.0系バグ対策 */
del *, ins * {
	text-decoration: inherit;
}

em, strong {
	font-weight: bolder;
}

strong {
	color: #f00;
	border-bottom: 3px double;
}

img, input {
	vertical-align: middle;
}

img {
	border-width: 0;
}

textarea, kbd, samp {
	font-family: monospace;
}

input[size], textarea {
	color: #333;
	background: url(/Icons/alpha.png);
	font-family: monospace;
	padding: 1px;
}

input[size]:focus, textarea:focus {
	background: #fff none;
}

input[type="submit"],
input[type="reset" ],
input[type="button"] {
	padding: 0 8px;
}

q {
	quotes: '「' '」';
}

q[lang|="en"] {
	quotes: '"' '"';
}

q:before {
	content: open-quote;
}

q:after {
	content: close-quote;
}

sub, sup {
	font-size: .83em;
}

sub {
	vertical-align: sub;
}

sup {
	vertical-align: super;
}

/******************************************************************************
 * サイト独自の要素
 ******************************************************************************/

/* アクセスキー */

[accesskey]:after {
	content: "[" attr(accesskey) "]";
	font-family: "Courier New", Courier, monospace;
	font-size: smaller;
	text-transform: uppercase;
}

/* 文書内目次 */

ul.toc {}

/* スタイルシート切り替えフォーム */

#select-style {
	position: absolute;
	top: 0;
	right: 0;
}

/* 広告 */

.ad-block {
	text-align: center;
	margin: 1em 0;
}

#content .ad-block {
	text-align: left;
}

/* 注意を促す段落 */

.notice:before {
	content: "Notice: ";
	font-size: smaller;
	font-weight: bolder;
}

.warning {
	background-color: #fee;
	border: 1px solid #f00;
	padding: 4px;
	margin-left: -4px;
	margin-right: -4px;
}

.warning:before {
	content: "Warning: ";
	font-size: smaller;
	font-weight: bolder;
	color: #f00;
}

/* ディレクトリ構成の表現 */

ul.directories, ul.directories ul {
	list-style-image: url(../Icons/file.png);
}

.directory {
	list-style-image: url(../Icons/folder.png);
}

/* ダウンロードリスト */

ul.download-list {
	list-style-image: url(../Icons/data_s.gif);
}

/* 段組用のコンテナ */

/*
#header, #content, #sidebar {
	border: 1px dotted red;
}
*/

#header {
	padding: 2em 0;
}

#column-content {
	width: 100%;
	float: left;
	margin-right: -176px;
}

#content {
	margin-right: 176px;
}

#sidebar {
	float: right;
	width: 160px;
}

#footer, address {
	clear: both;
}

/* 段組用のコンテナの中身 */

#header p {
	margin: 0;
}

#sidebar h2 {
	font-size: 1em;
}

#sidebar input[size] {
	width: 115px;
}

#sidebar textarea {
	width: 160px;
}

#sidebar ul, #sidebar ol {
	padding-left: 20px;
}

#sidebar dd {
	margin-left: 8px;
}

#content > :first-child, #sidebar > :first-child {
	margin-top: 0;
}

/* サイト内検索 */

#cse-search-box input[type="submit"] {
	padding: 0;
	background: #fff url(/Icons/button-back.png) repeat-x 1px 1px;
	border: 1px solid #999;
}

/******************************************************************************
 * MSIE向けの特殊な記述
 ******************************************************************************/

* html th {
	font-weight: normal;
}

* html em {
	font-style: normal;
}

* html pre {
	width: 100%;	/* widthがないと、overflow:autoがきかない */
}

* html #content, * html #sidebar {
	overflow: hidden;
}
