@import url('https://fonts.googleapis.com/css2?family=Kanit:wght@600&display=swap');

ul, li {
	list-style: none;
}

a:link{
	color:#ccc0b8;
	text-decoration:none;
}

a:visited{
	color:#ccc0b8;
	text-decoration:none;
}

a:hover{
	color:#8F7003;
	text-decoration:none;
}

.repo-link{
	color:#8F7003;
	text-decoration:none;
}
.hidden{
	display:none;
	font-size:0px;
	text-indent:-9999px;
}

.object-fitImg{
	width:100%;
	height:100%;
	object-fit: cover;
	font-family: 'object-fit: cover;'
}

.fadeIn {
  opacity: 0;
  transition: 2s;
}
.fadeIn.is-show {
  opacity: 1;
}

.t-strong{
	font-weight: 600;
	border-bottom:2px solid #bf916b;
}
h1{
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

h2{
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

h3{
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

h4{
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

h5{
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

#contents .clear{
	clear:both;
}

#snsbanner{
    margin: 40px auto;
    text-align: center;
	padding:0;
}

#gigyaShare {
    vertical-align: top;
    text-align: center;
    margin-right: 0 auto;
}

#loader_wrap {
    position: fixed;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100vw;
    height: 100vh;
    top: 0;
    background: #1b1b1b;
    z-index: 50;
}

/* loading anime */
.loader {
    width: 400px;
    height: 300px;
    background: url("../img/preloader.gif") no-repeat;
    opacity: 0;
    animation: blink 1.5s infinite linear;
    position: relative;
}

@keyframes blink {
    50% {
        opacity: 0.5;
        }
}

/* end of loading */
.loaded {
    opacity: 0;
    visibility: hidden;
}



@media screen and (min-width:641px )
{

	/*トップ*/
	.pc { display: block !important; }
	.sp { display: none !important; }

	body{
		background:#f9e97b;
		/*background-attachment: fixed;*/
	   /* color:#eaff00;*/
		color:#fff;
		letter-spacing:	2px;
		font-family: 'Noto Sans JP', sans-serif,游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro','Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ ゴシック',’MS PGothic’, Arial, Helvetica, Geneva, Swiss, SunSans-Regular, sans-serif;
		text-align:	center;
		-webkit-text-size-adjust: 100%;
		display: flex;
		flex-flow: column;
		min-height: 100vh;
		font-size:16px;
	}	
	header{
		background: #ed65cf;
		width:100%;
		padding-top: 72%;
		margin-bottom: -18%;
	}

	header .mainImage{
		width:100%;
		height:0;
		margin:0;
		padding-top: 30%;
		background-image:url(../img/main_image_t_pc.png);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		margin: 0;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}

	.borderColor{
		width: 100%;
		border-bottom: solid 1vw #f9e97b;
		position:absolute;
		top:0;
		left:0;
		margin:0;
	}

	/*header .triangle{
	  position: relative;
	}*/

	.triangle{
		border-color: #f9e97b transparent transparent transparent;
		border-style: solid;
		border-width: 25vh 25vw 0 0;
		top: 0;
		left:0;
		margin:0;	
		content: "";
		position: absolute;
	}

	@keyframes bggradient{
	  0% {
		background-position: 0% 50%;
	  }
	  50% {
		background-position: 100% 50%;
	  }
	  100% {
		background-position: 0% 50%;
	  }
	}

	header .title_text{
		text-align:center;
		color:#fff;
		font-family: din-2014, sans-serif;
		font-weight: 400;
		font-style: normal;
		font-size:3vw;
		letter-spacing: 0.1vw;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: 1vw;
	}

	header #header_inner{
		position:relative;
		width:70%;
		height:auto;
		margin:calc(-65% - 7vw) auto 0 auto;
		text-align: center;
	}

	header .header_bg{
		width:100%;
		height:0;
		padding-top: 65.2%;	
		background: url("../img/main_bg_pc.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		position: absolute;
		top:-10px;
		left:0;
		z-index: 10;
	}

	header .navi_bg{
		width:100%;
		height:0;
		padding-top: 20%;	
		background: url("../img/main_navi_title_pc.png");
		background-repeat: no-repeat;
		background-size: 50%;
		background-position: top center;
		position: absolute;
		margin: 5vw auto 0 auto;
	}


	header .wrap {
		max-width: 1420px;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		margin: 1vw auto 0 auto;
	}


	header .box_g{
		width:32%;
		height:auto;
		margin:0;
		padding: 0;
		z-index: 100;

	}
	header .photo1{
		width:100%;
		height:auto;
		margin:0;
		padding-top:100%;
		background-image:url("../img/main_navi1.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}

	header .photo2{
		width:100%;
		height:auto;
		margin:0;
		padding-top:100%;
		background-image:url("../img/main_navi2.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	header .name{
		color:#fff;
		font-size:min(1.75vw,18px);
		font-weight: 600;
		margin:0.75vw 0 0 0;
		padding:0;
		text-align: center;
	}	
	.img{
		max-width: 100%;
		border: 0;
		margin:0;
		padding:0;
	}

	#contents{
		width:100%;
		padding:0;
		margin:-1vw auto 0 auto;
		
	}
	#contents p{
		margi:0s;
		padding: 0;
	}

/*メッセージ*/
	#contents .header_inner_msg{
		width:100%;
		height:auto;
		margin:2vw auto 0 auto;
		padding:5vw 0;
		text-align: center;
		background: #ed65cf;
	}
	
 	#contents .title_text{
		text-align:center;
		color:#fff;
		font-family: din-2014, sans-serif;
		font-weight: 400;
		font-style: normal;
		font-size:1.75vw;
		letter-spacing: 0.1vw;
		display: flex;
		justify-content: center;
		align-items: center;
		margin:0 0 1vw 0;
		paddint-top:4vw;
	}

  	#contents .mainImage{
		width:100%;
		height:0;
		margin:0;
		padding-top: 15%;
		background-image:url(../img/main_image_t_pc.png);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		margin: 0 auto;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}

	
	/*プログラム*/

	#contents .intro{
		width:100%;
		height:auto;
		margin:30px auto 0 auto;
		padding: 4vw 0 1vw 0;
		background: #62c97a;
		position: relative;
	}
	#contents .intro .copy{
		max-width:1380px;
		height:auto;
		color:#fff;
		font-size:min(3.5vw,38px);
		line-height:min(5vw,52px); 
		font-weight: 600;
		margin:0 auto;
		padding:0 20px;
		text-align: center;
	} 

	#contents .intro .introRead{
		max-width:1380px;
		height:auto;
		margin:0 auto;
		color:#fff;
		text-align: center;
	}

	#contents .intro .introRead p{
		margin: 2vw auto 1vw auto;
		font-size:min(1.5vw,21px);
		line-height:min(3vw,52px);
		padding:0 20px;
	}

   /*メッセージ*/

    #contents .message{
        width:60%;
		max-width:852px;
        height:auto;
        margin:0 auto 2vw auto;
        padding:  1vw;
		text-align: center;
		background: #7888ca;
		border-radius: 1.25vw;
		border:0.25vw solid #fff;
    }

    #contents .message .wrap{
        max-width:1420px;
        margin:0 auto;
        padding:0;
    }

    #contents .message .title{
        height:auto;
		color:#fff;
		font-family: source-han-sans-cjk-ja, sans-serif;
		font-weight: 700;
		font-style: normal;
		font-size:min(2.5vw,42px);
		margin:0 ;
        padding:0;
		text-align: center;
    }
	#contents .message .line{
		border-top:0.2vw dashed #fff;
		margin: 0.5vw 0;
		padding: 0;
	}
   
    #contents .message .messageRead{
        max-width:1380px;
        height:auto;
        margin:0 auto;
		color:#fff;
        text-align: center;
	}

	#contents .message .messageRead .copy{
        margin: 1vw auto 0 auto;
		font-size:min(1.75vw,28px);
		font-weight: bold;
		padding:0 20px;
	}

	#contents .message .messageRead p{
        margin: 0.25vw 2vw 2vw 2vw;
		font-size:min(1.25vw,18px);
        line-height:min(2.25vw,32px);
		text-align: left;
	}

	#contents .message .present{
		width:100%;
		height:auto;
		margin:0 0 2vw 0;
		padding-top: 37.5%;
		background-image:url("../img/present.jpg");
		background-repeat: no-repeat;
		background-size: 50%;
		background-position: top center;
	}
	
	/* ボタン */
	#contents .message .btn_message a{
		width:50%;
		max-width: 380px;
		/*影の基点とするためrelativeを指定*/
		position: relative;
		/*ボタンの形状*/
		text-decoration: none;
		display: inline-block;
		text-align: center;
		border-radius: 2vw;
		box-sizing: border-box;
		outline: none;
		font-size:min(2vw,21px);
		font-weight: 600;
		/*アニメーションの指定*/
		transition: all 0.2s ease;
		background: #000;
		padding:1vw 0;
		margin-bottom: 1vw;
		color:#fff;
	}


	/*hoverをした後のボタンの形状*/
	#contents .message .btn_message a:hover{
		width:50%;
		background: #7888ca;
		border-radius: 2.25vw;
		outline: 0.25vw solid #000;
		outline-offset:-0.25vw;
		color:#000;

	}
	
	/*ボタンの中のテキスト*/
	#contents .message .btn_message span {
		position: relative;
		z-index: 2;/*z-indexの数値をあげて文字を背景よりも手前に表示*/
		/*テキストの形状*/
		display: block;
		padding: 10px 30px;
		background:#bf916b;
		border-radius: 25px;
		color:#fff;
		/*アニメーションの指定*/
		transition: all 0.3s ease;
	}

	#contents .message .pushright:hover span {
		background-color:#DDB99B;
		color: #fff;
	}
	

	/*ゲスト*/

	#contents .guest{
		width:100%;
		height:auto;
		margin:0 auto 0 auto;
		padding: 2.5vw 0 2.5vw 0;
		background: #ed65cf;
		position: relative;
	}

	#contents .guest .title{
		width:100%;
		height:auto;
		margin:3vw 0 0 0;
		padding-top: 14%;
		background-image:url("../img/guest_title.png");
		background-repeat: no-repeat;
		background-size: 35%;
		background-position: top center;
	}

	#contents .guest .cs{
		text-align:center;
		color:#f8caed;
		font-family: din-2014, sans-serif;
		font-weight: 400;
		font-style: normal;
		font-size:5vw;
		letter-spacing: 0.1vw;
	}

	#contents .guest .comment{
		width:100%;
		height:auto;
		margin:2vw 0 0 0;
		padding-top: 14%;
		background-image:url("../img/comment_title.png");
		background-repeat: no-repeat;
		background-size: 35%;
		background-position: top center;
	}


	#contents .guest .wrap {
		max-width: 1420px;
		width:100%;
		display: flex;
		justify-content:space-between;
		align-items: flex-start;
		flex-wrap: wrap;
		margin: 1vw auto 0 auto;
		padding:0;

	}
	#contents .guest .wrap_2 {
		max-width: 1420px;
		width:100%;
		display: flex;
		justify-content:center;
		align-items: flex-start;
		flex-wrap: wrap;
		margin: 1vw auto 0 auto;
		padding:0;

	}

	#contents .guest .wrap_n {
		max-width: 1420px;	
		display: flex;
		justify-content: center;
		margin:0 auto;
		text-align: center;
	}

	#contents .guest .box_g{
		width:20%;
		height:auto;
		margin:1vw 1vw 1vw 2vw;
		padding:0;
	}
	
	#contents .guest .box_g2{
		width:20%;
		height:auto;
		margin:1vw 1vw;
		padding:0;
	}


	#contents .guest .box_g3{
		width:20%;
		height:auto;
		margin:1vw 2vw 1vw 1vw;
		padding:0;
	}
	#contents .guest .box_g4{
		width:10%;
		height:auto;
		margin:1vw 1vw 1vw 2vw;
		padding:0;
	}
	
	#contents .guest .photo1{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_cosmo.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}

	#contents .guest .photo2{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_imase.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}

	#contents .guest .photo3{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_ink.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}

	#contents .guest .photo4{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_milli.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	
	#contents .guest .photo5{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_okamoto.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}

	
	#contents .guest .photo6{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_k4.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	
	#contents .guest .photo7{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_slim.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	
	#contents .guest .photo8{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_terao.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	
	
	#contents .guest .photo9{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_sakamaki.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	
	#contents .guest .photo_c1{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_boynext.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}

	#contents .guest .photo_c2{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_enhypen.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}

	#contents .guest .photo_c3{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_988.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	

	#contents .guest .photo_c4{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_svt.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	
	#contents .guest .photo_c5{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_yonlap.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	
	#contents .guest .photo_c6{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_norome.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	
	#contents .guest .photo_c7{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_lola.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	
	#contents .guest .photo_c8{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_nctyuta.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	
	#contents .guest .photo_c9{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:75%;
		background-image:url("../img/guest_trs.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	
	#contents .guest .photo_blank{
		width:100%;
		height:auto;
	}


	#contents .guest .name{
		width:100%;
		color:#fff;
		font-size:min(1.75vw,18px);
		font-weight: 600;
		margin:0.75vw 0 0 0;
		padding:0;
		text-align: center;
	}

	#contents .guest .name_s{
		width:100%;
		color:#fff;
		font-size:min(1.2vw,12px);
		font-weight: 400;
		margin: 0;
		padding:0;
	}
	
	#contents .guest .notice{
		width:100%;
		color:#fff;
		opacity: 0.7;
		font-size:min(1vw,10px);
		font-weight: 400;
		text-align: right;
		margin: 2vw 1vw 0 0;
		padding:0;
	}	



	/*タイムテーブル*/

	#contents .timeTable{
		width:100%;
		height:auto;
		margin:0 auto 0 auto;
		padding: 2.5vw 0 2.5vw 0;
		background: #7888ca;
		position: relative;
	}

	#contents .timeTable .title{
		width:100%;
		height:auto;
		margin:3vw 0 0 0;
		padding-top: 14%;
		background-image:url("../img/tt_title.png");
		background-repeat: no-repeat;
		background-size: 35%;
		background-position: top center;
	}
	#contents .timeTable .cs{
		color:#d0d4eb;
		font-family: din-2014, sans-serif;
		font-weight: 400;
		font-style: normal;
		font-size:5vw;
		letter-spacing: 0.1vw;
		margin:0 auto;
		text-align: center;

	}	
	#contents .timeTable .notice{
		color:#fff;
		opacity: 0.6;
		font-size:min(1vw,10px);
		font-weight: 400;
		text-align: left;
		margin: 2vw auto 0 auto;
		padding:0;
		padding-left:1em;
		text-indent:-1em;
	}	

	/*フォトレポート*/

	#contents .photo{
		width:100%;
		height:auto;
		margin:0 auto 0 auto;
		padding: 2.5vw 0 2.5vw 0;
		background: #62c97a;
		position: relative;
	}

	#contents .photo .title{
		width:100%;
		height:auto;
		margin:3vw 0 0 0;
		padding-top: 14%;
		background-image:url("../img/photo_title.png");
		background-repeat: no-repeat;
		background-size: 35%;
		background-position: top center;
	}

	#contents .photo .wrap{
		max-width:1420px;
		margin:0 auto;
		padding:0;
	}


	#contents .photo .display{
		width:auto;
		height:auto;
		margin:-3vw auto 3vw auto;
	}

	#contents .photo .copy{
		max-width:1380px;
		height:auto;
		color:#fff;
		font-size:min(2.5vw,28px);
		font-weight: 600;
		margin-top:20px;
		margin-right:20px;
		margin-left:20px;
		margin-bottom:min(3.5vw,36px);
		padding:0;
		text-align: center;
	} 

	#contents .photo .title img{
        width: 100vw;
        margin:0 auto 10px auto;
        padding:0;
    } 
    
	#contents .photo .display .detail{
		width:93.75%;
		height:auto;
		margin: 0 auto ;
		padding:0;
		overflow: hidden; /* heightを戻す */
}
		
	#contents .photo .display .detail .hsPRimg ul{
		margin:0;
		padding:0;
		display: flex;
		justify-content: space-between;
    	flex-wrap:wrap;
	}
	#contents .photo .display .detail .hsPRimg ul::after{
		display: block;
		content:"";
		width: 20%;
		margin:0 1vw 0 1vw;
	}
	#contents .photo .display .detail .hsPRimg li{
		width:20%;
		height:20%;
		margin:3vw 1vw 0 1vw;
		padding:0;

	}
    
    #contents .photo .display .detail .hsPRimg img{
       border-radius: 10%;     
    }


	/*ツイッター*/

	#contents .tw{
		width:100%;
		height:auto;
		margin:0 auto 0 auto;
		padding: 2.5vw 0 2.5vw 0;
		background: #ed65cf;
		position: relative;
	}

	#contents .tw .title{
		width:100%;
		height:auto;
		margin:3vw 0 0 0;
		padding-top: 14%;
		background-image:url("../img/tw_title.png");
		background-repeat: no-repeat;
		background-size: 35%;
		background-position: top center;
	}

	#contents .tw .wrap{
		max-width:1420px;
		margin:0 auto;
		padding:0;
	}
	#contents .tw .detail{
		max-width:690px;
		margin:2vw auto 0 auto;
		padding:0;
	 }

	/*フッタ*/

	footer{
		height:auto;
		margin:0 auto;
		padding-bottom:30px;
		width:100vw;
		background: #7888ca;
		position: relative;
	}

	footer .jLogo{
		width:100%;
		margin:20px auto 5px 0;
		padding:0;
		text-align: center;
	}

	footer .logo_jwave {
		width: 240px;
		margin: 20px 0 5px 20px;
	}

	footer .copyright{
		width:100%;
		font-family: Arial, "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
		font-size:12px;
		color:#fff;
		text-align:center;
		padding:5px auto 0 auto;
	}

}


