/* Underline back and forth */
a:hover {
	text-decoration: none;
}
.hvr-U-back-forth {
	position: relative;
}
.hvr-U-back-forth::before, .hvr-U-back-forth::after {
	display: block;
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	border-bottom: 1px solid #fff;
	width: 100%;
}
.hvr-U-back-forth::before {
	-webkit-transition: transform 0.3s ease 0.3s;
	transition: transform 0.3s ease 0.3s;
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
	transform-origin: 100% 100%;
}
.hvr-U-back-forth::after {
	-webkit-transition: transform 0.3s ease;
	transition: transform 0.3s ease;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	transform-origin: 0 0;
}
.hvr-U-back-forth:hover::before {
	-webkit-transition: transform 0.3s ease;
	transition: transform 0.3s ease;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
}
.hvr-U-back-forth:hover::after {
	-webkit-transition: transform 0.3s ease 0.3s;
	transition: transform 0.3s ease 0.3s;
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}
.hvr-border-erase {
	position: relative;
}
.hvr-border-erase a {
	border-color: rgba(255, 255, 255, 0);
}
.hvr-border-erase a:hover {
	border-color: rgba(255, 255, 255, 0);
	transition: all 0.3s ease;
}
.hvr-border-erase .box span {
	background: #453e35;
	position: absolute;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.hvr-border-erase .box span:nth-child(1) {
	width: 100%;
	height: 1px;
	top: 0;
	left: 0;
}
.hvr-border-erase .box span:nth-child(3) {
	width: 100%;
	height: 1px;
	bottom: 0;
	right: 0;
}
.hvr-border-erase .box span:nth-child(2) {
	height: 100%;
	width: 1px;
	right: 0;
	top: 0;
}
.hvr-border-erase .box span:nth-child(4) {
	height: 100%;
	width: 1px;
	left: 0;
	bottom: 0;
}
.hvr-border-erase2 .box span {
	-webkit-transition: all 0.1s;
	transition: all 0.1s;
}
.hvr-border-erase2 .box span:nth-child(1) {
	transition-delay: 0.3s;
}
.hvr-border-erase2 .box span:nth-child(4) {
	transition-delay: 0.2s;
}
.hvr-border-erase2 .box span:nth-child(3) {
	transition-delay: 0.1s;
}
.hvr-border-erase2 .box span:nth-child(2) {
	transition-delay: 0s;
}
.hvr-border-erase2:hover .box span:nth-child(1) {
	width: 0;
	transition-delay: 0s;
}
.hvr-border-erase2:hover .box span:nth-child(4) {
	height: 0;
	transition-delay: 0.1s;
}
.hvr-border-erase2:hover .box span:nth-child(3) {
	width: 0;
	transition-delay: 0.2s;
}
.hvr-border-erase2:hover .box span:nth-child(2) {
	height: 0;
	transition-delay: 0.3s;
}

.bnr__style {
	text-align: center;
	
}
.bnr__style a {
	line-height: 1;
	display: block;
	padding: 10px 0;

}
/*=============================================
 * fadeUpBlur
 *=============================================*/
@-webkit-keyframes fadeUpBlur {
 0% {
 filter: blur(10px);
 opacity: 0;
 -webkit-transform: translate3d(0, 30px, 0);
 transform: translate3d(0, 30px, 0);
}
 to {
 filter: blur(0);
 opacity: 1;
 -webkit-transform: translateZ(0);
 transform: translateZ(0);
}
}
@keyframes fadeUpBlur {
 0% {
 filter: blur(10px);
 opacity: 0;
 -webkit-transform: translate3d(0, 30px, 0);
 transform: translate3d(0, 30px, 0);
}
 to {
 filter: blur(0);
 opacity: 1;
 -webkit-transform: translateZ(0);
 transform: translateZ(0);
}
}
.fadeUpBlur {
	-webkit-animation-name: fadeUpBlur;
	animation-name: fadeUpBlur;
	animation-duration: 2s;
	animation-delay: 0.3s;
}
.ob-img {
	background-size: cover;
	background-position: center center;
	position: relative;
}
.ob-img img {
	object-fit: cover;
	width: 100% !important;
	height: 100% !important;
}
.cl-brown {
	color: #ad9369;
}
.fz16 {
	font-size: 16px;
}
.fz17 {
	font-size: 17px;
}
.fz18 {
	font-size: 18px;
}
.fz19 {
	font-size: 19px;
}
.fz20 {
	font-size: 20px;
}
.fz24 {
	font-size: 24px;
}
.fz26 {
	font-size: 26px;
}
.fz30 {
	font-size: 30px;
}

@media screen and (max-width: 767px) {
.fz16 {
	font-size: 14px;
}
.fz17 {
	font-size: 15px;
}
.fz18 {
	font-size: 16px;
}
.fz19 {
	font-size: 17px;
}
.fz20 {
	font-size: 18px;
}
.fz24 {
	font-size: 20px;
}
.fz26 {
	font-size: 22px;
}
.fz30 {
	font-size: 25px;
}
	
}

@media screen and (min-width: 768px) {
.d__flex {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
.d__flex.jus {
	justify-content: space-between;
}
	
	.d__flex.dir {
		flex-direction: row-reverse;
	}	
	
.ob-img img {
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
}
}
.ft-reserve {
	position: fixed;
	top: 280px;
	right: 15px;
	width: 70px;
	transition: all .4s ease;
	
	z-index: 123;
}
.ft-reserve__bg {
	background: url(../img/shared/bg02.jpg);
}
.ft-reserve ul {
	padding: 0 5px;
}
.ft-reserve ul li {
	text-align: center;
}
.ft-reserve ul li a {
	color: #fff;
	font-size: 16px;
	display: block;
	line-height: 64px;
	letter-spacing: 0.05em;
}
.ft-reserve ul li a:hover {
	color: #ad9369;
	text-decoration: none;
}
.ft-reserve ul li + li {
	border-top: 1px solid #7a6748;
}

.ft-reserve .reserve__tel {
	opacity: 0;
	visibility: hidden;
	margin-top: 8px;
	transition: all .4s ease;
}
.fixed-btn .ft-reserve .reserve__tel {
	opacity: 1;
	visibility: visible;
	
	
}
.fixed-btn .ft-reserve {
	top: 125px;
}


.reserve-common {
	background: url(../img/shared/bg02.jpg);
	box-sizing: border-box;
	padding: 0 13px;
	text-align: center;
}
.reserve-common img {
	width: auto;
}
.reserve-common ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	padding: 11px 0;
	line-height: 31px;
	border-top: 1px solid #7a6748;
}
.reserve-common ul li {
	width: 50%;
	position: relative;
}
.reserve-common ul li a {
	display: block;
	text-align: center;
	font-size: 19px;
	color: #ffffff;
	letter-spacing: 0.1em;
}
.reserve-common ul li a:hover {
	text-decoration: none;
	color: #ad9369;
}
.reserve-common ul li + li::before {
	content: "";
	border-left: 1px solid #ffffff;
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	bottom: 0;
}

@media screen and (max-width: 767px) {
.reserve-common ul li a {

	font-size: 16px;

}	
}

.header-box {
	padding: 80px 70px 0px;
	box-sizing: border-box;
	position: relative;
}
.header-box h1 {
	position: absolute;
	width: 70px;
	line-height: 1.6;
	color: #788298;
	font-size: 12px;
	left: 0;
	top: 220px;
	height: 611px;
	background: #2b303b;
	z-index: 2;
	padding-bottom: 190px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
}
.header-box h1::after {
	content: "";
	border-left: 1px solid #ffffff;
	width: 1px;
	left: 50%;
	margin-left: -1px;
	height: 160px;
	bottom: 30px;
	position: absolute;
}
.header-box .logo {
	width: 270px;
	margin-bottom: 39px;
	padding-left: 35px;
}

@media screen and (max-width: 767px) {
.header-box {
	padding: 69px 8vw 0px;
}
.header-box h1 {
	position: relative;
	width: auto;
	line-height: 1.6;
	font-size: 12px;
	left: 0;
	top: auto;
	height: auto;
	background: transparent;
	padding-bottom: 0;
	text-align: center;
	margin-bottom: 4vw;
	display: block;
}
.header-box h1::after {
	display: none;
}
.header-box .logo {
	width: 50vw;
	margin: 0 auto 5vw;
	padding-left: 0;
}
}
.header__menu {
	position: absolute;
	top: 59px;
	right: 95px;
	z-index: 2;
	width: 590px;
}
.header__menu nav {
	margin-bottom: 39px;
	letter-spacing: 1.6px;
}
.header__menu nav ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	gap: 22px;
}
.header__menu nav ul a {
	display: block;
	text-align: center;
	line-height: 1;
	position: relative;
}
.header__menu nav ul a.active, .header__menu nav ul a:hover {
	text-decoration: none;
}
.header__menu nav ul a.active small, .header__menu nav ul a:hover small {
	opacity: 1;
	visibility: visible;
}
.header__menu nav ul a span {
	font-family: "Cormorant Garamond";
	font-style: normal;
	font-weight: 500;
	font-size: 18px;
	display: block;
	padding: 6px 5px;
}
.header__menu nav ul a small {
	color: #ad9369;
	font-size: 12px;
	border-top: 1px solid #ad9369;
	position: absolute;
	top: 100%;
	left: 0;
	transition: all .4s ease;
	letter-spacing: 0;
	padding: 6px 0px;
	display: block;
	right: 0;
	opacity: 0;
	visibility: hidden;
}
.header__menu .sns {
	text-align: right;
	padding-right: 0;
	line-height: 1;
}
.header__menu .sns ul li {
	display: inline-block;
	padding: 0 15px;
	position: relative;
	font-size: 16px;
}
.header__menu .sns ul li a:hover {
	text-decoration: none;
	opacity: .5;
}
.header__menu .sns ul li + li::before {
	content: "";
	width: 1px;
	height: 12px;
	position: absolute;
	top: 50%;
	margin-top: -6px;
	left: -2px;
	border-left: 1px solid #fff;
}
.header__right {
	position: absolute;
	z-index: 2;
	top: 226px;
	right: 98px;
}
.header__right-tel {
	line-height: 1;
	font-size: 12px;
	text-align: right;
	letter-spacing: 0.5px;
}
.header__right-tel dl {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-bottom: 18px;
	padding-right: 10px;
}
.header__right-tel dl dt {
	font-size: 12px;
	padding-right: 14px;
	letter-spacing: 0;
}
.header__right-tel dl dd {
	font-size: 22px;
	padding-left: 20px;
	position: relative;
	letter-spacing: 2px;
}
.header__right-tel dl dd::before {
	content: "";
	background: url(../img/shared/icon_tel.png) no-repeat;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
	width: 12px;
	height: 17px;
	position: absolute;
	top: 50%;
	margin-top: -8px;
	left: 2px;
}
#head-key {
	position: relative;
}
#head-key .ob-img {
	height: 90vw;
}



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

