@charset "utf-8";
/* CSS Document */


.main_visual img {
    width: 100%;
}

.main_parts.frame01 {
	background: url(../img/frame_bg01a.png)no-repeat center center;
	background-size: 100% 100%;
}
.main_parts.frame02 {
	background: url(../img/frame_bg02.png)repeat;
}
.main_parts.frame03 {

}
.main_parts.frame04 {
	background: url(../img/frame_bg04a.png)no-repeat center center;
	background-size: 100% 100%;
}
.main_parts.frame05 {
	background: url(../img/frame_bg05.png)repeat;
	padding-bottom: 40px;
}


/*メインスライダー*/
ul.slider_main .slick-prev {
    left: 15px!important;
}

ul.slider_main .slick-next {
	right: 15px!important;
}
/**/

.banner_area {
	display: none;
}

.main_parts.frame01 ul {
    display: flex;
	justify-content: center;
	flex-wrap: wrap;
    padding-bottom: 5px;
	background: url(../img/frame_bg01b.png)no-repeat center center;
	background-size: contain;
}

.main_parts.frame01 ul li {
    width: 190px;
	text-align: center;
    margin-bottom: 17px;
}

.main_parts.frame01 ul li p {
    padding-top: 5px;
	width: 170px;
	margin: auto;
}

.main_parts.frame01 .comment {
    text-align: center;
    padding: 20px 0;
}

.main_parts.frame01 .comment .catch02 {
    font-size: 220%;
    background: url(../common/img/catch_bg02.png) repeat-x;
    display: inline;
    padding: 0 10px;
}

.point_txt {
    font-size: 125%;
    color: #000000;
    text-align: center;
    padding: 0 0 25px;
}


/*---*/

.news .n_tit {
    color: #71be4e;
    font-weight: bold;
    font-size: 200%;
    text-align: center;
    padding: 20px 0;
}

.news_box {
    padding-bottom: 20px;
	max-height: 180px;
    overflow: auto;
    margin-bottom: 15px;
}

.news_box dl {
    overflow: hidden;
    width: 95%;
    margin: auto;
    padding: 15px 2.5%;
    border-top: 1px solid #cccccc;
}
.news_box dl:last-child {
	border-bottom: 1px solid #cccccc;
}

.news_box dl dt {
	float: left;
    padding-right: 67px;
    width: 140px;
    margin-right: 15px;
}
.news_box dl dt.new_icon {
	background:url(../img/new_icon.png)no-repeat right center
}
.news_box dl dd {
	float: left;
	max-width: 570px;
}

.news-btn {
    padding-bottom: 30px;
    overflow: hidden;
    text-align: center;
}

a:hover {
    opacity: 1.0;
}


/*-----*/


.bg_contents ul {
	display: flex;
	flex-wrap: wrap;
	
}

.bg_contents ul li {
	width: 50%;
	overflow: hidden;
}

.bg_contents ul li.l_1st {
	background: url(../img/frame_bg03a.png)no-repeat center center;
	background-size: cover;
}
.bg_contents ul li.l_2nd {
	background: url(../img/frame_bg03b.png)no-repeat center center;
	background-size: cover;
}
.bg_contents ul li.l_3rd {
	background: url(../img/frame_bg03c.png)no-repeat center center;
	background-size: cover;
}
.bg_contents ul li.l_4th {
	background: url(../img/frame_bg03d.png)no-repeat center center;
	background-size: cover;
}

.bg_contents ul li p {
	width: 100%;
	max-width: 435px;
	text-align: center;
    padding: 25px 0;
}

.bg_contents ul li.l_1st p,
.bg_contents ul li.l_3rd p {
	float: right;
}

.bg_contents ul li.l_2nd p,
.bg_contents ul li.l_4th p {
	float: left;
}



/*-----*/



.main_parts.frame04 ul {
    display: flex;
	justify-content: center;
	flex-wrap: wrap;
    padding-bottom: 25px;
	background: url(../img/frame_bg04b.png)no-repeat center center;
	background-size: contain;
}

.main_parts.frame04 ul li {
    width: 100%;
    max-width: 434px;
    text-align: center;
    padding: 30px 0 10px;
}

.main_parts.frame04 ul li p {
    padding-top: 5px;
	font-size: 150%;
	margin: auto;
}

p.swim_txt {
    color: #4099c6;
}

p.teacher_txt {
    color: #ff882b;
}

/*-------*/

p.library_tit {
    font-size: 200%;
    color: #099;
    text-align: center;
    padding: 25px 0;
}


a.hvr-rotate:hover img {
opacity: 1.0;
}



/* トップ固有のスマホ対応記述
========================== */

/* 1250pxより小さい,701pxより大きい場合 */

@media screen and (min-width: 701px) and (max-device-width: 1250px) {
	
	/*左右の矢印の位置を変える*/
	.slick-prev {
		left: -45px!important;
	}
	.slick-next {
		right: -30px!important;
	}
	
}

