@charset "UTF-8";


/*---CM＆SNS---*/
#cm dt,
#sns dt{
	margin-top: 15%;
	text-align: center;
	font-weight: 600;
	font-size: 220%;
	line-height: 1.8;
}

.video-wrap{
  aspect-ratio: 16 / 9;
  width: 92%;
  margin: 7% auto 0;
  background-color: #ffffff; /* 明るくハイライト感を出す */
  border-radius: 12px;
  box-shadow:
    inset 0 0 8px rgba(0, 0, 0, 0.04),  /* 奥行き */
    0 12px 35px rgba(0, 0, 0, 0.12),   /* メイン影 */
    0 4px 12px rgba(0, 0, 0, 0.06);    /* ふわっと感 */
  overflow: hidden;
}

.video-wrap iframe{
  	width: 100%;
  	height: 100%;
}

#sns img{
	width: 20%;
	margin: 7% 40% 0%;
}


@media screen and (min-width:768px){
	#cm dt,
	#sns dt{
		margin-top: 10%;
		font-size: 28px;
	}
	
	.video-wrap{
		width: 80%;
		margin: 3% auto 0%;
	}
	
	#sns img{
		width: 10%;
		margin: 3% 45% 0%;
	}
}


@media screen and (min-width:980px){
	#cm dt,
	#sns dt{
		margin-top: 8%;
		font-size: 32px;
	}
	
	.video-wrap{
		width: 55%;
		margin: 3% auto 0%;
	}
	
	#sns img{
		width: 7%;
		margin: 3% 46.5% 0%;
	}
	
	#sns img:hover {
  		transform: scale(0.9,0.9);
	}
}


/*---news---*/
.news{
	width: 94%;
	margin: 10% auto 0;
}

.news-title{
	margin-left: 0.5em;
	font-weight: 600;
	font-size: 240%;
}

.news-content{
	margin-top: 3%;
	border-top: 4px solid #7FBE26;
	border-bottom: 4px solid #7FBE26;
}

.news-item{
	border-top: 3px dotted #7FBE26;
	padding: 3% 0;
}

.news-item:first-of-type{
	border-top: none;
}

.news-flex{
	display: flex;
	gap: 2%;
	align-items: center;
}

.news-date{
	background-color: #7FBE26;
	color: #fff;
	padding: 0.3em 0.3em;
	font-weight: 500;
	font-size: 140%;
	display: inline-block;
}

.news-heading{
	font-weight: 700;
	font-size: 140%;
	
}

.news-item p{
	padding: 3% 3% 0;
	font-weight: 400;
	font-size: 130%;
	line-height: 1.7;
	text-align: justify;
}


@media (min-width: 768px){
	.news{
		width: 80%;
		margin: 7% auto 0;
	}
	
	.news-title{
		font-size: 30px;
	}
	
	.news-content{
		margin-top: 2%;
	}
	
	.news-date{
		font-size: 18px;
	}
	
	.news-heading{
		font-size: 18px;
	}
	
	.news-item p{
		padding: 2% 3% 0;
		font-size: 16px;
	}
}


@media (min-width: 980px) {
	.news{
		width: 50%;
		margin: 5% auto 0;
	}
}


/*---ベネフィットとは---*/
.about{
	width: 94%;
	margin: 18% auto 0;
}

.about-title{
	width: 8.5em;
	margin: 0 auto;
    position: relative;
    padding: 0 0em 0.3em 0.5em;
    border-bottom: 3px solid #E50012;
	font-weight: 600;
	font-size: 220%;
}

.about-title::before {
    position: absolute;
    top: -0.7em;
    left: 0.1em;
    transform: rotate(55deg);
    height: 10px;
    width: 11px;
    background: #E50012;
    content: '';
}

.about-title::after {
    position: absolute;
    transform: rotate(15deg);
    top: 0em;
    left: -0.3em;
    height: 8px;
    width: 8px;
    background: #E50012;
    content: '';
}

.about .catch_copy{
	margin-top: 5%;
	font-weight: 700;
	font-size: 160%;
	text-align: center;
	color: #7FBE26;
	line-height: 2;
}

.about .description{
	margin-top: 5%;
	font-size: 140%;
	line-height: 1.8;
}


