@charset "utf-8";



/* ============================================================
 body color
============================================================ */


/* 背景色の変更 */
body{
  background-color:#F3F5F9;
}


/* ============================================================
 HERO
============================================================ */

/* 大枠 */
.hero{
  width: 100vw;
  height:70vh;
  max-height: 640px;
  background: #081428;
  position: relative;
  overflow: hidden;
}


/*　vegas起点　*/
.hero-box{
  width: 100%;
  height: 100% !important;
}


/* コンテンツ内包 */
.hero-content {
  color: #ffffff;
  z-index: 2;
  position: absolute;
  width: 100%;
  height: 100%;
}


/*　ロゴ枠　*/
.logo-area{
  height:100%;
  width: 624px;
  margin: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}


/* ロゴ枠 vh対応 */
.logo-area-box{
  width: 100%;
  height: 140px;
  position: relative;
  top: 14px;
}



/*　--------------------------  豊島ロゴ  -------------------------- */

/* 豊島ロゴ */
.toyoshima-logo-svg{
  width: 332px;
  height: 37px;
  position: absolute;
  top: 0;
  stroke: rgba(255, 255, 255, 1);
  fill: rgba(255, 255, 255, 0);
  stroke-width: 2;
  stroke-dasharray: 3000;
  stroke-dashoffset: 3000;
}

.toyoshima-logo-svg-onscreen{
  animation: svg-animation-toyoshima 4s ease-in .3s 1 normal forwards;
}

/* IE11 */
@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .toyoshima-logo-svg { fill:#ffffff; }
}


/* 豊島ロゴ イントロ Edge  */
@-webkit-keyframes svg-animation-toyoshima {

  0% {
    stroke-dashoffset: 3000;
    fill: rgba(255, 255, 255, 0);
    stroke-width: 2;
  }

  20% {
    stroke-width: 2;
  }

  40% {
    stroke-width: 2;
    fill:rgba(255, 255, 255, 0);
  }

  50% {
    stroke-width: 1;
  }

  48% {
    fill:rgba(255, 255, 255, 1);
  }

  60% {
    fill:rgba(255, 255, 255, 1);
  }

  100% {
    stroke-dashoffset: 0;
    stroke-width: 0;
    fill: rgba(255, 255, 255, 1);
  }

}

/* 豊島ロゴ イントロ Chrome Fire Safari  */
@keyframes svg-animation-toyoshima {

  0% {
    stroke-dashoffset: 3000;
    fill: rgba(255, 255, 255, 0);
    stroke-width: 2;
  }

  20% {
    stroke-width: 2;
  }

  40% {
    stroke-width: 2;
    fill:rgba(255, 255, 255, 0);
  }

  50% {
    stroke-width: 1;
  }

  48% {
    fill:rgba(255, 255, 255, 1);
  }

  60% {
    fill:rgba(255, 255, 255, 1);
  }

  100% {
    stroke-dashoffset: 0;
    stroke-width: 0;
    fill: rgba(255, 255, 255, 1);
  }

}


/*　--------------------------  x  -------------------------- */

/* x枠 */
.square {
    width: 29px;
    height: 29px;
    transform: rotate(45deg);
    position: absolute;
    left: 356px;
    top: 11px;
}

.square-line-1{
  width: 0%;
  height: 1px;
  background-color: #ffffff;
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -1px;
}

.square-line-1-onscreen{
  animation: square-animation-line-01 .5s ease-in .9s 1 normal forwards;
}

@keyframes square-animation-line-01{
  0%{ width: 0%; opacity: 0;}
  100%{ width: 100%; opacity: 1;}
}

.square-line-2{
  width: 1px;
  height: 0%;
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -1px;
  background-color: #ffffff;
}

.square-line-2-onscreen{
  animation: square-animation-line-02 .5s ease-in 1.3s 1 normal forwards;
}

@keyframes square-animation-line-02{
  0%{ height: 0%;}
  100%{ height: 100%;}
}


/*　--------------------------  Makuakeロゴ  -------------------------- */

/* Makuakeロゴ */
.makuake-logo-svg{
  width: 219px;
  height: 48px;
  position: absolute;
  top: 0;
  left: 406px;
  stroke: rgba(255, 255, 255, .8);
  fill: rgba(255, 255, 255, 0);
  stroke-width: .6;
  stroke-dasharray: 3000;
  stroke-dashoffset: 3000;
}

.makuake-logo-svg-onscreen{
  animation: svg-animation-makuake 8.8s ease-in .3s 1 normal forwards;
}

/* IE11 */
@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .makuake-logo-svg { fill:#ffffff; }
}

