@charset "utf-8";

/* ---------------
	reset
--------------------*/
body, div, main,
dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
figure, pre, form, fieldset, textarea, p, blockquote, th ,td {
	margin: 0;
	padding: 0;
}

main {
	display: block;
}

ul{
	list-style-type: none;
}

table {
	line-height: 1.6;
	border: 0px;
	border-collapse:collapse;
	font-size: 1.6rem;
}

table th {
	font-weight: normal;
}

h1, h2, h3, h4, h5, h6 {
	font-size: 1em;
	font-weight: normal;
}
textarea {
	padding: 2px 4px;
	font-size: 1.6rem;
	line-height: 1;
	color: #443e35;
}

input {
	vertical-align: middle;
	margin: 0;
	padding: 0;
	color: #443e35;
}

p {
	line-height: 1.5;
}

img {
	border: none;
	vertical-align: bottom;
	-webkit-backface-visibility: hidden;
}

address {
	font-style:normal;
}

ul li {
	line-height: 1.4;
}

*,*::before,*::after{
	box-sizing: border-box;
}

em {
	font-style: normal;
}

.cf:before,
.cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}

input[type='search'] {
	-webkit-appearance: none;
}

/* ---------------
　　　共用
--------------- */

:root {
  --color_red: #c7161d;
  --color_text: #443e35;
  --color_brown: #6f4a16;
  --min-width: min(95%,1100px);
  --unit-space-lg: 50px;
  --unit-space-md: 30px;
  --unit-space-sm: 15px;
  --separator-lg: 50px;
  --separator-md: 30px;
  --separator-sm: 15px;
}

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

  :root {
    --unit-space-lg: 100px;
    --unit-space-md: 60px;
    --unit-space-sm: 30px;
    --separator-lg: 100px;
    --separator-md: 60px;
    --separator-sm: 30px;
  }

}

html {
    font-size: 62.5%;
	scroll-padding-top: 100px;
}

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

	html {
		scroll-padding-top: 130px;
	}

	html:has(body.lg_1),
	html:has(body.lg_2),
	html:has(body.lg_3),
	html:has(body.lg_4),
	html:has(body.lg_5) {
		scroll-padding-top: 230px;
	}

}

body {
	font-size: 1.6rem;
	letter-spacing: 0.03em;
	line-height: 1;
	color: var(--color_text);
	background: #f5f4ee url(../images/common/back_pat01.png) center center / 1800px auto;
	-webkit-text-size-adjust: none;
	-webkit-print-color-adjust: exact;
  	font-optical-sizing: auto;
}

a:link {
	border: none;
	color: var(--color_text);
	text-decoration: none;
	transition: all 0.1s ease;
}

a:visited {
	border: none;
	color: var(--color_text);
	text-decoration: none;
}

a:active {
	border: none;
	color: var(--color_text);
	text-decoration: none;
}

a:hover {
	border: none;
	color: var(--color_text);
	text-decoration: none;
	transition: all 0.1s ease;
}

:focus:not(:focus-visible) {
	outline: none;
}

@media screen and (min-width: 768px) {

	.alpha a:hover {
		filter: alpha(opacity=70);
		-moz-opacity:0.7;
		opacity:0.7;
		transition: opacity 0.25s ease 0s;
	}

	.alpha a {
		-webkit-transition: all 0.1s ease 0s;
		-moz-transition: all 0.1s ease 0s;
		transition: opacity 0.25s ease 0s;
	}

}

.sp {
	display: none;
}

.pc {
	display: block;
}

a[href^="tel:"] {
    text-decoration: none !important;
}

img.fit {
	width: 100%;
	height: auto;
}

img.trim_center {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

a[href^="no_large"] {
    pointer-events: none;
}

.wrapper {
	position: relative;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 400;
	font-style: normal;
}

.entry_edit .wrapper {
  margin-top: 250px;
}

@media screen and (max-width: 767px) {

	.lg_6 .wrapper,
	.lg_7 .wrapper,
	.lg_5 .wrapper,
	.lg_4 .wrapper,
	.lg_3 .wrapper,
	.lg_2 .wrapper,
	.lg_1 .wrapper {
  	margin-top: 70px;
	}

	.wrapper {
		overflow: hidden;
	}

	.sp {
		display: block;
	}

	.pc {
		display: none;
	}

	.columnImage {
		width: 100%;
	}

}

a.nolink {
	cursor: default;
	text-decoration: none !important;
    pointer-events: none;
}

@media screen and (min-width: 1000px) {

	a[href^="tel:"] {
	    pointer-events: none;
	}

}

.center {
	text-align: center;
}

/* -----------------
	header
----------------- */

.header {
	height: 70px;
	width: 100%;
	left: 0;
	top: 0;
	display: flex;
	position: fixed;
	justify-content: space-between;
	align-items: center;
	z-index: 10;
	transition: all 0.4s ease;
	background: url(../images/common/back_pat01.png) center center / 1800px auto;
	overflow: hidden;
}

.header.scroll {
	background: #fff;
}

.lg_6 .header,
.lg_7 .header,
.lg_5 .header,
.lg_4 .header,
.lg_3 .header,
.lg_2 .header,
.lg_1 .header {
	top: 100px;
}

.header .logo {
	margin: 0 auto;
	width: 110px;
}

.header_gnavi {
	position: absolute;
	top: 70px;
	left: 0;
	width: 100%;
	transition: opacity 0.4s ease;
	opacity: 0;
	z-index: -1;
	transition: visibility 0.3s ease;
	visibility: hidden;
	background: #fff;
}

.sp_sticky {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: 10;
	background: url(../images/common/back_sp_sticky.png) center center / 375px auto;
}

.sp_sticky ul {
	display: flex;
}

.sp_sticky li {
	width: 50%;
	border-left: 1px solid #981318;
}

.sp_sticky li:first-child {
	border: none;
}

.sp_sticky li a {
	padding: 15px 0;
	color: #fff;
	display: block;
	text-align: center;
	font-size: 1.4rem;
}

@media screen and (min-width: 768px) {

	.header {
		height: 110px;
    	transition: all 0.2s ease 0s;
		background: none;
		overflow: inherit;
	}

	.header .logo {
		margin: 0 0 0 20px;
		width: 173px;
		flex-shrink: 0;
		transition: all 0.3s ease;
	}

	.header.scroll {
		height: 80px;
	}

	.header.scroll .logo {
		margin-left: 10px;
		width: 136px;
	}

	.header_gnavi {
		display: flex;
		align-items: center;
		width: auto;
		position: relative;
		opacity: inherit;
		z-index: 10;
		visibility: inherit;
		background: inherit;
		top: auto;
	}

	.sp_sticky {
		display: none;
	}

}

@media screen and (min-width: 768px) {

	.header_gnavi nav > ul {
		display: flex;
		align-items: center;
	}

	.header_gnavi ul li {
		font-size: 1.8rem;
		font-weight: 500;
		display: block;
		transition: all 0.3s ease;
		white-space: nowrap;
	}

	.header_gnavi nav > ul > li > a {
		padding: 0 30px;
		height: 110px;
		display: flex;
		justify-content: center;
		align-items: center;
		transition: all 0.3s ease;
	}

	.header.scroll .header_gnavi nav > ul > li > a {
		height: 80px;
    }

	.header_gnavi nav > ul > li > a div {
		position: relative;
		display: inline;
	}

	body:not(.entry_kodawari) .header_gnavi nav > ul > li.stay > a,
	.header_gnavi nav > ul > li.stay.gnavi_kodawari > a {
		color: var(--color_red);
	}

	body:not(.entry_kodawari) .header_gnavi nav > ul > li.stay > a > div::after,
	.header_gnavi nav > ul > li.stay.gnavi_kodawari > a > div::after {
		position: absolute;
		content: '';
		top: -10px;
		left: 0;
		right: 0;
		width: 7px;
		height: 7px;
		border-radius: 5px;
		background: var(--color_red);
		margin: auto;
		transition: all 0.3s ease 0s;
	}

	.header_gnavi ul li a:hover {
		color: var(--color_red);
	}

	.header_gnavi .gnavi_hassub > a {
		padding-right: 35px;
	}

	.header_gnavi .gnavi_hassub > a span {
		padding-right: 18px;
		position: relative;
	}

	.header_gnavi .gnavi_hassub > a span::before,
	.header_gnavi .gnavi_hassub > a span::after {
		position: absolute;
		content: '';
		right: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 10px;
		height: 2px;
		background: var(--color_text);
	}

	.header_gnavi .gnavi_hassub a span::after {
		transform: rotate(90deg);
    	transition: all 0.20s ease 0s;
	}

	.header_gnavi .gnavi_hassub.stay.gnavi_kodawari span::before,
	.header_gnavi .gnavi_hassub.stay.gnavi_kodawari span::after,
	body:not(.entry_kodawari) .header_gnavi .gnavi_hassub.stay span::before,
	body:not(.entry_kodawari) .header_gnavi .gnavi_hassub.stay span::after,
	.header_gnavi .gnavi_hassub > a:hover span::before,
	.header_gnavi .gnavi_hassub > a:hover span::after {
		background: var(--color_red);
	}

	.header_gnavi .gnavi_hassub {
		position: relative;
	}

	.header_gnavi .gnavi_hassub ul {
		position: absolute;
		top: 95px;
		margin: auto;
    	opacity: 0;
		background: #fff;
		padding: 30px 45px;
		border-radius: 20px;
    	visibility: hidden;
	    box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.3);
	}

	.header.scroll .header_gnavi .gnavi_hassub ul {
		top: 75px;
	}

	.header_gnavi .gnavi_hassub.gnavi_shop ul {
		left: auto;
		right: 10px;
	}

	.header_gnavi .gnavi_hassub ul li a {
		display: block;
		padding: 15px 50px 15px 0;
		white-space: nowrap;
		background: url(../images/common/ico_link.svg) no-repeat right center / 14px auto;
	}

	.header_gnavi .gnavi_hassub.gnavi_open ul {
    	opacity: 1;
    	visibility: inherit;
    	transition: all 0.50s ease 0s;
	}

	.header_gnavi .gnavi_hassub.gnavi_open a span::after {
		transform: none;
	}

}

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

	.header_gnavi nav > ul > li > a {
		padding: 0 15px;
	}

}

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

	.header .logo {
		width: 150px;
	}

	.header_gnavi nav > ul > li {
		font-size: 1.6rem;
	}

	.header_gnavi nav > ul > li > a {
		padding: 0 10px;
	}

}

#menu_btn {
	margin: 0;
    padding: 0;
	width: 45px;
	height: 45px;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	border: none;
	background: none;
	flex-shrink: 0;
	transition: all 0.3s ease;
}

#menu_btn span {
	display: block;
}

#menu_btn::before {
	top: 22px;
}

#menu_btn span::before {
	top: 13px;
}

#menu_btn::after {
	top: 31px;
}

#menu_btn::before,
#menu_btn::after,
#menu_btn span::before {
	margin: 0 auto;
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	width: 25px;
	height: 3px;
	background-color: var(--color_red);
	transition: all 0.3s ease;
}

.menu_open #menu_btn::before {
	display: none;
}

.menu_open #menu_btn span::before {
	top: 22px;
	transform: rotate(45deg);
}

.menu_open #menu_btn::after {
	top: 22px;
	transform: rotate(-45deg);
}

@media screen and (min-width: 768px) {

	#menu_btn {
		display: none;
	}

	.sp_menu {
		display: none;
	}

}

.sp_menu_bottom {
	background: #232320;
}

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

	.menu_open .header {
		overflow: visible;
		position: fixed;
		background: #fff;
	}

	.menu_open .header_gnavi {
		opacity: 1;
		z-index: 110;
		visibility: inherit;
		transition: all 0.3s ease;
	}

