@charset "UTF-8";
.necessaryThings {
	clear: both;
	/* margin-bottom: 20px; */
}

.necessaryThings ul {
	display: flex;
	display: -webkit-flex;
	flex-flow: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	width: 90%;
	min-width: 300px;
	margin: 10px auto;
}

.necessaryThings ul>li {
	width: calc(50% - 20px);
	min-width: 250px;
	padding: 10px;
	box-sizing: border-box;
}

.necessaryThings ul>li>dl {
	display: flex;
	display: -webkit-flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
}

.necessaryThings ul>li>dl>dd img {
	max-width: 90%;
	height: auto;
	max-height: 180px;
}

@media screen and (max-width:1023px) {
	.necessaryThings {
		clear: both;
		font-size: 11px;
	}

	.necessaryThings ul {
		width: 100%;
		min-width: 100%;
		align-content: center;
	}
}

/*------------------------------
リップルの強み advantage.css
------------------------------*/

.advantage #list {
	background: url(../images/advantage/map.png) no-repeat center;
	height: 960px;
	position: relative;
	margin-bottom: 50px;
}

.advantage #img01 {
	bottom: 260px;
	left: 215px;
	z-index: 0;
}

.advantage #img02 {
	top: 50px;
	left: 20px;
	z-index: 60;
}

.advantage #img03 {
	top: 376px;
	left: 20px;
	z-index: 80;
}

.advantage #img04 {
	top: 260px;
	right: 210px;
	z-index: 60;
}

.advantage #img05 {
	bottom: 150px;
	left: 80px;
	z-index: 60;
}

.advantage #img06 {
	top: -10px;
	left: 235px;
	z-index: 60;
}

.advantage #img07 {
	bottom: 0;
	right: 0;
	z-index: 70;
}

.advantage #list li,
.advantage #list a {
	behavior: url(/u/PIE.htc);
}

.advantage #list li,
.advantage #list img,
.ab {
	position: absolute;
}

.advantage #list .out:before,
.advantage #list .in a:before {
	content: " ";
	position: absolute;
	-webkit-transition: all 200ms linear;
	-moz-transition: all 200ms linear;
	-o-transition: all 200ms linear;
	-ms-transition: all 200ms linear;
	transition: all 200ms linear;
}

.advantage #list .out:before {
	display: block;
	width: 100%;
	height: 100%;
}

.advantage #list a {
	display: block;
	position: relative;
	top: 50%;
	box-shadow: 2px 5px 8px rgba(0, 0, 0, 0.25);
	background: url(../images/advantage/list_bg.png) center;
}

.advantage #list li:hover a {
	background: url(../images/advantage/list_bg_on.png) center;
}

.advantage #list div {
	position: relative;
}

.advantage #list p {
	font-size: 13px;
	line-height: 1.7;
}

.advantage #list .more {
	display: block;
	margin: 8px 0 0;
	height: 25px;
}

.advantage #list li:hover .more span {
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	zoom: 1;
}

.advantage #list .more span {
	display: block;
	width: 100%;
	height: 100%;
	background: url(../images/advantage/more.png) no-repeat center;
	-webkit-transition: all 100ms linear;
	-moz-transition: all 100ms linear;
	-o-transition: all 100ms linear;
	-ms-transition: all 100ms linear;
	transition: all 100ms linear;
}

.advantage #list .out:hover:before {
	-webkit-transform: scale(1.2, 1.2) rotateZ(360deg);
	-moz-transform: scale(1.2, 1.2) rotateZ(360deg);
	-ms-transform: scale(1.2, 1.2) rotateZ(360deg);
	-o-transform: scale(1.2, 1.2) rotateZ(360deg);
	transform: scale(1.2, 1.2) rotateZ(360deg);
}

.advantage #list .in:hover a:before {
	-webkit-transform: scale(1.3, 1.3) rotateZ(560deg);
	-moz-transform: scale(1.3, 1.3) rotateZ(560deg);
	-ms-transform: scale(1.3, 1.3) rotateZ(560deg);
	-o-transform: scale(1.3, 1.3) rotateZ(560deg);
	transform: scale(1.3, 1.3) rotateZ(560deg);
}

/*-----[list01]-----*/

.advantage #list01 {
	width: 240px;
	height: 240px;
	top: 35px;
	left: 70px;
}

.advantage #list01 a {
	display: block;
	position: relative;
	top: 50%;
	margin: -110px auto 0;
	width: 220px;
	height: 220px;
	z-index: 50;
}

.advantage #list #list01:before {
	z-index: 0;
	border: dashed 2px #86bf24;
}

.advantage #list01,
.advantage #list01 a,
.advantage #list #list01:before {
	border-radius: 130px;
}

.advantage #list01 div {
	position: relative;
	padding: 30px 25px;
	text-align: center;
}

.advantage #list01 h3 {
	background: url(../images/advantage/sub_ttl01.png) no-repeat;
	width: 100px;
	height: 45px;
	margin-left: 25px;
	margin-bottom: 8px;
}

.advantage #list01 .more {
	background: url(../images/advantage/more01.png) no-repeat center;
}

/*-----[list01 ここまで]-----*/

/*-----[list02]-----*/

.advantage #list02 {
	width: 248px;
	height: 248px;
	border-radius: 130px;
	top: 80px;
	left: 380px;
	background: url(../images/advantage/list_bg.png) center;
	z-index: 10;
	box-shadow: 2px 5px 8px rgba(0, 0, 0, 0.25);
	behavior: url(/user_new/common/PIE.htc);
}

.advantage #list #list02:before {
	content: " ";
	position: absolute;
	z-index: 30;
	border: dashed 2px #68c9ff;
	border-radius: 130px;
	width: 228px;
	height: 228px;
	top: 50%;
	left: 50%;
	margin-top: -116px;
	margin-left: -116px;
}

.advantage #list02 div {
	padding: 50px 25px 0;
	text-align: center;
}

.advantage #list02 h3 {
	background: url(../images/advantage/sub_ttl02.png) no-repeat;
	width: 120px;
	height: 70px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 8px;
}

/*-----[list02 ここまで]-----*/

/*-----[list03]-----*/

.advantage #list03 {
	width: 260px;
	height: 260px;
	border-radius: 140px;
	top: 15px;
	right: 10px;
}

.advantage #list03 a {
	margin: -120px auto 0;
	width: 240px;
	height: 240px;
	border-radius: 150px;
	z-index: 0;
}

.advantage #list #list03:before {
	z-index: 0;
	border: dashed 2px #86bf24;
	border-radius: 130px;
}

.advantage #list03 div {
	position: relative;
	padding: 40px 25px 0;
	text-align: center;
}

.advantage #list03 h3 {
	background: url(../images/advantage/sub_ttl03.png) no-repeat;
	width: 185px;
	height: 48px;
	margin: 0 auto 8px;
}

.advantage #list03 .more {
	background: url(../images/advantage/more01.png) no-repeat center;
}

.advantage #list03 img {
	top: 0;
	left: 0;
}

/*-----[list03 ここまで]-----*/

/*-----[list04]-----*/

.advantage #list04 {
	width: 180px;
	height: 180px;
	border-radius: 160px;
	top: 230px;
	left: 10px;
	z-index: 70;
}

.advantage #list04 a {
	margin: -90px auto 0;
	width: 100%;
	height: 100%;
	border-radius: 160px;
}

.advantage #list #list04 a:before {
	z-index: 0;
	border: dashed 2px #cb8fe7;
	border-radius: 160px;
	width: 160px;
	height: 160px;
	margin-top: -82px;
	margin-left: -82px;
	top: 50%;
	left: 50%;
}

.advantage #list04 div {
	position: relative;
	padding: 40px 25px 0;
	text-align: center;
}

.advantage #list04 h3 {
	background: url(../images/advantage/sub_ttl04.png) no-repeat;
	width: 100px;
	height: 20px;
	margin: 0 auto 8px;
}

.advantage #list04 .more {
	background: url(../images/advantage/more02.png) no-repeat center;
}

.advantage #list04 img {
	top: 60px;
	right: -30px;
}

/*-----[list04 ここまで]-----*/

/*-----[list05]-----*/

.advantage #list05 {
	width: 212px;
	height: 212px;
	border-radius: 130px;
	top: 236px;
	right: 5px;
}

.advantage #list05 a {
	margin: -106px auto 0;
	width: 100%;
	height: 100%;
	border-radius: 130px;
	z-index: 0;
}

.advantage #list #list05 a:before {
	z-index: 0;
	border: dashed 2px #ff95b3;
	border-radius: 110px;
	width: 190px;
	height: 190px;
	margin-top: -97px;
	margin-left: -97px;
	top: 50%;
	left: 50%;
}

.advantage #list05 div {
	position: relative;
	padding: 25px 25px 0;
	text-align: center;
}

.advantage #list05 h3 {
	background: url(../images/advantage/sub_ttl05.png) no-repeat;
	width: 122px;
	height: 47px;
	margin: 0 auto 5px;
}

.advantage #list05 .more {
	background: url(../images/advantage/more03.png) no-repeat center;
}

/*-----[list05 ここまで]-----*/

/*-----[list06]-----*/

.advantage #list06 {
	width: 220px;
	height: 220px;
	border-radius: 150px;
	top: 510px;
	left: 0;
	z-index: 20;
}

.advantage #list06 a {
	margin: -110px auto 0;
	width: 100%;
	height: 100%;
	border-radius: 150px;
}

.advantage #list #list06 a:before {
	z-index: 0;
	border: dashed 2px #ff95b3;
	border-radius: 130px;
	width: 200px;
	height: 200px;
	margin-top: -102px;
	margin-left: -102px;
	top: 50%;
	left: 50%;
}

.advantage #list06 div {
	position: relative;
	padding: 25px 25px 0;
	text-align: center;
}

.advantage #list06 h3 {
	background: url(../images/advantage/sub_ttl06.png) no-repeat;
	width: 83px;
	height: 45px;
	margin: 0 auto 5px;
}

.advantage #list06 .more {
	background: url(../images/advantage/more03.png) no-repeat center;
}

.advantage #list06 img {
	top: 0;
	left: 0;
}

/*-----[list06 ここまで]-----*/

/*-----[list07]-----*/

.advantage #list07 {
	width: 272px;
	height: 272px;
	border-radius: 200px;
	top: 650px;
	left: 200px;
	z-index: 20;
}

.advantage #list07 a {
	margin-top: -126px;
	margin-left: auto;
	margin-right: auto;
	width: 252px;
	height: 252px;
	border-radius: 200px;
	z-index: 0;
}

.advantage #list #list07:before {
	z-index: 0;
	border: dashed 2px #86bf24;
	border-radius: 200px;
}

.advantage #list07 div {
	position: relative;
	padding: 40px 25px 0;
	text-align: center;
}

.advantage #list07 h3 {
	background: url(../images/advantage/sub_ttl07.png) no-repeat;
	width: 115px;
	height: 22px;
	margin: 0 auto 8px;
}

.advantage #list07 .more {
	background: url(../images/advantage/more01.png) no-repeat center;
}

.advantage #list07 img {
	bottom: 10px;
	left: -30px;
}

/*-----[list07 ここまで]-----*/

/*-----[list08]-----*/

.advantage #list08 {
	width: 248px;
	height: 248px;
	border-radius: 130px;
	top: 680px;
	left: 500px;
	background: url(../images/advantage/list_bg.png) center;
	z-index: 30;
	box-shadow: 2px 5px 8px rgba(0, 0, 0, 0.25);
	behavior: url(/user_new/common/PIE.htc);
}

.advantage #list #list08:before {
	content: " ";
	position: absolute;
	z-index: 0;
	border: dashed 2px #cb8fe7;
	border-radius: 130px;
	width: 230px;
	height: 230px;
	top: 50%;
	left: 50%;
	margin-top: -117px;
	margin-left: -117px;
}

.advantage #list08 div {
	padding: 50px 25px 0;
	text-align: center;
}

.advantage #list08 h3 {
	background: url(../images/advantage/sub_ttl08.png) no-repeat;
	width: 150px;
	height: 70px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 8px;
}

/*-----[list08 ここまで]-----*/

/*-----[list09]-----*/

.advantage #list09 {
	width: 228px;
	height: 228px;
	border-radius: 200px;
	top: 500px;
	right: 0;
	z-index: 40;
}

.advantage #list09 a {
	margin-top: -104px;
	margin-left: auto;
	margin-right: auto;
	width: 208px;
	height: 208px;
	border-radius: 200px;
}

.advantage #list #list09:before {
	z-index: 0;
	border: dashed 2px #68c9ff;
	border-radius: 200px;
}

.advantage #list09 div {
	position: relative;
	padding: 20px 25px 0;
	text-align: center;
}

.advantage #list09 h3 {
	background: url(../images/advantage/sub_ttl09.png) no-repeat;
	width: 100px;
	height: 47px;
	margin: 0 auto 8px;
}

.advantage #list09 .more {
	background: url(../images/advantage/more04.png) no-repeat center;
}

.advantage #list09 img {
	top: -5px;
	right: -5px;
}

/*-----[list09 ここまで]-----*/

/*-----[リップルキッズパークへの想い]-----*/

#ripple_comment {
	padding: 0 0 30px;
	background: url(../images/advantage/bg.png) repeat-x left bottom;
}

#content #ripple_comment h3 {
	margin: 0 0 20px;
	padding: 0;
	background: none;
}

#ripple_comment div {
	margin-bottom: -10px;
}

#ripple_comment>div img {
	margin: 0 0 20px 20px;
}

#main #ripple_comment p {
	margin-bottom: 10px;
}

#ripple_comment h4 {
	font-size: 16px;
	font-weight: bold;
	color: #402720;
	margin: 30px 0 10px;
	padding-left: 30px;
	background: url(../images/advantage/bg02.png) no-repeat 3px 7px;
}

/*-----[リップルキッズパークへの想い ここまで]-----*/

/*----------------------------------------------------------------------------
レッスンの特徴 curriculum.css & 9段階レベル判定 level.css
----------------------------------------------------------------------------*/

/*-----[カリキュラムナビゲーション]-----*/

.cr_nav {
	margin-bottom: 20px;
	position: relative;
}

.cr_nav {
	float: left;
	width: 208px;
	height: 145px;
	padding: 10px;
	margin: 0 0 40px 13px;
	border-radius: 30px;
}

#cr_nav01 {
	background: #91c942;
	margin: 0 0 40px;
}

#cr_nav02 {
	background: #68a4eb;
}

#cr_nav03 {
	background: #ff95b3;
}

.cr_nav h3,
.cr_nav a {
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}

