.wrapper {
  max-width: 480px;
  margin: 0 auto;
  background-color: #fff;
}

.top-section {
  position: relative;
  height: 100vh;
  margin-bottom: 50px;
}

.detail-fv {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  background-size: cover;
  background-position: center;
}

.detail-fv__gradient {
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
}

.detail-fv__gradient::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.3));
  pointer-events: none;
  z-index: 0;
}

.header {
  color: #fff;
  font-size: 24px;
  width: 100vw;
  height: 65px;
  padding: 20px;
  background: linear-gradient(180deg, #272929 0%, rgba(39, 41, 41, 0) 100%);
  position: fixed;
  z-index: 1000;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.header-dummy {
  width: 30px;
}

.header-logo > img {
  width: 150px;
  height: auto;
  margin: 0 auto;
  display: inline-block;
}

@media screen and (min-width: 681px) {
  .header {
    height: 84px;
  }

  .header-logo > img {
    width: auto;
    height: 44px;
  }
}

.header-links {
  color: #fff;
  font-size: 14px;
  letter-spacing: 1.6px;
}

.header-dummy {
  width: 58.55px;
}

.blank {
  color: rgba(255, 255, 255, 0.3);
}
.scrolled {
  background: none;
  background-color: #2729294d;
}
.hamburger-menu {
  width: 30px;
  height: 24px;
  z-index: 1000;
  cursor: pointer;
  display: flex;
  align-items: center;
}

.menu-bar {
  display: block;
  width: 100%;
  background: #fff;
  margin-bottom: 5px;
}
.menu-bar.black {
  top: 0px;
  right: 0px;
  background: #272929;
}
.menu-bar:last-child {
  margin-bottom: 0;
}
.top-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}
.top-logo {
  width: 300px;
  height: auto;
}
.top-title {
  transform: translate(-50%, -50%);
  height: auto;
  text-align: center;
  margin: 0 auto;
  letter-spacing: 0.25em;
  font-size: 23px;
  text-align: center;
  margin: 0 auto;
}

.top-title img {
  height: 16px;
}

@media screen and (min-width: 681px) and (max-width: 800px) {
  .top-title.okusawa img,
  .top-title.sakurashinmachi img {
    height: 16px;
  }
}

.no-line {
  text-decoration: none !important;
}

/* ------------------------------------
 * メインコンテンツ
 * ------------------------------------ */
.section-btns {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 0 20px;
  background-color: #8f88811a;
  height: 305px;
  margin-bottom: 100px;
  text-decoration: none;
}

.section-btns1 {
  display: flex;
  flex-direction: column;
  gap: 0px;
  padding: 0 20px;
  background-color: #fff;
  margin-bottom: 100px;
  text-decoration: none;
}
.btn-white,
.btn-black {
  width: 100%;
  height: 46px;
  border: none;
  font-size: 16px;
  letter-spacing: 0.1em;
  cursor: pointer;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
}
.btn-white {
  background: #fff;
  color: #272929;
  border: 1px solid #272929;
  margin-bottom: 20px;
  text-decoration: none;
}
.btn-black {
  background: #272929;
  color: #fff;
  text-decoration: none;
  transition: opacity 0.3s ease;
}

.btn-black:hover {
  opacity: 0.6;
}

.cta-text {
  color: #8f8881;
  text-align: center;
  font-size: 22px;
  line-height: 160%;
  letter-spacing: 2.2px;
  margin-top: 40px;
}

.cta-text.english {
  font-size: 14px;
  line-height: 1.6;
}

/* アイキャッチ */
.eye-catch {
  text-align: center;
  padding: 0 20px;
  margin-bottom: 0px;
}

.eye-catch.logo {
  margin-bottom: 0px;
}

.catch-copy {
  color: #272929;
  text-align: center;
  font-size: 22px;
  font-weight: 400;
  line-height: 160%;
  letter-spacing: 2.2px;
  margin-bottom: 100px;
}
.catch-copy.logo {
  margin-bottom: 0px;
}

/* コンテンツブロック */
.contents-block {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 0 20px;
  margin-bottom: 100px;
}
.contents-image {
  width: 100%;
  height: 100%;
  aspect-ratio: 3 / 2;
  background-size: cover;
  background-position: center;
}

.contents-text {
  font-weight: 500;
}
.contents-title {
  color: #bfbec0;
  font-size: 26px;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: 2.6px;
  margin-bottom: 20px;
}
.contents-sub {
  color: #272929;
  font-size: 18px;
  font-weight: 500;
  line-height: 160%;
  letter-spacing: 1.8px;
  margin-bottom: 20px;
}
.contents-desc {
  color: #272929;
  font-size: 14px;
  line-height: 160%;
  letter-spacing: 1.6px;
}
.contents-desc.reference-mark {
  margin-top: 40px;
}

.architect-section {
  margin-bottom: 100px;
}

.architect-section__img {
  width: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: rgba(0, 0, 0, 0.4);
  background-blend-mode: multiply;
  padding: 150px 0;
}

.architect-section__content {
  text-align: center;
}
.architect-title {
  color: #fff;
  font-size: 26px;
  font-weight: 400;
  line-height: 140%;
  letter-spacing: 2.6px;
  margin-bottom: 45px;
}
.architect-profile {
  text-align: center;
}
.architect-name {
  color: #fff;
  text-align: center;
  font-size: 20px;
  font-weight: 500;
  line-height: 160%;
  letter-spacing: 2px;
  margin-bottom: 10px;
}
.architect-company {
  margin-bottom: 50px;
  color: #bfbec0;
  font-size: 16px;
  font-weight: 500;
  line-height: 160%;
  letter-spacing: 3.2px;
}
.architect-desc {
  color: #fff;
  font-size: 16px;
  line-height: 160%;
  letter-spacing: 1.6px;
  margin-bottom: 20px;
  text-align: left;
  padding: 0 20px;
}
.architect-link {
  color: #fff;
  font-size: 16px;
  line-height: 160%;
  letter-spacing: 1.6px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

/* ------------------------------------
 * ギャラリーセクション
 * ------------------------------------ */
.gallery-section {
  padding: 0 20px;
  margin-bottom: 100px;
}
.gallery-title {
  color: #272929;
  text-align: center;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 4.8px;
  text-transform: capitalize;
  margin-bottom: 50px;
}
.gallery-main {
  width: 100%;
  height: 100%;
  aspect-ratio: 1000 / 687;
  position: relative;
  margin-bottom: 25px;
  opacity: 1;
  transition: opacity 1s ease;
}
.gallery-main.fade-out {
  opacity: 0;
}
.right {
  position: absolute;
  top: 45%;
  right: 0%;
  width: 19px;
  height: 30px;
  margin-right: 10px;
  fill: #fff;
  cursor: pointer;
}
.left {
  position: absolute;
  top: 45%;
  left: 0%;
  width: 19px;
  height: 30px;
  margin-left: 10px;
  fill: #fff;
  cursor: pointer;
}
.gallery-thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  justify-content: center;
  margin: 0 auto;
}

@media screen and (min-width: 1000px) {
  .gallery-thumbs {
    width: 875px;
  }
}
.thumb {
  width: 35px;
  height: 28.12px;
  background: #ccc;
  opacity: 0.4;
  cursor: pointer;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.thumb.active {
  opacity: 1;
}
.thumb.remove {
  opacity: 0.4;
}

/* ------------------------------------
 * RENT ROLL セクション
 * ------------------------------------ */
.rent-roll {
  padding: 0 20px;
  margin-bottom: 50px;
}
.rent-roll-title {
  color: #272929;
  text-align: center;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 4.8px;
  text-transform: capitalize;
  margin-bottom: 50px;
}
.rent-list {
  list-style: none;
  width: 100%;
}
.rent-item {
  display: flex;
  gap: 30px;
  border-top: 1px solid #bfbec0;
  padding: 20px 0 20px 8px;
  align-items: center;
  justify-content: space-between;
}
.rent-item:last-child {
  border-bottom: 1px solid #bfbec0;
}
.room-no,
.floor {
  color: #272929;
  font-size: 16px;
  font-weight: 700;
  line-height: 160%;
  letter-spacing: 1.6px;
  text-transform: capitalize;
}

.layout {
  color: #272929;
  font-size: 16px;
  line-height: 160%;
  letter-spacing: 1.6px;
}
.layout.bf {
  flex: 1;
}
.layout.svg {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 481px) {
  .layout.svg {
    display: none;
  }
}
.layout.pc {
  color: #272929;
  font-size: 16px;
  line-height: 160%;
  letter-spacing: 1.6px;
  border-bottom: solid 1px #272929;
}
.room-no,
.floor {
  font-weight: 700;
}
.room-no {
  width: 35px;
}
.floor {
  width: 40px;
  white-space: nowrap;
}

/* ------------------------------------
 * OUTLINE セクション
 * ------------------------------------ */
.outline-section {
  padding: 0 20px;
  margin-bottom: 50px;
}
.outline-title {
  color: #272929;
  text-align: center;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 4.8px;
  text-transform: capitalize;
  margin-bottom: 50px;
}
.outline-block {
  color: #272929;
  font-size: 16px;
  line-height: 160%;
  letter-spacing: 1.6px;
  border-top: 1px solid #bfbec0;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.outline-block h4 {
  font-size: 16px;
  font-weight: 700;
}
.outline-block p {
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: 1px;
  height: auto;
}

.outline-block-desc a {
  color: #272929;
}

/* ------------------------------------
 * MAP セクション
 * ------------------------------------ */
.map-section {
  padding: 0 20px;
  text-align: center;
  margin-bottom: 100px;
}
.map-title {
  color: #272929;
  text-align: center;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 4.8px;
  text-transform: capitalize;
  margin-bottom: 50px;
}

.gmap-iframe {
  width: 100%;
  height: 212px;
  filter: grayscale(100%);
}

/* ------------------------------------
 * フッター
 * ------------------------------------ */
.pc-footer {
  padding: 100px 0 25px;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)),
    url("../images/common/footer-img.jpg");
  background-size: cover;
  background-position: center;
}

