@charset "UTF-8";
/* ==========================================================
  フォント
========================================================== */
/* ==========================================================
  EXTEND
========================================================== */
/* ===================================================================
CSS information
 file name  :top.css
 style info :トップのスタイル
=================================================================== */
#visual {
  background: #fff;
}
@media screen and (min-width: 768px) {
  #visual {
    padding: 3.75rem 0 5rem;
  }
}
@media screen and (max-height: 800px) and (min-width: 768px) {
  #visual {
    padding: 3.75rem 0 4.375rem;
  }
}
@media screen and (max-width: 767px) {
  #visual {
    padding: 26vw 0;
  }
}
#visual h1 {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  #visual h1 {
    width: 30rem;
  }
}
@media screen and (max-height: 800px) and (min-width: 768px) {
  #visual h1 {
    width: 26.5rem;
  }
}
@media screen and (max-width: 767px) {
  #visual h1 {
    width: 75%;
  }
}

#content .mainArea {
  background-color: #17294b;
  background-repeat: no-repeat;
  padding: 3.75rem 0;
  background-image: url(../img/shared/bg_v_pc.jpg);
  background-position: center bottom;
}
@media screen and (min-width: 1921px) {
  #content .mainArea {
    background-size: 150rem;
    background-position: 50% 90%;
  }
}
@media screen and (max-width: 767px) {
  #content .mainArea {
    background-image: url(../img/shared/bg_v_sp.jpg);
    background-position: center top;
    background-size: cover;
    padding: 10vw 5vw;
  }
}
#content .mainArea .date {
  margin: 0 auto 2.75rem;
}
@media screen and (min-width: 768px) {
  :lang(ja) #content .mainArea .date {
    width: 26.125rem;
  }
}
@media screen and (min-width: 768px) {
  :lang(en) #content .mainArea .date {
    width: 32rem;
  }
}
#content .mainArea .thanks {
  font-size: 1.5rem;
}
@media screen and (min-width: 768px) {
  #content .mainArea .thanks {
    margin: -1.25rem 0 2.125rem;
  }
}
@media screen and (max-width: 767px) {
  #content .mainArea .thanks {
    font-size: 4.2vw;
    margin: -2vw 0 6vw;
  }
}
#content .mainArea .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 auto 0;
}
@media screen and (min-width: 768px) {
  #content .mainArea .btn {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0 3%;
    width: min(96%, 58.125rem);
  }
}
@media screen and (max-width: 767px) {
  #content .mainArea .btn {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 4vw 0;
  }
}
@media screen and (min-width: 768px) {
  #content .mainArea .btn li {
    width: 48.4%;
  }
}
@media screen and (max-width: 767px) {
  #content .mainArea .btn li {
    width: 100%;
  }
}
#content .mainArea .btn li a img:hover {
  -webkit-filter: brightness(110%);
          filter: brightness(110%);
}
#content .mainArea .guideline a {
  color: #bcc1e6;
  border: solid 0.125rem #bcc1e6;
  background-image: url(../img/shared/bg_arrow_gray.png);
  background-size: 0.6rem;
  background-repeat: no-repeat;
  background-position: center left 3.75rem;
  vertical-align: bottom;
  border-radius: 6.25rem;
}
@media screen and (min-width: 768px) {
  #content .mainArea .guideline a {
    display: inline-block;
    font-size: 1.125rem;
    padding: 1rem 5rem;
  }
}
@media screen and (max-width: 767px) {
  #content .mainArea .guideline a {
    display: block;
    background-position: center left 6vw;
    padding: 3vw 10vw 3vw;
  }
}
@media screen and (min-width: 768px) {
  #content .mainArea .nextArea {
    width: min(96%, 58.125rem);
    margin: 3.125rem auto 0;
  }
}
@media screen and (max-width: 767px) {
  #content .mainArea .nextArea {
    margin-top: 10vw;
  }
}
#content .mainArea .nextArea h3 {
  font-family: "Anton", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif;
  color: #bcc1e6;
  letter-spacing: 0.06em;
  margin-bottom: 0.3em;
  font-size: 3.75rem;
}
#content .mainArea .nextArea p a {
  display: block;
  border-radius: 1rem;
  border: solid 0.1875rem #d0ffef;
  -webkit-box-shadow: 0 0 1rem 0 #98e1c5;
          box-shadow: 0 0 1rem 0 #98e1c5;
  overflow: hidden;
}
#content .titleArea {
  background: #fff url(../img/shared/bg_dot.gif) repeat 0 0;
}
@media screen and (min-width: 768px) {
  #content .titleArea {
    padding: min(10vw, 6.25rem) 0 min(10vw, 6.75rem);
  }
}
@media screen and (max-width: 767px) {
  #content .titleArea {
    padding: 10vw 0 14vw;
  }
}
#content .titleArea .read {
  margin: 0 1.25rem;
}
#content .titleArea .read p {
  color: #1e3970;
  margin-bottom: 1rem;
}
@media screen and (min-width: 768px) {
  #content .titleArea .read p {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  #content .titleArea .read p {
    font-size: 3.8vw;
  }
}
#content .titleArea .read .anoTxt li {
  color: #949ac6;
}
@media screen and (min-width: 768px) {
  #content .titleArea .read .anoTxt li {
    font-size: 1.0625rem;
  }
}
@media screen and (max-width: 767px) {
  #content .titleArea .read .anoTxt li {
    font-size: 2.8vw;
  }
}
#content .titleArea .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  #content .titleArea .list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0 1.6%;
    width: min(96%, 93.75rem);
  }
}
@media screen and (max-width: 767px) {
  #content .titleArea .list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 5vw;
    width: 90%;
  }
}
#content .titleArea .list li {
  border-radius: 1.25rem;
  overflow: hidden;
  -webkit-box-shadow: 0 0.625rem 0.9375rem rgba(0, 0, 0, 0.4);
          box-shadow: 0 0.625rem 0.9375rem rgba(0, 0, 0, 0.4);
}
@media screen and (min-width: 768px) {
  #content .titleArea .list li {
    width: 18.6%;
  }
}
@media screen and (max-width: 767px) {
  #content .titleArea .list li {
    width: 47%;
  }
}