@charset "UTF-8";
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");
@import url("https://fonts.googleapis.com/css?family=Oswald:500");
@import url("https://fonts.googleapis.com/css2?Roboto:wght@500&display=swap");
a {
  color: #34a4dd;
  text-decoration: underline;
  transition: opacity 0.3s linear; }

a:hover {
  opacity: 0.7; }

body {
  font-family: 'Noto Sans Japanese', serif;
  font-size: 13px;
  line-height: 22px;
  min-width: 1024px; }

.spOnly {
  display: none; }

@media screen and (max-width: 800px) {
  body {
    min-width: 0;
    overflow: hidden; }
  .pcOnly {
    display: none; }
  .spOnly {
    display: block; } }

div#mainVisual {
  position: relative;
  min-height: 700px;
  height: 80vh;
  background: url(../img/mv_2020_mizbering.png) no-repeat;
  background-size: auto 100%;
  background-position: center; }
  div#mainVisual div#title {
    position: absolute;
    left: 100px;
    top: 100px; }
    div#mainVisual div#title h1 {
      margin-bottom: 10px; }
    div#mainVisual div#title div#date {
      display: flex;
      color: white;
      margin-bottom: 30px; }
      div#mainVisual div#title div#date div.start {
        font-family: 'Oswald', sans-serif;
        font-size: 42px;
        line-height: 46px;
        padding-top: 30px;
        padding-right: 15px;
        text-shadow: 0 0 20px rgba(0, 0, 0, 0.5); }
        div#mainVisual div#title div#date div.start span {
          font-size: 28px; }
      div#mainVisual div#title div#date div.arrow {
        padding-top: 40px;
        padding-right: 15px; }
        div#mainVisual div#title div#date div.arrow img {
          width: 40px;
          height: auto; }
      div#mainVisual div#title div#date div.end th {
        vertical-align: top;
        text-align: left;
        padding-bottom: 5px; }
      div#mainVisual div#title div#date div.end td {
        line-height: 26px; }
      div#mainVisual div#title div#date div.end span {
        display: inline-block;
        font-family: 'Oswald', sans-serif;
        font-size: 21px;
        vertical-align: middle;
        margin-left: 5px; }
      div#mainVisual div#title div#date div.btn {
        padding-top: 40px;
        padding-left: 10px; }
        div#mainVisual div#title div#date div.btn a {
          display: inline-block;
          background: white;
          border-radius: 20px;
          text-decoration: none;
          font-weight: bold;
          padding: 6px 20px; }
    div#mainVisual div#title p {
      color: white;
      text-shadow: 0 0 20px rgba(0, 0, 0, 0.7); }
      div#mainVisual div#title p.info {
        border: solid 2px white;
        padding: 12px 15px;
        font-size: 16px;
        line-height: 1.6em;
        margin: 30px 0; }
  div#mainVisual h2 {
    position: absolute;
    right: 50px;
    top: 50px; }
    div#mainVisual h2 img {
      height: 80px;
      width: auto; }
      div#mainVisual h2 img:last-child {
        height: 60px;
        margin-left: 15px; }

@media screen and (max-width: 800px) {
  div#mainVisual {
    background-size: 150% auto;
    height: 100vw;
    min-height: auto;
    margin-top: 60px; }
    div#mainVisual div#title {
      position: static;
      left: auto;
      top: auto;
      padding: 0 25px 25px 25px; }
      div#mainVisual div#title h1 {
        margin-bottom: 10px; }
        div#mainVisual div#title h1 img {
          width: 100%; }
      div#mainVisual div#title div#date {
        flex-wrap: wrap;
        margin-bottom: 20px; }
        div#mainVisual div#title div#date div.start {
          font-size: 36px;
          padding-top: 18px;
          padding-right: 8px;
          text-shadow: none; }
          div#mainVisual div#title div#date div.start span {
            font-size: 21px; }
        div#mainVisual div#title div#date div.arrow {
          padding-top: 30px;
          padding-right: 8px; }
          div#mainVisual div#title div#date div.arrow img {
            width: 25px; }
        div#mainVisual div#title div#date div.end th {
          font-size: 12px;
          padding-bottom: 0; }
        div#mainVisual div#title div#date div.end td {
          font-size: 12px;
          line-height: 21px; }
        div#mainVisual div#title div#date div.end span {
          font-size: 15px;
          vertical-align: bottom;
          margin-left: 2px; }
        div#mainVisual div#title div#date div.btn {
          width: 100%;
          padding: 10px 0 0 0;
          text-align: center; }
      div#mainVisual div#title p {
        color: white;
        background: rgba(0, 0, 0, 0.35);
        padding: 10px;
        text-shadow: none; }
        div#mainVisual div#title p br {
          display: none; }
        div#mainVisual div#title p.info br {
          display: inline; }
    div#mainVisual h2 {
      right: 0;
      top: -60px;
      text-align: right;
      padding: 20px 20px; }
      div#mainVisual h2 img {
        width: 60px;
        height: auto; }
        div#mainVisual h2 img:last-child {
          width: auto;
          height: 40px;
          margin-left: 10px; } }

div#mainCopy {
  padding: 0 0 60px 0; }
  @media screen and (max-width: 800px) {
    div#mainCopy {
      padding: 0 15px 60px 15px; } }
  div#mainCopy h2 {
    text-align: center;
    font-size: 24px;
    font-weight: normal;
    line-height: 2.5em;
    letter-spacing: .1em; }
  div#mainCopy p {
    text-align: center;
    font-size: 16px;
    line-height: 2.5em;
    letter-spacing: .1em; }
    @media screen and (max-width: 800px) {
      div#mainCopy p {
        font-size: 14px;
        text-align: left;
        line-height: 2em; }
        div#mainCopy p br {
          display: none; } }

div#figureMizbering {
  background: url(../img/bg_2019_mainvisual.jpg) no-repeat center;
  background-size: cover;
  background-attachment: fixed;
  height: 400px; }
  @media screen and (max-width: 800px) {
    div#figureMizbering {
      background-attachment: scroll;
      height: 100vw; } }

