@charset "utf-8";
/* CSS Document */
.zoomanim{animation: fadezoom 20s linear forwards;}
@keyframes fadezoom{
  0%{transform: scale(1);}
  100%{transform: scale(1.2);}
}

.skr_keywrap{position: relative;}
.skr_keyvisual{
  display: none;
  text-align: center;
}
.skr_keyvisual.slick-initialized{display: block;} /*slick-initializedが付与されたら表示*/
.skr_keyvisual::before{
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: rgba(0,0,0,0.2);
  z-index: 10;
}
.skr_keyvisual p{
  position: relative;
  height: 660px;
  overflow: hidden;
}
.skr_keyvisual p picture{
  position: absolute;
  left: calc(50% - 960px);
  top: 0;
  height: 100%;
}
.skr_keyvisual img{height: 100%;}
.skr_catchcopy{
  position: absolute;
  top: 40%;
  left: calc(50% - 672px);
  z-index: 20;
  padding-right: 16px;
}
.skr_catchcopy div{overflow: hidden;}
.skr_catchcopy div p{
  display: inline-block;
  overflow: hidden;
  transform: translateX(-110%);
  transition: all 0.25s linear;
}
.skr_catchcopy div span{
  display: inline-block;
  transform: translateX(110%);
  transition: all 0.25s linear;
}
.skr_catchcopy div img{max-width: 100%;}

.skr_catchcopy.active div p,
.skr_catchcopy.active div span{transform: translate(0);}



 section h2{
  letter-spacing: 0.01em;
  font-family: "Libre Franklin";
  font-size: 5.375rem;
  color: #383935;
}




