@charset "utf-8";
/* header
-------------------------------------- */

header {
	width: 100%;
	position: relative;
	margin-bottom: 30px;
}

header .ttl_area {
	position: absolute;
	width: 100%;
	height: 0;
	padding-top: 11.614%;
	top: 0;
	left: 0;
	z-index: 3;
	background-image: url(../img/top/header_bg.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 100%;
}

header .ttl_area .logo_area {
	width: 36%;
	position: absolute;
	top: 10%;
	left: 0;
	right: 0;
	margin: auto;
}

header .ttl_area .twitter {
	width: 1.8%;
	position: absolute;
	top: 30%;
	right: 29%;
}

header .ttl_area .contact_ico {
	width: 1.8%;
	position: absolute;
	top: 30%;
	right: 26.5%;
}

header .ttl_area .twitter a {
	display: block;
	width: 100%;
	height: 0;
	padding-top: 100%;
	position: relative;
	background-color: #000;
	border-radius: 100%;
}

header .ttl_area .contact_ico a {
	display: block;
	width: 100%;
	height: 0;
	padding-top: 100%;
	position: relative;
	background-color: #f2f2f2;
	border-radius: 100%;
}

header .ttl_area .twitter a::before, header .ttl_area .contact_ico a::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

header .ttl_area .twitter a i {
	width: 100%;
	color: #fff;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.6rem;
}

header .ttl_area .contact_ico a i {
	width: 100%;
	color: #c1272d;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.6rem;
}

header .slider {
	position: relative;
	width: 100%;
	z-index: 1;
	padding: 4.166% 0;
}

header .slider_sp {
	display: none;
}

header .tweet_area {
	position: absolute;
	width: 62.5%;
	bottom: 20%;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 3;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}

header .tweet_area .hash {
	width: 200px;
	background-color: #1da1f2;
	color: #fff;
	font-size: 1.4rem;
	padding: 10px;
	box-sizing: border-box;
	text-align: center;
}

header .tweet_area .tw_text {
	width: calc(100% - 380px);
	background-color: #fff;
	font-size: 1.4rem;
	padding: 10px;
	box-sizing: border-box;
}

header .tweet_area .tw_text .swiper-slide {
	width: auto;
	white-space: nowrap;
	overflow: hidden;
	font-size: 1.4rem;
}

.tw_text a:nth-of-type(1) {
	display: inline-block;
	color: #1da1f2;
	margin-right: 10px;
	font-size: 1.2rem;
}

.tw_text a:nth-of-type(2) {
	font-size: 1.4rem;
}

.tw_text a i {
	font-size: 1.6rem;
	display: inline-block;
	margin-right: 5px;
}

header .tweet_area .hash_link {
	width: 180px;
	background-color: #000;
	padding: 10px 5px;
	box-sizing: border-box;
	text-align: center;
}

header .tweet_area .hash_link a::before {
	content: '▶︎';
	display: inline-block;
	color: #ebd24a;
}

header .tweet_area .hash_link a {
	color: #fff;
	font-size: 1.5rem;
	text-align: center;
}

header .tweet_area_sp {
	display: none;
}

header .g_navi {
	width: 100%;
	height: 0;
	padding-top: 7.239%;
	position: absolute;
	bottom: 0;
	left: 0;
	background-image: url(../img/top/gnavi_bg.png);
	background-repeat: no-repeat;
	background-size: 100%;
	z-index: 3;
}

header .g_navi nav {
	max-width: 1200px;
	width: 90%;
	position: absolute;
	bottom: 20%;
	left: 0;
	right: 0;
	margin: auto;
}

header .g_navi nav ul {
	width: 100%;
	display: flex;
	align-items: center;
}

header .g_navi nav ul li {
	width: calc(100% / 5);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

header .g_navi nav ul li {
	position: relative;
	overflow: hidden;
}

header .g_navi nav ul li img {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	width: 100%;
	min-height: 100%;
}

header .g_navi nav ul li a {
	width: 100%;
	height: 100%;
	padding: 10px 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: #f2f2f2;
	border-bottom: 2px solid #f2f2f2;
	font-weight: 600;
}

header .g_navi nav ul li a:hover {
	background-color: rgba(255, 255, 255, 1);
	background-image: repeating-linear-gradient(-50deg, transparent, transparent 5px, rgba(242, 242, 242, 1) 5px, rgba(242, 242, 242, 1) 10px);
	border-bottom: 2px solid #c1272d;
	opacity: 1;
	filter: alpha(opacity=100);
	-moz-opacity: 1;
}

header .g_navi nav ul li a span {
	color: #c1272d;
	font-size: 1.4rem;
}

.fukushima_img {
	width: 22.135%;
	display: block;
	position: absolute;
	top: 40%;
	right: 0;
	left: 0;
	margin: auto;
	text-align: center;
	z-index: 10;
}

.fukushima_img img {
	width: 100%;
}

@media all and (max-width: 767px) {
	header {
		width: 100%;
		position: relative;
		margin-bottom: 0;
	}

	header .ttl_area {
		padding-top: 55.73%;
		background-image: url(../img/top/sp/header_bg.png);
	}

	header .ttl_area .logo_area {
		display: none;
	}

	header .ttl_area .twitter {
		display: none;
	}

	header .ttl_area .twitter a i {
		font-size: 2rem;
	}

	header .ttl_area .contact_ico {
		display: none;
	}

	header .ttl_area .contact_ico a i {
		font-size: 2rem;
	}

	header .slider {
		display: none;
	}

	header .slider_sp {
		display: block;
		position: relative;
		z-index: 1;
		width: 100%;
		padding-top: 52%;
	}

	header .g_navi {
		display: none;
	}

	.fukushima_img {
		width: 45%;
		display: block;
		position: absolute;
		top: 70%;
		right: 0;
		left: 0;
		margin: auto;
		text-align: center;
		z-index: 10;
	}

	header .tweet_area {
		display: none;
	}

	header .tweet_area_sp {
		width: 90%;
		margin: 0 auto 0;
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-wrap: wrap;
	}

	header .tweet_area_sp .hash {
		width: 50%;
		background-color: #2157bd;
		color: #fff;
		font-size: 1.2rem;
		padding: 13px 10px 10px;
		box-sizing: border-box;
		text-align: center;
	}

	header .tweet_area_sp .hash_link {
		width: 50%;
		background-color: #1da1f2;
		padding: 10px 5px;
		box-sizing: border-box;
		text-align: center;
	}

	header .tweet_area_sp .hash_link a {
		font-size: 1.2rem;
		color: #fff;
	}

	header .tweet_area_sp .hash_link a::before {
		content: '▶︎';
		display: inline-block;
		color: #ebd24a;
	}

	header .tweet_area_sp .tw_text {
		width: 100%;
		background-color: #fff;
		font-size: 1.2rem;
		padding: 10px;
		box-sizing: border-box;
	}

	header .tweet_area_sp .tw_text .swiper-slide {
		width: auto;
		white-space: nowrap;
		overflow: hidden;
		font-size: 1.2rem;
		margin-bottom: 10px;
	}

	.tw_text a:nth-of-type(1) {
		display: block;
		color: #1da1f2;
		margin-right: 10px;
		font-size: 1.2rem;
	}

	.tw_text a:nth-of-type(12) {
		font-size: 1.2rem;
	}

	.tw_text a i {
		font-size: 1.8rem;
		display: inline-block;
		margin-right: 5px;
	}
}

/* breaking_area
-------------------------------------- */

.breaking_area {
	width: 100%;
	padding: 30px 0;
	background-color: rgba(255, 255, 255, 1);
	background-image: repeating-linear-gradient(-50deg, transparent, transparent 5px, rgba(242, 242, 242, 1) 5px, rgba(242, 242, 242, 1) 10px);
	margin-bottom: 80px;
}

.breaking_area .inner {
	background-color: #c1272d;
	padding: 30px 0;
	text-align: center;
}

.breaking_area .inner p {
	color: #c1272d;
	font-size: 2.4rem;
	text-align: center;
	width: 100%;
}

.breaking_area .inner .flex_area {
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	flex-wrap: wrap;
}

.breaking_area .inner .flex_area h2 {
	color: #fff;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	font-size: 2.2rem;
	margin-bottom: 5px;
}

.breaking_area .inner .flex_area h2 a {
	font-size: 1.7rem;
	position: relative;
	padding-left: 30px;
}

.breaking_area .inner .flex_area h2 a::before {
	content: '';
	display: block;
	width: 22px;
	height: 22px;
	background-color: #fff;
	border-radius: 100%;
	position: absolute;
	top: 3px;
	left: 0;
}

.breaking_area .inner .flex_area h2 a::after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7.5px 0 7.5px 13.0px;
	border-color: transparent transparent transparent #c1272d;
	position: absolute;
	top: 7px;
	left: 6px;
}

.breaking_area .inner .flex_area h2 small {
	font-size: 1.5rem;
}

.breaking_area .inner .flex_area .breaking_news {
	width: 60%;
	margin-right: 4%;
}

.breaking_area .inner .flex_area .breaking_news div {
	width: 100%;
	background-color: #fff;
	padding: 10px 20px;
	box-sizing: border-box;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	align-items: center;
}

.breaking_area .inner .flex_area .breaking_news div .b_title {
	width: 20%;
	margin-right: 20px;
	max-width: 120px;
	height: 130px;
	background-image: url(../img/top/b_ttl.png);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: contain;
	position: relative;
}

.breaking_area .inner .flex_area .breaking_news div .b_title>span {
	display: block;
	text-align: center;
	max-width: 90px;
	width: 90%;
	position: absolute;
	top: 6%;
	left: 8%;
	color: #c1272d;
	font-size: 6rem;
	font-weight: 600;
}

.breaking_area .inner .flex_area .breaking_news div ul {
	width: 38%;
	margin: 0 5px;
}

.breaking_area .inner .flex_area .breaking_news div ul:nth-of-type(2) {
	width: 38%;
	margin: 0 5px;
	align-self: flex-end;
}

.breaking_area .inner .flex_area .breaking_news div ul li {
	border-bottom: 1px solid #000;
	margin-bottom: 5px;
	font-size: 1.8rem;
}

.breaking_area .inner .flex_area .breaking_news div ul li span {
	font-size: 1.6rem;
	font-weight: 600;
	padding-right: 10px;
	color: #000;
}

.breaking_area .inner .flex_area .breaking_news div ul li time {
	font-size: 1.6rem;
	font-weight: 600;
	padding-left: 20px;
	color: #000;
}

.breaking_area .inner .flex_area .breaking_news div ul li.ttl {
	font-size: 1.4rem;
	text-align: center;
	margin-bottom: 5px;
}

.breaking_area .inner .flex_area .breaking_news div ul li.ttl span {
	color: #c1272d;
}

.breaking_area .inner .flex_area .live {
	width: 36%;
}

.breaking_area .inner .flex_area .breaking_news div ul li.top_rank {
	font-size: 2.8rem;
	color: #c1272d;
	font-weight: 600;
	line-height: 1.2;
}

.breaking_area .inner .flex_area .breaking_news div ul li.second_rank {
	font-size: 2.4rem;
	color: #c1272d;
	font-weight: 600;
	line-height: 1.2;
}

.breaking_area .inner .flex_area .live>div {
	width: 100%;
	height: 0;
	padding-top: 55%;
	position: relative;
}

.breaking_area .inner .flex_area .live iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
}

