html {
  overflow-x: hidden;
  font-size: 10px;
  margin: 0;
  padding: 0; }

:root {
  --black:#161A2D;
  --purple:#4089F5;
  --blue:#34BDE6; }

body {
  overflow-x: hidden;
  margin: 0;
  padding: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-optical-sizing: auto;
  font-style: normal;
  color: #fff;
  line-height: 1.6;
  background-color: #1B1025;
  font-size: 1.4rem;
  z-index: -2;
  position: relative; }

img {
  vertical-align: bottom;
  display: block;
  margin: 0; }

p {
  margin: 0; }

h1, h2, h3, h4, h5 {
  margin: 0;
  padding: 0; }

a {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
  transition: all .3s; }
  a:hover {
    opacity: .6; }

ul {
  margin: 0;
  padding: 0;
  list-style-type: none; }

li {
  margin: 0;
  padding: 0; }

.pc_only {
  display: none; }

.fv_wrap {
  width: 100vw;
  height: 680px;
  background-image: url("../images/back_img.webp");
  background-repeat: repeat-x;
  background-size: cover;
  position: relative;
  background-position: bottom; }
  .fv_wrap .g_header {
    width: 100%;
    height: 54px;
    padding: 0 10px;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    position: relative;
    z-index: 1000000; }
    .fv_wrap .g_header .logo_wrap {
      width: 210px;
      height: 100%;
      background-color: #fff;
      margin-left: -10px;
      display: flex;
      justify-content: center;
      align-items: center; }
    .fv_wrap .g_header img {
      width: 200px;
      height: auto; }
    .fv_wrap .g_header .header_cta {
      position: fixed;
      top: 14px;
      right: 10px;
      width: 120px;
      height: 30px;
      background-color: var(--purple);
      text-align: center;
      line-height: 30px;
      font-size: 1.2rem;
      font-weight: 700;
      border-radius: 20px;
      z-index: 100000; }
  .fv_wrap .fv_cap {
    font-size: 4.2rem;
    font-weight: 700;
    position: absolute;
    top: 90px;
    left: 10px;
    line-height: 1.3; }
    .fv_wrap .fv_cap span {
      background-color: var(--purple);
      display: inline-block;
      line-height: 1.1;
      margin-top: 6px;
      padding-bottom: 4px; }
  .fv_wrap .mv {
    width: 340px;
    height: auto;
    position: absolute;
    top: 230px;
    right: -80px; }
  .fv_wrap .fv_doc {
    width: calc(100% - 20px);
    max-width: 400px;
    font-size: 1.4rem;
    position: absolute;
    left: 10px;
    top: 440px; }
  .fv_wrap .appeal_wrap {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    position: absolute;
    top: 540px;
    left: 10px; }
    .fv_wrap .appeal_wrap .appeal_items {
      padding: 6px 20px;
      background-color: #fff;
      color: var(--black);
      text-align: center;
      font-size: 1.6rem;
      font-weight: 700;
      margin-right: 6px;
      margin-bottom: 6px;
      border-radius: 6px; }

.fv_cta_wrap {
  width: 100%; }
  .fv_cta_wrap a {
    display: flex;
    background-color: var(--purple);
    justify-content: center;
    align-items: center;
    width: calc(100% - 20px);
    max-width: 400px;
    height: 68px;
    margin-left: auto;
    margin-right: auto;
    margin-top: -40px;
    border-radius: 40px;
    position: relative;
    z-index: 1; }
    .fv_cta_wrap a .cta_30 {
      padding: 2px 14px;
      font-size: 1.6rem;
      font-weight: 700;
      border-radius: 20px;
      border: solid 2px #fff; }
    .fv_cta_wrap a .cta_doc {
      font-size: 2.4rem;
      font-weight: 700;
      margin-left: 12px;
      margin-right: 12px; }
    .fv_cta_wrap a .cta_tri {
      width: 0;
      height: 0;
      border-style: solid;
      border-top: 6px solid transparent;
      border-bottom: 6px solid transparent;
      border-left: 24px solid #fff;
      border-right: 0; }

.jobs {
  width: 100%; }
  .jobs h2 {
    font-size: 3rem;
    font-weight: 700;
    text-align: center;
    margin: 36px auto 16px auto; }
  .jobs h3 {
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 16px; }

.jobs_item_wrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center; }
  .jobs_item_wrap .jobs_item {
    width: 300px;
    background-color: #fff;
    color: var(--black);
    padding: 0 10px 10px 10px;
    box-sizing: border-box;
    font-weight: 700;
    margin-bottom: 16px; }
    .jobs_item_wrap .jobs_item h4 {
      display: inline-block;
      background-color: var(--blue);
      color: #fff;
      font-size: 2rem;
      width: 170px;
      box-sizing: border-box;
      padding-left: 10px;
      padding-top: 4px;
      padding-bottom: 4px;
      margin-left: -10px; }
    .jobs_item_wrap .jobs_item .jobs_img {
      width: 100%;
      height: 140px;
      border-radius: 6px;
      margin-top: 8px; }
    .jobs_item_wrap .jobs_item .planner {
      background-image: url("../images/planner.webp");
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat; }
    .jobs_item_wrap .jobs_item .designer {
      background-image: url("../images/director.webp");
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat; }
    .jobs_item_wrap .jobs_item .engineer {
      background-image: url("../images/engineer.webp");
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat; }
    .jobs_item_wrap .jobs_item .jobs_doc_wrap {
      width: 100%;
      display: flex;
      justify-content: flex-start;
      align-items: center;
      line-height: 1.2;
      margin: 12px 0; }
      .jobs_item_wrap .jobs_item .jobs_doc_wrap h5 {
        font-size: 1.6rem;
        width: 34px;
        text-align: center;
        margin-right: 10px; }
      .jobs_item_wrap .jobs_item .jobs_doc_wrap .income_inner {
        display: flex;
        justify-content: flex-start;
        align-items: center; }
        .jobs_item_wrap .jobs_item .jobs_doc_wrap .income_inner .before {
          font-size: 1.6rem; }
        .jobs_item_wrap .jobs_item .jobs_doc_wrap .income_inner .income_tri {
          width: 0;
          height: 0;
          border-style: solid;
          border-top: 6px solid transparent;
          border-bottom: 6px solid transparent;
          border-left: 10px solid var(--black);
          border-right: 0;
          margin: 0 6px; }
        .jobs_item_wrap .jobs_item .jobs_doc_wrap .income_inner .after {
          font-size: 2rem;
          color: var(--purple); }
          .jobs_item_wrap .jobs_item .jobs_doc_wrap .income_inner .after span {
            font-size: 1.6rem; }

.point {
  width: 100%;
  position: relative;
  background-image: url("../images/back_img2.webp");
  background-position: right;
  background-repeat: repeat-x;
  background-size: cover;
  margin-top: 40px; }
  .point h2 img {
    width: 240px;
    height: auto;
    margin: 0 auto; }
  .point h3 {
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    position: relative;
    margin-bottom: 30px;
    line-height: 1.4; }
    .point h3::after {
      content: '';
      display: block;
      width: 90px;
      height: 4px;
      border-radius: 4px;
      background-color: #fff;
      position: absolute;
      bottom: -10px;
      left: calc(50% - 45px); }
  .point .m_neg_80 {
    margin-top: -80px; }
  .point p {
    width: calc(100% - 20px);
    margin: 0 auto 50px auto; }
  .point .controller {
    width: 200px;
    height: auto;
    position: absolute;
    bottom: -150px;
    right: -40px;
    transform: rotate(-20deg);
    z-index: 1; }

.faq {
  width: 100%;
  position: relative;
  background-image: url("../images/back_img2.webp");
  background-position: center;
  background-repeat: repeat-x;
  background-size: cover;
  margin-top: 60px; }
  .faq h2 img {
    width: 146px;
    height: auto;
    margin: 0 auto;
    position: relative;
    z-index: 1; }
  .faq .faq_ul {
    width: calc(100% - 20px);
    margin: -60px auto 0 auto; }
    .faq .faq_ul .faq_li {
      width: 100%;
      margin-bottom: 30px; }
      .faq .faq_ul .faq_li .li_wrap {
        width: 100%;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        margin-bottom: 10px; }
        .faq .faq_ul .faq_li .li_wrap .q {
          width: 32px;
          height: 32px;
          background-color: #fff;
          color: var(--blue);
          text-align: center;
          line-height: 32px;
          font-size: 1.6rem;
          font-weight: 700; }
        .faq .faq_ul .faq_li .li_wrap .a {
          width: 32px;
          height: 32px;
          background-color: #D8D8D8;
          color: var(--black);
          text-align: center;
          line-height: 32px;
          font-size: 1.6rem;
          font-weight: 700; }
        .faq .faq_ul .faq_li .li_wrap p {
          width: calc(100% - 50px);
          margin-left: 10px;
          margin-top: 4px; }

.footer_cta_wrap {
  width: 100%; }
  .footer_cta_wrap a {
    display: flex;
    background-color: var(--purple);
    justify-content: center;
    align-items: center;
    width: calc(100% - 20px);
    max-width: 400px;
    height: 68px;
    margin-top: 60px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 60px;
    border-radius: 40px;
    position: relative;
    z-index: 1; }
    .footer_cta_wrap a .cta_30 {
      padding: 2px 14px;
      font-size: 1.6rem;
      font-weight: 700;
      border-radius: 20px;
      border: solid 2px #fff; }
    .footer_cta_wrap a .cta_doc {
      font-size: 2.4rem;
      font-weight: 700;
      margin-left: 12px;
      margin-right: 12px; }
    .footer_cta_wrap a .cta_tri {
      width: 0;
      height: 0;
      border-style: solid;
      border-top: 6px solid transparent;
      border-bottom: 6px solid transparent;
      border-left: 24px solid #fff;
      border-right: 0; }

.g_footer {
  width: calc(100% - 20px);
  margin: 0 auto;
  border-top: solid 3px #fff; }
  .g_footer .footer_logo {
    display: block;
    width: 260px;
    margin: 30px auto; }
    .g_footer .footer_logo img {
      width: 100%;
      height: auto; }
  .g_footer .footer_ul {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 60px; }
    .g_footer .footer_ul .footer_li {
      margin-bottom: 16px; }
  .g_footer .privacy {
    width: 80px;
    display: block;
    margin: 20px auto; }
    .g_footer .privacy img {
      width: 100%;
      height: auto; }
  .g_footer small {
    text-align: center;
    width: 100%;
    display: inline-block;
    font-size: 1rem; }

@media screen and (min-width: 500px) {
  .fv_wrap .fv_cap {
    left: calc(50% - 240px); }
  .fv_wrap .mv {
    right: calc(50% - 330px); }
  .fv_wrap .fv_doc {
    left: calc(50% - 240px); }
  .fv_wrap .appeal_wrap {
    left: calc(50% - 240px); }
    .fv_wrap .appeal_wrap .appeal_items {
      padding: 6px 20px;
      background-color: #fff;
      color: var(--black);
      text-align: center;
      font-size: 1.6rem;
      font-weight: 700;
      margin-right: 6px;
      margin-bottom: 6px;
      border-radius: 6px; }
  .fv_wrap .game_text {
    right: calc(50% - 280px); }

  .point .controller {
    right: calc(50% - 270px); } }
@media screen and (min-width: 768px) {
  .sp_only {
    display: none; }

  .fv_wrap .g_header {
    width: 100%;
    height: 70px;
    padding: 0 30px;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    position: relative;
    z-index: 1000000; }
    .fv_wrap .g_header .logo_wrap {
      width: 240px;
      height: 100%;
      background-color: #fff;
      margin-left: -30px;
      display: flex;
      justify-content: center;
      align-items: center; }
    .fv_wrap .g_header img {
      width: 200px;
      height: auto; }
    .fv_wrap .g_header .header_cta {
      top: 14px;
      right: 30px;
      width: 190px;
      height: 48px;
      line-height: 48px;
      font-size: 2rem;
      border-radius: 30px; }
  .fv_wrap .fv_cap {
    font-size: 4.6rem;
    top: 120px;
    left: calc(50% - 360px); }
  .fv_wrap .mv {
    width: 530px;
    top: 220px;
    right: calc(50% - 510px); }
  .fv_wrap .fv_doc {
    max-width: 360px;
    font-size: 1.6rem;
    left: calc(50% - 360px);
    top: 330px; }
  .fv_wrap .appeal_wrap {
    max-width: 400px;
    top: 460px;
    left: calc(50% - 360px); }
    .fv_wrap .appeal_wrap .appeal_items {
      margin-right: 6px;
      margin-bottom: 10px; }
  .fv_wrap .game_text {
    width: 320px;
    top: -40px;
    right: calc(50% - 360px); }

  .fv_cta_wrap {
    width: 100%; }
    .fv_cta_wrap a {
      justify-content: space-between;
      align-items: center;
      width: calc(100% - 60px);
      max-width: 660px;
      height: 80px;
      margin-top: -40px; }
      .fv_cta_wrap a .cta_30 {
        padding: 2px 18px;
        font-size: 2rem;
        font-weight: 700;
        border-radius: 30px;
        border: solid 2px #fff;
        margin-right: -120px;
        margin-left: 100px; }
      .fv_cta_wrap a .cta_doc {
        font-size: 3rem;
        font-weight: 700;
        margin-left: 36px;
        margin-right: 40px; }
      .fv_cta_wrap a .cta_tri {
        width: 0;
        height: 0;
        border-style: solid;
        border-top: 6px solid transparent;
        border-bottom: 6px solid transparent;
        border-left: 24px solid #fff;
        border-right: 0;
        margin-right: 40px; }

  .jobs {
    margin: 0 auto; }
    .jobs h2 {
      font-size: 3.4rem;
      font-weight: 700;
      text-align: center;
      margin: 70px auto 16px auto; }
    .jobs h3 {
      font-size: 2rem;
      font-weight: 700;
      text-align: center;
      margin-bottom: 16px; }

  .jobs_item_wrap {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: center;
    position: relative;
    gap: 10px;
    align-items: stretch; }
    .jobs_item_wrap .jobs_item {
      width: 300px;
      background-color: #fff;
      color: var(--black);
      padding: 0 10px 10px 10px;
      box-sizing: border-box;
      font-weight: 700;
      margin-bottom: 16px;
      scroll-snap-align: center; }
      .jobs_item_wrap .jobs_item h4 {
        display: inline-block;
        background-color: var(--blue);
        color: #fff;
        font-size: 2rem;
        width: 170px;
        box-sizing: border-box;
        padding-left: 10px;
        padding-top: 4px;
        padding-bottom: 4px;
        margin-left: -10px; }
      .jobs_item_wrap .jobs_item .jobs_img {
        width: 100%;
        height: 140px;
        border-radius: 6px;
        margin-top: 8px; }
      .jobs_item_wrap .jobs_item .planner {
        background-image: url("../images/planner.webp");
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat; }
      .jobs_item_wrap .jobs_item .designer {
        background-image: url("../images/director.webp");
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat; }
      .jobs_item_wrap .jobs_item .engineer {
        background-image: url("../images/engineer.webp");
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat; }
      .jobs_item_wrap .jobs_item .jobs_doc_wrap {
        width: 100%;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        line-height: 1.2;
        margin: 12px 0; }
        .jobs_item_wrap .jobs_item .jobs_doc_wrap h5 {
          font-size: 1.6rem;
          width: 34px;
          text-align: center;
          margin-right: 10px; }
        .jobs_item_wrap .jobs_item .jobs_doc_wrap .income_inner {
          display: flex;
          justify-content: flex-start;
          align-items: center; }
          .jobs_item_wrap .jobs_item .jobs_doc_wrap .income_inner .before {
            font-size: 1.6rem; }
          .jobs_item_wrap .jobs_item .jobs_doc_wrap .income_inner .income_tri {
            width: 0;
            height: 0;
            border-style: solid;
            border-top: 6px solid transparent;
            border-bottom: 6px solid transparent;
            border-left: 10px solid var(--black);
            border-right: 0;
            margin: 0 6px; }
          .jobs_item_wrap .jobs_item .jobs_doc_wrap .income_inner .after {
            font-size: 2rem;
            color: var(--purple); }
            .jobs_item_wrap .jobs_item .jobs_doc_wrap .income_inner .after span {
              font-size: 1.6rem; }

  .point {
    margin-top: 60px; }
    .point h2 img {
      width: 280px; }
    .point h3 {
      font-size: 3rem;
      font-weight: 700;
      text-align: center;
      position: relative;
      margin-bottom: 44px; }
      .point h3::after {
        content: '';
        display: block;
        width: 90px;
        height: 4px;
        border-radius: 4px;
        background-color: #fff;
        position: absolute;
        bottom: -10px;
        left: calc(50% - 45px); }
    .point .m_neg_80 {
      margin-top: -80px; }
    .point p {
      width: calc(100% - 60px);
      margin: 0 auto 70px auto;
      font-size: 1.6rem;
      max-width: 800px; }
    .point .controller {
      width: 280px;
      bottom: -190px;
      right: calc(50% - 420px); }

  .faq {
    width: 100%;
    margin-top: 120px; }
    .faq h2 img {
      width: 174px;
      height: auto;
      margin: 0 auto;
      position: relative;
      z-index: 1; }
    .faq .faq_ul {
      width: calc(100% - 60px);
      max-width: 800px;
      margin: -60px auto 0 auto; }
      .faq .faq_ul .faq_li {
        width: 100%;
        margin-bottom: 40px; }
        .faq .faq_ul .faq_li .li_wrap {
          width: 100%;
          display: flex;
          justify-content: flex-start;
          align-items: flex-start;
          margin-bottom: 14px; }
          .faq .faq_ul .faq_li .li_wrap .q {
            width: 46px;
            height: 46px;
            line-height: 42px;
            font-size: 2.4rem; }
          .faq .faq_ul .faq_li .li_wrap .a {
            width: 46px;
            height: 46px;
            line-height: 42px;
            font-size: 2.4rem; }
          .faq .faq_ul .faq_li .li_wrap p {
            width: calc(100% - 60px);
            margin-left: 20px;
            margin-top: 4px;
            font-size: 2rem; }

  .footer_cta_wrap {
    width: 100%; }
    .footer_cta_wrap a {
      justify-content: space-between;
      align-items: center;
      width: calc(100% - 60px);
      max-width: 660px;
      height: 80px;
      margin-top: 80px;
      margin-bottom: 80px; }
      .footer_cta_wrap a .cta_30 {
        padding: 2px 18px;
        font-size: 2rem;
        font-weight: 700;
        border-radius: 30px;
        border: solid 2px #fff;
        margin-right: -120px;
        margin-left: 100px; }
      .footer_cta_wrap a .cta_doc {
        font-size: 3rem;
        font-weight: 700;
        margin-left: 36px;
        margin-right: 40px; }
      .footer_cta_wrap a .cta_tri {
        width: 0;
        height: 0;
        border-style: solid;
        border-top: 6px solid transparent;
        border-bottom: 6px solid transparent;
        border-left: 24px solid #fff;
        border-right: 0;
        margin-right: 40px; }

  .g_footer {
    width: calc(100% - 60px); }
    .g_footer .footer_logo {
      display: block;
      width: 320px;
      margin: 30px auto; }
      .g_footer .footer_logo img {
        width: 100%;
        height: auto; }
    .g_footer .footer_ul {
      width: 100%;
      display: flex;
      flex-direction: column;
      align-items: center; }
      .g_footer .footer_ul .footer_li {
        margin-bottom: 16px;
        font-size: 1.6rem; }
    .g_footer .privacy {
      width: 80px;
      display: block;
      margin: 20px auto; }
      .g_footer .privacy img {
        width: 100%;
        height: auto; }
    .g_footer small {
      text-align: center;
      width: 100%;
      display: inline-block;
      font-size: 1rem; } }
@media screen and (min-width: 1024px) {
  .pc_only {
    display: block; }

  .fv_wrap {
    height: 720px; }
    .fv_wrap .g_header {
      width: 100%;
      height: 70px;
      padding: 0 50px;
      box-sizing: border-box;
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      justify-content: space-between;
      align-items: center;
      position: relative;
      z-index: 1000000; }
      .fv_wrap .g_header .logo_wrap {
        width: 240px;
        height: 100%;
        background-color: #fff;
        margin-left: -50px;
        display: flex;
        justify-content: center;
        align-items: center; }
      .fv_wrap .g_header img {
        width: 200px;
        height: auto; }
      .fv_wrap .g_header .header_cta {
        top: 14px;
        right: 30px;
        width: 190px;
        height: 48px;
        line-height: 48px;
        font-size: 2rem;
        border-radius: 30px; }
    .fv_wrap .fv_cap {
      font-size: 6rem;
      top: 100px;
      left: 50px; }
    .fv_wrap .mv {
      width: 680px;
      top: 140px;
      right: auto;
      left: 530px; }
    .fv_wrap .fv_doc {
      max-width: 480px;
      font-size: 1.6rem;
      left: 50px;
      top: 360px; }
    .fv_wrap .appeal_wrap {
      max-width: 600px;
      top: 500px;
      left: 50px; }
      .fv_wrap .appeal_wrap .appeal_items {
        margin-right: 6px;
        margin-bottom: 10px; }
    .fv_wrap .game_text {
      width: 550px;
      top: -70px;
      right: calc(50% - 610px); }

  .fv_cta_wrap {
    width: 950px;
    margin-left: 50px; }

  .jobs {
    width: 950px;
    margin: 0 auto 0 50px; }
    .jobs h2 {
      font-size: 3.4rem;
      font-weight: 700;
      text-align: left;
      margin: 70px auto 16px auto; }
    .jobs h3 {
      font-size: 2rem;
      font-weight: 700;
      text-align: left;
      margin-bottom: 16px; }

  .jobs_item_wrap {
    justify-content: flex-start; }
    .jobs_item_wrap .jobs_item .jobs_doc_wrap {
      gap: 15px; }

  .point {
    margin-top: 110px;
    padding-left: 50px;
    z-index: -1; }
    .point h2 img {
      width: 585px;
      margin: 0 auto 0 0; }
    .point h3 {
      text-align: left;
      margin-left: 50px; }
      .point h3::after {
        width: 250px;
        left: 0; }
    .point .m_neg_80 {
      margin-top: -170px; }
    .point p {
      width: calc(100% - 60px);
      margin: 0 auto 70px 50px;
      font-size: 1.6rem;
      max-width: 800px; }
    .point .controller {
      width: 440px;
      bottom: 120px;
      right: calc(50% - 660px);
      z-index: -1; }

  .faq {
    width: 100%;
    margin-top: 100px;
    padding-left: 50px; }
    .faq h2 img {
      width: 363px;
      height: auto;
      margin: 0 auto 0 0;
      position: relative;
      z-index: 1; }
    .faq .faq_ul {
      max-width: 800px;
      margin: -150px auto 0 50px; }

  .footer_cta_wrap {
    width: 950px;
    margin-left: 50px; }
    .footer_cta_wrap a {
      margin-bottom: 160px; }

  .g_footer {
    width: calc(100% - 100px); }
    .g_footer .footer_logo {
      display: block;
      width: 320px;
      margin: 30px auto 30px 0; }
      .g_footer .footer_logo img {
        width: 100%;
        height: auto; }
    .g_footer .footer_ul {
      width: 100%;
      display: flex;
      flex-direction: column;
      align-items: flex-start; }
      .g_footer .footer_ul .footer_li {
        margin-bottom: 16px;
        font-size: 1.6rem; }
    .g_footer .privacy {
      width: 80px;
      display: block;
      margin: 20px auto 20px 0; }
      .g_footer .privacy img {
        width: 100%;
        height: auto; }
    .g_footer small {
      text-align: left;
      width: 100%;
      display: inline-block;
      font-size: 1.2rem; } }