/* Makuakeロゴ イントロ Edge  */
@-webkit-keyframes svg-animation-makuake {

  0% {
    fill: rgba(255, 255, 255, 0);
    stroke-dashoffset: 3000;
    stroke-width:.6;
  }
  19% {
    fill:rgba(255, 255, 255, 0);
  }
  21% {
    fill:rgba(255, 255, 255, 1);
  }
  40% {
    stroke-width:.6;
  }
  51% {
    stroke-width:0;
  }
  100% {
    fill: rgba(255, 255, 255, 1);
    stroke-dashoffset: 0;
    stroke-width: 0;
  }
}


/* Makuakeロゴ イントロ Chrome Fire Safari  */
@keyframes svg-animation-makuake {

  0% {
    fill: rgba(255, 255, 255, 0);
    stroke-dashoffset: 3000;
    stroke-width:.6;
  }
  19% {
    fill:rgba(255, 255, 255, 0);
  }
  21% {
    fill:rgba(255, 255, 255, 1);
  }
  40% {
    stroke-width:.6;
  }
  51% {
    stroke-width:0;
  }
  100% {
    fill: rgba(255, 255, 255, 1);
    stroke-dashoffset: 0;
    stroke-width: 0;
  }
}



/*　--------------------------  PARTNER PAGE  -------------------------- */

/*　PARTNER PAGE　*/
.partnerpage-svg{
   width: 181px;
   height: 9px;
   position: absolute;
   top: 130px;
   left: 221px;
   fill: #ffffff;
   opacity: 0;
}

.partnerpage-svg-onscreen{
  animation: svg-animation-pat .6s ease-in 2.4s 1 normal forwards;
}

/*　PARTNER PAGE イントロ　*/
@keyframes svg-animation-pat{
  0%{ opacity: 0;}
  100%{ opacity: 1;}
}



/* ============================================================
 wrapper
============================================================ */
.wrapper{
  line-height: 1;
  margin-bottom: 150px;
}



/* ============================================================
 プロジェクト一覧
============================================================ */

/* 枠 */
.project{
  width: 1000px;
  margin: 0 auto 133px;
}

/*プロジェクトタイトル　*/
.projec-title{
  text-align: center;
  font-size: 30px;
  color: #081428;
  margin: 100px auto 58px;
  -webkit-font-smoothing: antialiased;
  position: relative;
  top: 30px;
  transition: all .7s ease-out 0s;
  opacity: 0;
}

.projec-title-onscreen{
  top: 0;
  opacity: 1;
}


/* ============================================================
 プロジェクト一覧 ボタン
============================================================ */

.btn-box{
  position: relative;
  top: 30px;
  transition: all .7s ease-out 0s;
  opacity: 0;
}

.btn-box-onscreen{
  top: 0;
  opacity: 1;

}

.btn-readmore{
  background: #f78633;
  border-radius: 2px;
  color: #fff;
  display: block;
  font-size: 20px;
  height: 59px;
  line-height: 59px;
  margin: 58px auto 0;
  text-align: center;
  text-decoration: none;
  width: 245px;

}

.btn-readmore:hover{
  text-decoration: none;
  opacity: .8;

}


/* ============================================================
 豊島株式会社とは
============================================================ */

/* 枠 */
.about{
  position: relative;
  margin-bottom: 112px;
  min-height: 1256px;
  width: 100%;
  overflow: hidden;
}


/* 1841の写真 */
.toyoshima-1841{
  display: block;
  width: 631px;
  height: auto;
  position: absolute;
  border: solid 7px #ffffff;
  left: 51%;
  margin-left: -36px;
  z-index: 1;
  transition: all .7s ease-out .3s;
  opacity: 0;
}


.toyoshima-1841-onscreen{
  margin-left: -66px;
  opacity: 1;
}


/* 豊島ロゴ blue */
.toyoshima-logo-svg-blue{
  width: 299px;
  height: 33px;
  position: absolute;
  right: 50%;
  z-index: 1;
  margin: 87px 187px 0 auto;
  stroke: rgba(18, 64, 152, 1);
  fill: rgba(18, 64, 152, 0);
  stroke-width: 2;
  stroke-dasharray: 3000;
  stroke-dashoffset: 3000;
}


.toyoshima-logo-svg-blue-onscreen{
  animation: svg-animation-toyoshima-blue 3s ease-in .3s 1 normal forwards;
}

/* IE11 */
@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .toyoshima-logo-svg-blue { fill:#124098; }
}



/* 豊島ロゴ blue イントロ Edge  */
@-webkit-keyframes svg-animation-toyoshima-blue {
  0% {
    stroke-dashoffset: 3000;
    fill: rgba(18, 64, 152, 0);
    stroke-width: 2;
  }

  20% {
    stroke-width: 2;
  }

  40% {
    stroke-width: 2;
    fill:rgba(18, 64, 152, 0);
  }

  50% {
    stroke-width: 1;
  }

  48% {
    fill:rgba(18, 64, 152, 1);
  }

  60% {
    fill:rgba(18, 64, 152, 1);
  }

  100% {
    stroke-dashoffset: 0;
    stroke-width: 0;
    fill: rgba(18, 64, 152, 1);
  }


}

