@charset "UTF-8";
@import url(../../common/swiper-bundle.min.css);

figure{margin: 0;display: grid;place-content: center;}
figure img{object-fit: cover;max-width: 100%;}

section .Wrapper{box-sizing: border-box;max-width: 1020px;margin: 0 auto;padding-top: 50px;padding-right: 20px;padding-bottom: 50px;padding-left: 20px;}

.AreaBtn{padding: 60px 20px;}
.Btn a{display: inline-block;text-decoration: none;-webkit-box-sizing: border-box;box-sizing: border-box;position: relative;width: 100%;max-width: 430px;height: 75px; display: grid;place-content: center;border-radius: 10px;background: #2ea9cf;font-weight: bold;margin: 0 auto;font-size: 24px;font-weight: bold;color: #fff;transition: all 0.2s linear;}
.Btn a:hover{cursor: pointer;}

.Btn a::before{content: "";display: block;background: #fff;width: 100%;height: 100%;opacity: 0;position: absolute;left: 0;top: 0;border-radius: 10px;transition: all 0.2s linear;}
.Btn a:hover::before{opacity: 0.1;}


.AreaBtn:first-of-type a{background: url(../img/icon_schedule.png) no-repeat #2ea9cf;background-size: 33px;background-position: left 30px center;}
.AreaBtn:first-of-type a::after{content: "";display: inline-block;width: 22px;height: 22px;position: absolute;right: 20px;top: 50%;
    background: url(../img/icon_arrow.png) no-repeat;background-size: contain;transform: translateY(-50%) rotate(-90deg);}

.AreaBtn:nth-of-type(2){background: url(../img/bg_contact.jpg) no-repeat;background-position: center;background-size: cover;padding: 90px 0;}
.AreaBtn:nth-of-type(2) a{background-image: url(../img/icon_contact.png);background-repeat: no-repeat;background-size: 45px;background-position: left 15px center;height: 85px;padding-left: 29px;}
.AreaBtn:nth-of-type(2) a span{font-size: 15px;}

.l_school .Recommend h2{font-size: 22px;line-height: 1.727;}
.l_school h1{display: grid;place-content: center;}
.l_school h2{text-align: center;margin-bottom: 35px;color: #303030;font-size: 32px;font-weight: bold;}
.l_school h2 span{display: block;color: #EE9F13; font-size: 18px;}

.footer_contents{padding-top: 40px;}

/**/
.Recommend .Wrapper{padding-top: 0;padding-bottom: 45px;}
.l_school .Recommend h2{font-size: 38px;line-height: 1.5;margin-bottom: 60px;}
.Recommend h2 span.Marker{background: linear-gradient(transparent 80%, #ffe352 80%);color: #303030;font-size: 38px;display: inline-block;line-height: 38px;}

.Recommend ul.Before{max-width: 800px;margin: 0 auto;display: grid;grid-template-columns: 1fr 1fr;gap: 30px;}
.Recommend ul.Before li:nth-of-type(1){position: relative;padding-top: 30px;padding-left: 33%;margin-bottom: 40px;background: url(../img/recommend_01.png) no-repeat;background-size: 120px 132px;background-position: left bottom;}
.Recommend ul.Before li:nth-of-type(2){position: relative;padding-top: 30px;padding-right: 40%;padding-bottom: 20px;background: url(../img/recommend_02.png) no-repeat;background-size: 190.4px;background-position: right -20px bottom -3px;}
.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 .Box .Texts{height: 120px;}
.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::after{right: -14px;clip-path: polygon(18px 50%, 0% 0%, 0% 22px);}
.Recommend ul.Before li .Box span{position: absolute;top: -10px;left: 30px;color: #0b7181;font-size: 14px;font-weight: bold;}
.Recommend ul.Before li:nth-of-type(2) .Box span{top: -10px;right: 30px;left: auto;}

.Recommend p.Self{position: relative;height: 110px;box-sizing: border-box;padding-top: 5px;font-size: 23px;font-weight: bold;text-align: center;line-height: 1.471;}
.Recommend p.Self::before{content: "";display: block;width: 370px;height: 90px;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% 90px, 0% 0%, 370px 0%);
    position: absolute;z-index: -1;left: 50%;bottom: 0;transform: translateX(-50%);}
.Recommend ul.After{display: flex;max-width: 600px;height: 280px;padding-bottom: 130px;margin: -20px auto 0;background: url(../img/recommend_03.png) no-repeat;background-position: left 48% bottom;background-size: 272px auto;}
.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;left: 0;width: 100%;height: 100%;font-size: 26px;line-height: 1.4;}
.Recommend ul.After li .Box span{font-size: 22px;}
.Recommend ul.After li:nth-of-type(1){position: relative;background: url(../img/balloon_01.png) no-repeat;background-size: contain;background-position: center;height: 265px;}
.Recommend ul.After li:nth-of-type(1) .Box{padding-top: 90px;}
.Recommend ul.After li:nth-of-type(2){position: relative;background: url(../img/balloon_02.png) no-repeat;background-size: contain;background-position: center;height: 260px;}
.Recommend ul.After li:nth-of-type(2) .Box{padding-top: 106px;padding-left: 10px;}
        
p.ForYou{position: relative;text-align: center;margin: 10px auto 40px;}
p.ForYou span{display: inline-block;max-width: 470px;}
p.ForYou span img{width: 100%;}

/**/
.About{position: relative;background: #fff4e1;}
.About .Wrapper{padding-top: 100px;}
.l_school .About h2 {-webkit-box-sizing: border-box;box-sizing: border-box;display: inline-block;width: 390px;height: 82px;padding: 8px 20px;position: absolute;top: -40px;left: 50%;transform: translateX(-50%);background: #ffe52d;}
.l_school .About h2 span{display: inline;position: absolute;left: 50%;bottom: 12px;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: -24px;border-width: 41.5px 0px 41.5px 24px;}
.l_school .About h2::after {right: -24px;border-width: 41.5px 24px 41.5px 0px;}

.About p.Text{margin: 0 auto 60px;text-align: center;line-height: 1.6;}
.About h3{margin-bottom: 50px;text-align: center;font-weight: bold;}
.About h3 span{display: block;margin-top: 10px;font-size: 30px;line-height: 34px;background: linear-gradient(transparent 70%, #ffe52d 70%);display: inline-block;}
.About h3 span.Small{margin-top: 0;font-size: 24px;line-height: 28px;background: linear-gradient(transparent 80%, #ffe52d 80%);}
.About figure{max-width: 540px;margin: 0 auto;grid-template-columns: 1fr 1fr;gap: 30px;background: inherit;position: relative;}
.About figure::after{content: "";display: block;width: 46.4px;height: 34.4px;background: url(../img/arrow.png) no-repeat;background-size: contain;
    position: absolute;left: 50%;top: 50%;transform: translate(-50%);}
.About figure > span{width: 310px;height: 330px;overflow: hidden;display: block;position: relative;box-sizing: border-box;padding-top: 20px;border: 1px solid #f49c00;}
.About figure figcaption{display: block;width: 100%;height: 45px;position: absolute;top: 0;left: 0;background-color: #f49c00;font-size: 0;}
.About figure span:nth-of-type(1) figcaption{background-image: url(../img/before.png);background-repeat: no-repeat;background-position: center;background-size: 82px auto;}
.About figure span:nth-of-type(2) figcaption{background-image: url(../img/after.png);background-repeat: no-repeat;background-position: center;background-size: 64px auto;}

.About .Successes{-webkit-box-sizing: border-box;box-sizing: border-box;position: relative;max-width: 650px;margin: 80px auto 170px;padding: 40px 40px 170px;background: #ffdfa3;}
.About .Successes > h3{width: 280px;margin: 0 auto;padding: 7px 0;border-top: 2px solid #f49c00;border-bottom: 2px solid #f49c00;color: #303030;font-size: 24px;font-weight: 600;text-align: center;letter-spacing: 0.1rem;}
.About .Successes ul{max-width: 570px;margin: 35px auto 0;}
.About .Successes ul li{-webkit-box-sizing: border-box;box-sizing: border-box;position: relative;margin-bottom: 30px;padding: 28px 20px 30px 100px;background: #fff;font-size: 18px;color: #303030;font-weight: 600;}
.About .Successes ul li::before{content: "";display: block;width: 60px;height: 60px;border-radius: 100vh;position: absolute;left: 20px;top: 50%;transform: translateY(-50%);background-color: #fed400;background-position: center;}
.About .Successes ul li:nth-of-type(1)::before{background-image: url(../img/success_01.png);background-repeat: no-repeat;background-size: 32px auto;}
.About .Successes ul li:nth-of-type(2)::before{background-image: url(../img/success_02.png);background-repeat: no-repeat;background-size: 32px;}
.About .Successes ul li::after{content: "";display: block;width: 40px;height: 20px;position: absolute;left: 50%;transform: translateX(-50%);bottom: -15px;background-color: #ffffff;clip-path: polygon(50% 20px, 0% 0%, 40px 0%);}
.About .Successes ul li span{letter-spacing: -1px;}
.About .Successes ul li b{color: #fa6917;font-size: 28px;font-weight: 700;letter-spacing: -0.01rem;margin-left: 2px;}
.About .Successes ul li small{display: inline-block;margin: 0 3px 0 1px;color: #fa6917;font-size: 18px;font-weight: 700;letter-spacing: -0.01rem;}
.About .Successes .Benefit{position: absolute;left: 50%;transform: translateX(-50%);bottom: -180px;-webkit-box-sizing: border-box;box-sizing: border-box;width: 340px;height: 340px;margin: 0 auto;padding-top: 45px;
    border-radius: 100vh;border: 3px solid #ffdfa3;background: url(../img/benefit.png) no-repeat #fff;background-size: 192px 176px;background-position: center bottom;text-align: center;   
}
.About .Successes .Benefit > span{display: inline-block;-webkit-box-sizing: border-box;box-sizing: border-box;width: 180px;height: 40px;border-radius: 100vh;background: #f49c00;color: #fff;font-size: 17px;text-align: center;line-height: 40px;font-weight: 600;}
.About .Successes .Benefit > span b{margin: 0 3px;font-size: 22px;}
.About .Successes .Benefit p{padding-top: 19px;font-size: 28px;font-weight: 600;}
.About .Successes .Benefit p span{font-size: 22px;}



/**/
.Course{background: #fff4e1;padding: 35px 20px 55px;}
.Course .Wrapper{background: #fff;padding-top: 40px;}
.Course .Wrapper h2{margin-bottom: 0;}
.Course .Wrapper ul{max-width: 820px;margin: 0 auto;}
.Course ul li .Box{box-sizing: border-box;background: #fff;padding: 25px 20px;}
.Course ul li .Box.on_img{display: grid;grid-template-columns: 280px 1fr;gap: 30px;}
.Course ul li .Box .CourseImage{max-width: 280px;}
.Course ul li .Box figure{justify-content: initial;}
.CourseImage .swiper-pagination-img{text-align: center;}
.CourseImage .swiper-pagination-bullet-active{background: #2ea9cf;}
.Course ul li .Box .Cont{padding-top: 15px;}
.Course ul li .Box h3{margin-bottom: 15px;color: #303030;font-size: 24px;font-weight: bold;}

/**/
.LessonFlow ol{display: grid;grid-template-columns: 1fr 1fr 1fr;gap: 50px;}
.LessonFlow ol li{position: relative;height: 100%;box-sizing: border-box;background: #fff;border-right: 1px solid #f49c00;border-bottom: 1px solid #f49c00;border-left: 1px solid #f49c00;}
.LessonFlow ol li::after{content: "";display: block;width: 19px;height: 31px;background-color: #fed400;clip-path: polygon(19px 50%, 0% 0%, 0% 31px);position: absolute;top: 50%;left: -25px;transform: translateX(-50%);}
.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;height: 16.5px;text-indent:100%;white-space:nowrap;overflow:hidden;}
.LessonFlow ol li:nth-of-type(1) h3 span{width: 21px;background: url(../img/flow_01_w.png) no-repeat;background-size: 21px auto;margin: -4px 10px -1px 0;}
.LessonFlow ol li:nth-of-type(2) h3 span{width: 24px;background: url(../img/flow_02_w.png) no-repeat;background-size: 24px auto;margin: -2px 10px -1px 0;}
.LessonFlow ol li:nth-of-type(3) h3 span{width: 24px;background: url(../img/flow_03_w.png) no-repeat;background-size: 24px auto;margin: -2px 10px -1px 0;}
.LessonFlow ol li .Box{padding: 35px 20px;}
.LessonFlow ol li .Box figure{box-sizing: border-box;width: 100%;height: 220px;overflow: hidden;}
.LessonFlow ol li .Box p{padding-top: 20px;}

/**/
.Lecturer{background: #fffad3;margin-bottom: 90px;padding: 50px 20px;}
.Lecturer .Wrapper{padding: 36px 40px 40px;background: #fff;}
.l_school .Lecturer h2{margin-bottom: 25px;}
.Lecturer .Wrapper > .Text{padding-bottom: 30px;font-size: 17px;text-align: center;font-weight: bold;line-height: 1.6;}
.Lecturer .Wrapper ul{max-width: 820px;margin: 0 auto;}
.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;display: grid;align-items: center;}
.Lecturer ul li .Box .Name{display: flex;align-items: center;}
.Lecturer ul li:nth-of-type(1) .Box{grid-template-columns: 350px 1fr;padding-right: 20px;}
.Lecturer ul li:nth-of-type(1) .Box .Profile{padding-left: 30px;border-left: 1px solid #ffe52d;}
.Lecturer ul li:nth-of-type(2) .Box{grid-template-columns: 1fr 360px;padding-left: 30px;}
.Lecturer ul li:nth-of-type(2) .Box .Name{flex-direction: row-reverse;padding-right: 10px;padding-left: 20px;order: 1;}
.Lecturer ul li:nth-of-type(2) .Box .Profile{padding-right: 30px;border-right: 1px solid #ffe52d;}
.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: 22px;}
.Lecturer ul li .Box .Name ruby rt{font-weight: normal;}
.Lecturer ul li .Box .Profile{line-height: 1.75;}


/**/
.l_school .Reason h2{width: 380px;margin-bottom: 80px;padding: 26px 0;position: absolute;left: 50%;top: -50px;transform: translateX(-50%);background: #f49c00;color: #fff;font-size: 18px;line-height: 24px;}
.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: 30px;color: #fff;}
.l_school .Reason h2 em{position: relative;font-family: "HiraKakuProN-W3","Hiragino Sans",sans-serif;color: #ffe52d;font-size: 50px;}
.l_school .Reason h2 em::before{content: "";display: block;width: 22.5px;height: 21px;position: absolute;left: -20px;top: 0;background: url(../img/title_reason.png);background-size: contain;}
.l_school .Reason h2 small{font-size: 20px;}

/**/
.Reason{background: #fff4e1;}
.Reason .Wrapper{position: relative;padding-top: 163px;}
.Reason ol li{padding-top: 90px;}
.Reason ol li:first-of-type {padding-top: 0;}
.Reason ol li .Box{position: relative;display: grid;grid-template-columns: 1fr 1fr;gap: 40px;padding: 35px;background: #fff;}
.Reason ol li .Box span.Icon{display: block;width: 130px;height: 130px;position: absolute;top: -60px;left: 50%;transform: translateX(-50%);border-radius: 100vh;text-align: center;text-indent: 100%;white-space: nowrap;overflow: hidden;background: #fff;
    background-image: url(../img/title_merit.png); background-repeat: no-repeat;background-size: 44px auto;background-position: top 17px center;
}
.Reason ol li .Box span.Icon::after{content: "";display: block;position: absolute;top: 35px;left: 50%;transform: translateX(-50%);}
.Reason ol li:nth-of-type(1) .Box span.Icon::after{width: 40px;height: 26px;background: url(../img/merit_01.png) no-repeat;background-size: contain;}
.Reason ol li:nth-of-type(2) .Box span.Icon::after{width: 39px;height: 24px;background: url(../img/merit_02.png) no-repeat;background-size: contain;}
.Reason ol li:nth-of-type(3) .Box span.Icon::after{width: 39px;height: 25px;background: url(../img/merit_03.png) no-repeat;background-size: contain;}
.Reason ol li .Box figure{position: relative;}
.Reason ol li .Box h3{margin-bottom: 15px;color: #eb9600;font-size: 23px;font-weight: bold;text-align: center;}
.Reason ol li .Box .Texts {padding: 20px 0 0;}
.Reason ol li .Box .Texts p{line-height: 1.75;}

/*****/
.VoiceList{padding-top: 6px;}
.VoiceList .ListBox{margin-bottom: 20px;}
.VoiceList .ListBox .Box{display: grid;grid-template-columns: 160px 1fr;gap: 40px;align-items: center;padding: 35px;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 {margin: 0 auto;background: none;}
.VoiceList .ListBox .Box figure span{margin: 0 auto;background: #ccc;display: grid;justify-content: center;border-radius: 100vh;overflow: hidden;}
.VoiceList .ListBox .Box figure figcaption{margin-top: 10px;font-size: 17px;font-weight: bold;text-align: center;}
.VoiceList .ListBox .Box .Texts{font-size: 15px;line-height: 1.8;}

@media screen and (max-width:400px) {
    .VoiceList .ListBox .Box{display: grid;grid-template-columns: 1fr;}
    .VoiceList .ListBox .Box figure {margin: 0 auto;}
    .VoiceList .ListBox .Box figure span{max-width: 120px;}
    .Schedule ul.ListBox ul li span{display: block;width: 100%;margin-bottom: 5px;}
}

/*****/
#schedule{margin-top: -87px;padding-top: 90px;}
.Schedule{background: #fff4e1;}
.l_school .Schedule .Wrapper{padding-bottom: 40px;}
.Schedule h3{position: relative;background: #ff9c00;border: 1px solid #ff9c00;padding: 19px 150px 19px 30px;color: #fff;font-size: 20px;font-weight: bold;line-height: 1;}
.Schedule h3::after{content: "";display: inline-block;width: 23px;height: 23px;position: absolute;right: 20px;top: 50%;transform: translateY(-50%);
background: url(../img/icon_arrow.png) no-repeat;background-size: contain;}
.Schedule ul.ListBox > li h3.selected::after {transform: translateY(-50%) rotate(180deg);}
.Schedule h3:hover{cursor: pointer;}
.Schedule ul.ListBox > li h3 span{display: inline-block;margin-right: 10px;letter-spacing: 0;font-size: 90%;line-height: 19px;}
.Schedule ul.ListBox{display: grid;grid-template-columns: 1fr 1fr;gap: 5px 40px;}
.Schedule ul.ListBox > li{margin-bottom: 25px;}
.Schedule ul.ListBox li .Box{display: none;position: relative;padding: 20px 30px;border: 1px solid #ff9c00;background: #fff;}
.Schedule ul.ListBox li .Box .Btn{display: flex;align-items: center;box-sizing: border-box;margin-top: 10px;padding: 20px 30px 10px;border-top: 1px solid #ccc;}
.Schedule ul.ListBox li .Box ul{font-size: 18px;}
.Schedule ul.ListBox li .Box ul li{margin-bottom: 10px;}
.Schedule ul.ListBox li .Box ul li span{display: inline-block;width: 20%;margin-right: 20px;font-weight: bold;/*text-align: justify;text-align-last: justify;*/}
.Schedule ul.ListBox li .Box ul li.Memo{padding-top: 10px;margin-bottom: 0;font-size: 16px;}
.Schedule ul.ListBox li .Box ul li.Limit{font-size:16px;color:#ff2a00;font-weight:bold;padding-top:5px;display:none;}
.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: 300px;height: 48px;padding-right: 20px;font-size: 16px;}
.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(../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 h3 i{
display: none;font-style: normal;
width: 90px;position: absolute;right: 50px;top: 50%;transform: translateY(-50%);
background: #fff;font-size: 16px;text-align: center;padding:3px 0;
}

.Schedule li.off h3 .status_off,
.Schedule li.on h3 .status_on{ display: inline-block; }

.Schedule li.expired h3 .status_off,
.Schedule li.expired h3 .status_off{display: inline-block;}
.Schedule li.expired h3 .status_on,
.Schedule li.expired h3 .status_on{display: none;}

.Schedule h3 .status_off{color:#ff2a00;}
.Schedule h3 .status_on{color: #333;}

.Schedule .list_navi{max-width:680px;margin-right:auto;margin-left:auto;}
.Schedule .list_navi a{font-weight:bold;min-width:300px;display:inline-block;padding:10px;text-align:center;-webkit-border-radius: 5px; border-radius: 5px;background-color:#2ea9cf;color:#fff;text-decoration:none;}

/*---------カレンダー、営業日カレンダー、予約-------*/
.Calendar{margin-bottom: 30px;}
.CalNav p{position: relative;height: 36px;font-size: 28px;text-align: center;line-height: 36px;}
.CalNav p a{text-decoration: none;}
.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 20px;font-size: 14px;line-height: 16px;}
.StatusInfo span::before{content: "";display: inline-block;width: 16px;height: 16px;position: absolute;left: 0;top: 0;background:none 50% 50% no-repeat;background-size: contain;}
.StatusInfo span.status_on::before{background-image: url(../img/status_on.png);}
.StatusInfo span.status_off::before,
.StatusInfo li.expired span.status_on::before{background-image: url(../img/status_off.png);}

table.CalendarMain{width: 100%;vertical-align:top;margin:20px auto 10px;border:1px solid #eeeeee;}
table.CalendarMain th{height: 49px;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: 80px;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-top: 10px;font-weight: bold;}
table.CalendarMain td .cont{padding-top: 5px;}
table.CalendarMain td div.record{padding: 0 4px 3px;text-align:center;line-height: 1;}
table.CalendarMain td div.record span{display: inline-block;width: 30px;height: 30px;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 .status_on span{background-image: url(../../../school/img/status_on.png);}
table.CalendarMain td .expired div.record .status_on span,
table.CalendarMain td div.record .status_off span{background-image: url(../../../school/img/status_off.png);}
table.CalendarMain td div.record p a{display: block;}

a.BtnPrev,a.BtnNext{display: inline-block;width: 70px;height: 36px;position: absolute;top: 0;border: none;border-radius: 5px;background: #2ea9cf;color: #fff;font-size: 16px;line-height: 36px;}
.BtnPrev{left: 0;}
.BtnNext{right: 0;}


/*****/
.l_school .Venue .Wrapper h2{font-size: 30px;}
.Venue .Wrapper .Notes{box-sizing: border-box;max-width: 500px;margin: 0 auto 30px;padding: 12px 20px;background: #fff;border: 1px solid #ee9f13;}
.Venue .Wrapper .Notes li{padding: 5px 0px;color: #fa6917;font-size: 14px;font-weight: bold;line-height: 1;}
.Venue .Wrapper ul.AreaCont{display: grid;grid-template-columns: 1fr 1fr;gap: 40px;padding: 10px 50px 15px;background: #fffad3;}
.Venue .Wrapper .AreaCont li{padding: 25px 0;}
.Venue .Wrapper .AreaCont li .Box{position: relative;-webkit-box-sizing: border-box;box-sizing: border-box;height: 100%;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: 21px;color: #303030;font-weight: 600;}
.Venue .Wrapper .AreaCont li .Box .PlaceImg{max-width: 360px;margin: 25px auto;}
.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 25px 25px;font-size: 15px;line-height: 1.867;}
.Venue .Wrapper .AreaCont li .Box .Cont p{padding-top: 10px;}
.Venue .Wrapper .AreaCont li .Box .Cont p.Access{position: relative;padding-left: 80px;}
.Venue .Wrapper .AreaCont li .Box .Cont p.Access span{position: absolute;left: 0;top: 10px;}

/******/
.ApplicationFlow{background: #fff6e5;}
.ApplicationFlow .Wrapper{padding-bottom: 60px;}
.l_school .ApplicationFlow h2{margin-bottom: 50px;font-size: 30px;}
.ApplicationFlow .Wrapper ol.AreaCont{margin: 0 auto;display: grid;grid-template-columns: 1fr 1fr 1fr 1fr 1fr;gap: 35px;}
.ApplicationFlow .Wrapper .AreaCont li{position: relative;height: 312px;}
.ApplicationFlow .Wrapper .AreaCont li::after{content: "";display: block;width: 19px;height: 31px;background-color: #fed400;clip-path: polygon(19px 50%, 0% 0%, 0% 31px);position: absolute;top: 46%;left: -25px;}
.ApplicationFlow .Wrapper .AreaCont li:first-of-type::after{content: none;}
.ApplicationFlow .Wrapper .AreaCont li .Box{-webkit-box-sizing: border-box;box-sizing: border-box;position: relative; height: 100%;padding: 35px 20px 25px 19px;border: 1.5px solid #eb9600;background-color: #fff;}
.ApplicationFlow .Wrapper .AreaCont li .Box h3{position: relative;margin-bottom: 20px;font-size: 19px;font-weight: bold;text-align: center;}
.ApplicationFlow .Wrapper .AreaCont li .Box h3 span{display: inline-block;position: absolute;left: 50%;transform: translateX(-50%);top: -62px;width: 50px;height: 50px;text-indent:100%;white-space:nowrap;overflow:hidden;border-radius: 100vh;background-color: #eb9600;}
.ApplicationFlow .Wrapper .AreaCont li .Box p{padding-bottom: 10px;font-size: 15px;}
.ApplicationFlow .Wrapper .AreaCont li .Box p::before{content: "";display: inline-block;position: absolute;left: 20px;top: 70px;width: calc(100% - 40px);height: 2px;background: #eb9600;}
.ApplicationFlow .Wrapper .AreaCont li:nth-of-type(1) .Box h3 span{background-image: url(../img/flow2_01.png);background-repeat: no-repeat;background-size: 50%;background-position: center;}
.ApplicationFlow .Wrapper .AreaCont li:nth-of-type(2) .Box h3 span{background-image: url(../img/flow2_02.png);background-repeat: no-repeat;background-size: 50%;background-position: center;}
.ApplicationFlow .Wrapper .AreaCont li:nth-of-type(3) .Box h3 span{background-image: url(../img/flow2_03.png);background-repeat: no-repeat;background-size: 50%;background-position: center;}
.ApplicationFlow .Wrapper .AreaCont li:nth-of-type(4) .Box h3 span{background-image: url(../img/flow2_04.png);background-repeat: no-repeat;background-size: 50%;background-position: center;}
.ApplicationFlow .Wrapper .AreaCont li:nth-of-type(5) .Box h3 span{background-image: url(../img/flow2_05.png);background-repeat: no-repeat;background-size: 50%;background-position: center;}
.ApplicationFlow .Wrapper .AreaCont li .Box p span:first-of-type a {text-decoration: underline;color: #0000ff;}
.ApplicationFlow .Wrapper .AreaCont li .Box p span{display: block;margin-top: 10px;font-size: 13px;letter-spacing: 0;}
.ApplicationFlow .Wrapper .AreaCont li .Box p span b{font-weight: bold;}
.ApplicationFlow .Wrapper .AreaCont li .Box p span.Btn{position: absolute;left: 0;bottom: -20px;width: 100%;border-radius: 100vh;}
.ApplicationFlow .Wrapper .AreaCont li .Box p span.Btn a{width: 140px;height: 41px;margin: 0 auto;padding-right: 16px;font-size: 12px;}
.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(../img/icon_btn.png) no-repeat;background-size: contain;}

/*****/
.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: 20px;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: 17.5px 40px 17px 70px;background: #fffad3;font-size: 17px;color: #000;}
.FaQ dl div dt:hover{cursor: pointer;}
.FaQ dl div dd{padding: 25px 20px 10px 70px;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: 18.2px;height: 26.6px;background: url(../img/icon_q.png) no-repeat;background-size: contain;left: 18px;top: 17px;}
.FaQ dl div dd i{width: 50px;height: 50px;background: url(../img/icon_a.png) no-repeat #ee9f13;background-size: 20.3px 22.4px;background-position: center;left: 0;top: 20px;}

/*****/
#contact .Wrapper{padding-bottom: 0;}
.l_footer{border-top: 1px solid #ccc;}
#contact{margin-top: -87px;padding-top: 90px;}
#contact .other{padding-top: 10px;}
#contact .other span{display: block;font-size: 14px;}

/*****/
.area_form{padding-top: 40px;}
.contents_form{padding-bottom: 100px;}