@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Montserrat");
/*
html5doctor.com Reset Stylesheet
v1.4
2009-07-27
Author: Richard Clark - http://richclarkdesign.com
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
  display: block; }

ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help; }

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

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

/* base */
html {
  font-size: 62.5%; }

body {
  background-color: #FFF;
  color: #000;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  letter-spacing: 1.4px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

#wrapper {
  position: relative; }

img {
  vertical-align: bottom; }

a {
  color: #000;
  text-decoration: none; }
  a[href^="tel:"] {
    pointer-events: none; }

.pc {
  display: block !important; }

.sp {
  display: none !important; }

.fixed {
  position: fixed;
  top: 0; }

#navSp, header {
  display: none; }

.ticketImg {
  text-align: center;
  min-width: 954px; }
  .ticketImg h1 {
    margin-top: 50px; }
  .ticketImg .lead {
    margin-top: 16px; }
  .ticketImg .iconWrap {
    width: 669px;
    margin: 0 auto 45px;
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    flex-wrap: wrap; }
  .ticketImg #camp {
    background-color: #A8C356;
    padding-bottom: 60px; }
    .ticketImg #camp h2 {
      padding-top: 36px; }
    .ticketImg #camp .campWrap {
      width: 954px;
      margin: 30px auto 0;
      display: flex;
      display: -webkit-flex;
      justify-content: space-between;
      flex-wrap: wrap; }
    .ticketImg #camp p {
      margin-bottom: 10px; }
  .ticketImg #hotel {
    background-color: #3D8BB7;
    padding-bottom: 65px; }
    .ticketImg #hotel h2 {
      padding: 36px 0 33px; }
  .ticketImg #oneday {
    background-color: #C64A62;
    padding-bottom: 65px; }
    .ticketImg #oneday h2 {
      padding: 30px 0; }
  .ticketImg #train {
    background-color: #EEEEEE;
    padding: 17px 0 44px; }

