main {
  font-family: "ヒラギノ角ゴシック";
  font-weight: 500;
}

img {
  pointer-events: none;
}

#top-bg{
  color: white;
  /* background: radial-gradient(#FFFFFF55, #FA6900E9); FA6900B0*/
  background: linear-gradient(90deg, #fbbf80, #fbbf80, #fbbf80f0, #fbbf8030,#0000) ;
  height: 33vw;
  min-height: 200px;
  max-height: 600px;
}

#container {
  max-width: 750px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 30px;
}

.math_img {
  width: 100%;
}

#content_1 {
  width: 100%;
  position: relative;
  margin-bottom: 10%;
}

#content_1_2_1_detail {
  width: 54%;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 16%;
  right: 5%;
}

#content_1_2_1_text_area {
  width: 100%;
  background-image: url(../img/class/1_2_1_middle.png);
  background-size: contain;
}

#content_1_2_1_discription {
  padding: 16px;
  width: 100%;
}

#content_1_2_2_detail {
  width: 47%;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 48%;
  left: 5%;
}

#content_1_2_2_text_area {
  width: 100%;
  background-image: url(../img/class/1_2_2_middle.png);
  background-size: contain;
}

#content_1_2_3_detail {
  width: 80%;
  margin-left: 15%;
  margin-right: 5%;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: -4%;
}

#content_1_2_3_text_area {
  width: 100%;
  background-image: url(../img/class/1_2_3_middle.png);
  background-size: contain;
}

#content_2 {
  width: 100%;
  position: relative;
}

#content_2_2_1 {
  width: 90%;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 68%;
  right: 4%;
}

#content_2_2_2 {
  width: 80%;
  padding: 5%;
  margin-left: 10%;
  margin-right: 10%;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 3%;
  font-weight: bold;
  transform: rotate(-3deg);
  -moz-transform: rotate(-3deg);
  -webkit-transform: rotate(-3deg);
  line-height: 1.8;
}

#content_3 {
  width: 100%;
  position: relative;
}

#content_3_2_1_detail {
  width: 52.5%;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 3%;
  right: 5%;
}

#content_3_2_1_text_area {
  width: 100%;
  background-image: url(../img/class/3_2_1_middle.png);
  background-size: contain;
}

#content_3_2_2_detail {
  width: 52.5%;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 36%;
  right: 5%;
}

#content_3_2_2_text_area {
  width: 100%;
  background-image: url(../img/class/3_2_2_middle.png);
  background-size: contain;
}

#content_3_2_3_detail {
  width: 48%;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 10%;
  left: 13%;
}

#content_3_2_3_text_area {
  width: 100%;
  background-image: url(../img/class/3_2_3_middle.png);
  background-size: contain;
}

#content_4_detail {
  background-image: url(../img/class/4_bg_middle.png);
  background-size: contain;
}

#content_4_text_area {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}

#teacher_photo {
  width: 100%;
  margin-top: 25px;
}

#about_teacher {
  padding: 6%;
}

#math_enter_bg {
  width: 100%;
  margin-top: auto;
  background-image: url(../img/class/5_bg.png);
  background-size: contain;
}

.content_5 {
  width: 100%;
  max-height: 266px;
  height: 35.5vw;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  background: center;
  background-image: url(../img/class/5_bg_building.png);
  background-size: contain;
  background-repeat: repeat-x;
}

.trial_button {
  max-width: 546px;
  width: 80%;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  position: absolute;
  top: -30%;
  left: 0;
  right: 0;
  margin: auto;
}

/****************************************************************************/
@media only screen and (max-width : 414px){
  #container {
     margin-bottom: 55px;
  }
}

@media only screen and (min-width : 415px) and (max-width : 599px){
  #container {
     margin-bottom: 70px;
  }
}

@media only screen and (min-width : 600px) and (max-width : 749px){
  #container {
     margin-bottom: 85px;
  }
}

@media only screen and (min-width : 750px){
  #container {
     margin-bottom: 95px;
  }
}
/****************************************************************************/
@media only screen and (max-width : 850px){
  #top-bg-img{
    position:absolute;
    right: calc(870px - 90%);
  }
}

/****************************************************************************/
@media only screen and (max-width : 550px){
  #top-title{
    display: none;
  }
  #top-title-sp{
    visibility: visible;
  }
}

@media only screen and (min-width : 551px){
  #top-title{
    visibility: visible;
  }
  #top-title-sp{
    display: none;
  }
}

/****************************************************************************/
/* 授業と超自立型学習のコラボレーション */
@media only screen and (max-width : 320px){
  #content_1_2_2_detail {
    width: 54%;
    top: 45%;
  }

  #content_1_2_2_discription, #content_1_2_1_discription {
    padding: 7px 10px;
    font-size: 9px;
    line-height: 1.3;
  }
}

