@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: #444;
}

input {
	vertical-align: middle;
	margin: 0;
	padding: 0;
	color: #444;
}

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;
}

/* ---------------
　　　共用
--------------- */

html {
    font-size: 62.5%;
	scroll-padding-top: 100px;
}

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

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

}

body {
	font-size: 1.6rem;
	letter-spacing: 0.03em;
	line-height: 1;
	color: #333;
	background-color: #f5f4ee;
	-webkit-text-size-adjust: none;
	-webkit-print-color-adjust: exact;
  	font-optical-sizing: auto;
}

a:link {
	border: none;
	color: #333;
	text-decoration: none;
	transition: all 0.1s ease;
}

a:visited {
	border: none;
	color: #333;
	text-decoration: none;
}

a:active {
	border: none;
	color: #333;
	text-decoration: none;
}

a:hover {
	border: none;
	color: #333;
	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: "Noto Serif JP", serif;
}

.lg_5 .wrapper,
.lg_4 .wrapper,
.lg_3 .wrapper,
.lg_2 .wrapper,
.lg_1 .wrapper {
  margin-top: 100px;
}

.entry_edit .wrapper {
  margin-top: 250px;
}

@media screen and (max-width: 767px) {

	.wrapper {
	}

	.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;
	}

}

@media screen and (min-width: 768px) {

	.main {
		position: relative;
	}

}

.center {
	text-align: center;
}

/* -----------------
	header
----------------- */

.header {
	height: 80px;
	width: 100%;
	left: 0;
	top: 0;
	display: flex;
	position: fixed;
	justify-content: space-between;
	align-items: center;
	box-shadow: 0px 5px 5px 0px rgba(100, 94, 58, 0.1);
	background-color: #f5f4ee;
	z-index: 10;
	transition: all 0.3s ease;
}

.lg_5 .header,
.lg_4 .header,
.lg_3 .header,
.lg_2 .header,
.lg_1 .header {
	top: 100px;
}

.header .logo {
	margin: 10px 0 10px 10px;
	width: 130px;
	transition: all 0.3s ease;
}

.header_gnavi {
	display: flex;
	align-items: center;
}

@media screen and (min-width: 768px) {

	.header {
		height: 100px;
	}

	.header .logo {
		margin: 15px 0 15px 20px;
		width: 150px;
	}

}

.header_gnavi ul li {
	display: none;
}

@media screen and (min-width: 768px) {

	.header_gnavi ul {
		display: flex;
		align-items: center;
	}

	.header_gnavi ul li {
		font-size: 1.6rem;
		display: block;
		transition: all 0.3s ease;
	}

	.header_gnavi ul li a {
		padding: 0 25px;
		height: 100px;
		display: flex;
		justify-content: center;
		align-items: center;
		transition: all 0.3s ease;
	}

	.header_gnavi ul li a span {
		position: relative;
	}

	.header_gnavi ul li a span::after {
		position: absolute;
		content: '';
		bottom: -12px;
		left: 0;
		right: 0;
		width: 0;
		height: 1px;
		background: #8a7329;
		margin: auto;
		transition: all 0.3s ease 0s;
	}

}

.header_gnavi .btn_reserve {
	font-size: 1.4rem;
	display: block;
}

.header_gnavi .btn_reserve a {
	padding: 0 20px;
	height: 80px;
	background: #8a7329;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
}

.header_gnavi .btn_reserve.ico_blank a span {
	padding-right: 18px;
	color: #fff;
	background: url(../images/common/ico_blank_w.svg) no-repeat right center / 9px auto;
}

@media screen and (min-width: 768px) {

	.header_gnavi .btn_reserve {
		margin-left: 20px;
		font-size: 1.8rem;
	}

	.header_gnavi .btn_reserve a {
		padding: 0 60px;
		height: 100px;
		transition: all 0.3s ease 0s;
	}

	.header_gnavi .btn_reserve a span::after {
		display: none;
	}

	.header_gnavi .ico_blank a span {
		padding-right: 18px;
		background: url(../images/common/ico_blank_g.svg) no-repeat right center / 9px auto;
	}

	.header_gnavi .ico_lang > a span {
		padding-left: 20px;
		background: url(../images/common/ico_lang_g.svg) no-repeat left center / 16px auto;
	}

	.header_gnavi .ico_lang {
		position: relative;
	}

	.header_gnavi .ico_lang span::after {
		display: none;
	}

	.header_gnavi .ico_lang:hover > ul {
		display: block;
  		animation-name: fadeIn;
  		animation-fill-mode:forwards;
  		animation-duration: 0.8s;
	}

	.header_gnavi .ico_lang > ul {
		position: absolute;
		top: 100px;
		display: block;
		width: 150px;
		display: none;
		opacity: 0;
	}

	.top_header_up .header_gnavi .ico_lang > ul {
		top: 80px;
	}

	.header_gnavi .ico_lang > ul li {
		background: #f5f4ee;
		font-size: 1.6rem;
		border-bottom: 1px solid #e2dfd0;
	}

	.header_gnavi .ico_lang > ul li:last-child {
		border-bottom: none;
	}

	.header_gnavi .ico_lang > ul li a {
		display: block;
		text-align: center;
		padding: 13px 10px;
		height: auto;
		color: #333;
		text-shadow: none !important;
	}

	.header_gnavi .ico_lang > ul li a:hover {
		background: #ebe8d9;
	}

	.header_gnavi .btn_reserve.ico_blank a span {
		padding-right: 18px;
		color: #fff;
		background: url(../images/common/ico_blank_w.svg) no-repeat right center / 9px auto;
	}

	.header_gnavi ul li a:hover {
		color: #8a7329;
	}

	.header_gnavi ul li a:hover span::after {
		width: 100%;
	}

	.header_gnavi .btn_reserve a:hover {
		background: #b79425;
	}

}

#menu_btn {
	margin: 0;
    padding: 0;
	width: 80px;
	height: 80px;
	position: relative;
	border: none;
	background: none;
	flex-shrink: 0;
	transition: all 0.3s ease;
}

#menu_btn span {
	display: block;
}

#menu_btn::before {
	top: 40px;
}

#menu_btn span::before {
	top: 32px;
}

#menu_btn::after {
	top: 48px;
}

#menu_btn::before,
#menu_btn::after,
#menu_btn span::before {
	margin: 0 auto;
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	width: 23px;
	height: 2px;
	background-color: #620e2c;
	transition: all 0.3s ease;
}

@media screen and (min-width: 768px) {

	#menu_btn {
		width: 100px;
		height: 100px;
		transition: all 0.3s ease 0s;
	}

	#menu_btn::before {
		top: 48px;
	}

	#menu_btn span::before {
		top: 38px;
	}

	#menu_btn::after {
		top: 58px;
	}

	#menu_btn::before,
	#menu_btn::after,
	#menu_btn span::before {
		width: 30px;
		transition: all 0.3s ease 0s;
	}

	#menu_btn:hover span::before {
		top: 35px;
	}

	#menu_btn:hover::after {
		top: 61px;
	}

}

.header_menu {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	transition: opacity 0.4s ease;
	opacity: 0;
	z-index: -1;
}

.menu_open .header_menu {
	opacity: 1;
	z-index: 110;
}

body.menu_open {
	position: fixed;
	width: 100%;
}

.menu_open .header_menu {
	position: fixed;
	height: 100%;
	width: 100%;
	overflow: auto;
}

.top .header_menu .inner,
.page .header_menu .inner {
	margin: 70px auto 0;
    width: 100%;
	text-align: center;
}

@media screen and (min-width: 768px) {

	.top .header_menu .inner,
	.page .header_menu .inner {
		margin: 160px auto 100px;
    	width: min(95%,720px);
	}

	.lg_1.menu_open .header_menu .inner,
	.lg_2.menu_open .header_menu .inner,
	.lg_3.menu_open .header_menu .inner,
	.lg_4.menu_open .header_menu .inner,
	.lg_5.menu_open .header_menu .inner {
		padding-bottom: 100px;
	}

	.lg_1.menu_open .header_menu,
	.lg_2.menu_open .header_menu,
	.lg_3.menu_open .header_menu,
	.lg_4.menu_open .header_menu,
	.lg_5.menu_open .header_menu {
		top: 100px;
		transition: none;
	}


}

.menu_navi {
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid #585856;
	text-align: center;
}

.menu_navi li {
	font-size: 1.6rem;
}

.menu_navi li a {
	padding: 20px;
	color: #fff;
	display: inline-block;
}

.menu_navi li.menu_home a {
	color: #c1a258;
}

.menu_navi li a span {
	position: relative;
}

.menu_navi li a span::after {
	position: absolute;
	content: '';
	bottom: -12px;
	left: 0;
	right: 0;
	width: 0;
	height: 1px;
	background: #c1a258;
	margin: auto;
	transition: all 0.3s ease 0s;
}

.menu_navi li a:hover span::after {
	width: 100%;
}

@media screen and (min-width: 768px) {

	.menu_navi {
		margin-bottom: 70px;
		padding-bottom: 70px;
	}
	.menu_navi li a:hover {
		color: #c1a258;
	}

}

.menu_link li {
	font-size: 1.4rem;
}

.menu_link li a {
	padding: 20px 25px;
	color: #fff;
	display: inline-block;
}

.menu_link .ico_lang a span {
	padding-left: 20px;
	background: url(../images/common/ico_lang.svg) no-repeat 0 center / 16px auto;
}

.menu_link .ico_blank a span {
	padding-right: 18px;
	background: url(../images/common/ico_blank_w.svg) no-repeat right center / 9px auto;
}

.menu_link li.ico_lang {
	margin-bottom: 30px;
}

.menu_link li.ico_lang .menu_link {
	margin: 0 20px;
	display: none;
}

.menu_link li.ico_lang .menu_link li {
	border-bottom: 1px solid #282828;
	font-size: 1.6rem;
}

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

.menu_link li.ico_lang .menu_link li a {
	padding: 12px 0;
	background: #000;
	display: block;
}

.menu_link li.ico_lang .menu_link li a span {
	padding: 0;
	background: none;
}

.menu_footer_link {
	margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid #585856;
}

.menu_brand_logo.fLayTyp02 {
	margin: 30px 0 0;
	padding: 30px 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 {
	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 {
	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.fLayTyp03 {
	display: block;
	width: 100%;
	padding: 40px 0;
	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_link {
		display: flex;
		justify-content: center;
	}

	.menu_link li a {
		padding: 0 25px;
		display: block;
	}

	.menu_link li.ico_lang {
		display: none;
	}

	.menu_footer_link {
		display: none;
	}

	.menu_brand_logo {
		display: none;
	}

	.menu_corp_logo.fLayTyp03 {
		display: none;
	}

}


.menu_close {
	position: absolute;
	width: 40px;
	height: 40px;
	top: 20px;
	right: 19px;
	cursor: pointer;
	border: none;
	background: none;
	text-indent: -9999px;
}

.menu_close::before,
.menu_close::after {
	position: absolute;
	content: '';
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background: #fff;
	width: 30px;
	height: 2px;
}

.menu_close::before {
	transform: rotate(-45deg);
}

.menu_close::after {
	transform: rotate(45deg);
}

@media screen and (min-width: 768px) {

	.menu_close {
		width: 50px;
		height: 50px;
		top: 25px;
		right: 25px;
		cursor: pointer;
	}

}

#sp_menu_back {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	transition: opacity 0.4s ease;
	opacity: 0;
	z-index: -1;
	background: rgba(0, 0, 0, 0.8);
}

.menu_open #sp_menu_back {
	opacity: 1;
	z-index: 100;
}


/* -----------------
	トップ
----------------- */

.top {
	overflow: hidden;
}

.top.normal,
.top.loaded {
	overflow: auto;
}

#loading {
	width: 100vw;
	height: 100vh;
	background-color: #f5f4ee;
	position: fixed;
	display: grid;
	align-items: center;
	justify-content: center;
	left: 0;
	top: 0;
	z-index: 999;
	transition: all 1s ease-out 1s;
}

.loaded #loading {
	opacity: 0;
}

.normal #loading {
	display: none;
}

#animation_container {
	transition: opacity 3s ease-out;
}

.loaded #animation_container {
	opacity: 0;
}

.top_header {
	position: fixed;
	margin: 0;
	padding: 0;
	line-height: 0;
	top: 0px;
	left: 0;
	width: 100%;
	display: flex;
	align-items: center;
}
/*
.sp .top_header {
	max-width: 680px;
	margin: 0 auto;
	left: 50%;
	transform: translateX(-50%);
}
*/
.top_header,
.top_header * {
	transition: all 0.2s ease;
}
/*
.header.fixed {
  background-color: rgb(245, 244, 238);
  box-shadow: 0px 10px 10px 0px rgba(100, 94, 58, 0.1);
}
*/
video {
  object-fit: cover;
  position: absolute;
  height: 100%;
  width: 100%;
}

.mainvisual {
  position: relative;
}

.mainvisual_fixed {
  display: block;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  position: sticky;
  top: 0;
  left: 0;
  line-height: 0;
  z-index: 1;
  display: none;
}

.loaded .mainvisual_fixed {
	display: block;
}

.normal.loaded .mainvisual_fixed {
  display: none;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

#animation_container {
	background-color: rgba(245, 244, 238, 0);
	width: 299px;
	height: 315px;
}

.top_header {
    position: relative;
}

/*
.normal .top_header {
	height: 665px;
	background: url(../images/top/main_sp.jpg) no-repeat center top / cover;
}
*/

.top_header .top_movie_normal {
	display: none;
	position: sticky;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100vh;
	line-height: 0;
}

.normal .top_header .top_movie_normal {
	display: block;
}

.top_header.top_header_up .header {
	background: none;
	box-shadow: none;
	height: auto;
	align-items: flex-start;
}

.top_header .header .logo .logo_w {
	display: none;
}

.top_header .header .logo .logo_dr {
	display: block;
}

.top_header.top_header_up .header .logo .logo_w {
	display: block;
}

.top_header.top_header_up .header .logo .logo_dr {
	display: none;
}

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

/*
	.normal .top_header {
		height: 1010px;
		background: url(../images/top/main_pc.jpg) no-repeat center center / cover;
	}
*/

	.top_header.top_header_up .header .logo {
		margin: 40px 0 0 40px;
		width: 210px;
	}

}

.top_header.top_header_up #menu_btn {
	background: rgba(0,0,0,0.6);
}

.top_header.top_header_up #menu_btn::before,
.top_header.top_header_up #menu_btn::after,
.top_header.top_header_up #menu_btn span::before {
	background-color: #fff;
}

@media screen and (min-width: 768px) {

	.top_header.top_header_up .header_gnavi li a {
		color: #fff;
		text-shadow:0 0 10px #000;
	}

	.top_header.top_header_up .header_gnavi .ico_blank a span {
		background-image: url(../images/common/ico_blank_w.svg);
	}

	.top_header.top_header_up .header_gnavi .ico_lang > a span {
		background-image: url(../images/common/ico_lang_w.svg);
	}

	.top_header .header_gnavi .btn_reserve {
		display: block;
	}

	.top_header.top_header_up .header_gnavi .btn_reserve a {
		text-shadow: none;
	}

	.top_header.top_header_up #menu_btn {
		background: #000;
	}

	.top_header.top_header_up .header_gnavi .ico_lang > ul li a {
		color: #333;
	}

}

.top_header_lead {
	margin: 0 20px;
	padding: 260px 0 0;
	color: #fff;
	font-size: 2.8rem;
	line-height: 1.6;
}

.ico_arrow_right_w {
	padding-right: 20px;
	background: url(../images/common/ico_link_m_w.svg) no-repeat right center / 13px auto;
}

.top_header .btn_topsidebanner,
.top_header .btn_season {
	position: absolute;
	left: 0;
	bottom: -45px;
	color: #fff;
	font-size: 1.8rem;
	display: block;
	z-index: 2;
}

.top_header .btn_season.spring {
	background: url(../images/top/btn_season_spring.png) no-repeat 0 0 / 350px auto;
}

.top_header .btn_season.summer {
	background: url(../images/top/btn_season_summer.png) no-repeat 0 0 / 350px auto;
}


.top_header .btn_season.autumn {
	background: url(../images/top/btn_season_autumn.png) no-repeat 0 0 / 350px auto;
}

.top_header .btn_season.winter {
	background: url(../images/top/btn_season_winter.png) no-repeat 0 0 / 350px auto;
}

.top_header .btn_season a {
	padding: 65px 0 15px 40px;
	color: #fff;
	display: block;
	width: 350px;
	height: 118px;
}

.top_header .btn_season a span {
	position: relative;
}

.top_header .btn_season a span::after {
	position: absolute;
	content: '';
	left: 0;
	bottom: -5px;
	height: 1px;
	width: 0;
	background: #fff;
	transition: all 0.3s ease;
}

.top_header .btn_topsidebanner {
	position: absolute;
	left: 0;
	bottom: -25px;
	display: block;
	z-index: 2;
	width: 340px;
}

.top_header .btn_topsidebanner .btn_topsidebanner_img_ov {
	display: none;
}

@media screen and (min-width: 768px) {

	.top_header_lead {
		margin: 0 auto;
		padding: 490px 0 0;
    	width: min(95%,1080px);
		font-size: 3.4rem;
	}

	.top_header .btn_topsidebanner,
	.top_header .btn_season.spring,
	.top_header .btn_season.summer,
	.top_header .btn_season.autumn,
	.top_header .btn_season.winter {
		bottom: 50px;
		background-size: 390px auto;
	}

	.top_header .btn_season a {
		padding: 70px 110px 15px 60px;
		width: 390px;
	}

	.top_header .btn_season:hover span::after {
		width: 100%;
	}

	.top_header .btn_topsidebanner {
		width: 340px;
		height: 140px;
	}

	.top_header .btn_topsidebanner a {
		position: relative;
		display: block;
	}

	.top_header .btn_topsidebanner img {
		position: absolute;
		top: 0;
		left: 0;
		width: 340px;
		height: 140px;
	}

	.top_header .btn_topsidebanner .btn_topsidebanner_img_ov {
		display: block;
	}

	.top_header .btn_topsidebanner a:hover .btn_topsidebanner_img {
		opacity: 0;
	}

}

@media screen and (min-width: 768px) and (max-width: 1159px) {

	.top_header.top_header_up .header .logo {
		margin-left: 20px;
		width: 180px;
	}

	.header_gnavi ul li a {
		padding: 0 20px;
	}

	.header_gnavi .btn_reserve a {
		padding: 0 30px;
	}

}

@media screen and (min-width: 768px) and (max-width: 1049px) {

	.top_header.top_header_up .header .logo {
		width: 160px;
	}

	.header_gnavi ul li {
		font-size: 1.4rem;
	}

	.header_gnavi ul li a {
		padding: 0 10px;
	}

	.header_gnavi .btn_reserve {
		font-size: 1.6rem;
	}

	.header_gnavi .btn_reserve a {
		padding: 0 15px;
	}

	#menu_btn {
    	width: 80px;
	}

}

.top_sec_search {
	padding: 30px 20px 20px;
	background: #000;
}

.top_sec_search .search_column {
	margin: 0 0 5px;
	padding: 12px 5px;
	border-radius: 5px;
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}
.top_sec_search .search_column li {
	padding: 5px 10px;
	font-size: 1.2rem;
	border-left: 1px solid #c5c5c5;
	display: flex;
	justify-content: center;
	align-items: center;
	white-space: nowrap;
}

.top_sec_search .search_column li:first-child {
	border: none;
}

.icon {
	margin-right: 5px;
	display: inline-block;
}

.icon_area {
	width: 12px;
	height: 14px;
	background: url(../images/common/ico_area.png) no-repeat center center / cover;
}

.icon_date {
	width: 14px;
	height: 14px;
	background: url(../images/common/ico_date.png) no-repeat center center / cover;
}

.icon_time {
	width: 14px;
	height: 14px;
	background: url(../images/common/ico_time.png) no-repeat center center / cover;
}

.icon_member {
	width: 9px;
	height: 14px;
	background: url(../images/common/ico_member.png) no-repeat center center / cover;
}

.icon_purpose {
	width: 15px;
	height: 15px;
	background: url(../images/common/ico_purpose.png) no-repeat center center / cover;
}

@media screen and (min-width: 768px) {

	.top_sec_search {
		display: none;
	}

}

.top_sec_search .search_shop {
	padding: 25px 0 25px 30px;
	border-bottom: 1px solid #686666;
	font-size: 1.4rem;
	background: url(../images/common/ico_restaurant_search_w.svg) no-repeat 0 center / 20px auto;
}

.top_sec_search .search_shop a {
	color: #fff;
}

.top_sec_search .recent_column {
	margin: 20px 0 10px;
}

.top_sec_search .recent_column .search_recent {
	margin: 0 0 10px;
	padding: 3px 0 3px 30px;
	font-size: 1.4rem;
	color: #fff;
	background: url(../images/common/ico_recent.png) no-repeat 0 center / 20px auto;
}

.top_sec_search .recent_column ul {
	margin: 0 0 0 30px;
	display: flex;
	flex-wrap: wrap;
	gap: 10px 25px;
}

.top_sec_search .recent_column li {
	font-size: 1.4rem;
}

.top_sec_search .recent_column li a {
	color: #fff;
}

.top_back {
	padding-bottom: 90px;
	background: url(../images/top/bottom_back_sp.png) no-repeat 0 bottom / 100% auto;
}

.top_img_column {
	height: 330px;
	display: flex;
	justify-content: center;
}

.top_sec_img h2 {
	font-size: 2.0rem;
	writing-mode: vertical-rl;
    text-orientation: upright;
	line-height: 1.8;
	letter-spacing: 0.05em;
}

.top_sec_img figure {
	margin: 0 20px;
}

@media screen and (min-width: 768px) {

	.top_back {
		padding-bottom: 250px;
		background: url(../images/top/bottom_back_pc.png) no-repeat center bottom / contain;
	}

	.top .main .inner {
		margin: 0 auto;
		width: min(95%,1440px);
	}

	.top .main .top_sec_img .inner {
		width: min(95%,1620px);
	}

	.top_sec_img {
		height: 1035px;
	}

	.top_img_column {
		padding: 0;
		height: 490px;
		display: flex;
		justify-content: center;
	}

	.top_sec_img h2 {
		padding: 130px 0 0;
		font-size: 3.0rem;
		line-height: 2.0;
	}

	.top_sec_img figure {
		display: none;
	}

}

.top_sec_course {
	margin: 30px 0 0;
}

.top_sec_course figure {
	padding: 0 20px 40px;
	background: url(../images/top/course_img.png) no-repeat right -15px bottom -10px / 140px auto;
}

.top_course_list {
	border-top: 1px solid #eae3d9;
	position: relative;
	z-index: 2;
}

.top_course_list li {
	font-size: 1.6rem;
	border-bottom: 1px solid #eae3d9;
}

.top_course_list li a {
	padding: 15px 50px 15px 20px;
	display: block;
	color: #333;
	position: relative;
	overflow: hidden;
	background: url(../images/common/ico_link_m_g.svg) no-repeat right 20px center / 13px auto;
}

@media screen and (min-width: 768px) {

	.top_sec_course {
		margin: 100px 0 0;
		min-height: 475px;
		background: url(../images/top/course_img.png) no-repeat calc(50% + 605px) 185px / 410px auto;
	}

	.top_sec_course .inner {
		display: flex;
	}

	.top_sec_course figure {
		margin-right: 6%;
		padding: 0;
		width: 56.5%;
		background: none;
	}

	.top_course_list {
		width: 37.5%;
	}

	.top_course_list li {
		font-size: 1.8rem;
	}

	.top_course_list li a {
		padding: 17px 50px 17px 20px;
	}

	.top_course_list li a::before {
		position: absolute;
		content: '';
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		transform: translateX(-100%);
		background: #f0eee3;
		transition: all 0.4s ease 0s;
		z-index: -1;
	}

	.top_course_list li a:hover {
		color: #a1874a;
		transition: all 0.3s ease;
	}

	.top_course_list li a:hover::before {
		transform: translateX(0);
	}

}

.dlpo_banquet .top_img_column {
	padding: 70px 0 0;
	background: url(../images/top/dlpo_banquet/sec_img_back_sp.png) no-repeat center 3px / 100% auto;
}

.dlpo_banquet .top_sec_course figure {
	background: url(../images/top/dlpo_banquet/course_img.png) no-repeat right -20px bottom / 120px auto;
}

@media screen and (min-width: 768px) {

	.dlpo_banquet .top_sec_img {
		background: url(../images/top/dlpo_banquet/sec_img_pc.jpg) no-repeat center bottom / 1620px auto;
	}

	.dlpo_banquet .top_img_column {
		padding: 0;
		background: url(../images/top/dlpo_banquet/sec_img_back_pc.png) no-repeat calc(50% + 10px) 0 / auto 100%;
	}

	.dlpo_banquet .top_sec_course {
		background: url(../images/top/dlpo_banquet/course_img.png) no-repeat calc(50% + 640px) bottom / 340px auto;
	}

}

.dlpo_child .top_img_column {
	padding: 70px 0 0;
	background: url(../images/top/dlpo_child/sec_img_back_sp.png) no-repeat center bottom -10px / 100% auto;
}

.dlpo_child .top_sec_course figure {
	background: url(../images/top/dlpo_child/course_img.png) no-repeat right -10px bottom -10px / 90px auto;
}

@media screen and (min-width: 768px) {

	.dlpo_child .top_sec_img {
		background: url(../images/top/dlpo_child/sec_img_pc.jpg) no-repeat center bottom / 1620px auto;
	}

	.dlpo_child .top_img_column {
		padding: 0;
		background: url(../images/top/dlpo_child/sec_img_back_pc.png) no-repeat calc(50% + 0px) 0 / auto 100%;
	}

	.dlpo_child .top_sec_course {
		background: url(../images/top/dlpo_child/course_img.png) no-repeat calc(50% + 600px) bottom / 245px auto;
	}

}

.dlpo_brand .top_img_column {
	padding: 70px 0 0;
	background: url(../images/top/dlpo_brand/sec_img_back_sp.png) no-repeat center 25px / 100% auto;
}

.dlpo_brand .top_sec_course figure {
	background: url(../images/top/dlpo_brand/course_img.png) no-repeat right -60px bottom -10px / 140px auto;
}

@media screen and (min-width: 768px) {

	.dlpo_brand .top_sec_img {
		background: url(../images/top/dlpo_brand/sec_img_pc.jpg) no-repeat center bottom / 1620px auto;
	}

	.dlpo_brand .top_img_column {
		padding: 0;
		background: url(../images/top/dlpo_brand/sec_img_back_pc.png) no-repeat calc(50% + 90px) 0 / auto 100%;
	}

	.dlpo_brand .top_sec_course {
		background: url(../images/top/dlpo_brand/course_img.png) no-repeat calc(50% + 605px) 185px / 410px auto;
	}

}

.top_sec_concept {
	margin: 45px 0 0;
	position: relative;
}

.top_concept_slide,
.top_anniv_slide {
	display: flex;
	justify-content: flex-end;
	order: 2;
}

.top_concept_slide > div,
.top_anniv_slide > div {
	width: 100%;
}

