@charset "utf-8";
/* CSS Document */


body {
    height: 100%;
    /*min-width: 950px;*/
    font-family: sans-serif!important;}	
	
hr{
border:none;
border-top:dashed 1px #F19209;
height:1px;
color:#FFFFFF;

}
.top-background {
  background-color: #fff; 
}
  
.top-inner {
  margin: 2em auto 0;
  width: 100%;
  max-width: 1500px;
  height: auto;
  text-align: center;
}  
  
.top-inner img {
  width: 80%;
}
  
@media only screen and (max-width: 768px) {
  
  .top-inner {
    margin: 0 auto;
  } 
  
  .top-inner img {
    width: 100%;
  }
  
}
  
  
.section-background {
  background-color: #fff;
  padding: 4.5em 0;
} 
.section-background2 {
  background-color: #d5eabd;
  padding: 4.5em 0;
} 	
	
.section-background3 {
  background-color: #bde3ea;
  padding: 4.5em 0;
} 		
	
.section-background4 {
  background-color: #f2e7f6;
  padding: 4.5em 0;
} 	
	
  
.bk-anotherColor {
  background-color: #fefddf;  
} 
.bk-anotherColor2 {
  background-color: #d5eabd;  
} 	
.bk-anotherColor3 {
  background-color: #bde3ea;  
} 	
.bk-anotherColor4 {
  background-color: #f2e7f6;  
} 	
  
.section-firstMargin {
  padding: 0 0 4.5em;
  margin-top: 3.5em;
}    
  
.section-body {
  width: 100%;
  max-width: 950px;
  box-sizing: border-box;
  display: block;
  clear: both;
  margin: 0 auto;
  text-align: left;
  overflow: hidden;  
}
  
.section-body p, .section-body h1 {
  padding: 0;
}  
  
@media only screen and (max-width: 768px) {

  .section-background {
    padding: 2.5em 0.5em;
  }
  
  .section-firstMargin {
    padding: 0 0.5em 2.5em;
    margin-top: 2.15em;
  }   
    
  .section-body {
    padding: 0 1em;
  }
  
}
  
  
.topText_decoration {
  margin-bottom: 1em;
  text-align: center;
}  
      
.topText_decoration p {
  position: relative;
  display: inline-block;
  padding: 0 1.5em 0 2em;
  font-size: 300%;
  color: #4e8ac9;
}
      
.topText_decoration p:before, .topText_decoration p:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 44px;
  height: 2px;
  background-color: #4e8ac9;
}  
      
.topText_decoration p:before {
  -webkit-transform: rotate(60deg);
  transform: rotate(60deg);
  left: 0;
}
      
.topText_decoration p:after {
  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg);
  right: 0;
}
  
@media only screen and (max-width: 768px) {
  
  .topText_decoration {
    margin-bottom: 1.2em;
  }  

  .topText_decoration p {
    padding: 0 2.15em 0 2.55em;
    font-size: 140%;
  }

}      
  
  
.text-title {
  position: relative;
  font-size: 120%;
  font-weight: bold;
  display: inline-block;
  padding: 1em 3em;
  border-radius: 0 100vh 100vh 0;
  -webkit-box-shadow: 3px 3px 5px rgba(0, 0, 0, .2);
  box-shadow: 3px 3px 5px rgba(0, 0, 0, .2);
  line-height: 1.6;
  margin: 0 0 -1.5em -10px;
  background: #1731f4;
  color: #fff;
}
   
.text-title:before {
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 0;
  height: 0;
  content: '';
  border-left: 10px solid transparent;
  border-top: 10px solid #2134c7;
}   
  
.nav {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  padding: 2.7em 0 3em;
  background-color: #fefddf;
  border-radius: 5px;
  margin-bottom: 4em;
}
  
.nav-list {
  margin: 0 1.5em;
  line-height: 3;
  border-bottom: 3px dotted #f5a21b;
} 
  
.nav-list a {  
  font-weight: bold;
  color: #404040;
  font-size: 130%;
}    
  
