@charset "utf-8";


@media screen and (min-width:768px){

	#pankuzu{
		padding: 25px 0;
		font-size:1.4rem;
		font-family: 'SuzukiPROBold';
	}
	#pankuzu a{
		position:relative;
		padding-left:20px;
	}
	#pankuzu a:after{
		content:"";
		position:absolute;
		left: 0;
		top:50%;
		width: 10px;
		height: 10px;
		margin-top:-6px;
		border-top: 1px solid #191919;
		border-right: 1px solid #191919;
		-webkit-transform: rotate(-135deg);
		transform: rotate(-135deg);
	}

}
@media screen and (min-width:768px) and ( max-width:1280px) {
	
	#pankuzu .content-area{
		padding-left:3vw;
		padding-right:3vw;
	}
	
}
@media (max-width: 768px) {
	
	#pankuzu{
		padding: 3vw 0 3vw;
		font-size:1.2rem;
		font-family: 'SuzukiPROBold';
	}
	#pankuzu a{
		position:relative;
		padding-left:20px;
	}
	#pankuzu a:after{
		content:"";
		position:absolute;
		left: 0;
		top:50%;
		width: 10px;
		height: 10px;
		margin-top:-6px;
		border-top: 1px solid #191919;
		border-right: 1px solid #191919;
		-webkit-transform: rotate(-135deg);
		transform: rotate(-135deg);
	}
		
}




/* コンテンツ */

.contents-outer-0 {
	z-index: 1;
	position: relative;
	width: 100%;
	height: auto;
	padding: 0;
	background-color: #fff;
}
.contents-outer-60 {
	z-index: 1;
	position: relative;
	width: 100%;
	height: auto;
	padding: 60px 0;
	background-color: #fff;
}
.contents-outer-60t {
	z-index: 1;
	position: relative;
	width: 100%;
	height: auto;
	padding: 60px 0 0 0;
	background-color: #fff;
}
.contents-outer-60b {
	z-index: 1;
	position: relative;
	width: 100%;
	height: auto;
	padding: 0 0 60px 0;
	background-color: #fff;
}
.contents-outer-30 {
	z-index: 1;
	position: relative;
	width: 100%;
	height: auto;
	padding: 30px 0;
	background-color: #fff;
}

.contents-outer-0-g {
	z-index: 1;
	position: relative;
	width: 100%;
	height: auto;
	padding: 0;
	background-color: #F2F2F2;
}
.contents-outer-60-g {
	z-index: 1;
	position: relative;
	width: 100%;
	height: auto;
	padding: 60px 0;
	background-color: #F2F2F2;
}
.contents-outer-30-g {
	z-index: 1;
	position: relative;
	width: 100%;
	height: auto;
	padding: 30px 0;
	background-color: #F2F2F2;
}


.contents-inner-0 {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0;
}
.contents-inner-1 {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 10px 0;
}
.contents-inner-2 {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 20px 0;
}
.contents-inner-3 {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 30px 0;
}
.contents-inner-4 {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 40px 0;
}
.contents-inner-5 {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 50px 0;
}
.contents-inner-6 {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 60px 0;
}


.contents-wrapper {
	z-index: 2;
	position: relative;
	width: 100%;
	height: auto;
	padding: 135px 0 0 0;
}

.contents-wrapper-1 {
	z-index: 3;
	position: relative;
	width: 100%;
	height: auto;
	margin: auto;
}

.contents-wrapper-2 {
	z-index: 3;
	position: relative;
	max-width: 1280px;
	width: 100%;
	height: auto;
	margin: auto;
	padding: 0;
}

.contents-wrapper-3 {
	z-index: 3;
	position: relative;
	max-width: 1024px;
	width: 80%;
	height: auto;
	margin: auto;
	padding: 0;
}

.contents-wrapper-1280 {
	z-index: 3;
	position: relative;
	max-width: 1280px;
	width: 100%;
	height: auto;
	margin: auto;
	padding: 0;
}


@media print, screen and (max-width: 1380px) {

	.contents-wrapper-2 {
		width: 90%;
	}

}

@media print, screen and (max-width: 1124px) {

	.contents-wrapper-3 {
		width: 90%;
	}

}

