
/* font-family: 'Zen Kurenaido', sans-serif; */
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Dancing+Script&family=Klee+One&family=Zen+Kurenaido&display=swap');
/* font-family: 'Klee One', cursive; */




.wrap{
    height: auto;
    background-color: black;

}
img{
    width: 100%;
}


#fade{
  position: fixed;
  top:0;
  left: 0;
  width: 100vw;
  height: 100vw;
  border-radius: 50vw;
  background-color: rgb(255, 255, 255);
  /* animation-name: fade;
  animation-fill-mode: both;
  animation-duration: 2s;
  animation-delay: 1s; */
  background-image: url(../img/slide5.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  animation: 2s linear 1s 1 normal both running fade,24s linear 0s infinite normal both running pic;
/* @keyframes duration | timing-function | delay |
iteration-count | direction | fill-mode | play-state | name */
}
@keyframes fade{
  0%{
    width: 10vw;
    height: 10vw;
    border-radius: 5vw;   
  }
  100%{
    top: -100vw;
    width: 200vw;
    height: 200vw;
    border-radius: 100vw;
  }

}
#fade2{
  position: fixed;
  top:0;
  left: 0;
  width: 100vw;
  height: 100vw;
  border-radius: 50vw;
  background-color: rgb(255, 255, 255);
  animation:3s linear 0s 1 normal both running pic2,24s linear 6s infinite normal both running pic;
  background-image: url(../img/slide6.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  top: -100vw;
  width: 200vw;
  height: 200vw;
  border-radius: 100vw;
  opacity: 0;
}
#fade3{
  position: fixed;
  top:0;
  left: 0;
  width: 100vw;
  height: 100vw;
  border-radius: 50vw;
  background-color: rgb(255, 255, 255);
  animation:3s linear 0s 1 normal both running pic2,24s linear 12s infinite normal both running pic;
  background-image: url(../img/slide7.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  top: -100vw;
  width: 200vw;
  height: 200vw;
  border-radius: 100vw;
  opacity: 0;
}
#fade4{
  position: fixed;
  top:0;
  left: 0;
  width: 100vw;
  height: 100vw;
  border-radius: 50vw;
  background-color: rgb(255, 255, 255);
  animation:3s linear 0s 1 normal both running pic2,24s linear 18s infinite normal both running pic;
  background-image: url(../img/slide8.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  top: -100vw;
  width: 200vw;
  height: 200vw;
  border-radius: 100vw;
  opacity: 0;

}
#fade5{
  position: fixed;
  background-color: rgb(255, 255, 255);
  top: -100vw;
  width: 200vw;
  height: 200vw;
  border-radius: 100vw;
  animation:3s linear 0s 1 normal both running pic2;
}

@keyframes pic2{
  0%{
    z-index: -1;
  }
  99.9%{
    z-index: -1;
  }
  100%{
    z-index: 0;
  }
}
@keyframes pic{
  0%{
    opacity: 1;
  }
  13%{
    opacity: 1;
  }
  25%{
    opacity: 0;
  }
  87%{
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}



header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: transparent;
    z-index: 9999;
    animation-name: mozi;
    animation-fill-mode: both;
    animation-delay: 1s;
    animation-duration: 1s;
}
header h1{
    font-size: 2.5vw;
    margin: 1vw;
    font-family: 'Bebas Neue', cursive;
    letter-spacing: 1.4vw;
    color: rgb(0, 0, 0);
}
header p{
  font-size: 1.4vw;
  font-family: 'Klee One', cursive;
  margin-left: 5vw;
}
#Nav{
  width: 7%;
  position: fixed;
  top: 0;
  right: 0;
}
nav ul{

  padding-top: 6vw;
}
nav ul li{
  width: 5vw;
  margin-top: 2vw;

}
nav ul li a{
  text-align: right;
  display: block;
  color: rgb(0, 0, 0);
  font-family: 'Zen Kurenaido', sans-serif;
  font-size: 1.5vw;
  transition: all 0.3s;
}
#Nav a:hover{
  opacity: 0.5;
}
button.hicon {
    position: fixed;
    top:2.9vw;
    right:3.6vw;
    background-color: transparent;
    border: none;
    z-index: 9999;
  }
  button.hicon span {
    display: block;
    margin-top: 1.7vw;
    height: 0.5vw;
    width: 5vw;
    border-radius: 0.1vw;
    background-color: #000000;
    transition: all 1s;
  }
  
  button.hicon span:first-of-type {
    margin-top: 0;
  }
  button.hicon.is-active span:nth-last-of-type(2){
    opacity: 0;
  }
  button.hicon.is-active span:first-of-type{
    transform: translateY(3vw) rotate(765deg);
  }
  button.hicon.is-active span:last-of-type{
    transform: translateY(-1.15vw) rotate(-765deg);
  }
