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

html, body {
	width: 100%;
	height: 100%;
	background-color: #000000;
	-webkit-text-size-adjust: 100%;
	color: #fff;
	font-family: 'Times New Roman', Times, Georgia, serif;
	line-height: 1.6em;
}

body.open {
	overflow: hidden;
}

.allWrp {
	width: 100%;
	min-height: 100%;
	position: relative;
}

.fullScr {
	width: 100%;
	min-height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	background-size: contain;
	box-sizing: border-box;
}

.bg {
	width: 100%;
	min-height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	background-size: contain;
	box-sizing: border-box;
	background-repeat: no-repeat;
	background-position: center top;
}

.red {
	color: #D6171A !important;
}

#toppage .bg.current {
	background-image: url(../images/top/main_vis_pc.jpg);
}

#guidepage .bg.current {
	background-image: url(../images/slideshow/bgimg2.jpg);
}

#pricepage .bg.current {
	background-image: url(../images/slideshow/bgimg3.jpg);
}

#contactpage .bg.current {
	background-image: url(../images/top/main_vis_pc.jpg);
	opacity: 0.25;
}

#thankspage .bg.current {
	background-image: url(../images/slideshow/bgimg5.jpg);
}

@media screen and (max-width:999px) {
	.bg.current {
		background-size: cover;
	}

	#toppage .bg.current {
		background-image: url(../images/top/main_vis_sp.jpg);
	}

	#contactpage .bg.current {
		background-image: url(../images/top/main_vis_sp.jpg);
	}
}

/*画像フィット*/
.fullScr h1 img,
#gmLinks li a img,
#scrollBtn a img,
#btt a img,
#ftrLogo a img,
#conceptWrp figure img,
#buildingWrp figure img,
.galleries a > img {
	width: 100%;
	height: auto;
}
#gmLinks li#logo_menuBar img {
	width: auto;
	height: 80%;
}

@media screen and (max-width:999px) {
	#gmLinks li#logo_menuBar img {
		/* width: auto; */
		height: 100%;
		position: relative;
	}
}

.sp { display: none;}

/* ------------------------------------------------- */

.fullScr h1 {
	/* font-family: MavenReg, Arial, Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; */
	letter-spacing: 0.05em;
	font-size: 5.2rem;
	line-height: 1.2em;
	color: #fff;
	text-align: center;
	width: 80%;
	max-width: 800px;
	margin: 0px auto;
	position: relative;
}
.fullScr h1 img {
	display: block;
	width: 100%;
	max-width: 350px;
	margin: 0px auto;
}

.pageHdr {
	position: relative;
	width: 100%;
}

.grandMenu {
	width: 100%;
	z-index: 2;
	position: relative;
}

#gmLinks {
	text-align: right;
	padding-right: 20px;
}

#gmLinks li {
	display: inline-block;
}

#gmLinks li a {
	display: flex;
	height: 70px;
	padding: 0px 20px;
	/* font-family: MavenBld, Arial, Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; */
	font-size: 1.4rem;
	line-height: 60px;
	text-align: center;
	color: #fff;
	justify-content: center;
	align-items: center;
	text-decoration: none;
}

#gmLinks li.snsMenu a {
	width: 20px;
}

#gmLinks li a img {
	position: relative;
	top: -2px;
}

#scrollBtn {
	width: 100%;
	position: absolute;
	z-index: 1;
}

#scrollBtn a {
	display: block;
	width: 60px;
	margin: 0px auto;
}

#pageFtr {
	position: relative;
	z-index: 1;
	padding-top: 3vh;
	background-color: #000;
	border-block-start: 3px solid;
	border-image: linear-gradient(90deg, #453019 0%, #D1A85A 23%, #A37C3A 30%, #805C22 33%, #E0C274 61%, #F7EC95 66%, #9E7D2F 80%, #2D2213 100%);
	border-image-slice: 1;
}

#btt {
	width: 100%;
	margin-bottom: 60px;
}

#btt a {
	display: block;
	width: 72px;
	margin: 0px auto;
}

#ftrLogo {
	box-sizing: border-box;
	width: 100%;
	/* background: url(../images/base/bg_concrete.jpg) repeat center top; */
	/* height: 200px; */
	/* padding-top: 80px; */
	padding-block-end: 3vh;
	/* box-shadow: 0px 0px 20px rgba(0,0,0,0.20); */
}

#ftrLogo a {
	display: block;
	width: 45%;
	max-width: 150px;
	margin: 0px auto;
}

#copyright {
	background-color: #564e3e;
	background-image: linear-gradient(90deg, #453019 0%, #D1A85A 23%, #A37C3A 30%, #805C22 33%, #E0C274 61%, #F7EC95 66%, #9E7D2F 80%, #2D2213 100%);
	color: #000000;
	font-size: 1.1rem;
	text-align: center;
	line-height: 50px;
	height: 50px;
	/* font-family: MavenReg, Arial, Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; */
	letter-spacing: 0.1em;
}

#base_information {
	font-size: 1.2rem;
	text-align: center;
	padding: 0px 0px 3vh;
	color: #fff;
}

#base_information a {
	color: #fff;
}
#base_information a:visited {
	color: #fff;
}

/*コンテンツ*/

.anchor {
	position: relative;
	top: -120px;
}


#contWrp {
	position: relative;
}

.contBlk {
	background: url(../images/base/bg_mark_pattern.png) repeat center top #000000ee;
	background-size: 40% auto;
	backdrop-filter: blur(8px);
	width: 100%;
	margin: 0px auto 200px;
	box-sizing: border-box;
	padding: 100px 0px;
	z-index: 1;
	box-shadow: 0px 2px 20px rgba(0,0,0,0.20);
}

