@charset "utf-8";
/* 基本色 */
:root{
	--main-color: #eee8d6;
	--accent-color: #e6c79a;
	--accent-color: #c19d9a;
	--accent-color: #534151;
  --accent-color: rgb(236, 228, 231);
  --accent-color: #293d46;
}

html, body {
  height: 100%;
}
/* h1 */
.glowAnime span{opacity: 0;}

/*アニメーションで透過を0から1に変化させtext-shadowをつける*/
.glowAnime.glow span{
  animation:glow_anime_on 1.2s ease-out forwards;
}

@keyframes glow_anime_on{
	0% { opacity:0; text-shadow: 0 0 0 #fff,0 0 0 #fff;}
	50% { opacity:1;text-shadow: 0 0 10px #fff,0 0 15px #fff; }
	100% { opacity:1; text-shadow: 0 0 0 #fff,0 0 0 #fff;}
}

.delay-time8{  
  animation-delay: 8s;
}

.circle{
  width: 150px;
  height: 150px;
  position: absolute;
  top: 20%;
  left: 46%;
  animation: 15s linear infinite rotation;
}
.circle img{
  width: 100%;
  z-index: 5;
}

@keyframes rotation{
  0%{transform: rotate(0deg);}
  100%{transform: rotate(360deg);}
}

/*スクロールダウン全体の場所*/
.scrolldown1{
  /*描画位置※位置は適宜調整してください*/
  position:absolute;
  left:50%;
  bottom:10px;
  /*全体の高さ*/
  height:50px;
}

/*Scrollテキストの描写*/
.scrolldown1 span{
  /*描画位置*/
  position: absolute;
  left:-19px;
  top: -15px;
  /*テキストの形状*/   
  color: #293d46;
  font-size: 1rem;
  letter-spacing: 0.05em;
}

/* 線の描写 */
.scrolldown1::after{
  content: "";
  /*描画位置*/
  position: absolute;
  top: 0;
  /*線の形状*/  
  width: 1px;
  height: 40px;
  background: #293d46;
  /*線の動き1.4秒かけて動く。永遠にループ*/
  animation: pathmove 1.4s ease-in-out infinite;
  opacity:0;
}

/*高さ・位置・透過が変化して線が上から下に動く*/
@keyframes pathmove{
0%{
  height:0;
  top:0;
  opacity: 0;
}
30%{
  height:30px;
  opacity: 1;
}
100%{
  height:0;
  top:50px;
  opacity: 0;
}
}

/*========= ナビゲーションのためのCSS ===============*/

#g-nav{
  /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
  position:fixed;
  z-index: 999;
  /*ナビのスタート位置と形状*/
  top:0;
  right:-100%; 
  width:30%;
  height: 100vh;     /*ナビの高さ*/
  background:rgba(236, 228, 231,.9);
  /*動き*/
  transition: all 1s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
  right: 0;
}

/*ナビゲーション*/
#g-nav ul {
  width: 100%;
  /*ナビゲーション天地中央揃え*/
  position: absolute;
  flex-direction: column;
  z-index: 999;
  top:50%;
  left:50%;
  transform: translate(-50%,-50%);
}

/*リストのレイアウト設定*/

#g-nav li{
  list-style: none;
  text-align: center; 
  width: 100%;
  margin: auto;
}

#g-nav li a{
  color: #534151;
  text-decoration: none;
  padding:10px;
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: bold;
}
#g-nav li a:hover{
  background-color: #eee8d6;
}
#g-nav li a:hover::after{
  background-color: rgba(224, 182, 169, .5);

}

/*========= ボタンのためのCSS ===============*/
.openbtn1{
  position:fixed;
  z-index: 9999;/*ボタンを最前面に*/
  top:10px;
  right: 10px;
  cursor: pointer;
  width: 50px;
  height:50px;
}

/*×に変化*/  
.openbtn1 span{
  display: inline-block;
  transition: all .5s;
  position: absolute;
  left: 14px;
  height: 3px;
  border-radius: 2px;
  background-color: #534151;
  width: 45%;
}

.openbtn1 span:nth-of-type(1) {
  top:20px; 
}

.openbtn1 span:nth-of-type(2) {
  top:28px;
}

.openbtn1 span:nth-of-type(3) {
  top:36px;
}

.openbtn1.active span:nth-of-type(1) {
  top: 18px;
  left: 18px;
  transform: translateY(6px) rotate(-45deg);
  width: 30%;
}

