/*  l-particulars
--------------------------------------------------*/
.l-particulars {
  padding-block: 15.0rem 15.0rem;
  background: var(--color-medium);
}
:root .l-particulars .lato,
:root .l-particulars .lato * {
  font-family: "Lato", sans-serif;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 1cap;
  font-style: normal;
}
:root .l-particulars .notoSerifJP,
:root .l-particulars .notoSerifJP * {
  font-family: YakuHanMP, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  font-weight: 400;
  font-style: normal;
}
.particulars-contents {
  position: relative;
  width: 100%;
  display: block;
  background-color: var(--white);
}
.particulars-contents__container {
  position: relative;
  width: 100%;
  height: 100%;
}
.particulars-contents__detail {
  width: calc(650 / 1560 * 100%);
  padding: calc(80 / 1560 * 100%);
}
.particulars-contents__detail__box {
  position: relative;
  width: 100%;
}
.particulars-contents__detail__type {
  font-size: 3.2rem;
  letter-spacing: .05em;
  color: var(--color-medium);
  padding-bottom: 4.0rem;
  margin-bottom: 4.0rem;
  border-bottom: solid 1px currentColor;
}
.particulars-contents__detail__type span {
  font-size: calc(50 / 25 * 1em);
  letter-spacing: .05em !important;
  padding-right: .2em;
}
.particulars-contents__detail__info {
  position: relative;
  width: 100%;
}
.particulars-contents__detail__info__layout {
  font-size: 2.8rem;
  line-height: 1.35 !important;
  letter-spacing: .05em;
  margin-bottom: 4.0rem;
}
.particulars-contents__detail__info__layout span {
  font-size: calc(36 / 20 * 1em);
  letter-spacing: .05em !important;
  padding-right: .1em;
}
.particulars-contents__detail__info__spec {
  position: relative;
  width: 100%;
}
.particulars-contents__detail__info__spec__floor {
  gap: 1.5rem 1.6rem;
}
.particulars-contents__detail__info__spec__floor__heading {
  width: fit-content;
  font-size: 1.8rem;
  border: solid 1px #9f9d9c;
  padding: .7rem 1.6rem .9rem;
}
.particulars-contents__detail__info__spec__floor__room {
  width: fit-content;
  font-size: 3.2rem;
}
.particulars-contents__detail__info__spec__floor__room .num {
  font-size: calc(40 / 26 * 1em);
  letter-spacing: .05em !important;
}
.particulars-contents__detail__info__spec__floor__room .tsubo {
  font-size: calc(14 / 26 * 1em);
  letter-spacing: .05em;
}
.particulars-contents__detail__info__spec__note {
  font-size: 1.8rem;
  line-height: 1.25;
  letter-spacing: .05em;
  margin-top: 1.8rem;
}
.particulars-contents__detail__info__spec__other {
  margin-top: 3.0rem;
  gap: 2.0rem;
}
.particulars-contents__detail__info__spec__other__item {
  font-size: 1.8rem;
  letter-spacing: .05em;
}
.particulars-contents__detail__info__spec__other__item .heading {
  font-size: calc(13 / 13 * 1em);
  letter-spacing: .05em;
}
.particulars-contents__detail__info__spec__other__item .colon {
  font-size: calc(13 / 13 * 1em);
  letter-spacing: .05em;
  padding-inline: .5em;
}
.particulars-contents__detail__info__spec__other__item .num {
  font-size: calc(20 / 13 * 1em);
  letter-spacing: .05em;
}
.particulars-contents__detail__info__spec__other__item .tsubo {
  font-size: calc(13 / 13 * 1em);
  letter-spacing: .05em;
}
.particulars-contents__detail__info__point {
  position: relative;
  width: 100%;
  margin-top: 4.5rem;
  gap: .8rem;
}
.particulars-contents__detail__info__point__item {
  width: fit-content;
  font-size: 1.6rem;
  color: var(--white);
  font-weight: 500 !important;
  padding: .8rem 1.2rem 1.1rem;
  background-color: #aaa17c;
}
.particulars-contents__madori {
  width: calc(910 / 1560 * 100%);
  padding-block: calc(80 / 1560 * 100%);
  background-color: var(--background-base);
}
.particulars-contents__madori__figure {
  width: min(95%,calc(var(--madroiWidth,760) / 760 * 100%));
}
.particulars-contents__madori__legend {
  position: relative;
  width: 90%;
  font-size: 0;
  color: var(--black);
  text-align: center;
  margin-top: 3.0rem;
  margin-inline: auto;
}
.particulars-contents__madori__legend__mark {
  font-size: max(1.1rem,10px);
  letter-spacing: .05em;
}
.particulars-contents__madori__legend__mark span{
  display: inline-block;
  letter-spacing: .1em;
  margin: .6rem .8rem;
}
.particulars-contents__madori__legend__mark i{
  display: inline-block;
  margin-right: .8rem;
  vertical-align: -.1em;
  width: max(2.6rem,24px);
}
.particulars-contents__madori__legend__mark img{
  vertical-align: -.08em;
}
.particulars-contents__madori__legend__desc {
  font-size: max(1.1rem,10px);
  letter-spacing: .05em;
  line-height: 1;
  gap: 1.0rem;
  margin-top: 1.0rem;
}
.particulars-btn {
  max-width: 820px;
  margin-inline: auto;
  gap: 2.0rem 4.0rem;
  margin-top: 8.0rem;
}
.particulars-btn__item {
  position: relative;
  width: min(100%,380px);
}
:root .particulars-btn__item__link[data-name="back"] {
  position: relative;
  width: 100%;
  height: 7.0rem;
  font-size: 2.0rem;
  letter-spacing: .1em;
  line-height: 1.45;
  text-align: center;
  padding-bottom: .1em;
  background-color: #494949;
  color: var(--white);
  overflow: clip;
}
:root .particulars-btn__item__link[data-name="print"] {
  position: relative;
  width: 100%;
  height: 7.0rem;
  font-size: 2.0rem;
  letter-spacing: .1em;
  line-height: 1.45;
  text-align: center;
  padding-bottom: .1em;
  background-color: rgba(var(--white-rgb), 0.8);
  color: var(--base-color);
  overflow: clip;
}
:root .particulars-btn__item__link[data-name="back"]::after {
  content: "←";
  position: absolute;
  left: 2.0rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: inherit;
  font-family: inherit;
}
:root .particulars-btn__item__link[data-name="print"]::after {
  content: "→";
  position: absolute;
  right: 2.0rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: inherit;
  font-family: inherit;
}
@keyframes particulars-arrow-left {
  0%{left: 2.0rem;opacity: 1;}
  33%{left: -1.0rem;opacity: 0;}
  66%{left: 4.0rem;opacity: 0;}
  100%{left: 2.0rem;opacity: 1;}
}
@keyframes particulars-arrow-right {
  0%{right: 2.0rem;opacity: 1;}
  33%{right: -1.0rem;opacity: 0;}
  66%{right: 4.0rem;opacity: 0;}
  100%{right: 2.0rem;opacity: 1;}
}
@media (any-hover: hover){
  :root .particulars-btn__item__link {
    transition: opacity 0.3s ease;
  }
  :root .particulars-btn__item__link:hover {
    opacity: .8;
  }
  :root .particulars-btn__item__link[data-name="back"]:hover::after {
    animation: particulars-arrow-left .8s linear both;
  }
  :root .particulars-btn__item__link[data-name="print"]:hover::after {
    animation: particulars-arrow-right .8s linear both;
  }
}
@media screen and (max-width: 767px){
  .l-particulars {
    padding-block: 12.0rem 7.0rem;
  }
  .particulars-contents__detail {
    width: 100%;
    padding: 3.5rem 2.0rem 4.0rem;
  }
  .particulars-contents__detail__type {
    font-size: 1.8rem;
    padding-bottom: 2.2rem;
    margin-bottom: 2.6rem;
  }
  .particulars-contents__detail__info__layout {
    font-size: 1.8rem;
    margin-bottom: 1.5rem;
  }
  .particulars-contents__detail__info__layout span {
    font-size: 1.6em;
    padding-right: 0;
  }
  .particulars-contents__detail__info__spec__floor {
    gap: 1.0rem 1.2rem;
  }
  .particulars-contents__detail__info__spec__floor__heading {
    font-size: 1.2rem;
    padding: .5rem .7rem .7rem;
  }
  .particulars-contents__detail__info__spec__floor__room {
    font-size: 2.0rem;
  }
  .particulars-contents__detail__info__spec__note {
    font-size: 1.1rem;
    margin-top: 1.0rem;
  }
  .particulars-contents__detail__info__spec__other {
    margin-top: 1.3rem;
    gap: 1.0rem;
  }
  .particulars-contents__detail__info__spec__other__item {
    font-size: 1.1rem;
  }
  .particulars-contents__detail__info__spec__other__item .colon {
    padding-inline: .3em;
  }
  .particulars-contents__detail__info__point {
    margin-top: 2.0rem;
    gap: .5rem;
  }
  .particulars-contents__detail__info__point__item {
    font-size: 1.0rem;
    padding: .5rem .8rem .6rem;
  }
  .particulars-contents__madori {
    width: 100%;
    padding: 3.0rem 0 5.0rem;
  }
  .particulars-contents__madori__legend {
    margin-top: 2.0rem;
  }
  .particulars-contents__madori__legend__mark {
    font-size: 1.0rem;
    line-height: 1.5;
    letter-spacing: .03em;
  }
  .particulars-contents__madori__legend__mark + .particulars-contents__madori__legend__mark {
    margin-top: .5rem;
  }
  .particulars-contents__madori__legend__mark span{
    letter-spacing: .03em;
    margin: 0 .8rem 0 0;
  }
  .particulars-contents__madori__legend__mark i{
    margin-right: .5rem;
    width: 2.2rem;
  }
  .particulars-contents__madori__legend__mark img{
    vertical-align: -.03em;
  }
  .particulars-contents__madori__legend__desc {
    font-size: 1.0rem;
    line-height: 1;
    gap: .8rem .8rem;
	}
  .particulars-btn {
    width: calc(280 / 380 * 100%);
    margin-top: 4.0rem;
  }
  :root .particulars-btn__item__link {
    height: 5.0rem;
    font-size: 1.6rem;
  }
}


@media print{
  header,
  header::before,
  #nav-contactBtns,
  .menu-trigger,
  .contact,
  footer,
  .l-commonlower,
  .particulars-btn,
  #caption {
    display: none !important;
  }
}