@media print, screen and (max-width: 768px) {

	.contents-wrapper {
		width: 100%;
		height: auto;
		padding: 110px 0 0 0;
	}


	.contents-outer-sp-0 {
		z-index: 1;
		position: relative;
		width: 100%;
		height: auto;
		padding: 0;
		background-color: #fff;
	}
	.contents-outer-sp-30 {
		z-index: 1;
		position: relative;
		width: 100%;
		height: auto;
		padding: 30px 0;
		background-color: #fff;
	}
	.contents-outer-sp-30t {
		z-index: 1;
		position: relative;
		width: 100%;
		height: auto;
		padding: 30px 0 0 0;
		background-color: #fff;
	}
	.contents-outer-sp-30b {
		z-index: 1;
		position: relative;
		width: 100%;
		height: auto;
		padding: 0 0 30px 0;
		background-color: #fff;
	}
	.contents-outer-sp-15 {
		z-index: 1;
		position: relative;
		width: 100%;
		height: auto;
		padding: 15px 0;
		background-color: #fff;
	}

	.contents-outer-sp-0-g {
		z-index: 1;
		position: relative;
		width: 100%;
		height: auto;
		padding: 0;
		background-color: #F2F2F2;
	}
	.contents-outer-sp-30-g {
		z-index: 1;
		position: relative;
		width: 100%;
		height: auto;
		padding: 30px 0;
		background-color: #F2F2F2;
	}
	.contents-outer-sp-15-g {
		z-index: 1;
		position: relative;
		width: 100%;
		height: auto;
		padding: 15px 0;
		background-color: #F2F2F2;
	}


	.contents-inner-sp-0 {
		width: 100%;
		height: auto;
		margin: 0 auto;
		padding: 0;
	}
	.contents-inner-sp-1 {
		width: 100%;
		height: auto;
		margin: 0 auto;
		padding: 10px 0;
	}
	.contents-inner-sp-2 {
		width: 100%;
		height: auto;
		margin: 0 auto;
		padding: 20px 0;
	}
	.contents-inner-sp-3 {
		width: 100%;
		height: auto;
		margin: 0 auto;
		padding: 30px 0;
	}
	.contents-inner-sp-4 {
		width: 100%;
		height: auto;
		margin: 0 auto;
		padding: 40px 0;
	}
	.contents-inner-sp-5 {
		width: 100%;
		height: auto;
		margin: 0 auto;
		padding: 50px 0;
	}
	.contents-inner-sp-6 {
		width: 100%;
		height: auto;
		margin: 0 auto;
		padding: 60px 0;
	}

}




.contents-1 {
	z-index: 1;
	position: relative;
	width: 100%;
	height: 56.25vw;
	margin: auto;	
	/*
	background-image: url(../2024/img/dummy-1.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain; 
	*/
}

.contents-2 {
	z-index: 1;
	position: relative;
	width: 100%;

}


h1.title1 {
	font-size: 4.0rem;
	line-height: 1;
	font-family: 'SuzukiPROHeadline';
	text-align: center;
	color: #404040;
}

h2.title2 {
	font-size: 3.5rem;
	line-height: 1;
	font-family: 'SuzukiPROHeadline';
	text-align: center;
	color: #404040;
}
h2.title2-2 {
	font-size: 3.5rem;
	line-height: 1;
	font-family: 'SuzukiPROHeadline';
	text-align: left;
	color: #404040;
}

h3.title3-1 {
	font-size: 2.0rem;
	line-height: 1;
	font-family: 'SuzukiPROHeadline';
	text-align: left;
	color: #c1272d;
}
h3.title3-2 {
	font-size: 2.6rem;
	line-height: 1;
	font-family: 'SuzukiPROHeadline';
	text-align: center;
	color: #c1272d;
}


.contents-title {
	width: 100%;
	margin: auto;
	padding: 0;
	font-family: 'SuzukiPROHeadline';
	font-size: 2.4rem;
	line-height: 1;
	text-align: center;
	color: #000;
}

