@charset "utf-8";
/* CSS Document */

html{
	scroll-behavior: smooth;
//	scroll-padding-top: 200px; /* ヘッダーの高さに合わせて変更 */
}

#wrapper {
/*font-family: -apple-system-body, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans Japanese", "游ゴシック  Medium", "Yu Gothic Medium", "メイリオ", meiryo, sans-serif;*/
	font-family: 'Noto Sans JP', sans-serif;
	
}

#wrapper {
	max-width: 1000px;
	width:100%;
	margin:0 auto 0;
	line-height:0;
	padding:0;
}

.wrapper_inner {
	max-width: 848px;
	margin:0 auto;
	font-size: 100%;
	width:90%;
	font-feature-settings: "palt";
	line-height:1;
}

.wrapper_inner img{
	margin:0 auto;
	width:100%;
}

header,footer{
//	background:#fff;
}

#wrapper a {
	text-decoration: none;
}

a:link {
 color: #601986;
 text-decoration: underline;
}

a:visited {
 color: #601986;
 text-decoration: underline;
}

a:hover {}

a:active {
 color: #601986;
 text-decoration: underline;
}



#wrapper *{
	box-sizing:border-box;
}

#wrapper .img_area{
	max-width:1000px;
	text-align:center;
	margin:0 auto;
}

#wrapper .img_area img{
	width:100%;
}
/*swiper----------------------------------------------*/

.swiper-container{
	margin-inline: auto;
	position: relative;
}

.swiper .swiper-slide-active {
	opacity: 1;
	transform: scale(1);
	z-index: 99;
	height: auto;
}
.swiper-pagination-bullet {
	width: 12px !important;
	height: 12px !important;
	margin: 0 0 0 10px !important;
	background: #333 !important;
}

.swiper-pagination-bullet:first-child {
  margin: 0 !important;
}

.swiper-button-next, .swiper-button-prev{
	background-color: #666;
	border-radius: 50%;
	width: clamp(2rem, 1.545rem + 2.27vw, 3rem);
	height: clamp(2rem, 1.545rem + 2.27vw, 3rem);
	border:1px solid #fff;

}

.swiper-button-next::after, .swiper-button-prev::after {
	font-family: 'Font Awesome 5 Free';
	font-weight: 600;
	color: #fff;
	font-size: clamp(1rem, 0.545rem + 2.27vw, 2rem);
}

.swiper-button-next::after {
	content: '\f054'; /* FontAwesomeの右矢印 */
	margin-right:-7%;

}

.swiper-button-prev::after {
	content: '\f053'; /* FontAwesomeの左矢印 */
	margin-left:-7%;
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
    left: -50px;

}
.swiper-button-next, .swiper-rtl .swiper-button-prev {
    right:-50px;

}
/*--------------------*/
.youtube{
	margin:6% auto 0;
	width: 100%;
	aspect-ratio: 16 / 9;
}
/*----------------------*/


/*右ナビ---------------------------------------*/
.nav_menu{
	position: fixed;
	top: 0;
//	backdrop-filter: blur(10px);
//	box-shadow: 0 2px 20px rgba(0, 0, 0, 0.1);
	z-index: 1000;
//	transition: all 0.3s ease;
	
	animation-name: fadeInDown; /* キーフレームの名前 */
	animation-duration: 1.5s; /* アニメーションの時間 */
	animation-delay: 1.5s; /* ここで遅延時間を設定 (例: 1秒遅れ) */
	animation-fill-mode: forwards; /* アニメーション終了時のスタイルを維持 */
	opacity: 0; /* 初期状態では非表示 */
	transform: translateY(-50px); /* 初期状態では少し上に隠しておく */
	background:#fff;
	width:100%;
}
/* キーフレーム定義 */
@keyframes fadeInDown {
	0% {
		opacity: 0;
		transform: translateY(-50px); /* 開始位置 */
	}
	100% {
		opacity: 1;
		transform: translateY(0); /* 終了位置 (通常の場所) */
	}
}
.nav_menu .nav_01 a,.nav_menu .nav_02 a {
	text-decoration: none;
	color:#000;
	font-weight:700;
	font-size: clamp(0.6rem, 0.318rem + 1.41vw, 1.2rem);
	display:block;
}

.nav_bt {
	margin-top:2px;
	display: flex;
	justify-content: space-between;
	gap:2px;
}

.nav_menu .nav_01{
	background:#000;
	text-align:center;
	line-height:3;
	height:100%;
}
.nav_menu .nav_02{
	text-align:center;
	line-height:3;
	width:50%;
	height:100%;
}