div#eventImage ul {
  display: flex;
  list-style: none; }
  div#eventImage ul li {
    width: calc(100% / 3);
    height: 400px;
    position: relative;
    text-align: center; }
    div#eventImage ul li p {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      display: table;
      width: 100%;
      background: rgba(0, 0, 0, 0.5);
      min-height: 60px;
      padding: 10px; }
      div#eventImage ul li p span {
        display: table-cell;
        vertical-align: middle;
        color: white;
        font-size: 14px;
        line-height: 20px; }
  div#eventImage ul li.evimg01 {
    background: url(../img/evimg_05.jpg) no-repeat;
    background-position: center center;
    background-size: cover; }
  div#eventImage ul li.evimg02 {
    background: url(../img/evimg_02.jpg) no-repeat;
    background-position: center center;
    background-size: cover; }
  div#eventImage ul li.evimg03 {
    background: url(../img/evimg_03.jpg) no-repeat;
    background-position: center center;
    background-size: cover; }
  div#eventImage ul li.evimg04 {
    background: url(../img/evimg_04.jpg) no-repeat;
    background-position: center center;
    background-size: cover; }

@media screen and (max-width: 800px) {
  div#eventImage ul {
    flex-wrap: wrap; }
    div#eventImage ul li {
      height: calc(100vw / 3 + 50px); }
      div#eventImage ul li p {
        min-height: 50px; }
        div#eventImage ul li p span {
          font-size: 12px;
          line-height: 15px; }
        div#eventImage ul li p br {
          display: none; } }

div#aboutMizbering {
  background: url(../img/bg_wave.png) repeat-x center bottom;
  background-size: 70px auto; }
  div#aboutMizbering div {
    display: flex;
    max-width: 1000px;
    margin: auto;
    color: white;
    padding: 30px 0 50px 0; }
    div#aboutMizbering div h2 {
      width: 20%;
      font-size: 16px;
      line-height: 22px; }
      div#aboutMizbering div h2 img {
        margin: 6px 0 10px 0; }
    div#aboutMizbering div p {
      width: 80%; }
      div#aboutMizbering div p span {
        font-size: 13px; }

@media screen and (max-width: 800px) {
  div#aboutMizbering {
    background: url(../img/bg_wave.png) repeat-x center bottom;
    background-size: 70px auto;
    padding: 0 25px; }
    div#aboutMizbering div {
      display: block; }
      div#aboutMizbering div h2 {
        text-align: center;
        width: 100%;
        font-size: 15px;
        line-height: 20px;
        margin-bottom: 20px; }
      div#aboutMizbering div p {
        width: 100%; }
        div#aboutMizbering div p span {
          display: inline-block;
          margin-top: 10px;
          font-size: 11px;
          line-height: 18px;
          padding-left: 1em;
          text-indent: -1em; } }

div#notice {
  max-width: 1000px;
  margin: auto;
  padding: 100px 0; }
  div#notice h2 {
    font-size: 18px;
    margin-bottom: 10px; }
  div#notice ul {
    list-style-position: outside;
    font-size: 14px;
    line-height: 22px; }
    div#notice ul li {
      list-style: none;
      text-indent: -1em;
      padding-left: 1em;
      margin-bottom: 6px; }
      div#notice ul li:before {
        content: "＊"; }

@media screen and (max-width: 800px) {
  div#notice {
    margin: auto;
    padding: 100px 25px 30px 25px; }
    div#notice h2 {
      font-size: 18px;
      margin-bottom: 10px; }
    div#notice ul {
      list-style-position: outside;
      font-size: 13px;
      line-height: 20px; }
      div#notice ul li {
        list-style: none;
        text-indent: -1em;
        padding-left: 1em;
        margin-bottom: 6px; }
        div#notice ul li:before {
          content: "＊"; } }

div#icCard {
  max-width: 1000px;
  margin: 60px auto;
  background: #FFF200;
  padding: 30px; }
  div#icCard div.content {
    display: flex; }
    div#icCard div.content div.notice {
      width: 75%; }
      div#icCard div.content div.notice h2 {
        color: #34a4dd;
        font-size: 24px;
        line-height: 32px;
        margin-bottom: 20px; }
        div#icCard div.content div.notice h2 span {
          font-size: 16px; }
      div#icCard div.content div.notice ul {
        font-size: 14px;
        line-height: 22px;
        padding-left: 20px;
        margin-bottom: 10px; }
        div#icCard div.content div.notice ul li {
          margin-bottom: 6px; }
      div#icCard div.content div.notice p {
        font-size: 13px;
        line-height: 20px;
        text-indent: -1em;
        padding-left: 1em; }
    div#icCard div.content div.card {
      transform: rotate(2deg);
      width: 25%;
      text-align: center;
      font-size: 12px;
      line-height: 16px; }
      div#icCard div.content div.card img {
        margin-bottom: 10px; }
  div#icCard div.link {
    text-align: center; }
    div#icCard div.link a {
      display: inline-block;
      background: #34a4dd;
      color: white;
      font-size: 18px;
      line-height: 24px;
      padding: 16px 60px;
      margin: 20px 0 0 0;
      border-radius: 40px;
      text-decoration: none; }
      div#icCard div.link a img {
        vertical-align: top;
        margin-right: 10px;
        width: auto;
        height: 24px; }

@media screen and (max-width: 800px) {
  div#icCard {
    max-width: 1000px;
    padding: 50px 25px;
    margin-bottom: 50px; }
    div#icCard div.content {
      display: block; }
      div#icCard div.content div.notice {
        width: 100%; }
        div#icCard div.content div.notice h2 {
          font-size: 21px;
          line-height: 28px; }
      div#icCard div.content div.card {
        width: 100%;
        margin-top: 20px; }
    div#icCard div.link {
      text-align: center; }
      div#icCard div.link a {
        display: inline-block;
        width: 100%;
        font-size: 14px;
        padding: 16px 5px; } }

