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

html, body {
	margin:0;
	padding:0;
}

/*Webフォントの指定///////////////////////////////////*/
/*WebフォントRegular*/
@font-face {
  	font-family: 'MazdaType-Regular';
	src: url("f../fonts/mazda/onts/0050_MazdaType-Regular.woff") format('woff');
  	font-weight: normal;
}

/*WebフォントMedium*/
@font-face {
  	font-family: 'MazdaType-Medium';
  	src: url('../fonts/mazda/0030_MazdaType-Medium.woff') format('woff');
  	font-weight: normal;
}

/*WebフォントBold*/
@font-face {
  	font-family: 'MazdaType-Bold';
  	src: url('../fonts/mazda/0010_MazdaType-Bold.woff') format('woff');
  	font-weight: bold;
}








.LP_wrap  {
	overflow: hidden;
	font-family: 'MazdaType-Regular', "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}

.LP_wrap div, img, section, h2, h3, h4, p, figure, ul, li {
	margin:0;
	padding:0;
}

.LP_wrap img {
	width: 100%;
	height: auto;
	margin: auto;
	vertical-align: bottom;
	display: block;
}



.LP_wrap .con_940 {
	width: 90%;
	max-width: 940px;
	margin: 0 auto 0;	
	box-sizing: border-box;
}
.LP_wrap .con_1100 {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto 0;	
	box-sizing: border-box;
}
.LP_wrap .margin-T {
	margin-top: 20%;
}


/* ページロード時にふわっと表示させるアニメーション ////////*/
@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}
div.sub {
	opacity: 0;
	animation: fadeIn 1.5s ease-in-out forwards;
}




/*CM動画 //////////////////////////////*/
.movie-section {
  	width: 90%;
	max-width: 940px;
 	 margin: -25% auto 3%;
}
@media screen and (max-width: 750px) {
	.movie-section {
		 margin: -5% auto 3%;
	}
}
/* レスポンシブ対応 */
.movie-section video {
	display: block;
  	width: 100%;
  	height: auto;
  	aspect-ratio: 16/9;
  	object-fit: cover;
}




/*happy_bag //////////////////////////////*/
.LP_wrap .LP_happybag {
	position: relative;
}
.LP_wrap .LP_happybag p {
	position: absolute;
	top: 0;
	left: 0;
}

.fukidashi {
  animation: yura 4s ease-in-out infinite;
  transform-origin: bottom center;
}

@keyframes yura {
  0%,100% { transform: translateY(0) rotate(-2deg); }
  50%     { transform: translateY(-10px) rotate(2deg); }
}




/*img-btn //////////////////////////////*/
ul.LP_img-btn {
	list-style: none;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 5%;
}
ul.LP_img-btn li img {
	border-radius: 10px;
	box-shadow: 4px 4px 12px rgba(0, 0, 0, 0.25);
}





/*////////////  各店舗リスト ///////////////*/
.LP_wrap .LP_shop {
	margin-top: 150px;
}
.LP_wrap .bg_black {
	background: #e02622;
	padding: 0px 0 80px;
}
.LP_wrap .bg_black .shop_con {
	width: 90%;
	max-width: 940px;
	margin: auto;
}
.LP_wrap .bg_black .shop_con > figure {
	width:  50%;
	max-width: 170px;
	margin: 0 auto;	
	box-sizing: border-box;
	transform: translateY(-80px);
}

/* 店舗リンクリスト（PC＆SP） */
ul.shop_list {
	list-style: none;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px 10px;
	margin-top: 5%;
}
@media screen and (max-width: 1024px) {
	ul.shop_list {
		grid-template-columns: repeat(3, 1fr);
		gap: 20px 10px;
		margin-top: 8%;
  }
}

/* 店舗リンクボタン */
ul.shop_list li a {
	position: relative;
	display: block;
	padding: 0;
	transition: all 0.3s ease;
	box-sizing: border-box;
}
ul.shop_list li a:hover {
	opacity: 0.5;
}


/*テキスト部分*/
.LP_wrap .LP_shop p {
	text-align: center;
	font-family: 'MazdaType-Medium';
	font-weight: bold;
	font-size: 22px;
	color: #ffffff;
}
.LP_wrap .LP_shop p.first-child {
	margin-top: -50px;
}

/*WEBより事前予約をしていただけますと〜*/
@media screen and (max-width:750px){
	.LP_wrap .LP_shop p.first-child {
		font-size: 14px;
	}
}

