@charset "utf-8";

/* -----------------------------------------------

base

----------------------------------------------- */
html {
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	overflow-x: hidden;
}
body {
	color: #000;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-size: 1.6rem;
	-webkit-font-smoothing: antialiased;
	background-color: #fff;
	counter-reset: number 0; 
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
a {
	color: #000;
	transition: all .1s ease-out;
	cursor: pointer;
	text-decoration: underline;
}

/* -----------------------------------------------

全ページ共通

----------------------------------------------- */

.main{
	background-color: #fff;
	padding-top: 0.1rem;
}
.l-content.-beige,
.l-faqContact{
	background-color: #F5F2EF;
}
.-paddingtop0{
	padding-top: 0!important;
}
.-paddingbottom0{
	padding-bottom: 0!important;
}
.-margintop-20{
	margin-top: -2rem!important;
}
.-margintop65{
	margin-top: 6.5rem!important;
}
.-margintop50{
	margin-top: 5rem!important;
}
.-marginbottom20{
	margin-bottom: 2rem!important;
}
.-marginbottom60{
	margin-bottom: 6rem!important;
}
.bold{
	font-weight: bold;
}
.-right{
	text-align: right;
}
.-width30p{
	width: 30%;
}

/* pc */
@media print,only screen and (min-width: 768px){
	.-width230{
		width: 23rem!important;
	}
	.-marginbottom120{
		margin-bottom: 12rem!important;
	}
}
/* sp */
@media screen and (max-width: 767px){
	.main{
		padding: 0 2rem;
	}
	.-spMarginbottom7{
		margin-bottom: 7rem;
	}
	.-paddingtopsp20{
		padding-top: 2rem!important;
	}
	.-marginbottom120{
		margin-bottom: 6rem!important;
	}
}

.l-content{
	line-height: 1.866;
	font-size: 1.5rem;
	position: relative;
}

/* pc */
@media print,only screen and (min-width: 768px){

	.l-content{
		padding: 12rem 2rem;
	}
	.l-faqContact{
		padding: 6rem 2rem 6.8rem 0;
		margin-bottom: 11rem;
	}
	.l-content__inner,
	.l-faqContact__inner{
		max-width: 1080px;
		margin: 0 auto;
	}
}
/* sp */
@media screen and (max-width: 767px){
	.main{
		padding: 0 2rem;
	}
	.l-content{
		padding: 6rem 0 7rem 0;
	}
	.l-content:last-child{
		padding-bottom: 0;
	}
	.l-content.-beige{
		padding: 6rem 2rem 7rem 2rem;
		margin: 0 -2rem;
	}
	.l-faqContact{
		padding: 4rem 2rem 5rem 2rem;
		margin: 0 -2rem 0 -2rem;
	}
	.l-content:last-child{
		padding-bottom: 0;
	}
}

/* PC (768px以上)
----------------------------------------------- */
@media print, screen and (min-width: 768px) {
	html {
		font-size: 10px;
	}
	.sp {
		display: none;
	}
	a:hover {
		color: #8E3F61;
		text-decoration: none;
	}
}
/* SP (768px以下)
----------------------------------------------- */
@media screen and (max-width: 767px) {
	html {
		font-size: 2.67vw;/*375*/
	}
	.pc {
		display: none!important;
	}
	img {
		width: 100%;
		height: auto;
	}
}
/*==================================================

レイアウト

==================================================*/

/* ヘッダー
--------------------------------------------------*/

.l-header{
	color: #fff;
}
.nav-global{
	font-weight: bold;
}
.nav-global li{
	cursor: pointer;
}
.l-locationsNav__list{
	color: #918D91;
	font-size: 1.3rem;
	display: flex;
	flex-direction: column;
}
.l-locationsNav__list img{
	width: 1.3rem;
	margin-right: 0.8rem;
	vertical-align: top;
}
.l-locationsNav__list .english{
	font-size: 2rem;
	font-family: 'Marcellus', serif;
	margin-right: 0.8rem;
	vertical-align: bottom;
}
.l-locationsNav__list .japanese{
	position: relative;
	top: -0.4rem;
}
.nav-global__language{
	position: relative;
	z-index: 120;
}
ul.nav-global__languageItem{
	position: absolute;
	left: 0;
	background-color: #fff;
}
.nav-global__languageItem li{
	margin-bottom: 0.7rem;
	text-align: left;
}
.nav-global__languageItem li a{
	display: block;
	text-decoration: none;
}
/* pc */
@media print,only screen and (min-width: 1300px){

	.l-header{
		height:6.4rem;
		/* position:relative; */
		/* position:absolute; */
    position:fixed;
		left:0;
		top:0;
		width:100%;
		z-index:100;
    transition: all .5s ease;
		/* background-color: #000; */
	}
	/* .page-top .l-header{
		background-color: transparent;
	} */
  body.scrolled .l-header,
  body:not(.home) .l-header{
		background-color: rgba(0,0,0,0.8);
	}
	.l-header__logo{
		width: 17rem;
		position:absolute;
		top:50%;
		transform: translateY(-50%);
		left:3.2rem;
    /* display:none; */
    transition: all .5s ease;
    opacity:0;
	}
	.l-header__logo a{
		opacity: 1;
		transition: all .2s ease-out;
	}
	.l-header__logo a:hover{
		opacity: 0.6;
	}
	/* .page-top__logo{
		display: none;
	} */
  body.scrolled .l-header__logo,
  body:not(.home) .l-header__logo{
    /* display:block; */
    opacity:1;
	}

	.l-header__logo img{
		width: 100%;
		height: auto;
	}
	.l-header__menus{
		display: block!important;
	}
	.nav-global{
		width: calc( 100% - 21rem );
		position: absolute;
		top: 0;
		right: 0;
	}
	.nav-global>ul{
		display: flex;
		justify-content:flex-end;
		align-items: center;
		font-size: 1.3rem;
		text-align: center;
	}
	.nav-global__itemIn,
	.nav-global__itemIn2,
	.nav-global__loginIn,
  .l-locationsNav__list a{
		height:6.4rem;
		padding: 0 1.2rem;
		display: flex;
		align-items: center;
		text-decoration: none;
		color: #fff;
		white-space: nowrap;
	}
	.nav-global__itemIn{
		position: relative;
	}
	.nav-global__search>.nav-global__searchIn{
		position: static;
	}
	.nav-global__itemIn:before{
		height: 0.1rem;
		content: "";
		background-color: #fff;
		position: absolute;
		bottom: 1.6rem;
		left: 1rem;
		right: 1rem;
		transform: scale(0);
		transition: all .3s ease-out;
		opacity: 0;
	}
	.nav-global__itemIn:hover{
		color: #fff;
	}
	.nav-global__itemIn:hover:before{
		transform: scale(1);
		opacity: 1;
	}
  .nav-global__language.-sp{
    display:none;
  }
	.nav-global__locations>.nav-global__itemIn:before,
	.nav-global__language>.nav-global__itemIn:before,
	.nav-global__search>.nav-global__searchIn:before{
		display: none;
	}
	.nav-global__locations .nav-global__itemIn,
	.nav-global__language .nav-global__itemIn{
		padding-right: 2.9rem;
		position: relative;
	}
	.nav-global__locations .nav-global__itemIn:after,
	.nav-global__language .nav-global__itemIn:after{
		width: 1rem;
		height: 0.6rem;
		background: url("../images/shared/header-arrow.svg") 0 0 no-repeat;
		background-size: 100% auto;
		content: "";
		position: absolute;
		right: 1.2rem;
		top: 50%;
		transform: translateY(-50%);
		transition: all .3s ease-out;
	}
	.nav-global__locations.-open .nav-global__itemIn:after{
		transform: translateY(-50%) rotate(180deg);
	}
	.nav-global__locationsIn .nav-global__itemIn:after{
		display: none;
	}
	.nav-global__locationsIn{
		background-color: #2B272B;
		position: absolute;
		top: 6.4rem;
		left: -21rem;
		right: 0;
		padding: 6.4rem 2rem 5.4rem 2rem;
		display: none;
		z-index: 110;
	}
	.m-headerSearch{
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: 2.2rem;
	}
	.m-headerSearch__button{
		margin: 0 1.2rem;
		position: relative;
	}
	.m-headerSearch__button a{
		width: 26.6rem;
		height: auto;
		border: 1px #E2A94E solid;
		border-radius: 0.3rem;
		color: #E2A94E;
		font-size: 1.4rem;
		font-weight: bold;
		display: inline-block;
		padding: 1.6rem!important;
		transition: all .3s ease-out;
	}
	.m-headerSearch__button .nav-global__itemIn:before {
		content: none;
	}
	.m-headerSearch__button:before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		background:#AA9488;
		width: 100%;
		height: 100%;
		transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1);
		transform: scale(0, 1);
		transform-origin: left top;
		border-radius: 0.3rem;
	}
	.m-headerSearch__button:hover:before{
		transform-origin:left top;
		transform:scale(1, 1);
	}
	.m-headerSearch__button:hover .nav-global__itemIn{
		color: #fff;
		border: 1px transparent solid;
	}
	.m-headerSearch__button svg {
		vertical-align: middle;
		margin-right: 0.7rem;
      	fill: #E2A94E;
		transition: all 0.3s ease-out;
    }
    .m-headerSearch__button:hover svg {
      fill: #ffffff;
    }
	.l-locationsNav__lists{
		display: flex;
		align-items: flex-start;
		justify-content: center;
	}
	.l-locationsNav__list{
		font-size: 1.3rem;
		margin: 0 2.6rem;
	}
	.l-locationsNav__list a{
		height: auto;
	}
	.l-locationsNav__list ul{
		flex-direction: column;
		align-items: flex-start;
	}
	.l-locationsNav__list>li{
		margin-top: 1.5rem;
		text-align: left!important;
	}
	.l-locationsNav__list>li>ul>li>a{
		padding: 0.4rem 0 0.4rem 2.1rem;
	}
	.l-locationsNav__list>li>ul>li>a:hover {
		color: #8E3F61;
	}
	.nav-global__login{
		margin-right: 2.8rem;
	}
	.nav-global__language img,
	.nav-global__login img{
		width: 1.5rem;
		height: auto;
		vertical-align: middle;
		margin-right: 0.9rem;
	}
	.nav-global__search{
		position: relative;
    	 display:none;

	}
  body.home.scrolled .nav-global__search{
    display:block;
	}
	.nav-global__searchIn{
		width: 26rem;
		height: 6.4rem;
		background-color: #E2A94E;
		color: #fff;
		font-size: 1.8rem!important;
		font-weight: bold;
		display: flex;
		flex-flow: column;
		align-items: center;
		justify-content: center;
		text-decoration: none;
		cursor: pointer;
	}
	.nav-global__searchIn:hover{
		color: #fff;
	}
	.nav-global__search span{
		display: block;
	}
	.nav-global__searchInIn{
		z-index: 2;
	}
	.nav-global__search:before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		background:#AA9488;
		width: 100%;
		height: 100%;
		transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1) ,opacity .2s ease-in;
		transform: scale(0, 1);
		transform-origin: left top;
		border-radius: 0.3rem;
		opacity: 0;
	}
	.nav-global__search:hover:before{
		transform-origin:left top;
		transform:scale(1, 1);
		opacity: 1;
	}
	.m-headerSearch__button a{
		width: 26.6rem;
		height: auto;
		border: 1px #E2A94E solid;
		border-radius: 0.3rem;
		color: #E2A94E;
		font-size: 1.4rem;
		font-weight: bold;
		display: inline-block;
		padding: 1.6rem!important;
		transition: all .3s ease-out;
	}
	.nav-global__search .search-text{
		font-size: 1.1rem;
		position: relative;
	}
	.nav-global__search .search-text:before,
	.nav-global__search .search-text:after{
		width: 1.5rem;
		height: 0.1rem;
		content: "";
		background-color: #EFC27A;
		display: block;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}
	.nav-global__search .search-text:before{
		left: -2.3rem;
	}
	.nav-global__search .search-text:after{
		right: -2.3rem;
	}
	.nav-global__search br{
		display: none;
	}
	.m-hamburger{
	  display:none;
	}
	.menusLogo,
	.m-hamburger,
	.nav-header{
		display: none;
	}
	.nav-global__languageItem{
		width: 14rem;
		top: 5rem;
		padding: 1.5rem 2rem;
		display: none;
	}
	.nav-global__hotels{
		display: none;
	}
}

/* sp */
@media screen and (max-width: 1299px){
	.nav-global__locations,
	.m-headerSearch,
	.nav-global__search{
		display: none;
	}
	.l-header{
		width: 100%;
		height: 5rem;
		position:fixed;
    /* position:absolute; */
		top: 0;
		left: 0;
		z-index: 120;
    transition: all .5s ease;
	}

  body.scrolled .l-header,
  body:not(.home) .l-header{
    /* position:fixed; */
		background-color: rgba(0,0,0,0.8);
	}

  body.scrolledDown:not(.menu-open) .l-header{
    transform: translateY(-100%);
	}

	.l-header__logo{
		width: 14rem;
		position:absolute;
		top:1.2rem;
		left:1rem;
		/* display: none; */
    opacity:0;
    transition: all .5s ease;
	}
  body.scrolled .l-header__logo,
  body:not(.home) .l-header__logo{
     /* display:block;  */
     opacity:1;
	}
  .nav-global__language.-pc{
    display:none;
  }
	.nav-global__language{
		position: absolute;
		top: 1.5rem;
		right: 8rem;
	}
	.nav-global__language img{
		width: 1.5rem;
		height: auto;
		vertical-align: middle;
		position: relative;
		top: -0.1rem;
		margin-right: 0.8rem;
	}
	.nav-global__language .nav-global__itemIn{
		position: relative;
		color: #fff;
		font-size: 1.3rem;
		font-weight: bold;
		text-decoration: none;
		padding: 0 1.6rem 0 0;
	}
	.nav-global__language .nav-global__itemIn:after{
		width: 1rem;
		height: 0.6rem;
		background: url("../images/shared/header-arrow.svg") 0 0 no-repeat;
		background-size: 100% auto;
		content: "";
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	.l-header__menus{
		/* display: none; */
		background-color: #2B272B;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		/* height: calc( 100vh - 5rem ); */
		padding: 6rem 3rem;
		position:fixed;
		top:0;
		right:-2rem;
		bottom:0;
		width:30%;
		transform: translateX(100%);
		transition: transform .3s ease-out;
	}
  body.menu-open .l-header__menus{
    transform: translateX(0);
  }
.l-header__menuOverlay{
    display: block;
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-color:#fff;
    transition: opacity 0.5s ease, left 0s ease 0.5s;
    opacity:0;
    left:100%;
  }

  body.menu-open .l-header__menuOverlay{
    opacity:0.7;
    left:0;
    transition: opacity 0.5s ease
  }
	.menusLogo{
		width: 13.2rem;
		margin-bottom: 2rem;
	}
	.nav-global__itemIn{
		color: #fff;
		font-size: 1.5rem;
		font-weight: bold;
		padding: 1.5rem 0;
		display: block;
		text-decoration: none;
	}
	.nav-global__locationsIn{
		font-size: 1.3rem;
	}
	.nav-global__room{
		margin-top: 2rem;
	}
	.nav-global__room,
	.nav-global__login{
		margin-bottom: 1.5rem
	}
	.nav-global__login{
		margin-top: 2.5rem
	}
	.nav-global__room .nav-global__itemIn,
	.nav-global__login .nav-global__itemIn,
	.nav-global__loginIn{
		font-size: 1.9rem;
		font-weight: bold;
		text-align: center;
		display: block;
		padding: 1rem 0.5rem;
	}
	.nav-global__room .nav-global__itemIn{
		background-color: #E2A94E;
		border-radius: 0.3rem;
	}
	.nav-global__login .nav-global__itemIn,
	.nav-global__loginIn{
		background-color: #fff;
		color: #E2A94E;
		border-radius: 0.3rem;
	}
	.nav-global__login img{
		display: none;
	}
	.nav-header ul{
		margin-top: 4rem;
		display: flex;
		justify-content: center;
	}
	.nav-header li a{
		display: block;
		color: #fff;
		font-size: 1.2rem;
		padding: 0 1.1rem;
		text-decoration: none;
		position: relative;
	}
	.nav-header li a:before{
		width: 0.1rem;
		content: "";
		background-color: #fff;
		display: block;
		position: absolute;
		left: 0;
		top: 0.3rem;
		bottom: 0.3rem;
	}
	.nav-header li:first-child a:before{
		display: none;
	}
	.m-hamburger{
		width: 5rem;
		height: 5rem;
		position: absolute;
		top: 0;
		right: 0;
		cursor: pointer;
		z-index: 105;
	}
	.m-hamburger__lines{
		height: 60%;
		width:45%;
		margin: 20% auto 0 auto;
		position: relative;
	}
	.m-hamburger__lines>div{
		background-color: #fff;
		width:100%;
		height:0.25vw;
		transition: transform .3s ease, opacity .3s ease;
		position: absolute;
		left:0;
		top:50%;
	}
	.m-hamburger__lines>div:first-child{
		transform: translateY(-270%);
	}
	.m-hamburger__lines>div:last-child{
		transform: translateY(100%);
	}
	.menu-open .m-hamburger__lines>div:first-child{
		transform: rotate(225deg);
	}
	.menu-open .m-hamburger__lines>div:last-child{
		transform: rotate(-225deg);
	}
	.menu-open .m-hamburger{
		background-color: transparent
	}
	.menu-open .m-hamburger__lines>div{
		background-color: #fff;
	}
	.menu-open .nav-global__language{
		display: none;
	}
	ul.nav-global__languageItem{
		width: 12.5rem;
		top: 3rem;
		font-size: 1.4rem;
		padding: 1.5rem 1rem;
		display: none;
	}
}
@media screen and (max-width: 767px){
	
	.m-hamburger__lines{
		margin: 23% auto 0 auto;
	}
	.m-hamburger__lines>div{
		height:0.55vw;
	}
	.l-header__menus{
		right:0;
		width:80%;
	}
	.nav-global__login{
		margin-top: 1.5rem
	}
}

/* ソーシャルボタン
--------------------------------------------------*/

.m-follows__heading{
	color: #fff;
	text-align: center;
	font-family: 'Marcellus', serif;
}
.m-follows__list{
	display: flex;
	justify-content: center;
	align-items: center;
}
.m-follows__heading{
	font-size: 1.2rem;
	margin-bottom: 1.5rem;
}
.m-follows__list li{
	padding: 0 2rem;
}
.m-follows__list li img{
	width: 2.9rem;
}
.m-follows__list li:nth-child(2) img{
	width: 1.5rem;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-follows__list li a{
		transition: all .2s ease-out;
		opacity: 1;
	}
	.m-follows__list li a:hover{
		opacity: 0.6;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.l-follows{
		margin-top: 4rem;
	}
}


/* フッター
--------------------------------------------------*/

footer{
	background-color: #2B272B;
	color: #fff;
}
footer a{
	color: #fff;
	text-decoration: none;
}
.l-footer__copy{
	text-align:center;
}
.l-aboutNav__heading a,
.l-locationsNav__heading{
	color: #fff;
	font-weight: bold;
	text-decoration: none;
}
.l-aboutNav__heading a:hover,
.l-locationsNav__heading a:hover{
	color: #8E3F61;
}
.l-footerReserve{
	color: #E2A94E;
	font-weight: bold;
	text-align: center;
}
.l-footerReserve__button a{
	background-color: #E2A94E;
	color: #fff;
	border-radius: 0.3rem;
	display: block;
}
.l-footerReserve__button span{
	display: block;
}
.l-footerNav01{
	font-weight: bold;
}
.l-footer__copy{
	color: #918D91;
}
/* pc */
@media print,only screen and (min-width: 768px){
	footer{
		padding: 0 2rem;
	}
	.l-footer01{
		padding: 8rem 0 4rem 0;
	}
	.l-footer02{
		border-top: 1px #3C3B3C solid;
		padding: 6rem 0 7.4rem 0;
	}
	.l-footer01__inner,
	.l-footer02__inner{
		max-width: 1080px;
		margin: 0 auto;
	}
	.l-footer01__logo{
		width: 5.6rem;
		margin: 0 auto 4.5rem auto;
	}
	.l-footer01__logo a{
		opacity: 1;
		transition: all .2s ease-out;
	}
	.l-footer01__logo a:hover{
		opacity: 0.6;
	}
	.l-footer01__logo img{
		width: 100%;
	}
	.l-footer01__navs{
		display: flex;
		justify-content: space-between;
	}
	.l-footer02__inner{
		display: flex;
		justify-content: space-between;
	}
	.l-aboutNav{
		width: 29.7rem;
		margin-bottom: 2rem;
	}
	.l-locationsNav{
		width: calc( 100% - 29.7rem );
	}
	.l-aboutNav__heading,
	.l-locationsNav__heading{
		font-size: 1.5rem;
		margin-bottom: 1rem;
	}
	.l-aboutNav__heading img,
	.l-locationsNav__heading img{
		width: auto;
		height: 1.7rem;
		margin-right: 0.8rem;
		vertical-align: middle;
	}
	.l-aboutNav__list{
		font-size: 1.3rem;
	}
	.l-aboutNav__list li{
		margin-bottom: 1rem;
	}
	.l-footer01 .l-locationsNav__inner{
		display: flex!important;
		flex-wrap:wrap;
		justify-content: flex-start;
		gap:0 1.5%;
	}
	.l-footer01 .l-locationsNav__list{
		font-size: 1.3rem;
	}
	.l-footer01 .l-locationsNav__list:first-child{
		width:27rem;
	}
	.l-footer01 .l-locationsNav__list:nth-child(2){
		width:24.5rem;
	}
	.l-footer01 .l-locationsNav__list:last-child{
		width:24rem;
	}
	.l-footer01 .l-locationsNav__lists{
		justify-content: space-between;
	}
	.l-footer01 .l-locationsNav__list{
		margin: 0 0;
	}
	.l-footer01 .l-locationsNav__list ul{
	}
	.l-footer01 .l-locationsNav__list li{
		margin:0 0 1rem 0;
	}
	.l-footer01 .l-locationsNav__list>li>ul>li>a{
		padding: 0 0 0 2.1rem;
	}
	.l-locationsNav__listIn{
		margin-top: 0.8rem;
	}
	.l-footerReserve{
		width: 22rem;
		font-size: 1.1rem;
	}
	.l-footerReserve a{
		padding: 1.3rem 1rem 1rem 1rem;
	}
	.l-footerReserve span{
		font-size: 1.8rem;
		margin-top: 0.2rem;
	}
	.l-footerReserve__heading{
		font-size: 1.5rem;
		margin-bottom: 1.3rem;
	}
	.l-footer02__navs{
		width: 53%;
		margin: 0 1rem;
	}
	.l-footerNav01{
		font-size: 1.3rem;
		display: flex;
		justify-content: flex-start;
		margin-bottom: 1.5rem;
	}
	.l-footerNav01{
		margin-left: 1rem;
	}
	.l-footerNav01 li{
		margin-right: 2.6rem;
	}
	.l-footer02__navsIn{
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
	}
	.l-footerNav02{
		font-size: 1.1rem;
		display: flex;
		justify-content: flex-start;
		flex-wrap:wrap;
	}
	.l-footerNav02 li{
		font-size: 1.1rem;
		margin-bottom: 0.5rem;
	}
	.l-footerNav02 li a{
		position: relative;
		padding: 0 1rem;
		display: block;
	}
	.l-footerNav02 li a:before{
		width: 0.1rem;
		background-color: #fff;
		content: "";
		position: absolute;
		top: 0.2rem;
		left: 0;
		bottom: 0.2rem;
		display: block;
	}
	.l-footerNav02 li:first-child a:before{
		display: none;
	}
	.l-footer__copy{
		font-size: 1.1rem;
		margin-top: 3.5rem;
	}
	.l-footerReserve__button a{
		position: relative;
	}
	.l-footerReserve__button a:before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		background:#AA9488;
		width: 100%;
		height: 100%;
		transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1);
		transform: scale(0, 1);
		transform-origin: left top;
		border-radius: 0.3rem;
	}
	.l-footerReserve__button a:hover:before{
		transform-origin:left top;
		transform:scale(1, 1);
	}
	.l-footerReserve__buttonIn{
		position: relative;
		z-index: 2;
	}

}