.top_concept_slide figure,
.top_anniv_slide figure {
	width: 100%;
	height: 325px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

@media screen and (min-width: 768px) {

	.top_sec_concept {
		margin: 130px 0 0;
		height: 1010px;
	}

	.top_concept_slide,
	.top_anniv_slide {
		position: absolute;
		top: 0;
		right: 0;
	}

	.top_concept_slide > div,
	.top_anniv_slide > div {
		width: 1440px;
	}

	.top_concept_slide figure,
	.top_anniv_slide figure {
		max-width: 1440px;
		height: 1010px;
	}

}

@media screen and (min-width: 768px) and (max-width: 1449px) {


	.top_concept_slide,
	.top_anniv_slide {
		position: inherit;
	}

	.top_concept_slide > div,
	.top_anniv_slide > div {
		width: 100%;
	}

}

.concept_slide_dot {
	position: absolute;
	right: 15px;
	top: 15px;
}

.top_slide_dot .slick-dots {
	display: flex;
	justify-content: center;
}

.top_slide_dot .slick-dots li {
	margin: 0 5px;
	flex-shrink: 0;
}

.top_slide_dot .slick-dots li button {
	margin: 0;
	padding: 0;
	text-indent: -9999px;
	background: #e7e1cf;
	border: none;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	display: block;
}

.top_slide_dot .slick-dots li.slick-active button {
	background: #a1874a;
}

@media screen and (min-width: 768px) {

	.concept_slide_dot {
		position: absolute;
		right: auto;
		left: 370px;
		top: 515px;
	}

}

.top_slide_column {
	width: 100%;
}

.top_slide_column .inner {
	position: relative;
}

.top_slide_box {
	margin: -100px 0 40px;
	padding: 30px;
	background: #f5f4ee;
	display: inline-flex;
	justify-content: flex-start;
}

.top_slide_box h2,
.top_sec_season h2,
.top_menu_box h2,
.top_banquet_box h2 {
	margin: 0 0 0 30px;
	writing-mode: vertical-rl;
    text-orientation: upright;
	font-size: 2.8rem;
	letter-spacing: 0.05em;
	order: 2;
}

.top_slide_box h2 a,
.top_sec_season h2 a,
.top_menu_box h2 a,
.top_banquet_box h2 a {
	display: flex;
	align-items: center;
}

.top_slide_box p,
.top_menu_box p,
.top_banquet_box p {
	margin: 25px 0 0;
	writing-mode: vertical-rl;
    text-orientation: upright;
	font-size: 1.4rem;
	line-height: 2.4;
	order: 1;
}

@media screen and (min-width: 768px) {

	.top_slide_column {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
	}

	.top_slide_box {
		margin: 0;
		padding: 90px 140px 0 0;
		width: 450px;
		height: 550px;
		display: flex;
		justify-content: flex-end;
	}

	.top_slide_box h2,
	.top_sec_season h2,
	.top_menu_box h2,
	.top_banquet_box h2 {
		margin: 0 0 0 80px;
		font-size: 3.6rem;
	}

	.top_slide_box h2 a,
	.top_sec_season h2 a,
	.top_menu_box h2 a,
	.top_banquet_box h2 a {
		transition: all 0.2s ease;
	}

	.top_slide_box p,
	.top_menu_box p,
	.top_banquet_box p {
		margin: 40px 0 0;
		font-size: 1.6rem;
	}

	.top_slide_box h2 a:hover,
	.top_sec_season h2 a:hover,
	.top_menu_box h2 a:hover,
	.top_banquet_box h2 a:hover {
		color: #a1874a;
	}

}

@media screen and (min-width: 768px) and (max-width: 1477px) {

	.top .main .top_sec_concept .inner,
	.top .main .top_sec_anniv .inner {
		width: 100%;
	}

}

.top_sec_anniv {
	margin: 0;
	position: relative;
}

.top_sec_anniv .top_slide_column .inner {
	display: flex;
	justify-content: flex-end;
}

.top_anniv_slide {
	right: 0;
}

.top_sec_anniv .top_slide_box {
	 padding: 30px 30px 30px 20px;
}

.anniv_slide_dot {
	position: absolute;
	left: 10px;
	top: 15px;
}

@media screen and (min-width: 768px) {

	.top_sec_anniv {
		height: 1010px;
	}

	.top_sec_anniv .top_slide_column .inner {
		display: block;
	}

	.top_anniv_slide {
  		left: 0;
  		right: auto;
	}

	.top_sec_anniv .top_slide_box {
 		margin-left: auto;
	 	padding: 90px 80px 0 0;
	}

	.anniv_slide_dot {
		right: 370px;
		top: 515px;
		left: auto;
	}

}

.top_sec_season {
	margin: 20px auto 0;
}

.top_sec_season h2 {
	margin: 0 auto;
	text-align: left;
	line-height: 1.3;
}

.top_season_column ul {
	margin: 40px 0 0;
}

.top_season_column li {
	margin: 0 20px 40px 0;
	display: flex;
}

.top_season_column li h3 {
	margin: 0 0 0 20px;
	padding: 25px 0 0;
	writing-mode: vertical-rl;
    text-orientation: upright;
	font-size: 2.0rem;
	letter-spacing: 0.05em;
	position: relative;
}

.top_season_column li h3::before {
	position: absolute;
	content: '';
	right: 13px;
	top: 0;
	margin: auto;
	width: 1px;
	height: 15px;
	background: #b09351;
}

.top_season_column li h3 span {
	margin-top: 25px;
	font-size: 1.4rem;
	display: block;
}

.top_season_column li figure {
	margin: 50px 0 0;
}

.top_season_column li figure a {
	display: block;
	overflow: hidden;
	position: relative;
}

.top_season_column li figure .icon_arrow_circle {
	position: absolute;
	right: 10px;
	bottom: 10px;
}

@media screen and (min-width: 768px) {

	.top_sec_season {
		margin: 250px auto 0;
	}

	.top_sec_season h2 {
		margin: 0;
		order: inherit;
	}

	.top_sec_season .inner {
		display: flex;
	}

	.top_season_column ul {
		margin: 0 0 0 120px;
		display: flex;
		flex-wrap: wrap;
		gap: 120px 10%;
	}

	.top_season_column li {
		margin: 0;
		display: flex;
		width: calc(50% - 65px);
	}

	.top_season_column li h3 {
		margin: 0 0 0 25px;
		padding: 25px 0 0;
		line-height: 1.6;
	}

	.top_season_column li figure {
		margin: 50px 0 0;
		max-width: 450px;
	}

	.top_season_column li figure img {
		transition: all 0.3s ease;
	}

	.top_season_column li figure a:hover img {
		transform: scale(1.05);
	}

	.top_season_column li figure .icon_arrow_circle {
		right: 20px;
		bottom: 20px;
	}

}

.top_sec_menu {
	margin: 100px 0 0;
}

.top_menu_box {
	margin: 0 0 30px;
	padding: 0 80px 0 0;
	display: flex;
	justify-content: flex-end;
}

.top_sec_menu .menu_img {
	width: calc(100% - 10px);
}

@media screen and (min-width: 768px) {

	.top_sec_menu {
		margin: 250px 0 0;
		height: 530px;
		background: url(../images/top/menu_img_pc.png) no-repeat calc(50% - 230px) top / 990px auto;
	}

	.top_menu_box {
		margin: 0 0 0 auto;
		padding: 90px 80px 0 0;
	}

	.top_sec_menu .menu_img {
		display: none;
	}

}

@media screen and (min-width: 768px) and (max-width: 1399px) {

	.top_sec_menu {
		background-position: 0 0;
		background-size: 62% auto;
	}


}

@media screen and (min-width: 768px) and (max-width: 899px) {

	.top_sec_menu {
		background-size: 55% auto;
	}


}

.top_sec_banquet {
	margin: 100px 20px 0;
}

.top_banquet_box {
	margin: 0 0 30px;
	display: flex;
	justify-content: center;
}

.top_sec_banquet .banquet_img img {
	margin-bottom: 10px;
}

@media screen and (min-width: 768px) {

	.top_sec_banquet {
		margin: 250px 0 0;
		height: 430px;
		background: url(../images/top/banquet_img.jpg) no-repeat calc(50% + 360px) top / 720px auto;
	}

	.top_banquet_box {
		margin: 0 auto 0 0;
		padding: 90px 0 0 12%;
		justify-content: flex-start;
	}

	.top_sec_banquet .banquet_img {
		display: none;
	}

}

@media screen and (min-width: 768px) and (max-width: 1299px) {

	.top_sec_banquet {
		background-position: right center;
		background-size: 50% auto;
	}

}

@media screen and (min-width: 768px) and (max-width: 1099px) {

	.top_sec_banquet {
		background-size: 46% auto;
	}

}

@media screen and (min-width: 768px) and (max-width: 959px) {

	.top_sec_banquet {
		background-size: 39% auto;
	}

}

.top_sec_shop {
	padding: 90px 0 50px;
	background: url(../images/top/shop_back_sp.jpg) no-repeat center top / cover;
}

.top_sec_shop h2 {
	margin: 0 0 50px;
	font-size: 2.8rem;
	color: #fff;
	text-align: center;
}

.top_shop_list {
	margin: 50px 20px 0;
}

.top_shop_list > li {
	color: #fff;
}

.top_shop_list > li h3 {
	margin: 0 0 25px;
	font-size: 1.4rem;
	position: relative;
}

.top_shop_list > li h3::after {
	position: absolute;
	content: '';
	background: rgba(255,255,255,0.2);
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	height: 1px;
	width: calc(100% - 80px);
}

.top_shop_list > li:last-child h3::after {
	width: calc(100% - 120px);
}

.top_shop_list ul {
	margin: 0 0 20px 20px;
	display: flex;
	flex-wrap: wrap;
}

.top_shop_list li li {
	margin: 0 0 25px;
	font-size: 1.6rem;
	width: 50%;
}

.top_shop_list li li a {
	color: #fff;
	position: relative;
}

@media screen and (min-width: 768px) {

	.top_sec_shop {
		padding: 180px 0 130px;
		background: url(../images/top/shop_back_pc.jpg) no-repeat center center / cover;
	}

	.top .main .top_sec_shop .inner {
		width: min(95%,1260px);
		padding-left: 90px;
		display: flex;
	}

	.top_sec_shop h2 {
		writing-mode: vertical-rl;
    	text-orientation: upright;
		font-size: 3.0rem;
		letter-spacing: 0.05em;
		width: 180px;
		flex-shrink: 0;
		display: flex;
		align-items: flex-end;
	}

	.top_shop_list {
		margin: 60px 0 0;
	}

	.top_shop_list > li h3 {
		margin: 0 0 40px;
	}

	.top_shop_list ul {
		margin: 0 0 20px 120px;
	}

	.top_shop_list li li {
		margin: 0 0 28px;
		width: 180px;
	}

	.top_shop_list li li a {
		transition: all 0.2s ease;
	}

	.top_shop_list li li a::after {
		position: absolute;
		content: '';
		left: 0;
		bottom: -2px;
		width: 0;
		height: 1px;
		background: #8a7329;
		transition: all 0.2s ease;
	}

	.top_shop_list li li a:hover {
		color: #8a7329;
	}

	.top_shop_list li li a:hover::after {
		width: 100%;
	}

}

@media screen and (min-width: 768px) and (max-width: 1139px) {

	.top .main .top_sec_shop .inner {
		padding-left: 0;
		justify-content: center;
	}

	.top_sec_shop h2 {
		margin-right: 60px;
		width: auto;
	}

}

.top_sec_news {
	margin: 100px 0;
}

.top_sec_news h2 {
	margin: 0 20px 50px;
	font-size: 2.8rem;
}

.top_sec_news ul {
	margin: 0 0 30px;
	border-top: 1px solid #e3e1d6;
}

.top_sec_news li {
	border-bottom: 1px solid #e3e1d6;
	position: relative;
}

.top_sec_news li a {
	display: block;
}

.top_sec_news li a .inner {
	padding: 35px 20px;
	position: relative;
}

.top_sec_news li a .inner::before {
	position: absolute;
	content: '';
	left: 0;
	top: -1px;
	width: 140px;
	height: 1px;
	background: #a1874a;
}

.top_sec_news li a .inner::after {
	position: absolute;
	content: '';
	left: 0;
	bottom: -1px;
	width: 140px;
	height: 1px;
	background: #a1874a;
}

.top_sec_news li time {
	margin: 0 0 10px;
	font-size: 1.6rem;
	line-height: 1.6;
	display: block;
}

.top_sec_news li h3 {
	font-size: 1.6rem;
	line-height: 1.6;
}

.top_emergency li a[href$="/PDF/"] h3,
.top_sec_news li a[href$="/PDF/"] h3 {
	padding-right: 25px;
	display: inline-block;
	background: url(../images/common/ico_pdf.svg) no-repeat right center / 18px auto;
}

.top_sec_news .link_index {
	margin-left: 20px;
}

.link_index a {
	padding-right: 30px;
	background: url(../images/common/ico_link_m_g.svg) no-repeat right center / 13px auto;
}

@media screen and (min-width: 768px) {

	.top_sec_news {
		margin: 180px 0;
	}

	.top_sec_news h2 {
		margin: 0 0 50px;
		font-size: 3.6rem;
	}

	.top_sec_news ul {
		margin: 0 0 40px;
	}

	.top_sec_news li a .inner {
		display: flex;
		padding: 45px 0;
	}

	.top_sec_news li a .inner::before {
		width: 120px;
	}

	.top_sec_news li a .inner::after {
		width: 120px;
	}

	.top_sec_news li time {
		margin: 0;
		width: 180px;
		flex-shrink: 0;
	}

	.top_sec_news .link_index {
		margin-left: 0;
	}

	.top_sec_news li a:hover {
		background: #f0eee3;
		color: #a1874a;
	}

	.link_index a:hover {
		color: #a1874a;
	}

}

.top_emergency {
	margin: 50px 20px 0;
	border: 1px solid #c7000a;
}

.top_emergency ul {
	margin: 0 20px;
}

.top_emergency li {
	border-bottom: 1px solid #e3e1d6;
}

.top_emergency li a {
	padding: 15px 0;
	display: block;
}

.top_emergency li time {
	margin: 0 0 5px;
 	display: block;
	 font-size: 1.6rem;
	 white-space: nowrap;
}

.top_emergency li h3 {
	 font-size: 1.6rem;
	 line-height: 1.4;
}

@media screen and (min-width: 768px) {

	.top_emergency {
		margin: 30px 30px 0;
	}

	.top_emergency ul {
		margin: 0 30px;
	}

	.top_emergency li a {
		padding: 20px 0;
		display: flex;
	}

	.top_emergency li time {
		margin: 0 50px 0 0;
	}

	.top_emergency li a:hover {
		color: #a1874a;
	}

}

.top_sec_bnr {
	margin: 80px 0 0;
}

.top_bnr_list {
	padding: 30px 0;
	background: url(../images/top/bnr_back.png) 0 0 / 1440px auto;
	position: relative;
}

.top_bnr_list::before {
	position: absolute;
	content: '';
	top: 5px;
	left: 5px;
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	border-top: 1px solid #e5ddc6;
	border-bottom: 1px solid #e5ddc6;
}

.top_bnr_box {
	margin: 0 10px;
	width: 310px;
	position: relative;
	z-index: 2;
}

.top_bnr_box a {
	display: block;
}

.top_bnr_box figure {
	margin: 0 0 14px;
	position: relative;
}

.top_bnr_box h4 {
	font-size: 1.6rem;
	line-height: 1.5;
}

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

	.top_sec_bnr {
		margin: 180px 0 0;
	}

	.top_bnr_list {
		padding: 4.8% 4.8% 4.1%;
		display: flex;
		justify-content: center;
		gap: 4.8%;
	}

	.top_bnr_list::before {
		top: 10px;
		left: 10px;
		width: calc(100% - 20px);
		height: calc(100% - 20px);
		border: 1px solid #e5ddc6;
	}

	.top_bnr_box {
		margin: 0;
		width: 33.3333%;
	}

	.top_bnr_box figure::after {
		position: absolute;
		content: '';
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border: 3px solid #a1874a;
		opacity: 0;
		transition: all 0.2s ease;
	}

	.top_bnr_box h4 {
		transition: all 0.2s ease;
	}

	.top_bnr_box a:hover h4 {
		color: #a1874a;
	}

	.top_bnr_box a:hover figure::after {
		opacity: 1;
	}

}

/* -----------------
	タイトル画像
----------------- */

.cate_anniversary .index_header {
	background: url(../images/title/anniversary_sp.jpg) no-repeat center center / cover;
}

.cate_scene .index_header {
	background: url(../images/title/scene_sp.jpg) no-repeat center center / cover;
}

.entry_longevity .entry_title_header {
	background: url(../images/title/longevity_sp.jpg) no-repeat center center / cover;
}

.entry_memorial .entry_title_header {
	background: url(../images/title/memorial_sp.jpg) no-repeat center center / cover;
}

.entry_children .entry_title_header {
	background: url(../images/title/children_sp.jpg) no-repeat center center / cover;
}

.entry_growth .entry_title_header {
	background: url(../images/title/growth_sp.jpg) no-repeat center center / cover;
}

.entry_starting .entry_title_header {
	background: url(../images/title/starting_sp.jpg) no-repeat center center / cover;
}

.entry_marriage .entry_title_header {
	background: url(../images/title/marriage_sp.jpg) no-repeat center center / cover;
}

.entry_member .entry_title_header {
	background: url(../images/title/member_sp.jpg) no-repeat center center / cover;
}

.cate_season .index_header {
	background: url(../images/title/season_sp.jpg) no-repeat center center / cover;
}

.cate_menu .index_header {
	background: url(../images/title/menu_sp.jpg) no-repeat center center / cover;
}

.entry_equipment .entry_title_header {
	background: url(../images/title/equipment_sp.jpg) no-repeat center center / cover;
}

.entry_birth .entry_title_header {
	background: url(../images/title/birth_sp.jpg) no-repeat center center / cover;
}

@media screen and (min-width: 768px) {

	.cate_anniversary .index_header {
		background: url(../images/title/anniversary_pc.jpg) no-repeat center center / cover;
	}

	.cate_scene .index_header {
		background: url(../images/title/scene_pc.jpg) no-repeat center center / cover;
	}

	.entry_longevity .entry_title_header {
		background: url(../images/title/longevity_pc.jpg) no-repeat center center / cover;
	}

	.entry_memorial .entry_title_header {
		background: url(../images/title/memorial_pc.jpg) no-repeat center center / cover;
	}

	.entry_children .entry_title_header {
		background: url(../images/title/children_pc.jpg) no-repeat center center / cover;
	}

	.entry_growth .entry_title_header {
		background: url(../images/title/growth_pc.jpg) no-repeat center center / cover;
	}

	.entry_starting .entry_title_header {
		background: url(../images/title/starting_pc.jpg) no-repeat center center / cover;
	}

	.entry_marriage .entry_title_header {
		background: url(../images/title/marriage_pc.jpg) no-repeat center center / cover;
	}

	.entry_member .entry_title_header {
		background: url(../images/title/member_pc.jpg) no-repeat center center / cover;
	}

	.cate_season .index_header {
		background: url(../images/title/season_pc.jpg) no-repeat center center / cover;
	}

	.cate_menu .index_header {
		background: url(../images/title/menu_pc.jpg) no-repeat center center / cover;
	}

	.entry_equipment .entry_title_header {
		background: url(../images/title/equipment_pc.jpg) no-repeat center center / cover;
	}

	.entry_birth .entry_title_header {
		background: url(../images/title/birth_pc.jpg) no-repeat center center / cover;
	}

}

/* -----------------
	木曽路の思い
----------------- */

.cate_concept .wrapper {
	overflow: hidden;
	color: #fff;
	background: #141413;
}

.cate_concept.page .main {
	padding-top: 0;
}

.cate_concept .index_header {
	height: 350px;
	background: url(../images/title/concept_sp.jpg) no-repeat center center / cover;
}

@media screen and (min-width: 768px) {

	.cate_concept .index_header {
		height: 980px;
		background: url(../images/title/concept_pc.jpg) no-repeat center center / cover;
	}

	.cate_concept .inner {
		margin: 0 auto;
		width: min(95%,1200px);
	}

}

.concept_header_copy {
	margin: 70px 0 0;
	padding: 20px 30px 20px 20px;
	background: #232320;
	display: inline-block;
	position: relative;
}

.concept_header_copy::after {
	position: absolute;
	content: '';
	top: 0;
	bottom: 0;
	left: calc(100% - 25px);
	margin: auto;
	height: 1px;
	width: 100vw;
	background: #c81414;
}

.concept_header_copy p {
	font-size: 2.4rem;
	font-weight: 300;
	letter-spacing: 0.3em;
	color: #fff;
}

@media screen and (min-width: 768px) {

	.concept_header_copy {
		margin: -40px 0 0;
		padding: 40px 80px 40px 0;
	}

	.concept_header_copy::before {
		position: absolute;
		content: '';
		top: 0;
		height: 100%;
		width: 100%;
		transform: translateX(-100%);
		background: #232320;
	}

	.concept_header_copy::after {
		left: calc(100% - 60px);
	}

	.concept_header_copy p {
		font-size: 2.6rem;
		letter-spacing: 0.5em;
	}

}

.cate_concept .path li a {
	color: #fff;
}

.cate_concept .path li::after {
	background: #fff;
}

@media screen and (min-width: 768px) {

	.cate_concept .path {
		margin-top: 65px;
	}

}

.concept_column1 {
	margin: 30px 0 0;
	padding: 0 0 250px;
	background: url(../images/concept/pic1_sp.jpg) no-repeat center bottom / 100% auto;
}

.concept_column1 .inner {
	display: flex;
	justify-content: flex-end;
}

.concept_column1 h2 {
	margin: 0 0 0 20px;
	font-size: 2.6rem;
	font-weight: 300;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.3;
	letter-spacing: 0.05em;
	order: 2;
	text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.8),
				 0px 0px 8px rgba(0, 0, 0, 0.8),
				 0px 0px 8px rgba(0, 0, 0, 0.8);
}

.concept_column1 h2 em {
	margin: 35px 0 0;
	font-size: 4.0rem;
	display: block;
}

.concept_column1 p {
	margin: 100px 0 0;
	font-size: 1.4rem;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.8;
	letter-spacing: 0.05em;
	order: 1;
	text-shadow: 0px 0px 8px rgba(0, 0, 0, 1),
				 0px 0px 8px rgba(0, 0, 0, 1),
				 0px 0px 8px rgba(0, 0, 0, 1),
				 0px 0px 8px rgba(0, 0, 0, 1),
				 0px 0px 8px rgba(0, 0, 0, 1),
				 0px 0px 8px rgba(0, 0, 0, 1);
}

@media screen and (min-width: 768px) {

	.concept_column1 {
		margin: 75px 0 0;
		padding: 0 0 617px;
		background: url(../images/concept/pic1_pc.jpg) no-repeat center 265px / 1680px auto;
	}

	.concept_column1 h2 {
		margin: 0 0 0 70px;
		font-size: 3.0rem;
	}

	.concept_column1 h2 em {
		margin: 35px 0 0;
		font-size: 6.6rem;
	}

	.concept_column1 p {
		margin: 100px 0 0;
		font-size: 1.8rem;
		line-height: 2.6;
	}

}

.cate_concept .inner {
	margin: 0 20px;
}

.concept_video {
	margin: 40px 0 85px;
	background: url(../images/concept/movie_back.png) 0 0 / 1200px auto;
	position: relative;
	aspect-ratio: 16 / 9;
}

.concept_video_box {
	position: absolute;
	top: 5px;
	right: 0;
	bottom: 0;
	left: 5px;
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	overflow: hidden;
}

.concept_video_box video {
	position: absolute;
	top: 50%;
	left: 50%;
	object-fit: cover;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
}

.btn_play {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	width: 100px;
	height: 100px;
}

@media screen and (min-width: 768px) {

	.cate_concept .inner {
		margin: 0 auto;
    	width: min(95%,1200px);
	}

	.concept_video {
		margin: 0 0 180px;
		max-width: 1200px;
		height: 670px;
	}

	.btn_play {
		width: 240px;
		height: 240px;
		cursor: pointer;
	}
}


.concept_column2 {
	margin: 0 0 50px;
	display: flex;
}

.concept_column2 .column_left {
	margin: 0;
}

.concept_column2 .column_left .concept_pic3 {
	display: none;
}

.concept_column2 .column_right {
	margin: 10px -20px 0 10px;
}

.concept_column2 .column_right .concept_pic3 {
	margin: 25px 0 0;
	width: 56%;
}

.concept_column2 h2 {
	margin: 0;
	font-size: 2.6rem;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.3;
	letter-spacing: 0.05em;
}
.concept_column2 h2 em {
	margin: 140px 0 0;
	font-size: 4.0rem;
	display: flex;
}

@media screen and (min-width: 768px) {

	.concept_column2 {
		margin: 0 0 100px;
	}

	.concept_column2 .column_left {
		margin: 0 4% 0 0;
		max-width: 330px;
		width: 27.5%;
	}

	.concept_column2 .column_left .concept_pic3 {
		display: block;
	}

	.concept_column2 .column_right .concept_pic3 {
		display: none;
	}

	.concept_column2 .column_right {
		margin: 45px 0 0 0;
		max-width: 820px;
		width: 68.3%;
	}

	.concept_column2 h2 {
		margin: 0 0 180px 140px;
		font-size: 3.0rem;
		line-height: 1.4;
	}
	.concept_column2 h2 em {
		margin: 180px 0 0;
		font-size: 6.2rem;
	}

}

.concept_column3 {
	margin: 0 0 50px;
}

.concept_column h3 {
	margin: 0 0 30px;
	font-size: 2.4rem;
	line-height: 1.5;
}

.concept_column p {
	font-size: 1.4rem;
	line-height: 2.2;
}

.concept_column3 .column_left {
	margin: 0 22% 0 -20px;
}

@media screen and (min-width: 768px) {

	.concept_column3 {
		margin: 0;
		display: flex;
	}

	.concept_column3 .column_left {
		margin: 85px 0 0 5.8%;
		width: 36%;
		flex-shrink: 0;
		order: 1;
	}

	.concept_column3 .column_right {
		margin: 0 11% 0 7.5%;
		order: 2;
	}

	.concept_column h3 {
		margin: 0 0 35px;
		font-size: 2.6rem;
	}

	.concept_column p {
		font-size: 1.6rem;
		line-height: 2.4;
	}

}

.concept_column4 {
	margin: 0 0 50px;
}

.concept_column4 .column_right {
	margin: 30px -20px 0 22%;
}

@media screen and (min-width: 768px) {

	.concept_column4 {
		margin: 0 0 170px;
		display: flex;
	}

	.concept_column4 .column_left {
		margin: 150px 0 0 5.8%;
		width: 36%;
		flex-shrink: 0;
	}

	.concept_column4 .column_right {
		margin: 0 11% 0 0;
	}

}

.concept_column5 {
	margin: 0 0 50px;
}

.concept_column5 figure {
		margin: 0 -20px 30px;
}

@media screen and (min-width: 768px) {

	.concept_column5 {
		margin: 0 0 150px;
		display: flex;
		align-items: center;
		height: 550px;
		background: url(../images/concept/pic5.jpg) no-repeat right center / 890px auto;
	}

	.concept_column5 figure {
		display: none;
	}

	.concept_column5 p {
		text-shadow: 0px 0px 8px rgba(0, 0, 0, 1),
					0px 0px 8px rgba(0, 0, 0, 1),
			    	0px 0px 8px rgba(0, 0, 0, 1),
			    	0px 0px 8px rgba(0, 0, 0, 1);
	}

}

.concept_column6 {
	margin: 0 0 70px;
}

.concept_column6 .column_left {
	margin: 0 11% 40px -20px;
}

.concept_column6 .column_right {
	margin: 0;
}

@media screen and (min-width: 768px) {

	.concept_column6 {
		margin: 0 0 160px;
		display: flex;
	}

	.concept_column6 .column_left {
		margin: 0 8% 0 8.75%;
	}

	.concept_column6 h3 {
		margin-bottom: 50px;
	}

	.concept_column6 .column_right {
		margin: 0;
	}

}

.concept_column7 {
	margin: 0 0 70px;
}

.concept_column7 h2 {
	margin: 0;
	font-size: 2.6rem;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.4;
	letter-spacing: 0.05em;
}
.concept_column7 h2 em {
	margin: 30px 0 0;
	font-size: 4.0rem;
	display: flex;
}

.concept_column7_top {
	margin: 0 0 50px;
	position: relative;
}

.concept_column7_top .column_left {
	margin: 0 0 0 -20px;
}

.concept_column7_top .column_right {
	margin: 0;
	position: absolute;
	top: 0;
	right: 0;
}

.concept_pic7_9 {
	padding: 70px 0 0;
}

@media screen and (min-width: 768px) {

	.concept_column7 {
		margin: 0 0 160px;
	}

	.concept_column7 h2 {
		margin: 110px 0 0;
		font-size: 3.0rem;
	}
	.concept_column7 h2 em {
		margin: 40px 0 0;
		font-size: 6.2rem;
	}

	.concept_column7_top {
		margin: 0;
		display: flex;
	}

	.concept_column7_top .column_left {
		margin: 0 8%;
		width: 74.2%;
		display: block;
		float: none;
	}

	.concept_column7_top .column_right {
		width: 9.8%;
	}

	.concept_pic7_9 {
		margin: 0;
		padding: 0;
	}

	.concept_column7_bottom {
		margin: -80px 0 0 8%;
	}

}

.concept_column8 {
	margin: 0 0 70px
}

.concept_column8 .column_left {
	margin: 0 -20px 50px 0;
	display: flex;
	float: none;
}

.concept_pic10 {
	margin: 50px 0 0;
	order: 2;
}

.concept_column8 .column_right {
	margin: 0;
	float: none;
}

.concept_column8 h2 {
	margin: 0 8% 0 0;
	font-size: 2.6rem;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.4;
	letter-spacing: 0.05em;
	order: 1;
}

.concept_column8 h2 em {
	margin: 30px 0 0;
	font-size: 4.0rem;
	display: flex;
}

.concept_column8 .column_right p {
	margin: 0 0 10px;
}

@media screen and (min-width: 768px) {

	.concept_column8 {
		margin: 0 0 180px;
		display: flex;
	}

	.concept_column8 .column_left {
		margin: 0 5% 0 0;
		width: 58%;
	}

	.concept_pic10 {
		margin: 100px 0 0;
		order: 1;
	}

	.concept_column8 .column_right {
		margin: 90px 0 0;
		width: 37%;
	}

	.concept_column8 h2 {
		margin: 0 0 0 8%;
		font-size: 3.0rem;
		order: 2;
	}
	.concept_column8 h2 em {
		font-size: 6.2rem;
	}

	.concept_column8 .column_right p {
		margin: 0 0 25px;
	}

}

.concept_column8 .btn_link {
	margin: 20px 0 0;
	font-size: 1.6rem;
}

.concept_column8 .btn_link a {
	padding: 15px 0 0 0;
	color: #fff;
	display: inline-block;
	position: relative;
}

.concept_column8 .btn_link a span {
	padding: 0 20px 0 0;
	background: url(../images/common/ico_link_b_g.svg) no-repeat right center / 13px auto;
}

.concept_column8 .btn_link a::before {
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	width: 35px;
	height: 2px;
	background: #6c5c36;
}

@media screen and (min-width: 768px) {

	.concept_column8 .btn_link {
		margin: 40px 0 0;
		font-size: 1.8rem;
	}

	.concept_column8 .btn_link a {
		padding: 20px 0 0 0;
		transition: all 0.3s ease;
	}

	.concept_column8 .btn_link a:hover::before {
		width: 100%;
	}

	.concept_column8 .btn_link a:hover {
		color: #a1874a;
	}

}

.concept_column9 {
	padding: 20px 0 0;
	border-top: 1px solid #c81414;
}

@media screen and (min-width: 768px) {

	.concept_pic11 {
		height: 500px;
		background: url(../images/concept/pic11_pc.jpg) no-repeat center center / cover;
	}

	.concept_pic11 img {
		display: none;
	}

}

.cate_concept footer {
	margin-top: 0;
}

/* -----------------
	お祝いの席
----------------- */

.page .main {
	margin-top: 80px;
}

.cate_anniversary .main {
	background: url(../images/common/category_back_line_sp.png) no-repeat center 330px / 70% auto;
}

.index_header {
	height: 360px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.index_header h1 {
	color: #fff;
	font-size: 3.0rem;
	font-weight: 300;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.8;
	letter-spacing: 0.05em;
	text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.8),
				0px 0px 8px rgba(0, 0, 0, 0.8),
				0px 0px 8px rgba(0, 0, 0, 0.8);
}

html[lang="zh-hans"] .index_header h1,
html[lang="zh-hant"] .index_header h1,
html[lang="ko"] .index_header h1,
html[lang="en"] .index_header h1 {
	writing-mode: inherit;
	text-orientation: inherit;
}

.cate_main_lead {
	padding: 70px 20px 50px;
	text-align: center;
}

.cate_main_lead h2 {
	font-size: 2.0rem;
	line-height: 1.6;
	font-weight: 500;
}

.cate_main_lead p {
	margin: 35px 0 0;
	font-size: 1.6rem;
	line-height: 1.8;
}

@media screen and (min-width: 768px) {

	.page .main {
		margin-top: 100px;
	}

	.lg_5.page .main,
	.lg_4.page .main,
	.lg_3.page .main,
	.lg_2.page .main,
	.lg_1.page .main {
		padding-top: 100px;
	}

	.cate_anniversary .main {
		background: url(../images/common/category_back_line_pc.png) no-repeat center 550px / 1295px auto;
	}

	.index_header {
		height: 600px;
	}

	.index_header h1 {
		font-size: 3.6rem;
		font-weight: 400;
	}

	.cate_main_lead {
		padding: 80px 0 90px;
		text-align: center;
	}

	.cate_main_lead h2 {
		font-size: 2.6rem;
		line-height: 1.9;
		font-weight: 400;

	}

}

.cate_layout h2 {
	font-size: 2.8rem;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.8;
	letter-spacing: 0.05em;
}

html[lang="zh-hans"] .cate_layout h2,
html[lang="zh-hant"] .cate_layout h2,
html[lang="ko"] .cate_layout h2,
html[lang="en"] .cate_layout h2 {
	writing-mode: inherit;
	text-orientation: inherit;
	width: 100%;
	padding: 0 20px;
	line-height: 1.3;
	margin-left: 0;
}

.cate_layout h2 a {
	display: flex;
	align-items: center;
}

.cate_anniversary .cate_layout h2 a {
	color: #c24444;
}

.cate_layout h3 {
	font-size: 3.0rem;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.4;
	font-weight: 300;
	letter-spacing: 0.05em;
}

.cate_layout p {
	font-size: 1.6rem;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.6;
	letter-spacing: 0.05em;
}

html[lang="zh-hans"] .cate_layout p,
html[lang="zh-hans"] .cate_layout h3,
html[lang="zh-hant"] .cate_layout p,
html[lang="zh-hant"] .cate_layout h3,
html[lang="ko"] .cate_layout p,
html[lang="ko"] .cate_layout h3,
html[lang="en"] .cate_layout p,
html[lang="en"] .cate_layout h3 {
	writing-mode: inherit;
	text-orientation: inherit;
	height: auto;
}