.cr_nav h3 {
	height: 20px;
	margin: 0 auto 10px;
}

#cr_nav01 h3 {
	background: url(../images/curriculum/list01_ttl.png) no-repeat;
	width: 130px;
}

#cr_nav02 h3 {
	background: url(../images/curriculum/list02_ttl.png) no-repeat;
	width: 142px;
}

#cr_nav03 h3 {
	background: url(../images/curriculum/list03_ttl.png) no-repeat;
	width: 160px;
}

.cr_nav ul {
	padding: 15px 10px;
	background: #fff;
	border-radius: 15px;
	text-align: center;
	height: 85px;
}

.cr_nav li {
	margin-top: 10px;
	padding-top: 10px;
}

#cr_nav01 li {
	border-top: dashed 1px #91c942;
}

#cr_nav02 li {
	border-top: dashed 1px #68a4eb;
}

#cr_nav03 li {
	border-top: dashed 1px #ff95b3;
}

#main .cr_nav li:first-child {
	margin-top: 0;
	padding-top: 0;
	border-top: none;
}

.cr_nav a {
	display: block;
	color: #2B0D0D;
	font-size: 16px;
	letter-spacing: -0.05em;
	width: 188px;
	height: 46px;
	position: relative;
}

.cr_nav li:first-child a,
#cr_nav03 li a {
	height: 23px;
}

#cr_nav03 li:first-child a {
	padding-top: 18px;
	height: 60px;
}

#cr_nav01 li:first-child span {
	background: url(../images/curriculum/list01.png) no-repeat 0 3px;
}

#cr_nav01 li span {
	background: url(../images/curriculum/list02.png) no-repeat 0 3px;
}

#cr_nav02 li:first-child span {
	background: url(../images/curriculum/list03.png) no-repeat 0 3px;
}

#cr_nav02 li span {
	background: url(../images/curriculum/list04.png) no-repeat 0 3px;
}

#cr_nav03 li:first-child span {
	background: url(../images/curriculum/list05.png) no-repeat 0 4px;
}

#cr_nav03 li span {
	background: url(../images/curriculum/list06.png) no-repeat 0 3px;
}

.cr_nav span {
	display: block;
	height: 100%;
	position: relative;
	z-index: 500;
}

.cr_nav a:hover span {
	opacity: 1;
}

.cr_nav a:before {
	content: "";
	display: block;
	position: absolute;
	width: 188px;
	height: 100%;
	background: url(../images/curriculum/bg.png);
	z-index: 0;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	zoom: 1;
	-webkit-transition: all 200ms linear;
	-moz-transition: all 200ms linear;
	-o-transition: all 200ms linear;
	-ms-transition: all 200ms linear;
	transition: all 200ms linear;
}

.cr_nav a:hover:before,
.cr_nav .current:before {
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
	zoom: 1;
}

.cr_nav img {
	position: absolute;
}

#cr_nav01 img {
	top: -5px;
	left: -5px;
}

#cr_nav02 img {
	bottom: -3px;
	left: 5px;
}

#cr_nav03 img {
	top: 2px;
	left: -10px;
}

@media screen and (max-width:1023px) {
	#cr_nav01 {
		background: #91c942;
		margin: 0 10px 40px;
	}
}

/*-----[カリキュラムナビゲーション ここまで]-----*/

/*-----[section共通]-----*/

#main.curriculum section .bold,
#main.level section .bold {
	color: #eb6f86;
	letter-spacing: 0.05em;
}

#main.curriculum section .big,
#main.level section .big {
	font-size: 27px;
}

#main.curriculum section .bgImg:after {
	opacity: 0.3;
}

.curriculum section .bgImg.lesson1:after {
	background: url("../images/curriculum/bg_fun.jpg") no-repeat center bottom / cover;
}

.curriculum section .bgImg.lesson2:after {
	background: url("../images/curriculum/bg_will.jpg") no-repeat center bottom / cover;
}

.curriculum section .bgImg.normalCourse:after {
	background: url("../images/curriculum/bg_normal_course.jpg") no-repeat center bottom / cover;
}

.curriculum section .bgImg.rippleEiken:after {
	background: url("../images/curriculum/bg_ripple_eiken.jpg") no-repeat center bottom / cover;
}

.curriculum section .bgImg.level:after {
	background: url("../images/curriculum/bg_level.jpg") no-repeat center top / cover;
}

.curriculum section .bgImg.review:after {
	background: url("../images/curriculum/bg_review.jpg") no-repeat center bottom / cover;
}

.curriculum section .bgImg.demand:after {
	background: url("../images/curriculum/bg_demand.jpg") no-repeat center bottom / cover;
}

.curriculum section img {
	width: 50%;
	max-width: 500px;
	min-width: 260px;
	height: auto;
	text-align: center;
}

/*-----[section01]-----*/

/*-----[section02]-----*/

.curriculum .sec02 {
	background-color: #ffffff;
}

.curriculum .lessonFlow {
	width: 100%;
	display: flex;
	display: -webkit-flex;
	flex-direction: row;
	flex-wrap: nowrap;
	/* align-items: space-around; */
	justify-content: center;
}

.curriculum .lessonFlow li {
	position: relative;
	width: 25%;
	border: 1px solid #ececec;
	padding: 20px 5px 10px;
	margin-right: 2.75rem;
	text-align: center;
	box-shadow: 0px 1px 1px 1px rgba(236, 236, 236, 0.5);
}

.curriculum .lessonFlow li:after {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	right: -2.25rem;
	font-family: 'FontAwesome';
	content: '\f18e';
	font-size: 2.0rem;
}

.curriculum .lessonFlow li:nth-child(2) {
	width: 50%;
}

.curriculum .lessonFlow li:last-child {
	margin-right: 0;
}

.curriculum .lessonFlow li:last-child:after {
	display: none;
}

.curriculum .lessonFlow li .EnDesc {
	font-size: 0.8rem;
	margin: 15px auto 5px;
}

.curriculum .lessonFlow li .JaDesc {
	font-size: 0.7rem;
}

.curriculum .lessonFlow li .lessonMin {
	font-size: 0.8rem;
	font-weight: bold;
	margin: 10px auto;
}

.curriculum .lessonDesc {
	margin-top: 15px;
	position: relative;
	border: 2px solid #ececec;
	padding: 4px;
	box-shadow: 0px 1px 1px 1px rgba(236, 236, 236, 0.5);
	font-size: 0.7rem;
	line-height: 0.9rem;
	text-align: left;
}

.curriculum .lessonDesc:after,
.curriculum .lessonDesc:before {
	bottom: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.curriculum .lessonDesc:after {
	border-color: rgba(255, 255, 255, 0);
	border-bottom-color: #ffffff;
	border-width: 10px;
	margin-left: -10px;
}

.curriculum .lessonDesc:before {
	border-color: rgba(194, 225, 245, 0);
	border-bottom-color: #ececec;
	border-width: 13px;
	margin-left: -13px;
}

/*-----[section03]-----*/

/*-----[section04]-----*/

.curriculum .sec04 {
	background-color: #fff;
}

/*-----[9段階level判定]-----*/

#main.level .sec01 {
	margin: 0 0 10px;
}

.level .sec01 p>img {
	position: absolute;
	right: 5px;
	top: 50px;
}

.lv_table {
	width: 100%;
	border-top: solid 2px #2B0D0D;
	border-left: solid 2px #2B0D0D;
	border-right: solid 2px #2B0D0D;
	line-height: 1.6;
	margin: -1px 0 0;
}

.lv_table th,
.lv_table td {
	border-bottom: solid 1px #2B0D0D;
}

.lv_table th {
	color: #fff;
	vertical-align: middle;
	width: 40px;
}

.lv_table th span {
	display: block;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	width: 30px;
	height: 60px;
	margin: 0 auto;
}

@media screen and (max-width:480px) {
    .lv_table dt {
        font-size: 10px!important;
    }
    .lv_table dd {
        font-size: 12px;
        padding: 0;
        width: 90px;
    }
}

.lv9 {
	background: url(../images/curriculum/9level/lv9.png) no-repeat;
}

.lv8 {
	background: url(../images/curriculum/9level/lv8.png) no-repeat;
}

.lv7 {
	background: url(../images/curriculum/9level/lv7.png) no-repeat;
}

.lv6 {
	background: url(../images/curriculum/9level/lv6.png) no-repeat;
}

.lv5 {
	background: url(../images/curriculum/9level/lv5.png) no-repeat;
}

.lv4 {
	background: url(../images/curriculum/9level/lv4.png) no-repeat;
}

.lv3 {
	background: url(../images/curriculum/9level/lv3.png) no-repeat;
}

.lv2 {
	background: url(../images/curriculum/9level/lv2.png) no-repeat;
}

.lv1 {
	background: url(../images/curriculum/9level/lv1.png) no-repeat;
}

.lv_table td {
	padding: 10px 15px;
	font-size: 13px;
	color: #2B0D0D;
	font-weight: normal;
}

.lv_table th+td {
	font-size: 14px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	padding-bottom: 0;
	border-bottom: none;
}

.lv_table .line {
	display: block;
	padding: 0 0 8px;
}

.lv_table dl {
	overflow: hidden;
	zoom: 1;
}

.lv_table dt {
	font-size: 12px;
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Arial, Verdana, sans-serif;
	font-weight: normal;
	background: #2B0D0D;
	width: 70px;
	padding: 1px 0 0;
	color: #fff;
	border-radius: 20px;
	letter-spacing: 0.15em;
	text-align: center;
	line-height: 1.5;
	float: left;
}

.lv_table dd {
	padding: 0 0 0 85px;
}

.lv_table.pink {
	margin-top: 10px;
}

.lv_table.pink th {
	background: #ff95b3;
}

.lv_table.pink td {
	background: #fff4f7;
}

.lv_table.pink .line {
	border-bottom: dashed 1px #ff95b3;
}

.lv_table.green th {
	background: #8cc63f;
}

.lv_table.green td {
	background: #f3f9eb;
}

.lv_table.green .line {
	border-bottom: dashed 1px #8cc63f;
}

.lv_table.blue {
	border-bottom: solid 2px #2B0D0D;
}

.lv_table.blue th {
	background: #68a4eb;
}

.lv_table.blue td {
	background: #f0f6fd;
}

.lv_table.blue .line {
	border-bottom: dashed 1px #68a4eb;
}

.lets_go_image {
    width: 210px;
    height: 160px;
}

@media screen and (max-width:480px){
    .lv_table.green .line,
    .lv_table.blue .line {
        width: 170px;
    }
    .lets_go_image {
        width: 155px;
        height: 120px;
    }
}
/*-----[9段階level判定 ここまで]-----*/

/*------------------------------
親子プチ留学をしよう！ ryugaku.css
------------------------------*/

#main.ryugaku section p.copy {
	font-size: 18px;
	font-weight: bold;
	color: #402720;
}

#main.ryugaku section .bold {
	color: #eb6f86;
	font-size: 24px;
}

#main.ryugaku section .small {
	font-size: 12px;
	font-weight: bold;
}

#main.ryugaku .sec01 #img01 {
	position: absolute;
	top: 75px;
	right: 0;
	z-index: 0;
}

#main.ryugaku .sec01 #img02 {
	position: relative;
	z-index: 100;
}

.rg_table {
	width: 100%;
	border: solid 2px #402720;
	font-weight: bold;
	background-color: #fff4f7;
}

.rg_table .num {
	font: bold 23px/1.8 Arial, Helvetica, sans-serif;
}

.rg_table th,
.rg_table td {
	border: solid 1px #402720;
	vertical-align: middle;
	padding: 3px 0;
}

.rg_table th {
	background-color: #ff95b3;
	color: #fff;
	font-size: 17px;
	letter-spacing: 0.1em;
}

.rg_table td {
	padding: 0 15px;
}

.rg_table td[colspan="2"],
.rg_table td[rowspan="5"] {
	font-size: 13px;
	font-weight: normal;
}

.rg_table td[colspan="2"] {
	padding: 10px 15px 8px;
}

.rg_table td[rowspan="5"] {
	width: 37%;
	line-height: 1.8;
}

.sec03 .rg_table th,
.sec03 .rg_table td {
	padding: 7px 15px 5px;
}

.sec03 .rg_table th {
	text-align: left;
	line-height: 1.2;
}

.sec03 .rg_table td {
	font-size: 13px;
	font-weight: normal;
	line-height: 1.6;
}

#main.ryugaku .sec03:before {
	content: "";
	display: block;
	background: url(../images/curriculum/ryugaku/img03.png) no-repeat;
	width: 194px;
	height: 147px;
	position: absolute;
	right: 10px;
	top: 140px;
}

#main.ryugaku .sec04:before {
	content: "";
	display: block;
	background: url(../images/curriculum/ryugaku/img04.jpg) no-repeat;
	width: 263px;
	height: 229px;
	position: absolute;
	right: 10px;
	top: 80px;
}

#main.ryugaku .sec05:before {
	content: "";
	display: block;
	background: url(../images/curriculum/ryugaku/img05.png) no-repeat;
	width: 123px;
	height: 136px;
	position: absolute;
	right: 15px;
	top: 45px;
}

#main.ryugaku .sec04 a {
	font-weight: bold;
	text-decoration: underline;
}

#main.ryugaku .sec04 a:hover {
	text-decoration: none;
}

.lg_btn {
	width: 505px;
	min-height: 70px;
	margin: 30px auto 0;
	position: relative;
}

.lg_btn a {
	display: block;
	border-radius: 10px;
	box-shadow: 0 4px 3px rgba(0, 0, 0, 0.15);
	position: absolute;
	background: url(../images/curriculum/ryugaku/btn_on.png);
	width: 100%;
	height: 70px;
	left: 0;
	bottom: 0;
}

.lg_btn span {
	display: block;
	width: 100%;
	height: 70px;
	background: url(../images/curriculum/ryugaku/btn_off.png) no-repeat;
}

.lg_btn a:hover {
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
	margin: 32px auto 0;
	bottom: -2px;
}

.lg_btn span:hover {
	opacity: 0;
}

/*------------------------------
通常コースについて text.css
------------------------------*/

.text .sec02 h3 .red {
	font-size: 13px;
	font-weight: normal;
}

.text .sec02 h4,
.text .sec03 h4 {
	line-height: 32px;
	font-size: 18px;
	color: #fff;
	text-align: center;
	margin-bottom: 20px;
}

.text_ttl01 {
	background: url(../images/curriculum/text/text_ttl01.png) no-repeat;
	background-size: 100% 100%;
}

.text_ttl02 {
	background: url(../images/curriculum/text/text_ttl02.png) no-repeat;
	background-size: 100% 100%;
}

