@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: inherit;
  font-style: normal;
  line-height: inherit;
  text-decoration: none;
  vertical-align: baseline; }

article, aside, details, figcaption, figure, picture,
footer, header, menu, nav, section, main, canvas, picture {
  display: block; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

input, textarea {
  font-family: inherit;
  font-size: inherit;
  margin: 0;
  padding: 0; }

select, option, button {
  font-family: inherit;
  font-size: inherit; }

input.styleReset, button.styleReset, textarea.styleReset, select.styleReset {
  color: inherit;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box; }

.list {
  list-style: none;
  margin: 0;
  padding: 0; }

a {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: inherit;
  font-weight: inherit;
  font-style: inherit;
  text-decoration: none;
  vertical-align: baseline; }

html {
  font-size: calc(10vw / 7.5);
  -webkit-font-smoothing: antialiased; }

body {
  color: #000000;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  font-size: 1.4rem;
  line-height: 1;
  background: linear-gradient(to bottom, #e5003a 0%, #f9bf3d 100%);
  -webkit-text-size-adjust: 100%;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

body.lock,
body.loading {
  overflow: hidden;
  width: 100vw;
  height: 100vh; }

@media screen and (min-width: 751px) {
  html {
    font-size: 8px; }

  body {
    font-size: 1.6rem;
    line-height: 1; } }
* {
  -webkit-tap-highlight-color: transparent; }

a {
  cursor: pointer;
  color: inherit;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  text-decoration: none; }

p, dt, dd, li {
  word-break: break-word;
  word-wrap: normal; }

img {
  max-width: 100%;
  height: auto;
  vertical-align: top; }

button {
  cursor: pointer;
  font-family: inherit;
  touch-action: manipulation; }

.ib {
  display: inline-block;
  line-height: inherit;
  font-weight: inherit; }

.accordionTrigger {
  cursor: pointer;
  display: block; }

.accordionContent {
  display: none; }

.en {
  font-family: sans-serif; }

.justify {
  text-align: justify;
  text-align-last: justify; }

.slide .photo {
  opacity: 0;
  position: absolute;
  top: 0; }
  .slide .photo:first-child {
    opacity: 1;
    position: relative; }
.slide.slick-initialized .photo {
  opacity: 1;
  position: relative; }
.slide .slick-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: calc(100% + 2.6rem);
  left: 0;
  right: 0; }
  .slide .slick-dots li {
    overflow: hidden;
    flex-basis: 7.5rem;
    margin: 0 0 0 0.8rem; }
    .slide .slick-dots li:first-child:last-child {
      display: none; }
    .slide .slick-dots li button {
      margin: 0;
      padding: 0;
      background: none;
      border: none;
      border-radius: 0;
      outline: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      box-sizing: border-box;
      display: block;
      cursor: pointer;
      width: 100%;
      height: 6px;
      text-indent: -9999em;
      background-color: #ffffff;
      transition: background-color 0.2s ease-out; }
    .slide .slick-dots li button:hover, .slide .slick-dots li.slick-active button {
      background-color: #d20000; }
.slide .slick-arrow {
  cursor: pointer;
  position: absolute;
  top: 22rem;
  z-index: 10;
  width: 2rem;
  height: 10rem;
  text-indent: -9999em;
  margin: auto;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box;
  background: url(../images/common/icon_arrow.svg) center center no-repeat;
  background-size: contain; }
  .slide .slick-arrow.slick-prev {
    left: 3.2rem; }
  .slide .slick-arrow.slick-next {
    right: 3.2rem;
    transform: rotate(180deg); }

.moverLine .line {
  position: relative;
  background-image: linear-gradient(90deg, #000000, #000000);
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 100% 1px;
  transition: lineMove 0.2s ease-out; }

@media screen and (min-width: 751px) {
  /* mover */
  .mover {
    transition: opacity 0.2s ease-out;
    backface-visibility: hidden;
    zoom: 1; }
    .mover:hover {
      opacity: 0.7; }

  .moverContent > * {
    transition: opacity 0.2s ease-out;
    backface-visibility: hidden;
    zoom: 1; }
  .moverContent:hover > * {
    opacity: 0.7; } }
.modePC,
.modePCib {
  display: none; }
  .modePC.important,
  .modePCib.important {
    display: none !important; }

.modeSP {
  display: block; }
  .modeSP.important {
    display: block !important; }

.modeSPib {
  display: inline-block; }
  .modeSPib.important {
    display: inline-block !important; }

@media screen and (min-width: 751px) {
  .modePC {
    display: block; }
    .modePC.important {
      display: block !important; }

  .modePCib {
    display: inline-block; }
    .modePCib.important {
      display: inline-block !important; }

  .modeSP,
  .modeSPib {
    display: none; }
    .modeSP.important,
    .modeSPib.important {
      display: none !important; } }
@keyframes bgloop {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 195px 0; } }
@keyframes move {
  0% {
    transform: translateY(0); }
  50% {
    transform: translateY(-30px); }
  100% {
    transform: translateY(0); } }
@keyframes elasticus {
  0% {
    transform-origin: 0% 0%;
    transform: scale(1, 0); }
  50% {
    transform-origin: 0% 0%;
    transform: scale(1, 1); }
  50.1% {
    transform-origin: 0% 100%;
    transform: scale(1, 1); }
  100% {
    transform-origin: 0% 100%;
    transform: scale(1, 0); } }
@keyframes lineMove {
  0% {
    background-size: 0 2px; }
  50% {
    background-size: 0 2px; }
  100% {
    background-size: 100% 2px; } }
@keyframes wave {
  0% {
    transform: scale(0.95);
    opacity: 1; }
  90% {
    opacity: .1; }
  100% {
    transform: scale(1.2, 1.4);
    opacity: 0; } }
@keyframes blink {
  0% {
    opacity: 1; }
  15% {
    opacity: 1; }
  48% {
    opacity: 0; }
  52% {
    opacity: 0; }
  85% {
    opacity: 1; }
  100% {
    opacity: 1; } }
@keyframes blink2 {
  0% {
    opacity: 1; }
  10% {
    opacity: 0.7; }
  20% {
    opacity: 1; }
  30% {
    opacity: 0.7; }
  40% {
    opacity: 1; }
  100% {
    opacity: 1; } }
@keyframes bound {
  0% {
    opacity: 0;
    transform: scale(0); }
  15% {
    opacity: 1;
    transform: scale(1.04); }
  30% {
    transform: scale(0.98); }
  45% {
    opacity: 1;
    transform: scale(1); }
  100% {
    opacity: 1;
    transform: scale(1); } }
@keyframes fade {
  0% {
    opacity: 0;
    transform: translateY(2rem); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
.wrapper {
  transition: opacity 0.3s; }
  .load_complete .wrapper {
    opacity: 1; }

#main {
  overflow: hidden; }

.contentInner {
  width: calc(650 / 750 * 100%);
  margin: auto; }

.scrollPosition {
  margin-top: calc(-310 / 750 * 100%) !important;
  padding-top: calc(310 / 750 * 100%) !important; }

.tabContent {
  display: none;
  margin-top: calc(-310 / 750 * 100%) !important;
  padding-top: calc(310 / 750 * 100%) !important; }
  .tabContent.current {
    display: block; }

.fadeContent {
  opacity: 0;
  transform: translateY(50px);
  transition: all 0.4s ease;
  will-change: transform, opacity; }

.fadeContent.current {
  opacity: 1;
  transform: translateY(0); }

#stage #scene1,
#stage #scene2 {
  display: none; }

@media screen and (min-width: 751px) {
  #stage {
    display: grid;
    grid-template-areas: "scene1 mainContents scene2";
    grid-template-columns: 1fr 550px 1fr;
    position: relative; }
    #stage #scene1 {
      overflow: hidden;
      display: block;
      grid-area: scene1;
      position: sticky;
      top: 0;
      z-index: 2;
      height: 100vh; }
      #stage #scene1 .bg {
        overflow: hidden;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        width: calc(1600 / 685 * 100%);
        min-width: 100%;
        min-height: 100%;
        background: url(../images/common/bg_stage_left.png) left center no-repeat;
        background-size: auto 100%; }
      #stage #scene1 .logo {
        display: none;
        align-items: center;
        position: relative;
        z-index: 10;
        width: 80%;
        max-width: 436px;
        height: 100vh;
        margin: 0 0 0 3.4vw;
        padding: 2.8vh 0 0 0;
        box-sizing: border-box; }
    #stage #scene2 {
      overflow: hidden;
      display: block;
      grid-area: scene2;
      position: sticky;
      top: 0;
      height: 100vh; }
      #stage #scene2 .bg {
        overflow: hidden;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        width: calc(1600 / 685 * 100%);
        min-width: 100%;
        min-height: 100%;
        background: url(../images/common/bg_stage_right.png) right center no-repeat;
        background-size: auto 100%; }
      #stage #scene2 .menuWrap {
        display: none;
        align-items: center;
        position: relative;
        z-index: 10;
        width: 80%;
        max-width: 230px;
        height: 100vh;
        margin: 0 0 0 3.9vw; }
        #stage #scene2 .menuWrap .menu .list {
          position: relative;
          z-index: 2;
          padding: 4vh 0 0 0; }
      #stage #scene2 .parts {
        display: none;
        align-items: flex-end;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        z-index: 2;
        width: 80%;
        max-width: 304px;
        height: 100vh;
        margin: 0 auto 0 5.5vw;
        padding: 0 0 27vh 0;
        box-sizing: border-box; } }
