/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */

/* Reset box-model and set borders */

/* ============================================ */

*,
::before,
::after {
	border-style: solid;
	border-width: 0;
	box-sizing: border-box;
	min-width: 0;
}

/* Document */

/* ============================================ */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */

html {
	line-height: 1.15; /* 1 */
	-webkit-text-size-adjust: 100%; /* 2 */
	-webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */

/* ============================================ */

/**
 * Remove the margin in all browsers.
 */

body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
	display: block;
}

/* Vertical rhythm */

/* ============================================ */

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
	margin: 0;
}

/* Headings */

/* ============================================ */

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: inherit;
	font-weight: inherit;
	margin: 0;
}

/* Lists (enumeration) */

/* ============================================ */

ul,
ol {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Lists (definition) */

/* ============================================ */

dt {
	font-weight: bold;
}

dd {
	margin-left: 0;
}

/* Grouping content */

/* ============================================ */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
	border-top-width: 1px;
	box-sizing: content-box; /* 1 */
	clear: both;
	color: inherit;
	height: 0; /* 1 */
	margin: 0;
	overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
	font-family: monospace, monospace; /* 1 */
	font-size: inherit; /* 2 */
}

address {
	font-style: inherit;
}

/* Text-level semantics */

/* ============================================ */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
	background-color: transparent;
	color: inherit;
	text-decoration: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
	font-family: monospace, monospace; /* 1 */
	font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Replaced content */

/* ============================================ */

/**
 * Prevent vertical alignment issues.
 */

svg,
img,
embed,
object,
iframe {
	vertical-align: bottom;
}

/* Forms */

/* ============================================ */

/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */

button,
input,
optgroup,
select,
textarea {
	-webkit-appearance: none; /* 1 */
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border-radius: 0;
	color: inherit;
	font: inherit;
	margin: 0;
	padding: 0;
	text-align: inherit;
	text-transform: inherit; /* 2 */
	vertical-align: middle;
}

/**
 * Correct cursors for clickable elements.
 */

