<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";

.wide_left {
 margin-right: auto;
 margin-left: calc(50% - 50vw);
}
.inner {
 max-width: 1600px;
}
.lower section .inner {
  width: calc(100% - 100px);
  margin: 0 auto;
}
@media only screen and (max-width:1440px) {
  .lower section .inner {
    width: calc(100% - 40px);
    margin: 0 auto;
  }
}

/* facade
================================== */
.facade {
 overflow: hidden;
}
.facade_wrap {
 display: flex;
 justify-content: right;
}
.facade_wrap_lead {
  width: 120px;
  margin-top: 20%;
  letter-spacing: 0.27em;
  font-size: 24px;
  line-height: 2;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-feature-settings: initial;
}
.facade_wrap_img {
 width: 60%;
}
.facade_wrap2 {
 margin-top: 120px;
 display: flex;
 flex-direction: row-reverse;
 justify-content: space-between;
 align-items: center;
 column-gap: 80px;
}
.facade_wrap_left {
  /* width: 100%; */
 margin-left: auto;
 margin-right: calc(50% - 50vw);
}
.facade_wrap_right {
 width: 30%;
 flex-shrink: 0;
 margin-top: 292px;
 margin-top: clamp(12.25rem, -5.8rem + 20.042vw, 18.25rem);
}
.facade_wrap_body {
 margin-top: 54px;
 margin-left: auto;
 margin-right: 20px;
 max-width: 500px;
 display: flex;
 flex-direction: column;
 row-gap: 30px;
}

@media only screen and (max-width:1440px) {
  .facade_wrap_right {
    margin-top: 192px;
    margin-top: clamp(9.125rem, 5.83rem + 6.855vw, 12rem);
   }
}

@media only screen and (max-width:768px) {
 .facade_wrap {
  flex-direction: column;
  row-gap: 30px;
 }
 .facade_wrap_lead {
  width: 120px;
  margin:30px auto 0;
  letter-spacing: 0.27em;
  font-size: 20px;
  height: auto;
}
 .facade_wrap_img {
  width: 100%;
 }
 .facade_wrap2 {
  margin-top: 60px;
  flex-direction: column;
 }
 .facade_wrap_left {
  width: 100%;
 }
 .facade_wrap_right {
  width: 100%;
  margin-top: 40px;
 }
 .facade_wrap_right .sp_right {
  width: 70%;
 }
 .facade_wrap_body {
  margin-top: 30px;
  row-gap: 14px;
 }
}

/* facade_top
================================== */
.lower section .inner.facade_top {
  margin-top: 80px;
}
.facade_top_wrap {
  margin-top: 80px;
  padding-block: 40px;
  display: flex;
  column-gap: 5%;
}
.facade_top_img {
  width: 28%;
  max-width: 300px;
}
.facade_top_body {
  width: 54%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  row-gap: 26px;
}
.facade_top_title {
  font-size: 20px;
  line-height: 1.6;
  color: #a99b65;
}
.facade_top_name {
  font-size: 26px;
  color: #4b575e;
  letter-spacing: 0.195em;
  margin-top: 20px;
}
.facade_top_name span {
  font-size: 36px;
}
.facade_top_comp {
  margin-top: 18px;
  font-size: 22px;
  color: #4b575e;
  letter-spacing: 0.195em;
}
.facade_top_text {
  max-width: 530px;
  font-size: 15px;
  color: #4b575e;
  letter-spacing: 0.23em;
  line-height: 2.2;
}

.facade_top_wrap2 {
  padding-bottom: 40px;
  display: flex;
  align-items: end;
  column-gap: 14px;
}
.facade_top_cap {
  text-align: center;
  font-size: 13px;
  letter-spacing: 0.1em;
  margin-top: 12px;
  line-height: 1.5;
}

@media only screen and (max-width:1024px) {
  .facade_top_wrap {
    margin-top: 60px;
    width: 100%;
  }
  .facade_top_img {
    width: 28%;
  }
  .facade_top_body {
    width: 62%;
    row-gap: 16px;
  }
  .facade_top_title {
    font-size: 16px;
  }
  .facade_top_comp {
    margin-top: 18px;
    font-size: 16px;
    letter-spacing: 0.1em;
  }
  .facade_top_name {
    font-size: 22px;
    margin-top: 10px;
  }
  .facade_top_name span {
    font-size: 30px;
  }
  .facade_top_text {
    font-size: 14px;
    letter-spacing: 0.1;
    line-height: 2;
  }
  .facade_top_wrap2 {
    padding-bottom: 40px;
    width: 100%;
    flex-direction: column;
    row-gap: 24px;
  }
}

