@charset "UTF-8";
/* 全体設定 */
html{
	
	scroll-behavior: smooth;
}

*{
	color: var(--color-black);
	font-family: 'Ferrari-Sans', 'Noto Sans JP', sans-serif;
	font-style: normal;
	font-weight: 400;
	word-wrap: break-word;
	box-sizing: border-box;
	line-height: 1;
	margin: 0;
	padding: 0;
}

body *{
	box-sizing:border-box;
}

#wrapper{
	max-width:1080px;
	margin:0 auto 0;
	font-family: 'Noto Sans JP';
	font-feature-settings: "palt";
}
.wrapper_inner {
	max-width: 860px;
	margin:0 auto;
	font-size: 100%;
	overflow: hidden;
	width:90%;
}

.wrapper_inner div img{
	margin:0 auto;
	width:100%;
}

.wrapper a{
	text-decoration: none;
}
a:link {
 color: #000;
 text-decoration: underline;
}

a:visited {
 color: #000;
 text-decoration: underline;
}

a:hover {}

a:active {
 color: #000;
 text-decoration: underline;
}

#wrapper img {
	vertical-align:top;
}

/*---------------------------*/
header{
	position: relative;
	img{
		width: 100%;
	}
	color:#fff;
	.h_in_1{
		position: absolute;
		top: 46%;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		display:grid;
		grid-template-columns: auto 1fr;
		align-items: center;
		width: fit-content;
		gap:1vw;
		font-size: clamp(0.5rem, 0.205rem + 1.47vw, 1.2rem);
		
		.h_tx_01{
			font-weight:700;
			line-height:1.2;
			border:1px solid #fff;
			padding:0.4vw 0.8vw;
			text-align:center;
			white-space: nowrap;
			
			span{
				font-family: "vw_t_b";
				vertical-align:-3%;
			}
		}
		.h_tx_02{
			font-weight:700;
			line-height:1.3;
			white-space: nowrap;
		}
	}
	
	.h_in_2{
		position: absolute;
		bottom: 4%;
		left: 50%;
		width:100%;
		text-align:center;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		
		.h_in_2_tx1{
			font-size: clamp(1.1rem, 0.384rem + 3.58vw, 2.8rem);
			font-weight:700;
			span{
				font-family: "vw_h_b";
				vertical-align:-3%;
			}
		}
		
		.h_in_2_tx2{
			margin-top:2%;
			font-size: clamp(0.55rem, 0.192rem + 1.79vw, 1.4rem);
			font-family: "vw_h_r";
			vertical-align:-3%;
			
			span{
				font-family: "vw_h_b";
				font-size: clamp(0.7rem, 0.321rem + 1.89vw, 1.6rem);
			}
		}
	}
}

