@charset "utf-8";

/* ===================
MV
====================== */
.mv-wrap{
  position: relative;
}
.mv {
  overflow: hidden;
}
.mv::before {
  position: absolute;
  right: 0;
  top: 17%;
  width: 65%;
  height: 100%;
  background-image: url(../img/mv_ttl-pc.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  z-index: 2;
  opacity: 0;

  animation:check 2s ease-in-out 0.5s forwards;
}
@media screen and (max-width: 767px) {
  .mv::before {
    position: absolute;
    right: 0;
    top: 16%;
    width: 65%;
    height: 100%;
    background-image: url(../img/mv_ttl-sp.png);
  }
}
@keyframes check {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
  }
  

.slide {
  position: relative;
  margin: 0;
  padding: 0;
}
.slide .mv_img {
  position: relative;
  overflow: hidden;
  height: 100%;
}
.slide .mv_img::before {
  display: block;
  padding-top: 45%;
  content: "";
}
@media screen and (max-width: 767px) {
  .slide .mv_img::before {
    display: block;
    padding-top: 110%;
    content: "";
  }
}
.slide .mv_img img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 100%;
}
.slide > .slick-list,
.slide > .slick-list > .slick-track,
.slide > .slick-list > .slick-track > .slick-slide > div {
  position: relative;
  height: 100%;
}
.slide-animation{
    animation: fadezoom 10s 0s forwards;
}
@keyframes fadezoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}

.mv_logo {
  position: absolute;
  right: 2%;
  bottom: -15rem;
  width: 20%;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .mv_logo {
    position: absolute;
    right: 2%;
    bottom: -4rem;
    width: 30%;
  }
}

/* =======================
GWFとは
========================== */
.about {
  position: relative;
  padding: 20rem 0 30rem 0;
}
.about::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff5fa;
  clip-path: polygon(0 0, 100% 0%, 100% 50%, 0% 100%);
  content: "";
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .about::before {
    clip-path: polygon(0 0, 100% 0%, 100% 8%, 0% 18%);
}
}

.about_content {
  padding: 5rem 0 3rem 0;
  text-align: center;
  color: #999;
}
.about_read {
  margin-bottom: 5rem;
  font-size: 3.6rem;
}
.about_txt {
  margin-bottom: 2rem;
  font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
  .about_content {
    padding: 5rem 5% 3rem 5%;
  }
  .about_read {
    margin-bottom: 8vw;
    font-size: 2.4rem;
  }
  .about_txt {
    margin-bottom: 2rem;
    font-size: 1.6rem;
  }
}

/* =======================
仕事を知る
========================== */
.t_work_content {
  position: relative;
  width: 80%;
  margin: 0 auto;
}

.t_work_imgWrap {
  width: 90%;
}

.btn_more {
  position: absolute;
  margin: -6% 0 0 70%;
  transition: .1s;
}
.btn_more:hover {
  margin: -4% 0 0 72%;
}


@media screen and (max-width: 767px) {
  .t_work_content {
    position: relative;
  }
  .t_work_content {
    position: relative;
    width: 100%;
  }
  .btn_more {
    margin: 0 0 0 62%;
  }
  .btn_more a {
    padding: 1.5rem 3rem 2rem 1.5rem;
  }
}


/* ===================
インタビュー
====================== */
@media screen and (max-width: 767px) {
  .t_interview {
    position: relative;
  }
  .t_interview::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff5fa;
    clip-path: polygon(0 44%, 100% 24%, 100% 48%, 0% 68%);
    content: "";
    z-index: -1;
  }
}
.t_interview .sec_ttl {
  margin-bottom: 30rem;
}
.menberCard {
  position: relative;
  width: 45%;
}
.menberCard:first-child {
  margin-top: -15rem;
}

.btn_member {
  position: absolute;
  margin: -5rem 0 0 -3rem;
  transition: .1s;
}
.btn_member:hover {
  margin: -4rem 0 0 0;
}
.btn_member a {
  padding-top: 0;
}

@media screen and (max-width: 767px) {
  .t_interview .sec_ttl {
    margin-bottom: 12vw;
  }
  .t_interview_content {
    flex-direction: column;
  }
  .menberCard {
    position: relative;
    width: 100%;
  }
  .menberCard:first-child {
    margin: 0 0 20vw 0;
  }
  .member_img {
    width: 95%;
    margin-left: auto;
  }
  .t_interview .bg_img {
    width: 95%;
    margin-left: 5%;
  }
  .btn_member {
    margin: -4rem 0 0 0;
  }
  .btn_member a {
    padding-top: .5rem;
  }
}



