@charset "utf-8";
/*========================================
フリーページ 店舗一覧 微調整　共通
=========================================*/
/*コンテンツブロック*/
#contents {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
}
#contents > article {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}

#bread-crumb {
    display: none;
}
#Journal .journal-cont ul,
#Journal .journal-cont ol{
	margin-left:0;
	margin-right:0;
}
#Journal .journal-cont ul li,
#Journal .journal-cont ol li{
	list-style:none;
	font-size: 14px;
}

article #main-column #Journal h1{
	background: none;
	display: block;
	margin: 50px 0;
}
article #main-column #Journal .contents_page h1 {
	background: none;
	display: block;
	border:none;
}

.state_r {
    max-width:1200px;
    margin:0 auto;
    width: 100%;
    border-top: 1px solid #f4f2ec;
    display: none;
}
#Journal a:hover{
	color: inherit;
	-webkit-transition: .2s ease;
	transition: .2s ease;
	opacity: 0.7;
}
#Journal a:hover p{
    color:#3f2416;
    background: inherit;
}

/*フリー　見出し*/
#Journal h2{
    border-top: none;
    border-bottom: none;
    font-weight: 500;
    padding: 20px 0;
    font-size: 18px;
    margin: 0 0 30px;
    text-align: left;
    border-bottom: 3px solid #f0ebe1;
    box-sizing: border-box;
    letter-spacing: 2px;
}
#Journal h2 a{
    color: #000;
}

/*テキスト*/
#Journal #free-cont-area{
	font-size:14px;
	line-height: 24px;
	letter-spacing:1px;
}
@media screen and (max-width:768px){
	/*コンテンツブロック*/
	article #main-column #Journal h1{
		background: none;
		display: block;
		margin: 5% 0;
	}
}

@media screen and (max-width:580px){
	/*フリー　見出し*/
	#Journal h2{
		text-align: left;
		letter-spacing: 3px;
		border-bottom: none;
		display: block;
		position: relative;
		font-size: 5vw;
		padding: 3% 0;
		color: #000;
		line-height: 45px;
		vertical-align: middle;
		line-height: 1;
		margin: 0 auto 5%;
		min-height: inherit;
		border-top: none;
		font-weight: 500;
		text-align: left;
		box-sizing: border-box;
		border-bottom: 3px solid #f0ebe1;
	}
	#Journal h2 a{
		color: #000;
	}
	
	/*テキスト*/
	#Journal #free-cont-area{
		font-size: 3.5vw;
		line-height: 1.6;
		letter-spacing: 1px;
	}
}
/*========================================
共通　大枠
=========================================*/
.free-sec-cont{
	margin: 30px 0;
	overflow: hidden;
}
@media screen and (max-width:768px){
	.free-sec-cont{
		margin: 30px 0;
	}
}
@media screen and (max-width:580px){
	.free-sec-cont{
		margin: 7% 0;
	}
}


/*=============================
個別設定 本店ブロック
================================*/
#box-honten{
	background: #dcdcdc;
	line-height: 1.8;
	font-feature-settings: "palt";
	letter-spacing:1px;
	margin: 100px 0;
}
#box-honten .acco-box {
	position: relative;
	padding: 20px 0;
	max-width: 1200px;
	margin: 0 auto;
	width: 90%;
	background: #dcdcdc;
	box-sizing:border-box;
	cursor: pointer;
}
#box-honten .acco-box:after{
	content:"";
	display:block;
	width:13px;
	height:13px;
	background-size:contain;
	position:absolute;
	top:50%;
	right:5%;
	transform:translateY(-50%);
	background-image: url('../img/icon-plus.svg');
}
#box-honten .acco-box.area-open:after{
	background-image: url('../img/icon-minus.svg');
}
#box-honten .acco-box h3{
	margin:0;
}
#box-honten .acco-box:after {
        content: "";
        display: block;
        width: 13px;
        height: 13px;
        background-size: contain;
        position: absolute;
        top: 50%;
        right: 30px;
        transform: translateY(-50%);
        background-image: url(../img/icon-plus.svg);
    }
