@charset "UTF-8";
/* base set
--------------------------------------------------------------*/
body {
  line-height: 1.75;
  font-size: var(--fs-txt-md);
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: var(--cl-bk);
}

/* root set
--------------------------------------------------------------*/
/* color */
:root {
  --cl-base-point01: #53C700;
  --cl-base-point02: #53C700;
  --cl-orn: #409A00;
  --cl-pin: #E24A64;
  --cl-error: #D50000;
  --cl-wh: #fff;
  --cl-gr: #dddddd;
  --cl-bk: #333;
  --cl-table-bg: #FAFAFA;
  --cl-table-bd: #DDDDDD;
}

/* font-size */
:root {
  --ff-def: "Noto Sans JP", sans-serif;
  --ff-heading: "Zen Maru Gothic", sans-serif;
  --fs-title01: 3rem;
  --fs-title02: 3.6rem;
  --fs-title03: 2.2rem;
  --fs-title04: 2rem;
  --fs-title05: 2rem;
  --fs-title06: 1.6rem;
  --fs-txt-md: 1.4rem;
  --fs-txt-sm: 1.2rem;
  --fs-txt-xs: 1.0rem;
}

@media screen and (min-width: 768px) {
  :root {
    --fs-title01: 4.5rem;
    --fs-title02: 4rem;
    --fs-title03: 3.5rem;
    --fs-title04: 3rem;
    --fs-title05: 2.5rem;
    --fs-title06: 1.8rem;
    --fs-txt-md: 1.6rem;
    --fs-txt-sm: 1.4rem;
    --fs-txt-xs: 1.2rem;
  }
}
@media screen and (min-width: 1024px) {
  :root {
    --fs-title01: 6rem;
    --fs-title02: 5rem;
    --fs-title03: 4.5rem;
    --fs-title04: 3.6rem;
    --fs-title05: 3rem;
    --fs-title06: 2rem;
  }
}
/* utility + component class
--------------------------------------------------------------*/
/* utility */
.u-ff-point {
  font-family: var(--ff-heading);
  font-weight: bold;
}

