@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(12vw / 7.5);
  -webkit-font-smoothing: antialiased; }

body {
  color: #231815;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  font-size: 1.4rem;
  line-height: 1;
  background-color: #48a7d8;
  -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; }

.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: flex-end;
  position: absolute;
  top: calc(100% + 1.3rem);
  left: 0;
  right: 0; }
  .slide .slick-dots li {
    overflow: hidden;
    flex-basis: 4rem;
    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: 2px;
      text-indent: -9999em;
      background-color: #cccccc;
      transition: background-color 0.2s ease-out; }
    .slide .slick-dots li button:hover, .slide .slick-dots li.slick-active button {
      background-color: #29abe2; }
.slide .slick-arrow {
  cursor: pointer;
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 10;
  width: 2rem;
  height: 3rem;
  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/icon_arrow.svg) center center no-repeat;
  background-size: contain; }
  .slide .slick-arrow.slick-prev {
    left: 1.1rem; }
  .slide .slick-arrow.slick-next {
    right: 1.1rem;
    transform: rotate(180deg); }

.moverLine .line {
  position: relative;
  background-image: linear-gradient(90deg, #231815, #231815);
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 100% 1px;
  transition: lineMove 0.2s ease-out; }

@media screen and (min-width: 751px) {
  .slide .slick-dots {
    top: calc(100% + 16px); }
    .slide .slick-dots li {
      flex-basis: 20px;
      margin: 0 3px 0 0; }
      .slide .slick-dots li button {
        width: 20px;
        height: 3px; }
  .slide .slick-arrow {
    width: 4rem;
    height: 4rem; }
    .slide .slick-arrow.slick-prev {
      left: 0.6rem; }
    .slide .slick-arrow.slick-next {
      right: 0.6rem; }

  /* 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(-104 / 750 * 100%) !important;
  padding-top: calc(104 / 750 * 100%) !important; }

.tabContent {
  display: none;
  margin-top: calc(-104 / 750 * 100%) !important;
  padding-top: calc(104 / 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 {
      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(913 / 685 * 100%);
        min-width: 100%;
        min-height: 100%;
        background: url(../images/common/bg_stage_left.png) left center no-repeat;
        background-size: cover; }
      #stage #scene1 .logo {
        display: none;
        align-items: center;
        position: relative;
        z-index: 10;
        width: 80%;
        max-width: 297px;
        height: 100vh;
        margin: 0 3.5vw 0 auto;
        padding: 0 0 5.5vh 0;
        box-sizing: border-box; }
    #stage #scene2 {
      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(913 / 685 * 100%);
        min-width: 100%;
        min-height: 100%;
        background: url(../images/common/bg_stage_right.png) right center no-repeat;
        background-size: cover; }
      #stage #scene2 .menuWrap {
        display: none;
        align-items: center;
        position: relative;
        z-index: 10;
        width: 80%;
        max-width: 185px;
        height: 100vh;
        margin: 0 0 0 2.3vw; }
        #stage #scene2 .menuWrap .menu .list {
          position: relative;
          z-index: 2;
          padding: 7vh 0 0 0; }
          #stage #scene2 .menuWrap .menu .list .item {
            margin: 0 0 1.25vh 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: 1000px) {
  #stage #scene2 .menuWrap {
    display: flex; } }
@media screen and (min-width: 1150px) {
  #stage #scene1 .logo {
    display: flex; } }
@media screen and (min-width: 1250px) {
  #stage #scene2 .parts {
    display: flex; } }
/* maincCntents */
#maincCntents {
  background-color: #48a7d8; }

@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;
    padding: calc(39 / 375 * 100%) 0 calc(10 / 375 * 100%) 0; }
    #footer .content.bg {
      background: #ffffff;
      padding: calc(33/ 375 * 100%) 0 calc(55 / 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: #48a7d8; }

.ball-pulse-sync > div {
  display: inline-block;
  width: 15px;
  height: 15px;
  background-color: #004491;
  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; } }
/* soon */
.soon {
  position: relative; }
  .soon[data-date="7/13"].open:after {
    content: "4/24より公開​"; }
  .soon[data-date="7/13"]:after {
    content: "7/13(月)\A情報公開​"; }
  .soon[data-date="7/17"]:after {
    content: "7/17(金)応募開始​"; }
  .soon:after {
    content: "";
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: -1rem;
    bottom: -1rem;
    left: -1rem;
    right: -1rem;
    color: #231815;
    font-size: 4.2rem;
    line-height: 1.43;
    background-color: rgba(181, 181, 181, 0.5);
    -webkit-text-stroke: 5px #ffffff;
    text-stroke: 5px #ffffff;
    paint-order: stroke;
    white-space: pre; }

/* firstContent */
#firstContent .mv {
  position: relative;
  z-index: 10;
  aspect-ratio: 750 / 900; }
  #firstContent .mv .bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 3;
    aspect-ratio: 750 / 900; }
  #firstContent .mv .titleWrap {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    margin: calc(123 / 750 * 100%) 0 0 0; }
    #firstContent .mv .titleWrap .title {
      opacity: 0;
      display: block;
      margin: auto; }
      #firstContent .mv .titleWrap .title.title01 {
        transform: translateY(2rem);
        aspect-ratio: 750 / 92;
        transition: all 0.4s ease-out;
        transition-delay: 1.9s; }
      #firstContent .mv .titleWrap .title.title02 {
        transform: scale(0);
        aspect-ratio: 750 / 131;
        transition: all 0.4s ease-out;
        transition-delay: 1.5s; }
      #firstContent .mv .titleWrap .title.title03 {
        transform: translateY(2rem);
        aspect-ratio: 750 / 75;
        transition: all 0.4s ease-out;
        transition-delay: 2.3s; }
      #firstContent .mv .titleWrap .title.title04 {
        transform: translateY(2rem);
        aspect-ratio: 750 / 82;
        transition: all 0.4s ease-out;
        transition-delay: 2.7s; }
