@charset "utf-8";
/*----------------------------------------------------------------------------------------

	bese.css

----------------------------------------------------------------------------------------*/

body > .wrapper {
	display: block;/*ibox対策*/
}
.cont-w {
	margin-right: auto;
	margin-left: auto;
	width: 1080px !important;
}
.dnone_pc {
	display: none !important;
}

/* 画像中央配置 ///
---------------------------------------------- */
.img-fit img {
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	pointer-events: none;
	image-rendering: -webkit-optimize-contrast;
}
body.polyfill_object-fit .img-fit img {
	font-family: "object-fit: cover;"
}

/* 複数行をテキストオーバーフロー ///
---------------------------------------------- */
.ellipsis {
	position: relative;
	overflow: hidden;
}
.ellipsis:before, .ellipsis:after {
	position: absolute;
	background: #fff;
}
.ellipsis:before {
	content: " …";
	bottom: 0;
	right: 0;
}
.ellipsis:after {
	content: "";
	width: 100%;
	height: 100%;
}

/* icon //
---------------------------------------------- */
.icon-b, .icon-b_all a, .icon-a, .icon-a_all a, .folding, .btns01 a {
	position: relative;
}

.icon-b::before, .icon-b_all a::before, .icon-a::after, .icon-a_all a::after, .folding::after, .btns01 a::after, .btn04 a::after {
	margin: auto;
	height: 1em;
	position: relative;
	top: 0;
	bottom: 0;
	font-weight: 900;
	line-height: 1;
	content: "\f054";
	font-family: "Font Awesome 5 Free";
}

/* ロールオーバー //
---------------------------------------------- */
.rov a , .rov input, .btns01 a, .btn04 a {
	transition: opacity 0.2s;
	backface-visibility: hidden;
	/*chrome 1pxずれる現象回避*/
}
.rov a:hover , .rov input:hover, .btns01 a:hover, .btn04 a:hover {
	opacity: 0.8;
}
.hover01 a:hover {
	color: #beaf87 !important;
}
.hover02 a:hover {
	text-decoration: underline;
}

/* 読込中 ///
---------------------------------------------- */
.tksn.loading {
	min-height: 50px;
	position: relative;
	overflow: hidden;
}
.tksn.loading::after {
	margin: auto;
	width: 1em;
	height: 1em;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	color: #929292;
	font-size: 36px;
	font-weight: 600;
	line-height: 1;
	pointer-events: auto;
	content: "\f110";
	font-family: "Font Awesome 5 Free";
	animation: r1 1.2s linear infinite;
}
.tksn.loading .tksn_box {
	opacity: 0.8;
}
@keyframes r1 {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

/* お客様の声 星 ///
---------------------------------------------- */
.voice_star {
	padding-left: 107px;
	width: 135px;
	height: 19px;
	display: block;
	position: relative;
	color: #ff8a00;
	font-size: 18px;
	font-weight: 700;
	line-height: 19px;
}
.voice_star::before, .voice_star::after {
	height: 19px;
	background-size: 20px;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
}
.voice_star::before {
	width: 100px;
	background-image: url(/images/common/star_off.png);
}
.voice_star::after {
	background-image: url(/images/common/star_on.png);
}
.voice_star.star1::after {
	width: 20px;
}
.voice_star.star2::after {
	width: 40px;
}
.voice_star.star3::after {
	width: 60px;
}
.voice_star.star4::after {
	width: 80px;
}
.voice_star.star5::after {
	width: 100px;
}

/* お客様の声 カード表示 ///
---------------------------------------------- */
.loop-voice_card {
	width: 255px;
	height: auto;
}
.loop-voice_card > a {
	padding: 0 12px 20px;
	height: 100%;
	min-height: 320px;
	background-color: #fff;
	display: block;
	line-height: 1.3;
}
.loop-voice_card .img-fit {
	margin: 0 -12px 10px;
	height: 180px;
	display: block;
}
.loop-voice_card h3 {
	font-size: 16px;
}
.loop-voice_card p {
	margin-top: 7px;
	max-height: 58px;
	color: #252526;
	font-size: 14px;
	line-height: 18px;
	text-align: justify;
}
.loop-voice_card:not(:last-child) {
	margin-right: 20px;
}
.loop-voice_card .voice_star {
	margin-top: 9px;
}

/* 購入希望者の表示 ///
---------------------------------------------- */
.kibou_ichiran li {
	padding: 7px 0;
	padding-left: 75px;
	min-height: 60px;background-color: #fff;
	position: relative;
	font-size: 14px;
	line-height: 23px;
}
.kibou_ichiran li:not(:last-child) {
	margin-bottom: 10px;
}
.kibou_ichiran li p {
	margin: 0;
	line-height: 1.3;
}
.kibou_ichiran p:first-child {
	width: 60px;
	background: url(/images/common/icon_kibou.png) no-repeat center, #beaf87;
	position: absolute;
	top: 0;
	bottom: 0;left: 0;
}

/* グローバルメニュー ///
---------------------------------------------- */
#gmenu {
	background-color: #beaf87;
}
#gmenu > ul {
	display: table;
}
#gmenu > ul > li {
	display: table-cell;
}
#gmenu > ul > li > a {
	padding: 0 20px;
	height: 60px;
	position: relative;
	display: block;
	color: #414042;
	font-size: 16px;
	line-height: 60px;
	transition: 0.1s;
}
#gmenu > ul > li > a:hover, #gmenu > ul > .stay > a {
	background-color: #414042;
	color: #beaf87;
}
#gmenu > ul > li > a:hover::after, #gmenu > ul > .stay > a::after {
	opacity: 0;
}
#gmenu > ul > li:first-child > a::before, #gmenu > ul > li > a::after {
	width: 1px;
	background: url(/images/common/border.png);
	position: absolute;
	top: 10px;
	bottom: 10px;
	content: "";
}
#gmenu > ul > li:first-child > a::before {
	left: 0;
}
#gmenu > ul > li > a::after {
	right: 0;
}

