body, p, th, td, li {
    text-align: justify;
    font-size: 18px;
}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
    margin: 0;
    padding: 0;
}
body{font-family:  "游ゴシック Medium","Yu Gothic Medium","游ゴシック","Yu Gothic","游ゴシック体",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif; position: relative;}
.inner{width: 90%; max-width: 1000px; margin: auto;}
.midashi-en{text-align: center; margin-bottom: 5px;}
.midashi-ja{text-align: center; font-size: 36px; line-height: 1.3; font-weight: normal;}
.midashi-ja .large{font-size: 60px; font-weight: bold;}
.midashi-ja .small{font-size: 50px; font-weight: bold;}
.green{color: #00AF28;}
.navy{color: #0D2F40;}
ul{list-style-type:none;}
a{text-decoration: none;}
.contact_btn,.kakunin_btn{
    width: 300px;
    text-align: center;
    color: white;
    font-weight: bold;
    margin: auto;
    padding: 10px;
    border-radius: 30px;
	display: block;
	position: relative;
	font-size: 18px;
}
.contact_btn:after,.kakunin_btn:after{
  content: "";
    position: absolute;
    top: -5px;
    left: -5px;
    width: calc(100% - 0px);
    height: calc(100% - 0px);
    border-radius: 30px;
    padding: 3px
}
.contact_btn:hover{background-color: #DE7003;}
.contact_btn{background: url(../images/contact_btn.png) no-repeat center right 5% #EF9C00;}
.contact_btn:after{border: solid 2px #DE7003;}
.contact_btn:hover{background-color: #DE7003;}
.kakunin_btn{background: url(../images/kasou_btn.png) no-repeat center right 5% #00913A;}
.kakunin_btn:after{border: solid 2px #006934;}
.kakunin_btn:hover{background-color: #006934;}
.pc{display: block ;}
.sp{display: none !important;}
.w960{display: block;}
.w960-2{display: none!important;}
.w768{display: block;}
.w768-2{display: none!important;}
.w642{display: block;}
.w642-2{display: none!important;}
.w428{display: block;}
.w428-2{display: none!important;}
.for-sp{display: none;}
.top_event{width: 90%; max-width: 960px; margin: 50px auto;}
.top_event img{width: 100%;image-rendering:-webkit-optimize-contrast;vertical-align:top;}
.top_event a:hover{opacity:0.5;}
@media (max-width: 768px){
	.pc{display: none !important;}
	.sp{display: block !important;}
}
@media (max-width: 960px){
	.w960{display: none!important;}
	.w960-2{display: block!important;}
	.for-sp{display: block;}
}
@media (max-width: 768px){
	.w768{display: none!important;}
	.w768-2{display: block!important;}
}
@media (max-width: 642px){
	body, p, th, td, li {font-size: 16px;}
	.midashi-en{font-size: 16px;}
	.midashi-ja{font-size: 26px;}
	.midashi-ja .large {font-size: 36px;}
	.midashi-ja .small {font-size: 28px;}
	.sp642{display: none;}
	.w642{display: none!important;}
	.w642-2{display: block!important;}
}
@media (max-width: 428px){
	.w428{display: none!important;}
	.w428-2{display: block!important;}
}
@media (min-width: 428px){
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
}	
}
@media (max-width: 375px){
	.w375{display: block;}
}
@media (max-width: 320px){
	.midashi-ja .large {font-size: 32px;}
	.contact_btn,.kakunin_btn {width: 250px;}
}


/**ヘッダー**********************************************/
header .header__menu{display: flex; align-items: center; justify-content: space-between;}
header .header__flex{display: flex; align-items: center;}
header .header__logo{width: 160px;}
header .header__logo img{
	width: 100%;
	vertical-align:top;
	margin: 0px 20px;
}
header ul.header__nav{
	display: flex;
	justify-content: center;
	margin: 10px 0px 0px 60px;
}
header ul.header__nav li,.header__nav-kotei li{margin-right: 20px;}
header ul.header__nav li:last-child,.header__nav-kotei li:last-child{margin-right: 0px;}
header ul.header__nav li p,.header__nav-kotei li p{text-align: center;color: black;}
header ul.header__nav li p:hover,.header__nav-kotei li p:hover{color: #00AF28;}
header ul.header__nav li span,.header__nav-kotei li span{
	display: block;
	height:8px;
 	width:8px;
 	border-radius:50%;
	background-color: #00AF28;
	margin: 0px auto 3px;
}
header .header__flex--tel{
	color: #1B982A;
	font-size: 40px;
	font-weight: bold;
}
header .header__flex--reception{
	font-size: 14px;
	text-align: right;
	margin-top: -10px;
}
header .header__flex--contact{
	background-color: #FF9D00;
	color: white;
	font-size: 20px;
	font-weight: bold;
	height: 90px;
	padding: 0px 20px;
	margin-left: 20px;
}
header .header__flex--contact:hover{background-color: #DE7003;}
header .header__flex--contact img{
	display: block;
	margin: 13px auto 0px;
}
header .header__mv{
	background: url(../images/mv.jpg) no-repeat;
    background-size: cover;
	position: relative;
	height: 800px;
    background-position: center bottom 10%;
}
header .header__mv--vertical-right,header .header__mv--vertical-left{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	position: absolute;
	letter-spacing: 0.2em;
}
header .header__mv--vertical-right .header__mv--txt,header .header__mv--vertical-left .header__mv--txt{
	background-color: white;
	font-size: 22px;
	display: inline-block;
	padding: 5px 0px;
}
header .header__mv--vertical-right .header__mv--txt{margin-right: 5px;}
header .header__mv--vertical-right .header__mv--txt-green,header .header__mv--vertical-left .header__mv--txt-green{
	font-weight: bold;
	color: #00AF28;
}
header .header__mv--vertical-right{right: 2%;top: 4%;}
header .header__mv--vertical-left{left: 2%;top: 4%;}
header .header__mv--center{
	width: 624px;
	display: block;
	margin: auto;
	position: absolute;
    bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}
/*PCヘッダー固定*/
.menu {
    position: fixed;
    top: -100px;
    right: 0;
    z-index: 9999;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.9);
	filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.4));
    display: flex;
    transition: .8s;
	justify-content: space-between;
}
.menu ul {
    padding-left: 50px;
    display: flex;
}
.header__nav-kotei{
	display: flex;
	justify-content: center;
	margin: 10px 0px 0px 0px;
}
@media (max-width: 1520px){
	header .header__mv{height: 600px;}
	header .header__mv--center{width: 522px;}
}
@media (max-width: 1255px){
	header .header__logo img{width: 80%;}
	header ul.header__nav {margin: 10px 0px 0px 0px;}
	header ul.header__nav li{margin-right: 15px;}
	header .header__flex--tel {font-size: 32px;}
	header .header__flex--contact{font-size: 18px;padding: 0px 10px; margin-left: 10px; height: 80px;}
	header .header__flex--contact img {margin: 13px auto 0px;}
	.menu ul{padding-left: 20px;}
	.header__nav-kotei li p{font-size: 16px;}
}
@media (max-width: 1100px){
	header .header__nav p,header .header__flex--contact{font-size: 16px;}
	header .header__flex--tel {font-size: 30px;}
	header .header__flex--tel span {font-size: 30px;}
	header .header__mv{height: 500px;}
	header .header__mv--vertical-right .header__mv--txt, header .header__mv--vertical-left .header__mv--txt{font-size: 18px;}
	header .header__mv--center {width: 43%;}
	.menu ul {padding-left: 0px;}
}
@media (max-width: 1000px){
	header ul.header__nav li {margin-right: 10px;}
}
@media (max-width: 960px){
	header .header__menu {padding: 5px 0px;}
	header .header__logo img{width: 160px;}
	
/*ナビのスタイル*/
nav.NavMenu{
position: fixed;
z-index: 990;
top: 0;
left: 0;
background: #FF9D00;
text-align: center;
width: 100%;
height: 100%;
display: none;
}

nav.NavMenu ul{
width: 100%;
margin: 0 auto;
padding: 0;
position: absolute;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
}

nav.NavMenu ul li{
font-size: 24px;
list-style-type: none;
width: 100%;
padding-bottom: 0px;
}

nav.NavMenu ul li:last-child{
padding-bottom: 0;
}

nav.NavMenu ul li a{
display: block;
color: #fff;
padding: 8px 0;
font-weight: bold;
font-size: 18px;
	text-align: center;
}
	nav.NavMenu .nav__tel{
		text-align: center;
		color: white;
		font-weight: bold;
		font-size: 30px;
		margin: 10px 0px;
	}
	nav.NavMenu .nav__flex{
		display: flex;
		justify-content: center;
	}
	nav.NavMenu .nav__flex img{
		margin: 0px 8px;
	}
	
/*ボタンのスタイル*/
.Toggle {
position: fixed;
right:18px;
top: 15px;
width: 45px;
height: 45px;
cursor: pointer;
z-index: 999;
display: block;
}

.Toggle span {
display: block;
position: absolute;
width: 35px;
border-bottom: solid 3px #000;
-webkit-transition: .35s ease-in-out;
-moz-transition: .35s ease-in-out;
transition: .35s ease-in-out;
left: 6px;
}

.Toggle span:nth-child(1) {
top: 9px;
}

.Toggle span:nth-child(2) {
top: 20px;
}

.Toggle span:nth-child(3) {
top: 31px;
}

.Toggle.active span:nth-child(1) {
top: 18px;
left: 6px;
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
transform: rotate(-45deg);
border-bottom: solid 3px #fff;
}
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
top: 18px;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
transform: rotate(45deg);
border-bottom: solid 3px #fff;
}
}
@media (max-width: 768px){
	header .header__mv {background: url(../images/mv_w768.jpg) no-repeat; background-size: cover;background-position: center center; height: 480px;}
}
@media (max-width: 642px){
	header .header__mv--center {width: 50%;}
}
@media (max-width: 428px){
	header .header__mv{
	background: url(../images/mv_w428.jpg) no-repeat;
	background-position: center;
	background-size: auto 100%;
		height: 600px;
}
	header .header__mv--vertical-right .header__mv--txt, header .header__mv--vertical-left .header__mv--txt {padding: 0px 5px;}
	header .header__mv--vertical-right,header .header__mv--vertical-left{writing-mode: unset; letter-spacing: 0.1em;}
	header .header__mv--vertical-left{right: 0;left: unset; top: 1%;}
	header .header__mv--vertical-right {top: unset;bottom: 0%; right: unset;}
	header .header__mv--vertical-right .header__mv--txt {margin-right: 0px;margin-bottom: 5px;}
	header .header__mv--center {width: 55%; top: 30%;transform: translateY(-50%) translateX(-50%);}
}
@media (max-width: 375px){
	header .header__logo img {width: 130px;}
	.Toggle{top: 10px;}
	header .header__mv {background-size: cover;height: 500px;}
	header .header__mv--vertical-right .header__mv--txt, header .header__mv--vertical-left .header__mv--txt {font-size: 16px;}	
}
@media (max-width: 320px){
	header .header__mv--vertical-right .header__mv--txt, header .header__mv--vertical-left .header__mv--txt {font-size: 14px;}
	header .header__mv--center {width: 65%;}
}


/**202606追加　キャンペーン告知バナー*******/
.campaign_bnr{
	max-width: 500px;
	width: 80%;
	margin: 100px auto 50px;
	display: block;
}
.campaign_bnr img{width: 100%;}
.campaign_bnr:hover{opacity: 0.6;}
@media (max-width: 768px){
	.campaign_bnr{margin: 60px auto;}
}


/**こんな思いをお持ちの保護者様へ**********************************************/
#problem .problem__flex{
	display: flex;
	align-items: center;
	justify-content: center;
}
#problem .problem__flex img{
	width: 140px;
	padding-top: 100px;
}
#problem ul {
	display: flex;
	justify-content: center;
	margin: 40px auto 90px;
}
#problem li {
    padding: 10px;
    width: 20%;
	height: 130px;
    display: grid;
    align-items: center;
    background-color: #FFFEF4;
    border: 2px solid #0D2F40;
    border-radius: 10px;
	text-align: center;
	position: relative;
	margin-right: 20px;
}
#problem li:last-child{margin-right: 0px;}
#problem li:after{
	content: "";
	position: absolute;
	right: 0;
	bottom: -15px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #0D2F40 transparent transparent transparent;
	border-width: 15px 10px 0 10px;
}
#problem li h3{
	color: #0D2F40;
	font-size: 20px;
}

