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

/* FireFoxFadeブレ防止 */

img { display:block; box-shadow: #000 0 0 0; }

/* 全体・枠作り */

html,body {
	height:100%;
}

html {
	font-size:62.5%;
}

img { display:block; }

p { color:#373333;}
a { text-decoration: none;color:deepskyblue;}
a:hover {text-decoration: underline;}

.inv {opacity: 0; transition:0.7s; transform:translate(0,20px); }
.vie {opacity: 1.0; transform:translate(0);}

body {
	font-family:"メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Verdana, sans-serif;
	text-align:center;
	min-width: 100%;
	font-size: 1.0rem;
	overflow-x: hidden;
}

@media screen and (max-width: 1000px) {
   body { overflow-x: auto; }
}

#PageWrapper {
	width:100%;
	position: relative;
	min-height: 100vh;
}

#Mainvisual {
	background:url("../img/mv_mobile.jpg") center top no-repeat;
	width:100%;
	padding-top:150%;
	position: relative;
	background-size:cover;
}

.mv {
	display: none;
}

.mv_logo {
	display: none;
}

h1 {display: none;}
h2 {display: none;}

.badge {
	display: none;
}

#Menu {
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffdef2+0,ffbee5+11,acb1f6+90,cdd0fa+100 */
background: rgb(255,222,242); /* Old browsers */
background: -moz-linear-gradient(top,  rgba(255,222,242,1) 0%, rgba(255,190,229,1) 11%, rgba(172,177,246,1) 90%, rgba(205,208,250,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(255,222,242,1) 0%,rgba(255,190,229,1) 11%,rgba(172,177,246,1) 90%,rgba(205,208,250,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(255,222,242,1) 0%,rgba(255,190,229,1) 11%,rgba(172,177,246,1) 90%,rgba(205,208,250,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffdef2', endColorstr='#cdd0fa',GradientType=0 ); /* IE6-9 */
	width:100%;
	position: relative;
	border-top:5px solid #8568ac;
	border-bottom:5px solid #8568ac;
}

#Menu ul {
	display: flex;
	width:100%;
	justify-content: space-between;
	position: relative;
	margin:0 auto;
}

#Menu ul li {
	width:20%;
	display: block;
	position: relative;
}

#Menu ul li a {
	width:100%;
	padding-top:100%;
	transition: all 0.3s;
	display: block;
}

#Menu ul li.menu01 a {background:url("../img/menu01m.png") center top repeat; background-size:cover;}
#Menu ul li.menu02 a {background:url("../img/menu02m.png") center top repeat; background-size:cover;}
#Menu ul li.menu03 a {background:url("../img/menu03m.png") center top repeat; background-size:cover;}
#Menu ul li.menu04 a {background:url("../img/menu04m.png") center top repeat; background-size:cover;}
#Menu ul li.menu05 a {background:url("../img/menu05m.png") center top repeat; background-size:cover;}

#Menu ul li a:hover {
	opacity: 0.5;
}

#About {
	background:url("../img/about_bg.jpg") center top no-repeat;
	background-size:cover;
	padding:60px 0 120px;
}

h3 {
	width:100%;
	padding-top:21.8%;
	text-indent: -9999px;
	overflow: hidden;
}

#About h3 {
	background:url("../img/head_about.png") center top no-repeat;background-size:contain;
}

.about_logo {
	background:url("../img/logo.png") left top no-repeat;
	background-size:contain;
	width:70%;
	padding-top:44.9%;
	margin:10% auto 10%;
}

.about_txt {
	width:90%;
	margin:0 auto;
	position: relative;
	text-align: left;
	line-height: 1.8;
}

a.about_link {
	background-color:#fff;
	display: block;
	width:137px;
	height:33px;
	position: absolute;
	left:50%;
	margin-left:-106px;
	top:80px;
	transition: all 0.3s;
	opacity: 0;
}

a:hover.about_link {
	opacity: 0.4;
}

.about_txt p {
	font-size:1.8rem;
}

#JeGT {
	background:url("../img/jegt_bg.jpg") center top no-repeat;
	background-size:cover;
	width:100%;
	padding:20% 0 20%;
}

.jegt_logo {
	background:url("../img/jegt_logo.jpg") center center no-repeat;
	width:90%;
	padding-top:40%;
	background-size:cover;
	margin:0 auto 10%;
}

.jegt_txt {
	width:90%;
	margin:0 auto 10%;
	
	text-align: left;
}

.jegt_txt p {
	font-size:1.8rem;
	line-height: 1.8;
	color:#fff;
}

.jegt_link {
	width:100%;
	margin:0 auto;
}

.jegt_link a {
	background:url("../img/jegt_link.png") center top no-repeat;
	width:70%;
	padding-top:16.06%;
	background-size:contain;
	display: block;
	transition: all 0.3s;
	margin:0 auto;
}

#Racing_car {
	width:100%;
	display: block;
	background-color:#fff;
	padding-bottom:60px;
}

.car_head {
	width:100%;
	background:url("../img/car_head.jpg") center center no-repeat;
	background-size:cover;
	box-sizing: border-box;
	padding:20% 0;
	margin-bottom:10%;
}

.car_head h4 {
	background:url("../img/head_racing_car.png") center top no-repeat;background-size:contain;
	width:100%;
	padding-top:21.8%;
	text-indent: -9999px;
	overflow: hidden;
}