.breaking_area .inner .flex_area .live figure img {
	margin-bottom: 10px;
}

.breaking_area .inner .flex_area .live figure figcaption {
	background-color: #f2f2f2;
	padding: 5px 0;
}

.breaking_area .inner .flex_area .movie {
	width: 48%;
	padding-top: 25%;
	margin-top: 40px;
	margin-right: 4%;
	position: relative;
}

.breaking_area .inner .flex_area .movie.-r {
	margin-right: 0;
}

.breaking_area .inner .flex_area .movie iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
}

@media all and (max-width: 767px) {
	.breaking_area {
		width: 100%;
		padding: 0;
		margin-bottom: 30px;
	}

	.breaking_area .inner .flex_area {
		align-items: flex-start;
		flex-direction: column;
	}

	.breaking_area .inner .flex_area .breaking_news {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.breaking_area .inner .flex_area .breaking_news div {
		padding: 20px 20px;
		margin-bottom: 20px;
	}

	.breaking_area .inner .flex_area .breaking_news div .b_title {
		width: 100%;
		margin-right: 0;
		max-width: 100%;
		height: auto;
		background-image: none;
		background-repeat: no-repeat;
		background-position: 50% 50%;
		background-size: contain;
		position: relative;
		background-color: rgb(221, 221, 221);
		margin-bottom: 20px;
	}

	.breaking_area .inner .flex_area .breaking_news div .b_title>span {
		width: 100%;
		max-width: 100%;
		text-align: center;
		font-size: 4rem;
		position: static;
	}

	.breaking_area .inner .flex_area .breaking_news div .b_title>span>span {
		font-size: 2.4rem;
		letter-spacing: 2px;
	}

	.breaking_area .inner .flex_area .breaking_news div .b_title>span>span>span {
		color: rgb(83, 83, 83);
	}

	.breaking_area .inner .flex_area .breaking_news div ul {
		width: 100%;
		margin: 0;
	}

	.breaking_area .inner .flex_area .breaking_news div ul:nth-of-type(1) {
		width: 100%;
		margin: 0;
	}

	.breaking_area .inner .flex_area .breaking_news div ul:nth-of-type(2) {
		width: 100%;
		margin: 0;
	}

	.breaking_area .inner .flex_area .breaking_news div ul li.ttl {
		font-size: 1.4rem;
		text-align: center;
		margin-bottom: 5px;
	}

	.breaking_area .inner .flex_area .breaking_news div ul li.top_rank {
		font-size: 2.6rem;
		color: #c1272d;
		font-weight: 600;
		line-height: 1.2;
	}

	.breaking_area .inner .flex_area .breaking_news div ul li.second_rank {
		font-size: 1.8rem;
		color: #c1272d;
		font-weight: 600;
		line-height: 1.2;
	}

	.breaking_area .inner .flex_area .live {
		width: 100%;
	}

	#mein>h2.sp {
		text-align: center;
		font-size: 2rem;
		margin-bottom: 30px;
	}

	.breaking_area .inner .flex_area .movie {
		width: 100%;
		padding-top: 60%;
		margin-top: 40px;
		margin-right: 0;
	}

	.breaking_area .inner .flex_area .movie h2 {
		font-size: 1.7rem;
	}

}