#firstContent .content {
  color: #004491;
  text-align: center;
  background: url(../images/common/bg_intro.png) center top no-repeat;
  background-size: cover;
  padding: calc(50 / 750 * 100%) 0 calc(180 / 750 * 100%) 0; }
  #firstContent .content .copy {
    font-size: 4rem;
    line-height: 1.35;
    font-weight: 700;
    margin: 0 0 calc(30 / 750 * 100%) 0; }
  #firstContent .content .text {
    font-size: 2.2rem;
    line-height: 1.45;
    font-weight: 700; }
.load_complete #firstContent .mv .titleWrap .title {
  opacity: 1; }
  .load_complete #firstContent .mv .titleWrap .title.title01 {
    transform: translateY(0); }
  .load_complete #firstContent .mv .titleWrap .title.title02 {
    animation: bound 2s ease forwards 0.6s; }
  .load_complete #firstContent .mv .titleWrap .title.title03 {
    transform: translateY(0); }
  .load_complete #firstContent .mv .titleWrap .title.title04 {
    transform: translateY(0); }

#innerNav {
  position: relative;
  z-index: 1000;
  margin: calc(-104 / 750 * 100%) 0 0 0;
  aspect-ratio: 750 / 104; }
  #innerNav.fixed .wrap {
    overflow: hidden;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background-color: #48a7d8; }
  #innerNav .wrap {
    padding: 0 0 5px 0; }
  #innerNav .list {
    display: flex;
    justify-content: space-between;
    padding: 0 calc(39 / 750 * 100%) 0 calc(39 / 750 * 100%); }
    #innerNav .list[data-tab="3"] .item {
      flex-basis: calc(220 / 672 * 100%); }
    #innerNav .list .item {
      flex-basis: calc(104 / 672 * 100%); }
      #innerNav .list .item:nth-child(1) a.current:before {
        background: #d4115f; }
      #innerNav .list .item:nth-child(2) a.current:before {
        background: #efb815; }
      #innerNav .list .item:nth-child(3) a.current:before {
        background: #004491; }
      #innerNav .list .item:nth-child(4) a.current:before {
        background: #d4115f; }
      #innerNav .list .item:nth-child(5) a.current:before {
        background: #efb815; }
      #innerNav .list .item:nth-child(6) a.current:before {
        background: #004491; }
      #innerNav .list .item a {
        display: block;
        position: relative; }
        #innerNav .list .item a.current:before {
          content: "";
          position: absolute;
          top: 50%;
          bottom: -5px;
          left: 0;
          right: 0;
          z-index: 1; }
        #innerNav .list .item a:after {
          content: "";
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0;
          right: 0;
          border-radius: 2rem;
          box-shadow: 0 0 6px rgba(0, 0, 0, 0.4); }
        #innerNav .list .item a img {
          position: relative;
          z-index: 2; }

@media screen and (min-width: 751px) {
  #innerNav .wrap {
    max-width: 550px;
    margin: auto;
    padding-left: 18.3px;
    padding-right: 18.3px;
    box-sizing: border-box; } }
/* calendar */
.calendarArea .calendarTitle {
  position: relative;
  z-index: 2;
  font-size: 3.5rem;
  line-height: 1;
  font-weight: 700;
  text-align: center;
  padding: calc(60 / 750 * 100%) 0 calc(20 / 750 * 100%) 0; }