#head-key .ob-img {
	height: 840px;
}


}

.nav-header {
	z-index: 123;
	background: #2b303b;
}
.nav-header .js-scroll {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
}

@media screen and (max-width: 767px) {
.nav-header .js-scroll {
	display: block;
}
}
.js-scroll_left {
	width: 43.5%;
}
.js-scroll_left .ob-img {
	height: 100vh;
}

@media screen and (max-width: 767px) {
.js-scroll_left {
	display: none;
}
}
.js-scroll_right {
	width: 55%;
	max-width: 803px;
	margin: 0 auto;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	gap: 56px;
}

@media screen and (max-width: 767px) {
.js-scroll_right {
	width: 100%;
	max-width: 773px;
	margin: 0 auto;
	display: block;
	gap: 0;
}
}
.headerOpen__nav {
	width: 45%;
}

@media screen and (max-width: 767px) {
.headerOpen__nav {
	width: auto;
	margin-bottom: 0;
	padding-top: 20vw;
	position: relative;
}
}
.nav__main {
	margin-bottom: 0;
	letter-spacing: 1.6px;
}
.nav__main li a {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	padding: 22px 0 22px 92px;
	line-height: 1;
	position: relative;
}
.nav__main li a.active, .nav__main li a:hover {
	text-decoration: none;
}
.nav__main li a.active::before, .nav__main li a:hover::before {
	opacity: 1;
	visibility: visible;
}
.nav__main li a::before {
	content: "";
	background: #676055;
	height: 1px;
	width: 100%;
	position: absolute;
	bottom: 11px;
	left: 0;
	right: 0;
	opacity: 0;
	visibility: hidden;
	transition: all .4s ease;
}
.nav__main li a span {
	font-size: 30px;
	width: 141px;
	display: inline-block;
	font-family: "Cormorant Garamond";
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
}
.nav__main li a small {
	font-size: 16px;
	color: #ad9369;
	width: 118px;
}
.nav__main li + li {
	margin-top: 0;
}