@media (min-width: 768px){
	.about{
		width: 80%;
		margin: 8% auto 0;
	}
	
	.about-title{
		font-size: 26px;
	}
	
	.about .catch_copy{
		margin-top: 3%;
		font-size: 22px;
	}
	
	.about .description{
		margin-top: 3%;
		font-size: 16px;
	}
}


@media (min-width: 980px){
	.about{
		width: 70%;
		margin: 8% auto 0;
	}
	
	.about-title{
		font-size: 28px;
	}
	
	.about .catch_copy{
		margin-top: 3%;
		font-size: 24px;
	}
	
	.about .description{
		margin-top: 3%;
		font-size: 18px;
	}
}


/*---こんなお悩みありませんか？---*/
.trouble{
	width: 94%;
	margin: 18% auto 0;
}

.trouble-title{
	width: 13.5em;
	margin: 0 auto;
    position: relative;
    padding: 0 0em 0.3em 0.5em;
    border-bottom: 3px solid #E50012;
	font-weight: 600;
	font-size: 220%;
}

.trouble-title::before {
    position: absolute;
    top: -0.7em;
    left: 0.1em;
    transform: rotate(55deg);
    height: 10px;
    width: 11px;
    background: #E50012;
    content: '';
}

.trouble-title::after {
    position: absolute;
    transform: rotate(15deg);
    top: 0em;
    left: -0.3em;
    height: 8px;
    width: 8px;
    background: #E50012;
    content: '';
}

.trouble h3{
	margin: 7% 0 0 2%;
	font-weight: 500;
	font-size: 160%;
	color: #E50012;
}

.trouble ul{
	margin-top: 2%;
	text-align: justify;
}

.trouble li{
	text-indent: -1em;
  	padding-left: 1em;
	font-size: 140%;
	line-height: 1.8;
}

.trouble .catch_copy{
	margin-top: 5%;
	font-weight: 700;
	font-size: 160%;
	text-align: center;
	color: #7FBE26;
	line-height: 2;
}


@media (min-width: 768px){
	.trouble{
		width: 80%;
		margin: 8% auto 0;
	}
	
	.trouble-title{
		font-size: 26px;
	}
	
	.trouble h3{
		margin:5% 0 0 0%;
		text-align: center;
		font-size: 20px;
	}

	.trouble ul{
		margin-top: 2%;
		text-align: center;
	}

	.trouble li{
		font-size: 16px;
	}

	.trouble .catch_copy{
		margin-top: 3%;
		font-size: 22px;
		line-height: 1.8;
	}
}


@media (min-width: 980px){
	.trouble{
		width: 70%;
		margin: 8% auto 0;
	}
	
	.trouble-title{
		font-size: 28px;
	}
	
	.trouble h3{
		margin:5% 0 0 0%;
		text-align: center;
		font-size: 22px;
	}

	.trouble ul{
		margin-top: 2%;
		text-align: center;
	}

	.trouble li{
		font-size: 18px;
	}

	.trouble .catch_copy{
		margin-top: 3%;
		font-size: 24px;
		line-height: 1.8;
	}
}


/*---背景カラー---*/
.background_color_red{
	margin-top: 10%;
	padding: 5% 0 12%;
	background-color: #E50012;
	color: #fff;
}


@media (min-width: 768px){
	.background_color_red{
		margin-top: 5%;
		padding: 3% 0 7%;
	}
}


@media (min-width: 980px){
	.background_color_red{
		margin-top: 4%;
		padding: 3% 0 6%;
	}
}


/*---ベネフィットの強み---*/
.strengths{
	width: 94%;
	margin: 7% auto 0;
}

.strengths-title {
	width: 9.5em;
	margin: 0 auto;
	position: relative;
	padding: 0 0em 0.8em 0.5em;
	border-bottom: 3px solid #fff;
	font-weight: 600;
	font-size: 220%;
}

.strengths-title::before,
.strengths-title::after {
	position: absolute;
	left: calc(50% - 10px); /* 中央に配置（20pxの幅なので10px引く） */
	width: 24px;
	height: 10px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	content: '';
}

.strengths-title::before {
	bottom: -10px; /* 少し調整 */
	background-color: #fff;
}

.strengths-title::after {
	bottom: -5px; /* 少し調整 */
	background-color: #E50012;
}

.apple{
	margin-top: 7%;
	text-align: center;
}

.apple img{
	width: 55%;
}

.strengths dl{
	margin-top: 2%;
}

.strengths dt{
	margin: 7% 0 0 0%;
	font-weight: 600;
	font-size: 160%;
}