@media screen and (min-width: 1150px) {
  #stage #scene1 .logo {
    display: flex; }
  #stage #scene2 .menuWrap {
    display: flex; } }
/* maincCntents */
#maincCntents {
  background-color: #f9bf3d; }

@media screen and (min-width: 751px) {
  #maincCntents {
    position: relative;
    z-index: 50;
    max-width: 550px;
    margin: auto; }
    #maincCntents:before, #maincCntents:after {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      right: 100%;
      z-index: 20;
      width: 15px;
      filter: drop-shadow(0 0 15px rgba(0, 0, 0, 0.35));
      background: linear-gradient(to left, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
      will-change: filter; }
    #maincCntents:after {
      left: 100%;
      right: auto;
      background: linear-gradient(to right, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0)); } }
#header {
  position: relative;
  top: 0;
  left: 0;
  right: 0; }
  #header #head {
    position: relative;
    z-index: 1000;
    background-color: #ffffff; }

#footer {
  padding: 0; }
  #footer .content {
    position: relative;
    color: #ffffff;
    background: linear-gradient(to bottom, #e5003a 0%, #f9bf3d 100%);
    padding: calc(39 / 375 * 100%) 0 calc(70 / 375 * 100%) 0; }
  #footer .contentInner {
    position: relative;
    z-index: 2; }
  #footer .list {
    margin: 0 0 calc(15 / 350 * 100%) 0; }
    #footer .list .item {
      font-size: 2.4rem;
      line-height: 1.17;
      font-weight: 700;
      margin: 0 0 calc(4 / 350 * 100%) 0; }
      #footer .list .item a {
        display: inline-block;
        padding: 0.5em 0; }
  #footer .logo {
    text-align: center;
    margin: 0 0 calc(18 / 350 * 100%) 0; }
    #footer .logo a {
      display: block;
      background: #ffffff;
      padding: calc(7 / 350 * 100%) calc(51 / 350 * 100%); }
  #footer .copy {
    font-size: 2.4rem;
    line-height: 1.17;
    text-align: center; }

