@charset "utf-8";
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.min.css */
*, ::before, ::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0
}
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent
}
body {
  margin: 0
}
main {
  display: block
}
p, table, blockquote, address, pre, iframe, form, figure, dl {
  margin: 0
}
h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0
}
ul, ol {
  margin: 0;
  padding: 0;
  list-style: none
}
dt {
  font-weight: 700
}
dd {
  margin-left: 0
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit
}
pre {
  font-family: monospace, monospace;
  font-size: inherit
}
address {
  font-style: inherit
}
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit
}
abbr[title] {
  text-decoration: underline dotted
}
b, strong {
  font-weight: bolder
}
code, kbd, samp {
  font-family: monospace, monospace;
  font-size: inherit
}
small {
  font-size: 80%
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}
sub {
  bottom: -.25em
}
sup {
  top: -.5em
}
svg, img, embed, object, iframe {
  vertical-align: bottom
}
button, input, optgroup, select, textarea {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit
}
button, [type="button"], [type="reset"], [type="submit"] {
  cursor: pointer
}
button:disabled, [type="button"]:disabled, [type="reset"]:disabled, [type="submit"]:disabled {
  cursor: default
}
:-moz-focusring {
  outline: auto
}
select:disabled {
  opacity: inherit
}
option {
  padding: 0
}
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0
}
legend {
  padding: 0
}
progress {
  vertical-align: baseline
}
textarea {
  overflow: auto
}
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto
}
[type="search"] {
  outline-offset: -2px
}
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}
[type="number"] {
  -moz-appearance: textfield
}
label[for] {
  cursor: pointer
}
details {
  display: block
}
summary {
  display: list-item
}
[contenteditable]:focus {
  outline: auto
}
table {
  border-color: inherit;
  border-collapse: collapse
}
caption {
  text-align: left
}
td, th {
  vertical-align: top;
  padding: 0
}
th {
  text-align: left;
  font-weight: 700
}
html {
  scroll-behavior: smooth;
}
body {
    font-family: "Noto Sans JP","游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 400;
    color: #3a535d;
    font-size: 1.1vw;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), 
       only screen and (min-resolution: 192dpi) {
  body {
     font-size: 1.2vw;
  }
}
:root {
  --modal-dur: .8s;
  --modal-ease: cubic-bezier(.2, .7, .2, 1);
}
.pc {
  display: block;
}
.sp {
  display: none;
}
.en {
font-family: "Google Sans Flex", sans-serif;
  font-weight: 700;
  font-style: normal;
}

img {
  width: 100%;
}
p {
    line-height: 2;
    letter-spacing: 0.1em;
    font-feature-settings: "palt";
}
.flex {
	display: flex;
}
/************ ハンバーガーメニュー *************/

body{
  overflow-x: hidden;
}

header {
    position: relative;
    z-index: 3;
}


.hamburger {
    width: 94px;
    height: 94px;
    position: fixed;
    top: 24px;
    right: 40px;
        background: #008e54;
    border-radius: 48px;
    z-index: 4;
    cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transform: scale(0.95, 0.95);
  transition: .4s;
}
.sc01 .hamburger {
  opacity: 1;
   pointer-events: auto;
  transform: scale(1, 1);
  transition: .4s;
}
.menu-active .hamburger {
        background:none;
}
.hamburger span{
  position: absolute;
  width: 56%;
  height: 2px;
  background-color: #fefcef;
  transition: .3s;
  margin: 0 auto;
  left: 0;
  right: 0;
}
.hamburger span:first-of-type{
  top: 44px;
}
.hamburger span:nth-of-type(2){
  top: 52px;
}
.slide-menu {
    background: #008e54;
    position: fixed;
    top: 0;
    width: 40%;
    right: -100%;
    transition: .7s;
    height: 100%;
    z-index: 3;
}

.menu-active .slide-menu {
  transform: translateX(0);
}
.slide-menu ul{
padding: 50px 50px 0;
}
.slide-menu dl{
  color: #b5aa5f;
  text-align:left;
  padding-bottom: 12px;
}
.slide-menu li a{
text-decoration: none;
}
.slide-menu li.en a{
text-decoration: none;
}
.slide-menu li.sub {
    font-size: 15px;
}
.slide-menu li.en {
    font-size: 40px;
    padding-top: 40px;
}
.menu-active .hamburger span:first-of-type{
  top: 50%;
  transform: rotate(45deg);    background-color: #008e54;
}
.menu-active .hamburger span:nth-of-type(2){
  top: 50%;
  transform: rotate(-45deg);    background-color: #008e54;
}

.menu-active .slide-menu {
 right: 0%;
}
.body.menu-active {
  overflow: hidden;
  transition: .7s;
}
.slide-menu-wrap {
width: 97%;
    margin: 1.4% auto 0;
    background: #fefcef;
    height: 100%;
    border-radius: 10px;
}
.slide-menu-logo {
    width: 68%;
    text-align: center;
    margin: 0 auto;
    padding-top: 7vw;
}
.slide-menu-gnav {
    width:50%;
}
.slide-menu-gnav a {
text-decoration: none;
}

.slide-menu-wrap li {
    text-align: center;
	padding-bottom: 1em;
}
.slide-menu-wrap li .en {
    font-size: 2.4em;
    display: block;
    line-height: 1;
}
.slide-menu-wrap li .jp {
    display: block;
    font-weight: 700;
}
/************ Wrapper *************/
.content {
  position: relative;
}

