.environment {
  --height:880;
  background:#f7f3f4
}

.environment .section-heading {
  padding-top:calc(200 * var(--u))
}

.environment .highlight {
  margin-top:calc(22 * var(--u))
}

.environment-grid {
  display:grid;
  grid-template-columns:repeat(5,calc(212 * var(--u)));
  gap:calc(10 * var(--u));
  width:fit-content;
  margin:calc(49 * var(--u)) auto 0
}

.environment-card {
  position:relative;
  background:#fff;
  width:calc(212 * var(--u));
  height:calc(212 * var(--u));
  border-radius:50%;
  font-size:calc(15 * var(--u));
  font-weight:500;
  color:var(--pink);
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding-bottom:calc(51 * var(--u));
  z-index:0
}

.environment-card:hover {
  box-shadow:0 0 0 3px #e499b240
}

.environment-card span {
  z-index:1
}

.environment>.more-link {
  margin-top:calc(45 * var(--u))
}

.event {
  --height:590
}

.event-banner {
  position:relative;
  display:block;
  top:calc(103 * var(--u));
  margin:auto;
  width:calc(1100 * var(--u));
  height:calc(320 * var(--u));
  border-radius:calc(15 * var(--u));
  color:#fff;
  text-align:left;
  box-shadow:0 2px 12px #0002
}

.event-heading {
  position:absolute;
  left:calc(51 * var(--u));
  top:calc(30 * var(--u))
}

.event-heading strong {
  font-family:Montserrat,sans-serif;
  font-size:calc(50 * var(--u));
  font-weight:500;
  line-height:1.4
}

.event-heading small {
  display:block;
  font-size:calc(16 * var(--u));
  font-weight:700
}

.event-message {
  position:absolute;
  right:calc(30 * var(--u));
  bottom:calc(22 * var(--u));
  font-size:calc(16 * var(--u));
  display:flex;
  align-items:center;
  gap:calc(17 * var(--u))
}

.event-message .arrow {
  background:#fff;
  color:var(--pink);
  width:calc(40 * var(--u));
  height:calc(40 * var(--u))
}

.news {
  --height:950;
  display:grid;
  grid-template-columns:calc(220 * var(--u)) calc(780 * var(--u));
  gap:calc(100 * var(--u));
  padding:calc(194 * var(--u)) calc(170 * var(--u)) 0
}

.news-side .section-heading {
  text-align:left;
  font-size:calc(60 * var(--u))
}

.news-side .section-heading small {
  margin-top:calc(5 * var(--u))
}

.news-filters {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:calc(16 * var(--u));
  margin-top:calc(28 * var(--u))
}

.news-filters a {
  font-size:calc(12 * var(--u));
  border-radius:30px;
  border:1px solid #eee;
  padding:calc(4 * var(--u)) calc(21 * var(--u));
  min-height:24px;
  white-space:nowrap
}

.news-filters a.is-current {
  color:#fff;
  background:var(--pink);
  border-color:var(--pink)
}

.news-side .more-link {
  margin-top:calc(258 * var(--u));
  margin-left:0
}

.news-list {
  display:flex;
  flex-direction:column;
  gap:calc(9 * var(--u))
}

.news-item {
  min-height:calc(163 * var(--u));
  border:1px solid #eee;
  border-radius:calc(10 * var(--u));
  background:#fff
}

.news-item>a {
  width:100%;
  display:flex;
  align-items:center;
  min-height:calc(161 * var(--u));
  gap:calc(35 * var(--u));
  padding:calc(22 * var(--u)) calc(35 * var(--u))
}

.news-thumb {
  display:flex;
  width:calc(130 * var(--u));
  height:calc(94 * var(--u));
  background:#f5f5f2;
  align-items:center;
  justify-content:center;
  flex:none
}

.news-thumb img {
  width:calc(118 * var(--u))
}

.news-content {
  text-align:left;
  flex:1
}

.news-meta {
  display:flex;
  gap:calc(18 * var(--u));
  align-items:center;
  font-size:calc(15 * var(--u));
  font-weight:700
}

.news-category {
  font-size:calc(12 * var(--u));
  font-weight:500;
  white-space:nowrap
}

.news-title {
  display:block;
  margin-top:calc(16 * var(--u));
  font-size:calc(14 * var(--u));
  line-height:1.6
}

.news-item .arrow {
  width:calc(40 * var(--u));
  height:calc(40 * var(--u));
  background:#fff;
  color:var(--pink);
  border:1px solid #eee
}

.news-item:first-child .arrow {
  background:var(--pink);
  color:#fff;
  border-color:var(--pink)
}

.contact {
  --height:385;
  text-align:center;
  padding-top:calc(118 * var(--u))
}

.contact-button {
  display:inline-block;
  position:relative;
  font-size:calc(60 * var(--u));
  line-height:1.15;
  font-family:Montserrat,sans-serif;
  font-weight:500;
  padding-right:calc(70 * var(--u))
}

.contact-button>.arrow {
  position:absolute;
  right:0;
  top:calc(13 * var(--u))
}

.contact-button small {
  display:block;
  font-family:'Source Han Sans JP',sans-serif;
  font-size:calc(20 * var(--u));
  font-weight:700;
  margin-top:calc(12 * var(--u));
  margin-left:calc(70 * var(--u))
}

.site-footer {
  --height:523;
  display:flex;
  align-items:flex-start;
  padding-top:calc(210 * var(--u));
  justify-content:space-between
}

.footer-hospital {
  width:calc(430 * var(--u));
  text-align:center;
  margin-left:calc(70 * var(--u))
}

.footer-hospital>a {
  display:block;
  width:calc(410 * var(--u));
  height:calc(95 * var(--u));
  background:#fff;
  border-radius:calc(10 * var(--u));
  padding:calc(13 * var(--u)) calc(39 * var(--u));
  margin:auto
}

.footer-hospital img {
  width:100%
}

.footer-hospital address {
  font-style:normal;
  font-size:calc(15 * var(--u));
  line-height:1.6;
  margin-top:calc(28 * var(--u))
}

.footer-nav {
  display:grid;
  grid-template-columns:repeat(2,calc(165 * var(--u)));
  gap:calc(15 * var(--u)) calc(26 * var(--u));
  margin-right:calc(83 * var(--u));
  font-size:calc(15 * var(--u));
  font-weight:400
}

.footer-nav>a,.footer-nav>button {
  text-align:left;
  white-space:nowrap
}

.footer-nav>a:not(.pill)::before,.footer-nav>button:not(.pill)::before {
  content:'- ';
}

.footer-nav .pill {
  display:block;
  border-radius:30px;
  background:#fff;
  text-align:center;
  padding:calc(7 * var(--u));
  font-size:calc(14 * var(--u));
  margin-top:calc(16 * var(--u))
}

.copyright {
  position:absolute;
  bottom:calc(12 * var(--u));
  left:0;
  right:0;
  text-align:center;
  font-size:calc(12 * var(--u))
}