.contents-video-title {
	before: ' ';
	after: ' ';
}
.contents-video-title {
	width: 100%;
	margin: 30px auto;
	font-family: 'SuzukiPROBold';
	font-size: 1.5rem;
	font-weight: normal;
	color: #000000;
	display: flex;
	align-items: center;
}
.contents-video-title:before,
.contents-video-title:after {
	border-top: 1px solid #000000;
	content: ' ';
	flex-grow: 1;
}
.contents-video-title:before,
.contents-video-title:after {
	margin-left: 10px;
	margin-right: 10px;
}

.contents-machine-subtitle {
	before: ' ';
	after: ' ';
}
.contents-machine-subtitle {
	width: 100%;
	margin: 30px auto;
	font-family: 'SuzukiPROBold';
	font-size: 1.5rem;
	font-weight: normal;
	color: #fff;

	display: flex;
	align-items: center;
}
.contents-machine-subtitle span {
	padding: 0 20px;
	background-color: #005fae;
}
.contents-machine-subtitle:before,
.contents-machine-subtitle:after {
	border-top: 1px solid #000000;
	content: ' ';
	flex-grow: 1;
}
.contents-machine-subtitle:before,
.contents-machine-subtitle:after {
	margin-left: 0px;
	margin-right: 0px;
}


.contents-media-subtitle {
	before: ' ';
	after: ' ';
}
.contents-media-subtitle {
	width: 100%;
	margin: 30px auto;
	font-family: 'SuzukiPROBold';
	font-size: 1.5rem;
	font-weight: normal;
	color: #000;

	display: flex;
	align-items: center;
}
.contents-media-subtitle span {
	padding: 0 20px;
	background-color: #fff;
}
.contents-media-subtitle:before,
.contents-media-subtitle:after {
	border-top: 1px solid #000000;
	content: ' ';
	flex-grow: 1;
}
.contents-media-subtitle:before,
.contents-media-subtitle:after {
	margin-left: 0px;
	margin-right: 0px;
}


@media print, screen and (max-width: 1280px) {



}

@media print, screen and (max-width: 768px) {

	h1.title1 {
		font-size: 3.0rem;
	}

	h2.title2 {
		font-size: 2.5rem;
	}
	h2.title2-2 {
		font-size: 2.5rem;
	}

	h3.title3-1 {
		font-size: 1.8rem;
	}
	h3.title3-2 {
		font-size: 2.0rem;
	}


	.contents-title {
		width: 100%;
		font-size: 2.0rem;
	}

	.contents-video-title {
		width: 100%;
		margin: 15px auto;
		font-size: 1.35rem;
	}

	.contents-machine-subtitle {
		width: 100%;
		margin: 30px auto;
		font-size: 1.35rem;
	}

	.contents-media-subtitle {
		width: 100%;
		margin: 30px auto;
		font-size: 1.35rem;
		line-height: 1.3;
	}
	.contents-media-subtitle span {
		max-width: 70%;
		padding: 0 10px;
	}

}

@media print, screen and (max-width: 580px) {

}




#top {
	position: relative;
	left: 0;
	top: 0;
	width: 100%;
}

#top .videoareatop{
	position: relative;
	width: 100%;
	padding: calc(1080 / 1920 * 100%) 0 0;
}
#top .videoareatop video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

#top .mainareatop {
	position: relative;
	width: 100%;
	padding: calc(940 / 1920 * 100%) 0 0;
}
#top .mainareatop img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

#top .mainlogo {
	z-index: 3;
	position: absolute;
	top: calc((100% - 255px) / 2);
	left: calc((100% - 450px) / 2);
	width: 450px;
	height: auto;
}





dl.accordion { 
	width: 100%; 
	margin: 0 auto;
	padding: 0;
	vertical-align: top;
}
dl.accordion dt {
	position: relative;
	z-index: 9;
	/*background: url(../img/question_open.png) center right no-repeat;*/
	margin: 0;
	padding: 8px 0;
	width: 100%;
	height: auto; 
	cursor: pointer;
	vertical-align:top;
	font-family: 'SuzukiPROBold';
	font-size: 1.8rem;
	text-align: center;
	color: #fff;
	background-color: #005fae;
}
dl.accordion dt.last {
	margin: 0 0 0 0;
	padding: 40px 0 40px 0;
}
dl.accordion dt.open {
	vertical-align:top;
	/*background: url(../img/question_close.png) center right no-repeat;*/
}
dl.accordion dt:hover img {
	opacity: 0.8;
}