.calendarArea .calendarWrap {
  padding: 0 0 calc(68 / 650 * 100%) 0; }
  .calendarArea .calendarWrap .calendar {
    overflow: hidden;
    overflow-x: auto; }
    .calendarArea .calendarWrap .calendar .simplebar-track.simplebar-horizontal {
      height: 2.6rem;
      background-color: #ffffff;
      border-radius: 1.5rem; }
    .calendarArea .calendarWrap .calendar .simplebar-scrollbar {
      top: 0;
      height: 2.6rem;
      background-color: #d20000;
      border-radius: 1.5rem; }
      .calendarArea .calendarWrap .calendar .simplebar-scrollbar:before {
        height: 2.6rem;
        background-color: #d20000;
        border-radius: 1.5rem; }
    .calendarArea .calendarWrap .calendar .table {
      width: calc(9.2rem * 53 + 2px);
      background-color: #ffffff;
      margin: 0 0 7rem 0; }
      .calendarArea .calendarWrap .calendar .table .month {
        display: flex;
        justify-content: flex-start;
        border-left: 2px solid #0078ff;
        border-right: 2px solid #e83743; }
        .calendarArea .calendarWrap .calendar .table .month .cell {
          display: flex;
          align-items: center;
          justify-content: flex-start;
          flex-basis: 100%; }
          .calendarArea .calendarWrap .calendar .table .month .cell.month7 {
            flex-basis: calc(22 / 53 * 100%);
            background: linear-gradient(to right, #0078ff 0%, #0096ff 100%); }
          .calendarArea .calendarWrap .calendar .table .month .cell.month8 {
            flex-basis: calc(31 / 53 * 100%);
            background: linear-gradient(to right, #d70000 0%, #e83743 100%); }
          .calendarArea .calendarWrap .calendar .table .month .cell .num {
            width: 9rem;
            margin: 0; }
      .calendarArea .calendarWrap .calendar .table .wrap {
        position: relative;
        border-bottom: 2px solid #f9c158; }
      .calendarArea .calendarWrap .calendar .table .day {
        display: flex;
        justify-content: space-between;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        border-left: 2px solid #f9c158; }
        .calendarArea .calendarWrap .calendar .table .day .cell {
          display: flex;
          align-items: flex-start;
          justify-content: center;
          flex-basis: calc(1 / 53 * 100%);
          border-right: 2px solid #f9c158;
          box-sizing: border-box; }
          .calendarArea .calendarWrap .calendar .table .day .cell.sunday {
            background-color: #fbe6ef; }
          .calendarArea .calendarWrap .calendar .table .day .cell.saturday {
            background-color: #eaf6fd; }
          .calendarArea .calendarWrap .calendar .table .day .cell.holiday {
            background-color: #fbe6ef; }
          .calendarArea .calendarWrap .calendar .table .day .cell .num {
            height: 6.7rem;
            border-bottom: 2px solid #f9c158;
            box-sizing: border-box; }
      .calendarArea .calendarWrap .calendar .table .event {
        position: relative;
        padding: 6.8rem 0 0 0; }
        .calendarArea .calendarWrap .calendar .table .event .cell .num {
          display: none; }
        .calendarArea .calendarWrap .calendar .table .event .band {
          display: flex;
          align-items: center;
          height: 4.8rem;
          color: #ffffff;
          font-size: 2.5rem;
          line-height: 1;
          font-weight: 700;
          letter-spacing: 0.1rem;
          background-color: #e83743;
          margin: 1.5rem 0;
          padding: 0.4rem 0 0 2rem;
          box-sizing: border-box; }
          .calendarArea .calendarWrap .calendar .table .event .band.band02 {
            background: linear-gradient(to right, #0078ff 0%, #0096ff 100%); }
          .calendarArea .calendarWrap .calendar .table .event .band.band03 {
            background-color: #009086; }
        .calendarArea .calendarWrap .calendar .table .event .period {
          margin: 1.5rem 0; }
          .calendarArea .calendarWrap .calendar .table .event .period.period01 {
            width: calc(31 / 53 * 100%);
            margin-left: calc(7 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period02 {
            width: calc(4 / 53 * 100%);
            margin-left: calc(7 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period03 {
            position: absolute;
            top: 0;
            left: 0;
            width: calc(2 / 53 * 100%);
            margin-top: calc(6.7rem + (1.5rem  + 4.8rem) * 2 + 1.5rem);
            margin-left: calc(15 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period04 {
            width: calc(2 / 53 * 100%);
            margin-left: calc(43 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period05 {
            position: absolute;
            top: 0;
            left: 0;
            width: calc(2 / 53 * 100%);
            margin-top: calc(6.7rem + (1.5rem  + 4.8rem) * 3 + 1.5rem);
            margin-left: calc(50 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period06 {
            width: calc(2 / 53 * 100%);
            margin-left: calc(1 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period07 {
            position: absolute;
            top: 0;
            left: 0;
            width: calc(3 / 53 * 100%);
            margin-top: calc(6.7rem + (1.5rem  + 4.8rem) * 4 + 1.5rem);
            margin-left: calc(8 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period08 {
            position: absolute;
            top: 0;
            left: 0;
            width: calc(2 / 53 * 100%);
            margin-top: calc(6.7rem + (1.5rem  + 4.8rem) * 4 + 1.5rem);
            margin-left: calc(15 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period09 {
            position: absolute;
            top: 0;
            left: 0;
            width: calc(2 / 53 * 100%);
            margin-top: calc(6.7rem + (1.5rem  + 4.8rem) * 4 + 1.5rem);
            margin-left: calc(22 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period10 {
            position: absolute;
            top: 0;
            left: 0;
            width: calc(9 / 53 * 100%);
            margin-top: calc(6.7rem + (1.5rem  + 4.8rem) * 4 + 1.5rem);
            margin-left: calc(29 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period11 {
            position: absolute;
            top: 0;
            left: 0;
            width: calc(2 / 53 * 100%);
            margin-top: calc(6.7rem + (1.5rem  + 4.8rem) * 4 + 1.5rem);
            margin-left: calc(43 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period12 {
            position: absolute;
            top: 0;
            left: 0;
            width: calc(2 / 53 * 100%);
            margin-top: calc(6.7rem + (1.5rem  + 4.8rem) * 4 + 1.5rem);
            margin-left: calc(50 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period13 {
            width: calc(9 / 53 * 100%);
            margin-left: calc(29 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period14 {
            width: calc(14 / 53 * 100%);
            margin-left: calc(39 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period24 {
            width: calc(2 / 53 * 100%);
            margin-left: calc(22 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period15 {
            position: absolute;
            top: 0;
            left: 0;
            width: calc(9 / 53 * 100%);
            margin-top: calc(6.7rem + (1.5rem  + 4.8rem) * 7 + 1.5rem);
            margin-left: calc(29 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period16 {
            position: absolute;
            top: 0;
            left: 0;
            width: calc(2 / 53 * 100%);
            margin-top: calc(6.7rem + (1.5rem  + 4.8rem) * 7 + 1.5rem);
            margin-left: calc(43 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period17 {
            position: absolute;
            top: 0;
            left: 0;
            width: calc(2 / 53 * 100%);
            margin-top: calc(6.7rem + (1.5rem  + 4.8rem) * 7 + 1.5rem);
            margin-left: calc(50 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period18 {
            width: calc(9 / 53 * 100%);
            margin-left: calc(29 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period19 {
            width: calc(52 / 53 * 100%);
            margin-left: calc(1 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period20 {
            width: calc(8 / 53 * 100%);
            margin-left: calc(29 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period21 {
            position: absolute;
            top: 0;
            left: 0;
            width: calc(2 / 53 * 100%);
            margin-top: calc(6.7rem + (1.5rem  + 4.8rem) * 11 + 1.5rem);
            margin-left: calc(43 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period22 {
            position: absolute;
            top: 0;
            left: 0;
            width: calc(1 / 53 * 100%);
            margin-top: calc(6.7rem + (1.5rem  + 4.8rem) * 11 + 1.5rem);
            margin-left: calc(50 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period.period23 {
            width: calc(52 / 53 * 100%);
            margin-left: calc(1 / 53 * 100%); }
          .calendarArea .calendarWrap .calendar .table .event .period .name {
            display: flex;
            align-items: center;
            position: relative;
            height: 4.8rem;
            color: #000000;
            font-size: 2.2rem;
            line-height: 1;
            font-weight: 700;
            letter-spacing: -0.04rem;
            white-space: nowrap;
            padding: 0.4rem 0 0 1rem;
            box-sizing: border-box; }
            .calendarArea .calendarWrap .calendar .table .event .period .name:before {
              content: "";
              position: absolute;
              top: 0;
              bottom: 0;
              left: 0;
              right: 0;
              background-color: #dcc261;
              clip-path: polygon(0 0, calc(100% - 3rem) 0, 100% 50%, calc(100% - 3rem) 100%, 0 100%); }
            .calendarArea .calendarWrap .calendar .table .event .period .name span {
              position: relative;
              z-index: 2; }

#sale .contentInner,
#event .contentInner,
#shop .contentInner,
#access .contentInner,
#resort .contentInner,
#other .contentInner {
  position: relative;
  z-index: 2; }
#sale .title,
#event .title,
#shop .title,
#access .title,
#resort .title,
#other .title {
  position: relative;
  z-index: 2;
  font-size: 5rem;
  line-height: 1;
  font-weight: 700;
  text-align: center;
  padding: calc(129 / 750 * 100%) 0 calc(51 / 750 * 100%) 0; }
  #sale .title .small,
  #event .title .small,
  #shop .title .small,
  #access .title .small,
  #resort .title .small,
  #other .title .small {
    display: block;
    font-size: 2.2rem;
    line-height: 1.64; }
#sale .list .item,
#event .list .item,
#shop .list .item,
#access .list .item,
#resort .list .item,
#other .list .item {
  box-shadow: 0 -5px 5px rgba(0, 0, 0, 0.5); }
  #sale .list .item:first-child,
  #event .list .item:first-child,
  #shop .list .item:first-child,
  #access .list .item:first-child,
  #resort .list .item:first-child,
  #other .list .item:first-child {
    box-shadow: none; }
  #sale .list .item .balloon,
  #event .list .item .balloon,
  #shop .list .item .balloon,
  #access .list .item .balloon,
  #resort .list .item .balloon,
  #other .list .item .balloon {
    width: calc(650 / 750 * 100%);
    margin: auto; }
  #sale .list .item .banner,
  #event .list .item .banner,
  #shop .list .item .banner,
  #access .list .item .banner,
  #resort .list .item .banner,
  #other .list .item .banner {
    position: relative;
    width: calc(650 / 750 * 100%);
    margin: auto; }
  #sale .list .item .text,
  #event .list .item .text,
  #shop .list .item .text,
  #access .list .item .text,
  #resort .list .item .text,
  #other .list .item .text {
    width: calc(650 / 750 * 100%);
    font-size: 2.2rem;
    line-height: 1.64;
    font-weight: 700;
    letter-spacing: -0.04em;
    margin: auto;
    padding: calc(35 / 750 * 100%) 0; }
  #sale .list .item .image,
  #event .list .item .image,
  #shop .list .item .image,
  #access .list .item .image,
  #resort .list .item .image,
  #other .list .item .image {
    width: calc(650 / 750 * 100%);
    margin: auto;
    padding: 0 0 calc(49 / 750 * 100%) 0; }
    #sale .list .item .image.pb0,
    #event .list .item .image.pb0,
    #shop .list .item .image.pb0,
    #access .list .item .image.pb0,
    #resort .list .item .image.pb0,
    #other .list .item .image.pb0 {
      padding-bottom: 0; }
    #sale .list .item .image.wide,
    #event .list .item .image.wide,
    #shop .list .item .image.wide,
    #access .list .item .image.wide,
    #resort .list .item .image.wide,
    #other .list .item .image.wide {
      width: 100%; }
  #sale .list .item .info,
  #event .list .item .info,
  #shop .list .item .info,
  #access .list .item .info,
  #resort .list .item .info,
  #other .list .item .info {
    width: calc(650 / 750 * 100%);
    margin: auto;
    padding: calc(25 / 650 * 100%) 0 calc(50 / 650 * 100%) 0; }
    #sale .list .item .info .row,
    #event .list .item .info .row,
    #shop .list .item .info .row,
    #access .list .item .info .row,
    #resort .list .item .info .row,
    #other .list .item .info .row {
      display: flex;
      font-size: 2.2rem;
      line-height: 1.64;
      font-weight: 700; }
      #sale .list .item .info .row .head,
      #event .list .item .info .row .head,
      #shop .list .item .info .row .head,
      #access .list .item .info .row .head,
      #resort .list .item .info .row .head,
      #other .list .item .info .row .head {
        flex-shrink: 0; }
    #sale .list .item .info .note,
    #event .list .item .info .note,
    #shop .list .item .info .note,
    #access .list .item .info .note,
    #resort .list .item .info .note,
    #other .list .item .info .note {
      font-size: 2.2rem;
      line-height: 1.27; }
#sale .more,
#event .more,
#shop .more,
#access .more,
#resort .more,
#other .more {
  width: calc(530 / 750 * 100%);
  margin: auto;
  padding: calc(40 / 750 * 100%) 0 calc(90 / 750 * 100%) 0; }
  #sale .more.pt,
  #event .more.pt,
  #shop .more.pt,
  #access .more.pt,
  #resort .more.pt,
  #other .more.pt {
    padding-top: calc(50 / 750 * 100%); }
  #sale .more img,
  #event .more img,
  #shop .more img,
  #access .more img,
  #resort .more img,
  #other .more img {
    filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.6)); }

/* sale */
#sale .content {
  color: #ffffff;
  background: #d4115f; }
#sale .title {
  padding: calc(50 / 750 * 100%) 0 calc(36 / 750 * 100%) 0; }
#sale .list {
  padding: 0 0 calc(7 / 750 * 100%) 0; }
  #sale .list .item:first-child .desc {
    padding-bottom: calc(75 / 750 * 100%); }
  #sale .list .item:first-child .image {
    padding-bottom: 0; }
  #sale .list .item .headline {
    font-size: 5rem;
    line-height: 1;
    font-weight: 700;
    text-align: center;
    padding: calc(48 / 750 * 100%) 0 calc(30 / 750 * 100%) 0; }
  #sale .list .item .linkWrap {
    display: flex;
    flex-wrap: wrap;
    width: calc(690 / 750 * 100%);
    margin: auto;
    padding: 0 0 calc(80 / 750 * 100%) 0; }
    #sale .list .item .linkWrap .link {
      flex-basis: 50%; }
  #sale .list .item .guide {
    width: calc(650 / 750 * 100%);
    font-size: 3rem;
    line-height: 1.53;
    font-weight: 700;
    letter-spacing: -0.01em;
    text-align: center;
    margin: auto;
    padding: calc(45 / 750 * 100%) 0 calc(35 / 750 * 100%) 0; }
  #sale .list .item .soon:after {
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: calc(690 / 750 * 100%);
    margin: 0 auto calc(60 / 750 * 100%) auto; }

/* receipt */
#receipt {
  /* receiptMv */
  /* prize */
  /* method */
  /* members */
  /* attention */ }
  .load_complete #receipt.current .receiptMv .titleWrap .title {
    transition: all 0.4s ease-out; }
    .load_complete #receipt.current .receiptMv .titleWrap .title.title01 {
      animation: fade 0.4s linear forwards 0.4s; }
    .load_complete #receipt.current .receiptMv .titleWrap .title.title02 {
      animation: fade 0.4s linear forwards 0.8s; }
    .load_complete #receipt.current .receiptMv .titleWrap .title.title03 {
      animation: bound 2s linear forwards 1.9s; }
    .load_complete #receipt.current .receiptMv .titleWrap .title.period {
      animation: fade 0.4s linear forwards 1.2s; }
  #receipt .receiptBg {
    color: #ffffff;
    background: #efb815;
    padding: calc(58 / 750 * 100%) 0 0 0; }
  #receipt .list .item {
    box-shadow: none; }
  #receipt .receiptMv .content {
    position: relative;
    z-index: 10;
    aspect-ratio: 750 / 1098; }
  #receipt .receiptMv .bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 3;
    aspect-ratio: 750 / 1100; }
  #receipt .receiptMv .titleWrap {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    margin: calc(116 / 750 * 100%) 0 0 0; }
    #receipt .receiptMv .titleWrap .title {
      opacity: 0;
      display: block;
      margin: auto; }
      #receipt .receiptMv .titleWrap .title.title01 {
        transform: translateY(2rem);
        aspect-ratio: 750 / 116; }
      #receipt .receiptMv .titleWrap .title.title02 {
        margin-top: calc(-49 / 750 * 100%);
        transform: translateY(2rem);
        aspect-ratio: 750 / 133; }
      #receipt .receiptMv .titleWrap .title.title03 {
        margin-top: calc(-40 / 750 * 100%);
        transform: scale(0);
        aspect-ratio: 750 / 279.5; }
      #receipt .receiptMv .titleWrap .title.period {
        margin-top: calc(-3 / 750 * 100%);
        transform: translateY(2rem);
        aspect-ratio: 750 / 90; }
  #receipt .receiptMv .scroll {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 20;
    width: calc(105 / 750 * 100%);
    margin: 0 auto calc(31 /750 * 100%) auto; }
    #receipt .receiptMv .scroll .blink {
      animation: blink 3s 0s infinite linear; }
  #receipt .prize .content {
    color: #231815;
    background-color: #ffe100; }
  #receipt .prize .titleWrap .title {
    padding: calc(26 / 750 * 100%) 0 calc(11 / 750 * 100%) 0; }
  #receipt .prize .titleWrap .desc {
    font-size: 2.4rem;
    line-height: 1.29;
    font-weight: 700;
    letter-spacing: -0.08em;
    text-align: center;
    margin: 0 0 calc(10 / 750 * 100%) 0; }
    #receipt .prize .titleWrap .desc .em {
      display: inline-block;
      color: #e50012;
      font-size: 2.4rem;
      line-height: 1.29;
      font-weight: 700;
      background: linear-gradient(to bottom, #ffffff 0, #ffffff 90%, transparent 90%, transparent 100%);
      margin: 0 0.2em;
      padding: 0.1em 0.2em 0.15em 0.2em; }
    #receipt .prize .titleWrap .desc .small {
      font-size: 2rem;
      line-height: 1.55; }
  #receipt .prize .button {
    width: calc(459 / 750 * 100%);
    margin: 0 auto calc(21 / 750 * 100%) auto; }
    #receipt .prize .button img {
      filter: drop-shadow(0 4px 2px rgba(0, 0, 0, 0.5)); }
  #receipt .prize .noteWrap {
    width: calc(643 / 750 * 100%);
    margin: calc(14 / 750 * 100%) auto calc(34 / 750 * 100%) auto; }
    #receipt .prize .noteWrap .note {
      font-size: 1.7rem;
      line-height: 1.29;
      font-weight: 700;
      text-indent: -1em;
      padding: 0 0 0 1em; }
  #receipt .prize .chance .bg {
    background-color: #ffffff; }
  #receipt .prize .chance .noteWrap {
    width: calc(683 / 750 * 100%);
    margin: 0 auto;
    padding: calc(14 / 750 * 100%) 0 calc(10 / 750 * 100%) 0; }
    #receipt .prize .chance .noteWrap .note {
      font-size: 1.6rem;
      line-height: 1.31;
      font-weight: 700;
      text-indent: -1em;
      padding: 0 0 0 1em; }
  #receipt .method .content {
    overflow: hidden;
    background-color: #ce0016; }
  #receipt .method .title {
    display: flex;
    align-items: center;
    width: calc(660 / 750 * 100%);
    color: #ffffff;
    font-size: 4.15rem;
    line-height: 1;
    font-weight: 700;
    margin: 0 auto;
    padding: calc(35 / 750 * 100%) 0 calc(28 / 750 * 100%) 0; }
    #receipt .method .title:before, #receipt .method .title:after {
      content: "";
      flex-basis: 50%;
      height: 1px;
      background-color: #ffffff; }
    #receipt .method .title .str {
      display: block;
      flex-shrink: 0;
      padding: 0 1rem; }
  #receipt .method .list {
    width: calc(660 / 750 * 100%);
    margin: 0 auto calc(60 / 750 * 100%) auto; }
    #receipt .method .list .item {
      position: relative;
      background-color: #ffffff;
      margin: 0 0 calc(22 / 660 * 100%) 0;
      padding: calc(29 / 660 * 100%) 0 0 0; }
      #receipt .method .list .item:nth-child(1) .headline {
        font-size: 2.3rem;
        line-height: 1.43; }
        #receipt .method .list .item:nth-child(1) .headline .em {
          display: inline-block;
          font-weight: 700;
          background: linear-gradient(to bottom, #ffe800 0, #ffe800 90%, transparent 90%, transparent 100%);
          padding: 0 0.1em; }
          #receipt .method .list .item:nth-child(1) .headline .em:first-child {
            margin: 0 0.2em; }
          #receipt .method .list .item:nth-child(1) .headline .em .small {
            font-size: 2rem;
            line-height: 1.65; }
      #receipt .method .list .item:nth-child(1) .image {
        margin: calc(5 / 660 * 100%) 0 0 0; }
      #receipt .method .list .item:nth-child(2) .headline {
        letter-spacing: 0;
        margin-top: calc(13 / 660 * 100%); }
      #receipt .method .list .item:nth-child(2) .button {
        width: calc(459 / 660 * 100%);
        margin: auto;
        padding: calc(26 / 660 * 100%) 0 calc(29 / 660 * 100%) 0; }
        #receipt .method .list .item:nth-child(2) .button img {
          filter: drop-shadow(0 4px 2px rgba(0, 0, 0, 0.5)); }
      #receipt .method .list .item:nth-child(3) {
        padding: calc(6 / 660 * 100%) 0 calc(6 / 660 * 100%) 0; }
        #receipt .method .list .item:nth-child(3) .headline {
          font-size: 2.8rem;
          line-height: 1.43;
          letter-spacing: -0.05em;
          text-align: center;
          margin: 0 0 calc(18 / 660 * 100%) 0; }
          #receipt .method .list .item:nth-child(3) .headline .em {
            display: inline-block;
            font-weight: 700;
            background: linear-gradient(to bottom, #ffe800 0, #ffe800 90%, transparent 90%, transparent 100%); }
          #receipt .method .list .item:nth-child(3) .headline .small {
            font-size: 2.2rem;
            line-height: 1.82; }
        #receipt .method .list .item:nth-child(3) .note {
          margin: 0 0 0 calc(18 / 660 * 100%); }
      #receipt .method .list .item:nth-child(4) {
        display: flex;
        padding: 0; }
        #receipt .method .list .item:nth-child(4) .textWrap {
          display: flex;
          align-content: space-between;
          flex-wrap: wrap;
          flex-basis: calc(423 / 660 * 100%);
          margin: calc(38 / 660 * 100%) 0 calc(10 / 660 * 100%) 0; }
        #receipt .method .list .item:nth-child(4) .headline {
          flex-basis: 100%;
          font-size: 2.8rem;
          line-height: 1.29;
          letter-spacing: 0.03em;
          margin: 0 0 0 calc(90 / 423 * 100%); }
        #receipt .method .list .item:nth-child(4) .noteWrap {
          flex-basis: 100%; }
          #receipt .method .list .item:nth-child(4) .noteWrap .note {
            margin: 0 0 0 calc(25 / 423 * 100%); }
        #receipt .method .list .item:nth-child(4) .image {
          flex-basis: calc(170 / 660 * 100%); }
      #receipt .method .list .item .num {
        position: absolute;
        top: 0;
        left: 0;
        width: calc(51 / 660 * 100%);
        margin: calc(30 / 660 * 100%) 0 0 calc(20 / 660 * 100%); }
      #receipt .method .list .item .headline {
        color: #9d231c;
        font-size: 2.61rem;
        line-height: 1.19;
        font-weight: 700;
        letter-spacing: -0.08em;
        margin: 0 0 0 calc(80 / 660 * 100%); }
      #receipt .method .list .item .note {
        color: #231815;
        font-size: 1.6rem;
        line-height: 1.25;
        font-weight: 700;
        text-indent: -1em;
        margin: 0 0 0 calc(100 / 660 * 100%);
        padding: 0 0 0 1em; }
  #receipt .members .content {
    overflow: hidden;
    color: #231815;
    background-color: #ffe100; }
  #receipt .members .title {
    font-size: 4.7rem;
    line-height: 1.11;
    font-weight: 700;
    text-align: center;
    padding: calc(47 / 750 * 100%) 0 calc(25 / 750 * 100%) 0; }
    #receipt .members .title:after {
      content: "";
      display: block;
      width: calc(600 / 750 * 100%);
      height: 6px;
      margin: calc(5 / 750 * 100%) auto 0 auto;
      border-top: 2px solid #231815;
      border-bottom: 2px solid #231815;
      box-sizing: border-box; }
  #receipt .members .banner {
    width: calc(660 / 750 * 100%);
    margin: 0 auto calc(13 / 750 * 100%) auto; }
  #receipt .members .box {
    width: calc(660 / 750 * 100%);
    background-color: #ffffff;
    margin: 0 auto calc(7 / 750 * 100%) auto;
    padding: calc(17 / 750 * 100%) calc(15 / 750 * 100%);
    box-sizing: border-box; }
    #receipt .members .box .text {
      font-size: 2.3rem;
      line-height: 1.57;
      font-weight: 700;
      margin: 0 0 calc(10 / 630 * 100%) 0; }
      #receipt .members .box .text .em {
        color: #dd0513; }
    #receipt .members .box .note {
      font-size: 1.6rem;
      line-height: 1.31;
      font-weight: 700;
      text-indent: -1em;
      margin: 0 0 calc(25 / 630 * 100%) 0;
      padding: 0 0 0 1em; }
    #receipt .members .box .image {
      margin: 0 0 calc(20 / 630 * 100%) 0; }
    #receipt .members .box .link {
      font-size: 2.2rem;
      line-height: 1;
      font-weight: 700;
      margin: 0 0 calc(20 / 630 * 100%) 0; }
      #receipt .members .box .link a {
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
        width: calc(605 / 630 * 100%);
        background-color: #ffe800;
        margin: auto;
        padding: 2px 0 0 0;
        border-radius: 10rem;
        aspect-ratio: 605 / 77;
        box-sizing: border-box; }
        #receipt .members .box .link a:before {
          content: "";
          position: absolute;
          top: 3px;
          bottom: 3px;
          left: 3px;
          right: 3px;
          border: 2px solid #231815;
          border-radius: 10rem; }
    #receipt .members .box .regist {
      margin: 0 0 calc(17 / 630 * 100%) 0; }
      #receipt .members .box .regist .guide {
        font-size: 2.4rem;
        line-height: 1.42;
        font-weight: 700;
        text-align: center;
        margin: 0 0 calc(13 / 630 * 100%) 0; }
      #receipt .members .box .regist .wrap {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: calc(384 / 630 * 100%);
        margin: auto; }
        #receipt .members .box .regist .wrap .logo {
          flex-basis: calc(69 / 384 * 100%); }
        #receipt .members .box .regist .wrap .button {
          flex-basis: calc(282 / 384 * 100%); }
  #receipt .members .noteWrap {
    width: calc(660 / 750 * 100%);
    margin: 0 auto calc(20 / 750 * 100%) auto; }
    #receipt .members .noteWrap .note {
      font-size: 1.6rem;
      line-height: 1.31;
      font-weight: 700;
      text-indent: -1em;
      padding: 0 0 0 1em; }
  #receipt .attention .content {
    overflow: hidden;
    background-color: #afc81a; }
  #receipt .attention .attention1 {
    width: calc(660 / 750 * 100%);
    margin: auto;
    padding: calc(20 / 750 * 100%) 0 calc(39 / 750 * 100%); }
    #receipt .attention .attention1 .title {
      padding: calc(20 / 660 * 100%) 0 calc(49 / 660 * 100%) 0; }
  #receipt .attention .privacy .box {
    width: calc(660 / 750 * 100%);
    color: #231815;
    background-color: #ffffff;
    margin: 0 auto calc(60 / 750 * 100%) auto;
    padding: calc(34 / 750 * 100%) calc(34 / 750 * 100%);
    box-sizing: border-box; }
    #receipt .attention .privacy .box .title {
      font-size: 1.9rem;
      line-height: 1;
      font-weight: 700;
      text-align: center;
      margin: 0 auto calc(17 / 592 * 100%) auto; }
    #receipt .attention .privacy .box .list {
      margin: 0 0 calc(17 / 592 * 100%) 0; }
      #receipt .attention .privacy .box .list .item p {
        font-size: 1.6rem;
        line-height: 1.44;
        letter-spacing: -0.04em;
        text-indent: -1em;
        padding: 0 0 0 1em; }
    #receipt .attention .privacy .box .link {
      width: calc(520 / 592 * 100%);
      margin: 0 auto calc(43 / 592 * 100%) auto; }
      #receipt .attention .privacy .box .link a {
        display: block;
        font-size: 1.8rem;
        line-height: 1;
        text-align: center;
        padding: 1.25rem 0;
        border: 2px solid #231815; }
    #receipt .attention .privacy .box .button {
      width: calc(481 / 592 * 100%);
      margin: 0 auto calc(30 / 592 * 100%) auto; }
      #receipt .attention .privacy .box .button img {
        filter: drop-shadow(0 4px 2px rgba(0, 0, 0, 0.5)); }
    #receipt .attention .privacy .box .period {
      font-size: 3.4rem;
      line-height: 0.79;
      font-weight: 700;
      text-align: center;
      margin: 0 auto calc(33 / 592 * 100%) auto; }
      #receipt .attention .privacy .box .period .note {
        display: inline-block;
        font-size: 1.82rem;
        line-height: 1.19;
        font-weight: 400;
        text-align: left;
        text-indent: -1em;
        padding: 0 0 0 1em;
        margin: calc(17 / 592 * 100%) 0 0 0; }
    #receipt .attention .privacy .box .noteWrap .note {
      font-size: 1.6rem;
      line-height: 1.44;
      text-indent: -1em;
      padding: 0 0 0 1em; }