@media only screen and (max-width: 768px) { 
  
  .text-title {
    font-size: 100%;
    padding: 1.2em 2.2em;
  }
  
  .nav {
    padding: 2.7em 0;
    margin-bottom: 3em;
  } 
  
  .nav-list { 
    border-bottom: 2px dotted #f5a21b;
  }
  
  .nav-list a { 
    font-size: 100%;
  }

}    
  
  
.section-title {
  text-align: center;
  line-height: 1.6;
  margin-bottom: 1.9em;
}
  
.polkaDot {
  border-bottom: dotted 6px #f5a21b;
  font-weight: bold;
  font-size: 220%;
}
  
.polkaDot-anotherColor {
  border-bottom: dotted 6px #4e8ac9;
}  
    
.sub-section-title01, .sub-section-title02 {
  margin-bottom: 0.9em;
	position: relative;
  font-weight: bold;
	font-size: 190%;
  padding: 0 0 0 0.9em;
}
  
.sub-section-title01 span, .sub-section-title02 span {
	font-size: 70%;
}  
  
.sub-section-title01:before, .sub-section-title02:before {
  content: "";
  display: inline-block;
  width: 10px;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
} 
  
.sub-section-title01:before {
  background-color: #f5a21b;
}
  
.sub-section-title02:before {
  background-color: #4e8ac9;
}  
 
.title-margin {
  margin-top: 3.2em;  
}  
  
@media only screen and (max-width: 768px) {
  
   .section-title {
    margin-bottom: 1.7em;
  }
  
  .polkaDot {
    font-size: 160%;
    border-bottom: dotted 4px #f5a21b;
  }
  
  .polkaDot-anotherColor {
    border-bottom: dotted 4px #4e8ac9;
  }
  
  .sub-section-title01, .sub-section-title02 {
    margin-bottom: 0.7em;
    font-size: 150%;
  } 
  
  .sub-section-title01 span, .sub-section-title02 span {
    font-size: 80%;
  }
  
  .sub-section-title01:before, .sub-section-title02:before {
    width: 8px;
  }
  
  .title-margin {
    margin-top: 2.6em;  
  }

}
   
  
.emphasized-text {
  font-size: 120%;
  font-weight: bold;
  margin: -0.3em 0 1.7em;
} 
  
@media only screen and (max-width: 768px) { 
  
  .emphasized-text {
    font-size: 100%;
    margin: -0.3em 0 0;
  } 

}  
  
  
.cp_table *, .cp_table *:before, .cp_table *:after,
.cp_table2 *, .cp_table2 *:before, .cp_table2 *:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
  
.cp_table, .cp_table2 {
	width: 100%;
	border-collapse: collapse;
  margin: 1.6em 0 1em;
}
  
.cp_table th, .cp_table td,
.cp_table2 th, .cp_table2 td {
	padding: 10px;
}
  
.cp_table th, .cp_table2 th {
	text-align: left;
  color: #fff;
  border-bottom: 1px solid #fff;
}
  
.cp_table th {
	background-color: #4e8ac9;
} 
  
.cp_table2 th {
	background-color: #f5a21b;
}
  
.cp_table tr:last-child th {
  border-bottom: 1px solid #4e8ac9;
}  
  
.cp_table2 tr:last-child th {
  border-bottom: 1px solid #f5a21b;
}  
  
.th_1 {
  width: 20%;
} 
  
.th_2 {
  width: 10%;
}   
  
.cp_table td, .cp_table2 td {
	background-color: #fff;
}
  
.cp_table td {
  border: 1px solid #cfdfef;
}
  
.cp_table2 td {
  border: 1px solid #fbdfaf;
}  
  
.classroom-link01, .classroom-link02 {
  padding: 0;
  margin: 0;
}  
  
.classroom-link01 li, .classroom-link02 li {
  list-style: none;
}
  
.classroom-link01 li {
  color: #4e8ac9;
}
  
.classroom-link02 li {
  color: #f5a21b;
}  
  
.classroom-link01 a, .classroom-link02 a {
  color: #404040;
}    
  
