
.race-preview__detail-txt h3,
.bnr-circuit-header h2,
/*.motor-kv__race-title span,*/
.race-index__list-item-rd span:nth-child(2),
.race-index__list-item-title h4,
.race-index__list-item-date,
.pre-season-index__list-item-title h4,
.pre-season-index__list-item-date,
.race-index-header h3{
	font-family: "UD新ゴNT M", sans-serif;
}
.bg-title h2{
	font-family: "ナウ-GB",sans-serif;
}

.race-index__list-item .cs figure:before{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
	z-index: 20;
}

.motor-kv__race-title span{
	font-weight: 600;
}

@media screen and (min-width: 768px) {


	#schedule{
		padding-bottom: 80px;
	}

	.sec-race-header h2{
		text-align: center;
		font-size: 32px;
		line-height: 1.4;
	}
	.sec-race-header + div{
		margin-top: 80px;
	}

	#race-schedule{
		padding: 60px 80px;
	}

	#race-schedule .sec-race-header + div{
		margin-top: 60px;
	}


/* motor-kv__race-text
====================================================================*/

	.motor-kv__race-text{
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		width: 90%;
		text-align: center;
		z-index: 50;
	}
	.motor-kv__race-text > div,
	.motor-kv__race-text a{
		display: block;
		color: #fff;
	}
	.motor-kv__race-flag{
		margin: auto;
		width: 63px;
	}
	.motor-kv__race-rd{
		margin: 30px 0 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.motor-kv__race-rd span:nth-child(1){
		font-size: 18px;
		font-weight: 600;
	}
	.motor-kv__race-rd span:nth-child(2){
		position: relative;
		padding: 0 0 0 15px;
		margin: 0 0 0 15px;
		font-size: 42px;
		font-weight: 600;
	}
	.motor-kv__race-rd span:nth-child(2):before{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		left: 0;
		bottom: 0;
		display: block;
		width: 1px;
		height: 18px;
		background: rgba(255,255,255,0.3);
	}
	.motor-kv__race-title{
		margin: 20px 0 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.motor-kv__race-title span{
		font-size: 28px;
	}
	.motor-kv__race-title span:nth-child(2){
		position: relative;
		padding: 0 0 0 15px;
		margin: 0 0 0 15px;
	}
	.motor-kv__race-title span:nth-child(2):before{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		left: 0;
		bottom: 0;
		display: block;
		width: 1px;
		height: 28px;
		background: rgba(255,255,255,0.3);
	}

	.motor-kv__race-date{
		position: relative;
		margin: 30px 0 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.motor-kv__race-date span{
		font-size: 18px;
		font-weight: 600;
	}
	.motor-kv__race-date span:nth-child(2){
		position: relative;
		padding: 0 40px 0 15px;
		margin: 0 0 0 15px;
	}
	.motor-kv__race-date span:nth-child(2):before{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		left: 0;
		bottom: 0;
		display: block;
		width: 1px;
		height: 28px;
		background: rgba(255,255,255,0.3);
	}
	.motor-kv__slide:after{
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		display: block;
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.25);
	}
	.motor-kv__race-text a .motor-kv__race-date span:nth-child(2):after {
		content: "";
		display: block;
		position: absolute;
		margin: auto;
		top: 0;
		right: 0;
		bottom: 2px;
		width: 22px;
		height: 22px;
		background: url(../../../shared/img/arrow_kv_link.png) 0 0 no-repeat;
		background-size: 100% 100%;
	}



/* race-index-header
====================================================================*/

	.race-index-header{
		overflow: hidden;
	}
	.race-index-header h3{
		font-size: 24px;
	}
	.race-index-header h3 span{
		position: relative;
		display: inline-block;
		padding:0 18px 0 0;
	}
	.race-index-header h3 span:after{
		content: "";
		top: 50%;
		left: 100%;
		bottom: 0;
		position: absolute;
		display: block;
		width: 100vw;
		height: 1px;
		border-top: 1px dotted rgba(0,0,0,0.3);
		transform: translateY(-50%);
	}
	.race-index-header + div{
		margin-top: 40px;
	}


/* race-index-col
====================================================================*/

	.race-index-col + .race-index-col{
		margin-top: 80px;
	}


/* pre-season-index__list
====================================================================*/

	.race-index__list{
		display: flex;
		margin: 0 -12px;
		flex-wrap: wrap;
	}
	.race-index__list .race-index__list-item{
		width: 25%;
		padding: 0 12px;
	}
	.race-index__list .race-index__list-item:nth-child(n+5){
		margin-top: 30px;
	}

	.latest-race-index .race-index__list-item figure:after,
	.race-index__list-item-latest figure:after{
		content: "";
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.3);
		z-index: 20;
	}
	.race-index__list-item figure{
		position: relative;
		z-index: 10;
		overflow: hidden;
	}
	.race-index__list-item a .race-index__list-item-thumb img{
		transition: transform 600ms ease;
	}
	.race-index__list-item a:hover .race-index__list-item-thumb img{
		transform: scale(1.1);
	}

	.race-index__list-item-rd{
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		width: 100%;
		display: flex;
		align-items: center;
		text-align: center;
		justify-content: center;
		color: #fff;
		z-index: 50;
	}
	.race-index__list-item-rd span:nth-child(1){
		font-size: 12px;
		font-weight: 600;
	}
	.race-index__list-item-rd span:nth-child(2){
		position: relative;
		padding: 0 0 0 10px;
		margin: 0 0 0 10px;
		font-size: 24px;
		font-size: min(24px,1.5vw);
	}
	.race-index__list-item-rd span:nth-child(2):before{
		content: "";
		display: block;
		position: absolute;
		margin: auto;
		left: 0;
		top: 0;
		bottom:0;
		width: 1px;
		height: 12px;
		background: rgba(255,255,255,0.3);
		z-index: 30;
	}


	.race-index__list-item-flag{
		position: absolute;
		top: 0;
		left: 0;
		width: 40px;
		z-index: 50;
	}


	.race-index__list-item-txt{
		margin: 15px 0 0;
	}
	.race-index__list-item-date{
		font-size: 14px;
	}
	.race-index__list-item-title{
		margin: 5px 0 0;
	}
	.race-index__list-item-title h4{
		line-height: calc(22/14);
		font-size: 14px;
		display: flex;
		flex-wrap: wrap;
	}
	.race-index__list-item-title h4 span:nth-child(1){
		position: relative;
		line-height: calc(22/14);
		font-size: 14px;
		padding: 0 18px 0 0;
	}
	.race-index__list-item-title h4 span:nth-child(1):after{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		bottom: 0;
		right: 9px;
		display: block;
		width: 1px;
		height: 14px;
		opacity: 0.6;
		background: #35363B;
	}


/*	.race-index-slide .race-index__list-item-rd span:nth-child(1){
		font-size: 10px;
		font-weight: 600;
	}
	.race-index-slide .race-index__list-item-rd span:nth-child(2){
		position: relative;
		padding: 0 0 0 5px;
		margin: 0 0 0 5px;
		font-size: min(18px,1vw);
		font-size: 18px;
	}*/
	.race-index-slide .race-index__list-item-flag{
		position: absolute;
		top: 0;
		left: 0;
		width: 38px;
		z-index: 50;
	}



/* race-preview-contents
====================================================================*/

	.race-preview-contents{
		display: flex;
	}
	.race-preview-contents figure{
		position: relative;
		width: 50%;
	}
	.race-preview-contents figure img{
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.race-preview-contents .race-preview__detail{
		overflow: hidden;
		position: relative;
		display: flex;
		align-items: center;
		padding: 80px min(5.4vw,80px);
		width: 50%;
		background: #FAFAFA;
		min-height: 740px;
	}
	.race-preview__detail-txt{
		margin: auto;
		width: 100%;
		max-width: 600px;
	}
	.race-preview__detail-txt h3{
		font-size: 32px;
		line-height: 1.5;
	}
	.race-preview__detail--lead{
		margin: 40px 0 0;
	}
	.race-preview__detail--lead p{
		line-height: calc(30/16);
	}



/* bg-title
====================================================================*/

	.bg-title{
		position: absolute;
	}
	.bg-title-v{
		left: -30px;
	}
	.bg-title-v h2{
		font-size: 200px;
		letter-spacing: -0.05em;
		writing-mode: vertical-lr;
		color: rgba(0,0,0,0.05);
	}
	.bg-title-h{
		top: -50px;
		left: 50%;
		transform: translateX(-50%);
	}
	.bg-title-h h2{
		font-size: 240px;
		letter-spacing: -0.05em;
	}
	.bg-title__gr{
		color: rgba(0,0,0,0.05);
	}



/* race-result
====================================================================*/

	#race-result .no-result{
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 300px;
	}
	#race-result .no-result p{
		line-height: 1.5;
		font-weight: 600;
	}