/*スタート時は要素自体を透過0にするためのopacity:0;を指定する*/
.box{opacity: 0;}
/*アニメーションスタートの遅延時間を決めるCSS*/
.delay-time02{animation-delay: 0.2s;}
.delay-time04{animation-delay: 0.4s;}
/*動き自体の指定*/
.fadeUp {
animation-name:fadeUpAnime;
animation-duration:1s;
animation-fill-mode:forwards;
opacity: 0;
}
@keyframes fadeUpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}

#problem .problem__important{
	display: flex;
	justify-content: space-between;
	text-align: center;
	align-items: center;
}
#problem .problem__important span{
	background-color: #00AF28;
    color: #FFF;
    padding: 0em 0.3em;
    display: inline-block;
    margin-bottom: 0.3em;
	font-weight: bold;
}
#problem .problem__important .problem__important--small{font-size: 40px;}
#problem .problem__important .problem__important--large{font-size: 60px;}
#problem .problem__important img{width: 180px;}

/*アニメーション要素のスタイル*/
.left-right__animation{
	opacity : 0;
	visibility: hidden;
	transition: 1s;
	transform: translateX(-100px);
}
.right-left__animation{
	opacity : 0;
	visibility: hidden;
	transition: 1s;
	transform: translateX(180px);
}
/*アニメーション要素までスクロールした時のスタイル*/
.left-right__animation--active{
	opacity: 1;
	visibility: visible;
	transform: translateX(0);
}
.right-left__animation--active{
	opacity: 1;
	visibility: visible;
	transform: translateX(0);
}

@media (max-width: 1024px){
	#problem .problem__important img {width: 15%;}
}
@media (max-width: 960px){
	#problem .problem__important .problem__important--small {font-size: 30px;}
	#problem .problem__important .problem__important--large {font-size: 50px;}
}
@media (max-width: 768px){
	#problem{margin-top: 60px;}
	#problem .problem__flex{display: block;}
	#problem .problem__flex img {padding-top: 20px;}
	#problem .problem__flex--center{text-align: center;}
	#problem ul{justify-content: space-around; margin: 20px auto 50px;}
	#problem li{width: 50%;}
	#problem .problem__important{display: block;}
	#problem .problem__important .problem__important--small {font-size: 40px;}
	#problem .problem__important .problem__important--large {font-size: 60px;}
	#problem .problem__important img {width: 180px;}
}
@media (max-width: 642px){
	#problem .problem__flex img {width: 100px;}
	#problem ul{display: block;}
	#problem li{width: 100%; margin-right: 0px; padding: 20px 0px;height: auto; margin-bottom: 20px;}
	#problem li:last-child{margin-bottom: 0px;}
	#problem .problem__important .problem__important--small {font-size: 20px;}
	#problem .problem__important .problem__important--large {font-size: 30px;}
	#problem .problem__important img {width: 100px;}
}

