@import"b9963a7bd7134287a920abc2f5a417ae.css";

/*!
 * ress.css • v4.0.0
 * MIT License
 * github.com/filipelinhares/ress
 */

  /* ---------------------------------------
 2025/02/14追加
 ---------------------------------------- */
 /* アコーディオン全体のスタイル */
.accordion {
  max-width: 1000px;
  width: 90%;
  border-top: 1px dashed #eee;
  overflow: hidden;
  padding: 20px 0;
  margin: 0 auto;
}

/* アコーディオンタイトルのスタイル */
.accordion-title {
  cursor: pointer;
  padding: 10px 10px 3px 10px;
  font-size: 14px;
  font-weight: 400;
  margin: 0;
  transition: .2s all ease-out;
  border-bottom: 0.5px solid #707070;
}

.accordion-title:hover {
  background-color: #efefef;
}

/* アコーディオンコンテンツのスタイル */
.accordion-content {
  max-height: 0;
  overflow: hidden;
  /* padding: 0 15px; */
  background-color: #fff;
  font-size: 14px;
  transition: max-height 0.5s ease-out;
}

/* アクティブなアコーディオンコンテンツのスタイル */
.accordion-title.active + .accordion-content {
  max-height: 1000px;
}

/* アコーディオンコンテンツ内の画像スタイル */
.accordion-content img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 10px 0; /* 画像とテキストの間にスペースを追加 */
}
.accordion-content p {
  padding: 15px;
}

@media screen and (max-width: 929px) {
  .accordion {
    border-top: 1px dashed #eee;
    border-bottom: 1px dashed #eee;
    margin: 40px auto 0;
  }
}

/* -----------------------------------------END */
html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  word-break: normal;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4
}

*, ::before, ::after {
  background-repeat: no-repeat;
  box-sizing: inherit
}

::before, ::after {
  text-decoration: inherit;
  vertical-align: inherit
}

* {
  padding: 0;
  margin: 0
}

hr {
  overflow: visible;
  height: 0;
  color: inherit
}

details, main {
  display: block
}

summary {
  display: list-item
}

small {
  font-size: 80%
}

[hidden] {
  display: none
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted
}

a {
  background-color: transparent
}

a:active, a:hover {
  outline-width: 0
}

code, kbd, pre, samp {
  font-family: monospace, monospace
}

pre {
  font-size: 1em
}

b, strong {
  font-weight: bolder
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -0.25em
}

sup {
  top: -0.5em
}

table {
  border-color: inherit;
  text-indent: 0
}

input {
  border-radius: 0
}

[disabled] {
  cursor: default
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

textarea {
  overflow: auto;
  resize: vertical
}

button, input, optgroup, select, textarea {
  font: inherit
}

optgroup {
  font-weight: bold
}

button {
  overflow: visible
}

button, select {
  text-transform: none
}

button, [type=button], [type=reset], [type=submit], [role=button] {
  cursor: pointer;
  color: inherit
}

button::-moz-focus-inner, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0
}

button:-moz-focusring, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText
}

button, html [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button
}

button, input, select, textarea {
  background-color: transparent;
  border-style: none
}

a:focus, button:focus, input:focus, select:focus, textarea:focus {
  outline-width: 0
}

select {
  -moz-appearance: none;
  -webkit-appearance: none
}

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

select::-ms-value {
  color: currentColor
}

legend {
  border: 0;
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal;
  max-width: 100%
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  color: inherit;
  font: inherit
}

img {
  border-style: none
}

progress {
  vertical-align: baseline
}

[aria-busy=true] {
  cursor: progress
}

[aria-controls] {
  cursor: pointer
}

[aria-disabled=true] {
  cursor: default
}

@-webkit-keyframes hoverText {
  0% {
    width: 0
  }

  100% {
    width: 100%
  }
}

@keyframes hoverText {
  0% {
    width: 0
  }

  100% {
    width: 100%
  }
}

:root {
  overflow-y: scroll;
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  box-sizing: border-box
}

body {
  position: relative;
  margin: 0;
  background: #fff;
  color: #000;
  font-family: "Noto Serif JP", serif;
  -webkit-font-smoothing: antialiased
}

body.fixed {
  position: fixed
}

@media screen and (max-width: 929px) {
  body {
    font-size: 14px;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

@media screen and (min-width: 930px) {
  body {
    font-size: 16px;
    line-height: 1.875;
    letter-spacing: 1.28px
  }
}

button, input[type=submit], input[type=reset] {
  font: inherit
}

button:not(:disabled), input[type=submit]:not(:disabled), input[type=reset]:not(:disabled) {
  cursor: pointer
}

h1, h2, h3, h4, h5, h6, b, em {
  font-weight: normal
}

img {
  vertical-align: top
}

*.lazyload, *.lazyloading {
  opacity: 0;
  transition: all .3s ease-out
}

*.lazyloaded {
  opacity: 1;
  transition: all .3s ease-out
}

@media screen and (min-width: 930px) {
  *.lazyload, *.lazyloading {
    transform: translateY(30px)
  }
}

svg {
  fill: currentColor
}

a {
  color: inherit
}

img {
  max-width: 100%
}

@media screen and (max-width: 929px) {
  .-pc {
    display: none !important
  }
}

@media screen and (min-width: 930px) {
  .-sp {
    display: none !important
  }
}

.Grid {
  display: -ms-grid;
  display: grid
}

.List li {
  margin-left: 1.5em
}

.text-center {
  text-align: center
}

.text-right {
  text-align: center
}

.hoverImg {
  transition: .2s all ease-out
}

.hoverImg:hover {
  transform: scale(1.02)
}

.Logo {
  display: block
}

.Logo img, .Logo svg {
  width: 99.99999%;
  height: auto
}

.MenuBtn {
  right: 20px;
  z-index: 200;
  width: 50px;
  height: 50px
}

.MenuBtn button {
  border: 1px solid #000
}

.MenuBtn button span {
  background-color: #000
}

.MenuBtn.-opened {
  position: fixed;
  color: #777
}

.MenuBtn.-closed {
  position: absolute
}

@media screen and (max-width: 929px) {
  .MenuBtn {
    top: 14px
  }
}

@media screen and (min-width: 930px) {
  .MenuBtn {
    top: 20px
  }
}

.-white:not(.-fixed) .MenuBtn button {
  border: 1px solid #fff
}

.-white:not(.-fixed) .MenuBtn button span {
  background-color: #fff
}

.-black .MenuBtn button {
  border: 1px solid #000
}

.-black .MenuBtn button span {
  background-color: #000
}

.MenuBtn button {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: none
}

.MenuBtn button span {
  position: absolute;
  left: 0;
  right: 0;
  width: 15px;
  height: 1px;
  margin: auto;
  transition: all .2s ease-out
}

.MenuBtn button span:nth-of-type(1) {
  top: calc(50% - 3px)
}

.MenuBtn button span:nth-of-type(2) {
  top: calc(50% + 3px)
}

.MenuBtn button[aria-selected=true] {
  border: 1px solid #000 !important
}

.MenuBtn button[aria-selected=true] span {
  top: 50%;
  background-color: #000 !important
}

.MenuBtn button[aria-selected=true] span:nth-of-type(1) {
  transform: rotate(45deg)
}

.MenuBtn button[aria-selected=true] span:nth-of-type(2) {
  right: 0;
  transform: rotate(-45deg)
}

.SnsIconList {
  display: flex
}

.SnsIconList li {
  margin-right: 5px;
  line-height: 1;
  font-size: 1.5rem
}

.Slider {
  overflow-y: visible;
  overflow-x: hidden
}

.Slider.-view3, .Slider.-view1 {
  padding-bottom: 40px
}

.Slider.-view3.-single, .Slider.-view1.-single {
  padding-bottom: 0
}

.Slider .swiper-pagination {
  bottom: 0;
  display: none;
}

.Slider .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 10px
}

.Slider.-view1 .swiper-pagination {
  text-align: right
}

.Slider .swiper-pagination-bullet-active {
  background: #0f306d
}

.swiper-container {
  height: 100%
}

@media screen and (max-width: 929px) {
  .swiper-container.-view3.-single {
    width: 100%
  }
}

@media screen and (min-width: 930px) {
  .swiper-container.-view3.-single {
    max-width: 1120px;
    padding: 0 100px;
    width: 84vw
  }
}

.swiper-slide .__photo {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%
}

.swiper-slide .__caption {
  margin: 5px 10px
}

.swiper-slide .__caption p {
  font-size: .75rem
}

.swiper-slide .__text {
  letter-spacing: .96px
}

.swiper-slide .__text dl dd {
  margin-top: 20px;
  font-size: .75rem
}

@media screen and (max-width: 929px) {
  .Content_slideGallery .swiper-slide .__text {
    margin: 20px 5px 0
  }
}

@media screen and (min-width: 930px) {
  .Content_slideGallery .swiper-slide .__text {
    margin: 30px 25px 0
  }
}

.LinkButton li {
  list-style: none;
  font-size: .875rem;
  line-height: 1
}

.LinkButton li:not(:first-child) {
  margin-top: 15px
}

.LinkButton li a {
  align-items: center;
  justify-content: center;
  min-width: 260px;
  min-height: 40px;
  padding: 10px 20px;
  border: 1px solid #707070;
  text-decoration: none;
  transition: .2s all ease-out
}

.LinkButton li a:hover {
  background-color: #efefef
}

@media screen and (max-width: 929px) {
  .LinkButton li a {
    display: flex;
    width: 100%;
    max-width: 350px
  }
}

@media screen and (min-width: 930px) {
  .LinkButton li a {
    display: inline-flex
  }
}

@media screen and (max-width: 929px) {
  .AccordionBox .TextBtn.-close {
    margin-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .AccordionBox .TextBtn.-close {
    margin-top: 50px
  }
}

.ContentData_btnbox {
  display: flex;
  align-items: center;
  justify-content: space-between
}

.AccordionBox_content {
  display: none
}

.AccordionBox_btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: .2s opacity ease-out
}

.AccordionBox_btn:hover {
  opacity: .6
}

.AccordionBox_btn .IconBtn {
  transition: .2s all ease-out;
  margin-right: 5px
}

.AccordionBox_btn[aria-selected=true] .IconBtn {
  transform: rotate(45deg)
}

.DataList dl div {
  border-bottom: 1px dashed #eee
}

.DataList dl div dt {
  color: #aaa;
  text-transform: uppercase
}

.DataList dl div dd ul li {
  list-style: none
}

@media screen and (max-width: 929px) {
  .DataList dl {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }

  .DataList dl div {
    padding-bottom: 15px
  }

  .DataList dl div:nth-child(n+2) {
    padding-top: 15px
  }

  .DataList dl div dd {
    margin-top: 10px
  }
}

@media screen and (min-width: 930px) {
  .DataList dl {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }

  .DataList dl div {
    display: flex;
    padding-bottom: 20px
  }

  .DataList dl div:nth-child(n+2) {
    padding-top: 20px
  }

  .DataList dl div dt {
    width: 100px;
    flex: 0 0 100px
  }

  .DataList dl div dd {
    flex: 1 1 auto
  }
}

@media screen and (min-width: 930px) {
  html[lang=en-US] .DataList dl div dt {
    width: 120px;
    flex: 0 0 120px
  }
}

.AccordionBox .DataList dl div:last-child {
  border-bottom: none
}

.TextBtn {
  font-size: .875rem;
  letter-spacing: 1.12px;
  line-height: 1;
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase
}

.TextBtn.-close {
  position: relative;
  display: flex;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 5px;
  padding-right: 2px;
  align-items: center
}

@media screen and (max-width: 929px) {
  .TextBtn.-close {
    font-size: .75rem
  }
}

.TextBtn.-close::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: #000
}

.TextBtn.-close:hover::after {
  -webkit-animation: hoverText .3s ease-out;
  animation: hoverText .3s ease-out
}

.TextBtn.-close i {
  margin-right: 2px;
  font-size: 1rem;
  line-height: 1
}

.TextBtn.-details a {
  position: relative;
  display: inline-flex;
  padding-bottom: 5px;
  padding-right: 2px;
  text-decoration: none
}

.TextBtn.-details a::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: #000
}

.TextBtn.-details a:hover::after {
  -webkit-animation: hoverText .3s ease-out;
  animation: hoverText .3s ease-out
}

.PageHeading {
  line-height: 1
}

.PageHeading span {
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase
}

.PageHeading b {
  font-size: 1rem;
  letter-spacing: 1.28px
}

@media screen and (max-width: 929px) {
  .PageHeading span {
    font-size: 1.5rem;
    letter-spacing: 1.92px
  }

  .PageHeading b {
    margin-left: 15px
  }
}

@media screen and (min-width: 930px) {
  .PageHeading span {
    font-size: 1.75rem;
    letter-spacing: 2.24px
  }

  .PageHeading b {
    margin-left: 20px
  }
}

.PageHeading.-center {
  text-align: center
}

.PageHeading.-center b, .PageHeading.-center span {
  display: block
}

.PageHeading.-center b {
  margin-left: 0
}

@media screen and (max-width: 929px) {
  .PageHeading.-center b {
    margin-top: 16px
  }
}

@media screen and (min-width: 930px) {
  .PageHeading.-center b {
    margin-top: 12px
  }
}

.PageNav {
  position: relative;
  text-align: center
}

.PageNav .wp-pagenavi a.page, .PageNav .wp-pagenavi span.current {
  border: none
}

.PageNav .wp-pagenavi span.current {
  border-bottom: 1px solid #000
}

.PageNav .wp-pagenavi a.nextpostslink, .PageNav .wp-pagenavi a.previouspostslink {
  position: absolute;
  display: inline-flex;
  align-items: center;
  border: none;
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase
}

.PageNav .wp-pagenavi a.nextpostslink {
  right: 0;
  margin-left: auto
}

.PageNav .wp-pagenavi a.previouspostslink {
  left: 0;
  margin-right: auto
}

@media screen and (max-width: 929px) {
  .PageNav {
    margin-top: 50px
  }
}

@media screen and (min-width: 930px) {
  .PageNav {
    margin-top: 110px
  }
}

.SlideGallery {
  width: 100%;
  height: 100%
}

.SiteImage {
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat
}

.SiteImage.-top {
  width: 100%
}

@media screen and (max-width: 929px) {
  .SiteImage.-top {
    height: 375px;
    margin-top: 118px
  }
}

@media screen and (min-width: 930px) {
  .SiteImage.-top {
    height: 574px;
    margin-top: 200px
  }
}