@media screen and (max-width:999px) {
	.contBlk {
		background-size: 80% auto;
		/* backdrop-filter: blur(8px);
		width: 100%;
		margin: 0px auto 200px;
		box-sizing: border-box;
		padding: 100px 0px;
		z-index: 1;
		box-shadow: 0px 2px 20px rgba(0,0,0,0.20); */
	}
}
.contBlk.pageBtmBlk {
	margin-bottom: 0px;
}

.contBlk > .inWrp {
	width: 96%;
	max-width: 1280px;
	margin: 0px auto;
	position: relative;
	padding: 3vh 5vw;
	border: 2px solid #fff;
}

.blkHdr {
	position: relative;
}

.blkHdr::after {
	position: relative;
	content: '';
	display: block;
	width: 100%;
	height: 3px;
	background-image: linear-gradient(90deg, #AA4F24 0%, #FFC23F 23%, #A43311 53%, #FFE81F 83%, #904721 100%);
}



.blkHdr h2 {
	display: grid;
	grid-template-rows: 1fr 1.2em;
	grid-template-columns: 1fr auto;
	letter-spacing: 0.05em;
	gap: 10px 30px;
	width: fit-content;
	margin: 0px auto 1em;
}

.blkHdr h2 .icon {
	grid-row: 1 / 3;
	grid-column: 1 / 2;
	width: fit-content;
	height: 130px;
}
.blkHdr h2 .icon img {
	display: block;
	width: auto;
	height: 100%;
}

.blkHdr h2 .main {
	font-size: 2.4em;
	line-height: 1.4em;
	font-weight: bold;
	background: linear-gradient(90deg, #AA4F24 0%, #FFC23F 23%, #A43311 53%, #FFE81F 83%, #904721 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	grid-row: 1 / 2;
	grid-column: 2 / 3;
	align-self: self-end;
}

.blkHdr h2 .sub {
	font-size: 1.1em;
	line-height: 1.2em;
	color: #fff;
	display: inline-block;
	letter-spacing: normal;
	grid-row: 2 / 3;
	grid-column: 2 / 3;
	align-self: self-start;
	text-align: center;
	padding-block-end: 1em;
}

@media screen and (max-width:999px) {
	.blkHdr h2 .main {
		font-size: 0.8em;
	}

	.blkHdr h2 .sub {
		font-size: 0.4em;
	}	
}


/* .blkHdr.center h2 {
	text-align: center;
}

.blkHdr.center h2 span {
	display: block;
	padding-top: 1.2em;
}

.blkHdr.left span {
	margin-left: 1em;
} */

#infoList {
	width: 94%;
	max-width: 900px;
	margin: 0px auto;
	position: relative;
}

#infoList li {
	margin-bottom: 1px;
}

.newsTtlBlk {
	position: relative;
}

.newsDate,
.newsTtlBlk h3,
.ocBtn {
	height: 60px;
	box-sizing: border-box;
}

.newsDate {
	font-family: MavenBld, Arial, Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.8rem;
	line-height: 60px;
	color: #4d4a4a;
	background-color: #e7e6e1;
	float: left;
	width: 15%;
	text-align: center;
}

.newsTtlBlk h3 {
	box-sizing: border-box;
	height: 60px;
	line-height: 1.4em;
	padding-top: 1em;
	font-weight: bold;
	color: #2f2b2b;
	padding: 1.5em 60px 0px 20px;
	margin-left: 15%;
	cursor: pointer;
}

.newsTtlBlk h3:hover {
	opacity: 0.7;
}

.ocBtn {
	position: absolute;
	right: 0px;
	top: 0px;
	width: 60px;
	background-color: #f6f5f1;
	cursor: pointer;
	padding: 20px 0px 0px 20px;
}
.ocBtn:hover {
	opacity: 0.7;
}

.ocBtn img {
	width: 20px;
	height: auto;
}

.ocBtn img.iconMinus { display: none;}
.ocBtn.open img.iconMinus { display: inline;}

.ocBtn img.iconPlus { display: inline;}
.ocBtn.open img.iconPlus { display: none;}

.newsBody {
	padding: 20px;
	color: #484545;
	margin-left: 15%;
	display: none;
}
.newsBody.open {
	display: block;
}
.newsBody p {
	margin-bottom: 1em;
}

.newsBody img {
	display: block;
	width: 100%;
	height: auto;
	max-width: fit-content;
}

.newsBody img.center {
	margin-left: auto;
	margin-right: auto;
}

.newsBody img.right {
	margin-left: auto;
	margin-right: 0;
}

.newsBody img.left {
	margin-left: 0;
	margin-right: auto;
}

/*コンテンツ共通クラス*/

.txt_title {
	font-size: 1.8rem;
	font-weight: bold;
	color: #2f2b2b;
	margin-bottom: 1em;
}

.txt_body p {
	color: #484444;
	margin-bottom: 1em;
}


.reason_blk ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 3vw;
	justify-content: flex-start;
	align-items: stretch;
	padding: 2em 1em;
}

.reason_blk ul li {
	width: calc(50% - 1.5vw);
	display: grid;
	grid-template-columns: 30% auto;
	grid-template-rows: 1fr auto;
	align-items: start;
	justify-content: start;
	gap: 5px 20px;
}


@media screen and (max-width:999px) {
	.reason_blk ul {
		display: flex;
		flex-direction: column;
		gap: 5vh;
	}
	.reason_blk ul li {
		width: 100%;
	}
}

.reason_blk ul li img {
	grid-column: 1 / 2;
	grid-row: 1 / 3;
	width: 100%;
	height: auto;
}

