/*
  Reset
----------------------------------------------------------------------------------------------------*/
html, body,#keieikibanPage div,#keieikibanPage span,#keieikibanPage object,#keieikibanPage iframe,
#keieikibanPage h1,#keieikibanPage h2,#keieikibanPage h3,#keieikibanPage h4,#keieikibanPage h5,#keieikibanPage h6,#keieikibanPage p,
#keieikibanPage a,#keieikibanPage address,
#keieikibanPage img,
#keieikibanPage sub,#keieikibanPage sup,

#keieikibanPage dl,#keieikibanPage dt,#keieikibanPage dd,#keieikibanPage ol,#keieikibanPage ul,#keieikibanPage li,
#keieikibanPage fieldset,#keieikibanPage form,#keieikibanPage label,#keieikibanPage legend,
#keieikibanPage table,#keieikibanPage caption,#keieikibanPage tbody,#keieikibanPage tfoot,#keieikibanPage thead,#keieikibanPage tr,#keieikibanPage th,#keieikibanPage td,
#keieikibanPage article,#keieikibanPage aside,#keieikibanPage canvas,#keieikibanPage details,#keieikibanPage embed,
#keieikibanPage figure,#keieikibanPage figcaption,
#keieikibanPage menu,#keieikibanPage nav,#keieikibanPage output,#keieikibanPage ruby,#keieikibanPage section,#keieikibanPage summary,
#keieikibanPage time,#keieikibanPage mark,#keieikibanPage audio,#keieikibanPage video { margin: 0; padding: 0; border: 0; line-height: 1.6; font-size: 100%; font: inherit; vertical-align: baseline; }
#keieikibanPage article,#keieikibanPage figcaption,#keieikibanPage figure,
#keieikibanPage nav,#keieikibanPage section { display: block; }
#keieikibanPage ol,#keieikibanPage ul { list-style: none; }
:root #keieikibanPage  ol { margin: 0; padding: 0; }
:root #keieikibanPage  ul { margin: 0; padding: 0; }
#keieikibanPage input { margin: 0; padding: 0; border: none; }
#keieikibanPage input:focus { outline: none; }
#keieikibanPage input[type="submit"] { cursor: pointer; }
#keieikibanPage table { border-collapse: collapse; border-spacing: 0; }

/*
  Base Style
----------------------------------------------------------------------------------------------------*/
#keieikibanPage { color: #222; font-size: 15px; line-height: 2; -webkit-text-size-adjust: 100%; *text-align: center; }
#keieikibanPage a { text-decoration: none; color: #0066aa; }
#keieikibanPage a:visited { color: #552277; }
#keieikibanPage a:hover { color: #1d9bff; }
#keieikibanPage img { vertical-align: middle; }

* { outline: none!important; }

#keieikibanPage { font-family: "Noto Sans JP","Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; }
#keieikibanPage * { box-sizing: border-box; }

@media screen and (min-width: 768px){
    #keieikibanPage #content { color: #222; }
    #keieikibanPage .blockOverWrap { position: relative; overflow: hidden; }
    #keieikibanPage .blockOverWrap::before { content:''; display: block; background: #ebf6ff; position: absolute; top: 0; right: calc( 60% ); opacity: 0; transition: 1s; height: 460px; width: 100%; z-index: -1; }
    #keieikibanPage .blockInner { max-width: 1200px; margin: 0 auto; }
    
    #keieikibanPage .blockOverWrap.in::before { right: calc( 50% - 500px ); opacity: 1; }

    #keieikibanPage .blockInner { max-width: 1200px; margin: 0 auto 60px; }
    #keieikibanPage .blockInnerIn { max-width: 1000px; margin: 0 auto; padding: 50px 0; }
    #keieikibanPage .blockInner h2,
    #keieikibanPage .blockInnerIn h2 { background: #0E0D6A; border-radius: 4px; color: #fff; font-size: 30px; text-align: center; height: 100px; line-height: 100px; margin-bottom: 30px; position: relative; } 
    #keieikibanPage .blockInner h2::after,
    #keieikibanPage .blockInnerIn h2::after { content: ''; display: block; width: 0; height: 0; border-style: solid; border-width: 9px 9px 0 9px; border-color: #0e0d6a transparent transparent transparent; position: absolute; left: 50%; margin-left: -9px; bottom: -9px; }
    #keieikibanPage .blockInner img,
    #keieikibanPage .blockInnerIn img { width: 100%;}

    #keieikibanPage .blockInner h3,
    #keieikibanPage .blockInnerIn h3 { font-size: 24px; font-weight: bold; margin-bottom: 40px; text-align: center; }
    #keieikibanPage .blockInner p,
    #keieikibanPage .blockInnerIn p { font-size: 15px; margin-bottom: 40px; text-align: left; }
    
    #keieikibanPage .headerBox { position: relative; margin-bottom: 50px; padding-bottom: 25px;}
    #keieikibanPage .headerBox::after { content:''; display: block; height: 0; border-bottom: 1px solid #111; position: absolute; width: 300%; left: 0; bottom: 0; }
    #keieikibanPage .headerBox h1 { font-size: 40px; }
    
    #keieikibanPage #philosophyWrap { padding: 80px 0 0; }
    #keieikibanPage #btmBnr {background: #f2f2f2; padding: 0 20px;}
    #keieikibanPage #btmBnr .blockInner { margin-bottom: 0!important; }
}
@media screen and (min-width: 767.98px) and (max-width: 1199.98px){
  #keieikibanPage .blockOverWrap::before { content: ''; display: block; background: #ebf6ff; position: absolute; top: 0; left: 0; height: 360px; width: 90%; z-index: -1; }
  #keieikibanPage .blockOverWrap { padding: 0 20px; }
}