#top{
	.tx_01{
		margin-top:4%;
		font-size: clamp(0.8rem, 0.337rem + 2.32vw, 1.9rem);
		font-weight:700;
		text-align:center;
		span{
			font-family: "vw_h_b";
			vertical-align:-3%;
			font-style: normal;
			font-weight: normal;
		}
		
	}
	
	.navi{
		margin:4% auto;
		position: relative;
		img{
			width:100%;
		}
		.navis{
			height:100%;
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
			-webkit-transform: translateY(-50%) translateX(-50%);
			width:94%;
			display:grid;
			grid-template-columns: repeat(5, 1fr);
			grid-template-rows: 100%;
			column-rule: 1px solid #000;
			
			.navi_ico{
				text-align:center;
				height:100%;
				img{
					margin-top:6%;
					width: clamp(1.1rem, 0.247rem + 4.26vw, 3.125rem);
				}
				a{
					display:block;
					font-weight:700;
					text-decoration: none;
					font-size: clamp(0.45rem, 0.134rem + 1.58vw, 1.2rem);
					line-height:1.3;
					height:100%;
					span{
						font-family: "vw_h_b";
						vertical-align:-3%;
						font-style: normal;
						font-weight: normal;
					}
				}
				a:hover{
					background: rgb(255 255 255 / 50%);
				}
				.u_arrrow{
					display: inline-block;
					width: 1vw;
					height: 1vw;
					border-right: 2px solid #000;
					border-bottom: 2px solid #000;
					transform: rotate(45deg);
				}
			}
		}
	}
	.top_b1{
		margin:0 auto;
		max-width:887px;
		width:83%;
		
		.tx_02{
			margin-top:10%;
			position: relative;
			display: inline-block;
			padding: 0 30px; /* スラッシュを配置する余白を確保 */
			font-weight: 300;
			font-size: clamp(0.7rem, 0.254rem + 2.23vw, 1.76rem);
			span{
				font-family: "vw_h_l";
				vertical-align:-3%;
				font-style: normal;
				font-weight: normal;
			}
		}
		.tx_02::before,
		.tx_02::after {
			content: "";
			position: absolute;
			bottom: -50%;
			width: 1px;
			height: 0.8em;
			background-color: #000; /* 線の色 */
			transform: translateY(-50%);
		}
		
		/* 左側のスラッシュ（逆方向に傾ける） */
		.tx_02::before {
			left: 1rem;
			transform: translateY(-50%) rotate(-25deg);
		}

		/* 右側のスラッシュ */
		.tx_02::after {
			right: 1rem;
			transform: translateY(-50%) rotate(25deg);
		}
		.grid_1{
			margin-top:3%;
			display:grid;
			grid-template-columns: auto auto auto;
			align-items: center;
			
			.g_01{
				font-size: clamp(1rem, -0.158rem + 5.79vw, 3.75rem);
				font-weight:900;
				span{
					font-family: "vw_h_b";
					vertical-align:-3%;
					font-style: normal;
					font-weight: normal;
				}
			}
			
			.g_02{
				font-size: clamp(1rem, -0.158rem + 5.79vw, 3.75rem);
				font-weight:900;
				color:#c1272d;
			}
			
			.g_03{
				font-size: clamp(0.6rem, 0.305rem + 1.47vw, 1.3rem);
				font-weight:500;
				.g_waku{
					border:1px solid #000;
					padding:0.6vw 0.8vw;
					text-align:center;
				}
			}
		}
		
		.grid_2{
			margin-top:6%;
			margin-bottom:6%;
			display:grid;
			grid-template-columns: auto 1fr;
			gap:1vw;
			c_g_in_2
			.g_01{
				font-size: clamp(0.5rem, 0.134rem + 1.83vw, 1.37rem);
				font-weight:700;
				line-height:1.5;
			}
			
			.g_02{
				font-size: clamp(0.5rem, 0.134rem + 1.83vw, 1.37rem);
				font-weight:400;
				line-height:1.5;
				span{
					font-family: "vw_h_l";
					vertical-align:-3%;
					font-style: normal;
					font-weight: normal;
				}
			}
		}
	}
	.top_b2{
		margin:2% auto 0;
		max-width:927px;
		width:85.8%;
		position: relative;
		img{
			width:100%;
		}
		.top_b2_in{
			max-width:887px;
			width:100%;
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
			-webkit-transform: translateY(-50%) translateX(-50%);
		}
		.car_box_in2{
			position: absolute;
			left: 0%;
			top: 1%;
			box-sizing:  border-box;
			img{
				width: clamp(5rem, 0.5rem + 22.5vw, 15.688rem);
			}
		}
	}
	.top_line{
		border-top: 1px solid #000;
		margin-top:2%;
		padding-top:2%;
	}
	.car_box{
		margin:0 auto;
		position: relative;
	}
	.c_b_glid{
		display:grid;
		grid-template-columns: auto 1fr;
		align-items: center;
		gap:7vw;
		
		.c_g_01{
			img{
				width: clamp(7rem, -0.237rem + 36.19vw, 24.188rem);
			}
		}
		.g_tx_01{
			font-size: clamp(0.7rem, 0.279rem + 2.11vw, 1.7rem);
			font-weight:700;
			line-height:1.5;
			span{
				font-family: "vw_h_b";
				font-size: clamp(1rem, 0.421rem + 2.89vw, 2.375rem);
				vertical-align:-3%;
				font-style: normal;
				font-weight: normal;
			}
			.e_n{
				font-family: "vw_h_b";
				font-size: clamp(0.7rem, 0.279rem + 2.11vw, 1.7rem);
				vertical-align:-3%;
				font-style: normal;
				font-weight: normal;
			}
		}
		
		.g_tx_02{
			margin-top:3%;
			font-size: clamp(1.1rem, 0.468rem + 3.16vw, 2.6rem);
			font-weight:900;
			color:#c1272d;
			span{
				font-family: "vw_h_b";
				font-size: clamp(1.2rem, 0.189rem + 5.05vw, 3.6rem);
				vertical-align:-3%;
				font-style: normal;
				font-weight: normal;
			}
		}
	}
	.car_box_in{
		position: absolute;
		left: 40%;
		top: 0%;
		box-sizing:  border-box;
	}
	.maru{
		position: relative;
		img{
			width: clamp(2.4rem, 0.726rem + 8.37vw, 6.375rem);
		}
	}
	.maru_in{
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		-webkit-transform: translateY(-50%) translateX(-50%);
		white-space: nowrap;
		
		font-size: clamp(0.55rem, 0.234rem + 1.58vw, 1.3rem);
		font-weight:700;
		line-height:1.2;
		text-align:center;
		span{
			font-size: clamp(0.6rem, 0.179rem + 2.11vw, 1.6rem);
			font-family: "vw_h_b";
			vertical-align:-20%;
			font-style: normal;
			font-weight: normal;
		}
	}
}	