.wrap {
    background: #00a1df;
    overflow: hidden;
    position: relative;
}.inner {
  width: 82%;
  margin: 0 auto;
	position: relative;
}
.inner-wide {
  width: 88%;
  margin: 0 auto;
}
.inner-min {
    width: 78%;
    margin: 0 auto;
	position: relative;
}
.l-sec {
  padding-top: 10em;
}
/************ Hero *************/

.hero-fade {
  animation: fadeInlogo 0.5s ease forwards;
  animation-delay: 0.5s;
  opacity: 0;
}

.content {
  animation: fadeInlogo 0.5s ease forwards;
  animation-delay: 0.5s;
  opacity: 0;
}
@keyframes fadeInhero {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.8;
  }
}
@keyframes fadeInlogo {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.hero {
    margin: 0 auto;
    padding: 9em 0 18em;
    position: relative;
    z-index: 2;
        background-image: linear-gradient(0deg, #0aadec, #00a1df 73%, #008be0);
}
.hero-logo {
    width: 50%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    padding-right: 4%;
}
.hero-copy {
    position: absolute;
    width: 1.3em;
    left: 4em;
    top: 3em;
    z-index: 3;
}
.hero-txt {
padding: 3em 0 0;
    font-size: 1em;
    font-weight: 600;
    color: #fff;
    position: relative;
    z-index: 3;
    width: 60%;
    margin: 0 auto;
}
.hero-txt p.sup {
    font-size: 0.88em;
    text-indent: -1em;
    padding-left: 1em;
    font-weight: 400;
    padding-top: 1em;
    line-height: 1.7em;
}

.hero-bg01 {
    width: 20em;
    position: absolute;
    top: 0;
    right: 0;
}
.hero-bg02 {
    width: 17em;
    top: 0;
    position: absolute;
    left: 0;
}
.hero-bg03 {
    position: absolute;
    width: 14em;
    bottom: 15em;
    left: 0;
    z-index: 3;
}
.hero-bg04 {
    position: absolute;
    width: 7em;
    top: 20em;
    left: 7em;
	    border-radius: 999px;
    overflow: hidden;
}
.hero-bg10 {
    position: absolute;
    width: 6em;
    top: 30em;
    left: 9em;
    overflow: hidden;
    border-radius: 999px;
}
.hero-bg05 {
    position: absolute;
    width: 6em;
    top: 26em;
    right: 2em;
    overflow: hidden;
    border-radius: 999px;
}
.hero-bg06 {
    position: absolute;
    width: 6em;
    top: 45em;
    right: 8em;
    overflow: hidden;
    z-index: 3;
    border-radius: 999px;
}

.hero-bg07 {
    position: absolute;
    width: 6em;
    top: 37em;
    right: 18em;
    overflow: hidden;
    border-radius: 999px;
    z-index: 2;
}
.hero-bg08 {
    position: absolute;
    width: 6em;
    top: 39em;
    right: 2em;
    overflow: hidden;
    border-radius: 999px;
    z-index: 3;
}
.hero-bg09 {
    position: absolute;
    width: 6em;
    top: 32em;
    left: 2em;
    overflow: hidden;
    border-radius: 999px;
    z-index: 2;
}
.hero-pickup01 {
    position: absolute;
    width: 7em;
    top: 2em;
    left: 15em;
}
.hero-pickup01 {
    position: absolute;
    width: 8em;
    top: 1em;
    left: 12em;
}
.hero-pickup02 {
    position: absolute;
    width: 8em;
    top: 8em;
    right: 6em;
}
.hero-pickup03 {
    position: absolute;
    width: 7em;
    left: 6em;
    bottom: 23em;
    z-index: 3;
}
.hero-pickup04 {
    position: absolute;
    width: 8em;
    right: 8.8em;
    top: 33.4em;
    z-index: 3;
}
.hero-pickup05 {
    position: absolute;
    width: 7em;
    border-radius: 999px;
    left: 12em;
    top: 29em;
    z-index: 3;
    overflow: hidden;
}
.float-motion {
  translate: 0 0;

  animation:
    float-move var(--float-duration, 8s) ease-in-out infinite,
    float-rotate var(--rotate-duration, 11s) ease-in-out infinite;

  animation-delay:
    var(--float-delay, 0s),
    var(--rotate-delay, 0s);

will-change: transform;
}

@keyframes float-move {
  0%,
  100% {
    translate: 0 0;
  }

  25% {
    translate: var(--float-x1) var(--float-y1);
  }

  50% {
    translate: var(--float-x2) var(--float-y2);
  }

  75% {
    translate: var(--float-x3) var(--float-y3);
  }
}

@keyframes float-rotate {
  0%,
  100% {
    rotate: 0deg;
  }

  35% {
    rotate: var(--rotate-1);
  }

  70% {
    rotate: var(--rotate-2);
  }
}

@media (prefers-reduced-motion: reduce) {
  .float-motion {
    animation: none;
  }
}

.hero-free {
    position: absolute;
    top: .5em;
    right: -3.5em;
    width: 7.5em;
}
.note {
    padding-top: 2em;
}
.note li {
  text-indent: -1em;
	padding-left: 1em;
	line-height: 1.5em;
	font-size: 0.9em;
}

/************ Header *************/
.gnav ul {
    display: flex;
    justify-content: center;
}
.gnav li {
    margin: 0 1em;
    text-align: center;
}
.gnav li span{
  display: block;
}
.gnav {
    position: absolute;
    top: 3vw;
    z-index: 2;
    width: 100%;
}

#home .gnav a {
    color: #ffffff;
}
.gnav li .en{
    font-size: 1.2em;
    font-weight: 900;
}
.gnav li .jp {
    font-size: 0.8em;
    font-weight: 600;
    padding-top: 0.18em;
}

/************ Content *************/

.sec-title-en {
font-size: 5vw;
	font-weight: 900;
	color: #0094cd;
}
.sec-title-jp {
    font-size: 1.15em;
    font-weight: 700;
    background: #0094cd;
    color: #fff;
    display: inline-block;
    padding: 0.5em 1.6em 0.55em;
    border-radius: 99px;
    line-height: 1em;
    margin-top: 0.2em;
}
.sec-title-wrap {
    text-align: center;
    padding-bottom: 5vw;
    position: relative;
    z-index: 2;
}
.sec-subtitle-jp {
    font-size: 1em;
    font-weight: 700;
    background: #0094cd;
    color: #fff;
    display: inline-block;
    padding: 0.4em 1.6em;
    border-radius: 99px;
    line-height: 1em;
    margin-top: 0.2em;
}
.sec-subtitle {
    font-size: 1.5em;
    text-align: center;
    padding-bottom: 2.5em;
    font-weight: 700;
    color: #0094cd;
	display: inline-block;
	position: relative;
}
.sec-subtitle-wrap {
    text-align: center;
    padding-bottom: 3em;
}
.sec-subtitle::before, .sec-subtitle::after {
    position: absolute;
    top: 0.1em;
    height: 1.1em;
    content: '';
}
.sec-subtitle::after {
    border-right: solid 2px;
    right: -0.7em;
    transform: rotate(30deg);
}
.sec-subtitle::before {
    border-left: solid 2px;
    left: -0.7em;
    transform: rotate(-30deg);
}
.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    border: #008e54 solid 0.38vw;
    border-radius: 1.4vw;
    overflow: hidden;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
/************ Guest *************/

section#guest {
    padding-top: 2em;
}
.guest-items {
    justify-content: space-between;
    position: relative;
    z-index: 2;
	padding-bottom: 4em;
}
.guest-item {
    width: calc(25% - 1.6em);
    text-align: center;
}
.guest-item-tmb{
	    position: relative;
	    padding-bottom: 1.3em;
}

