﻿@charset "utf-8";

/* =ウィンドウ幅確認
------------------------------------------------------------------------------ */

#winsize2 {
	position: fixed;
	bottom: 0;
	right: 0;
	font-size: 10px;
	z-index: 9999;
	color: #fff;
	background-color: #000;
	padding: 0 2px;
}

/* =全体
------------------------------------------------------------------------------ */

.wrap {
	width: inherit;
	max-width: 910px;
	margin: 0 auto;
}
img, object, embed {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
a {
	overflow: hidden;
	outline: none;
}


/* =961px以上
------------------------------------------------------------------------------ */
@media only screen and (min-width: 961px){

a#menu {
	display: none;
}
nav div#navPanel {
	display: block !important;
}

}

/* =960px以下
------------------------------------------------------------------------------ */

@media only screen and (max-width: 960px){

/* =全体 */
body,
body.home {
	-moz-background-size: 50% auto;
	background-size: 50% auto; 
}
.wrap {
	padding: 0 2%;
}
#contents {
	padding: 20px 0px;
}

/* =ヘッダー */

header#top {
	height: 100px;
}

/* =ナビ */

nav {
	height: inherit;
	margin: 0 0 15px;
	overflow: hidden;
	background: #146c9c;
	background: -moz-linear-gradient(top, #45b4e9, #146c9c);
	background: -webkit-gradient(linear, left top, left bottom, from(#45b4e9), to(#146c9c));
	-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#45b4e9,endColorstr=#146c9c,GradientType=0)";
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#45b4e9,endColorstr=#146c9c,GradientType=0);
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
}
  
a#menu {
	display: block;
	width: 100%;
}
nav div#navPanel {
	display: none;
	width: 100%;
}
a#menu:hover {
	cursor: pointer;
	text-decoration: none;
}
a#menu span {
	padding-left: 35px;
}

nav a.menu {
	display: block;
	line-height: 50px;
	text-align: left;
	color: #fff;
	letter-spacing: 3px;
	background: url(../img/toggle.png) no-repeat 10px 0px;
}
nav a.menuOpen {
	background: url(../img/toggle.png) no-repeat 10px -50px;
}

nav ul {
	list-style: none;
	border: 1px solid #e6e6e6;
}
nav ul li {
	float: none;
	list-style: none;
	text-align: left;
	line-height: 1.2;
	font-size: 100%;
}

nav ul li a {
	width: inherit;
	height: inherit;
	text-decoration: none;
	background-image: none;
	color: #333;
	text-align: left;
	line-height: 40px;
	border-bottom: 1px solid #e6e6e6;
	background: #ffffff;
	background: -moz-linear-gradient(top, #f7f7f7, #ffffff);
	background: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#ffffff));
	-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#f7f7f7,endColorstr=#ffffff,GradientType=0)";
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#f7f7f7,endColorstr=#ffffff,GradientType=0);
	padding-left: 1em;
}
nav ul li#menu-item-13 a {width: auto;}
nav ul li#menu-item-2913 a {width: auto;}

nav ul li:last-child a {
	border-bottom: none;
}

nav ul li span {
	display: inline-block;
	color: #1594cc;
	font-size: 9px;
	padding-left: 1em;
}

/* =メイン */

#main {
	clear: both;
	float: none;
	width: inherit;
}

#main article {
	width: inherit;
}
#main article header {
	background-image: url(../img/heading_sta.png);
	background-position: 0 0;
	background-repeat: no-repeat;
}
body.after-school #main article header {
	background-image: url(../img/_heading_sta.png);
}
#main article header h1 {
	background-image: url(../img/heading_end.png);
	background-position: right 0;
	background-repeat: no-repeat;
	width: 97%;
	padding-left: 3%;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
body.after-school #main article header h1 {
	background-image: url(../img/heading_end.png);
}

/* =サイド */

#side {
	clear: both;
	float: none;
	width: inherit;
	text-align: center;
}
#side section {
	width: inherit;
}