@media screen and (min-width: 930px) {
  .SiteImage.-menuarea {
    height: 100%
  }
}

.Header {
  position: relative;
  top: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  color: #000
}

@media screen and (max-width: 929px) {
  .Header {
    height: 78px
  }
}

@media screen and (min-width: 930px) {
  .Header {
    height: 90px
  }
}

.Header.-fixed {
  position: fixed;
  background: #fff
}

.Header.-white {
  color: #fff
}

.Header.-black {
  color: #000;
  background: rgba(255, 255, 255, .6)
}

.Header.-top {
  position: absolute;
  transition: .3s all ease-out
}

.Header.-top.-scrolled {
  top: -100px
}

.Header.-top.-fixed {
  position: fixed
}

.Header.-top.-fixed.-white {
  color: #000
}

.Header li {
  list-style: none
}

.Header a {
  text-decoration: none;
  color: #000
}

.Header_logo {
  position: absolute;
  margin: 0;
  font-size: 12px
}

.-white:not(.-fixed) .Header_logo svg {
  fill: #fff
}

.-black .Header_logo svg {
  fill: #000
}

@media screen and (max-width: 929px) {
  .Header_logo {
    left: 18px;
    width: 42px
  }
}

@media screen and (min-width: 930px) {
  .Header_logo {
    left: 24px;
    width: 54px
  }
}

.Header_nav ul {
  display: flex
}

.Header_nav ul li {
  margin: 0 20px;
  font-family: "Cormorant Garamond", serif;
  letter-spacing: 1.12px;
  text-transform: uppercase;
  font-size: .875rem
}

.Header_nav ul li a {
  position: relative;
  padding-bottom: 5px
}

.Header_nav ul li a::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 0;
  height: 1px;
  background: #000
}

.-white .Header_nav ul li a::after {
  background: #fff
}

.-fixed .Header_nav ul li a::after {
  background: #000
}

.Header_nav ul li a:hover::after {
  width: 100%;
  -webkit-animation: hoverText .3s ease-out;
  animation: hoverText .3s ease-out
}

@media screen and (max-width: 929px) {
  .Header_nav {
    display: none
  }
}

.PageHeader {
  position: relative;
  width: 100%
}

@media screen and (max-width: 929px) {
  .PageHeader {
    width: 100%
  }
}

@media screen and (min-width: 930px) {
  .PageHeader {
    min-height: calc(100vh + 70px)
  }
}

@media screen and (min-width: 1368px) {
  .PageHeader {
    min-height: 1068px
  }
}

.PageHeader_kv {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat
}

@media screen and (max-width: 929px) {
  .PageHeader_kv {
    height: calc(100vh - 78px)
  }

  .PageHeader_kv.-sp {
    width: 100%;
    display: block
  }

  .PageHeader_kv.-sp+.PageHeader_kv {
    display: none
  }
}

@media screen and (min-width: 930px) {
  .PageHeader_kv {
    width: 76.28vw;
    min-height: 100vh
  }

  .PageHeader_kv.-sp {
    display: none
  }
}

@media screen and (min-width: 1368px) {
  .PageHeader_kv {
    width: calc(100% - 324px)
  }
}

.PageHeader_content {
  z-index: 2;
  background: #fff
}

@media screen and (max-width: 929px) {
  .PageHeader_content {
    width: 90vw;
    padding: 60px 35px;
    margin-top: -200px
  }
}

@media screen and (min-width: 930px) {
  .PageHeader_content {
    width: 520px;
    min-height: 520px;
    margin-top: -320px;
    margin-left: auto;
    padding: 85px
  }
}

.PageHeader_content .__heading span {
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase
}

@media screen and (max-width: 929px) {
  .PageHeader_content .__heading span {
    font-size: 1.125rem;
    letter-spacing: 1.44px
  }

  .PageHeader_content .__heading b {
    font-size: .6875rem;
    letter-spacing: .88px
  }
}

@media screen and (min-width: 930px) {
  .PageHeader_content .__heading span {
    font-size: 1.5rem;
    letter-spacing: 1.92px
  }

  .PageHeader_content .__heading b {
    font-size: .75rem;
    letter-spacing: .96px
  }
}

.PageHeader_content .__copy {
  margin-top: 10px
}

@media screen and (max-width: 929px) {
  .PageHeader_content .__copy {
    font-size: 1.125rem;
    line-height: 1.6666666667;
    letter-spacing: 1.44px
  }
}

@media screen and (min-width: 930px) {
  .PageHeader_content .__copy {
    font-size: 1.5rem;
    line-height: 1.6666666667;
    letter-spacing: 1.92px
  }
}

@media screen and (max-width: 929px) {
  .PageHeader_content .__text {
    margin-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .PageHeader_content .__text {
    margin-top: 50px
  }
}

.LocalNav {
  margin-left: auto;
  margin-right: auto
}

@media screen and (max-width: 929px) {
  .LocalNav {
    margin-left: 36px;
    margin-right: 36px
  }
}

@media screen and (min-width: 930px) {
  .LocalNav {
    max-width: 1100px;
    padding-left: 100px;
    padding-right: 100px
  }
}

.LocalNav ul li {
  list-style: none;
  border-bottom: 1px solid #eee;
  font-size: .75rem
}

.LocalNav ul li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 56px;
  color: #000;
  text-decoration: none;
  transition: .2s opacity ease-out
}

.LocalNav ul li a:hover {
  opacity: .6
}

.LocalNav ul li a i {
  font-size: .625rem;
  transform: scale(0.5, 0.8)
}

@media screen and (max-width: 929px) {
  .LocalNav ul li:first-child {
    border-top: 1px solid #eee
  }
}

@media screen and (min-width: 930px) {
  .LocalNav {
    margin-top: 90px
  }

  .LocalNav ul {
    display: -ms-grid;
    display: grid;
    -moz-column-gap: 20px;
    column-gap: 20px;
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr)
  }

  .LocalNav ul li:nth-child(-n+3) {
    border-top: 1px solid #eee
  }

  .PageHeader+.LocalNav {
    margin-top: 0
  }
}

.Footer {
  position: relative;
  width: 100%;
  background-color: #fff;
  border-top: 1px solid #707070
}

.Footer li {
  list-style: none
}

.Footer .wrap {
  margin-left: auto;
  margin-right: auto
}

@media screen and (max-width: 929px) {
  .Footer .wrap {
    margin-left: 36px;
    margin-right: 36px
  }
}

@media screen and (min-width: 930px) {
  .Footer .wrap {
    max-width: 1368px;
    padding-left: 50px;
    padding-right: 50px
  }
}

@media screen and (max-width: 929px) {
  .Footer .wrap {
    padding-top: 40px;
    padding-bottom: 95px
  }
}

@media screen and (min-width: 930px) {
  .Footer .wrap {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto auto;
    -ms-grid-columns: 1fr 1fr;
    grid-template: "address nav"auto "copyright copyright"auto/1fr 1fr;
    padding-top: 120px;
    padding-bottom: 25px
  }
}

.FooterAddress {
  grid-area: address
}

.FooterNav {
  grid-area: nav
}

.Footer_copyright {
  grid-area: copyright
}