.nav_menu .nav_01,.nav_menu .nav_02 {
  border: 1px solid #ccc;
  background: #f1e767;
  background: -webkit-gradient(linear, left top, left bottom, from(#fdfbfb), to(#ebedee));
  background: -webkit-linear-gradient(top, #fdfbfb 0%, #ebedee 100%);
  background: linear-gradient(to bottom, #fdfbfb 0%, #ebedee 100%);
  -webkit-box-shadow: inset 1px 1px 1px #fff;
  box-shadow: inset 1px 1px 1px #fff;
  position: relative;
  display:block;
}

.nav_menu .nav_01:hover,.nav_menu .nav_02:hover {
  background: -webkit-gradient(linear, left bottom, left top, from(#fdfbfb), to(#ebedee));
  background: -webkit-linear-gradient(bottom, #fdfbfb 0%, #ebedee 100%);
  background: linear-gradient(to top, #fdfbfb 0%, #ebedee 100%);
  	display:block;
	cursor: pointer;
}
.nav_menu .nav_01::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 18px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  transform: translateY(-50%) rotate(45deg);
}

.nav_menu .nav_02::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 18px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  transform: translateY(-50%) rotate(135deg);
}

/*右ナビここまで---------------------------------------*/
.header{
	margin:0 auto;
	max-width:1000px;
	width:100%;
	position: relative;
}
.header_top img{
	width:100%;
}
.header_back img{
	width:100%;
}
.header_in{
	position: absolute;
	top:4%;
	left: 5%;
	box-sizing:  border-box;
	color:#fff;
	transform: rotate(-8deg);
}
.logos{
	margin:5% auto 0;	
	font-family: 'Mugen Grotesk FW Bold';
	font-size: clamp(0.55rem, 0.018rem + 2.66vw, 1.68rem);
}
.logos img{
	margin:0 auto;
	width:clamp(9rem, -0.412rem + 47.06vw, 29rem);
}
.h_tx_1{
	margin-top:8%;
	font-family: 'Mugen Grotesk FW Bold';
	font-size: clamp(2.4rem, -0.188rem + 12.94vw, 7.9rem);

}
.h_tx_1 span{
	font-size: clamp(0.9rem, 0.147rem + 3.76vw, 2.5rem);
}
.h_tx_2{
	margin-top:5%;
	font-size:clamp(0.5rem, 0.265rem + 1.18vw, 1rem);
	text-align:center;
	line-height:1.3;
}
.h_tx_3{
	margin-top:14%;
	font-family: "FuturaLTPro-Bold";
	text-align:right;
	margin-right:-3%;
	transform: scale(0.9, 1);
	
	.ht_01{
		font-size: clamp(0.6rem, 0.035rem + 2.82vw, 1.8rem);
	}
	
	.ht_02{
		font-size:clamp(1.4rem, 0.129rem + 6.35vw, 4.1rem);
	}
	
	.ht_03{
		color:#e60012;
		font-size: clamp(1.4rem, 0.129rem + 6.35vw, 4.1rem);
	}
	.ht_04{
		color:#e60012;
		font-size: clamp(0.6rem, 0.035rem + 2.82vw, 1.8rem);
	}
}

.info_fl{
	margin:3% 3% 0 auto;
	display: flex;
	font-size: clamp(0.7rem, 0.088rem + 3.06vw, 2rem);
	font-weight:700;
	line-height:0.8;
	width: fit-content;
}
.info_t1{
	
}
.info_t2{
}
.info_t3 span{
	font-weight:400;
	font-size: clamp(0.5rem, 0.265rem + 1.18vw, 1rem);
}

.day_t2{
	font-family: 'blair-itc-bold';
	writing-mode: vertical-rl;
	align-self: center;
	padding:1% 2.3% 1% 2%;
	display: flex;
	justify-content: center; /* 縦方向の中央 */
	align-items: center;
	background:#e60012;
	color:#fff;
	font-weight:700;
	
	position: absolute;
	top:32%;
	left: 20%;
	box-sizing:  border-box;
	transform: rotate(-18deg);
	font-size: clamp(0.6rem, 0.035rem + 2.82vw, 1.8rem);
}
.day_t3{
	font-family: 'blair-itc-bold';
	writing-mode: vertical-rl;
	align-self: center;
	padding:1% 2.3% 1.4% 2%;
	display: flex;
	justify-content: center; /* 縦方向の中央 */
	align-items: center;
	background:#e60012;
	color:#fff;
	font-weight:700;
	
	position: absolute;
	top:41%;
	left: 15.5%;
	box-sizing:  border-box;
	transform: rotate(-20deg);
	font-size: clamp(0.5rem, 0.029rem + 2.35vw, 1.5rem);
}


.m_logo{
	margin:12% auto 0;
	text-align:center;
}
.m_logo img{
	margin:0 auto;
	width: clamp(4rem, -0.294rem + 21.47vw, 13.125rem)
}
.h2_tx{
	margin-top:10%;
	margin-bottom:5%;
	font-size: clamp(1rem, 0.172rem + 4.14vw, 2.76rem);
	font-weight:700;
	text-align:center;
	text-align:justify;
	text-align-last:justify;
}

.h2_tx2{
	margin-top:0%;
	border-bottom:1px solid #000;
	padding-bottom:4%;
	font-size: clamp(1.1rem, 0.149rem + 4.75vw, 3.12rem);
	font-weight:600;
	margin-bottom:2%;
}
.h2_tx2 span{
	font-size:clamp(0.6rem, 0.324rem + 1.38vw, 1.188rem);
}

.detail_fl{
	margin-top:2%;
	display: flex;
	font-size: clamp(0.55rem, -0.085rem + 3.18vw, 1.9rem);
	font-family: 'gothic_101pro_db';
	width:100%;
	white-space: nowrap;
}
.detail_l{
	width:15%;
	text-align:justify;
	text-align-last:justify;
}
.detail_c{
	width:2%;
	text-align:center;
}
.detail_r{
//	width:81%;
}
.dr_fl{
	display: flex;
	margin-bottom:2%;
	width:100%;
}
.detail_r_l{
	width:63%;
}
.detail_r_r{
	width:37%;
}
.detail_r_r{
	font-family: 'gothic_101pro_li';
	font-size: clamp(0.45rem, 0.144rem + 1.53vw, 1.1rem);
	align-self: flex-end;
}
.tokuten{
	margin-top:10%;
	color:#fff;
	background:#000;
	font-weight:600;
	font-size: clamp(1rem, 0.341rem + 3.29vw, 2.4rem);
	padding-top:2%;
	padding-bottom:2.3%;
	padding-left:3%;
}
.anno1{
	margin-top:1.5%;
	text-align:right;
	font-weight:500;
	font-size: clamp(0.5rem, 0.265rem + 1.18vw, 1rem);
}
.pre_con{
	margin-top:12%;
	position: relative;
}
.h3_tx1{
	font-weight:700;
	font-size: clamp(1rem, 0.261rem + 3.7vw, 2.571rem);
	border-bottom:0.25vw #e60012 solid;
	padding-bottom:2%;
}
.p_con_tx{
	margin-top:2%;
	font-weight:500;
	font-size: clamp(0.6rem, 0.195rem + 2.02vw, 1.46rem);
	line-height:1.4;
	width:75%;
	margin-bottom:14%;
}
.f_img{
	position: absolute;
	right: 0%;
	top: -40%;
	width:19.28%;
}
.f_img img{
	max-width:162px;
	width:100%;
}
.h3_tx{
	margin-top:10%;
	font-weight:500;
	font-size: clamp(1rem, 0.265rem + 3.68vw, 2.563rem);
}
.h3_tx2{
	margin-top:1%;
	font-family: HelveticaLTPro-Bold;
	font-size: clamp(1.1rem, 0.206rem + 4.47vw, 3rem);
}
.h4_tx{
	margin-top:4%;
	font-weight:900;
	font-size: clamp(2rem, 10vw, 6.25rem);
}
.tokuten_01{
	margin-top:4%;
	position: relative;
}
.tokuten_01_in{
	position: absolute;
	top: 50%;
	left: 5%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	box-sizing:  border-box;
	color:#fff;
}
.tokuten_tx1{
	font-weight:900;
	font-size: clamp(1rem, -0.282rem + 6.41vw, 3.725rem);
}
.tokuten_tx2{
	margin-top:2%;
	color:#fff;
	font-weight:900;
	font-size: clamp(1.5rem, -0.206rem + 8.53vw, 5.125rem);
}

.circle{
	margin:4% auto 0;
	width:clamp(2rem, 0.588rem + 7.06vw, 5rem);
	height:clamp(2rem, 0.588rem + 7.06vw, 5rem);
	border-radius:50%;
	background:#ea5514;
	
	p{
		text-align:center;
		line-height:clamp(1.7rem, 0.618rem + 5.41vw, 4rem);
		color:#fff;
		font-size: clamp(1rem, -0.059rem + 5.29vw, 3.25rem);
		font-weight:700;
	}
}


.tokuten_02{
	margin-top:4%;
	position: relative;
}
.tokuten_tx3{
	position: absolute;
	top: 50%;
	left: 5%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	box-sizing:  border-box;
	
	font-weight:900;
	font-size: clamp(1.2rem, -0.206rem + 7.03vw, 4.188rem);
	color:#fff;
	line-height:1.3;
}
.tokuten_03{
	margin-top:14%;
	position: relative;
}
.tokuten_03_in{
	position: absolute;
	left: 4%;
	top: 4%;
}
.tokuten_03_in2{
	position: absolute;
	left: 4%;
	bottom: 2%;
}

.tokuten_fl{
	color:#fff;
	font-weight:600;
	display: flex;
	align-items: center;
	gap:1vw;
}

.tx_01{
	font-weight:500;
	font-size:  clamp(0.5rem, 0.218rem + 1.41vw, 1.1rem);
	line-height:1.5;
	padding-left:1em;
	text-indent:-1em;
	text-align:right;
}

.tx_02{
	font-weight:700;
	font-size: clamp(1rem, 0.2rem + 4vw, 2.7rem);
	border:2px solid;
	padding:0.5vw;
}
.t_fl_r{
	font-weight:700;
	font-size: clamp(0.9rem, 0.147rem + 3.76vw, 2.5rem);
}
.tx_03{
	margin-top:2%;
	font-weight:700;
	font-size:  clamp(1rem, 0.176rem + 4.12vw, 2.75rem);
	line-height:1.4;
	color:#fff;
}
.tx_04{
	font-weight:500;
	font-size:  clamp(0.5rem, 0.218rem + 1.41vw, 1.1rem);
	line-height:1.5;
	padding-left:1em;
	text-indent:-1em;
	color:#fff;
}
.matsuri{
	margin-top:10%;
	
}
.matsuri img{
	width:100%;
}
.sp_img{
	margin-top:2%;
}
.sp_img img{
	width:100%;
}
.sp_car_tx{
	margin-top:2%;
	line-height:1.4;
	font-weight:700;
	font-size: clamp(1rem, 0.261rem + 3.7vw, 2.571rem);
	margin-bottom:18%;
}

.c_img{
	margin:3% auto;
//	max-width:847px;
	width:100%;
	font-feature-settings: "palt";
	line-height:1;
}
.c_img img{
	width:100%;
}

.tenji_car{
	margin:3% auto;
	max-width:840px;
	width:84%;
	font-feature-settings: "palt";
	line-height:1;
}
.tenji_ti{
	margin-top:2%;
	background:#000;
	color:#fff;
	font-family: 'impact';
	font-size: clamp(1.3rem, 0.194rem + 5.53vw, 3.65rem);
	text-align:center;
	padding:4%;
}
.tenji_img img{
	width:100%;
}
.tenji_b{
	background:#7f4f21;
	color:#fff;
	font-family:'gothic_101pro_db';
	font-size: clamp(0.8rem, 0.254rem + 2.73vw, 1.96rem);
	text-align:center;
	padding:2%;
}
.shiharai_fl{
	margin-top:3%;
	display: flex;
	align-items: center;
}
.shi_l{
	font-family:'gothic_101pro_db';
	font-size: clamp(1rem, 0.247rem + 3.76vw, 2.6rem);
}
.shi_r {
	font-family:'gothic_101pro_bo';
	font-size: clamp(2rem, 0.212rem + 8.94vw, 5.8rem);
	margin-left:2%;
}
.shi_r .en_b{
	font-family:'gothic_101pro_bo';
	font-size: clamp(0.9rem, 0.194rem + 3.53vw, 2.4rem);
}
.shi_r .jp{
	font-family:'gothic_101pro_db';
	font-size: clamp(0.9rem, 0.194rem + 3.53vw, 2.4rem);
}
.shi_tx{
	margin-top:3%;
	font-family:'gothic_101pro_db';
	font-size: clamp(0.7rem, 0.149rem + 2.75vw, 1.87rem);
	line-height:1.4;
}

.kaijou{
	margin-top:16%;
	background:#000;
	color:#fff;
	font-weight:600;
	font-size: clamp(1.1rem, 0.347rem + 3.76vw, 2.7rem);
	text-align:center;
	padding:4%;
}
.kaijou_fl{
	margin-top:4%;
	display: flex;
	justify-content: space-between;
}
.kaijou_fl .kaijou_l{
	max-width:407px;
	width:48.46%;
}
.kaijou_l img{
	width:100%;
}
.kaijou_fl .kaijou_r{
	width:48%;
}
.kj_tx1{
	background:#000;
	color:#fff;
	font-family:'gothic_101pro_db';
	font-size: clamp(0.6rem, 0.176rem + 2.12vw, 1.5rem);
	padding-top:1%;
	padding-bottom:2%;
	padding-left:3%;
}
.kj_tx2{
	margin-top:3%;
	font-family: "HelveticaNeueLTW1G-BdCn";
	font-size: clamp(0.7rem, 0.116rem + 2.92vw, 1.94rem);
}
.kj_tx2 span{
	font-weight:600;
	font-size: clamp(0.6rem, 0.035rem + 2.82vw, 1.8rem);
}
.kj_tx3{
	margin-top:2%;
	color:#b28247;
	font-weight:600;
	font-size: clamp(0.6rem, 0.176rem + 2.12vw, 1.5rem);
	padding-left:5%;
}
.kj_tx4{
	margin-top:3%;
	font-family: "HelveticaNeueLTW1G-BdCn";
	font-size: clamp(0.55rem, 0.197rem + 1.76vw, 1.3rem);
	line-height:1.2;
	padding-left:10%;
}
.kj_tx5{
	margin-top:2%;
	font-weight:400;
	font-size: clamp(0.5rem, 0.382rem + 0.59vw, 0.75rem);
	line-height:1.3;
}
.hr{
	border-top:0.2vw solid;
	margin-top:4%;
}

.glay_back{
	margin-top:8%;
	background:#f7f8f8;
	height: 100%;
}

.f_con_in{
	margin:0 auto;
	width:84%;
	padding-top:4%;
	padding-bottom:4%;
	position: relative;
	line-height:1;
	margin-bottom:3%;
}
.f_s_tx_01{
	font-weight:600;
	font-size: clamp(1rem, -0.026rem + 5.13vw, 3.18rem);
}
.f_s_tx_02{
	margin-top:3%;
	font-family: 'impact';
	font-size: clamp(1rem, -0.026rem + 5.13vw, 3.18rem);
}
.f2_img{
	margin-top:2%;
}
.f2_img img{
	width:100%;
}
.f_s_tx_03{
	margin-top:2%;
	font-weight:400;
	font-size: clamp(0.6rem, 3vw, 1.875rem);
	line-height:1.4;
	margin-bottom:5%;
}

.bt_f{
	position: absolute;
	bottom: 2%;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	white-space: nowrap;
	box-sizing:  border-box;
}
.bt_f  {
	margin:0 auto;
	width:100%;
	color: #fff;
	font-size: clamp(0.7rem, -0.006rem + 3.53vw, 2.2rem);
	font-weight: 500;
//	text-align:center;
//	border-radius: 0px;
	position: relative;
	z-index: 1;
	display: inline-block;
	transition: .3s;
	background:#000;
	line-height:1;
	font-feature-settings: "palt";
	box-sizing:  border-box;
}
.bt_f a p{
	padding-top:3%;
	padding-bottom:3.5%;
	text-align:center;
	color: #fff;
}

.audi_link{
	margin:10% auto;
	max-width:800px;
	width:80%;
	text-align:center;
}
.audi_link img{
	width:100%;
}

.car_fl{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.car_con{
	margin-top:4%;
	width:48%;
}
.car_con img{
	width:100%;
	max-width:404px;
}

.grd_back_05 {
//	background-image: linear-gradient(#dcdddd, #ffffff 90% 100%);
	padding-top:8%;
	padding-bottom:4%;
	margin-bottom:0%;
	margin-top:12%;
}
.att_2{
	margin:20% auto;
	font-size: clamp(0.6rem, 0.324rem + 1.38vw, 1.188rem);
	line-height:1.5;
	font-weight:500;
	width:90%
}

.raiten{
	width:100%;
	margin:16% auto 14%;
	text-align:center;
	background:#efefef;
	padding-top:3%;
	padding-bottom:3%;
	font-size: clamp(0.7rem, 0.294rem + 2.03vw, 1.563rem);
	font-weight:600;
	color:#000;
}



/* Google Mapを囲う要素 */
.map{
	max-width:690px;
	margin:1% auto;
}

.map-wrap {
	margin:0 auto;
	position: relative;
	width: 100%;
	height: 0;
//	padding-top: 50%; /* 比率を4:3に固定 */
	padding-top: 56.25%;    /*16:9の比率にしたい場合、9/16=56.25%*/
}
 
/* Google Mapのiframe */
.map-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

ol {
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding:0.5em;
	font-family: 'vw_h_r','gothic_101pro_me';
	font-size: clamp(0.9rem, 2.0vw, 2.0rem);

}

ol li {
  position: relative;
  line-height: 1.3;
  padding: 0.5em 0.5em 0.5em 30px;
}

ol li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*数字のデザイン変える*/
  display:inline-block;
  background: #00a0e2;
  border-radius: 3px;
  color: white;
	font-family: 'vw_h_r';
	font-size: clamp(1.0rem, 2.2vw, 2.2rem);
  left: -10px;
  width: 35px;
  height: 35px;
  line-height: 33px;
  text-align: center;
  /*以下上下中央寄せのため*/
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
#wrapper .margin_top15{
	margin-top:1.5%;
}
#wrapper .margin_top30{
	margin-top:3%;
}
#wrapper .margin_top50{
	margin-top:5%;
}
}
#wrapper .margin_top80{
	margin-top:8%;
}
#wrapper .margin_top100{
	margin-top:10%;
}


#wrapper a.black:link {
	color:#000;
}
#wrapper a.black:visited  {
	color:#000;
}

