@charset "UTF-8";
/*--- 共通 ---*/
body {
  background-image: url(../images/bg_yellow_pc.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  color: #67544b;
  padding-bottom: 125px; }
  @media screen and (max-width: 1240px) {
    body {
      padding-bottom: 10.1vw; } }
  @media screen and (max-width: 768px) {
    body {
      background-image: url(../images/bg_yellow_sp.jpg); } }

header {
  margin-bottom: 140px; }
  @media screen and (max-width: 1240px) {
    header {
      margin-bottom: 11.3vw; } }
  @media screen and (max-width: 768px) {
    header {
      margin-bottom: 15.3vw; } }
  header .title_box {
    background-image: url(../images/title_bg_pc.png);
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: center top; }
    @media screen and (max-width: 768px) {
      header .title_box {
        background: none; } }
    header .title_box h1 {
      max-width: 1240px;
      width: 100%;
      margin-left: auto;
      margin-right: auto; }
  header .area {
    width: 520px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0px; }
    @media screen and (max-width: 1240px) {
      header .area {
        width: 41.9vw; } }
    @media screen and (max-width: 768px) {
      header .area {
        width: 70.7vw;
        margin-top: 4vw; } }
  header .txt01 {
    width: 850px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 30px; }
    @media screen and (max-width: 1240px) {
      header .txt01 {
        width: 68.5vw;
        margin-top: 2.4vw; } }
    @media screen and (max-width: 768px) {
      header .txt01 {
        width: 86.7vw;
        margin-top: 4.7vw; } }
  header .txt02 {
    font-size: 14px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0;
    margin-top: 1.2em;
    line-height: 1.9em; }
    @media screen and (max-width: 1240px) {
      header .txt02 {
        font-size: 1.1vw; } }
    @media screen and (max-width: 768px) {
      header .txt02 {
        font-size: 2.7vw;
        line-height: 1.9em;
        letter-spacing: -0.05em;
        margin-top: 5.7vw; } }
  header .btn_list {
    max-width: 740px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 50px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center; }
    @media screen and (max-width: 1240px) {
      header .btn_list {
        max-width: none;
        width: 59.7vw;
        margin-top: 4vw; } }
    @media screen and (max-width: 768px) {
      header .btn_list {
        width: 68.8vw;
        margin-top: 7.3vw;
        display: block; } }
    header .btn_list li {
      width: 48.6%; }
      @media screen and (max-width: 768px) {
        header .btn_list li {
          width: 100%; }
          header .btn_list li + li {
            margin-top: 2.9vw; } }

main .head_bg01 {
  background-image: url(../images/main_bg_head_pc.svg);
  background-repeat: no-repeat;
  background-size: 1200px auto;
  background-position: center top;
  position: relative; }
  @media screen and (max-width: 1240px) {
    main .head_bg01 {
      background-size: 96.8vw auto; } }
  @media screen and (max-width: 768px) {
    main .head_bg01 {
      background-image: url(../images/main_bg_head_sp.svg);
      background-size: 92.5% auto; } }
main .content_bg {
  background-image: url(../images/main_bg_content_pc.svg);
  background-repeat: repeat-y;
  background-size: 1200px auto;
  background-position: center top;
  padding-top: 145px;
  padding-bottom: 110px; }
  @media screen and (max-width: 1240px) {
    main .content_bg {
      background-size: 96.8vw auto;
      padding-top: 11.7vw;
      padding-bottom: 8.9vw; } }
  @media screen and (max-width: 768px) {
    main .content_bg {
      background-image: url(../images/main_bg_content_sp.svg);
      background-size: 92.5% auto;
      padding-bottom: 12vw;
      padding-top: 13.3vw; } }
main .flower01 {
  position: absolute;
  top: -156px;
  right: 0;
  width: 100%;
  height: 310px;
  background-image: url(../images/flower_right_bg_pc.png);
  background-repeat: no-repeat;
  background-size: 1920px auto;
  background-position: right center; }
  @media screen and (max-width: 1920px) {
    main .flower01 {
      right: auto;
      left: 0;
      background-size: 1920px auto;
      background-position: center center; } }
  @media screen and (max-width: 1240px) {
    main .flower01 {
      top: -12.6vw;
      height: 25vw;
      background-size: 154.8vw; } }
  @media screen and (max-width: 768px) {
    main .flower01 {
      display: none; } }
main .flower02 {
  position: absolute;
  top: 183px;
  left: 0;
  width: 100%;
  height: 310px;
  background-image: url(../images/flower_left_bg_pc.png);
  background-repeat: no-repeat;
  background-size: 1920px auto;
  background-position: left center; }
  @media screen and (max-width: 1920px) {
    main .flower02 {
      left: auto;
      right: 0;
      background-size: 1920px auto;
      background-position: center center; } }
  @media screen and (max-width: 1240px) {
    main .flower02 {
      top: 14.8vw;
      height: 25vw;
      background-size: 154.8vw; } }
  @media screen and (max-width: 768px) {
    main .flower02 {
      display: none; } }
main .sp_flower_left {
  display: none; }
  @media screen and (max-width: 768px) {
    main .sp_flower_left {
      display: block;
      position: absolute;
      left: 0;
      width: 27.5vw; } }
main .sp_flower_right {
  display: none; }
  @media screen and (max-width: 768px) {
    main .sp_flower_right {
      display: block;
      position: absolute;
      right: 0;
      width: 26.1vw; } }
main .campaign_section {
  max-width: 1200px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  background-repeat: no-repeat;
  background-size: 1200px auto;
  background-position: center top; }
  @media screen and (max-width: 1240px) {
    main .campaign_section {
      max-width: none;
      width: 96.8vw;
      background-size: 96.8vw auto; } }
  @media screen and (max-width: 768px) {
    main .campaign_section {
      width: 100%;
      background-size: 92.5% auto;
      position: relative; } }
  main .campaign_section + .campaign_section {
    margin-top: 145px; }
    @media screen and (max-width: 1240px) {
      main .campaign_section + .campaign_section {
        margin-top: 11.7vw; } }
    @media screen and (max-width: 768px) {
      main .campaign_section + .campaign_section {
        margin-top: 17.3vw; } }
  main .campaign_section h2 {
    width: 318px;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 1240px) {
      main .campaign_section h2 {
        width: 25.6vw; } }
    @media screen and (max-width: 768px) {
      main .campaign_section h2 {
        width: 49.3vw; } }
main #spots {
  background-image: url(../images/bg01_pc.svg);
  padding-top: 205px; }
  @media screen and (max-width: 1240px) {
    main #spots {
      padding-top: 16.5vw; } }
  @media screen and (max-width: 768px) {
    main #spots {
      padding-top: 18.7vw;
      background-image: url(../images/bg01_sp.svg); } }
  main #spots section + section {
    margin-top: 70px; }
    @media screen and (max-width: 1240px) {
      main #spots section + section {
        margin-top: 5.6vw; } }
    @media screen and (max-width: 768px) {
      main #spots section + section {
        margin-top: 13.3vw; } }
  main #spots section .title_box {
    width: 840px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
    padding-top: 29px;
    min-height: 183px;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center top; }
    @media screen and (max-width: 1240px) {
      main #spots section .title_box {
        width: 67.7vw;
        margin-top: 1.6vw;
        padding-top: 2.3vw;
        min-height: 14.8vw; } }
    @media screen and (max-width: 768px) {
      main #spots section .title_box {
        width: 100%;
        margin-top: 6.7vw;
        padding-top: 0;
        min-height: 30vw;
        background-size: 92.8% auto; } }
    main #spots section .title_box h3 {
      font-size: 24px;
      font-weight: bold;
      text-align: center; }
      @media screen and (max-width: 1240px) {
        main #spots section .title_box h3 {
          font-size: 1.9vw; } }
      @media screen and (max-width: 768px) {
        main #spots section .title_box h3 {
          font-size: 3.7vw; } }
    main #spots section .title_box .sub_title {
      font-size: 20px;
      font-weight: bold;
      text-align: center;
      margin-top: 0.2em; }
      @media screen and (max-width: 1240px) {
        main #spots section .title_box .sub_title {
          font-size: 1.6vw; } }
      @media screen and (max-width: 768px) {
        main #spots section .title_box .sub_title {
          font-size: 2.9vw; } }
    main #spots section .title_box hr {
      width: 60px;
      height: 2px;
      margin-left: auto;
      margin-right: auto;
      margin-top: 14px;
      background-color: #67544b;
      border: none; }
      @media screen and (max-width: 1240px) {
        main #spots section .title_box hr {
          width: 4.8vw;
          margin-top: 1.1vw; } }
      @media screen and (max-width: 768px) {
        main #spots section .title_box hr {
          width: 8.5vw;
          margin-top: 1.5vw; } }
    main #spots section .title_box .title_txt01 {
      font-size: 16px;
      line-height: 1.9em;
      font-weight: 500;
      text-align: center;
      margin-top: 1.8em;
      margin-top: 16px;
      letter-spacing: 0; }
      @media screen and (max-width: 1240px) {
        main #spots section .title_box .title_txt01 {
          font-size: 1.3vw;
          margin-top: 1.3vw; } }
      @media screen and (max-width: 768px) {
        main #spots section .title_box .title_txt01 {
          font-size: 2.9vw;
          margin-top: 1.5vw; } }
  main #spots section .pho_box {
    max-width: 800px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    @media screen and (max-width: 1240px) {
      main #spots section .pho_box {
        max-width: none;
        width: 64.5vw;
        margin-top: 2.4vw; } }
    @media screen and (max-width: 768px) {
      main #spots section .pho_box {
        max-width: none;
        width: 72vw;
        margin-top: 6vw;
        justify-content: center; } }
    main #spots section .pho_box.pho_box02 {
      max-width: 520px;
      width: 100%;
      margin-left: auto;
      margin-right: auto; }
      @media screen and (max-width: 1240px) {
        main #spots section .pho_box.pho_box02 {
          max-width: none;
          width: 41.9vw; } }
      @media screen and (max-width: 768px) {
        main #spots section .pho_box.pho_box02 {
          max-width: none;
          width: 72vw; } }
      main #spots section .pho_box.pho_box02 .pho_block {
        width: 46.2%; }
        @media screen and (max-width: 768px) {
          main #spots section .pho_box.pho_box02 .pho_block {
            width: 48.1%; } }
        main #spots section .pho_box.pho_box02 .pho_block:nth-child(n+3) {
          margin-top: 30px; }
          @media screen and (max-width: 1240px) {
            main #spots section .pho_box.pho_box02 .pho_block:nth-child(n+3) {
              margin-top: 2.4vw; } }
          @media screen and (max-width: 768px) {
            main #spots section .pho_box.pho_box02 .pho_block:nth-child(n+3) {
              margin-top: 7.5vw; } }
    main #spots section .pho_box .pho_block {
      width: 30%; }
      @media screen and (max-width: 768px) {
        main #spots section .pho_box .pho_block {
          width: 48.1%;
          margin-left: 3.8%; }
          main #spots section .pho_box .pho_block:nth-child(2n+1) {
            margin-left: 0; } }
      @media screen and (max-width: 768px) {
        main #spots section .pho_box .pho_block:nth-child(n+3) {
          margin-top: 7.5vw; } }
      main #spots section .pho_box .pho_block:nth-child(n+4) {
        margin-top: 30px; }
        @media screen and (max-width: 1240px) {
          main #spots section .pho_box .pho_block:nth-child(n+4) {
            margin-top: 2.4vw; } }
        @media screen and (max-width: 768px) {
          main #spots section .pho_box .pho_block:nth-child(n+4) {
            margin-top: 7.5vw; } }
      main #spots section .pho_box .pho_block .p_txt01 {
        width: 120%;
        margin-left: -10%;
        margin-right: -10%;
        font-size: 18px;
        font-weight: bold;
        text-align: center;
        margin-top: 0.4em;
        letter-spacing: 0; }
        @media screen and (max-width: 1240px) {
          main #spots section .pho_box .pho_block .p_txt01 {
            font-size: 1.5vw; } }
        @media screen and (max-width: 768px) {
          main #spots section .pho_box .pho_block .p_txt01 {
            font-size: 2.9vw;
            margin-top: 0.6em; } }
        main #spots section .pho_box .pho_block .p_txt01 .sub_txt {
          display: inline-block;
          margin-left: -0.4em;
          margin-right: -0.4em;
          font-size: 16px; }
          @media screen and (max-width: 1240px) {
            main #spots section .pho_box .pho_block .p_txt01 .sub_txt {
              font-size: 1.3vw; } }
          @media screen and (max-width: 768px) {
            main #spots section .pho_box .pho_block .p_txt01 .sub_txt {
              display: block;
              margin-left: auto;
              margin-right: auto;
              font-size: 2.1vw;
              margin-top: -0.2em; } }
      main #spots section .pho_box .pho_block .p_txt02 {
        font-size: 12px;
        font-weight: 500;
        line-height: 1.6em;
        margin-top: 0.3em;
        white-space: normal;
        word-break: break-all;
        text-align: justify; }
        @media screen and (max-width: 1240px) {
          main #spots section .pho_box .pho_block .p_txt02 {
            font-size: 1vw; } }
        @media screen and (max-width: 768px) {
          main #spots section .pho_box .pho_block .p_txt02 {
            font-size: 2.7vw;
            margin-top: 0.2em; } }
  @media screen and (max-width: 768px) {
    main #spots section#chubu {
      position: relative; } }
  main #spots section#chubu .title_box {
    background-image: url(../images/spots_bg01_pc.png); }
    @media screen and (max-width: 768px) {
      main #spots section#chubu .title_box {
        background-image: url(../images/spots_bg01_sp.png); } }
  @media screen and (max-width: 768px) {
    main #spots section#hokubu {
      position: relative; } }
  main #spots section#hokubu .title_box {
    background-image: url(../images/spots_bg02_pc.png); }
    @media screen and (max-width: 768px) {
      main #spots section#hokubu .title_box {
        background-image: url(../images/spots_bg02_sp.png);
        background-position: left 4vw top; } }
  @media screen and (max-width: 768px) {
    main #spots section#hokubu .sp_flower_left {
      top: -64.6vw; } }
  @media screen and (max-width: 768px) {
    main #spots section#hokubu .sp_flower_right {
      top: -24.5vw; } }
  @media screen and (max-width: 768px) {
    main #spots section#nanbu {
      position: relative; } }
  main #spots section#nanbu .title_box {
    background-image: url(../images/spots_bg03_pc.png); }
    @media screen and (max-width: 768px) {
      main #spots section#nanbu .title_box {
        background-image: url(../images/spots_bg03_sp.png); } }
  @media screen and (max-width: 768px) {
    main #spots section#nanbu .sp_flower_left {
      bottom: 36vw; } }
  @media screen and (max-width: 768px) {
    main #spots section#nanbu .sp_flower_right {
      bottom: -17.3vw; } }