@media all and (max-width: 325px) {
	.breaking_area .inner .flex_area .breaking_news div .b_title {
		width: 100%;
		margin-right: 0;
		max-width: 100%;
		height: auto;
		background-image: none;
		background-repeat: no-repeat;
		background-position: 50% 50%;
		background-size: contain;
		position: relative;
	}

	.breaking_area .inner .flex_area .breaking_news div .b_title>span {
		width: 100%;
		max-width: 100%;
		text-align: center;
		font-size: 4rem;
		position: static;
	}

	.breaking_area .inner .flex_area .breaking_news div ul li span {
		font-size: 1.4rem;
		font-weight: 600;
		padding-right: 5px;
		color: #000;
	}

	.breaking_area .inner .flex_area .breaking_news div ul li time {
		font-size: 1.4rem;
		font-weight: 600;
		padding-left: 10px;
		color: #000;
	}

	.breaking_area .inner .flex_area .breaking_news div ul li.top_rank {
		font-size: 2rem;
		color: #c1272d;
		font-weight: 600;
		line-height: 1.2;
	}

	.breaking_area .inner .flex_area .breaking_news div ul li.second_rank {
		font-size: 1.6rem;
		color: #c1272d;
		font-weight: 600;
		line-height: 1.2;
	}
}

/* bn_area
-------------------------------------- */