#pre{
	margin:10% auto 0;
	padding-top:2%;
	width:94%;
	
	.pre_01{
		position: relative;
		background: #f2f2f2;
	}
	
	.pre_02{
		position: relative;
		background: #e1d6c9;
	}
	
	.pre_03{
		position: relative;
		background: #c6c3c4;
	}
	.pre_glid{
		margin:0 auto;
		padding-top:8%;
		padding-bottom:8%;
		width:90%;
		display:grid;
		grid-template-columns: 1fr auto;
		align-items: center;
		gap:1vw;
		.g_01{
			.tx_01{
				font-size: clamp(0.65rem, 0.136rem + 2.57vw, 1.87rem);
				font-weight:500;
				line-height:1.3;
				span{
					font-family: "vw_h_r";
					vertical-align:-3%;
					font-style: normal;
					font-weight: normal;
				}
			}
			
			.tx_02{
				font-size: clamp(1.1rem, -0.016rem + 5.58vw, 3.75rem);
				font-weight:900;
				line-height:1.3;
				span{
					font-family: "vw_h_b";
					vertical-align:-3%;
					font-style: normal;
					font-weight: normal;
				}
			}
			
			.tx_03{
				font-size: clamp(1.1rem, -0.016rem + 5.58vw, 3.75rem);
				font-weight:900;
				line-height:1.3;
				color:#c1272d;
				span{
					font-family: "vw_h_b";
					vertical-align:-3%;
					font-style: normal;
					font-weight: normal;
				}
			}
		}
		.g_02{
			img{
				width: clamp(7rem, -0.158rem + 35.79vw, 24rem);
			}
			.att_tx_1{
				margin-top:1%;
				font-size: clamp(0.5rem, 0.289rem + 1.05vw, 1rem);
				font-weight:500;
				text-align:right;
			}
		}
	}
	.pre_in{
		position: absolute;
		top: -4vw;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		img{
			width: clamp(3.5rem, 0.605rem + 14.47vw, 10.375rem);
		}
	}
	.info_tx_01{
		text-align:center;
	}
	.info_tx_01 img{
		width: clamp(15rem, -3.294rem + 91.47vw, 53.875rem);
	}
	.info_tx_02{
		margin-top:4%;
		font-family: "F+UD-ニューロダン B";
		font-size: clamp(1.1rem, 0.018rem + 5.41vw, 3.4rem);
		text-align:center;
	}
	.info_tx_03{
		margin:3% auto;
		font-family: "F+UD-ニューロダン M";
		font-size: clamp(0.9rem, 0.194rem + 3.53vw, 2.4rem);
		text-align:left;
		width: fit-content;
		line-height:1.8;
		
	}
	
	.info_tx_04{
		margin:0 auto;
		font-family: "F+UD-ニューロダン B";
		font-size: clamp(0.8rem, 0.235rem + 2.82vw, 2rem);
		text-align:center;
		width: fit-content;
		border:3px solid #fff;
		padding:0 4%;
		line-height:1.9;
		border-radius: 9999px;
	}
	.info_tx_05{
		margin:2% auto 0;
		font-family: "F+UD-ニューロダン B";
		font-size: clamp(0.8rem, 0.235rem + 2.82vw, 2rem);
		width: fit-content;
		line-height:1.4;
	}
}

