@charset "UTF-8";

.mainContents p {
  line-height: 2;
}
.mainContents a.underL {
  text-decoration: underline;
}

/***** pan *****/
.pan {
  padding: 12px 14px;
  background-color: #F6F5F0;
}
.pan ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.pan ul li {
  font-size: .6923em;
}
.pan ul li + li {
  position: relative;
  padding-left: 3em;
}
.pan ul li + li::before {
  content: '＞';
  position: absolute;
  top: 0;
  left: 0;
  padding: 0 1em;
  font-weight: 500;
}
.pan ul li:last-child {
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 700;
}


/***** pageH *****/
.pageH {
  margin: 30px 0;
}
.pageH h1 {
  text-align: center;
  line-height: 1.722;
  letter-spacing: .013em;
  font-size: 1.384em;
  font-weight: 700;
}

/* classroomDet */
.pageH.classroomDet {
  margin: 0 0 40px;
}
.pageH.classroomDet .classNameBox {
  position: relative;
  padding: 70px 20px 0;
  background: url(../images/classroom/detail-h.png) top center / 100% 70px no-repeat;
}
.pageH.classroomDet .classNameBox h1 {
  margin-bottom: 3px;
  padding-bottom: 80px;
  background: url(../images/classroom/detail-h2.png) bottom center / 340px auto no-repeat;
  font-size: 1.615em;
  color: #5BB647;
}
.pageH.classroomDet .classNameBox .point {
  position: absolute;
  top: 15px;
  left: 10px;
  line-height: 1;
  padding-left: 2px;
  color: #777;
  font-size: .61538em;
}
.pageH.classroomDet .classNameBox .point img {
	margin-left: -2px;
}

.pageH.classroomDet .slideWrap {
  overflow: hidden;
}
.pageH.classroomDet .slideBox {
  max-width: 1470px;
  margin: 0 auto;
}
.pageH.classroomDet .detailSlide {
  margin-bottom: 40px;
}
.pageH.classroomDet .detailSlide.slide-one {
  padding: 0 15px;
}
.pageH.classroomDet .detailSlide .slick-list {
  overflow: visible;
}
.pageH.classroomDet .detailSlide.slide-one li,
.pageH.classroomDet .detailSlide .slick-list li {
  height: calc((100dvw - 45px) * .5831);
  overflow: hidden;
  border-radius: 10px;
}
.pageH.classroomDet .detailSlide .slick-list li {
  margin-right: 15px;
}
.pageH.classroomDet .detailSlide.slide-one li img,
.pageH.classroomDet .detailSlide .slick-list li img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.slick-dots {
  margin-top: 10px;
}
.pageH.classroomDet .hTxt {
  max-width: 875px;
  margin: 0 auto;
  padding: 0 37px;
}
.pageH.classroomDet .hTxt p {
  line-height: 2;
}


/***** page-classroom *****/
/* top */
.classroomTop.page-classroom .search-classroomBox{
  margin-top: 0;
}
.classroomTop .lead{
  margin-bottom: 30px;
}

/* resultTxt */
.resultTxt {
  font-size: 1.07em;
  letter-spacing: .013em;
}
.resultTxt span {
  font-size: 1.285em;
  color: #5BB647;
}
.resultTxt + .memo {
  line-height: 1.5;
  margin: 1.2em 0 1.3em;
  font-size: .769em;
}

/* resultMap */
.resultMap {
  position: relative;
  width: 100%;
  height: 317px;
  margin-bottom: 30px;
}
.resultMap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* classroomList */
.classroomList {
  margin-top: 19px;
}
.classroomList li + li {
  margin-top: 40px;
}
.classroomList li a {
  display: block;
}
.classroomList li a h2 {
  line-height: 1.357em;
  margin-bottom: 10px;
  padding: 12px 10px;
  background: #E8F8DA url(../images/ico-arrow_g.svg) right 10px center / 8px auto no-repeat;
  font-size: 1.076em;
}

.classroomInfo {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 10px;
}
.classroomInfo dt {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 20px;
  line-height: 1.6;
  background-color: #5BB647;
  text-align: center;
  font-size: .769em;
  color: #fff;
}
.classroomInfo dd {
  width: calc(100% - 70px);
  line-height: 1.6;
  font-size: .923em;
}

/* search-classroomBox */
.page-classroom .search-classroomBox,
.page-faq .search-classroomBox {
  max-width: 900px;
  margin: 75px auto 0;
  padding: 44px 16px 40px;
  border-radius: 10px;
  background-color: #E8F8DA;
}
.page-classroom .search-classroomBox .contTtl,
.page-faq .search-classroomBox .contTtl {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  color: #5BB647;
}

/* areaList */
.areaList {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 8px;
  margin-bottom: 50px;
}
.areaList li {
  width: calc((100% - 16px) / 3);
}
.areaList li a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: .85em 0;
  border-radius: 1.5em;
  background: #5BB647 url(../images/ico-arrow_b.svg) right 14px center / 8px auto no-repeat;
  box-shadow: rgba(0,0,0,.15) 2px 2px 1px;
  font-size: 1.153em;
  color: #fff;
}

