/* CSS Document */
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video{
	font-size:32px;
}
img{
	margin: 0;
	padding: 0;
	vertical-align: bottom;
}
html,body{
  width:100%;
  font-family:"ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , 'Noto Sans Japanese', "Meiryo UI" , "メイリオ" , Meiryo , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
}
/* For modern browsers */
.clearfix:before,
.clearfix:after {
    content:"";
    display:block;
    overflow:hidden;
}
.clearfix:after {
    clear:both;
}
/* For IE 6/7 (trigger hasLayout) */
.clearfix {
    zoom:1;
}
* {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
  line-height:150%;
}
.over:hover{
  filter:alpha(opacity=60);
  -moz-opacity: 0.6;
  opacity: 0.6;
}
.linkBox:hover{
	cursor:pointer;
  filter:alpha(opacity=80);
  -moz-opacity: 0.8;
  opacity: 0.8;
}
.flexbox-container {
  display:-webkit-box;
  display:-moz-box;
  display:-ms-box;
  display:-webkit-flexbox;
  display:-moz-flexbox;
  display:-ms-flexbox;
  display:-webkit-flex;
  display:-moz-flex;
  display:-ms-flex;
  display:flex;
  -webkit-box-lines:multiple;
  -moz-box-lines:multiple;
  -webkit-flex-wrap:wrap;
}
.flex{
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -moz-justify-content: space-between;
  justify-content: space-between;
  flex-direction: row;
  -moz-flex-wrap:wrap;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
}
.visible_pc{
  display: block;
}
/* .visible_sp{
  display: none;
} */
html,body{
  max-width: 768px;
  margin:auto;
  position: relative;
}
/* #mv{
  background-image: url(../img/mv_background.jpg);
  margin-top: 117px;
  padding:40px 3% 50px 3%;
  position: relative;
  height:790px;
} */
#mv h1{
  position: relative;
  z-index: 10;
  margin-bottom: 120px;
}
#mv .date{
  position: relative;
  z-index: 10;
}
#mv .girl{
  position: absolute;
  right:0;
  bottom:0;
}
.cv_box{
  background-image: url(img/ptn01.jpg);
	text-align: center;
	padding:160px 0 160px 0;
}
.cv_box h2{
  margin-bottom:22px;
  text-align: center;
}
.cv_box .box{
  width:50%;
  float: left;
  text-align: center;
  padding:0;
}
#nayami{
  background-image: url(img/ptn01.jpg);
  position: relative;
  margin-bottom: 80px;
  padding-bottom: 80px;
  text-align: center;
}
#nayami h2{
  text-align: center;
  margin-top:72px;
  padding-bottom: 45px;
}
#nayami .haha{
  position: relative;
  text-align: center;
  left:0;
  width:100%;
  bottom:70px;
}
#nayami .text{
  position: absolute;
  text-align: center;
  left:0;
  width:100%;
  bottom:-40px;
}


#answer .arrow{
  padding:45px 0 0 0;
  text-align: center;
}
#point{
  background-color: #fffedf;
  padding:60px 30px 30px 30px;
}
#point h2{
  text-align: center;
  margin-bottom: 45px;
}
#point .box{
  background-color: #fff;
  padding:24px;
  margin-bottom: 30px;
}
#point .point_img{
  text-align: center;

}
#point h3{
  padding:0px 0 36px 0;
}
#point .box .text{
  padding:15px 15px 0 15px;
}
#no1{
  background-color: #0054a7;
  text-align: center;
  padding:57px 0 60px 0;
}
#no1 h2{
  margin-bottom: 28px;
}
#no1 img{
  margin-bottom: 23px;
}
#year{
  padding:60px 15px 0 15px;
}
#year ul.tab{
  list-style: none;
}
#year ul.tab li{
  float: left;
  width:33%;
  text-align: center;
}
#year .tab_content ul{
  list-style: none;
  margin-top:16px;
  padding:30px 30px 50px 30px;
}
#year .tab_content ul.mss{
  border:2px #008cd6 solid;
}
#year .tab_content ul.mss.ess{
  border:2px #028f35 solid;
}
#year .tab_content ul.mss.hss{
  border:2px #e95324 solid;
}
#year .tab_content ul li{
  position: relative;
  padding-left:30px;
  text-align: left;
}
#year .tab_content ul li:before{
  content:"";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9.5px 0 9.5px 10px;
  border-color: transparent transparent transparent #007bff;
  position: absolute;
  top:15px;
  left:0;
}
#year .tab_content ul.ess li:before{
  border-color: transparent transparent transparent #028f35;
}
#year .tab_content ul.hss li:before{
  border-color: transparent transparent transparent #e95324;
}
#year .mss{
  width:100%;
  text-align: center;
  margin-top:-42px;
}
#year p{
  margin-top:20px;
}
#schedule{
  padding:60px 0;
  text-align: center;
}
#vzemi h2{
  margin-bottom:45px;
  text-align: center;
}
#vzemi .box{
  padding:10px 15px 15px 15px;
  margin-bottom: 20px;
}
#vzemi .pg_course{
  background-color: #71bbe2;
}
#vzemi .english_course{
  background-color: #64ba6d;
}
#vzemi .hama_course{
  background-color: #5f90cc;
}
#vzemi .hw_course{
  background-color: #f19ec2;
}
#vzemi h3{
  margin-left:-25px;
  margin-top:5px;
  margin-bottom: 10px;
}
#vzemi .white{
  background-color: #fff;
}
#vzemi .pg_course .white img,
#vzemi .hw_course .white img{
  float: left;
  padding:15px;
  margin-top:-30px;
}
#vzemi .english_course .white img{
  float: right;
  padding:15px 15px 0 15px;
  margin-top:-30px;
}
#vzemi .hw_course .white img{
  padding:15px 15px 0 15px;
}
#vzemi .english_course .white strong{
  display: block;
}
#vzemi .white p{
  padding:20px 20px;
}
.arrow2{
  background-image: url(../img/arrow.jpg);
  background-repeat: no-repeat;
  background-position: center bottom;
  text-align: center;
  font-weight: bold;
  padding:20px 0 40px 0;
  margin-bottom: 40px;
}
.arrow2 span{
  display: block;
  font-size:26px;
}