#wrapper a.red:link {
	color:#d32525;
}
#wrapper a.blue:link {
	color:#3391c4;
}
#wrapper a.red:visited  {
	color:#d32525;
}
#wrapper a.blue:visited  {
	color:#3391c4;
}

/*ページトップスクロールボタン*/
#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;
}




#wrapper .address_btn {
    background: #000;
    color: #fff;
    font-size:16px;
	padding:5px 10px;

}	

.mg_01{margin-top:1%;}
.mg_02{margin-top:2%;}
.mg_03{margin-top:3%;}
.mg_04{margin-top:4%;}
.mg_05{margin-top:5%;}
.mg_06{margin-top:6%;}
.mg_07{margin-top:7%;}
.mg_08{margin-top:8%;}
.mg_09{margin-top:9%;}
.mg_10{margin-top:10%;}


/*---------------------------------------------------------------------------------*/


#wrapper .foot_title_a{
	max-width:1000px;
	margin:10% auto 0;
	padding-bottom:4%;
	border-bottom:0.5vw solid #002C65;
	text-align:center;
}
.foot_title_a p{
	margin:5% auto 0;
	font-family: 'gothic_101pro_db';
	font-size: clamp(1.2rem, -2.143rem + 7.43vw, 2.5rem);
	max-width:822px;
	width:90%;
}
.foot_title_a p span{
	font-family: 'vw_h_b';
	font-size: clamp(1.4rem, -2.714rem + 9.14vw, 3rem);
	vertical-align:-3%;
}