main #get {
  background-image: url(../images/bg02_pc.svg);
  padding-top: 105px;
  position: relative; }
  @media screen and (max-width: 1240px) {
    main #get {
      padding-top: 8.5vw; } }
  @media screen and (max-width: 768px) {
    main #get {
      background-image: url(../images/bg02_sp.svg);
      padding-top: 13.3vw; } }
  @media screen and (max-width: 768px) {
    main #get h2 {
      width: 46vw; } }
  main #get #flower03 {
    position: absolute;
    top: 35px;
    right: 0;
    width: 286px; }
    @media screen and (max-width: 1240px) {
      main #get #flower03 {
        top: 2.8vw;
        width: 23.1vw; } }
    @media screen and (max-width: 768px) {
      main #get #flower03 {
        display: none; } }
  main #get #jet {
    position: absolute;
    top: 950px;
    left: 82px;
    width: 400px; }
    @media screen and (max-width: 1240px) {
      main #get #jet {
        top: 76.6vw;
        left: 6.6vw;
        width: 32.3vw; } }
    @media screen and (max-width: 768px) {
      main #get #jet {
        top: 246vw;
        left: 15.1vw;
        width: 53.3vw; } }
  main #get .img01, main #get .img02 {
    max-width: 850px;
    width: 100%;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 1240px) {
      main #get .img01, main #get .img02 {
        max-width: none;
        width: 68.5vw; } }
    @media screen and (max-width: 768px) {
      main #get .img01, main #get .img02 {
        width: 73.3vw; } }
  main #get .img01 {
    margin-top: 65px; }
    @media screen and (max-width: 1240px) {
      main #get .img01 {
        margin-top: 5.2vw; } }
    @media screen and (max-width: 768px) {
      main #get .img01 {
        margin-top: 8.3vw; } }
  main #get .txt04 {
    width: 600px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.1em;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.7em; }
    @media screen and (max-width: 1240px) {
      main #get .txt04 {
        width: 48.4vw;
        font-size: 1.1vw; } }
    @media screen and (max-width: 768px) {
      main #get .txt04 {
        width: 64vw;
        font-size: 2.7vw;
        margin-top: 8.4vw; } }
  main #get .img02 {
    margin-top: 40px; }
    @media screen and (max-width: 1240px) {
      main #get .img02 {
        margin-top: 3.2vw; } }
    @media screen and (max-width: 768px) {
      main #get .img02 {
        margin-top: 11.5vw; } }
  main #get .txt01 {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.7em;
    text-align: center;
    margin-top: 2.2em; }
    @media screen and (max-width: 1240px) {
      main #get .txt01 {
        font-size: 1.1vw; } }
    @media screen and (max-width: 768px) {
      main #get .txt01 {
        font-size: 2.5vw;
        line-height: 1.7em;
        margin-top: 8vw; } }
  main #get .btn {
    width: 360px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 80px; }
    @media screen and (max-width: 1240px) {
      main #get .btn {
        width: 29vw;
        margin-top: 6.5vw; } }
    @media screen and (max-width: 768px) {
      main #get .btn {
        width: 68.8vw;
        margin-top: 13.3vw; } }