#box-honten.lower .honten-inner{
	/* display:none; */
}
.honten-inner .inner-flex{
	max-width: 1200px;
	margin:0 auto;
	padding: 50px 0;
	display: flex;
	justify-content: space-between;
	flex-wrap:wrap;
	width: 90%;
}
/*左側*/
.txt-honten{
	width: 50%;
}
h3.honten-name{
	font-size:20px;
	background: #000;
	color:#fff;
	width: 120px;
	padding:5px 15px;
	margin: 0 0 10px;
	font-weight: normal;
	text-align: center;
}
.txt-honten p{
	font-size:14px;
}
.txt-honten small{
	display:block;
}
.honten-map{
	margin: 20px 0;
}
.honten-map a{
	width:150px;
	display:block;
	background:#fff;
	padding:5px 15px;
	text-align:center;
	
}
.honten-data{
	margin: 20px 0;
	font-size:14px;
}
.honten-data dl{
	display:flex;
	flex-wrap:wrap;
	align-items: flex-start;
}
.honten-data dl dt{
	width: 80px;
}
.honten-data dl dd a{
	color:#E31C24;
}

.honten-overview p a{
	color:#E31C24;
}
/*右側*/
.img-honten{
	width: 48%;
}
/*百福庵・活創庵*/
.link-restaurant{
	max-width:1000px;
	margin: 50px auto 0;
	width:100%;
	background: #604b3b;
}
#Journal .link-restaurant a:hover,
#Journal .link-restaurant a:hover img,
#Journal .link-restaurant a:hover p{
	opacity:0.8;
	color:#fff;
}
.link-restaurant figure{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
}
.link-restaurant figure figcaption{
	width:70%;
	padding: 0 1% 0 3%;
	box-sizing:border-box;
	display: flex;
	align-items: center;
	flex-wrap:wrap;
}
.link-restaurant figure figcaption img{
	width: 27%;
	padding: 2% 4%;
	box-sizing:border-box;
	border-right: 1px solid #fff;
	margin:0 5% 0 0;
}
.link-restaurant figure figcaption p{
	width: 65%;
	color:#fff;
	font-size: 13px;
	font-weight: normal;
	line-height: 1.4;
}
.link-restaurant figure > img{
	width:30%;
}
@media screen and (max-width:768px){
	/*左側*/
	.txt-honten{
		width: 100%;
	}
	h3.honten-name{
		font-size:20px;
		width: 120px;
		padding:5px 15px;
		margin: 0 0 10px;
	}
	.honten-data dl:first-child dt + dd a{
		color:#333;
	}	
	.honten-overview p a{
		color:#E31C24;
	}
	/*右側*/
	.img-honten{
		width: 100%;
	}
	/*百福庵・活創庵*/
	#Journal .link-restaurant a:hover,
	#Journal .link-restaurant a:hover img,
	#Journal .link-restaurant a:hover p{
		opacity:0.8;
		color:#fff;
	}
	.link-restaurant figure figcaption img{
		padding: 2% 4%;
	}
	.link-restaurant figure figcaption p{
		width: 65%;
		color:#fff;
		font-size: 13px;
		font-weight: normal;
		line-height: 1.4;
	}
}

@media screen and (max-width:580px){
	#box-honten{
		margin: 0;
	}
	.honten-inner{
	}
	.honten-inner .inner-flex{
			padding: 3% 0 10%;
		width: 90%;

}
	/*左側*/
	#box-honten .acco-box{
		position:relative;
		padding: 4% 5%;
		margin: 0 auto;
		width: 100%;
	}
	#box-honten .acco-box:after{
		content:"";
		display:block;
		width:13px;
		height:13px;
		background-size:contain;
		position:absolute;
		top:50%;
		right:5%;
		transform:translateY(-50%);
		background-image: url('../img/icon-plus.svg');
	}
	#box-honten .acco-box.area-open:after{
		background-image: url('../img/icon-minus.svg');
	}

	h3.honten-name{
		font-size: 4vw;
		width: 30%;
		padding: 1% 3%;
		margin: 0;
	}
	.txt-honten p{
		font-size: 3.3vw;
	}
	.honten-map a{
		width: 30%;
		padding: 1% 3%;
		font-size: 3.3vw;
	}
	.honten-data{
		margin: 5% 0;
		font-size: 3.3vw;
	}
	.honten-data dl dt{
		width: 25%;
	}
	.honten-data dl dd{
		width: 75%;
		color: #333;
	}
	
	.honten-overview p a{
		color:#E31C24;
	}

	/*百福庵・活創庵*/
	.link-restaurant{
		margin: 5% auto 0;
	}
	#Journal .link-restaurant a:hover,
	#Journal .link-restaurant a:hover img,
	#Journal .link-restaurant a:hover p{
		opacity:0.8;
		color:#fff;
	}
	.link-restaurant figure figcaption{
		width: 45%;
		padding: 5%;
		display: block;
		text-align: center;
	}
	.link-restaurant figure figcaption img{
		width: 80%;
		padding: 0 0 8% 0;
		border-right: none;
		margin: 0;
		text-align: center;
	}
	.link-restaurant figure figcaption p{
		width: 100%;
		color:#fff;
		font-size: 3.5vw;
		font-weight: normal;
		line-height: 1.4;
	}
	.link-restaurant figure > img{
		width: 55%;
	}
}
/*========================================
個別設定 都道府県選択ブロック
=========================================*/
#box-area-select{
	max-width: 1200px;
	margin: 100px auto;
	width: 90%;
}
#box-area-select h3{
	font-size: 18px;
	padding: 0 0 10px 0;
	border-bottom: 2px solid #333;
}

