@charset "UTF-8";
/* CSS Document */


	
	
/* body
--------------------- */
body {
	background: linear-gradient(90deg, #042666, #0c57e4);
}


	
	
/* fv
--------------------- */
#fv {
	margin-top: 120px;
	overflow: hidden;
	position: relative;
}
#fv:before {
	content: "";
	width: 100%;
	height: -webkit-calc(50% - 20px);
	height: calc(50% - 20px);
	background: #fff;
	position: absolute;
	top: 0;
	left: 0;
}
	#fv .swiper-container {
		padding: 0 0 80px 0;
		position: relative;
	}
		#fv .swiper-container .swiper-pagination {
			bottom: 30px;
		}
			#fv .swiper-container .swiper-pagination .swiper-pagination-bullet {
				width: 8px;
				height: 8px;
				border-radius: 4px;
				background: #fff;
				border: none;
				opacity: 0.5;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#fv .swiper-container .swiper-pagination .swiper-pagination-bullet-active {
				width: 22px;
				background: #fff;
				opacity: 1;
			}


		#fv .swiper-container .swiper-button-prev {
			width: 60px;
			height: 60px;
			background: url("../img/home/btn_slider_prev.png") no-repeat center / 100%;
			border-radius: 50%;
			top: 50%;
			left: -30px;
			margin: -50px 0 0 0;
		}
		#fv .swiper-container .swiper-button-prev:after {
			display: none;
		}

		#fv .swiper-container .swiper-button-next {
			width: 60px;
			height: 60px;
			background: url("../img/home/btn_slider_next.png") no-repeat center / 100%;
			border-radius: 50%;
			top: 50%;
			right: -30px;
			margin: -50px 0 0 0;
		}
		#fv .swiper-container .swiper-button-next:after {
			display: none;
		}


	
	
/* competition
--------------------- */
#competition {
	overflow: hidden;
}
	#competition .swiper-container {
		padding: 0 0 40px 0;
		position: relative;
	}
		#competition .swiper-container .swiper-slide a {
			display: block;
		}
		#competition .swiper-container .swiper-slide a:hover {
			opacity: 0.7;
		}

		#competition .swiper-container .swiper-pagination {
			bottom: 0;
		}
			#competition .swiper-container .swiper-pagination .swiper-pagination-bullet {
				width: 8px;
				height: 8px;
				border-radius: 4px;
				background: #fff;
				border: none;
				opacity: 0.5;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#competition .swiper-container .swiper-pagination .swiper-pagination-bullet-active {
				width: 22px;
				background: #fff;
				opacity: 1;
			}


	
	
/* sponsor
--------------------- */
#sponsor ul.list li {
	width: 23.5%;
	margin-right: 2%;
	margin-bottom: 2%;
}
#sponsor ul.list li:nth-child(4n) {
	margin-right: 0;
}
	#sponsor ul.list li a {
		display: block;
	}
	#sponsor ul.list li a:hover {
		opacity: 0.7;
	}


	
	
/* federation
--------------------- */
#federation {
	background: #E5E7ED;
}
	#federation .list a.linkbox {
		display: block;
		width: 31%;
		margin-right: 3.5%;
		margin-bottom: 40px;
	}
	#federation .list a.linkbox:nth-child(3n) {
		margin-right: 0;
	}
		#federation .list a.linkbox .text {
			border-bottom: solid 1px #CED3DD;
			padding: 16px 35px 16px 0;
			background: url("../img/common/icon_arrow_blue.png") no-repeat right 5px center;
			position: relative;
			transition: 0.3s;
			-webkit-transition: 0.3s;
		}
		#federation .list a.linkbox:hover .text {
			background: url("../img/common/icon_arrow_blue.png") no-repeat right 0 center;
		}

		#federation .list a.linkbox .text:before {
			content: "";
			width: 30px;
			height: 1px;
			background: #001E55;
			position: absolute;
			bottom: -0.5px;
			right: 0;
			transition: 0.3s;
			-webkit-transition: 0.3s;
		}
		#federation .list a.linkbox:hover .text:before {
			width: 100%;
		}
			#federation .list a.linkbox .text h3 {
				font-size: 1.6rem;
				font-weight: 500;
				line-height: 1.3em;
			}


	
	
/* committee
--------------------- */
#committee {
	background: #E5E7ED;
}
	#committee ul.list li {
		width: 23.5%;
		margin-right: 2%;
		margin-bottom: 2%;
	}
	#committee ul.list li:nth-child(4n) {
		margin-right: 0;
	}
		#committee ul.list li a {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			height: 106px;
			background: #fff url("../img/common/icon_arrow_blue.png") no-repeat right 20px center;
			padding: 0 45px 0 20px;
			font-size: 1.8rem;
			font-weight: 500;
			line-height: 1.4em;
			position: relative;
		}
		#committee ul.list li a:hover {
			background: #fff url("../img/common/icon_arrow_blue.png") no-repeat right 15px center;
		}

		#committee ul.list li a:before {
			content: "";
			width: 2px;
			height: 48px;
			background: #001E55;
			position: absolute;
			top: 50%;
			left: 0;
			margin-top: -24px;
			transition: 0.3s;
			-webkit-transition: 0.3s;
		}
		#committee ul.list li a:hover:before {
			height: 100%;
			top: 0;
			margin-top: 0;
		}


	
	