/* 豊島ロゴ blue イントロ Chrome Fire Safari  */
@keyframes svg-animation-toyoshima-blue {

  0% {
    stroke-dashoffset: 3000;
    fill: rgba(18, 64, 152, 0);
    stroke-width: 2;
  }

  20% {
    stroke-width: 2;
  }

  40% {
    stroke-width: 2;
    fill:rgba(18, 64, 152, 0);
  }

  50% {
    stroke-width: 1;
  }

  48% {
    fill:rgba(18, 64, 152, 1);
  }

  60% {
    fill:rgba(18, 64, 152, 1);
  }

  100% {
    stroke-dashoffset: 0;
    stroke-width: 0;
    fill: rgba(18, 64, 152, 1);
  }

}



/* 豊島株式会社とは */
.about-title{
  font-size: 26px;
  color: #081428;
  position: absolute;
  right: 50%;
  z-index: 1;
  margin: 157px 276px 0 auto;
  opacity: 0;
  transition: all 3s ease-out .3s;
}


.about-title-onscreen{
  opacity: 1;
}


/* 豊島株式会社とは最初のテキスト枠 */
.about-1841{
  background-color: #ffffff;
  width: 100%;
  position: absolute;
  top: 260px;
  z-index: 2;
  height: 435px;
  right: 50%;
  margin-right: -39px;
  transition: all 1s ease-out .3s;
  opacity: 0;
}
.about-1841-onscreen{
  opacity: 1;
 margin-right: -69px;
}



/* 文字設定 */
.about-1841-text{
  font-size: 18px;
  color: #081428;
  width: 484px;
  position: absolute;
  right: 67px;
  line-height: 2.2;
  top: 102px;
}


/* 文字上ライン */
.about-1841-text:before{
  content: "";
  position: absolute;
  width: 35px;
  height: 2px;
  background-color: #124098;
  top: -42px;
  left: 1px;
}

/* 段落設定 */
.about-1841-text-p{
  margin-bottom: 20px;
}

/* 1841ブルーライン */
.about-blueline-1841{
  width: 460px;
  height: 84px;
  background-color: rgba(18, 64, 152, 0.84);
  position: absolute;
  z-index: 3;
  left: 50%;
  top: 408px;
  margin-left: 19px;
  transition: all .7s ease-out .6s;
  opacity: 0;
}

.about-blueline-onscreen{
  margin-left: 49px;
  opacity: 1;
}



/* 1841ブルーライン from */
.from-svg{
  fill:#ffffff;
  width: 61px;
  height: 10px;
  position: absolute;
  left: 61px;
  top:37px;
}

/* 1841ブルーライン 1841 */
.num1841-svg{
  fill:#ffffff;
  width: 79px;
  height: 17px;
  position: absolute;
  left: 190px;
  top: 34px;
}

/* 1841ブルーライン 白線 */
.about-blueline-1841-l{
  position: absolute;
  width: 41px;
  height: 1px;
  background-color: #ffffff;
  top: 42px;
  right: 125px;
}

/* 2020の写真 */
.toyoshima-2020{
  display: block;
  width: 661px;
  height: auto;
  position: absolute;
  border: solid 7px #ffffff;
  right: 50%;
  margin-right: -245px;
  z-index: 4;
  top: 574px;
  transition: all .7s ease-out .7s;
  opacity: 0;
}


.toyoshima-2020-onscreen{
  margin-right: -275px;
opacity: 1;
}



/* 2020ブルーライン */
.about-blueline-2020{
  width: 460px;
  height: 84px;
  background-color: rgba(18, 64, 152, 0.84);
  position: absolute;
  z-index: 5;
  right: 50%;
  top: 908px;
  margin-right: 14px;
  transition: all .7s ease-out .3s;
  opacity: 0;
}

.about-blueline-2020-onscreen{
margin-right: 44px;
opacity: 1;
}


/* 2020ブルーライン 2020 白線1 */
.about-blueline-2020-l1{
  position: absolute;
  width: 41px;
  height: 1px;
  background-color: #ffffff;
  top: 42px;
  left: 123px;
}



/* 2020ブルーライン 2020 白線2 */
.about-blueline-2020-l2{
  position: absolute;
  width: 41px;
  height: 1px;
  background-color: #ffffff;
  top: 42px;
  right: 41px;
}


/* 2020ブルーライン 2020 */
.num2020-svg{
 fill:#ffffff;
 width: 84px;
 height: 17px;
 position: absolute;
 left: 187px;
 top: 34px;
}


/* 2020テキスト */
.about-2020{
  background-color: #ffffff;
  width: 100%;
  position: absolute;
  top: 899px;
  z-index: 3;
  height: 357px;
  left: 50%;
  margin-left: -136px;
  transition: all .7s ease-out .8s;
  opacity: 0;
}