.footer{
	margin:0 auto;
	font-size: 100%;
	overflow: hidden;
	width:100%;
	background:#000;
	color:#fff;
	line-height:1.5;
}
.footer_inner {
//	max-width:822px;
	margin:0 auto;
	width:100%;
	text-align:center;
}
.f_logo{
	margin:8% auto 0;
	max-width:364px;
	width:40%;
}
.f_logo img{
	width:100%;
}
.footer_in_01{
	margin-top:6%;
	font-family: "I-OTF-UDゴ表示Pro R";
	font-size: clamp(0.7rem, -1.614rem + 5.14vw, 1.6rem);
}
.footer_in_02{
	margin-top:3%;
	font-family: "I-OTF-UDゴ表示Pro B";
	font-size: clamp(1.2rem, 0.029rem + 5.85vw, 3.688rem)
	;
}

.footer_in_03{
	margin-top:1%;
	font-family: "I-OTF-UDゴ表示Pro R";
	font-size: clamp(0.8rem, -1.643rem + 5.43vw, 1.75rem);
}


.footer_inner .dealer{
	margin:9% auto 0;
	width:100%;
}

}
.footer_inner .dealer img{
	max-width:822px;
	width:100%;
}

.footer_inner div img {
	margin:0 auto;
	width:100%;
}

