/*---------------------------------

  目次
  0.header
  1.main
    1.1 ファーストビュー
    1.2.1 wrap 背景調整
    1.2 Trouble 投資に関する悩み
    1.3 Answer 投資に関する悩みを解消
    1.4 後悔しないスクール選び
    1.5 初心者が安定した投資家になる
    1.6 こんな方におすすめです！
    1.7 もしあなたが本気で学べば
    1.8 スタートアップセミナー開催
    1.9 Tuition fee 受講料金について
    1.10 スタートアップセミナー詳細
    1.11 FORM
    1.12 講師紹介
    1.13 Thought 福岡FXスクールの想い
    1.14 UserVoice 生徒様の声
    1.15 Q&A よくある質問
  2.footer

---------------------------------*/



/*---------------------------------

  0.header

---------------------------------*/
header{
 display: flex;
 justify-content: center;
 align-items: center;
 height: 100px;
}
header #logo{
  margin-right: 30px;
}
header #logo img{
  width: 110px;
}
header p{
  font-size: 4.5rem;
  font-weight: 500;
  color:#e50315;
  white-space: nowrap;
}
header p::before{
  content:"";
  margin-right: 1.5vw;
  display: inline-block;
  width: 4.2rem;
  height: 5rem;
  background: url(../img/header/header-title-before.png);
  background-repeat: no-repeat;
  background-size: cover;
}
header p::after{
  content:"";
  margin-left: 1.5vw;
  display: inline-block;
  width: 4.2rem;
  height: 5rem;
  background:url(../img/header/header-title-after.png);
  background-repeat: no-repeat;
  background-size: cover;
}


@media screen and (max-width: 768px) {
  header{
    height: 50px;
  }
  header #logo{
    display: none;
  }
  header p{
    font-size: 5vw;
    font-weight: 500;
    letter-spacing: normal;
  }
  header p::before{
    content:"";
    margin-right: 5px;
    display: inline-block;
    width: 1.4rem;
    height: 2.1rem;
    background: url(../img/header/header-title-before-sp.png);
    background-repeat: no-repeat;
    background-size: contain;
  }
  header p::after{
    content:"";
    margin-left: 5px;
    display: inline-block;
    width: 1.4rem;
    height: 2.1rem;
    background: url(../img/header/header-title-after-sp.png);
    background-repeat: no-repeat;
    background-size: contain;
  }
}


@media screen and (max-width: 480px) {
  header{
    height: 50px;
  }
  header #logo{
    display: none;
  }
  header p{
    font-size: 5vw;
    font-weight: 500;
    letter-spacing: normal;
  }
  header p::before{
    content:"";
    margin-right: 5px;
    display: inline-block;
    width: 1.4rem;
    height: 2.1rem;
    background: url(../img/header/header-title-before-sp.png);
    background-repeat: no-repeat;
    background-size: contain;
  }
  header p::after{
    content:"";
    margin-left: 5px;
    display: inline-block;
    width: 1.4rem;
    height: 2.1rem;
    background: url(../img/header/header-title-after-sp.png);
    background-repeat: no-repeat;
    background-size: contain;
  }
}



/*---------------------------------

  1.main

---------------------------------*/
main{
  padding-bottom: 30px;
}



/*---------------------------------

  1.1 ファーストビュー

---------------------------------*/
#first-view{
  background: url(../img/first-view/first-view-bg@2x.webp);
  background-size: 100vw;
  background-position: center;
  height: 43vw;
  /*max-height: 700px;*/
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px;
  position: relative;
}
#first-view #sp-logo{
  display: none;
}
#first-view .content{
  text-align: center;
  margin-left: 23vw;
  opacity: 0;
}
#first-view .catch-copy{
  margin-bottom: 60px;
}
#first-view .caption{
  position: relative;
  display: inline-block;
  padding: 0 13rem;
  color:white;
  font-size: 4.5rem;
  font-weight: 300;
}
#first-view .caption:before, #first-view  .caption:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width:11.9rem;
  height: 1px;
  background-color: white;
}
#first-view .caption:before {
  left:0;
}
#first-view .caption:after {
  right: 0;
}
#first-view .title {
  position: relative;
  padding: 1.5rem 0;
  font-size: 11.3rem;
  font-weight: 500;
  color:#fdff2f;
  letter-spacing: 0.2em;
}
#first-view .title:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 17.54px;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #fdff2f, #fdff2f 2px, transparent 2px, transparent 7px);
  background-image: repeating-linear-gradient(-45deg, #fdff2f, #fdff2f 2px, transparent 2px, transparent 7px);
  background-size: 10px 10px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
#first-view .content-main{
  border:1px solid white;
  background: rgba(0,0,0,0.4);
  color:white;
  font-family: serif;
  padding: 20px;
  margin: 20px 0;
  opacity: 0;
}
#first-view .content-main .sub-title{
  font-weight: 400;
  padding-bottom:20px;
  letter-spacing: 7px;
  font-size: 5rem;
}
#first-view .content-main .sub-title .under-line{
  border-bottom: 1px solid white;
  padding-bottom: 15px;
}
#first-view .content-main .sub-title strong{
  /*padding-top: .4em;
  background-position: top left -2px;
  background-repeat: repeat-x;
  background-size: 1.15em .2em;
  background-image: radial-gradient(.1em .1em at center center,#fdff2f,#fdff2f 100%,transparent);
  background: -moz-radial-gradient(.1em .1em at center center,#fdff2f,#fdff2f 100%,transparent);
  background: -webkit-radial-gradient(.1em .1em at center center,#fdff2f,#fdff2f 100%,transparent);
  */
  color:#fdff2f;
  background: none;
}
#first-view .content-main .sub-title strong span {
position: relative;
padding-top: 0.4em;
}

#first-view .content-main .sub-title strong span::before {
position: absolute;
content: "";
width: 0.2em;
height: 0.2em;
border-radius: 50%;
background-color: #fdff2f;
top: 0;
left: 45%;
transform: translate(-45%, 0);
}
#first-view .content-main .sub-content{
  font-size: 3rem;
  letter-spacing: 2px;
}
#first-view .next-button img{
  position: absolute;
  display: inline-block;
  bottom:-103px;
  left: 0;
  right:0;
  margin: auto;
  z-index: 9999;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
}
#first-view .next-button-sp{
  display: none;
}


@media screen and (max-width: 768px) {
  #first-view{
    background: url(../img/first-view/first-view-bg-sp@2x.webp);
    background-size: 100vw;
    height: 164vw;
    justify-content: flex-end;
    position: relative;
    padding-bottom: 30px;
  }
  #first-view #sp-logo{
    display: block;
    position: absolute;
    width: 30vw;
    left: 6vw;
    top: 6vw;
  }
}


