@charset "UTF-8";
/*------------------------------------------------------------------
********************************************************************
 * ▼構成
 * ・ベースとなるCSS
 * ・スマホ用（@media screen and (max-width: 767px) {} ）
 *
********************************************************************
--------------------------------------------------------------------*/

.list_box,
.no_results_box{
	max-width: 1280px;
	width: 90%;
	margin: 40px auto 0;
	padding-bottom: 120px;
	border-bottom: #bcc1ca 1px solid;
}
@media screen and (max-width: 767px) {
	.list_box,
	.no_results_box{
		margin-top: 30px;
		padding-bottom: 0;
		border-bottom: none;
	}
}

.result_num{
	text-align: center;
	font-size: 20px;
	font-weight: 500;
	color: #0f1f3f;
}
@media screen and (max-width: 767px) {
	.result_num{
		font-size: 4.26vw;
	}
}

.result_num .num{
	font-family: "Poppins", sans-serif;
	font-size: 40px;
	font-weight: 400;
	color: #0f1f3f;
}
@media screen and (max-width: 767px) {
	.result_num .num{
		font-size: 7.98vw;
	}
}

.list_box .hint{
	width: 100%;
	margin-top: 20px;
	padding: 10px 10px 12px;
	background-color: #d4d4d4;
	text-align: center;
	font-size: 16px;
	color: #1a1a1a;
}
@media screen and (max-width: 767px) {
	.list_box .hint{
		margin-top: 10px;
		font-size: 3.46vw;
	}
}

.list_box .lists{
	display: flex;
	flex-wrap: wrap;
	gap: 75px 27px;
	width: 100%;
	margin-top: 45px;
}
@media screen and (max-width: 767px) {
	.list_box .lists{
		gap: 40px;
		margin-top: 25px;
		margin-top: 24px;
	}
}

.list_box .lists > li{
	max-width: 408px;
	width: 100%;
	border: #cdd1d8 1px solid;
}
/*
.list_box .lists > li > a{
	display: block;
	width: 100%;
}
*/
.list_box .lists .image{
	position: relative;
}

.list_box .lists .image img{
	object-fit: cover;
	width: 100%;
	height: 260px;
}
@media screen and (max-width: 767px) {
	.list_box .lists .image img{
		height: 170px;
	}
}

.list_box .lists .text{
	padding: 23px 20px 32px;
	background-color: #fff;
	transition: all 1s ease;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text{
		padding: 15px 15px 20px;
	}
}
/*
.list_box .lists a:hover .text{
	background-color: #0f1f3f;
	transition: all 1s ease;
}

.list_box .lists a:hover .text p{
	color: #fff;
}
*/

.list_box .lists .text .category{
	position: relative;
	padding-left: 35px;
	font-size: 13px;
	color: #1a1a1a;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text .category{
		padding-left: 30px;
		font-size: 3.19vw;
	}
}

.list_box .lists .text .category::before{
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	display: inline-block;
	width: 25px;
	height: 1px;
	background-color: #cdd1d7;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text .category::before{
		width: 20px;
	}
}

.list_box .lists .text .name{
	margin-top: 10px;
	font-size: 22px;
	font-weight: 700;
	color: #1a1a1a;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text .name{
		font-size: 5.32vw;
	}
}

.list_box .lists .text .address{
	font-size: 16px;
	font-weight: 400;
	color: #1a1a1a;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text .address{
		font-size: 4.26vw;
	}
}

.list_box .lists .text .price_tsubo{
	/*
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 10px;
	*/
	margin-top: 15px;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text .price_tsubo{
		/*
		flex-direction: column;
		justify-content: flex-start;
		align-items: stretch;
		gap: 0;
		*/
		margin-top: 15px;
	}
}

.list_box .lists .text .price{
	font-family: "Poppins", sans-serif;
	font-size: 24px;
	font-weight: 400;
	color: #1a1a1a;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text .price{
		font-size: 5.32vw;
	}
}

.list_box .lists .text .tsubo{
	margin-top: 10px;
	font-family: "Poppins", sans-serif;
	font-size: 16px;
	font-weight: 400;
	color: #1a1a1a;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text .tsubo{
		font-size: 4.26vw;
	}
}

.list_box .lists .text .media{
	width: 100%;
	margin-top: 20px;
	padding: 10px 16px 16px;
	background-color: #f8f8f8;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text .media{
		padding: 10px;
	}
}

.list_box .lists .text .media > p{
	text-align: center;
	font-size: 12px;
	font-weight: 700;
	color: #1a1a1a;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text .media > p{
		font-size: 3.19vw;
	}
}

