@import url(https://fonts.googleapis.com/earlyaccess/mplus1p.css);

*{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
html{ font-size: 62.5%; /* 10px */ }
body{
	font-family: "Helvetica Neue", "Helvetica", "BIZ UDGothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	/* 'Noto Sans JP',  */
	/* font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; */
	/* font-family: 'M PLUS Rounded 1c', sans-serif; */
	/* font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Original Yu Gothic", "Yu Gothic", YuGothic, "游ゴシック Medium", "游ゴシック", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", Verdana, Meiryo, "メイリオ", "M+ 1p", sans-serif; */

	text-align: left;
	font-size: 1.4rem;
	line-height: 1.6;
	color: #222222;
	min-width: 320px;
	font-feature-settings: "palt";

	background: #fffef6;
	background-image:
		/* url(../img/bg-footer00.png), */
		url(../img/bg05.jpg);
	background-position:
		/* center bottom, */
		center top;
	background-repeat:
		/* no-repeat, */
		repeat;
	background-size:
		/* contain, */
		auto;
}
.biz-udgothic-regular {
	font-family: "BIZ UDGothic", serif;
	font-weight: 400;
	font-style: normal;
}
.biz-udgothic-bold {
	font-family: "BIZ UDGothic", serif;
	font-weight: 700;
	font-style: normal;
}
  

.sp{
	display: block !important;
	line-height: 0;
}
.pc{
	display: none !important;
}

h1,h2,h3,h4,h5,h6{ font-size: 100%; font-weight: normal; margin: 0; padding: 0; }
ul,li,ol{
	list-style: none outside none;
	margin: 0;
	padding: 0;
}
p{ margin: 0; padding: 0; }
img{ max-width: 100%; vertical-align: top; }

a{ color: #005a9a; text-decoration: none; transition: 0.5s; }
/* a{ color: #43954e; text-decoration: none; transition: 0.5s; } */
a:visited{ color: #aa0085; text-decoration: none; }
a:hover,
a:active,
a:focus{ color: #e2355d; text-decoration: none; }
a img{ transition: 0.8s; }
a:hover img, a:active img, a:focus img{ opacity: 0.8; filter: alpha(opacity=80); }

	header a *,
	header a:hover *{
		transition: 0s;
	}

/* text decoration */
.red{ color: #ec5297; }
.blue{ color: #0752b9; }
.yellow{ color: #c69e00; }
.bold{ font-weight: bold; }
.size08{ font-size: 0.8rem; }
.size09{ font-size: 0.9rem; }
.size11{ font-size: 1.1rem; }
.size12{ font-size: 1.2rem; }

.sml{ font-size: 85% !important; }

/* ボタン外部 */
/* a[target="_blank"] p:after{
	content: "\f08e";
	font-family: 'FontAwesome';
	vertical-align: middle;
	display: inline-block;
	padding: 0 0 0 6px;
} */
/* /basic */



/* Animation
=================================== */
.fadeIn{
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 2s;
	-ms-animation-duration: 2s;
	animation-duration: 2s;
	-webkit-animation-name: fadeIn;
	animation-name: fadeIn;
	visibility: visible !important;
}
@-webkit-keyframes fadeIn{
	0%{ opacity: 0; }
	100%{ opacity: 1; }
}
@keyframes fadeIn{
	0%{ opacity: 0; }
	100%{ opacity: 1; }
}

.ani_d02{
	-webkit-animation-duration: 0.2s;
	-moz-animation-duration: 0.2s;
	-o-animation-duration: 0.2s;
	-ms-animation-duration: 0.2s;
	animation-duration: 0.2s;

	-webkit-animation-delay: 0.2s;
	-moz-animation-delay: 0.2s;
	-o-animation-delay: 0.2s;
	-ms-animation-delay: 0.2s;
	animation-delay: 0.2s;
}
.ani_d15{
	-webkit-animation-duration: 1.5s;
	-moz-animation-duration: 1.5s;
	-o-animation-duration: 1.5s;
	-ms-animation-duration: 1.5s;
	animation-duration: 1.5s;

	-webkit-animation-delay: 1.5s;
	-moz-animation-delay: 1.5s;
	-o-animation-delay: 1.5s;
	-ms-animation-delay: 1.5s;
	animation-delay: 1.5s;
}


/* Loading
=================================== */
#loading{
	width: 100vw;
	height: 100vh;
	transition: all 1s;
	background-color: #fff071;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
}
.loaded{
	opacity: 0;
	visibility: hidden;
}
#area1{
	width: 70px;
	height: 60px;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 60px;
	right: 0;
	margin: auto;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.spinner{
	margin: 0px auto 0;
	width: 70px;
	text-align: center;
}
.spinner > div{
	width: 18px;
	height: 18px;
	background-color: #e88b00;
	border-radius: 100%;
	display: inline-block;
	-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
	animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}
.spinner .bounce1{
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}
.spinner .bounce2{
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay{
	0%, 80%, 100% { -webkit-transform: scale(0) }
	40%{ -webkit-transform: scale(1.0) }
}
@keyframes sk-bouncedelay{
	0%, 80%, 100%{
		-webkit-transform: scale(0);
		transform: scale(0);
	}
	40%{
		-webkit-transform: scale(1.0);
		transform: scale(1.0);
	}
}





#wrapper{
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
}
	header{
		width: 100%;
		margin: 0 auto;
		text-align: left;
	}
	div#ctv_tab{}

	/* タイトル */
	div#title-cont,
	div#title-cont-s{
		width: 100%;
		margin: 0 auto;
		text-align: left;
		/* border-bottom: 1px #e0e4e5 solid; */
		background: rgba(255, 255, 255, 1);
		/* box-shadow: 0px 0px 4px 0px #f7f3e2; */
		overflow: hidden;
	}
		div#title-cont h1 img{
			display: block;
			width: 70%;
			max-width: 640px;
			margin: 5vw auto 6vw;
		}

	div#container{
		width: 100%;
		/* max-width: 640px; */
		margin: 0 auto;
		padding: 0;
		background-size: contain;
		overflow: hidden;
		text-align: center;
	}
		div#title_cont{
			/* background: #8c0045; */
			background-size: contain;
		}
		h1{}


		.top-content-oa{
			padding: 1.8em 0;
			background: rgba(255, 255, 255, 0.55);
		}


		div.movie-inner{
		}
		div.movie-inner ul{
			width: 100%;
			margin: 0 auto 0px;
	
			padding: 0px 0;
		}
			div.movie-inner ul li{
				width: 40vw;
				margin: 0 0 0vw;
				padding: 8px 4vw 0px;
			}

	/* swiper */
	.swiper{
		padding-bottom: 1.2em !important;
	}
	.swiper-button-next::after,
	.swiper-button-prev::after{
		font-size: 28px !important;
		background: #202020;
		min-width: 36px;
		height: 36px;
		padding: 2px;
		border-radius: 4px;
		line-height: 36px !important;
		display: block;
		transition: 0.35s;
	}
		.swiper-button-next:hover::after,
		.swiper-button-prev:hover::after{
			background: #FFF;
			color: #202020;
			transition: 0.35s;
		}
	.swiper-button-next,
	.swiper-button-prev{
		color: #FFF !important;
	}
	.swiper-pagination-bullet:hover{
		background: #202020 !important;
	}
	.swiper-pagination-bullet-active{
		background: #202020 !important;
	}

	/* /swiper */



		.oa-container-wrapper{
			position: relative;
			overflow: hidden;
			/* border: 1px solid #ddd;
			border-radius: 8px; */
			/* padding: 0px 10px; */
			padding-right: 10px
		}
		.oa-container{
			display: flex;
			overflow-x: auto;
			scroll-snap-type: x mandatory;
			gap: 16px;
			padding: 8px 0 0;
		}
		.oa-container > *{
			flex: 0 0 auto;
			scroll-snap-align: start;
		}
			.oa-box{
				width: 90%;
				max-width: 960px;
				/* background-color: #ffffff;
				border-radius: 8px;
				box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); */
				padding: 0 4px;
			}
			.oa-box:first-child{
				padding: 0 0 0 10px;
			}
			.oa-box:last-child{
				/* padding: 0 10px 0 0; */
				/* margin-right: 10px; */
			}
			.arrow{
				position: absolute;
				bottom: 23%;
				transform: translateY(-50%);
				background-color: rgba(0, 0, 0, 0.7);
				color: #FFF;
				border: none;
				font-size: 3.2rem;
				padding: 4px 10px;
				cursor: pointer;
				z-index: 10;
				transition: 0.5s;
				border: 1px solid #999;
			}
			.arrow.left{
				left: 0px;
				border-radius: 0 8px 8px 0;
				border-left: none;
			}
			.arrow.right{
				right: 0px;
				border-radius: 8px 0 0 8px;
				border-right: none;
			}
				.arrow:hover{
					background-color: rgba(0, 0, 0, 1);
					transition: 0.5s;
				}
				.arrow.hidden {
					display: none;
					transition: 0.35s;
				}

			p.oa,
			p.oa-date,
			p.oa-title{
				font-size: 1.6rem;
				line-height: 1.64;
				font-weight: bold;
				text-align: center;
				margin: 0 auto 2.5vw;
			}
				p.oa span,
				p.oa-date span{
					font-size: 1.4rem;
				}
				p.oa img{
					vertical-align: bottom;
					margin: 0 4px 2px;
					width: 140px;
				}
			p.oa{
				margin: 0 auto 0.2rem;
			}
			p.oa-date{
				margin: 0 auto 0.1rem;

			}
			p.oa-title{}
	
			.oa2-box{
				text-align: center;
			}
				p.oa2{
					display: inline-block;
					font-size: 1.4rem;
					line-height: 1.64;
					font-weight: bold;
					text-align: left;
					margin: 0 auto 0vw;
					border: 1px solid #CCC;
					border-radius: 3px;
					padding: 4px 8px;
					background: #F0F0F0;
				}
					p.oa2 span{
						font-size: 1.2rem;
					}

		div.caption{
			margin: 0% auto 0%;
			padding: 2vw 0 4vw;
			background-color:rgba(255,255,255,0.7);
			text-shadow: 0px 0px 2px #f7f3e2;
			/* border-top: 1px solid #eed795;
			border-bottom: 1px solid #eed795; */
			box-shadow: 0px 0px 4px 0px #C2C2C2;
		}
			div.caption h2{
				color: #333333;
				font-size: 1.8rem;
				font-size: clamp(1.6rem, (1rem + 1.4vw), 2.4rem);
				font-weight: bold;
				line-height: 1.8;
				width: 98%;
				margin: 0 auto;
			}



		div#container2{
			overflow: hidden;
			/* background: rgba(255, 255, 255, 0.8); */

			padding: 16px 0;
			padding: 8vw 0;
		}

			h3.caption{
				position: relative;
				display: inline-block;
				font-size: 1.8rem;
				font-size: 2.6vw;
				font-size: clamp(1.6rem, (1.2rem + 1.6vw), 3.6rem);
				font-weight: bold;
				line-height: 1.32;
				letter-spacing: -0.1rem;
				color: #F0F0F0;
			}
				h3.caption img.l-message{
					width: 50%;
					vertical-align: middle;
					margin: 0 0 0.32em;
				}
				h3.caption strong{
					font-size: clamp(1.8rem, (1.4rem + 1.8vw), 4.2rem);
				}
			h3.caption span{
				font-size: 1.32rem;
				font-size: clamp(1.4rem, (1.0rem + 1.6vw), 2.8rem);
				/* font-weight: normal; */
				letter-spacing: 0rem;
			}
			h3.caption:after{
				/* content: ''; */
				position: absolute;
				left: 50%;
				bottom: -8px;
				display: inline-block;
				width: 90px;
				height: 2px;
				-moz-transform: translateX(-50%);
				-webkit-transform: translateX(-50%);
				-ms-transform: translateX(-50%);
				transform: translateX(-50%);
				background-color: #111;
				background-color: #F0F0F0;
				border-radius: 2px;
			}



		div#container ul.flexContent{
			margin: 10vw auto;
			overflow: hidden;
		}
		div#container ul.flexContent li a{
			display: block;
			/* width: 46%; */
			text-align: left;
			margin: 0 3% 8%;
			/* min-height: 240px; */
			border: 1px solid #aaaaaa;
			padding: 4.5% 3% 3%;
			background: #FFF;
			box-shadow: 0px 1px 4px #C2C2C2;
			overflow: hidden;
			transition-duration: 0.5s;
		}
			div#container ul.flexContent li a:hover{
				/* -webkit-transform: translate(0,-10px);
				transform: translate(0,-10px); */
				background: #202020;
				border: 1px solid #FFF;
				box-shadow: 0px 0px 1px #C2C2C2;
				transition-duration: 0.5s;
			}
			div#container ul.flexContent li a:hover .photo2{
				background: #ffffff;
				border: 1px solid #aaaaaa;
				transition-duration: 0.5s;
			}

		div#container ul.flexContent a li img{
			/* margin: -25px 0px 0px 0px; */
			/* max-width: 50%; */
		}
			div.photo{
				position: relative;

				width: 100%;
				padding-top: 56.25%;
				overflow: hidden;
			}
			div#container ul.flexContent a li div.photo2:before{
				/* content: "";
				position: absolute;
				background: url(../img/photo-c01.png) no-repeat top left;
				top: -5px;
				left: -5px;
				z-index: 100;
				width: 21px;
				height: 21px;
				background-size: 21px; */
			}
			div#container ul.flexContent a li div.photo2:after{
				/* content: "";
				position: absolute;
				background: url(../img/photo-c02.png) no-repeat bottom right;
				bottom: -5px;
				right: -5px;
				width: 21px;
				height: 21px;
				background-size: 21px; */
			}

		p.p-date{
			/* float: right;
			display: inline-block; */
			padding: 0px 4px;
			margin: 4px 0 0px;
			font-size: 1.32rem;
			letter-spacing: 0.1rem;
			transform: rotate(0deg);
			text-align: right;
		}
		p.p-date span{
			font-size: 0.9rem;
		}
		p.p-title{
			font-size: 1.8rem;
			font-weight: bold;
			padding: 4px 2px 4px 4px;
			word-break: break-all;
		}
		p.p-title span.subttl{
			font-size: 1.64rem;
			/* font-weight: normal; */
			/* display: block; */
		}
		p.p-title span.t-sml{
			font-size: 1.2rem;
			font-weight: normal;
		}
		p.p-title-sub{
			font-size: 1.64rem;
			/* font-weight: bold; */
			padding: 4px 0 4px;
			word-break: break-all;
		}

		.photo img{
			display: block;
			transition-duration: 0.4s;
			margin: 0 auto;

			width: 100%;
			height: auto;
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
			min-height: 100%;
			object-fit: cover;
		}
		a:hover .photo img{
			/* transform: scale(1.1);
			transition-duration: 0.4s; */
		}
		.photo2{
			background: #f7f3e2;
			border: 1px solid #f7f3e2;
			overflow: hidden;
			width: 480px;
			margin: 4px auto;
			width: 100%;
		}
		.photo2 img{
			margin: 4vw auto;
			/* transition: 0.4s all; */
		}
			.photo2 img:hover{
				/* transform: scale(1.1,1.1);
				transition: 0.4s all; */
			}



		.button{
			display: inline-block;
			width: 100%;
			text-decoration: none;
			outline: none;
		}
		.button::before,
		.button::after{
			position: absolute;
			z-index: -1;
			display: block;
			content: '';
		}
		.button,
		.button::before,
		.button::after{
			-webkit-transition: all 0.6s;
			transition: all 0.6s;
		}
		.button{
			position: relative;
			z-index: 2;
			overflow: hidden;
			color: #222;
		}
		a:hover .button{
			/* color: #fff; */
			/* text-shadow: 1px 1px 1px #a70060; */
		}
		/* .button::after{
			top: 0;
			left: -100%;
			width: 100%;
			height: 100%;
		}
		a:hover .button::after{
			left: 0;
			background-color: #ff007f;
		} */
		/* 左右effect */
		a:hover .button{
			position: relative;
			z-index: 2;
		}
		a:hover .button{
			/* background-color: #ffde00;
			color: #59b1eb; */
		}
		.button::before,
		.button::after{
			top: 0;
			width: 50%;
			height: 100%;
		}
		.button::before{
			right: 0;
		}
		.button::after{
			left: 0;
		}
		a:hover .button::before,
		a:hover .button::after{
			/* width: 0;
			background-color: #ffde00; */
		}










	/* 動画 */
	.top-content-head{
		position: relative;
		width: 100%;
		overflow: hidden;
	}
	.mov-bg{
		position: relative;
		width: 100%;
		padding-top: 56.25%;
	}
	#mov{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	#mov video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	/* スマホ表示（1080px以下） */
	@media screen and (max-width: 1080px) {
		.mov-bg{
			/* padding-top: 75%; */
		}
		#mov video{
			/* object-fit: contain; */
		}
	}




	/* .top-content-head{
		position: relative;
		top: 0;
		left: 0;
		padding: 57px 0 52px;
		overflow: hidden;
	}
	.top-content-head .mov-bg{
		position: absolute;
		top: 0;
		left: 0;
		text-align: center;
		z-index: -1;
		width: 100%;
		height: 100%;
		background: #FFF;
	}
	.top-content-head .mov-bg:after{
	}

	.top-content-head #mov{
		margin: 0 auto;
		height: 100%;
		width: 100%;
		display: inline-block;
		text-align: center;
	}
	.top-content-head #mov video{
		object-fit: contain;
		display: inline-block;
		min-width: 100%;
		min-height: 100%;
		position: relative;
		top: -205px;
		left: 0;
	}

	.mov-img-bg{
		width: 70%;
		max-width: 640px;
		margin: 132px auto 0;
	}

	@media screen and (max-width: 1079px){
		.top-content-head #mov video{
			object-fit: cover;
			height: 100%;
			top: 0;
		}

		.mov-img-bg{
			width: 50%;
			max-width: 640px;
			margin: 4vw auto;
		}
	}



	.top-content-head .top-content-h-inner{
	  display: flex;
	  justify-content: center;
	  align-items: center;
	  color: #fff;
	  height: 580px;
	  position: relative;
	  top: 0;
	  left: 0;
	}
	@media screen and (max-width: 1079px){
		.top-content-head{
			padding: 7% 0 6%;
		}
		.top-content-head .top-content-h-inner{
			height: auto;
			padding: 13% 0;
		}
	} */





	.movie{ text-align: center; }

	.youtube-wrapper{
		margin: 1.6em auto;
		width: 92%;
		max-width: 960px;
	}
	.youtube-inner{
		position: relative;
		padding-bottom: 56.25%;
		height: 0;
	}
	.youtube-inner p{
		font-size: 1.28rem;
		font-weight: bold;
		border-left: 6px solid #ff1f25;
		padding: 4px 10px;
	}
	.youtube-inner iframe{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		max-width: 960px;
		height: 100%;
	}





		div.bx-wrapper{
			margin: 0 auto 0px !important;
		}
		.bx-wrapper .bx-pager.bx-default-pager a{
			background: #0a89ff;
			width: 16px;
			height: 16px;
			border-radius: 12px;
			margin: 0 8px;
		}
		.bx-wrapper .bx-pager.bx-default-pager a:hover{
			background: #ff0096;
		}
		.bx-wrapper a.active{
			background: #ffa800 !important;
		}










