/*ページ全体の構成*/
body{
	color: #4e5a64;
	font-size: 16px;
	font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Helvetica, Arial, 'ＭＳ Ｐゴシック', sans-serif;
	margin: 0;
}
a:link {
	color: #818181;
	text-decoration: none;
}
a:hover {
	color: #9b9b9b;
	text-decoration: none;
}
a:visited {
	color: #9b9b9b;
	text-decoration: none;
}
ul{
	padding: 0;
	margin: 0;
}
li{
	list-style: none;
}

/*全体の設定*/
.wrap{
	width: 100%;
}

/*ヘッダーの設定*/
.header {
	width: 100%;
	color: #fff;
	text-align: center;
	/*ヘッダーの背景設定*/
	background:linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)),url('./top_image/headerimg.png') center center / 100% auto no-repeat fixed;
	background-size: cover;
	padding-bottom: 10rem;
	margin: 0 0 40px 0;
	font-family: 'object-fit: cover;';/*IE対策*/
	position: relative
}
@media all and (-ms-high-contrast: none){/* IE対策 */
	.headerMain-{
		position: relative;
		top: 50px;
	}
}

/*ナビリスト*/
.headerNav-list {
	display: flex;
	flex-direction: row-reverse;
	padding: 20px 50px;
}
.headerNav-listItem {
	padding: 10px 15px;
	margin: 0 20px 0 0;
	border: 1px solid #bbb;
	border-radius: 25px;
	font-size: 14px;
}
.headerNav-listItem a {
	color: #fff;
}
.headerNav-listItem a:hover{
	color: #ccc;
}
@media screen and (max-width : 1025px){
	.headerNav-list{
		display: none;
	}
}

/*ハンバーガーメニューの設定*/
@media screen and (min-width : 1024px){
	#nav-drawer {
		display: none;
	}
}
@media screen and (max-width : 1025px){
	#nav-drawer {
		display: block;
		position: absolute;
		top: 0px;
		right: 0px;
		margin: 0 0 0 auto;/*IE対策の右寄せ*/
	}
	.nav-unshown {/*チェックボックス等は非表示に*/
		display:none;
	}
	#nav-open { /*アイコンのスペース*/
		display: inline-block;
		width: 30px;
		margin: 0 30px 0 0;
	}
	/*ハンバーガーアイコンをCSSだけで表現*/
	#nav-open span, #nav-open span:before, #nav-open span:after {
		position: absolute;
		height: 4px;/*線の太さ*/
		width: 30px;/*長さ*/
		background: #fff;
		display: block;
		content: '';
		cursor: pointer;
	}
	#nav-open span:before {
		bottom: -8px;
	}
	#nav-open span:after {
		bottom: -16px;
	}
	/*閉じる用の薄黒カバー*/
	#nav-close {
		display: none;/*はじめは隠しておく*/
		position: fixed;
		z-index: 99;
		top: 0;/*全体に広がるように*/
		left: 0;
		width: 100%;
		height: 100%;
		background: black;
		opacity: 0;
		transition: .3s ease-in-out;
	}
	/*ハンバーガーメニュー展開後の中身*/
	#nav-content {
		overflow: auto;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999;/*最前面に*/
		width: 90%;/*右側に隙間を作る（閉じるカバーを表示）*/
		max-width: 330px;/*最大幅*/
		height: 100%;
		background: #fff;/*背景色*/
		transition: .3s ease-in-out;/*滑らかに表示*/
		-webkit-transform: translateX(-105%);
		transform: translateX(-105%);/*左に隠しておく*/
	}
	/*チェックが入った後の表示*/
	#nav-input:checked ~ #nav-close {
		display: block;/*カバーを表示*/
		opacity: .5;
	}
	#nav-input:checked ~ #nav-content {
		-webkit-transform: translateX(0%);
		transform: translateX(0%);/*中身を表示（右へスライド）*/
		box-shadow: 6px 0 25px rgba(0,0,0,.15);
	}
	/*展開後のリストのスタイル*/
	.nav-drawerList{
		list-style: none;
		text-align: center;
		padding: 0;
	}
	.nav-drawerList-item{
		line-height: 1.5;
	}
	.nav-drawerList-item a{
		width: 100%;
		padding: 20px 0;
		color: #4e5a64;
		display: block;
	}
	.nav-drawerList-item a:hover{/*ナビカーソルon時*/
		background: #c2c2c2;
		transition: 0.8s;
	}
	.sns {/*SNSアイコン*/
		display: flex;
		justify-content: center;
	}
	.snsIcon{
		width: 38px;
		margin: 0 5px 0;
	}
	.nav-drawerNav-list{
		justify-content: space-around;
	}
}