@media screen and (min-width: 751px) {
  #footer .list .item {
    font-size: 2rem;
    line-height: 1.2; }
  #footer .copy {
    font-size: 2rem;
    line-height: 1.2; } }
/* loading */
#loading {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000000;
  background-color: #ec663f; }

.ball-pulse-sync > div {
  display: inline-block;
  width: 15px;
  height: 15px;
  background-color: #ffffff;
  margin: 10px;
  border-radius: 100%;
  animation-fill-mode: both; }

.ball-pulse-sync > div:nth-child(1) {
  animation: ball-pulse-sync 0.6s -0.14s infinite ease-in-out; }

.ball-pulse-sync > div:nth-child(2) {
  animation: ball-pulse-sync 0.6s -70ms infinite ease-in-out; }

.ball-pulse-sync > div:nth-child(3) {
  animation: ball-pulse-sync 0.6s 0s infinite ease-in-out; }

@keyframes ball-pulse-sync {
  33% {
    transform: translateY(10px); }
  66% {
    transform: translateY(-10px); }
  100% {
    transform: translateY(0); } }
/* animate */
.animate {
  opacity: 0;
  transform: scale(0.6);
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s; }
  .animate.current {
    opacity: 1;
    transform: scale(1); }

/* titleType01 */
/* toTop */
#toTop {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 50; }
  #toTop a {
    display: block;
    position: absolute;
    bottom: 3rem;
    right: 3rem; }
  #toTop span {
    display: block;
    position: relative;
    width: 7.2rem;
    height: 7.2rem;
    text-indent: -9999em;
    background: url(../images/common/img_totop.png) center center no-repeat;
    background-size: contain;
    box-sizing: border-box; }

@media screen and (min-width: 751px) {
  #toTop {
    max-width: 550px;
    margin: auto; }
    #toTop span {
      width: 70px;
      height: 70px;
      line-height: 70px; } }
/* firstContent */
#firstContent .mv {
  position: relative;
  z-index: 10;
  aspect-ratio: 750 / 1099; }
  #firstContent .mv .bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 3;
    aspect-ratio: 750 / 1099; }
  #firstContent .mv .titleWrap {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    margin: calc(130 / 750 * 100%) 0 0 0; }
    #firstContent .mv .titleWrap .title {
      opacity: 0;
      display: block;
      margin: auto; }
      #firstContent .mv .titleWrap .title.title01 {
        aspect-ratio: 750 / 144; }
      #firstContent .mv .titleWrap .title.title02 {
        aspect-ratio: 750 / 140; }
      #firstContent .mv .titleWrap .title.title03 {
        aspect-ratio: 750 / 139; }
  #firstContent .mv .period {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    margin: calc(549 / 750 * 100%) 0 0 0;
    aspect-ratio: 750 / 75; }
.load_complete #firstContent .mv .titleWrap .title.title01 {
  animation: bound 2s ease forwards 0.6s; }
.load_complete #firstContent .mv .titleWrap .title.title02 {
  animation: bound 2s ease forwards 1.2s; }
.load_complete #firstContent .mv .titleWrap .title.title03 {
  animation: bound 2s ease forwards 1.8s; }
.load_complete #firstContent .mv .period {
  opacity: 1; }

