/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

:root{
	--d-col: #522;
	--m-col: #fe0000;
	--l-col: #feb;
	--d-gr:  #151;
}

*{margin:0;padding:0;font-family: Arial, "M PLUS Rounded 1c", sans-serif;}
header, .flex-container, footer{transform: rotate(0.03deg);}
html{
	scroll-behavior: smooth;
	background:linear-gradient(#efefef, #bcb);
	border-top:solid 10px var(--m-col);
}
a{color:var(--m-col);}
a:hover{opacity:0.6;}
a[href$=".pdf"]:after {
	vertical-align: top;
	font-size: 0.7em;
	margin:0 0 0 5px;
	position: relative; top: -0.5em;
	content: "[PDF]";
	display: inline-block;
}
a[target$="_blank"]:after {
	font-size: 0.4em;
	letter-spacing: -0.2em;
	margin:0 5px 0 5px;
	position: relative; top: -0.5em;
	vertical-align: top;
	content: "[↗]";
	display: inline-block;
}
a[target$="_blank"]:has(img):after{
	content:"";
	margin:0;
}


.side nav a[href$="index.html"]{
	background:var(--d-gr);
	color:#fff;
}
.side nav a[href$="index.html"]:hover{
	opacity:0.6;
}


body{
	margin:0;
	font-size:1.4rem;
	line-height:170%;
}
.wrapper{
	width:980px;
	margin:0 auto;
	color:#333;
}

header{
	margin-bottom:1em;
}
header hgroup{background:#fff;padding:1em;}
header h1{
	margin:0;padding:1em 0 0.5em 0;
	text-align:center;
	font-weight:600;
}
h1 a{text-decoration:none;color:var(--d-col);}
header p{text-align:center;}
header ul{
	list-style:none;
	margin:0;padding:2px 10px;
	color:var(--d-col);
	background:#fff;
	overflow:hidden;
}
header ul li{
	display:inline;
}
header ul li::after {content: " >";}
header ul li.mmenu{display:none;}

.flex-container{
	display: -webkit-box;   /* Chrome 4-20, Firefox 2-21, Safari 3.1-6.0 */
	display: -webkit-flex;  /* Chrome 21-27 */
	display: -moz-box;      /* Firefox 2-21 */
	display: -ms-flexbox;   /* IE9 */
	display: flex;
}
.main{
	flex-basis:700px;
}
.side{
	flex-basis:260px;
	margin:0 0 0 20px;
}
hgroup{
	background:#fff;
}
article{
	margin-top:3em;
	background:#fff;
	box-shadow: 0 10px 10px 0 rgba(0, 0, 0, .25);
}
section{padding:1em 0;}
h3+section{padding-top:0;}
section#whatsnew{padding-top:2px;margin-bottom:3em;}
h2,h3,h4,h5{clear:both;}
h2{
	padding:10px 15px;
	background:var(--m-col);
	color:#fff;
}
h3{
	background:var(--d-col);
	color:#fff;
	padding:5px 15px;
	margin-top:4em;margin-bottom:0.5em;
}
.side h3{display:none;}
#whatsnew h3{margin-top:0;}
h4{
	border-bottom:solid 1px var(--d-col);;
	margin:4em 1% 0 1%;padding:0 0 0 0.5em;
	color:var(--d-col);
}
section h4:first-child{margin-top:1em;}
h5{padding-top:1em;margin:0 1em;font-size:100%;color:var(--d-col);}
p{margin:1em;}
hgroup p{margin-bottom:0;padding-bottom:1em;}
h4+p,h5+p{margin-top:0.5em;}
img+p{margin-top:0;}
img.tate+p{margin-top:0.5em;}
.album img+p{margin-top:0.5em;}
dl{
	padding:0 1em 0 1em;
}
dl.new, nav#smenu{
	box-shadow: 0 5px 10px 0 rgba(0, 0, 0, .2);
}
dl.new{
	padding:1em 1em;
	background:#fff;
}
dl.box{
	border:solid 1px #aaa;
	margin:1em;padding:0 1em 1em 1em;
}
dt{}
dl.box dt{font-weight:700;margin-top:1em;}

dd{
	padding:0 0 0 2em;
}
ol, ul{
	padding:0 0 0 2.5em;
}
table{width:95%;margin:1em;border-top:solid 1px #aaa;}
th,td{border-bottom:solid 1px #aaa;padding:5px;line-height:150%;}

nav#smenu{
	background:var(--l-col);
}

nav#smenu ul{
	padding:1em 2em;
}
li{
	margin-bottom:0.25em;
}
.side nav{
	background:#fff;
}
.side nav ul{
	list-style:none;
	margin:0;padding:0;
}
.side nav li{
	margin:0;
}

.side nav ul li ul li{
	text-indent:2em;
	font-size:90%;
}
.side nav li a{
	display:block;
	text-decoration:none;
	padding:10px;
	border-top:solid 1px #ddd;
	line-height:150%;
	color:var(--d-gr);
}
.side nav li a:hover{
	background:var(--d-gr);
	opacity:1;
	color:#fff;
}
.side nav li ul li a{
	padding:5px;
}
.side nav li ul li a:hover{
	opacity:0.8;
	transform: rotate(0.03deg);
}

nav dl{margin:1rem;}
nav dt{margin-top:1rem;font-weight:700;}
nav dt:first-child{margin-top:0;}
nav dd{margin:0 0 0.5em 2em;}

blockquote{margin-left:3em;margin-bottom:1em;}
blockquote[lang="en"]{font-style:italic;}
img{
	display:block;
	width:50%;height:auto;margin:5px 10px;float:right;
	transition-property: width, height;
	transition-duration: 0.5s;
	transition-timing-function: ease-in-out;
}
.album{clear:both;}
hgroup::after, .album::after{display:block;height:1px;content:"";clear:right;}
hgroup img{margin:2px 0 1em 0;}
img.tate{width:25%;margin-top:2px;}
img:hover, img.tate:hover{width:100%;margin-right:0;}
img.yoko{width:98%;margin:2px 1% 0 1%;}

.mt-5{margin-top:5rem;}


footer{
	margin-top:3em;
	padding:1em 0;
	text-align:center;
}
.pagetop{
	font-size:200%;
	display: flex;
	position: fixed;
	right: 10px;bottom: 10px;
	justify-content: center;align-items: center;
	background-color:#fff;
	line-height:100%;
	padding:10px;
	border-radius:20%;
	border:solid 1px var(--d-gr);
	z-index: 2;
	text-decoration:none;
	animation-name: fade-in;
	animation-timeline: scroll();
	animation-range: entry 0% entry 20%;
}
.pagetop{color:var(--d-gr);}
@keyframes fade-in {
	from {opacity: 0;}
	to {opacity: 1;}
}

@media (min-width: 601px) and (max-width: 978px) {
	body{font-size:1em;}
	.wrapper{width:98%;}
	.main{flex-basis:74%;}
	.side{flex-basis:25%;}
	.side nav ul li ul{padding-left:1em;}
	.side nav ul li ul li{text-indent:0;line-height:140%;}
	.side nav li a{line-height:120%;}
	h4{margin-left:0;margin-right:0;padding-left:1em;}
	section img{width:100%;margin:2px 0 10px 0;}
	section img.tate{width:50%;margin:2px 0;}
	section img+p{margin:10px;}
	img.yoko{width:100%;margin-left:0;margin-right:0;}
}
@media (max-width: 600px) {
	body{font-size:1em;}
	header h1, header p{text-align:left;margin:5px;padding:10px 5px 5px 5px;}
	header ul{max-width:100%;}
	header ul li:first-child{margin-left:2px;}
	header ul li.mmenu{display:inline-block;float:right;}
	header ul li.mmenu::after {display:block;content:none;height:1px;clear:right;}
	.wrapper{width:99%;}
	.flex-container{flex-direction: column;}
	.main{flex-basis:100%;}
	p{margin:1em 0.25em;}
	h3{padding-left:0.25em;padding-right:0.25em;}
	h4{margin-left:0;margin-right:0;padding-left:3px;}
	table{width:99%;margin:0 auto;}
	td,th{padding:5px;}
	.side{flex-basis:100%;background:#ffd;padding:0;margin:3em 1em 0 1em;}
	.side h3{display:block;margin:0;}
	footer{margin-top:0;}
	img{width:100%;margin-left:0;margin-right:0;}
	section img{width:100%;margin:2px 0 0 0;float:none;}
	section img.tate{width:100%;margin:10px 0 0 0;}
	.album img{margin-top:2px;}
}

article:after{content:".";display:block;clear:both;height:0;visibility:hidden;}
article{min-height:1px;}
* html article{height: 1px;/*¥*//*/height:auto;overflow:hidden;/**/}