/* bnr-circuit
====================================================================*/

	.bnr-circuit a{
		position: relative;
		display: block;
	}
	.bnr-circuit a:before {
		content: "";
		display: block;
		position: absolute;
		margin: auto;
		top: 0;
		bottom: 0;
		right: min(20px,5.40vw);
		width: 13px;
		height: 22px;
		background: url(../../../shared/img/arrow_wh_r.svg) 0 0 no-repeat;
		background-size: 100% 100%;
		z-index: 20;
	}
	.bnr-circuit figure{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}
	.bnr-circuit figure:after{
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		display: block;
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.3);
	}
	.bnr-circuit figure img{
		object-fit: cover;
		width: 100%;
		height: 100%;
		transition: transform 600ms ease;
	}
	.bnr-circuit a:hover img{
		transform: scale(1.1);
	}

	.bnr-circuit-header{
		position: relative;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		padding: 60px;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		min-height: 400px;
	}
	.bnr-circuit-header h2{
		font-size: 32px;
	}
	.bnr-circuit-header__lead{
		margin: 50px 0 0;
		text-align: center;
	}
	.bnr-circuit-header__lead p{
		line-height: 1.8;
		font-weight: 600;
	}



}

@media screen and (min-width: 768px) and (max-width: 1180px){

	.race-index__list{
		display: flex;
		flex-wrap: wrap;
	}
	.race-index__list .race-index__list-item{
		width: 33.3333%;
	}
	.race-index__list .race-index__list-item:nth-child(n+4){
		margin-top: 30px;
	}

}




