@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@500;600;700;800&display=swap");
@keyframes bar-anime {
  0% {
    height: 40px;
    top: -40px;
  }
  75% {
    height: 40px;
    top: 50px;
  }
  100% {
    height: 40px;
    top: 50px;
  }
}
@keyframes bar-anime-sp {
  0% {
    height: 40px;
    top: -40px;
  }
  75% {
    height: 40px;
    top: 40px;
  }
  100% {
    height: 40px;
    top: 40px;
  }
}
/* ---------------------------------------------------------page--------------------------------------------------------- */
main {
  width: 100%;
  padding: 0 0 80px 0;
  margin: 0px;
  position: relative;
  opacity: 1;
}
main #visual {
  width: 100%;
  padding: 85px 0 0 0;
  position: relative;
}
main #visual:not(:last-child) {
  margin-bottom: 80px;
}
main #visual.on .invisual::before {
  opacity: 0.25;
}
main #visual.on .invisual .title {
  clip-path: inset(0 0 0 0);
}
main #visual.on .invisual img {
  clip-path: inset(0 0 0 0);
}
main #visual .invisual {
  width: 100%;
  height: auto;
  position: relative;
  overflow: hidden;
}
main #visual .invisual::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 1;
  transition: opacity 1s ease-in;
}
main #visual .invisual .title {
  width: 100%;
  height: 100%;
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 2;
  clip-path: inset(0 100% 0 0);
  transition: clip-path 0.5s cubic-bezier(0.47, 0, 0.745, 0.715) 0.5s;
}
main #visual .invisual .title h3 {
  margin-bottom: 20px;
  position: relative;
}
main #visual .invisual .title h3 span {
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 3.6rem;
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0em;
  position: relative;
  z-index: 1;
}
main #visual .invisual .title h3::before {
  content: "";
  width: 100%;
  height: 25px;
  background-color: #00479d;
  mix-blend-mode: multiply;
  opacity: 0.75;
  position: absolute;
  bottom: 0px;
  left: 0px;
  display: block;
}
main #visual .invisual img {
  clip-path: inset(0 0 0 100%);
  transition: clip-path 1s cubic-bezier(0.075, 0.82, 0.165, 1) 0s;
}
main .sec#news {
  width: 100%;
  opacity: 0;
  transition: opacity 0.5s ease-in 0s;
}
main .sec#news.on {
  opacity: 1;
}
main .sec#news .inner {
  width: 880px;
  margin: 0 auto;
}
main .sec#news .inner .post {
  text-align: left;
  width: 100%;
}
main .sec#news .inner .post:not(:last-child) {
  padding-bottom: 40px;
  margin-bottom: 40px;
  border-bottom: solid 1px #666;
}
main .sec#news .inner .post dl {
  width: 100%;
  padding: 0 0 0 10px;
  border-left: solid 5px #00479d;
}
main .sec#news .inner .post dl:not(:last-child) {
  margin-bottom: 20px;
}
main .sec#news .inner .post dl dt {
  color: #00479d;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0em;
}
main .sec#news .inner .post dl dd {
  color: #00479d;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0em;
}
main .sec#news .inner .post > div p {
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0em;
}
main .sec#news .inner .post > div p:not(:last-child) {
  margin-bottom: 10px;
}

/* ----------------------------------------------- Media Queries Smartphone ----------------------------------------------- */
@media screen and (max-width: 768px) {
  br.brsp {
    display: block;
  }

  main {
    padding: 0 0 40px 0;
  }
  main #visual {
    padding: 44px 0 0 0;
  }
  main #visual:not(:last-child) {
    margin-bottom: 40px;
  }
  main #visual .invisual .title h3 {
    margin-bottom: 20px;
    position: relative;
  }
  main #visual .invisual .title h3 span {
    color: #FFF;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 2;
    letter-spacing: 0em;
  }
  main #visual .invisual .title p {
    color: #FFF;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 0em;
  }
  main .sec#news .inner {
    width: calc(100% - 40px);
  }
  main .sec#news .inner .post:not(:last-child) {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: solid 1px #666;
  }
  main .sec#news .inner .post dl {
    border-left: solid 3px #00479d;
  }
  main .sec#news .inner .post dl:not(:last-child) {
    margin-bottom: 20px;
  }
  main .sec#news .inner .post dl dt {
    color: #00479d;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0em;
    margin-bottom: 10px;
  }
  main .sec#news .inner .post dl dd {
    color: #00479d;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0em;
  }
  main .sec#news .inner .post > div p {
    color: #000;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0em;
  }
}

/*# sourceMappingURL=style_news.css.map */
