/* CSS Document */
@charset "UTF-8";

.sp_only{display: none;}
.c_cover img{width:100%;height:100%;object-fit:cover;}
.c_contain img{width:100%;height:100%;object-fit:contain;}


.Serif{font-family: "Noto Serif JP", serif;}
.Cormorant{font-family:  'Cormorant';}

a[href^="tel:"]{pointer-events:none;}
html{font-size:calc(1000vw / 1400);}/*10px;*/
/*

@media(min-width:900px){
	a[href^="tel:"]{pointer-events:none;}
	.sp_only{display: none!important;}
}@media(max-width:899px){
	.pc_only{display: none!important;}

}
*/

/*以降に記載ください*/

/*  index.php  */


/* 共通パーツ (c_***)
=========================== */
.c_global-style {
	background: #f2f0ec;
	scroll-behavior: smooth;
}

.c_inner {
	width: 1400px;
	max-width: 100%;
	margin: 0 auto;
}

.c_text01 {
	font-size: 15px;
	line-height: 32px;
	letter-spacing: .06em;
}

.c_title-trans {
	color: #a78f45;
	font-size: 13px;
	line-height: 32px;
	letter-spacing: .2em;
	font-weight: 500;
}

.c_instaArea {
	display: flex;
	align-items: center;
	justify-content: start;
}

.c_insta {
	width: 20px;
	height: 20px;
	transition: color 0.2s ease-in-out;
}

.c_line {
	width: 20px;
	height: 20px;
	transition: color 0.2s ease-in-out;
}

.c_instaLink {
	margin-left: 15px;
	height: auto;
	cursor: pointer;
}

.c_instaLink-name {
	font-size: 14px;
	line-height: 14px;
	letter-spacing: .07em;
	padding: 5px 18px;
	border: 1px solid #dad5c7 ;
	border-radius: 26px;
	transition: color 0.2s ease-in-out;
}

.c_insta-text {
	margin-top: 3px;
	font-size: 15px;
	line-height: 35px;
	letter-spacing: .05em;
}

.c_googleMap {
	color: #a78f45;
	font-size: 15px;
	line-height: 32px;
	letter-spacing: .05em;
	position: relative;
	transition: color 0.2s ease-in-out;
}

.c_googleMap::after {
	content: "";
	width: 15px;
	height: 20px;
	background-image: url(../img/common/map-pin.png);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	top: 50%;
	right: -27%;
	transform: translateY(-50%);
}

.c_instaLink-name:hover {
	color: #007bff;
	border: 1px solid  #007bff ;
}

.c_googleMap:hover {
	color: #007bff;
}

.c_insta:hover,.c_line:hover {
	opacity: .7;
}

/* ヘッダーエリア
=========================== */
.header {
	padding: 20px 20px 0;
	display: flex;
	align-items: start;
	justify-content: space-between;
}

.header_logo {
	width: 45px;
	height: auto;
}

.header_humburger {
	display: flex;
  flex-direction: column;
	justify-content: space-between;
	width: 24px;
	height: 10px;
}

.header_menuLine {
	width: 24px;
	height: 1px;
	background: #241d14;
}

/* メインエリア_ファーストビュー
=========================== */
.fv {
	margin: 0 auto;
	padding: 0 150px;
	display: flex;
	align-items: start;
	flex-wrap: wrap;
}

.fv_left {
	width: 42.3%;
}

.fv_title {
	margin-top: 311px;
	font-size: 19px;
	line-height: 32px;
	letter-spacing: .1em;
}

.fv_text {
	margin-top: 15px;
	width: 275px;
}

.fv_right {
	width: calc(100% - 42.3%);
	margin-top: -20px;
	margin-left: -4px;
}

.fv_img {
	width: 638px;
	height: auto;
}

/* コンセプト
=========================== */
.concept {
	margin: 55px auto 0;
	padding: 0 150px;
	display: flex;
	align-items: start;
}

.concept_left {
	width: 50%;
}

.concept_img {
	width: 350px;
	height: auto;
}

.concept_right {
	width: 50%;
}

.concept_contentsArea {
	margin-top: 183px;
}

.concept_title {
	width: 180px;
	height: auto;
}

