@charset "UTF-8";

/* ----------------------------------------------------------------------------------------------------
*  基本情報
* --------------------------------------------------------------------------------------------------*/

html,
body {
	height: 100%;
}

html {
	font-size: 62.5%;
	/*overflow-y: scroll;*/
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
address,
ul,
ol,
li,
dl,
dt,
dd,
table,
th,
td,
img,
form,
input,
figure,
select {
	margin: 0;
	padding: 0;
	border: none;
	line-height: 100%;
	list-style-type: none;
	font-style: normal;
	font-family: "Noto Sans JP";
	font-weight: normal;
	text-align: left;
	color: #1A2930;
}

.en {
	font-family: "Poppins";
}

a {
	text-decoration: none;
	color: #1A2930;
	transition: all .3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

a:hover {
	opacity: 0.7
}

div,
h1,
h2,
h3,
h4,
h5,
h6,
p,
dl,
dt,
dd,
ol,
ul,
li,
form,
input,
textarea,
button,
table,
tr,
th,
td,
article,
aside,
footer,
header,
hgroup,
nav,
section,
a,
span,
img {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	width: 100%;
	overflow-wrap: anywhere;
	/* 収まらない場合に折り返す */
	word-break: normal;
	/* 単語の分割はデフォルトに依存 */
	line-break: strict;
	/* 禁則処理を厳格に適用 */
	-webkit-appearance: none;
	-webkit-text-size-adjust: 100%;
}

h1,
h2,
h3,
h4,
h5,
p {
	/*text-align: justify;
	text-justify: distribute;*/
	line-height: 1.5;
}

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

input,
button,
textarea,
select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

select::-ms-expand {
	display: none;
}

.article_contet img {
	margin: 1rem 0;
}

.article_contet img.aligncenter {
	display: block;
	margin: 1rem auto;
}

.article_contet img.alignright {
	float: right;
	margin: 1rem 0 1rem 1rem;
}

.article_contet img.alignleft {
	float: left;
	margin: 1rem 1rem 1rem 0;
}

.flex {
	display: flex;
	display: -webkit-flex;
	display: -ms-flex;
}

.flexwrap_wrap {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.flexdirection_column {
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.justifycontent_flexend {
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}

.justifycontent_center {
	-webkit-justify-content: center;
	justify-content: center;
}

.justifycontent_spacebetween {
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.justifycontent_spacearound {
	-webkit-justify-content: space-around;
	justify-content: space-around;
}

.aligncontent_spacebetween {
	-webkit-align-content: space-between;
	align-content: space-between;
}

.alignitems_center {
	-webkit-align-items: center;
	align-items: center;
}

.alignitems_flexend {
	-webkit-align-items: flex-end;
	align-items: flex-end;
}

.alignitems_flexstart {
	-webkit-align-items: flex-start;
	align-items: flex-start;
}

.mt1em {
	margin-top: 1em;
}

.mb1em {
	margin-bottom: 1em;
}

.mb2em {
	margin-bottom: 2em;
}

p {
	font-size: 1.5rem;
	line-height: 2.13;
}

.tab_wide,
.sp {
	display: none;
}

.fadeup {
	opacity: 0;
}

.fadeup.on {
	animation: fadeup 1s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
}

@keyframes fadeup {
	0% {
		transform: translateY(50px);
		opacity: 0;
	}

	80% {
		opacity: 1;
	}

	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/* ------------------------------
    clearfix
------------------------------ */

.cf:after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}

.cf {
	display: inline-block;
}

/* Hides from IE Mac */
* html .cf {
	height: 1%;
}

.cf {
	display: block;
}

/* End Hack */

.wrap {
	max-width: 1540px;
	width: 90%;
	margin: auto;
}

@media screen and (max-width: 1700px) {
	p {
		font-size: 0.97vw;
	}
}

@media screen and (max-width: 1024px) {
	.pc {
		display: none;
	}

	.sp {
		display: block;
	}

	.flex_sp {
		display: flex;
	}

	p {
		font-size: 3.73vw;
		line-height: 2;
	}

	.wrap {
		width: 89.33vw;
	}
}

#header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 50;
	width: 100%;
}

#header.transform {}

.header_in {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	height: 100px;
	background: #fff;
	z-index: 500;
}

#header .header_logo {
	max-width: 277.72px;
	width: 14.46vw;
	margin-left: 2.1875vw;
	margin-right: auto;
}

#header .sp_nav {
	height: 100%;
}

#header .nav {
	display: flex;
	align-items: center;
	gap: 25px;
	height: 100%;
	margin-right: 20px;
}

#header .nav li {
	height: 100%;
	font-size: 1.5rem;
	font-weight: 500;
}

#header .nav li a {
	display: flex;
	align-items: center;
	height: 100%;
}

#header .nav li.p_nav a {
	display: flex;
	align-items: center;
	gap: 8px;
}

#header .nav li.p_nav {
	cursor: pointer;
}

#header .nav li.p_nav>a {
	pointer-events: none;
}

#header .nav li.p_nav .button {
	position: relative;
	width: 10px;
	height: 10px;
}

#header .nav li.p_nav .button:before,
#header .nav li.p_nav .button:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 10px;
	height: 2px;
	margin: auto;
	background: #1A2930;
	transition: all .3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

#header .nav li.p_nav .button:after {
	transform: rotate(90deg);
}

#header .nav li.p_nav .child_nav {
	position: absolute;
	top: 100%;
	left: 0;
	display: flex;
	justify-content: center;
	gap: 40px;
	width: 100%;
	padding: 43px 0 50px;
	background: #1A2930;
	opacity: 0;
	visibility: hidden;
	text-align: center;
}

#header .nav li.p_nav .child_nav li a {
	position: relative;
	display: block;
	width: 276px;
	padding: 0 0 0.8em;
	font-size: 1.6rem;
	color: #fff;
	border-bottom: 1px solid #fff;
}

#header .nav li.p_nav .child_nav li.en a {
	font-size: 2rem;
}

#header .nav li.p_nav .child_nav li a .arrow {
	position: absolute;
	top: 0;
	right: 10px;
	transition: all .3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

#header .nav li.p_nav .child_nav li a:hover {
	opacity: 1;
}

#header .nav li.p_nav .child_nav li a:hover .arrow {
	right: 0;
}

#header .btn {
	height: 100%;
}

#header .btn a {
	justify-content: center;
	gap: 10px;
	width: 154px;
	height: 100%;
	padding: 0;
	font-size: 1.5rem;
	border: none;
	border-radius: 0;
}

#header .btn a:hover {
	background: #EAC22D;
}

#header .btn a img {
	position: unset;
	width: 25px;
	height: 18px;
	margin: 0;
}

/* 言語切り替え */
.header_select {
	margin: 0 15px 0 0;
}

.header_select * {
	color: #1A2930;
}

.header_select.sp {
	display: none;
}