.cate_layout ul {
	padding: 20px 0 20px 30px;
	border-top: 4px double #eae3d9;
	border-bottom: 4px double #eae3d9;
}

.cate_layout li {
	padding: 5px 0 5px 20px;
	font-size: 1.6rem;
	position: relative;
}

.cate_layout li::before {
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	bottom: 0;
	width: 13px;
	height: 1px;
	margin: auto;
	background: #b09351;
}

@media screen and (min-width: 768px) {

	.cate_layout .inner {
		margin: 0 auto;
    	width: min(95%,1200px);
	}

	.cate_layout h2 {
		font-size: 3.6rem;
	}

	.cate_layout h2 a:hover {
		color: #a1874a;
	}

	.cate_layout h3 {
		font-size: 4.0rem;
		line-height: 1.8;
	}

	.cate_layout p {
		font-size: 1.8rem;
		line-height: 1.8;
	}

	.cate_layout ul {
		padding: 30px 0 30px 40px;
		width: 300px;
		flex-shrink: 0;
	}

	.cate_layout li {
		font-size: 1.8rem;
	}

	html[lang="zh-hans"] .cate_layout h2,
	html[lang="zh-hant"] .cate_layout h2,
	html[lang="ko"] .cate_layout h2,
	html[lang="en"] .cate_layout h2 {
		padding: 0;
	}
}

.cate_layout_01 {
	padding-bottom: 95px;
	background: url(../images/anniversary/img1.png) no-repeat left calc(50% + 120px) bottom 70px / 230px auto;
}

.cate_layout_01 .inner {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
}

.cate_layout_01 h2 {
	margin: 0 20px;
	width: 50px;
}

.cate_layout_01 ul {
	margin: 60px 0 30px;
	width: calc(100% - 90px);
}

.cate_layout_01 figure {
	margin: 0 0 0 20px;
}

img.anniversary_pic1 {
	width: 70%;
	float: right;
}

img.anniversary_pic2 {
	margin: -30px 0 0;
	width: 45%;
}

@media screen and (min-width: 768px) {

	.cate_layout_01 {
		padding-bottom: 400px;
		background: url(../images/anniversary/img1.png) no-repeat left calc(50% + 500px) bottom 60px / 680px auto;
	}

	.cate_layout_01 .inner {
		flex-wrap: nowrap;
	}

	.cate_layout_01 h2 {
		margin: 0 40px 0 10%;
		width: auto;
	}

	html[lang="zh-hans"] .cate_layout_01 h2,
	html[lang="zh-hant"] .cate_layout_01 h2,
	html[lang="ko"] .cate_layout_01 h2,
	html[lang="en"] .cate_layout_01 h2 {
		margin: 0 0 30px;
		flex: 0 0 100%;
	}

	html[lang="zh-hans"] .cate_layout_01 .inner,
	html[lang="zh-hant"] .cate_layout_01 .inner,
	html[lang="ko"] .cate_layout_01 .inner,
	html[lang="en"] .cate_layout_01 .inner {
		flex-wrap: wrap;
	}

	html[lang="zh-hans"] .cate_layout_01 > *,
	html[lang="zh-hant"] .cate_layout_01 > *,
	html[lang="ko"] .cate_layout_01 > *,
	html[lang="en"] .cate_layout_01 > * {
		flex: 1 1 auto;
	}

	.cate_layout_01 ul {
		margin: 60px 55px 0 0;
		width: 300px;
	}

	.cate_layout_01 figure {
		margin: 0;
		width: 52.5%;
		position: relative;
	}

	img.anniversary_pic1 {
		float: right;
		width: 100%;
	}

	img.anniversary_pic2 {
		width: 57%;
		position: absolute;
		top: 98%;
		right: 80%;
	}

}

.back_petal {
	background: url(../images/anniversary/img2_sp.png) no-repeat center 490px / 100% auto;
}

.cate_layout_02 {
	padding-bottom: 60px;
}

.cate_layout_02 .inner {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
}

.cate_layout_02 h2 {
	margin: 0 20px 0 70px;
	width: 50px;
}

.cate_layout_02 ul {
	margin: 60px 0 30px;
	width: calc(100% - 140px);
}

html[lang="zh-hans"] .cate_layout_02 ul,
html[lang="zh-hant"] .cate_layout_02 ul,
html[lang="ko"] .cate_layout_02 ul,
html[lang="en"] .cate_layout_02 ul {
	width: calc(100% - 100px);
}

.anniversary_pic3 {
	width: calc(100% - 40px);
}

@media screen and (min-width: 768px) {

	.back_petal {
		background: url(../images/anniversary/img2_pc.png) no-repeat center 345px / 1310px auto;
	}

	.cate_layout_02 {
		padding-bottom: 150px;
	}

	.cate_layout_02 .inner {
		flex-wrap: nowrap;
	}

	.cate_layout_02 h2 {
		margin: 50px 40px 0 80px;
		width: auto;
		order: 2;
	}

	.cate_layout_02 ul {
		margin: 100px 0 0;
		width: 300px;
		order: 3;
	}

	html[lang="zh-hans"] .cate_layout_02 h2,
	html[lang="zh-hant"] .cate_layout_02 h2,
	html[lang="ko"] .cate_layout_02 h2,
	html[lang="en"] .cate_layout_02 h2 {
		margin: 0 0 30px;
		flex: 0 0 100%;
		order: inherit;
	}

	html[lang="zh-hans"] .cate_layout_02 .inner,
	html[lang="zh-hant"] .cate_layout_02 .inner,
	html[lang="ko"] .cate_layout_02 .inner,
	html[lang="en"] .cate_layout_02 .inner {
		flex-wrap: wrap;
	}

	html[lang="zh-hans"] .cate_layout_02 > *,
	html[lang="zh-hant"] .cate_layout_02 > *,
	html[lang="ko"] .cate_layout_02 > *,
	html[lang="en"] .cate_layout_02 > * {
		flex: 1 1 auto;
	}

	html[lang="zh-hans"] .cate_layout_02 ul,
	html[lang="zh-hant"] .cate_layout_02 ul,
	html[lang="ko"] .cate_layout_02 ul,
	html[lang="en"] .cate_layout_02 ul {
		margin-right: 60px;
		order: inherit;
	}

	html[lang="zh-hans"] .anniversary_pic3,
	html[lang="zh-hant"] .anniversary_pic3,
	html[lang="ko"] .anniversary_pic3,
	html[lang="en"] .anniversary_pic3 {
		order: inherit;
	}

	.anniversary_pic3 {
		width: 610px;
		order: 1;
	}

}

.cate_layout_03 {
	padding-bottom: 60px;
}

.cate_layout_03 .inner {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
}

.cate_layout_03 .inner > div {
	margin: 0 0 30px;
	padding: 0 0 0 100px;
	order: 2;
	display: flex;
	align-items: flex-start;
	width: 100%;
}

.cate_layout_03 h2 {
	margin: 0 20px 0 0;
	width: 50px;
}

.cate_layout_03 ul {
	margin: 60px 0 30px;
	width: calc(100% - 70px);
}

.anniversary_pic4 {
	margin: 0 0 0 auto;
	width: calc(100% - 225px);
	order: 1;
	flex-shrink: 0;
}

.anniversary_pic5 {
	width: calc(100% - 95px);
	order: 3;
	flex-shrink: 0;
}

html[lang="zh-hans"] .cate_layout_03 .inner > div,
html[lang="zh-hant"] .cate_layout_03 .inner > div,
html[lang="ko"] .cate_layout_03 .inner > div,
html[lang="en"] .cate_layout_03 .inner > div {
	padding-left: 0;
	display: block;
}

html[lang="zh-hans"] .cate_layout_03 .inner > div h2,
html[lang="zh-hant"] .cate_layout_03 .inner > div h2,
html[lang="ko"] .cate_layout_03 .inner > div h2,
html[lang="en"] .cate_layout_03 .inner > div h2 {
	margin: 40px 0 0;
	padding: 0 20px;
}

@media screen and (min-width: 768px) {

	.cate_layout_03 {
		padding-bottom: 430px;
	}

	.cate_layout_03 .inner {
		position: relative;
		flex-direction: inherit;
	}

	.cate_layout_03 .inner > div {
		margin: 0;
		padding: 0;
		width: auto;
	}

	.cate_layout_03 h2 {
		margin: 50px 40px 0 14%;
		width: auto;
		order: 2;
	}

	.cate_layout_03 ul {
		margin: 100px 0 0;
		width: 300px;
		order: 3;
	}

	.anniversary_pic4 {
		margin: 0 0 0 7%;
		width: 270px;
	}

	.anniversary_pic5 {
		margin: 240px 0 0 auto;
		width: 40%;
		order: 4;
		position: absolute;
		right: 0;
	}

	html[lang="zh-hans"] .cate_layout_03 .inner > div,
	html[lang="zh-hant"] .cate_layout_03 .inner > div,
	html[lang="ko"] .cate_layout_03 .inner > div,
	html[lang="en"] .cate_layout_03 .inner > div {
		margin-left: 30px;
		display: block;
	}

}

@media screen and (min-width: 768px) and (max-width: 1169px) {

	.anniversary_pic5 {
		margin-top: 320px;
	}

}

.anniversary_pic6 {
	margin: 0 0 30px;
}

.cate_layout_04 .inner {
	display: block;
}

.cate_layout_04_box {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	background: #f5f4ee;
}

.cate_layout_04 h2 {
	margin: 0 20px 0 55px;
	width: 50px;
}

.cate_layout_04 ul {
	margin: 60px 0 0;
	width: calc(100% - 125px);
}

html[lang="zh-hans"] .cate_layout_04 ul,
html[lang="zh-hant"] .cate_layout_04 ul,
html[lang="ko"] .cate_layout_04 ul,
html[lang="en"] .cate_layout_04 ul {
	width: auto;
}

@media screen and (min-width: 768px) {

	.cate_layout_04 {
		position: relative;
		z-index: 2;
		background: url(../images/anniversary/pic6_pc.jpg) no-repeat center 0 / 1680px auto;
	}

	.anniversary_pic6 {
		display: none;
	}

	.cate_layout_04_box {
		margin: 310px 0 0;
		display: inline-flex;
		flex-wrap: nowrap;
		width: 500px;
	}

	.cate_layout_04 h2 {
		margin: 80px 40px 0 50px;
		width: auto;
	}

	.cate_layout_04 ul {
		margin: 135px 0 0;
		width: 300px;
	}

	html[lang="zh-hans"] .cate_layout_04_box,
	html[lang="zh-hant"] .cate_layout_04_box,
	html[lang="ko"] .cate_layout_04_box,
	html[lang="en"] .cate_layout_04_box {
		padding: 0 20px;
		display: inline-block;
	}

	html[lang="zh-hans"] .cate_layout_04 ul,
	html[lang="zh-hant"] .cate_layout_04 ul,
	html[lang="ko"] .cate_layout_04 ul,
	html[lang="en"] .cate_layout_04 ul {
		margin: 60px 0 0 0;
		width: auto;
	}

}

.cate_layout_05 {
	padding-bottom: 80px;
	background: url(../images/anniversary/img3.png) no-repeat left -12px top 0 / 75% auto;
}

.cate_layout_05 .inner {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
}

.cate_layout_05 .inner > div {
	margin: 0 0 30px;
	padding: 0 0 0 20px;
	order: 3;
	display: flex;
	align-items: flex-start;
	width: 100%;
}

.cate_layout_05 h2 {
	margin: 0 30px 0 0;
	width: 50px;
}

.cate_layout_05 ul {
	margin: 60px 0 0;
	width: calc(100% - 80px);
}

.cate_layout_05 .anniversary_pic7 {
	margin: 20px 0;
	width: calc(100% - 55px);
	order: 2;
}

.cate_layout_05 .anniversary_pic8 {
	margin: 0 20px 0 auto;
	width: calc(100% - 175px);
	order: 4;
}

.cate_layout_05 .anniversary_pic9 {
	margin: 130px 0 0 auto;
	width: calc(100% - 250px);
	order: 1;
	flex-shrink: 0;
}

html[lang="zh-hans"] .cate_layout_05 .inner > div,
html[lang="zh-hant"] .cate_layout_05 .inner > div,
html[lang="ko"] .cate_layout_05 .inner > div,
html[lang="en"] .cate_layout_05 .inner > div {
	margin-right: 20px;
	display: block;
	width: auto;
}

html[lang="zh-hans"] .cate_layout_05 ul,
html[lang="zh-hant"] .cate_layout_05 ul,
html[lang="ko"] .cate_layout_05 ul,
html[lang="en"] .cate_layout_05 ul {
	width: auto;
}

@media screen and (min-width: 768px) {

	.cate_layout_05 {
		margin: -90px 0 0;
		padding-bottom: 310px;
		background: url(../images/anniversary/img3.png) no-repeat calc(50% + 140px) 0 / 490px auto;
	}

	.cate_layout_05 .inner {
		padding-top: 250px;
		flex-direction: inherit;
		position: relative;
	}

	.cate_layout_05 .inner > div {
		margin: 110px 0 0;
		padding: 0;
		width: auto;
	}

	.cate_layout_05 h2 {
		margin: 50px 30px 0 -60px;
		order: 3;
	}

	.cate_layout_05 ul {
		margin: 115px 0 0;
		width: 300px;
		order: 4;
	}

	.cate_layout_05 .anniversary_pic7 {
		margin: 110px 0 0 0;
		width: 530px;
		order: 1;
		flex-shrink: 0;
	}

	.cate_layout_05 .anniversary_pic8 {
		margin: 515px 0 0 -160px;
		width: 360px;
		order: 2;
		flex-shrink: 0;
	}

	.cate_layout_05 .anniversary_pic9 {
		position: absolute;
		top: 250px;
		right: 0;
		margin: 0;
		width: 210px;
		order: 5;
	}

	html[lang="zh-hans"] .cate_layout_05 .inner > div,
	html[lang="zh-hant"] .cate_layout_05 .inner > div,
	html[lang="ko"] .cate_layout_05 .inner > div,
	html[lang="en"] .cate_layout_05 .inner > div {
		display: block;
	}

	html[lang="zh-hans"] .cate_layout_05 ul,
	html[lang="zh-hant"] .cate_layout_05 ul,
	html[lang="ko"] .cate_layout_05 ul,
	html[lang="en"] .cate_layout_05 ul {
		margin-top: 50px;
		width: auto;
	}

}

@media screen and (min-width: 768px) and  (max-width: 1099px) {

	.cate_layout_05 .anniversary_pic7 {
		width: 45%;
	}

	.cate_layout_05 .anniversary_pic8 {
		width: 30%;
	}

}

.cate_layout_06 .cate_layout_06_box {
	padding: 0 0 50px;
	display: flex;
	justify-content: center;
	flex-direction: column;
}

.cate_layout_06 .cate_layout_06_box > div {
	margin: 0;
	order: 2;
	display: flex;
	justify-content: center;
}

.cate_layout_06 h2 {
	margin: 0 20px 0 0;
	font-size: 2.6rem;
}

.cate_layout_06 p {
	margin: 0;
	line-height: 1.8;
}

.cate_layout_06 h3 {
	margin: 0 auto 40px;
	order: 1;
}

html[lang="zh-hans"] .cate_layout_06 .cate_layout_06_box,
html[lang="zh-hant"] .cate_layout_06 .cate_layout_06_box,
html[lang="ko"] .cate_layout_06 .cate_layout_06_box,
html[lang="en"] .cate_layout_06 .cate_layout_06_box {
	margin: 0 20px;
}

html[lang="zh-hans"] .cate_layout_06 .cate_layout_06_box > div,
html[lang="zh-hant"] .cate_layout_06 .cate_layout_06_box > div,
html[lang="ko"] .cate_layout_06 .cate_layout_06_box > div,
html[lang="en"] .cate_layout_06 .cate_layout_06_box > div {
	display: block;
}

html[lang="zh-hans"] .cate_layout_06 h2,
html[lang="zh-hant"] .cate_layout_06 h2,
html[lang="ko"] .cate_layout_06 h2,
html[lang="en"] .cate_layout_06 h2 {
	margin-bottom: 30px;
}


@media screen and (min-width: 768px) {

	.cate_layout_06 {
		padding-bottom: 170px;
		background: url(../images/anniversary/pic10_pc.jpg) no-repeat center 0 / 1800px auto;
	}

	.cate_layout_06 .inner {
		display: flex;
		justify-content: flex-end;
	}

	.cate_layout_06 .cate_layout_06_box {
		margin: -140px 0 0;
		padding: 0 40px 80px 90px;
		display: flex;
		align-items: flex-start;
		background: #f5f4ee;
		flex-wrap: nowrap;
		flex-direction: inherit;
		width: 853px;
	}

	.cate_layout_06 .cate_layout_06_box > div {
		order: 1;
		width: 447px;
	}

	.cate_layout_06 h2 {
		margin: 65px 70px 0 0;
		font-size: 2.6rem;
	}

	.cate_layout_06 p {
		margin: 70px 0 0;
		line-height: 2.6;
		order: 2;
	}

	.cate_layout_06 h3 {
		margin: 0 10px 0 50px;
		order: 2;
	}

	.anniversary_pic10 {
		display: none;
	}

	html[lang="zh-hans"] .cate_layout_06 .cate_layout_06_box,
	html[lang="zh-hant"] .cate_layout_06 .cate_layout_06_box,
	html[lang="ko"] .cate_layout_06 .cate_layout_06_box,
	html[lang="en"] .cate_layout_06 .cate_layout_06_box {
		margin: 0;
		flex-direction: column;
	}

	html[lang="zh-hans"] .cate_layout_06 .cate_layout_06_box > div,
	html[lang="zh-hant"] .cate_layout_06 .cate_layout_06_box > div,
	html[lang="ko"] .cate_layout_06 .cate_layout_06_box > div,
	html[lang="en"] .cate_layout_06 .cate_layout_06_box > div {
		display: block;
	}

	html[lang="zh-hans"] .cate_layout_06 h2,
	html[lang="zh-hant"] .cate_layout_06 h2,
	html[lang="ko"] .cate_layout_06 h2,
	html[lang="en"] .cate_layout_06 h2 {
	}

	html[lang="zh-hans"] .cate_layout_06 p,
	html[lang="zh-hant"] .cate_layout_06 p,
	html[lang="ko"] .cate_layout_06 p,
	html[lang="en"] .cate_layout_06 p {
		margin-top: 30px;
	}

	html[lang="zh-hans"] .cate_layout_06 h3,
	html[lang="zh-hant"] .cate_layout_06 h3,
	html[lang="ko"] .cate_layout_06 h3,
	html[lang="en"] .cate_layout_06 h3 {
		margin: 30px 0 0;
	}

}

@media screen and (min-width: 768px) and  (max-width: 899px) {

	.cate_layout_06 .cate_layout_06_box {
		padding-left: 10%;
		padding-right: 4.5%;
		align-items: inherit;
	}

	.cate_layout_06 h2 {
		margin-right: 8%;
	}

	.cate_layout_06 h3 {
		margin-left: 5.5%;
		font-size: 3.2rem;
		line-height: 1.6;
	}

}

.corner_radius {
	border-radius: 8px;
}

@media screen and (min-width: 768px) {

	.corner_radius {
		border-radius: 0;
	}

}

/* -----------------
	ご利用シーン
----------------- */

.cate_scene .cate_layout h3 {
	margin: 110px 20px 0 0;
	font-size: 1.8rem;
}

.cate_layout_text {
	display: flex;
}

.cate_scene .cate_layout h3 a {
	display: flex;
	align-items: center;
}

.cate_scene .cate_layout p {
	margin: 110px 0 0 0;
	height: 250px;
	font-size: 1.6rem;
	line-height: 1.6;
}

.cate_scene .cate_layout h2 {
	margin: 0 15px 0 20px;
	font-size: 2.8rem;
	line-height: 1.4;
}

.cate_layout_07 {
	position: relative;
}

.cate_layout_07::before {
	position: absolute;
	content: '';
	top: 60px;
	left: 0;
	width: 100%;
	height: 300px;
	background: url(../images/common/ptn_scene_bg.png) 0 0 / 325px auto;
}

.cate_layout_07 .inner {
	overflow: hidden;
	position: relative;
	z-index: 2;
}

.cate_layout_07 .cate_layout_text {
	margin: -70px 0 0;
	float: right;
}

.scene_pic1 {
	float: left;
	width: 73%;
}

html[lang="zh-hans"] .cate_layout_text,
html[lang="zh-hant"] .cate_layout_text,
html[lang="ko"] .cate_layout_text,
html[lang="en"] .cate_layout_text {
	flex-direction: column;
}

html[lang="zh-hans"] .cate_scene .cate_layout h2,
html[lang="zh-hant"] .cate_scene .cate_layout h2,
html[lang="ko"] .cate_scene .cate_layout h2,
html[lang="en"] .cate_scene .cate_layout h2 {
	order: 1;
	margin-top: 20px;
}

html[lang="zh-hans"] .cate_layout_07 .inner,
html[lang="zh-hant"] .cate_layout_07 .inner,
html[lang="ko"] .cate_layout_07 .inner,
html[lang="en"] .cate_layout_07 .inner {
	margin: 0 20px;
}

@media screen and (min-width: 768px) {

	.cate_scene .cate_layout h3 {
		margin: 60px 40px 0 0;
		font-size: 2.0rem;
	}

	.cate_scene .cate_layout h3 a:hover {
		color: #a1874a;
	}

	.cate_scene .cate_layout p {
		margin: 60px 0 0 0;
		font-size: 1.6rem;
		line-height: 2.4;
	}

	.cate_scene .cate_layout h2 {
		margin: 0 0 0 50px;
		font-size: 3.6rem;
	}

	.cate_layout_07 {
		margin: 0 0 10px;
	}

	.cate_layout_07::before {
		top: 110px;
		height: 415px;
	}

	.cate_layout_07 .inner {
		padding: 0 0 0 45px;
		padding: 0;
		display: flex;
	}

	.cate_layout_07 .cate_layout_text {
		margin: 0px 0 0;
		float: none;
	}

	.cate_scene .cate_layout_07 p {
		height: 300px;
	}

	.scene_pic1 {
		margin: 60px 7.5% 0 0;
		max-width: 730px;
		width: 60%;
		float: none;
	}

}

@media screen and (min-width: 768px) and (max-width: 949px) {

	.cate_scene .cate_layout_07 h2 {
		margin-left: 5%;
	}

	.scene_pic1_2 {
		margin-bottom: 140px;
	}

	img.scene_pic1 {
		margin: 0 3% 0 auto;
		width: 55%;
	}

	img.scene_pic2 {
		margin: 0;
		width: 25%;
		top: 32vw;
		left: 28vw;

	}

}

.cate_layout_08 {
	padding: 0 0 80px;
	position: relative;
	overflow: hidden;
}

.cate_layout_08::after {
	position: absolute;
	content: '';
	top: 255px;
	right: -40px;
	width: 200px;
	height: 200px;
	background: url(../images/scene/img1.png) no-repeat 0 0 / 200px auto;
}

.cate_scene .cate_layout_08 h3,
.cate_scene .cate_layout_08 p {
	margin-top: 40px;
}

.cate_layout_08 .inner {
	display: flex;
	position: relative;
	z-index: 2;
	flex-direction: column;
}

.cate_layout_08 .inner > div {
	order: 1;
}

.cate_layout_08 .cate_layout_text {
	margin: 0 10.5% 30px 35px;
	justify-content: flex-end;
}

.cate_scene .cate_layout_08 p {
	height: auto;
}

.scene_pic3 {
	margin: 0 0 0 20px;
	width: calc(100% - 20px);
	order: 2;
}

.scene_pic4_5 {
	display: none;
}

html[lang="zh-hans"] .cate_scene .cate_layout_08 h3,
html[lang="zh-hant"] .cate_scene .cate_layout_08 h3,
html[lang="ko"] .cate_scene .cate_layout_08 h3,
html[lang="en"] .cate_scene .cate_layout_08 h3 {
	order: 3;
}

html[lang="zh-hans"] .cate_scene .cate_layout_08 p,
html[lang="zh-hant"] .cate_scene .cate_layout_08 p,
html[lang="ko"] .cate_scene .cate_layout_08 p,
html[lang="en"] .cate_scene .cate_layout_08 p {
	order: 2;
}

@media screen and (min-width: 768px) {

	.cate_layout_08 {
		padding: 0 0 250px;
	}

	.cate_layout_08::after {
		top: 390px;
		left: 0;
		right: 0;
		margin: auto;
		width: 284px;
		height: 277px;
		background: url(../images/scene/img1.png) no-repeat 0 0 / 284px auto;
	}

	.cate_layout_08 .inner {
		flex-direction: inherit;
	}

	.cate_layout_08 .inner > div {
		order: 2;
		width: calc(50% - 45px);
	}

	.cate_layout_08 .cate_layout_text {
		margin: 0 0 0 13%;
	}

	.cate_scene .cate_layout_08 h3,
	.cate_scene .cate_layout_08 p {
		margin-top: 60px;
	}

	.scene_pic3 {
		margin: 60px 45px 0 0;
		max-width: 600px;
		width: 50%;
		order: 1;
	}

	.scene_pic4_5 {
		margin: 45px 0 0;
		display: block;
	}

	img.scene_pic4 {
		margin-bottom: -70px;
		width: 200px;
		max-width: 35%;
	}

	img.scene_pic5 {
		width: 350px;
		max-width: 63%;
	}

}

@media screen and (min-width: 768px) and (max-width: 949px) {

	.cate_layout_08 .inner > div {
		margin-left: -5vw;
	}

}

.cate_layout_09 {
	padding: 0 0 70px;
	position: relative;
}

.cate_layout_09::before {
	position: absolute;
	content: '';
	top: 90px;
	left: 0;
	width: 100%;
	height: 440px;
	background: url(../images/common/ptn_scene_bg.png) 0 0 / 325px auto;
}

.cate_layout_09 .inner {
	display: flex;
	flex-direction: column;
	position: relative;
	z-index: 2;
}

.cate_layout_09 .cate_layout_text {
	margin: 0 5px 85px auto;
}

.cate_scene .cate_layout_09 h3 {
	margin-top: 40px;
}

.cate_scene .cate_layout_09 p {
	margin-top: 40px;
	height: auto;
}

.cate_layout_09 .scene_pic6 {
	position: relative;
}

.cate_layout_09 .scene_pic6::before {
	position: absolute;
	content: '';
	left: 0;
	top: -310px;
	width: 315px;
	height: 285px;
	background: url(../images/scene/img2.png) no-repeat 0 0 / 315px auto;
}

html[lang="zh-hans"] .cate_layout_09 .cate_layout_text,
html[lang="zh-hant"] .cate_layout_09 .cate_layout_text,
html[lang="ko"] .cate_layout_09 .cate_layout_text,
html[lang="en"] .cate_layout_09 .cate_layout_text {
	margin-left: 20px;
	margin-right: 20px;
}

html[lang="zh-hans"] .cate_scene .cate_layout_09 h3,
html[lang="zh-hant"] .cate_scene .cate_layout_09 h3,
html[lang="ko"] .cate_scene .cate_layout_09 h3,
html[lang="en"] .cate_scene .cate_layout_09 h3 {
	order: 3;
	z-index: 2;
}

html[lang="zh-hans"] .cate_scene .cate_layout_09 p,
html[lang="zh-hant"] .cate_scene .cate_layout_09 p,
html[lang="ko"] .cate_scene .cate_layout_09 p,
html[lang="en"] .cate_scene .cate_layout_09 p {
	order: 2;
	z-index: 2;
}


@media screen and (min-width: 768px) {

	.cate_layout_09 {
		padding: 0 0 250px;
	}

	.cate_layout_09::before {
		top: 140px;
		height: 475px;
	}

	.cate_layout_09 .inner {
		align-items: flex-start;
		flex-direction: inherit;
		justify-content: space-between;
	}

	.cate_layout_09 .cate_layout_text {
		margin: 0 0 0 20px;
	}

	.cate_scene .cate_layout_09 p {
		height: 400px;
	}

	.cate_layout_09 .scene_pic6 {
		margin: 110px 18% 0 7.5%;
		max-width: 570px;
		width: 47.5%;
	}

	.cate_layout_09 .scene_pic6::before {
		left: -280px;
		top: auto;
		bottom: -100px;
		width: 445px;
		height: 405px;
		background: url(../images/scene/img2.png) no-repeat 0 0 / 445px auto;
		z-index: -1;
	}

	html[lang="zh-hans"] .cate_scene .cate_layout_09 p,
	html[lang="zh-hant"] .cate_scene .cate_layout_09 p,
	html[lang="ko"] .cate_scene .cate_layout_09 p,
	html[lang="en"] .cate_scene .cate_layout_09 p {
		height: auto;
	}

}

.cate_layout_10 {
	margin: 0 0 80px;
	position: relative;
}

