/* Morisawa Fonts(有償・無効化済み)のフォールバック先を、無料の高品質和文フォントに差し替え */
html, body, * {
  font-family: "Zen Kaku Gothic New", "Inter", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
}
/* Next.jsのJS(IntersectionObserver等)によるフェードイン演出はhydration停止に伴い無効化。
   初期状態(opacity:0)のまま止まるため、常に表示状態を強制する */
[class*="FadeIn"] > *, [class*="fadeIn"], [class*="Reveal"], [class*="reveal"] {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

/* 見出しはゴシック体に統一(2026-09-17 Shown指示: 明朝混在で違和感、フォントは統一する) */
h1, h2, h3, h4,
[class*="RoomCard"] [class*="Title"],
[class*="roomCard"] [class*="Title"],
[class*="Hero"] h1,
[class*="loungeContentsTitle"] {
  font-family: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: .02em;
}

/* 「1日の過ごし方」ストーリー演出(experience/morning/daytime/night)は
   sumu-hotel由来の構成のため非表示化。HTML構造は変更せずCSSのみで対処。 */
.page-module-scss-module__zcQm6a__experience,
.page-module-scss-module__zcQm6a__morning,
.page-module-scss-module__zcQm6a__daytime,
.page-module-scss-module__zcQm6a__night {
  display: none !important;
}

/* 見出し画像(title-*.png)がsumu由来ロゴのため文字なし装飾画像に差し替え済みの箇所を
   テキスト見出しに置換した際のスタイル */
.ikb-title-text {
  display: inline-block;
  font-family: "Zen Kaku Gothic New", sans-serif !important;
  font-weight: 800 !important;
  font-size: 2rem;
  letter-spacing: .02em;
  color: #1a1a1a;
}

/* ヒーローセクション(araha型: フルスクリーン写真+暗幕オーバーレイ+中央寄せ文字)
   2026-08-14: 柔らかすぎるとの指摘を受け、オーバーレイを濃く・下部グラデーションで
   引き締め、見出しを明朝Boldへ変更してシャープな印象に調整。 */
.ikb-hero {
  position: relative;
  height: 92vh;
  min-height: 600px;
  width: 100%;
  margin-top: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.ikb-hero-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transform: scale(1.05);
  filter: contrast(1.08) saturate(.85);
}
.ikb-hero-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(10,10,10,.55) 0%, rgba(10,10,10,.4) 45%, rgba(10,10,10,.72) 100%);
}
.ikb-hero-content {
  position: relative;
  z-index: 2;
  max-width: 56rem;
  margin: 0 auto;
  padding: 0 1.5rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.ikb-hero-eyebrow {
  font-size: .78rem;
  font-weight: 600;
  color: rgba(255,255,255,.9);
  letter-spacing: .4em;
  text-transform: uppercase;
  margin-bottom: 1.75rem;
}
.ikb-hero-title {
  font-family: "Zen Kaku Gothic New", sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(2.1rem, 5.2vw, 3.7rem);
  color: #fff;
  line-height: 1.5;
  letter-spacing: .01em;
  margin-bottom: 2rem;
  text-shadow: 0 2px 24px rgba(0,0,0,.35);
}
.ikb-hero-lead {
  font-family: "Zen Kaku Gothic New", sans-serif !important;
  font-size: clamp(.85rem, 1.3vw, 1.05rem);
  color: rgba(255,255,255,.82);
  line-height: 2;
  letter-spacing: .04em;
  margin-bottom: 2.5rem;
  max-width: 40rem;
}
.ikb-hero-cta {
  display: inline-block;
  border: 1px solid rgba(255,255,255,.75);
  color: #fff;
  padding: 1rem 2.5rem;
  font-size: .85rem;
  font-weight: 500;
  letter-spacing: .2em;
  text-decoration: none;
  transition: background .25s, color .25s, border-color .25s;
}
.ikb-hero-cta:hover {
  background: #fff;
  color: #111;
  border-color: #fff;
}
@media (max-width: 640px) {
  .ikb-hero { height: 100vh; margin-top: 60px; }
  .ikb-hero-title { font-size: 1.8rem; }
}

/* 各部屋タイプページの「Concept & Design」欄は元サイト(sumu-hotel)が起用した
   実在デザイン会社(Whatever Co./TSUTAYA)へのクレジット・実リンクのため、
   西池袋レジデンスには無関係。HTML側は無害化済みだが、JS再描画時の復元対策として
   CSSでも二重に非表示化する。 */
[class*="conceptRight"] {
  display: none !important;
}

/* news.html/news/index.html: wget取得時にJSで動的レンダリングされる一覧が
   空のまま保存されていたため、手動でカード一覧を追加した分のスタイル */
.ikb-news-main {
  max-width: 960px;
  margin: 6rem auto;
  padding: 0 1.5rem;
}
.ikb-news-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 2rem;
}
.ikb-news-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 12px;
  overflow: hidden;
  transition: box-shadow .25s;
}
.ikb-news-card:hover {
  box-shadow: 0 8px 24px rgba(0,0,0,.1);
}
.ikb-news-thumb {
  width: 100%;
  aspect-ratio: 16/10;
  object-fit: cover;
  display: block;
}
.ikb-news-body {
  padding: 1.1rem 1.3rem 1.4rem;
}
.ikb-news-date {
  display: block;
  font-size: .78rem;
  color: rgba(0,0,0,.5);
  letter-spacing: .05em;
  margin-bottom: .5rem;
}
.ikb-news-title {
  font-size: .95rem;
  line-height: 1.6;
  margin: 0;
}

