@charset "utf-8";

/*============================================================
	[RESET DEFAULT TAGS]
*/
html,body { background:#FFFFFF; }
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
pre,code,form,fieldset,legend,input,textarea,
p,blockquote,th,td,embed,button { margin:0; padding:0; }
table { border-collapse:collapse; border-spacing:0; }
fieldset,img { border:0; }
li { list-style:none; }
caption,th { text-align:left; }
q:before,q:after { content:''; }
abbr,acronym { border:0; font-variant:normal; }
sup { vertical-align:text-top; }
sub { vertical-align:text-bottom; }
legend { color:#000000; }

/*============================================================
	[RESET DEFAULT FONT]
*/
body { font-size:100%; color:#000000; }
input,button,textarea { font-weight:inherit; font-size:99%; }
table { font-size:inherit; font-size:100%; }
h1,h2,h3,h4,h5,h6 { font-size:100%; }
address,caption,cite,code,dfn,em,strong,th,var { font-style:normal; }

html, body {
	width: 100%;
	background: #000;
}
body {
	font-size: 100%;
	font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	color: #333;
	-webkit-text-size-adjust: 100%;
}
img {
	vertical-align: top;
}

#calendar {
	overflow: hidden;
	position: relative;
	width: 100%;
	background: url(../img/bg_flower.jpg);
}

.header {
	background: #000 url(../img/header_bg.jpg) 50% 0 repeat-x;
}
.header .in {
	position: relative;
	margin: 0 auto;
	max-width: 980px;
	width: 100%; height: 100px;
}
.header .in .logo {
	position: absolute;
	top: 0; left: -20px;
	width: 200px; height: 100px;
}
.header .in .logo a {
	display: block;
	overflow: hidden;
	width: 200px; height: 100px;
	background: transparent url(../img/logo.png) 0 0 no-repeat;
	text-indent: -999em;
}
.header .in h1 {
	position: absolute;
	top: 20px; left: 170px;
	font-size: 30px;
	line-height: 34px;
	color: #333;
}
.header .in h1 span {
	display: block;
	padding-bottom: 4px;
	font-size: 18px;
	line-height: 22px;
}
.header .sns {
	position: absolute;
	top: 30px; right: 0;
}
.header .sns ul li {
	float: left;
}
.header .sns ul li img {
	width: 40px;
}
.header .sns ul li.line {
	display: none;
}

.footer {
	position: relative;
	width: 100%;
}
.footer__company {
	display: flex;
	background: #fff;
	align-items: center;
	justify-content: center;
	padding: 20px 0;
}
.footer__company a {
	margin: 0 15px;
}
.footer__copy {
	text-align: center;
	background: #000;
	font-size: 10px;
	color: #fff;
	line-height: 20px;
	padding: 10px 0;
}


.footer .copyright {
	overflow: hidden;
	position: absolute;
	top: 20px; left: 20px;
	padding-top: 40px;
	width: 600px; height: 4px;
	background: transparent url(../img/copyright.png) 0 0 no-repeat;
}
.footer .logo {
	padding-right: 10px;
}

.content {
	margin: 0 auto;
	padding: 20px 0;
	max-width: 980px;
	width: 100%;
}
.content .month {
	padding: 8px 0;
	background: #ffc800;
	border: 1px solid #ca0612;
	border-top: 0;
	border-bottom: 0;
	font-size: 18px;
	line-height: 20px;
	text-align: center;
}
.content table {
	width: 100%;
	background: #fff;
}
.content table td {
	padding-bottom: 10px;
	width: 14.285714%;
	height: 140px;
	font-size: 12px;
	line-height: 1.5;
	border: 1px solid #ca0612;
	vertical-align: top;
	background: #f7f7f7;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.content table td.stripe {
	background: #e7e7e7;
}
.content table td.sat {
	background: #d5edfd;
}
.content table td.holiday {
	background: #ffdedb;
}
.content table td .day {
	padding: 8px 0 7px 0;
	background: #333;
	border-bottom: 1px solid #ca0612;
	color: #fff;
	font-weight: bold;
	font-size: 14px;
	line-height: 18px;
	text-align: center;
}
.content table td.stripe .day {
	background: #555;
}
.content table td.sat .day {
	background: #3498db;
}
.content table td.holiday .day {
	background: #e74c3c;
}
.content table td .day span {
	padding-left: 5px;
}
.content table td .cell {
}
.content table td .cell a {
	display: block;
	text-decoration: none;
	color: #333;
}
.content table td .cell dl {
	padding: 10px 8px 0 8px;
	text-align: center;
}
.content table td .cell dl dt {
	margin: 0 auto;
	padding: 0 0 5px 0;
	max-width: 70px;
	width: 100%;
}
.content table td .cell dl dt img {
	width: 100%;
}
.content table td .cell dl dt.lg {
	margin: 0 auto;
	max-width: 114px;
	width: 100%;
}
.content table td .cell dl dt.manekineko {
	margin: 0 auto;
	max-width: 100px;
	width: 100%;
}

.content table td .cell dl dd {
	padding: 0 0 10px 0;
}
.content table td .cell a:hover dl dd {
	text-decoration: underline;
}

.content table td .cell .icons:after {
	content: "."; display: block; clear: both; visibility: hidden; height: 0;
}
.content table td .cell .icons {
	padding: 4px;
	zoom: 1;
}
.content table td .cell .icons p {
	float: left;
	padding: 4px 2px;
}
.content table td .cell .icons p img {
	width: 100%;
}
.content table td .cell .icons p.karaoke {
	width: 60px;
}
.content table td .cell .icons p.manekineko {
	width: 57px;
}
.content table td .cell .icons p.princess {
	width: 57px;
}
.content table td .cell .icons p.icon {
	width: 30px;
}
.content table td .cell .icons p.marui {
	width: 57px;
}
.content table td .cell .icons p.animate {
	width: 57px;
}
.content table td .cell .icons p.animate2 {
	width: 57px;
}
.content table td .cell .icons p.otomeito {
	width: 57px;
}


#sns {
	display: none;
}


@media only screen and (max-width: 820px) {

	.header {
		background-size: cover;
		-webkit-background-size: cover;
	}
	.header .in {
		height: 50px;
	}
	.header .in .logo {
		left: 0px;
		width: 100px; height: 50px;
	}
	.header .in .logo a {
		width: 100px; height: 50px;
		-webkit-background-size: 100px 50px;
	}
	.header .in h1 {
		top: 8px; left: 100px;
		font-size: 13px;
		line-height: 18px
	}
	.header .in h1 span {
		font-size: 11px;
		line-height: 13px;
	}
	.header .sns {
		display: none;
	}

	.footer {
		height: auto;
		text-align: center;
		display: block;
	}
	.footer__company a {
		margin: 0 8px;
	}
	.footer__company img {
		zoom: 0.5;
		vertical-align: middle;
	}
	.footer__copy {
		padding: 10px;
	}

	.content {
		padding: 0;
	}
	.content .month {
		padding: 8px 0;
		border: 0;
		font-size: 15px;
		line-height: 19px;
	}
	.content table td {
		display: block;
		float: left;
		clear: both;
		padding: 0;
		width: 100%; height: auto;
		border: 0;
	}
	.content table td .in {
		display: table;
		width: 100%;
	}
	.content table td .day,
	.content table td .cell {
		display: table-cell;
		vertical-align: middle;
		border: 0;
	}
	.content table td .day {
		padding: 8px 0;
		width: 22%;
		font-size: 12px;
	}
	.content table td .day span {
		display: block;
		padding: 0;
	}
	.content table td .cell {
		padding: 5px 10px;
		width: 78%;
	}
	.content table td .cell dl {
		display: table;
		margin: 10px 0;
		padding: 0;
		text-align: left;
	}
	.content table td .cell dl dt,
	.content table td .cell dl dd {
		display: table-cell;
		vertical-align: top;
	}
	.content table td .cell dl dt {
		width: 50px;
	}
	.content table td .cell dl dt.lg {
		width: 80px;
	}
	.content table td .cell dl dt.manekineko {
		width: 80px;
	}
	.content table td .cell dl dt {
		padding: 0 10px 0 0;
	}
	.content table td .cell dl dd {
		padding: 0;
	}
	.content table td .cell dl dd br {
		display: none;
	}
	.content table td .cell dl dd br.st {
		display: block;
	}

	.content table td .cell .icons {
		display: table;
		padding: 0;
	}
	.content table td .cell .icons p {
		float: none;
		display: table-cell;
		padding: 4px 6px 4px 0;
		vertical-align: middle;
		text-align: left;
	}
	.content table td .cell .icons p.karaoke {
		width: 52px;
	}
	.content table td .cell .icons p.manekineko {
		width: 46px;
	}
	.content table td .cell .icons p.icon {
		width: 24px;
	}


	#sns {
		display: block;
		background: #fff;
	}
	#sns .sns {
		display: table;
		margin: 0 auto;
		padding: 20px 0;
	}
	#sns .sns ul li {
		display: table-cell;
		padding: 0 2px;
	}
	#sns .sns ul li img {
		width: 40px;
	}

}
