@charset "utf-8";

/*===============================================================
BASE layout SP
=================================================================*/

@media (max-width: 640px){

header {
  max-width:1000px;
  margin: 0 auto;
  background: #fff;
  height: 95px;
  position: relative;
}
img.logo {
max-width: 100px;
height: auto;
vertical-align: bottom;
}

/*============================================
header SP
============================================*/
.home-top-image {/*親div*/
  position: relative;/*相対配置*/
  }

.home-top-image h2 {
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
  color: white;/*文字は白に*/
  font-size: 25px;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700;
  line-height:1.6em;
  text-align:center;
  letter-spacing: 0.09em;
  width:100%;
  }

.home-top-image img {
  width: 100%;
  max-height: 730px;
  vertical-align: bottom;
  object-fit: contain;
}

/*============================================
main  SP
============================================*/
/*エンドブロック*/
.block-end{
  padding:10px 10px;
  text-align:center;
}
main section .inner-flex-start {
    flex-direction: column;
}

main section .inner-flex-start .program-box {
  width: 100%;
}
main section .inner-flex-start .banner-box {
  width: 100%;
}

bottom.toppage {
  display:block;
  margin-right:10px;
  padding:60px 0 ;
  text-align:center;
}
bottom.toppage a{
    opacity: 1;
  -webkit-transition: .1s ease-in-out;
  transition: .1s ease-in-out;
}
bottom.toppage a:hover {
    opacity: 0.5;
}
img.banner-img{
  max-width: 94%;
  margin: 3% 3%;
}
/*============================================
side  SP
============================================*/
/*============================================
footer  SP
============================================*/

}