@media screen and (max-width: 767px) {

	#schedule{
		padding-bottom: 80px;
	}


	.sec-race-header h2{
		text-align: center;
		font-size: 18px;
		line-height: 1.4;
	}
	.sec-race-header + div{
		margin-top: 35px;
	}


/* motor-kv__race-text
====================================================================*/

	.motor-kv__race-text{
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		width: 100%;
		padding: 0 30px;
		text-align: center;
		z-index: 50;
	}
	.motor-kv__race-text > div,
	.motor-kv__race-text a{
		display: block;
		color: #fff;
	}
	.motor-kv__race-flag{
		margin: auto;
		width: 32px;
	}
	.motor-kv__race-rd{
		margin: 20px 0 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.motor-kv__race-rd span:nth-child(1){
		font-size: 12px;
		font-weight: 600;
	}
	.motor-kv__race-rd span:nth-child(2){
		position: relative;
		padding: 0 0 0 10px;
		margin: 0 0 0 10px;
		font-size: 20px;
		font-weight: 600;
	}
	.motor-kv__race-rd span:nth-child(2):before{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		left: 0;
		bottom: 0;
		display: block;
		width: 1px;
		height: 14px;
		background: rgba(255,255,255,0.3);
	}
	.motor-kv__race-title{
		margin: 20px 0 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.motor-kv__race-title span{
		font-size: 13px;
	}
	.motor-kv__race-title span:nth-child(2){
		position: relative;
		padding: 0 0 0 10px;
		margin: 0 0 0 10px;
	}
	.motor-kv__race-title span:nth-child(2):before{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		left: 0;
		bottom: 0;
		display: block;
		width: 1px;
		height: 14px;
		background: rgba(255,255,255,0.3);
	}

	.motor-kv__race-date{
		position: relative;
		margin: 20px 0 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.motor-kv__race-date span{
		font-size: 11px;
		font-weight: 600;
	}
	.motor-kv__race-date span:nth-child(2){
		position: relative;
		padding: 0 30px 0 10px;
		margin: 0 0 0 10px;
	}
	.motor-kv__race-date span:nth-child(2):before{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		left: 0;
		bottom: 0;
		display: block;
		width: 1px;
		height: 14px;
		background: rgba(255,255,255,0.3);
	}
	.motor-kv__slide:after{
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		display: block;
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.25);
	}
	.motor-kv__race-text a .motor-kv__race-date span:nth-child(2):after {
		content: "";
		display: block;
		position: absolute;
		margin: auto;
		top: 0;
		right: 0;
		bottom: 2px;
		width: 18px;
		height: 18px;
		background: url(../../../shared/img/arrow_kv_link.png) 0 0 no-repeat;
		background-size: 100% 100%;
	}



/* race-index-header
====================================================================*/

	.race-index-header{
		overflow: hidden;
	}
	.race-index-header h3{
		font-size: 16px;
	}
	.race-index-header h3 span{
		position: relative;
		display: inline-block;
		padding:0 10px 0 0;
	}
	.race-index-header h3 span:after{
		content: "";
		top: 50%;
		left: 100%;
		bottom: 0;
		position: absolute;
		display: block;
		width: 100vw;
		height: 1px;
		border-top: 1px dotted rgba(0,0,0,0.3);
		transform: translateY(-50%);
	}
	.race-index-header + div{
		margin-top: 30px;
	}



/* race-index-col
====================================================================*/

	.race-index-col + .race-index-col{
		margin-top: 60px;
	}



/* pre-season-index__list
====================================================================*/


	.race-index__list .race-index__list-item + .race-index__list-item{
		margin-top: 30px;
	}

	.latest-race-index .race-index__list-item figure:after,
	.race-index__list-item-latest figure:after{
		content: "";
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.4);
		z-index: 20;
	}

	.race-index__list-item figure{
		position: relative;
		z-index: 10;
		overflow: hidden;
	}
	.race-index__list-item-rd{
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		width: 100%;
		display: flex;
		align-items: center;
		text-align: center;
		justify-content: center;
		color: #fff;
		z-index: 50;
	}
	.race-index__list-item-rd span:nth-child(1){
		font-size: 10px;
		font-weight: 600;
	}
	.race-index__list-item-rd span:nth-child(2){
		position: relative;
		padding: 0 0 0 10px;
		margin: 0 0 0 10px;
		font-size: 20px;
		font-size: min(20px,5.3vw);
	}
	.race-index__list-item-rd span:nth-child(2):before{
		content: "";
		display: block;
		position: absolute;
		margin: auto;
		left: 0;
		top: 0;
		bottom:0;
		width: 1px;
		height: 12px;
		background: rgba(255,255,255,0.3);
		z-index: 30;
	}


	.race-index__list-item-flag{
		position: absolute;
		top: 0;
		left: 0;
		width: 40px;
		z-index: 50;
	}


	.race-index__list-item-txt{
		margin: 15px 0 0;
	}
	.race-index__list-item-date{
		font-size: 14px;
	}
	.race-index__list-item-title{
		margin: 5px 0 0;
	}
	.race-index__list-item-title h4{
		line-height: calc(22/14);
		font-size: 14px;
		display: flex;
		flex-wrap: wrap;
	}
	.race-index__list-item-title h4 span:nth-child(1){
		position: relative;
		line-height: calc(22/14);
		font-size: 14px;
		padding: 0 18px 0 0;
	}
	.race-index__list-item-title h4 span:nth-child(1):after{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		bottom: 0;
		right: 9px;
		display: block;
		width: 1px;
		height: 12px;
		opacity: 0.6;
		background: #35363B;
	}

	.race-index-slide .race-index__list-item-rd span:nth-child(1){
		font-size: 9px;
		font-weight: 600;
	}
	.race-index-slide .race-index__list-item-rd span:nth-child(2){
		position: relative;
		padding: 0 0 0 5px;
		margin: 0 0 0 5px;
		font-size: 12px;
	}
	.race-index-slide .race-index__list-item-flag{
		position: absolute;
		top: 0;
		left: 0;
		width: 38px;
		z-index: 50;
	}


/* race-preview-contents
====================================================================*/


	.race-preview-contents .race-preview__detail{
		overflow: hidden;
		position: relative;
		display: flex;
		align-items: center;
		padding: 80px 25px;
		background: #FAFAFA;
	}
	.race-preview-cs .race-preview__detail{
		min-height: 360px;
	}

	.race-preview__detail-txt{
		margin: auto;
		width: 100%;
		max-width: 600px;
		text-align: center;
	}
	.race-preview__detail-txt h3{
		font-size: min(20px,7.46vw);
		line-height: 1.5;
	}
	.race-preview__detail--lead{
		margin: 20px 0 0;
	}
	.race-preview__detail--lead p{
		line-height: calc(30/16);
	}



/* bg-title
====================================================================*/

	.bg-title{
		position: absolute;
	}
	.bg-title-v{
		top: -15px;
		left: 50%;
		transform: translateX(-50%);
	}
	.bg-title-v h2{
		font-size: 100px;
		letter-spacing: -0.05em;
		color: rgba(0,0,0,0.05);
	}
	.bg-title-h{
		top: -15px;
		left: 50%;
		transform: translateX(-50%);
	}
	.bg-title-h h2{
		font-size: 100px;
		letter-spacing: -0.05em;
	}
	.bg-title__gr{
		color: rgba(0,0,0,0.05);
	}



/* race-result
====================================================================*/

	#race-result .no-result{
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 200px;
	}
	#race-result .no-result p{
		line-height: 1.5;
		font-weight: 600;
	}



/* bnr-circuit
====================================================================*/

	.bnr-circuit a{
		position: relative;
		display: block;
	}
	.bnr-circuit a:before {
		content: "";
		display: block;
		position: absolute;
		margin: auto;
		bottom: 15px;
		right: 15px;
		width: 8px;
		height: 14px;
		background: url(../../../shared/img/arrow_wh_r.svg) 0 0 no-repeat;
		background-size: 100% 100%;
		z-index: 20;
	}
	.bnr-circuit figure{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}
	.bnr-circuit figure:after{
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		display: block;
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.3);
	}
	.bnr-circuit figure img{
		object-fit: cover;
		width: 100%;
		height: 100%;
		transition: transform 600ms ease;
	}

	.bnr-circuit-header{
		position: relative;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		padding: 60px 30px;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		min-height: 300px;
	}
	.bnr-circuit-header h2{
		font-size: 20px;
	}
	.bnr-circuit-header__lead{
		margin: 25px 0 0;
		text-align: left;
	}
	.bnr-circuit-header__lead p{
		line-height: 1.8;
		font-weight: 600;
	}




}












