@charset "UTF-8";

/*-------------------------------------------
TOP MainVisual
-------------------------------------------*/
.mainvisual {
  /* 下 */
  position: relative;
  left: 0;
  top: 60px;
  width: 100%;
  /*z-index: -20;*/
  background-color: #ffd700;/* Gold */
  clip-path: polygon(0 0,100% 0,100% 80%, 50% 100%, 0 80%);
  padding: 80px 0 200px;
  margin-bottom: 40px;
}
.mainvisual::before {
  /* 上 */
  content: "";
  position: absolute;
  left: 0;
  top: -40px;
  z-index: -10;
  width: 100%;
  height: 100%;
  background-color: #ffed58;/* Yamabuki */
  clip-path: polygon(0 0,100% 0,100% 80%, 50% 100%, 0 80%);
}

.mainvisual .inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mainvisual .text .catchcopy {
  font-size: 48px;
  font-weight: 700;
  margin-bottom: 20px;
}
.mainvisual .text .catchcopy span {
  background-color: #fff;
  display: inline-block;
  margin-bottom: 10px;
}
.mainvisual .text .description {
  font-weight: 500;
  line-height: 1.6;
  margin-right: 30px;
}
.mainvisual img {
  max-width: 400px;
}



/*-------------------------------------------
TOP Story
-------------------------------------------*/
#story {
  padding: 120px 40px 0px 40px;
  margin: 0 auto;
}
#story .item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 40px;
  margin-bottom: 40px;
  border: 20px solid deepskyblue;
  border-radius: 30px;
}
#story .item .img {
  width: 45%;
  max-width: 400px;
}
#story .item .img img {
  margin: 20px 0;
  width: 100%;
  border-radius: 10px;
}
#story .item .text {
  width: 50%;
}
#story .item .text .title {
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 30px;
}
#story .item .text .description {
  line-height: 1.6;
  padding-bottom: 40px;
}



/*-------------------------------------------
TOP About(Profile)
-------------------------------------------*/
#about {
  /* 下 */
  position: relative;
  width: 100%;
  /*z-index: -20;*/
  background-color: #ffd700;/* Gold */
  clip-path: polygon(0 10%,50% 0,100% 10%,100% 90%, 50% 100%, 0 90%);
  padding: 150px 0 200px;
  margin-top: 20px;
  margin-bottom: 20px;
}
#about::before {
  /* 上 */
  content: "";
  position: absolute;
  left: 0;
  top: -40px;
  z-index: -10;
  width: 100%;
  height: 100%;
  background-color: #ffed58;/* Yamabuki */
  clip-path: polygon(0 10%,50% 0,100% 10%,100% 90%, 50% 100%, 0 90%);
}

#about .inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#about .text .description {
  font-weight: 500;
  line-height: 1.6;
  margin-right: 30px;
  margin-bottom: 40px;
}
#about .text .description a {
  font-size: 20px;
}
#about img {
  max-width: 400px;
}



/*-------------------------------------------
TOP News,NwesTech
-------------------------------------------*/
.news {
  padding: 20px 40px 60px 40px;
  margin: 0 auto;
  margin-bottom: 40px;
}
.news .news-list {
  display: flex;
  flex-wrap: wrap;
}
.news .news-list dt {
  width: 200px;
  border-top: solid 1px #1f1f1f;
  font-size: 16px;
  padding: 40px 0;
  line-height: 1.6;
}
.news .news-list dt:last-of-type {
  border-bottom: solid 1px #1f1f1f;
}
.news .news-list dd {
  width: calc(100% - 200px);
  border-top: solid 1px #ccc;
  font-size: 16px;
  padding: 40px 0;
  line-height: 1.6;
  /* comment */
  position: relative;
}
.news .news-list dd:last-of-type {
  border-bottom: solid 1px #ccc;
}

.news-comment {
  display: none;
  margin-top: 15px;
  color: #666;
}
.news-comment.active {
  display: block;
}
.news-point {
  display: block;
  margin: 10px;
}
.news-sp {
  display: none;
}

.news-button {
  width: 30px;
  height: 30px;
  cursor: pointer;
  position: absolute;
  top: 37px;
  right: 20px;
}
.news-button span {
  width: 20px;
  height: 2px;
  background-color: #666;
  display: inline-block;
  position: absolute;
  left: 5px;
  transition: all 0.5s;
}
.news-button span:nth-of-type(1) {
  top: 15px;
}
.news-button span:nth-of-type(2) {
  top: 15px;
  transform: rotate(90deg);
}

.news-button.active span:nth-of-type(1) {
  opacity: 0;
}
.news-button.active span:nth-of-type(2) {
  transform: rotate(0deg);
}



/*-------------------------------------------
スマートフォン
-------------------------------------------*/
@media screen and (max-width: 767px) {
  /*-------------------------------------------
  TOP MainVisual
  -------------------------------------------*/
  .mainvisual {
    /* 下 */
    clip-path: polygon(0 0,100% 0,100% 80%, 50% 100%, 0 80%);
    padding: 50px 0 170px;
  }
  .mainvisual::before {
    /* 上 */
    clip-path: polygon(0 0,100% 0,100% 80%, 50% 100%, 0 80%);
  }

  .mainvisual .inner {
    flex-direction: column;
  }
  .mainvisual .text .catchcopy {
    font-size: 32px;
    margin-bottom: 10px;
  }
  .mainvisual .text .description {
    font-size: 14px;
    margin-right: 0px;
    margin-bottom: 30px;
  }
  .mainvisual img {
    width: 100%;
  }



  /*-------------------------------------------
  TOP Story
  -------------------------------------------*/
  #story {
    padding: 120px 40px 0px 40px;
    margin: 0 auto;
  }
  #story .item {
    flex-direction: column;
  }
  #story .item .img {
    width: 100%;
    max-width: 400px;
    margin: 0 0 40px;
  }
  #story .item .text {
    width: 80%;
  }
  #story .item .text .title {
    text-align: center;
  }



  /*-------------------------------------------
  TOP About(Profile)
  -------------------------------------------*/
  #about {
    /* 下 */
    clip-path: polygon(0 10%,50% 0,100% 10%,100% 90%, 50% 100%, 0 90%);
  }
  #about::before {
    /* 上 */
    clip-path: polygon(0 10%,50% 0,100% 10%,100% 90%, 50% 100%, 0 90%);
  }

  #about .inner {
    flex-direction: column;
  }
  #about .text .description {
    margin-right: 0px;
    margin-bottom: 30px;
  }
  #about img {
    width: 100%;
  }



  /*-------------------------------------------
  TOP News,NwesTech
  -------------------------------------------*/
  .news .news-list dt {
    width: 100px;
    padding: 20px 0;
  }
  .news .news-list dd {
    width: calc(100% - 100px);
    padding: 20px 22px 20px 10px;
  }

  .news-sp {
    display: block;
  }

  .news-button {
    top: 18px;
    right: 0;
  }


}