.skr_about{
  position: relative;
  padding: 174px 0 302px;
  overflow: hidden;
}
.skr_about::before{
  content: "";
  position: absolute;
  display: block;
  left: 0;
  top: 0;
  width: 100%;
  height: 770px;
  background: linear-gradient(100deg, #EFF7F9 0%, #F7F1ED 25%, #EFF7F9 50%, #F7F1ED 75%, #EFF7F9 100%) 0% center/200%;
  background-size: 200%;
  transform: skewY(5deg) translateY(-64px);
  opacity: 0.8;
  animation: bgpos 3.5s linear infinite;
}
.skr_about .skr_innerwrap{
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  z-index: 1;
}
.skr_about h2{
  transform: translateY(20px);
  transition: all 0.25s linear;
  opacity: 0;
}
.skr_about p{
  width: 512px;
  line-height: 1.8;
  letter-spacing: 0.01em;
  color: #383935;
  transform: translateY(20px);
  transition: all 0.25s linear 0.2s;
  opacity: 0;
}
.skr_about.active h2,
.skr_about.active p{
  transform: translateY(0);
  opacity: 1;
}



.skr_works{padding: 24px 0 80px;}
.skr_works h2{
  margin-bottom: 64px;
  transform: translateY(20px);
  transition: all 0.25s linear;
  opacity: 0;
}
.skr_works.active h2{
  transform: translateY(0);
  opacity: 1;
}
.skr_works figure{
  display: flex;
  justify-content: space-between;
}
.skr_works figure>p{
  width: 0;
  overflow: hidden;
  transition: all 0.25s linear;
}
.skr_works figure.active>p{width: 706px;}
.skr_works figure figcaption{width: 300px;}
.skr_works figure figcaption ul li:nth-last-of-type(n+2){margin-bottom: 13px;}
.skr_works figure figcaption ul li a{
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100px;
  padding-left: 32px;
  letter-spacing: 0.1em;
  font-size: 0.875rem;
  color: #383935;
  background: linear-gradient(135deg, #EFF7F9 0%, #F7F1ED 25%, #EFF7F9 50%, #F7F1ED 75%, #EFF7F9 100%) 0% center/200%;
  transform: translateY(20px);
  transition: transform 0.25s linear, opacity 0.25s linear;
  opacity: 0;
}
.skr_works figure figcaption ul li:nth-of-type(2) a{transition-delay: 0.1s;}
.skr_works figure figcaption ul li:nth-of-type(3) a{transition-delay: 0.2s;}
.skr_works figure figcaption ul li:nth-of-type(4) a{transition-delay: 0.3s;}
.skr_works figure.active figcaption ul li a{
  transform: translateY(0);
  opacity: 1;
}
.skr_works figure figcaption ul li a::after{
  content: "";
  position: absolute;
  display: block;
  width: 5px;
  height: 5px;
  right: 18px;
  top: calc(50% - 3px);
  border-radius: 2px;
  border-right: 2px solid #383935;
  border-bottom: 2px solid #383935;
  transform: rotate(-45deg) skew(3deg,3deg);
}



.skr_info{padding: 80px 0;}
.skr_info h2{
  margin-bottom: 100px;
  transform: translateY(20px);
  transition: all 0.25s linear;
  opacity: 0;
}
.skr_info.active h2{
  transform: translateY(0);
  opacity: 1;
}
.skr_info ul li{
  padding: 24px 0;
  transform: translateY(20px);
  transition: all 0.25s linear 0.2s;
  opacity: 0;
}
.skr_info ul li:nth-of-type(2){transition-delay: 0.3s;}
.skr_info ul li:nth-of-type(3){transition-delay: 0.4s;}
.skr_info ul li:nth-of-type(4){transition-delay: 0.5s;}
.skr_info ul li:nth-of-type(5){transition-delay: 0.6s;}
.skr_info.active ul li{
  transform: translateY(0);
  opacity: 1;
}
.skr_info ul li a{
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #E3E3E3;
}
.skr_info ul li:last-of-type{border-bottom: 1px solid #E3E3E3;}
.skr_info ul li div{
  display: flex;
  align-items: center;
}
.skr_infodate{
  width: 90px;
  letter-spacing: 0.01em;
  font-weight: 500;
  font-size: 0.875rem;
  color: #383935;
}
.skr_infocat{
  width: 100px;
  height: 24px;
  margin-right: 50px;
  padding-top: 3px;
  text-align: center;
  letter-spacing: 0.01em;
  font-size: 0.75rem;
  color: #668285;
}
.skr_infotxt{
  letter-spacing: 0.01em;
  color: #383935;
}
.skr_infolink{
  position: relative;
  width: 52px;
  height: 52px;
  padding-top: 10px;
  text-align: center;
  border-radius: 100%;
}
.skr_infolink img{
  position: relative;
  z-index: 1;
}
.skr_infolink img:last-of-type{display: none;}
.skr_infolink::before{
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: 50%;
  top: 50%;
  border-radius: 100%;
  background-color: #383935;
  transition: all linear 0.15s
}



.skr_message{padding: 80px 0 136px;}
.skr_message h2{
  margin-bottom: 100px;
  transform: translateY(20px);
  transition: all 0.25s linear;
  opacity: 0;
}
.skr_message.active h2{
  transform: translateY(0);
  opacity: 1;
}
.skr_message figure{
  display: flex;
  justify-content: space-between;
}
.skr_message figure figcaption{width: 496px;}
.skr_message figure figcaption h3{
  margin-bottom: 56px;
  letter-spacing: 0.01em;
  font-size: 2rem;
  font-weight: bold;
  color: #383935;
  transform: translateY(20px);
  transition: all 0.25s linear 0.2s;
  opacity: 0;
}
.skr_message figure figcaption>p{
  margin-bottom: 96px;
  line-height: 1.8;
  letter-spacing: 0.01em;
  color: #383935;
  transform: translateY(20px);
  transition: all 0.25s linear 0.2s;
  opacity: 0;
}
.skr_message figure figcaption div a{
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 22px;
  letter-spacing: 0.01em;
  font-size: 1.25rem;
  font-weight: bold;
  color: #383935;
  border-bottom: 1px solid #E3E3E3;
  transform: translateY(20px);
  transition: all 0.25s linear 0.2s;
  opacity: 0;
}
.skr_message figure figcaption div a p:last-of-type{
  position: relative;
  width: 52px;
  height: 52px;
  text-align: center;
  padding-top: 10px;
  border-radius: 100%;
}
.skr_message figure figcaption div a p:last-of-type::before{
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: 50%;
  top: 50%;
  border-radius: 100%;
  background-color: #383935;
  transition: all linear 0.15s;
}
.skr_message figure figcaption div a p img{
  position: relative;
  z-index: 1;
}
.skr_message figure figcaption div a p img:last-of-type{display: none;}

.skr_message.active figure figcaption h3,
.skr_message.active figure figcaption>p,
.skr_message.active figure figcaption div a{
  transform: translateY(0);
  opacity: 1;
}

.skr_message figure>div{
  position: relative;
  width: 460px;
}
.skr_message figure>div::after{
  content: "";
  position: absolute;
  display: block;
  right: -2%;
  top: -2%;
  width: 105%;
  height: 105%;
  background: url("img/il_sand.jpg") right top;
  transition: all 0.25s linear 0.2s;
  z-index: 1005;
}
.skr_message.active figure>div::after{width: 0;}


.skr_insta{
  display: none;
  position: relative;
  padding: 136px 0 172px;
}
.skr_instalink{
  position: absolute;
  right: calc(50% - 560px);
  top: 160px;
}
.skr_instalink a{
  display: block;
  width: 160px;
  height: 160px;
  padding-top: 38px;
  text-align: center;
  letter-spacing: 0.01em;
  font-family: "Libre Franklin";
  font-weight: bold;
  color: #FFFFFF;
  border-radius: 100%;
  background-color: #93B6C7;
  box-shadow: 0 3px 20px 0 rgba(0, 0, 0, 0.1);
}
.skr_instalink a p{margin-top: 20px;}




.skr_simulationbtn{
  position: fixed;
  display: none;
  right: calc(50% - 555px);
  bottom: 42px;
  z-index: 10;
}
.skr_simulationbtn a{
  display: block;
  width: 180px;
  height: 180px;
  padding-top: 12px;
  text-align: center;
  font-size: 0.75rem;
  color: #FFFFFF;
  border-radius: 100%;
  border: 2px solid #E080A4;
  background: linear-gradient(#FFFFFF 0, #FFFFFF 118px, #E080A4 118px, #E080A4 180px);
  box-shadow: 0px 4px 16px 0 rgba(0, 0, 0, 0.16);
}
.skr_simulationbtn a p:first-of-type{
  text-align: center;
  font-size: 1.125rem;
  font-weight: bold;
  color: #E080A4;
}
.skr_simulationbtn a p:last-of-type{
  line-height: 1.2;
  text-align: center;
  font-size: 1.25rem;
  font-weight: bold;
  color: #FFFFFF;
}







@media screen and (min-width:821px){
  .skr_works figure figcaption ul li a:hover{
    color: #F16885;
    background: linear-gradient(90deg, #FFD4CE 0%, rgba(167, 212, 205, 0.5) 100%);
  }
  .skr_works figure figcaption ul li a:hover::after{border-color: #F16885;}

  .skr_info ul li a:hover .skr_infolink::before{
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
  }
  .skr_info ul li a:hover .skr_infolink img:last-of-type{display: inline;}
  .skr_info ul li a:hover .skr_infolink img:first-of-type{display: none;}

  .skr_message figure figcaption div a:hover p:last-of-type::before{
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
  }
  .skr_message figure figcaption div a:hover img:last-of-type{display: inline;}
  .skr_message figure figcaption div a:hover img:first-of-type{display: none;}

  .skr_instalink a:hover{opacity: 0.7;}

  .skr_simulationbtn a:hover{opacity: 0.7;}
}







@media screen and (max-width:1390px){
  .skr_catchcopy{left: 16px;}
}
@media screen and (max-width:1246px){
  .skr_keyvisual p{height: 58.4vw;}
  .skr_keyvisual p picture{left: calc(50% - 75vw);}
  .skr_simulationbtn{right: 68px;}
}
@media screen and (max-width:1074px){/*1056+スクロールバー*/
  .skr_works.active figure>p{width: 65.7vw;}
  .skr_works figure>p img{
    width: 65.7vw;
    height: 40.7vw;
  }
  .skr_works figure figcaption{width: 27.9vw;}
  .skr_works figure figcaption ul li:nth-last-of-type(n+2){margin-bottom: 1.2vw;}
  .skr_works figure figcaption ul li a{
    height: 9.3vw;
    padding-left: 2.9vw;
    font-size: 1.3vw;
  }

  .skr_message figure>div img{height: 470px;}
}
@media screen and (max-width:1040px){
  section h2{font-size: 8.2vw;}


  .skr_about::before{height: 74vw;}
  .skr_about{padding: 16.7vw 0 29vw;}
  .skr_about p{
    width: 47.7vw;
    font-size: 1.5vw;
  }




  .skr_message figure figcaption{width: 47.7vw;}
  .skr_message figure figcaption h3{
    margin-bottom: 5.4vw;
    font-size: 3vw;
  }
  .skr_message figure figcaption>p{
    margin-bottom: 9.2vw;
    font-size: 1.5vw;
  }
  .skr_message figure figcaption div a{
    padding-bottom: 2.1vw;
    font-size: 1.9vw;
  }
  .skr_message figure>div{width: 44.2vw;}
  .skr_message figure>div img{
    width: 44.2vw;
    height: 45.1vw;
  }
}
@media screen and (max-width:820px){
  .skr_keyvisual p{height: 450px;}
  .skr_keyvisual p picture{left: calc(50% - 592px);}


  .skr_info{padding: 40px 0;}
  .skr_info h2{margin-bottom: 32px;}
  .skr_info ul li{padding: 18px 0;}
  .skr_info ul li div{flex-wrap: wrap;}
  .skr_infodate{font-size: 0.75rem;}
  .skr_infotxt{
    width: 82%;
    margin-top: 12px;
    font-size: 0.875rem;
  }


  .skr_gotop{bottom: 16px;}
  .skr_simulationbtn{
    right: 20px;
    bottom: 72px;
  }
  .skr_simulationbtn a{
    width: 120px;
    height: 120px;
    background: linear-gradient(#FFFFFF 0, #FFFFFF 70px, #E080A4 70px, #E080A4 120px)
  }
  .skr_simulationbtn a p:first-of-type{font-size: 0.75rem;}
  .skr_simulationbtn a p:first-of-type img{width: 40px;}
  .skr_simulationbtn a p:last-of-type{
    padding-top: 12px;
    font-size: 0.75rem;
  }
  .skr_simulationbtn a p:last-of-type img{width: 40px;}
}
@media screen and (max-width:428px){
  .skr_catchcopy{top: 47%}

  section h2{
    margin-bottom: 32px;
    font-size: 2.5rem;
  }

  .skr_about::before{
    height: 660px;
    transform: skewY(5deg) translateY(-24px);
    background: linear-gradient(95deg, #EFF7F9 0%, #F7F1ED 25%, #EFF7F9 50%, #F7F1ED 75%, #EFF7F9 100%) 0% center/200%;
  }
  .skr_about .skr_innerwrap{flex-wrap: wrap;}
  .skr_about p{
    width: 100%;
    font-size: 0.875rem;
  }


  .skr_works{padding: 24px 0 40px;}
  .skr_works h2{margin-bottom: 32px;}
  .skr_works figure{flex-wrap: wrap;}
  .skr_works.active figure>p{
    width: 100%;
    margin-bottom: 10px;
  }
  .skr_works figure>p img {
    width: 91.4vw;
    height: 56.8vw;
  }
  .skr_works figure figcaption{width: 100%;}
  .skr_works figure figcaption ul{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .skr_works figure figcaption ul li{width: 48.5%;}
  .skr_works figure figcaption ul li a{
    height: 56px;
    padding-left: 8px;
    font-size: 0.75rem;
  }


  .skr_message{padding: 40px 0 152px;}
  .skr_message h2{margin-bottom: 32px;}
  .skr_message figure{
    flex-wrap: wrap;
    width: calc(100% + 32px);
    margin-left: -16px;
  }
  .skr_message figure>div{
    width: 100%;
    height: 64vw;
    margin-bottom: 48px;
    overflow: hidden;
    order: 1;
  }
  .skr_message figure>div .slick-list{top: -19.2vw;}
  .skr_message figure>div img{
    width: 100vw;
    height: 102.4vw;
  }
  .skr_message figure figcaption{
    width: 100%;
    padding: 0 16px;
    order: 2;
  }
  .skr_message figure figcaption h3{
    margin-bottom: 32px;
    font-size: 1.375rem;
  }
  .skr_message figure figcaption>p{
    margin-bottom: 56px;
    font-size: 0.785rem;
  }
  .skr_message figure figcaption div a{font-size: 1rem;}
}