#side section h2 {
	background-image: url(../img/heading_sta.png);
	background-position: 0 0;
	background-repeat: no-repeat;
	text-align: left;
	width: 97%;
	padding-left: 3%;
}
#side section h2:after {
	content: '';
	display: block;
	background-image: url(../img/heading_end.png);
	background-position: 0 0;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	right: 0;
	height: 40px;
	width: 2px;
}

#side ul {
	text-align: left;
}
#side aside {
	margin: 0 0 20px;
}

#side ul.feed {
	padding: 0;
	margin: 0 auto;
	display: inline-block;
	text-align: center;
}

#side img {
	display: inline-block;
	margin: 0 auto;
	text-align: center;
}

/* =フッター */

footer p#logo {
	clear: both;
	float: none;
	text-align: center;
	margin: 0 0 20px;
}

footer ul {
	clear: both;
	float: none;
	width: 100%;
	margin: 0 0 20px;
}
footer ul li {
	width: 25%;
}

/* =ページナビ */

.wp-pagenavi a,
.wp-pagenavi span {
	display: inline-block;
	text-decoration: none;
	width: 40px;
	border: none;
	line-height: 40px;
	margin: 3px;
	vertical-align: top;
}
span.pages,
a.first,
a.last {
	width: 80px
}
}

/* =調整 */

iframe.gmap {
	width: 90%;
	margin: 0 5%;
}

.twitter_widget {
	width: 90%;
	margin: 0 5%;
}


/* =768px以下
------------------------------------------------------------------------------ */

@media only screen and (max-width: 768px){


/* =全体 */

body,
body.home {
	-moz-background-size: 55% auto;
	background-size: 55% auto; 
}
/* =ヘッダー */

header#top {
	height: inherit;
	position: inherit;
	text-align: center;
	margin: 0 0 15px;
}
header#top h1 {
	position: inherit;
	top: 0;
	right: 0;
	margin: 0 0 5px;
}
header#top h2 {
	position: inherit;
	top: 0;
	right: 0;
	margin: 0 5px 10px;
    overflow: hidden;
}
header#top h2 a {
    display: block;
    float: left;
    width: 48%;
}
header#top h2 a:last-child {
    float: right;
    margin-left: 4%;
}
header#top h2 img {
    height: auto;
}
header#top p#tel {
    clear: both;
	position: inherit;
	top: 0;
	right: 0;
}



}

/* =640px以下
------------------------------------------------------------------------------ */

@media only screen and (max-width: 640px){


/* =全体 */

body {
	-moz-background-size: 70% auto;
	background-size: 70% auto; 
}
body.home {
	-moz-background-size: 60% auto;
	background-size: 60% auto; 
}

/* =定義リスト */

#contents section dl.paral dt {
	width: 100%;
	float: none;
	clear: left;
	padding: 0;
	margin: 0;
}


/* =ギャラリー */

div.gallery {
	margin: 0;
}

div.gallery br {
	display: none;
}

#main div.gallery dl.gallery-item dt img {
	padding: 0;
	display: block;
	border: none;
}
}


/* =568px以下
------------------------------------------------------------------------------ */

@media only screen and (max-width: 568px){

/* =段落 */

#main p {
	margin: 0px 0px 20px 0px;
}




/* =トップページ */

#main dl.news2 dt {
	width: 24%;
}

div.double,
div.double.right {
	float: none;
	clear: both;
	width: 100%;
	margin: 0 0 10px;
}

/* =塾の案内 */

div.feature {
	margin: 0;
}
#main dl.idea {
	margin: 0;
	text-align: center;
}
#main div.feature ul {
	margin: 0 1em;
}
#main dl.idea dt {
	width: inherit;
	clear: both;
	float: none;
	display: inline-block;
	padding: 0 1em;
	margin: 0 auto;
}
#main dl.idea dd {
	margin: 0 0 10px;
	font-size: 150%;
	letter-spacing: 0px;
}

div.gallery br {
	display: none;
}