button,
[type=button],
[type=reset],
[type=submit] {
	cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
	cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */

:-moz-focusring {
	outline: auto;
}

select:disabled {
	opacity: inherit;
}

/**
 * Remove padding
 */

option {
	padding: 0;
}

/**
 * Reset to invisible
 */

fieldset {
	margin: 0;
	min-width: 0;
	padding: 0;
}

legend {
	padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
	overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * Correct the outline style in Safari.
 */

[type=search] {
	outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */

::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */

[type=number] {
	-moz-appearance: textfield;
}

/**
 * Clickable labels
 */

label[for] {
	cursor: pointer;
}

/* Interactive */

/* ============================================ */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
	display: list-item;
}

/*
 * Remove outline for editable content.
 */

[contenteditable]:focus {
	outline: auto;
}

/* Tables */

/* ============================================ */

/**
1. Correct table border color inheritance in all Chrome and Safari.
*/

table {
	border-collapse: collapse;
	border-color: inherit; /* 1 */
}

caption {
	text-align: left;
}

td,
th {
	padding: 0;
	vertical-align: top;
}

th {
	font-weight: bold;
	text-align: left;
}

body {
	background: #F3EFEB;
	color: #222222;
	font-family: "Noto Serif JP", serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: 200%;
}

img {
	height: auto;
	max-width: 100%;
}

a {
	transition: opacity 0.3s ease;
}
a:hover {
	opacity: 0.7;
}

.l-inner {
	margin-inline: auto;
	max-width: 375px;
	padding-inline: 20px;
}

.l-mv {
	overflow: hidden;
}

.l-mv__swiper {
	position: relative;
}

.l-mv__swiper::after {
	background: url(../img/bg_coffee-beans.png) no-repeat center center/cover;
	bottom: 14px;
	content: "";
	height: 130px;
	position: absolute;
	right: -17px;
	width: 145px;
	z-index: 1;
}

.l-mv__nav {
	display: none;
}

.l-wrapper {
	overflow: hidden;
}

.l-archive {
	padding-bottom: 58px;
	padding-top: 48px;
}

.l-archive__title {
	color: #382620;
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
}

.l-archive__content-main {
	display: flex;
	flex-direction: column;
	gap: 40px;
	padding-bottom: 61px;
}

.l-archive__sidebar {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.l-archive__sidebar-content {
	background: #F8F8F8;
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding: 20px;
}
.l-products {
	padding-bottom: 58px;
	padding-top: 48px;
}

.l-contact {
	padding-bottom: 61px;
	padding-top: 53px;
}
.l-contact__thanks {
	padding-bottom: 59px;
}
.l-concept {
	padding-bottom: 60px;
	padding-top: 48px;
}

.c-button__wrap {
	display: inline-block;
}

.c-button {
	background: #222222;
	color: #FFF;
	display: block;
	font-size: 16px;
	font-weight: 700;
	height: 72px;
	line-height: normal;
	margin-inline: auto;
	padding: 24px 30px 25px;
	position: relative;
	text-align: center;
	transition: transform 0.3s ease;
	width: 290px;
}

.c-button:hover {
	transform: translate(6px, 6px);
	opacity: 1;
}

.c-button:hover::before {
	bottom: 0;
	right: 0;
}

.c-button::before {
	border-bottom: 1px solid #222;
	border-right: 1px solid #222;
	bottom: -6px;
	content: "";
	height: 72px;
	position: absolute;
	right: -6px;
	transition: right 0.3s ease, bottom 0.3s ease;
	width: 290px;
}

.c-button::after {
	background: url(../img/button-arrow.svg) no-repeat center center/cover;
	content: "";
	height: 24px;
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	width: 16px;
}

.c-category-name {
	position: relative;
}

.c-category-name::after {
	background: url(../img/cotegory-path.svg) no-repeat center center/cover;
	bottom: -4px;
	content: "";
	height: 4px;
	left: 0;
	position: absolute;
	width: 8px;
}

.c-category-name__text {
	background: #222222;
	clip-path: polygon(0% 0%, 100% 0, 95% 50%, 100% 100%, 0% 100%);
	color: #FFF;
	display: block;
	font-size: 12px;
	font-weight: 700;
	line-height: normal;
	padding: 2px 11px 3px;
	text-align: center;
}

.c-category-name__text--lg {
	padding: 3px 15px 4px;
}

.c-header-nav-menu {
	text-align: center;
}

.c-header-nav-menu__en {
	font-family: "Patua One";
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 1.92px;
	line-height: normal;
}

.c-header-nav-menu__ja {
	font-size: 10px;
	font-weight: 500;
	line-height: normal;
	margin-top: 6px;
}

.c-heading {
	text-align: center;
}

.c-heading__en {
	font-family: "Amatic SC";
	font-size: 40px;
	font-weight: 700;
	letter-spacing: 4px;
	line-height: normal;
}

.c-heading__ja {
	font-size: 12px;
	font-weight: 700;
	line-height: normal;
	margin-top: 4px;
}

.c-heading--type2 {
	text-align: left;
}

.c-lunch-heading {
	background: #222222;
	height: 32.3px;
	margin-inline: auto;
	padding: 5px 22.63px 7.3px 22.63px;
	position: relative;
	width: 255.269px;
}

.c-lunch-heading::before {
	background: #222222;
	clip-path: polygon(0 0, 100% 0%, 100% 100%, 0 100%, 30% 50%);
	content: "";
	height: 32.3px;
	left: -17.37px;
	position: absolute;
	top: 5.7px;
	width: 28.653px;
}

.c-lunch-heading::after {
	background: #222222;
	clip-path: polygon(0% 0%, 100% 0, 75% 50%, 100% 100%, 0% 100%);
	content: "";
	height: 32.3px;
	position: absolute;
	right: -17.37px;
	top: 5.7px;
	width: 28.653px;
}

.c-lunch-heading__text {
	color: #FFF;
	font-weight: 700;
	line-height: normal;
}

.c-lunch-img1 {
	display: flex;
	flex-direction: column;
	gap: 9.56px;
}

.c-lunch-img__main1 {
	height: 73.443px;
	margin-inline: auto;
	margin-top: auto;
	width: 88.061px;
}

.c-lunch-img__name1 {
	height: 12.762px;
	margin-inline: auto;
	width: 35.064px;
}

.c-lunch-img2 {
	display: flex;
	flex-direction: column;
	gap: 5.62px;
}

.c-lunch-img__main2 {
	height: 74.237px;
	margin-inline: auto;
	margin-top: auto;
	width: 76.533px;
}

.c-lunch-img__name2 {
	height: 11.875px;
	margin-inline: auto;
	width: 36.14px;
}

.c-lunch-img3 {
	display: flex;
	flex-direction: column;
	gap: 0.62px;
}

.c-lunch-img__main3 {
	height: 79.375px;
	margin-inline: auto;
	margin-top: auto;
	width: 81.83px;
}

.c-lunch-img__name3 {
	height: 11.384px;
	margin-inline: auto;
	width: 43.412px;
}

.c-menu-heading {
	border-bottom: 1px solid #222222;
	border-top: 1px solid #222222;
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
	padding: 2px 10px 3px;
	position: relative;
}

.c-menu-heading::before {
	border-bottom: 2px solid #222222;
	border-top: 2px solid #222222;
	content: "";
	height: calc(100% + 11px);
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

.c-set-head {
	background: #222222;
	color: #FFF;
	font-family: "Patua One";
	font-size: 19px;
	font-style: normal;
	font-weight: 400;
	height: 24px;
	letter-spacing: 2.28px;
	line-height: normal;
	min-width: 24px;
	padding: 0 5.5px 1px 5.5px;
}

.c-shop-button {
	background-color: #222222;
	border: 1px solid #222222;
	color: #FFF;
	font-size: 12px;
	font-weight: 700;
	line-height: normal;
	padding: 6px clamp(0.375rem, -3.261rem + 18.18vw, 1rem) 6px clamp(0.313rem, -3.324rem + 18.18vw, 0.938rem);
	text-align: center;
	transition: all 0.3s ease;
}

.c-shop-button:hover {
	background-color: #FFF;
	color: #222222;
}

.c-tab-button {
	align-items: center;
	background-color: #888888;
	color: #FFF;
	display: grid;
	font-size: 16px;
	font-weight: 700;
	height: 64px;
	line-height: normal;
	max-width: 161px;
	position: relative;
	text-align: center;
	transition: background-color 0.3s ease;
	width: 42.9333333333vw;
}

.c-tab-button::after {
	border: 1px solid #FFF;
	content: "";
	height: 56px;
	left: 50%;
	max-width: 153px;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 40.8vw;
}

.c-menu-heading--type2 {
	font-size: 16px;
	font-weight: 700;
	line-height: normal;
	position: relative;
}

.c-menu-heading--type2::after {
	border: 1px solid #222222;
	bottom: -13px;
	content: "";
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 295px;
}

.c-menu-list {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.c-menu-list__name {
	font-weight: 700;
	line-height: normal;
}

.c-menu-list__price {
	font-family: Damion;
	font-size: 20px;
	font-weight: 400;
	line-height: normal;
	text-align: right;
	width: -moz-fit-content;
	width: fit-content;
}

.c-top-button {
	background: #fff;
	border-radius: 50%;
	bottom: 6px;
	height: 44px;
	padding-bottom: 17px;
	position: fixed;
	right: 8px;
	text-align: center;
	width: 44px;
}

.c-top-button img {
	height: 12px;
	width: 22px;
}

.to-top {
	display: none;
}

.to-top.js-show {
	display: block;
}

.c-heading__en--fv {
	color: #FFF;
	font-size: clamp(2rem, -0.385rem + 10.18vw, 4.5rem);
	letter-spacing: clamp(0.4rem, -0.077rem + 2.04vw, 0.9rem);
	padding-left: 6px;
    margin-top: 3px;
}

.c-heading__ja--fv {
	margin-top: 1px;
	color: #FFF;
	font-size: clamp(0.75rem, 0.511rem + 1.02vw, 1rem);
	letter-spacing: clamp(0.06rem, 0.041rem + 0.08vw, 0.08rem);
}

.c-pagination-button {
	background: #fff;
	border: 1px solid #382620;
	border-radius: 50%;
	color: #382620;
	display: grid;
	font-size: 16px;
	height: 40px;
	line-height: normal;
	place-items: center;
	width: 40px;
}

.c-pagination-button.is-active {
	background: #382620;
	color: #fff;
}

.c-sidebar-title {
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
	padding-bottom: 20px;
	position: relative;
}

.c-sidebar-title::after {
	background: #222222;
	bottom: 0;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 32px;
}

.c-archive-name {
	color: #382620;
	font-size: 16px;
	font-weight: 700;
	line-height: normal;
	padding-left: 12px;
	position: relative;
}

.c-archive-name::before {
	background: url(../img/archive-name-icon.svg) no-repeat center center/cover;
	content: "";
	height: 12px;
	left: 0;
	position: absolute;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 6px;
}

.c-archive-shop-head {
	border-left: 6px solid #382620;
	color: #382620;
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
	padding-left: 8px;
}

.p-concept {
	padding-bottom: 48px;
	position: relative;
}

.p-concept::after {
	background: #EAE0D5;
	bottom: 0;
	content: "";
	height: 100px;
	position: absolute;
	right: 0;
	width: 89.3333333333%;
	z-index: -1;
}

.p-concept__lead {
	font-size: 20px;
	font-weight: 700;
	line-height: 40px;
}

.p-concept__text {
	margin-top: 32px;
}

.p-concept__images {
	margin-top: 36px;
}

.p-concept__img--lg img {
	width: 100%;
}

.p-concept__img--sm {
	display: grid;
	gap: 11px;
	grid-template-columns: repeat(2, auto);
	margin-top: 11px;
}

.p-concept__img img {
	width: 100%;
}

.p-drawer-button {
	position: fixed;
	right: 10px;
	top: 10px;
	z-index: 320;
}

.p-drawer__icon {
	background-color: #382620;
	border-radius: 50%;
	height: 60px;
	position: relative;
	transition: all 0.3s ease;
	width: 60px;
}

.p-drawer__icon.is-show {
	background-color: #fff;
}

.p-drawer__icon.is-show .p-drawer__icon--bar {
	background: #382620;
}

.p-drawer__icon.is-show .p-drawer__icon--bar:nth-of-type(1) {
	top: 30px;
	transform: rotate(45deg);
}

.p-drawer__icon.is-show .p-drawer__icon--bar:nth-of-type(2) {
	display: none;
}

.p-drawer__icon.is-show .p-drawer__icon--bar:nth-of-type(3) {
	top: 30px;
	transform: rotate(-45deg);
}

.p-drawer__icon--bar {
	background: #fff;
	height: 2.25px;
	left: 16px;
	position: absolute;
	transition: all 0.3s ease;
	width: 27px;
}

.p-drawer__icon--bar:nth-of-type(1) {
	top: 22px;
}

.p-drawer__icon--bar:nth-of-type(2) {
	top: 28.75px;
}

.p-drawer__icon--bar:nth-of-type(3) {
	top: 35.5px;
}

.p-drawer {
	background: #382620;
	height: 100vh;
	height: 100svh;
	max-width: 375px;
	opacity: 0;
	position: fixed;
	right: 0;
	top: 0;
	transition: opacity 0.5s ease;
	visibility: hidden;
	width: 100%;
	z-index: 300;
}

.p-drawer.is-show {
	opacity: 1;
	visibility: visible;
}

.p-drawer::backdrop {
	background: #000;
	opacity: 0.7;
}

.p-drawer__logo {
	height: 64px;
	left: 13px;
	position: absolute;
	top: 10px;
	width: 128px;
}

#js-drawer-overlay {
	background: #000;
	height: 100vh;
	opacity: 0;
	position: fixed;
	right: 0;
	top: 0;
	transition: opacity 0.5s ease;
	visibility: hidden;
	width: 100%;
	z-index: 200;
}

#js-drawer-overlay.is-show {
	opacity: 0.5;
	visibility: visible;
}

.p-drawer__body {
	height: -moz-fit-content;
	height: fit-content;
	padding: 120px 40px 40px;
	width: 100%;
}

.p-drawer__list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.p-drawer__link {
	padding-block: 10px;
}

.p-drawer__text--en {
	color: #FFF;
	font-family: "Patua One";
	font-size: 24px;
	font-weight: 400;
	letter-spacing: 2.88px;
	line-height: normal;
}

.p-drawer__text {
	color: #FFF;
	font-size: 10px;
	line-height: normal;
}

.p-drawer__text--ja {
	color: #FFF;
	font-size: 10px;
	line-height: normal;
}

.p-drawer__sns {
	display: flex;
	justify-content: space-between;
	margin-inline: auto;
	width: 184px;
}

.p-drawer__twitter {
	height: 26.396px;
	width: 32.5px;
}

.p-drawer__instagram {
	height: 29.993px;
	width: 30px;
}

.p-drawer__youtube {
	height: 24.609px;
	width: 35px;
}

.header__logo {
	height: 63.084px;
	left: 15px;
	position: fixed;
	top: 10px;
	width: 120.043px;
	z-index: 180;
}

p-mv {
	height: auto;
	position: relative;
}

.swiper-slide-active img,
.swiper-slide-duplicate-active img,
.swiper-slide-prev img {
	animation: zoomUp 7s linear 0s normal both;
}

.mv-card__swiper-container {
	position: relative;
}

.mv-card__swiper-wrapper {
	height: 100%;
	width: 100%;
}

.swiper-img {
	height: 100%; /* 親要素にフィット */
	width: 100%; /* 親要素に合わせる */
}

.swiper-img img {
	height: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.swiper-pagination-bullets.swiper-pagination-horizontal {
	bottom: unset;
	left: unset;
	margin: 0;
	padding: 0;
	right: unset;
	top: unset;
}

.swiper-pagination-bullets.swiper-pagination-horizontal {
	bottom: 4px;
	left: 12px;
	width: -moz-fit-content;
	width: fit-content;
}

.swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet {
	background: #fff;
	height: 8px;
	margin-inline: 8px;
	opacity: 1;
	width: 8px;
}

.swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet-active {
	background: #D59B71;
}

.p-mv-news {
	bottom: 156px;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	z-index: 3;
}

.p-mv__text {
	color: #FFF;
	font-size: 16px;
	font-weight: 700;
	left: 20px;
	letter-spacing: 2.24px;
	line-height: 32px; /* 200% */
	position: absolute;
	top: 124px;
	z-index: 3;
}

.p-grand-menu {
	margin-top: 119px;
	overflow: hidden;
	padding-bottom: 191px;
	position: relative;
}

.p-grand-menu::after {
	background: #EAE0D5;
	content: "";
	height: 88.1882202305%;
	position: absolute;
	right: 0;
	top: 249px;
	width: 73.0666666667%;
	z-index: -1;
}

.p-grand-menu__inner {
	position: relative;
}

.p-grand-menu__inner::after {
	background: url(../img/bg_coffee-beans2.png) no-repeat center center/cover;
	bottom: -261px;
	content: "";
	height: 142.875px;
	position: absolute;
	right: -40px;
	width: 168.808px;
}

.p-grand-menu__heading {
	margin-bottom: 20px;
	margin-top: 44px;
}

.p-grand-menu__btn {
	margin-top: 27px;
	text-align: center;
}

.p-grand-menu-card {
	width: 100%;
}

.p-grand-menu-card__img {
	border: 5px solid #fff;
	width: 100%;
}

.p-grand-menu-card__img img {
	width: 100%;
}

.p-grand-menu-card__name {
	font-weight: 700;
	line-height: normal;
	margin-top: 7px;
}

.p-grand-menu-card__price {
	font-family: Damion;
	font-size: 24px;
	font-weight: 400;
	line-height: normal;
}

.p-grand-menu-cards {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	margin-top: 24px;
	-moz-column-gap: clamp(0.5rem, -5.568rem + 29.09vw, 1.25rem);
	column-gap: clamp(0.5rem, -5.568rem + 29.09vw, 1.25rem);
	row-gap: 22px;
}

.p-lunch-set-card__body {
	display: flex;
	flex-direction: row;
	gap: 6px;
	margin-top: 8px;
}

.p-lunch-set-card__img {
	width: 100%;
}

.p-lunch-set-card__text {
	font-weight: 700;
	line-height: normal;
}

.p-lunch-set-cards {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-moz-column-gap: clamp(0.5rem, -5.568rem + 29.09vw, 1.25rem);
	column-gap: clamp(0.5rem, -5.568rem + 29.09vw, 1.25rem);
	row-gap: 20px;
}

.p-lunch-set {
	background: #F7F6F4;
	border-radius: 8px;
	padding: 21px 10px 20px 7px;
}

.p-lunch-set__images {
	display: flex;
	flex-direction: row;
	justify-content: center;
	gap: 12px;
}

.p-lunch-set__plus {
	height: 13.323px;
	margin-top: 25px;
	width: 13.359px;
}

.p-lunch-set__desc {
	margin-top: 21px;
	text-align: center;
}

.p-lunch-set__name {
	font-size: 16px;
	font-weight: 700;
	line-height: normal;
}

.p-lunch-set__price {
	font-family: Damion;
	font-size: 40px;
	font-weight: 400;
	line-height: normal;
}

.p-lunch-set__time {
	font-size: 12px;
	font-weight: 700;
	line-height: normal;
	margin-top: 17px;
	position: relative;
}

.p-lunch-set__time::before {
	background: url(../img/dotted-line.svg) no-repeat center center/cover;
	content: "";
	height: 4px;
	left: 50%;
	position: absolute;
	top: -15px;
	transform: translateX(-50%);
	width: 148px;
}

.p-lunch {
	margin-bottom: -235px;
	overflow: hidden;
	padding-bottom: 235px;
	padding-top: 44px;
}

.p-lunch__inner {
	background: #fff;
	position: relative;
}

.p-lunch__inner::after {
	background: url(../img/bg_coffee-leaves2.png) no-repeat center center/cover;
	bottom: -148px;
	content: "";
	height: 141px;
	left: -43px;
	position: absolute;
	width: 192px;
}

.p-lunch__wrap {
	background: #EAE0D5;
	padding-bottom: 62px;
	padding-top: 56px;
}

.p-lunch__title {
	margin-inline: auto;
	position: relative;
	width: -moz-fit-content;
	width: fit-content;
}

.p-lunch__title::before {
	background: url(../img/fukidashi.svg) no-repeat center center/cover;
	content: "";
	height: 95.591px;
	position: absolute;
	right: -73px;
	top: -95px;
	width: 207px;
	z-index: 1;
}

.p-lunch__heading {
	left: 50%;
	position: absolute;
	top: 114px;
	transform: translateX(-50%);
	z-index: 1;
}

.p-lunch__content {
	margin-top: 62px;
	padding-bottom: 20px;
	padding-top: 39px;
	position: relative;
}

.p-lunch__set {
	margin-top: 20px;
}

.p-menu-card {
	width: 100%;
}

.p-menu-card__img {
	width: 100%;
}

.p-menu-card__img img {
	width: 100%;
}

.p-menu-card__name {
	font-weight: 700;
	line-height: normal;
	margin-top: 8px;
}

.p-menu-card__price {
	font-family: Damion;
	font-size: 24px;
	font-weight: 400;
	line-height: normal;
	text-align: center;
}

.p-menu-cards {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-moz-column-gap: clamp(0.5rem, -5.568rem + 29.09vw, 1.25rem);
	column-gap: clamp(0.5rem, -5.568rem + 29.09vw, 1.25rem);
	row-gap: 20px;
}

.p-mv-news {
	background-color: rgba(255, 255, 255, 0.85);
	height: 124px;
	max-width: 335px;
	padding: 12px;
	position: relative;
	width: 89.3333333333%;
}

.p-mv-news::after {
	background: url(../img/img-balloon-pickup.png) no-repeat center center/cover;
	content: "";
	height: 71.379px;
	position: absolute;
	right: 0;
	top: -35px;
	width: 126px;
}

.p-mv-news__cat-name {
	left: -8px;
	position: absolute;
	top: 8px;
	z-index: 5;
}

.p-mv-news__content {
	align-items: center;
	display: grid;
	gap: 16px;
	grid-template-columns: 100px 1fr;
}

.p-mv-news__img {
	height: 100px;
	position: relative;
	width: 100px;
}

.p-mv-news__img img {
	width: 100%;
}

.p-mv-news__date {
	font-size: 12px;
	line-height: normal;
}

.p-mv-news__text {
	font-size: 12px;
	font-weight: 700;
	line-height: 18px; /* 150% */
	margin-top: 10px;
}

.p-news-card {
	position: relative;
	width: 100%;
	opacity: 1;
}

.p-news-card:hover .p-news-card__img img {
	transform: scale(1.1);
}

.p-news-card__img {
	overflow: hidden;
	width: 100%;
}

.p-news-card__img img {
	transition: transform 0.3s ease;
	width: 100%;
}

.p-news-card__cat-name {
	left: -8px;
	position: absolute;
	top: 10px;
	z-index: 5;
}

.p-news-card__cat-name--lg {
	top: 19px;
}

.p-news-card__lead {
	font-size: 12px;
	font-weight: 700;
	line-height: 18px;
	margin-top: 6.25px;
}

.p-news-card__lead--lg {
	font-size: 14px;
	line-height: 24px;
	margin-top: 10px;
}

.p-news-card__text {
	font-size: 12px;
	font-weight: 700;
	line-height: 18px;
	margin-top: 7px;
}

.p-news-card__date {
	font-size: 12px;
	font-weight: 500;
	line-height: normal;
	margin-top: 8px;
}

.p-news-card__date--lg {
	margin-top: 10px;
}

.p-news-cards {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-moz-column-gap: 19px;
	column-gap: 19px;
	row-gap: 19px;
}
.p-news-cards a {
	opacity: 1;
}
.p-pick-up-news-card {
	display: grid;
	gap: 14px;
	grid-template-columns: 100px 1fr;
}

.p-pick-up-news-card__img {
	height: auto;
	width: 100px;
}

.p-pick-up-news-card__img img {
	width: 100%;
}

.p-pick-up-news-card__text {
	font-weight: 700;
	line-height: 24px; /* 171.429% */
}

.p-pick-up-news-card__date {
	font-size: 12px;
	line-height: normal;
	margin-top: 10px;
}

.p-sns-link {
	display: flex;
	justify-content: space-between;
	margin-inline: auto;
	width: 120px;
}

.p-sns-link__twitter {
	height: 15.838px;
	width: 19.5px;
}

.p-sns-link__instagram {
	height: 17.996px;
	width: 18px;
}

.p-sns-link__youtube {
	height: 14.766px;
	width: 21px;
}

.p-drink-menu {
	margin-inline: auto;
	margin-top: 24px;
	max-width: 295px;
}

.p-drink-menu__head {
	margin-bottom: 11px;
}

.p-drink-menu__lists {
	display: flex;
	flex-direction: column;
	gap: 8.5px;
	padding-bottom: 13px;
	padding-top: 11px;
}

.p-grand-menu__img {
	display: none;
}

.p-grand-menu__img img {
	width: 100%;
}

.p-gallery {
	background: #EAE0D5;
	padding-bottom: 106px;
	padding-top: 60px;
}

.p-gallery__title {
	margin-inline: auto;
	position: relative;
	width: -moz-fit-content;
	width: fit-content;
}

.p-gallery__title::after {
	background: url(../img/fukidashi2.png) no-repeat center center/cover;
	content: "";
	height: 104.168px;
	left: -153px;
	position: absolute;
	top: -117px;
	width: 200px;
}

.p-gallery__content {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(2, 1fr);
	margin-bottom: 40px;
	margin-top: 40px;
}
#sbi_images {
	display: grid;
	gap: clamp(1.25rem, 1.011rem + 1.02vw, 1.5rem) !important;
	grid-template-columns: repeat(2, 1fr);
	margin-bottom: 5px;
    margin-top: 29px;
}
.p-gallery__button {
	text-align: center;
}
#sbi_load {
	
}
#sbi_load .sbi_follow_btn .sbi_custom a {
    text-align: center;
    display: block;
    width: 290px;
    height: 72px;
    color: #FFF !important; /* !important を追加 */
    margin-inline: auto;
    text-align: center;
    font-size: 16px !important; /* 必要に応じて追加 */
    font-weight: 700 !important; /* 必要に応じて追加 */
    line-height: normal;
    padding: 24px 30px 25px !important; /* 必要に応じて追加 */
    background: #222 !important;  /* !important を追加 */
    position: relative;
    transition: transform 0.3s ease;
}

#sbi_load .sbi_follow_btn .sbi_custom a:hover {
  transform: translate(6px, 6px);
}

