@charset "UTF-8";
:root {
  --inner:700px;
  --wrap:990px;
  --box:1080px;
  --container:1280px;
  --maxWidth:1440px;
  --spHeaderHeight:50px;
  --pcHeaderHeight:80px;
  --baseColor:#ffffff;
  --mainColor:#450369;
  --subColor:#EAE8FA;
  --accentColor:#FF55DD;
  --whiteColor:#ffffff;
  --blackColor:#262626;
  --grayColor:#707070;
  --darkGrayColor:#383546;
  --beigeColor:#eadfcd;
  --beigeLightColor:#F7F6F3;
  --textColor:var(--blackColor);
  --textHoverColor:var(--mainColor);
  --blogPurple:#BE9AD1;
  --blogOrange:#D29826;
  --blogYellow:#BEC23F;
  --blogBlue:#9BC4C4;
  --blogRed:#CB4042;
  --blogPurpleBg:#F9F5FC;
  --blogOrangeBg:#FBF5E9;
  --blogYellowBg:#F9F9EB;
  --blogBlueBg:#F7F9F9;
  --blogRedBg:#FCF6F5;
  --animationSpeed:0.4s;
  --ioAnimationSpeed:1s;
  --spMargin:100px;
  --pcMargin:130px;
  --fontSerif:"Shippori Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
  --fontGothic:"Noto Sans JP","游ゴシック体",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
  --fontFamily:var(--fontGothic);
  --fontTitle:var(--fontSerif);
  --fontEn:"Lusitana", serif;
}

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

	syamusyo

========================================================================== */
/*--------------------------------
	alphabet
--------------------------------*/
.number_cnt .number:before {
  content: counter(number, upper-alpha);
}
/*--------------------------------
	floorguide
--------------------------------*/
#floorguide .map_hover .map_cnt {
  position: relative;
}
#floorguide .map_hover .map_cnt ol {
  width: 100%;
  height: 100%;
  font-family: var(--fontTitle);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