footer{
  background-color: #0054a7;
  padding:15px 0;
}
footer p{
  color:#fff;
  text-align: center;
}

/* #list{
  height:300px;
  overflow-y: auto;
  padding:0 10px 10px 0;
}
#list .name{
  float: left;
  width:25%;
  color:#0054a7;
  font-weight: bold;
  font-size:24px;
}
#list .clearfix{
  padding:10px;
  border-bottom:1px #ccc solid;
}
#list .addr{
  float:left;
  width:75%;
  font-size:20px;
}
#list .addr p{
  font-size:20px;
}
#list .addr a{
  color:#0054a7;
  font-size:18px;
} */

#list_sp .area{
  list-style: none;
}
#list_sp .area{
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#f9f5f5));
  font-weight: bold;
  padding: 20px;
  border-bottom: 1px #ccc solid;
  position: relative;
  font-size:14px;
}
#list_sp .area:before{
  content: "";
  display: block;
  width:6px;
  height:6px;
  border-right:2px #003d96 solid;
  border-bottom:2px #003d96 solid;
  transform: rotate(45deg);
  position: absolute;
  top: 27px;
  right: 22px;
  transition: .1s;
}
#list_sp .area.open:before{
  transform: rotate(225deg);
  top: 26px;
}
#list_sp ul.child{
  list-style: none;
  padding:10px;
}
#list_sp ul.child li{
  margin-bottom: 10px;
}
#list_sp ul.child li p.name{
  font-weight: bold;
  color: #003d96;
  margin-bottom: 5px;
  font-size: 0.6rem;
}
#list_sp ul.child li p.addr,
#list_sp ul.child li p.tel{
  font-size:14px !important;
  line-height: 130%;
}
#list_sp ul.child{
  display: none;
}
#list_sp a.apply{
  display: inline-block;
  background-color: #003d96;
  color:#fff;
  font-size:12px !important;
  text-decoration: none;
  padding:2px 5px;
  border-radius: 2px;
  margin-left: 10px;
}
@media screen and (max-width: 767px){
  .visible_pc{
    display: none;
  }
  .visible_sp{
    display: block;
  }
  header .inner{
    max-width: 100%;
  }
  img{
    /* zoom:.5; */
  }
  #mv{
    height:353px;
  }
  #mv h1{
    margin-bottom:30px;
  }
  .cv_box{
    padding:20px 3% 30px 3%;
  }
  .cv_box .box{
    padding:0 5px;
  }
  #nayami{
    padding-bottom: 0px;
    margin-bottom: 25px;
  }
  #nayami h2{
    margin-top:35px;
    padding-bottom: 20px;
  }
  #nayami .text{
    bottom: -25px
  }
  #answer .arrow{
    padding-top: 20px;
    padding-left: 3%;
    padding-right: 3%;
  }
  #answer img{
    width: 100%;
  }
  #point .box{
    margin-bottom: 3%;
  }
  #point{
    padding:30px 3%;
  }
  #point h2{
    margin-bottom: 20px;
  }
  #point h3{
    width:247px;
    padding-top:0;
    line-height: 100%;
  }
  *{
    font-size: 1rem !important;
  }
  #point .box .text{
    padding-left:0;
    padding-right: 0;
  }
  #point .box:last-child{
    margin-bottom: 0;
  }
  #year .tab_content ul{
    margin-top: 5px;
  }
  #no1{
    padding:20px 3%;
  }
  #no1 h2{
    margin-bottom: 0px;
  }
  #year{
    padding:15px;
  }
  #year .tab_content ul{
    padding:15px 15px 30px 15px;
  }
  #year .tab_content ul li:before{
    border-width: 4px 0 4px 5px;
    top: 6px;
  }
  #year .tab_content ul li{
    padding-left:15px;
  }
  #year .mss{
    margin-top: -24px;
  }
  #schedule{
    padding:15px 0 30px 0;
  }
  #vzemi{
    padding-left:3%;
    padding-right: 3%;
  }
  #vzemi h2{
    margin-bottom: 20px;
  }
  #vzemi .box{
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 10px;
  }
  #voice img,
  .vzemi_main img{
    width:100%;
  }
  .cv_box img{
    width:100%;
  }
  #vzemi h3{
    margin-left: -15px;
  }
  #vzemi .white p{
    padding:10px;
  }
  .arrow2{
    margin-bottom: 15px;
    background-size: 50% auto;
    padding: 10px 0 20px 0;
  }
  #mv{
    margin-top: 63px;
  }
  #year ul.tab li{
    padding:0 2px;
  }
  #year ul.tab li img{
    width:100%;
  }

  footer p{
    font-size:24px;
  }
  #point .point_img{
    padding-right:10px;
    width:20%;
  }
  #point h3{
    width:80%;
  }
}