/* ===================
数字で見る
====================== */
.data {
  position: relative;
}
.data::before {
  position: absolute;
  top: -50rem;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff5fa;
  clip-path: polygon(0 0, 100% 15%, 100% 100%, 0% 85%);
  content: "";
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .data::before {
    clip-path: polygon(0 16%, 100% 19%, 100% 26%, 0% 23%);
  }
}

.dataBox {
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .dataBox {
    flex-direction: column;
    margin-bottom: 5rem;
  }
}

.data_imgWrap {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .data_imgWrap {
    margin-bottom: 25vw;
    width: 105%;
  }
}


.data_txt_wrap {
  position: relative;
  width: 240px;
  height: 240px;
  border-radius: 50%;
}
@media screen and (max-width: 767px) {
  .data_txt_wrap {
    width: 60vw;
    height: 60vw;
  }
}
.data_txt_wrap::before,
.data_txt_wrap::after {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  border-radius: 50%;
  background-color: #ffbed2;
  content: "";
}
.data_txt_wrap::before { 
  left: -90px;
  width: 30px;
  height: 30px;
}
.data_txt_wrap::after {
  left: -40px;
  width: 60px;
  height: 60px;
}
.dataBox:nth-child(odd) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  .dataBox:nth-child(odd) {
    flex-direction: column;
  }
}
.dataBox:nth-child(odd) .data_txt_wrap::before,
.dataBox:nth-child(odd) .data_txt_wrap::after {
  background-color: #a0dcea;
}
.dataBox:nth-child(odd) .data_txt_wrap::before {
  left: 300px;
}
.dataBox:nth-child(odd) .data_txt_wrap::after {
  left: 220px;
}
@media screen and (max-width: 767px) {
  /* before小さい丸、after大きい丸 */
  .data_txt_wrap::before,
  .data_txt_wrap::after,
  .dataBox:nth-child(odd) .data_txt_wrap::before,
  .dataBox:nth-child(odd) .data_txt_wrap::after {
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0);
  }
  .data_txt_wrap::before,
  .dataBox:nth-child(odd) .data_txt_wrap::before { 
    top: -20vw;
    width: 7vw;
    height: 7vw;
  }
  .data_txt_wrap::after,
  .dataBox:nth-child(odd) .data_txt_wrap::after {
    top: -9vw;
    width: 14vw;
    height: 14vw;
  }
}

.data_txt {
  width: 62%;
}
@media screen and (max-width: 767px) {
  .data_txt {
    width: 70%;
    font-size: 1.4rem;
  }
}


/* ===================
GWFの未来展望
====================== */
.future {
  margin-bottom: 15rem;
}

.future .wrapper {
  position: relative;
}

.future_content {
  flex-direction: row-reverse;
  padding: 3.5rem 3rem;
  margin-bottom: 3.5rem;
}

.future_img {
  width: 48%;
}
.future_txtBox {
  width: 50%;
}

.future_txt {
  margin-bottom: 1rem;
  font-size: 14px;
  color: #999;
}
.future_txt:last-child {
  margin-bottom: 0;
}

.btn_message {
  position: absolute;
  margin: -1rem 0 0 -2rem;
  transition: .1s;
}
.btn_message:hover {
  margin: 0;
}
@media screen and (max-width: 767px) {
  .future_content {
    flex-direction: column;
    padding: 7vw 6%;
    margin-bottom: 4vw;
  }
  .future_img,
  .future_txtBox {
    width: 100%;
  }
  .future_img {
    margin-bottom: 7vw;
  }
  .future_txt {
    margin-bottom: 1.6rem;
  }
  .btn_message {
    margin: 0;
  }
}

/* ===================
会社概要
====================== */
.company {
  position: relative;
  padding: 15rem 0;
}
.company::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff5fa;
  clip-path: polygon(0 65%, 100% 10%, 100% 100%, 0% 100%);
  content: "";
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .company::before {
    position: static;
  }
}

.gmap,
.company_pfofile {
  width: 48%;
}

.gmap {
  height: 355px;
}
.gmap iframe {
  height: 100%;
  width: 100%;
  }

.company_pfofile {
  padding: 0 4.5rem;
  color: #999;

}

.company_name {
  margin-bottom: 1rem;
  font-size: 2.4rem;
}

.profile_item {
  margin-bottom: 1rem;
}
.profile_item:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .company_content {
    flex-direction: column;
  }
  .gmap,
  .company_pfofile {
    width: 100%;
  }
  .gmap {
    height: 88vw;
    margin-bottom: 10vw;
  }
  .company_pfofile {
    padding: 14vw 6%;
  }
  .profile_item {
    margin-bottom: 0;
  }
}