/* Single ====================================================================== */
div#title-cont-s img{
	display: block;
	width: 35%;
	margin: 4vw auto;
}

div#sg-contents{
	width: 97.2%;
	padding: 0 1.4%;
	text-align: left;
	overflow: hidden;
	margin: 0 auto 64px;

	background-repeat: no-repeat;
	background-size: contain;
	margin: 24px auto 48px;
	/* background: #FFF;
	max-width: 960px; */
}
	div#sg-contents2{
		padding: 4% 1.4% 2%;
		/* max-width: 720px; */
		max-width: 840px;
		margin: 0 auto;
		background: #FFF;
		border-radius: 16px;
	}

section.sg-post{
	/* width: 860px; */
	width: 100%;
	margin: 0px auto 0px;
	padding: 0px 0 0;
	background: #FFF;
}


/* ニュース記事１ */
div#sg-news-main{
	margin: 8px 0 32px;
}
	/* タイトル */
	h1#sg-news-title,
	h2#sg-news-connect,
	h2#sg-news-movie,
	h2#sg-news-short{
		background: #f7f3e2;
		background-image: url(../img/cap-bg.png);
		background-position: right top;
		background-repeat: no-repeat;
		background-size: auto 42px;
		font-size: 2.0rem;
		font-weight: bold;
		line-height: 1.8;
		letter-spacing: normal;
		padding: 8px 6px 2px;
		height: 40px;
		box-shadow: 0px 0px 3px 0px #C2C2C2;
		position: relative;
		/* text-shadow: 1px 1px 1px #9d8e00; */
	}
	h1#sg-news-title span{
		font-size: 1.4rem;
	}
	h2#sg-news-connect::before,
	h2#sg-news-movie::before,
	h2#sg-news-short::before{
		font-family: Times New Roman, Georgia;
		display: block;
		color: #fff4d5;
		text-shadow: 1px 1px 2px #eed795;
		letter-spacing: -0.04em;
		font-size: 3.72em;
		line-height: 1;
		position: absolute;
		left: 0%;
		transform: translate(3%, -36%);
		-webkit-transform: translate(3%, -36%);
		-ms-transform: translate(3%, -36%);
	}
		h2#sg-news-connect::before{
			content: 'News';
		}
		h2#sg-news-movie::before{
			content: 'Movie';
		}
		h2#sg-news-short::before{
			content: 'Short';
		}
	h2#sg-news-connect::after,
	h2#sg-news-movie::after,
	h2#sg-news-short::after{
		display: block;
		color: #333333;
		position: absolute;
		left: 0%;
		transform: translate(7%, 0%);
		-webkit-transform: translate(7%, 0%);
		-ms-transform: translate(7%, 0%);
	}
		h2#sg-news-connect::after{
			content: '記事';
		}
		h2#sg-news-movie::after{
			content: '動画';
			transform: translate(18%, 0%);
			-webkit-transform: translate(18%, 0%);
			-ms-transform: translate(18%, 0%);
			}
		h2#sg-news-short::after{
			content: 'ショート';
			transform: translate(10%, 0%);
			-webkit-transform: translate(10%, 0%);
			-ms-transform: translate(10%, 0%);
		}

	p.i-update{
		color: #bd8500;
		font-size: 110%;
		text-align: center;
		line-height: 2;
		/* background: #fffbd5; */
		margin: 16px 0 8px;
	}
	p.c-date{
		text-align: right;
		color: #707070;
		padding: 2px 1% 0 0;
		line-height: 2;
		/* background: #fffbd5; */
		border-top: 2px solid #ffedbd;
		margin: 0 0 16px;
	}

	/* movie */
	div.locipo-player-movie-title{
		color: #505050;
	}

	div#sg-photo{
		margin: 0px 0 0;
		text-align: center;
	}
		div#sg-photo p{}
		div#sg-photo p img{}

	/* 本文 */
	div.sg-main-content{
		margin: 0px 0 0px;
		padding: 16px 8px 24px;
		clear: both;

		color: #464646;
		font-size: 1.8rem;
		line-height: 1.68;
	}
		div.sg-main-content img{
			border-radius: 2px;
		}
		div.sg-main-content p{
			color: #464646;
			font-size: 1.8rem;
			line-height: 1.68;
			padding: 0px 0px 16px;
			/* letter-spacing: 0.01rem; */
		}
			div.sg-main-content p.ref{
				font-size: 1.6rem;
			}
			div.sg-main-content img.alignleft{ display: block; margin: 0 auto 0 0; }
			div.sg-main-content img.aligncenter{ display: block; margin: 0 auto; }
			div.sg-main-content img.alignright{ display: block; margin: 0 0 0 auto; }

		div.sg-main-content span.ph-cap{
			color: #c1a155;
			text-decoration: underline;
			font-size: 92%;
		}

		/* add more */
		div.sg-main-content h1,
		div.sg-main-content h2,
		div.sg-main-content h3,
		div.sg-main-content h4,
		div.sg-main-content h5,
		div.sg-main-content h6{
			font-weight: bold;
			color: #303030;
			border-top: 2px solid #f1ca00;
			border-bottom: 2px solid #f1ca00;
		}
		div.sg-main-content h1{
			font-size: 2.4rem;
			line-height: 1.64;
			/* background: #ffdaee; */
			padding: 8px 8px 8px;
			margin: 0 0 20px 0;
		}
		div.sg-main-content h2{
			font-size: 2.2rem;
			line-height: 1.60;
			padding: 8px 8px 8px;
			margin: 0 0 20px 0;
		}
		div.sg-main-content h3{
			font-size: 2.0rem;
			line-height: 1.56;
			padding: 8px 8px 8px;
			margin: 0 0 20px 0;
		}
		div.sg-main-content h4{
			font-size: 2.0rem;
			line-height: 1.52;
			padding: 8px 8px 8px;
			margin: 0 0 20px 0;
		}
		div.sg-main-content h5{
			font-size: 1.8rem;
			line-height: 1.68;
			padding: 8px 8px 8px;
			margin: 0 0 20px 0;
		}
		div.sg-main-content h6{
			font-size: 1.8rem;
			line-height: 1.68;
			font-weight: normal;
		}

		div.sg-main-content strong{
			font-weight: bold;
		}
		div.sg-main-content a:hover,
		div.sg-main-content a:active,
		div.sg-main-content a:focus{ text-decoration: underline; }

		div.sg-main-content a[target="_blank"]:after{
			content: "\f08e";
			font-family: 'FontAwesome';
			vertical-align: middle;
			display: inline-block;
			padding: 0px 2px 1px 6px;
		}

		div.sg-main-content ul{
			list-style-type: disc;
			margin: 0 0px 8px;
		}
		div.sg-main-content ol{
			margin: 0 4px 8px;
		}
		 	div.sg-main-content ul li,
			div.sg-main-content ol li{
				font-size: 1.8rem;
				line-height: 1.6;
				margin-bottom: 16px;
				/* margin-left: 2rem;
				text-indent: -1.2rem; */
			}
			/* div.sg-main-content ul li::before{
				content: "\f07e";
				font-family: 'FontAwesome';
				vertical-align: middle;
				display: inline-block;
				padding: 0px 4px 4px 0px;
			} */





		div#btn-reporter{
			position: fixed;
			bottom: 0;
			right: 0;
			z-index: 100;

			margin: 8px 0px 8px;
			text-align: center;
			clear: both;
		}
			div#btn-reporter a{
				font-size: 1.6rem;
				color: #FFF;
				background: #955C13;
				/* border: 1px solid #f7f3e2; */
				border: 1px solid #774A10;
				border-radius: 100vh;
				box-shadow: 0px 0px 3px #C2C2C2;
				padding: 0.6rem 1.0rem;
				transition: all 0.4s;
				display: block;
				margin: 0 6px 0 auto;
				width: 160px;
				text-decoration: none;
			}
			div#btn-reporter a:hover{
				background: #fff9a9;
				box-shadow: 0px 0px 3px #C2C2C2;
				border: 1px solid #e2b435;
				color: #8e6800;
				transition: all 0.4s;
				text-decoration: none;
			}
			div#btn-reporter a:before{
				font-size: 1.8rem;
				content: "\f02d";
				font-family: 'FontAwesome';
				vertical-align: middle;
				display: inline-block;
				padding: 0 6px 2px 0;
			}

	/* popup */
	.mfp-bg{ z-index: 10000 !important; }
	.mfp-wrap{ z-index: 10001 !important; }
	div.inline-wrap{
		background: #FFF;
		width: 95%;
		max-width: 900px;
		max-height: 580px;
		margin: 0 auto;
		padding: 16px 16px 4px;
		overflow: auto;
	}
		div.inline-wrap p.c-title{
			font-size: 1.6rem;
			line-height: 1.6;
			font-weight: bold;
			margin: 0px 0 12px;
		}
		div.inline-wrap img{}
		div.inline-wrap .c-image{
			/* text-align: right; */
			display: flex;
			flex-wrap: wrap;
		}
			div.inline-wrap .c-image img{
				width: 90%;
				max-width: 320px;
				height: auto;
				margin: 0px auto 4px;
			}
			div.inline-wrap p.c-name{
				text-align: right;
				font-size: 1.4rem;
				line-height: 1.46;
				padding: 0 2px;
			}
		div.inline-wrap p.c-comment{
			font-size: 1.6rem;
			line-height: 1.64;
			margin: 8px 0 24px;
			padding: 0 0;
		}
		p.popup-modal-dismiss{
			text-align: right;
		}
	/* /popup */



	/* 動画 */
	div.sg-movie-content{
		margin: 0px 0 0px;
		padding: 16px 8px 24px;
		clear: both;

		color: #464646;
		font-size: 1.8rem;
		line-height: 1.68;
	}

	.swiper-container,
	.swiper-container2{
		text-align: center;
	}
	.swiper-container .swiper-slide img,
	.swiper-container2 .swiper-slide img{
		max-width: 100%;
		width: 100%;
		height: auto;
	}
	.swiper-container .swiper-slide,
	.swiper-container2 .swiper-slide{
		position: relative;
		width: 100%;
	}
	.swiper-container .swiper-slide:before{
		content:"";
		display: block;
		padding-top: 56.25%;
	}
	.swiper-container2 .swiper-slide:before{
		content:"";
		display: block;
		padding-top: 177.78%;
	}
	.swiper-container .swiper-slide iframe,
	.swiper-container2 .swiper-slide iframe{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	#thumbs,
	#thumbs2{
		height: 20%;
		padding: 10px 0;
	}
	#thumbs .swiper-slide,
	#thumbs2 .swiper-slide{
		width: 20%;
		height: 100%;
		opacity: 0.2;
		cursor: pointer;
	}
	#thumbs .swiper-slide:before,
	#thumbs2 .swiper-slide:before{
		content: none;
	}
	#thumbs .swiper-slide-active,
	#thumbs2 .swiper-slide-active{
		opacity: 1;
	}