#gNav {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  /*overflow-y: scroll;*/
}

#gNav ul {
  display: none;
  padding-left: 0;
  padding-top: 0;
  width: 100%;
  height: 100vh;
  margin-left: 0 ;
  flex-wrap: wrap;
  background-image: url(../img/hana3.png);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}
#gNav li{
    color: #ffffff;
    border-bottom: 1px solid #ffffff;
    height: auto;
    margin-top: 0;
    width: 100%;
}
#gNav li a {
    color: #ffffff;
  text-decoration: none;
  display: block;
  height: 100%;
  margin: 0 auto;
  padding: 4vh 0;
  font-size: 6vw;
  position: relative;
  text-align: center;
}
#gNav li:nth-of-type(1) a{
  padding: 8vh 0 3vh 0;
  font-size: 4vw;
}
#gNav li:nth-of-type(5),#gNav li:nth-of-type(6){
  border: none;
}
#gNav li:nth-of-type(6) a{
  padding: 3vh 0;
  margin: 0 auto 3vh auto;
  width: 80%;
  height: 80%;
  border: 1px solid white;
}

/* ここからトップ */
  #top{
    padding: 10% 1%;
    font-family: 'Klee One', cursive; 
    writing-mode: vertical-lr;
    animation-name: mozi;
    animation-fill-mode: both;
    animation-delay: 1s;
    animation-duration: 1s;
    position: relative;
    color: rgb(0, 0, 0);
    margin-left: 4%;
    font-size: 1.1vw;
  }
  @keyframes mozi{
    0%{
      opacity: 0;
    }
    100%{
      opacity: 1;
    }
  }
  #top div{
    width: 1px;
    height: 150vh;
    border-left: 1px solid rgb(107, 107, 107);
    position: absolute;
    top: 30%;
    left: 48%;
  }





/* ここまでトップ */


/* ここからコンセプト */
section{
  position: relative;
  height: 100vh;
}
#concept{
    width: 95%;
    height: 300vh;
    position: relative;
    font-size: 200%;
    margin: 0 auto;
}
 #concept div{
    width: 30%;
}
#concept div:nth-child(1),#concept div:nth-child(8),#concept div:nth-child(3),#concept div:nth-child(4),#concept div:nth-child(5),#concept div:nth-child(6),#concept div:nth-child(2),#concept div:nth-child(9){
    position: absolute;
    top: 5%;
    left: 0;

    width: 30%;
    box-shadow: 1px 1px 5px black;
}
#concept div:nth-child(8){
    left: 3%;
    top: 30%;
}
#concept div:nth-child(2){
  left: auto;
  top: 30%;
  right: 0%;
}
#concept div:nth-child(3){
  left: auto;
  top: 30%;
  right: 10%;

}
#concept div:nth-child(5){
  left: 10%;
  top: 40%;
}
#concept div:nth-child(4){
left: 0;
top: 60%;

}
#concept div:nth-child(5) img{
transform: scale(-1, 1);
}
#concept div:nth-child(6){
left: auto;
top: 60%;
right: 0;

}
#concept div:nth-child(9){
  left: auto;
  top: 60%;
  right: 3%;

  }
#concept div:nth-of-type(7){
    text-align: center;
    color: rgb(0, 0, 0);
    background-color: rgb(255, 255, 255);
    width: 44vw;
    height: 85vw;
    margin: 0 auto;
    padding: 2vw 0;
    box-shadow: 1px 1px 5px black;
}
#concept div:nth-of-type(7) div{
  border: 1px solid black;
  width: 40vw;
  height: 81vw;
  box-shadow: none;
  margin: -2.2vw 2vw;
}
#concept div:nth-of-type(7) h2{
  font-size: 2vw;
  font-family: 'Zen Kurenaido', sans-serif;
  padding-top: 3%;

}
#concept div:nth-of-type(7) p{
  font-size: 1.5vw;
  margin: 3vw auto 0 auto;
  line-height: 3vw;
  font-family: 'Klee One', cursive; 
}




