@charset "utf-8";
/*----------index.html-------------*/



.fontpage {

}	
#topSlider {
    height: 100vh;
    position: relative;
   /* margin-top: 105px;*/
}
.bgImg01 {
	background: url('../images/top/mainImg_bg.jpg') no-repeat center;
	height: 100vh;
	background-size: cover;
	position: relative;
	width: 100%;
}

.bgImg02 {
	background: url('../images/top/mainImg02_bg.jpg') no-repeat center;
	height: 100vh;
	background-size: cover;
	position: relative;
	width: 100%;
}

.bgImg03 {
	background: url('../images/top/mainImg03_bg.jpg') no-repeat center;
	height: 100vh;
	background-size: cover;
	position: relative;
	width: 100%;
}

.bgImg04 {
	background: url('../images/top/mainImg04_bg.jpg') no-repeat center;
	height: 100vh;
	background-size: cover;
	position: relative;
	width: 100%;
}
.top-slider .slick-prev {
	left: 0;
	z-index: 99;
	width: 35px;
	height: 35px;
}

.top-slider .slick-next {
	right: 0;
	z-index: 99;
	width: 35px;
	height: 35px;
}

.top-slider .slick-prev:before, .top-slider .slick-next:before {
	font-size: 35px;
	color: #000;
}

.mainimg_txt {
	position: absolute;
    width: 100%;
    text-align: center;
    top: 50%;
    transform: translate(0, -50%);
}

.mainimg_txt img {
	max-width: 960px;
}
.mouse {
	position: absolute;
	bottom: 41px;
	left: 50%;
	z-index: 6;
	cursor: pointer;
	padding-top: 20px;
	transform: translate(-50%,0);

}

.mouse span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 24px;
  height: 24px;
  margin-left: -12px;
  border-left: 2px solid #000;
  border-bottom: 2px solid #000;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-animation: sdb 2s infinite;
  animation: sdb 2s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
  }
  20% {
    -webkit-transform: rotate(-45deg) translate(-10px, 10px);
  }
  40% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
  }
}
@keyframes sdb {
  0% {
    transform: rotate(-45deg) translate(0, 0);
  }
  20% {
    transform: rotate(-45deg) translate(-10px, 10px);
  }
  40% {
    transform: rotate(-45deg) translate(0, 0);
  }
}

@media screen and (max-width: 960px) {
	.mainimg_txt img {
	    max-width: 90%;
	}
}
@media screen and (max-width: 767px) {
	/*.mouse {
		display: none;
	}*/

	.bg01 {
		/*height: 87vw;*/
		height: 100vh;
	}

	.top-slider .slick-prev {
		left: 0;
		z-index: 99;
		width: 20px;
		height: 20px;
	}

	.top-slider .slick-next {
		right: 0;
		z-index: 99;
		width: 20px;
		height: 20px;
	}
	.top-slider .slick-prev:before, .top-slider .slick-next:before {
		font-size: 20px;
		color: #000;
	}
}
@-webkit-keyframes wheel_move {
	0% {
		-webkit-transform: translateY(0px);
		transform: translateY(0px)
	}
	50% {
		-webkit-transform: translateY(5px);
		transform: translateY(5px)
	}
	100% {
		-webkit-transform: translateY(0px);
		transform: translateY(0px)
	}
}
@keyframes wheel_move {
	0% {
		-webkit-transform: translateY(0px);
		transform: translateY(0px)
	}
	50% {
		-webkit-transform: translateY(5px);
		transform: translateY(5px)
	}
	100% {
		-webkit-transform: translateY(0px);
		transform: translateY(0px)
	}
}

.top_introduce {
	padding: 40px 0;
}

.top_introduce .tit {
	max-width: 600px;
	margin: 0 auto;
	font-size: 2.3rem;
	font-weight: bold;
	color: #86aeff;
	text-align: center;
	border-top: none;
}

.top_introduce .tit span {
	display: block;
	padding-top: 7px;
	margin-top: 7px;
	border-top: 1px solid #7b7b7b;
	color: #7b7b7b;
	font-size: 1.8rem;
}

.bg_gray {
	background: #fafafa;
}

.topnews {

}
.tabMenu {
	margin-bottom: 4.5rem;
}
.tabMenu ul{
	display: flex;
	border-bottom: 1px solid #000;
}

.tabMenu ul li {
	width: 25%;
}

