@charset "UTF-8";
body{font-size:16px;line-height: 1.6em;font-style:normal;font-family:"Noto Sans JP", serif;font-weight: 400;}
*{margin:0;padding:0;box-sizing: border-box;}
ul{list-style:none;}
ol{list-style:decimal;margin: 10px 0 10px 1.5em; padding:0;}
a{color:#040404;text-decoration:none;transition:0.3s}
a:hover{opacity:0.75;}
img{vertical-align: bottom;max-width: 100%;}
.textCenter{text-align: center;}
.clearText{text-indent:100%;white-space:nowrap;overflow:hidden;}
.clearfix:after { clear:both;content:'';display:block;}
input,textarea,select{border-radius: 8px;border:1px solid #ccc;padding: 10px 15px;font-size:16px;line-height:20px; -webkit-appearance: none;appearance: none;width:100%;}
select{padding: 10px 20px 10px 10px;background: url("../img/select-down.svg") no-repeat right 10px center;background-size: 14px auto;}
input[type="text"]{width:100%;}
input[type="email"]{width:100%;}
textarea{width:100%;height:250px}
#page a,
.news_list a:hover,
#top_info a:hover{color:#594aa8;}

.news_list a{color:#594aa8; border-bottom: 1px solid #594aa8;}
/*フォント設定*/
/*丸ゴシック*/
#top_info section,
#top_course section,
#top_school section,
#top_app section,
#top_pr section,
#page h1,
#page section h2,
#page section h3,
.course_alink li,.navi ul li,
.cousetxt{font-family:"Nunito","Zen Maru Gothic", serif;font-weight:400;}
#page {margin-bottom:50px;min-height:85vh}

table { margin: 20px auto;border-spacing:6px;}
table th {border:0;background:rgba(160,160,250,0.2);color: #000;padding:6px;}
table td {border:none;padding: 6px;}
dl.formstyle{margin:0; line-height:20px;}
.formstyle dt{float:left;width:25%;height:100%; margin:0;padding:10px;line-height:20px;font-weight:600;}
.formstyle dd{padding-left:26%;margin-bottom: 10px; background:linear-gradient(-90deg,transparent 0%,transparent 75.5%,#d3d3ff 0%,#d3d3ff 100%);}
.onlySP{display:inline-block;}
.onlyPC{display:none;}

@media screen and (max-width: 840px) {
body{font-size:14px;line-height: 1.5em;position:relative;}
.last td:last-child {border-bottom:none;width: 100%;}
table { width: 100%;}
table th,
table td {border: none;display: block;width: 100%;text-align: center}
.formstyle dt{float:none;width:100%;height:auto; margin:0;padding:10px;line-height:20px;background:#d3d3ff; margin-bottom:10px; text-align: center;}
.formstyle dd{padding-left:0;margin-bottom: 10px; background:none}
}

/* header */
header{position:fixed;z-index:99;width:100%;padding:0 2%;height:66px;background-color: rgba(255,255,255,0.85);box-shadow:#ccc 0 0 5px;}
.h_logo{background: url("../img/header_logo.png") no-repeat;background-size:100% auto;background-position:left center;width:260px;max-width:35%; height:66px;display:block;float: left}
.h_logo a{width:100%; height:66px;display:block;}
.h_link {float:right;width:50%;text-align:right;padding: 8px 50px 0 0}
.h_experience {background: url("../img/header_experience_sp.png?20250201") no-repeat ;width: 100px; height:50px; background-size:100%; display:block; float: right}
.h_calendar {background: url("../img/header_calendar_sp.png") no-repeat ;width: 100px; height:50px; background-size:100%; display:block; float: right;margin-right: 5px}
@media screen and (max-width:500px) {
.h_experience,
.h_calendar {width:60px; height:30px;margin-top:10px}
	}
@media screen and (min-width:841px) {
header{height:90px;}
header .h_wrapper{width:900px;max-width:100%;margin: 0 auto;}
.h_logo{background-size:100% auto;background-position: top 15px left 0;width:300px;max-width:auto;}
.h_link {float:right;width:50%;text-align:right;padding: 5px 0 0 0}
.h_experience {background: url("../img/header_experience.png") no-repeat;width:180px;height:50px;background-size:100%;}
.h_calendar {background: url("../img/header_calendar.png") no-repeat;width:160px; height:40px; margin-top: 6px; background-size:100%;}
ul.pc_navi{float: right;}
ul.pc_navi li{display: inline-flex;font-size:15px;padding: 0 5px;}
ul.pc_navi li:last-child{padding: 0 0 0 5px;}
ul.pc_navi li a:hover{color:#594aa8;}
.onlySP{display:none;}
.onlyPC{display:inline-block;}
}

/*sp_nav*/
.sp_nav {position:fixed;z-index:999;right:0;top:0;width:64px;height:70px;box-sizing:border-box;padding:23px 0 0 0;cursor:pointer;pointer-events:auto;color:#594aa8;text-align:center;display:block;}
.sp_nav_wrapper {width:24px;display:inline-block;}
.sp_nav .navBar {display:block;width:100%;margin:0 auto 7px;height:2px;background:#594aa8;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;left:0;top:0;}
.sp_nav .navBar:last-child {margin-bottom:0;}
.js_navOpen .sp_nav .navBar {background:#594aa8;}
.js_navOpen .sp_nav .navBar.top {transform:translateY(9px) rotate(-45deg);}
.js_navOpen .sp_nav .navBar.middle {opacity:0;}
.js_navOpen .sp_nav .navBar.bottom {transform:translateY(-9px) rotate(45deg);}
.navi {position:fixed;z-index:998;will-change:transform;right:0;top:0;height:100%;background-color:rgba(200, 190, 235, 0.95);width:0px;padding-top:100px;box-sizing:border-box;-webkit-transition:all 400ms ease-out;transition:all 400ms ease-out;transform:translateZ(0) translateX(25%);overflow:auto;}
nav {padding:100px 0% 0;}
.js_navOpen nav {width:100%;}
.navi ul{padding:0 3%;}
.navi ul li {font-size:18px;white-space:nowrap;margin-bottom:0px;}
.navi ul li a{width:74%;border-bottom:1px solid rgba(255,255,255,0.60);display: block;padding:15px 0;}
@media screen and (max-width:840px) {
.pc_navi{display:none;}
}
@media screen and (min-width:841px) {
	.sp_nav {display:none;}
	.pc_navi{display:block;}
	nav.navi {display:none;}
}

/*共通ボタン*/
button { background: #594aa8;width: 240px;height:44px;border-radius:22px;margin: 30px auto 0 auto;border:0;color:#fff;font-size: 15px;}
button::before{content:"\f105";font-family:"FontAwesome";padding-right:0.5em;}
button:hover{opacity:0.8;transition:0.3s;}

input.submitBtn { background: #594aa8;width: 240px;height:40px;border-radius:20px;margin: 30px auto 0 auto;border:0;color:#fff;font-size: 15px;padding:auto;display: block;}
input.submitBtn::before{content:"\f105";font-family:"FontAwesome";padding-right:0.5em;}
input.submitBtn:hover{opacity:0.8;transition:0.3s;}
@media screen and (min-width:841px) {
}

/*トップ共通*/
#top_info section,
#top_course section,
#top_school section,
#top_app section,
#top_pr section{max-width: 900px;width:96%;margin: 0 auto;padding: 50px 0;}
#page section{max-width: 900px;width:90%;margin: 0 auto;padding: 50px 0;}
#page section{ padding:30px 0;}
#top_info h2,
#top_course h2,
#top_school h2,
#top_pr h2{font-size:25px;line-height:1.2em;text-align: center}

#top_info{background:url("../img/bg001.jpg") no-repeat center;background-size: cover;padding:0 2%;text-align: center;}
#top_info h2::first-letter{color:#594aa8;}
#top_info h2 span{font-size:16px;color:#594aa8;}
#top_info dl{ background: #fff;border-radius:8px;padding: 30px 6% 36px;margin-top:20px;box-shadow:0 0 10px #99ccf5;text-align: left;position: relative;}
#top_info dt{width:100%;margin:8px 0 0 0;}
#top_info dd{width:100%;border-bottom: 1px dotted #ccc;padding: 6px 0;}
#top_info .cat{width:80px;background:#ccc;color:#333;font-size:12px;line-height: 20px;border-radius:10px;text-align: center;display:inline-block;margin:0px 0 0 10px;}
#top_info dd:last-child{padding-bottom: 0;border-bottom:none;}
#top_info img.newsillust {position: absolute;right:-4%;bottom:0;margin-bottom:-20px;width:90px}
#top_info button{ background: #594aa8;}
#top_info .cat01 {background:#aadfff;}
#top_info .cat02 {background:#ffff00;}
#top_info .cat03 {background:#ffbadc;}
@media screen and (min-width:841px) {
#top_info img.newsillust {width:110px}
#top_info dl{ padding: 30px 5% 36px;}
#top_info dt{float:left;width:11.5em;margin:6px 10px 0 0;}
#top_info dd{padding-left:13em;margin:7px 0 0 0;padding: 0 0 6px 0;}
}
#top_course{background:url("../img/bg002.jpg") no-repeat center;background-size:cover;padding:0 2%;text-align: center}
#top_course h2::first-letter{color:#6094c0;}
#top_course h2 span{font-size:16px;color:#6094c0;}
#top_course ul{padding: 30px 0 ;}
#top_course ul li{width:40%;margin:0 3.5% 25px 0;display:inline-block;font-size: 17px;transition: 0.3s}
#top_course ul li:hover{opacity:0.8;}
#top_course ul li:last-child{margin:0;}
#top_course ul li img{width:100%;background:rgba(255,255,255,0.8);box-shadow:0 0 8px #aaccdd;padding:2%;margin-bottom:10px;}
#top_course button{ background: #6094c0;}
@media screen and (min-width:841px) {
#top_course ul li{width:31%;margin:0 3.5% 0 0;display:block;float:left;font-size: 16px;}
}
@media screen and (max-width: 640px) {
#top_course ul li{font-size: 15px}
	}

#top_school{background:url("../img/bg001.jpg") no-repeat center;background-size: cover;padding:0 2%;text-align: center}
#top_school h2::first-letter{color:#594aa8;}
#top_school h2 span{font-size:16px;color:#594aa8;}
#top_school img{ width:60%;margin-top: 25px;}
#top_school dl{margin-top: 25px;width:320px;margin: 0 auto;}
#top_school dl p{ font-size:20px;margin: 20px 0 20px 0;}
#top_school dt{float:left;width:6em;background:#594aa8;line-height: 22px;border-radius:13px;margin:0;display:block;color:#fff;font-size:12px;}
#top_school dd{padding-left:6em;margin:0 0 10px 0;text-align: left;}
#top_school .calendar_Btn{ margin-top: 20px; }
#top_school .calendar_Btn a{width:320px;height:60px;margin: 0 auto; max-width:100%; display: block; background: url("../img/btn_annualcalendar.png")no-repeat left top; background-size: 100%;}
#top_school button{ background: #594aa8;clear: both;}
@media screen and (min-width:841px) {
#top_school img{ width:48%;float: left;margin-top: 25px;}
#top_school dl{ width:48%;float: right;}
#top_school dl p{ font-size:24px;margin: 20px 0 25px 0;text-align: left;}
#top_school dt{width:6.5em;font-size:14px;line-height: 27px;}
#top_school dd{padding-left:7em;font-size:17px;}
#top_school .calendar_Btn{ width:48%;float: right; margin:25px 0 0 0; }
#top_school .calendar_Btn a{width:320px;height:60px;margin: 0;}
}

#top_app{background:url("../img/bg004.png") no-repeat center;padding:0 2%;text-align: center;}
#top_app section{text-align: center;}
#top_app h2{border-bottom:2px solid #000;color:#22a; padding-bottom:20px;margin-bottom:20px; display: inline-block;}
#top_app figure img{width:70%;max-width:400px;margin:20px 0;}
#top_app button{ background: #f90;}
#top_app button{ background-color: #20cdf1;background-image: linear-gradient(135deg, #20cdf1 0%, #4488ee 50%);border:2px solid #fff;border-radius:0;}
#top_app button::before{content:"\f019";font-family:"FontAwesome";padding-right:0.5em;}
@media screen and (min-width:841px) {
#top_app figure img{float:right;max-width:450px;width:44%;margin:0;}
#top_app h2{padding:40px 0 20px 0;width:53%;margin-bottom:20px;float:left;display: block;}
#top_app p{text-align: left;padding:40px 0 0 0;width:53%;}
}

#top_pr{background-color: #fffedd;
background-image: linear-gradient(0deg, #fff 0%, #fff 40%, #ffffee 80%);
padding:0 2%;text-align: center}
#top_pr section{max-width:800px;}
#top_pr h2 img{width:80%;}
#top_pr figure img{width:70%;max-width:400px;margin:20px 0;}
#top_pr button{ background: #f90;}
#top_pr button{ background-color: #f36;background-image: linear-gradient(135deg, #f49 0%, #f36 50%);border:2px solid #fff;border-radius:0;}
#top_pr button::before{content:"\f044";font-family:"FontAwesome";padding-right:0.5em;}
@media screen and (min-width:841px) {
#top_pr h2 img{width:65%;}
#top_pr figure img{float:right;max-width:450px;width:46%;margin:23px 0 10px 0;}
#top_pr p{text-align: left;padding:40px 0 0 0;}
#top_pr button{float:left}
}

/*第二階層*/
#page h1{background:url("../img/bg001.jpg") no-repeat center;background-size:cover;font-size:22px;line-height:1.2em;text-align: center;padding: 120px 0 30px 0}
#page h1::first-letter{color:#594aa8;}
#page h1 span{font-size:16px;color:#594aa8;}
#page h2{font-size:18px;border-bottom: 1px solid #8877aa;padding:30px 0 8px 0;margin-bottom:20px;}
#page h2::before{content:"\f0c8";font-family:"FontAwesome";color:#594aa8;padding-right:0.5em;font-size:18px;}
#page h3{font-size:16px;background: #FFDD55;text-align: center;line-height:40px;border-radius:20px;margin:40px 0 25px 0;font-weight:700;}
#page p.cousetxt{font-size:14px;font-weight:500; text-align: center;padding: 1.5em 0;}
#page .photo_modal {max-width:800px;margin:0 auto;}
#page .photo_modal li{width:32%;margin:0 2% 2% 0;display:block;float:left;font-size:16px;transition: 0.3s;}
#page .photo_modal li:hover{opacity:0.8;}
#page .photo_modal li:nth-child(3n){margin:0;}
.schoolinfo { text-align: center }
.schoolinfo img{ width:60%;margin-top: 25px;}
.schoolinfo p{ font-size:20px;width:320px;margin: 25px auto;}
.schoolinfo dl{ margin-top: 25px;width:320px;margin: 0 auto;}
.schoolinfo dt{float:left;width:5.2em;background:#594aa8;line-height: 26px;border-radius:13px;margin:0;display:block;color:#fff;text-align: center }
.schoolinfo dd{padding-left:6em;margin:0 0 20px 0;text-align: left;}
.schoolinfo button{ background: #594aa8;clear: both;}
.course_alink {margin:0; padding: 0 0 70px 0;}
.course_alink li {width:33%;margin:0 0.5% 0 0;display:block;float:left;}
.course_alink li:last-child {margin:0;}
#page .course_alink li a {width:100%;line-height:40px;border:1px solid #594aa8;display:block;text-align: center;color:#000;}
#page .course_alink li a::before{content:"\f107";font-family:"FontAwesome";color:#594aa8;padding-right:0.5em;font-size:14px;}
#page .course_alink li a:hover{background:rgba(160,160,250,0.2);}
#child h2{border-bottom: 1px solid rgba(255,221,85,1.0);}
#child h2::before{color:rgba(255,221,85,1.0);}
#child h3{background:rgba(255,221,85,1.0);}
#adult h2{border-bottom: 1px solid rgba(255,85,90,1.0);}
#adult h2::before{color:rgba(255,85,90,1.0);}
#adult h3{background:rgba(255,85,90,1.0);}
#free h2{border-bottom: 1px solid rgba(100,160,250,1.0);}
#free h2::before{color:rgba(100,160,250,1.0);}
#free h3{background:rgba(100,160,250,1.0);}
#child table th {background:rgba(255,221,85,0.3);}
#adult table th {background:rgba(255,85,90,0.3);}
#free table th {background:rgba(100,160,250,0.3);}

#page table td span{width:4em;display:inline-block;}
#page .column3 {margin: 0 1%;}
#page .column3 li{width:32%;margin:0 2% 0 0;display:block;float:left;font-size: 16px;transition: 0.3s;}
#page .column3 li:nth-child(3n){margin:0;}

#adult button{ background-color: #f36;background-image: linear-gradient(135deg, #f49 0%, #f36 50%);border:2px solid #fff;border-radius:0;}
#adult button::before{content:"\f15b";font-family:"FontAwesome";padding-right:0.5em;}

@media screen and (min-width:841px) {
#page h1{font-size:25px;line-height:1.2em;text-align: center;padding: 140px 0 30px 0}
#page h2{font-size:20px;}
#page h3{font-size:20px;}
#page p.cousetxt{font-size:17px;}
.schoolinfo { text-align: left }
.schoolinfo img{ width:40%;float: left;margin-top: 25px;}
.schoolinfo p{ font-size:22px;margin: 0 0 30px 0;width:55%;float: right;text-align: left;}
.schoolinfo dl{ width:55%;float: right;}
.schoolinfo dt{width:6em;}
.schoolinfo dd{padding-left:7em;}
}

@media screen and (max-width:640px) {
.course_alink li a {padding-right:0.3em;font-size:12px;}
.course_alink li a::before{padding-right:0.3em;font-size:10px;}
}


.news_list dl{ }
.news_list dt{width:100%;}
.news_list dd{width:100%;padding: 5px 0 10px 0;margin-bottom: 10px;border-bottom: 1px dotted #ccc;}
.news_list dd a{text-align: left;}
.news_list dd:last-child{padding-bottom: 0;border-bottom:none;}
.news_list button{ background: #594aa8;}
.news_list .cat{width:80px;background:#ccc;color:#333;font-size:12px;line-height: 20px;border-radius:10px;text-align: center;display:inline-block;margin:3px 10px 0 5px;font-family:"Nunito","Zen Maru Gothic", serif;}
.news_list .cat01 {background:#aadfff;}
.news_list .cat02 {background:#ffff00;}
.news_list .cat03 {background:#ffbadc;}
@media screen and (min-width:841px) {
.news_list dt{float:left;width:11em;padding: 10px 0;margin:0;vertical-align: top;}
.news_list dd{margin:0;padding: 10px 0 10px 11em;}
.news_list dd a{text-align: left;}
.news_list .cat{float: right;}
}
.faq dl{background: #fff;padding: 25px;margin: 20px 0 30px 0;border-radius:10px;box-shadow:0px 0px 10px #ddd;}
.faq dt:before,.faq dd:before{content:"\51";font-family:"FontAwesome";color:#fff;display:block;float:left;left:0px;text-align: center;width: 26px;height: 26px;line-height:26px;border-radius:13px;background:#594aa8;position: absolute;}
.faq dt{border-bottom: 1px dotted #ccc;padding:0 0 15px 40px;position: relative;font-weight:500;}
.faq dd:before{content:"\41";font-family:"FontAwesome";color:#fff;background:#f0255a;}
.faq dd{padding:10px 0 0 40px;position: relative}

/*モーダル関連*/
.modal{display:none;height:100vh;position:fixed;top:0;width:100%;z-index:997;}
.modalBg{background:rgba(100,100,100,0.9);height:100vh;position:absolute;width:100%;-webkit-backdrop-filter: blur(6px);backdrop-filter: blur(6px);}
.modalBg::before{content:'';position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgba(200,200,200,0.2);}
.modalContent{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:80px 20px 0 20px;width:100%;height:100%;overflow:auto}
.closeBtn{font-size:40px;display:block;color:#fff;text-decoration:none;margin-right:25px;margin-top:-60px;z-index:2;position:absolute;right:0;transition: 0.3s}
.closeBtn:hover{opacity:0.6;transition: 0.3s}
.closeBtn_btm{font-size:55px;display:inline-block;float:right;color:#888;text-decoration:none;text-align: right;margin-top:70px;}
.closeBtn_btm:hover{opacity:0.6;transition: 0.3s}
.modalContent figure{text-align:center;width:100%;}
.modalContent figure img{max-width:800px;box-shadow:0 0 5px rgb(0,0,0,0.3);}
.modalContent .info{max-width:230px;margin: 25px auto;background: #fff;padding:4px;box-shadow:8px 8px 4px rgb(0,0,0,0.5);}
.modalContent h3{text-align:center;font-size:16px;line-height:26px;margin:5px 0 2px 0;color:#333;}
.modalContent h3 .fonts{font-size:12px;line-height:24px;}
.modalContent p{padding:5px 0;font-size:12px;color:#333;text-align:center}

.fadein {opacity: 0;transform: translate(0,0);transition: all 1.0s;}
.scrollin{ opacity: 1 !important;transform: translate(0, 0) !important;}
#page-top {position: fixed;bottom:-10px;right:0px;font-size:12px;z-index:9;transform: rotate( 90deg );transform-origin: right top;}
#page-top a {background: #888;text-decoration: none;color: #fff;width:120px;height:30px;line-height:30px;text-align: center;display: block;border-radius:0 0 5px 5px ;opacity: 0.6;transition: all .3s ease;}
#page-top a::before {content:"\f100";font-family:"FontAwesome";}
#page-top a::after {content:"  PAGE TOP";font-family:"Noto Sans JP", serif;font-weight: 400;}
#page-top a:hover {text-decoration: none;opacity: .5;}

#instaLink {position: fixed;bottom:150px;right:0px;font-size:24px;z-index:9;}
#instaLink a {background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;text-decoration: none;color: #fff;width:30px;height:30px;line-height:30px;text-align: center;display: block;border-radius:5px 0 0 5px ;opacity: 0.6;transition: all .3s ease;}
#instaLink a::before {content:"\f16d";font-family:"FontAwesome";}
#instaLink a:hover {text-decoration: none;opacity: .5;}

#page after{content:"";margin-bottom:30px;}

/*wp-pagenavi base*/
.wp-pagenavi {
clear: both;
text-align:center;
margin: 40px 0;
}
.wp-pagenavi a, .wp-pagenavi span {
color: #999;
background-color: #FFF;
border: 1px solid #e0e0d2;
padding: 8px 10px;
margin: 0 2px;
white-space: nowrap;
-webkit-border-radius: 3px;
border-radius: 3px;
-webkit-transition: 0.2s ease-in-out;
transition: 0.2s ease-in-out;
text-align: center;
text-decoration:none;
	font-size: 14px;
}
.wp-pagenavi a:hover{
color:#FFF; 
background-color:#999; 
border-color:#999;
}
.wp-pagenavi span.current{
color: #FFF;
background-color: #594aa8;
border:1px solid #594aa8;
font-weight: bold;
}


/*フッター*/
footer {background: url("../img/header_logo.png") no-repeat center top 5px;background-size:190px auto;background-color: #fafafa;border-top:1px solid #ddd;padding:35px 0 0 0;font-size:14px;}
footer .footer_nav {text-align: center;padding:10px}
footer .footer_nav li{font-size:12px;display:inline-block;text-align: center;padding: 0 3px;}
footer .copy{background:#666;color:#fff;font-size:11px;line-height:13px;text-align:center;padding:3px 0;}


/*recaptcha削除*/
.grecaptcha-badge { visibility: hidden; }