@charset "utf-8";
/* CSS Document */

/**********************************************************************
*
*　　 ■etc
*
**********************************************************************/

#etc_p section,
#tvcm_box section {
	border-top: 10px solid #E6E6E6;
	border-bottom:1px solid #CCC;
}

#etc_p section:first-child,
#tvcm_box section:first-child {
	border-top: none !important;
}

#etc_p section:last-child,
#tvcm_box section:last-child {
	border-bottom: none !important;
	box-shadow: 0 1px 0 #CCC, 0 10px 0 #E6E6E6 !important;
	padding-bottom:11px;
	margin-bottom:11px;
}

#etc_p h2,
#tvcm_box h2 {
	background: #F0F0F0;
	color: #555;
	line-height: 32px;
	font-size: 14px;
	text-align: center;
}

#etc_p img,
#tvcm_box img {
	width: 100%;
	vertical-align: bottom;
}

#etc_p p,
#tvcm_box p {
	width: 94%;
	margin: 0 auto 15px;
	line-height: 20px;
	font-size: 14px;
}

#ind_top,
#ind_tit {
	width: 100% !important;
}

/**********************************************************************
*
*　　 ■st-accordion
*
**********************************************************************/

.st-accordion {
    width:94%;
    min-width:270px;
    margin: 0 auto 10px;
}
.st-accordion ul li {
    height: 60px;
    overflow: hidden;
	background: #F2F2F2;
	margin-bottom: 15px;
}
.individual ul li {
	background: #00A3E2;
	margin-bottom: 0;
	border-bottom: 1px solid #FFF;
}
.st-accordion ul li ul li {
	height: auto !important;
	background: none !important;
	margin-bottom: 0 !important;
}

.st-accordion ul li:first-child {
}
.st-accordion ul li > a {
	padding-left:20px;
    font-size: 16px !important;
	font-weight: bold;
	color: #333;
    display: block;
	position: relative;
	line-height: 60px;
	outline:none;
    -webkit-transition:  color 0.2s ease-in-out;
	-moz-transition:  color 0.2s ease-in-out;
	-o-transition:  color 0.2s ease-in-out;
	-ms-transition:  color 0.2s ease-in-out;
	transition:  color 0.2s ease-in-out;
    border-left: 4px solid #DD272D;
}
.individual ul li > a {
    border-left: none;
	color: #FFF;
}

.st-accordion ul li > a span {
	background: transparent url(/sp/common/img/ured_arrow.png) no-repeat center center;
	background-size: 20px !important;
	text-indent:-9000px;
	width: 26px;
	height: 26px;
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -13px;
	opacity:1;
	-webkit-transition:  all 0.2s ease-in-out;
	-moz-transition:  all 0.2s ease-in-out;
	-o-transition:  all 0.2s ease-in-out;
	-ms-transition:  all 0.2s ease-in-out;
	transition:  all 0.2s ease-in-out;
}
.individual ul li > a span {
	background: transparent url(/sp/common/img/ulink_arrow.png) no-repeat center center;
	background-size: 20px !important;
}
.st-accordion ul li > a:hover {
    color: #E52B46;
}
.individual ul li > a:hover {
    color: #FFF;
}

.st-accordion ul li > a:hover span {
	opacity:1;
	right: 15px;
}
.st-accordion ul li.st-open > a {
    color: #E52B46;
}
.individual ul li.st-open > a {
    color: #FFF;
}
.st-accordion ul li.st-open > a span {
	-webkit-transform:rotate(180deg);
	-moz-transform:rotate(180deg);
    transform:rotate(180deg);
	right:15px;
	opacity:1;
}
.st-content {
	display: block;
	padding: 15px 0; 
	background: #FFF;
}

.st-content p{
	width: 100%;
    font-size: 14px;
    line-height:  22px;
    text-align: justify;
    text-justify: inter-ideograph;
}

.st-content a {
	width: auto !important;
	display: inline !important;
	height: auto !important;
    font-size: 16px !important;
	font-weight: normal !important;
	color: #333;
    border-left: none !important;
	margin: 0 !important;	
	padding: 0 !important;
	line-height: 24px !important;
}