@media screen and (max-width: 767px) {
.nav__main {
	width: 65vw;
}
.nav__main li a {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	padding: 15px 0 15px 40px;
}
.nav__main li a::before {
	bottom: 3px;
	left: 0;
	right: 0;
	width: 90%;
}
.nav__main li a span {
	font-size: 22px;
	width: 93px;
	margin-right: 15px;
}
.nav__main li a small {
	font-size: 13px;
	letter-spacing: 0.05em;
}
.nav__main li + li {
	margin-top: 0;
}
}
.nav__sub {
	padding-left: 73px;
	padding-top: 30px;
	letter-spacing: 1.6px;
}
.nav__sub li {
	display: inline-block;
	padding: 0 19px;
	position: relative;
	font-size: 23px;
}



.nav__sub li a {
	transition: all .4s ease;
}
.nav__sub li a:hover {
	text-decoration: none;
	opacity: .5;
}
.nav__sub li + li::before {
	content: "";
	width: 1px;
	height: 17px;
	position: absolute;
	top: 50%;
	margin-top: -6px;
	left: 0;
	border-left: 1px solid #fff;
}

@media screen and (max-width: 767px) {
.nav__sub {
	padding-left: 22px;
	padding-top: 10px;
}
.nav__sub li {
	padding: 0 18px;
	font-size: 18px;
}
.nav__sub li + li::before {
	height: 16px;
	margin-top: -8px;
	left: -2px;
}
}
.headerOpen-tel {
	text-align: center;
}
.headerOpen-tel dl {
	line-height: 1;
	margin-bottom: 14px;
}
.headerOpen-tel dl dt {
	font-size: 15px;
	margin-bottom: 13px;
}
.headerOpen-tel dl dd {
	font-size: 27px;
}
.headerOpen-tel dl dd span {
	display: inline-block;
	padding-left: 22px;
	position: relative;
	letter-spacing: 3px;
}
.headerOpen-tel dl dd span::before {
	content: "";
	background: url(../img/shared/icon_tel.png) no-repeat;
	width: 16px;
	height: 22px;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
	position: absolute;
	top: 4px;
	left: 0;
}
.headerOpen-tel p {
	font-size: 15px;
	line-height: 26px;
	letter-spacing: 0px;
}

