@charset "utf-8";




section h2{font-size: clamp(1.375rem, 0.875rem + 2.5vw, 2.75rem);margin-bottom: .75em}
section h3{font-size: clamp(1.125rem, 0.716rem + 2.05vw, 2.25rem);margin-bottom: 1em;}
section h4{font-size: clamp(1rem, 0.682rem + 1.59vw, 1.875rem);margin-bottom: .75em;}


section .gmap{
	margin: 0 calc(50% - 50vw);
	width: calc(var(--vw) * 100);
	padding-bottom: 35%;	
}

.front_intro h2 .c_red{
	font-size: 110%;
}

.front_intro .img_area,
.front_intro .txt_area{
	width: calc(100% / 2 - 1em);
}

.front_intro .txt_area dl{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: .75em 0;
}

.front_intro .txt_area dl dt{
	width: 6em;
}
.front_intro .txt_area dl dd{
	width: calc(100% - 6em);
}

.front_intro li{
	width: calc(100% / 2 - 1em);
}




.front_shop .txt_area{
	margin: auto;
 display: table;
  text-align: left;
}

.front_shop .txt_area dl{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: .75em 0;
}

.front_shop .txt_area dl dt{
	width: 6em;
}
.front_shop .txt_area dl dd{
	width: calc(100% - 6em);
}


.front_shop .gmap{
	margin-bottom: 2em;
}


.features {
	background: url(../images/front/features_bg.jpg) no-repeat center center;
	background-size: cover;
	padding: clamp( 2em, 4vw, 4em );
}

.specialty_wrap {
	background: rgba( 255,255,255,.75 );
	box-shadow: 0 15px 15px -10px rgba( 0,0,0,.15 );
	padding: 2em;
	margin-block: 2em;
}

.specialty_wrap dt {
	font-size: 120%;
	font-weight: bold;
	margin-bottom: .5em;
}

.specialty_wrap dt .num {
	font-style: italic;
	margin-right: .5em;
	font-size: 150%;
}


@media (max-width: 799px){



.front_intro .img_area{
	width: 100%;
	max-width: 640px;
	margin: 0 auto 6vw;
}

.front_intro .txt_area{
	width: auto;
		margin: auto;
 display: table;
  text-align: left;
}


}




@media (max-width: 599px){

section .gmap{
	padding-bottom: 50%;
}



.front_intro li{
	width: 100%;
	margin: .5em 0;
}


section .tel a{
	text-decoration: underline;
	color: var(--c_red);
}



}



@media (max-width: 399px){






}