// カレンダー
.tbl_calendar {
  border: none !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
}
.tbl_calendar th, .tbl_calendar td {
  padding: 4px !important;
  text-align: center !important;
  border-bottom: 1px solid #ccc !important;
}

.mainCalendar {
  display: flex;
  justify-content: space-between;
}
.mainCalendar table.tbl_calendar {
    max-width: calc(50% - 30px);
}
.mainCalendar table.tbl_calendar caption{
  font-weight: bold;
    margin: 0px auto 15px;
    font-size: 18px;
}
@media (max-width: 991px) {
  .mainCalendar {
    display: block;
  }
  .mainCalendar table.tbl_calendar {
      max-width: 100%;
  }
}

.minoruenchahonituite {
  font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  line-height: 1.8;
  color: #333;
  background-color: #fdfaf6;
  padding: 20px;
}

.minoruenchahonituite h1,
.minoruenchahonituite h2 {
  color: #2f2f2f;
  border-bottom: 2px solid #ccc;
  padding-bottom: 5px;
  margin-top: 40px;
  margin-bottom: 20px;
}

.minoruenchahonituite ul.breadcrumb {
  list-style: none;
  padding: 0;
  margin: 10px 0 20px;
  font-size: 0.9em;
}

.minoruenchahonituite ul.breadcrumb li {
  display: inline;
}

.minoruenchahonituite ul.breadcrumb li+li::before {
  content: " > ";
  margin: 0 5px;
}

.minoruenchahonituite .section4 > div {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: flex-start;
}

.minoruenchahonituite .section4 img {
  max-width: 300px;
  height: auto;
  border-radius: 8px;
}

.minoruenchahonituite .section4 p {
  margin: 0 0 10px;
}

.minoruenchahonituite table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 20px;
}

.minoruenchahonituite th,
.minoruenchahonituite td {
  border: 1px solid #3A5A3F;
  padding: 10px;
  vertical-align: top;
}

.minoruenchahonituite th {
  width: 30%;
  background-color: #3A5A3F;
  color: #ffffff;
  text-align: left;
  font-weight: bold;
  border: 1px solid #ffffff;
}

.minoruenchahonituite .cara2 {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 20px;
}

.minoruenchahonituite .cara2 div {
  flex: 1 1 45%;
  text-align: center;
}

.minoruenchahonituite .cara2 img {
  max-width: 100%;
  border-radius: 8px;
}

.minoruenchahonituite .section3 .c3 {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 20px;
}

.minoruenchahonituite .section3 .c3 div {
  flex: 1 1 30%;
  text-align: center;
}

.minoruenchahonituite .section3 .c3 img {
  width: 100%;
  border-radius: 8px;
}

.minoruenchahonituite .header_image {
  background-image: url('https://img07.shop-pro.jp/PA01253/077/etc/minoruenchahonituite_backimage01.jpg');
  width: 100%;
  height: 150px;
  background-size: cover;
  background-position: center;
  position: relative;
}

.minoruenchahonituite .header_image h1 {
  position: absolute;
  bottom: 20px;
  left: 30px;
  color: #fff;
  font-size: 2.5em;
  padding: 10px 20px;
  border-radius: 6px;
  z-index: 1; /* フィルターの下に埋もれないように */
}

.main .header_image:after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0; /* 背景画像の上、h1の下に配置 */
}

.company-info {
  text-align: center; /* 真ん中揃え */
  font-family: serif; /* serifフォント */
  padding: 20px;
}

@media (max-width: 768px) {
  .minoruenchahonituite .section4 > div,
  .minoruenchahonituite .cara2,
  .minoruenchahonituite .section3 .c3 {
    flex-direction: column;
  }

  .minoruenchahonituite .section4 img,
  .minoruenchahonituite .cara2 div,
  .minoruenchahonituite .section3 .c3 div {
    max-width: 100%;
  }
}