.about-2020-onscreen{
  opacity: 1;
  margin-left: -106px;
}


/* 2020文字設定 */
.about-2020-text{
 font-size: 18px;
 color: #081428;
 width: 524px;
 position: absolute;
 left: 80px;
 line-height: 2.2;
 top: 118px;
}



/* ============================================================
 豊島だからできること
============================================================ */

/* 豊島だからできること 枠 */
.forte{
  width: 800px;
  margin: auto;
}

/* 豊島だからできること タイトル  */
.forte-title{
  font-size: 32px;
  color: #081428;
  text-align: center;
  margin-bottom: 32px;
  -webkit-font-smoothing: antialiased;
}


/* 豊島だからできること タイトル下のライン  */
.forte-title-line{
  display: block;
  width: 0;
  height: 4px;
  background-color: #124098;
  margin: 0 auto 40px;
  transition: all .7s ease-out .3s;

}


.forte-title-line-onscreen{
width: 408px;
}



/* 豊島だからできること テキスト  */
.forte-text{
  color: #081428;
  font-size: 18px;
  line-height: 2.2;
  margin-bottom: 100px;
}



/* 強みポイント枠  */
.forte-box{
  margin-bottom: 90px;
}


.forte-text-margin{
  margin-bottom: 60px;
}

.forte-article-title{
  font-size: 30px;
  color: #081428;
  text-align: center;
  margin-bottom: 48px;
  -webkit-font-smoothing: antialiased;
}

/* 強みの枠 */
.forte-article-media{
  position: relative;
}


/* 写真 */
.forte-article-photo{
  width: 800px;
  height: auto;
  margin: 0 auto 28px;
  border: solid 7px #ffffff;
  display: block;
  transition: all .5s ease-out .5s;
  opacity: 0;
}

.forte-article-photo-onscreen{
  opacity: 1;
}



/* 123の枠 */
.forte-article-num{
  position: absolute;
  width: 122px;
  height: 112px;
  background: rgba(18, 64, 152, 0.82);
  z-index: 1;
  left: 38px;
  top: -66px;
  transition: all .5s ease-out 0s;
  opacity: 0;
}



.forte-article-num-onscreen{
  opacity: 1;
  left: 58px;
}


/* 1.2.3 */
.one-svg,.two-svg,.three-svg{
  fill: #ffffff;
}


/* 1 */
.one-svg {
  width: 17px;
  height: 39px;
  position: absolute;
  left: 50px;
  top: 35px;
}

/* 2 */
.two-svg{
  width: 30px;
  height: 41px;
  position: absolute;
  left: 44px;
  top: 35px;
}

/* 3 */
.three-svg {
  width: 26px;
  height: 40px;
  position: absolute;
  left: 46px;
  top: 35px;
}



/* 強みそれぞれのテキスト */
.forte-article-text{
  color: #081428;
  font-size: 18px;
  line-height: 2.2;
}


/* ============================================================
 プロジェクトの新着
============================================================ */
.tag{
  width: 800px;
  margin: 0 auto 60px;
  background-color:#ffffff;
  height: 300px;
  position: relative;
}

.tag-line {
  width: 0px;
  height: 4px;
  background-color: #124098;
  transition: all .7s ease-out .3s;
  display: block;
  margin: 0 auto 60px;
}

.tag-line-onscreen{
   width: 100%;
}

.tag-title{
  text-align: center;
  color: #081428;
  font-size: 24px;
  margin-bottom: 34px;
}

.tag-text{
  text-align: center;
  margin-bottom: 58px;
  color: #081428;
  font-size: 18px;
}


.tag-cap{
  color: #081428;
  font-size: 18px;
}

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

.tag-btn{
  width: 165px;
  height: 50px;
  border: none;
  outline: none;
  color: #ffffff;
  font-size: 18px;
  padding: 0;
  cursor: pointer;
  background: #f78633;
  border-radius: 2px;
  margin-left: 56px;
}

.tag-btn:hover{
  opacity: .8;
}


/* ============================================================
 バナー
============================================================ */

.banner-box{
  display: flex;
  width: 800px;
  margin: auto;
  justify-content: space-between;
  text-align: center;
}

.banner-box-white{
  background-color: #ffffff;
  width: 252px;
  height: 142px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 30px;
}

.banner-box-white:hover{
  opacity: .8;
}

.banner-box-link{
  color: #081428;
  font-size: 16px;
}

.toyoshima-logo-svg-blue-banner{
  width: 192px;
  height: auto;
  fill: #124098;
}
.orgabits-logo-svg{
  width: 148px;
  fill: #6a4832;
}
.banner-textile-svg{
  width: 196px;
  fill: #4d5858;
}




