@charset "UTF-8";

@font-face {
  font-family: 'MyYuGothicM';
  font-weight: normal;
  src: local("YuGothic-Medium"), local("Yu Gothic Medium"), local("YuGothic-Regular");
}

.l-contents {
  overflow: hidden;
  font-family: MyYuGothicM, '游ゴシック体', 'Yu Gothic', YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.l-contents__inr {
  max-width: 980px;
  margin: 0 auto;
  padding: 0 20px;
}

.l-contents img {
  max-width: 100%;
}

@media (max-width: 767px) {
  .l-contents {
    font-size: 4.26667vw;
  }
}

.p-mainvisual {
  position: relative;
  text-align: center;
  background: url(../img/main.jpg) center 0 no-repeat;
  background-size: 100%;
}

.p-mainvisual h1 {
  padding: 100px 20px;
  color: #FFF;
  font-size: 3.4375rem;
  line-height: 1.2;
  text-shadow: 3px 0 10px rgba(0, 0, 0, 0.3), 0 3px 10px rgba(0, 0, 0, 0.3), -3px 0 10px rgba(0, 0, 0, 0.3), 0 -3px 10px rgba(0, 0, 0, 0.3);
}

.p-mainvisual h1 span {
  display: block;
  font-weight: bold;
  font-size: 0.87273em;
}

.p-mainvisual__content {
  padding: 2.72727% 20px 9.09091%;
  background: rgba(26, 99, 145, 0.8);
}

.p-mainvisual__content h2 {
  margin-bottom: 2.72727%;
  color: #FFF;
  font-size: 1.4375rem;
  font-weight: bold;
}

.p-mainvisual__box {
  padding: 40px;
  max-width: 660px;
  margin: 0 auto 0.90909%;
  background: rgba(255, 255, 255, 0.67);
}

.p-mainvisual__box dt {
  margin-bottom: 1em;
  color: #1a6391;
  font-size: 1.25rem;
  font-weight: bold;
}

.p-mainvisual__box dd {
  text-align: left;
}

@media (max-width: 1366px) {
  .p-mainvisual {
    background-size: 1366px;
  }
}

@media (max-width: 767px) {
  .p-mainvisual {
    padding-top: 41.65447%;
    background-image: url(../img/main_sp.jpg);
    background-size: 100%;
  }

  .p-mainvisual h1 {
    position: absolute;
    top: 0;
    left: 50%;
    width: calc(100% - 40px);
    margin-top: 4.54545%;
    padding: 9.09091% 20px;
    font-size: 1.25em;
    transform: translate(-50%, 0);
  }

  .p-mainvisual__content h2 {
    font-size: 1.0625em;
  }

  .p-mainvisual__box {
    padding: 3.63636%;
  }

  .p-mainvisual__box dt {
    margin-bottom: .5em;
    font-size: 1.0625em;
  }
}

.p-section {
  padding: 0 0 7.27273% 0;
}

.p-section--bg {
  position: relative;
  padding-left: calc(50vw - 50%);
  padding-right: calc(50vw - 50%);
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  background: #f6f6f6;
}

.p-section__heading {
  padding: 7.27273% 0 2.18182%;
  margin-bottom: 4.54545%;
  text-align: center;
  border-bottom: 2px solid #CCC;
  font-size: 2.125rem;
  font-weight: bold;
}

.p-section__body {
  padding: 0 5.10204%;
}

.p-section__body>* {
  margin-top: 3.63636%;
}

.p-section__body>*:first-child {
  margin-top: 0;
}

@media (max-width: 767px) {
  .p-section {
    padding-bottom: 7.27273%;
  }

  .p-section__heading {
    padding-top: 7.27273%;
    font-size: 1.25em;
  }

  .p-section__body {
    padding: 0;
  }
}

.p-aside {
  max-width: 560px;
  margin: 0 auto;
  padding: 11.81818% 0 7.27273%;
  text-align: center;
  font-size: 1.25rem;
}

.p-aside__ttl {
  padding: 0 0 .5em;
  margin-bottom: 1em;
  font-size: 1.375rem;
  font-weight: bold;
  border-bottom: 1px solid #CCC;
}

.p-aside .tel {
  font-weight: bold;
}

@media (max-width: 767px) {
  .p-aside {
    padding: 4.54545% 0 0;
    font-size: 1.0625em;
  }

  .p-aside__ttl {
    font-size: 1.25em;
  }

  .p-aside small {
    display: block;
  }
}

.c-list li {
  position: relative;
  padding-left: 1em;
}

.c-list li::before {
  content: "・";
  position: absolute;
  left: 0;
}

.c-fig {
  display: flex;
  margin-left: -10px;
  margin-right: -10px;
}

.c-fig>* {
  box-sizing: border-box;
  padding: 0 10px;
}

.c-fig__caption {
  width: 57.77778%;
}

.c-fig__img {
  width: 42.22222%;
}

.c-fig__ttl {
  margin-bottom: .5em;
  font-size: 1.25rem;
  font-weight: bold;
  color: #1a6391;
}

@media (max-width: 767px) {
  .c-fig {
    flex-wrap: wrap;
  }

  .c-fig>* {
    width: 100%;
    margin-bottom: 3.63636%;
  }

  .c-fig__ttl {
    font-size: 1.0625em;
  }
}

.c-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.c-table th,
.c-table td {
  padding: 1em;
  border: 1px solid #bebebe;
  font-size: 0.875rem;
}

.c-table th {
  background: #c8dfee;
  font-weight: bold;
}

.c-table th.w160 {
  width: 18.18182%;
}

.c-table th.w280 {
  width: 31.81818%;
}

.c-table td {
  background: #FFF;
}

@media (max-width: 767px) {

  .c-table th,
  .c-table td {
    font-size: 0.625em;
  }
}

@media (max-width: 767px) {
  .u-only-pc {
    display: none !important;
  }
}

.u-only-sp {
  display: none !important;
}

@media (max-width: 767px) {
  .u-only-sp {
    display: block !important;
  }
}

th {
  text-align: left;
}

@media only screen and (max-width: 767px){
  abbr, address, article, aside, audio, b, blockquote, 
  body, canvas, caption, cite, code, dd, del, details, 
  dfn, div, dl, dt, em, fieldset, figcaption, figure, 
  footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, 
  html, i, iframe, img, ins, kbd, label, legend, li, mark, 
  menu, nav, object, ol, p, pre, q, samp, section, small, 
  span, strong, sub, summary, sup, table, tbody, td, tfoot, 
  th, thead, time, tr, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
  }
  }

@media only screen and (max-width: 767px){
.container_nav_subinfo .series_subinfo .elem_subinfo {
  font-size: 14px;
}
}

/*# sourceMappingURL=style.css.map */