@charset "UTF-8";
.lp .maintop {
  position: relative;
  width: 78.7692307692vw;
  margin: 0 auto;
  margin-top: 10.7692307692vw; }
  .lp .maintop figure {
    width: 78.7692307692vw;
    margin: 0 auto;
    overflow: hidden; }
    .lp .maintop figure.fam {
      border-radius: 0; }
      .lp .maintop figure.fam img {
        margin-top: -3.0769230769vw;
        width: 105%;
        margin-left: -2.5%; }
  .lp .maintop h2.sef {
    width: 49.2307692308vw;
    text-align: center;
    position: absolute;
    top: 10vw;
    left: 50%;
    margin-left: -24.6153846154vw;
    font-size: 4.6153846154vw;
    color: #fff; }
    .lp .maintop h2.sef small {
      display: block;
      font-size: 2.9230769231vw;
      border-top: 0.0769230769vw solid #fff;
      padding-top: 0.3846153846vw; }
  .lp .maintop h2.fam {
    width: 44.6153846154vw;
    top: -7.6923076923vw;
    left: 0vw;
    position: absolute; }
  .lp .maintop h2.hei {
    width: 56.9230769231vw;
    bottom: -0.7692307692vw;
    left: 0vw;
    position: absolute; }
  .lp .maintop h2.gak {
    width: 53.8461538462vw;
    margin: -3.0769230769vw auto 0;
    margin-bottom: 3.0769230769vw; }
  .lp .maintop .under {
    background: #009944;
    font-size: 2.3076923077vw;
    padding: 1.5384615385vw 0;
    text-align: center;
    width: 78.7692307692vw;
    margin: 0 auto;
    color: #fff;
    font-family: "sichandich", sans-serif;
    font-weight: 400;
    font-style: normal;
    margin-bottom: -3.8461538462vw; }
  .lp .maintop .anchor {
    margin-top: 6.1538461538vw;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: -3.0769230769vw;
    gap: 0.3846153846vw; }
    .lp .maintop .anchor li {
      border: 0.0769230769vw solid #009944;
      color: #009944;
      font-size: 1.2307692308vw;
      text-align: center;
      padding: 0.3076923077vw 0.7692307692vw;
      border-radius: 3.0769230769vw; }
      .lp .maintop .anchor li a {
        display: block;
        color: #009944; }
.lp .lpcontents--box {
  width: 78.7692307692vw;
  margin: 0 auto; }
  .lp .lpcontents--box h3.lead {
    text-align: center;
    font-size: 2.7692307692vw;
    text-align: center;
    padding: 5.3846153846vw 0; }
    .lp .lpcontents--box h3.lead.hei {
      padding-bottom: 0; }
  .lp .lpcontents--box .leadtxt {
    text-align: center;
    font-size: 1.3846153846vw;
    line-height: 1.8;
    margin: 1.5384615385vw 0; }
  .lp .lpcontents--box--flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 7.6923076923vw; }
    .lp .lpcontents--box--flex.rev {
      flex-direction: row-reverse; }
    .lp .lpcontents--box--flex figure {
      width: 42.3076923077vw;
      overflow: hidden; }
    .lp .lpcontents--box--flex .txtbox {
      width: 30.7692307692vw;
      text-align: left; }
      .lp .lpcontents--box--flex .txtbox .lead {
        font-size: 2.3076923077vw;
        margin-bottom: 0.7692307692vw; }
      .lp .lpcontents--box--flex .txtbox .txt {
        font-size: 1.2307692308vw;
        line-height: 1.8;
        text-align: justify; }
  .lp .lpcontents--box--photo {
    width: 25.3846153846vw;
    margin: 1.5384615385vw auto 0; }
    .lp .lpcontents--box--photo figure {
      border: 0.0769230769vw solid #000;
      padding: 0.7692307692vw;
      overflow: hidden; }
    .lp .lpcontents--box--photo h4 {
      margin-top: 0.7692307692vw;
      font-size: 1.3846153846vw;
      text-align: center; }
    .lp .lpcontents--box--photo.gak {
      width: 53.8461538462vw; }
      .lp .lpcontents--box--photo.gak figure {
        border: none; }
  .lp .lpcontents--box .zen {
    font-family: "zen-kaku-gothic-antique", sans-serif;
    font-weight: 700;
    font-style: normal; }
    .lp .lpcontents--box .zen.lead {
      width: 48.4615384615vw;
      margin: 3.0769230769vw auto 0;
      font-size: 2.3076923077vw;
      text-align: center;
      background: #7a6a56;
      color: #fff;
      border-top: 0.1538461538vw solid #7a6a56;
      padding: 0.7692307692vw 0; }
    .lp .lpcontents--box .zen.txt {
      font-weight: 400;
      width: 48.4615384615vw;
      margin: 0.7692307692vw auto 0;
      font-size: 1.3846153846vw;
      text-align: center; }
  .lp .lpcontents--box .flexpot {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1.3076923077vw; }
  .lp .lpcontents--box .middle {
    width: 48.4615384615vw;
    margin: 3.0769230769vw auto 0;
    border-radius: 2.3076923077vw;
    overflow: hidden; }
.lp .sef {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; }
.lp .fam {
  font-family: "sichandich", sans-serif;
  font-weight: 400;
  font-style: normal; }
.lp .hei {
  font-family: "heisei-maru-gothic-std", sans-serif;
  font-weight: 800;
  font-style: normal; }
.lp .btn_base {
  background: radial-gradient(#6ebee7, #009bd8);
  width: 46.1538461538vw;
  height: 9.2307692308vw;
  margin: 4.6153846154vw auto 0;
  border-radius: 4.6153846154vw;
  text-align: center;
  padding: 0.6153846154vw 0 0; }
  .lp .btn_base p {
    width: 44.9230769231vw;
    height: 8vw;
    margin: 0 auto;
    border: 0.1538461538vw solid #fff;
    border-radius: 4.6153846154vw;
    font-size: 1.6923076923vw;
    line-height: 1.2;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 600;
    letter-spacing: 0.02em; }
    .lp .btn_base p a {
      display: flex;
      justify-content: center;
      align-items: center;
      color: #fff;
      position: relative; }
      .lp .btn_base p a:after {
        position: absolute;
        content: "";
        background: url("../../img/common/arrow_w.svg") no-repeat center top/cover;
        width: 1.7076923077vw;
        height: 0.5vw;
        top: 50%;
        margin-top: -0.4615384615vw;
        right: 1.5384615385vw; }
  .lp .btn_base.gps {
    background: radial-gradient(#d2a924, #714907); }
  .lp .btn_base.fam {
    background: radial-gradient(#006144, #009944); }
.lp .contents--attractiontop--box--inner {
  display: block;
  flex-wrap: wrap;
  width: 72.3076923077vw;
  margin: 0 auto;
  padding: 0; }
.lp .contents--attractiontop--box--inner--cont .box ul {
  display: flex;
  flex-wrap: wrap;
  margin-top: 1vw; }
.lp .contents--attractiontop--box--inner--cont .box ul li {
  width: auto;
  font-size: 1vw;
  border-radius: 0.4vw;
  border: 0.15vw solid #ccc;
  padding: 0.5vw 0.6vw;
  margin-right: 0.6vw;
  margin-top: 0.6vw; }
.lp .contents--attractiontop--box--inner--cont .box ul li.cl_1 {
  border: 0.15vw solid #f34f09;
  background: #f34f09;
  color: #fff; }
.lp .contents--attractiontop--box--inner--cont .box ul li.cl_2 {
  border: 0.15vw solid #f34f09;
  color: #f34f09; }
.lp .contents--attractiontop--box--inner--cont .box ul li.cl_3 {
  border: 0.15vw solid #009bd8;
  background: #009bd8;
  color: #fff; }

@media screen and (max-width: 767px) {
  .lp .maintop {
    width: 100vw;
    margin: 0 auto;
    margin-top: 13.3333333333vw;
    position: relative; }
    .lp .maintop figure {
      width: 100vw;
      margin: 0 auto;
      overflow: hidden; }
      .lp .maintop figure.fam {
        border-radius: 0; }
        .lp .maintop figure.fam img {
          width: 110%;
          margin-left: -10%; }
    .lp .maintop h2.sef {
      width: 77.7777777778vw;
      text-align: center;
      position: absolute;
      top: 11.1111111111vw;
      left: 50%;
      margin-left: -38.8888888889vw;
      font-size: 6.6666666667vw;
      color: #fff; }
      .lp .maintop h2.sef small {
        display: block;
        font-size: 4.4444444444vw;
        border-top: 0.2222222222vw solid #fff;
        padding-top: 1.1111111111vw; }
    .lp .maintop h2.fam {
      width: 66.6666666667vw;
      top: auto;
      top: 13.3333333333vw;
      left: 0vw;
      position: absolute;
      z-index: 2; }
    .lp .maintop h2.hei {
      width: 71.1111111111vw;
      bottom: 2.2222222222vw;
      left: 2.2222222222vw;
      position: absolute; }
    .lp .maintop h2.gak {
      width: 84.4444444444vw;
      margin: -4.4444444444vw auto 0;
      margin-bottom: 8.8888888889vw; }
    .lp .maintop .under {
      background: #009944;
      font-size: 4.4444444444vw;
      padding: 4.4444444444vw 0;
      text-align: center;
      width: 100vw;
      margin: 0 auto;
      color: #fff;
      font-family: "sichandich", sans-serif;
      font-weight: 400;
      font-style: normal; }
    .lp .maintop .anchor {
      margin-top: 4.4444444444vw;
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      margin-bottom: 0vw;
      gap: 1.1111111111vw; }
      .lp .maintop .anchor li {
        border: 0.2222222222vw solid #009944;
        color: #009944;
        font-size: 2.6666666667vw;
        text-align: center;
        padding: 0.8888888889vw 1.3333333333vw;
        border-radius: 8.8888888889vw; }
        .lp .maintop .anchor li a {
          display: block;
          color: #009944; }
  .lp .lpcontents--box {
    width: 93.3333333333vw;
    margin: 0 auto; }
    .lp .lpcontents--box h3.lead {
      text-align: center;
      font-size: 4.8888888889vw;
      text-align: center;
      padding: 8.8888888889vw 0 0; }
    .lp .lpcontents--box .leadtxt {
      text-align: center;
      font-size: 3.1111111111vw;
      line-height: 1.8;
      margin: 4.4444444444vw 0; }
      .lp .lpcontents--box .leadtxt.hei {
        font-size: 2.6666666667vw; }
    .lp .lpcontents--box--flex {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      margin-top: 13.3333333333vw; }
      .lp .lpcontents--box--flex.rev {
        flex-direction: row-reverse; }
      .lp .lpcontents--box--flex figure {
        width: 75.5555555556vw;
        margin: 0 auto;
        overflow: hidden; }
      .lp .lpcontents--box--flex .txtbox {
        width: 75.5555555556vw;
        margin: 0 auto;
        text-align: left;
        margin-top: 2.2222222222vw; }
        .lp .lpcontents--box--flex .txtbox .lead {
          font-size: 4.4444444444vw;
          margin: 2.2222222222vw 0;
          text-align: center; }
          .lp .lpcontents--box--flex .txtbox .lead br {
            display: none; }
        .lp .lpcontents--box--flex .txtbox .txt {
          font-size: 3.1111111111vw;
          line-height: 1.8;
          text-align: justify; }
    .lp .lpcontents--box--photo {
      width: 44.4444444444vw;
      margin: 4.4444444444vw auto 0; }
      .lp .lpcontents--box--photo figure {
        overflow: hidden; }
      .lp .lpcontents--box--photo h4 {
        margin-top: 2.2222222222vw;
        font-size: 2.8888888889vw; }
      .lp .lpcontents--box--photo.gak {
        width: 84.4444444444vw;
        margin: 0 auto; }
        .lp .lpcontents--box--photo.gak figure {
          border: none; }
    .lp .lpcontents--box .flexpot {
      display: flex;
      justify-content: flex-start;
      flex-wrap: wrap;
      gap: 4.4444444444vw; }
    .lp .lpcontents--box .zen {
      font-family: "zen-kaku-gothic-antique", sans-serif;
      font-weight: 700;
      font-style: normal; }
      .lp .lpcontents--box .zen.lead {
        width: 93.3333333333vw;
        margin: 8.8888888889vw auto 0;
        font-size: 4.8888888889vw;
        text-align: center; }
      .lp .lpcontents--box .zen.txt {
        font-weight: 400;
        width: 93.3333333333vw;
        margin: 2.2222222222vw auto 0;
        font-size: 3.1111111111vw; }
    .lp .lpcontents--box .middle {
      width: 100%;
      margin: 2.2222222222vw auto;
      border-radius: 6.6666666667vw;
      overflow: hidden; }
  .lp .btn_base {
    width: 77.7777777778vw;
    height: 13.3333333333vw;
    margin: 6.6666666667vw auto 0;
    border-radius: 6.6666666667vw;
    text-align: center;
    padding: 0.8888888889vw 0 0; }
    .lp .btn_base p {
      width: 75.5555555556vw;
      height: 11.5555555556vw;
      margin: 0 auto;
      border: 0.2222222222vw solid #fff;
      border-radius: 6.6666666667vw;
      font-size: 3.3333333333vw;
      font-family: "Zen Kaku Gothic New", sans-serif;
      font-weight: 600; }
      .lp .btn_base p a {
        color: #fff;
        position: relative; }
        .lp .btn_base p a:after {
          position: absolute;
          content: "";
          background: url("../../img/common/arrow_w.svg") no-repeat center top/cover;
          width: 2.4666666667vw;
          height: 0.7222222222vw;
          top: 50%;
          margin-top: -0.6666666667vw;
          right: 2.2222222222vw; }
  .lp .contents--attractiontop--box--inner {
    display: block;
    flex-wrap: wrap;
    width: 75.5555555556vw;
    margin: 0 auto;
    padding: 0; }
  .lp .contents--attractiontop--box--inner ul {
    display: none; }
  .lp .contents--attractiontop--box--inner figure {
    width: 75.5555555556vw;
    margin: 0 auto; }
  .lp .contents--attractiontop--box--inner--cont .box ul {
    margin-top: 1vw; }
  .lp .contents--attractiontop--box--inner--cont .box ul li {
    width: auto;
    font-size: 2.5vw;
    border-radius: 0.8vw;
    border: 0.3vw solid #ccc;
    padding: 1vw 1.2vw;
    margin-right: 1.2vw;
    margin-top: 1.2vw; }
  .lp .contents--attractiontop--box--inner--cont .box ul li.cl_1 {
    border: 0.3vw solid #f34f09; }
  .lp .contents--attractiontop--box--inner--cont .box ul li.cl_2 {
    border: 0.3vw solid #f34f09; }
  .lp .contents--attractiontop--box--inner--cont .box ul li.cl_3 {
    border: 0.3vw solid #009bd8; } }
