@charset "utf-8";
#mainContents .secTitle{
	text-align: center;
	background: url(../common/images/bg_green.jpg) top;
	padding: 10px 0px;
}
#mainContents .secTitle h2{
	display: inline-block;
	font-size: 1.8em;
	letter-spacing: 0.2em;
	color: #FFFFFF;
	position: relative;
	line-height: normal;
	margin:0;
}
#mainContents .secTitle h2 img.illust1{
	position: absolute;
	left: 200px;
	top: -260px;
}
#mainContents .secTitle h2 img.illust2{
	position: absolute;
	left: -120px;
	top: -50px;
}
@media (max-width: 1024px) and (min-width: 768px) {
#mainContents .secTitle h2 img.illust1 {
    left: 170px;
    top: -200px;
    width: 280px;
}
}
@media (max-width: 767px) {
#mainContents .secTitle{
	padding: 5px 0px;
}
#mainContents #daycareList .secTitle{
	padding: 25px 0px 5px;
}
#mainContents .secTitle h2{
	font-size: 1.6em;
}
#mainContents .secTitle h2 img.illust1{
	position: absolute;
	left: 50%;
	margin-left: -133px;
	top: -200px;
	width: 250px;
}
#mainContents .secTitle h2 img.illust2{
	position: absolute;
	left: -65px;
	top: -28px;
	width:70px;
	height:auto;
}
}
/*---------------------- MainBanner ------------------------*/
.mainBanner img{
	width: 100%;
}
/*---------------------- News ------------------------*/
#news .inner{
	max-width: 980px;
	padding: 30px 40px 80px;
	margin: 0px auto;
}
#news h2 {
	text-align: center;
	color: #00A73C;
	font-size:1.6em;
	font-weight:700;
	margin:0 0 30px;
}
#news .inner ul{
	border-top:1px solid #999;
}
#news .inner li{
	border-bottom:1px solid #999;
	list-style-type: none;
	padding:20px 0;
	line-height: 160%;
}
#news .inner li a{
	color:#00aaf0;
	text-decoration: underline;
}
@media (max-width: 767px) {
#news .inner{
	padding: 20px 20px 50px;
}
#news h2 {
	margin:0 0 15px;
	font-size:1.4em;
}
#news .inner li{
	padding:10px 0;
}
}
/*---------------------- About us ------------------------*/
#aboutus{
	background: url(../common/images/main_bg.jpg) center;
}
#aboutus .inner{
	max-width: 980px;
	padding: 40px 40px 270px;
	margin: 0px auto;
}
#aboutus h3{
	font-size: 1.4em;
	letter-spacing: 0.2em;
	padding: 0px 0px 15px;
	margin: 0px 0px 15px;
	text-align: center;
	border-bottom: 2px solid #00A73C;
	color: #00A73C;
	background: none;
	font-weight:bold;
}
#aboutus .philosophy p{
	line-height: 180%;
	margin-bottom:30px;
}
#aboutus .philosophy ul{
	padding: 5px 0px 0px 30px;
}
#aboutus .philosophy li{
	margin-bottom: 15px;
	line-height:160%;
}
#aboutus .documents li{
	margin-bottom:20px;
	list-style-type: none;
}
#aboutus .documents li a{
	display: block;
	background: #f07800;
	color: #FFFFFF;
	text-decoration: none;
	padding: 15px 40px;
	border-radius:10px;
	text-align:center;
	line-height:160%;
	position: relative;
}
#aboutus .documents li a::after {
	position: absolute;
	top: 50%;
	right: 20px;
	width: 8px;
	height: 8px;
	transform: translateY(-50%) rotate(45deg);
	border-right: 2px solid currentColor;
	border-top: 2px solid currentColor;
	content: "";
}
#aboutus .documents li.pink a{
	background: #ff0064;
}
#aboutus .documents li.blue a{
	background: #00aaf0;
}
#aboutus .documents li.green a{
	background: #00A73C;
}
#aboutus .documents li a:hover{
	background: #f06400;
}
#aboutus .documents li.pink a:hover{
	background: #f00050;
}
#aboutus .documents li.blue a:hover{
	background: #0096f0;
}
#aboutus .documents li.green a:hover{
	background: #009632;
}
#aboutus .documents p.notice{
	color:#FF0000;
	line-height:180%;
	font-weight:bold;
}
#aboutus .lesson ul{
	padding:40px 0 25px;
}
#aboutus .lesson li{
	list-style-type: none;
	background-color: #FFF;
}
#aboutus .lesson li .photo img{
	width:100%;
	display: block;
}
#aboutus .lesson li .text{
	padding:25px 30px;
}
#aboutus .lesson li .text h4{
	font-weight:700;
	margin:0 0 20px;
	font-size:1.2em;
	text-align: center;
}
#aboutus .lesson li .text p{
	line-height: 160%;
}
#aboutus .lesson .note{
	text-align: center;
	line-height: 160%;
}
@media (min-width: 768px) {
#aboutus .flex{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
#aboutus .philosophy{
	width: calc(100% - 380px);
}
#aboutus .documents{
	width: 320px;
}
#aboutus .lesson li{
	width:47%;
}
}
@media (max-width: 1024px) and (min-width: 768px) {
#aboutus .inner{
	padding: 40px 40px 200px;
}
}
@media (max-width: 767px) {
#aboutus .inner{
	padding: 20px 20px 190px;
}
#aboutus h3{
	margin: 0px 0px 15px;
}
#aboutus .philosophy p{
	margin-bottom:20px;
}
#aboutus .philosophy ul{
	padding: 0 0 0 20px;
	margin-bottom:25px;
}
#aboutus .philosophy li{
	margin-bottom: 10px;
}
#aboutus .documents li{
	margin-bottom:15px;
}
#aboutus .documents li a{
	padding: 15px 40px;
}
#aboutus .lesson ul{
	padding:10px 0 15px;
}
#aboutus .lesson li{
	margin:0 0 20px;
}
#aboutus .lesson li:last-child{
	margin:0;
}
#aboutus .lesson li .text{
	padding:20px 20px;
}
#aboutus .lesson li .text h4{
	margin:0 0 15px;
}
}
/*---------------------- Daycare List ------------------------*/
#daycareList .inner{
	max-width: 980px;
	padding: 50px 40px 80px;
	margin: 0px auto;
}
#daycareList li{
	list-style: none;
}
#daycareList li img{
	margin-bottom: 5px;
	display: block;
}
#daycareList table{
	width: 100%;
	margin-bottom: 30px;
}
#daycareList th{
	border-bottom: 1px solid #999999;
	line-height: 160%;
	padding: 10px 0px 10px;
	font-weight: 700;
	text-align: center;
	white-space: nowrap;
}
#daycareList td{
	border-bottom: 1px solid #999999;
	line-height: 160%;
	padding: 10px 0px 10px 15px;
}
#daycareList li .link a{
	display: block;
	background: #f07800;
	color: #FFFFFF;
	text-decoration: none;
	padding: 20px 40px;
	border-radius:10px;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
	position: relative;
}
#daycareList li .link a:hover{
	background: #f06400;
}
#daycareList li .link a::after {
	position: absolute;
	top: 50%;
	right: 20px;
	width: 8px;
	height: 8px;
	transform: translateY(-50%) rotate(45deg);
	border-right: 2px solid currentColor;
	border-top: 2px solid currentColor;
	content: "";
}
@media (min-width: 768px) {
#daycareList ul{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
#daycareList li{
	width: 47%;
}
}
@media (max-width: 1024px) and (min-width: 768px) {
#daycareList li{
	font-size:0.9em;
}
#daycareList table{
	margin-bottom: 20px;
}
#daycareList li .link a{
	padding: 20px 30px 20px 20px;
}
}
@media (max-width: 767px) {
#daycareList .inner{
	padding: 20px 20px 50px;
}
#daycareList li{
	margin:0 0 25px;
}
#daycareList li:last-child{
	margin:0;
}
#daycareList table{
	margin-bottom: 20px;
}
#daycareList li .link a{
	padding: 10px 40px;
	line-height: 150%;
}
}
/*---------------------- Admission Guide ------------------------*/
#admissionGuide{
	background: url(../common/images/main_bg.jpg) center;
}
#admissionGuide .inner{
	max-width: 980px;
	padding: 0 40px 100px;
	margin: 0px auto;
}
#admissionGuide h3 {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	color: #00A73C;
	font-size:1.6em;
	font-weight:700;
	margin:40px 0 20px;
}
#admissionGuide h3:before,
#admissionGuide h3:after {
	border-top: 2px solid;
	content: "";
	-webkit-box-flex:1;
	-ms-flex-positive:1;
	flex-grow:1;
}
#admissionGuide h3:before {
	margin-right: 1em;
}
#admissionGuide h3:after {
	margin-left: 1em;
}
#admissionGuide .flowFig{
	list-style-type: none;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin:35px 0 40px;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#admissionGuide .flowFig li{
	list-style-type: none;
	color: #00A73C;
}
#admissionGuide .flowFig li .circle{
	border:5px solid #00A73C;
	border-radius: 50%;
	width:180px;
	height:180px;
	box-sizing: border-box;
	text-align: center;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background-color: #FFF;
	position: relative;
}
#admissionGuide .flowFig li .circle::after {
	position: absolute;
	top: 50%;
	right: -54px;
	width: 20px;
	height: 20px;
	transform: translateY(-50%) rotate(45deg);
	border-right: 4px solid currentColor;
	border-top: 4px solid currentColor;
	content: "";
}
#admissionGuide .flowFig li:last-child .circle::after {
	display: none;
}
#admissionGuide .flowFig li .circle p{
	font-size:1.2em;
	line-height: 140%;
	font-weight:700;
	padding: 0 0 10px;
}
#admissionGuide .flowFig li .circle p .number{
	font-size:1.4em;
	font-weight:700;
	display: block;
	margin:0 0 10px;
}
#admissionGuide .flowText{
	margin:0 0 15px;
	list-style-type: none;
	border-top:1px solid #999;
}
#admissionGuide .flowText li{
	line-height:160%;
	padding:20px 0 10px;
	border-bottom:1px solid #999;
}
#admissionGuide .flowText li h4{
	color: #00A73C;
	font-weight: 700;
	font-size: 1.2em;
	margin:0 0 10px;
}
#admissionGuide .flowText li p{
	margin:0 0 10px 1.3em;
}
#admissionGuide .flowText li p.btn{
	margin:10px 0 15px 1.3em;
	display: inline-block;
}
#admissionGuide .flowText li p.btn a{
	display:inline-block;
	background-color: #00A73C;
	border-radius:10px;
	color:#FFF;
	position: relative;
	line-height: normal;
	transition: 0.5s;
	padding:15px 35px 15px 30px;
}
#admissionGuide .flowText li p.btn a::after{
	content: '';
	width: 8px;
	height: 8px;
	border: 0px;
	border-right: solid 2px #FFF;
	position: absolute;
}
#admissionGuide .flowText li p.btn.downArrow a::after{
	border-bottom: solid 2px #FFF;
	transform: translateY(-50%) rotate(45deg);
	top: 50%;
	margin-top:-2px;
	right: 20px;
}
#admissionGuide .flowText li p.btn.rightArrow a::after{
	border-top: solid 2px #FFF;
	transform: translateY(-50%) rotate(45deg);
	top: 50%;
	right: 20px;
}
#admissionGuide p.note {
	line-height: 160%;
}
@media (max-width: 1024px) and (min-width: 768px) {
#admissionGuide .flowFig li .circle{
	border:5px solid #00A73C;
	border-radius: 50%;
	width:140px;
	height:140px;
}
#admissionGuide .flowFig li .circle::after {
	position: absolute;
	top: 50%;
	right: -32px;
	width: 16px;
	height: 16px;
}
}
@media (max-width: 767px) {
#admissionGuide .inner{
	padding: 0 20px 50px;
}
#admissionGuide h3 {
	margin:20px 0 15px;
	font-size:1.4em;
}
#admissionGuide h3:before {
	margin-right: 0.6em;
}
#admissionGuide h3:after {
	margin-left: 0.6em;
}
#admissionGuide .flowFig{
	margin:0 0 5px;
}
#admissionGuide .flowFig li{
	width:calc(50vw - 20px);
	height:calc(50vw - 20px);
	margin-bottom:-20px;
}
#admissionGuide .flowFig li .circle{
	border:3px solid #00A73C;
	width:calc(100% - 35px);
	height:calc(100% - 35px);
}
#admissionGuide .flowFig li .circle::after {
	right: -24px;
	width: 12px;
	height: 12px;
	border-right: 2px solid currentColor;
	border-top: 2px solid currentColor;
}
#admissionGuide .flowFig li .circle p{
	font-size:1em;
}
#admissionGuide .flowText{
	margin:0 0 10px;
}
#admissionGuide .flowText li{
	padding:15px 0 5px;
}
#admissionGuide .flowText li p.btn{
	margin:10px 0 15px 1.3em;
	display: block;
}
#admissionGuide .flowText li p.btn a{
	display:block;
}
}
#admissionGuide #entry p{
	line-height: 160%;
}
/*---------------------- FAQ ------------------------*/
#faq .inner{
	max-width: 980px;
	padding: 40px 40px 80px;
	margin: 0px auto;
}
#faq dl{
	border-bottom:1px solid #999;
}
#faq dt{
	padding:15px 15px;
	border-top:1px solid #999;
	line-height: 160%;
	position: relative;
}
#faq dt.active{
	color: #00A73C;
	font-weight: 700;
	border-top:1px solid #00A73C;
}
#faq dt .openBtn,
#faq dt .openBtn span {
	display: inline-block;
	transition: all .3s;
}
#faq dt .openBtn {
	position: absolute;
	width: 24px;
	height: 24px;
	top:50%;
	margin-top:-13px;
	right:20px;
	cursor: pointer;
	border-radius:50%;
	background-color: #FFF;
	border:1px solid #00A73C;
}
#faq dt .openBtn span {
	position: absolute;
	left: 6px;
	width: 50%;
	height: 2px;
	background-color: #00A73C;
}
#faq dt .openBtn span:nth-of-type(1) {
	top: 11px;
	transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	-o-transform: rotate(0deg);
}
#faq dt .openBtn span:nth-of-type(2) {
	top: 11px;
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
}
#faq dt.active .openBtn span:nth-of-type(2) {
	display: none;
}
#faq dd{
	display: none;
	padding:0 15px 15px;
	line-height: 180%;
}
#faq dd a{
	color:#333;
	text-decoration: underline;
}
#faq dd .tel{
padding-left:1.1em;
}
#faq dd .tel a{
	text-decoration: none;
}
@media (max-width: 767px) {
#faq .inner{
	padding: 0 0 50px;
}
#faq dt{
	padding:10px 40px 10px 15px;
}
#faq dt .openBtn {
	right:10px;
}
#faq dd{
	padding:0 15px 10px;
}
}
/*---------------------- Contact ------------------------*/
#contact{
	background: url(../common/images/main_bg.jpg) center;
	padding:0 0 1px
}
.contactform #contact{
	background: none;
}
#contact .formArea{
	max-width: 980px;
	margin: 40px auto;
}
#contact .formArea dl:first-of-type{
	border-top:1px solid #CCC;
}
@media (min-width: 768px) {
#contact .formArea{
	padding:0 40px;
}
}
@media (max-width: 767px) {
#contact .inner{
	padding: 20px;
}
}