@charset "utf-8";

.error {
	color: #FF3333;
	font-weight: 700;
}
input[type=text].error,
input[type=email].error,
input[type=tel].error {
	border: 1px #FF3333 solid !important;
}
.selectinner {
	position: relative;
}
.selectinner label.error {
	position: absolute;
	left: 0;
	top: 100%;
	white-space: nowrap;
	z-index: 1;
}
.formdate {
	position: relative;
}
.formdate label.error {
	position: absolute;
	left: 0;
	top: 100%;
	white-space: nowrap;
	z-index: 1;
}
select.error {
	border: 1px #FF3333 solid !important;
}
@media (max-width: 800px) {
.selectinner label.error {
	position: relative;
	left: auto;
	top: auto;
	white-space: normal;
}
.selectinner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
.formdate label.error {
	position: relative;
	left: auto;
	top: auto;
	white-space: normal;
	z-index: 1;
}
}


/* wrapper
----------------------------------------------- */
#wrapper {
	overflow: hidden;
	background: #EDEDED;
}

.inner {
	max-width: 1020px;
	margin: 0 auto;
	padding: 0 20px;
}
.home{
	background: #F8F8F8;
}
.home .bai,.details .bai{
	background: url(../img/common/bj_img.png) #fff no-repeat left bottom / 100% auto;
}
.magazbai{
	background: #fff;
}
.dibufu{
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: 99;
	background: #fff!important;
	padding: 15px 0!important;
    transform: translateY(100%);
    transition: all 0.3s;
}
.show .dibufu {
    transform: translateY(0);
    transition: all 0.3s;
}
.digao{
	height: 130px;
}
.dibufu  .boxbtn{
	flex-direction: row!important;
	padding: 0!important;
}
.dibufu  .ctabox{
	padding: 0!important;
}
.dibufu .ctabox .boxbtn li{
	width: 32%!important;
	margin-top: 0!important;
}
@media (max-width: 1024px) {
	.dibufu .boxbtn{
		flex-wrap: wrap;

	}
	.dibufu .ctabox .boxbtn li{
		width:100%!important;
	}
	.dibufu .ctabox .boxbtn li:last-child{
		margin-top: 10px!important;
	}
}
@media (max-width: 800px) {
	.digao {
	    height: 12vh;
	}
}
@media (max-width: 600px) {
	.digao {
	    height: 8.5vh;
	}
}
@media (max-width: 375px) {
	.digao {
	    height: 6vh;
	}
	.dibufu {
    padding:10px 0!important;
	}
}
/* header
----------------------------------------------- */
#header {

	width: 100%;
	-webkit-box-shadow: 0 5px 10px rgba(0,0,0,0.16);
	-moz-box-shadow: 0 5px 10px rgba(0,0,0,0.16);
	-ms-box-shadow: 0 5px 10px rgba(0,0,0,0.16);
	-o-box-shadow: 0 5px 10px rgba(0,0,0,0.16);
	box-shadow: 0 5px 10px rgba(0,0,0,0.16);
	z-index: 99;
}
#header .headerin {
	background: #fff;
	padding: 0 20px;
	position: relative;
}
#header .headerin .headermess {
	height: 90px;
	max-width: 980px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
	z-index: 99;
}
#header .headerin .logobox {
	flex-shrink: 0;
	margin-right: 10px;
}
#header .headerin .logocap {
	line-height: 1.1;
	font-size: 16px;
	letter-spacing: 0.05em;
}
#header .headerin .logoin {
	display: flex;
	align-items: center;
	column-gap: 3px;
}
#header .headerin .headerlink {
	position: absolute;
	right: 0;
	top: 0;
	height: 100%;
	display: flex;
	align-items: center;
	padding: 5px 15px 5px 45px;
	z-index: 100;
}
#header .headerin .headerlink .linin {
	display: flex;
	align-items: stretch;
	column-gap: 10px;
}
#header .headerin .headertel {
	padding: 5px 0 5px 30px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
}
#header .headerin .headertel:before {
	position: absolute;
	content: "";
	background: url(../img/common/pic_header.svg) center center no-repeat;
	width: 67px;
	height: 74px;
	left: -34px;
	bottom: 0;
	z-index: 0;
}
#header .headerin .headertel .telcont {
	display: flex;
	align-items: center;
	justify-content: right;
	padding-right: 50px;
	margin-bottom:5px;
}
#header .headerin .headertel .teltit {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	margin-right: 8px;
}
#header .headerin .headertel .teltime {
	font-size: 13px;
	line-height: 1.3;
	font-weight: 500;
}
#header .headerin .headertel .telnum a {
	display: block;
	padding-left: 35px;
	position: relative;
	font-size: 32px;
	color: #D4001E;
	font-weight: 700;
	line-height: 1;
}
#header .headerin .headertel .telnum a:before {
	position: absolute;
	content: "";
	background: url(../img/common/ico_tel.svg) center center no-repeat;
	background-size: 30px 30px;
	width: 30px;
	height: 30px;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 0;
}

#header .headerin .headerbtn a {
	display: block;
	text-align: right;
}
#header .gnavi {
	background-image: linear-gradient(rgba(86,86,86,1),rgba(0,0,0,1));

}
#header .gnavi .gnaviin {
	display: flex;
	align-items: stretch;
}
#header .gnavi .gnaviin li {
	width: 25%;
	position: relative;
}
#header .gnavi .gnaviin li+li:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 70px;
	left: -1px;
	top: 50%;
	transform: translateY(-50%);
	border-left: 2px #fff dotted;
	z-index: 1;
}
#header .gnavi .gnaviin li a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 73px;
	position: relative;
}
#header .gnavi .gnaviin li a:hover {
	background: #C3001B;
}
#header .gnavi .gnaviin li.on a{
	background: #C3001B;
}
#header .gnavi .gnaviin li .gnavitxt {
	font-size: 16px;
	color: #fff;
	letter-spacing: 0.05em;
	font-weight: 700;
}
#header .gnavi .gnaviin li a img {
	margin-right: 15px;
}
#header .headerin .logoico02{
	width: 112px;
	margin-left:20px;
}
@media (max-width: 1280px) {
	#header .headerin .headerbtn a img {
	    width: 300px;
	}
}
@media (max-width: 1000px) {
#header .headerin .headerlink {
	padding: 5px 10px 5px 30px;
}
#header .headerin .headerlink .linin {
	column-gap: 5px;
}
#header .headerin .headertel {
	padding: 5px 0 5px 20px;
}
#header .headerin .headertel:before {
	position: absolute;
	content: "";
	background: url(../img/common/pic_header.svg) center center no-repeat;
	background-size: 50px 55px;
	width: 50px;
	height: 55px;
	left: -24px;
	bottom: 0;
	z-index: 0;
}
#header .headerin .headertel .teltit {
	font-size: 12px;
	margin-right: 5px;
}
#header .headerin .headertel .teltime {
	font-size: 10px;
}
#header .headerin .headertel .telnum a {
	padding-left: 25px;
	font-size: 22px;
}
#header .headerin .headertel .telnum a:before {
	background: url(../img/common/ico_tel.svg) center center no-repeat;
	background-size: 20px 20px;
	width: 27px;
	height: 27px;
}

#header .headerin .headerbtn a img {
	width: 250px;
}
#header .headerin .logoico01 {
	width: 180px;
}
#header .headerin .logoico02 {
	width: 90px;
}
}
#header .headerother {
	position: absolute;
	right:15px;
	top: 20px;
	display: none;
}
@media (max-width: 1024px) {
#header .headerin .headerlink {
	display: none;
}
#header .gnavi {
	display: none;
}
#header .headerin {
	padding: 0 15px;
}
#header .headerin .headermess {
	height: 63px;
}
#header .headerin .logocap {
	font-size: 12px;
}
#header .headerin .logoin {
	column-gap: 2px;
}
#header .headerin .logoico01 {
	width: 162px;
}
#header .headerin .logoico02 {
	width: 70px;
}
#header .headerother {
	display: block;
}

}
.navbar-toggle {
	display: block;
	width: 40px;
	height: 23px;
	position: relative;
	z-index: 99;
}

.navbar-toggle span {
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 0;
	background-color: #000;
	width: 40px;
	height: 1px;
}
.navbar-toggle.on span {
	background-color: #000;
}
#header .navbar-toggle span:nth-of-type(1) {
	top:0;
}

#header .navbar-toggle span:nth-of-type(2) {
	top:11px;
}

#header .navbar-toggle span:nth-of-type(3) {
	top:22px;
}

#header .navbar-toggle.on span:nth-of-type(1) {
	top:0;
	transform: translateY(11px) rotate(-45deg);
}

#header .navbar-toggle.on span:nth-of-type(2) {
	opacity: 0;
}
#header .navbar-toggle.on span:nth-of-type(3) {
	top: 22px;
	transform: translateY(-11px) rotate(45deg);
}

.navbar-collapse {
	position: fixed;
	left: 0;
	top: 0;
	height: 100vh;
	width: 100%;
	background:#EDEDED;
	background-size: 100% auto;
	padding: 50px 0 0;
	z-index: 90;
	display: none;
}
.navbarin {
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}
.navbarbox {
	width: 100%;
	padding: 0 30px;
}
.navbarbox .navlist li+li {
	margin-top: 35px;
}
.navbarbox .navlist li {
	font-size: 20px;
	line-height: 1.5;
	font-weight: 500;
}
.navbarbox .navlist li a {
	display: block;
}
.navbarbox .navbtn {
	max-width: 270px;
	margin: 80px auto 0;
}
.navbarbox .navbtn a {
	display: flex;
	height: 80px;
	font-size: 17px;
	padding: 0 15px 0 0;
	color: #fff;
	font-weight: 500;
	align-items: center;
	justify-content: center;
	background: #202020;
-webkit-border-radius: 50px;
-moz-border-radius: 50px;
-ms-border-radius: 50px;
-o-border-radius: 50px;
border-radius: 50px;
}
.navbarbox .navbtn a img {
	margin-right: 20px;
	width: 28px;
}

}

@media (max-width: 280px) {
#header .headerlogo {
	width: 90px;
}
#header .headerbtn {
	margin-right: 20px;
}
}