#sbi_load .sbi_follow_btn .sbi_custom a::before {
    content: '';
    position: absolute;
    right: -6px;
    bottom: -6px;
    border-right: 1px solid #222 !important; /* 必要に応じて追加 */
    border-bottom: 1px solid #222 !important; /* 必要に応じて追加 */
    width: 290px;
    height: 72px;
    transition: right 0.3s ease, bottom 0.3s ease;
}

#sbi_load .sbi_follow_btn .sbi_custom a::after {
	content: '';
	position: absolute;
	background: url(./img/button-arrow.svg) no-repeat center center / cover;
	width: 16px;
	height: 24px;
	top: 50%;
	right: 12px;
	transform: translateY(-50%);

}.p-news {
	padding-bottom: 64px;
	padding-top: 116px;
}

.p-news__inner {
	position: relative;
}

.p-news__inner::before {
	background: url(../img/bg_plate.png) no-repeat center center/cover;
	content: "";
	height: 185.071px;
	left: -52px;
	position: absolute;
	top: -125px;
	width: 204.493px;
}

.p-news__content {
	margin-bottom: 39px;
	margin-top: 39px;
}

.p-news__pickup {
	margin-bottom: 22px;
}

.p-news__button {
	margin-left: -7px;
	text-align: center;
}

.p-access {
	margin-bottom: -147px;
	overflow: hidden;
	padding-bottom: 147px;
}