@media screen and (min-width: 751px) {
  #receipt .method .list .item:nth-child(1) .headline .em {
    background: linear-gradient(to bottom, #ffe800 0%, #ffe800 93%, transparent 93%);
    padding: 0.1em 0.3em 0 0.3em; }
  #receipt .method .list .item:nth-child(3) .headline .em {
    background: linear-gradient(to bottom, #ffe800 0%, #ffe800 93%, transparent 93%);
    padding: 0.1em 0.3em 0 0.3em; } }
/* event */
#event .content {
  color: #ffffff;
  background: #004491; }
#event .title {
  padding: calc(108 / 750 * 100%) 0 calc(0 / 750 * 100%) 0; }
#event .list {
  padding: 0 0 calc(7 / 750 * 100%) 0; }
  #event .list .item:first-child {
    box-shadow: 0 -5px 5px rgba(0, 0, 0, 0.5); }
  #event .list .item .headline {
    font-size: 5rem;
    line-height: 1.2;
    font-weight: 700;
    text-align: center;
    padding: calc(73 / 750 * 100%) 0 calc(20 / 750 * 100%) 0; }
    #event .list .item .headline .small {
      display: block;
      font-size: 3.6rem;
      line-height: 1;
      margin: 0 0 calc(10 / 750 * 100%) 0; }
