*{
	font-family:sans-serif;
	word-break:break-all;
	word-wrap:break-word;
	overflow-wrap:break-word;
	box-sizing:border-box;
}

h1,h2{
	margin:0px;
}
hr{
	height:1px;
	border:none;
	background-color:gainsboro;
}
body{
	width:100%;
	margin:0;
	background-image:url(../img/back.gif);
}
main{
	margin-bottom:32px;
}
footer {
	border-top:solid 1px gray;
	text-align:center;
}
table{
	width:100%;
	border-collapse: collapse;
	margin-top:8px;
	margin-bottom:8px;
}
table th{
	white-space:nowrap;
	padding-left:8px;
	padding-right:8px;
}
table caption{
	text-align:left;
}
table thead {
	background-color: burlywood;
	color: black;
}
table thead tr th{
	text-align:left;
}
table tbody tr:hover{
	background-color:lemonchiffon;
}
table tbody th,
table tbody td{
	vertical-align:top;
}
table tbody tr td img{
	vertical-align: bottom;
}
table tbody tr td img{
	height: 96px;
	vertical-align: bottom;
}

figure{
	display: inline-block;
	vertical-align: top;
	margin:2px;
}
.figscroll{
	max-height:512px;
	overflow-y:scroll;
	background-color:beige;
}
table td .figscroll{
	scrollbar-width:none;
}
ul{
	list-style-type:none;
	list-style-position:inside;
	padding:0px;
	margin:0px;
}
ul li .figscroll{
	float:left;
	scrollbar-width:none;
}
ul li img{
	width: 96px;
	vertical-align: top;
}

@media screen and (max-width:800px){
	dl {
		width:100%;
		border-bottom:solid 1px gainsboro;
	}
}
dl {
	display:grid;
	grid-template-columns: 96px 1fr;
}
dl dt {
	border-top:solid 1px gainsboro;
	text-align:right;
	margin-right:8px;
}
dl dd {
	border-top:solid 1px gainsboro;
	margin-left:0;
	overflow-x: hidden;
	width: 100%;
	padding: 2px;
}
dl dd figure img{
	width: 100%;
/*	height: 100%;	*/
	vertical-align: bottom;
}
table tr td input[type="text"]:only-child,
form dl dd input[type="text"]:only-child,
form dl dd input[type="password"]:only-child{
	width: 100%;
}
form dl dd input[type="text"]:nth-last-child(2){
	width: calc(100% - 70% - 4px);
}
form dl dd input[type="text"] + input[type="button"]:nth-child(2){
	width: 70%;
	float:right;
}
input[type="radio"],
input[type="checkbox"]{
	background-color:black;
}
form{
	padding:0;
}
form fieldset{
	border:none;
	padding:0px;
}
form textarea {
	width:100%;
	resize:vertical;
/*	height:22px;	*/
}
textarea.autoresize,
select.autoresize,
input.autoresize{
	field-sizing: content;
	vertical-align: top;
}
table tr td textarea,
table tr td input[type="text"],
form dl dd select,
form dl dd textarea,
form dl dd input[type="text"],
form dl dd input[type="password"],
form dl dd input[type="date"],
form dl dd input[type="datetime-local"],
form dl dd input[type="number"]{
	background-color: papayawhip;
	border-radius: 4px;
	border: solid 1px gray;
	outline:none;
	font-family: monospace;
	padding: 4px;
}
form dl dd input[readonly]{
	border: none;
	background-color: transparent;
}
form dl dd input[required]{
	border: solid 1px red;
}
a:normal{text-decoration:none;font-weight:normal;}
a:visited{text-decoration:none;font-weight:normal;}
a:link{text-decoration:none;font-weight:normal;}
a:hover	{
	color:white;
	background-color:darkgreen;
}

.button{
	display: inline-block;
	border:solid 1px gray;
	outline: none;
	color:white;
	background-color:darkgreen;
	text-align:center;
	user-select:none;
	margin:0px 0px 4px 4px;
	padding:4px 8px 4px 8px;
	border-radius:4px;
	white-space:nowrap;
	font-size:14px;
	line-height:1.0;
}
.button:hover	{
	text-decoration:none;
	outline:solid 2px red;
/*	
	color:black;
	background-color:lawngreen;
*/
}

.pagenation{
	width: 80%;
	margin: auto;
	text-align: center;
}
.pagenation a{
	display: inline-block;
	width:24px;
	color:gray;
	border:solid 1px gray;
	margin:4px 4px;
}
.pagenation a.current{
	background-color:gold;
	color:darkred;
}
dialog{
	border: solid 1px black;
	border-radius: 8px;
	width: 96%;
	padding:8px;
}
dialog::backdrop{
	background: rgba(0, 0, 0, 0.6);
}
@media screen and (max-width:800px){
	nav.menu {
		float:right;
	}
	nav.menu ul {
		top:0;
		left:calc(100% - 16px);
		position:fixed;
		width:192px;
		padding:8px;
		line-height: 2;
		background-color:white;
		border:solid 2px gray;
		transition: all 0.7s ease;
		border-left: solid 16px green;
		border-radius: 8px;
	}
	nav.menu:hover ul {
		left:calc(100% - 192px);
		box-shadow: 4px 4px 8px 8px rgb(0 0 0 / 15%);
		transition: all 0.7s ease;
	}
}
@media screen and (min-width:800px){
	nav.menu {
		text-align:center;
	}
	nav.menu ul {
		display:inline-block;
		padding:0 16px 0 16px;
	}
	nav.menu ul li {
		padding-right:4px;
	}

	main{
		max-width:1280px;
		margin:auto;
		padding:8px;
	}
}