.footer-content {
  margin-bottom: 100px;
}

/* ロゴ */
.footer-logo {
  width: 250px;
  height: auto;
  text-align: center;
  margin: 0 auto 50px;
}

/* 見出し (CONTACT) */
.contact-heading {
  color: #fff;
  text-align: center;
  font-size: 18px;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: 1.8px;
  margin-bottom: 10px;
}

.contact-info {
  padding: 0 20px;
  margin-bottom: 20px;
}
.contact-box {
  border: 1px solid #fff;
  padding: 20px;
  text-align: left;
  margin-bottom: 20px;
}
.phone-big {
  color: #fff;
  text-align: center;
  font-size: 32px;
  line-height: 140%;
  letter-spacing: 3.2px;
  padding-bottom: 10px;
}
.phone-big a,
.phone-small a {
  text-decoration: none;
  color: #fff;
}
.phone-small {
  color: #fff;
  text-align: center;
  font-size: 26px;
  line-height: 140%;
  letter-spacing: 2.6px;
  padding-bottom: 20px;
}
.contact-company {
  color: #fff;
  text-align: center;
  font-size: 16px;
  line-height: 160%;
  letter-spacing: 1.6px;
}
.contact-note {
  color: #fff;
  text-align: center;
  font-size: 16px;
  line-height: 160%;
  letter-spacing: 1.5px;
  padding-bottom: 20px;
}
.contact-btn {
  background-color: #272929;
  color: #fff;
  width: 50%;
  height: 50px;
  display: flex;
  justify-content: center;
  margin: 0 auto;
  text-decoration: underline;
}
.btn.contact-btn {
  background: #272929;
  color: #fff;
  border: 1px solid transparent;
  padding: 10px 20px;
  letter-spacing: 0.1em;
  cursor: pointer;
  text-decoration: underline;
}