/*
	.header_gnavi {
		position: fixed;
	}
*/
	.header_gnavi_inner {
		max-height: calc(100dvh - 70px);
		overflow-y: auto;
	}

	.header_gnavi ul {
		padding: 0 20px 25px;
	}

	.header_gnavi li {
		border-bottom: 1px solid #e7e1cd;
		font-size: 1.8rem;
		font-weight: 500;
	}

	.header_gnavi li:last-child {
		border: none;
	}

	.header_gnavi li a {
		padding: 15px 20px 15px 10px;
		color: #6f4a16;
		display: block;
		background: url(../images/common/ico_link.svg) no-repeat right 10px center / 14px auto;
	}

	.header_gnavi li.gnavi_hassub a {
		padding-bottom: 10px;
	}

	.header_gnavi li ul {
		padding: 0 40px 15px;
	}

	.header_gnavi li li {
		border: none;
		font-size: 1.4rem;
	}

	.header_gnavi li li a {
		padding: 10px 0;
		background: none;
	}

	.header_gnavi li.gnavi_shop ul {
		display: none;
	}

	.sp_menu_bottom ul {
		padding: 30px 30px;
	}

	.sp_menu_bottom li {
		font-size: 1.4rem;
		border: none;
	}

	.sp_menu_bottom li a {
		padding: 8px 0;
		color: #fff;
		background: none;
		display: inline-block;
	}

	.sp_menu_bottom li.ico_blank a {
		padding-right: 25px;
		background: url(../images/common/ico_blank_w.svg) no-repeat right center / 15px auto;
	}

}

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

	.sp_menu_bottom {
		display: none;
	}

}

.menu_brand_logo.fLayTyp02 {
	margin: 0 0 20px;
	padding: 20px 0 0;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.menu_brand_logo .g-layBaseTyp01 {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: 2040px;
	height: 100%;
}

.menu_brand_logo .fNavBiz {
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}

.menu_brand_logo .fNavBiz li {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px 10px;
	width: 33.3333333333%;
	height: auto;
}

.menu_brand_logo .fNavBiz li a {
	padding: 0;
	display: block;
}

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

	.menu_brand_logo .fNavBiz li img {
		height: 33px;
		width: auto;
	}

	.menu_brand_logo .fNavBiz li.fNavBizItem01 img {
		height: 40px;
	}

	.menu_brand_logo .fNavBiz li.fNavBizItem02 img {
		height: 53px;
	}

	.menu_brand_logo .fNavBiz li.ft_kuidon_w img,
	.menu_brand_logo .fNavBiz li.fNavBizItem03 img {
		height: 42px;
	}

	.menu_brand_logo .fNavBiz li.fNavBizItem04 img {
		height: 40px;
	}

	.menu_brand_logo .fNavBiz li.fNavBizItem05 img {
		height: 55px;
	}

	.menu_brand_logo .fNavBiz li.ft_daiana_w img,
	.menu_brand_logo .fNavBiz li.fNavBizItem06 img {
		height: 40px;
	}

	.menu_brand_logo .fNavBiz li.fNavBizItem07 img {
		height: 41px;
	}

}

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

	.menu_brand_logo .fNavBiz li.fNavBizItem01 img {
		height: calc(40px - 5px);
	}

	.menu_brand_logo .fNavBiz li.fNavBizItem02 img {
		height: calc(53px - 5px);
	}

	.menu_brand_logo .fNavBiz li.ft_kuidon_w img,
	.menu_brand_logo .fNavBiz li.fNavBizItem03 img {
		height: calc(42px - 5px);
	}

	.menu_brand_logo .fNavBiz li.fNavBizItem04 img {
		height: calc(40px - 5px);
	}

	.menu_brand_logo .fNavBiz li.fNavBizItem05 img {
		height: calc(55px - 5px);
	}

	.menu_brand_logo .fNavBiz li.ft_daiana_w img,
	.menu_brand_logo .fNavBiz li.fNavBizItem06 img {
		height: calc(40px - 5px);
	}

	.menu_brand_logo .fNavBiz li.fNavBizItem07 img {
		height: calc(41px - 5px);
	}

	.menu_brand_logo .fNavBiz li img {
		height: calc(33px - 5px);
	}

}

.menu_corp_logo {
	display: block;
	width: 100%;
	padding: 40px 0 30px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.menu_corp_logo .g-layBaseTyp01 {
    align-items: center;
    width: 100%;
    max-width: 2040px;
    height: 100%;
	position: relative;
    margin: 0 auto;
	display: flex;
	justify-content: center;
}

.menu_corp_logo .siteName a {
	display: block;
}

.menu_corp_logo .siteName img {
    display: block;
    width: auto;
	height: 30px;
}

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

	.menu_brand_logo,
	.menu_footer_link {
		display: none;
	}

	.menu_corp_logo {
		display: none;
	}

}

/* -----------------
	トップ
----------------- */

.lg_6 .main,
.lg_7 .main,
.lg_5 .main,
.lg_4 .main,
.lg_3 .main,
.lg_2 .main,
.lg_1 .main {
	margin-top: 0;
}

.main {
	margin-top: 70px;
	position: relative;
}

.top_slide_wrapper {
	padding-bottom: 75px;
	position: relative;
	background: url(../images/common/back_band01_sp.png) no-repeat 0 bottom / 100% auto;
}

.top_slide_wrapper > p {
	margin: 20px 0 0 15px;
	padding: 0 50px 20px 0;
	color: var(--color_brown);
	font-size: 1.8rem;
	line-height: 1.3;
	font-weight: 700;
	display: inline-block;
	background: url(../images/common/icon_suzu.png) no-repeat right bottom / 60px auto;
	position: absolute;
	bottom: 0;

}

.top_slide {
	z-index: 2;
}

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

	.lg_6 .main,
	.lg_7 .main,
	.lg_5 .main,
	.lg_4 .main,
	.lg_3 .main,
	.lg_2 .main,
	.lg_1 .main {
		margin-top: 210px;
	}

	.main {
		margin-top: 110px;
	}

	.top_slide_wrapper {
		padding: 35px 0 110px;
		background: url(../images/common/back_band01_pc.png) no-repeat 0 bottom / 100% auto;
	}

	.top_slide_wrapper > p {
		margin: 0;
		padding: 0 30px 100px 0;
		font-size: 3.0rem;
		position: absolute;
		top: -45px;
		left: calc(50% - 490px);
		background: url(../images/common/icon_suzu.png) no-repeat right bottom / 127px auto;
		bottom: auto;
	}

}

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

	.top_slide_wrapper > p {
		margin-top: 30px;
	}

}

.slide_img_box {
	margin: 0;
	padding: 0;
	width: 100%;
	aspect-ratio: 750 / 886;
}

.slide_img_box a {
	display: flex;
	flex-direction: column;
	height: 100%;
	border-radius: 20px;
	position: relative;
	overflow: hidden;
}

.slide_img_box figure {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
}

.slide_img_box figure img {
	width: 100%;
	height: auto;
	object-fit: cover;
}

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

	.slide_img_box {
		margin: 65px 40px 0;
		padding: 35.5px 27.5px;
		width: 550px;
		height: 650px;
		aspect-ratio: inherit;
		transition: all 0.8s ease;
	}

	.hv_zoom {
		overflow: hidden;
	}

	.hv_zoom img {
		transition: all 0.3s ease;
	}

	a:hover .hv_zoom img {
		transform: scale(1.05);
	}

	.slide_img_box.slick-current {
		margin-top: 0;
		transform: none;
		padding: 0;
	}

	.slide_img_box.slick-current:not(.slick-cloned) + .slick-slide,
	.slide_img_box.slick-current + .slick-slide {
		transform: rotate(5deg);
	}

	.slide_img_box.slick-active.slick-cloned + .slick-slide + .slick-slide,
	.slide_img_box:has(+ .slick-current) {
		transform: rotate(-5deg);
	}

}

.top_slide_title {
	margin: auto auto 40px 0;
	padding: 12px 12px 10px;
	background: #f9f8f1;
	border-left: 2px solid var(--color_red);
	z-index: 2;
}

.top_slide_title h3 {
	font-size: 1.4rem;
	color: var(--color_brown);
	font-weight: 500;
}

.top_slide_title h3 span {
	padding-right: 20px;
	display: block;
	font-size: 2.0rem;
	line-height: 1.4;
	font-weight: 700;
	background: url(../images/common/ico_link.svg) no-repeat right center / 14px auto;
}

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

	.top_slide_title {
		margin: auto auto 50px 0;
		padding: 20px 20px 15px;
	}

	.top_slide_title h3 {
		font-size: 1.6rem;
		transition: all 0.3s ease;
	}

	.top_slide_title h3 span {
		font-size: 2.6rem;
		line-height: 1.6;
	}

	.slide_img_box a:hover .top_slide_title h3 {
		color: var(--color_red);
    }

}

.top_slide .slick-arrow {
	display: none;
}

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

	.top_slide .slick-arrow {
		width: 90px;
		height: 90px;
		background: rgba(255,255,255,0.5);
		border-radius: 50%;
		border: none;
		display: flex;
		justify-content: center;
		align-items: center;
		position: absolute;
		top: 280px;
		left: 0;
		right: 0;
		margin: auto;
		z-index: 2;
	}

	.top_slide .slick-prev {
		left: -590px;
	}

	.top_slide .slick-next {
		right: -590px;
	}

	.top_slide .slick-arrow i {
		display: block;
		width: 13px;
		height: 24px;
	}

	.top_slide .slick-prev i {
		transform: rotate(-180deg);
		background: url(../images/common/ico_slider_arrow.svg) no-repeat center center / cover;
	}

	.top_slide .slick-next i {
		background: url(../images/common/ico_slider_arrow.svg) no-repeat center center / cover;
	}

}

.top_slide_dot {
	margin: 20px 45px 0 0;
}

.top_slide_dot ul {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.top_slide_dot li {
	margin: 0 6px;
	border: 1.5px solid rgb(0,0,0,0);
	border-radius: 50%;
}

.top_slide_dot li button {
	margin: 0;
	padding: 0;
	width: 10px;
	height: 10px;
	background: #d9d0ad;
	border-radius: 50%;
	display: block;
	text-indent: -9999px;
	border: none;
}

.top_slide_dot li.slick-active {
	border-color: var(--color_red);
}

.top_slide_dot li.slick-active button {
	background-color: var(--color_red);
}

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

	.top_slide_dot {
		margin: 0;
		position: relative;
		top: -45px;
		z-index: 2;
	}

	.top_slide_dot ul {
		justify-content: center;
	}

}

.top_slide_btn {
	position: absolute;
	bottom: 74px;
	right: 20px;
	z-index: 2;
}

.top_slide_btn .slide_play,
.top_slide_btn .slide_stop {
	text-indent: -9999px;
	cursor: pointer;
}

.top_slide_btn .slide_play {
	width: 15px;
	height: 12px;
	background: url(../images/top/ico_play.png) no-repeat 0 0 / 100% auto;
	display: none;
}

.top_slide_btn .slide_stop {
	width: 15px;
	height: 15px;
	background: url(../images/top/ico_pause.png) no-repeat 0 0 / 100% auto;
}

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

	.top_slide_btn {
		bottom: 155px;
		left: calc(50% + 260px);
		right: auto;
		cursor: pointer;
	}

}

.top_menu_navi {
	padding: 70px 0;
	background: url(../images/common/back_pat02.png) 0 0 / 1800px auto;
}

.top_menu_navi .inner {
	margin: 0 5px;
}

.top_menu_navi .inner > div {
	width: 100%;
}

.top_menu_navi_menu {
	border-radius: 20px 20px 0 0;
	overflow: hidden;
	height: 370px;
}

.top_menu_navi .column_right {
	margin: 5px 0 0;
	border-radius: 0 0 20px 20px;
	overflow: hidden;
	height: 320px;
	display: flex;
	justify-content: space-between;
}

.top_menu_navi_izakaya {
	width: calc(50% - 2.5px);
}

.top_menu_navi_banquet {
	width: calc(50% - 2.5px);
}

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

	.top_menu_navi {
		padding: 20px 0 130px;
	}

	.top_menu_navi .inner {
		margin: 0 auto;
		width: min(95%,1620px);
		display: flex;
		justify-content: space-between;
	}

	.top_menu_navi .inner > div {
		width: calc(50% - 5px);
		height: 800px;
	}

	.top_menu_navi_menu {
		border-radius: 20px 0 0 20px;
	}

	.top_menu_navi .column_right {
		margin: 0;
		border-radius: 0 20px 20px 0;
		height: 100%;
		display: block;
	}

	.top_menu_navi_izakaya {
		width: 100%;
		height: calc(50% - 5px);
	}

	.top_menu_navi .top_menu_navi_izakaya a > div {
		position: absolute;
		bottom: 60px;
	}

	.top_menu_navi_banquet {
		margin-top: 10px;
		width: 100%;
		height: calc(50% - 5px);
	}

	.top_menu_navi .top_menu_navi_banquet a > div {
		position: absolute;
		bottom: 38px;
		right: 50px;
	}

}