/* 査定コーナー //
////////////////////////////////////////////////////////////////////*/

#foot_satei > div {
	padding: 0 30px 29px;
	background-color: #fff;
	border-bottom: 4px solid #beaf87;
	position: relative;
	z-index: 1;
}
#foot_satei > div::before, #foot_satei > div::after {
	position: absolute;
	content: "";
}
#foot_satei > div::before {
	width: 190px;
	background-image: url(/images/common/satei_bg.png);
	top: 4px;
	right: 2px;
	bottom: 0;
	z-index: -1;
}
#foot_satei form::after {
	width: 271px;
	height: 284px;
	position: absolute;
	right: 5px;
	bottom: 0;
	content: "";
}
.webp #foot_satei form::after {background-image: url(/images/common/satei_catch.webp);}
.no-webp #foot_satei form::after {background-image: url(/images/common/satei_catch.png);}

#foot_satei header h3 {
	font-size: 40px;
}
#foot_satei header h3 i {
	margin-right: 8px;
	display: inline-block;
	position: relative;
	top: 3px;
}
#foot_satei header {
	margin-bottom: 25px;
	height: 70px;
	display: flex;
	line-height: 1;
	align-items: flex-end;
}
#foot_satei header p {
	margin: 0 0 0 22px;
	font-size: 20px;
	font-weight: 500;
}
#foot_satei header p em {
	color: #beaf87;
	font-size: 28px;
}
#foot_satei header p i {
	margin-left: 20px;
	width: 80px;
	background-color: #414042;
	display: inline-block;
	border-radius: 5px;
	position: relative;
	top: 3px;
	color: #fff;
	font-size: 26px;
	line-height: 40px;
	text-align: center;
	vertical-align: bottom;
}
#foot_satei form {
	width: 748px;
}
#foot_satei form > p {
	margin-bottom: 12px;
	font-size: 18px;
}
#foot_satei form ol {
	padding: 1px 0;
	border-top: 2px solid #beaf87;
	border-bottom: 1px solid #beaf87;
	counter-reset: num 0;
}
#foot_satei form > ol > li {
	position: relative;
}
#foot_satei form > ol > li::before {
	margin: 13px 10px 0 0;
	width: 64px;
	height: 25px;
	background-color: #beaf87;
	float: left;
	color: #fff;
	font-size: 14px;
	line-height: 25px;
	text-align: center;
	counter-increment: num 1;
	content: "STEP0" counter(num);
}
#foot_satei form > ol > li:not(:last-child)::after {
	width: 11px;
	height: 9px;
	position: absolute;
	bottom: -5px;
	left: 27px;
	background-image: url(/images/common/satei_arrow2.png);
	content: "";
}
#foot_satei form li > p em {
	font-size: 20px;
	font-weight: 700;
}
#foot_satei form li > p {
	margin: 0 0 0 70px;
	padding-bottom: 2px;
	font-size: 16px;
	line-height: 47px;
}
#foot_satei form li:not(:last-child) > p:first-child {
	border-bottom: 1px solid #beaf87;
}
#foot_satei select {
	padding: 0 10px;
	width: 300px;
	height: 30px;
	background: url(/images/common/form_arrow.png) no-repeat center right 10px / 12px;
	border: 1px solid #e5e5e5;
	position: absolute;
	top: 10px;
	right: 18px;
	color: #858585;
	font-size: 18px;
	line-height: 1.3;
	font-family: inherit;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
}
#foot_satei .submit {
	padding: 9px 18px 0;
	display: flex;
	align-items: center;
}
#foot_satei .submit p {
	margin-bottom: 6px;
	margin-left: auto;
	padding-right: 35px;
	background: url(/images/common/satei_arrow.png) no-repeat center right 8px / 18px;
	font-size: 20px;
	font-weight: 700;
}
#foot_satei .submit button {
	padding-bottom: 4px;
	width: 300px;
	height: 48px;
	background-color: #beaf87;
	border: none;
	border-bottom: 4px solid #706958;
	border-radius: 6px;
	color: #fff;
	font-size: 24px;
	font-weight: 700;
	text-align: center;
	font-family: inherit;
	cursor: pointer;
	transition: opacity 0.1s;
	-webkit-appearance: none;
	appearance: none;
}
#foot_satei .submit button:hover {
	opacity: 0.8;
}
#foot_satei > p {
  margin-top: 6px;
  font-size: 13px;
  text-align: right;
}

