@charset "utf-8";
	body{
		margin: 0;
		Padding: 0;
	}
	/* コンテンツ */
	---------------------------------------------------------------------------*/
	#contents {
		clear: both;overflow: hidden;
		background: #fff;	/*背景色*/
		padding: 3%;	/*ボックス内の余白*/
		box-shadow: 0px 0px 50px rgba(0,0,0,0.5);
	}
	.header_image {
		top: 180px;
		width: 100%;
	}
	.header_image img{
		width: 100%;
		height: 200px;
		scale: 100%;
		text-align: center;
		object-fit: cover;
		position: relative;
	}
	.header_text{
		position: absolute;
		top: 220px;
		left: 120px;
		width: 500px;
	}
	.header_span_text{
		color: #fff;
		font-size: 40px;
		font-weight: bold;
		font-family: YuGothic,'Yu Gothic',sans-serif;;
	}
	/*mainコンテンツ
	---------------------------------------------------------------------------*/
	#main {
		float: center;
		width: 100%;
	}
	#main .contents_box_parent {
		width: 100%;
		height: auto;
	}
	#main .contents_box_child {
		max-width:960px;
		width: 78.8%;
		margin: 0 auto;
		background: rgba(255, 255, 255);
		box-shadow: 0 3px 6px rgba(0, 0, 0, 0.5);
		display:block;
		list-style-type: none;
	}
	#main .video_box_parent{
		width: 100%;
		height: auto;
		display: block;
	}
	#main .video_box_child{
		max-width:200px;
		width: 78.8%;
		margin: 0 auto;
		background: rgb(255, 255, 255);
		box-shadow: 0 3px 6px rgba(0, 0, 0, 0.5);
		list-style-type: none;
		display: inline-block;
	}
	#main .video_box_child>img{
		width: 200px;
		height: auto;
	}
	#main .video_box_child>a{
		margin: 0 auto;
	}
	.thumbnail{
		width: 100%;
		height: auto;
		margin: 0 auto;
	}
	#main .video_box_chile>p{
		font-size: 5px;
	}
	#main .contents_box_contents table{
		border-style:hidden ;
	}
	#main .contents_box_contents table td{
		font-family: YuGothic,'Yu Gothic',sans-serif;
	}
	/*１カラム利用時の設定*/
	.c1 #main {
		float: none;
		width: auto;
	}
	img {
		width: 98%;
		/*max-width: 960px;*/
		/*padding: .5rem;*/
		display: flex; 
		align-items:center;
		position: relative;
		display: inline-block;
	}
	/*h2タグの設定*/
	/*h2タグの設定*/
	#main h2 {
		clear: both;
		font-family: YuGothic,'Yu Gothic',sans-serif;
		margin-bottom: 20px;
		font-size: 18px;
		letter-spacing: 0.1em;
		color: rgb(0, 124, 240);
		background: #ffffff;
		background: linear-gradient(#ffffff, #ffffff); /* グラデーション */
		position: relative;
		padding: 1rem .5rem;
	  }
	  
	#main h2:after {
	/*.box_underline {*/
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 5px;
		content: '';
		/*background-image: -webkit-gradient(linear, left top, right top, from(#af0336), to(#ffc7c7));
		background-image: -webkit-linear-gradient(left, #af0336 0%, #ffc7c7 100%);
		background-image: linear-gradient(to right, #af0336 0%, #ffc7c7 100%);*/
		background-image: linear-gradient(45deg, rgb(0, 124, 240) 0%, rgb(204, 226, 247) 50%, rgb(97, 177, 252) 90%);
		background-size: 300% 100%;
		-webkit-text-fill-color: transparent;
		animation-name: gradationTextAnimation;
		animation-duration: 8s;
		animation-timing-function: linear;
		animation-iteration-count: infinite;
	  }
	#main h3 {
		clear: both;
		font-family: YuGothic,'Yu Gothic',sans-serif;
		margin-bottom: 20px;
		font-size: 18px;
		letter-spacing: 0.1em;
		color: #af0336;
		background: #ffffff;
		background: linear-gradient(#ffffff, #ffffff); /* グラデーション */
		position: relative;
		padding: 1rem .5rem;
	  }
	  
	#main h3:after {
	/*.box_underline {*/
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 5px;
		content: '';
		/*background-image: -webkit-gradient(linear, left top, right top, from(#af0336), to(#ffc7c7));
		background-image: -webkit-linear-gradient(left, #af0336 0%, #ffc7c7 100%);
		background-image: linear-gradient(to right, #af0336 0%, #ffc7c7 100%);*/
		background-image: linear-gradient(45deg, #af0336 0%, #ffc7c7 50%, #e06a8d 90%);
		background-size: 300% 100%;
		-webkit-text-fill-color: transparent;
		animation-name: gradationTextAnimation;
		animation-duration: 8s;
		animation-timing-function: linear;
		animation-iteration-count: infinite;
	  }
	  
	  @keyframes gradationTextAnimation{
		0%{
			background-position: 0 0;
		}
		50%{
			background-position: 100% 0;
		}
		100%{
			background-position: 0 0;
		}
	}
	/*段落タグ設定*/
	#main p {
		padding: 0px 20px 15px;	/*上、左右、下への余白*/
	}
	#main h2 + p,
	#main h3 + p {
		margin-top: -10px;
	}
	#main section+section {
		margin-top: 50px;
	}

	.btn_contact {
		position: relative;
		display: inline-block;
		font-weight: bold;
		padding: 0.25em 0.5em;
		top:-45px;
		text-decoration: none;
		color: #af0336;
		transition: .4s;
	}
	.btn_contact:hover {
		padding-left: 0.7em;
		padding-right: 0.3em;
		color: #e06a8d;
	}
	.btn_contact::after {
		position: absolute;
		left: 0;
		content: '';
		width: 100%;
		height: 2px;
		background: #e06a8d;
		bottom: -1px;
		transform: scale(0, 1);
		transform-origin: right top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
		transition: transform 0.3s;  /*変形の時間*/
	}
	.btn_contact:hover::after {
		transform: scale(1, 1);     /*ホバー後、x軸方向に1（相対値）伸長*/
		transform-origin: left top; /*左から右に向かう*/
	}
	.btn_trial a {
		position: relative;
		display: flex;
		justify-content: space-around;
		align-items: center;
		margin: 0 auto;
		max-width: 200px;
		padding: 10px 30px;
		margin: 10px 30px;
		color: #af0336;;
		transition: 0.3s ease-in-out;
		font-weight: 600;
		text-decoration: none;
	}
	.btn_trial a:before,
	.btn_trial a:after {
		content: '';
		width: 18px;
		height: 18px;
		border-color: #af0336;
		box-sizing: border-box;
		border-style :solid;
		display: inline-block;
		position: absolute;
		transition: all 0.3s ease-in-out;
	}
	.btn_trial a:before {
		top: -6px;
		left: -6px;
		border-width: 2px 0 0 2px;
		z-index: 5;
	}
	.btn_trial a:after {
		bottom: -6px;
		right: -6px;
		border-width: 0 2px 2px 0;
	}
	.btn_trial a:hover:before,
	.btn_trial a:hover:after {
		width: calc(100% + 12px);
		height: calc(100% + 12px);
		border-color: #af0336;
	}
	.btn_trial a:hover {
		color: #fff;
		background-color: #af0336;
		border-color: #af0336;
	}
	.trial {
		display:flex;
	}
	@media screen and (max-width: 768px) {
		.trial{
			display: none;
		}

		#header h2{
		font-size: 15px;
		}
		#main {
			float: center;
			width: 100%;
		}
		#main .contents_box_child {
			max-width:768px;
			width: 78.8%;
			margin: 0 auto;
			background: rgba(255, 255, 255);
			box-shadow: 0 3px 6px rgba(0, 0, 0, 0.5);
			display:block;
			list-style-type: none;
		}
		.span_text{
			color: #414141;
			font-size: 8px;
			font-family: YuGothic,'Yu Gothic',sans-serif;
		}
		.span_text p{
			color: #414141;
			font-size: 8px;
			font-family: YuGothic,'Yu Gothic',sans-serif;
		}
		#main h2 {
			clear: both;
			font-family: YuGothic,'Yu Gothic',sans-serif;
			margin-bottom: 10px;
			font-size: 10px;
			letter-spacing: 0.1em;
			color: #af0336;
			background: #ffffff;
			background: linear-gradient(#ffffff, #ffffff); /* グラデーション */
			position: relative;
			padding: 1rem .5rem;
		  }
		#main h3 {
			clear: both;
			font-family: YuGothic,'Yu Gothic',sans-serif;
			margin-bottom: 20px;
			font-size: 10px;
			letter-spacing: 0.1em;
			color: #af0336;
			background: #ffffff;
			background: linear-gradient(#ffffff, #ffffff); /* グラデーション */
			position: relative;
			padding: 1rem .5rem;
		}
		#main .contents_box_contents table th{
			font-family: YuGothic,'Yu Gothic',sans-serif;
			font-size: 5px;
		}
		#main .contents_box_contents table td{
			font-family: YuGothic,'Yu Gothic',sans-serif;
			font-size: 7px;
			height: 30px;
		}
		.header_image img{
			width: 100%;
			height: 100px;
			scale: 100%;
			text-align: center;
			object-fit: cover;
			position: relative;
		}
		.header_text{
			position: absolute;
			max-width: 300px;
			width: 100%;
			top: 95px;
			left: 40px;
		}
		.header_span_text{
			color: #fff;
			font-size: 20px;
			font-weight: bold;
			font-family: YuGothic,'Yu Gothic',sans-serif;;
		}
	}
	/*ページの上部へ「↑」ボタン
---------------------------------------------------------------------------*/
@keyframes scroll {
	0% {opacity: 0;}
	100% {opacity: 1;}
	}
	body .nav-fix-pos-pagetop a {display: none;}
	body.is-fixed-pagetop .nav-fix-pos-pagetop a {
		display: block;text-decoration: none;
		z-index: 100;
		text-align: center;
		width: 50px;	/*幅*/
		line-height: 50px;	/*高さ*/
		position: fixed;
		bottom: 100px;	/*下から１００pxの場所に配置*/
		right: 5%;		/*右から5%の場所に配置*/
		background: #000;	/*背景色（古いブラウザ用）*/
		background: rgba(0,0,0,0.6);	/*背景色。0,0,0は黒の事で0.6は透明度60%の事。*/
		color: #fff;	/*文字色*/
		border: 1px solid #fff;	/*枠線の幅、線種、色*/
		animation-name: scroll;	/*上のアニメーションで指定しているkeyframesの名前（scroll）*/
		animation-duration: 1S;	/*アニメーションの実行時間*/
		animation-fill-mode: forwards;	/*アニメーションの完了後、最後のキーフレームを維持する*/
	}
	/*マウスオン時*/
	body.is-fixed-pagetop .nav-fix-pos-pagetop a:hover {
		background: #999;	/*背景色*/
	}