.top_menu_navi a {
	padding: 25px;
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.top_menu_navi_izakaya a {
	padding: 13px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.top_menu_navi_banquet a {
	padding: 13px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

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

	.top_menu_navi a {
		padding: 60px;
		background: none;
		display: block;
		overflow: hidden;
	}

	.top_menu_navi_izakaya a {
		padding: 60px;
		background: none;
	}

	.top_menu_navi_banquet a {
		padding: 60px;
		align-items: flex-end;
		background: none;
	}

}

.top_menu_navi figure {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	transition: all 0.3s ease;
}

.top_menu_navi figure.pc {
	display: none;
}

.top_menu_navi a > div {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: flex-start;
	flex-direction: column;
}

.top_menu_navi h2 {
	margin: 0 0 10px;
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--color_brown);
	z-index: 2;
	display: inline-block;
}

.top_menu_navi h2 span {
	padding: 0 2px 2px;
	background: #fff;
	display: inline-block;
}

a.link_arrow,
p.link_arrow {
	padding-right: 20px;
	background: url(../images/common/ico_link.svg) no-repeat right center / 14px auto;
}

.top_menu_navi p {
	padding: 2px 25px 2px 5px;
	font-size: 1.6rem;
	font-weight: 500;
	color: var(--color_brown);
	z-index: 2;
	display: inline-block;
	background-color: #fff;
	background-position: right 5px center;
	letter-spacing: 0;
}

.top_menu_navi_izakaya h2,
.top_menu_navi_banquet h2 {
	font-size: 1.8rem;
}

.top_menu_navi_izakaya p,
.top_menu_navi_banquet p {
	font-size: 1.2rem;
	letter-spacing: 0;
}

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

	.top_menu_navi figure.sp {
		display: none;
	}

	.top_menu_navi figure.pc {
		display: flex;
	}

	.top_menu_navi a:hover figure {
		transform: scale(1.05);
	}

	.top_menu_navi h2 {
		margin: 0 0 17px;
		font-size: 3.4rem;
	}

	.top_menu_navi p {
		padding: 6px 30px 6px 10px;
		background-position: right 10px center;
		transition: all 0.3s ease;
	}

	.top_menu_navi_izakaya h2,
	.top_menu_navi_banquet h2 {
		font-size: 3.4rem;
	}

	.top_menu_navi_izakaya p,
	.top_menu_navi_banquet p {
		font-size: 1.6rem;
	}

	.top_menu_navi a:hover p {
		color: var(--color_red);
	}

}

.top_recommend {
	padding: 65px 20px 70px;
	text-align: center;
	background: url(../images/common/back_pat03.png) 0 0 / 1800px auto;
}

.top_recommend h2 {
	margin: 0 0 30px;
	color: #fff;
	font-size: 2.8rem;
	font-weight: 700;
}

.top_recommend ul {
	margin: 0 0 20px;
}

.top_recommend li {
	margin: 0 0 20px;
	border-radius: 15px;
	text-align: left;
	background: #f9f8f1;
}

.top_recommend li a {
	padding: 10px;
	display: flex;
}

.top_recommend li figure {
	border-radius: 15px;
	overflow: hidden;
	width: 170px;
	height: 170px;
	flex-shrink: 0;
}

.top_recommend li figure img {
	width: 170px;
	height: 170px;
	object-fit: cover;
}

.top_recommend li a > div {
	margin: 15px;
}

.top_recommend li h3 {
	margin: 0 0 10px;
	font-size: 1.8rem;
	line-height: 1.3;
	font-weight: 500;
}

.top_recommend li p {
	margin: 0;
	font-size: 1.4rem;
	line-height: 1.6;
}

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

	.top_recommend {
		padding: 130px 0;
		background: url(../images/common/back_pat03.png) 0 0 / 1800px auto;
	}

	.top_recommend .inner {
		margin: 0 auto;
		width: min(95%,1100px);
	}

	.top_recommend h2 {
		margin: 0 0 75px;
		font-size: 3.4rem;
	}

	.top_recommend ul {
		margin: 0 0 60px;
		display: grid;
		grid-template-columns: repeat(3,1fr);
		gap: 40px;
	}

	.top_recommend li {
		margin: 0;
		transition: all 0.3s ease;
		position: relative;
		top: 0;
	}

	.top_recommend li:hover {
		top: -10px;
	}

	.top_recommend li a {
		padding: 10px 10px 25px;
		display: block;
	}

	.top_recommend li figure {
		width: auto;
		height: auto;
	}

	.top_recommend li figure img {
		width: 100%;
		height: 320px;
	}

	.top_recommend li a > div {
		margin: 20px 20px 0;
	}

	.top_recommend li h3 {
		margin: 0 0 15px;
		font-size: 2.0rem;
		transition: all 0.3s ease;
	}

	.top_recommend li p {
		font-size: 1.6rem;
	}

	.top_recommend li a:hover h3 {
		color: var(--color_red);
	}

}

.top_memorial {
	height: 400px;
}

.top_memorial a {
	padding: 40px 30px;
	display: block;
	height: 100%;
	position: relative;
	overflow: hidden;
}

.top_memorial figure {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.top_memorial .inner > div {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: flex-start;
	flex-direction: column;
}

.top_memorial h2 {
	margin: 0 0 10px;
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--color_brown);
	z-index: 2;
	display: inline-block;
}

.top_memorial h2 span {
	padding: 0 2px 2px;
	background: #fff;
	display: inline-block;
}

.top_memorial p {
	font-size: 1.6rem;
	font-weight: 500;
	color: var(--color_brown);
	z-index: 2;
	display: inline-block;
	background-color: #fff;
	background-position: right 5px center;
	letter-spacing: 0;
}

.top_memorial p {
	padding: 2px 25px 2px 5px;
}

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

	.top_memorial {
		height: 700px;
	}

	.top_memorial .inner {
		margin: 0 auto;
		width: min(95%,1100px);
	}

	.top_memorial a {
		padding: 130px 0;
	}

	.top_memorial figure img {
		transition: all 0.3s ease;
	}

	.top_memorial a:hover figure img {
		transform: scale(1.05);
	}

	.top_memorial h2 {
		margin: 0 0 17px;
		font-size: 3.4rem;
	}

	.top_memorial p {
		padding: 4px 30px 5px 10px;
		background-position: right 10px center;
		transition: all 0.3s ease;
	}

	.top_memorial a:hover p {
		color: var(--color_red);
	}

}

.top_menu {
	padding: 65px 0 55px;
	text-align: center;
	background: url(../images/common/icon_suzu.png) no-repeat center bottom / 48px auto,
				url(../images/common/back_band02_sp.png) no-repeat 0 bottom / 100% auto,
				url(../images/common/back_pat01.png) center center / 1800px auto;
}

.top_menu h2 {
	margin: 0 0 40px;
	text-align: center;
	color: var(--color_brown);
	font-size: 2.6rem;
	font-weight: 700;
}

.top_menu ul {
	margin: 0 10px 50px;
	display: flex;
	flex-wrap: wrap;
}

.top_menu li {
	margin: 0 10px 17px;
	width: calc(50% - 20px);
}

.top_menu li a {
	display: block;
}

.top_menu li figure {
	aspect-ratio: 315/ 230;
	border-radius: 10px;
	overflow: hidden;
}

.top_menu li figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.top_menu li h3 {
	margin: 5px 0 0;
	color: var(--color_brown);
	font-size: 1.6rem;
	font-weight: 500;
}

.top_menu li.btn_more a {
	padding: 0;
	width: auto;
	display: flex;
	font-size: 1.4rem;
	aspect-ratio: 315 / 230;
	align-items: center;
	border-radius: 20px;
}

.top_menu li.menu_takeout {
	margin: 30px 10px 0;
	width: 100%;
}

.top_menu li.menu_takeout figure {
	height: 95px;
	aspect-ratio: inherit;
	border-radius: 15px;
}

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

	.top_menu {
		padding: 130px 0 180px;
		background: url(../images/common/icon_suzu.png) no-repeat center bottom 20px / 70px auto,
					url(../images/common/back_band02_pc.png) no-repeat 0 bottom / 100% auto,
					url(../images/common/back_pat01.png) center center / 1800px auto;
	}

	.top_menu .inner {
		margin: 0 auto;
		width: min(95%,1700px);
	}

	.top_menu h2 {
		margin: 0 0 70px;
		font-size: 3.4rem;
	}

	.top_menu ul {
		margin: 0 0 60px;
		gap: 25px;
	}

	.top_menu li {
		margin: 0;
		border-radius: 20px;
		height: 400px;
		overflow: hidden;
		width: calc(33% - 13px);
	}

	.top_menu li a {
		padding: 30px;
		display: flex;
		align-items: flex-start;
		position: relative;
		height: 100%;
	}

	.top_menu li figure {
		aspect-ratio: inherit;
		border-radius: 0;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		transition: all 0.3s ease;
	}

	.top_menu li h3 {
		margin: 0 0 0 auto;
		padding: 15px 10px;
		border-radius: 5px;
		position: relative;
		z-index: 2;
		background: #faf6e9;
		font-size: 2.8rem;
		font-weight: 500;
		writing-mode: vertical-rl;
		text-orientation: upright;
		line-height: 1.4;
		letter-spacing: 0.05em;
		transition: all 0.3s ease;
	}

	.top_menu li a:hover figure {
		transform: scale(1.05);
	}

	.top_menu li a:hover h3 {
		color: var(--color_red);
	}

	.top_menu li.btn_more {
		margin: 5px 0 0;
		height: auto;
		border-radius: 0;
		overflow: inherit;
		width: 100%;
	}

	.top_menu li.btn_more a {
		padding: 22px 0;
		width: 250px;
		display: block;
		font-size: 1.6rem;
		aspect-ratio: inherit;
		border-radius: 40px;
	}

	.top_menu li.menu_takeout {
		margin: 55px auto 0;
		width: 700px;
		height: auto;
	}

	.top_menu li.menu_takeout a {
		padding: 0;
		display: block;
	}

	.top_menu li.menu_takeout a > div {
		border-radius: 15px;
		overflow: hidden;
	}

	.top_menu li.menu_takeout figure {
		height: 200px;
		position: inherit;
		border-radius: 0;
	}

	.top_menu li.menu_takeout h3 {
		margin: 20px 0 0;
		background: none;
		padding: 0;
		writing-mode: inherit;
		text-orientation: inherit;
	}

}

.top_news {
	padding: 0 0 70px;
	background: url(../images/common/back_pat02.png) 0 0 / 1800px auto;
}

.top_news .inner {
	margin: 0 20px;
}

.top_news h2 {
	margin: 0 0 40px;
	padding: 20px 0 0;
	text-align: center;
	color: var(--color_brown);
	font-size: 2.6rem;
	font-weight: 700;
}

.top_news .news_column {
	margin: 0 0 40px;
	padding: 0 15px;
	background: #f9f8f1;
	border-radius: 10px;
	box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.1);
}

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

	.top_news {
		padding: 0 0 127px;
	}

	.top_news .inner {
		margin: 0 auto;
		width: min(95%,1100px);
	}

	.top_news h2 {
		margin: 0 0 75px;
		padding: 25px 0 0;
		font-size: 3.4rem;
	}

	.top_news .news_column {
		margin: 0 0 30px;
		padding: 0 20px;
		border-radius: 15px;
	}

}

.news_column li {
	padding: 15px 0;
	border-bottom: 1px solid #e7e1cd;
}

.news_column li:last-child {
	border-bottom: none;
}

.news_column li a {
	padding: 10px 10px;
	display: block;
}

.news_column li a > div {
	margin: 0 0 12px;
	display: flex;
}

.news_column li time {
	font-size: 1.6rem;
	white-space: nowrap;
	width: 130px;
	flex-shrink: 0;
}

.news_column li h3 {
	padding: 1px 0;
	text-align: center;
	font-size: 1.4rem;
	width: 100px;
	flex-shrink: 0;
}