/* sp */
@media screen and (max-width: 767px){
	footer a{
		display: block;
	}
	.l-footer01{
		padding: 9rem 2rem 2rem 2rem;
	}
	.l-footer02{
		padding: 0 2rem 2.6rem 2rem;
	}
	.l-footer01__logo{
		width: 5.6rem;
		margin: 0 auto 4.5rem auto;
	}
	.l-aboutNav{
		margin-bottom: 2rem;
	}
	.m-nav__button{
		width: 2.5rem;
		height: 2.5rem;
		content: "";
		border: 1px #A3A3A3 solid;
		border-radius: 50%;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.m-nav__buttonIn{
		width: 1.2rem;
		height: 1.2rem;
		position: relative;
	}
	.m-nav__buttonIn:before,
	.m-nav__buttonIn:after{
		width: 100%;
		height: 0.1rem;
		content: "";
		background-color: #A3A3A3;
		display: block;
		position: absolute;
  		transition: all .3s ease-out;
	}
	.m-nav__buttonIn:before{
		width: 100%;
		height: 0.1rem;
		top: 50%;
		transform: translateY(-50%);
	}
	.m-nav__buttonIn:after{
		width: 0.1rem;
		height: 100%;
		left: 50%;
		transform: translateX(-50%);
	}
	.l-aboutNav.-open .m-nav__buttonIn:before,
	.l-locationsNav.-open .m-nav__buttonIn:before{
	opacity:1;
	transform: translateY(-50%) rotate(360deg);
	}
	.l-aboutNav.-open .m-nav__buttonIn:after,
	.l-locationsNav.-open .m-nav__buttonIn:after{
	opacity:1;
	transform: translateX(-50%) rotate(270deg);
	}
	.l-aboutNav__heading,
	.l-locationsNav__heading{
		font-size: 1.5rem;
		margin-bottom: 1rem;
		padding: 0.5rem 2rem 0.5rem 3rem;
		position: relative;
		display: flex;
		justify-content: space-between;
		cursor: pointer;
		font-weight: bold;
	}
	.l-aboutNav.-open .m-nav__buttonIn:after,
	.l-locationsNav.-open .m-nav__buttonIn:after{
		display: block;
	}
	.l-aboutNav__heading img,
	.l-locationsNav__heading img{
		width: auto;
		height: 1.7rem;
		margin-right: 0.8rem;
		vertical-align: middle;
	}
	.l-aboutNav__list{
		font-size: 1.3rem;
	}
	.l-aboutNav__list li a{
		padding:0.8rem 3rem 0.8rem 5.1rem;
		display: block;
	}
	.l-footer01 .l-locationsNav__list{
		margin: 0 0;
	}
	.l-footer01 .l-locationsNav__list li img{
		margin-left: 3rem;
	}
	.l-footer01 .l-locationsNav__list>li>ul>li>a{
		padding:0.8rem 3rem 0.8rem 5.1rem;
	}
	.l-footer01 .l-locationsNav__listIn{
		margin: 1rem 0 2.5rem 0;
	}
	.l-footer01 .l-locationsNav__listIn:first-child{
		margin: -0.7rem 0 1rem 0;
	}
	.l-footerReserve{
		font-size: 1.4rem;
		margin-bottom: 4rem;
	}
	.l-footerReserve a{
		padding: 1.9rem 1rem 1.1rem 1rem;
	}
	.l-footerReserve span{
		font-size: 2.6rem;
	}
	.l-footerReserve__heading{
		font-size: 1.8rem;
		margin-bottom: 1.3rem;
	}
	.l-footerNav01{
		font-size: 1.3rem;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		margin:0 -2rem 4rem -2rem;
		border-top: 1px #3C3B3C solid;
		border-bottom: 1px #3C3B3C solid;
	}
	.l-footerNav01 li{
		width: 50%;
		border-left: 1px #3C3B3C solid;
		border-top: 1px #3C3B3C solid;
	}
	.l-footerNav01 li:last-child{
		width: 100%;
		border-top: 1px #3C3B3C solid;
	}
	.l-footerNav01 li:first-child,
	.l-footerNav01 li:nth-child(2){
		border-top: none;
	}
	.l-footerNav01 li:nth-child(odd){
		border-left: none;
	}
	.l-footerNav01 a{
		padding: 2.5rem 1rem;
		text-align: center;
	}
	.l-footerNav02{
		font-size: 1.1rem;
		display: flex;
		justify-content: center;
		flex-wrap:wrap;
	}
	.l-footerNav02 li{
		font-size: 1.1rem;
		margin-bottom: 1.8rem;
	}
	.l-footerNav02 li a{
		position: relative;
		padding: 0 1rem;
		display: block;
	}
	.l-footerNav02 li a:before{
		width: 0.1rem;
		background-color: #fff;
		content: "";
		position: absolute;
		top: 0.2rem;
		left: 0;
		bottom: 0.2rem;
		display: block;
	}
	.l-footerNav02 li:first-child a:before,
	.l-footerNav02 li:nth-child(3) a:before{
		display: none;
	}
	.l-follows{
		margin-top: 3rem;
	}
	.l-footer__copy{
		font-size: 1.1rem;
		margin-top: 3.5rem;
	}
}

/* メイン
--------------------------------------------------*/

.home-cover{
	position: relative;
	height:100vh;
	overflow:hidden;
}
.home-cover__slide{
  position:fixed!important;
  left:0;
  top:0;
  width:100vw;
  height:100vh;
  object-fit: cover;
  z-index:-1;
}
.home-cover__slide img{
	width: 100%;
	height:100vh;
	object-fit: cover;
}
.home-cover__slide:after{
	content: "";
	height: 13rem;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	background: linear-gradient(to bottom, rgba(0,0,0,0.7), transparent);
}
.home-cover__logo{
	position: absolute;
}
.m-emergency{
	background-color: rgba(0,0,0,0.7);
	color: #fff;
	font-size: 1.5rem;
	text-align: center;
	/* padding: 1.7rem 2rem; */
	position: absolute;
	top: 8rem;
	left: 0;
	right: 0;
  /* height:5.6rem; */
  overflow:hidden;
  white-space: nowrap;
  padding: 1.7rem;
}

.m-emergency__in{
  position:relative;
  transition: height .3s ease;
}


.m-emergency a:not(:hover){
	color: #fff;
  text-decoration:none;
}

.m-emergency img{
	width: 2.2rem;
	margin-right: 1.5rem;
	position: relative;
	top: -0.2rem;
}

.m-emergency__item{
  position: absolute;
  left:0;
  top:0;
  /* top:1.7rem; */
  width:100%;
  opacity:0;
  transition:all .3s ease;
  transform:translateY(100%);
}

.m-emergency__item.-current{
  opacity:1;
  transform:translateY(0);
}

.m-emergency__item.-after{
  opacity:0;
  transform:translateY(-100%);
}


/* pc */
@media print,only screen and (min-width: 768px){


}

/* sp */
@media screen and (max-width: 767px){
  .m-emergency{
    white-space: normal;

  }
  .m-emergency__item{
    padding:0 1rem;
  }
  

}



/* pc */
@media print,only screen and (min-width: 768px){

	.home-cover{
		overflow: hidden;
	}
	.home-cover__logo{
		width: 30.4rem;
		top: 40%;
		left: 8.3rem;
	}
}

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

	.home-cover {
		margin-bottom: 3.23rem;
	}
	.home-cover__logo{
		width: 27.1rem;
		top: 35%;
		left: 50%;
		transform: translateX(-50%);
	}
	.home-cover__scroll{
		color: #fff;
		font-size: 1.4rem;
		line-height: 2.5;
		font-family: 'Marcellus', serif;
		position: absolute;
		bottom: 13.5rem;
		left: 50%;
		transform: translateX(-50%);
		cursor: pointer;
	}
	.home-cover__scroll:after{
		width: 1px;
		/* height: 4.2rem; */
    height: 3rem;
		content: "";
		background-color: #fff;
		display: block;
		margin: 0 auto;
    animation: scrollme 1.4s ease-in-out infinite;
    position:absolute;
    left:50%;
    top:1rem;
	}

  @keyframes scrollme{
    0%{
      height:0;
      top:3rem;
      opacity: 0;
    }
    30%{
      /* height:30px; */
      /* height: 4.2rem; */
      height: 3rem;
      opacity: 1;
    }
    100%{
      height:0;
      top:9rem;
      opacity: 0;
    }
  }

.home-cover__scroll a{
		color: #fff;
		text-decoration: none;
	}
}
/* 追従ボタン
--------------------------------------------------*/
.m-reserveButton{
	position: fixed;
	z-index: 110;
}
.m-reserveButton a{
	background-color: rgba(142,63,97,0.94);
	color: #fff;
	display: block;
	text-align: center;
	font-weight: bold;
	text-decoration: none;
}
.m-reserveButton__text01:before,
.m-reserveButton__text01:after{
	content: "";
	width: 2rem;
	height: 0.1rem;
	position: absolute;
	background-color: #EFC27A;
	display: block;
	top: 50%;
	transform: translateY(-50%);
}
.m-reserveButton__text01:before{
	left: -3rem;
}
.m-reserveButton__text01:after{
	right: -3rem;
}
.m-reserveButton__text01{
	font-size: 1.2rem;
	display: inline-block;
	padding-top: 0.1rem;
	margin: 0 auto;
	position: relative;
	white-space: nowrap;
}
.m-reserveButton__text02{
	display: block;
}
.m-reserveButtonIn{
	position: relative;
	z-index: 2;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-reserveButton{
		bottom: 0;
		right: 6.5rem;
	}
	.m-reserveButton a{
		width: 32rem;
		padding: 1.5rem 0 1.2rem 0;
		border-radius: 0.3rem 0.3rem 0 0;
		display: block;
		transition: all .3s ease-out;
	}
	.m-reserveButton.-oneline a{
		padding: 2.5rem 0 2.3rem 0;
	}
	.m-reserveButton__text02{
		font-size: 2rem;
	}
	.m-reserveButton a:before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		background:#AA9488;
		width: 100%;
		height: 100%;
		transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1) ,opacity .2s ease-in;
		transform: scale(0, 1);
		transform-origin: left top;
		border-radius: 0.3rem;
	}
	.m-reserveButton a:hover:before{
		transform-origin:left top;
		transform:scale(1, 1);
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-reserveButton{
		left: 0;
		bottom: 0;
		right: 0;
	}
	.m-reserveButton a{
		padding: 1.35rem 0 0.8rem 0;
	}
	.m-reserveButton.-oneline a{
		padding: 2.2rem 0;
	}
	.m-reserveButton__text02{
		font-size: 1.8rem;
	}
	.m-reserveButton__text03{
		width: 12rem;
		height: 1.9rem;
		font-size: 1.1rem;
		display: block;
		border-radius: 1.1rem;
		padding-top: 0.1rem;
		margin: 0 auto 0.3rem auto;
		background-color: #fff;
		color: #8E3F61;
		display: block;
	}
	.m-reserveButton__text04,
	.m-reserveButton__text05{
		font-size: 1.8rem;
	}
}
/* ページトップ
--------------------------------------------------*/
.m-pagetop{
	position: fixed;
	mix-blend-mode: difference;
	z-index: 10;
  opacity:0;
  transition: opacity .3s ease;
}
.showPageTop .m-pagetop{
  opacity:1;
}
.m-pagetop img{
	width: 100%;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-pagetop{
		width: 2.5rem;
		right: 0.7rem;
		bottom: 1rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-pagetop{
		width: 2.2rem;
		right: 1rem;
		bottom: 2rem;
	}
  .m-pagetop.-widthFixedButton{
    bottom: 8.5rem;
  }

}
/* ご予約--------------------------------------------------*/

/* jsで自動で出る客室選択の見出しなどを非表示 */
.room-attributes,
.plan-attributes
{
  
  display:none;

}

.home-reserve fieldset legend,
.home-reserve .room-attributes dt
{
  display:none;
}

.home-reserve .room-attributes {
  margin-top:15px;
}

.home-reserve .room-attributes dd li{
  margin-bottom:10px;
}

input[type="text"] ,
radio,
checkbox{
	padding: 0;
	border: 0;
	border-radius: 0;
	outline: none;
	background: none;
}
select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 0;
	outline: none;
	border-radius: 0;
	background: transparent;
  cursor:pointer;
  color:#000;
}
button{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0;
	border: 0;
	outline: none;
	background: transparent;
}
.home-reserveButton{
	font-weight: bold;
  z-index: 5;
}
.home-reserveButton a{
	text-decoration: none;
}
.home-reserveButton__text02{
	color: #fff;
}
.home-reserve__in{
	color: #fff;
	font-weight: bold;
	padding: 13.9rem 2rem 0 2rem;
	box-sizing: border-box;
}

.home-reserve__overlay{
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-color:#fff;
  transition: opacity 0.5s ease, left 0s ease 0.5s;
  opacity:0;
  left:100%;
  Z-index:101;
}

body.reserve-open .home-reserve__overlay{
  opacity:0.7;
  left:0;
  transition: opacity 0.5s ease;
}

.home-reserve__text01{
    width: 12rem;
    height: 2.2rem;
    background-color: #fff;
    color: #E2A94E;
    font-size: 1.1rem;
    display: block;
    border-radius: 1.1rem;
    padding-top: 0.3rem;
    margin: 0 auto 0.8rem auto;
	text-align: center;
}
.home-reserve__text02{
    font-size: 1.4rem;
	text-align: center;
	margin-bottom: 1.7rem;
}
.home-reserve__text02 a{
  color: #fff;
}
.home-reserve__text03{
    font-size: 2rem;
	text-align: center;
	position: relative;
}
.home-reserve__text03:before,
.home-reserve__text03:after{
	width: 7.2rem;
	height: 0.1rem;
	content: "";
	background-color: rgba(255,255,255,0.2);
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.home-reserve__text03:before{
	left: 0.5rem;
}
.home-reserve__text03:after{
	right: 0.5rem;
}
.home-reserve__heading{
    font-size: 1.2rem;
	margin: 0.2rem 0;
}
.home-reserve__input{
    font-size: 1.3rem;
}
#checkin_date{
  cursor:pointer;
}
.home-reserve__input select{
	width: 100%;
	border-radius: 0.2rem;
	background:url("../images/shared/arrow-down-orange.svg") right 2rem center no-repeat;
	background-color: #fff;
	background-size: 0.9rem auto;
	padding: 1.6rem 1.6rem;
	border: none;
	font-weight: bold;
}
.home-reserve__items .home-reserve__input select{
	background-position: right 1rem center;
}
.home-reserve__input input[type="text"] {
	border-radius: 0.2rem;
	background:url("../images/shared/icon-calender.svg") right 1.65rem center no-repeat;
	background-size: 1.4rem auto;
	background-color: #fff;
	padding: 1.6rem 1.6rem;
	border: none;
	font-weight: bold;
	width: 100%;
}
.home-reserve__items{
	display: flex;
	justify-content: space-between;
	margin-top: 1rem;
}
.home-reserve__item{
	width: calc( ( 100% / 3 ) - 0.4rem );
}
.home-reserve__inputButton{
	width: 22.3rem;
	background-color: #593060;
	border-radius: 10rem;
	color: #fff;
	font-size: 1.4rem;
	margin:2rem auto 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	border: none;
	font-weight: bold;
	padding: 1.4rem 1rem;
	cursor: pointer;
}

.home-reserve__dayuse{
  margin-top:1rem;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.home-reserve__in{
		background-color: rgba(226,169,78,0.85);
		width: 33.5rem;
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		padding: 13.9rem 2rem 2rem 2rem;
    transform: translateX(100%);
    transition: transform .3s ease-out;
		z-index: 200;
    overflow-y:auto;
	}
	.home-reserve__close{
		position: absolute;
		top: 2.4rem;
		right: 2rem;
    cursor: pointer;
	}
	.home-reserveButton{
		position: absolute;
		right: -4.3rem;
		bottom: -6rem;
		border-radius: 50%;
		cursor: pointer;
	}
	.home-reserveButton a,
	.home-reserveButton__in{
		width: 24rem;
		height: 24rem;
		background-color: #E2A94E;
		border-radius: 50%;
		color: #fff;
		display: block;
		padding-top: 5.5rem;
		transition: all .3s ease-out;
		text-align: center;
	}
	.home-reserveButton__inner{
		width: 100%;
		text-align: center;
		display: inline-block;
		margin-left: -1rem;
	}
	.home-reserveButton__text01{
		width: 12rem;
		height: 2.2rem;
		background-color: #fff;
		color: #E2A94E;
		font-size: 1.1rem;
		display: block;
		border-radius: 1.1rem;
		padding-top: 0.3rem;
		margin: 0 auto;
		transition: all .3s ease-out;
	}
	.home-reserveButton__text02{
		font-size: 3.7rem;
		display: block;
		margin: 0.5rem 0 -0.3rem 0;
		transition: all .3s ease-out;
	}
	.home-reserveButton__text03{
		font-size: 1.4rem;
	}

	.home-reserveButton:hover .home-reserveButton__in{
		background-color: #fff;
		color: #C38E2C;
	}
	.home-reserveButton:hover .home-reserveButton__text01{
		background-color: #E2A94E;
		color: #fff;
	}
	.home-reserveButton:hover .home-reserveButton__text02{
		color: #C38E2C;
	}
  body.reserve-open .home-reserve__in{
    transform: translateX(0);
	}
	.home-reserve__text03{
		margin-bottom: 3rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
  .home-reserve input[type="text"],
  .home-reserve select
  {
    font-size:16px;
  }
	.home-reserve{
		padding: 3rem 0 0 0;
	}
	.home-reserve__in{
		background-color: #E2A94E;
		padding: 4rem 2rem 3rem 2rem;
	}
	.home-reserve__text03{
		margin-bottom: 1rem;
	}
	.home-reserveButton{
		position: absolute;
		left: 0;
		bottom: 0;
		right: 0;
	}
	.home-reserveButton a{
		background-color: #8E3F61;
		color: #fff;
		display: block;
		padding: 1.35rem 0 0.8rem 0;
		text-align: center;
	}
	.home-reserveButton__text01{
		width: 12rem;
		height: 1.9rem;
		background-color: #fff;
		color: #8E3F61;
		font-size: 1.1rem;
		display: block;
		border-radius: 1.1rem;
		padding-top: 0.1rem;
		margin: 0 auto 0.3rem auto;
	}
	.home-reserveButton__text02{
		font-size: 1.8rem;
	}
	.home-reserveButton__text03{
		font-size: 1.8rem;
	}
}


/* ボタンホバー左から--------------------------------------------------*/

/* pc */
@media print,only screen and (min-width: 768px){
	.m-loginModal__login button,
	.m-loginModal__login a,
	.m-loginModal__button .button,
	.home-reserve__inputButton{
		position: relative;
		overflow: hidden;
	}
	.m-loginModal__login button:before,
	.m-loginModal__login a:before,
	.m-loginModal__button .button:before,
	.home-reserve__inputButton:before{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		background:#AA9488;
		width: 100%;
		height: 100%;
		transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1);
		transform: scale(0, 1);
		transform-origin: left top;
		border-radius: 0.3rem;
	}
	.m-loginModal__login button:hover:before,
	.m-loginModal__login a:hover:before,
	.m-loginModal__button .button:hover:before,
	.home-reserve__inputButton:hover:before{
		transform-origin:left top;
		transform:scale(1, 1);
	}
	.m-loginModal__login button span,
	.m-loginModal__login a span,
	.m-loginModal__button .button span,
	.home-reserve__inputButton span{
		position: relative;
		z-index: 2;
	}
}