main #present {
  background-image: url(../images/bg03_pc.svg);
  padding-top: 105px;
  position: relative; }
  @media screen and (max-width: 1240px) {
    main #present {
      padding-top: 8.5vw; } }
  @media screen and (max-width: 768px) {
    main #present {
      background-image: url(../images/bg03_sp.svg);
      padding-top: 13.3vw; } }
  main #present #flower04 {
    position: absolute;
    top: 35px;
    left: 0;
    width: 286px; }
    @media screen and (max-width: 1240px) {
      main #present #flower04 {
        top: 2.8vw;
        width: 23.1vw; } }
    @media screen and (max-width: 768px) {
      main #present #flower04 {
        display: none; } }
  @media screen and (max-width: 768px) {
    main #present .sp_flower_left {
      top: 51.3vw; } }
  @media screen and (max-width: 768px) {
    main #present .sp_flower_right {
      top: -3.5vw; } }
  main #present .head_txt01 {
    font-size: 16px;
    font-weight: bold;
    line-height: 2em;
    text-align: center;
    margin-top: 30px; }
    @media screen and (max-width: 1240px) {
      main #present .head_txt01 {
        font-size: 1.3vw;
        margin-top: 2.4vw; } }
    @media screen and (max-width: 768px) {
      main #present .head_txt01 {
        font-size: 2.9vw;
        line-height: 1.6em;
        margin-top: 6vw; } }
  main #present .campaign_section {
    margin-top: 85px; }
    @media screen and (max-width: 1240px) {
      main #present .campaign_section {
        margin-top: 6.9vw; } }
    @media screen and (max-width: 768px) {
      main #present .campaign_section {
        margin-top: 12vw; } }
    main #present .campaign_section + .campaign_section {
      margin-top: 130px; }
      @media screen and (max-width: 1240px) {
        main #present .campaign_section + .campaign_section {
          margin-top: 10.5vw; } }
      @media screen and (max-width: 768px) {
        main #present .campaign_section + .campaign_section {
          margin-top: 18.9vw; } }
    main #present .campaign_section h3 {
      max-width: 800px;
      width: 100%;
      margin-left: auto;
      margin-right: auto; }
      @media screen and (max-width: 1240px) {
        main #present .campaign_section h3 {
          max-width: none;
          width: 64.5vw; } }
      @media screen and (max-width: 768px) {
        main #present .campaign_section h3 {
          width: 76vw; } }
    main #present .campaign_section .cp_txt01 {
      font-size: 14px;
      font-weight: 500;
      line-height: 1.7em;
      text-align: center;
      margin-top: 1.4em; }
      @media screen and (max-width: 1240px) {
        main #present .campaign_section .cp_txt01 {
          font-size: 1.1vw; } }
      @media screen and (max-width: 768px) {
        main #present .campaign_section .cp_txt01 {
          font-size: 2.7vw;
          line-height: 1.7em; } }
    @media screen and (max-width: 768px) {
      main #present .campaign_section#campaign02 .sp_flower_right {
        top: -13.6vw; } }
  main #present .pho_box02 {
    max-width: 800px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 25px; }
    @media screen and (max-width: 1240px) {
      main #present .pho_box02 {
        max-width: none;
        width: 64.5vw;
        margin-top: 2vw; } }
    @media screen and (max-width: 768px) {
      main #present .pho_box02 {
        max-width: none;
        width: 64vw;
        margin-top: 8.5vw; } }
    main #present .pho_box02 .pho_block {
      width: 550px;
      margin-left: auto;
      margin-right: auto; }
      @media screen and (max-width: 1240px) {
        main #present .pho_box02 .pho_block {
          width: 44.4vw; } }
      @media screen and (max-width: 768px) {
        main #present .pho_box02 .pho_block {
          width: 70.7vw;
          transform: translateX(-2vw); } }
    main #present .pho_box02 .txt_block {
      width: 600px;
      margin-left: auto;
      margin-right: auto;
      margin-top: 30px; }
      @media screen and (max-width: 1240px) {
        main #present .pho_box02 .txt_block {
          width: 48.4vw;
          margin-top: 2.4vw; } }
      @media screen and (max-width: 768px) {
        main #present .pho_box02 .txt_block {
          width: 63.7vw;
          margin-top: 5.3vw; } }
      main #present .pho_box02 .txt_block .txt_list02 li {
        font-size: 14px;
        font-weight: 400;
        line-height: 1.7em; }
        @media screen and (max-width: 1240px) {
          main #present .pho_box02 .txt_block .txt_list02 li {
            font-size: 1.1vw; } }
        @media screen and (max-width: 768px) {
          main #present .pho_box02 .txt_block .txt_list02 li {
            font-size: 2.7vw; } }
  main #present .pho_box {
    max-width: 800px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 50px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    @media screen and (max-width: 1240px) {
      main #present .pho_box {
        max-width: none;
        width: 64.5vw;
        margin-top: 4vw; } }
    @media screen and (max-width: 768px) {
      main #present .pho_box {
        max-width: none;
        width: 100%;
        margin-top: 9.3vw; } }
    main #present .pho_box .pho_block {
      width: 46.3%; }
      @media screen and (max-width: 768px) {
        main #present .pho_box .pho_block {
          width: 100%;
          position: relative; }
          main #present .pho_box .pho_block + .pho_block {
            margin-top: 11.3vw; } }
      main #present .pho_box .pho_block:nth-child(n+3) {
        margin-top: 50px; }
        @media screen and (max-width: 1240px) {
          main #present .pho_box .pho_block:nth-child(n+3) {
            margin-top: 4vw; } }
        @media screen and (max-width: 768px) {
          main #present .pho_box .pho_block:nth-child(n+3) {
            margin-top: 11.3vw; } }
      @media screen and (max-width: 768px) {
        main #present .pho_box .pho_block .pho01 {
          width: 64vw;
          margin-left: auto;
          margin-right: auto; } }
      main #present .pho_box .pho_block .pho01.big_pho img {
        width: 109.2%;
        margin-left: -4.6%;
        margin-right: -4.6%; }
      main #present .pho_box .pho_block .txt_box01 {
        margin-top: 30px;
        border-bottom: 1px solid #67544b;
        padding-bottom: 30px;
        margin-bottom: 30px; }
        @media screen and (max-width: 1240px) {
          main #present .pho_box .pho_block .txt_box01 {
            margin-top: 2.4vw;
            padding-bottom: 2.4vw;
            margin-bottom: 2.4vw; } }
        @media screen and (max-width: 768px) {
          main #present .pho_box .pho_block .txt_box01 {
            width: 64vw;
            margin-left: auto;
            margin-right: auto;
            margin-top: 4.7vw;
            padding-bottom: 4.3vw;
            margin-bottom: 4.3vw; } }
        main #present .pho_box .pho_block .txt_box01.type01 {
          min-height: 360px; }
          @media screen and (max-width: 1240px) {
            main #present .pho_box .pho_block .txt_box01.type01 {
              min-height: 29.2vw; } }
          @media screen and (max-width: 768px) {
            main #present .pho_box .pho_block .txt_box01.type01 {
              min-height: 1px; } }
        main #present .pho_box .pho_block .txt_box01 .txt01 {
          font-size: 20px;
          font-weight: bold;
          text-align: center; }
          @media screen and (max-width: 1240px) {
            main #present .pho_box .pho_block .txt_box01 .txt01 {
              font-size: 1.6vw; } }
          @media screen and (max-width: 768px) {
            main #present .pho_box .pho_block .txt_box01 .txt01 {
              width: 122%;
              margin-left: -12.5%;
              margin-right: -12.5%;
              font-size: 3.7vw; } }
          main #present .pho_box .pho_block .txt_box01 .txt01 sup {
            position: relative;
            font-size: 0.5em;
            top: -0.5em; }
          main #present .pho_box .pho_block .txt_box01 .txt01.komenashi {
            padding-top: 3px; }
            @media screen and (max-width: 1240px) {
              main #present .pho_box .pho_block .txt_box01 .txt01.komenashi {
                padding-top: 0.3vw; } }
            @media screen and (max-width: 768px) {
              main #present .pho_box .pho_block .txt_box01 .txt01.komenashi {
                padding-top: 0; } }
        main #present .pho_box .pho_block .txt_box01 .txt02 {
          font-size: 16px;
          font-weight: 500;
          line-height: 1.8em;
          margin-top: 1.5em;
          text-align: justify; }
          @media screen and (max-width: 1240px) {
            main #present .pho_box .pho_block .txt_box01 .txt02 {
              font-size: 1.3vw; } }
          @media screen and (max-width: 768px) {
            main #present .pho_box .pho_block .txt_box01 .txt02 {
              font-size: 2.9vw; } }
          main #present .pho_box .pho_block .txt_box01 .txt02 + .txt02 {
            margin-top: 0.5em; }
            @media screen and (max-width: 768px) {
              main #present .pho_box .pho_block .txt_box01 .txt02 + .txt02 {
                margin-top: 1.2em; } }
      @media screen and (max-width: 768px) {
        main #present .pho_box .pho_block .txt_list02 {
          width: 64vw;
          margin-left: auto;
          margin-right: auto; } }
      main #present .pho_box .pho_block .txt_list02 li {
        font-size: 14px;
        font-weight: 400;
        line-height: 1.7em;
        letter-spacing: 0; }
        @media screen and (max-width: 1240px) {
          main #present .pho_box .pho_block .txt_list02 li {
            font-size: 1.1vw; } }
        @media screen and (max-width: 768px) {
          main #present .pho_box .pho_block .txt_list02 li {
            font-size: 2.7vw; } }
        main #present .pho_box .pho_block .txt_list02 li a {
          color: #1c5fbc;
          text-decoration: underline; }
      @media screen and (max-width: 768px) {
        main #present .pho_box .pho_block.pho_block01 .sp_flower_left {
          top: -13.5vw; } }
      @media screen and (max-width: 768px) {
        main #present .pho_box .pho_block.pho_block02 .sp_flower_right {
          top: -16.1vw !important; } }
  main #present .txt_list03 {
    width: 600px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 70px; }
    @media screen and (max-width: 1240px) {
      main #present .txt_list03 {
        width: 48.4vw;
        margin-top: 5.6vw; } }
    @media screen and (max-width: 768px) {
      main #present .txt_list03 {
        width: 64vw;
        margin-top: 6.1vw; } }
    main #present .txt_list03 li {
      font-size: 14px;
      font-weight: 400;
      line-height: 1.7em; }
      @media screen and (max-width: 1240px) {
        main #present .txt_list03 li {
          font-size: 1.1vw; } }
      @media screen and (max-width: 768px) {
        main #present .txt_list03 li {
          font-size: 2.7vw; } }
  main #present .btn01 {
    max-width: 360px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 70px; }
    @media screen and (max-width: 1240px) {
      main #present .btn01 {
        max-width: none;
        width: 29vw;
        margin-top: 5.6vw; } }
    @media screen and (max-width: 768px) {
      main #present .btn01 {
        max-width: none;
        width: 68.8vw;
        margin-top: 11.1vw; } }
    main #present .btn01 + .btn01 {
      margin-top: 20px; }
      @media screen and (max-width: 1240px) {
        main #present .btn01 + .btn01 {
          margin-top: 1.6vw; } }
      @media screen and (max-width: 768px) {
        main #present .btn01 + .btn01 {
          margin-top: 2.4vw; } }
