@charset "utf-8";

/* ---------------------------------------------------------
    top
   ---------------------------------------------------------*/

/*-- topMainImg --*/

.topMainImg {
	width: 100%;
}

.topMainImg a:hover{
	opacity: 0.8;
}

.topMainImg img{
	width:100%;
	height:auto;
}


/*-- topsubMenu --*/

.topsubMenu {
	background: #f6f6f6;
	border-bottom: 1px solid #dbdbdb;
}

.topsubMenu li {
	display: inline-block;
	width: 33.33%;
	height: 50px;
	line-height: 50px;
	vertical-align: middle;
	text-align: center;
	cursor: pointer;
	position: relative;
	float: left;
}

.topsubMenu li a{
	display:block;
	background:#333;
	color:#FFF;
	text-decoration:none;
}

/* t2表示用 */
.topsubMenu li a span{
	font-size:82%;
	position: absolute;
	top:-5px;
}

.topsubMenu li a:hover{
	background:#e6001b;
}


/*-- topBoxes --*/

.topBoxes {
	display: flex;
	flex-wrap: wrap;
	position: relative;
	overflow: hidden;
	/* clear:both; */
	margin-bottom:20px;
	width: 100%;
}


/*-- topBox --*/

.topBox {
	width: 33.33%;
	padding: 20px 0;
	/* float: left; */
	border-left:1px solid #CCC;
	border-bottom:1px solid #CCC;
    text-align: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.topBox a:hover{
	opacity: 0.8;
}

/* h2 */
.topBox h2{
	margin:0;
}

.topBox img{
	width:80%;
	height:auto;
}
.topBox a{
	outline: 0;
}


/*-- topTopicsTitleLeft --*/

.topTopicsTitleLeft{
	float:left;
}

/* h2 */
.topTopicsTitleLeft h2{
	padding:5px 0 0 8px;
	margin:0;
}


/*-- topTopicsTitleRight --*/

.topTopicsTitleRight{
	float:right;
}

.topTopicsTitleRightdl{
	float:right;
}

.topTopicsTitleRightdt a{
	float:left;
	margin:9px 15px 0 0;
	width:20px;
}

.topTopicsTitleRightdd a{
	display:block;
	text-indent:-9999px;
	width:142px;
	height:47px;
	margin:0 0 0 35px;
	background:url(../images/list_btn_01.png) no-repeat;
}


/*-- topTopics --*/

.topTopics{
	margin: 30px 40px 20px 40px;
	overflow: hidden;
	zoom: 1;
}

.topTopics a{color:#333;}
.topTopics a:hover{color:#999;}

.topTopics dl{
	clear:both;
	padding:10px;
	/* border-bottom:1px solid #D7D7D7; */
	border-bottom: 1px solid #ddd;
}

.topTopics dt{
	width:150px;
	float:left;
	color:#222;
}

.topTopics dd{
	float:left;
	padding:0;
	margin:0;
}


/*-- topTopicsBox --*/

.topTopicsBox {
	clear: both;
	margin-bottom: 30px;
	overflow: hidden;
}

/* h2 */
.topTopicsBox h2{
	padding:0 10px;
}


/*-- topLinkBox --*/

.topLinkBox{
	width:93%;
	border-bottom:1px solid #CCCCCC;
	margin:0 auto;
}

.topLinkBox img{
	max-width:100%;
	height:auto;
	display:block;
	margin:0 auto;
}

.topLinkBox ul{
	width:100%;
	/* clear:both; */
	margin-bottom:20px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.topLinkBox li{
	flex: 0 0 32.5%;
	width: 32.5%;
	margin: 0.5% 0;
}

.topLinkBox li a{
	display:block;
	/* width:49%; */
    width: 100%;
	/* margin-bottom:20px; */
    margin-bottom: 0;
	outline:none;
	text-decoration:none;
}

/*
.topLinkBox li.shopLink a,
.topLinkBox li.idLink a{
	float:left;
}

.topLinkBox li.athleteLink a,
.topLinkBox li.sekaiLink a{
	float:right;
}
*/

.topLinkBox li a:hover{
    filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
}

/*
.topLinkBox li a{
	display:block;
	width:32%;
	float:left;
	margin-bottom:20px;
}

.topLinkBox li.shopLink a,
.topLinkBox li.athleteLink a{
	margin-right:2%;
}

.topLinkBox .idLink dl,
.topLinkBox .athleteLink dl{
	padding-left:5px;
}

.topLinkBox .idLink dt,
.topLinkBox .athleteLink dt{
	background:url(../images/mk-link-01.png) 0 20px no-repeat;
	padding:15px 0 0 20px;
	margin-bottom:5px;
}

.topLinkBox .idLink dd,
.topLinkBox .athleteLink dd{
	padding-left:20px;
}
*/

.topBanner{
	padding: 20px 0;
	background: #444444;
}
.topBanner .topBannerBox{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	max-width: 1360px;
	width: 80%;
	margin: 0 auto;
}
.topBanner .topBannerBox .topBannerList{
	flex: 0 0 100%;
	margin-bottom: 3%;
}
.topBanner .topBannerBox .topBannerList:last-child{
	margin-bottom: 0;
}
.topBanner .topBannerBox .topBannerList a{
	display: block;
	outline: 0;
}
.topBanner .topBannerBox .topBannerList a:hover{
	opacity: 0.8;
}
.topBanner img{
	max-width: 100%;
    width: auto;
}
@media (min-width: 480px){
	.topBanner .topBannerBox{
		width: 90%;
	}
	.topBanner .topBannerBox .topBannerList{
		flex: 0 0 49%;
		margin-bottom: 2%;
	}
}

@media (min-width: 768px){
	.topBanner .topBannerBox{
		width: 95%;
	}
	.topBanner .topBannerBox .topBannerList{
		flex: 0 0 32%;
		margin-bottom: 0%;
	}
}


@media (min-width: 768px) and (max-width: 1280px) {

	.topLinkBox li{
		flex: 0 0 49.5%;
		width: 49.5%;
	}
}


@media (min-width: 768px) and (max-width: 1023px) {

	.topBox {
		width: 33.33%;
	}

}

@media (max-width: 767px){
	.topLinkBox li{
		flex: 0 0 100%;
		width: 100%;
		margin: 3px 0;
	  }
}

@media (min-width: 481px) and (max-width: 767px) {

	.topBox {
		width: 49.8%;
		height:auto;
	}

	.topBox dd{
		text-align:left;
	}

	.topMainImg .topMainImg01{
		display:none;
	}

	.topMainImg .topMainImg01s{
		display:block;
	}

	.topTopics{
		width:90%;
		margin:0 auto;
	}

	.topLinkBox{
		width:90%;
		margin-bottom:30px;
	}

	.topLinkBox li{
		flex: 0 0 100%;
		width: 100%;
		margin: 8px 0;
	  }

	.topLinkBox li a{
		width:100%;
	}

	.topLinkBox li.shopLink a,
	.topLinkBox li.idLink a,
	.topLinkBox li.athleteLink a,
	.topLinkBox li.sekaiLink a{
		float:none;
	}

/*
	.topLinkBox li.shopLink a,
	.topLinkBox li.athleteLink a{
		margin-right:0;
	}

	.topLinkBox li a{
		width:73%;
		float:none;
		margin:0 auto 20px auto !important;
	}

	.topLinkBox .idLink dd,
	.topLinkBox .athleteLink dd{
		padding-left:0;
	}
*/

}


@media (max-width: 767px) {

  .topsubMenu li {
    float: none;
    width: 100%;
    border-bottom: 1px solid #fff;
  }

}


@media (max-width: 480px) {

	.topBoxes{
		border:none;
	}

	.topBox {
		/* width: 96%; */
		width: 100%;
		height: auto;
		float: none;
		border-left:none;
	}

	.topTopics{
		padding:0 10px;
	}

	.topMainImg .topMainImg01{
		display:none;
	}

	.topMainImg .topMainImg01s{
		display:block;
	}

	.topTopics{
		width:90%;
		margin:0 auto;
	}

	.topLinkBox{
		/* width:85%; */
		width: 90%;
		margin-bottom:30px;
		padding: 0 5%;
		box-sizing: border-box;
	}

	.topLinkBox li a{
		width:100%;
		float:none;
	}
/*
	.topLinkBox .idLink dd,
	.topLinkBox .athleteLink dd{
		padding-left:0;
	}
*/

  .topsubMenu li {
    height: 35px;
    line-height: 35px;
  }

}
