@charset "UTF-8";
/* GEO GAMES用 */
/*GEO GAME top
------------------------------------------------------------
*/
.main_img_gg {
  margin-top: 163px;
  overflow: hidden;
  width: 100%;
  position: relative;
  line-height: 0;
}
.main_img_gg img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .main_img_gg {
    margin-top: 80px;
  }
}

.gg_gray {
  background: #E4E4DC;
  padding: 7rem 0 10rem;
}
@media screen and (max-width: 767px) {
  .gg_gray {
    padding: 5rem 0 7rem;
  }
}
@media screen and (max-width: 767px) {
  .gg_gray .inner {
    padding: 0;
  }
}

.gg_ttl {
  font-size: 2.25rem;
  font-weight: 700;
  text-align: center;
  color: #040000;
  line-height: 1;
  margin-bottom: 70px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .gg_ttl {
    line-height: 1.5;
    font-size: 6vw;
    margin-bottom: 40px;
  }
}
.gg_ttl.type2 {
  margin-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .gg_ttl.type2 {
    margin-bottom: 70px;
  }
}
.gg_ttl .en {
  margin-bottom: 40px;
  color: #3D3832;
  display: block;
  font-size: 1.25rem;
  font-family: "Josefin Sans", sans-serif;
}
@media screen and (max-width: 767px) {
  .gg_ttl .en {
    font-size: 3.5vw;
    margin-bottom: 5px;
  }
}
.gg_ttl .icon1 {
  top: -160px;
  width: 70px;
}
@media screen and (max-width: 767px) {
  .gg_ttl .icon1 {
    width: 50px;
    top: -120px;
  }
}
.gg_ttl .icon2 {
  top: -150px;
  width: 95px;
}
@media screen and (max-width: 767px) {
  .gg_ttl .icon2 {
    width: 50px;
    top: -100px;
  }
}
.gg_ttl img {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}

.gg_list_lineup {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .gg_list_lineup {
    justify-content: flex-start;
  }
}
.gg_list_lineup li {
  width: 33.3%;
}
@media screen and (max-width: 767px) {
  .gg_list_lineup li {
    width: 50%;
    margin-bottom: 20px;
  }
}
.gg_list_lineup a {
  display: block;
  position: relative;
}
.gg_list_lineup a img {
  transition: 0.3s;
}
.gg_list_lineup a:hover img {
  opacity: 0.4;
  transition: 0.3s;
}
.gg_list_lineup a:hover .name {
  transition: 0.3s;
  opacity: 1;
}
.gg_list_lineup .name {
  position: absolute;
  left: 0;
  right: 0;
  text-align: center;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: 0.3s;
  color: #000;
  font-weight: 700;
  font-size: 1.12rem;
}
@media screen and (max-width: 767px) {
  .gg_list_lineup .name {
    position: inherit;
    left: inherit;
    right: inherit;
    top: inherit;
    opacity: 1;
    transform: none;
    font-size: 0.93rem;
  }
}

.gg_content {
  position: relative;
}
.gg_content .txt_box {
  text-align: center;
  color: #fff;
  position: absolute;
}
.gg_content .txt_box .num {
  font-family: "Josefin Sans", sans-serif;
  font-size: 4.37rem;
  line-height: 1;
  margin-bottom: 25px;
}
@media screen and (max-width: 767px) {
  .gg_content .txt_box .num {
    font-size: 3rem;
  }
}
.gg_content .txt_box .ttl {
  font-size: 1.87rem;
  line-height: 1.5;
  margin-bottom: 25px;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .gg_content .txt_box .ttl {
    font-size: 1.5rem;
  }
}
.gg_content .txt_box .txt {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .gg_content .txt_box .txt {
    font-size: 0.87rem;
  }
}
.gg_content.one_b {
  margin-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .gg_content.one_b {
    margin-bottom: 10px;
  }
}
.gg_content.one_b .txt_box {
  top: 300px;
  left: 150px;
}
@media screen and (max-width: 767px) {
  .gg_content.one_b .txt_box {
    top: 130px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}
.gg_content.two_b {
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .gg_content.two_b {
    margin-bottom: 20px;
  }
}
.gg_content.two_b .txt_box {
  top: 260px;
  right: 250px;
}
@media screen and (max-width: 767px) {
  .gg_content.two_b .txt_box {
    top: 165px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}
.gg_content.three_b .txt_box {
  top: 160px;
  left: 300px;
}
@media screen and (max-width: 767px) {
  .gg_content.three_b .txt_box {
    top: 130px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}

.gg_txt_con {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .gg_txt_con {
    font-size: 0.87rem;
    margin-bottom: 25px;
  }
}

.gg_img img {
  width: 100%;
}

.section_gg {
  padding: 7rem 1rem 5rem 1rem;
}
@media screen and (max-width: 767px) {
  .section_gg {
    padding: 5rem 0rem 5rem 0rem;
  }
}

/*# sourceMappingURL=layout-gg.css.map */