@media only screen and (min-width : 321px) and (max-width :369px){
  #content_1_2_2_detail {
    width: 52%;
    top: 45%;
  }

  #content_1_2_2_discription, #content_1_2_1_discription {
    padding: 7px 10px;
    font-size: 9px;
    line-height: 1.3;
  }
}

@media only screen and (min-width : 370px) and (max-width :413px){
  #content_1_2_2_detail {
    width: 50%;
    top: 45%;
  }

  #content_1_2_2_discription, #content_1_2_1_discription {
    padding: 7px 15px;
    font-size: 10px;
    line-height: 1.3;
  }
}

@media only screen and (min-width : 414px) and (max-width :484px){
  #content_1_2_2_detail {
    width: 50%;
    top: 46%;
  }

  #content_1_2_2_discription, #content_1_2_1_discription {
    padding: 10px 16px;
    font-size: 11px;
    line-height: 1.3;
  }
}

@media only screen and (min-width : 485px) and (max-width :549px){
  #content_1_2_2_detail {
    width: 47%;
    top: 48%;
  }

  #content_1_2_2_discription, #content_1_2_1_discription {
    padding: 12px 24px;
    font-size: 11px;
    line-height: 1.4;
  }
}

@media only screen and (min-width : 550px) and (max-width :589px){
  #content_1_2_2_detail {
    width: 47%;
    top: 48%;
  }

  #content_1_2_2_discription, #content_1_2_1_discription {
    padding: 15px 30px;
    font-size: 12px;
    line-height: 1.5;
  }
}

@media only screen and (min-width : 590px) and (max-width : 659px){
  #content_1_2_2_detail {
    width: 47%;
    top: 48%;
  }

  #content_1_2_2_discription, #content_1_2_1_discription {
    padding: 15px 30px;
    font-size: 13px;
    line-height: 1.5;
  }
}

@media only screen and (min-width : 660px){
  #content_1_2_2_detail {
    width: 47%;
    top: 48%;
  }

  #content_1_2_2_discription, #content_1_2_1_discription {
    padding: 15px 30px;
    font-size: 15px;
    line-height: 1.5;
  }
}

/****************************************************************************/
/* 背景画像 */
@media only screen and (max-width : 428px){
  body {
    background-image: url(../img/background_small.png);
  }
}

@media only screen and (min-width : 429px){
  body {
    background-image: url(../img/background.png);
  }
}

/****************************************************************************/
/* 定期考査で得点アップ */
@media only screen and (max-width : 320px){
  #content_1_2_3_discription {
    padding: 10px;
    font-size: 9px;
  }
}

@media only screen and (min-width : 321px) and (max-width :369px){
  #content_1_2_3_discription {
    padding: 10px;
    font-size: 10px;
  }
}

@media only screen and (min-width : 370px) and (max-width :413px){
  #content_1_2_3_discription {
    padding: 10px;
    font-size: 11px;
  }

}

@media only screen and (min-width : 414px) and (max-width :484px){
  #content_1_2_3_discription {
    padding: 14px;
    font-size: 11px;
  }
}

@media only screen and (min-width : 485px) and (max-width :549px){
  #content_1_2_3_discription {
    padding: 18px;
    font-size: 14px;
  }
}

@media only screen and (min-width : 550px) and (max-width :589px){
  #content_1_2_3_discription {
    padding: 20px;
    font-size: 16px;
  }
}

@media only screen and (min-width : 590px) and (max-width : 659px){
  #content_1_2_3_discription {
    padding: 22px;
    font-size: 17px;
  }
}

@media only screen and (min-width : 660px) and (max-width : 699px){
  #content_1_2_3_discription {
    padding: 30px;
    font-size: 18px;
  }
}

@media only screen and (min-width : 700px) and (max-width : 749px){
  #content_1_2_3_discription {
    padding: 30px;
    font-size: 19px;
  }
}

@media only screen and (min-width : 750px){
  #content_1_2_3_discription {
    padding: 30px;
    font-size: 20px;
  }
}

/****************************************************************************/
/* 数学を得意科目へ */
@media only screen and (max-width :749px){
  #content_2_2_2 {
    font-size: 2.8vw;
  }
}

@media only screen and (min-width : 750px){
  #content_2_2_2 {
    font-size: 22px;
  }
}

/****************************************************************************/
/* 授業タイプ */
@media only screen and (max-width :749px){
  #content_3_2_1_detail {
    top: 3%;
  }

  #content_3_2_1_discription, #content_3_2_2_discription {
    padding: 8px 6% 10px 12%;
    font-size: 2.2vw;
  }
  #content_3_2_3_discription {
    padding: 8px 5% 10px 11%;
    font-size: 2.2vw;
  }
}

@media only screen and (min-width : 750px){
  #content_3_2_1_detail {
    top: 4%;
  }
  #content_3_2_1_discription, #content_3_2_2_discription {
    padding: 8px 6% 10px 12%;
    font-size: 16px;
  }
  #content_3_2_3_discription {
    padding: 8px 5% 10px 11%;
    font-size: 16px;
  }
}