#special{
	margin-top:10%;
	background: #f5f3f0;
	padding-bottom:7%;
	img{
		width:100%;
	}
	.sp_wid{
		margin:4% auto 0;
		width:87%;
	}
	.sp_glid{
		display:grid;
		grid-template-columns: 1fr auto;
		align-items: end;
		
		.g_01{
			.tx_01{
				margin-top:10%;
				position: relative;
				display: inline-block;
				padding: 0 30px; /* スラッシュを配置する余白を確保 */
				font-weight: 300;
				font-size: clamp(0.7rem, 0.254rem + 2.23vw, 1.76rem);
				span{
					font-family: "vw_h_l";
					vertical-align:-3%;
					font-style: normal;
					font-weight: normal;
				}
			}
			.tx_01::before,
			.tx_01::after {
				content: "";
				position: absolute;
				bottom: -50%;
				width: 1px;
				height: 0.8em;
				background-color: #000; /* 線の色 */
				transform: translateY(-50%);
			}
			
			/* 左側のスラッシュ（逆方向に傾ける） */
			.tx_01::before {
				left: 1rem;
				transform: translateY(-50%) rotate(-25deg);
			}

			/* 右側のスラッシュ */
			.tx_01::after {
				right: 1rem;
				transform: translateY(-50%) rotate(25deg);
			}
			
			.tx_02{
				margin-top:2%;
				font-size: clamp(1.2rem, 0.126rem + 5.37vw, 3.75rem);
				font-weight:900;
				line-height:1.3;
				span{
					font-family: "vw_h_b";
					vertical-align:-3%;
					font-style: normal;
					font-weight: normal;
				}
			}
			
			.tx_03{
				font-size: clamp(1.2rem, 0.126rem + 5.37vw, 3.75rem);
				font-weight:900;
				color:#c1272d;
				line-height:1.3;
			}
		}
		.g_02{
			img{
				width: clamp(7rem, -1.684rem + 43.42vw, 27.625rem);
			}
		}
	}
	.sp_tx_01{
		margin-top:3%;
		margin-bottom:2%;
		text-align:center;
		font-size: clamp(0.6rem, 0.347rem + 1.26vw, 1.2rem);
		line-height:1.3;
		font-weight:700;
	}
	.cars_glid{
		display:grid;
		grid-template-columns: 59% 1fr;
		align-items: end;
		gap:1vw;
		margin-bottom:8%;
		border-top:2px solid #e6e6e6;
		
		.c_c_name{
			margin-top:2%;
			font-family: "vw_h_r";
			font-size: clamp(0.7rem, 0.363rem + 1.68vw, 1.5rem);
			line-height:1.3;
			span{
				font-family: "vw_h_b";
				font-size: clamp(0.9rem, 0.395rem + 2.53vw, 2.1rem);
			}
		}
		.c_g_in_1{
			margin-top:2%;
			margin-bottom:2%;
			display:grid;
			grid-template-columns: auto 1fr;
			align-items: center;
			gap:1vw;
			.c_g_tx_1{
				font-size: clamp(0.5rem, 0.237rem + 1.32vw, 1.125rem);
				font-weight:500;
			}
			.c_g_tx_2{
				font-family: "vw_h_b";
				font-style: normal;
				font-weight: normal;
				font-size: clamp(0.9rem, 0.395rem + 2.53vw, 2.1rem);
				vertical-align:-3%;
			}
		}
		
		.hr_1{
			border-top:1px solid #000;
		}
		.c_c_p{
			margin-top:2%;
			font-size: clamp(0.6rem, 0.379rem + 1.11vw, 1.125rem);
			font-weight:500;
			span{
				font-family: "vw_h_r";
				font-style: normal;
				font-weight: normal;
				vertical-align:-3%;
			}
		}
		
		.c_c_d{
			margin-top:1.5%;
			font-size: clamp(0.5rem, 0.395rem + 0.53vw, 0.75rem);
			font-weight:500;
			span{
				font-family: "vw_h_r";
				font-style: normal;
				font-weight: normal;
				vertical-align:-3%;
			}
		}
		.c_g_in_2{
			margin-top:8%;
			display:grid;
			grid-template-columns: auto 1fr;
			align-items: center;
			gap:0.6vw 0.2vw;
			font-weight:500;
			.c_g_tx_1{
				padding:0.2vw;
				background:#e6e6e6;
				font-size: clamp(0.5rem, 0.237rem + 1.32vw, 1.125rem);
				line-height:1.4;
//				height: 100%;
				box-sizing: border-box;

			}
			
			.c_g_tx_2{
				padding:0.2vw;
				font-size: clamp(0.5rem, 0.237rem + 1.32vw, 1.125rem);
				line-height:1.4;
//				height: 100%;
				box-sizing: border-box;
				span{
					font-family: "vw_h_r";
					font-style: normal;
					font-weight: normal;
					vertical-align:-3%;
				}
			}
		}
	}
	.sp_tx_02{
		margin-top:1.5%;
		font-size: clamp(0.55rem, 0.282rem + 1.34vw, 1.188rem);
		font-weight:500;
		line-height:1.4;
		text-align:center;
	}
	
	.sp_tx_03{
		margin-top:1.5%;
		font-size: clamp(0.45rem, 0.271rem + 0.89vw, 0.875rem);
		font-weight:400;
		line-height:1.4;
		span{
			font-family: "vw_h_l";
			font-style: normal;
			font-weight: normal;
			vertical-align:-3%;
		
		}
	}
}