.openbtn1.active span:nth-of-type(2) {
  opacity: 0;
}

.openbtn1.active span:nth-of-type(3){
  top: 30px;
  left: 18px;
  transform: translateY(-6px) rotate(45deg);
  width: 30%;
}

/*==================================================
ふわっ
===================================*/

/* その場で */
.fadeIn{
  animation-name:fadeInAnime;
  animation-duration:2.2s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  
  @keyframes fadeInAnime{
    from {
    opacity: 0;
    }
  
    to {
    opacity: 1;
    }
  }
  
  /* 下から */
  
  .fadeUp{
  animation-name:fadeUpAnime;
  animation-duration:1.5s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  
  @keyframes fadeUpAnime{
    from {
    opacity: 0;
    transform: translateY(50px);
    }
  
    to {
    opacity: 1;
    transform: translateY(0);
    }
  }
  
  /* 上から */
  
  .fadeDown{
  animation-name:fadeDownAnime;
  animation-duration:1s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  
  @keyframes fadeDownAnime{
    from {
    opacity: 0;
    transform: translateY(-100px);
    }
  
    to {
    opacity: 1;
    transform: translateY(0);
    }
  }
  
  /* 左から */
  
  .fadeLeft{
  animation-name:fadeLeftAnime;
  animation-duration:1s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  
  @keyframes fadeLeftAnime{
    from {
    opacity: 0;
    transform: translateX(-100px);
    }
  
    to {
    opacity: 1;
    transform: translateX(0);
    }
  }
  
  /* 右から */
  
  .fadeRight{
  animation-name:fadeRightAnime;
  animation-duration:1s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  
  @keyframes fadeRightAnime{
    from {
      opacity: 0;
    transform: translateX(100px);
    }
  
    to {
    opacity: 1;
    transform: translateX(0);
    }
  }
  
  /* スクロールをしたら出現する要素にはじめに透過0を指定　*/
   
  .fadeInTrigger,
  .fadeUpTrigger,
  .fadeDownTrigger,
  .fadeLeftTrigger,
  .fadeRightTrigger{
    opacity: 0;
  }
  
/*==================================================
じわっ
===================================*/

/* ぼかしから出現 */
.blur{
  animation-name:blurAnime;
  animation-duration:1s;
  animation-fill-mode:forwards;
}

@keyframes blurAnime{
  from {
  filter: blur(10px);
  transform: scale(1.02);
  opacity: 0;
  }

  to {
  filter: blur(0);
  transform: scale(1);
  opacity: 1;
  }
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.blurTrigger{
    opacity: 0;
}

/* website */
.web{
  width: auto;
  border: 1px solid rgb(225, 210, 208);
  border-radius: 10px 0 10px 0;
  padding: 10px;
}
.weburl {
  padding-bottom: 50px;
}
.weburl a{
  text-decoration:none;
  background-image: linear-gradient(rgba(0, 0, 0, 0) 50%, rgba(225, 210, 208, 1) 50%);
  background-position: 0 0;
  background-size: auto 200%;
  transition: .3s;
}
.weburl a:hover{
  background-position: 0 100%;
  color: #fff;
}


/* pagetop */
#pagetop{
	position: fixed;
	bottom: 10px;
	right: 10px;
}
#pagetop a{
	border-radius: 35px;
	color: rgba(83, 65, 81,.9);
	width: 70px;
	height: 70px;
	display: block;
	text-decoration: none;
	padding: 15px;
	margin: 10px;

}
#pagetop a::after{
	content: "";
	display: block;
	position: absolute;
	top: 45%;
	left: 49%;
	width: 55px;
	height: 55px;
	background-color: rgba(240, 211, 188,0.5);
	border-radius: 50%;
	transform: translate(-50%, -50%) scale(0, 0);
	transition: transform ease 0.4s;
}
#pagetop a:hover::after{
	transform: translate(-50%, -50%) scale(1.1, 1.1);
}



/* スマホ対応 */
@media (max-width:768px){
/*========= ナビゲーションのためのCSS ===============*/

#g-nav{
  width:100%;
  height: 100vh;     /*ナビの高さ*/
  /*動き*/
  transition: all 1s;
}
.circle{
  width: 120px;
  height: 120px;
  top: 20%;
  left: 60%;
  animation: 15s linear infinite rotation;
}


}

/* *{border: 1px solid #000;} */