@media screen and (min-width: 767.98px) and (max-width: 980px) {
}

@media screen and (min-width: 0px) and (max-width: 767.98px) {
    #keieikibanPage #content { color: #222; }
    #keieikibanPage .blockOverWrap { position: relative; overflow: hidden; }
    #keieikibanPage .blockOverWrap::before { content:''; display: block; background: #ebf6ff; position: absolute; top: 0; left: 0; height: 60vw; width: 90%; z-index: -1; }
    #keieikibanPage .blockInner { margin: 0 auto; }
    #keieikibanPage .blockInnerIn { margin: 0 auto; padding: 8% 5% 15%; }
    #keieikibanPage .blockInner .blockInnerIn img { width: 100%; margin: 0; }
    #keieikibanPage .blockInner img { width: 90%; margin: 0 5%; }
    
    #keieikibanPage .blockInner h2,
    #keieikibanPage .blockInnerIn h2 { background: #0E0D6A; border-radius: 1vw; color: #fff; font-size: 5vw; text-align: center; height: 16vw; line-height: 16vw; margin: 0 5% 5%; position: relative; } 
    #keieikibanPage .blockInner h2::after,
    #keieikibanPage .blockInnerIn h2::after { content: ''; display: block; width: 0; height: 0; border-style: solid; border-width: 9px 9px 0 9px; border-color: #0e0d6a transparent transparent transparent; position: absolute; left: 50%; margin-left: -9px; bottom: -9px; }
    
    #keieikibanPage .blockInner h3,
    #keieikibanPage .blockInnerIn h3 { font-size: 5vw; font-weight: bold; margin-bottom: 7%; text-align: center; line-height: 1.6; }
    #keieikibanPage .blockInner p,
    #keieikibanPage .blockInnerIn p { font-size: 3.4vw; margin-bottom: 7%; text-align: left; }

    #keieikibanPage .headerBox { position: relative; margin-bottom: 10%; padding: 0 5%; position: relative;}
    #keieikibanPage .headerBox::after { content:''; display: block; height: 0; border-bottom: 1px solid #111; position: absolute; width: 95%; left: 5%; bottom: -2.4vw; }
    #keieikibanPage .headerBox h1 { font-size: 7vw; line-height: 1.1; margin-bottom: 2%; }
    #keieikibanPage .headerBox h1 a img { width: 9vw; margin-bottom: 2vw; }
    
    #keieikibanPage #philosophyWrap { padding: 10% 0 0; }
}
#btmBnr {background: #f2f2f2;}

#keieikibanPage .view-pc { display: block!important; }
#keieikibanPage .view-sp { display: none!important; }

@media screen and (min-width: 0px) and (max-width: 767px) {
	#keieikibanPage .view-pc { display: none!important; }
	#keieikibanPage .view-sp { display: block!important; }
}

.grayBG { background: #F1F2F6; }

/* 2021 3 31 */
.sldUp { opacity: 0; transform: translate( 0 ,60px ); transition: .8s; transition-delay: .2s;}
.sldUp.up { opacity: 1; transform: translate( 0 ,0 );}

/*
  BREADCRUMB
----------------------------------------------------------------------------------------------------*/

#keieikibanPage .TOPIC-PATH{ font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif; line-height: 1; padding: 11px 0; background-color: #f1f2f6; border-bottom: 1px solid #e6e9ee; }
#keieikibanPage .TOPIC-PATH-INNER{ margin: 0 auto; font-size: 12px; line-height: 1.4; }

@media screen and (min-width: 768px) {
    #keieikibanPage .TOPIC-PATH-INNER.LOWER-WIDE-BREADCRUMB{ max-width: 1200px; width: auto!important; padding: 0 12px;}
}

@media screen and (max-width: 768px){
	#keieikibanPage .TOPIC-PATH .TOPIC-PATH-INNER{ width: auto; margin: 0 12px; line-height: 1.8; }
}