/* =コース紹介 */

#main ul.subj {
	margin: 0 0 10px;
}
#main ul.subj li {
	width: 30%;
	font-size: 100%;
	letter-spacing: 0;
}

#main div.course p {
	padding: 10px;
	margin: 0 10px 20px;
}

div.note {
	padding: 10px;
	margin: 0 0 20px;
	text-align: center;
}
#main div.note p {
	display: inline-block;
	text-align: left;
	margin: 0 0 10px;
}
span.price {
	font-size: 180%;
	padding: 0 5px 0 10px;
}
#main table.none {
	width: 100%;
	margin: 0 auto 20px;
}

/* =お問い合わせ */

#main dl.paral dt {
	width: 100%;
	float: none;
	clear: left;
	padding: 0;
	margin: 0;
}
#main dl.paral dd {
	padding: 0;
	margin: 0 0 10px;
}

/* =はくうんかん児童クラブ */

#main ul.contact li {
    width: 100%;
}
#main ul.contact li:nth-of-type(odd),
#main ul.contact li:nth-of-type(even) {
    float: none;
    clear: both;
}


}

/* =480px以下
------------------------------------------------------------------------------ */

@media only screen and (max-width: 480px){


/* =全体 */
body {
	-moz-background-size: 120% auto;
	background-size: 120% auto; 
}
body.home {
	-moz-background-size: 90% auto;
	background-size: 90% auto; 
}

/* =見出し */

#main article header h1,
#side section h2 {
	width: 95%;
	padding-left: 5%;
}

/* =メイン */

#main aside.meta p {
	float: none;
	clear: right;
	margin: 5px;
	text-align: center;
}

/* =フッター */

footer ul li {
	width: 49%;
}
footer ul li:nth-child(even){
	float: right;
}

/* =投稿画像 */

.alignright {
	clear: right;
	float: none;
	display: block;
	margin: 0px auto 10px auto;
}
.alignleft {
	clear: left;
	float: none;
	display: block;
	margin: 0px auto 10px auto;
}

/* =入塾の流れ */

#main div.flow {
	text-align: center;
}
#main div.flow h2 {
	clear: left;
	float: none;
	padding: 27px 0 0;
	margin: 0 auto;
	font-size: 100%;
	height: 83px;
	width: 140px;
}
#main div.flow dl dt {
	float: none;
	clear: left;
	width: inherit;
}

/* =お問い合わせ */

div.column {
	clear: both;
	padding: 80px 10px 10px;
	margin: 0 0 20px;
}
#main div.column p {
	margin: 0 0 10px;
	text-align: center;
}

div.point {
	background-position: 50% 20px;
}

#main div.wpcf7 dl {
}

#main div.wpcf7 dl dt {
	width: inherit;
	float: none;
	clear: left;
	margin: 0 0 10px;
	text-align: left;
}
#main div.wpcf7 dl dd {
	float: none;
	clear: left;
	width: inherit;
	margin: 0 auto 10px;
}


/* =はくうんかん児童クラブ */

body.after-school #main h2.em {
    font-size: 120%;
    line-height: 1.4;
}

#main table.flow th {
    padding: 0;
    display: block;
    width: auto;
    text-align: left;
    border: none;
}
#main table.flow td {
    padding: 0;
    display: block;
    width: auto;
    text-align: left;
    margin: 0 0 0 1em;
    border: none;

}
#main table.flow td.act {
    width: auto;
    border-bottom: 1px solid #ccc;
    margin: 0 0 1em 1em;
    padding-bottom: 5px;
}


}


/* =320px以下
------------------------------------------------------------------------------ */

@media only screen and (max-width: 320px){

/* =全体 */
body {
	-moz-background-size: 180% auto;
	background-size: 180% auto; 
}
body.home {
	-moz-background-size: 120% auto;
	background-size: 120% auto; 
}

/* =見出し */

#main article header h1,
#side section h2 {
	width: 94%;
	padding-left: 6%;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

}