.header_select button {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	gap: 8px;
	width: 60px;
	height: 60px;
	border: 1px solid #1A2930;
	border-radius: 4px;
	cursor: pointer;
	transition: all .3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.header_select button:hover {
	opacity: 0.7;
}

.header_select button img {
	width: 26px;
}

.header_select button span {
	font-size: .8rem;
	font-weight: bold;
	white-space: nowrap;
	line-height: 1;
}

.modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	padding: 50px 0;
	background: #fff;
	z-index: 999;
}

.modal.is-active {
	display: flex;
	justify-content: center;
	align-items: center;
}

.modal .modal-container {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	gap: 10px;
}

.modal select {
	width: 280px;
	height: 30px;
	padding: .5em;
	font-size: 1.4rem;
	text-align: center;
	font-family: "Poppins";
	border: 1px solid #1A2930;
	border-radius: 4px;
	background: url(../img/common/arrow_select.svg) no-repeat right 10px center;
	background-size: 15px auto;
	cursor: pointer;
}

.modal .modal-close {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	font-size: 2rem;
	border: 1px solid #1A2930;
	border-radius: 4px;
	cursor: pointer;
	transition: all .3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.modal .modal-close:hover {
	opacity: 0.7;
}

.btn_sp {
	display: none;
}

@media screen and (max-width: 1700px) {
	.header_in {
		height: 6.49vw;
	}

	#header .header_logo {
		width: 17vw;
		margin-left: 2.59vw;
	}

	#header .nav {
		gap: 1.62vw;
		margin-right: 1.29vw;
	}

	#header .nav li {
		font-size: 0.97vw;
	}

	#header .nav li.p_nav a {
		gap: 0.51vw;
	}

	#header .nav li.p_nav .button:before,
	#header .nav li.p_nav .button:after {
		width: 0.64vw;
		height: 0.12vw;
	}

	#header .nav li.p_nav .child_nav {
		gap: 2.59vw;
		padding: 2.79vw 0 3.24vw;
	}

	#header .nav li.p_nav .child_nav li a {
		width: 17.92vw;
		font-size: 1.03vw;
	}

	#header .nav li.p_nav .child_nav li.en a {
		font-size: 1.29vw;
	}

	#header .nav li.p_nav .child_nav li a .arrow {
		right: 0.64vw;
	}

	#header .btn a {
		gap: 0.64vw;
		width: 10vw;
		font-size: 0.97vw;
		font-weight: bold;
		border: none;
	}

	#header .btn a img {
		width: 1.62vw;
		height: 1.16vw;
	}

	/* 言語切り替え */
	.header_select {
		margin: 0 0.97vw 0 0;
	}

	.header_select button {
		width: 4.5vw;
		height: 4.5vw;
	}

	.header_select button img {
		width: 1.8vw;
	}

	.header_select button span {
		font-size: 0.64vw;
	}

	.modal {
		padding: 3.24vw 0;
	}

	.modal .modal-container {
		gap: 0.64vw;
	}

	.modal select {
		width: 18.18vw;
		height: 1.94vw;
		font-size: 0.9vw;
		border-radius: 0.25vw;
		background: url(../img/common/arrow_select.svg) no-repeat right 0.64vw center;
		background-size: 0.97vw auto;
	}

	.modal .modal-close {
		width: 1.94vw;
		height: 1.94vw;
		font-size: 1.29vw;
		border-radius: 0.25vw;
	}
}

@media screen and (min-width: 1025px) {
	#header .nav li.p_nav:hover a {
		opacity: 1;
	}

	#header .nav li.p_nav:hover .button:after {
		transform: rotate(0);
	}

	#header .nav li.p_nav:hover .child_nav {
		opacity: 1;
		visibility: visible;
	}
}

@media screen and (max-width: 1024px) {
	.header_in {
		position: absolute;
		height: 14.66vw;
		padding: 0 5.33vw 0 4vw;
	}

	#header .header_logo {
		max-width: 416.58px;
		width: 55.544vw;
		margin-left: 0;
	}

	#header .btn {
		height: auto;
	}

	#header .btn a {
		gap: 3.33vw;
		width: 100%;
		height: 18.66vw;
		font-size: 4.53vw;
	}

	#header .btn a img {
		width: 5.86vw;
		height: 4.224vw;
	}

	.btn_menu {
		width: 10.66vw;
		height: 4.26vw;
		z-index: 200;
	}

	.fixed .btn_menu {
		position: fixed;
		top: 5.06vw;
		right: 5.33vw;
	}

	.toggle {
		position: relative;
		display: block;
		width: 100%;
		height: 100%;
		cursor: pointer;
		z-index: 10;
	}

	.toggle span {
		display: inline-block;
		transition: all .5s cubic-bezier(0.645, 0.045, 0.355, 1);
		position: absolute;
		left: 0;
		right: 0;
		width: 100%;
		height: 0.53vw;
		margin: auto;
		background-color: #1A2930;
	}

	.toggle span:nth-of-type(1) {
		top: 0;
	}

	.toggle span:nth-of-type(2) {
		top: 0;
		bottom: 0;
	}

	.toggle span:nth-of-type(3) {
		bottom: 0;
	}

	.toggle.active span:nth-of-type(1) {
		transform: translateY(9px) rotate(150deg);
	}

	.toggle.active span:nth-of-type(2) {
		opacity: 0;
	}

	.toggle.active span:nth-of-type(3) {
		top: 0;
		bottom: auto;
		transform: translateY(9px) rotate(-150deg);
	}

	body.fixed {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		z-index: 5;
		overflow: hidden;
	}

	/* 言語切り替え */
	.header_select {
		position: absolute;
		top: 0;
		left: 5.33vw;
		display: none;
		justify-content: center;
		align-items: center;
		height: 100%;
		z-index: 105;
		margin: 0;
	}

	body.fixed .header_select {
		display: flex;
	}

	.header_select button {
		width: 8vw;
		height: 8vw;
	}

	.header_select button img {
		width: 100%;
	}

	.header_select button span {
		display: none;
	}

	.modal {
		padding: 5vw 0;
	}

	.modal .modal-container {
		gap: 2.56vw;
	}

	.modal select {
		width: 71.79vw;
		height: 7.69vw;
		font-size: 3.58vw;
		border: 0.51vw solid #1A2930;
		border-radius: 1.02vw;
		background: url(../img/common/arrow_select.svg) no-repeat right 2.56vw center;
		background-size: 3.84vw auto;
	}

	.modal .modal-close {
		width: 7.69vw;
		height: 7.69vw;
		font-size: 5.12vw;
		border: 0.51vw solid #1A2930;
		border-radius: 1.02vw;
	}

	.btn_sp {
		display: block;
	}

	#header .sp_nav {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		padding: 14.66vw 0 0;
		background: #fff;
		-webkit-overflow-scrolling: touch;
		overflow-y: auto;
		z-index: 100;
		transition: all 0.6s;
		opacity: 0;
		visibility: hidden;
	}

	#header .sp_nav.on {
		opacity: 1;
		visibility: visible;
	}

	#header .nav {
		display: block;
		width: 100%;
		height: auto;
		padding: 0;
		margin-right: 0;
	}

	.header_select.pc {
		display: none;
	}

	#header .nav li {
		height: auto;
		font-size: 4vw;
		border-bottom: 1px solid #1A2930;
	}

	#header .nav li a {
		justify-content: space-between;
		padding: 4.8vw 5.33vw;
	}

	#header .nav li.p_nav li+li {
		border-top: 1px solid #fff;
	}

	#header .nav li.p_nav li a {
		display: block;
		color: #fff;
		background: #1A2930;
	}

	#header .nav li.p_nav .button {
		width: 4vw;
	}

	#header .nav li.p_nav .button:before,
	#header .nav li.p_nav .button:after {
		width: 4vw;
		height: 0.53vw;
	}

	#header .nav li.p_nav.on .button:after {
		transform: rotate(0);
	}

	#header .nav li.p_nav .button:after {
		transform: rrotate(90deg);
	}

	#header .nav li.p_nav .child_nav {
		position: unset;
		display: none;
		width: 100%;
		padding: 0;
		background: #1A2930;
		opacity: 1;
		visibility: visible;
		text-align: left;
	}

	#header .nav li.p_nav:hover .child_nav {
		opacity: 1;
		visibility: visible;
	}

	#header .nav li.p_nav .child_nav li a {
		display: flex;
		width: 100%;
		padding: 4.8vw 5.33vw;
		font-size: 4vw;
		border-bottom: none;
	}

	#header .nav li.p_nav .child_nav li.en a {
		font-size: 4.66vw;
	}

	#header .nav li.p_nav .child_nav li a .arrow {
		display: none;
	}

	#header .btn_reservation {
		position: unset;
		display: block;
		opacity: 1;
	}

	#header .btn_reservation a {
		gap: 4vw;
		width: 89.33vw;
		height: 16.53vw;
		margin: 4vw auto 0;
		font-size: 4.53vw;
		border-radius: 1.06vw;
	}

	#header .btn_reservation a img {
		width: 5.86vw;
	}
}