/**みらいずが約束する7つのC**********************************************/
#promise{padding-top: 10px;}
#promise .inner-w1280{
	width: 90%;
	max-width: 1280px;
	margin: 100px auto 0px;
	background-color: #FFFCDB;
	border-radius: 10px;
	padding: 4% 0%;
}
#promise h2{
	color: #0D2F40;
	font-weight: bold;
	font-size: 28px;
}
#promise .promise__flex{
	display: flex;
	justify-content: center;
	align-items: flex-start;
	margin-bottom: 30px;
}
#promise .promise__logo{width: 259px;padding-bottom: 10px;}
#promise .promise__marker{
	background: linear-gradient(transparent 60%, #FFD800 60%);
	font-size: 80px;
	color: #E03503;
	margin-left: 10px;
}
#promise .promise__c{
	font-size: 44px;
	font-weight: bold;
	color: #0D2F40;
	margin-top: 8px;
}
#promise .promise__marker .promise__marker-small{font-size: 60px;}
#promise table.promise__box{border-spacing: 0px 20px;}
#promise table.promise__box th{
	background-color: #FFD800;
	border-radius: 10px;
	width: 23%;
	padding: 3%;
}
#promise table.promise__box th div{
	display: flex;
	align-items: center;
}
#promise table.promise__box td{
	padding-left: 3%;
	width: 67%;
}
#promise .promise__box-number{
	font-size: 40px;
	width: 20%;
}
#promise .promise__box-item{
    font-size: 24px;
    font-weight: bold;
    line-height: 1.0;
    border-left: 1px solid #000;
	padding-left: 20px;
}
#promise .promise__box-item span{
	font-size: 18px;
	font-weight: bold;
}
/*アニメーション要素のスタイル*/
.bottom-top__animation{
	opacity : 0;
	visibility: hidden;
	transition: 1s;
	transform: translateY(30px);
}
/*アニメーション要素までスクロールした時のスタイル*/
.bottom-top__animation--active{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
#promise .promise__arrow{
	display: block;
	margin: -20px auto 0px;
}
#promise .promise__bg{
	font-size: 40px;
	font-weight: bold;
	text-align: center;
	margin: 30px 0px 100px;
}
#promise .promise__bg img{width: 259px;}
/*マーカーアニメーション*/
.rb-marker {
    background: linear-gradient(to right, rgba(255, 216, 0, 1) 50%, transparent 50%);
    background: -moz-linear-gradient(left, rgba(255, 216, 0, 1) 50%, transparent 50%);
    background: -webkit-linear-gradient(left, rgba(255, 216, 0, 1) 50%, transparent 50%);
    background-repeat: no-repeat;
    background-size: 200% .8em; 
    background-position: 100% .7em;
    transition: all 1s ease-in;
	padding: 15px 0px;
}
.rb-marker.is-active {
    background-position: 0% .7em;
}
@media (max-width: 1024px){
	#promise table.promise__box th{width: 30%;}
}
@media (max-width: 960px){
	#promise .promise__flex{margin: 10px 0px 0px; align-items: flex-end;}
	#promise .promise__c{text-align: center; margin-top: -10px;}
	#promise .promise__marker{margin-left: 0px; }
}
@media (max-width: 768px){
	#promise table.promise__box th,#promise table.promise__box td {width: 100%;display: block; padding: 0px;}
	#promise table.promise__box th{padding: 2% 0%; margin-bottom: 10px;}
	#promise .promise__box-number {margin-right: 20px; width: 35%;text-align: right;}
}
@media (max-width: 642px){
	#promise {padding-top: 0px;}
	#promise .inner-w1280{margin-top: 60px; padding: 6% 0% 4%;}
	#promise .promise__logo {width: 50%;padding-bottom: 5px;}
	#promise .promise__c{font-size: 20px; margin-top: -5px;}
	#promise .promise__marker{font-size: 50px;}
	#promise .promise__marker .promise__marker-small {font-size: 40px;}
	#promise .promise__box-number{font-size: 26px; width: 15%;}
	#promise .promise__arrow {margin: -10px auto 0px;width: 50px;}
	#promise .promise__bg img {width: 60%;}
	#promise .promise__bg {font-size: 20px;margin: 10px 0px 60px;}
	.rb-marker{padding: 10px 0px;}
}
@media (max-width: 428px){
	#promise h2{font-size: 24px;}
}
@media (max-width: 375px){
	#promise h2{font-size: 22px;}
}
@media (max-width: 320px){
	#promise .promise__box-item span{font-size: 16px;}
	#promise .promise__bg{font-size: 18px;}
}

/**みらいずが選ばれる3つの理由**********************************************/
#reason{
	background-image:
    repeating-linear-gradient(to bottom,
      transparent 25px,
      rgba(215, 241, 250, 0.5) 26px,  rgba(215, 241, 250, 0.5) 26px,
      transparent 27px,  transparent 51px, 
      rgba(215, 241, 250, 0.5) 52px,  rgba(215, 241, 250, 0.5) 52px,
      transparent 53px,  transparent 77px, 
      rgba(215, 241, 250, 0.5) 78px,  rgba(215, 241, 250, 0.5) 78px,
      transparent 79px,  transparent 103px, 
      rgba(215, 241, 250, 0.5) 104px,  rgba(215, 241, 250, 0.5) 104px,
      transparent 105px,  transparent 129px, 
      rgba(215, 241, 250, 0.5) 130px,  rgba(215, 241, 250, 0.5) 130px),
 
    repeating-linear-gradient(to right,
      transparent 25px,
      rgba(215, 241, 250, 0.5) 26px,  rgba(215, 241, 250, 0.5) 26px,
      transparent 27px,  transparent 51px, 
      rgba(215, 241, 250, 0.5) 52px,  rgba(215, 241, 250, 0.5) 52px,
      transparent 53px,  transparent 77px, 
      rgba(215, 241, 250, 0.5) 78px,  rgba(215, 241, 250, 0.5) 78px,
      transparent 79px,  transparent 103px, 
      rgba(215, 241, 250, 0.5) 104px,  rgba(215, 241, 250, 0.5) 104px,
      transparent 105px,  transparent 129px, 
      rgba(215, 241, 250, 0.5) 130px,  rgba(215, 241, 250, 0.5) 130px);
	padding: 100px 0px;
	margin-bottom: 100px;
}

_::-webkit-full-page-media, _:future, :root #reason {
	background-image:
    repeating-linear-gradient(to bottom,
      transparent 25px,
      rgba(215, 241, 250, 0.1) 26px,  rgba(215, 241, 250, 0.1) 26px,
      transparent 27px,  transparent 51px, 
      rgba(215, 241, 250, 0.1) 52px,  rgba(215, 241, 250, 0.1) 52px,
      transparent 53px,  transparent 77px, 
      rgba(215, 241, 250, 0.1) 78px,  rgba(215, 241, 250, 0.1) 78px,
      transparent 79px,  transparent 103px, 
      rgba(215, 241, 250, 0.1) 104px,  rgba(215, 241, 250, 0.1) 104px,
      transparent 105px,  transparent 129px, 
      rgba(215, 241, 250, 0.1) 130px,  rgba(215, 241, 250, 0.1) 130px),
 
    repeating-linear-gradient(to right,
      transparent 25px,
      rgba(215, 241, 250, 0.1) 26px,  rgba(215, 241, 250, 0.1) 26px,
      transparent 27px,  transparent 51px, 
      rgba(215, 241, 250, 0.1) 52px,  rgba(215, 241, 250, 0.1) 52px,
      transparent 53px,  transparent 77px, 
      rgba(215, 241, 250, 0.1) 78px,  rgba(215, 241, 250, 0.1) 78px,
      transparent 79px,  transparent 103px, 
      rgba(215, 241, 250, 0.1) 104px,  rgba(215, 241, 250, 0.1) 104px,
      transparent 105px,  transparent 129px, 
      rgba(215, 241, 250, 0.1) 130px,  rgba(215, 241, 250, 0.1) 130px);
}