.cate_layout_10 .inner {
	margin: 0 30px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.cate_layout_10 .cate_layout_title {
	margin-top: 40px;
	width: 40px;
}

.cate_layout_10 .cate_layout_text {
	justify-content: center;
}

.cate_scene .cate_layout_10 h3 {
	margin: 0 0 40px;
}

.cate_scene .cate_layout_10 p {
	margin-top: 40px;
	margin-left: 20px;
	height: 380px;
}

.scene_pic7_9 {
	margin: 0px -30px 0 -10px;
}

img.scene_pic8,
img.scene_pic9 {
	display: none;
}

html[lang="zh-hans"] .cate_layout_10 .cate_layout_title,
html[lang="zh-hant"] .cate_layout_10 .cate_layout_title,
html[lang="ko"] .cate_layout_10 .cate_layout_title,
html[lang="en"] .cate_layout_10 .cate_layout_title {
	width: auto;
}

html[lang="zh-hans"] .cate_scene .cate_layout_10 h3,
html[lang="zh-hant"] .cate_scene .cate_layout_10 h3,
html[lang="ko"] .cate_scene .cate_layout_10 h3,
html[lang="en"] .cate_scene .cate_layout_10 h3 {
	margin-bottom: 10px;
}

html[lang="zh-hans"] .cate_scene .cate_layout_10 p,
html[lang="zh-hant"] .cate_scene .cate_layout_10 p,
html[lang="ko"] .cate_scene .cate_layout_10 p,
html[lang="en"] .cate_scene .cate_layout_10 p {
	margin-top: 20px;
}

@media screen and (min-width: 768px) {

	.cate_layout_10 {
		margin: 0 0 210px;
	}

	.cate_layout_10 .inner {
		margin: 0 auto;
	}

	.cate_layout_10 .cate_layout_title {
		margin-top: 60px;
		display: flex;
		width: 140px;
	}

	.cate_scene .cate_layout_10 h3 {
		margin: 0 20px 0 0;
	}

	.cate_scene .cate_layout_10 p {
		margin-top: 60px;
		margin-left: 10px;
		height: 400px;
	}

	.scene_pic7_9 {
		margin: -150px 0 0;
		display: flex;
		align-items: flex-start;
	}

	img.scene_pic7 {
		margin: 150px 0 0;
		width: 260px;
	}

	img.scene_pic8 {
		margin: 320px 50px 0 -40px;
		max-width: 350px;
		display: block;
	}

	img.scene_pic9 {
		margin: 0 0 0 auto;
		max-width: 400px;
		display: block;
	}

	html[lang="zh-hans"] .cate_layout_10 .cate_layout_title,
	html[lang="zh-hant"] .cate_layout_10 .cate_layout_title,
	html[lang="ko"] .cate_layout_10 .cate_layout_title,
	html[lang="en"] .cate_layout_10 .cate_layout_title {
		display: block;
	}

	html[lang="zh-hans"] .cate_scene .cate_layout_10 p,
	html[lang="zh-hant"] .cate_scene .cate_layout_10 p,
	html[lang="ko"] .cate_scene .cate_layout_10 p,
	html[lang="en"] .cate_scene .cate_layout_10 p {
		height: auto;
	}

	html[lang="zh-hans"] .cate_scene .cate_layout_10 h2,
	html[lang="zh-hant"] .cate_scene .cate_layout_10 h2,
	html[lang="ko"] .cate_scene .cate_layout_10 h2,
	html[lang="en"] .cate_scene .cate_layout_10 h2 {
		margin: 30px 0;
		height: auto;
	}

}

.scene_room {
	margin: 0 0 80px;
	padding-top: 80px;
}

.scene_room h2 {
	margin: 0 0 0 10px;
	font-size: 2.6rem;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.8;
	letter-spacing: 0.05em;
}

.scene_room h3 {
	padding: 0 5px;
	font-size: 2.2rem;
	height: 120px;
	color: #fff;
	text-align: center;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.8;
	letter-spacing: 0.05em;
	position: relative;
	z-index: 2;
	background: url(../images/common/ptn_room_name.png) 0 0 / 110px auto;
}

.scene_text {
	margin: 40px 20px 0;
}

.scene_room p {
	margin: 0 0 10px;
	font-size: 1.8rem;
	line-height: 1.6;
}

.scene_room p.note {
	margin: 0 0 3px;
	padding-left: 1em;
	text-indent: -1em;
	font-size: 1.2rem;
}

html[lang="zh-hans"] .scene_room h2,
html[lang="zh-hant"] .scene_room h2,
html[lang="ko"] .scene_room h2,
html[lang="en"] .scene_room h2 {
	writing-mode: inherit;
	text-orientation: inherit;
	line-height: 1.3;
}

html[lang="zh-hans"] .scene_room h3,
html[lang="zh-hant"] .scene_room h3,
html[lang="ko"] .scene_room h3,
html[lang="en"] .scene_room h3 {
	padding: 0 15px;
	writing-mode: inherit;
	text-orientation: inherit;
	height: auto;
}


@media screen and (min-width: 768px) {

	.scene_room {
		margin: 0 0 170px;
		padding: 180px 0 0;
		position: relative;
		z-index: 2;
	}

	.scene_room .inner {
		margin: 0 auto;
		width: min(95%,1200px);
	}

	.scene_room .inner > div {
		display: flex;
	}

	.scene_room h2 {
		margin: 0;
		font-size: 3.0rem;
	}

	.scene_room h3 {
		padding: 0 10px;
		font-size: 2.4rem;
		height: 150px;
		text-align: center;
	}

	.scene_room_private h3 {
		margin: 70px 0 0 61%;
	}

	.scene_text {
		margin: 0;
		max-width: 680px;
		width: 65%;
	}

	.scene_room p {
		font-size: 2.0rem;
		line-height: 2.0;
	}

	.scene_room p.note {
		margin: 0;
		font-size: 1.4rem;
	}

	html[lang="zh-hans"] .scene_room h3,
	html[lang="zh-hant"] .scene_room h3,
	html[lang="ko"] .scene_room h3,
	html[lang="en"] .scene_room h3 {
		padding: 0 10px;
		display: inline-block;
	}

	html[lang="zh-hans"] .scene_room .inner > div:first-child,
	html[lang="zh-hant"] .scene_room .inner > div:first-child,
	html[lang="ko"] .scene_room .inner > div:first-child,
	html[lang="en"] .scene_room .inner > div:first-child {
		display: block;
	}

}

.scene_room_private {
	margin: -125px 0 0;
	position: relative;
}

.scene_room_private h3 {
	position: absolute;
	top: -30px;
	right: 0;
}

html[lang="zh-hans"] .scene_room_private,
html[lang="zh-hant"] .scene_room_private,
html[lang="ko"] .scene_room_private,
html[lang="en"] .scene_room_private {
	margin-top: 30px;
}

@media screen and (min-width: 768px) {

	.scene_room_private {
		margin: 0 0 225px 50px;
	}

	.scene_room_private h3 {
		position: relative;
		top: auto;
		right: auto;
	}

	.scene_room_private .scene_text {
		margin: -130px 0 0;
		padding-right: 30px;
	}

}

.scene_pic10_12 {
	margin: 30px 0 0;
}

.scene_pic10 {
	margin: 0 20px 0 0;
	position: relative;
}

.scene_pic10::before,
.scene_pic10::after {
	position: absolute;
	content: '';
	right: 15%;
	bottom: 5px;
	width: 40px;
	height: 40px;
	background: #caaa39;
}

.scene_pic10::after {
	right: calc(15% - 20px);
	bottom: -15px;
	width: 20px;
	height: 20px;
}

.scene_pic11_12 {
	display: none;
}

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

	.scene_pic10_12 {
		margin: -100px 0 0;
		display: flex;
	}

	.scene_pic10 {
		margin: 0 5px 0 0;
		width: 64%;
		flex-shrink: 0;
	}

	.scene_pic10::before,
	.scene_pic10::after {
		display: none;
	}

	.scene_pic11_12 {
		margin: 200px 0 0;
		display: block;
	}

	.scene_pic11 {
		margin-bottom: 5px;
	}

	.scene_pic12 {
		width: 75%;
		position: relative;
	}

	.scene_pic12::before,
	.scene_pic12::after {
		position: absolute;
		content: '';
		left: -30px;
		bottom: -20px;
		width: 40px;
		height: 40px;
		background: #caaa39;
	}

	.scene_pic12::after {
		left: 10px;
		bottom: -40px;
		width: 20px;
		height: 20px;
	}

}

@media screen and (min-width: 768px) and (max-width: 1259px) {

	.scene_room_private {
		margin-left: 10%;
	}

}

.scene_room_hall {
	margin: 50px 0 0;
	position: relative;
}

.scene_room_hall h3 {
	position: absolute;
	right: 20px;
	top: 155px;
	padding: 0 5px;
	height: 120px;
}

.scene_room_hall_right {
}

.scene_pic13 {
	display: none;
}

.scene_pic14 {
	margin: 0 0 0 70px;
}

.scene_pic14 + .scene_pic13 {
	margin: 5px 0 0;
	display: block;
	width: 45%;
	position: relative;
}

.scene_pic13::after {
	position: absolute;
	content: '';
	right: -20px;
	bottom: -20px;
	width: 40px;
	height: 40px;
	background: #caaa39;
}

.scene_room_hall_right .scene_text {
	margin: 45px 20px 0;
	width: auto;
}

@media screen and (min-width: 768px) {

	.scene_room_hall {
		margin: 0;
		display: flex;
		align-items: flex-start;
	}

	.scene_room_hall h3 {
		margin: 0 0 0 -35px;
		padding: 0 10px;
		height: 150px;
		order: 2;
		position: relative;
		right: auto;
		top: auto;
	}

	.scene_room_hall_right {
		margin: 0;
		padding: 0;
		order: 3;
		width: 68%;
	}

	.scene_pic13 {
		margin: 360px 5px 0 20px;
		width: 32%;
		position: relative;
		display: block;
	}

	.scene_pic13::after {
		position: absolute;
		content: '';
		left: -20px;
		right: auto;
		top: -20px;
		bottom: auto;
		width: 40px;
		height: 40px;
		background: #caaa39;
	}

	.scene_pic14 {
		margin: -95px 0 0;
	}

	.scene_pic14 + .scene_pic13 {
		display: none;
	}

	.scene_room_hall_right .scene_text {
		margin: 50px 0 0 60px;
	}

}

.scene_service {
	background: url(../images/common/ptn_services.png) 0 0 / 74px auto;
}

.scene_service_wave {
	padding: 70px 0 40px;
	text-align: center;
	background: url(../images/scene/wave_sp.png) no-repeat 0 -1px / 100% auto;
}

.scene_service .inner {
	margin: 0 20px;
}

.scene_service h2 {
	font-size: 2.6rem;
}

.scene_service ul {
	margin: 60px 0 0;
}

.scene_service li {
	margin: 0 0 30px;
	text-align: left;
}

.scene_service li > div {
	display: flex;
	gap: 20px;
}

.scene_service li h3 {
	margin: 0 0 30px;
	padding: 8px 0 8px 15px;
	font-size: 1.6rem;
	position: relative;
}

.scene_service li h3::before,
.scene_service li h3::after {
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 1px;
	height: 100%;
	background: #caaa39;
}

.scene_service li h3::after {
	left: 4px;
	background: #d11919;
}

.scene_service li > div > * {
	width: calc(50% - 10px);
}

.scene_service li figure {
	margin: 0 0 15px;
}

.scene_service p {
	margin: 0 0 30px;
	text-align: left;
	font-size: 1.6rem;
	line-height: 1.6;
}

.scene_service p.note {
	margin: 0 0 5px;
	padding: 0 0 0 1em;
	font-size: 1.2rem;
	text-indent: -1em;
}

p.btn_box_link {
	margin: 0;
	border-radius: 6px;
	border: 1px solid #a1874a;
	font-size: 1.6rem;
	line-height: 1.4;
}

.btn_box_link a {
	padding: 10px 50px 10px 20px;
	display: block;
	background: url(../images/common/ico_link_b_g.svg) no-repeat right 20px center / 16px auto;
}

@media screen and (min-width: 768px) {

	.scene_service_wave {
		padding: 180px 0;
		background: url(../images/scene/wave_pc.png) no-repeat 0 0 / 100% auto;
	}

	.scene_service .inner {
		margin: 0 auto;
		width: min(95%,1200px);
	}

	.scene_service h2 {
		font-size: 3.0rem;
	}

	.scene_service ul {
		margin: 85px 0 0;
		display: flex;
		justify-content: center;
		gap: min(5%,75px);
	}

	.scene_service li {
		margin: 0;
	}

	.scene_service li h3 {
		margin: 0 0 40px;
		padding: 5px 0 5px 20px;
		font-size: 1.8rem;
	}

	.scene_service li > div {
		display: block;
	}

	.scene_service li > div > * {
		width: auto;
	}

	.scene_service li figure {
		margin: 0 0 20px;
	}

	.scene_service p {
		margin: 0 0 20px;
	}

	.scene_service p.note {
		font-size: 1.4rem;
	}

	.btn_box_link a {
		padding: 13px 50px 13px 20px;
		display: block;
		position: relative;
		overflow: hidden;
		z-index: 2;
		background: none;
	}

	.btn_box_link a::after {
		position: absolute;
		content: '';
		top: 0;
		bottom: 0;
		right: 20px;
		margin: auto;
		width: 24px;
		height: 30px;
		background: url(../images/common/ico_link_b_g.svg) no-repeat 0 center / 24px auto;
	}

	.btn_box_link a::before {
		position: absolute;
		content: '';
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		transform: translateX(-100%);
		background: #a1874a;
		transition: all 0.4s ease 0s;
		z-index: -1;
	}

	.btn_box_link a:hover {
		color: #fff;
	}

	.btn_box_link a:hover::after {
		background: url(../images/common/ico_link_b_w.svg) no-repeat 0 center / 24px auto;
	}

	.btn_box_link a:hover::before {
		transform: translateX(0);
	}

}

/* -----------------
	長寿のお祝い
----------------- */

.entry_title_header {
	height: 350px;
}

.entry_title_header .inner {
	height: 100%;
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
}

.entry_title_header_box {
	padding: 18px 20px 15px;
	background: #f5f4ee;
	display: inline-block;
}

.entry_title_header_box p {
	padding: 0 55px 0 0;
	font-size: 2.0rem;
	line-height: 1.4;
	font-weight: 300;
	color: #c24444;
	display: inline;
	position: relative;
}

.entry_title_header_box p::after {
	position: absolute;
	content: '';
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 50px;
	height: 1px;
	background: #caaa39;
}

.entry_title_header_box h1 {
	margin: 5px 0 0;
	font-size: 3.0rem;
	font-weight: 300;
	line-height: 1.4;
}

@media screen and (min-width: 768px) {

	.entry_title_header {
		height: 600px;
	}

	.page.entry_.lg_5 .entry_title_header,
	.page.entry_.lg_4 .entry_title_header,
	.page.entry_.lg_3 .entry_title_header,
	.page.entry_.lg_2 .entry_title_header,
	.page.entry_.lg_1 .entry_title_header {
		height: auto;
	}

	.entry_title_header .inner {
		margin: 0 auto;
		width: min(95%,1200px);
	}

	.entry_title_header_box {
		padding: 50px 80px 40px 0;
		position: relative;
	}

	.entry_title_header_box::before {
		position: absolute;
		content: '';
		background: #f5f4ee;
		height: 100%;
		width: 100%;
		left: 0;
		top: 0;
		transform: translateX(-100%);
	}

	.entry_title_header_box p {
		padding: 0 60px 0 0;
		font-size: 2.2rem;
	}

	.entry_title_header_box h1 {
		margin: 2px 0 0;
		font-size: 3.6rem;
	}

}

.cate_layout_11 .cate_layout_left {
	margin: 0 20px 30px;
}

.longevity_table {
	margin: 0 0 20px;
	width: 100%;
}

.longevity_table th {
	padding: 12px 0 4px 10px;
	font-size: 1.8rem;
	border-bottom: 1px solid #d3ceb4;
	text-align: left;
}

.longevity_table td {
	padding: 12px 0 4px 20px;
	font-size: 1.6rem;
	border-bottom: 1px solid #d3ceb4;
	text-align: center;
}

.longevity_table th i,
.memorial_table th i {
	margin: 0 15px 0 0;
	display: inline-block;
	width: 25px;
	height: 25px;
	position: relative;
}

.longevity_table th i::after,
.memorial_table th i::after {
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 15px;
	height: 15px;
}

.longevity_table th i::before,
.memorial_table th i::before {
	position: absolute;
	content: '';
	left: 10px;
	top: 15px;
	width: 10px;
	height: 10px;
}

@media screen and (min-width: 768px) {

	.cate_layout_11 .inner {
		display: flex;
		justify-content: space-between;
	}

	.cate_layout_11 .cate_layout_left {
		margin: 0;
		width: calc(50% - 4%);
	}

	.cate_layout_11 .cate_layout_right {
		width: calc(50% - 4%);
	}

	.longevity_table {
		margin: 0 0 30px;
		width: 100%;
	}

	.longevity_table th {
		padding: 25px 0 5px 20px;
		white-space: nowrap;
	}

	.longevity_table td {
		padding: 25px 15px 5px 30px;
		text-align: left;
		white-space: nowrap;
	}

	.longevity_table th i {
		margin: 0 25px 0 0;
	}

}

.icon_red::after {
	background: #c20e23;
}

.icon_red::before {
	background: #eb4659;
}

.icon_pink::after {
	background: #fcbefe;
}

.icon_pink::before {
	background: #fee1ff;
}

.icon_green::after {
	background: #008001;
}

.icon_green::before {
	background: #52b252;
}

.icon_purple::after {
	background: #542569;
}

.icon_purple::before {
	background: #9239ba;
}

.icon_yellow::after {
	background: #dec125;
}

.icon_yellow::before {
	background: #f5df69;
}

.icon_white::after {
	background: #fff;
}

.icon_white::before {
	background: #d3ceb4;
}


.cate_layout_11 p {
	margin: 0 0 10px;
	font-size: 1.6rem;
	writing-mode: inherit;
	text-orientation: inherit;
}

.cate_layout_11 p.note {
	margin: 0 0 5px;
	padding: 0 0 0 1em;
	text-indent: -1em;
	font-size: 1.2rem;
}

.longevity_pic2 {
	margin: 5px 0 0;
	width: 53%;
	position: relative;
}

.longevity_pic2::after {
	position: absolute;
	content: '';
	right: -20px;
	bottom: -20px;
	width: 40px;
	height: 40px;
	background: #caaa39;
}

@media screen and (min-width: 768px) {

	.cate_layout_11 p {
		margin: 0 0 15px;
	}

	.cate_layout_11 p.note {
		font-size: 1.4rem;
	}

	.longevity_pic2 {
		width: 240px;
		width: 43%;
	}

}

.longevity_menu {
	padding: 160px 0 30px;
	display: block;
	background: url(../images/longevity/band_sp.png) no-repeat 0 -70px / 100% auto;
}

.entry_starting .longevity_menu {
	padding-top: 100px;
	background-position: 0 -120px;
}

.longevity_menu_header {
	margin: 0 20px 50px;
	text-align: center;
}

.longevity_menu_header h2 {
	margin: 0 0 60px;
	font-size: 2.6rem;
}

.longevity_menu_header p {
	font-size: 1.8rem;
}

@media screen and (min-width: 768px) {

	.longevity_menu {
		padding: 300px 0 0;
		background: url(../images/longevity/band_pc.png) no-repeat 0 0 / 100% auto;
	}

	.entry_starting .longevity_menu {
		padding-top: 300px;
		background-position: 0 0;
	}

	.longevity_menu .inner {
		margin: 0 auto;
    	width: min(95%,1200px);
	}

	.longevity_menu_header {
		margin: 0 0 110px;
	}

	.longevity_menu_header h2 {
		margin: 0 0 90px;
		font-size: 3.0rem;
	}

	.longevity_menu_header p {
		font-size: 2.0rem;
	}

}

.longevity_menu_list {
	margin: 0 20px;
}

.longevity_menu_list li {
	margin: 0 0 50px;
}

.longevity_menu_list li .longevity_menu_text {
	margin: 0 0 35px;
}

.longevity_menu_list li .longevity_menu_text h3 {
	margin: 0 0 30px;
	padding: 0 0 15px;
	font-size: 2.2rem;
	display: flex;
	align-items: center;
	position: relative;
	border-bottom: 1px solid #eae3d9;
}

.longevity_menu_list li .longevity_menu_text h3::after {
	position: absolute;
	content: '';
	left: 0;
	bottom: -1px;
	width: 50px;
	height: 1px;
	background: #caaa39;
}

.longevity_menu_list li .longevity_menu_text h3 span {
	margin: 0 25px 0 0;
	font-size: 1.6rem;
	color: #c20e23;
}

.longevity_menu_list li .longevity_menu_text p {
	font-size: 1.6rem;
}

.longevity_menu_list li .longevity_menu_text p.price {
	margin: 30px 0 0;
	font-size: 1.6rem;
}

.longevity_menu_list li .longevity_menu_text p.price span {
	font-size: 2.2rem;
}

.longevity_menu_list li .longevity_menu_text_inner {
	margin: 0 0 30px;
}

.longevity_menu_list li .longevity_menu_text_inner h3 {
    margin-bottom: 15px;
}

.longevity_menu_list li .longevity_menu_text_inner p.price {
    margin-top: 15px;
}

.longevity_menu_list li .longevity_menu_text_inner:last-child {
	margin-bottom: 0;
}

html[lang="zh-hans"] .longevity_menu_list li .longevity_menu_text h3,
html[lang="zh-hant"] .longevity_menu_list li .longevity_menu_text h3,
html[lang="ko"] .longevity_menu_list li .longevity_menu_text h3,
html[lang="en"] .longevity_menu_list li .longevity_menu_text h3 {
	display: block;
}