#innerNav {
  position: relative;
  z-index: 1000;
  margin: calc(-310 / 750 * 100%) 0 0 0;
  aspect-ratio: 750 / 310; }
  #innerNav.fixed .wrap {
    overflow: hidden;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to bottom, #F4913C 0%, #F9BF3D 100%); }
  #innerNav .list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: calc(10 / 750 * 100%) calc(30 / 750 * 100%) 0 calc(30 / 750 * 100%); }
    #innerNav .list .item {
      flex-basis: calc(156.5 / 690 * 100%);
      margin: 0 0 calc(10 / 690 * 100%) 0; }
      #innerNav .list .item a {
        display: block;
        position: relative; }
        #innerNav .list .item a img {
          position: relative;
          z-index: 2; }

@media screen and (min-width: 751px) {
  #innerNav .wrap {
    max-width: 550px;
    margin: auto; } }
/* section */
.section .contentInner {
  position: relative;
  z-index: 2; }
.section .title {
  position: relative;
  z-index: 2;
  font-size: 4.8rem;
  line-height: 1.25;
  font-weight: 700;
  text-align: center;
  padding: calc(129 / 750 * 100%) 0 calc(51 / 750 * 100%) 0; }
  .section .title .small {
    display: block;
    font-size: 3.3rem;
    line-height: 1.52;
    margin: 0 0 calc(10 / 750 * 100%) 0; }
.section .list.shadow .item {
  box-shadow: 0 -5px 5px rgba(0, 0, 0, 0.5); }
  .section .list.shadow .item:first-child {
    box-shadow: none; }
.section .list .item .balloon {
  width: calc(650 / 750 * 100%);
  margin: auto; }
.section .list .item .banner {
  position: relative;
  width: calc(650 / 750 * 100%);
  margin: auto; }
.section .list .item .text {
  width: calc(650 / 750 * 100%);
  font-size: 2.4rem;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: -0.04em;
  margin: auto;
  padding: calc(23 / 750 * 100%) 0; }
.section .list .item .image {
  width: calc(650 / 750 * 100%);
  margin: auto;
  padding: 0 0 calc(49 / 750 * 100%) 0; }
  .section .list .item .image.pb0 {
    padding-bottom: 0; }
  .section .list .item .image.wide {
    width: 100%; }
.section .list .item .info {
  width: calc(650 / 750 * 100%);
  margin: auto;
  padding: calc(14 / 650 * 100%) 0 calc(39 / 650 * 100%) 0; }
  .section .list .item .info .row {
    display: flex;
    font-size: 2.4rem;
    line-height: 1.5;
    font-weight: 700; }
    .section .list .item .info .row .head {
      flex-shrink: 0; }
  .section .list .item .info .note {
    font-size: 2.2rem;
    line-height: 1.27; }
.section .more {
  width: calc(530 / 750 * 100%);
  margin: auto;
  padding: calc(60 / 750 * 100%) 0 calc(116 / 750 * 100%) 0; }
  .section .more.pt {
    padding-top: calc(50 / 750 * 100%); }
.section .soonArea {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(686 / 750 * 100%);
  text-align: center;
  margin: calc(50 / 750 * 100%) auto calc(100 / 750 * 100%) auto;
  aspect-ratio: 686 / 350; }
  .section .soonArea .inner .date {
    font-size: 4.8rem;
    line-height: 1.5;
    font-weight: 700; }
  .section .soonArea .inner .public {
    color: #c80000;
    font-size: 10rem;
    line-height: 1.07;
    font-weight: 700; }

/* pokemon */
#pokemon .content {
  color: #ffffff;
  background-color: #f0828c; }
#pokemon .list {
  padding: calc(166 / 750 * 100%) 0 calc(7 / 750 * 100%) 0; }
  #pokemon .list .item .text {
    padding: calc(49 / 750 * 100%) 0 calc(20 / 750 * 100%) 0; }
  #pokemon .list .item .info {
    padding: calc(14 / 650 * 100%) 0 calc(47 / 650 * 100%) 0; }
    #pokemon .list .item .info .head .justify {
      display: inline-block;
      width: 3em; }
#pokemon .detail {
  position: relative;
  width: calc(686 / 750 * 100%);
  background-color: #aaf0ff;
  margin: 0 auto calc(50 / 750 * 100%) auto;
  padding: calc(115 / 750 * 100%) 0 calc(78 / 750 * 100%) 0; }
  #pokemon .detail:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: url(../images/common/bg_pokemon_detail_top.png) center top no-repeat;
    background-size: contain;
    aspect-ratio: 1372 / 260; }
  #pokemon .detail:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(../images/common/bg_pokemon_detail_bottom.png) center bottom no-repeat;
    background-size: contain;
    aspect-ratio: 1372 / 148; }
  #pokemon .detail .event {
    position: relative;
    z-index: 2;
    width: calc(650 / 686 * 100%);
    margin: auto; }
    #pokemon .detail .event:nth-child(2) .info .desc, #pokemon .detail .event:nth-child(3) .info .desc {
      padding-top: calc(20 / 630 * 100%); }
    #pokemon .detail .event .info {
      width: calc(630 / 650 * 100%);
      color: #000000;
      padding: calc(14 / 650 * 100%) 0 calc(24 / 650 * 100%) 0; }
      #pokemon .detail .event .info .row .head .justify {
        display: inline-block;
        width: 3em; }
      #pokemon .detail .event .info .desc {
        font-size: 2.4rem;
        line-height: 1.5;
        font-weight: 700; }
      #pokemon .detail .event .info .note {
        font-size: 2rem;
        line-height: 1.8;
        font-weight: 700; }

