@media only screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}

@media print, screen and (min-width: 769px) {
  .sp {
    display: none;
  }
}

.designSect {
  color: #ffffff;
  position: relative;
  z-index: 1;
  margin: 0 auto;
}

@media print, screen and (min-width: 769px) {
  .designSect {
    padding-bottom: 128px;
    max-width: 1240px;
  }
}

@media only screen and (max-width: 768px) {
  .designSect {
    padding: 0 calc(32 / 390 * 100vw) calc(61 / 390 * 100vw);
  }
}

.designSect:before {
  background: #fff;
  content: '';
  height: 100%;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100vw;
  z-index: -1;
}

@media print, screen and (min-width: 769px) {
  .designSect:before {
    height: calc(100% - 199px);
    top: 199px;
  }
}

@media only screen and (max-width: 768px) {
  .designSect:before {
    height: calc(100% - (99 / 390 * 100vw));
    top: calc(99 / 390 * 100vw);
  }
}

.designSect__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media print, screen and (min-width: 769px) {
  .designSect__head {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

@media only screen and (max-width: 768px) {
  .designSect__head {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.designSect__head .heading .en {
  color: #a48b78;
}

.designSect__cont {
  margin: 0 auto;
}

@media print, screen and (min-width: 769px) {
  .designSect__cont {
    margin-top: 88px;
    max-width: 1074px;
  }
}

@media only screen and (max-width: 768px) {
  .designSect__cont {
    margin-top: calc(66 / 390 * 100vw);
  }
}

@media print, screen and (min-width: 769px) {
  .designSect__cont .interviewCardGroup {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 48px;
  }
}

@media print, screen and (min-width: 769px) {
  .designSect__cont .interviewCardGroup .interviewCard:first-child {
    max-width: 620px;
    width: 100%;
    margin: 0 100px;
  }
}

@media print, screen and (min-width: 769px) {
  .designSect__bottom {
    margin-top: 88px;
  }
}

@media only screen and (max-width: 768px) {
  .designSect__bottom {
    margin-top: calc(56 / 390 * 100vw);
  }
}

.designSect__visual {
  -webkit-box-shadow: 0 12px 24px 0 rgba(162, 148, 134, 0.3);
          box-shadow: 0 12px 24px 0 rgba(162, 148, 134, 0.3);
}

@media print, screen and (min-width: 769px) {
  .designSect__visual {
    margin-right: -120px;
    width: 793px;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1440px) {
  .designSect__visual {
    margin-right: calc(50% - 50vw);
    width: calc(793 / 1440 * 100vw);
  }
}

@media only screen and (max-width: 768px) {
  .designSect__visual {
    -ms-flex-item-align: end;
        align-self: flex-end;
    margin: 0 calc(50% - 50vw) 0 0;
    width: calc(358 / 390 * 100vw);
  }
}

.designSect__visual .photo__image {
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .designSect__visual + .interviewHeading {
    margin-top: calc(56 / 390 * 100vw);
  }
}

@media only screen and (max-width: 768px) {
  .designSect__visual + .interviewHeading .ja {
    letter-spacing: .2em;
  }
}

.interviewAnchor {
  margin: 0 auto;
  max-width: 1240px;
  position: relative;
  z-index: 1;
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor {
    padding: 144px 20px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewAnchor {
    padding: calc(88 / 390 * 100vw) 0;
  }
}

.interviewAnchor:before {
  background-color: #D9D5D2;
  content: '';
  left: 50%;
  position: absolute;
  top: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100vw;
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor:before {
    height: calc(100% + calc(160 / 1440 * 100vw));
  }
}

@media only screen and (max-width: 768px) {
  .interviewAnchor:before {
    height: calc(100% + calc(88 / 390 * 100vw));
  }
}

.interviewAnchor__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__heading {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 24px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewAnchor__heading {
    gap: calc(24 / 390 * 100vw);
    text-align: center;
  }
}

.interviewAnchor__heading .en {
  color: #A48B78;
  font-family: "Cormorant Infant", serif;
  line-height: .7;
  letter-spacing: .4em;
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__heading .en {
    font-size: 18px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewAnchor__heading .en {
    font-size: calc(16 / 390 * 100vw);
  }
}

.interviewAnchor__heading .ja {
  font-family: "YakuHanMP", "Zen Old Mincho", "Noto Serif", "Noto Serif", serif;
  letter-spacing: .05em;
  line-height: 1.75;
}

.interviewAnchor__heading .ja:before {
  content: '';
  display: block;
  height: 0;
  margin-top: calc((1 - 1.75) * .5em);
  width: 0;
}

.interviewAnchor__heading .ja:after {
  content: '';
  display: block;
  height: 0;
  margin-bottom: calc((1 - 1.75) * .5em);
  width: 0;
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__heading .ja {
    font-size: 18px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewAnchor__heading .ja {
    font-size: calc(16 / 390 * 100vw);
  }
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__heading + .plantingSect__visual {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewAnchor__heading + .plantingSect__visual {
    margin-top: calc(56 / 390 * 100vw);
  }
}

.interviewAnchor__cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__cont {
    margin-top: 48px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewAnchor__cont {
    margin-top: calc(36 / 390 * 100vw);
    padding: 0 calc(32 / 390 * 100vw);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: calc(20 / 390 * 100vw);
  }
}

.interviewAnchor__btn {
  position: relative;
  overflow: hidden;
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__btn {
    width: 290px;
  }
}

.interviewAnchor__btn:before {
  background-color: rgba(0, 0, 0, 0.5);
  content: '';
  height: 100%;
  left: 50%;
  opacity: 1;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  -webkit-transition: opacity 0.6s ease;
  transition: opacity 0.6s ease;
  z-index: 1;
}

.interviewAnchor__btn:after {
  position: absolute;
  content: '';
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  border: 1px solid #ffffff;
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__btn:hover:before {
    opacity: 0;
  }
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__btn:hover .interviewAnchor__bg {
    -webkit-transform: scale(1.02);
            transform: scale(1.02);
  }
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__btn:hover .interviewAnchor__icon {
    -webkit-transform: translateY(3px);
            transform: translateY(3px);
  }
}

.interviewAnchor__btn--location .interviewAnchor__inner .interviewHeading .ja {
  letter-spacing: .2em;
}

.interviewAnchor__bg {
  -webkit-transition: -webkit-transform 0.6s ease;
  transition: -webkit-transform 0.6s ease;
  transition: transform 0.6s ease;
  transition: transform 0.6s ease, -webkit-transform 0.6s ease;
  -webkit-transform: scale(1);
          transform: scale(1);
}

.interviewAnchor__inner {
  color: #ffffff;
  z-index: 2;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__inner {
    gap: 20px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewAnchor__inner {
    gap: calc(20 / 390 * 100vw);
  }
}

.interviewAnchor__inner .interviewHeading {
  text-align: center;
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__inner .interviewHeading {
    margin-top: 16px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewAnchor__inner .interviewHeading {
    margin-top: calc(16 / 390 * 100vw);
  }
}

.interviewAnchor__inner .interviewHeading .en {
  letter-spacing: .3em;
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__inner .interviewHeading .en {
    font-size: 20px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewAnchor__inner .interviewHeading .en {
    font-size: calc(20 / 390 * 100vw);
  }
}

.interviewAnchor__inner .interviewHeading .ja {
  letter-spacing: 0;
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__inner .interviewHeading .ja {
    font-size: 26px;
    margin-top: 12px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewAnchor__inner .interviewHeading .ja {
    font-size: calc(26 / 390 * 100vw);
    margin-top: calc(18 / 390 * 100vw);
  }
}

.interviewAnchor__inner .interviewHeading .txt {
  letter-spacing: .2em;
}

@media print, screen and (min-width: 769px) {
  .interviewAnchor__inner .interviewHeading .txt {
    font-size: 12px;
    margin-top: 10px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewAnchor__inner .interviewHeading .txt {
    font-size: calc(12 / 390 * 100vw);
    margin-top: calc(10 / 390 * 100vw);
  }
}

.interviewAnchor__icon {
  -webkit-transition: -webkit-transform 0.6s ease;
  transition: -webkit-transform 0.6s ease;
  transition: transform 0.6s ease;
  transition: transform 0.6s ease, -webkit-transform 0.6s ease;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.interviewCardGroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media only screen and (max-width: 768px) {
  .interviewCardGroup {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: calc(40 / 390 * 100vw);
  }
}

.interviewCardGroup .interviewCard {
  font-family: "Zen Old Mincho", "Noto Serif", "Noto Serif", serif;
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup .interviewCard {
    width: 326px;
  }
}

.interviewCardGroup .interviewCard__rank {
  margin: 0 auto;
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup .interviewCard__rank {
    width: 100px;
    padding-bottom: 10px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewCardGroup .interviewCard__rank {
    width: calc(100 / 390 * 100vw);
    padding-bottom: calc(12 / 390 * 100vw);
  }
}

.interviewCardGroup .interviewCard__ttl {
  color: #333;
  text-align: center;
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup .interviewCard__ttl {
    font-size: 20px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewCardGroup .interviewCard__ttl {
    font-size: calc(16 / 390 * 100vw);
  }
}

.interviewCardGroup .interviewCard__ttl .small {
  letter-spacing: 0;
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup .interviewCard__ttl .small {
    display: inline-block;
    font-size: 12px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewCardGroup .interviewCard__ttl .small {
    display: block;
    font-size: calc(12 / 390 * 100vw);
  }
}

.interviewCardGroup .interviewCard__ttl .caption {
  letter-spacing: 0;
  display: block;
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup .interviewCard__visual, .interviewCardGroup .interviewCard__figure {
    margin-top: 24px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewCardGroup .interviewCard__visual, .interviewCardGroup .interviewCard__figure {
    margin-top: calc(24 / 390 * 100vw);
  }
}

.interviewCardGroup .interviewCard__link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: -webkit-gradient(linear, left top, right top, from(#669CBA), to(#325669));
  background: linear-gradient(to right, #669CBA, #325669);
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  overflow: hidden;
  position: relative;
  -webkit-transition: opacity .3s, -webkit-transform .3s;
  transition: opacity .3s, -webkit-transform .3s;
  transition: opacity .3s, transform .3s;
  transition: opacity .3s, transform .3s, -webkit-transform .3s;
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup .interviewCard__link {
    width: 100%;
    height: 64px;
    font-size: 16px;
    margin-top: 24px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewCardGroup .interviewCard__link {
    height: calc(64 / 390 * 100vw);
    margin-top: calc(24 / 390 * 100vw);
    font-size: calc(16 / 390 * 100vw);
  }
}

.interviewCardGroup .interviewCard__link:before {
  -webkit-animation: shiny 4.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;
          animation: shiny 4.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(20%, rgba(255, 255, 255, 0.15)), color-stop(50%, rgba(255, 255, 255, 0.5)), color-stop(80%, rgba(255, 255, 255, 0.15)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.15) 20%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0.15) 80%, rgba(255, 255, 255, 0) 100%);
  bottom: 0;
  content: '';
  display: block;
  left: -150%;
  margin: auto;
  padding-bottom: 60%;
  position: absolute;
  top: 0;
  -webkit-transform: skewX(-25deg);
          transform: skewX(-25deg);
  width: 60%;
  z-index: 2;
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup .interviewCard__link:hover {
    opacity: .8;
    -webkit-transform: translate(0, 5%);
            transform: translate(0, 5%);
  }
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup .interviewCard__link:hover .interviewCard__icon {
    -webkit-transform: translate(6px, -50%);
            transform: translate(6px, -50%);
  }
}

.interviewCardGroup .interviewCard__icon {
  position: absolute;
  top: 50%;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  aspect-ratio: 10 / 8;
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup .interviewCard__icon {
    width: 10px;
    right: 28px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewCardGroup .interviewCard__icon {
    width: calc(10 / 390 * 100vw);
    right: calc(28 / 390 * 100vw);
  }
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup--roomplan {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    row-gap: 45px;
  }
}

.interviewCardGroup--roomplan .interviewCard__ttl {
  color: #ffffff;
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup--roomplan .interviewCard:first-child .interviewCard__ttl, .interviewCardGroup--roomplan .interviewCard:nth-child(2) .interviewCard__ttl {
    height: 78px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup--roomplan .interviewCard:nth-child(3) {
    width: 100%;
  }
}

@media only screen and (max-width: 768px) {
  .interviewCardGroup--roomplan .interviewCard:nth-child(3) .interviewCard__visual {
    margin-right: calc(-32 / 390 * 100vw);
  }
}

@media only screen and (max-width: 768px) {
  .interviewCardGroup--roomplan .interviewCard:nth-child(3) .interviewCard__visual .touchFigure {
    height: calc(218 / 390 * 100vw);
  }
}

@media only screen and (max-width: 768px) {
  .interviewCardGroup--roomplan .interviewCard:nth-child(3) .interviewCard__visual .touchFigure__spIcon .swipeSVG {
    aspect-ratio: 1 / 1;
    -webkit-transform: translate(3px, 3px);
            transform: translate(3px, 3px);
    width: calc(46 / 390 * 100vw);
  }
}

.interviewCardGroup--roomplan .interviewCard:nth-child(3) .interviewCard__visual .touchFigure .capFrame {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  bottom: 0;
  right: 0;
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup--roomplan .interviewCard:nth-child(3) .interviewCard__link {
    margin: 24px auto 0;
    width: 326px;
  }
}

@media print, screen and (min-width: 769px) {
  .interviewCardGroup--design .interviewCard__ttl, .interviewCardGroup--leasehold .interviewCard__ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0;
    height: 68px;
  }
}

.interviewCardGroup--leasehold .interviewCard__ttl {
  color: #ffffff;
}

.interviewHeading {
  font-family: "Zen Old Mincho", "Noto Serif", "Noto Serif", serif;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.interviewHeading .en {
  line-height: 1;
}

@media print, screen and (min-width: 769px) {
  .interviewHeading .en {
    font-size: 20px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewHeading .en {
    font-size: calc(12 / 390 * 100vw);
  }
}

.interviewHeading .ja {
  letter-spacing: .5em;
  line-height: 1;
}

@media print, screen and (min-width: 769px) {
  .interviewHeading .ja {
    font-size: 40px;
    margin-top: 30px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewHeading .ja {
    font-size: calc(32 / 390 * 100vw);
    margin-top: calc(22 / 390 * 100vw);
  }
}

@media print, screen and (min-width: 769px) {
  .interviewHeading .txt {
    font-size: 20px;
    margin-top: 22px;
  }
}

@media only screen and (max-width: 768px) {
  .interviewHeading .txt {
    font-size: calc(12 / 390 * 100vw);
    margin-top: calc(16 / 390 * 100vw);
  }
}

.interviewHeading--location, .interviewHeading--design {
  color: #669CBA;
}

.leaseholdSect {
  color: #ffffff;
  position: relative;
  z-index: 1;
  margin: 0 auto;
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect {
    padding-bottom: 128px;
    max-width: 1240px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect {
    padding: 0 calc(32 / 390 * 100vw) calc(61 / 390 * 100vw);
  }
}

.leaseholdSect:before {
  background: -webkit-gradient(linear, left top, left bottom, from(#003872), to(#9a84a4));
  background: linear-gradient(to bottom, #003872 0%, #9a84a4 100%);
  content: '';
  height: 100%;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100vw;
  z-index: -1;
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect:before {
    height: calc(100% - 162px);
    top: 162px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect:before {
    height: calc(100% - calc(99 / 390 * 100vw));
    top: calc(99 / 390 * 100vw);
  }
}

.leaseholdSect__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__head {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__head {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.leaseholdSect__head .heading .en {
  color: #a48b78;
}

.leaseholdSect__cont {
  margin: 0 auto;
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__cont {
    margin-top: 88px;
    max-width: 1074px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__cont {
    margin-top: calc(66 / 390 * 100vw);
  }
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__cont .interviewCardGroup {
    -webkit-column-gap: 48px;
       -moz-column-gap: 48px;
            column-gap: 48px;
    display: grid;
    grid-template-columns: repeat(2, -webkit-fit-content);
    grid-template-columns: repeat(2, fit-content);
    grid-template-rows: -webkit-fit-content 1fr;
    grid-template-rows: fit-content 1fr;
    margin-inline: auto;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__cont .interviewCardGroup .interviewCard .interviewCard__ttl {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__cont .interviewCardGroup .interviewCard:first-child {
    grid-column: 1 / 2;
    grid-row: 1 / 3;
    width: 540px;
  }
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__cont .interviewCardGroup .interviewCard:nth-child(2) {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__cont .interviewCardGroup .interviewCard:nth-child(3) {
    align-self: end;
    grid-column: 2 / 3;
    grid-row: 2 / 3;
  }
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__cont .pickupBox + .interviewCardGroup {
    margin-top: 88px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__cont .pickupBox + .interviewCardGroup {
    margin-top: calc(56 / 390 * 100vw);
  }
}

.leaseholdSect__bottom {
  margin: 0 auto;
  background: -webkit-gradient(linear, left top, left bottom, from(#DCC2DB), to(#A8B6D9));
  background: linear-gradient(to bottom, #DCC2DB 0%, #A8B6D9 100%);
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__bottom {
    margin-top: 88px;
    padding: 88px 0;
    max-width: 1074px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__bottom {
    padding: calc(60 / 390 * 100vw) 0;
    margin: calc(56 / 390 * 100vw) calc(-32 / 390 * 100vw) 0;
  }
}

.leaseholdSect__bottom .movieSect__heading {
  color: #333333 !important;
  letter-spacing: .5em;
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__bottom .movieSect__heading {
    font-size: 16px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__bottom .movieSect__heading {
    font-size: calc(16 / 390 * 100vw);
  }
}

.leaseholdSect__bottom .movieSect__cont .generalSect__head .heading {
  color: #333333 !important;
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading {
    font-size: 32px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading {
    font-size: calc(27 / 390 * 100vw);
  }
}

.leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1;
  margin: 0 auto;
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead {
    font-size: 18px;
    margin-bottom: 6px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead {
    margin-bottom: calc(6 / 390 * 100vw);
    font-size: calc(16 / 390 * 100vw);
  }
}

.leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead:before, .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead:after {
  position: absolute;
  content: '';
  background-color: #333333;
  height: 1px;
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead:before, .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead:after {
    width: 26px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead:before, .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead:after {
    width: calc(20 / 390 * 100vw);
  }
}

.leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead:before {
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  top: 60%;
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead:before {
    left: -30px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead:before {
    left: calc(-26 / 390 * 100vw);
  }
}

.leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead:after {
  -webkit-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
  top: 60%;
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead:after {
    right: -30px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead:after {
    right: calc(-26 / 390 * 100vw);
  }
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead .num {
    font-size: 30px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__bottom .movieSect__cont .generalSect__head .heading .lead .num {
    font-size: calc(28 / 390 * 100vw);
  }
}

.leaseholdSect__bottom .movieSect__cont .generalSect__cont {
  aspect-ratio: 640 / 360;
  margin: 16px auto 0;
  position: relative;
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__bottom .movieSect__cont .generalSect__cont {
    height: 498px;
  }
}

.leaseholdSect__bottom .movieSect__cont .generalSect__cont iframe {
  width: 100%;
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__bottom + .pickupBox {
    margin-top: 88px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__bottom + .pickupBox {
    margin-top: calc(56 / 390 * 100vw);
  }
}

.leaseholdSect__visual {
  -webkit-box-shadow: 0 12px 24px 0 rgba(162, 148, 134, 0.3);
          box-shadow: 0 12px 24px 0 rgba(162, 148, 134, 0.3);
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__visual {
    margin-right: -120px;
    width: 793px;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1440px) {
  .leaseholdSect__visual {
    margin-right: calc(50% - 50vw);
    width: calc(793 / 1440 * 100vw);
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__visual {
    -ms-flex-item-align: end;
        align-self: flex-end;
    margin: 0 calc(50% - 50vw) 0 0;
    width: calc(358 / 390 * 100vw);
  }
}

.leaseholdSect__visual .photo__image {
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__visual + .interviewHeading {
    margin-top: calc(56 / 390 * 100vw);
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__visual + .interviewHeading .ja {
    letter-spacing: .2em;
  }
}

.leaseholdSect__btn {
  margin: 0 auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

@media print, screen and (min-width: 769px) {
  .leaseholdSect__btn {
    margin-top: 88px;
  }
}

@media only screen and (max-width: 768px) {
  .leaseholdSect__btn {
    width: calc(326 / 390 * 100vw);
  }
}

.leaseholdSect__btn .interviewCard__rank {
  display: none;
}

.locationSect {
  color: #ffffff;
  position: relative;
  z-index: 1;
  margin: 0 auto;
}

@media print, screen and (min-width: 769px) {
  .locationSect {
    padding-bottom: 128px;
    max-width: 1240px;
  }
}

@media only screen and (max-width: 768px) {
  .locationSect {
    padding: 0 calc(32 / 390 * 100vw) calc(61 / 390 * 100vw);
  }
}

.locationSect:before {
  background: #fff;
  content: '';
  height: 100%;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100vw;
  z-index: -1;
}

@media print, screen and (min-width: 769px) {
  .locationSect:before {
    height: calc(100% - 199px);
    top: 199px;
  }
}

@media only screen and (max-width: 768px) {
  .locationSect:before {
    height: calc(100% - (99 / 390 * 100vw));
    top: calc(99 / 390 * 100vw);
  }
}

.locationSect__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media print, screen and (min-width: 769px) {
  .locationSect__head {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

@media only screen and (max-width: 768px) {
  .locationSect__head {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.locationSect__head .heading .en {
  color: #a48b78;
}

.locationSect__cont {
  margin: 0 auto;
}

@media print, screen and (min-width: 769px) {
  .locationSect__cont {
    margin-top: 88px;
    max-width: 1074px;
  }
}

@media only screen and (max-width: 768px) {
  .locationSect__cont {
    margin-top: calc(66 / 390 * 100vw);
  }
}

@media print, screen and (min-width: 769px) {
  .locationSect__bottom {
    margin-top: 88px;
  }
}

@media only screen and (max-width: 768px) {
  .locationSect__bottom {
    margin-top: calc(56 / 390 * 100vw);
  }
}

.locationSect__visual {
  -webkit-box-shadow: 0 12px 24px 0 rgba(162, 148, 134, 0.3);
          box-shadow: 0 12px 24px 0 rgba(162, 148, 134, 0.3);
}

@media print, screen and (min-width: 769px) {
  .locationSect__visual {
    margin-right: -120px;
    width: 793px;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1440px) {
  .locationSect__visual {
    margin-right: calc(50% - 50vw);
    width: calc(793 / 1440 * 100vw);
  }
}

@media only screen and (max-width: 768px) {
  .locationSect__visual {
    -ms-flex-item-align: end;
        align-self: flex-end;
    margin: 0 calc(50% - 50vw) 0 0;
    width: calc(358 / 390 * 100vw);
  }
}

.locationSect__visual .photo__image {
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .locationSect__visual + .interviewHeading {
    margin-top: calc(56 / 390 * 100vw);
  }
}

@media print, screen and (min-width: 769px) {
  .movieSect__head + .movieSect__cont {
    margin-top: 40px;
  }
}

@media only screen and (max-width: 768px) {
  .movieSect__head + .movieSect__cont {
    margin-top: calc(40 / 390 * 100vw);
  }
}

.movieSect__heading {
  color: #C9BB94 !important;
  font-family: "Oswald", serif !important;
  font-weight: 400;
  line-height: .8;
  text-align: center;
}

@media print, screen and (min-width: 769px) {
  .movieSect__heading {
    font-size: 20px;
  }
}

@media only screen and (max-width: 768px) {
  .movieSect__heading {
    font-size: calc(18 / 390 * 100vw);
  }
}

.movieSect__cont .generalSect__head {
  color: #fff;
  font-family: "YakuHanMP", "Zen Old Mincho", "Noto Serif", "Noto Serif", serif;
  text-align: center;
  line-height: 1.5;
}

.movieSect__cont .generalSect__head:before {
  content: '';
  display: block;
  height: 0;
  margin-top: calc((1 - 1.5) * .5em);
  width: 0;
}

.movieSect__cont .generalSect__head:after {
  content: '';
  display: block;
  height: 0;
  margin-bottom: calc((1 - 1.5) * .5em);
  width: 0;
}

@media print, screen and (min-width: 769px) {
  .movieSect__cont .generalSect__head {
    font-size: 24px;
  }
}

@media only screen and (max-width: 768px) {
  .movieSect__cont .generalSect__head {
    font-size: calc(18 / 390 * 100vw);
  }
}

@media print, screen and (min-width: 769px) {
  .movieSect__cont .generalSect__head + .generalSect__cont {
    margin-top: 56px;
  }
}

@media only screen and (max-width: 768px) {
  .movieSect__cont .generalSect__head + .generalSect__cont {
    margin-top: calc(40 / 390 * 100vw);
  }
}

@media print, screen and (min-width: 769px) {
  .movieSect__cont .generalSect__cont {
    width: 885px;
    margin: 0 auto;
  }
}

@media print, screen and (min-width: 769px) {
  .movieSect__cont .generalSect + .generalSect {
    margin-top: 88px;
  }
}

@media only screen and (max-width: 768px) {
  .movieSect__cont .generalSect + .generalSect {
    margin-top: calc(56 / 390 * 100vw);
  }
}

.pickupBox {
  color: #ffffff;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  z-index: 1;
}

@media print, screen and (min-width: 769px) {
  .pickupBox {
    gap: 56px;
    padding: 88px 0;
    width: 1076px;
  }
}

@media only screen and (max-width: 768px) {
  .pickupBox {
    gap: calc(56 / 390 * 100vw);
    padding: calc(88 / 390 * 100vw) calc(20 / 390 * 100vw) calc(100 / 390 * 100vw);
  }
}

.pickupBox:before {
  content: '';
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
  width: 100%;
  z-index: -1;
  -webkit-filter: blur(30px);
          filter: blur(30px);
}

@media print, screen and (min-width: 769px) {
  .pickupBox:before {
    background: url("../imgs/pc/bg-pickup.jpg") no-repeat center center/cover;
  }
}

@media only screen and (max-width: 768px) {
  .pickupBox:before {
    background: url("../imgs/sp/bg-pickup.jpg") no-repeat center center/cover;
  }
}

@media print, screen and (min-width: 769px) {
  .pickupBox__head {
    width: 270px;
  }
}

.pickupBox__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
}

@media print, screen and (min-width: 769px) {
  .pickupBox__heading {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 16px;
  }
}

@media only screen and (max-width: 768px) {
  .pickupBox__heading {
    gap: calc(24 / 390 * 100vw);
    text-align: center;
  }
}

.pickupBox__heading .en {
  color: #ffffff;
  font-family: "Cormorant Infant", serif;
  line-height: .7;
  letter-spacing: .4em;
}

@media print, screen and (min-width: 769px) {
  .pickupBox__heading .en {
    font-size: 18px;
  }
}

@media only screen and (max-width: 768px) {
  .pickupBox__heading .en {
    font-size: calc(16 / 390 * 100vw);
  }
}

.pickupBox__heading .en span {
  letter-spacing: 0;
}

.pickupBox__heading .ja {
  font-family: "YakuHanMP", "Zen Old Mincho", "Noto Serif", "Noto Serif", serif;
  letter-spacing: .05em;
  line-height: 1.75;
}

.pickupBox__heading .ja:before {
  content: '';
  display: block;
  height: 0;
  margin-top: calc((1 - 1.75) * .5em);
  width: 0;
}

.pickupBox__heading .ja:after {
  content: '';
  display: block;
  height: 0;
  margin-bottom: calc((1 - 1.75) * .5em);
  width: 0;
}

@media print, screen and (min-width: 769px) {
  .pickupBox__heading .ja {
    font-size: 18px;
  }
}

@media only screen and (max-width: 768px) {
  .pickupBox__heading .ja {
    font-size: calc(16 / 390 * 100vw);
  }
}

.pickupBox__cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media print, screen and (min-width: 769px) {
  .pickupBox__cont {
    width: 982px;
    gap: 20px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media only screen and (max-width: 768px) {
  .pickupBox__cont {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: calc(20 / 390 * 100vw);
  }
}

.pickupBox__item {
  background-color: #D5D4D0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #333333;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: left;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  letter-spacing: 0;
  position: relative;
  line-height: 2;
}

.pickupBox__item:before {
  content: '';
  display: block;
  height: 0;
  margin-top: calc((1 - 2) * .5em);
  width: 0;
}

.pickupBox__item:after {
  content: '';
  display: block;
  height: 0;
  margin-bottom: calc((1 - 2) * .5em);
  width: 0;
}

@media print, screen and (min-width: 769px) {
  .pickupBox__item {
    width: 314px;
    height: 219px;
  }
}

.pickupBox__bg {
  aspect-ratio: 314 / 219;
  z-index: -1;
}

@media print, screen and (min-width: 769px) {
  .pickupBox__bg {
    width: 314px;
    height: 219px;
  }
}

.pickupBox__inner {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}

@media print, screen and (min-width: 769px) {
  .pickupBox__inner {
    padding: 0 26px;
  }
}

@media only screen and (max-width: 768px) {
  .pickupBox__inner {
    padding: 0 calc(24 / 390 * 100vw);
  }
}

.pickupBox__txt {
  letter-spacing: 0;
  text-align: left;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-right: auto;
}

@media print, screen and (min-width: 769px) {
  .pickupBox__txt {
    font-size: 14px;
  }
}

@media only screen and (max-width: 768px) {
  .pickupBox__txt {
    font-size: calc(14 / 390 * 100vw);
  }
}

.pickupBox__category {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: left;
  margin-right: auto;
}

@media print, screen and (min-width: 769px) {
  .pickupBox__category {
    font-size: 13px;
  }
}

@media only screen and (max-width: 768px) {
  .pickupBox__category {
    font-size: calc(13 / 390 * 100vw);
  }
}

.pickupBox__caption {
  position: absolute;
  bottom: 5px;
  right: 5px;
  font-size: 10px;
  letter-spacing: 0;
  font-family: "Zen Old Mincho", "Noto Serif", "Noto Serif", serif;
}

@media print, screen and (min-width: 769px) {
  .pickupBox--design .pickupBox__cont {
    width: 648px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

@media print, screen and (min-width: 769px) {
  .pickupBox--design .pickupBox__item {
    height: 135px;
    overflow: hidden;
  }
}

.planFigure {
  margin: 0 auto;
}

@media print, screen and (min-width: 769px) {
  .planFigure {
    width: 620px;
  }
}

@media only screen and (max-width: 768px) {
  .planFigure {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.planFigure__inner {
  background: #ffffff;
  border: 1px solid rgba(153, 153, 153, 0.4);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
}

@media print, screen and (min-width: 769px) {
  .planFigure__inner {
    padding: 32px 38px;
  }
}

@media only screen and (max-width: 768px) {
  .planFigure__inner {
    gap: calc(16 / 390 * 100vw);
    padding: calc(24 / 390 * 100vw) calc(43 / 390 * 100vw) calc(43 / 390 * 100vw);
  }
}

.planFigure__ttl {
  background-color: rgba(85, 85, 85, 0.7);
  color: #ffffff;
  display: grid;
  font-family: "YakuHanJP", "Zen Kaku Gothic New", "Noto SansJapanese", sans-serif;
  line-height: 1;
  margin: 0 auto;
  place-items: center;
  position: relative;
  text-align: center;
  width: 100%;
}

@media print, screen and (min-width: 769px) {
  .planFigure__ttl {
    font-size: 13px;
    height: 32px;
  }
}

@media only screen and (max-width: 768px) {
  .planFigure__ttl {
    font-size: calc(13 / 390 * 100vw);
    height: calc(32 / 390 * 100vw);
  }
}

.planFigure__price {
  background-color: #555555;
  color: #ffffff;
  font-family: "YakuHanJP", "Zen Kaku Gothic New", "Noto SansJapanese", sans-serif;
  text-align: center;
}

@media print, screen and (min-width: 769px) {
  .planFigure__price {
    font-size: 14px;
    line-height: 1;
    padding: 13px 0 14px;
  }
}

@media only screen and (max-width: 768px) {
  .planFigure__price {
    font-size: calc(14 / 390 * 100vw);
    line-height: 1.12;
    padding: calc(13 / 390 * 100vw) 0 calc(14 / 390 * 100vw);
  }
}

.planFigure__price .small {
  font-size: 10px;
}

.planFigure__price .num {
  color: #bdaa9a;
}

@media print, screen and (min-width: 769px) {
  .planFigure__price .num {
    font-size: 24px;
  }
}

@media only screen and (max-width: 768px) {
  .planFigure__price .num {
    font-size: calc(24 / 390 * 100vw);
  }
}

.planFigure__subttl {
  line-height: 1.6;
  background: linear-gradient(0deg, rgba(164, 139, 120, 0.3) 0%, rgba(164, 139, 120, 0.3) 100%), linear-gradient(125deg, #F5E4C1 18.64%, #B69972 50%, #C9A570 81.36%);
  border: 1px solid #f5e4c1;
  color: #ffffff;
  font-family: "YakuHanMP", "Zen Old Mincho", "Noto Serif", "Noto Serif", serif;
  left: 0;
  letter-spacing: 0.05em;
  text-align: center;
  top: 0;
  z-index: 1;
}

.planFigure__subttl:before {
  content: '';
  display: block;
  height: 0;
  margin-top: calc((1 - 1.6) * .5em);
  width: 0;
}

.planFigure__subttl:after {
  content: '';
  display: block;
  height: 0;
  margin-bottom: calc((1 - 1.6) * .5em);
  width: 0;
}

@media print, screen and (min-width: 769px) {
  .planFigure__subttl {
    font-size: 16px;
    left: 16px;
    padding: 16px 0;
    position: absolute;
    top: 64px;
    width: 246px;
  }
}

@media only screen and (max-width: 768px) {
  .planFigure__subttl {
    font-size: 14px;
    padding: calc(16 / 390 * 100vw) 0;
    width: 100%;
  }
}

.planFigure__head {
  color: #555555;
  font-family: "Cormorant Infant", serif;
  line-height: .8;
}

@media print, screen and (min-width: 769px) {
  .planFigure__head {
    font-size: 26px;
    margin-top: 103px;
    padding-left: 20px;
    text-align: left;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

@media only screen and (max-width: 768px) {
  .planFigure__head {
    font-size: 24px;
    text-align: center;
    width: 100%;
  }
}

@media print, screen and (min-width: 769px) {
  .planFigure__head .alphabet,
  .planFigure__head .num {
    font-size: 34px;
  }
}

@media only screen and (max-width: 768px) {
  .planFigure__head .alphabet,
  .planFigure__head .num {
    font-size: 32px;
  }
}

@media print, screen and (min-width: 769px) {
  .planFigure__head .meter {
    font-size: 18px;
  }
}

@media only screen and (max-width: 768px) {
  .planFigure__head .meter {
    font-size: 16px;
  }
}

@media print, screen and (min-width: 769px) {
  .planFigure__cont {
    width: 288px;
  }
}

.planFigure__variation {
  margin-top: 10px;
}

.planFigure__length {
  margin-top: 10px;
}

@media print, screen and (min-width: 769px) {
  .planFigure__note {
    margin-top: 16px;
  }
}

@media only screen and (max-width: 768px) {
  .planFigure__note {
    margin-top: calc(21 / 390 * 100vw);
  }
}

.planFigure__hanreiList {
  color: #666666;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 10px;
  gap: 3px 10px;
  line-height: 1.6;
}

.planFigure__hanreiList + .caption {
  margin-top: 10px;
}

.planFigure__hanreiItem {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.planFigure__hanreiItem .hanreiSVG {
  height: 10px;
  width: auto;
}

.planFigure__imageCaption {
  line-height: 1;
  background: #777777;
  bottom: 0;
  color: #ffffff;
  font-size: 10px;
  padding: 4px 8px;
  position: absolute;
  right: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.planFigure__imageCaption:before {
  content: '';
  display: block;
  height: 0;
  margin-top: calc((1 - 1) * .5em);
  width: 0;
}

.planFigure__imageCaption:after {
  content: '';
  display: block;
  height: 0;
  margin-bottom: calc((1 - 1) * .5em);
  width: 0;
}

.roomplanSect {
  color: #ffffff;
  position: relative;
  z-index: 1;
  margin: 0 auto;
}

@media print, screen and (min-width: 769px) {
  .roomplanSect {
    padding-bottom: 128px;
    max-width: 1240px;
  }
}

@media only screen and (max-width: 768px) {
  .roomplanSect {
    padding: 0 calc(32 / 390 * 100vw) calc(61 / 390 * 100vw);
  }
}

.roomplanSect:before {
  background: -webkit-gradient(linear, left top, left bottom, from(#003872), to(#9a84a4));
  background: linear-gradient(to bottom, #003872 0%, #9a84a4 100%);
  content: '';
  height: 100%;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100vw;
  z-index: -1;
}

@media print, screen and (min-width: 769px) {
  .roomplanSect:before {
    height: 100%;
    top: 162px;
  }
}

@media only screen and (max-width: 768px) {
  .roomplanSect:before {
    height: calc(100% + calc(160 / 1440 * 100vw));
    top: calc(99 / 390 * 100vw);
  }
}

.roomplanSect__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media print, screen and (min-width: 769px) {
  .roomplanSect__head {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

@media only screen and (max-width: 768px) {
  .roomplanSect__head {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.roomplanSect__head .heading .en {
  color: #a48b78;
}

.roomplanSect__cont {
  margin: 0 auto;
}

@media print, screen and (min-width: 769px) {
  .roomplanSect__cont {
    margin-top: 88px;
    max-width: 700px;
  }
}

@media only screen and (max-width: 768px) {
  .roomplanSect__cont {
    margin-top: calc(66 / 390 * 100vw);
  }
}

@media print, screen and (min-width: 769px) {
  .roomplanSect__bottom {
    margin-top: 88px;
  }
}

@media only screen and (max-width: 768px) {
  .roomplanSect__bottom {
    margin-top: calc(56 / 390 * 100vw);
  }
}

.roomplanSect__visual {
  -webkit-box-shadow: 0 12px 24px 0 rgba(162, 148, 134, 0.3);
          box-shadow: 0 12px 24px 0 rgba(162, 148, 134, 0.3);
}

@media print, screen and (min-width: 769px) {
  .roomplanSect__visual {
    margin-right: -120px;
    width: 793px;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1440px) {
  .roomplanSect__visual {
    margin-right: calc(50% - 50vw);
    width: calc(793 / 1440 * 100vw);
  }
}

@media only screen and (max-width: 768px) {
  .roomplanSect__visual {
    -ms-flex-item-align: end;
        align-self: flex-end;
    margin: 0 calc(50% - 50vw) 0 0;
    width: calc(358 / 390 * 100vw);
  }
}

.roomplanSect__visual .photo__image {
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .roomplanSect__visual + .interviewHeading {
    margin-top: calc(56 / 390 * 100vw);
  }
}

@media only screen and (max-width: 768px) {
  .roomplanSect__visual + .interviewHeading .ja {
    letter-spacing: .2em;
  }
}

.interview-movie {
  background: -webkit-gradient(linear, left bottom, left top, from(#003872), to(#9a84a4));
  background: linear-gradient(0deg, #003872 0%, #9a84a4 100%);
  position: relative;
}

@media print, screen and (min-width: 769px) {
  .interview-movie {
    padding: 82px 0 144px;
  }
}

@media only screen and (max-width: 768px) {
  .interview-movie {
    padding: 60px 0;
  }
}

.interview-bnr {
  background-color: #F2EFED;
  position: relative;
  z-index: 1;
}

@media print, screen and (min-width: 769px) {
  .interview-bnr {
    padding: 80px 0;
  }
}

@media only screen and (max-width: 768px) {
  .interview-bnr {
    padding: 60px 0;
  }
}

.interview-bnr .generalBnr {
  margin: auto;
}

@media only screen and (max-width: 768px) {
  .interview-bnr .generalBnr {
    width: calc(326 / 390 * 100vw);
  }
}