.bn_area {
	max-width: 1200px;
	width: 90%;
	margin: 0 auto 100px;
	display: flex;
	justify-content: space-between;
}

.bn_area>a {
	display: block;
	width: 49%;
	padding: .5em 0;
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
	border: 2px solid #c1272d;
	transform: skewX(-15deg);
	background: #fff;
	color: #000;
}

.bn_area>a>span {
	display: block;
	transform: skewX(15deg);
	text-align: center;
}

.bn_area>a>span small {
	color: #ebd24a;
}

.bn_area>a:hover {
	background-color: #c1272d;
	color: #fff;
	opacity: 1;
}

.bn_area>a br {
	display: none;
}

@media all and (max-width:1200px) {
	.bn_area>a {
		font-size: 1.6rem;
	}

	.bn_area>a br {
		display: none;
	}
}

@media all and (max-width:1024px) {
	.bn_area>a {
		width: 48%;
	}

	.bn_area>a br {
		display: block;
	}
}

@media all and (max-width:600px) {
	.bn_area {
		margin: 0 auto 40px;
		flex-direction: column;
	}

	.bn_area>a {
		width: 100%;
		margin-bottom: 15px;
		font-size: 1.2rem;
		letter-spacing: -1px;
		transform: skewX(0);
	}

	.bn_area>a>span {
		transform: skewX(0);
	}

	.bn_area>a br {
		display: none;
	}
}