/* form btn */
.form-btn{
	margin: 2% auto 10%;
}
	.form-btn a{
		font-size: 1.8rem;
		border: 1px solid #eb9400;
		color: #eb9400;
		background-color: #fff;
		padding: 1.5rem 4.2rem 1.5rem 2.2rem;
		box-shadow: 0px 0px 8px #C2C2C2;
		border-radius: 100vh;
		overflow: hidden;
		transition: 0.4s;
		position: relative;
		/* font-weight: bold; */
		text-align: center;
		display: inline-block;
		/* width: 77%; */
		min-width: 50%;
	}
		.form-btn a.pos-center{
			margin: 0 1.5%;
			display: block;
			/* width: 77%; */
		}
		.form-btn a strong{
			/* font-size: 1.8rem; */
		}
		.form-btn a span{
			font-size: 1.48rem;
		}
	.form-btn a:hover{
		color: #FFF;
		background-color: #eb9400;
		border: 1px solid #eb9400;
	}
	.form-btn a i.fa{
		margin-right: 1rem;
	}
	.form-btn a:before{
		font-size: 1.6rem;
		font-family: 'FontAwesome';
		line-height: 1.1;
		position: absolute;
		top: calc(50% - .8rem);
		right: 2rem;
		margin: 0;
		padding: 0;
		content: '\f054';
	}