/*
#consept{
    perspective: 500px;
    height: 500px;
    overflow-x: hidden;
    overflow-y: auto;
    position: relative;
    font-size: 200%;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
  }
  .parallax_layer {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 400px 0;
  }
  .parallax_layerbase {
    transform: translate3d(0);
  }
  .parallax_layerback {
    transform: translate3d(-1px);
  }
  
  .title {
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      color: white;
  }

/* ここまでコンセプト */


/* ここからFlower */
#flower{
  padding: 5% 9% 0 3%;
  height: 100vw;
}
#flower h2{
  margin: 3%;
  font-family: 'Bebas Neue', cursive;
  position: absolute;
  top: 5%;
  right: 12%;
  font-size: 15vw;
  writing-mode: vertical-lr;
}

#flower div{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#flower div div:nth-of-type(1) a{
  width: 30%;
  box-shadow: 10px 10px 0 black;
  position: relative;
  background-image: url(../img/hana5.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: 00%;
  left: 5%;
  transition: all 1s;
}
#flower div div:nth-of-type(2) a{
  width: 30%;
  box-shadow: 10px 10px 0 black;
  position: relative;
  background-image: url(../img/hana6.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: 30%;
  left: 30%;
  transition: all 1s;
}
#flower div div:nth-of-type(3) a{
  width: 30%;
  box-shadow: 10px 10px 0 black;
  position: relative;
  background-image: url(../img/hana7.png);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: 60%;
  left: 55%;
  transition: all 1s;
}

#flower div div:nth-of-type(3) a:hover,#flower div div:nth-of-type(2) a:hover,#flower div div:nth-of-type(1) a:hover{
  animation-name: hov;  
  animation-fill-mode: both;
  animation-duration: 1s;
}
@keyframes hov{
  0%{
    background-size: 100%;
  }
  100%{
    background-size: 120%;
  }
}

/* #flower div div a{

} */


#flower div div a img{
  opacity: 0;
}

#flower div div h3{
  position: absolute;
  top:40%;
  left: 30%;
  font-family: 'Bebas Neue', cursive;
  color: rgb(0, 0, 0);
  font-size: 3vw;
}







/* ここまでFlower */



/* ここからアクセス */
#access{
  margin-top: 40%;
  height: 93vh;
  background-color: white;
  display: flex;
  flex-wrap: wrap;
}
#access h2{
  width: 100%;
  font-size: 2.5vw;
  text-align: center;
  margin: 1% 0;
  font-family: 'Bebas Neue', cursive;
  letter-spacing: 1.4vw;
}
#access div{
  width: 50%;
}
#access div:nth-of-type(1){
  padding-top: 10%;

}
#access div p{
  text-align: center;
}
#access div img{
  width: 80%;
  margin: 0 auto;
}


/* ここからアクセス */




/* ここからフッター */
footer{
  position: relative;
  height: 7vh;
  display: flex;
  flex-wrap: wrap;
  background-color: gray;
}
footer address{
  width: 50%;
  font-size: 1vw;
  color: #ffffff;
  font-style: normal;
  padding: 1% 5%;

}
footer p{
  display: block;
  width: 50%;
  font-size: 1vw;
  color: #000000;
  padding: 1% 5%;
  text-align: right;


}





/* ここまでフッター */


/* ここからflowerページ */

#fade6{
  background-color: white;
  position: fixed;
  top: -100vw;
  left: 0;
  width: 200vw;
  height: 200vw;
  border-radius: 100vw;
}
#flower1{
  padding-top: 10%;
  height: auto;
}
#flower1 > div{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 7% 8% 7% 6%;
}
#flower1 div div{
  width: 50%;
  text-align: center;

}
#flower1 div div:nth-of-type(2){
  width: 50%;
  padding: 3%;
}
#flower1 div div:nth-of-type(2) p{
  padding: 5%;
}
#flower1 > div:nth-of-type(2) div:nth-of-type(2){
  order: -1;
}
/* ここまでflowerページ */

/* ここからコンタクトページ */
.container{
    text-align: center;
    width: 50%;
    padding-top: 10%;
    margin: 0 auto;
    position: relative;
}