/* footer
----------------------------------------------- */
#footer {
	background: #fff;
	padding: 12px 20px;
}
#footer .footerin {
	display: flex;
	justify-content: center;
	align-items: center;
}
#footer .footerin .footertel a {
	padding-left: 52px;
	font-size: 53px;
	line-height: 1.3;
	color: #D4001E;
	display: block;
	pointer-events: none;
	position: relative;
}
#footer .footerin .footertel a:before {
	position: absolute;
	content: "";
	background: url(../img/common/ico_tel.svg) center center no-repeat;
	width: 41px;
	height: 41px;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 0;
}
#footer .footerin .footertime {
	margin: 0 26px 0 22px;
	font-size: 16px;
	letter-spacing: 0.05em;
	text-align: center;
}
#footer .footerin .footerlogo {
	text-align: center;
}
.footernotes{
	letter-spacing: 0.1em;
	text-align: center;
	color: #fff;
	background: #C3001B;
	font-size: 12px;
	line-height: 39px;
}
@media (max-width: 1024px) {
#footer .footerin {
	flex-direction: column;
}
#footer .footerin .footertime {
	margin: 10px 0;
}
#footer .footerin .footertel a {
	pointer-events: inherit;
}
}
@media (max-width: 800px) {
#footer {
	padding: 10px 20px 20px;
}
#footer .footerin .footertel a {
	padding-left: 40px;
	font-size: 41px;
	line-height: 1.1;
}
#footer .footerin .footertel a:before {
	transform: translateY(-55%);
	background: url(../img/common/ico_tel.svg) center center no-repeat;
	background-size: 33px 33px;
	width: 33px;
	height: 33px;
}
#footer .footerin .footertime {
	margin: 0 0 5px 0;
	font-size: 14px;
}
#footer .footerin .footerlogo {
	width: 150px;
}
}
@media (max-width: 320px) {
#footer .footerin .footertel a {
	font-size: 35px;
}
}



/* anchor
----------------------------------------------- */
.anchor {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
}



/* subcta
----------------------------------------------- */
.subcta {
	background: #fff;
	padding: 15px 20px 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 20px;
}
.subcta .ctatel {

}
.subcta .ctatel a {
	padding-left: 52px;
	font-size: 53px;
	line-height: 1.3;
	color: #D4001E;
	display: block;
	pointer-events: none;
	position: relative;
}
.subcta .ctatel a:before {
	position: absolute;
	content: "";
	background: url(../img/common/ico_tel.svg) center center no-repeat;
	width: 41px;
	height: 41px;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 0;
}
.subcta .ctatime {
	font-size: 16px;
	letter-spacing: 0.05em;
	text-align: center;
}

@media (max-width: 1024px) {
.subcta {
	flex-direction: column;
	padding: 15px 20px;
}
.subcta .ctatel a {
	pointer-events: inherit;
}
}
@media (max-width: 800px) {
.subcta {
	padding: 10px 20px;
	flex-direction: column;
	column-gap: 0;
}
.subcta .ctatel a {
	padding-left: 40px;
	font-size: 41px;
}
.subcta .ctatel a:before {
	background: url(../img/common/ico_tel.svg) center center no-repeat;
	background-size: 33px 33px;
	width: 33px;
	height: 33px;
	transform: translateY(-55%);
}
.subcta .ctatime {
	font-size: 14px;
}
}
@media (max-width: 320px) {
.subcta .ctatel a {
	font-size: 35px;
}
}


