div.swiper-container {
  border-radius: 10px;
}

body#toppage h1 {
  font-size: 1.4rem;
  line-height: 40px;
  padding-left: 0;
  margin-bottom: 25px;
  color: var(--JBAblue);
  border-left: none;
  text-align: center;
}

body#toppage h1 + p {
  display: block;
  text-align: justify;
  font-size: 1.05rem;
  max-width: 800px;
  margin: 20px auto 0;
}

body#toppage h2 {
  font-size: 1.2rem;
  margin-bottom: 5px;
  border-bottom: none;
}

body#toppage h2 + p {
  margin-top: 10px;
  line-height: 1.5;
}

body#toppage h3 {
  font-size: 1rem;
}

body#toppage h3 + p {
  margin-top: 5px;
  font-size: 0.9rem;
  line-height: 1.5;
}

body#toppage section {
  background-color: var(--white);
  border-radius: 10px;
  padding: 8%;
  margin: 30px 0;
}

/*安全講習を受けた施設一覧*/
nav.saftybox a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: var(--blue3);
  padding: 5%;
  margin: 30px 0;
  border-radius: 10px;
  transition: all 0.8s;
}

nav.saftybox a:hover {
  transform: scale(1.02);
  box-shadow: 0 11px 11px -6px rgba(0, 0, 0, 0.35);
}

nav.saftybox a img.saftymark {
  width: 20%;
  border-radius: 10px;
}

nav.saftybox a div.inner {
  display: block;
  width: calc(80% - 50px);
  padding: 0 5%;
}

nav.saftybox a img.arrow {
  width: 50px;
}

/*メニュー*/
nav.menu_nav {
  background-color: var(--blue1);
  padding: 5%;
  border-radius: 10px;
}

div.flexbox3 a {
  background-color: var(--white);
  overflow: hidden;
  border-radius: 10px;
  transition: all 0.8s;
}

div.flexbox3 a:hover {
  transform: scale(1.05);
  box-shadow: 0 11px 11px -6px rgba(0, 0, 0, 0.35);
}

div.flexbox3 div.inner {
  display: flex;
  flex-direction: column;
  padding: 8% 10%;
}

@media only screen and (max-width: 950px) {
  h1 {
    font-size: 1.2rem;
  }

  h2 {
    font-size: 1.2rem;
    line-height: 1.3;
  }

  nav.saftybox a img.arrow {
    width: 35px;
  }

  div.flexbox3 div.inner {
    padding: 5%;
  }
}