@media only screen and (max-width:768px) {
  .facade_top_wrap {
    margin-top: 30px;
    flex-direction: column;
    row-gap: 30px;
  }
  .facade_top_img {
    width: 50%;
    margin-inline: auto;
  }
  .facade_top_body {
    width: 100%;
    row-gap: 16px;
  }
  .facade_top_title {
    font-size: 18px;
  }
  .facade_top_name {
    font-size: 28px;
  }
}

/* movieWrap
================================== */
.movieWrap {
  margin-top: 80px;
}
.movieWrap2 {
  margin-top: 120px;
}
.movieWrap_title_wrap {
  text-align: center;
}
#movieWrap .section_title {
  margin-top: 16px;
}
#movieWrap .movie_item {
  margin-top: 30px;
  max-width: 1100px;
  margin-inline: auto;
  aspect-ratio: 948 / 533;
}
.movie_item_cap {
  margin-top: 8px;
  max-width: 1100px;
  margin-inline: auto;
  text-align: center;
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

@media only screen and (max-width:768px) {
  .movieWrap {
    margin-top: 40px;
  }
  .movieWrap2 {
    margin-top: 60px;
  }
  #movieWrap .movie_item {
    margin-top: 20px;
  }
  .movie_item_cap {
    text-align: left;
    font-size: 12px;
  }
}


/* hall
================================== */
.lower section .inner.hall {
  margin-top: 80px;
}
.lower section .inner.hall2 {
 margin-top: 80px;
 border-top: 1px solid #a99b65;
 border-bottom: 1px solid #a99b65;
}
.hall_wrap {
 margin-top: 80px;
 display: flex;
 justify-content: space-between;
 align-items: end;
}
.hall_wrap.reverse {
  flex-direction: row-reverse;
}
.hall_wrap + .hall_title {
  margin-top: 100px;
}
.hall_img {
 width: 58%;
}
.hall_body {
 width: 33%;
 display: flex;
 flex-direction: column;
 row-gap: 26px;
}

@media only screen and (max-width:768px) {
 .lower section .inner.hall {
  margin-top: 80px;
 }
 .hall_wrap {
  margin-top: 40px;
  flex-direction: column;
  row-gap: 30px;
 }
 .hall_wrap.reverse {
  flex-direction: column;
 }
 .hall_img {
  width: 100%;
 }
 .hall_body {
  width: 100%;
  row-gap: 14px;
 }
}

/* banner_area
============================= */
.banner_area {
  margin-top: 100px;
}
.banner_item {
  position: relative;
  display: block;
  width: 90%;
  height: 300px;
  border: 5px solid #cab881;
  margin: auto;
  overflow: hidden;
}
.banner_item.cs {
  pointer-events: none;
}
.banner_item::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(../imgs/banner_img.jpg) no-repeat center center / cover;
  transition: all .5s ease-out;
}
.banner_item::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgba(22, 10, 7, 1);
  opacity: .7;
  z-index: 2;
}
.banner_item_body {
  position: absolute;
  width: 96%;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
}
.banner_title_en {
  position: relative;
  font-family: 'EB Garamond', serif;
  font-size: 16px;
  letter-spacing: 0.07em;
  text-align: center;
  color: #fff;
}
.banner_title {
  font-size: 26px;
  margin-top: 30px;
  letter-spacing: 0.3em;
  text-align: center;
  color: #fff;
}
.banner_item:hover::after {
  transform:scale(1.05);
}
.banner_item:hover::before {
  opacity: .8;
}
.cs_text {
  font-size: 33px;
  margin-top: 20px;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  font-family: "Cormorant Garamond", serif;
  background: rgb(158,168,175);
  background: linear-gradient(90deg, rgba(158,168,175,0) 0%, rgba(148,159,166,1) 20%, rgba(153,164,171,1) 80%, rgba(158,168,175,0) 100%);
  display: inline-block;
  padding-inline: 20%;
  padding-block: 6px;
  z-index: 3;
}


@media only screen and (max-width:768px) {
  .banner_area {
    margin-top: 30px;
  }
  .banner_item {
    height: 220px;
    width: 100%;
  }
  .banner_title_en {
    font-size: 16px;
  }
  .banner_title {
    margin-top: 10px;
    font-size: 18px;
  }
  .cs_text {
    font-size: 24px;
    margin-top: 20px;
    padding-inline: 20%;
  }
}


