@charset "UTF-8";
/* CSS Document */

#by {
		font-family: Optima, Candara, 'Noto Sans', source-sans-pro, sans-serif;
		font-family:'Noto Sans JP', "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
		font-size: 12px;
		line-height: 2.0em;
	    overflow: hidden;
		width: 100%;
	    margin: 0 auto 5%;
		color: #000;
		background-color: #fff;
		
		
	}


img {
		width: 100%;
	    object-fit: cover;
}

a {
	text-decoration: none;
	color: #000;
}

ul,li {
	list-style: none;
	padding: 0;
	margin: 0;
	
}

#main_visual {
	display: block;
	margin: 20% auto 40%;
	position: relative;
}

#main_visual .main_ttl{
	width: 32%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    text-align: center;
}

#main_visual .main_ttl .read{
	margin: 10% auto;
}

#main_visual ul li:nth-child(1){
	transition: 2.5s all 0.6s ease;
	
}

#main_visual ul li:nth-child(2){
	transition: 2.5s all 0.3s ease;
}

#main_visual ul li:nth-child(3){
	transition: 2.5s all 0.9s ease;
}

#main_visual ul li:nth-child(4){
	transition: 2.5s all 1.2s ease;
}

#main_visual ul li:nth-child(5){
	transition: 2.5s all 1.8s ease;
}
#main_visual ul li:nth-child(6){
	transition: 2.5s all 1.5s ease;
}



@media only screen and (max-width: 768px){
	
	#main_visual {
	margin: 20% auto 40%;
	}
	
	#main_visual .main_ttl{
	width: 68%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	}
	
	#by .read2{
	margin: 50% auto 20%;
    width: 95%;
    text-align: center;
	}
	
}

#main_visual ul{
	display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 0;
 	row-gap: 0;
	width: 600px;
	margin: 0 10% 0 auto;
	
}

	


#main_visual ul li{
	margin: 0;
    padding: 0;
	
	
	
	
}




@media only screen and (max-width: 768px){
	
	#main_visual ul{
	width: 100%;
	}
	
	#main_visual ul li{
	
	}
	
}


#by .yt_area .yt_ttl{
	display: flex;
	justify-content: space-between;
    align-items: center;
	max-width: 1200px;
	margin: 10% auto 3%;
	
	
}

#by .yt_area .yt_ttl .babalog_ttl{
	width: 40%;
	margin: 0 auto
	
	
}


#main_title {
			position: relative;
	        
}

#main_title .video1 {
			max-width: 1200px;
			width: 80%;
			margin: 0 auto 12%;
			position: relative;
			box-sizing: border-box;
			/*filter: brightness(0.5);*/
}
		
#main_title .video1 iframe {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
}

#main_title .cms_ttl{
			position: absolute;
	        top: 50%;
    		left: 50%;
	        transform: translate(-50%, -50%);
	        width: 45%;
}

#YTWrap {
			position: relative;
			width:100%;
			margin: 0 auto;
			padding-top: 56.25%;
		}

#YTWrap iframe {
		  position: absolute;
		  top: 0;
		  right: 0;
		  width: 100%;
		  height: 100%;
		}

@media only screen and (max-width: 768px)  {
		#by .yt_area .yt_ttl{
			flex-direction: column;
			margin: 15% auto 3%;


		}

		#by .yt_area .yt_ttl .babalog_ttl{
			width: 70%;


		}
			#main_title .video1 {
				margin: 0 auto;
				width: 100%;
			}
	#main_title .cms_ttl{
				width: 70%;
		}
			
			
}

#by .item_area .look_ttl{
	display: flex;
    justify-content: space-between;
    width: 1100px;
    margin: 0 auto 3%;
	align-items: flex-end;
	
}

@media only screen and (max-width: 768px)  {
	#by .item_area .look_ttl{
	display: block;
    width: 100%;
    margin: 20% auto 10%;
	}
	
}



#by .item_area .look_ttl .recommend{
	width: 50%;
	position: relative;
}

#by .item_area .look_ttl .recommend::after{
	position: absolute; /*--positionを追加--*/
	top: 50%;
	left: 100%;
	margin: 0 1rem;
	content: "";
	width: 70%; /*--縦線の太さ(幅)--*/
	height: 1px;
	background-color: #333; /*--縦線の色--*/
}

#by .item_area .look_ttl .no{
	width: 12%;
	
	
}