.guest-item-tmb img {
    border-radius: 1em;
}

.guest-item-name {
    font-weight: 700;
    font-size: 1.2em;
    padding-top: 0.4em;
}
.guest-item-time {
    font-size: 0.9em;
    font-weight: 600;
    padding-top: 0.4em;
}

.sec-subtitle-en.en {
    font-size: 2.6em;
    text-align: center;
    color: #0094cd;
    font-weight: 900;
}
.day-list {
    display: flex;
    gap: 0.3em;
    justify-content: flex-start;
    align-items: center;
}
.day-list .day01 {
    font-size: 0.72em;
    font-weight: 700;
    color: #fff;
    background: #32b7df;
    width: 6em;
    padding: 0.54em;
    line-height: 1em;
    border-radius: 99px;
    text-align: center;
    font-feature-settings: "palt";
}
.day-list .day02 {
    font-size: 0.72em;
    font-weight: 700;
    color: #fff;
    background: #f17676;
    width: 6em;
    padding: 0.54em;
    line-height: 1em;
    border-radius: 99px;
    text-align: center;
    font-feature-settings: "palt";
}
.guest-item-txt .day-list .day01 {
margin: 0 auto;
}
.guest-item-txt .day-list .day02 {
margin: 0 auto;
}
.guest {
    padding-bottom: 7em;
	text-align: center;
}

/************ Event *************/
section#event {
    position: relative;
    background: #eaf8ff;
    padding-top: 0em;
}

.event-pickup {
padding-bottom: 6em;
}
.event-items {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.event-item {
    width: calc(50% - 2em);
    display: flex;
	padding-bottom: 2.2em;
}
.event-item-tmb {
    width: 25%;
}
.event-item-tmb img {
    border-radius: 0.6em;
}

.event-item-title {
    font-weight: 600;
    font-size: 1.12em;
    line-height: 1.3;
    font-feature-settings: "palt";
	    padding-top: 0.4em;
}.event-item-txt {
    width: 75%;
    box-sizing: border-box;
    padding-left: 1.6em;
}
.event-item p {
    line-height: 1.6;
    padding-top: 0.3em;
    font-size: 0.88em;
}


.coution {
    padding: 2em;
    font-weight: 500;
    color: #ef3636;
    text-align: center;
}
.coution-title {
    font-size: 1.2em;
    font-weight: 600;
    padding-bottom: 1em;
}
.coution li {
    font-size: 0.95em;
    line-height: 1.4;
    text-indent: -1em;
    padding-left: 1em;
    margin-bottom: 0.3em;
	font-weight: 500;
}
.location {
    font-size: 1.6em;
    font-weight: 600;
	text-align: center;
}
.location-address {
    padding: 1em 0;
	text-align: center;
}
.event-item span.sup {
    display: block;
    font-size: 0.8em;
    padding-top: 0.4em;
}
/************ tour *************/
section#tour {
    background: #eaf8ff;
    padding-bottom: 8em;
    margin: 0;
}
.tour {
    text-align: center;
}

