@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;700;800&display=swap');

#message {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
}
#message .boxL {
	width: 50%;
	padding-right: 5%;
	text-align: right;
}
#message .boxL img {
	max-width: 100%;
	flex-shrink: 0;
}
#message .boxR {
	width: 50%;
	padding-right: 5%;
}
#message .textArea {
	font-family: YakuHanMP, 'Shippori Mincho', 'Playfair Display', 'Noto Serif JP', '游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
	font-size: 1.07142857em;
	font-weight: 500;
}
#message .textArea h2 {
	font-size: 1.6em;
	font-weight: inherit;
}
#message .textArea h2 b {
	color: #d54f0b;
	font-weight: inherit;
}
#message .textArea p {
	margin: 24px 0 0;
}
#message .textArea p:not([class]) span {
	display: block;
	margin: 15px 0 0;
}
#message .textArea p:not([class]) b {
	display: flex;
	align-items: center;
	font-size: 1.125em;
	font-weight: 700;
}
#message .textArea p:not([class]) b::before {
	width: 1.25em;
	height: 1px;
	margin-right: 0.5em;
	background-color: currentColor;
	content: '';
}
#message .textArea p:not([class]) span + b {
	margin-top: 24px;
}
#message p.name {
	margin: 40px 0 0;
	display: block;
	font-weight: inherit;
	line-height: 1.5;
	text-align: right;
}
#message p.name .svg {
	display: inline-block;
	width: 11em;
	height: 2.133em;
	margin-left: 1.5em;
}

.anchorList {
	padding: 80px 0 150px;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
}
.anchorList .btn {
	width: 100%;
}

.photo-slider {
	width: 90%;
	max-width: 1080px;
	margin: 0 auto;
}
.photo img {
	margin: 0 auto 10px;
}

#dish,
#cake {
	position: relative;
	z-index: 0;
	padding-right: 20px;
	padding-left: 20px;
}
#dish p,
#cake p {
	margin-top: 50px;
}
#dish p strong,
#cake p strong {
	display: inline-block;
	margin-bottom: 0.5em;
	font-size: 1.125em;
	font-weight: normal;
}
#dish > .svg,
#cake > .svg {
	position: absolute;
	top: -50px;
	left: 5%;
	z-index: 1001;
}

#dish > .svg {
	max-width: 25%;
}
#cake {
	margin-top: 120px;
}
#cake > .svg {
	max-width: 33%;
}

.cuisine__banner {
	padding-top: 80px;}
.cuisine__banner a {
	display: block;}
.cuisine__banner a + a {
	margin-top: 20px;}
.cuisine__banner a img {
	max-width: 100%;
	height: auto;}

@media (min-width: 641px) {
	#message .textArea {
		display: inline-block;
	}

	#dish p,
	#cake p {
		text-align: center;
	}
}
@media (max-width: 1280px) {
	#dish > .svg,
	#cake > .svg {
		position: absolute;
		left: 20px;
	}
}
@media (max-width: 640px) {
	#message .boxL {
		width: 100%;
		padding: 0 20px;
		text-align: center;
	}
	#message .boxR {
		width: auto;
		margin-top: 50px;
		padding: 0 20px;
	}
	#message .textArea {
		font-size: 1em;
	}
	#message .textArea h2 {
		font-size: 1.454545em;
	}
	#message .textArea p {
		margin-top: 32px;
		letter-spacing: 0.05em;
		line-height: 1.75;
	}
	#message p.name {
		margin-top: 50px;
	}

	.anchorList {
		padding: 64px 20px 80px;
	}
	.anchorList .btn + .btn {
		margin-top: 20px;
	}

	.photo-slider {
		width: 100%;
	}

	#dish > .svg,
	#cake > .svg {
		top: 0;
		left: 0;
	}

	#dish > .svg path,
	#cake > .svg path {
		filter: drop-shadow(5px 5px 0 rgba(255, 255, 255, 1));
	}

	#dish {
		padding-top: 100px;
	}
	#dish > .svg {
		max-width: 42%;
	}
	#cake {
		margin-top: 80px;
		padding-top: 185px;
	}
	#cake > .svg {
		max-width: 56%;
	}
}