@media only screen and (max-width: 768px) {
  
  .cp_table, .cp_table2 {
    margin: 1.2em 0 1em;
  }
  
  .cp_table th, .cp_table td,
  .cp_table2 th, .cp_table2 td {
		width: 100%;
		display: block;
	}
  
  .cp_table th {
    border: 1px solid #4e8ac9;
  } 
	
  .cp_table2 th {
    border: 1px solid #f5a21b;
  } 

}   
  
  
.btn-01, .btn-02, .btn-03 {
  border-radius: 6px;  
  max-width: 450px;
  width: 100%;
  box-sizing: border-box;
  transition: .3s;
  margin: 2em auto 6px;
}
  
.btn-01 {
  -webkit-box-shadow: 0px 6px 0px 0px #a54931;
  box-shadow: 0px 6px 0px 0px #a54931;
  background-color: #ed6d46;
}
      
.btn-02 {
  -webkit-box-shadow: 0px 6px 0px 0px #4e7c35;
  box-shadow: 0px 6px 0px 0px #4e7c35;
  background-color: #6dba4f;
}
  
.btn-03 {
  -webkit-box-shadow: 0px 6px 0px 0px #346086;
  box-shadow: 0px 6px 0px 0px #346086;
  background-color: #4e8ac9;
}  
   
.btn-01 a, .btn-02 a, .btn-03 a {
  color: #fff;
  font-weight: bold;
  display: block;
  font-size: 150%;
  padding: 1em 1.2em 1.1em;
}
  
.btn-01 span, .btn-02 span, .btn-03 span {
  font-size: 80%;
}  
      
.btn-01:hover {
  box-shadow: 0px 1px 0px 0px #ed6d46;
  transform: translate(0px, 5px);
}
      
.btn-02:hover {
  box-shadow: 0px 1px 0px 0px #6dba4f;
  transform: translate(0px, 5px);
} 
  
.btn-03:hover {
  box-shadow: 0px 1px 0px 0px #4e8ac9;
  transform: translate(0px, 5px);
}   
  
.btn-box {
  width: 100%;
  max-width: 800px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
}
  
.btn-box .btn-box01 {
  width: 90%;
  box-sizing: border-box;
  line-height: 1.4;
}
  
.btn-box .btn-box02 {
  width: 10%;
  box-sizing: border-box;
}
  
.btn-margin01 {
  margin: 2.15em auto 6px;  
}  
  
.btn-margin02 {
  margin: 1.6em auto 6px;  
}   
  
@media only screen and (max-width: 768px) {
  
  .btn-01, .btn-02, .btn-03 {
    margin: 1.2em auto 6px;
  }
  
  .btn-margin01 {
    margin: 1.4em auto 6px;  
  }
  
  .btn-margin02 {
    margin: 1.3em auto 6px;
  }
  
  .btn-01 a, .btn-02 a, .btn-03 a {
    font-size: 130%;
  }
 
}   
  

.reservation01, .reservation02, .reservation03{
  color: #fff;
  padding: 0.5em 0.8em;
  border-radius: 6px;
  line-height: 2.75;
}
  
.reservation01 {
  background-color: #f5a21b;
}
  
	
.reservation02 {
  background-color: #4e8ac9;
} 
	
.reservation03 {
  background-color: #fa0505;
}	
  
@media only screen and (max-width: 768px) {
  
.reservation01, .reservation02, .reservation03 {
    font-size: 75% !important;
  } 
  
}  
    
  
.asterisk ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
  counter-reset: li;
} 
  
.asterisk ul li {
  position: relative;
  padding: 0 0 0 1.2em;
  margin: 0;
}    
  
.asterisk ul li:before {
  counter-increment: li;
  display: inline;
  content: "※";
  position: absolute;
  top: 12px;
  left: 0;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}   
  
.application ul {
  padding: 0;
  margin: 0 0 3em;
  list-style: none;
  counter-reset: li;
} 
  
.application ul li {
  position: relative;
  padding: 0 0 0 1.2em;
  margin: 0.5em 0;
  font-size: 120%;
}   
  