/*タブ中身*/
.anc-area{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
.anc-area li{
	margin: 0 2%;
}
#Journal .anc-area li a{
	display:block;
	/* background:#fff; */
	padding: 5px 25px;
	font-size: 16px;
	border-bottom: 2px solid #f2f2f2;
}
#Journal .anc-area li a:hover{
	display:block;
	/*background:#7B6846;*/
	color:#7B6846;
	opacity:1;
	border-bottom:2px solid #7B6846;
}

@media screen and (max-width:768px){	
	/*タブ中身*/
	.anc-area{
		display:flex;
		justify-content:center;
		flex-wrap:wrap;
	}
	.anc-area li{
		margin: 0 2%;
	}
	#Journal .anc-area li a{
		display:block;
		padding: 5px 25px;
		font-size: 14px;
		border-bottom: 2px solid #f2f2f2;
	}
	#Journal .anc-area li a:hover{
		display:block;
		color:#7B6846;
		opacity:1;
		border-bottom:2px solid #7B6846;
	}
}

@media screen and (max-width:580px){
	#box-area-select{
		margin: 0 auto;
		width: 100%;
	}
	#box-area-select h3{
		font-size: 4vw;
		padding: 4% 5%;
	}
	
	/*タブ中身*/
	.anc-area{
		display:flex;
		justify-content:center;
		flex-wrap:wrap;
	}
	.anc-area li{
		margin: 0 2%;
	}
	#Journal .anc-area li a{
		display:block;
		padding: 2% 5%;
		font-size: 14px;
		border-bottom: none;
		position: relative;
	}
	#Journal .anc-area li a:hover{
		display:block;
		color: inherit;
		opacity:1;
		border-bottom: none;
	}

	/*SP時*/
	.tab-area > li .anc-area li a::after {
	    border-bottom: 1px solid #000;
	    border-right: 1px solid #000;
	    content: "";
	    display: block;
	    height: 8px;
	    position: absolute;
	    right: 5%;
	    top: calc(50% - 8px);
	    transform: rotate(45deg);
	    width: 8px;
	    background: none;
	}
}
/*========================================
個別設定 タブメニュー共通部分
=========================================*/
#Journal .journal-cont ul.tab-area {
	padding: 0px;
	margin: 20px 0 0;
	text-align:center;
	display: flex;
	justify-content: space-between;
	/* flex-wrap: wrap; */
	width: 100%;
}
.tab-area li {
	padding: 0px;
	margin: 0px;
	list-style: none;
	width: 16%;
	border-bottom: 2px solid #fff;
}

.tab-area li a {
	display:block;
	padding: 20px 0px;
	color:#000;
	text-decoration: none;
	font-size: 16px;
	cursor: pointer;
}
.tab-area li.tab-select{
	border-bottom: 2px solid #7B6846;
}
.tab-area li.tab-select a{
	font-weight:bold;
}
.tab-cont {
	padding: 30px 0;
	background: #f2f2f2;
}
.tab-cont.tabnone {
	display: none;
}
.tab-cont.tab-select {
	display: block;
}

.tab-cont h3{
	font-weight:500;
	font-size:24px;
	color:#1B120F;
    font-family: 'Noto Serif JP', serif;
	letter-spacing:2px;
	margin:0 0 45px;
}
.tab-cont h4{
	font-weight:400;
	font-size: 20px;
	color:#1B120F;
	letter-spacing:1px;
	margin: 0 0 20px;
}
.tab-cont h5{
	font-weight:400;
	font-size: 18px;
	color:#1B120F;
	letter-spacing:1px;
	margin: 0 0 10px;
}
.txt-box{
	padding: 0 0 50px;
}
.txt-box p{
	line-height:1.8;
}

#Journal .journal-cont .tab-cont ul,
#Journal .journal-cont .tab-cont ol{
	font-size:16px;
	font-feature-settings: "palt";
	letter-spacing:1px;
	margin: 0;
}
/*テーブル*/
.tbl-guide{
	box-sizing:border-box;
	font-size:14px;
	margin: 30px 0 0;
}
.tbl-guide th,
.tbl-guide td{
	border:1px solid #BDA366;
	padding: 5px 15px;
}
.tbl-guide th{
	background:#FAF5EB;
}