.btn.contact-btn2 {
  background: #8f8881;
  color: #fff;
  border: 1px solid transparent;
  padding: 10px 20px;
  letter-spacing: 0.1em;
  cursor: pointer;
  width: 100%;
  height: 50px;
  text-decoration: none;
  transition: opacity 0.3s ease;
  font-size: 16px;
}

.btn.contact-btn2:hover {
  opacity: 0.8;
}

.info {
  color: #fff;
  font-size: 16px;
  text-decoration: underline;
  display: flex;
  max-width: 400px;
  height: 60px;
  padding: 20px 10px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  background: #8f8881;
}

/* フッター下部リンク */
.footer-links {
  display: flex;
  flex-direction: column;
  width: 335px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin: 0 auto;
  margin-bottom: 50px;
}
.footer-links a {
  color: #fff;
  font-size: 14px;
  line-height: 160%;
  letter-spacing: 1.4px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  text-transform: capitalize;
  white-space: nowrap;
  text-decoration: none;
}
.footer-copy {
  color: #fff;
  font-size: 16px;
  line-height: 160%;
  letter-spacing: 1.6px;
  text-align: center;
  margin: 0 auto;
}

.footer-btn {
  text-align: center;
}

.hamburger.open span:nth-child(1) {
  transform: translateY(14px) rotate(45deg);
}
.hamburger.open span:nth-child(2) {
  opacity: 0;
}
.hamburger.open span:nth-child(3) {
  transform: translateY(-14px) rotate(-45deg);
}