.reason_blk ul li img {
	grid-column: 1 / 2;
	grid-row: 1 / 3;
}

.reason_blk ul li div {
	display: contents;
}

.reason_blk ul li h4 {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
	font-size: 2em;
	font-weight: bold;
	line-height: 1.4em;
	align-self: center;
}

@media screen and (max-width:999px) {
	.reason_blk ul li h4 {
		font-size: 1.7em;
	}
}

.reason_blk ul li p {
	grid-column: 2 / 3;
	grid-row: 2 / 3;
}

.lineup_blk {
	padding-block: 3vh;
}


.lineup_price_table {
	min-width: 100%;
	table-layout: fixed;
	width: max-content;
}

.lineup_price_table,
.lineup_price_table th,
.lineup_price_table td {
	/* border-collapse: collapse; */
	text-align: center;
	vertical-align: middle;
}


.lineup_price_table th,
.lineup_price_table td {
	background-clip: padding-box;
	border: 3px solid transparent;
	padding: 0.5em 0.8em;
	/* width: 28%; */
}

/* .lineup_price_table th.column_1st {
	width: fit-content;
	padding-inline: 1em;
} */

/* @media screen and (max-width:450px) {
	.lineup_price_table th.column_1st {
		width: auto;
		padding-inline: 0;
	}
} */

.lineup_price_table .fullwidth {
	width: 75%;
}