@media screen and (max-width:480px){
    .text_ttl01,
    .text_ttl02 {
        font-size: 16px!important;
        line-height: 20px!important;
        background-size: 100% 20px;
    }
}

.text .sec02 h5 span {
	color: #c383c4;
}

.bullet_color {
	color: #c383c4;
}

.text_box {
	background: #fff;
	border: solid 1px #c383c4;
	margin-bottom: 40px;
	padding: 30px;
	overflow: hidden;
	zoom: 1;
}

div.text_list {
	float: left;
	margin-right: 20px;
}

ul.text_list {
	overflow: hidden;
	zoom: 1;
	text-align: center;
	margin-bottom: -20px;
}

.text_list li {
	display: inline-block;
	width: 120px;
	margin: 0 18px 20px 0;
}

.text_list .turn {
	margin: 0;
}

/*-----[オリジナル教材（サブ）]-----*/

#text_sub_icon {
	margin-bottom: 40px;
}

#text_sub_icon dt {
	line-height: 47px;
	padding-left: 58px;
	margin-bottom: 5px;
	font-size: 18px;
	font-weight: bold;
}

#text_sub_icon dd {
	margin-bottom: 15px;
	line-height: 1.6;
}

.icon01 {
	background: url(../images/curriculum/text/icon01.png) no-repeat;
}

.icon02 {
	background: url(../images/curriculum/text/icon02.png) no-repeat;
}

.icon03 {
	background: url(../images/curriculum/text/icon03.png) no-repeat;
}

.icon04 {
	background: url(../images/curriculum/text/icon04.png) no-repeat;
}

.text .lv_table td {
	border-bottom: none;
	padding: 0 15px;
}

.text .lv_table th+td {
	border-top: solid 1px #402720;
}

.lv_table p {
	display: inline;
	margin-right: 10px;
	padding: 2px 15px 2px 40px;
	background: #fff;
	border-radius: 20px;
	position: relative;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
}

.lv_table p:before {
	content: "";
	display: block;
	width: 30px;
	height: 30px;
	position: absolute;
	left: 0;
	top: -5px;
}

.lv_table .p:before {
	background: url(../images/curriculum/text/s_icon01.png) no-repeat;
}

.lv_table .r:before {
	background: url(../images/curriculum/text/s_icon02.png) no-repeat;
}

.lv_table .d:before {
	background: url(../images/curriculum/text/s_icon03.png) no-repeat;
}

.lv_table .s:before {
	background: url(../images/curriculum/text/s_icon04.png) no-repeat;
}

.text .lv_table div {
	padding: 10px 0;
}

.text .lv_table p+div,
.lv_table .mark_btn+div {
	margin-top: 3px;
	padding: 0;
}

.lv_table .null {
	display: inline;
}

.lv_table a {
	display: inline-block;
	margin: 2px 10px 2px 0;
	padding-left: 15px;
	color: #402720;
	font-size: 14px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	position: relative;
}

.lv_table a:hover {
	left: 1px;
	top: 1px;
}

.lv_table.blue a {
	background: url(../images/curriculum/text/mark01.png) no-repeat left center;
}

.lv_table.green a {
	background: url(../images/curriculum/text/mark02.png) no-repeat left center;
}

.lv_table.blue a:hover {
	color: #68a4eb;
}

.lv_table.green a:hover {
	color: #8cc63f;
}

.text .lv_table.blue {
	border-bottom: none;
}

.text .lv_table.green {
	border-bottom: solid 2px #402720;
}

.lv_table .mark_btn {
	margin: 0;
	padding: 0;
	background: none;
}

/*-----[オリジナル教材（サブ） ここまで]-----*/

/*------------------------------
リップル英検 eiken.css
------------------------------*/

/*-----[section01]-----*/

.eiken section p.sprite {
	background: url(../images/eiken/img01.png) no-repeat;
	width: 440px;
	height: 25px;
}

.eiken .sec01 div {
	border: solid 4px #9bcd54;
	border-radius: 20px;
	margin: 30px 0;
	padding: 25px 25px 0;
	position: relative;
}

.eiken .sec01 div h4 img {
	width: 225px;
	height: 20px;
}

.eiken .sec01 .eiken_sec1_img {
	width: 280px;
	height: 190px;
}

.eiken .sec01 h4 {
	border-bottom: dotted 2px #9bcd54;
	margin: 0 0 8px;
	padding: 0 0 8px;
}

.eiken .sec01 p {
	margin: 0 0 25px;
}

.eiken .sec01 p+img {
	position: absolute;
	right: 10px;
	bottom: -50px;
}

.eiken .sec01 div+p {
	color: #ee4363;
	font-weight: bold;
}

/*-----[section01 ここまで]-----*/

/*-----[section02]-----*/

.eiken .sec02 li {
	margin: 40px 0 0;
	padding: 0 0 0 80px;
}

.eiken .sec02 li h4 img {
	width: 460px;
	height: 50px;
}

.eiken .sec02 h4 {
	margin: 0 0 20px;
	padding: 10px 0;
}

.eiken .blue {
	border-top: dashed 1px #89c0ff;
	border-bottom: dashed 1px #89c0ff;
}

.eiken .green {
	border-top: dashed 1px #8cc63f;
	border-bottom: dashed 1px #8cc63f;
}

.eiken .pink {
	border-top: dashed 1px #ff95b3;
	border-bottom: dashed 1px #ff95b3;
}

#point01 {
	background: url(../images/eiken/point01.png) no-repeat left top;
}

#point02 {
	background: url(../images/eiken/point02.png) no-repeat left top;
}

#point03 {
	background: url(../images/eiken/point03.png) no-repeat left top;
}

#point04 {
	background: url(../images/eiken/point04.png) no-repeat left top;
}

#point05 {
	background: url(../images/eiken/point05.png) no-repeat left top;
}

#point06 {
	background: url(../images/eiken/point06.png) no-repeat left top;
}

#point07 {
	background: url(../images/eiken/point07.png) no-repeat left top;
}

.eiken .text_pic {
	width: 700px;
	height: 340px;
}
/*-----[section02 ここまで]-----*/

/*-----[section03]-----*/

.eiken .sec03 ul {
	position: relative;
	height: 260px;
}

.eiken .sec03 li a {
	display: block;
	width: 200px;
	height: 230px;
	border-radius: 250px;
	padding: 20px 25px 0;
	text-align: center;
	position: absolute;
	top: 0;
}

.eiken .sec03 h4 {
	width: 70px;
	height: 60px;
	margin: 0 auto 15px;
}

#main.eiken .sec03 li p {
	font-size: 13px;
	line-height: 1.7;
	padding: 15px 0 0;
	background: url(../images/eiken/bar.png) repeat-x left top;
}

.eiken #class_1 a {
	background-color: #fadc6c;
	z-index: 30;
	right: 0;
}

.eiken #class_2 a {
	background-color: #b2d681;
	z-index: 20;
	left: 230px;
}

.eiken #class_3 a {
	background-color: #d4a9d9;
	z-index: 10;
}

.eiken #class_1 a:hover,
.eiken #class_1 .current {
	background-color: #f5be2e;
}

.eiken #class_2 a:hover,
.eiken #class_2 .current {
	background-color: #7cb441;
}

.eiken #class_3 a:hover,
.eiken #class_3 .current {
	background-color: #b172b9;
}

.eiken #class_1 h4 {
	background: url(../images/eiken/class01.png) no-repeat;
}

.eiken #class_2 h4 {
	background: url(../images/eiken/class02.png) no-repeat;
}

.eiken #class_3 h4 {
	background: url(../images/eiken/class03.png) no-repeat;
}

.eiken .sec03 a:hover span {
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
	zoom: 1;
}

.eiken .sec03 dt {
	font-size: 18px;
	font-weight: bold;
	margin: 30px 0 10px;
	padding: 0 0 0 20px;
	color: #402720;
}

.eiken .sec03 li {
	font-size: 18px;
	font-weight: bold;
	color: #402720;
	list-style-type: none;
}

@media screen and (max-width:1023px) {
	.eiken section p.sprite {
		background-size: 58%;
	}
	.eiken .sec01 div h4 img {
		width: 100%;
		height: auto;
	}
	.eiken .sec01 .eiken_sec1_img {
		width: 40%;
		height: auto;
	}
	.eiken .sec01 p+img {
		right: -57px;
		bottom: -84px;
	}
	.eiken .sec01 div+p {
		padding-top: 21px;
	}
	.eiken .sec02 li {
		margin: 20px 0 0;
		padding: 0 0 0 98px;
	}
	.eiken .sec02 li h4 img {
		width: 100%;
		height: auto;
	}
	.eiken_point {
		background-size: 15% !important;
	}
	.eiken .text_pic {
		width: 100%;
		height: auto;
	}
	.eiken #class_1 h4,
	.eiken #class_2 h4,
	.eiken #class_3 h4 {
		background-size: 50%;
		position: relative;
		left: 13px;
	}
	.eiken .sec03 h4 {
		width: 60px;
		height: 25px;
		margin: 0 auto 13px;
	}
	.eiken .sec03 ul {
		height: 210px;
	}
	.eiken .sec03 li a {
		display: block;
		width: 140px;
		height: 170px;
	}
	.eiken #class_2 a {
		left: 165px;
	}
	#main.eiken .sec03 li p {
		font-size: 11px;
	}

	@media screen and (max-width:767px) {
		.eiken .sec01 .eiken_sec1_img {
			width: 55%;
			height: auto;
		}
		.eiken .sec01 p+img {
			right: -24px;
			bottom: -50px;
		}
		.eiken .sec02 li {
			 padding: 0 0 0 50px;
		}
		.eiken #class_1 h4,
		.eiken #class_2 h4,
		.eiken #class_3 h4 {
			background-size: 25%;
			position: relative;
			left: 13px;
		}
		.eiken .sec03 ul {
			height: 97px;
		}

		.eiken .sec03 li a {
			display: block;
			width: 50px;
			height: 80px;
		}
		.eiken .sec03 h4 {
			width: 70px;
			height: 60px;
			margin: 0 auto -40px;
		}
		.eiken #class_2 a {
			left: 78px;
		}

		#main.eiken .sec03 li p {
			font-size: 5px;
			padding: 5px 0 0;
		}
		#main.eiken .sec03 li p .small {
			font-size: 5px !important;
		}
	}
}

#class_re1,
#class_re2 {
	display: none;
}

#class_re1 dt {
	background: url(../images/eiken/mark01_01.png) no-repeat left 3px;
}

#class_re2 dt {
	background: url(../images/eiken/mark02_01.png) no-repeat left 3px;
}

#class_re3 dt {
	background: url(../images/eiken/mark03_01.png) no-repeat left 3px;
}

.eiken .sec03 dd {
	line-height: 1.8;
	margin: 0 0 3px;
	padding: 0 0 0 20px;
}

#class_re1 dd {
	background: url(../images/eiken/mark01_02.png) no-repeat left 8px;
}

#class_re2 dd {
	background: url(../images/eiken/mark02_02.png) no-repeat left 8px;
}

#class_re3 dd {
	background: url(../images/eiken/mark03_02.png) no-repeat left 8px;
}

.eiken .sec03 dl a {
	color: #d63250;
	text-decoration: underline;
}

.eiken .sec03 dl a:hover {
	text-decoration: none;
}

/*-----[section03 ここまで]-----*/

/*-----[section04]-----*/

.kentei_list {
	overflow: hidden;
	zoom: 1;
	font-size: 0;
}

.eiken .sec04 li,
.kentei_list li {
	display: inline-block;
	/display: inline;
	/zoom: 1;
	margin-right: 20px;
	margin-bottom: 18px;
	width: 126px;
	font-size: 13px;
	text-align: center;
	line-height: 1.3;
}

.eiken .sec04 img,
.kentei_list img {
	width: 126px;
	height: auto;
	margin-bottom: 5px;
}

.eiken .sec04 .turn,
.kentei_list .turn {
	margin-right: 0;
}

@media screen and (max-width:1023px) {
	.kentei_list li {
		width: 20%;
	}
	.kentei_list img {
		width: 100%;
		height: auto;
		margin-bottom: 0px;
		margin-right: 0px;
	}
	.kentei_list .turn {
		margin-right: 20px;
	}
}

/*-----[section04 ここまで]-----*/

/*-----[section05]-----*/

@media screen and (max-width:480px) {
	.eiken .sec05 h3 {
		font-size: 10px !important;
	}
}

.eiken .sec05 figure img {
	width: 95%;
}

/*-----[section04 ここまで]-----*/

/*-----[section06]-----*/

.qa {
	width: 92%;
	margin: 0 auto;
}

.eiken .sec06 h1+p,
.qa h1+p {
	margin-bottom: 30px;
}

.eiken .sec06 dl,
.qa dl {
	background: #ffebed;
	border-radius: 6px;
	width: calc(100% - 10px);
	padding: 10px;
	margin: 0 auto 15px;
}

.eiken .sec06 dt,
.qa dt {
	position: relative;
	font-size: 0.8rem;
	cursor: pointer;
	line-height: 1.7;
}

.eiken .sec06 dt:before,
.qa dt:before {
	font-family: 'FontAwesome';
	content: '\f29c';
	color: #FF95B3;
	font-size: 1.0rem;
	padding-right: 4px;
}

.eiken .sec06 dt:after,
.qa dt:after {
	font-family: 'FontAwesome';
	position: absolute;
	content: '\f150';
	top: 50%;
	right: 5px;
	color: #FF95B3;
	font-size: 1.0rem;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.qa dt.check:after {
	content: '\f151';
}

.eiken .sec06 dd,
.qa dd {
	background: #fff;
	padding: 10px;
	display: none;
	border-radius: 6px;
}

#main section.qa dd p {
	margin-bottom: 10px;
	font-size: 0.7rem;
}

.eiken .sec06 dd a,
.qa dd a {
	color: #d63250;
	text-decoration: underline;
}

.eiken .sec06 a:hover,
.qa a:hover {
	text-decoration: none;
}

#main.eiken .sec06 dl p,
.qa dl p {
	margin-bottom: 10px;
}

.eiken .sec06 h4 {
	background: url(../images/eiken/mark03_01.png) no-repeat left 3px;
	font-size: 18px;
	font-weight: bold;
	margin: 30px 0 10px;
	padding: 0 0 0 20px;
	color: #402720;
}

/*-----[section06 ここまで]-----*/

/*-----[section07]-----*/

.eiken .sec07 div {
	margin: 0 0 50px;
}

.eiken .sec07 h4 {
	background: url(../images/eiken/mark03_01.png) no-repeat left 3px;
	font-size: 18px;
	font-weight: bold;
	margin: 30px 0 10px;
	padding: 0 0 0 20px;
	color: #402720;
}

