@charset "utf-8";

/*
 * style.css
 *
 *  version --- 1.0
 *  updated --- 2017/11/30
 */

/* !HTML5 elements
---------------------------------------------------------- */
header, 
footer, 
nav, 
section, 
aside, 
article {
    display: block;
}

/* !Reseting
---------------------------------------------------------- */
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

fieldset {
  border: none;
}

ul,
ol,
li {
	list-style: none;
}

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

table {
	border-collapse: collapse;
}

button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
}

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

input[type=radio]::-ms-check,
input[type=checkbox]::-ms-check{
	display: none;
}

select,
input[type=radio],
input[type=checkbox],
input[type=text],
input[type=password],
input[type=email],
input[type=tel],
input[type=number],
input[type=reset],
input[type=button],
input[type=submit],
textarea {
	appearance: none;
	border-radius: 0;
	font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

input[type=text]::-ms-clear,
input[type=tel]::-ms-clear,
input[type=number]::-ms-clear{
	display: none;
}

input[type=reset],
input[type=button],
input[type=submit]  {
	font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	cursor: pointer;
}

*,
*:before,
*::after {
	box-sizing: border-box;
}
/* !Clearfix
---------------------------------------------------------- */
.clearfix {
    display: block;
    min-height: 1%;
}

.clearfix:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}

* html .clearfix {
    height: 1%;
}

* { 
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
}

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

/*** タブレット 768x ~ 1300px***/
@media screen and (min-width: 768px) and (max-width: 1200px) {
    html {
        font-size: 0.83vw;
    }
}
/*** スマホ 320px ~ 767px***/
@media screen and (max-width: 767px) {
    html {
        font-size: 62.5%;
    }
}

/*** pc ***/
@media screen and (min-width: 768px) {
    .is-sp {
        display: none;
    }
}
/*** sp ***/
@media only screen and (max-width : 767px){
	.is-pc {
		display: none;
	}
}

body {
	background: #111;
	letter-spacing: 0.08em;
	color: #fff;
    font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    font-size: 1.6rem;
    -webkit-text-size-adjust: none;
    line-height: 1.5;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.font-cormorant {
	font-family: "Cormorant Garamond", serif;
	font-optical-sizing: auto;
	font-weight: 400;
}
.font-zen {
	font-family: "Zen Old Mincho", serif;
}
.font-cinzel {
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
}


/* !Base Fonts -------------------------------------------------------------- */
a {
    color: inherit;
    text-decoration: none;
}

/*** hover ***/
@media screen and (min-width: 960px) {
    a {
        transition: all 0.5s;
    }
	
    .op {
        transition: opacity 0.5s ease-out;
    }

    .op:hover {
        opacity: .7;
    }

    a[href^="tel:"] {
        cursor: default;
        pointer-events:none;
    }
}

.is-hide {
    display: none;
}



/* !wrapper
---------------------------------------------------------- */
#wrapper {
	position: relative;
	padding-top: 7.5rem;
}

/* !header
---------------------------------------------------------- */
#header {
	display: flex;
	justify-content: space-between;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 99;
	width: 100%;
	background: #111111;
}

.header-logo {
	position: relative;
	height: 7.5rem;
}
.header-logo a {
	position: absolute;
	top: 2.8rem;
	left: 4.4rem;
	width: 8rem;
}
.header-logo img {
	width: 100%;
}

.btn-menu {
	display: none;
}

#g-navi {
	display: flex;
	align-items: center;
	gap: 0 4.8rem;
	font-weight: 500;
}
#g-navi ul {
	display: flex;
	gap: 0 3.2rem;
}
#g-navi li a {
	display: flex;
}

.header-links {
	height: 100%;
}
.header-links a {
	display: inline-block;
	align-items: center;
	padding: 2.5rem 2.8rem;
	height: 100%;
	background: #593a16;
}
.header-links a.reserve{
	background: #815C31;
}


/*** hover ***/
@media screen and (min-width: 960px) {
	#g-navi li a:hover {
		text-decoration: underline;
	}
	.header-links a:hover {
		opacity: 0.7;
	}
}

/* !footer
---------------------------------------------------------- */
#footer {
	padding: 5.6rem 5rem 6.8rem;
	background: url(../img/common/bg_footer.png)no-repeat center;
	background-size: cover;
	text-align: center;
}

