/* 各店ページ共通のCSS */
@charset "utf-8";
/******** mainImg ********/
.container-mainImg{
	border-bottom: none;
	height: 250px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	color: #fff;
	/*background-image: url(images/main_img.jpg);*/
	background-position: center center;
	background-repeat: no-repeat; 
	background-blend-mode: multiply;
	background-size: cover;
	line-height: 0;  /* 0にして余計なスペースをリセット */
}
@media screen and (min-width:768px){
	.container-mainImg{
		height: 400px;
		background-attachment: fixed;
	}
}

/******** mainImg ********/
.container-mainImg{
	border-bottom: none;
	height: 250px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	color: #fff;
	background-image: url(2ndanniv/images/ogp.jpg);
	background-position: center center;
	background-repeat: no-repeat; 
	background-blend-mode: multiply;
	background-size: cover;
	line-height: 0;  /* 0にして余計なスペースをリセット */
}
@media screen and (min-width:768px){
	.container-mainImg{
		height: 400px;
		background-attachment: fixed;
	}
}


/******** subnav ********/
.container-subnav{
	width: 100%;
	display: flex;
	flex-direction: center;
	margin: 0;
	padding: 16px 5px 0 5px;
	transition: all ease-out 0.4s;
}
.shop-title h1{
	font-family: 'Noto Serif JP', serif;
	text-align: center;
	font-size: 38px;
	font-weight: 400;
}
.shop-title h1 a{
	color: #444;
}
.shop-title p{
	font-size: 18px;
	text-align: center;
	letter-spacing: 0.18rem;
	font-family: 'Playfair Display SC', serif;/*font上書き*/
	color: #444;
	margin-bottom: 20px;
}
.fixed{
  	background: rgba(0,0,0,0.8);
  	position: fixed;
  	bottom: 0;
  	left: 0;
  	z-index: 999;
  	box-sizing: border-box;
}
.section-subnav{
	margin: 0 auto;
	padding: 0;
}

/******** bnr ********/
.container-bnr{
	width: 100%;
	padding: 0;
	text-align: center;
	line-height: 0;
}
.container-bnr img{
	padding: 0;
	margin: 0;
}

/****店舗ロゴ呼び出しはshop.cssで*/
ul.subnav-list{
	display: flex;
	justify-content: space-around;
	padding-bottom: 0.8rem;
}
.fixed ul.subnav-list{
	border-bottom: none;
}
.subnav-list li{
	text-align: center;
	width: 25%;
}
.subnav-list li a{
	color: #333;
	display: inline-block;
	font-size: 10px;
	transition: all ease-out 0.4s;
}
.subnav-list li a::before{
	content: url(../images/list_arrow.png);
	margin-right: 0.55rem;
}
.subnav-list li a:hover{
	opacity: 0.7;
}
.fixed .subnav-list li a{
	color: #fff;
}
@media screen and (min-width:768px){
	.fixed{
	  	top: 0;
	  	bottom: auto;
	}
	.section-subnav{
		width: 40%;
		margin: auto;
		padding: 16px 20px 0 20px;
	}
	.subnav-list li a{
		font-size: 12px;	
		letter-spacing: 0.1rem;
	}
	.container-bnr img{
		max-width: 728px;
		margin-bottom: 15px;
	}
}