.tabMenu ul li a {
	display: block;
	padding: 15px 25px;
	font-size: 1.2rem;
	color: #7b7b7b;
	border-left: 1px solid #000;
	position: relative;
}

.tabMenu ul li a:before {
	position: absolute;
	width: 0;
    height: 0;
    border-bottom: 25px solid #eeeeee;
    border-right: 25px solid transparent;
    content: '';
    bottom: 0;
    left: 0;
}

.tabMenu ul li:last-child a {
	border-right: 1px solid #000;
}

.tabMenu ul li a img {
	margin-right: 7px;
}

.tabMenu ul li a:hover,
.tabMenu ul li.on a {
	text-decoration: none;
	background: #d4d4d4;
	color: #fff;
}

.tabMenu ul li a:hover:before,
.tabMenu ul li.on a:before {
	position: absolute;
	width: 0;
    height: 0;
    border-bottom: 25px solid #9c9c9c;
    border-right: 25px solid transparent;
    content: '';
    bottom: 0;
    left: 0;
}

.tabMenu ul li a:hover img {
	opacity: 1;
}

.tabBox {
	max-width: 900px;
	margin: 0 auto;
}
.newsbox {
    padding: 1.5rem;
    display: flex;
    border-bottom: 1px solid #000;
    width: 100%;	
}
.newsbox:hover {
    opacity: 0.5;
}
.newsbox .news_date{
	float: left;
	width: 145px;
	font-weight: bold;
	font-size: 16px;	
}

.newsbox .news_title {
	width: calc(100% - 145px);
}
.newsbox .news_title a {
	font-size:16px;
	text-decoration: none;
	color: #7b7b7b;
}

.newsbox .post-categories{

}
.newsbox .post-categories li{
display: inline-block;	
	
}
.newsbox .post-categories li a{
    font-size: 80%;
	
}
.newsbox .entry-tag{
	display:block!important;
}

.btn {
	margin: 3.5rem 0 0;
	text-align: right;
	display: block;
}

@media screen and (max-width: 767px) {
	.tabMenu {
		margin-bottom: 3rem;
	}
	.tabMenu ul {
	    display: flex;
	    border-bottom: 1px solid #000;
	    flex-wrap: wrap;
	}

	.tabMenu ul li {
		width: 50%;
	}
	.tabMenu ul li a img {
		display: block;
		margin: 0 auto 5px;
		max-height: 15px;
	}
	.tabMenu ul li:nth-child(2n) a {
	    border-right: 1px solid #000;
	}

	.tabMenu ul li:nth-child(n-3) a {
	    border-top: 1px solid #000;
	}

	.tabMenu ul li a {
		padding: 12px 7px 12px 17px;
		text-align: center;
	}

	.tabMenu ul li a:hover:before, .tabMenu ul li.on a:before {
		border-bottom: 15px solid #9c9c9c;
    	border-right: 15px solid transparent;
	}

	.topnews {
		padding: 4rem 0 2.5em;
		margin-bottom: 4rem;
	}
	.topnews .newstit {
		font-size: 30px;
		text-align: center;
	}
	.newsbox {
		padding: 0.4em 10px;
		background: #f7f7f7;
	}
	.newsbox+.newsbox {
		margin-top: 1px;
	}
	.newsbox:hover {
		background: #f7f7f7;
	}
	.newsbox dt {
		float: none;
		margin-bottom: 5px;
		width: 100px;
	}
	.newsbox .news_title {
		width: calc(100% - 100px);
	}
	.newsbox dd a {
	}

	.btn {
		text-align: center;
	}

}

.top_event {
	padding: 6rem 0;
	margin-bottom: 7rem;
}

.flexList {
	display: flex;
}

.list_events li {
	width: calc(33.33% - 20px);
	margin: 0 10px;
}

.list_events li .item {
	background: #ebebeb;
	position: relative;
	padding-bottom: 30px;
}

.list_events li .item:before {
	position: absolute;
	content: '';
	width: 0;
    height: 0;
    border-bottom: 25px solid #d3d3d3;
    border-left: 25px solid transparent;
    right: 0;
    bottom: 0
}

.list_events li .item .itemCont{
	padding-right: 25px;
}

.list_events li .item .itemCont .date_event {
	padding: 25px;
	border-bottom: 1px solid #000;
	font-size: 1.5rem;
}

.list_events li .item .itemCont .tit {
	font-size: 1.6rem;
	padding: 18px 5px 10px 25px;
}

.list_events li .item:hover {
	opacity: 0.7;
}