.no-line {
  text-decoration: none !important;
}

.contact-company {
  font-size: 16px;
  color: #fff;
}

.copyright {
  font-size: 16px;
  color: #fff;
}

.divider {
  width: 1px;
  height: 50px;
  background: #3a3a3a;
  text-align: center;
  margin: 30px auto;
}

.top-border {
  border-bottom: 1px solid #bfbec0;
}

.iframe {
  width: 100%;
  aspect-ratio: 16/9;
}

.section-btns-btns {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
}

.hamburger.open span:nth-child(1) {
  transform: translateY(14px) rotate(45deg);
}
.hamburger.open span:nth-child(2) {
  opacity: 0;
}
.hamburger.open span:nth-child(3) {
  transform: translateY(-14px) rotate(-45deg);
}

/* ロゴ */
.footer-logo {
  width: 250px;
  height: auto;
}

/* モーダル背景 (オーバーレイ) */
.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  z-index: 9999;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

/* モーダル本体 */
.modal-content {
  position: relative;
  width: 90%;
  height: 600px;
  background: #fff;
  padding: 20px;
  box-sizing: border-box;
  overflow-y: auto;
}

.modal-svg {
  padding-bottom: 50px;
}

.modal-close {
  line-height: 23.55px;
}

.modal-overlay.open {
  opacity: 1;
  visibility: visible;
}

.openModalBtn {
  display: inline-block;
  font-size: 16px;
  cursor: pointer;
}

.modal-logo {
  margin-top: 50px;
  margin-bottom: 10px;
  text-align: center;
}

.modal-logo2 {
  text-align: center;
  margin-bottom: 30px;
}

.modal-floor {
  color: #272929;
  text-align: center;
  font-size: 22px;
  font-weight: 500;
  line-height: 160%;
  letter-spacing: 2.2px;
  text-transform: capitalize;
  margin-bottom: 20px;
  margin-top: 50px;
}

.modal-img {
  border: 1px solid #bfbec0;
  display: block;
  width: 295px;
  height: 295px;
  margin: 0 auto;
}

.fade-in {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 1s ease-out, transform 1s ease-out;
}
.fade-in.visible {
  opacity: 1;
  transform: translateY(0);
}

.sp-br {
  display: inline;
}

.pc-br {
  display: none;
}

.tb-br {
  display: none;
}

.close-btn {
  width: 23.335px;
  height: 23.548px;
  flex-shrink: 0;
}
.hamburger-btn {
  width: 30px;
  height: 24px;
  flex-shrink: 0;
  aspect-ratio: 5/4;
}

.modal-close-right {
  display: flex;
  justify-content: flex-end;
  cursor: pointer;
}

