:root{
	--okq-color-background:#fff;
	--okq-color-foreground:#000;
	--okq-color-em:#f00;
	--okq-color-pre-background:#ddf;
	--okq-color-a:#00f;
	--okq-color-a-visited:#505;
	--okq-color-h1-background:#4CfC00;
	--okq-color-h1-foreground:#333;
	--okq-color-h2-background:#FFD700;
	--okq-color-h2-foreground:#000;
	--okq-color-tile-background:rgb(178,255,226);
	--okq-color-h3-foreground:#000;
	--okq-color-whatsnew-background:#efff96;
	--okq-color-th-background:#ADFF2F;
	--okq-color-table-grid:#90EE90;
	--okq-color-accent:#333;
	--okq-color-target:#F28157;
	--okq-color-blockquote:#050;
	--okq-color-blockquote2:#005;
	--okq-color-footer-foreground:#999;
	--okq-color-footer-background:#e5e5e5;
	--okq-color-footer-a:#666;
	--okq-color-footer-a-visited:#555;
	--okq-color-footer-a-hover:#00f;
	--okq-color-footer-a-active:#f00;
	--okq-font-family-serif:'Libre Baskerville',Palatino,"Palatino Linotype","Palatino LT STD","Times New Roman","ヒラギノ明朝 ProN W3","HiraMinProN-W3",YuMincho,'游明朝',"HG明朝E","ＭＳ 明朝","MS Mincho","MS 明朝",serif;
	--okq-font-family-sans-serif:"DejaVu Sans",Helvetica,Ariel,YuGothic,'游ゴシック',"Hiragino Sans","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"MS Gothic",'IPAゴシック',sans-serif;
	--okq-font-family-monospace:'Inconsolata','Liberation Mono',"Lucida Console",Monaco,"Osaka－等幅",Osaka-mono,"ＭＳ ゴシック","MS Gothic",monospace;
	--okq-font-family-cursive:Chalkboard,"Comic Sans MS",'みかちゃん',cursive,sans-serif;
	--okq-font-family-condensed:"DejaVuSans-Condensed",Helvetica,Ariel,YuGothic,'游ゴシック',"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"MS Gothic",'IPAゴシック',sans-serif;
}
@media (prefers-color-scheme: dark) {
	:root{
		--okq-color-background:#000;
		--okq-color-foreground:#fff;
		--okq-color-em:#ff00b9;
		--okq-color-pre-background:#220;
		--okq-color-a:#ff0;
		--okq-color-a-visited:#5b0;
		--okq-color-h1-background:#0A5951;
		--okq-color-h1-foreground:#fff;
		--okq-color-tile-background:#324E59;
		--okq-color-h2-background:#192E40;
		--okq-color-h2-foreground:#0BBF7D;
		--okq-color-h3-foreground:#0BBF7D;
		--okq-color-whatsnew-background:#037353;
		--okq-color-th-background:#0A5951;
		--okq-color-table-grid:#324E59;
		--okq-color-accent:#037353;
		--okq-color-target:#73202F;
		--okq-color-blockquote:#9BFFCD;
		--okq-color-blockquote2:#9BCDFF;
		--okq-color-footer-foreground:#666;
		--okq-color-footer-background:#333;
		--okq-color-footer-a:#aaa;
		--okq-color-footer-a-visited:#bbb;
		--okq-color-footer-a-hover:#77f;
		--okq-color-footer-a-active:#f77;
	}
}
body{
	background-color:var(--okq-color-background);
	color:var(--okq-color-foreground);
	margin:0;
	padding:0;
	font-weight:400;
	font-family:var(--okq-font-family-sans-serif);
}
body,html{
	-webkit-text-size-adjust:100%;
	overflow-wrap:break-word;
}
.right{
	text-align:right;
}
h1{
	background-color:var(--okq-color-h1-background);
	color:var(--okq-color-h1-foreground);
	font-weight:bold;
	padding:5px;
	margin-top:0;
	text-align:center;
	box-shadow:0px 4px 0px #900;
	line-height:1.1;
}
h1.toppage{
	background-color:var(--okq-color-background);
	padding:0;
	margin:0;
	box-shadow:none;
	border-top: solid var(--okq-color-h1-background);
}
h1.toppage img {
	float:none;
	background-color:var(--okq-color-background);
}
p.toppage{
	text-indent:0;
	text-align:center;
}
h2{
	margin:0;
	padding:3px;
	clear:both;
	box-shadow:0px 2px 0px #009;
	background-color:var(--okq-color-h2-background);
	color:var(--okq-color-h2-foreground);
	line-height:1.5;
}
:target{
	background-color:var(--okq-color-target);
}
h2#refs{
	background-color:inherit;
	background-image:none;
	box-shadow:0px 2px 0px #888;
	text-align:center;
	letter-spacing: 4px;
}
h3{
	color:var(--okq-color-h3-foreground);
	font-weight:bold;
	font-size:medium;
	margin-left:4px;
	line-height:1.5;
}
img{
	float:right;
	padding:3px;
	margin:3px;
	max-width:100%;
	height:auto;
	background-color:#fffff7;
}
img.ss{
	float:none;
}
img.thumb{
	background:transparent;
	float:none;
	padding:0;
	border:none;
	margin:0;
}
picture{
	float:none;
	max-width:100%;
	height:auto;
}
picture img{
	float:none;
}
video{
	max-width:100%;
}
dt{
	line-height:1.8;
}
dl.menu dt{
	font-weight: bold;
	margin-left:8px;
	line-height:1.66;
}
dd{
	font-family:var(--okq-font-family-serif);
	line-height:1.8;
	margin-bottom:0.8em;
}
dl.menu dd{
	line-height:1.1;
	margin-bottom:0.5em;
}
p{
	text-indent:1em;
	margin-left:8px;
	line-height:1.8;
	font-family:var(--okq-font-family-serif);
}
p.noindent{
	text-indent:0;
}
em{
	color:var(--okq-color-em);
	font-style:normal;
}
strong{
	color:var(--okq-color-em);
	font-style:normal;
	font-weight:bold;
	font-family:var(--okq-font-family-sans-serif);
}
pre{
	margin-left:6px;
	margin-right:6px;
	padding:6px;
	border:1px solid #88f;
	background-color:var(--okq-color-pre-background);
	font-family:var(--okq-font-family-monospace);
	overflow:auto;
	word-wrap:normal;
	white-space:pre-wrap;
	line-height:1.5;
}
code{
	font-family:var(--okq-font-family-monospace);
}
.footer{
	text-indent:0;
	margin: 64px 0 0 0;
	padding: 6px 0 1em 0;
	border-top:1px solid #777;
	clear:both;
	color: var(--okq-color-footer-foreground);
	line-height: 2em;
	background-color:var(--okq-color-footer-background);
	font-family:var(--okq-font-family-condensed);
}
.footer a{
	color:var(--okq-color-footer-a);
	text-decoration:none;
	font-weight:bold;
}
.footer a:visited{
	color:var(--okq-color-footer-a-visited);
}
.footer a:hover{
	color:var(--okq-color-footer-a-hover);
	text-decoration:underline;
}
.footer a:active{
	color:var(--okq-color-footer-a-active);
}
table{
	margin-left:24px;
	margin-right:24px;
	margin-bottom:12px;
	empty-cells:show;
	border-spacing:0;
	border-collapse:collapse;
}
table th{
	margin:0;
	font-weight:bold;
	background:var(--okq-color-th-background);
	padding:3px;
	border:1px solid var(--okq-color-table-grid);
	font-family:var(--okq-font-family-condensed);
}
table td{
	margin:0;
	border:1px solid var(--okq-color-table-grid);
	padding:3px;
}
blockquote{
	margin:8px 8px 8px 8px;
	padding:6px 0 6px 8px;
	border-left: 2px solid var(--okq-color-blockquote);
	text-indent: 0em;
	color: var(--okq-color-blockquote);
}
blockquote p{
	text-indent:0;
	margin:0;
	padding:4px 0 4px 0;
}
a{
	color:var(--okq-color-a);
}
a:active{
	color:var(--okq-color-background);
	background-color:var(--okq-color-a);
}
a:visited{
	color:var(--okq-color-a-visited);
}
.nobul{
	list-style:none;
}
.swtab{
	font-family:var(--okq-font-family-condensed);
	margin:0 auto 8px 0;
	text-align:center;
}
.swtab a,.swtab em{
	display:inline-block;
	padding:4px 12px 4px 12px;
	border-color:#336;
	border-style:solid;
	border-width:1px 1px 1px 0px;
	margin:3px 0 3px 0;
	transition:background-color 0.4s;
	line-height:1.6;
	text-decoration:none;
}
.swtab a{
	color:#336;
	background-color:#fff;
}
.swtab a:hover{
	background-color:#66a;
	color:#fffff0;
}
.swtab a:active{
	background-color:#88f;
	color:#fffff0;
}
.swtab em{
	color:#fffff0;
	background-color:#336;
}
.swtab .fst{
	border-top-left-radius:6px;
	border-bottom-left-radius:6px;
	border-width:1px;
}
.swtab .lst{
	border-top-right-radius:6px;
	border-bottom-right-radius:6px;
}
span.badge {
	font-family:var(--okq-font-family-cursive);
	color:var(--okq-color-background);
	background-color:var(--okq-color-em);
	padding:3px 6px 3px 6px;
	border-radius:5px;
	font-weight:normal;
}
li {
	margin:4px;
	line-height:1.66;
	font-family:var(--okq-font-family-serif);
}
ul.topmenu{
	padding:3px 3px 3px 3px;
	margin:6px 0 0 0;
}
ul.topmenu li{
	font-family:var(--okq-font-family-sans-serif);
	background-color:var(--okq-color-tile-background);
	list-style:none;
	margin:0 0 6px 0;
	font-size:large;
	font-weight:bold;
}
ul.topmenu li ul{
	padding:0;
	margin:0;
}
ul.topmenu li ul li{
	font-family:var(--okq-font-family-serif);
	font-size:medium;
	font-weight:normal;
	list-style:none;
	margin:4px;
	border-top:1px solid rgba(0,0,0,0.2);
}
ul.topmenu a{
	text-decoration:none;
}
ul.topmenu a:hover{
	text-decoration:underline;
}
div.fltbase {
	margin:0;
	padding:0;
	clear:both;
	width:100%;
}
div.col {
	float:left;
	width:33%;
	padding:0;
	margin:0;
	clear: none;
}
a.rsslink {
	background-color:#f70;
	color:#fff;
	font-size:.8em;
	padding:.1em .5em;
	border-radius:.4em;
	font-weight:bold;
	text-decoration:none;
	border-style:solid;
	border-color:#f70
}
a.rsslink:hover {
	background-color:#fff;
	color:#f70
}
div.center{
	margin:0;
	padding:0;
	display:block;
	text-align:center;
}
div.whatsnew{
	background-color:var(--okq-color-whatsnew-background);
	margin:1em auto;
	padding:0.5em;
	border-radius:0.5em;
	width:auto;
	min-width:50%;
	display:inline-block;
	text-align:left;
}
div.whatsnew h2{
	font-family:Futura,sans-serif;
	font-size:medium;
	border:none;
	background:none;
	box-shadow:none;
	text-align:left;
	clear:none;
	color:var(--okq-color-foreground);
}
div.whatsnew a.rsslink{
	display:inline-block;
	float:right;
}
div.whatsnew ul{
	margin:0;
	padding:0 .5em;
	font-size:small;
}
div.whatsnew ul li{
	margin-left:0;
	padding-left:0;
	list-style:none;
	line-height:2;
}
div.whatsnew ul li a{
	text-decoration:none;
	color:var(--okq-color-foreground);
}
div.whatsnew ul li a:hover{
	text-decoration:underline;
}
div.whatsnew ul li a:active{
	background-color:var(--okq-color-foreground);
	color:var(--okq-color-background);
}
div.whatsnew em{
	color:var(--okq-color-foreground);
	font-family:var(--okq-font-family-sans-serif);
}
input[type='text'],
textarea {
  font-size: 16px;
}
article{
	margin: 0 auto 0 auto;
	max-width: 60em;
	min-height:80vh;
}
figure{
	display: table;
	max-width: 100%;
	width:max-content;
	padding:0;
	margin: auto auto 2em 0;
}
figure picture{
	margin:0;
	padding:0;
	max-width:100%;
}
figure img{
	margin:0;
	padding:0;
	max-width:100%;
	display:block;
}
figcaption {
	display: table-caption;
	caption-side: bottom;
	background-color: #222;
	color: #fff;
	font-family:var(--okq-font-family-sans-serif);
	padding: 3px;
	text-align: center;
}
span.keycap {
	border-radius:6px;
	padding: 3px;
	border: 2px solid var(--okq-color-foreground);
	font-family:var(--okq-font-family-sans-serif);
}
mark {
	font-family:var(--okq-font-family-sans-serif);
	font-size: small;
	border-radius:99px;
	background-color:var(--okq-color-h1-background);
	color:var(--okq-color-h1-foreground);
	padding: 0.1em 1em 0.1em 1em;
}
@media (max-width: 480px) {
	p {
		margin-left:0;
	}
	h1{
		font-size:large;
	}
	h2{
		font-size:large;
		margin:0;
	}
	h3{
		font-size:medium;
	}
	h2#refs {
		letter-spacing: inherit;
	}
	img {
		float:none;
		margin:0;
		padding:0;
	}
	ul {
		padding-left:1em;
	}
	ol {
		padding-left:2em;
	}
	table {
		margin-left:2px;
		margin-right:2px;
	}
	pre {
		margin:0;
		padding:0;
	}
	.swtab {
		padding-left:0;
	}
	div.col{
		float:none;
		width:auto;
	}
	ul.topmenu{
		padding:0;
	}
	table {
		overflow-x: auto;
		display: block;
	}
}