/* 700pxより小さい場合 */
@media screen and ( max-width: 700px ){

	.banner_area {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
    padding-bottom: 90px;
    position: relative;
	}
.banner_area .banner_list{
	width: 50%;
  position: relative;
  height: 163px;
}
.banner_area .banner_list:nth-child(1){
	background-color: #FFCF95;
}
.banner_area .banner_list:nth-child(2){
	background-color: #ACD598;
}
.banner_area .banner_list:nth-child(3){
	background-color: #FFC8D3;
}
.banner_area .banner_list:nth-child(4){
	background-color: #FFCF95;
}
.banner_area .banner_list:nth-child(5){
	background-color: #FFE48C;
}
.banner_area .banner_list:nth-child(6){
	background-color: #ACD598;
}
.banner_area .banner_list:nth-child(7){
	background-color: #60b9d5;
}
.banner_area .banner_list p{
  font-size: 17px;
  margin: 8px;
  height: 147px;
  text-align: center;
  display: flex;
  justify-content: center;
  flex-direction: column;
  font-weight: bold;
}
.banner_area .banner_list p span{
  position: relative;
  z-index: 1;
}
  .banner_area .banner_list:nth-child(1) p span {
    font-size: 15px;
  }
  .banner_po{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    margin-bottom: 5px;
    text-align: center;
  }
.banner_area .banner_list:nth-child(1) p{
	background-color: #FFEACB;
  color: #FF5700;
}
.banner_area .banner_list:nth-child(1)::after{
	content: "";
  background-color: #FFCF95;
  width: 126px;
  height: 126px;
  position: absolute;
  border-radius: 50%;
  left: 0;
  right: 0;
  margin: auto;
  top: 18px;
}
.banner_area .banner_list:nth-child(1)::after{
	content: "";
  background-color: #FFCF95;
  width: 126px;
  height: 126px;
  position: absolute;
  border-radius: 50%;
  left: 0;
  right: 0;
  margin: auto;
  top: 18px;
}
.banner_area .banner_list:nth-child(2)::after{
	content: "";
  background-color: #ACD598;
  width: 126px;
  height: 126px;
  position: absolute;
  border-radius: 50%;
  left: 0;
  right: 0;
  margin: auto;
  top: 18px;
}
.banner_area .banner_list:nth-child(3)::after{
	content: "";
  background-color: #FFC8D3;
  width: 126px;
  height: 126px;
  position: absolute;
  border-radius: 50%;
  left: 0;
  right: 0;
  margin: auto;
  top: 18px;
}
.banner_area .banner_list:nth-child(4)::after{
	content: "";
  background-color: #FFCF95;
  width: 126px;
  height: 126px;
  position: absolute;
  border-radius: 50%;
  left: 0;
  right: 0;
  margin: auto;
  top: 18px;
}
.banner_area .banner_list:nth-child(5)::after{
	content: "";
  background-color: #FFE48C;
  width: 126px;
  height: 126px;
  position: absolute;
  border-radius: 50%;
  left: 0;
  right: 0;
  margin: auto;
  top: 18px;
}
.banner_area .banner_list:nth-child(6)::after{
	content: "";
  background-color: #ACD598;
  width: 126px;
  height: 126px;
  position: absolute;
  border-radius: 50%;
  left: 0;
  right: 0;
  margin: auto;
  top: 18px;
}
.banner_area .banner_list:nth-child(7)::after{
	content: "";
  background-color: rgba(96, 185, 213, 0.4);
  width: 126px;
  height: 126px;
  position: absolute;
  border-radius: 50%;
  left: 0;
  right: 0;
  margin: auto;
  top: 18px;
}

.banner_area .banner_list:nth-child(2) p{
	background-color: #DEE9C0;
  color: #039945;
}
.banner_area .banner_list:nth-child(3) p{
	background-color: #FFF2F5;
  color: #FF4B66;
}
.banner_area .banner_list:nth-child(4) p{
	background-color: #FFEACB;
  color: #FF5700;
}
.banner_area .banner_list:nth-child(5) p{
	background-color: #FFF9E3;
  color: #F69100;
}
.banner_area .banner_list:nth-child(6) p{
	background-color: #DEE9C0;
  color: #039945;
}
.banner_area .banner_list:nth-child(7) p{
	background-color: #dff3fe;
  color: #60b9d5;
}
	.banner_area img {
	    padding: 0px 0 15px;
	}
	
	.main_parts.frame01 .comment .catch02 {
    	font-size: 140%;
	}
	
	.main_parts.frame01 {
		background: url(../img/frame_bg01c.png)repeat;
		padding: 2.5% 0;
	}
	.main_parts.frame01 .inner_parts {
		background: #fff;
	}
	.main_parts.frame04 {
		background: url(../img/frame_bg04c.png)repeat;
		padding: 2.5% 0;
	}
	.main_parts.frame04 .inner_parts {
		background: #fff;
	}
	.main_parts.frame04 ul li {
		width: 50%;
	}
	
	
	/*左右の矢印の位置を変える*/
	.slick-prev {
		left: 5px!important;
	}
	.slick-next {
		right: 5px!important;
	}
	.slick-slide img {
		margin: auto;
	}
	/*---------------------*/
	
	.bg_contents ul li p {
		width: auto;
		padding: 25px 10px;
	}
	
}

/* 500pxより小さい場合 */
@media screen and ( max-width: 500px ){
    
	p.library_tit {
    	font-size: 150%;
	}
	
}


/* 420pxより小さい場合 */
@media screen and ( max-width: 420px ){
	
	.main_parts.frame01 ul li p {
		width: auto;
	}
	.main_parts.frame01 ul li {
		width: 120px;
		padding: 0 10px;
	}
	
}