div#ticket {
  max-width: 1000px;
  margin: 0 auto 50px auto; }
  div#ticket > h2 {
    text-align: center;
    font-size: 24px;
    line-height: 36px;
    color: #34a4dd; }
  div#ticket > p {
    text-align: center;
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px; }
  div#ticket ol.step {
    list-style: none; }
    div#ticket ol.step > li {
      font-size: 14px;
      text-align: center;
      margin-bottom: 40px; }
      div#ticket ol.step > li h3 {
        color: #34a4dd;
        font-size: 21px;
        margin-bottom: 10px; }
        div#ticket ol.step > li h3 span {
          font-family: 'Oswald', sans-serif;
          font-size: 16px;
          display: inline-block;
          border-radius: 20px;
          border: solid 2px #34a4dd;
          min-width: 36px;
          padding: 5px 0;
          text-align: center;
          margin-right: 10px; }
      div#ticket ol.step > li p.detail.large {
        font-size: 18px;
        line-height: 26px; }
      div#ticket ol.step > li div.ticketType {
        display: flex;
        width: 75%;
        margin: 30px auto; }
        div#ticket ol.step > li div.ticketType div {
          text-align: center; }
          div#ticket ol.step > li div.ticketType div h4 {
            padding-bottom: 10px; }
          div#ticket ol.step > li div.ticketType div.ic {
            width: 40%; }
            div#ticket ol.step > li div.ticketType div.ic p img {
              width: 80%;
              margin-top: 30px; }
          div#ticket ol.step > li div.ticketType div.or {
            width: 20%; }
            div#ticket ol.step > li div.ticketType div.or p {
              display: inline-block;
              width: 80px;
              background: #e3f4fc;
              padding: 30px 0;
              color: #34a4dd;
              font-weight: bold;
              margin-top: 90px;
              border-radius: 50px; }
          div#ticket ol.step > li div.ticketType div.app {
            width: 30%; }
            div#ticket ol.step > li div.ticketType div.app p {
              width: 100%; }
              div#ticket ol.step > li div.ticketType div.app p img {
                margin-bottom: 10px;
                width: 60%; }
              div#ticket ol.step > li div.ticketType div.app p span {
                font-weight: bold;
                color: #E50048; }
      div#ticket ol.step > li p.detail img {
        width: 140px;
        height: auto;
        margin-bottom: 10px; }
      div#ticket ol.step > li div.app {
        display: flex;
        flex-wrap: wrap; }
        div#ticket ol.step > li div.app h4 {
          width: 100%;
          text-align: center; }
          div#ticket ol.step > li div.app h4.download {
            font-size: 18px;
            margin: 30px 0; }
        div#ticket ol.step > li div.app div#iphone, div#ticket ol.step > li div.app div#android {
          width: 45%;
          margin: 0 2.5%;
          padding: 20px;
          background: #e3f4fc; }
          div#ticket ol.step > li div.app div#iphone h5, div#ticket ol.step > li div.app div#android h5 {
            text-align: center;
            background: white;
            padding: 10px 0;
            font-size: 18px;
            color: #34a4dd;
            margin-bottom: 20px; }
          div#ticket ol.step > li div.app div#iphone ul.appStep, div#ticket ol.step > li div.app div#android ul.appStep {
            font-size: 14px;
            list-style: none;
            text-align: left; }
            div#ticket ol.step > li div.app div#iphone ul.appStep > li, div#ticket ol.step > li div.app div#android ul.appStep > li {
              margin-bottom: 40px; }
              div#ticket ol.step > li div.app div#iphone ul.appStep > li h6, div#ticket ol.step > li div.app div#android ul.appStep > li h6 {
                display: inline-block;
                border-bottom: solid 2px #34a4dd;
                color: #34a4dd;
                margin-bottom: 15px; }
              div#ticket ol.step > li div.app div#iphone ul.appStep > li p.image, div#ticket ol.step > li div.app div#android ul.appStep > li p.image {
                text-align: center; }
                div#ticket ol.step > li div.app div#iphone ul.appStep > li p.image img, div#ticket ol.step > li div.app div#android ul.appStep > li p.image img {
                  width: 96px;
                  margin: 23px 0;
                  height: auto; }
                  div#ticket ol.step > li div.app div#iphone ul.appStep > li p.image img.qrcode, div#ticket ol.step > li div.app div#android ul.appStep > li p.image img.qrcode {
                    width: auto;
                    margin: 0 0 0 20px; }
              div#ticket ol.step > li div.app div#iphone ul.appStep > li p.qrcode, div#ticket ol.step > li div.app div#android ul.appStep > li p.qrcode {
                margin: 20px 0;
                text-align: center; }
              div#ticket ol.step > li div.app div#iphone ul.appStep > li ol, div#ticket ol.step > li div.app div#android ul.appStep > li ol {
                padding-left: 20px; }
                div#ticket ol.step > li div.app div#iphone ul.appStep > li ol li, div#ticket ol.step > li div.app div#android ul.appStep > li ol li {
                  margin-bottom: 5px; }
  div#ticket h3.faq {
    text-align: center;
    background: #eee;
    font-size: 16px;
    padding: 10px;
    margin-top: 50px;
    margin-bottom: 20px; }
  div#ticket ul.faq {
    list-style: none;
    font-size: 14px; }
    div#ticket ul.faq li {
      margin-bottom: 20px; }
      div#ticket ul.faq li p {
        margin-bottom: 5px;
        padding-left: 35px;
        text-indent: -35px; }
        div#ticket ul.faq li p span {
          display: inline-block;
          min-width: 25px;
          text-align: center;
          color: white;
          margin-right: 10px;
          padding-left: 0;
          text-indent: 0;
          font-weight: bold;
          padding: 2px 0;
          border-radius: 15px; }
        div#ticket ul.faq li p.q span {
          background: #E50048; }
        div#ticket ul.faq li p.a span {
          background: #34a4dd; }