/* point */
#point .content {
  background: #5eb7e8; }
#point .text {
  width: calc(650 / 750 * 100%);
  font-size: 2.2rem;
  line-height: 1.36;
  font-weight: 700;
  margin: auto;
  padding: 0 0 calc(40 / 750 * 100%) 0; }
#point .guide {
  width: calc(650 / 750 * 100%);
  font-size: 2.6rem;
  line-height: 1.62;
  font-weight: 700;
  text-align: center;
  margin: auto;
  padding: calc(30 / 750 * 100%) 0 calc(39 / 750 * 100%) 0; }
#point .banner {
  width: calc(650 / 750 * 100%);
  margin: auto;
  padding: calc(83 / 750 * 100%) 0 calc(19 / 750 * 100%) 0; }
#point .image {
  width: calc(650 / 750 * 100%);
  margin: auto;
  padding: 0 0 calc(49 / 750 * 100%) 0; }
#point .list {
  padding: 0 0 calc(7 / 750 * 100%) 0; }
  #point .list .item .image {
    padding: 0 0 calc(28 / 750 * 100%) 0; }
#point .check .guide {
  padding: calc(21 / 750 * 100%) 0 calc(32 / 750 * 100%) 0; }
#point .check .banner {
  padding: 0 0 calc(48 / 750 * 100%) 0; }
#point .soonArea {
  background-color: #aedbf3; }

/* sale */
#sale .content {
  background: #fdd108; }
#sale .title {
  padding: calc(86 / 750 * 100%) 0 calc(26 / 750 * 100%) 0; }
#sale .headline {
  font-size: 4.8rem;
  line-height: 1;
  font-weight: 700;
  text-align: center;
  padding: calc(89 / 750 * 100%) 0 calc(56 / 750 * 100%) 0; }
#sale .list {
  padding: 0 0 calc(7 / 750 * 100%) 0; }
  #sale .list .item .image {
    padding: calc(40 / 750 * 100%) 0 0 0; }
  #sale .list .item .row {
    width: calc(686 / 750 * 100%);
    margin: auto; }
    #sale .list .item .row .head {
      color: #ffffff;
      font-size: 3rem;
      line-height: 1;
      font-weight: 700;
      background-color: #6a3906;
      padding: 1.1rem 1rem 0.9rem 1.5rem; }
    #sale .list .item .row .cont {
      color: #6a3906;
      font-size: 2.5rem;
      line-height: 1.44;
      font-weight: 700;
      padding: calc(10 / 686 * 100%) 0; }
#sale .soonArea {
  background-color: #fedf52; }

/* event */
#event .content {
  background: #f2e1e7; }
#event .title {
  padding: calc(70 / 750 * 100%) 0 calc(27 / 750 * 100%) 0; }
#event .list {
  padding: 0 0 calc(7 / 750 * 100%) 0; }
  #event .list .item {
    position: relative; }
    #event .list .item.soon:before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      z-index: 10;
      width: calc(650 / 750 * 100%);
      background: url(../images/common/text_soon.png) left top no-repeat;
      background-size: contain;
      aspect-ratio: 650 / 142; }
    #event .list .item .image {
      padding: 0 0 calc(2 / 750 * 100%) 0; }
    #event .list .item .banner {
      padding: calc(171 / 750 * 100%) 0 0 0; }
    #event .list .item .info {
      padding-bottom: calc(24 / 650 * 100%); }
      #event .list .item .info .head .justify {
        display: inline-block;
        width: 4em; }

/* md */
#md .content {
  background: #c6ab7d; }
#md .title {
  padding: calc(73 / 750 * 100%) 0 calc(24 / 750 * 100%) 0; }
#md .desc {
  width: calc(650 / 750 * 100%);
  font-size: 2.4rem;
  line-height: 1.5;
  font-weight: 700;
  margin: auto; }
  #md .desc.center {
    width: 100%;
    text-align: center; }
#md .block.shadow {
  box-shadow: 0 -5px 5px rgba(0, 0, 0, 0.5); }
#md .block .category {
  text-align: center;
  padding: calc(70 / 750 * 100%) 0 calc(45 / 750 * 100%) 0; }
  #md .block .category span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(270 / 750 * 100%);
    height: 6rem;
    font-size: 3.3rem;
    line-height: 1;
    font-weight: 700;
    background-color: #ffffff;
    margin: auto;
    padding: 0.1em 0 0 0;
    border-radius: 3rem; }