/*サイトのタイトルの設定*/
.headerMain-title{/*サイトのタイトルの設定*/
	margin: 50px 0;
	font-size: 60px;
	font-family: 'Teko', sans-serif;
	position: relative;
}
.headerMain-title:after{
	position: absolute;
	right: 0;
	left: 0;
	bottom: -10px;
	margin: auto;
	width: 50px;
	height: 4px;
	background: #fff;
	content: '';
}
.headerMain-subscription {
	font-size: 25px;
	line-height: 1.7;
	margin: 0 0 70px 0;
}
.headerMain-link {
	width: 600px;
	margin: 0 auto;
	display: flex;
	justify-content: space-around;
}
.headerMain-linkItem {
	width: 200px;
	display: block;
	background: #bce9ff;
	line-height: 4;
}
.headerMain-linkItem a{
	color: #ffff;
	display: block;
}

/*サイトのタイトルの1024px以下の設定*/
@media screen and (max-width : 1024px){
	.header {
		height: 180px;
		margin: 0 0 50px 0;
	}
	.headerMain{
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		left: 0;
		margin: auto;
		text-align: center;
	}
	.headerMain{
		margin: 0 auto;
	}
	.headerMain-title {
		font-size: 38px;
		font-weight: bold;
	}
	.headerMain-link{
		display: none;
	}
}
.main {
	max-width: 1024px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
.main-link{
	display: none;
}
.mainNav {
	width: 20%;
	padding: 0 20px;
}
.mainNav-list {
	margin: 20px 0;
}
.mainNav-listTitle {
	padding: 10px;
	margin: 0 0 15px 0;
	background: #bce9ff;
	color: #ffff;
}
.mainNav-listItem {
	margin: 0 10px;
	line-height: 1.8;
	display: block;
}
.mainNav-listItem a {
	display: block;
}
.sns {/*SNSアイコン*/
	display: flex;
	justify-content: center;
}
.snsIcon{
	width: 38px;
	margin: 0 5px 0;
}
.mainTopic{
	width: 80%;
	padding: 0 20px;
}
@media screen and (max-width : 1024px){
	.main{
		display: block;
	}
	.main-link{
		display: flex;
		max-width: 440px;
		margin: 0 auto 50px;
	}
	.main-link li{
		width: 200px;
		margin: 0 10px 0;
		display: block;
		background: #91b4c5;
		line-height: 4;
		text-align: center;
	}
	.main-link li a{
		color: #fff;
		display: block;
	}
	.mainNav {
		display: none;
	}
	.mainTopic {
		width: auto;
		max-width: 100%;
		padding: 0 20px;
	}
}

/*mainsection*/
.mainSection {
	margin: 0 0 100px 0;
	position: relative;
}
.mainSection-header {
	margin-bottom: 20px;
	border-bottom: 1px dotted #ccc;
	display: flex;
	align-items: center;
}
.mainSection-header:before {
	width: 10px;
	height: 40px;
	background: #bce9ff;
	content: "";
	top: 0;
	bottom: 0;
}
.mainSection-headerTitle {
	padding: 0 0 0 20px;
	font-size: 26px;
	font-weight: 700;
	color: #808080;
	margin: 0 20px 0 0;
}
.mainSection-HeaderSubtitle {
	color: #ccc;
}
.mainSection-button {
	position: absolute;
	right: 0;
	display: block;
	width: 120px;
	padding: 5px;
	margin: 10px 0 0;
	text-align: center;
	background: #f2f2f2;
}
.mainSection-button a {
	display: block;
	width: 100%;
}
@media screen and (max-width : 1024px){
	.mainSection-headerTitle {
		padding: 0 0 0 10px;
		font-size: 35px;
	}
	.newsList {
		margin: 0 0 0 20px;
	}
}

/*news*/
.newsList {
	margin: 0 0 0 32px;
	height: 35em;     /* 高さを制限 */
	overflow-y: scroll;  /* スクロールバーを表示 */
}
.newsList-card {
	padding-bottom: 20px;
	margin: 20px 0 0 0;
	border-bottom: 1px #c0c0c0 dotted; /* 本文エリア下境界線 */
}
.newsList-card:hover {
	opacity: 0.7;
}
.newsList-cardHeader {
	display: flex;
}
.newsList-cardHeader-date {
	font-weight: 700;
	margin: 0 20px 0 0;
}
.newsList-cardHeader-tag {
	color: #ccc;
}
.newsList-cardTitle {
	color: #595959;
	margin: 10px 0 0;
	font-size: 24px;
	font-weight: 700;
}
@media screen and (max-width : 1024px){
	.newsList {
		margin: 0 0 0 20px;
	}
}

/*achievement*/
.achievement {
	margin: 0 0 0 32px;
}
.achievement-date {
	color: #888;
	font-size: 18px;
	margin: 0 0 10px 0;
}
.achievement-tournament {
	font-size: 14px;
	color: #888;
	margin: 0 0 20px 0;
}
.achievement-result {
	color: #555;
	font-weight: 700;
}
.achievement-resultTitle {
	font-size: 18px;
}
.achievement-resultInfo {
	font-size: 28px;
}

/*ahievement*/
.activityImage {
	margin: 0 0 160px;
}
.activityImage-list {
	display: flex;
	justify-content: center;
	margin: 30px 0;
	flex-wrap: wrap;
	height: 20em;     /* 高さを制限 */
	overflow-y: scroll;  /* スクロールバーを表示 */
}

.activityImage-list li {
	border-bottom: 1px #c0c0c0 dotted; /* 本文エリア下境界線 */
}

.activityImage-listItem {
	width: 160px;
	height: 160px;
	margin: 0 10px 10px 10px;
}
.activityImage-listItem img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;'; /*IE対策*/
}
.activityMovie-list {
	display: flex;
	justify-content: space-between;
	margin: 0 0 30px;
}
.activityIMovie-listItem-img {
	width: 350px;
	height: 180px;
	margin: 0 15px 15px 15px;
}
.activityIMovie-listItem-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;'; /*IE対策*/
}
.activityIMovie-listItem-date {
	font-size: 14px;
	margin: 0 0 0 15px;
}
.activityIMovie-listItem-title {
	margin: 0 0 0 15px;
}
@media screen and (max-width : 1024px){
	.activityMovie-list {
		width: 100%;
		display: flex;
		justify-content: center;
		margin: 0 0 30px;
		flex-wrap: wrap;
	}
}