.concept_transArea {
	margin-top: 19px;
}

.concept_subTitle {
	margin-top: 54px;
	font-size: 19px;
	line-height: 32px;
	letter-spacing: .1em;
}

.concept_text {
	margin-top: 16px;
	width: 370px;
}

/* メニュー
=========================== */
.menu {
	margin-top: 137px;
	padding: 0 150px;
	display: flex;
	align-items: start;
}

.menu_left {
	width: 58.6%;
	padding-left: 272px;
}

.menu_contentsArea {
	margin-top: 34px;
}

.menu_title {
	width: 166px;
	height: auto;
}

.menu_transArea {
	margin-top: 20px;
	margin-left: 3px;
}

.menu_list {
	margin-top: 52px;
	margin-left: 6px;
}

.menu_sns {
	margin-top: 26px;
	margin-left: 3px;
}

.menu_right {
	width: calc(100% - 58.6%) ;
}

.menu_img {
	width: 425px;
	height: auto;
}

/* ニュース
=========================== */
.news {
	margin-top: 117px;
	padding: 0 150px 0 0;
	display: flex;
	align-items: start;
}

.news_left {
	width: 45%;
}

.news_img {
	width: 267px;
	height: auto;
}

.news_right {
	width: 55%;
}

.news_contentsArea {
	margin-top: 48px;
}

.news_title {
	width: 135px;
	height: auto;
}

.news_transArea {
	margin-top: 21px;
}

.news_items {
	margin-top: 60px;
	padding-left: 50px;
	width: 610px;
	position: relative;
}

.news_items::before {
	background: #dad5c7;
	content: "";
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
}

.news_item {
	padding-top: 18px;
	letter-spacing: .02em;
	position: relative;
	transition: color 0.2s ease-in-out;
}

.news_item:nth-child(n+2) {
	margin-top: 14px;
}

.news_item::after {
	content: "";
	display: inline-block;
	width: 8px;
	height: 16px;
	background-image: url(../img/common/quote.png);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	top: 62%;
	right: 8%;
	transform: translateY(-50%);
}

.news_item:hover,.news_index:hover {
	color: #007bff;
}

.news_itemTitle {
	padding-left: 27px;
	letter-spacing: .06em;
}

.news_index {
	margin-top: 50px;
	font-size: 15px;
	line-height: 32px;
	letter-spacing: .1em;
	color: #a78f45;
	position: relative;
	transition: color 0.2s ease-in-out;
}

.news_index::after {
	content: "";
	display: inline-block;
	width: 17px;
	height: 5px;
	background-image: url(../img/common/arrow.png);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	top: 38%;
	left: 19%;
	transform: translateY(-50%);
}

/* アクセス
=========================== */
.access {
	margin-top: 172px;
	padding: 0 150px;
	display: flex;
	align-items: start;
}

.access_left {
	width: 46.4%;
}

.access_contentsArea{
padding-left: 145px;
}

.access_titleArea {
  padding-left: 5px;
}

.access_title {
	width: 138px;
	height: auto;
}

.access_transArea {
	margin-top: 33px;
}

.access_name {
  margin-top: 53px;
}

.access_dl {
	display: flex;
	align-items: start;
	justify-content: start;
}

.access_dd {
	margin-left: 5px;
	letter-spacing: .02em;
}

.access_sns {
	margin-top: 46px;
	margin-left: -6px;
}

.access_right {
	width: calc(100% - 46.4%);
	padding-top: 120px;
	margin-left: -7px;
}

.access_img {
	width: 550px;
	height: auto;
}

/* イメージ画像
=========================== */
.imgArea {
	margin: -12px auto 0;
	display: flex;
	justify-content: space-between;
}

.img_area1 {
	padding-left: 200px;
	width: auto;
	height: 400px;
}

.img_area2 {
	margin-top: 214px;
	width: 585px;
	height: auto;
}

/* 予約
=========================== */
.reservation {
	margin: 180px auto 0;
	padding: 0 150px;
}

.reservation_wrap {
	padding: 90px 100px;
	border: 1px solid #eedc86;
	display: flex;
}

.reservation_left {
	width: 43.5%;
}

.reservation_title {
	width: 263px;
	height: auto;
}

