@charset 'utf-8';

/* ==========================================================================

	ページ独自スタイル

   ========================================================================== */


/*--------------------------------
    テーブル共通
--------------------------------*/

main section .container .inner p {
  margin: 0 auto 4em;
  font-size: 1.5rem;
  line-height: 2;
}

main section .container .inner dl.table {
  font-size: 1.5rem;
  line-height: 1.5;
  margin: 0 auto 4em;
}

main section .container .inner dl.table > div {
  padding: 0;
  justify-content: flex-end
}

main section .container .inner dl.table > div dt {
  width:8em;
  margin: 0 0.5em 0.8em 0;
}

main section .container .inner dl.table > div dd {
  width: calc(100% - 8.5em);
  margin: 0 0 0.8em 0;
  letter-spacing: 0.07em;
}

@media only screen and (max-width: 812px) {
  main section .container .inner dl.table {
    width: 100%;
    /* font-size: 1.4rem; */
  }
  main section .container .inner dl.table > div {
    display: block;
    margin: 0 0 1.4em 0;
  }
  main section .container .inner dl.table > div dt {
    width:100%;
    margin: 0 0 0.5em 0;

  }
  main section .container .inner dl.table > div dd {
    width: 100%;
    margin: 0 0 0.6em 0;
    letter-spacing: 0.04em;
  }
}

/* マップ */

.box.map {
  display: flex;
  flex-wrap: wrap;
}
.box.map > div {
  width: 48%;
  margin: 0 4% 3vw 0;
}
.box.map > div:nth-child(2n) {
  margin-right: 0;
}
.box.map > div div:nth-child(1) {
  font-size: 1.5rem;
}
.box.map > div div:nth-child(2) {
  font-size: 1.5rem;
  line-height: 1.75;
  margin-bottom: 0.5em;
}
.box.map > div div:nth-child(3) iframe {
  width: 100%;
  height: 30vh;
  min-height: 150px;
}

@media only screen and (max-width: 812px) {
  .box.map {
    display: block;
  }

  .box.map > div,
  .box.map > div:nth-child(2n) {
    width: 100%;
    margin: 0 0 10vw 0;
  }

}

/* プロフィール */

.box.profile {
  display: flex;
  flex-wrap: wrap;
}
.box.profile > div:nth-child(1) {
  width: 68%;
  margin: 0 4% 3vw 0;
}
.box.profile > div:nth-child(2) {
  width: 28%;
  margin: 0 0% 3vw 0;
}
.box.profile > div:nth-child(2) img {
  width: 100%;
  height: auto;
  max-width: 300px;
  margin: 0 0 0 auto;
}

.box.profile > div:nth-child(2) .caption {
  text-align: right;
  font-size: 1.2rem;
  font-weight: 700;
  margin-top: 0.5em;
}
@media only screen and (max-width: 812px) {
  .box.profile {
    display: block;
  }
  .box.profile > div:nth-child(1),
  .box.profile > div:nth-child(2) {
    width: 100%;
    margin: 0 0 10vw 0;
  }
  .box.profile > div:nth-child(2) img {
    width: 70%;
    max-width: none;
    margin: 0 auto;
  }
  .box.profile > div:nth-child(2) .caption {
    text-align: center;
    font-size: 1.1rem;
  }
}


