


/* 共通 *******************/
/*基本フォント指定*/
body {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 300;
	color: #000;
}
/*Safari対策*/
a {
	font-family: 'Noto Sans JP', sans-serif;
}
/*英数字用フォント*/
.eisu {
	font-family: Arial,sans-serif;
}
/*PC電話番号リンク無効*/
a[href^="tel:"] {
	pointer-events: none;
}

/*基本ページ幅*/
.wrapper {
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
}
/*見出し*/
section h2.mds {
	margin: 0 auto;
	text-align: center;
}
section h2.mds p {
	font-size: 42px;
	font-weight: 600;
	text-align: center;
}
section h2.mds span {
	width: max-content;
	display: inline-block;
	font-size: 22px;
	font-weight: 500;
	color: #fff;
	text-align: center;
	background-color: #E60012;
	border-radius: 24px;
	padding: 12px 22px 14px;
	position: relative;
	margin-bottom: 30px;
}
section h2.mds span.santa::before {
	position: absolute;
	top: -72px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	background-image: url(../images/common/midasi_santa.png);
	content: '';
	display: inline-block;
	width: 107px;
	height: 100px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: middle;
}
section h2.mds span::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -10px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #E60012 transparent transparent transparent;
	border-width: 12px 7px 0 7px;
}
section h2.mds b {
	color: #E60012;
	font-weight: 600;
}







/* ヘッダー *******************/
header {
	background-color: #E60011;
}
header > div:nth-of-type(1) {
	width: 96%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 15px 0;
	display: flex;
	justify-content: space-between;
}
header h1 {
	width: 430px;
	overflow: hidden;
}
header h1 a {
	width: 250px;
	position: relative;
 	display:inline-block;
	text-decoration: none;
	outline: none;
	overflow: hidden;
}
a.logo:hover {
	transform: translate3d(0, 1px, 0);
}
a.logo::before {
	content: '';
	/*絶対配置でキラッと光るの位置を決める*/
	position: absolute;
	top: 0;
	left: -75%;
	/*キラッと光る形状*/
	width: 50%;
	height: 100%;
	background: linear-gradient(to right, rgba(255,255,255,0.5) 0%, rgba(255,255,255,.5) 100%);
	transform: skewX(-25deg);
}
a.logo:hover::before {
	animation: shine 0.7s;
}
@keyframes shine {
	100% {
		left: 125%;
	}
}