.list_events li a:hover img {
	opacity: 1;
}

.top_sns {
	padding: 6rem 0;
}

.bgstyle01 {
    background: #ebebeb;
    padding: 30px;
    position: relative;
    margin-top: 5rem;
}

.bgstyle01:before {
	position: absolute;
	content: '';
	width: 0;
    height: 0;
    border-bottom: 25px solid #d3d3d3;
    border-left: 25px solid transparent;
    right: 0;
    bottom: 0
}

.list_youtube li {
	width: calc(50% - 10px);
	margin: 0 5px;
}

.list_youtube .img {
	position: relative;
}

.list_youtube .img:before {
	position: absolute;
	content: '';
	width: 62px;
	height: 60px;
	background: url('../images/top/icon_play.png') no-repeat;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}



.facebook {
	margin: 5rem 0;
}

.facebook .flexList {
	justify-content: space-around;
}

.facebook li {
    width: 50%;
}

.twitter {
	margin: 0 0 5rem 0;
}

.twitter .flexList {
	justify-content: space-around;
}

.twitter li {
    width: 32.3%;
}


.top_recommend {
	padding: 6rem 0 17rem;
}

.top_recommend .twoItem {
	margin-bottom: 4rem;
}

.twoItem .flexList,
.fourItem .flexList{
	justify-content: space-between;
}

.twoItem li {
	width: 49%;
}

.fourItem li {
	width: 23.5%;
}
.top_recommend .tit {
	font-size: 1.6rem;
	padding-bottom: 1.5rem;
	border-bottom: 1px solid #000;
	text-align: center;
}

.top_recommend .tit02 {
	font-size: 1.6rem;
	padding-top: 1.5rem;
	margin-top: 1.5rem;
	border-top: 1px solid #000;
	text-align: center;
	display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
#top_banner .flexList {
	
	
}
#top_banner .flexList ul{
	
	
}
#top_banner .flexList li{
	padding: 10px;
	
}

@media screen and (max-width: 767px) {
	.top_introduce .tit {
		font-size: 2rem;
	}
	.top_introduce .tit span {
		font-size: 1.6rem;
	}
	.top_event {
	    padding: 4rem 0;
	    margin-bottom: 4rem;
	}
	.list_events .flexList{
		display: block;
	}

	.list_events li {
		width: auto;
		margin: 0 0 1.5rem;
	}

	.list_events li .img {
		text-align: center;
	}

	.list_events li .item {
		padding: 10px 10px 30px;
		display: flex;
	}

	.list_events li .img {
	    text-align: center;
	    margin-right: 10px;
	    width: 45%;
	}

	.list_events li .item .itemCont {
	    padding-right: 0;
	    width: calc(100% - 47%);
	}

	.list_events li .item .itemCont .date_event {
		padding: 0 0 10px;
	    border-bottom: 1px solid #000;
	    font-size: 1.4rem;
	    margin-bottom: 1rem;
	}

	.list_events li .item .itemCont .tit {
	    font-size: 1.4rem;
	    padding: 0;
	}

	.bgstyle01 {
		padding: 1.5rem;
	}

	.list_youtube .img:before {
		background: url(../images/top/icon_play.png) no-repeat center;
		background-size: 40px auto;
	}

	.top_sns {
	    padding: 4rem 0;
	    margin-bottom: 4rem;
	}

	.top_recommend {
	    padding: 4rem 0;
	}

	.top_recommend .tit {
		font-size: 1.4rem;
	}

	.fourItem .flexList {
		flex-wrap: wrap;
	}

	.fourItem li {
		width: 49%;
		margin-bottom: 1.5rem;
	}

	.top_recommend .tit02 {
		font-size: 1.4rem;
	}
}

@media screen and (max-width: 480px) {
	.list_youtube .flexList {
		display: block;
	}

	.list_youtube li {
    	width: auto;
    	margin: 0 0 1.5rem;
	}
	.facebook .flexList {
		display:block;
	}
	.facebook li {
		width: auto;
		margin: 0 0 1.5rem;
	}	
	.twitter .flexList {
		display: block;
	}

	.twitter li {
		width: auto;
		margin: 0 0 1.5rem;
	}	
	.twoItem .flexList, .fourItem .flexList {
		display: block;
	}

	.twoItem li {
		width: auto;
	}

	.twoItem li + li {
		margin-top: 1.5rem;
	}

	.fourItem li {
		width: auto;
		margin-bottom: 1.5rem;
	}
}