/* news_area
-------------------------------------- */

.news_area {
	max-width: 900px;
	width: 90%;
	margin: 0 auto 80px;
}

.news_area .news {
	width: 100%;
	background-color: #f2f2f2;
	position: relative;
	padding: 20px 40px;
	box-sizing: border-box;
}

.news_area .news h2 {
	width: 265px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: absolute;
	top: -15px;
	left: 20px;
	font-size: 2.3rem;
	background-color: #c1272d;
	transform: skewX(-15deg);
	padding: 0 10px;
}

.news_area .news h2 span, .news_area .news h2 small {
	color: #fff;
	transform: skewX(15deg);
}

.news_area .news h2 small {
	font-size: 1.3rem;
}

.news_area .news>a {
	float: right;
	font-size: 1.2rem;
	padding-left: 18px;
	position: relative;
}

.news_area .news>a::before {
	content: '';
	display: block;
	position: absolute;
	width: 15px;
	height: 15px;
	background-color: #c1272d;
	border-radius: 100%;
	top: 3px;
	left: 0;
}

.news_area .news>a::after {
	content: '';
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 6.9px;
	border-color: transparent transparent transparent #fff;
	top: 7px;
	left: 5px;
}

.news_area .news dl {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	padding-top: 20px;
}

.news_area .news dl dt {
	width: 90px;
	font-size: 1.2rem;
}

.news_area .news dl dd {
	width: calc(100% - 90px);
	border-bottom: 1px solid #c1272d;
	padding-bottom: 5px;
	margin-bottom: 10px;
}

