@charset "UTF-8";
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.top .show_sp {
  display: none !important; }

@media only screen and (max-width: 768px) {
  .top .show_pc {
    display: none !important; }
  .top .show_sp {
    display: block !important; } }

@media only screen and (max-width: 768px) {
  .top .row {
    padding: 0 2.60417vw; } }

.top .banner {
  padding-bottom: 15px;
  text-align: center; }
  .top .banner h2 {
    line-height: 0;
    margin-bottom: 60px; }
    .top .banner h2 img {
      max-width: 100%;
      width: auto;
      height: auto; }
  .top .banner h3 {
    line-height: 0;
    margin-bottom: 80px; }
    .top .banner h3 img {
      width: 435px; }
      @media only screen and (max-width: 768px) {
        .top .banner h3 img {
          width: 56.64063vw; } }
  .top .banner p {
    font-size: 18px;
    line-height: 34px;
    text-align: center; }
    @media only screen and (max-width: 768px) {
      .top .banner p {
        font-size: 3.64583vw;
        line-height: 5.72917vw; } }

.top .point_t {
  background: #E6E7E8;
  padding: 77px 0 130px; }
  @media only screen and (max-width: 768px) {
    .top .point_t {
      padding: 10.02604vw 0 16.92708vw; } }
  .top .point_t_in h3 {
    line-height: 0;
    margin-bottom: 74px;
    text-align: center; }
    .top .point_t_in h3 img {
      width: 468px; }
      @media only screen and (max-width: 768px) {
        .top .point_t_in h3 img {
          max-width: 60.9375vw;
          width: 100%;
          height: auto; } }
  .top .point_t_in .point_t_bl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
    @media only screen and (max-width: 768px) {
      .top .point_t_in .point_t_bl {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column; } }
    .top .point_t_in .point_t_bl + .point_t_bl {
      margin-top: 74px; }
    .top .point_t_in .point_t_bl .point_tt {
      width: 426px; }
      @media only screen and (max-width: 768px) {
        .top .point_t_in .point_t_bl .point_tt {
          position: relative !important;
          width: 100% !important; } }
      .top .point_t_in .point_t_bl .point_tt h4 {
        font-size: 42px;
        line-height: 64px; }
        @media only screen and (max-width: 768px) {
          .top .point_t_in .point_t_bl .point_tt h4 {
            font-size: 6.77083vw;
            line-height: 9.63542vw;
            margin-bottom: 1.30208vw; } }
      .top .point_t_in .point_t_bl .point_tt p {
        font-size: 20px;
        line-height: 29px; }
        @media only screen and (max-width: 768px) {
          .top .point_t_in .point_t_bl .point_tt p {
            font-size: 3.90625vw;
            line-height: 5.07813vw; } }
      .top .point_t_in .point_t_bl .point_tt:before {
        content: '';
        width: 164px;
        height: 83px;
        display: block;
        margin-bottom: 35px; }
    .top .point_t_in .point_t_bl figure {
      width: calc(100% - 426px); }
      @media only screen and (max-width: 768px) {
        .top .point_t_in .point_t_bl figure {
          width: 100%; } }
    .top .point_t_in .point_t_bl:first-of-type .point_tt {
      width: 426px;
      position: absolute;
      top: 50%;
      left: 0;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%); }
      @media only screen and (max-width: 768px) {
        .top .point_t_in .point_t_bl:first-of-type .point_tt {
          top: 0;
          -webkit-transform: translateY(0);
          -ms-transform: translateY(0);
          transform: translateY(0); } }
      .top .point_t_in .point_t_bl:first-of-type .point_tt:before {
        background: url("../images/point_tt01.png") no-repeat;
        background-size: contain; }
    .top .point_t_in .point_t_bl:first-of-type figure {
      width: 641px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      @media only screen and (max-width: 768px) {
        .top .point_t_in .point_t_bl:first-of-type figure {
          width: 100%;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
          flex-flow: row wrap;
          margin-top: 20px; } }
      .top .point_t_in .point_t_bl:first-of-type figure img {
        display: inline-block; }
        .top .point_t_in .point_t_bl:first-of-type figure img:first-child {
          max-width: 257px;
          width: 100%;
          height: auto; }
        .top .point_t_in .point_t_bl:first-of-type figure img:nth-child(2) {
          max-width: 375px;
          width: 100%;
          height: auto; }
    .top .point_t_in .point_t_bl:nth-of-type(2) {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      position: relative;
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start; }
      @media only screen and (max-width: 768px) {
        .top .point_t_in .point_t_bl:nth-of-type(2) {
          -webkit-box-orient: vertical;
          -webkit-box-direction: reverse;
          -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; } }
      .top .point_t_in .point_t_bl:nth-of-type(2) .point_tt {
        width: 426px;
        position: absolute;
        top: 10px;
        right: 0; }
        .top .point_t_in .point_t_bl:nth-of-type(2) .point_tt:before {
          background: url("../images/point_tt02.png") no-repeat;
          background-size: contain; }
      .top .point_t_in .point_t_bl:nth-of-type(2) figure {
        width: 641px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between; }
        @media only screen and (max-width: 768px) {
          .top .point_t_in .point_t_bl:nth-of-type(2) figure {
            width: 100%;
            -webkit-box-orient: horizontal;
            -webkit-box-direction: normal;
            -ms-flex-flow: row wrap;
            flex-flow: row wrap;
            margin-top: 20px; } }
        .top .point_t_in .point_t_bl:nth-of-type(2) figure img {
          display: inline-block;
          max-width: 375px;
          width: 100%; }
    .top .point_t_in .point_t_bl:nth-of-type(3) .point_tt {
      width: 426px;
      position: absolute;
      top: 10px;
      left: 0; }
      .top .point_t_in .point_t_bl:nth-of-type(3) .point_tt:before {
        background: url("../images/point_tt03.png") no-repeat;
        background-size: contain; }
    .top .point_t_in .point_t_bl:nth-of-type(3) figure {
      width: 641px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      @media only screen and (max-width: 768px) {
        .top .point_t_in .point_t_bl:nth-of-type(3) figure {
          width: 100%;
          margin-top: 20px; } }
      .top .point_t_in .point_t_bl:nth-of-type(3) figure img {
        display: inline-block;
        max-width: 447px;
        width: 100%; }

.top .group_t {
  padding: 100px 0; }
  @media only screen and (max-width: 768px) {
    .top .group_t {
      padding: 6.51042vw 0; } }
  .top .group_t .inner {
    max-width: 960px; }
  .top .group_t_in h3 {
    text-align: center;
    font-weight: bold;
    font-size: 25px;
    line-height: 38px;
    letter-spacing: 15px;
    margin-bottom: 90px; }
    @media only screen and (max-width: 768px) {
      .top .group_t_in h3 {
        font-size: 5.85938vw;
        line-height: 8.85417vw; } }
  .top .group_t_in .group_t_lst {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: -20px;
    margin-right: -20px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
    .top .group_t_in .group_t_lst .group_t_bl {
      width: 250px; }
      @media only screen and (max-width: 768px) {
        .top .group_t_in .group_t_lst .group_t_bl + .group_t_bl {
          margin-top: 10.41667vw; } }
      .top .group_t_in .group_t_lst .group_t_bl h4 {
        padding: 0 20px;
        text-align: center;
        font-size: 22px;
        line-height: 1.3;
        font-family: "Roboto", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif;
        margin-bottom: 50px;
        border-left: 1px solid #000;
        min-height: 150px; }
        @media only screen and (max-width: 768px) {
          .top .group_t_in .group_t_lst .group_t_bl h4 {
            min-height: inherit;
            border-left: none; } }
        .top .group_t_in .group_t_lst .group_t_bl h4 span {
          font-size: 15px;
          line-height: 1.5;
          display: block;
          font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif; }
        .top .group_t_in .group_t_lst .group_t_bl h4 i {
          display: block;
          margin-bottom: 25px; }
          .top .group_t_in .group_t_lst .group_t_bl h4 i img {
            width: 89px; }
      .top .group_t_in .group_t_lst .group_t_bl .group_t_ct {
        padding: 0 20px; }
        .top .group_t_in .group_t_lst .group_t_bl .group_t_ct figure {
          line-height: 0;
          margin-bottom: 10px; }
          .top .group_t_in .group_t_lst .group_t_bl .group_t_ct figure img {
            width: 100%; }
          .top .group_t_in .group_t_lst .group_t_bl .group_t_ct figure figcaption {
            text-align: center;
            font-size: 13px;
            line-height: 23px;
            margin-top: 15px; }
        .top .group_t_in .group_t_lst .group_t_bl .group_t_ct p {
          font-size: 13px;
          line-height: 23px;
          text-align: justify; }
      .top .group_t_in .group_t_lst .group_t_bl:first-child h4 {
        border-left: none; }
        .top .group_t_in .group_t_lst .group_t_bl:first-child h4 > img {
          width: 165px; }
      .top .group_t_in .group_t_lst .group_t_bl:nth-child(2) h4 > img {
        width: 141px; }
      .top .group_t_in .group_t_lst .group_t_bl:nth-child(3) h4 > img {
        width: 220px; }
      .top .group_t_in .group_t_lst .group_t_bl:nth-child(4) h4 > img {
        width: 108px; }

.top .anchor_link {
  margin-top: 0;
  padding-top: 0; }
  .top .anchor_link .group_t_in .group_t_lst .group_t_bl {
    padding: 0 20px; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl h4 {
      padding: 0;
      text-align: center;
      font-size: 13px;
      line-height: 1;
      margin-bottom: 15px;
      border-left: none;
      min-height: initial; }
      .top .anchor_link .group_t_in .group_t_lst .group_t_bl h4 i {
        font-style: normal; }
      .top .anchor_link .group_t_in .group_t_lst .group_t_bl h4 img {
        width: 100%;
        height: auto; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl .link {
      margin-top: 30px;
      margin-bottom: 30px;
      text-align: center; }
      .top .anchor_link .group_t_in .group_t_lst .group_t_bl .link li {
        margin-top: 15px; }
      .top .anchor_link .group_t_in .group_t_lst .group_t_bl .link .g_sec_banner {
        background: #66B9B7;
        text-align: center;
        font-size: 15px;
        line-height: 1.4;
        color: #fff;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        height: 58px;
        -webkit-transition: opacity .3s ease-out;
        -o-transition: opacity .3s ease-out;
        transition: opacity .3s ease-out; }
        @media only screen and (max-width: 768px) {
          .top .anchor_link .group_t_in .group_t_lst .group_t_bl .link .g_sec_banner {
            -webkit-box-orient: horizontal;
            -webkit-box-direction: normal;
            -ms-flex-flow: row wrap;
            flex-flow: row wrap;
            text-align: center;
            height: auto;
            font-size: 3.90625vw;
            line-height: 1.4;
            padding: 2.60417vw; } }
        .top .anchor_link .group_t_in .group_t_lst .group_t_bl .link .g_sec_banner:hover {
          opacity: .7; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl .image {
      text-align: center; }
      .top .anchor_link .group_t_in .group_t_lst .group_t_bl .image i {
        display: block;
        margin-bottom: 20px; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl:first-child .image img {
      width: 165px; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl:first-child .image i > img {
      width: 100%;
      height: auto; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl:nth-child(2) .link .g_sec_banner {
      background: #88B5E1; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl:nth-child(2) .image img {
      width: 141px; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl:nth-child(2) .image i > img {
      width: 100%;
      height: auto; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl:nth-child(3) .link .g_sec_banner {
      background: #94B52F; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl:nth-child(3) .image img {
      width: 220px; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl:nth-child(3) .image i > img {
      width: 100%;
      height: auto; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl:nth-child(4) .link .g_sec_banner {
      background: #F47C53; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl:nth-child(4) .image img {
      width: 108px; }
    .top .anchor_link .group_t_in .group_t_lst .group_t_bl:nth-child(4) .image i > img {
      width: 100%;
      height: auto; }
  .top .anchor_link .copy {
    margin-top: 60px;
    font-size: 18px;
    line-height: 34px;
    text-align: center; }
    @media only screen and (max-width: 768px) {
      .top .anchor_link .copy {
        margin-top: 7.8125vw;
        font-size: 3.64583vw;
        line-height: 5.72917vw; } }

.top .g_sec {
  padding: 100px 0; }
  @media only screen and (max-width: 768px) {
    .top .g_sec {
      padding: 6.51042vw 0; } }
  .top .g_sec .inner {
    max-width: 960px; }
    @media only screen and (max-width: 768px) {
      .top .g_sec .inner {
        padding-left: 30px;
        padding-right: 30px; } }
  .top .g_sec_in h3 {
    text-align: center;
    font-size: 22px;
    line-height: 43px;
    margin-bottom: 40px; }
    @media only screen and (max-width: 768px) {
      .top .g_sec_in h3 {
        font-size: 4.16667vw;
        line-height: 1.5; } }
    .top .g_sec_in h3 i {
      display: block;
      margin-bottom: 30px; }
      .top .g_sec_in h3 i img {
        width: 111px; }
    .top .g_sec_in h3 span {
      font-size: 15px;
      line-height: 23px;
      display: block;
      margin-top: 10px; }
      @media only screen and (max-width: 768px) {
        .top .g_sec_in h3 span {
          font-size: 2.99479vw;
          line-height: 1.5; } }
  .top .g_sec_in .g_sec_tt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    @media only screen and (max-width: 768px) {
      .top .g_sec_in .g_sec_tt {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap; } }
    .top .g_sec_in .g_sec_tt h4 {
      width: calc(100% - 708px);
      font-size: 60px;
      line-height: 74px;
      color: #000;
      z-index: 11;
      margin-top: 20px;
      font-family: "Roboto", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif; }
      @media only screen and (max-width: 768px) {
        .top .g_sec_in .g_sec_tt h4 {
          margin-bottom: 6.51042vw; } }
      .top .g_sec_in .g_sec_tt h4 > img {
        width: 201px; }
        @media only screen and (max-width: 768px) {
          .top .g_sec_in .g_sec_tt h4 > img {
            width: 39.25781vw; } }
      @media only screen and (max-width: 768px) {
        .top .g_sec_in .g_sec_tt h4 {
          width: 100%;
          font-size: 7.8125vw;
          line-height: 9.63542vw; }
          .top .g_sec_in .g_sec_tt h4 br {
            display: none; } }
    .top .g_sec_in .g_sec_tt figure {
      width: 708px; }
      @media only screen and (max-width: 768px) {
        .top .g_sec_in .g_sec_tt figure {
          width: 100%; } }
      .top .g_sec_in .g_sec_tt figure img {
        max-width: 100%;
        width: auto;
        height: auto; }
  .top .g_sec_in .g_sec_schedule {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap; }
    @media only screen and (max-width: 768px) {
      .top .g_sec_in .g_sec_schedule {
        margin-bottom: 6.51042vw; } }
    .top .g_sec_in .g_sec_schedule .g_sec_time {
      margin-top: -10px;
      width: calc(100% - 210px);
      padding-right: 35px; }
      @media only screen and (max-width: 1024px) {
        .top .g_sec_in .g_sec_schedule .g_sec_time {
          margin-top: 10px;
          width: 100%;
          padding-right: 0; } }
      .top .g_sec_in .g_sec_schedule .g_sec_time .year {
        font-size: 22px;
        line-height: 1;
        color: #000;
        display: block;
        margin-bottom: 5px;
        font-family: "Roboto", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif; }
        @media only screen and (max-width: 1024px) {
          .top .g_sec_in .g_sec_schedule .g_sec_time .year {
            font-size: 4.16667vw;
            line-height: 1; } }
      .top .g_sec_in .g_sec_schedule .g_sec_time .time {
        font-size: 58px;
        line-height: 1;
        color: #000;
        display: block;
        margin-bottom: 10px;
        font-family: "Roboto", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif; }
        @media only screen and (max-width: 1024px) {
          .top .g_sec_in .g_sec_schedule .g_sec_time .time {
            font-size: 8.85417vw;
            line-height: 1; } }
        .top .g_sec_in .g_sec_schedule .g_sec_time .time small {
          font-size: 32px;
          margin-left: 5px; }
          @media only screen and (max-width: 1024px) {
            .top .g_sec_in .g_sec_schedule .g_sec_time .time small {
              font-size: 5.46875vw;
              line-height: 1; } }
        .top .g_sec_in .g_sec_schedule .g_sec_time .time br {
          display: none; }
          @media only screen and (max-width: 425px) {
            .top .g_sec_in .g_sec_schedule .g_sec_time .time br {
              display: block; } }
      .top .g_sec_in .g_sec_schedule .g_sec_time .schedule {
        font-size: 16px;
        line-height: 1.5;
        color: #000;
        display: block; }
        @media only screen and (max-width: 1024px) {
          .top .g_sec_in .g_sec_schedule .g_sec_time .schedule {
            font-size: 3.38542vw; } }
      .top .g_sec_in .g_sec_schedule .g_sec_time .note {
        font-size: 12px;
        line-height: 18px;
        display: inline-block; }
        @media only screen and (max-width: 1024px) {
          .top .g_sec_in .g_sec_schedule .g_sec_time .note {
            font-size: 2.86458vw; } }
      .top .g_sec_in .g_sec_schedule .g_sec_time dl {
        margin-top: 30px;
        margin-bottom: 30px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
        @media only screen and (max-width: 1024px) {
          .top .g_sec_in .g_sec_schedule .g_sec_time dl {
            display: block; } }
        .top .g_sec_in .g_sec_schedule .g_sec_time dl dt {
          width: 72px;
          font-size: 17px;
          line-height: 1;
          color: #fff;
          text-align: center;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          background: #F15B67; }
          @media only screen and (max-width: 1024px) {
            .top .g_sec_in .g_sec_schedule .g_sec_time dl dt {
              font-size: 6.11979vw;
              line-height: 1;
              width: 100%;
              padding: 2.60417vw;
              margin-bottom: 3.90625vw; } }
        .top .g_sec_in .g_sec_schedule .g_sec_time dl dd {
          width: calc(100% - 72px);
          padding-left: 15px; }
          @media only screen and (max-width: 1024px) {
            .top .g_sec_in .g_sec_schedule .g_sec_time dl dd {
              width: 100%;
              padding-left: 0; } }
          .top .g_sec_in .g_sec_schedule .g_sec_time dl dd p {
            font-size: 19px;
            line-height: 29px;
            color: #F15B67;
            display: block;
            margin-bottom: 5px; }
            @media only screen and (max-width: 1024px) {
              .top .g_sec_in .g_sec_schedule .g_sec_time dl dd p {
                font-size: 3.77604vw;
                line-height: 1.5; } }
          .top .g_sec_in .g_sec_schedule .g_sec_time dl dd ul li {
            font-size: 19px;
            line-height: 29px;
            color: #F15B67;
            letter-spacing: 3px;
            padding-bottom: 3px;
            padding-left: 15px;
            position: relative; }
            @media only screen and (max-width: 1024px) {
              .top .g_sec_in .g_sec_schedule .g_sec_time dl dd ul li {
                font-size: 3.77604vw;
                line-height: 1.5; } }
            .top .g_sec_in .g_sec_schedule .g_sec_time dl dd ul li:before {
              content: '・';
              position: absolute;
              top: 0;
              left: 0;
              display: block; }
            .top .g_sec_in .g_sec_schedule .g_sec_time dl dd ul li + li {
              margin-top: 3px; }
            .top .g_sec_in .g_sec_schedule .g_sec_time dl dd ul li:nth-child(3) {
              border-bottom: 1px solid #F15B67; }
    .top .g_sec_in .g_sec_schedule figure {
      width: 210px;
      margin-top: 40px; }
      @media only screen and (max-width: 768px) {
        .top .g_sec_in .g_sec_schedule figure {
          width: auto;
          margin-top: 0;
          width: 100%;
          text-align: center; } }
      .top .g_sec_in .g_sec_schedule figure img {
        width: 211px;
        height: auto;
        margin-bottom: 10px; }
        @media only screen and (max-width: 768px) {
          .top .g_sec_in .g_sec_schedule figure img {
            width: 54.94792vw; } }
      .top .g_sec_in .g_sec_schedule figure figcaption {
        font-size: 11.3px;
        line-height: 1.5; }
        @media only screen and (max-width: 768px) {
          .top .g_sec_in .g_sec_schedule figure figcaption {
            font-size: 2.86458vw; } }
  .top .g_sec_in .g_sec_box {
    background: #E6E7E8; }
    .top .g_sec_in .g_sec_box figure img {
      width: 100%; }
    .top .g_sec_in .g_sec_box dl {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      padding: 15px 0; }
      .top .g_sec_in .g_sec_box dl dt {
        font-size: 32px;
        width: 340px;
        padding: 0 20px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        color: #000;
        border-right: 1px solid #000; }
        .top .g_sec_in .g_sec_box dl dt span {
          width: 57px;
          height: 57px;
          border-radius: 100%;
          display: block;
          font-size: 14px;
          line-height: 1;
          background: #fff;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          font-weight: bold;
          color: #000;
          margin-left: 10px; }
        .top .g_sec_in .g_sec_box dl dt em {
          font-size: 35px;
          line-height: 1;
          font-style: normal;
          width: 100%; }
          .top .g_sec_in .g_sec_box dl dt em small {
            font-size: 16px;
            margin-right: 7px; }
            .top .g_sec_in .g_sec_box dl dt em small + small {
              margin-left: 7px; }
        .top .g_sec_in .g_sec_box dl dt i {
          width: 100%;
          font-size: 11px;
          line-height: 1;
          display: block;
          font-style: normal; }
      .top .g_sec_in .g_sec_box dl dd {
        width: calc(100% - 340px);
        padding-left: 10px;
        color: #000; }
        .top .g_sec_in .g_sec_box dl dd span {
          font-size: 22px;
          font-weight: bold;
          margin-bottom: 10px;
          display: block; }
        .top .g_sec_in .g_sec_box dl dd p {
          font-size: 14px;
          line-height: 1.5;
          color: #000; }
          .top .g_sec_in .g_sec_box dl dd p em {
            font-style: normal;
            font-size: 16px;
            display: block;
            margin-bottom: 5px; }
      @media only screen and (max-width: 768px) {
        .top .g_sec_in .g_sec_box dl {
          -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
          .top .g_sec_in .g_sec_box dl dt {
            font-size: 5.46875vw;
            width: 100%;
            border-right: none;
            border-bottom: 1px solid #000;
            padding: 0 2.60417vw 2.60417vw; }
            .top .g_sec_in .g_sec_box dl dt span {
              width: 11.13281vw;
              height: 11.13281vw;
              font-size: 3.125vw;
              margin-left: 1.30208vw; }
            .top .g_sec_in .g_sec_box dl dt em {
              font-size: 5.85938vw;
              margin-bottom: 2.60417vw; }
              .top .g_sec_in .g_sec_box dl dt em small {
                font-size: 3.38542vw;
                margin-right: 1.30208vw; }
                .top .g_sec_in .g_sec_box dl dt em small + small {
                  margin-left: 1.30208vw; }
            .top .g_sec_in .g_sec_box dl dt i {
              font-size: 2.86458vw; }
          .top .g_sec_in .g_sec_box dl dd {
            width: 100%;
            padding-left: 0;
            padding: 1.30208vw 2.60417vw; }
            .top .g_sec_in .g_sec_box dl dd span {
              font-size: 4.16667vw;
              font-weight: bold;
              margin-bottom: 1.30208vw;
              display: block; }
            .top .g_sec_in .g_sec_box dl dd p {
              font-size: 3.125vw;
              line-height: 1.5;
              color: #000; }
              .top .g_sec_in .g_sec_box dl dd p em {
                font-style: normal;
                font-size: 3.38542vw;
                display: block;
                margin-bottom: 0.65104vw; } }
  .top .g_sec_in .g_sec_list {
    margin-top: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: -19px;
    margin-right: -19px;
    margin-bottom: 50px; }
    @media only screen and (max-width: 768px) {
      .top .g_sec_in .g_sec_list {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center; } }
    .top .g_sec_in .g_sec_list li {
      width: 295px;
      margin: 0 19px;
      border-top: 1px solid #000; }
      @media only screen and (max-width: 768px) {
        .top .g_sec_in .g_sec_list li {
          width: 71.61458vw;
          margin: 0; }
          .top .g_sec_in .g_sec_list li + li {
            margin-top: 10.41667vw; } }
      .top .g_sec_in .g_sec_list li h4 {
        font-size: 25px;
        line-height: 1.5;
        text-align: center;
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        height: 82px; }
        @media only screen and (max-width: 768px) {
          .top .g_sec_in .g_sec_list li h4 {
            font-size: 4.55729vw;
            line-height: 1.5;
            height: 16.01563vw; } }
        .top .g_sec_in .g_sec_list li h4 span {
          width: 52px;
          height: 52px;
          border-radius: 100%;
          background: #000;
          display: block;
          font-size: 17px;
          line-height: 1;
          color: #fff;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          margin-left: 15px; }
          @media only screen and (max-width: 768px) {
            .top .g_sec_in .g_sec_list li h4 span {
              font-size: 3.51563vw;
              line-height: 1.5;
              width: 10.15625vw;
              height: 10.15625vw; } }
      .top .g_sec_in .g_sec_list li figure {
        margin-bottom: 10px; }
        .top .g_sec_in .g_sec_list li figure img {
          width: 100%; }
      .top .g_sec_in .g_sec_list li p {
        text-align: center;
        font-size: 17px;
        line-height: 28px; }
        @media only screen and (max-width: 768px) {
          .top .g_sec_in .g_sec_list li p {
            font-size: 3.51563vw;
            line-height: 1.5; } }
        .top .g_sec_in .g_sec_list li p strong {
          color: #F15B67; }
  .top .g_sec_in .g_sec_banner {
    background: #66B9B7;
    text-align: center;
    font-size: 22px;
    line-height: 38px;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 56px;
    -webkit-transition: opacity .3s ease-out;
    -o-transition: opacity .3s ease-out;
    transition: opacity .3s ease-out; }
    @media only screen and (max-width: 768px) {
      .top .g_sec_in .g_sec_banner {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        text-align: center;
        height: auto;
        font-size: 4.16667vw;
        line-height: 1.5;
        padding: 2.60417vw; } }
    .top .g_sec_in .g_sec_banner span {
      font-size: 15px;
      margin-right: 50px; }
      @media only screen and (max-width: 768px) {
        .top .g_sec_in .g_sec_banner span {
          width: 100%;
          font-size: 3.25521vw;
          margin-right: 0;
          display: block; } }
    .top .g_sec_in .g_sec_banner:hover {
      opacity: .7; }
  .top .g_sec_in .linkButton {
    text-align: center;
    font-size: 3.25521vw; }
    .top .g_sec_in .linkButton ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
    .top .g_sec_in .linkButton li {
      margin-top: 2.60417vw; }
  .top .g_sec.g02 .g_sec_in .g_sec_banner {
    background: #88B5E1; }
  .top .g_sec.g02 .g_sec_in .g_sec_tt h4 img {
    width: 130px; }
    @media only screen and (max-width: 768px) {
      .top .g_sec.g02 .g_sec_in .g_sec_tt h4 img {
        width: 76.36719vw; } }
  .top .g_sec.g02 .g_sec_in .g_sec_tt h4 span {
    display: block;
    margin-top: 40px; }
    @media only screen and (max-width: 768px) {
      .top .g_sec.g02 .g_sec_in .g_sec_tt h4 span {
        margin-top: 5.20833vw; } }
    @media only screen and (max-width: 768px) {
      .top .g_sec.g02 .g_sec_in .g_sec_tt h4 span img {
        width: 25.39063vw; } }
  .top .g_sec.g03 .g_sec_in .g_sec_banner {
    background: #94B52F; }
  .top .g_sec.g03 .g_sec_in .g_sec_tt h4 > img {
    width: 298px; }
    @media only screen and (max-width: 768px) {
      .top .g_sec.g03 .g_sec_in .g_sec_tt h4 > img {
        width: 58.20313vw; } }
  .top .g_sec.g04 .g_sec_in .g_sec_banner {
    background: #F47C53; }
  .top .g_sec.g04 .g_sec_in .g_sec_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-left: -19px;
    margin-right: -19px;
    margin-bottom: 50px; }
    @media only screen and (max-width: 768px) {
      .top .g_sec.g04 .g_sec_in .g_sec_list {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center; } }
    .top .g_sec.g04 .g_sec_in .g_sec_list li {
      width: 520px;
      margin: 0 19px;
      border-top: 1px solid #000; }
      .top .g_sec.g04 .g_sec_in .g_sec_list li:last-child {
        width: 378px; }
        @media only screen and (max-width: 768px) {
          .top .g_sec.g04 .g_sec_in .g_sec_list li:last-child {
            width: 67.70833vw; } }
      @media only screen and (max-width: 768px) {
        .top .g_sec.g04 .g_sec_in .g_sec_list li {
          margin-bottom: 20px;
          width: 67.70833vw; } }
  .top .g_sec.g04 .g_sec_in .g_sec_tt h4 > img {
    width: 218px; }
    @media only screen and (max-width: 768px) {
      .top .g_sec.g04 .g_sec_in .g_sec_tt h4 > img {
        width: 42.57813vw; } }


   div.osechi_btn_form {
     text-align: center;
     margin: 0 auto;
     width: 95%;
    }

    div.osechi_btn_sheet {
      text-align: center;
      margin-bottom: 55px;
      margin: 0 auto;
      width: 95%;
     }


     div.osechi_btn_form img{
      margin-bottom: 55px;
     }

     div.osechi_btn_sheet img{
      margin-bottom: 55px;
     }

     h2.osechi2019 {
       width: 75% ;
       margin: 0 auto;
     }