/* フッター //
////////////////////////////////////////////////////////////////////*/

#body_footer {padding-top: 42px;}
.webp #body_footer {background: url(/images/common/footer_bg.webp ) center / cover, #000;}
.no-webp #body_footer {background: url(/images/common/footer_bg.jpg) center / cover, #000;}

/* ページトップ ///
---------------------------------------------- */
#pagetop {
	width: 50px;
	height: 50px;
	background-color: #fff;
	border-radius: 50%;
	position: fixed;
	right: 21px;
	bottom: 21px;
	z-index: 90;
	opacity: 0;
	  color: #fff;
	pointer-events: none;
	transition: opacity 0.4s;
}
#pagetop.fixed {
	opacity: 1;
	pointer-events: auto;
}
#pagetop a {
	width: 50px;
	height: 50px;
	background-color: #beaf87;
	border-radius: inherit;
	display: block;
	color: #fff;
	font-size: 16px;
	line-height: 48px;
	text-align: center;
}
#pagetop a i::before {
	content: "\f077";
}

/* フッター会社案内 ///
---------------------------------------------- */
#body_footer > .company {
	position: relative;
	color: #fff;
	font-size: 14px;
}
#body_footer > .company .img-fit {
	width: 540px;
	height: 274px;
	background-color: #efefef;
	position: absolute;
	top: 0;
	left: 0;
}
#body_footer > .company h3 {
	margin-bottom: 22px;
	padding-top: 3px;
}
#body_footer > .company h4 {
	margin-bottom: 8px;
	font-size: 18px;
	font-weight: 400;
}
#body_footer > .company dl {
	line-height: 30px;
	display: flex;
    flex-wrap: wrap;
}
#body_footer > .company dt {
	padding-left: 24px;
	float: left;
	clear: both;
	position: relative;
}
#body_footer > .company dt::after {
	content: "：";
}
#body_footer > .company dt i {
	position: absolute;
	top: 8px;
	left: 2px;
	line-height: 1;
}
#body_footer > .company dd {
	padding-right: 20px;
}
#body_footer > .company dt.tel {
	padding-left: 0;
	margin-left: -5px;
}
#body_footer > .company dt.free_tel{
	padding-left: 22px;
}

/* メニュー ///
---------------------------------------------- */
#body_footer .sitemenu {
	margin-top: 34px;
	padding: 30px 0 40px;
	border-top: 1px solid #95938b;
	border-bottom: 1px solid #95938b;
	display: flex;
	justify-content: space-between;
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.3;
}
#body_footer .sitemenu li:not(:last-child) {
	margin-bottom: 11px;
}
#body_footer .sitemenu a {
	padding-left: 20px;
	display: block;
	color: inherit;
}
#body_footer .sitemenu a::before {
	position: absolute;
	left: 5px;
	font-size: 10px;
}
#body_footer .sitemenu a[target]:not([href*="//c21.to"])::after {
	margin-left: 5px;
	content: "\f35d";
	position: relative;
	top: -1px;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	font-family: "Font Awesome 5 Free";
}
#body_footer .sitemenu > ul ul {
	margin-top: 11px;
	padding-left: 15px;
}

/* コピーライト ///
---------------------------------------------- */
#body_footer small {
	padding: 19px 0;
	display: block;
	color: #fff;
	font-size: 12px;
	line-height: 12px;
	text-align: center;
}
#body_footer small i {
	margin-left: auto;
}

/* スマホ切り替えボタン //
////////////////////////////////////////////////////////////////////*/

body > .pc2spLink {
	padding: 30px;
	background-color: #414042;
	position: relative;
	z-index: 100;
}
body > .pc2spLink a {
	background-color: #beaf87;
	border-radius: 10px;
	display: block;
	color: #fff;
	font-size: 3rem;
	line-height: 100px;
	text-align: center;
}
body > .pc2spLink a::before {
	margin-right: 8px;
	font-size: 4rem;
	font-weight: 700;
	line-height: 1;
	vertical-align: middle;
	font-family: "Font Awesome 5 Free";
	content: "\f3cd";
}