#com_outline,
#com_outline02 {
	letter-spacing: 0.1em;
}

#com_outline dt {
	border-bottom: 1px dotted #DDD;
	font-size: 15px;
	font-weight: bold;
	line-height: 28px;
	margin-bottom: 6px;
}

#com_outline dd {
	font-size: 15px;
	line-height: 20px;
	margin-bottom: 10px;
}

#com_outline dd ul li {
	height: auto !important;
	margin: 0 !important;
}

#com_outline02 dt {
	width: 70px;
	line-height: 20px;
	font-size: 15px;
	float: left;
	margin: 0 0 10px 0;
}

#com_outline02 dd {
	margin: 0 0 10px 80px;
	font-size: 15px;
	line-height: 20px;
	padding-bottom: 8px;
	border-bottom: 1px dotted #DDD;
}

#com_outline02 dd:last-child {
	border-bottom: none;
}

#map_canvas {
	width: 100%;
	height: 200px;
}

#acMenu {
	display: block;
	width:94%;
	margin: 10px auto 10px;
}

#acMenu dt {
    display: block;
    width: 100%;
    height: 60px;
    line-height: 60px;
    text-align: left;
    cursor: pointer;
	font-size: 16px;
    padding: 0 15px;
	color: #FFF;
	border-bottom: 1px solid #FFF;
	background: #29C7F3 url(/sp/common/img/ulink_arrow.png) 92% center no-repeat;
	background-size: 20px;
}
#acMenu dd {
    background: #FFF;
    width: 100%;
    text-align:left;
	display: none;
}

#acMenu dt.active{
	background: #29C7F3 url(/sp/common/img/blink_arrow.png) 92% center no-repeat;
	background-size: 20px;
}

#acMenu dd ul li {
	border-top: 1px solid #DDD !important;
}

#acMenu dd ul li:first-child {
	border-top: none !important;
}

#acMenu dd a {
	display: block;
	width: 100%;
	height: 100%;
	background: url(/sp/common/img/red_arrow.png) 92% center no-repeat;
	background-size: 20px;
}

#acMenu dd a p {
	font-size: 15px;
	margin: 0 !important;
	padding: 0 0 0 15px !important;
	line-height: 20px;
	color: #333;
}

#acMenu dd a p:first-child {
	padding: 15px 0 0 15px !important;
	font-weight: bold;
	color: #DD272D;
	font-size: 18px;
	margin-bottom: 4px;
}

#acMenu dd a p:last-child {
	padding: 0 0 15px 15px !important;
}

#etc_p .protect ul li p {
	width: 100%;
	padding: 0;
	font-size: 14px;
	line-height: 20px;
}

#etc_p .protect ul li .st-content ol,
#etc_p .protect ul li .st-content ul {
	list-style: decimal !important;
	margin: 10px 0 0 !important;
	background: #F2F2F2;
	padding: 20px;
}

#etc_p .protect ul li .st-content ol li {
	background: none !important;
	height: auto !important;
	line-height: 20px !important;
	margin: 0 !important;
	font-size: 13px;
}

#map-btn {
	width: 310px;
	margin: 0 auto;
	padding: 10px 0 15px;
}

#map-btn li {
	float: left;
	width: 145px !important;
	padding: 0 5px;
}

#shop_list h3 {
	width: 100%;
	margin: 15px auto ;
	padding: 20px 0;
	background: #DC262C;
	color: #FFF;
	line-height:18px;
	font-size: 16px;
	text-align: center;	
}

#shop_list h3 span {
	display: block;
	font-size: 8px !important;
	text-align: center;
	letter-spacing: 0.2em;
}

/**********************************************************************
*
*　　 ■サイトマップ
*
**********************************************************************/

.sitemap .st-content {
	padding: 10px 0 0 !important;
}

.sitemap .st-content li {
	width: 100%;
	height: 50px;
	border-bottom: 1px solid #DDD;
}