@media screen and (max-width: 480px) {
  #first-view{
    background: url(../img/first-view/first-view-bg-sp.webp);
    background-size: 100vw;
    height: 165vw;
    justify-content: flex-end;
    position: relative;
    padding-bottom: 30px;
  }
  #first-view #sp-logo{
    display: block;
    position: absolute;
  }
  #first-view .catch-copy{
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    width: 100%;
    margin: 0 0 20px;
  }
  #first-view .content{
    text-align: center;
    width: 100%;
    margin: 0;
  }
  #first-view .caption{
    position: relative;
    padding: 0;
    color:white;
    font-size: 26px;
    font-weight: 500;
    margin-top: 20px;
  }
  #first-view .caption::before {
    content: '';
    position: absolute;
    top: -40px;
    left: 0;
    right: 0;
    width: 2px;
    height: 28px;
    margin: auto;
    background-color: white;
  }
  #first-view .caption::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -180px;
    width: 2px;
    height: 28px;
    margin: auto;
    background-color: white;
  }
  #first-view .title {
    position: relative;
    padding: 15px 0 0 10px;
    font-size: 60px;
    font-weight: 400;
    color:#fdff2f;
    text-orientation: upright;
    letter-spacing: 0.1em;
  }
  #first-view .title:after {
    position: absolute;
    display:inline-block;
    top: 15px;
    left:2px;
    width:12px;
    height:95%;
    content: '';
    background-image: -webkit-repeating-linear-gradient(45deg, #fdff2f, #fdff2f 2px, transparent 2px, transparent 5px);
    background-image: repeating-linear-gradient(-135deg, #fdff2f, #fdff2f 2px, transparent 2px, transparent 5px);
    background-size: 7px 7px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  #first-view .content-main{
    border:2px solid white;
    background: rgba(0,0,0,0.6);
    color:white;
    font-family: serif;
    padding: 20px 10px;
  }
  #first-view .content-main .sub-title{
    font-weight: 400;
    padding-bottom:20px;
    letter-spacing: 6px;
    font-size: 5.5vw;
  }
  #first-view .content-main .sub-title .under-line{
    border-bottom: 1px solid white;
    padding-bottom: 12px;
  }
  #first-view .content-main .sub-title strong{
    background-size: 1.26em .2em;
  }
  #first-view .content-main .sub-content{
    font-size: 16px;
    letter-spacing: 2px;
  }
  #first-view .next-button{
    display: none;
  }
  #first-view .next-button-sp{
    display: block;
  }
  #first-view .next-button-sp img{
    position: absolute;
    display: inline-block;
    bottom:-38px;
    left: 0;
    right:0;
    margin: auto;
    z-index: 9999;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
  }
}



/*---------------------------------

  特殊・背景調整用 wrap

---------------------------------*/
.wrap{
  background:url(../img/answer/answer-bg-left.png) bottom -160px left -150px,
url(../img/answer/answer-bg-right.png) bottom -170px right -100px;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 100;
}


@media screen and (max-width: 768px) {
  .wrap{
    background:url(../img/answer/answer-bg-left.png) bottom -160px left -250px,
url(../img/answer/answer-bg-right.png) bottom -170px right -200px;
    background-repeat: no-repeat;
    background-size: contain;
  }
}


@media screen and (max-width: 480px) {
  .wrap{
    background: url(../img/answer/answer-bg-sp-left.png) bottom -10px left 0,
url(../img/answer/answer-bg-sp-right.png) bottom -10px right -50px;
    background-repeat: no-repeat;
    background-size: auto;
  }
}



/*---------------------------------

  Trouble 投資に関する悩み

---------------------------------*/
#trouble{
  background: #f8f8f8;
}
#trouble .inner{
  background: url(../img/trouble/trouble-bg-left.png) top 0 left 0,
url(../img/trouble/trouble-bg-right.png) top 0 right 0;
  background-repeat: no-repeat;
  background-size: contain;
  padding-top: 120px;
  padding-bottom: 20px;
  text-align: center;
  position: relative;
  z-index: 200;
}
#trouble .inner::after{
  content: '';
  display: block;
  position: absolute;
  left:0;
  bottom: -140px;
  border-top: 80px solid #f8f8f8;
  border-left: 50vw solid transparent;
  border-right: 50vw solid transparent;
  border-bottom: 60px solid transparent;
  z-index: 300;
}
#trouble h2{
}
#trouble h2 .title{
  font-size: 40px;
  font-weight: 400;
  color:#373737;
  letter-spacing: 0.08em;
}
#trouble .under-line{
  border-bottom: 3px solid #e50315;
}
#trouble .caption{
  font-size: 16px;
  display: block;
  font-weight: 300;
  padding: 20px;
}
#trouble ul{
  text-align: left;
  width: 100%;
  max-width: 1000px;
  margin: 10px auto;
  list-style-type: none;
}
#trouble ul li{
  margin-left: 1em;
  padding: 5px;
  font-size: 25px;
  letter-spacing: 0.2em;
  text-align: justify;
}
#trouble ul li::before{
  content:"□";
  padding-right: 0.75em;
  margin-left: -2em;
}
#trouble ul li:last-child{
  position: relative;
}
#trouble ul li:last-child::after{
  content:url(../img/trouble/trouble-object.png);
  position: absolute;
  right:-10px;
  bottom:0;
  display:inline-block;
}


@media screen and (max-width: 768px) {
  #trouble ul li:last-child::after{
    display: none;
  }
}


@media screen and (max-width: 480px) {
  #trouble{
    background: #f8f8f8;
  }
  #trouble .inner{
    background: url(../img/trouble/trouble-bg-left-sp.png) top 0 left 0,
                url(../img/trouble/trouble-bg-right-sp.png) top 0 right 0;
    background-repeat: no-repeat;
    background-size: auto;
    padding-top: 50px;
    padding-bottom: 20px;
    text-align: center;
    position: relative;
    z-index: 200;
  }
  #trouble .inner::after{
    content: '';
    display: block;
    position: absolute;
    left:0;
    bottom: -110px;
    border-top: 50px solid #f8f8f8;
    border-left: 50vw solid transparent;
    border-right: 50vw solid transparent;
    border-bottom: 60px solid transparent;
    z-index: 300;
  }
  #trouble h2 .title{
    font-size: 30px;
    padding: 15px 0 0;
    font-weight: 400;
  }
  #trouble .under-line{
    padding-bottom: 10px;
  }
  #trouble h2{
    position: relative;
  }
  #trouble h2::before{
    content:url(../img/trouble/trouble-object-sp-left.png);
    display:inline-block;
    position: absolute;
    left: 45px;
    bottom:10px;
  }
  #trouble h2::after{
    content:url(../img/trouble/trouble-object-sp-right.png);
    display:inline-block;
    position: absolute;
    right: 10px;
    bottom:10px;
  }
  #trouble .caption{
    font-size: 13px;
  }
  #trouble ul{
    text-align: left;
    width: 100%;
    max-width: 600px;
    margin: 10px auto;
    padding: 0 2em;
    list-style-type: none;
  }
  #trouble ul li{
    margin-left: 1em;
    padding: 5px;
    font-size: 17px;
    letter-spacing: 1px;
  }
  #trouble ul li::before{
    content:"□";
    padding-right: 1em;
    margin-left: -2em;
  }
}



/*---------------------------------

  Answer　投資に関する悩みを解消

---------------------------------*/
#answer{
  text-align: center;
  background: url(../img/answer/answer-circle01.png) no-repeat top 80px left 8vw, url(../img/answer/answer-circle02.png) no-repeat top 80px right 8vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  letter-spacing: 3px;
  padding: 180px 10px 100px;
  height: auto;
}
#answer .caption{
  font-size: 30px;
  font-weight: 300;
  position: relative;
}
#answer .caption span{
  border-bottom: 5px double #e50315;
}
#answer .title{
  color:#e50315;
  font-size: 5rem;
  padding: 30px 20px 20px;
  font-weight: 500;
}


@media screen and (max-width: 768px) {
  #answer{
    background: url(../img/answer/answer-circle01.png) no-repeat top 50px left -60px, url(../img/answer/answer-circle02.png) no-repeat top 70px right -50px;
  }
}


