@charset "utf-8";
/* ---------------------------------------------------------------------------------
Copyright c　Neutral STYLE allright reserved 

HTML CSS Selectors top

$Revision: 2.0 $
--------------------------------------------------------------------------------- */
.sec-ttl {
  display: flex;
  align-items: flex-end;
  align-content: flex-end;
  width: 966px;
  margin: 0 auto 60px;
  font-size: 14px;
  line-height: 1;
  color: #505050;
}
.sec-ttl .en {
  width: 220px;
  font-family: var(--font-en);
  font-size: 40px;
  font-weight: 300;
  text-box: trim-both cap alphabetic;
}

/*---------------------------------------------------------------------------------
main visual
--------------------------------------------------------------------------------- */
.mv-area {
  width: 100%;
  height: 100vh;
  padding-top: 120px;
  position: relative;
}
.mv-area__img {
  height: 100%;
  position: relative;
  z-index: 1;
  transition-delay: 700ms;
}
.mv-area__txt {
  width: fit-content;
  height: fit-content;
  font-family: var(--font-serif);
  font-size: 36px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.5em;
  writing-mode: vertical-rl;
  color: #fff;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  z-index: 3;
  transform: translate(0,20px);
}
.mv-area-wiraon {
  width: 100%;
  height: 80px;
  background-color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  content:"";
  z-index: 2;
  transition-delay: 700ms;
}
.mv-area-wiraon::before {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  width: 62px;
  height: 62px;
  background-color: #EC5431;
  border-radius: 50%;
  position: absolute;
  top: -20px;
  left: 50%;
  margin-left: -390px;
  font-family: var(--font-en);
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  color: #fff;
  text-box: trim-both cap alphabetic;
  content:"NEW";
}

.mv-area-wiraon a {
  display: block;
  width: 727px;
  height: 58px;
  padding: 18px 0 0 14px;
  border-bottom: 1px solid #EC5431;
  margin: 7px auto 0;
  position: relative;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  color: #EC5431;
  transform: translate(50px,0);
}
.mv-area-wiraon a::after {
  display: block;
  width: 42px;
  height: 42px;
  background: url("../img_v2/top/icon_woraon_arrow.svg") no-repeat center;
  position: absolute;
  top: 0;
  right: 14px;
  bottom: 0;
  margin: auto;
  content:"";
}

/*---------------------------------------------------------------------------------
Concept
--------------------------------------------------------------------------------- */
.concept {
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  width: 966px;
  padding-top: 113px;
  margin: 0 auto 130px;
}
.concept__img {
  width: 442px;
}
.concept__inner {
  width: 448px;
  font-family: var(--font-serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 2.14;
  color: #505050;
  letter-spacing: 0.1em;
}
.concept__banner {
  width: 528px;
  margin: 54px auto 0;
}

/*---------------------------------------------------------------------------------
OUR MENU
--------------------------------------------------------------------------------- */
.ourmenu {
  width: 966px;
  margin: 0 auto 56px;
}
.ourmenu-list {
  display: flex;
  flex-wrap: wrap;
}
.ourmenu-list li {
  width: calc(100% / 3);
  padding: 20px 28px 25px;
  margin-bottom: 34px;
  position: relative;
}
.ourmenu-list li::before {
  width: 1px;
  height: 100%;
  background-color: #DEDEDE;
  position: absolute;
  top: 0;
  right: 0;
  content:"";
}
.ourmenu-list li:nth-of-type(3n+2) {
  transition-delay: 500ms;
}
.ourmenu-list li:nth-of-type(3n) {
  transition-delay: 700ms;
}
.ourmenu-list li:nth-of-type(3n)::before {
  content:none;
}
.ourmenu-list__img {
  width: 200px;
  height: 200px;
  margin: 0 auto 40px;
  border-radius: 50%;
  overflow:hidden;
}
.ourmenu-list__name {
  margin-bottom: 35px;
  font-size: 24px;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.1em;
}
.ourmenu-list__desc {
  height: 181px;
  margin-bottom: 30px;
  font-size: 14px;
  line-height: 1.857;
  display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 7;
}
.ourmenu-list__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  height: 46px;
  background-color: #F5DBBE;
  border: 1px solid #C9A073;
  border-radius: 10px;
  text-box: trim-both cap alphabetic;
}

/*---------------------------------------------------------------------------------
COUPON
--------------------------------------------------------------------------------- */
.coupon {
  padding: 62px 0 50px;
  background-color: #FFFAF5;
}
.coupon-inner {
  width: 966px;
  margin: 0 auto;
}
.coupon-inner__read {
  margin-bottom: 52px;
  font-size: 16px;
  line-height: 2;
}
.coupon-inner__list {
  display: flex;
  flex-wrap: wrap;
}
.coupon-inner__list dt {
  width: 127px;
  padding-top: 2px;
  font-size: 14px;
  margin-bottom: 30px;
}
.coupon-inner__list dd {
  width: calc(100% - 127px);
  margin-bottom: 30px;
  font-size: 16px;
}
.coupon-inner__list a {
  text-decoration: underline;
}