#event .announce {
  font-size: 5rem;
  line-height: 1.4;
  font-weight: 700;
  text-align: center;
  padding: calc(20 / 750 * 100%) 0 calc(100 / 750 * 100%) 0; }

/* shop */
#shop .content {
  color: #ffffff;
  background: #d4115f; }
#shop .title {
  padding: calc(108 / 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(73 / 750 * 100%) 0 calc(20 / 750 * 100%) 0; }
  #shop .list .item .wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: calc(650 / 750 * 100%);
    font-size: 2.5rem;
    line-height: 1.2;
    font-weight: 700;
    margin: auto;
    padding: 0 0 calc(49 / 750 * 100%) 0; }
    #shop .list .item .wrap .slideWrap {
      width: calc(323 / 650 * 100%); }
    #shop .list .item .wrap .shopInfo {
      width: calc(301 / 650 * 100%); }
      #shop .list .item .wrap .shopInfo .logo {
        margin: calc(15 / 301 * 100%) 0 calc(30 / 301 * 100%) 0; }
  #shop .list .item .image {
    padding-bottom: 0; }
  #shop .list .item .map {
    width: calc(650 / 750 * 100%);
    margin: auto;
    padding: calc(70 / 750 * 100%) 0 calc(70 / 750 * 100%) 0; }