main #note {
  position: relative;
  margin-top: 160px; }
  @media screen and (max-width: 1240px) {
    main #note {
      margin-top: 12.9vw; } }
  @media screen and (max-width: 768px) {
    main #note {
      margin-top: 15.5vw; } }
  main #note #flower05 {
    position: absolute;
    top: -130px;
    right: 0;
    width: 286px; }
    @media screen and (max-width: 1240px) {
      main #note #flower05 {
        top: -10.5vw;
        width: 23.1vw; } }
    @media screen and (max-width: 768px) {
      main #note #flower05 {
        display: none; } }
  main #note .txt_box01 {
    max-width: 900px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 60px; }
    @media screen and (max-width: 1240px) {
      main #note .txt_box01 {
        max-width: none;
        width: 72.6vw;
        margin-top: 4.8vw; } }
    @media screen and (max-width: 768px) {
      main #note .txt_box01 {
        max-width: none;
        width: 72vw;
        margin-top: 8vw; } }
    main #note .txt_box01 .txt01 {
      font-size: 16px;
      font-weight: 400;
      line-height: 1.8em;
      letter-spacing: 0; }
      @media screen and (max-width: 1240px) {
        main #note .txt_box01 .txt01 {
          font-size: 1.3vw; } }
      @media screen and (max-width: 768px) {
        main #note .txt_box01 .txt01 {
          font-size: 2.7vw; } }
      main #note .txt_box01 .txt01 a {
        color: #67544b; }
    main #note .txt_box01 .txt_list li {
      font-size: 16px;
      font-weight: 400;
      line-height: 1.8em;
      letter-spacing: 0; }
      @media screen and (max-width: 1240px) {
        main #note .txt_box01 .txt_list li {
          font-size: 1.3vw; } }
      @media screen and (max-width: 768px) {
        main #note .txt_box01 .txt_list li {
          font-size: 2.7vw; } }
    main #note .txt_box01 .txt_block {
      margin-top: 30px; }
      @media screen and (max-width: 1240px) {
        main #note .txt_box01 .txt_block {
          margin-top: 2.4vw; } }
      @media screen and (max-width: 768px) {
        main #note .txt_box01 .txt_block {
          margin-top: 5.3vw; } }
      main #note .txt_box01 .txt_block h3 {
        font-size: 16px;
        font-weight: bold;
        line-height: 1.6em;
        margin-left: -0.5em;
        margin-right: -0.5em; }
        @media screen and (max-width: 1240px) {
          main #note .txt_box01 .txt_block h3 {
            font-size: 1.3vw; } }
        @media screen and (max-width: 768px) {
          main #note .txt_box01 .txt_block h3 {
            font-size: 2.7vw; } }
    main #note .txt_box01 .sp_txt01 {
      color: #3e77c6; }
    main #note .txt_box01 a {
      text-decoration: underline; }
      main #note .txt_box01 a.sp_txt01 {
        color: #3e77c6; }