.list_box .lists .text .media > ul{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 8px;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text .media > ul{
		gap: 7px;
	}
}

.list_box .lists .text .media > ul li{
	max-width: 104px;
	width: 100%;
	padding: 4px 5px 6px;
	text-align: center;
	font-size: 14px;
	font-weight: 500;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text .media > ul li{
		width: 31%;
		font-size: 3.72vw;
	}
}

.list_box .lists .text .media > ul li.on{
	background-color: #fff;
	border: #004bb1 1px solid;
	color: #004bb1;
}

.list_box .lists .text .media > ul li.off{
	background-color: #e0e0e0;
	border: #e0e0e0 1px solid;
	color: #fff;
}

.list_box .lists .text .check{
	cursor: pointer;
	margin-top: 16px;
	padding: 8px 0;
	border-radius: 2px;
	text-align: center;
	transition: all .3s ease;
}

.list_box .lists .text .check.on{
	background-color: #385388;
	border: #385388 1px solid;
	border-bottom: #0f1f3f 2px solid;
}

.list_box .lists .text .check.off{
	background-color: #fff;
	border: #d4d4d4 1px solid;
	border-bottom: #d4d4d4 2px solid;
}

.list_box .lists .text input[type="checkbox"]{
	appearance: none;
	cursor: pointer;
	position: relative;
	width: 24px;
	height: 24px;
	margin-right: 10px;
	background-color: #fff;
	border: #d4d4d4 1px solid;
	border-radius: 4px;
	vertical-align: -8px;
	color: #666;
	transition: all .3s ease;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text input[type="checkbox"]{
		vertical-align: -6px;
	}
}
 
.list_box .lists .text input[type="checkbox"]:checked::before{
	content: '';
	position: absolute;
	top: 40%;
	left: 50%;
	transform: translate(-40%, -50%) rotate(50deg);
	width: 8px;
	height: 14px;
	border-right: #004bb1 1px solid;
	border-bottom: #004bb1 1px solid;
	transition: all .3s ease;
}

.list_box .lists .text .check label{
	color: #666;
	font-size: 14px;
}
@media screen and (max-width: 767px) {
	.list_box .lists .text .check label{
		font-size: 4.26vw;
	}
}

.list_box .lists .text .check.on label{
	color: #fff;
}

.list_box .submit_box{
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 50;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 15px;
	width: 100%;
	padding: 15px 0 10px;
	background-color: rgba(26, 26, 26, 0.9);
}
@media screen and (max-width: 767px) {
	.list_box .submit_box{
		flex-direction: column;
		gap: 7px;
		padding: 7px 0 10px;
	}
}

.list_box .submit_box > p{
	position: relative;
	color: #fff;
}
@media screen and (max-width: 767px) {
	.list_box .submit_box > p{
		font-size: 3.46vw;
	}
}

.list_box .submit_box > p::before{
	content: '';
	position: absolute;
	top: 40%;
	left: -20px;
	transform: translateY(-40%) rotate(50deg);
	width: 8px;
	height: 14px;
	border-right: #fff 1px solid;
	border-bottom: #fff 1px solid;
}

.list_box .submit_box button[type="submit"]{
	cursor: pointer;
	max-width: 300px;
	width: 90%;
	padding: 8px 0;
	background-color: #385388;
	border: #385388 1px solid;
	border-bottom: #0f1f3f 2px solid;
	border-radius: 2px;
	text-align: center;
	font-size: 16px;
	color: #fff;
	transition: all .3s ease;
}
@media screen and (max-width: 767px) {
	.list_box .submit_box button[type="submit"]{
		max-width: none;
		margin-left: auto;
		margin-right: auto;
	}
}

.list_box .submit_box button[type="submit"]:hover{
	border: #0f1f3f 1px solid;
	border-bottom: #0f1f3f 2px solid;
	background-color: #0f1f3f;
}



.no_results_box h2{
	text-align: center;
	font-size: 26px;
	font-weight: 600;
}
@media screen and (max-width: 767px) {
	.no_results_box h2{
		font-size: 6.38vw;
	}
}

.no_results_box .text_1{
	margin-top: 40px;
	text-align: center;
	font-size: 16px;
	color: #1a1a1a;
}
@media screen and (max-width: 767px) {
	.no_results_box .text_1{
		font-size: 3.72vw;
	}
}

.no_results_box .prev_1{
	margin-top: 80px;
}
@media screen and (max-width: 767px) {
	.no_results_box .prev_1{
		margin-top: 60px;
	}
}

