@charset "utf-8";
/*
	Junkieta.net基本スタイル定義ファイル(CSS)
	author: Junkieta(webmaster@junkieta.net)
*/

/* リンク */
a:link           { color: blue; }
a:link img       { border: 5px double blue; }
a:visited        { color: purple; }
a:visited img    { border-color: purple; }
a:hover,
a:focus,
a:active         { color: red; }
a:hover img,
a:focus img,
a:active img     { border-color: red; }
a:focus,a:active { outline: 1px solid red; }
a:hover          { background-color: #FEE; }
a:active         { background-color: #FCC; }

body { line-height: 1.5; }

pre,code,kbd,input,button,textarea   { font-family: monospace; }
h1,h2,h3,h4,h5,h6,strong,caption     { font-weight: bold; }

blockquote,address,hr                       { clear: both; }
blockquote:after,ins.section:before,address { text-align: right; display: block; }

h1,h2,h3,h4,h5,h6 {
	clear            : left;
	page-break-inside: avoid;
	page-break-after : avoid;
}

del,del *                    { text-decoration: line-through; }
ins.section                  { display: block; text-decoration: none; }
ins.section[datetime]:before { content: attr(datetime) " 追記:"; page-break-after: avoid; }

dt:after              { display: inline; content: ":"; }
dl.footnote:before    { display: block; content: "脚注:"; border-bottom: 1px solid silver; }
dl.footnote>dt        { counter-increment: footnote; }
dl.footnote>dt:after {
	display     : inline;
	content     : "*" counter(footnote, decimal);
	font-weight : bold;
	margin-left: 0.5em;
}


dfn:before { content: "!)"; }
dfn:before,
dl.footnote>dt:after,
sup        { display: inline; font-size: x-small; vertical-align: super; line-height: 1; }


blockquote                    { clear: right; }
blockquote:after              { page-break-before: avoid; }
blockquote[cite]:after        { content: "（" attr(cite) "）"; }
blockquote[title]:after       { content: "【 " attr(title) " 】"; }
blockquote[cite][title]:after { content: "【 " attr(title) " （" attr(cite) "） 】"; }

img   { vertical-align: middle; }
em    { color: #C00; font-style: normal; }
big   { font-size: 125%; line-height: 0.8;  }
small { font-size: 80%;  line-height: 1.25; }
.omit { color: #666; letter-spacing: 0.25em; }

var:before   { display: inline; content: "["; }
var:after    { display: inline; content: "]"; }
var:before,var:after
             { color: silver; }
var          { color: #366; font-style: normal; }
samp         { color: #060; }
kbd          { color: #331; white-space: nowrap; }

code         { color: #122; }
pre          { border: 1px dotted; }
pre *:before,pre *:after,code *:before,code *:after
             { display: none !important; }
pre em,code em,pre var,code var
             { font-style: italic; }


table   { border-collapse: collapse; border: 1px solid #CCC; }
caption { text-align: center; clear: left; }

fieldset { border: 1px solid #999; }

.date, .datetime { white-space: nowrap; }

/* メディア別スタイル */
@media screen,tv,projection,tty,handheld,print {
	dl.status dt, .alternate-object {
		visibility: hidden;
		position  : absolute;
	}
}

@media screen,tv,projection {
	* { margin: 0; padding: 0; }
	/* タイプ付リンク */
	a[rel]        { margin-left: 0.2em; }
	a[rel]:before {
		content         : attr(rel);
		vertical-align  : 0.1em;
		font-size       : 0.8em; /* vertical-alignとセットで(0.1em, 0.8em, 0.1em) */
		font-weight     : bold;
		font-variant    : small-caps;
		padding         : 0 0.2em;
		margin-right    : 0.1em;
		color           : #FFF;
		background-color: #03C;
		border          : 0.1em outset #06F;
	}
	a[rel]:visited:before { border-color: #C0C; background-color: #909; }
	a[rel]:focus:before,
	a[rel]:active:before,
	a[rel]:hover:before   { border-color: #C00; background-color: #F30; }
	/* urn記法はデフォルトでは機能しないので目立たない形に */
	a[href^="urn:"]       { cursor: default; color: inherit; text-decoration: none; }
	
	body     { color: #000; background-color: #FCFCFA; }
	h1       { font-size: 200%; }
	h2       { font-size: 140%; }
	h3       { font-size: 110%; }
	h4,h5,h6 { font-size: 100%; border-bottom: 1px solid silver; }
	h1,h2,h3,h4,h5,h6 { padding: 0.25em 1.5%; }
	
	p,ul,ol,dl        { padding: 0.50em 1.5%; }
	dt                { margin: 0.25em 0; }
	dd,ul,ol          { margin-left: 2em; }
	
	blockquote        { margin: 1em 1.5% 1em 6%; border-left: 0.5em groove #9CC; }
	blockquote>*:first-child
	                  { padding-top: 0; }
	blockquote:after  { margin: 0 1.5%; }
	blockquote,q      { color: #366; }
	cite              { color: #884; }
	
	del,del *         { color: silver !important; }
	ins               { background-color: #F0F3EC; text-decoration: none; }
	ins.section       { background-color: transparent; }
	ins.section       {
		margin       : 1em 0;
		border-width : 0.5em 0;
		border-style : double;
		border-color : #EED;
	}
	ins.section[datetime]:before {
		line-height     : 0.5;
		letter-spacing  : -0.05em;
		text-align      : right;
		padding         : 0 1.5%;
		margin-top      : -0.5em;
		color           : #660;
	}
	
	dl.footnote        { margin: 3em 1%; padding-left: 3em; }
	dl.footnote>dt,
	dl.footnote>dd     { border-left: 1em solid #A0ACA9; margin: 0; padding-left: 1em; }
	dl.footnote>dt     { margin-top: 2em; }
	dl.footnote>dd     { padding-top: 0.5em; }
	
	dl.status    { padding: 0; }
	dl.status dd { margin: 0; padding: 0 1%; border-bottom: 1px dashed #CCC; }
	
	img.figure {
		float    : right;
		display  : block;
		max-width: 50%;
		margin   : 0 0 1em 1em;
		border   : 5px double #CCC;
	}
	
	table,pre { margin: 0.5em auto; max-width: 90%; }
	caption   { margin-top: 0.5em; }
	th,td     { padding: 0.25em; }
	
	fieldset    { padding: 0.5em 1em 1em 1em; border: 1px solid #999; }
	legend      { padding: 0 0.5em; }
	label:hover { background-color: #DDD; }
	textarea    { padding: 0.25em; }
	option      { padding: 0 0.25em; }
	
	address { padding: 0 1.5%; margin-top: 1em; border-top: 1px dashed #999; }
	hr { margin: 0.5em 1.5%; border: 0 dotted #E3E3E3; border-top-width: 0.5em; }
	
	var       { margin: 0 1px; }
	kbd,code  { margin: 0 0.1em; padding: 0 0.2em; border: 1px solid; }
	pre       { border-color: #ACC; background-color: #FFF; padding: 0.5em 1em; overflow: auto; }
	pre samp,
	pre code,
	pre var   { border-width: 0; margin: 0; padding: 0; }
	kbd       { border-color: #886; background-color: #ECECEA; }
	code      { border-color: #BDD; background-color: #F9FCFC; }
}


@media projection {
	html  { background-color: #E3E6E0; }
	body  {
		margin      : 0 auto;
		padding     : 1em;
		max-width   : 60em;
		border      : 0 solid #F0F3EC;
		border-width: 0 0.5em;
	}
	h2,h3,h4,h5,h6 { padding-top: 1.5em; /* page-break-before: always; */ }
	pre { white-space: pre-wrap; }
}

@media print {
	*                   { margin: 0; padding: 0; font-style: normal; }
	a:after             {
		content          : "[" attr(href) "]";
		font-size        : small;
		margin           : 0 0.25em;
		page-break-inside: avoid;
	}
	a[href^="/"]:after,
	a[href^="."]:after,
	a[href^="#"]:after,
	blockquote:before,
	dl.status { display: none; }
	
	/* 
	address {
		font-size  : 80%;
		line-height: 1;
		position   : fixed;
		bottom     : 0;
		right      : 0;
		border-top : 1px dashed gray;
		width      : 100%;
	}
	*/
	address             { border-top: 1px solid gray; }
	h1                  { font-size: 150%; margin-bottom: 1em; text-align: center; }
	h2                  { font-size: 115%; }
	h3,h4,h5,h6         { font-size: 100%; }
	h4                  { margin-left: 2em; }
	h5                  { margin-left: 3em; }
	h6                  { margin-left: 4em; }
	h2,h3,h4,h5,h6      { margin-top: 1em; }
	pre,fieldset,ins.section,dl,ol,ul,blockquote
	                    { margin-top: 1em; margin-bottom: 1em; }
	dd                  { margin-left: 2em; }
	ol,ul,blockquote    { margin-left: 3em; }
	p                   { margin: 0; text-indent: 1em; }
	pre                 { padding: 0 1em; white-space: pre-wrap; }
	input[type="text"]  { border: 1px inset #CCC; }
	hr                  { margin: 1em 0; }
	
	ins.section                  { border-width: 0.2em 0; border-style: solid; border-color: gray; }
	ins.section[datetime]:before { text-align: left; border-bottom: 1px solid silver; }
	
	dl.footnote>dt { margin-top: 1em; }
	
	img.figure {
		display   : block;
		max-width : 100%;
		max-height: 100%;
		margin    : 1em auto;
		page-break-inside: avoid;
	}
	
	em                { line-height: 1.25; border-bottom: 0.25em double; }
	a em              { line-height: 1.5; border: 0; }
	abbr[title]:after { content: "（" attr(title) "）"; }
}
