@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: 1s;
}
.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;
}


#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:#fff;
		/*background-attachment: fixed;*/
	   /* color:#eaff00;*/
		color:#222;
		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;
	}	

	#snsbanner{
		display: inline-block;
		margin: 2vw auto 1vw auto;
		text-align: center;
		padding:0;
		border-radius: 8vw;
	}

	#gigyaShare {
		vertical-align: top;
		text-align: center;
		margin-left:-2.5em; 
	}
	
	header{
		width:100%;
		background-image:url("../img/header_bg_pc.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		padding-top: 61%;
		position: relative;
	}
	
	header #header_inner{
		width:100%;
		height:auto;
		margin: 0 ;
/*		margin:calc(-36.7% - 20vw) auto 0 auto;*/
		text-align: center;
		position: absolute;
		top:1vw;

	}

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


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

	
	.img{
		max-width: 100%;
		border: 0;
		margin:0;
		padding:0;
	}

	#contents{
		width:100%;
		padding:0;
		margin:0 auto;
		
	}
	#contents p{
		margi:0;
		padding: 0;
	}


	#contents .header_inner_msg{
		width:100%;
		height:0;
		margin:-20% 0 -15% 0;
		background-image:url("../img/header_bg_pc.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		padding-top: 70%;
		position: relative;
	}	

	#contents .mainImage{
		width:100%;
		height:0;
		margin:0;
		padding-top: 30%;
		background-image:url(../img/header_t.png);
		background-repeat: no-repeat;
		background-size: 30%;
		background-position: center center;
		margin:9% 0 0 0;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		position: absolute;
		top:13vw;
	}
	
	/*プログラム*/

	#contents .intro{
		max-width:1200x;
		width:100%;
		height:auto;
		margin:30px auto 0 auto;
		padding: 4vw 0 1vw 0;
		background: #fff;
		position: relative;
	}
	#contents .intro .copy{
		height:auto;
		color:#316392;
		font-size:min(3.25vw,38px);
		font-weight: 600;
		margin:0 auto;
		padding:0;
		text-align: center;
	}
	
	#contents .intro .introRead{
		max-width:1200px;
		height:auto;
		margin:0 auto;
		color:#222;
		text-align: center;
	}

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

	#contents .intro .wrap {
		width:100%;
		max-width: 980px;
		display: flex;
		justify-content:center;
		flex-wrap: wrap;
		margin: 2vw auto 0 auto;
	}


	#contents .intro .box_g{
		width:20%;
		height:auto;
		margin:0 1vw;
		padding: 0;
		
	}
	#contents .intro .photo1{
		width:100%;
		height:auto;
		margin:0;
		padding-top:130%;
		background-image:url("../img/navi1.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}

	#contents .intro .photo2{
		width:100%;
		height:auto;
		margin:0;
		padding-top:130%;
		background-image:url("../img/navi2.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}
	#contents .intro .navi{
		color:#316392;
		font-family: "oxygen", sans-serif;
		font-weight: 700;
		font-style: normal;
		font-size:min(1.75vw,18px);
		font-weight: 600;
		margin:0.75vw 0 0 0;
		padding:0;
		text-align: center;
	}
	#contents .intro .c_line{
		width:100%;
		border-top:0.3em solid #84d0ef;
		padding: 0;
		margin: 0.2em 0 0.4em 0;
	}
	
	#contents .intro .name{
		color:#222;
		font-size:min(2vw,21px);
		font-weight: 600;
		margin:0;
		padding:0;
		text-align: center;
	}
	
   #contents .intro .wrap_2{
        max-width:1200px;
        margin:0 auto;
        padding:0;
    }
	
	#contents .intro .banner {
		width:20%;
		height:auto;
		padding-top:6.72%;
		background-image:url("../img/banner.gif");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		margin:2vw auto 1vw auto;
		border:1px solid #222;
	}
	#contents .intro .banner:hover{
		height:auto;
		padding-top:6.72%;
		background-image:url("../img/banner.gif");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		background-color:rgba(255,255,255,0.3);
		background-blend-mode:lighten;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		margin:2vw auto 1vw auto;
		border:1px solid #222;
	}
		
	.triangle_back{
		position: relative;
	}
 	.triangle_back::before{
		background-image: linear-gradient(0deg, rgba(246, 251, 252, 1), rgba(165, 217, 226, 1));
		width:100%;
		height: 7vw;
		clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
		content: "";
		position: absolute;
		margin-top: -7vw;
	}

   /*サブタイトル周り*/
	#contents .sub_top{
		width:25%;
		height:auto;
		margin:0 auto;
		padding-top:6%;
		background-image:url("../img/sub_top.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}
	#contents .sub_title{
		color:#316392;
		font-family: "oxygen", sans-serif;
		font-style: normal;
		font-size:min(4vw,58px);
		font-weight: 600;
		margin:0.75vw auto 0 auto;
		padding:0;
		text-align: center;
	}
	#contents .sub_title_s{
		color:#316392;
		font-family: "oxygen", sans-serif;
		font-style: normal;
		font-size:min(2.5vw,32px);
		font-weight: 400;
		margin:0 auto;
		padding:0;
		text-align: center;
	}
	#contents .sub_bottom{
		width:3.5%;
		height:auto;
		margin:0.5% auto 0 auto;
		padding-top:5%;
		background-image:url("../img/sub_bottom.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}

   /*メッセージ*/
 	#contents .message{
		width:100%;
		height:auto;
		margin:7vw auto 9vw auto;
		padding: 0;
		background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 95%, rgba(246, 251, 252, 1));
		position: relative;
    }

    #contents .message .wrap{
        max-width:1200px;
        margin:0 auto;
        padding:0;
    }
	#contents .message .copy{
		max-width:1200px;
		height:auto;
		color:#316392;
		font-size:min(3vw,32px);
		line-height:min(6vw,58px); 
		font-weight: 600;
		margin:1em auto 0 auto;
		padding:0;
		text-align: center;
	}
	#contents .message .copy .border{
		border-bottom:0.25em solid #00e600;
	}
	
  
    #contents .message .messageRead{
        max-width:1380px;
        height:auto;
        margin:0 auto;
        text-align: center;
	}
	
	#contents .message .present {
		width:100%;
		max-width: 980px;
		display: flex;
		justify-content:center;
		flex-wrap: wrap;
		margin: 0 auto 3em auto;
	}


	#contents .message .name{
		width:100%;
		font-size:min(1.75vw,18px);
		font-weight: 600;
		margin:0.5em 0 0.25em 0;
		padding:0;
		text-align: center;
	}

	#contents .message .name_s{
		width:100%;
		font-size:min(1.2vw,12px);
		font-weight: 400;
		margin: 0;
		padding:0;
		text-align: left;
	}
	#contents .message .box_g{
		width:35%;
		height:auto;
		margin:0 1vw;
		padding: 0;
		
	}
	#contents .message .photo1{
		width:100%;
		height:auto;
		margin:0;
		padding-top:74.7%;
		background-image:url("../img/present1.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}

	#contents .message .photo2{
		width:100%;
		height:auto;
		margin:0;
		padding-top:74.7%;
		background-image:url("../img/present2.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}

	#contents .message .messageRead .Readtext{
        margin: 1em auto 2vw auto;
		font-size:min(1.4vw,18px);
		line-height:min(3vw,42px);
		text-align: center;
		display: inline-block;
	}


	
	/* ボタン */
	#contents .message .btn_message a{
		width:50%;
		max-width: 380px;
		/*影の基点とするためrelativeを指定*/
		position: relative;
		/*ボタンの形状*/
		text-decoration: none;
		display: inline-block;
		text-align: center;
		box-sizing: border-box;
		outline: none;
		font-size:min(2.5vw,28px);
		font-weight: 600;
		/*アニメーションの指定*/
		transition: all 0.2s ease;
		background: #316392;
		padding:1em 0;
		margin-bottom: 1vw;
		color:#fff;
		border-radius: 0.5em;
	}


	/*hoverをした後のボタンの形状*/
	#contents .message .btn_message a:hover{
		width:50%;
		background: #fff;
		outline: 0.15em solid #316392;
		outline-offset:-0.25vw;
		color:#316392;

	}
	
	/*ボタンの中のテキスト*/
	#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;
		padding: 0 0 8vw 0;
		background: #f0f0f0;
		position: relative;
		background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 95%, rgba(246, 251, 252, 1));
	}
    #contents .guest .wrap{
        max-width:1200px;
        margin:0 auto;
        padding:0;
    }

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

	#contents .guest .box_g{
		width:20%;
		height:auto;
		margin:1vw 1vw;
		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 1vw;
		padding:0;
	}
	
	#contents .guest .box_g4{
		width:20%;
		height:auto;
		margin:1vw 1vw;
		padding:0;
	}

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

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

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

	#contents .guest .photo4{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:100%;
		background-image:url("../img/guest4.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/guest5.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/guest6.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%;
		font-size:min(1.75vw,18px);
		font-weight: 600;
		margin:0.5em 0 0.25em 0;
		padding:0;
		text-align: center;
	}

	#contents .guest .name_s{
		width:100%;
		font-size:min(1.2vw,12px);
		font-weight: 400;
		margin: 0;
		padding:0;
		text-align: center;
	}

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


	
	/*ゲスト*/
	#contents .live{
		width:100%;
		height:auto;
		margin:0 auto;
		padding: 0 0 8vw 0;
		background: #f0f0f0;
		position: relative;
		background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 95%, rgba(246, 251, 252, 1));
	}
    #contents .live .wrap{
        max-width:1200px;
        margin:0 auto;
        padding:0;
    }
	#contents .live .copy{
		height:auto;
		color:#316392;
		font-size:min(3vw,32px);
		line-height:min(6vw,58px); 
		font-weight: 600;
		margin:1em auto 0 auto;
		padding:0;
		text-align: center;
	}

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

	#contents .live .box_g{
		width:20%;
		height:auto;
		margin:1vw 1vw;
		padding:0;
	}
	
	#contents .live .box_g2{
		width:20%;
		height:auto;
		margin:1vw 1vw;
		padding:0;
	}
	#contents .live .box_g3{
		width:20%;
		height:auto;
		margin:1vw 1vw;
		padding:0;
	}
	
	#contents .live .box_g4{
		width:20%;
		height:auto;
		margin:1vw 1vw;
		padding:0;
	}

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

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

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


	#contents .live .photo_blank{
		width:100%;
		height:auto;
	}


	#contents .live .name{
		width:100%;
		font-size:min(1.75vw,18px);
		font-weight: 600;
		margin:0.5em 0 0.25em 0;
		padding:0;
		text-align: center;
	}

	#contents .live .name_s{
		width:100%;
		font-size:min(1.2vw,12px);
		font-weight: 400;
		margin: 0;
		padding:0;
		text-align: center;
	}

	#contents .live .time_s{
		width:100%;
		font-size:min(1.2vw,12px);
		font-weight: 400;
		margin: 1em 0 0.5em 0;
		padding:0;
		text-align: center;
	}
	
	#contents .live .notice{
		width:100%;
		opacity: 0.7;
		font-size:min(1vw,10px);
		font-weight: 400;
		text-align: right;
		margin: 2vw 1vw 0 0;
		padding:0;
	}	
	

	/*フォトレポート*/

	#contents .photo{
		width:100%;
		height:auto;
		margin:-7vw auto 7vw auto;
		padding: 0 0 1vw 0;
		position: relative;
		background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 95%, rgba(246, 251, 252, 1));
	}


	#contents .photo .wrap{
		max-width:1200px;
		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:#222;
		font-size:min(2vw,21px);
		font-weight: 400;
		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: 2vw auto 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{
        
    }


	/*ツイッター*/

	#contents .sns{
		width:100%;
		height:auto;
		margin:7vw auto;
		padding: 0 0 10vw 0;
		background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 95%, rgba(246, 251, 252, 1));
		position: relative;
	}

	#contents .sns .title{
        margin:0 auto;
        color:#45a3d7;
        font-family: din-2014, sans-serif;
        font-style: normal;
        font-weight:900;
        font-size:min(6vw,46px);
		text-align: center;
	}
	#contents .sns .text_s{
        font-size:min(2vw,18px);
	}
	#contents .sns .side{
		color:#9ccae4;
	}

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


	/*フッタ*/

	footer{
		width:100%;
		height:auto;
		margin:0 auto 0 auto;
		padding: 0 0 1vw 0;
		background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 95%, rgba(246, 251, 252, 1));
		position: relative;
	}
	footer .triangle_w{
		position: relative;
	}
	
 	footer .triangle_w::before{
		background: #fff;
		width:100%;
		height: 7vw;
		clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
		content: "";
		position: absolute;
		margin-top: -7vw;
	}

	footer .sns_link{
		width:100%;
		margin:1vw auto 0 0;
		padding:0;
		text-align: center;
	}

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

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

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

	footer .banner_area .banner2{
		width:100%;
		height:auto;
		padding-top:31.3%;
		background-image:url("../img/banner2.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		border:0.1vw solid #dcdcdc;
		margin-bottom: 1vw;
	}
}


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

