body{
	background:#fff;
   /* color:#eaff00;*/
    color:#333;
	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;
}
ul, li {
	list-style: none;
}
a:link{
	color:#1DC8F2;
	text-decoration:none;
}
a:visited{
	color:#1DC8F2;
	text-decoration:none;
}
a:hover{
	color:#0e9de2;
	text-decoration:none;
}

.hidden{
	display:none;
	font-size:0px;
	text-indent:-9999px;
}
.fadeIn {
  opacity: 0;
  transition: 2s;
}
.fadeIn.is-show {
  opacity: 1;
}
.fadeIn.is-show-msg {
  opacity: 1;
}
#contents .clear{
	clear:both;
}
#snsbanner{
    display: inline-block;
	margin: 2em auto 1em auto;
	padding:0.25em 0.5em;
	text-align: center;
	padding:0;
	background: #999;
	border-radius: 5em;
}
#gigyaShare {
    vertical-align: top;
	text-align: center;
	margin-left:-2.5em; 
}
.fadein-h {
  animation-name: fadeInAnime;
  animation-duration: 1.5s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}
@keyframes fadeInAnime {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0.8;
  }
  100% {
    opacity: 1;
  }
}

#contents #message dd input, textarea {
	width: 500px;
}

@media screen and (min-width:641px )
{
	.pc { display: block !important; }
	.sp { display: none !important; }
	
/*ヘッダ　index、thanks用*/
	
	header{
		background-color: #93d3f7;
		position: relative;
		top: 0;
	}
	header #main_header{
		width:100%;
		padding-top: 53.125%;
		background-image:url("../img/top_img.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	header #main_header .header_inner{
		width:40%;
		height:auto;
		margin: 0 30%;
		text-align: center;
		position: absolute;
		top:14vw;
	}
	header #main_header .main_image{
		width:100%;
		padding-top: 50.085%;
		background-image:url("../img/logo.svg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		margin:0;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		position: relative;
	}
	
/*ヘッダ　archive用*/
	
	header #archive_header{
		width:100%;
		padding-top: 40%;
		background-image:url("../img/top_img.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
	}
	header #archive_header .header_inner{
		width:40%;
		height:auto;
		margin: 0 30%;
		text-align: center;
		position: absolute;
		top:9vw;
	}
	header #archive_header .main_image{
		width:100%;
		padding-top: 50.085%;
		background-image:url("../img/logo.svg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		margin:0;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		position: relative;
	}

/*コンテンツ*/
	
	#contents{
		width:100%;
		padding:0;
		margin:0 auto;
		background: url("../img/contents_bg.jpg") repeat;
		flex: 1;
	}
	#contents p{
		margin:0;
		padding: 0;
	}
	
/* intro コピー*/
	#contents #intro{
		position: relative;
		background: #fff;
		padding: 0;
		margin:0;
	}
	
	#contents #intro .program{
		width:80%;
		max-width: 1280px;
		height:auto;
		margin:0 auto;
		font-size:min(17.75vw,220px);
		padding: 2vw 0;
		position: relative;
	}
	#contents #intro .program h2{
		margin: 0 0 0 0;
		font-size:min(1.75vw,24px);
		line-height:min(2.5vw,42px);
		color:#000;
		font-weight: 900;
		font-style: normal;
		padding:0;
		text-align: center;
	}		

/* intro リード*/
	#contents #intro_r{
		position: relative;
		padding: 0;
		margin:0;
	}
	#contents #intro_r .program{
		width:80%;
		max-width: 1280px;
		height:auto;
		margin:0 auto;
		font-size:min(17.75vw,220px);
		padding: 1vw 0 0 0;
		position: relative;
	}
	#contents #intro_r .program p{
		margin: 1em 0 0 0;
		font-size:min(1.5vw,21px);
		line-height:min(2.5vw,42px);
		font-weight: 400;
		font-style: normal;
		padding:0;
		text-align: center;
	}
	
/* ナビゲーター */
	#contents #navi{
		max-width: 1280px;
		width:100%;
		height:auto;
		margin:0 auto;
		font-size:min(17.75vw,220px);
		padding: 0 0 0 0;
		margin-top: 3vw;
		position: relative;
	}
	#contents #navi .wrap {
		max-width: 1280px;
		width:100%;
		display: flex;
		justify-content:center;
		align-items: center;
		flex-wrap: wrap;
		margin: 0 auto;
		padding:0;
	}
	#contents #navi .wrap2 {
		max-width: 1280px;
		width:100%;
		display: flex;
		justify-content:center;
		align-items: flex-start;
		flex-wrap: wrap;
		margin: 0.5vw auto 0 auto;
		padding:0;
	}
	#contents #navi .box_g{
		width:20%;
		height:auto;
		margin:0;
		padding:0;
	}
	#contents #navi .navi1{
		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;
	}	
	#contents #navi .navi2{
		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;
	}	
	#contents #navi .name{
		width:100%;
		font-size:min(2vw,21px);
		font-weight: 400;
		margin:0 0 0 0;
		padding:0.5em 0;
		text-align: center;
		color:#fff;
		background-color: #000;
	}
	#contents #navi .item{
		width:100%;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 700;
		font-size:min(1.75vw,18px);
		margin:0.25em 0 0 0;
		padding:0;
		text-align: center;
		color:#000;
	}
	#contents #navi .name_b{
		font-weight: 600;
	}
	@media screen and (min-width:1281px )
	{
		#contents #navi{
			width: 1280px;
			height:auto;
			margin:0 auto;
			font-size:min(17.75vw,220px);
			padding: 0 0 0 0;
			margin-top: 40px;
			position: relative;
		}
		#contents #navi .wrap {
			width:1280px;
			display: flex;
			justify-content:center;
			align-items: center;
			flex-wrap: wrap;
			margin: 0 auto;
			padding:0;
		}
		#contents #navi .wrap2 {
			width: 1280px;
			display: flex;
			justify-content:center;
			align-items: flex-start;
			flex-wrap: wrap;
			margin: 6px auto 0 auto;
			padding:0;
		}
		#contents #navi .box_g{
			width:256px;
			height:auto;
			margin: 0;
			padding:0;
		}
		#contents #navi .navi1{
			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;
		}	
		#contents #navi .navi2{
			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;
		}
	}

/* SNSリンクボタン */	
	#contents #sns_i{
		max-width: 1280px;
		width:100%;
		height:auto;
		margin:0 auto;
		font-size:min(17.75vw,220px);
		padding: 0 0 0 0;
		margin-top: 4vw;
		position: relative;
	}
	#contents #sns_i .wrap {
		max-width: 1280px;
		width:100%;
		display: flex;
		justify-content:center;
		align-items: center;
		flex-wrap: wrap;
		margin: 0 auto;
		padding:0;
	}
	#contents #sns_i .box_g{
		width:5%;
		height:auto;
		margin:0 0.75vw;
		padding:0;
	}
	#contents #sns_i .icon1{
		width:100%;
		height:auto;
		margin:0;
		padding-top:100%;
		background-image:url("../img/about_sns_insta.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}	
	#contents #sns_i .icon2{
		width:100%;
		height:auto;
		margin:0;
		padding-top:100%;
		background-image:url("../img/about_sns_x.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	
/* KDDIバナー */
	#contents .kddi_banner{
		width:25%;
		height:auto;
		padding-top: 6.25%;
		background-image:url("../img/kddi_banner.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		border:1px solid #000;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		margin:3vw auto;
	}
	
/* radiko、Podcast */
	#contents #connect{
		width:100%;
		background-image:url("../img/top_img_bk.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: top center;
		position:relative;
		padding:3vw 0 1vw 0;
	}
	#contents #connect .title{
		width:80%;
		max-width: 1280px;
		height:auto;
		margin:0 auto;
		padding: 0;
		position: relative;
	}
	#contents #connect .title h3{
		font-size:min(2.75vw,32px);
		line-height:min(4vw,42px);
		color:#000;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 900;
		margin: 0 0 0 0;
		padding:0;
		text-align: center;
	}		
	#contents #connect .under {
  		border-bottom: solid 3px #000;
	}
	#contents #connect .container {
		position: relative;
		background: #93d3f7;
		height: 5vw; /* waveと高さを同じに */
	}
	