@media screen and (max-width: 767px) {
.headerOpen-tel {
	text-align: center;
}
.headerOpen-tel dl {
	margin-bottom: 14px;
}
.headerOpen-tel dl dt {
	font-size: 15px;
	margin-bottom: 13px;
}
.headerOpen-tel dl dd {
	font-size: 27px;
}
.headerOpen-tel dl dd span {
	display: inline-block;
	padding-left: 22px;
	letter-spacing: 3px;
}
.headerOpen-tel dl dd span::before {
	width: 14px;
	height: 20px;
	position: absolute;
	top: 6px;
	left: 0;
}
.headerOpen-tel p {
	font-size: 14px;
	line-height: 24px;
}
}
.headerOpen__info {
	width: 38%;
	padding-top: 162px;
	text-align: center;
}
.headerOpen__info .reserve-common {
	margin-bottom: 48px;
}
.headerOpen__info .headerOpen-tel {
	margin-bottom: 89px;
}
.headerOpen__info .headerOpen-tel dl {
	line-height: 1;
	margin-bottom: 14px;
}
.headerOpen__info .headerOpen-tel dl dt {
	margin-bottom: 13px;
	letter-spacing: 0.1em;
}
.headerOpen__info .logos {
	width: 270px;
	margin: 0 auto;
}