.foot-links {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 1.6rem 3.2rem;
	font-weight: 500;
}
.footer-logo {
	margin-top: 4.8rem;
	text-align: center;
}
#copyright {
	margin-top: 1.2rem;
	text-align: center;
	color: #BA9657;
	font-size: 1.3rem;
}

/*** hover ***/
@media screen and (min-width: 960px) {
	
	.foot-links a:hover {
		text-decoration: underline;
	}
}


/* !common
---------------------------------------------------------- */
.inner,
.inner-small {
	margin: 0 auto;
	padding: 0 5rem;
	max-width: 124rem;
}
.inner-small {
	max-width: 110rem;
}

.head-large {
	margin-bottom: 8.4rem;
	text-align: center;
}
.head-large p + p {
	margin-top: 0.8rem;
}
.head-large .eng {
	text-transform:uppercase;
	line-height: 1;
	letter-spacing: 0.1em;
	font-size: 8rem;
}
.head-large .eng .first-letter {
	display: inline-block;
	background: linear-gradient(146.81deg, #92542A 11.03%, #CB8E23 25.39%, #ECBD59 37.17%, #BC7F25 47.85%, #B87647 56.98%, #ECBD59 68.47%, #B57427 78.43%, #ECBD59 87.62%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.head-large .jap {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 0.7rem;
	letter-spacing: 0.02em;
	font-weight: 400;
}
.head-large .jap:before,
.head-large .jap:after {
	content: "";
	display: block;
	width: 2rem;
	height: 1rem;
	background: url(../img/common/icon_hd_bor_wh.svg)no-repeat center;
	background-size: 100%;
}
.head-large .jap:after {
	transform: scaleX(-1);
}

.head-middle {
	margin-bottom: 5.2rem;
	padding-bottom: 2.5rem;
	background: url(../img/common/icon_hd_bor2.svg)no-repeat center bottom;
	background-size: auto 1.3rem;
	text-align: center;
	line-height: 1;
	letter-spacing: 0.02em;
	font-weight: 500;
	font-size: 3rem;
}
.head-middle .icon {
	display: inline-block;
	vertical-align: middle;
	margin: -0.8rem 0.8rem 0 0;
}

.anchor-area {
	position: relative;
}
.anchor-area .anchor {
	position: absolute;
	top: -7.5rem;
}

.bg-graywall {
	background: url(../img/common/bg_gray.jpg)repeat-y center top;
	background-size: 100%;
	color: #111;
}
.bg-graywall .head-large .jap:before, 
.bg-graywall .head-large .jap:after {
	background-image: url(../img/common/icon_hd_bor.svg);
}


/* !page
---------------------------------------------------------- */
#main-visual {
	padding: 0 5rem;
}
#main-visual .display {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 133.6rem;
}
#main-visual .display .img {
	width: calc(50% - 0.4rem);
}
#main-visual .display .info {
	width: calc(50% - 6.8rem);
}
#main-visual .head {
	margin: -5.7rem 0 0 -100%;
	text-align: right;
}
#main-visual .head p + p {
	margin-top: 2rem;
}
#main-visual .head .eng {
	mix-blend-mode: difference; 
	text-transform: uppercase;
	letter-spacing: 0.1em;
	line-height: 1;
	font-size: 9rem;
}
#main-visual .head .jap {
	background: linear-gradient(145.29deg, #92542A 7.98%, #CB8E23 22.96%, #ECBD59 35.24%, #BC7F25 46.38%, #B87647 55.9%, #ECBD59 67.88%, #B57427 78.26%, #ECBD59 87.85%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-size: 1.8rem;
	font-weight: 500;
}
#main-visual .display .img2 {
	max-width: 57rem;
}