#reason ul {
	font-weight: bold;
	margin: 70px 0px 25px;
	display: flex;
    align-items: center;
}
#reason ul li{
	font-size: 40px;
	display: inline-table;
	color: #0D2F40;
	line-height: 1.2;
}
#reason ul li.reason__number,#reason ul li.reason__number2{
    background-color: #0D2F40;
    color: white;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
	width: 60px;
    text-align: center;
	margin-right: 20px;
	padding: 10px 0px;
}
#reason ul li.reason__number2{line-height: 95px;}
#reason .reason__marker,#reason .reason__marker-small{
	background: linear-gradient(transparent 50%, #FFD800 50%);
	font-size: 40px;
	color: #0D2F40;
	padding-bottom: 10px;
}
#reason .reason__marker-small{font-size: 30px;}
#reason .reason__txt{margin-bottom: 30px; line-height: 1.6;}
.reason__wrap {
  display: flex;
  justify-content: space-between;
	align-items: center;
  /*flex-wrap: wrap;*/
}
.reason__wrap--item {width: 20%; padding: 0% 1%;}
.reason__wrap--item img{width: 100%; margin-bottom: 10px;}
.reason__wrap--item p{text-align: center; font-size: 14px;}
#reason .reason__mandala{position: relative; margin-top: 50px;}
#reason .reason__mandala--position1{width: 284px; position: absolute; top: 0; left: 0;}
#reason .reason__mandala--position2{width: 312px; position: absolute; right: 0; bottom: 15%;}
#reason .reason__mandala--center{display: block; margin: auto;}
#reason .reason__flex{display: flex; justify-content: space-between; align-items: flex-start;}
#reason .reason__box{position: relative;}
#reason .reason__box img{width: 362px;display: block;margin: auto; position: absolute; top: 250px; left: 50%; transform: translateX(-50%);}
#reason .reason__pic{width: 400px; margin-left: 3%; height: auto;}
@media (max-width: 850px){
	#reason .reason__flex{display: block;}
	#reason .reason__box img{position: static;display: block; margin: 0 auto 40px;transform: none;}
	#reason .reason__pic{display: block; margin: auto;}
}
@media (max-width: 768px){
	#reason .reason__pic{width: 100%; margin-top: 30px;}
	#reason .reason__mandala--position1,#reason .reason__mandala--position2{width: 40%;}
}
@media (max-width: 642px){
	#reason{padding: 60px 0px; margin-bottom: 60px;}
	#reason ul {margin: 30px 0px 25px;}
	#reason ul li,#reason .reason__marker, #reason .reason__marker-small{font-size: 22px;}
	#reason ul li.reason__number, #reason ul li.reason__number2{width: 40px;}
	#reason ul li.reason__number2 {line-height: 55px;}
	.reason__wrap{display: block; margin-bottom: 60px;}
	.reason__wrap--item {width: 100%;}
	.reason__wrap--item img{width: 50%; display: block; margin: auto;}
	.reason__wrap--item p{margin: 10px 0px 20px;}
	#reason .reason__rotate{transform: rotate( 90deg ); margin: 10px auto;display: block;}
	#reason .reason__mandala{margin-top: 30px; margin-bottom: 60px;}
	#reason .reason__mandala--center{width: 100%;}
	#reason .reason__mandala--position1,#reason .reason__mandala--position2{width: 40%;}
}
@media (max-width: 428px){
	#reason{
	background-image:
    repeating-linear-gradient(to bottom,
      transparent 25px,
      rgba(232, 245, 249, 0.1) 26px,  rgba(232, 245, 249, 0.1) 26px,
      transparent 27px,  transparent 51px, 
      rgba(232, 245, 249, 0.1) 52px,  rgba(232, 245, 249, 0.1) 52px,
      transparent 53px,  transparent 77px, 
      rgba(232, 245, 249, 0.1) 78px,  rgba(232, 245, 249, 0.1) 78px,
      transparent 79px,  transparent 103px, 
      rgba(232, 245, 249, 0.1) 104px,  rgba(232, 245, 249, 0.1) 104px,
      transparent 105px,  transparent 129px, 
      rgba(232, 245, 249, 0.1) 130px,  rgba(232, 245, 249, 0.1) 130px),
 
    repeating-linear-gradient(to right,
      transparent 25px,
      rgba(232, 245, 249, 0.1) 26px,  rgba(232, 245, 249, 0.1) 26px,
      transparent 27px,  transparent 51px, 
      rgba(232, 245, 249, 0.1) 52px,  rgba(232, 245, 249, 0.1) 52px,
      transparent 53px,  transparent 77px, 
      rgba(232, 245, 249, 0.1) 78px,  rgba(232, 245, 249, 0.1) 78px,
      transparent 79px,  transparent 103px, 
      rgba(232, 245, 249, 0.1) 104px,  rgba(232, 245, 249, 0.1) 104px,
      transparent 105px,  transparent 129px, 
      rgba(232, 245, 249, 0.1) 130px,  rgba(232, 245, 249, 0.1) 130px);
}
	#reason .reason__box img{width: 80%;}
	#reason .reason__mandala--position2{bottom: 0;}
}
@media (max-width: 320px){
	#reason ul li.reason__number, #reason ul li.reason__number2{margin-right: 10px;}
	#reason ul li, #reason .reason__marker, #reason .reason__marker-small {font-size: 19px;}
}

/**お知らせ**********************************************/
#news .news__flex{
	display: flex;
	justify-content: space-between;
}
#news .news__facebook,#news .news__blog{width: 45%;}
#news .news__facebook--midashi,#news .news__blog--midashi{
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    margin: 50px 0px;
	position: relative;
}
#news .news__facebook--midashi:before,#news .news__blog--midashi:before,#news .news__line--midashi:before{
	top: 40px;
	left: calc(50% - 10px);
	width: 25px;
	height: 3px;
	content: '';
	border-radius: 3px;
	background: #000;
	position: absolute;
}
#news .news__blog--flex,#news .news__blog--flex2{display: flex;}
#news .news__blog--flex{
	border-bottom: 1px solid #707070;
	padding: 10px 0px;
}
#news .news__blog--img{
	border-radius: 10px;
	margin-right: 10px;
	width: 150px;
	height: 103px;
}
#news .news__blog--width{
	width: 65%;
}
#news .news__blog--flex .news__blog--date{
	font-size: 16px;
	color: #0D2F40;
}
#news .news__blog--flex .news__blog--category{
	font-size: 14px;
	color: white;
	padding: 0px 3px;
    margin-left: 5px;
	padding-top: 2px;
}
#news .news__blog--flex .news__blog--ttl{
	font-size: 18px;
	font-weight: bold;
	line-height: 1.2;
	margin-top: 15px;
	color: black;
}
#news .news__line--midashi{
    text-align: center;
    font-size: 24px;
    font-weight: bold;
	position: relative;
	margin-bottom: 50px;
}
#news .news__line{
	background-color: #DFFCE7;
	padding: 40px;
	margin-top: 50px;
}
#news .news__line--flex{display: flex; justify-content: center; align-items: center;}
#news .news__line--flex img{margin-right: 20px;}
#news .news__line--flex a:hover{opacity: 0.5}
@media (max-width: 960px){
	#news .news__facebook, #news .news__blog {width: 49%;}
}
@media (max-width: 768px){
	#news .news__flex{display: block;}
	#news .news__facebook, #news .news__blog {width: 100%; text-align: center;}
	#news .news__facebook--midashi, #news .news__blog--midashi{margin: 30px 0px; font-size: 18px;}
	#news .news__facebook--midashi:before, #news .news__blog--midashi:before, #news .news__line--midashi:before{top: 35px;}
	#news .news__blog--flex .news__blog--ttl{text-align: justify;}
	#news .news__blog--width{width: 80%;}
	#news .news__line--midashi{margin-bottom: 30px; font-size: 18px;}
	#news .news__line--flex{display: block;}
	#news .news__line--flex img {margin: 0px auto 10px; display: block;}
	#news .news__line--flex p{text-align: center;}
	#news .news__line{margin-top: 30px; padding: 20px;}
}
@media (max-width: 428px){
	#news .news__blog--flex{display: block;}
	#news .news__blog--flex img{width: 100%; margin: 0 auto 10px;}
	#news .news__blog--flex .news__blog--ttl{margin: 10px auto;}
	#news .news__blog--img{width: 100%; height: 200px;margin-bottom: 15px;}
	#news .news__blog--width{width: 100%;}
}