@media screen and (min-width: 768px) {

	.longevity_menu_list {
		margin: 0 20px;
	}

	.longevity_menu_list li {
		margin: 0 0 130px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.longevity_menu_list li .longevity_menu_text {
		margin: 0;
		width: calc(50% - 1.6%);
	}

	.longevity_menu_list li figure {
		width: calc(50% - 8.4%);
	}

	.longevity_menu_list li:nth-child(2n) .longevity_menu_text {
		order: 2;
	}

	.longevity_menu_list li:nth-child(2n) figure {
		order: 1;
	}

	.longevity_menu_list li .longevity_menu_text h3 {
		margin: 0 0 45px;
		padding: 0 0 18px;
		font-size: 2.4rem;
	}

	.longevity_menu_list li .longevity_menu_text h3 span {
		margin: 0 20px 0 0;
		font-size: 1.8rem;
	}

	.longevity_menu_list li .longevity_menu_text p.price {
		margin: 40px 0 0;
	}

	.longevity_menu_list li .longevity_menu_text p.price span {
		font-size: 2.4rem;
	}

    .longevity_menu_list li .longevity_menu_text_inner {
	    margin: 0 0 40px;
    }

    .longevity_menu_list li .longevity_menu_text_inner h3 {
        margin-bottom: 20px;
    }

    .longevity_menu_list li .longevity_menu_text_inner p.price {
        margin-top: 20px;
    }

}

.longevity_menu_note {
	padding: 20px;
	border-top: 1px solid #eae3d9;
}

.longevity_menu_note p.note {
	margin: 0 0 3px;
	font-size: 1.2rem;
	padding: 0 0 0 1em;
	text-indent: -1em;
}

@media screen and (min-width: 768px) {

	.longevity_menu_note {
		padding: 25px 0 ;
	}

	.longevity_menu_note p.note {
		margin: 0 0 5px;
		font-size: 1.4rem;
	}

}

.longevity_single_menu {
	padding: 60px 20px 10px;
	background: #efede1;
	display: block;
}

.longevity_single_menu h2 {
	margin: 0 0 50px;
	padding: 0 0 20px;
	text-align: center;
	font-size: 2.4rem;
	position: relative;
}

.longevity_single_menu h2::before {
	position: absolute;
	content: '';
	width: 50px;
	height: 3px;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	background: #caaa39;
}

.longevity_single_menu h2::after {
	position: absolute;
	content: '';
	width: 25px;
	height: 3px;
	left: 50%;
	bottom: 0;
	background: #c24444;
}

@media screen and (min-width: 768px) {

	.longevity_single_menu {
		padding: 100px 0;
	}

	.longevity_single_menu .inner {
		margin: 0 auto;
		width: min(95%,1200px);
	}

	.longevity_single_menu h2 {
		margin: 0 0 80px;
		padding: 0 0 30px;
		font-size: 2.6rem;
	}

}

.longevity_single_menu_list li {
	margin: 0 0 50px;
}

.longevity_single_menu_list h3 {
	margin: 25px 0 20px;
	font-size: 1.8rem;
}

.longevity_single_menu_list p {
	margin: 0 0 20px;
	font-size: 1.6rem;
}

.longevity_single_menu_list p.price {
	font-size: 1.6rem;
}

.longevity_single_menu_list p.price span {
	font-size: 2.2rem;
}

@media screen and (min-width: 768px) {

	.longevity_single_menu_list {
		display: flex;
		gap: 60px;
	}

	.longevity_single_menu_list li {
		margin: 0;
	}

	.longevity_single_menu_list h3 {
		margin: 30px 0;
		font-size: 2.0rem;
	}

	.longevity_single_menu_list p {
		margin: 0 0 30px;
		font-size: 1.6rem;
	}

	.longevity_single_menu_list p.price {
		font-size: 1.6rem;
	}

	.longevity_single_menu_list p.price span {
		font-size: 2.4rem;
	}

}

/* ------------------------
	弔事・法事でのご利用
------------------------ */

.cate_layout_12 {
	margin: 0 0 40px;
}

.cate_layout_12 .cate_layout_3column .cate_layout_left {
	margin: 0 0 40px 20px;
}

.cate_layout_12 .cate_layout_3column .cate_layout_center,
.cate_layout_12 .cate_layout_3column .cate_layout_right {
	margin: 0 20px 40px;
}

.memorial_pic1 {
	position: relative;
}

.memorial_pic1 img {
	width: 72%;
}

img.memorial_img1 {
	position: absolute;
	right: 0;
	bottom: -15px;
	width: 35%;
}

@media screen and (min-width: 768px) {

	.cate_layout_12 {
		margin: 0 0 80px;
	}

	.cate_layout_3column {
		margin: 0 0 50px;
		display: flex;
	}

	.cate_layout_12 .cate_layout_3column .cate_layout_left {
		margin: 0 8% 0 0;
		max-width: 400px;
		width: 33.3333%;
	}

	.memorial_pic1 img {
		width: 100%;
	}

	img.memorial_img1 {
		bottom: -245px;
		width: 233px;
	}

	.cate_layout_12 .cate_layout_3column .cate_layout_center {
		margin: 0;
		max-width: 350px;
		width: 29%;
	}

	.cate_layout_12 .cate_layout_3column .cate_layout_right {
		margin: 0;
		width: 29%;
	}

}

@media screen and (min-width: 768px) and (max-width: 1199px) {

	.cate_layout_12 .cate_layout_3column .cate_layout_left {
		margin-right: 4%;
	}

}

.cate_layout_12 h3 {
	margin: 0 0 10px;
	padding: 0 0 0 12px;
	font-size: 2.0rem;
	line-height: 1.6;
	border-left: 3px solid #d3ceb4;
	writing-mode: inherit;
	text-orientation: inherit;
}

.cate_layout_12 p {
	margin: 0 20px;
	writing-mode: inherit;
	text-orientation: inherit;
	font-size: 1.6rem;
	line-height: 1.4;
}

.cate_layout_12 p.note {
	margin: 0 20px 5px;
	padding: 0 0 0 1em;
	text-indent: -1em;
	font-size: 1.4rem;
}

.memorial_table {
	width: 100%;
}

.memorial_table th {
	padding: 15px 30px 5px 10px;
	text-align: left;
	font-size: 1.8rem;
	border-bottom: 1px solid #d3ceb4;
	white-space: nowrap;
}

.memorial_table td {
	padding: 15px 30px 5px 10px;
	font-size: 1.6rem;
	border-bottom: 1px solid #d3ceb4;
	white-space: nowrap;
}

.memorial_table th i {
	margin: 0 15px 0 0;
}

.icon_white_purple::after {
	background: #fff;
}

.icon_white_purple::before {
	background: #b692c6;
}

.icon_white_blue::after {
	background: #fff;
}

.icon_white_blue::before {
	background: #9c99d6;
}

@media screen and (min-width: 768px) {

	.cate_layout_12 h3 {
		margin: 0;
		padding: 0 0 0 15px;
		font-size: 2.4rem;
	}

	.memorial_table {
		width: auto;
	}

	.cate_layout_12 p.note {
		margin: 0 0 5px;
	}

	.memorial_table th {
		padding: 20px 10px 5px 20px;
		font-size: 2.0rem;
	}

	.memorial_table td {
		padding: 20px 30px 5px 50px;
	}

}

@media screen and (min-width: 768px) and (max-width: 1199px) {

	.memorial_table th {
		padding-left: 10px;
		padding-right: 10px;
	}

	.memorial_table td {
		padding-left: 10px;
		padding-right: 10px;
	}

}

.cate_layout_13 .inner {
	margin: 0 20px;
}

.cate_layout_13 .inner > .cate_layout_left {
	margin: 0 0 40px;
}

.cate_layout_13 .inner > .cate_layout_right {
	margin: 0 0 10px;
}

.cate_layout_13 h3 {
	padding: 4px 0 4px 15px;
	font-size: 2.0rem;
	border-left: 3px solid #d3ceb4;
	writing-mode: inherit;
	text-orientation: inherit;
}

.cate_layout_13 figure {
	margin: 30px 0 20px;
}

.cate_layout_13 p {
	writing-mode: inherit;
	text-orientation: inherit;
	font-size: 1.6rem;
	line-height: 1.5;
}

@media screen and (min-width: 768px) {

	.cate_layout_13 .inner {
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
	}

	.cate_layout_13 .inner > .cate_layout_left,
	.cate_layout_13 .inner > .cate_layout_right {
		margin: 0;
		width: 48%;
	}

	.cate_layout_13 h3 {
		padding: 8px 0 8px 15px;
		font-size: 2.4rem;
		line-height: 1.2;
	}

	.cate_layout_13 p {
		line-height: 1.6;
	}

}

.memorial_menu {
	padding: 130px 0 70px;
	display: block;
	background: url(../images/memorial/band_sp.png) no-repeat 0 -70px / 100% auto;
}

.memorial_menu_header {
	margin: 0 20px 50px;
	text-align: center;
}

.memorial_menu_header h2 {
	margin: 0 0 50px;
	font-size: 2.6rem;
}

.memorial_menu_header p {
	font-size: 1.8rem;
}

@media screen and (min-width: 768px) {

	.memorial_menu {
		margin: -20px 0 100px;
		padding: 17vw 0 0;
		background: url(../images/memorial/band_pc.png) no-repeat 0 0 / 100% auto;
	}

	.memorial_menu .inner {
		margin: 0 auto;
    	width: min(95%,1200px);
	}

	.memorial_menu_header {
		margin: 0 0 110px;
	}

	.memorial_menu_header h2 {
		margin: 0 0 90px;
		font-size: 3.0rem;
	}

	.memorial_menu_header p {
		font-size: 2.0rem;
	}

}

.memorial_menu_list {
	margin: 0 20px;
}

.memorial_menu_list > li {
	margin: 0 0 50px;
}

.memorial_menu_list > li .memorial_menu_text {
	margin: 0 0 35px;
}

.memorial_menu_list > li .memorial_menu_text h3 {
	margin: 0 0 30px;
	padding: 0 0 15px;
	font-size: 2.2rem;
	display: flex;
	align-items: center;
	position: relative;
	border-bottom: 1px solid #eae3d9;
}

.memorial_menu_list > li .memorial_menu_text h3::after {
	position: absolute;
	content: '';
	left: 0;
	bottom: -1px;
	width: 50px;
	height: 1px;
	background: #1a7586;
}

.memorial_menu_list > li .memorial_menu_text h3 span {
	margin: 0 25px 0 0;
	font-size: 1.6rem;
	color: #1a7586;
}

.memorial_menu_list > li .memorial_menu_text p {
	font-size: 1.6rem;
}

.memorial_menu_list > li .memorial_menu_text p.note {
	margin: 20px 0 0;
	font-size: 1.2rem;
	padding: 0 0 0 1em;
	text-indent: -1em;
}

.memorial_menu_list > li .memorial_menu_text p.price {
	margin: 30px 0 0;
	font-size: 1.6rem;
}

.memorial_menu_list > li .memorial_menu_text p.price span {
	font-size: 2.2rem;
}

.memorial_menu_list > li .memorial_menu_text_inner {
	margin: 0 0 30px;
}

.memorial_menu_list > li .memorial_menu_text_inner h3 {
    margin-bottom: 15px;
}

.memorial_menu_list > li .memorial_menu_text_inner p.price {
    margin-top: 15px;
}

.memorial_menu_list > li .memorial_menu_text_inner:last-child {
	margin-bottom: 0;
}


@media screen and (min-width: 768px) {

	.memorial_menu_list {
		margin: 0 20px;
	}

	.memorial_menu_list > li {
		margin: 0 0 130px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.memorial_menu_list > li .memorial_menu_text {
		margin: 0;
		width: calc(50% - 1.6%);
	}

	.memorial_menu_list > li figure {
		width: calc(50% - 8.4%);
	}

	.memorial_menu_list > li:nth-child(2n) .memorial_menu_text {
		order: 2;
	}

	.memorial_menu_list > li:nth-child(2n) figure {
		order: 1;
	}

	.memorial_menu_list > li .memorial_menu_text h3 {
		margin: 0 0 45px;
		padding: 0 0 18px;
		font-size: 2.4rem;
	}

	.memorial_menu_list > li .memorial_menu_text h3 span {
		margin: 0 20px 0 0;
		font-size: 1.8rem;
	}

	.memorial_menu_list > li .memorial_menu_text p.note {
		margin: 30px 0 0;
		font-size: 1.4rem;
	}

	.memorial_menu_list > li .memorial_menu_text p.price {
		margin: 40px 0 0;
	}

	.memorial_menu_list > li .memorial_menu_text p.price span {
		font-size: 2.4rem;
	}

	.memorial_menu_list > li .memorial_menu_text_inner {
	    margin: 0 0 40px;
    }

	.memorial_menu_list > li .memorial_menu_text_inner h3 {
        margin-bottom: 20px;
    }

	.memorial_menu_list > li .memorial_menu_text_inner p.price {
        margin-top: 20px;
    }

}

.memorial_menu_note {
	padding: 20px;
	border-top: 1px solid #eae3d9;
}

.memorial_menu_note p.note {
	margin: 0 0 3px;
	font-size: 1.2rem;
	padding: 0 0 0 1em;
	text-indent: -1em;
}

@media screen and (min-width: 768px) {

	.memorial_menu_note {
		padding: 20px 0 ;
	}

	.memorial_menu_note p.note {
		margin: 0 0 10px;
		font-size: 1.4rem;
	}

}

.memorial_menu_list .menu_name {
	margin: 20px 0;
}

.memorial_menu_list .menu_name li {
	margin: 0 0 5px;
	padding: 0 0 0 20px;
	font-size: 1.6rem;
	position: relative;
}

.memorial_menu_list .menu_name li::after {
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
	height: 10px;
	background: #1a7586;
}

@media screen and (min-width: 768px) {

	.memorial_menu_list .menu_name {
		margin: 30px 0;
	}

	.memorial_menu_list .menu_name li {
		margin: 0 0 8px;
	}

}

.memorial_menu_note {
	padding: 20px;
	border-top: 1px solid #eae3d9;
}

.memorial_menu_note p.note {
	margin: 0 0 3px;
	font-size: 1.2rem;
	padding: 0 0 0 1em;
	text-indent: -1em;
}

@media screen and (min-width: 768px) {

	.memorial_menu_note {
		padding: 25px 0 ;
	}

	.memorial_menu_note p.note {
		margin: 0 0 5px;
		font-size: 1.4rem;
	}

}

.memorial_menu_mind {
	background: url(../images/common/ptn_scene_bg.png) 0 0 / 325px auto;
}

.memorial_menu_mind .wave {
	padding: 80px 0 40px;
    background: url(../images/scene/wave_sp.png) no-repeat 0 0 / 100% auto,
				url(../images/memorial/wave_bottom_sp.png) no-repeat 0 bottom / 100% auto;
	text-align: center;
}

.memorial_menu_mind .inner {
	margin: 0 20px;
}

@media screen and (min-width: 768px) {

	.memorial_menu_mind .wave {
		padding: 180px 0;
    	background: url(../images/scene/wave_pc.png) no-repeat 0 0 / 100% auto,
					url(../images/memorial/wave_bottom_pc.png) no-repeat 0 bottom / 100% auto;
	}

	.memorial_menu_mind .inner {
		margin: 0 auto;
    	width: min(95%,1200px);
	}

}

.memorial_menu_mind h2 {
	margin: 0 0 50px;
	text-align: center;
	font-size: 2.6rem;
}

.memorial_menu_mind h3 {
	margin: 0 auto 45px;
	font-size: 2.2rem;
	text-align: center;
	display: inline-flex;
	align-items: center;
}

.memorial_menu_mind h3 span {
	margin: 5px 10px 0;
	position: relative;
	height: 6px;
	width: 55px;
	display: block;
}

.memorial_menu_mind h3 span::before {
	position: absolute;
	content: '';
	width: 40px;
	height: 1px;
	top: 0;
	left: 0;
	background: #5d1e8e;
}

.memorial_menu_mind h3 span::after {
	position: absolute;
	content: '';
	width: 40px;
	height: 1px;
	bottom: 0;
	right: 0;
	background: #477438;
}

@media screen and (min-width: 768px) {

	.memorial_menu_mind h2 {
		margin: 0 0 80px;
		font-size: 3.0rem;
	}

	.memorial_menu_mind h3 {
		margin: 0 auto 65px;
		font-size: 2.4rem;
	}

	.memorial_menu_mind h3 span {
		margin: 5px 20px 0;
		width: 145px;
	}

	.memorial_menu_mind h3 span::before {
		width: 125px;
	}

	.memorial_menu_mind h3 span::after {
		width: 125px;
	}

}

.memorial_menu_2colum {
	margin: 0 0 50px;
	text-align: left;
}

.memorial_menu_2colum .cate_layout_left,
.memorial_menu_2colum .cate_layout_right {
	margin: 0 0 40px;
}

.memorial_menu_2colum h4 {
	margin: 40px 0 35px;
	padding: 2px 0 2px 10px;
	font-size: 1.8rem;
	line-height: 1.6;
	border-left: 1px solid #1a7586;
}

.memorial_menu_2colum .cate_layout_right > h4 {
	margin-top: 0;
}

.memorial_menu_2colum p,
.memorial_menu_3colum p {
	margin: 0 0 20px;
	font-size: 1.6rem;
	line-height: 1.6;
}

.memorial_menu_2colum p.price,
.memorial_menu_3colum p.price {
	margin: 0;
	font-size: 1.6rem;
}

.memorial_menu_2colum p.price span,
.memorial_menu_3colum p.price span {
	font-size: 2.2rem;
}

@media screen and (min-width: 768px) {

	.memorial_menu_2colum {
		margin: 0 0 100px;
		display: flex;
		justify-content: space-between;
	}

	.memorial_menu_2colum .cate_layout_left,
	.memorial_menu_2colum .cate_layout_right {
		width: 48%;
	}

	.memorial_menu_2colum h4 {
		margin: 45px 0 40px;
		padding: 2px 0 2px 15px;
		font-size: 2.0rem;
	}

	.memorial_menu_2colum p,
	.memorial_menu_3colum p {
		margin: 0 0 30px;
	}

	.memorial_menu_2colum p.price span,
	.memorial_menu_3colum p.price span {
		font-size: 2.4rem;
	}

}

.memorial_menu_2colum ul.cate_layout_right {
	display: flex;
	flex-wrap: wrap;
	gap: 35px 30px;
}

.memorial_menu_2colum ul.cate_layout_right li {
	width: calc(50% - 15px);
}

.memorial_menu_2colum .cate_layout_right h5 {
	margin: 25px 0 20px;
	font-size: 1.8rem;
}

.memorial_menu_2colum ul.cate_layout_right p {
	margin: 0;
}

@media screen and (min-width: 768px) {

	.memorial_menu_2colum ul.cate_layout_right {
		gap: 40px;
	}

	.memorial_menu_2colum ul.cate_layout_right li {
		width: calc(50% - 20px);
	}

	.memorial_menu_2colum .cate_layout_right h5 {
		margin: 30px 0 25px;
		font-size: 2.0rem;
	}

}

.memorial_menu_3colum {
	text-align: left;
}

.memorial_menu_3colum li {
	margin: 0 0 50px;
}

.memorial_menu_3colum li h4 {
	margin: 25px 0 20px;
	font-size: 1.8rem;
}

@media screen and (min-width: 768px) {

	.memorial_menu_3colum {
		display: flex;
		gap: 60px;
	}

	.memorial_menu_3colum li {
		margin: 0;
	}

	.memorial_menu_3colum li h4 {
		margin: 30px 0 25px;
		font-size: 2.0rem;
	}

}

/* ------------------------
	お子様のお祝い
------------------------ */

.children_pic1_2,
.children_pic4 {
	margin: 30px 0 5px;
 }

.children_pic2 {
	width: 48%;
	position: relative;
}

.children_pic2::after {
	position: absolute;
	content: "";
	right: -5px;
	bottom: -5px;
	width: 10px;
	height: 10px;
	background: #caaa39;
}

@media screen and (min-width: 768px) {

	.children_pic1_2 {
		margin: 0;
		position: relative;
		max-width: 645px;
    	width: 107.5%;
	}

	.children_pic2 {
    	margin: 0;
    	position: absolute;
    	left: -41.7%;
    	bottom: 0%;
    	max-width: 235px;
		width: 50%;
	}

	.children_pic2::after {
		left: -15px;
		bottom: -15px;
		width: 30px;
		height: 30px;
	}

}

.entry_children .cate_layout_15.cate_layout_15_2 .cate_layout_right {
	width: 100%;
}

.entry_children .cate_layout_15.cate_layout_15_2 + .cate_layout_15.cate_layout_15_3 .inner {
	position: relative;
}

.entry_children .cate_layout_15.cate_layout_15_2 + .cate_layout_15.cate_layout_15_3 .inner::after {
	position: absolute;
	content: '';
	bottom: -185px;
	right: 0px;
	width: 150px;
	height: 104px;
	background: url(../images/children/img1.png) no-repeat 0 0 / 150px auto;
}

.entry_children .cate_layout_15.cate_layout_15_2,
.entry_children .cate_layout_15.cate_layout_15_3 {
	margin: 0px 0 60px;
}

.children_pic4 {
	position: relative;
}

.children_pic4::after {
	position: absolute;
	content: '';
	bottom: -120px;
	left: 0px;
	width: 250px;
	height: 140px;
	background: url(../images/children/img2.png) no-repeat 0 0 / 250px auto;
}

@media screen and (min-width: 768px) {

	.entry_children .cate_layout_15.cate_layout_15_2 .cate_layout_right {
		max-width: 545px;
		width: 45%;
	}

	.entry_children .cate_layout_15.cate_layout_15_2 .cate_layout_left {
		max-width: 590px;
		width: 49%;
	}

	.entry_children .cate_layout_15.cate_layout_15_2 + .cate_layout_15.cate_layout_15_3 .inner {
		justify-content: flex-end;
		align-items: flex-start;
	}

	.entry_children .cate_layout_15.cate_layout_15_2 + .cate_layout_15.cate_layout_15_3 .cate_layout_left {
		padding: 0 7%;
	}

	.entry_children .cate_layout_15.cate_layout_15_2 + .cate_layout_15.cate_layout_15_3 .cate_layout_right {
		max-width: 430px;
		width: 36%;
	}

	.entry_children .cate_layout_15.cate_layout_15_2 + .cate_layout_15.cate_layout_15_3 .inner::after {
		bottom: -100px;
		left: 0px;
		width: 295px;
		height: 205px;
		background: url(../images/children/img1.png) no-repeat 0 0 / 295px auto;
	}

	.entry_children .cate_layout_15.cate_layout_15_2,
	.entry_children .cate_layout_15.cate_layout_15_3 {
		margin: 0px 0 100px;
	}

	.children_pic4::after {
		bottom: -125px;
		left: -195px;
		width: 370px;
		height: 208px;
		background: url(../images/children/img2.png) no-repeat 0 0 / 370px auto;
	}

}

.entry_children .cate_layout_17 {
	margin: 265px 0 0;
	background: url(../images/children/pic5_sp.jpg) no-repeat 0 0 / 100% auto;
}

.entry_children .cate_layout_17 .inner {
	padding: 170px 20px 0;
}

.cate_layout_17_box {
	display: flex;
}

.entry_children .cate_layout h2 {
	background: #f5f4ee;
	line-height: 1.4;
	font-size: 2.4rem;
}

.entry_children .cate_layout_17_box h2 {
	width: 118px;
	flex-shrink: 0;
}

.entry_children .cate_layout h2 a {
	color: #c24444;
	padding: 30px 25px 0;
}

.cate_layout_17_box > div {
	margin: 120px -10px 0 20px;
}

.cate_layout_17_box p {
	writing-mode: inherit;
	text-orientation: inherit;
	font-size: 1.4rem;
	line-height: 2.0;
}

.cate_layout_17_box ul {
	padding: 15px 0 0;
    width: auto;
	border: none;
}

.cate_layout_17_box li {
	padding: 8px 0 8px 12px;
	font-size: 1.4rem;
}

.cate_layout_17_box li::before {
	top: 15px;
	bottom: auto;
	width: 5px;
	height: 5px;
	background: #e50012;
}

html[lang="zh-hans"] .cate_layout_17_box,
html[lang="zh-hant"] .cate_layout_17_box,
html[lang="ko"] .cate_layout_17_box,
html[lang="en"] .cate_layout_17_box {
	display: block;
}

html[lang="zh-hans"] .cate_layout_17_box > div,
html[lang="zh-hant"] .cate_layout_17_box > div,
html[lang="ko"] .cate_layout_17_box > div,
html[lang="en"] .cate_layout_17_box > div {
	margin: 30px 0 0;
}

@media screen and (min-width: 768px) {

	.entry_children .cate_layout_17 {
		margin: 255px 0 0;
		height: 540px;
		background: url(../images/children/pic5_pc.jpg) no-repeat center center / cover;
	}

	.entry_children .cate_layout_17 .inner {
		padding: 0;
	}

	.cate_layout_17_box {
		padding: 60px 50px;
		background: #f5f4ee;
		display: inline-flex;
	}

	.cate_layout_17_box p {
		font-size: 1.8rem;
		line-height: 1.8;
	}

	.entry_children .cate_layout h2 {
		margin-right: 60px;
		font-size: 3.6rem;
	}

	.entry_children .cate_layout_17_box h2 {
		width: auto;
	}

	.entry_children .cate_layout h2 a {
		padding: 0;
	}

	.cate_layout_17_box > div {
		margin: 80px 0 0;
	}

	.cate_layout_17_box ul {
		padding: 30px 0;
	}

	.cate_layout_17_box li {
		padding: 10px 0 10px 20px;
		font-size: 1.6rem;
	}

	.cate_layout_17_box li::before {
		top: 0;
		bottom: 0;
	}

	html[lang="zh-hans"] .cate_layout_17_box,
	html[lang="zh-hant"] .cate_layout_17_box,
	html[lang="ko"] .cate_layout_17_box,
	html[lang="en"] .cate_layout_17_box {
		display: inline-block;
	}

}


/* ------------------------
	成長のお祝い
------------------------ */

.entry_growth .cate_layout_15.cate_layout_15_3 {
	margin: 0px 0 0px;
}

.entry_growth .cate_layout_15.cate_layout_15_2 {
	margin: 70px 0 60px;
}

.cate_layout .btn_box_link {
	margin: 20px 0 0;
	display: inline-block;
}

.cate_layout .btn_box_link a {
	padding-right: 45px;
}

.growth_pic1_2,
.growth_pic3,
.growth_pic4 {
	position: relative;
}
.growth_pic1_2,
.growth_pic4 {
	margin: 30px 0 0;
}

.growth_pic2 {
	margin: 5px 0 0;
	position: relative;
	width: 60%;
}

.growth_pic2::after {
	position: absolute;
	content: '';
	bottom: -10px;
	right: -10px;
	width: 20px;
	height: 20px;
	background: #caaa39;
}

.growth_pic4::before {
	position: absolute;
	content: "";
	right: -30px;
	bottom: -80px;
	width: 240px;
	height: 145px;
	background: url(../images/growth/img2.png) no-repeat 0 0 / 240px auto;
}

@media screen and (min-width: 768px) {

	.entry_growth .cate_layout_15.cate_layout_15_3 {
		margin: 0px 0 185px;
	}

	.entry_growth .cate_layout_15.cate_layout_15_2 .cate_layout_right {
		position: relative;
	}

	.entry_growth .cate_layout_15.cate_layout_15_2 .cate_layout_right::after {
		position: absolute;
		content: '';
		bottom: -165px;
		left: 65px;
		width: 175px;
		height: 135px;
		background: url(../images/growth/img1.png) no-repeat 0 0 / 175px auto;
	}

	.entry_growth .cate_layout_15_2 + .cate_layout_15_3 {
		margin-bottom: 0;
	}

	.cate_layout_15.cate_layout_15_3 .cate_layout_left {
		max-width: 600px;
		width: 50%;
		position: relative;
		z-index: 2;
	}

	.cate_layout_15.cate_layout_15_3 .cate_layout_right {
		max-width: 550px;
		width: 46%;
	}

	.entry_growth .cate_layout_15.cate_layout_15_2 {
		margin: 0px 0 150px;
	}

	.cate_layout .btn_box_link {
		margin: 40px 0;
	}

	.cate_layout .btn_box_link a {
		padding-right: 90px;
	}

	.growth_pic1_2,
	.growth_pic4 {
		margin: 0;
	}

	.growth_pic2 {
		margin: 0;
		position: absolute;
		left: -56.4%;
		top: 68%;
		max-width: 300px;
		width: 54.5%;
	}

	.growth_pic2::after {
		top: -15px;
		left: -5%;
		bottom: auto;
		right: auto;
		width: 30px;
		height: 30px;
	}

	.growth_pic3::after,
	.growth_pic4::after {
		position: absolute;
		content: "";
		right: -20px;
		bottom: -20px;
		width: 30px;
		height: 30px;
		background: #caaa39;
	}

	.growth_pic4::before {
		position: absolute;
		content: "";
		left: -220px;
		right: auto;
		bottom: -90px;
		width: 309px;
		height: 190px;
		background: url(../images/growth/img2.png) no-repeat 0 0 / 309px auto;
	}

	.entry_growth .btn_box_link {
		margin-bottom: 0;
	}

}

/* ------------------------
	門出のお祝い
------------------------ */

.cate_layout_16 .inner {
	display: flex;
	align-items: flex-start;
}

.cate_layout_16_1 .inner {
	justify-content: space-between;
}

.cate_layout_16_1 .cate_layout_left {
	margin: 0;
	display: flex;
	width: calc(100% - 50px);
	flex-shrink: 0;
}

.cate_layout_16_1 .cate_layout_right {
	display: none;
}

.starting_pic1 {
	padding-bottom: 30px;
	text-align: right;
	position: relative;
}

.starting_pic1::after {
	position: absolute;
	content: '';
	left: 20px;
	bottom: 0px;
	width: 110px;
	height: 80px;
	background: url(../images/starting/img1.png) no-repeat 0 0 / 110px auto;
}

.starting_pic2 {
	margin: 5px 0 0;
	width: 60px;
}

.cate_layout_16 h3 {
	margin: 0 0 0 8%;
	line-height: 1.0;
	z-index: 2;
}

.cate_layout_16 h3 span {
	font-size: 1.2rem;
	position: relative;
	display: inline-block;
}

.cate_layout_16 h3 span::after {
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	bottom: -30px;
	margin: auto;
	width: 1px;
	height: 25px;
	background: #c24444;
}

.cate_layout_16 h3 em {
	margin-top: 55px;
	display: block;
	font-size: 2.2rem;
}

html[lang="zh-hans"] .cate_layout_16 h3 span,
html[lang="zh-hant"] .cate_layout_16 h3 span,
html[lang="ko"] .cate_layout_16 h3 span,
html[lang="en"] .cate_layout_16 h3 span {
	margin-top: 10px;
	font-size: 1.6rem;
	line-height: 1.4;
}

@media screen and (min-width: 768px) {

	.cate_layout_16 .inner {
		margin: 0 auto;
    	width: min(95%,1200px);
	}

	.cate_layout_16_1 .cate_layout_left {
		max-width: 700px;
		width: 60%;
	}

	.cate_layout_16_1 .cate_layout_right {
		max-width: 200px;
		width: 16.6%;
		display: block;
	}

	.starting_pic1 {
		padding: 0;
		max-width: 580px;
		width: 100%;
		flex-shrink: 0;
		text-align: left;
	}

	.starting_pic1::after {
		display: none;
	}

	.starting_pic2 {
		margin: 10px 0 0;
		width: 150px;
	}

	.starting_img1 {
		margin: 40px 0 0;
	}

	.cate_layout_16 h3 {
		margin: 0 0 0 7%;
		line-height: 1.2;
	}

	.cate_layout_16 h3 span {
		font-size: 1.8rem;
	}

	.cate_layout_16 h3 span::after {
		bottom: -50px;
		height: 40px;
	}

	.cate_layout_16 h3 em {
		margin-top: 110px;
		font-size: 3.0rem;
	}

	html[lang="zh-hans"] .cate_layout_16_1 .cate_layout_left,
	html[lang="zh-hant"] .cate_layout_16_1 .cate_layout_left,
	html[lang="ko"] .cate_layout_16_1 .cate_layout_left,
	html[lang="en"] .cate_layout_16_1 .cate_layout_left {
		max-width: inherit;
		width: auto;
	}

}

@media screen and (min-width: 768px) and (max-width: 1139px) {

	.cate_layout_16_1 .cate_layout_left {
	}

}

.cate_layout_16_2 {
	margin: 20px 0 0;
}

.cate_layout_16_2 h3 {
	margin: 0 8% 0 0;
}

.cate_layout_16_2 .cate_layout_right {
	margin: 0 0 0 auto;
	display: flex;
	width: 76%;
}

html[lang="zh-hans"] .cate_layout_16_2 .cate_layout_right,
html[lang="zh-hant"] .cate_layout_16_2 .cate_layout_right,
html[lang="ko"] .cate_layout_16_2 .cate_layout_right,
html[lang="en"] .cate_layout_16_2 .cate_layout_right {
	margin: 0 20px;
	width: auto;
}

@media screen and (min-width: 768px) {

	.cate_layout_16_2 {
		margin: -290px 0 60px;
	}

	.cate_layout_16_2 h3 {
		margin: 0 0 0 8%;
		order: 2;
	}

	.cate_layout_16_2 .cate_layout_right {
		width: 44%;
		justify-content: flex-end;
	}

	.starting_pic3 {
		max-width: 405px;
		width: 100%;
		flex-shrink: 0;
		position: relative;
		order: 1;
	}

	html[lang="zh-hans"] .cate_layout_16_2 .cate_layout_right,
	html[lang="zh-hant"] .cate_layout_16_2 .cate_layout_right,
	html[lang="ko"] .cate_layout_16_2 .cate_layout_right,
	html[lang="en"] .cate_layout_16_2 .cate_layout_right {
		margin: 0 0 0 auto;
		width: 61%;
	}

}

@media screen and (min-width: 768px) and (max-width: 1119px) {

	.cate_layout_16_2 {
		margin-top: 0;
	}

}

.cate_layout_16_3 {
	margin: 50px 0 0;
}

.cate_layout_16_3 .cate_layout_left {
	margin: 0 10px 0 20px;
	width: calc(68% - 30px);
	display: flex;
	flex-shrink: 0;
	position: relative;
}

.cate_layout_16_3 .cate_layout_right {
	margin: 0 20px 0 0;
}

.cate_layout_16_3 h3 {
	margin: 0 0 0 13%;
}

.starting_pic4 {
	position: relative;
}

.starting_pic4::after {
	position: absolute;
	content: '';
	left: -7px;
	bottom: -7px;
	width: 15px;
	height: 15px;
	background: #caaa39;
}

.starting_pic5 {
	margin: 20px 0 0 20px;
	max-width: 50px;
	position: relative;
}

.starting_pic5::before {
	position: absolute;
	content: '';
	top: 0;
	right: -30px;
	width: 10px;
	height: 10px;
	background: #caaa39;
}

.starting_pic5::after {
	position: absolute;
	content: '';
	top: -20px;
	right: -20px;
	width: 20px;
	height: 20px;
	background: #caaa39;
}

.starting_img2 {
	margin: 100px 0 0 -50px;
	width: 140px;
}

@media screen and (min-width: 768px) {

	.cate_layout_16_3 {
		margin: 0;
	}

	.cate_layout_16_3 .cate_layout_left {
		margin-left: 15%;
		width: 38%;
		display: flex;
		flex-shrink: 0;
		position: relative;
	}

	.cate_layout_16_3 .cate_layout_right {
		margin: 0;
		width: 47%;
	}

	.cate_layout_16_3 h3 {
		margin: 60px 0 0 12%;
	}

	.starting_pic4 {
		max-width: 305px;
		width: 100%;
		flex-shrink: 0;
		position: relative;
	}

	.starting_pic4::after {
		position: absolute;
		content: '';
		left: -25px;
		bottom: -15px;
		width: 30px;
		height: 30px;
		background: #caaa39;
	}

	.starting_pic5 {
		margin: 40px 0 0 60px;
		max-width: 100px;
		position: relative;
	}

	.starting_pic5::before {
		position: absolute;
		content: '';
		top: 0;
		right: -60px;
		width: 20px;
		height: 20px;
		background: #caaa39;
	}

	.starting_pic5::after {
		position: absolute;
		content: '';
		top: -40px;
		right: -40px;
		width: 40px;
		height: 40px;
		background: #caaa39;
	}

	.starting_img2 {
		margin: 134px 0 0;
		width: 225px;
	}

	html[lang="zh-hans"] .cate_layout_16_3 .cate_layout_left,
	html[lang="zh-hant"] .cate_layout_16_3 .cate_layout_left,
	html[lang="ko"] .cate_layout_16_3 .cate_layout_left,
	html[lang="en"] .cate_layout_16_3 .cate_layout_left {
		width: auto;
	}

}

@media screen and (min-width: 768px) and (max-width: 1119px) {

	.cate_layout_16_3 {
		margin-top: 0;
	}

}

/* -----------------
	誕生のお祝い
----------------- */

.entry_birth .entry_title_header .inner {
	align-items: inherit;
	width: auto;
}

.entry_birth .entry_title_header_box {
	padding: 0;
	background: rgba(0,0,0,0.3);
	border-right: 1px solid #d3a81f;
	width: 50%;
}

.entry_birth .entry_title_header_box div {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	padding: 0 0 0 5px;
	height: 100%;
	position: relative;
}

.entry_birth .entry_title_header_box div::before {
	position: absolute;
	content: '';
	right: 5px;
	top: 0;
	width: 1px;
	height: 100%;
	background: #d11919;
}

.entry_birth .entry_title_header_box div::after {
	position: absolute;
	content: '';
	right: -25px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 50px;
	height: 53px;
	background: url(../images/birth/img1.png) no-repeat 0 0 / 50px auto;
}

html[lang="zh-hans"] .entry_birth .entry_title_header_box,
html[lang="zh-hant"] .entry_birth .entry_title_header_box,
html[lang="ko"] .entry_birth .entry_title_header_box,
html[lang="en"] .entry_birth .entry_title_header_box {
	width: auto;
}

html[lang="zh-hans"] .entry_birth .entry_title_header_box div,
html[lang="zh-hant"] .entry_birth .entry_title_header_box div,
html[lang="ko"] .entry_birth .entry_title_header_box div,
html[lang="en"] .entry_birth .entry_title_header_box div {
	flex-direction: column;
	justify-content: center;
}

@media screen and (min-width: 768px) {

	.category_main > .inner,
	.entry_main > .inner {
		margin: 0 auto;
		width: min(95%,1200px);
	}

	.entry_birth .entry_title_header .inner {
		width: min(95%, 1200px);
	}

	.entry_birth .entry_title_header_box {
		width: auto;
	}

	.entry_birth .entry_title_header_box::before {
		background: rgba(0,0,0,0.3);
	}

	.entry_birth .entry_title_header_box div {
		padding: 0 135px 0 15px;
		justify-content: inherit;
	}

}

.entry_birth .entry_title_header_box h1 {
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.3;
	letter-spacing: 0.05em;
	color: #fff;
	font-size:3.0rem;
	font-weight: 300;
	margin: 0 50px 0 15px;
	padding: 0;
}

.entry_birth .entry_title_header_box p {
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.3;
	letter-spacing: 0.05em;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 300;
	margin: 0 0 0 15px;
	padding: 30px 0 0;
}

.entry_birth .entry_title_header_box p::after {
	width: 1px;
	height: 20px;
	left: 0;
	right: 0;
	top: 0;
	bottom: auto;
	margin: auto;
	background: #fff;
}


html[lang="zh-hans"] .entry_birth .entry_title_header_box h1,
html[lang="zh-hant"] .entry_birth .entry_title_header_box h1,
html[lang="ko"] .entry_birth .entry_title_header_box h1,
html[lang="en"] .entry_birth .entry_title_header_box h1 {
	writing-mode: inherit;
	text-orientation: inherit;
	order: 1;
}

html[lang="zh-hans"] .entry_birth .entry_title_header_box p,
html[lang="zh-hant"] .entry_birth .entry_title_header_box p,
html[lang="ko"] .entry_birth .entry_title_header_box p,
html[lang="en"] .entry_birth .entry_title_header_box p {
	writing-mode: inherit;
	text-orientation: inherit;
	order: 2;
	padding-top: 10px;
	margin: 0;
}

html[lang="zh-hans"] .entry_birth .entry_title_header_box p::after,
html[lang="zh-hant"] .entry_birth .entry_title_header_box p::after,
html[lang="ko"] .entry_birth .entry_title_header_box p::after,
html[lang="en"] .entry_birth .entry_title_header_box p::after {
	display: none;
}

@media screen and (min-width: 768px) {

	.entry_birth .entry_title_header_box h1 {
		font-size: 4.2rem;
		margin: 0 0 0 30px;
	}

	.entry_birth .entry_title_header_box p {
		font-size: 2.6rem;
		margin: 0 0 0 18px;
	}

}

.entry_birth .entry_main {
	background: url(../images/birth/img4_sp.png) no-repeat 0 0 / 115px auto;
}

.entry_birth .inner {
	margin: 0 20px;
}

.birth_column1 {
	padding: 0 0 20px;
	background: url(../images/birth/img5_sp.png) no-repeat right bottom / 140px auto;
}

.birth_column1 ul {
}

.birth_column1 li {
	margin: 0 0 50px;
}

.birth_column1 li h3 {
	margin: 25px 0 20px;
	color: #d11919;
	font-size: 1.8rem;
}

.birth_column1 li p {
	font-size: 1.6rem;
}

@media screen and (min-width: 768px) {

	.entry_birth .entry_main {
		background: url(../images/birth/img4_pc.png) no-repeat 0 0 / 427px auto;
	}

	.entry_birth .inner {
		margin: 0 auto;
		width: min(95%,1200px);
	}

	.birth_column1 {
		padding: 0 0 170px;
		background: url(../images/birth/img5_pc.png) no-repeat right bottom / 582px auto;
	}

	.birth_column1 ul {
		display: flex;
		gap: 90px;
		justify-content: center;
	}

	.birth_column1 li {
		margin: 0;
		width: 33.3333%;
	}

	.birth_column1 li:nth-child(2) {
		margin-top: 100px;
	}

	.birth_column1 li:nth-child(3) {
		margin-top: 30px;
	}

	.birth_column1 li h3 {
		margin: 30px 0 25px;
		font-size: 2.2rem;
	}

}

.birth_column2 {
	margin: 0 0 10px;
}

.birth_column2 li {
	margin: 0 0 10px;
}

.birth_column2 li a {
	color: #fff;
	display: block;
	padding: 130px 20px 50px;
	position: relative;
}

.birth_column2 li a:after {
	position: absolute;
	content: '';
    display: block;
	left: 0;
	right: 0;
	bottom: 25px;
	margin: auto;
    width: 20px;
    height: 20px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    transform: rotate(135deg);
}

.birth_column2_okuizome {
	background: url(../images/birth/pic4_sp.jpg) no-repeat center center / cover;
}

.birth_column2_first {
	background: url(../images/birth/pic5_sp.jpg) no-repeat center center / cover;
}

.birth_column2 li h2 {
	margin: 0 0 15px;
	padding: 0 40px 0 0;
	font-size: 2.0rem;
	position: relative;
	display: inline-block;
}

.birth_column2 li h2::after {
	position: absolute;
	content: '';
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 40px;
	height: 1px;
	background: #fff;
}

.birth_column2 li h3 {
	margin: 0 0 20px;
	font-size: 1.4rem;
}

.birth_column2 li p {
	font-size: 1.6rem;
	line-height: 1.6;
}

@media screen and (min-width: 768px) {

	.birth_column2 {
		margin: 0 50px 180px;
	}

	.birth_column2 ul {
		display: flex;
		justify-content: center;
		gap: 20px;
	}

	.birth_column2 li {
		margin: 0;
		width: 50%;
	}

	.birth_column2 li a {
		padding: 0 6%;
		height: 400px;
		width: 100%;
		display: flex;
		align-items: center;
	}

	.birth_column2 li a:after {
		display: none;
	}

	.birth_column2 li div {
		max-width: 410px;
	}

	.birth_column2_okuizome {
		background: url(../images/birth/pic4_pc.jpg) no-repeat center center / 840px auto;
	}

	.birth_column2_first {
		background: url(../images/birth/pic5_pc.jpg) no-repeat center center / 840px auto;
	}

	.birth_column2 li h2 {
		margin: 0 0 20px;
		padding: 0 50px 0 0;
		font-size: 3.0rem;
	}

	.birth_column2 li h3 {
		margin: 0 0 40px;
		font-size: 1.6rem;
	}

}

.birth_column3 {
	margin: 0;
	border-top: 10px solid #a38f3f;
}

.birth_column3_box {
	padding: 35px 20px 35px 80px;
	background: #f5f4ee;
	position: relative;
}

.birth_column3_box::before {
	position: absolute;
	content: '';
	top: 0;
	left: 35px;
	width: 1px;
	height: 100%;
	background: #caaa39;
}

.birth_column3_box::after {
	position: absolute;
	content: '';
	top: 0;
	left: 39px;
	width: 1px;
	height: 100%;
	background: #d11919;
}

.birth_column3_box h2 {
	margin: 0 0 10px -70px;
	padding: 0 0 0 70px;
	line-height: 52px;
	color: #c24444;
	font-size: 3.0rem;
	position: relative;
	z-index: 2;
	background: #f5f4ee url(../images/birth/img1.png) no-repeat 0 0 / auto 52px;
}

.birth_column3_box p {
	font-size: 1.6rem;
}

@media screen and (min-width: 768px) {

	.birth_column3 {
		height: 740px;
		display: flex;
		align-items: center;
		background: url(../images/birth/pic6_pc.jpg) no-repeat center center / 1800px auto;
	}

	.birth_column3_box {
		padding: 55px 60px 60px 130px;
		width: 570px;
	}

	.birth_column3_box::before {
		position: absolute;
		content: '';
		top: 0;
		left: 83px;
		width: 1px;
		height: 100%;
		background: #caaa39;
	}

	.birth_column3_box::after {
		position: absolute;
		content: '';
		top: 0;
		left: 87px;
		width: 1px;
		height: 100%;
		background: #d11919;
	}

	.birth_column3_box h2 {
		margin: 0 0 20px -70px;
		padding: 0 0 0 70px;
		line-height: 52px;
		color: #c24444;
		font-size: 4.0rem;
		position: relative;
		z-index: 2;
		background: #f5f4ee url(../images/birth/img1.png) no-repeat 0 0 / auto 52px;
	}

	.birth_column3_box p {
		line-height: 1.7;
	}

	.birth_column3 figure {
		display: none;
	}

}

.birth_column4 {
	margin: 0 0 60px;
	background: url(../images/birth/img2.png) no-repeat right 80px / 210px auto;
}

.birth_column4 .cate_main_lead {
	margin: 0 -20px;
	padding: 40px 0 120px;
}

.birth_column4_1column {
	display: flex;
	flex-direction: column;
}

.birth_column4_text {
	margin: 0;
	order: 3;
}

.birth_column4_text p {
	font-size: 1.6rem;
	line-height: 1.6;
}

.column7_text p.price,
.birth_column4_text p.price {
	margin: 15px 0 0;
}

.column7_text p.price span,
.birth_column4_text p.price span {
	font-size: 2.4rem;
	font-weight: 500;
}

@media screen and (min-width: 768px) {

	.birth_column4 {
		margin: 0 0 100px;
		background: url(../images/birth/img2.png) no-repeat 0 0 / 610px auto;
	}

	.birth_column4 .cate_main_lead {
		margin: 0;
		padding: 80px 0 90px;
	}

	.birth_column4_1column {
		display: flex;
		flex-direction: inherit;
	}

	.birth_column4_text {
		margin: 460px 6% 0 0;
		width: 31%;
		order: 1;
	}

	.column7_text p.price,
	.birth_column4_text p.price {
		margin: 40px 0 0;
	}

}

.birth_column4_img {
	margin: 0 -10px 0 0;
	position: relative;
	order: 2;
}

.birth_column4_img figure {
	margin: 20px 10px 25px 0;
	position: relative;
	z-index: 1;
}

.birth_column4_img h2 {
	position: absolute;
	top: 0;
	right: 0;
	padding: 15px 18px;
	writing-mode: vertical-rl;
	text-orientation: upright;
	font-size: 2.0rem;
	letter-spacing: 0.05em;
	color: #fff;
	font-weight: 500;
	-webkit-text-stroke: 4px #8a7329;
	paint-order: stroke;
	background: url(../images/birth/ptn_title_back.png) 0 0 / 20px auto;
	z-index: 2;
}

.birth_column4_img h2 span {
	padding: 15px 0 0;
	font-size: 1.6rem;
}

.birth_column4_1column h3 {
	margin: 0 0 15px;
	line-height: 1.4;
	font-size: 1.6rem;
	color: #8a7329;
	letter-spacing: 0.05em;
	order: 1;
}

html[lang="zh-hans"] .birth_column4_img h2,
html[lang="zh-hant"] .birth_column4_img h2,
html[lang="ko"] .birth_column4_img h2,
html[lang="en"] .birth_column4_img h2 {
	writing-mode: inherit;
	text-orientation: inherit;
	width: 90%;
}

@media screen and (min-width: 768px) {

	.birth_column4_img {
		margin: 50px 6% 0 0;
		width: 56%;
		flex-shrink: 0;
		order: 2;
	}

	.birth_column4_img figure {
		margin: 35px 30px 0 0;
	}

	.birth_column4_img h2 {
		padding: 35px 22px;
		font-size: 2.4rem;
	}

	.birth_column4_img h2 span {
		font-size: 1.8rem;
	}

	.birth_column4_1column h3 {
		margin: 0;
		writing-mode: vertical-rl;
		text-orientation: upright;
		font-size: 2.4rem;
		order: 3;
	}

}

.birth_column5 {
	margin: 0 0 80px;
	text-align: center;
}

.birth_column5 ul {
	margin: 0 0 30px;
	display: grid;
	gap: 40px 10%;
	grid-template-columns: repeat(2,1fr);
	text-align: left;
}

.birth_column5 li h4 {
	margin: 10px 0 12px;
	padding: 0 0 12px;
	font-size: 2.0rem;
	border-bottom: 1px solid #c24444;
	position: relative;
}

.birth_column5 li h4::after {
	position: absolute;
	content: '';
	left: 0;
	bottom: 3px;
	width: 100%;
	height: 1px;
	background: #caaa39;
}

.birth_column5 li p {
	font-size: 1.6rem;
}

@media screen and (min-width: 768px) {

	.birth_column5 {
		margin: 0 0 180px;
	}

	.birth_column5 ul {
		margin: 0 0 70px;
		gap: 80px 10%;
		grid-template-columns: repeat(3,1fr);
	}

	.birth_column5 li h4 {
		margin: 25px 0 25px;
		padding: 0 0 20px;
		font-size: 2.0rem;
	}

	.birth_column5 li p {
		line-height: 1.6;
	}

}

.entry_birth .btn_link {
	display: inline-block;
}

.entry_birth .btn_link a {
	padding: 14px 20px 17px 20px;
	border: 1px solid #a1874a;
	border-radius: 5px;
	display: flex;
	align-items: center;
}

.icon_arrow_down {
	margin-left: 10px;
	display: inline-block;
	width: 13px;
	height: 8px;
	background: url(../images/common/ico_link_m_g.svg) no-repeat right center / 13px auto;
	transform: rotate(90deg);
}

.birth_column6 {
}

.birth_column6 .birth_column3_box {
	padding: 35px 20px 35px 80px;
	width: auto;
}

.birth_column6 h3 {
	margin: 0 0 25px;
	font-size: 2.0rem;
	color: #c24444;
}

@media screen and (min-width: 768px) {

	.birth_column6 {
		background: url(../images/birth/pic14_pc.jpg) no-repeat center center / 1800px auto;
	}

	.birth_column6 .birth_column3_box {
		padding: 60px 60px 65px 130px;
		width: auto;
	}

	.birth_column6 h3 {
		margin: 0 0 35px;
		font-size: 2.4rem;
		color: #c24444;
	}

	.birth_column6 figure {
		display: none;
	}

}

.birth_column7 {
	padding: 0 0 130px;
	text-align: center;
	position: relative;
}

.birth_column7 .cate_main_lead {
	padding: 40px 0;
}

.birth_column7::before {
	position: absolute;
	content: '';
	right: 0;
	bottom: 0;
	height: 40px;
	width: 80%;
	background: url(../images/birth/band_red.png) 0 0 / 1050px auto;
}

.birth_column7::after {
	position: absolute;
	content: '';
	right: 0;
	bottom: 18px;
	height: 2px;
	width: 80%;
	background: #fff;
}

@media screen and (min-width: 768px) {

	.birth_column7 {
		padding: 0 0 220px;
	}

	.birth_column7 .cate_main_lead {
		padding: 80px 0 90px;
	}

}

.birth_column7 ul {
	margin: 30px 0 0;
	text-align: left;
}

.birth_column7 li {
	margin: 0 0 70px;
}

.column7_img {
	margin: 0 -10px 0 0;
	position: relative;
}

.column7_img figure {
	margin: 0 10px 35px 0;
}

.column7_img h3 {
	position: absolute;
	top: -20px;
	right: 0;
	padding: 15px 15px;
	writing-mode: vertical-rl;
	text-orientation: upright;
	font-size: 2.0rem;
	letter-spacing: 0.05em;
	color: #fff;
	font-weight: 500;
	-webkit-text-stroke: 4px #8a7329;
	paint-order: stroke;
	background: url(../images/birth/ptn_title_back.png) 0 0 / 20px auto;
}

.column7_img h3 span {
	padding: 15px 0 0;
	font-size: 1.6rem;
}

@media screen and (min-width: 768px) {

	.birth_column7 ul {
		margin: 0;
	}

	.birth_column7 li {
		margin: 0 0 100px;
		display: flex;
		align-items: center;
	}

	.column7_img {
		margin: 0 5.5% 0 0;
		width: 56.5%;
		position: relative;
	}

	.column7_img figure {
		margin: 30px 30px 0 0;
	}

	.column7_img h3 {
		top: 0;
		padding: 35px 22px;
		font-size: 2.4rem;
	}

	.column7_img h3 span {
		font-size: 1.8rem;
	}

}

.column7_text h4 {
	margin: 0 0 30px;
	font-size: 1.8rem;
}

.column7_text p {
	margin: 0 0 10px;
	font-size: 1.6rem;
}

.birth_column p.note {
	margin: 0 0 4px;
	font-size: 1.2rem;
	padding-left: 1em;
	text-indent: -1em;
}

@media screen and (min-width: 768px) {

	.column7_text {
		width: 38%;
		z-index: 2;
	}

	.column7_text h4 {
		margin: 0 0 45px;
		font-size: 2.0rem;
	}

	.column7_text p {
		line-height: 1.6;
	}

	.birth_column p.note {
		font-size: 1.4rem;
	}

	.column7_text figure {
		display: none;
	}

}

.birth_column7 .column7_img .birth_pic15_28 {
	margin-bottom: 110px;
	position: relative;
}

.birth_column7 .column7_img .birth_pic28 {
	position: absolute;
	bottom: -80px;
	right: -20px;
	width: calc(40% + 20px);
}

.birth_column7 .column7_img .birth_pic18 {
	display: none;
}

@media screen and (min-width: 768px) {

	.birth_column7 li:nth-child(even) .column7_img {
		margin: 0 0 0 5.5%;
		order: 2;
	}

	.birth_column7 .column7_img .birth_pic15_28 {
		margin-bottom: 155px;
	}

	.birth_column7 .column7_img .birth_pic28 {
		bottom: -150px;
		right: -190px;
		width: 280px;
	}

	.birth_column7 .column7_img .birth_pic18 {
		display: block;
	}

	.birth_column7 li:nth-child(even) .column7_img h3 {
		left: 0;
		right: auto;
	}

	.birth_column7 li:nth-child(even) .column7_img figure {
		margin: 30px 0 0 30px;
	}

	.birth_column7 li:nth-child(even) .column7_text {
		order: 1;
	}

}

.birth_column7 .column7_text .birth_pic18 {
	margin: 30px 35% 0 0;
	position: relative;
}

.birth_column7 .column7_text .birth_pic18::before {
	position: absolute;
	content: '';
	width: 40px;
	height: 40px;
	bottom: -20px;
	right: -20px;
	background: #caaa39;
}

.birth_column7 .column7_text .birth_pic18::after {
	position: absolute;
	content: '';
	width: 20px;
	height: 20px;
	bottom: 20px;
	right: -40px;
	background: #caaa39;
}

@media screen and (min-width: 768px) {

	.birth_column7 li:nth-child(1),
	.birth_column7 li:nth-child(3) {
		margin-bottom: 170px;
		align-items: flex-start;
	}

	.birth_column7 li:nth-child(1) .column7_text,
	.birth_column7 li:nth-child(3) .column7_text {
		margin-top: 30px;
	}

	.birth_column7 li:nth-child(3) .column7_img figure {
		position: relative;
	}

	.birth_column7 .birth_pic18 {
		position: absolute;
		width: 55%;
		bottom: -95px;
		right: -58%;
		margin-left: 20px;
	}

	.birth_column7 li:nth-child(3) .birth_pic18::before {
		position: absolute;
		content: '';
		width: 40px;
		height: 40px;
		bottom: -20px;
		right: -20px;
		background: #caaa39;
	}

	.birth_column7 li:nth-child(3) .birth_pic18::after {
		position: absolute;
		content: '';
		width: 20px;
		height: 20px;
		bottom: 20px;
		right: -40px;
		background: #caaa39;
	}

}

.birth_column8 {
	margin: -55px 0 70px;
	padding: 265px 0 0;
	position: relative;
	background: url(../images/birth/img3.png) no-repeat right 55px / 280px auto;
}

.birth_column8::before {
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	height: 40px;
	width: 80%;
	background: url(../images/birth/band_gold.png) 0 0 / 1050px auto;
}

.birth_column8::after {
	position: absolute;
	content: '';
	left: 0;
	top: 18px;
	height: 2px;
	width: 80%;
	background: #fff;
}

.birth_column8 h2,
.birth_column9 h2 {
	margin: 0 0 40px;
	font-size: 2.2rem;
	line-height: 1.3;
	position: relative;
	display: inline-block;
}

.birth_column8 h2::before,
.birth_column9 h2::before {
	position: absolute;
	content: '';
	height: 1px;
	top: -4px;
	bottom: 0;
	left: -101%;
	width: 100%;
	margin: auto;
	background: #caaa39;
}

.birth_column8 h2::after,
.birth_column9 h2::after {
	position: absolute;
	content: '';
	height: 1px;
	top: 0;
	bottom: -4px;
	left: -101%;
	width: 100%;
	margin: auto;
	background: #d11919;
}

@media screen and (min-width: 768px) {

	.birth_column8 {
		margin: -55px 0 160px;
		padding: 220px 0 0;
		background: url(../images/birth/img3.png) no-repeat right 55px / 613px auto;
	}

	.birth_column8::before {
		width: 58%;
	}

	.birth_column8::after {
		width: 58%;
	}

	.birth_column8 h2,
	.birth_column9 h2 {
		margin: 0 0 60px;
		font-size: 3.0rem;
	}

	.birth_column8 h2::before,
	.birth_column9 h2::before {
		left: -104%;
	}

	.birth_column8 h2::after,
	.birth_column9 h2::after {
		left: -104%;
	}

}

.birth_column8 ul {
	margin: 50px 0 0 -10px;
}

.birth_column8 li {
	margin: 0 0 50px;
	position: relative;
}

.birth_column8 li p.tag {
	padding: 20px 15px;
	writing-mode: vertical-rl;
	text-orientation: upright;
	font-size: 1.6rem;
	letter-spacing: 0.05em;
	color: #fff;
	position: absolute;
	z-index: 2;
}

.birth_column8 li p.tag::before,
.birth_column8 li p.tag::after {
	position: absolute;
	content: '';
	bottom: -10px;
	right: -10px;
	width: 20px;
	height: 20px;
	background: #caaa39;
}

.birth_column8 li p.tag::after {
	bottom: -20px;
	right: 10px;
	width: 10px;
	height: 10px;
}

.birth_column8 li p.tag_child {
	background: url(../images/common/ptn_child_bg.png) 0 0 / 60px auto;
}

.birth_column8 li p.tag_adult {
	background: url(../images/common/ptn_seasonal_bnr.png) 0 0 / 60px auto;
}

@media screen and (min-width: 768px) {

	.birth_column8 ul {
		margin: 100px 0 0;
		display: flex;
		flex-wrap: wrap;
		gap: 100px 100px;
	}

	.birth_column8 li {
		margin: 0;
		padding: 0 0 0 10px;
		width: calc(50% - 50px);
	}

	.birth_column8 li p.tag {
		padding: 30px 18px;
		font-size: 1.8rem;
	}

	.birth_column8 li p.tag::before,
	.birth_column8 li p.tag::after {
		right: auto;
		left: -10px;
	}

	.birth_column8 li p.tag::after {
		right: auto;
		left: 10px;
	}

}

.birth_column8 li figure {
	margin: 0 0 0 10px;
	padding: 20px 0 0;
	position: relative;
}

.birth_column8 li .column8_text {
	margin: 30px 0 0 10px;
}

.birth_column8 li h3 {
	margin: 0 0 30px;
	padding: 0 0 15px;
	font-size: 1.6rem;
	border-bottom: 1px solid #eae3d9;
	position: relative;
}

.birth_column8 li h3::after {
	position: absolute;
	content: '';
	left: 0;
	bottom: -1px;
	width: 50px;
	height: 1px;
	background: #caaa39;
}

.birth_column8 li h3 span {
	padding-right: 15px;
	font-size: 2.0rem;
}

.birth_column8 li p.price {
	margin: 0 0 30px;
	font-size: 1.6rem;
}

.birth_column8 li p.price span {
	font-size: 2.0rem;
}

.birth_column8 li p {
	font-size: 1.6rem;
}

@media screen and (min-width: 768px) {

	.birth_column8 li figure {
		margin: 30px 0 0 30px;
		padding: 0;
	}

	.birth_column8 li .column8_text {
		margin: 40px 0 0 30px;
	}

	.birth_column8 li h3 {
		margin: 0 0 40px;
		font-size: 1.8rem;
	}

	.birth_column8 li h3 span {
		font-size: 2.4rem;
	}

	.birth_column8 li p.price {
		margin: 0 0 40px;
	}

	.birth_column8 li p.price span {
		font-size: 2.4rem;
	}

}

.birth_column8 li .birth_pic22_23 {
	margin-bottom: 60px;
}

.birth_pic23 {
	width: 53%;
	position: relative;
	float: right;
	margin: -40px -20px 0 0;
}

.birth_pic23::before,
.birth_pic23::after {
	position: absolute;
	content: '';
	bottom: -20px;
	left: -20px;
	width: 20px;
	height: 20px;
	background: #caaa39;
}

.birth_pic23::after {
	bottom: 0;
	left: -30px;
	width: 10px;
	height: 10px;
}

@media screen and (min-width: 768px) {

	.birth_column8 li .birth_pic22_23 {
		margin-bottom: 60px;
	}

	.birth_pic22 {
		width: 90%;
	}

	.birth_pic23 {
		margin: -80px 0 0;
	}

}

.birth_column8 .column8_2column .birth_pic18 {
	padding: 0;
	width: 70%;
	position: relative;
}

.birth_column8 .column8_2column .birth_pic18::before,
.birth_column8 .column8_2column .birth_pic18::after {
	position: absolute;
	content: '';
	bottom: -20px;
	right: -20px;
	width: 40px;
	height: 40px;
	background: #caaa39;
}

.birth_column8 .column8_2column .birth_pic18::after {
	bottom: 20px;
	right: -40px;
	width: 20px;
	height: 20px;
}

.birth_column8 .column8_2column .column8_text {
	margin-top: 50px;
}

@media screen and (min-width: 768px) {

	.birth_column8 .column8_2column {
		width: 100%;
		display: flex;
	}

	.birth_column8 .column8_2column .column_left {
		margin: 0 3% 0 0;
		padding: 30px 0 0;
		width: 46%;
	}

	.birth_column8 .column8_2column .column_right {
		margin: 0;
		width: 51%;
	}

	.birth_column8 .column8_2column .birth_pic18 {
		margin: 0 0 90px;
		width: 60%;
		position: relative;
	}

	.birth_column8 .column8_2column .column8_text {
		margin-top: 40px;
		margin-left: 100px;
	}

}

.birth_column8 dl {
	margin: 30px 0 15px;
	padding: 0 0 15px;
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #eae3d9;
	position: relative;
}

.birth_column8 dl::after {
	position: absolute;
	content: '';
	left: 0;
	bottom: -1px;
	width: 20px;
	height: 1px;
	background: #c24444;
}

.birth_price_box {
	margin: 30px 0 0;
}

.birth_column8 dt {
	font-size: 1.8rem;
}

.birth_column8 dd {
	font-size: 1.4rem;
}

.birth_column8 dd span {
	font-size: 2.0rem;
}

@media screen and (min-width: 768px) {

	.birth_column8 dl {
		margin: 30px 0;
	}

	.birth_price_box {
		margin: 50px 0 0;
	}

	.birth_column8 dt {
		font-size: 2.0rem;
	}

	.birth_column8 dd {
		font-size: 1.6rem;
	}

	.birth_column8 dd span {
		font-size: 2.0rem;
	}

}

.birth_column9 {
	margin: 0 0 150px;
}

.column9_2column {
	margin: 40px -20px 0;
}

.column9_2column .column_left {
	margin: 0 0 10px;
}

.column9_2column .column_right {
	margin: 0 0 0 auto;
	width: 55%;
}

.birth_pic27 {
	margin: -80px 0 0 20px;
	width: 65%;
	float: left;
}

@media screen and (min-width: 768px) {

	.birth_column9 {
		margin: 0 0 260px;
	}

	.column9_2column {
		margin: 90px 0 0;
		display: flex;
		position: relative;
	}

	.column9_2column .column_left {
		margin: 0 1% 0 0;
		width: 63%;
		flex-shrink: 0;
	}

	.column9_2column .column_right {
		margin: 230px 0 0;
		width: 46%;
	}

	.birth_pic27 {
		position: absolute;
		left: 50px;
		bottom: -135px;
		margin: 0;
		float: none;
		width: 440px;
	}

}


/* ------------------------
	結納・結婚記念日
------------------------ */

.cate_layout_15_1 {
	margin: 0 0 60px;
}

.cate_layout_15 .inner {
	margin: 0 20px;
}

.cate_layout_15 .cate_layout_left {
}

.cate_layout_15 h3 {
	margin: 0 0 40px;
	font-size: 2.0rem;
	color: #d11919;
	position: relative;
	display: flex;
	align-items: center;
	writing-mode: inherit;
	text-orientation: inherit;
}

.cate_layout_15 h3 .icon {
	margin: 0 12px 0 0;
	position: relative;
	display: block;
	width: 40px;
	height: 30px;
	flex-shrink: 0;
}

.cate_layout_15 h3 .icon span {
	display: block;
	position: absolute;
	content: '';
	left: 0;
	top: 10px;
	width: 7px;
	height: 7px;
	background: #caaa39;
}

.cate_layout_15 h3 .icon::before {
	position: absolute;
	content: '';
	left: 10px;
	top: 20px;
	width: 10px;
	height: 10px;
	background: #d11919;
}

.cate_layout_15 h3 .icon::after {
	position: absolute;
	content: '';
	left: 20px;
	top: 0;
	width: 20px;
	height: 20px;
	background: #caaa39;
}

@media screen and (min-width: 768px) {

	.cate_layout_15_1 {
		margin: 0 0 250px;
	}

	.cate_layout_15 .inner {
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
	}

	.cate_layout_15 .cate_layout_left {
		max-width: 480px;
		width: 40%;
	}

	.cate_layout_15 h3 {
		margin: 0 0 35px;
		font-size: 2.4rem;
	}

}

.cate_layout_15 p {
	font-size: 1.6rem;
	writing-mode: inherit;
	text-orientation: inherit;
}

.cate_layout_15 ul {
	margin: 35px 0 0;
	width: 100%;
}

.marriage_pic1_2 {
	margin: 20px 0 0;
	position: relative;
}

.marriage_pic2 {
	margin: 5px 0 0;
	width: 56%;
}

.marriage_pic2::after {
	position: absolute;
	content: '';
	left: 50%;
	bottom: 0;
	width: 40%;
	height: 160px;
	background: url(../images/marriage/img1.png) no-repeat 0 bottom / 100% auto;
}

@media screen and (min-width: 768px) {

	.cate_layout_15 .cate_layout_right {
		max-width: 600px;
		width: 50%;
	}

	.marriage_pic1_2 {
		margin: 0;
	}

	img.marriage_pic1 {
		max-width: 645px;
		width: 107.5%;
	}

	.marriage_pic2 {
		margin: 0;
		position: absolute;
		left: -51.7%;
		bottom: -11%;
		max-width: 300px;
		width: 50%;
	}

	.marriage_pic2::after {
		left: -54%;
		top: 40%;
		bottom: auto;
		width: 220px;
		height: 225px;
		background: url(../images/marriage/img1.png) no-repeat 0 0 / cover;
	}

}

@media screen and (min-width: 768px) and (max-width: 1299px) {

	img.marriage_pic1 {
		width: 100%;
	}

}

@media screen and (min-width: 768px) and (max-width: 1029px) {

	.marriage_pic2 {
		left: -13%;
		bottom: -24%;
	}

}

.cate_layout_15_2 .cate_layout_left {
	margin: 0 0 30px;
}

.cate_layout_15_2 .cate_layout_right {
	width: calc(100% - 20px);
}

.cate_layout_15_2 .marriage_pic3 {
	position: relative;
}

.cate_layout_15_2 .marriage_pic3::after {
	position: absolute;
	content: '';
	right: -20px;
	bottom: -20px;
	width: 30px;
	height: 30px;
	background: #caaa39;
}

@media screen and (min-width: 768px) {

	.cate_layout_15_2 {
		margin: 0 0 10px;
	}

	.cate_layout_15_2 + .cate_layout_15_3 .inner,
	.cate_layout_15_2 .inner {
		align-items: center;
	}

	.cate_layout_15_2 .cate_layout_left {
		order: 2;
	}

	.cate_layout_15_2 .cate_layout_right {
		order: 1;
		max-width: 645px;
		width: 54%;
	}

}

.entry_marriage .longevity_menu {
	margin-bottom: 100px;
}

.entry_marriage .memorial_menu_mind h3 span::before {
	background-color: #d11919;
}

.entry_marriage .memorial_menu_mind h3 span::after {
	background-color: #caaa39;
}

.entry_marriage .memorial_menu_2colum h4 {
	border-color: #d11919;
}

/* -----------------------------
	木曽路パートナーシップカード
----------------------------- */

.entry_member .entry_title_header_box {
	margin-right: 20px;
}

.intro_column1 {
	padding: 0 20px 30px;
	background: url(../images/member/band_sp.png) no-repeat 0 190px / 100% auto;
}

.intro_column1_left {
	margin: 0 auto;
	display: flex;
	justify-content: center;
	width: 100%;
}

.intro_column1_left > div {
	min-width: 350px;
}

.intro_column1 .card_img1 {
	margin-top: 30px;
	width: 225px;
	float: left;
}

.intro_column1_box {
	margin: 0 20px 0 0;
	padding-top: 110px;
	display: flex;
	justify-content: flex-end;
}

.intro_column1 h2 {
	margin: 0 0 0 2%;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.3;
	letter-spacing: 0.05em;
	font-size: 3.0rem;
}

.intro_column1 h2 em {
	color: #d11919;
}

.intro_column1 h2 span {
	display: block;
	margin-top: 3em;
}

.intro_column1 p {
	margin: 100px 20px 0 0;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 2.4;
	letter-spacing: 0.05em;
	font-size: 1.6rem;
}

.member_img1 {
	clear: both;
}

html[lang="zh-hans"] .intro_column1_box,
html[lang="zh-hant"] .intro_column1_box,
html[lang="ko"] .intro_column1_box,
html[lang="en"] .intro_column1_box {
	flex-direction: column;
	padding: 0;
}

html[lang="zh-hans"] .intro_column1 h2,
html[lang="zh-hant"] .intro_column1 h2,
html[lang="ko"] .intro_column1 h2,
html[lang="en"] .intro_column1 h2 {
	writing-mode: inherit;
	text-orientation: inherit;
	order: 1;
}

html[lang="zh-hans"] .intro_column1 h2 span,
html[lang="zh-hant"] .intro_column1 h2 span,
html[lang="ko"] .intro_column1 h2 span,
html[lang="en"] .intro_column1 h2 span {
	margin-top: 1em;
}

html[lang="zh-hans"] .intro_column1 p,
html[lang="zh-hant"] .intro_column1 p,
html[lang="ko"] .intro_column1 p,
html[lang="en"] .intro_column1 p {
	margin: 30px 0 0;
	writing-mode: inherit;
	text-orientation: inherit;
	order: 2;
}

html[lang="zh-hans"] .intro_column1 .card_img1,
html[lang="zh-hant"] .intro_column1 .card_img1,
html[lang="ko"] .intro_column1 .card_img1,
html[lang="en"] .intro_column1 .card_img1 {
	float: none;
}

@media screen and (min-width: 768px) {

	.entry_member .entry_title_header_box {
		margin-right: 0;
	}

	.member_intro .inner,
	.member_benefit .inner,
	.member_card .inner,
	.member_process .inner {
		margin: 0 auto;
    	width: min(95%,1200px);
	}

	.intro_column1 {
		padding: 100px 0 90px;
		background: url(../images/member/band_pc.png) no-repeat 0 180px / 100% auto;
	}

	.intro_column1 .inner {
		display: flex;
		justify-content: space-between;
	}

	.intro_column1_left {
		margin: 0 auto;
	}

	.intro_column1_left > div {
		display: flex;
		justify-content: space-between;
	}

	.intro_column1 .card_img1 {
		margin: 160px 7% 0 0;
		width: 50%;
		float: none;
		flex-shrink: 0;
	}

	.intro_column1_box {
		margin: 0;
		padding: 0;
		float: none;
		min-width: 300px;
		z-index: 2;
	}

	.intro_column1 h2 {
		font-size: 4.0rem;
	}

	.intro_column1 p {
		margin: 160px 0 0 4%;
	}

	.intro_column1 .member_img1 {
		margin: 65px 0 0 20px;
		max-width: 420px;
		widows: 35%;
	}

}

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

	.intro_column1_left > div {
		flex-direction: column;
	}

	.intro_column1 .card_img1 {
		margin: 60px 0 0 0;
		min-width: 280px;
	}

	.intro_column1_box {
		margin-top: -100px;
	}

}

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

	.intro_column1 .inner {
		display: block;
	}

	.intro_column1_left > div {
		justify-content: center;
	}

	.intro_column1 .card_img1 {
		margin-right: 120px;
		width: auto;
		flex-shrink: 0;
		max-width: 280px;
	}

	.intro_column1_box {
		margin-top: -100px;
	}

	.intro_column1 .member_img1 {
		margin-left: auto;
		margin-right: auto;
	}

}