footer {
	width:90%;
	margin:5% auto 3%;
	text-align:center;
}

.copy{
	font-size:clamp(0.5rem, -0.786rem + 2.86vw, 1rem);
	color:#fff;
}

.footer_bt{
	margin:0 auto;
	display: flex;
	justify-content: space-between;
	background:#002c65;
	color:#fff;
	padding-top:1%;
	padding-bottom:1%;
	align-items: center;
}

.fbt_left{
	width:70%;
	vertical-align:-3%;
	padding-left:3%;
	font-family: 'gothic_101pro_db';
	font-size: clamp(0.7rem, -1.614rem + 5.14vw, 1.6rem);
}
.fbt_left span{
	font-family: 'vw_h_b';
	font-size: clamp(0.9rem, -1.414rem + 5.14vw, 1.8rem);

}
.fbt_right{
	padding-right:1%;
	font-family: 'gothic_101pro_db';
	font-size: clamp(0.7rem, -1.614rem + 5.14vw, 1.6rem);
}
.fbt_right2{
	padding-right:2%;
	font-family: "AudiType-Normal";
	font-size: clamp(2rem, -3.143rem + 11.43vw, 4rem);
	transform: scale(0.8, 1);
}

.arrow {
	position: relative;
	display: inline-block;

}

.arrow::before,
.arrow::after {
	content: "";
	position: absolute;
	top: calc(50% - 0.15vw);
	right: 2vw;
	width: 1.91vw;
	height: 0.41vw;
//	border-radius: 9999px;
	background-color: #fff;
	transform-origin: calc(100% - 0.2vw) 50%;
}

