body{background:#fff;color:#000;font-family:sans-serif;margin:0;}
a{color:inherit;}
.inner{box-sizing:border-box;margin:auto;padding:10px;width:100%;max-width:620px;}
header .inner{max-width:920px;padding-top:54px;}
/* リンクのhoverアクション */
header a,
footer a{position:relative;text-decoration:none;transition:color .3s;z-index:2;}
header a:hover,
footer a:hover{color:#040;}
header a::before,
footer a::before{content:"";width:0%;height:1px;position:absolute;bottom:-2px;left:0;z-index:1;transition:width .3s;}
header a::before,
footer a::before{background:#040;}
header a:hover::before,
footer a:hover::before{width:100%;}

header h1{font-family:serif;margin:0;font-size:100%;}
header ul{display:flex;list-style:none;margin:-1.4em 0 0;padding:0;justify-content:flex-end;}
header li{margin-left:1.2em;}
header li:first-child{margin-left:0;}
@media screen and (max-width:48rem) {
	header ul{margin-top:0;}
}
@media screen and (max-width:600px) {
	header .inner{padding-top:30px;}
	header li{font-size:80%;}
}
/* header全体のhoverアクション */
.header-hover{transition:background-color .15s;}
.header-hover:hover{background-color:#fff;}
.header-hover h1,
.header-hover a{color:#fff;transition:color .15s;}
.header-hover:hover h1,
.header-hover:hover a{color:#000;}

footer{font-size:85%;text-align:center;height:48px;padding:1px;}
main{color:#040;}
main h1{font-size:1.4rem;text-align:center;margin-top:60px;margin-bottom:1.5em;font-family:serif;}
main h1 span{display:block;font-size:80%;font-family:sans-serif;}
main p{font-size:.8rem;line-height:1.8;}
main img{width:100%;height:auto;}
.bg{background:url(./elm/bg-introduction.jpg) center center;background-size:100%;padding-bottom:60px;}