@media screen and (min-width: 481px) {
  .wrapper {
    max-width: 100%;
    margin: 0 0;
  }

  .top-section {
    max-width: 100%;
    height: 100vh;
  }
  .top-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
  }
  .top-title {
    margin: 0 auto;
    letter-spacing: 4px;
    text-align: center;
    margin: 0 auto;
  }

  .top-logo {
    width: 480px;
    height: auto;
    margin: 0 auto;
  }

  .catch-copy {
    color: #272929;
    text-align: center;
    font-size: 30px;
    line-height: 160%;
    letter-spacing: 3px;
  }

  .main-contents {
    max-width: 85%;
    margin: 0 auto;
  }

  /* セクションボタン群 */
  .section-btns {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 0 20px;
    background-color: #8f88811a;
    height: auto;
    font-size: 30px;
    max-width: 100vw;
    margin: 0 calc(50% - 50vw) 150px;
  }

  .section-btns.top {
    display: flex;
    flex-direction: row;
    gap: 20px;
    padding: 0 20px;
    background-color: #fff;
    height: 100px;
    justify-content: space-around;
    margin-bottom: 0px;
  }

  .section-btns-btns {
    display: flex;
    flex-direction: row;
    justify-content: center;
    margin-bottom: 50px;
  }

  .section-btns1 {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin-bottom: 100px;
  }

  .btn-white,
  .btn-black {
    width: 412px;
    height: 70px;
    font-size: 20px;
  }
  .btn-white {
    margin-right: 20px;
    margin-bottom: 0px;
  }
  .eye-catch {
    text-align: center;
    padding: 0 20px;
    margin-bottom: 50px;
  }

  .contents-block {
    padding: 0%;
    flex-direction: row;
    justify-content: center;
    gap: 50px;
    margin: 0 auto 150px;
  }

  .contents-block.reverce {
    justify-content: center;
    flex-direction: row-reverse;
  }

  .contents-image {
    width: 600px;
    height: 100%;
    aspect-ratio: 3 / 2;
  }

  .contents-text {
    max-width: 350px;
  }

  .contents-desc {
    font-size: 16px;
  }
  .contents-desc.reference-mark {
    color: #272929;
    font-size: 14px;
    line-height: 160%;
    margin-top: 20px;
  }

  .architect-section__img {
    width: 100vw;
    margin: 0 calc(50% - 50vw) 150px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
  }

  .architect-section__content {
    width: 100%;
  }

  .architect-company {
    font-size: 18px;
    font-weight: 400;
  }

  .architect-profile {
    max-width: 1000px;
    margin: 0 auto;
  }
  .architect-desc {
    text-align: center;
    padding: 0px;
  }

  .gallery-section {
    padding: 0px;
    max-width: 1000px;
    margin: 0 auto 150px;
  }

  .gallery-main {
    width: 100%;
    height: 100%;
    aspect-ratio: 1000 / 687;
  }

  .thumb {
    width: 100px;
    height: 75px;
  }

  .right {
    width: 19px;
    height: 40px;
    margin-right: 19.33px;
  }
  .left {
    width: 19px;
    height: 40px;
    margin-left: 19.33px;
  }
  .rent-roll {
    padding: 0;
    max-width: 1000px;
    margin: 0 auto 150px;
  }
  .rent-item {
    padding: 20px;
    gap: 50px;
  }
  .room-no {
    width: 130px;
  }
  .floor {
    width: 130px;
    color: #272929;
    font-size: 16px;
    font-weight: 700;
    line-height: 160%;
    letter-spacing: 1.6px;
    text-transform: capitalize;
  }
  .layout.bf {
    width: 400px;
    color: #272929;
    font-size: 16px;
    line-height: 160%;
    letter-spacing: 1.6px;
  }

  .outline-section {
    padding: 0px;
    max-width: 1000px;
    margin: 0 auto 150px;
  }

  .map-section {
    padding: 0px;
  }

  .gmap-iframe {
    aspect-ratio: 16 / 9;
    width: 100%;
    height: 630px;
    max-width: 1000px;
    margin: 0 auto 150px;
  }

  .pc-footer {
    display: flex;
    flex-direction: column;
    gap: 50px;
    align-items: center;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)),
      url("../images/common/footer-img.jpg");
    background-size: cover;
    background-position: center;
    max-width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
  .footer-content {
    width: 100vw;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    margin: 0 auto 100px;
  }

  .contact-block {
    align-items: center;
    text-align: center;
    margin: 0 auto;
  }

  .contact-heading {
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 4.8px;
    text-transform: capitalize;
  }

  .contact-info {
    width: 500px;
    margin: 0 auto;
  }

  .contact-note {
    text-align: center;
    margin: 0 auto;
  }

  .phone-big {
    text-align: center;
    font-size: 40px;
    line-height: 140%;
    letter-spacing: 4px;
  }
  .phone-small {
    text-align: center;
    font-size: 30px;
    line-height: 140%;
    letter-spacing: 3px;
    color: #fff;
  }

  .footer-logo {
    width: 400px;
    height: auto;
  }

  .footer-links-l {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
  }

  .footer-links {
    display: flex;
    flex-direction: row;
    margin-bottom: 0px;
    margin-left: 25px;
    justify-content: flex-start;
    gap: 20px;
  }

  .footer-copy {
    margin-right: 25px;
  }

  .btn.contact-btn2 {
    margin: 0 auto;
    height: 70px;
  }

  /* モーダル本体 */
  .modal-content {
    position: relative;
    max-width: 1000px;
    height: 600px;
    background: #fff;
    padding: 50px;
    box-sizing: border-box;
    overflow-y: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0;
  }

  .modal-logo {
    margin-top: 50px;
    margin-bottom: 10px;
    text-align: center;
  }

  .modal-logo2 {
    text-align: center;
    margin-bottom: 30px;
  }

  .modal-floor {
    margin-top: 50px;
  }

  .modal-img {
    width: 500px;
    height: 500px;
    margin: 0;
    margin-left: 50px;
  }

  .modal-svg {
    padding-bottom: 50px;
  }

  .sp-br {
    display: none;
  }
  .pc-br {
    display: inline;
  }

  .cta-text.english {
    font-size: 24px;
    line-height: 160%;
    letter-spacing: 2.4px;
  }

  .modal-close-right {
    position: absolute;
    top: 25px;
    right: 25px;
  }

  .contents-sub {
    font-size: 20px;
  }
}

