@charset "UTF-8";
/* コンテナ左右突破で画面幅いっぱいまで */
.container {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  max-width: 1024px;
  margin: 0 auto 100px; }
  .container a {
    cursor: pointer; }
  .container .show_sp {
    display: none; }
  @media screen and (max-width: 767px) {
    .container .show_sp {
      display: block; }
    .container .show_pc {
      display: none; } }
  .container .mt-0 {
    margin-top: 0 !important; }
  @media screen and (max-width: 767px) {
    .container {
      margin-bottom: 48px; } }
  .container nav.choiceTrip {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    background: #fff; }
    .container nav.choiceTrip > div {
      width: calc(1/3*100%);
      text-align: center; }
      .container nav.choiceTrip > div a {
        display: block; }
        .container nav.choiceTrip > div a figure {
          margin: 0;
          padding: 0 0 30px; }
          .container nav.choiceTrip > div a figure img {
            width: 100%;
            height: auto; }
        .container nav.choiceTrip > div a span {
          display: inline-block;
          width: 6.6em;
          margin: 30px 0 60px;
          padding: .1em 0 .32em;
          font-size: 3.6rem;
          background: #fff;
          border: 2px dashed #000;
          border-radius: 50px;
          overflow: visible; }
          @media screen and (max-width: 767px) {
            .container nav.choiceTrip > div a span {
              margin: 5px 0 30px;
              font-size: 4vw; } }
          .container nav.choiceTrip > div a span img {
            width: calc(171/230*100%);
            max-width: 171px; }
        .container nav.choiceTrip > div a.active span, .container nav.choiceTrip > div a:hover span {
          position: relative;
          border-style: solid; }
          .container nav.choiceTrip > div a.active span:after, .container nav.choiceTrip > div a:hover span:after {
            content: '';
            display: inline-block;
            width: 32px;
            height: 32px;
            background: url("../img/hukidasi_top.png") no-repeat;
            position: absolute;
            top: -22px;
            left: calc(50% - 12.5px); }
            @media screen and (max-width: 767px) {
              .container nav.choiceTrip > div a.active span:after, .container nav.choiceTrip > div a:hover span:after {
                top: -.75em;
                left: calc(50% - .5em);
                width: 1em;
                height: 1em;
                background-size: 100% auto; } }
        .container nav.choiceTrip > div a.active {
          pointer-events: none; }
        .container nav.choiceTrip > div a:not(.active):not(:hover) figure {
          opacity: 0.3; }
    .container nav.choiceTrip.foot {
      margin: 0;
      padding: 14% 0 40px;
      background: url(../img/bg_nav_foot.png) no-repeat center top;
      background-size: 100% auto; }
      .container nav.choiceTrip.foot.c01 {
        background-color: #f6ff12; }
      .container nav.choiceTrip.foot.c02 {
        background-color: #f7d7e1; }
      .container nav.choiceTrip.foot.c03 {
        background-color: #ffad5c; }
      .container nav.choiceTrip.foot > div a.active, .container nav.choiceTrip.foot > div a:hover {
        opacity: 1; }
        .container nav.choiceTrip.foot > div a.active span:after, .container nav.choiceTrip.foot > div a:hover span:after {
          display: none; }
  .container .container-inner-wrap {
    background-color: #ffffff;
    overflow: hidden; }
    .container .container-inner-wrap .container-inner {
      max-width: 904px;
      font-weight: bold; }
      .container .container-inner-wrap .container-inner p {
        margin: 0 auto 1em;
        font-size: 1.8rem;
        letter-spacing: 0;
        line-height: 2; }
      .container .container-inner-wrap .container-inner .mainText {
        padding: 0 0 60px;
        background: #fff; }
        .container .container-inner-wrap .container-inner .mainText p {
          margin: 0 auto 1.8em; }
        .container .container-inner-wrap .container-inner .mainText figure {
          margin: 0;
          padding: 30px 0 60px;
          background: #fff; }
          @media screen and (max-width: 767px) {
            .container .container-inner-wrap .container-inner .mainText figure {
              padding: 5px 0 30px; } }
        @media screen and (max-width: 767px) {
          .container .container-inner-wrap .container-inner .mainText {
            padding: 0 0 40px; } }
        .container .container-inner-wrap .container-inner .mainText .mainTextHalf {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
          -webkit-box-align: start;
              -ms-flex-align: start;
                  align-items: flex-start;
          -webkit-box-pack: justify;
              -ms-flex-pack: justify;
                  justify-content: space-between;
          margin: 0 auto 30px; }
          @media screen and (max-width: 767px) {
            .container .container-inner-wrap .container-inner .mainText .mainTextHalf {
              display: block; } }
          .container .container-inner-wrap .container-inner .mainText .mainTextHalf > * {
            width: 48%; }
            @media screen and (max-width: 767px) {
              .container .container-inner-wrap .container-inner .mainText .mainTextHalf > * {
                width: auto; } }
            .container .container-inner-wrap .container-inner .mainText .mainTextHalf > * img {
              width: 100%; }
          .container .container-inner-wrap .container-inner .mainText .mainTextHalf p {
            margin: 0; }
            @media screen and (max-width: 767px) {
              .container .container-inner-wrap .container-inner .mainText .mainTextHalf p {
                margin-bottom: 20px; } }
      .container .container-inner-wrap .container-inner h2 {
        margin: 0 0 60px;
        font-size: 2rem;
        line-height: 0.9;
        font-weight: bold; }
        @media screen and (max-width: 767px) {
          .container .container-inner-wrap .container-inner h2 {
            margin: 0 0 30px;
            padding-bottom: .5em;
            line-height: 1.5;
            background: url(../img/bg_hd2.png) no-repeat right bottom;
            background-size: auto .75em; } }
        .container .container-inner-wrap .container-inner h2 span {
          font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
      .container .container-inner-wrap .container-inner h3 {
        font-size: 1.8rem;
        line-height: 1.5;
        font-weight: bold; }
      .container .container-inner-wrap .container-inner section.mainVisual h1 {
        text-align: center; }
      .container .container-inner-wrap .container-inner section.tourInfo .tourBtn {
        font-size: 3rem;
        text-align: center;
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr 2.8rem 1fr;
        grid-template-columns: repeat(2, 1fr);
        gap: 2.8rem; }
        @media screen and (max-width: 767px) {
          .container .container-inner-wrap .container-inner section.tourInfo .tourBtn {
            display: block; } }
        .container .container-inner-wrap .container-inner section.tourInfo .tourBtn .tourShurijo {
          color: #FB0921;
          border: 5px solid #FB0921;
          border-radius: 10px; }
        .container .container-inner-wrap .container-inner section.tourInfo .tourBtn .touractivity {
          color: #018EFD;
          border: 5px solid #018EFD;
          border-radius: 10px; }
      .container .container-inner-wrap .container-inner .midashi {
        text-align: center;
        font-size: 3rem;
        line-height: 1.2; }
      .container .container-inner-wrap .container-inner section.recommend {
        background-color: #FDFCF0;
        margin-top: 50px;
        padding: 40px 0 50px; }
        .container .container-inner-wrap .container-inner section.recommend .recommend__inner {
          margin-top: 30px;
          padding: 0;
          position: relative; }
          .container .container-inner-wrap .container-inner section.recommend .recommend__inner .slick-slide {
            margin: 0 12.5px; }
          .container .container-inner-wrap .container-inner section.recommend .recommend__inner .slick-arrow {
            position: absolute;
            top: 0;
            bottom: 0;
            margin: auto;
            cursor: pointer; }
          .container .container-inner-wrap .container-inner section.recommend .recommend__inner .prev-arrow {
            left: 10px; }
          .container .container-inner-wrap .container-inner section.recommend .recommend__inner .next-arrow {
            right: 10px; }
          .container .container-inner-wrap .container-inner section.recommend .recommend__inner__item {
            padding: 0;
            position: relative; }
            .container .container-inner-wrap .container-inner section.recommend .recommend__inner__item img {
              width: 100%; }
            .container .container-inner-wrap .container-inner section.recommend .recommend__inner__item p {
              position: absolute;
              bottom: 10px;
              left: 0;
              right: 0;
              padding: 0 1px;
              color: #FFFFFF;
              font-size: 1.4rem;
              text-align: center;
              line-height: 1.5; }
  .container .mainVisual {
    padding: 0 0 60px;
    text-align: center;
    line-height: 1.3;
    background: #fff; }
    .container .mainVisual h1 {
      font-size: 5.4rem; }
    .container .mainVisual span.subTitle {
      font-size: 2.4rem; }
    @media screen and (max-width: 767px) {
      .container .mainVisual {
        padding: 0 0 45px; } }
  .container .tourReport {
    padding: 0 0 100px;
    background: #fff; }
    @media screen and (max-width: 767px) {
      .container .tourReport {
        padding-bottom: 60px; } }
    .container .tourReport .tourReportTitle {
      position: relative;
      margin: 0 auto 30px;
      overflow: visible; }
      .container .tourReport .tourReportTitle .tourReportTitleImg {
        position: relative;
        padding: 0 0 30px;
        text-align: right; }
        .container .tourReport .tourReportTitle .tourReportTitleImg:before {
          content: '';
          position: absolute;
          bottom: 0;
          right: 61px;
          display: block;
          width: 904px;
          height: calc(245/328*100%); }
          @media screen and (max-width: 767px) {
            .container .tourReport .tourReportTitle .tourReportTitleImg:before {
              right: 40px; } }
        .container .tourReport .tourReportTitle .tourReportTitleImg img {
          position: relative;
          width: calc(852/904*100%); }
          @media screen and (max-width: 767px) {
            .container .tourReport .tourReportTitle .tourReportTitleImg img {
              width: 100%; } }
      .container .tourReport .tourReportTitle .tourReportTitleText {
        position: absolute;
        left: 0;
        bottom: 70px;
        max-width: calc(523/904*100%); }
        @media screen and (max-width: 767px) {
          .container .tourReport .tourReportTitle .tourReportTitleText {
            bottom: 12px;
            max-width: calc(523/630*100%); } }
      .container .tourReport .tourReportTitle .tourReportTitleText.ashibinaa {
        bottom: 140px; }
        @media screen and (max-width: 767px) {
          .container .tourReport .tourReportTitle .tourReportTitleText.ashibinaa {
            bottom: 12px; } }
      .container .tourReport .tourReportTitle.c01 .tourReportTitleImg:before {
        background: #f6ff12; }
      .container .tourReport .tourReportTitle.c02 .tourReportTitleImg:before {
        background: #c8e1fa; }
      .container .tourReport .tourReportTitle.c03 .tourReportTitleImg:before {
        background: #f7d7e1; }
      .container .tourReport .tourReportTitle.c04 .tourReportTitleImg:before {
        background: #ffad5c; }
      .container .tourReport .tourReportTitle.c05 .tourReportTitleImg:before {
        background: #b3dae8; }
    .container .tourReport.rev .tourReportTitle .tourReportTitleImg {
      text-align: left; }
      .container .tourReport.rev .tourReportTitle .tourReportTitleImg:before {
        right: auto;
        left: 61px; }
        @media screen and (max-width: 767px) {
          .container .tourReport.rev .tourReportTitle .tourReportTitleImg:before {
            right: auto;
            left: 40px; } }
    .container .tourReport.rev .tourReportTitle .tourReportTitleText {
      left: auto;
      right: 0; }
    .container .tourReport p {
      margin: 0 auto 30px; }
      @media screen and (max-width: 767px) {
        .container .tourReport p {
          margin-bottom: 20px; } }
      .container .tourReport p strong {
        font-weight: bold;
        font-size: 2.5rem;
        font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
        @media screen and (max-width: 767px) {
          .container .tourReport p strong {
            font-size: 1.8rem; } }
    .container .tourReport figure {
      margin: 0 auto 30px;
      padding: 0; }
      @media screen and (max-width: 767px) {
        .container .tourReport figure {
          margin-bottom: 20px; } }
      .container .tourReport figure.txtWrap {
        font-size: 2rem;
        line-height: 0.9;
        font-weight: bold; }
        @media screen and (max-width: 767px) {
          .container .tourReport figure.txtWrap {
            padding-bottom: .5em;
            line-height: 1.5;
            background: url(../img/bg_hd2.png) no-repeat right bottom;
            background-size: auto .75em; } }
    .container .tourReport .tourReportHalf {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin: 0 auto 30px; }
      @media screen and (max-width: 767px) {
        .container .tourReport .tourReportHalf {
          display: block; } }
      .container .tourReport .tourReportHalf > * {
        width: 48%; }
        @media screen and (max-width: 767px) {
          .container .tourReport .tourReportHalf > * {
            width: auto; } }
        .container .tourReport .tourReportHalf > * img {
          width: 100%; }
      .container .tourReport .tourReportHalf p {
        margin: 0; }
        @media screen and (max-width: 767px) {
          .container .tourReport .tourReportHalf p {
            margin-bottom: 20px; } }
      .container .tourReport .tourReportHalf .imgWrap {
        margin-bottom: 20px; }
      .container .tourReport .tourReportHalf.layout01 p {
        width: calc(504/904*100%); }
      .container .tourReport .tourReportHalf.layout01 .imgWrap {
        width: calc(367/904*100%); }
      @media screen and (max-width: 767px) {
        .container .tourReport .tourReportHalf.layout01 p, .container .tourReport .tourReportHalf.layout01 .imgWrap {
          width: auto; } }
      .container .tourReport .tourReportHalf.layout02 p {
        width: calc(377/904*100%); }
      .container .tourReport .tourReportHalf.layout02 .imgWrap {
        width: calc(498/904*100%); }
      @media screen and (max-width: 767px) {
        .container .tourReport .tourReportHalf.layout02 p, .container .tourReport .tourReportHalf.layout02 .imgWrap {
          width: auto; } }
      .container .tourReport .tourReportHalf.layout03 p {
        width: calc(634/904*100%); }
      .container .tourReport .tourReportHalf.layout03 .imgWrap {
        width: calc(248/904*100%); }
      @media screen and (max-width: 767px) {
        .container .tourReport .tourReportHalf.layout03 p {
          width: auto; }
        .container .tourReport .tourReportHalf.layout03 .imgWrap {
          width: 50%;
          margin: 0 auto; } }
    .container .tourReport .tourReportLink {
      padding-top: 27px;
      border-top: 2px dashed #80b2e3; }
      @media screen and (max-width: 767px) {
        .container .tourReport .tourReportLink {
          padding-top: 18px; } }
      .container .tourReport .tourReportLink a {
        color: #80b2e3;
        font-size: 1.6rem;
        line-height: 1.6;
        margin-bottom: 1em; }
        @media screen and (max-width: 767px) {
          .container .tourReport .tourReportLink a {
            font-size: 1.4rem; } }
        .container .tourReport .tourReportLink a .linkTxt {
          display: inline-block;
          margin-right: 2em; }
        .container .tourReport .tourReportLink a .linkBtn {
          display: inline-block;
          padding: .2em 1em;
          color: #333333;
          vertical-align: middle; }
          .container .tourReport .tourReportLink a .linkBtn.c01 {
            background-color: #f6ff12; }
          .container .tourReport .tourReportLink a .linkBtn.c02 {
            color: #fff;
            background-color: #ff127f; }
          .container .tourReport .tourReportLink a .linkBtn.c03 {
            color: #fff;
            background-color: #ff7f00; }
      .container .tourReport .tourReportLink + p {
        margin-top: 40px; }
  .container .recommendHoteles {
    margin: 0 0 40px;
    padding: 30px 0; }
    .container .recommendHoteles.c01 {
      background: #c8e1fa; }
    .container .recommendHoteles.c02 {
      background: #f7d7e1; }
    .container .recommendHoteles.c03 {
      background: #ffad5c; }
      .container .recommendHoteles.c03 .container-inner h2 {
        color: #fff; }
    .container .recommendHoteles .container-inner h2 {
      margin-bottom: 24px;
      font-size: 2rem;
      text-align: center;
      line-height: 1.5; }
      @media screen and (max-width: 767px) {
        .container .recommendHoteles .container-inner h2 {
          margin-bottom: 1rem;
          font-size: 1.8rem; } }
    .container .recommendHoteles .container-inner ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
      -webkit-box-align: stretch;
          -ms-flex-align: stretch;
              align-items: stretch;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin: 0;
      padding: 0; }
      @media screen and (max-width: 767px) {
        .container .recommendHoteles .container-inner ul {
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
          -ms-flex-pack: distribute;
              justify-content: space-around; } }
      .container .recommendHoteles .container-inner ul li {
        width: calc(209/904*100%);
        background: #fff; }
        @media screen and (max-width: 767px) {
          .container .recommendHoteles .container-inner ul li {
            width: 48%;
            max-width: 209px;
            margin-bottom: 4%; } }
        .container .recommendHoteles .container-inner ul li a {
          display: block; }
        .container .recommendHoteles .container-inner ul li figure {
          width: 100%;
          margin: 0;
          padding: 0; }
        .container .recommendHoteles .container-inner ul li p {
          margin: 0;
          padding: 1em;
          font-size: 1.6rem;
          letter-spacing: 0;
          text-align: left; }
          @media screen and (max-width: 767px) {
            .container .recommendHoteles .container-inner ul li p {
              font-size: 1.4rem; } }
    .container .recommendHoteles + .container-inner {
      margin-top: 120px; }
      @media screen and (max-width: 767px) {
        .container .recommendHoteles + .container-inner {
          margin-top: 50px; } }