.toure-items.flex {
    gap: 2em;
	    justify-content: center;
}
.toure-item {
    background: #ffffff;
    border-radius: 0.5em;
	overflow: hidden;
	    width: 30%;
}
.toure-item-txt {
    padding: 1.6em;
}
.btn-more a {
    display: block;
    background: #ec6c00;
    color: #fff;
    border-radius: 99px;
    padding: 0.6em;
    font-size: 1.2em;
    font-weight: 600;
    margin-bottom: 0.3em;
	transition: .4s;
	text-align: center;
}
.tour01 .btn-more a {
    background: #e3a672;
}
.tour02 .btn-more a {
    background: #74b993;
}
.tour03 .btn-more a {
    background: #5cb3df;
}
.btn-more a:hover {
    background: #000;
	transition: .4s;
}
.btn-reserve a {
    display: block;
    background: #ec6c00;
    color: #fff;
    border-radius: 99px;
    padding: 0.6em;
    font-size: 1.2em;
    font-weight: 600;
    margin-bottom: 0.3em;
	transition: .4s;
	text-align: center;
}
.tour01 .btn-reserve a {
    background: #ec6c00;
}
.tour02 .btn-reserve a {
    background: #009140;
}
.tour03 .btn-reserve a {
    background: #008cd3;
}
.btn-reserve a:hover {
    background: #000;
	transition: .4s;
}

.toure-item p {
    font-size: 0.95em;
    line-height: 1.7em;
    text-align: left;
    padding-bottom: 0;
	    padding-bottom: 1em;
	font-weight: 500;
}
.toure-item-title {
    font-weight: 700;
    font-size: 1.1em;
    font-feature-settings: "palt";
}

iframe {
    width: 100%;
    border-radius: 1em;
}
.toure-item-tmb {
    width: 100%;
    margin: 0 auto;
}
.day {
width: 8em;
    margin: 0 auto;
	padding-bottom: 1.5em;
}


/**********pokemon*********/
.pokemon {
    background: #fff;
    padding: 2.5em;
    border-radius: 1em;
    margin-bottom: 2em;
}
.pokemon-tmb {
    width: 30%;
}
.pokemon-wrap.flex {
    justify-content: space-between;
}
.pokemon-txt {
    width: 65%;
    padding-top: 1em;
}
.pokemon-subtitle {
    font-size: 1em;
    font-weight: 600;
    padding-bottom: 1em;
}
.pokemon-title {
    font-size: 1.5em;
    font-weight: 700;
    padding-bottom: 0.4em;
}
.pokemon-copyright {
    font-size: 0.8em;
    color: #333;
    line-height: 1.5em;
}
.pokemon-price {
    background: #ed818f;
    padding: 0.6em 1.1em;
    border-radius: 0.3em;
    margin-bottom: 0.8em;
    color: #fff;
    font-size: 1em;
    font-weight: 600;
}
.price-note {
    color: #e36878;
    padding-bottom: 1em;
    font-weight: 600;
    font-size: 0.94em;
}
.pokemon-time.day01.flex {
    border-top: #595959 dotted 1px;
    padding: 0.7em;
	    align-items: center;
}
.pokemon-time.day02.flex {
    border-top: #595959 dotted 1px;
	border-bottom: #595959 dotted 1px;
    padding: 0.7em;
	    align-items: center;
}
.pokemon-time-day {
    font-size: 1.2em;
    font-weight: 900;
    color: #32b7df;
	    width: 3em;
}
.day02 .pokemon-time-day {
    color: #f17676;
}


.pokemon-time-item {
    display: flex;
    padding-left: 1em;
    align-items: center;
}
.pokemon-time-no {
    width: 2em;
    height: 2em;
    font-size: 1em;
    font-weight: 900;
    color: #fff;
    background: #32b7df;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
}
.day02 .pokemon-time-no {
    background: #f17676;
}

.pokemon-time-detail {
    font-size: 1.1em;
    padding-left: 0.8em;
    font-weight: 700;
    line-height: 1em;
}
.seiriken-title {
    font-size: 1.1em;
    font-weight: 600;
    padding-bottom: 0.5em;
}
.seiriken {
	font-size: 0.9em;
    padding-top: 1em;
    line-height: 1.5em;
}
.seiriken p {
	font-size: 0.9em;
    line-height: 1.5em;
}
.seiriken p.sup {
	font-size: 0.9em;
    line-height: 1.5em;
	padding-top: 0.5em;
	padding-bottom: 0.3em;
}
/****tietable*********/
.inner-wrap {
    background: #ffffff;
    padding: 4em;
    border-radius: 1em;
	position: relative;
}
.timetable-items.flex {
    justify-content: space-between;
}
.timetable {
    padding-bottom: 1em;
}
.shikai {
    width: 10em;
    position: absolute;
    top: -5em;
    right: 4em;
}
.shikai img {
    border-radius: 999px;
}
.shikai-job {
    font-size: 0.9em;
    text-align: center;
    padding-top: 0.8em;
    font-weight: 600;
}
.shikai-name {
    padding-top: 0.2em;
    text-align: center;
    font-size: 1.14em;
    font-weight: 600;
}