.ticketInner {
  padding-bottom: 150px; }
  .ticketInner h3 {
    text-align: center;
    padding: 60px 0 30px; }
  .ticketInner .ticket_box {
    width: 690px;
    min-width: 690px;
    margin: 0 auto 20px; }
    .ticketInner .ticket_box .ticketBoxBtn {
      position: relative;
      width: 100%;
      height: 140px;
      color: #333333;
      background: #FFF;
      letter-spacing: normal;
      cursor: pointer;
      border: solid 2px #EEEEEE;
      -webkit-border-radius: 10px;
      border-radius: 10px;
      padding: 14px 17px 0;
      box-sizing: border-box; }
      .ticketInner .ticket_box .ticketBoxBtn.active {
        border-bottom: none;
        -webkit-border-radius: 10px 10px 0 0;
        border-radius: 10px 10px 0 0; }
        .ticketInner .ticket_box .ticketBoxBtn.active .arrow {
          background-image: url(../img_ticket/btn_close.png); }
      .ticketInner .ticket_box .ticketBoxBtn .titWrap {
        display: flex;
        display: -webkit-flex;
        justify-content: flex-start;
        flex-wrap: wrap;
        align-items: center; }
        .ticketInner .ticket_box .ticketBoxBtn .titWrap .icon {
          width: 50px; }
          .ticketInner .ticket_box .ticketBoxBtn .titWrap .icon img {
            width: 100%;
            height: auto; }
        .ticketInner .ticket_box .ticketBoxBtn .titWrap .tit {
          font-size: 1.8rem;
          font-weight: bold;
          letter-spacing: 2.0px;
          line-height: 1;
          margin-left: 9px; }
      .ticketInner .ticket_box .ticketBoxBtn .txt {
        font-size: 1.3rem;
        line-height: 1.46;
        margin-top: 6px; }
        .ticketInner .ticket_box .ticketBoxBtn .txt span {
          color: #C64A62; }
      .ticketInner .ticket_box .ticketBoxBtn .arrow {
        background-image: url(../img_ticket/btn_open.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: 0 0;
        position: absolute;
        width: 40px;
        height: 40px;
        top: 49px;
        right: 20px; }
      .ticketInner .ticket_box .ticketBoxBtn .soldout {
        background-image: url(../img_ticket/icon_soldout.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: 0 0;
        position: absolute;
        width: 140px;
        height: 33px;
        top: 28px;
        right: 0; }
    .ticketInner .ticket_box .ticketContent {
      width: 100%;
      display: none;
      font-size: 1.3rem;
      line-height: 1.8;
      border-left: solid 2px #EEEEEE;
      border-right: solid 2px #EEEEEE;
      border-bottom: solid 2px #EEEEEE;
      -webkit-border-radius: 0 0 10px 10px;
      border-radius: 0 0 10px 10px;
      padding: 0 17px;
      box-sizing: border-box; }
      .ticketInner .ticket_box .ticketContent .ticketContentWrap {
        padding: 20px 0; }
        .ticketInner .ticket_box .ticketContent .ticketContentWrap span {
          font-size: 1.1rem; }
        .ticketInner .ticket_box .ticketContent .ticketContentWrap dl {
          overflow: hidden;
          font-size: 1.4rem;
          line-height: 1.6;
          padding-bottom: 20px; }
          .ticketInner .ticket_box .ticketContent .ticketContentWrap dl dt {
            float: left;
            font-weight: bold; }
          .ticketInner .ticket_box .ticketContent .ticketContentWrap dl dd {
            margin-left: 280px;
            padding-bottom: 20px; }
        .ticketInner .ticket_box .ticketContent .ticketContentWrap .entrance {
          margin-bottom: 20px;
          font-weight: bold; }
        .ticketInner .ticket_box .ticketContent .ticketContentWrap .ticket {
          margin-top: 20px;
          font-weight: bold;
          text-decoration: underline; }
        .ticketInner .ticket_box .ticketContent .ticketContentWrap .ticketWrap {
          overflow: hidden;
          margin-top: 10px; }
          .ticketInner .ticket_box .ticketContent .ticketContentWrap .ticketWrap li {
            display: block;
            width: 185px;
            float: left;
            margin-right: 20px;
            margin-bottom: 20px;
            font-size: 1.6rem;
            text-align: center;
            background: #000000;
            border: solid 1px #000000;
            -webkit-border-radius: 5px;
            border-radius: 5px;
            position: relative;
            box-sizing: border-box; }
            .ticketInner .ticket_box .ticketContent .ticketContentWrap .ticketWrap li:nth-child(4n) {
              margin-right: 0; }
            .ticketInner .ticket_box .ticketContent .ticketContentWrap .ticketWrap li a {
              display: block;
              color: #FFF;
              padding: 20px 0; }

#fixedNaviPc {
  display: none;
  width: 100%;
  height: 80px;
  background-color: #FFF;
  z-index: 999; }
  #fixedNaviPc.fixed {
    display: block;
    position: fixed;
    top: 0; }
  #fixedNaviPc:before {
    content: "";
    display: block;
    background: url(../img_ticket/nav_shadow.png) left bottom/1280px 10px repeat-x;
    width: 100%;
    height: 10px;
    position: absolute;
    left: 0;
    bottom: -10px; }
  #fixedNaviPc .naviIn {
    width: 953px;
    margin: 0 auto;
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding-top: 17px; }
    #fixedNaviPc .naviIn ul {
      display: flex;
      display: -webkit-flex;
      justify-content: space-between;
      flex-wrap: wrap;
      width: 483px;
      margin-top: 14px;
      height: 21px; }
      #fixedNaviPc .naviIn ul li:hover {
        padding-bottom: 4px; }
      #fixedNaviPc .naviIn ul li:nth-child(1):hover {
        border-bottom: 1px solid #A8C356; }
      #fixedNaviPc .naviIn ul li:nth-child(2):hover {
        border-bottom: 1px solid #3D8BB7; }
      #fixedNaviPc .naviIn ul li:nth-child(3):hover {
        border-bottom: 1px solid #C64A62; }
      #fixedNaviPc .naviIn ul li:nth-child(4):hover {
        border-bottom: 1px solid #F2AC29; }
      #fixedNaviPc .naviIn ul li:nth-child(5):hover {
        border-bottom: 1px solid #222222; }
      #fixedNaviPc .naviIn ul li a {
        display: block; }

#fixedNaviSp {
  display: none; }