.sitemap .st-content li:last-child {
	border-bottom: none;
}
.sitemap .st-content li a {
	display: block !important;
	width: 100% !important;
	height: 50px !important;
	line-height: 50px !important;
	background: #FFF url(/sp/common/img/red_arrow.png) no-repeat 96% center !important;
	background-size: 16px !important;
	padding-left: 10px !important;
}

.sitemap .st-content p {
	width: 100% !important;
	line-height: 40px;
	background: #DDD;
	color: #333;
	text-align: center;
	padding: 10px 0 !important;
	margin: 0  !important;
}

.sitemap .st-content p.location {
	width: 100% !important;
	margin: 0  !important;
	background: #DD272D;
	color: #FFF;
	font-size: 18px !important;
}

/**********************************************************************
*
*　　 ■よくある質問
*
**********************************************************************/

#faq_box {
	width: 94%;
	margin: 20px auto; 
}

#faq_box dt {
	padding: 20px  50px 20px 20px;
	margin: 15px 0 0;
	line-height: 18px;
	font-size: 16px;
	font-weight: bold;
	width: 100%;
	color: #FFF;
	background: #2FBCDF url(/sp/common/img/ulink_arrow.png) 92% center no-repeat;
	background-size: 20px;
}

#faq_box dt img {
	width: 20px;
	margin-right: 8px;
}

#faq_box dd {
	width: 100%;
	display: none;
	padding: 20px 20px 20px 50px;
	font-size: 14px;
	line-height: 16px;
	background: #FFFFF0 url(/sp/common/img/faq_a_icon.png) no-repeat 20px 20px;
	background-size: 20px;
}

#faq_box dt.active{
	background: #2FBCDF url(/sp/common/img/blink_arrow.png) 92% center no-repeat;
	background-size: 20px;
}


/**********************************************************************
*
*　　 ■個別指導塾
*
**********************************************************************/


.std_school li {
	height: auto !important;
	margin: 0 !important;
	border-bottom: 1px dotted #DDD !important;
}

.std_school li:last-child {
	border-bottom: none !important;
}

.std_school li p {
	line-height: 20px !important;
	height: auto !important;
	margin: 0 0 0 10px !important;
	padding: 0 30px 0 10px !important;
}

.std_school li p:first-child {
	padding: 10px 30px 3px 10px !important;
	color: #29C7F3;
	font-size: 15px;
	font-weight: bold;
}

.std_school li p:last-child {
	padding: 0 30px 10px 10px !important;
}

.std_school li a {
	height: auto !important;
    font-size: 16px !important;
	font-weight: normal !important;
	color: #333 !important;
    border-left: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #FFF url(/sp/common/img/std_arrow.png) no-repeat 96% center !important;
	background-size: 16px !important;
}

#map_canvas {
	width: 94%;
	height: 240px;
	margin: 0 auto 15px;
}

/**********************************************************************
*
*　　 ■テレビCM
*
**********************************************************************/

#tv_top {
	width: 100% !important;
}

#tvcm_box section {
	padding: 15px 0;
}

#tvcm_box section:first-child {
	padding: 0 !important;
}

#tvcm_box section h3 {
	width: 94%;
	line-height: 22px;
	padding: 10px 0;
	margin: 0 auto 15px;
	background: #35BDFF;
	font-size:18px;
	color: #FFF;
	text-align: center;
	border-bottom: 3px solid #003651;
}

#tvcm_box section h3 span {
	display: block;
}

#tvcm_box section div {
	width: 94%;
	margin: 0 auto;
}

/**********************************************************************
*
*　　 ■border-box
*
**********************************************************************/

#about_top #a01_p,
#acMenu dt,
#acMenu dd,
#acMenu dd ul li,
#acMenu dd a,
#faq_box dt,
#faq_box dd,
#etc_p .protect ul li .st-content ol,
#etc_p .protect ul li .st-content ul,
#etc_p .protect ul li .st-content ol li,
.st-content a,
.std_school li p,
.sitemap .st-content li a  {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

/**********************************************************************
*
*　　 ■回り込み解除
*
**********************************************************************/

#column-box ul:after,
#about_nav:after,
#com_outline02:after,
.st-content:after,
#map-btn:after {
	content: "";
	display: block;
	clear: both;
}
