﻿@charset "utf-8";

*{
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
body{
	font-family:Verdana, "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-size:90%;
	-webkit-text-size-adjust:100%;
}

::selection{background:#E0E0E0; color:#000; text-shadow:#fff 1px 1px 0;}
::-moz-selection{background:#E0E0E0; color:#000; text-shadow:#fff 1px 1px 0;}

a, a:visited{
	text-decoration:underline;
	color:#4296f4;
}
a:hover{
	text-decoration:none;
	color:#4296f4;
}
a:hover img,
.mainBox .newsBox .pagenation li:hover img,
.mainBox .reservationDate .calendarSelect .btn:hover,
.mainBox .reservationDate .calendarBox .prev:hover img,
.mainBox .reservationDate .calendarBox .next:hover img,
.mainBox .reservationTime .serchBox .searchBtn:hover input,
.mainBox .contentBox .calendarBox .reservTable header .prev:hover img,
.mainBox .contentBox .calendarBox .reservTable header .next:hover img,
.mainBox .lessonIndex .lessonBox .updateBox .btn:hover img{
	filter:alpha(opacity=50);
	-moz-opacity:.5;
	-khtml-opacity:.5;
	opacity:.5;
}
img{
	max-width:100%;
	height:auto;
}


/*======================================
	benesseHeader / benesseFooter
======================================*/
/****** benesseWrapper ******/
.benesseWrapper{
	overflow:hidden;
	width:900px;
	margin:0 auto;
}

/****** benesseHeader ******/
.benesseHeader{
	padding:8px 0;
	background:#fff;
	font-size:80%;
}
.benesseHeader h1{
	float:left;
	line-height:0;
}

/****** benesseFooter ******/
.benesseFooter{
	padding:27px 0;
	border-top:#0075b6 solid 3px;
	background:#fff;
	font-size:80%;
}
.benesseFooter p{float:right;}

/* benesseHeader / benesseFooter */
.benesseWrapper ul{
	float:right;
	overflow:hidden;
}
.benesseWrapper ul li{
	float:left;
	margin-left:15px;
	padding-left:10px;
	background:url(../images/benesse-arrow.gif) left center no-repeat;
	line-height:1.2;
}
.benesseFooter .benesseWrapper ul{float:left;}
.benesseFooter .benesseWrapper ul li{margin:0 15px 0 0;}


/*======================================
	containerBox
======================================*/
/****** container ******/
.containerBox{
	padding:25px 0;
	background:#eae3dd;
}
/****** wrapper ******/
.wrapper{
	overflow:hidden;
	position:relative;
	width:983px;
	margin:0 auto;
}

/****** popupBox ******/
.popupBox{
	display:none;
	padding:30px 25px;
}
.popupBox p{
	margin-bottom:20px;
	line-height:1.5;
}


/*======================================
	subBox
======================================*/
.subBox{
	float:left;
	width:227px;
	margin-right:25px;
}

/****** gHeader ******/
.subBox .gHeader{
	position:relative;
	margin-bottom:15px;
	background:#fff;
	border-radius:14px;
	padding:28px 20px;
	behavior:url(/ol/common/css/PIE.htc);
}
.subBox .gHeader h1{line-height:0;}
.subBox .gHeader h1 img.sp{display:none;}
.subBox .gHeader .menuBtn{display:none;}

/****** gNav ******/
.subBox .gNav{
	display:block;
	position:relative;
	padding:25px 0 25px 20px;
	background:#fff;
	border-radius:14px;
	line-height:0;
	behavior:url(/ol/common/css/PIE.htc);
}
/* closeBtn */
.subBox .gNav .closeBtn{display:none;}
/* mainNav */
.subBox .gNav ul.mainNav li{margin:0 10px 30px -35px;}
/* subNav */
.subBox .gNav ul.subNav li{margin-bottom:25px;}


/*======================================
	mainBox
======================================*/
.mainBox{
	position:relative;
	float:right;/****** 変更 ******/
	width:800px;
	min-height:725px;
	background:#fff;
	border-radius:14px;
	behavior:url(/ol/common/css/PIE.htc);
}
.mainBox .contentBox h1,
.mainBox .newsBox h1{
	margin-bottom:35px;
	padding:20px 0 20px 25px;
	line-height:0;
}
.mainBox .contentBox h1{
	position:relative;
	border-radius:14px 14px 0 0;
	behavior:url(/ol/common/css/PIE.htc);
}
.mainBox .contentBox h2,
.mainBox .newsBox h2{
	clear:both;
	margin:0 30px 25px;
	line-height:0;
}
.mainBox .contentBox>p,
.mainBox .contentBox>ul,
.mainBox .contentBox>ol,
.mainBox .contentBox>dl,
.mainBox .newsBox>p,
.mainBox .newsBox>ul,
.mainBox .newsBox>ol,
.mainBox .newsBox>dl{
	margin:0 50px;
	line-height:1.5;
}

.mainBox .contentBox strong{font-weight:bold;}
.mainBox .contentBox .alC{text-align:center;}

.mainBox .contentBox .errorTxt{color:#e73b39;}
.mainBox .contentBox .errorTxt li{
	margin:0 0 .5em 1em;
	text-indent:-1em;
	line-height:1.3;
}

/****** errorBox ******/
.mainBox .errorBox h2 {
	margin:30px 50px;
	font-size:140%;
	text-align:center;
	line-height:1.5;
}
/* errorCause */
.mainBox .errorBox .errorCause{
	position:relative;
	margin:0 50px 30px;
	padding:0% 0% 0;
	border:#23b6f1 solid 2px;
	background:#f4fbfe;
	border-radius:10px;
	behavior:url(/ol/common/css/PIE.htc);
}
.mainBox .errorBox .errorCause p,
.mainBox .errorBox .errorCause ul{
	margin-bottom:3%;
	line-height:1.3;
}
.mainBox .errorBox .errorCause ul li{
	margin:0 0 .3em 1em;
	text-indent:-1em;
}

.mainBox .errorBox ul li {
	text-align: center;
}

/****** commonTable ******/
.mainBox .contentBox .commonTable{
	margin:0 50px;
	border:#999 solid 1px;
}
.mainBox .ticketIndex .commonTable h2,
.mainBox .contentBox .commonTable h3{
	margin:0;
	padding:14px;
	background:#eae3dd;
	text-align:center;
	font-size:140%;
	font-weight:bold;
}
.mainBox .contentBox .commonTable table{width:100%;}
.mainBox .contentBox .commonTable table tr th,
.mainBox .contentBox .commonTable table tr td{
	padding:12px 18px;
	border-top:#eae3dd solid 1px;
	border-right:#eae3dd solid 1px;
	vertical-align:middle;
}
.mainBox .contentBox .commonTable table tr th{
	border-bottom:#eae3dd solid 2px;
	font-weight:bold;
}

/****** bottomBtn ******/
.mainBox .contentBox .bottomBtn{
	margin:45px 50px;
	text-align:center;
	line-height:0;
}
.mainBox .contentBox .bottomBtn li{
	display:inline-block;
	padding:0 9px;
	line-height:0;
}



@media screen and (max-width:1000px){
/*======================================
	benesseHeader / benesseFooter
======================================*/
/****** benesseWrapper ******/
.benesseWrapper{
	width:95%;
}

/*======================================
	common
======================================*/
/****** wrapper ******/
.wrapper{width:100%;}


/*======================================
	subBox
======================================*/
.subBox{
	width:23%;
	margin-right:3%;
}

/****** gNav ******/
.subBox .gNav{padding:25px 20px;}
/* mainNav */
.subBox .gNav ul.mainNav li{margin-left:-30px;}


/*======================================
	mainBox
======================================*/
.mainBox{width:73%;}
}


@media screen and (max-width:750px){
/*======================================
	mainBox
======================================*/
/****** commonTable ******/
.mainBox .contentBox .commonTable{margin:30px 15px 20px;}
.mainBox .ticketIndex .commonTable h2,
.mainBox .contentBox .commonTable h3{padding:7px; font-size:120%;}
.mainBox .contentBox .commonTable table tr th,
.mainBox .contentBox .commonTable table tr td{padding:5px 8px;}

/****** errorBox ******/
.mainBox .errorBox h2 {
	margin:30px 15px;
	font-size:120%;
}
.mainBox .errorBox .errorCause{margin:0 15px 30px;}

/****** bottomBtn ******/
.mainBox .contentBox .bottomBtn li{width:50%;}
}


@media screen and (max-width:480px){
/*======================================
	subBox
======================================*/
.subBox{
	float:none;
	width:auto;
	margin:0 15px 15px;
}

/****** gHeader ******/
.subBox .gHeader{
	position:relative;
	overflow:hidden;
	padding:5px 10px;
	border-radius:14px;
	behavior:url(/ol/common/css/PIE.htc);
}
.subBox .gHeader h1{
	float:left;
	margin-top:10px;
}
.subBox .gHeader h1 img.pc{display:none;}
.subBox .gHeader h1 img.sp{display:block;}
.subBox .gHeader .menuBtn{
	display:block;
	float:right;
	cursor:pointer;
}

/****** gNav ******/
.subBox .gNav{
	display:none;
	position:fixed;
	top:5%;
	left:0;
	right:0;
	bottom:0;
	padding:38px 50px 0;
	background-color:rgba(255, 255, 255, .9);
	border-radius:0;
	z-index:100;
	behavior:url(/ol/common/css/PIE.htc);
}
/* closeBtn */
.subBox .gNav .closeBtn{
	display:block;
	position:absolute;
	top:11px;
	right:11px;
	cursor:pointer;
}
/* mainNav */
.subBox .gNav ul.mainNav{margin-bottom:43px;}
.subBox .gNav ul.mainNav li{margin:0 0 25px;}
/* subNav */
.subBox .gNav ul.subNav li{margin:0 0 25px 0;}
/* subNav */
.subBox .gNav .backChallenge{display:none;}


/*======================================
	mainBox
======================================*/
.mainBox{
	float:none;
	width:auto;
	min-height:200px;
	margin:0 15px;
}
.mainBox .contentBox h1,
.mainBox article h1{
	margin-bottom:25px;
	padding:10px 0 10px 18px;
}
.mainBox .contentBox h2,
.mainBox .newsBox h2{margin:0 15px 15px;}
.mainBox .contentBox h1 img,
.mainBox .newsBox h1 img,
.mainBox .contentBox h2 img,
.mainBox .newsBox h2 img{
	height:20px;
	width:auto;
}
.mainBox .contentBox>p,
.mainBox .contentBox>ul,
.mainBox .contentBox>ol,
.mainBox .contentBox>dl,
.mainBox .newsBox>p,
.mainBox .newsBox>ul,
.mainBox .newsBox>ol,
.mainBox .newsBox>dl{margin:0 15px;}

/****** errorBox ******/
.mainBox .errorBox h2 {
	margin:0 10px 20px;
	padding-top:20px;
	font-size:80%;
}
.mainBox .errorBox .errorCause p,
.mainBox .errorBox .errorCause ul{font-size:80%;}

/****** commonTable ******/
.mainBox .ticketIndex .commonTable h2,
.mainBox .contentBox .commonTable h3{font-size:100%;}
.mainBox .contentBox .commonTable table tr th{font-size:9px;}
.mainBox .contentBox .commonTable table tr td{font-size:10px;}

/****** bottomBtn ******/
.mainBox .contentBox .bottomBtn{
	margin:25px 15px 0;
	padding-bottom:25px;
}


/*======================================
	benesseHeader / benesseFooter
======================================*/
/****** benesseHeader ******/
.benesseHeader{padding:5px 0; font-size:70%;}
.benesseHeader h1{width:64px}

/****** benesseFooter ******/
.benesseFooter{padding:10px 0;}
.benesseFooter p{float:none;}

/* benesseHeader / benesseFooter */
.benesseFooter .benesseWrapper ul,
.benesseFooter .benesseWrapper ul li{float:none; margin-bottom:5px;}
}

@media screen and (max-width:480px){
}