#floorguide .map_hover .map_cnt ol li {
  position: absolute;
  z-index: 2;
}
#floorguide .map_hover .map_cnt ol li a {
  display: flex;
  align-items: center;
  gap: 0.5em;
}
#floorguide .map_hover .map_cnt ol li a span {
  display: none;
  opacity: 1;
}
#floorguide .map_hover .map_cnt ol li a:after {
  position: absolute;
}
#floorguide .map_hover .map_cnt ol li:nth-child(1) a:after {
  content: counter(number, upper-alpha);
}
#floorguide .map_hover .list_cnt.column {
  gap: 0 1em;
  align-items: end;
  align-self: start;
}
#floorguide .map_hover .list_cnt li {
  counter-increment: listNumber;
}
#floorguide .map_hover .list_cnt li, #floorguide .map_hover .list_cnt li a, #floorguide .map_hover .list_cnt li > span {
  height: 101%;
}
#floorguide .map_hover .list_cnt li a, #floorguide .map_hover .list_cnt li > span {
  display: flex;
  align-items: center;
  gap: 0.5em;
  color: var(--blackColor);
  font-family: var(--fontTitle);
  font-size: 1.6rem;
  font-weight: 500;
  padding: 1em 0.5em;
  border-bottom: solid 1px var(--blackColor);
}
#floorguide .map_hover .list_cnt li a:before, #floorguide .map_hover .list_cnt li > span:before {
  content: counter(listNumber, upper-alpha);
}
#floorguide .map_hover .list_cnt li a > span, #floorguide .map_hover .list_cnt li > span > span {
  display: block;
  width: 100%;
}
#floorguide .map_hover .list_cnt li a > span span, #floorguide .map_hover .list_cnt li > span > span span {
  font-size: 90%;
}
#floorguide .map_hover .list_cnt li a[data-arrow*=doglegged], #floorguide .map_hover .list_cnt li > span[data-arrow*=doglegged] {
  --arrowDogleggedWidth:0.8em;
}
#floorguide .map_hover .list_cnt li a[href*="#bridal"], #floorguide .map_hover .list_cnt li > span[href*="#bridal"] {
  line-height: 1.2;
}
@media print, screen and (max-width: 812px) {
  #floorguide .map_hover .map_cnt ul li:nth-child(n+2) {
    display: none;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(1) {
    top: 4%;
    left: 71%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(1) a:after {
    top: -70%;
    left: -550%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(2) {
    top: 18%;
    left: 50%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(3) {
    top: 34%;
    left: 50%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(4) {
    top: 61%;
    left: 71%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(5) {
    top: 66%;
    left: 71%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(6) {
    top: 71%;
    left: 71%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(7) {
    bottom: 12%;
    left: 71%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(8) {
    bottom: 15%;
    left: 30%;
  }
  #floorguide .map_hover .list_cnt li a, #floorguide .map_hover .list_cnt li > span {
    line-height: 1.4;
    font-size: 1.5rem;
    text-align: left;
    padding-right: 0;
    padding-left: 0;
  }
  #floorguide .map_hover .list_cnt li a > span, #floorguide .map_hover .list_cnt li > span > span {
    padding-right: calc(var(--arrowDogleggedWidth) / 2 + 0.5em + var(--arrowDogleggedHoverMove));
  }
}
@media print, screen and (min-width: 813px) {
  #floorguide .map_hover.column {
    gap: 6%;
  }
  #floorguide .map_hover .map_cnt ul {
    position: relative;
  }
  #floorguide .map_hover .map_cnt ul li {
    transition: opacity var(--animationSpeed);
    will-change: opacity;
  }
  #floorguide .map_hover .map_cnt ul li:nth-child(n+2) {
    opacity: 0;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
  #floorguide .map_hover .map_cnt ul li.is-active {
    opacity: 1;
  }
  #floorguide .map_hover .map_cnt ol li a:before, #floorguide .map_hover .map_cnt ol li a:after {
    transition: color var(--animationSpeed), background-color var(--animationSpeed);
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(1) {
    top: 5%;
    left: 72%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(1) a:after {
    top: -105%;
    left: -700%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(2) {
    top: 19%;
    left: 50%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(3) {
    top: 35%;
    left: 50%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(4) {
    top: 62.3%;
    left: 72%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(5) {
    top: 66.5%;
    left: 72%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(6) {
    top: 70.7%;
    left: 72%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(7) {
    bottom: 12%;
    left: 72%;
  }
  #floorguide .map_hover .map_cnt ol li:nth-child(8) {
    bottom: 15%;
    left: 32.3%;
  }
  #floorguide .map_hover .map_cnt ol > li:is(:nth-child(4), :nth-child(5), :nth-child(6)) > *:before {
    transition: background-color var(--animationSpeed);
  }
  #floorguide .map_hover .map_cnt ol:has(> li:is(:nth-child(4), :nth-child(5), :nth-child(6)).is-hover) > li:is(:nth-child(4), :nth-child(5), :nth-child(6)):not(.is-hover) > *:before {
    background-color: #ac8ebc;
  }
  #floorguide .map_hover .list_cnt li > span {
    transition: color var(--animationSpeed), background-color var(--animationSpeed);
  }
  #floorguide .map_hover .list_cnt li > *:hover, #floorguide .map_hover .list_cnt li.is-hover > * {
    color: var(--whiteColor);
    background-color: var(--mainColor);
  }
  #floorguide .map_hover .list_cnt li > *:hover span:after, #floorguide .map_hover .list_cnt li.is-hover > * span:after {
    background-color: var(--whiteColor);
  }
}

/*--------------------------------
	restaurant
--------------------------------*/
#restaurant > div section:last-child {
  margin-bottom: 0;
}
#restaurant > div section figure figcaption {
  font-size: 1.1rem;
  margin-top: 0.2em;
}
#restaurant > div section dl {
  margin-bottom: 0.5em;
}
#restaurant > div section dl > div {
  display: flex;
  gap: 1em;
}
#restaurant > div section dl > div > dt {
  flex-shrink: 0;
}
@media print, screen and (max-width: 812px) {
  #restaurant > div {
    margin-top: 2.5em;
  }
  #restaurant > div section {
    margin-bottom: calc(var(--spMargin) / 1.3);
  }
  #restaurant > div section.column {
    row-gap: 0.7em;
  }
  #restaurant > div section .tt_main {
    letter-spacing: 0.05em;
  }
  #restaurant > div section .link_btn > a {
    width: 100%;
    letter-spacing: 0.05em;
  }
}
@media print, screen and (min-width: 813px) {
  #restaurant > div {
    margin-top: 3.2em;
  }
  #restaurant > div section.column {
    gap: 4%;
  }
  #restaurant > div section figure figcaption {
    font-size: min(1.2rem, 12px);
  }
}

/*--------------------------------
	collection
--------------------------------*/
#collection .gallery {
  margin-top: 2.5em;
}
#collection .gallery li a {
  color: var(--blackColor);
}
#collection .gallery li a figure figcaption {
  margin-top: 0.5em;
}
#collection .gallery li a figure figcaption .tt_main, #collection .gallery li a figure figcaption p {
  margin-bottom: 0;
}
#collection .gallery li a[data-fancybox] {
  display: block;
  position: relative;
}
#collection .gallery li a[data-fancybox] i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.8em;
  height: 2.8em;
  border-radius: 50%;
  background-color: var(--whiteColor);
  position: absolute;
  top: 0.5em;
  right: 0.5em;
  z-index: 1;
}
#collection .gallery li a[data-fancybox] i svg {
  width: 50%;
  height: 50%;
}
@media print, screen and (min-width: 813px) {
  #collection .gallery {
    margin-top: 4em;
  }
  #collection .gallery.column {
    gap: 3em;
  }
  #collection .gallery li a figure picture {
    overflow: hidden;
  }
  #collection .gallery li a figure picture img {
    transition: transform var(--animationSpeed), filter var(--animationSpeed);
    backface-visibility: hidden;
    will-change: opacity, transform;
  }
  #collection .gallery li a[data-fancybox] i {
    transition: background-color var(--animationSpeed);
  }
  #collection .gallery li a:hover picture img {
    transform: scale(1.05);
    filter: brightness(105%);
  }
  #collection .gallery li a:hover[data-fancybox] i {
    background-color: var(--blackColor);
  }
  #collection .gallery li a:hover[data-fancybox] i svg {
    fill: var(--whiteColor);
  }
}

/*--------------------------------
	venue
--------------------------------*/
#venue .banner_cnt {
  margin-top: 2.4em;
}

/*# sourceMappingURL=style.css.map */