#md .block .slideWrap {
  padding: 0 0 calc(151 / 750 * 100%) 0; }
  #md .block .slideWrap .slide .item {
    background-color: #ffffff;
    margin: 0 3.2rem;
    border-radius: 1rem; }
    #md .block .slideWrap .slide .item.type01 {
      position: relative; }
      #md .block .slideWrap .slide .item.type01 .wrap .badge {
        width: calc(205 / 686 * 100%);
        margin: 0 calc(37 / 686 * 100%) calc(33 / 686 * 100%) 0; }
      #md .block .slideWrap .slide .item.type01 .textWrap {
        width: calc(380 / 686 * 100%);
        margin: 0 calc(25 / 686 * 100%); }
    #md .block .slideWrap .slide .item.type02 .wrap {
      position: relative; }
      #md .block .slideWrap .slide .item.type02 .wrap .badge {
        width: calc(182 / 636 * 100%);
        margin: 0 calc(25 / 636 * 100%) calc(-20 / 636 * 100%) 0; }
        #md .block .slideWrap .slide .item.type02 .wrap .badge.badge1 {
          width: calc(205 / 636 * 100%);
          margin: 0 calc(35 / 636 * 100%) calc(63 / 636 * 100%) 0; }
        #md .block .slideWrap .slide .item.type02 .wrap .badge.badge2 {
          width: calc(182 / 636 * 100%);
          margin: 0 calc(-20 / 636 * 100%) calc(-108 / 636 * 100%) 0; }
    #md .block .slideWrap .slide .item.type03 {
      position: relative; }
      #md .block .slideWrap .slide .item.type03 .wrap .badge {
        width: calc(205 / 686 * 100%);
        margin: 0 calc(37 / 686 * 100%) calc(32 / 686 * 100%) 0; }
      #md .block .slideWrap .slide .item.type03 .textWrap {
        width: calc(380 / 686 * 100%);
        margin: 0 calc(25 / 686 * 100%); }
    #md .block .slideWrap .slide .item .wrap {
      display: flex;
      justify-content: space-between;
      width: calc(636 / 686 * 100%);
      margin: auto;
      padding: calc(25 / 686 * 100%) 0 0 0; }
      #md .block .slideWrap .slide .item .wrap .imageWrap {
        flex-basis: calc(380 / 636 * 100%); }
      #md .block .slideWrap .slide .item .wrap .shop {
        flex-basis: calc(240 / 636 * 100%);
        font-weight: 700; }
        #md .block .slideWrap .slide .item .wrap .shop .name {
          font-size: 2.4rem;
          line-height: 1.5;
          letter-spacing: -0.04em;
          padding: 0.8rem 0 0 0; }
        #md .block .slideWrap .slide .item .wrap .shop .place {
          font-size: 2.2rem;
          line-height: 1.45;
          letter-spacing: -0.04em; }
      #md .block .slideWrap .slide .item .wrap .badge {
        position: absolute;
        bottom: 0;
        right: 0;
        width: calc(182 / 636 * 100%); }
    #md .block .slideWrap .slide .item .textWrap {
      width: calc(636 / 686 * 100%);
      font-size: 2.7rem;
      line-height: 1.33;
      font-weight: 700;
      letter-spacing: -0.04rem;
      margin: auto;
      padding: calc(15 / 686 * 100%) 0 calc(25 / 686 * 100%) 0; }
      #md .block .slideWrap .slide .item .textWrap .price {
        text-align: right;
        padding: 0.9rem 0 0 0; }
        #md .block .slideWrap .slide .item .textWrap .price.left {
          text-align: left; }
      #md .block .slideWrap .slide .item .textWrap .intro {
        font-size: 2.2rem;
        line-height: 1.5;
        padding: 0.9rem 0 0 0; }

/* shop */
#shop .content {
  background: #9fd9f6; }
#shop .title {
  width: calc(450 / 750 * 100%);
  margin: auto;
  padding: calc(68 / 750 * 100%) 0 calc(0 / 750 * 100%) 0; }
#shop .list {
  padding: 0 0 calc(7 / 750 * 100%) 0; }
  #shop .list .item .date {
    font-size: 5rem;
    line-height: 1.2;
    font-weight: 700;
    text-align: center;
    padding: calc(29 / 750 * 100%) 0 calc(5 / 750 * 100%) 0; }
  #shop .list .item .wrap {
    display: flex;
    justify-content: space-between;
    width: calc(686 / 750 * 100%);
    margin: auto;
    padding: calc(25 / 750 * 100%) 0 0 0; }
    #shop .list .item .wrap .imageWrap {
      width: calc(340 / 686 * 100%); }
      #shop .list .item .wrap .imageWrap .image {
        width: 100%;
        padding: 0; }
      #shop .list .item .wrap .imageWrap .slideWrap {
        width: 100%;
        margin: 0 0 3.8rem 0; }
        #shop .list .item .wrap .imageWrap .slideWrap .slide .slick-dots {
          top: calc(100% + 1.5rem); }
          #shop .list .item .wrap .imageWrap .slideWrap .slide .slick-dots li {
            flex-basis: 5.7rem; }
            #shop .list .item .wrap .imageWrap .slideWrap .slide .slick-dots li button {
              background-color: #fff100; }
            #shop .list .item .wrap .imageWrap .slideWrap .slide .slick-dots li button:hover, #shop .list .item .wrap .imageWrap .slideWrap .slide .slick-dots li.slick-active button {
              background-color: #006d94; }
    #shop .list .item .wrap .shop {
      flex-basis: calc(327 / 686 * 100%);
      flex-shrink: 0;
      font-weight: 700; }
      #shop .list .item .wrap .shop .name {
        font-size: 2.8rem;
        line-height: 1.29;
        letter-spacing: -0.04em;
        padding: 2.9rem 0 0 0; }
      #shop .list .item .wrap .shop .place {
        font-size: 2.1rem;
        line-height: 1.71;
        letter-spacing: -0.04em; }
  #shop .list .item .textWrap {
    width: calc(686 / 750 * 100%);
    font-weight: 700;
    margin: auto;
    padding: 0 0 calc(15 / 686 * 100%) 0; }
    #shop .list .item .textWrap .intro {
      font-size: 2.2rem;
      line-height: 1.64;
      padding: 0.9rem 0 0 0; }