.intro_column2 {
	margin: 0 20px 50px;
	text-align: center;
}

.intro_column2 h3 {
	margin: 0 0 30px;
	font-size: 2.2rem;
	line-height: 1.6;
	color: #806f13;
}

.intro_column2 p {
	margin: 0 0 10px;
	font-size: 1.6rem;
	line-height: 1.6;
}

.intro_column2 p.note {
	font-size: 1.4rem;
}

@media screen and (min-width: 768px) {

	.intro_column2 {
		margin: 0 0 90px;
	}

	.intro_column2 h3 {
		margin: 0 0 10px;
		font-size: 2.6rem;
		line-height: 1.6;
		color: #806f13;
	}

	.intro_column2 p {
		margin: 0;
		line-height: 1.8;
	}

	.intro_column2 p.note {
		padding: 0 0 0 1em;
		text-indent: -1em;
	}

}

.intro_column3 {
	border: 1px solid #ddd9c1;
	padding: 30px 20px 25px;
	text-align: center;
	background: url(../images/common/ptn_scene_bg.png) 0 0 / 325px auto;
}

.intro_column3 h3 {
	margin: 0 0 30px;
	padding: 0 0 20px;
	font-size: 2.2rem;
	line-height: 1.3;
	position: relative;
}

.intro_column3 h3::before,
.intro_column3 h3::after {
	position: absolute;
	content: '';
	left: 0;
	width: 100%;
	height: 1px;
}