/* radiko */
	#contents #radiko{
		width:100%;
		max-width: 1280px;
		height:auto;
		margin:3vw auto 0 auto;
		padding: 0;
		position: relative;
	}
	#contents #radiko h4{
		font-size:min(1.75vw,28px);
		line-height:min(4vw,42px);
		color:#000;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 400;
		margin: 0 0 0 0;
		padding:0;
		text-align: center;
	}		
	#contents #radiko .under {
  		border-bottom: solid 2px #000;
	}
	#contents #radiko .b_space{
		width:100%;
		height:auto;
		margin:1vw auto;
		padding: 3vw 0;
		position: relative;
		background: rgba(255,255,255, .6);
		text-align: center;
	}	

/* Podcast */	
	#contents #podcast{
		width:100%;
		max-width: 1280px;
		height:auto;
		margin:2vw auto 0 auto;
		padding: 0;
		position: relative;
	}
	#contents #podcast h4{
		font-size:min(1.75vw,28px);
		line-height:min(4vw,42px);
		color:#000;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 400;
		margin: 0 0 0 0;
		padding:0;
		text-align: center;
	}		
	#contents #podcast .under {
  		border-bottom: solid 2px #000;
	}
	#contents #podcast .b_space{
		width:100%;
		height:auto;
		margin:1vw auto;
		padding: 3vw 0;
		position: relative;
		background: rgba(255,255,255, .6);
		text-align: center;
	}
	
/* onair info */
	#contents #onair{
		position: relative;
		background: #fff;
		padding: 0;
		margin:0 0 0 0;
	}
	#contents #onair .title{
		width:80%;
		max-width: 1280px;
		height:auto;
		margin:0 auto;
		padding: 3vw 0 0 0;
		position: relative;
	}
	#contents #onair .title h3{
		font-size:min(2.75vw,32px);
		line-height:min(4vw,42px);
		color:#000;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 900;
		margin: 0 0 0 0;
		padding:0;
		text-align: center;
	}		
	#contents #onair .under {
  		border-bottom: solid 3px #000;
	}
	
/*latest&next*/
	#contents .p-ln{
		width:100%;
		height:auto;
		margin:0 auto;
		padding:3vw 0 2vw 0;
		background: #fff;
	}
	#contents .p-ln .wrap{
		width:72%;
		background: #fff;
		max-width: 1240px;
		height:auto;
		margin:0 auto;
		padding:0 2vw;
	}
	#contents .p-ln .cs{
		margin: 2em 0 3em 0;
		font-size:min(3vw,42px);
		color:#999;
		font-weight: 400;
		font-style: normal;
		padding:0;
		text-align: center;
	}
	
/* sns */
	#contents #sns{
		position: relative;
		padding:4vw 0 0 0;
	}
	#contents #sns .title{
		width:80%;
		max-width: 1280px;
		height:auto;
		margin:0 auto;
		padding: 0;
		position: relative;
	}
	#contents #sns .title h3{
		font-size:min(2.75vw,32px);
		line-height:min(4vw,42px);
		color:#000;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 900;
		margin: 0 0 0 0;
		padding:0;
		text-align: center;
	}		
	#contents #sns .under {
  		border-bottom: solid 3px #000;
	}

/* instagram */	
	#contents .insta{
		width:72%;
		max-width: 1240px;
		height:auto;
		margin:4vw auto 3vw auto;
		padding:0 ;
	}
	#contents .insta .insta_icon{
		width:15%;
		height:auto;
		margin:0 auto 1vw auto;
		padding-top:5.27%;
		background-image:url("../img/acv_insta.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	#contents .insta .x_icon{
		width:20%;
		height:auto;
		margin:2vw auto 4vw auto;
		padding-top:5.41%;
		background-image:url("../img/acv_x.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	#contents .insta .cInner {
		width: 100%;
		max-width: 1240px;
		margin: 0 auto;
		text-align: center;
		position: relative;
	}
	#contents .insta .snsWrap{
		width: 100%;
		max-width: 1240px;
	}
	#contents .insta .snsWrap .instaWrap{
		width: 80%;
		padding:0;
		margin:0 auto;
	}
	#contents .insta .snsWrap .instaWrap ul{
		display: flex;
		justify-content: space-between;
    	flex-wrap:wrap;
    	margin: 0;
    	padding: 0;
	}
	#contents .insta .snsWrap .instaWrap ul::after{
		display: block;
		content:"";
		width: 20%;
		margin:0 1vw 0 1vw;
	}
	#contents .insta .snsWrap .instaWrap li{
		width: 30%;
		margin-bottom: 4%;
		padding: 0;
		margin: 1em 0;
	}	
	#contents .insta .snsWrap .instaWrap ul li img{
		width: 100%;
		height: auto;
	}
		
	
/* archives */
	#contents #archives{
		position: relative;
		padding:4vw 0 0 0;
		background-image:url("../img/top_img_bk.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: top center;
		position:relative;
		padding:3vw 0 1vw 0;
		text-align: center;
	}
	#contents #archives .title{
		width:80%;
		max-width: 1280px;
		height:auto;
		margin:0 auto;
		padding: 0;
		position: relative;
	}
	#contents #archives .title h3{
		font-size:min(2.75vw,32px);
		line-height:min(4vw,42px);
		color:#000;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 900;
		margin: 0 0 0 0;
		padding:0;
		text-align: center;
	}		
	#contents #archives .under {
  		border-bottom: solid 3px #000;
	}
	#contents #archives .article-wrap {
  		background: rgba(255,255,255, .6);
		width:70%;
		padding:2vw 0;
		margin: 3vw auto 1vw auto;
	}
	#contents #archives .article-head{
		width:90%;
		max-width:920px;	
		margin: 0 auto;
	}
	#contents #archives .update{
		font-size:min(2vw,21px);
		color:#000;
		font-style: normal;
		font-weight: 900;
		padding:0;
		text-align: left;
		line-height: 1.5em;
		border-bottom: 2px solid #000;
	}
	#contents #archives .archive-info-image{
		width:90%;
		max-width:920px;
		margin:1vw auto;
	}
	#contents #archives .archive-info-image img{
		width:100%;
	}
	#contents #archives .archive-info-comment{
		width:90%;
		max-width:920px;
		font-size:min(1.25vw,16px);
		color:#000;
		font-style: normal;
		font-weight: 400;
		line-height: 1.5em;
		margin: 0 auto;
		padding:0;
		text-align: left;
	}		
	#contents #archives .archive-info-comment p{
		margin-bottom: 1em;
	}
	#contents #archives .btn-block{
		margin-top: 1em;
	}
	#contents #archives a.btn-more {
		color: #000;
		font-weight: 900;
		background-color: #fff;
		border: 1px solid #000;
		display: inline-flex;
		padding-inline: .8em;
		padding-block: .2em;
	}
	#contents #archives a.btn-more::after{
		content: '→';
		margin-left: 0.25em;
	}
	#contents #archives a.btn-list{
		color: #fff;
		font-size:min(2.75vw,28px);
		font-weight: 400;
		background-color: #000;
		display: inline-flex;
		padding:1vw;
	}
	#contents #archives a.btn-list::after{
		content: '→';
		margin-left: 0.25em;
	}
	