.eiken .sec07 figure {
	text-align: center;
	margin: 20px 0 0;
}

.eiken .sec07 div .sec07_img06 {
	width: 710px;
	height: 300px;
}
.eiken .sec07 div .sec07_img05 {
	width: 100%;
	height: auto;
}


@media screen and (max-width:1023px) {
	.eiken .sec07 div {
		margin: 0 0 25px;
	}
	.eiken .sec07 div .sec07_img06,
	.eiken .sec07 div .sec07_img05 {
		width: 90%;
		height: auto;
	}
}

/*-----[section07 ここまで]-----*/

/*------------------------------
英検二次試験対策 eiken_interview_test.css
------------------------------*/

.niji .sec01 p {
	margin-bottom: 10px;
}

.niji .sec01 {
	position: relative;
}

.niji .sec01 img {
	position: absolute;
	right: 20px;
	bottom: 0;
}

.niji .sec03 h4 {
	margin-bottom: 10px;
}

@media screen and (max-width:767px) {
	.niji .sec01 img {
		position: inherit;
		right: 0px;
		bottom: 0;
		width: 190px;
		height: 125px;
	}

	.niji .sec02 img {
		width:100%;
		height: auto;
	}
}

/*------------------------------
お客様満足度アンケート enquete.css
------------------------------*/

.enquete section p.sprite {
	background: url(../images/enquete/img01.png) no-repeat;
	width: 620px;
	height: 60px;
	margin-bottom: 40px;
}

.enquete #btn01 a,
.enquete #btn01 span {
	display: block;
	width: 502px;
	height: 103px;
}

.enquete #btn01 a {
	margin: 0 auto;
	background: url(../images/enquete/btn01_on.png) no-repeat;
}

.enquete #btn01 span {
	background: url(../images/enquete/btn01.png) no-repeat;
}

.enquete #btn01 a:hover span {
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	zoom: 1;
}

#scroll {
	margin-bottom: 60px;
	position: relative;
}

#scroll ul {
	background: url(../images/common/bg.png);
	padding: 20px;
	width: 650px;
	margin: -10px auto;
}

#scroll li {
	font-size: 13px;
	line-height: 1.7;
	margin-top: 30px;
	background-color: #fff;
	padding: 20px;
	border-radius: 20px;
}

#scroll li:first-child {
	margin-top: 0;
}

#scroll ul+img {
	position: absolute;
	top: 0px;
	left: 80px;
}

/*-----[section01]-----*/

.enquete .sec01 {
	border-top: dashed 1px #eb6f86;
	padding: 20px 0 0;
	position: relative;
}

.enquete .sec01 h4 {
	width: 375px;
	height: 25px;
	padding-bottom: 20px;
	border-bottom: dashed 1px #eb6f86;
	float: left;
}

.enquete .sec01 .comment {
	width: 250px;
	float: right;
	margin-bottom: 80px;
}

.enquete .sec01 .comment p {
	border-bottom: dashed 1px #eb6f86;
	padding-bottom: 10px;
	margin-bottom: 20px;
}

.enquete .sec01 .graph {
	position: absolute;
	top: -10px;
	left: 0;
}

.enquete .sec01 .graph p {
	position: absolute;
	left: 0;
	bottom: 0;
}

#content .enquete .small {
	font-size: 11px;
}

.enquete .pink {
	font-weight: normal;
}

/*-----[section01 ここまで]-----*/

/*-----[section02]-----*/

.enquete .sec02 {
	border-top: dashed 1px #1377b6;
	padding: 20px 0 0;
	position: relative;
}

.enquete .sec02 h4 {
	position: relative;
	width: 370px;
	height: 25px;
	padding-bottom: 20px;
	border-bottom: dashed 1px #1377b6;
	margin-bottom: 20px;
	z-index: 50;
}

.enquete .sec02 h4 span {
	position: absolute;
	left: 0;
	top: -50px;
	width: 710px;
	color: #1377b6;
	font-size: 16px;
	font-weight: bold;
}

.enquete .sec02 .comment {
	width: 255px;
	position: relative;
	z-index: 50;
}

.enquete .sec02 .comment p {
	border-bottom: dashed 1px #1377b6;
	padding-bottom: 10px;
	margin-bottom: 20px;
}

.enquete .sec02 .graph {
	position: absolute;
	right: 0;
	top: 10px;
	z-index: 10;
}

.enquete .blue {
	color: #1377b6;
}

/*-----[section02 ここまで]-----*/

/*-----[section03]-----*/

.enquete .sec03 {
	border-top: dashed 1px #86bf24;
	margin-top: 360px;
	margin-bottom: 50px;
	padding: 20px 0 0;
	position: relative;
	z-index: 20;
}

.enquete .sec03 h4 {
	position: relative;
	height: 25px;
	padding: 0 0 20px 300px;
	border-bottom: dashed 1px #86bf24;
	margin-bottom: 20px;
	z-index: 50;
}

.enquete .sec03 h4 span {
	position: absolute;
	left: 300px;
	top: -50px;
	width: 710px;
	color: #86bf24;
	font-size: 16px;
	font-weight: bold;
}

.enquete .sec03 .comment {
	width: 407px;
	margin: 0 0 0 auto;
}

.enquete .sec03 .comment p {
	border-bottom: dashed 1px #86bf24;
	padding-bottom: 10px;
	margin-bottom: 20px;
}

.enquete .sec03 .graph {
	position: absolute;
	left: 10px;
	top: -60px;
	z-index: 60;
}

.enquete .sec03 .green {
	color: #86bf24;
}

/*-----[section03 ここまで]-----*/

/*-----[section04]-----*/

.enquete .sec04 {
	border-top: dashed 1px #cb8fe7;
	padding: 20px 0 0;
	position: relative;
	margin-bottom: 600px;
}

.enquete .sec04 h4 {
	position: relative;
	width: 370px;
	height: 25px;
	padding-bottom: 20px;
	border-bottom: dashed 1px #cb8fe7;
	margin-bottom: 20px;
	z-index: 50;
	float: left;
}

.enquete .sec04 .comment {
	width: 255px;
	position: relative;
	z-index: 50;
	float: right;
	color: #b359be;
	font-weight: bold;
}

.enquete .sec04 .graph {
	position: absolute;
	left: 0;
	top: 20px;
	z-index: 60;
}

.enquete .blue {
	color: #1377b6;
}

/*-----[section04 ここまで]-----*/

/*-----[section05]-----*/

.enquete .sec05 {
	border-top: dashed 1px #86bf24;
	padding: 20px 0 0;
	position: relative;
	margin-bottom: 80px;
}

.enquete .sec05 h4 {
	position: relative;
	width: 250px;
	height: 25px;
	padding-bottom: 20px;
	border-bottom: dashed 1px #86bf24;
	margin-bottom: 20px;
	z-index: 50;
}

.enquete .sec05 .comment {
	width: 255px;
	position: relative;
	z-index: 50;
}

.enquete .sec05 .comment p {
	border-bottom: dashed 1px #86bf24;
	padding-bottom: 10px;
	margin-bottom: 20px;
}

.enquete .sec05 .graph {
	position: absolute;
	right: 0;
	top: -420px;
	z-index: 60;
}

.enquete .green {
	color: #86bf24;
}

/*-----[section05 ここまで]-----*/

/*------------------------------
ご入会までの流れ lesson_parent.css
------------------------------*/

/*-----[section01]-----*/

#main.flow section p.copy {
	font-size: 18px;
	font-weight: bold;
	color: #402720;
	letter-spacing: 0.02em;
}

#main.flow p.copy .pink {
	color: #eb6f86;
	font-size: 25px;
	font-weight: bold;
	letter-spacing: 0.05em;
}

#main.flow p.copy .small {
	font-size: 12px;
	margin-top: 5px;
}

.flow .sec01 figure {
	margin: 30px 0 0;
}

/*-----[section01 ここまで]-----*/

/*-----[section02]-----*/

.flow .sec02 h2 {
	position: relative;
}

.flow .sec02 h2 img {
	position: absolute;
	top: 23px;
	left: 200px;
}

.flow .sec02 li {
	margin-bottom: 20px;
	padding-bottom: 25px;
}

.flow .sec02 li div {
	border-radius: 20px;
	padding: 30px;
}

.flow .sec02 h4 {
	margin: 20px 0;
	padding: 16px 0 13px 30px;
	font-size: 18px;
	font-weight: bold;
	color: #402724;
}

/*flow01 必要なものを確認*/

#flow01 {
	background: url(../images/lesson_parent/flow01_mark.png) no-repeat center bottom;
}

#flow01 div {
	border: dashed 1px #86bf24;
}

#flow01 h4 {
	border-top: dashed 1px #86bf24;
	border-bottom: dashed 1px #86bf24;
}

#flow01 figure {
	margin: 20px 0 0;
	text-align: center;
}

/*flow01 必要なものを確認 ここまで*/

/*flow02 無料体験申し込み*/

#flow02 {
	background: url(../images/lesson_parent/flow02_mark.png) no-repeat center bottom;
}

#flow02 div {
	border: dashed 1px #68a4eb;
}

#flow02 h4 {
	border-top: dashed 1px #68a4eb;
	border-bottom: dashed 1px #68a4eb;
}

#flow02 p {
	position: relative;
}

#flow02 span {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	width: 260px;
	height: 35px;
}

#flow02 a.goFTL {
	display: block;
	height: 100%;
	background: url(../images/lesson_parent/flow02.png) no-repeat center #402720;
	border-radius: 40px;
}

#flow02 .point {
	padding: 20px 20px;
	border: none;
}

#flow02 .point h5 {
	background: url(../images/lesson_parent/flow02_point.png) no-repeat;
	margin-bottom: 10px;
	padding: 20px 0 20px 50px;
	font-size: 18px;
	border-bottom: dashed 1px #68a4eb;
}

/*flow02 無料体験申し込み ここまで*/

/*flow03 無料体験を予約しましょう*/

#flow03 {
	background: url(../images/lesson_parent/flow03_mark.png) no-repeat center bottom;
}

#flow03 div {
	border: dashed 1px #c586cd;
	position: relative;
}

#flow03 h4 {
	border-top: dashed 1px #c586cd;
	border-bottom: dashed 1px #c586cd;
}

#flow03 p {
	margin-bottom: 30px;
}

#flow03 p+img {
	position: absolute;
	right: 20px;
	bottom: -15px;
}

#flow03 div .flow03_img {
	width:168px;
	height:438px;
}

/*flow03 無料体験を予約しましょう ここまで*/

/*flow04 さあ、レッスンの体験をしましょう*/

#flow04 {
	background: url(../images/lesson_parent/flow04_mark.png) no-repeat center bottom;
}

#flow04 div {
	border: dashed 1px #f093a4;
	position: relative;
}

/*#flow04 h3 {
	height: auto;
}*/
#flow04 h4 {
	border-top: dashed 1px #f093a4;
	border-bottom: dashed 1px #f093a4;
}

#flow04 p {
	position: relative;
	margin-bottom: 40px;
}

#flow04 p>img {
	display: block;
	position: absolute;
	right: 20px;
	top: -5px;
}

#flow04 div .flow04_img {
	width:340px;
	height:170px;
}

/*flow04 さあ、レッスンの体験をしましょう ここまで*/

/*flow05 ご入会のご検討*/

#flow05 {
	background: url(../images/lesson_parent/flow05_mark.png) no-repeat center bottom;
}

#flow05 div {
	border: dashed 1px #ff9000;
}

#flow05 h4 {
	border-top: dashed 1px #ff9000;
	border-bottom: dashed 1px #ff9000;
}

/*flow05 ご入会 ここまで*/

/*flow06 ご入会*/

#flow06 {
	margin: 0;
	padding: 10px 0 0;
	background: url(../images/lesson_parent/flow06.jpg) no-repeat;
	height: 300px;
}

#flow06 h3 {
	text-align: center;
}

#flow06 h3 img {
	width:210px;
	height:67px;
}

#flow06 p {
	background: url(../images/lesson_parent/flow06_text.png) no-repeat;
	width: 305px;
	height: 115px;
	margin: 30px auto 0;
}

.flow .lesson_bnr,
.niji .lesson_bnr,
.eiken .lesson_bnr {
	width:710px;
	height:140px;
}

@media screen and (max-width:1023px) {
	.flow .sec01 figure img {
		width: 100%;
		height: auto;
	}

	#flow02 span {
		width: 42%;
		height: auto;
	}

	.flow .sec02 h3 img {
		width: 100%;
		height: auto;
	}

	#flow03 p+img {
		position: absolute;
		right: -50px;
		bottom: -15px;
	}

	#flow04 p > img {
		right: -14px;
		top: 65px;
	}

	#flow04 div .flow04_img {
		width: 50%;
		height: auto;
	}

	#flow06 {
		height: auto;
		background-size: 100%;
	}

	#flow06 h3 img {
		width: 25%;
		height: 10%;
	}

	#flow06 p {
		background-size: 75%;
		background-position-x: 33px;
		background-position-y: 24px;
		margin: -5px auto 0;
	}

	.flow .lesson_bnr,
	.niji .lesson_bnr,
	.eiken .lesson_bnr{
		width: 100%;
		height: auto;
	}

	@media screen and (max-width:767px) {
		#main.flow section p.copy {
			font-size: 16px;
			letter-spacing: 0.01em;
		}

		#main.flow p.copy .pink {
			font-size: 20px;
		}

		.flow .sec02 h2 img {
			left: 134px;
		}


		.flow .sec02 h4 {
			padding: 15px 0 15px 10px;
			font-size: 14px;
		}

		.flow .sec02 li div {
			border-radius: 20px;
			padding: 10px;
		}

		#flow02 span {
			width: 100%;
			height: auto;
		}

		#flow02 p {
			position: relative;
			height: 96px;
		}

		#flow02 a.goFTL {
			display: block;
			height: 100%;
			width: 100%;
			border-radius: 40px;
		}

		#flow03 p {
			font-size: 9px !important;
			width: 100px;
		}

		#flow03 div .flow03_img {
			object-position: 5px 0px;
			width: 118px;
			height: 388px;
		}

		#flow03 p+img {
			position: absolute;
			right: 14px;
			bottom: 8px;
		}

		#flow04 p > img {
			right: 5px;
			top: 121px;
		}

		#flow06 p {
			background-size: 40%;
			background-position-x: 65px;
			background-position-y: 10px;
			margin: -5px auto 0;
		}
	}
}

/*flow05 ご入会 ここまで*/

/*-----[section02 ここまで]-----*/