/******** section,asideひとまとめ ********/
.container-news{
	border-bottom: solid 1px #efefef;
}
/******** news(イベント部分とも共通) ********/
.section-news, .section-info{
	margin-bottom: 72px;
}
.section-news-list li{
	display: flex;
	justify-content: space-between;
	box-sizing: border-box;
	padding: 14px 0;
	border-bottom: solid 1px #efefef;
	position: relative;
	transition: all 0.3s ease-out;
}
.section-news ul li:last-child{
	border-bottom: none;
}
.section-news ul li:hover{
	opacity: 0.6;
}
.section-news-list-thumb{
	width: 50%;
}
/*.section-news-list-thumb img{
	width: 230px;
	height: 230px;
	object-fit: cover
}*/
.section-news-summary{
	width: 45%;
}
.news-cat{
	display: inline-block;
	font-size: 12px;
	background: #cdb455;
	color: #fff;
	padding: 0.2rem 0.6rem;
	margin-bottom: 0.5rem;
}
.section-news ul li .news-date{
	color: #aaa;
	font-size: 0.85rem;
}
.section-news ul li .news-head{
	color: #000;
	font-weight: bold;
}
.section-news ul li .description{
	color: #666;
	font-size: 13px;
}
.section-news ul li a{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: all 0.5s ease-out;
}
/*information*/
.section-info{
	padding: 32px 0;
	border-top: solid 1px #efefef;
	border-bottom: solid 1px #efefef;
}
.section-info ul{
	overflow-y: scroll;
	height: 6rem;
}
.section-info ul li{
	border-bottom: dotted 1px #aaa;
	margin-bottom: 1rem;
	display: flex;
}
.section-info ul li .info-date{
	color: #aaa;
	font-size: 0.85rem;
	margin-right: 1.5rem;
}
.section-info ul li .info-head a{
	color: #000;
	font-size: 14px;
}
/******** new-product(aside) ********/
.new-product{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.new-product a{
	display: block;
	width: 48.75%;
}
.new-product a img{
	box-sizing: border-box;
	border: solid 1px #dedede;
}

.line_bnr {
	display: flex;
	max-width: 50%;
}
@media screen and (min-width: 768px){
	.box-news-info{
		width: 65.75%;
	}
	.section-news-header, .section-info-header{
		text-align: left;
		display: flex;
		align-items: baseline;
		margin-bottom: 20px;
	}
	.section-news-header p, .section-info-header p{
		margin-left: 1rem;
	}
	.section-2col{
		display: flex;
		justify-content: space-between;
	}
	/*.section-news-list-thumb{
		width: 30%;
	}
	.section-news-summary{
		width: 45%;
	}*/
	.aside{
		width: 30%;
		margin-top: 48px;
	}
	.new-product{
		position: sticky;
		top: 24px;
		flex-direction: column;
	}
	.new-product a{
		width: 100%;
		transition: all 0.5s ease-out;
	}
	.new-product a:hover{
		opacity: 0.6;
	}

	.line_bnr {
		max-width: 100%;
	}
}

/******** article-about ********/
.about-detail, .about-access{
	margin-bottom: 56px; 
}
.shop-access h3{
	font-size: 38px;
	font-family: 'Jost', sans-serif;
	font-weight: 400;
	letter-spacing: 0.05rem;
	line-height: 1.4;
}
.shop-detailImg, .shop-comment{
	margin-bottom: 32px;
}
.shop-comment{
	box-sizing: border-box;
	background: #fff;
	z-index: 5;
}
.shop-comment h3{
	font-family: 'Noto Serif JP', serif;
	font-size: 1.625rem;
	padding-bottom: 1rem;
	border-bottom: solid 3px #cdb455;
	margin-bottom: 1rem;
}
.shop-comment p{
	line-height: 1.75;
}
/*写真ライブラリ*/
.shop-detailImg-lightbox{
	display: flex;
	flex-wrap: wrap;
	margin-top: 24px;
}
.shop-detailImg-lightbox a{
	display: block;
	width: 32.5%;
	margin-right: 0.5%;
	transition: all ease-out 0.5s;
}
.shop-detailImg-lightbox a:hover{
	opacity: 0.75;
}
.shop-detailImg-lightbox a:nth-child(3n){
	margin-right: 0;
}
.map-img{
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: 0 auto;
}
.map-img iframe{
  width: 100%;
  height: 100%;
}
table.table-access{
	text-align: left;
	font-size: 14px;
	font-weight: normal;
}
table.table-access a{
	color: #000;
}
table.table-access th{
	background: #bea03c;
	color: #fff;
	font-weight: normal;
	width: 6rem;
}
table.table-access th,table.table-access td{
	padding: 0.3rem 0.5rem;
}
/*shop-sns-list*/
ul.shop-sns-list{
	display: flex;
	justify-content: flex-start;
	margin: 24px 0;
}
ul.shop-sns-list li img{
	width: 35px;
	height: 35px;
	margin-right: 8px; 
}
/*stock-list*/
ul.stock-list{
	display: flex;
	flex-wrap: wrap;
}
ul.stock-list li{
	width: 70px;
	margin-right: 5px;
	margin-bottom: 10px;
}
ul.stock-list li img{
	border: solid 1px #333;
	border-radius: 3px;
}
ul.stock-list li p{
	font-size: 10px;
	line-height: 1.3;
}
@media screen and (min-width:768px){
	.about-detail, .about-access{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		align-items: flex-start;
	}
	.shop-detailImg, .shop-comment{
		width: 48.75%;
		margin-bottom: 48px;
	}
	/*写真ライブラリ*/
	.shop-detailImg-lightbox{
		margin-bottom: 64px;
	}
	.shop-detailImg-lightbox a{
		width: 24.5%;
		margin-right: 0.5%;
	}
	.shop-detailImg-lightbox a:nth-child(3n){
		margin-right: 0.5%;
	}
	.shop-detailImg-lightbox a:nth-child(4n){
		margin-right: 0;
	}
	.map-img, .shop-access{
		width: 48.75%;
	}
	.shop-comment h3{
		font-family: 'Noto Serif JP', serif;
		display: inline-block;
		line-height: 1.6;
		margin-bottom: 1rem;
	}
	.shop-comment p{
		font-size: 14px;
	}
	/*.shop-detailImg-order2{
		order: 2;
	}
	.shop-comment-order1{
		order: 1;
	}*/
}
@media screen and (min-width:960px){
	.about-detail, .about-access{
		position: relative; /* z-index用。プロパティ何でも良い */
		margin-bottom: 68px;
	}
	.shop-detailImg{
		width: 65%;
	}
	.shop-comment{
		width: 45%;
		padding: 0.85rem 1.5rem;
		font-size: 14px;
		position: absolute;
		top: 6rem;
		left: 55%;
	}
	/* order入れ替わりのブロック 上と数値逆になる
	.shop-comment-order1{
		left: 5%;
	}
	.shop-detailImg-order2{
		position: absolute;
		left: 35%;
	} */
}
@media screen and (min-width:1240px){
	.shop-comment p{
		font-size: 16px;
	}
}

/****** content-inquiry ******/
.content-inquiry{
	text-align: center;
}
/*.content-inquiry p{
	margin-bottom: 10px;
}*/
.content-inquiry a.btn-03{
	width: 80%;
	margin: 24px auto;
	padding: 0.75rem 0;
}
a.btn-03 .fa-envelope{
	margin-right: 0.5rem;
}
@media screen and (min-width:768px){
	.content-inquiry{
		width: 768px;
		margin: auto;
		text-align: left;
		display: flex;
		justify-content: center;
		vertical-align: middle;
	}
	/*.content-inquiry p{
		margin-bottom: 0;
		margin-top: 0.85rem;
	}*/
	.content-inquiry a.btn-03{
		width: 40%;
		margin: auto;
		padding: 0.75rem 0;
	}
}