@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;
}

.shapedividers_com-8266 {
	overflow: hidden;
	position: relative;
	height: 100px;
}
.shapedividers_com-8266::before {
	content: "";
	position: absolute;
	z-index: 3;
	pointer-events: none;
	background-repeat: no-repeat;
	bottom: -0.1vw;
	left: -0.1vw;
	right: -0.1vw;
	top: -0.1vw;
	transform: scaleX(4);
	transform-origin: 100% 0;
	animation: 10s infinite alternate shape-anim-8266 linear;
	background-size: 100% 100px;
	background-position: 50% 0%;
	background-image: url('data:image/svg+xml;charset=utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 35.28 2.17" preserveAspectRatio="none"><path d="M0 .5c3.07.55 9.27-.42 16.14 0 6.88.4 13.75.57 19.14-.11V0H0z" fill="%2395d8cf"/><path d="M0 1c3.17.8 7.29-.38 10.04-.55 2.75-.17 9.25 1.47 12.67 1.3 3.43-.17 4.65-.84 7.05-.87 2.4-.02 5.52.88 5.52.88V0H0z" opacity=".5" fill="%2395d8cf"/><path d="M0 1.85c2.56-.83 7.68-.3 11.79-.42 4.1-.12 6.86-.61 9.58-.28 2.73.33 5.61 1.17 8.61 1 3-.19 4.73-.82 5.3-.84V.1H0z" opacity=".5" fill="%2395d8cf"/></svg>');
}
@media (min-width: 2100px) {
	.shapedividers_com-8266::before {
		background-size: 100% calc(2vw + 100px);
	}
}
@keyframes shape-anim-8266 {
	100% {
		transform: scaleX(4) translateX(calc(100% - (100% / 4)));
	}
}