/*------------------------------
メディア掲載 media.css &
新着情報 news.css
------------------------------*/

.media section p.sprite {
	background: url(../images/media/img01.png) no-repeat;
	width: 515px;
	height: 25px;
}

#media dt,
#media dd,
.news dt,
.news dd {
	line-height: 1.7;
}

#media dt,
.news dt {
	width: 200px;
	height: 100%;
	float: left;
	clear: both;
	padding: 20px 0;
	background-repeat: no-repeat;
	background-position: 125px 15px;
}

#media dd,
.news dd {
	padding: 20px 0 20px 200px;
	border-bottom: dashed 1px #402720;
	letter-spacing: 0.02em;
}

#media dd span,
.news dd span {
	display: block;
}

#media dd .link,
.news dd .link {
	font-size: 13px;
	padding: 0 17px 0 0;
	background-repeat: no-repeat;
	background-position: right center;
	color: #eb6f86;
}

#media dd .fleft,
.news dd .fleft {
	margin-right: 20px;
}

#media dd .fright,
.news dd .fright {
	margin-left: 20px;
}

#media dd a:hover,
.news dd a:hover {
	text-decoration: underline;
}

#media .web+dd .link {
	background-image: url(../images/media/mark01.png);
	color: #1377b6;
}

#media .newspaper+dd .link {
	background-image: url(../images/media/mark02.png);
	color: #86bf24;
}

#media .magazine+dd .link {
	background-image: url(../images/media/mark03.png);
	color: #eb6f86;
}

#media .tv+dd .link {
	background-image: url(../images/media/mark04.png);
	color: #cb8fe7;
}

#media .web {
	background-image: url(../images/media/media01.png);
}

#media .newspaper {
	background-image: url(../images/media/media02.png);
}

#media .magazine {
	background-image: url(../images/media/media03.png);
}

#media .tv {
	background-image: url(../images/media/media04.png);
}

.news .new {
	background: url(../images/news/icon_new.gif) no-repeat 125px 24px;
}

.news {
	display: none;
}

.news.current {
	display: block;
}

#news {
	font-size: 13px;
}

#news ul {
	background: url(../images/index/news.png) no-repeat left bottom;
	height: 31px;
	padding-left: 72px;
	overflow: hidden;
	zoom: 1;
}

#news li {
	float: left;
	margin-left: 8px;
	text-align: center;
}

#news li a {
	display: block;
	width: 116px;
	color: #fff;
	background: #7a6962;
	border: solid 1px #402720;
	padding: 8px 0 0;
	height: 18px;
	position: relative;
	top: 3px;
}

#news li a:hover,
#news li.current a {
	background: #fff;
	color: #502009;
	top: 0px;
	padding: 10px 0 0;
	height: 20px;
	font-weight: bold;
}

/*------------------------------
料金プラン payment.css
------------------------------*/

#main.payment .small {
	font-size: 0.6rem;
	line-height: 0.7rem;
	display: inline;
}

.payment .sec02 {
	background-color: #ffffff;
}

.payment .sec02 img {
	width: 80%;
	max-width: 700px;
}

.payment ul.priceTable {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	width: 100%;
	justify-content: space-between;
}

.payment ul.priceTable li {
	width: calc(100% / 3 - 12px);
	display: flex;
	display: -webkit-flex;
	flex-direction: column;
	border: 3px solid #FFEECD;
	margin-bottom: 12px;
	justify-content: flex-start;
	align-items: center;
	padding-bottom: 10px;
	border-radius: 6px;
	background-color: #fff;
}

.payment ul.priceTable li.switch {
	border: none;
	background-color: rgba(255, 255, 255, 0);
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 0;
}

.payment ul.priceTable li.switch p {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
	height: 2.0rem;
	line-height: 2.0rem;
	color: #FFF;
	background-color: #88CD1B;
	padding: 5px 8px;
	border-radius: 4px;
}

.payment ul.priceTable li.switch p:after {
	font-family: 'FontAwesome';
	font-weight: normal;
	font-size: 1.4rem;
	content: '\f055';
	padding-left: 3px;
}

.payment ul.priceTable li.switch.active p:after {
	content: '\f056';
}

.payment ul.priceTable li.switch:hover {
	-webkit-filter: brightness(120%);
}

.payment ul.priceTable li dl {
	display: flex;
	display: -webkit-flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
}

.payment ul.priceTable li dt {
	width: 100%;
	font-size: 1.1rem;
	background-color: #FFEECD;
	/* color: #fff; */
	padding: 6px;
	text-align: center;
	position: relative;
}

.payment ul.priceTable li dt:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-top-color: #FFEECD;
	border-width: 10px;
	margin-left: -10px;
}

.payment ul.priceTable li dd.planPrice {
	font-size: 0.9rem;
	margin: 15px auto 5px;
	text-align: center;
}

.payment ul.priceTable li dd.planPrice span {
	font-size: 1.4rem;
	font-weight: bold;
	padding: 0 5px;
}

.payment ul.priceTable li dd.planNumber {
	font-size: 0.7rem;
	background-color: #FFEECD;
	border-radius: 20px;
	padding: 5px 15px;
	margin: 5px 0;
}

.payment ul.priceTable .ticket {
	display: none;
	margin: 20px auto;
	width: 100%;
}

.payment ul.compare {
	display: flex;
	display: -webkit-flex;
	flex-direction: row;
	justify-content: space-around;
	align-items: center;
	margin: 10px 0 20px;
	padding: 0 2%;
}

.payment ul.compare li {
	width: 100%;
}

.payment ul.compare li.arrow {
	position: relative;
	width: 3.0rem;
	content: '';
	padding: 0 20px;
}

.payment ul.compare li.arrow:after {
	font-family: 'FontAwesome';
	font-size: 3.0rem;
	content: '\f0da';
}

.payment ul.compare dl {
	display: block;
	width: 100%;
	border-radius: 3px;
	min-height: 7.0rem;
}

.payment ul.compare dt,
.payment ul.compare dd {
	font-size: 0.8rem;
	padding: 8px;
	text-align: center;
}

.compare .grFrame {
	border: 3px solid #ececec;
}

.payment ul.compare .grFrame dt {
	background-color: #ececec;
}

.payment ul.compare .grFrame .comparePrice {
	color: #666;
	font-size: 1.2rem;
	line-height: 3.0rem;
}

.payment ul.compare .orFrame {
	border: 3px solid #FFEECD;
}

.payment ul.compare .orFrame dt {
	background-color: #FFEECD;
}

.payment ul.compare .orFrame .comparePrice {
	color: #F58200;
	font-size: 1.8rem;
	line-height: 3.0rem;
	/* font-weight: bold; */
}

/*------------------------------
チケットについて
------------------------------*/

.payment ul.ticketTable {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	width: 100%;
	justify-content: space-between;
}

.payment ul.ticketTable li {
	width: calc(100% / 2 - 12px);
	display: flex;
	display: -webkit-flex;
	flex-direction: column;
	border: 3px solid #FFEECD;
	margin-bottom: 12px;
	justify-content: flex-start;
	align-items: center;
	padding-bottom: 10px;
	border-radius: 6px;
	background-color: #fff;
}

.payment ul.ticketTable li.full {
	width: 100%;
}

.payment ul.ticketTable li dl {
	display: flex;
	display: -webkit-flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
}

.payment ul.ticketTable li dt {
	width: 100%;
	font-size: 1.1rem;
	background-color: #FFEECD;
	/* color: #fff; */
	padding: 6px;
	text-align: center;
	position: relative;
	margin-bottom: 15px;
}

.payment ul.ticketTable li dt:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-top-color: #FFEECD;
	border-width: 10px;
	margin-left: -10px;
}

.payment ul.ticketTable li dd {
	margin: 5px 0 5px;
	padding: 0 5px;
	font-size: 0.8rem;
	line-height: 1.4rem;
	text-align: left;
	border-bottom: 1px dotted #ccc;
	display: flex;
	display: -webkit-flex;
	justify-content: flex-start;
	align-items: flex-end;
}

.payment ul.ticketTable li dd .ticketNumber {
	min-width: 2.5rem;
	text-align: left;
}

.payment ul.ticketTable li dd .ticketPrice {
	margin: 0 5px;
	display: inline-block;
	min-width: 7.0rem;
	text-align: right;
}

.payment ul.ticketTable li dd .ticketPrice span {
	font-size: 1.2rem;
	font-weight: bold;
}

.payment ul.ticketTable li dd .small {
	line-height: 1.2rem !important;
	min-width: 4.5rem;
	text-align: left;
}

.payment ul.ticketTable li.full ul {
	display: flex;
	display: -webkit-flex;
	flex-direction: row;
	justify-content: center;
	align-items: flex-start;
	width: 100%;
}

.payment ul.ticketTable li.full li {
	display: flex;
	display: -webkit-flex;
	flex-direction: column;
	width: 50%;
	border: none;
	margin-bottom: 0;
	padding-bottom: 0;
	text-align: center;
}

.payment .tab li {
	border-radius: 3px;
	padding: 8px 8px 10px;
	width: 25%;
	text-align: center;
	max-width: 150px;
}

.payment .tab li.select {
	background: #FFEECD;
}

.payment .tab li div img {
	display: block;
	width: 80%;
	margin: 0 auto;
}

.payment .tabContent .show {
	background: #fff;
	padding: 8px;
	border: 4px solid #FFEECD;
	border-radius: 6px;
	margin-top: -4px;
}

.payment .sec02 .ticketRule {
	margin-bottom: 20px;
	width: 100%;
}

.payment .sec02 .ticketRule li {
	font-size: 0.8rem;
	line-height: 1.0rem;
	margin-left: calc(0.8rem + 5px);
	text-indent: calc(-0.8rem - 5px);
	padding-bottom: 10px;
}

.payment .sec02 .ticketRule li:before {
	font-family: 'FontAwesome';
	content: '\f046';
	display: inline-block;
	font-size: 0.8rem;
	width: 0.8rem;
	padding-right: 5px;
	text-indent: 0;
}

/*------------------------------
初めての方へ ripple.css
------------------------------*/

.ripple section p.sprite {
	background: url(../images/ripple/img01.png) no-repeat;
	width: 470px;
	height: 60px;
}

.ripple section .sprite {
	font-size: 17px;
	font-weight: bold;
	text-indent: 0px;
	letter-spacing: 0.05em;
	line-height: 2em;
}

.ripple section .sprite span{
	font-size: 25px;
}

#howto .fright {
	display: block;
	margin: 0 0 30px 20px;
	width: 280px;
	height: 225px;
}

#howto .fleft {
	display: block;
	margin: -50px 20px 0 0;
	width:280px;
	height:225px;
}

.ripple #sub_ttl01 {
	margin: 40px 0 30px;
}

.ripple #sub_ttl01 img {
	width: 710px;
	height: 30px;
}

.ripple #sub_ttl02 {
	margin: 40px 0 30px;
}

.ripple #sub_ttl02 img {
	width:710px;
	height:30px;
}

.ripple #sub_ttl03 {
	margin: 60px 0 40px;
}

.ripple #sub_ttl03 img {
	width: 710px;
	height: 30px;
}

#main.ripple h5 {
	border-top: dashed 1px #402720;
	border-bottom: dashed 1px #402720;
	margin: 0 0 20px;
	padding: 16px 0 12px;
	text-align: center;
	font-size: 17px;
	font-weight: bold;
	letter-spacing: 0.05em;
}

#main.ripple h5 img {
	width: 84px;
	height: 84px;
}

.ripple ul.sec01 {
	margin: 30px 0 0;
}

.ripple ul.sec01 li {
	float: right;
	width: 310px;
	height: 280px;
	padding: 15px;
	background: url(../images/ripple/bg.png);
	border-radius: 5px;
	margin-bottom: 35px;
}

.ripple ul.sec01 li:first-child {
	float: left;
	margin-right: 30px;
}



.ripple h6 {
	background: #fff;
	font-size: 15px;
	font-weight: bold;
	letter-spacing: 0.07em;
	border-radius: 30px;
	margin: 0 0 15px;
	padding: 8px 0 7px;
	text-align: center;
	color: #402720;
}



.ripple ul.sec01 div {
	background: #fff;
	border-radius: 3px;
	padding: 15px 15px 5px;
	height: 215px;
	position: relative;
}

#main.ripple ul.sec01 p {
	font-size: 13px;
	line-height: 1.7;
	margin: 0 0 10px;
}

.ripple ul.sec01 img {
	position: absolute;
	bottom: -15px;
	right: -15px;
	width: 227px;
	height: 150px;
}

@media screen and (max-width:1023px) {
	.ripple section .sprite {
		font-size: 10px;
	}

	.ripple section .sprite span{
		font-size: 18px;
	}

	#howto .fright {
		display: block;
		margin: 0 0 30px 20px;
		width: 50%;
		height: 50%;
	}
	#howto .fleft {
		display: block;
		margin: 0px 20px 0 0;
		width:50%;
		height:50%;
	}

	.ripple #sub_ttl01 {
		margin: 10px 0 10px;
	}
	.ripple #sub_ttl01 img {
		width: 100%;
		height: auto;
	}

	.ripple #sub_ttl02 {
		margin: 10px 0 10px;
	}

	.ripple #sub_ttl02 img {
		width:100%;
		height:auto;
	}

	.ripple #sub_ttl03 {
		margin: 10px 0 10px;
	}

	.ripple #sub_ttl03 img {
		width: 100%;
		height: auto;
	}

	.ripple ul.sec01 li {
		float: none;
		width: 100%;
		height: 280px;
		padding: 10px;
		background: url(../images/ripple/bg.png);
		border-radius: 5px;
		margin-bottom: 35px;
	}

	.ripple ul.sec01 li:first-child {
		float: none;
		margin-right: 30px;
	}

	#main.ripple h5 {
		font-size: 12px;
	}
	#main.ripple h5 img {
		width: 25px;
		height: 25px;
	}

	.ripple h6 {
		font-size: 13px;
	}

	#main.ripple ul.sec01 p {
		font-size: 10px;
	}

	.ripple ul.sec01 img {
		position: absolute;
		bottom: -10px;
		right: -10px;
		width: 207px;
		height: 130px;
	}
}

.ripple #sub_ttl03+p {
	border-top: dashed 1px #402720;
	border-bottom: dashed 1px #402720;
	padding: 12px 0 10px;
}

.ripple #sub_ttl03+p+p {
	position: relative;
	margin: -90px 0 -60px 475px;
}

.ripple #sub_ttl04 {
	margin: 90px 0 30px;
	;
}

.ripple #sub_ttl04+p img {
	float: right;
	margin: 0px 30px 0 0;
}