/* スマートフォン用 */

@media screen and (max-width:640px )
{
	.pc { display: none !important; }
	.sp { display: block !important; }
	
	body{
		background:#f9e97b;
		/*background-attachment: fixed;*/
	   /* color:#eaff00;*/
		color:#fff;
		letter-spacing:	2px;
		font-family: 'Noto Sans JP', sans-serif,游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro','Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ ゴシック',’MS PGothic’, Arial, Helvetica, Geneva, Swiss, SunSans-Regular, sans-serif;
		text-align:	center;
		-webkit-text-size-adjust: 100%;
		display: flex;
		flex-flow: column;
		min-height: 100vh;
	}

	/*	
		img {
			border: 0;
			width: 100%;
		}

	*/
	/* 	
	header{
		width:100%;
		height:0;
		margin:0;
		padding-top: 100vh;
		background-image:url(../img/top_bg_sp.jpg);
		background-repeat: no-repeat;
		background-size: cover;
		background-position: bottom center;
	}
		*/
	header{
		width:100%;
		height:0;
		margin:0 0 0 0;
		padding-top: 100vh;
		background: #ed65cf;
		position: relative;
	}	

	header .mainImage{
		width:100%;
		height:0;
		margin:0;
		padding-top: 42%;
		background-image:url(../img/main_image_t_sp.png);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		margin:0;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}

	.borderColor{
		width: 100%;
		border-bottom: solid 2vw #f9e97b;
		position:absolute;
		top:0;
		left:0;
		margin:0;
	}

	/*header .triangle{
	  position: relative;
	}*/

	header .triangle{
		border-color: #f9e97b transparent  transparent transparent;
		border-style: solid;
		border-width: 15vh 30vw 0 0;
		top: 0;
		left:0;
		margin:0;	
		content: "";
		position: absolute;
	}

	@keyframes bggradient{
	  0% {
		background-position: 0% 50%;
	  }
	  50% {
		background-position: 100% 50%;
	  }
	  100% {
		background-position: 0% 50%;
	  }
	}

	header .title_text{
		text-align:center;
		color:#fff;
		font-family: din-2014, sans-serif;
		font-weight: 400;
		font-style: normal;
		font-size:5vw;
		letter-spacing: 0.1vw;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: 3vw;

	}

	header #container {
	  display: flex;
	  justify-content: center;
	  align-items: center;
	}

	header #header_inner{
		position:relative;
		width:100%;
		height:auto;
		margin:calc(-110vh ) auto 0 auto;
		text-align: center;
	}

	@media screen and (max-aspect-ratio:  428/926) {	
		header .header_bg{
			width:100%;
			height:0;
			padding-top: 218%;	
			background: url("../img/main_bg2_sp.png");
			background-repeat: no-repeat;
			background-size: contain;
			background-position: top center;
			position: absolute;
			top:0;
			left:0;
			}
		header .header_bg_b{
			width:100%;
			height:0;
			padding-top: 218%;	
			background: url("../img/main_bg2b_sp.png");
			background-repeat: no-repeat;
			background-size: contain;
			background-position: top center;
			position: absolute;
			bottom:0;
			left:0;
			}
		}

	@media not screen and (max-aspect-ratio:  428/926) {	
		header .header_bg{
			width:100%;
			height:0;
			padding-top: 177.6%;	
			background: url("../img/main_bg1_sp.png");
			background-repeat: no-repeat;
			background-size: contain;
			background-position: top center;
			position: absolute;
			top:0;
			left:0;
			}
		header .header_bg_b{
			width:100%;
			height:0;
			padding-top: 177.6%;
			background: url("../img/main_bg1b_sp.png");
			background-repeat: no-repeat;
			background-size: contain;
			background-position: top center;
			position: absolute;
			bottom:0;
			left:0;
			}
		}

	header .navi_bg{
		width:100%;
		height:0;
		padding-top: 83.3%;	
		background: url("../img/sp_navi_area.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		position: absolute;
		margin: 8vw 0 0 0;

	}

	header .wrap {
		min-width:300px;
		display: flex;
		flex-wrap: wrap;
		margin: 32vw auto 0 auto;
	}

	header .box_g{
		width:50%;
		height:auto;
		margin:0;
		padding: 0;
		z-index: 100;

	}
	header .photo1{
		width:100%;
		height:auto;
		margin:0;
		padding-top:80%;
		background-image:url("../img/main_navi1.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}

	header .photo2{
		width:100%;
		height:auto;
		margin:0;
		padding-top:80%;
		background-image:url("../img/main_navi2.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}

	header .name{
		color:#fff;
		font-size:3vw;
		font-weight: 600;
		margin:1vw 0 2vw 0;
		padding:0;
		text-align: center;
		z-index: 20;
		display: inline-block;
	  }	

	#contents{
		width:100%;
		margin:0 auto;
		padding:0;
		flex: 1;
		position: relative;
	}
/*メッセージ*/
	#contents .header_inner_msg{
		min-width:300px;
		height:auto;
		margin:0 auto;
		padding:3vw 0 3vw 0;
		background: #ed65cf;
		position: relative;

	}
	
	#contents .title_text{
		text-align:center;
		color:#fff;
		font-family: din-2014, sans-serif;
		font-weight: 400;
		font-style: normal;
		font-size:5vw;
		letter-spacing: 0.1vw;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: 3vw;
	}
	#contents .mainImage{
		width:100%;
		height:0;
		margin:0;
		padding-top: 42%;
		background-image:url(../img/main_image_t_sp.png);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		margin:0;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}
	#contents .intro{
		min-width:300px;
		height:auto;
		margin:0 auto;
		padding:3vw 0 3vw 0;
		background: #62c97a;
		position: relative;
	}

	#contents .intro .copy{
		min-width:300px;
		height:auto;
		color:#fff;
		font-size:4.5vw;
		line-height: 7vw;
		font-weight: 600;
		margin:3vw 20px;
		padding:0;
		text-align: center;
	} 

	#contents .intro .introRead{
		min-width:300px;
		height:auto;
		margin:10px 0 0 0;
		color:#fff;
		font-size:3.25vw;
		line-height:6vw;
		text-align: center;
	}
	#contents .intro .introRead p{
		margin:20px 0 20px 0;
	}



 /*message*/    
    #contents .message{
        width:80%;
        height:auto;
        margin:0 auto 2vw auto;
        padding:2vw;
		text-align: center;
 		background: #7888ca;
		border-radius: 2vw;
		border:0.5vw solid #fff; 
	}
	
	
    #contents .message .wrap{
        min-width:300px;
        margin:0 auto;
        padding:4vw 0;
    }
	
     #contents .message .title{
        height:auto;
		color:#fff;
		font-family: source-han-sans-cjk-ja, sans-serif;
		font-weight: 700;
		font-style: normal;
		font-size:4.5vw;
		margin:0;
        padding:0;
		text-align: center;
    }
	#contents .message .line{
		border-top:0.5vw dashed #fff;
		margin: 2vw 0;
		padding: 0;
	}
   
    #contents .message .messageRead{
        max-width:1380px;
        height:auto;
        margin:0 auto;
		color:#fff;
        text-align: center;
	}

	#contents .message .messageRead .copy{
        margin: 1.5vw auto 1vw auto;
		font-size:3.5vw;
		font-weight: bold;
	}

	#contents .message .messageRead p{
        margin: 0.25vw 2vw 2vw 2vw;
		font-size:3vw;
        line-height:5vw;
		text-align: left;
	}

	#contents .message .present{
		width:100%;
		height:auto;
		margin:1vw 0 3vw 0;
		padding-top: 56.25%;
		background-image:url("../img/present.jpg");
		background-repeat: no-repeat;
		background-size: 75%;
		background-position: top center;
	}
	
	/* ボタン */
	#contents .message .btn_message a{
		width:80%;
		position: relative;
		text-decoration: none;
		display: inline-block;
		text-align: center;
		border-radius: 4vw;
		box-sizing: border-box;
		outline: none;
		font-size:3.5vw;
		font-weight: 600;
		background: #000;
		padding:2vw 0;
		margin-bottom: 1vw;
		color:#fff;
	}

	
  /*ゲスト*/

    #contents .guest{
		width:100%;
		height:auto;
        margin:0 auto;
        padding:3vw 0;
		background: #ed65cf;
		position: relative;
    }

 	#contents .guest .title{
		width:100%;
		height:auto;
		margin:6vw 0 4vw 0;
		padding-top: 21.1%;
		background-image:url("../img/guest_title.png");
		background-repeat: no-repeat;
		background-size: 63%;
		background-position: top center;
	}
	
	#contents .guest .cs{
		text-align:center;
		color:#f8caed;
		font-family: din-2014, sans-serif;
		font-weight: 400;
		font-style: normal;
		font-size:6vw;
		letter-spacing: 0.1vw;
	}

 	#contents .guest .comment{
		width:100%;
		height:auto;
		margin:8vw 0 0 0;
		padding-top: 21.1%;
		background-image:url("../img/comment_title.png");
		background-repeat: no-repeat;
		background-size: 63%;
		background-position: top center;
	}
	
	
	#contents .guest .wrap {
		min-width:300px;
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		margin:3vw 0 2vw 0;
	}
	#contents .guest .wrap_2 {
		min-width:300px;
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		margin:3vw 0 2vw 0;
	}
	
	#contents .guest .wrap_n {
		max-width: 1420px;	
		display: flex;
		justify-content: center;
		margin:0 auto;
		text-align: center;
	}
	
	
	#contents .guest .box_g{
        width:50%;
        height:auto;
        margin:0;
		padding: 0;
    }
	
	#contents .guest .box_g2{
        width:50%;
        height:auto;
        margin:0;
		padding: 0;
    }
	
	#contents .guest .box_g3{
        width:50%;
        height:auto;
        margin:0;
		padding: 0;
    }

    #contents .guest .photo1{
        width:100%;
        height:auto;
        margin:0 0 0 0;
		padding-top:70%;
		background-image:url("../img/guest_cosmo.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }

    #contents .guest .photo2{
        width:100%;
        height:auto;
        margin:0 0 0 0;
		padding-top:70%;
		background-image:url("../img/guest_imase.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }

    #contents .guest .photo3{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_ink.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }


    #contents .guest .photo4{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_milli.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }


    #contents .guest .photo5{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_okamoto.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }

    #contents .guest .photo6{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_k4.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }

    #contents .guest .photo7{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_slim.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }

    #contents .guest .photo8{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_terao.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }

    #contents .guest .photo9{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_sakamaki.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }
	
  #contents .guest .photo_c1{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_boynext.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }

    #contents .guest .photo_c2{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_enhypen.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }

    #contents .guest .photo_c3{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_988.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }


    #contents .guest .photo_c4{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_svt.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }

    #contents .guest .photo_c5{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_yonlap.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }

    #contents .guest .photo_c6{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_norome.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }
    #contents .guest .photo_c7{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_lola.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }
    #contents .guest .photo_c8{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_nctyuta.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }
    #contents .guest .photo_c9{
        width:100%;
        height:auto;
        margin:0;
		padding-top:70%;
		background-image:url("../img/guest_trs.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }

    #contents .guest .name{
		width:100%;
        color:#fff;
		font-size:3vw;
		font-weight: 600;
		margin:1vw 0 2vw 0;
        padding:0;
		text-align: center;
  }	

    #contents .guest .name_s{
		width:100%;
        color:#fff;
		font-size:2.5vw;
		font-weight: 400;
		margin:0;
        padding:0;
		text-align: center;
  }	
	
	#contents .guest .notice{
		width:100%;
		color:#fff;
		opacity: 0.7;
		font-size:2vw;
		font-weight: 400;
		text-align: right;
		margin: 2vw 1vw 0 0;
		padding:0;
	}	

	#contents .guest .wrap2 {
		min-width:300px;
		display: flex;
		flex-wrap: wrap;
		margin: 0 auto;
	}

 
