/* @import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;600&display=swap'); */
/* @font-face {
  font-family: 'Noto Serif JP';
  src: url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP') format('otf');
  font-weight: 400;
} */


body {
  /*max-width: 60rem;*/
  margin-left: auto;
  margin-right: auto;
  background-color: #222;
}

.container-fluid {
  /*max-width: 60rem;*/
  margin: 0 auto;
  padding: 0;
}

a, a:hover, a:active {
  color: #fc6;
}

.bg-dark {
  background-color: #222 !important;
}

#main-contents {
  max-width: 70rem;
  padding-left: 1rem;
  padding-right: 1rem;
  margin-left: auto;
  margin-right: auto;
}

#navbar {
  /*top: -4em;*/
  top: -2em;
  opacity: 0.01;
  padding: 2em 1em;
  font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", serif, 'Noto Serif JP';
  /* font-family: "Noto Serif JP"; */
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto;
/*  height: 9rem;*/
}

.navbar-brand {
  font-size: 2rem;
  font-weight: 600;
  letter-spacing: .5em;
}
.navbar-dark .navbar-toggler {
    border-color: rgba(255,255,255, .5);
}
.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255, 1)' stroke-width='4' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}
#top-img {
  position: absolute;
  top: 0;
  /*max-height: 100%;*/
  /*max-width: 100%;*/
  object-fit: cover;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  zoom: 1;
  opacity: 0;
  /*display: none;*/
}
#about {
/*  font-family: 'Noto Serif JP', serif;*/
/*  max-width: 35em;*/
  max-width: 50em;
}

.swiper {
  /*margin-top: 6.8rem;*/
  height:  30rem;
}

.aspect-wrap {
  position: relative;
  height: 30rem;
}

.aspect-wrap img {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

h2 {
/*  font-family: 'Noto Serif JP', serif;*/
  font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", serif, 'Noto Serif JP';
  text-align: center;
  /*color: dimgrey;*/
  color: white;
  font-size: 3rem;
  font-weight: bold;
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.carousel-caption {
  font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", serif, 'Noto Serif JP';
  background-color: rgba(255,255,255, .5);
  padding-top: .5rem;
  padding-bottom: 0;
  border-radius: 2rem;
}

.service {
  text-align: center;
}

.service h3 {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
/*  font-family: 'Noto Serif JP', serif;*/
  font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", serif, 'Noto Serif JP';
}
.service h3::before {
  content: "「";
  margin-right: .5rem;
}
.service h3::after {
  content: "」";
  margin-left: .5rem;
}
.service p {
  text-align: left;
}

.service i.fa-inverse {
  color: #888;
}

.service i.fa-background {
  color: white;
}

dl {
  display: table;
  width: 100%;
  font-size: 1.2rem;
}

.table-row:first-child {
  border-top: none;
}

.table-row {
  border-top: 1px solid #ccc;
  display: block;
  margin: 0 auto;
  padding: 0 1rem;
}

dt {
  display: table-cell;
  font-weight: normal;
  min-width: 10rem;
  padding: 1.5rem 0;
}

dd {
  display: table-cell;
  padding: 1.5rem 0;
}

#recruit_contents h3 {
  border: 1px white solid;
  padding: .5rem;
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 1rem;
}

#recruit_contents .table-row {
  border: none;
}

#recruit_contents dt, #recruit_contents dd {
  padding: .5rem 0;
}

.mapouter {
  height: 500px;
  background-color: grey;
}

.offset_y_for_navbar {
  padding-top: 9rem;
  margin-top: -6rem;
}

@media (max-width: 768px) {
  dl {
    font-size: 1rem;
  }

  #navbar {
    padding: .5em 1em;
  }

  #navbarCollapse {
    text-align: center;
  }
  dt {
    min-width: 0;
    width: 7.5em;
    padding-right: .5em;
  }

  .carousel-caption h3 {
    font-size: .8rem;
  }
}

@media (max-width: 420px) {
  dt {
    min-width: 0;
    width: 4.5em;
    padding-right: .5em;
  }
  h2 {
    font-size: 2.5rem;
  }
}