#main.ripple #sub_ttl04+p+h5 {
	margin: 50px 0 0;
	padding-left: 95px;
	position: relative;
}

.ripple #sub_ttl04+p+h5 img {
	position: absolute;
	top: -20px;
	left: 20px;
}

.ripple ul.sec04 {
	overflow: hidden;
	zoom: 1;
	margin: 40px 0 0;
}

.ripple ul.sec04 li {
	float: left;
	width: 176px;
	height: 133px;
	padding: 10px 0 0;
	border-right: solid 1px #d6cec4;
}

.ripple ul.sec04 li:first-child {
	border-left: solid 1px #d6cec4;
}

.ripple ul.sec04 #list01 {
	background: url(../images/ripple/img06.png) no-repeat center center;
}

.ripple ul.sec04 #list02 {
	background: url(../images/ripple/img07.png) no-repeat center center;
}

.ripple ul.sec04 #list03 {
	background: url(../images/ripple/img08.png) no-repeat center center;
}

.ripple ul.sec04 #list04 {
	background: url(../images/ripple/img09.png) no-repeat center center;
}

/*------------------------------
先生紹介 teacher.css
------------------------------*/

.teacher section p.sprite {
	background: url(../images/teacher/img01.png) no-repeat;
	width: 545px;
	height: 60px;
	margin-bottom: 20px;
}

#main.teacher section #accordion .copy {
	margin-bottom: 0;
}

#main.teacher section #accordion .innerCont {
	margin-top: 0.6rem;
}

#main.teacher #accordion .switch:after {
	font-family: 'FontAwesome';
	content: '\f150';
	padding-left: 10px;
}

#main.teacher #accordion .switch.active:after {
	font-family: 'FontAwesome';
	content: '\f151';
	padding-left: 10px;
}

.teacher #btn01 a,
.teacher #btn01 span {
	display: block;
	width: 100%;
	height: 40px;
}

.teacher #btn01 a {
	background: url(../images/teacher/btn01_on.png) no-repeat;
}

.teacher #btn01 span {
	background: url(../images/teacher/btn01.png) no-repeat;
}

.teacher #btn01 a:hover span {
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	zoom: 1;
}

/*  アコーディオン */

.accordion-box {
	position: relative;
	width: 710px;
}

.accordion-box label {
	height: 180px;
	/* グラデーションの高さ */
	cursor: pointer;
	text-align: center;
	font-size: 20px;
	position: absolute;
	bottom: 0;
	width: 100%;
	Z-index: 9;
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
	background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
	background: -ms-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
}

.accordion-box input:checked+label {
	background: inherit;
	/* 開いた時には背景グラデーションを消す */
}

.accordion-box label:after {
	content: "続きを見る";
	width: 200px;
	line-height: 40px;
	color: #fff;
	background-color: #EB6F86;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	position: absolute;
	bottom: 20px;
	left: 50%;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	Z-index: 10;
}

.accordion-box label:before {
	content: "▼";
	font-size: 22px;
	width: 24px;
	height: 24px;
	line-height: 24px;
	color: #EB6F86;
	background-color: #fff;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	border-radius: 100%;
	position: absolute;
	bottom: 28px;
	left: 50%;
	-webkit-transform: translate(62px, 0);
	transform: translate(62px, 0);
	z-index: 100;
}

.accordion-box input {
	display: none;
}

.accordion-box .accordion-container {
	overflow: hidden;
	height: 220px;
	/* 開く前に見えている部分の高さ */
	-webkit-transition: all 0.1s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.accordion-box input:checked+label {
	display: none;
	/* 閉じるボタンは要らないとき */
}

.accordion-box input:checked+label:after {
	content: "閉じる";
}

.accordion-box input:checked+label:before {
	content: "▲";
	line-height: 24px;
}

.accordion-box input:checked~.accordion-container {
	height: auto;
	/*    padding-bottom: 80px; /* 閉じるボタンのbottomからの位置 */
	-webkit-transition: all 0.1s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.teacher .sec02 {
	/* background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.03) 1%, rgba(255, 255, 255, 1) 24%, rgba(255, 255, 255, 1) 100%);
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.03) 1%, rgba(255, 255, 255, 1) 24%, rgba(255, 255, 255, 1) 100%);
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.03) 1%, rgba(255, 255, 255, 1) 24%, rgba(255, 255, 255, 1) 100%); */
	background: #fff;
}

.teacher #about {
	margin-top: 20px;
	position: relative;
	width: 90%;
	margin: 0 auto;
}

.teacher .repeat {
	display: none;
}

.teacher #about01,
.teacher #about02 {
	width: calc(100% - 230px);
	position: absolute;
	right: 0;
}

.teacher #about01 {
	background: url(../images/teacher/box01.png) no-repeat right top;
	background-size: 100% 92%;
	height: 520px;
	padding: 25px 20px 25px 6rem;
}

.teacher #about02 {
	top: 528px;
	background: url(../images/teacher/box02.png) no-repeat left top;
	background-size: 100% 92%;
	height: 448px;
	padding: 25px 20px 25px 6rem;
}

.teacher #about h5 {
	border-top: dashed 1px #1377b6;
	border-bottom: dashed 1px #1377b6;
	margin-bottom: 10px;
	padding: 12px 0 10px 10px;
	font-size: 17px;
	font-weight: bold;
	line-height: 1.7;
	color: #402720;
}

.teacher #about h5+p {
	margin-bottom: 20px;
}

.teacher .blue {
	color: #1377b6;
}

.teacher .sec03 ul {
	display: flex;
	display: -webkit-flex;
}

.teacher .sec03 ul li {
	display: flex;
	display: -webkit-flex;
	flex-flow: column;
	width: calc(100%/3);
	padding: 0.5rem;
	border: 1px solid #ececec;
	margin: 0 10px;
	box-shadow: 0px 1px 1px 1px rgba(236, 236, 236, 0.5);
}

.teacher .sec03 ul li img {
	width: 80%;
	max-width: 220px;
	margin: 0 auto;
}

#searchbox {
	background: #e8e0d6;
	padding: 20px;
	border-radius: 5px;
}

#searchbox>div {
	margin-top: 20px;
	background: #fff;
	padding: 20px;
	border-radius: 3px;
}

#searchform {
	font-size: 15px;
	width: 100%;
	color: #402720;
	margin-bottom: 20px;
}

#searchform th {
	width: 152px;
	background: url(../images/teacher/mark.png) no-repeat 4px center;
	text-align: left;
	padding: 20px;
	vertical-align: middle;
	border-bottom: dashed 1px #eb6f86;
}

#searchform .bnone {
	border-bottom: none;
	padding-bottom: 0;
}

#searchform td {
	padding: 20px;
	border-bottom: dashed 1px #eb6f86;
}

#searchform select {
	background: #fff;
	border: 1px solid #b2b2b2;
	border-radius: 3px;
	color: #402720;
	font-size: 14px;
	height: 30px;
	line-height: 30px;
	text-align: left;
	vertical-align: middle;
	padding: 5px;
}

#searchform input[type=checkbox] {
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	zoom: 1;
	position: absolute;
}

#searchform input[type=checkbox]+label {
	position: relative;
	padding: 0 0 0 45px;
	cursor: pointer;
	display: block;
}

#searchform input[type=checkbox]+label:before {
	display: block;
	content: " ";
	width: 35px;
	height: 21px;
	background: url(../images/teacher/check_off.png) no-repeat;
	position: absolute;
	top: -2px;
	left: 0;
}

#searchform input[type=checkbox]+label.checked:before {
	background: url(../images/teacher/check_on.png) no-repeat;
}

#searchform input[type=text] {
	width: auto;
}

#searchform #name {
	margin: 0 0 0 20px;
	width: 330px;
	padding: 5px;
	font-size: 14px;
}

#searchform select[name="sex"] {
	margin: 0 0 0 15px;
}

#searchbox #submit {
	text-align: center;
}

#searchbox #submit input {
	font-size: 20px;
	margin: 0;
	cursor: pointer;
	border: none;
	background: #eb6f86;
	color: #fff;
	font-weight: bold;
	padding: 15px 20px;
	border-radius: 3px;
	-webkit-transition: all 200ms linear;
	-moz-transition: all 200ms linear;
	-o-transition: all 200ms linear;
	-ms-transition: all 200ms linear;
	transition: all 200ms linear;
}

#searchbox #submit input:hover {
	background: #c8465e;
}

.page_navi {
	margin: 40px 0;
	text-align: center;
	overflow: hidden;
	zoom: 1;
}

.page_navi ul {
	overflow: hidden;
	zoom: 1;
	text-align: center;
}

.page_navi li {
	display: inline;
	/display: block;
	/* IE対策 */
	/zoom: 1;
	/* IE対策 */
	color: #402720;
	margin-right: 2px;
}

.page_navi strong {
	color: #402720;
	margin-right: 2px;
}

.page_navi a,
.page_navi span {
	display: inline-block;
	color: #402720;
	padding: 5px 8px;
	border: solid 1px #fff;
}

.page_navi span {
	background-color: #e8e0d6;
}

.page_navi a:hover {
	background-color: #e8e0d6;
}

.teacher_list {
	margin-bottom: 40px;
}

.teacher_list.on {
	margin-bottom: 0px;
}

.teacher_list tr th:first-child,
.teacher_list tr td:first-child {
	width: 177px;
}

.teacher_list th,
.teacher_list td {
	border: solid 1px #402720;
	padding: 20px 0 10px;
	text-align: center;
	width: 176px;
}

.teacher_list th {
	text-align: center;
	font-size: 14px;
	font-weight: bold;
}

.teacher_list a {
	display: block;
	color: #402720;
	width: 100%;
	height: 100%;
}

.teacher_list th img {
	display: block;
	margin: 0 auto 5px;
	-webkit-transition: all 200ms linear;
	-moz-transition: all 200ms linear;
	-o-transition: all 200ms linear;
	-ms-transition: all 200ms linear;
	transition: all 200ms linear;
}

.teacher_list th a:hover img {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
	zoom: 1;
}

.teacher_list th span {
	display: block;
	width: 146px;
	height: 30px;
	margin: 10px auto;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background: url(../images/teacher/movie.png) no-repeat;
}

.teacher_list td span {
	display: block;
	line-height: 1.5;
	margin-bottom: 8px;
	font-size: 13px;
	font-weight: bold;
}

.teacher_list div {
	margin-bottom: 20px;
	padding: 0px 10px 10px 10px;
	height: 150px;
	overflow-y: auto;
	text-align: left;
}

#content .teacher_list div p {
	font-size: 13px;
	margin-bottom: 10px;
}

.tech_btn a {
	display: block;
	width: 137px;
	height: 30px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	margin: 0 auto 10px;
}

.tech_btn01 a {
	background: url(../images/teacher/btn02.png) no-repeat;
}

.tech_btn02 a {
	background: url(../images/teacher/btn03.png) no-repeat;
}

.tech_btn03 a {
	background: url(../images/teacher/btn04.png) no-repeat;
}

.day_time {
	margin: -1px 0 40px -80px;
	-webkit-transition: all 200ms linear;
	-moz-transition: all 200ms linear;
	-o-transition: all 200ms linear;
	-ms-transition: all 200ms linear;
	transition: all 200ms linear;
	font-size: 13px;
}

.dnone {
	display: none;
}

.day_time th,
.day_time td {
	border: solid 1px #402720;
}

.day_time th {
	width: 80px;
	height: 31px;
	background: #fff;
	vertical-align: middle;
}

.day_time th+td {
	width: 177px;
}

.day_time td {
	width: 176px;
	text-align: center;
	padding: 6px 0;
}

.day_time span {
	display: block;
	margin: 0 20px;
	padding: 3px 0 3px;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	text-shadow: 0 1px 0px rgba(0, 0, 0, 0.15);
	letter-spacing: 0.1em;
	border-radius: 3px;
}

.day_time .open {
	background: #68a4eb;
}

.day_time .close {
	background: #eb6f86;
}

.day_time .open_close {
	background: #aaa;
}

.day_time a:hover span {
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
	background: #1377b6;
}

/*------------------------------
お問合せ inquiry.css
------------------------------*/

.form01 {
	width: 100%;
}

.form01 th,
.form01 td {
	border: solid 1px #402720;
	padding: 15px;
}

.form01 th {
	width: 25%;
	text-align: left;
	vertical-align: middle;
	background: #f0ebe5;
}

.form01 span {
	color: #ee4363;
	font-weight: bold;
}

.form01 input {
	width: 97%;
	padding: 3px 6px;
}

.form01 textarea {
	width: 97%;
	padding: 6px;
	resize: vertical;
}

.form01 .name input {
	width: 40%;
}

.form_btn input {
	font-size: 20px;
	margin: 0 10px 0 0;
	cursor: pointer;
	border: none;
	background: #eb6f86;
	color: #fff;
	font-weight: bold;
	padding: 10px 15px;
	border-radius: 3px;
	-webkit-transition: all 200ms linear;
	-moz-transition: all 200ms linear;
	-o-transition: all 200ms linear;
	-ms-transition: all 200ms linear;
	transition: all 200ms linear;
}

.form_btn input:hover {
	background: #c8465e;
}

.inquiry .sec02 a:hover {
	text-decoration: underline;
}

.inq_nav {
	margin: 30px 0 20px;
}

.inq_nav li {
	float: left;
	margin-left: 13px;
}

.inq_nav li:first-child {
	margin: 0;
}

.inq_nav a {
	display: block;
	width: 228px;
	height: 70px;
}

.inq_nav01 a {
	background: url(../images/inquiry/btn01.png) no-repeat;
}

.inq_nav02 a {
	background: url(../images/inquiry/btn02.png) no-repeat;
}

.inq_nav03 a {
	background: url(../images/inquiry/btn03.png) no-repeat;
}

/*------------------------------
子育てママへのインタビュー interview.css
------------------------------*/

#inw_more a {
	background: url(../images/interview/more.png) no-repeat 17px center #ff95b3;
	display: block;
	width: 185px;
	height: 20px;
	line-height: 20px;
	font-size: 12px;
	margin-bottom: 20px;
	padding-left: 35px;
	color: #fff;
	border-radius: 20px;
}

#inw_more a:hover {
	background-color: #eb6f86;
}

#main #inw_main_ttl {
	background: url(../images/interview/file_num.png) no-repeat right bottom;
	height: 80px;
	width: 455px;
	padding: 30px 0 0;
	float: right;
	line-height: normal;
	margin-bottom: 25px;
}

#inw_data {
	float: right;
	width: 440px;
	border-top: dashed 1px #8cc63f;
	border-bottom: dashed 1px #8cc63f;
	padding: 15px;
}