@media screen and (max-width: 768px) {
  a:hover {
    opacity: 1; }
  .pc {
    display: none !important; }
  .sp {
    display: block !important; }
  header {
    display: block;
    position: fixed;
    width: 100%;
    padding: 0;
    height: 56px;
    background: #FFF;
    z-index: 9999; }
    header #headerSp {
      width: 89%;
      height: 100%;
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin: 0 auto;
      overflow: hidden;
      z-index: 9999; }
      header #headerSp h1 {
        float: left;
        line-height: 1; }
      header #headerSp #naviBtn {
        width: 17px;
        height: 15px;
        background: url(../img/btn_open.png) no-repeat;
        background-size: cover;
        z-index: 1000; }
        header #headerSp #naviBtn.close {
          background: url(../img/btn_close.png) no-repeat;
          background-size: cover;
          width: 14px;
          height: 14px; }
  #navSp {
    display: none;
    z-index: 999;
    top: 55px;
    width: 100%;
    height: 100vh;
    position: fixed;
    background-color: rgba(255, 241, 0, 0.95); }
    #navSp ul li {
      font-size: 1.5rem;
      text-align: center; }
      #navSp ul li img {
        width: auto;
        height: 14px; }
      #navSp ul li a {
        color: #000;
        display: block;
        padding: 32px 0;
        border-bottom: 1px solid #000;
        text-decoration: none; }
  .ticketImg {
    width: 100%;
    min-width: 100%; }
    .ticketImg img {
      width: 100%;
      height: auto; }
    .ticketImg p, .ticketImg div {
      margin: 0 auto; }
    .ticketImg .icon {
      width: 77.7%;
      padding-top: 56px; }
    .ticketImg h1 {
      width: 78%;
      margin: 32px auto 0; }
    .ticketImg .lead {
      width: 78%;
      margin: 20px auto 47px; }
    .ticketImg .box p {
      width: 90%; }
    .ticketImg .box h2 {
      width: 86.9%;
      margin: 0 auto; }
    .ticketImg #campSp {
      background-color: #A8C356;
      padding-bottom: 35px; }
      .ticketImg #campSp h2 {
        padding: 36px 0 11px; }
      .ticketImg #campSp p {
        margin-bottom: 10px; }
    .ticketImg #hotelSp {
      background-color: #3D8BB7;
      padding-bottom: 45px; }
      .ticketImg #hotelSp h2 {
        padding: 36px 0 18px; }
    .ticketImg #onedaySp {
      background-color: #C64A62;
      padding-bottom: 45px; }
      .ticketImg #onedaySp h2 {
        padding: 36px 0 22px; }
    .ticketImg #trainSp {
      background-color: #EEEEEE;
      padding: 26px 0 48px; }
      .ticketImg #trainSp p {
        width: 87%; }
  .ticketInner {
    padding-bottom: 75px; }
    .ticketInner h3 {
      padding: 40px 0 20px; }
    .ticketInner .ticket_box {
      width: 87%;
      min-width: 87%;
      margin: 0 auto 20px; }
      .ticketInner .ticket_box .ticketBoxBtn {
        width: 100%;
        min-width: 100%;
        height: 115px;
        border: solid 1px #EEEEEE;
        padding: 12px 15px 0; }
        .ticketInner .ticket_box .ticketBoxBtn .titWrap .icon {
          width: 42px; }
        .ticketInner .ticket_box .ticketBoxBtn .titWrap .tit {
          font-size: 1.2rem;
          margin-left: 12px; }
        .ticketInner .ticket_box .ticketBoxBtn .txt {
          font-size: 1.0rem;
          margin-top: 6px; }
        .ticketInner .ticket_box .ticketBoxBtn .arrow {
          width: 20px;
          height: 20px;
          top: 20px;
          right: 20px; }
        .ticketInner .ticket_box .ticketBoxBtn .soldout {
          background-image: url(../img_ticket/icon_soldout.png);
          background-size: contain;
          background-repeat: no-repeat;
          background-position: 0 0;
          position: absolute;
          width: 140px;
          height: 33px;
          top: 28px;
          right: 0; }
      .ticketInner .ticket_box .ticketContent {
        width: 100%;
        display: none;
        font-size: 1.0rem;
        border-left: solid 1px #EEEEEE;
        border-right: solid 1px #EEEEEE;
        border-bottom: solid 1px #EEEEEE;
        padding: 0 15px; }
        .ticketInner .ticket_box .ticketContent .ticketContentWrap {
          padding: 30px 0; }
          .ticketInner .ticket_box .ticketContent .ticketContentWrap span {
            font-size: 1.0rem; }
          .ticketInner .ticket_box .ticketContent .ticketContentWrap dl {
            overflow: auto;
            font-size: 1.0rem;
            line-height: 1.6;
            padding-bottom: 0px; }
            .ticketInner .ticket_box .ticketContent .ticketContentWrap dl dt {
              float: none;
              font-weight: bold; }
            .ticketInner .ticket_box .ticketContent .ticketContentWrap dl dd {
              margin-left: 0;
              padding-bottom: 20px; }
          .ticketInner .ticket_box .ticketContent .ticketContentWrap .entrance {
            margin-bottom: 20px;
            font-weight: bold; }
          .ticketInner .ticket_box .ticketContent .ticketContentWrap .ticketWrap {
            overflow: auto;
            margin-top: 10px; }
            .ticketInner .ticket_box .ticketContent .ticketContentWrap .ticketWrap li {
              width: 100%;
              float: none;
              margin-right: 0;
              margin-bottom: 20px;
              font-size: 1.2rem; }
              .ticketInner .ticket_box .ticketContent .ticketContentWrap .ticketWrap li:nth-child(4n) {
                margin-right: 0; }
  #fixedNaviPc {
    display: none; }
  #fixedNaviSp {
    display: block;
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%; }
    #fixedNaviSp:before {
      content: "";
      display: block;
      background: url(../img_ticket/btn_shadow.png) left top/160px 5px repeat-x;
      width: 100%;
      height: 5px; }
    #fixedNaviSp ul {
      width: 100%;
      display: flex;
      display: -webkit-flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      #fixedNaviSp ul li {
        width: 20%; }
        #fixedNaviSp ul li img {
          width: 100%;
          height: auto; } }
