@charset "Shift_JIS";

/*

【スタイル名】
	高天原基礎スタイル

【目標】
	各XHTML用CSSの基本部分の指定を行ひ、全体的なメンテナンス性を向上させる。

【記述基準】
	セレクタ配置  ：全称→タイプ→擬似→子孫→子供→隣接→属性→クラス→ID
	プロパティ配置：特殊→ブロック（margin→padding→background→border）→テキスト→フォント
	
	プロパティ指定時における標準記法：
		・余白  ：上下方向へはem、左右方向へは%を用ゐる。
		・線    ：px、又はemで統一する。
		・その他：%で統一する。
		・色    ：#rrggbb、又は#rgb方式とする

【未定義要素】
	XHTML要素のうち big, small, dfn, kbd, cite, strong, var, samp, acronym, address要素は高天原下で用ゐない事を前提に未定義とする。
	ユーザスタイルとして使ふ場合は独自に定義してください。

【特殊定義クラス】
	div.section      ：汎用セクション疑似要素
	div.warning      ：警告セクション疑似要素
	div.introduction ：導入セクション疑似要素
	div.contents     ：目次セクション疑似要素
	div.note         ：附記セクション疑似要素

【二次利用等】
	高天原綜合案内書（http://www.takamagahara.info/annai）の規定に拠るものとします。

*/


/* 初期値 */
*	{
 margin  : 0 ;
 padding : 0 ;
 border  : none ;
 color   : #000 ;
 text-decoration: none ;
 text-align     : left ;
 font-size      : 100% ;
 font-style     : normal ;
 font-weight    : normal ;
}
*[title]	{
 cursor	: help ;
}

body,
h1, h2, h3, h4, h5, h6,
p,
ol, ul, dl, dd, dt,
blockquote,
hr,
pre,
div,
ins, del,
form, fieldset	{ display : block }

li      { display : list-item }
head    { display : none }

table   { display: table }
tr      { display: table-row }
thead   { display: table-header-group }
tbody   { display: table-row-group }
tfoot   { display: table-footer-group }
col     { display: table-column }
colgroup{ display: table-column-group }
td, th  { display: table-cell }
caption { display: table-caption }