.strengths dd{
	margin-top: 2%;
	text-align: justify;
	font-size: 140%;
	line-height: 1.8;
}


@media (min-width: 768px){
	.strengths{
		width: 80%;
		margin: 4% auto 0;
	}
	
	.strengths-title {
		font-size: 26px;
	}
	
	.apple{
		margin-top: 7%;
	}

	.apple img{
		width: 45%;
	}
	
	.strengths dl{
		margin-top: 2%;
		text-align: center;
	}

	.strengths dt{
		margin: 7% 0 0 0%;
		font-size: 20px;
	}

	.strengths dd{
		margin-top: 2%;
		text-align: center;
		font-size: 16px;
	}
}


@media (min-width: 980px){
	.strengths{
		width: 70%;
		margin: 3% auto 0;
	}
	
	.strengths-title {
		font-size: 28px;
	}
	
	.apple{
		margin-top: 5%;
	}

	.apple img{
		width: 30%;
	}
	
	.strengths dl{
		margin-top: 1%;
		text-align: center;
	}

	.strengths dt{
		margin: 4% 0 0 0%;
		font-size: 22px;
	}

	.strengths dd{
		margin-top: 2%;
		text-align: center;
		font-size: 18px;
	}
}


/*---ベネフィットがお約束できること---*/
.promise{
	width: 94%;
	margin: 18% auto 0;
}

.promise-title {
	width: 15.5em;
	margin: 0 auto;
	position: relative;
	padding: 0 0em 0.8em 0.5em;
	border-bottom: 3px solid #fff;
	font-weight: 600;
	font-size: 220%;
}

.promise-title::before,
.promise-title::after {
	position: absolute;
	left: calc(50% - 10px); /* 中央に配置（20pxの幅なので10px引く） */
	width: 24px;
	height: 10px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	content: '';
}

.promise-title::before {
	bottom: -10px; /* 少し調整 */
	background-color: #fff;
}

.promise-title::after {
	bottom: -5px; /* 少し調整 */
	background-color: #E50012;
}

.icons{
	margin-top: 8%;
	display: flex;
	justify-content: space-between;
	gap: 2%;
}


@media (min-width: 768px){
	.promise{
		width: 80%;
		margin: 8% auto 0;
	}
	
	.promise-title {
		font-size: 26px;
	}
	
	.icons{
		margin-top: 8%;
		display: flex;
		justify-content: space-around;
	}
	
	.icons img{
		width: 80%;
		margin: 0 10%;
	}
}


@media (min-width: 980px){
	.promise{
		width: 70%;
		margin: 6% auto 0;
	}
	
	.promise-title {
		font-size: 26px;
	}
	
	.icons{
		margin-top: 5%;
		padding: 0 15%;
		display: flex;
		justify-content: space-between;
	}
	
	.icons img{
		width: 80%;
		margin: 0 10%;
	}
}


/*---中古車情報---*/
.car-info{
	width: 94%;
	margin: 18% auto 0;
}

.car-info .title{
	text-align: center;
	font-weight: 700;
	font-size: 200%;
}

.car-info_bnr{
	width: 100%;
	margin-top: 5%;
  	display: flex;
  	flex-wrap: wrap;
	justify-content: center;
	gap: 5%;
}

.car-info_bnr div{
  	width: 80%;
	margin-top: 7%;
}


@media (min-width: 768px){
	.car-info{
		width: 80%;
		margin: 8% auto 0;
	}
	
	.car-info .title{
		font-size: 24px;
	}
	
	.car-info_bnr{
		margin-top: 2%;
		gap: 7%;
	}

	.car-info_bnr div {
  		width: 43%;
		margin-top: 7%;
	}
}
	
	
@media (min-width: 980px){
	.car-info{
		width: 70%;
		margin: 6% auto 0;
	}
	
	.car-info .title{
		font-size: 28px;
	}
	
	.car-info_bnr{
		margin-top: 2%;
		gap: 5%;
	}

	.car-info_bnr div {
  		width: 30%;
		margin-top: 3%;
	}
	
	.car-info_bnr img:hover {
  		transform: scale(0.9,0.9);
	}
}


/*---店舗情報---*/
.stores{
	width: 94%;
	margin: 18% auto 0;
}

.stores .title{
	text-align: center;
	font-weight: 700;
	font-size: 200%;
}

