@charset "utf-8";
:root {
	--im: 75px;
	--ir: 1em;
}

dfn {
	font-weight: bold;
}
h1 {
	line-height: normal;
	height: auto;
	margin: 0;
}

li b {background: #ffffd0;}
section ul li {list-style: none;}
section > ul > li {margin-bottom: 0.5em; }
section > ol > li {margin-bottom: 0.2em; }
/*
#searchres > li:before {
	content: "作品";
	color: white;
	background: #a0a0a0;
}
#searchres li li:before {
	content: "収録";
	color: gray;
}
*/
.mainbooks p.misc:before,
.digit:after,
#searchres li:before {
	content: "";
	background-color: hsl(var(--cb-hue) var(--db-sat) var(--cb-lgh));
	background-repeat: no-repeat;
	background-position-y: -1px;
	border: none;
	height: 16px;
	width: 16px;
	display: inline-block;
	margin-right: 6px;
}
#searchres li:before {
}
#searchres > li:before {
	content: "";
	/*background-color: var(--cg-theme);*/
}
#searchres li li:before {
	content: "";
	/*background-color: hsl(var(--cb-hue) var(--db-sat) calc(var(--cb-lgh) * 0.6)); var(--cg-theme);*/
}
div section ul li:before {
	/*width: 1em;*/
}
section ul li:before {
	content: "G";
	color:gray;
}
ul li.book:before {
	content: "本";
	color: white;
	background: silver;
}
.digit:after{
	margin-left: 6px;
	/*
	content: "★";
	color:gray;
	font-size: 80%;
	vertical-align: super;
	*/
}
section ul li:before {
	font-size: 66%;
	border: 1px gray dotted;
	padding: 0 1px;
	margin-right: 4px;
	vertical-align: middle;
	display: inline-block;
	text-align: center;
}

span.more {
	font-size: 80%;
	color: gray;
	border: dotted 1px gray;
	margin-left: 0.5em;
	padding: 0.1em 0.15em;
	width: 0.9em;
	height: 1em;
	line-height: 1.2;
	display: inline-block;
	text-align: center;
	cursor: copy;
}
ul.more {display: none;}
ul.more.as {display: block;}

section.mainbooks > div {
	display: flex;
}
section.categ {
	width: 47%;
	margin-right: 2%;
}
.mainbooks {
	/*margin-top: 2em;
	border-top: 1px dotted silver;
	padding-top: 0.8em;*/
	position: relative;
	background: white;
}
.mainbooks hgroup {
	display: flex;
	background: transparent;
}
.mainbooks h2 {
	padding-right: 2em;
	margin-bottom: 0;
}
.mainbooks p.misc {
	font-size: 85%;
	color: #444;
	margin: 0.5em 0 0;
}
.mainbooks p.misc:before {
	vertical-align: middle;
}

dl div {
	margin-bottom: 1em;
	padding: 0.2em 0;
	min-height: calc(var(--im) + 0.4em);
	clear: left;
}
dl div:nth-child(odd){
	background: #f6f6f66b;
}
dl figure  {
	height: var(--im);
	width: var(--im);
	float:left;
	margin: 0.2em var(--ir) 0.2em 0;
	text-align: center;
	background: #ddd;
}
figure img {
	height: var(--im);
}
dt {
	font-weight: bold;
	background: var(--bg-l1);
	padding:    0.5em;
	margin-left: calc(var(--im) + var(--ir));
	margin-bottom: 0.5em;
}
div dd {
	margin-left: calc(var(--im) + var(--ir));
	display: flex;
	border-bottom: 1px rgb(192 192 192 / 0.5) solid;
	padding: 0.5em 0;
	word-break: break-word;
}
div dd:last-child {
	/*border-bottom: 1px silver solid;*/
	/*border-bottom: none;*/
}
div dd span {
	width: 5em;
	flex-shrink: 0
}
/*
div dd:before {
	content: "•";
	display: inline-block;
	margin-left: 1em;
	color: #999;
}
*/

form input[type=text] {
	height: 1.65em;
	width: 30em;
}

a:link {
	text-decoration-color: hsl(240deg 100% 83% / 0.8);
}
a:visited {
	text-decoration-color: hsl(271deg 22% 74% / 0.8);
}
a:link:hover {
	text-decoration-color: hsl(240deg 100% 32%);
}
a:visited:hover {
	text-decoration-color: hsl(271deg 68% 32%);
}
@media (min-width: 1000px) {
	section ul ul {padding-left: 50px;}
}
@media (max-width: 800px) {
	section > ul {padding-left: 0;}
	section ul ul {padding-left: 2em;}
}
@media (max-width: 600px) {
	section > ul {padding-left: 0;}
	section ul ul {padding-left: 2em;}
	section.mainbooks > div {display: block;}
	section.categ {width: 100%; margin-right: 0;}
	form input[type=text] {width: auto;}
}