@media only screen and (max-width: 768px)  {
	#by .item_area .look_ttl .recommend{
	width: 95%;
    margin: 0 auto;
	}
	#by .item_area .look_ttl .no{
	width: 23%;
	margin: 5% auto;
	}
	
}

#by .pickup{
	width: 26%;
	margin: 10% auto;
}

#by section .look_area{
	width: 1200px;
	margin: 0 auto 20%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#by section:nth-of-type(even) .look_area{
	flex-direction: row-reverse;
}


#by section .look_area .child{
	width: 48%;
	position: relative;

}

#by section .look_area .child .coordinate{
	margin: 0 auto 7%;
	text-align: center;
	font-size: 15px;
	font-weight: 600;

}

@media only screen and (max-width: 768px)  {
	#by section .look_area .child .coordinate{
	margin: 10% auto 7%;
	}
	#by .pickup{
	width: 55%;
    margin: 20% auto 8%;
	}
	
}

	#by section .look_area .child .credit{
	display: flex;
	justify-content: space-between;
	margin: 0 0 5% 10%;
    align-items: center;
	width: 430px;
	}

	#by section .look_area .child .credit .marker{
	background:linear-gradient(transparent 50%, rgba(252 255 123) 50%);
	display: inline;

	/* 背景の繰り返しを停止 */
	background-repeat: no-repeat;

	/* マーカーの横方向を0にして縮める */
	background-size: 0% 100%;

	/* マーカーが引かれる速度を指定 */
	transition:background-size 1.0s;
}

	/* マーカーが引かれる際に付与するクラス */
	#by section .look_area .child .credit .marker.on {
	/* 横方向を100%にして、マーカーを引く */
	background-size: 100% 100%;
}

	
@media only screen and (max-width: 768px)  {
	#by section .look_area .child .credit{
		margin: 0 auto 5%;
		width: 100%;
	}

}

#by section a.btn_04 {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 80px;
	margin: auto;
	padding: 5px 20px;
	
	border: 1px solid #000;
	background: #000;
	color: #fff;
	border-radius: 100vh;
	transition: 0.5s;
}
#by section a.btn_04:hover {
	color: #000;
	background: #fff;
}

@media only screen and (max-width: 768px)  {
	#by section a.btn_04 {
	padding: 3px 15px;
	
	}
	
}

/*3枚*/
 /*=== 画像の表示エリア ================================= */
#by section .look_area .child .slide {
  position   : relative;
  overflow   : hidden;
                    /* 画像のサイズに合わせて変更ください */
  width      : 100%;
  height     : 800px;
  margin     : 0 0 0 7%;      /* サンプルは中央寄せの背景：白 */
  background : #fff;
}




 /*=== 画像の設定 ======================================= */
#by section .look_area .child .slide img {
  display    : block;
  position   : absolute;
                      /* 画像のサイズを表示エリアに合せる */
  width      : inherit;
  height     : inherit;
  opacity    : 0;
  animation  : slideAnime 9s ease infinite;
}
 
 /*=== スライドのアニメーションを段差で開始する ========= */
#by section .look_area .child .slide img:nth-of-type(1) { animation-delay: 0s }
#by section .look_area .child .slide img:nth-of-type(2) { animation-delay: 3s }
#by section .look_area .child .slide img:nth-of-type(3) { animation-delay: 6s }
 
 /*=== スライドのアニメーション ========================= */
@keyframes slideAnime{
   0% { opacity: 0 }
   3% { opacity: 1 }
  33% { opacity: 1 }
  36% { opacity: 0 }
 100% { opacity: 0 }
}



/*2枚*/
 /*=== 画像の表示エリア ================================= */
#by section .look_area .child .slide2 {
  position   : relative;
  overflow   : hidden;
                    /* 画像のサイズに合わせて変更ください */
  width      : 100%;
  height     : 800px;
  margin     : 0 0 0 -5%;      /* サンプルは中央寄せの背景：白 */
  background : #fff;
}
 
 /*=== 画像の設定 ======================================= */
#by section .look_area .child .slide2 img {
  display    : block;
  position   : absolute;
                      /* 画像のサイズを表示エリアに合せる */
  width      : inherit;
  height     : inherit;
  opacity    : 0;
  animation  : slideAnime2 6s ease infinite;
}
 
 /*=== スライドのアニメーションを段差で開始する ========= */
#by section .look_area .child .slide2 img:nth-of-type(1) { animation-delay: 0s }
#by section .look_area .child .slide2 img:nth-of-type(2) { animation-delay: 3s }

 
 /*=== スライドのアニメーション ========================= */