/**保護者の声**********************************************/
#voice{margin: 100px 0px 20px;}
#voice .voice__txt{text-align: center; margin: 10px 0px 80px;}
#voice .voice__wrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 90%;
	max-width: 800px;
	margin: auto;
}
#voice .voice__wrap--box {
	padding: 30px;
	position: relative;
	width: 37%;
	border-radius: 10px;
	margin-bottom: 80px;
	display: flex;
    justify-content: end;
}
#voice .voice__wrap--midashi {
    color: white;
    font-size: 20px;
    font-weight: bold;
    border-radius: 30px;
    text-align: center;
    line-height: 1.2;
    height: 55px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
	left: 50%;
	transform: translateX(-50%);
    width: 90%;
    margin: -60px auto 0px;
}
.bg__pink{background-color: #FF5892;}
.bg__orange{background-color: #FF9300;}
.bg__blue{background-color: #24B6FF;}
.bg__purple{background-color: #6A5DFF;}

/**slickスライダー**/
.slide{
	/*margin:0 auto 20px;
	width: 80%;*/
	width: 90%;
	margin: 0 5%;
}
.slide-prev,.slide-next{
	position: absolute;
	top: 50%;
	height: 100px;
	margin-top: -50px;
	cursor: pointer; 
	z-index: 10;
}
.slide-prev{left:0;}
.slide-next{right:0;}
.slide .voice__item img{
	width: 140px;
	margin: 20px auto;
	display: block;
} 
.slide .voice__item p{font-size: 18px; padding: 0px 10px;}
.b_pink{border: 2px solid #FF5892;}
.b_orange{border: 2px solid #FF9300;}
.b_blue{border: 2px solid #24B6FF;}
.b_purple{border: 2px solid #6A5DFF;}
@media (max-width: 960px){
	#voice .voice__wrap--box{width: 35%;}
}
@media (max-width: 768px){
	#voice {margin: 100px 0px;}
	#voice .voice__wrap{display: block;}
	#voice .voice__wrap--box {width: 90%;margin-bottom: 50px; padding: 5%;}
}
@media (max-width: 642px){
	#voice {margin: 60px 0px;}
	#voice .voice__wrap--midashi{margin-top: -55px;}
	.slide .voice__item p {font-size: 16px;}
}
@media (max-width: 428px){
	#voice .voice__wrap--midashi{margin-top: -45px;}
}
@media (max-width: 320px){
	.slide .voice__item p {padding: 0px 10px;}
}

/**利用の流れ**********************************************/
#flow .flow__line{
    border-bottom: 5px dotted #4AD6A5;
	position: relative;
    top: 120px;
    z-index: -999;
    width: 80%;
    margin: auto;
}
#flow .flow__flex{display: flex; justify-content: space-between; margin-bottom: 60px;}
#flow .flow__flex--box{width: 250px;}
#flow .flow__flex--box-step{
    border: 10px solid #4AD6A5;
	background-color: white;
	width: 110px;
	height: 110px;
	border-radius: 50%;
	text-align: center;
	margin: 50px auto 30px;
	line-height: 0.7;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
#flow .flow__flex--box-step .small{font-size: 20px;}
#flow .flow__flex--box-step .large{font-size: 30px; font-weight: bold;}
#flow .flow__flex--box img{
	width: 152.5px;
	margin: 15px auto 20px;
    display: block;
}
#flow .flow__flex--box-midashi{
	font-size: 28px;
	font-weight: bold;
	color: #0D2F40;
	text-align: center;
}
@media (max-width: 960px){
	#flow .flow__flex--box {width: 30%;}
	#flow .flow__flex--box-midashi{font-size: 24px;}
}
@media (max-width: 768px){
	#flow .flow_sp{margin: 40px 0px;}
	#flow .flow__flex--box-step{margin: 0px;width: 90px;height: 90px;z-index: 1;position: relative;}
	#flow .flow__item{border-left: 5px dotted #4AD6A5;margin-left: 53px;padding: 0% 5% 5%; margin-top: -30px;}
	#flow .flow__item:last-child{border-left:none;}
	#flow .flow__item img{width: 100px;display: block;margin: 10px auto;}
}
@media (max-width: 642px){
	#flow {margin-bottom: 60px;}
	#flow .flow__flex--box-step .small {font-size: 16px;}
	#flow .flow__flex--box-step .large {font-size: 22px;}
	#flow .flow__flex--box-step { width: 70px;height: 70px;border: 6px solid #4AD6A5;}
	#flow .flow__item {margin-left: 39px;margin-top: -55px;}
}
@media (max-width: 320px){
	#flow .flow_sp {margin: 20px 0px;}
	#flow .flow__flex--box-midashi {font-size: 20px;}
	#flow .flow__item {padding: 0% 8% 5%;}
}

/**コース内容**********************************************/
#corse{
	background: linear-gradient(180deg, #DFFCE7 0%, #DFFCE7 73%, #fff 73%, #fff 100%);
	padding: 110px 0px;
	margin-top: 100px;
}
#corse .corse__txt{text-align: center; margin: 15px 0px;}
#corse .corse__txt span{font-weight: bold; color: #009B23;}
#corse .corse__box{
    border: 2px solid #00AF28;
	border-radius: 10px;
	background-color: white;
	padding: 30px;
	margin-top: 45px;
}
#corse .corse__flex{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
}
#corse .corse__flex:last-child{margin-bottom: 0px;}
#corse .corse__flex--midashi{
	color: white;
	font-size: 20px;
	font-weight: bold;
	background-color: #00AF28;
	border-radius: 10px;
	text-align: center;
	width: 30%;
	height: 80px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	line-height: 1.3;
}
#corse .corse__flex p{width: 67%;}
@media (max-width: 960px){
	#corse .corse__flex--midashi{width: 40%;}
	#corse .corse__flex p {width: 57%;}
}
@media (max-width: 768px){
	#corse {background: linear-gradient(180deg, #DFFCE7 0%, #DFFCE7 69%, #fff 69%, #fff 100%); padding: 60px 0px;}
	#corse .corse__box{margin-top: 30px; padding: 30px 30px 10px;}
	#corse .corse__flex{display: block;}
	#corse .corse__flex--midashi {width: 100%;}
	#corse .corse__flex p {width: 100%;margin: 10px 0px 20px;}	
}
@media (max-width: 320px){
	#corse .corse__flex--midashi {font-size: 18px;}
}

/**みらいずの料金体制**********************************************/
#price{margin: 30px auto 100px;}
#price .price__wribiki{
	width: 250px;
	text-align: center;
	font-weight: bold;
	color: #F46D45;
	margin-top: 40px;
}
#price .price__flex{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#price .price__box{
	width: 250px;
	text-align: center;
}
#price .price__box h3{
	font-size: 28px;
	color: #0D2F40;
	margin-bottom: 30px;
}
#price .price__box img{
	display: block;
	margin: auto;
	width: 60%;
}
#price .price__box--annotation{
    background-color: #00AF28;
    border-radius: 10px;
	height: 70px;
	display: flex;
  justify-content: center;
  align-items: center;
	margin-top: 30px;
}
#price .price__box--annotation p{
	color: white;
	text-align: center;
	line-height: 1.3;
}
#price .price__box--annotation p span{
	font-size: 30px;
	font-weight: bold;
}
#price .price__flex--plus{
	position: relative;
  width: 30px;
  height: 30px;
  margin: -30px auto 0px;
}
#price .price__flex--plus:before,#price .price__flex--plus:after{
	display: block;
  content: '';
  background-color: #0D2F40;
  position: absolute;
  width: 30px;
  height: 5px;
  top: 12px;
  left: 0;
}
#price .price__flex--plus:before{
	width: 5px;
  height: 30px;
  top: 0;
  left: 12px;
}
@media (max-width: 768px){
	#price .price__wribiki{width: 80%; margin: 40px auto 0px;}
	#price .price__flex{display: block;}
	#price .price__box{width: 80%; margin: auto;}
	#price .price__box h3 {margin-bottom: 20px; font-size: 24px;}
	#price .price__box img{width: 100px;}
	#price .price__box--annotation{height: auto; padding: 10px 0px;}
	#price .price__flex--plus {margin: 20px auto;}
}
@media (max-width: 642px){
	#price{margin: 0px auto 60px;}
	#price .price__wribiki {margin: 20px auto 0px;}
}