@media screen and (min-width: 481px) and (max-width: 680px) {
  .modal-content {
    position: relative;
    width: 90%;
    height: 600px;
    background: #fff;
    padding: 20px;
    box-sizing: border-box;
    overflow-y: auto;
    display: block;
  }

  .modal-logo {
    margin-top: 50px;
    margin-bottom: 10px;
    text-align: center;
  }

  .modal-logo2 {
    text-align: center;
    margin-bottom: 30px;
  }

  .modal-floor {
    color: #272929;
    text-align: center;
    font-size: 22px;
    font-weight: 500;
    line-height: 160%;
    letter-spacing: 2.2px;
    text-transform: capitalize;
    margin-bottom: 20px;
  }

  .modal-img {
    width: 295px;
    height: 295px;
  }

  .architect-desc {
    max-width: 1000px;
    padding: 0px;
  }
  .thumb {
    width: 100px;
    aspect-ratio: 16/9;
  }
  .btn-white {
    width: 200px;
  }
  .btn-black {
    width: 200px;
  }
  .outline-block.other {
    height: 100px;
  }
  .rent-item {
    gap: 20px;
  }
  .room-no {
    width: 70px;
  }
  .contents-block {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 0 20px;
    margin-bottom: 100px;
  }
  .contents-image {
    width: 100%;
    height: 100%;
    aspect-ratio: 3 / 2;
  }
  .contents-block.reverce {
    flex-direction: column;
  }
  .contents-text {
    width: 100%;
  }
  .floor {
    width: 130px;
  }
  .layout.bf {
    width: 400px;
  }

  .hamburger-btn {
    width: 40px;
    height: 32px;
  }
}

@media screen and (min-width: 481px) {
  .close-btn {
    width: 31.113px;
    height: 31.113px;
    right: 30px;
  }
}

@media screen and (min-width: 481px) and (max-width: 810px) {
  .tb-br {
    display: inline;
  }
  .contents-text {
    max-width: 600px;
  }
}

@media screen and (min-width: 481px) and (max-width: 1024px) {
  .contents-block {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 0 20px;
    margin: 0 auto 100px;
    align-items: center;
  }
  .contents-block.reverce {
    flex-direction: column;
  }
  .contents-image {
    width: 100%;
    height: 100%;
    aspect-ratio: 3 / 2;
  }
  .contents-text {
    margin: 0 auto;
    min-width: 100%;
  }
  .modal-content {
    position: relative;
    width: 90%;
    height: 600px;
    background: #fff;
    padding: 20px;
    box-sizing: border-box;
    overflow-y: auto;
    display: block;
  }
  .modal-img {
    width: 295px;
    height: 295px;
    margin: 0 auto;
  }
  .layout.pc {
    margin-left: 0px;
  }
}

@media screen and (min-width: 681px) {
  .top-title img {
    height: 35px;
  }

  .outline-block {
    flex-direction: row;
    gap: 50px;
  }

  .outline-block-title {
    display: flex;
    align-items: center;
    width: 144px;
  }

  .outline-block-title.english {
    width: 144px;
  }

  .outline-block-desc {
    flex: 1;
    display: flex;
    align-items: center;
  }

  .architect-section__img {
    padding: 150px 100px;
  }
}
