@media (max-width: 980px) {

#main_visual_area{
	padding: 0;
	position: relative;
}

.sub-wrap{
	position: static;
}

.sp-logo{
    position: absolute;
    bottom: 120px;
    left: 15px;
    max-width: 220px;
    z-index: 5;
}
.sp-logo img{
	width: 100%;

}
.sub-wrap{
	width: 100%;
	font-size: 24px;
}

.sub-wrap .strong{
	font-size: 28px;
}

.bg_blue,
.bg_purple{
	margin: 0;
  display: block;
  width: 100%;
}

.bg_purple{
	text-align: right;
}

/* 特徴エリア------------------------------------- */
#feature_area{
	padding: 24px 0;
	background-size: cover;
}

#feature_area .left{
	overflow: hidden;
	width: 100%;
	height: 300px;
}

#feature_area .left article{
	position: absolute;
	float: left;
	width: 140px;
	height: 140px;
}

#feature_area .left #restart{
	top: 0;
	right: 0;
	left: 0;
	margin: 0 auto;
}

#feature_area .left #skill{
	top: 140px;
	left: 0;
}

#feature_area .left #entrance{
	top: 140px;
	right: 0;
}

#feature_area .left article>div{
	position: relative;
	top: 18px;
}

#feature_area .left article h2{
	position: static;
	font-size: 32px;
}

#feature_area .left article#entrance h2{
	margin: 0 12px 4px 0;
	font-size: 28px;
}

#feature_area .left article h2>span{
	margin-left: 20px;
}

#feature_area .left article p{
	margin-top: 8px;
	font-size: 14px;
}

#feature_area .right{
	float: none;
	width: 100%;
}

#feature_area .right h2{
	font-size: 20px;
}

#feature_area .right h2>span{
	padding-left: 0px;
}

#feature_area .left .dot_line_01,
#feature_area .left .dot_line_02{
	display: none;
}


/* リンクエリア----------------------------------- */
#link_area article{
	float: none;
	width: 100%;
	height: 240px;
}

#link_area article h2{
	top: 70px;
}

#link_area article .hover{
	display: none;
}



/* hover解除 */
#link_area article:hover>a h2{
	position: absolute;
	margin: 0 auto;
	width: 312px;
	height: 105px;
	text-align: center;
	font-size: 16px;
}

#link_area article:hover>a h2 .eng{
	margin-bottom: 0px;

}


#link_area article#restart_box:hover>a,
#link_area article#skill_box:hover>a,
#link_area article#entrance_box:hover>a{
	background-color: transparent;
}

#link_area #restart_box:hover>a h2{
	background-color: rgba(64,131,222,1);
}

#link_area #skill_box:hover>a h2{
	background-color: rgba(89,43,181,1);
}

#link_area #entrance_box:hover>a h2{
	background-color: rgba(91,175,117,1);
}

#link_area article:hover a>.hover{
	left: 0;
	right: 0;
	opacity: 1;
	color: #fff;
}

#link_area article:hover a>.hover p{
	text-align: center;
}



/* 世界エリア----------------------------------- */
#world_area{
	padding: 50px 0 30px 0;
}

#world_area>div>h2{
	display: table;
	position: static;
	font-size: 60px;
}
#world_area>div>p{
	position: static;
	margin: 30px 0 0 0;
}

#world_area .star{
	display: none;
}

#world_area .map span.img-box{
	display: none;
}

#world_area article{
	position: static;
}

#world_area article .wrap{
	width: 100%;
}

#world_area article .wrap .text_box h2>span{
	bottom: -30px;
	right: 0px;
}

#world_area article .flag{
	position: relative;
	top: 20px;
}



/* レポートエリア------------------------------ */
#report_area>div article a>.text-box{
	position: relative;
	text-align: center;
	padding: 0 10px 15px;
}

#report_area>div article a>.text-box .name{
	z-index: 5;
	top: -70px;
}

.report-area-main-item{
	margin-bottom: 15px;

}



/* ニュースエリア------------------------------ */
#news_area{
	background-size: cover;
}

#news_area .wrap{
	width: 100%;
}

#news_area .wrap p a.date{
	width: 35%;
}

#news_area .wrap p a.tag{
	width: 65%;
}

#news_area .wrap p a.tag span{
	margin: 0 10px 0 0;
	padding: 2px 12px;
}

#news_area .wrap p a.text{
	margin-top: 12px;
	padding: 0;
	width: 100%;
}

.map article .img-box img{
	height: 100px;
	object-fit: cover;
}

	.map article .text_box{
		line-height: 1.3em;
	}

	#report_area .img-box {
		height: 110px;
		overflow: hidden;
	}

	#news_area .wrap p {
		display: flex;
		align-items: center;
	}
	#news_area .wrap p a.text {
		margin-top: 0px;

	}
	#news_area .wrap p {
		padding:6px 0;
	}
	#report_area>div {
		padding: 30px 0;
	}
	.foot-fixed-news{
		display: block;
		position: fixed;
		bottom: 10px;
		left: 10px;
		border-radius: 0px 20px 20px 20px;
		background-color: #f1cd4b;
		width: calc(100% - 20px);
		padding-bottom: 5px;
		box-shadow: 0px 0px 29px -14px #000000;
		z-index: 99;
	}
	.foot-fixed-news .close{
		position: absolute;
		right:-5px;
		top:-5px;
		z-index: 1;
	}
	.foot-fixed-news .n-tab{
		position: absolute;
		line-height: 1em;
		padding:5px 10px;
		font-size: 12px;
		font-weight: bold;
		left:0px;
		top: -21px;
		z-index: 1;
		color: #4d4eb1;
		border-radius: 15px 15px 0px 0px;
		background-color: #f1cd4b;
	}
	.foot-fixed-news .n-tab2{
		left: 55px;
		padding-left: 18px;
		z-index: 0;
		background-color: #f69803;
		color: #4b34b9;
	}
	.foot-fixed-news ul li{
		display: flex;
		padding: 5px;
		align-items: center;
	}
	.foot-fixed-news ul li .date{
		padding-right: 10px;
		font-weight: bold;
		font-size: 12px;
	}
	.foot-fixed-news ul li a{
		display: inline-block;
		color: #014969;
		text-decoration: underline;
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
	}
}