.news_column li h4 {
	font-size: 1.6rem;
}

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

	.news_column li {
		padding: 14px 0;
	}

	.news_column li a {
		padding: 15px 10px;
		display: flex;
		align-items: flex-start;
		border-radius: 10px;
	}

	.news_column li a:hover {
		background: #f5eedd;
	}

	.news_column li a > div {
		margin: 0;
		display: contents;
	}

	.news_column li time {
		width: 150px;
	}

	.news_column li h3 {
		margin: 0 20px 0 0;
		padding: 3px 0;
	}

}

.btn_more {
	text-align: center;
}

.btn_more a {
	margin: 0 auto;
	padding: 22px 0;
	display: flex;
	font-size: 1.6rem;
	font-weight: 500;
	justify-content: center;
	background: #f9f8f1;
	width: 235px;
	border-radius: 30px;
	box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.1);
}

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


	.btn_more a {
		width: 250px;
		transition: all 0.3s ease;
	}

	.btn_more a:hover {
		background: var(--color_red);
		color: #fff;
	}

}

.top_bottom_navi {
	padding: 0 0 50px;
	background: url(../images/common/back_pat02.png) 0 0 / 1800px auto;
}

.top_bottom_navi .inner {
	margin: 0 20px;
}

.top_bottom_navi ul {
}

.top_bottom_navi li {
	margin: 0 0 20px;
}

.top_bottom_navi li a {
	display: flex;
	align-items: center;
	padding: 20px;
	border-radius: 10px;
	background: #f9f8f1;
	box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.1);
}

.top_bottom_navi li h3 {
	margin: 0 0 7px;
	font-size: 1.8rem;
	font-weight: 500;
	color: var(--color_brown);
}

.top_bottom_navi li figure {
	margin: 0 18px 0 0;
	border-radius: 10px;
	overflow: hidden;
	width: 100px;
	flex-shrink: 0;
}

.top_bottom_navi li figure img {
	aspect-ratio: 1 / 1;
}

.top_bottom_navi li p {
	font-size: 1.6rem;
}

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

	.top_bottom_navi {
		padding: 0 0 130px;
		background: url(../images/common/back_pat02.png) 0 0 / 1800px auto;
	}

	.top_bottom_navi .inner {
		margin: 0 auto;
		width: min(95%,1100px);
	}

	.top_bottom_navi ul {
		display: flex;
		justify-content: center;
		gap: 0 40px;
	}

	.top_bottom_navi li {
		margin: 0;
		text-align: center;
		transition: all 0.3s ease;
		position: relative;
	}

	.top_bottom_navi li a {
		display: flex;
		flex-direction: column;
		padding: 20px 30px 25px;
		border-radius: 15px;
		transition: all 0.3s ease;
	}

	.top_bottom_navi li a > div {
		display: contents;
	}

	.top_bottom_navi li h3 {
		margin: 0 0 15px;
		font-size: 2.2rem;
		transition: all 0.3s ease;
		order: 1;
	}

	.top_bottom_navi li figure {
		margin: 0 0 10px;
		border-radius: 15px;
		width: auto;
		order: 2;
	}

	.top_bottom_navi li p {
		margin: 0 -20px;
		order: 3;
	}

	.top_bottom_navi li:hover  {
		margin-top: -10px;
	}

	.top_bottom_navi li a:hover {
		box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
	}

	.top_bottom_navi li a:hover h3 {
		color: var(--color_red);
	}

}

/* -----------------
	パンくず
----------------- */

.path {
	margin: 0 10px;
}

.path ol {
	list-style: none;
	display: flex;

}

.path li {
	font-size: 1.4rem;
	position: relative;
}

.path li::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -2px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #443e35;
	border-right: 1px solid #443e35;
	transform: rotate(45deg);
}

.path li:first-child::after {
	display: none;
}

.path li a {
	padding: 8px 15px 8px 20px;
	display: block;
}

.path li:first-child a {
	padding-left: 0;
}

@media screen and (min-width: 768px) {

	.path {
		margin: 5px auto;
		width: min(95%,1100px);
	}

	.path li a {
		padding: 10px 15px 10px 20px;
	}

	.path li a:hover {
		color: var(--color_red);
	}

}

/* -----------------
	タイトルヘッダー
----------------- */

.page_header {
	border-radius: 20px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right top;
	background-image: url(../images/title/small_sp.png);
}

.page_header .inner {
	padding: 25px 20px;
	display: flex;
	height: 100%;
	align-items: center;
}

.page_header h1 {
	font-weight: 700;
	letter-spacing: 0;
	color: var(--color_brown);
	line-height: 1.2;
	font-size: 2.4rem;
}

.page_header {
	height: 143px;
}

.ecd_takeout .page_header,
.cate_menu .page_header {
	background-image: url(../images/title/menu_sp.jpg);
	background-position: center center;
	height: 300px;
}

.entry_kodawari .page_header {
	background-image: url(../images/title/kodawari_sp.jpg);
	background-position: center center;
	height: 300px;
}

.cate_shop .page_header {
	background-image: url(../images/title/shop_index_sp.jpg);
	background-position: center center;
	height: 300px;
}

.entry_shop .page_header {
	background-position: right top;
	background-image: url(../images/title/shop_detail_sp.jpg);
	height: 300px;
}

.entry_shop.ecd_private .page_header,
.entry_shop.ecd_bus .page_header {
	background-position: right top;
	background-image: url(../images/title/small_sp.png);
	height: 143px;
}

.ecd_takeout .page_header .inner,
.cate_menu .page_header .inner,
.entry_kodawari .page_header .inner,
.cate_shop .page_header .inner,
.entry_shop .page_header .inner {
	align-items: flex-end;
}

.ecd_takeout .page_header h1,
.cate_menu .page_header h1,
.entry_kodawari .page_header h1,
.cate_shop .page_header h1,
.entry_shop .page_header h1 {
	font-size: 3.4rem;
}

.entry_shop.ecd_private .page_header h1,
.entry_shop.ecd_bus .page_header h1 {
	margin: 10px 0;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--color_brown);
	text-shadow: none;
}

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

	.page_header {
		margin: 0 40px;
		border-radius: 20px;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		height: 250px;
	}

	.page_header .inner {
		margin: 0 auto;
		padding: 0;
		width: min(95%,1100px);
		align-items: center;
	}

	.page_header h1 {
		font-size: 4.6rem;
	}

	.page_header {
		background-position: right bottom;
		background-image: url(../images/title/small_pc.png);
	}

	.ecd_takeout .page_header,
	.cate_menu .page_header {
		background-image: url(../images/title/menu_pc.jpg);
		height: 350px;
	}

	.entry_kodawari .page_header {
		background-image: url(../images/title/kodawari_pc.jpg);
		height: 350px;
	}

	.cate_shop .page_header {
		background-image: url(../images/title/shop_index_pc.jpg);
		height: 350px;
	}

	.entry_shop .page_header {
		background-position: right bottom;
		background-image: url(../images/title/shop_detail_pc.jpg);
		height: 350px;
	}

	.entry_shop.ecd_private .page_header,
	.entry_shop.ecd_bus .page_header {
		background-position: right bottom;
		background-image: url(../images/title/small_pc.png);
		height: 250px;
		min-height: 250px;
	}

	.ecd_takeout .page_header .inner,
	.cate_menu .page_header .inner,
	.entry_kodawari .page_header .inner,
	.cate_shop .page_header .inner,
	.entry_shop .page_header .inner {
		align-items: center;
	}

	.ecd_takeout .page_header h1,
	.cate_menu .page_header h1,
	.entry_menu .page_header h1,
	.entry_kodawari .page_header h1,
	.cate_shop .page_header h1,
	.entry_shop .page_header h1 {
		font-size: 4.6rem;
	}

	.entry_shop.ecd_private .page_header h1,
	.entry_shop.ecd_bus .page_header h1 {
		margin: 20px 0;
		font-size: 4.6rem;
	}

}

/* -----------------
	メニュー一覧
----------------- */

.ecd_takeout .page_header h1,
.cate_menu .page_header h1 {
	font-size: 3.4rem;
	color: #fff;
	text-shadow: 0px 0px 10px rgba(89, 51, 31, 1);
}

.menu_index {
	margin: 0 0 60px;
}

.menu_list {
	margin: 45px 20px 50px;
	text-align: center;
}

.menu_list h2 {
	margin: 0 0 50px;
	padding: 0 0 20px;
	position: relative;
	font-size: 2.6rem;
	font-weight: 700;
	color: var(--color_brown);
}

.menu_list h2::before {
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 250px;
	height: 1px;
	background: #c9bd98;
}

.menu_list h2::after {
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	bottom: -0.5px;
	margin: auto;
	width: 20px;
	height: 2px;
	background: var(--color_red);
}

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

	.page_main .inner {
		margin: 0 auto;
		width: min(88%,1100px);
	}

	.ecd_takeout .page_header h1,
	.cate_menu .page_header h1,
	.entry_menu .page_header h1 {
		font-size: 4.6rem;
	}

	.menu_index {
		margin: 0 0 120px;
	}

	.menu_list {
		margin: 90px 0 100px;
	}

	.menu_list h2 {
		margin: 0 0 90px;
		padding: 0 0 30px;
		font-size: 3.4rem;
	}

	.menu_list h2::before {
		width: 500px;
	}

}

.menu_list ul {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(2,1fr);
}

.menu_list li a {
	display: block;
	position: relative;
}

.menu_list li p.tag {
	position: absolute;
	top: -12px;
	left: 10px;
	padding: 2px 5px 5px;
	line-height: 1;
	background: #c7161d;
	z-index: 2;
}

.menu_list li p.tag em {
	color: #fff;
	font-size: 1.2rem;
	font-weight: 500;
}

.menu_list li figure {
	margin: 0 0 8px;
	border-radius: 10px;
	aspect-ratio: 315 / 230;
	overflow: hidden;
}

.menu_list li figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.menu_list li h3 {
	font-size: 1.6rem;
	color: var(--color_brown);
	font-weight: 500;
}

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

	.menu_list ul {
		gap: 50px 70px;
		grid-template-columns: repeat(3,1fr);
	}

	.menu_list li p.tag {
		left: 20px;
	}

	.menu_list li p.tag em {
		font-size: 1.4rem;
	}

	.menu_list li figure {
		margin: 0 0 15px;
		border-radius: 20px;
		aspect-ratio: inherit;
		height: 232px;
		transition: all 0.3s ease;
	}

	.menu_list li figure img {
		height: 232px;
		transition: all 0.3s ease;
	}

	.menu_list li h3 {
		font-size: 2.2rem;
		transition: all 0.3s ease;
	}

	.menu_list li a:hover figure img {
		transform: scale(1.05);
	}

	.menu_list li a:hover h3 {
		color: var(--color_red);
	}

}

/* ---------------------
	メニューこだわり
--------------------- */

.entry_kodawari .page_main {
	overflow: hidden;
}

.entry_kodawari .page_header {
	height: 550px;
}

.entry_kodawari .page_header .inner {
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;
}

.entry_kodawari .page_header p {
	margin: 40px 0 5px;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 2.0;
}

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

	.entry_kodawari .page_header {
		height: 655px;
	}

	.entry_kodawari .page_header .inner {
		justify-content: center;
	}

	.entry_kodawari .page_header h1 {
		margin-left: -8px;
	}

	.entry_kodawari .page_header p {
		margin: 60px 0 0;
		font-size: 2.0rem;
		line-height: 2.4;
	}

}

.kodawari_column1 {
	margin: 60px 0 0;
	display: flex;
	flex-direction: column;
}

.entry_kodawari .entry h2 {
	color: var(--color_brown);
	font-size: 3.0rem;
	line-height: 1.6;
	font-weight: 700;
}

.entry_kodawari .entry p {
	font-size: 1.6rem;
	font-weight: 500;
}

.entry_kodawari .entry h2::first-letter {
	color: var(--color_red);
}

.kodawari_column1 > div,
.kodawari_column2 > div,
.kodawari_column4 > div {
	display: contents;
}

.kodawari_column1 h2 {
	margin: 0 20px 40px;
	order: 1;
}

.kodawari_column1 p {
	margin: 0 20px 20px;
}

.kodawari_img1 {
	margin: 0 0 20px;
	order: 2;
}