#shop .map {
  width: calc(686 / 750 * 100%);
  margin: auto;
  padding: calc(50 / 750 * 100%) 0 calc(57 / 750 * 100%) 0; }

/* access */
#access .content {
  background: #bbaad2; }
#access .title {
  padding: calc(88 / 750 * 100%) 0 0 0; }
#access .section {
  box-shadow: 0 -5px 5px rgba(0, 0, 0, 0.5); }
  #access .section.access01 {
    box-shadow: none; }
    #access .section.access01 .sectionTitle {
      padding: calc(25 / 750 * 100%) 0 calc(39 / 750 * 100%) 0; }
    #access .section.access01 .image {
      width: calc(686 / 750 * 100%);
      margin: auto;
      padding: 0; }
  #access .section.access02 {
    box-shadow: none; }
    #access .section.access02 .sectionTitle {
      padding: calc(53 / 750 * 100%) 0 calc(26 / 750 * 100%) 0; }
  #access .section.access03 .sectionTitle {
    padding: calc(99 / 750 * 100%) 0 calc(48 / 750 * 100%) 0; }
  #access .section.access03 .image {
    padding-bottom: 0; }
  #access .section.access03 .image1 {
    width: calc(686 / 750 * 100%);
    padding-bottom: calc(36 / 750 * 100%); }
  #access .section.access04 .sectionTitle {
    padding: calc(99 / 750 * 100%) 0 calc(25 / 750 * 100%) 0; }
  #access .section.access04 .copy {
    font-size: 3.3rem;
    line-height: 1;
    font-weight: 700;
    text-align: center;
    padding: 0 0 calc(62 / 750 * 100%) 0; }
  #access .section.access04 .image {
    padding: 0 0 calc(21 / 750 * 100%) 0; }
  #access .section.access04 .text {
    padding: 0; }
  #access .section.access05 .sectionTitle {
    padding: calc(115 / 750 * 100%) 0 calc(73 / 750 * 100%) 0; }
  #access .section.access05 .image {
    width: calc(686 / 750 * 100%);
    padding-bottom: calc(99 / 750 * 100%); }
  #access .section.access06 .sectionTitle {
    font-size: 2.5rem;
    line-height: 1.4;
    text-align: center;
    padding: calc(96 / 750 * 100%) 0 calc(21 / 750 * 100%) 0; }
  #access .section.access06 .image {
    padding: 0 0 calc(32 / 750 * 100%) 0; }
  #access .section.access06 .text {
    padding: 0 0 calc(152 / 750 * 100%) 0; }
  #access .section .sectionTitle {
    font-size: 4.8rem;
    line-height: 1;
    font-weight: 700;
    text-align: center;
    padding: calc(42 / 750 * 100%) 0 calc(35 / 750 * 100%) 0; }
  #access .section .text {
    width: calc(650 / 750 * 100%);
    font-size: 2.4rem;
    line-height: 1.5;
    font-weight: 700;
    margin: auto;
    padding: 0 0 calc(27 / 750 * 100%) 0; }
    #access .section .text.center {
      width: 100%;
      text-align: center; }
    #access .section .text.middle {
      font-size: 2rem;
      line-height: 1.6; }
    #access .section .text .price {
      font-size: 2.2rem;
      line-height: 1.59;
      font-weight: 700; }
    #access .section .text .note {
      font-size: 2.2rem;
      line-height: 1.59;
      font-weight: 700; }
  #access .section .link {
    width: calc(650 / 750 * 100%);
    font-size: 2.4rem;
    line-height: 1.5;
    font-weight: 700;
    margin: auto;
    padding: 0 0 calc(14 / 750 * 100%) 0; }
    #access .section .link.center {
      width: 100%;
      text-align: center; }
    #access .section .link a {
      text-decoration: underline; }
  #access .section .image {
    width: calc(650 / 750 * 100%);
    margin: auto;
    padding: 0 0 calc(124 / 750 * 100%) 0; }
  #access .section .row {
    width: calc(650 / 750 * 100%);
    font-size: 2rem;
    line-height: 1.6;
    font-weight: 700;
    margin: auto;
    padding: 0 0 calc(20 / 750 * 100%) 0; }