/* 両側にアイコンが付くタイトル */
.c-icon-ttl::before,
.c-icon-ttl::after {
  background-image: url(http://placehold.jp/90x90.png);
}

/* ページの背景
--------------------------------------------------------------*/
main {
  position: relative;
}

.page-home main::before,
.page-home main::after {
  top: 38rem;
}

@media screen and (min-width: 768px) {
  .page-home main::before,
  .page-home main::after {
    top: 70rem;
  }
}
@media screen and (min-width: 1024px) {
  .page-home main::before,
  .page-home main::after {
    top: 14.5%;
  }
}
/* header
--------------------------------------------------------------*/
/* headerメニューアイコン*/
.hitem-a.education::before,
.sp-item-a.education::before {
  background-image: url(/assets/images/common/ico_education.png);
}

.hitem-a.facility::before,
.sp-item-a.facility::before {
  background-image: url(/assets/images/common/ico_facility.png);
}

.hitem-a.day::before,
.sp-item-a.day::before {
  background-image: url(/assets/images/common/ico_day.png);
}

.hitem-a.program::before,
.sp-item-a.program::before {
  background-image: url(/assets/images/common/ico_program.png);
}

.hitem-a.admission::before,
.sp-item-a.admission::before {
  background-image: url(/assets/images/common/ico_admission.png);
}

.hitem-a.about::before,
.sp-item-a.about::before {
  background-image: url(/assets/images/common/ico_about.png);
}

.hitem-a.after-school::before,
.sp-item-a.after-school::before {
  background-image: url(/assets/images/common/ico_after-school.png);
}

/* 見学会参加ボタンのアイコン（sp / フローティング） */
.sp-item-a.-entry::after,
.c-floating-a::after {
  background-image: url(/assets/images/common/ico_form.png);
}

/* ftop
--------------------------------------------------------------*/
/* 背景 */
.c-join-txtbox {
  position: relative;
}

.c-join-txtbox::before {
  content: "";
  display: block;
  width: 6rem;
  height: 6rem;
  margin: 0 auto 0 auto;
  background: url(/assets/images/common/join_item.png) no-repeat center center/contain;
}

.c-join-inbox {
  padding: 1rem 0 0;
}

.c-join-a {
  background-color: var(--cl-base-point01) !important;
  border-color: var(--cl-base-point01) !important;
}

@media screen and (min-width: 768px) {
  .c-join-row {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .c-join-txtbox {
    padding: 0;
    background-color: transparent;
  }
  .c-join-a:hover {
    background-color: var(--cl-wh) !important;
    color: var(--cl-base-point01) !important;
  }
  .c-join-inbox {
    padding: 0;
  }
  .c-join-linkbtn {
    margin: 1.5rem auto 0;
  }
}
@media screen and (min-width: 1024px) {
  .c-join-txtbox::before {
    width: 17.8rem;
    height: 5rem;
  }
  .c-join-txtbox::after {
    width: 10rem;
    height: 10rem;
    margin: -3rem 26rem 0 auto;
  }
  .c-join-inbox {
    padding: 1rem 0 0;
  }
  .c-join-title {
    display: block;
    text-align: right;
    font-size: 4.4rem;
  }
}
/* 所在地情報 */
.c-access-title {
  color: #AAD300;
}

.c-access-title::before {
  background-image: url(/assets/images/common/ico_access.png);
  background-position: bottom center;
}

.c-access-span {
  color: var(--cl-wh);
  background-color: var(--cl-base-point02);
}

@media screen and (min-width: 768px) {
  .c-access-main::after {
    border-color: transparent transparent transparent #AAD300;
  }
}
/* sp-item
--------------------------------------------------------------*/
.sp-wrap {
  background-color: var(--cl-wh);
}

/* footer
--------------------------------------------------------------*/
.c-ftop {
  margin-top: 0;
  background-color: var(--cl-wh);
}

/* page-home
--------------------------------------------------------------*/
/* ヘッダーのアクティブ */
/* news */
.hnews-title::before {
  background-image: url(/assets/images/common/ico_home.png);
}

.hnews-list {
  background-color: rgba(255, 255, 255, 0.5);
}

/* menu */
.hmenu-wrap {
  background-color: transparent;
}

.hmenu-box {
  background-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.hmenu-cat {
  border: none;
  padding-bottom: 0;
}

.hmenu-cat::before {
  width: 5.6rem;
  height: 5.6rem;
}

.hmenu-box.education .hmenu-cat::before {
  background-image: url(/assets/images/common/ico_education.png);
}

.hmenu-box.facility .hmenu-cat::before {
  background-image: url(/assets/images/common/ico_facility.png);
}

.hmenu-box.day .hmenu-cat::before {
  background-image: url(/assets/images/common/ico_day.png);
}

.hmenu-box.program .hmenu-cat::before {
  background-image: url(/assets/images/common/ico_program.png);
}

.hmenu-box.after-school .hmenu-cat::before {
  background-image: url(/assets/images/common/ico_after-school.png);
}

@media screen and (min-width: 768px) {
  .hmenu-box.education .home-btn-a:hover {
    background-color: var(--cl-wh);
    color: #FFA224;
  }
}
.hbottom-box.flow .hbottom-title::before {
  background-image: url(/assets/images/common/ico_flow.png);
}

.hbottom-box.about .hbottom-title::before {
  background-image: url(/assets/images/common/ico_about.png);
}

.hbottom-box.faq .hbottom-title::before {
  background-image: url(/assets/images/common/ico_faq.png);
}

/* 下層common
--------------------------------------------------------------*/
/**/
/* page-education
--------------------------------------------------------------*/
/* ヘッダーのアクティブ */
/* ページタイトル */
.page-education .c-pagetitle {
  background-image: url(/assets/images/education/pagetitle_bg.jpg);
}

/* リードタイトル */
.page-education .c-lead-ttl::before {
  background-image: url(/assets/images/common/ico_education.png);
}

/* 特別教育について タイトルアイコン */
.edu-special-ttl::before,
.edu-special-ttl::after {
  background-image: url(/assets/images/education/special_title_icon.png);
}

@media screen and (min-width: 768px) {
  .edu-special-ttl::before,
  .edu-special-ttl::after {
    width: 7.6rem;
    height: 7.6rem;
  }
}
/* 特別教育について 詳細項目アイコン */
.edu-special-box:nth-child(1) .edu-special-main::before {
  background-image: url(/assets/images/education/special_icon01.png);
}

.edu-special-box:nth-child(2) .edu-special-main::before {
  background-image: url(/assets/images/education/special_icon02.png);
}

.edu-special-box:nth-child(3) .edu-special-main::before {
  background-image: url(/assets/images/education/special_icon03.png);
}

.edu-special-box:nth-child(4) .edu-special-main::before {
  background-image: url(/assets/images/education/special_icon04.png);
}

.edu-special-box:nth-child(5) .edu-special-main::before {
  background-image: url(/assets/images/education/special_icon05.png);
}

.edu-special-box:nth-child(6) .edu-special-main::before {
  background-image: url(/assets/images/education/special_icon06.png);
}

.edu-special-box:nth-child(7) .edu-special-main::before {
  background-image: url(/assets/images/education/special_icon07.png);
}

/* day-flow-ttl / day-event-ttl / faq-ttl
--------------------------------------------------------------*/
.day-flow-ttl::before,
.program-event-ttl::before,
.faq-ttl::before,
.admission-ttl::before,
.after_school-ttl::before,
.day-flow-ttl::after,
.program-event-ttl::after,
.faq-ttl::after,
.admission-ttl::after,
.after_school-ttl::after {
  background-image: url(/assets/images/day/special_title_icon.png);
  width: 7rem;
  height: 2.4rem;
}
@media screen and (min-width: 768px) {
  .day-flow-ttl::before,
  .program-event-ttl::before,
  .faq-ttl::before,
  .admission-ttl::before,
  .after_school-ttl::before,
  .day-flow-ttl::after,
  .program-event-ttl::after,
  .faq-ttl::after,
  .admission-ttl::after,
  .after_school-ttl::after {
    width: 12rem;
    height: 4.2rem;
  }
}

/* page-day
--------------------------------------------------------------*/
/* ページタイトル */
.page-day .c-pagetitle {
  background-image: url(/assets/images/day/pagetitle_bg.jpg);
}

/* リードタイトル */
.page-day .c-lead-ttl::before {
  background-image: url(/assets/images/common/ico_day.png);
}

/* 一日の流れ  */
.day-flow-time {
  border-radius: 100vmax;
}

.day-flow-time:last-of-type {
  margin: 1rem 0 2rem;
}

.day-flow-timebox .day-flow-time {
  border-radius: 6rem 0 0 6rem;
}

.day-flow-timebox .day-flow-time:last-of-type {
  border-radius: 0 6rem 6rem 0;
}

.day-flow-span {
  font-size: 1.6rem;
}

.day-flow-ex {
  font-size: 1.2rem;
}

.day-flow-box.b01 .day-flow-time {
  background-color: #FF9F9F;
}

.day-flow-box.b02 .day-flow-time {
  background-color: #EEA38F;
}

.day-flow-box.b03 .day-flow-time {
  background-color: #DDA77F;
}

.day-flow-box.b03 .day-flow-time:nth-child(2) {
  background-color: #CBAB6F;
}

.day-flow-box.b04 .day-flow-time {
  background-color: #CBBD6F;
}

.day-flow-box.b05 .day-flow-time {
  background-color: #BAAF5F;
}

.day-flow-box.b05 .day-flow-time:nth-child(2) {
  background-color: #A9B350;
}

.day-flow-box.b06 .day-flow-time {
  background-color: #98B740;
}

.day-flow-box.b07 .day-flow-time {
  background-color: #87BB30;
}

.day-flow-box.b08 .day-flow-time {
  background-color: #75BF20;
}

.day-flow-box.b09 .day-flow-time {
  background-color: #64C310;
}

.day-flow-box.b10 .day-flow-time {
  background-color: #53C700;
}

@media screen and (min-width: 768px) {
  .day-flow-timebox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 2rem;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .day-flow-timebox .day-flow-time {
    width: 50%;
  }
  .day-flow-timebox .day-flow-time:nth-child(2) {
    width: 50%;
  }
  .day-flow-timebox .day-flow-time:last-of-type {
    margin: 0;
  }
  .day-flow-span {
    font-size: 2.8rem;
  }
  .day-flow-ex {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1024px) {
  .day-flow-time:last-of-type {
    margin: 4rem 0;
  }
  .day-flow-span {
    font-size: 3.6rem;
  }
  .day-flow-ex {
    font-size: 2rem;
  }
}
/* page-program
--------------------------------------------------------------*/
/* ページタイトル */
.page-program .c-pagetitle {
  background-image: url(/assets/images/program/pagetitle_bg-k2.jpg);
}

/* リードタイトル */
.page-program .c-lead-ttl::before {
  background-image: url(/assets/images/common/ico_program.png);
}

.page-program .c-lead-ttl {
  color: #25AC00;
}

/* page-facility
--------------------------------------------------------------*/
.page-facility .u-inner {
  overflow: hidden;
}

.faq-item-txt {
  border-radius: 0 0 2rem 2rem;
}

/* ページタイトル */
.page-facility .c-pagetitle {
  background-image: url(/assets/images/facility/pagetitle_bg.jpg);
}

.page-facility .c-lead-ttl::before {
  background-image: url(/assets/images/common/ico_facility.png);
}

/* 各施設タイトル アイコン（内容未定のため毎回すべて変わりそう） */
.fac00 .fac-box .fac-ttl::before {
  background-image: url(/assets/images/facility/title_icon06.png);
}

.fac01 .fac-box .fac-ttl::before {
  background-image: url(/assets/images/facility/title_icon01.png);
}

.fac02 .fac-box .fac-ttl::before {
  background-image: url(/assets/images/facility/title_icon02.png);
}

.fac03 .fac-box .fac-ttl::before {
  background-image: url(/assets/images/facility/title_icon03.png);
}

.fac04 .fac-box .fac-ttl::before {
  background-image: url(/assets/images/facility/title_icon04.png);
}

.fac05 .fac-box .fac-ttl::before {
  background-image: url(/assets/images/facility/title_icon05.png);
}

.fac06 .fac-box .fac-ttl::before {
  background-image: url(/assets/images/facility/title_icon06.png);
}

/* page-flow
--------------------------------------------------------------*/
/* ページタイトル */
.page-admission .c-pagetitle {
  background-image: url(/assets/images/admission/pagetitle_bg-k1.jpg);
}

.page-admission .c-lead-ttl::before {
  background-image: url(/assets/images/common/ico_admission.png);
}

/* 流れ */
.page-admission .flow-ttlbox {
  border-color: var(--cl-base-point02);
}

.page-admission .flow-month {
  border-color: var(--cl-base-point02);
  color: var(--cl-wh);
}

.page-admission .flow-txtlink-a {
  color: #53C700;
}

@media screen and (min-width: 1024px) {
  .flow-wrap {
    margin-top: 9rem;
  }
}
/* page-faq
--------------------------------------------------------------*/
/* ページタイトル */
.page-faq .c-pagetitle {
  background-image: url(/assets/images/faq/pagetitle_bg.jpg);
}

.page-faq .c-lead-ttl::before {
  background-image: url(/assets/images/common/ico_faq.png);
}

@media screen and (min-width: 768px) {
  .page-faq .c-linkbtn-a:hover {
    background-color: var(--cl-wh);
  }
}
/* page-news
--------------------------------------------------------------*/
/* ページタイトル */
.page-news .c-pagetitle {
  background-image: url(/assets/images/news/pagetitle_bg.jpg);
}

/* page-entry
--------------------------------------------------------------*/
/* ページタイトル */
.page-entry .c-pagetitle {
  background-image: url(/assets/images/entry/pagetitle_bg.jpg);
}

/* リードアイコン */
.page-entry .c-lead-ttl {
  color: #AAD300;
}

.page-entry .c-lead-ttl::before {
  background-image: url(/assets/images/common/ico_form.svg);
}

.entry-date {
  position: relative;
  padding: 3rem 1.5rem;
  background-color: #FFFDD9;
  border-radius: 3rem;
}

.entry-date::after {
  position: absolute;
  top: -3rem;
  left: 3rem;
  content: "";
  display: block;
  width: 8rem;
  height: 6rem;
  background: url(/assets/images/entry/date_item01.png) no-repeat;
  background-size: contain;
}

.entry-date::before {
  position: absolute;
  top: -2rem;
  right: 3rem;
  content: "";
  display: block;
  width: 6rem;
  height: 6rem;
  background: url(/assets/images/entry/date_item02.png) no-repeat;
  background-size: contain;
}

@media screen and (min-width: 768px) {
  .entry-date {
    padding: 4rem 5rem;
  }
  .entry-date::after {
    top: -6rem;
    left: 6rem;
    width: 10rem;
    height: 8rem;
  }
}
@media screen and (min-width: 1024px) {
  .entry-date {
    padding: 4rem 5rem;
  }
  .entry-date::after {
    top: -8rem;
    left: -4rem;
    width: 18.6rem;
    height: 12.2rem;
  }
  .entry-date::before {
    top: -5rem;
    right: -7rem;
    width: 10.6rem;
    height: 7rem;
  }
}
/* confirm */
.entry-confirm .entry-date {
  padding: 0;
  background-color: transparent;
}

.entry-confirm .entry-date::after {
  display: none;
}

/* result-box */
/* page-notfound
--------------------------------------------------------------*/
/**/
/* page-privacy
--------------------------------------------------------------*/
/* ページタイトル */
.page-privacy .c-pagetitle {
  background-image: url(/assets/images/common/pagetitle_bg.jpg);
}

.page-privacy .c-lead-ttl::before {
  background-image: url(/assets/images/common/ico_privacy.png);
}

/* page-about
--------------------------------------------------------------*/
/* ページタイトル */
.page-about .c-pagetitle {
  background-image: url(/assets/images/about/pagetitle_bg.jpg);
}

.page-about .c-lead-ttl::before {
  background-image: url(/assets/images/common/ico_about.png);
}

/* ヘッダーのアクティブ */
.page-education .hitem:has(.education) .hitem-span {
  color: var(--cl-base-point02);
}

.page-facility .hitem:has(.facility) .hitem-span {
  color: var(--cl-base-point02);
}

.page-day .hitem:has(.day) .hitem-span {
  color: var(--cl-base-point02);
}

.page-program .hitem:has(.program) .hitem-span {
  color: var(--cl-base-point02);
}

.page-admission .hitem:has(.admission) .hitem-span {
  color: var(--cl-base-point02);
}

.page-about .hitem:has(.about) .hitem-span {
  color: var(--cl-base-point02);
}

.page-after_school .hitem:has(.after-school) .hitem-span {
  color: var(--cl-base-point02);
}

/* after school
--------------------------------------------------------------*/
/* ページタイトル */
.page-after_school .c-pagetitle {
  background-image: url(/assets/images/after-school/pagetitle_bg.jpg);
}

.page-after_school .c-lead-ttl::before {
  background-image: url(/assets/images/common/ico_after-school.png);
}