/**小・中・高**********************************************/
#gakusei .inner__w800{
	width: 90%;
	max-width: 800px;
	margin: 70px auto 0px;
}
#gakusei .gakusei__item,#gakusei .gakusei__item2,#gakusei .gakusei__item3,#gakusei .gakusei__item4{
	position: relative;
}
#gakusei .gakusei__item{color: #FC5CB8;}
#gakusei .gakusei__item2{color: #875EF5;}
#gakusei .gakusei__item3{color: #009FF4;}
#gakusei .gakusei__item4{color: #0D2F40;}
#gakusei .gakusei__item:before,#gakusei .gakusei__item2:before,#gakusei .gakusei__item3:before,#gakusei .gakusei__item4:before{
	position: absolute;
	top: calc(50% - 3px);
	width: 100%;
	height: 6px;
	content: '';
	z-index: -1;
}
#gakusei .gakusei__item:before{
	border-top: solid 1px #FC5CB8;
	border-bottom: solid 1px #FC5CB8;
}
#gakusei .gakusei__item2:before{
	border-top: solid 1px #875EF5;
	border-bottom: solid 1px #875EF5;
}
#gakusei .gakusei__item3:before{
	border-top: solid 1px #009FF4;
	border-bottom: solid 1px #009FF4;
}
#gakusei .gakusei__item4:before{
	border-top: solid 1px #0D2F40;
	border-bottom: solid 1px #0D2F40;
}
#gakusei .gakusei__item:before,#gakusei .gakusei__item2:before,#gakusei .gakusei__item3:before,#gakusei .gakusei__item4:before{left: 0;}
#gakusei .gakusei__item p,#gakusei .gakusei__item2 p,#gakusei .gakusei__item3 p,#gakusei .gakusei__item4 p{
	text-align: center;
	font-size: 40px;
	font-weight: bold;
	background-color: #fff;
	display: table;
    margin: auto;
	padding: 0 20px;
	line-height: 1.3;
}
#gakusei .gakusei__flex{display: flex; margin: 20px 0px 40px;align-items: stretch;}
#gakusei .gakusei__pic{width: 17%; margin-right: 3%;}
#gakusei .gakusei__txt{
    width: 80%;
    font-size: 20px;
	background-color: #fff;
    background-image: linear-gradient(90deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 50%, #fff 0%, #fff 100%), linear-gradient(180deg, rgba(100, 100, 100, 0) 0%, rgba(100, 100, 100, 0) 96%, #707070 100%);
    background-size: 5px 100%,100% 2em;
    line-height: 2em;
}
#gakusei .gakusei__wrap {
  display: flex;
  justify-content: space-between;
	margin-bottom: 90px;
  /*flex-wrap: wrap;*/
}
#gakusei .gakusei__wrap--width{width: 48%;}
#gakusei .gakusei__wrap--center{
	text-align: center;
	margin: 10px 0px;
}
#gakusei .gakusei__wrap--center span{
	background: 
	url(../images/gakusei_point.png) no-repeat center left,
	url(../images/gakusei_point2.png) no-repeat center right;
	padding: 0px 20px;
}
#gakusei .gakusei__wrap--item {
	padding: 50px 5%;
    border-radius: 20px;
	position: relative;
}
#gakusei .gakusei__wrap--item-ttl{
	font-size: 28px;
	font-weight: bold;
	text-align: center;
}
#gakusei .gakusei__wrap--item-price{
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	color: #0D2F40;
}
#gakusei .price-small{font-size: 14px; font-weight: bold;}
#gakusei .gakusei__wrap--item-price .price-gakusei{font-size: 18px; font-weight: normal;}
#gakusei .gakusei__wrap--item-contents{
    border-top: 1px solid #707070;
	border-bottom: 1px solid #707070;
	margin: 20px 0px;
	padding: 10px 0px;
	display: flex;
    justify-content: center;
    align-items: center;
	height: 90px;
}
#gakusei .gakusei__wrap--item-contents p{
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	color: #0D2F40;
	line-height: 1.3;
}
#gakusei .gakusei__wrap--item-contents p span{font-size: 18px;}
#gakusei .gakusei__wrap--item-f18{font-size: 18px; text-align: center;}
#gakusei .gakusei__wrap--item-f16{font-size: 16px; text-align: center; margin-top: 10px;height: 2em;}
#gakusei .gakusei__wrap--item-f16-2{font-size: 16px; text-align: center; margin-top: 10px; height: 100px;}
#gakusei .gakusei__wrap--item-f16-2 span{font-size: 14px;}
#gakusei .gakusei__bg-pink{background-color: #FFF7F7;}
#gakusei .gakusei__bg-purple{background-color: #FDF4FF; border-radius: 20px;}
#gakusei .gakusei__bg-blue{background-color: #EAFFFE;}
#gakusei .gakusei__bg-indigo{background-color: #E4F0F5;margin: 30px 0 90px;}
#gakusei .gakusei__moji-pink{color: #FC5CB8;}
#gakusei .gakusei__moji-purple{color: #875EF5;}
#gakusei .gakusei__moji-blue{color: #009FF4;}
#gakusei .gakusei__wrap--btn{
    text-align: center;
    color: white;
    font-weight: bold;
    border-radius: 30px;
    display: block;
    margin: auto;
    padding: 8px 10px;
    background: url(../images/gakusei_arrow.png) no-repeat center right 5% #0D2F40;
	width: 200px;
	position: absolute;
    left: 50%;
	bottom: -20px;
	transform: translateX(-50%);
}
#gakusei .gakusei__wrap--btn:hover{
    background-color: white;
    color: #0D2F40;
    border: 1px solid #0D2F40;
}
#gakusei .gakusei__wrap--plus,#gakusei .gakusei__wrap--plus2{
  position: relative;
  width: 30px;
  height: 30px;
  margin: 30px auto 10px;
}
#gakusei .gakusei__wrap--plus:before,#gakusei .gakusei__wrap--plus:after,#gakusei .gakusei__wrap--plus2:before,#gakusei .gakusei__wrap--plus2:after{
	display: block;
  content: '';
  background-color: #0D2F40;
  position: absolute;
  width: 30px;
  height: 5px;
  top: 12px;
  left: 0;
}
#gakusei .gakusei__wrap--plus:before,#gakusei .gakusei__wrap--plus2:before{
	width: 5px;
  height: 30px;
  top: 0;
  left: 12px;
}
#gakusei .gakusei__wrap--flex{
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-radius: 20px;
	padding: 3% 5%;
	font-size: 20px;
	color: #0D2F40;
	font-weight: bold;
}
#gakusei .gakusei__wrap--flex:nth-of-type(2){padding: 0% 5% 3%;}
#gakusei .gakusei__wrap--item-height{
	height: 180px;
	display:flex;
	justify-content:center;
	align-items:center;
}
#gakusei .gakusei__test{
	font-size: 24px;
	font-weight: bold;
	color: #875EF5;
	text-align: center;
	margin: -60px 0px 90px;
}
#gakusei .gakusei__zeikomi{font-size: 16px; text-align: right;margin-bottom: 30px;}
#gakusei .gakusei__movie{display: flex; align-items: flex-start; width: 100%;justify-content: space-between;}
#gakusei .gakusei__movie--qt{ width: 48%;}
#gakusei .gakusei__movie--ai{ width: 48%;text-align: right;}