footer {
  background-image: url(../images/main_bg_bottom_pc.svg);
  background-repeat: no-repeat;
  background-size: 1200px auto;
  background-position: center bottom;
  padding-bottom: 135px; }
  @media screen and (max-width: 1240px) {
    footer {
      background-size: 96.8vw auto;
      padding-bottom: 10.9vw; } }
  @media screen and (max-width: 768px) {
    footer {
      background-image: url(../images/main_bg_bottom_sp.svg);
      background-size: 92.5% auto;
      padding-bottom: 8.7vw; } }
  footer .logo {
    max-width: 316px;
    width: 100%;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 1240px) {
      footer .logo {
        max-width: none;
        width: 25.5vw; } }
    @media screen and (max-width: 768px) {
      footer .logo {
        width: 48vw; } }
  footer .copyright {
    font-size: 14px;
    text-align: center;
    margin-top: 25px; }
    @media screen and (max-width: 1240px) {
      footer .copyright {
        font-size: 1.1vw;
        margin-top: 2vw; } }
    @media screen and (max-width: 768px) {
      footer .copyright {
        font-size: 2.1vw;
        margin-top: 3.3vw; } }

.animate,
.animate2,
.animate3 {
  opacity: 1;
  transition-property: opacity, transform;
  transition-duration: 0.5s;
  transition-timing-function: ease-in-out; }

.animate.deactive,
.animate2.deactive,
.animate3.deactive {
  transform: translateY(20px);
  opacity: 0;
  transition: 0s; }