.reservation_trans {
	margin-top: 18px;
}

.reservation_text {
	margin-top: 52px;
	width: 270px;
	font-size: 15px;
	line-height: 32px;
	letter-spacing: .05em;
}

.reservation_right {
	width: calc(100% - 43.5%);
}

.reservation_bannerArea {
	margin-top: 12px;
}

.reservation_banner {
	width: 510px;
	box-sizing: border-box;
	background: #fff;
	padding: 6px 10px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.reservation_logo {
	width: 70px;
	height: auto;
	padding-left: 37px;
}

.reservation_line {
	width: 196px;
	height: auto;
	padding-left: 25px;
}

.reservation_qr {
	width: 110px;
	height: auto;
}

.reservation_banner2 {
	margin-top: 18px;
	align-items: center;
	background: #fff;
	padding: 16px 10px 30px;
	text-align: center;
}

.reservation_number {
	font-size: 42px;
	line-height: 74px;
	letter-spacing: .08em;
	font-weight: 700;
}

.reservation_time {
	line-height: 0px;
	letter-spacing: .03em;
}

/* フッターエリア
=========================== */
.footer {
	margin-top: 100px;
	padding: 0 150px;
}

.footer_contents {
	padding-top: 50px;
	width: 1100px;
	border-top: 1px solid #eedc86;
	display: flex;
	justify-content: space-between;
}

.footer_left{
	width: 50%;
}

.footer_menuList {
	display: flex;
	flex-direction: column;
	gap: 1px;
}

.footer_menu {
	font-size: 24px;
	line-height: 42px;
	letter-spacing: .02em;
	transition: color 0.2s ease-in-out;
}

.footer_snsArea {
  margin-top: 42px;
}

.footer_sns {
  padding-right: 25px;
}

.footer_right {
	margin-top: 86px;
	text-align: right;
}


.footer_logo {
	width: 60px;
	height: auto;
}

.footer_textArea {
	padding-top: 35px;
}

.footer_text {
	font-size: 13px;
	line-height: 23px;
	letter-spacing: .05em;
}

.footer_lower {
  margin: 55px auto 50px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 10px;
	line-height: 17.5px;
	letter-spacing: .1em;
}

.to-top {
	position: relative;
	padding-right: 20px;
	transition: color 0.2s ease-in-out;
}

.to-top::after {
	position: absolute;
	content: "";
	background: url(../img/common/arrow-up.png)no-repeat center center /contain;
	width: 8px;
	height: 8px;
	top: 25%;
	right: -0px;
}

.footer_menu:hover,.to-top:hover {
	color: #007bff;
}

/* レスポンシブ対応
=========================== */

@media screen and (max-width: 768px) {
	.c_instaArea  {
		justify-content: center;
	}

	.header_humburger {
			width: 28px;
			height: 16px;
	}

	.header_menuLine {
			width: 28px;
			height: 2px;
	}

	/* メインエリア_ファーストビュー
	=========================== */
	.fv {
			flex-direction: column;
			/* flex-direction: column-reverse; */
			align-items: center;
			padding: 0 20px;
			text-align: center;
	}

	.fv_left, .fv_right {
			width: 100%;
	}

	.fv_title {
			margin-top: 50px;
			font-size: 18px;
	}

	.fv_text {
			width: auto;
			max-width: 100%;
			margin: 15px auto 0;
			text-align: left;
	}

	.fv_right {
			margin-top: 30px;
			margin-left: 0;
	}

	.fv_img {
			max-width: 100%;
	}

	/* コンセプト
	=========================== */
	.concept {
		flex-direction: column-reverse;
		align-items: center;
		padding: 0 20px;
		text-align: center;
	}

	.concept_left, .concept_right {
			width: 100%;
	}

	.concept_contentsArea {
			margin-top: 40px;
	}

	.concept_text {
			max-width: 100%;
			margin: 16px auto 0;
	}

	.concept_left {
		margin-top: 30px;
	}

	.concept_img {
		max-width: 100%;
	}

	/* メニュー
	=========================== */
	.menu {
		margin-top: 60px;
		flex-direction: column;
		align-items: center;
		padding: 0 20px;
		text-align: center;
	}

	.menu_left, .menu_right {
		width: 100%;
		padding: 0;
	}

	.menu_contentsArea {
		margin-top: 0px;
	}

	.menu_list {
		margin-top: 30px;
		margin-left: 0;
		text-align: left;
		display: inline-block;
	}

	.menu_sns {
		margin: 30px auto 0;
	}

	.menu_right {
		margin-top: 30px;
	}

	.menu_img {
		max-width: 100%;
	}

	/* ニュース
	=========================== */
	.news {
		margin-top: 60px;
		padding: 0 20px;
		flex-direction: column-reverse;
		align-items: center;
		text-align: center;
	}

	.news_left, .news_right {
		width: 94%;
	}

	.news_left {
		margin-top: 30px;
	}

	.news_img {
		width: 90%;
		display: block;
		margin: 0 auto;
	}

	.news_titleArea {
		text-align: center;
	}

	.news_items::before {
		display: none;
	}

	.news_items {
		margin-top: 30px;
		padding-left: 0;
		text-align: left;
		width: 100%;
	}

	.news_item {
		width: 100%;
		word-wrap: break-word;
		margin-left: auto;
		margin-right: auto;
	}

	.news_item::after {
		right: 0;
	}

	.news_itemTitle {
		display: block;
		padding-left: 0;
	}

	.news_item:nth-child(n+2) {
		margin-top: 0px;
	}

  .news_index {
		margin-top: 20px;
	}

	.news_index::after {
		left: 34%;
	}

	/* アクセス
=========================== */
  .access {
		margin-top: 60px;
		padding: 0 10px;
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.access_left, .access_right {
			width: 100%;
	}

	.access_right {
		padding-top: 30px;
	}


	.access_transArea {
		margin-top: 20px;
	}

	.access_name {
		margin-top: 30px;
	}

	.access_img {
			width: 94%;
			display: block;
			margin: 0 auto ;
	}

	.access_contentsArea {
		padding-left: 0px;
		text-align: center;
	}

	.access_titleArea {
			text-align: center;
	}

	.access_detail {
		margin-top: 20px;
	}

	.access_dl {
			align-items: center;
			padding: 0 40px;
	}

	.access_dd {
			margin-left: 0;
	}

	.access_sns {
		margin-top: 30px;
			margin-left: 0;
	}

	/* イメージ画像
	=========================== */
	.imgArea {
		display: none;
	}

	/* 予約
	=========================== */
	.reservation {
		padding: 0 20px;
		margin-top: 60px;
	}

	.reservation_wrap {
		flex-direction: column;
		padding: 40px 20px;
		border: 1px solid #eedc86;
	}

	.reservation_left,
	.reservation_right {
		width: 100%;
		text-align: center;
	}

	.reservation_text {
		width: 100%;
		margin-top: 30px;
		font-size: 14px;
		text-align: left;
	}

	/* LINEとロゴは横並び */
	.reservation_banner {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		padding: 15px;
		gap: 10px;
	}

	.reservation_logo {
		padding-left: 0;
		width: 70px;
	}

	.reservation_line {
		width: 170px;
		padding-left: 0;
	}

	.reservation_banner2 {
		padding: 10px 10px 24px;
	}

	.reservation_number {
		text-align: center;
		font-size: 24px;
		line-height: 48px;
		white-space: nowrap; /* 折り返しを防ぐ */
	}

	.reservation_time {
		font-size: 13px;
	}

	/* フッターエリア
	=========================== */
	.footer {
		margin-top: 40px;
		padding: 0 20px;
	}

	.footer_contents {
		width: 100%;
		padding-top: 0;
		border-top: none;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		text-align: center;
		gap: 30px;
	}

	.footer_left,
	.footer_right {
		width: 100%;
	}

	.footer_menu {
		font-size: 18px;
		line-height: 30px;
	}

	.footer_snsArea {
		margin-top: 20px;
	}

	.footer_right {
		margin-top: 30px;
	}

	.footer_logo {
		width: 50px;
	}

	.footer_textArea {
		padding-top: 20px;
	}

	.footer_text {
		font-size: 12px;
		line-height: 20px;
	}

	.footer_lower {
		margin: 30px auto;
	}

}