/* landscape
================================== */
.landscape {
  background: url(../imgs/landscape_bg.jpg) no-repeat center bottom / cover;

}
.landscape_contents {
 margin-top: 60px;
 background-color: #fff;
 box-shadow: rgba(0, 0, 0, 0.4) 0px 3px 8px;
 padding: 60px 60px;
}

@media only screen and (max-width:768px) {
 .landscape_contents {
  margin-top: 40px;
  padding: 30px 20px;
 }
}

/* タブ切り替えのCSS
================================ */
.tabArea {
  position: relative;
	margin: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 80px;
}
.tabArea::before {
  content: '/';
  color: #9c8f8f;
  position: absolute;
  font-size: 36px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.tab_contents .contents {
  margin-top: 40px;
}
.one_tab {
  position: relative;
	display: block;
	text-decoration: none;
	transition-duration: 0.3s;
	text-align: center;
	cursor: pointer;
}
.tab_arrow  {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: #fff;
  background-color: #9c8f8f;
  width: 26px;
  height: 26px;
  border-radius: 50%;
}
.tab_arrow::before {
  content: '';
  width: 10px;
  height: 10px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: 8px;
}
#tab01 .tab_arrow  {
  left: -40px;
}
#tab01 .tab_arrow::before   {
  transform: rotate(-135deg);
  left: 10px;
}
#tab02 .tab_arrow  {
  right: -40px;
}
#tab02 .tab_arrow::before   {
  transform: rotate(45deg);
  right: 10px;
}
.tab_inner {
  position: relative;
	font-size: 48px;
	letter-spacing: 0.1em;
	color: #9f9f9f;
}
.select .tab_arrow {
  background-color: #000;
}
.select .tab_inner {
	color: #000;
  border-bottom: 3px solid #000;
}
.contents .tab_main {
	display: none;
	transition-duration: 0.3s;
}
.tab_main.is_show {
	display: block;
}

@media only screen and (max-width:768px) {
  .tabArea {
    column-gap: 40px;
  }
	.tabBox {
			margin-top: 0px;
			padding: 0 20px;
	}
  .tab_contents .contents {
    margin-top: 20px;
  }
  .tabArea::before {
    font-size: 26px;
  }
  .tab_contents .contents {
    margin-top: 40px;
  }
  .tab_arrow  {
    width: 20px;
    height: 20px;
    border-radius: 50%;
  }
  .tab_arrow::before {
    width: 8px;
    height: 8px;
    top: 6px;
  }
  #tab01 .tab_arrow  {
    left: -30px;
  }
  #tab01 .tab_arrow::before   {
    left: 8px;
  }
  #tab02 .tab_arrow  {
    right: -30px;
  }
  #tab02 .tab_arrow::before   {
    right: 8px;
  }
  .tab_inner {
    font-size: 26px;
  }
  .select .tab_inner {
    border-bottom: 2px solid #000;
  }

}


/* garden
================================== */
.garden {
  position: relative;
  margin-top: 60px;
  padding: 120px 100px;
  padding: clamp(3.75rem, -1.198rem + 7.732vw, 7.5rem) clamp(3.125rem, -0.999rem + 6.443vw, 6.25rem);
  background-image: url(../imgs/garden_bg.jpg);
  background-size: cover;
  background-position: center right ;
}
.garden_wrap {
 display: flex;
 justify-content: space-between;
}
.garden_body {
 width: 40%;
}
.garden_body .contents_lead {
 font-size: clamp(1rem, 0.286rem + 1.116vi, 1.625rem);
}
.garden_body .contents_text {
 font-size: clamp(0.75rem, 0.464rem + 0.446vi, 1rem);
 width: 94%;
 margin-top: clamp(0.875rem, -0.982rem + 2.902vi, 2.5rem);
}
.garden_imgs {
 width: 58%;
 display: grid;
 grid-template-columns: repeat(2,1fr);
 column-gap: 20px;
}
.garden_imgs2 {
  position: relative;
  margin-top: 20px;
  margin-left: 140px;
  margin-left: auto;
 width: 88%;
 display: grid;
 grid-template-columns: repeat(3,1fr);
 column-gap: 20px;
}
.garden_imgs_cap {
 font-size: 16px;
 line-height: 1.6;
}
.garden_imgs_cap2 {
 position: absolute;
 font-size: 14px;
 line-height: 1.6;
 bottom: -40px;
 right: 0;
}