/*message*/
	#contents #message{
		position: relative;
		background: #fff;
		padding: 0 0 1vw 0;
		margin:0 0 0 0;
	}
	#contents #message .title{
		width:80%;
		max-width: 1280px;
		height:auto;
		margin:0 auto;
		padding: 3vw 0 0 0;
		position: relative;
	}
	#contents #message .title h3{
		font-size:min(2.75vw,32px);
		line-height:min(4vw,42px);
		color:#000;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 900;
		margin: 0 0 0 0;
		padding:0;
		text-align: center;
	}		
	#contents #message .under {
  		border-bottom: solid 3px #000;
	}
	#contents #message h4{
		font-size:min(1.75vw,28px);
		line-height:min(4vw,42px);
		color:#000;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 400;
		margin: 0 0 0 0;
		padding:0;
		text-align: center;
	}		
	#contents #message p{
		font-size:min(1.25vw,16px);
		color:#000;
		font-style: normal;
		font-weight: 400;
		margin: 1vw 0 0 0;
		padding:0;
		text-align: center;
	}
	#contents #message .form-wrap{
		width:80%;
		max-width: 1280px;
		height:auto;
		margin:2vw auto 3vw auto;
		padding: 0;
		position: relative;
	}
	#contents #message .form-frame {
		max-width: 800px;
		margin: 0 auto;
		position: relative;
		border: 1px solid var(--color-bdr);
		border-radius: var(--radius-def);
		padding-top: 2.5em;
		padding-bottom: 3em;
		padding-inline: 2%;
		text-align: left;
	}	
	#contents #message .form-head {
	    margin-bottom: 2em;
	}
	#contents #message .form-wrap dl {
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
		flex-direction: column;
		gap: .4em;
	}
	#contents #message .form-wrap dl dt {
		font-size: 15px;
	}
	#contents #message .form-wrap dl dd {
		margin-left: -.25em;
	}
	#contents #message .form-wrap input.size-l{
		width:min(100%,480px)
	}
	#contents #message .form-wrap input.size-m{
		width:min(100%,320px)
	}
	#contents #message .form-wrap input.size-s{
		width:min(100%,240px)
	}
	#contents #message #form-tab-contents {
			border:1px solid #000;
			background: #eee;
			padding: .6em 3% 1em;
		}
	#contents #message #form-tab-btn-set {
		position: relative;
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-wrap: nowrap;
		flex-direction: row;
		gap: clamp(8px, -12.57px + 5.714vw, 24px);
	}
	#contents #message #form-tab-btn-set::after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		margin-inline: auto;
		width: 100%;
		height: 3px;
		background-color: #000;
	}
	#contents #message #form-tab-btn-set .tab-btn-msg{
		flex:1;
		cursor:pointer;
		position:relative;
		padding-top:clamp(10px,7.43px + 0.714vw,12px);
		padding-bottom:clamp(16px,14px + 0.625vw,18px);
		padding-inline:1em
	}
	#contents #message #form-tab-btn-set .tab-btn-msg::after {
		content: "";
		position: absolute;
		z-index: 1;
		bottom: -1px;
		left: 0;
		right: 0;
		margin-inline: auto;
		width: 0%;
		height: 4px;
		background: #fff;
		opacity: 0;
	}	
	#contents #message #form-tab-btn-set .tab-btn-msg.is-active-msg {
		pointer-events: none;
	}
	#contents #message #form-tab-btn-set .tab-btn-msg.is-active-msg::after {
		width: 40%;
		opacity: 1;
	}
	#contents #message #form-tab-btn-set .tab-btn-msg .label {
		font-size: clamp(14px, 12.71px + 0.357vw, 15px);
		font-weight: 700;
		line-height: 1.1;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
		flex-direction: row;
	}
	#contents #message #form-tab-btn-set #tab-btn-set .tab-btn-msg:hover .label{
		color:#7942e0
	}
	#contents #message #form-tab-btn-set #tab-btn-set .tab-btn-msg.is-active-msg .label{
		color:#098ffa
	}
	.jme-form{
		padding-top:1.8em;
		padding-bottom:1.2em;
		padding-inline:min(2%,8px);
		text-align:left;
		display:flex;
		justify-content:flex-start;
		align-items:flex-start;
		flex-wrap:wrap;
		flex-direction:column;
		gap:12px
	}
	.jme-form-head{
		width:100%
	}
	.jme-form-head:empty{
		display:contents
	}
	.jme-form-foot{
		width:100%;
		padding-top:1em
	}
	.jme-form-foot:empty{
		display:contents
	}
	.jme-form-body{
		width:100%
	}
	.jme-links-ul{
		display:flex;
		justify-content:flex-start;
		align-items:flex-end;
		flex-wrap:wrap;
		flex-direction:column
	}
	.jme-links-ul li a{
		font-size:clamp(14px,12.71px + 0.357vw,15px);
		line-height:1.4;
		color:#1DC8F2;
		display:flex;gap:4px
	}
	.jme-links-ul li a::after{
		content:"→";display:block;
	}
	.jme-links-ul li a:hover{
		color:#0e9de2
	}
	#contents #message dd input, textarea {
		width: 100%;
		padding:.5em;
        margin-bottom: 1em;
		font-size:14px;
        box-sizing: border-box;
        transition: 0.3s;
        border: 1px solid #000;
        border-radius: 4px;
        outline: none;
		text-align: left;
	}
	#contents #message .select-style {
    position: relative;
	}
	#contents #message .select-style::before,
	#contents #message .select-style::after {
		position: absolute;
		content: '';
		pointer-events: none;
	}
	#contents #message .select-style::before {
		display: inline-block;
		right: 0;
		width: 2.8em;
		height: 2.8em;
		border-radius: 0 3px 3px 0;
		background-color: #000000;
	}
	#contents #message .select-style::after {
		position: absolute;
		top: 50%;
		right: 1.4em;
		transform: translate(50%, -50%) rotate(45deg);
		width: 6px;
		height: 6px;
		margin-top: -.5em;
		border-bottom: 3px solid #fff;
		border-right: 3px solid #fff;
	}
	#contents #message .select-style select {
		appearance: none;
		min-width: 230px;
		height: 2.8em;
		padding: .4em 3.6em .4em .8em;
		margin-bottom: 1em;
		border: none;
		border-radius: 3px;
		background-color: #ffffff;
		color: #000;
		border: 1px solid #000;
		font-size: 1em;
		cursor: pointer;
	}
	#contents #message .fz-s{
		font-size:88%;
		font-weight: 400;
	}
	#contents #message .form-wrap dl dd.type-age{
		display:flex;
		justify-content:flex-start;
		align-items:center;
		flex-wrap:nowrap;
		flex-direction:row;
		gap:.5em;
	}
	#contents #message .form-wrap input.size-xs{
		width:min(100%,60px);
		text-align:center
	}
	#contents #message .form-wrap dl dd.type-age>span{
		font-size:120%;
	}
	#contents #message .form-foot{
		margin-top:2em
	}
	#contents #message .form-attention{
		text-align:left;
		margin:0 auto 2em
	}
	#contents #message .form-attention .border{
		padding:1em 2%;
		border-top:1px solid #000;
		border-bottom:1px solid #000;
	}
	#contents #message .form-attention p{
		font-size:clamp(14px,12.71px + 0.357vw,15px);
		line-height:1.6
	}
	#contents #message .form-attention p strong{
		font-weight:900;
	}
	#contents #message .form-attention p a{
		text-decoration:none
	}
	#contents #message .form-attention p a:link,.form-attention p a:visited{
		color:#1DC8F2 !important;
		text-decoration:none
	}
	#contents #message .form-attention p a:hover{
		color:#098ffa !important;
		text-decoration:none
	}
	#contents #message .form-attention p .link-privacypolicy{
		display:inline-block
	}
	#contents #message .form-attention p.readme{
		margin-top:.8em;
		text-align:center;
	}
	#contents #message .form-button{
		width:100%;
	}
	#contents #message .form-wrap button{
		position:relative;
		z-index:1;
		display:block;
		width:50%;
		max-width: 320px;
		height:3em;
		margin:0 auto;
		padding:0 3%;
		text-align:center;
		color:#fff;
		background-color:#000;
		font-size:min(3vw,24px);
		font-weight: 600;
		font-style: normal;
	}
	#contents #message .form-wrap button:hover{
	}
	#contents #message .form-wrap button::after{
		content:" →";
		z-index:-1;
	}	
	#contents #message .btn{
		width:20%;
		height:auto;
		padding-top: 5.867%;
		background-image:url("../img/message_btn.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		margin:2vw auto 0 auto;
	}
	#contents #message .btn:hover{
		width:20%;
		height:auto;
		padding-top: 5.867%;
		background-image:url("../img/message_btn.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		filter: alpha(opacity=50);
		-moz-opacity: 0.5;
		opacity: 0.5;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		margin:2vw auto 0 auto;
	}
	
	