.p-access__wrap {
	background: #EAE0D5;
	margin-top: 103px;
	padding-bottom: 93px;
	padding-top: 80px;
}

.p-access__inner {
	position: relative;
}

.p-access__inner::before {
	background: url(../img/bg_bread.png) no-repeat center center/cover;
	content: "";
	height: 180px;
	position: absolute;
	right: -40px;
	top: -179px;
	width: 190.5px;
}

.p-access__inner::after {
	background: url(../img/bg_coffee-beans3.png) no-repeat center center/cover;
	bottom: -150px;
	content: "";
	height: 114px;
	left: -32px;
	position: absolute;
	transform: scale(-1, 1);
	width: 128px;
}

.p-access__title {
	margin-bottom: 40px;
	margin-inline: auto;
	position: relative;
	width: -moz-fit-content;
	width: fit-content;
}

.p-access__title::before {
	background: url(../img/img_balloon-access.png) no-repeat center center/cover;
	content: "";
	height: 172.134px;
	left: -168px;
	position: absolute;
	top: -123px;
	width: 200px;
}

.p-access__map {
	border: 5px solid #fff;
	height: 188px;
	margin-inline: auto;
	max-width: 100%;
}

.p-access__map iframe {
	height: 100%;
	width: 100%;
}

.p-access__content {
	margin-top: 40px;
}

.p-access__lists {
	display: flex;
	flex-direction: column;
	gap: 31px;
}

.p-access__lists + .p-access__lists {
	margin-top: 31px;
}

.p-access-list {
	align-items: flex-start;
	display: grid;
	gap: 24px;
	grid-template-columns: 56px 1fr;
	position: relative;
}

.p-access-list::after {
	border: 1px solid #222222;
	bottom: -12px;
	content: "";
	left: 50%;
	position: absolute;
	position: absolute;
	transform: translateX(-50%);
	width: 100%;
}

.p-access-list__head {
	font-weight: 700;
	line-height: normal;
}

.p-access-list__text {
	font-weight: 700;
	line-height: 24px;
}

.p-footer {
	background: #382620;
	height: 147px;
	padding-bottom: 14px;
	padding-top: 40px;
	text-align: center;
	width: 100%;
}

.p-footer__sns {
	display: flex;
	height: 32px;
	justify-content: space-between;
	margin-bottom: 34px;
	margin-inline: auto;
	width: 140px;
}

.p-footer__twitter {
	height: 21.117px;
	width: 26px;
}

.p-footer__twitter img {
	height: auto;
	width: 100%;
}

.p-footer__instagram {
	height: 23.995px;
	width: 24px;
}

.p-footer__youtube {
	height: 19.687px;
	width: 28px;
}

.p-footer__copyright {
	color: #FFF;
	font-size: 12px;
	line-height: 24px;
}

.p-breadcrumb {
	color: #382620;
	display: flex;
	flex-direction: row;
	font-size: 12px;
	font-weight: 700;
	gap: 6px;
	line-height: normal;
}

.p-breadcrumb__gt {
	color: #382620;
	font-size: 12px;
	font-weight: 700;
	line-height: normal;
}

.p-concept-top {
	margin-top: -5px;
	overflow: hidden;
	padding-bottom: 147px;
	position: relative;
}
.p-concept-top__inner {
	max-width: 375px;
	margin-inline: auto;
	padding-inline: 20px;
}
.p-concept-top__content {
	position: relative;
}
.p-concept-top__content::after {
	background: url(../img/bg_coffee-leaves.png) no-repeat center center/cover;
	bottom: -147px;
	content: "";
	height: 135px;
	position: absolute;
	right: -53px;
	width: 119px;
	z-index: 1;
}

.p-concept-top__main {
	font-size: 20px;
	font-weight: 700;
	line-height: 40px; /* 200% */
	margin-top: 34px;
}

.p-concept-top__sub {
	line-height: 28px;
	margin-top: 31px;
}

.p-concept-top__btn {
	margin-top: 56px;
	text-align: center;
}

.p-concept-top__img {
	display: block;
	margin-left: calc(50% - 50vw);
	margin-top: 86px;
	position: relative;
	width: 94.0298507463%;
}

.p-concept-top__img::after {
	background: #EAE0D5;
	bottom: -73px;
	content: "";
	height: 100px;
	left: 0;
	position: absolute;
	width: 355px;
	z-index: -1;
}

.p-concept-top__img img {
	height: auto;
	width: 100%;
}

.p-fv__img {
	height: auto;
	position: relative;
	width: 100%;
}

.p-fv__img img {
	height: 100%;
	width: 100%;
}

.p-fv__img::before {
	border: 1px solid #fff;
	content: "";
	height: 81.6666666667%;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 94.1333333333%;
}

.p-fv__img::after {
	border: 2px solid #fff;
	content: "";
	height: 90%;
	left: 50%;
	position: absolute;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 96.8%;
}

.p-fv__title {
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
}

.p-fv__breadcrumb {
	margin-top: 4px;
	padding-left: 10px;
}

.p-concept-pasta {
	padding-top: 75px;
	position: relative;
}

.p-concept-pasta::after {
	background: #EAE0D5;
	bottom: -20px;
	content: "";
	height: 227px;
	left: 0;
	position: absolute;
	width: 284px;
	z-index: -1;
}

.p-concept-pasta__img {
	margin-left: auto;
	margin-top: 36px;
	padding-bottom: 69px;
	position: relative;
	width: 84.4776119403%;
}

.p-concept-pasta__img img {
	width: 100%;
}

.p-concept-pasta__img--sm {
	bottom: 0;
	height: auto;
	left: -52px;
	position: absolute;
	width: 64.6268656716%;
}

.p-concept-bread {
	padding-bottom: 36px;
	padding-top: 95px;
	position: relative;
}

.p-concept-bread::after {
	background: #EAE0D5;
	bottom: 0;
	content: "";
	height: 239px;
	position: absolute;
	right: 20px;
	width: 49.0666666667%;
	z-index: -1;
}

.p-concept-bread__img {
	margin-top: 35px;
	width: 87.7611940299%;
}

.p-concept-bread__img img {
	width: 100%;
}

.p-menu-list-card__img img {
	width: 100%;
	aspect-ratio: 1;
}

.p-menu-list-card__name {
	font-weight: 700;
	line-height: normal;
	margin-top: 8px;
}

.p-menu-list-card__price {
	font-family: Damion;
	font-size: 24px;
	font-weight: 400;
	line-height: normal;
	text-align: center;
}

.p-archive-menu {
	padding-block: 60px;
}

.p-archive-menu__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-moz-column-gap: 13px;
	column-gap: 13px;
	justify-content: center;
	margin-inline: auto;
	max-width: 335px;
	row-gap: 12px;
	width: 89.3333333333vw;
}

.p-archive-menu__content {
	margin-top: 60px;
}

.p-archive-menu__item {
	transition: opacity 0.3s ease;
}

.p-archive-menu__item.is-active {
	background-color: #382620;
	pointer-events: none;
}

.p-archive-menu__item:hover {
	opacity: 0.7;
}