@media only screen and (max-width:768px) {
 .garden {
  margin-top: 60px;
  padding: 30px 20px;
 }
 .garden_wrap {
  flex-direction: column;
  row-gap: 20px;
 }
 .garden_body {
  width: 100%;
 }
 .garden_body .contents_lead {
  font-size: 18px;
 }
 .garden_body .contents_text {
  font-size: 16px;
  width: 100%;
  margin-top: clamp(0.875rem, -0.982rem + 2.902vi, 2.5rem);
 }
 .garden_imgs {
  width: 86%;
  max-width: 400px;
  margin: auto;
  grid-template-columns: repeat(1,1fr);
  row-gap: 10px;
 }
 .garden_imgs2 {
  width: 86%;
  max-width: 400px;
  margin-inline: auto;
  margin-top: 10px;
  grid-template-columns: repeat(1,1fr);
  row-gap: 10px;
}
 .garden_imgs_cap {
  font-size: 14px;
  line-height: 1.6;
 }
 .garden_imgs_cap2 {
  position: static;
  font-size: 12px;
  text-align: right;
 }
}

/* accordion-area
=================================== */
.accordion {
  margin-top: 60px;
}
.accordion-area {
  list-style: none;
}
.title {
  position: relative;
  margin-inline: auto;
  cursor: pointer;
  transition: all .5s ease-out;
  border: 5px solid #cab881;
  width: 100%;
  height: 330px;
  background: url(../imgs/banner_img2.jpg) no-repeat center center / cover;
}
.accordion_title_en {
  position: relative;
	font-size: 40px;
	letter-spacing: 0.22em;
	font-family: 'EB Garamond', serif;
  text-align: center;
  color: #fff;
}
.accordion_title {
  font-size: 24px;
  margin-top: 16px;
  line-height: 1.6;
  letter-spacing: 0.3em;
  text-align: center;
  color: #fff;
}


/*アイコンの＋と×*/
.title::before {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 60px;
  border-radius: 100px;
  background-color: #fff;
  box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
}
.title::after {
  content: "";
  position: absolute;
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%);
  background: url(../imgs/open.svg) no-repeat center center / cover;
  width: 40px;
  height: 40px;
  transition: all .5s ease-out;
}
.title.close::after {
  transform:translateX(-50%) rotate(45deg);
}
/*アコーディオンで現れるエリア*/
.box {
  display: none;
  margin-inline: auto;
  padding-top: 100px;
}

@media only screen and (max-width:768px) {
  .shopping_item {
    padding-top: 60px;
  }
  .title {
    height: 260px;
  }
  .banner_title_en {
    font-size: 14px;
  }
  .banner_title_jp {
    font-size: 20px;
    margin-top: 16px;
  }
  .accordion {
    margin-top: 40px;
  }
  .accordion_title_en {
    font-size: 32px;
    letter-spacing: 0.2em;
  }
  .accordion_title {
    font-size: 17px;
    margin-top: 10px;
    letter-spacing: 0.2em;
  }
  .box {
    padding-top: 50px;
    padding-inline: 0px;
  }
}

