.bb-admission-guide {
  margin: 2.5rem 0;
  padding: clamp(16px, 3vw, 32px);
  border-block: 1px solid #c8d8d1;
  background: #f5f8f6;
  color: #173830;
  word-break: keep-all;
}
.bb-admission-guide .bb-admission-kicker, .bb-admission-guide .cat {
  color: #37645b; font-size: .8rem; font-weight: 700; letter-spacing: .035em;
}
.bb-admission-guide .post-grid {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-block: 1.25rem;
}
.bb-admission-guide a.pcard {
  display: flex; flex-direction: column; min-width: 0; padding: 0; overflow: hidden;
  background: white; border: 1px solid #d3ded9; border-radius: 9px; color: inherit; text-decoration: none;
}
.bb-admission-guide a.pcard:hover, .bb-admission-guide a.pcard:focus-visible {
  border-color: #236658; outline: 2px solid #236658; outline-offset: 2px;
}
.bb-admission-guide .thumb { aspect-ratio: 1; overflow: hidden; }
.bb-admission-guide .thumb img { display: block; width: 100%; height: 100%; object-fit: cover; margin: 0; }
.bb-admission-guide .info { padding: clamp(10px, 2vw, 18px); }
.bb-admission-guide .info h3 { margin: .25rem 0 .5rem; font-size: clamp(1rem, 1.5vw, 1.23rem); line-height: 1.35; }
.bb-admission-guide .more { white-space: pre-line; font-size: .9rem; line-height: 1.55; color: #40544f; }
.bb-admission-guide .bb-admission-contact { font-size: .94rem; }
.bb-admission-guide .bb-admission-contact a { color: #1c5549; font-weight: 700; }
.bb-reception-photo { width: min(100% - 40px, 880px); margin: 2rem auto; }
.bb-reception-photo img { width: 100%; display: block; border-radius: 8px; }
@media (max-width: 699px) {
  .bb-admission-guide .post-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
}
@media (max-width: 359px) {
  .bb-admission-guide .post-grid { grid-template-columns: minmax(0,1fr); }
}