@media screen and (max-width:768px){
	.tab-area li {
		padding: 0px;
		margin: 0px;
		list-style: none;
		width: 16.5%;
	}
	.tab-area li a {
		padding: 20px 0px;
		font-size: 14px;
	}
	.tab-cont.tab-select {
		display: block;
	}
	
	.tab-cont h3{
		font-weight:500;
		font-size:24px;
		color:#1B120F;
	    font-family: 'Noto Serif JP', serif;
		letter-spacing:2px;
		margin:0 0 45px;
	}
	.tab-cont h4{
		font-weight:400;
		font-size: 20px;
		color:#1B120F;
		letter-spacing:1px;
		margin: 0 0 20px;
	}
	.tab-cont h5{
		font-weight:400;
		font-size: 18px;
		color:#1B120F;
		letter-spacing:1px;
		margin: 0 0 10px;
	}
	.txt-box{
		padding: 0 0 50px;
	}
	.txt-box p{
		line-height:1.8;
	}
	
	#Journal .journal-cont .tab-cont ul,
	#Journal .journal-cont .tab-cont ol{
		font-size:16px;
		font-feature-settings: "palt";
		letter-spacing:1px;
		margin: 0;
	}
	/*テーブル*/
	.tbl-guide{
		box-sizing:border-box;
		font-size:14px;
		margin: 30px 0 0;
	}
	.tbl-guide th,
	.tbl-guide td{
		border:1px solid #BDA366;
		padding: 5px 15px;
	}
	.tbl-guide th{
		background:#FAF5EB;
	}
}

@media screen and (max-width:580px){
	#Journal .journal-cont ul.tab-area {
		margin: auto;
		text-align:center;
		display: block;
		width: 100%;
	}
	.tab-area li {
		padding: 0px;
		margin: 0px;
		list-style: none;
		width: 100%;
		text-align: left;
		border-bottom: 1px solid #ccc;
	}
	.tab-area > li {
		border-bottom:none;
	}
	.tab-area > li > a {
		display:block;
		padding: 4% 5%;
		border-bottom: 1px solid #333;
		position: relative;
	}
	.tab-area > li > a:after{
		content:"";
		display:block;
		width: 9px;
		height: 12px;
		background-size:contain;
		position:absolute;
		top:50%;
		right:5%;
		transform:translateY(-50%);
		background-image: url('../img/arrow-right-navy.svg');
		background-repeat: no-repeat;
	}
	.tab-area li a.area-open:after{
		background-image: url('../img/arrow-right-navy.svg');
	}

	#Journal .journal-cont .tab-area li.tab-select > a:after{
		content: none;
		display:block;
		width: 13px;
		height:13px;
		background-size:contain;
		position:absolute;
		top:50%;
		right:5%;
		transform:translateY(-50%);
		background-image: url('../img/icon-minus.svg');
		background-repeat: no-repeat;
	}
	
	#Journal .journal-cont .tab-area li.tab-select{
		border-bottom: none;
		width: 100%;
		text-align: left;
	}
	.tab-cont {
		padding: 0;
	}
	.tab-cont.tab-select {
		display: block;
	}
	
	.tab-cont h3{
		font-weight:500;
		font-size:24px;
		color:#1B120F;
	    font-family: 'Noto Serif JP', serif;
		letter-spacing:2px;
		margin:0 0 45px;
	}
	.tab-cont h4{
		font-weight:400;
		font-size: 20px;
		color:#1B120F;
		letter-spacing:1px;
		margin: 0 0 20px;
	}
	.tab-cont h5{
		font-weight:400;
		font-size: 18px;
		color:#1B120F;
		letter-spacing:1px;
		margin: 0 0 10px;
	}
	.txt-box{
		padding: 0 0 50px;
	}
	.txt-box p{
		line-height:1.8;
	}
	
	#Journal .journal-cont .tab-cont ul,
	#Journal .journal-cont .tab-cont ol{
		font-size:16px;
		font-feature-settings: "palt";
		letter-spacing:1px;
		margin: 0;
	}
	/*テーブル*/
	.tbl-guide{
		box-sizing:border-box;
		font-size:14px;
		margin: 30px 0 0;
	}
	.tbl-guide th,
	.tbl-guide td{
		border:1px solid #BDA366;
		padding: 5px 15px;
	}
	.tbl-guide th{
		background:#FAF5EB;
	}
	.tbl-guide td{
	}
}