/*タイムテーブル*/

	#contents .timeTable{
		width:100%;
		height:auto;
        margin:0 auto;
        padding:3vw 0;
		background: #7888ca;
		position: relative;
	}

	#contents .timeTable .title{
		width:100%;
		height:auto;
		margin:6vw 0 0 0;
		padding-top: 21.1%;
		background-image:url("../img/tt_title.png");
		background-repeat: no-repeat;
		background-size: 63%;
		background-position: top center;
	}

	#contents .timeTable .cs{
		text-align:center;
		color:#d0d4eb;
		font-family: din-2014, sans-serif;
		font-weight: 400;
		font-style: normal;
		font-size:6vw;
		letter-spacing: 0.1vw;
	}
	#contents .timeTable .notice{
		width:100%;
		color:#fff;
		opacity: 0.6;
		font-size:2vw;
		font-weight: 400;
		text-align: left;
		margin: 2vw 1vw 0 0;
		padding-left:1em;
		text-indent:-1em;
	}	
	
 /*フォトレポート*/
    #contents .photo{
		width:100%;
		height:auto;
        margin:0 auto;
        padding:3vw 0;
		background: #62c97a;
		position: relative;
	}

	#contents .photo .title{
		width:100%;
		height:auto;
		margin:6vw 0 0 0;
		padding-top: 21.1%;
		background-image:url("../img/photo_title.png");
		background-repeat: no-repeat;
		background-size: 63%;
		background-position: top center;
	}
	
	#contents .photo .wrap{
        min-width:300px;
        margin:0 auto;
        padding:4vw 0;
    }

    #contents .photo .copy{
		min-width:300px;
        height:auto;
		color:#fff;
		font-size:3.5vw;
		font-weight: 600;
		line-height: 6vw;
		margin-top:20px;
		margin-left:20px;
		margin-right:20px;
        margin-bottom:min(3.5vw,36px);
        padding:0;
		text-align: center;
    } 		
   

	#contents .photo .display{
		width:auto;
		height:auto;
		margin:0 auto;
	}

	#contents .photo .title img{
        width: 100vw;
        margin:0 auto 10px auto;
        padding:0;
    } 
    
	#contents .photo .display .detail{
		width:93.75%;
		height:auto;
		margin: 0 auto ;
		padding:0;
		overflow: hidden; /* heightを戻す */
}
		
	#contents .photo .display .detail .hsPRimg ul{
		margin:0;
		padding:0;
	}
	
	#contents .photo .display .detail .hsPRimg li{
		width:30%;
		height:30%;
		margin:3vw 1.5vw 0 1.5vw;
		padding:0;
		float:left;
	}
    
    #contents .photo .display .detail .hsPRimg img{
       border-radius: 10%;     
    }
	#contents .photo .display .detail .hsPRimg .clear{
		clear:both
	}

	
 /*ツイッター*/
    #contents .tw{
		width:100%;
		height:auto;
        margin:0 auto;
        padding:3vw 0;
		background: #ed65cf;
		position: relative;
	}

	#contents .tw .title{
		width:100%;
		height:auto;
		margin:6vw 0 0 0;
		padding-top: 21.1%;
		background-image:url("../img/tw_title.png");
		background-repeat: no-repeat;
		background-size: 63%;
		background-position: top center;
	}
	#contents .tw .wrap{
		width:85%;
        min-width:300px;
        margin:0 auto;
        padding:6vw 0;
    }
 
	#contents .tw .detail{
        min-width:300px;
        margin:0 auto;
        padding:0;
    }
    #contents .tw .presentRead{
        min-width:300px;
        height:auto;
        margin:4vw 0 2vw 0;
        font-size:2.75vw;
        line-height:5vw;
        text-align: center;
		color:#444;
    }
	#contents .tw .notice{
        height:auto;
		color:#444;
		font-size:7px;
		font-weight: 400;
        padding:0;
		text-align: center;
		margin:0;
    }
#contents .message .notice{
        height:auto;
        padding:0 1vw ;
		margin: 1vw auto 0 auto;
		text-align: center;
    }
	

/*フッタ*/	
	footer{
		width:100%;
		height:auto;
        margin:0 auto;
        padding:6vw 0 6vw 0;
		background: #7888ca;
		position: relative;
	}


		
	footer .jLogo{
		width:100%;
        margin:10px auto 5px auto;
		padding:0;
        float: left;
        text-align: center;
	}

    footer .logo_jwave {
        width: 50%;
        margin:0 0 7px 20px;  
      }

	footer .copyright{
		width:100%;
		font-size:1vw;
		color:#fff;
		text-align:center;
        letter-spacing: 0.25vw;
		margin:4.5vw 0 0 0;
	}
	
}