.timetable-item {
    width: calc(48% - 0.4%);
}
.timetable-item dl {
    display: flex;
    align-items: center;
    padding: 0.8em;
    margin-bottom: 0.4em;
    background: #f1f9ff;
    border-radius: 0.3em;
}

.timetable-item.day01 dl {
    background: #f2fbfd;
}
.timetable-item.day01 dl.odd {
    background: #e6f4f7;
}
.timetable-item.day02 dl {
    background: #fff8f8;
}
.timetable-item.day02 dl.odd {
    background: #ffeded;
}

.timetable-item dt {
    font-weight: 600;
    padding-right: 1em;
	font-size: 1.05em;
}
.timetable-item dd {
    margin-left: 0;
    font-size: 1.05em;
    font-weight: 600;
}

.timetable-item.day01 dl.special {
    background: #32b7df;
	    color: #fff;
}
.timetable-item.day02 dl.special {
    background: #f17676;
	    color: #fff;
}

.map {
    border-radius: 1.2em;
    overflow: hidden;
}
/***********access*********/
section#access {
    padding-bottom: 5vw;
    background: #fff;
}.bus.pc {
    padding-bottom: 4em;
}

/**********outline*********/

.outline {
    padding-top: 4em;
    background: #00a1df;
    color: #ffffff;
    padding-bottom: 4em;
}
.outline .sec-title-wrap {
    padding-bottom: 2vw;
    position: relative;
    z-index: 2;
    text-align: center;
}
.outline .sec-title-en {
    color: #fff;
}

.outline .sec-title-en {
    font-size: 3vw;
}
.outline th {
    text-align: left;
    font-weight: 400;
    padding: 0.8em;
    width: 8em;
    border-top: #27afe3 solid 2px;
    line-height: 1.6;
    font-size: 1em;
}
.outline td {
    text-align: left;
    font-weight: 400;
    padding: 0.8em;
    border-top: #27afe3 solid 2px;
    line-height: 1.6;
    font-size: 1em;
}
.outline th.first {
    border-top: none;
}
.outline td.first {
    border-top: none;
}
.outline .note {
    padding: 0 1em;
}
.note-title {
    font-weight: 600;
    padding-bottom: 1em;
}
.outline .note li {
    font-size: 0.85em;
    line-height: 1.5em;
    padding-bottom: 0.2em;
}
.outline .note li.coution {
    background: #e51b1b;
    padding: 0.4em;
    margin-top: 1em;
    display: inline-block;
}
.event-note li {
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.5em;
	    font-size: 0.9em;
}

/***********footer*********/

.footer-inner {
    width: 50%;
    margin: 0 auto;
}
footer {
    padding: 3em;
    color: #fff;
    text-align: center;
}


footer {
    padding: 6vw 0 5vw;
    color: #fff;
    text-align: center;
}



/* BG Wave */
.wave-bg {
  position: absolute;
  width: 100%;
  height: clamp(220px, 30vw, 420px);
  overflow: hidden;
  background-color: #05a7e6;
	bottom: 0;
}

.wave-track {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 200%;
  height: 105%;
  pointer-events: none;
  will-change: transform;
}

.wave-track svg {
  display: block;
  width: 100%;
  height: 100%;
  will-change: transform;
}
.wave-01 {
  fill: #0094cd;
  animation: wave-move-left 24s linear infinite;
}

.wave-01 svg {
  animation: wave-float-01 7s ease-in-out infinite alternate;
}
.wave-02 {
  fill: #64caf1;
  animation: wave-move-right 33s linear infinite;
}

.wave-02 svg {
  animation: wave-float-02 9s ease-in-out infinite alternate;
}

.wave-03 {
  fill: #b6e6f9;
  animation: wave-move-left 29s linear infinite;
}

.wave-03 svg {
  animation: wave-float-03 11s ease-in-out infinite alternate;
}

.wave-04 {
  fill: #dcf5ff;
  animation: wave-move-right 38s linear infinite;
}

.wave-04 svg {
  animation: wave-float-04 8s ease-in-out infinite alternate;
}
.wave-05 {
  fill: #eaf8ff;
  animation: wave-move-left 35s linear infinite;
}

.wave-05 svg {
  animation: wave-float-05 13s ease-in-out infinite alternate;
}

@keyframes wave-move-left {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-50%, 0, 0);
  }
}

