@charset "UTF-8";
/*!
 * animate.css - https://animate.style/
 * Version - 4.1.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2020 Animate.css
 */
:root {
  --animate-duration: 1s;
  --animate-delay: 1s;
  --animate-repeat: 1
}
.animate__animated {
  animation-duration: 1s;
  animation-duration: var(--animate-duration);
  animation-fill-mode: both
}
.animate__animated.animate__infinite {
  animation-iteration-count: infinite
}
.animate__animated.animate__repeat-1 {
  animation-iteration-count: 1;
  animation-iteration-count: var(--animate-repeat)
}
.animate__animated.animate__repeat-2 {
  animation-iteration-count: calc(1 * 2);
  animation-iteration-count: calc(var(--animate-repeat) * 2)
}
.animate__animated.animate__repeat-3 {
  animation-iteration-count: calc(1 * 3);
  animation-iteration-count: calc(var(--animate-repeat) * 3)
}
.animate__animated.animate__delay-1s {
  animation-delay: 1s;
  animation-delay: var(--animate-delay)
}
.animate__animated.animate__delay-2s {
  animation-delay: calc(1s * 2);
  animation-delay: calc(var(--animate-delay) * 2)
}
.animate__animated.animate__delay-3s {
  animation-delay: calc(1s * 3);
  animation-delay: calc(var(--animate-delay) * 3)
}
.animate__animated.animate__delay-4s {
  animation-delay: calc(1s * 4);
  animation-delay: calc(var(--animate-delay) * 4)
}
.animate__animated.animate__delay-5s {
  animation-delay: calc(1s * 5);
  animation-delay: calc(var(--animate-delay) * 5)
}
.animate__animated.animate__faster {
  animation-duration: calc(1s / 2);
  animation-duration: calc(var(--animate-duration)/ 2)
}
.animate__animated.animate__fast {
  animation-duration: calc(1s * .8);
  animation-duration: calc(var(--animate-duration) * .8)
}
.animate__animated.animate__slow {
  animation-duration: calc(1s * 2);
  animation-duration: calc(var(--animate-duration) * 2)
}
.animate__animated.animate__slower {
  animation-duration: calc(1s * 3);
  animation-duration: calc(var(--animate-duration) * 3)
}
@media print,
(prefers-reduced-motion:reduce) {
  .animate__animated {
    animation-duration: 1ms!important;
    transition-duration: 1ms!important;
    animation-iteration-count: 1!important
  }
  .animate__animated[class*=Out] {
    opacity: 0
  }
}
@keyframes bounce {
  20%,
  53%,
  from,
  to {
    animation-timing-function: cubic-bezier(.215,.61,.355,1);
    transform: translate3d(0,0,0)
  }
  40%,
  43% {
    animation-timing-function: cubic-bezier(.755,.05,.855,.06);
    transform: translate3d(0,-30px,0) scaleY(1.1)
  }
  70% {
    animation-timing-function: cubic-bezier(.755,.05,.855,.06);
    transform: translate3d(0,-15px,0) scaleY(1.05)
  }
  80% {
    transition-timing-function: cubic-bezier(.215,.61,.355,1);
    transform: translate3d(0,0,0) scaleY(.95)
  }
  90% {
    transform: translate3d(0,-4px,0) scaleY(1.02)
  }
}
.animate__bounce {
  animation-name: bounce;
  transform-origin: center bottom
}
@keyframes flash {
  50%,
  from,
  to {
    opacity: 1
  }
  25%,
  75% {
    opacity: 0
  }
}
.animate__flash {
  animation-name: flash
}
@keyframes pulse {
  from {
    transform: scale3d(1,1,1)
  }
  50% {
    transform: scale3d(1.05,1.05,1.05)
  }
  to {
    transform: scale3d(1,1,1)
  }
}
.animate__pulse {
  animation-name: pulse;
  animation-timing-function: ease-in-out
}
@keyframes rubberBand {
  from {
    transform: scale3d(1,1,1)
  }
  30% {
    transform: scale3d(1.25,.75,1)
  }
  40% {
    transform: scale3d(.75,1.25,1)
  }
  50% {
    transform: scale3d(1.15,.85,1)
  }
  65% {
    transform: scale3d(.95,1.05,1)
  }
  75% {
    transform: scale3d(1.05,.95,1)
  }
  to {
    transform: scale3d(1,1,1)
  }
}
.animate__rubberBand {
  animation-name: rubberBand
}
@keyframes shakeX {
  from,
  to {
    transform: translate3d(0,0,0)
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    transform: translate3d(-10px,0,0)
  }
  20%,
  40%,
  60%,
  80% {
    transform: translate3d(10px,0,0)
  }
}
.animate__shakeX {
  animation-name: shakeX
}
@keyframes shakeY {
  from,
  to {
    transform: translate3d(0,0,0)
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    transform: translate3d(0,-10px,0)
  }
  20%,
  40%,
  60%,
  80% {
    transform: translate3d(0,10px,0)
  }
}
.animate__shakeY {
  animation-name: shakeY
}
@keyframes headShake {
  0% {
    transform: translateX(0)
  }
  6.5% {
    transform: translateX(-6px) rotateY(-9deg)
  }
  18.5% {
    transform: translateX(5px) rotateY(7deg)
  }
  31.5% {
    transform: translateX(-3px) rotateY(-5deg)
  }
  43.5% {
    transform: translateX(2px) rotateY(3deg)
  }
  50% {
    transform: translateX(0)
  }
}
.animate__headShake {
  animation-timing-function: ease-in-out;
  animation-name: headShake
}
@keyframes swing {
  20% {
    transform: rotate3d(0,0,1,15deg)
  }
  40% {
    transform: rotate3d(0,0,1,-10deg)
  }
  60% {
    transform: rotate3d(0,0,1,5deg)
  }
  80% {
    transform: rotate3d(0,0,1,-5deg)
  }
  to {
    transform: rotate3d(0,0,1,0deg)
  }
}
.animate__swing {
  transform-origin: top center;
  animation-name: swing
}
@keyframes tada {
  from {
    transform: scale3d(1,1,1)
  }
  10%,
  20% {
    transform: scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg)
  }
  30%,
  50%,
  70%,
  90% {
    transform: scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg)
  }
  40%,
  60%,
  80% {
    transform: scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg)
  }
  to {
    transform: scale3d(1,1,1)
  }
}
.animate__tada {
  animation-name: tada
}
@keyframes wobble {
  from {
    transform: translate3d(0,0,0)
  }
  15% {
    transform: translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)
  }
  30% {
    transform: translate3d(20%,0,0) rotate3d(0,0,1,3deg)
  }
  45% {
    transform: translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)
  }
  60% {
    transform: translate3d(10%,0,0) rotate3d(0,0,1,2deg)
  }
  75% {
    transform: translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)
  }
  to {
    transform: translate3d(0,0,0)
  }
}
.animate__wobble {
  animation-name: wobble
}
@keyframes jello {
  11.1%,
  from,
  to {
    transform: translate3d(0,0,0)
  }
  22.2% {
    transform: skewX(-12.5deg) skewY(-12.5deg)
  }
  33.3% {
    transform: skewX(6.25deg) skewY(6.25deg)
  }
  44.4% {
    transform: skewX(-3.125deg) skewY(-3.125deg)
  }
  55.5% {
    transform: skewX(1.5625deg) skewY(1.5625deg)
  }
  66.6% {
    transform: skewX(-.78125deg) skewY(-.78125deg)
  }
  77.7% {
    transform: skewX(.390625deg) skewY(.390625deg)
  }
  88.8% {
    transform: skewX(-.1953125deg) skewY(-.1953125deg)
  }
}
.animate__jello {
  animation-name: jello;
  transform-origin: center
}
@keyframes heartBeat {
  0% {
    transform: scale(1)
  }
  14% {
    transform: scale(1.3)
  }
  28% {
    transform: scale(1)
  }
  42% {
    transform: scale(1.3)
  }
  70% {
    transform: scale(1)
  }
}
.animate__heartBeat {
  animation-name: heartBeat;
  animation-duration: calc(1s * 1.3);
  animation-duration: calc(var(--animate-duration) * 1.3);
  animation-timing-function: ease-in-out
}
@keyframes backInDown {
  0% {
    transform: translateY(-1200px) scale(.7);
    opacity: .7
  }
  80% {
    transform: translateY(0) scale(.7);
    opacity: .7
  }
  100% {
    transform: scale(1);
    opacity: 1
  }
}
.animate__backInDown {
  animation-name: backInDown
}
@keyframes backInLeft {
  0% {
    transform: translateX(-2000px) scale(.7);
    opacity: .7
  }
  80% {
    transform: translateX(0) scale(.7);
    opacity: .7
  }
  100% {
    transform: scale(1);
    opacity: 1
  }
}
.animate__backInLeft {
  animation-name: backInLeft
}
@keyframes backInRight {
  0% {
    transform: translateX(2000px) scale(.7);
    opacity: .7
  }
  80% {
    transform: translateX(0) scale(.7);
    opacity: .7
  }
  100% {
    transform: scale(1);
    opacity: 1
  }
}
.animate__backInRight {
  animation-name: backInRight
}
@keyframes backInUp {
  0% {
    transform: translateY(1200px) scale(.7);
    opacity: .7
  }
  80% {
    transform: translateY(0) scale(.7);
    opacity: .7
  }
  100% {
    transform: scale(1);
    opacity: 1
  }
}
.animate__backInUp {
  animation-name: backInUp
}
@keyframes backOutDown {
  0% {
    transform: scale(1);
    opacity: 1
  }
  20% {
    transform: translateY(0) scale(.7);
    opacity: .7
  }
  100% {
    transform: translateY(700px) scale(.7);
    opacity: .7
  }
}
.animate__backOutDown {
  animation-name: backOutDown
}
@keyframes backOutLeft {
  0% {
    transform: scale(1);
    opacity: 1
  }
  20% {
    transform: translateX(0) scale(.7);
    opacity: .7
  }
  100% {
    transform: translateX(-2000px) scale(.7);
    opacity: .7
  }
}
.animate__backOutLeft {
  animation-name: backOutLeft
}
@keyframes backOutRight {
  0% {
    transform: scale(1);
    opacity: 1
  }
  20% {
    transform: translateX(0) scale(.7);
    opacity: .7
  }
  100% {
    transform: translateX(2000px) scale(.7);
    opacity: .7
  }
}
.animate__backOutRight {
  animation-name: backOutRight
}
@keyframes backOutUp {
  0% {
    transform: scale(1);
    opacity: 1
  }
  20% {
    transform: translateY(0) scale(.7);
    opacity: .7
  }
  100% {
    transform: translateY(-700px) scale(.7);
    opacity: .7
  }
}
.animate__backOutUp {
  animation-name: backOutUp
}
@keyframes bounceIn {
  20%,
  40%,
  60%,
  80%,
  from,
  to {
    animation-timing-function: cubic-bezier(.215,.61,.355,1)
  }
  0% {
    opacity: 0;
    transform: scale3d(.3,.3,.3)
  }
  20% {
    transform: scale3d(1.1,1.1,1.1)
  }
  40% {
    transform: scale3d(.9,.9,.9)
  }
  60% {
    opacity: 1;
    transform: scale3d(1.03,1.03,1.03)
  }
  80% {
    transform: scale3d(.97,.97,.97)
  }
  to {
    opacity: 1;
    transform: scale3d(1,1,1)
  }
}
.animate__bounceIn {
  animation-duration: calc(1s * .75);
  animation-duration: calc(var(--animate-duration) * .75);
  animation-name: bounceIn
}
@keyframes bounceInDown {
  60%,
  75%,
  90%,
  from,
  to {
    animation-timing-function: cubic-bezier(.215,.61,.355,1)
  }
  0% {
    opacity: 0;
    transform: translate3d(0,-3000px,0) scaleY(3)
  }
  60% {
    opacity: 1;
    transform: translate3d(0,25px,0) scaleY(.9)
  }
  75% {
    transform: translate3d(0,-10px,0) scaleY(.95)
  }
  90% {
    transform: translate3d(0,5px,0) scaleY(.985)
  }
  to {
    transform: translate3d(0,0,0)
  }
}
.animate__bounceInDown {
  animation-name: bounceInDown
}
@keyframes bounceInLeft {
  60%,
  75%,
  90%,
  from,
  to {
    animation-timing-function: cubic-bezier(.215,.61,.355,1)
  }
  0% {
    opacity: 0;
    transform: translate3d(-3000px,0,0) scaleX(3)
  }
  60% {
    opacity: 1;
    transform: translate3d(25px,0,0) scaleX(1)
  }
  75% {
    transform: translate3d(-10px,0,0) scaleX(.98)
  }
  90% {
    transform: translate3d(5px,0,0) scaleX(.995)
  }
  to {
    transform: translate3d(0,0,0)
  }
}
.animate__bounceInLeft {
  animation-name: bounceInLeft
}
@keyframes bounceInRight {
  60%,
  75%,
  90%,
  from,
  to {
    animation-timing-function: cubic-bezier(.215,.61,.355,1)
  }
  from {
    opacity: 0;
    transform: translate3d(3000px,0,0) scaleX(3)
  }
  60% {
    opacity: 1;
    transform: translate3d(-25px,0,0) scaleX(1)
  }
  75% {
    transform: translate3d(10px,0,0) scaleX(.98)
  }
  90% {
    transform: translate3d(-5px,0,0) scaleX(.995)
  }
  to {
    transform: translate3d(0,0,0)
  }
}
.animate__bounceInRight {
  animation-name: bounceInRight
}
@keyframes bounceInUp {
  60%,
  75%,
  90%,
  from,
  to {
    animation-timing-function: cubic-bezier(.215,.61,.355,1)
  }
  from {
    opacity: 0;
    transform: translate3d(0,3000px,0) scaleY(5)
  }
  60% {
    opacity: 1;
    transform: translate3d(0,-20px,0) scaleY(.9)
  }
  75% {
    transform: translate3d(0,10px,0) scaleY(.95)
  }
  90% {
    transform: translate3d(0,-5px,0) scaleY(.985)
  }
  to {
    transform: translate3d(0,0,0)
  }
}
.animate__bounceInUp {
  animation-name: bounceInUp
}
@keyframes bounceOut {
  20% {
    transform: scale3d(.9,.9,.9)
  }
  50%,
  55% {
    opacity: 1;
    transform: scale3d(1.1,1.1,1.1)
  }
  to {
    opacity: 0;
    transform: scale3d(.3,.3,.3)
  }
}
.animate__bounceOut {
  animation-duration: calc(1s * .75);
  animation-duration: calc(var(--animate-duration) * .75);
  animation-name: bounceOut
}
@keyframes bounceOutDown {
  20% {
    transform: translate3d(0,10px,0) scaleY(.985)
  }
  40%,
  45% {
    opacity: 1;
    transform: translate3d(0,-20px,0) scaleY(.9)
  }
  to {
    opacity: 0;
    transform: translate3d(0,2000px,0) scaleY(3)
  }
}
.animate__bounceOutDown {
  animation-name: bounceOutDown
}
@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    transform: translate3d(20px,0,0) scaleX(.9)
  }
  to {
    opacity: 0;
    transform: translate3d(-2000px,0,0) scaleX(2)
  }
}
.animate__bounceOutLeft {
  animation-name: bounceOutLeft
}
@keyframes bounceOutRight {
  20% {
    opacity: 1;
    transform: translate3d(-20px,0,0) scaleX(.9)
  }
  to {
    opacity: 0;
    transform: translate3d(2000px,0,0) scaleX(2)
  }
}
.animate__bounceOutRight {
  animation-name: bounceOutRight
}
@keyframes bounceOutUp {
  20% {
    transform: translate3d(0,-10px,0) scaleY(.985)
  }
  40%,
  45% {
    opacity: 1;
    transform: translate3d(0,20px,0) scaleY(.9)
  }
  to {
    opacity: 0;
    transform: translate3d(0,-2000px,0) scaleY(3)
  }
}
.animate__bounceOutUp {
  animation-name: bounceOutUp
}
@keyframes fadeIn {
  from {
    opacity: 0
  }
  to {
    opacity: 1
  }
}
.animate__fadeIn {
  animation-name: fadeIn
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0,-100%,0)
  }
  to {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
}
.animate__fadeInDown {
  animation-name: fadeInDown
}
@keyframes fadeInDownBig {
  from {
    opacity: 0;
    transform: translate3d(0,-2000px,0)
  }
  to {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
}
.animate__fadeInDownBig {
  animation-name: fadeInDownBig
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-100%,0,0)
  }
  to {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
}
.animate__fadeInLeft {
  animation-name: fadeInLeft
}
@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    transform: translate3d(-2000px,0,0)
  }
  to {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
}
.animate__fadeInLeftBig {
  animation-name: fadeInLeftBig
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translate3d(100%,0,0)
  }
  to {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
}
.animate__fadeInRight {
  animation-name: fadeInRight
}
@keyframes fadeInRightBig {
  from {
    opacity: 0;
    transform: translate3d(2000px,0,0)
  }
  to {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
}
.animate__fadeInRightBig {
  animation-name: fadeInRightBig
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0,100%,0)
  }
  to {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
}
.animate__fadeInUp {
  animation-name: fadeInUp
}
@keyframes fadeInUpBig {
  from {
    opacity: 0;
    transform: translate3d(0,2000px,0)
  }
  to {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
}
.animate__fadeInUpBig {
  animation-name: fadeInUpBig
}
@keyframes fadeInTopLeft {
  from {
    opacity: 0;
    transform: translate3d(-100%,-100%,0)
  }
  to {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
}
.animate__fadeInTopLeft {
  animation-name: fadeInTopLeft
}
@keyframes fadeInTopRight {
  from {
    opacity: 0;
    transform: translate3d(100%,-100%,0)
  }
  to {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
}
.animate__fadeInTopRight {
  animation-name: fadeInTopRight
}
@keyframes fadeInBottomLeft {
  from {
    opacity: 0;
    transform: translate3d(-100%,100%,0)
  }
  to {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
}
.animate__fadeInBottomLeft {
  animation-name: fadeInBottomLeft
}
@keyframes fadeInBottomRight {
  from {
    opacity: 0;
    transform: translate3d(100%,100%,0)
  }
  to {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
}
.animate__fadeInBottomRight {
  animation-name: fadeInBottomRight
}
@keyframes fadeOut {
  from {
    opacity: 1
  }
  to {
    opacity: 0
  }
}
.animate__fadeOut {
  animation-name: fadeOut
}
@keyframes fadeOutDown {
  from {
    opacity: 1
  }
  to {
    opacity: 0;
    transform: translate3d(0,100%,0)
  }
}
.animate__fadeOutDown {
  animation-name: fadeOutDown
}
@keyframes fadeOutDownBig {
  from {
    opacity: 1
  }
  to {
    opacity: 0;
    transform: translate3d(0,2000px,0)
  }
}
.animate__fadeOutDownBig {
  animation-name: fadeOutDownBig
}
@keyframes fadeOutLeft {
  from {
    opacity: 1
  }
  to {
    opacity: 0;
    transform: translate3d(-100%,0,0)
  }
}
.animate__fadeOutLeft {
  animation-name: fadeOutLeft
}
@keyframes fadeOutLeftBig {
  from {
    opacity: 1
  }
  to {
    opacity: 0;
    transform: translate3d(-2000px,0,0)
  }
}
.animate__fadeOutLeftBig {
  animation-name: fadeOutLeftBig
}
@keyframes fadeOutRight {
  from {
    opacity: 1
  }
  to {
    opacity: 0;
    transform: translate3d(100%,0,0)
  }
}
.animate__fadeOutRight {
  animation-name: fadeOutRight
}
@keyframes fadeOutRightBig {
  from {
    opacity: 1
  }
  to {
    opacity: 0;
    transform: translate3d(2000px,0,0)
  }
}
.animate__fadeOutRightBig {
  animation-name: fadeOutRightBig
}
@keyframes fadeOutUp {
  from {
    opacity: 1
  }
  to {
    opacity: 0;
    transform: translate3d(0,-100%,0)
  }
}
.animate__fadeOutUp {
  animation-name: fadeOutUp
}
@keyframes fadeOutUpBig {
  from {
    opacity: 1
  }
  to {
    opacity: 0;
    transform: translate3d(0,-2000px,0)
  }
}
.animate__fadeOutUpBig {
  animation-name: fadeOutUpBig
}
@keyframes fadeOutTopLeft {
  from {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
  to {
    opacity: 0;
    transform: translate3d(-100%,-100%,0)
  }
}
.animate__fadeOutTopLeft {
  animation-name: fadeOutTopLeft
}
@keyframes fadeOutTopRight {
  from {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
  to {
    opacity: 0;
    transform: translate3d(100%,-100%,0)
  }
}
.animate__fadeOutTopRight {
  animation-name: fadeOutTopRight
}
@keyframes fadeOutBottomRight {
  from {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
  to {
    opacity: 0;
    transform: translate3d(100%,100%,0)
  }
}
.animate__fadeOutBottomRight {
  animation-name: fadeOutBottomRight
}
@keyframes fadeOutBottomLeft {
  from {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
  to {
    opacity: 0;
    transform: translate3d(-100%,100%,0)
  }
}
.animate__fadeOutBottomLeft {
  animation-name: fadeOutBottomLeft
}
@keyframes flip {
  from {
    transform: perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,-360deg);
    animation-timing-function: ease-out
  }
  40% {
    transform: perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-190deg);
    animation-timing-function: ease-out
  }
  50% {
    transform: perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-170deg);
    animation-timing-function: ease-in
  }
  80% {
    transform: perspective(400px) scale3d(.95,.95,.95) translate3d(0,0,0) rotate3d(0,1,0,0deg);
    animation-timing-function: ease-in
  }
  to {
    transform: perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,0deg);
    animation-timing-function: ease-in
  }
}
.animate__animated.animate__flip {
  backface-visibility: visible;
  animation-name: flip
}
@keyframes flipInX {
  from {
    transform: perspective(400px) rotate3d(1,0,0,90deg);
    animation-timing-function: ease-in;
    opacity: 0
  }
  40% {
    transform: perspective(400px) rotate3d(1,0,0,-20deg);
    animation-timing-function: ease-in
  }
  60% {
    transform: perspective(400px) rotate3d(1,0,0,10deg);
    opacity: 1
  }
  80% {
    transform: perspective(400px) rotate3d(1,0,0,-5deg)
  }
  to {
    transform: perspective(400px)
  }
}
.animate__flipInX {
  backface-visibility: visible!important;
  animation-name: flipInX
}
@keyframes flipInY {
  from {
    transform: perspective(400px) rotate3d(0,1,0,90deg);
    animation-timing-function: ease-in;
    opacity: 0
  }
  40% {
    transform: perspective(400px) rotate3d(0,1,0,-20deg);
    animation-timing-function: ease-in
  }
  60% {
    transform: perspective(400px) rotate3d(0,1,0,10deg);
    opacity: 1
  }
  80% {
    transform: perspective(400px) rotate3d(0,1,0,-5deg)
  }
  to {
    transform: perspective(400px)
  }
}
.animate__flipInY {
  backface-visibility: visible!important;
  animation-name: flipInY
}
@keyframes flipOutX {
  from {
    transform: perspective(400px)
  }
  30% {
    transform: perspective(400px) rotate3d(1,0,0,-20deg);
    opacity: 1
  }
  to {
    transform: perspective(400px) rotate3d(1,0,0,90deg);
    opacity: 0
  }
}
.animate__flipOutX {
  animation-duration: calc(1s * .75);
  animation-duration: calc(var(--animate-duration) * .75);
  animation-name: flipOutX;
  backface-visibility: visible!important
}
@keyframes flipOutY {
  from {
    transform: perspective(400px)
  }
  30% {
    transform: perspective(400px) rotate3d(0,1,0,-15deg);
    opacity: 1
  }
  to {
    transform: perspective(400px) rotate3d(0,1,0,90deg);
    opacity: 0
  }
}
.animate__flipOutY {
  animation-duration: calc(1s * .75);
  animation-duration: calc(var(--animate-duration) * .75);
  backface-visibility: visible!important;
  animation-name: flipOutY
}
@keyframes lightSpeedInRight {
  from {
    transform: translate3d(100%,0,0) skewX(-30deg);
    opacity: 0
  }
  60% {
    transform: skewX(20deg);
    opacity: 1
  }
  80% {
    transform: skewX(-5deg)
  }
  to {
    transform: translate3d(0,0,0)
  }
}
.animate__lightSpeedInRight {
  animation-name: lightSpeedInRight;
  animation-timing-function: ease-out
}
@keyframes lightSpeedInLeft {
  from {
    transform: translate3d(-100%,0,0) skewX(30deg);
    opacity: 0
  }
  60% {
    transform: skewX(-20deg);
    opacity: 1
  }
  80% {
    transform: skewX(5deg)
  }
  to {
    transform: translate3d(0,0,0)
  }
}
.animate__lightSpeedInLeft {
  animation-name: lightSpeedInLeft;
  animation-timing-function: ease-out
}
@keyframes lightSpeedOutRight {
  from {
    opacity: 1
  }
  to {
    transform: translate3d(100%,0,0) skewX(30deg);
    opacity: 0
  }
}
.animate__lightSpeedOutRight {
  animation-name: lightSpeedOutRight;
  animation-timing-function: ease-in
}
@keyframes lightSpeedOutLeft {
  from {
    opacity: 1
  }
  to {
    transform: translate3d(-100%,0,0) skewX(-30deg);
    opacity: 0
  }
}
.animate__lightSpeedOutLeft {
  animation-name: lightSpeedOutLeft;
  animation-timing-function: ease-in
}
@keyframes rotateIn {
  from {
    transform: rotate3d(0,0,1,-200deg);
    opacity: 0
  }
  to {
    transform: translate3d(0,0,0);
    opacity: 1
  }
}
.animate__rotateIn {
  animation-name: rotateIn;
  transform-origin: center
}
@keyframes rotateInDownLeft {
  from {
    transform: rotate3d(0,0,1,-45deg);
    opacity: 0
  }
  to {
    transform: translate3d(0,0,0);
    opacity: 1
  }
}
.animate__rotateInDownLeft {
  animation-name: rotateInDownLeft;
  transform-origin: left bottom
}
@keyframes rotateInDownRight {
  from {
    transform: rotate3d(0,0,1,45deg);
    opacity: 0
  }
  to {
    transform: translate3d(0,0,0);
    opacity: 1
  }
}
.animate__rotateInDownRight {
  animation-name: rotateInDownRight;
  transform-origin: right bottom
}
@keyframes rotateInUpLeft {
  from {
    transform: rotate3d(0,0,1,45deg);
    opacity: 0
  }
  to {
    transform: translate3d(0,0,0);
    opacity: 1
  }
}
.animate__rotateInUpLeft {
  animation-name: rotateInUpLeft;
  transform-origin: left bottom
}
@keyframes rotateInUpRight {
  from {
    transform: rotate3d(0,0,1,-90deg);
    opacity: 0
  }
  to {
    transform: translate3d(0,0,0);
    opacity: 1
  }
}
.animate__rotateInUpRight {
  animation-name: rotateInUpRight;
  transform-origin: right bottom
}
@keyframes rotateOut {
  from {
    opacity: 1
  }
  to {
    transform: rotate3d(0,0,1,200deg);
    opacity: 0
  }
}
.animate__rotateOut {
  animation-name: rotateOut;
  transform-origin: center
}
@keyframes rotateOutDownLeft {
  from {
    opacity: 1
  }
  to {
    transform: rotate3d(0,0,1,45deg);
    opacity: 0
  }
}
.animate__rotateOutDownLeft {
  animation-name: rotateOutDownLeft;
  transform-origin: left bottom
}
@keyframes rotateOutDownRight {
  from {
    opacity: 1
  }
  to {
    transform: rotate3d(0,0,1,-45deg);
    opacity: 0
  }
}
.animate__rotateOutDownRight {
  animation-name: rotateOutDownRight;
  transform-origin: right bottom
}
@keyframes rotateOutUpLeft {
  from {
    opacity: 1
  }
  to {
    transform: rotate3d(0,0,1,-45deg);
    opacity: 0
  }
}
.animate__rotateOutUpLeft {
  animation-name: rotateOutUpLeft;
  transform-origin: left bottom
}
@keyframes rotateOutUpRight {
  from {
    opacity: 1
  }
  to {
    transform: rotate3d(0,0,1,90deg);
    opacity: 0
  }
}
.animate__rotateOutUpRight {
  animation-name: rotateOutUpRight;
  transform-origin: right bottom
}
@keyframes hinge {
  0% {
    animation-timing-function: ease-in-out
  }
  20%,
  60% {
    transform: rotate3d(0,0,1,80deg);
    animation-timing-function: ease-in-out
  }
  40%,
  80% {
    transform: rotate3d(0,0,1,60deg);
    animation-timing-function: ease-in-out;
    opacity: 1
  }
  to {
    transform: translate3d(0,700px,0);
    opacity: 0
  }
}
.animate__hinge {
  animation-duration: calc(1s * 2);
  animation-duration: calc(var(--animate-duration) * 2);
  animation-name: hinge;
  transform-origin: top left
}
@keyframes jackInTheBox {
  from {
    opacity: 0;
    transform: scale(.1) rotate(30deg);
    transform-origin: center bottom
  }
  50% {
    transform: rotate(-10deg)
  }
  70% {
    transform: rotate(3deg)
  }
  to {
    opacity: 1;
    transform: scale(1)
  }
}
.animate__jackInTheBox {
  animation-name: jackInTheBox
}
@keyframes rollIn {
  from {
    opacity: 0;
    transform: translate3d(-100%,0,0) rotate3d(0,0,1,-120deg)
  }
  to {
    opacity: 1;
    transform: translate3d(0,0,0)
  }
}
.animate__rollIn {
  animation-name: rollIn
}
@keyframes rollOut {
  from {
    opacity: 1
  }
  to {
    opacity: 0;
    transform: translate3d(100%,0,0) rotate3d(0,0,1,120deg)
  }
}
.animate__rollOut {
  animation-name: rollOut
}
@keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale3d(.3,.3,.3)
  }
  50% {
    opacity: 1
  }
}
.animate__zoomIn {
  animation-name: zoomIn
}
@keyframes zoomInDown {
  from {
    opacity: 0;
    transform: scale3d(.1,.1,.1) translate3d(0,-1000px,0);
    animation-timing-function: cubic-bezier(.55,.055,.675,.19)
  }
  60% {
    opacity: 1;
    transform: scale3d(.475,.475,.475) translate3d(0,60px,0);
    animation-timing-function: cubic-bezier(.175,.885,.32,1)
  }
}
.animate__zoomInDown {
  animation-name: zoomInDown
}
@keyframes zoomInLeft {
  from {
    opacity: 0;
    transform: scale3d(.1,.1,.1) translate3d(-1000px,0,0);
    animation-timing-function: cubic-bezier(.55,.055,.675,.19)
  }
  60% {
    opacity: 1;
    transform: scale3d(.475,.475,.475) translate3d(10px,0,0);
    animation-timing-function: cubic-bezier(.175,.885,.32,1)
  }
}
.animate__zoomInLeft {
  animation-name: zoomInLeft
}
@keyframes zoomInRight {
  from {
    opacity: 0;
    transform: scale3d(.1,.1,.1) translate3d(1000px,0,0);
    animation-timing-function: cubic-bezier(.55,.055,.675,.19)
  }
  60% {
    opacity: 1;
    transform: scale3d(.475,.475,.475) translate3d(-10px,0,0);
    animation-timing-function: cubic-bezier(.175,.885,.32,1)
  }
}
.animate__zoomInRight {
  animation-name: zoomInRight
}
@keyframes zoomInUp {
  from {
    opacity: 0;
    transform: scale3d(.1,.1,.1) translate3d(0,1000px,0);
    animation-timing-function: cubic-bezier(.55,.055,.675,.19)
  }
  60% {
    opacity: 1;
    transform: scale3d(.475,.475,.475) translate3d(0,-60px,0);
    animation-timing-function: cubic-bezier(.175,.885,.32,1)
  }
}
.animate__zoomInUp {
  animation-name: zoomInUp
}
@keyframes zoomOut {
  from {
    opacity: 1
  }
  50% {
    opacity: 0;
    transform: scale3d(.3,.3,.3)
  }
  to {
    opacity: 0
  }
}
.animate__zoomOut {
  animation-name: zoomOut
}
@keyframes zoomOutDown {
  40% {
    opacity: 1;
    transform: scale3d(.475,.475,.475) translate3d(0,-60px,0);
    animation-timing-function: cubic-bezier(.55,.055,.675,.19)
  }
  to {
    opacity: 0;
    transform: scale3d(.1,.1,.1) translate3d(0,2000px,0);
    animation-timing-function: cubic-bezier(.175,.885,.32,1)
  }
}
.animate__zoomOutDown {
  animation-name: zoomOutDown;
  transform-origin: center bottom
}
@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    transform: scale3d(.475,.475,.475) translate3d(42px,0,0)
  }
  to {
    opacity: 0;
    transform: scale(.1) translate3d(-2000px,0,0)
  }
}
.animate__zoomOutLeft {
  animation-name: zoomOutLeft;
  transform-origin: left center
}
@keyframes zoomOutRight {
  40% {
    opacity: 1;
    transform: scale3d(.475,.475,.475) translate3d(-42px,0,0)
  }
  to {
    opacity: 0;
    transform: scale(.1) translate3d(2000px,0,0)
  }
}
.animate__zoomOutRight {
  animation-name: zoomOutRight;
  transform-origin: right center
}
@keyframes zoomOutUp {
  40% {
    opacity: 1;
    transform: scale3d(.475,.475,.475) translate3d(0,60px,0);
    animation-timing-function: cubic-bezier(.55,.055,.675,.19)
  }
  to {
    opacity: 0;
    transform: scale3d(.1,.1,.1) translate3d(0,-2000px,0);
    animation-timing-function: cubic-bezier(.175,.885,.32,1)
  }
}
.animate__zoomOutUp {
  animation-name: zoomOutUp;
  transform-origin: center bottom
}
@keyframes slideInDown {
  from {
    transform: translate3d(0,-100%,0);
    visibility: visible
  }
  to {
    transform: translate3d(0,0,0)
  }
}
.animate__slideInDown {
  animation-name: slideInDown
}
@keyframes slideInLeft {
  from {
    transform: translate3d(-100%,0,0);
    visibility: visible
  }
  to {
    transform: translate3d(0,0,0)
  }
}
.animate__slideInLeft {
  animation-name: slideInLeft
}
@keyframes slideInRight {
  from {
    transform: translate3d(100%,0,0);
    visibility: visible
  }
  to {
    transform: translate3d(0,0,0)
  }
}
.animate__slideInRight {
  animation-name: slideInRight
}
@keyframes slideInUp {
  from {
    transform: translate3d(0,100%,0);
    visibility: visible
  }
  to {
    transform: translate3d(0,0,0)
  }
}
.animate__slideInUp {
  animation-name: slideInUp
}
@keyframes slideOutDown {
  from {
    transform: translate3d(0,0,0)
  }
  to {
    visibility: hidden;
    transform: translate3d(0,100%,0)
  }
}
.animate__slideOutDown {
  animation-name: slideOutDown
}
@keyframes slideOutLeft {
  from {
    transform: translate3d(0,0,0)
  }
  to {
    visibility: hidden;
    transform: translate3d(-100%,0,0)
  }
}
.animate__slideOutLeft {
  animation-name: slideOutLeft
}
@keyframes slideOutRight {
  from {
    transform: translate3d(0,0,0)
  }
  to {
    visibility: hidden;
    transform: translate3d(100%,0,0)
  }
}
.animate__slideOutRight {
  animation-name: slideOutRight
}
@keyframes slideOutUp {
  from {
    transform: translate3d(0,0,0)
  }
  to {
    visibility: hidden;
    transform: translate3d(0,-100%,0)
  }
}
.animate__slideOutUp {
  animation-name: slideOutUp
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: italic;
  font-weight: 100;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64RgL5Xk.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: italic;
  font-weight: 200;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64ZgK5Xk.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64UYK5Xk.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64RgK5Xk.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64SoK5Xk.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64cYN5Xk.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64f8N5Xk.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: italic;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64ZgN5Xk.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: italic;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVW2ZhZI2eCN5jzbjEETS9weq8-19ehAyvMum7nfDB64bEN5Xk.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyo_BJ.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyUyovBJ.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyXsovBJ.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyovBJ.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWAovBJ.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyVspfBJ.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyVVpfBJ.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyUypfBJ.ttf) format('truetype')
}
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v31/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyUbpfBJ.ttf) format('truetype')
}
@font-face {
  font-family: 'Sawarabi Mincho';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/sawarabimincho/v20/8QIRdiDaitzr7brc8ahpxt6GcIJTLQ.ttf) format('truetype')
}
abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
canvas,
caption,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
ul,
var,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  background: 0 0
}
*,
:after,
:before {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box
}
body {
  line-height: 1
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block
}
.multi-Map {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden
}
.multi-Map embed,
.multi-Map iframe,
.multi-Map object {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}
strong {
  color: #eb6202
}
nav ul {
  list-style: none
}
blockquote,
q {
  quotes: none
}
blockquote:after,
blockquote:before,
q:after,
q:before {
  content: "";
  content: none
}
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: 0 0
}
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none
}
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: 700
}
del {
  text-decoration: line-through
}
abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help
}
table {
  border-collapse: collapse;
  border-spacing: 0
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 2em 0;
  padding: 0
}
input,
select {
  vertical-align: middle
}
body {
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;
  line-height: 1.6
}
@media screen and (max-width:736px) {
  html {
    font-size: 56.25%
  }
  body {
    font-size: 16px
  }
}
button,
input,
select,
textarea {
  font: 99% arial,helvetica,clean,sans-serif
}
button,
input,
select,
textarea {
  font-family: "游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif
}
table {
  font-size: inherit;
  font: 100%
}
code,
kbd,
pre,
samp,
tt {
  font-family: monospace;
  line-height: 100%
}
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%
}
body {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
td,
th {
  max-height: 999999px
}
h1 {
  font-size: 28px;
  font-size: 2.8rem;
  margin: 0 0 20px;
  margin: 0 0 .6em
}
h2 {
  font-size: 24px;
  font-size: 2.4rem;
  margin: 0 0 15px;
  margin: 0 0 .6em
}
h3 {
  font-size: 20px;
  font-size: 2rem;
  margin: 0 0 10px;
  margin: 0 0 .5em
}
h4 {
  font-size: 18px;
  font-size: 1.8rem;
  margin: 0 0 5px;
  margin: 0 0 .3em
}
h5 {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 0 5px;
  margin: 0 0 .3em
}
h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.2;
  font-feature-settings: "palt"
}
h1,
h2,
h3,
h4,
h5,
h6,
strong {
  font-weight: 700
}
p {
  line-height: 1.6
}
abbr,
acronym {
  border-bottom: 1px dotted #000;
  cursor: help
}
em {
  font-style: italic
}
fieldset,
p,
pre,
table {
  font-size: 100%;
  margin-bottom: 1.2em
}
img {
  vertical-align: bottom
}
blockquote {
  background-color: #f0f0f0;
  margin-bottom: 1.5em;
  margin-left: 2em;
  margin-right: 2em;
  padding: 1em;
  border: solid 1px #acacac;
  display: block;
  font-style: italic
}
pre {
  background-color: #f9fffd;
  margin-bottom: 1em;
  margin-left: 1em;
  padding: 5px;
  border: solid 1px #acacac;
  display: block
}
ol,
ul {
  margin-left: 1em;
  margin-bottom: 1.2em
}
ol {
  list-style: decimal outside
}
ul {
  list-style-type: disc
}
ul li {
  margin: 0;
  padding: 0
}
ol li {
  margin: 0;
  padding: 0
}
li ol,
li ul {
  margin-left: 0;
  padding-top: .3em;
  padding-bottom: .2em;
  margin: 0 0 0 2em
}
ul.no-dots {
  list-style: none;
  margin-left: 1em
}
.txt-icon {
  padding-left: 2.5rem;
  padding-left: 1.8em;
  position: relative
}
.txt-icon:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.7em;
  width: 1.4em;
  height: 1.4em;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center center
}
.icon-home:after {
  background-image: url(../img/def/css/svg/home.svg)
}
.icon-arrow:after {
  background-image: url(../img/def/css/svg/circle-right.svg)
}
.icon-arrow-rev:after {
  background-image: url(../img/def/css/svg/circle-right.svg)
}
.icon-arrow-up:after {
  background-image: url(../img/def/css/svg/circle-up.svg)
}
.icon-arrow-down:after {
  background-image: url(../img/def/css/svg/circle-down.svg)
}
.icon-pdf:after {
  background-image: url(../img/def/css/svg/file-pdf.svg)
}
.icon-word:after {
  background-image: url(../img/def/css/svg/file-word.svg)
}
.icon-excel:after {
  background-image: url(../img/def/css/svg/file-excel.svg)
}
.icon-zip:after {
  background-image: url(../img/def/css/svg/file-zip.svg)
}
.icon-down:after {
  background-image: url(../img/def/css/svg/download.svg)
}
.icon-image:after {
  background-image: url(../img/def/css/svg/image.svg)
}
.icon-page:after {
  background-image: url(../img/def/css/svg/page.svg)
}
.icon-feed:after {
  background-image: url(../img/def/css/svg/feed.svg)
}
.icon-facebook:after {
  background-image: url(../img/def/css/svg/facebook.svg)
}
.icon-twitter:after {
  background-image: url(../img/def/css/svg/twitter.svg)
}
.icon-youtube:after {
  background-image: url(../img/def/css/svg/youtube.svg)
}
.atten {
  color: #e9838f
}
.green {
  color: #0f660a
}
.blue {
  color: #1369af
}
.orange {
  color: #f90
}
.font-nomal {
  color: #505050;
  font-size: 12px;
  font-weight: 400
}
.font-xsmall {
  font-size: 1rem;
  font-weight: 400
}
.fs26px {
  font-size: 26px;
  font-size: 2.6rem
}
.fs24px {
  font-size: 24px;
  font-size: 2.4rem
}
.fs22px {
  font-size: 22px;
  font-size: 2.2rem
}
.fs21px {
  font-size: 21px;
  font-size: 2.1rem
}
.fs30px {
  font-size: 30px;
  font-size: 3rem
}
.fs20px {
  font-size: 20px;
  font-size: 2rem
}
.fs18px {
  font-size: 18px
}
.fs16px {
  font-size: 16px
}
.fs14px {
  font-size: 14px
}
.fs12px {
  font-size: 12px
}
.fs10px {
  font-size: 10px
}
.clf {
  clear: both
}
.mg-bot,
p.mg-bot,
ul.mg-bot {
  margin-bottom: 3em
}
.nmg,
p.nmg,
ul.nmg {
  margin-bottom: 0
}
.txt-center {
  text-align: center
}
.txt-right {
  text-align: right
}
.right-float {
  float: right;
  margin-bottom: 10px;
  margin-left: 15px
}
.left-float {
  float: left;
  margin-right: 15px;
  margin-bottom: 10px
}
.sp-only {
  display: none
}
.pc-only {
  display: inline
}
.sp-only-block {
  display: none
}
.pc-only-block {
  display: block
}
@media screen and (max-width:736px) {
  .sp-only {
    display: inline
  }
  .pc-only {
    display: none
  }
  .sp-only-block {
    display: block
  }
  .pc-only-block {
    display: none
  }
}
.view_thumb_left {
  float: left
}
.view_thumb_right {
  float: right
}
.left {
  float: left
}
.right {
  float: right
}
.half .view_thumb_left,
.half .view_thumb_right {
  width: 49%
}
.half50 .view_thumb_left,
.half50 .view_thumb_right {
  width: 50%
}
.type_block {
  position: relative;
  width: 740px
}
.type_info_left {
  float: left;
  width: 210px
}
.type_info_right {
  float: right;
  width: 500px
}
.pl .view_thumb_left {
  width: 100%
}
.pleate_left {
  float: left;
  width: 180px
}
.pleate_right {
  float: right;
  width: 820px
}
.br_block {
  display: block
}
@media screen and (max-width:736px) {
  .br_block {
    display: inline
  }
  .type_info_left,
  .type_info_right {
    width: 100%;
    float: none
  }
  .half .view_thumb_left,
  .half .view_thumb_right {
    width: 100%;
    float: none
  }
  .pl .view_thumb_left {
    width: 100%;
    float: none
  }
  .pl .view_thumb_right {
    width: 100%;
    float: none
  }
  .pleate_left {
    width: 100%;
    float: none
  }
  .pleate_right {
    width: 100%;
    float: none
  }
  .info_half .view_thumb_left {
    width: 100%;
    float: none
  }
  .info_half .view_thumb_right {
    width: 100%;
    float: none
  }
}
.clf:after,
.clf:before {
  content: "";
  display: table
}
.clf:after {
  clear: both
}
.clf {
  zoom: 1
}
@media (max-width:750px) {
  .pc,
  .tablet {
    display: none!important
  }
}
@media (min-width:751px) {
  .sp,
  .tablet {
    display: none!important
  }
}
@media (min-width:751px) and (max-width:999px) {
  .pc,
  .sp {
    display: none
  }
}
.nowrap {
  white-space: nowrap
}
.hide {
  display: none
}
.noto-light {
  font-family: "Noto Sans JP",sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal
}
.noto-regular {
  font-family: "Noto Sans JP",sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal
}
.noto-medium {
  font-family: "Noto Sans JP",sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal
}
[lang=zh-hant] .noto-light {
  font-family: "Noto Sans TC",sans-serif
}
[lang=zh-hant] .noto-regular {
  font-family: "Noto Sans TC",sans-serif
}
[lang=zh-hant] .noto-medium {
  font-family: "Noto Sans TC",sans-serif
}
[lang=en] .noto-light {
  font-family: "Noto Sans",sans-serif
}
[lang=en] .noto-regular {
  font-family: "Noto Sans",sans-serif
}
[lang=en] .noto-medium {
  font-family: "Noto Sans",sans-serif
}
body {
  overflow-x: hidden;
  height: -moz-fit-content;
  height: fit-content
}
img,
picture {
  max-width: 100%
}
.outer {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center
}
.inner {
  width: 100%;
  max-width: 810px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  position: relative
}
@media (max-width:750px) {
  .inner {
    max-width: 95%;
    margin-left: auto;
    margin-right: auto
  }
}
.inner > div {
  width: 100%
}
.mt10 {
  margin-top: 10px
}
.mt30 {
  margin-top: 30px
}
.mt60 {
  margin-top: 60px
}
.mb0 {
  margin-bottom: 0
}
.mb60 {
  margin-bottom: 60px
}
.mb10 {
  margin-bottom: 10px
}
.mb30 {
  margin-bottom: 30px
}
.mb120 {
  margin-bottom: 120px
}
.text-center {
  text-align: center;
  margin-left: auto;
  margin-right: auto
}
.text-right {
  text-align: right
}
a.btn {
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
  display: flex;
  gap: 10px;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  border: 1px solid #21357f;
  border-radius: 10px;
  color: #000;
  text-decoration: none;
  transition: all .3s ease;
  padding: 10px 20px
}
a.btn:after {
  content: "＞"
}
a.btn:hover {
  background-color: #21357f;
  color: #fff
}
.info-box {
  padding: 20px;
  background-color: #d1daf5;
  border-radius: 20px;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 20px;
  width: 100%
}
.info-box.green {
  background-color: #ebf5dd
}
.info-box.yellow {
  background-color: #fff5d1
}
.info-box:before {
  content: "";
  height: 50px;
  width: 50px;
  flex-shrink: 0;
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2052.7%2052.7%22%3E%0A%20%20%3Cdefs%3E%0A%20%20%20%20%3Cstyle%3E%0A%20%20%20%20%20%20.cls-1%20%7B%0A%20%20%20%20%20%20%20%20fill%3A%20%23fff%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20.cls-2%20%7B%0A%20%20%20%20%20%20%20%20fill%3A%20%23d1daf5%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%3C%2Fstyle%3E%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Ccircle%20class%3D%22cls-1%22%20cx%3D%2226.35%22%20cy%3D%2226.35%22%20r%3D%2226.35%22%2F%3E%0A%20%20%3Cpath%20class%3D%22cls-2%22%20d%3D%22M29.09%2C18h-5.34v-4.4h5.34v4.4ZM28.91%2C39.16h-4.99v-18.81h4.99v18.81Z%22%2F%3E%0A%3C%2Fsvg%3E");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat
}
.info-box .info-box-inner strong {
  color: #1d357f;
  font-size: 1.2rem
}
@media (max-width:750px) {
  .info-box .info-box-inner strong {
    font-size: 1.8rem
  }
}
.info-box .info-box-inner p {
  margin: 0
}
@media (max-width:750px) {
  .info-box .info-box-inner p {
    font-size: .9em
  }
}
@media (max-width:750px) {
  table.data-table {
    width: auto
  }
}
@media (max-width:750px) {
  table.data-table tr {
    display: flex;
    flex-direction: column
  }
}
table.data-table tr td,
table.data-table tr th {
  padding: 5px 10px;
  border: 1px solid #ccc;
  border-collapse: collapse
}
table.data-table tr th {
  text-align: left;
  padding-right: 10px
}
table.yaima-table {
  width: 100%;
  border-top: 1px solid #22357f;
  flex-shrink: 0
}
@media (max-width:750px) {
  table.yaima-table tbody {
    padding-left: 5px;
    padding-right: 5px
  }
}
table.yaima-table tr {
  border-bottom: 1px solid #22357f
}
@media (max-width:750px) {
  table.yaima-table tr {
    display: flex;
    flex-direction: column
  }
}
table.yaima-table tr > th {
  font-size: 1.05rem;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 10px;
  width: -moz-fit-content;
  width: fit-content;
  vertical-align: top;
  font-weight: 400;
  text-align: left;
  text-indent: 1em;
  white-space: nowrap
}
@media (max-width:750px) {
  table.yaima-table tr > th {
    text-indent: 0;
    padding: 5px;
    padding-bottom: 0
  }
}
table.yaima-table tr > th:before {
  content: "■";
  color: rgba(34,53,127,.3);
  display: inline-block;
  margin-right: .5rem;
  text-indent: 0
}
@media (max-width:750px) {
  table.yaima-table tr > th {
    font-size: 1.8rem
  }
}
table.yaima-table tr > td {
  font-size: 1.05rem;
  padding-top: 10px;
  padding-bottom: 10px;
  width: auto;
  text-align: left
}
@media (max-width:750px) {
  table.yaima-table tr > td {
    padding: 5px;
    padding-top: 0
  }
}
table.yaima-table tr > td > p {
  margin: 0;
  padding: 0
}
@media (max-width:750px) {
  table.yaima-table tr > td {
    font-size: 1.8rem
  }
}
.visually-hidden {
  display: none
}
a.zoom-ready {
  position: relative
}
a.zoom-ready:after {
  content: "";
  position: absolute;
  bottom: 5px;
  right: 5px;
  width: 30px;
  height: 30px;
  background-image: url(zoom-in.png);
  background-size: 20px 20px;
  background-color: rgba(255,255,255,.75);
  border-radius: 30px;
  background-position: center;
  background-repeat: no-repeat
}
#toTop {
  position: fixed;
  z-index: 100;
  cursor: pointer;
  border-bottom: none
}
@media (min-width:751px) {
  #toTop {
    background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%0A%20%20%3Cdefs%3E%0A%20%20%20%20%3Cstyle%3E%0A%20%20%20%20%20%20.cls-1%20%7B%0A%20%20%20%20%20%20%20%20fill%3A%20%23fff%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20.cls-2%20%7B%0A%20%20%20%20%20%20%20%20fill%3A%20%2321357f%3B%0A%20%20%20%20%20%20%20%20opacity%3A%20.3%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%3C%2Fstyle%3E%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Ccircle%20class%3D%22cls-2%22%20cx%3D%2232%22%20cy%3D%2232%22%20r%3D%2232%22%2F%3E%0A%20%20%3Cpolygon%20class%3D%22cls-1%22%20points%3D%2232%2018.6%2020.31%2038.85%2043.69%2038.85%2032%2018.6%22%2F%3E%0A%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    width: 55px;
    height: 55px;
    bottom: 50px;
    right: 30px
  }
}
@media (max-width:750px) {
  #toTop {
    background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%3E%0A%20%20%3Cdefs%3E%0A%20%20%20%20%3Cstyle%3E%0A%20%20%20%20%20%20.cls-1%20%7B%0A%20%20%20%20%20%20%20%20fill%3A%20%23fff%3B%0A%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20.cls-2%20%7B%0A%20%20%20%20%20%20%20%20fill%3A%20%2321357f%3B%0A%20%20%20%20%20%20%20%20opacity%3A%20.3%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%3C%2Fstyle%3E%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Ccircle%20class%3D%22cls-2%22%20cx%3D%2232%22%20cy%3D%2232%22%20r%3D%2232%22%2F%3E%0A%20%20%3Cpolygon%20class%3D%22cls-1%22%20points%3D%2232%2018.6%2020.31%2038.85%2043.69%2038.85%2032%2018.6%22%2F%3E%0A%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    width: 60px;
    height: 60px;
    bottom: 70px;
    right: 20px
  }
}
p {
  text-align: justify
}
footer > .inner:before {
  content: none
}
footer #footer-logo {
  width: 100%;
  height: 200px;
  display: flex;
  justify-content: center;
  align-items: center
}
@media (max-width:750px) {
  footer #footer-logo {
    height: 100px
  }
}
footer #footer-logo > a {
  line-height: 1em;
  display: inline-block
}
footer #footer-logo > a > img {
  width: 300px;
  height: auto
}
dl {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  width: -moz-fit-content;
  width: fit-content
}
dl dt {
  font-weight: 700;
  width: 50%
}
dl dd {
  margin-left: 1em;
  width: 50%
}
ul.yaima-list {
  margin-left: 2em
}
[lang=en] .section-header {
  width: 100vw;
  height: 150px;
  background-size: cover;
  background-position: center center;
  -webkit-mask-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201200%201381.54%22%3E%0A%20%20%3Cpath%20d%3D%22M1200%2C1329.72s-270.56%2C51.82-602.02%2C51.82S0%2C1329.72%2C0%2C1329.72V0h1200v1329.72Z%22%2F%3E%0A%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201200%201381.54%22%3E%0A%20%20%3Cpath%20d%3D%22M1200%2C1329.72s-270.56%2C51.82-602.02%2C51.82S0%2C1329.72%2C0%2C1329.72V0h1200v1329.72Z%22%2F%3E%0A%3C%2Fsvg%3E");
  -webkit-mask-position: center bottom;
  mask-position: center bottom;
  -webkit-mask-size: cover;
  mask-size: cover;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 60px
}
[lang=en] .section-header > span {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 20px;
  background-color: rgba(0,153,255,.7);
  color: #fff;
  font-size: 1.5em;
  font-weight: 700;
  border-radius: 10px
}
@media (max-width:750px) {
  [lang=en] .section-header > span {
    font-size: 1.2em
  }
}
.faretable-wrapper,
.timetable-wrapper {
  position: relative;
  overflow: hidden
}
.faretable-wrapper .table-scroll-wrapper,
.timetable-wrapper .table-scroll-wrapper {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  position: relative
}
.faretable-wrapper .table-scroll-wrapper table,
.timetable-wrapper .table-scroll-wrapper table {
  width: 100%;
  border-collapse: collapse;
  min-width: 600px
}
.faretable-wrapper .table-scroll-wrapper table td,
.faretable-wrapper .table-scroll-wrapper table th,
.timetable-wrapper .table-scroll-wrapper table td,
.timetable-wrapper .table-scroll-wrapper table th {
  border: 1px solid #ccc;
  padding: 10px;
  text-align: center
}
.faretable-wrapper .table-scroll-wrapper table th,
.timetable-wrapper .table-scroll-wrapper table th {
  background-color: #e5e5e5;
  font-weight: 700
}
.faretable-wrapper .table-scroll-wrapper table tr:nth-child(even),
.timetable-wrapper .table-scroll-wrapper table tr:nth-child(even) {
  background-color: #f9f9f9
}
.faretable-wrapper .table-scroll-wrapper table .arrow-left,
.faretable-wrapper .table-scroll-wrapper table .arrow-right,
.faretable-wrapper .table-scroll-wrapper table td,
.faretable-wrapper .table-scroll-wrapper table th,
.timetable-wrapper .table-scroll-wrapper table .arrow-left,
.timetable-wrapper .table-scroll-wrapper table .arrow-right,
.timetable-wrapper .table-scroll-wrapper table td,
.timetable-wrapper .table-scroll-wrapper table th {
  white-space: nowrap
}
.faretable-wrapper .table-scroll-wrapper table .arrow-right:before,
.timetable-wrapper .table-scroll-wrapper table .arrow-right:before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 5px;
  background-color: #f1be61;
  vertical-align: middle;
  margin-right: 0
}
.faretable-wrapper .table-scroll-wrapper table .arrow-right:after,
.timetable-wrapper .table-scroll-wrapper table .arrow-right:after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 12px solid #f1be61;
  vertical-align: middle
}
.faretable-wrapper .table-scroll-wrapper table .arrow-left:before,
.timetable-wrapper .table-scroll-wrapper table .arrow-left:before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-right: 12px solid #58879f;
  vertical-align: middle
}
.faretable-wrapper .table-scroll-wrapper table .arrow-left:after,
.timetable-wrapper .table-scroll-wrapper table .arrow-left:after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 5px;
  background-color: #58879f;
  vertical-align: middle;
  margin-left: 0
}
@media (max-width:750px) {
  .faretable-wrapper:has(.table-scroll-wrapper)::after,
  .timetable-wrapper:has(.table-scroll-wrapper)::after {
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: rgba(0,0,0,.7);
    color: #fff;
    padding: 5px 15px;
    border-radius: 15px;
    font-size: 12px;
    pointer-events: none;
    white-space: nowrap;
    z-index: 1
  }
}
@media (max-width:750px) {
  [lang=ja] .faretable-wrapper:has(.table-scroll-wrapper)::after,
  [lang=ja] .timetable-wrapper:has(.table-scroll-wrapper)::after {
    content: "← スクロールできます →"
  }
  [lang=en] .faretable-wrapper:has(.table-scroll-wrapper)::after,
  [lang=en] .timetable-wrapper:has(.table-scroll-wrapper)::after {
    content: "← Scrollable →"
  }
  [lang=zh-hant] .faretable-wrapper:has(.table-scroll-wrapper)::after,
  [lang=zh-hant] .timetable-wrapper:has(.table-scroll-wrapper)::after {
    content: "← 可以滾動 →"
  }
}
[lang=en] .faretable-wrapper table td,
[lang=en] .faretable-wrapper table th,
[lang=en] .timetable-wrapper table td,
[lang=en] .timetable-wrapper table th {
  padding: 5px!important;
  font-family: "Roboto Condensed","Noto Sans",sans-serif;
  font-size: .9em
}
.timetable-wrapper .table-scroll-wrapper table td,
.timetable-wrapper .table-scroll-wrapper table th {
  padding: 3px 10px
}
.error404 header {
  margin: 20px auto;
  width: -moz-fit-content;
  width: fit-content;
  display: block
}
body {
  font-family: "Noto Sans JP",sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal
}
@media (max-width:750px) {
  body {
    font-size: 1.75rem;
    padding-top: 52px
  }
}
@media (min-width:751px) {
  body {
    font-size: 1rem
  }
}
body.release {
  padding-top: 80px
}
[lang=zh-hant] body {
  font-family: "Noto Sans TC",sans-serif
}
[lang=en] body {
  font-family: "Noto Sans",sans-serif
}
footer.bg,
section.bg {
  background-color: rgba(34,53,127,.1)
}
footer.wide,
section.wide {
  width: 100%;
  max-width: 100%
}
footer.border,
section.border {
  border-top: 1px solid #21296b
}
@media (max-width:750px) {
  header {
    z-index: 100000;
    top: 0
  }
}
header > div:first-child {
  background-color: #21357f;
  height: 56px
}
@media (max-width:750px) {
  header > div:first-child {
    display: none
  }
}
header > div:first-child > div {
  height: 100%;
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  padding: 10px;
  color: #fff
}
@media (max-width:750px) {
  header > div:first-child > div {
    align-items: center
  }
}
header #header-logo {
  margin: 0;
  padding: 0
}
@media (max-width:750px) {
  header #header-logo img {
    height: 32px
  }
}
header > div:nth-child(2) > div {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 10px
}
header > div:nth-child(2) > div > nav ul {
  display: flex;
  flex-direction: row;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0
}
header > div:nth-child(2) > div > nav ul li {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center
}
header > div:nth-child(2) > div > nav ul li a {
  display: flex;
  color: #000;
  text-decoration: none;
  width: 120px;
  height: 50px;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 0;
  transition: all .3s ease;
  overflow-y: hidden;
  position: relative
}
header > div:nth-child(2) > div > nav ul li a:after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  transform: translateY(101%);
  background-color: #22357f;
  transition: all .3s ease;
  position: absolute;
  z-index: -1
}
header > div:nth-child(2) > div > nav ul li a:hover {
  color: #fff
}
header > div:nth-child(2) > div > nav ul li a:hover:after {
  transform: translateY(0)
}
header > div:nth-child(2) > div > nav ul li a:before {
  content: "";
  display: block;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 45%;
  margin-top: 5%
}
header > div:nth-child(2) > div > nav ul li a#menu-top:before {
  background-image: url(pict-home.png)
}
header > div:nth-child(2) > div > nav ul li a#menu-map:before {
  background-image: url(pict-time.png)
}
header > div:nth-child(2) > div > nav ul li a#menu-spec:before {
  background-image: url(pict-spec.png)
}
header > div:nth-child(2) > div > nav ul li a#menu-reserve:before {
  background-image: url(pict-reserve.png)
}
header > div:nth-child(2) > div > nav ul li a#menu-board:before {
  background-image: url(pict-board.png)
}
header > div:nth-child(2) > div > nav ul li a#menu-faq:before {
  background-image: url(pict-faq.png)
}
header > div:nth-child(2) > div > nav ul li a#menu-container:before {
  background-image: url(pict-container.png)
}
header > div:nth-child(2) > div > nav ul li:before {
  content: "";
  display: block;
  width: 1px;
  height: 50px;
  background-color: #000
}
header > div:nth-child(2) > div > nav ul li:last-child:after {
  content: "";
  display: block;
  width: 1px;
  height: 50px;
  background-color: #000
}
html[lang=en] header > div:nth-child(2) > div > nav > ul li a {
  width: 200px
}
header ul.lang-menu {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0
}
@media (max-width:750px) {
  header ul.lang-menu {
    background-color: #21357f;
    width: 100%;
    justify-content: center
  }
}
header ul.lang-menu:before {
  display: flex;
  width: 1.2em;
  height: auto;
  aspect-ratio: 1/1;
  background-image: url(pict-earth.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  content: ""
}
@media (max-width:750px) {
  header ul.lang-menu li:before {
    display: none!important
  }
  header ul.lang-menu li:last-child:after {
    display: none!important
  }
}
header ul.lang-menu li:after {
  content: " / ";
  color: #fff
}
header ul.lang-menu li:last-child:after {
  content: ""
}
header ul.lang-menu li a {
  color: #fff;
  text-decoration: none
}
@media (max-width:750px) {
  header ul.lang-menu li a {
    width: auto!important;
    height: auto!important;
    color: #fff!important;
    padding: .5em 1em
  }
}
@media (max-width:750px) {
  header {
    position: fixed;
    width: 100%;
    background-color: #fff
  }
  #menu-btn {
    position: absolute;
    top: 18px;
    right: 18px
  }
}
@media (max-width:750px) and (min-width:751px) {
  #menu-btn {
    display: none
  }
}
@media (max-width:750px) {
  #menu-btn > span {
    background-color: #22357f;
    display: block;
    width: 25px;
    height: 2px;
    position: relative;
    margin-bottom: 5px;
    transition: all .3s ease
  }
  #menu-btn > span:last-child {
    margin-bottom: 0
  }
  #menu-btn > span:nth-of-type(1) {
    top: 0
  }
  #menu-btn > span:nth-of-type(2) {
    top: 0
  }
  #menu-btn > span:nth-of-type(3) {
    bottom: 0
  }
  #menu-btn.active > span:nth-of-type(1) {
    transform: translateY(7px) rotate(-45deg)
  }
  #menu-btn.active > span:nth-of-type(2) {
    opacity: 0
  }
  #menu-btn.active > span:nth-of-type(3) {
    transform: translateY(-7px) rotate(45deg)
  }
  nav#global-nav {
    position: fixed;
    right: -100%;
    width: 100%;
    flex-direction: column;
    top: 52px;
    z-index: 10000;
    background: #fff;
    margin: 0;
    transition: all .3s ease;
    padding-bottom: 0
  }
  nav#global-nav.active {
    right: 0
  }
  nav#global-nav ul#global-menu {
    flex-direction: column;
    width: 100%;
    border-top: 1px solid #22357f;
    gap: 0
  }
  nav#global-nav ul#global-menu li {
    border-bottom: 1px solid #22357f;
    padding-bottom: 0
  }
  nav#global-nav ul#global-menu li a {
    font-size: 2rem;
    line-height: 8rem;
    width: 100%;
    display: flex;
    flex-direction: row;
    gap: 5px;
    align-items: center
  }
  nav#global-nav ul#global-menu li a:before {
    width: 24px;
    height: 24px;
    margin: 0
  }
  nav#global-nav ul#global-menu li a:after {
    display: none
  }
  nav#global-nav ul#global-menu li {
    width: 100%;
    text-align: center
  }
  nav#global-nav ul#lang-menu {
    flex-direction: row;
    width: 100%;
    gap: 30px;
    padding: 1rem;
    margin: 0
  }
  nav#global-nav ul#lang-menu li a {
    font-size: 2rem;
    line-height: 5rem
  }
}
footer {
  padding-top: 40px
}
@media (max-width:750px) {
  footer {
    padding-top: 20px;
    border-top: 1px solid #22357f;
    padding-bottom: 5rem
  }
}
footer > .inner > div {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  gap: 50px
}
@media (max-width:750px) {
  footer > .inner > div {
    flex-direction: column;
    gap: 20px
  }
}
footer > .inner > div a.btn {
  width: 200px;
  height: 44px;
  display: flex;
  gap: 10px;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  border: 1px solid #21357f;
  border-radius: 10px;
  color: #000;
  text-decoration: none;
  transition: all .3s ease
}
footer > .inner > div a.btn:hover {
  background-color: #21357f;
  color: #fff
}
footer #footer-logo {
  width: 342px;
  height: auto;
  margin-left: auto;
  margin-right: auto
}
@media (max-width:750px) {
  footer #footer-logo {
    width: 41.5234933333%
  }
}
footer .copyright {
  padding-top: 33px;
  padding-bottom: 33px;
  width: 100%;
  font-size: .89375rem;
  text-align: center
}
@media (max-width:750px) {
  footer .copyright {
    font-size: 1.0625rem;
    padding-top: 15px;
    padding-bottom: 15px
  }
}
#access {
  padding-top: 50px;
  padding-bottom: 46px;
  position: relative
}
@media (max-width:750px) {
  #access {
    padding-top: 20px;
    padding-bottom: 20px
  }
}
#access h2 {
  font-size: 1.1rem;
  font-weight: 500;
  width: 100%;
  text-align: center;
  padding-bottom: 1em;
  border-bottom: 1px solid #22357f;
  margin-bottom: 1em
}
@media (max-width:750px) {
  #access h2 {
    font-size: 2rem;
    padding-bottom: .5rem
  }
}
#access #map-wide {
  position: absolute;
  bottom: -46px;
  right: -67px;
  width: 381px;
  height: auto;
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, .5))
}
@media (max-width:750px) {
  #access #map-wide {
    position: relative;
    width: 91.6666666667%;
    bottom: unset;
    right: unset;
    margin-left: auto;
    margin-right: auto;
    filter: unset;
    margin-top: 20px
  }
}
#access #access-info-table {
  padding-bottom: 1rem
}
#access #access-info-table > div {
  height: auto;
  width: 100%
}
@media (max-width:750px) {
  #access #access-info-table > div {
    margin-bottom: .5rem
  }
}
#access #access-info-table > div > ul {
  list-style: none;
  margin: 0;
  padding: 0
}
#access #access-info-table > div > ul > li:before {
  content: "■";
  color: rgba(34,53,127,.3);
  display: inline-block
}
#access #access-info-table > div > ul > li > span {
  color: rgba(0,185,239,.5)
}
@media (min-width:751px) {
  #access #access-info-table {
    display: grid;
    grid-template-rows: 1fr auto;
    grid-template-columns: 278px repeat(2,1fr);
    gap: 1rem
  }
  #access #access-info-table > div:nth-of-type(1) {
    grid-column: 1/2;
    grid-row: 1/2;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px dotted #22357f
  }
  #access #access-info-table > div:nth-of-type(1) > div {
    font-size: 1.03125rem;
    text-align: center;
    margin-right: 15px;
    margin-left: 15px
  }
  #access #access-info-table > div:nth-of-type(1) > div:before {
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    background-image: url(pict_airplane@2x.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-right: .5rem;
    vertical-align: bottom
  }
  #access #access-info-table > div:nth-of-type(2) {
    grid-column: 2/3;
    grid-row: 1/2;
    font-size: 1.03125rem
  }
  #access #access-info-table > div:nth-of-type(3) {
    grid-column: 3/4;
    grid-row: 1/2;
    font-size: 1.03125rem
  }
  #access #access-info-table > div:nth-of-type(3) > ul > li:nth-of-type(1) {
    margin-bottom: .5em
  }
  #access #access-info-table > div:nth-of-type(4) {
    grid-column: 2/4;
    grid-row: 2/3;
    font-size: .89375rem
  }
}
@media (max-width:750px) {
  #access #access-info-table {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    width: 91.80952%;
    margin-left: auto;
    margin-right: auto
  }
  #access #access-info-table > div:nth-of-type(1) {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    border: 2px dotted #22357f
  }
  #access #access-info-table > div:nth-of-type(1) > div {
    font-size: 1.8125rem;
    text-align: center;
    display: flex;
    padding-top: 5px;
    padding-bottom: 5px;
    flex-direction: row;
    align-content: center;
    justify-content: center;
    align-items: center
  }
  #access #access-info-table > div:nth-of-type(1) > div:before {
    content: "";
    display: inline-block;
    width: 3.75rem;
    height: 3.75rem;
    background-image: url(pict_airplane@2x.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-right: .5rem
  }
  #access #access-info-table > div {
    font-size: 1.8125rem;
    margin-bottom: 0
  }
  #access #access-info-table > div:nth-of-type(2) {
    margin-top: 2rem
  }
  #access #access-info-table > div:nth-of-type(2),
  #access #access-info-table > div:nth-of-type(3) {
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    line-height: 2em
  }
  #access #access-info-table > div:nth-of-type(3) {
    margin-bottom: 2rem
  }
  #access #access-info-table > div:nth-of-type(4) {
    line-height: 1.5em
  }
}
#spec {
  padding-bottom: 40px
}
@media (max-width:750px) {
  #spec {
    padding-top: 50px;
    padding-bottom: 20px
  }
}
#spec h2 {
  width: 100%;
  height: 51px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(34,53,127,.3);
  color: #231815;
  font-size: 1.03125rem;
  font-weight: 500;
  margin-bottom: 1rem
}
@media (max-width:750px) {
  #spec h2 {
    font-size: 2rem
  }
}
#spec .inner > div {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  gap: 30px;
  padding-top: 40px
}
@media (max-width:750px) {
  #spec .inner > div {
    flex-direction: column-reverse;
    align-items: center;
    justify-content: flex-start;
    padding-top: 20px
  }
  #spec .inner > div #image-yaimamaru {
    width: 84.7446666667%;
    height: auto
  }
}
#spec .inner > div table {
  width: 273px;
  border-top: 1px solid #22357f;
  flex-shrink: 0
}
@media (max-width:750px) {
  #spec .inner > div table {
    width: 81.27968%
  }
}
#spec .inner > div table tr {
  border-bottom: 1px solid #22357f
}
#spec .inner > div table tr > th {
  font-size: 1.03125rem;
  padding-top: 10px;
  padding-bottom: 10px;
  width: 50%;
  font-weight: 400;
  text-align: left;
  text-indent: 1em
}
#spec .inner > div table tr > th:before {
  content: "■";
  color: rgba(34,53,127,.3);
  display: inline-block;
  margin-right: .5rem;
  text-indent: 0
}
@media (max-width:750px) {
  #spec .inner > div table tr > th {
    font-size: 1.8125rem
  }
}
#spec .inner > div table tr > td {
  font-size: 1.03125rem;
  padding-top: 10px;
  padding-bottom: 10px;
  width: 50%;
  text-align: left;
  text-indent: 1em
}
#spec .inner > div table tr > td > p {
  margin: 0;
  padding: 0
}
@media (max-width:750px) {
  #spec .inner > div table tr > td {
    font-size: 1.8125rem
  }
}
@media (min-width:751px) {
  #fv #fv-info {
    padding-top: 60px;
    padding-bottom: 60px
  }
}
@media (max-width:750px) {
  #fv {
    background-color: #22357f;
    width: 100%;
    height: auto;
    position: relative
  }
  #fv > .inner {
    position: absolute;
    bottom: 0;
    overflow-y: visible;
    width: 80.4620666667%;
    margin-left: auto;
    margin-right: auto
  }
  #fv #fv-info {
    margin-left: auto;
    margin-right: auto;
    position: absolute;
    bottom: 0
  }
}
#post {
  margin-bottom: 150px
}
@media (max-width:750px) {
  #post {
    margin-bottom: 80px
  }
}
#post #news-head {
  width: 100%;
  margin-top: 3rem
}
@media (max-width:750px) {
  #post #news-head {
    width: 95%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3rem
  }
}
@media (max-width:750px) {
  #post #news-head .date {
    font-size: 1rem
  }
}
#post .news-cat {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 4px 20px;
  font-size: .75rem;
  line-height: 1em;
  color: #fff;
  font-weight: 700;
  letter-spacing: -.02em
}
@media (max-width:750px) {
  #post .news-cat {
    font-size: 1rem;
    padding: 2px 10px
  }
}
#post #news-body p {
  line-height: 1.6em;
  margin-bottom: 1em
}
#post #news-body {
  width: 100%
}
@media (max-width:750px) {
  #post #news-body {
    width: 95%;
    margin-left: auto;
    margin-right: auto;
    font-size: 1.0625rem
  }
}
#post h1.news-title {
  font-size: 2rem;
  border-bottom: 1px solid #22357f;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  color: unset;
  width: unset;
  height: unset;
  display: block;
  background-color: unset
}
@media (max-width:750px) {
  #post h1.news-title {
    font-size: 1.25rem;
    margin-top: 1em
  }
}
#post #news-links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: 2rem;
  gap: 10px
}
#post #news-links > a {
  width: -moz-fit-content;
  width: fit-content;
  height: auto;
  display: flex;
  gap: 10px;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  border: 1px solid #21357f;
  border-radius: 10px;
  color: #000;
  text-decoration: none;
  transition: all .3s ease;
  padding: 10px 20px
}
#post #news-links > a:after {
  content: "＞"
}
#post #news-links > a:hover {
  background-color: #21357f;
  color: #fff
}
#post #news-links > a {
  border-color: #22357f;
  color: #22357f
}
@media (max-width:750px) {
  #post #news-links > a {
    font-size: 1rem
  }
}
@media (max-width:750px) {
  #post #news-links {
    width: 95%;
    margin-left: auto;
    margin-right: auto;
    font-size: 1rem
  }
}
#post .buttons {
  margin-top: 100px;
  font-size: 1.8125rem;
  text-align: center;
  display: flex;
  flex-direction: row;
  justify-content: center;
  width: 100%
}
@media (max-width:750px) {
  #post .buttons {
    margin-top: 50px;
    font-size: 1rem
  }
}
#post .buttons .btn {
  color: #fff;
  background-color: #22357f
}
@media (max-width:750px) {
  #post .buttons .btn {
    font-size: 1rem
  }
}
#fv-image {
  aspect-ratio: 1200/575.6752;
  max-width: 1200px;
  width: 100%;
  height: auto;
  overflow-y: hidden
}
#yaima-images {
  width: 810px;
  max-width: 100%;
  height: auto;
  aspect-ratio: 810/456
}
@media (max-width:750px) {
  #yaima-images {
    max-width: 85%
  }
}
#yaima-images img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block
}
.slick-next:before,
.slick-prev:before {
  color: #22357f!important;
  opacity: .5!important
}
img {
  image-renderring: optimize-contrast
}
section h1,
section h2 {
  font-size: 1.2rem;
  color: #231815;
  width: 100%;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(33,53,127,.3);
  margin-bottom: 1rem
}
@media (max-width:750px) {
  section h1,
  section h2 {
    font-size: 2rem;
    text-align: center;
    height: auto;
    padding-top: 5px;
    padding-bottom: 5px
  }
}
section h3 {
  font-size: 1.2rem
}
@media (max-width:750px) {
  section h3 {
    font-size: 1.8rem
  }
}
section h3.dash {
  color: #1d357f;
  display: inline-flex;
  gap: 1rem;
  flex-direction: row;
  justify-content: center;
  align-items: center
}
@media (max-width:750px) {
  section h3.dash {
    font-size: 2rem
  }
}
section h3.dash:after,
section h3.dash:before {
  content: "";
  width: 2rem;
  height: 3px;
  display: inline-block;
  background-color: #1d357f
}
section h3.wave {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: center
}
@media (max-width:750px) {
  section h3.wave {
    font-size: 2rem
  }
}
section h3.wave:after {
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20241.32%207.27%22%3E%0A%20%20%3Cdefs%3E%0A%20%20%20%20%3Cstyle%3E%0A%20%20%20%20%20%20.cls-1%20%7B%0A%20%20%20%20%20%20%20%20fill%3A%20%23a3daea%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%3C%2Fstyle%3E%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M0%2C0c3.32%2C0%2C5.03%2C1.43%2C6.53%2C2.7%2C1.36%2C1.14%2C2.53%2C2.13%2C4.96%2C2.13s3.6-.99%2C4.96-2.13C17.96%2C1.43%2C19.67%2C0%2C22.99%2C0s5.03%2C1.43%2C6.53%2C2.7c1.36%2C1.14%2C2.53%2C2.13%2C4.96%2C2.13%2C2.43%2C0%2C3.6-.99%2C4.96-2.13C40.95%2C1.43%2C42.66%2C0%2C45.97%2C0c3.32%2C0%2C5.03%2C1.43%2C6.53%2C2.7%2C1.36%2C1.14%2C2.53%2C2.13%2C4.96%2C2.13s3.6-.99%2C4.96-2.13C63.93%2C1.43%2C65.64%2C0%2C68.96%2C0s5.02%2C1.43%2C6.53%2C2.7c1.36%2C1.14%2C2.53%2C2.13%2C4.96%2C2.13s3.6-.99%2C4.96-2.13C86.91%2C1.43%2C88.62%2C0%2C91.94%2C0s5.03%2C1.43%2C6.53%2C2.7c1.36%2C1.14%2C2.53%2C2.13%2C4.96%2C2.13%2C2.43%2C0%2C3.6-.99%2C4.96-2.13C109.9%2C1.43%2C111.61%2C0%2C114.92%2C0s5.03%2C1.43%2C6.53%2C2.7c1.36%2C1.14%2C2.53%2C2.13%2C4.96%2C2.13s3.6-.99%2C4.96-2.13C132.88%2C1.43%2C134.59%2C0%2C137.91%2C0s5.03%2C1.43%2C6.53%2C2.7c1.36%2C1.14%2C2.53%2C2.13%2C4.96%2C2.13%2C2.43%2C0%2C3.6-.99%2C4.96-2.13C155.86%2C1.43%2C157.57%2C0%2C160.89%2C0c3.32%2C0%2C5.02%2C1.43%2C6.53%2C2.7%2C1.36%2C1.14%2C2.53%2C2.13%2C4.96%2C2.13%2C2.43%2C0%2C3.6-.99%2C4.96-2.13C178.85%2C1.43%2C180.55%2C0%2C183.87%2C0s5.02%2C1.43%2C6.53%2C2.7c1.36%2C1.14%2C2.53%2C2.13%2C4.96%2C2.13s3.6-.99%2C4.96-2.13C201.83%2C1.43%2C203.53%2C0%2C206.85%2C0s5.02%2C1.43%2C6.53%2C2.7c1.36%2C1.14%2C2.53%2C2.13%2C4.96%2C2.13%2C2.43%2C0%2C3.6-.99%2C4.96-2.13C224.81%2C1.43%2C226.51%2C0%2C229.83%2C0c3.32%2C0%2C5.02%2C1.43%2C6.53%2C2.7%2C1.36%2C1.14%2C2.53%2C2.13%2C4.96%2C2.13v2.44c-3.32%2C0-5.02-1.43-6.53-2.7-1.36-1.14-2.53-2.13-4.96-2.13s-3.6.99-4.96%2C2.13c-1.51%2C1.27-3.21%2C2.7-6.53%2C2.7-3.32%2C0-5.02-1.43-6.53-2.7-1.36-1.14-2.53-2.13-4.96-2.13-2.43%2C0-3.6.99-4.96%2C2.13-1.51%2C1.27-3.21%2C2.7-6.53%2C2.7s-5.02-1.43-6.53-2.7c-1.36-1.14-2.53-2.13-4.96-2.13s-3.6.99-4.96%2C2.13c-1.51%2C1.27-3.21%2C2.7-6.53%2C2.7s-5.02-1.43-6.53-2.7c-1.36-1.14-2.53-2.13-4.96-2.13s-3.6.99-4.96%2C2.13c-1.51%2C1.27-3.21%2C2.7-6.53%2C2.7-3.32%2C0-5.02-1.43-6.53-2.7-1.36-1.14-2.53-2.13-4.96-2.13-2.43%2C0-3.6.99-4.96%2C2.13-1.51%2C1.27-3.21%2C2.7-6.53%2C2.7s-5.03-1.43-6.53-2.7c-1.36-1.14-2.53-2.13-4.96-2.13s-3.6.99-4.96%2C2.13c-1.51%2C1.27-3.21%2C2.7-6.53%2C2.7-3.32%2C0-5.03-1.43-6.53-2.7-1.36-1.14-2.53-2.13-4.96-2.13-2.43%2C0-3.6.99-4.96%2C2.13-1.51%2C1.27-3.21%2C2.7-6.53%2C2.7-3.32%2C0-5.03-1.43-6.53-2.7-1.36-1.14-2.53-2.13-4.96-2.13s-3.6.99-4.96%2C2.13c-1.51%2C1.27-3.21%2C2.7-6.53%2C2.7s-5.03-1.43-6.53-2.7c-1.36-1.14-2.53-2.13-4.96-2.13s-3.6.99-4.96%2C2.13c-1.51%2C1.27-3.21%2C2.7-6.53%2C2.7-3.32%2C0-5.03-1.43-6.53-2.7-1.36-1.14-2.53-2.13-4.96-2.13-2.43%2C0-3.6.99-4.96%2C2.13-1.51%2C1.27-3.21%2C2.7-6.53%2C2.7s-5.03-1.43-6.53-2.7C3.6%2C3.43%2C2.43%2C2.44%2C0%2C2.44V0Z%22%2F%3E%0A%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 240px;
  height: 7px;
  margin-top: 10px
}
section h4 {
  font-size: 1.2rem;
  color: #1d357f
}
@media (max-width:750px) {
  section h4 {
    font-size: 2rem
  }
}
section h4:before {
  content: "■";
  font-size: .8em;
  margin-right: .5em
}
section p {
  margin-bottom: 0
}
section .tag {
  display: inline-flex;
  gap: .5rem;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  font-size: .8rem;
  color: #fff;
  background-color: #1d357f;
  padding: .2rem .5rem;
  border-radius: .5rem;
  font-weight: 400;
  white-space: nowrap
}
@media (max-width:750px) {
  section .tag {
    font-size: 1.6rem
  }
}
section .col2 {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: baseline;
  gap: 10px
}
@media (max-width:750px) {
  section .col2 {
    flex-direction: column
  }
}
section .col3 {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center
}
@media (max-width:750px) {
  section .col3 {
    flex-direction: column
  }
}
section .col3 > * {
  width: 33%
}
section.page-header {
  aspect-ratio: 1200/347.1666;
  -webkit-mask-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201200%201381.54%22%3E%0A%20%20%3Cpath%20d%3D%22M1200%2C1329.72s-270.56%2C51.82-602.02%2C51.82S0%2C1329.72%2C0%2C1329.72V0h1200v1329.72Z%22%2F%3E%0A%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201200%201381.54%22%3E%0A%20%20%3Cpath%20d%3D%22M1200%2C1329.72s-270.56%2C51.82-602.02%2C51.82S0%2C1329.72%2C0%2C1329.72V0h1200v1329.72Z%22%2F%3E%0A%3C%2Fsvg%3E");
  -webkit-mask-position: center bottom;
  mask-position: center bottom;
  -webkit-mask-size: cover;
  mask-size: cover;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 60px;
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat
}
section.page-header h1 {
  background-color: rgba(0,153,255,.7);
  color: #fff;
  font-size: 2rem;
  padding: 1rem;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 230px;
  height: 230px;
  border-radius: 230px;
  margin: 0
}
@media (max-width:750px) {
  section.page-header h1 {
    font-size: 2rem;
    width: 140px;
    height: 140px;
    margin-top: 20px;
    margin-bottom: 20px
  }
}
section.page-header h1 > span {
  font-size: .85em
}
@media (max-width:750px) {
  section.page-header h1 > span {
    font-size: .8em
  }
}
#underconstruction .inner {
  width: 100vw;
  height: 100vh;
  text-align: center;
  justify-content: center;
  align-items: center;
  gap: 50px
}
@media (min-width:751px) {
  #home #fv #fv-info {
    padding-top: 60px;
    padding-bottom: 60px
  }
}
@media (max-width:750px) {
  #home #fv {
    background-color: #22357f;
    width: 100%;
    height: auto;
    position: relative
  }
  #home #fv > .inner {
    position: absolute;
    bottom: 0;
    overflow-y: visible;
    width: 80.4620666667%;
    margin-left: auto;
    margin-right: auto
  }
  #home #fv #fv-info {
    margin-left: auto;
    margin-right: auto;
    position: absolute;
    bottom: 0
  }
}
#home #fv-movie {
  max-width: 100%;
  width: 1200px;
  margin: 0 auto
}
#home #fv-movie > video {
  display: block
}
#home #status {
  margin-bottom: 60px
}
#home #top-state {
  width: 100%;
  max-width: 810px;
  border: 2px solid #22357f;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: stretch;
  background-color: #fff;
  border-radius: 20px;
  padding: 20px 64px
}
@media (max-width:750px) {
  #home #top-state {
    width: 90%;
    flex-direction: column;
    padding: 10px
  }
}
#home #top-state h2 {
  font-size: 1.4rem;
  border-left: 5px solid #22357f;
  border-right: 5px solid #22357f;
  color: #000;
  padding: .2em 1em;
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  height: auto;
  background-color: #fff
}
@media (max-width:750px) {
  #home #top-state h2 {
    border: 2px solid #fff;
    font-size: 2rem;
    padding: 0;
    border-bottom: 1px solid #22357f;
    padding-bottom: .5em
  }
}
#home #top-state p {
  font-size: 1.2rem;
  margin: 0;
  padding: .2em 1em
}
@media (max-width:750px) {
  #home #top-state p {
    font-size: 1.5rem;
    padding: .5em
  }
}
#home #fv-catch {
  background-image: url(bg-catch.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 50px 0;
  max-width: 1200px;
  width: 100%
}
@media (max-width:750px) {
  #home #fv-catch {
    background-color: #fff;
    padding-left: 20px;
    padding-right: 20px
  }
}
#home #fv-ishigaki-taiwan {
  max-width: 1200px;
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: flex-start
}
#home #fv-ishigaki-taiwan > div {
  max-width: 50%;
  height: auto;
  aspect-ratio: 600/400
}
#home #route {
  padding-top: 40px;
  padding-bottom: 70px
}
@media (max-width:750px) {
  #home #route {
    padding-top: 0;
    margin-top: 40px;
    padding-bottom: 50px
  }
}
#home #route h2 {
  width: 100%;
  height: 51px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(34,53,127,.3);
  color: #231815;
  font-size: 1.03125rem;
  font-weight: 500;
  margin-bottom: 1rem
}
@media (max-width:750px) {
  #home #route h2 {
    font-size: 2rem
  }
}
#home #news h2 {
  width: 100%;
  height: 51px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(34,53,127,.3);
  color: #231815;
  font-size: 1.03125rem;
  font-weight: 500;
  margin-bottom: 1rem
}
@media (max-width:750px) {
  #home #news h2 {
    font-size: 2rem
  }
}
#home #news #news-list {
  margin-top: 20px;
  margin-bottom: 50px;
  padding: 0 30px;
  width: 100%
}
@media (max-width:750px) {
  #home #news #news-list {
    padding: 0 10px
  }
}
#home #news #news-list .no-news {
  text-align: center;
  color: #999;
  font-size: .875rem;
  margin-top: 20px
}
#home #news #news-list > a {
  color: #000;
  display: flex;
  border-bottom: 1px dashed;
  text-decoration: none;
  width: 100%;
  flex-direction: row;
  align-content: flex-start;
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 0;
  padding: 1rem;
  text-align: justify;
  position: relative
}
@media (max-width:750px) {
  #home #news #news-list > a {
    font-size: 1.5rem;
    flex-direction: column
  }
}
#home #news #news-list > a:hover {
  background-color: #f5f8fa;
  color: #22357f
}
#home #news #news-list > a:after {
  content: "▶";
  color: #22357f;
  font-size: .5em;
  align-self: center;
  right: -1rem;
  position: relative;
  width: 1rem;
  margin-left: auto;
  flex-shrink: 0;
  transition: ease-out .5s
}
@media (max-width:750px) {
  #home #news #news-list > a:after {
    position: absolute;
    top: 50%;
    right: 0
  }
}
#home #news #news-list > a:hover:after {
  right: -1.5rem;
  transition: ease-out .5s
}
#home #news #news-list > a:not([href]),
#home #news #news-list > a[href=""] {
  pointer-events: none;
  cursor: default
}
#home #news #news-list > a:not([href]):after,
#home #news #news-list > a[href=""]:after {
  display: none
}
#home #news #news-list > a > span {
  width: auto;
  padding-right: 1rem;
  flex-shrink: 0;
  color: #22357f
}
@media (max-width:750px) {
  #home #news #news-list > a > span {
    width: 100%;
    display: inline-flex;
    flex-direction: row;
    align-content: center;
    justify-content: flex-start;
    align-items: center
  }
}
#home #news #news-list > a > span:after {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 4px 8px;
  font-size: .75rem;
  margin-left: 1rem;
  line-height: 1em
}
@media (max-width:750px) {
  #home #news #news-list > a > span:after {
    font-size: 1.5rem;
    padding: 2px 4px
  }
}
#home #news #news-list > a span.news-cat {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 4px 8px;
  font-size: .75rem;
  margin-left: 1rem;
  line-height: 1em;
  color: #fff;
  min-width: 10em;
  font-weight: 700;
  letter-spacing: -.02em
}
@media (max-width:750px) {
  #home #news #news-list > a span.news-cat {
    font-size: 1rem
  }
}
#home #contents {
  background-image: url(bg-wave.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding-top: 50px;
  padding-bottom: 50px
}
#home #contents #content-list {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  -moz-column-gap: 70px;
  column-gap: 70px;
  gap: 30px
}
@media (max-width:750px) {
  #home #contents #content-list {
    -moz-column-gap: 20px;
    column-gap: 20px;
    row-gap: 20px;
    margin-left: auto;
    margin-right: auto
  }
}
#home #contents #content-list li {
  width: 220px;
  height: 220px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  border-radius: 500px
}
@media (max-width:750px) {
  #home #contents #content-list li {
    width: 45%;
    height: auto;
    aspect-ratio: 1/1
  }
}
#home #contents #content-list li > a {
  text-decoration: none;
  color: #fff;
  font-weight: 700;
  font-size: 1.5rem;
  width: 75%;
  height: 75%;
  display: flex;
  gap: 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: rgba(0,155,255,.7);
  border-radius: 100%;
  transition: ease-out .2s
}
#home #contents #content-list li > a > span {
  font-size: .85em
}
#home #contents #content-list li > a:hover {
  background-color: #009bff;
  width: 90%;
  height: 90%
}
#home #contents #content-list li#content-map {
  background-image: url(bg-map.png)
}
#home #contents #content-list li#content-spec {
  background-image: url(bg-spec.png)
}
#home #contents #content-list li#content-reserve {
  background-image: url(reserve/header-image.png)
}
#home #contents #content-list li#content-board {
  background-image: url(board/header-image.png)
}
#home #contents #content-list li#content-faq {
  background-image: url(faq/header-image.png)
}
#home #contents #content-list li#content-container {
  background-image: url(bg-container.png)
}
[lang=en] #home #fv-movie {
  max-width: 100vw;
  width: 100vw
}
[lang=en] #home #fv-catch {
  max-width: 100vw;
  width: 100vw
}
body#faq section.page-header {
  background-image: url(faq/header-image.png)
}
body#faq .inner {
  max-width: 980px
}
body#faq #faq-nav {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
  margin: 0;
  margin-bottom: 60px
}
@media (max-width:750px) {
  body#faq #faq-nav {
    width: 95vw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 60px
  }
}
@media (max-width:750px) {
  body#faq #faq-nav > li {
    width: 48%
  }
}
body#faq #faq-nav > li > a {
  color: #fff;
  text-decoration: none;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  background-color: #c13432;
  border-radius: 20px;
  color: #fff;
  font-size: 1rem;
  width: 227px;
  height: 50px;
  padding: 1em
}
@media (max-width:750px) {
  body#faq #faq-nav > li > a {
    width: 100%;
    font-size: 1.4rem;
    height: 3rem
  }
}
body#faq #faq-nav > li > a:after {
  content: "▼"
}
body#faq .faq {
  margin-bottom: 30px
}
@media (max-width:750px) {
  body#faq .faq {
    margin-bottom: 60px
  }
}
body#faq .faq > div {
  display: flex;
  flex-direction: row;
  gap: 10px
}
@media (max-width:750px) {
  body#faq .faq > div {
    flex-direction: column
  }
}
body#faq .faq > div > h2 {
  font-size: 1.2rem;
  color: #21357f;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 227px;
  height: 98px;
  border-radius: 20px;
  background-color: #fcc
}
@media (max-width:750px) {
  body#faq .faq > div > h2 {
    font-size: 1.5rem;
    width: 95vw;
    height: auto;
    padding: 10px;
    margin-left: auto;
    margin-right: auto
  }
}
body#faq .faq > div > ul {
  width: 722px;
  height: auto;
  border-top: 2px solid #000;
  border-bottom: 2px solid #000;
  list-style: none
}
@media (max-width:750px) {
  body#faq .faq > div > ul {
    margin: 0;
    width: 95vw;
    margin-left: auto;
    margin-right: auto
  }
}
body#faq .faq details {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  overflow: hidden;
  transition: all .3s ease
}
body#faq .faq summary {
  display: flex;
  align-items: center;
  padding: 15px;
  background-color: #fff;
  font-weight: 700;
  cursor: pointer;
  position: relative;
  list-style: none
}
@media (max-width:750px) {
  body#faq .faq summary {
    padding-right: 50px
  }
}
body#faq .faq summary:before {
  content: "Q";
  color: #c13432;
  display: inline;
  margin-right: .5em;
  font-size: 1.8rem
}
@media (max-width:750px) {
  body#faq .faq summary:before {
    font-size: 2rem
  }
}
body#faq .faq summary::-webkit-details-marker {
  display: none
}
body#faq .faq summary::after {
  content: "＋";
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  color: #fff;
  width: 24px;
  height: 24px;
  background-color: #231815;
  border-radius: 5px;
  display: inline-flex;
  justify-content: center;
  align-items: center
}
body#faq .faq details[open] summary::after {
  content: "－";
  background-color: #c13432
}
body#faq .faq details[open] summary {
  background-color: rgba(255,204,204,.3)
}
body#faq .faq .answer {
  padding: 15px;
  background-color: rgba(255,204,204,.3);
  color: #555;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%
}
body#faq .faq .answer:before {
  content: "A";
  color: #21357f;
  display: inline;
  margin-right: .5em;
  font-size: 1.8rem;
  line-height: 1em;
  font-weight: 700
}
@media (max-width:750px) {
  body#faq .faq .answer:before {
    font-size: 2rem
  }
}
body#faq .faq .answer a.btn {
  margin-top: .5em;
  width: 200px;
  height: 44px;
  display: inline-flex;
  gap: 10px;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  border: 1px solid #21357f;
  border-radius: 10px;
  color: #000;
  text-decoration: none;
  transition: all .3s ease;
  background-color: #fff
}
body#faq .faq .answer a.btn:hover {
  background-color: #21357f;
  color: #fff
}
body#container section.page-header {
  background-image: url(container/header-image.png)
}
[lang=en] #reserve .section-header,
[lang=en] #reserve section.page-header,
body#reserve .section-header,
body#reserve section.page-header {
  background-image: url(reserve/header-image.png)
}
[lang=en] #reserve .faretable-wrapper table thead tr th,
body#reserve .faretable-wrapper table thead tr th {
  padding: .2em
}
[lang=en] #reserve .faretable-wrapper table thead tr th p,
body#reserve .faretable-wrapper table thead tr th p {
  text-align: center
}
[lang=en] #reserve .faretable-wrapper table tbody tr,
body#reserve .faretable-wrapper table tbody tr {
  background-color: #fff
}
[lang=en] #reserve .faretable-wrapper table tbody tr td,
body#reserve .faretable-wrapper table tbody tr td {
  padding: .4em
}
[lang=en] #reserve .faretable-wrapper table tbody tr td ._r,
body#reserve .faretable-wrapper table tbody tr td ._r {
  text-align: right
}
[lang=en] #reserve ._inblock,
body#reserve ._inblock {
  display: inline-block;
  vertical-align: top
}
@media (max-width:750px) {
  [lang=en] #reserve ._inblock,
  body#reserve ._inblock {
    display: block;
    margin-left: 1em
  }
}
[lang=en] #spec .section-header,
[lang=en] #spec section.page-header,
body#spec .section-header,
body#spec section.page-header {
  background-image: url(spec/header-image.png)
}
[lang=en] #spec #room-list,
body#spec #room-list {
  list-style: none;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 0;
  margin-left: 0
}
[lang=en] #spec #room-list > li,
body#spec #room-list > li {
  width: 100%
}
@media (max-width:750px) {
  [lang=en] #spec #room-list > li,
  body#spec #room-list > li {
    margin-top: 2px;
    margin-bottom: 2px
  }
}
[lang=en] #spec #room-list > li > a,
body#spec #room-list > li > a {
  display: inline-flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 5px;
  text-decoration: none;
  color: #000;
  border-bottom: 1px solid #000
}
@media (max-width:750px) {
  [lang=en] #spec #room-list > li > a,
  body#spec #room-list > li > a {
    width: 100%;
    line-height: 1.3em
  }
}
[lang=en] #spec #room-list > li > a:before,
body#spec #room-list > li > a:before {
  content: "■"
}
[lang=en] #spec #room-list > li > a:after,
body#spec #room-list > li > a:after {
  content: "＞"
}
@media (max-width:750px) {
  [lang=en] #spec #room-list > li > a:after,
  body#spec #room-list > li > a:after {
    margin-right: 0;
    margin-left: auto
  }
}
[lang=en] #spec .room h3,
body#spec .room h3 {
  font-size: 1.8rem;
  font-weight: 100;
  text-align: center
}
@media (max-width:750px) {
  [lang=en] #spec .room h3,
  body#spec .room h3 {
    font-size: 2.4rem
  }
}
[lang=en] #spec .room a,
body#spec .room a {
  position: relative;
  display: inline-block
}
[lang=en] #spec .room .tag,
body#spec .room .tag {
  display: block;
  position: absolute;
  top: 0;
  white-space: nowrap;
  right: 0;
  font-size: .9rem;
  padding: .2rem .5rem;
  background-color: #000;
  color: #fff;
  border-radius: 0
}
@media (max-width:750px) {
  [lang=en] #spec .room .tag,
  body#spec .room .tag {
    font-size: 1.6rem
  }
}
[lang=en] #spec .room table,
body#spec .room table {
  width: 100%
}
[lang=en] #spec .room table td,
[lang=en] #spec .room table th,
body#spec .room table td,
body#spec .room table th {
  width: auto!important;
  font-size: .9rem!important;
  text-indent: 0!important
}
@media (max-width:750px) {
  [lang=en] #spec .room table td,
  [lang=en] #spec .room table th,
  body#spec .room table td,
  body#spec .room table th {
    font-size: 1.6rem!important
  }
}
[lang=en] #spec .room table th,
body#spec .room table th {
  padding-left: 1em;
  padding-right: 1em
}
@media (max-width:750px) {
  [lang=en] #spec .room table th,
  body#spec .room table th {
    white-space: nowrap
  }
}
[lang=en] #spec .room table td,
body#spec .room table td {
  padding-right: 1em
}
[lang=en] #spec .room-s,
body#spec .room-s {
  display: flex;
  flex-direction: column;
  gap: 10px
}
[lang=en] #spec .room-s h3,
body#spec .room-s h3 {
  font-size: 1.4rem
}
[lang=en] #spec .room-s a,
body#spec .room-s a {
  width: 400px;
  max-width: 100%
}
@media (max-width:750px) {
  [lang=en] #spec .room-s a,
  body#spec .room-s a {
    width: auto
  }
}
[lang=en] #spec .room-m,
body#spec .room-m {
  display: block;
  width: 100%
}
[lang=en] #spec .room-m .col4,
body#spec .room-m .col4 {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2.5%;
  row-gap: 30px
}
@media (max-width:750px) {
  [lang=en] #spec .room-m .col4,
  body#spec .room-m .col4 {
    flex-direction: column
  }
}
[lang=en] #spec .room-m .col4 > *,
body#spec .room-m .col4 > * {
  width: 48.75%
}
@media (max-width:750px) {
  [lang=en] #spec .room-m .col4 > *,
  body#spec .room-m .col4 > * {
    width: 100%
  }
}
[lang=en] #spec .room-m .col3,
body#spec .room-m .col3 {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2.5%
}
@media (max-width:750px) {
  [lang=en] #spec .room-m .col3,
  body#spec .room-m .col3 {
    flex-wrap: wrap
  }
}
[lang=en] #spec .room-m .col3 > :nth-child(1),
body#spec .room-m .col3 > :nth-child(1) {
  width: 42.5%
}
@media (max-width:750px) {
  [lang=en] #spec .room-m .col3 > :nth-child(1),
  body#spec .room-m .col3 > :nth-child(1) {
    width: 65%
  }
}
[lang=en] #spec .room-m .col3 > :nth-child(2),
body#spec .room-m .col3 > :nth-child(2) {
  width: 21.25%
}
@media (max-width:750px) {
  [lang=en] #spec .room-m .col3 > :nth-child(2),
  body#spec .room-m .col3 > :nth-child(2) {
    width: 32.5%
  }
}
[lang=en] #spec .room-m .col3 > :nth-child(3),
body#spec .room-m .col3 > :nth-child(3) {
  width: auto
}
@media (max-width:750px) {
  [lang=en] #spec .room-m .col3 > :nth-child(3),
  body#spec .room-m .col3 > :nth-child(3) {
    width: 100%;
    margin-top: 10px
  }
}
[lang=en] #spec .room-l,
body#spec .room-l {
  display: block;
  width: 100%
}
[lang=en] #spec .room-l .col2,
body#spec .room-l .col2 {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2.5%
}
@media (max-width:750px) {
  [lang=en] #spec .room-l .col2,
  body#spec .room-l .col2 {
    margin-bottom: 10px!important
  }
}
[lang=en] #spec .room-l .col2 > :nth-child(1),
body#spec .room-l .col2 > :nth-child(1) {
  width: 65%
}
[lang=en] #spec .room-l .col2 > :nth-child(2),
body#spec .room-l .col2 > :nth-child(2) {
  width: 32.5%
}
[lang=en] #spec .slider-nav,
body#spec .slider-nav {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 10px
}
[lang=en] #spec .slider-nav img,
body#spec .slider-nav img {
  width: 50px;
  height: 50px;
  -o-object-fit: cover;
  object-fit: cover;
  cursor: pointer
}
[lang=en] #spec .spec-table th {
  white-space: nowrap
}
[lang=en] #map .section-header,
[lang=en] #map section.page-header,
body#map .section-header,
body#map section.page-header {
  background-image: url(map/header-image.png)
}
[lang=en] #map #ishigaki-access,
body#map #ishigaki-access {
  padding-bottom: 46px;
  position: relative
}
@media (max-width:750px) {
  [lang=en] #map #ishigaki-access,
  body#map #ishigaki-access {
    padding-bottom: 20px
  }
}
[lang=en] #map #ishigaki-access #map-wide,
body#map #ishigaki-access #map-wide {
  position: absolute;
  bottom: -46px;
  right: -67px;
  width: 381px;
  height: auto;
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, .5))
}
@media (max-width:750px) {
  [lang=en] #map #ishigaki-access #map-wide,
  body#map #ishigaki-access #map-wide {
    position: relative;
    width: 91.6666666667%;
    bottom: unset;
    right: unset;
    margin-left: auto;
    margin-right: auto;
    filter: unset;
    margin-top: 20px
  }
}
[lang=en] #map #ishigaki-access #access-info-table,
body#map #ishigaki-access #access-info-table {
  padding-bottom: 1rem
}
[lang=en] #map #ishigaki-access #access-info-table > div,
body#map #ishigaki-access #access-info-table > div {
  height: auto;
  width: 100%
}
@media (max-width:750px) {
  [lang=en] #map #ishigaki-access #access-info-table > div,
  body#map #ishigaki-access #access-info-table > div {
    margin-bottom: .5rem
  }
}
[lang=en] #map #ishigaki-access #access-info-table > div > ul,
body#map #ishigaki-access #access-info-table > div > ul {
  list-style: none;
  margin: 0;
  padding: 0
}
[lang=en] #map #ishigaki-access #access-info-table > div > ul > li:before,
body#map #ishigaki-access #access-info-table > div > ul > li:before {
  content: "■";
  color: rgba(34,53,127,.3);
  display: inline-block
}
[lang=en] #map #ishigaki-access #access-info-table > div > ul > li > span,
body#map #ishigaki-access #access-info-table > div > ul > li > span {
  color: rgba(0,185,239,.5)
}
@media (min-width:751px) {
  [lang=en] #map #ishigaki-access #access-info-table,
  body#map #ishigaki-access #access-info-table {
    display: grid;
    grid-template-rows: 1fr auto;
    grid-template-columns: 278px repeat(2,1fr);
    gap: 1rem
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(1),
  body#map #ishigaki-access #access-info-table > div:nth-of-type(1) {
    grid-column: 1/2;
    grid-row: 1/2;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 2px dotted #22357f
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(1) > div,
  body#map #ishigaki-access #access-info-table > div:nth-of-type(1) > div {
    font-size: 1.03125rem;
    text-align: center;
    margin-right: 15px;
    margin-left: 15px;
    margin-top: 10px;
    margin-bottom: 10px;
    line-height: 1.2em
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(1) > div:before,
  body#map #ishigaki-access #access-info-table > div:nth-of-type(1) > div:before {
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    background-image: url(pict_airplane@2x.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-right: .5rem;
    vertical-align: middle
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(2),
  body#map #ishigaki-access #access-info-table > div:nth-of-type(2) {
    grid-column: 2/3;
    grid-row: 1/2;
    font-size: 1.03125rem
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(3),
  body#map #ishigaki-access #access-info-table > div:nth-of-type(3) {
    grid-column: 3/4;
    grid-row: 1/2;
    font-size: 1.03125rem
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(3) > ul > li:nth-of-type(1),
  body#map #ishigaki-access #access-info-table > div:nth-of-type(3) > ul > li:nth-of-type(1) {
    margin-bottom: .3em
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(4),
  body#map #ishigaki-access #access-info-table > div:nth-of-type(4) {
    grid-column: 2/4;
    grid-row: 2/3;
    font-size: .89375rem
  }
}
@media (max-width:750px) {
  [lang=en] #map #ishigaki-access #access-info-table,
  body#map #ishigaki-access #access-info-table {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    width: 91.80952%;
    margin-left: auto;
    margin-right: auto
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(1),
  body#map #ishigaki-access #access-info-table > div:nth-of-type(1) {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    border: 2px dotted #22357f
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(1) > div,
  body#map #ishigaki-access #access-info-table > div:nth-of-type(1) > div {
    font-size: 1.8125rem;
    text-align: center;
    display: flex;
    padding-top: 5px;
    padding-bottom: 5px;
    flex-direction: row;
    align-content: center;
    justify-content: center;
    align-items: center
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(1) > div:before,
  body#map #ishigaki-access #access-info-table > div:nth-of-type(1) > div:before {
    content: "";
    display: inline-block;
    width: 3.75rem;
    height: 3.75rem;
    background-image: url(pict_airplane@2x.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-right: .5rem
  }
  [lang=en] #map #ishigaki-access #access-info-table > div,
  body#map #ishigaki-access #access-info-table > div {
    font-size: 1.8125rem;
    margin-bottom: 0
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(2),
  body#map #ishigaki-access #access-info-table > div:nth-of-type(2) {
    margin-top: 2rem
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(2),
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(3),
  body#map #ishigaki-access #access-info-table > div:nth-of-type(2),
  body#map #ishigaki-access #access-info-table > div:nth-of-type(3) {
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    line-height: 2em
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(3),
  body#map #ishigaki-access #access-info-table > div:nth-of-type(3) {
    margin-bottom: 2rem
  }
  [lang=en] #map #ishigaki-access #access-info-table > div:nth-of-type(4),
  body#map #ishigaki-access #access-info-table > div:nth-of-type(4) {
    line-height: 1.5em
  }
}
[lang=en] #board .section-header,
[lang=en] #board section.page-header,
body#board .section-header,
body#board section.page-header {
  background-image: url(board/header-image.png)
}
[lang=en] #board #terminal-ishigaki-container #family-mart,
[lang=en] #board #terminal-ishigaki-container #international-terminal,
[lang=en] #board #terminal-ishigaki-container #ishigaki-terminal,
[lang=en] #board #terminal-ishigaki-container #ritou-terminal,
[lang=en] #board #terminal-keelung-container #east-visitor-center,
[lang=en] #board #terminal-keelung-container #keelung-terminal,
[lang=en] #board #terminal-keelung-container #west-visitor-center,
[lang=en] #board .sprite,
body#board #terminal-ishigaki-container #family-mart,
body#board #terminal-ishigaki-container #international-terminal,
body#board #terminal-ishigaki-container #ishigaki-terminal,
body#board #terminal-ishigaki-container #ritou-terminal,
body#board #terminal-keelung-container #east-visitor-center,
body#board #terminal-keelung-container #keelung-terminal,
body#board #terminal-keelung-container #west-visitor-center,
body#board .sprite {
  position: absolute;
  width: calc(var(--w)/ var(--w-root) * 100%);
  aspect-ratio: var(--w)/var(--h);
  height: auto;
  top: calc(var(--y)/ var(--h-root) * 100%);
  left: calc(var(--x)/ var(--w-root) * 100%);
  cursor: pointer;
  z-index: 1000
}
[lang=en] #board #terminal-ishigaki-container,
body#board #terminal-ishigaki-container {
  position: relative;
  --w-root: 810;
  --h-root: 624.2134
}
[lang=en] #board #terminal-ishigaki-container #ishigaki-terminal,
body#board #terminal-ishigaki-container #ishigaki-terminal {
  --x: 179.2827;
  --y: 100.6295;
  --w: 153.4092;
  --h: 40.9927
}
[lang=en] #board #terminal-ishigaki-container #family-mart,
body#board #terminal-ishigaki-container #family-mart {
  --x: 435.514;
  --y: 168.9168;
  --w: 295.9414;
  --h: 41.2051
}
[lang=en] #board #terminal-ishigaki-container #ritou-terminal,
body#board #terminal-ishigaki-container #ritou-terminal {
  --x: 399.5166;
  --y: 172.553;
  --w: 278.9502;
  --h: 41.0347
}
[lang=en] #board #terminal-ishigaki-container #international-terminal,
body#board #terminal-ishigaki-container #international-terminal {
  --x: 57.2827;
  --y: 432.6295;
  --w: 225.4092;
  --h: 40.9927
}
[lang=en] #board #terminal-keelung-container,
body#board #terminal-keelung-container {
  position: relative;
  --w-root: 660.6709;
  --h-root: 511.1899
}
[lang=en] #board #terminal-keelung-container #keelung-terminal,
body#board #terminal-keelung-container #keelung-terminal {
  --x: 125.5345;
  --y: 322.7282;
  --w: 105.0259;
  --h: 40.9785
}
[lang=en] #board #terminal-keelung-container #east-visitor-center,
body#board #terminal-keelung-container #east-visitor-center {
  --x: 285.5331;
  --y: 292.4352;
  --w: 160.3906;
  --h: 38.3184
}
[lang=en] #board #terminal-keelung-container #west-visitor-center,
body#board #terminal-keelung-container #west-visitor-center {
  --x: 311.5135;
  --y: 110.4352;
  --w: 172.8008;
  --h: 40.9932
}
body.single-news header {
  margin: 20px auto;
  display: block;
  width: -moz-fit-content;
  width: fit-content
}
@media (max-width:750px) {
  body.single-news header {
    position: relative
  }
}
/*# sourceMappingURL=style.css.map */