@media screen and (max-width: 800px) {
  div#ticket {
    padding: 0 25px; }
    div#ticket > h2 {
      font-size: 18px; }
    div#ticket > p {
      font-size: 15px;
      line-height: 24px; }
      div#ticket > p.amend {
        text-align: left; }
    div#ticket ol.step > li {
      font-size: 13px;
      text-align: left; }
      div#ticket ol.step > li h3 {
        font-size: 16px;
        padding-left: 3em;
        text-indent: -2.5em; }
        div#ticket ol.step > li h3 span {
          display: inline;
          font-size: 14px;
          min-width: 0;
          padding: 3px 10px; }
      div#ticket ol.step > li p.detail.large {
        font-size: 18px;
        line-height: 26px; }
      div#ticket ol.step > li div.ticketType {
        display: block;
        width: 100%; }
        div#ticket ol.step > li div.ticketType div h4 {
          padding-bottom: 10px; }
        div#ticket ol.step > li div.ticketType div.ic {
          width: 100%; }
          div#ticket ol.step > li div.ticketType div.ic p img {
            width: 60%;
            margin-top: 0; }
        div#ticket ol.step > li div.ticketType div.or {
          width: 100%;
          margin-bottom: 20px; }
          div#ticket ol.step > li div.ticketType div.or p {
            margin-top: 20px; }
        div#ticket ol.step > li div.ticketType div.app {
          width: 100%; }
          div#ticket ol.step > li div.ticketType div.app p img {
            width: 30%; }
      div#ticket ol.step > li p.detail img {
        display: block;
        width: 100px;
        height: auto;
        margin: auto;
        margin-bottom: 10px; }
      div#ticket ol.step > li div.app {
        display: block;
        flex-wrap: nowrap; }
        div#ticket ol.step > li div.app h4.download {
          font-size: 16px;
          margin: 30px 0; }
        div#ticket ol.step > li div.app div#iphone, div#ticket ol.step > li div.app div#android {
          width: 100%;
          margin: 0 0 20px 0;
          padding: 10px; }
          div#ticket ol.step > li div.app div#iphone h5, div#ticket ol.step > li div.app div#android h5 {
            font-size: 16px; }
          div#ticket ol.step > li div.app div#iphone ul.appStep, div#ticket ol.step > li div.app div#android ul.appStep {
            font-size: 12px;
            line-height: 18px; }
            div#ticket ol.step > li div.app div#iphone ul.appStep > li p.image, div#ticket ol.step > li div.app div#android ul.appStep > li p.image {
              text-align: center; }
              div#ticket ol.step > li div.app div#iphone ul.appStep > li p.image img, div#ticket ol.step > li div.app div#android ul.appStep > li p.image img {
                width: 60px;
                height: auto;
                margin-top: 10px; }
                div#ticket ol.step > li div.app div#iphone ul.appStep > li p.image img.qrcode, div#ticket ol.step > li div.app div#android ul.appStep > li p.image img.qrcode {
                  margin-left: 20px; }
            div#ticket ol.step > li div.app div#iphone ul.appStep > li p.qrcode, div#ticket ol.step > li div.app div#android ul.appStep > li p.qrcode {
              margin: 20px 0;
              text-align: center; }
            div#ticket ol.step > li div.app div#iphone ul.appStep > li p.linkBtn, div#ticket ol.step > li div.app div#android ul.appStep > li p.linkBtn {
              margin-top: 10px; }
              div#ticket ol.step > li div.app div#iphone ul.appStep > li p.linkBtn a, div#ticket ol.step > li div.app div#android ul.appStep > li p.linkBtn a {
                display: block;
                background: #34a4dd;
                width: 100%;
                text-align: center;
                text-decoration: none;
                color: white;
                font-size: 14px;
                font-weight: bold;
                padding: 12px 0;
                border-radius: 30px; }
            div#ticket ol.step > li div.app div#iphone ul.appStep > li ol, div#ticket ol.step > li div.app div#android ul.appStep > li ol {
              padding-left: 20px; }
              div#ticket ol.step > li div.app div#iphone ul.appStep > li ol li, div#ticket ol.step > li div.app div#android ul.appStep > li ol li {
                margin-bottom: 5px; }
    div#ticket h3.faq {
      font-size: 15px; }
    div#ticket ul.faq {
      font-size: 13px;
      line-height: 20px; }
      div#ticket ul.faq li p span {
        min-width: 24px; } }

div#map {
  max-width: 1000px;
  margin: 40px auto;
  text-align: center; }
  div#map .title h2 {
    text-align: left;
    font-size: 32px;
    margin-bottom: 2.5em;
    line-height: 1.1em; }
    div#map .title h2 span {
      font-size: 16px; }
  div#map div img {
    width: 100%;
    height: auto; }

@media screen and (max-width: 800px) {
  div#map {
    margin: 30px auto; }
    div#map h2 {
      padding: 0 25px; } }

div#mapDescription {
  max-width: 1000px;
  margin: 40px auto;
  display: flex;
  justify-content: center; }
  div#mapDescription > div {
    margin: 0 20px 20px; }
    div#mapDescription > div > a {
      display: block;
      padding: .8em 1em;
      border-radius: 12px;
      text-decoration: none; }
    div#mapDescription > div h3 {
      font-size: 18px;
      color: white; }
    div#mapDescription > div p {
      font-size: 15px;
      color: white; }
    div#mapDescription > div ul {
      list-style: none; }
      div#mapDescription > div ul li {
        margin-top: .8em; }
        div#mapDescription > div ul li h4 {
          display: inline-block;
          line-height: 1.2em;
          font-size: 16px; }
          div#mapDescription > div ul li h4 a {
            color: black;
            text-decoration: underline; }
            div#mapDescription > div ul li h4 a i {
              font-size: 18px; }
    div#mapDescription > div.right > a {
      background: #34a4dd; }
    div#mapDescription > div.right ul li p {
      color: #34a4dd; }
    div#mapDescription > div.left > a {
      background: #e4004f; }
    div#mapDescription > div.left ul li p {
      color: #e4004f; }

@media screen and (max-width: 800px) {
  div#mapDescription {
    display: block; }
    div#mapDescription > div h3 {
      font-size: 14px; }
    div#mapDescription > div p {
      font-size: 12px; } }