.p-menu-list-cards {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	row-gap: 24px;
	-moz-column-gap: 19px;
	column-gap: 19px;
}

.p-pagination {
	display: flex;
	gap: 12px;
	justify-content: center;
	margin-top: -3px;
}

.p-archive-news {
	display: grid;
	gap: 14px;
	grid-template-columns: 33.8983050847% 1fr;
}

.p-archive-news__img {
	height: clamp(5.281rem, -0.355rem + 28.18vw, 6.25rem);
	width: clamp(5.281rem, -0.355rem + 28.18vw, 6.25rem);
}

.p-archive-news__img img {
	height: auto;
	width: 100%;
}

.p-archive-news__text {
	font-weight: 700;
	line-height: 24px;
}

.p-archive-news__date {
	font-size: 12px;
	line-height: normal;
	margin-top: 10px;
}

.p-archive-news-list {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.p-archive-name-list {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.p-single {
	padding-bottom: 62px;
	padding-top: 48px;
}

.p-single__heading {
	margin-bottom: 36px;
}

.p-single__thumbnail {
	height: auto;
	width: 100%;
}

.p-single__thumbnail img {
	width: 100%;
}

.p-single__title {
	color: #382620;
	font-size: 20px;
	font-weight: 700;
	line-height: 28px;
	margin-bottom: 25px;
	margin-top: 24px;
}

.p-single__date {
	display: flex;
	gap: 40px;
}

.p-single__date-text {
	color: #382620;
	font-weight: 700;
	line-height: normal;
	position: relative;
}

.p-single__date-text::after {
	background: #382620;
	content: "";
	height: 18px;
	position: absolute;
	position: absolute;
	right: -20px;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
}

.p-single__date-category {
	color: #382620;
	font-weight: 700;
	line-height: normal;
}

.p-single__body h2 {
	border-left: 4px solid #382620;
	color: #382620;
	font-size: 18px;
	font-weight: 700;
	line-height: 28px;
	margin-bottom: 18px;
	margin-top: 75px;
	padding-left: 16px;
}

.p-single__body h3 {
	border-bottom: 1px solid #382620;
	color: #382620;
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
	margin-bottom: 20px;
	margin-top: 54px;
	padding-bottom: 12px;
}

.p-single__body h4 {
	color: #382620;
	font-weight: 700;
	line-height: 24px;
	margin-bottom: 14px;
	margin-top: 54px;
}

.p-single__body ul {
	margin-bottom: 28px;
    margin-top: 24px;
    padding-left: 34px;
}

.p-single__body li {
	list-style: "・";
}

.p-single__body img {
	margin-block: 36px;
	width: 100%;
}

.p-single__body blockquote {
	background: #fff;
	padding: 20px 24px 25px;
}

.p-single__body blockquote a {
	display: block;
	line-height: normal;
	margin-top: 15px;
	padding-right: 20px;
	text-align: right;
}

.p-single__body blockquote a:hover {
	opacity: 0.7;
}

.p-single__related {
	margin-top: 98px;
}

.p-single__related-title {
	color: #382620;
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
	text-align: center;
}

.p-single__related-items {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-moz-column-gap: 19px;
	column-gap: 19px;
	margin-top: 40px;
	row-gap: 20px;
}
.p-single__related-items a {
	opacity: 1;
}
.p-single-pagination {
	align-items: center;
	color: #382620;
	display: flex;
	font-weight: 700;
	justify-content: space-between;
	line-height: 24px;
	margin-block: 32px;
}

.p-single-pagination__prev {
	padding-left: 16px;
	position: relative;
}

.p-single-pagination__prev::before {
	background: url(../img/left-icon.svg) no-repeat center center/cover;
	content: "";
	height: 11.735px;
	left: 0;
	position: absolute;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 6.277px;
}

.p-single-pagination__archive {
	border: 1px solid #382620;
	padding: 8px 28px;
}

.p-single-pagination__next {
	padding-right: 16px;
	position: relative;
}

.p-single-pagination__next::after {
	background: url(../img/right-icon.svg) no-repeat center center/cover;
	content: "";
	height: 11.735px;
	position: absolute;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 6.277px;
}

.p-archive-shop {
	padding-top: 48px;
	margin-bottom: -4px;
}

.p-archive-shop__content {
	margin-bottom: 73px;
	margin-top: 19px;
}

.p-shop-card__img img {
	width: 100%;
}

.p-shop-card__name {
	font-size: 14px;
	font-weight: 700;
	line-height: normal;
	margin-top: 8px;
}
.p-shop-card:nth-of-type(1) .p-shop-card__name {
	font-size: 20px;
	margin-top: 12px;
}
.p-shop-card:nth-of-type(1) .p-shop-card__price {
	font-size: 28px;
	margin-top: -1px;
}
.p-shop-card:nth-of-type(1) .p-shop-card__button {
	margin-top: 12px;
}
.p-shop-card__price {
	font-family: Damion;
	font-size: 24px;
	font-weight: 400;
	line-height: normal;
	text-align: center;
	margin-top: -1px;
}

.p-shop-card__button {
	margin-top: 13px;
	text-align: center;
}

.p-shop-cards__wrapper {
	display: grid;
	gap: 41px 19px;
	grid-template-areas: "item1 item1" "item1 item1" "item2 item3" "item4 item5" "item6 item7" "item8 item9";
	grid-template-columns: repeat(2, 1fr);
}

.p-shop-card:nth-of-type(1) {
	grid-area: item1;
}

.p-shop-card:nth-of-type(2) {
	grid-area: item2;
}

.p-shop-card:nth-of-type(3) {
	grid-area: item3;
}

.p-shop-card:nth-of-type(4) {
	grid-area: item4;
}

.p-shop-card:nth-of-type(5) {
	grid-area: item5;
}

.p-shop-card:nth-of-type(6) {
	grid-area: item6;
}

.p-shop-card:nth-of-type(7) {
	grid-area: item7;
}

.p-shop-card:nth-of-type(8) {
	grid-area: item8;
}

.p-shop-card:nth-of-type(9) {
	grid-area: item9;
}

.p-shop-news {
	background: #FFF;
	border: 4px solid #382620;
	margin-top: 61px;
	padding: 34px clamp(1.25rem, -4.568rem + 29.09vw, 2.25rem) 36px;
	position: relative;
	width: 100%;
}

.p-shop-news::before {
	border: 1px solid #382620;
	content: "";
	height: calc(100% - 12px);
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: calc(100% - 12px);
}

.p-shop-news__body {
}

.p-shop-news__lead {
	color: #382620;
	font-size: 16px;
	font-weight: 700;
	line-height: 28px;
	margin-bottom: 46px;
	position: relative;
	text-align: center;
}

.p-shop-news__lead::after {
	background: url(../img/dotted-line2.svg) repeat-x center center/cover;
	bottom: -24px;
	content: "";
	height: 3px;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 100%;
}

.p-shop-news__text {
	color: #382620;
	font-size: 12px;
	font-weight: 500;
	line-height: 24px;
}

.p-shop-news__img {
	margin-top: 34px;
}

.p-shop-news__img img {
	width: 100%;
}

.p-contact__title h2 {
	color: #382620;
	font-size: 20px;
	font-weight: 700;
	text-align: center;
}

.p-contact__title p {
	line-height: 24px;
	margin-top: 26px;
	text-align: left;
}

.p-contact__form form {
	display: flex;
	flex-direction: column;
	gap: 37px;
	margin-top: 60px;
}

.p-contact__head {
	color: #382620;
	font-size: 16px;
	font-weight: 700;
	line-height: normal;
}

.p-contact__head span.--must {
	display: inline-block;
	position: relative;
}

.p-contact__head span.--must::after {
	background: #F07317;
	border-radius: 2px;
	color: #FFF;
	content: "必須";
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	left: calc(100% + 8px);
	line-height: normal;
	padding: 1px 6px 2px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	white-space: nowrap;
}

.p-contact__privacy {
	color: #382620;
	line-height: 24px;
	margin-top: -17px;
}

.p-contact__submit {
	margin-top: -25px;
}

input[type=text],
input[type=email],
input[type=tel],
select,
textarea {
	background: #FFF;
	border: 1px solid #382620;
	border-radius: 6px;
	margin-top: 9px;
	padding: 9px 16px 10px;
	width: 100%;
}

input[type=text]::-moz-placeholder,
input[type=email]::-moz-placeholder,
input[type=tel]::-moz-placeholder,
select::-moz-placeholder,
textarea::-moz-placeholder {
	color: #CCC;
	font-size: 16px;
	line-height: normal;
}

input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=tel]::placeholder,
select::placeholder,
textarea::placeholder {
	color: #CCC;
	font-size: 16px;
	line-height: normal;
}

textarea {
	height: 200px;
	resize: vertical;
}

input[type=radio] {
	height: 1px;
	position: absolute;
	width: 1px;
	clip: rect(0, 0, 0, 0);
}

input[type=radio]:checked + span.wpcf7-list-item-label::after {
	opacity: 1;
}

.wpcf7-radio {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 21px;
	padding-left: 20px;
}

.wpcf7-radio span.wpcf7-list-item-label {
	color: #382620;
	display: inline-block;
	font-size: 16px;
	line-height: normal;
	position: relative;
}

.wpcf7-radio span.wpcf7-list-item-label::before {
	background: #FFF;
	border: 1px solid #382620;
	border-radius: 50%;
	content: "";
	height: 24px;
	left: -34px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 24px;
}

.wpcf7-radio span.wpcf7-list-item-label::after {
	background: #F07317;
	border-radius: 6px;
	content: "";
	height: 12px;
	left: -28px;
	opacity: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 12px;
}

.row.jc-center {
	justify-content: center;
}

.p-contact__submit {
	text-align: center;
}

.p-contact__submit-wrap {
	display: block;
	margin-inline: auto;
	position: relative;
	transition: transform 0.3s ease;
	width: 290px;
}

.p-contact__submit-wrap:hover {
	transform: translate(6px, 6px);
}

.p-contact__submit-wrap:hover::before {
	bottom: 0;
	right: 0;
}

.p-contact__submit-wrap::before {
	border-bottom: 1px solid #222;
	border-right: 1px solid #222;
	bottom: -6px;
	content: "";
	height: 72px;
	position: absolute;
	right: -6px;
	transition: right 0.3s ease, bottom 0.3s ease;
	width: 290px;
	z-index: -1;
}

.p-contact__submit-wrap::after {
	background: url(../img/button-arrow.svg) no-repeat center center/cover;
	content: "";
	height: 24px;
	position: absolute;
	right: 12px;
	top: calc(50% + 15px);
	transform: translateY(-50%);
	width: 16px;
}

.p-contact__submit-wrap .p-contact__button {
	background: #222222;
	color: #FFF;
	cursor: pointer;
	display: inline-block;
	font-size: 16px;
	font-weight: 700;
	height: 72px;
	line-height: normal;
	margin-inline: auto;
	padding: 24px 30px 25px;
	text-align: center;
	width: 100%;
}

.wpcf7-spinner {
	display: none;
}

.u-separate {
	margin-block: 24px;
}

@media screen and (min-width: 428px) {

.l-inner {
	max-width: clamp(23.438rem, 7.309rem + 60.29vw, 36.25rem);
}
.p-concept-top__inner {
	max-width:  clamp(23.438rem, 7.309rem + 60.29vw, 36.25rem);
}
.c-set-head {
	font-size: clamp(1.188rem, 0.165rem + 3.82vw, 2rem);
	height: clamp(1.5rem, -0.467rem + 7.35vw, 3.063rem);
	letter-spacing: clamp(0.142rem, -0.004rem + 0.3vw, 0.24rem);
	min-width: clamp(1.5rem, -0.467rem + 7.35vw, 3.063rem);
	padding-bottom: clamp(0.063rem, -0.252rem + 1.18vw, 0.313rem);
	padding-inline: clamp(0.344rem, -0.325rem + 2.5vw, 0.875rem);
	padding-top: clamp(0rem, -0.315rem + 1.18vw, 0.25rem);
}

.p-grand-menu-card__price {
	font-size: clamp(1.5rem, 0.871rem + 2.35vw, 2rem);
}

.p-lunch-set-card__img {
	width: 100%;
}

.p-lunch-set-card__text {
	font-size: clamp(0.875rem, 0.56rem + 1.18vw, 1.125rem);
}

.p-menu-card__price {
	font-size: clamp(1.5rem, 0.871rem + 2.35vw, 2rem);
}

}

@media screen and (min-width: 768px) {

.l-inner {
	max-width: 1180px;
	padding-inline: 40px;
}

.l-mv {
	margin-bottom: -285px;
	padding-bottom: 285px;
}

.l-archive {
	padding-top: 80px;
	padding-bottom: 101px;
}

.l-archive__title {
	font-size: 24px;
	margin-left: -7px;
}

.l-archive__contents {
	display: flex;
	justify-content: center;
	width: clamp(43.188rem, 4.563rem + 80.47vw, 68.938rem);
	padding-left: 3px;
	gap: clamp(2.5rem, -0.5rem + 6.25vw, 4.5rem);
}

.l-archive__content-main {
	width: 65.4545454545%;
	gap: 24px;
}

.l-archive__sidebar {
	gap: 60px;
	min-width: 260px;
	width: 27.2727272727%;
}

.l-products {
	padding-bottom: 162px;
	padding-top: 80px;
}

.l-contact {
	padding-bottom: 167px;
	padding-top: 80px;
}
.l-contact__thanks {
	padding-bottom: 159px;
}
.l-contact__inner {
	margin-inline: auto;
	width: 768px;
}

.l-concept {
	padding-bottom: 239px;
	padding-top: 80px;
}

.c-category-name__text--sm {
	font-size: 12px !important;
	padding: 3px 15px 4px 15px !important;
}
.c-category-name__text {
	font-size: 14px;
	padding: 4px 15px 3px 14px;
}

.c-category-name__text--lg {
	font-size: 16px;
}

.c-heading__en {
	font-size: 52px;
	letter-spacing: 10.4px;
	margin-left: 8px;
}

.c-heading__ja {
	font-size: 14px;
	margin-top: 7px;
}

.c-heading__en--type2 {
	margin-left: 0;
}

.c-lunch-heading {
	height: 37px;
	padding-bottom: 5px;
	padding-inline: 19px;
	padding-top: 6px;
	width: 308px;
}

.c-lunch-heading::before {
	height: 37px;
	left: -22px;
	top: 7px;
	width: 35px;
}

.c-lunch-heading::after {
	height: 37px;
	right: -22px;
	top: 7px;
	width: 35px;
}

.c-lunch-heading__text {
	font-size: 18px;
}

.c-lunch-img1 {
	gap: 15px;
	height: 190px;
	width: 200px;
}

.c-lunch-img__main1 {
	height: 145px;
	width: 172px;
}

.c-lunch-img__name1 {
	height: 25px;
	width: 68px;
}

.c-lunch-img2 {
	gap: 12px;
	height: 190px;
	width: 200px;
}

.c-lunch-img__main2 {
	height: 145px;
	width: 150px;
}

.c-lunch-img__name2 {
	height: 23px;
	width: 70px;
}

.c-lunch-img3 {
	gap: 0;
	height: 190px;
	width: 200px;
}

.c-lunch-img__main3 {
	height: 155px;
	width: 160px;
}

.c-lunch-img__name3 {
	height: 22px;
	width: 85px;
}

.c-menu-heading {
	font-size: 24px;
	padding: 5px 21px 4px;
}

.c-set-head {
	font-size: clamp(1.188rem, -0.031rem + 2.54vw, 2rem);
	height: clamp(1.5rem, -0.844rem + 4.88vw, 3.063rem);
	letter-spacing: clamp(0.142rem, -0.004rem + 0.3vw, 0.24rem);
	min-width: clamp(1.5rem, -0.844rem + 4.88vw, 3.063rem);
	padding-bottom: clamp(0.063rem, -0.313rem + 0.78vw, 0.313rem);
	padding-inline: clamp(0.344rem, -0.453rem + 1.66vw, 0.875rem);
	padding-top: clamp(0rem, -0.375rem + 0.78vw, 0.25rem);
}

.c-menu-heading--type2::after {
	width: 100%;
}

.c-top-button {
	bottom: 27px;
	right: 20px;
}

.c-heading__en--fv {
	font-size: 72px;
	letter-spacing: 14.4px;
}

.c-heading__ja--fv {
	font-size: 16px;
	letter-spacing: 1.28px;
}

.c-archive-shop-head {
	font-size: 24px;
	padding-left: 16px;
}

.p-concept {
	padding-bottom: 0;
}

.p-concept::after {
	bottom: -100px;
	height: 200px;
	width: 76.875%;
}

.p-concept__content {
	align-items: center;
	display: flex;
	flex-direction: row;
	gap: clamp(1.25rem, -3.531rem + 9.96vw, 4.438rem);
}

.p-concept__body {
	width: clamp(19.313rem, 11.813rem + 15.63vw, 24.313rem);
}

.p-concept__text {
	margin-top: 26px;
}

.p-concept__images {
	margin-top: 0;
	width: clamp(22.438rem, -3.906rem + 54.88vw, 40rem);
}
.p-concept__img--sm {
	margin-top: 20px;
	gap: 20px;
}
.p-header-nav {
	display: flex;
	flex-direction: column;
	gap: 32px;
	padding-top: 173px;
}

.p-header-nav__sns-link {
	margin-top: 51px;
}

.mv-card__swiper-container::after {
	background: #EAE0D5;
	bottom: -60px;
	content: "";
	height: 398px;
	position: absolute;
	right: 0;
	width: 91.1111111111%;
}

.mv-card__swiper-slide {
	height: 735px;
	width: 100%;
}

.swiper-pagination-bullets.swiper-pagination-horizontal {
	bottom: 8px;
}

.p-mv-news {
	bottom: 175px;
	left: auto;
	right: calc(-100% + 388px + 20px);
	transform: unset;
}

.p-mv__text {
	bottom: 61px;
	font-size: 16px;
	left: clamp(1.25rem, -3.955rem + 10.84vw, 3.5rem);
	letter-spacing: 2.8px;
	line-height: normal;
	top: auto;
}

.p-mv__text p {
	margin-top: 16px;
}

.p-grand-menu {
	margin-top: 161px;
	padding-bottom: 244px;
}

.p-grand-menu::after {
	height: 83.3333333333%;
	top: 383px;
	width: 80%;
}

.p-grand-menu__btn {
	margin-top: 54px;
}

.p-grand-menu-card__img {
	border: 8px solid #fff;
}

.p-grand-menu-card__name {
	font-size: clamp(0.875rem, 0.313rem + 1.17vw, 1.25rem);
	margin-top: 11px;
}

.p-grand-menu-card__price {
	font-size: clamp(1.5rem, 0.75rem + 1.56vw, 2rem);
}

.p-grand-menu-cards {
	grid-template-columns: repeat(3, 1fr);
	margin-top: 29px;
	-moz-column-gap: clamp(1.25rem, -0.063rem + 2.73vw, 2.125rem);
	column-gap: clamp(1.25rem, -0.063rem + 2.73vw, 2.125rem);
	margin-bottom: 105px;
	row-gap: 40px;
}

.p-lunch-set-card {
	max-width: 260px;
}

.p-lunch-set-card__body {
	gap: 12px;
	margin-top: 16px;
}

.p-lunch-set-card__img {
	max-width: 260px;
}

.p-lunch-set-card__text {
	font-size: clamp(0.875rem, 0.5rem + 0.78vw, 1.125rem);
}

.p-lunch-set-cards {
	grid-template-columns: repeat(4, 1fr);
}

.p-lunch-set-card:nth-child(2),
.p-lunch-set-card:nth-child(4) {
	margin-top: 40px;
}

.p-lunch-set__plus {
	height: 26px;
	margin-top: 80px;
	width: 26px;
}

.p-lunch-set__desc {
	margin-top: 2px;
}

.p-lunch-set__name {
	font-size: 20px;
}

.p-lunch-set__price {
	font-size: 60px;
	margin-top: 2px;
}

.p-lunch-set__time {
	font-size: 14px;
	margin-top: 17px;
}

.p-lunch-set__time::before {
	background: url(../img/dotted-line.svg) no-repeat center center/cover;
	top: -13px;
	width: 220px;
}

.p-lunch {
	padding-top: 40px;
}

.p-lunch__wrap {
	padding-bottom: 80px;
	padding-top: 80px;
}

.p-lunch__heading {
	top: 133px;
}

.p-lunch__content {
	margin-top: 60px;
	padding-bottom: 40px;
	padding-top: 60px;
}

.p-menu-card__name {
	font-size: clamp(0.875rem, 0.313rem + 1.17vw, 1.25rem);
}

.p-menu-card__price {
	font-size: clamp(1.5rem, 0.75rem + 1.56vw, 2rem);
}

.p-menu-cards {
	gap: clamp(1.188rem, -0.781rem + 4.1vw, 2.5rem);
	grid-template-columns: repeat(4, 1fr);
}

.p-mv-news {
	height: 152px;
	max-width: 388px;
	padding: 16px;
}

.p-mv-news__content {
	align-items: flex-start;
	grid-template-columns: 120px 1fr;
}

.p-mv-news__img {
	height: 120px;
	width: 120px;
}

.p-mv-news__text {
	font-size: 14px;
	line-height: 24px; /* 171.429% */
}

.p-news-card__cat-name--sm {
	top: 12px !important;
}
.p-news-card__cat-name {
	top: 16px;
}
.p-news-card__cat-name--lg {
	top: 20px;
}

.p-news-card__lead {
	margin-top: 10px;
	font-size: 14px;
	line-height: 24px;
}

.p-news-card__lead--lg {
	font-size: clamp(0.875rem, 0.313rem + 1.17vw, 1.25rem);
	line-height: 32px;
	margin-top: 18px;
}

.p-news-card__text {
	font-size: clamp(0.875rem, 0.688rem + 0.39vw, 1rem);
	line-height: 24px;
	margin-top: 10px;
}

.p-news-card__date--sm {
	margin-top: 10px !important;
}

.p-news-card__date--md {
	font-size: 12px !important;
	margin-top: 10px !important;
}
.p-news-card__date {
	font-size: 14px;
	margin-top: 12px;
}
.p-news-card__date--lg {
	font-size: clamp(0.75rem, 0.563rem + 0.39vw, 0.875rem);
	margin-top: 12px;
}

.p-news-cards {
	-moz-column-gap: clamp(1.188rem, -1.063rem + 4.69vw, 2.688rem);
	column-gap: clamp(1.25rem, -0.625rem + 3.91vw, 2.5rem);
	row-gap: 30px;
}
.p-pagination {
	margin-top: 19px;
	margin-left: -6px;
}
.p-drink-menu {
	margin-top: 0;
	max-width: 197px;
	width: 100%;
}

.p-drink-menu__content {
	margin-top: 30px;
}

.p-gallery {
	padding-bottom: 86px;
	padding-top: 80px;
}

.p-gallery__content {
	gap: 24px;
	grid-template-columns: repeat(4, 1fr);
	margin-bottom: 60px;
}
#sbi_images {
	margin-bottom: 25px;
    margin-top: 30px;
}

.p-news {
	padding-bottom: 165px;
	padding-top: 118px;
}

.p-news__content {
	display: grid;
	gap: clamp(1.563rem, 0.438rem + 2.34vw, 2.313rem);
	grid-template-columns: 46.3636363636% 1fr;
	margin-bottom: 60px;
	margin-top: 44px;
}
.p-news__content a {
	opacity: 1;
}
.p-access {
	margin-top: -200px;
	padding-top: 200px;
}

.p-access__wrap {
	margin-top: 0;
	padding-bottom: 93px;
}

.p-access__title {
	margin-bottom: 40px;
}

.p-access__map {
	border: 10px solid #fff;
	height: 387px;
	max-width: 688px;
}

.p-access__content {
	display: grid;
	gap: 40px;
	grid-template-columns: repeat(2, 1fr);
	margin-inline: auto;
	margin-top: 41px;
	width: 688px;
}

.p-access__lists {
	gap: 34px;
}

.p-access__lists + .p-access__lists {
	margin-top: 0;
}

.p-footer {
	padding-top: 33px;
}

.p-footer__sns {
	height: 24px;
	margin-bottom: 41px;
	width: 116px;
}

.p-footer__twitter {
	height: 15.838px;
	width: 19.5px;
}

.p-footer__instagram {
	height: 17.996px;
	width: 18px;
}

.p-footer__youtube {
	height: 14.766px;
	width: 21px;
}

.p-drink-menus {
	display: flex;
	flex-direction: row;
	gap: 48px;
	margin-inline: auto;
	width: 687px;
}

.p-breadcrumb {
	font-size: 14px;
	gap: 16px;
}

.p-breadcrumb__gt {
	font-size: 14px;
}

.p-concept-top {
	margin-bottom: -150px;
	padding-bottom: 450px;
	margin-inline: auto;
}

.p-concept-top__inner {
	max-width: 1190px;
	margin-inline: auto;
}

.p-concept-top__content {
	display: flex;
	flex-direction: row-reverse;
	gap: clamp(1.25rem, -4.375rem + 11.72vw, 5rem);
	justify-content: left;
	text-align: left;
	width: clamp(48rem, 12.188rem + 74.61vw, 71.875rem);
	position: relative;
	left: 50%;
	transform: translateX(calc(-50% - clamp(2.5rem, 0.156rem + 4.88vw, 4.063rem)));
}

.p-concept-top__body {
	margin-top: 87px;
	width: clamp(21.875rem, 10.625rem + 23.44vw, 29.375rem);
}

.p-concept-top__sub {
	margin-top: 48px;
}

.p-concept-top__btn {
	margin-top: 54px;
	text-align: left;
}

.p-concept-top__img::after {
	bottom: -100px;
	height: 300px;
	left: 0;
	width: clamp(45.5rem, 2.188rem + 90.23vw, 74.375rem);
}

.p-concept-top__img {
	margin-left: 0;
	margin-top: 68px;
	width: clamp(22.375rem, -0.313rem + 47.27vw, 37.5rem);
}

.p-fv__img::before {
	height: calc(100% - 32px);
	width: calc(100% - 32px);
}

.p-fv__img::after {
	height: calc(100% - 20px);
	width: calc(100% - 20px);
}

.p-fv__breadcrumb {
	margin-top: 16px;
	padding-left: 90px;
}

.p-concept-pasta {
	padding-top: 200px;
}

.p-concept-pasta::after {
	bottom: -60px;
	height: 437px;
	width: 580px;
}

.p-concept-pasta__content {
	display: flex;
	flex-direction: row-reverse;
	gap: clamp(1.25rem, -3.531rem + 9.96vw, 4.438rem);
}

.p-concept-pasta__img {
	margin-top: 0;
	padding-bottom: 132px;
	width: 49.0909090909%;
}

.p-concept-pasta__img--sm {
	left: -18.625%;
	width: clamp(11.438rem, -4.219rem + 32.62vw, 21.875rem);
}

.p-concept-bread {
	padding-bottom: 0;
	padding-top: 200px;
}

.p-concept-bread::after {
	bottom: -80px;
	height: 520px;
	width: 31.25%;
	right: 0;
}

.p-concept-bread__content {
	align-items: center;
	display: flex;
	flex-direction: row;
	gap: clamp(1.25rem, -3.531rem + 9.96vw, 4.438rem);
	padding-bottom: 0;
}

.p-concept-bread__img {
	margin-top: 0;
	width: clamp(22.438rem, -3.906rem + 54.88vw, 40rem);
}

.p-menu-list-card__name {
	margin-top: 12px;
}

.p-archive-menu {
	padding-bottom: 160px;
	padding-top: 80px;
}

.p-archive-menu__list {
	grid-template-columns: repeat(4, 1fr);
	max-width: 686px;
	-moz-column-gap: 14px;
	column-gap: 14px;
}

.p-archive-menu__content {
	margin-top: 80px;
}

.p-menu-list-cards {
	grid-template-columns: repeat(4, 1fr);
	row-gap: 40px;
	-moz-column-gap: clamp(1.25rem, -0.625rem + 3.91vw, 2.5rem);
	column-gap: clamp(1.25rem, -0.625rem + 3.91vw, 2.5rem);
}

.p-archive-news {
	grid-template-columns: clamp(5.281rem, 3.828rem + 3.03vw, 6.25rem) 1fr;
}

.p-archive-news__img {
	height: clamp(5.281rem, 3.828rem + 3.03vw, 6.25rem);
	width: clamp(5.281rem, 3.828rem + 3.03vw, 6.25rem);
}

.p-single {
	padding-bottom: 160px;
	padding-top: 80px;
}

.p-single__inner {
	width: 768px;
}

.p-single__heading {
	margin-bottom: 35px;
}

.p-single__title {
	font-size: 28px;
	line-height: 40px;
	margin-bottom: 40px;
}

.p-single__body p {
	font-size: 16px;
	font-weight: 500;
	line-height: 32px;
}

.p-single__body h2 {
	border:  none ;
	font-size: 24px;
	margin-bottom: 26px;
	margin-top: 99px;
	padding-left: 20px;
	position: relative;
}
.p-single__body h2::after {
	position: absolute;
	content: "";
	width: 6px;
	height: 35px;
	background: #382620;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.p-single__body h3 {
	font-size: 20px;
	margin-bottom: 19px;
	margin-top: 56px;
	padding-bottom: 14px;
}

.p-single__body h4 {
	font-size: 16px;
	margin-bottom: 15px;
	margin-top: 56px;
}

.p-single__body ul {
	padding-left: 36px;
	margin-bottom: 31px;
}

.p-single__body li {
	font-size: 16px;
}
.p-single__body li + li {
	margin-top: 3px;
}
.p-single__body blockquote {
	font-size: 16px;
	padding: 35px 40px 40px;
}

.p-single__body blockquote a {
	font-size: 14px;
	margin-top: 16px;
	padding-right: 0;
}

.p-single__related {
	margin-top: 119px;
}

.p-single__related-title {
	font-size: 28px;
	line-height: 40px;
}

.p-single__related-items {
	grid-template-columns: repeat(3, 1fr);
	margin-top: 60px;
	-moz-column-gap: clamp(1.25rem, -0.625rem + 3.91vw, 2.5rem);
	column-gap: clamp(1.25rem, -0.625rem + 3.91vw, 2.5rem);
	row-gap: 40px;
	padding-left: 8px;
}

.p-single-pagination {
	font-size: 16px;
	margin-block: 30px;
}

.p-single-pagination__archive {
	padding: 12px 36px;
}

.p-archive-shop {
	padding-bottom: 40px;
	padding-top: 80px;
}

.p-archive-shop__inner {
	width: 768px;
}

.p-archive-shop__content {
	margin-bottom: 134px;
	margin-top: 24px;
}

.p-shop-cards__wrapper {
	display: grid;
	column-gap: 39px;
	row-gap: 43px;
	grid-template-areas: "item1 item1 item2 item3" "item1 item1 item4 item5" "item6 item7 item8 item9";
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(3, 1fr);
}
.p-shop-card__name {
	margin-top: 12px;
}
.p-shop-card:nth-of-type(1) .p-shop-card__name {
	font-size: 24px;
}
.p-shop-card:nth-of-type(1) .p-shop-card__price {
	font-size: 32px;
}
.p-shop-card:nth-of-type(1) .p-shop-card__button {
	margin-top: 16px;
}
.p-shop-card__button {
	margin-top: 17px;
}
.p-shop-news {
	align-items: flex-start;
	display: flex;
	gap: clamp(1.25rem, -2.5rem + 7.81vw, 3.75rem);
	justify-content: center;
	padding: 76px clamp(2.25rem, 0.375rem + 3.91vw, 3.5rem);
	margin-top: 104px;
}

.p-shop-news__body {
	text-align: left;
	width: 50%;
}

.p-shop-news__lead {
	font-size: 24px;
	line-height: 40px;
	margin-bottom: 59px;
	text-align: left;
}

.p-shop-news__text {
	font-size: 16px;
	line-height: 32px;
}

.p-shop-news__img {
	margin-top: 0;
	width: 50%;
}

.p-contact__title h2 {
	font-size: 28px;
	line-height: 40px;
}

.p-contact__title p {
	font-size: 16px;
	line-height: normal;
	margin-top: 28px;
}

.p-contact__form form {
	gap: 38px;
	margin-top: 80px;
}

.p-contact__row {
	align-items: center;
	display: grid;
	gap: 28px;
	grid-template-columns: 170px 1fr;
}

.p-contact__row.--aifs {
	align-items: flex-start;
}

.p-contact__head.--mt {
	margin-top: 15px;
}
.p-contact__privacy {
	line-height: normal;
	margin-top: 5px;
}

.p-contact__submit {
	margin-top: -26px;
}

input[type=text],
input[type=email],
input[type=tel],
select,
textarea {
	margin-top: 0;
}

textarea {
	height: 240px;
}

.wpcf7-radio {
	margin-top: 0;
}

.u-hidden-pc {
	display: none;
}

}