dl.accordion dd { 
	position: relative;
	z-index: 8;
	top: 2px;
	width: 100%;
	margin: 0 auto;
	padding: 0; 
	display: none;
	height: auto; 
	cursor: pointer;
}
.accordion_open {
	position: absolute;
	z-index: 11;
	background: url(../img/photos/accordion_open.svg) center right no-repeat;
	right: 20px;
    top: 15px;
	width: 25px;
    height: 25px;
    margin: 0;
	padding: 0;
}
.accordion_open.active {
	position: absolute;
	z-index: 11;
	background: url(../img/photos/accordion_close.svg) center right no-repeat;
	right: 20px;
    top: 15px;
	width: 25px;
    height: 25px;
    margin: 0;
	padding: 0;
}
.accordion_btn_h {
	height: auto;
}
.accordion_btn_h2 {
	height: 125px;
}
.accordion_btn_h3 {
	height: 60px;
}


dl.accordion2 { 
	width: 100%; 
	margin: 0 auto;
	padding: 0;
	vertical-align: top;
}
dl.accordion2 dt {
	position: relative;
	z-index: 9;
	/*background: url(../img/question_open.png) center right no-repeat;*/
	margin: 0;
	padding: 8px 0;
	width: 100%;
	height: auto; 
	cursor: pointer;
	vertical-align:top;
	font-family: 'SuzukiPROBold';
	font-size: 1.8rem;
	text-align: center;
	color: #fff;
	background-color: #005fae;
}
dl.accordion2 dt.last {
	margin: 0 0 0 0;
	padding: 40px 0 40px 0;
}
dl.accordion2 dt.open {
	vertical-align:top;
	/*background: url(../img/question_close.png) center right no-repeat;*/
}
dl.accordion2 dt:hover img {
	opacity: 0.8;
}

dl.accordion2 dd { 
	position: relative;
	z-index: 8;
	top: 2px;
	width: 100%;
	margin: 0 auto;
	padding: 0; 
	display: block;
	height: auto; 
	cursor: pointer;
}
.accordion2_open {
	position: absolute;
	z-index: 11;
	background: url(../img/photos/accordion_close.svg) center right no-repeat;
	right: 20px;
    top: 15px;
	width: 25px;
    height: 25px;
    margin: 0;
	padding: 0;
}
.accordion2_open.active {
	position: absolute;
	z-index: 11;
	background: url(../img/photos/accordion_open.svg) center right no-repeat;
	right: 20px;
    top: 15px;
	width: 25px;
    height: 25px;
    margin: 0;
	padding: 0;
}


.sns-block {
	width: 50%;
	height :auto;
	margin: 20px auto;
}

