/*フェードイン*/
#wrapper {
	animation: fadein 1s;
}
@keyframes fadein {
	0% {opacity: 0}
	100% {opacity: 1}
}
/*header*/
#hdr_name { position: absolute; top: 65px; left: 0; }
#hdr_add { position: absolute; bottom: 20px; left: 0; font-size: 0.875em; }
#hdr_time { position: absolute; top: 10px; right: 0; font-size: 0.875em; }
#hdr_tel { width:220px; position: absolute; top: 44px; right: 0px; }
#hdr_btn { width:220px; position: absolute; bottom: 20px; right: 0px; }
#container #breadcrumbsList { margin: 0; padding:5px 10px!important; }

/*共通*/
html {
  scroll-padding-top: 50px;
}
a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
img { max-width: 100%; }
.bSlideShowThumb .swiper-slide img { max-width:none !important; }
.bold { font-weight: bold; }
.red { color: #CC0000; }
.ggmap { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; }
.ggmap iframe,.ggmap object,.ggmap embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.negative { margin-top: -150px; z-index: 2; }
#container .negative { margin-top: 0; z-index: 1; }
.ovf_vsb .bCustomS {overflow: visible!important;}
.ntc_ln ul.extCatListUL li { border-bottom: 1px solid #666666; padding: 8px 10px 30px 10px; }
.ntc_ln ul.extCatListUL li:first-child { border-top: 1px solid #666666; padding-top: 20px; }
.date_non div.extCatList5Date { display: none; }
#container .ntc_ln ul.extCatListUL li { border-bottom: 1px solid #666666; padding: 0 10px 20px 10px; }
#container .ntc_ln ul.extCatListUL li:first-child { border-top: 1px solid #666666; padding-top: 10px; }
.bdr_r .bcontainer-inner { border-radius: 5px; }
.bdr_r_tp .bcontainer-inner { border-radius: 5px 5px 0 0; }
.bdr_r_ud .bcontainer-inner { border-radius: 0 0 5px 5px; }
.bdr_ahred .bcontainer-inner { border: 3px solid #C70035; }

/*accordion*/
.faq_bx { border: 1px solid #000000; background-color: #FFFFFF; margin-top: 20px; border-radius: 5px; overflow:hidden; }
.faq_icon-wrap {
	position: absolute;
	right: 20px;
	top: 50%;
	 transform: translatey(-50%);
	width: 38px;
	height: 38px;
	background: #666666;
}
.faq_icon {
	position: relative;
	display: inline-block;
	width: 100%;
	height: 100%;
}
.faq_icon:before,
.faq_icon:after {
	position: absolute;
	content: "";
	display: block;
	transition: all 0.4s;
	background: #fff;
	left: 50%;
	top: 50%;
	width: 50%;
	height: 2px;
	transform: translate(-50%, -50%);
}
.faq_icon:before {
	transform: translate(-50%, -50%) rotate(90deg);
}
.faq_icon.open:before {
	transform: translate(-50%, -50%) rotate(0deg);
}
.accordion_head {
	position: relative;
	text-align: left;
	cursor: pointer;
	margin: 0;
	padding: 22px 78px 25px 20px;
	}
.accordion_head h3 { font-size: 1.125em;	font-weight: bold; }
.accordion_head:hover {
	background-color: #F8F8F8;
	}
.pdbx {
	border-top: 2px solid #000000;
	margin: 0;
	padding: 10px 30px 30px 30px;
	}
.faq_stc {
    font-size: 1em;
    margin: 10px 0 0 0;
    padding: 0;
    line-height: 160%;
	}

/*SNS*/
.snsbx {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}

/*accordion-sp*/
#container .faq_bx { border: 1px solid #000000; background-color: #FFFFFF; margin-top: 10px; border-radius: 5px; border-radius: 5px; overflow:hidden; }
#container .faq_icon-wrap {
	position: absolute;
	right: 10px;
	top: 50%;
	 transform: translatey(-50%);
	width: 25px;
	height: 25px;
	background: #666666;
}
#container .faq_icon {
	position: relative;
	display: inline-block;
	width: 100%;
	height: 100%;
}
#container .faq_icon:before,
#container .faq_icon:after {
	position: absolute;
	content: "";
	display: block;
	transition: all 0.4s;
	background: #fff;
	left: 50%;
	top: 50%;
	width: 50%;
	height: 2px;
	transform: translate(-50%, -50%);
}
#container .faq_icon:before {
	transform: translate(-50%, -50%) rotate(90deg);
}
#container .faq_icon.open:before {
	transform: translate(-50%, -50%) rotate(0deg);
}
#container .accordion_head {
	position: relative;
	text-align: left;
	cursor: pointer;
	margin: 0;
	padding: 12px 40px 13px 15px;
	}
#container .accordion_head h3 { font-size: 1em; font-weight: bold; }
#container .accordion_head:hover {
	background-color: #FFFFFF;
	}
#container .pdbx {
	border-top: 2px solid #000000;
	margin: 0;
	padding: 0 10px 10px 10px;
	}
#container .faq_stc {
    font-size: 1em;
    margin: 10px 0 0 0;
    padding: 0;
    line-height: 160%;
	}
/*実績*/
#container .sp_scroll { overflow-x: scroll; }
#container .sp_scroll table.btable { width: 100%; white-space: nowrap;}
/*買いたい*/
.ｗ450 { width: 450px !important; }
#container .ｗ450 { width: auto !important; }