/* ロゴ刷新(2026-09-18 Shown支給の画像に差し替え・背景透過処理済み)
   画像内に「西池袋レジデンス」の文字が既に描かれているため、
   別途テキストのワードマーク(.ikb-logo-word)は非表示にする */
.ikb-logo {
  display: flex !important;
  align-items: center;
  gap: 0;
  height: auto !important;
  min-width: 0 !important;
  padding: 0 !important;
}
.ikb-logo-mark {
  width: auto;
  height: 64px;
  object-fit: contain;
  display: block;
  flex-shrink: 0;
}
.ikb-logo-word {
  display: none;
}
.ikb-footer-logo .ikb-logo-mark {
  height: 56px;
}
@media (max-width: 480px) {
  .ikb-logo-mark {
    height: 40px;
  }
  /* 2026-09-18: ロゴ拡大後、375px幅でロゴがヘッダー右側(お問い合わせ/言語ボタン)を
     圧迫し「お問い合わせ」テキストが折り返されハンバーガーと重なる不具合を確認。
     ロゴを64px→40pxに、navの余白・ボタンpaddingを詰めて解消する。 */
  .Header-module-scss-module__P7cjuG__navContent {
    gap: 6px !important;
  }
  .Header-module-scss-module__P7cjuG__navBtns {
    gap: 4px !important;
  }
  .Header-module-scss-module__P7cjuG__reserveBtn {
    padding: 0 8px !important;
  }
  .Header-module-scss-module__P7cjuG__reserveBtnText {
    white-space: nowrap;
    font-size: 11px !important;
  }
  .Header-module-scss-module__P7cjuG__langBtnInner {
    padding: 8px !important;
  }
}

/* ヘッダー全体の刷新: 元サイト由来のオレンジ予約ボタン・素朴な配色を
   ブランドカラー(深いフォレストグリーン)に統一し、余白と質感を整える。
   2026-09-17 Shown指示によりヘッダーはスケルトン(完全透明)化。
   トップページのヒーロー写真はヘッダーの高さ分だけ下にずらし、
   ヘッダーの文字が写真に重ならないようにする(下記.ikb-hero参照)。
   他ページは元々コンテンツにmargin-topがあり写真背景でもないため対象外。 */
.Header-module-scss-module__P7cjuG__nav {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-bottom: none !important;
}
.Header-module-scss-module__P7cjuG__navItem {
  font-weight: 600 !important;
  letter-spacing: .02em;
}
.Header-module-scss-module__P7cjuG__navItem:hover {
  opacity: .6;
}
.Header-module-scss-module__P7cjuG__reserveBtn {
  background: #17322a !important;
  border-radius: 6px !important;
  transition: background .2s;
}
.Header-module-scss-module__P7cjuG__reserveBtn:hover {
  background: #2b5d50 !important;
}
.Header-module-scss-module__P7cjuG__langBtnInner {
  background: transparent !important;
  border: 1px solid rgba(23, 50, 42, .25) !important;
}
.Header-module-scss-module__P7cjuG__langBtnText {
  color: #17322a !important;
}

/* 元サイト(sumu-hotel)のブランドカラー(オレンジ #ff6c37)がボタン・装飾ドットに
   全ページ共通で使われていたのを、この物件専用の配色(深いフォレストグリーン)に統一する */