/*---------------------------------------------------------------------------------
ROOM
--------------------------------------------------------------------------------- */
.room {
  width: 966px;
  margin: 140px auto 100px;
}
.room-list {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  align-content: flex-start;
  flex-wrap: wrap;
}
.room-list li {
  width: 442px;
  margin-bottom: 38px;
}
.room-list li:nth-of-type(2n) {
  transition-delay: 500ms;
}

/*---------------------------------------------------------------------------------
ACCESS
--------------------------------------------------------------------------------- */
.access {
  width: 966px;
  margin: 0 auto 136px;
}
.access__map {
  width: 778px;
  height: 518px;
  margin: 0 auto 70px;
  position: relative;
}
.access__map iframe {
  width: 100%;
  height: 100%;
}
.access__map > a {
  display: block;
  font-size: 14px;
  line-height: 1;
  text-decoration: underline;
  position: absolute;
  right: 0;
  bottom: -30px;
}
.access-data {
  display: flex;
  justify-content: center;
}
.access-data li {
  margin: 0 52px 57px;
  text-align: center;
}
.access-data li:nth-of-type(3n+2) {
  transition-delay: 500ms;
}
.access-data li:nth-of-type(3n) {
  transition-delay: 700ms;
}
.access-data__ttl {
  margin-bottom: 22px;
  font-size: 18px;
  line-height: 1;
  color: #C9A073;
}
.access-data__txt {
  font-size: 16px;
  line-height: 2;
}
.access-data__tel {
  margin-top: 12px;
  font-size: 22px;
}

.access-inquiry {
  width: 585px;
  padding: 32px 32px 36px;
  background-color: #FFFAF5;
  border: 1px solid #C9A073;
  margin: 0 auto 32px;
  line-height: 1;
  text-align: center;
}
.access-inquiry__ttl {
  margin-bottom: 24px;
  font-size: 16px;
}
.access-inquiry__tel {
  margin-bottom: 24px;
  font-size: 38px;
}
.access-inquiry__txt {
  font-size: 14px;
}

.access__banner {
  width: 528px;
  margin: 0 auto;
}

.massage {
  padding: 60px 0;
  background-color: #FFFAF5;
  margin-bottom: 136px;
}
.massage-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-content: center;
  flex-direction: row-reverse;
  width: 636px;
  margin: 0 auto;
}
.massage-inner {
  width: 338px;
}
.massage-inner__name {
  margin-bottom: 12px;
  font-size: 30px;
  line-height: 1;
}
.massage-inner__txt {
  margin-bottom: 42px;
  font-size: 14px;
  line-height: 1.428;
}
.massage-inner__btn {
  display: block;
  padding-bottom: 10px;
  border-bottom: 1px solid #505050;
  font-size: 14px;
  line-height: 1;
  position: relative;
}
.massage-inner__btn::after {
  width: 38px;
  height: 1px;
  background-color: #505050;
  position: absolute;
  right: 0;
  bottom: -1px;
  content:"";
  transform: rotate(-27deg);
  transform-origin: top right;
}

.massage__img {
  width: 236px;
}

/*---------------------------------------------------------------------------------
Q&A
--------------------------------------------------------------------------------- */
.faq {
  width: 966px;
  padding-bottom: 155px;
  margin: 0 auto;
}
.faq-list div {
  margin-bottom: 15px;
}
.faq-list dt {
  padding: 17px 140px 17px 97px;
  background-color: #FAEBDA;
  position: relative;
  
}
.faq-list dt::before {
  font-family: var(--font-en);
  font-size: 30px;
  line-height: 1;
  font-weight: 300;
  position: absolute;
  top: 15px;
  left: 33px;
  content:"Q.";
}
.faq-list dt::after {
  width: 20px;
  height: 20px;
  border-top: 1px solid #505050;
  border-right: 1px solid #505050;
  transform: rotate(135deg);
  position: absolute;
  top: 15px;
  right: 62px;
  content:"";
}
.faq-list dt.selected::after {
  transform: rotate(-45deg);
  top: 25px;
}

.faq-list dd {
  padding: 19px 70px 25px 97px;
  background-color: #FFFAF5;
  position: relative;
}
.faq-list dd::before {
  font-family: var(--font-en);
  font-size: 30px;
  line-height: 1;
  font-weight: 300;
  position: absolute;
  top: 17px;
  left: 33px;
  content:"A.";
}