.kodawari_column1_text {
	order: 3;
}

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

	.kodawari_column1 {
		margin: 80px auto 0;
		flex-direction: inherit;
		width: min(95%,1100px);
	}

	.kodawari_column1 > div {
		margin-right: 6%;
		display: block;
		order: 1;
		width: 41%;
		min-width: 360px;
	}

	.entry_kodawari .entry h2 {
		font-size: 4.2rem;
	}

	.entry_kodawari .entry p {
		font-size: 2.0rem;
		line-height: 1.8;
	}

	.kodawari_column1 h2 {
		margin: 0 0 60px;
		order: 1;
	}

	.kodawari_column1 p {
		margin: 0 0 30px;
	}

	.kodawari_img1 {
		margin: 0 0 20px;
		order: 2;
		width: 53%;
		flex-shrink: 0;
	}

}

.kodawari_column2 {
	margin: 50px 20px 0;
	display: flex;
	flex-direction: column;
}

.kodawari_column2 h2 {
	margin: 0 0 35px;
	order: 1;
}

.kodawari_img2 {
	margin: 0 0 20px;
	order: 2;
}

.kodawari_img3 {
	margin: 0 0 20px;
	order: 4;
}

.kodawari_column2 p {
	margin: 0 0 20px;
}

.kodawari_column2_text1 {
	order: 3;
}

.kodawari_column2_text2 {
	order: 5;
}

.kodawari_column2_text3 {
	order: 6;
}

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

	.kodawari_column2 {
		margin: 150px auto 0;
		display: flex;
		flex-direction: inherit;
		width: min(95%,1100px);
	}

	.kodawari_column2 > div {
		margin: 60px 6% 0;
		display: block;
		order: 2;
		width: 34%;
		min-width: 310px;
	}

	.kodawari_column2 h2 {
		margin: 0 0 50px;
		order: 1;
	}

	.kodawari_img2 {
		order: 1;
		width: 20%;
	}

	.kodawari_img3 {
		order: 3;
		width: 34%;
	}

	.kodawari_column2 p {
		margin: 0 0 20px;
	}

}

.kodawari_column3 {
	margin: 55px 0 0;
}

.kodawari_img4 {
	height: 650px;
	border-radius: 20px;
	overflow: hidden;
}

.kodawari_column3_box {
	margin: -250px 20px 0;
	padding: 30px 40px 0;
	background: #fbf7eb;
	z-index: 2;
	position: relative;
	border-radius: 20px;
}

.kodawari_column3_back {
	border-radius: 20px;
	overflow: hidden;
}

.entry_kodawari .kodawari_column3 h2 {
	margin: 0 0 30px;
	line-height: 1.4;
}

.kodawari_column3 p {
	margin: 0 0 20px;
}

.kodawari_img5 {
	margin: -20px 15px 0;
}

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

	.kodawari_column3 {
		margin: 150px 0 0;
		position: relative;
	}

	.kodawari_column3_back {
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		background: url(../images/kodawari/kodawari_img4_pc.jpg) no-repeat center top / 1720px auto;
		height: 655px;
		border-radius: 0;
	}

	.kodawari_column3 .inner {
		margin: -315px auto 0;
		width: auto;
	}

	.kodawari_column3_box {
		margin: 0 0 0 80px;
		padding: 50px 60px 0;
		width: 620px;
	}

	.entry_kodawari .kodawari_column3 h2 {
		margin: 0 0 45px;
		line-height: 1.6;
	}

	.entry_kodawari .kodawari_column3 p {
		margin: 0 0 30px;
		line-height: 1.5;
	}

	.kodawari_img5 {
		margin: -70px 0 0;
		position: relative;
		z-index: 2;
	}

}

.kodawari_column4 {
	margin: 60px 0 50px;
	display: flex;
	flex-direction: column;
}

.kodawari_column4 h2 {
	margin: 0 20px 35px;
	order: 1;
}

.kodawari_img6 {
	margin: 0 0 20px;
	order: 3;
}

.kodawari_column4_text1 {
	margin: 0 20px 20px;
	order: 2;
}

.kodawari_column4_text {
	margin: 0 20px;
	order: 4;
}

.kodawari_column4_text p {
	margin: 0 0 20px;
}

.kodawari_column4_btn {
	margin: 30px 0 0;
}

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

	.kodawari_column4 {
		margin: 150px auto 130px;
		display: flex;
		flex-direction: inherit;
		width: min(95%,1100px);
	}

	.kodawari_column4 h2 {
		margin: 50px 0 50px;
		order: 1;
	}

	.kodawari_column4 > div {
		display: block;
		width: 41%;
	}

	.kodawari_img6 {
		margin: 0 6% 0 0;
		order: inherit;
		width: 53%;
	}

	.kodawari_column4_text1 {
		margin: 0 0 25px;
	}

	.kodawari_column4_text {
		margin: 0;
	}

	.kodawari_column4_text p {
		margin: 0 0 25px;
	}

	.kodawari_column4_btn {
		margin: 50px 0 0;
	}

}

.btn_w {
	margin: 20px auto;
	text-align: center;
}

.btn_w a {
	padding: 22px 35px;
	display: inline-block;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 500;
	background: #fff;
	border-radius: 40px;
	box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.1);
}

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

	.btn_w {
		margin: 20px auto;
		text-align: left;
	}

	.btn_w a {
		width: 250px;
	}

	.btn_w a:hover {
		background: var(--color_red);
		color: #fff;
	}

}

/* -----------------
	メニュー詳細
----------------- */

.menu_subject {
	margin: 15px 20px 0;
	padding: 10px 0 0;
	border-top: 1px solid #f2ebd4;
}

.menu_subject h3 {
	font-size: 1.2rem;
	font-weight: 500;
	white-space: nowrap;
}

.menu_subject h4 {
	padding: 2px 6px 4px;
	border-radius: 5px;
	background: #ebe2c6;
	font-size: 1.2rem;
	white-space: nowrap;
}

.menu_subject > ul {
	margin: 12px 0 0;
}

.menu_subject > ul > li {
	margin: 10px 0 0;
	display: flex;
	align-items: flex-start;
}

.menu_subject_tenpo {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.menu_subject_tenpo li {
	margin: 2px 0 3px 10px;
	font-size: 1.2rem;
}

.menu_subject_tenpo li a {
	padding: 0 18px 0 0;
	color: #6f4a16;
	background: url(../images/common/ico_link.svg) no-repeat right center / 14px auto;
}

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

	.menu_subject {
		margin: 15px auto 0;
		padding: 20px 0 0;
		width: min(95%,1100px);
		display: flex;
		align-items: center;
	}

	.menu_subject h3 {
		font-size: 1.4rem;
	}

	.menu_subject h4 {
		padding: 3px 8px 5px;
		font-size: 1.4rem;
	}

	.menu_subject > ul {
		margin: 0;
		display: flex;
		align-items: center;
	}

	.menu_subject > ul > li {
		margin: 0 0 0 22px;
		align-items: center;
	}

	.menu_subject_tenpo li {
		margin: 0 0 0 20px;
		font-size: 1.4rem;
	}

	.menu_subject_tenpo li a {
		padding: 0 18px 0 0;
		background: url(../images/common/ico_link.svg) no-repeat right center / 14px auto;
	}

}

.entry_menu .wrapper {
	overflow: inherit;
}

.menu_entry_column:has(.menu_navi) .entry_column {
	padding-right: 45px;
}

.entry.takeout .entry_column .media_l {
	margin-left: auto;
	margin-right: auto;
    text-align: center;
}

.menu_entry_column .entry_column .media_l {
	margin-left: 0;
	margin-right: 0;
}

.menu_navi {
	position: sticky;
	width: 35px;
	top: 80px;
	right: 0;
	float: right;
}

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

	.menu_entry_column:has(.menu_navi) .entry_column {
		padding-right: 120px;
	}

	.menu_navi {
		width: 60px;
		top: 120px;
	}

	.lg_1 .menu_navi,
	.lg_2 .menu_navi,
	.lg_3 .menu_navi,
	.lg_4 .menu_navi,
	.lg_5 .menu_navi,
	.lg_6 .menu_navi,
	.lg_7 .menu_navi {
		top: 220px;
	}

}

.menu_entry_column .menu_navi ul {
	margin: 0;
	padding: 10px 0;
	border-radius: 10px 0 0 10px;
	background: url(../images/common/back_pat02.png) center center / 1800px auto;
	box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.1);
}

.menu_entry_column .menu_navi li {
	margin: 0;
	padding: 0;
	font-size: 1.4rem;
	font-weight: 500;
	writing-mode: vertical-rl;
	text-orientation: upright;
	width: 100%;
}

.menu_entry_column .menu_navi li::before,
.menu_entry_column .menu_navi li::after {
	display: none;
}

.menu_entry_column .menu_navi li a {
	padding: 15px 0;
	color: #6f4a16;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	position: relative;
}

.menu_entry_column .menu_navi li a:hover,
.menu_entry_column .menu_navi li.act a {
	color: #c7161d;
}

.menu_entry_column .menu_navi li.act a::after {
	position: absolute;
	content: '';
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 2px;
	height: 20px;
	border-radius: 1px;
	background: #c7161d;
}

.menu_entry_column .menu_navi + .entry_column > h2 + .clearHidden,
.menu_entry_column .menu_navi + .entry_column > h3 + .clearHidden,
.menu_entry_column .menu_navi + .entry_column > h4 + .clearHidden,
.menu_entry_column .menu_navi + .entry_column > h5 + .clearHidden {
	display: none;
}

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

	.menu_entry_column .menu_navi ul {
		padding: 20px 0;
		border-radius: 50px;
	}

	.menu_entry_column .menu_navi li {
		font-size: 2.2rem;
		width: 60px;
	}

	.menu_entry_column .menu_navi li a {
		padding: 20px 0;
	}

}

/* -----------------
	店舗一覧
----------------- */

.cate_shop .page_header h1,
.entry_shop .page_header h1 {
	font-size: 3.4rem;
	color: #fff;
	text-shadow: 0px 0px 10px rgba(89, 51, 31, 1);
}

.shop_index {
	margin: 25px 20px 70px;
}

.shop_index_list li {
	margin: 0 0 20px;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.1);
}

.shop_index_list li a {
	padding: 20px;
	display: block;
}

.shop_index_list li h2 {
	margin: 0 0 15px -20px;
	padding: 2px 25px 2px 20px;
	position: relative;
	font-size: 2.0rem;
	line-height: 1.6;
	font-weight: 500;
	display: inline-block;
	border-left: 2px solid var(--color_red);
	background: url(../images/common/ico_link.svg) no-repeat right center / 14px auto;
}

.shop_index_list li p {
	margin: 0 0 10px;
}

.shop_index_list li .shop_index_column {
	display: flex;
	align-items: center;
}

.shop_index_list li figure {
	width: 150px;
	height: 150px;
	border-radius: 20px;
	overflow: hidden;
	flex-shrink: 0;
}

.shop_index_list li figure img {
	object-fit: cover;
	width: 150px;
	height: 150px;
}

.shop_index_list li .shop_index_column div {
	margin: 0 0 0 20px;
	width: calc(100% - 150px);
}

.shop_index_list li .shop_index_column dl {
	margin: 20px 0;
	font-size: 1.4rem;
}

.shop_index_list li .shop_index_column dt {
	padding: 0 0 6px;
	color: #7e5c2c;
	border-bottom: 1px solid #e7e1cd;
}

.shop_index_list li .shop_index_column dd {
	padding: 6px 0 0;
}

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

	.entry_shop .page_header h1,
	.cate_shop .page_header h1 {
		font-size: 4.6rem;
	}

	.shop_index {
		margin: 85px 0 130px;
	}

	.shop_index_list {
		display: grid;
		grid-template-columns: repeat(2,1fr);
		gap: 70px;
	}

	.shop_index_list li {
		margin: 0;
		transition: all 0.3s ease;
	}

	.shop_index_list li a {
		padding: 25px 40px 40px;
	}

	.shop_index_list li h2 {
		margin: 0 0 20px -40px;
		padding: 8px 25px 8px 40px;
		font-size: 2.2rem;
		transition: all 0.3s ease;
	}

	.shop_index_list li p {
		margin: 0 0 25px;
	}

	.shop_index_list li figure {
		width: 200px;
		height: 200px;
	}

	.shop_index_list li figure img {
		width: 200px;
		height: 200px;
	}

	.shop_index_list li .shop_index_column div {
		margin: 0 0 0 30px;
		width: calc(100% - 200px);
	}

	.shop_index_list li .shop_index_column dl {
		font-size: 1.6rem;
	}

	.shop_index_list li:hover {
		position: relative;
		top: -2.5px;
		box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
	}

	.shop_index_list li a:hover h2 {
		color: var(--color_red);
	}

}