.application ul li:before {
  counter-increment: li;
  content: "";
  display: block;
  position: absolute;
  left: 0;
  height: 15px;
  width: 15px;
  border-radius: 50%;
  background: #f5a21b;
  top: 16px;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}   
  
@media only screen and (max-width: 768px) { 
  
  .asterisk ul li, .application ul li {
    padding: 0 0 0 1em;
  }
  
  .asterisk ul li:before {
    top: 9.5px;
  }
  
  .asterisk ul .mt03px {
    margin-top: 3px;
  }
  
  .application ul {
    margin: -0.3em 0 2.1em;
  }
  
  .application ul li {
    font-size: 100%;
  }
  
  .application ul li:before {
    height: 10px;
    width: 10px;
    top: 10.5px;
  } 
  
}
       
  
.call-center {
  padding: 2em 1em;
  text-align: center;
  background-color: #fefddf;
  margin-top: 4em;
}   

.call-center_text {
  font-size: 130%;
  font-weight: bold;
}
  
.call-center_text_2 {
  font-size: 110%;
}  
  
.call-center_phone {
  font-size: 250%;
  font-weight: bold;
  color: #4e8ac9;
}
   
.call-center_phone a {
  color: #4e8ac9;
}  
  
@media only screen and (max-width: 768px) { 
  
  .call-center {
    margin-top: 3em;
  }
  
  .call-center_text {
    font-size: 120%;
  }
  
  .call-center_text_2 {
    font-size: 100%;
  } 
  
  .call-center_phone {  
    font-size: 235%;
  }

}  
  
  
.pc {
  display: block;
}
  
.sp { 
  display: none;
}
  
.red-1 {
  color: #ed4816;
} 
  
.red-1_bold {
  color: #ed4816;
  font-weight: bold;
}  
  
.blue-1 {
  color: #4e8ac9;  
}
  
.green-1 {
  color: #6dba4f;  
}  
  
.font-s {
  font-size: 80%;  
}  
 .read_box{background-color: #fff;
		padding: 1.5em 1em 3em ;
		margin-bottom: 1em;
		color: #000;
		font-size: 1.3em;
		font-weight: bold;
		margin: 20px;
		border: solid 2px #4776E5;
	} 
@media only screen and (max-width: 768px) {
  .read_box{
		padding: 0 1em 0 ;
		font-size: 1.1em;
		margin: 10px;
	}
	
  .pc { 
    display: none;
  }
  
  .sp { 
    display: block;
  }
    
}    
	table.tbl-r05{width: 100%;border-collapse: separate;}	
.tbl-r05 th {
  background: #83c2e4;
  border: solid 1px #fff;
  color: #fff;
  padding: 10px;
	text-align: center;
	font-size: 20px;
}	
	.tbl-r05 td{padding-left: 10px;border: 1px solid #E8E7E7;background: #fbf5f5;}	
.tbl-r05 td:first-child {
  background: #fbf5f5;
	/*text-align: center;
	font-weight: bold;*/
}
@media screen and (max-width: 640px) {
  .tbl-r05 {
    width: 100%;
  }
  .tbl-r05 .thead {
    display: none;
  }
  .tbl-r05 tr {
    width: 100%;
  }
  .tbl-r05 td {
    display: block;
    text-align: left;
    width: 95%;
	padding-bottom: 8px; 
	  
  }
  .tbl-r05 td:first-child {
    background: #83c2e4;
    color: #fff;
    font-weight: bold;
    text-align: center;
	font-size: 18px;  
	 padding: 10px 0; 
	 width: 100%;
  }
  .tbl-r05 td:before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
    margin-right: 10px;
  }
}
  