/* form
----------------------------------------------- */
.formtips{
	background: #FFD5D5;
	padding: 20px;
	margin-bottom:30px;
}
.formtips p{
	font-size: 16px;
	color: #E50020;
	line-height: 26px;
	letter-spacing: 0.05em;
	position: relative;
	padding-left: 25px;
}
.formtips p:before{
	content: "";
	position: absolute;
	left: 0;
	top: -1px;
	border:8px solid transparent;
	border-bottom: 13px solid #E50020;
}
.formblock {
	padding: 0 0 100px;
}
.formhd {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 145px;
}
.formhd .hdlar {
	font-size: 32px;
	letter-spacing: 0.05em;
	color: #E50020;
	font-weight: 700;
	line-height: 1.44;
}
.formhd .hdsml {
	font-size: 25px;
	line-height: 1.44;
	font-weight: 700;
	letter-spacing: 0.05em;
}
.reservation .formhd .hdsml{
	font-size: 18px;
	padding-top: 10px;
}
.formbox {
	background: #fff;
	padding: 35px 40px 40px;
}
.formbox input[type=text],
.formbox input[type=email],
.formbox input[type=tel] {
	background: #fff;
	padding: 5px 10px;
	border: 1px #D0D0D0 solid;
	width: 100%;
	height: 40px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
}
.formagree {
	margin-top: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.formagree .agreeico {
	display: block;
	font-size: 0;
	margin-right: 13px;
}
.formagree .agreeico input[type=checkbox] {
	width: 21px;
	height: 21px;
	background: #fff;
	border: 1px #D0D0D0 solid;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	position: relative;
}
.formagree .agreeico input[type=checkbox]:checked:before {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: url(../img/common/ico_check.svg) center center no-repeat;
	z-index: 0;
}
.formagree .agreetxt {
	font-size: 16px;
}
.formagree .agreetxt a {
	color: #E50020;
	text-decoration: underline;
}
.formagree .agreetxt a:hover {
	text-decoration: none;
}
.formagree+.error-container {
	text-align: center;
}
.formbtn {
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: 20px;
	margin-top: 50px;
}
.formbtn li input {
	width: 200px;
	height: 58px;
	cursor: pointer;
	text-align: center;
	background: #CA152F;
	font-family: 'Noto Sans JP', sans-serif;
	color: #fff;
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0.05em;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
}
.formbtn li .btnconfirm {
	width: 290px;
}
.formbox .formin+.formin {
	margin-top: 40px;
}
.formbox .formtit {
	font-size: 20px;
	line-height: 1.4;
	letter-spacing: 0.05em;
	font-weight: 700;
	margin-bottom: 20px;
}
.formbox .formtab {
	width: 100%;
	border: 1px #B8B8B8 solid;
	background: #F6F4F3;
}
.formbox .formtab th,
.formbox .formtab td {
	vertical-align: middle;
	padding: 20px;
	font-weight: 500;
}
.formbox .formtab tr:first-child th,
.formbox .formtab tr:first-child td {
	padding-top: 30px;
}
.formbox .formtab tr:last-child th,
.formbox .formtab tr:last-child td {
	padding-bottom: 30px;
}
.formbox .formtab th {
	background: #939393;
	width: 164px;
}
.formbox .formtab .thtit {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 16px;
	color: #fff;
	letter-spacing: 0.05em;
}
.formbox .formtab .must {
	display: flex;
	background: #CA152F;
	width: 38px;
	height: 21px;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 14px;
	color: #fff;
	line-height: 1.2;
	letter-spacing: 0.05em;
	flex-shrink: 0;
}
.formbox .formtab .formdt {
	display: flex;
	align-items: center;
	column-gap: 30px;
}
.formbox .formtab .formdate {

}

.formbox .formtab label {
	display: flex;
	align-items: center;
	font-size: 16px;
	line-height: 1.5;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 0.05em;
	font-weight: 500;
	margin-bottom: 15px;
}
.formbox .formtab label input[type=radio] {
	margin-right: 10px;
	width: 20px;
	height: 20px;
	border: 1px #D0D0D0 solid;
	background: #fff;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
	position: relative;
}
.formbox .formtab label input[type=radio]:checked:before {
	position: absolute;
	content: "";
	background: #E50020;
	width: 12px;
	height: 12px;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
	z-index: 0;
}
.formrdate{
	display: flex;
	/*align-items: center;*/
	margin-top: 10px;
	position: relative;
}
.formrdate input[type=text]{
	width: 100px;
}
.formrdatetx{
	font-size: 16px;
	letter-spacing: 0.05em;
	margin:10px 9px;
}
.formrdateri{
	position: absolute;
	left: 235px;
	bottom: 0;
	font-size: 16px;
}
.formbox .formtab .calendar {
	width: 260px;
	padding: 0 30px 0 20px;
	background: url(../img/reservation/calendar.svg) right 8px center no-repeat #fff;
}
.formbox .formtab .calendar::placeholder {
	font-size: 16px;
	color: #C7C7C7;
	font-family: 'Noto Sans JP', sans-serif;
	text-align: left;
	font-weight: 400;
}
.formbox .formtab .formtime {
	display: flex;
	align-items: center;
}
.formbox .formtab .formtime .timetit {
	font-size: 16px;
	margin-right: 20px;
}
.formbox .formtab select {
	width: 150px;
	background: url(../img/reservation/ico_down.svg) right 10px center no-repeat #fff;
	padding: 0 25px 0 20px;
	border: 1px #D0D0D0 solid;
	height: 40px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	outline: none;
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
}
.formbox .formtab select::-ms-expand {
	display: none;
}
.formbox .formradio {
	display: flex;
	flex-wrap: wrap;
	column-gap: 20px;
	margin-bottom: -15px;
}
.formbox .formradio label {
	display: flex;
	align-items: center;
	font-size: 16px;
	line-height: 1.5;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 0.05em;
	font-weight: 500;
	margin-bottom: 15px;
}
.formbox .formradio label input[type=radio] {
	margin-right: 10px;
	width: 20px;
	height: 20px;
	border: 1px #D0D0D0 solid;
	background: #fff;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
	position: relative;
}
.formbox .formradio label input[type=radio]:checked:before {
	position: absolute;
	content: "";
	background: #E50020;
	width: 12px;
	height: 12px;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
	z-index: 0;
}
.formbox .areabox {
	padding: 0 !important;
}
.formbox textarea {
	padding: 20px;
	width: 100%;
	height: 200px;
	background: #F6F4F3;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
}

@media (max-width: 800px) {
.formblock {
	padding: 0 0 40px;
}
.formhd {
	min-height: 104px;
}
.formhd .hdlar {
	font-size: 26px;
	letter-spacing: 0.05em;
}
.formhd .hdsml {
	font-size: 20px;
	line-height: 1.5;
	letter-spacing: 0.05em;
}
.formbox {
	padding: 10px 15px 20px;
}
.formbox input[type=text],
.formbox input[type=email],
.formbox input[type=tel] {
	padding: 5px 10px;
}
.formagree {
	margin-top: 35px;
}
.formagree .agreeico {
	margin-right: 10px;
}
.formagree .agreetxt {
	font-size: 15px;
	line-height: 1.4;
}
.formbtn {
	flex-direction: column;
	align-items: center;
	column-gap: 0;
	margin-top: 35px;
}
.formbtn li input {
	width: 165px;
	height: 47px;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.05em;
}
.formbtn li .btnconfirm {
	width: 250px;
}
.formbtn li+li {
	margin-top: 20px;
}
.formbox .formtit {
	font-size: 17px;
	line-height: 1.47;
	letter-spacing: 0.05em;
	margin-bottom: 10px;
}
.formbox .formtab th,
.formbox .formtab td {
	display: block;
	padding: 5px 12px;
}
.formbox .formtab tr:first-child th {
	padding: 5px 12px;
}
.formbox .formtab tr:last-child th {
	padding: 5px 12px;
}

.formbox .formtab tr:first-child td {
	padding: 8px 12px;
}
.formbox .formtab tr:last-child td {
	padding: 8px 12px;
}
.formbox .formtab td {
	padding: 8px 12px;
}
.formbox .formtab th {
	width: auto;
}
.formbox .formtab .thtit {
	justify-content: flex-start;
	font-size: 15px;
}
.formbox .formtab .must {
	margin-left: 5px;
	width: 36px;
	height: 20px;
	font-size: 13px;
}
.formbox .formradio {
	margin-bottom: -10px;
}
.formbox .formradio label {
	margin-bottom: 10px;
}
.formbox textarea {
	padding: 10px 12px;
	height: 150px;
}
.formbox .formtab .formdt {
	flex-direction: column;
	align-items: flex-end;
	column-gap: 0;
}
.formbox .formtab .formdate {
	width: 100%;
	margin-bottom: 10px;
}
.formbox .formtab .calendar {
	width: 100%;
}
.formbox .formtab .formtime .timetit {
	font-size: 16px;
	margin-right: 10px;
}
.formbox .formtab .thtit br{
	display: none;
}
.footernotes {
    font-size: 10px;
    line-height: 1.2;
    padding: 10px 0;
}
.formtips p{
	font-size: 15px;
}
.reservation .formhd .hdsml{
	font-size: 15px;
}
.formrdate > div {
	flex: auto
}
.formrdate > div select {
	width: 100% !important;
}
}



/* thanks
----------------------------------------------- */
.thanks {
	padding: 150px 0 0;
	height: calc( 100vh - 130px);
}
.thanks .inner{

}
.thanks .thankshd {
	text-align: center;
	font-size: 28px;
	line-height: 1.43;
	letter-spacing: 0.05em;
	margin-bottom: 80px;
	color: #E50020;
}
.thanks .thanksbtn {
	display: flex;
	justify-content: center;
}
.thanks .thanksbtn a {
	background: #CA152F;
	width: 200px;
	height: 58px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #fff;
	font-size: 22px;
	letter-spacing: 0.05em;
}

@media (max-width: 800px) {
.thanks {
	padding: 130px 0 220px;
	height: calc( 100vh - 95px);
}
.thanks .thankshd {
	font-size: 20px;
	margin-bottom: 30px;
}
.thanks .thanksbtn a {
	width: 165px;
	height: 47px;
	font-size: 18px;
	letter-spacing: 0.05em;
}
}


/* estimation
----------------------------------------------- */
.estblock+.estblock {
	margin-top: 45px;
}
.estblock .esttit {
	display: flex;
	align-items: stretch;
	background: #F6F4F3;
	margin-bottom: 30px;
}
.estblock .esttit .titeng {
	background: #FFE752;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
	width: 145px;
	padding: 0 15px 0 0;
	clip-path: polygon(0 0, calc(100% - 20px) 0%, 100% 50%, calc(100% - 20px) 100%, 0 100%);
}
.estblock .esttit .titcont {
	font-size: 26px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #E50020;
	padding: 10px 20px;
	display: flex;
	align-items: center;
}
.estblock .estdet {
	font-size: 16px;
	letter-spacing: 0.05em;
	margin-top: -10px;
}
.estblock .estupload {
	margin-top: 40px;
}
.estblock .estupload li+li {
	margin-top: 10px;
}
.estblock .estupload li {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding: 8px;
}
.estblock .estupload li.on{
	background: #FFD5D5;
}
.estblock .estupload .uploadtxt {
	width: 100px;
	flex-shrink: 0;
	font-size: 16px;
	letter-spacing: 0.05em;
	display: flex;
    justify-content: space-between;
    align-items: center;
}
.formbox .estupload .must {
    display: flex;
    background: #CA152F;
    width: 38px;
    height: 21px;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 14px;
    color: #fff;
    line-height: 1.2;
    letter-spacing: 0.05em;
    flex-shrink: 0;
}
.estblock .estpoint {
	width: 510px;
	margin-top: 50px;
	border: 1px #707070 solid;
	padding: 25px 25px 10px;
	position: relative;
}
.estblock .estpoint .pointtit {
	position: absolute;
	background: #fff;
	left: 50%;
	top: 0;
	transform: translate(-50%,-50%);
	font-size: 16px;
	letter-spacing: 0.05em;
	text-align: center;
	white-space: nowrap;
	padding: 0 10px;
	z-index: 0;
}
.estblock .estpoint .pointnote {
	font-size: 14px;
	line-height: 1.65;
}
.estblock .estpoint .pointimg {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin-top: 15px;
}
.estblock .estpoint .pointimg li {
	max-width: 29%;
}
.estblock .estpoint .pointimg li img {
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	-ms-border-radius: 20px;
	-o-border-radius: 20px;
	border-radius: 20px;
}
.estblock .estpoint .pointdet {
	text-align: center;
	font-size: 14px;
	margin-top: 10px;
}
.estblock .estnote {
	margin-top: 10px;
	color: #6F6F6F;
}
.estblock .estupload .uploadbox {
	display: flex;
	align-items: center;
	overflow: hidden;
	margin-left: 15px;
}
.estblock .estupload .uploadin {
	width: 164px;
	height: 25px;
	position: relative;
	text-decoration: none;
	color: #fff;
	font-size: 14px;
	letter-spacing: 0.05em;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color:#9C9C9C;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-ms-border-radius: 4px;
	-o-border-radius: 4px;
	border-radius: 4px;
	margin-right: 10px;
}
.estblock .estupload .inputFile {
	opacity: 0;
	position: absolute;
	overflow: hidden;
	right: 0;
	top: 0;
}
.estblock .estupload .fileInfo{
	position:relative;
}

@media (max-width: 800px) {
.estblock+.estblock {
	margin-top: 50px;
}
.estblock .esttit {
	margin: 0 0 20px -15px;
	margin-bottom: 20px;
	background: none;
}
.estblock .esttit .titeng {
	width: 100px;
	padding: 5px 10px 5px 0;
	clip-path: polygon(0 0, calc(100% - 12px) 0%, 100% 50%, calc(100% - 12px) 100%, 0 100%);
}
.estblock .esttit .titeng img {
	width: 62px;
}
.estblock .esttit .titcont {
	font-size: 20px;
	line-height: 1.25;
	padding: 0 10px;
}
.estblock .estdet {
	font-size: 15px;
	letter-spacing: 0.05em;
	line-height: 1.4;
	margin-top: 0;
}
.estblock .estupload {
	margin-top: 20px;
}
.estblock .estupload li {
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.estblock .estpoint {
	width: 100%;
	margin-top: 55px;
	padding: 25px 15px 10px;
}
.estblock .estpoint .pointnote {
	font-size: 13px;
	line-height: 1.5;
}
.estblock .estpoint .pointimg {
	column-gap: 10px;
	margin-top: 15px;
}
.estblock .estpoint .pointimg li {
	flex: 1;
	max-width: none;
}
.estblock .estpoint .pointimg li img {
	width: 100%;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	-ms-border-radius: 15px;
	-o-border-radius: 15px;
	border-radius: 15px;
}
.estblock .estpoint .pointdet {
	font-size: 14px;
	margin-top: 5px;
}
.estblock .estnote {
	font-size: 14px;
}
.estblock .estupload .uploadbox {
	flex-direction: column;
	align-items: flex-start;
}
.estblock .estupload .fileInfo{
	margin-top: 5px;
	word-break: break-all;
}
}



/* top
----------------------------------------------- */
.topmain {
	background: #fff;
	text-align: center;
}
.topmain img{
	width: 100%;
}
.comfix {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	background: #FFE752;
	padding: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 20px;
	transform: translateY(100%);
	transition: all 0.3s !important;
	-moz-transition: all 0.3s !important; /* Firefox */
	-webkit-transition: all 0.3s !important; /* Chrome&Safari */
	z-index: 9;
}
.show .comfix {
	transform: translateY(0);
	transition: all 0.3s !important;
	-moz-transition: all 0.3s !important; /* Firefox */
	-webkit-transition: all 0.3s !important; /* Chrome&Safari */
}
.comfix .fixcta {
	background: #fff;
	padding: 0 15px 5px;
	height: 139px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.comfix .fixcta .ctatit {
	font-size: 24px;
	font-weight: 700;
}
.comfix .fixcta .ctatime {
	font-size: 15px;
	margin-bottom: 15px;
}
.comfix .fixcta .ctatel a {
	pointer-events: none;
	padding-left: 33px;
	font-size: 35px;
	line-height: 1;
	position: relative;
	letter-spacing: 0;
	color: #D4001E;
}
.comfix .fixcta .ctatel a:before {
	position: absolute;
	content: "";
	background: url(../img/common/ico_tel.svg) center content-box no-repeat;
	background-size: 28px 28px;
	width: 28px;
	height: 28px;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 0;
}
.comfix .fixbtn {
	display: flex;
	column-gap: 20px;
}
.comfix .fixbtn a {
	display: block;
}
@media (max-width: 800px) {
.comfix {
	padding: 16px 16px 25px;
	flex-direction: column;
	column-gap: 0;
}
.comfix .fixcta {
	width: 100%;
	padding: 5px;
	height: auto;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
}
.comfix .fixcta .ctatit {
	font-size: 17px;
	margin-right: 10px;
}
.comfix .fixcta .ctatime {
	display: none;
}
.comfix .fixcta .ctatel a {
	pointer-events: inherit;
	padding-left: 30px;
	font-size: 29px;
	line-height: 1.2;
}
.comfix .fixcta .ctatel a:before {
	background: url(../img/common/ico_tel.svg) center content-box no-repeat;
	background-size: 25px 25px;
	width: 25px;
	height: 25px;
	transform: translateY(-55%);
}
.comfix .fixbtn {
	display: flex;
	width: 100%;
	justify-content: center;
	column-gap: 5px;
}
.comfix .fixbtn li {
}
}
@media (max-width: 320px) {
.comfix .fixcta .ctatit {
	font-size: 15px;
	margin-right: 10px;
}
.comfix .fixcta .ctatel a {
	font-size: 24px;
}
}

.topcta {
	padding: 25px 0 60px;
	background: url(../img/common/bj_img.png) no-repeat left bottom / 100% auto;
}
.topcta .ctabox {
	padding: 20px 45px;
}
.boxtake{
	margin-bottom: 22px;
	display: flex;
	justify-content: center;
}
.topcta .ctabox .boxin {
	background: #fff;
	padding: 10px 10px 5px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
}
.topcta .ctabox .boxcont {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	position: relative;
}
.topcta .ctabox .boxflex {
	display: flex;
	align-items: center;
}
.topcta .ctabox .boxpic {
	position: absolute;
	right: calc(100% + 15px);
	width: 96px;
	bottom: -5px;
	z-index: 0;
}
.topcta .ctabox .boxtit {
	font-size: 27px;
	font-weight: 700;
	margin-right: 15px;
}
.topcta .ctabox .boxtime {
	font-size: 16px;
}
.topcta .ctabox .boxtel a {
	pointer-events: none;
	display: block;
	position: relative;
	padding-left: 53px;
	font-size: 55px;
	letter-spacing: 0;
	line-height: 1;
	color: #D4001E;
}
.topcta .ctabox .boxtel a:before {
	position: absolute;
	content: "";
	background: url(../img/common/ico_tel.svg) center center no-repeat;
	width: 42px;
	height: 42px;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 0;
}
.topcta .ctabox .boxbtn {
	display: flex;
	justify-content: space-between;
}
.topcta .ctabox .boxbtn li {
	max-width: 48%;
	position: relative;
}
.topcta .ctabox .boxbtn li .topctatxt{
	position: absolute;
	left: 0;
	top: 12px;
	width: 100%;
	text-align: center;
	color: #fff;
	font-size: 16px;
}
.topcta .ctabox .boxbtn li .topctatel{
	position: absolute;
	right: 46px;
	bottom: 6px;
	color: #FFEE00;
	font-weight: 700;
	font-size: 43px;
	text-shadow: 3px 3px 6px rgba(0,0,0,0.48);
}
.topcta .ctabox .boxbtn li .topctatel:before{
	content: "";
	background: url(../img/common/ico_tel.png) no-repeat center center  /100% auto;
	position: absolute;
	left: -50px;
	top: 10px;
	width: 46px;
	height: 45px;
}
@media (max-width: 1024px) {
	.topcta .ctabox .boxbtn li .topctatel{
		right: 0;
		bottom: 10%;
		width: 100%;
		text-align: center;
		font-size: 35px;
		margin-right: 10px;
	}
	.topcta .ctabox .boxbtn li .topctatel:before{
		position: relative;
		left: 0;
		top: 0;
	    width: 36px;
	    height: 35px;
	    display: inline-block;
	    vertical-align: top;
	    margin-top: 8px;
	    margin-right: 10px;
	}
	.topcta .ctabox .boxbtn li .topctatxt{
		font-size: 14px;
	}
}
@media (max-width: 880px) {
	.topcta .ctabox .boxbtn li .topctatxt{
		font-size: 12px;
		top: 6px;
	}
}
@media (max-width: 1024px) {
.topcta {
	background: url(../img/common/bj_img_sp.png) no-repeat left bottom / 100% auto;
}
.home .bai, .details .bai {
    background: url(../img/common/bj_img_sp.png) #fff no-repeat left bottom / 100% auto;
}
.topcta {
	padding: 10px 0 20px;
}
.topcta .ctabox {
	padding: 20px 15px;
}
.topcta .ctabox .boxin {
	padding: 15px 10px;
	margin-bottom: 10px;
}
.topcta .ctabox .boxflex {
	position: relative;
}
.topcta .ctabox .boxpic {
	right: calc(100% + 5px);
	width: 50px;
	bottom: 0;
}
.topcta .ctabox .boxtit {
	font-size: 20px;
	margin-right: 5px;
}
.topcta .ctabox .boxtime {
	font-size: 12px;
}
.topcta .ctabox .boxtel a {
	pointer-events: inherit;
	padding-left: 40px;
	font-size: 40px;
}
.topcta .ctabox .boxtel a:before {
	background: url(../img/common/ico_tel.svg) center center no-repeat;
	background-size: 32px 32px;
	width: 32px;
	height: 32px;
}
.topcta .ctabox .boxbtn {
	flex-direction: column;
	align-items: center;
}
.topcta .ctabox .boxbtn li {
	width: 100%;
	max-width: none;
	text-align: center;
}
.topcta .ctabox .boxbtn li+li {
	margin-top: 10px;
}
.boxtake{
	margin-bottom: 5px;
}
	.topcta .ctabox .boxbtn li .topctatel,.topcta .ctabox .boxbtn li .topctatxt{
		display: none;
	}
}
@media (max-width: 420px) {
	.topcta .ctabox .boxbtn li img{
		width: 88%;
	}
}
@media (max-width: 320px) {
.topcta .ctabox .boxtit {
	font-size: 16px;
}
.topcta .ctabox .boxtime {
	font-size: 10px;
}
.topcta .ctabox .boxtel a {
	font-size: 30px;
}
}

.topblock {
	padding: 0 0 85px;
	position: relative;
}
.tophd {
	background-image: linear-gradient(#E24A4A,#750000);
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 15px 20px;
	margin-bottom: 50px;
}

.tophd .hdtxt {
	font-size: 32px;
	color: #fff;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.4;
}
@media (max-width: 800px) {
.topblock {
	padding: 0 0 40px;
}
.tophd {
	padding: 10px 20px;
	margin-bottom: 20px;
}
.tophd .hdico {
	text-align: center;
}
.tophd .hdico img{
	width: 70%;
}
.tophd .hdtxt {
	font-size: 22px;
	line-height: 1.3;
}
}
.magazine{
	padding-top:40px;
}
.magazmain{
	background: #C72D43;
	max-width: 788px;
    margin: 0 auto;
    padding:10px 20px 50px 20px;
    border-radius: 14px;
    position: relative;
}
.magaztitle{
	color: #fff;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.3;
	padding: 25px 0;
	text-align: center;
}
.magaztitle span{
	text-decoration: underline;
	text-underline-offset: 8px;
}
.magazimg{
	display: flex;
	justify-content:center;
}
.magazmain .magazicon:nth-last-child(1){
	position: absolute;
	left: 20px;
	top: 20px;
}
.magazmain .magazicon:nth-last-child(2){
	position: absolute;
	right: 20px;
	top: 20px;
}
.magazmain .magazicon:nth-last-child(3){
	position: absolute;
	right: 20px;
	bottom: 20px;
}
.magazmain .magazicon:nth-last-child(4){
	position: absolute;
	left: 20px;
	bottom: 20px;
}
.topprice {
	margin-top: -10px;
}
.topprice .pricelist li+li {
	margin-top: 35px;
}
.topprice .pricelist li {
	background: #fff;
	padding: 25px 30px;
	display: flex;
	align-items: center;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	-ms-border-radius: 15px;
	-o-border-radius: 15px;
	border-radius: 15px;
	-webkit-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-moz-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-ms-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-o-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
}
.topprice .pricelist .priceimg {
	flex-shrink: 0;
	margin-right: 35px;
}
.topprice .pricelist .pricein {
	flex: 1;
}
.topprice .pricelist .pricetit {
	border-left: 7px #9E9E9E solid;
	padding-left: 12px;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: 0.05em;
	color: #E50020;
	margin-bottom: 12px;
}
.topprice .pricelist .pricecont {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 13px;
}
.topprice .pricelist .pricetxt {
	font-size: 15px;
	letter-spacing: 0.05em;
	margin-right: 5px;
}
.topprice .pricelist .pricenum {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.05em;
}
.topprice .pricelist .pricenum .mid {
	font-size: 26px;
}
.topprice .pricelist .pricenum .lar {
	font-size: 38px;
	line-height: 1;
}
.topprice .pricelist .pricenote {
	font-size: 14px;
	line-height: 1.45;
	color: #8C8C8C;
}
@media (max-width: 1024px) {
.topprice {
	margin-top: 0;
}
.topprice .pricelist li+li {
	margin-top: 20px;
}
.topprice .pricelist li {
	padding: 15px 15px 20px;
	display: block;
}
.topprice .pricelist .priceimg {
	margin: 0 0 10px;
}
	.topprice .pricelist .priceimg img {
		width: 100%;
	}
.topprice .pricelist .pricein {
	flex: 1;
}
.topprice .pricelist .pricetit {
	border-left: 6px #9E9E9E solid;
	padding-left: 10px;
	font-size: 19px;
	letter-spacing: 0.05em;
}
.topprice .pricelist .pricecont {
	display: block;
	margin-bottom: 5px;
}
.topprice .pricelist .pricetxt {
	font-size: 14px;
	margin: 0;
}
.topprice .pricelist .pricenote {
	font-size: 11px;
}
.magazmain{
    padding: 10px 20px 40px 20px;
}
.magaztitle{
	font-size: 16px;
	padding:7px 0;
}
.magaztitle span{
	text-decoration:none;
	display: block;
}
.magazicon img{
	width: 15px;
	height: 15px;
}
.magazmain .magazicon:nth-last-child(1){
	left: 10px;
	top: 10px;
}
.magazmain .magazicon:nth-last-child(2){
	right: 10px;
	top: 10px;
}
.magazmain .magazicon:nth-last-child(3){
	right: 10px;
	bottom: 10px;
}
.magazmain .magazicon:nth-last-child(4){
	left: 10px;
	bottom: 10px;
}
}

.topfaq {

}
.topfaq .faqlist li {
	background: #fff;
	border:3px solid #212121;
}
.topfaq .faqlist li+li {
	margin-top: 20px;
}
.topfaq .faqlist .faqtit {
	padding: 25px 60px 20px 80px;
	position: relative;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 0.05em;
}
.topfaq .faqlist .faqtit:before {
	position: absolute;
	content: "";
	background: url(../img/top/ico_q.png) center center no-repeat;
	width: 38px;
	height: 42px;
	left: 22px;
	top: 20px;
	z-index: 0;
}
.topfaq .faqlist .faqcont {
	border-top: 1px #E50020 solid;
	padding: 20px 60px 35px 80px;
}
.topfaq .faqlist .faqtxt {
	font-size: 16px;
	letter-spacing: 0.05em;
}
@media (max-width: 1024px) {
.topfaq .faqlist .faqtit {
	padding: 10px 15px 15px 46px;
	font-size: 18px;
}
.topfaq .faqlist .faqtit:before {
	background: url(../img/top/ico_q.png) center center no-repeat;
	background-size: 26px 30px;
	width: 26px;
	height: 30px;
	left: 15px;
	top: 12px;
}
.topfaq .faqlist .faqcont {
	padding: 10px 15px 15px;
}
.topfaq .faqlist .faqtxt {
	font-size: 15px;
	line-height: 1.4;
}
}

.topflow .flwobox {
	background: #fff;
	position: relative;
}
.topflow .flwobox+.flwobox {
	margin-top: 45px;
}
.topflow .flwobox+.flwobox:before {
	position: absolute;
	content: "";
	background: url(../img/top/arrow_flow.svg) center center no-repeat;
	left: 0;
	bottom: calc(100% + 5px);
	width: 100%;
	height: 30px;
	z-index: 0;
}
.topflow .flwobox .flowtit {
	display: flex;
	align-items: center;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.45;
	color: #fff;
	border-bottom: 2px #E50020 solid;
	letter-spacing: 0.05em;
	background: #515151;
}
.topflow .flwobox .flowtit .titnum {
	width: 60px;
	height: 60px;
	letter-spacing: 0;
	background: #212121;
	margin-right: 20px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 29px;
	font-weight: 700;
	line-height: 1;
	color: #fff;
}
.topflow .flwobox .flowcont {
	padding: 12px 12px 25px 35px;
	display: flex;
	flex-direction: row-reverse;
}
.topflow .flwobox .flowimg {
	flex-shrink: 0;
	margin-left: 25px;
}
.topflow .flwobox .flowin {
	flex: 1;
	padding: 5px 0 0;
}
.topflow .flwobox .flowtxt {
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.68;
}
.topflow .flwobox .flowwork {
	margin-top: 10px;
}
.topflow .flwobox .flowwork li+li {
	margin-top: 10px;
}
.topflow .flwobox .flowwork li {
	text-indent: -1.5em;
	padding-left: 1.5em;
	font-size: 16px;
	line-height: 1.7;
	letter-spacing: 0.05em;
}
.topflow .flwobox .flowpoint {
	margin-top: 35px;
	border: 1px #E50020 solid;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	background: #FFFCE0;
	padding: 20px;
	max-width: 530px;
	position: relative;
}
.topflow .flwobox .flowpoint .pointcap {
	position: absolute;
	left: 10px;
	top: 0;
	transform: translateY(-50%);
	background: #E50020;
	padding: 2px 10px;
	font-size: 16px;
	color: #fff;
	font-weight: 700;
	letter-spacing: 0.05em;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	z-index: 0;
}
.topflow .flwobox .flowpoint .pointtxt {
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.68;
}
@media (max-width: 1024px) {
.topflow .flwobox .flowtit {
	font-size: 19px;
}
.topflow .flwobox .flowtit .titnum {
	width: 30px;
	height: 30px;
	margin-right: 7px;
	font-size: 23px;
}
.topflow .flwobox .flowcont {
	padding: 15px 15px 20px;
	display: block;
}
.topflow .flwobox .flowimg {
	margin: 0 0 15px;
}
.topflow .flwobox .flowimg img {
	width: 100%;
}
.topflow .flwobox .flowin {
	padding: 0;
}
.topflow .flwobox .flowtxt {
	font-size: 15px;
	letter-spacing: 0.03em;
	line-height: 1.4;
}
.topflow .flwobox .flowwork li {
	font-size: 15px;
	line-height: 1.4;
}
.topflow .flwobox .flowpoint {
	margin-top: 25px;
	padding: 20px;
	max-width: none;
}
.topflow .flwobox .flowpoint .pointtxt {
	font-size: 15px;
	line-height: 1.4;
}
}

.topexample {
	margin-top: -20px;
}
.topexample .exalist {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	margin-bottom: -25px;
}
.topexample .exalist > li {
	width: 49%;
	padding: 20px 15px 25px;
	background: #fff;
	border: 2px #505050 solid;
	margin-bottom: 25px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	-ms-border-radius: 15px;
	-o-border-radius: 15px;
	border-radius: 15px;
	-webkit-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-moz-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-ms-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-o-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
}
.topexample .exalist .exaba {
	display: flex;
	column-gap: 20px;
}
.topexample .exalist .exabatit {
	display: flex;
	align-items: flex-end;
	font-size: 23px;
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: 0.05em;
	height: 37px;
}
.topexample .exalist .exabaimg {
	position: relative;
}
.topexample .exalist .exabain+.exabain .exabatit {
	font-size: 28px;
	color: #E50020;
}
.topexample .exalist .exabain+.exabain .exabaimg:before {
	position: absolute;
	content: "";
	left: -20px;
	top:50%;
	transform:translateY(-50%);
	border-left:14px #E50020 solid;
	border-right:0;
	border-top:13px solid transparent;
	border-bottom:13px solid transparent;
	z-index: 0;
}
.topexample .exalist .exadet {
	margin-top: 15px;
}
.topexample .exalist .exadet li {
	display: flex;
	align-items: center;
}
.topexample .exalist .exadet li+li {
	margin-top: 7px;
}
.topexample .exalist .exadet .dettit {
	width: 88px;
	background: #4B4B4B;
	height: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 15px;
	color: #fff;
	line-height: 1.2;
	letter-spacing: 0.05em;
	margin-right: 10px;
	flex-shrink: 0;
}
.topexample .exalist .exadet .dettxt {
	font-size: 16px;
	letter-spacing: 0.05em;
}

@media (max-width: 800px) {
.topexample {
	margin-top: 0;
}
.topexample .exalist {
	display: block;
	margin-bottom: -20px;
}
.topexample .exalist > li {
	width: auto;
	padding: 10px 12px 18px;
	margin-bottom: 20px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}
.topexample .exalist .exaba {
	display: flex;
	column-gap: 13px;
}
.topexample .exalist .exabatit {
	font-size: 16px;
	height: 26px;
}
.topexample .exalist .exabain+.exabain .exabatit {
	font-size: 20px;
}
.topexample .exalist .exabain+.exabain .exabaimg:before {
	left: -13px;
	border-left:10px #E50020 solid;
	border-top:9px solid transparent;
	border-bottom:9px solid transparent;
}
.topexample .exalist .exadet {
	margin-top: 10px;
}
.topexample .exalist .exadet li+li {
	margin-top: 5px;
}
.topexample .exalist .exadet .dettit {
	width: 70px;
	height: 18px;
	font-size: 13px;
	margin-right: 5px;
}
.topexample .exalist .exadet .dettxt {
	font-size: 14px;
}
}

.topfeature {

}
.topfeature .fealist {
	display: flex;
	align-items: stretch;
	padding-top: 220px;
}
.topfeature .fealist li {
	width: calc((100% - 39px)/4);
	margin-right: 13px;
	background: #fff;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
	padding: 15px 10px 20px;
	position: relative;
}
.topfeature .fealist li:nth-child(4n) {
	margin-right: 0;
}
.topfeature .fealist .feaimg {
	position: absolute;
	left: 0;
	text-align: center;
	bottom: 100%;
	z-index: 0;
}
.topfeature .fealist .feacap {
	position: absolute;
	right: 0;
	top: -13px;
	z-index: 1;
}
.topfeature .fealist .feacont {

}
.topfeature .fealist .featit {
	font-size: 18px;
	font-weight: 700;
	color: #E50020;
	text-align: center;
	letter-spacing: 0.05em;
	margin-bottom: 10px;
}
.topfeature .fealist .featxt {
	font-size: 15px;
	line-height: 1.4;
	letter-spacing: 0.05em;
}
@media (max-width: 800px) {
.topfeature .fealist {
	display: block;
	padding-top: 0;
}
.topfeature .fealist li {
	width: auto;
	margin-right: 0;
	min-height: 150px;
	padding: 12px 7px 16px 120px;
}
.topfeature .fealist li+li {
	margin-top: 25px;
}
.topfeature .fealist .feaimg {
	width: 120px;
	left: -10px;
	bottom: auto;
	top: 18px;
}
.topfeature .fealist .feacap {
	position: absolute;
	right: auto;
	left: 0;
	top: -30px;
	width: 110px;
}
.topfeature .fealist .featit {
	margin-bottom: 5px;
}
}
@media (max-width: 320px) {
.topfeature .fealist .featit {
	font-size: 16px;
}
}



/* XXXXXXXXXX
----------------------------------------------- */

@media (max-width: 1024px) {

}
@media (max-width: 800px) {

}

/* jiage
----------------------------------------------- */
.jiage{
	background: #F8F8F8;
	padding: 0;
}
.jiagetop{
	padding-top: 0;
}
.jiagetxt{
	text-align: center;
	font-size: 20px;
	letter-spacing: 0.005em;
	color: #fff;
	background: #2E2E2E;
	line-height: 1.5;
	padding: 5px 0;
	margin-bottom: 15px;
}
.jiapcnav ul{
	display: flex;
	justify-content: right;
}
.jiapcnav li{
	font-size: 18px;
	font-weight: 700;
	background: #E6E6E6;
	border:2px solid #3E3E3E;
	border-bottom: none;
	border-radius: 10px 10px 0 0;
	width: 41%;
	margin-right: 18px;
	text-align: center;
	line-height: 50px;
	height: 50px;
	color: #A0A0A0;
}
.jiapcnav li.on:nth-child(1){
	background: #FFE2E6;
	color: #212121;
}
.jiapcnav li.on:nth-child(2){
	background: #FFE6BB;
	color: #212121;
}

.jiapctop ul{
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-left: 1px solid #3E3E3E;
}
.jiapctop ul li{
	color: #212121;
	font-size: 15px;
	line-height: 31px;
	height: 31px;
	background: #E6E6E6;
	border:1px solid #3E3E3E;
	border-left: none;
	text-align: center;
	width: 16%;
}
.jiapctop ul li:nth-child(1),.jiapctop ul li:nth-child(4),.jiapctop ul li:nth-child(7){
	width: 13%;
}
.jiapcbottom li:nth-child(1) span{
	color: #212121;
	font-size: 15px;
	line-height: 31px;
	height: auto;
	background: #E6E6E6;
	border-top:1px solid #3E3E3E;
	border-bottom:1px solid #3E3E3E;
	border-left:1px solid #3E3E3E;
	text-align: center;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.jiapcbottom li:nth-child(1) {
	border-right:1px solid #3E3E3E;
}
.jiapcbottom li{
	display: flex;
	justify-content: space-between;
	text-align: center;
	border-right:1px solid #C7C7C7;
}
.jiapcbottom .jiagepctxt{
	color: #E50020;
	font-size: 18px;
	line-height: 49px;
	height: 49px;
	border-bottom:1px solid #C7C7C7;
	border-left:1px solid #C7C7C7;
	text-align: center;
	width: 100%;
}
.jiapcbottom .jiagepctxt:nth-child(1){
	color: #000;
}

.jiapctop_inspection ul{
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-left: 1px solid #3E3E3E;
}
.jiapctop_inspection ul li{
	color: #212121;
	font-size: 15px;
	line-height: 31px;
	height: 31px;
	background: #E6E6E6;
	border:1px solid #3E3E3E;
	border-left: none;
	text-align: center;
	width: 25%;
}
.jiapctop_inspection ul li:nth-child(2){
	background: #f1ce98;
}
.jiapctop_inspection ul li:nth-child(3){
	background: #98ee76;
}
.jiapctop_inspection ul li:nth-child(4){
	background: #5ccae5;
}
.jiapctop_inspection ul li:nth-child(5){
	background: #efa3d8;
}
.jiapcbottom_inspection li{
	display: flex;
	justify-content: space-between;
	align-items: center;
	text-align: center;
	border-right:1px solid #C7C7C7;
}
.jiapcbottom_inspection .jiagepctxt{
	font-size: 18px;
	line-height: 49px;
	height: 49px;
	border-bottom:1px solid #C7C7C7;
	border-left:1px solid #C7C7C7;
	text-align: center;
	width: 25%;
}
.jiapcbottom_inspection ul li:nth-child(5){
	background: #efd4a3;
	color: #E50020;
}

.jiagenotes{
	color: #000;
	font-size: 14px;letter-spacing: 0.005em;
	padding: 20px;
}

.jiaspnav ul{
	display: flex;
	justify-content: space-between;
	border-bottom: 3px solid #212121;
	margin-bottom: 10px;
}
.jiaspnav li{
	font-size: 18px;
	font-weight: 700;
	background: #E6E6E6;
	border:2px solid #3E3E3E;
	border-bottom: none;
	border-radius: 10px 10px 0 0;
	width: 48%;
	text-align: center;
	line-height: 36px;
	height: 36px;
}
.jiaspnav li.on:nth-child(1){
	background: #FFE2E6;
	color: #212121;
}
.jiaspnav li.on:nth-child(2){
	background: #FFE6BB;
	color: #212121;
}

.jiasptop ul{
	display: flex;
	justify-content: space-between;
	border-left: 1px solid #3E3E3E;
}
.jiasptop ul li{
	color: #212121;
	font-size: 13px;
	background: #E6E6E6;
	border:1px solid #3E3E3E;
	border-left: none;
	width: 28%;
	height: auto;
	line-height: 1.3;
	padding: 5px 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
.jiasptop ul li:nth-child(1){
	width: 20%;
}
.jiaspbottom li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: center;
    border-right: 1px solid #C7C7C7;
}
.jiaspbottom .jiagesptxt{
	color: #E50020;
	font-size: 14px;
	line-height: 1.1;
	padding: 5px 0;
	height: 45px;
	border-bottom:1px solid #C7C7C7;
	border-left:1px solid #C7C7C7;
	width: 28%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.jiaspbottom .jiagesptxt:nth-child(1){
	color: #000;
	width: 20%;
}
.jiasptop_inspection ul{
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-left: 1px solid #3E3E3E;
}
.jiasptop_inspection ul li{
	color: #212121;
	font-size: 13px;
	background: #E6E6E6;
	border:1px solid #3E3E3E;
	border-left: none;
	width: 28%;
	height: 45px;
	line-height: 1.3;
	padding: 5px 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
.jiasptop_inspection ul li:nth-child(1){
	width: 20%;
}
.jiaspbottom_inspection li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	text-align: center;
	border-right: 1px solid #C7C7C7;
}
.jiaspbottom_inspection .jiagesptxt{
	color: #E50020;
	font-size: 14px;
	line-height: 1.1;
	padding: 5px 0;
	height: 60px;
	border-bottom:1px solid #C7C7C7;
	border-left:1px solid #C7C7C7;
	width: 28%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.jiaspbottom_inspection .jiagesptxt:nth-child(1){
	color: #000;
	width: 20%;
}
.jiagesp{
	display: none;
}
.pm50{
	padding-bottom: 50px;
}
@media (max-width: 1024px) {
	.jiapctop ul li{
		font-size: 12px;
	}
	.jiapcbottom .jiagepctxt{
		font-size: 14px;
		line-height: 39px;
		height: 39px;
	}
}
@media (max-width: 1024px) {
	.jiagetxt{
		font-size: 16px;
	}
	.jiagepc{
		display: none;
	}
	.jiagesp{
		display: block;
	}
	.jiagenotes{
		padding:15px 0;
		font-size: 12px;
	}
	.jiaspnav li{
		color: #A0A0A0;
	}
	.pm50 {
	    padding-bottom: 30px;
	}
}

/* repair
----------------------------------------------- */
.repair {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: space-between;
    margin-bottom: -25px;
    padding-top: 20px;
}
.repair li {
	width: 49%;
	padding: 20px 15px 25px;
	background: #FFF4C9;
	border: 4px #212121 solid;
	margin-bottom: 25px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	-ms-border-radius: 15px;
	-o-border-radius: 15px;
	border-radius: 15px;
	-webkit-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-moz-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-ms-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-o-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
}
.repair .repairtop{
	background: #BC2C40;
	font-size: 21px;
	color: #fff;
	padding:7px 15px;
	margin-bottom: 10px;
}

.repair .repairmain {
    display: flex;
    column-gap: 20px;
}
.repimgico{
	height: 47px;
	display: flex;
	align-items: flex-end;
}
.repairmain .repairimg{
	position: relative;
}
.repairrig .repairimg:before {
    position: absolute;
    content: "";
	left: -20px;
    top: 50%;
    transform: translateY(-50%);
    border-left: 14px #E50020 solid;
    border-right: 0;
    border-top: 13px solid transparent;
    border-bottom: 13px solid transparent;
    z-index: 0;
}
@media (max-width: 1024px) {

}
@media (max-width: 1024px) {
	.repair{
	    display: block;
	    margin-bottom: -20px;
	}
	.repair li{
		width: auto;
	}
	.repair .repairtop{
		font-size: 16px;
	}
	.repair .repairmain{
		justify-content: center;
	}

}

/* features
----------------------------------------------- */
.features{

}
.turestop{
	background: #CD2D43;
	position: relative;
	margin-bottom: 10px;
	border-bottom: 8px solid #802B2B;
	display: flex;
	position: relative;
}
.turestop .turestopic{
	color: #fff;
	font-size: 13px;
	position: absolute;
	right:20px;
	top: 50%;
    transform: translateY(-50%);
}
.turestop .turestopti{
	border-left: 13px solid #212121;
	font-size: 30px;
	color: #fff;
	font-weight: 700;
	line-height: 1.6;
	padding: 5px 0 5px 20px;
}
.turesmain{
	padding: 20px ;
	background: #FFF4C9;
	border: 4px #212121 solid;
	margin-bottom: 35px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	-ms-border-radius: 15px;
	-o-border-radius: 15px;
	border-radius: 15px;
	-webkit-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-moz-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-ms-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-o-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	display: flex;
	column-gap: 12px;
}
.turesrig{
	background: #fff;
	flex: 1;
	padding: 20px;
}
.turesrig .turestxt{
	font-size: 17px;
	letter-spacing: 0.025em;
	line-height: 1.6;
}
.turesrig .turestxt a {
	color: #f00;
}
@media (max-width: 1024px) {
	.turestop .turestopti{
		font-size: 24px;
	}
}
@media (max-width: 1024px) {
	.turesmain{
		display: block;
		padding: 10px;
	}
	.turestop .turestopti{
		font-size: 16px;
		padding: 5px 0 5px 10px;
	}
	.turesimg img{
		width: 100%;
		margin-bottom: 10px;
	}
	.turesrig{
		padding: 10px;
	}
	.turesrig .turestxt{
		font-size: 13px;
	}
	.features li:first-child .turestop{
		margin-bottom: 35px;
	}
	.turestop .turestopic{
		color: #212121;
		top: 60px;
		right: 0;
		font-size: 12px;
	}
}


/* staff
----------------------------------------------- */
.staff ul{
	display: flex;
	flex-wrap: wrap;
    column-gap: 5%;
}
.staff li{
	width: 30%;
	background: #C72D43;
	border-radius: 14px;
	position: relative;
	padding:57px 43px 43px;
}
.staff li:nth-child(n+4){
	margin-top: 20px;
}
.staffbot .stafftit{
	font-size: 24px;
	letter-spacing: 0.1em;
	color: #fff;
	font-weight: 700;
	text-align: center;
	padding: 10px 0;
}
.staffbot .stafftxt{
	font-size: 16px;
	font-weight: 700;
	color: #fff;
	text-align: center;
}
.staffictop{
	width: 100%;
	display: flex;
	justify-content: space-between;
	position: absolute;
	left:0;
	top:0;
	padding:20px 20px 0;
}
.stafficbot{
	width: 100%;
	display: flex;
	justify-content: space-between;
	position: absolute;
	left:0;
	bottom:0;
	padding:0 20px 20px;
}
@media (max-width: 1024px) {
	.staffbot .stafftxt{
		font-size: 15px;
	}
}
@media (max-width: 1024px) {
	.staff ul{
		display: block;
		margin-bottom: -20px;
	}
	.staff li{
		display: flex;
		align-items: center;
		width: 100%;
		padding:30px 20px;
		margin-bottom: 20px;
		justify-content: center;
	}
	.staffimg{
		width: 201px;
		max-width: 40%;
	}
	.staffbot{
		width: 160px;
		max-width: 60%;
	}
	.staffictop{
		padding: 10px 10px 0;
	}
	.staffictop img{
		width: 15px;
		height: 15px;
	}
	.stafficbot{
		padding: 0 10px 10px;
	}
	.stafficbot img{
		width: 15px;
		height: 15px;
	}
}



/* mapnav
----------------------------------------------- */
.maptop{
	/*margin-bottom: 70px;*/
}
.mapnav{
	display: flex;
	justify-content: center;
	margin-bottom: 20px;
}
.mapnav li{
	background: #B7B7B7;
	color: #fff;
	font-size: 16px;
	border-radius: 35px;
	padding: 11px 0;
	width: 222px;
	text-align: center;
	position: relative;
	text-indent: 2em;
}
.mapnav li:nth-child(1){
	margin-right: 25px;
}
.mapnav li img{
	position: absolute;
	left: 30px;
	top: 0;
	transform: translateY(50%);
}
.mapnav li:nth-child(1) img{
	top: 20%;
}
.mapnav li.on{
	background: #212121;
}

.mapnavic{
	display: flex;
	justify-content: center;
}
.mapntan .mapnavic{
	margin-bottom: 20px;
}
.mapnavic .mapnavictx{
	background: url(../img/common/icon_mapnav03.svg) left center no-repeat;
	font-size: 16px;
	padding-left:20px;
    text-decoration: underline;
    text-underline-offset: 4px;
}
.mapbotmain{
	display: flex;
}
.maprgic{
	color: #787878;
	font-size: 12px;
	margin-bottom: 5px;
}
.maprgic .maprgicbl{
	font-weight: 700;
	font-size: 20px;
	margin-left: 15px;
}
.mapbot .storemap {
    width: 100%;
    border: 3px solid #BFBFBF;
}
.mapbot .storemap iframe {
    height: 568px;
    width: 100%;
}
.mapleft{
	width: 54%;
}
.mapleft.gmap{
	width: 490px;
	height: 568px;
	border: 3px solid #BFBFBF;
}
.maprgiht{
	width: 47%;
	margin-left: auto;
}
ul.maprgihtma {
	/*width: 454px;*/
	height: 65vh;
	overflow: auto;
}
ul.expredet {
	height: 69vh;
	overflow: auto;
}
.maprgihtma li{
	background: #fff;
	padding: 15px;
	border:2px solid #434343;
	margin-bottom: 25px;
	-webkit-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-moz-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-ms-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	-o-box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
	box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
}
.maprgihtma li:hover{
    background: #FFE8EB;
    border:2px solid #D45264;
}
.mapimgtxt{
	display: flex;
	margin-bottom: 10px;
}
.mapimgdet{
	margin-left: 15px;
	flex: 1;
}
.mapimgdet .mapimadd{
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 10px;
}
.mapimgdet .mapimtel{
	font-size: 13px;
}
.mapimgdet .mapimbut{
	display: block;
	margin-top: 10px;
}

.maprgihtbt{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.maprgihtbt a{
	display: block;
	width: 49%;
}
.maprgihtbt .mapimbut{
	display: none;
}
.mapimgdetsp{
	display: none;
}
.fancybox-skin{
	background: #fff;
}
.maptitle{
	margin-bottom: 25px;
}
.maptitle .maptitletop{
	background: #E3E3E3;
	text-align: center;
	font-size: 22px;
	font-weight: 700;
	padding: 5px 0;
	margin-right: 60px;
}
.maptitle .maptitletop br{
	display: none;
}
.express{
	width: 100%;
}
.expredet li {
    background: #fff;
    padding: 20px 26px;
    border: 2px solid #434343;
    margin-bottom: 25px;
    box-shadow: 3px 3px 6px rgba(0,0,0,0.16);
    display: flex;
}
.expredet li:hover{
	background: #FFE8EB;
	border: 2px solid #D45264;
}
.expredet .exprimg{
	margin-right: 20px;
}
.exprtitxt .exprtitle{
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 10px;
}
.exprtitxt .exprtel{
	font-size: 14px;
	margin-bottom: 25px;
}
.exprtitxt .exprbtn{
	display: flex;
	align-items: center;
	column-gap: 10px;
}
.mapntan .maprgihtbt a{
	width: 100%;
}
.mapntan .mapimgdet .mapimbut{
	border:none;
	background: none;
}
.mapntan .mapimgdet .mapimbut:before{
	display: none;
}
.mapnavdial .mapimgdet .mapimtel a{
	font-size: 16px;
	color: #008E3A;
	font-weight: 700;
	border:1px solid #008E3A;
	border-radius: 21px;
	padding: 2px 0;
	display: block;
	margin-top: 5px;
	text-align: center;
}
.mapntan .maptop {
    margin-bottom: 20px;
}
.fancybox-close {
    right: 20px !important;
    top: 10px !important;
    background: url(../img/common/btn_end.svg) center center no-repeat !important;
    width: 66px !important;
    height: 77px !important;
}
.mapbotbox .mapnavic{
	padding-bottom: 70px;
}
.mapnavind .mapbotbox:nth-child(1){
	padding-top: 70px;
}
.mapbotbox .xiezhen{
	display: none;
}
.mapntanbox .xiezhen{
	display: none;
}
.tel_sp{
	display: none;
}
.tel_pc{
	display: block;
}
@media (max-width: 1024px) {
	ul.maprgihtma {
		width: 100%;
		/*height: 65vh;*/
		overflow: auto;
	}
	.maprgihtma li{
		padding: 10px;
	}
	.mapimgdet .mapimadd{
		font-size: 14px;
	}
	.mapimgdet .mapimtel {
	    font-size: 12px;
	}
	.mapimgdet .mapimbut{
		font-size: 14px;
	}
	.mapimgdet .mapimbut:before{
		display: none;
	}
	.mapimgdet{
		margin-left: 10px;
	}
	.maptitle .maptitletop{
		font-size: 18px;
	}
	.exprtitxt .exprtel{
		margin-bottom: 15px;
	}
	.mapnavdial .mapimgdet .mapimtel a{
		font-size: 13px;
	}
}
@media (max-width: 1024px) {
	.mapnavind .mapbotbox:nth-child(1){
		padding-top: 30px;
	}
	.mapbotbox .mapnavic{
		padding-bottom: 30px;
	}
	.mapnav{
		justify-content: space-between;
	}
	.mapnav li{
		width: 49%;
		font-size: 14px;
	}
	.mapnav li:nth-child(1){
		margin-right: 0;
	}
	.mapnav li img{
		left: 20px;
		width:15px;
	}
	.mapimgdetpc .mapimbut{
		display: none;
	}
	.maprgiht{
		width: 44%;
	}
	.mapbot .storemap iframe{
		height: 490px;
	}
	.expredet li{
		padding: 10px 16px;
	}
	.exprtitxt .exprtitle{
		font-size: 16px;
		margin-bottom: 5px;
	}
	.exprtitxt .exprtel {
	    margin-bottom: 10px;
	    font-size: 12px;
	}
	.mapnavdial .mapimgdet .mapimtel a{
		font-size: 12px;
	}
	.fancybox-close {
	    width: 51px !important;
	    height: 62px !important;
	}

}
@media (max-width: 1024px) {
	.mapimg{
		width: 41%;
	}
	.mapimgtxt img{
		width: 100%;
	}
	.mapimgdetpc .mapimtel{
		display: none;
	}
	.mapimgdet .mapimadd {
	    font-size: 16px;
	}
	.mapimgdet .mapimtel {
	    font-size: 15px;
	}
	.mapbot .storemap iframe{
		height: 300px;
	}

	.mapbotmain{
		display: block;
	}
	.mapleft{
		width: 100%;
		margin-bottom: 10px;
	}
	.mapleft.gmap{
		width: 100%;
		border: 3px solid #BFBFBF;
	}
	.mapimgdetsp{
		margin-left: 0;
		display: block;
	}
	.maprgiht{
		width: 100%;
	}
	.maprgihtbt{
		display: block;
	}
	.maprgihtbt a{
		margin-top: 10px;
		width: 100%;
	}
	.exprtitxt .exprbtn a:nth-child(1), .exprtitxt .exprbtn a:nth-child(2), .exprtitxt .exprbtn a:nth-child(3){
		display: none;
	}
	.mapbotbox .xiezhen{
		display: block;
	}
	.mapntanbox .xiezhen{
		display: block;
	}
	.tel_sp{
		display: block;
	}
	.tel_pc{
		display: none;
	}
	.mapntan .exprtitxt .exprbtn a:nth-child(3){
		display: none;
	}
	/*.mapntan .exprtitxt .exprbtn a:nth-child(1){*/
	/*	display: block;*/
	/*}		*/
	#mapnavdial .maprgihtbt a:nth-child(1){
		display: none;
	}
	.maprgihtma .maprgihtbt a:nth-child(1), .maprgihtma .maprgihtbt a:nth-child(2) {
		display: none;
	}
	.mapntan .exprtitxt .exprbtn {
	    display: flex;
	    flex-wrap: wrap;
	    flex-direction: column-reverse;
	}
	.maptitle .maptitletop {
	    font-size: 14px;
	}
	.maptitle .maptitletop br{
		display: block;
	}
	.expredet li{
		display: block;
		position: relative;
		padding: 10px;
	}
	.exprtitxt .exprtel{
		font-size: 15px;
		margin-top: 10px;
	}
	.expredet .exprimg{
		width: 41%;
	}
	.expredet .exprimg img{
		width: 100%;
	}
	.exprtitxt .exprtitle{
		position: absolute;
		right: 10px;
		top: 10px;
		width: 50%;
	}
	.exprtitxt .exprbtn{
		display: block;
	}
	.exprtitxt .exprbtn a{
		display: block;
		margin-top: 10px;
		width: 100%;
	}
	.mapntan .mapimgdet .mapimtel {
	    font-size: 14px;
	}
	.mapnavdial .mapimgdet .mapimtel a {
	    font-size: 17px;
	}
	.fancybox-close {
	    background: url(../img/common/btn_end.svg) no-repeat left center /100% 100%!important;
	    width: 40px !important;
	    height: 40px !important;
		right: 10px !important;
    	top: 5px !important;
	}
	.maptitle .maptitletop{
		margin-right: 0;
	}
	.fancybox-outer{
		padding-top: 30px;
	}
	.maprgihtbt .mapimbut{
		display: block;
	}
}
/* details
----------------------------------------------- */
.detatop{
	background: #fff;
	border:2px solid #212121;
	padding: 20px 40px 30px;
	margin:40px 0;
}
.detatop .detatopti{
	background: #E3E3E3;
	color: #212121;
	font-size: 28px;
	font-weight: 700;
	text-align: center;
	padding: 5px 0;
	margin-bottom:20px;
}
.detatomain{
	display: flex;
}
.detatomain .detatoimg{
	margin-right: 40px;
}
.detatobot .detatotxt{
	font-size: 15px;
	letter-spacing: 0.005em;
	margin-bottom: 15px;
}
.detatobot .totxt{
	font-weight: 700;
	display: inline-block;
	width: 80px;
	border-right: 1px solid #000;
	margin-right: 15px;
}
.detatoico{
	margin-bottom: -20px;
}
.detatoico li{
	margin-bottom:10px;
}
.detatoico li span{
	font-weight: 700;
	font-size: 17px;
	color: #D52A42;
	padding: 7px 28px;
	border:1.5px solid #444444;
	position: relative;
	display: inline-block;
}
.detatoico li span:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
	border-left: 15px solid #D52A42;
}
.detatoico li span:after{
    content: "";
    border:7px solid #C3001B;
    border-right: 7px #fff solid;
    border-bottom:7px solid #fff;
    position: absolute;
    right: -1.5px;
    bottom: -1.5px;
}

@media (max-width: 1024px) {
	.detatop{
		margin:30px 0;
	}
	.detatomain .detatoimg {
	    margin-right: 20px;
	}
	.detatop{
    	padding: 20px 20px 30px;
	}
}
@media (max-width: 800px) {
	.detatop {
	    padding: 10px 10px 20px;
	}
	.detatop .detatopti{
		margin-bottom: 10px;
		font-size: 20px;
	}
}
@media (max-width: 1024px) {
	.detatomain{
		display: block;
	}
	.detatomain .detatoimg {
	    margin-right: 0;
	    margin-bottom: 10px;
	}
	.detatobot .detatotxt{
		margin-bottom: 10px;
	}
	.detatomain .detatoimg img{
		width: 100%;
	}
	.detatoico {
	    display: flex;
	    flex-wrap: wrap;
	    column-gap: 20px;
	}
}
@media (max-width: 490px) {
	.detatoico {
	    column-gap: 10px;
	}
	.detatoico li span{
	    font-size: 10px;
	    padding: 5px 14px;
	}
	.detatoico li span:before {
	    border-left: 8px solid #D52A42;
	}
}

.discount{
	background: url(../img/top/bj_discount.jpg) no-repeat left center / 100% 100%;
}
.discount .topexample{
	margin-top: 0;
}

.discmain ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.discmain ul li{
	width: 49%;
	margin-top: 10px;
}
.discmain .discbox{
	background: url(../img/top/bj_discmain.png)no-repeat left bottom / 100% 100%;
	border-bottom: none;
	padding: 20px 0 30px;
}
.discmain .disctitle{
	background: #BC2C40;
	color: #fff;
	font-size: 21px;
	font-weight: 700;
	text-align: center;
	padding:10px 0;
	margin:0 4px;
}
.discmain .disctitle br{
	display: none;
}
.discmain .discleft{
	padding:15px 30px;
	font-size: 16px;
	letter-spacing: 0.05em;
}
.discmain .discleft .discleftic{
	color: #C3001B;
	font-size: 17px;
	font-weight: 700;
}
.discmain .discrigh{
	padding:15px 30px;
	font-size: 14px;
	letter-spacing: 0.05em;
	font-weight: 400;
}
.discmain .discrigh .discrighic{
	font-size: 16px;
	font-weight: 500;
}
@media (max-width: 1024px) {
	.discmain .disctitle{
		font-size: 18px;
		margin: 0 3px;
	}
}
@media (max-width: 1024px) {
	.discount {
	    background: url(../img/top/bj_discount_sp.jpg) no-repeat left center / 100% 100%;
	}
	.discmain ul{
		display: block;
	}
	.discmain .disctitle br{
		display: block;
	}
	.discmain ul li{
		width: 100%;
		margin-bottom:20px;
	}
	.discmain .discrigh,.discmain .discleft{
	    padding: 10px 20px;
	}
	.discmain .discrigh .discrighic{
		display: block;
	}
}

.voice{
	margin-bottom: -85px;
}
.voice li{
	display: flex;
	align-items: center;
	margin-bottom: 65px;
}
.voice li:nth-child(even){
	flex-direction: row-reverse;
}
.voice li .voiceimg{
	margin-right: 50px;
}
.voice li:nth-child(even)  .voiceimg{
	margin-left: 50px;
	margin-right: 0;
}
.voice li .voicerigh{
	position: relative;
	flex: 1;
	background: url(../img/repair/bj_voicetit01.png) no-repeat left center / 100% 100%;
	background: #FFF4C9;
	border:3px solid #212121;
	border-radius: 15px;
	box-shadow: 8px 8px 0 rgba(195,0,27,0.2);
	padding:15px 25px 15px 25px;
}
.voice li .voicerigh:before {
    position: absolute;
	background: url(../img/repair/bj_voicetit01.png) no-repeat left center / 100% 100%;
    content: "";
    width: 32px;
    height: 35px;
    left:-32px;
    top: 50px;
    z-index: 0;
}
.voice li:nth-child(even) .voicerigh{
	position: relative;
	background: #FFF4C9;
	border:3px solid #212121;
	border-radius: 15px;
	box-shadow: 8px 8px 0 rgba(195,0,27,0.2);
	padding:15px 25px 15px 25px;
}
.voice li:nth-child(even) .voicerigh:before {
    position: absolute;
	background: url(../img/repair/bj_voicetit02.png) no-repeat left center / 100% 100%;
    content: "";
    width: 32px;
    height: 35px;
    left: auto;
    right:-32px;
    top: 50px;
    z-index: 0;
}
.voicerigh .voicetxt{
	font-size: 17px;
	letter-spacing: 0.05em;
	line-height: 1.6;
}

@media (max-width: 1024px) {
	.voice li .voiceimg{
		margin-right: 30px;
	}
	.voice li:nth-child(even)  .voiceimg{
		margin-left: 30px;
	}
}
@media (max-width: 1024px) {
	.voice{
		margin-bottom: -35px;
	}
	.voice li {
	    align-items: flex-start;
	    margin-bottom: 25px;
	}
	.voice li .voiceimg{
		width: 80px;
	}
	.voice li .voicerigh{
		padding: 10px 20px 20px 20px;
	}
	.voice li .voicerigh:before {
		background: url(../img/repair/bj_voicetit01_sp_a.png) no-repeat left center / 100% 100%;
	    width: 24px;
	    height: 22px;
	    left:-24px;
	    top: 30px;
	}
	.voice li:nth-child(even) .voicerigh{
		background: #FFF4C9;
		border:3px solid #212121;
		border-radius: 15px;
		box-shadow: 8px 8px 0 rgba(195,0,27,0.2);
		padding:10px 20px 20px 20px;
	}
	.voice li:nth-child(even) .voicerigh:before {
		background: url(../img/repair/bj_voicetit01_sp_b.png) no-repeat left center / 100% 100%;
	    width: 24px;
	    height: 22px;
	    left: auto;
	    right:-24px;
	    top: 30px;
	}
}
@media (max-width: 320px) {
	.voice li .voiceimg {
	    width: 70px;
	}
	.voice li .voicerigh {
	    padding: 10px 10px 20px 10px;
	}
	.voice li:nth-child(even) .voicerigh{
		padding: 10px 10px 20px 10px;
	}
}
#mapnavtel,#mapnavyue,#mapnavdial{
	display: none;
}


/* 1024 add */
.footer-curio {
  display: flex;
  justify-content: center;
  padding: 25px 20px;
	background-color: #C3001B;
}
.curio_dealer_area {
	display: inline-block;
	width: auto;
	padding: 20px 64px 24px;
	border-radius: 16px;
	background-color: #fff;
	text-align: left;
}
.curio_dealer_heading {
	display: block;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
}
.curio_dealer_content {
	margin-top: 16px;
}
.curio_dealer_item {
	display: flex;
	margin-top: 8px;
}
.curio_dealer_item dt,
.curio_dealer_item dd {
	font-size: 14px;
}

@media (max-width: 767px) {
  .footer-curio {
    padding: 20px;
  }
	.curio_dealer_area {
		max-width: 400px;
		padding: 16px 24px 24px;
		width: 100%;
	}
}
/* 1024 end */

/* 注意喚起バナー追加
----------------------------------------------- */
.headup_sp {
	display: none !important
  }
@media screen and (max-width: 767px) {
	.headup_sp {
	  display: block !important
	}
  }

@media screen and (max-width: 767px) {
	.headup_pc {
	  display: none !important
	}
  }

.block-link:hover {
	opacity: 0.85;
  }

section.headup_banner .banner-item {
	display: flex;
	justify-content: center;
	padding: 20px 0;
  }

/* 料金表変更
----------------------------------------------- */
.topblock.jiage {
	padding-bottom: 50px;
}

.price-nav {
	display: flex;
}

.price-nav li {
	min-width: 285px;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	color: #727272;
	padding: 20px 10px;
	border-radius: 10px 10px 0 0;
	border: 2px solid #000000;
	border-bottom: none;
	background-color: #E5E5E5;
	margin-right: 4px;
	cursor: pointer;
}

.is-active.price-nav-domestic {
	color: #000;
	background-color: #FFE2E6;
}

.is-active.price-nav-imported {
	color: #000;
	background-color: #FFE6BB;
}

.price-area {
	padding: 30px 50px 20px;
	border-radius: 0 16px 16px 16px;
	border: 3px solid #000000;
	background-color: #fff;
}

.imported {
	display: none;
}

.price-table {
	width: 100%;
}

.price-table-bottom {
	margin-top: 25px;
}

.price-table th {
	height: 64px;
	font-size: 18px;
	text-align: center;
	font-weight: 500;
	color: #fff;
	background-color: #333333;
	vertical-align: middle;
	border: 1px solid #C7C7C7;
}

.price-table .br-sp {
	display: none;
}

.price-table-top th {
	height: 64px;
	padding: 0 5px;
}

.price-table-bottom th {
	width: 25%;
	height: 64px;
	padding: 5px;
}

.price-table td {
	font-size: 18px;
	text-align: center;
	font-weight: 600;
	color: #E50020;
	border: 1px solid #C7C7C7;
	padding: 15px 5px;
}

.price-table .td-head {
	font-weight: 700;
	color: #000000;
	background-color: #f8f8f8;
}

.price-note {
	font-size: 12px;
	font-weight: 500;
	margin-top: 15px;
	padding-left: 1.4em;
	text-indent: -1.4em;
}

#header .logoin-details .logoico02{
    margin: 5px 0 0 0;
}

@media (max-width: 1024px) {
	.price-area {
		padding: 30px 20px 20px;
	}

	.price-table th {
		font-size: 16px;
	}

	.price-table td {
		font-size: 16px;
	}
}

@media (max-width: 767px) {
	.price-nav {
		display: flex;
		margin-top: 40px;
	}

	.price-nav li {
		min-width: auto;
		width: 47%;
		font-size: 14px;
		padding: 9px 5px;
		border-radius: 10px 10px 0 0;
		margin-right: 3px;
	}

	.price-area {
		padding: 25px 7px 20px;
		border-radius: 0 16px 16px 16px;
		border: 3px solid #000000;
	}

	.price-table-bottom {
		margin-top: 20px;
	}

	.price-table th {
		font-size: 12px;
	}

	.price-table .br-sp {
		display: block;
	}

	.price-table-top th {
		height: 38px;
		padding: 0 3px;
	}

	.price-table-bottom th {
		width: auto;
		height: auto;
		padding: 5px;
	}

	.price-table td {
		font-size: 15px;
		padding: 7px 3px;
	}

	.price-note li:nth-of-type(n+2) {
		margin-top: 3px;
	}

	#header .logoin-details .logoico02{
    	margin: 5px 0 0 0;
	}
}

@media (max-width: 384px) {
	.price-table td {
		font-size: 12px;
	}
}