.page_top {
	position: fixed;
	right: 70px;
	bottom: 145px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 70px;
	height: 70px;
	cursor: pointer;
	z-index: 50;
	opacity: 0;
	transition: all .3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.page_top.on {
	opacity: 1;
}

.page_top span {
	position: relative;
	display: block;
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1.6;
	z-index: 5;
}

.page_top:before {
	content: '';
	position: absolute;
	display: block;
	width: 70px;
	height: 70px;
	background: #EAC22D;
	border-radius: 50%;
	transition: all .3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.page_top span:before {
	content: '';
	display: block;
	width: 6px;
	height: 6px;
	margin: auto;
	border-top: solid 1.5px #1A2930;
	border-right: solid 1.5px #1A2930;
	transform: rotate(-45deg);
}

.page_top:hover:before {
	transform: scale(1.2, 1.2);
}

.btn_reservation {
	position: fixed;
	right: 10px;
	bottom: 90px;
	z-index: 50;
	opacity: 0;
	transition: all .3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.btn_reservation.on {
	opacity: 1;
}

.btn_reservation a {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	width: 190px;
	height: 46px;
	font-size: 1.4rem;
	color: #fff;
	font-weight: 600;
	border: 1px solid #1A2930;
	background: #1A2930;
	border-radius: 8px;
}

.btn_reservation a img {
	width: 16px;
	-webkit-filter: brightness(0) invert(1);
	filter: brightness(0) invert(1);
	transition: all .3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.btn_reservation a:hover {
	color: #1A2930;
	background: #fff;
	opacity: 1;
}

.btn_reservation a:hover img {
	-webkit-filter: none;
	filter: none;
}

#footer {
	padding: 98px 0 66px;
	background: #1A2930;
}

#footer * {
	color: #fff;
}

#footer .top {
	position: relative;
	padding-bottom: 95px;
	margin-bottom: 134px;
}

#footer .top:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: rgba(255, 255, 255, .3);
}

#footer p {
	letter-spacing: 0.05em;
}

#footer .top .flex {
	justify-content: space-between;
}

#footer .title_area {
	margin-bottom: 40px;
}

#footer .title_area .title02:after {
	background: #fff;
}

#footer .in {
	display: flex;
	align-items: flex-end;
	flex-direction: column;
}

#footer .in .tel {
	margin-bottom: 12px;
}

#footer .in .tel a {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 3.9rem;
	font-weight: 600;
	line-height: 1;
	pointer-events: none;
}

#footer .in .tel img {
	width: 28px;
}

#footer .in .btn a {
	gap: 15px;
	width: 330px;
	color: #fff;
	margin-top: 40px;
 background: none;
	border: 1px solid #fff;
}

#footer .in .btn a .icon {
	position: unset;
	width: 24px;
	height: 18px;
	margin: 0;
}

#footer .in .btn a img {
	filter: brightness(0) invert(1);
}

#footer .in .btn a:hover {
	color: #1A2930;
	background: #fff;
}

#footer .in .btn a:hover img {
	filter: invert(100%);
}

#footer .bottom .flex {
	justify-content: space-between;
}

#footer .info {
	width: 526px;
}

#footer .info .map {
	width: 100%;
	height: 327px;
	margin-bottom: 40px;
	border-radius: 8px;
	overflow: hidden;
}

#footer .info .map iframe {
	width: 100%;
	height: 100%;
}

#footer .info p {
	font-size: 1.4rem;
	line-height: 2;
}

#footer .info p a {
	pointer-events: none;
}

#footer .info .name {
	margin-bottom: 20px;
	font-size: 2.2rem;
	font-weight: 500;
}

#footer .footer_nav {
	display: flex;
	justify-content: space-between;
	width: 886px;
}

#footer .footer_nav ul>li {
	font-size: 2rem;
}

#footer .footer_nav ul>li+li {
	margin-top: 40px;
}

#footer .footer_nav ul>li .child_nav {
	margin-top: 25px;
}

#footer .footer_nav ul>li .child_nav li {
	font-size: 1.5rem;
}

#footer .footer_nav ul>li .child_nav li+li {
	margin-top: 20px;
}

#footer .sns {
	display: flex;
	justify-content: flex-end;
	gap: 16px;
	margin-bottom: 16px;
}

#footer .sns li {
	max-width: 2.9rem;
}

#footer .copy {
	font-size: 1.2rem;
	text-align: right;
}

@media screen and (max-width: 1800px) {
	#footer {
		padding: 98px 0 140px;
	}
}

