@charset "UTF-8";
/* CSS Document */
/* main
-----------------------------------------------*/
.main {
  position: relative;
  background-color: #f4f8d6;
  padding-bottom: 80px;
  font-family: "Hiragino Kaku Gothic ProN",Meiryo,"MS PGothic",Sans-serif; }
  .main__ttl-wrap {
    overflow: hidden;
    position: relative; }
    .main__ttl-wrap a {
      color: #fff;
      position: absolute;
      left: 15%;
      top: 25px;
      font-size: 1.5rem; }
  .main__ttl {
    background-color: #7bb72c;
    min-height: 100px;
    border-bottom-right-radius: 3000px 400px;
    border-bottom-left-radius: 3000px 400px;
    margin-left: -150px;
    margin-right: -150px;
    padding-left: 150px;
    padding-right: 150px;
    margin-bottom: 50px; }
    .main__ttl h1 {
      line-height: 100px;
      font-size: 36px;
      color: #fff;
      text-align: center; }
  .main__inner {
    max-width: 700px;
    margin: 0 auto; }
  .main .campaign__box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 30px; }
    .main .campaign__box a {
      margin-right: 4%; }
      .main .campaign__box a img {
        width: 300px;
        height: auto; }
  .main .campaign__ttl {
    color: #7bb72c;
    font-size: 1.2rem; }

@media only screen and (max-width: 768px) {
  .main {
    padding-bottom: 30px; }
    .main__ttl-wrap a {
      left: 15%;
      top: 30px; }
    .main__ttl {
      min-height: 100px;
      border-bottom-right-radius: 1000px 400px;
      border-bottom-left-radius: 1000px 400px;
      margin-left: -50px;
      margin-right: -50px;
      padding-left: 50px;
      padding-right: 50px;
      margin-bottom: 30px; }
      .main__ttl h1 {
        font-size: 22px; }
    .main__inner {
      padding: 20px 15px; }
    .main .campaign__box {
      display: block; }
      .main .campaign__box a img {
        width: 100%;
        margin-right: 0;
        margin-bottom: 10px; }
    .main .campaign__text {
      padding: 0 10px; }
    .main .campaign__ttl {
      font-size: 1rem; } }

/* campaign詳細
-----------------------------------------------*/
.campaign-page__head {
  padding-bottom: 50px; }
  .campaign-page__head img {
    max-width: 700px;
    height: auto;
    display: block;
    margin: 0 auto; }

.campaign-page__ttl {
  text-align: center;
  font-size: 22px;
  margin-bottom: 30px; }

.campaign-page__txt {
  background-color: #fff;
  padding: 30px 0; }

.campaign-page__txt-inner {
  max-width: 700px;
  margin: 0 auto; }

.campaign-page__txt-block {
  margin-bottom: 30px; }
  .campaign-page__txt-block h3 {
    color: #7bb72c;
    font-size: 1.2rem;
    margin-bottom: 10px; }
  .campaign-page__txt-block p {
    margin-bottom: 15px; }
  .campaign-page__txt-block ul li {
    list-style-type: disc;
    margin-left: 20px; }

.campaign-page__box {
  background-color: #EFEFEF;
  padding: 15px 15px 5px; }

@media only screen and (max-width: 768px) {
  .campaign-page__head {
    padding: 0 15px 30px; }
    .campaign-page__head img {
      width: 100%; }
  .campaign-page__ttl {
    margin-bottom: 20px; }
  .campaign-page__txt-inner {
    padding: 0 20px; } }

/* アプリバナー
-----------------------------------------------*/
.gpa-banner {
  width: 512px;
  height: auto;
  margin: 0 auto;
  padding: 80px 0 0; }
  .gpa-banner img {
    width: 100%;
    height: auto; }
  @media only screen and (max-width: 768px) {
    .gpa-banner {
      width: 100%;
      padding: 30px 0 50px; }
      .gpa-banner__inner {
        padding: 0 20px; } }
