.container {
  max-width: 1200px;
}

.my-image {
  transform: scale(1.1);  /* 1.2倍に拡大 */
  display: block;         /* 中央寄せしたい場合は追加 */
  margin: 0 auto;         /* 中央寄せ */
}

/*  */
/* ▼ 共通メイン用*/
/*  */
main {
  min-height: calc(100vh - 330px);
}

/*  */
/* ▼ ナビゲーション（リンク用） */
/*  */
/* （共通） */
.border-line {
  border-right: 1px solid #555353;
  padding-right: 32px !important;
}
.navbar .nav-link {
  color: #333;
}
.navbar .nav-link {
  font-weight: 600;
  padding-left: 16px !important;
  padding-right: 16px !important;
}
.navbar {
  background-color: #f8e267 /* 濃く明るい黄色 */
}
/* （スマホ用） */
.navbar {
  font-size: 16px;
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
}
/* （PC用） */
@media (min-width: 768px) { /* スマホ以上（768px）の場合のみ適用*/
  .navbar {
    font-size: 18px;
  }
}


/*  */
/* ▼ フッター */
/*  */
/* （共通） */
footer {
  background-color: #eaf2f8; /* ブルーグレー濃いめ */
}
/* （スマホ用） */
.footer-logo {
  height: 15px;
}
.footer-fs p{
  font-size: 14px;
}
/* （PC用） */
@media (min-width: 768px) {
  .footer-logo {
    height: 15px;
    width: auto;
  }
  .footer-fs p{
    font-size: 18px !important;
  }
}
.footer-cal h5 {
  font-size: 14px;
}


/*  */
/* ▼ アクセスマップ */
/*  */
.aceessMap iframe{
  width: 95%;
}
@media (min-width: 768px) { /* スマホ以上（768px）の場合のみ適用*/
.aceessMap iframe{
  width: 60%;
}
}


/*  */
/* ▼ 賃貸情報用 */
/*  */
.property-card {
  display: flex;
  gap: 20px;
  border: 1px solid #ddd;
  padding: 15px;
  margin-bottom: 20px;
  background: #fff;
}

.property-card img {
  width: 200px;
  height: 140px;
  object-fit: cover;
}

.property-info h2 {
  font-size: 20px;
  margin-bottom: 10px;
}

.property-info p {
  margin: 3px 0;
  font-size: 16px;
}

.com-header h1 {
  font-size: 28px;
  font-weight: bold;
  position: relative;
  display: inline-block;
  padding-bottom: 10px;
}

.com-header h1::after {
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  background: #0d6efd; /* Bootstrapの青 */
  margin: 4px auto 0;
  border-radius: 2px;
}

.com-header h2 {
  font-size: 20px;
  font-weight: bold;
  position: relative;
  display: inline-block;
}

.com-header p {
  font-size: 16px;
  color: #383838;
}

/*  */
/* ▼ Everwinクラブ（アルバム用）*/
/*  */
.mainSwiper {
  width: 100%;
  height: 800px;
}

.mainSwiper img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #000;     /* 余白を黒に（任意） */
}

/* サムネイル */
.thumbSwiper {
  margin-top: 10px;
  height: 100px;
}

.thumbSwiper .swiper-slide {
  opacity: 0.5;
  cursor: pointer;
}

.thumbSwiper .swiper-slide-thumb-active {
  opacity: 1;
  border: 2px solid #333;
}

/* サムネイル画像 */
.thumbSwiper img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #000;      /* 余白を黒にする場合 */
}

/* （スマホ用） */
@media (max-width: 600px) {
  .mainSwiper {
    height: 250px;
  }
  .thumbSwiper {
    height: 70px;
  }
}

/* （PC用） */
.album-card {
/*   transition: transform 0.3s, box-shadow 0.3s; */
  height: 250px; /* カード全体の高さを固定 */
}

.album-card img {
  height: 150px;       /* 画像エリアの高さ固定 */
  object-fit: cover;   /* はみ出た部分をトリミング */
}

/* （スマホ用） */
@media (max-width: 768px) {
  .album-card {
    height: auto; /* 高さ固定を解除 */
  }

  .album-card img {
    height: auto;
    aspect-ratio: 4 / 3; /* 比率で制御 */
  }
}

.album-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.2);
}

.year-title {
  border-left: 6px solid #0d6efd;
  padding-left: 12px;
  font-weight: bold;
  margin-bottom: 20px;
}

.year-center {
  text-align: center;
  font-weight: bold;
  margin-bottom: 40px;
}
.year-center span {
  display: block;
  font-size: 0.9rem;
  color: gray;
  letter-spacing: 2px;
}

/*  */
/* ▼ カレンダー用*/
/*  */
.fc {
    height: auto !important;
}

.fc-scroller {
    overflow: hidden !important;
}

.fc .fc-col-header-cell {
    border-bottom: none !important;
}

.fc .fc-daygrid-day {
    border-bottom: none !important;
}

.fc .fc-toolbar-title {
    font-size: 1.2rem;
    text-align: center;
    font-weight: bold;
}
.fc .fc-daygrid-day-frame {
    padding: 1px !important;
    min-height: unset !important;
}
.fc .fc-daygrid-day-number {
    font-size: 0.8rem;
    padding: 1px;
}
/* 週の行をコンパクトに */
.fc .fc-daygrid-body tr {
    height: auto !important;
}
/* 全体を圧縮 */
.fc {
    font-size: 0.75rem;
}

/* 曜日 */
.fc .fc-col-header-cell {
    padding: 1px 0;
}
/* 日付の下線を消す */
.fc a {
    text-decoration: none !important;
    color: inherit; /* 色も統一 */
}

#calendar-this-month,
#calendar-next-month {
    width: 100%;
}

@media (max-width: 768px) {

    #calendar-this-month,
    #calendar-next-month {
        width: 320px;
        margin: 0 auto;
    }

    .fc .fc-daygrid-day {
        height: 40px;
    }

    .fc {
        font-size: 0.7rem;
    }
}

.fc .fc-daygrid-day-events {
    display: none !important;
}

.fc .fc-daygrid-day-frame {
    min-height: unset !important;
    padding: 2px !important;
}

.fc .fc-daygrid-day {
    height: auto !important;
}

.fc .fc-col-header-cell {
    background-color: #83d5ee;
}

/* カレンダー全体の枠 */
.fc-theme-standard .fc-scrollgrid {
  border: 0.2px solid #999;
}

/* 各セルの枠線 */
.fc-theme-standard td,
.fc-theme-standard th {
  border-color: #999;
}

.fc-bg-event.holiday {
  background-color: #fa9b9b;
}

.fc-day-today {
  background-color: transparent !important;
}

.legend-box {
  display: inline-block;
  width: 12px;
  height: 12px;
  background-color: #fa9b9b; /* 好きな色 */
  margin-right: 4px;
}