@media screen and (max-width: 1700px) {
	.page_top {
		right: 4.5vw;
		bottom: 11vw;
		width: 4.54vw;
		height: 4.54vw;
	}

	.page_top span {
		font-size: 0.9vw;
	}

	.page_top:before {
		width: 4.54vw;
		height: 4.54vw;
	}

	.page_top span:before {
		width: 0.38vw;
		height: 0.38vw;
	}

	.btn_reservation {
		right: 0.64vw;
	}

	.btn_reservation a {
		gap: 0.51vw;
		width: 12vw;
		height: 2.98vw;
		font-size: 0.9vw;
		border-radius: 0.51vw;
	}

	.btn_reservation a img {
		width: 1.03vw;
	}

	#footer {
		padding: 6.36vw 0 9.09vw;
	}

	#footer .top {
		padding-bottom: 6.16vw;
		margin-bottom: 8.7vw;
	}

	#footer .title_area {
		margin-bottom: 2.59vw;
	}

	#footer .in .tel {
		margin-bottom: 0.77vw;
	}

	#footer .in .tel a {
		gap: 0.77vw;
		font-size: 2.53vw;
	}

	#footer .in .tel img {
		width: 1.81vw;
	}

	#footer .in .btn a {
		gap: 0.97vw;
		width: 21.42vw;
		margin-top: 2.59vw;
	}

	#footer .in .btn a .icon {
		width: 1.55vw;
		height: 1.16vw;
	}

	#footer .info {
		width: 34%;
	}

	#footer .info .map {
		height: 21.23vw;
		margin-bottom: 2.59vw;
		border-radius: 0.51vw;
	}

	#footer .info p {
		font-size: 0.9vw;
	}

	#footer .info .name {
		margin-bottom: 1.29vw;
		font-size: 1.42vw;
	}

	#footer .footer_nav {
		width: 56%;
	}

	#footer .footer_nav ul>li {
		font-size: 1.29vw;
	}

	#footer .footer_nav ul>li+li {
		margin-top: 2.59vw;
	}

	#footer .footer_nav ul>li .child_nav {
		margin-top: 1.62vw;
	}

	#footer .footer_nav ul>li .child_nav li {
		font-size: 0.97vw;
	}

	#footer .footer_nav ul>li .child_nav li+li {
		margin-top: 1.29vw;
	}

	#footer .sns {
		gap: 1.03vw;
	}

	#footer .copy {
		margin-top: 1.03vw;
		font-size: 0.77vw;
	}
}

@media screen and (max-width: 1024px) {
	.page_top {
		right: 2.13vw;
		bottom: 22vw;
		width: 16vw;
		height: 16vw;
	}

	.page_top span {
		font-size: 3.33vw;
	}

	.page_top:before {
		width: 16vw;
		height: 16vw;
	}

	.page_top span:before {
		width: 1.2vw;
		height: 1.2vw;
		border-top: solid 0.33vw #1A2930;
		border-right: solid 0.33vw #1A2930;
	}

	.btn_reservation {
		display: none;
	}

	#footer {
		padding: 16vw 0 5.33vw;
	}

	#footer .top {
		padding-bottom: 0;
		margin-bottom: 16vw;
	}

	#footer .top .flex {
		display: block;
	}

	#footer .top:after {
		display: none;
	}

	#footer .title_area {
		margin-bottom: 6.4vw;
	}

	#footer .in {
		align-items: center;
	}

	#footer .in p {
		text-align: center;
	}

	#footer .in .tel {
		margin-bottom: 1.4vw;
	}

	#footer .in .tel a {
		gap: 1.6vw;
		margin: 2.93vw auto 0;
		font-size: 8.53vw;
		pointer-events: auto;
	}

	#footer .in .tel img {
		width: 5.9vw;
	}

	#footer .in .tel+p {
		font-size: 3.2vw;
	}

	#footer .in .btn a {
		gap: 6.13vw;
		width: 89.33vw;
		margin-top: 7.19vw;
		border: 0.26vw solid #fff;
	}

	#footer .in .btn a .icon {
		width: 5.86vw;
		height: 4.39vw;
	}

	#footer .bottom .wrap {
		width: 100%;
	}

	#footer .bottom .flex {
		display: block;
	}

	#footer .info {
		width: 100%;
		margin-bottom: 10.66vw;
	}

	#footer .info .map {
		height: 55.6vw;
		margin-bottom: 5.33vw;
		border-radius: 2.13vw;
	}

	#footer .info p {
		font-size: 3.46vw;
		text-align: center;
		line-height: 1.75;
	}

	#footer .info p a {
		pointer-events: auto;
	}

	#footer .info .name {
		margin-bottom: 2.66vw;
		font-size: 5.33vw;
	}

	#footer .footer_nav {
		display: block;
		width: 100%;
	}

	#footer .footer_nav ul>li {
		position: relative;
		font-size: 4vw;
	}

	#footer .footer_nav ul>li:after {
		content: "";
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 0.26vw;
		background: rgba(255, 255, 255, .3);
	}

	#footer .footer_nav ul>li:first-child:before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 0.26vw;
		background: rgba(255, 255, 255, .3);
	}

	#footer .footer_nav ul+ul>li:first-child:before {
		display: none;
	}

	#footer .footer_nav ul>li+li {
		margin-top: 0;
	}

	#footer .footer_nav ul>li a {
		display: block;
		padding: 4vw;
		text-align: center;
	}

	#footer .footer_nav li.p_nav>a {
		position: relative;
		pointer-events: none;
	}

	#footer .footer_nav li.p_nav .button {
		position: absolute;
		top: 0;
		right: 5.33vw;
		bottom: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 4vw;
		height: 4vw;
		margin: auto;
	}

	#footer .footer_nav li.p_nav .button:before,
	#footer .footer_nav li.p_nav .button:after {
		content: "";
		position: absolute;
		width: 4vw;
		height: 2px;
		background: #fff;
		transition: all .3s cubic-bezier(0.645, 0.045, 0.355, 1);
	}

	#footer .footer_nav li.p_nav .button:after {
		transform: rotate(90deg);
	}

	#footer .footer_nav li.p_nav.on .button:after {
		transform: rotate(0);
	}

	#footer .footer_nav li.p_nav .child_nav {
		position: unset;
		display: none;
		width: 100%;
		padding: 0;
		margin-top: 0;
		background: #1A2930;
		opacity: 1;
		visibility: visible;
		text-align: left;
	}

	#footer .footer_nav li.p_nav .child_nav li {
		font-size: 4vw;
	}

	#footer .footer_nav li.p_nav .child_nav li a {
		display: block;
		width: 100%;
		padding: 4vw;
		font-size: 4vw;
		text-align: center;
		border-bottom: none;
	}

	#footer .footer_nav li.p_nav .child_nav li.en a {
		font-size: 4.66vw;
	}

	#footer .footer_nav li.p_nav .child_nav li a .arrow {
		display: none;
	}

	#footer .sns {
		justify-content: center;
		gap: 6.4vw;
		margin-top: 8vw;
	}

	#footer .copy {
		margin-top: 7.6vw;
		font-size: 2.4vw;
		text-align: center;
	}
}


/*common*/
main {
	margin-top: 100px;
}

.btn a {
	position: relative;
	display: flex;
	align-items: center;
	width: 280px;
	height: 60px;
	padding: 0 30px;
	font-size: 1.6rem;
	color: #fff;
	font-weight: 500;
	background: #1A2930;
	border: 1px solid #1A2930;
	border-radius: 8px;
}