.store_list{
	width: 100%;
	margin-top: 5%;
  	display: flex;
  	flex-wrap: wrap;
	justify-content: center;
	gap: 5%;
}

.store_list div{
  	width: 45%;
	margin-top: 7%;
}


@media (min-width: 768px){
	.stores{
		width: 80%;
		margin: 8% auto 0;
	}
	
	.stores .title{
		font-size: 24px;
	}
	
	.store_list{
		margin-top: 2%;
		gap: 7%;
	}

	.store_list div {
  		width: 40%;
		margin-top: 7%;
	}
}


@media (min-width: 980px){
	.stores{
		width: 70%;
		margin: 6% auto 0;
	}
	
	.stores .title{
		font-size: 28px;
	}
	
	.store_list{
		margin-top: 2%;
		gap: 2%;
	}

	.store_list div {
  		width: 23.5%;
		margin-top: 3%;
	}
	
	.store_list img:hover {
  		transform: scale(0.9,0.9);
	}
}


/*---防犯カメラバナー---*/
.security-camera{
	margin-top: 20%;
	text-align: center;
}

.security-camera img{
	width: 80%;
}


@media (min-width: 768px){
	.security-camera{
		margin-top: 10%;
	}

	.security-camera img{
		width: 50%;
	}
}


@media (min-width: 980px){
	.security-camera{
		margin-top: 5%;
	}

	.security-camera img{
		/*width: 28%;*/
		width: 33%;
	}
}


/*---フォトギャラリー---*/
.gallery{
	width: 94%;
	margin: 18% auto 0;
	background: linear-gradient(to bottom, #e6f4ea 0%, #ffffff 50%, #e6f4ea 100%); /* ←ここに任意のグラデ */
  	padding: 8% 0;
	border-radius: 20px;
}

.gallery .title{
	text-align: center;
	font-weight: 700;
	font-size: 200%;
}

.gallery .title::before,
.gallery .title::after {
  content: '';
  display: inline-block;
  width: 40px;
  height: 2px;
  background: #7fbe26; /* コーポレートカラー使用 */
  margin: 0 12px;
  vertical-align: middle;
}


@media (min-width: 768px){
	.gallery{
		width: 80%;
		margin: 10% auto 0;
		padding: 5% 0;
		border-radius: 30px;
	}
	
	.gallery .title{
		font-size: 25px;
	}
}


@media (min-width: 980px){
	.gallery{
		width: 70%;
		margin: 6% auto 0;
		padding: 3% 0;
		border-radius: 40px;
	}
	
	.gallery .title{
		font-size: 29px;
	}
}


/*---フォトギャラリーslidr---*/
.gallery_slider {/*横幅94%で左右に余白を持たせて中央寄せ*/
   	width:94%;
    margin:10% auto 0;
	overflow: hidden; /* スライダーの外に出る部分を隠す */
    position: relative; /* 必要に応じて基準位置を調整 */
	direction: ltr; /* 左から右を基本に設定 */
}

.gallery_slider img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.gallery_slider .slick-slide {
    /*margin:0 10px;*/
	margin: 0 5px;
}

/* 右から左に流れるスライダー専用 */
.slider-rtl {
    direction: rtl; /* スライダーの方向を逆にする */
}

/* 左から右に流れるスライダー専用 */
.slider-ltr {
    direction: ltr; /* 通常の左から右 */
}


@media (min-width: 768px){
	.gallery_slider{
		margin:8% auto 0;
	}
}


@media (min-width: 980px){
	.gallery_slider{
		margin:5% auto 0;
	}
	
	.gallery_slider .slick-slide{
		margin: 0 10px;
	}
}



/*---ページ下部常時表示---*/
.sp-nav {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #fff; /* 必要に応じて背景色を設定 */
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding: 5px 0;
  z-index: 9999;
  box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.1); /* 上にうっすら影 */
}

.sp-nav a {
  flex: 1;
  text-align: center;
}

.sp-nav img {
  width: 100%;
  max-width: 120px; /* 必要に応じてサイズ調整 */
  height: auto;
}


@media (min-width: 768px){
	.sp-nav {
    	padding: 8px 0;
  	}
	
	.sp-nav img {
  		max-width: 160px; /* 必要に応じてサイズ調整 */
	}
}


/* PC表示では非表示 */
@media (min-width: 980px) {
  .sp-nav {
    display: none;
  }
}