@media screen and (max-width: 480px) {
  #answer{
    position: relative;
    text-align: center;
    background: url(../img/answer/answer-circle01-sp.png) no-repeat top 25px left -15px, url(../img/answer/answer-circle02-sp.png) no-repeat top 25px right -15px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    letter-spacing: 3px;
    padding: 50px 10px 35px;
    position: relative;
  }
  #answer .caption{
    font-size: 18px;
    padding-top: 30px;
  }
  #answer .caption span{
    border-bottom: 3px double #e50315;
  }
  #answer .title{
    color:#e50315;
    font-size: 22px;
    padding: 15px 0 0;
    line-height: 1.8em;
  }
  #answer .caption{
    font-size: 16px;
    position: relative;
    font-weight: 400;
  }
  #answer .caption::before{
    display: none;
  }
  #answer .caption::after{
    display: none;
  }
}



/*---------------------------------

  後悔しないスクール選び

---------------------------------*/
#choosing-school{
  background: url(../img/choosing-school/choosing-school-bg.png);
  background-size: cover;
}
#choosing-school h2{
  background: #e50315;
  background: linear-gradient(180deg, #e50315 0%, #e50315 50%, #db0315 50%, #db0315 100%);
  background: -webkit-linear-gradient(270deg, #e50315 0%, #e50315 50%, #db0315 50%, #db0315 100%);
  background: -moz-linear-gradient(270deg, #e50315 0%, #e50315 50%, #db0315 50%, #db0315 100%);
  padding: 16px;
  color: white;
  letter-spacing: 3px;
  text-align:center;
  font-size: 5rem;
  position: relative;
  font-weight: 500;
}
#choosing-school h2::after{
  content:"";
  display: inline-block;
  position: absolute;
  margin-left: 20px;
  bottom:0;
  width: 17.3rem;
  height: 9.5rem;
  background: url(../img/choosing-school/choosing-school-object.png);
  background-repeat: no-repeat;
  background-size: contain;
}
#choosing-school .content{
  width: 100%;
  max-width: 1000px;
  margin: 20px auto;
  padding: 10px;
}
#choosing-school .content .content-header{
  padding: 20px 0;
}
#choosing-school .content .content-header .flex .left{
  margin-right: 30px;
}
#choosing-school .content .content-header h3{
  width: 100%;
  max-width: 700px;
  font-size: 30px;
  font-weight: 400;
  letter-spacing: 1px;
}
#choosing-school .content .content-header h3 strong{
  font-size: 40px;
  font-weight: 500;
}
#choosing-school .content .content-content .flex{
  flex-wrap: wrap;
}
#choosing-school .content .content-content .flex .left{
  width: 60%;
  padding: 0 10px;
}
#choosing-school .content .content-content .flex .right{
  width: 40%;
  padding: 0 10px;
}
#choosing-school .content .content-content .flex .right figure img{
  margin: auto;
}
#choosing-school .content .content-content .flex p{
  font-size: 16px;
  padding: 10px;
  line-height: 1.7em;
  text-align: justify;
  word-break: break-all;
}
#choosing-school .content .content-content .flex p strong{
  font-size: 1em;
}


@media screen and (max-width: 768px) {

  #choosing-school .content .content-header{
    padding: 20px 0;
  }
  #choosing-school .content .content-header .flex .left{
    margin-right: 10px;
    width: 129px;
  }
    #choosing-school .content .content-header h3 {
      font-size: 18px;
    }
  #choosing-school .content .content-header h3 strong{
    font-size: 25px;
  }
  #choosing-school .content .content-content .flex .left{
    width: 100%;
    padding: 10px 0;
  }
  #choosing-school .content .content-content .flex .right{
    width: 100%;
    padding: 10px 0;
  }
}


@media screen and (max-width: 480px) {
  #choosing-school h2{
    padding: 10px 10px 10px 20px;
    font-size: 30px;
    line-height: 1.2em;
    text-align:left;
    position: relative;
  }
  #choosing-school h2::after{
    content:"";
    display: inline-block;
    position: absolute;
    bottom:0;
    left:200px;
    width: 147px;
    height: 75px;
    background: url(../img/choosing-school/choosing-school-object-sp.png);
    background-repeat: no-repeat;
    background-size: contain;
  }
  #choosing-school .content .content-header{
    padding: 20px 0;
    text-align: justify;
    word-break: break-all;
  }
  #choosing-school .content .content-header .flex .left{
    margin-right: 10px;
    width: 129px;
  }
    #choosing-school .content .content-header h3 {
      font-size: 18px;
    }
  #choosing-school .content .content-header h3 strong{
    font-size: 25px;
  }
  #choosing-school .content .content-content .flex .left{
    width: 100%;
    padding: 10px 0;
  }
  #choosing-school .content .content-content .flex .right{
    width: 100%;
    padding: 10px 0;
  }
}


@media screen and (max-width: 360px) {
  #choosing-school h2::after{
    display: none;
  }
}



/*---------------------------------

  初心者が安定した投資家になる

---------------------------------*/
#beginer{
  background: #eeecec;
  background: linear-gradient(to top, #eeecec 10% , #fff 100%);
  background: -webkit-linear-gradient(top, #eeecec 10% , #fff 100%);
  background: -moz-linear-gradient(top, #eeecec 10% , #fff 100%);
}
#beginer h2{
  text-align: center;
  background: url(../img/beginer/beginer-header-bg.jpg);
  background-size: cover;
  color:white;
  letter-spacing: 0.12em;
  font-size: 5rem;
  font-weight: 500;
  height: 400px;
  line-height: 360px;
}
#beginer .content{
  position: relative;
  top:-150px;
  width: 85%;
  max-width: 1000px;
  margin: 0 auto;
  background: url(../img/beginer/biginer-content-bg.png);
  background-size: cover;
  padding: 20px 20px 70px;
  box-shadow: 5px 5px 5px #eee;
  list-style-type: none;
}
#beginer .content .content-header{
  padding: 40px 0 10px;
}
#beginer .content .content-header .flex .left{
  width: 60px;
  margin-right: 20px;
}
#beginer .content .content-header .flex .left img{
  width: 49px;
  vertical-align: bottom;
}
#beginer .content .content-header h3{
  font-size: 30px;
  font-weight: 400;
  letter-spacing: 0.06em;
}
#beginer .content .content-header h3 strong{
  font-size: 40px;
  font-weight: 500;
}
#beginer .content p{
  font-size: 16px;
  line-height: 1.7em;
  text-align: justify;
  word-break: break-all;
}


@media screen and (max-width: 768px) {

}


@media screen and (max-width: 480px) {
  #beginer{
    padding-bottom: 40px;
  }
  #beginer h2{
    background: url(../img/beginer/beginer-header-bg-sp.png);
    background-size: cover;
    letter-spacing: 0.12em;
    font-size: 30px;
    height: auto;
    padding: 50px 0;
    line-height: 1.1em;
  }
  #beginer .content{
    top:-30px;
    width: 90%;
    padding: 20px;
    box-shadow: 5px 5px 5px #eee;
  }
  #beginer .content .content-header{
    padding: 50px 0 20px;
  }
  #beginer .content .content-header .flex .left{
    width: 100px;
    margin-right: 10px;
  }
    #beginer .content .content-header .flex .left img{
      width: 31px;
    }
  #beginer .content .content-header h3{
    font-size: 18px;
    letter-spacing: .9px;
  }
  #beginer .content .content-header h3 strong{
    font-size: 25px;
  }
}