.btn a img {
	position: absolute;
	top: 0;
	right: 27px;
	bottom: 0;
	width: 13.67px;
	height: 12px;
	margin: auto;
	transition: all .3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.btn._w a {
	color: #1A2930;
	background: #fff;
	border: 1px solid #1A2930;
	border-radius: 8px;
}
.btn._w a img {
	filter: invert(100%);
}
.btn._w._y a {
  border: 2px solid #1A2930;
  background: #EAC22D;
}
.btn._w._y a:hover {
  background: #1A2930;
}


.title_area .en {
	margin-bottom: 0.2em;
	font-size: 8rem;
	font-weight: 600;
	line-height: 1;
}

.title_area .title02 {
	position: relative;
	font-size: 2rem;
	font-weight: 600;
	padding-bottom: 9px;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.8em;
}

.title_area.center * {
	text-align: center;
}

.title_area.center:after {
	right: 0;
	margin: auto;
}

.title_area.center .title02 {
	margin: auto;
}

.bg_gray {
	background: url(../img/top/bg02.png) repeat left top;
}

.main_title_area .flex {
	position: relative;
	overflow: hidden;
}

.main_title_area .flex:before {
	content: "";
	position: absolute;
	top: 0;
	left: 30.21vw;
	width: 135px;
	height: 135px;
	background: url(../img/top/deco_fv.png) no-repeat left top;
	background-size: 100% auto;
	z-index: 2;
}

.main_title_area .main_title {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	justify-content: center;
	flex-direction: column;
	width: 30.21vw;
	height: 100%;
	padding-left: 2vw;
	background: #fff;
	z-index: 10;
}

.main_title_area .main_title .en {
	margin-bottom: 0.2em;
	font-size: 9.6rem;
	font-weight: 600;
	line-height: 1;
}

.main_title_area .main_title .main_title_txt {
	font-size: 2.5rem;
	font-weight: 600;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.8em;
}

.main_title_area figure {
	width: 69.79vw;
	margin-left: auto;
}

.main_title_area.center .main_title {
	position: unset;
	width: 100%;
	padding-left: 0;
	padding: 68px 0 30px;
	background: none;
}

.main_title_area.center .main_title .en,
.main_title_area.center .main_title .main_title_txt {
	text-align: center;
}

@media screen and (max-width: 1700px) {
	main {
		margin-top: 6.49vw;
	}

	.btn a {
		width: 18.18vw;
		height: 3.89vw;
		padding: 0 1.94vw;
		font-size: 1.03vw;
		border-radius: 0.51vw;
	}

	.btn a img {
		right: 1.75vw;
		width: 0.88vw;
		height: 0.77vw;
	}

	.btn._w a {
		border-radius: 0.51vw;
	}

	.title_area .en {
		font-size: 5.19vw;
	}

	.title_area .title02 {
		font-size: 1.29vw;
		padding-bottom: 0.58vw;
	}

	.main_title_area .flex:before {
		width: 8.76vw;
		height: 8.76vw;
	}

	.main_title_area .main_title .en {
		font-size: 5.5vw;
	}

	.main_title_area .main_title .main_title_txt {
		font-size: 1.62vw;
	}

	.main_title_area.center .main_title {
		padding: 4.41vw 0 1.94vw;
	}
}

@media screen and (min-width: 1024px) {
	.btn a:hover {
		color: #1A2930;
		background: #fff;
		opacity: 1;
	}

	.btn a:hover img {
		filter: invert(100%);
	}

	.btn._w a:hover {
		color: #fff;
		background: #1A2930;
	}

	.btn._w a:hover img {
		filter: invert(0);
	}
}

@media screen and (max-width: 1024px) {
	main {
		margin-top: 14.66vw;
	}

	.btn a {
		width: 89.33vw;
		height: 16vw;
		padding: 0 5.33vw;
		font-size: 4vw;
		border-radius: 2.13vw;
	}

	.btn a img {
		right: 3.33vw;
		width: 4vw;
		height: 3.51vw;
	}

	.btn._w a {
		border-radius: 2.13vw;
	}

	.title_area .en {
		margin-bottom: 1.33vw;
		font-size: 9.33vw;
		text-align: center;
	}

	.title_area .title02 {
		padding-bottom: 1.33vw;
		font-size: 3.73vw;
		text-align: center;
	}

	.main_title_area .flex {
		display: block;
		height: auto;
	}

	.main_title_area .main_title {
		position: relative;
		display: flex;
		justify-content: center;
		width: 100%;
		height: 40vh;
		padding: 5.33vw 0 9.33vw;
		margin: 0;
	}

	.main_title_area .flex {
		height: auto;
	}

	.main_title_area .flex:before {
		display: none;
	}

	.main_title_area .main_title {
		position: unset;
		width: 100%;
		height: auto;
		padding: 12vw 0 8vw;
	}

	.main_title_area .main_title .en {
		font-size: 11.2vw;
		text-align: center;
	}

	.main_title_area .main_title .main_title_txt {
		font-size: 3.73vw;
		text-align: center;
	}

	.main_title_area figure {
		width: 100%;
		margin-left: 0;
	}

	.main_title_area.center .main_title {
		padding: 21.06vw 0 6.66vw;
	}
}


.member_plan {
	padding: 140px 0 250px;
}

.member_plan .title_area {
	margin-bottom: 80px;
}

.member_plan .content {
	position: relative;
}

.member_plan .content figure {
	position: absolute;
	top: 0;
	right: 53.125%;
	width: 46.875vw;
	max-width: 900px;
}

.member_plan .content .in {
	width: 710px;
	margin-left: auto;
}

.member_plan .content .in .title03 {
	margin-bottom: 25px;
	font-size: 4.2rem;
	font-weight: bold;
}

.member_plan .content .in .btn {
	margin-top: 50px;
}

.member_plan .content .in .btn+.btn {
	margin-top: 15px;
}

.member_plan .content .in .btn a {
	gap: 34px;
	width: 100%;
	height: 100px;
	padding: 0 70px;
	font-size: 2.4rem;
	border: 2px solid #1A2930;
}

.member_plan .content .in .btn a img.icon {
	position: unset;
	width: 30.39px;
	height: 32.52px;
	margin: 0;
}

.member_plan .content .in .btn+.btn a {
	gap: 26px;
	padding: 0 63px;
	border: 2px solid #1A2930;
}

.member_plan .content .in .btn+.btn a img.icon {
	width: 44.98px;
	height: 35.66px;
	filter: invert(0);
}

.member_plan .content .in .btn+.btn a:hover img.icon {
	filter: brightness(0) invert(1);
}

.member_plan .content .in .btn a .arrow img {
	right: 46px;
	width: 18.23px;
	height: 16px;
}

@media screen and (max-width: 1700px) {
	.member_plan {
		padding: 9.09vw 0 16.23vw;
	}

	.member_plan .title_area {
		margin-bottom: 5.19vw;
	}

	.member_plan .content figure {
		width: 48%;
	}

	.member_plan .content .in {
		width: 48%;
	}

	.member_plan .content .in .title03 {
		margin-bottom: 1.8vw;
		font-size: 2.72vw;
	}

	.member_plan .content .in .btn {
		margin-top: 3.5vw;
	}

	.member_plan .content .in .btn+.btn {
		margin-top: 0.97vw;
	}

	.member_plan .content .in .btn a {
		gap: 2.2vw;
		height: 6.49vw;
		padding: 0 4.54vw;
		font-size: 1.55vw;
	}

	.member_plan .content .in .btn+.btn a {
		gap: 1.68vw;
		padding: 0 4.09vw;
	}

	.member_plan .content .in .btn a img.icon {
		width: 1.97vw;
		height: 2.11vw;
	}

	.member_plan .content .in .btn+.btn a img.icon {
		width: 2.92vw;
		height: 2.31vw;
	}

	.member_plan .content .in .btn a .arrow img {
		right: 2.91vw;
		width: 1.18vw;
		height: 1.03vw;
	}
}

@media screen and (max-width: 1024px) {
	.member_plan {
		padding: 16vw 0 16vw;
	}

	.member_plan .content figure {
		position: unset;
		width: 89.33vw;
		margin: 0 auto 8vw;
	}

	.member_plan .content .in {
		width: 100%;
		margin-left: 0;
	}

	.member_plan .content .in .title03 {
		margin-bottom: 8vw;
		font-size: 6.13vw;
		text-align: center;
	}

	.member_plan .content .in .btn {
		margin-top: 8vw;
	}

	.member_plan .content .in .btn+.btn {
		margin-top: 2.66vw;
	}

	.member_plan .content .in .btn a {
		gap: 4.53vw;
		height: 16vw;
		padding: 0 8vw;
		font-size: 3.4vw;
	}

	.member_plan .content .in .btn a img.icon {
		width: 4.86vw;
		height: 5.2vw;
	}

	.member_plan .content .in .btn+.btn a {
		gap: 3.33vw;
		padding: 0 6.66vw;
		border: 0.4vw solid #1A2930;
	}

	.member_plan .content .in .btn+.btn a img.icon {
		width: 7.19vw;
		height: 5.7vw;
	}

	.member_plan .content .in .btn a .arrow img {
		right: 3.33vw;
		width: 4vw;
		height: 3.51vw;
	}
}

.column_content {
	padding-bottom: 230px;
}

.column_content .flex {
	justify-content: space-between;
}

.column_content .side {
	max-width: 280px;
	width: 18.18%;
}

.column_content .side .page_nav {
	position: sticky;
	top: 0;
	left: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 40px;
}

.column_content .side .page_nav.fix {
	top: 100px;
}

.column_content .side .page_nav li {
	width: 100%;
}

.column_content .side .page_nav li a {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 60px;
	padding: 0 30px;
	font-size: 1.6rem;
	color: #fff;
	font-weight: bold;
	background: #1A2930;
	border-radius: 8px;
}

.column_content .side .page_nav li a img {
	transform: rotate(90deg);
	filter: brightness(0) invert(1);
	transition: all .3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.column_content .side .page_nav li a:hover,
.column_content .side .page_nav li a.on {
	color: #1A2930;
	background: #EAC22D;
	opacity: 1;
}

.column_content .side .page_nav li a:hover img,
.column_content .side .page_nav li a.on img {
	filter: none;
}

.column_content .main_contet {
	max-width: 1200px;
	width: 77.92%;
}

.column_content .main_contet_in {
	padding-top: 40px;
}

.column_content .w_box {
	padding: 60px 100px;
	background: #fff;
}

.column_content .w_box .title02 {
	padding-bottom: 30px;
	font-size: 3rem;
	font-weight: bold;
	border-bottom: 1px solid #1A2930;
}

.column_content .w_box .in {
	padding: 30px 0;
	border-bottom: 1px solid #DEDEDE;
}

.column_content .w_box .in .title03 {
	margin-bottom: 20px;
	font-size: 2rem;
	font-weight: bold;
}

.column_content .w_box .in dt {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	padding: 0 0 0 48px;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.5;
	cursor: pointer;
}

.column_content .w_box .in .en {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 3.2rem;
	font-weight: 600;
	line-height: 1;
}

.column_content .w_box .in dt .plus {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 16px;
	height: 16px;
}

.column_content .w_box .in dt .plus:before,
.column_content .w_box .in dt .plus:after {
	content: "";
	position: absolute;
	display: block;
	width: 16px;
	height: 2px;
	background: #1A2930;
}

.column_content .w_box .in dt .plus:after {
	transform: rotate(90deg);
	transition: all .3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.column_content .w_box .in dt.on .plus:after {
	transform: rotate(0);
}

.column_content .w_box .in dd {
	display: none;
	position: relative;
	padding-left: 48px;
	margin-top: 30px;
	font-size: 1.5rem;
	line-height: 2.13;
}

.column_content .w_box .in dd .en {
	top: 0.2em;
}

@media screen and (max-width: 1700px) {
	.column_content {
		padding-bottom: 14.93vw;
	}

	.column_content .side .page_nav {
		gap: 0.64vw;
		margin-top: 2.59vw;
	}

	.column_content .side .page_nav.fix {
		top: 6.49vw;
	}

	.column_content .side .page_nav li a {
		height: 3.89vw;
		padding: 0 1.94vw;
		font-size: 1.03vw;
		border-radius: 0.51vw;
	}

	.column_content .main_contet_in {
		padding-top: 2.59vw;
	}

	.column_content .w_box {
		padding: 3.89vw 6.49vw;
	}

	.column_content .w_box .title02 {
		padding-bottom: 1.94vw;
		font-size: 1.94vw;
	}

	.column_content .w_box .in {
		padding: 1.94vw 0;
	}

	.column_content .w_box .in .title03 {
		margin-bottom: 1.29vw;
		font-size: 1.29vw;
	}

	.column_content .w_box .in dt {
		gap: 1.29vw;
		padding: 0 0 0 3.11vw;
		font-size: 1.29vw;
	}

	.column_content .w_box .in .en {
		font-size: 2.07vw;
	}

	.column_content .w_box .in dt .plus {
		width: 1.03vw;
		height: 1.03vw;
	}

	.column_content .w_box .in dt .plus:before,
	.column_content .w_box .in dt .plus:after {
		width: 1.03vw;
		height: 0.12vw;
	}

	.column_content .w_box .in dd {
		padding-left: 3.11vw;
		margin-top: 1.94vw;
		font-size: 0.97vw;
	}
}

@media screen and (max-width: 1024px) {
	.column_content {
		padding-bottom: 16vw;
	}

	.column_content .flex {
		display: block;
	}

	.column_content .side {
		max-width: none;
		width: 100%;
		margin-bottom: 4vw;
	}

	.column_content .side.sp {
		margin-bottom: 10.66vw;
	}

	.column_content .side .page_nav {
		position: unset;
		gap: 1.33vw;
		margin-top: 0;
		padding-top: 1.34vw;
	}

	.column_content .side .page_nav li {
		width: calc((100% - 1.33vw) / 2);
	}

	.column_content .side .page_nav li a {
		height: 13.33vw;
		padding: 0 4vw;
		font-size: 3.73vw;
		border-radius: 2.13vw;
	}

	.column_content .side .page_nav li a img {
		filter: brightness(0) invert(1);
	}

	.column_content .side .page_nav li a:hover,
	.column_content .side .page_nav li a.on {
		color: #fff;
		background: #1A2930;
	}

	.column_content .side .page_nav li a:hover img,
	.column_content .side .page_nav li a.on img {
		filter: brightness(0) invert(1);
	}

	.column_content .main_contet {
		max-width: none;
		width: 100%;
	}

	.column_content .main_contet_in {
		padding-top: 18vw;
		margin-top: -12.67vw;
	}

	.column_content .w_box {
		padding: 8vw 5.33vw;
	}

	.column_content .w_box .title02 {
		padding-bottom: 5.33vw;
		font-size: 4.8vw;
		text-align: center;
		border-bottom: 0.26vw solid #1A2930;
	}

	.column_content .w_box .in {
		padding: 5.33vw 0;
		border-bottom: 0.26vw solid #DEDEDE;
	}

	.column_content .w_box .in .title03 {
		margin-bottom: 2.66vw;
		font-size: 4.26vw;
	}

	.column_content .w_box .in dt {
		gap: 5.33vw;
		padding: 0 0 0 8vw;
		font-size: 4.26vw;
		line-height: 1.75;
	}

	.column_content .w_box .in .en {
		font-size: 6.66vw;
	}

	.column_content .w_box .in dt .plus {
		width: 4.26vw;
		height: 4.26vw;
	}

	.column_content .w_box .in dt .plus:before,
	.column_content .w_box .in dt .plus:after {
		width: 4.26vw;
		height: 0.53vw;
	}

	.column_content .w_box .in dd {
		padding-left: 8vw;
		margin-top: 2.66vw;
		font-size: 3.73vw;
		line-height: 1.5;
	}

	.column_content .w_box .in dd .en {
		top: 0;
	}
}


.main_contet .list {
	display: flex;
	flex-wrap: wrap;
	gap: 80px 40px;
}

.main_contet .list li {
	width: calc((100% - (40px * 2)) / 3);
}

.main_contet .list li a:hover {
	opacity: 1;
}

.main_contet .list li figure {
	position: relative;
	aspect-ratio: 1 / 0.7825;
	margin-bottom: 20px;
	border-radius: 10px;
	overflow: hidden;
}

.main_contet .list li figure img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: .5s all;
}

.main_contet .list li a:hover figure img {
	transform: scale(1.2, 1.2);
}

.main_contet .list li .flex {
	justify-content: flex-start;
	align-items: center;
	gap: 15px;
	margin-bottom: 15px;
}

.main_contet .list li .date {
	font-size: 1.4rem;
	letter-spacing: 0.05em;
}

.main_contet .list li .cat {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 30px;
	padding: 0 1em;
	font-size: 1.4rem;
	background: #fff;
	border: 1px solid #1A2930;
	border-radius: 4px;
}

.main_contet .list li .title {
	margin-bottom: 20px;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.75;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.main_contet .list li .name_area {
	gap: 10px;
	margin-bottom: 0;
}

.main_contet .list li .name_area .thumb {
	width: 36px;
	border-radius: 50%;
	overflow: hidden;
}

.main_contet .list li .name_area .name {
	font-size: 1.4rem;
}

.side .in+.in {
	margin-top: 60px;
}

.side .in .side_title {
	margin-bottom: 20px;
	font-size: 2rem;
	font-weight: bold;
}

.side .in .cat_list li+li {
	margin-top: 10px;
}

.side .in .cat_list li a {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 42px;
	padding: 0 1em;
	font-size: 1.8rem;
	background: #fff;
	border: 1px solid #1A2930;
	border-radius: 4px;
}

.side .in .author_list li+li {
	margin-top: 20px;
}

.side .in .author_list li a {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 0;
}

.side .in .author_list li a .thumb {
	width: 36px;
	border-radius: 50%;
	overflow: hidden;
}

.side .in .author_list li a .thumb img {
	width: 100%;
	height: auto;
}

.side .in .author_list li a .name {
	font-size: 1.4rem;
}

.pager {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 18px;
	margin-top: 120px;
}

.pager li span,
.pager li.en a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 52px;
	height: 52px;
	font-size: 1.8rem;
	font-weight: 600;
	border: 1px solid #1A2930;
	border-radius: 4px;
}

.pager li span {
	color: #fff;
	background: #1A2930;
}

.pager li.en a {
	background: #fff;
}

.pager li.en a:hover {
	color: #fff;
	background: #1A2930;
	opacity: 1;
}

.pager li.prev a,
.pager li.next a {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	border-left: 2px solid #1A2930;
	border-bottom: 2px solid #1A2930;
	transition: all ease-in-out 0.25s;
}

.pager li.prev a {
	margin-right: 62px;
	transform: rotate(45deg);
}

.pager li.next a {
	margin-left: 62px;
	transform: rotate(-135deg);
}

.pager li.btn a {
	padding: 0;
	justify-content: center;
}

@media screen and (max-width: 1700px) {
	.main_contet .list {
		gap: 5.19vw 2.59vw;
	}

	.main_contet .list li {
		width: calc((100% - (2.59vw * 2)) / 3);
	}

	.main_contet .list li figure {
		margin-bottom: 1.29vw;
		border-radius: 0.64vw;
	}

	.main_contet .list li .flex {
		gap: 0.97vw;
		margin-bottom: 0.97vw;
	}

	.main_contet .list li .date {
		font-size: 0.9vw;
	}

	.main_contet .list li .cat {
		height: 1.94vw;
		font-size: 0.9vw;
		border-radius: 0.25vw;
	}

	.main_contet .list li .title {
		margin-bottom: 1.29vw;
		font-size: 1.16vw;
	}

	.main_contet .list li .name_area {
		gap: 0.64vw;
	}

	.main_contet .list li .name_area .thumb {
		width: 2.33vw;
	}

	.main_contet .list li .name_area .name {
		font-size: 0.9vw;
	}

	.side .in+.in {
		margin-top: 3.89vw;
	}

	.side .in .side_title {
		margin-bottom: 1.29vw;
		font-size: 1.29vw;
	}

	.side .in .cat_list li+li {
		margin-top: 0.64vw;
	}

	.side .in .cat_list li a {
		height: 2.72vw;
		font-size: 1.16vw;
		border-radius: 0.25vw;
	}

	.side .in .author_list li+li {
		margin-top: 1.29vw;
	}

	.side .in .author_list li a {
		gap: 0.64vw;
	}

	.side .in .author_list li a .thumb {
		width: 2.33vw;
	}

	.side .in .author_list li a .name {
		font-size: 0.9vw;
	}

	.pager {
		gap: 1.16vw;
		margin-top: 7.79vw;
	}

	.pager li span,
	.pager li.en a {
		width: 3.37vw;
		height: 3.37vw;
		font-size: 1.16vw;
		border-radius: 0.25vw;
	}

	.pager li.prev a,
	.pager li.next a {
		width: 1.29vw;
		height: 1.29vw;
		border-left: 0.12vw solid #1A2930;
		border-bottom: 0.12vw solid #1A2930;
	}

	.pager li.prev a {
		margin-right: 4.02vw;
	}

	.pager li.next a {
		margin-left: 4.02vw;
	}
}

@media screen and (max-width: 1024px) {
	.main_contet .list {
		gap: 10.66vw;
	}

	.main_contet .list li {
		width: 100%;
	}

	.main_contet .list li figure {
		aspect-ratio: 1 / 0.6343283582089553;
		margin-bottom: 4vw;
		border-radius: 1.33vw;
	}

	.main_contet .list li a:hover figure img {
		transform: scale(1, 1);
	}

	.main_contet .list li .flex {
		display: flex;
		gap: 2.66vw;
		margin-bottom: 2.66vw;
	}

	.main_contet .list li .date {
		font-size: 2.93vw;
	}

	.main_contet .list li .cat {
		height: 5.73vw;
		font-size: 2.66vw;
		border: 0.26vw solid #1A2930;
		border-radius: 0.53vw;
	}

	.main_contet .list li .title {
		margin-bottom: 2.66vw;
		font-size: 3.73vw;
	}

	.main_contet .list li .name_area {
		display: flex;
		gap: 2vw;
	}

	.main_contet .list li .name_area .thumb {
		width: 10vw;
	}

	.main_contet .list li .name_area .name {
		font-size: 2.93vw;
	}

	.side .in+.in {
		margin-top: 10.66vw;
	}

	.side .in .side_title {
		margin-bottom: 5.06vw;
		font-size: 4.8vw;
		text-align: center;
	}

	.side .in .cat_list {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 1.33vw;
	}

	.side .in .cat_list li+li {
		margin-top: 0;
	}

	.side .in .cat_list li a {
		height: 7.6vw;
		font-size: 3.2vw;
		font-weight: bold;
		border: 0.26vw solid #1A2930;
		border-radius: 0.66vw;
	}

	.side .in .author_list {
		display: flex;
		flex-wrap: wrap;
		gap: 4vw 6.66vw;
	}

	.side .in .author_list li {
		width: calc((100% - (6.66vw * 3)) / 4);
	}

	.side .in .author_list li+li {
		margin-top: 0;
	}

	.side .in .author_list li a {
		flex-wrap: wrap;
		gap: 2vw;
	}

	.side .in .author_list li a .thumb {
		width: 100%;
	}

	.side .in .author_list li a .name {
		font-size: 2.93vw;
		text-align: center;
	}

	.pager {
		gap: 2.66vw;
		margin: 10.66vw 0 16vw;
	}

	.pager li span,
	.pager li.en a {
		width: 10.66vw;
		height: 10.66vw;
		font-size: 4vw;
		border: 0.26vw solid #1A2930;
		border-radius: 1.06vw;
	}

	.pager li.prev a,
	.pager li.next a {
		width: 4.2vw;
		height: 4.2vw;
		border-left: 0.4vw solid #1A2930;
		border-bottom: 0.4vw solid #1A2930;
	}

	.pager li.prev a {
		margin-right: 8vw;
	}

	.pager li.next a {
		margin-left: 8vw;
	}

	.pager li.btn a {
		width: 53.06vw;
		height: 13.33vw;
	}

	.single_content+.pager li.prev a {
		margin-right: 5.34vw;
	}

	.single_content+.pager li.next a {
		margin-left: 5.34vw;
	}
}


#reservation {
	padding: 140px 0;
	background: url(../img/factory/bg_parallax.jpg) no-repeat center center;
	background-size: cover;
	background-attachment: fixed;
}

#reservation * {
	color: #fff;
}

