<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&amp;display=swap");
article {
  position: relative;
  padding-top: 0;
  width: 50vw;
  margin: 0 auto; }
  article header {
    position: absolute;
    top: 0;
    z-index: 8; }
    article header .menu {
      position: absolute;
      top: 0;
      left: 0;
      width: 8vw;
      height: 9.2266666667vw;
      background: url("../img/top/open.svg") no-repeat center center/cover;
      text-indent: -9999px;
      cursor: pointer;
      z-index: 3; }
      article header .menu.active {
        background: url("../img/top/close.svg") no-repeat center center/cover; }
    article header .menu--inner {
      display: none;
      width: 50vw;
      position: absolute;
      top: 0;
      left: 0;
      background: url("../img/top/menuback.svg") no-repeat bottom center/cover; }
      article header .menu--inner .box {
        width: 30vw;
        margin: 0 auto;
        padding: 5.3333333333vw 0 8.6666666667vw; }
      article header .menu--inner .ttl {
        font-family: "mobo";
        font-weight: 700;
        font-size: 2.6666666667vw;
        padding-bottom: 0.2666666667vw;
        border-bottom: 0.2666666667vw solid #fff;
        color: #fff;
        margin-top: 2vw; }
      article header .menu--inner ul li {
        font-family: "mobo";
        font-weight: 700;
        font-size: 2vw;
        margin-top: 1vw; }
      article header .menu--inner a {
        color: #fff;
        display: block; }
      article header .menu--inner .link a {
        position: relative; }
        article header .menu--inner .link a:after {
          position: absolute;
          content: "";
          width: 0;
          right: 0;
          top: 50%;
          margin-top: -0.6666666667vw;
          height: 0;
          border-style: solid;
          border-top: 0.6666666667vw solid transparent;
          border-bottom: 0.6666666667vw solid transparent;
          border-left: 1.1333333333vw solid #fff;
          border-right: 0; }
      article header .menu--inner .contact {
        font-weight: 600;
        font-size: 1.3333333333vw;
        margin-top: 2.6666666667vw; }
  article .kv {
    position: relative; }
    article .kv h1 {
      position: absolute;
      width: 29.6666666667vw;
      left: 50%;
      margin-left: -14.8333333333vw;
      top: 12.6666666667vw; }
    article .kv .obj {
      position: absolute;
      width: 11.6666666667vw;
      bottom: 2vw;
      left: 10vw; }
  article .contents--top {
    padding: 4vw 0 0;
    position: relative; }
    article .contents--top h2 {
      width: 27.3333333333vw;
      margin: 0 auto; }
    article .contents--top .txt {
      font-family: "mobo";
      font-weight: 600;
      text-align: center;
      font-size: 1.7333333333vw;
      line-height: 3.3333333333vw;
      margin-top: 3.3333333333vw; }
    article .contents--top .obj {
      position: absolute;
      width: 41.0666666667vw;
      left: 50%;
      margin-left: -20.5333333333vw;
      top: 14.6666666667vw; }
    article .contents--top .under {
      width: 44vw;
      margin: auto auto auto 3.8666666667vw; }
  article .contents--sec {
    margin-top: 4.3333333333vw;
    background: url("../img/top/sec_2_back.jpg") no-repeat top center/cover;
    position: relative; }
    article .contents--sec .ttl {
      width: 42.3333333333vw;
      margin: 0 auto;
      padding-top: 6.6666666667vw; }
    article .contents--sec .txt {
      font-family: "mobo";
      font-weight: 600;
      text-align: center;
      font-size: 1.7333333333vw;
      line-height: 3.3333333333vw;
      margin-top: 4vw; }
    article .contents--sec .obj {
      position: absolute;
      width: 47.3333333333vw;
      right: 0;
      top: 32.6666666667vw; }
    article .contents--sec--under {
      display: flex;
      justify-content: center;
      margin-top: 1vw; }
      article .contents--sec--under .imgs {
        width: 16.6666666667vw; }
      article .contents--sec--under .btn {
        width: 18vw;
        margin: 2.3333333333vw 0 0 -2vw; }
      article .contents--sec--under .imgs_r {
        width: 14vw;
        margin-top: 5.6666666667vw; }
  article .contents--box {
    margin-top: 8vw;
    background: url("../img/top/sec_3_back.jpg") no-repeat top center/cover;
    padding-bottom: 14vw; }
    article .contents--box .ttltp {
      width: 36.6666666667vw;
      margin: 0 auto -3.6666666667vw;
      padding-top: 8vw; }
    article .contents--box--inner {
      width: 45.4666666667vw;
      margin: 13.6666666667vw auto 0;
      padding-bottom: 2vw;
      background: #fff;
      position: relative; }
      article .contents--box--inner:before, article .contents--box--inner:after {
        position: absolute;
        content: "";
        height: 2.6666666667vw;
        width: 45.4666666667vw; }
      article .contents--box--inner:before {
        background: url("../img/top/box_upper.svg") no-repeat top center/cover;
        top: -2.6666666667vw; }
      article .contents--box--inner:after {
        background: url("../img/top/box_under.svg") no-repeat top center/cover;
        bottom: -2.6666666667vw; }
      article .contents--box--inner--top .top {
        width: 7.6vw;
        margin: 0 auto -6.4666666667vw;
        position: relative;
        top: -6.4666666667vw; }
      article .contents--box--inner--top h3 {
        font-family: "mobo";
        font-weight: 700;
        text-align: center;
        font-size: 3.4666666667vw;
        line-height: 4.6666666667vw;
        margin-top: 3vw;
        color: #f29600; }
      article .contents--box--inner--top h4 {
        font-family: "mobo";
        font-weight: 600;
        font-size: 1.7333333333vw;
        line-height: 3.0666666667vw;
        padding: 2.6666666667vw 2.6666666667vw 0; }
      article .contents--box--inner--top .objunder {
        width: 9.0666666667vw;
        margin: 0vw 2.6666666667vw -1.3333333333vw auto; }
      article .contents--box--inner--top .uppercap {
        width: 24.2666666667vw;
        margin: 2.6666666667vw auto 0; }
      article .contents--box--inner .btn {
        width: 38.6666666667vw;
        border-radius: 4vw;
        margin: 2.6666666667vw auto 0;
        box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.4); }
      article .contents--box--inner--step .stimg {
        padding: 4vw 0 0; }
        article .contents--box--inner--step .stimg.map {
          padding: 2vw 2.6666666667vw 0; }
      article .contents--box--inner--step .embed {
        padding: 4vw 1.3333333333vw 0; }
      article .contents--box--inner--movie {
        margin-top: 2.6666666667vw;
        padding: 2.6666666667vw 2.6666666667vw 0; }
        article .contents--box--inner--movie .moviebox {
          width: 100%; }
          article .contents--box--inner--movie .moviebox figure {
            background: #dcdddd;
            height: auto;
            width: 100%;
            position: relative; }
            article .contents--box--inner--movie .moviebox figure:before {
              position: absolute;
              content: "";
              background: url("../img/top/sec_3_arrow.svg") no-repeat center center/cover;
              width: 6.6666666667vw;
              height: 6.6666666667vw;
              top: 50%;
              margin-top: -3.3333333333vw;
              left: 50%;
              margin-left: -3.3333333333vw; }
          article .contents--box--inner--movie .moviebox .caption {
            font-family: "mobo";
            text-align: center;
            font-weight: 400;
            font-size: 1.7333333333vw;
            line-height: 2.6666666667vw;
            padding: 1vw 0vw 0; }
        article .contents--box--inner--movie.flex {
          display: flex;
          flex-wrap: wrap;
          justify-content: center;
          padding-top: 0;
          gap: 0 2.1333333333vw; }
          article .contents--box--inner--movie.flex .moviebox {
            width: 18.9333333333vw; }
            article .contents--box--inner--movie.flex .moviebox figure {
              height: auto;
              width: auto; }
            article .contents--box--inner--movie.flex .moviebox.left {
              margin: 1.3333333333vw auto 0 0; }
      article .contents--box--inner .middlecap {
        width: 23.0666666667vw;
        margin: 2.6666666667vw auto 0; }
        article .contents--box--inner .middlecap.wid_2 {
          width: 28.6666666667vw; }
  article .contents--under {
    margin-top: 6.6666666667vw; }
    article .contents--under .ttl {
      width: 39.6vw;
      margin: 0 auto; }
    article .contents--under .underimg {
      width: 15.8vw;
      margin: -9.3333333333vw 2.6666666667vw 0 auto; }
    article .contents--under--box {
      position: relative;
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
      padding-top: 2vw; }
      article .contents--under--box .obj {
        position: relative; }
        article .contents--under--box .obj.wid_0 {
          width: 27.6vw;
          z-index: -1; }
        article .contents--under--box .obj.wid_1 {
          width: 3.3333333333vw;
          margin-left: 12vw;
          top: -4vw; }
        article .contents--under--box .obj.wid_2 {
          width: 1.6666666667vw;
          margin-left: 12.6666666667vw;
          margin-right: 20vw; }
        article .contents--under--box .obj.wid_3 {
          width: 3.3333333333vw;
          margin-left: 5.3333333333vw;
          top: -9.3333333333vw; }
        article .contents--under--box .obj.wid_4 {
          width: 3.3333333333vw;
          margin-left: 12vw;
          top: -6.6666666667vw; }
      article .contents--under--box .obj_r {
        position: absolute; }
        article .contents--under--box .obj_r.wid_1 {
          width: 20.2666666667vw;
          z-index: -1;
          right: 0;
          top: -11.3333333333vw; }
        article .contents--under--box .obj_r.wid_2 {
          width: 18.6666666667vw;
          z-index: -1;
          right: 0;
          top: -8.6666666667vw; }
        article .contents--under--box .obj_r.wid_3 {
          width: 22.6666666667vw;
          z-index: -1;
          right: 0;
          top: -11.3333333333vw; }
        article .contents--under--box .obj_r.wid_4 {
          width: 18.4vw;
          z-index: -1;
          right: 2vw;
          top: -10vw; }
      article .contents--under--box h5 {
        position: relative;
        margin-left: 2.6666666667vw;
        margin-right: -2.6666666667vw; }
        article .contents--under--box h5.wid_1 {
          width: 20vw; }
        article .contents--under--box h5.wid_2 {
          width: 22.3333333333vw;
          margin-top: 4vw; }
        article .contents--under--box h5.wid_3 {
          width: 35.0666666667vw;
          margin-top: 1.3333333333vw; }
        article .contents--under--box h5.wid_4 {
          width: 30.8vw;
          margin-top: 1.3333333333vw; }
        article .contents--under--box h5.wid_5 {
          width: 22.9333333333vw;
          margin-top: 1.3333333333vw; }
        article .contents--under--box h5.wid_6 {
          width: 35.0666666667vw;
          margin-top: 1.3333333333vw; }
        article .contents--under--box h5.wid_7 {
          width: 25.8666666667vw;
          margin-top: 1.3333333333vw; }
        article .contents--under--box h5.wid_8 {
          width: 22.9333333333vw;
          margin-top: 1.3333333333vw; }
        article .contents--under--box h5.wid_9 {
          width: 18.4vw;
          margin-top: 1.3333333333vw; }
      article .contents--under--box .img {
        width: 45.4666666667vw;
        margin: 0 auto; }
        article .contents--under--box .img.wid_1 {
          margin-top: -2.6666666667vw; }
      article .contents--under--box .txt {
        width: 45.4666666667vw;
        margin: 0 auto;
        text-align: justify;
        font-family: "mobo";
        font-weight: 600;
        font-size: 1.6666666667vw;
        line-height: 3vw;
        margin-top: 1vw; }
      article .contents--under--box--btn {
        width: 45.4666666667vw;
        margin: 2vw auto 0;
        display: flex;
        flex-wrap: wrap; }
        article .contents--under--box--btn .btn {
          width: 22vw; }
          article .contents--under--box--btn .btn:nth-child(2) {
            margin-left: 1.3333333333vw; }
          article .contents--under--box--btn .btn:nth-child(3) {
            margin-top: 1.3333333333vw; }
  article.listback {
    background: url("../img/list/back.jpg") no-repeat center top/cover;
    padding-bottom: 2.6666666667vw; }
  article .kvcont {
    width: 19.7333333333vw;
    margin: 0 auto;
    padding-top: 7.3333333333vw; }
  article .contentslist {
    background: #fff;
    width: 40.1333333333vw;
    margin: 3.3333333333vw auto 0;
    border-radius: 2vw;
    padding: 0 2.6666666667vw 2.6666666667vw; }
    article .contentslist h3 {
      font-family: "mobo";
      font-weight: 600;
      text-align: center;
      font-size: 2.6666666667vw;
      line-height: 1;
      padding: 4.6666666667vw 0 2.6666666667vw; }
    article .contentslist table {
      width: 100%;
      font-family: "mobo";
      font-weight: 400;
      font-size: 1.3333333333vw; }
      article .contentslist table .bt {
        border-top: 0.2666666667vw solid #000; }
      article .contentslist table th {
        text-align: center;
        padding: 1.3333333333vw 0;
        font-weight: 600; }
      article .contentslist table td {
        padding: 0.4vw 0.6666666667vw; }
        article .contentslist table td:last-child {
          text-align: center; }
        article .contentslist table td.tb {
          font-weight: 600;
          text-align: center;
          -webkit-writing-mode: vertical-rl;
          -moz-writing-mode: vertical-rl;
          -ms-writing-mode: tb-rl;
          -ms-writing-mode: vertical-rl;
          writing-mode: vertical-rl; }
        article .contentslist table td.cl_1 {
          background: #d7e6be; }
        article .contentslist table td.cl_2 {
          background: #afe1ff; }
        article .contentslist table td.cl_3 {
          background: #dce1ff; }
        article .contentslist table td.cl_4 {
          background: #ffe6ee; }
        article .contentslist table td.cl_5 {
          background: #ffe6c8; }

.present .kvpresent {
  position: relative; }
  .present .kvpresent h1 {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0; }
.present .contents {
  position: relative;
  z-index: 2;
  width: 50vw;
  margin: 0 auto;
  overflow: hidden;
  background: url("../img/present/back_1.jpg") no-repeat center top/cover;
  padding-bottom: 2.6666666667vw; }
  .present .contents.back_2 {
    background: url("../img/present/back_2.jpg") no-repeat center top/cover; }
  .present .contents .loop_wrap {
    display: flex;
    width: 100vw;
    overflow: hidden;
    padding-top: 1.3333333333vw; }
    .present .contents .loop_wrap img {
      width: auto;
      height: 100%;
      padding: 0 0.6666666667vw; }
  .present .contents .loop_wrap img:first-child {
    animation: loop 150s -75s linear infinite; }
  .present .contents .loop_wrap img:last-child {
    animation: loop2 150s linear infinite; }
  .present .contents .banner {
    width: 40vw;
    margin: 0 auto;
    padding: 4vw 0; }
  .present .contents .tab {
    width: 45.4666666667vw;
    margin: 0 auto;
    display: flex;
    justify-content: space-between; }
    .present .contents .tab .tabs {
      width: 22vw;
      height: 10.4vw;
      text-indent: -9999px;
      cursor: pointer; }
      .present .contents .tab .tabs:first-child {
        background: url("../img/present/tab_1_off.svg") no-repeat top center/cover; }
        .present .contents .tab .tabs:first-child.active {
          background: url("../img/present/tab_1_on.svg") no-repeat top center/cover; }
      .present .contents .tab .tabs:last-child {
        background: url("../img/present/tab_2_off.svg") no-repeat top center/cover; }
        .present .contents .tab .tabs:last-child.active {
          background: url("../img/present/tab_2_on.svg") no-repeat top center/cover; }
  .present .contents .tabcontents {
    width: 40.1333333333vw;
    margin: 0 auto;
    background: #fff;
    padding: 2.6666666667vw;
    display: none; }
    .present .contents .tabcontents.show {
      display: block; }
    .present .contents .tabcontents h3 {
      margin: 0 auto;
      padding: 1.3333333333vw 0 3.3333333333vw; }
      .present .contents .tabcontents h3.wid_1 {
        width: 24.6666666667vw; }
      .present .contents .tabcontents h3.wid_2 {
        width: 25.3333333333vw; }
    .present .contents .tabcontents--step .ttl {
      width: 14.6666666667vw;
      margin: 0 auto; }
    .present .contents .tabcontents--step .caption {
      text-align: center;
      font-family: "mobo";
      font-weight: 600;
      font-size: 0.8vw;
      margin-top: 0.6666666667vw; }
    .present .contents .tabcontents--step .stimg {
      margin-top: 2vw; }
    .present .contents .tabcontents--movie {
      margin-top: 2.6666666667vw;
      padding: 2.6666666667vw 0vw 0; }
      .present .contents .tabcontents--movie .moviebox {
        width: 18.9333333333vw; }
        .present .contents .tabcontents--movie .moviebox figure {
          background: #dcdddd;
          position: relative; }
          .present .contents .tabcontents--movie .moviebox figure:before {
            position: absolute;
            content: "";
            background: url("../img/present/arrow_1.svg") no-repeat center center/cover;
            width: 4vw;
            height: 4vw;
            top: 50%;
            margin-top: -2vw;
            left: 50%;
            margin-left: -2vw; }
        .present .contents .tabcontents--movie .moviebox .caption {
          font-family: "mobo";
          text-align: center;
          font-weight: 400;
          font-size: 1.7333333333vw;
          line-height: 2.6666666667vw;
          padding: 1vw 0vw 0; }
      .present .contents .tabcontents--movie.flex {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        padding-top: 0;
        gap: 0 2.1333333333vw; }
        .present .contents .tabcontents--movie.flex .moviebox {
          width: 18.9333333333vw; }
          .present .contents .tabcontents--movie.flex .moviebox.left {
            margin: 1.3333333333vw auto 0 0; }
      .present .contents .tabcontents--movie.flex_2 {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        padding-top: 0;
        gap: 0 2.1333333333vw; }
        .present .contents .tabcontents--movie.flex_2 .moviebox {
          width: 18.9333333333vw; }
          .present .contents .tabcontents--movie.flex_2 .moviebox figure:before {
            background: url("../img/present/arrow_2.svg") no-repeat center center/cover; }
          .present .contents .tabcontents--movie.flex_2 .moviebox.left {
            margin: 1.3333333333vw auto 0 0; }
    .present .contents .tabcontents .captionlist {
      font-family: "mobo";
      font-weight: 400;
      font-size: 1.3333333333vw;
      line-height: 2vw;
      padding: 2.6666666667vw 0; }
    .present .contents .tabcontents .btn {
      width: 38.6666666667vw;
      border-radius: 4vw;
      margin: 2.6666666667vw auto 0;
      box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.4); }
    .present .contents .tabcontents .kiyaku {
      text-align: center;
      font-family: "mobo";
      font-weight: 600;
      font-size: 1.0666666667vw;
      padding: 2.6666666667vw 0 0; }
      .present .contents .tabcontents .kiyaku a {
        display: inline;
        text-decoration: underline; }
    .present .contents .tabcontents--present .ttl {
      width: 20.6666666667vw;
      margin: 4vw auto 0; }
    .present .contents .tabcontents--present--flex {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      .present .contents .tabcontents--present--flex .box {
        width: 19.0666666667vw;
        margin-top: 1vw; }
        .present .contents .tabcontents--present--flex .box dl {
          font-family: "mobo";
          font-size: 1.4666666667vw;
          font-weight: 600;
          margin-top: 0.4vw; }
          .present .contents .tabcontents--present--flex .box dl dt {
            color: #0075c2;
            letter-spacing: -0.04em; }
          .present .contents .tabcontents--present--flex .box dl dd {
            letter-spacing: -0.06em; }
      .present .contents .tabcontents--present--flex.cl_2 .box {
        width: 100%; }
        .present .contents .tabcontents--present--flex.cl_2 .box dl dt {
          color: #de829a; }

footer {
  width: 40vw;
  margin: 0 auto;
  background: #727171;
  padding: 4vw 5vw;
  color: #fff;
  position: relative; }
  footer a {
    color: #fff;
    display: inline;
    text-decoration: underline; }
  footer .links {
    text-align: center;
    font-family: "mobo";
    font-weight: 700;
    font-size: 2vw;
    line-height: 3vw; }
  footer .address {
    text-align: center;
    font-family: "mobo";
    font-weight: 400;
    font-size: 1.0666666667vw;
    line-height: 2vw;
    padding: 1.6666666667vw 0; }
  footer .copy {
    text-align: center;
    font-family: "mobo";
    font-weight: 400;
    font-size: 1.0666666667vw; }

.pagetop {
  position: absolute;
  width: 4vw;
  height: 4vw;
  top: 1.3333333333vw;
  right: 1.3333333333vw; }

.fuwafuwa {
  display: inline-block;
  animation: fuwafuwa 3s ease-in-out infinite; }

@keyframes fuwafuwa {
  0% {
    transform: translate(0, 0) rotate(0deg); }
  25% {
    transform: translate(2px, -8px) rotate(1deg); }
  50% {
    transform: translate(0, -10px) rotate(0deg); }
  75% {
    transform: translate(-2px, -8px) rotate(-1deg); }
  100% {
    transform: translate(0, 0) rotate(0deg); } }
.fuwafuwa-scale {
  display: inline-block;
  animation: fuwafuwa-scale 4s ease-in-out infinite; }

@keyframes fuwafuwa-scale {
  0% {
    transform: scale(1); }
  50% {
    transform: scale(1.08); }
  100% {
    transform: scale(1); } }
.fuwafuwa_2 {
  display: inline-block;
  animation: fuwafuwa_2 3s ease-in-out infinite; }

@keyframes fuwafuwa_2 {
  0% {
    transform: translateY(0); }
  50% {
    transform: translateY(-10px); }
  100% {
    transform: translateY(0); } }
@keyframes loop {
  0% {
    transform: translateX(100%); }
  to {
    transform: translateX(-100%); } }
@keyframes loop2 {
  0% {
    transform: translateX(0); }
  to {
    transform: translateX(-200%); } }
@media screen and (max-width: 767px) {
  article {
    padding-top: 0;
    width: 100vw;
    margin: 0 auto; }
    article header {
      position: absolute;
      top: 0; }
      article header .menu {
        position: absolute;
        top: 0;
        left: 0;
        width: 16vw;
        height: 18.4533333333vw;
        background: url("../img/top/open.svg") no-repeat center center/cover;
        text-indent: -9999px;
        cursor: pointer;
        z-index: 3; }
        article header .menu.active {
          background: url("../img/top/close.svg") no-repeat center center/cover; }
      article header .menu--inner {
        width: 100vw;
        position: absolute;
        top: 0;
        left: 0;
        background: url("../img/top/menuback.svg") no-repeat bottom center/cover; }
        article header .menu--inner .box {
          width: 60vw;
          margin: 0 auto;
          padding: 10.6666666667vw 0 17.3333333333vw; }
        article header .menu--inner .ttl {
          font-family: "mobo";
          font-weight: 700;
          font-size: 5.3333333333vw;
          padding-bottom: 0.5333333333vw;
          border-bottom: 0.5333333333vw solid #fff;
          color: #fff;
          margin-top: 4vw; }
        article header .menu--inner ul li {
          font-family: "mobo";
          font-weight: 700;
          font-size: 4vw;
          margin-top: 2vw; }
        article header .menu--inner a {
          color: #fff;
          display: block; }
        article header .menu--inner .link a {
          position: relative; }
          article header .menu--inner .link a:after {
            position: absolute;
            content: "";
            width: 0;
            right: 0;
            top: 50%;
            margin-top: -1.3333333333vw;
            height: 0;
            border-style: solid;
            border-top: 1.3333333333vw solid transparent;
            border-bottom: 1.3333333333vw solid transparent;
            border-left: 2.2666666667vw solid #fff;
            border-right: 0; }
        article header .menu--inner .contact {
          font-weight: 600;
          font-size: 1.3333333333vw;
          margin-top: 2.6666666667vw; }
    article .kv {
      position: relative; }
      article .kv h1 {
        position: absolute;
        width: 59.3333333333vw;
        left: 50%;
        margin-left: -29.6666666667vw;
        top: 23.6vw; }
      article .kv .obj {
        position: absolute;
        width: 23.3333333333vw;
        bottom: 8vw;
        left: 20vw; }
    article .contents--top {
      padding: 8vw 0 0;
      position: relative; }
      article .contents--top h2 {
        width: 54.6666666667vw;
        margin: 0 auto; }
      article .contents--top .txt {
        font-family: "mobo";
        font-weight: 600;
        text-align: center;
        font-size: 3.4666666667vw;
        line-height: 6.6666666667vw;
        margin-top: 6.6666666667vw; }
      article .contents--top .obj {
        position: absolute;
        width: 82.1333333333vw;
        left: 50%;
        margin-left: -41.0666666667vw;
        top: 29.3333333333vw; }
      article .contents--top .under {
        width: 88vw;
        margin: auto auto auto 7.7333333333vw; }
    article .contents--sec {
      margin-top: 8.6666666667vw;
      background: url("../img/top/sec_2_back.jpg") no-repeat top center/cover;
      position: relative; }
      article .contents--sec .ttl {
        width: 84.6666666667vw;
        margin: 0 auto;
        padding-top: 13.3333333333vw; }
      article .contents--sec .txt {
        font-family: "mobo";
        font-weight: 600;
        text-align: center;
        font-size: 3.4666666667vw;
        line-height: 6.6666666667vw;
        margin-top: 8vw; }
      article .contents--sec .obj {
        position: absolute;
        width: 94.6666666667vw;
        right: 0;
        top: 65.3333333333vw; }
      article .contents--sec--under {
        display: flex;
        justify-content: center;
        margin-top: 2vw; }
        article .contents--sec--under .imgs {
          width: 33.3333333333vw; }
        article .contents--sec--under .btn {
          width: 36vw;
          margin: 4.6666666667vw 0 0 -4vw; }
        article .contents--sec--under .imgs_r {
          width: 28vw;
          margin-top: 11.3333333333vw; }
    article .contents--box {
      margin-top: 16vw;
      background: url("../img/top/sec_3_back.jpg") no-repeat top center/cover;
      padding-bottom: 28vw; }
      article .contents--box .ttltp {
        width: 73.3333333333vw;
        margin: 0 auto -7.3333333333vw;
        padding-top: 16vw; }
      article .contents--box--inner {
        width: 90.9333333333vw;
        margin: 27.3333333333vw auto 0;
        padding-bottom: 4vw;
        background: #fff;
        position: relative; }
        article .contents--box--inner:before, article .contents--box--inner:after {
          position: absolute;
          content: "";
          height: 5.3333333333vw;
          width: 90.9333333333vw; }
        article .contents--box--inner:before {
          background: url("../img/top/box_upper.svg") no-repeat top center/cover;
          top: -5.3333333333vw; }
        article .contents--box--inner:after {
          background: url("../img/top/box_under.svg") no-repeat top center/cover;
          bottom: -5.3333333333vw; }
        article .contents--box--inner--top .top {
          width: 15.2vw;
          margin: 0 auto -12.8vw;
          position: relative;
          top: -12.8vw; }
        article .contents--box--inner--top h3 {
          font-family: "mobo";
          font-weight: 700;
          text-align: center;
          font-size: 6.9333333333vw;
          line-height: 9.3333333333vw;
          margin-top: 6vw;
          color: #f29600; }
        article .contents--box--inner--top h4 {
          font-family: "mobo";
          font-weight: 600;
          font-size: 3.4666666667vw;
          line-height: 6.1333333333vw;
          padding: 5.3333333333vw 5.3333333333vw 0; }
        article .contents--box--inner--top .objunder {
          width: 18.1333333333vw;
          margin: 0vw 5.3333333333vw -2.6666666667vw auto; }
        article .contents--box--inner--top .uppercap {
          width: 48.5333333333vw;
          margin: 5.3333333333vw auto 0; }
        article .contents--box--inner .btn {
          width: 77.3333333333vw;
          border-radius: 8vw;
          margin: 5.3333333333vw auto 0;
          box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.4); }
        article .contents--box--inner--step .stimg {
          padding: 8vw 0 0; }
          article .contents--box--inner--step .stimg.map {
            padding: 4vw 5.3333333333vw 0; }
        article .contents--box--inner--movie {
          margin-top: 5.3333333333vw;
          padding: 5.3333333333vw 5.3333333333vw 0; }
          article .contents--box--inner--movie .moviebox {
            width: 100%; }
            article .contents--box--inner--movie .moviebox figure {
              background: #dcdddd;
              border: 0.2666666667vw solid #727171;
              position: relative; }
              article .contents--box--inner--movie .moviebox figure:before {
                position: absolute;
                content: "";
                background: url("../img/top/sec_3_arrow.svg") no-repeat center center/cover;
                width: 13.3333333333vw;
                height: 13.3333333333vw;
                top: 50%;
                margin-top: -6.6666666667vw;
                left: 50%;
                margin-left: -6.6666666667vw; }
            article .contents--box--inner--movie .moviebox .caption {
              font-family: "mobo";
              text-align: center;
              font-weight: 400;
              font-size: 3.4666666667vw;
              line-height: 5.3333333333vw;
              padding: 2vw 0vw 0; }
          article .contents--box--inner--movie.flex {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            padding-top: 0;
            gap: 0 4.2666666667vw; }
            article .contents--box--inner--movie.flex .moviebox {
              width: 37.8666666667vw; }
              article .contents--box--inner--movie.flex .moviebox.left {
                margin: 2.6666666667vw auto 0 0; }
        article .contents--box--inner .middlecap {
          width: 46.1333333333vw;
          margin: 5.3333333333vw auto 0; }
          article .contents--box--inner .middlecap.wid_2 {
            width: 57.3333333333vw; }
    article .contents--under {
      margin-top: 13.3333333333vw; }
      article .contents--under .ttl {
        width: 79.2vw;
        margin: 0 auto; }
      article .contents--under .underimg {
        width: 31.6vw;
        margin: -18.6666666667vw 5.3333333333vw 0 auto; }
      article .contents--under--box {
        position: relative;
        display: flex;
        flex-wrap: wrap;
        align-items: baseline;
        padding-top: 4vw; }
        article .contents--under--box .obj {
          position: relative; }
          article .contents--under--box .obj.wid_0 {
            width: 55.2vw;
            z-index: -1; }
          article .contents--under--box .obj.wid_1 {
            width: 6.6666666667vw;
            margin-left: 24vw;
            top: -8vw; }
          article .contents--under--box .obj.wid_2 {
            width: 3.3333333333vw;
            margin-left: 25.3333333333vw;
            margin-right: 40vw; }
          article .contents--under--box .obj.wid_3 {
            width: 6.6666666667vw;
            margin-left: 10.6666666667vw;
            top: -18.6666666667vw; }
          article .contents--under--box .obj.wid_4 {
            width: 6.6666666667vw;
            margin-left: 24vw;
            top: -13.3333333333vw; }
        article .contents--under--box .obj_r {
          position: absolute; }
          article .contents--under--box .obj_r.wid_1 {
            width: 40.5333333333vw;
            z-index: -1;
            right: 0;
            top: -22.6666666667vw; }
          article .contents--under--box .obj_r.wid_2 {
            width: 37.3333333333vw;
            z-index: -1;
            right: 0;
            top: -17.3333333333vw; }
          article .contents--under--box .obj_r.wid_3 {
            width: 45.3333333333vw;
            z-index: -1;
            right: 0;
            top: -22.6666666667vw; }
          article .contents--under--box .obj_r.wid_4 {
            width: 36.8vw;
            z-index: -1;
            right: 4vw;
            top: -20vw; }
        article .contents--under--box h5 {
          position: relative;
          margin-left: 5.3333333333vw;
          margin-right: -5.3333333333vw; }
          article .contents--under--box h5.wid_1 {
            width: 40vw; }
          article .contents--under--box h5.wid_2 {
            width: 44.6666666667vw;
            margin-top: 8vw; }
          article .contents--under--box h5.wid_3 {
            width: 70.1333333333vw;
            margin-top: 2.6666666667vw; }
          article .contents--under--box h5.wid_4 {
            width: 61.6vw;
            margin-top: 2.6666666667vw; }
          article .contents--under--box h5.wid_5 {
            width: 45.8666666667vw;
            margin-top: 2.6666666667vw; }
          article .contents--under--box h5.wid_6 {
            width: 70.1333333333vw;
            margin-top: 2.6666666667vw; }
          article .contents--under--box h5.wid_7 {
            width: 51.7333333333vw;
            margin-top: 2.6666666667vw; }
          article .contents--under--box h5.wid_8 {
            width: 45.8666666667vw;
            margin-top: 2.6666666667vw; }
          article .contents--under--box h5.wid_9 {
            width: 36.8vw;
            margin-top: 2.6666666667vw; }
        article .contents--under--box .img {
          width: 90.9333333333vw;
          margin: 0 auto; }
          article .contents--under--box .img.wid_1 {
            margin-top: -5.3333333333vw; }
        article .contents--under--box .txt {
          width: 90.9333333333vw;
          margin: 0 auto;
          text-align: justify;
          font-family: "mobo";
          font-weight: 600;
          font-size: 3.3333333333vw;
          line-height: 6vw;
          margin-top: 2vw; }
        article .contents--under--box--btn {
          width: 90.9333333333vw;
          margin: 4vw auto 0;
          display: flex;
          flex-wrap: wrap; }
          article .contents--under--box--btn .btn {
            width: 44vw; }
            article .contents--under--box--btn .btn:nth-child(2) {
              margin-left: 2.6666666667vw; }
            article .contents--under--box--btn .btn:nth-child(3) {
              margin-top: 2.6666666667vw; }
    article.listback {
      background: url("../img/list/back.jpg") no-repeat center top/cover;
      padding-bottom: 5.3333333333vw; }
    article .kvcont {
      width: 39.4666666667vw;
      margin: 0 auto;
      padding-top: 14.6666666667vw; }
    article .contentslist {
      background: #fff;
      width: 80.2666666667vw;
      margin: 6.6666666667vw auto 0;
      border-radius: 4vw;
      padding: 0 5.3333333333vw 5.3333333333vw; }
      article .contentslist h3 {
        font-family: "mobo";
        font-weight: 600;
        text-align: center;
        font-size: 5.3333333333vw;
        line-height: 1;
        padding: 9.3333333333vw 0 5.3333333333vw; }
      article .contentslist table {
        width: 100%;
        font-family: "mobo";
        font-weight: 400;
        font-size: 2.6666666667vw; }
        article .contentslist table .bt {
          border-top: 0.5333333333vw solid #000; }
        article .contentslist table th {
          text-align: center;
          padding: 2.6666666667vw 0;
          font-weight: 600; }
        article .contentslist table td {
          padding: 0.8vw 1.3333333333vw; }
          article .contentslist table td:last-child {
            text-align: center; }
          article .contentslist table td.tb {
            font-weight: 600;
            text-align: center;
            -webkit-writing-mode: vertical-rl;
            -moz-writing-mode: vertical-rl;
            -ms-writing-mode: tb-rl;
            -ms-writing-mode: vertical-rl;
            writing-mode: vertical-rl; }
          article .contentslist table td.cl_1 {
            background: #d7e6be; }
          article .contentslist table td.cl_2 {
            background: #afe1ff; }
          article .contentslist table td.cl_3 {
            background: #dce1ff; }
          article .contentslist table td.cl_4 {
            background: #ffe6ee; }
          article .contentslist table td.cl_5 {
            background: #ffe6c8; }

  .present .kvpresent {
    position: relative; }
    .present .kvpresent h1 {
      position: absolute;
      z-index: 2;
      top: 0;
      left: 0; }
  .present .contents {
    position: relative;
    z-index: 2;
    width: 100vw;
    margin: 0 auto;
    overflow: hidden;
    background: url("../img/present/back_1.jpg") no-repeat center top/cover;
    padding-bottom: 5.3333333333vw; }
    .present .contents.back_2 {
      background: url("../img/present/back_2.jpg") no-repeat center top/cover; }
    .present .contents .loop_wrap {
      display: flex;
      width: 100vw;
      overflow: hidden;
      padding-top: 2.6666666667vw; }
      .present .contents .loop_wrap img {
        width: auto;
        height: 100%;
        padding: 0 1.3333333333vw; }
    .present .contents .loop_wrap img:first-child {
      animation: loop 150s -75s linear infinite; }
    .present .contents .loop_wrap img:last-child {
      animation: loop2 150s linear infinite; }
    .present .contents .banner {
      width: 80vw;
      margin: 0 auto;
      padding: 8vw 0; }
    .present .contents .tab {
      width: 90.9333333333vw;
      margin: 0 auto;
      display: flex;
      justify-content: space-between; }
      .present .contents .tab .tabs {
        width: 44vw;
        height: 20.8vw;
        text-indent: -9999px;
        cursor: pointer; }
        .present .contents .tab .tabs:first-child {
          background: url("../img/present/tab_1_off.svg") no-repeat top center/cover; }
          .present .contents .tab .tabs:first-child.active {
            background: url("../img/present/tab_1_on.svg") no-repeat top center/cover; }
        .present .contents .tab .tabs:last-child {
          background: url("../img/present/tab_2_off.svg") no-repeat top center/cover; }
          .present .contents .tab .tabs:last-child.active {
            background: url("../img/present/tab_2_on.svg") no-repeat top center/cover; }
    .present .contents .tabcontents {
      width: 80.2666666667vw;
      margin: 0 auto;
      background: #fff;
      padding: 5.3333333333vw;
      display: none; }
      .present .contents .tabcontents.show {
        display: block; }
      .present .contents .tabcontents h3 {
        margin: 0 auto;
        padding: 2.6666666667vw 0 6.6666666667vw; }
        .present .contents .tabcontents h3.wid_1 {
          width: 49.3333333333vw; }
        .present .contents .tabcontents h3.wid_2 {
          width: 50.6666666667vw; }
      .present .contents .tabcontents--step .ttl {
        width: 29.3333333333vw;
        margin: 0 auto; }
      .present .contents .tabcontents--step .caption {
        text-align: center;
        font-family: "mobo";
        font-weight: 600;
        font-size: 1.6vw;
        margin-top: 1.3333333333vw; }
      .present .contents .tabcontents--step .stimg {
        margin-top: 4vw; }
      .present .contents .tabcontents--movie {
        margin-top: 5.3333333333vw;
        padding: 5.3333333333vw 0vw 0; }
        .present .contents .tabcontents--movie .moviebox {
          width: 37.8666666667vw; }
          .present .contents .tabcontents--movie .moviebox figure {
            background: #dcdddd;
            position: relative; }
            .present .contents .tabcontents--movie .moviebox figure:before {
              position: absolute;
              content: "";
              background: url("../img/present/arrow_1.svg") no-repeat center center/cover;
              width: 8vw;
              height: 8vw;
              top: 50%;
              margin-top: -4vw;
              left: 50%;
              margin-left: -4vw; }
          .present .contents .tabcontents--movie .moviebox .caption {
            font-family: "mobo";
            text-align: center;
            font-weight: 400;
            font-size: 3.4666666667vw;
            line-height: 5.3333333333vw;
            padding: 2vw 0vw 0; }
        .present .contents .tabcontents--movie.flex {
          display: flex;
          flex-wrap: wrap;
          justify-content: center;
          padding-top: 0;
          gap: 0 4.2666666667vw; }
          .present .contents .tabcontents--movie.flex .moviebox {
            width: 37.8666666667vw; }
            .present .contents .tabcontents--movie.flex .moviebox.left {
              margin: 2.6666666667vw auto 0 0; }
        .present .contents .tabcontents--movie.flex_2 {
          display: flex;
          flex-wrap: wrap;
          justify-content: center;
          padding-top: 0;
          gap: 0 4.2666666667vw; }
          .present .contents .tabcontents--movie.flex_2 .moviebox {
            width: 37.8666666667vw; }
            .present .contents .tabcontents--movie.flex_2 .moviebox figure:before {
              background: url("../img/present/arrow_2.svg") no-repeat center center/cover; }
            .present .contents .tabcontents--movie.flex_2 .moviebox.left {
              margin: 2.6666666667vw auto 0 0; }
      .present .contents .tabcontents .captionlist {
        font-family: "mobo";
        font-weight: 400;
        font-size: 2.6666666667vw;
        line-height: 4vw;
        padding: 5.3333333333vw 0; }
      .present .contents .tabcontents .btn {
        width: 77.3333333333vw;
        border-radius: 8vw;
        margin: 5.3333333333vw auto 0;
        box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.4); }
      .present .contents .tabcontents .kiyaku {
        text-align: center;
        font-family: "mobo";
        font-weight: 600;
        font-size: 2.1333333333vw;
        padding: 5.3333333333vw 0 0; }
        .present .contents .tabcontents .kiyaku a {
          display: inline;
          text-decoration: underline; }
      .present .contents .tabcontents--present .ttl {
        width: 41.3333333333vw;
        margin: 8vw auto 0; }
      .present .contents .tabcontents--present--flex {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap; }
        .present .contents .tabcontents--present--flex .box {
          width: 38.1333333333vw;
          margin-top: 2vw; }
          .present .contents .tabcontents--present--flex .box dl {
            font-family: "mobo";
            font-size: 2.9333333333vw;
            font-weight: 600;
            margin-top: 0.8vw; }
            .present .contents .tabcontents--present--flex .box dl dt {
              color: #0075c2;
              letter-spacing: -0.04em; }
            .present .contents .tabcontents--present--flex .box dl dd {
              letter-spacing: -0.06em; }
        .present .contents .tabcontents--present--flex.cl_2 .box {
          width: 100%; }
          .present .contents .tabcontents--present--flex.cl_2 .box dl dt {
            color: #de829a; }

  footer {
    width: 80vw;
    margin: 0 auto;
    background: #727171;
    padding: 8vw 10vw;
    color: #fff;
    position: relative; }
    footer a {
      color: #fff;
      display: inline;
      text-decoration: underline; }
    footer .links {
      text-align: center;
      font-family: "mobo";
      font-weight: 700;
      font-size: 4vw;
      line-height: 6vw; }
    footer .address {
      text-align: center;
      font-family: "mobo";
      font-weight: 400;
      font-size: 2.1333333333vw;
      line-height: 4vw;
      padding: 3.3333333333vw 0; }
    footer .copy {
      text-align: center;
      font-family: "mobo";
      font-weight: 400;
      font-size: 2.1333333333vw; }

  .pagetop {
    position: absolute;
    width: 8vw;
    height: 8vw;
    top: 2.6666666667vw;
    right: 2.6666666667vw; } }
/* =========================================================
 * reset　　　    /*リセット
========================================================= */
blockquote, body, div, dl, dt, dd, fieldset, form, h1, h2, h3, h4, h5, h6, input, li, ol, p, pre, select, span, textarea, td, th, ul, figure, figcaption {
  margin: 0px;
  padding: 0px; }

fieldset, img {
  border: 0; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal; }

ol {
  list-style-type: none; }

ul {
  list-style-type: none; }
  ul li {
    list-style-type: none; }
    ul li img {
      line-height: 0;
      font-size: 0;
      vertical-align: top; }

img {
  border: none;
  vertical-align: bottom; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th {
  text-align: left; }

iframe {
  border: none; }

a:focus {
  outline: none; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal; }

/* IE */
* html ul li dl, * html ol li dl {
  display: inline; }
*:first-child + html ul li dl, *:first-child + html ol li dl {
  display: inline; }

/* =========================================================
 * default settings      　   /*デフォルトセッティング
========================================================= */
html {
  font-size: 62.5%;
  overflow: auto; }

* {
  	/*box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;*/
  word-break: break-all;
  /*CJK (中国語、台湾語、日本語、韓国語) 以外のテキストにおいて、単語中などでの文字の改行に関する禁則処理を解除し、どの文字の間でも改行するようにします。*/ }

body {
  overflow: hidden;
  -webkit-text-size-adjust: 100%;
  font: inherit;
  font-size: 1vw;
  font-family: 'Noto Sans JP', sans-serif;
  line-height: 1.4;
  color: #000;
  background: #fff; }

a {
  width: 100%;
  height: auto;
  display: block;
  text-decoration: none;
  color: #333;
  -webkit-transition: opacity 0.3s ease-out;
  -moz-transition: opacity 0.3s ease-out;
  -ms-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out; }
  a:hover {
    opacity: 0.7;
    -webkit-opacity: .7;
    -moz-opacity: .7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)"; }

.soon {
  pointer-events: none;
  opacity: .5; }

.hide, .hidden {
  visibility: hidden; }

p {
  line-break: strict; }

img {
  max-width: 100%; }

main {
  display: block; }

.pc {
  display: block; }

.sp {
  display: none; }

@media screen and (max-width: 767px) {
  body {
    -webkit-text-size-adjust: 100%;
    background: #fff;
    min-width: 100%; }

  a {
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    transition: none; }
    a:hover {
      opacity: 1;
      -webkit-opacity: 1;
      -moz-opacity: 1;
      filter: alpha(opacity=100);
      /* IE lt 8 */
      -ms-filter: "alpha(opacity=100)";
      /* IE 8 */ }

  img {
    width: 100%; }

  .pc {
    display: none; }

  .sp {
    display: block; } }
/* =========================================================
 * font
========================================================= */
/*noto-sans*/
@font-face {
  font-family: "mobo";
  font-weight: 300;
  src: url("../font/MOBO/MOBO-ExtraLight.otf") format("opentype"); }
@font-face {
  font-family: "mobo";
  font-weight: 400;
  src: url("../font/MOBO/MOBO-Regular.otf") format("opentype"); }
@font-face {
  font-family: "mobo";
  font-weight: 600;
  src: url("../font/MOBO/MOBO-SemiBold.otf") format("opentype"); }
@font-face {
  font-family: "mobo";
  font-weight: 700;
  src: url("../font/MOBO/MOBO-Bold.otf") format("opentype"); }
.font-noto {
  font-family: 'Noto Sans JP', sans-serif; }

/* =========================================================
 * clearfix　　   /*クリアフィックス
========================================================= */
.clearfix {
  zoom: 1; }
  .clearfix:before {
    content: "";
    display: table; }
  .clearfix:after {
    content: "";
    display: table;
    clear: both; }

/* =========================================================
 * fade Animation　　   /*フェード アニメーション
========================================================= */
.fade,
.fadein,
.fadein-top,
.fadein-left,
.fadein-right,
.opening {
  position: relative;
  opacity: 0;
  transition: opacity 0.875s ease-in-out , transform 0.875s ease-in-out; }

.fade {
  transform: translate(0, 0); }

.fadein {
  transform: translate(0, 50px); }

.fadein-top {
  transform: translate(0, -50px); }

.fadein-left {
  transform: translate(-50px, 0); }

.fadein-right {
  transform: translate(50px, 0); }

.fade.scrollin,
.fadein.scrollin,
.fadein-top.scrollin,
.fadein-left.scrollin,
.fadein-right.scrollin,
.opening.active {
  opacity: 1 !important;
  transform: translate(0, 0); }

/* =========================================================
 * scrollbar　　   /*フスクロールバー
========================================================= */
/* モーダルのスタイル */
.modal {
  display: none;
  /* 初期は非表示 */
  position: fixed;
  /* スクロールしても固定される */
  z-index: 3;
  /* 最前面に表示 */
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  /* 背景の半透明効果 */ }

.modal-outer {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%; }

.modal-content {
  background-color: none;
  margin: 0 auto;
  padding: 0;
  border: none;
  width: 21.3333333333vw;
  /* モーダルの幅を調整 */
  position: relative;
  max-height: 100vh;
  /* モーダルの高さを制限して、はみ出た場合にスクロール可能に */
  overflow-y: auto;
  /* 縦方向にスクロールできるようにする */ }

.close {
  position: absolute;
  width: 2.6666666667vw;
  height: 2.6666666667vw;
  right: 1.6666666667vw;
  top: 1.6666666667vw; }

.close:hover, .close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer; }

#myModal2 .modal-content {
  width: 36.6666666667vw; }

.top img {
  max-width: 100%;
  width: 100%;
  height: auto; }
.top article {
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 1; }
  .top article .kv--back {
    max-width: 100%;
    height: auto;
    margin: 0 auto;
    background: url("../img/back_pc.jpg") no-repeat center center/cover;
    padding-bottom: 50px; }
    .top article .kv--back h1 {
      width: calc(750px * 1.2);
      margin: 0 auto;
      padding: 50px 0; }
    .top article .kv--back h2 {
      width: calc(650px * 1.2);
      margin: 0 auto; }
    .top article .kv--back--inner {
      width: calc(650px * 1.1);
      display: block;
      justify-content: space-between;
      margin: 50px auto 50px; }
      .top article .kv--back--inner h3 {
        width: calc(650px * 1.1);
        margin: 0.6666666667vw auto 0; }
    .top article .kv--back .btn {
      width: calc(650px * 1.2);
      margin: 15px auto 0;
      padding-bottom: 0px; }
  .top article .kv--ancher {
    display: flex;
    justify-content: space-between;
    width: calc(750px * 1.2);
    margin: 0 auto; }
    .top article .kv--ancher li {
      width: 25%; }
      .top article .kv--ancher li img {
        filter: drop-shadow(0px 5px 3px #545454); }
  .top article .contents--top h4 {
    width: calc(650px * 1.2);
    margin: 0 auto;
    padding: 50px 0 50px; }
  .top article .contents--top .modalbtn {
    width: calc(450px * 1.2);
    margin: 0 auto; }
  .top article .contents .contentsbox {
    padding-top: 50px; }
    .top article .contents .contentsbox .ttlsmall {
      width: calc(500px * 1.2);
      margin: 0 auto; }
    .top article .contents .contentsbox--flex {
      width: calc(650px * 1.2);
      display: block;
      justify-content: center;
      align-items: center;
      margin: 0vw auto 0; }
      .top article .contents .contentsbox--flex p {
        width: 100%; }
        .top article .contents .contentsbox--flex p:nth-child(2) {
          margin-top: 0vw; }
      .top article .contents .contentsbox--flex.wid_2 {
        padding-top: 50px; }
        .top article .contents .contentsbox--flex.wid_2 p {
          width: calc(550px * 1.2);
          margin: 0 auto; }
          .top article .contents .contentsbox--flex.wid_2 p:nth-child(2) {
            margin-top: 25px; }
    .top article .contents .contentsbox .under, .top article .contents .contentsbox .btn {
      width: calc(650px * 1.2);
      margin: 0 auto;
      padding: 50px 0 1.3333333333vw; }
    .top article .contents .contentsbox .btn {
      padding: 20px 0 0vw; }
    .top article .contents .contentsbox .map {
      width: calc(650px * 1.2);
      margin: 0 auto;
      margin-top: 0vw;
      margin-bottom: 2vw; }
    .top article .contents .contentsbox .mapttl {
      width: calc(650px * 1.2);
      margin: 50px auto -75px;
      text-align: center; }
      .top article .contents .contentsbox .mapttl img {
        width: calc(550px * 1.2); }
      .top article .contents .contentsbox .mapttl.toggle {
        position: relative; }
        .top article .contents .contentsbox .mapttl.toggle:after {
          position: absolute;
          content: "";
          width: 0;
          height: 0;
          right: 3.3333333333vw;
          top: 50%;
          margin-top: -0.5vw;
          border-left: 0.6666666667vw solid transparent;
          border-right: 0.6666666667vw solid transparent;
          border-top: 1vw solid #fff; }
        .top article .contents .contentsbox .mapttl.toggle.active:after {
          position: absolute;
          content: "";
          width: 0;
          height: 0;
          right: 3.3333333333vw;
          top: 50%;
          margin-top: -0.5vw;
          border-left: 0.6666666667vw solid transparent;
          border-right: 0.6666666667vw solid transparent;
          border-bottom: 1vw solid #fff;
          border-top: none; }
    .top article .contents .contentsbox .toggle_inner {
      width: calc(650px * 1.2);
      margin: 0 auto;
      padding-top: 40px; }
      .top article .contents .contentsbox .toggle_inner .innerflex {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        box-sizing: border-box;
        border: 6px solid #e01714;
        padding: 30px; }
        .top article .contents .contentsbox .toggle_inner .innerflex li {
          width: 49.5%;
          margin-top: 2%; }
      .top article .contents .contentsbox .toggle_inner .captiontxt {
        font-size: 14px;
        line-height: 1.8;
        padding-top: 20px; }
    .top article .contents .contentsbox--inner {
      width: calc(700px * 1.2);
      margin: 0 auto;
      padding: 0 15px 40px;
      position: relative; }
      .top article .contents .contentsbox--inner:before {
        position: absolute;
        content: "";
        top: 0;
        left: 0;
        width: 100%;
        height: 105px;
        background: #fff; }
      .top article .contents .contentsbox--inner.cl_1 {
        background: #D9EAF6; }
      .top article .contents .contentsbox--inner.cl_2 {
        background: #FCE7D9;
        margin-top: 50px; }
      .top article .contents .contentsbox--inner--box {
        position: relative; }
        .top article .contents .contentsbox--inner--box .lead {
          padding: 50px 100px 20px; }
        .top article .contents .contentsbox--inner--box ul {
          display: flex;
          justify-content: space-between;
          align-items: flex-start;
          flex-wrap: wrap;
          padding: 0 0px; }
          .top article .contents .contentsbox--inner--box ul li {
            width: 49.5%;
            margin-top: 2%; }
    .top article .contents .contentsbox .capright {
      width: calc(730px * 1.2);
      margin: 0 auto;
      text-align: right;
      padding: 15px 0 0;
      font-size: 14px; }
    .top article .contents .contentsbox .middleimg {
      width: calc(650px * 1.2);
      margin: 0 auto;
      padding: 50px 0 0vw; }
    .top article .contents .contentsbox .middletxt {
      text-align: center;
      font-size: 14px;
      padding: 20px 0 120px; }
    .top article .contents .contentsbox--back {
      max-width: 100%;
      margin: 0 auto;
      background: url("../img/back_middle_pc.jpg") no-repeat top center/cover;
      padding-bottom: 4.6666666667vw; }
      .top article .contents .contentsbox--back .lead {
        width: calc(700px * 1.2);
        margin: 0 auto;
        position: relative;
        top: -50px; }
      .top article .contents .contentsbox--back .imgs {
        width: calc(700px * 1.2);
        margin: 0 auto; }
      .top article .contents .contentsbox--back .txtimg {
        width: calc(700px * 1.2);
        text-align: center;
        margin: 0 auto; }
      .top article .contents .contentsbox--back .wid_2 {
        width: calc(700px * 1.2);
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap; }
        .top article .contents .contentsbox--back .wid_2 li {
          width: 49.5%;
          margin-top: 2%; }
          .top article .contents .contentsbox--back .wid_2 li:last-child {
            margin-top: 2%; }
    .top article .contents .contentsbox--wrap {
      width: calc(700px * 1.2);
      margin: 0 auto; }
      .top article .contents .contentsbox--wrap--box {
        position: relative; }
        .top article .contents .contentsbox--wrap--box ul {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between; }
          .top article .contents .contentsbox--wrap--box ul li {
            width: 49.5%;
            margin-top: 2%; }
        .top article .contents .contentsbox--wrap--box .imgs {
          position: absolute;
          right: 0;
          bottom: -20px;
          width: calc(330px * 1.2); }
      .top article .contents .contentsbox--wrap--inner {
        padding-top: 70px; }
        .top article .contents .contentsbox--wrap--inner--box {
          background: #FFFF77;
          border-radius: 20px;
          padding: 30px; }
          .top article .contents .contentsbox--wrap--inner--box .imgs {
            width: calc(650px * 1.2);
            margin: 0 auto; }
          .top article .contents .contentsbox--wrap--inner--box .btnx {
            width: calc(650px * 1.2);
            margin: 15px auto 0; }
        .top article .contents .contentsbox--wrap--inner .cap_txt {
          font-size: 13px;
          line-height: 1.8;
          padding-top: 20px; }
  .top article .contents--first {
    margin-top: 50px; }
    .top article .contents--first h5 {
      width: 450px;
      margin: 0 auto -30px; }
  .top article .contents--second {
    margin-top: 150px;
    position: relative; }
    .top article .contents--second h5 {
      width: 450px;
      margin: 0 auto; }
    .top article .contents--second .obj {
      width: 200px;
      position: absolute;
      top: -50px;
      left: 50%;
      margin-left: -430px;
      z-index: 1; }
  .top article .contents--third {
    margin-top: 100px; }
    .top article .contents--third h5 {
      width: 450px;
      margin: 0 auto; }
  .top article .contents--forth {
    margin-top: 100px; }
    .top article .contents--forth h5 {
      width: 450px;
      margin: 0 auto;
      position: relative;
      margin-bottom: -50px; }
    .top article .contents--forth .contentsbox {
      background: #ACDDF7;
      padding: 70px 0;
      width: 100%; }

@media screen and (max-width: 767px) {
  .modal-content {
    background-color: none;
    margin: 10% auto;
    padding: 0;
    border: none;
    width: 85%;
    /* モーダルの幅を調整 */
    position: relative;
    max-height: 100vh;
    /* モーダルの高さを制限して、はみ出た場合にスクロール可能に */
    overflow-y: auto;
    /* 縦方向にスクロールできるようにする */ }

  .close {
    position: absolute;
    width: 13.3333333333vw;
    height: 13.3333333333vw;
    right: 10.6666666667vw;
    top: 10.6666666667vw; }

  #myModal2 .modal-content {
    width: 186.6666666667vw; }

  .top img {
    max-width: 100%;
    width: 100%;
    height: auto; }
  .top article {
    width: 100%; }
    .top article .kv--back {
      background: url("../img/back_sp.jpg") no-repeat top center/cover;
      padding-bottom: 12vw; }
      .top article .kv--back h1 {
        width: 192vw;
        margin: 0 auto;
        padding: 29.3333333333vw 0 12vw; }
      .top article .kv--back h2 {
        width: 153.3333333333vw;
        margin: 0 auto; }
      .top article .kv--back--inner {
        width: 153.3333333333vw;
        display: block;
        justify-content: space-between;
        margin: 6.6666666667vw auto 6.6666666667vw; }
        .top article .kv--back--inner h3 {
          width: 100%;
          margin-top: 5.3333333333vw; }
      .top article .kv--back .btn {
        width: 160vw;
        margin: 1.3333333333vw auto 0;
        padding-bottom: 0; }
    .top article .kv--ancher {
      display: flex;
      justify-content: space-between;
      width: 100%;
      margin: 0 auto; }
      .top article .kv--ancher li {
        width: 25%; }
        .top article .kv--ancher li img {
          filter: drop-shadow(0px 2px 2px #545454); }
    .top article .contents--top h4 {
      width: 154.6666666667vw;
      margin: 0 auto;
      padding: 22.6666666667vw 0 18.6666666667vw; }
    .top article .contents--top .modalbtn {
      width: 178.6666666667vw;
      margin: 0 auto; }
    .top article .contents .contentsbox {
      padding-top: 21.3333333333vw; }
      .top article .contents .contentsbox .ttlsmall {
        width: 61.3333333333vw;
        margin: 0 auto; }
      .top article .contents .contentsbox--flex {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        margin: -21.3333333333vw auto 0; }
        .top article .contents .contentsbox--flex p {
          width: 178.6666666667vw; }
          .top article .contents .contentsbox--flex p:nth-child(2) {
            margin-top: 0vw; }
        .top article .contents .contentsbox--flex.wid_2 {
          margin: 0 auto;
          padding-top: 6.6666666667vw; }
          .top article .contents .contentsbox--flex.wid_2 p {
            width: 160vw;
            margin: 6.6666666667vw 0 0; }
      .top article .contents .contentsbox .under {
        width: 118.6666666667vw;
        margin: 0 auto;
        padding: 10.6666666667vw 0 0vw; }
      .top article .contents .contentsbox .btn {
        width: 149.3333333333vw;
        margin: 0 auto;
        padding: 5.3333333333vw 0 0vw; }
      .top article .contents .contentsbox .map {
        width: 186.6666666667vw;
        margin: 0 auto;
        margin-top: 0vw;
        margin-bottom: 8vw; }
      .top article .contents .contentsbox .mapttl {
        width: 176vw;
        margin: 0 auto -34.6666666667vw;
        text-align: center; }
        .top article .contents .contentsbox .mapttl img {
          width: 176vw; }
        .top article .contents .contentsbox .mapttl.toggle {
          position: relative; }
          .top article .contents .contentsbox .mapttl.toggle:after {
            position: absolute;
            content: "";
            width: 0;
            height: 0;
            right: 3.3333333333vw;
            top: 50%;
            margin-top: -1vw;
            border-left: 1.3333333333vw solid transparent;
            border-right: 1.3333333333vw solid transparent;
            border-top: 2vw solid #fff; }
          .top article .contents .contentsbox .mapttl.toggle.active:after {
            position: absolute;
            content: "";
            width: 0;
            height: 0;
            right: 3.3333333333vw;
            top: 50%;
            margin-top: -1vw;
            border-left: 1.3333333333vw solid transparent;
            border-right: 1.3333333333vw solid transparent;
            border-bottom: 2vw solid #fff;
            border-top: none; }
      .top article .contents .contentsbox .toggle_inner {
        width: 186.6666666667vw;
        margin: 0 auto; }
        .top article .contents .contentsbox .toggle_inner .innerflex {
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap;
          box-sizing: border-box;
          border: 1.0666666667vw solid #e01714;
          padding: 21.3333333333vw 8vw 10.6666666667vw; }
          .top article .contents .contentsbox .toggle_inner .innerflex li {
            width: 49%;
            margin-top: 2.6666666667vw; }
        .top article .contents .contentsbox .toggle_inner .captiontxt {
          font-size: 4.5333333333vw;
          line-height: 1.8;
          padding-top: 5.3333333333vw; }
      .top article .contents .contentsbox--inner {
        width: 186.6666666667vw;
        margin: 0 auto;
        padding: 0 0vw 10.6666666667vw;
        position: relative; }
        .top article .contents .contentsbox--inner:before {
          position: absolute;
          content: "";
          top: 0;
          left: 0;
          width: 100%;
          height: 8.6666666667vw;
          background: #fff; }
        .top article .contents .contentsbox--inner.cl_1 {
          background: #D9EAF6; }
        .top article .contents .contentsbox--inner.cl_2 {
          background: #FCE7D9;
          margin-top: 26.6666666667vw; }
        .top article .contents .contentsbox--inner .ttl {
          padding: 0 4vw; }
        .top article .contents .contentsbox--inner--box {
          position: relative; }
          .top article .contents .contentsbox--inner--box .lead {
            width: 152vw;
            margin: 0 auto;
            padding: 21.3333333333vw 0vw 5.3333333333vw; }
          .top article .contents .contentsbox--inner--box ul {
            display: block;
            justify-content: space-between;
            align-items: flex-start;
            flex-wrap: wrap;
            padding: 0; }
            .top article .contents .contentsbox--inner--box ul li {
              width: 100%;
              position: relative;
              padding-bottom: 10.6666666667vw;
              margin-bottom: 10.6666666667vw; }
              .top article .contents .contentsbox--inner--box ul li:after {
                position: absolute;
                content: "";
                background: url("../img/line_1.svg") no-repeat center center/cover;
                width: 149.3333333333vw;
                height: 5.6vw;
                bottom: 0;
                left: 50%;
                margin-left: -74.6666666667vw; }
              .top article .contents .contentsbox--inner--box ul li:last-child:after {
                content: none; }
      .top article .contents .contentsbox .capright {
        width: 186.6666666667vw;
        margin: 0 auto;
        text-align: right;
        padding: 4vw 0 0;
        font-size: 4.5333333333vw; }
      .top article .contents .contentsbox .middleimg {
        width: 176vw;
        margin: 0 auto;
        padding: 3.3333333333vw 0 0vw; }
      .top article .contents .contentsbox .middletxt {
        text-align: center;
        font-size: 4.5333333333vw;
        padding: 5.3333333333vw 0 48vw; }
      .top article .contents .contentsbox--back {
        width: 100%;
        margin: 0 auto;
        background: url("../img/back_middle_sp.jpg") no-repeat top center/cover;
        padding-bottom: 32vw; }
        .top article .contents .contentsbox--back .lead {
          width: 184vw;
          margin: 0 auto;
          position: relative;
          top: -18.6666666667vw;
          margin-bottom: -10.6666666667vw; }
        .top article .contents .contentsbox--back .imgs {
          width: 100%;
          margin: 0 auto; }
        .top article .contents .contentsbox--back .txtimg {
          width: 192vw;
          text-align: center;
          margin: 0 auto; }
        .top article .contents .contentsbox--back .wid_2 {
          width: 192vw;
          margin: 0 auto;
          display: flex;
          justify-content: center;
          flex-wrap: wrap; }
          .top article .contents .contentsbox--back .wid_2 li {
            width: 50%;
            margin: 0 -1%;
            margin-top: 8vw; }
            .top article .contents .contentsbox--back .wid_2 li:last-child {
              margin-top: 8vw; }
      .top article .contents .contentsbox--wrap {
        width: 100%;
        background: #ACDDF7;
        padding: 18.6666666667vw 0vw; }
        .top article .contents .contentsbox--wrap--box {
          position: relative; }
          .top article .contents .contentsbox--wrap--box ul {
            width: auto;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            padding: 8vw 5.3333333333vw; }
            .top article .contents .contentsbox--wrap--box ul li {
              width: 49.5%;
              margin-top: 2.6666666667vw; }
          .top article .contents .contentsbox--wrap--box .imgs {
            position: absolute;
            right: 8vw;
            bottom: -8vw;
            width: 90.6666666667vw; }
        .top article .contents .contentsbox--wrap--inner {
          padding: 0 8vw;
          padding-top: 18.6666666667vw; }
          .top article .contents .contentsbox--wrap--inner--box {
            border-radius: 5.3333333333vw;
            padding: 8vw; }
            .top article .contents .contentsbox--wrap--inner--box .imgs {
              width: 100%;
              margin: 0 auto; }
            .top article .contents .contentsbox--wrap--inner--box .btnx {
              width: 100%;
              margin: 4vw auto 0; }
          .top article .contents .contentsbox--wrap--inner .cap_txt {
            font-size: 4.5333333333vw;
            line-height: 1.8;
            padding-top: 5.3333333333vw; }
    .top article .contents--first {
      margin-top: 26.6666666667vw; }
      .top article .contents--first h5 {
        width: 90.6666666667vw;
        margin: 0 auto; }
    .top article .contents--second {
      margin-top: 53.3333333333vw;
      position: relative; }
      .top article .contents--second h5 {
        width: 90.6666666667vw;
        margin: 0 auto; }
      .top article .contents--second .obj {
        width: 45.3333333333vw;
        position: absolute;
        top: -18.6666666667vw;
        left: 5.3333333333vw;
        margin-left: 0; }
    .top article .contents--third {
      margin-top: 53.3333333333vw; }
      .top article .contents--third h5 {
        width: 90.6666666667vw;
        margin: 0 auto -5.3333333333vw; }
    .top article .contents--forth {
      margin-top: 40vw; }
      .top article .contents--forth h5 {
        width: 90.6666666667vw;
        margin: 0 auto;
        position: relative;
        margin-bottom: -10.6666666667vw; }
      .top article .contents--forth .contentsbox {
        width: 100%;
        padding: 0; } }
</pre></body></html>