div.shopList {
  background: url(../img/bg_wave_lightblue.png) repeat-x center top #D3EDFB;
  background-size: 70px auto;
  padding: 60px 0; }
  div.shopList.noBg {
    background: none;
    padding: 0; }
  div.shopList > ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1000px;
    margin: auto;
    list-style: none; }
    div.shopList > ul > li {
      width: 30%;
      margin-bottom: 50px; }
      div.shopList > ul > li div.shopName {
        display: flex;
        align-items: center;
        margin-bottom: 20px; }
        div.shopList > ul > li div.shopName h3 {
          background: #182987;
          color: white;
          text-align: center;
          width: 36px;
          min-width: 36px;
          padding: 6px 0 8px 0;
          border-radius: 20px;
          font-size: 24px;
          font-family: 'Oswald', sans-serif;
          margin-right: 5px; }
          div.shopList > ul > li div.shopName h3.sagan {
            background: #e4004f; }
          div.shopList > ul > li div.shopName h3.family {
            background: #ee8101; }
          div.shopList > ul > li div.shopName h3.marche {
            background: #22ac38; }
          div.shopList > ul > li div.shopName h3.food {
            background: #ed6c00; }
        div.shopList > ul > li div.shopName h4 {
          font-size: 16px;
          font-weight: normal;
          line-height: 20px; }
          div.shopList > ul > li div.shopName h4.large {
            font-size: 22px;
            font-weight: bold; }
      div.shopList > ul > li div.shopImg {
        position: relative; }
        div.shopList > ul > li div.shopImg h5 {
          position: absolute;
          right: -6px;
          top: -6px;
          font-weight: normal;
          font-size: 9px;
          padding: .05em .6em;
          color: #182987;
          background: #ABD6F4;
          font-weight: bold;
          border-radius: 4px;
          /*&:after {
            content: " ";
            position: absolute;
            bottom: -6px;
            right: 0;
            width: 0;
            height: 0;
            border-style: solid;
            border-color: transparent transparent transparent darkgray;
            border-width: 0 0 6px 6px;
          }*/ }
          div.shopList > ul > li div.shopImg h5.sagan {
            background-color: #E9B7CF;
            color: #D44759; }
          div.shopList > ul > li div.shopImg h5.food {
            background-color: #FAE360;
            color: #D66F2B; }
      div.shopList > ul > li img {
        width: 100%;
        height: auto;
        margin-bottom: 10px; }
      div.shopList > ul > li table {
        border-collapse: separate;
        border-spacing: 0 4px;
        font-size: 13px;
        line-height: 22px;
        margin-top: 10px; }
        div.shopList > ul > li table tr th {
          width: 100px;
          text-align: center;
          background: #34a4dd;
          color: white;
          font-weight: normal; }
        div.shopList > ul > li table tr td {
          font-size: 14px;
          padding-left: 10px; }
          div.shopList > ul > li table tr td span {
            font-size: 12px; }
      div.shopList > ul > li p {
        font-size: 14px;
        line-height: 21px; }
        div.shopList > ul > li p.tel {
          margin-top: .8em; }
          div.shopList > ul > li p.tel span {
            display: inline-block;
            background: white;
            position: relative;
            margin-right: 20px;
            font-size: 12px;
            padding: 2px 0 2px 6px; }
            div.shopList > ul > li p.tel span:after {
              left: 100%;
              top: 50%;
              border: solid transparent;
              content: " ";
              height: 0;
              width: 0;
              position: absolute;
              pointer-events: none;
              border-left-color: white;
              border-width: 13px;
              margin-top: -13px; }
          div.shopList > ul > li p.tel a {
            color: black; }
        div.shopList > ul > li p.septemberHour {
          margin-top: 8px;
          font-size: 12px;
          opacity: .8; }
      div.shopList > ul > li ul {
        list-style: none;
        margin-top: .5em; }
        div.shopList > ul > li ul li {
          display: inline-block;
          padding: .05em .8em .05em 2.4em;
          font-size: 11px;
          margin: 3px 1px;
          border-radius: 14px; }
        div.shopList > ul > li ul.icon li {
          border: solid 1px rgba(0, 0, 0, 0.2); }
          div.shopList > ul > li ul.icon li.child {
            background: url(../img/icon_child.svg) no-repeat 6px center;
            background-size: auto 14px; }
          div.shopList > ul > li ul.icon li.drink {
            background: url(../img/icon_drink.svg) no-repeat 7px center;
            background-size: auto 14px; }
          div.shopList > ul > li ul.icon li.group {
            background: url(../img/icon_group.svg) no-repeat 5px center;
            background-size: auto 10px; }
          div.shopList > ul > li ul.icon li.takeout {
            background: url(../img/icon_takeout.svg) no-repeat 7px center;
            background-size: auto 14px; }
        div.shopList > ul > li ul.sns li {
          display: inline-block;
          padding: 0; }
          div.shopList > ul > li ul.sns li a {
            display: block;
            position: relative;
            text-decoration: none;
            padding: .05em .8em .05em 2.4em;
            color: white; }
            div.shopList > ul > li ul.sns li a:before {
              display: block;
              position: absolute;
              top: 1px;
              left: 8px;
              margin-top: 0;
              width: 14px;
              height: 14px;
              content: '\f00c';
              font-family: FontAwesome;
              font-size: 14px;
              color: white; }
          div.shopList > ul > li ul.sns li.web {
            background: darkcyan; }
            div.shopList > ul > li ul.sns li.web a:before {
              content: '\f0ac'; }
          div.shopList > ul > li ul.sns li.gnavi {
            background: #ec6100; }
            div.shopList > ul > li ul.sns li.gnavi a:before {
              content: '\f0f5';
              font-size: 13px; }
          div.shopList > ul > li ul.sns li.facebook {
            background: #315096; }
            div.shopList > ul > li ul.sns li.facebook a:before {
              content: '\f09a'; }
          div.shopList > ul > li ul.sns li.instagram {
            background: #D93177; }
            div.shopList > ul > li ul.sns li.instagram a:before {
              content: '\f16d'; }
          div.shopList > ul > li ul.sns li.twitter {
            background: #55acee; }
            div.shopList > ul > li ul.sns li.twitter a:before {
              content: '\f099'; }
      div.shopList > ul > li.mobilehouse {
        background: #FFF200; }
        div.shopList > ul > li.mobilehouse div.snowpeak {
          padding-top: 10px;
          text-align: center; }
          div.shopList > ul > li.mobilehouse div.snowpeak img {
            height: 30px;
            width: auto; }
        div.shopList > ul > li.mobilehouse h5 {
          text-align: center;
          font-size: 15px;
          margin-bottom: 5px; }
          div.shopList > ul > li.mobilehouse h5 span {
            font-size: 20px; }
        div.shopList > ul > li.mobilehouse p {
          padding: 0 15px;
          line-height: 18px; }
          div.shopList > ul > li.mobilehouse p span {
            font-size: 12px; }
          div.shopList > ul > li.mobilehouse p.reserve {
            font-weight: bold;
            margin: 5px 0; }
        div.shopList > ul > li.mobilehouse div.shopBit {
          margin-top: 10px;
          padding: 0 15px 10px 15px; }
          div.shopList > ul > li.mobilehouse div.shopBit div.content {
            display: flex;
            flex-wrap: wrap;
            background: white;
            padding: 10px; }
            div.shopList > ul > li.mobilehouse div.shopBit div.content div.image {
              width: 30%; }
            div.shopList > ul > li.mobilehouse div.shopBit div.content div.detail {
              width: 70%;
              padding: 5px 0 0 10px; }
              div.shopList > ul > li.mobilehouse div.shopBit div.content div.detail h5 {
                font-size: 12px;
                line-height: 18px;
                text-align: left; }
            div.shopList > ul > li.mobilehouse div.shopBit div.content p {
              font-size: 12px;
              padding: 0; }
      div.shopList > ul > li a.gurunaviLinkBtn {
        display: block;
        text-align: center;
        border-radius: 20px;
        color: #34a4dd;
        background: white;
        font-weight: bold;
        text-decoration: none;
        padding: 6px 0;
        margin-top: 15px; }
      div.shopList > ul > li.asahishuzo {
        border: solid 3px yellow;
        padding: 8px;
        border-radius: 8px; }
  div.shopList div.gurunaviLink {
    text-align: center; }
    div.shopList div.gurunaviLink a {
      display: inline-block;
      font-size: 18px;
      line-height: 24px;
      background: #34a4dd;
      color: white;
      padding: 16px 40px;
      border-radius: 40px;
      text-decoration: none; }
  div.shopList__info > ul > li {
    width: 47%;
    margin-bottom: 50px; }
  div.shopList__3col > ul > li {
    width: 31%; }

@media screen and (max-width: 800px) {
  div.shopList {
    padding: 50px 25px; }
    div.shopList.noBg {
      padding: 0 25px; }
      div.shopList.noBg > ul > li {
        margin-bottom: 40px; }
    div.shopList > ul {
      flex-wrap: wrap; }
      div.shopList > ul > li {
        width: 100%; }
        div.shopList > ul > li div.shopName h4 {
          font-size: 15px; }
        div.shopList > ul > li table {
          font-size: 12px; }
          div.shopList > ul > li table tr th {
            width: 65px; }
          div.shopList > ul > li table tr td {
            font-size: 13px; }
            div.shopList > ul > li table tr td span {
              font-size: 12px; }
        div.shopList > ul > li p {
          font-size: 13px;
          line-height: 20px; }
        div.shopList > ul > li.mobilehouse div.snowpeak img {
          height: 25px;
          width: auto; }
        div.shopList > ul > li.mobilehouse p span {
          font-size: 11px; }
    div.shopList div.gurunaviLink a {
      display: inline-block;
      width: 100%;
      font-size: 15px;
      line-height: 21px;
      padding: 10px 0px; }
      div.shopList div.gurunaviLink a br.spOnly {
        display: inline; } }

div#sns {
  text-align: center;
  padding: 60px 0; }
  div#sns h3 {
    font-size: 24px;
    margin-bottom: 30px; }
  div#sns a {
    font-size: 18px;
    line-height: 24px;
    display: inline-block;
    background: gray;
    color: white;
    padding: 16px 60px;
    margin: 0 10px;
    border-radius: 40px;
    text-decoration: none; }
    div#sns a img {
      vertical-align: top;
      margin-right: 10px;
      width: 24px;
      height: 24px; }
    div#sns a.facebook {
      background: #3B5998; }
    div#sns a.instagram {
      background: #D93177; }

@media screen and (max-width: 800px) {
  div#sns {
    padding: 50px 25px; }
    div#sns h3 {
      font-size: 18px;
      margin-bottom: 30px; }
    div#sns a {
      display: block;
      font-size: 16px;
      margin: 0 0 15px 0; } }

div#snsFixed {
  z-index: 1001;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 6px 20px 6px 10px;
  background: white;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.9) 0%, white 100%);
  text-align: center;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1); }
  div#snsFixed ul {
    max-width: 500px;
    margin: auto;
    display: flex;
    justify-content: space-between;
    list-style: none; }
    div#snsFixed ul li {
      display: inline-block; }
      div#snsFixed ul li a {
        display: block;
        color: black;
        padding: 1em 0;
        margin: 0;
        font-size: 14px;
        line-height: 18px;
        text-decoration: none;
        font-weight: bold; }
        div#snsFixed ul li a i {
          margin-right: .3em; }
        div#snsFixed ul li a.facebook {
          color: #305097; }
          div#snsFixed ul li a.facebook i {
            font-size: 17px;
            margin-right: 0; }
          div#snsFixed ul li a.facebook i:last-child {
            margin-right: 0;
            margin-left: .3em; }
      div#snsFixed ul li:first-child a {
        padding: 1em 10px 1em 10px; }