@media screen and (max-width:640px )
{
	.pc { display: none !important; }
	.sp { display: block !important; }
	
	body{
		background:#fff;
		/*background-attachment: fixed;*/
	   /* color:#eaff00;*/
		color:#222;
		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;
	}

	#snsbanner{
		display: inline-block;
		margin: 4vw auto 3vw auto;
		text-align: center;
		padding:0;
		border-radius: 8vw;
	}

	#gigyaShare {
		vertical-align: top;
		text-align: center;
		margin-left:-2.5em; 
	}	
	/*	
		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-image:url("../img/header_bg_sp.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		padding-top: 178.2%;
		position: relative;
	}	

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

	/*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 #container {
	  display: flex;
	  justify-content: center;
	  align-items: center;
	}

	header #header_inner{
		position:relative;
		width:100%;
		height:auto;
		margin:0 10%;
		text-align: center;
		position: absolute;
		top:7vh;
	}

	#contents{
		width:100%;
		margin:0 auto;
		padding:0;
		flex: 1;
		position: relative;
	}
	

	#contents .header_inner_msg{
		width:100%;
		height:0;
		margin:-20% 0 -15% 0;
		background-image:url("../img/header_bg_pc.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		padding-top: 100%;
		position: relative;
	}	

	#contents .mainImage{
		width:100%;
		height:0;
		margin:0;
		padding-top: 50%;
		background-image:url(../img/header_t.png);
		background-repeat: no-repeat;
		background-size: 50%;
		background-position: center center;
		margin:10% 0 0 0;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		position: absolute;
		top:13vw;
	}
	
	
	#contents .intro{
		min-width:300px;
		height:auto;
		margin:0 auto;
		padding:3vw 0 3vw 0;
		background: #fff;
		position: relative;
	}

	#contents .intro .copy{
		min-width:300px;
		height:auto;
		color:#316392;
		font-size:6vw;
		line-height: 8vw;
		font-weight: 600;
		margin:3vw 20px;
		padding:0;
		text-align: center;
	} 
	
	#contents .intro .copy .l{
		font-size:6vw;
		font-weight: 900;
		line-height: 9vw;
	} 

	#contents .intro .introRead{
		min-width:300px;
		height:auto;
		margin:10px 0 0 0;
		color:#222;
		font-size:4vw;
		line-height:7vw;
		text-align: center;
	}
	#contents .intro .introRead p{
		margin:2vw 0 5vw 0;
	}
	#contents .intro .wrap {
		min-width:300px;
		display: flex;
		justify-content:center;
		flex-wrap: wrap;
		margin: 3vw auto 0 auto;
	}

	#contents .intro .box_g{
		width:35%;
		height:auto;
		margin:0 3vw 2vw 3vw;
		padding: 0;
		z-index: 100;

	}
	
	#contents .intro .photo1{
		width:100%;
		height:auto;
		margin:0;
		padding-top:130%;
		background-image:url("../img/navi1.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}

	#contents .intro .photo2{
		width:100%;
		height:auto;
		margin:0;
		padding-top:130%;
		background-image:url("../img/navi2.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}
	#contents .intro .navi{
		color:#316392;
		font-family: "oxygen", sans-serif;
		font-weight: 700;
		font-style: normal;
		font-size:4vw;
		font-weight: 600;
		margin:1vw 0 0 0;
		padding:0;
		text-align: center;
	}
	#contents .intro .c_line{
		width:100%;
		border-top:0.3em solid #84d0ef;
		padding: 0;
		margin: 0.2em 0 0.4em 0;
	}
	
	#contents .intro .name{
		color:#222;
		font-size:4.5vw;
		font-weight: 600;
		margin:0;
		padding:0;
		text-align: center;
	}
	
   #contents .intro .wrap_2{
        min-width:300px;
        margin:4vw auto 0 auto;
        padding:0;
    }
	
	#contents .intro .banner {
		width:60%;
		height:auto;
		padding-top:20%;
		background-image:url("../img/banner.gif");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		margin:2vw auto 1vw auto;
		border:1px solid #222;
	}

	
	.triangle_back{
		position: relative;
	}
 	.triangle_back::before{
		background-image: linear-gradient(0deg, rgba(246, 251, 252, 1), rgba(165, 217, 226, 1));
		width:100%;
		height: 7vw;
		clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
		content: "";
		position: absolute;
		margin-top: -7vw;
	}

   /*サブタイトル周り*/
	#contents .sub_top{
		width:50%;
		height:auto;
		margin:0 auto;
		padding-top:12%;
		background-image:url("../img/sub_top.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}
	#contents .sub_title{
		color:#316392;
		font-family: "oxygen", sans-serif;
		font-style: normal;
		font-size:7vw;
		font-weight: 600;
		margin:0.75vw auto 0 auto;
		padding:0;
		text-align: center;
	}
	#contents .sub_title_s{
		color:#316392;
		font-family: "oxygen", sans-serif;
		font-style: normal;
		font-size:3.5vw;
		font-weight: 400;
		margin:0 auto;
		padding:0;
		text-align: center;
	}
	#contents .sub_bottom{
		width:7%;
		height:auto;
		margin:0.5% auto 0 auto;
		padding-top:10%;
		background-image:url("../img/sub_bottom.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}	
 /*message*/    
  	#contents .message{
		width:100%;
		height:auto;
		margin:14vw auto 10vw auto;
		padding:0;
		background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 95%, rgba(246, 251, 252, 1));
		position: relative;
    }
	
	
    #contents .message .wrap{
        min-width:300px;
        margin:0 auto;
        padding:4vw 0;
    }
	
	#contents .message .copy{
		min-width:300px;
		height:auto;
		color:#316392;
		font-size:6vw;
		line-height: 8vw;
		font-weight: 600;
		margin:3vw 20px;
		padding:0;
		text-align: center;
	} 

    #contents .message .messageRead{
        height:auto;
        margin:0 auto;
        text-align: center;
	}

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

	#contents .message .messageRead .Readtext{
        margin: 1.5vw auto 2vw auto;
		font-size:4vw;
		line-height: 7vw;
		text-align: center;
		display: inline-block;
	}

	#contents .message .present {
		width:100%;
		max-width: 980px;
		display: flex;
		justify-content:center;
		flex-wrap: wrap;
		margin: 0 auto 4vw auto;
	}

   #contents .message .name{
		width:100%;
		font-size:3.5vw;
		font-weight: 600;
		margin:1vw 0 1vw 0;
        padding:0;
		text-align: center;
  }	

    #contents .message .name_s{
		width:100%;
		font-size:3vw;
		font-weight: 400;
		margin:0;
        padding:0;
		text-align: center;
  }	
	#contents .message .box_g{
		width:60%;
		height:auto;
		margin:1vw 0 0 0;
		padding: 0;
		
	}
	#contents .message .photo1{
		width:100%;
		height:auto;
		margin:0;
		padding-top:74.7%;
		background-image:url("../img/present1.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}

	#contents .message .photo2{
		width:100%;
		height:auto;
		margin:0;
		padding-top:74.7%;
		background-image:url("../img/present2.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}
	
	/* ボタン */
	#contents .message .btn_message a{
		width:80%;
		position: relative;
		text-decoration: none;
		display: inline-block;
		text-align: center;
		box-sizing: border-box;
		outline: none;
		font-size:3.5vw;
		font-weight: 600;
		background: #316392;
		padding:4vw 0;
		margin-bottom: 1vw;
		border-radius: 2vw;
		color:#fff;
	}


	
  /*ゲスト*/

    #contents .guest{
		width:100%;
		height:auto;
		padding:0;
		margin: 0 auto 10vw auto;
		background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 95%, rgba(246, 251, 252, 1));
		position: relative;
    }
    #contents .guest .wrap{
        min-width:300px;
        margin:0 auto;
        padding:4vw 0;
    }
	
	#contents .guest .side{
		color:#9ccae4;
	}
	
	#contents .guest .cs{
		text-align:center;
		color:#ccc;
		font-family: din-2014, sans-serif;
		font-weight: 400;
		font-style: normal;
		font-size:6vw;
		letter-spacing: 0.1vw;
		margin:0;
		padding:0 0 38vw 0;
	}	
	
	#contents .guest .wrap_2 {
		min-width:300px;
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		margin:5vw 0 2vw 0;
	}
		
	
	#contents .guest .box_g{
        width:50%;
        height:auto;
        margin:0 0 4vw 0;
		padding: 0;
    }
	
	#contents .guest .box_g2{
        width:50%;
        height:auto;
        margin:0 0 4vw 0;
		padding: 0;
    }
	
	#contents .guest .box_g3{
        width:50%;
        height:auto;
        margin:0;
		padding: 0;
    }
	#contents .guest .box_g4{
        width:50%;
        height:auto;
        margin:0;
		padding: 0;
    }
	#contents .guest .box_g5{
        width:50%;
        height:auto;
        margin:0;
		padding: 0;
    }

    #contents .guest .photo1{
        width:100%;
        height:auto;
        margin:0 0 0 0;
		padding-top:80%;
		background-image:url("../img/guest1.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:80%;
		background-image:url("../img/guest2.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }

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

    #contents .guest .photo4{
        width:100%;
        height:auto;
        margin:0;
		padding-top:80%;
		background-image:url("../img/guest4.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/guest5.jpg");
		background-repeat: no-repeat;
		background-size: contain;
        background-position: top center;
    }


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

    #contents .guest .name_s{
		width:100%;
		font-size:3vw;
		font-weight: 400;
		margin:0;
        padding:0;
		text-align: center;
  }	
   #contents .guest .time_s{
		width:100%;
		font-size:3vw;
		font-weight: 400;
		margin:1em 0 0.5em 0;
        padding:0;
		text-align: center;
  }	
	
 /*ライブ*/

    #contents .live{
		width:100%;
		height:auto;
		padding:0;
		margin: 0 auto 10vw auto;
		background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 95%, rgba(246, 251, 252, 1));
		position: relative;
    }
    #contents .live .wrap{
        min-width:300px;
        margin:0 auto;
        padding:4vw 0;
    }
	#contents .live .copy{
		height:auto;
		color:#316392;
		font-size:5vw;
		line-height:7vw; 
		font-weight: 600;
		margin:1em auto 0 auto;
		padding:0;
		text-align: center;
	}

	#contents .live .wrap_2 {
		min-width:300px;
		display: flex;
		flex-wrap: wrap;
		justify-content:center;
		align-items: flex-start;
		margin:5vw 0 2vw 0;
	}
		
	
	#contents .live .box_g{
        width:50%;
        height:auto;
        margin:0 0 4vw 0;
		padding: 0;
    }
	
	#contents .live .box_g2{
        width:50%;
        height:auto;
        margin:0 0 4vw 0;
		padding: 0;
    }
	
	#contents .live .box_g3{
        width:50%;
        height:auto;
        margin:0;
		padding: 0;
    }
	#contents .live .box_g4{
        width:50%;
        height:auto;
        margin:0;
		padding: 0;
    }
	#contents .live .box_g5{
        width:50%;
        height:auto;
        margin:0;
		padding: 0;
    }

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

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

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

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

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


    #contents .live .name{
		width:100%;
		font-size:3.5vw;
		font-weight: 600;
		margin:1vw 0 1vw 0;
        padding:0;
		text-align: center;
  }	

    #contents .live .name_s{
		width:100%;
		font-size:3vw;
		font-weight: 400;
		margin:0;
        padding:0;
		text-align: center;
  }	
 

    #contents .live .time_s{
		width:100%;
		font-size:3vw;
		font-weight: 400;
		margin:1em 0 0.5em 0;
        padding:0;
		text-align: center;
  }	


	
 /*ツイッター*/
    #contents .sns{
		width:100%;
		height:auto;
		padding:0;
		background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 95%, rgba(246, 251, 252, 1));
		position: relative;
    }
	#contents .sns .wrap{
		width:85%;
        min-width:300px;
        margin:0 auto;
        padding:6vw 0 16vw 0;
    }
 
	#contents .sns .detail{
        min-width:300px;
        margin:3vw auto 0 auto;
        padding:0;
    }
    #contents .sns .presentRead{
        min-width:300px;
        height:auto;
        margin:4vw 0 2vw 0;
        font-size:2.75vw;
        line-height:5vw;
        text-align: center;
		color:#444;
    }
	#contents .sns .notice{
        height:auto;
		color:#444;
		font-size:7px;
		font-weight: 400;
        padding:0;
		text-align: center;
		margin:0;
    }
	
 /*フォトレポート*/
    #contents .photo{
		width:100%;
		height:auto;
		margin:0 auto 16vw auto;
		padding: 0 0 1vw 0;
		background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 95%, rgba(246, 251, 252, 1));
		position: relative;
	}

	#contents .photo .title{
        margin:0 auto;
        color:#45a3d7;
        font-family: din-2014, sans-serif;
        font-style: normal;
        font-weight:900;
        font-size:7vw;
		text-align: center;
	}
	#contents .photo .side{
		color:#9ccae4;
	}
	
	#contents .photo .wrap{
        min-width:300px;
        margin:0 auto;
        padding:4vw 0;
    }

    #contents .photo .copy{
		min-width:300px;
        height:auto;
		color:#222;
		font-size:3vw;
		font-weight: 400;
		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
	}	

/*フッタ*/	
	footer{
		width:100%;
		height:auto;
		margin:0 auto 0 auto;
		padding: 0 0 5vw 0;
		background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 95%, rgba(246, 251, 252, 1));
		position: relative;
	}

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

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

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

	footer .copyright{
		width:100%;
		font-size:1vw;
		text-align:center;
        letter-spacing: 0.25vw;
		margin:4.5vw 0 0 0;
	}
	footer .banner_area{
		width:60%;
		height:auto;
		margin:0 auto 2vw auto;
		padding: 0;
		background: #fff;
		position: relative;
	}

	footer .banner_area .banner2{
		width:100%;
		height:auto;
		padding-top:31.3%;
		background-image:url("../img/banner2.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		border:0.1vw solid #dcdcdc;
		margin-bottom: 1vw;
	}	
}