/* CSS Document */

*{
		margin:0px;
		padding:0px;
		
	}
	
	

	
	body{
		
		width:100%;
		height:auto;
		background-color:#fff;
		font-size: 15px;
		line-height:1.6em;
		color:#333;
		font-family: "Kosugi Maru", sans-serif;
  font-weight: 400;
  font-style: normal;
	}
	
	h2,h4{
		
		margin:5px 0px;
		text-align:center;
		font-size:18px;
	}
	
		
	p{
		
		line-height: 2em;
		text-align: center;
		margin-bottom:10px;
	}
	
	span.marker {
    
	    background: linear-gradient(transparent 70%, #ffff00 70%);
        font-weight:bold;
	
	}
	
	
	#header{
		
		font-size:5px;
		padding: 10px;
		margin: 0px 0px 30px 0px;
	}
	
	#footer{
		width:100%;
		padding:10px 0px;
		background-color:#513B3B;
		text-align:center;
		color:#ffffff;
		overflow: hidden;
	}
	
	#top{
		
		width:100%;
		margin:0 auto;
		margin-bottom:50px;
		text-align: center;
		
	}
	
	#contents{
		text-align: center;
		
	}
	
	#main{
		
		width: 100%;
		position: relative;
		background-image:url("../sozai/animal/back2.jpg");
		background-color:#F1EFE4;
		background-repeat: repeat;
		margin:30px auto;
		padding: 0px;
		text-align: center;
		overflow: hidden;
	}
	
	@keyframes side-scroll{
   0%{transform: translateX(0);}
  50%{opacity: 1;}
 100%{opacity: 0; transform: translateX(-80vw);}
 }
	
	
.fusen_right,.fusen_left{
 width: 300px;
 display: block;
 position: fixed;
 z-index: 9999;
 top:10%;
 right: 0px;
 animation: floating-y 2s linear infinite alternate-reverse;      
	}
	
.fusen_left{
 

 left: 0px;
        
	}
	
@keyframes floating-y {
  0% {
    transform: translateY(-5%);
  }
  100% {
    transform: translateY(5%);
  }
}	
	
/* ローディング */	
	
	#loading {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100vh;
  z-index: 99999;
  background: #fff;
  text-align: center;
}
#loading_box {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#loading .kvArea {
  width: 100%;
}
#loading .kvArea .img_box {
  text-align: center;
}
#loading .kvArea .img_box img {
  max-width: 30%;
  height: auto;
}

#loading p{

	font-weight:bold;
	font-size:25px;
	text-align: center;
}

.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 1.2s;
  animation-delay: 1.2s;
  animation-fill-mode: forwards;
  opacity: 1;
}

@keyframes fadeUpAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-100px);
  }
}
	

/* コンテンツ */
	
	
	
	
	
	.pc{
		
		display:none;
	}

	
	
		
	.contents_txt{
		
		width:60%;
		margin:80px auto 10px;
		
		}
	
	
	
	.contents_txt p{
		
		text-align: center;
		
	}
	
		.contents_box{
		
		width:50%;
		margin:50px auto;
		padding:50px;
		background-color:#FFFFFF;
		border-radius: 30px;
       	box-sizing: border-box;
		overflow: hidden;
		text-align: center;
		
		
	}
	
	
	.comment_txt{
		
	width:60%;
	margin: 0px auto;
	
	}
	
		
	.comment_txt p{
		
		margin:0px auto 20px;
		text-align: left;
	}
	
	.contents_box img{
		
		width:100%;
		margin: 15px auto;
        display: block;
	}
	
	.img_50{
			
			width:50%!important;
		    
		}
		
	
	.aniban{
		
		margin:20px 0px;
		text-align: center;
		font-weight:bold;
	}
	
	.image_link{
  display:block;
  text-align: center;
}
.image_link img{
  transition:0.3s;
  display:block;
  border:1px #ccc solid;
  width:30%;
  margin:10px auto;
}
.image_link:hover img{
  opacity:0.5;
  
}
	
	.yorosiku img{
		
		width:450px;
	}
	
/*　ボタン */	
	
	a.btn_04 {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 120px;
	margin: 20px auto;
	padding: 1rem 4rem;
	font-weight: bold;
	border: 2px solid #27acd9;
	background: #27acd9;
	color: #fff;
	border-radius: 100vh;
	transition: 0.5s;
}
a.btn_04:hover {
	color: #27acd9;
	background: #fff;
}


/*　ヒストリー */	

h1 {
  padding: 1rem 2rem;
  border-top: 6px double #666;
  border-bottom: 6px double #666;
  font-size:20px;
}
	