/* archives詳細 archive */
	#contents #archives_detaile{
		position: relative;
		padding:3vw 0 1vw 0;
		text-align: center;
	}
	#contents #archives_detaile .title{
		width:80%;
		max-width: 1280px;
		height:auto;
		margin:0 auto;
		padding: 0;
		position: relative;
	}
	#contents #archives_detaile .title h3{
		font-size:min(2.75vw,32px);
		line-height:min(4vw,42px);
		color:#000;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 900;
		margin: 0 0 0 0;
		padding:0;
		text-align: center;
	}		
	#contents #archives_detaile .under {
  		border-bottom: solid 3px #000;
	}
	#contents #archives_detaile .article-wrap {
  		background: rgba(255,255,255, .6);
		width:70%;
		max-width: 896px;
		padding:2vw 0;
		margin: 3vw auto 1vw auto;
	}
	#contents #archives_detaile .article-head{
		width:90%;
		max-width:920px;	
		margin: 0 auto;
	}
	#contents #archives_detaile .update{
		font-size:min(2vw,21px);
		color:#000;
		font-style: normal;
		font-weight: 900;
		padding:0;
		text-align: left;
		line-height: 1.5em;
		border-bottom: 2px solid #000;
	}
	#contents #archives_detaile .archive-info-image{
		width:90%;
		max-width:920px;
		margin:1vw auto;
	}
	#contents #archives_detaile .archive-info-image img{
		width:100%;
	}
	#contents #archives_detaile .archive-info-comment{
		width:90%;
		max-width:920px;
		font-size:min(1.25vw,16px);
		color:#000;
		font-style: normal;
		font-weight: 400;
		line-height: 1.5em;
		margin: 0 auto;
		padding:0;
		text-align: left;
	}		
	#contents #archives_detaile .archive-info-comment .pt2{
		border-top:dashed 1px #000;
		margin: 1em 0;
	}
	#contents #archives_detaile .archive-info-comment p{
		margin-top: 1em;
	}
	#contents #archives_detaile .btn-block{
		margin-top: 2em;
		text-align: center;
	}
	#contents #archives_detaile a.btn-more {
		color: #000;
		font-size:min(2.25vw,21px);
		font-weight: 900;
		background-color: #fff;
		border: 1px solid #000;
		display: inline-flex;
		padding-inline: .8em;
		padding-block: .2em;
	}
	#contents #archives_detaile a.btn-more::after{
		content: '→';
		margin-left: 0.25em;
	}
	#contents #archives_detaile a.btn-list{
		color: #fff;
		font-size:min(2.75vw,28px);
		font-weight: 400;
		background-color: #000;
		display: inline-flex;
		padding:1vw;
	}
	#contents #archives_detaile a.btn-list::before{
		content: '←';
		margin-right: 0.25em;
	}
	
/* archives list */
	#contents #archives_list{
		position: relative;
		padding:3vw 0 1vw 0;
		text-align: center;
	}
	#contents #archives_list .title{
		width:80%;
		max-width: 1280px;
		height:auto;
		margin:0 auto;
		padding: 0;
		position: relative;
	}
	#contents #archives_list .title h3{
		font-size:min(2.75vw,32px);
		line-height:min(4vw,42px);
		color:#000;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 900;
		margin: 0 0 0 0;
		padding:0;
		text-align: center;
	}		
	#contents #archives_list .under {
  		border-bottom: solid 3px #000;
	}
	#contents #archives_list .article-wrap {
  		background: rgba(255,255,255, .6);
		width:70%;
		max-width: 896px;
		padding:2vw 0;
		margin: 2vw auto 0 auto;
	}
	#contents #archives_list .article-head{
		width:90%;
		max-width:920px;	
		margin: 0 auto;
	}
	#contents #archives_list .update{
		font-size:min(2vw,21px);
		color:#000;
		font-style: normal;
		font-weight: 900;
		padding:0;
		text-align: left;
		line-height: 1.5em;
		border-bottom: 2px solid #000;
	}
	#contents #archives_list .wrap{
		width:90%;
		display: flex; 
		align-items: flex-start;
		justify-content: center;
		position: relative;
		z-index: 100;
		margin: 1vw 5%;
	}
	#contents #archives_list .archive-info-image{
		width:37.5%;
		margin:1vw auto;
	}
	#contents #archives_list .archive-info-image img{
		width:100%;
	}
	#contents #archives_list .archive-info-comment{
		width:60%;
		max-width:768px;
		font-size:min(1.25vw,16px);
		color:#000;
		font-style: normal;
		font-weight: 400;
		line-height: 1.5em;
		margin: 0 0 0 2.5%;
		padding:0;
		text-align: left;
	}		
	#contents #archives_list .archive-info-comment p{
		margin-top: 1em;
	}
	#contents #archives_list .btn-block{
		margin-top: .5em;
		text-align: right;
	}
	#contents #archives_list a.btn-more {
		color: #000;
		font-size:min(1.75vw,16px);
		font-weight: 900;
		background-color: #fff;
		border: 1px solid #000;
		display: inline-flex;
		padding-inline: .8em;
		padding-block: .2em;
	}
	#contents #archives_list a.btn-more::after{
		content: '→';
		margin-left: 0.25em;
	}
	#contents #archives_list a.btn-list{
		color: #fff;
		font-size:min(2.75vw,28px);
		font-weight: 400;
		background-color: #000;
		display: inline-flex;
		padding:1vw;
		margin-top:1vw;
	}
	#contents #archives_list a.btn-list::before{
		content: '←';
		margin-right: 0.25em;
	}
	#contents #archives_list .list_page{
		width:90%;
		max-width:1152px;
		margin: 1.5vw auto;
		padding:0;
		text-align: center;
	}
	#contents #archives_list .list_page ul{
		padding-left: 0;
	}		
	#contents #archives_list .list_page li{
		display: inline-block;
		color:#999;
		font-size:min(1.5vw,18px);
		font-style: normal;
		font-weight: 400;
		line-height: 1.5em;
		margin:0 .25em;
		padding:0;
	}		
	
	/*フッタ共通*/
	footer{
		background: #000;
		height:auto;
		margin:0 auto;
		padding-bottom:10px;
		width:100vw;
		text-align: center;
	}
	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;
	}

	/*テキスト thanks*/
	#contents .corner{
        max-width:1080px;
        height:auto;
        margin:0 auto;
        padding: 30px 0;
	}
	#contents .corner .message_area .description {
		margin: 100px 0;
		color: #1b1b1b;
		text-align: center;
		font-size: 1.0rem;
	}
	#contents .corner .message_area .description p.head {
		font-size: 2.5em;
	} 
	
	/*ボタン thanks*/
    #contents .msg_btnWrap{
        max-width:1080px;
        margin:0 auto 2vw auto;
        text-align: center;
    }

    #contents .msg_btn {
		background: #000;
        color: #fff;
        font-size: 1.25rem;
        font-weight: bold;
        padding: 1vw 2vw;
        text-decoration: none;
        transition-property: opacity;
        -webkit-transition-property: opacity;
        transition-duration: 0.5s;
        -webkit-transition-duration: 0.5s;
    }
   #contents .msg_btn::before {
		content: '← ';
        color: #fff;
    }
}

