#repo{
  padding-top: 77px!important;
}
#repo,p{
  margin: 0;
  padding: 0;
}
#repo p{
  font-size: 16px;
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc-img { display: block !important; }
.sp-img { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
.pc-img { display: none !important; }
.sp-img { display: block !important; }
}

.bnr-repo{
  position: absolute;
  right: 8%;
  bottom: 15%;
  width: 16vw;
  max-width: 240px;
}
@media only screen and (max-width: 750px) {
  .bnr-repo{
    width: 33%;
  }  
}
.bnr-repo img{
  width: 100%;
}

#repo h3{
  margin: 0 auto;
  display: flex;
  text-align: center;
  align-items: center;
  width: 71vw;
  max-width: 840px;
}
#repo .pc-img{
  width: 63vw;
  max-width: 710px;
  margin-right: 1.4vw;
}
#repo .repo-title-yamaguchi{
  width: 9vw;
  max-width: 98px;
  margin-bottom: 2vw
}
@media only screen and (max-width: 750px) {
  #repo p.repo-title{
    margin: 0 auto;
  }
  #repo p.repo-title img{
    width: 100%;
  }
}
/* ここまでルポタイトル */



.profile-box{
  position: relative;
  background-color: white;
  width: 100%;
  max-width: 553px;
  padding: 30px;
  margin: 50px auto;
}
.profile-box .right-title{
  position: absolute;
  text-align: right;
  font-size: 20px!important;
  font-weight: 500;
  color: #8695a5;
  top: 6px;
  right: 10px;
}
.profile-box .profile-content{
  display: flex;
  align-items: center;
}
.profile-box .profile-img{
  width: 100%;
  max-width: 108px;
}
.profile-box .profile-box-text{
  margin-left: 20px;
}
.profile-box .profile-box-text .profile-name{
  text-align: left;
  font-size: 20px!important;
  font-weight: 500;
  border-bottom: 1px solid black;
  padding-bottom: 14px;
}
.profile-box .profile-box-text .profile-text{
  text-align: left;
  font-size: 16px;
  padding-top: 14px;
}

@media only screen and (max-width: 750px) {
  #repo .profile-box{
    width: calc(100% - 20px);
  }
  .profile-box .profile-box-text .profile-name{
    text-align: center;
  }
}
/* ここまでプロフィールボックス */