.lineup_price_table th.title_top {
	background-image: linear-gradient(45deg, #3F2200 0%, #FFC23F 23%, #5F2500 53%, #FFE81F 83%, #522C00 100%);
	color: #fff;
	font-size: 1.4em;
	font-weight: bold;
	line-height: 1.4em;
	text-align: center;
	border-radius: 5px;
}

@media screen and (max-width:999px) {
	.lineup_price_table th.title_top {
		font-size: 1em;
	}
	
	.lineup_price_table th br.sp {
		display: block;
	}
}

.lineup_price_table tr th.title_left {
	color: #000;
	font-size: 1.15em;
	font-weight: bold;
	line-height: 1.4em;
	text-align: center;
	border-radius: 5px;
	width: 9em;
	white-space: nowrap;
}

.lineup_price_table tr:nth-child(even) th.title_left {
	background: url(../images/top/bg_table_title_even.jpg) no-repeat center;
	background-size: cover;
	background-clip: padding-box;
}
.lineup_price_table tr:nth-child(odd) th.title_left {
	background: url(../images/top/bg_table_title_odd.jpg) no-repeat center;
	background-size: cover;
	background-clip: padding-box;
}

.lineup_price_table td {
	border: 3px solid transparent;
	/* padding-block: 0.5em; */
	color: #000;
	font-size: 1.4em;
	border-radius: 5px;
}

.lineup_price_table tr:nth-child(even) td:not(.nodata) {
	background-color: #ffffffd4;
	background-clip: padding-box;
}
.lineup_price_table tr:nth-child(odd) td:not(.nodata) {
	background-color: #e1e1e1d4;
	background-clip: padding-box;
}

.lineup_price_table th.nodata,
.lineup_price_table td.nodata {
	visibility: hidden;
}

.lineup_price_table .detail {
	background-color: transparent!important;
	color: #fff;
	font-size: 1em;
	word-break: keep-all;
}

.lineup_price_table td.add_price {
	background-color: transparent!important;
	color: #fff;
	font-size: 1.8em;
	line-height: 1em;
}

.title_splashmark {
	background: url(../images/top/icon_type_title.png) no-repeat left center;
	background-size: auto 120px;
	font-size: 2em;
	font-weight: bold;
	line-height: 1.4em;
	margin-block-end: 3vh;
	padding-inline-start: 140px;
	min-height: 120px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;
	position: relative;
}

.title_splashmark span {
	font-size: 0.625em;
	font-weight: normal;
	display: block;
	width: fit-content;
}

.title_splashmark .icon_deco {
	color: #000;
	background-image: linear-gradient(90deg, #453019 0%, #D1A85A 23%, #A37C3A 30%, #805C22 33%, #E0C274 61%, #F7EC95 66%, #9E7D2F 80%, #2D2213 100%);
	position: absolute;
	text-align: center;
	line-height: 1em;
	border-radius: 8px;
	padding: 0.5em 1em;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

@media screen and (max-width:999px) {
	.title_splashmark {
		background-position: left top;
		background-size: auto 80px;
		font-size: 1.7em;
		padding-inline-start: 100px;
		min-height: 80px;
	}

	.title_splashmark .icon_deco {
		position: relative;
		font-size: 0.6em;
		right: auto;
		top: auto;
		transform: none;
	}
}

.title_splashmark.center {
	margin-inline: auto;
	width: fit-content;
}

.lineup_box {
	margin-block-end: 5vh;
}

.lineup_box > .content_box {
	border-style: solid;
	padding: 3vw 1em;
	border-width: 3px 0px;
	border-image: linear-gradient(30deg, #AA4F24 0%, #FFC23F 23%, #A43311 53%, #FFE81F 83%, #904721 100%);
	border-image-slice: 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: stretch;
	gap: 3vh;
	background-color: #00000099;
}

.lineup_box > .content_box .title_options {
	font-size: 1.6em;
	line-height: 1.4em;
	font-weight: bold;
}

.lineup_box > .content_box .base_info_box {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: stretch;
	gap: 3vw;
}

.lineup_box > .content_box .base_info_box .thumb_image {
	width: 38%;
	height: auto;
	border-radius: 10px;
}

/* .lineup_box > .content_box .thumb_image {
	width: 100%;
	height: auto;
	border-radius: 10px;
} */

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

	.lineup_box > .content_box .base_info_box {
		/* display: flex; */
		flex-direction: column;
		justify-content: flex-start;
		align-items: center;
		gap: 3vh;
	}

	.lineup_box > .content_box .base_info_box .thumb_image {
		width: 80%;
		margin-inline: auto;
	}
}

.lineup_box > .content_box .text_box {
	font-size: 1.2em;
	line-height: 1.6em;
}

.lineup_box > .content_box .table_box {
	grid-column: 1 / 3;
	grid-row: 2 / 3;
	overflow: scroll;
}

.lineup_box > .content_box .title_options_drink {
	font-size: 1.6em;
	line-height: 1.2em;
}

.lineup_box > .content_box .title_options_drink span {
	font-size: 0.725em;
	line-height: 1.4em;
	font-weight: normal;
	display: block;
}

.lineup_box p {
	margin-block-end: 1em;
}

/* .lineup_box p.note {
	font-size: 0.875em;
} */

.lineup_box p.price {
	font-size: 1.4em;
}

.lineup_box p.right {
	text-align: right;
}

.lineup_box > .content_box .text_box .type_price_table {
	table-layout: fixed;
	width: 100%;
	font-size: 1.2em;
}

.lineup_box > .content_box .text_box .type_price_table td {
	width: fit-content;
	text-align: right;
	padding: 0.5em;
}

@media screen and (max-width:999px) {
	.lineup_box > .content_box .text_box .type_price_table td {
		width: 5em;
		/* text-align: right;
		padding: 0.5em; */
	}
}

.lineup_box > .content_box .text_box .type_price_table th {
	text-align: left;
	padding: 0.5em;
}

.option_list {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 3vh 3vw;
	justify-content: flex-start;
	align-items: stretch;
}

.option_list > .content_box {
	width: calc(50% - 1.5vw);
	box-sizing: border-box;
	border: 3px solid;
	padding: 3vw;
	border-image: linear-gradient(30deg, #AA4F24 0%, #FFC23F 23%, #A43311 53%, #FFE81F 83%, #904721 100%);
	border-image-slice: 1;
	display: flex;
	flex-direction: column;
	gap: 1em;
	font-size: 1.2em;
	background-color: #00000099;
}

.option_list > .content_box img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 10px;
}

@media screen and (max-width:999px) {
	.option_list {
		/* display: flex; */
		flex-direction: column;
		flex-wrap: nowrap;
		gap: 3vh;
		/* justify-content: flex-start;
		align-items: center; */
	}

	.option_list > .content_box {
		width: 100%;
		/* box-sizing: border-box;
		border: 3px solid; */
		padding: 5vh 2vw 2vh;
		/* border-image: linear-gradient(30deg, #AA4F24 0%, #FFC23F 23%, #A43311 53%, #FFE81F 83%, #904721 100%);
		border-image-slice: 1;
		display: flex;
		flex-direction: column;
		gap: 1em;
		font-size: 1.2em;
		background-color: #00000099; */
		align-items: stretch;
	}

	.option_list > .content_box img {
		/* display: block; */
		width: 80%;
		height: auto;
		margin-inline: auto;
		/* border-radius: 10px; */
	}
}

.option_list > .content_box h5 {
	font-size: 1.4em;
	font-weight: bold;
	margin-block-end: 0.2em;
}


/* ↓ フロー */
.flow_blk ul {
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 3vh;
	justify-content: flex-start;
	align-items: stretch;
}

.flow_blk ul li {
	width: 100%;
	display: grid;
	grid-template-columns: 220px auto;
	grid-template-rows: 1fr;
	align-items: center;
	justify-content: start;
	gap: 20px;
	border-block-end: 3px solid;
	border-image: linear-gradient(90deg, #AA4F24 0%, #FFC23F 23%, #A43311 53%, #FFE81F 83%, #904721 100%) 1;
	position: relative;
}

.flow_blk ul li::after {
	position: absolute;
	display: block;
	content: '';
	width: 80px;
	height: 20px;
	background: url(../images/top/flow_arrow.png) no-repeat center;
	background-size: contain;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, calc(100% + 2px));
}

.flow_blk ul li img {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
	width: 100%;
	height: auto;
}

.flow_blk ul li div {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 2em;
}

.flow_blk ul li h4 {
	font-size: 2em;
	font-weight: bold;
	line-height: 1.4em;
}

.flow_blk ul li p {
	font-size: 1.2em;
	line-height: 1.6em;
}

@media screen and (max-width:999px) {
	.flow_blk {
		padding-block-start: 5vh;
	}

	.flow_blk ul {
		gap: 6vh;
	}

	.flow_blk ul li {
		grid-template-columns: 30% auto;
		grid-template-rows: 1fr;
		padding-block-end: 5vh;
	}

	.flow_blk ul li h4 {
		font-size: 1.7em;
		/* font-weight: bold;
		line-height: 1.4em; */
	}
}

/* ↑ フロー */

.voice_blk {
	display: flex;
	flex-direction: column;
	gap: 5vh;
	justify-content: flex-start;
	align-items: stretch;
	padding: 3vh 3vw;
}

.voice_blk .voice_card {
	display: grid;
	grid-template-columns: 12% 1fr;
	grid-template-rows: 1fr 1fr;
	gap: 1em 3vw;
}

.voice_blk .voice_card .icon_voice {
	grid-column: 1 / 2;
	grid-row: 1 / 3;
	max-width: 180px;
	width: 100%;
	height: auto;
	justify-self: self-end;
	align-self: center;
}

.voice_blk .voice_card .prof_voice {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
	font-size: 1.6em;
	font-weight: bold;
	line-height: 1.4em;
	align-self: self-end;
	justify-self: start;
}
.voice_blk .voice_card .comment_voice {
	grid-column: 2 / 3;
	grid-row: 2 / 3;
	align-self: self-start;
	justify-self: start;
}

.form_blk {
	padding-block: 5vh;
}

.title_voice_form {
	font-size: 1.6em;
	font-weight: bold;
	line-height: 2em;
	text-align: center;
	width: fit-content;
	padding: 0 0 0.5em;
	margin: 0 auto 3vh;
	border-block-end: 1px solid #fff;
}

.formmailer-embed iframe {
	background-color: transparent !important;
}

.result_blk {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: stretch;
	gap: 3vh;
	padding-block: 3vh;
}

.result_card {
	display: grid;
	grid-template-columns: 35% 1fr;
	grid-template-rows: 1fr 1fr;
	gap: 2em 3vw;
	border-style: solid;
	border-width: 0px 0px 2px;
	border-image: linear-gradient(30deg, #AA4F24 0%, #FFC23F 23%, #A43311 53%, #FFE81F 83%, #904721 100%);
	border-image-slice: 1;
	padding-block: 2em;
}

.result_img {
	max-width: 350px;
	height: auto;
	width: 100%;
	grid-column: 1 / 2;
	grid-row: 1 / 3;
	justify-self: end;
	align-self: center;
}

.result_title {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
	justify-self: start;
	align-self: self-end;
	font-size: 1.6em;
	line-height: 1.6em;
}

.result_body {
	grid-column: 2 / 3;
	grid-row: 2 / 3;
	justify-self: start;
	align-self: self-start;
}

@media screen and (max-width:999px) {
	/* .result_blk {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: stretch;
		gap: 3vh;
		padding-block: 3vh;
	} */

	.result_card {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: stretch;
		gap: 2em;
	}

	.result_img {
		height: auto;
		width: 90%;
		margin: 0 auto;
	}

	.result_title {
		align-self: stretch;
		text-align: center;
		font-size: 1.4em;
	}

	/* .result_body {
		text-align: left;
	}	 */
}


.cta {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: 1fr;
	justify-content: center;
	align-items: center;
	gap: 1vw;
	width: 90%;
	margin: 5vh auto;
}

.cta.header {
	max-width: 900px;
	position: absolute;
	bottom: 3vh;
	left: 50%;
	transform: translateX(-50%);
}

.cta a {
	display: block;
}

.cta a img {
	display: block;
	width: 100%;
	height: auto;
}
.cta a img.sp {
	display: none;
}

@media screen and (max-width:999px) {
	.cta {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: stretch;
		gap: 10px;
		width: 100%;
		margin: 5vh auto;
	}

	.cta.header {
		width: 90%;
	}
	.cta a img.pc {
		display: none;
	}

	.cta a img.sp {
		display: block;
	}
}

/*コンセプト*/

#conceptWrp figure {
	display: block;
	width: 100%;
	max-width: 450px;
	float: left;
	margin-right: 50px;
}

#conceptWrp .txtBlk {
	width: 96%;
	max-width: 450px;
	float: left;
	margin: 0px auto;
}

/*アクセス*/

#accessWrp .inWrp {
	max-width: none;
}

#map {
	width: 100%;
	height: 500px;
	margin: 0px auto 50px;
	border: 1px solid #d1d1d1;
	box-sizing: border-box;
}