/*---------------------------------

  こんな方におすすめです！

---------------------------------*/
#recommend h2{
  background: #e50315;
  background: linear-gradient(180deg, #e50315 0%, #e50315 50%, #db0315 50%, #db0315 100%);
  background: -webkit-linear-gradient(270deg, #e50315 0%, #e50315 50%, #db0315 50%, #db0315 100%);
  background: -moz-linear-gradient(270deg, #e50315 0%, #e50315 50%, #db0315 50%, #db0315 100%);
  padding: 16px;
  color: white;
  letter-spacing: 3px;
  text-align:center;
  font-size: 5rem;
  position: relative;
  font-weight: 500;
}
#recommend h2::after{
  content:"";
  display: inline-block;
  position: absolute;
  bottom:0;
  width: 11.7rem;
  height: 8.2rem;
  margin-left: 10px;
  background: url(../img/recommend/recommend-object.png);
  background-repeat: no-repeat;
  background-size: contain;
}
#recommend .inner{
  padding: 77px 0;
  background: url(../img/recommend/recommend-bg@2x.jpg);
  background-size: cover;
  margin: 40px 0 111px;
}
#recommend .content{
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  background: white;
  padding: 20px;
}
#recommend .content p{
  font-size: 16px;
  line-height: 1.7em;
  padding: 10px;
  text-align: justify;
  word-break: break-all;
}
#recommend .content .flex{
  flex-wrap: wrap;
}
#recommend .content .flex .box{
  width: calc(50% - 20px);
  border:2px solid #737373;
  margin: 10px;
  padding: 12px;
  border-radius: 10px;
}
#recommend .content .flex .box .flex{
  flex-wrap: nowrap;
}
#recommend .content .flex .box img{
  float:left;
  padding-right: 7px;
}
#recommend .content .flex .box:last-child{
  width: 100%;
}


@media screen and (max-width: 768px) {

}


@media screen and (max-width: 480px) {
  #recommend h2{
    padding: 10px 10px 10px 30px;
    text-align:left;
    font-size: 30px;
    line-height: 1.2em;
  }
  #recommend h2::after{
    content:"";
    display:inline-block;
    margin-left: 0px;
    position: absolute;
    bottom:0;
    width: 10.3rem;
    height: 7.3rem;
    background: url(../img/recommend/recommend-object-sp.png);
    background-repeat: no-repeat;
    background-size: contain;
  }
  #recommend .inner{
    background: url(../img/recommend/recommend-bg-sp@2x.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    margin: 0;
    padding: 30px 0;
  }
  #recommend .content{
    padding: 10px;
    box-shadow: 0 0 0 ;
  }
  #recommend p{
    font-size: 15px;
    letter-spacing: 0.13em;
    text-align: justify;
    word-break: break-all;
  }
  #recommend .content .flex .box{
    width: 100%;
    border:2px solid #737373;
    margin: 5px;
    padding: 10px;
    border-radius: 10px;
  }
  #recommend .content .flex .box img{
    width: 35px;
    padding: 10px 3px 0;
  }
  #recommend .content .others p{
    line-height: 1.5em;
    padding: 5px 10px;
    font-size: 15px;
  }
}


@media screen and (max-width: 360px) {
  #recommend h2::after{
    display: none;
  }
}



/*---------------------------------

  もしあなたが本気で学べば

---------------------------------*/
#return{
  background: url(../img/return/return-bg@2x.png) left;
  background-repeat: no-repeat;
  padding: 100px 0 150px;
  background-size: 71%;
}
#return .content-header{
  width: 80%;
  max-width: 800px;
  margin-left: auto;
  margin-right: 3vw;
}
#return .content-header .caption{
  font-size: 4.5rem;
  font-weight: 500;
}
#return .content-header .caption::before{
  content:"";
  display: inline-block;
  margin-right: 3px;
  background: url(../img/return/return-span-left.png);
  width: 2.5rem;
  height: 4.5rem;
  background-repeat: no-repeat;
  background-size: contain;
}
#return .content-header .caption::after{
  content:"";
  display: inline-block;
  margin-left: 3px;
  background: url(../img/return/return-span-right.png);
  width: 2.5rem;
  height: 4.5rem;
  background-repeat: no-repeat;
  background-size: contain;
}
#return .content-header h2{
  color:#e50315;
  font-size: 9rem;
  letter-spacing: 5px;
  margin-bottom: 20px;
}
#return .content-header .stripe{
  position: relative;
  padding: 10px 0;
  margin: 0 10px
}
#return .content-header .stripe::after{
  position: absolute;
  bottom: -7px;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 17.54px;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #e50315, #e50315 3px, transparent 3px, transparent 7px);
  background-image: repeating-linear-gradient(-45deg, #e50315, #e50315 3px, transparent 3px, transparent 7px);
  background-size: 10px 10px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
#return .content{
  width: 80%;
  max-width: 800px;
  margin-left: auto;
  margin-right: 3vw;
}
#return .content p{
  font-size: 16px;
  padding: 20px 20px 0;
  text-align: justify;
  word-break: break-all;
}


@media screen and (max-width: 1300px) {
  #return{
    background: url(../img/return/return-bg@2x.png);
    background-position: -7vw center;
    background-repeat: no-repeat;
    background-size: 71%;
  }
  
  #return .content-header{
    width: 80%;
    max-width: 775px;
    margin-left: auto;
    margin-right: 3vw;
  }
  
  #return .content{
    width: 80%;
    max-width: 775px;
    margin-left: auto;
    margin-right: 3vw;
  }
}

@media screen and (max-width: 1100px) {
  #return{
    background: url(../img/return/return-bg@2x.png);
    background-position: -7vw center;
    background-repeat: no-repeat;
    background-size: 65%;
  }
  
  #return .content-header{
    width: 80%;
    max-width: 750px;
    margin-left: auto;
    margin-right: 3vw;
  }
  
  #return .content{
    width: 80%;
    max-width: 750px;
    margin-left: auto;
    margin-right: 3vw;
  }
}


@media screen and (max-width: 1024px) {
  #return{
    background: url(../img/return/return-bg@2x.png);
    background-position: -7vw center;
    background-repeat: no-repeat;
    background-size: 65%;
  }
  
  #return .content-header{
    width: 80%;
    max-width: 600px;
    margin-left: auto;
    margin-right: 3vw;
  }
  
  #return .content{
    width: 80%;
    max-width: 600px;
    margin-left: auto;
    margin-right: 3vw;
  }
}


@media screen and (max-width: 768px) {
  #return{
    background: url(../img/return/return-bg@2x.png);
    background-repeat: no-repeat;
    background-position: -41vw;
    background-size: 128%;
  }
}


@media screen and (max-width: 480px) {
  #return{
    background: none;
    padding: 100px 0 75px;
  }
  #return .content-header{
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    text-align: center;
  }
  #return .content-header .caption{
    font-size: 30px;
    position: relative;
    display: inline-block;
  }
  #return .content-header .caption::before{
    content:"";
    display: inline-block;
    margin-right: 3px;
    position: absolute;
    left:-50px;
    bottom:0;
    width: 2.5rem;
    height: 7.1rem;
    background: url(../img/return/return-span-left-sp.png);
    background-repeat: no-repeat;
    background-size: contain;
  }
  #return .content-header .caption::after{
    content:"";
    display: inline-block;
    margin-left: 3px;
    position: absolute;
    right:-50px;
    bottom:0;
    width: 2.5rem;
    height: 7.1rem;
    background: url(../img/return/return-span-right-sp.png);
    background-repeat: no-repeat;
    background-size: contain;
  }
  #return .content-header h2{
    font-size: 10vw;
    margin-bottom: 20px;
    line-height: 75px;
  }
  #return .content-header .stripe::after{
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 100%;
    height: 14px;
    content: '';
    background-image: -webkit-repeating-linear-gradient(135deg, #e50315, #e50315 1.5px, transparent 1.5px, transparent 7px);
    background-image: repeating-linear-gradient(-45deg, #e50315, #e50315 1.5px, transparent 1.5px, transparent 7px);
    background-size: 10px 10px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
  #return .inner{
    background: url(../img/return/return-bg-sp@2x.png);
    background-size: cover;
    background-repeat: no-repeat;
    padding: 0;
  }
  #return .content{
    width: 70%;
    margin-left: auto;
    margin-right: 0;
  }
  #return .content p{
    padding: 20px 20px 0;
  }
}



