@charset "UTF-8";

figure{margin: 0;display: grid;justify-content: center;}
figure img{object-fit: cover;}


section .Wrapper{padding-right: 20px;padding-left: 20px;padding-top: 50px;padding-bottom: 50px;}

.l_header .l_header_contents{height: 40px;display: grid;place-content: center;}
.l_header h1.logo{width: 100px;padding: 0;}

.HeadTitle{ position: relative;background: url(../../images/bg_main.jpg) no-repeat;background-size: cover;background-position: bottom;
    padding-top: 160%;height: 0;width: 100%;margin-top: -3vw;text-align: center;position: relative;
}
.HeadTitle h1{-webkit-box-sizing: border-box;box-sizing: border-box;min-width: 310px;max-width: 620px;width: 79%;display: block;position: absolute;left: 50%;bottom: 11%;    
    padding: 10% 4% 8%;transform: scale(0.825) translateX(-60%);background: #fff;}

.HeadTitle h1 span{display: block;line-height: 0;}
.HeadTitle h1 span img{max-width: 100%;}
.HeadTitle h1 span:first-of-type{position: absolute;left: 0;top: -17px;}
.HeadTitle h1 span:first-of-type img{width: 90%;}
.HeadTitle h1 span:nth-of-type(2) img{width: 90%;}
.HeadTitle h1 span:nth-of-type(3){padding: 3% 2% 1%;}
.HeadTitle h1 span:nth-of-type(3) img{width: 100%;}

.Btn a{-webkit-box-sizing: border-box;box-sizing: border-box;position: relative;width: 100%;max-width: 310px;height: 75px; display: grid;place-content: center;border-radius: 10px;background: #2ea9cf;font-weight: bold;margin: 0 auto;font-size: 17px;font-weight: bold;color: #fff;}

.AreaBtn:first-of-type{padding: 25px 20px 50px;}
.AreaBtn:first-of-type a{background: url(../../../school/img/icon_schedule.png) no-repeat #2ea9cf;background-size: 33px;background-position: left 30px center;padding-left: 30px;border-radius: 10px;}
.AreaBtn:first-of-type a::after{content: "";display: inline-block;width: 22px;height: 22px;position: absolute;right: 20px;top: 50%;
    background: url(../../../school/img/icon_arrow.png) no-repeat;background-size: contain;transform: translateY(-50%) rotate(-90deg);
}

.AreaBtn:nth-of-type(2){position: relative;margin-bottom: 90px;}
.AreaBtn:nth-of-type(2) a{background-image: url(../../../school/img/icon_contact.png);background-repeat: no-repeat;background-size: 45px;background-position: left 15px center;height: 85px;padding-left: 29px;margin-bottom: -6px;position: absolute;bottom: -34px;left: 50%;transform: translateX(-50%);}
.AreaBtn:nth-of-type(2) a span{font-size: 13px;}


.footer_contents{padding-top: 40px;}


.l_school h2{text-align: center;margin-bottom: 35px;color: #303030;font-size: 24px;font-weight: bold;}
.l_school h2 span{display: block;color: #EE9F13; font-size: 12px;}

#schedule,#contact{margin-top: -40px;padding-top: 40px;}

/**/
.Recommend .Wrapper{padding-top: 0;padding-bottom: 30px;}
.l_school .Recommend h2{font-size: 22px;line-height: 1.727;margin-bottom: 45px;}
.Recommend h2 span.Marker{background: linear-gradient(transparent 80%, #ffe352 80%);color: #303030;font-size: 25px;display: inline-block;line-height: 30px;}

.Recommend ul.Before{max-width: 309px;margin: 0 auto;}
.Recommend ul.Before li:nth-of-type(1){position: relative;margin-bottom: 40px;padding-left: 28%;background: url(../../../school/img/recommend_01.png) no-repeat;background-size: 75px 87px;background-position: left bottom;}
.Recommend ul.Before li:nth-of-type(2){position: relative;padding-right: 33%;padding-bottom: 20px;background: url(../../../school/img/recommend_02.png) no-repeat;background-size: 119px; background-position: right -10px bottom;}
.Recommend ul li .Box .Texts{position: relative;display: flex;align-items: center;box-sizing: border-box;min-height: 100px;padding: 15px 5px 15px 20px;border-radius: 10px;background: #ebf6f8;}
.Recommend ul.Before li .Box .Texts::after{content: '';display: block;width: 14px;height: 19px;position: absolute;top: 50%;transform: translateY(-50%);background-color: #ebf6f8;}
.Recommend ul.Before li:nth-of-type(1) .Box .Texts{height: 110px;}
.Recommend ul.Before li:nth-of-type(1) .Box .Texts::after{left: -14px;clip-path: polygon(0% 50%, 18px 0%, 18px 22px);}
.Recommend ul.Before li:nth-of-type(2) .Box .Texts{height: 100px;}
.Recommend ul.Before li:nth-of-type(2) .Box .Texts::after{right: -14px;clip-path: polygon(18px 50%, 0% 0%, 0% 22px);}
.Recommend ul.Before li .Box span{position: absolute;top: 0;left: 0;color: #0b7181;font-size: 11px;font-weight: bold;}
.Recommend ul.Before li:nth-of-type(2) .Box span{top: -4px;right: 14px;left: auto;}

.Recommend p.Self{position: relative;height: 93px;box-sizing: border-box;padding-top: 15px;font-size: 17px;font-weight: bold;text-align: center;line-height: 1.471;}
.Recommend p.Self::before{content: "";display: block;width: 306px;height: 70px;background: rgb(255,255,255);background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,220,42,1) 100%);clip-path: polygon(50% 70px, 0% 0%, 306px 0%);position: absolute;z-index: -1;left: 50%;bottom: 0;transform: translateX(-50%);}
.Recommend ul.After{display: flex;max-width: 360px;height: 150px;margin: 0 auto;padding-bottom: 120px;background: url(../../../school/img/recommend_03.png) no-repeat;background-position: center bottom;background-size: 170px 128px;}
.Recommend ul.After li{width: 50%;text-align: center;font-weight: bold;display: grid;place-content: center;}
.Recommend ul.After li .Box{position: absolute;top: 0;width: 100%;height: 100%;font-size: 17px;}
.Recommend ul.After li .Box span{font-size: 14px;}

.Recommend ul.After li:nth-of-type(1){position: relative;background: url(../../../school/img/balloon_01.png) no-repeat;background-size: cover;background-position: left -15px bottom -30px;height: 190px;margin-top: -40px;}
.Recommend ul.After li:nth-of-type(2){position: relative;background: url(../../../school/img/balloon_02.png) no-repeat;background-size: cover;background-position: right -20px bottom -24px;height: 187.5px;margin-top: -35px;}
.Recommend ul.After li:nth-of-type(1) .Box{width: 180px;left: 0;padding-top: 95px;}
.Recommend ul.After li:nth-of-type(2) .Box{width: 170px;right: 0;padding-top: 100px;}
        
p.ForYou{position: relative;min-width: 293px;width: 50%;margin: 10px auto 30px;}

/**/
.About .Wrapper{position: relative;background: #fff4e1;padding-top: 62px;padding-bottom: 24px;}

.l_school .About h2 {-webkit-box-sizing: border-box;box-sizing: border-box;display: inline-block;width: 244px;height: 57px;padding: 5px 18px;position: absolute;top: -26px;left: 50%; transform: translateX(-50%);background: #ffe52d;}
.l_school .About h2 span{display: inline;position: absolute;left: 50%;bottom: 6px;transform: translateX(-50%);line-height: 1;}
.l_school .About h2::before,.l_school .About h2::after {content: '';position: absolute;top: 0;width: 0px;height: 0px;border-color: #ffe52d transparent;border-style: solid;}
.l_school .About h2::before {left: -18px;border-width: 28.5px 0px 28.5px 18px;}
.l_school .About h2::after {right: -18px;border-width: 28.5px 18px 28.5px 0px;}

.About p.Text{max-width: 310px;margin: 0 auto 60px;}
.About .Wrapper > h3{margin-bottom: 35px;text-align: center;font-weight: bold;}
.About .Wrapper > h3 span{display: inline-block;margin-top: 13px;background: linear-gradient(transparent 70%, #ffe52d 70%);font-size: 19px;line-height: 22px;letter-spacing: 0;}
.About .Wrapper > h3 span.Small{background: linear-gradient(transparent 65%, #ffe52d 65%);margin-top: 0;font-size: 15px;line-height: 20px;}
.About figure{max-width: 350px;margin: 0 auto 48px;grid-template-columns: 1fr 1fr;gap: 20px;background: inherit;position: relative;}
.About figure::after{content: "";display: block;width: 29px;height: 21.5px;background: url(../../../school/img/arrow.png) no-repeat;background-size: contain;
    position: absolute;left: 50%;top: 50%;transform: translate(-50%);}
.About figure > span{width: 165px;height: 175px;overflow: hidden;display: block;position: relative;box-sizing: border-box;padding-top: 10px;border: 1px solid #f49c00;}
.About figure figcaption{display: block;width: 100%;height: 31px;position: absolute;top: 0;left: 0;background-color: #f49c00;font-size: 0;}
.About figure span:nth-of-type(1) figcaption{background-image: url(../../../school/img/before.png);background-repeat: no-repeat;background-position: center;background-size: 58.5px 15.5px;}
.About figure span:nth-of-type(2) figcaption{background-image: url(../../../school/img/after.png);background-repeat: no-repeat;background-position: center;background-size: 46px 16.5px;}

.About .Successes{-webkit-box-sizing: border-box;box-sizing: border-box;position: relative;max-width: 310px;margin: 0px auto 125px;padding: 40px 15px 125px;background: #ffdfa3;}
.About .Successes > h3{width: 140px;margin: 0 auto;padding: 4px 0 3.5px;border-top: 2px solid #f49c00;border-bottom: 2px solid #f49c00;color: #303030;font-size: 19px;font-weight: 600;text-align: center;letter-spacing: 0.1rem;}
.About .Successes ul{max-width: 280px;margin: 33px auto 0;}
.About .Successes ul li{-webkit-box-sizing: border-box;box-sizing: border-box;position: relative;margin-bottom: 20px; padding: 12.5px 10px 12px 75px;background: #fff;font-size: 14px;color: #303030;font-weight: 600;}
.About .Successes ul li::before{content: "";display: block;width: 50px;height: 50px;border-radius: 100vh;position: absolute;left: 12px;background-color: #fed400;background-position: center;}
.About .Successes ul li:nth-of-type(1)::before{background-image: url(../../../school/img/success_01.png);background-repeat: no-repeat;background-size: 30px auto;}
.About .Successes ul li:nth-of-type(2)::before{background-image: url(../../../school/img/success_02.png);background-repeat: no-repeat;background-size: 30px;}
.About .Successes ul li::after{content: "";display: block;width: 40px;height: 20px;position: absolute;left: 50%;transform: translateX(-50%);bottom: -10px;
background-color: #ffffff;clip-path: polygon(50% 20px, 0% 0%, 40px 0%);}
.About .Successes ul li span{letter-spacing: 0;}
.About .Successes ul li b{color: #fa6917;font-size: 21px;font-weight: 700;letter-spacing: -0.01rem;}
.About .Successes ul li small{display: inline-block;margin-right: 3px;color: #fa6917;font-size: 15px;font-weight: 700;letter-spacing: -0.01rem;}
.About .Successes .Benefit{position: absolute;left: 50%;transform: translateX(-50%);bottom: -125px;-webkit-box-sizing: border-box;box-sizing: border-box;width: 250px;height: 250px;margin: 0 auto;padding-top: 32px;
    border-radius: 100vh;border: 3px solid #ffdfa3;background: url(../../../school/img/benefit.png) no-repeat #fff;background-size: 148px 135px;background-position: center bottom;text-align: center;   
}
.About .Successes .Benefit > span{display: inline-block;-webkit-box-sizing: border-box;box-sizing: border-box;width: 140px;height: 30px;border-radius: 100vh;
    background: #f49c00;color: #fff;font-size: 12px;text-align: center;line-height: 30px;font-weight: 600;}
.About .Successes .Benefit > span b{font-size: 17px;}
.About .Successes .Benefit p{padding-top: 10px;font-size: 22px;font-weight: 600;}
.About .Successes .Benefit p span{font-size: 17px;}


/**/
.Course{background: #fff4e1;padding: 35px 20px 55px;}
.Course .Wrapper{background: #fff;padding-top: 40px;padding-bottom: 30px;}
.Course .Wrapper .Cont{position: relative;}
.Course .Wrapper h2{margin-bottom: 0;}
.Course ul li .Box{box-sizing: border-box;max-width: 280px;margin: 0 auto;padding: 25px 0;background: #fff;}
.Course ul li .Box .CourseImage{margin-bottom: 20px;}
.Course ul li .Box figure{max-width: 280px;margin: 0 auto;}
.CourseImage .swiper-pagination-img{text-align: center;}
.CourseImage .swiper-pagination-bullet-active,.Course .swiper-pagination-bullet-active{background: #2ea9cf;}
.Course ul li .Box h3{margin-bottom: 15px;color: #303030;font-size: 19px;text-align: center;font-weight: bold;}


.Course .swiper-button-next,.Course .swiper-button-prev{top: calc(100% - 150px);width: 28px;height: 28px;}
.Course .swiper-button-prev:after, .Course .swiper-rtl .swiper-Course-next:after, .Course .swiper-button-next:after, .Course .swiper-rtl .swiper-button-prev:after {
    content: "";display: block;width: 100%;height: 100%;background: url(../../../school/img/icon_slider.png) no-repeat;background-size: contain;
}
.Course .swiper-button-prev{transform: rotate(180deg);}
.Course .swiper-button-prev,.Course .swiper-rtl .swiper-button-next{left: -10px;}
.Course .swiper-button-next,.Course .swiper-rtl .swiper-button-prev{right: -10px;}
.Course .swiper-pagination-main{text-align: center;}
.Course .swiper-pagination-bullet{width: 10px;height: 10px;}

/**/
.LessonFlow{background: url(../../images/bg_school_contact.jpg) no-repeat;background-size: contain;background-position: bottom;}
.LessonFlow .Wrapper{padding-bottom: 54%;}
.LessonFlow ol li{position: relative; padding-top: 47px;}
.LessonFlow ol li::after{content: "";display: block;width: 31px;height: 19px;background-color: #fed400;clip-path: polygon(50% 19px, 0% 0%, 31px 0%);position: absolute;top: 15px;left: 50%;transform: translateX(-50%);}
.LessonFlow ol li:first-of-type {padding-top: 0;}
.LessonFlow ol li:first-of-type::after{content: none;}
.LessonFlow ol li h3{display: flex;justify-content: center;align-items: center;height: 52px;background: #f49c00;padding: 0 10px;color: #fff;font-size: 19px;font-weight: bold;}
.LessonFlow ol li h3 span{display: inline-block;position: relative;width: auto;height: 21px;line-height: 21px;padding-left: 35px;}
.LessonFlow ol li h3 span i{display: inline-block;position: absolute;left: 0;bottom: 3px;height: 16.5px;text-indent:100%;white-space:nowrap;overflow:hidden;}
.LessonFlow ol li:nth-of-type(1) h3 span i{width: 21px; background: url(../../../school/img/flow_01_w.png) no-repeat;background-size: cover;}
.LessonFlow ol li:nth-of-type(2) h3 span i{width: 24px;background: url(../../../school/img/flow_02_w.png) no-repeat;background-size: cover;}
.LessonFlow ol li:nth-of-type(3) h3 span i{width: 24px;background: url(../../../school/img/flow_03_w.png) no-repeat;background-size: cover;}
.LessonFlow ol li .Box{display: flex;gap: 20px;padding: 35px 20px;box-sizing: border-box;background: #fff;border-right: 1px solid #f49c00;border-bottom: 1px solid #f49c00;border-left: 1px solid #f49c00;}
.LessonFlow ol li .Box figure{box-sizing: border-box;display: block;max-width: 135px;width: 100%;min-height: 100px;height: 100%;}
.LessonFlow ol li .Box p{max-width: calc(100% - 158px);box-sizing: border-box;}



/**/
.Lecturer{background: #fffad3;margin-bottom: 70px;padding: 35px 20px;}
.Lecturer .Wrapper{padding-top: 30px;padding-bottom: 35px;background: #fff;}
.l_school .Lecturer h2{margin-bottom: 25px;}
.Lecturer p.Text{padding-bottom: 30px;font-weight: 600;}
.Lecturer ul li{border: 1px solid #ffe52d;padding: 20px 0;}
.Lecturer ul li:first-of-type{margin-bottom: 35px;}
.Lecturer ul li .Box{position: relative;}
.Lecturer ul li .Box .Name{display: flex;align-items: center;gap: 20px;}
.Lecturer ul li:nth-of-type(2) .Box .Name{flex-direction: row-reverse;padding-left: 20px;padding-right: 10px;}
.Lecturer ul li .Box .Name figure{display: block;width: 60%;min-height: 150px;height: 100%;box-sizing: border-box;}
.Lecturer ul li .Box .Name > div{width: 50%;box-sizing: border-box;line-height: 1.571;}
.Lecturer ul li .Box .Name > div h3{margin-bottom: 10px;}
.Lecturer ul li .Box .Name ruby{font-weight: bold;font-size: 18px;}
.Lecturer ul li .Box .Name ruby rt{font-weight: normal;}
.Lecturer ul li .Box .Profile{padding: 20px 20px 10px;}


/**/
.l_school .Reason h2{width: 310px;margin-bottom: 80px;padding: 16px 0;position: absolute;left: 50%;top: -20px;transform: translateX(-50%);background: #f49c00;color: #fff;font-size: 15px;line-height: 30px;}
.l_school .Reason h2::after{content: "";display: block;width: 31px;height: 15px;background: #f49c00;clip-path: polygon(50% 15px, 0% 0%, 31px 0%);position: absolute;left: 50%;transform: translateX(-50%);bottom: -15px;}

.l_school .Reason h2 span{font-size: 23px;color: #fff;}
.l_school .Reason h2 em{position: relative;font-family: "HiraKakuProN-W3","Hiragino Sans",sans-serif;color: #ffe52d;font-size: 35px;}
.l_school .Reason h2 em::before{content: "";display: block;width: 22.5px;height: 21px;position: absolute;left: -20px;top: -15px;background: url(../../../school/img/title_reason.png);background-size: contain;}
.l_school .Reason h2 small{font-size: 18px;}

/**/
.Reason{background: #fff4e1;}
.Reason .Wrapper{position: relative;padding-top: 163px;}
.Reason ol li{padding-top: 80px;}
.Reason ol li:first-of-type {padding-top: 0;}
.Reason ol li .Box{position: relative;padding: 35px;background: #fff;}
.Reason ol li .Box span.Icon{display: block;width: 110px;height: 110px;position: absolute;top: -50px;left: 50%;transform: translateX(-50%);
    border-radius: 100vh;text-align: center;text-indent: 100%;white-space: nowrap;overflow: hidden;background: #fff;
    background-image: url(../../../school/img/title_merit.png); background-repeat: no-repeat;background-size: 35px auto;background-position: top 17px center;
}
.Reason ol li .Box span.Icon::after{content: "";display: block;position: absolute;top: 30px;left: 50%;transform: translateX(-50%);}
.Reason ol li:nth-of-type(1) .Box span.Icon::after{width: 33px;height: 21.5px;background: url(../../../school/img/merit_01.png) no-repeat;background-size: contain;}
.Reason ol li:nth-of-type(2) .Box span.Icon::after{width: 32.5px;height: 20px;background: url(../../../school/img/merit_02.png) no-repeat;background-size: contain;}
.Reason ol li:nth-of-type(3) .Box span.Icon::after{width: 32.5px;height: 21px;background: url(../../../school/img/merit_03.png) no-repeat;background-size: contain;}
.Reason ol li .Box figure{position: relative;margin-bottom: 20px;}
.Reason ol li .Box h3{margin-bottom: 18px;color: #eb9600;font-size: 19px;font-weight: bold;text-align: center;}

/*****/
.VoiceList{padding-top: 6px;}
.VoiceList .ListBox{margin-bottom: 20px;}
.VoiceList .ListBox .Box{display: grid;grid-template-columns: 105px 1fr;gap: 20px;padding: 20px;background: #fff;}
.VoiceList .ListBox:nth-of-type(odd) .Box{border: 2px solid #ffe52d;}
.VoiceList .ListBox:nth-of-type(even) .Box{border: 2px solid #d9d9d9;}
.VoiceList .ListBox .Box figure {grid-template-rows: 105px 1fr;margin: 0 auto;background: none;}
.VoiceList .ListBox .Box figure span{margin: 0 auto;max-height: 105px;background: #ccc;display: grid;justify-content: center;border-radius: 100vh;overflow: hidden;}
.VoiceList .ListBox .Box figure figcaption{text-align: center;font-size: 13px;font-weight: bold;margin-top: 10px;}

/*****/
.Schedule{background: #fff4e1;}
.l_school .Schedule .Wrapper{padding-bottom: 25px;}

.Schedule ul.ListBox > li{margin-bottom: 25px;margin-top:-70px;padding-top:70px;}
.Schedule ul.ListBox > li h3{position: relative;background: #ff9c00;border: 1px solid #ff9c00;padding: 35px 40px 12px 15px;color: #fff;font-size: 19px;font-weight: bold;line-height: 1;}
.Schedule ul.ListBox > li h3::after{content: "";display: inline-block;width: 23px;height: 23px;position: absolute;right: 20px;top: 50%;transform: translateY(-50%);background: url(../../../school/img/icon_arrow.png) no-repeat;background-size: contain;}
.Schedule ul.ListBox > li h3.selected::after{transform: translateY(-50%) rotate(180deg);}
.Schedule ul.ListBox > li h3:hover{cursor: pointer;}

.Schedule ul.ListBox > li h3 span{display: inline-block;margin-right: 10px;letter-spacing: 0;font-size: 90%;line-height: 21px;}
.Schedule ul.ListBox > li h3 span.StatusIcon{line-height: 19px;}
.Schedule ul.ListBox > li h3 span.StatusIcon i{display: none;font-style: normal;width: 70px;position: absolute;left: 15px;top: 17px;transform: translateY(-50%);background: #fff;font-size: 13px;text-align: center;}

.Schedule ul.ListBox > li h3 i.status_off{color: #ff2a00;}
.Schedule ul.ListBox > li h3 i.status_on{color: #333;}

.Schedule ul.ListBox > li.off h3 i.status_off,
.Schedule ul.ListBox > li.on h3 i.status_on{display: inline-block;}

.Schedule ul.ListBox > li.expired h3 i.status_off,
.Schedule ul.ListBox > li.expired h3 i.status_off{display: inline-block;}
.Schedule ul.ListBox > li.expired h3 i.status_on,
.Schedule ul.ListBox > li.expired h3 i.status_on{display: none;}


.Schedule ul.ListBox li .Box{display: none;padding: 20px;border: 1px solid #ff9c00;background: #fff;}
.Schedule ul.ListBox li .Box .Btn{border-top: 1px solid #ccc;margin-top: 10px;padding: 20px 20px 10px;}
.Schedule ul.ListBox li .Box ul{padding: 0 10px;font-size: 15px;}
.Schedule ul.ListBox li .Box ul li{padding-bottom: 10px;}
.Schedule ul.ListBox li .Box ul li.Memo{padding-top: 5px;font-size: 11px;}
.Schedule ul.ListBox li .Box ul li.Limit{display:none;color:#ff2a00;font-weight:bold;padding-top: 5px;margin-bottom: 0;font-size: 12px;}
.Schedule ul.ListBox li .Box ul li > span{display: inline-block;width: 20%;margin-right: 20px;font-weight: bold;}

.Schedule ul.ListBox li.off .Box ul li.Limit,
.Schedule ul.ListBox li.expired .Box ul li.Limit{display:block;}

.Schedule ul.ListBox li .Box .Btn{display:none;}
.Schedule ul.ListBox li .Box .Btn a{max-width: 185px;height: 48px;padding-right: 20px;font-size: 14px;}
.Schedule ul.ListBox li .Box .Btn a::after{content: "";display: block;width: 17px;height: 17px;position: absolute;right: 20px;top: 50%;transform: translateY(-50%);background: url(../../../school/img/icon_btn.png) no-repeat;background-size: contain;}

.Schedule ul.ListBox li.on .Box .Btn{display:block;}
.Schedule ul.ListBox li.expired .Box .Btn{display:none;}

.Schedule .list_navi{max-width:680px;margin-right:auto;margin-left:auto;}
.Schedule .list_navi a{font-weight:bold;min-width:45%;display:inline-block;padding:10px;text-align:center;-webkit-border-radius: 5px; border-radius: 5px;background-color:#2ea9cf;color:#fff;text-decoration:none;
-webkit-box-sizing: border-box;box-sizing: border-box;}


/*---------カレンダー、営業日カレンダー、予約-------*/
.Calendar{margin-bottom: 30px;}
.CalNav p{position: relative;font-size: 18px;text-align: center;}
.contents_calendar .calendar{padding:20px;}
.contents_calendar .year_box{width:300px;margin:0 auto;}
.contents_calendar p.prevr{width:100px;float:left;text-align:center;}
.contents_calendar p.here{width:100px;float:left;font-size:120%;text-align:center;}
.contents_calendar p.next{width:100px;float:left;text-align:center;}

.StatusInfo span{position: relative;display: inline-block;padding: 0 10px 0 17px;font-size: 13px;line-height: 1;}
.StatusInfo span::before{content: "";display: inline-block;width: 13px;height: 13px;position: absolute;left: 0;top: 0;background:none 50% 50% no-repeat;-webkit-background-size:contain;background-size:contain;}
.StatusInfo span.status_on::before{background-image: url(../../../school/img/status_on.png);}
.StatusInfo span.status_off::before{background-image: url(../../../school/img/status_off.png);}

table.CalendarMain{width: 100%;vertical-align:top;margin:10px auto 10px;border:1px solid #eeeeee;}
table.CalendarMain th{padding:4px;border:1px solid #eeeeee;background:#ff9c00;color: #fff;font-weight: bold;text-align:center;}
table.CalendarMain td{-webkit-box-sizing: border-box;box-sizing: border-box;width: calc(100% / 7);height: 55px;border:1px solid #eeeeee;background:#FFFFFF;vertical-align:top;}
table.CalendarMain td .break {word-break: break-all;overflow:auto;}/*Firefoxでのセル広がりをスクロールで回避*/
table.CalendarMain .day_brank{background-color:#eeeeee;}
table.CalendarMain .holiday{color:#ff2a00;}
table.CalendarMain .saturday{color:#0037ff;}
table.CalendarMain th.holiday{background:#ff2a00;color: #fff;}
table.CalendarMain th.saturday{background:#0037ff;color: #fff;}
table.CalendarMain td .day{text-align:center;padding:2px;}
table.CalendarMain td div.record{padding: 0 4px 3px;text-align:center;line-height: 1;}
table.CalendarMain td div.record span.icon{display: inline-block;width: 20px;height: 20px;text-indent:100%;white-space:nowrap;overflow:hidden;background:none 50% 50% no-repeat;-webkit-background-size:contain;background-size:contain;}
table.CalendarMain td div.record p.status_on span{background-image: url(../../../school/img/status_on.png);}
table.CalendarMain td div.record p.status_off span,
table.CalendarMain td .cont.expired div.record p span{background-image: url(../../../school/img/status_off.png);}
table.CalendarMain td div.record p a{display: block;}

.CalNav a.BtnPrev,a.BtnNext{display: inline-block;width: 70px;position: absolute;top: 0;border: none;border-radius: 5px;background: #2ea9cf;color: #fff;}
.CalNav .BtnPrev{left: 0;}
.CalNav .BtnNext{right: 0;}

/*****/
.l_school .Venue .Wrapper h2{font-size: 23px;}
.Venue .Wrapper .Notes{box-sizing: border-box;max-width: 310px;margin: 0 auto 30px;padding: 10px;background: #fff;border: 1px solid #ee9f13;}
.Venue .Wrapper .Notes li{color: #fa6917;font-size: 10px;font-weight: bold;line-height: 1.8;}
.Venue .Wrapper ul.AreaCont{padding: 10px 0 15px;background: #fffad3;}
.Venue .Wrapper .AreaCont li{padding: 25px 20px;}
.Venue .Wrapper .AreaCont li .Box{position: relative;-webkit-box-sizing: border-box;box-sizing: border-box;background: #fff;border-right: 1px solid #ffe352;border-bottom: 1px solid #ffe352;border-left: 1px solid #ffe352;}
.Venue .Wrapper .AreaCont li .Box h3{display: flex;justify-content: center;align-items: center;height: 60px;background: #ffe352;font-size: 19px;color: #303030;font-weight: 600;}
.Venue .Wrapper .AreaCont li .Box .PlaceImg{max-width: 280px;margin: 25px auto;padding: 0 14px;}
.Venue .Wrapper .AreaCont li .Box .PlaceImg figure{margin-bottom: 15px;}
.Venue .Wrapper .AreaCont li .Box .PlaceImg .Map{position: relative;padding-top: 60%;width: 100%;height: 0;overflow: hidden;}
.Venue .Wrapper .AreaCont li .Box .PlaceImg .Map iframe{position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
.Venue .Wrapper .AreaCont li .Box .Cont{padding: 0 17px 25px;font-size: 15px;line-height: 1.867;}
.Venue .Wrapper .AreaCont li .Box .Cont p{padding-top: 10px;}

/*****/
.ApplicationFlow{background: #fff6e5;}
.ApplicationFlow .Wrapper{padding-bottom: 35px;}
.l_school .ApplicationFlow h2{font-size: 23px;}
.ApplicationFlow .Wrapper .AreaCont li{margin-bottom: 20px;}
.ApplicationFlow .Wrapper .AreaCont li .Box{-webkit-box-sizing: border-box;box-sizing: border-box;position: relative; padding: 20px 15px 20px 80px;border: 1px solid #eb9600;background-color: #fff;}
.ApplicationFlow .Wrapper .AreaCont li .Box h3{margin-bottom: 10px;font-size: 15px;font-weight: bold;}
.ApplicationFlow .Wrapper .AreaCont li .Box h3 span{display: inline-block;position: absolute;left: 20px;top: 20px;height: 18px;text-indent:100%;white-space:nowrap;overflow:hidden;}
.ApplicationFlow .Wrapper .AreaCont li .Box p{padding-bottom: 10px;}
.ApplicationFlow .Wrapper .AreaCont li .Box p::before{content: "";display: inline-block;position: absolute;left: 64px;top: 19px;
    width: 1.5px;height: calc(100% - 40px);background: #eb9600;}
.ApplicationFlow .Wrapper .AreaCont li:nth-of-type(1) .Box h3 span{width: 23px;background: url(../../../school/img/flow_01.png) no-repeat;background-size: contain;}
.ApplicationFlow .Wrapper .AreaCont li:nth-of-type(2) .Box h3 span{width: 26.5px;background: url(../../../school/img/flow_02.png) no-repeat;background-size: contain;}
.ApplicationFlow .Wrapper .AreaCont li:nth-of-type(3) .Box h3 span{width: 26px;background: url(../../../school/img/flow_03.png) no-repeat;background-size: contain;}
.ApplicationFlow .Wrapper .AreaCont li:nth-of-type(4) .Box h3 span{width: 26.5px;background: url(../../../school/img/flow_04.png) no-repeat;background-size: contain;}
.ApplicationFlow .Wrapper .AreaCont li:nth-of-type(5) .Box h3 span{width: 26px;background: url(../../../school/img/flow_05.png) no-repeat;background-size: contain;}
.ApplicationFlow .Wrapper .AreaCont li .Box p span{display: block;margin-top: 5px;font-size: 11px;letter-spacing: 0;}
.ApplicationFlow .Wrapper .AreaCont li .Box p span b{font-weight: bold;}
.ApplicationFlow .Wrapper .AreaCont li .Box p span.Btn a{max-width: 160px;height: 41px;margin: 15px 0 0;padding-right: 16px;font-size: 14px;}
.ApplicationFlow .Wrapper .AreaCont li .Box p span.Btn a::after{content: "";display: block;width: 14px;height: 14px;position: absolute;right: 10px;top: 50%;transform: translateY(-50%);background: url(../../../school/img/icon_btn.png) no-repeat;background-size: contain;}
.ApplicationFlow .Wrapper .AreaCont li .Box p > a{text-decoration: underline;color: #0000ff;}

/*****/
#contact .Wrapper{padding-bottom: 0;}
.l_footer{border-top: 1px solid #ccc;}
#form{margin-top: -65px;padding-top: 70px;}
.contents_form.layout_contents.comp{padding-bottom: 40px;}

/*****/
.contents_form{padding-bottom: 50px;}
.contents_form dd div.other{padding-top: 10px;}
.contents_form dd div.other span{display: block;margin-bottom: 5px;font-size: 13px;line-height: 1.4;}
.contents_form textarea:focus,.contents_form textarea:hover{height: initial;}

.gotop{display: none;}
body.scroll .gotop{display: block;}

/*****/
.FaQ dl div{padding-bottom: 25px;}
.FaQ dl div dt,.FaQ dl div dd{position: relative;}
.FaQ dl div dt::before,.FaQ dl div dt::after{content: "";display: block;position: absolute;right: 20px;top: 28px;width: 16px;height: 2px;background: #f49c00;}
.FaQ dl div dt::before{transform: rotate(90deg);}
.FaQ dl div dt.selected::before{transform: rotate(0);}
.FaQ dl div dt.selected::after{display: none;}
.FaQ dl div dt{padding: 20.5px 45px 20px 40px;background: #fffad3;color: #000;font-size: 15px;line-height: 1.3;}
.FaQ dl div dt:hover{cursor: pointer;}
.FaQ dl div dd{padding: 20px 0px 10px 50px;display: none;}
.FaQ dl div dt i,.FaQ dl div dd i{position: absolute;text-indent:100%;white-space:nowrap;overflow:hidden;}
.FaQ dl div dt i{width: 13px;height: 19px;background: url(../../../school/img/icon_q.png) no-repeat;background-size: contain;left: 15px;top: 20px;}
.FaQ dl div dd i{width: 35px;height: 35px;background: url(../../../school/img/icon_a.png) no-repeat #ee9f13;background-size: 14.5px 16px;background-position: center;left: 0;top: 20px;}



@media screen and (max-width:400px) {
    .About .Successes ul li{letter-spacing: 0;padding-right: 5px;}
    .About .Successes ul li b,.About .Successes ul li span{letter-spacing: -1px;}
    .VoiceList .ListBox .Box{display: grid;grid-template-columns: 1fr;}
    .VoiceList .ListBox .Box figure {grid-template-rows: 120px 1fr;}
    .VoiceList .ListBox .Box figure span{max-width: 120px;max-height: max-content;}
    .Schedule ul.ListBox ul li span{display: block;width: 100%;margin-bottom: 5px;}
}


@media screen and (min-width:768px) {
    .Wrapper{max-width: 980px;margin: 0 auto;}
}
@media screen and (min-width:768px) and (max-width:900px) {
}
@media screen and (min-width:900px) and (max-width:1080px) {
}
@media screen and (min-width:1081px) {
}