@media screen and (min-width: 1100px) {

.l-mv {
	display: grid;
	grid-template-columns: 200px 1fr;
}

.l-mv__swiper::after {
	bottom: -130px;
	height: 265px;
	right: -40px;
	width: 296px;
}

.l-mv__nav {
	display: block;
	width: 200px;
}

.c-button {
	width: 280px;
}

.c-button::before {
	height: 72px;
	width: 280px;
}

.c-shop-button {
	font-size: 14px;
	padding: 7px 23px 7px 22px;
}

.c-tab-button {
	height: 69px;
	max-width: 200px;
}

.c-tab-button::after {
	height: 61px;
	max-width: 192px;
}

.p-concept__lead {
	font-size: 28px;
	line-height: 60px;
}

.p-drawer-button {
	opacity: 0;
	transition: opacity 0.3s ease;
	visibility: hidden;
}

.p-drawer-button.js-show {
	opacity: 1;
	visibility: visible;
}

.header__logo {
	height: 93px;
	left: 20px;
	position: absolute;
	top: 27px;
	width: 166px;
}

.p-mv__text {
	bottom: 61px;
	font-size: 20px;
	left: 56px;
	letter-spacing: 2.8px;
	line-height: normal;
	top: auto;
}

.p-mv__text p {
	margin-top: 16px;
}

.p-grand-menu__inner::after {
	bottom: -324px;
	height: 330px;
	right: -184px;
	width: 390px;
}
.p-grand-menu__heading {
	margin-top: 47px;
}
.p-grand-menu-card__name {
	font-size: clamp(0.875rem, 0.403rem + 1.76vw, 1.25rem);
}

.p-lunch-set-card {
	width: 100%;
}

.p-lunch-set {
	height: 230px;
	max-width: 1100px;
}

.p-lunch-set__name {
	text-align: right;
}

.p-lunch-set__time {
	text-align: right;
}

.p-lunch__inner::after {
	bottom: -290px;
	height: 294px;
	left: -149px;
	width: 396px;
}

.p-lunch__title::before {
	height: 145px;
	right: -393px;
	top: 91px;
	width: 310px;
}

.p-lunch__set {
	display: flex;
	flex-direction: row;
	gap: 40px;
	justify-content: center;
	margin-top: 58px;
}

.p-menu-card__name {
	font-size: clamp(0.875rem, 0.403rem + 1.76vw, 1.25rem);
}

.p-mv-news::after {
	height: 100px;
	top: -72px;
	width: 168px;
}

.p-drink-menu__content {
	display: grid;
	gap: 62px;
	grid-template-columns: 343px 1fr;
}

.p-grand-menu__img {
	border: 8px solid #fff;
	display: block;
	height: auto;
	max-width: 343px;
}

.p-gallery__title::after {
	height: 126px;
	left: -248px;
	top: -93px;
	width: 266px;
}

.p-news__inner::before {
	height: 320px;
	left: -137px;
	top: -262px;
	width: 354px;
}
.p-news__button {
	margin-left: -17px;
}
.p-access__inner::before {
	height: 359px;
	right: -143px;
	top: -262px;
	width: 389px;
}

.p-access__inner::after {
	bottom: -230px;
	height: 288px;
	left: -136px;
	transform: unset;
	width: 341px;
}

.p-access__title::before {
	height: 200.002px;
	left: -220px;
	top: -130px;
	width: 232.912px;
}

.p-drink-menus {
	margin-inline: unset;
}
.p-concept-top__content::after {
	bottom: -437px;
	height: 228px;
	width: 201px;
	right: -163px;
}

.p-concept-top__main {
	font-size: 28px;
	line-height: 60px; /* 214.286% */
	margin-top: 48px;
}

.p-archive-menu__list {
	row-gap: 14px;
	max-width: 842px;
}

.p-contact__submit-wrap {
	width: 280px;
}

.p-contact__submit-wrap::before {
	width: 280px;
}

}

@keyframes zoomUp {

0% {
	transform: scale(1);
}

100% {
	transform: scale(1.2);
}

}