.green-left{
  background: linear-gradient(-135deg,transparent 17px,#2ea450 0);
  color: white;
}
.green-right{
  background: linear-gradient(135deg,transparent 17px,#2ea450 0);
  color: white;
}
.repo-content-position{
  position: relative;
  margin: 0 auto;
}
.repo-content01{
  margin-top: 136px;
  height: 32vw;
  max-height: 450px;
}
.repo-content02{
  margin-top: 80px;
  height: 32vw;
  max-height: 150px;
}
.repo-content03{
  margin-top: 60px;
  height: 32vw;
  max-height: 504px;
}
.repo-content04{
  margin-top: -110px;
  height: 32vw;
  max-height: 514px;
}
.caption01{
  padding: 30px 30px 50px 30px;
  width: 32vw;
  max-width: 445px;
  margin: 0 auto 0 13%;
}
.caption02{
  padding: 30px;
  width: 36vw;
  max-width: 493px;
  margin: 0 3% 0 auto;
}
.caption03{
  padding: 30px;
  width: 36vw;
  max-width: 493px;
  margin: 0 auto 0 3%;
}
.caption04{
  padding: 30px 30px 50px 30px;
  width: 36vw;
  max-width: 493px;
  margin: 0 3% 0 auto;
}
.caption05{
  padding: 30px 30px 50px 30px;
  width: 36vw;
  max-width: 493px;
  margin: 0 auto 0 3%;
}
.caption01-position{
  position: absolute;
  left: 3%;
  bottom: 51%;
}
.caption02-position{
  position: absolute;
  right: 0;
  bottom: 5%;
}
.caption03-position{
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.caption04-position{
}
.caption05-position{
}
.center-icon{
  z-index: -1;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width: 16vw;
  max-width: 150px;
  height: 16vw;
  max-height: 150px;
}
.center-icon2{
  z-index: -1;
  position: absolute;
  top: 47%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width: 16vw;
  max-width: 150px;
  height: 16vw;
  max-height: 150px;
}
.center-icon img{
  width: 100%;
}
.center-icon2 img{
  width: 100%;
}
.caption01-black-line-w{
  z-index: -2;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width: 50vw;
  height: 2px;
  background-color: black;
}
.caption01-black-line-h{
  z-index: -2;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width: 2px;
  height: 33vw;
  background-color: black;
}
.caption02-black-line-w{
  z-index: -2;
  position: absolute;
  top: 50%;
  right: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  width: 27vw;
  height: 2px;
  background-color: black;
}
.caption02-black-line-h{
  z-index: -2;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width: 2px;
  height: 30vw;
  background-color: black;
}
.caption03-black-line-w{
  z-index: -2;
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  width: 27vw;
  height: 2px;
  background-color: black;
}
.caption03-black-line-h{
  z-index: -2;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width: 2px;
  height: 47vw;
  background-color: black;
}
.caption04-black-line-w{
  z-index: -2;
  position: absolute;
  top: 50%;
  right: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  width: 27vw;
  height: 2px;
  background-color: black;
}
.caption04-black-line-h{
  z-index: -2;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width: 2px;
  height: 30vw;
  background-color: black;
}
.caption01-green-line{
  z-index: -1;
  position: absolute;
  top: 10%;
  left: 5%;
  width: 33vw;
  max-width: 454px;
  height: 41vw;
  max-height: 366px;
  background-color: #f5f5f2;
  border: solid 2px #2FA450;
}
.caption03-green-line{
  z-index: -1;
  position: absolute;
  top: 10%;
  right: 1%;
  width: 35.2vw;
  max-width: 557px;
  height: 26vw;
  max-height: 418px;
  background-color: #f5f5f2;
  border: solid 2px #2FA450;
}
.caption04-green-line{
  z-index: -1;
  position: absolute;
  top: 10%;
  left: 1%;
  width: 35.2vw;
  max-width: 557px;
  height: 23vw;
  max-height: 418px;
  background-color: #f5f5f2;
  border: solid 2px #2FA450;
}

.caption01-img{
  position: absolute;
  top: 88%;
  left: 0;
  width: 32vw;
  max-width: 450px;
}

@media only screen and (max-width: 750px) {
  .caption01{
    width: calc(100% - 15%);
    padding: 20px 20px 50px 20px;
    max-width: 100%;
  }
  .caption01-green-line{
      width: calc(100% - 15%);
      max-width: 100%;
      height: 53vw;
      left: 7%;
  }
  .caption01-img{
    width: calc(100% - 15%);
    top: 83%;
    max-width: 100%;
  }
  .repo-content01{
      height: 122vw;
      max-height: 600px;
      margin-top: 0;
  }
  .caption01-position{
          bottom: auto;
  }
.repo-content01 .center-icon{
      left: 2%;
      transform: translate(0);
      -webkit-transform: translate(0);
      -ms-transform: translate(0);
}
.repo-content01 .center-icon img{
  z-index: 10;
  position: relative;
}
.caption01-black-line-h{
    height: 81vw;
    top: -130%;
}
.caption01-black-line-w{
      left: 0;
      transform: translate(0, -50%);
      -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
}


  .caption02{
      padding: 20px;
  }
  .caption02-black-line-w{
      right: -100%;
  }
  .caption02-black-line-h{
      top: 10%;
      transform: translate(-50%,0);
      -webkit-transform: translate(-50%,0);
      -ms-transform: translate(-50%,0);
      height: 50vw;
  }
  .caption02-position{
    width: calc(100% - 22%);
    margin: 0px auto 0 20%;
    padding: 20px 20px 20px 20px;
    right: auto;
    bottom: 5%;
    z-index: 10;
  }


  .caption03{
      padding: 20px;
      width: 60vw;
  }
  .repo-content02{
    margin-top: 0;
    max-height: 170px;
  }
  .repo-content02 .center-icon{
        left: 2%;
        bottom: 20%;
        transform: translate(0);
        -webkit-transform: translate(0);
        -ms-transform: translate(0);
  }
  .caption03-position{
    width: calc(100% - 22%);
    margin: 0px auto 0 20%;
    padding: 20px 20px 20px 20px;
  }
  /*.repo-content01 .center-icon{
        bottom: 50%;
        left: 15%;
        width: 25vw;
        height: 15vw;
  }*/
  .repo-content03{
    height: 73vw;
    max-height: 544px;
  }
  .repo-content03 .center-icon2{
      top: 0;
      left: 2%;
      transform: translate(0, 0);
      -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
  }
  .caption03-black-line-h{
        top: -100px;
        left: 50%;
        transform: translate(-50%, 0);
        -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
        height: 1000px;
  }
   .caption04-position{
      width: calc(100% - 22%);
      margin: 0px auto 0 20%;
      padding: 20px 20px 50px 20px;
   }


  .repo-content04{
    margin-top: 15%;
    height: 93vw;
    max-height: 594px;
  }
  .repo-content04 .center-icon2{
        top: -2%;
        left: 2%;
        transform: translate(0, 0);
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
  }
  .caption04-black-line-w{
      right: 0;
      left: 10%;
  }
  .caption04-black-line-h{
      height: 1500px;
      top: -180px;
      left: 50%;
      transform: translate(-50%, 0);
      -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
  }
  .caption03-green-line,
  .caption04-green-line{
    display: none;
  }
  .caption05{
    width: calc(100% - 22%);
    margin: 0px auto 0 20%;
    padding: 20px 20px 50px 20px;
  }
  .repo-content03 .slider,
  .repo-content04 .slider{
          width: 100%;
          max-width: 100%;
          bottom: 10px;
  }
}
@media only screen and (max-width: 640px) {
  .repo-content04{
    margin-top: 30%;
  }
  .repo-content01{
        max-height: 540px;
  }
  .repo-content03{
    height: 83vw;
  }
  .caption02-position{
      bottom: 0;
  }
}
@media only screen and (max-width: 490px) {
  .repo-content01{
        max-height: 510px;
  }
  .repo-content04 {
      margin-top: 40%;
  }
}

@media only screen and (max-width: 380px) {
  .repo-content01 {
      max-height: 480px;
      height: 126vw;
  }
  .repo-content04{
    margin-top: 60%;
    height: 113vw;
    max-height: 654px;
  }
}






/* メンター */
.repo-content-menter{
  margin-top: 80px;
  width: 100%;
  max-width: 594px;
  margin: 80px auto 0 auto;
  padding: 30px;
  border: 2px solid #343a40;
  background-color: #f5f5f2;
}
.repo-content-menter .img-content-menter{
  width: 100%;
  max-width: 446px;
}
.repo-content-menter .content04-box{
  text-align: center;
}
.repo-content-menter .content04-caption{
  text-align: center;
  margin-top: 12px;
}
.repo-content-menter .menter-flex{
  max-width: 530px;
  display: flex;
  align-items: center;
  margin: 28px auto 0;
}
.repo-content-menter .menter-flex img{
  width: 22vw;
  max-width: 160px;
}
.repo-content-menter .menter-flex p{
  margin-left: 20px;
}

@media only screen and (max-width: 750px) {
  .repo-content-menter{
      width: calc(100% - 20px);
      max-width: 100%;
      margin-top: 5%;
  }
}



/* クリアー */
.repo-content-clear{
  position: relative;
  width: 100%;
  max-width: 1045px;
  margin: 0 auto;
  text-align: center;
}
.repo-content-clear .clear-img{
  width: 100%;
  max-width: 320px;
}
.repo-content-clear .clear-text{
  position: absolute;
  z-index: 5;
  width: 100%;
  max-width: 438px;
  font-size: 20px!important;
  font-weight: 500;
  color: white;
  background-color: #2ea450;
  padding: 30px;
  text-align: center;
  position: absolute;
  top: 252px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
.repo-content-clear .clear-flex01{
  display: flex;
  padding: 50px 30px 30px 30px;
  border: 2px solid #2ea450;
  margin: -22px 3% 0;
  background-image: url(../img/bg.jpg);
  background-repeat: repeat;
  z-index: 3;
  position: relative;

}
.repo-content-clear .clear-half{
  width: 50%;
}
.repo-content-clear .clear-margin-top{
  margin-top: 30px;
}
.repo-content-clear .clear-margin-left{
  margin-left: 40px;
}
.repo-content-clear .clear-flex02{
  display: flex;
  align-items: center;
  margin-bottom: 30px;
}
.repo-content-clear img{
  width: 100%;
  max-width: 90px;
}
.repo-content-clear .clear-text02{
  text-align: left;
  margin-left: 10px;
}
.repo-content-clear .clear-text02 span{
  font-size: 20px!important;
  font-weight: 500;
}
.clear-margin-none{
  margin-bottom: 0!important;
}
@media only screen and (max-width: 750px) {
    .repo-content-menter{
      width: calc(100% - 20px);
    }
    .repo-content-clear .clear-text{
        width: calc(100% - 20px);
        max-width: 100%;
        margin: -71px auto 0 auto;
        padding: 15px;
        transform: translateX(0%);
        -webkit-transform: translateX(0%);
        -ms-transform: translateX(0%);
        position: relative;
        top: 0;
        left: 0;
        z-index: 40;
    }
    .repo-content-clear .clear-flex01{
        display: block;
        margin: -22px 10px 0;
        padding: 20px 30px 30px 30px;
    }
    .repo-content-clear .clear-img{
        max-width: 250px;
    }
    .repo-content-clear .clear-half{
        width: 100%;
    }
    .repo-content-clear .clear-margin-left{
        margin-left: 0;
    }
}



/* ここからスライダー */
.slider{
  width: 35vw;
  max-width: 560px;
  padding: 0;
  bottom: 30px;
}
.slider-left{
  margin: 0 0 0 auto ;
}
.slider-right{
  margin: 0 auto 0 0 ;
}
.slider img{
  width: 100%;
}
/*slick setting*/
.slick-prev:before,
.slick-next:before {
  color: #000;
}