#reservation .left,
#reservation figure {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 100%;
}

#reservation .title_area {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	margin-bottom: 50px;
}

#reservation .title03 {
	margin-bottom: 30px;
	font-size: 4.2rem;
	font-weight: bold;
}

#reservation .btn a {
	gap: 34px;
	width: 710px;
	height: 100px;
	margin-top: 50px;
	font-size: 2.4rem;
	border: 2px solid #fff;
}

#reservation .btn a img.icon {
	position: unset;
	width: 44.98px;
	height: 35.66px;
	margin: 0;
	filter: brightness(0) invert(1);
}

#reservation .btn a:hover {
	color: #1A2930;
}

#reservation .btn a:hover img.icon {
	filter: none;
}

#reservation .btn a .arrow img {
	right: 46px;
	width: 18.23px;
	height: 16px;
}

#reservation figure {
	display: flex;
	justify-content: center;
	align-items: center;
}

#reservation figure.sp {
	display: none;
}

#reservation figure img {
	width: 45.05%;
}

@media screen and (max-width: 1700px) {
	#reservation {
		padding: 9.09vw 0;
	}

	#reservation .title_area {
		margin-bottom: 3.24vw;
	}

	#reservation .title03 {
		margin-bottom: 1.94vw;
		font-size: 2.72vw;
	}

	#reservation .btn a {
		gap: 2.2vw;
		width: 46.1vw;
		height: 6.49vw;
		margin-top: 3.24vw;
		font-size: 1.55vw;
		border: 0.12vw solid #fff;
	}

	#reservation .btn a img.icon {
		width: 2.92vw;
		height: 2.31vw;
	}

	#reservation .btn a .arrow img {
		right: 2.98vw;
		width: 1.18vw;
		height: 1.03vw;
	}
}