/* スマートフォン用 */
@media screen and (max-width:640px )
{
	.pc { display: none !important; }
	.sp { display: block !important; }

	
/*ヘッダ　index、thanks用*/	
	header{
		background-color: #93d3f7;
		position: relative;
		top: 0;
	}	
	header #main_header{
		width:100%;
		padding-top: 175%;
		height:auto;
		background-image:url("../img/top_sp_img.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}	
	header #main_header .header_inner{
		width:80%;
		height:auto;
		margin: 0 10%;
		text-align: center;
		position: absolute;
		top:55vw;
	}
	header #main_header .main_image{
		width:100%;
		padding-top: 50.085%;
		background-image:url("../img/logo.svg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		margin:0;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		position: relative;
	}
	
/*archiveヘッダー*/
	header #archive_header{
		width:100%;
		padding-top: 110%;
		height:auto;
		background-image:url("../img/top_sp_img.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: 50% 50%;
	}	
	header #archive_header .header_inner{
		width:80%;
		height:auto;
		margin: 0 10%;
		text-align: center;
		position: absolute;
		top:30vw;
	}
	header #archive_header .main_image{
		width:100%;
		padding-top: 50.085%;
		background-image:url("../img/logo.svg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		margin:0;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		position: relative;
	}
	
/*コンテンツ*/	
	#contents{
		width:100%;
		margin:0 auto;
		padding:0;
		background: url("../img/contents_bg.jpg") repeat;
		flex: 1;
	}
	#contents p{
		margin:0;
		padding: 0;
	}
	
/* intro コピー*/
	#contents #intro{
		position: relative;
		background: #fff;
		padding: 0;
		margin:0;
	}
	#contents #intro .program{
        min-width:300px;
        height:auto;
		font-size:17.25vw;
        margin:0 auto;
        padding:6vw 0;
		position:relative;
		z-index: 100;
    }
	#contents #intro .program h2{
		margin:0 3vw;
		font-size:3.75vw;
		line-height:5.5vw;
		color:#000;
		font-weight: 900;
		font-style: normal;
		padding:0;
		text-align: center;
	}

/* intro リード*/
	#contents #intro_r{
		position: relative;
		padding: 0;
		margin:0;
	}
	#contents #intro_r .program{
        min-width:300px;
        height:auto;
		font-size:17.25vw;
        margin:0 auto;
        padding:0;
		position:relative;
		z-index: 100;
    }
	#contents #intro_r .program p{
		margin: 4vw 2vw 0 2vw;
		font-size:3.2vw;
		line-height:6vw;
		font-weight: 400;
		font-style: normal;
		text-align: center;
		padding:0;
	}
	
/* ナビゲーター */
	#contents #navi{
		min-width: 300px;
		width:100%;
		height:auto;
		margin:0 auto;
		font-size:min(17.75vw,220px);
		padding: 0 0 0 0;
		margin-top:8vw;
		position: relative;
	}
	#contents #navi .wrap {
		width:100%;
		display: flex;
		justify-content:center;
		align-items: center;
		flex-wrap: wrap;
		margin: 0 auto;
		padding:0;
	}
	#contents #navi .wrap2 {
		width:100%;
		display: flex;
		justify-content:center;
		align-items: flex-start;
		flex-wrap: wrap;
		margin: 0.5vw auto 0 auto;
		padding:0;
	}
	#contents #navi .wrap3 {
		width:100%;
		display: flex;
		justify-content:center;
		align-items: center;
		flex-wrap: wrap;
		margin: 0 auto 3vw auto;
		padding:0;
	}
	#contents #navi .box_g{
		width:40%;
		height:auto;
		margin:0 1vw;
		padding:0;
	}
	#contents #navi .navi1{
		width:100%;
		height:auto;
		margin:0 0.5vw;
		padding-top:100%;
		background-image:url("../img/navi1.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}	
	#contents #navi .navi2{
		width:100%;
		height:auto;
		margin:0 0.5vw;
		padding-top:100%;
		background-image:url("../img/navi2.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}	
	#contents #navi .name{
		width:100%;
		font-size:3vw;
		font-weight: 400;
		margin:0 0.5vw;
		padding:0.5em 0;
		text-align: center;
		color:#fff;
		background-color: #000;
	}
	#contents #navi .item{
		width:100%;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 700;
		font-size:3.5vw;
		margin:0 0 0 0;
		padding:0;
		text-align: center;
		color:#000;
	}
	#contents #navi .name_b{
		font-weight: 600;
	}
	#contents #sns_i{
		min-width: 300px;
		width:100%;
		height:auto;
		margin:0 auto;
		padding: 0;
		margin-top: 5vw;
		position: relative;
	}
	#contents #sns_i .wrap {
		width:100%;
		display: flex;
		justify-content:center;
		align-items: center;
		flex-wrap: wrap;
		margin: 0 auto;
		padding:0;
	}
	#contents #sns_i .box_g{
		width:12%;
		height:auto;
		margin:0 2vw;
		padding:0;
	}
	#contents #sns_i .icon1{
		width:100%;
		height:auto;
		margin:0;
		padding-top:100%;
		background-image:url("../img/about_sns_insta.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}	
	#contents #sns_i .icon2{
		width:100%;
		height:auto;
		margin:0;
		padding-top:100%;
		background-image:url("../img/about_sns_x.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}		
	#contents .kddi_banner{
		width:60%;
		height:auto;
		padding-top: 15.3%;
		background-image:url("../img/kddi_banner.jpg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
		border:1px solid #000;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		margin:5vw auto;
	}	

/* radiko、Podcast */
	#contents #connect{
		width:100%;
		height:auto;
		background-image:url("../img/top_sp_img_bk.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: top center;
		position: relative;
		padding:6vw 0 4vw 0;

	}
	#contents #connect .title{
        min-width:300px;
        height:auto;
		font-size:17.25vw;
        margin:0 auto;
        padding:0;
		position:relative;
		z-index: 100;
    }
	#contents #connect .title h3{
		margin:0 3vw;
		font-size:4.25vw;
		line-height:5.5vw;
		color:#000;
		font-weight: 900;
		font-style: normal;
		padding:0;
		text-align: center;
	}
	
	#contents #connect .under {
  		border-bottom: solid 3px #000;
	}
	
	#contents #connect .container {
		position: relative;
		background: #93d3f7;
		height: 10vw; /* waveと高さを同じに */
	}
	#contents #connect .wave {
		position: absolute;
		height: 9vw;
		width:  98.5%;
		background: #93d3f7;
		bottom: 0;
	}
	#contents #connect .wave::before, .wave::after {
		content: "";
		display: block;
		position: absolute;
		border-radius: 100% 50%;
	}
	#contents #connect .wave::before {
		width: 55%;
		height: 109%;
		background: url("../img/contents_bg.jpg") repeat;
		right: -1.5%;
		top: 60%;
	}
	#contents #connect .wave::after {
		width: 55%;
		height: 100%;
		background-color: #93d3f7;
		left: -1.5%;
		top: 40%;
	}
	#contents #radiko{
		width:100%;
		min-width: 300px;
		height:auto;
		margin:6vw auto 0 auto;
		padding: 0;
		position: relative;
	}
	#contents #radiko h4{
		font-size:3.25vw;
		color:#000;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 400;
		margin: 0 0 0 0;
		padding:0;
		text-align: center;
	}		
	#contents #radiko .under {
  		border-bottom: solid 2px #000;
	}
	#contents #radiko .b_space{
		width:100%;
		height:auto;
		margin:2vw auto;
		padding: 3vw 0;
		position: relative;
		background: rgba(255,255,255, .6);
		text-align: center;
	}	
	#contents #podcast{
		width:100%;
		min-width: 300px;
		height:auto;
		margin:4vw auto 0 auto;
		padding: 0;
		position: relative;
	}
	#contents #podcast h4{
		font-size:3.25vw;
		color:#000;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 400;
		margin: 0 0 0 0;
		padding:0;
		text-align: center;
	}		
	#contents #podcast .under {
  		border-bottom: solid 2px #000;
	}
	#contents #podcast .b_space{
		width:100%;
		height:auto;
		margin:2vw auto;
		padding: 3vw 0;
		position: relative;
		background: rgba(255,255,255, .6);
		text-align: center;
	}	
	
