@charset "UTF-8";
#contentsWrap section {padding: 5em 0;}
#contentsWrap section + section {border-top: 1px solid #ddd;}
#detail .container:nth-child(1) {display: flex;flex-wrap: wrap;justify-content: space-between;}
#detail .container:nth-child(1) > div {width: 100%;}
#detail .container:nth-child(1) .detailTable {display: flex;flex-wrap: wrap;justify-content: space-between;}
#detail .container:nth-child(1) .detailTable div {width: 49%;margin: 0 0 2px;}
#detail .container:nth-child(1) .detailTable div p {display: flex;flex-wrap: wrap;justify-content: space-between;height: 100%;}
#detail .container:nth-child(1) .detailTable div p span {display: block;padding: 1em;}
#detail .container:nth-child(1) .detailTable div p span:nth-child(1) {font-weight: 600;white-space: nowrap;width: 10em;background: #ebf0f5;}
#detail .container:nth-child(1) .detailTable div p span:nth-child(2) {width: calc(100% - 10em);background: var(--color-04);}
#equipment .container:nth-child(1) ul {display: flex;flex-wrap: wrap;justify-content: center;}
#equipment .container:nth-child(1) ul li {display: inline-block;text-align: center;padding: 0.5em 1.5em;margin: 0.5em;border-radius: 2em;background: var(--color-04);}
#gallery .container > div:nth-child(2) {position: relative;}
#gallery .container > div:nth-child(2)::before,
#gallery .container > div:nth-child(2)::after {display: block;content: '';width: 20%;height: 100%;background: linear-gradient(to right,rgba(255,255,255,0.6),transparent);position: absolute;top: 0;z-index: 99;pointer-events: none;}
#gallery .container > div:nth-child(2)::before {left: 0;}
#gallery .container > div:nth-child(2)::after {right: 0;transform: rotate(180deg);}
#gallery .container > div:nth-child(2) .swiper-navigation-sub {display: flex;flex-wrap: wrap;justify-content: space-between;width: 94%;position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);z-index: 100;}
#gallery .container > div:nth-child(2) ul li {overflow: hidden;}
#gallery .container > div:nth-child(2) ul li figure .img {width: auto;height: 102%;position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);}
#tour .container > div:nth-child(2) {width: 100%;aspect-ratio: 16 / 9;}
#tour .container > div:nth-child(2) iframe {width: 100%;height: 100%;}
#map .container #googlemap {width: 100%;height: 40em;position: relative;}
#map .container #googlemap iframe {width: 100%;height: 100%;position: fixed;top: 0;left: 0;opacity: 0;}
body.mapLoaded #map .container #googlemap iframe {position: absolute;opacity: 1;}
#map .container > div:nth-child(3) {display: flex;flex-wrap: wrap;justify-content: space-between;align-items: stretch;margin: 5em auto;background: #ebf0f5;border-radius: 1em;overflow: hidden;}
#map .container > div:nth-child(3) > div {display: flex;align-items: center;position: relative;}
#map .container > div:nth-child(3) > div:nth-child(1) {width: 23%;background: #dde1e9;position: relative;}
#map .container > div:nth-child(3).noImage > div:nth-child(1)::after {content: '';width: 60%;height: 3em;background: url("../img/common/logo03_pc.webp") no-repeat center/contain;position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);}
#map .container > div:nth-child(3) > div > div {width: 100%;}
#map .container > div:nth-child(3) > div:nth-child(1) .new {color: #fff;width: 4em;height: 4em;background: #000;clip-path: polygon(0 0, 100% 0, 0 100%);position: absolute;top: -1px;left: -1px;z-index: 101;}
#map .container > div:nth-child(3) > div:nth-child(1) .new span {display: inline-block;font-size: 100%;font-weight: 400;font-family: 'Oswald', sans-serif;line-height: 1;text-align: center;width: 2.5em;position: absolute;top: 0.7em;left: 0.35em;z-index: 99;transform: rotate(-45deg);transform-origin: bottom;}
#map .container > div:nth-child(3) > div:nth-child(1) figure img {width: 102%;height: 102%;position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);object-fit: cover;}
#map .container > div:nth-child(3) > div:nth-child(2) {width: 50%;padding: 0 2em;box-sizing: border-box;}
#map .container > div:nth-child(3) > div:nth-child(2) .name {font-size: 150%;font-weight: 600;}
#map .container > div:nth-child(3) > div:nth-child(2) .access {margin-top: 0.5em;}
#map .container > div:nth-child(3) > div:nth-child(3) {width: 27%;padding: 2em 0;box-sizing: border-box;background: #e1eaf0;}
#map .container > div:nth-child(3) > div:nth-child(3) a {width: 80%;margin: 0 auto;}
#map .container > div:nth-child(3) > div:nth-child(3) a:nth-child(2) {margin-top: 0.5em;}
#recommend {background: var(--color-05);border: none !important;}
#recommend .container h3 {color: #fff;}
#recommend .container > div:nth-of-type(2) ul {display: flex;flex-wrap: wrap;justify-content: center;margin: 0 -1em;}
#recommend .container > div:nth-of-type(2) ul li {width: calc(33.33% - 2em);margin: 1em;}
#recommend .container > div:nth-of-type(2) ul li a {color: #fff;}
#recommend .container > div:nth-of-type(2) ul li a figure {width: 100%;padding-top: 105%;border-radius: 1em;position: relative;overflow: hidden;}
#recommend .container > div:nth-of-type(2) ul li a figure img {width: 100%;height: 100%;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);object-fit: cover;}
#recommend .container > div:nth-of-type(2) ul li a figure p {color: #fff;width: 4em;height: 4em;background: #db6671;clip-path: polygon(0 0, 100% 0, 0 100%);position: absolute;top: -1px;left: -1px;z-index: 100;}
#recommend .container > div:nth-of-type(2) ul li a figure p span {display: inline-block;font-size: 100%;font-weight: 400;font-family: 'Oswald', sans-serif;line-height: 1;text-align: center;width: 2.5em; position: absolute;top: 0.7em;left: 0.5em;transform: rotate(-45deg);transform-origin: bottom;}
#recommend .container > div:nth-of-type(2) ul li a > p:nth-of-type(1) {display: -webkit-box;-webkit-line-clamp: 1;-webkit-box-orient: vertical;font-size: 137.5%;font-weight: 600;margin-top: 1em;overflow: hidden;}
#recommend .container > div:nth-of-type(2) ul li a > p:nth-of-type(2) {display: -webkit-box;-webkit-line-clamp: 1;-webkit-box-orient: vertical;font-weight: 600;margin-top: 0.25em;overflow: hidden;}
#recommend .container > div:nth-of-type(2) ul li a > p:nth-of-type(3) {display: -webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical;font-size: 87.5%;line-height: 2;margin-top: 1em;overflow: hidden;}
#recommend .container > div:nth-of-type(2) .noImage a figure {background: #f8f8f8;}
#recommend .container > div:nth-of-type(2) .noImage a figure::after {content: '';width: 60%;height: 3em;background: url("../img/common/logo03_pc.webp") no-repeat center/contain;position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);}
@media only screen and (max-width: 850px) {
  #detail .container:nth-child(1) .detailTable div {width: 100%;}
}
@media only screen and (min-width: 768px) and (max-width: 1200px) {}
@media only screen and (min-width: 768px) {}
@media only screen and (max-width: 767px) {
  #contentsWrap section {padding: 3em 0;}
  #detail .container:nth-child(1) > div h3 {}
  #detail .container:nth-child(1) .detailTable div p span:nth-child(1) {width: 7.5em;}
  #detail .container:nth-child(1) .detailTable div p span:nth-child(2) {width: calc(100% - 7.5em);}
  #equipment .container:nth-child(1) ul {justify-content: flex-start;}
  #equipment .container:nth-child(1) ul li {padding: 0.5em 1.25em;margin: 0 0.75em 0.75em 0;}
  #gallery .container > div:nth-child(2) .swiper-navigation-sub {margin: 0;}
  #map .container > div:nth-child(3) {margin: 2em auto 0;}
  #map .container iframe {height: 116vw;}
  #map .container > div:nth-child(3) {padding-bottom: 23vw;position: relative;}
  #map .container > div:nth-child(3) > div:nth-child(1) {width: 35vw;height: 30vw;z-index: 100;}
  #map .container > div:nth-child(3) > div:nth-child(2) {width: calc(100% - 35vw);padding: 1em 1em 0;z-index: 100;}
  #map .container > div:nth-child(3) > div:nth-child(2) .name {font-size: 125%;}
  #map .container > div:nth-child(3) > div:nth-child(2) .access {margin-top: 0.25em;font-size: 87.5%;}
  #map .container > div:nth-child(3) > div:nth-child(3) {width: 100%;padding: 1em;position: absolute;left: 0;bottom: 0;}
  #map .container > div:nth-child(3) > div > div {display: flex;flex-wrap: wrap;width: 100%;}
  #map .container > div:nth-child(3) > div:nth-child(3) div a {display: flex;align-items: center;font-size: 87.5%;width: 48%;}
  #map .container #googlemap {height: 30em;}
  #recommend .container > div:nth-of-type(2) ul li {width: calc(100% - 2em);}  
}
@media only screen and (max-width: 768px) and (orientation: landscape) {}
@media print {
  /* -------------------------------------------------------------------- 非表示 */
  .gm-style-moc,
  #map .container > div:nth-child(3),
  #tour,
  #gallery .container > div:nth-child(2) .swiper-navigation-sub,
  #gallery .container > div:nth-child(2)::before,
  #gallery .container > div:nth-child(2)::after,
  .billboard-style-02 > div > div:nth-child(2) .btnWrap,
  .billboard-style-02 > figure,
  .billboard-style-02::before,
  footer,
  header {display: none !important;}
  
  /* -------------------------------------------------------------------- 改ページ */
  #gallery .container > div:nth-child(2) ul li:nth-child(6n + 1):not(:first-child),
  #recommend,
  #map,
  #gallery {page-break-before: always;}
  #equipment {page-break-after: always;}
  
  /* -------------------------------------------------------------------- 文字色 */
  #recommend .container > div:nth-of-type(2) ul li a,
  #recommend .container h3,
  .billboard-style-02 > div > div:nth-child(2) .price,
  .billboard-style-02 > div > div:nth-child(2) .price span,
  .billboard-style-02 > div > div:nth-child(2) {color: #000;}
  
  /* -------------------------------------------------------------------- 幅 */
  #recommend .container,
  #detail .container:nth-child(1),
  .billboard-style-02 > div {width: 100%;}
  
  /* -------------------------------------------------------------------- その他 */
  body {-webkit-print-color-adjust: exact;}
  .billboard-style-02 {padding: 0;}
  .billboard-style-02 > div > div:nth-child(1) {width: 45%;padding-top: 35%;}
  .billboard-style-02 > div > div:nth-child(1) .status {font-size: 175%;}
  .billboard-style-02 > div > div:nth-child(1) .badge {width: 5em;top: 0.5em;right: 0.5em;}
  .billboard-style-02 > div > div:nth-child(2) {font-size: 90%;width: 52%;}
  .billboard-style-02 > div > div:nth-child(2) .price span {border-color: #000;}
  .billboard-style-02 > div > div:nth-child(2) .status {border: 2px solid #000;background: transparent !important;}
  .billboard-style-02 > div > div:nth-child(2) .txt01 {line-height: 1.5;}
  .billboard-style-02 > div > div:nth-child(2) .name {font-size: 200% !important;}
  #contentsWrap section {padding: 0 0 0.5em;border: none !important;}
  .block .container:nth-child(1) > div {margin-bottom: 1em;}
  .block .container:nth-child(1) > div h3 {font-size: 125%;}
  #detail {margin-top: 3em;}
  #detail .container:nth-child(1) .detailTable div {width: 49.5%;}
  #detail .container:nth-child(1) .detailTable div p {font-size: 87.5%;}
  #detail .container:nth-child(1) .detailTable div p span {padding: 0.5em;}
  #detail .container:nth-child(1) .detailTable div p span:nth-child(1) {width: 7em;}
  #detail .container:nth-child(1) .detailTable div p span:nth-child(2) {width: calc(100% - 7em);}
  #equipment {margin-top: 3em;}
  #equipment .container:nth-child(1) ul li {padding: 0.25em 1em;margin: 0.25em;}
  #gallery .container > div:nth-child(2) {display: block !important;}
  #gallery .container > div:nth-child(2) ul {display: flex !important;flex-wrap: wrap;justify-content: space-between;transform: none !important;}
  #gallery .container > div:nth-child(2) ul li {float: none !important;width: calc(50% - 0.25em) !important;margin: 0 0 0.5em !important;}
  #map {margin-top: 3em;}
  #map .container #googlemap {height: 30em;}
  #recommend {background: transparent;}
  #recommend .container > div:nth-of-type(2) ul li a figure {padding-top: 80%;}
  #recommend .container > div:nth-of-type(2) ul li a > p:nth-of-type(1) {font-size: 125%;}
}