#accessWrp .inBlk {
	max-width: 900px;
	width: 96%;
	margin-left: auto;
	margin-right: auto;
}

#address {
	margin-bottom: 50px;
}

#address dl dt,
#priceWrp dl dt {
	float: left;
	width: 12%;
	clear: both;
	font-size: 1.4rem;
	margin-bottom: 1em;
}

#address dl dd,
#priceWrp dl dd {
	float: left;
	width: 88%;
	margin-bottom: 1em;
}


/*ガイドページ*/



#buildingWrp .contents {/*
	min-height: 650px;*/
	position: relative;
}

#buildingWrp .contents figure {/*
	position: absolute;
	right: 0;
	top: 0;*/
	max-width: 700px;
	width: 96%;
	margin: 0px auto;
}

#buildingWrp .contents .txt_body {
	width: 350px;
	margin-left: 50px;
}

#buildingWrp .blkHdr,
#interior .blkHdr,
#furniture .blkHdr,
#guideline .inWrp {
	width: 96%;
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}

.galleries a {
	display: block;
	float: left;
	width: 20%;
	box-sizing: border-box;
	padding-right: 1px;
	padding-bottom: 1px;
	position: relative;
	cursor: pointer;
}

.galleries a:hover {
	opacity: 0.8;
}
.galleries a:hover::after {
	content: url(../images/unders/icon_loupe.svg);
	position: absolute;
	width: 20px;
	height: auto;
	left: 45%;
	top: 45%;
}

#interior {
	margin-bottom: 70px;
}

.list_topLV li,
.list_secondLV li {
	position: relative;
	padding-left: 1.5em;
}

.list_secondLV li {
	margin-left: 1em;
}

.list_topLV li::before,
.list_secondLV li::before {
	width: 14px;
	height: 14px;
	position: absolute;
	left: 0px;
	top: 1px;
}

.list_topLV li::before {
	content: url(../images/unders/icon_listTPLV.svg);
}
.list_secondLV li::before {
	content: url(../images/unders/icon_listSCLV.svg);
}


/*プライス*/