.page-module-scss-module__gcuJEq__orangeDot,
.Button-module-scss-module__gW1A4G__buttonPrimaryDot,
.page-module-scss-module__zcQm6a__loungeContentsDot,
.RoomConcept-module-scss-module__WHSZmW__conceptDot,
.RoomHero-module-scss-module__U8saRq__heroDot,
.Footer-module-scss-module__kQc2fa__footerReserveBtn,
.RoomBooking-module-scss-module__II5HFG__bookingBtn {
  background: #17322a !important;
}
.NewsContent-module-scss-module__dbwImq__title {
  border-bottom-color: #17322a !important;
}
.page-module-scss-module__zcQm6a__roomDotActive,
.TopRoomSlider-module-scss-module__R_Gn5a__roomDotActive,
.RoomMvSlider-module-scss-module__jv9Dzq__dotActive {
  background: #17322a !important;
}
.Footer-module-scss-module__kQc2fa__footerReserveBtn:hover,
.RoomBooking-module-scss-module__II5HFG__bookingBtn:hover {
  background: #2b5d50 !important;
}
.Header-module-scss-module__P7cjuG__reserveBtn:hover,
.Header-module-scss-module__P7cjuG__reserveBtn:active,
.Footer-module-scss-module__kQc2fa__footerReserveBtn:hover,
.Footer-module-scss-module__kQc2fa__footerReserveBtn:active {
  background: #0e211b !important;
}

/* 上記で拾いきれなかった残りのオレンジ装飾(見出し脇のドット・矢印・区切り線・
   リンク色)を網羅して同じブランドカラーに統一する */
.NewsCard-module-scss-module__iSHJva__date:before,
.page-module-scss-module__yTTEea__heroSubtitle:before,
.page-module-scss-module__lCNw9W__heroText:before,
.page-module-scss-module__gcuJEq__heroSubtitle:before,
.Header-module-scss-module__P7cjuG__mobileNavText:before,
.page-module-scss-module__zcQm6a__newsCardDate:before,
.page-module-scss-module__zcQm6a__sumuBrandKicker:before,
.NewsContent-module-scss-module__dbwImq__date:before,
.page-module-scss-module__taPGPq__heroSubtitle:before,
.Button-module-scss-module__gW1A4G__buttonPrimary:hover .Button-module-scss-module__gW1A4G__buttonPrimaryDot {
  background: #17322a !important;
  background-color: #17322a !important;
}
.page-module-scss-module__zcQm6a__newsMoreArrow {
  border-bottom-color: #17322a !important;
  border-right-color: #17322a !important;
}
.Button-module-scss-module__gW1A4G__buttonPrimaryDot:after {
  border-top-color: #17322a !important;
  border-right-color: #17322a !important;
}
.NewsContent-module-scss-module__dbwImq__content a {
  color: #17322a !important;
}
.NewsContent-module-scss-module__dbwImq__content hr {
  border-top-color: #17322a !important;
}
.NewsContent-module-scss-module__dbwImq__content blockquote {
  border-left-color: #17322a !important;
}
.page-module-scss-module__zcQm6a__expArrow,
.page-module-scss-module__zcQm6a__expArrow:after {
  background: #17322a !important;
  border-top-color: #17322a !important;
  border-right-color: #17322a !important;
}

/* 2026-09-17 Shown指示: ブランドカラーの緑がボタン等の小さい装飾にしか
   使われておらず「緑を感じられない」との指摘。フッター・見出し背景等、
   面積のある場所にも緑を展開してブランドカラーとして認識できるようにする。 */
.Footer-module-scss-module__kQc2fa__footer {
  background: #f2f6f4 !important;
  border-top: 1px solid rgba(23, 50, 42, .1);
}
.Footer-module-scss-module__kQc2fa__footerLink {
  color: #17322a !important;
}
.Footer-module-scss-module__kQc2fa__footerSubmenuLink {
  color: #46574f !important;
}
.Footer-module-scss-module__kQc2fa__footerCopyright {
  color: #5c6b64 !important;
}

/* 各ページの見出しセクション(faq/access/contact等のheroSection)背景を
   ベージュから、緑味のある落ち着いたトーンへ */
.page-module-scss-module__lCNw9W__hero,
.page-module-scss-module__gcuJEq__section,
.page-module-scss-module__yTTEea__section {
  background: #eef3f0 !important;
}
.page-module-scss-module__lCNw9W__hero *[fill="#000000"],
.page-module-scss-module__lCNw9W__deco1 *,
.page-module-scss-module__lCNw9W__deco2 * {
  stroke: #b9c9c1 !important;
}

/* FAQ開閉ボタン: 素のJSでhidden属性を切り替える実装(faq-accordion.js)に
   合わせて、開いた状態(aria-expanded=true)で矢印を反転させる */
[aria-expanded="true"] .page-module-scss-module__lCNw9W__arrowIcon {
  transform: rotate(180deg);
}
