@charset "UTF-8";
.slider img{width: 100%;}

main{position: relative;}
.news{background: #F4EDED;position: absolute;bottom: -60px;left: 0;font-size: 17px;line-height: 1.8;padding: 30px;width: 35%;}
.news a:hover{text-decoration: underline;}
.newsBottom{margin-bottom: 150px;}

@media screen and (max-width: 768px) {
.news{bottom: -30px;font-size: 13px;padding: 10px;width:75%;}
.newsBottom{margin-bottom: 70px;}
}

.mente{border: 10px solid #F4EDED;display: block;padding: 30px;margin: 100px auto;font-size: 18px;line-height: 2;max-width: 600px;text-align: center;animation-name: fadeInUp;}
.infobox{border: 10px solid #F4EDED;display: block;padding: 30px;margin: 100px auto;font-size: 18px;line-height: 2;max-width: 600px;text-align: center;animation-name: fadeInUp;}
.infobox a{text-decoration: underline;font-size:16px;}
.infobox a:hover{text-decoration: none;}

.contact_bk{background: #F4EDED;}

.contact_wrap{max-width: 1260px;padding: 100px 30px;margin: 0 auto;}
.contact_tit{animation-name: fadeInUp;}
.min_tit{text-align: center;font-size: 38px;font-weight: 100;font-family: 'EB Garamond', serif;}
.min_tit + p{font-size: 18px;text-align: center;margin-top: 15px;letter-spacing: 0.1em;}
.lead{font-size: 16px;text-align: center;margin-top: 50px;line-height: 2;}

.reserve_item{margin-top: 50px;display: flex;}
.reserve_item > *{width: 50%;}
.reserve_item > dt{animation-name: fadeInLeft;}
.reserve_item > dd{text-align: center;background: #fff;display: flex;justify-content: center;align-items: center;flex-direction: column;font-size: 18px;animation-name: fadeInRight;}
.reserve_item > dd strong{position: relative;padding: 10px 5px 2px;}
.reserve_item > dd strong span{font-weight: 500;font-size: 22px;position: relative;z-index: 1;letter-spacing: 0.05em;}
.reserve_item > dd strong::before{content:"";position: absolute;height: 10px;background: #df7e8a;width: 100%;bottom: 0;left: 0;}
.reserve_item > dd .re_btn{font-size: 20px;font-weight: 400;text-align: center;display: block;width: 340px;padding: 20px;background: linear-gradient(to right,#d5281d,#74110f);color: #fff;margin-top: 20px;border-radius: 35px;transition: all 0.3s;}
.reserve_item > dd .re_btn:hover{opacity: 0.6;}

.link_panel{display: flex;justify-content: space-between;flex-wrap: wrap;}
.link_panel > *{width: 46%;margin-top: 30px;}
.link_panel a{transition: all 0.3s;}
.link_panel a:hover{opacity: 0.6;}
.shop_panel{display: flex;background: #fff;animation-name: fadeInLeft;}
.shop_panel figure{width: 45%;}
.shop_panel div{display: flex;flex-direction: column;justify-content: center;align-items: center;text-align: center;width: 55%;}
.shop_panel div h3{font-weight: 100;font-family: 'EB Garamond', serif;font-size: 30px;}
.shop_panel div h3 + p{margin-top: 15px;letter-spacing: 0.1em;font-size: 16px;}

.panel_tel{display: flex;flex-direction: column;justify-content: center;align-items: center;text-align: center;background: #fff;animation-name: fadeInRight;}
.panel_tel h3{font-size: 18px;margin-bottom: 10px;}
.panel_tel p span{color: #fff;display: inline-block;padding: 1px 8px 3px;background: #3E3A39;margin-right: 0.5em;font-size: 13px;vertical-align: 6px;}
.panel_tel p big{font-size: 28px;}
.panel_tel p.time{font-size: 13px;margin-top: 15px;}

.panel_item{display: flex;border: 1px solid #888;background: #fff;position: relative;animation-name: fadeInRight;}
.panel_item:nth-of-type(even){animation-name: fadeInLeft;}
.panel_item::after{content: "";position: absolute;right: 20px;top:calc(50% - 5px);width: 10px;height: 10px;border-top: 1px solid #888;border-right: 1px solid #888;transform: rotate(45deg);}
.panel_item figure{width: 20%;text-align: center;padding: 20px 10px;background: linear-gradient(to right,#d5281d,#74110f);display: flex;align-items: center;justify-content: center;}
.panel_item figure img{max-width: 65px;}
.panel_item div{width: 80%;display: flex;flex-direction: column;justify-content: center;padding: 15px;}
.panel_item div h3{font-size: 18px;}
.panel_item div h3 + p{margin-top: 5px;}

@media screen and (max-width: 935px) {
.reserve_item > dd{font-size: 16px;}
.reserve_item > dd strong span{font-size: 18px;}
.reserve_item > dd .re_btn{font-size: 16px;width: 300px;padding: 15px;margin-top: 15px;}
}

	.newsContents{
		padding: 110px 0 130px;
	}
	.newsContents h3{
		margin-bottom: 80px;
	}
	.newsContents ul{
		display: block;
		width: 670px;
		margin: 0 auto 80px;
	}
	.newsContents ul li{
		display: table;
		width: 100%;
	}
	.newsContents ul div{
		display: table-cell;
		padding: 10px 20px;
	}
	.newsContents ul div.newsdate{
		width: 120px;
	}
	.newsContents ul li{
		text-align: left;
	}
	.newsContents ul a {
		position: relative;
		display: inline-block;
		text-decoration: none;
	}
	.newsContents ul a::after {
		position: absolute;
		bottom: -4px;
		left: 0;
		content: '';
		width: 100%;
		height: 1px;
		background: #333;
		transform: scale(0, 1);
		transform-origin: left top;
		transition: transform .3s;
	}
	.newsContents ul a:hover::after {
		transform: scale(1, 1);
	}
	.newsContents h3 {
		text-align: center;
		animation-name: fadeInUp;
		font-size: 18px;
		font-family: 'Sawarabi Mincho', sans-serif;
		
	}
	.newsContents h3 strong {
		text-align: center;
		font-size: 26px;
		font-weight: 100;
		font-family: 'Sawarabi Mincho', sans-serif;
		display: block;
		margin-bottom: 4px;
	}
	.newsBtn{
		text-align: center;
	}
	.newsBtn a{
		display: inline-block;
		color: #FFF;
		background: -moz-linear-gradient(left, #D5281D, #75120F);
		background: -webkit-linear-gradient(left, #D5281D, #75120F);
		background: linear-gradient(to right, #D5281D, #75120F);
		padding: 18px 58px;
		border-radius: 50px;
		margin-top: 0px;
		transition: 0.3s;
		font-size: 18px;
	}
	.newsBtn a:hover{
		opacity: 0.8;
	}


@media screen and (max-width: 768px) {

.mente{border: 5px solid #F4EDED;padding: 20px;margin: 40px auto;font-size: 15px;width: 85%;}
.infobox{border: 5px solid #F4EDED;padding: 20px;margin: 40px auto;font-size: 15px;width: 85%;}
.infobox a{text-decoration: underline;font-size:13px;}
.infobox a:hover{text-decoration: none;}

.contact_wrap{padding: 40px 30px 20px;}
.min_tit{font-size: 28px;}
.min_tit + p{font-size: 15px;margin-top: 10px;}
.lead{font-size: 13px;margin-top: 30px;text-align: left;}

.reserve_item{margin-top: 30px;flex-wrap: wrap;}
.reserve_item > *{width: 100%;}
.reserve_item > dt{margin: 0 -30px;width: calc(100% + 60px);animation-name: fadeInUp;}
.reserve_item > dd{font-size: 14px;margin-top: -30px;padding: 15px;animation-name: fadeInUp;}
.reserve_item > dd strong{padding: 10px 5px 2px;}
.reserve_item > dd strong span{font-size: 17px;position: relative;z-index: 1;letter-spacing: 0.05em;}
.reserve_item > dd strong::before{content:"";position: absolute;height: 10px;background: #df7e8a;width: 100%;bottom: 0;left: 0;}
.reserve_item > dd .re_btn{font-size: 16px;width: 220px;padding: 10px;background: linear-gradient(to right,#d5281d,#74110f);color: #fff;margin-top: 20px;border-radius: 35px;transition: all 0.3s;}
.reserve_item > dd .re_btn:hover{opacity: 0.6;}

.link_panel{display: flex;justify-content: space-between;flex-wrap: wrap;border-top: 1px solid #888;margin-top: 0;animation-name: fadeInUp;}
.link_panel > *{width: 100%;margin-top: 10px;}

.panel_tel{margin-top: 0;padding: 10px;animation-name: fadeInUp;}
.panel_tel h3{font-size: 15px;margin-bottom: 7px;}
.panel_tel p span{padding: 1px 8px 3px;margin-right: 0.5em;font-size: 11px;vertical-align: 4px;}
.panel_tel p big{font-size: 22px;}
.panel_tel p.time{font-size: 11px;margin-top: 7px;}

.panel_item{animation-name: fadeInUp;}
.panel_item::after{right:15px;}
.panel_item:nth-of-type(even){animation-name: fadeInUp;}
.panel_item figure{width: 20%;padding: 10px 10px;}
.panel_item figure img{width: 100%;}
.panel_item div{width: 80%;padding: 10px 30px 10px 10px;}
.panel_item div h3{font-size: 15px;}
.panel_item div h3 + p{margin-top: 3px;font-size: 13px;}

.pagetop{text-align: right;margin-top: 20px;}
.pagetop a{font-weight: 500;position: relative;}
.pagetop a::before{content: "";position: absolute;right: -15px;top:calc(50% + -2px);width: 8px;height: 8px;border-top: 1px solid #888;border-right: 1px solid #888;transform: rotate(-45deg);}
	
	.newsContents{
		padding: 70px 0 80px;
	}
	.newsContents h3{
		margin-bottom: 50px;
	}
	.newsContents ul{
		display: block;
		width: 100%;
		margin: 0 auto 20px;
		padding: 0 30px;
	}
	.newsContents ul li{
		display: table;
		width: 100%;
		margin-bottom: 5px;
	}
	.newsContents ul div{
		display: block;
		width: 100%;
		padding: 0px 10px;
	}
	.newsContents ul div.newsTitle{
		margin-bottom: 20px;
	}
	.newsContents ul div.newsdate{
		width: 100%;
	}
	.newsContents ul li{
		text-align: left;
	}
	.newsContents ul a {
		position: relative;
		display: inline-block;
		text-decoration: none;
	}
	.newsContents ul a::after {
		position: absolute;
		bottom: -4px;
		left: 0;
		content: '';
		width: 100%;
		height: 1px;
		background: #333;
		transform: scale(0, 1);
		transform-origin: left top;
		transition: transform .3s;
	}
	.newsContents ul a:hover::after {
		transform: scale(1, 1);
	}
	.newsContents h3 {
		text-align: center;
		animation-name: fadeInUp;
		font-size: 16px;
		font-family: 'Sawarabi Mincho', sans-serif;
	}
	.newsContents h3 strong {
		text-align: center;
		font-size: 22px;
		font-weight: 100;
		font-family: 'Sawarabi Mincho', sans-serif;
		display: block;
		margin-bottom: 4px;
	}
	.newsBtn{
		text-align: center;
	}
	.newsBtn a{
		display: inline-block;
		color: #FFF;
		background: -moz-linear-gradient(left, #D5281D, #75120F);
		background: -webkit-linear-gradient(left, #D5281D, #75120F);
		background: linear-gradient(to right, #D5281D, #75120F);
		padding: 16px 80px;
		border-radius: 50px;
		margin-top: 20px;
		transition: 0.3s;
		font-size: 14px;
	}
	.newsBtn a:hover{
		opacity: 0.8;
	}
}

#top_banner .banners li {
	line-height: 22px;
}
#top_banner .banners li dt {
	font-size: 14px;
	font-weight: bold;
}
#top_banner .banners li dd {
	font-size: 13px;
}
@media screen and (min-width: 769px) {
	#top_banner {
		max-width: 1150px;
		margin: 0 auto 75px;
	}
	#top_banner .banners {
		display: flex;
		flex-wrap: wrap;
		margin-top: 50px;
	}
	#top_banner .banners li {
		margin-right: 21px;
		margin-bottom: 25px;
		width: calc((100% - 42px) / 3);
	}
	#top_banner .banners li:nth-child(3n) {
		margin-right: 0;
	}
	#top_banner .banners li dt {
		margin-top: 18px;
	}
	#top_banner .banners li dd {
		font-size: 13px;
		margin-top: 5px;
	}
}
@media screen and (max-width: 768px) {
	#top_banner .banners {
		width: 85%;
		margin: 40px auto 55px;
	}
	#top_banner .banners li + li {
		margin-top: 18px;
	}
	#top_banner .banners li dt {
		margin-top: 15px;
	}
	#top_banner .banners li dd {
		margin-top: 5px;
	}
}