#priceWrp .inWrp,
#notice .inWrp,
#cancel .inWrp,
#formWrp .inWrp,
#aboutreservationWrp .inWrp,
#availavilityWrp .inWrp .blkHdr,
#availavilityWrp .inWrp .contents p {
	width: 96%;
	max-width: 900px;
	margin: 0px auto;
}

#priceWrp dl {
	margin-bottom: 10px;
}

.priceTbl {
	width: 100%;
}
.priceTbl,
.priceTbl th,
.priceTbl td {
	border-collapse: collapse;
	border: 1px solid #fff;
	box-sizing: border-box;
}

.priceTbl th {
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
	color: #4d4a4a;
	background-color: #e7e6e1;
	padding: 18px 0px 17px;
	width: 30%;
}

.priceTbl td {
	font-size: 1.6rem;
	color: #484444;
	background-color: #f6f5f1;
	padding: 13px 20px 13px;
}

.priceTbl tr.caution td {
	background-color: #fff;
	text-align: center;
	font-size: 1.4rem;
}


.note {
	/* text-align: right; */
	font-size: 1.2rem;
	padding: 10px 0px 0px;
}


/*予約・問い合わせ*/


#google_calendar {
	padding-top: 30px;
}

#toFormLinks {
	position: relative;
	width: 80%;
	max-width: 800px;
	margin: 0px auto;
}

#toFormLinks li {
	float: left;
	box-sizing: border-box;
	width: 32%;/*
	width: 47.5%;*/
	background-color: #fff;
	padding-right: 10%;
	height: 60px;
	position: relative;
	margin-right: 2%;
}

#toFormLinks li:last-child {
	margin-right: 0;
}


/*
#toFormLinks li:first-child {
	margin-right: 5%;
}

#toFormLinks li#checkReserve {
	float: none;
	margin: 0px auto;
	clear: both;
}*/

#toFormLinks li a {
	display: block;
	height: 60px;
	line-height: 60px;
	text-align: center;
	color: #2f2b2b;
	font-size: 2.1rem;
	font-weight: bold;
}

#toFormLinks li a span {
	width: 70px;
	position: absolute;
	right: 0;
	top: 0;
	background-color: #2f2b2b;
}

#toFormLinks li a span img {
	width: 40%;
}

#formChanger {
	margin-bottom: 30px;
}

#formChanger li {
	float: left;
	width: 50%;
	box-sizing: border-box;
	padding-right: 1px;
	cursor: pointer;
}
#formChanger li:hover {
	opacity: 0.7;
}

#formChanger li p {
	background-color: #f6f5f1;
	color: #4d4a4a;
	text-align: center;
	height: 60px;
	line-height: 60px;
	font-size: 1.6rem;
}

#formChanger li.current p {
	background-color: #e7e6e1;
}

.formBox h3 {
	font-size: 1.8rem;
	font-weight: bold;
	color: #4d4a4a;
	margin-bottom: 1em;
}

.formBox p.txt_body {
	font-size: 1.2rem;
}

.indis {
	color: #DA3818;
	font-size: 1.2rem;
}

.forms {
	padding: 30px 0px;
}

.formDL { margin-bottom: 50px;}

.formDL dt {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 0.5em;
	color: #4d4a4a;
}

.formDL dd {
	font-size: 1.4rem;
	margin-bottom: 1.5em;
}
.formDL dt span.note {
	font-size: 1.2rem;
	font-weight: normal;
	color: #959595;
}

input[type="text"],
textarea,
input[type="date"] {
	background-color: #f8f8f8;
	box-sizing: border-box;
	border: 1px solid #DCDCDC;
	padding: 10px 3px;
	font-size: 1.6rem;
	border-radius: 2px;
}

.wide_w,
textarea {
	width: 100%;
}

.wide_m {
	width: 50%;
}

.wide_n {
	width: 25%;
}

.wide_t {
	width: 12.5%;
}

textarea { height: 120px;}

select {
	margin-right: 20px;
}


.formBtn {
	box-sizing: border-box;
	background-color: #4d4a4a;
	color: #fff;
	border: none;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
	height: 60px;
	line-height: 60px;
	border-radius: 2px;
	cursor: pointer;
}
.formBtn:hover { opacity: 0.7;}

.formBtn.single {
	display: block;
	margin: 0px auto;
	width: 80%;
}

.btnWrp {
	width: 80%;
	margin: 0px auto;
	text-align: center;
}

.formBtn.double {
	display: inline-block;
	width: 30%;
	margin-right: 3%;
	margin-bottom: 20px;
}
.formBtn.double:last-child {
	margin-right: 0;
}

.ppWrp {
	width: 100%;
	background-color: #f8f8f8;
	box-sizing: border-box;
	border: 1px solid #DCDCDC;
	padding: 20px 20px;
	font-size: 1.4rem;
	border-radius: 2px;
	height: 270px;
	overflow: auto;
	margin: 0px auto 30px;
}

.ppWrp h4 {
	font-size: 1.6rem;
	text-align: center;
}

.ppWrp ol > li {
	list-style: outside decimal;
	margin-left: 20px;
	margin-bottom: 1.2em;
}

.ppWrp ul li {
	list-style: outside disc;
	margin-left: 2em;
}

.pp_agree  {
	display: block;
	text-align: center;
	font-size: 1.6rem;
	margin-bottom: 50px;
}

/* .formBox {
	display: none;
} */

.formBox.current {
	display: block;
}

#confirmWrp .inWrp {
	width: 96%;
	max-width: 900px;
	margin: 0px auto;
}

#confirmWrp table {
	margin-bottom: 50px;
}

#thanksWrp .contents {
	min-height: 200px;
	text-align: center;
}