.inw_cont {
	position: relative;
}

.inw_cont.mb60 {
	margin-bottom: 60px;
}

.inw_cont h4 {
	background: url(../images/interview/ttl_bg.png) no-repeat;
	line-height: 55px;
	margin-bottom: 20px;
	padding-left: 60px;
	font-size: 20px;
	font-weight: bold;
	color: #402720;
}

.inw_cont h5 {
	color: #8cc63f;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.6;
	margin-bottom: 8px;
}

.inw_list {
	color: #68a4eb;
	margin-bottom: 3px;
	padding-left: 20px;
	line-height: 1.5;
	background: url(../images/interview/list.png) no-repeat;
}

.inw_list01 {
	background-position: 0 3px;
}

.inw_list02 {
	background-position: 0 -40px;
}

.inw_list03 {
	background-position: 0 -83px;
}

.inw_sche,
.inw_lesson {
	border: dashed 1px #402720;
	border-radius: 10px;
	margin-top: 20px;
	padding: 20px;
}

#main .inw_sche p {
	color: #ee4363;
	font-size: 11px;
}

.wid470 {
	width: 460px;
}

.wid560 {
	width: 560px;
}

#photo02 {
	position: absolute;
	right: 0;
	top: -33px;
}

#photo03 {
	margin-right: 30px;
}

#photo03+div {
	width: 545px;
}

#photo04 {
	position: absolute;
	right: 0;
	top: 380px;
}

#photo05,
#photo06 {
	position: absolute;
	right: 0;
	top: -25px;
}

#photo07 {
	position: absolute;
	right: 0;
	top: 0;
}

#inw_aside {
	background: url(../images/interview/bg.png);
	margin: 30px 0;
	padding: 10px 7px;
	border-radius: 3px;
}

#inw_aside div {
	margin-top: 10px;
	padding: 25px;
	background: url(../images/interview/inner_bg.png);
}

#inw_aside .small {
	font-size: 12px;
	line-height: 1.8;
}

#inw_aside .ttl {
	color: #ff95b3;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.6;
	margin-bottom: 8px;
}

/*------------------------------
営業日・講師欠勤カレンダー login.css
------------------------------*/

.attencance_cal {
	width: 100%;
	table-layout: fixed;
	margin-bottom: 50px;
}

.attencance_cal th,
.attencance_cal td {
	border: solid 2px #402720;
	padding: 5px;
	font-size: 13px;
	font-weight: bold;
}

.attencance_cal th {
	background: #fffbe5;
}

.attencance_cal td {
	border-top: none;
}

.attencance_cal .th_sunday {
	background-color: #ffd2df;
}

.attencance_cal .th_satday {
	background-color: #b3d1f5;
}

.attencance_cal .at_cal_date {
	text-align: center;
	border-top: solid 2px #402720;
	border-bottom: dotted 1px #402720;
}

.attencance_cal .at_cal_comment {
	line-height: 1.5;
	font-size: 12px;
	font-weight: normal;
}

/*------------------------------
よくある質問 faq.css
------------------------------*/

#main .faq_guide {
	margin-top: -20px;
	font-size: 12px;
}

#faq_case {
	overflow: hidden;
}

#faq_list,
#faq_sub_list {
	display: flex;
	display: -webkit-flex;
	min-width: 650px;
	max-width: 1024px;
	margin: 0 auto;
}

#faq_list li,
#faq_sub_list ul {
	width: calc(100% / 3);
	padding: 0 20px;
}

#faq_list h3 {
	font-size: 0.9rem;
	padding-bottom: 5px;
	font-weight: bold;
}

.faq_case01 h3 {
	color: #8cc63f;
	border-bottom: solid 2px #8cc63f;
}

.faq_case02 h3 {
	color: #68a4eb;
	border-bottom: solid 2px #68a4eb;
}

.faq_case03 h3 {
	color: #ff95b3;
	border-bottom: solid 2px #ff95b3;
}

#faq_list h3:before {
	font-family: 'FontAwesome';
	font-weight: normal;
	font-size: 1.0rem;
}

.faq_case01 h3:before {
	content: '\f132';
}

.faq_case02 h3:before {
	content: '\f234';
}

.faq_case03 h3:before {
	content: '\f0c0';
}

#faq_sub_list ul {
	width: 100%;
	margin-top: 6px;
	min-width: 0;
}

#faq_sub_list ul>li {
	width: 100%;
	font-size: 0.7rem;
	margin: 6px 0;
	padding: 0 10px 6px;
}

.faq_case01 li {
	border-bottom: dashed 1px #8cc63f;
}

.faq_case02 li {
	border-bottom: dashed 1px #68a4eb;
}

.faq_case03 li {
	border-bottom: dashed 1px #ff95b3;
}

#faq_case a {
	display: block;
	color: #402720;
}

#faq_case a:hover {
	padding-left: 10px;
	font-weight: bold;
}

/*------------------------------
SHOP shop.css
------------------------------*/

.shop_list {
    clear: both;
    width: 100%;
    height: auto;
    text-align: left;
    margin: 10px 0px 30px;
    line-height: 25px;
}

.shop_list td {
	display: table-cell;
	padding-top: 25px;
	text-align: center;
	font-size: 13px;
}

.shop_list iframe {
	margin-top: 5px;
}

#main.shop h4 span {
	color: #c383c4;
}

/*------------------------------
NEWS nw.css
------------------------------*/

/*新着情報Nav*/

#news_list {
	letter-spacing: -0.4em;
	border-bottom: solid 1px #402720;
	text-align: center;
	box-sizing: border-box;
	margin-bottom: 40px;
}

#news_list li {
	display: inline-block;
	width: 165px;
	margin: 0 5px;
	letter-spacing: normal;
}
@media screen and (max-width: 480px) {
	#news_list li {
		width: 95px;
		font-size: 12px;
	}
}

#news_list a {
	display: block;
	width: 100%;
	border: solid 1px #402720;
	border-bottom: none;
	padding: 10px;
	position: relative;
	border-bottom: solid 1px #402720;
	box-sizing: border-box;
	height: 35px;
	bottom: -1px;
	background: #7a6962;
	color: #fff;
	cursor: pointer;
	-webkit-transition: all 200ms linear;
	-moz-transition: all 200ms linear;
	-o-transition: all 200ms linear;
	-ms-transition: all 200ms linear;
	transition: all 200ms linear;
}

#news_list a:hover,
#news_list .current {
	background: #fff;
	color: #402720;
	font-weight: bold;
	border-bottom: solid 1px #fff;
	height: 40px;
	padding: 15px 10px 10px;
}

#main.nw #page1 .title {
	margin-bottom: 15px;
}

#main.nw dt,
#main.nw dd {
	line-height: 1.7;
}

#main.nw dt {
	width: 140px;
	height: 100%;
	float: left;
	clear: both;
	padding: 15px 0 15px 80px;
}

#main.nw .news_date_new dt {
	background-image: url(../../../user/common/images/renewal/top/icon_new.gif);
	background-repeat: no-repeat;
	background-position: left 19px;
}

#main.nw dd {
	padding: 15px 0 15px 220px;
	border-bottom: dashed 1px #402720;
	letter-spacing: 0.02em;
}

#main.nw dd span {
	display: block;
}

#main.nw dd a {
	font-size: 13px;
	padding: 0 17px 0 0;
	background-repeat: no-repeat;
	background-position: right center;
	color: #eb6f86 !important;
}

#main.nw dd a:hover {
	text-decoration: underline;
}

@media screen and (max-width:480px) {
    #main.nw dd {
        clear: both;
        padding: 0 0 15px 80px;
        border-bottom: dashed 1px #402720;
        letter-spacing: 0.02em;
    }
    #main.nw dd a {
        padding: 0;
    }
    .sp_hidden {
        display: none;
    }
}

#news_cont section {
	display: none;
}

#news_cont #page1 {
	display: block;
}

#news_cont h4 {
	font-size: 18px;
	font-weight: bold;
	color: #402720;
	margin: 30px 0 25px;
	line-height: 1.6;
	padding: 10px 10px 10px 15px;
	border-left: solid 4px #402720;
	border-bottom: dashed 1px #402720;
}

#news_cont h5 {
	font-weight: bold;
	line-height: 1.6;
	color: #402720;
}

#news_cont p+p {
	margin-top: 15px;
}

#news_cont a {
	text-decoration: underline;
}

#news_cont a:hover {
	text-decoration: none;
}

#news_cont hr {
	border-top: #fff;
}

#news_cont .small {
	font-size: 12px;
}

/*------------------------------
404NOTFOUND error.css
------------------------------*/

#error_404 {
	border-top: dashed 1px #4f86ba;
	border-bottom: dashed 1px #4f86ba;
	padding: 35px 0;
	margin-bottom: 30px;
	text-align: center;
}

#error_404+p {
	text-align: center;
	line-height: 1.6;
}

#error_404+p a {
	display: block;
	margin: 4px 0 35px;
}

#error_404+p a:hover {
	text-decoration: underline;
}

/*------------------------------
SITEMAP sitemap.css
------------------------------*/

#sitemap_list {
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 50px;
}

#sitemap_list a:hover {
	color: #eb6f86;
}

#sitemap_list li a {
	border-bottom: dotted 1px #402720;
	display: block;
	padding: 8px 13px 6px;
	font-weight: bold;
}

#sitemap_list ul ul {
	margin: 10px 0 5px;
}

#sitemap_list li li li a {
	display: inline-block;
	border: none;
	font-size: 12px;
	padding: 3px 0;
	font-weight: normal;
}

#sitemap_list li li li a:before {
	display: inline-block;
	content: "";
	width: 5px;
	height: 5px;
	background: #402720;
	margin-right: 7px;
	margin-left: 23px;
}

/*------------------------------
RECRUIT recruit.css
------------------------------*/

#main.recruit p img {
	vertical-align: baseline;
	position: relative;
	top: 2px;
}

#main.recruit ul {
	display: inline-block;
	letter-spacing: -0.4em;
}

#main.recruit li {
	display: inline-block;
	letter-spacing: normal;
	color: #402720;
	line-height: 1.6;
	font-size: 13px;
	width: 220px;
	margin-right: 25px;
	margin-bottom: 30px;
	vertical-align: top;
}

#main.recruit li.turn {
	margin-right: 0;
}

#main.recruit li img {
	display: block;
	margin-bottom: 5px;
}

#main.recruit a:hover {
	color: #eb6f86;
}

.staff_comment {
	border: solid 1px #eb6f86;
	padding: 15px 20px;
}

.staff_comment p:first-child {
	padding-bottom: 5px;
	border-bottom: dotted 1px #eb6f86;
}

.staff_comment p+p {
	margin-top: 10px;
}

/*------------------------------
Donna_Lesson donna_lesson.css
------------------------------*/

#dn_lesson_list li {
	width: 540px;
	margin: 30px auto 50px;
	position: relative;
}

#dn_lesson_list li>div {
	box-sizing: border-box;
	border-radius: 10px;
	padding: 20px;
}

#dn_lesson_list li:before {
	position: absolute;
	content: "";
	display: block;
	bottom: -30px;
	left: 50%;
	width: 45px;
	height: 15px;
	margin-left: -22px;
}

#dn_lesson_list h4 {
	margin-bottom: 15px;
}

#dn_lesson_list img.fleft {
	width: 100px;
}

#dn_lesson_list div.fright {
	width: 370px;
}

#dn_lesson_list p {
	line-height: 1.6;
}

#dn_lesson_list p+p {
	margin-top: 10px;
}

#dn_lesson_list p img {
	float: left;
	margin-right: 10px;
	margin-bottom: 10px;
}

#dn_list01>div {
	border: solid 1px #ff9f9f;
}

#dn_list01:before {
	background: url(../images/curriculum/donna_lesson/list01_mark.png) no-repeat;
}

#dn_list02>div {
	border: solid 1px #8fb202;
}

#dn_list02:before {
	background: url(../images/curriculum/donna_lesson/list02_mark.png) no-repeat;
}

#dn_list03>div {
	border: solid 1px #f29a00;
}

#dn_list03:before {
	background: url(../images/curriculum/donna_lesson/list03_mark.png) no-repeat;
}

#dn_list04>div {
	border: solid 1px #00b4ff;
}

#dn_list04:before {
	background: url(../images/curriculum/donna_lesson/list04_mark.png) no-repeat;
}

#dn_list05>div {
	border: solid 1px #ff587f;
}

/*------------------------------
OHTER ohter.css
------------------------------*/

#main.cont {
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.03) 1%, rgba(255, 255, 255, 1) 12%, rgba(255, 255, 255, 1) 100%);
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.03) 1%, rgba(255, 255, 255, 1) 12%, rgba(255, 255, 255, 1) 100%);
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.03) 1%, rgba(255, 255, 255, 1) 12%, rgba(255, 255, 255, 1) 100%);
}

#main.other a {
	text-decoration: underline;
}

#main.other a:hover {
	text-decoration: none;
}

#main.other .small {
	font-size: 12px;
}

#main.other strong {
	font-weight: bold;
}

#main.other section .big {
	font-size: 20px;
}

#main.other .sub_title {
	font-size: 18px;
	font-weight: bold;
	color: #402720;
	margin: 30px 0 25px;
	line-height: 1.6;
	padding: 10px 10px 10px 15px;
	border-left: solid 4px #402720;
	border-bottom: dashed 1px #402720;
}

.layout_fixed th {
	width: 20%;
}

.contact_text {
	line-height: 1.6;
	padding: 10px;
	border-top: dashed 1px #402720;
	border-bottom: dashed 1px #402720;
	color: #402720;
}

.link_list {
	line-height: 1.6;
	padding: 15px 5px 7px;
	border-top: dashed 1px #402720;
	border-bottom: dashed 1px #402720;
	color: #402720;
	letter-spacing: -0.4em;
	text-align: center;
	font-size: 13px;
}

.link_list li {
	display: inline-block;
	letter-spacing: normal;
	margin-left: 8px;
	margin-bottom: 5px;
}

#main.other .link_list a {
	text-decoration: none;
}

#main.other .link_list a:hover {
	text-decoration: underline;
}

.link_list li:first-child {
	margin-left: 0px;
}

.vertical-center {
	vertical-align: middle;
}