.areaTtl {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 35px 0 15px;
  padding: .35em 0;
  border-radius: 1em;
  background-color: #E8F8DA;
  font-size: 1.153em;
  font-weight: 700;
  color: #5BB647;
}
.areaToggle {
  position: relative;
  display: flex;
  align-items: center;
  padding: 1.05em 0;
  border-bottom: 1px solid #E2E2E2;
  font-size: 1.23em;
  font-weight: 700;
  cursor: pointer;
  transition: all .4s ease;
}
.areaToggle:hover {
  opacity: .6;
}
.areaClassroomList {
  display: none;
}
.areaToggle::before,
.areaToggle::after,
.areaClassroomList h5::before,
.areaClassroomList h5::after {
  content: '';
  display: block;
  position: absolute;
  top: calc(50% - 1px);
  right: 19px;
  width: 15px;
  height: 2px;
  background-color: #5BB647;
}
.areaClassroomList h5::before,
.areaClassroomList h5::after {
  right: 0;
}
.areaToggle::after,
.areaClassroomList h5::after {
  transform: rotate(90deg);
}
.areaToggle.close::after,
.areaClassroomList h5.close::after {
  display: none;
}
.areaClassroomList h5 {
  position: relative;
  display: flex;
  align-items: center;
  padding: 1.17em 0;
  font-size: 1.153em;
  font-weight: 700;
  cursor: pointer;
  transition: all .4s ease;
}
.areaClassroomList h5:hover {
  opacity: .6;
}
.cityList + h5 {
  border-top: 1px solid #5BB647;
}

.areaClassroomList {
  margin-top: 15px;
  padding: 0 19px 0 20px;
  background-color: #E8F8DA;
}
.areaClassroomList .cityList {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  padding-bottom: 35px;
}
.areaClassroomList .cityList:last-child {
  border-bottom: 1px solid #5BB647;
}
.areaClassroomList .cityList li a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 90px;
  padding: .55em;
  border-radius: 10px;
  border: 1px solid #5BB647;
  background-color: #fff;
}


/***** page-classroom detail *****/
.classroomData div {
  margin-top: 15px;
  padding: 20px;
  background-color: #E8F8DA;
  border-radius: 10px;
  font-size: .923em;
}
.classroomData div h3,
.classroomData div li {
  line-height: 1.5;
}
.classroomData div h3 {
  font-weight: 700;
}
.classroomData div li {
  margin-top: .5em;
}
.classroomData div.neighborhood ul li {
  margin-left: 1em;
  text-indent: -1em;
}
.classroomData div.neighborhood ul li::before {
  content: '・';
}
.classroomData div.otherClassroom ul li a h4 {
  margin-left: 1em;
  text-indent: -1em;
  text-decoration: underline;
  font-weight: 700;
  color: #5BB647;
}
.classroomData div.otherClassroom ul li a h4::before {
  content: '→';
}
.classroomData div.otherClassroom ul li a p {
  margin-top: .2em;
  text-decoration: underline;
}