.sns-list {
	z-index: 2;
	position: relative;
	width: max-content;
	height: auto;
	margin: 40px auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.sns-list li {
	width: 75px;
	height: auto;
	text-align: center;
	padding: 0;
	margin: 0 25px;
	overflow: hidden;
}



.photos-list {
	z-index: 2;
	position: relative;
	width: 100%;
	height: auto;
	margin: auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.photos-list li {
	width: calc((100% - 7px) / 4);
	height: auto;
	text-align: left;
	padding: 0;
	margin: 0 2px 2px 0;
	overflow: hidden;
}
.photos-list li:nth-child(4n) {
	margin: 0 0 2px 0;
}


.video-single-block {
	width: 50%;
	height :auto;
	margin: 20px auto;
}

.videos-list {
	z-index: 2;
	position: relative;
	width: 100%;
	height: auto;
	margin: auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.videos-list li {
	width: calc((100% - 7px) / 4);
	height: auto;
	text-align: left;
	padding: 0;
	margin: 0 2px 30px 0;
	overflow: hidden;
}
.videos-list li:nth-child(4n) {
	margin: 0 0 30px 0;
}
.videos-list li a {
	text-decoration: none;
	color: #000;
}

.video-comment {
	width: 100%;
	padding: 5px 0 0 0;
	font-size: 0.9rem;
}












@media print, screen and (max-width: 1280px) {

	#top .mainlogo {
		z-index: 3;
		position: absolute;
		top: 30%;
		left: 35%;
		width: 30%;
		height: auto;
	}

}
@media print, screen and (max-width: 880px) {

	.media-index {
		position: relative;
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-items: center;
		align-content: center;
	}
	.media-list li {
		width: 80%;
		height: auto;
		text-align: left;
		padding: 15px 0;
		margin: auto;
		overflow: hidden;
	}

}

@media print, screen and (max-width: 768px) {

	.news-index {
		position: relative;
		display: block;
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: center;
		align-content: unset;
	}
	.news-date {
		width: 94%;
		margin: auto;
		font-family: 'SuzukiPRORegular';
		font-size: 1.1rem;
		text-align: left;
	}
	.news-title {
		width: 94%;
		margin: 2.5% auto;
		font-family: 'SuzukiPRORegular';
		font-size: 1.1rem;
		text-align: left;
	}
	.news-download {
		width: 94%;
		margin: auto;
		font-family: 'SuzukiPROBold';
		font-size: 1.1rem;
		text-align: left;
	}


	dl.accordion dt {
		margin: 0;
		padding: 8px 40px 8px 15px;
		width: calc(100% - 55px);
		font-size: 1.3rem;
	}
	.accordion_open {
		position: absolute;
		z-index: 11;
		background: url(../img/photos/accordion_open.svg) center right no-repeat;
		right: 15px;
		top: 12.5px;
		width: 20px;
		height: 20px;
		margin: 0;
		padding: 0;
	}
	.accordion_open.active {
		position: absolute;
		z-index: 11;
		background: url(../img/photos/accordion_close.svg) center right no-repeat;
		right: 15px;
		top: 12.5px;
		width: 20px;
		height: 20px;
		margin: 0;
		padding: 0;
	}


	.photos-list li {
		width: calc((100% - 3px) / 2);
		height: auto;
		text-align: left;
		padding: 0;
		margin: 0 2px 2px 0;
		overflow: hidden;
	}
	.photos-list li:nth-child(4n) {
		margin: 0 2px 2px 0;
	}
	.photos-list li:nth-child(2n) {
		margin: 0 0 2px 0;
	}


	.video-single-block {
		width: 80%;
		height :auto;
		margin: 20px auto;
	}

	.videos-list li {
		width: calc((100% - 3px) / 2);
		height: auto;
		text-align: left;
		padding: 0;
		margin: 0 2px 30px 0;
		overflow: hidden;
	}
	.videos-list li:nth-child(4n) {
		margin: 0 0 30px 0;
	}
	.videos-list li:nth-child(2n) {
		margin: 0 0 30px 0;
	}

}

@media print, screen and (max-width: 580px) {

	.video-single-block {
		width: 90%;
		height :auto;
		margin: 20px auto;
	}

}


/* RACE CATEGORY */

.race-category {
	z-index: 2;
	position: relative;
	width: 80%;
	height: auto;
	margin: auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.race-category li {
	width: calc((100% - 101px) / 3);
	height: auto;
	font-family: 'SuzukiPROHeadline';
	font-size: 1.8rem;
	text-align: center;
	margin: 0 50px 0 0;
	border: 1px solid #404040;
}
.race-category li:nth-child(3n) {
	margin: 0 0 0 0;
}
.race-category li:hover {
	background: #fff;
}
.race-category li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 5px 0;
	color: #404040;
}
.race-category li.active {
	background: #fff;
}


@media print, screen and (max-width: 768px) {

	.race-category {
		width: 100%;
	}
	.race-category li {
		width: calc((100% - 41px) / 3);
		font-size: 1.6rem;
		margin: 0 20px 0 0;
	}

}



/* RACE NEWS TOP */

.news-list {
	z-index: 2;
	position: relative;
	width: 100%;
	height: auto;
	margin: auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #404040;
	border-bottom: 1px solid #404040;
}
.news-list li {
	width: 100%;
	height: auto;
	text-align: left;
	padding: 15px 0;
	margin: 0;
	overflow: hidden;
}
.news-list li:nth-child(odd) {
	background-color: #f4f4f4;
}

.news-index {
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
    align-content: center;
    align-items: flex-start;
}
.news-category {
	width: 105px;
	margin: 0 0 0 15px;
	padding: 0;
	font-family: 'SuzukiPROBold';
	font-size: 1.5rem;
	text-align: center;
	color: #fff;
	background: #404040;
}
.news-date {
	width: 120px;
	margin: 0 15px;
	font-family: 'SuzukiPRORegular';
	font-size: 1.6rem;
	text-align: left;
}
.news-title {
	width: calc(100% - 285px);
	margin: 0 15px 0 0;
	font-family: 'SuzukiPRORegular';
	font-size: 1.6rem;
	text-align: left;
}


.banner-list {
	z-index: 2;
	position: relative;
	width: 100%;
	height: auto;
	margin: auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.banner-list li {
	width: calc((100% - 121px) / 4);
	height: auto;
	font-family: 'SuzukiPRORegular';
	font-size: 1.6rem;
	text-align: center;
	padding: 0 0 15px 0;
	margin: 0 40px 0 0;
	overflow: hidden;
}
.banner-list li:nth-child(4) {
	margin: 0 0 0 0;
}

@media print, screen and (max-width: 768px) {


}
@media print, screen and (max-width: 768px) {

	.news-index {
		position: relative;
		display: block;
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: center;
		align-content: unset;
	}
	.news-category {
		width: fit-content;
		margin: 0 0 0 3%;
		padding: 2px 5px;
		font-family: 'SuzukiPROBold';
		font-size: 1.1rem;
		text-align: center;
	}
	.news-date {
		width: 94%;
		margin: 5px auto 0;
		font-family: 'SuzukiPRORegular';
		font-size: 1.1rem;
		text-align: left;
	}
	.news-title {
		width: 94%;
		margin: 5px auto;
		font-family: 'SuzukiPRORegular';
		font-size: 1.1rem;
		text-align: left;
	}


	.banner-list li {
		width: calc((100% - 21px) / 2);
		height: auto;
		font-family: 'SuzukiPRORegular';
		font-size: 1.4rem;
		text-align: center;
		padding: 0 0 15px 0;
		margin: 0 20px 0 0;
		overflow: hidden;
	}
	.banner-list li:nth-child(4) {
		margin: 0 0 0 0;
	}
	.banner-list li:nth-child(2) {
		margin: 0 0 0 0;
	}


}



/* TEAM PROFILE */

.race-contents-list {
	z-index: 2;
	position: relative;
	width: 80%;
	height: auto;
	margin: auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.race-contents-list li {
	width: calc((100% - 3px) / 2);
	height: auto;
	margin: 0;
	font-family: 'SuzukiPROHeadline';
	font-size: 2.0rem;
	text-align: center;
	color: #404040;
}
.race-contents-list li.active {
	padding: 15px 0;
	background: #fff;
}
.race-contents-list li div {
	border-left: 1px solid #404040;
}
.race-contents-list li:nth-child(2) div {
	border-right: 1px solid #404040;
}
.race-contents-list li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 15px 0;
	color: #404040;
}
.race-contents-list li:hover {
	background: #fff;
}
.race-contents-list li:hover a {
	color: #005cb9;
}


.race-team-select-ewc, 
.race-team-select-mx {
	z-index: 2;
	position: relative;
	width: 80%;
	height: auto;
	margin: auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.race-team-select-ewc li, 
.race-team-select-mx li {
	display: grid;
    align-content: stretch;
	width: calc((100% - 4px) / 2);
	height: auto;
	font-family: 'SuzukiPROHeadline';
	font-size: 2.0rem;
	text-align: center;
	color: #404040;
	margin: 0;
}
.race-team-select-ewc li.active {
	padding: 15px 0;
	color: #fff;
	background: #005cb9;
}
.race-team-select-mx li.active {
	padding: 15px 0;
	background: #ffff00;
}
.race-team-select-ewc li a, 
.race-team-select-mx li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 15px 0;
	color: #404040;
	border: 1px solid #404040;
}


.team-logo-team-suzuki {
	max-width: 330px;
	height: auto;
	margin: auto;
}
.team-logo-yoshimura-sert {
	max-width: 380px;
	height: auto;
	margin: auto;
}

.team-logo-progressive {
	max-width: 310px;
	height: auto;
	margin: auto;
}
.team-logo-twisted-tea {
	max-width: 310px;
	height: auto;
	margin: auto;
}

.team-logo-vlr-racing {
	max-width: 280px;
	height: auto;
	margin: auto;
}
.team-logo-wixx-racing {
	max-width: 260px;
	height: auto;
	margin: auto;
}



.race-machine-photo {
	max-width: 640px;
	height: auto;
	margin: auto;	
}
.race-machine-logo-rm {
	max-width: 380px;
	height: auto;
	margin: 20px auto;	
}
.race-machine-logo-r1000r {
	max-width: 380px;
	height: auto;
	margin: 20px auto;	
}
.race-machine-logo-8r {
	max-width: 300px;
	height: auto;
	margin: 20px auto;	
}


.rider-profile-list-2 {
	z-index: 2;
	position: relative;
	width: 80%;
	height: auto;
	margin: auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.rider-profile-list-2 li {
	width: calc((100% - 51px) / 2);
	height: auto;
	font-family: 'SuzukiPROHeadline';
	font-size: 2.0rem;
	text-align: center;
	color: #404040;
}
.rider-profile-list-2 li:nth-child(1) {
	margin: 0 50px 50px 0;
}
.rider-profile-list-2 li:nth-child(2) {
	margin: 0 0 50px 0;
}
.rider-profile-list-2 li:nth-child(3) {
	margin: 0 50px 0 0;
}
.rider-profile-list-2 li:nth-child(4) {
	margin: 0 0 0 0;
}


.rider-profile-photo {
	max-width: 250px;
	height: auto;
	margin: auto;	
}
.rider-profile-name {
	margin: 10px auto;
	font-family: 'SuzukiPROHeadline';
	font-size: 2.6rem;
	text-align: center;
	color: #404040;
}
.rider-profile-birth {
	margin: 10px auto;
	font-family: 'SuzukiPROBold';
	font-size: 1.5rem;
	text-align: center;
	color: #404040;
}
.rider-profile-history {
	max-width: fit-content;
	margin: 30px auto 10px;
	font-family: 'SuzukiPROBold';
	font-size: 1.4rem;
	text-align: left;
	color: #404040;
}


table.rider-profile-results-table {
	width: 100%;
}

table.rider-profile-results-table th {
	width: 40px;
}
table.rider-profile-results-table td {
	width: calc(100% - 40px);
}


@media print, screen and (max-width: 768px) {

	.race-contents-list {
		width: 90%;
	}
	.race-contents-list li {
		width: calc((100% - 3px) / 2);
		font-size: 1.7rem;
	}

	.race-contents-list li.active {
		padding: 10px 0;
	}
	.race-contents-list li a {
		padding: 10px 0;
	}


	.race-team-select-ewc, 
	.race-team-select-mx {
		width: 100%;
	}
	.race-team-select-ewc li, 
	.race-team-select-mx li {
		width: calc((100% - 4px) / 2);
		height: auto;
		font-size: 1.7rem;
	}
	.race-team-select-ewc li.active {
		padding: 10px 10px;
	}
	.race-team-select-mx li.active {
		padding: 10px 10px;
	}
	.race-team-select-ewc li a, 
	.race-team-select-mx li a {
		padding: 10px 10px;
	}


	.team-logo-team-suzuki {
		max-width: 50%;
	}
	.team-logo-yoshimura-sert {
		max-width: 60%;
	}

	.team-logo-progressive {
		max-width: 50%;
	}
	.team-logo-twisted-tea {
		max-width: 50%;
	}

	.team-logo-vlr-racing {
		max-width: 50%;
	}
	.team-logo-wixx-racing {
		max-width: 50%;
	}


	.race-machine-photo {
		max-width: 100%;	
	}
	.race-machine-logo-rm {
		max-width: 70%;
	}
	.race-machine-logo-r1000r {
		max-width: 70%;	
	}
	.race-machine-logo-8r {
		max-width: 60%;	
	}


	.rider-profile-list-2 {
		width: 90%;
	}
	.rider-profile-list-2 li {
		width: 100%;
		font-size: 1.7rem;
	}
	.rider-profile-list-2 li:nth-child(1) {
		margin: 0 0 30px 0;
	}
	.rider-profile-list-2 li:nth-child(2) {
		margin: 0 0 30px 0;
	}
	.rider-profile-list-2 li:nth-child(3) {
		margin: 0 0 30px 0;
	}
	.rider-profile-list-2 li:nth-child(4) {
		margin: 0 0 0 0;
	}


	.rider-profile-photo {
		max-width: 250px;
		width: 70%;
		height: auto;
		margin: auto;	
	}
	.rider-profile-name {
		margin: 10px auto;
		font-family: 'SuzukiPROHeadline';
		font-size: 2.0rem;
		text-align: center;
		color: #404040;
	}
	.rider-profile-birth {
		margin: 10px auto;
		font-family: 'SuzukiPROBold';
		font-size: 1.4rem;
		text-align: center;
		color: #404040;
	}
	.rider-profile-history {
		max-width: fit-content;
		margin: 30px auto 10px;
		font-family: 'SuzukiPROBold';
		font-size: 1.3rem;
		text-align: left;
		color: #404040;
	}

}



/* RACE REPORT */

.race-report-date {
	margin: 20px 0;
	font-family: 'SuzukiPROBold';
	font-size: 1.8rem;
	text-align: left;
	color: #404040;
}

.race-report-img {
	max-width: 100%;
	height: auto;
	margin: 30px auto;
}

.race-report-txt {
	font-family: 'SuzukiPRORegular';
	font-size: 1.6rem;
	text-align: left;
	color: #404040;
}

.race-report-separate {
	width: 100%;
	height: 1px;
	margin: 50px 0;
	border-bottom: 1px solid #808080;
}


.raceschedule-1 {
	width: 100%;
	padding-top: 10px;
}
.raceschedule-1 select {
	width: 100%;
	padding: 10px;
	font-family: 'SuzukiPROBold';
	font-size: 1.8rem;
	text-align: left;
	color: #404040;
}

.raceschedule-2 {
	z-index: 2;
	position: relative;
	height: auto;
	margin: auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #404040;
	border-bottom: 1px solid #404040;
}
.raceschedule-2 li {
	width: 100%;
	height: auto;
	font-family: 'SuzukiPROBold';
	font-size: 1.6rem;
	text-align: left;
	padding: 5px 40px;
	margin: 0;
	overflow: hidden;
}
.raceschedule-2 li:nth-child(odd) {
	background-color: #f4f4f4;
}


.race-series-name {
	width: 100%;
	padding-bottom: 5px;
	font-family: 'SuzukiPROHeadline';
	font-size: 2.2rem;
	text-align: center;
	color: #404040;
}


.race-series-name.ama, 
.raceschedule-2.ama {
	max-width: 450px;
	margin-left: auto;
	margin-right: auto;
}
.race-series-name.ewc, 
.raceschedule-2.ewc {
	max-width: 450px;
	margin-left: auto;
	margin-right: auto;
}
.race-series-name.worldspb, 
.raceschedule-2.worldspb {
	max-width: 470px;
	margin-left: auto;
	margin-right: auto;
}


.race-video-wrap {
	max-width: 1024px;
	height: auto;
	margin: 60px auto;
}
.race-video-title {
	margin: 20px auto;
	font-family: 'SuzukiPROHeadline';
	font-size: 2.4rem;
	text-align: center;
	color: #404040;
}
.race-video-block {
	position: relative;
	width: 100%;
	height: auto;
	padding-bottom: 56.25%;
}
.race-video-block video {
	position: absolute;
	width: 100%;
	height: 100%;
}


@media print, screen and (max-width: 768px) {

	.race-report-date {
		margin: 15px 0;
		font-size: 1.5rem;
	}

	.race-report-txt {
		font-size: 1.4rem;
	}

	.raceschedule-1 select {
		width: 100%;
		padding: 7px;
		font-size: 1.5rem;
	}

	.raceschedule-2 li {
		font-size: 1.4rem;
		padding: 5px 10px;
	}


	.race-video-title {
		margin: 20px auto;
		font-size: 2.0rem;
	}


	.race-series-name {
		padding-bottom: 3px;
		font-size: 1.7rem;
	}


}