/* opinion */
.opinion{
	width: 94%;
	margin: 0% auto 8%;
	padding: 2.4% 0;
	color: #646464;
	border: 1px solid #F0F0F0;
	background: rgba(255, 253, 238, 0.75);
	box-shadow: 0px 0px 2px #C2C2C2;
	border-radius: 4px;
}
	.opinion p{
		color: #eb9400;
		font-size: 1.6rem;
		line-height: 1.88;
		/* font-weight: bold; */
		text-align: center;
	}
		.opinion p i.fa{
			margin-right: 0.4rem;
			font-size: 1.68rem;
		}
	.opinion ul{
		width: 90%;
		margin: 10px auto 0px;
		text-align: left;
	}
	.opinion ul li{
		font-size: 1.54rem;
		line-height: 1.64;
		margin-bottom: 12px;
	}



footer{
	background: rgba(255, 255, 255, 0.8);
	padding: 24px 0;
}
footer{ width: 100%; text-align: center; font-size: 0.9em; line-height: 1.4; }
footer div{ width: 100%; margin: 0 auto; }
footer p{ clear: both; }


/* SNS Single */
h3.cap{
	color: #808080;
	margin: 4px auto 6px;
	padding: 0;
	text-align: center;
	font-size: 1.32rem;
	/* border-top: 2px dotted #ffedbd; */
}
body#index h3.cap{
}
div.share-cont{
	clear: both;
	width: 100%;
	text-align: center;
	overflow: hidden;
}
	/* SNS Common */
	ul#sg-sns-share{
		width: 100%;
		max-width: 240px;
		margin: 0px auto 4px;
		/* background: #FFF;
		border-radius: 24px; */
		display: flex;
		flex-wrap: wrap;
		overflow: hidden;
	}
		ul#sg-sns-share li{
			display: block;
			width: 33.3%;
			margin: 0 auto;
			padding: 4px 8px 4px;
			max-width: 60px;
		}