/* access */
#access .content {
  background: #efb815; }
#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-top: calc(14 / 750 * 100%); }
  #access .section.access03 .image {
    padding-bottom: calc(40 / 750 * 100%); }
  #access .section.access03 .image1 {
    padding-bottom: calc(30 / 750 * 100%); }
  #access .section.access06 .sectionTitle {
    font-size: 2.5rem;
    line-height: 1.4;
    text-align: center;
    padding: calc(52 / 750 * 100%) 0 calc(45 / 750 * 100%) 0; }
  #access .section.access06 .image {
    padding: 0 0 calc(40 / 750 * 100%) 0; }
  #access .section.access06 .text {
    font-size: 3rem;
    line-height: 1.47;
    padding: 0 0 calc(70 / 750 * 100%) 0; }
  #access .section .sectionTitle {
    font-size: 5rem;
    line-height: 1.2;
    font-weight: 700;
    text-align: center;
    padding: calc(42 / 750 * 100%) 0 calc(35 / 750 * 100%) 0; }
    #access .section .sectionTitle .small {
      display: block;
      font-size: 2.4rem;
      line-height: 1; }
  #access .section .text {
    width: calc(650 / 750 * 100%);
    font-size: 2.2rem;
    line-height: 1.59;
    font-weight: 700;
    margin: auto;
    padding: 0 0 calc(44 / 750 * 100%) 0; }
    #access .section .text.center {
      text-align: center; }
    #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.2rem;
    line-height: 1.59;
    font-weight: 700;
    margin: auto;
    padding: 0 0 calc(44 / 750 * 100%) 0; }
    #access .section .link .name {
      color: #004491; }
    #access .section .link a {
      text-decoration: underline; }
  #access .section .image {
    width: calc(650 / 750 * 100%);
    margin: auto;
    padding: 0 0 calc(70 / 750 * 100%) 0; }