/* -----------------
	店舗詳細
----------------- */

.entry_shop .page_header .inner {
	padding-top: 55px;
	display: block;
}

.entry_shop .page_header p {
	margin: 0 0 10px;
	font-size: 1.6rem;
	color: #fff;
}

.entry_shop .page_main {
	margin: -130px 0 0;
}

.entry_shop.ecd_private .page_main,
.entry_shop.ecd_bus .page_main {
	margin-top: 0;
}

.entry_shop .path a {
	color: #fff;
}

.entry_shop.ecd_private .path a,
.entry_shop.ecd_bus .path a {
	color: inherit;
}

.entry_shop .path li::after {
	border-color: #fff;
}

.entry_shop.ecd_private .path li::after,
.entry_shop.ecd_bus .path li::after {
	border-color: #443e35;
}

.shop_entry_column {
	margin: 0 20px 70px;
}

.shop_entry_main {
	margin: 0 0 40px;
}

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

	.entry_shop .page_header .inner {
		padding-top: 80px;
	}

	.entry_shop .page_main {
		margin: -130px 0 0;
	}

	.entry_shop.ecd_private .page_main,
	.entry_shop.ecd_bus .page_main {
		margin-top: 0;
	}

	.entry_shop .path {
		width: min(88%,1100px);
	}

	.entry_shop.ecd_private .path,
	.entry_shop.ecd_bus .path {
		width: min(95%,1100px);
	}

	.shop_entry_column {
		margin: 0;
		display: flex;
	}

	.shop_entry_main {
		margin: 0;
		width: calc(100% - 330px);
	}

}

.shop_img {
	margin: 10px 0 55px;
}

.shop_img .shop_img_slide {
	margin: 0 0 15px;
}

.shop_img .shop_img_slide .slick-slide {
	border-radius: 10px;
	overflow: hidden;
	height: 190px;
}

.shop_img .shop_img_slide .slick-slide img {
	object-fit: cover;
	height: 190px;
}

.shop_img .shop_img_thumb {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.shop_img .shop_img_thumb .slick-list {
	margin: 0 15px;
}

.shop_img .shop_img_thumb .slick-slide {
	margin: 0 5px;
	border-radius: 5px;
	overflow: hidden;
}

.shop_img .shop_img_thumb .slick-arrow {
	text-indent: -9999px;
	border: none;
	width: 15px;
	height: 30px;
}

.shop_img .shop_img_thumb .slick-prev {
	transform: rotate(-180deg);
	background: url(../images/common/ico_slider_arrow.svg) no-repeat center center / 100% auto;
}

.shop_img .shop_img_thumb .slick-next {
	background: url(../images/common/ico_slider_arrow.svg) no-repeat center center / 100% auto;
}

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

	.shop_img {
		margin: 10px 0 90px;
	}

	.shop_img .shop_img_slide {
		margin: 0 0 20px;
	}

	.shop_img .shop_img_thumb .slick-track {
	}

	.shop_img .shop_img_slide .slick-slide {
		border-radius: 20px;
		height: 440px;
	}

	.shop_img .shop_img_slide .slick-slide img {
		height: 440px;
	}

	.shop_img .shop_img_thumb .slick-slide {
		width: 100px !important;
		height: 57px;
		cursor: pointer;
	}

	.shop_img .shop_img_thumb .slick-slide img {
		height: 57px;
	}

	.shop_img .shop_img_thumb {
		justify-content: center;
	}

	.shop_img .shop_img_thumb .slick-list {
		margin: 0;
	}

}

.shop_entry_main h2 {
	margin: 0 0 15px;
	font-size: 2.6rem;
	font-weight: 500;
	color: var(--color_brown);
}

.shop_entry_main .shop_info tr {
	border-bottom: 1px solid #e7e1cd;
}

.shop_entry_main .shop_info tr:last-child {
	border-bottom: none;
}

.shop_entry_main .shop_info th {
	padding: 25px 20px 25px 0;
	font-weight: 500;
	white-space: nowrap;
	vertical-align: top;
	text-align: left;
	position: relative;
}

.shop_entry_main .shop_info th::after {
	position: absolute;
	content: '';
	left: 0;
	bottom: -1px;
	width: 10px;
	height: 1px;
	background: var(--color_red);
}

.shop_entry_main .shop_info tr:last-child::before,
.shop_entry_main .shop_info tr:last-child::after {
	display: none;
}

.shop_entry_main .shop_info td {
	padding: 25px 0;
	position: relative;
}

.shop_entry_main .shop_info td::after {
	position: absolute;
	content: '';
	right: 0;
	bottom: -1px;
	width: 10px;
	height: 1px;
	background: var(--color_red);
}

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

	.shop_entry_main h2 {
		margin: 0 0 50px;
		font-size: 3.4rem;
	}

	.shop_entry_main .shop_info th {
		padding: 35px 35px 35px 0;
	}

	.shop_entry_main .shop_info td {
		padding: 35px 0;
	}

}

.shop_entry_main .shop_open > dl > dt {
	vertical-align: middle;
	text-align: center;
	background: #ebe7d9;
	padding: 2px 10px;
	white-space: nowrap;
}

.shop_entry_main .shop_open > dl > dt span {
	display: block;
}

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

	.shop_entry_main .shop_open {
		display: table;
		width: 100%;
	}

	.shop_entry_main .shop_open > dl {
		display: table-row;
		position: relative;
	}

	.shop_entry_main .shop_open > dl::after {
		position: absolute;
		content: '';
		left: 0;
		bottom: 0;
		height: 20px;
		width: 100%;
		background: url(../images/common/back_pat01.png) center center / 1800px auto;
	}

	.shop_entry_main .shop_open > dl > dt {
		display: table-cell;
		padding: 20px 15px 40px;
	}

	.shop_entry_main .shop_open > dl > dd {
		padding-bottom: 20px;
		display: table-cell;
	}

	.shop_entry_main .shop_open > dl:last-child::after {
		display: none;
	}

	.shop_entry_main .shop_open > dl:last-child > dt {
		padding-bottom: 20px;
	}

	.shop_entry_main .shop_open > dl:last-child > dd {
		padding-bottom: 0;
	}

}

.shop_entry_main .shop_open_time dl {
	border-bottom: 1px solid #e7e1cd;
}

.shop_entry_main .shop_open_time dl:last-child {
	border-bottom: none;
}

.shop_entry_main .shop_open_time dt {
	padding: 10px 0 0;
	white-space: nowrap;
}

.shop_entry_main .shop_open_time dd {
	padding: 0 0 10px;
}

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

	.shop_entry_main .shop_open_time {
		display: table;
		width: 100%;
	}

	.shop_entry_main .shop_open_time dl {
		display: table-row;
	}

	.shop_entry_main .shop_open_time dt {
		padding: 15px 20px 15px 15px;
		display: table-cell;
	}

	.shop_entry_main .shop_open_time dd {
		padding: 15px 15px 15px 0;
		display: table-cell;
	}

}

.shop_entry_main .shop_private dt {
	color: #7e5c2c;
	font-weight: 400;
}

.shop_entry_main .shop_private dd {
	padding: 0 0 10px;
}

.shop_entry_main .shop_private dl:last-child dt,
.shop_entry_main .shop_private dl:last-child dd {
	padding-bottom: 0;
}

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

	.shop_entry_main .shop_private {
		display: table;
	}

	.shop_entry_main .shop_private dl {
		display: table-row;
	}

	.shop_entry_main .shop_private dt {
		padding: 0 30px 10px 0;
		display: table-cell;
	}

	.shop_entry_main .shop_private dd {
		display: table-cell;
	}

}

.shop_entry_main .shop_map .map_iframe {
	margin: 0 0 15px;
	width: 100%;
	border: 3px solid #e7e1cd;
}

.shop_entry_main .shop_map .map_iframe iframe {
	height: 300px;
	width: 100%;
}

.outlink_r {
	padding-right: 20px;
	font-weight: 500;
	background: url(../images/common/ico_blank.svg) no-repeat right center / 15px auto;
}

.outlink_w {
	padding-right: 20px;
	font-weight: 500;
	background: url(../images/common/ico_blank_w.svg) no-repeat right center / 15px auto;
}

.page_admin_inner {
	margin: 50px auto;
	width: min(88%,1100px);
}

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

	.shop_entry_main .shop_map .map_iframe iframe {
		height: 400px;
	}

}

.shop_entry_side {
	text-align: center;
}

.shop_side_column {
	margin: 0 0 20px;
	padding: 35px 20px 25px;
	border-radius: 0 0 10px 10px;
	background: #fff;
	border-top: 3px solid var(--color_red);
	box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.1);
}

.shop_side_column h3 {
	margin: 0 0 30px;
	font-size: 2.2rem;
	font-weight: 500;
}

.shop_side_column h4 {
	margin: 0 0 5px;
	font-size: 1.4rem;
}

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

	.shop_entry_side {
		margin: 10px 0 0 80px;
		position: sticky;
		top: 110px;
		width: 250px;
		height: 100%;
	}

	.lg_1 .shop_entry_side,
	.lg_2 .shop_entry_side,
	.lg_3 .shop_entry_side,
	.lg_4 .shop_entry_side,
	.lg_5 .shop_entry_side {
		top: 210px;
	}

}

.shop_side_column ul {
	margin: 15px 0 25px;
}

.shop_side_column li {
	margin: 0 0 10px;
	border-radius: 10px;
	overflow: hidden;
}

.shop_side_column li a {
	padding: 18px 0;
	display: block;
	font-size: 1.6rem;
	font-weight: 500;
	color: #fff;
	background: url(../images/common/back_pat04.png) 0 0 / 600px auto;
	transition: all 0.3s ease;
}

.shop_side_column p.shop_tel {
	line-height: 1.2;
}

.shop_side_column p.shop_tel a {
	padding: 0 0 0 25px;
	font-size: 3.0rem;
	color: var(--color_brown);
	font-weight: 500;
	background: url(../images/common/ico_tel.svg) no-repeat 0 center / 17px auto;
}

.shop_side_box p a {
	padding: 18px 0;
	display: block;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.1);
	transition: all 0.3s ease;
}

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

	.shop_side_column li a:hover {
		background: url(../images/common/back_pat05.png) 0 0 / 600px auto;
	}

	.shop_side_box p a span {
		transition: all 0.3s ease;
	}

	.shop_side_box p a:hover {
		background: #c7161d;
		color: #fff;
	}

	.shop_side_box p a:hover span {
		background: url(../images/common/ico_blank_w.svg) no-repeat right center / 15px auto;
	}

}

.sp_conv_btn {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	border-top: 4px solid var(--color_red);
	z-index: 3;
}

.sp_conv_btn ul {
	display: flex;
}

.sp_conv_btn li {
	background: #fff;
	text-align: center;
	width: 38%;
	flex-shrink: 0;
}

.sp_conv_btn li > a {
	padding: 10px 0;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.4rem;
	font-weight: 500;
	height: 100%;
}

.sp_conv_tel h4 {
	font-size: 1.2rem;
	line-height: 1.4;
}

.sp_conv_tel p.shop_tel {
	line-height: 1.2;
}

.sp_conv_tel p.shop_tel {
	padding-left: 16px;
	font-size: 1.8rem;
	font-weight: 500;
	color: var(--color_brown);
	background: url(../images/common/ico_tel.svg) no-repeat 0 center / 13px auto;
}

.sp_conv_reserve a {
	color: #fff;
	background: url(../images/common/back_pat04.png) 0 0 / 600px auto;
}

.sp_conv_btn .sp_conv_takeout {
	width: 24%;
}

.sp_conv_btn .sp_conv_takeout a {
	text-align: left;
	color: var(--color_brown);
}

.sp_conv_btn .sp_conv_takeout p {
	line-height: 1.3;
}

.sp_conv_btn .sp_conv_takeout a span {
	padding-right: 20px;
	background: url(../images/common/ico_blank.svg) no-repeat right center / 15px auto;
}

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

	.sp_conv_btn {
		display: none;
	}

}

.shop_bottom_navi {
	border-top: 1px solid #e4dcc3;
}

.shop_bottom_navi li {
	margin-bottom: 2px;
	background: url(../images/common/back_pat02.png) 0 0 / 1800px auto;
}