/*footer------------------------------------------*/

#footer{
	margin:10% auto 0;
	width:90%;
	.hr_2{
		border-top:1px solid #000;
	}
	.f_glid{
		display:grid;
		grid-template-columns: 1fr auto;
		align-items: center;
		
		.f_g_1{
			margin:20% auto 0;
			width:90%;
			.f_tx_00{
				margin-top:6%;
				font-size: clamp(0.55rem, 0.318rem + 1.16vw, 1.1rem);
				font-weight:700;
				span{
					font-family: "vw_h_r";
					font-style: normal;
					font-weight: normal;
					vertical-align:-3%;
				}
			}
			.f_tx_01{
				font-size: clamp(0.55rem, 0.318rem + 1.16vw, 1.1rem);
				font-weight:700;
			}
			.f_tx_02{
				margin-top:1.5%;
				font-size: clamp(0.8rem, 0.295rem + 2.53vw, 2rem);
				font-weight:700;
				line-height:1.4;
				span{
					font-family: "vw_h_b";
					font-style: normal;
					font-weight: normal;
					vertical-align:-3%;
				}
			}
			
			.f_tx_03{
				margin-top:2%;
				font-size: clamp(0.55rem, 0.318rem + 1.16vw, 1.1rem);
				font-weight:500;
				line-height:1.4;
				span{
					
					font-family: "vw_h_r";
					font-style: normal;
					font-weight: normal;
					vertical-align:-3%;
				}
			}
		}
		.f_g_2{
			img{
				width: clamp(8rem, 1rem + 35vw, 24.625rem);
			}
		}
		
	}
}

footer{
	margin:5% 0 2% 0;
	text-align:center;
	font-size: clamp(0.55rem, 0.338rem + 1.06vw, 1rem);
	font-weight:400;
	padding-right:3%;
}

/*------------------------------------------*/
.raiten{
	text-align:center;
	font-weight:400;
	font-size: clamp(0.7rem, 0.279rem + 2.11vw, 1.7rem);
	margin:10% auto 0;
	width: fit-content;
	line-height:1.5;
	position: relative;
//	display: inline-block;
	padding: 0 2vw; /* スラッシュを配置する余白を確保 */
}
.raiten::before,
.raiten::after {
	content: "";
	position: absolute;
	bottom: -20%;
	width: 1px;
	height: 0.8em;
	background-color: #000; /* 線の色 */
	transform: translateY(-50%);
}

/* 左側のスラッシュ（逆方向に傾ける） */
.raiten::before {
	left: 1rem;
	transform: translateY(-50%) rotate(-25deg);
}

/* 右側のスラッシュ */
.raiten::after {
	right: 1rem;
	transform: translateY(-50%) rotate(25deg);
}

#wrapper .wrapper_inner .margin_top100{
	margin-top:100px;
}

#wrapper .margin_top05{
	margin-top:1.5%;
}
#wrapper .margin_top10{
	margin-top:3%;
}
#wrapper .margin_top20{
	margin-top:6%;
}

#wrapper .margin_top30{
	margin-top:9%;
}

#wrapper .margin_top40{
	margin-top:12%;
}

#wrapper .margin_top50{
	margin-top:15%;
}

#wrapper .margin_top60{
	margin-top:18%;
}

#wrapper .margin_top70{
	margin-top:21%;
}
#wrapper .margin_top80{
	margin-top:24%;
}
#wrapper .margin_top90{
	margin-top:27%;
}
#wrapper .margin_top100{
	margin-top:30%;
}