/* Topへ戻る */
div#back-home{
	margin: 24px 0 16px;
	text-align: center;
	clear: both;
}
	div#back-home a{
		font-size: 1.8rem;
		color: #aa7a00;
		background: #FFF;
		border: 1px solid #f7f3e2;
		border-radius: 100vh;
		box-shadow: 0px 0px 8px #C2C2C2;
		padding: 1.2rem 1.8rem;
		/* padding: 6px 10px; */
		transition: all 0.4s;
		display: block;
		margin: 0 auto;
		width: 68%;
	}
	div#back-home a:hover{
		background: #e2b435;
		box-shadow: 0px 0px 8px #C2C2C2;
		color: #FFF;
		transition: all 0.4s;
		/* text-decoration: underline; */
	}
	div#back-home a:before{/* Home */
		font-size: 1.8rem;
		content: "\f015";
		font-family: 'FontAwesome';
		vertical-align: middle;
		display: inline-block;
		padding: 0 6px 2px 0;
	}


	div.links2{
		width: 94%;
		max-width: 720px;
		margin: 24px auto 32px;
		overflow: hidden;
	}
		div.links2 ul{
			display: flex;
			justify-content: center;
			align-items: center;
		}
			div.links2 ul li{
				width: 35%;
				margin: 4px 4%;
				background: #FFF;
				border-radius: 8px;
				box-shadow: 0px 0px 4px #C2C2C2;
				line-height: 40px;
				transition: all 0.4s;
			}
			div.links2 ul li:hover{
				box-shadow: 0px 0px 1px #C2C2C2;
			}
			div.links2 ul li a{
				display: block;
			}
			div.links2 ul li img{
				width: 70%;
				vertical-align: middle;
			}
			div.links2 ul li a:hover img{
				opacity: 0.5;
				filter: alpha(opacity=50);
			}

	div.ctv-logo{
		padding: 2.4em 0;
	}
		div.ctv-logo img{
			width: 70%;
			max-width: 160px;
		}



	/* Page Top
	=================================== */
	#page-top{ position: fixed; bottom: 8px; right: 12px; font-size: 88%; z-index: 20; }
	#page-top a{
		display: block;
		background: url(../img/to_top.png) center top no-repeat;
		width: 42px;
		height: 42px;
		background-size: 100% 100%;
		text-indent: -9999px;
		transition: 0.4s;
	}
	#page-top a:hover{
		background: url(../img/to_top_on.png) center top no-repeat;
		background-size: 100% 100%;
		transition: 0.4s;
	}
	#page-top a img:hover{
		transition: 0.4s;
	}