@media screen and (max-width: 767px) {
.nav__sns {
	
position: absolute;
	
bottom: 4px;
	
right: 20px;
}	
.nav__sns ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	}
	.nav__sns ul li {
    width: 30px;
    margin: 0 10px;
}
	.nav__sns ul li + li {
		margin-left: 20px;
	}
.headerOpen__info {
	width: 268px;
	padding: 0;
	margin: 0 auto;
}
.headerOpen__info .reserve-common {
	margin-bottom: 10vw;
}
.headerOpen__info .headerOpen-tel {
	margin-bottom: 0;
}
.headerOpen__info .headerOpen-tel dl {
	margin-bottom: 4vw;
}
.headerOpen__info .headerOpen-tel dl dt {
	margin-bottom: 2vw;
}
.headerOpen__info .logos {display: none;}
}
footer {
	background: #15171d;
	padding: 100px 0 80px;
	color: #fff;
	    z-index: 5;
	letter-spacing: 1.6px;
	box-sizing: border-box;
}
footer a {
	transition: all .4s ease;
}
footer .wrap {
	max-width: 1200px;
}
footer .set1 {
	margin-bottom: 63px;
}
footer .set1 .footer__left {
	width: 204px;
	margin-left: -9px;
}
footer .set1 .footer__left .reserve-common {
	margin-bottom: 30px;
	padding: 0 8px;
}
footer .set1 .footer__left .reserve-common ul {
    padding: 9px 0;
}
footer .set1 .footer__left .reserve-common ul li {}
footer .set1 .footer__left .reserve-common ul li a {
	font-size: 17px;
}
footer .set1 .footer__left .headerOpen-tel {
	margin-bottom: 0;
}
footer .set1 .footer__left .headerOpen-tel dl {
	margin-bottom: 13px;
}
footer .set1 .footer__left .headerOpen-tel dl dt {
	font-size: 13px;
	margin-bottom: 10px;
}
footer .set1 .footer__left .headerOpen-tel dl dd {
	font-size: 23px;
}
footer .set1 .footer__left .headerOpen-tel dl dd span {
	padding-left: 20px;
}

footer .set1 .footer__left .headerOpen-tel dl dd span::before {
    width: 14px;
    left: 5px;
}