/* ログイン--------------------------------------------------*/
.m-loginModal__button a{
	color: #fff;
	text-decoration: none;
	display: block;
}
.m-loginModal{
  display:none;
  position:fixed;
  left:0;
  top:0;
  right:0;
  bottom:0;
  z-index:150;
}
.m-loginModal__overlay{
  background-color:#000;
  opacity:0.8;
  position:fixed;
  left:0;
  top:0;
  right:0;
  bottom:0;
}
.m-loginModal__in{
	background-color: #fff;
	padding: 9.5rem 8.8rem 7.2rem 8.8rem;
	font-weight: bold;
	margin: 0 auto;

  position:absolute;
  left:50%;
  top:50%;
  transform: translate(-50%,-50%);
}
.m-loginModal__heading{
	text-align: center;
	margin-bottom: 1.5rem;
}
.m-loginModal__heading span{
	position: relative;
	display: inline-block;
}
.m-loginModal__heading span:before,
.m-loginModal__heading span:after{
	width: 2rem;
	height: 0.1rem;
	content: "";
	background-color: #000;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.m-loginModal__heading span:before{
	left: 0;
}
.m-loginModal__heading span:after{
	right: 0;
}
.m-loginModal__login{
	text-align: center;
}
.m-loginModal__login button,
.m-loginModal__login a{
	width: 100%;
	background-color: #E2A94E;
	color: #fff;
	font-weight: bold;
	border-radius: 0.3rem;
	cursor: pointer;
}
.m-loginModal__login a{
	display: inline-block;
	text-decoration: none;
}
.m-loginModal__buttons{
	margin-top: 2rem;
}
.m-loginModal__text{
	margin-bottom: 1.5rem;
}
.m-loginModal__button{
	text-align: center;
}
.m-loginModal__button .button{
	width: 100%;
	background-color: #593060;
	color: #fff;
	font-weight: bold;
	border-radius: 0.3rem;
	cursor: pointer;
}

.m-loginModal__close{
	width: 2rem;
	height: 2rem;
	position: absolute;
	cursor: pointer;
}

/* pc */
@media print,only screen and (min-width: 768px){
	.m-loginModal__in{
		padding: 9.5rem 8.8rem 7.2rem 8.8rem;
    max-width:800px;
    width:90%;
	}
	.m-loginModal__heading{
		font-size: 1.8rem;
	}
	.m-loginModal__heading span{
		padding: 0 2.8rem;
	}
	.m-loginModal__login{
		margin-bottom: 5rem;
	}
	.m-loginModal__login button,
	.m-loginModal__login a{
		max-width: 43rem;
		font-size: 2.6rem;
		padding: 1.7rem 1rem;
	}
	.m-loginModal__buttons{
		display: flex;
		justify-content: center;
		gap:0 2.4rem;
	}
	.m-loginModal__text{
		font-size: 1.5rem;
	}
	.m-loginModal__button{
		max-width: 30rem;
		width: calc( 50% - 1.2rem );
	}
	.m-loginModal__button .button{
		font-size: 1.8rem;
		padding: 1.5rem 1rem;
	}
	.m-loginModal__close{
		top: -4.5rem;
		right: -4.5rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-loginModal__in{
		padding: 4rem 2rem;
    width: 90%;
	}
	.m-loginModal__heading{
		font-size: 1.6rem;
	}
	.m-loginModal__heading span{
		padding: 0 2rem;
	}
	.m-loginModal__heading span:before,
	.m-loginModal__heading span:after{
		width: 1.3rem;
	}
	.m-loginModal__login{
		margin-bottom: 3rem;
	}
	.m-loginModal__login button,
	.m-loginModal__login a{
		max-width: 43rem;
		font-size: 2rem;
		padding: 1.5rem 1rem;
	}
	.m-loginModal__buttons{
	}
	.m-loginModal__text{
		font-size: 1.5rem;
		margin-top: 2rem;
	}
	.m-loginModal__button{
	}
	.m-loginModal__button .button{
		font-size: 1.6rem;
		padding: 1.3rem 1rem;
	}
	.m-loginModal__close{
		top: -4rem;
		right: 0;
	}
}

/* OPTIMA カレンダー --------------------------------------------------*/

.m-calendarModal__button a{
	color: #fff;
	text-decoration: none;
	display: block;
}
.m-calendarModal{
  display:none;
  position:fixed;
  left:0;
  top:0;
  right:0;
  bottom:0;
  z-index:150;
}
.m-calendarModal__overlay{
  background-color:#000;
  opacity:0.8;
  position:fixed;
  left:0;
  top:0;
  right:0;
  bottom:0;
}
.m-calendarModal__in{
	background-color: #fff;
	padding: 9.5rem 8.8rem 7.2rem 8.8rem;
	font-weight: bold;
	margin: 0 auto;
  position:absolute;
  left:50%;
  top:50%;
  transform: translate(-50%,-50%);
}
.m-calendarModal__inin{
  /* overflow-y:scroll; */
  max-height:80vh;
}

.m-calendarModal__close{
	width: 2rem;
	height: 2rem;
	position: absolute;
	cursor: pointer;
}

/* pc */
@media print,only screen and (min-width: 768px){
	.m-calendarModal__in{
		padding: 5rem;
    max-width:800px;
    width:90%;
    /* overflow:scroll; */
	}

	.m-calendarModal__close{
		top: -4.5rem;
		right: -4.5rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-calendarModal__in{
		padding: 4rem 2rem;
    width: 90%;
	}
	.m-calendarModal__close{
		top: -4rem;
		right: 0;
	}
}

/*==================================================

共通

==================================================*/

/* ボタン--------------------------------------------------*/

.m-button{
	color: #fff;
	line-height: 1.5;
	cursor: pointer;
}
.m-button a,
button.m-button{
	border-radius: 0.3rem;
	display: inline-block;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
}
.m-button span{
	position: relative;
}
.m-button span:after{
	width: 1.3rem;
	height: 0.758rem;
	content: "";
	background: url("../images/shared/arrow-prev-white.svg") 0 0 no-repeat;
	background-size: 100% auto;
	display: block;
	position: absolute;
	top: 0.3em;
	left: -2.1rem;
}
.m-button.-arrowRight span:after{
	background: url("../images/shared/arrow-next-white.svg") 0 0 no-repeat;
	background-size: 100% auto;
	left: auto;
	right: -2.1rem;
}
.m-button.-arrowDown span:after{
	width: 0.7rem;
	height: 1.2rem;
	background: url("../images/shared/arrow-down-white.svg") 0 0 no-repeat;
	background-size: 100% auto;
	top: 0.2em;
	left: auto;
	right: -2.1rem;
}
.m-button.-map span:after{
	width: 1.2rem;
	height: 1.7rem;
	content: "";
	background: url("../images/locations/icon-map-orange.svg") 0 0 no-repeat;
	background-size: 100% auto;
	display: block;
	position: absolute;
	top: 0;
	left: -2.1rem;
}
.m-button.-arrowNone span:after{
	display: none;
}
.m-button.-purple a,
button.m-button.-purple{
	background-color: #593060;
}
.m-button.-pink a,
button.m-button.-pink{
	background-color: #8E3F61;
}
.m-button.-orange a{
	background-color: #E2A94E;
}
.m-button.-map a{
	color: #E2A94E;
	border: 1px #E2A94E solid;
}
.m-button.-down img{
	width: 0.7rem;
}
.m-button.-center{
	text-align: center;
}


/* pc */
@media print,only screen and (min-width: 768px){

	.m-button a,
	button.m-button{
		text-align: center;
		font-size: 1.8rem;
		position: relative;
		padding: 1.8rem 7rem 1.8rem 8.3rem;
	}
	.m-button.-arrowRight a,
	button.m-button.-arrowRight{
		padding: 1.8rem 8.3rem 1.8rem 7rem;
	}
	.m-button a:before,
	button.m-button:before{
		content: '';
		position: absolute;
		background:#AA9488;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1) ,opacity .2s ease-in;
		transform: scale(0, 1);
		transform-origin: left top;
		border-radius: 0.3rem;
		opacity: 1;
	}
	.m-button a:hover:before,
	button.m-button:hover:before{
		transform-origin:left top;
		transform:scale(1, 1);
		opacity: 1;
	}
	.m-button span{
		position: relative;
		z-index: 2;
	}
	.m-button.-prev img,
	.m-button.-spcenter img{
		margin-right:0.8rem;
	}
	.m-button span:after{
		transition: all .3s ease-in;
	}
	.m-button a:hover span:after,
	button.m-button:hover span:after{
		left: -2.5rem;
	}
	.m-button.-arrowRight a:hover span:after,
	.m-button.-arrowRight:hover span:after{
		right: -2.5rem;
		left: auto;
	}
	.m-button.-arrowDown a:hover span:after,
	.m-button.-arrowDown:hover span:after{
		top: 0.4em;
		right: -2.1rem;
		left: auto;
	}
	.m-button.-map a:hover span:after{
		top: 0;
		left: -2.1rem;
	}
	.m-button__wrapper{
		display: flex;
		justify-content:center;
		gap:0 1rem;
	}
	.m-button__wrapper .m-button{
		max-width: 28rem;
		width: 50%;
	}
	.m-button__wrapper.-contact .m-button{
		max-width: 39.3rem;
	}
	.m-button__wrapper.-contact .m-button a{
		padding: 1.5rem 3rem;
	}
	.m-button__wrapper .m-button a{
		width: 100%;
	}
	.m-button.-map{
		margin-top: 4.8rem!important;
	}
	.m-button.-map img{
		margin-right: 0.7rem;
	}
	.m-button.-down a:hover img{
		transform: translateY(0.3rem);
	}

}

/* sp */
@media screen and (max-width: 767px){
	.m-button span:after{
		top: 0.4em;
	}

	.m-button a,
	button.m-button{
		width: 100%;
		font-size: 1.6rem;
		padding: 1.5rem 3.8rem;
		position: relative;
		text-align: left;
	}
	/* .m-button img{
		width: 1.3rem;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 4rem;
	} */
	.m-button.-prev a,
	button.m-button.-prev{
		text-align: right;
	}
	.m-button.-prev span{
		display: block;
	}
	.m-button.-prev span:after{
		top: 0.5em;
		left: 0;
	}
	.m-button.-spcenter a{
		text-align: center;
	}
	.m-button.-spcenter span{
		vertical-align: middle;
	}
	.m-button.-map{
		margin-top: 2rem!important;
	}
	.m-button__wrapper .m-button{
		margin-top: 1.5rem;
	}
	.m-button.-arrowRight span{
		display: block;
	}
	.m-button.-arrowRight span:after{
		top: 0.7rem;
		right: 0;
		left: auto;
	}
	.m-button.-arrowDown span{
		display: block;
	}
	.m-button.-arrowDown span:after{
		top: 0.4em;
		right: 0;
		left: auto;
	}
}
/* ボタン　白抜き--------------------------------------------------*/

.m-buttonOutline a{
	border-radius: 0.3rem;
	color: #E2A94E;
	font-size: 1.4rem;
	line-height: 1.5;
	display: inline-block;
	border: 1px #E2A94E solid;
	font-weight: bold;
	text-decoration: none;
}
.m-buttonOutline svg{
	width: 1.3rem;
	fill: #E2A94E;
	vertical-align: middle;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-buttonOutline a{
		text-align: center;
		position: relative;
		padding: 1.1rem 2.2rem 1.1rem 2.5rem;
		transition: all .3s ease-out;
	}
	.m-buttonOutline a:before {
		content: '';
		position: absolute;
		background:#AA9488;
		top: -0.1rem;
		left: -0.1rem;
		right: -0.1rem;
		bottom: -0.1rem;
		transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1);
		transform: scale(0, 1);
		transform-origin: left top;
		border-radius: 0.3rem;
	}
	.m-buttonOutline a:hover:before{
		transform-origin:left top;
		transform:scale(1, 1);
	}
	.m-buttonOutline span{
		position: relative;
		z-index: 2;
	}
	.m-buttonOutline svg{
		margin-left: 0.2rem;
		position: relative;
		top: -0.1rem;
		transition: all .3s ease-out;
	}
	.m-buttonOutline a:hover{
		border: 1px transparent solid;
		color: #fff;
	}
	.m-buttonOutline a:hover svg{
		transform: translateX(0.4rem);
      	fill: #fff;
	}
}

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

	.m-buttonOutline a{
		width: 100%;
		padding: 1.3rem 2.5rem;
		position: relative;
	}
	.m-buttonOutline svg{
		width: 1.5rem;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 2.4rem;
	}
}
/* 見出し--------------------------------------------------*/

.m-heading{
	text-align: center;
	line-height: 1.5;
	margin-bottom: 4rem;
}
.m-heading.-white{
	color: #fff;
}
.m-heading .m-heading__english{
	font-size: 4rem;
	font-family: 'Marcellus', serif;
	display: block;
	line-height: 1.25;
	margin-bottom: 0.5rem;
}
.m-heading .m-heading__japanese{
	font-size: 1.5rem;
	font-weight: bold;
}
/* pc */
@media print,only screen and (min-width: 768px){


}

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


}
/* ぱんくず--------------------------------------------------*/


