/* --------------------------------------------- */
/* ▼PCファースト (全環境に共通のデザイン) */
/* --------------------------------------------- */

p{
  font-family: "Sawarabi Mincho";
}

.pc { display: block !important; }
.sp { display: none !important; }

body{
  max-width: 100%;
  font-size: 20px;
  align-items: center;
}

.fv{
  width: 100%;
  height: auto;
}

.fv img{
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

header{
   max-width: 100%;
   vertical-align: bottom;
   background-image:url("../img/m-08.png");
   background-size: cover;
   background-position: 50% 50%;
   height: 20%;
   padding: 20px 30px;
   text-align : center;
}

body img{
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

header ul{
  display: flex;
  list-style-type: none;
	padding-left: 0;
}

header li{
	width: 20%;
	margin: 10px;
  display: inline-block;
}

.list{
  text-align: center;
}

header a{
  text-decoration: none;
  color: #fff;
}

.kituke{
  display: flex;
  justify-content: center;
  align-items: center;
}

.kituke img{
  margin:0 15px;
}

.kituke p{
  text-decoration: none;
  color: black;
  text-align: left;
  padding:5% 10%;
  line-height: -1.0em
}

.kituke2 img,
.prof img,
.osinagaki img,
.event img,
.info img,
.model img{
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

.prof{
  background-color: black;
  display: flex;
  justify-content: center;
  align-items: center;

}

.prof2{
  text-align: center;

}

.prof2 p{
  text-align: left;
  color: #fff;
  line-height: -1.0em;
  margin: 0 2% 5% 10%;
}

.prof img{
  width: 35%;
  height: 35%;
}

.prof2 img{
  width: 100%;
}

.event{
  background-color:#fff;
}

.event p{
  text-decoration: none;
  color: black;
  text-align: left;
  padding:5% 10%;
  line-height: -1.0em
}

.contact{
  display: block;
  text-align: center;
}

.contactb{
  background: url(../img/qa_bg_b.png)no-repeat;
  background-size: cover;
  background-position: center;
}

.contactb2{
  background: url(../img/qa_bg_w.png)no-repeat;
  background-size: cover;
  background-position: center;
}

.contact img{
  width: 50%;
  height: auto;
  padding: 8% 0 3% 0;
}

.contact a{
  font-size: 32px;
  color: #fff;
  text-decoration: none;
}

.contact p{
  font-size: 16px;
  color: #fff;
  padding-bottom:3%;
}

.blog{
  display: flex;
}

.left{
  float: left;
}

.right{
  float: right;
}

.sensei{
  display: flex;
  width: 100%;
  margin: 10% 0;
}

.sensei img{
  width: 60%;
  height: 60%;
}

.sensei p{
  margin: auto 3%;
  text-decoration: none;
  color: black;
  text-align: center;
  line-height: 1.8em
}

.tv{
  display: flex;
}

.tvleft{
  float: left;
  width: 90%;
}

.tvleft img{
  margin-bottom: 5%;
}

.tvright{
  float: right;
  width: 20%;
}

footer{
  max-width: 100%;
  height: auto;
  background: url(../img/footer_back.png)no-repeat;
  background-position: center;
  background-size: cover;
}

.logo img{
  width: 25%;
  height: 25%;
  margin: 0 auto;
}

.menu ul{
  display: flex;
  list-style: none;
  flex-wrap: nowrap;
  padding: 0;

}

.menu{
  text-align: center;
}

.menu li{
  width: 100%;
}

.menu li a{
  text-decoration: none;
  color: #fff;
  font-size: 18px;
}

.menu img{
  width: 50%;
  height: auto;

}

#pagetop img{
  position:fixed;
  right: 4%;
  bottom:2%;
  cursor:pointer;
  z-index: 10;
}

/* スマホ */

@media screen and (max-width: 400px) {
  body{
    font-size: 14px;
  }

  .pc { display: none !important; }
  .sp { display: block !important; }

  .kituke{
  display: block;
  text-align: center;
  }

  .kituke img{
    margin:6% 0;
  }

  #prof img{
    background-color:black;
    vertical-align: bottom;
    padding-top: 5%;
  }

  .prof2 p{
  margin: 5% 10%;
  }

  .contact a{
    font-size: 12px;
  }

  .menu li a{
    font-size: 10px;
  }
}

/* スマホとタブレットの間 */

 @media screen and (max-width: 668px) and (min-width: 400px){
  body{
    font-size: 14px;
  }

  .pc { display: none !important; }
  .sp { display: block !important; }

  .kituke{
  display: block;
  text-align: center;
  }

  .kituke img{
    margin:6% 0;
  }

  #prof img{
    background-color:black;
    vertical-align: bottom;
  }

  .prof2 p{
    margin: 5% 10%;
    }

  .contact a{
    font-size: 12px;
  }

  .contact p{
    font-size: 6px;
  }

  .menu li a{
    font-size: 12px;
  }

}

/* タブレット */

@media screen and (max-width: 900px) and (min-width: 668px){
  body{
    font-size: 17px;
  }

  #prof img{
    background-color:black;
    vertical-align: bottom;
  }

  .prof2 p{
    margin: 0 10% 5% 10%;
    }

  .contact a{
    font-size: 21px;
  }

  .contact p{
    font-size: 12px;
  }

  #pagetop img{
    width: 10%;

  }

  .menu li a{
    font-size: 15px;
   }

}

 /* 幅の広いデバイス */

@media screen and (min-width: 1200px){
  body{
    padding: 0 10%;
  }
}

@media screen and (min-width: 1570px){
  body{
    padding: 0 18%;
  }
}

@media screen and (min-width: 2090px){
  body{
    padding: 0 20%;
  }
}