/*---------------------------------

  スタートアップセミナー開催

---------------------------------*/
#seminar .inner{
  background: url(../img/seminar/seminar-bg.png);
  padding-top:50px;
  background-repeat: no-repeat;
}
#seminar .section-title{
  font-size: 50px;
  background: #e50315;
  background: linear-gradient(180deg, #e50315 0%, #e50315 50%, #db0315 50%, #db0315 100%);
  background: -webkit-linear-gradient(270deg, #e50315 0%, #e50315 50%, #db0315 50%, #db0315 100%);
  background: -moz-linear-gradient(270deg, #e50315 0%, #e50315 50%, #db0315 50%, #db0315 100%);
  padding: 5px;
  color: white;
  letter-spacing: 3px;
  text-align:center;
}
#seminar .section-title span{
  display: block;
  font-size: 16px;
  letter-spacing: 0.1em;
}
#seminar .content-01{
  width: 92%;
  max-width: 1000px;
  margin: 0 auto ;
  background: rgba(255,255,255,0.8);
  padding: 20px;
}
#seminar .content-01 h2{
  text-align: center;
  font-size: 30px;
  font-weight: 400;
  line-height: 2em;
}
#seminar .content-01 h2 strong{
  background: none;
  color:#e50315;
  border-bottom:5px double #e50315;
  font-weight:500;
}
#seminar p{
  font-size:16px;
  text-align: justify;
  word-break: break-all;
}
#seminar dl{
  font-size:16px;
}
#seminar .content-01 .box{
  width: 50%;
  padding: 20px 10px;
}
#seminar .day{
  padding: 10px 0;
  color:#e50315;
}
#seminar .day dt{
  float: left;
}
#seminar .day dd{
  margin-left: 50px;
}
#seminar .place{
  padding: 10px 0;
}
#seminar .place dt{
  float: left;
}
#seminar .place dd{
  margin-left: 50px;
}
#seminar .seminar-contents{
}
#seminar .seminar-contents dt{
  float: left;
  line-height: 2em;
}
#seminar .seminar-contents dd{
  margin-left: 100px;
}
#seminar .seminar-contents dd ul{
  margin-top: 0;
}
#seminar .seminar-contents dd li{
  line-height: 2em;
}
#seminar .content-01 .left .seminar-contents strong{
  background: none;
  font-weight: 500;
}
#seminar .content-01 .left p::before{
  content:"︙";
  display: block;
  width: 50px;
  margin: 10px auto;
  text-align: center;
}
#seminar .balloon{
  border: 2px solid black;
  background: white;
  padding: 20px;
  border-radius: 10px;
  position: relative;
}
#seminar .balloon:after, #seminar .balloon:before{
  top: 100%;
	left: 70%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
#seminar .balloon:after{
  border-color: rgba(255, 255, 255, 0);
	border-top-color: #fff;
	border-width: 31px;
	margin-left: -31px;
  margin-top:-1px;
}
#seminar .balloon:before{
  border-color: rgba(0, 0, 0, 0);
	border-top-color: #000;
	border-width: 33px;
	margin-left: -33px;
  content:url(../img/seminar/seminar-object.png);
  position: absolute;
  right:10px;
  bottom:20px;
  display:inline-block;
}
#seminar .balloon ul{
  padding-left: 20px;
}
#seminar .right{
  position: relative;
}


@media screen and (max-width: 768px) {
  #seminar .seminar-contents dt{
    float: inherit;
    line-height: 2em;
  }
  #seminar .seminar-contents dd{
    margin-left: 0;
  }
  #seminar .seminar-contents dd ul{
    margin-top: 0;
    padding-left: 20px;
  }
  #seminar .seminar-contents dd li{
    line-height: 2em;
  }
}


@media screen and (max-width: 480px) {
  #seminar .section-title{
    font-size: 28px;
    padding: 10px;
  }
  #seminar .inner{
    background: url(../img/seminar/seminar-bg-sp.png);
    background-size: contain;
    background-repeat: no-repeat;
    padding-top:30px;
  }
  #seminar .content-01{
    padding: 20px 10px;
  }
  #seminar .content-01 h2{
    font-size: 20px;
    letter-spacing: 0.06em;
  }
  #seminar .content-01 .flex{
      flex-wrap: wrap;
    }
  #seminar .content-01 .box{
    width: 100%;
    padding: 20px 5px 10px;
  }
  #seminar .content-01 .right{
    padding-bottom: 150px;
  }
  #seminar .seminar-contents dt{
    float: inherit;
    line-height: 2em;
  }
  #seminar .seminar-contents dd{
    margin-left: 0;
  }
  #seminar .seminar-contents dd ul{
    margin-top: 0;
    padding-left: 20px;
  }
  #seminar .seminar-contents dd li{
    line-height: 2em;
  }
  #seminar .right{
    position: relative;
  }
  #seminar .balloon:before{
    border-color: rgba(0, 0, 0, 0);
  	border-top-color: #000;
  	border-width: 33px;
  	margin-left: -33px;
    content:url(../img/seminar/seminar-object-sp.png);
    position: absolute;
    right:10px;
    bottom:20px;
    display:inline-block;
  }
}



/*---------------------------------

  Tuition fee　受講料金について

---------------------------------*/
#tuition-fee{
  background: url(../img/seminar/seminar-content-02-bg.png);
  background-size: cover;
  width: 90%;
  max-width: 960px;
  margin: 0 auto;
  padding: 20px;
  text-align: center;
  position: relative;
  top:-20px;
}
#tuition-fee h2{
  font-size: 40px;
  padding: 15px 0 10px;
  margin: 5px auto;
  letter-spacing: 0.08em;
}
#tuition-fee .under-line{
  border-bottom: 3px solid #e50315;
  padding-bottom: 5px;
}
#tuition-fee .caption{
  font-size: 16px;
  letter-spacing: 0.1em;
}
#tuition-fee p{
  font-size: 16px;
  text-align: justify;
  word-break: break-all;
  padding: 20px 0;
}


@media screen and (max-width: 768px) {

}