@keyframes slideAnime2{
   0% { opacity: 0 }
   5% { opacity: 1 }
  50% { opacity: 1 }
  55% { opacity: 0 }
 100% { opacity: 0 }
}

/*4枚*/
 /*=== 画像の表示エリア ================================= */
#by section .look_area .child .slide4 {
  position   : relative;
  overflow   : hidden;
                    /* 画像のサイズに合わせて変更ください */
  width      : 100%;
  height     : 800px;
  margin     : 0 0 0 7%;      /* サンプルは中央寄せの背景：白 */
  background : #fff;
}
 
 /*=== 画像の設定 ======================================= */
#by section .look_area .child .slide4 img {
  display    : block;
  position   : absolute;
                      /* 画像のサイズを表示エリアに合せる */
  width      : inherit;
  height     : inherit;
  opacity    : 0;
  animation  : slideAnime4 12s ease infinite;
}
 
 /*=== スライドのアニメーションを段差で開始する ========= */
#by section .look_area .child .slide4 img:nth-of-type(1) { animation-delay: 0s }
#by section .look_area .child .slide4 img:nth-of-type(2) { animation-delay: 3s }
#by section .look_area .child .slide4 img:nth-of-type(3) { animation-delay: 6s }
#by section .look_area .child .slide4 img:nth-of-type(4) { animation-delay: 9s }
 
 /*=== スライドのアニメーション ========================= */
@keyframes slideAnime4{
   0% { opacity: 0 }
   2% { opacity: 1 }
  25% { opacity: 1 }
  27% { opacity: 0 }
 100% { opacity: 0 }
}


@media only screen and (max-width: 768px){
	
	#by section .look_area{
	display: block;
	width: 100%;
	margin: 0 0 10%;
	
	}
	
	#by section .look_area .child{
    width: 95%;
    margin: 0 auto;
	}
	
	#by section .look_area .child:nth-of-type(even){
    margin-bottom: 25%;
	}
	
	#by section .look_area .child .slide{
	  width: 100%;
	  height: 80vh; /* 画像のサイズに合わせて変更ください */
	  margin: 0;      /* サンプルは中央寄せの背景：白 */
	}
	
	#by section .look_area .child .slide2{
	  width: 100%;
	  height: 80vh; /* 画像のサイズに合わせて変更ください */
	  margin: 0;      /* サンプルは中央寄せの背景：白 */
	}
	
		#by section .look_area .child .slide4{
	  width: 100%;
	  height: 80vh; /* 画像のサイズに合わせて変更ください */
	  margin: 0;      /* サンプルは中央寄せの背景：白 */
	}

}

#by .prof_ttl{
	margin: 0 auto 5%;
    width: 14%;
}


#by .prof{
	display: flex;
	margin: 0 auto 10%;
    justify-content: space-around;
	width: 1200px;
}
#by .prof .pic{
	width: 50%;
}

#by .prof .prof_txt{
	width: 450px;
}

#by .prof .prof_txt .name{
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 5%;
}


@media only screen and (max-width: 768px)  {
	#by .prof_ttl{
	width: 30%;
	margin: 15% auto 5%;
	}
	#by .prof{
	display: block;
	width: 100%;
	}
	#by .prof .pic{
	width: 100%;
	}
	#by .prof .prof_txt{
	width: 95%;
    margin: 5% auto;
	}


}

#by .box1 {
    padding: 0.5em 1em;
    margin: 2em auto 12%;
    font-weight: 600;
    border: solid 2px #000000;
	width: 24%;
}
#by .box1 p {
    margin: 0; 
    padding: 0;
	text-align: center;
}

#by .iteminfo {
    text-align: center;
    font-size: 14px;
    margin: 50px auto 5px;
    padding: 10px;
    border: 1px solid #000;
    letter-spacing: 2px;
    font-weight: bold;
    box-sizing: border-box;
    clear: both;
	max-width: 1000px;
}

@media only screen and (max-width: 768px)  {
	#by .box1 {
    width: 72%;
	}
	#by .iteminfo {
    margin: 80px auto 5px;
    
	}
      
}

/*////pcview////*/
   .spview {
        display: none;
    }    
    .pcview {
        display: block;
    }
@media only screen and (max-width: 768px)  {
   .spview {
        display: block;
    }    
   .pcview {
        display: none;
    }    
}


.anim{
		opacity: 0;
		transition: 2.5s all 0s ease;
}

.anim.ac{
		opacity:1;
}