.shop_bottom_navi li:last-child {
	margin-bottom: none;
}

.shop_bottom_navi li a {
	padding: 20px;
	display: flex;
	align-items: center;
}

.shop_bottom_navi li figure {
	margin: 0 20px 0 0;
	width: 70px;
	height: 70px;
	border-radius: 10px;
	overflow: hidden;
	flex-shrink: 0;
}

.shop_bottom_navi li figure img {
	object-fit: cover;
}

.shop_bottom_navi li h4 {
	margin: 0 0 5px;
	font-size: 1.6rem;
	font-weight: 500;
	color: var(--color_brown);
}

.shop_bottom_navi li p {
	font-size: 1.2rem;
}

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

	.shop_bottom_navi {
		border: none;
	}

	.shop_bottom_navi ul {
		display: flex;
		gap: 0 1px;
	}

	.shop_bottom_navi li {
		border: none;
		width: 100%;
	}

	.shop_bottom_navi li a {
		padding: 40px;
	}

	.shop_bottom_navi li figure {
		margin: 0 30px 0 0;
		width: 110px;
		height: 110px;
	}

	.shop_bottom_navi li figure img {
		transition: all 0.3s ease;
	}

	.shop_bottom_navi li h4 {
		margin: 0 0 10px;
		font-size: 2.2rem;
		transition: all 0.3s ease;
	}

	.shop_bottom_navi li p {
		font-size: 1.6rem;
	}

	.shop_bottom_navi li a:hover h4 {
		color: var(--color_red);
	}

	.shop_bottom_navi li a:hover figure img {
		transform: scale(1.05);
	}

}

/* -----------------
	お知らせ
----------------- */

.entry_news .page_header {
	height: auto;
}

.entry_news .page_header .inner {
	padding: 45px 20px;
}

.entry_news .page_header h1 {
	margin: 10px 0;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--color_brown);
	text-shadow: none;
}

.entry_news .page_header p,
.entry_news .page_header time {
	color: var(--color_brown);
	font-size: 1.4rem;
}

.page_header_bottom {
	display: flex;
	align-items: center;
}

.page_header_subcate {
	margin-left: 15px;
	padding: 1px 25px;
}

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

	.entry_news .page_header {
		min-height: 250px;
	}

	.entry_news .page_header .inner {
		padding: 50px;
		width: min(95%,1200px);
	}

	.entry_news .page_header h1 {
		margin: 20px 0;
		font-size: 4.6rem;
	}

	.page_header_subcate {
		padding: 1px 20px;
	}

}

.btn_back {
	text-align: center;
}

.btn_back a {
	padding: 20px 20px;
	border-radius: 50px;
	display: inline-flex;
	align-items: center;
	background: #f9f8f1;
	box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.1);

}

.btn_back .icon_back {
	margin-right: 10px;
	display: inline-block;
	width: 14px;
	height: 12px;
	transform: rotate(-180deg);
	background: url(../images/common/ico_link.svg) no-repeat 0 center / 100% auto;
}

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

	.btn_back a:hover {
		background: var(--color_red);
		color: #fff;
	}

	.btn_back a:hover .icon_back {
		background: url(../images/common/ico_link_w.svg) no-repeat 0 center / 100% auto;
	}

}

.cate_news .page_main {
	margin: 0 20px 70px;
}

.page_main .news_column {
	margin: 45px 0 40px;
	border-top: 1px solid #e7e1cd;
}

.page_main .news_column li:last-child {
	border-bottom: 1px solid #e7e1cd;
}

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

	.cate_news .page_main {
		margin: 0 0 130px;
	}

	.page_main .news_column {
		margin: 90px 0 80px;
	}

}

.pager {
	margin: 0;
	display: flex;
	justify-content: center;
}

.pager .pager_prev {
	margin-right: auto;
}

.pager .pager_next {
	margin-left: auto;
}

.pager .pager_prev,
.pager .pager_next {
	width: 100px;
	height: 55px;
}

.pager .pager_prev a,
.pager .pager_next a {
	width: 100px;
	height: 55px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #f9f8f1;
	box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.1);
	border-radius: 50px;
	font-size: 1.6rem;
}

.pager .pager_prev span,
.pager .pager_next span {
	margin: 0 4px;
}

.pager .pager_prev .arrow,
.pager .pager_next .arrow {
	display: flex;
	align-items: center;
}

.pager .pager_prev img,
.pager .pager_next img {
	width: 14px;
}

.pager .pager_prev .arrow img {
	transform: rotate(180deg);
}

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

	.pager .pager_prev,
	.pager .pager_next {
		width: 150px;
	}

	.pager .pager_prev a,
	.pager .pager_next a {
		width: 150px;
		height: 55px;
	}

}

.pager .pager_list {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2.0rem;
}

.pager .pager_list_item {
	display: none;
}

.pager .pager_list_item.cur > span,
.pager .pager_list_item a {
	padding: 13px 30px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.pager .pager_list_item.cur {
	display: block;
	background: #e7e1cd;
}

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

	.pager .pager_list_item {
		margin: 0 5px;
		border-radius: 30px;
		border: 1px solid #e7e1cd;
		display: block;
	}

}


/* -----------------
	詳細ページ
----------------- */

.entry_inner {
	margin-bottom: 70px;
}

.entry_inner .entry_column {
}

.entry_column {
	padding: 50px 20px 30px;
	text-align: left;
}

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

	.entry_inner {
		margin: 0 auto 130px;
		width: min(95%,1100px);
	}

	.entry_column {
		padding: 90px 0 60px;
	}

}

/* -----------------
	ユニットパーツ
----------------- */

.entry-container {
	margin: 0;
}

.entry_column p {
	margin: 0 0 10px;
	font-size: 1.6rem;
	line-height: 1.5;
}

.entry_column p.note {
	margin-bottom: 0;
	font-size: 1.2rem;
	line-height: 1.6;
	color: #757575;
	text-indent: -1em;
	padding-left: 1em;
}

.entry_column p.note em,
.entry_column p.note strong {
	color: #ba4c4c;
	font-weight: normal;
}

.entry_column p.p_min {
	font-size: 1.4rem;
}

.entry_column .columnImage {
	border-radius: 20px;
}

@media screen and (min-width: 768px) {

	.entry_column p {
		margin: 0 0 20px;
		line-height: 1.6;
	}

	.entry_column p.note {
		font-size: 1.4rem;
		line-height: 1.8;
	}

}

.entry_column h2 {
	margin: 45px 0 35px;
	font-size: 2.6rem;
	line-height: 1.3;
	font-weight: 700;
	color: var(--color_brown);
}

.entry_column h3 {
	margin: 35px 0;
	font-size: 2.4rem;
	line-height: 1.4;
	font-weight: 700;
	position: relative;
	display: flex;
	align-items: center;
	color: var(--color_brown);
}

.entry_column h3::after {
	margin-left: 10px;
	content: '';
	height: 1px;
	display: block;
	flex-grow: 1;
	background: var(--color_red);
}

.entry_column h4 {
	margin: 30px 0 20px;
	padding: 6px 0 6px 20px;
	font-size: 2.0rem;
	font-weight: 700;
	line-height: 1.4;
	border-left: 1px solid var(--color_red);
	color: var(--color_brown);
}

.entry_column h5 {
	margin: 25px 0 20px;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.4;
	color: var(--color_brown);
}

@media screen and (min-width: 768px) {

	.entry_column h2 {
  		margin: 90px 0 65px;
  		font-size: 3.4rem;

	}

	.entry_column h3 {
		margin: 60px 0;
		font-size: 3.2rem;
	}

	.entry_column h3::after {
		margin-left: 30px;
	}

	.entry_column h4 {
		margin: 50px 0;
		padding: 8px 0 8px 20px;
		font-size: 2.8rem;
	}

	.entry_column h5 {
		margin: 45px 0;
		font-size: 2.4rem;
	}

}

.entry_column p a {
	padding-right: 25px;
	color: var(--color_red);
	text-decoration: underline;
	background: url(../images/common/ico_link.svg) no-repeat right 5px center / 15px auto;
}

.entry_column p a[target="_blank"] {
  padding-right: 28px;
  background: url(../images/common/ico_blank.svg) no-repeat right 8px center / 15px auto;
}

.entry_column p em {
	color: var(--color_red);
	font-weight: bold;
}

.entry_column p strong {
	font-weight: bold;
}

@media screen and (min-width: 768px) {

	.entry_column p a:hover {
		text-decoration: none;
	}

}

.entry_column p.btn_link {
	margin: 30px 0;
}

.entry_column p.btn_link a {
	padding: 18px 45px 18px 20px;
	border-radius: 50px;
	display: inline-flex;
	align-items: center;
	box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.1);
	background: #f9f8f1 url(../images/common/ico_link.svg) no-repeat right 20px center / 15px auto;
	text-decoration: none;
	color: inherit;
	transition: all 0.3s ease;
}

.entry_column p.btn_link a[target="_blank"] {
	padding-right: 40px;
	background: #f9f8f1 url(../images/common/ico_blank.svg) no-repeat right 20px center / 15px auto;
}

.entry_column p.text_link a {
	color: inherit;
	text-decoration: none;
	display: inline-block;
}

.entry_column p.btn_large {
	margin: 30px 0;
}

.entry_column p.btn_large a {
	padding: 20px;
	font-size: 2.0rem;
	font-weight: 700;
	color: #fff;
	text-decoration: none;
	border-radius: 50px;
	display: block;
	background: url(../images/common/back_pat04.png) 0 0 / 600px auto;
}

.entry_column p.btn_large > span {
	position: relative;
	display: block;
}

.entry_column p.btn_large > span::before {
	position: absolute;
	content: '';
	width: 30px;
	height: 30px;
	top: 0;
	bottom: 0;
	right: 20px;
	margin: auto;
	border-radius: 50%;
	background: #fff url(../images/common/ico_link.svg) no-repeat center center / 15px auto;
}

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

	.entry_column p.btn_link a:hover {
		background: var(--color_red) url(../images/common/ico_link_w.svg) no-repeat right 20px center / 15px auto;
		color: #fff;
	}

	.entry_column p.btn_link a[target="_blank"]:hover {
		background: var(--color_red) url(../images/common/ico_blank_w.svg) no-repeat right 20px center / 15px auto;
	}

	.entry_column p.btn_large {
		margin: 60px auto;
		width: 600px;
	}

	.entry_column p.btn_large a {
		padding: 27px;
		font-size: 2.2rem;
		text-align: center;
		transition: all 0.3s ease;
	}

	.entry_column p.btn_large > span {
		position: relative;
		display: block;
		border-radius: 50px;
		background: url(../images/common/back_pat05.png) 0 0 / 600px auto;
	}

	.entry_column p.btn_large > span::before {
		width: 40px;
		height: 40px;
		right: 25px;
	}

	.entry_column p.btn_large a:hover {
		background: none;
	}

}

.entry_column ul {
	margin: 20px 0;
}

.entry_column ul li {
	margin: 0 0 10px;
	padding-left: 22px;
	font-size: 1.6rem;
	line-height: 1.5;
	position: relative;
}

.entry_column ul li::before {
	position: absolute;
	content: '';
	left: 0;
	top: 5px;
	width: 15px;
	height: 15px;
	background: var(--color_brown);
	border-radius: 15px;
}

.entry_column ul li::after {
	position: absolute;
	content: '';
	top: 11px;
	left: 6px;
	width: 3px;
	height: 3px;
	background: #fff;
	border-radius: 4px;
}

.entry_column ol {
	margin: 20px 0;
	padding: 0;
	list-style: none;
	counter-reset: ol_li;
}

.entry_column ol li {
	margin: 0 0 10px;
	padding-left: 20px;
	text-indent: -10px;
	font-size: 1.6rem;
	line-height: 1.5;
	position: relative;
}

.entry_column ol li::before {
	counter-increment: ol_li;
	content: counter(ol_li)'.';
	color: var(--color_red);
	left: -10px;
	position: relative;
	font-size: 1.6rem;
	font-weight: 700;
}

@media screen and (min-width: 768px) {

	.entry_column ul,
	.entry_column ol {
		margin: 45px 0;
	}

	.entry_column ul li {
		margin: 0 0 20px;
	}

	.entry_column ol li {
		margin: 0 0 20px;
		padding-left: 30px;
		text-indent: -13x;
	}

	.entry_column ol li::before {
		left: -15px;
	}
}