header h1 a img {
	width: 100%;
	height: auto;
	float: left;
}
header h1 p {
	width: max-content;
	display: block;
	float: right;
	font-size: 18px;
	font-weight: 500;
	color: #fff;
	margin-top: 28px;
}
/*右側メニュー群*/
header div.menu {
	display: flex;
	justify-content: flex-end;
}
header div.menu ul {
	width: 120px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: end;
	flex-wrap: wrap;
	margin-right: 13px;
}
header div.menu ul li a {
	font-size: 14px;
	font-weight: 400;
	color: #fff;
	position: relative;
}
header div.menu ul li:nth-of-type(1) {
	margin-bottom: 8px;
}
/*オンマウスでライン表示*/
header div.menu ul li a::before {
	background: #fff;
	content: '';
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: -1px;
	margin: auto;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
header div.menu ul li a:hover::before {
	transform-origin: center top;
	transform: scale(1, 1);
}
header div.menu ul li a:hover {
	font-weight: 500;
}
/*2白ボタン*/
header div.menu > a {
	display: block;
	background-color: #fff;
	border-radius: 4px;
	padding: 8px 8px 7px;
	position: relative;
	filter: drop-shadow(0px 2px 0px rgba(0,0,0,0.2));
}
header div.menu > a:hover {
	background-color: #f4f4f4;
	filter: drop-shadow(0px 0px 0px rgba(255,255,255,1.0));
	transform: translate3d(0, 2px, 0);
}
/*電話番号*/
header div.menu > a.tel {
	width: 150px;
	text-align: center;
	margin-right: 10px;
}
header div.menu > a.tel p {
	font-size: 18px;
	font-weight: bold;
	color: #222222;
	margin-top: 5px;
}
header div.menu > a.tel span {
	font-size: 12px;
	font-weight: 500;
	color: #E60011;
}
header div.menu > a.tel span b {
	display: inline-block;
	font-size: 7px;
	font-size: 500;
	color: #E60011;
	background-color: #FFF100;
	padding: 1px 2px;
	margin-right: 5px;
}
/*WEB車検予約*/
header div.menu > a:last-of-type {
	width: 166px;
	font-size: 16px;
	font-weight: 500;
	color: #E60011;
	padding-top: 17px;
	padding-left: 45px;
}
header div.menu > a:last-of-type::before {
	position: absolute;
	top: 50%;
	left: 10px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	background-image: url(../images/common/header_reserve.png);
	content: '';
	display: inline-block;
	width: 32px;
	height: 32px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: middle;
}
/*ハンバーガーメニュー*/
div.sp_menu {
	display: none;
}





/* グローバルメニュー *******************/
div.gv_menu {
	background-color: #FFFFFF;
	border-bottom: 1px solid #CCCCCC;
}
div.gv_menu ul {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
}
div.gv_menu ul > li {
	width: calc(100% / 6);
}
div.gv_menu ul > li > a {
	width: 100%;
	height: 58px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-size: min(1.3vw,16px);
	font-weight: 500;
	color: #222222;
	line-height: 1.2;
	text-align: center;
	position: relative;
}
/*オイル交換その他のサービス*/
div.gv_menu ul > li:last-of-type > a {
	text-align: left;
	color: #1A4FB3;
	padding: 0 10px;
	pointer-events:none;
	position: relative;
}
div.gv_menu ul > li:last-of-type > a::after {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	content: '\f13a';
	font-size: 18px;
	font-weight: 900;
	font-family: "Font Awesome 6 Free";
}
/*hover*/
div.gv_menu ul > li:not(:last-of-type) > a::before {
	background: #E60011;
	content: '';
	width: 100%;
	height: 3px;
	position: absolute;
	left: 0;
	bottom: -1px;
	margin: auto;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
div.gv_menu ul > li:not(:last-of-type) > a:hover::before {
	transform-origin: center top;
	transform: scale(1, 1);
}
div.gv_menu ul > li:not(:last-of-type) > a:hover {
	color: #E60011;
}
/*メガメニュー表示中*/
div.gv_menu ul > li.mega_btn.active {
	background-color: #E7EDF7;
}
/*メガメニュー用*/
header {
	position: relative;
	z-index: 2;
}
header div.mega_menu {
	display: none;
	width: 1200px;
	overflow: hidden;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	padding: 20px 30px 30px ;
	background-color: #E7EDF7;
	border-radius: 0 0 8px 8px;
	box-sizing: border-box;
}
body {
	position: relative;
	-webkit-transition: all 0.6s;
	transition: all 0.6s;
}
body:after {
	width: 100%;
	height: 100%;
	position: absolute;
	background-color: rgba(0,0,0,0.2);
	content: '';
	left: 0;
	top: 0;
	z-index: -1;
	opacity: 0;
	-webkit-transition: all 0.6s;
	transition: all 0.6s;
}
body.overlay:after {
	z-index: 1;
	opacity: 1;
}
/*メガメニュー内容*/
div.gv_menu ol.oil_btns {
	width: 490px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
div.gv_menu ol.oil_btns li {
	width: 235px;
	margin-bottom: 24px;
}
div.gv_menu ol.oil_btns li {
	width: 235px;
}
div.gv_menu ol.oil_btns li a {
	width: 100%;
	display: block;
	background-color: #fff;
	padding-top: 12px;
	border: 1px solid #1A4FB3;
	border-radius: 4px;
	text-align: center;
	filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, .4));
}
div.gv_menu ol.oil_btns li a:hover {
	opacity: 0.8;
	filter: drop-shadow(0px 0px 0px rgba(255, 255, 255, 1.0));
	transform: translate3d(0, 3px, 0);
}
div.gv_menu ol.oil_btns li a img {
	width: 64px;
	height: auto;
}
div.gv_menu ol.oil_btns li a span {
	display: block;
	font-size: 15px;
	font-weight: 500;
	color: #222222;
	margin-top: 5px;
	margin-bottom: 12px;
}
div.gv_menu ol.oil_btns li a p {
	width: 100%;
	font-size: 12px;
	font-weight: 400;
	color: #fff;
	background-color: #1A4FB3;
	padding: 6px 0;
}
div.gv_menu ol.oil_btns li a p::after {
	content: '\f138';
	color: #fff;
	font-size: 12px;
	font-weight: 900;
	font-family: "Font Awesome 6 Free";
	margin-left: 10px;
}
/*上記以外のお問い合わせボタン*/
div.gv_menu ol.oil_btns + a {
	width: 480px;
	display: block;
	margin: 0 auto;
	font-size: 15px;
	font-weight: 500;
	color: #222222;
	text-align: center;
	background-color: #fff;
	padding: 17px 0;
	border: 1px solid #1A4FB3;
	border-radius: 4px;
	filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, .4));
}
div.gv_menu ol.oil_btns + a:hover {
	opacity: 0.8;
	filter: drop-shadow(0px 0px 0px rgba(255, 255, 255, 1.0));
	transform: translate3d(0, 3px, 0);
}
div.gv_menu ol.oil_btns + a::before {
	background-image: url(../images/common/oth_contact.png);
	content: '';
	display: inline-block;
	width: 45px;
	height: 24px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: middle;
}