/*========================================
個別設定 タブコンテンツ内
=========================================*/
#box-shop-address{
	max-width: 1200px;
	margin: 100px auto;
	width: 90%;
}
.area-box{
    display: block;
    margin: 0 0 5% 0;
}

h4.area-name {
    font-size: 18px;
    padding: 0 0 10px 0;
    border-bottom: 2px solid #333;
}

.area-box dl.shop-data{
    width: 100%;
    display: flex;
    overflow: hidden;
    padding: 12px 0;
    border-bottom: 1px dashed #d1d1d1;
    flex-wrap: wrap;
}

.area-box dl.shop-data dt{
    width: 23%;
    font-size: 14px;
}
.area-box dl.shop-data dd{
    font-size: 14px;
}
.area-box dl.shop-data dd:nth-of-type(1){
    width: 56%;
    margin: 0 1% 0 0;
}
.area-box dl.shop-data dd:nth-of-type(2){
    width: 20%;
}

.area-box dl.shop-data .map a{
	display:block;
	border:1px solid #ccc;
	text-align: center;
	padding: 3px 0;
	max-width: 150px;
	margin: 0 0 0 auto;
	box-sizing: border-box;
	line-height: 1.6;
}
.area-box dl.shop-data .map a:hover{
	border:1px solid #ccc;
	background: #ccc;
	opacity:1;
}

.area-box dl.shop-data dd.multi{
	width: 77%;
	margin: 0;
}

.area-box dl.shop-data dd.multi ul{
	margin:100px 0;
}
.area-box dl.shop-data dd.multi ul li{
	margin: 0 0 30px;
	display: flex;
	justify-content: space-between;
}
.area-box dl.shop-data dd.multi ul li .m-data{
	width: 74%;
	margin: 0 1% 0 0;
}
.area-box dl.shop-data dd.multi ul li .map{
	width: 27.5%;
}
@media screen and (max-width:768px){	
	.area-box dl.shop-data dt{
	    width: 22%;
	}
	.area-box dl.shop-data dd:nth-of-type(1){
	    width: 53%;
	    margin: 0 1%;
	}
	.area-box dl.shop-data dd:nth-of-type(2){
	    width: 23%;
	}
	
	.area-box dl.shop-data .map a:hover{
		border:1px solid #ccc;
		background: #ccc;
		opacity:1;
	}
	
	.area-box dl.shop-data dd.multi{
		width: 77%;
		margin: 0 0 0 1%;
	}
	
	.area-box dl.shop-data dd.multi ul{
		margin:100px 0;
	}
	.area-box dl.shop-data dd.multi ul li{
		margin: 0 0 30px;
		display: flex;
		justify-content: space-between;
	}
	.area-box dl.shop-data dd.multi ul li .m-data{
		width: 73%;
		margin: 0 1% 0 0;
	}
	.area-box dl.shop-data dd.multi ul li .map{
		width: 31.5%;
	}
}

@media screen and (max-width:580px){
	#box-shop-address{
		margin: 10% auto;
	}
	
	h4.area-name {
	    font-size: 4.5vw;
	    padding: 0 0 3% 0;
	}
	
	.area-box dl.shop-data{
	    display: block;
	    padding: 5% 0;
	}
	
	.area-box dl.shop-data dt{
	    width: 100%;
	    font-size: 3.5vw;
	    font-weight: bold;
	}
	.area-box dl.shop-data dd{
	    font-size: 3.3vw;
	}
	.area-box dl.shop-data dd:nth-of-type(1){
	    width: 100%;
	    margin: 0;
	}
	.area-box dl.shop-data dd:nth-of-type(2){
	    width: 100%;
	    margin: 3% 0 0;
	}
	.area-box dl.shop-data .map{
		margin: 0 auto;
		box-sizing: border-box;
	}
	.area-box dl.shop-data .map a{
		padding: 2% 0;
		max-width: 50%;
		margin: 0 auto;
	}
	.area-box dl.shop-data .map a:hover{
		border:1px solid #ccc;
		background: #ccc;
		opacity:1;
	}
	
	.area-box dl.shop-data dd.multi{
		width: 100%;
		margin: 0;
	}
	
	.area-box dl.shop-data dd.multi ul{
		margin:100px 0;
	}
	.area-box dl.shop-data dd.multi ul li{
		margin: 0 0 10%;
		display: block;
		justify-content: space-between;
	}
	.area-box dl.shop-data dd.multi ul li .m-data{
		width: 100%;
		margin: 0 1% 0 0;
		font-size: 3.3vw;
	}
	.area-box dl.shop-data dd.multi ul li .map{
		width: 100%;
		margin: 3% 0 0;
	}
}