/* onair info */
	#contents #onair{
		position: relative;
		background: #fff;
		padding: 0;
		margin:0;
	}
	#contents #onair .title{
        min-width:300px;
        height:auto;
		font-size:17.25vw;
        margin:0 auto;
        padding:6vw 0 0 0;
		position:relative;
		z-index: 100;
    }
	#contents #onair .title h3{
		margin:0 3vw;
		font-size:4.25vw;
		line-height:5.5vw;
		color:#000;
		font-weight: 900;
		font-style: normal;
		padding:0;
		text-align: center;
	}
	#contents #onair .under {
  		border-bottom: solid 3px #000;
	}
	
/*latest&next*/	
	#contents .p-ln{
		width:100%;
		min-width: 300px;
		height:auto;
		margin:0 auto;
		padding:4vw 0 3vw 0;
		background: #fff;
	}
	#contents .p-ln .wrap{
		margin:2vw 3vw 0 3vw;
		padding:0 ;
		background: #fff;
	}
	#contents .p-ln .cs{
		margin: 10vw 0 15vw 0;
		font-size:5vw;
		color:#999;
		font-weight: 400;
		font-style: normal;
		padding:0;
		text-align: center;
	}
	#contents #sns{
		position: relative;
		padding: 0;
		margin:0;
	}
	#contents #sns .title{
        min-width:300px;
        height:auto;
		font-size:17.25vw;
        margin:0 auto;
        padding:6vw 0 0 0;
		position:relative;
		z-index: 100;
    }
	#contents #sns .title h3{
		margin:0 3vw;
		font-size:4.25vw;
		line-height:5.5vw;
		color:#000;
		font-weight: 900;
		font-style: normal;
		padding:0;
		text-align: center;
	}
	
	#contents #sns .under {
  		border-bottom: solid 3px #000;
	}
	
/*SNS*/	
	#contents .insta{
		width:100%;
		min-width: 300px;
		height:auto;
		margin:0 auto;
		padding:8vw 0 6vw 0;
	}
	#contents .insta .insta_icon{
		width:30%;
		height:auto;
		margin:0 auto 2vw auto;
		padding-top:10.54%;
		background-image:url("../img/acv_insta.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	#contents .insta .x_icon{
		width:40%;
		height:auto;
		margin:4vw auto 6vw auto;
		padding-top:10.83%;
		background-image:url("../img/acv_x.png");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
	}
	#contents .insta .cInner {
		width: 100%;
		margin: 0 auto;
		text-align: center;
		position: relative;
	}
	#contents .insta .snsWrap{
		width:100%;
		height:auto;
		margin:3vw auto 0 auto;
		padding:0 ;
	}
	#contents .insta .snsWrap .instaWrap{
		width: 80%;
		padding:0;
		margin:0 auto;
	}
	#contents .insta .snsWrap .instaWrap ul{
		display: flex;
		justify-content: space-between;
    	flex-wrap:wrap;
    	margin: 0;
    	padding: 0;
	}
	#contents .insta .snsWrap .instaWrap ul::after{
		display: block;
		content:"";
		width: 20%;
		margin:0 1vw 0 1vw;
	}
	#contents .insta .snsWrap .instaWrap li{
		width: 30%;
		margin-bottom: 4%;
		padding: 0;
		margin: 1em 0;
	}	
	#contents .insta .snsWrap .instaWrap ul li img{
		width: 100%;
		height: auto;
	}

/* archive */	
	#contents #archives{
		width:100%;
		height:auto;
		background-image:url("../img/top_sp_img_bk.jpg");
		background-repeat: no-repeat;
		background-size: cover;
		background-position: top center;
		position: relative;
		padding:6vw 0 4vw 0;
		margin: 0 auto;
		text-align: center;
	}
	#contents #archives .title{
        min-width:300px;
        height:auto;
		font-size:17.25vw;
        margin:0 auto;
        padding:6vw 0 0 0;
		position:relative;
		z-index: 100;
    }
	#contents #archives .title h3{
		margin:0 3vw;
		font-size:4.25vw;
		line-height:5.5vw;
		color:#000;
		font-weight: 900;
		font-style: normal;
		padding:0;
		text-align: center;
	}
	#contents #archives .under {
  		border-bottom: solid 3px #000;
	}
	#contents #archives .article-wrap {
  		background: rgba(255,255,255, .6);
		width:95%;
		padding:2vw 0;
		margin: 5vw auto 3vw auto;
	}
	#contents #archives .article-head{
		width:90%;
		max-width:920px;	
		margin: 0 auto;
	}
	#contents #archives .update{
		font-size:3vw;
		color:#000;
		font-style: normal;
		font-weight: 900;
		padding:0;
		text-align: left;
		line-height: 1.75em;
		border-bottom: 2px solid #000;
	}
	#contents #archives .archive-info-image{
		width:90%;
		max-width:920px;
		margin:1vw auto;
	}
	#contents #archives .archive-info-image img{
		width:100%;
	}
	#contents #archives .archive-info-comment{
		width:90%;
		min-width:300px;
		font-size:2.5vw;
		color:#000;
		font-style: normal;
		font-weight: 400;
		line-height: 1.75em;
		margin: 0 auto;
		padding:0;
		text-align: left;
	}		
	#contents #archives .archive-info-comment p{
		margin-bottom: 1.5em;
	}
	#contents #archives .btn-block{
		margin-top: 1em;
	}
	#contents #archives a.btn-more {
		color: #000;
		font-size:3vw;
		font-weight: 900;
		background-color: #fff;
		border: 1px solid #000;
		display: inline-flex;
		padding-inline: .8em;
		padding-block: .2em;
	}
	#contents #archives a.btn-more::after{
		content: '→';
		margin-left: 0.25em;
	}
	#contents #archives a.btn-list{
		color: #fff;
		font-size:3.5vw;
		font-weight: 400;
		background-color: #000;
		display: inline-flex;
		padding:3vw;
	}
	#contents #archives a.btn-list::after{
		content: '→';
		margin-left: 0.25em;
	}	
	