@media screen and (min-width:769px )
{
	/*トップ*/
	.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: 0 auto 1vw auto;
		text-align: center;
		padding:0;
		background: #fff;
		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: 60.9375%;
		position: relative;
	}
	header #header_inner{
		width:45%;
		height:auto;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		margin: 4vw auto 0 auto;
	}
	header .mainImage{
		width:100%;
		height:0;
		margin:0;
		padding-top: 120.2346%;
		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;
		background: #fff;
		
	}
	#contents p{
		margi:0;
		padding: 0;
	}


	/*プログラム*/

	#contents .intro{
		max-width:1200x;
		width:100%;
		height:auto;
		margin:-6vw auto 0 auto;
		padding: 8vw 0 3vw 0;
		background-color: #dff2f0;
		position: relative;
	}
	@media (min-width: 1201px) {
	#contents .intro {
			margin:-72px auto 0 auto;
			padding: 96px 0 36px 0;
		}
	}
	#contents .intro .copy{
		height:auto;
		color:#4b91b7;
		font-size:min(3.25vw,38px);
		font-weight: 600;
		line-height: 1.4em;
		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:25%;
		height:auto;
		margin:0 2vw;
		padding: 0;
	}
	#contents .intro .photo1{
		width:100%;
		height:auto;
		margin:0;
		padding-top:100%;
		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:100%;
		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:#4b91b7;
		font-family: "oxygen", sans-serif;
		font-style: normal;
		font-size:min(1.5vw,18px);
		font-weight: 600;
		margin:0.75vw 0 0 0;
		padding:0;
		text-align: center;
	}
	#contents .intro .name{
		color:#222;
		font-size:min(1.8vw,21px);
		font-weight: 600;
		margin:0;
		padding:0;
		text-align: center;
	}
  	#contents .intro .name_s{
		width:100%;
		font-size:min(1.2vw,12px);
		font-weight: 400;
		margin: 0;
		padding:0;
		text-align: center;
		color:#666;
	}
	 #contents .intro .wrap_2{
        max-width:1200px;
        margin:0 auto;
        padding:0;
	   	position: relative;
	   	z-index: 3;
    }
	#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:4vw auto 0 auto;
		/*border:1px solid #222;*/
	}
	#contents .intro .banner:hover{
		opacity: 0.5; 
	}
	.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 .message{
		width:100%;
		height:auto;
		margin:0 auto;
		padding: 0 0 3vw 0;
		position: relative;
    }
	#contents .message .title{
		height:auto;
		font-family: montserrat, sans-serif;
		font-style: normal;
		font-weight: 600;
		color:#4b91b7;
		font-size:min(4.25vw,51px);
		line-height: 1.4em;
		margin:0 auto;
		padding:0;
		text-align: center;
		position: relative;
	}
	#contents .message .title::before {
		  background-color: #7bb3d4; 
		  bottom: -.15em; 
		  content: "";
		  height: .1em; 
		  left: 50%; 
		  position: absolute;
		  transform: translateX(-50%); 
		  width: 2.5em; 
	}
    #contents .message .wrap{
        max-width:1200px;
        margin:0 auto;
        padding:2vw 0 1vw 0;
    }
	#contents .message .copy{
		max-width:1200px;
		height:auto;
		color:#2d8e6a;
		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 .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: 450px;
		/*影の基点とするため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:.75em 0;
		margin-bottom: 1vw;
		color:#fff;
		border-radius: 2em;
		z-index: 3;
	}
	/*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;
		background: #f0f0f0;
		position: relative;
		margin:-6vw auto 0 auto;
		padding: 8vw 0 3vw 0;
		background-color: #dff2f0;
	}
 	@media (min-width: 1201px) {
	#contents .guest {
			margin:-72px auto 0 auto;
			padding: 96px 0 36px 0;
		}
	}
	#contents .guest .title{
		height:auto;
		font-family: montserrat, sans-serif;
		font-style: normal;
		font-weight: 600;
		color:#4b91b7;
		font-size:min(4.25vw,51px);
		line-height: 1.4em;
		margin:0 auto;
		padding:0;
		text-align: center;
		position: relative;
	}
	#contents .guest .title::before {
		  background-color: #7bb3d4; 
		  bottom: -.15em; 
		  content: "";
		  height: .1em; 
		  left: 50%; 
		  position: absolute;
		  transform: translateX(-50%); 
		  width: 2.5em; 
	}
 	#contents .guest .copy{
		height:auto;
		color:#2d8e6a;
		font-size:min(3vw,32px);
		line-height:min(6vw,58px); 
		font-weight: 600;
		margin:1em auto 0 auto;
		padding:0;
		text-align: center;
	}
  #contents .guest .wrap{
        max-width:1200px;
	   	width:100%;
        margin:0 auto;
        padding:0;
    }
	#contents .guest .wrap_2 {
		width:100%;
		display: flex;
		justify-content:center;
		align-items: flex-start;
		flex-wrap: wrap;
		margin: 0 auto;
		padding:0;
	}
	#contents .guest .box_g{
		  width:20%;
    	margin:1vw 1%;
		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: cover;
		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: cover;
		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: cover;
		background-position: top center;
	}
	#contents .guest .live1{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:100%;
		background-image:url("../img/live1.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: top center;
	}
	#contents .guest .live2{
		width:100%;
		height:auto;
		margin:0 ;
		padding-top:100%;
		background-image:url("../img/live2.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		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;
		color:#666;
	}
	
	#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 .sound{
		max-width:1200x;
		width:100%;
		height:auto;
		margin:0 auto;
		padding: 0 0 3vw 0;
		position: relative;
	}
	@media (min-width: 1201px) {
	#contents .sound {
			margin:-72px auto 0 auto;
			padding: 96px 0 36px 0;
		}
	}
	#contents .sound .title{
		height:auto;
		font-family: montserrat, sans-serif;
		font-style: normal;
		font-weight: 600;
		color:#4b91b7;
		font-size:min(4.25vw,51px);
		line-height: 1.4em;
		margin:0 auto;
		padding:0;
		text-align: center;
		position: relative;
	}
	#contents .sound .title::before {
		  background-color: #7bb3d4; 
		  bottom: -.15em; 
		  content: "";
		  height: .1em; 
		  left: 50%; 
		  position: absolute;
		  transform: translateX(-50%); 
		  width: 2.5em; 
	}
	#contents .sound .copy{
		height:auto;
		color:#2d8e6a;
		font-size:min(3vw,32px);
		line-height:min(6vw,58px); 
		font-weight: 600;
		margin:1em auto 0 auto;
		padding:0;
		text-align: center;
	}
	#contents .sound .introRead{
		max-width:1200px;
		height:auto;
		margin:0 auto;
		color:#222;
		text-align: center;
	}
	#contents .sound .introRead p{
        margin: 1em auto 2vw auto;
		font-size:min(1.4vw,18px);
		line-height:min(3vw,42px);
		text-align: center;
	}
	#contents .sound .wrap {
		width:100%;
		max-width: 980px;
		display: flex;
		justify-content:center;
		flex-wrap: wrap;
		margin: 2vw auto 0 auto;
	}
	#contents .sound .box_g{
		width:25%;
		height:auto;
		margin:0 2vw;
		padding: 0;
	}
	#contents .sound .photo1{
		width:100%;
		height:auto;
		margin:0;
		padding-top:100%;
		background-image:url("../img/sound1.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}
	#contents .sound .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 .sound .name_s{
		width:100%;
		font-size:min(1.2vw,12px);
		font-weight: 400;
		margin: 0;
		padding:0;
		text-align: center;
		color:#666;
	}
	/*フォトレポート*/

	#contents .photo{
		width:100%;
		height:auto;
		margin:-6vw auto 0 auto;
		padding: 8vw 0 3vw 0;
		position: relative;
		background-color: #dff2f0;
	}
 	#contents .photo .title{
		height:auto;
		font-family: montserrat, sans-serif;
		font-style: normal;
		font-weight: 600;
		color:#4b91b7;
		font-size:min(4.25vw,51px);
		line-height: 1.4em;
		margin:0 auto;
		padding:0;
		text-align: center;
		position: relative;
	}
	#contents .photo .title::before {
		  background-color: #7bb3d4; 
		  bottom: -.15em; 
		  content: "";
		  height: .1em; 
		  left: 50%; 
		  position: absolute;
		  transform: translateX(-50%); 
		  width: 2.5em; 
	}
	#contents .photo .wrap{
		max-width:1200px;
        margin:0 auto 1vw auto;
        padding:0;
    }
	#contents .photo .display{
		width:auto;
		height:auto;
		margin:-3vw auto 3vw auto;
	}
	#contents .photo .title img{
        width: 100vw;
        margin:0 auto 10px auto;
        padding:0;
    } 
	#contents .photo .display .detail{
		width:93.75%;
		height:auto;
		margin: 4vw 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{
    }

	/*フッタ*/

	footer{
		width:100%;
		height:auto;
		margin:2vw auto 0 auto;
		padding:2vw 0 3vw 0;
		background-color: #fff;
		position: relative;
		text-align: center;
	}
 	@media (min-width: 1201px) {
	f {
			margin:72px auto 0 auto;
			padding: 48px 0 36px 0;
		}
	}
	footer .jLogo{
		width:100%;
		margin:1vw auto 5px 0;
		padding:0;
		text-align: center;
	}

	footer .logo_jwave {
		width: 240px;
		margin: 1vw 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;
	}
}


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