#thanksWrp .contents h3 {
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 30px;
	padding-top: 30px;
}

#thanksWrp .contents p {
	margin-bottom: 1.5em;
}


.messageDisplay {
	padding-top: 50px;
}

.messageDisplay .txt_title {
	text-align: center;
	margin-bottom: 2em;
}

.messages {
	margin-bottom: 50px;
	text-align: center;
}

.messages p.error_messe {
	color: #D91B1E;
	line-height: 2em; 
}


/*メニューバー固定*/

#gmLinks {
	width: 100%;
	height: 70px;
	position: relative;
	padding-right: 2.2%;
	box-sizing: border-box;
}
#gmLinks.scr {
	position: relative;
	background-color: transparent;
}

#gmLinks.fix {
	position: fixed;
	background-color: rgba(0, 0, 0, 0.8);
	top: 0;
	left: 0;
	z-index: 10;
	box-shadow: 0px 1px 10px rgba(0,0,0,0.30);
}

#gmLinks.fix li a {
	color: #c9c9c9;
}

#gmLinks li#logo_menuBar {
	width: 20%;
	max-width: 250px;
	position: absolute;
	left: 20px;
	top: 0px;
}

#gmLinks li a img.fix { display: none;}
#gmLinks.scr li a img.fix { display: none;}
#gmLinks.fix li a img.scr { display: none;}
#gmLinks.fix li a img.fix { display: inline;}



/*SP対応*/
@media screen and (min-width:0px) and (max-width:999px){
	
	.fullScr h1 {
		letter-spacing: 0;
		font-size: 4rem;
		line-height: 1em;
	}
	
	/*コンテンツ*/
	
	.anchor {
		top: -80px;
	}
	
	.contBlk {
		margin: 0px auto 30%;
		padding-top: 30%;
	}
	
	.blkHdr h2 {
		font-size: 3.5rem;
		line-height: 1.1em;
		letter-spacing: normal;
		text-align: center;
	}
	
	.blkHdr h2 span {
		display: block;
	}
	
	.blkHdr.center h2 span,
	.blkHdr.left h2 span {
		display: block;
		margin-left: 0px;
		padding-top: 0em;
	}

	/*コンセプト*/
	
	#conceptWrp figure {
		max-width: none;
		float: none;
		margin-bottom: 1em;
		margin-right: 0;
	}
	
	#conceptWrp .txtBlk {
		padding-left: 0;
		float: none;
	}

	/*アクセス*/
	
	#map {
		height: 300px;
		margin: 0px auto 6%;
	}
	
	#address {
		margin-bottom: 6%;
	}
	
	#address dl dt,
	#priceWrp dl dt {
		min-width: 25%;
	}
	
	#address dl dd,
	#priceWrp dl dd {
		width: 75%;
	}
	
	/*フッター*/


	#pageFtr {
		padding-top: 0%;
	}
	
	#btt {
		margin-bottom: 10%;
	}
	
	#btt a {
		display: block;
		width: 72px;
		margin: 0px auto;
	}
	#ftrLogo {
		background-size: 150px 150px;
		/* height: 100px; */
		padding-top: 12%;
	}
	
	#ftrLogo a {
		max-width: none;
	}
	
	#copyright {
		font-size: 1rem;
		line-height: 45px;
		height: 45px;
	}
	
	
	/*ガイドページ*/
	
	.galleries a {
		width: 33.3%;
	}
	
	#interior {
		margin-bottom: 35px;
	}
	
	.list_secondLV li {
		margin-left: 0em;
	}


	/*プライス*/
	
	.priceTbl th {
		padding: 10px 0px 9px;
		width: 35%;
	}
	
	.priceTbl td {
		padding: 10px 2% 9px;
	}
	
	.priceTbl tr.caution td {
		font-size: 1.2rem;
	}
	
	
	.note {
		padding: 0px 0px 20px;
	}
	
	
	/*予約・問い合わせ*/
	
	#google_calendar {
		padding-top: 30px;
	}
	
	#google_calendar iframe  {
		width: 100% !important;
		height: 350px !important;
	}
	
	#toFormLinks li {
		float: none;
		width: 100%;
		margin: 0px auto 10px;
		padding-right: 45px;
		height: 45px;
	}
	
	#toFormLinks li:first-child {
		margin-right: auto;
	}
	
	#toFormLinks li a {
		height: 45px;
		line-height: 45px;
		font-size: 1.8rem;
	}
	
	#toFormLinks li a span {
		width: 45px;
	}
	
	#toFormLinks li a span img {
		width: 40%;
	}
	
	#formChanger {
		margin-bottom: 30px;
	}
	
	#formChanger li {
		float: none;
		width: 100%;
		padding-right: 0px;
		margin-bottom: 10px;
	}
		
	#formChanger li p {
		height: 45px;
		line-height: 45px;
	}
	
	.wide_m {
		width: 75%;
	}
	
	.wide_n {
		width: 60%;
	}
	
	.wide_t {
		width: 35%;
	}
	
	.formBtn {
		height: 45px;
		line-height: 45px;
	}
	
	.formBtn.single {
		width: 100%;
	}
	
	.btnWrp {
		width: 100%;
	}
	
	.formBtn.double {
		width: 45%;
		margin-right: 5%;
	}
	
	.ppWrp {
		height: 120px;
	}
	
	.ppWrp ol > li {
		margin-left: 2%;
		margin-bottom: 1em;
	}
	
	.ppWrp ul li {
		margin-left: 2%;
	}
	
}