@keyframes wave-move-right {
  from {
    transform: translate3d(-50%, 0, 0);
  }

  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes wave-float-01 {
  from {
    transform: translateY(-3px) scaleY(1);
  }

  to {
    transform: translateY(5px) scaleY(1.025);
  }
}

@keyframes wave-float-02 {
  from {
    transform: translateY(4px) scaleY(1.02);
  }

  to {
    transform: translateY(-5px) scaleY(0.98);
  }
}

@keyframes wave-float-03 {
  from {
    transform: translateY(-6px) scaleY(0.985);
  }

  to {
    transform: translateY(3px) scaleY(1.02);
  }
}

@keyframes wave-float-04 {
  from {
    transform: translateY(5px) scaleY(1);
  }

  to {
    transform: translateY(-4px) scaleY(1.025);
  }
}

@keyframes wave-float-05 {
  from {
    transform: translateY(-2px) scaleY(1.01);
  }

  to {
    transform: translateY(4px) scaleY(0.99);
  }
}
/* ------------------------------
 MODAL
------------------------------ */
.btn-item {
    text-align: center;
    padding-top: 1em;
}
.js-modal-trigger {
    font-size: 0.72em;
    font-weight: 700;
    color: #008e54;
    text-align: center;
    padding: 0.65em 1.5em;
    border-radius: 999px;
    cursor: pointer;
    transition: .4s;
    border: #008e54 solid 2px;
    display: inline-block;
}
.app {
    padding: 3em 0;
}
.app-tmb {
    width: 6em;
    margin: 0 auto;
    border-radius: 0.4em;
    overflow: hidden;
    margin-bottom: 1em;
}


.btn-item .js-modal-trigger:hover {
background:#008e54;
	color: #fff;
}
.modal {
  position: fixed;
  inset: 0;
  place-items: center;
  z-index: 1000;
  transition: .5s;
  /* 初期状態は見えない */
  visibility: hidden;
  pointer-events: none;
}
.modal[aria-hidden="true"] .modal__overlay {
  opacity: 0;
}
.modal[aria-hidden="true"] .modal__panel {
  opacity: 0;
  transform: scale(.98);
}
.modal[aria-hidden="false"] {
  visibility: visible;
  pointer-events: auto;
}
.modal__overlay {
    position: absolute;
    inset: 0;
    background: rgb(0 142 84 / 95%);
    transition: opacity var(--modal-dur) var(--modal-ease);
}
.modal__wrap {
    height: 100vh;
    overflow-y: scroll;
    padding: 2em 0;
    width: 100%;
}
.modal__panel {
	  position: relative;
  box-sizing: border-box;
  width: 50%;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, .2);
  transition:
    opacity var(--modal-dur) var(--modal-ease),
    transform var(--modal-dur) var(--modal-ease);
	margin: 0 auto;
}
.modal-content {
padding: 2em;
}

.modal__close {
    position: absolute;
top: 1em;
    right: 1em;
    inline-size: 2em;
    block-size: 2em;
    border: none;
    border-radius: 999px;
    background: #008e54;
    font-size: 1.3em;
    line-height: 1;
    cursor: pointer;
    color: #fff;
    font-weight: 900;
    text-align: center;
}



button.modal__close.circle__close__btn {
    position: absolute;
    top: 16px;
    right: 8px;
    border: none;
    border-radius: 999px;
    background: #b59675;
    font-size: 1em;
    line-height: 1;
    cursor: pointer;
    z-index: 3;
    font-weight: 900;
    color: #fff;
    padding: 8px;
    text-align: center;
}
.travel-items.flex {
    display: flex;
    justify-content: flex-start;
    gap: 1em;
    flex-wrap: wrap;
	padding-top: 5em;
}
.travel-item {
    width: calc(25% - 1em);
    padding-bottom: 1em;
}
.travel-item a {
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    padding: 1.6em;
    border-radius: 0.3em;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    border-top: #4dc9f9 solid 6px;
	transition: .4s;
}
.travel-item a:hover {
    transform: translateY(-5px); 
	transition: .4s;
}
.travel-item.comingsoon a {
    box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
    border-top: #c1c1c1 solid 6px;
    opacity: 0.6;
    pointer-events: none;
}

.travel-item-title {
    font-weight: 600;
    font-size: 1em;
    text-align: center;
    padding-bottom: 0.4em;
}
.travel-item p{
    font-size: 0.88em;
    line-height: 1.5em;
    padding-top: 0.4em;
}
.travel-company {
    font-size: 0.88em;
    font-weight: 500;
    padding-top: 1em;
}.travel-item-subtitle {
    font-size: 1.2em;
    text-align: center;
    font-weight: 600;
}
.travel-item p {
    font-size: 0.85em;
    line-height: 1.6em;
    padding-top: 1em;
}



.travel {
    padding-top: 5em;
}
@media screen and (max-width:1400px) {
 
}
@media screen and (max-width:1200px) {

}