@media screen and (max-width: 480px) {
  #tuition-fee{
    background: url(../img/seminar/seminar-content-02-bg-sp.png);
    background-size: cover;
    box-shadow: 5px 5px 5px #eee;
  }
  #tuition-fee h2{
    font-size: 30px;
  }
  #tuition-fee .caption{
    letter-spacing: 0.1em;
    font-size: 14px;
  }
  #tuition-fee p{
    text-align: justify;
    word-break: break-all;
    padding: 20px 0;
  }
}
.notes{
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
.notes p{
  font-size: 16px;
  padding: 20px 30px;
  letter-spacing: 0.08em;
  text-align: justify;
  word-break: break-all;
}
.notes strong{
  background: none;
}



/*---------------------------------

  スタートアップセミナー詳細

---------------------------------*/
#startup-seminar{
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
#startup-seminar h3{
  text-align: center;
  position: relative;
  display: inline-block;
  padding: 0 55px;
  font-size: 3rem;
  width: 100%;
}
#startup-seminar h3::before,#startup-seminar h3::after{
  content: '';
  position: absolute;
  top: 45%;
  display: inline-block;
  width: 30rem;
  height: 10px;
  border-top: solid 2px #e50315;
  border-bottom: solid 5px #e50315;
}
#startup-seminar h3::before{
  left:0;
}
#startup-seminar h3::after{
  right:0;
}
#startup-seminar p{
  font-size: 16px;
}
#startup-seminar dl{
  font-size: 16px;
}
#startup-seminar .flex{
  padding: 40px 20px 120px;
}
#startup-seminar .flex .left{
  width: 45%;
  padding-right: 20px;
}
#startup-seminar .flex .right{
  width: 55%;
  padding-left: 20px;
}
#startup-seminar .day{
  color:#e50315;
  text-align:left;
}
#startup-seminar .day{
  padding: 10px 0;
  color:#e50315;
}
#startup-seminar .day dt{
  float: left;
}
#startup-seminar .day dd{
  margin-left: 50px;
}
#startup-seminar .place{
  padding: 10px 0;
}
#startup-seminar .place dt{
  float: left;
}
#startup-seminar .place dd{
  margin-left: 50px;
}
#startup-seminar .seminar-contents dt{
  float: left;
  line-height: 2em;
}
#startup-seminar .seminar-contents dd{
  margin-left: 100px;
}
#startup-seminar .seminar-contents dd ul{
  margin-top: 0;
}
#startup-seminar .seminar-contents dd li{
  line-height: 2em;
}
#startup-seminar .others::before{
  content:"︙";
  display: block;
  width: 50px;
  margin: 10px auto;
  text-align: center;
}
#startup-seminar .seminar-notes{
  padding: 20px;
  margin: 0 auto;
}
#startup-seminar .deadline{
  text-align: left;
}
#startup-seminar .deadline dt{
  float: left;
}
#startup-seminar .deadline dd{
  margin-left: 50px;
}
#startup-seminar .deadline strong{
  background: none;
}
#startup-seminar .googlemap{
  width: 100%;
  height: 100%;
}


@media screen and (max-width: 768px) {
  #startup-seminar .flex{
    padding: 20px 0 45px;
    flex-wrap: wrap;
  }
  #startup-seminar .flex .left{
    width: 92%;
    padding: 20px;
    margin: 0 auto;
  }
  #startup-seminar .flex .right{
    width: 100%;
    padding-left: 0;
  }
  
  #startup-seminar .seminar-contents dt{
    float: inherit;
  }
  #startup-seminar .seminar-contents dd{
    margin-left: 0;
  }
  #startup-seminar .seminar-contents dd ul{
    margin-top: 0;
    padding-left:20px;
  }
  
  #startup-seminar .googlemap{
    width: 100%;
    height: 500px;
  }
}


@media screen and (max-width: 480px) {
  #startup-seminar h3{
    font-size: 1.8rem;
    padding: 0 20px;
    font-weight: 400;
  }
  #startup-seminar h3::before,#startup-seminar h3::after{
    width: 4rem;
  }
  #startup-seminar .flex{
    padding: 20px 0 45px;
    flex-wrap: wrap;
  }
  #startup-seminar .flex .left{
    width: 92%;
    padding: 20px;
    margin: 0 auto;
  }
  #startup-seminar .flex .right{
    width: 100%;
    padding-left: 0;
  }
  #startup-seminar .seminar-contents dt{
    float: inherit;
  }
  #startup-seminar .seminar-contents dd{
    margin-left: 0;
  }
  #startup-seminar .seminar-contents dd ul{
    margin-top: 0;
    padding-left:20px;
  }
  #startup-seminar .others::before{
    content:"︙";
    display: block;
    width: 50px;
    margin: 10px auto;
    text-align: center;
  }
  #startup-seminar .seminar-notes{
    display: none;
  }
  #startup-seminar .sp-hr{
      display: none;
  }
  #startup-seminar .deadline{
    display: none
  }
  #startup-seminar .googlemap{
    width: 100%;
    height: 250px;
  }
}



/*---------------------------------

  FORM

---------------------------------*/
#form .flex{
  flex-wrap: wrap;
  margin-bottom: 50px;
}
#form .flex .left{
  width: 50%;
  background: #e50315;
  padding: 20px;
}
#form .flex .left h2{
  width: 100%;
  max-width: 460px;
  margin-left: auto;
  margin-right: 0;
  text-align: center;
  padding: 20px;
  color:white;
  font-size: 50px;
  font-weight: 400;
}
#form .flex .left form{
  width: 100%;
  max-width: 460px;
  margin-left: auto;
  margin-right: 0;
  padding-bottom: 40px;
  font-size: 16px;
}
#form .flex .left form div{
  padding-bottom: 20px;
}
#form .flex .left label{
  display: block;
  color:white;
  padding-bottom: 5px;
  letter-spacing: 0.08em;
}
#form .flex .left input{
  width: 95%;
  padding: 1px 6px;
  border:1px solid white;
  border-radius: 5px;
}
#form .flex .left select{
  width: 95%;
  min-height: 24px;
  padding: 4px 2px;
  border:1px solid white;
  border-radius: 5px;
  background: white;
}
#form .flex .left textarea{
  width: 95%;
  height: calc(1.3em*5);
  line-height: 1.3em;
  border:1px solid white;
  border-radius: 5px;
}
#form .flex .right{
  width: 50%;
  background: url(../img/tuition-fee/form-bg.jpg);
  background-size: cover;
  background-position: right;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.button-box{
  padding-bottom: 70px;
}


@media screen and (max-width: 768px) {

}


@media screen and (max-width: 480px) {
  #form{
    padding: 40px 0 0;
  }
  #form .flex{
    flex-wrap: wrap;
    flex-direction: column-reverse;
    margin-bottom: 30px;
  }
  #form .flex .left{
    width: 100%;
  }
  #form .flex .left h2{
    width: 100%;
    max-width: initial;
  }
  #form .flex .left form{
    width: 100%;
    max-width: initial;
    padding: 20px;
  }
  #form .flex .left input{
    width: 100%;
    padding-left: 10px;
  }
  #form .flex .left select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	  background-image: url(../img/form/select-icon.svg);
	  background-repeat: no-repeat;
	  padding: 7px 30px 7px 10px;
	  font-size: 93%;
	  line-height: 1.1em;
	  border-radius: 5px;
	  background-size: 12px 10px;
	  background-position: right 10px center;
	  background-color: white;
    width: 100%;
    border:1px solid white;
    border-radius: 5px;
  }
  #form .flex .left textarea{
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
  }
  #form .flex .right{
    width: 100%;
    height: 300px;
  }
  #form .flex .right img{
    width: 160px;
  }
  .button-box{
    padding-bottom: 30px;
  }
}



/*---------------------------------

  講師紹介

---------------------------------*/
#teachers{
  padding-top: 70px;
}
#teachers .inner{
  background: url(../img/teachers/teachers-bg-left.png) no-repeat top 0 left 0 , url(../img/teachers/teachers-bg-right.png) no-repeat bottom 0 right 0;
  padding: 20px 0;
}