.news_area .news dl dd a {
	display: block;
	color: #c1272d;
	text-indent: 1em;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.news_area .time_line {
	width: 40%;
	box-sizing: border-box;
	border: 2px solid #1da1f2;
}

@media all and (max-width: 767px) {
	.news_area {
		width: 100%;
		margin: 0 auto 50px;
		overflow: hidden;
		position: relative;
	}

	.news_area .news {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
		padding: 0;
	}

	.news_area .news h2 {
		width: 55%;
		position: relative;
		top: 0;
		z-index: 2;
		margin-left: -30px;
		padding-left: 30px;
		box-sizing: border-box;
	}

	.news_area .news>a {
		float: none;
		font-size: 1.2rem;
		padding-left: 18px;
		position: absolute;
		top: 10px;
		right: 20px;
	}

	.news_area .news dl {
		width: 90%;
		margin: 0 auto 20px;
		flex-direction: column;
		justify-content: flex-start;
	}

	.news_area .news dl dt {
		width: 100%;
	}

	.news_area .news dl dd {
		width: 100%;
	}

	.news_area .news dl dd a {
		text-indent: 0;
	}

	.news_area .time_line {
		width: 90%;
		margin: auto;
	}
}

/* youtube_area
-------------------------------------- */

.youtube_area {
	width: 100%;
	margin-bottom: 120px;
}

.youtube_area>.inner {
	max-width: 1250px;
	width: 90%;
	margin: 0 auto;
}

.youtube_area>.inner h2 {
	width: 95%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 2.3rem;
	background-color: #c1272d;
	transform: skewX(-15deg);
	padding: 0 10px;
	margin: 0 auto 50px;
}

.youtube_area>.inner h2 span, .youtube_area>.inner h2 small {
	color: #fff;
	transform: skewX(15deg);
}

.youtube_area>.inner h2 small {
	font-size: 1.3rem;
}

.mov_slide {
	max-width: 900px;
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
}

.slider-thumbnails {
	float: right;
	width: calc(20% - 20px);
	margin-right: 20px;
	max-height: 310px;
	margin-top: 6% !important;
}

.slider-thumbnails .swiper-slide {
	width: 100%;
	/* height: 130px; */
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	cursor: pointer;
	position: relative;
}

.slider-thumbnails .swiper-slide img {
	border: 1px solid #ccc;
	width: 100%;
	box-sizing: border-box;
}

.next, .prev {
	width: calc(20% - 20px);
	text-align: center;
	position: absolute;
	right: 0;
	cursor: pointer;
}

.next::after, .prev::after {
	content: '';
	display: block;
	text-align: center;
	width: 0;
	height: 0;
	border-style: solid;
	margin: auto;
}

.next {
	top: 0;
}

.next::after {
	border-width: 0 25px 25px 25px;
	border-color: transparent transparent #6b6b6b transparent;
}

.prev {
	bottom: 0;
}

.prev::after {
	border-width: 25px 25px 0 25px;
	border-color: #6b6b6b transparent transparent transparent;
}

.slider-gallery {
	float: left;
	width: 80%;
}

.slider-gallery .swiper-slide>* {
	width: 100%;
}

.slider-gallery .swiper-slide>.frameBox {
	width: 100%;
	height: 0;
	padding-top: 56.25%;
	position: relative;
}

.slider-gallery .swiper-slide>.frameBox iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

.slider-gallery .swiper-slide>.frameBox .pre {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	background-color: rgba(124, 124, 124, 0.76);
}

.slider-gallery .swiper-slide>.frameBox .pre ._txt {
	font-size: 5.5rem;
	height: 50px;
	line-height: 50px;
	text-align: center;
	color: #fff;
	font-weight: bold;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

.slider-gallery .swiper-slide {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}

@media all and (max-width:850px) {
	.youtube_area {
		margin-bottom: 80px;
	}

	.youtube_area>.inner h2 {
		margin: 0 auto 30px;
	}

	.slider-thumbnails {
		float: none;
		width: 100%;
		margin-right: 0;
		max-height: auto;
		margin-top: 10px !important;
	}

	.next, .prev {
		display: none;
	}

	.slider-gallery {
		float: none;
		width: 100%;
	}

	.slider-gallery .swiper-slide>.frameBox .pre ._txt {
		font-size: 3.5rem;
		height: 35px;
		line-height: 35px;
	}
}

/* intoro_area
-------------------------------------- */

.intoro_area {
	width: 100%;
	padding: 80px 0;
	background-color: rgba(255, 255, 255, 1);
	background-image: repeating-linear-gradient(-50deg, transparent, transparent 5px, rgba(242, 242, 242, 1) 5px, rgba(242, 242, 242, 1) 10px);
	margin-bottom: 50px;
	position: relative;
}

.intoro_area h2 {
	width: 100%;
	text-align: center;
	font-size: 3.1rem;
	position: absolute;
	top: -25px;
}

.intoro_area .inner {
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.intoro_area .inner a {
	width: 48%;
	height: 0;
	padding-top: 16.271%;
	font-size: 1.6rem;
	position: relative;
	color: #fff;
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
	box-sizing: border-box;
}

.intoro_area .inner a:hover {
	-webkit-filter: grayscale(0%);
	-moz-filter: grayscale(0%);
	-ms-filter: grayscale(0%);
	-o-filter: grayscale(0%);
	filter: grayscale(0%);
	opacity: 1;
	filter: alpha(opacity=100);
	-moz-opacity: 1;
}

.intoro_area .inner a:nth-of-type(1) {
	background-image: url(../img/top/btn_team_bg.jpg);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 100%;
}

.intoro_area .inner a:nth-of-type(2) {
	background-image: url(../img/top/btn_course_bg.jpg);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 100%;
}

.intoro_area .inner a:hover {
	border-left: 5px solid #ff90a6;
	border-right: 5px solid #00b0d0;
	box-sizing: border-box;
}

.intoro_area .inner a:hover::before, .intoro_area .inner a:hover::after {
	content: "";
	display: block;
	height: 5px;
	width: 100%;
	position: absolute;
	background: rgb(255, 144, 166);
	background: -moz-linear-gradient(left, rgba(255, 144, 166, 1) 0%, rgba(255, 219, 53, 1) 29%, rgba(255, 185, 53, 1) 53%, rgba(149, 205, 53, 1) 76%, rgba(0, 176, 208, 1) 100%);
	background: -webkit-linear-gradient(left, rgba(255, 144, 166, 1) 0%, rgba(255, 219, 53, 1) 29%, rgba(255, 185, 53, 1) 53%, rgba(149, 205, 53, 1) 76%, rgba(0, 176, 208, 1) 100%);
	background: linear-gradient(to right, rgba(255, 144, 166, 1) 0%, rgba(255, 219, 53, 1) 29%, rgba(255, 185, 53, 1) 53%, rgba(149, 205, 53, 1) 76%, rgba(0, 176, 208, 1) 100%);
}

.intoro_area .inner a:hover::before {
	top: 0;
	left: 0;
}

.intoro_area .inner a:hover::after {
	bottom: 0;
	left: 0;
}

.intoro_area .inner a p {
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

.intoro_area .inner a span {
	font-size: 11.3rem;
	line-height: 1.2;
}

.intoro_area .inner a .coming {
	font-size: 5.2rem;

}

@media all and (max-width: 767px) {
	.intoro_area {
		padding: 50px 0;
		margin-bottom: 0;
	}

	.intoro_area .inner {
		flex-direction: column;
	}

	.intoro_area .inner a {
		width: 100%;
		height: 0;
		padding-top: 32.544%;
		-webkit-filter: grayscale(0);
		-moz-filter: grayscale(0);
		-ms-filter: grayscale(0);
		-o-filter: grayscale(0);
		filter: grayscale(0);
		box-sizing: border-box;
	}

	.intoro_area .inner a:nth-of-type(1) {
		margin-bottom: 30px;
	}

	.intoro_area .inner a {
		border-left: 5px solid #ff90a6;
		border-right: 5px solid #00b0d0;
		box-sizing: border-box;
	}

	.intoro_area .inner a::before, .intoro_area .inner a::after {
		content: "";
		display: block;
		height: 5px;
		width: 100%;
		position: absolute;
		background: rgb(255, 144, 166);
		background: -moz-linear-gradient(left, rgba(255, 144, 166, 1) 0%, rgba(255, 219, 53, 1) 29%, rgba(255, 185, 53, 1) 53%, rgba(149, 205, 53, 1) 76%, rgba(0, 176, 208, 1) 100%);
		background: -webkit-linear-gradient(left, rgba(255, 144, 166, 1) 0%, rgba(255, 219, 53, 1) 29%, rgba(255, 185, 53, 1) 53%, rgba(149, 205, 53, 1) 76%, rgba(0, 176, 208, 1) 100%);
		background: linear-gradient(to right, rgba(255, 144, 166, 1) 0%, rgba(255, 219, 53, 1) 29%, rgba(255, 185, 53, 1) 53%, rgba(149, 205, 53, 1) 76%, rgba(0, 176, 208, 1) 100%);
	}

	.intoro_area .inner a::before {
		top: 0;
		left: 0;
	}

	.intoro_area .inner a::after {
		bottom: 0;
		left: 0;
	}

	.intoro_area .inner a span {
		font-size: 5rem;
		line-height: 1.2;
	}

	.intoro_area .inner a .coming {
		font-size: 3rem;

	}
}

/* caution 注意喚起
-------------------------------------- */

.caution {
	display: block;
	margin: 0 auto;
	padding: .5em 0;
	max-width: 830px;
	width: 90%;
	text-align: center;
	background-color: #f2f2f2;
	border: 3px solid #c1272d;
	color: #c1272d;
	font-size: 2.2rem;
	font-weight: bold;
}

.caution>span {
	color: #ebd24a;
}

.caution:hover {
	background-color: #c1272d;
	color: #f2f2f2;
}

.caution:hover>span {
	color: #fff;
}

@media all and (max-width:900px) {
	.caution {
		margin-top: 30px;
		border: 3px solid #c1272d;
		font-size: 1.8rem;
	}
}

@media all and (max-width:600px) {
	.caution {
		border: 2px solid #c1272d;
		font-size: 1.2rem;
		letter-spacing: -1px;
	}
}

/* hope_area
-------------------------------------- */

.hope_area {
	display: block;
	max-width: 900px;
	width: 90%;
	margin: 0 auto 80px;
}

.hope_area>.inner {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.hope_area>.inner>figure {
	width: 55%;
}

.hope_area>.inner>figure>img {
	width: 100%;
}

.hope_area>.inner>div {
	width: 50%;
	padding: 4em 2em;
	position: relative;
	background-color: #f2f2f2;
	margin-left: -20px;
	box-sizing: border-box;
}

.hope_area>.inner>div>p {
	text-align: center;
	font-size: 2.3rem;
	font-weight: bold;
	color: #686868;
}

.hope_area>.inner>div>a {
	position: absolute;
	bottom: 10px;
	right: 10px;
	color: #c1272d;
}

@media all and (max-width:900px) {
	.hope_area>.inner>div {
		padding: 2em;
	}

	.hope_area>.inner>div>p {
		font-size: 1.8rem;
	}
}

@media all and (max-width:600px) {
	.hope_area>.inner {
		display: flex;
		flex-direction: column;
	}

	.hope_area>.inner>figure {
		width: 100%;
	}

	.hope_area>.inner>div {
		width: 95%;
		padding: 4em 2em;
		margin-left: 0;
		margin-top: -20px;
	}

	.hope_area>.inner>div>p {
		font-size: 1.6rem;
	}
}

/* gpsx_area */
.sect_ttl {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 2.3rem;
	background-color: #c1272d;
	transform: skewX(-15deg);
	padding: 0 10px;
	margin: 0 auto 50px;
}

.sect_ttl span, .sect_ttl small {
	color: #fff;
	transform: skewX(15deg);
}

.sect_ttl small {
	font-size: 1.3rem;
}

.gpsx_area {
	display: block;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto 90px;
}

.gpsx_area .inner {
	/* max-width: 900px; */
	width: 100%;
	display: block;
	margin: 0 auto;
}

.gpsx_area .inner>div {
	width: 100%;
	height: 320px;
}

.gpsx_area .inner .gps_flex {
	max-width: 900px;
	width: 100%;
	height: auto;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
	margin: 20px auto;
	padding: 30px;
	border: 4px solid #c1272d;
	box-sizing: border-box;
}

.gpsx_area .inner>div._today {
	width: 100%;
	height: 600px;
}

.gpsx_area .inner>div iframe {
	width: 100%;
	height: 100%;
}

.gpsx_area .inner>div._coming {
	display: flex;
	justify-content: center;
	align-items: center;
	border: 3px solid #c1272d;
	background-color: #f2f2f2;
	color: #c1272d;
	font-size: 3rem;
}

.gps_flex figure {
	border-radius: 10px;
	overflow: hidden;
}

.gps_flex .txt_link {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.gps_flex .txt {
	font-size: 18px;
	font-weight: bold;
}

.gps_flex .gps_btn {
	width: 90%;
	display: block;
	padding: 5px 10px;
	box-sizing: border-box;
	text-align: center;
	background-color: #c1272d;
	position: relative;
	margin: 10px auto 0;
	transform: skew(-15deg);
}

.gps_flex .gps_btn span {
	display: inline-block;
	transform: skew(15deg);
	font-size: 2rem;
	font-weight: bold;
	color: #fff;
}

.gps_flex .gps_btn::before {
	content: '';
	display: block;
	position: absolute;
	width: 20px;
	height: 20px;
	background-color: #fff;
	border-radius: 100%;
	top: 0;
	bottom: 0;
	left: auto;
	right: 2em;
	margin: auto;
	transform: skew(15deg);
}

.gps_flex .gps_btn::after {
	content: '';
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 8.9px;
	border-color: transparent transparent transparent #c1272d;
	top: 0;
	bottom: 0;
	left: auto;
	right: 2.3em;
	margin: auto;
	transform: skew(15deg);
}

.gps_flex .coming {
	display: flex;
	justify-content: center;
	align-items: center;
	border: 3px solid #c1272d;
	background-color: #f2f2f2;
	color: #c1272d;
	font-size: 1.8rem;
	padding: 5px 10px;
	box-sizing: border-box;
	margin: 10px auto 0;
	width: 100%;
}


@media all and (max-width:600px) {
	.gpsx_area {
		margin: 0 auto 40px;
	}

	.gpsx_area .inner .gps_flex {
		grid-template-columns: repeat(1, 1fr);
		gap: 30px;
		padding: 20px;
	}

	.sect_ttl {
		width: 95%;
		margin: 0 auto 35px;
	}

	.gpsx_area .inner>div._coming {
		font-size: 2.3rem;
	}

	.gpsx_area .inner>div._today {
		height: 500px;
	}
}