@media screen and (max-width:1000px) {
	.inner-min {
    width: 72%;
}.inner {
    width: 90%;
}
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
.hero-bg01 {
    width: 15em;
}
.hero-bg02 {
    width: 14em;
}	
	.hero-pickup02 {
    width: 6em;
    top: 5em;
    right: 5em;
}
	.hero-pickup01 {
    width: 6em;
    top: 1em;
    left: 12em;
}.hero-free {
    top: -3.5em;
    right: -6em;
    width: 6em;
}.gnav {
    display: none;
}.hero-bg05 {
    width: 4em;
}.hero-copy {
    width: 1em;
    left: 2em;
    top: 3em;
}.hero-bg04 {
    width: 5em;
    top: 12em;
    left: 5em;
}.hero-pickup05 {
    width: 5em;
    left: 12em;
    top: 9em;
}.hero-txt {
    padding: 4em 0 0;
    font-size: 15px;
    font-weight: 600;
    color: #fff;
    position: relative;
    z-index: 3;
    width: 70%;
    margin: 0 auto;
}.hero-bg06 {
    position: absolute;
    width: 5em;
    top: 50em;
    right: 8em;
    overflow: hidden;
    z-index: 3;
    border-radius: 999px;
}.hero-bg08 {
    position: absolute;
    width: 5em;
    top: 39em;
    right: 2em;
    overflow: hidden;
    border-radius: 999px;
    z-index: 3;
}.hero-bg09 {
    position: absolute;
    width: 6em;
    top: 32em;
    left: 2em;
    overflow: hidden;
    border-radius: 999px;
    z-index: 2;
}.hero-pickup03 {
    position: absolute;
    width: 6em;
    left: 6em;
    bottom: 21em;
    z-index: 3;
}.hero-bg03 {
    position: absolute;
    width: 10em;
    bottom: 15em;
    left: 0;
    z-index: 3;
}.hero-logo {
    width: 64%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}.event-items {
    display: block;
}.event-item {
    width: 100%;
    display: flex;
    padding-bottom: 2.2em;
}.shikai {
    width: 7em;
    position: absolute;
    top: -3em;
    right: 4em;
}.timetable-items.flex {
    display: block;
}.timetable-item {
    width: 100%;
}.timetable-item.day01 {
    padding-bottom: 4em;
}.toure-items.flex {
    gap: 1em;
    display: block;
}.toure-item {
    width: 100%;
    margin-bottom:20px;
}.coution {
    font-size: 12px;
    line-height: 1.5em;
}section#tour {
    padding-bottom: 4em;
}.l-sec {
    padding-top: 6em;
}.hero-pickup04 {
position: absolute;
        width: 6em;
        right: 10em;
        top: 52em;
        z-index: 3;
}.hero-bg08 {
        position: absolute;
        width: 5em;
        top: 48em;
        right: 2em;
        overflow: hidden;
        border-radius: 999px;
        z-index: 3;
}.hero-bg09 {
        position: absolute;
        width: 5em;
        top: 36em;
        left: 2em;
        overflow: hidden;
        border-radius: 999px;
        z-index: 2;
}.hero-bg07 {
        position: absolute;
        width: 5em;
        top: 54em;
        right: 4em;
        overflow: hidden;
        border-radius: 999px;
        z-index: 2;
}.hero-bg06 {
    position: absolute;
    width: 5em;
    top: 60em;
    right: 11em;
    overflow: hidden;
    z-index: 3;
    border-radius: 999px;
}.hero-bg05 {
         position: absolute;
        width: 4em;
        top: 63em;
        right: 6em;
        overflow: hidden;
        border-radius: 999px;
        z-index: 3;
}.hero-pickup03 {
        position: absolute;
        width: 6em;
        left: 8em;
        bottom: 7em;
        z-index: 3;
}.hero {
    margin: 0 auto;
    padding: 15em 0 22em;
}.hero-bg03 {
    width: 10em;
    bottom: 10em;
    left: 0;
    z-index: 3;
}body {
    font-size: 16px;
}
	
}