#teachers h2{
  background: #e50315;
  background: linear-gradient(180deg, #e50315 0%, #e50315 50%, #db0315 50%, #db0315 100%);
  background: -webkit-linear-gradient(270deg, #e50315 0%, #e50315 50%, #db0315 50%, #db0315 100%);
  background: -moz-linear-gradient(270deg, #e50315 0%, #e50315 50%, #db0315 50%, #db0315 100%);
  padding: 30px;
  color: white;
  letter-spacing: 3px;
  text-align:center;
  font-size: 5rem;
  line-height: 50px;
  position: relative;
}
#teachers h2::after{
  content:"";
  display:inline-block;
  vertical-align:bottom;
  margin-left: 50px;
  position: absolute;
  bottom:0;
  width: 117px;
  height: 82px;
  background: url(../img/teachers/teachers-object.png);
  background-repeat: no-repeat;
  background-size: contain;
}
#teachers p{
  font-size: 16px;
}
#teachers .content{
  width: 100%;
  max-width: 1000px;
  border-top:18px solid #e50315;
  border-left:18px solid #e50315;
  border-right:18px solid #94020e;
  border-bottom:18px solid #94020e;
  position: relative;
}
#teachers .ihara-sensei {
  margin: 0 auto 30px;
}
#teachers .rakko-sensei{
  margin: 0 auto 80px;
}
#teachers .content .content-header{
  position: absolute;
  right:-18px;
  left:-18px;
}
#teachers .content .content-header{
  background-size: auto auto;
  background-color: rgba(0, 0, 0, 1);
  background: -webkit-repeating-linear-gradient(-45deg,rgba(0, 0, 0, 1), rgba(0, 0, 0, 1) 3px, rgba(51, 51, 51, 1) 3px, rgba(51, 51, 51, 1) 5px);
  background: -o-repeating-linear-gradient(-45deg,rgba(0, 0, 0, 1), rgba(0, 0, 0, 1) 3px, rgba(51, 51, 51, 1) 3px, rgba(51, 51, 51, 1) 5px);
  background-image: repeating-linear-gradient(-45deg, rgba(0, 0, 0, 1), rgba(0, 0, 0, 1) 3px, rgba(51, 51, 51, 1) 3px, rgba(51, 51, 51, 1) 5px );
  color:white;
}
#teachers .content .content-header .flex{
  align-items: center;
  height: 110px;
}
#teachers .content .content-header .left{
  width: 40%;
}
#teachers .content .content-header .left h3{
  font-size: 3rem;
  padding-left: 20px;
  letter-spacing: 0.06em;
  font-weight: 500;
}
#teachers .content .content-header .left h3 span{
  font-size: 2rem;
  letter-spacing: 0.06em;
  font-weight: 400;
}
#teachers .content .content-header .right{
  width: 60%;
}
#teachers .content .content-header .right p{
  line-height: 1.4;
  text-align: justify;
  word-break: break-all;
}
#teachers .content-main{
  padding-top: 110px;
  padding-bottom: 20px;
  background: white;
}
#teachers .content img{
  width: 205px;
  float: left;
  margin-left: 20px;
  margin-top: 20px;
  margin-right: 24px;
  padding-bottom: 10px;
}
#teachers .content .sp-content{
  display: none;
}
#teachers .content p{
  padding: 5px 20px;
  letter-spacing: 0.08em;
  line-height: 1.7em;
  text-align: justify;
  word-break: break-all;
}
#teachers .content .common-content{
  padding-top: 20px;
  text-align: justify;
  word-break: break-all;
}
#teachers .cp_box input {
	display: none;
}


@media screen and (max-width: 768px) {
  #teachers .content .content-header .flex{
    height: auto;
  }
}


@media screen and (max-width: 480px) {
  #teachers{
    padding-top: 0;
  }
  #teachers .inner{
    background: url(../img/teachers/teachers-bg-left-sp.png) no-repeat top 0 left 0 , url(../img/teachers/teachers-bg-right-sp.png) no-repeat bottom 0 right 0;
    padding: 30px 0;
  }
  #teachers h2{
    padding: 20px 20px 20px 80px;
    text-align:left;
    position: relative;
    font-size: 30px;
  }
  #teachers h2::after{
    content:"";
    display:inline-block;
    width: 103px;
    height: 73px;
    background: url(../img/teachers/teachers-object-sp.png);
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align:bottom;
    margin-left: 20px;
    position: absolute;
    bottom:10px;
  }
  #teachers .content-01{
    margin: 0 auto 30px;
  }
  #teachers .content-02{
    margin: 0 auto 50px;
  }
  #teachers .content .content-header .flex{
    flex-wrap: wrap;
    text-align: center;
  }
  #teachers .content .content-header .left{
    width: 100%;
    padding: 0;
  }
  #teachers .content .content-header .left h3{
    font-size: 30px;
    padding-left: 0;
  }
  #teachers .content .content-header .left h3 span{
    font-size: 20px;
    letter-spacing: 0.06em;
    font-weight: 400;
  }
  #teachers .content .content-header .right{
    display: none;
  }
  #teachers .content-main{
    padding-bottom: 0;
  }
  #teachers .content img{
    width: 161px;
    float: left;
    margin-right: 15px;
    padding-bottom: 0px;
    margin-left: 15px;
  }
  #teachers .content .sp-content{
    display: block;
    padding-top: 30px;
    letter-spacing: 2px;
  }
  #teachers .content p{
    padding: 5px 15px;
    letter-spacing: 0.08em;
  }
  #teachers .content .common-content{
    padding-top: 10px;
  }
  #teachers .cp_box *, #teachers .cp_box *:before, #teachers .cp_box *:after {
  	-webkit-box-sizing: border-box;
  	box-sizing: border-box;
  }
  #teachers .cp_box {
    clear: both;
  	position: relative;
  }
  #teachers .cp_box label {
  	position: absolute;
  	z-index: 1;
  	bottom: 0;
  	width: 100%;
  	height: 80px;
  	cursor: pointer;
  	text-align: center;
    background: white;
  }
  #teachers .cp_box input:checked + label {
  	background: inherit;
  }
  #teachers .cp_box label:after {
  	line-height: 2.5rem;
  	position: absolute;
  	z-index: 2;
  	bottom: 20px;
  	left: 50%;
  	width: 130px;
    padding: 10px;
  	content: 'もっと読む''▼';
  	transform: translate(-50%, 0);
  	letter-spacing: 0.05em;
  	color: #ffffff;
  	background: black;
  }
  #teachers .cp_box input {
  	display: none;
  }
  #teachers .cp_box .cp_container {
  	overflow: hidden;
  	height: 250px;
  	transition: all 0.5s;
  }
  #teachers .cp_box input:checked + label {
  	/* display: none ; 閉じるボタンを消す場合解放 */
  }
  #teachers .cp_box input:checked + label:after {
  	font-family: FontAwesome;
  	content: '閉じる''▲';
  }
  #teachers .cp_box input:checked ~ .cp_container {
  	height: auto;
  	padding-bottom: 80px;
  	transition: all 0.5s;
  }
}


@media screen and (max-width: 360px) {
  #teachers h2::after{
    display: none;
  }
}



/*---------------------------------

  Thought 福岡FXスクールの想い

---------------------------------*/
#thought{
  text-align: center;
  padding: 60px 20px 80px;
  background: url(../img/thought/nine-bg@2x.jpg);
  background-size: cover;
  background-position: right;
}
#thought h2{
  font-size: 40px;
  padding: 15px 0 10px;
  margin: 5px auto;
  letter-spacing: 0.08em;
}
#thought .under-line{
  border-bottom: 3px solid #e50315;
  padding-bottom: 5px;
}
#thought .caption{
  font-size: 16px;
  letter-spacing: 0.1em;
  padding: 20px;
  display: inline-block;
  font-weight: 400;
}
#thought .content-01{
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
#thought p{
  font-size: 16px;
  text-align: left;
  padding: 20px 0;
  text-align: justify;
  word-break: break-all;
}


@media screen and (max-width: 768px) {

}


@media screen and (max-width: 480px) {
  #thought{
    text-align: center;
    padding: 20px 20px 80px;
    background: url(../img/thought/thought-bg-sp.png);
    background-repeat: no-repeat;
    background-size: cover;
  }
  #thought h2{
    font-size: 30px;
  }
}