/*
@media screen and (min-width: 375px){
	div#container ul li{
		margin: 0 2% 8px;
		min-height: 250px;
	}
}

@media screen and (min-width: 400px){
	div#container ul li{
		margin: 0 2% 8px;
		min-height: 250px;
	}
}

@media screen and (min-width: 475px){
	div#container ul li{
		margin: 0 2% 8px;
		min-height: 260px;
	}
}

@media screen and (min-width: 500px){
	div#container ul li{
		margin: 0 2% 8px;
		min-height: 270px;
	}
}

@media screen and (min-width: 570px){
	div#container ul li{
		margin: 0 2% 8px;
		min-height: 280px;
	}
} */


@media screen and (max-width : 640px){
	.form-btn a.pos-center{
		margin: 0 auto;
		width: 77%;
	}
}

@media screen and (min-width: 641px){
	.form-btn a.pos-center{
		margin: 0 auto;
		width: 50%;
	}

	div#back-home a{
		width: 35%;
	}

	div.links2 ul li{
		line-height: 64px;
	}
	div.links2 ul li img{
		width: 52%;
		vertical-align: middle;
	}
}


/*
 @media screen and (min-width: 600px){
	div#container ul li{
		margin: 0 2% 8px;
		min-height: 290px;
	}
}*/

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




	div#container ul.flexContent{
		max-width: 99%;
		margin: 48px auto 16px;
		padding: 12px 0 0;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		overflow: hidden;
	}
		div#container ul.flexContent li{
			width: 50%;
			margin: 0 0% 32px;
		}
		div#container ul.flexContent li a{
			margin: 0 3% 4%;
			padding: 3% 3% 1.8%;
		}
	/* margin: 0 3% 8%;
	min-height: 240px;
	border: 1px solid #aaaaaa; */

	div#flex-box ul.flexContent{
		display: flex;
		flex-wrap: wrap;
		align-items: stretch;
	}
	div#flex-box ul.flexContent li{
		display: flex;
		flex-direction: column;
	}
	div#flex-box ul.flexContent li a{
		height: 100%;
		display: flex;
		flex-direction: column;
	}

}

/* @media screen and (min-width: 660px){
	div#container ul li{
		margin: 0 2% 8px;
		min-height: 300px;
	}
}
*/

/* @media screen and (min-width: 720px){
	div#container ul li{
		margin: 0 2% 8px;
		min-height: 328px;
	}
} */

/* @media screen and (min-width: 790px){
	div#container ul li{
		margin: 0 2% 8px;
		min-height: 344px;
	}
} */

/* @media screen and (min-width: 860px){
	div#container ul li{
		margin: 0 2% 8px;
		min-height: 360px;
	}
} */