/* art_contents
=================================== */
.art_contents {
  margin-inline: auto;
  max-width: 1340px;
}
.art_item + .art_item {
	margin-top: 100px;
}
.art_item_title {
	text-align: center;
	text-transform: uppercase;
	color: #fff;
	background: rgb(180, 158, 108);
	background: linear-gradient(0deg, rgba(180, 158, 108, 1) 0%, rgba(160, 132, 69, 1) 100%);
	font-family: 'EB Garamond', serif;
	font-size: 23px;
	letter-spacing: 0.165em;
	padding: 12px 0;
}
.art_item_title_s {
	display: block;
	font-size: 12px;
}
.art_item_lead {
	margin-top: 60px;
	text-align: center;
	font-size: 22px;
	letter-spacing: 0.1em;
	line-height: 2;
}
.art_item_img_top {
  margin-top: 60px;
}
.art_item_wrap {
	margin-top: 40px;
	display: flex;
	justify-content: space-between;
}
.art_item_wrap.jcc {
	justify-content: center;
	align-items: center;
	column-gap: 40px;
}
.art_item_img01 {
	width: 74.5%;
}
.art_item_img02 {
	width: 21.3%;
	display: flex;
	flex-direction: column;
	row-gap: 20px;
}
.art_grid_wrap {
  position: relative;
	margin-top: 70px;
	background: url(../imgs/art_item_img08.png) no-repeat center center / cover;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	padding: 60px 30px;
	column-gap: 1%;
}
.art_grid_item {
  position: relative;
}
.art_grid_item_cap {
  position: absolute;
  font-size: 10px;
  bottom: 2%;
  right: 0px;
}
.art_grid_title {
	margin-top: -10px;
	font-size: 16px;
	text-align: center;
	letter-spacing: 0.1em;
}
.art_grid_text {
	margin-top: 10px;
	font-size: 12px;
	text-align: center;
	letter-spacing: 0.1em;
	line-height: 2;
}
.art_grid_cap {
  text-align: left;
  font-size: 12px;
  margin-top: 4px;
}
.art_item_img09 {
	width: 79.6%;
}
.art_item_img10 {
	width: 18%;
}
.art_item_img11 {
	width: 30%;
}
.art_item_img12 {
	width: 40%;
}
.art_item_cap {
	text-align: center;
	font-size: 14px;
	letter-spacing: 0.18em;
	line-height: 1.6;
	margin-top: 60px;
}
.profile_area {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  max-width: 600px;
  margin-inline: auto;
  margin-top: 80px;
  padding-block: 30px;
}
.profile_title {
  font-size: 24px;
}
.profile_title span {
  font-size: 20px;
}
.profile_name {
  margin-top: 10px;
  font-size: 56px;
}
.profile_name span {
  font-size: 26px;
}
.profile_text {
  margin-top: 16px;
  font-size: 16px;
  letter-spacing: 0.23em;
  line-height: 2.2;
}
.close_btn {
  position: relative;
  display: block;
  width: 100%;
  text-align: center;
  max-width: 150px;
  margin-inline: auto;
  margin-top: 80px;
  font-size: 22px;
  letter-spacing: 0.06em;
  line-height: 1;
  padding-block: 18px;
  color: #4b575e;
  background-color: #f5f6f7;
  border: 1px solid #abb3c0;
  box-shadow: rgba(60, 64, 67, 0.3) 0px 0px 4px 0px;
  transition: all .5s ease-out;
}
.close_btn:hover {
  box-shadow: rgba(60, 64, 67, 0.7) 0px 0px 10px 0px;
  background-color: #f3f6f8;
}

@media only screen and (max-width:1300px) {
  .art_grid_text {
    font-size: 10px;
    letter-spacing: 0.05em;
  }
}

@media only screen and (max-width:768px) {
	.art_item + .art_item {
		margin-top: 60px;
	}
	.art_item_title {
		font-size: 20px;
		letter-spacing: 0.1em;
		padding: 12px 0;
	}
	.art_item_title_s {
		display: block;
		font-size: 12px;
	}
	.art_item_lead {
		margin-top: 30px;
		font-size: 16px;
		line-height: 1.8;
	}
  .art_item_img_top {
    margin-top: 30px;
  }
	.art_item_wrap {
		margin-top: 40px;
		flex-direction: column;
		row-gap: 20px;
	}
	.art_item_wrap.jcc {
		justify-content: center;
		align-items: center;
		column-gap: 40px;
	}
	.art_item_img01 {
		width: 100%;
	}
	.art_item_img02 {
		width: 100%;
    max-width: 500px;
    margin-inline: auto;
    text-align: center;
	}
	.art_grid_wrap {
		margin-top: 40px;
		background: url(../imgs/art_item_img08.png) repeat center center / contain;
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		padding: 40px 20px;
		row-gap: 20px;
	}
  .art_grid_item {
    max-width: 400px;
    margin-inline: auto;
  }
	.art_grid_text {
		text-align: left;
    font-size: 12px;
	}
	.art_item_img09 {
		width: 100%;
	}
	.art_item_img10 {
		width: 70%;
		margin-inline: auto;
	}
	.art_item_img11 {
		width: 80%;
		margin-inline: auto;
	}
	.art_item_img12 {
		width: 100%;
	}
	.art_item_cap {
		text-align: left;
		font-size: 13px;
		letter-spacing: 0.1em;
		margin-top: 40px;
	}
  .profile_area {
    margin-top: 40px;
    padding-block: 20px;
  }
  .profile_title {
    font-size: 18px;
  }
  .profile_title span {
    font-size: 14px;
  }
  .profile_name {
    margin-top: 10px;
    font-size: 46px;
  }
  .profile_name span {
    font-size: 18px;
  }
  .profile_text {
    margin-top: 16px;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 2;
  }
  .close_btn {
    margin-top: 40px;
    max-width: 150px;
    font-size: 20px;
    padding-block: 14px;
  }
}</pre></body></html>