/* news
--------------------- */
#news {
	background: #fff;
	overflow: hidden;
}
	#news .more {
		position: absolute;
		top: 30px;
		right: 0;
	}

	#news .swiper-container {
		padding: 0 0 50px 0;
		position: relative;
	}
		#news .swiper-container a.linkbox {
			display: block;
		}
			#news .swiper-container a.linkbox .pht {
				aspect-ratio: 16 / 9;
				}
				#news .swiper-container a.linkbox .pht img {
					width: 100%;
					height: auto;
					align-self: center;
					object-fit: contain;
					overflow: hidden;
				}
			#news .swiper-container a.linkbox .text {
				border-bottom: solid 1px #D8DCE4;
				padding: 16px 35px 16px 0;
				background: url("../img/common/icon_arrow_blue.png") no-repeat right 5px center;
				position: relative;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#news .swiper-container a.linkbox:hover .text {
				background: url("../img/common/icon_arrow_blue.png") no-repeat right 0 center;
			}

			#news .swiper-container a.linkbox .text:before {
				content: "";
				width: 30px;
				height: 1px;
				background: #001E55;
				position: absolute;
				bottom: -0.5px;
				right: 0;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#news .swiper-container a.linkbox:hover .text:before {
				width: 100%;
			}
				#news .swiper-container a.linkbox .text .en {
					display: block;
					font-size: 1.4rem;
					font-weight: 500;
					color: #99A8C3;
					line-height: 1;
					margin-bottom: 8px;
				}
				#news .swiper-container a.linkbox .text h3 {
					font-size: 1.6rem;
					font-weight: 500;
					line-height: 1.5em;
				}

		#news .swiper-container .swiper-pagination {
			bottom: 0;
		}
			#news .swiper-container .swiper-pagination .swiper-pagination-bullet {
				width: 8px;
				height: 8px;
				border-radius: 4px;
				background: #001E55;
				border: none;
				opacity: 0.4;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#news .swiper-container .swiper-pagination .swiper-pagination-bullet-active {
				width: 22px;
				background: #001E55;
				opacity: 1;
			}


	
	
/* tournament
--------------------- */
#tournament {
	background: #fff;
	overflow: hidden;
}
	#tournament .more {
		position: absolute;
		top: 30px;
		right: 0;
	}

	#tournament .list {
		border-top: solid 1px #E5E7ED;
	}
		#tournament .list a.linkbox {
			display: block;
			border-bottom: solid 1px #E5E7ED;
		}
		#tournament .list a.linkbox:hover {
			background: #F5F6F8;
		}
			#tournament .list a.linkbox .inner {
				display: flex;
				justify-content: flex-start;
				align-items: center;
				padding-top: 20px;
				padding-bottom: 20px;
			}
				#tournament .list a.linkbox .inner .info {
					width: 280px;
					display: flex;
					justify-content: flex-start;
					align-items: center;
				}
					#tournament .list a.linkbox .inner .info .cat {
						width: 120px;
						height: 26px;
						background: linear-gradient(90deg, #042666, #0c57e4);
						font-size: 1.2rem;
						font-weight: 700;
						line-height: 26px;
						text-align: center;
						color: #fff;
					}
					#tournament .list a.linkbox .inner .info .en {
						display: block;
						font-size: 1.4rem;
						font-weight: 500;
						line-height: 1.4em;
						color: #99A8C3;
						padding-left: 12px;
					}

				#tournament .list a.linkbox .inner h3 {
					width: -webkit-calc(100% - 520px);
					width: calc(100% - 520px);
					font-size: 1.6rem;
					font-weight: 500;
					line-height: 1.4em;
				}

				#tournament .list a.linkbox .inner .venue {
					width: 240px;
					font-size: 1.3rem;
					font-weight: 500;
					line-height: 1.4em;
					text-align: right;
				}





/* 1200px */
@media screen and (max-width: 1200px) {

	
	
/* news
--------------------- */
#news .more {
	right: 7%;
}

	
	
/* tournament
--------------------- */
#tournament .more {
	right: 7%;
}


}
	




/* 1024px */
@media screen and (max-width: 1024px) {


	
	
/* fv
--------------------- */
#fv {
	margin-top: 80px;
}
	#fv .swiper-container .swiper-button-prev {
		width: 40px;
		height: 40px;
		left: -20px;
		margin: -40px 0 0 0;
	}

	#fv .swiper-container .swiper-button-next {
		width: 40px;
		height: 40px;
		right: -20px;
		margin: -40px 0 0 0;
	}


	
	