@media screen and (max-width: 1024px) {
	#reservation {
		padding: 16vw 0;
		background-size: cover;
		background-attachment: unset;
	}

	#reservation .flex {
		display: block;
	}

	#reservation .left,
	#reservation figure {
		width: 100%;
	}

	#reservation .title_area {
		margin-bottom: 5.19vw;
	}

	#reservation .title03 {
		margin-bottom: 8vw;
		font-size: 6.13vw;
		text-align: center;
	}

	#reservation .btn a {
		gap: 3.33vw;
		width: 100%;
		height: 16vw;
		margin-top: 8vw;
		font-size: 4vw;
		border: 0.4vw solid #fff;
	}

	#reservation .btn a img.icon {
		width: 7.19vw;
		height: 5.7vw;
	}

	#reservation .btn a .arrow img {
		right: 3.33vw;
		width: 4vw;
		height: 3.51vw;
	}

	#reservation figure {
		margin: 8vw 0;
	}

	#reservation figure.sp {
		display: flex;
	}

	#reservation figure.pc {
		display: none;
	}

	#reservation figure img {
		width: 60%;
	}
}

.btn._event a {
	pointer-events: none;
}

.btn._event a .arrow {
	display: none;
}

.sharedaddy {
	display: none;
}


.wp-fitting-table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.6}.wp-fitting-table th,.wp-fitting-table td{border:1px solid #ccc;padding:8px}.wp-fitting-table th{background:#f5f5f5;white-space:nowrap}.wp-fitting-table td:nth-child(1),.wp-fitting-table td:nth-child(2){white-space:nowrap}@media (max-width:768px){.wp-fitting-table thead{display:none;}.wp-fitting-table,.wp-fitting-table tbody,.wp-fitting-table tr,.wp-fitting-table td{display:block;width:100%}.wp-fitting-table tr{margin-bottom:16px;border:1px solid #ddd;padding:8px;background:#fff}.wp-fitting-table td{border:none;padding:4px 0}.wp-fitting-table td::before{content:attr(data-label);display:block;font-weight:bold;font-size:12px;color:#666;margin-bottom:2px}}