@media screen and (max-width:650px) {
body {
    font-size: 14px;
}
.hero-bg02 {
    width: 30%;
}
	.hero-bg01 {
    width: 40%;
}.hero-pickup01 {
        width: 20%;
        top: 2%;
        left: 18%;
}.hero-pickup02 {
    width: 20%;
    top: 6%;
    right: 4%;
}.hero-free {
    top: 0;
    right: -20%;
    width: 20%;
}.hero-txt {
    padding: 2em 0 0;
    font-size: 13px;
    font-weight: 600;
    color: #fff;
    position: relative;
    z-index: 3;
    width: 80%;
    margin: 0 auto;
}.hero-pickup05 {
    width: 16%;
    left: 39%;
    top: 10%;
}.hero-copy {
    width: 15px;
    left: 15px;
    top: 80px;
}.hero-logo {
    width: 68%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}.hero-bg04 {
    width: 15%;
    top: 10%;
    left: 8%;
}.hero-bg09 {
    position: absolute;
    width: 12%;
    top: 16%;
    left: 62%;
    overflow: hidden;
    border-radius: 999px;
    z-index: 2;
}.hero-txt {
    padding: 4em 0 0;
    font-size: 13px;
    font-weight: 600;
    color: #fff;
    position: relative;
    z-index: 3;
    width: 80%;
    margin: 0 auto;
}.hero-bg03 {
    width: 25%;
    bottom: 14%;
    left: 0;
    z-index: 3;
}.hero-bg08 {
    position: absolute;
    width: 15%;
    top: 74%;
    right: 2em;
    overflow: hidden;
    border-radius: 999px;
    z-index: 3;
}.hero-pickup04 {
    position: absolute;
    width: 15%;
    right: 24%;
    top: 80%;
    z-index: 3;
}.hero-bg07 {
    position: absolute;
    width: 15%;
    top: 76%;
    right: 50%;
    overflow: hidden;
    border-radius: 999px;
    z-index: 2;
}.hero-bg05 {
    position: absolute;
    width: 15%;
    top: 86%;
    right: 2%;
    overflow: hidden;
    border-radius: 999px;
    z-index: 3;
}.hero-bg06 {
    position: absolute;
    width: 15%;
    top: 87%;
    right: 25%;
    overflow: hidden;
    z-index: 3;
    border-radius: 999px;
}.hero-pickup03 {
    position: absolute;
    width: 15%;
    left: 8%;
    bottom: 7em;
    z-index: 3;
}.hero-bg05 {
    position: absolute;
    width: 15%;
    top: 82%;
    right: 2%;
    overflow: hidden;
    border-radius: 999px;
    z-index: 3;
}.hero-bg07 {
    position: absolute;
    width: 15%;
    top: 76%;
    right: 41%;
    overflow: hidden;
    border-radius: 999px;
    z-index: 2;
}.hero-pickup03 {
    position: absolute;
    width: 15%;
    left: 12%;
    bottom: 16em;
    z-index: 3;
}.sec-title-en {
    font-size: 36px;
    font-weight: 900;
    color: #0094cd;
}.sec-title-jp {
    font-size: 14px;
}.sec-subtitle {
    font-size: 15px;
}.guest-items {
    flex-wrap: wrap;
}.guest-item {
    width: calc(50% - 8px);
    text-align: center;
    padding-bottom: 24px;
}.guest-item-tmb {
    position: relative;
    padding-bottom: 10px;
}.day-list .day01 {
    font-size: 11px;
}.guest-item-name {
    font-size: 15px;
}.guest-items {
    padding-bottom: 0;
}.guest {
    padding-bottom: 30px;
}.event-item-title {
    font-size: 15px;
}.event-item p {
    font-size: 12px;
}.inner-wrap {
    padding: 20px;
}.shikai img {
    border-radius: 999px;
    width: 80%;
    margin: 0 auto;
    display: block;
}.shikai {
    width: 100px;
    top: -3em;
    right: 10px;
}.sec-subtitle-en.en {
    font-size: 24px;
}.sec-subtitle-jp {
    font-size: 13px;
}.sec-subtitle-wrap {
    text-align: center;
    padding-bottom: 24px;
}.timetable-item dl {
    font-size: 13px;
}.toure-item-title {
    font-size: 15px;
}.toure-item {

}.toure-item p {
    font-size: 13px;
}.location {
    font-size: 20px;
}.outline th {
    padding: 8px 3px;
    width: 5em;
    line-height: 1.5;
    font-size: 13px;
}.outline td {
    padding: 8px 3px;
    line-height: 1.5;
    font-size: 13px;
}
.note li {
    font-size: 12px;
}
	.pokemon-wrap.flex {
    justify-content: space-between;
    display: block;
}
	.pokemon-tmb {
    width: 60%;
    margin: 0 auto;
}.pokemon-txt {
    width: 100%;
    padding-top: 1em;
}.pokemon-title {
    font-size: 18px;
    font-weight: 700;
    padding-bottom: 0.4em;
    text-align: center;
}.pokemon-subtitle {
    font-size: 12px;
    font-weight: 600;
    padding-bottom: 1em;
    text-align: center;
}
	.pokemon-price {
    font-size: 12px;
}
	.price-note {
    padding-left: 0;
    color: #e36878;
    padding-bottom: 1em;
    font-weight: 600;
    font-size: 12px;
    text-align: center;
}.pokemon-time-day {
    font-size: 14px;
    font-weight: 900;
    color: #32b7df;
    width: 4em;
}.pokemon-time-item {
    display: flex;
    padding-left: 5px;
    align-items: center;
}.pokemon-time-detail {
    font-size: 12px;
    padding-left: 8px;
    font-weight: 700;
    line-height: 1em;
}.seiriken p {
    font-size: 12px;
    line-height: 1.5em;
}.seiriken-title {
    font-size: 14px;
    font-weight: 600;
    padding-bottom: 0.5em;
}.pokemon {
    background: #fff;
    padding: 20px;
    border-radius: 1em;
    margin-bottom: 2em;
}.pokemon-time-day {
    font-size: 13px;
    font-weight: 900;
    color: #32b7df;
    width: 3em;
}
	.pokemon-time.day01.flex {
    padding: 0.6em 0;
}
	.pokemon-time.day02.flex {
    padding: 0.6em 0;
}.pokemon-time-detail {
    font-feature-settings: "palt";
}.pokemon-copyright {
    font-size: 11px;
    color: #333;
    line-height: 1.5em;
    padding-top: 1em;
}.pokemon-time-detail {
    padding-right: 8px;
}
	.hero-free {
        top: 0;
        right: -4%;
        width: 17%;
}
.hero-logo {
    width: 78%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    padding-right: 0;
}
	
	
	
	.hero-txt {
    width: 82%;
}.hero-txt p.sup {
    font-size: 12px;
}
	.travel-items.flex {
    display: block;
    justify-content: flex-start;
    gap: 1em;
    flex-wrap: wrap;
}.travel-item {
    width: 100%;
    padding-bottom: 1em;
}.travel-company {
    font-size: 12px;
    font-weight: 500;
    padding-top: 0.5em;
}.travel-item p {
    font-size: 12px;
    line-height: 1.6em;
    padding-top: 0.5em;
}.travel-item a {
    padding: 20px;
}.event-item-txt {
    padding-left: 1.2em;
}.shikai-name {
    padding-top: 0.2em;
    text-align: center;
    font-size: 14px;
    font-weight: 600;
}.shikai-job {
    font-size: 12px;
    text-align: center;
    padding-top: 0.8em;
    font-weight: 600;
}
	.travel-items.flex {
    padding-top: 20px;
}.event-note li {
    font-size: 12px;
}.hero-txt p.sup {
    line-height: 1.6em;
}
}

@media screen and (max-width:380px) {

}