.top-about {
	overflow: hidden;
	position: relative;
	z-index: 2;
	padding: 19rem 0 8rem;
}
.top-about .bg {
	position: absolute;
	left: -10%;
	top: -30%;
	transform: rotate(26.24deg);
	z-index: -1;
	width: 110%;
	height: 135%;
	background: #111;
}
.top-about .bg img {
	opacity: 0.17;
	object-fit: cover;
	width: 100%;
	height: 100%;
	mix-blend-mode: lighten;
}
.top-about .display {
	position: relative;
	/*padding-left: 59.6%;*/
	padding-left: 53.6%;
}
.top-about .display .img {
	position: absolute;
	right: 60%;
	bottom: 0;
	z-index: 1;
	width: 62%;
}
.top-about .display .info p {
	margin-bottom: 2.8rem;
	line-height: 2.2;
}
.top-about .display .info p#kome{
	font-size: 1.2rem;
}
.top-about .head {
	margin-bottom: 3.6rem;
	letter-spacing: 0.04em;
	line-height: 1.5;
	color: #A87A45;
	font-size: 4rem;
	font-weight: 500;
}
.top-about .head2 {
	position: relative;
	z-index: 2;
	margin: 0 2.4rem 0 -100%;
	background: linear-gradient(90deg, #111111 -2.42%, #494949 50.66%, #111111 103.83%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	letter-spacing: 0.1em;
	text-align: right;
	text-transform: capitalize;
	line-height: 1.2;
	font-size: 8rem;
}

.top-concept {
	padding: 7.2rem 0 14rem;
}
.top-concept .display {
	display: flex;
	align-items: center;
}
.top-concept .display .logo {
	width: calc(50% - 9.8rem);
	text-align: center;
}
.top-concept .display .logo img {
	max-width: 24.8rem;
}
.top-concept .display .info {
	width: calc(50% + 9.8rem);
}
.top-concept .concept-info {
	display: flex;
	justify-content: center;
	padding: 4.8rem 2rem;
	position: relative;
}
.iframe {
	position: absolute;
	pointer-events: none;
	background: url(../img/common/icon_iframe_yell.svg)no-repeat center;
	background-size: 100%;
}
.iframe.arr1 {
	left: 0;
	top: 0;
}
.iframe.arr2 {
	right: 0;
	top: 0;
	transform: rotate(90deg);
}
.iframe.arr3 {
	right: 0;
	bottom: 0;
	transform: rotate(180deg);
}
.iframe.arr4 {
	left: 0;
	bottom: 0;
	transform: rotate(-90deg);
}
.concept-info .iframe {
	width: 5rem;
	height: 4.8rem;
}
.concept-info li {
	padding-left: 2.8rem;
	background: url(../img/common/icon_check_yell.svg)no-repeat left 0.5rem;
	background-size: 1.6rem;
	line-height: 1.3;
	font-size: 2rem;
}
.concept-info li + li {
	margin-top: 2rem;
}

.top-promise {
	overflow: hidden;
	padding: 12rem 0 16rem;
}
.top-promise .sub {
	margin-bottom: 6rem;
	text-align: center;
	letter-spacing: 0;
	line-height: 1.6;
	font-size: 1.8rem;
}
.top-promise .display-list {
	padding-top: 6.8rem;
}
.top-promise .display-list li + li {
	margin-top: 10.8rem;
}
.top-promise .display-list li {
	display: flex;
	justify-content: space-between;
}
.top-promise .display-list li:nth-of-type(even) {
	flex-direction: row-reverse;
}
.top-promise .display-list .img {
	position: relative;
	width: calc(50% - 3.4rem);
}
.top-promise .display-list .img .pic {
	position: relative;
	z-index: 2;
}
.top-promise .display-list .img .pic:before {
	content: "";
	position: absolute;
	left: 4.8rem;
	top: -2.8rem;
	width: 100%;
	height: 96%;
	border: 2px solid #A87A45;
}
.top-promise .display-list .img .mask {
	z-index: 1;
	position: absolute;
	left: 15rem;
	top: -6.8rem;
	width: 100%;
	background: #111;
}
.top-promise .display-list .img .mask img {
	opacity: 0.3;
	filter: blur(20px) grayscale(100%);
}
.top-promise .display-list li:nth-of-type(even) .img .pic:before {
	left: auto;
	right: 4.8rem;
}
.top-promise .display-list li:nth-of-type(even) .img .mask {
	left: auto;
	right: 15rem;
}
.top-promise .display-list .info {
	position: relative;
	padding: 2rem 0 0 7rem;
	width: calc(50% - 6.7rem);
	letter-spacing: 0.02em;
	line-height: 1.8;
}
.top-promise .display-list li:nth-of-type(even) .info {
	width: calc(50% - 5.7rem);
}
.top-promise .display-list .step {
	position: absolute;
	left: 0;
	top: 0;
	padding-top: 2.6rem;
	width: 6rem;
	background: url(../img/top/tit_step.svg) no-repeat center top;
	background-size: 4.5rem;
	text-align: center;
	line-height: 0.7;
	color: #A87A45;
	font-size: 5rem;
}
.top-promise .display-list .head {
	margin-bottom: 1.6rem;
	line-height: 1.33;
	font-size: 3rem;
	font-weight: 500;
}

.top-menu {
	padding: 14rem 0 18rem;
	background: url(../img/top/bg_menu.png);
}

.top-menu .head {
	line-height: 1;
	letter-spacing: 0;
	color: #A87A45;
	font-size: 2.4rem;
	font-weight: 500;
}
.top-menu .head .small {
	font-size: 1.8rem;
}

.menu-fee .th {
	padding: 0.4rem 1rem;
	background: #705A41;
	text-align: center;
}
.menu-fee .td {
	padding: 1.6rem 1rem;
	border: 1px solid #705A41;
	line-height: 1;
	text-align: center;
	font-size: 1.3rem;
}
.menu-fee .num {
	font-size: 1.8rem;
}

.top-menu .display {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.top-menu .display .img {
	width: 47.2%;
}
.top-menu .display .info {
	width: 46%;
	letter-spacing: 0.02em;
}
.top-menu .display .head {
	margin-bottom: 3.2rem;
}
.top-menu .display .txt {
	margin-top: 4rem;
	line-height: 2.25;
	font-size: 1.4rem;
}
.top-menu .menu-col {
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
}
.top-menu .menu-col li {
	width: calc(50% - 1rem);
}
.top-menu .menu-col li:first-child {
	width: 100%;
}
.menu-options {
	margin-top: 9.6rem;
}
.menu-options ul {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 8rem;
	margin: 0 auto;
	max-width: 94.4rem;
	letter-spacing: 0.02em;
}
.menu-options .head {
	margin-bottom: 2.4rem;
}
.menu-options .txt {
	margin-top: 3.6rem;
	line-height: 1.7;
	font-size: 1.4rem;
}
.menu-options .txt p + p {
	margin-top: 1.2rem;
}

.top-reservation {
	padding: 14rem 0;
}
.reservation-ctrl {
	display: flex;
	justify-content: center;
	margin-bottom: -1px;
}
.reservation-ctrl a {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-left: -1px;
	height: 4.8rem;
	width: 33%;
	max-width: 29.8rem;
	border: 1px solid #705A41;
	letter-spacing: 0.02em;
	text-align: center;
}
.reservation-ctrl .is-active {
	background: #705A41;
	color: #fff;
}
.reservation-box {
	position: relative;
	padding: 5.8rem 11rem 10rem;
	letter-spacing: 0.02em;
	line-height: 1.8;
	font-size: 1.8rem;
}
.reservation-box:before {
	content: "";
	clip-path: polygon(
		0 5.2rem ,5.2rem 5.2rem, 5.2rem 0%, 
		calc(100% - 5.2rem) 0%, calc(100% - 5.2rem) 5.2rem, 100% 5.2rem, 
		100% calc(100% - 5.2rem), calc(100% - 5.2rem) calc(100% - 5.2rem), calc(100% - 5.2rem) 100%,
		5.2rem 100%, 5.2rem calc(100% - 5.2rem), 0 calc(100% - 5.2rem));
	pointer-events: none;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border: 1px solid #705A41;
}
.reservation-box .iframe {
	width: 4.4rem;
	height: 4.4rem;
}
.reservation-box p.btn a{
	width: 300px;
	line-height: 60px;
	background: #593a16;
	display: block;
	text-align: center;
	color:#fff;
	margin: 25px auto 0px;
	text-decoration: none;
}
.reservation-box p.btn a:hover{
	opacity: .8;
}
.top-reservation .head {
	margin-bottom: 2.8rem;
	text-align: center;
	font-size: 2.4rem;
	font-weight: 500;
}
.reservation-sites li {
	padding-left: 1.3em;
	text-indent: -1.3em;
}
.reservation-box a {
	text-decoration: underline;
}

.top-beforeafter {
	position: relative;
	z-index: 2;
	padding: 14rem 0;
}
.top-beforeafter:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0.5;
	z-index: -1;
	width: 100%;
	height: 100%;
	background: url(../img/top/bg_beforeafter.png)no-repeat center top;
	background-size: 100%;
}
.beforeafter-swiper {
	position: relative;
	overflow: hidden;
}
.beforeafter-swiper .swiper-pagination {
	position: static;
	margin: 4.4rem 0 0;
	width: auto;
	font-size: 0;
}
.beforeafter-swiper .swiper-pagination-bullet {
	opacity: 1;
	margin: 0 0.6rem !important;
	width: 1rem;
	height: 1rem;
	background: #999;
}
.beforeafter-swiper .swiper-pagination-bullet-active {
	background: #A87A45;
}
.beforeafter-swiper .swiper-button-prev:after,
.beforeafter-swiper .swiper-button-next:after {
	display: none;
}
.beforeafter-swiper .swiper-button-prev,
.beforeafter-swiper .swiper-button-next {
	width: 3.6rem;
	height: 3.6rem;
	background: no-repeat center;
	background-size: 100%;
}
.beforeafter-swiper .swiper-button-prev {
	left: calc(50% - 62.6rem);
	background-image: url(../img/common/icon_prev.svg);
}
.beforeafter-swiper .swiper-button-next {
	right: calc(50% - 62.6rem);
	background-image: url(../img/common/icon_next.svg);
}

.beforeafter-swiper .swiper-slide {
	padding: 4.8rem 7rem 4rem;
	width: 114rem;
	height: auto;
	background: #fff;
	letter-spacing: 0.02em;
	color: #111111;
}
.beforeafter-swiper .head {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 1rem;
	margin-bottom: 3.2rem;
	text-align: center;
	line-height: 1;
	font-weight: 500;
	font-size: 2.6rem;
}
.beforeafter-swiper .head:before,
.beforeafter-swiper .head:after {
	content: "/";
}
.beforeafter-swiper .head:before {
	transform: scaleX(-1);
}
.beforeafter-swiper .display {
	display: flex;
	justify-content: space-between;
}
.beforeafter-swiper .display .img {
	width: 51.4%;
}
.beforeafter-swiper .display .info {
	padding-top: 3.2rem;
	width: 42.4%;
}
.beforeafter-flow .th {
	padding: 0.4rem;
	background: #232321;
	text-align: center;
	line-height: 1;
	color: #BA9657;
	font-size: 3rem;
	font-weight: 500;
}
.beforeafter-flow .td {
	padding: 0.8rem 3.2rem;
	background: #EDEDED;
	text-align: center;
	line-height: 1.8;
}
.beforeafter-swiper .display .beforeafter-change {
	margin-top: 4rem;
}
.beforeafter-change li {
	padding-left: 1em;
	text-indent: -1em;
	line-height: 1.8;
}
.beforeafter-change li span{
	font-size: 1.2rem;
}
.beforeafter-change .tit {
	margin-bottom: 0.8rem;
	font-size: 1.8rem;
}
.beforeafter-change .tit .cate {
	display: inline-block;
	padding: 0.8rem 2rem;
	background: #232321;
	color: #fff;
}

.top-beforeafter .analysis-point {
	display: flex;
	gap: 0 4.4rem;
	position: relative;
	padding-left: 5rem;
	margin: 2.5rem auto 0;
	max-width: 97.4rem;
}
.top-beforeafter .analysis-point .thead {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	background: #232321;
	text-align: center;
	line-height: 4.8rem;
	letter-spacing: 0.12em;
	writing-mode: tb-rl;
	writing-mode: vertical-lr; 
	color: #fff;
}
.top-beforeafter .analysis-point .item {
	position: relative;
	padding: 1.6rem 2.4rem;
	width: 50%;
	background: #EDEDED;
	font-size: 1.5rem;
}
.top-beforeafter .analysis-point .item + .item:before {
	content: "";
	position: absolute;
	left: -3rem;
	top: 50%;
	transform: translateY(-50%);
	border-left: 2rem solid #111111;
	border-top: 2.2rem solid transparent;
	border-bottom: 2.2rem solid transparent;
}

.top-reasons {
	overflow: hidden;
	padding: 14rem 0 22rem;
}
.top-reasons .reason-display {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	letter-spacing: 0.02em;
}
.reason-display .info {
	width: calc(50% + 3rem);
}
.reason-display .img {
	position: relative;
	width: calc(50% - 9rem);
}
.reason-display .img img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.reason-display .img .pic {
	position: relative;
	z-index: 2;
}
.reason-display .img .mask {
	position: absolute;
	z-index: -1;
	width: 132.7%;
	opacity: 0.45;
	filter: grayscale(100%);
}
.reason-display .img .mask img {
	opacity: 0;
}
.reason-display .head {
	padding: 2.8rem 0;
	margin-bottom: 2.8rem;
	border-bottom: 1px solid #999999;
	line-height: 1;
	font-size: 3rem;
	font-weight: 500;
}
.reason-display .head2 {
	position: absolute;
	z-index: 2;
	background: linear-gradient(90deg, #111111 -2.5%, #494949 50.62%, #111111 103.83%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	letter-spacing: 0.1em;
	line-height: 1.2;
	text-transform: capitalize‌;
	white-space: nowrap;
	word-wrap: break-word;
	word-break:break-all;
	font-size: 8rem;
	font-weight: 400;
}
.reason-display .part + .part {
	margin-top: 2.4rem;
}
.reason-display .tit {
	margin-bottom: 1.2rem;
	padding-left: 2.8rem;
	background: url(../img/common/icon_logo.svg)no-repeat left 0;
	background-size: 2rem;
	line-height: 1;
	font-size: 2rem;
	font-weight: 500;
}
.reason-display li {
    padding-left: 1em;
    text-indent: -1em;
    line-height: 1.7;
	font-size: 1.5rem;
}

.reason-display01 .img .mask {
	left: 8.4rem;
	bottom: 3.4rem;
	background: 
		radial-gradient(closest-side, transparent, #111), 
		url(../img/top/img_reason01.jpg)no-repeat center;
	background-size: cover;
}
.reason-display01 .head2 {
	left: 40%;
	bottom: -7rem;
}
.reason-display02 {
	flex-direction: row-reverse;
	margin-top: 22.7rem;
}
.reason-display02 .img .mask {
	right: 8.4rem;
	bottom: -1rem;
	background:
		radial-gradient(closest-side, transparent, #111), 
		url(../img/top/img_reason02.jpg)no-repeat center;
	background-size: cover;
}
.reason-display02 .head2 {
	left: 1.6rem;
	bottom: -6rem;
}

.js-toggle-btn {
	cursor: pointer;
}
.js-toggle-box {
	display: none;
}

.top-faq {
	padding: 16rem 0 18rem;
}
.faq-list {
	border-top: 1px solid #705A41;
}
.faq-list li {
	border-bottom: 1px solid #705A41;
	font-size: 1.8rem;
}
.faq-list li p {
	position: relative;
}
.faq-list li .quest {
	padding: 2.4rem 6.8rem 2.4rem 8.2rem;
	background: url(../img/common/icon_plus.png)no-repeat right 2.8rem center;
}
.faq-list li .quest.is-open {
	background-image: url(../img/common/icon_minus.png);
}
.faq-list li .answer {
	padding: 0 2rem 2.4rem 8.2rem;
}
.faq-list li p:before {
	position: absolute;
	left: 2.8rem;
	line-height: 1;
	font-family: "Cormorant Garamond", serif;
	font-size: 3.2rem;
	font-weight: 600;
}
.faq-list li .quest:before {
	content: "Q.";
	top: 2.2rem;
}
.faq-list li .answer:before {
	content: "A.";
	top: 0;
}


.top-contact {
	padding: 14rem 0;
	letter-spacing: 0.01em;
}
.top-contact .sub {
	margin-bottom: 3.6rem;
	text-align: center;
	line-height: 1;
	font-size: 3rem;
	font-weight: 500;
}
.contact-sns {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 3.6rem;
}
.contact-sns .item {
	padding: 6.8rem 2rem 5.8rem;
	background: #232321;
	border: 1px solid #705A41;
}
.contact-sns .head-middle {
	background-image: url(../img/common/icon_hd_bor3.svg);
	font-size: 2.6rem;
}
.contact-sns .email {
	margin-bottom: 5.5rem;
	text-align: center;
	font-size: 3rem;
}
.contact-sns .notes {
	margin: 0 auto;
	max-width: 38.6rem;
	line-height: 1.8;
}
.contact-sns .code {
	text-align: center;
}

.top-access {
	padding: 14rem 0;
	letter-spacing: 0.02em;
}
.top-access .display {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.top-access .display .info {
	width: calc(50% - 4.6rem);
}
.top-access .display .img {
	width: calc(50% - 13.2rem);
}
.top-access .head {
	margin-bottom: 2rem;
	line-height: 1;
	color: #BA9657;
	font-size: 2.8rem;
}
.top-access .access-info {
	border-top: 1px solid #999;
}
.top-access .access-info li {
	padding: 1.6rem 0;
	border-bottom: 1px solid #999;
}

.access-map iframe {
	width: 100%;
	height: 54rem;
}

/* hover */
@media screen and (min-width: 960px) {
	.reservation-ctrl a:hover {
		background: #705A41;
		color: #fff;
	}
	.reservation-box a:hover {
		text-decoration: none;
	}
}
/*** sp ***/
@media screen and (max-width: 767px) {
	
	
	
}