.entry_column p.caption {
	margin-top: 5px;
	text-align: left !important;
}

@media screen and (min-width: 768px) {

	.entry_column p.caption {
	  	margin-top: 15px;
	}

}

.entry_column [class*="column_left"] *:first-child,
.entry_column [class*="column_right"] *:first-child {
	margin-top: 0;
}

.entry_column .column-table- .acms-table-scrollable th,
.entry_column .column-table- .acms-table-scrollable td {
	display: table-cell;
	white-space: nowrap;
}

.entry_column .column-table- {
	margin: 30px 0;
}

.entry_column .column-table- table {
	width: 100%;
}

.entry_column .column-table- tr {
	border-bottom: 1px solid #e7e1cd;
}

.entry_column .column-table- th {
	padding: 25px 10px;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.4;
	vertical-align: middle;
	text-align: left;
	position: relative;
	white-space: nowrap;
}

.entry_column .column-table- .acms-table-scrollable th,
.entry_column .column-table- .acms-table-scrollable td,
.entry_column .column-table- .js-table-unit-scroll-hint th,
.entry_column .column-table- .js-table-unit-scroll-hint td {
	padding-left: 25px;
	padding-right: 25px;
}

.entry_column .column-table- th::after,
.entry_column .column-table- td:last-child::after {
	position: absolute;
	content: '';
	bottom: -1px;
	width: 10px;
	height: 1px;
	background: var(--color_red);
}

.entry_column .column-table- th::after {
	left: 0;
}

.entry_column .column-table- td:last-child::after {
	right: 0;
}

.entry_column .column-table- td {
	padding: 25px 10px;
	font-size: 1.6rem;
	position: relative;
	vertical-align: top;
}

@media screen and (min-width: 768px) {

	.entry_column .column-table- {
		margin: 40px 0;
	}

	.entry_column .column-table- th {
		padding: 40px 30px;
		font-size: 1.8rem;
	}

	.entry_column .column-table- td {
		padding: 35px 30px;
	}

	.entry_column .column-table- .acms-table-scrollable th,
	.entry_column .column-table- .acms-table-scrollable td,
	.entry_column .column-table- .js-table-unit-scroll-hint th,
	.entry_column .column-table- .js-table-unit-scroll-hint td {
		padding-left: 30px;
		padding-right: 30px;
	}

}

[class^="column-table"] .entry-container {
	overflow-x: auto;
}

[class^="column-table"] .entry-container .acms-table-scrollable {
	margin-bottom: 30px;
}

@media screen and (min-width: 768px) {

	[class^="column-table"] .entry-container .acms-table-scrollable {
		margin-bottom: 30px;
	}

}

@media screen and (min-width: 768px) {

	.entry_column .media_l {
		margin: 0 50px;
	}

	.entry_column .column_left .media_l,
	.entry_column .column_right .media_l,
	.entry_column .column_left2 .media_l,
	.entry_column .column_right2 .media_l,
	.entry_column .column3_left .media_l,
	.entry_column .column3_center .media_l,
	.entry_column .column_right .media_l {
		margin-left: 0;
		margin-right: 0;
	}

}

.entry_column .column_pc {
	display: none;
}

.entry_column .column_sp {
	display: block;
}

@media screen and (min-width: 768px) {

	.entry_column .column_pc {
		display: block;
	}

	.entry_column .column_sp {
		display: none;
	}

}



/* -----------------
	カラム設定
----------------- */

.column_clear {
	clear: both;
}

.column_left,
.column_right,
.column_left2,
.column_right2 {
	margin-bottom: 30px;
}

.column_left2 {
	margin-right: 6%;
	float: left;
	width: 47%;
}

.column_right2 {
	float: left;
	width: 47%;
}

.column-map-left,
.column-map-right,
.column-media-left,
.column-video-left,
.column-media-right,
.column-video-right {
	float: none;
}

.entry_column [class*="column-map"],
.entry_column [class*="column-media"],
.entry_column [class*="column-video"] {
	margin-bottom: 30px;
}

.column_border {
	padding: 25px;
	clear: both;
	border: 1px solid #efefef;
	border-radius: 10px;
}

.column_border [class*="column-media"] {
	margin: 0;
}

.entry_column [class*="column_left2"] .column-media-auto,
.entry_column [class*="column_left2"] .column-media-left,
.entry_column [class*="column_left2"] .column-media-center,
.entry_column [class*="column_left2"] .column-media-right,
.entry_column [class*="column_right2"] .column-media-auto,
.entry_column [class*="column_right2"] .column-media-left,
.entry_column [class*="column_right2"] .column-media-center,
.entry_column [class*="column_right2"] .column-media-right {
	margin-bottom: 0px;
}

.entry_column *:first-child,
.entry_column [class*="column3_"] *:first-child,
.entry_column [class*="column_left"] *:first-child,
.entry_column [class*="column_right"] *:first-child {
	margin-top: 0;
}


@media screen and (min-width: 768px) {

	.column_left,
	.column_left2 {
		margin-right: 5%;
		float: left;
		width: 47.5%;
	}

	.column_right,
	.column_right2 {
		float: left;
		width: 47.5%;
	}

	.column_left,
	.column_right,
	.column_left2,
	.column_right2 {
		margin-bottom: 50px;
	}

	.column3_left,
	.column3_center {
		margin-right: 5%;
	}

	.column3_left,
	.column3_center,
	.column3_right {
		float: left;
		width: 30%;
	}

	.column-map-left,
	.column-media-left,
	.column-video-left {
		margin-right: 5%;
		float: left;
	}

	.column-map-right,
	.column-media-right,
	.column-video-right {
		margin-left: 5%;
		float: right;
	}

	.entry_column [class*="column-map"],
	.entry_column [class*="column-media"],
	.entry_column [class*="column-video"] {
		margin-bottom: 50px;
	}

	.entry_column [class*="column_left"] .column-media-auto,
	.entry_column [class*="column_left"] .column-media-left,
	.entry_column [class*="column_left"] .column-media-center,
	.entry_column [class*="column_left"] .column-media-right,
	.entry_column [class*="column_right"] .column-media-auto,
	.entry_column [class*="column_right"] .column-media-left,
	.entry_column [class*="column_right"] .column-media-center,
	.entry_column [class*="column_right"] .column-media-right {
		margin-bottom: 0px;
	}

}


/* -----------------------
　　　footer
----------------------- */

.top .footer.
.entry_shop .footer,
.footer {
	padding-bottom: 60px;
}

.footer_sns {
	padding: 20px 0;
	background: #f9f8f1;
	display: flex;
	justify-content: center;
	align-items: center;
}

.footer_sns h4 {
	margin: 0 30px 0 0;
	padding: 15px 30px 15px 0;
	border-right: 1px solid #e7e1cd;
	font-size: 1.6rem;
}

.footer_sns p a {
	padding: 15px 0 15px 55px;
	font-size: 1.6rem;
	font-weight: 500;
	background: url(../images/common/icon_insta.svg) no-repeat 0 center / 45px auto;
}

@media screen and (min-width: 768px) {

	.footer {
		padding-bottom: 0;
	}

	.footer_sns {
		padding: 25px 0;
	}

	.footer_sns p a {
		padding-left: 50px;
		background-size: 40px auto;
	}

	.footer_sns p a:hover {
		color: var(--color_red);
	}

}

/* -----------------------
　　　404
----------------------- */

#notfound {
	color: var(--color_text);
}

#wrapper_404 {
	margin: 10px;
	padding: 30px;
	width: auto;
    background-image: none;
}

#box_404 {
	border-radius: 5px;
}

.inner_left404 {
    margin-right: 0;
    margin-bottom: 40px;
	text-align: left;
}

.inner_left404 img {
	margin: 0 auto;
	width: 200px;
}

.inner_right404 {
    font-size: 1.4rem;
}

.inner_right404 h1 {
    font-size: 2.0rem;
    margin-bottom: 20px;
	text-align: left;
}

.inner_right404 p {
    margin-bottom: 10px;
}

.inner_right404 p a {
	text-decoration: underline;
}

#copyright_404 {
    display: block;
	margin: 10px 10px 0;
	text-align: center;
	font-size: 1.2rem;
}

.inner_left404 .site_logo_gold {
	margin: 0 10px 0 0;
	width: 40px;
}

.inner_left404 .site_logo_text {
	width: 130px;
}

.inner_left404 a {
	display: flex;
	align-items: center;
}

@media screen and (min-width: 600px) {

	#notfound {
	    padding-top: 50px;
	}

	#wrapper_404 {
		margin: 0 auto;
		padding: 60px 60px 0 70px;
		width: 1100px;
	}

	#box_404 {
		margin-bottom: 40px;
		padding: 0;
		display: flex;
		align-items: center;
	}

	.inner_left404 {
	    margin-right: 50px;
	    margin-bottom: 0;
	    text-align: left;
	}

	.inner_left404 img {
		margin: 0 auto;
		width: 250px;
		text-align: center;
	}

	.inner_right404 {
	    text-align: left;
	    font-size: 16px;
	}

	.inner_right404 h1 {
	    font-size: 24px;
	    margin-bottom: 20px;
	    text-align: left;
	}

	.inner_left404 .site_logo_gold {
		margin: 0 10px 0 0;
		width: 40px;
	}

}

@media screen and (min-width: 600px) and (max-width: 768px) {

	#wrapper_404 {
		padding: 60px 20px;
		width: 600px;
	}

	#box_404 {
		margin-bottom: 20px;
	}

	.inner_left404 {
	    margin-right: 30px;
	}

	.inner_left404 img {
		width: 200px;
	}

	.inner_right404 {
	    text-align: left;
	    font-size: 14px;
	}

	.inner_right404 h1 {
	    font-size: 20px;
	}

}

#adminBox .acms-admin-btn-admin {
	padding: 5px;
	font-size: 1.2rem;
}

#adminBox {
    margin-bottom: 0 !important;
    height: 80px;
    width: 100%;
    z-index: 100;
}

.acms-admin-btn-action-group th,
.acms-admin-btn-action-group td {
	padding-right: 10px !important;
	background-image: none !important;
	font-size: 1.4rem !important;
	white-space: nowrap !important;
}

.acms-admin-form .entryFormLiteEditor, .acms-admin-form textarea,
.acms-admin-btn,
.acms-admin-form select {
	font-size: 14px;
}

#adminBox {
    height: 100px;
	overflow: hidden;
}


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

  .lg_6 #adminBox,
  .lg_7 #adminBox,
  .lg_5 #adminBox,
  .lg_4 #adminBox,
  .lg_3 #adminBox,
  .lg_2 #adminBox,
  .lg_1 #adminBox {
	  position: fixed;
	  top: 0;
  }

	#adminBox .acms-admin-btn-admin {
		padding: 10px;
		font-size: 1.2rem;
	}

}

.titleWrapper {
	margin: 0 auto;
	padding: 40px 30px;
	max-width: 1100px;
	background-color: #f2f2f5;
	text-align: left;
}

.titleWrapper h2 {
	margin: 0 0 30px 0;
	font-size: 3.0rem;
}

.custom_field_edit h3 {
	padding: 20px 10px;
	font-size: 1.8rem;
	font-weight: bold;
}

.entryFormLiteEditor a {
	text-decoration: underline;
	color: var(--color_red);
}

.entryFormLiteEditor em {
  color: var(--color_red);
  font-weight: bold;
}

.entryFormLiteEditor strong {
  font-weight: bold;
}

.entryFormLiteEditor span.p_min {
	font-size: 1.2rem;
}

.js-lazy-load {
	transform: translateY(0);
	transition: opacity 0.3s cubic-bezier(0.5, 0, 0, 1);
}

.entryFormSelectBottom {
  max-width: inherit !important;
}

.entryFormWrapper,
.entryFormTable td {
	text-align: left;
}

.entryFormColumn .entryFormColumnHead .entryFormColumnHeadLayoutBox input,
.entryFormColumn .entryFormColumnHead .entryFormColumnHeadLayoutBox select {
	max-width: inherit;
}

@media (min-width: 768px) {
  .acms-admin-inline-btn .acms-admin-btn-admin,
  .formEntryActionUnit .acms-admin-btn-admin {
    font-size: 14px;
  }

  .comPostWrapper .acms-admin-btn-admin {
    font-size: 16px;
  }
}