@media screen and (max-width: 800px) {
  div#snsFixed ul li a {
    font-size: 12px; }
    div#snsFixed ul li a.facebook i {
      font-size: 15px; } }

div#facebookParts {
  width: 500px;
  margin: 0 auto 50px auto; }

@media screen and (max-width: 800px) {
  div#facebookParts {
    width: 90%; } }

div#sponsorship {
  text-align: center;
  padding-bottom: 100px; }
  div#sponsorship h3 {
    font-size: 18px;
    line-height: 28px;
    margin-bottom: 30px; }
  div#sponsorship h4 {
    display: inline-block;
    border-bottom: solid 2px black;
    padding-bottom: 3px;
    margin-bottom: 20px; }
  div#sponsorship p span {
    font-size: 21px;
    margin-left: 10px; }
  div#sponsorship p i {
    margin-right: 3px; }

@media screen and (max-width: 800px) {
  div#sponsorship {
    padding: 0 25px 100px 25px; }
    div#sponsorship h3 {
      font-size: 15px;
      line-height: 26px; }
    div#sponsorship h4 {
      display: inline-block;
      border-bottom: solid 2px black;
      padding-bottom: 3px;
      margin-bottom: 20px; }
    div#sponsorship p {
      font-size: 12px; }
      div#sponsorship p span {
        display: block;
        font-size: 21px;
        margin-left: 0; }
      div#sponsorship p i {
        margin-right: 3px; } }