/*message*/	
	#contents #message{
		position: relative;
		background: #fff;
		padding: 0 0 1vw 0;
		margin:0;
	}
	#contents #message .title{
        min-width:300px;
        height:auto;
		font-size:17.25vw;
        margin:0 auto;
        padding:6vw 0 0 0;
		position:relative;
		z-index: 100;
    }
	#contents #message .title h3{
		margin:0 3vw;
		font-size:4.25vw;
		line-height:5.5vw;
		color:#000;
		font-weight: 900;
		font-style: normal;
		padding:0;
		text-align: center;
	}
	#contents #message .under {
  		border-bottom: solid 3px #000;
	}
	#contents #message h4{
		font-size:min(1.75vw,28px);
		line-height:min(4vw,42px);
		color:#000;
		font-family: din-2014, sans-serif;
		font-style: normal;
		font-weight: 400;
		margin: 0 0 0 0;
		padding:0;
		text-align: center;
	}		
	#contents #message p{
		font-size:2.5vw;
		color:#000;
		font-style: normal;
		font-weight: 400;
		margin: 4vw 0 0 0;
		padding:0;
		text-align: center;
	}
	#contents #message .form-wrap{
		width:80%;
		max-width: 1280px;
		height:auto;
		margin:2vw auto 3vw auto;
		padding: 0;
		position: relative;
	}
	#contents #message .form-frame {
		position: relative;
		border: 1px solid var(--color-bdr);
		border-radius: var(--radius-def);
		padding-top: 2.5em;
		padding-bottom: 3em;
		padding-inline: 2%;
		text-align: left;
	}	
	#contents #message .form-head {
	    margin-bottom: 2em;
	}
	#contents #message .form-wrap dl {
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
		flex-direction: column;
		gap: .4em;
	}
	#contents #message .form-wrap dl dt {
		font-size: 15px;
	}
	#contents #message .form-wrap dl dd {
		margin-left: -.25em;
	}
	#contents #message .form-wrap input.size-l{
		width:min(100%,480px)
	}
	#contents #message .form-wrap input.size-m{
		width:min(100%,320px)
	}
	#contents #message .form-wrap input.size-s{
		width:min(100%,240px)
	}
	#contents #message #form-tab-contents {
			border:1px solid #000;
			background: #eee;
			padding: .6em 3% 1em;
		}
	#contents #message #form-tab-btn-set {
		position: relative;
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-wrap: nowrap;
		flex-direction: row;
		gap: clamp(8px, -12.57px + 5.714vw, 24px);
	}	
	#contents #message #form-tab-btn-set::after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		margin-inline: auto;
		width: 100%;
		height: 3px;
		background-color: #000;
	}
	#contents #message #form-tab-btn-set .tab-btn-msg{
		flex:1;
		cursor:pointer;
		position:relative;
		padding-top:clamp(10px,7.43px + 0.714vw,12px);
		padding-bottom:clamp(16px,14px + 0.625vw,18px);
		padding-inline:1em
	}
	#contents #message #form-tab-btn-set .tab-btn-msg::after {
		content: "";
		position: absolute;
		z-index: 1;
		bottom: -1px;
		left: 0;
		right: 0;
		margin-inline: auto;
		width: 0%;
		height: 4px;
		background: #fff;
		opacity: 0;
	}	
	#contents #message #form-tab-btn-set .tab-btn-msg.is-active-msg {
		pointer-events: none;
	}
	#contents #message #form-tab-btn-set .tab-btn-msg.is-active-msg::after {
		width: 40%;
		opacity: 1;
	}
	#contents #message #form-tab-btn-set .tab-btn-msg .label {
		font-size: clamp(14px, 12.71px + 0.357vw, 15px);
		font-weight: 700;
		line-height: 1.1;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
		flex-direction: row;
	}
	#contents #message #form-tab-btn-set #tab-btn-set .tab-btn-msg:hover .label{
		color:#7942e0
	}
	#contents #message #form-tab-btn-set #tab-btn-set .tab-btn-msg.is-active-msg .label{
		color:#098ffa
	}
	.jme-form{
		padding-top:1.8em;
		padding-bottom:1.2em;
		padding-inline:min(2%,8px);
		text-align:left;
		display:flex;
		justify-content:flex-start;
		align-items:flex-start;
		flex-wrap:wrap;
		flex-direction:column;
		gap:12px
	}
	.jme-form-head{
		width:100%
	}
	.jme-form-head:empty{
		display:contents
	}
	.jme-form-foot{
		width:100%;
		padding-top:1em
	}
	.jme-form-foot:empty{
		display:contents
	}
	.jme-form-body{
		width:100%
	}
	.jme-links-ul{
		display:flex;
		justify-content:flex-start;
		align-items:flex-end;
		flex-wrap:wrap;
		flex-direction:column
	}
	.jme-links-ul li a{
		font-size:clamp(14px,12.71px + 0.357vw,15px);
		line-height:1.4;
		color:#1DC8F2;
		display:flex;gap:4px
	}
	.jme-links-ul li a::after{
		content:"→";display:block;
	}
	.jme-links-ul li a:hover{
		color:#0e9de2
	}
	#contents #message dd input, textarea {
		width: 290px;
		padding:.5em;
        margin-bottom: 1em;
		font-size:14px;
        box-sizing: border-box;
        transition: 0.3s;
        border: 1px solid #000;
        border-radius: 4px;
        outline: none;
		text-align: left;
	}
	#contents #message .select-style {
    position: relative;
	}
	#contents #message .select-style::before,
	#contents #message .select-style::after {
		position: absolute;
		content: '';
		pointer-events: none;
	}
	#contents #message .select-style::before {
		display: inline-block;
		right: 0;
		width: 2.8em;
		height: 2.8em;
		border-radius: 0 3px 3px 0;
		background-color: #000000;
	}

	#contents #message .select-style::after {
		position: absolute;
		top: 50%;
		right: 1.4em;
		transform: translate(50%, -50%) rotate(45deg);
		width: 6px;
		height: 6px;
		margin-top: -.5em;
		border-bottom: 3px solid #fff;
		border-right: 3px solid #fff;
	}
	#contents #message .select-style select {
		appearance: none;
		min-width: 230px;
		height: 2.8em;
		padding: .4em 3.6em .4em .8em;
		margin-bottom: 1em;
		border: none;
		border-radius: 3px;
		background-color: #ffffff;
		color: #000;
		border: 1px solid #000;
		font-size: 1em;
		cursor: pointer;
	}
	#contents #message .fz-s{
		font-size:88%;
		font-weight: 400;
	}
	#contents #message .form-wrap dl dd.type-age{
		display:flex;
		justify-content:flex-start;
		align-items:center;
		flex-wrap:nowrap;
		flex-direction:row;
		gap:.5em;
	}
	#contents #message .form-wrap input.size-xs{
		width:min(100%,60px);
		text-align:center
	}
	#contents #message .form-wrap dl dd.type-age>span{
		font-size:120%;
	}
	#contents #message .form-foot{
		margin-top:2em
	}
	#contents #message .form-attention{
		text-align:left;
		margin:0 auto 2em 
	}
	#contents #message .form-attention .border{
		padding:0 2% 1em 2%;
		border-top:1px solid #000;
		border-bottom:1px solid #000;
	}
	#contents #message .form-attention p{
		font-size:2.5vw;
		line-height:1.6;
		text-align: left;
	}
	#contents #message .form-attention p strong{
		font-weight:900;
	}
	#contents #message .form-attention p a{
		text-decoration:none
	}
	#contents #message .form-attention p a:link,.form-attention p a:visited{
		color:#1DC8F2 !important;
		text-decoration:none
	}
	#contents #message .form-attention p a:hover{
		color:#098ffa !important;
		text-decoration:none
	}
	#contents #message .form-attention p .link-privacypolicy{
		display:inline-block
	}
	#contents #message .form-attention p.readme{
		margin-top:.8em;
		text-align:center;
	}
	#contents #message .form-button{
		width:80%;
		margin: 0 auto;
		text-align:center;
		background: #f09
	}
	#contents #message .form-button li{
		margin:0 auto;
	}
	#contents #message .form-wrap button{
		position:relative;
		z-index:1;
		display:inline;
		width:100%;
		height:2em;
		margin:0 auto;
		padding:0 2%;
		text-align:center;
		color:#fff;
		background-color:#000;
		font-size:1.5em;
		font-weight: 600;
		font-style: normal;
	}
	#contents #message .form-wrap button::after{
		content:" →";
	}	
	
	/*テキスト thanks*/
		#contents .corner{
        min-width:300px;
        height:auto;
        margin:0 auto;
        padding: 30px 0;
	}
	#contents .corner .message_area .description {
		margin: 100px 0;
		color: #1b1b1b;
		text-align: center;
		font-size: 1.0rem;
	}
	#contents .corner .message_area .description p.head {
		font-size: 2.5em;
	}    #contents .msg_btnWrap{
        min-width:300px;
        margin:40px auto;
		text-align: center;
	}
    #contents .msg_btn {
		background: #000;
        color:#fff;
        font-size: 1.25rem;
        font-weight: bold;
        padding: 1.5vw 4vw;
        text-decoration: none;
    }
	#contents .msg_btn::before{
		content: '← ';
        color: #fff;
	}