/* 基調 */
html    { background : #fff ; }




/* 基本要素 */
h1	{
 margin     : 3em 4% ;
 text-align : center ;
 font-size  : 180% ;
}
h2	{
 padding     : 0.1em 2% ;
 font-size   : 120% ;
 font-weight : bold ;
}
h3	{
 margin  : 3em 0 1em 0 ;
 padding : 0.1em 2% ;
 border  : solid 1px #000 ;
}
h4	{
 margin  : 1em 1% ;
 padding : 0.1em 0 0.1em 1% ;
 border-left-style : solid ;
 border-left-width : 10px ;
}
h5	{
 margin  : 1em 4% ;
 padding : 0.1em 0 0.1em 1% ;
 border-left-style : double ;
 border-left-width : 10px ;
}
h6	{
 margin  : 1em 8% ;
 padding : 0.1em 0 0.1em 1% ;
 border-left-style : solid ;
 border-left-width : 2px ;
}
h3, h4, h5, h6 {
 font-size   : 105% ;
 font-weight : bold ;
}

p	{
 margin      : 2em 2% ;
 text-indent : 1em ;
 line-height : 170% ;
}
h3+ p, h4+ p, h5+ p, h6+ p	{
 margin-top  : 0.5em ;
}

a:link		{
 color           : #33f ;
 text-decoration : underline ;
}
a:visited	{
 color           : #c0c ;
 text-decoration : underline ;
}
a:hover		{
 color           : #f66 ;
 text-decoration : underline ;
}
/* 註：基本的にa要素には子孫要素を含めないこととする */




/* section関連要素 */
div.section	{}
div.section div.section {
 clear        : both ;
 margin       : 4em 4% ;
 border-style : solid ;
 border-width : 1px ;
}
div.section div.section div.section {
 margin  : 2em 1% ;
 padding : 0 ;
 border  : none ;
}
div.section div.section div.section div.section {
 margin  : 2em 0 ;
}

div.introduction	{
 margin      : 1em 4% ;
 padding     : 0 1% ;
 background  : #fffff6 ;
 border      : solid 1px #dcb ;
}
div.introduction p	{
 margin      : 1em 2% ;
 text-indent : 0em ;
}

div.warning		{
 margin      : 1em 4% ;
 padding     : 0 ;
 background  : #fff0ff ;
 border      : solid 1px #f00 ;
}
div.warning h2	{
 display     : inline ;
 position    : relative ;
 top         : 0.2em ;
 left        : 0 ;
 margin      : 0 ;
 padding     : 0.3em 2% ;
 background  : #f00 ;
 border      : none ;
 color       : #fff ;
}

div.contents	{
 margin      : 1em 4% ;
 padding     : 0 1% ;
 background  : #fffff6 ;
 border      : solid 1px #dcb ;
}
div.contents li		{ font-size   : 95% ; }
div.contents li li	{ font-size   : 100% ; }

div.note		{
 margin      : 2em 2% ;
 padding     : 0.5em 1% ;
 background  : #ffe ;
 border      : solid 1px #ccc ;
 font-size   : 90% ;
}
div.note:before {
 content : "附記" ;
 display : block ;
 color   : #666 ;
 margin  : 0 0 1em 0 ;
}
div.note p {
 margin:0.5em 1%;
 color:#666;
}




/* リスト */
ul,ol       { margin : 1.5em 2% 1.5em 3% ; }
li ul,li ol { margin : 0.3em 0 0.3em 3% ; }
ul          { list-style-type : disc ; }
ul ul       { list-style-type : circle ; }
ul ul ul    { list-style-type : square ; }
ol          { list-style-type : decimal ; }
ol ol       { list-style-type : lower-alpha ; }
ol ol ol    { list-style-type : lower-roman ; }		/* 「いろは」とか実装依存の場合は優先度を指定出来たら好いと思ふ */
li          {
 line-height : 130% ;
 margin      : 0 0 0.8em 2% ;
}
ol.navi		{ margin:0.5em 2% ; }
ol.navi li	{
 display   : inline ;
 margin    : 0 ;
 font-size : 90% ;
}
ol.navi li:before	{
 content:" > ";
}

dl	{
 margin  : 2em 2% ;
}
dt	{
 margin  : 1em 0 0 0 ;
 padding : 0.1em 1% ;
 border  : solid 1px #000 ;
}
dd	{
 margin      : 1em 2% ;
 text-indent : 1em ;
 line-height : 170% ;
}
dt+dt	{ margin-top : 0.1em ; }
dt+dd	{ margin-top : 0.5em ; }
dd dl	{ margin     : 0.2em 0.4% ; }
dd dt	{ line-height: 100% ; }
dd dd	{ line-height: 70% ; }

/* objectを包括するdl要素。なんか巧くないなあ */
dl.outline_object	{
 float  : right ;
 width  : auto ;
 clear  : both ;
 margin : 1em 1% 0 1% ;
}
dl.outline_object dt	{
 margin      : 0 ;
 border      : none ;
 background  : transparent ;
 text-align  : center ;
}
dl.outline_object dd	{
 text-align  : center ;
 white-space : nowrap ;
}
dl.inline_object	{
 text-align  : center ;
}
dl.inline_object dt	{
 display     : inline ;
 margin      : 0 ;
 border      : none ;
 background  : transparent ;
}
dl.inline_object dd	{
 text-align  : center ;
}





/* 引用 */
blockquote	{
 margin      : 2em 2% ;
 padding     : 0.5em 1% ;
 background  : #f9ffff ;
 border      : solid 1px #ccc ;
 border-left : solid 4px #393 ;
 font-size   : 95% ;
}
blockquote[title]:before	{
 display     : block ;
 content     : ""attr(title)"より引用" ;
 color       : #393 ;
 margin      : 0 0 1em 0 ;
}
blockquote[cite]:after	{
 display     : block ;
 content     : "《参照："attr(cite)"》" ;
 margin      : 1em 0.4% 0.2em 0 ;
 color       : #393 ;
 text-align  : right ;
}
blockquote p	{
 margin      : 0.5em 2%;
}
blockquote blockquote	{
 font-size   :100%;
}

q	{
 quotes      : "「" "」" "『" "』" ;
 color       : #393 ;
}
q:before	{
 content     : open-quote ;
}
q:after		{
 content     : close-quote ;
}




/* その他 */
em	{
 color         : #f33 ;
 font-weight   : bold ;
}

abbr	{
 border-bottom : solid 2px #f96 ;
}

code	{
 color         : #099 ;
}

sup,
sub		{ 
 font-size     : 75% ; }

hr		{
 padding       : 1em 0 2em 0 ;
}
hr:before	{
 display       : block ;
/* content       : "◆　　　　　　　◆　　　　　　　◆" ;*/
 content       : "＊" ;
 text-align    : center ;
}

pre		{
 margin        : 1em 2% ;
 padding       : 1em 2% ;
 border        : dotted 1px #000 ;
 font-size     : 95% ;
}




/* テーブル・フォーム */
table	{
 width          : 90% ;
 margin         : 2em auto ;
 border-spacing : 0 ; 
 text-align     : center ;
 font-size      : 95% ;
}
caption	{
 caption-side   : bottom ; 
 padding        : 0.5em ;
 text-align     : center ;
}
caption:before	{
 content        : "▲ " ;
}
td	{
 padding        : 0.2em ;
 background     : #fdf ;
 border         : solid 1px #f3f3ff ;
}
th	{
 padding        : 0.2em ; 
 background     : #c99 ;
 border         : solid 1px #f3f3ff ;
 color          : #fff ; 
 text-align     : center ;
 font-weight    : bold ;
}
th[scope="col"]	{}
thead th	{}
tfoot th	{}

input,textarea	{
 border        : inset 1px #000 ;
 color         : #000 ;
 font-size     : 95% ;
}
input[type="submit"]	{ border-style : outset ; }



/* ins/del */
ins {
 margin      : 2em 2% ;
 padding     : 1em 2% ;
 background  : #fff9ff; 
 border      : solid 1px #ccc ;
 border-left : solid 4px #606 ;
 font-size   : 95% ;
}
ins:before	{
 display     : block ;
 content     : ""attr(datetime)"追記" ;
 color       : #606 ;
}

del	{
 margin      : 2em 2% ;
 padding     : 1em 2% ;
 background  : #f6f6f6 ;
 border      : solid 1px #ccc ;
 border-left : solid 4px #999 ;
 color       : #999 ;
 font-size   : 95% ;
}
del:before	{
 display     : block;
 content     : ""attr(datetime)"削除" ;
 color       : #999 ;
}
del *	{ 
 color       : #999 ;
 text-decoration : line-through ;
}
ins del,
del ins,
blockquote ins,
ins blockquote,
blockquote del,
del blockquote	{ font-size:100%; }



/* ルビ 　（暫定処置とは難しいものだね）
ruby	{
 position     : relative ;
 line-height  : 200% ;
}
rb	{}
rp	{ display : none ; }
rt	{
 position     : absolute ;
 left         : 0 ;
 top          : -2.2em ;
 background   : transparent ;
}
*/




 