#news, #calendar, #access, .calendar {
  max-width: 1000px;
  margin: 50px auto; }
  #news .title h2, #calendar .title h2, #access .title h2, .calendar .title h2 {
    font-size: 32px;
    margin-bottom: 2.5em;
    line-height: 1.1em; }
    #news .title h2 span, #calendar .title h2 span, #access .title h2 span, .calendar .title h2 span {
      font-size: 16px; }
  @media screen and (max-width: 800px) {
    #news, #calendar, #access, .calendar {
      padding: 0 25px; } }
  #news #postLists, #calendar #postLists, #access #postLists, .calendar #postLists {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #news #postLists li, #calendar #postLists li, #access #postLists li, .calendar #postLists li {
      width: calc(100% / 4 - 15px);
      margin-bottom: 30px; }
      @media screen and (max-width: 800px) {
        #news #postLists li, #calendar #postLists li, #access #postLists li, .calendar #postLists li {
          width: calc(100% / 2 - 15px); } }
      #news #postLists li a, #calendar #postLists li a, #access #postLists li a, .calendar #postLists li a {
        color: black;
        text-decoration: none; }
        #news #postLists li a .bgImg, #calendar #postLists li a .bgImg, #access #postLists li a .bgImg, .calendar #postLists li a .bgImg {
          width: 100%;
          height: 180px;
          background-size: cover;
          background-position: center;
          background-repeat: no-repeat; }
          @media screen and (max-width: 800px) {
            #news #postLists li a .bgImg, #calendar #postLists li a .bgImg, #access #postLists li a .bgImg, .calendar #postLists li a .bgImg {
              height: 140px; } }
        #news #postLists li a .detail, #calendar #postLists li a .detail, #access #postLists li a .detail, .calendar #postLists li a .detail {
          margin-top: .5em; }
          #news #postLists li a .detail .date, #calendar #postLists li a .detail .date, #access #postLists li a .detail .date, .calendar #postLists li a .detail .date {
            color: gray;
            font-weight: bold;
            font-size: 11px;
            line-height: 1.8em; }
          #news #postLists li a .detail .title, #calendar #postLists li a .detail .title, #access #postLists li a .detail .title, .calendar #postLists li a .detail .title {
            font-size: 15px;
            line-height: 1.6em; }
    #news #postLists:before, #calendar #postLists:before, #access #postLists:before, .calendar #postLists:before {
      content: "";
      display: block;
      width: calc(100% / 4 - 15px);
      order: 1; }
      @media screen and (max-width: 800px) {
        #news #postLists:before, #calendar #postLists:before, #access #postLists:before, .calendar #postLists:before {
          content: normal; } }
    #news #postLists:after, #calendar #postLists:after, #access #postLists:after, .calendar #postLists:after {
      content: "";
      display: block;
      width: calc(100% / 4 - 15px); }
      @media screen and (max-width: 800px) {
        #news #postLists:after, #calendar #postLists:after, #access #postLists:after, .calendar #postLists:after {
          content: normal; } }
  #news #googleCalendar, #calendar #googleCalendar, #access #googleCalendar, .calendar #googleCalendar {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 800px) {
      #news #googleCalendar, #calendar #googleCalendar, #access #googleCalendar, .calendar #googleCalendar {
        display: none; } }
    #news #googleCalendar div.wrap, #calendar #googleCalendar div.wrap, #access #googleCalendar div.wrap, .calendar #googleCalendar div.wrap {
      width: calc(100% / 2 - 5px);
      position: relative; }
      @media screen and (max-width: 800px) {
        #news #googleCalendar div.wrap, #calendar #googleCalendar div.wrap, #access #googleCalendar div.wrap, .calendar #googleCalendar div.wrap {
          width: 100%;
          margin-top: 20px; } }
      #news #googleCalendar div.wrap::before, #calendar #googleCalendar div.wrap::before, #access #googleCalendar div.wrap::before, .calendar #googleCalendar div.wrap::before {
        content: "";
        display: block;
        padding-top: calc(100% * 3 / 4); }
      #news #googleCalendar div.wrap iframe, #calendar #googleCalendar div.wrap iframe, #access #googleCalendar div.wrap iframe, .calendar #googleCalendar div.wrap iframe {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0; }
  #news #accessImgs, #calendar #accessImgs, #access #accessImgs, .calendar #accessImgs {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media screen and (max-width: 800px) {
      #news #accessImgs, #calendar #accessImgs, #access #accessImgs, .calendar #accessImgs {
        display: block; } }
    #news #accessImgs div, #calendar #accessImgs div, #access #accessImgs div, .calendar #accessImgs div {
      width: calc(50% - 15px); }
      @media screen and (max-width: 800px) {
        #news #accessImgs div, #calendar #accessImgs div, #access #accessImgs div, .calendar #accessImgs div {
          width: 100%; }
          #news #accessImgs div:first-child, #calendar #accessImgs div:first-child, #access #accessImgs div:first-child, .calendar #accessImgs div:first-child {
            margin-bottom: 30px; } }
      #news #accessImgs div img, #calendar #accessImgs div img, #access #accessImgs div img, .calendar #accessImgs div img {
        width: 100%;
        height: auto; }

