.top_campaign .inner {
	max-width: 1060px;
	margin: 40px auto;
	padding: 0 30px;
	text-align: center;
}
.top_campaign p {
	margin: 1em 0;
	font-size: 21px;
	text-align: right;
}
.top_campaign p a {
	color: #3d6cb2;
	text-decoration: underline;
}

@media (max-width: 896px) {
	.top_campaign .inner {
		margin: 40px 20px;
		padding: 0;
	}
	.top_campaign p {
		font-size: 16px;
	}
}

.shop_box a{
	margin: 20px 0;
	display: block;
}

@media (max-width: 896px) {
	.shop_box a{
		margin: 10px 0;
		display: block;
	}
}

.bg_green a{
	background-color: #027701;
}

.car_table_dt::after {
	background-color: var(--dot-color) !important;
	/* その他のスタイル */
}
@media (max-width: 896px) {
.m_price {
	background-color: var(--price-color)!important;
}}

.table-contactform7 tr:last-child{
	border-bottom: 1px solid #888888 !important;
}

.custom-checkbox input[type="checkbox"] {
  display: none;
}
.custom-checkbox .wpcf7-list-item-label {
  position: relative;
  padding-left: 32px;
  cursor: pointer;
}
.custom-checkbox .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  left: 0; top: 50%; transform: translateY(-50%);
  width: 22px; height: 22px;
  background: #fff;
  border: 1px solid #888888;
  border-radius: 4px;
  transition: background 0.2s, border-color 0.2s;
}

/* チェック時 */
.custom-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label::before {
  background: #fff;
  border-color: #888888;
}
.custom-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  left: 7px; top: -3px;
  width: 7px; height: 13px;
  border-right: 3px solid #1a2da3;
  border-bottom: 3px solid #1a2da3;
  transform: rotate(40deg);
}
@media (max-width: 767px) {
	.custom-checkbox .wpcf7-list-item-label {
		display: inline-block;
		margin: 10px 0px; /* 下に8pxの余白 */
	}
	.wpcf7-form-control-wrap{
		display: inline-block;
		margin-bottom: 0px;
	}
	.custom-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
		left: 7px; top: 1px;

	}
}

.seibi_rnk{
	display: inline-block;
	background-color: rgb(44, 167, 73);
	color: #fff;
	padding: 10px 20px;
	margin-top: 10px;
	border-radius: 5px;
	font-weight: bold;
}

.faq-item {
	margin-bottom: 5px;
	overflow: hidden;
	border-bottom: 1px solid #000;
	padding: 10px 20px;
}

.faq-question {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 15px 0px;
	cursor: pointer;
	transition: background-color 0.3s ease;

}


.question-text {
	font-weight: bold;
	color: #333;
	font-size: 18px;
	text-indent: -1.5em; /* 1行目を左にずらす */
	padding-left: 1.5em;
}

.question-text::before {
	content: "Q. ";
	color: #e74c3c;
	font-weight: bold;
	font-size: 20px;
}

.toggle-icon {
	font-size: 30px;
	font-weight: bold;
	color: #1a2da3;
	transition: transform 0.3s ease;
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.toggle-icon::before {
	content: "+";
	transition: all 0.3s ease;
}

.faq-item.active .toggle-icon::before {
	content: "−"; /* マイナス記号 */
}

.faq-answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease, padding 0.3s ease;
}

.faq-answer p::before {
	content: "A. ";
	color: #e74c3c;
	font-weight: bold;
	font-size: 20px;
}

.faq-item.active .faq-answer {
	max-height: 500px;
	padding: 0px;
}

.faq-answer p {
	margin-bottom: 10px;
	line-height: 1.6;
	color: #555;
	font-size: 18px;
	text-indent: -1.5em; /* 1行目を左にずらす */
    padding-left: 1.5em;
}

.faq-answer p:last-child {
	margin-bottom: 0;
}


/* レスポンシブ対応 */
@media (max-width: 768px) {

	.faq-item{
		padding: 10px 0px;
	}
	.faq-title {
			font-size: 16px;
			padding: 12px 0px;
	}

	.faq-question {
			padding: 12px 0px;
	}

	.question-text {
			font-size: 14px;
	}

	.faq-answer p{
			font-size: 14px;
	}

	.faq-item.active .faq-answer {
			padding: 15px 0px;
	}
	.toggle-icon {
		font-size: 20px;
		width: 20px;
		height: 20px;
	}
.question-text::before {
	content: "Q. ";
	color: #e74c3c;
	font-weight: bold;
	font-size: 16px;
}
	.faq-answer p::before {
		content: "A. ";
		color: #e74c3c;
		font-weight: bold;
		font-size: 16px;
	}

}


.fixed_banner {
	position: fixed;
	bottom: 20px;
	right: -60px;
	z-index: 1000;
	cursor: pointer;
	animation: poyoyon 2s ease-in-out infinite;
}

.fixed_banner img {
	width: 150px; /* 画像サイズを調整 */
	height: auto;
	border-radius: 15px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}
@keyframes poyoyon {
	0% {
			transform: translateX(-50%) scale(1);
	}
	25% {
			transform: translateX(-50%) scale(1.06);
	}
	50% {
			transform: translateX(-50%) scale(0.96);
	}
	75% {
			transform: translateX(-50%) scale(1.04);
	}
	100% {
			transform: translateX(-50%) scale(1);
	}
}



  /* レスポンシブ対応 */
	@media (max-width: 768px) {
		.fixed_banner {
			position: fixed;
			bottom: 100px;
			right: -40px;
			z-index: 1000;
			cursor: pointer;
			animation: poyoyon 2s ease-in-out infinite;
		}
		
		.fixed_banner img {
				width: 100px;
				border-radius: 10px;
		}
}

@media (max-width: 480px) {
		.fixed_banner img {
				width: 100px;
		}
}


.grecaptcha-badge { visibility: hidden; }

.link_button {
	position: fixed;
	right: 10px;
	bottom: 180px;
	width: 80px;
	height: 80px;
	border-radius: 50%;
}
  /* レスポンシブ対応 */
	@media (max-width: 768px) {
		.link_button {
			position: fixed;
			left: 10px;
			bottom: 100px;
			width: 70px;
			height: 70px;
			border-radius: 50%;
		}
	}