.courseSec h3 {
  line-height: 1.5;
  margin-bottom: .833em;
  text-align: center;
  font-size: 1.384em;
  letter-spacing: .05em;
  font-weight: 700;
  color: #5BB647;
}
.courseSec .courseList + h3 {
  margin-top: 50px;
}
.courseSec .courseList > li {
  overflow: hidden;
  box-shadow: rgba(0,0,0,.15) 2px 2px 1px;
  border-radius: 5px;
}
.courseSec .courseList > li + li {
  margin-top: 15px;
}
.courseSec .courseList li h4 {
  padding: 10px;
  background-repeat: repeat;
  transition: all .4s ease;
  cursor: pointer;
}
.courseSec .courseList li h4:hover {
  opacity: .6;
}
.courseSec .courseList li h4 > span,
.courseSec .courseList li h4 > a {
  display: flex;
  flex-direction: column;
  position: relative;
  justify-content: center;
  align-items: center;
  gap: 10px;
  height: 55px;
  border-radius: 15px;
  background-color: #fff;
  font-size: 1.153em;
  font-weight: 700;
}
.courseSec .courseList li h4 > a:hover {
  opacity: 1;
}
.courseSec .courseList li h4 span span,
.courseSec .courseList li h4 a span {font-size: .666em;}
.courseSec .courseList li h4 > span::before,
.courseSec .courseList li h4 > span::after {
  content: '';
  display: block;
  width: 2px;
  height: 17px;
  position: absolute;
  top: calc(50% - 8.5px);
  right: 28px;
}
.courseSec .courseList li h4 span::after {
  transform: rotate(90deg);
}
.courseSec .courseList li h4.close span::before {display: none;}
.courseSec .courseList li h4 > a::before {
  content: '';
  display: block;
  width: 12px;
  height: 12px;
  border-style: solid;
  border-width: 1px 1px 0 0;
  position: absolute;
  top: calc(50% - 6px);
  right: 28px;
  transform: rotate(45deg);
}
.courseSec .courseList li .courseDetailBox {
  padding: 25px;
}
.courseSec .courseList li .courseDetailBox > figure {
  max-width: 680px;
  margin: 0 auto;
  overflow: hidden;
  line-height: 0;
  text-align: center;
  border-radius: 10px;
}
.courseSec .courseList li .courseDetailBox > p.lead {
  line-height: 2;
  margin: 25px 0 36px;
  letter-spacing: .05em;
}
.courseSec .courseList li .courseDetailBox .courseDetail {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 25px;
  padding: 15px 15px;
  background-color: #fff;
  border-radius: 5px;
}
.courseSec .courseList li .courseDetailBox .courseDetail h5 {
  margin-bottom: 1em;
  line-height: 1.2;
  padding: .5em 1em;
  border-radius: 1em;
  font-size: .923em;
  font-weight: 700;
  color: #fff;
}
.courseSec .courseList li .courseDetailBox .courseDetail h6 {
  width: 100%;
  line-height: 1.2;
  margin-bottom: 1em;
  padding: .2em;
  text-align: center;
  border-radius: 1em;
  font-size: .846em;
  font-weight: 700;
  color: #fff;
}
.courseSec .courseList li .courseDetailBox .courseDetail .price {
  line-height: 1.2;
  font-weight: 700;
}
.courseSec .courseList li .courseDetailBox .courseDetail .price strong {
  padding: 0 5px;
  font-size: 3.07em;
  font-weight: 700;
  color: #FF2C2C;
}
.courseSec .courseList li .courseDetailBox .courseDetail .price span {
  font-size: .6923em;
}
.courseSec .courseList li .courseDetailBox .courseDetail .count {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  margin: 1em 0;
}
.courseSec .courseList li .courseDetailBox .courseDetail .count li {
  padding: .5em 1em;
  font-size: .923em;
  font-weight: 700;
  color: #FF2C2C;
}
.courseSec .courseList li .courseDetailBox .courseDetail .memo {
  line-height: 1.5;
  font-size: .769em;
}
.courseSec .courseList li .courseDetailBox .courseDetail .plus {
  display: block;
  position: relative;
  width: 20px;
  height: 20px;
  margin: 0 auto 1em;
}
.courseSec .courseList li .courseDetailBox .courseDetail .plus::before,
.courseSec .courseList li .courseDetailBox .courseDetail .plus::after {
  content: '';
  display: block;
  position: absolute;
  top: calc(50% - 2px);
  left: 0;
  width: 100%;
  height: 4px;
}
.courseSec .courseList li .courseDetailBox .courseDetail .plus::after {
  transform: rotate(90deg);
}
.courseSec .courseList li .courseDetailBox .courseDetail .expenses,
.courseSec .courseList li .courseDetailBox .courseDetail .rental {
  display: flex;
  gap: 11px;
  margin-bottom: 10px;
}
.courseSec .courseList li .courseDetailBox .courseDetail .expenses {
  align-items: flex-end;
}
.courseSec .courseList li .courseDetailBox .courseDetail .rental > p {
  display: flex;
  line-height: 1.6;
  padding: .5em .9em;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: .846em;
}
.courseSec .courseList li .courseDetailBox .courseDetail .expenses p.price2,
.courseSec .courseList li .courseDetailBox .courseDetail .rental p.price2 {
  line-height: 1.2;
  text-align: center;
  font-weight: 700;
}
.courseSec .courseList li .courseDetailBox .courseDetail .expenses p.price2 strong,
.courseSec .courseList li .courseDetailBox .courseDetail .rental p.price2 strong {
  font-size: 2.153em;
  font-weight: 700;
}
.courseSec .courseList li .courseDetailBox .courseDetail .expenses p.price2 span,
.courseSec .courseList li .courseDetailBox .courseDetail .rental p.price2 span {
  font-size: .692em;
}
.courseSec .courseList li.yellow h4,
.courseSec .courseList li.yellow .courseDetailBox .courseDetail h5,
.courseSec .courseList li.yellow .courseDetailBox .courseDetail h6 {background-image: url(../images/bg-yellow.png); color: #000;}
.courseSec .courseList li.pink h4,
.courseSec .courseList li.pink .courseDetailBox .courseDetail h5,
.courseSec .courseList li.pink .courseDetailBox .courseDetail h6 {background-image: url(../images/bg-pink.png);}
.courseSec .courseList li.blue h4,
.courseSec .courseList li.blue .courseDetailBox .courseDetail h5,
.courseSec .courseList li.blue .courseDetailBox .courseDetail h6 {background-image: url(../images/bg-blue.png);}
.courseSec .courseList li.red h4,
.courseSec .courseList li.red .courseDetailBox .courseDetail h5,
.courseSec .courseList li.red .courseDetailBox .courseDetail h6 {background-image: url(../images/bg-red2.png);}
.courseSec .courseList li.orange h4,
.courseSec .courseList li.orange .courseDetailBox .courseDetail h5,
.courseSec .courseList li.orange .courseDetailBox .courseDetail h6 {background-image: url(../images/bg-orange.png);}
.courseSec .courseList li.light_b h4,
.courseSec .courseList li.light_b .courseDetailBox .courseDetail h5,
.courseSec .courseList li.light_b .courseDetailBox .courseDetail h6 {background-image: url(../images/bg-light_b.png);}
.courseSec .courseList li.yellow h4 span::before,
.courseSec .courseList li.yellow h4 span::after,
.courseSec .courseList li.yellow .courseDetailBox .courseDetail .plus::before,
.courseSec .courseList li.yellow .courseDetailBox .courseDetail .plus::after {background-color: #FFE737;}
.courseSec .courseList li.pink h4 span::before,
.courseSec .courseList li.pink h4 span::after,
.courseSec .courseList li.pink .courseDetailBox .courseDetail .plus::before,
.courseSec .courseList li.pink .courseDetailBox .courseDetail .plus::after {background-color: #FF5A94;}
.courseSec .courseList li.blue h4 span::before,
.courseSec .courseList li.blue h4 span::after,
.courseSec .courseList li.blue .courseDetailBox .courseDetail .plus::before,
.courseSec .courseList li.blue .courseDetailBox .courseDetail .plus::after {background-color: #437CE0;}
.courseSec .courseList li.red h4 span::before,
.courseSec .courseList li.red h4 span::after,
.courseSec .courseList li.red .courseDetailBox .courseDetail .plus::before,
.courseSec .courseList li.red .courseDetailBox .courseDetail .plus::after {background-color: #FF573A;}
.courseSec .courseList li.orange h4 span::before,
.courseSec .courseList li.orange h4 span::after,
.courseSec .courseList li.orange .courseDetailBox .courseDetail .plus::before,
.courseSec .courseList li.orange .courseDetailBox .courseDetail .plus::after {background-color: #FF9300;}
.courseSec .courseList li.light_b h4 span::before,
.courseSec .courseList li.light_b h4 span::after,
.courseSec .courseList li.light_b .courseDetailBox .courseDetail .plus::before,
.courseSec .courseList li.light_b .courseDetailBox .courseDetail .plus::after {background-color: #69D6DE;}
.courseSec .courseList li.yellow .courseDetailBox,
.courseSec .courseList li.yellow .courseDetailBox .courseDetail .count li,
.courseSec .courseList li.yellow .courseDetailBox .courseDetail .rental > p {background-color: #FEFFCC;}
.courseSec .courseList li.pink .courseDetailBox,
.courseSec .courseList li.pink .courseDetailBox .courseDetail .count li,
.courseSec .courseList li.pink .courseDetailBox .courseDetail .rental > p {background-color: #F8CFE8;}
.courseSec .courseList li.blue .courseDetailBox,
.courseSec .courseList li.blue .courseDetailBox .courseDetail .count li,
.courseSec .courseList li.blue .courseDetailBox .courseDetail .rental > p {background-color: #C6D6F0;}
.courseSec .courseList li.red .courseDetailBox,
.courseSec .courseList li.red .courseDetailBox .courseDetail .count li,
.courseSec .courseList li.red .courseDetailBox .courseDetail .rental > p {background-color: #F8C6C8}
.courseSec .courseList li.orange .courseDetailBox,
.courseSec .courseList li.orange .courseDetailBox .courseDetail .count li,
.courseSec .courseList li.orange .courseDetailBox .courseDetail .rental > p {background-color: #F8DCBD;}
.courseSec .courseList li.light_b .courseDetailBox,
.courseSec .courseList li.light_b .courseDetailBox .courseDetail .count li,
.courseSec .courseList li.light_b .courseDetailBox .courseDetail .rental > p {background-color: #CEF7FA;}
.courseSec .courseList li.yellow h4 a::before {border-color: #FFE737;}
.courseSec .courseList li.pink h4 a::before {border-color: #FF5A94;}
.courseSec .courseList li.blue h4 a::before {border-color: #437CE0;}
.courseSec .courseList li.red h4 a::before {border-color: #FF573A;}
.courseSec .courseList li.orange h4 a::before {border-color: #FF9300;}
.courseSec .courseList li.light_b h4 a::before {border-color: #69D6DE;}

.timetableSec {
  padding: 40px 0 50px;
  background-color: #E8F8DA;
}
.timetableSec .timetableFigBox {
  overflow-x: auto;
  margin-right: -16px;
  padding-right: 16px;
  padding-bottom: 15px;
}
.timetableSec .timetableFigBox .timetableFig {
 min-width: 631px;
}
.simplebar-track.simplebar-horizontal {
  height: 4px;
  border-radius: 2px;
  background-color: #fff;
}
.simplebar-scrollbar::before {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 4px;
  border-radius: 2px;
	background: #5BB647;
  opacity: 1!important;
}

.pointList li + li {
  margin-top: 50px;
}
.pointList li h3 {
  line-height: 1.625;
  margin-bottom: 1.25em;
  text-align: center;
  font-size: 1.23em;
  font-weight: 600;
  color: #5BB647;
}
.pointList li figure {
  margin-bottom: 20px;
  text-align: center;
}
.pointList li p {
  line-height: 2.1;
  padding: 0 15px;
  letter-spacing: .05em;
}

.aboutSec .magicDet .txt {
  position: relative;
  margin: 15px 35px;
}
.aboutSec .magicDet.magic2 {
  padding-bottom: 20px;
}
.aboutSec .magicDet .txt h3 {
  line-height: 1.5;
  margin-bottom: 15px;
  letter-spacing: .05em;
  font-size: 1.23em;
  font-weight: 700;
  color: #5BB647;
}
.aboutSec .magicDet .txt h3 img {
  margin-bottom: 15px;
}
.aboutSec .magicDet .txt p {
  line-height: 1.8;
  letter-spacing: .05em;
}
.aboutSec .magicDet.magic2 .txt h3,
.aboutSec .magicDet.magic2 .txt p {
  text-align: right;
}
.aboutSec .magicDet.magic2 .txt .chara {
  position: absolute;
  bottom: -20px;
  left: 0;
  transform: rotate(-10deg);
}

/***** page-newsList *****/
.page-newsList .catList {
  display: flex;
  gap: 4px;
  margin-bottom: 15px;
}
.page-newsList .catList .catBox {
  display: block;
  width: calc(25% - 3px);
}
.page-newsList .catList .catBox:not(.is-select) a {opacity: .3;}
.page-newsList .catList .catBox:not(.is-select) a:hover {opacity: 1;}
.page-newsList .catList .catBox span {
  padding: 1em 0;
  border-radius: 2em;
}

.page-newsList .tagWrap .tagList {
  overflow: hidden;
  transition: height .3s ease;
}
.page-newsList .tagWrap .catItem {
  display: none !important;
}
.page-newsList .tagWrap .moreBtn {
  position: relative;
  display: block;
  width: 30px;
  height: 30px;
  margin: 18px auto 0;
  background-color: #5BB647;
  border-radius: 50%;
  cursor: pointer;
}
.page-newsList .tagWrap .moreBtn::before,
.page-newsList .tagWrap .moreBtn::after {
  content: '';
  display: block;
  position: absolute;
  top: calc(50% - 1px);
  left: calc(50% - 7.5px);
  width: 15px;
  height: 2px;
  background-color: #fff;
}
.page-newsList .tagWrap .moreBtn::after {
  transform: rotate(90deg);
}
.page-newsList .tagWrap .moreBtn.close::after {
  display: none;
}

.page-newsList .newsList {
  margin-top: 25px;
}
.page-newsList .newsList .listInner {
  width: calc(100% - 137px);
}
.page-newsList .newsList data {
  color: #5BB647;
}

.page-newsList .wp-pagenavi {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 15px;
  margin-top: 50px;
}
.page-newsList .wp-pagenavi * {
  font-size: .923em;
  font-weight: 600;
  color: #5BB647;
}
.page-newsList .wp-pagenavi .page,
.page-newsList .wp-pagenavi .current,
.page-newsList .wp-pagenavi .first,
.page-newsList .wp-pagenavi .last {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  border-radius: 50%;
  background-color: #E8F8DA;
}
.page-newsList .wp-pagenavi .current {
  background-color: #5BB647;
  color: #FFFFFF;
}
.page-newsList .wp-pagenavi .previouspostslink,
.page-newsList .wp-pagenavi .nextpostslink {
  width: .75em;
  height: 1.5em;
  background: url(../images/ico-arrow_g.svg) right center / .75em auto no-repeat;
}
.page-newsList .wp-pagenavi .previouspostslink {
  transform: scale(-1, -1);
}

/***** page-newsDet / page-privacypolicy *****/
.page-newsDet .detH,
.page-privacypolicy .detH {
  margin: 25px 0;
}
.page-newsDet .detH data {
  display: block;
  font-size: .846em;
  font-weight: 600;
  color: #5BB647;
}
.page-newsDet .detH h1 {
  margin: 15px 0;
  font-size: 1.385em;
  font-weight: 700;
  line-height: 1.722;
}

.page-newsDet .detThum {
  margin: 0 -18px 25px;
}

.page-newsDet .detInner p,
.page-newsDet .detInner li,
.page-privacypolicy .detInner p,
.page-privacypolicy .detInner li {
  line-height: 2.1;
}
.page-newsDet .detInner sup {
  vertical-align: super;
  font-size: smaller;
  font-weight: inherit;
}
.page-newsDet .detInner sub {
  vertical-align: sub;
  font-size: smaller;
  font-weight: inherit;
}
.page-newsDet .detInner strong,
.page-newsDet .detInner b {
  font-weight: bold;
}
.page-newsDet .detInner em,
.page-newsDet .detInner i {
  font-style: italic;
  font-weight: inherit;
}
.page-newsDet .detInner span,
.page-privacypolicy .detInner span {
  font-weight: inherit;
}
.page-newsDet .detInner a,
.page-privacypolicy .detInner a {
  color: inherit;
}
.page-privacypolicy .detInner a {
  font-weight: 500;
}
.page-newsDet .detInner > *,
.page-privacypolicy .detInner > * {
  max-width: 100%;
  margin-top: 25px;
}
.page-newsDet .detInner h2,
.page-newsDet .detInner h3,
.page-privacypolicy .detInner h2,
.page-privacypolicy .detInner h3 {
  margin-top: 50px;
}
.page-newsDet .detInner h2 + h3,
.page-privacypolicy .detInner h2 + h3 {
  margin-top: 25px;
}
.page-newsDet .detInner figcaption {
  margin-top: 5px;
}

.page-newsDet .detInner h2,
.page-privacypolicy .detInner h2 {
  font-size: 1.231em;
  font-weight: 700;
  padding: 1em .625em;
  border-left: 5px solid #5BB647;
  background-color: #F6F5F0;
  box-shadow: 0 4px 4px #00000025;
}
.page-privacypolicy .detInner > *:first-child {
  margin-top: 0;
}
.page-newsDet .detInner h3 span,
.page-privacypolicy .detInner h3 span {
  display: inline-block;
  font-size: 1.154em;
  font-weight: 700;
  padding: .666em .866em;
  border-left: 2px solid #5BB647;
  border-right: 2px solid #5BB647;
}
.page-newsDet .detInner h4 span {
  display: inline-block;
  font-size: 1.077em;
  font-weight: bold;
  padding: .928em 2.143em;
  border-top: 1px dashed #5BB647;
  border-bottom: 1px dashed #5BB647;
}
.page-newsDet .detInner h5 {
  font-weight: 700;
  position: relative;
  padding-left: 1.5em;
}
.page-newsDet .detInner h5::before {
  content: "★";
  position: absolute;
  top: 0;
  left: 0;
  color: #5BB647;
}

.page-newsDet .detInner li,
.page-privacypolicy .detInner li {
  position: relative;
  padding-left: 1em;
}
.page-privacypolicy .detInner ol li {
  padding-left: 1.5em;
}
.page-newsDet .detInner ul li::before,
.page-privacypolicy .detInner ul li::before {
  content: "";
  position: absolute;
  top: .742em;
  left: 0;
  width: .615em;
  height: .615em;
  border-radius: 50%;
  background-color: #5BB647;
}
.page-newsDet .detInner ol,
.page-privacypolicy .detInner ol {
  counter-reset: number;
}
.page-newsDet .detInner ol li::before,
.page-privacypolicy .detInner ol li::before {
  counter-increment: number;
  content: counter(number)'.';
  position: absolute;
  top: 0;
  left: 0;
  color: #5BB647;
}
.page-privacypolicy .detInner ol.paren-number > li::before {
  content: '('counter(number)')';
}
.page-newsDet .detInner table {
  width: 100%;
}
.page-newsDet .detInner tr:nth-child(odd) {
  background-color: #F5F5F5;
}
.page-newsDet .detInner tr:nth-child(even) {
  background-color: #E5F7E1;
}
.page-newsDet .detInner th,
.page-newsDet .detInner td {
  text-align: center;
  border: 2.5px solid #FFFFFF;
}
.page-newsDet .detInner th {
  font-size: 1.154em;
  font-weight: 700;
  padding: .933em;
  color: #FFFFFF;
  background-color: #5BB647;
}
.page-newsDet .detInner td {
  font-size: .923em;
  padding: 1.166em;
}

.page-newsDet .detInner figcaption {
  font-size: .846em;
}

.page-newsDet .detInner .detMovie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.page-newsDet .detInner .detMovie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.page-newsDet .detF {
  margin-top: 50px;
  padding-top: 50px;
  border-top: 1px solid #5BB647;
}
.page-newsDet .detF h2 {
  font-size: 1.231em;
  font-weight: 700;
  text-align: center;
}

.page-newsDet .detF .relatedList {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 10px;
  margin: 20px 0 30px;
}
.page-newsDet .detF .relatedList li {
  width: calc(50% - 5px);
}
.page-newsDet .detF .relatedList li .relatedWrap {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.page-newsDet .detF .relatedList figure {
  position: relative;
  padding-top: 72%;
}
.page-newsDet .detF .relatedList figure img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-newsDet .detF .relatedList h3 {
  font-weight: 600;
  line-height: 1.5;
}
.page-newsDet .detF .relatedList .blank h3::after {
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url(../images/ico-blank_bk.svg) center / 1em auto no-repeat;
}
.page-newsDet .detF .relatedList data {
  font-size: .846em;
  font-weight: 600;
  color: #5BB647;
}
.page-newsDet .detF .relatedList .catBox {
  margin-top: 10px;
}
.page-privacypolicy .detInner aside{
  border: 4px solid #5BB647;
  border-radius: 10px;
  padding: 30px;
  margin-top: 50px;
}
.page-privacypolicy .detInner aside h3{
  margin: 0 0 25px;
}


/***** page-faq *****/
.page-faq .pageH {
  margin: 30px 0 40px;
}
.page-faq .pageH .lead{
  margin: 32px auto 0;
  width: calc(100% - 40px);
}
.page-faq .pageH .lead span{
  display: inline-block;
  text-align: left;
}
.page-faq .pageH a{
  display: block;
  width: fit-content;
  margin: 15px auto 0;
  padding: 1em 2.9em 1em 2.1em;
  line-height: 1;
  font-weight: 600;
  background: #E8F8DA url(../images/ico-arrow_g.svg) right 13px center / 6px auto no-repeat;
  border-radius: 25px;
  border: 1px solid #fff;
  box-shadow: rgba(0, 0, 0, .1) 2px 2px 2px;
}
.page-faq .faqBtnList {
    display: flex;
    flex-wrap: wrap;
    gap: 15px 8px;
    margin-bottom: 50px;
}
.page-faq .faqBtnList li {
    width: calc((100% - 16px) / 3);
}
.page-faq .faqBtnList li a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  height: 100%;
  padding: 3.167em 0 2.167em;
  background:url(../images/ico-arrow_b.svg) center bottom 10px / 8px auto no-repeat,url(../images/bg-green.png) center no-repeat;
  border-radius: 5px;
  box-shadow: rgba(0, 0, 0, .15) 2px 2px 1px;
  font-size: 0.923em;
  line-height: 1.333;
  color: #fff;
  text-align: center;
}
.page-faq .faqBtnList .faq01Btn:before,
.page-faq .faqBtnList .faq02Btn:before,
.page-faq .faqBtnList .faq03Btn:before{
  content: "";
  position: absolute;
  height: 20px;
  top: 11px;
}
.page-faq .faqBtnList .faq01Btn:before{
  width: 19px;
  background: url(../images/ico-note.svg) center / contain no-repeat;
}
.page-faq .faqBtnList .faq02Btn:before{
  width: 13px;
  background: url(../images/ico-calculator.svg) center / contain no-repeat;
}
.page-faq .faqBtnList .faq03Btn:before{
  top: 13px;
  width: 18px;
  background: url(../images/ico-bubble.svg) center / contain no-repeat;
}
.page-faq .faqBox + .faqBox {
  margin-top: 75px;
}
.page-faq .faqBox h2{
  text-align: center;
  line-height: 1.5;
  margin-bottom: 20px;
  font-size: 1.23em;
  font-weight: 700;
  letter-spacing: .05em;
  color: #5BB647;
}

/* experienceForm */
.experienceForm .pageH {
  margin-top: 0;
}
.experienceForm h2 {
  line-height: 1.5;
  font-size: 1.25em;
  margin-bottom: 1em;
  font-weight: 700;
  color: #5BB647;
}
.experienceForm p {
  line-height: 1.75;
  margin-bottom: 1em;
}
.experienceForm .lessonCont {
  margin-bottom: 1em;
  padding: 1em;
  background-color: #F6F5F0;
  border-radius: 20px;
}
.experienceForm .lessonCont ul {
  margin-bottom: 1em;
}
.experienceForm .lessonCont ul li {
  line-height: 1.5;
  margin-bottom: .5em;
  margin-left: 1em;
  text-indent: -1em;
}
.experienceForm .lessonCont p.memo {
  margin-bottom: 0;
  font-size: .8em;
}
.experienceForm .btnBox {
  margin-top: 3em;
}



@media screen and (min-width: 768px) {
  /***** pageH *****/
  .pageH {
    margin: 60px 0;
  }
  .pageH h1 {
    font-size: 1.625em;
  }

  /* classroomDet */
  .pageH.classroomDet .classNameBox {
    background-size: 100% 100px;
  }
  .pageH.classroomDet .classNameBox h1 {
    max-width: 1100px;
    margin: 0 auto 5px;
    padding: 30px 150px 120px;
    background-size: 480px auto;
  }
  .pageH.classroomDet .classNameBox .point {
    top: 30px;
    left: 30px;
  }
  .pageH.classroomDet .classNameBox .point img {
    width: 135px;
  }
  .pageH.classroomDet .detailSlide .slick-list li {
    margin-right: 30px;
    border-radius: 20px;
    height: calc((100dvw - 30px - 30dvw) * .5831);
    max-height: 583px;
  }
  .pageH.classroomDet .detailSlide.slide-one {
    padding: 0 calc(15% + 15px);
  }
  .pageH.classroomDet .detailSlide.slide-one li {
		height: calc((100dvw - 30px - 30dvw) * .5831);
    max-height: 583px;
	}
  .pageH.classroomDet .slick-dots {
    margin-top: 20px;
  }

  /***** areaList *****/
  .areaList li {
    width: calc((100% - 32px) / 5);
  }

  /***** page-classroom *****/
  /* top */
  .classroomTop .lead{
    margin-bottom: 40px;
  }

  /***** page-classroom detail *****/
  .courseSec .courseList + h3 {
    margin-top: 80px;
  }
  .courseSec .courseList > li {
    box-shadow: rgba(0,0,0,.15) 5px 5px 3px;
    border-radius: 10px;
  }
  .courseSec .courseList > li + li {
    margin-top: 30px;
  }
  .courseSec .courseList li h4 > span,
  .courseSec .courseList li h4 > a {
    height: 80px;
  }
  .courseSec .courseList li .courseDetailBox .courseDetail h5 {
    border-radius: 1.3em;
    font-size: 1.15em;
  }
  .courseSec .courseList li .courseDetailBox .courseDetail h6 {
    border-radius: 1.2em;
    font-size: 1em;
  }
  .courseSec .courseList li .courseDetailBox .courseDetail .plus {
    width: 30px;
    height: 30px;
    margin: 20px auto;
  }
  .courseSec .courseList li .courseDetailBox .courseDetail .expenses,
  .courseSec .courseList li .courseDetailBox .courseDetail .rental {
    margin-bottom: 30px;
  }
  .courseSec .courseList li .courseDetailBox .courseDetail .rental > p {
    font-size: 1em;
  }
  .courseSec .courseList li .courseDetailBox .courseDetail .expenses p.price2 strong,
  .courseSec .courseList li .courseDetailBox .courseDetail .rental p.price2 strong {
    font-size: 2.5em;
  }
  .courseSec .courseList li .courseDetailBox .courseDetail .rental div img {
    margin-top: 10px;
    width: 180px;
  }

  .timetableSec {
    padding: 60px 0 100px;
  }

  .pointList li + li {
    margin-top: 80px;
  }

  .aboutSec {
    overflow-x: hidden;
  }
  .aboutSec .magicDet {
    max-width: 1000px;
    display: flex;
    gap: 30px;
    align-items: center;
    margin: 60px auto 0;
  }
  .aboutSec .magicDet.magic2 {
    flex-direction: row-reverse;
    padding-bottom: 0;
    margin-bottom: 60px;
  }
  .aboutSec .magicDet figure {
    flex: 1
  }
  .aboutSec .magicDet .txt {
    margin: 0;
    width: 298px;
  }
  .aboutSec .magicDet .txt h3 {
    margin-bottom: 30px;
    font-size: 1.75em;
  }
  .aboutSec .magicDet .txt h3 img {
    margin-bottom: 20px;
  }
  .aboutSec .magicDet.magic1 .txt h3 img {width: 92px;}
  .aboutSec .magicDet.magic2 .txt h3 img {width: 112px;}
  .aboutSec .magicDet .txt p {
    font-size: 1.125em;
  }
  .aboutSec .magicDet.magic2 .txt .chara {
    bottom: auto;
    top: 70px;
    left: -80px;
    width: 70px;
  }
  .aboutSec .greenBtn {
    width: 400px;
    height: 70px;
    margin-left: 0;
  }
  .page-classroom.detail .aboutSec .greenBtn {
    margin-left: auto;
  }

  /***** page-faq *****/
  .page-faq .pageH a{
    margin: 30px auto 0;
    background: #E8F8DA url(../images/ico-arrow_g.svg) right 16px center / 8px auto no-repeat;
  }
  .page-faq .faqBtnList li a {
    padding: 2.111em 0 1.444em;
    font-size: 1.153em;
  }
  .page-faq .faqBtnList .faq01Btn:before,
  .page-faq .faqBtnList .faq02Btn:before,
  .page-faq .faqBtnList .faq03Btn:before{
    content: "";
    position: absolute;
    height: 24px;
  }
  .page-faq .faqBtnList .faq01Btn:before{
    top: 11px;
    width: 23px;
  }
  .page-faq .faqBtnList .faq02Btn:before{
    top: 12px;
    width: 17px;
  }
  .page-faq .faqBtnList .faq03Btn:before{
    top: 12px;
    width: 20px;
  }

  /***** page-newsList *****/
  .page-newsList .catList {
    gap: 12px;
  }
  .page-newsList .catList .catBox {
    width: calc(25% - 9px);
  }

  .page-newsList .newsList {
    max-width: none;
    margin-top: 50px;
  }
  .page-newsList .newsList .listInner {
    width: calc(100% - 275px);
  }

  .page-newsList .wp-pagenavi {
    gap: 20px;
  }

  /***** page-newsDet / page-privacypolicy *****/
  .page-newsDet .detH {
    margin: 60px 0;
  }
  .page-newsDet .detH h1 {
    margin: 30px 0;
  }

  .page-newsDet .detThum {
    margin: 0 0 30px;
  }

  .page-newsDet .detInner > *,
  .page-privacypolicy .detInner > * {
    margin-top: 20px;
  }
  .page-newsDet .detInner h2,
  .page-newsDet .detInner h3,
  .page-privacypolicy .detInner h2,
  .page-privacypolicy .detInner h3,
  .page-newsDet .detInner figure,
  .page-newsDet .detInner .detMovie {
    margin-top: 60px;
  }
  .page-newsDet .detInner h2 + h3,
  .page-privacypolicy .detInner h2 + h3 {
    margin-top: 20px;
  }
  .page-newsDet .detInner figcaption {
    margin-top: 10px;
  }

  .page-newsDet .detF {
    margin-top: 100px;
    padding-top: 60px;
  }
  .page-newsDet .detF .relatedList {
    margin: 60px 0;
  }
  .page-newsDet .detF .relatedList li {
    width: calc(25% - 7.5px);
  }
  .page-privacypolicy .detInner aside h3{
    margin: 0 0 20px;
  }
}


@media screen and (min-width: 1070px) {
  .pageH.classroomDet .classNameBox .point {
    left: calc(50% - 535px);
  }
}