@charset "utf-8";



/* --------------------------------------------------------------------------------
general
-------------------------------------------------------------------------------- */

div#general.spring,
div#general.summer,
div#general.autumn,
div#general.winter {
	background-image: none;
}



/* --------------------------------------------------------------------------------
header
-------------------------------------------------------------------------------- */

header#header {
	height: auto;
  margin-bottom: 20px;
}
header#header h1#title {
	top: 15px;
}
header#header h1#title span {
	font-size: 24px;
	line-height: 32px;
	padding-left: 40px;
	background-size: auto 32px;
}
header#header div.block {
	position: static;
  padding: 30px 20px 30px 20px;
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
}
header#header div.block h2 {
	font-size: 22px;
	line-height: 25px;
  margin-bottom: 15px;
}
header#header div.block-search {
	width: auto;
	left: auto;
	top: auto;
  padding-top: 130px;
}
body.spring header#header div.block-search {
  background-image: url(../imgs/spring-background-01-sp.png);
}
body.summer header#header div.block-search {
  background-image: url(../imgs/summer-background-01-sp.png);
}
body.autumn header#header div.block-search {
  background-image: url(../imgs/autumn-background-01-sp.png);
}
body.winter header#header div.block-search {
  background-image: url(../imgs/winter-background-01-sp.png);
}
header#header div.block-search form {
  padding: 105px 0px 0px 0px;
}
header#header div.block-search form h2 {
	width: 100%;
	left: 0px;
	top: 0px;
  text-align: center;
}
header#header div.block-search form p.note {
  width: 100%;
	left: 0px;
	top: 30px;
  text-align: center;
	font-size: 12px;
}
header#header div.block-search form input[type=text] {
	position: absolute;
	left: 0px;
	bottom: 0px;
	z-index: 1;
	width: calc(100% - 80px);
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
}
header#header div.block-search form input[type=submit] {
	top: auto;
  bottom: 0px;
	border-top-left-radius: 0px;
	border-bottom-left-radius: 0px;
}
header#header div.block-facility,
header#header div.block-book,
header#header div.block-user {
	width: auto;
	left: auto;
	top: auto;
}
header#header div.block-facility {
  padding-bottom: 40px;
}
body.spring header#header div.block-facility {
  background-image: url(../imgs/spring-background-02-sp.png);
}
body.summer header#header div.block-facility {
  background-image: url(../imgs/summer-background-02-sp.png);
}
body.autumn header#header div.block-facility {
  background-image: url(../imgs/autumn-background-02-sp.png);
}
body.winter header#header div.block-facility {
  background-image: url(../imgs/winter-background-02-sp.png);
}
header#header div.block-book {
  padding-top: 20px;
  background-position: center top;
}
body.spring header#header div.block-book {
  background-image: url(../imgs/spring-background-03-sp.png);
}
body.summer header#header div.block-book {
  background-image: url(../imgs/summer-background-03-sp.png);
}
body.autumn header#header div.block-book {
  background-image: url(../imgs/autumn-background-03-sp.png);
}
body.winter header#header div.block-book {
  background-image: url(../imgs/winter-background-03-sp.png);
}
header#header div.block-user {
  padding-bottom: 160px;
}
body.spring header#header div.block-user {
  background-image: url(../imgs/spring-background-04-sp.png);
}
body.summer header#header div.block-user {
  background-image: url(../imgs/summer-background-04-sp.png);
}
body.autumn header#header div.block-user {
  background-image: url(../imgs/autumn-background-04-sp.png);
}
body.winter header#header div.block-user {
  background-image: url(../imgs/winter-background-04-sp.png);
}
header#header div.block ul {
  width: 220px;
  margin: auto;
}
header#header p.anime {
  display: none;
}
header#header p.kids {
	width: 298px;
	height: 101px;
	left: calc(50% - 141px);
	top: auto;
  bottom: 20px;
  margin: auto;
}
header#header p.kids a {
	background-size: auto 101px;
}
body.spring header#header p.kids a {
	background-image: url(../imgs/spring-kids-sp.png);
}
body.summer header#header p.kids a {
	background-image: url(../imgs/summer-kids-sp.png);
}
body.autumn header#header p.kids a {
	background-image: url(../imgs/autumn-kids-sp.png);
}
body.winter header#header p.kids a {
	background-image: url(../imgs/winter-kids-sp.png);
}



/* --------------------------------------------------------------------------------
content
-------------------------------------------------------------------------------- */

div#content {
	padding: 0px 10px 50px 10px;
}
div#content div.information {
	width: auto;
	margin: 0px;
}
div#content div.information div.block {
	float: none;
	width: auto;
	margin: 0px auto 10px auto;
}
div#content div.block div.content {
	padding: 10px;
}
div#content div.block div.content p {
	min-height: 0px;
}
div#content div.block-news {
	width: auto;
  margin-bottom: 20px;
}
div#content div.block-news ul li span {
	display: block;
  margin: 0px 0px 5px 0px;
}
div#content div.library {
	width: auto;
	margin: 0px auto 40px auto;
  padding: 0px 20px;
}
div#content div.library div.row {
	float: none;
	width: auto;
	margin: 0px auto 40px auto;
}
div#content div.library div.row:last-child {
  margin-bottom: 0px;
}
div#content div.library div.row p.image {
	margin-bottom: 5px;
}
div#content div.library div.row p.address {
	min-height: 0px;
	margin-bottom: 5px;
}
div#content div.library div.row p.map {
  margin: auto;
}
div#content p.button-mail {
	width: calc(100% - 20px);
  line-height: 20px;
}
div#content p.button-mail a {
  box-sizing: border-box;
  width: 280px;
  margin: auto;
	padding: 10px 0px 7px 60px;
  background-position: 13px 15px;
	background-size: auto 30px;
}
div#content p.button-mail span.main {
	font-size: 18px;
	letter-spacing: 0.05em;
}
div#content p.button-mail span.sub {
  font-size: 14px;
	letter-spacing: 0em;
}