.arrow::before {
	transform: rotate(45deg);
}

.arrow::after {
	transform: rotate(-45deg);
}

.footer_link{
	margin:3% auto 0;
	width:100%;
	line-height:1;
}

.footer_link a {
	position: relative;
	z-index: 1;
	display: block;
	transition: .3s;

}
.footer_link a::before {
	content: "";
	width: 90%;
	height: 10px;
	position: absolute;
	top: 100%;
	left: 5%;
	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;
}
.footer_link a:hover {
	transform: translateY(-7px);
}
.footer_link a:hover::before {
	transform: translateY(7px);
	opacity: 1;
}






/*----------*/

nav.globalMenuSp {
    position: fixed;
    z-index: 2;
    top: 0;
    left: 0;
    background: #fff;
    color: #000;
    text-align: center;
    transform: translateY(-100%);
    transition: all 0.6s;
    width: 100%;
}

nav.globalMenuSp ul {
    background: #ccc;
    margin: 0 auto;
    padding: 0;
    width: 100%;
}

nav.globalMenuSp ul li {
    font-size: 1.1em;
    list-style-type: none;
    padding: 0;
    width: 100%;
    border-bottom: 1px dotted #333;
}

/* 最後はラインを描かない */
nav.globalMenuSp ul li:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

nav.globalMenuSp ul li a {
    display: block;
    color: #000;
    padding: 1em 0;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active2 {
    transform: translateY(0%);
}


.navToggle {
    display: block;
    position: fixed;    /* bodyに対しての絶対位置指定 */
    right: 13px;
    top: 12px;
    width: 42px;
    height: 51px;
    cursor: pointer;
    z-index: 3;
    background: #666;
    text-align: center;
}

.navToggle span {
    display: block;
    position: absolute;    /* .navToggleに対して */
    width: 30px;
    border-bottom: solid 3px #eee;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 6px;
}

.navToggle span:nth-child(1) {
    top: 9px;
}

.navToggle span:nth-child(2) {
    top: 18px;
}

.navToggle span:nth-child(3) {
    top: 27px;
}

.navToggle span:nth-child(4) {
    border: none;
    color: #eee;
    font-size: 9px;
    font-weight: bold;
    top: 34px;
}


/* 最初のspanをマイナス45度に */
.navToggle.active2 span:nth-child(1) {
    top: 18px;
    left: 6px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

/* 2番目と3番目のspanを45度に */
.navToggle.active2 span:nth-child(2),
.navToggle.active2 span:nth-child(3) {
    top: 18px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

.navToggle{
	display:none;
}

.head_logo_con{ 
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	align-items: flex-end;
	max-width:900px;
	text-align:center;
	margin:40px auto 20px;
	width:100%;
}

.head_logo_con_l{
	text-align:left;
}
.head_logo_con_r{
	text-align:right;
}

.maker_name_01{
	font-size:1.5rem;
}
.shop_name_01{
	font-weight:bold;
	font-size:1.3rem;
}
.h_text_a{
	max-width:900px;
	margin:0 auto 30px;
	line-height:150%;
	padding:0 20px;
}
.p_01_a{
	margin-top:30px;
	font-weight:bold;
	font-size:2.2rem;
	line-height:120%;
}
.p_02_a{
	margin-top:30px;
	font-weight:bold;
	font-size:4.0rem;
	line-height:120%;
}
.p_03_a{
	margin-top:30px;
	font-weight:bold;
	font-size:2.0rem;
	line-height:120%;
}


.select_input{
	margin-top:10px;
}
.select_input ul{ 
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	border-top:2px solid #666;
	padding:10px 0;
}

.select_input input[type="radio"]  {
    -webkit-transform: scale(2);
    -webkit-transform-origin:100% 50%;
    -moz-transform: scale(2);
    -moz-transform-origin:100% 50%;
    -ms-transform: scale(2);
    -ms-transform-origin:100% 50%;
    width:20px;
    height:20px;
    vertical-align: middle;
}





.bt_links{
	width:100%;
	margin:5% auto 10%;
	text-align:center;
}


.bt_links img{
//	max-width:729px;
//	width:100%;
//	margin:5% auto 0;
}



.bt_links a {
	margin:0 auto;
	width:100%;
//	max-width:873px;
	color: #fff;
//	font-family: 'gothic_101pro_re';
	font-size: clamp(0.8rem, 0.353rem + 2.24vw, 1.75rem);
	font-weight: 700;
//	text-align:center;
	padding:2%;
//	border-radius: 0px;
	position: relative;
	z-index: 1;
	display: inline-block;
	transition: .3s;
	background:#000;
	line-height:1;
	font-feature-settings: "palt";
}

.bt_fl{
	width:100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.bt_fl .bt_r{
	max-width:30px;
	width:3.5%;
	text-align:right;
}

.bt_fl .bt_r img{
	width:100%;
	text-align:right;
}


.bt_links a::before {
	content: "";
	width: 90%;
	height: 10px;
	position: absolute;
	top: 100%;
	left: 5%;
	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;
}

.bt_links a span{
	font-family: 'vw_h_b';
	font-size: clamp(1.2rem, 1.9vw, 1.9rem);
	vertical-align:-3%;
}


.bt_links2{
	width:100%;
	margin:5% auto 0;
	letter-spacing: 0.1em;
	text-align:center;
}


.bt_links2 img{
//	max-width:729px;
//	width:100%;
//	margin:5% auto 0;
}



.bt_links2 a {
	margin:4% auto 10%;;
	width:90%;
	max-width:873px;
	color: #000;
	font-family: 'gothic_101pro_re';
	font-size: clamp(0.8rem, 0.353rem + 2.24vw, 1.75rem);
	font-weight: 500;
//	text-align:center;
	padding:1.5% 1.5% 1.5% 4%;
//	border-radius: 0px;
	position: relative;
	z-index: 1;
	display: inline-block;
	transition: .3s;
	background:#dcdddd;
	line-height:1;
	font-feature-settings: "palt";
}

.bt_fl{
	width:100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.bt_fl .bt_r{
	max-width:30px;
	width:3.5%;
	text-align:right;
}



.bt_links2 a::before {
	content: "";
	width: 90%;
	height: 10px;
	position: absolute;
	top: 100%;
	left: 5%;
	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_links2 a:hover {
	transform: translateY(-7px);
}
.bt_links2 a:hover::before {
	transform: translateY(7px);
	opacity: 1;
}

.bt_links2 a span{
	font-family: 'vw_h_b';
	font-size: clamp(1.2rem, 1.9vw, 1.9rem);
	vertical-align:-3%;
}

.kiyaku{
	width:100%;
	border:1px solid #000;
	margin:20px auto;
	padding:20px;
	text-align:center;
}

.kiyaku_box {
	overflow:auto;
	height:600px;
	padding-left:1em;
	text-indent:-1em;
	line-height:150%;
	text-align:left;
}


.flex_b {
	display:flex;
	flex-wrap:wrap;
}
.flex_b .flex_in {
	width:48%;
	margin-bottom:10px;
}

.wrapper_inner .att_box{
	max-width:600px;
	width:96%;
	margin:0 auto;
	padding-top:20px;
//	padding-left:1em;
//	text-indent:-1em;
	line-height:150%;
	text-align:left;
}

.sp_on{
	display:none;
}

/* ************************************************************************************************ */
@media screen and (max-width: 768px) {

.sp_on{
	display:block;
}
.sp_none{
	display:none;
}

.swiper-button-next, .swiper-button-prev{
	background-color: transparent;

	border:none;
	opacity: 1;

}
.swiper-button-next::after, .swiper-button-prev::after {
	color: #666;
}
.swiper-button-prev, .swiper-rtl .swiper-button-next {
    left: -20px;

}
.swiper-button-next, .swiper-rtl .swiper-button-prev {
    right:-20px;

}
.swiper-button-next::after {
	content: '\f35a'; /* FontAwesomeの右矢印 */
	margin-right:-7%;

}

.swiper-button-prev::after {
	content: '\f359'; /* FontAwesomeの左矢印 */
	margin-left:-7%;
}

}



@media screen and (max-width: 600px) {
.navToggle{
	display:block;
}
}