.intro_column3 h3::before {
	bottom: 3px;
	background: #caaa39;
}

.intro_column3 h3::after {
	bottom: 0;
	background: #d11919;
}

@media screen and (min-width: 768px) {

	.intro_column3 {
		padding: 55px 60px;
	}

	.intro_column3 h3 {
		margin: 0 0 50px;
		padding: 0 0 18px;
		font-size: 2.6rem;
		display: inline-block;
	}

	.intro_column3 > div {
		display: flex;
		align-items: center;
	}

}

.intro_column3 .point {
	padding: 5px 0 15px;
	background: #f5f4ee;
	border: 1px solid #e6e3d1;
}

.intro_column3 .point p {
	font-size: 2.0rem;
}

.intro_column3 .point p em {
	padding: 0 5px 0 0;
	font-size: 5.0rem;
	color: #d11919;
	display: inline-block;
}

.intro_column3 .point p .equal {
	margin: 0 40px 0 35px;
	text-indent: -9999px;
	position: relative;
	height: 8px;
	width: 25px;
	display: inline-block;
}

.intro_column3 .point p .equal::before,
.intro_column3 .point p .equal::after {
	position: absolute;
	content: '';
	width: 25px;
	height: 2px;
	left: 0;
	margin: auto;
	background: #333;
}

.intro_column3 .point p .equal::before {
	top: 0;
}

.intro_column3 .point p .equal::after {
	bottom: 0;
}

@media screen and (min-width: 768px) {

	.intro_column3 .point {
		padding: 5px 0 15px;
		width: 50%;
	}

}

.intro_column3 ul {
	margin: 15px 0 0;
}

.intro_column3 li {
	margin: 7px 0;
	padding: 0 0 0 15px;
	font-size: 1.6rem;
	text-align: left;
	position: relative;
}

.intro_column3 li::before {
	position: absolute;
	content: '';
	left: 0;
	top: 7px;
	width: 10px;
	height: 10px;
	background: #806f13;
}

@media screen and (min-width: 768px) {

	.intro_column3 ul {
		margin: 0 0 0 50px;
	}

	.intro_column3 li {
		margin: 5px 0;
	}

	.intro_column3 li::before {
		top: 0;
		bottom: 0;
		margin: auto;
	}

}

.member_benefit {
	margin: 60px 20px;
	text-align: center;
}

.member_benefit h2 {
	margin: 0 0 35px;
	padding: 50px 45px;
	display: inline-block;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.3;
	letter-spacing: 0.05em;
	font-size: 2.4rem;
	background: url(../images/member/corner_left.png) no-repeat left bottom / 80px auto,
				url(../images/member/corner_right.png) no-repeat right top / 80px auto;
}

.member_benefit p {
	font-size: 1.6rem;
}

.member_benefit_list {
	margin: 40px 0 30px;
}

.member_benefit_list li {
	margin: 0 0 20px;
	padding: 30px;
	font-size: 1.8rem;
	line-height: 1.5;
	background: url(../images/member/box_back.png) no-repeat 0 0 / cover;
	position: relative;
}

.member_benefit_list li::before {
	position: absolute;
	content: '';
	left: 0;
	bottom: 0;
	width: 100%;
	height: calc(100% - 20px);
	background: url(../images/member/box_back_bottom.png) no-repeat 0 bottom / cover;
}

.member_benefit_list li > div {
	position: relative;
	z-index: 2;
}

.member_benefit_list li em {
	color: #c20e23;
}

.member_benefit_list li span {
	font-size: 1.6rem;
}

.member_benefit p strong {
	font-size: 1.8rem;
	font-weight: 400;
	color: #c20e23;
}

html[lang="zh-hans"] .member_benefit h2,
html[lang="zh-hant"] .member_benefit h2,
html[lang="ko"] .member_benefit h2,
html[lang="en"] .member_benefit h2 {
	writing-mode: inherit;
	text-orientation: inherit;
}

@media screen and (min-width: 768px) {

	.member_benefit {
		margin: 100px 0 80px;
	}

	.member_benefit h2 {
		margin: 0 0 80px;
		padding: 50px 45px;
		font-size: 3.0rem;
	}

	.member_benefit_list {
		margin: 50px 0;
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap: 40px;
	}

	.member_benefit_list li {
		width: 270px;
		height: 270px;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.member_benefit_list li::before {
		display: none;
	}

	.member_benefit p strong {
		font-size: 2.0rem;
	}

}

.member_card {
	padding: 50px 20px 30px;
	background: #efede1;
}

.member_card .inner {
	text-align: center;
}

.member_card h2 {
	margin: 0 0 65px;
	padding: 0 0 20px;
	line-height: 1.4;
	font-size: 2.2rem;
	border-bottom: 1px solid #eae3d9;
	position: relative;
	text-align: left;
}

.member_card h2::after {
	position: absolute;
	content: '';
	bottom: 2px;
	height: 2px;
	width: 50px;
	background: #d11919;
	left: 0;
}

.member_card_list {
	margin: 0 0 30px;
	text-align: left;
}

.member_card_list li {
	margin: 0 0 50px;
	padding: 0 30px 30px;
	background: #f5f4ee;
}

.member_card_list li:last-child {
	margin-bottom: 30px;
}

@media screen and (min-width: 768px) {

	.member_card {
		padding: 80px 0;
	}

	.member_card h2 {
		margin: 0 0 75px;
		padding: 0 0 25px;
		font-size: 2.4rem;
	}

	.member_card_list {
		margin-bottom: 50px;
		display: flex;
		justify-content: center;
		gap: 40px;
	}

	.member_card_list li {
		margin: 0;
		padding: 0 40px 35px;
		width: 33.3333%;
	}

	.member_card_list li:last-child {
		margin-bottom: 0;
	}

}


.member_card_list li h3 {
	margin: 0 0 30px;
	text-align: center;
	font-size: 1.8rem;
	color: #806f13;
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-items: center;
}

.member_card_list li h3 .type {
	margin: -20px 0 15px;
	color: #fff;
	font-size: 2.0rem;
	background: #806f13;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.member_card_list li p {
	margin: 15px 0 0;
	font-size: 1.6rem;
	line-height: 1.6;
}

.member_card .btn_box_link {
	display: inline-block;
}

html[lang="zh-hans"] .member_card_list li:nth-child(3),
html[lang="zh-hant"] .member_card_list li:nth-child(3),
html[lang="ko"] .member_card_list li:nth-child(3),
html[lang="en"] .member_card_list li:nth-child(3) {
	padding-top: 30px;
}

html[lang="zh-hans"] .member_card_list li:nth-child(3) h3 .type,
html[lang="zh-hant"] .member_card_list li:nth-child(3) h3 .type,
html[lang="ko"] .member_card_list li:nth-child(3) h3 .type,
html[lang="en"] .member_card_list li:nth-child(3) h3 .type {
	position: relative;
	top: -30px;
	margin-top: -50px;
}

@media screen and (min-width: 768px) {

	.member_card_list li h3 {
		margin: 0 0 20px;
		font-size: 2.0rem;
	}

}

.member_process {
	margin: 80px 20px;
}

.member_process h2 {
	margin: 0 0 40px;
	padding: 6px 0 6px 20px;
	font-size: 2.6rem;
	line-height: 1.4;
	border-left: 2px solid #d11919;
}

.member_process p {
	margin: 0 0 10px;
	font-size: 1.6rem;
	line-height: 1.6;
}

.member_process table {
	margin: 30px 0;
	width: 100%;
}

.member_process th {
	padding: 20px 30px;
	background: #efede1;
	color: #806f13;
	font-size: 1.6rem;
	text-align: left;
	border: 1px solid #d0cbc0;
	width: 50%;
}

.member_process td {
	padding: 20px 30px;
	font-size: 1.6rem;
	border: 1px solid #d0cbc0;
}

@media screen and (min-width: 768px) {

	.member_process {
		margin: 100px 0;
	}

	.member_process h2 {
		margin: 0 0 70px;
		padding: 8px 0 8px 30px;
		font-size: 3.0rem;
	}

	.member_process p {
		margin: 0 0 20px;
	}

	.member_process table {
		margin: 50px 0 60px;
	}

	.member_process th {
		padding: 25px 30px;
		width: 20%;
	}

	.member_process td {
		padding: 25px 30px;
	}

}

.member_process_box {
	padding: 35px 30px 30px;
	border: 1px solid #ba4c4c;
}

.member_process_box h3 {
	margin: 0 0 30px;
	font-size: 1.8rem;
	color: #ba4c4c;
}

.member_process_box li {
	margin: 0 0 15px;
	padding: 0 0 0 25px;
	font-size: 1.6rem;
	line-height: 1.6;
	position: relative;
}

.member_process_box li::before {
	position: absolute;
	content: '';
	left: 0;
	top: 6px;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	border: 6px solid #ba4c4c;
}

.member_process_box li a {
	margin: 0 7px 0 0;
	padding: 0 20px 0 0;
	text-decoration: underline;
	background: url(../images/common/ico_link_b_g.svg) no-repeat right center / 14px auto;
}

@media screen and (min-width: 768px) {

	.member_process_box {
		padding: 55px 55px 50px 55px;
	}

	.member_process_box h3 {
		margin: 0 0 40px;
		font-size: 2.0rem;
	}

	.member_process_box li {
		margin: 0 0 17px;
	}

}

/* ------------------------
	設備のご案内
------------------------ */

.equipment_column1 .inner,
.equipment_column2 .inner,
.equipment_column3 .inner {
	position: relative;
	z-index: 2;
}

.equipment_column3 .inner {
	margin: 0 20px;
}

.equipment_column1 .column_right,
.equipment_column2 .column_left {
	padding: 0px 20px;
}

@media screen and (min-width: 768px) {

	.equipment_column1 .inner,
	.equipment_column2 .inner,
	.equipment_column3 .inner {
		margin: 0 auto;
		width: min(95%,1200px);
		display: flex;
	}

	.equipment_column1,
	.equipment_column2 {
		display: flex;
		position: relative;
	}

	.equipment_column1::before,
	.equipment_column2::before {
		position: absolute;
		content: '';
		top: 220px;
		left: 0;
		width: 100%;
		height: 545px;
		background: url(../images/common/ptn_equipment_bg.png) 0 0 / 1800px auto;
	}

	.equipment_column1::after,
	.equipment_column2::after {
		position: absolute;
		content: '';
		top: 230px;
		width: 100%;
		height: 525px;
		border-top: 1px solid #5d4c0f;
		border-bottom: 1px solid #5d4c0f;
	}

	.equipment_column1 .column_left {
		margin: 0 8% 0 0;
		max-width: 620px;
		width: 50%;
		float: none;
	}

	.equipment_column1 .column_right {
		margin: 0;
		padding: 0;
		width: 42%;
		float: none;
	}

}

.equipment_column1 h3,
.equipment_column2 h3,
.equipment_column3 h3 {
	margin: 50px 0 40px;
	font-size: 2.0rem;
	line-height: 1.4;
}

.equipment_column1 p,
.equipment_column2 p,
.equipment_column3 p {
	margin: 0 0 15px;
	font-size: 1.6rem;
}

.equipment_pic2_4 {
	margin: 60px -20px 0;
	position: relative;
}

.equipment_pic2_4::before,
.equipment_column3::before {
	position: absolute;
	content: '';
	top: 40px;
	left: 0;
	width: 100%;
	height: 415px;
	background: url(../images/common/ptn_equipment_bg.png) 0 0 / 1800px auto;
}

.equipment_pic2_4::after,
.equipment_column3::after {
	position: absolute;
	content: '';
	top: 50px;
	width: 100%;
	height: 395px;
	border-top: 1px solid #5d4c0f;
	border-bottom: 1px solid #5d4c0f;
}

.equipment_pic2 {
	margin: 0 20px 30px auto;
	width: 200px;
	position: relative;
	z-index: 2;
}

.equipment_pic3 {
	margin: 0 0 30px 20px;
	width: 150px;
	position: relative;
	z-index: 2;
}

.equipment_pic4 {
	margin: 0 0 0 auto;
	width: 300px;
	position: relative;
	z-index: 2;
}

@media screen and (min-width: 768px) {

	.equipment_column1 h3,
	.equipment_column2 h3,
	.equipment_column3 h3 {
		margin: 0 0 40px;
		font-size: 2.4rem;
	}

	.equipment_column1 p,
	.equipment_column2 p,
	.equipment_column3 p {
		margin: 0 0 20px;
	}

	.equipment_pic2_4 {
		margin: 110px 30px 0 -310px;
		width: 760px;
		display: flex;
		flex-direction: column;
	}

	.equipment_pic2_4::before,
	.equipment_pic2_4::after {
		display: none;
	}

	.equipment_pic2 {
		margin: 0 0 0 310px;
		width: 275px;
	}

	.equipment_pic3 {
		margin: 37px 0 0;
		width: 210px;
	}

	.equipment_pic4 {
		margin: -82px 0 0 auto;
		width: 370px;
	}

}

.equipment_column1 + .cate_main_lead {
	padding-top: 40px;
}

.equipment_column2 .column_right {
	margin: 0;
	color: #fff;
}

.equipment_column2 .column_left {
	margin: 0 0 60px;
}

.equipment_column2 p.note,
.equipment_column3 p.note {
	margin: 0 0 2px;
	font-size: 1.4rem;
	padding-left: 1em;
	text-indent: -1em;
}

@media screen and (min-width: 768px) {

	.equipment_column1 + .cate_main_lead {
		padding-top: 80px;
	}

	.equipment_column2::before {
		top: 300px;
		height: 915px;
	}

	.equipment_column2::after {
		top: 310px;
		height: 895px;
	}

	.equipment_column2 .column_left {
		margin: 0;
		padding: 0;
		width: 40.5%;
		float: none;
		order: 1;
	}

	.equipment_column2 .column_right {
		margin: 65px 0 0 8%;
		padding: 0;
		max-width: 620px;
		width: 51.5%;
		float: none;
		order: 2;
	}

}

.equipment_column3 {
	position: relative;
}

.equipment_column3::before {
	top: 100px;
	height: 635px;
}

.equipment_column3::after {
	top: 110px;
	height: 615px;
}

.equipment_column3 .column_right {
	margin-bottom: 60px;
	color: #fff;
}

@media screen and (min-width: 768px) {

	.equipment_column3 {
		margin: -50px 0 220px;
	}

	.equipment_column3::before,
	.equipment_column3::after {
		display: none;
	}

	.equipment_column3 .column_left {
		margin: 0 8% 0 0;
		max-width: 480px;
		width: 40.5%;
		float: none;
	}

	.equipment_column3 .column_right {
		margin: 160px 0 0;
		width: 51.5%;
		float: none;
	}

}

.equipment_slide_wrapper {
	margin: 0 0 80px;
	position: relative;
	z-index: 2;
}

.equipment_slide .slick-slide {
	margin: 0 10px;
	width: 275px;
	height: 185px;
}

.equipment_slide .slick-slide:nth-child(2),
.equipment_slide .slick-slide:nth-child(6) {
	margin-top: 20px;
}

.equipment_slide .slick-slide:nth-child(3),
.equipment_slide .slick-slide:nth-child(7) {
	margin-top: 10px;
}

.equipment_slide .slick-slide:nth-child(4),
.equipment_slide .slick-slide:nth-child(8) {
	margin-top: 40px;
}

@media screen and (min-width: 768px) {

	.equipment_slide_wrapper {
		margin: 0 0 180px;
	}

	.equipment_slide_wrapper .slick-track {
		position: relative;
		left: 260px;
	}

	.equipment_slide .slick-slide {
		margin: 0 45px;
		width: 550px;
		height: 370px;
	}

	.equipment_slide .slick-slide:nth-child(2),
	.equipment_slide .slick-slide:nth-child(6) {
		margin-top: 85px;
	}

	.equipment_slide .slick-slide:nth-child(3),
	.equipment_slide .slick-slide:nth-child(7) {
		margin-top: 40px;
	}

	.equipment_slide .slick-slide:nth-child(4),
	.equipment_slide .slick-slide:nth-child(8) {
		margin-top: 120px;
	}

}

.equipment_slide_dot {
	margin: 20px 0 0;
	display: flex;
	justify-content: center;
	align-items: center;
}

.equipment_slide_dot ul {
	display: flex;
	justify-content: center;
}

.equipment_slide_dot li {
	margin: 0 5px;
}

.equipment_slide_dot li button {
	padding: 0;
    border: none;
    text-indent: -9999px;
    width: 30px;
    height: 1px;
    display: block;
	background: #bbb8a6;
}

.equipment_slide_dot li.slick-active button {
	background: #d11919;
}

.equipment_slide_dot .btn_pause {
	margin: 0 0 0 15px;
	width: 25px;
	height: 25px;
	order: 2;
	border: 1px solid #bbb8a6;
	border-radius: 20px;
	cursor: pointer;
	background: url(../images/equipment/btn_pause.png) no-repeat center center / 7px auto;
}

@media screen and (min-width: 768px) {

	.equipment_slide_dot li button {
    	width: 50px;
	}

}

/* ------------------------
	季節限定のお料理（index）
------------------------ */

.event_header {
	height: 70px;
}

.event_header .inner {
	position: relative;
	display: flex;
	height: 100%;
	align-items: center;
	justify-content: space-between;
}

.event_header .event_tab {
	display: flex;
	width: 66.6666%;
	justify-content: space-between;
}

@media screen and (min-width: 768px) {

	.event_header {
		height: 90px;
		border-bottom: 1px solid #eae3d9;
	}

	.event_header .inner {
		margin: 0 auto;
    	width: min(95%,1200px);
	}

	.event_header .inner::before {
		position: absolute;
		content: '';
		width: 20px;
		height: 1px;
		left: -20px;
		bottom: -1px;
		background: #f5f4ee;
	}

	.event_header .event_tab li::after {
		position: absolute;
		content: '';
		width: 20px;
		height: 1px;
		right: -20px;
		bottom: -1px;
		background: #f5f4ee;
	}

	.cate_menu .event_header .event_tab li.stay::after,
	.cate_menu .event_header .event_tab li:not(.js-link_match_location):first-child::after,
	.cate_season .event_header .event_tab li:first-child::after {
		bottom: 0;
	}

	.event_header .event_tab {
		display: flex;
		width: auto;
	}

}

.event_header .event_tab li {
	margin: 0;
	font-size: 1.1rem;
	border-bottom: 1px solid #c7c097;
	position: relative;
	width: calc(50% - 2.5px);
}

.event_header .event_tab li a {
	height: 70px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}

.cate_menu .event_header .event_tab li.stay,
.cate_menu .event_header .event_tab li:not(.js-link_match_location):first-child,
.cate_season .event_header .event_tab li:first-child {
	border-bottom: 1px solid #d11919;
}

.cate_menu .event_header .event_tab li.stay a::before,
.cate_menu .event_header .event_tab li:not(.js-link_match_location):first-child a::before,
.cate_season .event_header .event_tab li:first-child a::before {
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	bottom: -10px;
	width: 1px;
	height: 20px;
	margin: auto;
	background: #d11919;
}

.cate_menu .event_header .event_tab li.stay a,
.cate_menu .event_header .event_tab li:not(.js-link_match_location):first-child a,
.cate_season .event_header .event_tab li:first-child a {
	color: #d11919;
}

@media screen and (min-width: 768px) {

	.event_header .event_tab li {
		margin: 0 20px 0 0;
		width: 180px;
		font-size: 1.4rem;
	}

	.event_header .event_tab li a {
		height: 90px;
	}

	.event_header .event_tab li a::after {
		position: absolute;
		content: '';
		left: 0;
		right: 0;
		bottom: -1px;
		width: 0;
		height: 1px;
		margin: auto;
		background: #d11919;
		transition: all 0.25s ease 0s;
	}

	.cate_menu .event_header .event_tab li.stay,
	.cate_menu .event_header .event_tab li:not(.js-link_match_location):first-child,
	.cate_season .event_header .event_tab li:first-child {
		border-bottom: none;
	}

	.cate_menu .event_header .event_tab li.stay a::before,
	.cate_menu .event_header .event_tab li:not(.js-link_match_location):first-child a::before,
	.cate_season .event_header .event_tab li:first-child a::before {
		position: absolute;
		content: '';
		left: 0;
		right: 0;
		bottom: -10px;
		width: 1px;
		height: 20px;
		margin: auto;
		background: #d11919;
	}

	.cate_menu .event_header .event_tab li.stay a::after,
	.cate_menu .event_header .event_tab li:not(.js-link_match_location):first-child a::after,
	.cate_season .event_header .event_tab li:first-child a::after {
		position: absolute;
		content: '';
		left: 0;
		right: 0;
		bottom: -1px;
		width: 100%;
		height: 1px;
		margin: auto;
		background: #d11919;
	}

	.event_header .event_tab li a:hover,
	.cate_menu .event_header .event_tab li.stay a,
	.cate_menu .event_header .event_tab li:not(.js-link_match_location):first-child a,
	.cate_season .event_header .event_tab li:first-child a {
		color: #d11919;
	}

	.event_header .event_tab li a:hover::after {
		width: 100%;
	}

}

.event_header .inner > div {
	padding: 10px 0;
	width: calc(33.3333% - 10px);
	display: flex;
	justify-content: flex-end;
	border-bottom: 1px solid #c7c097;
	height: 100%;
}

.event_header .btn_box_link {
	margin: 0 0 0 auto;
	border-radius: 5px 0 0 5px;
	font-size: 1.0rem;
	display: inline-block;
	white-space: nowrap;
}

.event_header .btn_box_link a {
	padding: 0 30px 0 10px;
	display: flex;
	align-items: center;
	height: 100%;
	background-size: 13px auto;
	background-position: right 10px center;
}

@media screen and (min-width: 768px) {

	.event_header .inner > div {
		padding: 10px 0 10px 20px;
		width: auto;
		display: block;
		height: auto;
		border: none;
	}

	.event_header .btn_box_link {
		border-radius: 6px;
		font-size: 1.4rem;
	}

	.event_header .btn_box_link a {
		padding: 10px 50px 10px 20px;
		background-size: 24px auto;
		background-position: 0 center;
	}

}

.cate_season .category_main {
	margin-bottom: 70px;
}

.cate_season .category_main .inner {
	margin: 70px 20px 60px;
}

.event_outer .inner > h2 {
	margin: 0 0 50px;
	font-size: 2.6rem;
	color: #d11919;
	line-height: 1.4;
	position: relative;
	text-align: center;
}

.event_outer .inner > h2::after {
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	bottom: -25px;
	margin: auto;
	width: 1px;
	height: 20px;
	background: #d11919;
}

.event_main .entry_inner {
	margin-bottom: 120px;
}

.event_main .entry_inner:last-child {
	margin-bottom: 20px;
}

@media screen and (min-width: 768px) {

	.cate_season .category_main {
		margin-bottom: 160px;
	}

	.cate_season .category_main .inner {
		margin: 120px auto 40px;
    	width: min(95%,1200px);
	}

	.event_main {
		width: 100%;
	}

	.event_outer .inner {
		display: flex;
		align-items: flex-start;
	}

	.event_outer .inner > h2 {
		margin: 0 100px 0 0;
		font-size: 3.0rem;
		writing-mode: vertical-rl;
		text-orientation: upright;
		line-height: 1.2;
		letter-spacing: 0.05em;
	}

	.event_outer .inner > h2::after {
		bottom: -115px;
		height: 100px;
	}

	html[lang="zh-hans"] .event_outer .inner,
	html[lang="zh-hant"] .event_outer .inner,
	html[lang="ko"] .event_outer .inner,
	html[lang="en"] .event_outer .inner {
		display: block;
	}

	html[lang="zh-hans"] .event_outer .inner > h2,
	html[lang="zh-hant"] .event_outer .inner > h2,
	html[lang="ko"] .event_outer .inner > h2,
	html[lang="en"] .event_outer .inner > h2 {
		text-align: left;
		writing-mode: inherit;
		text-orientation: inherit;
		display: inline-block;
	}

	html[lang="zh-hans"] .event_outer .inner > h2::after,
	html[lang="zh-hant"] .event_outer .inner > h2::after,
	html[lang="ko"] .event_outer .inner > h2::after,
	html[lang="en"] .event_outer .inner > h2::after {
		bottom: 0;
		top: 0;
		left: auto;
		right: -120px;
		height: 1px;
		width: 100px;
	}

}

.event_main .event_title {
	margin: 50px 0 40px;
	padding: 0 0 10px;
	font-size: 2.6rem;
	line-height: 1.4;
	border-left: none;
	border-bottom: 1px solid #e8e5d5;
	position: relative;
}

.event_main .event_title::before {
	position: absolute;
	content: '';
	left: 0;
	bottom: 1px;
	width: 100%;
	height: 1px;
	background: #d3ceb4;
}

.event_main .event_title::after {
	position: absolute;
	content: '';
	left: 0;
	bottom: -1px;
	width: 70px;
	height: 3px;
	background: #d11919;
}

@media screen and (min-width: 768px) {

	.event_main .event_title {
		margin: 70px 0;
		padding: 0 0 18px;
		font-size: 3.0rem;
	}

}

.event_date {
	margin: -20px 0 40px;
	display: flex;
	align-items: center;
}

.event_date dt {
	margin: 0 10px 0 0;
	padding: 3px 5px 4px;
	color: #fff;
	font-size: 1.4rem;
	background: #806f13;
	display: inline-block;
}

.event_date dd {
	color: #fff;
	font-size: 1.4rem;
	color: #806f13;
	letter-spacing: 0.06em;
}

@media screen and (min-width: 768px) {

	.event_date {
		margin: -50px 0 70px;
	}

}

.event_future {
	padding: 20px 0 0;
	background: url(../images/common/band_sp.png) no-repeat 0 0 / 100% auto;
}

.event_future .inner > h2 {
	color: #333;
}

.event_future .inner h2::after,
.event_future .event_main .event_title::after {
	background: #caaa39;
}

@media screen and (min-width: 768px) {

	.event_future {
		background: url(../images/common/band_pc.png) no-repeat 0 0 / 100% auto;
	}

}

.event_none {
	margin: 60px 0 0;
	padding: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 220px;
	border: 1px solid #d11919;
	position: relative;
}

.event_none::before {
	position: absolute;
	content: '';
	top: 3px;
	left: 3px;
	width: calc(100% - 6px);
	height: calc(100% - 6px);
	border: 1px solid #e8e5d5;
}

.event_none p {
	font-size: 1.8rem;
	color: #80451e;
}

.event_future .event_none {
	border: 1px solid #caaa39;
}

@media screen and (min-width: 768px) {

	.event_none {
		margin: 70px 0 0;
		height: 400px;
	}

	.event_none p {
		font-size: 2.0rem;
	}

}

/* ------------------------
	お知らせ
------------------------ */

.news_index.top_sec_news {
	margin: 0 0 30px;
}

@media screen and (min-width: 768px) {

	.news_index.top_sec_news {
	}

	.news_index .inner {
		margin: 0 auto;
    	width: min(95%,1440px);
	}

}

.news_entry_header {
	padding: 90px 0 60px;
}

.news_entry_header .cate_title {
	margin: 0 0 10px;
	padding: 0 55px 0 0;
	position: relative;
	font-size: 2.0rem;
	display: inline-block;
}

.news_entry_header .cate_title:after {
	position: absolute;
	content: '';
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 50px;
	height: 1px;
	background: #b9b1a5;
}

.news_entry_header .entry_header_title {
	font-size: 2.6rem;
}

.news_entry_header time {
	margin: 15px 0 0;
	font-size: 1.6rem;
	display: block;
}

@media screen and (min-width: 768px) {

	.news_entry_header {
		padding: 120px 0 70px;
	}

	.news_entry_header .cate_title {
		margin: 0 0 5px;
		font-size: 2.2rem;
	}

	.news_entry_header .entry_header_title {
		font-size: 3.0rem;
	}

}

.index_link {
	margin: 55px 0 15px;
	text-align: center;
}

.index_link .btn_box_link {
	display: inline-block;
}

.btn_box_link .arrow_back {
	padding-left: 40px;
	padding-right: 20px;
}

.btn_box_link .arrow_back {
	background: url(../images/common/ico_link_b_g_l.png) no-repeat 20px center / 13px auto;
}

@media screen and (min-width: 768px) {

	.index_link {
		margin: 110px 0 30px;
	}

	.btn_box_link .arrow_back {
		padding-left: 50px;
		background: none;
	}

	.btn_box_link a.arrow_back::after {
		transform: rotate(-180deg);
		left: 20px;
		right: auto;
	}

}

.index_pager {
	margin: 50px 20px 0;
}

.index_pager ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-top: none;
}