/*archive 詳細*/
	#contents #archives_detaile{
		width:100%;
		height:auto;
		position: relative;
		padding:6vw 0 4vw 0;
		margin: 0 auto;
		text-align: center;
	}
	#contents #archives_detaile .title{
        min-width:300px;
        height:auto;
		font-size:17.25vw;
        margin:0 auto;
        padding:6vw 0 0 0;
		position:relative;
		z-index: 100;
    }
	#contents #archives_detaile .title h3{
		margin:0 3vw;
		font-size:4.25vw;
		line-height:5.5vw;
		color:#000;
		font-weight: 900;
		font-style: normal;
		padding:0;
		text-align: center;
	}
	#contents #archives_detaile .under {
  		border-bottom: solid 3px #000;
	}
	#contents #archives_detaile .article-wrap {
  		background: rgba(255,255,255, .6);
		width:95%;
		padding:2vw 0;
		margin: 5vw auto 3vw auto;
	}
	#contents #archives_detaile .article-head{
		width:90%;
		max-width:920px;	
		margin: 0 auto;
	}
	#contents #archives_detaile .update{
		font-size:3vw;
		color:#000;
		font-style: normal;
		font-weight: 900;
		padding:0;
		text-align: left;
		line-height: 1.75em;
		border-bottom: 2px solid #000;
	}
	#contents #archives_detaile .archive-info-image{
		width:90%;
		max-width:920px;
		margin:1vw auto;
	}
	#contents #archives_detaile .archive-info-image img{
		width:100%;
	}
	#contents #archives_detaile .archive-info-comment{
		width:90%;
		min-width:300px;
		font-size:2.5vw;
		color:#000;
		font-style: normal;
		font-weight: 400;
		line-height: 1.75em;
		margin: 0 auto;
		padding:0;
		text-align: left;
	}		
	#contents #archives_detaile .archive-info-comment .pt2{
		border-top:dashed 1px #000;
		margin: 1em 0;
	}
	#contents #archives_detaile .archive-info-comment p{
		margin-bottom: 1.5em;
	}
	#contents #archives_detaile .btn-block{
		margin-top: 2em;
		text-align: center;
	}
	#contents #archives_detaile a.btn-more {
		color: #000;
		font-size:3.25vw;
		font-weight: 900;
		background-color: #fff;
		border: 1px solid #000;
		display: inline-flex;
		padding-inline: .8em;
		padding-block: .2em;
	}
	#contents #archives_detaile a.btn-more::after{
		content: '→';
		margin-left: 0.25em;
	}
	#contents #archives_detaile a.btn-list{
		color: #fff;
		font-size:3.5vw;
		font-weight: 400;
		background-color: #000;
		display: inline-flex;
		padding:3vw;
	}
	#contents #archives_detaile a.btn-list::before{
		content: '←';
		margin-right: 0.25em;
	}		

/*archive リスト*/
	#contents #archives_list{
		width:100%;
		height:auto;
		position: relative;
		padding:6vw 0 4vw 0;
		margin: 0 auto;
		text-align: center;
	}
	
	#contents #archives_list .title{
        min-width:300px;
        height:auto;
		font-size:17.25vw;
        margin:0 auto;
        padding:6vw 0 0 0;
		position:relative;
		z-index: 100;
    }
	#contents #archives_list .title h3{
		margin:0 3vw;
		font-size:4.25vw;
		line-height:5.5vw;
		color:#000;
		font-weight: 900;
		font-style: normal;
		padding:0;
		text-align: center;
	}
	#contents #archives_list .under {
  		border-bottom: solid 3px #000;
	}
	#contents #archives_list .article-wrap {
  		background: rgba(255,255,255, .6);
		width:95%;
		padding:2vw 0;
		margin: 5vw auto 0 auto;
	}
	#contents #archives_list .article-head{
		width:90%;
		max-width:920px;	
		margin: 0 auto;
	}
	#contents #archives_list .update{
		font-size:3vw;
		color:#000;
		font-style: normal;
		font-weight: 900;
		padding:0;
		text-align: left;
		line-height: 1.75em;
		border-bottom: 2px solid #000;
	}
	#contents #archives_list .wrap{
		width:90%;
		display: flex; 
		flex-flow: column;
		align-items: flex-start;
		justify-content: space-between;
		position: relative;
		z-index: 100;
		margin: 1vw 5%;
	}
	#contents #archives_list .archive-info-image{
		width:100%;
		max-width:920px;
		margin:1vw auto;
	}
	#contents #archives_list .archive-info-image img{
		width:100%;
	}
	#contents #archives_list .archive-info-comment{
		width:100%;
		min-width:300px;
		font-size:2.5vw;
		color:#000;
		font-style: normal;
		font-weight: 400;
		line-height: 1.75em;
		margin: 0 auto;
		padding:0;
		text-align: left;
	}		
	#contents #archives_list .archive-info-comment .pt2{
		border-top:dashed 1px #000;
		margin: 1em 0;
	}
	#contents #archives_list .archive-info-comment p{
		margin-bottom: 1.5em;
	}
	#contents #archives_list .btn-block{
		margin-top: 2em;
		text-align: center;
	}
	#contents #archives_list a.btn-more {
		color: #000;
		font-size:2.75vw;
		font-weight: 900;
		background-color: #fff;
		border: 1px solid #000;
		display: inline-flex;
		padding-inline: .8em;
		padding-block: .2em;
	}
	#contents #archives_list a.btn-more::after{
		content: '→';
		margin-left: 0.25em;
	}
	#contents #archives_list a.btn-list{
		color: #fff;
		font-size:3.5vw;
		font-weight: 400;
		background-color: #000;
		display: inline-flex;
		padding:3vw;
		margin-top: 4vw;
	}
	#contents #archives_list a.btn-list::before{
		content: '←';
		margin-right: 0.25em;
	}		
	#contents #archives_list .list_page{
		width:90%;
		min-width:300px;
		margin: 2em auto;
		padding:0;
		text-align: center;
	}
	#contents #archives_list .list_page ul{
		padding-left: 0;
	}		
	#contents #archives_list .list_page li{
		display: inline-block;
		color:#999;
		font-size:4vw;
		font-style: normal;
		font-weight: 400;
		margin:0 .25em;
		padding:0;
	}
	
/*フッタ*/	
	footer{
		width:100%;
		height:auto;
		margin:0 auto;
		padding:0 0 3vw 0;
		background: #000;
		text-align: center;
	}
	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:2.25vw;
		color:#fff;
		text-align:center;
        letter-spacing: 0.25vw;
		margin:4.5vw 0 0 0;
	}
}