@media screen and (max-width:768px )
{
	.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: 1vw auto 3vw auto;
		text-align: center;
		padding:0;
		background: #fff;
		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;
		background-image:url("../img/header_bg_sp.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		padding-top: 177.3437%;
		position: relative;
	}	

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

	@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:-25% 0 0 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: 45%;
		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{
		min-width:300px;
		height:auto;
		margin:-9vw auto 0 auto;
		padding: 9vw 0 2vw 0;
		background-color: #dff2f0;
		position: relative;
	}
	#contents .intro .copy{
		min-width:300px;
		height:auto;
		color:#4b91b7;
		font-size:5.5vw;
		line-height: 8vw;
		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:#222;
		font-size:3.75vw;
		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:100%;
		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:100%;
		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:#4b91b7;
		font-family: montserrat, sans-serif;
		font-weight: 600;
		font-style: normal;
		font-size:3vw;
		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:4vw;
		font-weight: 600;
		margin:0;
		padding:0;
		text-align: center;
	}
  	#contents .intro .name_s{
		width:100%;
		font-size:2.5vw;
		font-weight: 400;
		margin: 0;
		padding:0;
		text-align: center;
		color:#666;
	}
   #contents .intro .wrap_2{
        min-width:300px;
        margin:4vw auto 5vw 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 0 auto;
		/*border:1px solid #222;*/
	}
	
	#contents .message{
		min-width:300px;
		height:auto;
		margin:0 auto;
		padding: 0 0 7vw 0;
		position: relative;
	}
	#contents .message .title{
		height:auto;
		font-family: montserrat, sans-serif;
		font-style: normal;
		font-weight: 600;
		color:#4b91b7;
		font-size:8vw;
		line-height: 1.4em;
		margin:0 auto;
		padding:0;
		text-align: center;
		position: relative;
	}
	#contents .message .title::before {
		  background-color: #7bb3d4; 
		  bottom: -.15em; 
		  content: "";
		  height: .1em; 
		  left: 50%; 
		  position: absolute;
		  transform: translateX(-50%); 
		  width: 2.5em; 
	}
    #contents .message .wrap{
        max-width:1200px;
        margin:0 auto;
        padding:2vw 0 1vw 0;
    }	
    #contents .message .wrap{
        min-width:300px;
        margin:0 auto;
        padding:2vw 0 1vw 0;
    }
	
	#contents .message .copy{
		min-width:300px;
		height:auto;
		color:#316392;
		font-size:5.5vw;
		line-height: 8vw;
		font-weight: 600;
		margin:6vw 20px 2vw 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 .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: 8vw;
		color:#fff;
	}


	
  /*ゲスト*/

    #contents .guest{
		min-width:300px;
		height:auto;
		margin:-9vw auto 0 auto;
		padding: 8vw 0 4vw 0;
		background-color: #dff2f0;
		position: relative;
    }
 	#contents .guest .title{
		height:auto;
		font-family: montserrat, sans-serif;
		font-style: normal;
		font-weight: 600;
		color:#4b91b7;
		font-size:8vw;
		line-height: 1.4em;
		margin:0 auto;
		padding:0;
		text-align: center;
		position: relative;
	}
	#contents .guest .title::before {
		  background-color: #7bb3d4; 
		  bottom: -.15em; 
		  content: "";
		  height: .1em; 
		  left: 50%; 
		  position: absolute;
		  transform: translateX(-50%); 
		  width: 2.5em; 
	}
 	#contents .guest .copy{
		min-width:300px;
		height:auto;
		color:#316392;
		font-size:5.5vw;
		line-height: 8vw;
		font-weight: 600;
		margin:6vw 20px 2vw 20px;
		padding:0;
		text-align: center;
	} 
  #contents .guest .wrap{
        min-width:300px;
        margin:0 auto;
        padding: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:40%;
        height:auto;
        margin:0 5% 4vw 5%;
		padding: 0;
    }

    #contents .guest .photo1{
        width:100%;
        height:auto;
        margin:0 0 0 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 0 0 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 .live1{
        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 .guest .live2{
        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 .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:2.75vw;
		font-weight: 400;
		margin:0;
        padding:0;
		text-align: center;
  }	
/*sound*/	
	#contents .sound{
		min-width:300px;
		height:auto;
		margin:-9vw auto 0 auto;
		padding: 9vw 0 2vw 0;
		background-color: #fff;
		position: relative;
	}
	#contents .sound .copy{
		min-width:300px;
		height:auto;
		color:#316392;
		font-size:5.5vw;
		line-height: 8vw;
		font-weight: 600;
		margin:6vw 20px 2vw 20px;
		padding:0;
		text-align: center;
	} 
	#contents .sound .title{
		height:auto;
		font-family: montserrat, sans-serif;
		font-style: normal;
		font-weight: 600;
		color:#4b91b7;
		font-size:8vw;
		line-height: 1.4em;
		margin:0 auto;
		padding:0;
		text-align: center;
		position: relative;
	}
	#contents .sound .title::before {
		  background-color: #7bb3d4; 
		  bottom: -.15em; 
		  content: "";
		  height: .1em; 
		  left: 50%; 
		  position: absolute;
		  transform: translateX(-50%); 
		  width: 2.5em; 
	}
	#contents .sound .introRead{
		min-width:300px;
		height:auto;
        margin: 1.5vw auto 2vw auto;
		font-size:4vw;
		line-height: 7vw;
		text-align: center;
	}
	#contents .sound .introRead p{
		margin:2vw 0 5vw 0;
	}
	#contents .sound .wrap {
		min-width:300px;
		display: flex;
		justify-content:center;
		flex-wrap: wrap;
		margin: 3vw auto 0 auto;
	}

	#contents .sound .box_g{
		width:35%;
		height:auto;
		margin:0 3vw 2vw 3vw;
		padding: 0;
		z-index: 100;
	}
	
	#contents .sound .photo1{
		width:100%;
		height:auto;
		margin:0;
		padding-top:100%;
		background-image:url("../img/sound1.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}
	#contents .sound .name{
		width:100%;
		font-size:3.5vw;
		font-weight: 600;
		margin:1vw 0 1vw 0;
        padding:0;
		text-align: center;
	}
  	#contents .sound .name_s{
		width:100%;
		font-size:2.75vw;
		font-weight: 400;
		margin:0;
        padding:0;
		text-align: center;
	}
  	
 /*フォトレポート*/
    #contents .photo{
		width:100%;
		height:auto;
		margin:-9vw auto 0 auto;
		padding: 8vw 0 4vw 0;
		background-color: #dff2f0;
		position: relative;
    }
	#contents .photo .title{
		height:auto;
		font-family: montserrat, sans-serif;
		font-style: normal;
		font-weight: 600;
		color:#4b91b7;
		font-size:8vw;
		line-height: 1.4em;
		margin:0 auto;
		padding:0;
		text-align: center;
		position: relative;
	}
	#contents .photo .title::before {
		  background-color: #7bb3d4; 
		  bottom: -.15em; 
		  content: "";
		  height: .1em; 
		  left: 50%; 
		  position: absolute;
		  transform: translateX(-50%); 
		  width: 2.5em; 
	}
	#contents .photo .side{
		color:#9ccae4;
	}
	
	#contents .photo .wrap{
        min-width:300px;
        margin:0 auto;
        padding:2vw 0 0 0;

    }
	#contents .photo .display{
		width:auto;
		height:auto;
		margin:3vw auto 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;
		padding: 2vw 0 4vw 0;
		background-color: #fff;
		position: relative;
		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;
	}	
}