/* @media screen and (min-width: 900px){
	div#container ul li{
		margin: 0 2% 8px;
		min-height: 380px;
	}
} */










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

	.sp{ display: none !important; }
	.pc{ display: block !important; }
	img{ max-width: 100%; }

	body{
		/* background: #666; */
	}
	#wrapper{
		margin: 0 auto;
		padding: 0;
		overflow: hidden;
	}
		header{
			width: 100%;
			margin: 0 auto;
			text-align: left;
			border-bottom: 1px #CACACA solid;
		}
		div#ctv_tab{}

		div#container{
			/* width: 960px; */
			margin: 0 auto;
			padding: 0;
			text-align: center;
		}
			div#title-cont{
				box-shadow: 0px 0px 4px 2px #C2C2C2;
			}
			div#title-cont h1{
				width: 100%;
				margin: 0 auto;
				text-align: center;
			}
				div#title-cont h1 img{
					max-width: 640px;
					margin: 100px auto;
				}

		.top-content-oa{
			padding: 40px 0;
		}


		div.movie-inner{
		}
		div.movie-inner ul{
			width: 100%;
			padding: 0px 0;
		}
			div.movie-inner ul li{
				width: calc(100vw / 2 - 16px);
				margin: 0 0 0px;
				padding: 12px 8px 0;
			}





		.oa-container-wrapper{
			padding: 0;
			margin: 0;
		}
		.oa-container{
			gap: 16px;
			padding: 8px 0 0;

			max-width: 1920px;
			margin: 0 auto;
		}
		.oa-container > *{
		}
			.oa-box{
				width: 48%;
				max-width: 960px;
			}
			.arrow{
				position: absolute;
				bottom: 32%;
				font-size: 3.2rem;
				padding: 4px 10px;
			}
			.arrow.left{
				border-radius: 0 8px 8px 0;
			}
			.arrow.right{
				border-radius: 8px 0 0 8px;
			}
				.arrow:hover{
					background-color: rgba(0, 0, 0, 1);
				}
				/* .arrow.hidden {
				} */

			p.oa{
				font-size: 2.2rem;
				margin: 0 auto 10px;
			}
			p.oa-date{
				font-size: 2.2rem;
				margin: 0 auto 0px;
			}
			p.oa-title{
				font-size: 2.2rem;
				margin: 0 auto 24px;
			}
				p.oa span{
					font-size: 1.6rem;
				}
				p.oa img{
					margin: 0 4px 0px;
					width: 160px;
				}
			.oa2-box{}
				p.oa2{
					font-size: 2.0rem;
					margin: 0 auto G0px;
					line-height: 1.8;
					padding: 8px 24px;
					padding: 8px 6%;
				}
					p.oa2 span{
						font-size: 1.6rem;
					}

			div.caption{
				padding: 40px 0 64px;
			}
			div.caption h2{
				font-size: 3.rem;
				line-height: 2;
				/* max-width: 800px; */
			}
			/* h2 img{
				padding: 1.8% 0 1.8%;
				width: 74%;
				max-width: 601px;
			} */



		div#container2{
			/* width: 1280px; */
			margin: 0 auto;
			padding: 88px 0;
		}

			h3.caption{
				position: relative;
				display: inline-block;
				font-size: 3.6rem;
				font-weight: bold;
				line-height: 1.42;
				letter-spacing: -0.1rem;
			}
				h3.caption img.l-message{
					width: 60%;
					max-width: 320px;
					margin: 0 0.5em 0 0;
				}
				h3.caption strong{
					font-size: 4.2rem;
				}
				h3.caption span{
					font-size: 2.8rem;
					/* font-weight: normal; */
					letter-spacing: 0rem;
				}
			h3.caption:after{
				/* content: ''; */
				position: absolute;
				left: 50%;
				bottom: -8px;
				display: inline-block;
				width: 94px;
				height: 2px;
				-moz-transform: translateX(-50%);
				-webkit-transform: translateX(-50%);
				-ms-transform: translateX(-50%);
				transform: translateX(-50%);
				/* background-color: #111;
				background-color: #F0F0F0; */
				border-radius: 2px;
			}


		div#container ul.flexContent{
			max-width: 1440px;
			margin: 64px auto 24px;
			padding: 16px 0 0;
			display: flex;
				/* justify-content: center; */
			justify-content: space-between;
			flex-wrap: wrap;
			overflow: hidden;
		}
			/* div#container ul.flexContent::before,
			div#container ul.flexContent::after{
				content: "";
				display: block;
				width: 28%;
				margin: 0 auto 8px;
				padding: 1% 2% 0%;

				border: 1px solid transparent;
			}
			div#container ul.flexContent::before{
				order: 1;
				margin-right: 0;
			} */
		div#container ul.flexContent li{
			width: 30.33%;
			margin: 0 1.5% 48px;
		}
		div#container ul.flexContent div.nonlink{
			width: 30%;
			margin: 0 auto 0;
			height: 0;
		}

		div#container ul.flexContent li a{
			/* width: 46%; */
			border: 1px solid #F0F0F0;
			padding: 3% 2.7% 2%;
			background: #FFF;
			box-shadow: 0px 0px 8px #C2C2C2;
			overflow: hidden;
			transition: 0.4s;
			min-height: 368px;
			display: block;

			position: relative;
		}
			div#container ul.flexContent li a:hover{
				-webkit-transform: translate(0,-4px);
				transform: translate(0,-4px);
				transition: 0.4s;
			}

		div#container ul.flexContent li:nth-child(3n) a{
			margin-right: 0;
		}
		div#container ul.flexContent li a img{
			/* margin: -25px 0px 0px 0px; */
			/* max-width: 50%; */
		}
			div#container ul.flexContent li:hover a{
				box-shadow: 0px 0px 4px #C2C2C2;
				transition: 0.4s;
			}

		.flexContent::after{
			content: "";
			display: block;
			width: 66.6%;
			width: 33.3%;
		}

			div.photo{
				position: relative;
			}
			div#container ul.flexContent li div.photo2:before{
				/* content: "";
				position: absolute;
				background: url(../img/photo-c01.png) no-repeat top left;
				top: -8px;
				left: -8px;
				z-index: 100;
				width: 38px;
				height: 38px;
				background-size: 38px; */
			}

			div#container ul.flexContent li div.photo2:after{
				/* content: "";
				position: absolute;
				background: url(../img/photo-c02.png) no-repeat bottom right;
				bottom: -8px;
				right: -8px;
				width: 38px;
				height: 38px;
				background-size: 38px; */
			}



		p.p-date{
			padding: 0px 6px;
			font-size: 1.8rem;
			letter-spacing: 0.1rem;

			position: absolute;
			right: 6px;
			bottom: 4px;
		}
			p.p-date span{
				font-size: 1.2rem;
			}
		p.p-title{
			font-size: 2.2rem;
			line-height: 1.46;
			font-weight: bold;
			padding: 4px 2px 4px 4px;
			text-align: left;
		}
			p.p-title span.subttl{
				font-size: 1.88rem;
				/* font-weight: normal; */
			}
			p.p-title span.t-sml{
				font-size: 1.4rem;
				font-weight: normal;
			}
		p.p-title-sub{
			font-size: 1.88rem;
			line-height: 1.64;
		}







	/* Single ========== */
	div#title-cont-s img{
		width: 320px;
		margin: 32px auto;
	}

		div#sg-contents{
			/* width: 1280px; */
			text-align: left;
			overflow: hidden;
			margin: 32px auto 64px;
			background: transparent;
			padding: 8px 0;
			max-width: none;

			background-repeat: no-repeat;
			background-size: contain;
		}

			div#sg-contents2{
				/* background: rgba(255,255,255,0.55); */
				background: #FFF;
				padding: 2.4% 0 2.6%;
				max-width: 960px;
				margin: 0 auto;
				width: 960px;
				border-radius: 12px;
				box-shadow: 0px 0px 12px #C2C2C2;
			}

		section.sg-post{
			width: 860px;
			margin: 0px auto 0px;
			padding: 0px 0 0;
			/* background: #FFF; */
		}


		/* 記事 */
		div#sg-news-main{
			margin: 0px 0 64px;
		}
			/* タイトル */
			h1#sg-news-title,
			h2#sg-news-connect,
			h2#sg-news-movie,
			h2#sg-news-short{
				background-image: url(../img/cap-bg.png);
				background-size: auto 60px;
				font-size: 2.8rem;
				line-height: 2;
				padding: 12px 20px 4px;
				height: 58px;
			}
			h1#sg-news-title span{
				font-size: 2.4rem;
			}
			h2#sg-news-connect::before,
			h2#sg-news-movie::before,
			h2#sg-news-short::before{
				text-shadow: 1px 1px 2px #eed795;
				letter-spacing: -0.04em;
				font-size: 3.72em;
				transform: translate(5%, -30%);
				-webkit-transform: translate(5%, -30%);
				-ms-transform: translate(5%, -30%);
			}
			h2#sg-news-connect::after{
				transform: translate(20px, 0%);
				-webkit-transform: translate(20px, 0%);
				-ms-transform: translate(20px, 0%);
			}
			h2#sg-news-movie::after{
				transform: translate(20px, 0%);
				-webkit-transform: translate(20px, 0%);
				-ms-transform: translate(20px, 0%);
			}
			h2#sg-news-short::after{
				transform: translate(20px, 0%);
				-webkit-transform: translate(20px, 0%);
				-ms-transform: translate(20px, 0%);
			}


			p.i-update{
				font-size: 2rem;
				margin: 24px 0 8px;
			}
			p.c-date{
				/* text-align: right; */
			}

			div#sg-photo{
				margin: 0px 0 0;
				/* min-height: 470px; */
			}
				div#sg-photo p{}
				div#sg-photo p img{}

			/* 本文 PC */
			div.sg-main-content{
				margin: 0px 0 0px;
				padding: 24px 16px 40px;

				font-size: 2.0rem;
				line-height: 1.88;
			}
				div.sg-main-content img{
				}
				div.sg-main-content p{
					font-size: 2.0rem;
					line-height: 1.8;
					padding: 0px 4px 20px;
				}

				/* add more */
				div.sg-main-content h1,
				div.sg-main-content h2,
				div.sg-main-content h3,
				div.sg-main-content h4,
				div.sg-main-content h5,
				div.sg-main-content h6{
					font-weight: bold;
				}
				div.sg-main-content h1{
					font-size: 2.6rem;
					line-height: 1.64;
					padding: 8px 8px 8px;
					margin: 0 0 20px 0;
				}
				div.sg-main-content h2{
					font-size: 2.4rem;
					line-height: 1.58;
					padding: 8px 8px 8px;
					margin: 0 0 20px 0;
				}
				div.sg-main-content h3{
					font-size: 2.2rem;
					line-height: 1.52;
					padding: 8px 8px 8px;
					margin: 0 0 20px 0;
				}
				div.sg-main-content h4{
					font-size: 2.0rem;
					line-height: 1.8;
					padding: 8px 8px 8px;
					margin: 0 0 20px 0;
				}
				div.sg-main-content h5{
					font-size: 1.8rem;
					line-height: 1.6;
					padding: 8px 8px 8px;
					margin: 0 0 20px 0;
				}
				div.sg-main-content h6{
					font-size: 1.8rem;
					line-height: 1.68;
					font-weight: normal;
				}

				div.sg-main-content strong{
					font-weight: bold;
				}
				div.sg-main-content a:hover,
				div.sg-main-content a:active,
				div.sg-main-content a:focus{ text-decoration: underline; }

				div.sg-main-content a[target="_blank"]:after{
					padding: 0px 6px 1px 4px;
				}

				div.sg-main-content ul{
					margin: 0px 4px 16px;
				}
				div.sg-main-content ol{
					margin: 0px 4px 16px;
				}
				 	div.sg-main-content ul li,
					div.sg-main-content ol li{
						font-size: 2.0rem;
						line-height: 1.88;
						margin-bottom: 16px;
					}





	div#btn-reporter{
		margin: 16px 0px 16px;
	}
			div#btn-reporter a{
				font-size: 1.6rem;
				padding: 0.6rem 1.0rem;
				width: 200px;
			}
			div#btn-reporter a:hover{}
			div#btn-reporter a:before{
				padding: 0 8px 2px 0;
			}

	/* popup PC */
	div.comment-blk{
		display: flex;
		flex-wrap: wrap;
	}
	div.inline-wrap{
		width: 95%;
		max-width: 880px;
		max-height: 90vh;
		padding: 20px 20px 20px;
		overflow: auto;
	}
		div.inline-wrap p.c-title{
			font-size: 2.0rem;
			line-height: 1.6;
			margin: 0px 0 16px;
			width: 100%;
		}
		div.inline-wrap .comment-inner{
			display: flex;
		}
		div.inline-wrap img{}
		div.inline-wrap .c-image{
			width: 260px;
			display: block;
			padding: 0 20px 0 0;
		}
			div.inline-wrap .c-image img{
				width: 240px;
				max-width: 240px;
				height: auto;
			}
			div.inline-wrap p.c-name{
				font-size: 1.6rem;
				line-height: 1.46;
				width: 100%;
				margin: 0 auto;
				padding: 0 4px 2px;
			}
		div.inline-wrap p.c-comment{
			font-size: 1.8rem;
			line-height: 1.72;
			/* width: 98%; */
			/* max-width: 70%; */
			margin: 0px 0 16px 0;
			padding: 0 0;
		}
		p.popup-modal-dismiss{}
		.mfp-close{ color: #FFF !important; }
	/* /popup PC */



	/* 動画 PC */
	div.sg-movie-content{
		padding: 20px 20px 32px;

		font-size: 2rem;
		line-height: 1.8;
	}

	.swiper-container,
	.swiper-container2{
		/* text-align: center; */
	}
	.swiper-container .swiper-slide img,
	.swiper-container2 .swiper-slide img{
		/* max-width: 100%;
		width: 100%;
		height: auto; */
	}
	.swiper-container .swiper-slide,
	.swiper-container2 .swiper-slide{
		/* position: relative;
		width: 100%; */
	}
	.swiper-container .swiper-slide:before{
		/* content:"";
		display: block;
		padding-top: 56.25%; */
	}
	.swiper-container2 .swiper-slide:before{
		content:"";
		display: block;
		padding-top: 177.78%;
		padding-top: 88.89%;
	}
	.swiper-container .swiper-slide iframe,
	.swiper-container2 .swiper-slide iframe{
		/* position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%; */
	}
	#thumbs,
	#thumbs2{
		height: 20%;
		padding: 12px 0;
	}
	#thumbs .swiper-slide,
	#thumbs2 .swiper-slide{
		width: 16.5%;
		/* height: 100%; */
	}
	#thumbs .swiper-slide:before,
	#thumbs2 .swiper-slide:before{
		/* content: none; */
	}
	#thumbs .swiper-slide-active,
	#thumbs2 .swiper-slide-active{
		/* opacity: 1; */
	}



		/* form btn */
		.form-btn{
			/* margin: 0% auto 10%; */
			margin: 0% auto 3.2%;
		}
			.form-btn a{
				font-size: 1.8rem;
				padding: 1.6rem 4rem 1.6rem 2rem;
				width: 28%;
				display: inline-block;
				/* font-weight: bold; */
				min-width: auto;
			}
				.form-btn a.pos-center{
					margin: 0 auto;
					width: 40%;
				}
				.form-btn a strong{
					font-size: 2rem;
				}
				.form-btn a span{
					font-size: 1.68rem;
				}
			.form-btn a:hover{
			}
			.form-btn a i.fa{
				font-size: 2rem;
				/* margin-right: 0.8rem; */
			}
			.form-btn a:before{
				font-size: 1.6rem;
				line-height: 1.1;
				right: 2rem;
			}


		/* opinion */
		.opinion{
			width: 90%;
			max-width: 1222px;
			margin: 0% auto 10%;
			padding: 1.6% 0 1.3%;
			color: #646464;
			border: 1px solid #F0F0F0;
			background: rgba(255, 253, 238, 0.75);
			box-shadow: 0px 0px 2px #C2C2C2;
			border-radius: 4px;
		}
		.opinion-w2{
			width: 95%;
			margin: 5% auto 8%;
		}
			.opinion p{
				font-size: 1.8rem;
				line-height: 1.88;
			}
				.opinion p i.fa{
					margin-right: 0.54rem;
					font-size: 2.2rem;
				}
			.opinion ul{
				width: 92%;
				margin: 14px auto 0px;
			}
			.opinion ul li{
				font-size: 1.64rem;
				margin-bottom: 16px;
			}



	footer{
		padding: 24px 0;
		background: rgba(255, 255, 255, 0.8);
		/* box-shadow: 0px 0px 4px 0px #C2C2C2; */
	}
	footer p{}
	footer p a,
	footer p a:visited,
	footer p a:hover,
	footer p a:active,
	footer p a:focus{ color: #888; }

		/* SNS Single */
		div.share-cont{
			width: 100%;
			text-align: center;
			margin: 0px;
			overflow: hidden;
		}
			/* SNS Common */
			ul#sg-sns-share{
				max-width: 320px;
				margin: 4px auto 4px;
				padding: 4px 8px;
				/* background: #FFF;
				border-radius: 32px; */
				text-align: center;
				overflow: hidden;

			}
				ul#sg-sns-share li{
					margin: 0 auto 0;
					padding: 0;
					max-width: 52px;
				}
				ul#sg-sns-share li img{
					height: auto;
					width: 100%;
				}



	/* Topへ戻る */
	div#back-home{
		margin: 40px 0 40px;
		text-align: center;
		clear: both;
	}
		div#back-home a{
			font-size: 1.8rem;
			padding: 1.4rem 3.6rem;
			/* padding: 10px 20px; */
			transition: all 0.4s;
			width: 22%;
		}
		div#back-home a:hover{
		}
		div#back-home a:before{/* Home */
			font-size: 1.8rem;
			padding: 0 5px 2px 0;
		}


	div.links2{
		width: 1080px;
		max-width: 1080px;
		margin: 48px auto 36px;
		overflow: hidden;
	}
		div.links2 ul{
			width: 70%;
			margin: 0 auto;
		}
		div.links2 ul li{
			width: 28%;
			margin: 4px 2.5%;
			border-radius: 12px;
			line-height: 72px;
		}
		div.links2 ul li img{
			width: 58%;
		}

	div.ctv-logo{}






}





.clear{ clear: both; }
.clearfix:after{
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
	content: ".";
	line-height: 0;
}
.clearfix{ display: inline-table; zoom: 1; }
/* Hides from IE-mac \*/
* html .clearfix{ height: 1%; }
.clearfix{ display: block; }
/* End hide from IE-mac */



/* locipo */
.locipo-video{
	width: 100%;
	height: 0;
	padding: 56.25% 0 0;
	position: relative;
}
.locipo-video-embed{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