/* federation
--------------------- */
#federation .list a.linkbox .text h3 {
	font-size: 1.4rem;
}


	
	
/* committee
--------------------- */
#committee ul.list li {
	width: 31%;
	margin-right: 3.5%;
	margin-bottom: 3.5%;
}
#committee ul.list li:nth-child(4n) {
	margin-right: 3.5%;
}
#committee ul.list li:nth-child(3n) {
	margin-right: 0;
}
	#committee ul.list li a {
		height: 90px;
		font-size: 1.6rem;
	}


	
	
/* news
--------------------- */
#news .more {
	top: 25px;
}
	
#news .swiper-container a.linkbox .text .en {
	font-size: 1.2rem;
}
#news .swiper-container a.linkbox .text h3 {
	font-size: 1.4rem;
}


	
	
/* tournament
--------------------- */
#tournament .more {
	top: 25px;
}

#tournament .list a.linkbox .inner .info {
	width: 140px;
	display: block;
}
	#tournament .list a.linkbox .inner .info .cat {
		width: 120px;
		height: 24px;
		font-size: 1.0rem;
		line-height: 24px;
	}
	#tournament .list a.linkbox .inner .info .en {
		font-size: 1.3rem;
		padding-left: 0;
		line-height: 1.4em;
		margin-top: 5px;
	}

#tournament .list a.linkbox .inner h3 {
	width: -webkit-calc(100% - 330px);
	width: calc(100% - 330px);
	font-size: 1.5rem;
}

#tournament .list a.linkbox .inner .venue {
	width: 190px;
	font-size: 1.1rem;
}




}





/* max 768px */
@media screen and (max-width: 768px) {


	
	
/* fv
--------------------- */
#fv {
	margin-top: 60px;
}
	#fv .swiper-container {
		padding: 0 0 30px 0;
	}


	
	
/* sponsor
--------------------- */
#sponsor ul.list li {
	width: 48%;
	margin-right: 4%;
	margin-bottom: 4%;
}
#sponsor ul.list li:nth-child(2n) {
	margin-right: 0;
}


	
	
/* federation
--------------------- */
#federation .list {
	display: block;
}
	#federation .list a.linkbox {
		width: 100%;
		margin-right: 0 !important;
		margin-bottom: 30px;
	}
	#federation .list a.linkbox:nth-last-child(1) {
		margin-bottom: 0;
	}


	
	
/* committee
--------------------- */
#committee ul.list li {
	width: 48%;
	margin-right: 4%;
	margin-bottom: 4%;
}
#committee ul.list li:nth-child(3n) {
	margin-right: 4%;
}
#committee ul.list li:nth-child(2n) {
	margin-right: 0;
}
#committee ul.list li:nth-last-child(1) {
	margin-bottom: 0;
}
	#committee ul.list li a {
		height: 70px;
		background: #fff url("../img/common/icon_arrow_blue.png") no-repeat right 10px center;
		padding: 0 35px 0 15px;
		font-size: 1.4rem;
	}
	#committee ul.list li a:hover {
		background: #fff url("../img/common/icon_arrow_blue.png") no-repeat right 10px center;
	}

	#committee ul.list li a:before {
		height: 40px;
		margin-top: -20px;
	}
	#committee ul.list li a:hover:before {
		height: 40px;
		top: 50%;
		left: 0;
		margin-top: -20px;
	}


	
	
/* news
--------------------- */
#news .more {
	position: static;
	display:block; 
	width: 100%;
	text-align: center;
	margin-top: 15px;
}
	#news .more a {
		display: inline-block;
	}
	
#news .swiper-container a.linkbox .text {
	padding-right: 30px;
}
#news .swiper-container a.linkbox .text .en {
	font-size: 1.1rem;
}
#news .swiper-container a.linkbox .text h3 {
	font-size: 1.3rem;
}


	
	
/* tournament
--------------------- */
#tournament .more.sp {
	position: static;
	display:block; 
	width: 100%;
	text-align: center;
	margin-top: 15px;
}
	#tournament .more a {
		display: inline-block;
	}

#tournament .list a.linkbox .inner {
	display: block;
}
	#tournament .list a.linkbox .inner .info {
		width: 100%;
		display: flex;
	}
		#tournament .list a.linkbox .inner .info .en {
			padding-left: 10px;
			margin-top: 0;
		}

	#tournament .list a.linkbox .inner h3 {
		width: 100%;
		font-size: 1.5rem;
		margin-top: 10px;
	}

	#tournament .list a.linkbox .inner .venue {
		width: 100%;
		text-align: left;
		margin-top: 10px;
	}




}