/*お電話でのご予約も承っております*/
.LP_wrap p.LP_tel span {
	display: inline-block;
	background-color: #ffffff;;
	color: #1e1e1e;
	text-align: center;
	font-weight: normal;
	padding: 5px 20px;
	border-radius: 1000px;
}
.LP_wrap p.LP_tel {
	margin: 3% auto 0;
}

/*※詳しくは各店舗へお問い合わせください。*/
.LP_wrap p.note {
	font-size: 18px;
	margin: 8% auto 0%;
	font-weight: normal;
}
@media screen and (max-width:1024px){
	.LP_wrap p.note span {
		display: block;
		line-height: 1.1;
	}
}






/*bg_red//////////////////////////////////////////*/
.LP_bg_red {
	background: url("../img/campaign20260101/2511_2026_08_bg.jpg") repeat-x #e02622;
	background-size: 40px;
	margin-top: 10%;
	padding: 0 0 5%;
}
.LP_bg_red h2 {
	margin-bottom: 3%;
}
.LP_bg_red figure {
	margin-bottom: 10%;
}






/*LP_tokuten//////////////////////////////////////////*/
.LP_tokuten .bg_color-R {
	background: url("../img/campaign20260101/511_2026_13_bg.jpg") repeat-x #e02622;
	background-size: 70px;
}

.LP_tokuten .bg-wave {
	position: relative;
	padding-bottom: 80px;
}
.LP_tokuten .bg-wave::after {
  	content: "";
  	position: absolute;
  	left: 0;
  	right: 0;
  	top: 0;
  	height: 80px;
  	background: url("../img/campaign20260101/2511_2026_13_bg_under.png") repeat-x top left / 460px auto;
 	 z-index: 2; 
}

.LP_tokuten .bg-wave figure img {
  	position: relative;
  	z-index: 1;
  	display: block;
	padding-top: 20px;
}
.bg_cx5 {
	background-color: #1b1c20;
}
.bg_mazda2 {
	background-color: #2f1f14;
}
.bg_k-car {
	background: #e2a300;
}
.bg_k-car h3 {
	padding-top: 100px;
}
.bg_k-car figure {
	margin-top: 80px;
}
.bg_k-car h3 + figure {
	margin-top: 0px;
}






/*LP_keihin//////////////////////////////////////////*/
.LP_keihin p {
	transform:  translateY(-45px);
}
.LP_keihin figure.con_1100 {
	transform:  translateY(-45px);
}
.LP_keihin a {
	width: 90%;
	max-width: 390px;
	display: block;
	margin: auto;
}





/*LP_line-up//////////////////////////////////////////*/
.LP_line-up {
	width: 100%;
	max-width: 940px;
	margin: 0 auto 10%;
}
.LP_line-up h2 {
	width: 80%;
	max-width: 550px;
	margin: 20% auto 15%;
}
.LP_line-up figure {
	margin-top: 100px;
}








/*ボタン//////////////////////////////////////////*/
/*リンクボタン*/
.LP_wrap a:hover {
	opacity: 0.8;
}

/*車ボタン*/
.LP_wrap a.btn_base{
	opacity: 1;
	text-decoration: none;
	display: block;
    background: #ffffff;
	width: 90%;
	max-width: 420px;
	height: 55px;
	line-height: 55px;
	margin: 5% auto 0;
	border-radius: 8px;
    text-align: center;
    transition: ease .4s;
	color: #000000;
	font-size: 22px;
	border: 1px solid #000000;
}
@media screen and (max-width:750px){
	.LP_wrap a.btn_base{
		height: 75px;
		line-height: 75px;
		font-size:30px;
		max-width: 800px;
	}
}
/* PC（hover可能デバイス）のみ hover指定 */
@media (hover: hover) and (pointer: fine) {
    .LP_wrap a.btn_base:hover {
        background: #e02622;
        color: #ffffff;
		border: 1px solid #e02622;
    }
}





/*スクロールアニメーション//////////////////////////////////////////*/
/* 共通：透明状態 */
.LP_wrap .fade-in {
  opacity: 0;
  transition: opacity 1.6s ease-out, transform 0.6s ease-out;
}
/* 表示時（その場でフェードイン） */
.LP_wrap .fade-in.show {
  opacity: 1;
  transform: translate(0, 0);
}
/* 左からフェードイン */
.LP_wrap .fade-left {
  transform: translateX(-100px);
}
/* 右からフェードイン */
.LP_wrap .fade-right {
  transform: translateX(100px);
}