/*　商品スライダー矢印 */	

	.slider{
		
		width:100%;
		margin:0px auto;
	}	
	
/**矢印の位置を内側に移動*/

.slick-prev {

left: 10px !important;

}
/*アニマルディクショナリーサムネ調整*/
	.animal_d{
				
				width:60%!important;
			}

.slick-next {

right: 10px !important;

}

 /*矢印の色を変更*/

.slick-prev:before,

.slick-next:before {


color: #333 !important;

}

 /*下に潜っているかもしれない画像の上に矢印を持ってくる*/



.slick-prev,.slick-next {

z-index: 100;
top:100%!important;

}	

/*アニマルディクショナリー*/

.yoko{

  display: flex;

	}
	
  .yoko li {
    list-style: none;
  }



/*　パレード */	
	
.bg-image-loop {
	width: 100%;
	height: 200px; /* 画像の高さを指定 */
	position: relative;
	background: url("../sozai/animal/pare-do2.png") repeat-x 0 0;
	background-size: auto 100%;
	animation: bg-slider 46s linear infinite; /* 23sの部分背景画像の約数だとスムーズ */
	margin: 10px 0px;
	padding: 0px;
}
@keyframes bg-slider {
	from { background-position: 0 0; }
    to { background-position: -1000px 0; } 
}	
	
	/*　地球 */	
	.earth{
	
	
	animation:20s linear infinite rotation1;
	margin-bottom:20px;
	}
	
	@keyframes rotation1{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(-360deg); }
}
	
/*　フェードイン */
	
.fadein {
    opacity: 0;
    transform: translate(0,0);
	transition: all 1.5s; }
		
.fadein-left{
      transform: translate(-30px,0);
  }

.fadein-right{
      transform: translate(30px,0);
  }

.fadein-up{
      transform: translate(0,-30px);
  }

.fadein-bottom{
      transform: translate(0,30px);
  }
.scrollin{
    opacity: 1 !important;
    transform: translate(0, 0) !important;
  }

	
	

/* スクロールダウンの位置 */
.scroll_down {
  padding-top: 60px;
  position: relative;
  text-align: center;
  font-weight:bold;
}
/* 矢印のアニメーション部分 */
.scroll_down::before {
  animation: scroll 2s infinite;
  border-bottom: 1px solid #000;
  border-left: 1px solid #000;
  content: "";
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}
/* 矢印のアニメーション */
@keyframes scroll {
  0% {
    opacity: 0;
    transform: rotate(-45deg) translate(0, 0);
  }
  40% {
    opacity: 1;
  }
  80% {
    opacity: 0;
    transform: rotate(-45deg) translate(-20px, 20px);
  }
  100% {
    opacity: 0;
  }
}


@media screen and (max-width:1024px) {
		
		#main{
		
		width:100%;
		background-size: 30%;
	}
	
	
	.fusen_right,.fusen_left{
		
	width:25%;
	top:auto;
	bottom:-5%;
	
	}
	
	.fusen_right{
		
		right:-9%;
	}
	
	.fusen_left{
		
		left:-9%;
		
	}
		
		.contents_box,.comment_txt{
	
		width:60%;
		}
	
	#loading .kvArea .img_box img {
  max-width: 60%;
  height: auto;
}
	
	
	}	
	
	
@media screen and (max-width : 415px ){
	
	
	p{
	   text-align: left;	
	}
	
	h1{
		
		font-size:18px;
	}
	
	#footer{
		
		font-size:10px;
	}
	
	#main{
		
		width:100%;
		background-size: 30%;
		
	}
	
	.fusen_right,.fusen_left{
		
	width:25%;
	top:auto;
	bottom:-5%;
	
	}
	
	.fusen_right{
		
		right:-9%;
	}
	
	.fusen_left{
		
		left:-9%;
		
	}
		
	
	
	.scroll_down{
		
		margin-bottom:20px;
	}
	    
	.sp {
        display: none;
    }

	.pc{
		
		display:initial;
	}
	
	.contents_txt p{
	   text-align: left;	
	}
	
	.contents_box,.comment_txt{
	
		width:85%;
		margin: 20px auto;
		padding:20px;
		text-align:left;
	}
	
	#loading .kvArea .img_box img {
  max-width: 80%;
  height: auto;
}
	.aniban p{
		
		text-align: center;
	}
	
	.aniban img{
		
		width:90%;
		
	}
	
	.yorosiku img{
	
		width:80%;
		
	}
	
	.slick-prev,.slick-next {

top: 100% !important;

}

	
}