@media screen and (max-width:1023px) {
	/*----------------------------------------------------------------------------
		先生紹介
	----------------------------------------------------------------------------*/
	.teacher #about {
		width: 98%;
	}
	.teacher #about01,
	.teacher #about02 {
		width: calc(100% - 230px);
		position: absolute;
		right: 0;
	}
	.teacher #about01 {
		background: url(../images/teacher/box01.png) no-repeat right top;
		background-size: 97% 92%;
	}
	.teacher #about01 img {
		width: 100%;
	}
	.teacher #about02 {
		top: 528px;
		background: url(../images/teacher/box02.png) no-repeat right top;
		background-size: 97% 92%;
	}
	.teacher #about h5 {
		border-top: dashed 1px #1377b6;
		border-bottom: dashed 1px #1377b6;
		margin-bottom: 10px;
		padding: 12px 0 10px 10px;
		font-size: 17px;
		font-weight: bold;
		line-height: 1.7;
		color: #402720;
	}
	.teacher #about h5+p {
		margin-bottom: 20px;
	}
	/*----------------------------------------------------------------------------
	料金プラン
	----------------------------------------------------------------------------*/
	#main.payment .small {
		font-size: 0.7rem;
		line-height: 0.8rem;
	}
	.payment ul.priceTable li {
		width: calc(100% / 3 - 6px);
	}
	.payment ul.priceTable li.switch p {
		height: 2.6rem;
	}
	.payment ul.priceTable li.switch p:after {
		font-size: 1.6rem;
	}
	.payment ul.priceTable li dd.planPrice {
		font-size: 0.9rem;
	}
	.payment ul.priceTable li dd.planPrice span {
		font-size: 1.5rem;
		font-weight: bold;
	}
	.payment ul.priceTable li dd.planDesc {
		font-size: 0.8rem;
		padding: 0 8px;
	}
	.payment ul.compare dl {
		min-height: 9rem;
	}
	.payment ul.compare dt,
	.payment ul.compare dd {
		font-size: 1.0rem;
		padding: 8px 3px;
		line-height: 1.1rem;
	}
	.payment ul.compare .grFrame .comparePrice {
		font-size: 1.4rem;
		line-height: 3.0rem;
	}
	.payment ul.compare .orFrame .comparePrice {
		color: #F58200;
		font-size: 2.2rem;
		line-height: 3.0rem;
	}
	@media screen and (max-width: 767px) {
		/*----------------------------------------------------------------------------
		カリキュラムの特徴
		----------------------------------------------------------------------------*/
		#main.curriculum .contentDesc {
			width: 94%;
			margin: 15px auto;
		}
		#main.curriculum section,
		.level section {
			margin-bottom: 0px;
			padding: 20px 5%;
		}
		#main.curriculum section.sec01 {
			padding-top: 0;
		}
		.curriculum .lessonFlow {
			display: flex;
			display: -webkit-flex;
			flex-direction: column;
			flex-wrap: nowrap;
			/* align-items: space-around; */
			justify-content: center;
		}
		.curriculum .lessonFlow li,
		.curriculum .lessonFlow li:nth-child(2) {
			width: 100%;
			padding: 20px 5px 10px;
			margin-right: 0;
			margin-bottom: 3.6rem;
			text-align: center;
		}
		.curriculum .lessonFlow li:after {
			position: absolute;
			top: auto;
			bottom: -3.3rem;
			right: 50%;
			transform: translate(50%, 0%);
			-webkit-transform: translate(50%, 0%);
			font-family: 'FontAwesome';
			content: '\f01a';
			font-size: 3.0rem;
		}
		.curriculum .lessonFlow li:last-child {
			margin-bottom: 0;
		}
		.curriculum .lessonFlow li .EnDesc {
			font-size: 1.2rem;
			margin: 15px auto 5px;
		}
		.curriculum .lessonFlow li .JaDesc {
			font-size: 1.0rem;
		}
		.curriculum .lessonFlow li .lessonMin {
			font-size: 1.2rem;
			font-weight: bold;
			margin: 8px auto;
		}
		.curriculum .lessonDesc {
			margin-top: 10px;
			font-size: 1.0rem;
			line-height: 1.2rem;
		}
		.curriculum .lessonDesc:after {
			border-width: 8px;
			margin-left: -8px;
		}
		.curriculum .lessonDesc:before {
			border-width: 10px;
			margin-left: -10px;
		}
		/*----------------------------------------------------------------------------
		先生紹介
		----------------------------------------------------------------------------*/
		#kensyu {
			padding-top: 5px;
		}
		#kensyu p {
			font-size: 13px;
			font-size: 1.3rem;
		}
		#kensyu #kensyu_text01,
		#kensyu #kensyu_text02 {
			background: rgba(125, 102, 90, 0.7);
			color: #fff;
			font-size: 13px;
			font-size: 1.3rem;
			height: 28px;
			line-height: 30px;
			letter-spacing: 0.1em;
			text-align: center;
			margin-bottom: 5px;
		}
		#kensyu_text01 span,
		#kensyu_text02 span {
			display: inline-block;
			position: relative;
		}
		#kensyu_text01 span:before,
		#kensyu_text02 span:before {
			content: "";
			display: block;
			position: absolute;
			width: 33px;
			height: 33px;
			top: 50%;
			margin-top: -17px;
			left: -60px;
		}
		#kensyu_text01 span:before {
			background: url(../../../sp/images/ripple/teacher/icon01.png) no-repeat;
			-webkit-background-size: 33px 33px;
			-moz-background-size: 33px 33px;
			-ms-background-size: 33px 33px;
			-o-background-size: 33px 33px;
			background-size: 33px 33px;
		}
		#kensyu_text02 {
			margin-top: -5px;
		}
		#kensyu_text02 span:before {
			background: url(../../../sp/images/ripple/teacher/icon03.png) no-repeat;
			-webkit-background-size: 33px 33px;
			-moz-background-size: 33px 33px;
			-ms-background-size: 33px 33px;
			-o-background-size: 33px 33px;
			background-size: 33px 33px;
		}
		.kensyu_cont {
			background: url(../../../sp/images/ripple/teacher/kensyu_arrow.png) no-repeat 20px bottom;
			-webkit-background-size: 42px 571px;
			-moz-background-size: 42px 571px;
			-ms-background-size: 42px 571px;
			-o-background-size: 42px 571px;
			background-size: 42px 571px;
			width: 95%;
			margin: 0 auto;
		}
		.kensyu_cont dl {
			width: 73%;
			margin-left: auto;
			margin-top: 10px;
			font-size: 1.2rem;
			line-height: 1.6;
		}
		.kensyu_cont dt {
			background: #faaf3f;
			color: #fff;
			padding: 2px 5px;
			margin-bottom: 10px;
		}
		.kensyu_cont dd {
			font-size: 1.0rem;
		}
		.kensyu_cont dd span {
			color: #faaf3f;
			font-size: 1.2rem;
			font-weight: bold;
			display: block;
			margin-bottom: 5px;
		}
		#kensyu_top_cont {
			padding: 10px 0 38px;
		}
		#kensyu_top_cont div {
			border: dashed 1px #f6921d;
			padding: 12px;
		}
		#kensyu_top_cont p {
			background: rgba(250, 175, 63, 0.35);
			width: 100%;
			font-size: 1.2rem;
		}
		#kensyu_top_cont p span {
			display: inline-block;
			position: relative;
			padding-left: 30px;
		}
		#kensyu_top_cont p span:before {
			content: "";
			position: absolute;
			width: 68px;
			height: 68px;
			background: url(../../../sp/images/ripple/teacher/icon02.png) no-repeat;
			-webkit-background-size: 34px 34px;
			-moz-background-size: 34px 34px;
			-ms-background-size: 34px 34px;
			-o-background-size: 34px 34px;
			background-size: 34px 34px;
			top: 50%;
			margin-top: -17px;
			left: -10px;
		}
		#kensyu_top_cont p span span {
			display: inline;
			padding: 0;
		}
		#kensyu_top_cont p span span:before {
			content: none;
		}
		#kensyu_top_cont p .white {
			color: #fff;
		}
		#kensyu_top_cont p .red {
			color: #be1d2c;
		}
		#kensyu_middle_cont {
			padding: 10px 0 25px;
			margin-bottom: 5px;
		}
		#kensyu_middle_cont img {
			display: block;
			margin-left: auto;
			margin-right: 20px;
		}
		#kensyu #kensyu_text03 {
			background: #faaf3f;
			color: #fff;
			height: 28px;
			line-height: 30px;
			letter-spacing: 0.1em;
			text-align: center;
			margin-bottom: 20px;
		}
		#kensyu #kensyu_text03+p {
			color: #faaf3f;
			font-weight: bold;
			line-height: 1.6rem;
			padding-bottom: 20px;
			text-align: center;
		}
		#kensyu #kensyu_text03+p span {
			width: 281px;
			height: 211px;
			background: url('../../../sp/images/ripple/teacher/kensyu_img02.png') no-repeat;
			background-size: 281px 201px;
			margin: 0 auto;
			display: block;
			overflow: hidden;
			text-indent: 100%;
			white-space: nowrap;
		}
		.teacher .sec03 ul {
			display: block;
		}
		.teacher .sec03 ul li {
			width: 80%;
			padding: 0.5rem;
			border: none;
			margin: 0 10px;
		}
		.teacher .sec03 .flickity-page-dots {
			position: absolute;
			width: 100%;
			bottom: -10px;
			padding: 0;
			margin: 0;
			list-style: none;
			text-align: center;
			line-height: 1;
		}
		.teacher .sec03 .flickity-page-dots li {
			display: inline-block;
			width: 1rem;
			height: 1rem;
			margin: 0 0.8rem;
			padding: 0;
			background: #333;
			border-radius: 50%;
			opacity: 0.25;
			cursor: pointer;
		}
		.teacher .sec03 .flickity-page-dots .dot.is-selected {
			opacity: 1;
		}
		.teacher .sec03 .next:after {
			display: none;
		}
		/*----------------------------------------------------------------------------
		料金プラン
		----------------------------------------------------------------------------*/
		.payment ul.priceTable {
			display: flex;
			display: -webkit-flex;
			flex-direction: column;
		}
		.payment ul.priceTable li {
			width: 96%;
			margin: 0 auto 10px;
		}
		#main.payment .small {
			font-size: 0.8rem;
			line-height: 0.9rem;
		}
		.payment .sec02 {
			background-color: #ffffff;
		}
		.payment .sec02 img {
			width: 95%;
		}
		.payment ul.priceTable li.switch p {
			height: 2.4rem;
			line-height: 2.4rem;
		}
		.payment ul.priceTable li.switch p:after {
			font-size: 1.6rem;
		}
		.payment ul.priceTable li dd.planDesc {
			font-size: 1.0rem;
		}
		.payment ul.priceTable li dd.planPrice {
			font-size: 1.0rem;
		}
		.payment ul.priceTable li dd.planPrice span {
			font-size: 1.6rem;
			font-weight: bold;
		}
		.payment ul.priceTable li dd.planNumber {
			font-size: 0.8rem;
		}
		.payment ul.compare {
			padding: 0;
		}
		.payment ul.compare li.arrow {
			padding: 0 1%;
		}
		.payment ul.compare dl {
			min-height: 12.5rem;
		}
		.payment ul.compare dt,
		.payment ul.compare dd {
			font-size: 1.0rem;
			padding: 8px 3px;
			text-align: center;
			line-height: 1.1rem;
		}
		.payment ul.compare .grFrame .comparePrice {
			font-size: 1.4rem;
			line-height: 3.0rem;
		}
		.payment ul.compare .orFrame .comparePrice {
			color: #F58200;
			font-size: 2.2rem;
			line-height: 3.0rem;
		}
		.payment ul.ticketTable {
			display: flex;
			display: -webkit-flex;
			flex-wrap: column;
		}
		.payment ul.ticketTable li {
			width: 96%;
			margin: 0 auto 10px;
		}
		.payment ul.ticketTable li dt {
			margin-bottom: 5px;
		}
		.payment ul.ticketTable li dd {
			font-size: 1.0rem;
			line-height: 1.6rem;
		}
		.payment ul.ticketTable li dd .ticketNumber {
			min-width: 3.0rem;
			text-align: left;
		}
		.payment ul.ticketTable li dd .ticketPrice {
			min-width: 9.0rem;
		}
		.payment ul.ticketTable li dd .ticketPrice span {
			font-size: 1.6rem;
			font-weight: bold;
			line-height: 1.8rem;
		}
		.payment ul.ticketTable li dd .small {
			min-width: 5.8rem;
			line-height: 1.4rem !important;
		}
		.payment ul.ticketTable li.full {
			width: 96%;
		}
		.payment ul.ticketTable li.full ul {
			display: flex;
			display: -webkit-flex;
			flex-direction: column;
		}
		.payment ul.ticketTable li.full li {
			width: 100%;
		}
		.payment .sec02 .ticketRule li {
			font-size: 1.0rem;
			line-height: 1.2rem;
			padding-bottom: 5px;
		}
		.payment .sec02 .ticketRule li:before {
			font-size: 1.0rem;
		}
		/*----------------------------------------------------------------------------
		FAQ
		----------------------------------------------------------------------------*/
		section#faq_case {
			padding-bottom: 0;
		}
		#faq_list,
		#faq_sub_list {
			display: flex;
			display: -webkit-flex;
			width: 100%;
			min-width: 250px;
			margin: 0 auto;
		}
		#faq_list li {
			padding: 0;
			height: auto;
		}
		#faq_sub_list ul {
			width: 100%;
			display: none;
			padding: 0;
		}
		#faq_list h3 {
			display: block;
			font-size: 1.0rem;
			padding: 5px 0;
			font-weight: normal;
			text-align: center;
			border-bottom: solid 1px #eee;
		}
		.current.faq_case01 h3 {
			color: #fff;
			background-color: #8cc63f;
		}
		.current.faq_case02 h3 {
			color: #fff;
			background-color: #68a4eb;
		}
		.current.faq_case03 h3 {
			color: #fff;
			background-color: #ff95b3;
		}
		#faq_sub_list ul {
			width: 100%;
			margin-top: 3px;
			min-width: 0;
		}
		#faq_sub_list ul>li {
			width: 98%;
			font-size: 1.0rem;
			margin: 6px 1%;
			padding: 0 7px 6px;
		}
		.eiken .sec06 dl,
		.qa dl {
			padding: 6px;
		}
		.eiken .sec06 dt,
		.qa dt {
			font-size: 1.0rem;
			line-height: 1.5;
			padding-right: calc(1.3rem + 2px);
		}
		.eiken .sec06 dt:before,
		.qa dt:before,
		.eiken .sec06 dt:after,
		.qa dt:after {
			font-size: 1.3rem;
		}
		.eiken .sec06 dt:after,
		.qa dt:after {
			right: 2px;
		}
		#main section.qa dd {
			padding: 6px;
		}
		#main section.qa dd p {
			font-size: 1.0rem;
		}
	}
}