/* resort */
#resort .content {
  background: #aac467; }
#resort .title {
  padding: calc(79 / 750 * 100%) 0 calc(27 / 750 * 100%) 0; }
#resort .banner {
  margin: 0 0 calc(27 / 650 * 100%) 0; }
#resort .text {
  font-size: 2.4rem;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
  margin: 0 0 calc(35 / 650 * 100%) 0; }
#resort .image {
  margin: 0 0 calc(32 / 650 * 100%) 0; }
#resort .desc {
  font-size: 2.4rem;
  line-height: 1.5;
  font-weight: 700;
  margin: 0 0 calc(35 / 650 * 100%) 0; }
#resort .period {
  font-size: 2.4rem;
  line-height: 1.5;
  font-weight: 700; }

/* other */
#other {
  display: none; }
  #other .content {
    position: relative;
    background-color: #ffffff; }
    #other .content:after {
      content: "";
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      background: linear-gradient(to top, #f9bf3d 0%, #ffffff 100%);
      aspect-ratio: 750 / 386; }
  #other .title {
    padding: calc(114 / 750 * 100%) 0 calc(72 / 750 * 100%) 0; }
  #other .list {
    position: relative;
    z-index: 2; }
    #other .list .item {
      padding: 0 0 calc(58 / 750 * 100%) 0;
      box-shadow: none; }
      #other .list .item#anniversary {
        padding: calc(8 / 750 * 100%) 0 calc(67 / 750 * 100%) 0; }
        #other .list .item#anniversary .image {
          position: relative;
          padding: 0; }
          #other .list .item#anniversary .image.current .shadow {
            opacity: 1; }
          #other .list .item#anniversary .image.current .strWrap .str {
            opacity: 1;
            transform: translateY(0); }
          #other .list .item#anniversary .image .shadow {
            opacity: 0;
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            width: calc(639.5 / 650 * 100%);
            margin: calc(91 / 650 * 100%) 0 0 calc(5 / 650 * 100%);
            transition: opacity 0.4s ease-out 2.0s; }
          #other .list .item#anniversary .image .strWrap {
            overflow: hidden;
            display: flex;
            justify-content: center;
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            width: calc(607 / 650 * 100%);
            margin: calc(105 / 650 * 100%) auto 0 auto; }
            #other .list .item#anniversary .image .strWrap .str {
              opacity: 0;
              transform: translateY(3rem);
              transition: all 0.2s ease-out 0.3s; }
              #other .list .item#anniversary .image .strWrap .str.str1 {
                transition-delay: 0.4s; }
              #other .list .item#anniversary .image .strWrap .str.str2 {
                transition-delay: 0.5s; }
              #other .list .item#anniversary .image .strWrap .str.str3 {
                transition-delay: 0.6s; }
              #other .list .item#anniversary .image .strWrap .str.str4 {
                transition-delay: 0.7s; }
              #other .list .item#anniversary .image .strWrap .str.str5 {
                transition-delay: 0.8s; }
              #other .list .item#anniversary .image .strWrap .str.str6 {
                transition-delay: 0.9s; }
              #other .list .item#anniversary .image .strWrap .str.str7 {
                transition-delay: 1s; }
              #other .list .item#anniversary .image .strWrap .str.str8 {
                transition-delay: 1.1s; }
              #other .list .item#anniversary .image .strWrap .str.str9 {
                transition-delay: 1.2s; }
              #other .list .item#anniversary .image .strWrap .str.str10 {
                transition-delay: 1.3s; }
              #other .list .item#anniversary .image .strWrap .str.str11 {
                transition-delay: 1.4s; }
              #other .list .item#anniversary .image .strWrap .str.str12 {
                transition-delay: 1.5s; }
              #other .list .item#anniversary .image .strWrap .str.str13 {
                transition-delay: 1.6s; }
              #other .list .item#anniversary .image .strWrap .str.str14 {
                transition-delay: 1.7s; }
              #other .list .item#anniversary .image .strWrap .str.str15 {
                transition-delay: 1.8s; }
              #other .list .item#anniversary .image .strWrap .str.str1 {
                width: calc(39 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str2 {
                width: calc(41 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str3 {
                width: calc(28 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str4 {
                width: calc(65 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str5 {
                width: calc(58 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str6 {
                width: calc(47 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str7 {
                width: calc(47 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str8 {
                width: calc(25 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str9 {
                width: calc(42 / 607 * 100%);
                margin-left: calc(-3 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str10 {
                width: calc(37 / 607 * 100%);
                margin-left: calc(-4 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str11 {
                width: calc(35 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str12 {
                width: calc(32 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str13 {
                width: calc(41 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str14 {
                width: calc(34 / 607 * 100%); }
              #other .list .item#anniversary .image .strWrap .str.str15 {
                width: calc(43 / 607 * 100%); }
      #other .list .item .image {
        padding: calc(20 / 750 * 100%) 0 0 0; }

.bottom {
  background: url(../images/common/bg_bottom.png) center top no-repeat;
  background-size: cover; }