/* resort */
#resort .content {
  color: #ffffff;
  background: #004491; }
#resort .title {
  padding: calc(92 / 750 * 100%) 0 calc(34 / 750 * 100%) 0; }
#resort .intro {
  padding: calc(35 / 750 * 100%) 0 calc(65 / 750 * 100%) 0; }
  #resort .intro .image {
    width: calc(650 / 750 * 100%);
    margin: auto;
    padding: 0 0 calc(35 / 750 * 100%) 0; }
  #resort .intro .text {
    width: calc(650 / 750 * 100%);
    font-size: 2.2rem;
    line-height: 1.59;
    font-weight: 700;
    margin: auto; }
#resort .list .item:first-child {
  box-shadow: 0 -5px 5px rgba(0, 0, 0, 0.5); }
#resort .list .item.item03 .text {
  padding-bottom: calc(70 / 750 * 100%); }
#resort .list .item.item04 .text {
  padding-bottom: 0; }
#resort .list .item.item04 .info {
  padding: calc(35 / 750 * 100%) 0 0 0; }
#resort .list .item .headline {
  font-size: 4rem;
  line-height: 1.25;
  font-weight: 700;
  text-align: center; }
#resort .list .item .image {
  padding: calc(50 / 750 * 100%) 0 calc(49 / 750 * 100%) 0; }
#resort .list .item .info {
  padding: calc(10 / 750 * 100%) 0 calc(70 / 750 * 100%) 0; }
#resort .list .item .noteWrap {
  width: calc(650 / 750 * 100%);
  font-size: 1.8rem;
  line-height: 1.33;
  font-weight: 700;
  letter-spacing: -0.04em;
  margin: auto;
  padding: calc(20 / 750 * 100%) 0 calc(35 / 750 * 100%) 0; }
  #resort .list .item .noteWrap .note {
    text-indent: -1em;
    padding: 0 0 0 1em; }

/* other */
#other .content {
  color: #ffffff; }
#other .title {
  font-size: 4.4rem;
  line-height: 1.14;
  padding: calc(76 / 750 * 100%) 0 calc(32 / 750 * 100%) 0; }
#other .list .item {
  padding: 0 0 calc(58 / 750 * 100%) 0;
  box-shadow: none; }
  #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; }