/*ページトップスクロールボタン*/
#page_top{
  width: 90px;
  height: 90px;
  position: fixed;
  right: 0;
  bottom: 0;
  opacity: 0.6;
}
#page_top a{
  position: relative;
  display: block;
  width: 90px;
  height: 90px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #3f98ef;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -40px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after{
  content: 'PAGE TOP';
  font-size: 13px;
  color: #fff;
  position: absolute;
  top: 45px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
  color: #3f98ef;
}
/*---------------------------------------------------------------------------------*/
.bt_links{
	width:100%;
	margin:6% auto 0;
	text-align:center;
}


.bt_links img{
	width:100%;
	margin:20px auto;
}



.bt_links a {
//	max-width:839px;
	width:70%;
	margin:0 auto 7%;
	color: #fff;
	text-align:center;
	background: #000;
//	padding:20px;
	border-radius: 9999px;
	position: relative;
	z-index: 1;
	display: inline-block;
	transition: .3s;

	text-decoration: none;
	line-height:2.4;
}
.bt_l_in{
	font-size: clamp(0.55rem, 0.255rem + 1.47vw, 1.25rem);
	font-weight: 500;
	padding:2%;
	position: relative;
	display: inline-block;
	span{
		font-family: "vw_h_r";
		font-style: normal;
		font-weight: normal;
		vertical-align:-3%;
	}
}
.bt_links a::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 3rem;
	width: 0.7vw;
	height: 0.7vw;
	border-top: 2px solid #fff; /* 矢印の色 */
	border-right: 2px solid #fff;
	transform: translateY(-50%) rotate(45deg);
}
.bt_links a::before {
	content: "";
	width: 100%;
	height: 10px;
	position: absolute;
	top: 100%;
	left: 0;
	background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
	z-index: -1;
	opacity: 0;
	transition: .3s;
}
.bt_links a:hover {
	transform: translateY(-7px);
}
.bt_links a:hover::before {
	transform: translateY(7px);
	opacity: 1;
}


.f_link{
	width:40%;
	margin-top:2%;
}

.f_link a {
	width:100%;
	color: #fff;
	text-align:center;
	background: #000;
	padding:2% 4%;
	border-radius: 9999px;
	z-index: 1;
	display: inline-block;
	transition: .3s;
	text-decoration: none;
	font-size: clamp(0.5rem, 0.289rem + 1.05vw, 1rem);
	font-weight: 500;
	padding:2% 5%;
	line-height:1.5;
	position: relative;
}
.f_link a::before {
	content: "";
	width: 100%;
	height: 6px;
	position: absolute;
	top: 100%;
	left: 0;
	
	background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
	z-index: -1;
	opacity: 0;
	transition: .3s;
}
.f_link a:hover {
	transform: translateY(-3px);
}
.f_link a:hover::before {
	transform: translateY(3px);
	opacity: 1;
}

.sp_on{
	display:none;
}
/* ************************************************************************************************ */
@media screen and (max-width: 980px) {


}
/* ************************************************************************************************ */
@media screen and (max-width: 768px) {
.sp_on{
	display: block !important;
}
.sp_none{
	display:none;
}



#top{
	.top_b1{
		width:90%;
	}
	
	.top_b2{
		width:100%;
		
		.top_b2_in{
			width:90%;
		}
	}
	
	.car_box_in{
		left: 36%;
	}
	
	.c_b_glid{
		gap:9.5vw;
	}
	.navi{
		.navis{
			width:100%;
		}
	}
}

#pre{
	.pre_in{
		top: -6vw;
	}
}
#special{
	.cars_glid{
		grid-template-columns: 1fr;
		.c_g_in_2{
			margin-top:1%;
			grid-template-columns: auto 1fr auto 1.2fr;
			gap:1vw;
		}
		.t_tr{
			transform: scale(0.8, 1);
			transform-origin: top left;
		}
	}
}

#footer{
	margin:10% auto 0;
	width:90%;

	.f_glid{
		grid-template-columns: 1fr;
		
		.f_g_1{
			.f_tx_00{
				font-size: 0.8rem;
			}
			.f_tx_01{
				font-size: 0.8rem;
			}
			.f_tx_02{
				font-size:1.2rem;
			}
			
			.f_tx_03{
				font-size: 0.8rem;
			}
		}
		.f_g_2{
			margin:2% auto 0;
			text-align:center;
			width:100%;
			img{
				margin:0 auto;
				max-width:700px;
				width:90%;
			}
		}
	}
	
}

.f_link{
	width:100%;
	margin:2% auto;
}
}

@media screen and (max-width: 600px) {
.navToggle{
	display:block;
}
}