/**********TOPお知らせ部分**********/
a.top_news {
	display: block;
	width: 95%;
	max-width: 1280px;
	margin: 10px auto;
	background-color: #fff;
}
/*hover*/
a.top_news:hover {
	background-color: #FCE8EA;
}
a.top_news:hover dl dd {
	font-weight: 500;
}
a.top_news dl {
	width: 100%;
	border: 2px solid #E60011;
	border-radius: 8px;
	position: relative;
	display: flex;
}
a.top_news dl::after {
	position: absolute;
	top: 50%;
	right: 25px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	content: '\f054';
	color: #E60011;
	font-size: 18px;
	font-weight: 900;
	font-family: "Font Awesome 6 Free";
}
a.top_news dl dt {
	color: #E60011;
	font-size: 20px;
	border-radius: 6px;
	margin: 0 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
a.top_news dl dd {
	font-size: 16px;
	font-weight: 400;
	color: #333;
	line-height: 20px;
	margin: 15px 0;
	padding-right: 50px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}












/* 他サービスバナー群 *******************/
ul.sv_bnrs {
	width: 680px;
	margin: 40px auto 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
ul.sv_bnrs li {
	width: 320px;
	/* margin-left: 20px; */
	/* margin-right: 20px; */
	margin-bottom: 16px;
}
ul.sv_bnrs li a {
	width: 100%;
	display: block;
	filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.2));
}
ul.sv_bnrs li a:hover {
	opacity: 0.8;
	filter: drop-shadow(0px 0px 0px #fff);
	transform: translate3d(0, 6px, 0);
}
ul.sv_bnrs li a img {
	width: 100%;
	height: auto;
}
ul.sv_bnrs li p {
	font-size: 14px;
	font-weight: 500;
	color: #1F2537;
	margin-top: 10px;
}






/* 共通CVエリア *******************/
section.cv {
	width: 90%;
	max-width: 1080px;
	margin: 0 auto;
	border: 4px solid #EC2D2C;
	border-radius: 22px 22px 16px 16px;
	background-color: #F4F5F9;
}
section.cv > div:nth-of-type(1) img {
	width: 100%;
	height: auto;
}
/*WEB車検予約する*/
section.cv > div:nth-of-type(1) > a {
	width: 750px;
	margin: 60px auto 0;
	display: block;
	font-size: 36px;
	font-weight: 500;
	color: #FFF346;
	text-align: center;
	background-color: #EC2D2C;
	border-radius: 8px;
	padding: 35px 0 35px;
	position: relative;
	filter: drop-shadow(0px 6px 0px #A40F19);
}
section.cv > div:nth-of-type(1) > a:hover {
	opacity: 0.9;
	filter: drop-shadow(0px 0px 0px rgba(255, 255, 255, 1.0));
	transform: translate3d(0, 6px, 0);
}
section.cv > div:nth-of-type(1) > a > span {
	font-size: 30px;
	color: #fff;
}
section.cv > div:nth-of-type(1) > a::before {
	position: static;
	display: inline;
	background-image: url(../images/common/icon_calendar.svg);
	content: '';
	display: inline-block;
	width: 36px;
	height: 34px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: bottom;
	margin-right: 10px;
}
/*WEB車検予約すると5,500円割引！*/
section.cv > div:nth-of-type(1) > a p {
	width: max-content;
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	font-size: 19px;
	font-weight: 500;
	color: #1F2537;
	padding: 5px 30px;
	background-color: #FFF346;
	border-radius: 20px;
	filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, .2));
}
section.cv > div:nth-of-type(1) > a p span {
	color: #E60012;
	font-weight: 600;
}
section.cv > div:nth-of-type(1) > a p::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -10px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #FFF346 transparent transparent transparent;
	border-width: 10px 5px 0 5px;
}
/*無料車検見積り*/
section.cv > div:nth-of-type(2) {
	padding-bottom: 70px;
}
section.cv > div:nth-of-type(2) a {
	width: 600px;
	margin: 60px auto 0;
	display: block;
	font-size: 30px;
	font-weight: 500;
	color: #FFF;
	line-height: 36px;
	text-align: center;
	background-color: #1A4FB3;
	border-radius: 8px;
	padding: 30px 0;
	position: relative;
	filter: drop-shadow(0px 6px 0px #123B87);
}
section.cv > div:nth-of-type(2) a:hover {
	opacity: 0.9;
	filter: drop-shadow(0px 0px 0px rgba(255, 255, 255, 1.0));
	transform: translate3d(0, 6px, 0);
}
section.cv > div:nth-of-type(2) a::before {
	position: static;
	display: inline;
	background-image: url(../images/common/yen_icon.svg);
	content: '';
	display: inline-block;
	width: 36px;
	height: 36px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: bottom;
}










/* フッター *******************/
footer {
	background-color: #F5F5F5;
}
footer > h2 {
	background-color: #E60011;
	padding: 40px 0;
	margin-bottom: 40px;
}
footer > h2 a {
	width: 392px;
	display: block;
	margin: 0 auto;
	position: relative;
	text-decoration: none;
	outline: none;
	overflow: hidden;
}
footer > h2 a img {
	width: 100%;
	height: auto;
}

/*CVボタン群*/
footer > ul {
	width: 1000px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
footer > ul li {
	width: 480px;
}
/*WEB車検予約ボタン*/
footer ul.cvbtn li:nth-of-type(1) a {
	width: 100%;
	display: block;
	background-color: #E60011;
	border-radius: 8px;
	padding: 22px 0 23px 120px;
	filter: drop-shadow(0px 6px 0px #A40F19);
	margin-bottom: 20px;
}
footer ul.cvbtn li:nth-of-type(1) a span {
	display: block;
	font-size: 16px;
	font-weight: 400;
	color: #fff;
	margin-bottom: 5px;
}
footer ul.cvbtn li:nth-of-type(1) a p {
	font-size: 31px;
	font-weight: 500;
	color: #FFF100;
	position: relative;
}
footer ul.cvbtn li:nth-of-type(1) a p::before {
	position: absolute;
	top: -14px;
	left: -60px;
	background-image: url(../images/common/icon_calendar.svg);
	content: '';
	display: inline-block;
	width: 45px;
	height: 43px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: bottom;
}
footer ul.cvbtn li:nth-of-type(1) a p b {
	font-weight: 500;
	color: #fff;
}
/*車検無料見積お申込み*/
footer ul.cvbtn li:nth-of-type(2) a {
	width: 100%;
	display: block;
	background-color: #1A4FB3;
	border-radius: 8px;
	padding: 33px 0 33px;
	position: relative;
	filter: drop-shadow(0px 6px 0px #123B87);
	font-size: 31px;
	font-weight: 500;
	color: #fff;
	text-align: center;
}
footer ul.cvbtn li:nth-of-type(2) a b {
	color: #FFF100;
	font-weight: 500;
}
/*hover*/
footer ul.cvbtn li a:hover {
	filter: drop-shadow(0px 0px 0px #fff) brightness(1.1);
	transform: translate3d(0, 6px, 0);
}

/*お電話でのお見積もり・ご相談はこちら*/
footer > h3 {
	font-size: 24px;
	font-weight: 500;
	color: #E60011;
	text-align: center;
	margin-top: 23px;
	margin-bottom: 10px;
}

/*電話番号ボタン*/
footer ul.telbtn li a {
	width: 100%;
	display: block;
	background-color: #fff;
	border: 1px solid #CCCCCC;
	border-radius: 8px;
	padding: 11px 0px 11px 120px;
	filter: drop-shadow(0px 6px 0px rgba(0, 0, 0, .2));
}
footer ul.telbtn li a:hover {
	filter: drop-shadow(0px 0px 0px #fff) brightness(1.1);
	transform: translate3d(0, 6px, 0);
}
footer ul.telbtn li a span {
	width: 155px;
	height: 32px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: #E60011;
	border-radius: 8px;
	font-size: 18px;
	font-weight: 500;
	color: #FFF;
	/* margin-left: 66px; */
	margin-bottom: 5px;
}
footer ul.telbtn li a b {
	display: inline-block;
	font-size: 40px;
	font-weight: bold;
	color: #222222;
	margin-bottom: 3px;
	position: relative;
}
footer ul.telbtn li a b::before {
	position: absolute;
	top: -30px;
	left: -95px;
	background-image: url(../images/common/free.png);
	content: '';
	display: inline-block;
	width: 70px;
	height: 70px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: middle;
}

/*受付時間*/
footer > p {
	font-size: 14px;
	font-weight: 500;
	color: #222;
	text-align: center;
	margin-top: 16px;
}

/*フッターメニュー*/
div.ft_menu {
	width: 1000px;
	margin: 60px auto 60px;
	overflow: hidden;
}
div.ft_menu dl:nth-of-type(1) {
	width: 487px;
	float: left;
}
div.ft_menu dl:nth-of-type(2) {
	width: 487px;
	float: right;
}
div.ft_menu dl dt {
	font-size: 16px;
	font-weight: 500;
	color: #222222;
	padding-bottom: 10px;
	border-bottom: 1px solid #E60011;
	margin-bottom: 13px;
}
div.ft_menu dl dd ol {
	display: flex;
	flex-wrap: wrap;
}
div.ft_menu dl dd ol li {
	width: 50%;
	position: relative;
}
div.ft_menu dl dd ol li::before {
	position: absolute;
	top: 16px;
	left: 0;
	display: inline-block;
	content: '';
	width: 8px;
	height: 1px;
	background-color: #E60011;
	vertical-align: super;
	margin-right: 10px;
}
div.ft_menu dl dd ol li a {
	display: inline-block;
	font-size: 14px;
	font-weight: 500;
	color: #222222;
	line-height: 1.4;
	margin: 7px 0;
	padding-left: 16px;
	position: relative;
}
/*オンマウスでライン表示*/
div.ft_menu dl dd ol li a::before {
	background: #E60011;
	content: '';
	width: 100%;
	height: 2px;
	position: absolute;
	left: 0;
	bottom: 0px;
	margin: auto;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
div.ft_menu dl dd ol li a:hover::before {
	transform-origin: center top;
	transform: scale(1, 1);
}
div.ft_menu dl dd ol li a:hover {
	font-weight: 500;
	color: #E60011;
}
/*オイル交換・その他*/
div.ft_menu dl:nth-of-type(2) dt {
	border-bottom: 1px solid #1A4FB3;
}
div.ft_menu dl:nth-of-type(2) dd ol li::before {
	background-color: #1A4FB3;
}
/*オンマウスでライン表示*/
div.ft_menu dl:nth-of-type(2) dd ol li a::before {
	background: #1A4FB3;
}
div.ft_menu dl:nth-of-type(2) dd ol li a:hover {
	color: #1A4FB3;
}

/*コピーライト*/
div.copy {
	padding: 0 0 10px;
}
div.copy > p {
	font-size: 12px;
	font-weight: 300;
	text-align: center;
}




/*SPハンバーガーメニューボタン*/
div.menu-btn {
	display: none;
}



/*SP固定メニュー*/
div#floatBtn {
	display: none;
}














.ipc {
	display: inline;
}
.isp {
	display: none !important;
}
.bpc {
	display: block;
}
.bsp {
	display: none !important;
}
/*■■■■■■■■■■■■■■ sp ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
@media screen and (max-width: 1079px) {
*{}
*{}
*{}
/*■■■■■■■■■■■■■■ sp ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.ipc {
	display: none !important;
}
.isp {
	display: inline !important;
}
.bpc {
	display: none !important;
}
.bsp {
	display: block !important;
}










/* 共通 *******************/
/*SP電話番号リンク有効*/
a[href^="tel:"] {
	pointer-events: auto;
}
/*見出し*/
section h2.mds p {
	font-size: min(6vw,26px);
	line-height: 1.4;
}
section h2.mds span {
	font-size: 16px;
	width: auto;
	padding: 7px 20px 9px;
    margin-bottom: 20px;
}
section h2.mds span.santa::before {
	width: 78px;
	height: 73px;
	top: -53px;
}
section h2.mds span::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -10px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #E60012 transparent transparent transparent;
	border-width: 12px 7px 0 7px;
}
section h2.mds b {
	font-size: 36px;
	color: #E60012;
}











/* ヘッダー *******************/
header > div:nth-of-type(1) {
	padding: 10px 0;
}
header h1 {
	width: 150px;
}
header h1 a {
	width: 149px;
}
header h1 p {
	font-size: 12px;
	margin-top: 5px;
}
/*右側メニュー群*/
header div.menu {
	display: none;
}
@media screen and (max-width: 1139px) {

	header div.menu ul li:nth-of-type(1) {
		border-right: 1px solid #E60011;
	}
}







/*ハンバーガーメニュー*/
div.sp_menu {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
}
div.menu-btn {
	float: right;
	display: block;
	width: 46px;
	height: 46px;
}
div.menu-btn img {
	width: 100%;
	height: auto;
}
div.menu-btn {
	display: inline-block;
	cursor: pointer;
	position: relative;
}
/*ハンバーガーメニュー中身*/
div.h_menu {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 4;
	width: 100%;
	max-width: 520px;/*ハンバーガーメニューの最大幅*/ 
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	transform: translateX(100%);
	transition: transform .3s linear;
	background-color: #FCE8EA;
	padding: 10px 0 0;
}
div.h_menu.is-active {
	transform: translateX(0);
}
div.h_menu.is-end {
	position: absolute;
}
/*ハンバーガーメニュー起動時の背景*/
div.hamburger-cover {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(3,3,3,.5);
	z-index: 4;
	cursor: pointer;
	visibility: hidden;
}
div.hamburger-cover.is-active {
	visibility: visible;
}
/*閉じるボタン*/
div.close-btn {
	width: 90%;
	display: block;
	font-size: 14px;
	font-weight: 500;
	color: #E60011;
	text-align: center;
	padding: 7px 0;
	border: 1px solid #E60011;
	border-radius: 4px;
	margin-bottom: 20px;
	cursor: pointer;
	position: relative;
}
div.close-btn::after {
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	content: '\f00d';
	font-size: 20px;
	font-weight: 900;
	font-family: "Font Awesome 6 Free";
}

/*ここから予約で最大13,200円割引*/
div.sp_menu div.h_menu > span {
	width: 90%;
	max-width: 400px;
	margin: 0 auto 16px;
	background-color: #FFE3E5;
	border: 1px solid #E60011;
	border-radius: 14px;
	font-size: min(4vw, 14px);
	font-weight: 600;
	color: #E60011;
	padding: 6px 0 6px min(24vw, 100px);
	position: relative;
}
div.sp_menu div.h_menu > span::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	background-image: url(../images/common/midasi_santa.png);
	content: '';
	display: inline-block;
	width: 85px;
	height: 50px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: middle;
}
div.sp_menu div.h_menu > span::after {
    display: block;
    content: "";
    position: absolute;
    bottom: -6px;
    left: 120px;
    width: 0px;
    height: 0px;
    margin: auto;
    border-style: solid;
    border-color: #E60011 transparent transparent transparent;
    border-width: 6px 4px 0 4px;
}

/*CVボタン群*/
div.sp_menu ul.cvbtn,
div.sp_menu ul.telbtn {
	width: 90%;
	max-width: 400px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
div.sp_menu ul.cvbtn li,
div.sp_menu ul.telbtn li {
	width: 100%;
}
/*WEB車検予約ボタン*/
div.sp_menu ul.cvbtn li:nth-of-type(1) a {
	width: 100%;
	display: block;
	background-color: #E60011;
	border-radius: 8px;
	padding: 21px 0;
	filter: drop-shadow(0px 6px 0px #A40F19);
	margin-bottom: 20px;
	text-align: center;
}
div.sp_menu ul.cvbtn li:nth-of-type(1) a span {
	display: block;
	font-size: 16px;
	font-weight: 400;
	color: #fff;
	margin-bottom: 5px;
}
div.sp_menu ul.cvbtn li:nth-of-type(1) a p {
	font-size: min(7vw,24px);
	font-weight: 500;
	color: #FFF100;
	position: relative;
}
div.sp_menu ul.cvbtn li:nth-of-type(1) a p::before {
	background-image: url(../images/common/icon_calendar.svg);
	content: '';
	display: inline-block;
	width: 26px;
	height: 24px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: bottom;
	margin-right: 8px;
}
div.sp_menu ul.cvbtn li:nth-of-type(1) a p b {
	font-weight: 500;
	color: #fff;
}
/*車検無料見積お申込み*/
div.sp_menu ul.cvbtn li:nth-of-type(2) a {
	width: 100%;
	display: block;
	background-color: #1A4FB3;
	border-radius: 8px;
	padding: 23px 0;
	position: relative;
	filter: drop-shadow(0px 6px 0px #123B87);
	font-size: min(7vw, 24px);
	font-weight: 500;
	color: #fff;
	text-align: center;
}
div.sp_menu ul.cvbtn li:nth-of-type(2) a b {
	color: #FFF100;
	font-weight: 500;
}

/*お電話でのお見積もり・ご相談はこちら*/
div.sp_menu h3 {
	font-size: 16px;
	font-weight: 600;
	color: #E60011;
	text-align: center;
	margin-top: 23px;
	margin-bottom: 10px;
}

/*電話番号ボタン*/
div.sp_menu ul.telbtn li a {
	width: 100%;
	display: block;
	background-color: #fff;
	border: 1px solid #CCCCCC;
	border-radius: 8px;
	padding: 9px 0px 4px 85px;
	filter: drop-shadow(0px 6px 0px rgba(0, 0, 0, .2));
}
div.sp_menu ul.telbtn li a:hover {
	filter: drop-shadow(0px 0px 0px #fff) brightness(1.1);
	transform: translate3d(0, 6px, 0);
}
div.sp_menu ul.telbtn li a span {
	width: 116px;
	height: 24px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: #E60011;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 500;
	color: #FFF;
	margin-left: 0;
	margin-bottom: 5px;
}
div.sp_menu ul.telbtn li a b {
	display: inline-block;
	font-size: min(8vw,32px);
	font-weight: bold;
	color: #222222;
	margin-bottom: 3px;
	position: relative;
}
div.sp_menu ul.telbtn li a b::before {
	position: absolute;
	top: -30px;
	left: -70px;
	background-image: url(../images/common/free.png);
	content: '';
	display: inline-block;
	width: 58px;
	height: 58px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: middle;
}
div.sp_menu ul.telbtn li:nth-of-type(1) a {
	margin-bottom: 20px;
}

/*受付時間*/
div.sp_menu div.h_menu > p {
	font-size: 12px;
	font-weight: 500;
	color: #222;
	line-height: 1.6;
	text-align: center;
	margin-top: 16px;
}

/*リンクボタン*/
div.h_menu div.links {
	width: 90%;
	display: flex;
	justify-content: space-between;
	margin-top: 14px;
}
div.h_menu div.links a {
	width: 100%;
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: #222222;
	text-align: center;
	background-color: #fff;
	border: 1px solid #E60011;
	border-radius: 8px;
	padding: 21px 10px;
	position: relative;
	filter: drop-shadow(0px 4px 0px rgba(0, 0, 0, .4));
}
div.h_menu div.links a::before {
	content: '\f157';
	font-size: 16px;
	font-weight: 900;
	color: #E60011;
	font-family: "Font Awesome 6 Free";
	margin-right: 8px;
}
div.h_menu div.links a::after {
	content: '\f138';
	font-size: 16px;
	font-weight: 900;
	color: #E60011;
	font-family: "Font Awesome 6 Free";
	margin-left: 20px;
}
/*オイル交換・その他サービス一覧を見る*/
div.h_menu div.oil {
	width: 90%;
	background-color: #FFF;
	border-radius: 8px;
	border: 1px solid #1A4FB3;
	filter: drop-shadow(0px 4px 0px rgba(0, 0, 0, .4));
	margin-top: 14px;
}
/*OPENボタン*/
div.h_menu div.open {
	font-size: min(3.9vw, 14px);
	font-weight: 600;
	color: #222222;
	background-color: #E7EDF7;
	padding: 22px 10px;
	border-radius: 8px 8px 8px 8px;
	position: relative;
	cursor: pointer;
}
div.h_menu div.open::before {
	content: '\f613';
	font-size: 16px;
	font-weight: 900;
	color: #1A4FB3;
	font-family: "Font Awesome 6 Free";
	margin-right: min(1vw,10px);
}
div.h_menu div.open::after {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	content: '\f055';
	color: #1A4FB3;
	font-size: 16px;
	font-weight: 900;
	font-family: "Font Awesome 6 Free";
}
div.h_menu div.open.active::after {
	content: '\f056';
}
/*OPEN領域*/
div.h_menu div.open_area {
	padding: 10px 10px;
	background-color: #E7EDF7;
	border-top: 1px solid #1A4FB3;
	border-radius: 0 0 8px 8px;
}
div.h_menu div.open_area ul {
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
div.h_menu div.open_area ul li {
	width: 50%;
	margin: 5px 0;
}
div.h_menu div.open_area ul li a {
	width: 100%;
	display: block;
	font-size: min(4vw,14px);
	font-weight: 600;
	color: #222222;
	text-align: left;
	padding: 10px 10px;
	position: relative;
}
div.h_menu div.open_area ul li a::after {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	content: '\f054';
	color: #1A4FB3;
	font-size: 12px;
	font-weight: 900;
	font-family: "Font Awesome 6 Free";
}
/*テキストリンク*/
div.h_menu > ul:last-of-type {
	width: calc(100% - 22px);
	margin: 15px auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
div.h_menu > ul:last-of-type li {
	width: 50%;
	margin: 5px 0;
}
div.h_menu > ul:last-of-type li a {
	width: 100%;
	display: block;
	font-size: min(4vw, 14px);
	font-weight: 600;
	color: #222222;
	text-align: left;
	padding: 10px 10px;
	position: relative;
}
div.h_menu > ul:last-of-type li a::after {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	content: '\f054';
	color: #E60011;
	font-size: 12px;
	font-weight: 900;
	font-family: "Font Awesome 6 Free";
}






/*グローバルメニュー*/
div.gv_menu {
	display: none;
}









/**********TOPお知らせ部分**********/
a.top_news {
	width: 95%;
}
a.top_news dl::after {
	right: 20px;
	font-size: 16px;
}
a.top_news dl dt {
	margin: 0 15px;
}
a.top_news dl dd {
	margin: 8px 0;
	font-size: 14px;
	padding-right: 40px;
}















/* 他サービスバナー群 *******************/
ul.sv_bnrs {
	width: 100%;
	margin-top: 20px;
}
ul.sv_bnrs li {
	width: 100%;
	margin-bottom: 20px;
	margin-left: 0px;
	margin-right: 0px;
}











/* 共通CVエリア *******************/
section.cv {
	width: 100%;
	max-width: 750px;
	border-radius: 0;
	border-top: none;
	border-left: none;
	border-right: none;
}
/*WEB車検予約する*/
section.cv > div:nth-of-type(1) > a:nth-of-type(1) {
	width: 90%;
	max-width: 400px;
	font-size: min(8vw,28px);
	padding: 23px 0;
	margin-top: 40px;
}
section.cv > div:nth-of-type(1) > a:nth-of-type(1)::before {
	width: 28px;
	height: 26px;
}
section.cv > div:nth-of-type(1) > a:nth-of-type(1) > span {
	font-size: 24px;
}
/*WEB車検予約すると5,500円割引！*/
section.cv > div:nth-of-type(1) > a:nth-of-type(1) p {
	width: max-content;
	font-size: 14px;
	padding: 7px 20px;
}
/*無料車検見積り*/
section.cv > div:nth-of-type(2) {
    padding-bottom: 30px;
}
section.cv > div:nth-of-type(2) p {
	font-size: 16px;
	margin-left: 5%;
	margin-right: 5%;
	line-height: 1.4;
}
/*無料車検見積り*/
section.cv > div:nth-of-type(2) a {
	width: 85%;
	max-width: 400px;
	margin: 25px auto 0;
	font-size: 18px;
	padding: 13px 0 14px;
}
section.cv > div:nth-of-type(2) a::before {
	width: 22px;
	height: 22px;
	vertical-align: text-bottom;
}









/* フッター *******************/
footer {
	padding-bottom: 50px;
}
footer > h2 {
	padding: 32px 0;
	margin-bottom: 37px;
}
footer > h2 a {
	width: 80%;
	max-width: 392px;
}
/*CVボタン群*/
footer > ul {
	flex-wrap: wrap;
	width: 90%;
	max-width: 400px;
}
footer > ul li {
	width: 100%;
}
/*WEB車検予約ボタン*/
footer ul.cvbtn li:nth-of-type(1) a {
	width: 100%;
	text-align: center;
	padding: 21px 0;
}
footer ul.cvbtn li:nth-of-type(1) a p {
	font-size: min(7vw,24px);
}
footer ul.cvbtn li:nth-of-type(1) a p::before {
	position: static;
	width: 26px;
	height: 24px;
	margin-right: 8px;
}

/*車検無料見積お申込み*/
footer ul.cvbtn li:nth-of-type(2) a {
	width: 100%;
	font-size: min(7vw, 24px);
	padding: 23px 0;
}

/*ここから予約で最大13,200円割引*/
footer > span {
	width: 90%;
	max-width: 400px;
	margin: 0 auto 16px;
	background-color: #FFE3E5;
	border: 1px solid #E60011;
	border-radius: 14px;
	font-size: min(4vw, 14px);
	font-weight: 600;
	color: #E60011;
	padding: 6px 0 6px min(24vw, 100px);
	position: relative;
}
footer > span::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	background-image: url(../images/common/midasi_santa.png);
	content: '';
	display: inline-block;
	width: 85px;
	height: 50px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: middle;
}
footer > span::after {
	display: block;
	content: "";
	position: absolute;
	bottom: -6px;
	left: 120px;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #E60011 transparent transparent transparent;
	border-width: 6px 4px 0 4px;
}

/*お電話でのお見積もり・ご相談はこちら*/
footer > h3 {
	font-size: 16px;
	margin-top: 30px;
}

/*電話番号ボタン*/
footer ul.telbtn li a {
	padding: 9px 0px 4px 85px;
}
footer ul.telbtn li a span {
	width: 116px;
	height: 24px;
	font-size: 14px;
	margin-left: 0;
}
footer ul.telbtn li a b {
	font-size: min(8vw,32px);
}
footer ul.telbtn li a b::before {
	width: 58px;
	height: 58px;
	left: -70px;
}

footer ul.telbtn li:nth-of-type(1) a {
	margin-bottom: 20px;
}

/*受付時間*/
footer > p {
	font-size: 12px;
	line-height: 1.6;
}

/*フッターメニュー*/
div.ft_menu {
	width: 90%;
	max-width: 600px;
	margin-top: 25px;
	margin-bottom: 30px;
}
div.ft_menu dl:nth-of-type(1) {
	width: 100%;
	float: none;
	margin-bottom: 30px;
}
div.ft_menu dl:nth-of-type(2) {
	width: 100%;
	float: none;
}
/* オイル交換・その他 */
div.ft_menu dl:nth-of-type(2) dd ol li:last-of-type {
	width: 100%;
}
div.ft_menu dl dd ol li a {
	font-size: min(4vw,14px);
}
div.ft_menu dl dd ol li a span {
	display: inline-block;
}

/*SP固定メニュー*/
div#floatBtn {
	display: block;
	width: 100%;
	opacity: 0.0;
	visibility: hidden;
	transition: 0.4s;
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 2;
}
div#floatBtn.is-active {
	opacity: 1.0;
	visibility: visible;
}

div#floatBtn ul {
	width: 95%;
	max-width: 600px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
div#floatBtn ul li {
	width: 49%;
}
div#floatBtn ul li > a {
	width: 100%;
	height: 52px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: #DC000D;
	border-radius: 4px 4px 0 0;
	font-size: min(5vw, 18px);
	color: #FFF703;
	font-weight: 500;
	text-align: center;
	border: 1px solid #fff;
}
div#floatBtn ul li:nth-of-type(2) > a {
	color: #FFF;
	background-color: #1A4FB3;
}
div#floatBtn ul li > a p {
	width: max-content;
	margin: 0 auto;
	line-height: 20px;
}
div#floatBtn ul li > a p::before {
	background-image: url(../images/common/icon_calendar.svg);
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: bottom;
	margin-right: 5px;
}
div#floatBtn ul li:nth-of-type(2) > a p::before {
	background-image: url(../images/common/yen_icon.svg);
}









/*■■■■■■■■■■■■■■ sp ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
}
/*■■■■■■■■■■■■■■ sp ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/