/*タブレットサイズ*/
@media screen and (min-width:451px) and (max-width:999px){
	
	
	.blkHdr h2 {
		line-height: 1em;
	}

	/*コンセプト*/
	
	#conceptWrp figure {
		display: block;
		width: 45%;
		float: left;
		margin-right: 5%;
		margin-bottom: 20px;
	}
	
	#conceptWrp .txtBlk {
		width: auto;
		float: none;
		max-width: none;
	}
	
	/*ガイドページ*/
	
	.galleries a {
		width: 25%;
	}
	
	
	/*予約・問い合わせ*/
	
	#google_calendar {
		padding-top: 30px;
	}
	
	#google_calendar iframe  {
		width: 100% !important;
		height: 450px !important;
	}
	
	#toFormLinks {
		width: 80%;
	}
	
	#toFormLinks li {
		float: none;
		width: 100%;
		margin: 0px auto 10px;
	}
	
	#toFormLinks li:first-child {
		margin-right: auto;
	}
	
	#toFormLinks li a {
		font-size: 1.8rem;
	}
	
	#toFormLinks li a span {
		width: 70px;
	}
	
	#toFormLinks li a span img {
		width: 40%;
	}/*
	
	#formChanger {
		margin-bottom: 30px;
	}
	
	#formChanger li {
		float: none;
		width: 100%;
		padding-right: 0px;
		margin-bottom: 10px;
	}
		
	#formChanger li p {
		height: 45px;
		line-height: 45px;
	}*/
	
	.wide_m {
		width: 75%;
	}
	
	.wide_n {
		width: 60%;
	}
	
	.wide_t {
		width: 35%;
	}
	
	.formBtn {
		height: 45px;
		line-height: 45px;
	}
	
	.formBtn.single {
		width: 100%;
	}
	
	.btnWrp {
		width: 100%;
	}
	
	.formBtn.double {
		width: 45%;
		margin-right: 5%;
	}
	
	.ppWrp {
		height: 120px;
	}
	
	.ppWrp ol > li {
		margin-left: 2%;
		margin-bottom: 1em;
	}
	
	.ppWrp ul li {
		margin-left: 2%;
	}
	
}


/*メニュー*/
@media screen and (min-width:0px) and (max-width:1165px){
	
	#menuOpener.sp {
		display: block;
		position: fixed;
		right: 10px;
		top: 10px;
		width: 40px;
		z-index: 15;
		cursor: pointer;
	}
	
	#menuOpener img {
		display: none;
		width: 100%;
		height: auto;
	}
	#menuOpener img#menu_op,
	#menuOpener.fix img#menu_op2,
	#menuOpener.open img#menu_cl {
		display: block;
	}
	#menuOpener.fix img#menu_op,
	#menuOpener.open img#menu_op,
	#menuOpener.open img#menu_op2 {
		display: none;
	}
	
	#gmLinks {
		text-align: left;
		width: 100%;
		box-sizing: border-box;
		padding: 60px 10% 0px;
		z-index: 1;
	}
	
	#gmLinks.open {
		background-color: rgba(0, 0, 0, 0.8) !important;
		height: 100% !important;
		position: fixed !important;
		top: 0;
		left: 0;
	}
	
	#gmLinks li {
		display: none;
		width: 100%;
		height: 45px;
		margin-bottom: 1px;
	}
	
	#gmLinks.open li {
		display: list-item;
	}
	
	#gmLinks li a {
		display: block;
		height: 45px;
		padding: 0px;
		font-size: 1.8rem;
		line-height: 45px;
		text-align: left;
		color: #ffffff;
	}

	@media screen and (max-width:999px) {
		#gmLinks li:first-child a {
			/* display: block;
			height: 45px;
			padding: 0px; */
			font-size: 1.2rem;
			display: flex;
			align-items: center;
			/* line-height: 45px;
			text-align: left;
			color: #ffffff; */
		}
	}
	
	/*#gmLinks li.snsMenu a {
		width: 20px;
	}*/
	
	/*#gmLinks li a img {
		position: relative;
		top: -2px;
	}*/
	

	/*メニューバー固定*/
	
	#gmLinks.scr {
		position: relative;
		background-color: transparent;
	}
	
	#gmLinks.fix {
		height: 45px;
	}
	
	#gmLinks li#logo_menuBar {
		display: inline;
		width: 45%;
		top: 5px;
	}

	#gmLinks.open li#logo_menuBar a img.fix {
		display: inline !important;
	}
	#gmLinks.open li#logo_menuBar a img.scr {
		display: none !important;
	}
	
	.snsMenu a img.scr {
		display: none !important;
	}
	.snsMenu a img.fix {
		display: inline !important;
	}
	
	
	/*ニュース*/
	
	.newsDate,
	.newsTtlBlk h3,
	.ocBtn {
		height: 45px;
	}
	
	.newsDate {
		line-height: 45px;
		float: none;
		width: 100%;
		text-align: left;
		padding-left: 2%;
	}
	
	.newsTtlBlk h3 {
		min-height: 45px;
		height: auto;
		line-height: 1.4em;
		padding: 0.8em 2%;
		margin-left: 0;
	}
	
	.ocBtn {
		width: 45px;
		padding: 10px 0px 0px 15px;
	}
	
	.ocBtn img {
		width: 15px;
	}
	
	.newsBody {
		padding: 2%;
		margin-left: 0;
	}
	
	/*ガイドページ*/
	
	#buildingWrp .contents {
		min-height: inherit;
	}
	
	#buildingWrp .contents figure {
		position: relative;
		right: inherit;
		top: inherit;
	}
	
	#buildingWrp .contents .txt_body {
		width: 96%;
		margin: 0px auto 6%;
	}
	
}