@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/

@media screen and ( min-width: 751px ) {
  .sp_only { display: none !important }
}

@media screen and ( max-width: 750px ) {
  .pc_only { display: none !important }
}


/************************************
** スクールヘッダー
************************************/

/* Tweak */
.school_header img {vertical-align: top;}
.school_header ul {list-style: none;margin: 0;padding: 0;border: 0;font: inherit;font-size: 100%;vertical-align: baseline;}
.school_header {background: #fff;}
.school_header .aa {transform: rotate(-0.03deg);}
.school_header span.aa {display: inline-block;}
.school_header .mp {font-family: "M PLUS 1p", meiryo, helvetica, arial, 'hiragino kaku gothic pro', 'ms pgothic', sans-serif;}
.school_header #header {box-sizing: content-box;}
.school_header #header_description {line-height: 1.5384615384615384615384615384615 !important;}
/* /Tweak */

/* スクールからコピペ */
.school_header #header { width: 1000px; padding: 0 15px; margin: 0 auto ; display: flex; justify-content: space-between;}
.school_header #header p { line-height: 1.75 }

.school_header #header_description {font-size: 13px;line-height: 1.5384615384615384615384615384615;white-space: nowrap;overflow: hidden;margin: 0 30px 5px 0;text-overflow: ellipsis;width: 469px;}
.school_header #header_logo { display: inline-block; margin: 0; vertical-align: top; font-size: 15px }
.school_header #header_logo img { margin-bottom: 10px }
.school_header #header_emblem { display: inline-block; margin: 0; vertical-align: top }

.school_header #header_resdv > .head { background: url(/img/cmn/header_mail.png) 15px center no-repeat #d91819; color: #fff; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; width: 343px; height: 45px; padding: 15px 0 0 62px; font-size: 14px; display: block; line-height: 1; text-decoration: none; margin: 0 0 7px; position: relative }
.school_header #header_resdv > .head:after { content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; pointer-events: none; -webkit-transition: .6s; -o-transition: .6s; transition: .6s }
.school_header #header_resdv > .head:hover:after { background: rgba(255,255,255,.5) }
.school_header #header_resdv .freedial { margin: 0 0 7px; font-size: 10px }
.school_header #header_resdv .business_time { font-size: 12px; margin-bottom: 0 }
.school_header #header_resdv .business_time .head {display: inline-block;color: #000;background: #fff;padding: 0px 4px;margin: 0 5px 0 0;border: 1px solid #000;}
.school_header #header_resdv .business_time .detail { vertical-align: middle }

.school_header .head_btns { margin: 0 0 10px !important; display: flex; justify-content: space-between }
.school_header .head_btns a { transition: all ease .3s }
.school_header .head_btns a:hover { opacity: .7 }

.school_header .header_logo_only #header_left,
.school_header .header_logo_only #header_logo {width: 100%;text-align: center;display: block !important;}
.school_header .header_logo_only #header_logo img {width: 300px;}
.school_header #header.header_logo_only {padding: 15px 0 10px;}

.school_header #gn { background: url(/img/cmn/gn_bg.gif) repeat #525252 }
.school_header #gn > ul {display: flex;width: 1000px;margin: 0 auto;}
.school_header #gn > ul::after { content: ""; display: block; clear: both }
.school_header #gn > ul > li {width: calc((100% - 60px - 175px) / 6);height: 60px;position: relative;}
.school_header #gn > ul > li > a {display: block;position: relative;font-size: 14px;font-weight: 400;line-height: 1;text-decoration: none;text-align: center;color: #fff;white-space: nowrap;padding: 19px 0 27px;border-right: 1px solid #fff;}
.school_header #gn > ul > li:first-child a { border-left: 1px solid #fff }
.school_header #gn > ul > li.current > a { pointer-events: none }
.school_header #gn > ul > li > a:after { content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 100%; background: rgba(255,255,255,.3); -webkit-transition: .3s; -o-transition: .3s; transition: .3s }
.school_header #gn > ul > li > a:before {content: "";display: block;position: absolute;left: 50%;transform: translateX(-50%);bottom: 13px;border: 3px solid transparent;border-top: 6px solid #fff;border-bottom: none;}
.school_header #gn > ul > li > a:hover:after,
.school_header #gn > ul > li.current > a:after { bottom: 0% }
.school_header #gn > ul > li.home { width: 60px }
.school_header #gn > ul > li.home > a { padding: 18px 0 }
.school_header #gn > ul > li.about {width: 175px;}
.school_header #gn > ul > li.contact {width: 145px;}
.school_header #gn .sub { position: absolute; right: 0; top: 100%; background: url(/img/cmn/gn_bg.gif) repeat #525252; display: none; z-index: 1; min-width: 100% }
.school_header #gn .sub > li + li > a { border-top: none }
.school_header #gn .sub > li > a { color: #fff; font-size: 14px; text-decoration: none; display: block; position: relative; padding: 10px; border: 1px solid #fff; white-space: nowrap }
.school_header #gn .sub > li.current > a { pointer-events: none }
.school_header #gn .sub > li > a:after { content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 100%; background: rgba(255,255,255,.3); -webkit-transition: .3s; -o-transition: .3s; transition: .3s }
.school_header #gn .sub > li > a:hover:after,
.school_header #gn .sub > li.current > a:after { bottom: 0% }
.school_header #gn > ul.gn-new > li {width: calc((100% - 60px - 175px - 140px - 150px - 120px) / 4);}
.school_header #gn > ul.gn-new > li.about {width: 175px;}
.school_header #gn > ul.gn-new > .schedule {width: 140px;}
.school_header #gn > ul.gn-new > li.contact {width: 150px;}
.school_header #gn > ul.gn-new > .kensyuu {width: 120px;}
/* /スクールからコピペ */

@media screen and ( min-width: 751px ) {

  /* Tweak */
  body {min-width: 1030px;padding-top: 0 !important;}
  .school_header a[href^="tel:"] {text-decoration: inherit;color: inherit;pointer-events: none;}
  /* /Tweak */

  /* スクールからコピペ */
  .school_header #gn > ul > li.home > a:before { content: none }
  .school_header #fn2 {display: none;}
  /* /スクールからコピペ */

}

@media screen and ( max-width: 750px ) {

  /* Tweak */
  .school_header #header_spmenu li {box-sizing: content-box;}
  .school_header #fn2 a {line-height: 16px;}
  /* /Tweak */

  /* スクールからコピペ */
  .school_header #header { width: auto; padding: 0 5px }
  .school_header #header_sp { position: fixed; top: 0; left: 0; right: 0; z-index: 99999; background: #fff; padding: 0 5px }
  .school_header #header_description {margin: 0 -5px;background: #D91819;color: #fff;font-size: 10px;text-align: center;line-height: 15px;white-space: nowrap;overflow: hidden;-webkit-transition: .6s;-o-transition: .6s;transition: .6s;height: 15px;width: auto;}
  .school_header #header_sp .bottom { display: table; table-layout: fixed; width: 100%; padding: 10px 0; -webkit-transition: .6s; -o-transition: .6s; transition: .6s }
  .school_header #header_logo { display: table-cell; padding: 0 10px 0 0; font-size: 10px }
  .school_header #header_logo img { margin-bottom: 2px }
  .school_header #header_spmenu { display: table-cell; width: 145px; padding-top: 3px }
  .school_header #header_spmenu:after { content: ""; display: block; clear: both }
  .school_header #header_spmenu li { width: 43px; height: 43px; border: 1px solid #d91819; float: left }
  .school_header #header_spmenu li + li { margin-left: 5px }
  .school_header #header_spmenu .menu { cursor: pointer }
  .school_header #header_sp.fixed { box-shadow: 0 0 3px #000 }
  .school_header #header_sp.fixed #header_description { height: 0 }
  .school_header #header_sp.fixed .bottom { padding: 3px 0 }
  .school_header #header_spmenu.nospmenu { width: calc(145px - 45px) }

  .school_header #gn { position: fixed; right: -35px; bottom: 0; width: 0; overflow: scroll; z-index: 99998; -webkit-transition: .6s; -o-transition: .6s; transition: .6s; border: 5px solid #333 !important; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box }
  .school_header #gn.visible { width: 100%; right: 0 }
  .school_header #gn > ul { width: auto; display: block }
  .school_header #gn > ul > li {display: block;float: none;height: auto;width: auto !important;}
  .school_header #gn > ul > li > a {width: auto;border: none;text-align: left;padding: 20px 15px 20px 35px !important;font-size: 16px;}
  .school_header #gn > ul > li > a:before { left: 10px; bottom: 24px; border: 6px solid transparent; border-left: 9px solid #fff; border-right: none }
  .school_header #gn > ul > li:first-child a { border-left: none }
  .school_header #gn > ul > li + li { border-top: 1px solid #aaa }
  .school_header #gn .sub {display: block !important;height: auto !important;position: static;padding: 0px 0 20px 0 !important;box-sizing: border-box;width: calc(100vw - 10px);background: none;overflow: visible !important;}
  .school_header #gn .sub > li > a {border: none;white-space: normal;line-height: 1.5;padding-left: 62px;}
  .school_header #gn .sub > li { position: relative }
  .school_header #gn .sub > li::before {content: "";display: block;position: absolute;left: 38px;top: 7px;border: 2px solid #fff;width: 12px;height: 12px;border-top: none;border-right: none;}
  .school_header #gn .sub > li::after {content: "";display: block;position: absolute;left: 38px;top: -23px;border-left: 2px solid #fff;height: 32px;}
  .school_header #gn .sub > li:first-child::after { height: 18px; top: -6px }
  .school_header #gn .link{  padding-right: 20px; background: url(/img/cmn/link.svg) right center/11px auto no-repeat; background-size: 13px;}

  .school_header #fn2 {position: fixed;z-index: 99997;width: 100%;table-layout: fixed;background: #d91819;transition: .6s;}
  .school_header #fn2 > ul {display: flex;justify-content: center;}
  .school_header #fn2 a {color: #fff;display: block;text-align: center;padding: 10px 15px;font-size: 16px;text-decoration: none;white-space: nowrap;}
  /* /スクールからコピペ */

}

@media screen and ( min-width: 405px ) and ( max-width: 750px ) {
  /* スクールからコピペ */
  #header_logo img { max-width: 240px }
  /* /スクールからコピペ */
}

@media screen and ( min-width: 375px ) and ( max-width: 424px ) {
  /* スクールからコピペ */
  .school_header #fn2 a {font-size: 14px;}
  /* /スクールからコピペ */
}

@media screen and ( max-width: 374px ) {
  /* スクールからコピペ */
  .school_header #fn2 a {font-size: 13px;padding: 10px 10px;}
  /* /スクールからコピペ */
}



/************************************
** スクールフッター
************************************/

/* Tweak */
.school_footer {color: #535353;}
.school_footer img {vertical-align: top;}
.school_footer ul {list-style: none;margin: 0;padding: 0;border: 0;font: inherit;font-size: 100%;vertical-align: baseline;}
.school_footer .aa {transform: rotate(-0.03deg);}
.school_footer span.aa {display: inline-block;}
.school_footer .mp {font-family: "M PLUS 1p", meiryo, helvetica, arial, 'hiragino kaku gothic pro', 'ms pgothic', sans-serif;}
.school_footer #resdv .head {font-weight: normal;}
/* /Tweak */

/* スクールからコピペ */
.school_footer .list_dot li { position: relative; padding-left: 1em }
.school_footer .list_dot li:before { content: "\0030fb"; position: absolute; left: 0 }

.school_footer #resdv { background: #eee; padding: 0 0 15px; margin-top: 110px }
.school_footer #resdv .inner { width: 1000px; margin: 0 auto }
.school_footer #resdv p { line-height: 1.75 }
.school_footer #resdv .head { background: #d91819; color: #fff; font-size: 25px; line-height: 1; text-align: center; width: 660px; height: 70px; margin: 0 auto 19px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 25px 0 21px; position: relative; top: -20px }
.school_footer #resdv .head:before { content: ""; display: block; position: absolute; top: 0; left: -70px; border: 35px solid #d91819; border-left-color: transparent; border-bottom-color: transparent }
.school_footer #resdv .head:after { content: ""; display: block; position: absolute; top: 0; right: -70px; border: 35px solid #d91819; border-right-color: transparent; border-bottom-color: transparent }
.school_footer #resdv .link:after { content: ""; display: block; clear: both }
.school_footer #resdv .form_link { display: flex; justify-content: space-between; width: 585px; float: left }
.school_footer #resdv .form_link a { color: #fff; font-size: 18px; line-height: 1; text-decoration: none; display: block; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; width: 290px; height: 66px; padding: 25px 0 0 0; font-weight: 500; position: relative }
.school_footer #resdv .form_link a:after { content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; -webkit-transition: .6s; -o-transition: .6s; transition: .6s; pointer-events: none }
.school_footer #resdv .form_link a:hover:after { background: rgba(255,255,255,.5) }
.school_footer #resdv .doc a { background: url(/img/cmn/resdv_doc.png) no-repeat #d91819; background-position: 20px center; padding-left: 84px !important }
.school_footer #resdv .taiken a { background: url(/img/cmn/resdv_taiken.png) no-repeat #535353; background-position: 15px center; padding-left: 64px !important }
.school_footer #resdv .tel {float: left;border-left: 1px solid #a0a0a0;margin: 0 0 0 24px;padding: 0 0 0 25px;width: calc(1000px - 585px - 24px);box-sizing: border-box;}
.school_footer #resdv .pn { margin: 0 auto 14px; font-size: 10px }
.school_footer #resdv .uketuke { font-size: 13px; line-height: 1; font-weight: bold; margin: 0 }
.school_footer #resdv .hosoku { text-align: center; font-size: 16px; font-weight: 500; margin: 19px auto 0 }

.school_footer #footer { background: #d0120c }
.school_footer #footer .inner { width: 1000px; margin: 0 auto; padding: 31px 0 0 0 }
.school_footer #footer p { line-height: 1.75 }
.school_footer #footer_content { display: flex; justify-content: space-between }
.school_footer #footer .logo { border-bottom: 1px solid #fff; padding: 0 23px 11px 0; margin: 0 0 14px; font-size: 16px }
.school_footer #footer .address { color: #fff; font-size: 16px; line-height: 1; margin: 0 0 15px }
.school_footer #footer .tel { line-height: 1; margin: 0 auto 4px; font-size: 16px }
.school_footer #footer_content .tel a { background: url(/img/cmn/footer_tel.png) no-repeat; background-position: 0 7px; color: #fff; text-decoration: none; font-size: 38px; font-weight: 500; padding: 0 0 0 53px }
.school_footer #footer .uketuke { font-size: 15px; color: #fff; margin: 0 }
.school_footer #footer .shouhyou { width: 442px; margin: 7px 0 0; background: rgba(255,255,255,.8); border: 1px solid rgba(184, 184, 184, .8); padding: 16px 12px 10px 16px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box }
.school_footer #footer .shouhyou .head { color: #3e3a39; font-size: 18px; font-weight: 800; line-height: 1; margin: 0 0 10px }
.school_footer #footer .shouhyou p { font-size: 15px; line-height: 1.5; margin: 0 }
.school_footer #footer .shouhyou ul { font-size: 15px; line-height: 1.5 }

.school_footer #copyright { text-align: center; font-size: 14px; line-height: 1; color: #fff; margin: 38px 0 0; padding: 0 0 14px }
/* /スクールからコピペ */

@media screen and ( max-width: 750px ) {
  /* スクールからコピペ */
  .school_footer #resdv { padding: 0 }
  .school_footer #resdv .inner { width: auto; padding: 25px 15px }
  .school_footer #resdv .head { width: auto; font-size: 20px; line-height: 1.4; height: auto; top: auto; background: url(/img/cmn/resdv_headbg_sp.png) no-repeat; background-size: 100% 100%; padding: 5px 10%; margin: 0 auto 25px }
  .school_footer #resdv .head:before { content: none }
  .school_footer #resdv .head:after { content: none }
  .school_footer #resdv .form_link { width: auto; display: block; text-align: center; float: none }
  .school_footer #resdv .form_link a { width: auto }
  .school_footer #resdv .doc a { background-image: url(/img/cmn/resdv_doc_sp.png); background-size: 32.5px 25px; width: 285px; padding: 12px 0 0; height: 45px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; display: inline-block; padding-left: 60px !important; text-align: left }
  .school_footer #resdv .taiken a { background-image: url(/img/cmn/resdv_taiken_sp.png); background-size: 25.5px 25px; background-position: 23px center; width: 285px; padding: 13px 0 0; height: 45px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; display: inline-block; padding-left: 60px !important; margin: 10px auto 0; text-align: left }
  .school_footer #resdv .hosoku { margin: 3px auto 0 }
  .school_footer #resdv .tel {float: none;margin: 0 auto 20px;padding: 0;border: none;width: auto;}
  .school_footer #resdv .pn { margin: 0 auto 5px; text-align: center }
  .school_footer #resdv .uketuke { text-align: center; line-height: 1.4 }

  .school_footer #footer .inner { width: auto; padding: 15px }
  .school_footer #footer_content { display: block }
  .school_footer #footer .tel { text-align: center }
  .school_footer #footer .uketuke { font-size: 10px; text-align: center }
  .school_footer #footer_content .tel a { background-image: url(/img/cmn/footer_tel_sp.png); background-size: 35px 23.5px; font-size: 27px; padding: 2px 0 0 41px }
  .school_footer #footer .shouhyou { width: auto; padding: 12px }
  .school_footer #footer .shouhyou ul { display: table; margin: 10px auto 0 }
  .school_footer #footermenu { display: flex; justify-content: space-between; margin: 10px auto 0 }
  .school_footer #footermenu li { width: 49%; background: #fff; padding: 5px 10px; box-sizing: border-box; text-align: center; font-size: 14px; line-height: 1.4 }
  .school_footer #footerleft { margin: 30px auto 0 }
  .school_footer #footer .logo { padding: 0 5px 8px; text-align: center; margin: 0 auto 8px }
  .school_footer #footer .address { font-size: 10px; text-align: center; margin: 0 auto 8px }
  .school_footer #copyright { font-size: 10px; margin: 0 auto 0; padding: 0 0 5px }
  /* /スクールからコピペ */
}



/************************************
** その他
************************************/
.mobile-footer-menu-buttons {z-index: 99999 !important;}