.m-bread__inner{
	display: flex;
	flex-wrap: wrap;
	justify-content:flex-start;
    font-size: 1.3rem;
}
.m-bread a{
    margin-right:0.8rem;
	padding-right: 1.1rem;
	background: url("../images/shared/arrow-bread.svg") right center no-repeat;
	background-size:0.4rem auto;
	text-decoration: none;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-bread{
		padding: 0 2rem;
	}
	.m-bread__inner{
		max-width: 1080px;
		margin: 3rem auto 3rem auto;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-bread__inner{
		margin:6rem 2rem 1.8rem 2rem;
	}
}
/* ページタイトル--------------------------------------------------*/

.m-pageTitle{
	line-height: 1.5;
}
.m-pageTitle__english{
	font-family: 'Marcellus', serif;
	display: block;
}
.m-pageTitle__japanese{
	display: block;
	font-weight: bold;
}

.m-pageTitle.-splist .m-pageTitle__japanese{
	font-size: 2.2rem;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-pageTitle{
		padding: 0 2rem;
	}
	.m-pageTitle__inner{
		max-width: 1080px;
		display: flex;
		flex-wrap: wrap;
		justify-content:flex-start;
		align-items: center;
		gap:0 5rem;
		margin: 16rem auto -3rem auto;
	}
	.m-pageTitle.-high .m-pageTitle__inner{
		margin-bottom: 13rem;
	}
	.m-pageTitle__english{
		font-size: 5rem;
	}
	.m-pageTitle__japanese{
		font-size: 1.8rem;
	}
	.m-pageTitle__text{
		order: 2;
	}
	.m-pageTitle__icon{
		width: 11rem;
		order: 1;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-pageTitle__inner{
		text-align: center;
		margin: 8rem -2rem -1rem -2rem;
	}
	.m-pageTitle__english{
		font-size: 3.8rem;
	}
	.m-pageTitle__japanese{
		font-size: 1.5rem;
	}
	.m-pageTitle__icon{
		width: 8.1rem;
		margin: 3rem auto 0 auto;
	}
	.m-pageTitle.-high .m-pageTitle__inner{
		margin-bottom: 3rem;
	}
}

/*==================================================

トップページ

==================================================*/

/* バナー--------------------------------------------------*/

.home-banner img{
	width: 100%;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.home-banner{
		padding: 10rem 2rem 10rem 2rem;
	}
	.home-banner__content{
		max-width: 1080px;
		margin: 0 auto;
	}
	.home-banner__content a{
		opacity: 1;
		transition: all .3s ease-out;
	}
	.home-banner__content a:hover{
		opacity: 0.8;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.home-banner{
		padding: 2rem 0;
	}
	
}
	
/* コンセプト--------------------------------------------------*/

.home-concept__content{
	position: relative;
}
.home-concept__texts,
.home-concept__image,
.home-concept__content .m-button{
	position: relative;
	z-index: 5;
}
.home-concept__heading{
	font-family: 'Marcellus', serif;
}
.home-concept__content:before,
.home-concept__content:after{
	background-color: #F5F2EF;
	content: "";
	border-radius: 1rem;
	display: block;
	position: absolute;
	z-index: 1;
}
/* pc */
@media print,only screen and (min-width: 768px){

	.home-concept{
		padding: 8.5rem 2rem 18rem 2rem;
    overflow: hidden;
	}
	.home-concept__content{
		max-width: 1080px;
		margin: 0 auto;
		display: grid;
		grid-template-rows: auto 1fr;
		grid-template-columns: 37% 63%;
	}
	.home-concept__texts{
		grid-row: 1;
	}
	.home-concept__heading{
		font-size: 4rem;
		margin:-1rem 0 2.2rem 0;
	}
	.home-concept__text{
		font-size: 1.5rem;
		line-height: 1.866;
		margin-bottom: 4.3rem;
	}
	.home-concept__image{
		margin-left: 9%;
		grid-row: 1/3;
	}
	.home-concept__image img{
		width: 100%;
	}
	.home-concept .m-button{
		margin-left: -3rem;
	}
	.home-concept__content:before{
		width: 16rem;
		height: 36rem;
		top: -8.6rem;
		left: -8.8rem;
	}
	.home-concept__content:after{
		width: 28rem;
		height: 26.4rem;
		bottom: -8rem;
		right: -8rem;
	}
}

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

	.home-concept{
		padding:5rem 0 6rem 0;
	}
	.home-concept__content{
	}
	.home-concept__texts{
	}
	.home-concept__heading{
		font-size: 4rem;
		margin-bottom: 2.5rem;
		text-align: center;
	}
	.home-concept__text{
		font-size: 1.5rem;
		line-height: 1.866;
		margin-bottom: 3rem;
	}
	.home-concept__image{
		margin-bottom: 3.5rem;
	}
	.home-concept .m-button{
	}
	.home-concept__content:before{
		width: 11.2rem;
		height: 34.6rem;
		top: -5rem;
		left: -2rem;
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
	}
	.home-concept__content:after{
		width: 12.1rem;
		height: 16.2rem;
		bottom: 3rem;
		right: -2rem;
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
	}

}

/* ABOUT CABIN
--------------------------------------------------*/

.home-about{
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
.home-about__text01{
	color: #fff;
	font-size: 1.5rem;
	line-height: 2;
	text-align: center;
}
.home-about__text02{
	color: #E2A94E;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
}
.home-about__cabin{
	background-color: rgba(0,0,0,0.4);
}
.home-about__items{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.home-about__item{
	text-align: center;
}
.home-about__caption{
	display: block;
	color: #fff;
	font-family: 'Marcellus', serif;
	font-size: 1.3rem;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.home-about{
		background-image: url("../images/home/about-bg.jpg");
		padding: 11.6rem 2rem 0 2rem;
	}
	.home-about__text01{
		margin-bottom: 5.5rem;
	}
	.home-about__text02{
		margin-bottom: 3rem;
	}
	.home-about__cabin{
		padding: 5.2rem 2rem 5.6rem 2rem;
		margin: 0 -2rem;
	}
	.home-about__item{
		margin: 0 2.4rem;
	}
	.home-about__image{
		height: 10rem;
	}
	.home-about__item img{
		max-width: 14rem;
		max-height: 8.9rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.home-about{
		background-image: url("../images/home/about-bg-sp.jpg");
		padding: 6rem 2rem 0 2rem;
		margin: 0 -2rem;
	}
	.home-about__text01{
		margin-bottom: 4rem;
	}
	.home-about__text02{
		line-height: 2.25;
		margin-bottom: 3.2rem;
	}
	.home-about__cabin{
		padding: 5rem 0rem 1rem 0rem;
		margin: 0 -2rem;
	}
	.home-about__item{
		width: 40%;
		margin-bottom: 4rem;
	}
	.home-about__image img{
		width: auto;
		height: 6.2rem;
	}
	.home-about__caption{
		margin-top: 1rem;
		font-size: 1.2rem;
	}
}

/* 施設一覧
--------------------------------------------------*/

.m-cabins__heading span{
	display: block;
}
.m-cabins__heading .english{
	font-family: 'Marcellus', serif;
	line-height: 1.33;
}
.m-cabins__heading .japanese{
	font-weight: bold;
}
.m-cabins__text{
	font-size: 1.5rem;
	line-height: 1.866;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-cabins{
		padding: 12rem 2rem;
		position: relative;
		z-index: 2;
	}
	.m-cabins__inner{
		max-width: 1080px;
		margin: 0 auto;
	}
	.m-cabins__item{
		display: grid;
		grid-template-rows: auto 1fr;
		grid-template-columns:51% 49%;
		margin-bottom: 5.6rem;
		padding: 5rem 0 5rem 0;
		position: relative;
	}
	.m-cabins__item:after{
		background-color: #F5F2EF;
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		right:0;
		left: 16.6%;
		z-index: -1;
	}
	.m-cabins__heading{
		grid-row: 1;
		grid-column: 2;
		margin:1.5rem 0 2.2rem 12%;
	}
	.m-cabins__heading .icon{
		margin-bottom: 1.6rem;
	}
	.m-cabins__heading .english{
		font-size: 3.4rem;
		margin-bottom: 0.5rem;
	}
	.m-cabins__heading .japanese{
		font-size: 1.5rem;
	}
	.m-cabins__text{
		margin-bottom: 2.5rem;
	}
	.m-cabins__texts{
		grid-row: 2;
		grid-column: 2;
		margin:0 13% 0 12%;
	}
	.m-cabins__image{
		grid-row: 1/3;
		grid-column: 1;
		display: flex;
		align-items: center;
	}
	.m-cabins__item:nth-child(even){
		grid-template-columns:49% 51%;
	}
	.m-cabins__item:nth-child(even) .m-cabins__heading{
		grid-row: 1;
		grid-column: 1;
		margin:1.5rem 0 2.2rem 10%;
	}
	.m-cabins__item:nth-child(even) .m-cabins__texts{
		grid-row: 2;
		grid-column: 1;
		margin:0 10%;
	}
	.m-cabins__item:nth-child(even) .m-cabins__image{
		  grid-row: 1/3;
		  grid-column: 2;
		text-align: right;
	}
	.m-cabins__item:nth-child(even):after{
		right:16.6%;
		left: 0;
	}
	.m-cabins__item .icon{
		max-width: 8.9rem;
		max-height: 5.6rem;
	}	
}

/* sp */
@media screen and (max-width: 767px){
	.m-cabins{
		padding: 2rem 0 0 0;
	}
	.m-cabins__item{
		background-color: #F5F2EF;
		margin-bottom: 2rem;
		padding: 4rem 3rem 3rem 3rem;
	}
	.m-cabins__item:last-child{
		margin-bottom: 0;
	}
	.m-cabins__heading{
		text-align: center;
		margin-bottom: 2.6rem;
	}
	.m-cabins__heading .icon{
		margin:0 auto 1.3rem auto;
	}
	.m-cabins__heading .english{
		font-size: 3rem;
		margin-bottom: 1rem;
	}
	.m-cabins__heading .japanese{
		font-size: 1.5rem;
	}
	.m-cabins__text{
		margin-bottom: 2.5rem;
	}
	.m-cabins__image{
		width: 100%;
		margin-bottom: 2.1rem;
	}
	.m-cabins__item .icon{
		max-width: 7.9rem;
		max-height: 5rem;
	}	
}

/* 空室検索
--------------------------------------------------*/
.m-search{
	background-color: #F5F2EF;
	font-weight: bold;
	text-align: center;
}
.m-search__text{
	color: #C38E2C;
	font-size: 1.8rem;
}
.m-search__button a{
	background-color: #E2A94E;
	border-radius: 0.3rem;
	display: inline-block;
	color: #fff;
	font-size: 1.6rem;
	margin: 0 auto;
	text-decoration: none;
}
.m-search__text01{
	position: relative;
}
.m-search__text01:before,
.m-search__text01:after{
	width: 1.9rem;
	height: 0.1rem;
}
.m-search__text02{
	font-size: 2.6rem;
	display: block;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-search{
		padding: 5rem 2rem 4.5rem 2rem;
	}
	.m-search__text{
		margin-bottom: 1.5rem;
	}
	.m-search__button a{
		width: 43rem;
		padding: 2.2rem 1rem 1.9rem 1rem;
		position: relative;
	}
	.m-search__buttonIn{
		position: relative;
		z-index: 2;
	}
	.m-search__button a:before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		background:#AA9488;
		width: 100%;
		height: 100%;
		transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1) ,opacity .2s ease-in;
		transform: scale(0, 1);
		transform-origin: left top;
		border-radius: 0.3rem;
		opacity: 0;
	}
	.m-search__button a:hover:before{
		transform-origin:left top;
		transform:scale(1, 1);
		opacity: 1;
	}
	.m-headerSearch__button a{
		width: 26.6rem;
		height: auto;
		border: 1px #E2A94E solid;
		border-radius: 0.3rem;
		color: #E2A94E;
		font-size: 1.4rem;
		font-weight: bold;
		display: inline-block;
		padding: 1.6rem!important;
		transition: all .3s ease-out;
	}
	.m-search__text01:before,
	.m-search__text01:after{
		width: 1.9rem;
		height: 0.1rem;
	}
	.m-search__text01:before{
		left: -2.6rem;
	}
	.m-search__text01:after{
		right: -2.6rem;
	}
	.m-search__text02{
		line-height: 1.3;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-search{
		padding: 3.3rem 2rem 2rem 2rem;
		margin: 0 -2rem;
	}
	.m-search__text{
		margin-bottom: 1.5rem;
	}
	.m-search__button a{
		width: 100%;
		padding: 2rem 1rem 1.4rem 1rem;
	}
	.m-search__text01:before,
	.m-search__text01:after{
		width: 1.9rem;
		height: 0.1rem;
	}
	.m-search__text01:before{
		left: -2.8rem;
	}
	.m-search__text01:after{
		right: -2.8rem;
	}
}

/* LOCATIONS
--------------------------------------------------*/

.m-locations__content{
	position: relative;
}
.m-locations.-home .m-locations__wrapper{
	border-bottom: 1px #E3DBD3 solid;
}
.m-locations__heading{
	padding: 4rem 0;
	position: relative;
	display: flex;
	justify-content: space-between;
}
.m-locations__wrapper.-open .m-locations__heading{
	border: none;
}
.m-locations__headingButton{
	width: 4.3rem;
	height: 4.3rem;
	background-color: #F5F2EF;
	content: "";
	border: 1px #E3DBD3 solid;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.m-locations__headingButtonIn{
	width: 1.2rem;
	height: 1.2rem;
	position: relative;
}
.m-locations__headingButtonIn:before,
.m-locations__headingButtonIn:after{
	width: 100%;
	height: 0.1rem;
	content: "";
	background-color: #C38E2C;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
.m-locations__headingButtonIn:before{
	width: 100%;
	height: 0.1rem;
	top: 50%;
	transform: translateY(-50%);
  transition: all .3s ease-out;
}
.m-locations__headingButtonIn:after{
	width: 0.1rem;
	height: 100%;
	left: 50%;
	transform: translateX(-50%);
  transition: all .3s ease-out;
}
.m-locations__wrapper.-open .m-locations__headingButtonIn:before{
  opacity:0;
  transform: translateY(-50%) rotate(360deg);
}
.m-locations__wrapper.-open .m-locations__headingButtonIn:after{
  opacity:1;
  transform: translateX(-50%) rotate(270deg);
}

.m-locations__heading .english{
	font-size: 3rem;
	font-family: 'Marcellus', serif;
}
.m-locations__heading .japanese{
	font-size: 1.6rem;
	margin-left: 1.4rem;
	font-weight: bold;
}
.m-locations__image{
	position: relative;
	aspect-ratio: 172 / 97;
	overflow: hidden;
  background-color:#7C7C7C;

}
.m-locations__image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.m-locations__vacancy,
.m-locations__place{
	position: absolute;
	color: #fff;
	font-weight: bold;
}
.m-locations__vacancy{
	background-color: #C32C4E;
	font-size: 1.3rem;
	top: 0;
	left: 0;
	padding: 0.5rem 1.2rem;
}
.m-locations__place{
	background-color: #000;
	font-size: 1.2rem;
	bottom: 0;
	right: 0;
	padding: 0.2rem 0.6rem;
}
.m-locations__item{
	background-color: #F5F2EF;
}
.m-locations__texts{
	padding: 2.7rem 3.4rem 0 3.4rem;
}
.m-locations__text01{
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 1.2rem;
}
.m-locations__text02{
	font-size: 1.3rem;
	line-height: 1.69;
	margin-bottom: 0.8rem;
}
.m-locations__text03{
	font-size: 1.3rem;
	margin-bottom: 1.1rem;
}
.m-locations__icons{
	margin-bottom: 3rem;
}
.m-locations__tel img{
	width: 1rem;
	margin-right: 0.7rem;
	vertical-align: middle;
	position: relative;
	top: -0.1rem;
}
.m-locations__time img{
	width: 1.3rem;
	margin-right: 0.5rem;
	vertical-align: middle;
	position: relative;
	top: -0.1rem;
}
.m-locations__icons img{
	width: auto;
	height: 2rem;
	margin-right: 0.4rem;
}
.m-locations__buttons{
	display: flex;
	justify-content: space-between;
	text-align: center;
	font-weight: bold;
	gap:0.58rem 0;
	border-radius: 0.3rem;
	margin: 0 2.4rem 2.4rem 2.4rem;
}
.m-locations__button{
	width: calc( 50% - 0.29rem );
}
.m-locations__button a{
	width: 100%;
	font-size: 1.4rem;
	display: block;
	padding: 1rem;
	text-decoration: none;
	border-radius: 0.3rem;
}
.m-locations__button:first-child a{
	background-color: #E2A94E;
	color: #fff;
}
.m-locations__button:last-child a{
	background-color: #fff;
	color: #C38E2C;
	border: 1px #E3DBD3 solid;
}
.m-more{
	border-top: 1px #E3DBD3 solid;
	z-index: 3;
	position: relative;
}
.m-moreIn{
	width: auto;
	background-color: #fff;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	display: block;
	color: #AA9488;
	font-weight: bold;
}
.m-more.-beige .m-moreIn{
	background-color: #F5F2EF;
}
.m-moreButton{
	background-color: #F5F2EF;
	border: 1px #E3DBD3 solid;
	border-radius: 50%;
	position: relative;
	z-index: 2;
	cursor: pointer;
}
.m-moreButtonIn{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.m-moreButtonIn:before,
.m-moreButtonIn:after{
	width: 100%;
	height: 0.1rem;
	content: "";
	background-color: #E2A94E;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
.m-moreButtonIn:before{
	width: 100%;
	height: 0.1rem;
	top: 50%;
	transform: translateY(-50%);
  transition: all .3s ease-out;
}
.m-moreButtonIn:after{
	width: 0.1rem;
	height: 100%;
	left: 50%;
	transform: translateX(-50%);
  transition: all .3s ease-out;
}
.m-locations.-open .m-moreButtonIn:before{
  opacity:0;
  transform: translateY(-50%) rotate(360deg);
}
.m-locations.-open .m-moreButtonnIn:after{
  opacity:1;
  transform: translateX(-50%) rotate(270deg);
}
/*
.m-locations__items{
	position: relative;
}
.m-locations__items:after{
	content: "";
	display: block;
	background: -moz-linear-gradient(top, transparent, #fff);
	background: -webkit-linear-gradient(top, transparent, #fff);
	background: linear-gradient(to bottom, transparent, #fff 35%);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 2;
}
.m-locations.-home .m-locations__items:after{
	display: none;
}
*/
/* pc */
@media print,only screen and (min-width: 768px){
	.m-locations{
		padding:11.8rem 2rem 7rem 2rem;
	}
	.m-locations.-home .m-heading{
		margin-bottom: 0.5rem;
	}
	.m-locations__content{
		max-width: 1080px;
		margin: 0 auto;
	}
	.m-locations__heading{
		padding: 4rem 0;
	}
	.m-locations__items{
		display: flex;
		flex-wrap: wrap;
		justify-content:flex-start;
		gap:2.4rem 2.4rem;
		padding-bottom: 6.4rem;
	}
	.m-locations__items.-sp{
		display: block;
		gap:2.4rem 2.4rem;
		padding-bottom: 6.4rem;
	}
	.m-locations__item{
		width: calc( ( 100% / 3 ) - 1.6rem );
		display: flex;
		flex-direction: column;
	}
	.m-locations__items.-sp .m-locations__item{
		margin-bottom: 3rem;
	}
	.m-locations__texts{
		flex: 1 1 auto;
	}
	.m-locations__button a{
		position: relative;
	}
	.m-locations__buttons span{
		position: relative;
		z-index: 2;display: block;
	}
	.m-locations__button a:before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		background:#AA9488;
		width: 100%;
		height: 100%;
		transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1);
		transform: scale(0, 1);
		transform-origin: left top;
	}
	.m-locations__button a:hover:before{
		transform-origin:left top;
		transform:scale(1, 1);
	}
	.m-locations__button:last-child a:hover{
		color: #fff;
	}
	.m-more{
		margin-bottom: 4rem;
	}
	.m-moreIn{
		height: 2rem;
		top: -1.1rem;
		padding: 0 2.4rem;
	}
	.m-moreButton{
		width: 6.3rem;
		height: 6.3rem;
		margin:2.8rem auto 0 auto;
	}
	.m-moreButtonIn{
		width: 1.6rem;
		height: 1.6rem;
	}
/*
	.m-locations__items:after{
		height: 14.5rem;
	}
*/
}

/* sp */
@media screen and (max-width: 767px){
	.m-locations{
		padding:6rem 0 0 0;
		margin-bottom: 0!important;
	}
	.m-locations.-home{
		padding:6rem 0 0 0;
	}
	.m-locations__heading{
		padding: 2.5rem 0;
	}
	.m-locations__item{
		padding-bottom: 0.1rem;
		margin-bottom: 2rem;
	}
	.m-locations__placeButton{
		width: 24rem;
		margin: 0 auto;
	}
	.m-locations__placeButton a{
		border: 1px #E2A94E solid;
		border-radius: 0.3rem;
		color: #E2A94E;
		font-size: 1.4rem;
		font-weight: bold;
		text-align: center;
		text-decoration: none;
		display: block;
		padding: 1.4rem 1rem;
	}
	.m-locations__placeButton img{
		width: 1.2rem;
		vertical-align: middle;
		margin-right: 1rem;
	}
	.m-more{
		font-size: 1.4rem;
		white-space: nowrap;
		margin-bottom: 2rem;
	}
	.m-moreIn{
		height: 2rem;
		top: -1.1rem;
		padding: 0 0.6rem;
	}
	.m-moreButton{
		width:3.5rem;
		height:3.5rem;
		margin:2rem auto 0 auto;
	}
	.m-moreButtonIn{
		width: 1.3rem;
		height: 1.3rem;
	}
/*
	.m-locations__items:after{
		height: 7rem;
		background: linear-gradient(to bottom, transparent, #fff 50%);
	}
*/

}

/* ABOUT FIRST CABIN
--------------------------------------------------*/

.home-feature{
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: cover;
}
.home-feature__text01{
	color: #fff;
	text-align: center;
	margin-bottom: 8.4rem;
}
.home-feature__text01:after{
	height: 0.1rem;
	background-color: rgba(225,225,225,0.12);
	content: "";
	display: block;
}
.home-feature__text02{
	color: #E2A94E;
	font-weight: bold;
	text-align: center;
}
.home-feature__items{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
}
.home-feature__item{
	background-color: #fff;
	position: relative;
	color: #C38E2C;
	font-weight: bold;
	text-align: center;
}
.home-feature__number{
	position: absolute;

}
.home-feature__icon{
	display: flex;
	justify-content: center;
	align-items: center;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.home-feature{
		background-image: url("../images/home/feature-bg.jpg");
		padding: 11rem 2rem 11.8rem 2rem;
	}
	.home-feature__text01{
		margin-bottom: 5.4rem;
	}
	.home-feature__text01:after{
		width: 8rem;
		margin: 4.8rem auto 0 auto;
	}
	.home-feature__text02{
		font-size: 1.7rem;
		margin-bottom: 1.8rem;
	}
	.home-feature__items{
		max-width: 850px;
		width: 100%;
		gap:1.6rem 1.6rem;
		margin: 0 auto 4.8rem auto;
	}
	.home-feature__item{
		width: calc( 25% - 1.2rem );
		padding: 2rem 0.5rem 2.7rem 0.5rem;
	}
	.home-feature__number{
		top: 0.8rem;
		left: 1.2rem;
		font-size: 1.4rem;
	}
	.home-feature__icon{
		min-height: 7.8rem;
	}
	.home-feature__text{
		font-size: 1.8rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.home-feature{
		background-image: url("../images/home/feature-bg-sp.jpg");
		padding: 6rem 2rem 2rem 2rem;
		margin: 0 -2rem;
	}
	.home-feature__text01{
		line-height: 2;
		margin-bottom: 4rem;
	}
	.home-feature__text01:after{
		width: 8rem;
		margin: 4rem auto 0 auto;
	}
	.home-feature__text02{
		font-size: 1.7rem;
		margin-bottom: 1.8rem;
	}
	.home-feature__items{
		max-width: 850px;
		width: 100%;
		gap:1rem 1rem;
		margin: 0 auto 1rem auto;
	}
	.home-feature__item{
		width: calc( 50% - 0.5rem );
		padding: 1.6rem 0.5rem 2rem 0.5rem;
	}
	.home-feature__number{
		top: 0.8rem;
		left: 1.2rem;
		font-size: 1.4rem;
	}
	.home-feature__icon{
		min-height: 6.5rem;
		margin: 0 auto;
	}
	.home-feature__item:first-child .home-feature__icon{
		width: 2.2rem;
	}
	.home-feature__item:nth-child(2) .home-feature__icon{
		width: 3.3rem;
	}
	.home-feature__item:nth-child(3) .home-feature__icon{
		width: 4.5rem;
	}
	.home-feature__item:nth-child(4) .home-feature__icon{
		width: 4.4rem;
	}
	.home-feature__item:nth-child(5) .home-feature__icon{
		width: 4.5rem;
	}
	.home-feature__item:nth-child(6) .home-feature__icon{
		width: 3rem;
	}
	.home-feature__item:nth-child(7) .home-feature__icon{
		width: 2.9rem;
	}
	.home-feature__item:nth-child(8) .home-feature__icon{
		width: 2.1rem;
	}
	.home-feature__text{
		font-size: 1.6rem;
	}
}

/* PHOTO GALLERY
--------------------------------------------------*/

.home-gallery{
	position: relative;
  overflow: hidden;
}
.home-gallery__content{
	position: relative;
	z-index: 2;
}
.home-gallery__items{
  pointer-events: none;
}
.home-gallery:after{
	background-color: #F5F2EF;
	content: "";
	position: absolute;
	top: 2rem;
	left: 2rem;
	right: 2rem;
	bottom: 2rem;
}
.home-gallery__item{
	margin: 0 0.1rem;
	font-size: 1.2rem;
}
.home-gallery__image{
	aspect-ratio: 340 / 227;
	overflow: hidden;
	margin-bottom: 1rem;
}
.home-gallery__image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.home-gallery__text{
	font-size: 1.2rem;
}
/* pc */
@media print,only screen and (min-width: 768px){

	.home-gallery{
		padding: 11.6rem 0 11rem 0;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.home-gallery{
		padding: 6rem 0 4rem 0;
		margin:0 -2rem -1rem -2rem;
	}
}

/* WHAT’S NEW
--------------------------------------------------*/

.m-news__item{
	position: relative;
}
.m-news__pin{
	background: url("../images/news/icon-pin.svg") 0 0 no-repeat;
	text-indent: -9999px;
	background-size: 100% auto;
	z-index: 5;
	position: absolute;
	top: 0.4rem;
	left: 0.4rem;
}
.m-news__item a{
	text-decoration: none;
}
.m-news__category{
	border: 1px #E2A94E solid;
	border-radius: 0.2rem;
	color: #C38E2C;
	display: inline-block;
}
.m-news__text{
	font-weight: bold;
	display: block;
}
.m-news__time{
	color: #9D9D9D;
	display: block;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-news{
		padding: 11rem 2rem;
	}
	.m-news__content{
		max-width: 1080px;
		margin: 0 auto;
	}
	.m-news__pin{
		width: 2.4rem;
		height: 2.4rem;
	}
	.m-news__content .m-news__category{
		text-align: center;
		position: relative;
		transition: all .3s ease-out;
	}
	.m-news__categoryIn{
		z-index: 2;
		position: relative;
	}
	.m-news__content .m-news__category:before {
		content: '';
		position: absolute;
		background:#AA9488;
		top: -0.1rem;
		left: -0.1rem;
		right: -0.1rem;
		bottom: -0.1rem;
		transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1);
		transform: scale(0, 1);
		transform-origin: left top;
		border-radius: 0.3rem;
	}
	.m-news__content a:hover .m-news__category:before{
		transform-origin:left top;
		transform:scale(1, 1);
	}
	.m-news__content a:hover .m-news__category{
		color: #fff;
	}
	.m-news__items{
		display: flex;
		flex-wrap:wrap;
		justify-content: flex-start;
		gap:4.5rem 4rem;
		margin-bottom: 4.8rem;
	}
	.m-news__item{
		width: calc( 25% - 3rem );
		font-size: 1.2rem;
		white-space: normal;
	}
	.m-news.-threecol .m-news__items{
		gap:3rem;
	}
	.m-news.-threecol .m-news__item{
		width: calc( ( 100% / 3 ) - 2rem );
	}
	.m-news__image{
		overflow: hidden;
		aspect-ratio: 47 / 27;
		position: relative;
	}
	.m-news__item img{
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: all .3s ease-out;
		transform: scale( 1.1,1.1);
	}
	.m-news__item a:hover img{
		transform: scale( 1.1,1.1) translateX( 0.5rem );
	}
	.m-news__image:after{
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		transition: all .3s ease-out;
	}
	.m-news__item a:hover .m-news__image:after{
		background-color: rgba(0,0,0,0.1);
	}
	.m-news__category{
		margin-bottom: 0.7rem;
		padding: 0 0.6rem;
		margin-top: 2rem;
	}
	.m-news__text{
		font-size: 1.5rem;
		line-height: 1.866;
		margin-bottom: 0.5rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-news{
		padding: 5rem 0 0 0;
	}
	.m-news .m-button{
		margin-bottom: 6rem;
	}
	.m-news__items{
		margin-bottom: 3rem;
	}
	.m-news__item a{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		font-size: 1.1rem;
		margin-bottom: 2rem;
	}
	.m-news__pin{
		width: 1.8rem;
		height: 1.8rem;
	}
	/* .m-news__item img{
		width: 14rem;
	} */
	.m-news__texts{
		width: 18rem;
	}
	.m-news__category{
		line-height: 1.25;
		margin-bottom: 0.3rem;
		padding:0.2rem 0.6rem 0.1rem 0.6rem;
	}
	.m-news__text{
		font-size: 1.4rem;
		line-height: 1.6;
		margin-bottom: 0.2rem;
	}
  .m-news__image{
		overflow: hidden;
		aspect-ratio: 47 / 27;
		position: relative;
    width: 14rem;
	}
  .m-news__item img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

/* INFORMATION
--------------------------------------------------*/

.home-information{
	background-color: #F5F2EF;
}
.home-information a{
	text-decoration: none;
}
.home-information__list li{
	border-bottom: 1px #E3DBD3 solid;
}
.home-information__list li a{
	display: block;
}
.home-information__category{
	border: 1px #E2A94E solid;
	border-radius: 0.2rem;
	color: #C38E2C;
	display: inline-block;
}
.home-information__text{
	display: block;
	font-weight: bold;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.home-information{
		padding: 11.5rem 2rem 12rem 2rem;
	}
	.home-information .m-heading{
		margin-bottom: 1.5rem;
	}
	.home-information__content{
		max-width: 1080px;
		margin: 0 auto;
	}
	.home-information__list{
		margin-bottom: 4.4rem;
	}
	.home-information__list li a{
		padding: 2.8rem 8rem;
	}
	.home-information__time{
		font-size: 1.2rem;
	}
	.home-information__category{
		font-size: 1.2rem;
		padding: 0 0.6rem;
		margin-left: 0.5rem;
	}

	.home-information__category{
		text-align: center;
		position: relative;
		transition: all .3s ease-out;
	}
	.home-information__categoryIn{
		z-index: 2;
		position: relative;
	}
	.home-information__category:before {
		content: '';
		position: absolute;
		background:#AA9488;
		top: -0.1rem;
		left: -0.1rem;
		right: -0.1rem;
		bottom: -0.1rem;
		transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1);
		transform: scale(0, 1);
		transform-origin: left top;
		border-radius: 0.3rem;
	}
	.home-information a:hover .home-information__category:before{
		transform-origin:left top;
		transform:scale(1, 1);
	}
	.home-information a:hover .home-information__category{
		color: #fff;
	}
	.home-information__text{
		font-size: 1.5rem;
		margin-top: 1rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.home-information{
		padding: 5rem 2rem 2rem 2rem;
		margin: 0 -2rem;
	}
	.home-information .m-heading{
		margin-bottom: 0;
	}
	.home-information__list{
	}
	.home-information__list li a{
		padding: 2.3rem 0;
	}
	.home-information__time{
		font-size: 1.1rem;
	}
	.home-information__category{
		font-size: 1.1rem;
		line-height: 1.25;
		margin-bottom: 0.3rem;
		padding:0.2rem 0.6rem 0 0.6rem;
		margin-left: 0.5rem;
	}
	.home-information__text{
		font-size: 1.4rem;
		margin-top: 1rem;
	}
}

/* FAQ
--------------------------------------------------*/

.m-accordion__item{
	display: block;
}
.m-accordion__heading{
	font-weight: bold;
	line-height: 1.5;
	border: 1px #E3DBD3 solid;
	position: relative;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
  transition: background-color .3s ease-out;
}
.m-accordion02 .m-accordion__heading{
	background-color: #F5F2EF;
}
.m-accordion02 .m-accordion__item{
	border-bottom: 1px #E3DBD3 solid;
}
.m-accordion__item.-open .m-accordion__heading,
.m-accordion__heading:hover{
	background-color: #F5F2EF;
}
.m-accordion__button{
	width: 4.3rem;
	height: 4.3rem;
	border: 1px #E3DBD3 solid;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #F5F2EF;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.m-accordion__buttonIn{
	width: 1.2rem;
	height: 1.2rem;
	position: relative;
}
.m-accordion__buttonIn:before,
.m-accordion__buttonIn:after{
	width: 100%;
	height: 0.1rem;
	content: "";
	background-color: #C38E2C;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
.m-accordion__buttonIn:before{
	width: 100%;
	height: 0.1rem;
	top: 50%;
	transform: translateY(-50%);
  transition: all .3s ease-out;
}
.m-accordion__buttonIn:after{
	width: 0.1rem;
	height: 100%;
	left: 50%;
	transform: translateX(-50%);
  transition: all .3s ease-out;
}
.m-accordion__item.-open .m-accordion__buttonIn:before{
  opacity:0;
  transform: translateY(-50%) rotate(360deg);
}
.m-accordion__item.-open .m-accordion__buttonIn:after{
  opacity:1;
  transform: translateX(-50%) rotate(270deg);
}
.m-accordion__text{
	line-height: 1.866;
	border-bottom: 1px #E3DBD3 solid;
}
.m-accordion__text:last-child{
	border-bottom: none;
}
.m-accordion__q{
	font-weight: bold;
	position: relative;
	line-height: 1.5;
}
.m-accordion__q:before,
.m-accordion__a:before{
	font-family: 'Marcellus', serif;
	position: absolute;
}
.m-accordion__q:before{
	width: 2.5rem;
	height: 2.5rem;
	background-color: #E2A94E;
	content: "Q";
	color: #fff;
	border-radius: 50%;
	padding-top: 0.1rem;
	text-align: center;
	left: 0;
	top: -0.2rem;
}
.m-accordion__a:before{
	color: #E2A94E;
	content: "A";
	font-size: 2.6rem;
	left: 0.4rem;
	top: -0.9rem;
}
.m-accordion__a{
	line-height: 1.866;
	padding-left: 3.5rem;
	position: relative;
}
.m-accordion__text01{
	font-weight: bold;
	position: relative;
}
.m-accordion__text02{
	margin-top: 3rem;
}
.m-accordion02 .m-table{
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-accordion{
		padding: 11rem 2rem 12rem 2rem;
	}
	.m-accordion__item{
		max-width: 900px;
		margin: 0 auto;
	}
	.m-accordion02{
		margin-bottom: 8rem;
	}
	.m-accordion02 .m-accordion__item{
		max-width: 1080px;
	}
	.m-accordion .m-button{
		margin-top: 4.9rem;
	}
	.m-accordion__heading{
		font-size: 1.8rem;
		padding:1.8rem 9.5rem 1.8rem 4rem;
		margin-bottom: 0.8rem;
	}
	.m-accordion02 .m-accordion__heading{
		margin-bottom: 0;
	}
	.m-accordion__heading:after{
		right: 4rem;
	}
	.m-accordion__button{
		right: 4rem;
	}
	.m-accordion02 .m-accordion__button{
		right: 3rem;
	}
	.m-accordion02 .m-accordion__q:before {
		top: 1.3em;
		left: 4.2rem;
	}
	.m-accordion__text{
		font-size: 1.5rem;
		padding: 4.6rem 4rem 4.3rem 4rem;
	}
	.m-accordion__text:first-child{
		padding-top: 3.8rem;
	}
	.m-accordion__q{
		padding-left: 3.5rem;
		margin-bottom: 1rem;
	}
	.m-accordion02 .m-accordion__q{
		padding:2.2rem 8rem 2.2rem 8rem;
		margin-bottom: 0;
	}
	.m-accordion02 .m-accordion__a{
		margin:0.5rem 4rem 2.2rem 4rem;
	}
	.m-accordion02 .m-accordion__text01{
		padding:2.2rem 8rem 2.2rem 8rem;
	}
	.m-accordion02 .m-accordion__text02{
		margin:0 4rem 2.2rem 8rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-accordion{
		padding: 5rem 0 0 0;
	}
	.home .m-accordion{
		padding-bottom: 6rem;
	}
	.m-accordion .m-button{
		margin-top:3rem;
	}
	.m-accordion__heading{
		font-size: 1.6rem;
		padding: 1.8rem 7rem 1.8rem 1.5rem;
		margin-bottom: 0.6rem;
	}
	.m-accordion__button{
		right: 1.5rem;
	}
	.m-accordion__text{
		font-size: 1.5rem;
		padding: 2.8rem 2rem 3.5rem 2rem;
	}
	.m-accordion__text:first-child{
		padding-top:2.2rem;
	}
	.m-accordion02 .m-accordion__button{
		right: 2rem;
	}
	.m-accordion02 .m-accordion__q:before {
		top: 1.3em;
		left: 2rem;
	}
	.m-accordion__q{
		padding-left: 3.5rem;
		margin-bottom: 1rem;
	}
	.m-accordion02{
		margin-bottom: 2rem;
	}
	.m-accordion02 .m-accordion__q{
		padding:2.2rem 6rem 1rem 5.5rem;
	}
	.m-accordion02 .m-accordion__a{
		margin:0 2rem 1rem 2rem;
	}
	.m-accordion02 .m-accordion__text01{
		padding:2.2rem 6rem 1rem 2rem;
	}
	.m-accordion02 .m-accordion__text02{
		margin:0 2rem 1rem 2rem;
	}
}

/*==================================================

JS

==================================================*/

.js-accordion__heading{
  cursor: pointer;
}

.js-accordion__content{
  display:none;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.l-locationsNav__inner,
	.l-aboutNav__list{
		display: block!important;
	}

}

.swiper-wrapper{
  transition-timing-function: linear;
}


/*==================================================

セカンドページ

==================================================*/

/* CONCEPT
--------------------------------------------------*/

/*---- メイン ----*/

.concept-main{
	color: #fff;
	text-align: center;
}
.concept-heading__english{
	font-family: 'Marcellus', serif;
	display: block;
	line-height: 1.5;

}
.concept-heading__japanese{
	font-weight: bold;
	display: block;
}
.concept-text{
	font-size: 1.5rem;
	line-height: 1.866;
}
/* pc */
@media print,only screen and (min-width: 768px){

	.concept-main{
		height: 46rem;
		background: url("../images/concept/main.jpg") center top no-repeat;
		background-size:cover;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.concept-heading__english{
		font-size: 4rem;
	}
	.concept-heading__japanese{
		font-size: 2rem;
		margin-bottom: 3rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.concept-main{
		margin: 4rem -2rem 0 -2rem;
		height: 48rem;
		background: url("../images/concept/main-sp.jpg") center top no-repeat;
		background-size:cover;
		text-align: center;
		padding-top: 5.5rem;
	}
	.concept-heading__english{
		font-size:3.6rem;
	}
	.concept-heading__japanese{
		font-size: 1.5rem;
		margin-bottom: 5.5rem;
	}

}

/*---- 3つ並び ----*/

.m-smart__image{
	position: relative;
	aspect-ratio:167/94;
}
.m-smart__image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.m-smart__caption{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	color: #fff;
	font-family: 'Marcellus', serif;
}
.m-smart__heading{
	font-weight: bold;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-smart{
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		gap:0 3.9rem;
	}
	.m-smart__item{
		width: calc( ( 100% / 3 ) - 2.6rem );
	}
	.m-smart__image{
		margin-bottom: 2.6rem;
	}
	.m-smart__caption{
		font-size: 2.4rem;
	}
	.m-smart__heading{
		font-size: 1.8rem;
		margin-bottom: 0.5rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-smart__item{
		margin-bottom: 3.5rem;
	}
	.m-smart__item:last-child{
		margin-bottom: 0;
	}
	.m-smart__image{
		margin-bottom: 2rem;
	}
	.m-smart__caption{
		font-size: 2.4rem;
	}
	.m-smart__heading{
		font-size: 1.8rem;
		margin-bottom: 0.5rem;
	}


}
/*---- FIRST CABIN QUALITY ----*/

.m-quality__item{
	position: relative;
}
.m-quality__item:not(.js-ellipse--open){
  height: 47.2rem;
	overflow: hidden;
}
.m-quality__item:before{
	counter-increment: number 1;
	content: counter(number) " ";
	display: block;
	position: absolute;
	top: 0.6rem;
	left: 1rem;
	z-index: 2;
	color: #fff;
	font-size: 1.4rem;
	font-weight: bold;
}
.m-quality__item:after{
	content: "";
	background-color: #BAAAA1;
	height: 20.7rem;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.m-quality__icon,
.m-quality__heading,
.m-quality__image{
	position: relative;
	z-index: 2;
	text-align: center;
}
.m-quality__image{
	position: relative;
	aspect-ratio:314/177;
}
.m-quality__image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.m-quality__icon{
	min-height: 2.7rem;
	position: relative;
	z-index: 2;
	margin: 3.1rem auto 0.3rem auto;
	display: flex;
	justify-content: center;
	align-items: center;
}
.m-quality img{
	width: 100%;
}
.m-quality__item:first-child .m-quality__icon{
	width: 1.7rem;
}
.m-quality__item:nth-child(2) .m-quality__icon{
	width: 2.9rem;
}
.m-quality__item:nth-child(3) .m-quality__icon{
	width: 2.9rem;
}
.m-quality__item:nth-child(4) .m-quality__icon{
	width: 3.2rem;
}
.m-quality__item:nth-child(5) .m-quality__icon{
	width: 3.4rem;
}
.m-quality__item:nth-child(6) .m-quality__icon{
	width: 2.1rem;
}
.m-quality__item:nth-child(7) .m-quality__icon{
	width: 2.1rem;
}
.m-quality__item:nth-child(8) .m-quality__icon{
	width: 1.4rem;
}
.m-quality__heading{
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 1.2rem;
}
.m-quality__image{
	margin: 0 1rem 1.6rem 1rem;
}
.m-quality__text{
	margin: 1.9rem 1rem 2rem 1rem;
}
.m-quality__itemInner{
	/* height: 47.2rem;
	overflow: hidden; */
	position: relative;
	top: 0;
}
.js-ellipse__overlay{
	content: "";
	height: 7.5rem;
	display: block;
	background: -moz-linear-gradient(top, transparent, #fff);
	background: -webkit-linear-gradient(top, transparent, #fff);
	background: linear-gradient(to bottom, transparent, #fff 55%);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 2;
}
.js-ellipse__button{
	border-top: 1px #E3DBD3 solid;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 3;
  cursor: pointer;
}
.js-ellipse__button:before{
	width: 4.5rem;
	height: 1rem;
	content: "";
	background-color: #fff;
	position: absolute;
	top: -0.5rem;
	left: 50%;
	transform: translateX(-50%);
	display: block;
}
.js-ellipse__buttonIn{
	width: 2.9rem;
	height: 2.9rem;
	background-color: #F5F2EF;
	border: 1px #E3DBD3 solid;
	border-radius: 50%;
	position: relative;
	z-index: 2;
	margin:-1.5rem auto 0 auto;
}
.js-ellipse__buttonInIn{
	width: 1.1rem;
	height: 1.1rem;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.js-ellipse__buttonInIn:before,
.js-ellipse__buttonInIn:after{
	width: 100%;
	height: 0.1rem;
	content: "";
	background-color: #E2A94E;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
.js-ellipse__buttonInIn:before{
	width: 100%;
	height: 0.1rem;
	top: 50%;
	transform: translateY(-50%);
  transition: all .3s ease-out;
}
.js-ellipse__buttonInIn:after{
	width: 0.1rem;
	height: 100%;
	left: 50%;
	transform: translateX(-50%);
  transition: all .3s ease-out;
}
.js-ellipse--open .js-ellipse__overlay,
.js-ellipse--open .js-ellipse__button{
  display:none
}
.m-quality__item.-open .js-ellipse__buttonInIn:before{
  opacity:0;
  transform: translateY(-50%) rotate(360deg);
}
.m-quality__item.-open .js-ellipse__buttonInIn:after{
  opacity:1;
  transform: translateX(-50%) rotate(270deg);
}

/* pc */
@media print,only screen and (min-width: 768px){
	.m-quality{
		display: flex;
		flex-wrap:wrap;
		justify-content: flex-start;
		gap:4.8rem 3.9rem;
	}
	.m-quality__item{
		width: calc( ( 100% / 3 ) - 2.6rem );
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-quality__item{
		margin-bottom: 4rem;
	}
	.m-quality__item:last-child{
		margin-bottom: 0;
	}
}

/* About CABINS
--------------------------------------------------*/

/*---- メイン ----*/

.cabin-pagenav{
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-wrap:wrap;
}
.cabin-pagenavIn{
	display: flex;
	justify-content: center;
}
.cabin-pagenavInIn{
	text-decoration: none;
}
.cabin-pagenav__icon{
	background-color: #000;
	display: block;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
  margin: 0 auto;
}
.cabin-pagenav__text{
	line-height: 1.5;
	font-family: 'Marcellus', serif;
	text-align: center;
	display: block;
}
.cabin-pagenavIn.-current .cabin-pagenavInIn{
  color: #000;
}
.cabin-pagenavIn.-current .cabin-pagenav__icon{
  background-color: #c2aca2;
}
.cabin-slideItem img{
	width: 100%;
	object-fit: cover;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.cabin-main{
		margin-bottom: 9.7rem;
	}
	.cabin-slideItem{
		height: 56rem;
		overflow: hidden;
	}
	.cabin-slideItem img{
		height: 56rem;
	}
	.cabin-pagenav{
		position: relative;
		z-index: 10;
		margin-top: -6rem;
	}
	.cabin-pagenavIn{
		width: 14.5rem;
	}
	.cabin-pagenav__icon{
		width: 12rem;
		height: 12rem;
		transition: all .3s ease-out;
	}
	.cabin-pagenavInIn:hover{
		color: #000;
	}
	.cabin-pagenavInIn:hover .cabin-pagenav__icon{
		background-color: #c2aca2;
	}
	.cabin-pagenavIn img{
		max-width: 7.5rem;
		max-height: 5rem;
	}
	.cabin-pagenav__text{
		font-size: 1.2rem;
		margin-top: 0.6rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.cabin-main{
		margin:4rem -2rem 3.5rem -2rem;
	}
	.cabin-slideItem img{
		height: 20rem;
	}
	.cabin-pagenav{
		margin-top: 2rem;
	}
	.cabin-pagenavIn{
		width: 49%;
		margin-bottom: 1.4rem;
	}
	.cabin-pagenavInIn{
		
	}
	.cabin-pagenav__icon{
		width: 8rem;
		height: 8rem;
		margin: 0 auto;
	}
	.cabin-pagenavInIn:hover{
		color: #000;
	}
	.cabin-pagenavInIn:hover .cabin-pagenav__icon{
		background-color: #c2aca2;
	}
	.cabin-pagenavIn img{
		max-width: 5.4rem;
		max-height: 3rem;
	}
	.cabin-pagenav__text{
		font-size: 1.2rem;
		margin-top: 0.8rem;
	}
}
/*---- テーブル ----*/

.m-table{
	width: 100%;
	border-bottom: 1px #E3DBD3 solid;
	border-right: 1px #E3DBD3 solid;
	margin-bottom: 3rem;
}
.m-table th,
.m-table td{
	font-size: 1.5rem;
	line-height: 1.69;
	vertical-align: top;
}
.m-cabins th,
.m-cabins th,
.m-cabinDetail th,
.m-cabinDetail td,
.m-locationsCabin__detail th,
.m-locationsCabin__detail td{
	font-size: 1.3rem;
}
.m-table th{
	width: 9.2rem;
	background-color: #E3DBD3;
	color: #AA9488;
	font-weight: bold;
	border-top: 1px #F5F2EF solid;
}
.m-table td{
	background-color: #fff;
	border-top: 1px #E3DBD3 solid;
	border-left: 1px #E3DBD3 solid;
}
.m-table tr:first-child th{
	border-top: 1px #E3DBD3 solid;
}
.m-table__in{
	border: none;
	margin-bottom: 0;
}
.m-table__in th,
.m-table__in td{
	border: none;
	padding: 0;
	background-color: transparent;
	color: #000;
	font-weight: normal;
}
.m-table__in tr:first-child th{
	border-top: none;
}
.m-table a[target="_blank"] {
	background: url("../images/shared/icon-blank.svg") right center no-repeat;
	background-size: 1.2rem auto;
	padding-right: 1em;
}
.m-table td{
	position: relative;
	background-clip: padding-box;
}
.m-table td a.pdf{
	text-decoration: none;
	padding-right: 0;
	position: relative;
	display: block;
}
.m-table td a.pdf:before{
	content: "";
	background: url("../images/corporate/icon-pdf.svg") 0 0 no-repeat;
	background-size: 100% auto;
	position: absolute;
	left: 0;
}
.m-table td a.pdf[target="_blank"]{
	background: none;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-table th{
		padding: 2rem 1rem 2rem 4.8rem;
	}
	.m-table td{
		padding: 2rem 4rem 2rem 5.5rem;
	}
	.m-cabins th,
	.m-cabins td,
	.m-cabinDetail th,
	.m-cabinDetail td,
	.m-locationsCabin__detail th,
	.m-locationsCabin__detail td{
		padding: 0.6rem 1rem 0.6rem 2rem;
	}
	.m-table.-rule th,
	.m-table.-rule td{
		vertical-align: middle;
		font-size: 1.3rem;
		text-align: center;
		padding: 1rem 1rem 1rem 1rem;
	}
	.m-table.-threecol th,
	.m-table.-threecol td{
		width: calc( 100% / 3 );
	}
	.m-table.-fivecol th{
		width: 22%;
	}
	.m-table.-fivecol td{
		width:19.5%;
	}
	.m-table.-fourcol th,
	.m-table.-fourcol td{
		width: 25%;
	}
	.m-table__note{
		font-size: 1.3rem;
		line-height: 1.77;
		margin: -1rem 0 4.8rem 0;
	}
	.m-table__in{
		width: 63%;
	}
	.m-table__in th,
	.m-table__in td{
		width: 50%;
		padding:0.1rem 0;
	}
	.m-table td a.pdf{
		padding-left: 2.7rem;
	}
	.m-table td a.pdf:before{
		content: "";
		width: 1.3rem;
		height: 1.7rem;
		top: 0.2em;
	}
}

/* sp */
@media screen and (max-width: 767px){
	
	.m-cabins{
		margin-bottom: 0;
	}
	.m-table th,
	.m-table td{
		font-size: 1.3rem;
		padding: 0.6rem 1rem 0.6rem 2rem;
	}
	.m-cabins th,
	.m-cabins th,
	.m-cabinDetail th,
	.m-cabinDetail td,
	.m-locationsCabin__detail th,
	.m-locationsCabin__detail td{
		padding: 0.6rem 1rem 0.6rem 1rem;
	}
	.m-table th{
		width: 11rem;
	}
	.m-cabins th,
	.m-cabinDetail th,
	.m-locationsCabin__detail th{
		width: 9.2rem;
	}
	.m-table__note{
		font-size: 1.2rem;
		line-height: 1.916;
		margin-top: -1.5rem;
	}
	.m-tableSpBlock{
		border: 1px #E3DBD3 solid;
	}
	.m-tableSpBlock th,
	.m-tableSpBlock td{
		display: block;
		width: 100%;
		border: none;
		padding: 0.8rem 2.5rem 0.8rem 2.5rem;
	}
	.m-table__in{
		width: 100%;
	}
	.m-table__in th,
	.m-table__in td{
		padding:0;
	}.m-table__in th{
		width: 55%;
	}
	.m-table td a.pdf{
		padding-left: 1.5rem;
	}
	.m-table td a.pdf:before{
		content: "";
		width: 0.9rem;
		height: 1.3rem;
		top: 0.3em;
	}
}

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

/*---- イントロ ----*/

.m-cabinIntroduction{
	position: relative;
	z-index: 1;
}
.m-cabinIntroduction:after{
	content: "";
	background-color: #F5F2EF;
	display: block;
	position: absolute;
}
.m-cabinIntroduction__images{
	text-align: center;
	position: relative;
	z-index: 2;
}
.m-cabinIntroduction__image{
	aspect-ratio:16/9;
}
.m-cabinIntroduction__image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.m-cabinIntroduction__images .slick-dots li button{
    font-size:initial;
    color:initial;
    background:initial;
}
.m-cabinIntroduction__images .slick-dots li button:before{
    content:none;
}
.m-cabinIntroduction__caption{
	margin: 1.9rem 0 2.4rem 0;
}
.m-cabinIntroduction__arrowdots{
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: "Arial";
}
.m-cabinIntroduction__arrowdots .my-slick-dots ul{
	display: flex;
	justify-content: center;
	font-size: 1.3rem;
	font-weight: bold;
}
.m-cabinIntroduction__images .my-slick-dots button{
	/* padding:0.5rem 1.2rem; */
	cursor: pointer;
}
.m-cabinIntroduction__arrowdots .my-slick-prev,
.m-cabinIntroduction__arrowdots .my-slick-next{
	width: 2rem;
	height: 3.5rem;
	background-size: 1.2rem auto;
	vertical-align: middle;
	position: relative;
	top: -0.2rem;
	text-indent: -9999px;
	cursor: pointer;
	padding:0.5rem 0.7rem;
}
.m-cabinIntroduction__arrowdots .my-slick-prev{
	background: url("../images/shared/arrow-prev.svg") center center no-repeat;
	margin-right: 0.5rem;
}
.m-cabinIntroduction__arrowdots .my-slick-next{
	background: url("../images/shared/arrow-next.svg") center center no-repeat;
	margin-left: 0.5rem;
}
.m-cabinIntroduction__detail{
	position: relative;
	z-index: 2;
}
.m-cabinIntroduction__figure{
	margin:11.6rem 0 2.8rem 0;
  background-color:#F5F2EF;

}
.m-cabinIntroduction__figure img{
  mix-blend-mode:darken;
}
/* pc */
@media print,only screen and (min-width: 768px){

	.m-cabinIntroduction{
		display: flex;
		justify-content: space-between;
		padding-bottom: 7.8rem;
		margin: -12rem 0;
		z-index: 1;
	}
	.m-cabinIntroduction:after{
		top: 4rem;
		left:  calc( 50% - 50vw );
		right:  calc( 50% - 50vw );
		bottom: 0;
	}
	.m-cabinIntroduction__images{
		width: 59%;
	}
	.m-cabinIntroduction__caption{
		margin: 1.9rem 0 2.4rem 0;
	}
	.m-cabinIntroduction__pager a:hover{
		color: #E2A94E;
	}
	.m-cabinIntroduction__detail{
		width: 33.4%;
	}
	.m-cabinIntroduction__figure{
		margin:11.6rem 0 2.8rem 0;
	}
	.m-cabinIntroduction .m-button a{
		width: 100%;
		padding: 1.8rem 1rem;
	}
}

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

	.m-cabinIntroduction{
		padding-bottom: 6rem;
		margin: -6rem 0;
	}
	.m-cabinIntroduction:after{
		top: 7rem;
		left:  -2rem;
		right:  -2rem;
		bottom: 0;
	}
	.m-cabinIntroduction__caption{
		margin: 3rem 0 2.5rem 0;
		text-align: left;
	}
	.m-cabinIntroduction__detail{
	}
	.m-cabinIntroduction__figure{
		margin: 2rem 0;
	}
}

/*---- Slick Slider Dots アニメーション ----*/
.m-cabinIntroduction .slick-dots li {
  width: 3.5rem;
  height: 3.5rem;
  position: relative;
  overflow: hidden;
  /* margin: 20px; */
  border-radius: 50%;
  transform: rotate3d(0, 0, 1, 0.001deg); /* clear artifacts*/
}
.m-cabinIntroduction .slick-dots .slick-active {
  width: 3.5rem;
  height: 3.5rem;
  position: relative;
  overflow: hidden;
  /* margin: 20px; */
  border-radius: 50%;
  transform: rotate3d(0, 0, 1, 0.001deg); /* clear artifacts*/
}
.m-cabinIntroduction .slick-dots .slick-active:before,
.m-cabinIntroduction .slick-dots .slick-active:after {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  width: 3.5rem;
  height: 3.5rem;
  clip: rect(0px, 1.75rem, 3.5rem, 0px);
  background-color: #F5F2EF;
  transform: rotate3d(0, 0, 1, 0deg);
  animation: 2s spin2 linear 2s forwards;
  z-index: 2;
}
.m-cabinIntroduction .slick-dots .slick-active:after {
  content: " ";
  background: #E2A94E;
  z-index: 1;
  animation: 2s spin linear forwards;
}

.m-cabinIntroduction .slick-dots button{
  color: #E2A94E;
  display: block;
  position: relative;
  z-index: 4;
  /* border: 5px solid white; */
  background-color:#F5F2EF;
  width: 3.1rem;
  height: 3.1rem;
  border-radius: 50%;
  margin: 0.2rem 0 0 0.2rem;
  font-weight: bold;
}

.m-cabinIntroduction .slick-dots .slick-active button{
  color: #E2A94E;
  display: block;
  position: relative;
  z-index: 4;
  /* border: 5px solid white; */
  background-color:#F5F2EF;
  width: 3.1rem;
  height: 3.1rem;
  border-radius: 50%;
  margin: 0.2rem 0 0 0.2rem;
}

@keyframes spin {
  from {
    transform: rotate3d(0, 0, 1, 0deg);
  }
  to {
    transform: rotate3d(0, 0, 1, 180deg);
  }
}
@keyframes spin2 {
  from {
    background: #E2A94E;
    transform: rotate3d(0, 0, 1, 180deg);
  }
  to {
    background: #E2A94E;
    transform: rotate3d(0, 0, 1, 360deg);
  }
}

/* .m-cabinIntroduction .slick-dots .slick-active {
  color: #E2A94E;
}


.m-cabinIntroduction .slick-dots li button{
  border: 0;
  position: relative;
}

.m-cabinIntroduction .slick-dots li button::before,
.m-cabinIntroduction .slick-dots li button::after {
  box-sizing: inherit;
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
}

.m-cabinIntroduction .slick-dots li button {
  height: 3.5rem;
  width: 3.5rem;
}

.m-cabinIntroduction .slick-dots li button::before,
.m-cabinIntroduction .slick-dots li button::after {
  top: 0;
  left: 0;
}

.m-cabinIntroduction .slick-dots li button::before {
  border: 1px solid transparent;
}

.m-cabinIntroduction .slick-dots .slick-active::before {
  border-top-color: #E2A94E;
  border-right-color: #E2A94E;
  border-bottom-color: #E2A94E;
  transition: border-top-color 1.5s linear, border-right-color 1.5s linear 1s, border-bottom-color 1.5s linear 2s;
}

.m-cabinIntroduction .slick-dots li button::after {
  border: 0 solid transparent;
}

.m-cabinIntroduction .slick-dots .slick-active::after {
  border-top: 1px solid #E2A94E;
  border-left-width: 1px;
  border-right-width: 1px;
  transform: rotate(270deg);
  transition: transform 4s linear 0s, border-left-width 0s linear 3.5s, -webkit-transform 4s linear 0s;
}

.m-cabinIntroduction .slick-dots li button {
  border-radius: 100%;
  box-shadow: none;
}

.m-cabinIntroduction .slick-dots li button::before,
.m-cabinIntroduction .slick-dots li button::after {
  border-radius: 100%;
} */


/*---- 詳細 ----*/

.m-cabinDetail td{
	position: relative;
	background-clip: padding-box;
}
.m-cabinDetail .icon{
	position: absolute;
}
.m-cabinDetail .icon img{
	vertical-align: middle;
}
.m-cabinDetail__heading{
	font-weight: bold;
}
.m-cabinDetail__notes{
	margin-left: 1.5em;
}
.m-cabinDetail__note{
	position: relative;
}
.m-cabinDetail__note:before{
	content: "●";
	color: #E3DBD3;
	font-weight: bold;
	position: absolute;
	left: -1.5em;
}

/* pc */
@media print,only screen and (min-width: 768px){
	.m-cabinDetail{
		display: flex;
		justify-content: space-between;
	}
	.m-cabinDetail .m-table{
		margin-bottom: 0;
	}
	.m-cabinDetail__table{
		width: 34%;
	}
	.m-cabinDetail th{
		width: 13rem;
	}
	.m-cabinDetail .icon{
		left: 2rem;
	}
	.m-cabinDetail td{
		padding-left: 5rem;
	}
	.m-cabinDetail__texts{
		width: 59.5%;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-cabinDetail .m-table{
		margin-bottom: 4rem;
	}
	.m-cabinDetail th{
		width: 12rem;
	}
	.m-cabinDetail .icon{
		left: 1rem;
	}
	.m-cabinDetail td{
		padding-left: 3.8rem;
	}
	.m-cabinDetail__notes{
		font-size: 1.2rem;
	}
}

/*---- CABIN FACILITIES　4つ並び ----*/

.m-facilities__inner{
	display: flex;
	flex-wrap: wrap;
	justify-content:flex-start;
}
.m-facilities__heading{
	font-weight: bold;
}
.m-facilities__image{
	position: relative;
	aspect-ratio:16/9;
}
.m-facilities__image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-facilities__inner{
		gap:4.5rem 4rem;
	}
	.m-facilities__item{
		width: calc( 25% - 3rem );
	}
	.m-facilities img{
		width: 100%;
	}
	.m-facilities__heading{
		margin-top: 1.5rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-facilities__inner{
		gap:3rem 1.5rem;
	}
	.m-facilities__item{
		width: calc( 50% - 0.75rem );
	}
	.m-facilities__heading{
		font-size: 1.4rem;
		margin-top: 1.5rem;
	}
	.m-facilities__text{
		font-size: 1.2rem;
	}
}


.js-ellipse__button{
	border-top: 1px #E3DBD3 solid;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 3;
}
.js-ellipse__button:before{
	width: 4.5rem;
	height: 1rem;
	content: "";
	background-color: #fff;
	position: absolute;
	top: -0.5rem;
	left: 50%;
	transform: translateX(-50%);
	display: block;
}
.js-ellipse__buttonIn{
	width: 2.9rem;
	height: 2.9rem;
	background-color: #F5F2EF;
	border: 1px #E3DBD3 solid;
	border-radius: 50%;
	position: relative;
	z-index: 2;
	margin:-1.5rem auto 0 auto;
}
.js-ellipse__buttonInIn{
	width: 1.1rem;
	height: 1.1rem;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.js-ellipse__buttonInIn:before,
.js-ellipse__buttonInIn:after{
	width: 100%;
	height: 0.1rem;
	content: "";
	background-color: #E2A94E;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
.js-ellipse__buttonInIn:before{
	width: 100%;
	height: 0.1rem;
	top: 50%;
	transform: translateY(-50%);
  transition: all .3s ease-out;
}
.js-ellipse__buttonInIn:after{
	width: 0.1rem;
	height: 100%;
	left: 50%;
	transform: translateX(-50%);
  transition: all .3s ease-out;
}
.m-quality__item.-open .js-ellipse__buttonInIn:before{
  opacity:0;
  transform: translateY(-50%) rotate(360deg);
}
.m-quality__item.-open .js-ellipse__buttonInIn:after{
  opacity:1;
  transform: translateX(-50%) rotate(270deg);
}

/*---- OTHER CABINS ----*/

.m-other{
	display: flex;
}
.m-other__icon{
	background-color: #000;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.m-other__english{
	font-family: 'Marcellus', serif;
	display: block;
}
.m-other__japanese{
	display: block;
	font-weight: bold;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-others{
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap:7rem 4rem;
	}
	.m-other{
		width:calc(100% / 3);
		max-width:33rem;
		gap:0 2.4rem;
	}
	.m-other__icon{
		width: 8.8rem;
		height: 8.8rem;
	}
	.m-other.-first .m-other__icon img{
		width: 5rem;
	}
	.m-other.-business .m-other__icon img{
		width: 6rem;
	}
	.m-other.-economy .m-other__icon img{
		width: 5.9rem;
	}
	.m-other.-premium .m-other__icon img{
		width: 5.8rem;
	}
	.m-other__texts{
		display: flex;
		flex-direction: column;
    width:calc(100% - 11.2rem);
	}
	.m-other__english{
		font-size: 2.2rem;
		line-height: 1.364;
		margin-bottom: 0.5rem;
	}
	.m-other__japanese{
		font-size: 1.3rem;
		margin-bottom: 1.5rem;
	}
	.m-others .m-buttonOutline{
		margin-top: auto;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-other{
		align-items: center;
		gap:0 2.7rem;
		margin-bottom: 4rem;
	}
	.m-other:last-child{
		margin-bottom: 0;
	}
	.m-other__icon{
		width: 10rem;
		height: 10rem;
	}
	.m-other__texts{
		width: calc( 100% - 13rem );
	}
	.m-other.-first .m-other__icon img{
		width: 6rem;
	}
	.m-other.-business .m-other__icon img{
		width: 7.2rem;
	}
	.m-other.-economy .m-other__icon img{
		width: 6.9rem;
	}
	.m-other.-premium .m-other__icon img{
		width: 5.8mrem;
	}
	.m-other__english{
		font-size: 1.8rem;
		line-height: 1.45;
		margin-bottom: 0.5rem;
	}
	.m-other__japanese{
		font-size: 1.3rem;
		line-height: 1.69;
		margin-bottom: 2rem;
	}
	.m-other .m-buttonOutline{
		display: inline-block;
	}
	.m-other .m-buttonOutline a{
		padding-right: 4rem;
	}
}

/* LOCATIONS詳細--------------------------------------------------*/

/*---- メイン ----*/

.m-locationsMain__inner{
	position: relative;
}

.m-locationsMain__image{
	position: relative;
	z-index: 2;
}
.m-locationsMain__image img{
	aspect-ratio:16/9;
	object-fit: cover;
	width: 100%;
}
.m-locationsMain__texts{
	position: relative;
	z-index: 2;
}
.m-locationsMain__text01{
	line-height: 1.87;
}
.m-locationsMain__heading{
	font-weight: bold;
	line-height: 1.5;
}
.m-locationsMain__detail{
	width: 100%;
	font-size: 1.3rem;
	line-height: 1.54;
}
.m-locationsMain__detail th,
.m-locationsMain__detail td{
	vertical-align: top;
}
.m-locationsMain__detail th{
	width: 10.5em;
	font-weight: bold;
	white-space: wrap;
}
.m-locationsMain__cabins img{
	height: 2rem;
	object-fit: contain;
	margin-right: 0.4rem;
}
.m-locationsMain__snsIcon{
	width: 1.5rem;
	height: 1.5rem;
	object-fit: contain;
	margin-right: 1.5rem;
}
.m-locationsMain__icon{
	object-fit: contain;
	vertical-align: top;
}
.m-locationsMain__text02{
	font-size: 1.3rem;
	line-height: 1.77;
}
/* pc */
@media print,only screen and (min-width: 768px){

	.m-locationsMain{
		padding: 16.5rem 2rem 16rem 2rem;
	}
	.m-locationsMain__inner{
		max-width: 1080px;
		margin: 0 auto;
    display: grid;
    grid-template-columns: 59.3% 33.4%;
    justify-content: space-between;
    align-items: center;
		/* justify-content: space-between;
		align-items: center; */
	}
  .m-locationsMain__inner:before{
    content: "";
    background-color: #F5F2EF;
    position: absolute;
    top: 0;
		left: calc( 50% - 50vw );
		right: 51%;
		bottom: 0;
	}
  .m-locationsMain__title{
		/* width: 33.4%; */
    grid-column:2;
    grid-row: 1;
	}

	.m-locationsMain__image{
		/* width: 59.3%; */
    grid-column:1;
    grid-row: span 2;
	}
	.m-locationsMain__image img{
		width: 100%;
	}
	.m-locationsMain__texts{
		/* width: 33.4%; */
    grid-column:2;
    grid-row: 2;
	}
	.m-locationsMain__text01{
		text-align: center;
		margin-bottom: 0.5rem;
	}
	.m-locationsMain__heading{
		font-size: 2.8rem;
		text-align: center;
		padding-bottom: 1.7rem;
		border-bottom: 1px #E3DBD3 solid;
	}
	.m-locationsMain__detail{
		margin: 2.5rem 0;
	}
	.m-locationsMain__detail th,
	.m-locationsMain__detail td{
		padding: 0.5rem 0;
	}
	.m-locationsMain__detail th{
		font-weight: bold;
		padding-right: 0.5rem;
		white-space: wrap;
	}
	.m-locationsMain__text02{
		margin-bottom: 2.6rem;
	}
	.m-locationsMain__icon{
		width: 1.6rem;
		height: 1.8rem;
		margin-right: 1.5rem;
	}
}

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

	.m-locationsMain{
		margin-top: 8rem;
		padding-top: 3rem;
		display: flex;
		flex-direction: column;
	}
  
	.m-locationsMain__image:before{
    content: "";
    background-color: #F5F2EF;
    position: absolute;
    top: 0;
		height: 25rem;
		top: -3rem;
		left: -2rem;
		right: 5.5rem;
    z-index:-1;
	}
	.m-locationsMain__image{
		margin-bottom: 5.2rem;
	}
	.m-locationsMain__text01{
		font-size: 1.4rem;
		margin-bottom: 0.8rem;
	}
	.m-locationsMain__heading{
		font-size:2.6rem;
		border-top: 1px #E3DBD3 solid;
		padding-top: 1rem;
		margin-bottom: 4.3rem;
	}
	.m-locationsMain__texts{
		display: flex;
		flex-direction: column;
	}
	.m-locationsMain .m-button{
		order: -1;
	}
	.m-locationsMain__detail{
		margin: 2rem 0 2rem 0;
	}
	.m-locationsMain__detail th,
	.m-locationsMain__detail td{
		padding: 0.5rem 0;
	}
	.m-locationsMain__detail th{
		padding-right: 0.6rem;
	}
	.m-locationsMain__icon{
		width: 1.3rem;
		height: 1.6rem;
		margin-right: 0.6rem;
	}
	.m-locationsMain__cabins img{
		width: auto;
	}
}
/*---- CONCEPT ----*/

/* pc */
@media print,only screen and (min-width: 768px){


}

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


}
/* NEWS
--------------------------------------------------*/


/*---- カテゴリー検索----*/

.m-newsCategory,
.m-newsTitle{
	background-color: #F5F2EF;
}
.m-newsTitle__title{
	line-height: 1.3;
	font-weight: bold;
}
.m-newsCategory__inner,
.m-newsTitle__inner{
	display: flex;
	justify-content: space-between;
}
.m-newsCategory__button{
	background-color: #AA9488;
	color: #fff;
	font-weight: bold;
	text-align: center;
}
.m-newsCategory__select{
	background: url("../images/shared/arrow-search.svg") right 3.2rem center no-repeat;
	background-size: 1rem auto;
	background-color: #fff;
	border: 1px #E3DBD3 solid;
}

/* pc */
@media print,only screen and (min-width: 768px){

	.m-newsCategory{
		padding: 3.1rem 2rem;
		margin-top: 11rem;
	}
	.m-newsTitle{
		padding: 3.5rem 2rem;
		margin-top: 15.5rem;
	}
	.m-newsTitle__title{
		font-size: 2.2rem;
	}
	.m-newsCategory__inner,
	.m-newsTitle__inner{
		max-width: 750px;
		margin: 0 auto;
	}
	.m-newsTitle__inner.-large{
		max-width: 1080px;
	}
	.m-newsCategory__button{
		width: 14rem;
		font-size: 1.5rem;
		padding:1.3rem 1rem 1.3rem 1rem;
	}
	.m-newsCategory__select{
		width: calc( 100% - 14rem );
		font-size: 1.5rem;
		padding: 1.3rem 3.2rem;
	}
}

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

	.m-newsCategory,
	.m-newsTitle{
		padding: 2rem;
		margin:4rem -2rem 0 -2rem;
	}
	.m-newsTitle{
		margin-top: 10rem;
	}
	.m-newsTitle__title{
		font-size: 2rem;
	}
	.m-newsCategory__button{
		width: 10rem;
		font-size: 1.4rem;
		padding:1.2rem 1rem;
	}
	.m-newsCategory__select{
		background-position: right 1.1rem center;
		width: calc( 100% - 10rem );
		font-size: 1.4rem;
		padding: 1.2rem 2.6rem 1.2rem 1.6rem;
	}
}

/*---- 下部消す ----*/

.m-erase{
	position: relative;
}
.m-erase:after{
	content: "";
	display: block;
	background: -moz-linear-gradient(top, transparent, #fff);
	background: -webkit-linear-gradient(top, transparent, #fff);
	background: linear-gradient(to bottom, transparent, #fff 35%);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 2;
}
.m-erase.-beige:after{
	content: "";
	display: block;
	background: -moz-linear-gradient(top, transparent, #F5F2EF);
	background: -webkit-linear-gradient(top, transparent, #F5F2EF);
	background: linear-gradient(to bottom, transparent, #F5F2EF 40%);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 2;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-erase:after{
		height: 13rem;
		background: linear-gradient(to bottom, transparent, #fff 60%);
	}

}

/* sp */
@media screen and (max-width: 767px){
	.m-erase:after{
		height: 7rem;
		background: linear-gradient(to bottom, transparent, #fff 50%);
	}
	.m-erase.-beige:after{
		height: 9.5rem;
		background: linear-gradient(to bottom, transparent, #F5F2EF 50%);
	}
}

/*---- moreボタン ----*/

/*
.m-news__items{
	position: relative;
}
.m-news__items:after{
	content: "";
	display: block;
	background: -moz-linear-gradient(top, transparent, #fff);
	background: -webkit-linear-gradient(top, transparent, #fff);
	background: linear-gradient(to bottom, transparent, #fff 35%);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 2;
}
.m-news__item.-home:after,
.m-news__item.-locations:after{
	display: none;
}
.m-news.-home .m-news__items:after,
.m-news.-locations .m-news__items:after{
	display: none;
}
*/
/* pc */
@media print,only screen and (min-width: 768px){
	.m-news{
		font-size: 1.4rem;
		margin-bottom: 2rem;
	}
/*
	.m-news__items:after{
		height: 7rem;
		background: linear-gradient(to bottom, transparent, #fff 60%);
	}
*/

}

/* sp */
@media screen and (max-width: 767px){
/*
	.m-news__items:after{
		height: 7rem;
		background: linear-gradient(to bottom, transparent, #fff 50%);
	}
*/
}

/*---- アクセス ----*/

.m-access{
	padding-top: 0;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-access .m-button{
		margin-top: 1.6rem;
	}
	.m-access .m-button.-black{
		margin-top: 4.8rem;
	}
	.m-access .m-button a{
		width: 35.3rem;
		padding: 1.8rem 4rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-access .m-button{
		margin-top: 1rem;
	}
	.m-access .m-button.-black{
		margin-top: 2rem;
	}

}
/*---- ページナビ----*/

.m-locationsPagenav{
	display: flex;
	justify-content: center;
	align-items: flex-start;
	text-align: center;
}
.m-locationsPagenav__itemIn{
	background:url("../images/shared/arrow-white-down2.svg") center bottom 2.6rem no-repeat;
	background-size: 1rem auto;
	background-color: #000;
	border-radius: 50%;
	display: block;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	color: #fff;
	text-decoration: none;
}
.m-locationsPagenav__english{
	font-family: 'Marcellus', serif;
}
.m-locationsPagenav__japanese{
	font-weight: bold;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-locationsPagenav{
		position: absolute;
		top: -6.4rem;
		left: 50%;
		transform: translateX(-50%);
		gap:0 2.4rem;
	}
	.m-locationsPagenav__itemIn{
		width: 19.1rem;
		height: 19.1rem;
		transition: all .3s ease-out;
		cursor: pointer;
	}
	.m-locationsPagenav__itemIn:hover{
		background-color: #c2aca2;
		color: #fff;
	}
	.m-locationsPagenav__icon{
		margin-bottom: 0.5rem;
	}
	.m-locationsPagenav__item:first-child .m-locationsPagenav__icon{
		width: 3.2rem;
	}
	.m-locationsPagenav__item:nth-child(2) .m-locationsPagenav__icon{
		width: 2.6rem;
	}
	.m-locationsPagenav__item:nth-child(3) .m-locationsPagenav__icon{
		width: 2.5rem;
	}
	.m-locationsPagenav__item:nth-child(4) .m-locationsPagenav__icon{
		width: 2.3rem;
	}
	.m-locationsPagenav__english{
		font-size: 2.2rem;
		line-height: 1.5;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-locationsPagenav{
		position: absolute;
		top: -4.4rem;
		left: 50%;
		transform: translateX(-50%);
		gap:0 0.5rem;
	}
	.m-locationsPagenav__itemIn{
		width: 8.3rem;
		height: 8.3rem;
		background-position: center bottom 1rem;
		background-size: 0.75rem auto;
	}
	.m-locationsPagenav__icon{
		margin-bottom: 0.2rem;
	}
	.m-locationsPagenav__item:first-child .m-locationsPagenav__icon{
		width: 1.8rem;
	}
	.m-locationsPagenav__item:nth-child(2) .m-locationsPagenav__icon{
		width: 1.4rem;
	}
	.m-locationsPagenav__item:nth-child(3) .m-locationsPagenav__icon{
		width: 1.4rem;
	}
	.m-locationsPagenav__item:nth-child(4) .m-locationsPagenav__icon{
		width: 1.5rem;
	}
	.m-locationsPagenav__english{
		font-size: 1.1rem;
		line-height: 1.5;
	}
	.m-locationsPagenav__japanese{
		font-size: 1.1rem;
		line-height: 1.5;
	}
}

/*---- タイトル ----*/

.m-locations__heading2{
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
}
.m-locations__heading2:before{
	background-color: #E3DBD3;
	content: "";
	display: block;
	text-align: center;
}
.m-locations__text{
	display: block;
}
.m-locations__icon{
	margin-bottom: 1.7rem;
}
.m-locationsQuality .m-locations__icon{
	width: 4.1rem;
}
.m-locationsGallery .m-locations__icon{
	width: 3.8rem;
}
.m-locationsCabin .m-locations__icon{
	width: 3.7rem;
}
.m-locationsOthers .m-locations__icon{
	width: 3.4rem;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-locations__heading2{
		font-size: 2.6rem;
		margin: 0 auto 4.3rem auto;
	}
	.m-locations__heading2:before{
		width: 24rem;
		height: 0.3rem;
		margin: 0 auto 8.8rem auto;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-locations__heading2{
		font-size: 2rem;
		margin: 0 auto 2rem auto;
	}
	.m-locations__heading2:before{
		width: 20rem;
		height: 0.3rem;
		margin: 0 auto 5rem auto;
	}
}

/*---- 特徴 ----*/

.m-locationsQuality{
	background-color: #fff;
}
.m-locationsQuality__list{
	border-top: 1px #E3DBD3 solid;
	font-weight: bold;
}
.m-locationsQuality__listIn{
	border-bottom: 1px #E3DBD3 solid;
	position: relative;
}
.m-locationsQuality__listIn:before{
	counter-increment: number 1;
	content: counter(number) " ";
	display: block;
	position: absolute;
	color: #AA9488;
	font-size: 1.2rem;
	font-weight: bold;
}
.m-locationsQuality__itemIn{
  display:block;
	background-color: #F5F2EF;
  text-decoration:none;
}

/* pc */
@media print,only screen and (min-width: 768px){

	.m-locationsQuality{
		padding: 0 9rem 9rem 9rem;
		margin-top: 12.7rem;
	}
	.m-locationsQuality__list{
		margin-bottom: 3.2rem;
	}
	.m-locationsQuality__listIn{
		padding: 2.55rem 5rem;
    display:block;
	}
	.m-locationsQuality__listIn:before{
		top: 0.4rem;
		left: 0.8rem;
	}
	.m-locationsQuality__itemIn{
		padding: 2.2rem 4rem 2.2rem 2.4rem;
		display: flex;
		justify-content:space-between;
		align-items: center;
	}
	.m-locationsQuality__image{
		width: 37.5%;
	}
	.m-locationsQuality__image img{
		width: 100%;
	}
	.m-locationsQuality__text{
		width: 56.5%;
	}
}

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

	.m-locationsQuality{
		margin: 0 -2rem;
		padding: 0 2rem 5rem 2rem;
	}
	.m-locationsQuality__list{
		font-size: 1.4rem;
		margin-bottom: 1.65rem;
	}
	.m-locationsQuality__listIn{
		padding: 1.6rem 2rem 1.6rem 3.5rem;
    display:block;
	}
	.m-locationsQuality__listIn:before{
		top: 0.8rem;
		left: 0.7rem;
	}
	.m-locationsQuality__itemIn{
		padding: 2.7rem 3.4rem 4rem 3.4rem;
	}
	.m-locationsQuality__image{
		margin-bottom: 2.1rem;
	}
	.m-locationsQuality__text{
		font-size: 1.3rem;
		line-height: 2;
	}
}
/*---- フォトギャラリー ----*/

/*
.m-facilities__inner{
	position: relative;
}
.m-facilities__inner:after{
	content: "";
	display: block;
	background: -moz-linear-gradient(top, transparent, #F5F2EF);
	background: -webkit-linear-gradient(top, transparent, #F5F2EF);
	background: linear-gradient(to bottom, transparent, #F5F2EF 40%);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 2;
}
.m-facilities.-cabindetail .m-facilities__inner:after{
	display: none;
}
*/
/* pc */
@media print,only screen and (min-width: 768px){
	.m-locationsGallery .m-facilities__inner{
		padding-bottom: 2rem;
	}
	.m-locationsGallery{
		margin: 8.8rem 0;
	}
/*
	.m-facilities__inner:after{
		height: 9rem;
	}
*/
}

/* sp */
@media screen and (max-width: 767px){
	.m-locationsGallery .m-facilities__inner{
		padding-bottom: 7rem;
	}
	.m-locationsGallery{
		margin: 5rem 0 5.7rem 0;
	}
/*
	.m-facilities__inner:after{
		height: 9.5rem;
		background: linear-gradient(to bottom, transparent, #F5F2EF 50%);
	}
*/
}
/*---- この施設にあるキャビン ----*/

.m-locationsCabin__top{
	background-color: #fff;
	margin-bottom: 1.54rem;
}
.m-locationsCabinPagenav{
	/* display: flex;
	justify-content: center;
	align-items: flex-start; */
}
.m-locationsCabinPagenav__item{
	display: flex;
	justify-content: center;
	position: relative;
}
.m-locationsCabinPagenav__item.active:before,
.m-locationsCabinPagenav__item.active:after{
	content: "";
	background-color: #BAAAA1;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	display: block;
}
.m-locationsCabinPagenav__item.active .m-locationsCabinPagenav__icon{
	background-color: #c2aca2;
}
.m-locationsCabinPagenav__item.active:before{
	width: 1px;
}
.m-locationsCabinPagenav__item.active:after{
	width: 1.1rem;
	height: 1.1rem;
	border-radius: 50%;
}
.m-locationsCabinPagenav__itemIn{
	text-decoration: none;
  cursor: pointer;
}
.m-locationsCabinPagenav__icon{
	background-color: #000;
	display: block;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.m-locationsCabinPagenav__english{
	line-height: 1.5;
	font-family: 'Marcellus', serif;
	text-align: center;
	display: block;
}
.m-locationsCabinPagenav__japanese{
	line-height: 1.5;
	text-align: center;
	display: block;
}
.m-locationsCabin__image img{
	width: 100%;
}
.m-locationsCabin__image{
	position: relative;
}
.m-locationsCabin__images .slick-arrow{
	content: "";
	position: absolute;
	transform: translateY(-50%);
	border-radius: 50%;
	cursor: pointer;
	z-index: 10;
	text-indent: -9999px;
}
.m-locationsCabin__images .slick-prev{
	background:rgba(7,7,7,0.8) url("../images/shared/arrow-prev-white.svg") center center no-repeat;
}
.m-locationsCabin__images .slick-next{
	background:rgba(7,7,7,0.8) url("../images/shared/arrow-next-white.svg") center center no-repeat;
}
.m-locationsCabin__detail{
		background-color: #fff;
	position: relative;
}
.m-locationsCabin__text{
	color: #E3DBD3;
	font-family: 'Marcellus', serif;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-orientation: sideways;
	position: absolute;
}
.m-locationsCabin__images{
	position: relative;
}
/* pc */
@media print,only screen and (min-width: 768px){

	.m-locationsCabin__top{
		padding: 0 7.2rem 5rem 7.2rem;
	}
	.m-locationsCabin__detail{
		padding: 8.7rem 5.5rem 8rem 8rem;
		margin-bottom: 8.8rem;
	}
  .m-locationsCabinPagenav{
		/* padding-bottom:10rem; */
    margin-bottom:-10rem;
	}
  .m-locationsCabinPagenav__in{
		padding-bottom:10rem;
    /* margin-bottom:-10rem; */
	}
	.m-locationsCabinPagenav__item{
		width: 25%;
	}
	.m-locationsCabinPagenav__itemIn{
		width: 100%;
	}
	.m-locationsCabinPagenav__icon{
		aspect-ratio:1 / 1;
		max-width: 19.5rem;
		width: 90%;
		transition: all .3s ease-out;
		margin: 0 auto;
	}
	.m-locationsCabinPagenav__itemIn:hover{
		color: #000;
	}
	.m-locationsCabinPagenav__item.active:before{
		height: 8rem;
		/* top: 30.2rem; */
    top: calc(100% + 1rem);
	}
	.m-locationsCabinPagenav__item.active:after{
		/* top: 38.2rem; */
    top: calc(100% + 8rem);
	}
	.m-locationsCabinPagenav__itemIn:hover .m-locationsCabinPagenav__icon{
		background-color: #c2aca2;
	}
	.m-locationsCabinPagenav__english{
		font-size: 1.8rem;
		margin: 2rem 0 0.5rem 0;
	}
	.m-locationsCabinPagenav__japanese{
		font-size: 1.3rem;
	}
	.m-locationsCabin__image img{
		width: 100%;
	}
	.m-locationsCabin__images .slick-arrow{
		width: 3.2rem;
		height: 3.2rem;
    top: 40%;
	}
	.m-locationsCabin__images .slick-prev{
		background-size: 1.2rem auto;
		left: 2rem;
	}
	.m-locationsCabin__images .slick-next{
		background-size: 1.2rem auto;
		right: 2rem;
	}
	.m-locationsCabin__introduction{
		display: flex;
		justify-content: space-between;
		margin-bottom: 4rem;
	}
	.m-locationsCabin__images{
		width: 52.6%;
	}
	.m-locationsCabin__caption{
		margin: 1.5rem 0 0 0;
	}
	.m-locationsCabin__figure{
		width: 39.2%;
		margin-top: 1.5rem;
	}
	.m-locationsCabin__figure img{
		width: 100%;
	}
	.m-locationsCabin__text{
		font-size: 2.2rem;
		right: 1.2rem;
		top: 2.5rem;
	}
	.m-locationsCabin .m-table th,
	.m-locationsCabin .m-table td{
		padding: 0.9rem 1rem 0.9rem 2rem;
	}
	.m-locationsCabin .m-table th{
		width: 16rem;
	}
	.m-locationsCabin .m-table td{
		padding-left: 5rem;
		position: relative;
	}
	.m-locationsCabin .m-table .icon{
		position: absolute;
		left: 2rem;
	}
	.m-locationsCabinPagenav__item img{
		max-width: 11rem;
		max-height: 7.2rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-locationsCabin{
		margin: 0 -2rem;
	}
	.m-locationsCabin__detail{
		padding: 6rem 3.4rem 5rem 3.4rem;
		margin-bottom: 6rem;
	}
	.m-cabinIntroduction{
		padding-bottom: 6rem;
		margin: -6rem 0;
	}
	.m-locationsCabin__caption{
		display: none;
	}
	.m-locationsCabin__figure{
		margin: 2rem 0;
	}
	.m-locationsCabin__top{
		/* overflow: hidden; */
		padding-bottom: 3rem;
	}
  .m-locationsCabinPagenav{
    margin-bottom:-8.1rem;
	}
	.m-locationsCabinPagenav__in{
		width: 62rem;
    padding-bottom:8.1rem;
	}
	.m-locationsCabinPagenav__item{
		width: 15.5rem;
	}
	.m-locationsCabinPagenav__item.active:before{
		height: 6rem;
    top:calc(100% + 1rem);
		/* top: 14.5rem; */
	}
	.m-locationsCabinPagenav__item.active:after{
    top:calc(100% + 7rem);
		/* top: 20.5rem; */
	}
	.m-locationsCabinPagenav__itemIN{
		border: 1px #333 solid;
	}
	.m-locationsCabinPagenav__icon{
		width: 8.5rem;
		height: 8.5rem;
		margin: 0 auto 0.8rem auto;
	}
	.m-locationsCabinPagenav__itemIn:hover .m-locationsCabin__pagenav__icon{
		background-color: #c2aca2;
	}
	.m-locationsCabinPagenav__english{
		font-size: 1.2rem;
	}
	.m-locationsCabinPagenav__japanese{
		font-size: 1.1rem;
	}
	.m-locationsCabin__image:before,
	.m-locationsCabin__image:after{
		width: 2.5rem;
		height: 2.5rem;
	}
	.m-locationsCabin__image:before{
		background-size: 1rem auto;
		left: 0.5rem;
	}
	.m-locationsCabin__image:after{
		background-size: 1rem auto;
		right: 0.5rem;
	}
  .m-locationsCabin__images .slick-arrow{
		width: 2.5rem;
		height: 2.5rem;
    top: 50%;
	}
	.m-locationsCabin__images .slick-prev{
		background-size: 1.2rem auto;
		left: .5rem;
	}
	.m-locationsCabin__images .slick-next{
		background-size: 1.2rem auto;
		right: .5rem;
	}
	.m-locationsCabin__text{
		font-size: 1.6rem;
		right: 0.3rem;
		top: 1.8rem;
	}
	.m-locationsCabin .m-table .icon img{
		width: 2.2rem;
		vertical-align: middle;
		margin-right: 0.3rem;
	}
	.m-locationsCabinPagenav__item img{
		max-width: 5.3rem;
		max-height: 4rem;
	}

}
/*---- 充実の各種サービス ----*/

.m-locationsOthers{
	background-color: #fff;
}
.m-locationsOthers__detail{
	width: 100%;
}
.m-locationsOthers__detail th,
.m-locationsOthers__detail td{
	vertical-align: top;
}
.m-locationsOthers__detail th{
	font-weight: bold;
}
.m-locationsOthers__detailIn,
.m-locationsOthers__detailIn th,
.m-locationsOthers__detailIn td{
	width: auto;
	border: none!important;
	vertical-align: top;
	padding: 0!important;
	font-weight: normal;
}
.m-locationsOthers__detailIn th{
	padding-right: 1em!important;
}
.m-locationsOthers__detailItem{
	border-top: 1px #E3DBD3 solid;
}
/* pc */
@media print,only screen and (min-width: 768px){

	.m-locationsOthers{
		padding: 0 9rem 9rem 9rem;
	}
	.m-locationsOthers__detail{
		border-top: 1px #E3DBD3 solid;
	}
	.m-locationsOthers__detail th,
	.m-locationsOthers__detail td{
		border-bottom: 1px #E3DBD3 solid;
		padding: 4.4rem 0 4rem 0;
	}
	.m-locationsOthers__detail th{
		width: 13rem;
	}
	.m-locationsOthers__detailItem{
		padding: 2.7rem 0 3rem 0;
	}
}

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

	.m-locationsOthers{
		padding: 0 3rem 0 3rem;
		margin: 0 -2rem;
	}
	.m-locationsOthers__detail th,
	.m-locationsOthers__detail td{
		font-size: 1.3rem;
		display: block;
	}
	.m-locationsOthers__detail th{
		border-top: 1px #E3DBD3 solid;
		padding: 2.6rem 0 0.5rem 0;
	}
	.m-locationsOthers__detail td{
		padding: 0 0 3rem 0;
	}
	.m-locationsOthers__detailIn th,
	.m-locationsOthers__detailIn td{
		display: table-cell;
	}
	.m-locationsOthers__detailItem{
		padding: 3rem 0 1rem 0;
	}


}

/* sp絞り込み検索--------------------------------------------------*/

.m-splistItem{
	font-size: 1.4rem;
	font-weight: bold;
	display: flex;
	justify-content:space-between;
	margin-bottom: 2.5rem;
}
.m-splistItem__switch{
	display: flex;
	align-items: center;
	justify-content:flex-end;
}
.m-splistItem__switchItem{
	opacity: 1;
	position: relative;
}
.m-splistItem__switchItem a{
  text-decoration:none;
}
.m-splistItem__switchItem.-current{
	opacity: 0.4;
}
.m-splistItem__switchItem.-current a{
  pointer-events:none;
}
.m-splistItem__switchItem:first-child{
	padding-right: 1rem;
	margin-right: 1rem;
}
.m-splistItem__switchItem:first-child:after{
	content: "";
	width: 1px;
	height: 1.3rem;
	position: absolute;
	top: 0.3rem;
	bottom: 0;
	right: 0;
	background-color: #000;
	display: block;
}
.m-splistItem__switchItem img{
	vertical-align: middle;
	margin-right: 0.9rem;
	position: relative;
	top: -0.1rem;
}
.m-splistItem__switchItem:first-child img{
	width: 1.5rem;
}
.m-splistItem__switchItem:nth-child(2) img{
	width: 1.2rem;
}
.m-splistHeading{
	font-size: 1.8rem;
	border-bottom: 1px #333 solid;
	padding-bottom: 0.6rem;
	margin-bottom: 2rem;
}
.m-splistMap{
	margin: 0 -2rem;
}

.m-splistModal{
  position:fixed;
  left:0;
  top:0;
  right:0;
  bottom:0;
  display:none;
  z-index: 999999;
}
.m-splistModal__close{
	width: 2.5rem;
	height: 2.5rem;
	background:url("../images/shared/close-white.svg") 0 0 no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: 2.7rem;
	right: 2.7rem;
  cursor:pointer;
}
.m-splistModal__overlay{
  position:absolute;
  left:0;
  top:0;
  right:0;
  bottom:0;
  background-color: rgba(0,0,0,0.7);
}
.m-splistModal__content{
	position:absolute;
	left:2rem;
	top:10rem;
	right: 2rem;

}
.m-splistModal__content .m-locations__item{
	width: 100%;
}

/* NEWS詳細
--------------------------------------------------*/

/*---- 日付カテゴリ ----*/

.m-newsMain__date{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.m-newsMain__dateTime{
	color: #9D9D9D;
}
.m-newsMain__dateCategory{
	color: #C38E2C;
	border: 1px #C38E2C solid;
}
.m-newsImage img{
	width: 100%;
}
/* pc */
@media print,only screen and (min-width: 768px){

	.m-newsMain{
		padding: 0 2rem;
		margin-bottom: 4.5rem;
	}
	.m-newsMain__inner{
		max-width: 1080px;
		margin: 0 auto 0 auto;
	}
	.m-newsMain__date{
		padding: 2.5rem 0;
	}
	.m-newsMain__dateTime{
		font-size: 1.4rem;
	}
	.m-newsMain__dateCategory{
		font-size: 1.4rem;
		border-radius: 0.2rem;
		padding: 0.6rem 1rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-newsMain{
		margin-bottom: 2rem;
	}
	.m-newsMain__date{
		padding: 1rem 0;
	}
	.m-newsMain__dateTime{
		font-size: 1.1rem;
	}
	.m-newsMain__dateCategory{
		font-size: 1.1rem;
		border-radius: 0.2rem;
		padding: 0.2rem 0.8rem;
	}
}


/*---- 画像 ----*/

.m-imageCaption__image{
	width: 100%;
}
.m-imageCaption.-twocol{
	display: flex;
	justify-content: flex-start;
}
/* pc */
@media print,only screen and (min-width: 768px){

	.m-imageCaption{
		margin-bottom: 6.5rem;
	}
	.m-imageCaption__caption{
		font-size: 1.4rem;
		margin-top: 2.5rem;
	}
	.m-imageCaption.-twocol{
		gap:3.2rem;
	}
	.m-imageCaption__item{
		width: calc( 50% - 1.6rem );
	}
}

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

	.m-imageCaption{
		margin-bottom: 3rem;
	}
	.m-imageCaption__caption{
		font-size: 1.1rem;
		margin-top: 0.5rem;
	}
	.m-imageCaption.-twocol{
		gap:1rem;
	}
	.m-imageCaption__item{
		width: calc( 50% - 0.5rem );
	}
}

/* お問い合わせ
--------------------------------------------------*/

/*---- top ----*/

.m-contactBox{
	text-align: center;
	border: 4rem #F5F2EF solid;
}
.m-contactBox__heading01{
	font-weight: bold;
}
.m-contactBox__heading02{
	font-weight: bold;
}
.m-contactBox__text02{
	color: #E2A94E;
	font-weight: bold;
}

/* pc */
@media print,only screen and (min-width: 768px){
	.m-contactBox{
		padding: 5rem 5rem 6rem 5rem;
		margin-bottom: 4rem;
		border: 4rem #F5F2EF solid;
	}
	.m-contactBox__heading01{
		font-size: 2.2rem;
		margin-bottom: 3.5rem;
	}
	.m-contactBox__heading02{
		font-size: 2.8rem;
		margin-bottom: 2.5rem;
	}
	.m-contactBox__text01{
		margin-bottom: 4rem;
	}
	.m-contactBox__text02{
		font-size: 1.6rem;
		margin: 3.5rem 0;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-contactBox{
		padding: 2.5rem;
		margin-bottom: 2rem;
		border: 2rem #F5F2EF solid;
		text-align: left;
	}
	.m-contactBox__heading01{
		font-size: 1.9rem;
		line-height: 1.5;
		margin-bottom: 1.5rem;
		text-align: center;
	}
	.m-contactBox__heading02{
		font-size: 2.6rem;
		line-height: 1.5;
		margin-bottom: 1.5rem;
		text-align: center;
	}
	.m-contactBox__text01{
		font-size: 1.4rem;
		margin-bottom: 1.5rem;
	}
	.m-contactBox__text02{
		font-size: 1.4rem;
		margin: 1.5rem 0;
	}
	.m-contactBox .m-button a{
		padding: 1.5rem 2rem;
	}
	.m-contactBox .m-button img{
		right: 2rem;
	}

}
/*---- フォームテーブル ----*/
.m-contactForm{
	background-color: #F5F2EF;
}
.m-contactForm__table{
	width: 100%;
}
.m-contactForm__table th,
.m-contactForm__table td{
	vertical-align: top;
}
.m-contactForm__table th{
	font-weight: bold;
	position: relative;
}
.m-contactForm__table td{
	vertical-align: middle;
}
.m-contactForm__table a{
	font-weight: bold;
}
.m-contactForm__must{
	background-color: #C32C4E;
	color: #fff;
	line-height: 1.5;
	position: absolute;
	right: 0;
}

/* pc */
@media print,only screen and (min-width: 768px){
	.m-contactForm{
		padding:10rem 9rem 8rem 9rem;
		margin-bottom: 7rem;
	}
	.m-contactForm__table{
		margin-bottom: 4rem;
	}
	.m-contactForm__table th{
		width: 22.8rem;
		padding: 2rem 4.5rem 0 3rem;
	}
	.m-contactForm__table td{
		padding: 1rem 3rem;
	}
	.m-contactForm__radio{
		margin: 1.3rem 0;
	}
	.m-contactForm__must{
		font-size: 1.2rem;
		padding: 0.2rem 1rem;
		top: 2.4rem;
	}
	.mw_wp_form_confirm .m-contactForm__checkbox{
		background:url("../images/contact/check.svg") 3rem 1.1em no-repeat;
		padding-left: 5.5rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-contactForm{
		padding:2.5rem 2rem;
		margin-bottom: 2rem;
	}
	.m-contactForm__table{
		margin-bottom: 1rem;
	}
	.m-contactForm__table th,
	.m-contactForm__table td{
		display: block;
	}
	.m-contactForm__table th{
		padding-bottom: 0.5rem;
	}
	.m-contactForm__table td{
		padding-bottom: 2.5rem;
	}
	.m-contactForm__must{
		font-size: 1.1rem;
		padding: 0.1rem 1rem;
		top: 0.5rem;
	}
	.m-contactForm__blank{
		display: none!important;
	}
	.mw_wp_form_confirm .m-contactForm__checkbox{
		background:url("../images/contact/check.svg") 0 0.5em no-repeat;
		padding-left: 2.2rem;
	}
}

/*---- フォーム ----*/
input[type='checkbox'],
input[type='radio'] {
  display: none;
}
.m-contactForm input[type="text"] ,
.m-contactForm select,
.m-contactForm textarea{
	width: 100%;
	background-color: #fff;
	border: 1px #E3DBD3 solid;
}
.m-contactForm textarea{
	height: 18rem;
}
.m-contactForm select{
	background:#fff url("../images/contact/arrow-select.svg") right 1.7rem center no-repeat;
}
input[type='checkbox'] + span,
input[type='radio'] + span{
	position: relative;
}
input[type='checkbox'] + span:before,
input[type='radio'] + span:before{
	border: 1px #E3DBD3 solid;
	background-color: #fff;
	left: 0;
	cursor: pointer;
	display: inline-block;
	vertical-align: middle;
}
input[type='radio'] + span:before,
input[type='radio'] + span:after{
	content: "";
	border-radius: 50%;
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
input[type='radio'] + span:after{
	width: 1.2rem;
	height: 1.2rem;
	background-color: #E3DBD3;
	left: 0.6rem;
	display: none;
}
input[type='checkbox'] + span:before,
input[type='checkbox'] + span:after{
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
input[type='checkbox'] + span:after{
	background:#fff url("../images/contact/check.svg") 0 0 no-repeat;
	display: none;
}
input[type="radio"]:checked + span:after,
input[type="checkbox"]:checked + span:after{
	display: block;
}
.mwform-radio-field{
	display: block;
}
.mw_wp_form .horizontal-item + .horizontal-item{
	margin-left: 0!important;
}
/* pc */
@media print,only screen and (min-width: 768px){

	.m-contactForm input[type="text"] ,
	.m-contactForm select,
	.m-contactForm textarea{
		padding: 1.6rem 2.8rem;
	}
	.m-contactForm textarea{
		height: 18rem;
	}
	.m-contactForm select{
		background-size: 1rem auto;
	}
	input[type='radio'] + span{
		margin-right: 6rem;
	}
	input[type='radio'] + span,
	input[type='checkbox'] + span{
		padding-left: 4rem;
	}
	input[type='radio'] + span:before,
	input[type='checkbox'] + span:before{
		width: 2.3rem;
		height: 2.3rem;
	}
	input[type='radio'] + span:after{
		width: 1.1rem;
		height: 1.1rem;
		left: 0.6rem;
	}
	input[type='checkbox'] + span:after{
		width: 1.4rem;
		height: 1.2rem;
		background-size: 1.4rem auto;
		left: 0.5rem;
	}
}

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

	.m-contactForm input[type="text"] ,
	.m-contactForm select,
	.m-contactForm textarea{
		font-size: 1.6rem;
		padding: 1rem 1.5rem;
	}
	.m-contactForm textarea{
		height: 10rem;
	}
	.m-contactForm select{
		background-size: 0.9rem auto;
	}
	input[type='radio'] + span{
		margin-right: 2rem;
	}
	input[type='radio'] + span,
	input[type='checkbox'] + span{
		padding-left: 3rem;
	}
	input[type='radio'] + span:before,
	input[type='checkbox'] + span:before{
		width: 2.1rem;
		height: 2.1rem;
	}
	input[type='radio'] + span:after{
		width: 0.9rem;
		height: 0.9rem;
		left: 0.6rem;
	}
	input[type='checkbox'] + span:after{
		width: 1.2rem;
		height: 1rem;
		background-size: 1.2rem auto;
		left: 0.5rem;
	}
}

/*---- ボタン ----*/

.m-form__buttons button{
	cursor: pointer;
}

/* pc */
@media print,only screen and (min-width: 768px){
	.m-form__buttons{
		display: flex;
		justify-content:center;
		gap:2rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-form__buttons button{
		margin-bottom: 1rem;
	}
}
/* notfound
--------------------------------------------------*/

.m-notfound{
	text-align: center;
}
.m-notfound__heading{
	font-weight: bold;
}
.m-notfound__english{
	color: #F5F2EF;
	font-family: 'Marcellus', serif;
}
.m-notfound__text{
	line-height: 1.86;
}

/* pc */
@media print,only screen and (min-width: 768px){
	.m-notfound{
		margin-top: 19.5rem;
		padding: 0 2rem;
	}
	.m-notfound__heading{
		font-size: 2.8rem;
		margin-bottom: 4rem;
	}
	.m-notfound__english{
		font-size: 5rem;
		margin-bottom: 4rem;
	}
	.m-notfound__text{
		font-size: 1.5rem;
		margin-bottom: 8.5rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-notfound{
		margin-top: 10rem;
		padding: 0 2rem;
	}
	.m-notfound__heading{
		font-size: 2rem;
		margin-bottom: 3rem;
	}
	.m-notfound__english{
		font-size: 3.4rem;
		margin-bottom: 3rem;
	}
	.m-notfound__text{
		font-size: 1.3rem;
		margin-bottom: 5rem;
	}
}

/* ルール--------------------------------------------------*/

.m-rule__heading01{
	background-color: #F5F2EF;
	border: 1px #E3DBD3 solid;
	line-height: 1.5;
	font-weight: bold;
}
.m-rule__heading02{
	font-weight: bold;
	margin-bottom: 0.5rem;
}

/* pc */
@media print,only screen and (min-width: 768px){
	.m-rule__text{
		margin-bottom: 4rem;
	}
	.m-rule__heading01{
		font-size: 1.8rem;
		padding: 1.6rem 4rem 1.4rem 4rem;
		margin:6.5rem 0 2.5rem 0;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-rule__text{
		margin-bottom: 2.5rem;
	}
	.m-rule__heading01{
		font-size: 2rem;
		padding: 0.7rem 1.5rem 0.8rem 1.5rem;
		margin:2.5rem 0 1.5rem 0;
	}
}
/*---- リスト ----*/

.m-rule__list01{
	padding-left: 1.9em;
	counter-reset: number 0;
	position: relative;
}
.m-rule__list03{
	padding-left: 1.5em;
	counter-reset: number 0;
	position: relative;
}
.m-rule__list04{
	padding-left: 1.5em;
	list-style:disc;
}
.m-rule__list01>li:before{
	counter-increment: number 1;
	content: "(" counter(number) ")";
	position: absolute;
	left: 0;
}
.m-rule__list03>li:before{
	counter-increment: number 1;
	content:  counter(number) ".";
	position: absolute;
	left: 0;
}
.m-rule__list02 {
	margin-left: 1.5em;
  list-style-type: none;
  counter-reset: number;/* カウンターを初期化 */
}
.m-rule__list02 li {
  position: relative;
}
.m-rule__list02 li::before {
  content: counter(number);
  counter-increment: number;
	font-size: 1.2rem;
	line-height: 1;
  	padding: 0 0.3em;
	position: relative;
	top: -0.1rem;
	margin-left: -1.5em;
	margin-right: 0.5rem;
}
.m-rule__list02 li::after {
  content: '';
  position: absolute;
  display: block;
  top: 0.37em;
  left: -1.25em;
  width: 1em;
  height: 1em;
  border: 1px solid #000;
  border-radius: 50%;
}
.m-rule__list05{
	counter-reset: number 0;
	padding-left: 2.3em;
	position: relative;
	margin-bottom: 0.5rem;
}
.m-rule__list05 li:before{
	counter-increment: number 1;
	content: "(" counter(number,katakana-iroha) ")";
	position: absolute;
	left: 0;
}
.m-rule__list06{
	counter-reset: number 0;
	padding-left: 2.3em;
	position: relative;
	margin-bottom: 0.5rem;
}
.m-rule__list06 li:before{
	counter-increment: number 1;
	content: "注" counter(number) ")";
	position: absolute;
	left: 0;
}
/*---- QRコード----*/

.m-qr{
	background-color: #F5F2EF;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.m-qr__item{
	display: flex;
	align-items: center;
}
.m-qr__text{
	text-align: right;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-qr{
		padding: 6rem 7.5rem 6rem 4.5rem;
		gap:7rem 2rem;
	}
	.m-qr__item{
		width: calc( 33% - 2rem );
		justify-content: flex-end;
		gap:0 2rem;
	}
	.m-qr__text{
		width: calc( 100% - 14rem );
	}
	.m-qr__qr{
		max-width: 12rem;
		width: 40%;
	}
	.m-qr__qr img{
		width: 100%;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-qr{
		padding: 2rem 2rem;
	}
	.m-qr__item{
		width: 50%;
		justify-content: space-between;
		align-items: flex-start;
		margin-bottom: 2rem;
	}
	.m-qr__item:last-child{
		margin-bottom: 0;
	}
	.m-qr__text{
		width: 51%;
		font-size: 1.2rem;
	}
	.m-qr__qr{
		width: 43%;
	}
}

/* 企業情報
--------------------------------------------------*/


/*---- recruit ----*/

.m-recriutBunner{
	background: url("../images/corporate/picture.jpg") center center no-repeat;
	background-size: cover;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-recriutBunner{
		padding: 7.3rem 0 6.5rem;
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-recriutBunner{
		margin: 0 -2rem;
		padding: 5rem 2rem 2rem 2rem;
	}


}
/*---- ページナビ ----*/

.m-pageNav{
	background-color: #F5F2EF;
}
.m-pageNav__inner{
	display: flex;
	justify-content: center;
}
.m-pageNav__inner .m-button a,
.m-pageNav__inner .m-button button{
	display: block;
}
.m-pageNav__inner li.current a{
	background-color: #AA9488;
}
/* pc */
@media print,only screen and (min-width: 768px){
	.m-pageNav{
		padding: 3.4rem 2rem;
		margin-top: 9rem;
	}
	.m-pageNav__inner{
		max-width: 1080px;
		margin: 0 auto;
		gap:0 1.4rem;
	}
	.m-pageNav__inner .m-button{
		width: calc( 25% - 1.05rem );
	}
	.m-pageNav__inner .m-button a,
	.m-pageNav__inner .m-button button{
		padding: 1.8rem 2rem;
	}
	.m-pageNav__inner .m-button img{
		width: 0.7rem;
	}
	.m-pageNav .m-button a:hover img,
	.m-pageNav button.m-button:hover img{
		transform: translateY(0.3rem);
	}
}

/* sp */
@media screen and (max-width: 767px){
	.m-pageNav{
		margin:3rem -2rem 0 -2rem;
		padding: 2rem;
	}
	.m-pageNav__inner{
		flex-wrap: wrap;
		gap:1rem 1rem;
	}
	.m-pageNav__inner .m-button{
		width: calc( 50% - 0.5rem );
	}
	.m-pageNav__inner .m-button a,
	.m-pageNav__inner .m-button button{
		padding: 1.5rem 1.5rem;
		text-align: center;
	}
	.m-pageNav__inner .m-button img{
		width: 0.7rem;
		right: 1.5rem;
	}
	.m-pageNav .m-button a:hover img,
	.m-pageNav button.m-button:hover img{
		transform: translateY(0.3rem);
	}

}


/* 採用情報
--------------------------------------------------*/


/*---- PROCESS ----*/

.m-process{
	background-color: #fff;
}
.m-process li{
	border-top: 1px #E3DBD3 solid;
	position: relative;
	font-weight: bold;
}
.m-process__step{
	position: absolute;
	color: #AA9488;
}
/* pc */
@media print,only screen and (min-width: 768px){

	.m-process{
		padding: 9rem;
	}
	.m-process li{
		padding: 2.5rem 8.5rem;
	}
	.m-process__step{
		top: 0.5rem;
		left: 0.8rem;
		font-size: 1.2rem;
	}
}

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

	.m-process{
		padding: 4rem 2rem;
	}
	.m-process li{
		padding:3rem 0 2rem 0;
	}
	.m-process__step{
		top: 0.4rem;
		left: 0.4rem;
		font-size: 1.1rem;
	}

}
/*---- CONCEPT ----*/

/* pc */
@media print,only screen and (min-width: 768px){


}

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


}


/*
--------------------------------------------------*/


/*---- CONCEPT ----*/

/* pc */
@media print,only screen and (min-width: 768px){


}

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


}
/*---- CONCEPT ----*/

/* pc */
@media print,only screen and (min-width: 768px){


}

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


}


/*
--------------------------------------------------*/


/*---- CONCEPT ----*/

/* pc */
@media print,only screen and (min-width: 768px){


}

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


}
/*---- CONCEPT ----*/

/* pc */
@media print,only screen and (min-width: 768px){


}

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


}


/*
--------------------------------------------------*/


/*---- CONCEPT ----*/

/* pc */
@media print,only screen and (min-width: 768px){


}

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


}
/*---- CONCEPT ----*/

/* pc */
@media print,only screen and (min-width: 768px){


}

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


}