@media screen and (min-width: 930px) {
  .FooterAddress {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .FooterNav {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .Footer_copyright {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2
  }
}

@media screen and (max-width: 929px) {
  .FooterAddress {
    text-align: center
  }
}

@media screen and (min-width: 930px) {
  .FooterAddress {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto;
    -ms-grid-columns: 85px 35px 1fr;
    grid-template: "footer_logo footer_data"/85px 1fr;
    -moz-column-gap: 35px;
    column-gap: 35px
  }
}

@media screen and (max-width: 929px) {
  .FooterAddress_Logo {
    width: 75px;
    margin: 0 auto
  }
}

@media screen and (min-width: 930px) {
  .FooterAddress_Logo {
    grid-area: footer_logo;
    width: 85px
  }
}

.FooterAddress_data h2 {
  font-size: 1rem;
  letter-spacing: 1.28px
}

@media screen and (max-width: 929px) {
  .FooterAddress_data {
    margin-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .FooterAddress_data {
    grid-area: footer_data
  }
}

@media screen and (min-width: 930px) {
  .FooterAddress_Logo {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .FooterAddress_data {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }
}

.FooterAddress_data .__address {
  margin-top: 10px;
  font-size: .75rem;
  font-style: normal
}

.FooterAddress_data .__address p {
  font-size: .75rem
}

.FooterAddress_data .__address dl {
  margin-top: 5px;
  letter-spacing: .96px;
  font-family: "Cormorant Garamond", serif
}

.FooterAddress_data .__address dl div {
  display: flex
}

.FooterAddress_data .__address dl dd {
  margin-left: .5em
}

@media screen and (max-width: 929px) {
  .FooterAddress_data .__address dl div {
    justify-content: center
  }
}

@media screen and (min-width: 930px) {
  .FooterAddress_data .__address p br {
    display: none
  }
}

.FooterAddress_data .__sns dl dt {
  font-family: "Cormorant Garamond", serif;
  font-size: .75rem;
  line-height: 1;
  text-transform: uppercase
}

@media screen and (max-width: 929px) {
  .FooterAddress_data .__sns {
    margin-top: 30px
  }

  .FooterAddress_data .__sns dl dt {
    text-align: center;
    font-size: .75rem
  }

  .FooterAddress_data .__sns dl dd {
    margin-top: 20px
  }

  .FooterAddress_data .__sns dl dd .SnsIconList {
    justify-content: center
  }
}

@media screen and (min-width: 930px) {
  .FooterAddress_data .__sns {
    margin-top: 20px
  }

  .FooterAddress_data .__sns dl {
    display: flex;
    align-items: center
  }

  .FooterAddress_data .__sns dl dt {
    font-size: .75rem
  }

  .FooterAddress_data .__sns dl dd {
    margin-left: 15px
  }
}

.Footer_copyright {
  color: #aaa
}

@media screen and (max-width: 929px) {
  .Footer_copyright {
    margin-top: 45px
  }

  .Footer_copyright b, .Footer_copyright small {
    display: block;
    text-align: center
  }

  .Footer_copyright b {
    font-size: .75rem
  }

  .Footer_copyright small {
    margin-top: 20px;
    font-size: .6875rem
  }
}

@media screen and (min-width: 930px) {
  .Footer_copyright {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 90px;
    font-size: .75rem
  }

  .Footer_copyright b br {
    display: none
  }

  .Footer_copyright small:not(:first-child) {
    margin-left: 30px
  }
}

.FooterNav h3 {
  font-size: 1rem;
  font-family: "Cormorant Garamond", serif;
  letter-spacing: 1.28px;
  text-transform: uppercase;
  line-height: 1
}

.FooterNav a {
  text-decoration: none
}

@media screen and (max-width: 929px) {
  .FooterNav {
    max-width: 450px;
    margin-left: auto;
    margin-right: auto
  }
}

@media screen and (min-width: 930px) {
  .FooterNav {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto;
    -ms-grid-columns: 1fr 10px 2fr;
    grid-template: "fnav_main fnav_sub"/1fr 2fr;
    -moz-column-gap: 10px;
    column-gap: 10px
  }
}

@media screen and (max-width: 929px) {
  .FooterNav_main {
    margin-top: 30px
  }
}

@media screen and (min-width: 930px) {
  .FooterNav_main {
    grid-area: fnav_main
  }
}

@media screen and (max-width: 929px) {
  .FooterNav_sub {
    margin-top: 50px
  }
}

@media screen and (min-width: 930px) {
  .FooterNav_sub {
    grid-area: fnav_sub;
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 1em auto;
    -ms-grid-columns: 1fr 10px 1fr;
    grid-template: "fnav_h fnav_h"1em "fnav_reserve fnav_sub"auto/1fr 1fr;
    -moz-column-gap: 10px;
    column-gap: 10px
  }

  .FooterNav_sub h3 {
    grid-area: fnav_h
  }

  .FooterNav_sub .MenuReservation {
    grid-area: fnav_reserve
  }

  .FooterNav_sub .SubMenu {
    grid-area: fnav_sub
  }
}

@media screen and (min-width: 930px) {
  .FooterNav_main {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .FooterNav_sub {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .FooterNav_sub>.FooterNav_sub {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }

  .FooterNav_sub h3 {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3
  }

  .FooterNav_sub .MenuReservation {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .FooterNav_sub .SubMenu {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .FooterNav_sub>.SubMenu {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }
}

.FooterNav_main .MainMenu, .FooterNav_main .SubMenu, .FooterNav_main .MenuReservation, .FooterNav_sub .MainMenu, .FooterNav_sub .SubMenu, .FooterNav_sub .MenuReservation {
  margin-top: 15px
}

.FooterNav_main .MainMenu li, .FooterNav_main .SubMenu li, .FooterNav_main .MenuReservation li, .FooterNav_sub .MainMenu li, .FooterNav_sub .SubMenu li, .FooterNav_sub .MenuReservation li {
  font-size: .75rem
}

.FooterNav_main .MainMenu li a, .FooterNav_main .SubMenu li a, .FooterNav_main .MenuReservation li a, .FooterNav_sub .MainMenu li a, .FooterNav_sub .SubMenu li a, .FooterNav_sub .MenuReservation li a {
  color: #333
}

.FooterNav_main .MainMenu li a span, .FooterNav_main .MainMenu li a i, .FooterNav_main .MainMenu li a br, .FooterNav_main .SubMenu li a span, .FooterNav_main .SubMenu li a i, .FooterNav_main .SubMenu li a br, .FooterNav_main .MenuReservation li a span, .FooterNav_main .MenuReservation li a i, .FooterNav_main .MenuReservation li a br, .FooterNav_sub .MainMenu li a span, .FooterNav_sub .MainMenu li a i, .FooterNav_sub .MainMenu li a br, .FooterNav_sub .SubMenu li a span, .FooterNav_sub .SubMenu li a i, .FooterNav_sub .SubMenu li a br, .FooterNav_sub .MenuReservation li a span, .FooterNav_sub .MenuReservation li a i, .FooterNav_sub .MenuReservation li a br {
  display: none
}

@media screen and (max-width: 929px) {
  .FooterNav_main, .FooterNav_sub {
    text-align: center
  }
}

.MenuArea {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  visibility: visible;
  width: 100%;
  overflow: auto;
  background: #fff;
  min-height: 100vh;
  min-height: 100svh
}

.MenuArea a {
  transition: .2s opacity ease-out
}

.MenuArea a:hover {
  opacity: .6
}

.MenuArea nav {
  overflow: auto;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100)
}

@media screen and (max-width: 929px) {
  .MenuArea nav {
    padding: 80px 36px 20px
  }
}

@media screen and (min-width: 930px) {
  .Menu {
    display: flex;
    align-items: center;
    height: 100%
  }
}

@media screen and (max-width: 929px) {
  .SiteImage.-menuarea {
    display: none
  }
}

@media screen and (min-width: 930px) {
  .SiteImage.-menuarea {
    flex: 0 0 20%;
    width: 20%;
    max-width: 368px
  }
}

@media screen and (min-width: 930px) {
  .SiteImage.-menuarea {
    width: 368px
  }
}

.Menu_logo .Logo svg {
  fill: #000
}

@media screen and (max-width: 929px) {
  .Menu_logo {
    display: none
  }
}

@media screen and (min-width: 930px) {
  .Menu_logo {
    padding: 0 34px
  }

  .Menu_logo .Logo {
    width: 64px
  }
}

.MenuWrap a {
  color: #000
}

@media screen and (min-width: 930px) {
  .MenuWrap {
    flex: 1 1 auto;
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 77px;
    -ms-grid-columns: 1fr 1fr;
    grid-template: "menu_main menu_sub"auto "menu_sns menu_sns"77px/1fr 1fr;
    padding: 0 5%
  }
}

@media screen and (min-width: 1100px) {
  .MenuWrap {
    padding: 0 6%
  }
}

@media screen and (min-width: 1368px) {
  .MenuWrap {
    padding: 0 100px
  }
}

.Menu_main ul li {
  line-height: 1.2
}

.Menu_main ul li span {
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase
}

@media screen and (max-width: 929px) {
  .Menu_main ul li:not(:first-child) {
    margin-top: 20px
  }

  .Menu_main ul li span {
    font-size: 1.125rem
  }

  .Menu_main ul li b {
    font-size: .75rem
  }
}

@media screen and (min-width: 930px) {
  .Menu_main {
    grid-area: menu_main
  }

  .Menu_main ul li:not(:first-child) {
    margin-top: 40px
  }

  .Menu_main ul li span, .Menu_main ul li b {
    display: block
  }

  .Menu_main ul li span {
    font-size: 1.25rem
  }

  .Menu_main ul li b {
    font-size: .875rem
  }
}

@media screen and (min-width: 1100px) {
  .Menu_main ul li span, .Menu_main ul li b {
    display: inline
  }

  .Menu_main ul li b {
    margin-left: .5em
  }
}

.Menu_sub ul li {
  font-size: .875rem
}

.Menu_sub ul li:not(:first-child) {
  margin-top: 12px
}

.Menu_sub ul li br {
  display: none
}

.Menu_sub ul.SubMenu {
  margin-top: 25px;
  padding-top: 25px;
  border-top: 1px solid #eee
}

@media screen and (max-width: 929px) {
  .Menu_sub .MenuReservation {
    margin-top: 25px;
    padding-top: 25px;
    border-top: 1px solid #eee
  }

  .Menu_sub ul li:not(:first-child) {
    margin-top: 8px
  }
}

@media screen and (min-width: 930px) {
  .Menu_sub {
    grid-area: menu_sub;
    padding-left: 10%;
    padding-right: 20%
  }

  .Menu_sub ul li:not(:first-child) {
    margin-top: 12px
  }
}

@media screen and (min-width: 1368px) {
  .Menu_sub {
    padding-left: 90px
  }
}

.Menu_sns {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #eee
}

.Menu_sns dl {
  display: flex;
  align-items: center;
  line-height: 1
}

.Menu_sns dl dt {
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase;
  color: #000;
  font-size: .75rem
}

.Menu_sns dl dd {
  margin-left: 15px
}

@media screen and (max-width: 929px) {
  .Menu_sns {
    flex-direction: column-reverse;
    align-items: flex-start;
    margin-top: 25px
  }

  .Menu_sns dl {
    justify-content: center;
    padding-top: 20px
  }
}

@media screen and (min-width: 930px) {
  .Menu_sns {
    grid-area: menu_sns;
    margin-top: 100px
  }

  .Menu_sns dl {
    justify-content: flex-end;
    padding-top: 30px
  }
}

@media screen and (min-width: 930px) {
  .Menu_main {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .Menu_sub {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }

  .Menu_sns {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2
  }
}

.SelectLang {
  padding-top: 30px
}

.SelectLang dd {
  position: relative;
  padding-right: 10px;
  border: 1px solid #eee
}

.SelectLang dd select {
  position: relative;
  z-index: 2;
  border: none;
  width: 100%;
  padding: 4px 20px;
  font-size: 14px;
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase
}

.SelectLang dd .bxs-down-arrow {
  position: absolute;
  right: 3px;
  top: 0;
  transform: scale(0.8);
  color: #000
}

.SelectLang dd .bxs-down-arrow::before {
  font-size: .625rem
}

.LocalNav+.ContentsList {
  margin-top: 85px
}

.Content .wrap {
  margin-left: auto;
  margin-right: auto
}

@media screen and (max-width: 929px) {
  .Content .wrap {
    margin-left: 36px;
    margin-right: 36px
  }
}

@media screen and (min-width: 930px) {
  .Content .wrap {
    max-width: 1100px;
    padding-left: 100px;
    padding-right: 100px
  }
}

.Content .wrapL {
  margin-left: auto;
  margin-right: auto
}

@media screen and (max-width: 929px) {
  .Content .wrapL {
    margin-left: 36px;
    margin-right: 36px
  }
}

@media screen and (min-width: 930px) {
  .Content .wrapL {
    max-width: 1100px;
    padding-left: 100px;
    padding-right: 100px
  }
}

.Content_heading.-center {
  text-align: center
}

.Content_heading span, .Content_heading b {
  display: block;
  font-style: normal;
  font-weight: normal
}

.Content_heading span {
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase
}

.Content_heading b {
  margin-top: 5px
}

@media screen and (max-width: 929px) {
  .Content_heading span {
    font-size: 1.5rem;
    line-height: .8275862069
  }

  .Content_heading b {
    font-size: .875rem;
    line-height: 2.1428571429
  }
}

@media screen and (min-width: 930px) {
  .Content_heading span {
    font-size: 1.75rem;
    line-height: 1.2142857143
  }

  .Content_heading b {
    font-size: 1rem;
    line-height: 1.625
  }
}

.Content_slideGallery .__photo {
  padding-top: 56%
}

.ContentMainImg {
  width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat
}

@media screen and (max-width: 929px) {
  .ContentMainImg {
    height: 50vh
  }
}

@media screen and (min-width: 930px) {
  .ContentMainImg {
    padding-top: 50.65%
  }
}

@media screen and (min-width: 1368px) {
  .ContentMainImg {
    height: 692px;
    padding-top: 0
  }
}

@media screen and (max-width: 929px) {
  .ContentDetail_head .__copy {
    font-size: 1.125rem;
    letter-spacing: 1.44px;
    line-height: 1.6666666667
  }
}

@media screen and (min-width: 930px) {
  .ContentDetail_head .__copy {
    font-size: 1.5rem;
    letter-spacing: 1.92px;
    line-height: 1.6666666667
  }
}

.ContentDetail_head .__heading span, .ContentDetail_head .__heading b {
  display: block
}

.ContentDetail_head .__heading span {
  font-family: "Cormorant Garamond", serif;
  line-height: 1
}

.ContentDetail_head .__heading b {
  margin-top: .3em
}

@media screen and (max-width: 929px) {
  .ContentDetail_head .__heading span {
    font-size: 1.75rem
  }

  .ContentDetail_head .__heading b {
    font-size: 1rem
  }
}

@media screen and (min-width: 930px) {
  .ContentDetail_head .__heading span {
    font-size: 2rem
  }

  .ContentDetail_head .__heading b {
    font-size: 1.125rem
  }
}

.ContentDetail_head+.ContentDetail_btn {
  margin-top: 30px
}

@media screen and (max-width: 929px) {
  .Container {
    padding-top: 78px;
    padding-bottom: 80px
  }
}

@media screen and (min-width: 930px) {
  .Container {
    padding-top: 90px;
    padding-bottom: 100px
  }
}

.Container:not(.-full) {
  margin-left: auto;
  margin-right: auto
}

@media screen and (max-width: 929px) {
  .Container:not(.-full) {
    margin-left: 36px;
    margin-right: 36px
  }
}

@media screen and (min-width: 930px) {
  .Container:not(.-full) {
    max-width: 1300px;
    padding-left: 100px;
    padding-right: 100px
  }
}

.Container.-full {
  width: 100%
}

.Container.-top {
  padding-top: 0
}

.MinimalContents {
  margin-left: auto;
  margin-right: auto
}

@media screen and (max-width: 929px) {
  .MinimalContents {
    margin-left: 36px;
    margin-right: 36px
  }
}

@media screen and (min-width: 930px) {
  .MinimalContents {
    max-width: 1300px;
    padding-left: 100px;
    padding-right: 100px
  }
}

@media screen and (max-width: 929px) {
  .MinimalContents {
    margin-left: 0;
    margin-right: 0
  }

  .Content_heading+.MinimalContents {
    margin-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .Content_heading+.MinimalContents {
    margin-top: 70px
  }

  .MinimalContents .MinimalContents_wrapper {
    display: -ms-grid;
    display: grid;
    grid-gap: 34px;
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr)
  }
}

.MinimalContents_item {
  overflow: hidden
}

.MinimalContents_item .__photo {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: 56%
}

.MinimalContents_item .__photo.lazyload, .MinimalContents_item .__photo.lazyloading {
  opacity: 1
}

.MinimalContents_item .__text {
  margin-top: 20px
}

.MinimalContents_item .__text h3 {
  font-size: 1rem;
  letter-spacing: 1.28px;
  line-height: 1.625
}

.MinimalContents_item .__text p {
  font-size: .875rem;
  letter-spacing: 1.12px;
  line-height: 1.7142857143
}

h3+.MinimalContents_item .__text p {
  margin-top: 20px
}

@media screen and (min-width: 930px) {
  .MinimalContents_item .__photo {
    width: 100%;
    padding-top: 61.76%
  }
}

.ArticleTimeline ul li {
  position: relative;
  list-style: none;
  padding-left: 26px;
  padding-bottom: 20px
}

.ArticleTimeline ul li::before {
  position: absolute;
  z-index: 2;
  top: .7rem;
  left: 0;
  display: block;
  content: "";
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #000
}

.ArticleTimeline ul li::after {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 4px;
  display: block;
  content: "";
  width: 1px;
  height: 100%;
  background: #707070
}

.ArticleTimeline ul li:first-child::after {
  top: .7rem
}

.ArticleTimeline ul li:last-child::after {
  height: .7rem
}

.ArticleTimeline ul li b {
  font-style: normal
}

.ArticleTimeline ul li a {
  flex: 1 1 auto;
  transition: .2s opacity ease-out
}

.ArticleTimeline ul li a:hover {
  opacity: .6
}

@media screen and (max-width: 929px) {
  .ArticleTimeline {
    padding: 40px 0 20px
  }

  .ArticleTimeline b {
    display: block
  }
}

@media screen and (min-width: 930px) {
  .ArticleTimeline {
    display: flex;
    padding: 60px 0 40px
  }

  .ArticleTimeline b {
    flex: 0 0 130px
  }
}

.ArticleHeader {
  padding-bottom: 20px;
  border-bottom: 1px solid #eee
}

.ArticleHeader_data {
  display: flex;
  align-items: center
}

.ArticleHeader_data .EntryDate {
  margin-left: 16px
}

.ArticleHeader_title {
  margin-top: 20px;
  font-size: 1.25rem;
  letter-spacing: 1.6px;
  line-height: 1.8
}

.ArticleContent {
  margin-top: 40px
}

.ArticleNav ul li {
  list-style: none;
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase;
  line-height: 1
}

.ArticleNav ul li a {
  transition: .2s opacity ease-out
}

.ArticleNav ul li a:hover {
  opacity: .6
}

.ArticleNav ul li.ArticleNav_prev a, .ArticleNav ul li.ArticleNav_next a {
  display: flex;
  align-items: center;
  text-decoration: none
}

.ArticleNav ul li.ArticleNav_list {
  font-size: .875rem;
  text-align: center
}

@media screen and (max-width: 929px) {
  .ArticleNav {
    margin-top: 50px
  }

  .ArticleNav ul {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 30px auto;
    -ms-grid-columns: 1fr 1fr;
    grid-template: "list list"auto "prev next"auto/1fr 1fr;
    grid-row-gap: 30px
  }

  .ArticleNav ul li.ArticleNav_prev {
    grid-area: prev
  }

  .ArticleNav ul li.ArticleNav_prev a {
    justify-content: flex-end;
    padding-right: 30px
  }

  .ArticleNav ul li.ArticleNav_list {
    grid-area: list
  }

  .ArticleNav ul li.ArticleNav_next {
    grid-area: next
  }

  .ArticleNav ul li.ArticleNav_next a {
    padding-left: 30px;
    border-left: 1px solid #000
  }
}

@media screen and (max-width: 929px) {
  .ArticleNav ul li.ArticleNav_prev {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .ArticleNav ul li.ArticleNav_list {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2
  }

  .ArticleNav ul li.ArticleNav_next {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }
}

@media screen and (min-width: 930px) {
  .ArticleNav {
    margin-top: 110px
  }

  .ArticleNav ul {
    display: flex;
    justify-content: center
  }

  .ArticleNav ul li {
    width: 33%
  }

  .ArticleNav ul li.ArticleNav_prev a {
    padding-right: 40px;
    justify-content: flex-end
  }

  .ArticleNav ul li.ArticleNav_list {
    border-left: 1px solid #000;
    border-right: 1px solid #000
  }

  .ArticleNav ul li.ArticleNav_next a {
    padding-left: 40px;
    justify-content: flex-start
  }
}

@media screen and (max-width: 929px) {
  .FlexContent {
    margin-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .FlexContent {
    margin-top: 50px
  }
}

.FlexContent_heading {
  padding-bottom: 20px;
  border-bottom: 1px solid #eee
}

.FlexContent_heading span {
  display: block
}

@media screen and (max-width: 929px) {
  .FlexContent_heading {
    font-size: 1.125rem;
    letter-spacing: 1.6px;
    line-height: 1.6666666667
  }

  .FlexContent_heading:not(:first-child) {
    margin-top: 40px
  }

  .FlexContent_heading span {
    font-size: .875rem
  }
}

@media screen and (min-width: 930px) {
  .FlexContent_heading {
    font-size: 1.25rem;
    letter-spacing: 1.6px;
    line-height: 1.8
  }

  .FlexContent_heading:not(:first-child) {
    margin-top: 70px
  }

  .FlexContent_heading span {
    font-size: 1rem
  }
}

.FlexContent_text:not(:first-child), .FlexContent_caption:not(:first-child), .FlexContent_img:not(:first-child) {
  margin-top: 40px
}

@media screen and (max-width: 929px) {
  .FlexContent_caption {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }
}

@media screen and (min-width: 930px) {
  .FlexContent_caption {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

.FlexContent_img figucaption {
  display: block;
  margin-top: 10px
}

@media screen and (max-width: 929px) {
  .FlexContent_img figucaption {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }
}

@media screen and (min-width: 930px) {
  .FlexContent_img figucaption {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

@media screen and (max-width: 929px) {
  .FlexContent_border h5, .FlexContent_2clm h5 {
    font-size: 1rem;
    line-height: 1.625;
    letter-spacing: 1.28px
  }
}

@media screen and (min-width: 930px) {
  .FlexContent_border h5, .FlexContent_2clm h5 {
    font-size: 1.125rem;
    line-height: 1.6666666667;
    letter-spacing: 1.44px
  }
}

.FlexContent_border p, .FlexContent_2clm p {
  margin-top: 20px
}

.FlexContent_border {
  border: 1px solid #eee
}

.FlexContent_border:not(:first-child) {
  margin-top: 40px
}

.FlexContent_border p {
  font-size: .875rem;
  line-height: 1.7142857143;
  letter-spacing: 1.12px
}

@media screen and (max-width: 929px) {
  .FlexContent_border {
    padding: 50px 30px
  }
}

@media screen and (min-width: 930px) {
  .FlexContent_border {
    padding: 70px 80px
  }
}

.FlexContent_2clm:not(:first-child) {
  margin-top: 80px
}

@media screen and (max-width: 929px) {
  .FlexContent_2clm .__text p {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }
}

@media screen and (min-width: 930px) {
  .FlexContent_2clm .__text p {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

@media screen and (max-width: 929px) {
  .FlexContent_2clm .__text {
    margin-top: 20px
  }
}

@media screen and (min-width: 930px) {
  .FlexContent_2clm {
    display: flex
  }

  .FlexContent_2clm .__img {
    width: 43.3%;
    max-width: 352px;
    flex: 0 0 43.3%
  }

  .FlexContent_2clm .__text {
    flex: 1 1 auto;
    margin-left: 40px
  }
}

.WysiwigBlock p, .WysiwigBlock ul, .WysiwigBlock ol, .WysiwigBlock blockquote {
  letter-spacing: 1.28px
}

.WysiwigBlock p:not(:first-child), .WysiwigBlock ul:not(:first-child), .WysiwigBlock ol:not(:first-child), .WysiwigBlock blockquote:not(:first-child) {
  margin-top: 1em
}

.WysiwigBlock strong {
  position: relative;
  font-weight: normal
}

.WysiwigBlock strong::after {
  position: absolute;
  content: "";
  bottom: 0;
  z-index: -1;
  display: block;
  width: 100%;
  height: 10px;
  background-color: #eee
}

.WysiwigBlock li {
  margin-left: 1.5em
}

.WysiwigBlock blockquote {
  display: block;
  padding: 20px;
  background-color: #eee
}

.WysiwigBlock img:not(:first-child) {
  margin-top: 20px
}

.ReservationBtnSet {
  position: fixed;
  z-index: 150;
  display: flex;
  flex-direction: column;
  align-items: flex-end
}

@media screen and (max-width: 929px) {
  .ReservationBtnSet {
    bottom: 0;
    right: 70px
  }
}

@media screen and (min-width: 930px) {
  .ReservationBtnSet {
    bottom: 70px;
    right: 0
  }
}

@media screen and (max-width: 929px) {
  .ReservationBtnSet.-en {
    bottom: 0;
    right: 0
  }
}

@media screen and (min-width: 930px) {
  .ReservationBtnSet.-en {
    bottom: 20px;
    right: 0
  }
}

.BookingBtn {
  position: fixed;
  z-index: 100;
  bottom: 20px
}

.BookingBtn a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  padding: 0 20px;
  font-family: sans-serif;
  font-size: .6875rem;
  line-height: 1.2;
  letter-spacing: .88px;
  color: #fff;
  background: #000;
  border-radius: 20px;
  text-decoration: none;
  font-weight: bold;
  transition: opacity .2s ease-out
}

.BookingBtn a:hover {
  opacity: .7
}

.BookingBtn a i {
  font-size: 1.25rem;
  margin-bottom: 4px;
  margin-right: 8px
}

@media screen and (max-width: 929px) {
  .BookingBtn {
    right: 120px
  }
}

@media screen and (min-width: 930px) {
  .BookingBtn {
    right: 120px
  }
}

.ReservationBtn {
  font-family: sans-serif;
  font-size: .6875rem;
  line-height: 1.2;
  letter-spacing: .88px
}

.ReservationBtn i {
  font-size: 1.25rem;
  margin-bottom: 4px
}

@media screen and (max-width: 929px) {
  .ReservationBtn {
    display: flex
  }
}

.-en>.ReservationBtn a {
  width: 100px
}

.ReservationBtn li {
  list-style: none;
  text-align: center
}

.ReservationBtn li a {
  width: 70px;
  height: 70px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none
}

.ReservationBtn li:nth-child(odd) a {
  background: #eee
}

.ReservationBtn li:nth-child(even) a {
  background: #fff
}

@media screen and (max-width: 929px) {
  .Form.-contact {
    margin-top: 30px
  }
}

@media screen and (min-width: 930px) {
  .Form {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 70px auto 70px auto;
    -ms-grid-columns: 1fr 1fr;
    grid-template: "form_text form_text"auto "form_data form_detail"auto "form_submit form_submit"auto/1fr 1fr;
    grid-row-gap: 70px
  }

  .Form.-contact {
    margin-top: 40px
  }
}

.Form_text p {
  text-align: center
}

@media screen and (min-width: 930px) {
  .Form_text {
    grid-area: form_text
  }
}

.mw_wp_form_confirm .Form_text {
  display: none
}

@media screen and (max-width: 929px) {
  .Form_block {
    margin-top: 60px
  }
}

@media screen and (min-width: 930px) {
  .Form_block {
    grid-area: form_data;
    padding-right: 15%
  }
}

@media screen and (min-width: 1100px) {
  .Form_block {
    padding-right: 100px
  }
}

@media screen and (max-width: 929px) {
  .Form_detail {
    margin-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .Form_detail {
    grid-area: form_detail
  }
}

@media screen and (min-width: 930px) {
  .Form_submitArea {
    grid-area: form_submit
  }
}

@media screen and (min-width: 930px) {
  .Form_text {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2
  }

  .Form_block {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .Form_detail {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }

  .Form_submitArea {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2
  }
}

.mw_wp_form_confirm .FormPrivacy {
  display: none
}

@media screen and (max-width: 929px) {
  .mw_wp_form .FormItem .error {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }
}

@media screen and (min-width: 930px) {
  .mw_wp_form .FormItem .error {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

.FormItem {
  padding: 10px 0
}

.FormItem input, .FormItem select, .FormItem textarea {
  width: 100%
}

.FormItem label {
  display: block;
  color: #aaa
}

@media screen and (max-width: 929px) {
  .FormItem label {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }
}

@media screen and (min-width: 930px) {
  .FormItem label {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

.mw_wp_form_input .FormItem label {
  display: none
}

.FormItem.-select {
  position: relative;
  border: 1px solid #aaa;
  border-radius: 5px
}

.FormItem.-select::before {
  position: absolute;
  right: 20px;
  top: calc(50% - 4px);
  z-index: 0;
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  background: url("../fonts/arrow_b.svg") no-repeat center/cover
}

.mw_wp_form_confirm .FormItem.-select {
  padding: 10px 0;
  border: none;
  border-bottom: 1px solid #eee
}

.mw_wp_form_confirm .FormItem.-select::before {
  display: none
}

.FormItem.-select select {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 5px 20px
}

.mw_wp_form_input .FormItem input {
  padding: 10px 0;
  border-bottom: 1px solid #000
}

.mw_wp_form_input .FormItem textarea {
  padding: 10px 0;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000
}

.FormItem.-text {
  margin-top: 30px
}

.mw_wp_form_confirm .FormItem.-text {
  border-bottom: 1px solid #eee
}

.FormItem.-textarea {
  height: 100%;
  padding: 10px 0
}

.mw_wp_form_confirm .FormItem.-textarea {
  border-bottom: 1px solid #eee
}

@media screen and (max-width: 929px) {
  .mw_wp_form_input .FormItem.-textarea {
    height: 300px
  }
}

.FormItem.-textarea textarea {
  width: 100%;
  height: 100%
}

.mw_wp_form_confirm .FormItem.-confirmMail {
  display: none
}

.Form_submitArea {
  text-align: center
}

.Form_submitArea .FormPrivacy {
  max-width: 540px;
  margin-left: auto;
  margin-right: auto
}

.Form_submitArea .FormPrivacy p {
  margin-top: 20px
}

@media screen and (max-width: 929px) {
  .Form_submitArea .FormPrivacy p {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }
}

@media screen and (min-width: 930px) {
  .Form_submitArea .FormPrivacy p {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

@media screen and (max-width: 929px) {
  .Form_submitArea {
    margin-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .Form_submitArea .FormPrivacy h3 {
    font-size: 1.125rem
  }
}

.FormPrivacy_agree {
  margin-top: 20px;
  padding: 20px 25px;
  background: #eee;
  line-height: 1
}

.FormPrivacy_agree .mwform-checkbox-field-text {
  line-height: 1
}

@media screen and (max-width: 929px) {
  .FormPrivacy_agree .mwform-checkbox-field-text {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }
}

@media screen and (min-width: 930px) {
  .FormPrivacy_agree .mwform-checkbox-field-text {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

.Form_btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 40px
}

.Form_btn input {
  transition: .2s all ease-out
}

.Form_btn input[type=submit] {
  width: 260px;
  height: 40px
}

@media screen and (max-width: 929px) {
  .Form_btn input[type=submit] {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }
}

@media screen and (min-width: 930px) {
  .Form_btn input[type=submit] {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

.Form_btn input:not(.__back) {
  border: 1px solid #000
}

.Form_btn input:not(.__back):hover {
  background-color: #efefef
}

.Form_btn input.__back {
  margin-top: 15px;
  text-decoration: underline
}

.Form_btn input.__back:hover {
  opacity: .6
}

.TriplaBlock {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 160;
  font-family: sans-serif;
  font-size: .6875rem;
  line-height: 1.2;
  letter-spacing: .88px;
  transition: .2s all ease-out
}

.TriplaBlock i {
  font-size: 1.25rem;
  margin-bottom: 4px
}

.TriplaBlock.-opened .TriplaBlock_btn {
  display: none
}

.TriplaBlock.-closed {
  width: 70px
}

@media screen and (max-width: 929px) {
  .TriplaBlock.-opened {
    height: auto
  }

  .TriplaBlock.-closed {
    height: 70px
  }
}

@media screen and (min-width: 930px) {
  .TriplaBlock {
    height: 70px
  }

  .TriplaBlock.-opened {
    height: auto
  }
}

.TriplaBlock .search-widget-search-container-bf1818 {
  display: flex;
  width: 100% !important;
  background: none;
  box-shadow: none;
  padding: 10px 25px
}

@media screen and (max-width: 929px) {
  .TriplaBlock .search-widget-search-container-bf1818 {
    flex-direction: column;
    align-items: flex-end
  }
}

@media screen and (min-width: 930px) {
  .TriplaBlock .search-widget-search-container-bf1818 {
    align-items: center
  }
}

.TriplaBlock .search-widget-search-container-bf1818 .search-widget-input-wrapper-eaf5bf .input-container-title-db81ec {
  display: none
}

@media screen and (min-width: 930px) {
  .TriplaBlock .search-widget-search-container-bf1818 .search-widget-input-wrapper-eaf5bf {
    display: flex;
    justify-content: center
  }
}

.TriplaBlock .search-widget-search-container-bf1818 .search-widget-input-wrapper-eaf5bf .search-widget-two-picker-wrapper-4ca735 {
  margin: 0
}

@media screen and (max-width: 929px) {
  .TriplaBlock .search-widget-search-container-bf1818 .search-widget-input-wrapper-eaf5bf .search-widget-two-picker-wrapper-4ca735 {
    margin-bottom: 10px
  }
}

.TriplaBlock .search-widget-search-container-bf1818 .search-widget-input-wrapper-eaf5bf .input-container-input-container-da40af .input-container-title-db81ec {
  display: none
}

@media screen and (max-width: 929px) {
  .TriplaBlock .search-widget-search-container-bf1818 .search-widget-input-wrapper-eaf5bf .input-container-input-container-da40af {
    margin-bottom: 0
  }
}

@media screen and (min-width: 930px) {
  .TriplaBlock .search-widget-search-container-bf1818 .search-widget-input-wrapper-eaf5bf .input-container-input-container-da40af {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 10px 0 0
  }
}

.TriplaBlock .search-widget-search-container-bf1818 .search-widget-input-wrapper-eaf5bf>div:first-child .input-container-slot-239963 .search-widget-input-34bba0 {
  width: 250px !important;
  font-size: 1rem !important
}

.TriplaBlock .search-widget-search-container-bf1818 .search-widget-button-wrapper-d2b715 .button-btn-f51c1a {
  margin-bottom: 0;
  border-radius: 20px;
  font-size: .875rem
}

@media screen and (max-width: 929px) {
  .TriplaBlock .search-widget-search-container-bf1818 .search-widget-button-wrapper-d2b715 {
    margin-top: 10px
  }
}

.TriplaBlock_btn, .TriplaBlock_CloseBtn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: #000;
  color: #fff;
  text-align: center
}

.TriplaBlock_btn {
  width: 70px;
  height: 70px
}

@media screen and (min-width: 930px) {
  .TriplaBlock_btn {
    flex: 0 0 70px
  }
}

.TriplaBlock_CloseBtn i {
  margin-bottom: 0
}

.TriplaBlock_CloseBtn span {
  visibility: hidden;
  height: 0
}

@media screen and (max-width: 929px) {
  .TriplaBlock_CloseBtn {
    width: 35px;
    height: 35px
  }

  .TriplaBlock_CloseBtn i {
    font-size: 1.625rem
  }
}

@media screen and (min-width: 930px) {
  .TriplaBlock_CloseBtn {
    width: 70px;
    height: 70px;
    flex: 0 0 70px
  }

  .TriplaBlock_CloseBtn i {
    font-size: 2.125rem
  }
}

.TriplaBlock_content {
  display: flex;
  flex-direction: row-reverse
}

.TriplaBlock_content[aria-hidden=false] {
  background: rgba(255, 255, 255, .8)
}

.TriplaBlock_content .bookingwidget {
  flex: 1 1 auto
}

@media screen and (max-width: 929px) {
  .TriplaBlock_content[aria-hidden=false] {
    width: 100%;
    height: auto
  }
}

@media screen and (min-width: 930px) {
  .TriplaBlock_content {
    height: 70px
  }
}

@media screen and (max-width: 929px) {
  .Page .PageHeading.-center {
    padding-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .Page .PageHeading.-center {
    padding-top: 70px
  }
}

@media screen and (min-width: 930px) {
  .Page.-clm2 {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 60px auto;
    -ms-grid-columns: 250px 100px 1fr;
    grid-template: "page_heading page_heading"auto "page_nav page_content"auto/250px 1fr;
    grid-column-gap: 100px;
    grid-row-gap: 60px
  }
}

.Page.-clm2 .PageHeading {
  grid-area: page_heading
}

.Page.-clm2 .Page_nav {
  grid-area: page_nav
}

@media screen and (max-width: 929px) {
  .Page.-clm2 .Page_nav {
    display: none
  }
}

@media screen and (min-width: 930px) {
  .Page.-clm2 .Page_nav ul {
    position: sticky;
    top: 130px;
    border-top: 1px solid #eee
  }

  .Page.-clm2 .Page_nav ul li {
    font-size: .75rem;
    list-style: none;
    border-bottom: 1px solid #eee
  }

  .Page.-clm2 .Page_nav ul li a {
    position: relative;
    display: flex;
    align-items: center;
    height: 60px;
    text-decoration: none;
    transition: .2s opacity ease-out
  }

  .Page.-clm2 .Page_nav ul li a:hover {
    opacity: .7
  }

  .Page.-clm2 .Page_nav ul li a::after {
    position: absolute;
    top: calc(50% - 1px);
    right: 0;
    display: block;
    content: "";
    background: url("../fonts/arrow_l.svg") no-repeat center/cover;
    width: 5px;
    height: 5px
  }
}

.Page.-clm2 .Page_content {
  grid-area: page_content
}

@media screen and (min-width: 930px) {
  .Page.-clm2 .PageHeading {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3
  }

  .Page.-clm2 .Page_nav {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .Page.-clm2 .Page_content {
    -ms-grid-row: 3;
    -ms-grid-column: 3
  }
}

@media screen and (min-width: 930px) {
  .Page.-clm2 .Page_content {
    margin-top: 0
  }
}

.selectBox {
  position: relative;
  width: 100%;
  border: 1px solid #aaa;
  border-radius: 6px
}

.selectBox select {
  position: relative;
  z-index: 2;
  border: none;
  width: 100%;
  height: 50px;
  padding: 0 10px
}

.selectBox .bxs-down-arrow {
  position: absolute;
  right: 10px;
  top: 18px;
  transform: scale(0.8)
}

.selectBox .bxs-down-arrow::before {
  font-size: .625rem
}

.Page_content {
  margin-top: 40px
}

.Page_content.-wysiwyg h3 {
  font-size: 1.125rem;
  line-height: 1.3333333333
}

.Page_content.-wysiwyg h4 {
  font-size: 1rem;
  line-height: 1.5
}

.Page_content.-wysiwyg h3:not(:first-child), .Page_content.-wysiwyg h4:not(:first-child) {
  margin-top: 2.5em
}

.Page_content.-wysiwyg p {
  font-size: .875rem;
  line-height: 1.7142857143
}

.Page_content.-wysiwyg ul, .Page_content.-wysiwyg ol {
  margin-top: 1.5em;
  margin-left: 1.5em
}

.Page_content.-wysiwyg ul li, .Page_content.-wysiwyg ol li {
  font-size: .875rem;
  line-height: 1.7142857143
}

.Page_content.-wysiwyg ul li {
  list-style-type: "・"
}

.Page_content.-wysiwyg dl {
  line-height: 1.7142857143
}

.Page_content.-wysiwyg dl dt {
  font-size: 1rem
}

.Page_content.-wysiwyg dl dd {
  font-size: .875rem
}

.Page_content.-wysiwyg p:not(:first-child), .Page_content.-wysiwyg li:not(:first-child), .Page_content.-wysiwyg dl:not(:first-child) {
  margin-top: 1.5em
}

.Page_content.-wysiwyg img {
  max-width: 100%;
  height: auto
}

.Page_content .TextBtn {
  margin-top: 40px;
  text-align: center
}

.Room.Content {
  padding-bottom: 120px
}

.Room .Content_slideGallery {
  padding-bottom: 50px
}

@media screen and (max-width: 929px) {
  .Room .ContentDetail {
    padding-bottom: 50px
  }
}

@media screen and (min-width: 930px) {
  .Room .ContentDetail {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto auto;
    -ms-grid-columns: 1fr 30px 1fr;
    grid-template: "room_name room_text"auto "room_btn room_text"auto/1fr 1fr;
    grid-column-gap: 30px;
    padding-bottom: 50px
  }
}

.Room .ContentDetail_head {
  grid-area: room_name
}

@media screen and (max-width: 929px) {
  .Room .ContentDetail_head .__roomname {
    margin-top: 15px;
    font-size: 1rem;
    line-height: 2.5;
    letter-spacing: 1.28px
  }
}

@media screen and (min-width: 930px) {
  .Room .ContentDetail_head .__roomname {
    margin-top: 15px;
    font-size: 1.125rem;
    line-height: 2.2222222222;
    letter-spacing: 1.44px
  }
}

.Room .ContentDetail_head .ContentDetail_link {
  padding-top: 10px
}

.Room .ContentDetail_text {
  grid-area: room_text;
  margin-top: 7px
}

.Room .ContentDetail_btn {
  grid-area: room_btn;
  margin-top: 30px
}

@media screen and (min-width: 930px) {
  .Room .ContentDetail_head {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .Room .ContentDetail_text {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3
  }

  .Room .ContentDetail_btn {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }
}

.Room .RoomData {
  border-bottom: 1px solid #eee
}

.Room .RoomData_header {
  width: 100%;
  padding: 10px 0;
  border-top: 1px solid #eee
}

@media screen and (max-width: 929px) {
  .Room .RoomData_header {
    min-height: 60px
  }

  .Room .RoomData_header .__heading {
    font-size: 1rem
  }

  .Room .RoomData_header .IconBtn {
    font-size: 1.125rem
  }
}

@media screen and (min-width: 930px) {
  .Room .RoomData_header {
    min-height: 80px
  }

  .Room .RoomData_header .__heading {
    font-size: 1.125rem
  }

  .Room .RoomData_header .IconBtn {
    font-size: 1.25rem
  }
}

.Room .RoomData_list {
  padding: 30px 0;
  border-top: 1px dashed #eee
}

@media screen and (min-width: 930px) {
  .Room .RoomData_list.DataList dl {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 45px
  }

  .Room .RoomData_list.DataList dl div:nth-child(-n+2) {
    padding-top: 0
  }

  .Room .RoomData_list.DataList dl div:nth-child(n+3) {
    padding-top: 20px
  }
}

.Facilities.Content {
  padding-bottom: 100px
}

@media screen and (min-width: 1680px) {
  .Facilities.Content {
    max-width: 1680px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 100px;
    padding-right: 100px
  }
}

@media screen and (min-width: 930px) {
  .Facilities .ContentDetail {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto auto auto;
    -ms-grid-columns: 1fr 1fr;
    grid-template: "facilities_head ."auto "facilities_text facilities_data"auto "facilities_btn facilities_data"auto/1fr 1fr
  }
}

.Facilities .ContentDetail_head {
  grid-area: facilities_head;
  display: flex;
  align-items: flex-end;
  background: #fff
}

@media screen and (max-width: 929px) {
  .Facilities .ContentDetail_head {
    width: calc(100% - 36px);
    height: 110px;
    margin-top: -60px;
    padding: 0 36px
  }
}

@media screen and (min-width: 930px) {
  .Facilities .ContentDetail_head {
    height: 160px;
    margin-top: -160px;
    padding: 0 7vw
  }
}

@media screen and (min-width: 1368px) {
  .Facilities .ContentDetail_head {
    padding: 0 100px
  }
}

.Facilities .ContentDetail_text {
  grid-area: facilities_text
}

@media screen and (max-width: 929px) {
  .Facilities .ContentDetail_text {
    width: calc(100% - 36px);
    padding: 40px 36px 0
  }
}

@media screen and (min-width: 930px) {
  .Facilities .ContentDetail_text {
    padding: 30px 7vw 0
  }
}

@media screen and (min-width: 1368px) {
  .Facilities .ContentDetail_text {
    padding: 30px 100px 0
  }
}

.Facilities .ContentData {
  grid-area: facilities_data
}

@media screen and (max-width: 929px) {
  .Facilities .ContentData {
    padding: 40px 36px 0
  }
}

@media screen and (min-width: 930px) {
  .Facilities .ContentData {
    max-width: 638px;
    padding: 70px 7vw 0
  }
}

@media screen and (min-width: 1368px) {
  .Facilities .ContentData {
    padding: 70px 100px 0
  }
}

.Facilities .ContentDetail_btn {
  grid-area: facilities_btn;
  margin-top: 20px
}

@media screen and (min-width: 930px) {
  .Facilities .ContentDetail_head {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .Facilities .ContentDetail_text {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .Facilities .ContentData {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2
  }

  .Facilities .ContentDetail_btn {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }
}

@media screen and (max-width: 929px) {
  .Facilities .ContentDetail_btn {
    padding: 0 36px 0
  }
}

@media screen and (min-width: 930px) {
  .Facilities .ContentDetail_btn {
    padding: 0 7vw 0
  }
}

@media screen and (min-width: 1368px) {
  .Facilities .ContentDetail_btn {
    padding: 0 100px 0
  }
}

@media screen and (max-width: 929px) {
  .Facilities .Content_slideGallery {
    margin-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .Facilities .Content_slideGallery {
    margin-top: 100px
  }
}

.Restaurant.Content {
  padding-bottom: 100px
}

@media screen and (min-width: 1680px) {
  .Restaurant.Content {
    max-width: 1680px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 100px;
    padding-right: 100px
  }
}

@media screen and (min-width: 930px) {
  .Restaurant .ContentMainImg {
    background-position: 215px center
  }
}

@media screen and (min-width: 930px) {
  .Restaurant .ContentDetail {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto auto auto;
    -ms-grid-columns: 1fr 1fr;
    grid-template: "restaurant_head ."auto "restaurant_text restaurant_data"auto "restaurant_btn restaurant_data"auto "restaurant_accordion restaurant_accordion"/1fr 1fr;
    /* grid-template: "restaurant_head ."auto "restaurant_text restaurant_data"auto "restaurant_btn restaurant_data"auto/1fr 1fr */
  }
}

.Restaurant .ContentDetail_head {
  grid-area: restaurant_head;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  background: #fff
}

@media screen and (max-width: 929px) {
  .Restaurant .ContentDetail_head {
    width: calc(100% - 36px);
    min-height: 120px;
    margin-top: -60px;
    padding: 60px 36px 0
  }
}

@media screen and (min-width: 930px) {
  .Restaurant .ContentDetail_head {
    height: 160px;
    margin-top: -159px;
    padding: 0 7vw
  }
}

@media screen and (min-width: 1368px) {
  .Restaurant .ContentDetail_head {
    padding: 0 100px
  }
}

.Restaurant .ContentDetail_link {
  grid-area: restaurant_link;
  margin-top: 20px
}

.Restaurant .ContentDetail_text {
  grid-area: restaurant_text
}

@media screen and (max-width: 929px) {
  .Restaurant .ContentDetail_text {
    width: calc(100% - 36px);
    padding: 30px 36px 0
  }
}

@media screen and (min-width: 930px) {
  .Restaurant .ContentDetail_text {
    padding: 50px 7vw 0
  }
}

@media screen and (min-width: 1368px) {
  .Restaurant .ContentDetail_text {
    padding: 50px 100px 0
  }
}

.Restaurant .ContentData {
  grid-area: restaurant_data
}

@media screen and (max-width: 929px) {
  .Restaurant .ContentData {
    padding: 40px 36px 0
  }
}

@media screen and (min-width: 930px) {
  .Restaurant .ContentData {
    max-width: 638px;
    padding: 70px 7vw 0
  }
}

@media screen and (min-width: 1368px) {
  .Restaurant .ContentData {
    padding: 70px 100px 0
  }
}

.Restaurant .ContentDetail_btn {
  grid-area: restaurant_btn;
}
.Restaurant .ContentDetail_accordion {
  grid-area: restaurant_accordion;
}

@media screen and (min-width: 930px) {
  .Restaurant .ContentDetail_head {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .Restaurant .ContentDetail_text {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .Restaurant .ContentData {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2
  }

  .Restaurant .ContentDetail_btn {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }
}

@media screen and (max-width: 929px) {
  .Restaurant .ContentDetail_btn {
    margin-top: 20px;
    padding: 0 36px 0
  }
}

@media screen and (min-width: 930px) {
  .Restaurant .ContentDetail_btn {
    margin-top: 40px;
    padding: 0 7vw 0
  }
}

@media screen and (min-width: 1368px) {
  .Restaurant .ContentDetail_btn {
    padding: 0 100px 0
  }
}

.Restaurant .Content_slideGallery {
  margin-top: 100px
}

.Activities {
  margin-left: auto;
  margin-right: auto
}

@media screen and (max-width: 929px) {
  .Activities {
    margin-left: 36px;
    margin-right: 36px
  }
}

@media screen and (min-width: 930px) {
  .Activities {
    max-width: 1300px;
    padding-left: 100px;
    padding-right: 100px
  }
}

.Activities .ContentDetail_text {
  margin-top: 30px
}

.Activities .ContentData .AccordionBox {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee
}

.Activities .ContentData .ContentData_title {
  height: 62px
}

@media screen and (max-width: 929px) {
  .Activities .ContentData .ContentData_title .__heading {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }
}

@media screen and (min-width: 930px) {
  .Activities .ContentData .ContentData_title .__heading {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

@media screen and (max-width: 929px) {
  .Activities .ContentData .ContentData_list .DataList {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }
}

@media screen and (min-width: 930px) {
  .Activities .ContentData .ContentData_list .DataList {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

@media screen and (max-width: 929px) {
  .Activities.Content {
    padding-bottom: 70px
  }

  .Activities .SlideGallery .__photo {
    height: 57.86vw
  }

  .Activities .ContentDetail {
    margin-top: 40px
  }

  .Activities .ContentDetail_head .__heading {
    font-size: 1.125rem;
    line-height: 1.6666666667
  }

  .Activities .ContentDetail_link {
    margin-top: 20px
  }

  .Activities .ContentData {
    margin-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .Activities {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 668px 70px auto;
    -ms-grid-columns: 1fr 80px 1fr;
    grid-template: "ac_photo ac_photo"668px "ac_detail ac_data"auto/1fr 1fr;
    grid-row-gap: 70px;
    grid-column-gap: 80px
  }

  .Activities.Content {
    padding-bottom: 125px
  }

  .Activities .SlideGallery {
    grid-area: ac_photo
  }

  .Activities .SlideGallery .__photo {
    height: 628px
  }

  .Activities .ContentDetail {
    grid-area: ac_detail;
    padding-left: 0
  }

  .Activities .ContentDetail_head .__heading {
    font-size: 1.5rem;
    line-height: 1.6666666667
  }

  .Activities .ContentDetail_link {
    margin-top: 30px
  }

  .Activities .ContentData {
    grid-area: ac_data;
    padding-left: 10%;
    padding-right: 0
  }

  .Activities .ContentData_list {
    padding-top: 20px
  }
}

@media screen and (min-width: 930px) {
  .Activities .SlideGallery {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3
  }

  .Activities .ContentDetail {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .Activities .ContentData {
    -ms-grid-row: 3;
    -ms-grid-column: 3
  }
}

@media screen and (min-width: 1100px) {
  .Activities .ContentDetail {
    padding-left: 15%
  }

  .Activities .ContentData {
    padding-left: 10%;
    padding-right: 20%
  }
}

#scenicspot.Content .wrap {
  margin-left: auto;
  margin-right: auto
}

@media screen and (max-width: 929px) {
  #scenicspot.Content .wrap {
    margin-left: 36px;
    margin-right: 36px
  }
}

@media screen and (min-width: 930px) {
  #scenicspot.Content .wrap {
    max-width: 1300px;
    padding-left: 100px;
    padding-right: 100px
  }
}

@media screen and (max-width: 929px) {
  .AccessHeader {
    padding: 40px 0
  }
}

@media screen and (min-width: 930px) {
  .AccessHeader {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto;
    -ms-grid-columns: 60% 40%;
    grid-template: "access_heading access_data"auto/60% 40%;
    padding: 70px 0 60px
  }
}

.AccessHeader_heading .__hotelName {
  margin-top: 40px
}

.AccessHeader_heading .__linkMap {
  margin-top: 15px;
  font-size: .875rem;
  letter-spacing: 1.12px;
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase;
  line-height: 1
}

.AccessHeader_heading .__linkMap a {
  text-decoration: none
}

@media screen and (max-width: 929px) {
  .AccessHeader_heading {
    padding-bottom: 30px
  }

  .AccessHeader_heading .__hotelName {
    font-size: 1.3rem;
    line-height: 1.6666666667;
    letter-spacing: 1.92px
  }
}

@media screen and (min-width: 930px) {
  .AccessHeader_heading {
    grid-area: access_heading
  }

  .AccessHeader_heading .__hotelName {
    font-size: 1.75rem;
    line-height: 1.4285714286;
    letter-spacing: 2.24px
  }
}

.AccessHeader_data.DataList {
  grid-area: access_data;
  padding-top: 20px;
  border-top: 1px dashed #eee
}

@media screen and (min-width: 930px) {
  .AccessHeader_heading {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .AccessHeader_data.DataList {
    -ms-grid-row: 1;
    -ms-grid-column: 2
  }
}

.AccessMap {
  position: relative;
  width: 100%
}

.AccessMap .acf-map {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%
}

@media screen and (max-width: 929px) {
  .AccessMap {
    padding-top: 100%
  }
}

@media screen and (min-width: 930px) {
  .AccessMap {
    padding-top: 56%
  }
}

.AccessBlock {
  border-bottom: 1px solid #eee
}

@media screen and (max-width: 929px) {
  .AccessMap+.AccessBlock {
    margin-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .AccessMap+.AccessBlock {
    margin-top: 60px
  }
}


/* 20240628 GoogleMaps */
.gmap_wrapper {
  max-width: 100%;
	margin-bottom: 50px;
	margin-right: auto;
	margin-left: auto;
}
.gmap {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}
.gmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.gmap_iframe {
	aspect-ratio: 16 / 9;
  max-width: 1000px;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 929px) {
	.gmap {
		padding-top: 100%;
	}
}


.AccessBlock_header {
  padding: 10px 0
}

@media screen and (max-width: 929px) {
  .AccessBlock_header {
    min-height: 60px
  }

  .AccessBlock_header .__heading {
    font-size: 1rem
  }

  .AccessBlock_header .IconBtn {
    font-size: 1.125rem
  }
}

@media screen and (min-width: 930px) {
  .AccessBlock_header {
    min-height: 80px
  }

  .AccessBlock_header .__heading {
    font-size: 1.125rem
  }

  .AccessBlock_header .IconBtn {
    font-size: 1.25rem
  }
}

.AccessBlock .AccordionBox_content {
  border-top: 1px solid #eee
}

@media screen and (max-width: 929px) {
  .AccessBlock .AccordionBox_content {
    padding: 30px 0 40px
  }
}

@media screen and (min-width: 930px) {
  .AccessBlock .AccordionBox_content {
    padding: 40px 0
  }
}

.AccessBlock_content:not(:first-child) {
  margin-top: 30px
}

@media screen and (max-width: 929px) {
  .AccessBlock_content .__annotation, .AccessBlock_content .List {
    font-size: .75rem;
    line-height: 1.6666666667
  }
}

@media screen and (min-width: 930px) {
  .AccessBlock_content .__annotation, .AccessBlock_content .List {
    font-size: .875rem;
    line-height: 1.7142857143
  }
}

.AccessBlock_content .__img figucaption {
  display: block;
  letter-spacing: 1.12px
}

.AccessBlock_content .__img figucaption::before {
  content: "※"
}

@media screen and (max-width: 929px) {
  .AccessBlock_content .__img figucaption {
    margin-top: 10px;
    font-size: .75rem;
    line-height: 1.6666666667
  }
}

@media screen and (min-width: 930px) {
  .AccessBlock_content .__img figucaption {
    margin-top: 15px;
    font-size: .875rem;
    line-height: 1.7142857143
  }
}

@media screen and (max-width: 929px) {
  .AccessBlock_content.access_box1 .__img {
    max-width: 352px;
    margin-top: 30px
  }
}

@media screen and (min-width: 930px) {
  .AccessBlock_content.access_box1 {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto;
    -ms-grid-columns: 1fr 100px 352px;
    grid-template: "text img"auto/1fr 352px;
    grid-column-gap: 100px
  }

  .AccessBlock_content.access_box1 .__text {
    grid-area: text
  }

  .AccessBlock_content.access_box1 .__img {
    grid-area: img
  }
}

.AccessBlock_content.access_box2 {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto auto;
  -ms-grid-columns: 1fr;
  grid-template: "img"auto "text"auto/1fr
}

.AccessBlock_content.access_box2 .__text {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: text
}

.AccessBlock_content.access_box2 .__img {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: img
}

@media screen and (max-width: 929px) {
  .AccessBlock_content.access_box2 {
    grid-row-gap: 30px
  }
}

@media screen and (min-width: 930px) {
  .AccessBlock_content.access_box2 {
    grid-row-gap: 50px
  }
}

.AccessBlock_content .__text:not(:first-child), .AccessBlock_content .LinkButton:not(:first-child), .AccessBlock_content .__contact:not(:first-child), .AccessBlock_content .List:not(:first-child), .AccessBlock_content .__annotation:not(:first-child), .AccessBlock_other .__text:not(:first-child), .AccessBlock_other .LinkButton:not(:first-child), .AccessBlock_other .__contact:not(:first-child), .AccessBlock_other .List:not(:first-child), .AccessBlock_other .__annotation:not(:first-child) {
  margin-top: 20px
}

@media screen and (max-width: 929px) {
  .AccessBlock_content .LinkButton li a, .AccessBlock_other .LinkButton li a {
    width: 100%;
    max-width: 352px
  }
}

@media screen and (min-width: 930px) {
  .AccessBlock_content .LinkButton li a, .AccessBlock_other .LinkButton li a {
    min-width: 352px
  }
}

.AccessBlock_other {
  border: 1px solid #eee
}

@media screen and (max-width: 929px) {
  .AccessBlock_other {
    margin-top: 30px;
    padding: 50px 30px
  }

  .AccessBlock_other .__heading {
    font-size: 1rem
  }
}

@media screen and (min-width: 930px) {
  .AccessBlock_other {
    margin-top: 50px;
    padding: 70px 90px
  }

  .AccessBlock_other .__heading {
    font-size: 1.125rem
  }
}

@media screen and (max-width: 929px) {
  .ConceptHeader .PageHeading {
    padding: 37px 0;
    text-align: center
  }

  .ConceptHeader .PageHeading span, .ConceptHeader .PageHeading b {
    display: block
  }

  .ConceptHeader .PageHeading b {
    margin-top: 6px;
    margin-left: 0
  }
}

@media screen and (min-width: 930px) {
  .ConceptHeader {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 18vw 1fr;
    -ms-grid-columns: 1fr 8% 49.26%;
    grid-template: "heading kv"18vw "text kv"1fr/1fr 49.26%;
    grid-column-gap: 8%;
    max-width: 1300px;
    min-height: calc(100vh - 90px);
    min-height: 700px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 100px;
    padding-right: 100px
  }

  .ConceptHeader .PageHeading {
    grid-area: heading;
    display: flex;
    align-items: flex-end
  }

  .ConceptHeader>.__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .ConceptHeader>.__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }
}

@media screen and (min-width: 1368px) {
  .ConceptHeader {
    -ms-grid-rows: 30% 1fr;
    -ms-grid-columns: 1fr 49.26%;
    grid-template: "heading kv"30% "text kv"1fr/1fr 49.26%
  }

  .ConceptHeader>.__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .ConceptHeader>.__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .ConceptHeader>.PageHeading {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }
}

@-webkit-keyframes bgAnimation2 {
  from {
    background-position: right center
  }

  to {
    background-position: left center
  }
}

@keyframes bgAnimation2 {
  from {
    background-position: right center
  }

  to {
    background-position: left center
  }
}

.ConceptHeader_kv {
  background-size: cover;
  background-position: left center;
  background-repeat: no-repeat
}

@media screen and (max-width: 929px) {
  .ConceptHeader_kv {
    width: 100%;
    height: 100vw;
    -webkit-animation: 120s bgAnimation linear;
    animation: 120s bgAnimation linear
  }
}

@media screen and (min-width: 930px) {
  .ConceptHeader_kv {
    grid-area: kv;
    -webkit-animation: 90s bgAnimation linear;
    animation: 90s bgAnimation linear
  }
}

@media screen and (max-width: 929px) {
  .ConceptHeader_content {
    margin-left: 36px;
    margin-right: 36px;
    padding: 55px 0
  }

  .ConceptHeader_content .__copy {
    font-size: 1.125rem;
    line-height: 1.6666666667;
    letter-spacing: 1.44px
  }

  .ConceptHeader_content .__text {
    margin-top: 30px
  }
}

@media screen and (min-width: 930px) {
  .ConceptHeader_content {
    grid-area: text;
    padding-top: 4vw
  }

  .ConceptHeader_content .__copy {
    font-size: 1.5rem;
    line-height: 1.6666666667;
    letter-spacing: 1.92px
  }

  .ConceptHeader_content .__text {
    margin-top: 2vw
  }
}

.AccessBlock_content.access_box2>.ConceptHeader_content {
  -ms-grid-row: 2;
  -ms-grid-column: 1
}

@media screen and (min-width: 1368px) {
  .ConceptHeader_content {
    padding-top: 80px
  }

  .ConceptHeader_content .__text {
    margin-top: 50px
  }
}

@media screen and (min-width: 930px) {
  .ConceptBox {
    margin-top: 100px
  }
}

.ConceptItem {
  width: 100%;
  max-width: 1380px;
  margin-left: auto;
  margin-right: auto
}

@media screen and (min-width: 930px) {
  .ConceptItem {
    display: flex;
    min-height: 443px
  }

  .ConceptItem:not(:first-child) {
    margin-top: 40px
  }
}

.ConceptItem_img {
  overflow: hidden;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover
}

.ConceptItem_img a {
  display: block;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover
}

@media screen and (max-width: 929px) {
  .ConceptItem_img {
    height: 173px
  }

  .ConceptItem_img a {
    background-position: right 37px center
  }
}

@media screen and (min-width: 930px) {
  .ConceptItem_img {
    flex: 0 0 56.14%;
    width: 56.14%;
    max-width: 767px;
    height: 443px
  }

  .ConceptItem_img a {
    background-position: center
  }
}

.ConceptItem_text a {
  text-decoration: none
}

.ConceptItem_text .__heading span {
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase
}

.ConceptItem_text .__heading span, .ConceptItem_text .__heading b {
  display: block
}

@media screen and (max-width: 929px) {
  .ConceptItem_text .__text p {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }
}

@media screen and (min-width: 930px) {
  .ConceptItem_text .__text p {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

@media screen and (max-width: 929px) {
  .ConceptItem_text {
    margin: 0 37px;
    padding: 40px 0 50px
  }

  .ConceptItem_text a {
    display: block
  }

  .ConceptItem_text .__heading span {
    font-size: 1.5rem;
    line-height: 1.2083333333
  }

  .ConceptItem_text .__heading b {
    margin-top: 5px;
    font-size: .875rem;
    line-height: 1.7142857143
  }

  .ConceptItem_text .__text {
    margin-top: 20px
  }
}

@media screen and (min-width: 930px) {
  .ConceptItem_text {
    max-width: 570px;
    padding: 40px 6% 0
  }

  .ConceptItem_text .__heading span {
    font-size: 1.75rem;
    line-height: 1.2142857143
  }

  .ConceptItem_text .__heading b {
    font-size: 1rem;
    line-height: 1.875
  }

  .ConceptItem_text .__text {
    margin-top: 40px
  }
}

@media screen and (min-width: 1368px) {
  .ConceptItem_text {
    padding: 40px 100px 0
  }
}

.News {
  margin-top: 40px
}

@media screen and (min-width: 930px) {
  .News {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto auto;
    -ms-grid-columns: 250px 30px 1fr;
    grid-template: "news_head news_content"auto "news_head news_pagenav"auto/250px 1fr;
    grid-column-gap: 30px
  }
}

@media screen and (min-width: 930px) {
  .NewsHeader {
    position: relative;
    grid-area: news_head
  }
}

.NewsHeader .PageHeading a {
  text-decoration: none
}

.NewsHeader .PageHeading b {
  margin-left: 10px
}

@media screen and (min-width: 930px) {
  .NewsHeader_wrap {
    position: sticky;
    top: 130px
  }
}

@media screen and (min-width: 930px) {
  .PageNav {
    grid-area: news_pagenav
  }
}

@media screen and (max-width: 929px) {
  .NewsHeader_category {
    margin-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .NewsHeader_category {
    margin-top: 25px
  }

  .NewsHeader_category ul li {
    position: relative;
    padding-left: 16px;
    font-size: .75rem;
    list-style: none
  }

  .NewsHeader_category ul li a {
    text-decoration: none
  }

  .NewsHeader_category ul li:not(:first-child) {
    margin-top: 15px
  }

  .NewsHeader_category ul li.current-cat::before {
    position: absolute;
    top: calc(50% - 1px);
    left: 0;
    display: block;
    content: "";
    background: url("../fonts/arrow_l.svg") no-repeat center/cover;
    width: 5px;
    height: 5px
  }
}

.NewsHeader_back {
  margin-top: 25px;
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase;
  line-height: 1
}

.NewsHeader_back a {
  display: flex;
  align-items: center;
  text-decoration: none
}

.NewsHeader_back a i {
  margin-right: 10px
}

@media screen and (max-width: 929px) {
  .NewsHeader_back {
    display: none
  }
}

@media screen and (max-width: 929px) {
  .NewsArchives, .NewsContent {
    margin-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .NewsArchives, .NewsContent {
    grid-area: news_content
  }
}

@media screen and (min-width: 930px) {
  .NewsHeader {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1
  }

  .PageNav {
    -ms-grid-row: 2;
    -ms-grid-column: 3
  }

  .NewsArchives, .NewsContent {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }
}

.CategoryLabel {
  display: inline-flex;
  align-items: center;
  height: 22px;
  padding: 5px 10px;
  background-color: #eee;
  color: #aaa;
  font-size: .6875rem;
  line-height: 1
}

.EntryDate {
  display: block;
  font-family: "Cormorant Garamond", serif;
  line-height: 1
}

@media screen and (min-width: 930px) {
  .NewsArchives {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 16px;
    grid-row-gap: 40px
  }
}

@media screen and (min-width: 1100px) {
  .NewsArchives {
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr
  }
}

.NewsArchives_item a {
  text-decoration: none
}

@media screen and (max-width: 929px) {
  .NewsArchives_item:not(:first-child) {
    margin-top: 22px
  }

  .NewsArchives_item a {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 22px auto;
    -ms-grid-columns: auto 1fr;
    grid-template: "data ."22px "thumb text"auto/auto 1fr
  }

  .NewsArchives_item .__data {
    grid-area: data
  }

  .NewsArchives_item .__data .EntryDate {
    display: none
  }

  .NewsArchives_item .__thumb {
    grid-area: thumb;
    max-width: 216px;
    width: 39vw
  }

  .NewsArchives_item .EntryDate {
    font-size: 1rem
  }

  .NewsArchives_item .__text {
    grid-area: text;
    padding-left: 10px
  }

  .NewsArchives_item .__text h3 {
    margin-top: 6px;
    font-size: .75rem;
    letter-spacing: .96px;
    line-height: 1.6666666667
  }

  .NewsArchives_item a>.__text {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .NewsArchives_item a>.__text {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }

  .NewsArchives_item a>.ConceptHeader_content {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }
}

@media screen and (min-width: 930px) {
  .AccessBlock_content.access_box1 .__text {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .AccessBlock_content.access_box1 .__img {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .AccessBlock_content.access_box2 .__text {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .AccessBlock_content.access_box2 .__img {
    -ms-grid-row: 1;
    -ms-grid-column: 3
  }

  .ConceptHeader .PageHeading {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .ConceptHeader_kv {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3
  }

  .ConceptHeader_content {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .ConceptHeader>.ConceptHeader_content {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .NewsArchives_item .__text {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .ConceptHeader>.__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }
}

@media screen and (min-width: 1368px) {
  .ConceptHeader>.ConceptHeader_kv {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2
  }

  .ConceptHeader>.ConceptHeader_content {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .ConceptHeader>.__text {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }
}

@media screen and (max-width: 929px) {
  .NewsArchives_item .__data {
    -ms-grid-row: 1;
    -ms-grid-column: 1
  }

  .NewsArchives_item .__thumb {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .NewsArchives_item a>.__text {
    -ms-grid-row: 2;
    -ms-grid-column: 2
  }
}

@media screen and (min-width: 930px) {
  .NewsArchives_item .__data {
    display: flex;
    align-items: center;
    justify-content: space-between
  }

  .NewsArchives_item .EntryDate {
    padding-bottom: 4px;
    font-size: .875rem
  }

  .NewsArchives_item .__text {
    margin-top: 10px
  }

  .NewsArchives_item .__text .EntryDate {
    display: none
  }

  .NewsArchives_item .__text h3 {
    font-size: .875rem;
    letter-spacing: 1.12px;
    line-height: 1.7142857143
  }
}

.Page.Thankyou .PageHeading h2 {
  text-align: center
}

.Page.Thankyou .PageHeading h2 span, .Page.Thankyou .PageHeading h2 b {
  display: block;
  margin-left: 0
}

.Page.Thankyou .PageHeading h2 b {
  margin-top: 12px;
  line-height: 1.5
}

@media screen and (max-width: 929px) {
  .Page.Thankyou .Page_content p {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }
}

@media screen and (min-width: 930px) {
  .Page.Thankyou .Page_content p {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

@media screen and (max-width: 929px) {
  .Page.Thankyou .SiteImage {
    width: 100%;
    height: 100vw;
    max-width: 630px;
    max-height: 630px;
    margin: 0 auto
  }

  .Page.Thankyou .Page_wrap {
    max-width: 360px;
    margin: 30px auto 0;
    padding: 0 30px
  }

  .Page.Thankyou .Page_content {
    margin-top: 30px
  }
}

@media screen and (min-width: 930px) {
  .Page.Thankyou {
    display: flex;
    align-items: center;
    max-width: 1300px;
    padding: 40px 100px 0;
    margin: 0 auto
  }

  .Page.Thankyou .SiteImage {
    flex: 1 1 auto;
    max-width: 630px;
    min-height: 630px
  }

  .Page.Thankyou .Page_wrap {
    flex: 0 0 350px;
    max-width: 350px;
    margin-left: 100px
  }

  .Page.Thankyou .Page_content {
    margin-top: 30px
  }

  .Page.Thankyou .Page_content p:not(:first-child) {
    margin-top: 1em
  }
}

.FaqGroup:last-child {
  border-bottom: 1px solid #aaa
}

@media screen and (max-width: 929px) {
  .PageHeading+.FaqGroup {
    margin-top: 40px
  }
}

@media screen and (min-width: 930px) {
  .PageHeading+.FaqGroup {
    margin-top: 80px
  }
}

.FaqGroup_head {
  height: 70px;
  padding: 20px 15px 20px 20px;
  border-top: 1px solid #aaa
}

@media screen and (max-width: 929px) {
  .FaqGroup_head .__heading {
    font-size: 1rem
  }

  .FaqGroup_head .IconBtn {
    font-size: 1.25rem
  }
}

@media screen and (min-width: 930px) {
  .FaqGroup_head .__heading {
    font-size: 1.125rem
  }

  .FaqGroup_head .IconBtn {
    font-size: 1.5rem
  }
}

.FaqGroup_list {
  border-top: 1px solid #aaa;
  padding-bottom: 40px
}

.FaqItem {
  border-bottom: 1px solid #eee
}

.FaqItem_q, .FaqItem_a {
  padding: 20px 50px 20px 20px
}

@media screen and (max-width: 929px) {
  .FaqItem_q, .FaqItem_a {
    font-size: .75rem;
    line-height: 1.6666666667;
    letter-spacing: .96px
  }
}

@media screen and (min-width: 930px) {
  .FaqItem_q, .FaqItem_a {
    font-size: .875rem;
    line-height: 1.7142857143;
    letter-spacing: 1.12px
  }
}

.FaqItem_q {
  position: relative
}

.FaqItem_q i.bx {
  position: absolute;
  top: calc(50% - 10px);
  right: 20px;
  line-height: 1;
  transition: all .2s ease-out
}

.FaqItem_q[aria-selected=true] i.bx {
  transform: rotate(180deg)
}

@media screen and (max-width: 929px) {
  .FaqItem_q i.bx {
    font-size: 1.125rem
  }
}

@media screen and (min-width: 930px) {
  .FaqItem_q i.bx {
    font-size: 1.25rem
  }
}

.FaqItem_a {
  display: none;
  border-top: 1px dashed #eee
}

@media screen and (max-width: 929px) {
  .FaqItem_a {
    margin-right: 50px
  }
}

@media screen and (min-width: 930px) {
  .FaqItem_a {
    margin-right: 92px
  }
}

.KeyVisual {
  position: relative;
  width: 100%;
  height: 100%;
  align-items: center
}

.KeyVisual .swiper-slide {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  min-height: 100vh;
  min-height: 100svh
}

.KeyVisual .KeyVisual_movie {
  position: relative;
  overflow: hidden;
  max-width: 100vw;
  height: 100vh
}

.KeyVisual .KeyVisual_movie .movie {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100vw;
  min-height: 100vh;
  transform: translate(-50%, -50%)
}

@media screen and (max-width: 929px) {
  .KeyVisual .KeyVisual_movie .movie.-pc {
    display: none
  }
}

@media screen and (min-width: 930px) {
  .KeyVisual .KeyVisual_movie .movie.-sp {
    display: none
  }
}

.KeyVisual_lang {
  position: absolute;
  left: 20px;
  z-index: 100
}

@media screen and (max-width: 929px) {
  .KeyVisual_lang {
    bottom: 20px
  }
}

@media screen and (min-width: 930px) {
  .KeyVisual_lang {
    top: 50%
  }
}

.KeyVisual_lang ul {
  display: -ms-grid;
  display: grid;
  gap: 10px
}

.KeyVisual_lang ul li {
  width: 34px;
  height: 34px;
  list-style: none;
  font-family: "Cormorant Garamond", serif;
  font-size: 16px
}

.KeyVisual_lang ul li.-current a {
  background: rgba(68, 68, 68, .6)
}

.KeyVisual_lang ul li a {
  display: -ms-grid;
  display: grid;
  place-content: center;
  width: 100%;
  height: 100%;
  color: #fff;
  text-decoration: none
}

.KeyVisual_text {
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 100;
  margin: auto
}

.KeyVisual_text.-white {
  color: #fff
}

.KeyVisual_text.-black {
  color: #000
}

.KeyVisual_text.-left {
  text-align: left
}

.KeyVisual_text.-right {
  text-align: right
}

.KeyVisual_text.-center {
  left: 0;
  right: 0;
  text-align: center
}

.KeyVisual_text .__hotelname {
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase;
  font-size: 1.125rem;
  letter-spacing: 1.44px
}

@media screen and (max-width: 929px) {
  .KeyVisual_text.-left {
    left: 10px;
    right: 10px
  }

  .KeyVisual_text.-right {
    right: 10px;
    left: 10px;
    z-index: 2;
  }

  .KeyVisual_text .__copy {
    font-size: 1.5rem;
    letter-spacing: 2.32px
  }
}

@media screen and (min-width: 930px) {
  .KeyVisual_text.-left {
    left: 40px
  }

  .KeyVisual_text.-right {
    right: 40px
  }

  .KeyVisual_text .__copy {
    font-size: 1.8125rem;
    letter-spacing: 2.32px
  }
}

.HomeTopics .__thumb {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center
}

.HomeTopics .__text h3 {
  font-size: 1rem
}

.HomeTopics .__text p {
  margin-top: .5rem;
  font-size: .75rem
}

@media screen and (max-width: 929px) {
  .HomeTopics {
    margin-top: 40px;
    padding: 0 28px 80px
  }

  .HomeTopics .NewsArchives_item:not(:first-child) {
    margin-top: 30px
  }

  .HomeTopics .NewsArchives_item a {
    display: block
  }

  .HomeTopics .NewsArchives_item .__thumb {
    width: 100%;
    max-width: 100%;
    padding-top: 40%
  }

  .HomeTopics .NewsArchives_item .__text {
    padding: .5rem 0 0
  }

  .HomeTopics .NewsArchives_item .__text p {
    display: none
  }
}

@media screen and (min-width: 930px) {
  .HomeTopics {
    display: flex;
    justify-content: center;
    margin: 100px -8px 0;
    margin-left: auto;
    margin-right: auto
  }
}

@media screen and (min-width: 930px)and (max-width: 929px) {
  .HomeTopics {
    margin-left: 36px;
    margin-right: 36px
  }
}

@media screen and (min-width: 930px)and (min-width: 930px) {
  .HomeTopics {
    max-width: 1360px;
    padding-left: 100px;
    padding-right: 100px
  }
}

@media screen and (min-width: 930px) {
  .HomeTopics .NewsArchives_item {
    flex: 0 0 33.333%;
    padding: 0 16px
  }

  .HomeTopics .NewsArchives_item .__thumb {
    width: 100%;
    padding-top: 65%
  }
}

.HomeConcept {
  position: relative
}

.HomeConcept .TextBtn {
  margin-top: 36px
}

@media screen and (max-width: 929px) {
  .HomeConcept {
    display: flex;
    flex-direction: column-reverse;
    margin-top: 0;
    padding-bottom: 70px
  }
}

@media screen and (min-width: 930px) {
  .HomeConcept {
    margin-top: 100px;
    padding-bottom: 80px;
    margin-left: auto;
    margin-right: auto
  }
}

@media screen and (min-width: 930px)and (max-width: 929px) {
  .HomeConcept {
    margin-left: 36px;
    margin-right: 36px
  }
}

@media screen and (min-width: 930px)and (min-width: 930px) {
  .HomeConcept {
    max-width: 1360px;
    padding-left: 100px;
    padding-right: 100px
  }
}

.HomeConcept_slide .__photo {
  height: 100%
}

@media screen and (max-width: 929px) {
  .HomeConcept_slide {
    width: 90vw;
    height: calc(100vh - 70px)
  }

  .HomeConcept_slide .Slider.swiper-container {
    padding-bottom: 0
  }

  .HomeConcept_slide .swiper-pagination.swiper-pagination-bullets {
    left: auto;
    right: -40px;
    width: auto;
    display: flex;
    flex-direction: column
  }

  .HomeConcept_slide .swiper-pagination.swiper-pagination-bullets .swiper-pagination-bullet:not(:first-child) {
    margin-top: 15px
  }
}

@media screen and (min-width: 930px) {
  .HomeConcept_slide .__photo {
    padding-top: 51.72%
  }
}

.HomeConcept_content {
  background: #fff;
  text-align: center
}

.HomeConcept_content .__heading span {
  font-size: 1rem;
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase
}

.HomeConcept_content .__copy {
  margin-top: 20px;
  font-size: 1.5rem;
  line-height: 1.6666666667;
  letter-spacing: 1.92px
}

.HomeConcept_content .__text {
  margin-top: 30px
}

@media screen and (max-width: 929px) {
  .HomeConcept_content {
    padding: 50px 40px
  }
}

@media screen and (min-width: 930px) {
  .HomeConcept_content {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 2;
    width: 455px;
    padding: 50px 80px 30px
  }
}

@media screen and (max-width: 929px) {
  .HomeRooms {
    position: relative;
    width: 100%;
    min-height: 100vh
  }
}

@media screen and (min-width: 930px) {
  .HomeRooms {
    position: relative;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    max-height: 820px;
    margin-top: 140px
  }
}

@media screen and (max-width: 929px) {
  .HomeRooms_content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 76.8vw;
    max-width: 450px;
    padding: 60px 36px;
    background: rgba(255, 255, 255, .9)
  }
}

@media screen and (min-width: 930px) {
  .HomeRooms_content {
    flex: 0 0 40%;
    padding: 0 6%
  }

  .HomeRooms_content>* {
    max-width: 300px
  }
}

@media screen and (min-width: 1368px) {
  .HomeRooms_content {
    padding: 0 100px
  }
}

@-webkit-keyframes bgAnimation {
  from {
    background-position: left center
  }

  to {
    background-position: right center
  }
}

@keyframes bgAnimation {
  from {
    background-position: left center
  }

  to {
    background-position: right center
  }
}

.HomeRooms_photo .__photo {
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: right center
}

@media screen and (max-width: 929px) {
  .HomeRooms_photo {
    width: 100%
  }

  .HomeRooms_photo .__photo {
    min-height: 100vh;
    -webkit-animation: 100s bgAnimation linear;
    animation: 100s bgAnimation linear
  }
}

@media screen and (min-width: 930px) {
  .HomeRooms_photo {
    flex: 0 0 60%;
    width: calc(50% + 100px);
    height: 60vw;
    max-height: 820px
  }

  .HomeRooms_photo .__photo {
    height: 100%;
    -webkit-animation: 60s bgAnimation linear;
    animation: 60s bgAnimation linear
  }
}

.HomeRooms_content .__heading, .HomeBlog_header .__heading {
  line-height: 1.4
}

.HomeRooms_content .__heading span, .HomeBlog_header .__heading span {
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase;
  font-size: 1.75rem
}

.HomeRooms_content .__heading b, .HomeBlog_header .__heading b {
  font-size: 1rem
}

.HomeRooms_content .__heading span, .HomeRooms_content .__heading b, .HomeBlog_header .__heading span, .HomeBlog_header .__heading b {
  display: block
}

.HomeRooms_content .__text, .HomeBlog_header .__text {
  margin-top: 40px
}

.HomeRooms_content .__text p, .HomeBlog_header .__text p {
  font-size: .875rem;
  line-height: 1.7142857143
}

.HomeRooms_content .TextBtn, .HomeBlog_header .TextBtn {
  margin-top: 40px
}

@media screen and (max-width: 929px) {
  .HomeBlog .swiper-wrapper {
    display: block
  }
}

@media screen and (min-width: 930px) {
  .HomeBlog {
    display: flex;
    margin-top: 140px
  }

  .HomeBlog .swiper-slide {
    margin-right: 30px
  }
}

.HomeBlog_header {
  box-sizing: border-box
}

@media screen and (max-width: 929px) {
  .HomeBlog_header {
    padding: 70px 28px 0;
    text-align: center
  }

  .HomeBlog_header .__text {
    text-align: left
  }
}

@media screen and (min-width: 930px) {
  .HomeBlog_header {
    display: flex;
    flex: 0 0 420px;
    flex-direction: column;
    justify-content: flex-end;
    width: 420px;
    margin-top: auto;
    padding: 0 30px 0 100px
  }
}

.HomeBlog_content .__photo {
  width: 100%;
  overflow: hidden
}

.HomeBlog_content .__photo a {
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: .2s all ease-out
}

.HomeBlog_content .__photo a.lazyloaded {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 1
}

.HomeBlog_content .__photo a:hover {
  transform: scale(1.02)
}

.HomeBlog_content .__heading {
  font-size: 1rem
}

.HomeBlog_content .__text {
  margin-top: 10px;
  font-size: .75rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden
}

@media screen and (max-width: 929px) {
  .HomeBlog_content {
    width: auto;
    margin-top: 50px;
    padding: 0 28px
  }

  .HomeBlog_content .__photo {
    height: 56vw;
    min-height: 210px
  }

  .HomeBlog_content .__heading, .HomeBlog_content .__text, .HomeBlog_content .TextBtn {
    margin-left: 20px;
    margin-right: 20px
  }

  .HomeBlog_content .__heading {
    margin-top: 20px
  }

  .HomeBlog_content .TextBtn {
    margin-top: 20px
  }
}

@media screen and (min-width: 930px) {
  .HomeBlog_content {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 456px auto auto;
    -ms-grid-columns: 4fr 1fr;
    grid-template: "blog_photo blog_photo"456px "blog_heading ."auto "blog_text blog_link"auto/4fr 1fr;
    max-width: 70%;
  }

  .HomeBlog_content .__photo {
    grid-area: blog_photo;
    height: 456px
  }

  .HomeBlog_content .__heading {
    grid-area: blog_heading;
    margin-top: 30px;
    padding-right: 30px
  }

  .HomeBlog_content .__text {
    grid-area: blog_text;
    padding-right: 30px
  }

  .HomeBlog_content .TextBtn {
    grid-area: blog_link;
    text-align: right;
    padding-right: 17px
  }
}

@media screen and (min-width: 930px) {
  .HomeBlog_content .__photo {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2
  }

  .HomeBlog_content .__heading {
    -ms-grid-row: 2;
    -ms-grid-column: 1
  }

  .HomeBlog_content .__text {
    -ms-grid-row: 3;
    -ms-grid-column: 1
  }

  .HomeBlog_content .TextBtn {
    -ms-grid-row: 3;
    -ms-grid-column: 2
  }
}

@media screen and (max-width: 929px) {
  .HomeOtherLink {
    margin-top: 120px
  }
}

@media screen and (min-width: 930px) {
  .HomeOtherLink {
    margin-top: 160px
  }
}

@media screen and (min-width: 930px) {
  .HomeOtherItem a.-link-sp {
    pointer-events: none
  }
}

@media screen and (max-width: 929px) {
  .HomeOtherItem .ConceptItem_img {
    height: 34.66vw;
    min-height: 130px;
    background-position: center center
  }

  .HomeOtherItem .ConceptItem_text {
    padding: 0
  }

  .HomeOtherItem .ConceptItem_text a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 28px 0
  }

  .HomeOtherItem .ConceptItem_text .__heading span {
    font-size: .875rem
  }

  .HomeOtherItem .ConceptItem_text .__heading b {
    font-size: 1.125rem;
    line-height: 1.2
  }

  .HomeOtherItem .ConceptItem_text .__text {
    display: none
  }

  .HomeOtherItem .ConceptItem_text .LinkIcon i {
    font-size: .625rem
  }

  .HomeOtherItem .ConceptItem_text .TextBtn.-details a {
    border-bottom: none
  }
}

@media screen and (min-width: 930px) {
  .HomeOtherItem .TextBtn.-details {
    margin-top: 40px
  }

  .HomeOtherItem .TextBtn.-details i {
    display: none
  }
}

.HomeActivities .TextBtn {
  text-align: center
}

@media screen and (max-width: 929px) {
  .HomeActivities .TextBtn {
    margin-top: 50px
  }
}

@media screen and (min-width: 930px) {
  .HomeActivities .TextBtn {
    margin-top: 66px
  }
}

.HomeActivities_header {
  margin-left: auto;
  margin-right: auto
}

@media screen and (max-width: 929px) {
  .HomeActivities_header {
    margin-left: 36px;
    margin-right: 36px
  }
}

@media screen and (min-width: 930px) {
  .HomeActivities_header {
    max-width: 1100px;
    padding-left: 100px;
    padding-right: 100px
  }
}

.HomeActivities_header .__heading {
  line-height: 1.4
}

.HomeActivities_header .__heading span {
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase
}

.HomeActivities_header .__heading span, .HomeActivities_header .__heading b {
  display: block
}

@media screen and (max-width: 929px) {
  .HomeActivities_header .__heading {
    padding: 70px 0 35px;
    text-align: center
  }

  .HomeActivities_header .__heading span {
    font-size: 1.125rem
  }

  .HomeActivities_header .__heading b {
    font-size: 1.5rem
  }

  .HomeActivities_header .__text {
    display: none
  }
}

@media screen and (min-width: 930px) {
  .HomeActivities_header {
    display: flex;
    align-items: center;
    padding: 60px 64px 54px
  }

  .HomeActivities_header .__heading {
    flex: 0 0 300px
  }

  .HomeActivities_header .__heading span {
    font-size: 1.75rem
  }

  .HomeActivities_header .__heading b {
    font-size: 1rem
  }

  .HomeActivities_header .__text {
    font-size: .875rem
  }
}

.HomeActivity a {
  display: block;
  text-decoration: none
}

.HomeActivity a .__photo {
  transition: .2s all ease-out
}

.HomeActivity a:hover .__photo {
  transform: scale(1.02)
}

.HomeActivity .HomeActivity_photo {
  overflow: hidden
}

.HomeActivity .HomeActivity_title {
  font-size: 1rem
}

.HomeActivity .HomeActivity_text {
  margin-top: 12px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden
}

.HomeActivity .HomeActivity_text p {
  font-size: .75rem
}

/* ---------------------------------
KOTOZNA追加
------------------------------------ */
.HomeKotozna {
  background-color: #fafafa;
  margin-top: 60px;
  padding-bottom: 60px;
}
.HomeKotozna .TextBtn {
  text-align: center;

}
.HomeKotozna .TextBtn a {
  display: block;
  width: fit-content;
  margin-right: auto;
  margin-left: auto;
  text-decoration: none;
  padding: 10px 20px;
  border: 1px solid #707070;
  background-color: #fff;
  transition: ease-in-out .3s;
}
.HomeKotozna .TextBtn span {
  display: inline-block;
  font-size: 16px;
  margin-top: 5px;
}

.HomeKotozna .TextBtn a:hover {
  background-color: #efefef;
}

@media screen and (max-width: 929px) {
  .HomeKotozna .TextBtn {
    margin-top: 50px
  }
}

.HomeKotozna_header {
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 929px) {
  .HomeKotozna_header {
    margin-left: 36px;
    margin-right: 36px
  }
}

@media screen and (min-width: 930px) {
  .HomeKotozna_header {
    max-width: 1100px;
    padding-left: 100px;
    padding-right: 100px
  }
}

.HomeKotozna_header .__heading {
  line-height: 1.4;
  text-align: center;
}
.HomeKotozna_header .__text {
  text-align: center;
}

.HomeKotozna_header .__heading span {
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase
}

.HomeKotozna_header .__heading span, .HomeKotozna_header .__heading b {
  display: block
}

@media screen and (max-width: 929px) {
  .HomeKotozna_header .__heading {
    padding: 70px 0 35px;
    text-align: center
  }

  .HomeKotozna_header .__heading span {
    font-size: 1.125rem
  }

  .HomeKotozna_header .__heading b {
    font-size: 1.5rem
  }
}

@media screen and (min-width: 930px) {
  .HomeKotozna_header {
    /* display: flex; */
    /* align-items: center; */
    padding: 60px 64px 54px
  }

  /* .HomeKotozna_header .__heading {
    flex: 0 0 300px
  } */

  .HomeKotozna_header .__heading span {
    font-size: 1.75rem
  }

  .HomeKotozna_header .__heading b {
    font-size: 1rem
  }

  .HomeKotozna_header .__text {
    font-size: .875rem;
    margin-top: 30px;
  }
}

.HomeNews {
  position: absolute;
  z-index: 10;
  left: 0;
  width: 100%;
  padding: 15px 20px;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  line-height: 1.2
}

.HomeNews i {
  margin-right: 10px;
  font-size: 1.5rem
}

.HomeNews a {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-decoration: none;
  transition: .2s opacity ease-out
}

.HomeNews a:hover {
  opacity: .6
}

@media screen and (max-width: 929px) {
  .HomeNews {
    top: 78px;
    text-align: left
  }
}

@media screen and (min-width: 930px) {
  .HomeNews {
    top: 90px;
    text-align: center
  }
}

.wpcf7-form{


  .FormItem{
    label{
      display: none;
    }

    input{
      border-bottom: 1px solid #000;
      padding: 10px 0;
    }
  
    textarea {
      padding: 10px 0;
      border-top: 1px solid #000;
      border-bottom: 1px solid #000;
    }
  }

  .FormPrivacy_agree{
    >p{
      margin-top: 0;
    }
  }

  .Form_detail{
    .FormItem{
      > p{
        height: 100%;
      }
    }
  }

  .wpcf7-spinner{
    display: none;
  }

}