.index_pager li {
	margin: 0;
	font-size: 1.8rem;
	display: none;
	border-bottom: none;
}

.index_pager li a {
	border-radius: 5px;
}

.index_pager li span {
	display: flex;
	justify-content: center;
	align-items: center;
}

.index_pager li.dot {
	margin: 0;
	border: none;
}

.index_pager li.cur {
	display: block;
}

.index_pager li.cur span {
	padding: 12px 18px;
	display: block;
	border-radius: 5px;
	background: #efede1;
}

.index_pager li.page_back {
	margin-right: auto;
}

.index_pager li.page_forward {
	margin-left: auto;
}

.index_pager li.page_back,
.index_pager li.page_forward {
	font-size: 1.6rem;
	display: block;
	width: 100px;
}

.index_pager li.page_back a,
.index_pager li.page_forward a {
	padding: 12px 18px;
	border: 1px solid #a1874a;
    position: relative;
	border-radius: 5px;
	display: flex;
	align-items: center;
}

.index_pager li.page_back .icon_back,
.index_pager li.page_forward .icon_forward {
	display: inline-block;
	width: 24px;
	height: 12px;
	background: url(../images/common/ico_link_b_g.svg) no-repeat 0 center / 24px auto;
}

.index_pager li.page_back .icon_back {
	margin: 0 5px 0 0;
	transform: rotate(180deg);
}

.index_pager li.page_forward .icon_forward {
	margin: 0 0 0 5px;
	background: url(../images/common/ico_link_b_g.svg) no-repeat 0 center / 24px auto;
}

.index_pager li.page_forward a {
}

@media screen and (min-width: 768px) {

	.index_pager {
		margin: 100px auto 0;
		width: min(95%,1200px);
	}

	.index_pager ul {
		margin: 0;
		justify-content: center;
	}

	.index_pager li {
		margin: 0 5px;
		font-size: 1.6rem;
		display: block;
	}

	.index_pager li a {
		padding: 11px 17px;
		border: 1px solid #a1874a;
	}

	.index_pager li a:hover {
         color: #fff;
         background: #a1874a;
         border-color: #a1874a;
    }

	.index_pager li.cur span,
	.index_pager li.page_back a,
	.index_pager li.page_forward a {
		padding: 12px 18px;
	}

	.index_pager li.page_back a:hover .icon_back {
		background: url(../images/common/ico_link_b_w.svg) no-repeat 0 center / 24px auto;
	}

	.index_pager li.page_forward a:hover .icon_forward {
		background: url(../images/common/ico_link_b_w.svg) no-repeat 0 center / 24px auto;
	}

}


/* ------------------------
	季節限定のお料理（詳細）
------------------------ */

.column_menu_box {
	margin: 30px 0 20px;
	padding: 25px 20px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	background: url(../images/common/ptn_menu_bg.png) 0 0 / 5px auto;
}

.column_menu_box h3 {
	order: 1;
}

.entry_column .column_menu_box [class*="column-media"]{
	margin: 0 0 15px;
	order: 2;
}

.column_menu_box h4 {
	order: 3;
}

.column_menu_box p {
	order: 3;
}

@media screen and (min-width: 768px) {

	.column_menu_box {
		margin: 40px 0;
		padding: 50px;
		display: block;
	}

	.entry_column .column_menu_box [class*="column-media"]{
		margin: 0 50px 0 0;
		width: 43%;
	}

	.entry_column .column_menu_box p.note {
		padding-left: 0;
		text-indent: inherit;
	}

}

.column_menu_box h3.color_brwn,
.column_menu2_left h3.color_brwn,
.column_menu2_right h3.color_brwn {
	margin: 0 0 25px;
	padding: 0;
	font-size: 2.4rem;
	color: #80451e;
	border: none;
}

.column_menu_box h3.color_brwn::after,
.column_menu2_left h3.color_brwn::after,
.column_menu2_right h3.color_brwn::after {
	display: none;
}

.entry_column h3.line_right {
	margin: 5px 0 25px;
	padding: 10px 0;
	border: none;
	font-size: 2.2rem;
	position: relative;
	display: inline-block;
}

.entry_column h3.line_right::before {
	position: absolute;
	content: '';
	top: 0;
	bottom: 0;
	right: -60px;
	margin: auto;
	width: 50px;
	height: 1px;
	background: #d11919;
}

.entry_column h3.line_right::after {
	display: none;
}

.entry_column .column_menu_box h4 {
	margin: 15px 0 20px;
	padding: 0 0 0 10px;
	font-size: 1.8rem;
	border-left: 2px solid #80451e;
}

@media screen and (min-width: 768px) {

	.column_menu2_left h3.color_brwn,
	.column_menu2_right h3.color_brwn {
		margin: 0 0 30px;
		font-size: 2.6rem;
	}

	.entry_column h3.line_right {
		margin: 10px 0 30px;
		padding: 30px 0;
		font-size: 2.4rem;
	}


	.entry_column .column_menu_box h4 {
		margin: 35px 0;
		padding: 0 0 0 12px;
		font-size: 2.0rem;
		display: flex;
	}

}

.column_menu3_left,
.column_menu3_center,
.column_menu3_right {
	margin: 0 0 20px;
	padding: 10px;
	text-align: left;
	background: url(../images/common/ptn_menu_bg.png) 0 0 / 5px auto;
}

.entry_column .column_menu3_left [class*="column-media"],
.entry_column .column_menu3_center [class*="column-media"],
.entry_column .column_menu3_right [class*="column-media"] {
	margin-bottom: 10px;
}

.column_menu3_left .columnImage,
.column_menu3_center .columnImage,
.column_menu3_right .columnImage {
	margin: 0 auto;
	height: 220px;
	width: auto;
}

.column_menu3_left a,
.column_menu3_center a,
.column_menu3_right a {
	text-align: center;
}

.column_menu3_left p.caption,
.column_menu3_center p.caption,
.column_menu3_right p.caption {
	padding: 5px 5px 0;
	text-align: left !important;
}

.column_pc {
	display: none;
}

.column_sp {
	display: block;
}

@media screen and (min-width: 768px) {

	.column_menu3_left {
		margin: 0 25px 40px 0;
	}

	.column_menu3_center {
		margin: 0 25px 40px 0;
	}

	.column_menu3_right {
		margin: 0 0 40px;
	}

	.column_menu3_left,
	.column_menu3_center,
	.column_menu3_right {
		padding: 10px;
		float: left;
		width: calc(33.3333% - 17px);
	}

	.column_menu3_left p.caption,
	.column_menu3_center p.caption,
	.column_menu3_right p.caption {
		padding: 0 5px;
	}

	.column_pc {
		display: block;
	}

	.column_sp {
		display: none;
	}

}

.column_menu2_left {
	margin: 30px 0 20px;
	padding: 25px 20px;
	text-align: left;
	background: url(../images/common/ptn_menu_bg.png) 0 0 / 5px auto;
}

.column_menu2_right {
	margin: 20px 0 20px;
	padding: 25px 20px;
	text-align: left;
	background: url(../images/common/ptn_menu_bg.png) 0 0 / 5px auto;
}

.column_menu2_left h3.color_brwn,
.column_menu2_right h3.color_brwn {
	margin: 0 0 25px;
	padding: 0;
	font-size: 2.4rem;
	color: #80451e;
	border: none;
}

.entry_column .column_menu2_left [class*="column-media"],
.entry_column .column_menu2_right [class*="column-media"] {
	margin-bottom: 0;
}

@media screen and (min-width: 768px) {

	.column_menu2_left {
		margin: 20px 40px 30px 0;
		width: calc(50% - 20px);
	}

	.column_menu2_right {
		margin: 20px 0 30px;
		width: calc(50% - 20px);
	}

	.column_menu2_left,
	.column_menu2_right {
		padding: 40px 50px 50px;
		float: left;
	}

	.column_menu2_left h3.color_brwn,
	.column_menu2_right h3.color_brwn {
		margin: 0 0 40px;
		padding: 0;
		font-size: 2.6rem;
	}

}

/* -----------------
	メニュー
----------------- */

.cate_menu .event_tab li {
	width: calc(33.3333% - 3px);
}

.cate_menu .event_tab li a {
	padding-left: 5px;
	padding-right: 5px;
	text-align: center;
}

.menu_outer {
	padding: 80px 0 0;
	background: url(../images/menu/back_sp.png) no-repeat 0 -6vw / 100% auto;
}

.menu_outer .inner {
	margin: 0 20px;
}

.menu_title {
	height: 110px;
}

.menu_title h2 {
	font-size: 2.8rem;
}

.menu_title_text p {
	font-size: 1.6rem;
	line-height: 1.6;
}

@media screen and (min-width: 768px) {

	.cate_menu .event_tab {
		padding-right: 3%;
		width: 97%;
		justify-content: space-between;
	}

	.cate_menu .event_tab li {
		width: auto;
	}

	.cate_menu .event_tab li a {
		padding-left: 20px;
		padding-right: 20px;
	}

	.menu_outer {
		background: url(../images/menu/back_pc.png) repeat-x center 0 / 1800px auto;
	}

	.menu_outer .inner {
		margin: 0 auto;
		width: min(95%,1200px);
	}

	.menu_title {
		padding-top: 40px;
		height: 260px;
	}

	.menu_title h2 {
		font-size: 3.4rem;
		line-height: 1.8;
	}

}

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

	.cate_menu .event_tab {
		padding-right: 0;
		width: 100%;
	}

	.cate_menu .event_tab li a {
		padding-left: 10px;
		padding-right: 10px;
	}

}

.cate_menu .main {
	overflow: hidden;
}

.cate_menu .entry_column h2 {
	margin: 0 0 50px;
	position: relative;
	border-top: 1px solid #eae3d9;
	border-left: none;
	padding: 0;
}

.cate_menu .entry_column h2 span {
	margin: -2px 0 0;
	padding: 10px 0 0;
	border-top: 2px solid #d11919;
	display: inline-block;

}

.cate_menu .entry_column h2::before {
	position: absolute;
	content: '';
	top: -1px;
	right: 0;
	width: 100vw;
	height: 1px;
	background: #eae3d9;
	transform: translateX(100%);
}

.cate_menu .entry_column h2::after {
	position: absolute;
	content: '';
	top: -1px;
	left: 0;
	width: 100vw;
	transform: translateX(-100%);
	height: 1px;
	background: #eae3d9;
}

@media screen and (min-width: 768px) {

	.cate_menu .entry_column h2 {
		margin: 0 0 100px;
	}

	.cate_menu .entry_column h2 span {
		padding: 30px 0 0;

	}

}

.column_oshinagaki2_left,
.column_oshinagaki2_right {
	margin: 0 0 50px;
}

.entry_column .column_oshinagaki2_left {
	display: none;
}

.entry_column .column_oshinagaki2_right [class*="column-media"] {
	margin: 0 0 50px;
	padding: 10px;
	background: url(../images/common/ptn_menu_bg.png) 0 0 / 5px auto !important;
	position: relative;
}

.entry_column .column_oshinagaki2_right [class*="column-media"] .caption {
	position: absolute;
	bottom: -30px;
	left: 0;
	margin-bottom: 0;
	font-size: 1.2rem;
	line-height: 1.6;
	color: #757575;
	text-indent: -1em;
	padding-left: 1em;
	text-align: left;
}
.column_oshinagaki2_left .columnImage {
	width: auto;
}

.column_oshinagaki2_left p.note {
	margin-top: 10px;
}

@media screen and (min-width: 768px) {

	.entry_column .column_oshinagaki2_left {
		margin: 0 6.6% 6.6% 0;
		max-width: 640px;
		width: 53%;
		float: left;
		display: block;
	}

	.entry_column .column_oshinagaki2_right {
		margin: 0 0 6.6%;
		width: 40.4%;
		float: left;
	}

	.column_oshinagaki2_right [class*="column-media"] {
		display: none;
	}

	.entry_column .column_oshinagaki2_left [class*="column-media"] {
		padding: 20px;
		background: url(../images/common/ptn_menu_bg.png) 0 0 / 5px auto !important;
		text-align: center;
	}

	.column_oshinagaki2_left .columnImage {
		max-height: 500px;
	}

}

.entry_column .price_table {
	margin: 0 0 20px;
	width: 100%;
}

.entry_column .price_table tr {
	border-bottom: 1px solid #eae3d9;
}

.entry_column .price_table th {
	padding: 20px 30px 5px 0;
	text-align: left;
	font-size: 1.6rem;
}

.entry_column .price_table td {
	padding: 20px 20px 5px 0;
	text-align: left;
	font-size: 2.2rem;
}

.entry_column .price_table td .tax {
	font-size: 1.6rem;
}

.entry_column .price_table td sup {
	font-size: 0.9rem;
}

@media screen and (min-width: 768px) {

	.entry_column .price_table {
		margin: 0 0 30px;
	}

	.entry_column .price_table th {
		padding: 25px 40px 10px 0;
		font-size: 1.8rem;
		white-space: nowrap;
	}

	.entry_column .price_table td {
		padding: 25px 20px 10px 0;
		font-size: 2.4rem;
		width: 100%;
	}

	.entry_column .price_table td sup {
		font-size: 1.0rem;
	}

}

/* -----------------
	アレルギー情報
----------------- */

.allergy_column {
	margin: 45px 0 0;
}

.entry_column .allergy_column h3 {
	margin: 0 0 35px;
	padding: 0;
	border: none;
	display: flex;
}

.entry_column .allergy_column h3:after {
	display: none;
}

.allergy_column h3 .no {
	margin: 0 10px 0 0;
	display: flex;
	width: 30px;
	height: 30px;
	justify-content: center;
	align-items: center;
	font-size: 1.8rem;
	color: #fff;
	background: #806f13;
	flex-shrink: 0;
}

.page_entry .allergy_column .inner {
	margin: 0;
	padding-left: 40px;
	width: auto;
}

@media screen and (min-width: 768px) {

	.allergy_column {
		margin: 80px 0 0;
	}

	.entry_column .allergy_column h3 {
		margin: 0 0 45px;
		align-items: center;
	}

	.allergy_column h3 .no {
		width: 40px;
		height: 40px;
		font-size: 2.4rem;
	}

	.page_entry .allergy_column .inner {
		padding-left: 50px;
	}

}

.entry_column .box_table {
	margin: 0 0 15px;
	background: #efede1;
	width: 100%;
}

.entry_column .box_table tr {
	border-bottom: 5px solid #f5f4ee;
}

.entry_column .box_table th {
	padding: 15px 20px 10px;
	color: #806f13;
	text-align: left;
	font-weight: normal;
	font-size: 1.6rem;
	border: none;
	display: block;
}

.entry_column .box_table td {
	padding: 0 20px 15px;
	text-align: left;
	font-weight: normal;
	font-size: 1.6rem;
	line-height: 1.4;
	display: block;
}

@media screen and (min-width: 768px) {

	.entry_column .box_table {
		margin: 0 0 20px;
	}

	.entry_column .box_table th {
		padding: 20px 35px 20px 20px;
		font-size: 1.8rem;
		position: relative;
		white-space: nowrap;
	}

	.entry_column .box_table th::after {
		position: absolute;
		content: '';
		top: 0;
		bottom: 0;
		right: 0;
		margin: auto;
		width: 1px;
		height: calc(100% - 40px);
		background: #806f13;
	}

	.entry_column .box_table td {
		padding: 20px 20px 20px 35px;
		font-size: 1.6rem;
	}

}

.allergy_2column {
	margin: 50px 0;
}

.entry_column .allergy_2column [class*="column-media"] {
	margin: 0 0 25px;
	padding: 10px;
	background: url(../images/common/ptn_menu_bg.png) 0 0 / 5px auto !important;
}

.entry_column .allergy_2column h4 {
	margin: 0 0 35px;
	padding: 0 0 10px;
	font-size: 2.2rem;
	position: relative;
	border-left: none;
	border-bottom: 1px solid #eae3d9;
}

.allergy_2column h4::after {
	position: absolute;
	content: '';
	left: 0;
	bottom: -1px;
	width: 50px;
	height: 1px;
	background: #caaa39;
}

.entry_column .allergy_column p.price {
	margin-bottom: 25px;
}

.allergy_column .tax {
	font-size: 1.6rem;
}

@media screen and (min-width: 768px) {

	.allergy_2column {
		margin: 75px 0;
		display: flex;
	}

	.entry_column .allergy_2column [class*="column-media"] {
		margin: 0 6.6% 0 0;
		max-width: 400px;
		width: 33.3%;
		flex-shrink: 0;
	}

	.entry_column .allergy_2column h4 {
		margin: 0 0 40px;
		padding: 0 0 15px;
		font-size: 2.4rem;
	}

	.entry_column .allergy_column p.price {
		margin-bottom: 40px;
	}

}

.entry_column .allergy_column .inner > ol {
	margin: 0 0 20px;
}

.entry_column .allergy_column .inner > ol ol {
	margin: 20px 0 0;
}

.entry_column .allergy_column .inner > ol > li {
	margin: 0 0 20px;
	font-size: 1.6rem;
}

.entry_column .allergy_column .inner > ol > li::before {
	font-size: 2.0rem;
	padding-bottom: 5px;
}

@media screen and (min-width: 768px) {

	.entry_column .allergy_column .inner > ol {
		margin: 0 0 30px;
	}

	.entry_column .allergy_column .inner > ol ol {
		margin: 30px 0 0;
	}

	.entry_column .allergy_column .inner > ol > li {
		margin: 0 0 30px;
		font-size: 1.8rem;
	}

}

.entry_column .allergy_column h5 {
	margin: 12px 0 10px 10px;
	padding: 0 5px 0 0;
	font-size: 1.2rem;
	color: #806f13;
	position: relative;
	display: inline-block;
}

.entry_column .allergy_column h5::after {
	position: absolute;
	content: '';
	right: -50px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 50px;
	height: 1px;
	background: #caaa39;
}

.entry_column .allergy_column li p.note {
	padding-left: 0;
	text-indent: 0;
}

@media screen and (min-width: 768px) {

	.entry_column .allergy_column h5 {
		font-size: 1.4rem;
	}

}

h2 .icon_arrow_circle {
	margin: 10px 0 0;
}

h3 .icon_arrow_circle {
	margin: 15px 0 0;
}

html[lang="zh-hans"] h2 .icon_arrow_circle,
html[lang="zh-hans"] h3 .icon_arrow_circle,
html[lang="zh-hant"] h2 .icon_arrow_circle,
html[lang="zh-hant"] h3 .icon_arrow_circle,
html[lang="ko"] h2 .icon_arrow_circle,
html[lang="ko"] h3 .icon_arrow_circle,
html[lang="en"] h2 .icon_arrow_circle,
html[lang="en"] h3 .icon_arrow_circle {
	margin-left: 15px;
	flex-shrink: 0;
}

.icon_arrow_circle,
.icon_search_circle {
	width: 36px;
	height: 36px;
	border: 1px solid #a1874a;
	border-radius: 50%;
	display: block;
	position: relative;
	background: url(../images/common/ico_link_b_g.svg) no-repeat center center / 16px auto;
}

.icon_arrow_circle::before,
.icon_search_circle::before {
	position: absolute;
	content: '';
	top: 2px;
	left: 2px;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	border: 1px solid #fff;
	border-radius: 50%;
	opacity: 0;
	transition: all 0.3s ease;
}

.icon_search_circle {
	background: url(../images/common/ico_restaurant_search_g.svg) no-repeat center center / 14px auto;
}

@media screen and (min-width: 768px) {

	h3 .icon_arrow_circle,
	h2 .icon_arrow_circle {
		margin: 15px 0 0;
	}

	.icon_arrow_circle,
	.icon_search_circle {
		width: 50px;
		height: 50px;
		background: url(../images/common/ico_link_b_g.svg) no-repeat center center / 24px auto;
		transition: all 0.3s ease;
	}

	.icon_search_circle {
		background: url(../images/common/ico_restaurant_search_g.svg) no-repeat center center / 20px auto;
	}

	a:hover .icon_arrow_circle {
		background: #a1874a url(../images/common/ico_link_b_w.svg) no-repeat center center / 24px auto;
	}

	a:hover .icon_search_circle {
		background: #a1874a url(../images/common/ico_restaurant_search_w.svg) no-repeat center center / 20px auto;
	}

	a:hover .icon_arrow_circle::before,
	a:hover .icon_search_circle::before {
		opacity: 1;
	}

}


/* -----------------
	パンくず
----------------- */

.path {
	margin: 8px 0 0;
	float: right;
}

.path ol {
	list-style: none;
	display: flex;

}

.path li {
	font-size: 1.0rem;
	position: relative;
}

.path li::after {
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	background: #333;
	height: calc(10px / 2);
	width: 3px;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}

.path li:first-child::after {
	display: none;
}

.path li a {
	padding: 10px 10px;
	display: block;
}

@media screen and (min-width: 768px) {

	.path {
		margin: 10px 0 0;
	}

	.path li {
		font-size: 1.4rem;
	}

	.path li a {
		padding: 10px 20px;
	}

}

/* -----------------
	詳細ページ
----------------- */

.page_entry .main {
	padding-top: 80px;
	padding-bottom: 50px;
}

.page_entry .inner {
	margin: 0 20px;
}

.entry_header {
	padding: 80px 0 70px;
}

.entry_header_title {
	font-size: 3.0rem;
	font-weight: 400;
	line-height: 1.3;
}

@media screen and (min-width: 768px) {

	.page_entry .main {
		padding-top: 100px;
		padding-bottom: 150px;
	}

	.page_entry .inner {
		margin: 0 auto;
    	width: min(95%,1200px);
	}

	.entry_header {
		padding: 120px 0 100px;
	}

	.entry_header_title {
		font-size: 3.6rem;
	}

}

/* -----------------
	ユニットパーツ
----------------- */

.entry-container {
	margin: 0;
}

.entry_column p {
	margin: 0 0 10px;
	font-size: 1.6rem;
	line-height: 1.7;
}

.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;
}

@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: 0 0 50px;
  padding: 6px 0 6px 20px;
  font-size: 2.6rem;
  line-height: 1.4;
  border-left: 2px solid #d11919;

}

.entry_column h3 {
  margin: 40px 0;
  padding: 0 0 15px;
  font-size: 2.2rem;
  line-height: 1.4;
  border-bottom: 2px solid #eae3d9;
  position: relative;
}

.entry_column h3::after {
	position: absolute;
	content: '';
	bottom: -2px;
	height: 2px;
	width: 50px;
	background: #d11919;
	left: 0;
}

.entry_column h4 {
	margin: 40px 0 20px;
	padding: 6px 20px;
	font-size: 2.0rem;
	line-height: 1.4;
	border-left: 1px solid #caaa39;
}

.entry_column h5 {
	margin: 30px 0;
	font-size: 1.8rem;
	line-height: 1.4;
	color: #806f13;
}

.entry_column h5.h5_alert {
	color: #ba4c4c;
}

.entry_column h3.line_left {
	margin: 0 0 45px;
	padding: 10px 0 10px 20px;
	border-bottom: none;
	font-size: 2.6rem;
	border-left: 1px solid #b3a266;
}

.entry_column h3.line_left::after {
	left: 2px;
	top: 0;
	bottom: 0;
	width: 1px;
	height: 100%;
	background: #b3a266;
}

@media screen and (min-width: 768px) {

	.entry_column h2 {
  		margin: 0 0 90px;
  		padding: 8px 0 8px 30px;
  		font-size: 3.0rem;
	}

	.entry_column h3 {
  		margin: 60px 0 55px;
  		padding: 0 0 30px;
  		font-size: 2.4rem;
	}

	.entry_column h4 {
		margin: 50px 0 40px;
		padding: 5px 0 5px 15px;
		font-size: 2.2rem;
	}

	.entry_column h5 {
		margin: 40px 0;
		font-size: 2.0rem;
	}

	.entry_column h3.line_left {
		margin: 0 0 45px;
		padding: 10px 0 10px 20px;
		border-bottom: none;
		font-size: 2.6rem;
		border-left: 1px solid #b3a266;
	}

	.entry_column h3.line_left::after {
		left: 2px;
		top: 0;
		bottom: 0;
		width: 1px;
		height: 100%;
		background: #b3a266;
	}

}

.entry_column p a {
	padding-right: 30px;
	color: #333;
	text-decoration: underline;
	background: url(../images/common/ico_link_m_g.svg) no-repeat right 10px top 8px / 13px auto;
}

.entry_column p a[target="_blank"] {
  padding-right: 30px;
  background: url(../images/common/ico_blank_g.svg) no-repeat right 8px top 8px / 12px auto;
}


.entry_column p a[href$=".pdf"] {
	padding-right: 32px;
	background: url(../images/common/ico_pdf.svg) no-repeat right 8px top 3px / 16px auto;
}

.entry_column p em {
	color: #d11919;
	font-weight: bold;
}

.entry_column p strong {
	font-weight: bold;
}

.entry_column p.price {
	margin: 30px 0;
	font-size: 2.4rem;
}

.entry_column p.price span.p_min {
	font-size: 1.6rem;
}

@media screen and (min-width: 768px) {

	.entry_column p a:hover {
		text-decoration: none;
	}

}

.entry_column p.btn_link {
	margin: 20px 0 15px;
}

.entry_column p.btn_link a {
	padding: 10px 50px 10px 18px;
	border: 1px solid #a1874a;
	border-radius: 5px;
	display: inline-block;
	background: #f5f4ee;
	text-decoration: none;
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.entry_column p.btn_link a::after {
	position: absolute;
	content: '';
	right: 15px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 24px;
	height: 12px;
	background: url(../images/common/ico_link_b_g.svg) no-repeat 0 0 / 24px auto;
}

.entry_column p.text_link a {
	text-decoration: none;
	display: inline-block;
}

@media screen and (min-width: 768px) {

	.entry_column p.btn_link a::before {
		position: absolute;
		content: '';
		top: 0;
		left: -100%;
		height: 100%;
		width: 100%;
		background-color: #a1874a;
		transition: all 0.25s ease 0s;
		z-index: -1;
	}

	.entry_column p.btn_link a:hover::before {
		left: 0;
	}

	.entry_column p.btn_link a:hover {
		color: #fff;
	}

	.entry_column p.btn_link a:hover::after {
		background-image: url(../images/common/ico_link_b_w.svg);
	}

	.entry_column p.btn_out a:hover {
		color: #a1874a;
	}

}

.entry_column ul {
	margin: 20px 0;
}

.entry_column ul li {
	margin: 0 0 20px;
	padding-left: 22px;
	font-size: 1.6rem;
	line-height: 1.6;
	position: relative;
}

.entry_column ul li::before {
	position: absolute;
	content: '';
	left: 0;
	top: 5px;
	width: 15px;
	height: 15px;
	background: #806f13;
	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 20px;
	padding-left: 25px;
	text-indent: -8px;
	font-size: 1.6rem;
	line-height: 1.6;
	position: relative;
}

.entry_column ol li::before {
	counter-increment: ol_li;
	content: counter(ol_li);
	color: #806f13;
	left: -15px;
	position: relative;
	font-size: 1.6rem;
}

@media screen and (min-width: 768px) {

	.entry_column ul {
		margin: 40px 0;
	}

	.entry_column ul li {
		margin: 0 0 20px;
	}

	.entry_column ol li {
		margin: 0 0 20px;
	}

}

.entry_column p.caption {
	margin-top: 5px;
}

@media screen and (min-width: 768px) {

	.entry_column p.caption {
	  	margin-top: 15px;
	}

}

.entry_column .column_box_beije {
	margin: 30px 0;
	padding: 35px 30px;
	background: #efede1;
	width: 100%;
}

.entry_column .column_box_red {
	margin: 30px 0;
	padding: 35px 30px;
	border: 1px solid #ba4c4c;
	width: 100%;
}

.entry_column .column_box_beije *,
.entry_column .column_box_red *,
.entry_column h5.h5_alert {
    margin-top: 0;
}

.entry_column .column_box_beije *:last-child,
.entry_column .column_box_red *:last-child {
	margin-bottom: 0;
}

@media screen and (min-width: 768px) {

	.entry_column .column_box_beije {
		margin: 50px 0;
		padding: 50px 60px;
	}

	.entry_column .column_box_red {
		margin: 50px 0;
		padding: 50px 60px;
	}

}

.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: 40px 0;
}

.entry_column .column-table- table {
	width: 100%;
	border-top: 1px solid #dcdcdc;
}

.entry_column .column-table- th {
	padding: 20px 30px;
	font-size: 1.6rem;
	line-height: 1.4;
	vertical-align: middle;
	text-align: left;
	border: 1px solid #d0cbc0;
	background: #efede1;
	color: #806f13;
}

.entry_column .column-table- td {
	padding: 20px 30px;
	border: 1px solid #d0cbc0;
	font-size: 1.6rem;
}

@media screen and (min-width: 768px) {

	.entry_column .column-table- {
		margin: 40px 0;
	}

	.entry_column .column-table- th {
		padding: 25px 30px;
	}

	.entry_column .column-table- td {
		padding: 25px 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 .video_l {
		width: 1200px;
	}

	.entry_column .video_m {
		width: 570px;
	}

	.entry_column .video_s {
		width: 360px;
	}

}

.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 {
	margin-bottom: 20px;
}

.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: 40px;
}

.column_border {
	padding: 25px;
	clear: both;
	border: 1px solid #efefef;
	border-radius: 10px;
}

.column_border [class*="column-media"] {
	margin: 0;
}

@media screen and (min-width: 768px) {

	.column_left {
		margin-right: 60px;
		float: left;
		width: 570px;
	}

	.column_right {
		float: left;
		width: 570px;
	}

	.column_left,
	.column_right {
		margin-bottom: 50px;
	}

	.column-map-left,
	.column-media-left,
	.column-video-left {
		margin-right: 60px;
		float: left;
	}

	.column-map-right,
	.column-media-right,
	.column-video-right {
		margin-left: 60px;
		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;
	}

}

/* -----------------------
　　　404
----------------------- */

#notfound {
	color: #373228;
}

#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;
}

.lg_5 #adminBox,
.lg_4 #adminBox,
.lg_3 #adminBox,
.lg_2 #adminBox,
.lg_1 #adminBox {
	position: fixed;
	top: 0;
}

@media screen and (min-width: 768px) {

	#adminBox .acms-admin-btn-admin {
		padding: 10px;
		font-size: 1.2rem;
	}

	#adminBox {
	    height: 100px;
	}

}

.titleWrapper {
	margin: 0 auto;
	padding: 40px 60px 10px;
	max-width: 1200px;
	background-color: #f7f7f7;
}

.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: #0075DE;
}

.entryFormLiteEditor em {
  color: #d84708;
  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;
}


.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;
  }
}