#bnrs {
  padding: 0 25px;
  margin-bottom: 40px; }
  #bnrs div {
    width: 100%;
    max-width: 350px;
    margin: auto; }
    #bnrs div a {
      display: block; }
      #bnrs div a img {
        width: 100%;
        height: auto; }
      #bnrs div a span {
        margin-top: .5em;
        display: block;
        text-align: center; }
        #bnrs div a span i {
          opacity: .75;
          margin-left: .2em; }

#ended {
  background: whitesmoke;
  padding: 5em 25px; }
  #ended h2 {
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.8em;
    letter-spacing: .1em;
    margin-bottom: 2em; }
  #ended p {
    max-width: 800px;
    margin: 1em auto 0;
    font-size: 16px;
    line-height: 2em; }

.un_coronaAttention {
  text-align: center;
  padding: 25px 15px 40px;
  border-top: solid 1px #009944;
  max-width: 800px;
  margin: auto; }
  @media screen and (max-width: 800px) {
    .un_coronaAttention {
      padding: 25px 15px 30px; } }
  .un_coronaAttention h3 {
    color: #009944;
    font-size: 24px;
    line-height: 1.6; }
    @media screen and (max-width: 800px) {
      .un_coronaAttention h3 {
        font-size: 18px; } }
    .un_coronaAttention h3 span {
      font-size: 14px; }
    .un_coronaAttention h3.alert {
      color: #a40000; }
  .un_coronaAttention p {
    max-width: 460px;
    margin: 10px auto 1em;
    text-align: left; }
  .un_coronaAttention table {
    text-align: left;
    margin: 0 auto 1em;
    font-weight: bold;
    font-size: 16px;
    line-height: 1.6; }
    .un_coronaAttention table tr th {
      vertical-align: top;
      padding-right: 1em; }
    .un_coronaAttention table tr td {
      vertical-align: top; }
  .un_coronaAttention ul {
    padding-left: 30px;
    list-style: disc;
    text-align: left;
    max-width: 360px;
    margin: 10px auto;
    color: #555; }
  .un_coronaAttention a {
    color: black; }
    .un_coronaAttention a i {
      margin-left: .3em; }

div#campingOffice {
  max-width: 1000px;
  margin: 80px auto;
  text-align: center; }
  div#campingOffice .title h2 {
    text-align: left;
    font-size: 32px;
    margin-bottom: 2.5em;
    line-height: 1.1em; }
    div#campingOffice .title h2 span {
      font-size: 16px; }
  div#campingOffice div img {
    width: 100%;
    max-width: 500px;
    height: auto; }
  div#campingOffice div a.btn {
    font-size: 18px;
    line-height: 24px;
    display: inline-block;
    background: #00A0E9;
    color: white;
    padding: 16px 60px;
    margin: 0 10px;
    border-radius: 40px;
    text-decoration: none; }
    div#campingOffice div a.btn img {
      vertical-align: top;
      margin-right: 10px;
      width: 24px;
      height: 24px; }
  div#campingOffice .period {
    margin-bottom: 20px; }

@media screen and (max-width: 800px) {
  div#campingOffice {
    padding: 0 25px; } }

.roundedBtn {
  display: none; }
  @media screen and (max-width: 800px) {
    .roundedBtn {
      display: block;
      margin-top: -60px;
      text-align: center; }
      .roundedBtn a {
        display: inline-block;
        font-size: 18px;
        line-height: 24px;
        background: #00A0E9;
        color: white;
        padding: 16px 60px;
        margin: 0 10px;
        border-radius: 40px;
        text-decoration: none; }
        .roundedBtn a i {
          margin-right: .3em; } }

#hours {
  max-width: 1000px;
  margin: 0 auto 40px; }
  @media screen and (max-width: 800px) {
    #hours {
      padding: 0 25px; } }

.hoursWrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center; }
  @media screen and (max-width: 800px) {
    .hoursWrap {
      display: block; } }

.hoursTitle {
  color: #333;
  font-size: 18px;
  width: 100%;
  margin-bottom: 5px; }

.hoursPlace {
  font-size: 14px;
  background: gainsboro;
  padding: .2em .5em;
  border-radius: 6px;
  font-weight: bold;
  margin: 5px 0; }
  @media screen and (max-width: 800px) {
    .hoursPlace {
      display: inline-block;
      margin-top: 10px; } }
  .hoursPlace_outdoor {
    background-color: #ABD6F4;
    color: #1A2C83; }
  .hoursPlace_food {
    background-color: #FAE360;
    color: #D66F2B; }
  .hoursPlace_health {
    background-color: #E9B7CF;
    color: #D44759; }

.hoursData {
  font-size: 16px;
  margin: 0 10px; }
  @media screen and (max-width: 800px) {
    .hoursData {
      margin-left: 0;
      margin-top: 5px; } }

.hoursNote {
  font-size: 12px;
  margin-top: .5em; }
  .hoursNote br {
    display: none;
    margin-left: 0; }
    @media screen and (max-width: 800px) {
      .hoursNote br {
        display: inline; } }

.period {
  text-align: center; }
  .period p {
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    text-align: center;
    font-size: 24px;
    line-height: 1;
    letter-spacing: .1em;
    margin-bottom: 30px;
    background: #f5f500;
    display: inline-block;
    border-radius: 2em;
    padding: .6em 1em; }
    @media screen and (max-width: 800px) {
      .period p {
        font-size: 21px; } }
    .period p span {
      font-size: 180%; }

.yearEvent {
  position: relative;
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  text-align: center;
  font-size: 36px;
  letter-spacing: .1em;
  color: #009fe9;
  line-height: 1;
  margin-top: -90px;
  margin-bottom: 60px;
  z-index: 2; }
  @media screen and (max-width: 800px) {
    .yearEvent {
      margin-top: -50px;
      font-size: 24px;
      margin-bottom: 40px; } }

.shopPreparation {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4; }

/*# sourceMappingURL=style.css.map */