footer .set1 .footer__left .headerOpen-tel p {
	margin-bottom: 0;
	font-size: 12px;

	line-height: 20px;
	letter-spacing: 0px;
}
footer .set1 .footer__info {
	padding-top: 20px;
	width: 54%;
	letter-spacing: 1px;
}
footer .set1 .footer__info p {
	font-size: 14px;
	line-height: 20px;
}
footer .set1 .footer__info a {
	display: inline-block;
	position: relative;
}
footer .set1 .footer__info a::before {
	content: "";
	position: absolute;
	bottom: -3px;
	left: 10px;
	right: 10px;
	height: 1px;
	border-bottom: 1px solid #fff;
}
footer .set1 .footer__info a:hover::before {
	opacity: 0;
}
footer .set1 .footer__info p + p {
	margin-top: 20px;
}
footer .set1 .footer__nav {
	margin-right: -36px;
	width: 233px;
	padding-top: 14px;
}
footer .set1 .footer__nav .box-1 {
	margin-bottom: 0px;
}
footer .set1 .footer__nav ul {
	width: 36%;
}
footer .set1 .footer__nav ul li {
	line-height: 33px;
}
footer .set1 .footer__nav ul li a {
	font-size: 19px;
	transition: all .4s ease;
}
footer .set1 .footer__nav ul li a.active, footer .set1 .footer__nav ul li a:hover {
	opacity: .7;
}
footer .set1 .footer__nav ul li + li {
	margin-top: 0;
}
footer .set1 .footer__nav .nav__sub {
	width: 100%;
	padding: 0;
}
footer .set1 .footer__nav .nav__sub li {
	padding: 0 15px 0 0;
	margin-right: 15px;
	line-height: 1;
}
footer .set1 .footer__nav .nav__sub li a {
	font-size: 17px;
}
footer .set1 .footer__nav .nav__sub li + li {
	margin-top: 0;
}
footer .set1 .footer__nav .nav__sub li + li::before {
	left: -15px;
}
footer .set2 {
	position: relative;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
footer .set2 .left {
	font-size: 14px;
	padding-left: 0;
	line-height: 1;
}
footer .set2 .right {
	width: 305px;
	margin-right: -11px;
	padding-top: 4px;
}
footer .set2 .right .logo {
	width: 205px;
	margin-left: auto;
	margin-bottom: 43px;
}
footer .set2 .right address {
	color: #8f97ab;
	font-size: 14px;
	text-align: right;
	display: block;
	line-height: 1;
	letter-spacing: 1px;
}
footer .set2 #pagetop {
	width: 70px;
	position: absolute;
	top: 86px;
	left: 50%;
	transform: translateX(-50%);
	opacity: 1;
	visibility: visible;
	bottom: auto;
	right: auto;
}
footer .set2 .footer__url {
	margin-bottom: 22px;
	padding-left: 9px;
	letter-spacing: 1px;
}
footer .set2 .footer__url span {
	display: inline-block;
	position: relative;
	padding-left: 10px;
}
footer .set2 .footer__url span::before {
	content: "";
	background: url(../img/shared/icon_copy.png) no-repeat center;
	filter: brightness(1) invert(1);
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
	width: 16px;
	height: 16px;
	position: absolute;
	top: 50%;
	left: -14px;
	margin-top: -8px;
}
footer .set2 .cookies-link {
	margin-bottom: 36px;
	padding-left: 9px;
	letter-spacing: 1px;
}
footer .set2 .cookies-link span {
	display: inline-block;
	position: relative;
	padding-left: 10px;
}
footer .set2 .cookies-link span::before {
	content: "";
	background: url(../img/shared/icon_cookie.png) no-repeat center;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
	width: 15px;
	height: 15px;
	position: absolute;
	top: 50%;
	margin-top: -7px;
	left: -14px;
}
footer .set2 .cookies-link a:hover {
	opacity: .6;
}
footer .set2 #socialbuttons {
	text-align: left;
}