.btn_blue {
	display: block;
	cursor: pointer;
	max-width: 420px;
	margin: 2em auto 1em;
	padding: 20px;
	border-radius: 4px;
	box-sizing: border-box;
	color: #fff!important;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	text-decoration: inherit;
	background: #232289;
	box-shadow: 0 6px 0 #010036, 0 12px 0 rgba(0,0,0,.2);
	transition: color .3s, background .3s, box-shadow .3s, transform 0.3s;
	text-align: center;	
}
.btn_blue:hover {
	background: #232289;
	box-shadow: 0 3px 0 #010036, 0 6px 0 rgba(0,0,0,.2);
	transform: translateY(3px);
}
.btn_blue:active {
	color: #fff;
	background: #232289;
	box-shadow: 0 0 0 #010036, 0 0 0 rgba(0,0,0,.2);
	transform: translateY(6px);
	transition-duration: .1s;
}	


.btn {
	display: block;
	cursor: pointer;
	max-width: 420px;
	margin: 2em auto 1em;
	padding: 20px;
	border-radius: 4px;
	box-sizing: border-box;
	color: #fff!important;
	line-height: 1.6;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	text-decoration: inherit;
	background: #20b2aa;
	box-shadow: 0 6px 0 #047c71, 0 12px 0 rgba(0,0,0,.2);
	transition: color .3s, background .3s, box-shadow .3s, transform 0.3s;
}
.btn:hover {
	background: #3cc4bd;
	box-shadow: 0 3px 0 #12978d, 0 6px 0 rgba(0,0,0,.2);
	transform: translateY(3px);
}
.btn:active {
	color: #ddd;
	background: #12978d;
	box-shadow: 0 0 0 #047c71, 0 0 0 rgba(0,0,0,.2);
	transform: translateY(6px);
	transition-duration: .1s;
}
.btn_area{display:flex;flex-wrap: nowrap;}
.btn_link{width: 50%;padding: 15px;}	
@media only screen and (max-width: 768px) {
	.btn_area{display:flex;flex-wrap: wrap;}
    .btn_link{width: 100%;padding: 15px;}	
	}
	

				  
.nav_area {
    padding: 30px 0
}

.nav-list {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
	border-bottom: none;
}

.nav-item {
    margin: 15px auto;
    float: left;
    width: calc(45% - 20px);
    position: relative;
}

.nav-item a {
    display: block;
    background-color: #eee;
    padding: 8px 0;
    text-align: center;
    text-decoration: none;
    border-radius: 30px;
    box-shadow: 3px 3px #668AD8;
    font-size: 17px;
}

.nav-item::after {
    content: '';
    position: absolute;
    right: 20px;
    top: 50%;
    width: 6px;
    height: 6px;
    border-top: 2px solid #668AD8;
    border-right: 2px solid #668AD8;
    transform: translate(0, -50%) rotate(45deg);
}
.nav-item .contact {
    display: block;
    background-color: #eee;
    padding: 8px 0;
    text-align: center;
    text-decoration: none;
    border-radius: 30px;
    box-shadow: 3px 3px #668AD8;
    font-size: 18px;
	line-height: 1.3;
	font-weight: bold
					  }
					  .nav-item .contact span{
					  font-size: 0.7em;
						  font-weight: normal;
					  }		  
				  
		@media screen and (max-width: 767px) {
			.nav-item {
    margin: 10px auto;
    float: left;
    width: 95%;
   
}
			.nav-item a{height: 40px;}
			.nav-item.or01.nav-item a{font-size: 0.9em;}
				.nav-item.or01{
					order: 1;
					
				}
				.nav-item.or02{
					order: 2;
				}
				.nav-item.or03{
					order: 3;
				}
				.nav-item.or04{
					order: 4;
				}
				.nav-item.or05{
					order: 5;
				}
				.nav-item.or06{
					order: 6;
				}
				
				
				
			}	
			.box-019 {
    position: relative;
    margin-top: 1em;
    padding: 1.8em 1.5em 1em 1.5em;
   /* border: 2px solid #2589d0;*/
}

.box-019 > div {
    position: absolute;
    top: -1.15em;
    left: -.5em;
    padding: .4em 1.4em;
    border-radius: 25px;
    background-color: #2589d0;
    color: #fff;
    font-size: .9em;
}

.box-019 > div::before {
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 16px;
    height: 8px;
    background-color: #2589d0;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
}

.box-019 p {
    margin: 0;
}	
					  .red-l{color:#d42d27;}	