/*202606追加*/
#gakusei .bnr_qureo{
	max-width: 320px;
	width: 90%;
	margin: 30px auto;
	display: block;
}
#gakusei .qureo_txt{
	text-align: center;
}
#gakusei .gakusei__syuu1corse{
	width: 100%;
	margin-bottom: 90px;
}
#gakusei .gakusei__syuu1corse_name{
	max-width: 350px;
	width: 100%;
	background-color: #FC5CB8;
	text-align:center;
	margin: 40px auto 20px;
	border-radius: 50px;
	color: #fff;
	font-weight: bold;
	font-size: 20px;
	padding: 10px 0;
}
#gakusei .gakusei__syuu1corse_txt{
	color: #0D2F40;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}
#gakusei .gakusei__syuu1corse .gakusei__wrap--plus{
	margin: 10px auto 10px!important;
}
#gakusei .gakusei__syuu1corse_matome{
	text-align: center;
	border-top: 1px solid #707070;
	margin-top: 50px;
	padding-top: 30px;
}

@media (max-width: 865px){
	#gakusei .gakusei__wrap{display: block;}
	#gakusei .gakusei__wrap--width{width: 100%;margin-bottom: 50px;}
	#gakusei .gakusei__wrap--item-contents{height: auto;padding: 20px 0px;}
	#gakusei .gakusei__wrap--item-f16-2{height: auto;}
	#gakusei .gakusei__wrap--plus2{margin: 10px auto;}
	#gakusei .gakusei__wrap--item-height{height: auto;}
	#gakusei .gakusei__movie{display: block;}
	#gakusei .gakusei__movie--qt{ width: 75%;text-align: center;margin: 0 auto 50px;}
	#gakusei .gakusei__movie--ai{ width: 100%;text-align: center;}
}
@media (max-width: 642px){
	#gakusei .inner__w800{margin: 0px auto;}
	#gakusei .gakusei__item, #gakusei .gakusei__item2, #gakusei .gakusei__item3, #gakusei .gakusei__item4{font-size: 30px;}
	#gakusei .gakusei__item p, #gakusei .gakusei__item2 p, #gakusei .gakusei__item3 p, #gakusei .gakusei__item4 p{font-size: 28px;}
	#gakusei .gakusei__flex{display: block;}
	#gakusei .gakusei__pic{margin-right: 0%;display: block; margin: 0px auto 10px;}
	#gakusei .gakusei__txt{width: 100%;font-size: 18px;}
	#gakusei .gakusei__wrap--item-ttl{font-size: 22px;}
	#gakusei .gakusei__wrap--item-price{font-size: 24px;}
	#gakusei .gakusei__wrap--item-contents p{font-size: 20px;}
	#gakusei .gakusei__wrap--item-f18{font-size: 16px;}
	#gakusei .gakusei__zeikomi {font-size: 14px;}
}
@media (max-width: 428px){
	#gakusei .gakusei__pic {width: 30%;}
	#gakusei .gakusei__wrap{margin-bottom: 60px;}
	#gakusei .gakusei__test {font-size: 18px;margin: -30px 0px 60px;}
	#gakusei .gakusei__movie--qt{ width: 100%;margin: 0 auto 30px;}
	#gakusei .gakusei__syuu1corse_name{font-size: 18px;}
	#gakusei .gakusei__syuu1corse_txt{font-size: 16px;}
}
@media (max-width: 375px){
	#gakusei .gakusei__wrap--item-f18{font-size: 13px;}
	#gakusei .gakusei__wrap--item-f16,#gakusei .gakusei__wrap--item-f16-2,#gakusei .gakusei__wrap--item-f16-2 span{font-size: 12px;}
	#gakusei .gakusei__item p, #gakusei .gakusei__item2 p, #gakusei .gakusei__item3 p, #gakusei .gakusei__item4 p{font-size: 20px;}
}
@media (max-width: 320px){
	#gakusei .gakusei__pic {width: 50%;}
	#gakusei .gakusei__txt,#gakusei .gakusei__test {font-size: 16px;}
	#gakusei .gakusei__wrap--center {font-size: 14px;}
}

/**オンライン**********************************************/
#online .inner{position: relative;}
#online img{width: 100%; margin: 100px 0px;}
#online .online__box{
	position: absolute;
	right: 4%;
	top: 50%;
	transform: translateY(-50%);
}
#online .online__box--txt{
	font-size: 40px;
	font-weight: bold;
	background-color: #FFC400;
	color: white;
	padding: 0px 20px;
    display: inline-block;
	margin-bottom: 5px;
}
#online .online__box--txt:last-child{margin-bottom: 0px;}
#online .online__txt--large{font-weight: normal;}
#online .online__txt--small{font-size: 20px; font-weight: normal;}
@media (max-width: 960px){
	#online .online__box--txt{font-size: 30px;}
}
@media (max-width: 642px){
	#online img {margin: 60px 0px 40px;padding-bottom: 50px;}
	#online .online__box{text-align: center;left:50%;transform: translateX(-50%);bottom: 0;width: 100%;}
}
@media (max-width: 428px){
	#online .online__box--txt {font-size: 20px;}
	#online .online__txt--small {font-size: 16px;}
}
@media (max-width: 320px){
	#online .online__box--txt {font-size: 18px;}
	#online .online__box {top: 55%;}
}

/**時間割**********************************************/
#timetable .timetable__schedule{
	width: 100%;
	border-spacing: 0;
	margin: 20px 0px;
}
#timetable .timetable__schedule th, #timetable .timetable__schedule td {
	padding: 5px;
	border-bottom: 1px solid #cccccc;
	border-right: 1px solid #cccccc;
	text-align: center;
	vertical-align: middle;
}
#timetable .timetable__schedule th {
	background: #054113;
	color: white;
}
#timetable .timetable__box{
    text-align: center;
    border-top: 1px solid #000000;
	padding-top: 20px;
	margin-top: 50px;
}
#timetable ul.timetable__box--txt{
	display: inline-block;
    text-align: left;
}
#timetable ul.timetable__box--txt li{
	padding-left: 1em;
    text-indent: -1em;
	font-size: 16px;
}
#timetable .timetable__box--txt-blue{font-weight: bold; color: #4AA4FF;}
#timetable .timetable__box--txt-green{font-weight: bold;color: #80D608;}
#timetable .timetable__box p{
	color: #00AF28;
	font-size: 20px;
	text-align: center;
	margin: 20px 0px 100px;
}
#timetable .timetable__box p span{font-weight: bold;}


#timetable .school__item{
	position: relative;
	text-align: center;
	margin: 50px 0px 20px;
}
#timetable .school__item p{
	font-size: 36px;
    font-weight: bold;
    color: #0D2F40;
    background-color: white;
    display: inline;
    padding: 0px 10px;
	position: inherit;
	z-index: 10;
}
#timetable .school__item p span{font-size: 26px;}
#timetable .school__item:before,#timetable .school__item:after{
	position: absolute;
	top: calc(50% - 0px);
	width: 40%;
	height: 6px;
	content: '';
	border-top: solid 1px #0D2F40;
}
#timetable .school__item:before{left: 0;}
#timetable .school__item:after{right: 0;}

@media (max-width: 642px){
	#timetable .timetable__box{margin-top: 30px;}
	#timetable .timetable__box p {margin: 20px 0px 60px;}
	#timetable .timetable__scroll{overflow-x: scroll;}
	#timetable .timetable__schedule{width: 700px;}
	#timetable .timetable__schedule th.sticky{position: sticky;top: 0;left: 0; width: 20%;}
	
	#timetable .school__item {margin: 20px 0px 0px;}
	#timetable .school__item p {font-size: 26px;}
	#timetable .school__item p span {font-size: 20px;}
}
@media (max-width: 375px){
	#timetable .timetable__box p {font-size: 18px;}
}