@media screen and (max-width: 767px) {
footer {
	padding: 15vw 0 35vw;
}
footer .set1 {
	margin-bottom: 10vw;
}
footer .set1 .footer__left {
	width: auto;
	margin: 0 auto 5vw;
	border-bottom: 1px solid #2b303b;
}
footer .set1 .footer__left .reserve-common {
	width: 204px;
	margin: 0px auto 8vw;
}
footer .set1 .footer__left .headerOpen-tel {
	margin-bottom: 0;
	padding-bottom: 10vw;
}
footer .set1 .footer__left .headerOpen-tel dl {
	margin-bottom: 10px;
}
footer .set1 .footer__left .headerOpen-tel dl dt {
	font-size: 13px;
}
footer .set1 .footer__left .headerOpen-tel dl dd {
	font-size: 23px;
}
footer .set1 .footer__left .headerOpen-tel dl dd span {

	padding-left: 20px;
}
	
	footer .set1 .footer__left .headerOpen-tel dl dd span::before {
		left: 0;
	}	
	
footer .set1 .footer__left .headerOpen-tel p {
	margin-bottom: 0;
	font-size: 12px;
	line-height: 20px;
}
footer .set1 .footer__info {
	padding-top: 5vw;
	width: auto;
	padding-bottom: 8vw;
	border-bottom: 1px solid #2b303b;
}
footer .set1 .footer__info p {
	font-size: 13px;
	letter-spacing: 0.05em;
}
footer .set1 .footer__info a {
	display: inline-block;
}
footer .set1 .footer__info a::before {
	bottom: -3px;
	left: 10px;
	right: 10px;
	height: 1px;
}
footer .set1 .footer__info p + p {
	margin-top: 3vw;
}

footer .set2 {
	display: block;
	text-align: center;
}
footer .set2 .left {
	font-size: 14px;
	border-bottom: 1px solid #2b303b;
	padding-bottom: 10vw;
}
footer .set2 .right {
	width: auto;
	margin-right: 0;
	padding-top: 10vw;
	text-align: center;
	padding-bottom: 10vw;
}
footer .set2 .right .logo {
	width: 190px;
	margin: 0 auto 10vw;
}
footer .set2 .right address {
	font-size: 13px;
	text-align: center;
}
footer .set2 #pagetop {
	width: 70px;
	position: relative;
	top: 0;
	left: 0;
	transform: translateX(0%);
	margin: 0 auto;
}
footer .set2 .footer__url {
	margin-bottom: 7vw;
}
footer .set2 .footer__url span {
}
footer .set2 .footer__url span::before {
	width: 16px;
	height: 16px;
	top: 50%;
	left: -10px;
	margin-top: -8px;
}
footer .set2 .cookies-link {
	margin-bottom: 7vw;
}
footer .set2 .cookies-link span {
	padding-left: 10px;
}
footer .set2 .cookies-link span::before {
	width: 15px;
	height: 15px;
	top: 50%;
	margin-top: -7px;
	left: -10px;
}
footer .set2 #socialbuttons {
	text-align: center;
}
}
#fixed-sp {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 321;
	background: #2b303b;
	transition: all .4s ease;
}

.menu-open #fixed-sp {
	opacity: 0;
	visibility: hidden;
}

#fixed-sp ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	text-align: center;
}
#fixed-sp ul li {
	font-size: 12px;
	padding: 12px 0 15px;
	position: relative;
	width: 18%;
	line-height: 1;
}
#fixed-sp ul li::before {
	content: "";
	position: absolute;
	top: -1px;
	left: 0;
	right: 0;
	bottom: -1px;
}
#fixed-sp ul li a {
	display: block;
}
#fixed-sp ul li span {
	display: block;
	text-align: center;
	margin-bottom: 5px;
	line-height: 1;
}
#fixed-sp ul li.ft__map::before,  #fixed-sp ul li.ft__tel::before {
	border-top: 1px solid #453e35;
	border-bottom: 1px solid #453e35;
	border-left: 1px solid #453e35;
}
#fixed-sp ul li.ft__map::before {
	border-left: none;
}
#fixed-sp ul li.ft__res,  #fixed-sp ul li.ft__web {
	background: url(../img/shared/bg02.jpg);
	width: 32%;
}
#fixed-sp ul li.ft__res::before {
	border-left: 1px solid #fff;
	top: 0;
}
#fixed-sp ul li.ft__res a {
	letter-spacing: 0.05em;
}
.bnr__shared {
	width: auto;
}
.bnr__shared a {
	text-align: right;
	display: block;
	padding-right: 10px;
	letter-spacing: 0.2em;
	line-height: 1;
	padding-bottom: 10px;
}

@media screen and (min-width: 768px) {
.bnr__shared {
	width: 450px;
}
.bnr__shared a {
	padding-right: 15px;
	letter-spacing: 4px;
}
}



@media screen and (min-width: 768px) and (max-width: 1399px) {
	.headerOpen__nav {
		width: 48%;
	}
	.nav__main li a {
		padding: 22px 0 22px 17%;
	}
	.headerOpen__info {
		width: 41%;
	}
	.nav__sub {
		padding-left: 12%;
	}
}




@media screen and (min-width: 768px) and (max-width: 1499px) {
	footer {
		padding-left: 30px;
		padding-right:30px;
	}
	footer .set1 .footer__nav {
		margin-right: 100px;
	}
	footer .set1 .footer__info {
		width: 44%;
	}
	footer .set2 .right {
		margin-right: 80px;
	}
}