.require_item{
  color: #ffffff;
  background-color: rgb(255, 0, 0);
  padding: 0 1vw;
  margin-left: 1vw;
}
.container h2{
  width: 100%;
  font-size: 2.5vw;
  text-align: center;
  margin: 3% 0;
  font-family: 'Bebas Neue', cursive;
  letter-spacing: 1.4vw;

}
.form-group{
  margin-top: 5%;
}
.row{
  display: flex;
  flex-wrap: wrap;
}
.col-2{
  width: auto;
  margin-bottom: 5%;
}
.col-md-8,.col-8{
  width: 100%;
}
input{
  width: 100%;
  height: 50px;
}
textarea{
  width: 100%;
}
button{
  margin-top: 5%;
  padding: 1% 3%;
  border: none;

}
button:hover{
  opacity: 0.5;
  cursor: pointer;
}
.error_msg{
  color: red;
}

/* ここまでコンタクトページ */







/* ここからレスポンシブ */
@media only screen and (min-width:600px) {
  .hicon{
    display: none;
  }









  }

  @media only screen and (max-width:599px) {
    #Nav{
      display: none;

    }
  @keyframes fade{
    0%{
      width: 10vw;
      height: 10vw;
      border-radius: 5vw;
      
    }
    100%{
      top: -80vh;
      left: -10%;
      width: 200vh;
      height: 200vh;
      border-radius: 100vh;
  
    }
  
  }
  #fade2,#fade3,#fade4,#fade5,#fade6{
    top: -80vh;
    left: -10%;
    width: 200vh;
    height: 200vh;
    border-radius: 100vh;
  }
  header h1{
    font-size: 10vw;
    margin-left: 3vw;
  }
  header p{
    font-size: 4vw;
    margin-left: 5vw;
  }
  button.hicon{
    margin-top: 0;
    right: 0vw;
    top: 0;
    padding: 0;
    width: 15vw;
    height: 12vw;
  }
  button.hicon span{
    width: 7vw;
    height: 1.2px;
    margin: 2vw auto 0 auto;
  }
  button.hicon.is-active span:first-of-type{
    transform: translateY(3.2vw) rotate(765deg);
  }
  button.hicon.is-active span:last-of-type{
    transform: translateY(-1.6vw) rotate(-765deg);
  }
  section{
    height: 100vh;
  }
  #top{
    padding-top: 30%;
  }
  #top p{
    font-size: 15px;
  }
  #top div{
    top: 20%;
  }
  #concept{
      width: 100%;
      height: auto;
      position: relative;
      font-size: 200%;
      display: flex;
      flex-wrap: wrap;
      background-color: white;
      padding: 20px 0 100px 0;
  }
  #concept div h2{
    color: rgb(199, 199, 199);
  }
  #concept div{
    line-height: 4.5vh;
    font-family: 'Klee One', cursive; 
  }
body .wrap #concept div.smaho{
  width: 72%;
  height: 180px;
  position: unset;
  overflow: hidden;
  margin: 3%;
  padding: 0;
  box-shadow: none;
}
body .wrap #concept div:nth-of-type(1),body .wrap #concept div:nth-of-type(6){
  height: auto;
  width: 100%;
  box-shadow: none;
  text-align: center;
  padding: 3%;
}
body .wrap #concept div:nth-of-type(1) h2,body .wrap #concept div:nth-of-type(6) h2{
  font-size: 25px;
  font-weight: bold;
  margin-bottom: 20px;
}
body .wrap #concept div.smaho:nth-of-type(1) p,body .wrap #concept div:nth-of-type(6) p{
  font-size: 15px;
}
body .wrap #concept div.aida{
  width: 20%;
  height: 180px;
  position: unset;
  box-shadow: none;
}
#access{
  margin-top: 100vh;
}
#access h2{
  padding-top: 100px;
  font-size: 25px;
}
#access div{
  width: 100%;
  padding: 3%;
}
#access div p{
  font-size: 10px;
}
#access div img{
  height: 100%;
  margin: 0 auto;
  display: block;
}
#flower1{
  padding-top: 20%;
}
#flower1 div div{
  width: 100%;

}
#flower1 div:nth-of-type(2) div{
  order: -1;
}
.container{
  width: 90%;
  padding-top: 25%;
}
.container form h2{
  font-size: 25px;
}




}
/* ここまでレスポンシブ */