/**割引・特待制度**********************************************/
#system{
	background: linear-gradient(180deg, #FFF1ED 0%, #FFF1ED 70%, #fff 70%, #fff 100%);
	padding: 60px 0px;
}
#system .inner{position: relative;}
#system .system__txt{text-align: center; margin: 15px 0px;}
#system .system__box{
    border: 2px solid #F46D45;
	border-radius: 10px;
	background-color: white;
	padding: 30px;
	margin-top: 45px;
}
#system .system__flex{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
}
#system .system__flex:last-child{margin-bottom: 0px;}
#system .system__flex--midashi{
	color: white;
	font-size: 20px;
	font-weight: bold;
	background-color: #F46D45;
	border-radius: 10px;
	text-align: center;
	width: 30%;
	height: 80px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	line-height: 1.3;
}
#system .system__flex p{width: 67%;}
#system .system__exemption{
    background-color: #F46D45;
	width: 170px;
	height: 170px;
    border-radius: 50%;
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
	position: absolute;
	right: 2%;
    bottom: 26%;
}
#system .system__exemption p{
	text-align: center;
	color: white;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.2;
}
#system .system__exemption p span{font-size: 20px;}
@media (max-width: 960px){
	#system .system__flex--midashi {width: 40%;}
	#system .system__flex p {width: 57%;}
	#system .system__exemption {width: 140px;height: 140px;bottom: 31%;}
	#system .system__exemption p {font-size: 20px;}
}
@media (max-width: 768px){
	#system{margin-bottom: 20px;}
	#system .system__box {margin-top: 30px;padding: 30px 30px 40px;}
	#system .system__flex{display: block;}
	#system .system__flex--midashi {width: 100%;}
	#system .system__flex p {width: 100%;margin: 10px 0px 20px;}
	#system .system__exemption{
		bottom: -6%;
		left: 50%;
		transform: translateX(-50%);
		border-radius: 10px;
		width: 70%;
		height: auto;
		padding: 10px 0px
	}
}

/**教室案内**********************************************/
#school{margin: 100px 0px;}
#school .school__item{
	position: relative;
	text-align: center;
	margin: 50px 0px 20px;
}
#school .school__item p{
	font-size: 36px;
    font-weight: bold;
    color: #0D2F40;
    background-color: white;
    display: inline;
    padding: 0px 10px;
	position: inherit;
	z-index: 10;
}
#school .school__item p span{font-size: 26px;}
#school .school__item:before,#school .school__item:after{
	position: absolute;
	top: calc(50% - 0px);
	width: 40%;
	height: 6px;
	content: '';
	border-top: solid 1px #0D2F40;
}
#school .school__item:before{left: 0;}
#school .school__item:after{right: 0;}
#school .school__flex{display: flex;}
#school .school__pic,#school iframe{width: 50%;}
#school iframe{
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}
#school .school__pic img{
	width: 100%;
	vertical-align:top;
	border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}
#school .school__wrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
	margin-top: 15px;
}
#school .school__wrap--item{width: 24%;}
#school .school__wrap--item img{
	width: 100%;
	border-radius: 10px;
	vertical-align:top;
}
#school .inner__w800{
	width: 90%;
	max-width: 800px;
	margin: auto;
}
#school table.school__access{
	width: 100%;
	border-spacing: 0;
	border-bottom: 1px solid #707070;
	margin: 50px 0px 100px;
}
#school table.school__access th{
	width: 20%;
	background-color: #F6F7F7;
    text-align: center;
    color: #0D2F40;
	padding: 10px 0px;
}
#school table.school__access td{
	width: 80%;
	padding: 10px 20px;
}
#school table.school__access th,#school table.school__access td{
    border-top: 1px solid #707070;
}
#school table.school__access td p span{font-weight: bold;}
@media (max-width: 960px){
	#school .inner__w800{width: 100%;max-width: 900px;}
	#school table.school__access {margin: 20px 0px 60px;}
}
@media (max-width: 642px){
	#school {margin: 60px 0px;}
	#school .school__item {margin: 20px 0px 20px;}
	#school .school__item p {font-size: 26px;}
	#school .school__item p span {font-size: 20px;}
	#school .school__flex{display: block;}
	#school .school__pic,#school iframe {width: 100%;}
	#school .school__pic img{border-radius:10px;}
	#school .school__wrap--item{width: 49%;}
	#school .school__wrap--item img {margin-bottom: 10px;}
	#school table.school__access th,#school table.school__access td{width: 100%;display: block;}
	#school table.school__access td{padding: 2% 0%;}
	#school iframe {border-radius: 10px; height: 300px;margin-top: 10px;}
}

/**ページトップに戻るボタン**********************************************/
#page_top  {
    background-color: #1B982A;
    right: 1%;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
#page_top a{
 align-items: center;
  color: #fff;
  display: flex;
  justify-content: center;
  height: 60px;
  text-align: center;
  text-decoration: none;
  width: 70px;
}
@media (max-width: 428px){
	#page_top a{height: 40px;}
}

/**フッター**********************************************/
footer{background-color: #F6F7F7; padding-top: 30px;}
footer ul{display: flex; justify-content: center;}
footer ul li{margin-right: 40px;}
footer ul li:last-child{margin-right: 0px;}
footer ul li p{text-align: center;color: black;}
footer ul li p:hover{color: #00AF28;}
footer ul li span{
	display: block;
	height:8px;
 	width:8px;
 	border-radius:50%;
	background-color: #00AF28;
	margin: 0px auto 3px;
}
footer .footer__logo{
	width: 160px;
	margin: 30px auto 10px;
	display: block;
}
footer .footer__logo img{width: 100%;}
footer .footer__tel{
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}
footer .footer__tel a{
	color: #0D2F40;
}
footer .footer__tel img{vertical-align: text-bottom;}
footer .footer__tel span{
	font-weight: normal;
	font-size: 14px;
	line-height: 1.4;
    display: block;
    margin: 10px 0px 20px;
	color: #0D2F40;
}
footer .footer__sns{
	display: flex;
	justify-content: center;
	margin: 20px 0px 30px;
}
footer .footer__sns img{
	vertical-align:top;
	padding: 0px 5px;
}
footer .footer__copy{
	text-align: center;
	color: white;
	font-size: 14px;
	background-color: #0D2F40;
	padding: 5px 0px;
}

@media (max-width: 960px){
	footer .footer__copy {margin-bottom: 60px;}
/*メニューをページ下部に固定*/
#sp-fixed-menu{
   position: fixed;
   width: 100%;
   bottom: 0px;
   font-size: 0;
   z-index: 99;
}

/*メニューを横並びにする*/
#sp-fixed-menu ul{
   display: flex;
   list-style: none;
   padding:0;
   margin:0;
   width:100%;
	height: 60px;
}

#sp-fixed-menu li{
   justify-content: center;
   align-items: center;
   width: 50%;
   padding:0;
   margin:0;
   font-size: 18px;
	font-weight: bold;
   border-right: 1px solid #fff;
	display: flex;
}
#sp-fixed-menu li:last-child{border-right: none;}
/*左側メニューをオレンジ色に*/
#sp-fixed-menu li:first-child{
   background: #FFC400;
}

/*右側メニューを緑色に*/
#sp-fixed-menu li:last-child{
   background: #05CE34;
}

/*ボタンを調整*/
#sp-fixed-menu li a{
   color: #000;
   text-align: center;
   display:block;
   padding:20px;
}
	#sp-fixed-menu li img{width: 12%;}
}
@media (max-width: 768px){
	footer ul li {margin-right: 25px;}
}
@media (max-width: 428px){
	footer {padding-top: 5px;}
	#sp-fixed-menu li{font-size: 16px;}
}
@media (max-width: 320px){
	footer .footer__tel span{font-size: 13px;}
	#sp-fixed-menu li {font-size: 14px;}
	#sp-fixed-menu li a {padding: 0px;}
}