.car_preview {
	width:100%;
	position: relative;
	display: flex;
	padding-top:10px;
}

.car_left {
}

.car_right {
}

.car_center {
	width:100%;
}

.car_center ul {
	width:90%;
	margin:0 auto;
	position: relative;
}

.car_center ul li {
	margin-bottom:3%;
}

.car_center ul li a {
	display: block;
	transition: all 0.3s;
	width:100%;
	padding-top:56.25%;
}

li.prev01 a {background:url("../img/zoom01.jpg") center top no-repeat;background-size:cover;}
li.prev02 a {background:url("../img/zoom02.jpg") center top no-repeat;background-size:cover;}
li.prev03 a {background:url("../img/zoom03.jpg") center top no-repeat;background-size:cover;}
li.prev04 a {background:url("../img/zoom04.jpg") center top no-repeat;background-size:cover;}
li.prev05 a {background:url("../img/zoom05.jpg") center top no-repeat;background-size:cover;}

#Racing_car p {
	width:90%;
	margin:0 auto;
	font-size:1.4rem;
	color:gray;
}

#Driver {
	background:url("../img/driver_bg.jpg") center top no-repeat;
	background-size:cover;
	width:100%;
	padding:20% 0 20%;
}

#Driver h3 {
	background:url("../img/head_driver.png") center top no-repeat;
	background-size:contain;
}

.driver_wrap {
	width:90%;
	margin:10% auto 0;
	position: relative;
}

.driver_a {
	background:url("../img/driver_a.jpg") center top no-repeat;
	background-size:cover;
	width:100%;
	padding-top:117.73%;
	position: relative;
	margin-bottom:5%;
}

.driver_b {
	background:url("../img/driver_b.jpg") center top no-repeat;
	background-size:cover;
	width:100%;
	padding-top:117.73%;
	position: relative;
	margin-bottom:5%;
}

.driver_c {
	background:url("../img/driver_c.jpg") center top no-repeat;
	background-size:cover;
	width:100%;
	padding-top:117.73%;
	position: relative;
	margin-bottom:5%;
}

.driver_d {
	background:url("../img/driver_d.jpg") center top no-repeat;
	background-size:cover;
	width:100%;
	padding-top:117.73%;
	position: relative;
}

ul.sns {
	width:58%;
	display: flex;
	justify-content: flex-end;
	position: absolute;
	top:64%;
	left:0;
	margin-left:0;
}

ul.sns li {
	width:15%;
	display: block;
	box-shadow:0 0 5px rgba(0,0,0,0.2);
	background-color:#fff;
	border-radius: 3px;
	position: relative;
	margin-left:5%;
}

ul.sns li a {
	width:100%;
	padding-top:100%;
	display: block;
	border-radius: 3px;
	overflow: hidden;
	opacity: 1;
	transition: all 0.3s;
}

ul.sns li.sns01 a {background:url("../img/sns01.png") left top no-repeat;background-size:cover;}
ul.sns li.sns02 a {background:url("../img/sns02.png") left top no-repeat;background-size:cover;}
ul.sns li.sns03 a {background:url("../img/sns03.png") left top no-repeat;background-size:cover;}
ul.sns li.sns04 a {background:url("../img/sns04.png") left top no-repeat;background-size:cover;}

#Sponsors {
	width:100%;
	background:#fff;
	padding:90px 0 120px;
}

#Sponsors h3 {
	background:url("../img/head_sponsors.png") center top no-repeat;
	background-size:contain;
}

ul.sponsors_list {
	width:80%;
	margin:0 auto 0;
	position: relative;
}

ul.sponsors_list li {
	width:100%;
	margin-bottom:3%;
}

ul.sponsors_list li a {
	width:100%;
	padding-top:34.29%;
	display: block;
	transition: all 0.3s;
}

.spo00 {
	width:80%;
	margin:10% auto 0;
}

.spo00 a {
	width:100%;
	padding-top:34.29%;
	display: block;
	background:url("../img/spo_fcmg.png") center top no-repeat; background-size:contain;
	margin-bottom:3%;
}

li.spo01 a {background:url("../img/spo_cstax.png") center top no-repeat; background-size:contain;}
li.spo02 a {background:url("../img/spo_fcmg.png") center top no-repeat; background-size:contain;}
li.spo03 a {background:url("../img/spo_melon.png") center top no-repeat; background-size:contain;}
li.spo04 a {background:url("../img/spo_dkassociation.png") center top no-repeat; background-size:contain;}
li.spo05 a {background:url("../img/spo_ppe.png") center top no-repeat; background-size:contain;}

footer {
	background:url("../img/footer.jpg") center top no-repeat;
	background-size:cover;
	padding:10% 0;
}

.foot_logo {
	background:url("../img/logo.png") left top no-repeat;
	background-size:contain;
	width:70%;
	padding-top:44.9%;
	margin:0 auto 10%;
}

.copyright {
	font-size:1.4rem;
	color:gray;
	margin-bottom:8px;
}

.contact {
	font-size:1.6rem;
	font-weight: bold;
	margin-bottom:24px;
}

.backlink {
	width:100%;
	display: block;
	margin:0 auto;
	position: relative;
}

.backlink a {
	background:url("../img/portal_return.png") center top no-repeat;
	background-size:cover;
	width:80%;
	padding-top:17.12%;
	display: block;
	margin:0 auto;
}