/*---------------------------------

  UserVoice 生徒様の声

---------------------------------*/
#uservoice{
  text-align: center;
  padding: 80px 0;
}
#uservoice .pc{
  display: block;
}
#uservoice .sp{
  display: none;
}
#uservoice h2{
  font-size: 40px;
  padding: 15px 0 10px;
  margin: 5px auto;
  letter-spacing: 0.08em;
}
#uservoice p{
  font-size: 16px;
}
#uservoice .under-line{
  border-bottom: 3px solid #e50315;
  padding-bottom: 5px;
}
#uservoice .caption{
  font-size: 16px;
  letter-spacing: 0.1em;
  padding: 20px;
  display: inline-block;
  font-weight: 400;
}
#uservoice .content{
  text-align: left;
  width: 100%;
  max-width: 1000px;
  margin: 30px auto;
}
#uservoice .content h3{
  font-size: 29px;
  border-bottom: 3px solid #e50315;
  padding: 10px 0 15px;
  margin: 5px auto;
  letter-spacing: 0.08em;
  font-weight: 500;
}
#uservoice .content figcaption{
letter-spacing: 0.1em;
}
#uservoice .content p{
  letter-spacing: 0.1em;
  line-height: 1.7em;
  text-align: justify;
  word-break: break-all;
}
#uservoice .content .flex{
  padding: 20px 0;
}
#uservoice .content .left{
  width: 30%;
}
#uservoice .content .right{
  width: 70%;
}
#uservoice .content-01::before{
  content:url(../img/uservoice/user-voice-01.png);
  display: block;
}
#uservoice .content-02::before{
  content:url(../img/uservoice/user-voice-02.png);
  display: block;
}
#uservoice .content-03::before{
  content:url(../img/uservoice/user-voice-03.png);
  display: block;
}
#uservoice .content-04::before{
  content:url(../img/uservoice/user-voice-04.png);
  display: block;
}
#uservoice .cp_box input {
  display: none;
}


@media screen and (max-width: 768px) {

}


@media screen and (max-width: 480px) {
  #uservoice{
    text-align: center;
    padding: 0 20px;
  }
  #uservoice h2{
    font-size: 30px;
  }
  #uservoice .under-line{
    padding-bottom: 10px;
  }
  #uservoice .caption{
    padding: 15px 0 50px;
  }
  #uservoice .pc{
    display: none;
  }
  #uservoice .sp{
    display: block;
  }
  #uservoice .content{
    position: relative;
    margin:50px auto;
  }
  #uservoice .content h3{
    font-size: 25px;
    letter-spacing: 0.04em;
    text-align: justify;
  }
  #uservoice .content .left{
    position: relative;
  }
  #uservoice .content figcaption{
    font-size: 16px;
    position: absolute;
    bottom:30px;
    left:25px;
    color:white;
  }
  #uservoice .content .flex{
    flex-wrap: wrap;
  }
  #uservoice .content .left{
    width: 100%;
  }
  #uservoice .content .right{
    width: 100%;
  }
  #uservoice .content-01::before{
    content:url(../img/uservoice/user-voice-01-sp.png);
    position: absolute;
    left:-20px;
    top:-50px;
  }
  #uservoice .content-02::before{
    content:url(../img/uservoice/user-voice-02-sp.png);
    position: absolute;
    left:-20px;
    top:-50px;
  }
  #uservoice .content-03::before{
    content:url(../img/uservoice/user-voice-03-sp.png);
    position: absolute;
    left:-20px;
    top:-50px;
  }
  #uservoice .content-04::before{
    content:url(../img/uservoice/user-voice-04-sp.png);
    position: absolute;
    left:-20px;
    top:-50px;
  }
  #uservoice .cp_box *, #uservoice .cp_box *:before, #uservoice .cp_box *:after {
  	-webkit-box-sizing: border-box;
  	box-sizing: border-box;
  }
  #uservoice .cp_box {
    clear: both;
  	position: relative;
  }
  #uservoice .cp_box label {
  	position: absolute;
  	z-index: 1;
  	bottom: -1px;
  	width: 100%;
  	height: 80px;
  	cursor: pointer;
  	text-align: center;
  background: white;
  }
  #uservoice .cp_box input:checked + label {
  	background: inherit;
  }
  #uservoice .cp_box label:after {
  	line-height: 2.5rem;
  	position: absolute;
  	z-index: 2;
  	bottom: 20px;
  	left: 50%;
  	width: 130px;
    padding: 10px;
  	content: 'もっと読む''▼';
  	transform: translate(-50%, 0);
  	letter-spacing: 0.05em;
  	color: #ffffff;
  	background: black;
  }
  #uservoice .cp_box input {
  	display: none;
  }
  #uservoice .cp_box .cp_container {
  	overflow: hidden;
  	height: 300px;
  	transition: all 0.5s;
  }
  #uservoice .cp_box input:checked + label {
  	/* display: none ; 閉じるボタンを消す場合解放 */
  }
  #uservoice .cp_box input:checked + label:after {
  	content: '閉じる''▲';
  }
  #uservoice .cp_box input:checked ~ .cp_container {
  	height: auto;
  	padding-bottom: 80px;
  	transition: all 0.5s;
  }
}



/*---------------------------------

  Q&A よくある質問

---------------------------------*/
#q-and-a{
  text-align: center;
  padding: 20px;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
#q-and-a h2{
  font-size: 40px;
  padding: 15px 0 10px;
  margin: 5px auto;
  letter-spacing: 0.08em;
}
#q-and-a p{
  font-size: 16px;
}
#q-and-a dl{
  font-size: 16px;
}
#q-and-a .under-line{
  border-bottom: 3px solid #e50315;
  padding-bottom: 5px;
}
#q-and-a .caption{
  font-size: 16px;
  letter-spacing: 0.1em;
  padding: 20px 0 50px;
  display: inline-block;
  font-weight: 400;
}
#q-and-a .content{
  text-align: left;
}
#q-and-a .content dt{
  font-size: 25px;
  padding: 25px;
  background: #e50315;
  color:white;
  width: 100%;
  padding-left:2.5em;
  text-indent:-2.5em;
  text-align: justify;
  word-break: break-all;
}
#q-and-a .content dt:first-child{
  margin-left: 0;
}
#q-and-a .qa dt:first-child::before{
  content:"Q.";
  font-size: 25px;
  font-weight: 400;
  padding-right: .5em;
  padding-left: 1em;
  text-indent: -1em
}
#q-and-a .content dd{
  padding: 20px 0 40px;
  letter-spacing: 0.1em;
  text-align: justify;
  word-break: break-all;
}
#q-and-a .content dd strong{
  background: none;
}


@media screen and (max-width: 768px) {

}


@media screen and (max-width: 480px) {
  #q-and-a h2{
    font-size: 30px;
  }
  #q-and-a .under-line{
    padding-bottom: 10px;
  }
  #q-and-a .caption{
    padding: 20px 0 30px;
  }
  #q-and-a .content dt{
    font-size: 25px;
    padding: 15px;
    padding-left:2em;
  	text-indent:-2em;
  }
  #q-and-a .content dt:first-child{
    margin-left: 0;
  }
  #q-and-a .qa dt:first-child::before{
    content:"Q.";
    font-size: 25px;
    font-weight: 400;
    padding-right: .5em;
    padding-left: 0.5em;
    text-indent: -0.5em
  }
  #q-and-a .content dd{
    padding: 20px 0 40px;
    letter-spacing: 0.1em;
  }
  #q-and-a .content dd strong{
    background: none;
  }
  #q-and-a .content dd:last-child{
    padding: 20px 0 10px;
  }
}

/*---------------------------------

  特定商取引法に基づく表記

---------------------------------*/
.tokusyouhou {
  text-align: center;
}
.tokusyouhou a {
  color: #333;
}


/*---------------------------------

  フッター

---------------------------------*/
footer{
  background: #e50315;
  padding: 5px;
  text-align: center;
  color:white;
  font-size: 16px;
}


@media screen and (max-width: 480px) {
  footer{
    font-size: 11px;
  }
}