/*footer*/
.footer {
	background: #f2f2f2;
}
.footerContents {
	display: flex;
	max-width: 1024px;
	margin: 0 auto;
	padding: 30px 0;
}
.footerContents-main {
	color: #808080;
	position: relative;
	width: 500px;
	margin: 0 auto;
	padding: 0 20px;
}
.footerContents-mainTitle {
	font-size: 34px;
	font-weight: bold;
	margin: 0 0 20px 0;
}
.footerContents-mainAdd {
	margin: 0 0 5px 0;
}
.footerContents-mainTel {
	font-size: 30px;
	margin: 0 0 50px 0;
}
.footerContents-mainInfo {
	position: absolute;
	font-size: 14px;
	bottom: 0;
}
.footerContents-sub {
	display: flex;
	justify-content: space-around;
	width: 65%;
}
.footerContents-subNavi {
	width: 200px;
	line-height: 1.7;
}
.footerContents-subNavi-fast{
	width: 240px;
}
.footerContents-subNavi-list{
	margin: 0 0 0 10px;
}
.footerContents-subNavi-fastList{
	display: flex;
	justify-content: space-around;
	margin: 0 0 0 10px;
}
.footerContents-subNavi-fastList li{
	width: 50%;
}
.footerContents-subNavi-title {
	padding: 0 0 0 10px;
	background: #ddd;
	margin: 0 0 10px 0;
}
@media screen and (max-width : 1024px){
	.footerContents-main {
		position: relative;
		width: auto;
		max-width: 350px;
		text-align: center;
	}
	.footerContents-mainInfo {
		position: inherit;
	}
	.footerContents-sub {
		display: none;
	}
}
.tailLightOption{	
font-size: 4;	
font-weight: bold;	
color: #ffffff;	
padding: 10px;	
background-color: #0074ae;	
}