@charset "UTF-8";/*==========================================店舗情報===========================================*/#access {		text-align: center;}#access .access-inner {		width: 95%;		margin-left: auto;		margin-right: auto;		margin-bottom: 3em;		padding: 2em 0.8em;		border-radius: 12px;		box-sizing: border-box;		text-align: center;		background:				radial-gradient(circle at 8% 5%, rgba(221, 82, 198, 0.15) 0%, rgba(221, 82, 198, 0) 30%), radial-gradient(circle at 92% 95%, rgba(205, 157, 69, 0.12) 0%, rgba(205, 157, 69, 0) 34%), linear-gradient(135deg, rgba(48, 14, 49, 0.84) 0%, rgba(13, 5, 16, 0.88) 48%, rgba(35, 8, 30, 0.84) 100%);		-webkit-backdrop-filter: blur(14px) saturate(125%) brightness(0.78);		backdrop-filter: blur(14px) saturate(125%) brightness(0.78);		border: 1px solid rgba(222, 181, 91, 0.58);		box-shadow:				inset 0 1px 0 rgba(255, 238, 211, 0.16), inset 0 0 34px rgba(208, 55, 184, 0.08), 0 22px 48px rgba(0, 0, 0, 0.52), 0 6px 16px rgba(0, 0, 0, 0.30);}table.tbl-r02 {		background: #160819;		box-shadow:				0 14px 34px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 245, 224, 0.07);}table.tbl-r02 td .pay li {		display: inline-block;		margin-bottom: 5px;}table.tbl-r02 td .pay li img {		background-color: #FFFFFF;}table.tbl-r02 tr td .note {		display: block;		margin-top: 0.5em;		font-size: 90%;}table.tbl-r02, table.tbl-r02 th, table.tbl-r02 td {		color: #FFFFFF;}table.tbl-r02 tr td ul.sns li {		margin-bottom: 1em;}table.tbl-r02 tr td .sns li a img {		width: 90%;		max-width: 250px;		margin-left: auto;		margin-right: auto;}table.tbl-r02 tr td .bn_access {		background: linear-gradient(180deg, #7A2C86 0%, #5B1E66 55%, #3F1348 100%);		border-radius: 999px;		color: #F3EEDC;		width: 90%;		max-width: 282px;		height: 60px;		display: block;		text-align: center;		font-weight: bold;		font-size: 1.2em;		line-height: 60px;		border: 1px solid #D4AF37;		box-shadow:				0 4px 12px rgba(0, 0, 0, 0.25), inset 0 0 8px rgba(255, 255, 255, 0.08);}table.tbl-r02 td a {		text-decoration: underline;		color: inherit;}.info h3 img {		max-width: 393px;		width: 100%;}.info-inner .info .accent3 {		max-width: 309px;		width: 80%;		margin-left: auto;		margin-right: auto;		margin-bottom: 1em;}td .bn_access .fas.fa-map-marked-alt.fa-lg {		margin-right: 5px;}.tbl-r02 .last td .map {		width: 90%;		margin-left: auto;		margin-right: auto;		border-radius: 10px;}span.parking {		width: 30px;		height: 30px;		background-color: #3F1348;		color: #F3EEDC;		border: 1px solid #D4AF37;		border-radius: 50%;		display: inline-flex;		justify-content: center;		align-items: center;		font-weight: bold;		font-size: 16px;		margin-left: 10px;		margin-top: 10px;		margin-right: 5px;		margin-bottom: 0px;}/* Googleマップ */.ggmap {		position: relative;		padding-bottom: 56.25%;		padding-top: 30px;		height: 0;		overflow: hidden;		margin-bottom: 1em;		border-radius: 12px;}.ggmap iframe, .ggmap object, .ggmap embed {		position: absolute;		top: 0;		left: 0;		width: 100%;		height: 100%;}.bn_access a img {		width: 90%;		height: auto;		max-width: 250px;		margin-left: auto;		margin-right: auto;}.parkingArea p img.icon-parking {		width: 26px;		height: auto;		display: inline-block;		padding-right: 0.5em;}.parkingArea p {		color: #1F1A17;		text-align: center;		margin-bottom: 0.5em;}.parkingArea .photo {		width: 80%;		max-width: 250px;		margin-left: auto;		margin-right: auto;		margin-top: 0.5em;		margin-bottom: 0.5em;}/* ▼ 店舗情報テーブル内の SNS アイコン（横並び） */table.tbl-r02 td .sns-inline {		list-style: none;		margin: 0;		padding: 0;		display: flex;		flex-wrap: wrap;		gap: 0.75rem;		align-items: center;}table.tbl-r02 td .sns-inline li {		flex: 0 0 auto;}table.tbl-r02 td .sns-inline li a {		display: inline-flex;		align-items: center;		justify-content: center;		width: 48px;		height: 48px;		border-radius: 50%;		text-decoration: none;		background: #FFFDF8;		border: 1px solid #E8D18E;		box-shadow:				0 2px 8px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.8);}table.tbl-r02 td .sns-inline li img {		max-width: 70%;		max-height: 70%;		display: block;}/* -----アクセス案内----- */.access-route {		width: 100%;		margin: 0;		padding: 0;}.access-route-group {		margin-bottom: 1.1em;		padding: 1em 1em 1.05em;		background:				linear-gradient(135deg, rgba(255, 255, 255, 0.42) 0%, rgba(255, 247, 232, 0.32) 100%);		border: 1px solid rgba(200, 167, 74, 0.34);		border-radius: 10px;		box-shadow:				inset 0 1px 0 rgba(255, 255, 255, 0.55), 0 4px 12px rgba(120, 85, 35, 0.06);}.access-route-group:last-child {		margin-bottom: 0;}.access-route-title {		display: inline-block;		margin: 0 0 0.75em;		padding: 0.25em 0.9em;		color:#F1E4D1;		background:				linear-gradient(180deg, #31462A 0%, #24351E 55%, #1A2816 100%);		border: 1px solid rgba(200, 167, 74, 0.58);		border-radius: 999px;		font-size: 0.9em;		font-weight: 600;		line-height: 1.5;		letter-spacing: 0.03em;		box-shadow:				inset 0 1px 0 rgba(255, 255, 255, 0.10), 0 3px 8px rgba(40, 55, 25, 0.16);}.station {		margin: 0;		padding-left: 0;		list-style: none;}.station li {		position: relative;		margin-bottom: 0.45em;		padding-left: 1.25em;		color: #2F251B;		font-size: 0.95em;		line-height: 1.75;}.station li:last-child {		margin-bottom: 0;}.station li::before {		content: "";		position: absolute;		top: 0.75em;		left: 0;		width: 6px;		height: 6px;		background: #C8A74A;		border-radius: 50%;		box-shadow: 0 0 0 2px rgba(200, 167, 74, 0.16);}/* アクセス案内：リスト部分だけ左寄せ */.access-route-group {		text-align: center;}.access-route-group .station {		width: 100%;		margin: 0;		padding-left: 0;		text-align: left;}.access-route-group .station li {		text-align: left;}/* -----駐車場案内----- */.parking-title {		margin: 0 0 1.1em;		color: #2F251B;		text-align: center;		font-size: 1.05em;		font-weight: 600;		line-height: 1.6;}.parking-photo-list {		display: grid;		grid-template-columns: 1fr;		gap: 1.2em;		width: 100%;		max-width: 520px;		margin: 0 auto 1.2em;}.parking-photo-card {		margin: 0;		padding: 0.45em;		background:				linear-gradient(135deg, rgba(255, 252, 244, 0.88) 0%, rgba(255, 246, 230, 0.78) 100%);		border: 1px solid rgba(200, 167, 74, 0.42);		border-radius: 10px;		box-shadow:				inset 0 1px 0 rgba(255, 255, 255, 0.65), 0 5px 14px rgba(120, 85, 35, 0.09);		overflow: hidden;}.parking-img {		display: block;		width: 100%;		height: auto;		border-radius: 7px;}.parking-note {		margin: 1em 0 0;		color: #2F251B;		text-align: center;		font-size: 0.95em;		line-height: 1.7;}/* 最終行の下線は消す */#access table.tbl-r02 tr:last-child th, #access table.tbl-r02 tr:last-child td {		border-bottom: none;}/* スマートフォン用（599px以下） */@media screen and (max-width: 599px) {		#access {				margin-bottom: 0em;				margin-top: 5.5em;		}		#access .access-inner {				width: 95%;				border-radius: 12px;				padding: 2em 0.8em;		}		table.tbl-r02, table.tbl-r02 th, table.tbl-r02 td {				display: block;				width: 100%;		}		table.tbl-r02 th {				font-weight: bold;				font-size: 1.05em;				position: relative;				padding: 12px 0.9em;				/* 少し落ち着いたシャンパンゴールド */				color: #E5CFA4;				border-radius: 0;				background:						linear-gradient(135deg, #581769 0%, #300C3E 55%, #17071E 100%);				/* 左右の線を両方表示 */				border-left: 1px solid rgba(222, 181, 91, 0.55);				border-right: 1px solid rgba(222, 181, 91, 0.55);				border-bottom: 1px solid rgba(222, 181, 91, 0.55);				box-sizing: border-box;				text-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);		}		table.tbl-r02 td {				border-top: none;				padding: 1.2em 1em 1.4em;				color: #2D1D28;				background:						radial-gradient(circle at 12% 0%, rgba(255, 255, 255, 0.46) 0%, rgba(255, 255, 255, 0) 36%), linear-gradient(135deg, #F4EEED 0%, #EAE0E4 52%, #DECED7 100%);				/* td側にも左右の線を追加 */				border-left: 1px solid rgba(222, 181, 91, 0.55);				border-right: 1px solid rgba(222, 181, 91, 0.55);				border-bottom: 1px solid rgba(222, 181, 91, 0.58);				border-radius: 0;				box-sizing: border-box;				box-shadow:						inset 0 1px 0 rgba(255, 255, 255, 0.88), inset 0 -1px 0 rgba(89, 26, 75, 0.05);		}		/* 一番最初の th だけ、上左右を角丸 */		table.tbl-r02 th.first-th {				border-radius: 10px 10px 0 0;		}		/* 一番下の td だけ、下左右を角丸 */		table.tbl-r02 tr.last td {				border-radius: 0 0 10px 10px;		}		table.tbl-r02 tr {				margin-bottom: 1.1em;		}		table.tbl-r02 tr td .pay {				padding-left: 3px;				padding-right: 3px;		}		table.tbl-r02 tr td .bn_access {				margin-left: auto;				margin-right: auto;		}		table.tbl-r02 td .sns-inline {				justify-content: center;		}		/* -----アクセス案内----- */		.access-route-group {				padding: 0.95em 0.9em 1em;		}		.access-route-title {				font-size: 0.88em;		}		.station li {				font-size: 0.9em;				line-height: 1.7;		}		/* -----駐車場案内----- */		.parking-title {				font-size: 1em;		}		.parking-photo-list {				max-width: 430px;				gap: 1.1em;		}		.parking-note {				font-size: 0.92em;		}}/* タブレット用（600px～1024px） */@media screen and (min-width: 600px) and (max-width: 1024px) {		table.tbl-r02 {				width: 100%;				border-collapse: collapse;		}		table.tbl-r02 th {				padding: 20px 22px;				text-align: left;				background:						linear-gradient(135deg, #300C3E 0%, #17071E 100%);				border-right: 1px solid rgba(222, 181, 91, 0.55);				border-bottom: 1px solid rgba(222, 181, 91, 0.55);				box-shadow:						inset 0 1px 0 rgba(255, 255, 255, 0.08), inset -8px 0 18px rgba(0, 0, 0, 0.14);				white-space: nowrap;				color: #E5CFA4;				font-weight: 600;				font-size: 1.05em;				vertical-align: middle;				text-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);		}		table.tbl-r02 td {				padding: 20px 22px;				text-align: left;				line-height: 1.85;				vertical-align: middle;				background:						radial-gradient(circle at 12% 0%, rgba(255, 255, 255, 0.46) 0%, rgba(255, 255, 255, 0) 36%), linear-gradient(135deg, #F4EEED 0%, #EAE0E4 52%, #DECED7 100%);				color: #2D1D28;				border-bottom: 1px solid rgba(222, 181, 91, 0.58);				box-shadow:						inset 0 1px 0 rgba(255, 255, 255, 0.88), inset 0 -1px 0 rgba(89, 26, 75, 0.05);		}		table.tbl-r02 tr:last-child th, table.tbl-r02 tr:last-child td {				border-bottom: none;		}		.parkingArea p {				text-align: left;				margin-left: 0.5em;		}		/* 最終行はテーブル外周の金線だけを使う */		table.tbl-r02 tr:last-child th, table.tbl-r02 tr:last-child td {				border-bottom: none;		}		/* -----アクセス案内----- */		.access-route {				max-width: 620px;		}		.access-route-group {				padding: 1.1em 1.25em;		}		.access-route-title {				font-size: 0.92em;		}		.station li {				font-size: 0.95em;		}		/* -----駐車場案内----- */		.parking-photo-list {				max-width: 490px;				gap: 1.3em;		}		.parking-photo-card {				padding: 0.5em;		}		.parking-title {				font-size: 1.08em;		}		.parking-note {				font-size: 1em;				text-align: center;		}}/* PC用（1025px以上） */@media screen and (min-width: 1025px) {		#access .access-inner {				width: 85%;				padding: 4em 2.5em;				border-radius: 12px;		}		table.tbl-r02 {				width: 100%;				max-width: 900px;				border-collapse: collapse;				margin-left: auto;				margin-right: auto;				overflow: hidden;				border-radius: 14px;				border: 1px solid rgba(222, 181, 91, 0.55);				background: #160819;		}		table.tbl-r02 th {				padding: 26px 30px;				text-align: left;				color: #E5CFA4;				background:						linear-gradient(135deg, #300C3E 55%, #17071E 100%);				border-right: 1px solid rgba(222, 181, 91, 0.55);				box-shadow:						inset 0 1px 0 rgba(255, 255, 255, 0.08), inset -8px 0 18px rgba(0, 0, 0, 0.14);				text-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);				white-space: nowrap;				border-bottom: 1px solid #D4AF37;				font-weight: 600;				font-size: 1.08em;				vertical-align: middle;		}		table.tbl-r02 td {				padding: 26px 30px;				text-align: left;				background:						radial-gradient(circle at 12% 0%, rgba(255, 255, 255, 0.46) 0%, rgba(255, 255, 255, 0) 36%), linear-gradient(135deg, #F4EEED 0%, #EAE0E4 52%, #DECED7 100%);				color: #2D1D28;				border-bottom: 1px solid rgba(222, 181, 91, 0.58);				box-shadow:						inset 0 1px 0 rgba(255, 255, 255, 0.88), inset 0 -1px 0 rgba(89, 26, 75, 0.05);				line-height: 1.85;				vertical-align: middle;		}		table.tbl-r02 tr:last-child th, table.tbl-r02 tr:last-child td {				border-bottom: none;		}		.tbl-r02 tr td .note br {				display: none;		}		.parkingArea p {				text-align: left;				margin-left: 0.5em;		}		/* 最終行はテーブル外周の金線だけを使う */		table.tbl-r02 tr:last-child th, table.tbl-r02 tr:last-child td {				border-bottom: none;		}		/* -----アクセス案内----- */		.access-route {				display: grid;				grid-template-columns: 1fr 1fr;				gap: 1em;				align-items: stretch;		}		.access-route-group {				margin-bottom: 0;				padding: 1.2em 1.35em;		}		.access-route-title {				font-size: 0.95em;		}		.station li {				font-size: 0.96em;				line-height: 1.8;		}		/* -----駐車場案内----- */		.parking-photo-list {				grid-template-columns: 1fr 1fr;				max-width: 660px;				gap: 0.9em;		}		.parking-photo-card {				padding: 0.45em;		}		.parking-title {				text-align: left;				margin-left: 0.5em;		}		.parking-note {				text-align: left;				margin-left: 0.5em;		}}