@charset "UTF-8";
/** CSS Grid Layoutで複数の行を指定するmixin */
/** CSS Grid Layoutで複数の列を指定するmixin */
.top {
  letter-spacing: 0.1em; }

main .main_visual {
  background-image: url("../img/index/img_main_visual.jpg");
  background-size: cover;
  height: 1120px;
  position: relative;
  top: -1px;
  z-index: 0; }

main .main_visual_inner {
  width: 960px;
  min-width: 960px;
  position: absolute;
  top: 330px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 2; }

main .main_logo {
  width: 264px;
  height: 156px;
  margin: 0 auto; }

main .main_logo img {
  margin: 0 auto 0; }

main .wrap_copy {
  width: 960px;
  padding-bottom: 100px;
  margin-top: 50px; }

main .main_visual_bg {
  background-image: url("../img/index/img_main_visual_bg.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
  width: 100%;
  height: 289px;
  display: block;
  position: absolute;
  bottom: 0;
  z-index: 1; }

main .main_visual_inner h2,
main .main_visual_inner p {
  text-align: center;
  color: #fff; }

main h2.catch_copy {
  font-size: 36px;
  font-size: 2.25rem;
  margin-top: 60px;
  font-weight: bold;
  letter-spacing: 0.2em; }

main p.sub_copy {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: bold; }

main p.body_copy {
  font-size: 16px;
  font-size: 1rem;
  margin-top: 30px;
  line-height: 2; }

main .news {
  width: 100%;
  min-width: 960px;
  background-image: url("../img/index/img_news_bg.jpg");
  background-size: cover;
  background-position: bottom; }

main .news .news_inner {
  padding: 120px 0 254px;
  width: 960px;
  min-width: 960px;
  margin: -100px auto 0;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

main .news h2.news_ttl {
  font-size: 50px;
  font-size: 3.125rem;
  text-align: center;
  position: relative;
  font-family: "ABeeZee", sans-serif;
  letter-spacing: 0.3em; }

main .news h2.news_ttl::before {
  content: "";
  background-image: url("../img/index/img_border.png");
  background-size: 80px 5px;
  width: 80px;
  height: 5px;
  display: block;
  position: absolute;
  left: 50%;
  bottom: -8px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%); }

main .news .news_list {
  margin-top: 56px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

main .news .news_list li a {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 12px 20px 20px;
  border-left: #464646 solid 1px;
  color: #000;
  text-decoration: none;
  display: block; }

main .news .news_list li:last-child {
  border-right: #464646 solid 1px; }

main .news .news_list li dt {
  font-weight: bold; }

main .news .news_list li dd {
  margin-top: 14px; }

main .news .btn_list {
  position: absolute;
  bottom: 0;
  right: 0;
  font-family: "ABeeZee", sans-serif;
  -webkit-transform: translateX(0%) translateY(50%);
  transform: translateX(0%) translateY(50%);
  color: #fff;
  background-color: #000;
  padding: 20px;
  font-size: 14px;
  font-size: 0.875rem;
  text-decoration: none;
  width: 200px;
  height: 62px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

main .news .btn_list .icon_arrow {
  position: absolute;
  right: 26px;
  bottom: 9px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%); }

main .news .btn_list img {
  width: 32px;
  height: 6px; }

main .project {
  padding: 100px 50px 80px;
  width: 960px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

main .project h2 img {
  width: 136px;
  height: 96px;
  margin-right: 54px; }

main .project .project_text {
  color: #000;
  font-size: 16px;
  font-size: 1rem; }

main .project_ttl {
  font-weight: bold; }

main .project .details_text {
  margin-top: 8px;
  letter-spacing: 0;
  font-size: 14px;
  font-size: 0.875rem; }

.btn_application_request {
  position: absolute;
  top: 160px;
  right: 22%;
  z-index: 10;
  display: inline; }

.modal {
  display: none; }

.modal_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (max-width: 768px) {
    .modal_wrap {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; } }

.fancybox-stage > .fancybox-slide > .modal {
  padding: 4.16667%;
  border: solid 3px #e0e0e0;
  border-radius: 1%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  @media only screen and (max-width: 768px) {
    .fancybox-stage > .fancybox-slide > .modal {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
      flex-flow: column wrap;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      padding: 4%; } }
  .fancybox-stage > .fancybox-slide > .modal .modal_news_thumbnail {
    display: block;
    margin-right: 2.6rem;
    margin-bottom: 2.5rem; }
    @media only screen and (max-width: 768px) {
      .fancybox-stage > .fancybox-slide > .modal .modal_news_thumbnail {
        margin-right: 0;
        float: none;
        max-width: 300px;
        width: 100%;
        margin: 0 auto 2.5rem;
        display: block; } }
    .fancybox-stage > .fancybox-slide > .modal .modal_news_thumbnail img {
      width: 300px; }
      @media only screen and (max-width: 768px) {
        .fancybox-stage > .fancybox-slide > .modal .modal_news_thumbnail img {
          width: 100%; } }
  .fancybox-stage > .fancybox-slide > .modal .modal_txt_wrap {
    max-width: 520px;
    width: 100%; }
    @media only screen and (max-width: 768px) {
      .fancybox-stage > .fancybox-slide > .modal .modal_txt_wrap {
        max-width: none;
        width: 100%; } }
    .fancybox-stage > .fancybox-slide > .modal .modal_txt_wrap .data {
      font-size: 13px;
      font-size: 0.8125rem;
      color: #484848; }
    .fancybox-stage > .fancybox-slide > .modal .modal_txt_wrap h3 {
      font-size: 22px;
      font-size: 1.375rem;
      font-weight: bold;
      color: #005bab; }
    .fancybox-stage > .fancybox-slide > .modal .modal_txt_wrap .sub_ttl {
      font-size: 15px;
      font-size: 0.9375rem;
      color: #434343;
      margin-top: 1rem; }
    .fancybox-stage > .fancybox-slide > .modal .modal_txt_wrap .explanatory_text {
      font-size: 15px;
      font-size: 0.9375rem;
      color: #434343;
      margin-top: 1.2rem; }
      @media only screen and (max-width: 768px) {
        .fancybox-stage > .fancybox-slide > .modal .modal_txt_wrap .explanatory_text {
          margin-top: 2.5rem; } }
    .fancybox-stage > .fancybox-slide > .modal .modal_txt_wrap figure img {
      width: 520px;
      margin-top: 30px; }
      @media only screen and (max-width: 768px) {
        .fancybox-stage > .fancybox-slide > .modal .modal_txt_wrap figure img {
          width: 100%; } }
    .fancybox-stage > .fancybox-slide > .modal .modal_txt_wrap figcaption {
      font-size: 15px;
      font-size: 0.9375rem;
      margin-top: 10px;
      text-align: center; }
  .fancybox-stage > .fancybox-slide > .modal .txt {
    margin-top: 2.5rem;
    font-size: 15px;
    font-size: 0.9375rem;
    color: #434343;
    max-width: 880px;
    width: 100%; }

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