@charset "utf-8";


/* base set
--------------------------------------------------------------*/
body { line-height: 1.75; font-size: var(--fs-txt-md); font-family: YakuHanJPs, 'Noto Sans JP','Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif; font-weight: 500; color: var(--cl-bk); }



/* root set
--------------------------------------------------------------*/

/* color */
:root {
    --cl-base-point01: #41A7FF;
    --cl-base-point02: #FF9F9F;
    --cl-base-point02thin: #FFF4F4;
    --cl-error: #D50000;
    --cl-wh: #fff;
    --cl-gr: #dddddd;
    --cl-bk: #333;
}

/* font-size */
:root {
    --fs-title01: 3rem;
    --fs-title02: 2.5rem;
    --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: YakuHanJPs, 'Kiwi Maru', sans-serif; font-weight: 500; }

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


/* リンクボタン */
.c-linkbtn-a { background-color: var(--cl-base-point02); border-color: var(--cl-base-point02) ; }
@media screen and (min-width: 768px) {
.c-linkbtn-a:hover { color: var(--cl-base-point02);}
}

/* リード部分 */
.c-lead-ttl { color: var(--cl-base-point02);  }




/* ページの背景
--------------------------------------------------------------*/
main { position: relative;}
main::after { position: absolute; top: 20rem; left: 0; content: ""; display: block; width: 100%; height: 100%; background: url(/assets/images/common/bg_top_sp.png) no-repeat top center; background-size: 100%; z-index: -1;}
@media screen and (min-width: 768px) {
main::after { top: 30rem; background-image: url(/assets/images/common/bg_top_pc.png) ;}
}
@media screen and (min-width: 1024px) {
main::after { top: 62rem;}
}




/* header
--------------------------------------------------------------*/

/* headerメニューアイコン*/
.hitem .hitem-a.home::before,
.sp-item .sp-item-a.home::before { background-image: url(/assets/images/common/hitem_p01.png);    }
.hitem .hitem-a.education::before,
.sp-item .sp-item-a.education::before { background-image: url(/assets/images/common/hitem_p02.png);    }
.hitem .hitem-a.program::before,
.sp-item .sp-item-a.program::before { background-image: url(/assets/images/common/hitem_p03.png);    }
.hitem .hitem-a.facility::before,
.sp-item .sp-item-a.facility::before { background-image: url(/assets/images/common/hitem_p04.png);    }
.hitem .hitem-a.flow::before,
.sp-item .sp-item-a.flow::before { background-image: url(/assets/images/common/hitem_p05.png);    }
.hitem .hitem-a.faq::before,
.sp-item .sp-item-a.faq::before { background-image: url(/assets/images/common/hitem_p06.png);    }
.hitem-a::before { width: 6.8rem; height: 4.6rem; }


/* 見学会参加ボタンのアイコン（sp / フローティング） */
.sp-item-a.-entry::after,
.c-floating-a::after { background-image:url(/assets/images/common/hitem_p01.png);}
@media screen and (min-width: 768px) {
.c-floating-a::after { height: 2.6rem; }
}
@media screen and (min-width: 1024px) {
.c-floating-a::after { height: 3.8rem; }
}

/* sp header
--------------------------------------------------------------*/
.sp-wrap { background-color: #ffd3d3; }



/* ftop
--------------------------------------------------------------*/
/* 背景 */
@media screen and (min-width: 1024px) {
.ftop-wrap { background: url(/assets/images/common/bg_bottom.png) no-repeat right bottom; background-size: 100%;}
}

/* 見学会に参加しよう！ */
.c-join { background: url(/assets/images/common/join_bg.png) no-repeat top center; background-size: contain;}
.c-join-row { background: url(/assets/images/common/join_txt_bg.png) no-repeat center center; background-size: contain;}
@media screen and (min-width: 768px) {
.c-join-row { background-position: left bottom; }
}
@media screen and (min-width: 1024px) {
.c-join-row { padding-bottom: 4rem; }
}

/* 所在地情報 */
.c-access-title::before { background-image: url(/assets/images/common/access_p01.png); }
.c-access-span { border-color: var(--cl-base-point02) ; border-radius: 4rem; color: var(--cl-base-point02); }
@media screen and (min-width: 768px) {
.c-access-span { border: none; color: var(--cl-wh); background-color: var(--cl-base-point02); }
.c-access-main::after { border-color: transparent transparent transparent  var(--cl-base-point02); }


}





/* page-home
--------------------------------------------------------------*/
/* common */
.c-icotitle { color: var(--cl-base-point02); }

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

/* 背景上書き */
.page-home main::after { top: 50rem ;}
@media screen and (min-width: 768px) {
.page-home main::after { top: 64rem ;}
}
@media screen and (min-width: 1024px) {
.page-home main::after { top: 90.4rem ; }
}


/* kv */
.kv-wrap { overflow: hidden; height: 52rem; position: relative; display: block; background-image:none;}
.kv-box { padding: 2rem;}
.kv-title { color: var(--cl-base-point02); text-shadow:none;}
.kv-sub { color: #707070; text-shadow:none;}
.kv-pic { position: absolute; bottom: 0; left: 0; right: 0; margin: 0 -7rem 0 -10rem; z-index: -1; }
@media screen and (min-width: 768px) {
.kv-wrap { height: 80rem; }
.kv-box { padding: 2rem 4rem;}
}
@media screen and (min-width: 1024px) {
.kv-wrap { height: 100rem; }
.kv-pic { width: 130rem; margin: 0 auto;}

}

/* news */
.hnews-title::before { background-image: url(/assets/images/home/news_title.png);}

/* menu */
.hmenu-wrap { background-color: transparent;}
.hmenu-box { padding: 0; background-color: transparent; box-shadow: none;}
.hmenu-pic { }
.hmenu-pic img { border-radius: 0; }
.hmenu-box:nth-child(1) .hmenu-cat::before { background-image: url(/assets/images/common/hitem_p02.png) ; }
.hmenu-box:nth-child(2) .hmenu-cat::before { background-image: url(/assets/images/common/hitem_p03.png) ; }
.hmenu-box:nth-child(3) .hmenu-cat::before { background-image: url(/assets/images/common/hitem_p04.png) ; }
.hmenu-cat { border-bottom: var(--cl-base-point02) 2px dotted; color: var(--cl-base-point02);}
.hmenu-cat::before { width: 9rem; height: 6rem;  }
.hbottom-title::before { margin-bottom: -2rem; }
@media screen and (min-width: 768px) {
.hmenu-box { padding-bottom: 20rem;}
.hmenu-cat { border-bottom: none; }
.hmenu-cat::after { height: 5px; background-color: transparent; background: url(/assets/images/home/menu_title_line.png) repeat-x; background-size: contain;  }
}
@media screen and (min-width: 1024px) {
.hmenu-box { padding-bottom: 18rem;}
}
/* bottom */
.hbottom-title { color: #707070; }
.hbottom-box:nth-child(1) .hbottom-title::before { background-image: url(/assets/images/common/hitem_p05.png); }
.hbottom-box:nth-child(2) .hbottom-title::before { background-image: url(/assets/images/common/hitem_p06.png); }
.hbottom-box-a { background-color: #FFE8E8; }
.hbottom-box:nth-child(2) .hbottom-box-a { background-color: #B1DBFF;}
@media screen and (min-width: 768px) {
.hbottom-box-a { background-image: none;}
.hbottom-title { background-color: #FFE8E8; }
.hbottom-box:nth-child(2) .hbottom-title { background-color: #B1DBFF; }
.hbottom-pic { border-color: #FFE8E8;}
.hbottom-box:nth-child(2) .hbottom-pic { border-color: #B1DBFF;}
}


/* 下層common
--------------------------------------------------------------*/
/**/




/* page-education
--------------------------------------------------------------*/
/* ヘッダーのアクティブ */
.page-education .hitem .education .hitem-span { color: var(--cl-base-point02); }
/* ページタイトル */
.page-education .c-pagetitle { background-image: url(/assets/images/education/pagetitle_bg.jpg); }
/* リードアイコン */
.page-education .c-lead-ttl::before { background-image: url(/assets/images/education/lead_icon.png); }
/* 特徴 */
.edu-feature-ttl { padding: 2rem 0; background: no-repeat left center; background-size: contain;}
.edu-feature-box:nth-child(1) .edu-feature-ttl { background-image: url(/assets/images/education/feature_bg01.png) ; }
.edu-feature-box:nth-child(2) .edu-feature-ttl { text-align: right; background-image: url(/assets/images/education/feature_bg02.png); background-position: right center; }
.edu-feature-box .edu-feature-pic { position: relative; }
.edu-feature-box:nth-child(1) .edu-feature-pic::before { position: absolute; bottom: 0; right: -1rem; content: ""; display: block; width: 10rem; height: 8rem; background: url(/assets/images/education/feature_pic_bg01.png) no-repeat right bottom; background-size: contain; z-index: -1; }
.edu-feature-box:nth-child(2) .edu-feature-pic::after  { position: absolute; bottom: 0; left: -1rem; content: ""; display: block; width: 10rem; height: 8rem; background: url(/assets/images/education/feature_pic_bg02.png) no-repeat left bottom; background-size: contain; z-index: -1;}
@media screen and (min-width: 768px) {
.edu-feature-ttl { padding: 4rem 0;  background-position: no-repeat center center;}
.edu-feature-box:nth-child(2) .edu-feature-ttl { background-position: center center; }
.edu-feature-box:nth-child(2) .edu-feature-ttl { text-align: left; }
.edu-feature-box:nth-child(1) .edu-feature-pic::before { right: -5rem; width: 20rem; height: 18rem; }
.edu-feature-box:nth-child(2) .edu-feature-pic::after  { left: -6rem; width: 20rem; height: 18rem; }
}
@media screen and (min-width: 768px) {
.edu-feature-txt { margin-top: 3rem; }
.edu-feature-box:nth-child(1) .edu-feature-pic::before { width: 23rem; height: 19rem; }
.edu-feature-box:nth-child(2) .edu-feature-pic::after  { bottom: 4rem; width: 22rem; height: 13.8rem; }
}

/* 特別教育について タイトルアイコン */
.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: 4rem; height: 4rem; }
}
/* 特別教育について 詳細項目アイコン */
.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);}



/* page-program
--------------------------------------------------------------*/
/* ヘッダーのアクティブ */
.page-program .hitem .program .hitem-span { color: var(--cl-base-point02); }
/* ページタイトル */
.page-program .c-pagetitle { background-image: url(/assets/images/program/pagetitle_bg.jpg); }
/* 背景 */
@media screen and (min-width: 768px) {
 main::after { top: 30rem; background-image: url(/assets/images/program/bg_top_pc.png) ;}
}
/* リードアイコン */
.page-program .c-lead-ttl::before { background-image: url(/assets/images/program/lead_icon.png); }
/* 一日の流れ 年間行事 タイトルアイコン */
.prog-flow-ttl::before,
.prog-flow-ttl::after,
.prog-event-ttl::before,
.prog-event-ttl::after { background-image: url(/assets/images/program/title_icon.png);}
/* 一日の流れ 項目タイトル */
.prog-flow-box .prog-flow-time { border-radius: 6rem;}
.prog-flow-box:nth-child(1) .prog-flow-time { background-color: #FF9F9F;}
.prog-flow-box:nth-child(2) .prog-flow-time { background-color: #EEAEB5;}
.prog-flow-box:nth-child(3) .prog-flow-time { background-color: #DEAFBD;}
.prog-flow-box:nth-child(4) .prog-flow-time:nth-child(1) { border-radius: 6rem 0 0 6rem; background-color: #CEAFC6;}
.prog-flow-box:nth-child(4) .prog-flow-time:nth-child(2) { border-radius: 0 6rem 6rem 0; background-color: #C796BB;}
.prog-flow-box:nth-child(5) .prog-flow-time:nth-child(1) { border-radius: 6rem 0 0 6rem; background-color: #BEAFCD;}
.prog-flow-box:nth-child(5) .prog-flow-time:nth-child(2) { border-radius: 0 6rem 6rem 0; background-color: #AD92C9;}
.prog-flow-box:nth-child(6) .prog-flow-time { background-color: #AEB0D6;}
.prog-flow-box:nth-child(7) .prog-flow-time { background-color: #9EB1DE;}
.prog-flow-box:nth-child(8) .prog-flow-time { background-color: #8DB2E6;}
.prog-flow-box:nth-child(9) .prog-flow-time { background-color: #7DB2EE;}
.prog-flow-box:nth-child(10) .prog-flow-time { background-color: #6DB3F6;}
.prog-flow-box:nth-child(11) .prog-flow-time { background-color: #5DB4FF;}


/* 年間行事 タイトル */
.prog-event-month { background: url(/assets/images/program/event_line.png) no-repeat right bottom; background-size: contain;}
@media screen and (min-width: 768px) {
.prog-event-month { background-size: auto;}

}



/* page-facility
--------------------------------------------------------------*/
/* ヘッダーのアクティブ */
.page-facility .hitem .facility .hitem-span { color: var(--cl-base-point02); }
/* ページタイトル */
.page-facility .c-pagetitle { background-image: url(/assets/images/facility/pagetitle_bg.jpg); }
/* リードアイコン */
.page-facility .c-lead-ttl::before { background-image: url(/assets/images/facility/lead_icon.png); }
/* 各施設タイトル アイコン（内容未定のため毎回すべて変わりそう） */
.fac-box:nth-child(1) .fac-ttl { padding-right: 9rem; }
.fac-box:nth-child(1) .fac-ttl::before { top: -4rem; right: 0; width: 8.4rem; height: 7.8rem; background-image: url(/assets/images/facility/title_icon01.png); z-index: -1; }
.fac-box:nth-child(2) .fac-ttl { text-align: left;}
.fac-box:nth-child(2) .fac-ttl::before { top: -4rem; right: 0; left: auto; width: 8.4rem; height: 7.8rem; background-image: url(/assets/images/facility/title_icon02.png); z-index: -1; }
.fac-box:nth-child(3) .fac-ttl::before { top: -4rem; right: 0; width: 8.4rem; height: 7.8rem; background-image: url(/assets/images/facility/title_icon03.png); z-index: -1; }
.fac-box:nth-child(4) { text-align: left;}
.fac-box:nth-child(4) .fac-ttl { width: 100%; text-align: left;}
.fac-box:nth-child(4) .fac-ttl::before { top: -4rem; right: 0; width: 8.4rem; height: 7.8rem; background-image: url(/assets/images/facility/title_icon04.png); z-index: -1; }
.fac-box:nth-child(5) .fac-ttl { padding-right: 5.5rem; }
.fac-box:nth-child(5) .fac-ttl::before { top: -4rem; right: 0; width: 8.4rem; height: 7.8rem; background-image: url(/assets/images/facility/title_icon05.png); z-index: -1; }
.fac-box:nth-child(3) .fac-ttl::after { background-image: none;}
@media screen and (min-width: 768px) {
.fac-box:nth-child(1) .fac-ttl { padding-right: 18rem; }
.fac-box:nth-child(1) .fac-ttl::before { top: -8rem; width: 16.8rem; height: 15.6rem; }
.fac-box:nth-child(2) .fac-ttl { width: auto; padding-left: 18rem; text-align: right;}
.fac-box:nth-child(2) .fac-ttl::before { top: -8rem; width: 16.8rem; height: 15.6rem; left: 0; right: auto; }
.fac-box:nth-child(3) .fac-ttl { width: auto; padding-right: 18rem;}
.fac-box:nth-child(3) .fac-ttl::before { top: -8rem;  width: 16.8rem; height: 15.6rem;}
.fac-box:nth-child(4) { text-align: right;}
.fac-box:nth-child(4) .fac-ttl { width: auto; padding-left: 18rem; text-align: right;}
.fac-box:nth-child(4) .fac-ttl::before { width: 16.8rem; height: 15.6rem; top:-8rem; left: 0; right: auto; }
.fac-box:nth-child(5) .fac-ttl { width: auto; padding-right: 18rem;}
.fac-box:nth-child(5) .fac-ttl::before { width: 16.8rem; height: 15.6rem; top:-8rem; }
}
@media screen and (min-width: 1024px) {
}




/* page-flow
--------------------------------------------------------------*/
/* ヘッダーのアクティブ */
.page-flow .hitem .flow .hitem-span { color: var(--cl-base-point02); }
/* ページタイトル */
.page-flow .c-pagetitle { background-image: url(/assets/images/flow/pagetitle_bg.jpg); }
/* リードアイコン */
.page-flow .c-lead-ttl::before { background-image: url(/assets/images/flow/lead_icon.png); }

/* 色の変更 */
.flow-ttlbox { border-color: var(--cl-base-point01) ;}
.flow-month { background-color: var(--cl-base-point01); color: var(--cl-wh);}
.flow-txtlink-a { color: var(--cl-base-point02); }

/*  */
.flow-wrap { margin-top: 4rem; }
@media screen and (min-width: 1024px) {
.flow-wrap { margin-top: 10rem; }
}



/* page-faq
--------------------------------------------------------------*/
/* ヘッダーのアクティブ */
.page-faq .hitem .faq .hitem-span { color: var(--cl-base-point02); }
/* ページタイトル */
.page-faq .c-pagetitle { background-image: url(/assets/images/faq/pagetitle_bg.jpg); }
/* リードアイコン */
.page-faq .c-lead-ttl::before { background-image: url(/assets/images/faq/lead_icon.png); }




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


/* セレクト */
.month-select select { border-color: var(--cl-base-point02) ;}
.cat-item.is-active .cat-item-a { color: var(--cl-base-point01);}

/* detail */



/* page-entry
--------------------------------------------------------------*/
/* ページタイトル */
.page-entry .c-pagetitle { background-image: url(/assets/images/entry/pagetitle_bg.jpg); }
/* リードアイコン */
.page-entry .c-lead-ttl::before { background-image: url(/assets/images/entry/lead_icon.png); }

/* 日付部分 */
.entry-date { padding: 3rem 1rem; background: url(/assets/images/entry/date_bg.png) no-repeat center center; background-size: contain;}
@media screen and (min-width: 768px) {
.entry-date { padding: 4rem 2rem;}
}
/* ボタンの色 */
.submit-btn button { background-color: var(--cl-base-point02); border-color: var(--cl-base-point02) ;}
.submit-btn button:hover { color: var(--cl-base-point02); }

/* confirm */
.entry-confirm .entry-date { padding: 0; background: none;}



/* result */
.result-title { color: var(--cl-base-point02);}


/* page-notfound
--------------------------------------------------------------*/
/*  */


/* page-privacy
--------------------------------------------------------------*/
/* ページタイトル */
.page-privacy .c-pagetitle { background-image: url(/assets/images/privacy/pagetitle_bg.jpg); }
/* リードアイコン */
.page-privacy .c-lead-ttl::before { background-image: url(/assets/images/privacy/lead_icon.png); }


