@charset "UTF-8";
/*!
 * ress.css • v4.0.0
 * MIT License
 * github.com/filipelinhares/ress
 */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  word-break: normal;
  -moz-tab-size: 4;
  -o-tab-size: 4;
     tab-size: 4;
  font-size: 62.5%;
  -ms-overflow-style: none;
  /* IE, Edge 対応 */
  scrollbar-width: none;
  /* Firefox 対応 */
}

html::-webkit-scrollbar {
  width: 7px;
}

html::-webkit-scrollbar-track {
  /* Chrome, Safari 対応 */
  background-color: rgba(67, 117, 186, 0);
}

html::-webkit-scrollbar-thumb {
  border-radius: 0.5rem;
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(200, 144, 208)), to(rgb(67, 117, 186)));
  background: linear-gradient(0deg, rgb(200, 144, 208) 0%, rgb(67, 117, 186) 100%);
}

*,
::before,
::after {
  background-repeat: no-repeat;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

::before,
::after {
  text-decoration: inherit;
  vertical-align: inherit;
}

* {
  padding: 0;
  margin: 0;
}

hr {
  overflow: visible;
  height: 0;
  color: inherit;
}

details,
main {
  display: block;
}

summary {
  display: list-item;
}

small {
  font-size: 80%;
}

[hidden] {
  display: none;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

a {
  background-color: transparent;
  text-decoration: none;
  color: #222222;
}

a:active,
a:hover {
  outline-width: 0;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
}

pre {
  font-size: 1em;
}

b,
strong {
  font-weight: bolder;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  border-color: inherit;
  text-indent: 0;
}

input {
  border-radius: 0;
}

[disabled] {
  cursor: default;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

textarea {
  overflow: auto;
  resize: vertical;
}

button,
input,
optgroup,
select,
textarea {
  font: inherit;
}

optgroup {
  font-weight: bold;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
  cursor: pointer;
  color: inherit;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
}

a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline-width: 0;
}

select {
  -moz-appearance: none;
  -webkit-appearance: none;
}

select::-ms-expand {
  display: none;
}

select::-ms-value {
  color: currentColor;
}

legend {
  border: 0;
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal;
  max-width: 100%;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  color: inherit;
  font: inherit;
}

img {
  border-style: none;
  max-width: 100%;
  vertical-align: top;
}

body {
  font-family: 游ゴシック体, Yu Gothic, YuGothic, dnp-shuei-gothic-gin-std, sans-serif;
  font-style: normal;
  font-weight: 500;
  color: #fff;
  overflow-x: hidden;
  position: relative;
}
@media only screen and (min-width: 501px) {
  body {
    height: 100vh;
  }
}

ol,
ul {
  list-style-type: none;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}
.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}
[dir=rtl] .slick-prev {
  left: auto;
  right: -25px;
}
.slick-prev:before {
  content: "←";
}
[dir=rtl] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}
[dir=rtl] .slick-next {
  left: -25px;
  right: auto;
}
.slick-next:before {
  content: "→";
}
[dir=rtl] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}

@font-face {
  font-family: "candle";
  src: url("fonts/candle.eot?hg9vdy");
  src: url("fonts/candle.eot?hg9vdy#iefix") format("embedded-opentype"), url("fonts/candle.ttf?hg9vdy") format("truetype"), url("fonts/candle.woff?hg9vdy") format("woff"), url("fonts/candle.svg?hg9vdy#candle") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^=i-], [class*=" i-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "candle" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.i-ico_insta:before {
  content: "\e900";
  color: #fff;
}

.i-ico_tiktok:before {
  content: "\e901";
  color: #fff;
}

.i-ico_twitter:before {
  content: "\e902";
  color: #fff;
}

.i-img_changeLight:before {
  content: "\e903";
}

#l-container {
  height: auto !important;
}

.u-txt {
  font-size: 3.7333333333vw;
  line-height: 9.3333333333vw;
}
@media only screen and (min-width: 501px) {
  .u-txt {
    font-size: 1.0416666667vw;
    line-height: 2.1875vw;
  }
}

.u-txtCenter {
  text-align: center;
}

.u-txtBold {
  font-weight: bold;
}

.u-txtBorder {
  text-decoration: underline;
}

.u-fontEn01 {
  font-family: "Tenor Sans", sans-serif;
  font-style: normal;
  font-weight: 500;
}

.u-fontSippori {
  font-family: "Shippori Mincho", serif;
  font-weight: normal;
}

.u-hideSp {
  display: none !important;
}
@media only screen and (min-width: 501px) {
  .u-hideSp {
    display: block !important;
  }
}

.u-hidePc {
  display: block !important;
}
@media only screen and (min-width: 501px) {
  .u-hidePc {
    display: none !important;
  }
}

.u-fadeIn {
  opacity: 0;
  -webkit-transform: translateY(1rem);
          transform: translateY(1rem);
  -webkit-transition: all 2s;
  transition: all 2s;
}

.u-mb10 {
  margin-bottom: 2.6666666667vw;
}
@media only screen and (min-width: 501px) {
  .u-mb10 {
    margin-bottom: 1.5rem;
  }
}

.c-contentInner {
  padding: 0 6vw;
}
@media only screen and (min-width: 501px) {
  .c-contentInner {
    margin: 0 auto;
    padding: 0 3rem;
  }
}

.l-scrollContent {
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 501px) {
  .l-scrollContent {
    width: 50rem;
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    margin: auto;
  }
}
@media only screen and (min-width: 1200px) {
  .l-scrollContent {
    left: inherit;
  }
}
.l-scrollContent::-webkit-scrollbar {
  display: none;
}
.l-scrollContent::-webkit-scrollbar-thumb {
  border-radius: 0.5rem;
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(200, 144, 208)), to(rgb(67, 117, 186)));
  background: linear-gradient(0deg, rgb(200, 144, 208) 0%, rgb(67, 117, 186) 100%);
}
.l-scrollContent::-webkit-scrollbar-track {
  /* Chrome, Safari 対応 */
  background-color: rgba(67, 117, 186, 0);
}

#loadingWait {
  width: 100%;
  opacity: 1;
  background: #0E0C3C;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  height: 100vh;
  position: absolute;
  z-index: 999;
  pointer-events: none;
}

#loadingBody {
  opacity: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  position: relative;
}

.l-container {
  background: #0E0C3C;
}

.yozora01 {
  background: url(../images/bg_yozora01.webp) no-repeat;
  background-size: cover;
  position: relative;
}
.yozora01 .particlesStar {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.floatingLogo--outer {
  display: none;
  z-index: 2;
}
@media only screen and (min-width: 1200px) {
  .floatingLogo--outer {
    position: fixed;
    width: calc(100vw - 500px);
    height: 100vh;
    display: block;
  }
}

.floatingLogo--starting {
  position: relative;
  height: 100vh;
}

.floatingLogo {
  position: absolute;
  display: none;
  z-index: 2;
}
@media only screen and (min-width: 1200px) {
  .floatingLogo {
    display: block;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
}
.floatingLogo--inner {
  position: relative;
}
.floatingLogo--yolu {
  text-align: center;
}
@media only screen and (min-width: 1200px) {
  .floatingLogo--yolu {
    margin-bottom: 1.015625vw;
  }
}
.floatingLogo--yolu__txt {
  width: 24.4vw;
  margin-bottom: 3.4vw;
}
@media only screen and (min-width: 1200px) {
  .floatingLogo--yolu__txt {
    width: 9.53125vw;
    margin-bottom: 1.328125vw;
  }
}
.floatingLogo--yolu__logo {
  width: 24.8vw;
}
@media only screen and (min-width: 1200px) {
  .floatingLogo--yolu__logo {
    width: 9.6875vw;
  }
}
.floatingLogo--logo {
  width: 80.2vw;
  position: relative;
}
@media only screen and (min-width: 1200px) {
  .floatingLogo--logo {
    width: 40rem;
  }
}
.floatingLogo--logo__jp {
  width: 70.8vw;
}
@media only screen and (min-width: 1200px) {
  .floatingLogo--logo__jp {
    width: 35.4rem;
    position: absolute;
    right: 0;
    left: 0;
    top: 5.3rem;
    margin: 0 auto;
    text-align: center;
    opacity: 0;
    -webkit-transition: 1s;
    transition: 1s;
  }
}
@media only screen and (min-width: 1200px) {
  .floatingLogo--logo__jp-on {
    top: 4.3rem;
    opacity: 1;
  }
}
.floatingLogo--logo__jp img {
  width: 100%;
}
.floatingLogo--logo svg .svg-elem-1 {
  stroke-dashoffset: 100.0429992676px;
  stroke-dasharray: 100.0429992676px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
}
.floatingLogo--logo svg.active .svg-elem-1 {
  stroke-dashoffset: 0;
}
.floatingLogo--logo svg .svg-elem-2 {
  stroke-dashoffset: 131.9680023193px;
  stroke-dasharray: 131.9680023193px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s;
}
.floatingLogo--logo svg.active .svg-elem-2 {
  stroke-dashoffset: 0;
}
.floatingLogo--logo svg .svg-elem-3 {
  stroke-dashoffset: 64.9550018311px;
  stroke-dasharray: 64.9550018311px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
}
.floatingLogo--logo svg.active .svg-elem-3 {
  stroke-dashoffset: 0;
}
.floatingLogo--logo svg .svg-elem-4 {
  stroke-dashoffset: 122.8259963989px;
  stroke-dasharray: 122.8259963989px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s;
}
.floatingLogo--logo svg.active .svg-elem-4 {
  stroke-dashoffset: 0;
}
.floatingLogo--logo svg .svg-elem-5 {
  stroke-dashoffset: 57.676651001px;
  stroke-dasharray: 57.676651001px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s;
}
.floatingLogo--logo svg.active .svg-elem-5 {
  stroke-dashoffset: 0;
  fill: white;
}
.floatingLogo--logo svg .svg-elem-6 {
  stroke-dashoffset: 98.0289993286px;
  stroke-dasharray: 98.0289993286px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s;
}
.floatingLogo--logo svg.active .svg-elem-6 {
  stroke-dashoffset: 0;
}
.floatingLogo--logo svg .svg-elem-7 {
  stroke-dashoffset: 64.7589988708px;
  stroke-dasharray: 64.7589988708px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s;
}
.floatingLogo--logo svg.active .svg-elem-7 {
  stroke-dashoffset: 0;
}
.floatingLogo--logo svg .svg-elem-8 {
  stroke-dashoffset: 180.7779998779px;
  stroke-dasharray: 180.7779998779px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s;
}
.floatingLogo--logo svg.active .svg-elem-8 {
  stroke-dashoffset: 0;
}
.floatingLogo--candle {
  width: 60.2vw;
}
@media only screen and (min-width: 1200px) {
  .floatingLogo--candle {
    width: 30.1rem;
    margin: -4.5rem auto 0;
  }
}

.floating--banner {
  position: fixed;
  bottom: 4vw;
  width: 92.2vw;
  margin: 0 auto;
  z-index: 999;
  right: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: 1s;
  transition: 1s;
}
@media only screen and (min-width: 501px) {
  .floating--banner {
    width: 37.4rem;
    bottom: 2rem;
  }
}
@media only screen and (min-width: 1200px) {
  .floating--banner {
    position: absolute;
    width: 37.4rem;
    opacity: 1;
  }
}
.floating--banner__img {
  position: relative;
}
.floating--banner__close {
  position: absolute;
  width: 4vw;
  height: 4vw;
  border-radius: 3rem;
  text-align: center;
  background-color: #fff;
  line-height: 1.6;
  cursor: pointer;
  color: #31418C;
  top: -1.2vw;
  right: -1vw;
  font-weight: 100;
  font-size: 2.8vw;
  font-family: Yu Gothic, 游ゴシック体, YuGothic, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, Meiryo UI, メイリオ, Meiryo, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
}
@media only screen and (min-width: 501px) {
  .floating--banner__close {
    width: 2rem;
    height: 2rem;
    top: -0.6rem;
    right: -0.5rem;
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 1200px) {
  .floating--banner__close {
    width: 1.5625vw;
    height: 1.5625vw;
    top: -0.46875vw;
    right: -0.390625vw;
    font-size: 1.015625vw;
  }
}
.floating--banner__close-link {
  text-decoration: inherit;
}
.floating--banner.bannerOff {
  opacity: 0 !important;
  pointer-events: none;
}

.bodyBg {
  position: relative;
}
@media only screen and (min-width: 501px) {
  .bodyBg {
    position: relative;
    height: 100vh;
  }
}
.bodyBg #particles04 {
  position: absolute;
  z-index: 1;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: 1s;
  transition: 1s;
}
.bodyBg:before {
  content: "";
  display: inline-block;
  height: 100vh;
  width: 100vw;
  position: fixed;
  top: 0;
  left: 0;
  -webkit-transition: 1s;
  transition: 1s;
  pointer-events: none;
}
@media only screen and (min-width: 501px) {
  .bodyBg:before {
    background: url(../images/bg_yozoraOn-pc.webp) no-repeat;
    background-size: cover;
  }
}
.bodyBg:after {
  content: "";
  display: inline-block;
  height: 100vh;
  width: 100vw;
  position: fixed;
  top: 0;
  left: 0;
  -webkit-transition: 1s;
  transition: 1s;
  pointer-events: none;
  opacity: 0;
}
@media only screen and (min-width: 501px) {
  .bodyBg:after {
    background: url(../images/bg_yozoraOff-pc.webp) no-repeat;
    background-size: cover;
  }
}

.switchOff .bodyBg:before {
  opacity: 0;
}
.switchOff .bodyBg:after {
  opacity: 1;
}
.switchOff .bodyBg #particles04 {
  position: fixed;
  z-index: 1;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  top: 0;
  left: 0;
  opacity: 1;
  -webkit-transition: 1s;
  transition: 1s;
}

.change--footerBtn {
  margin-bottom: 11vw;
}
@media only screen and (min-width: 501px) {
  .change--footerBtn {
    margin-bottom: 5.5rem;
  }
}
.change--footerLogo {
  text-align: center;
  margin-bottom: 5vw;
}
@media only screen and (min-width: 501px) {
  .change--footerLogo {
    margin-bottom: 2.5rem;
  }
}
.change--footerLogo img {
  width: 18.8vw;
}
@media only screen and (min-width: 501px) {
  .change--footerLogo img {
    width: 9.4rem;
  }
}
.change--footerSns {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -2.6vw 11vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (min-width: 501px) {
  .change--footerSns {
    margin: 0 1.3rem 5.5rem;
  }
}
.change--footerSns li {
  padding: 0 2.6vw;
}
.change--footerSns__twitter i {
  font-size: 5.2vw;
}
@media only screen and (min-width: 501px) {
  .change--footerSns__twitter i {
    font-size: 2.6rem;
  }
}
.change--footerSns__insta i {
  font-size: 6.2vw;
}
@media only screen and (min-width: 501px) {
  .change--footerSns__insta i {
    font-size: 3.1rem;
  }
}
.change--footerSns__tiktok i {
  font-size: 6.2vw;
}
@media only screen and (min-width: 501px) {
  .change--footerSns__tiktok i {
    font-size: 3.1rem;
  }
}
.change--footerLink {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -3vw 6vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (min-width: 501px) {
  .change--footerLink {
    margin: 0 1.5rem 3rem;
  }
}
.change--footerLink li {
  margin: 0 3vw;
  line-height: 1;
}
@media only screen and (min-width: 501px) {
  .change--footerLink li {
    margin: 0 1.5rem;
  }
}
.change--footerCopyright {
  text-align: center;
  line-height: 1;
  padding-bottom: 4vw;
}
@media only screen and (min-width: 501px) {
  .change--footerCopyright {
    padding-bottom: 2rem;
  }
}
.change--footerCopyright img {
  width: 16.8vw;
}
@media only screen and (min-width: 501px) {
  .change--footerCopyright img {
    width: 8.4rem;
  }
}

.mainVisual {
  padding-top: 9vw;
  margin-bottom: 29vw;
  position: relative;
}
@media only screen and (min-width: 501px) {
  .mainVisual {
    padding-top: 4.5rem;
    margin-bottom: 14.5rem;
  }
}
@media only screen and (min-width: 1200px) {
  .mainVisual {
    display: none;
  }
}
.mainVisual--logoArea {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 88vw;
}
@media only screen and (min-width: 501px) {
  .mainVisual--logoArea {
    width: 44rem;
  }
}
.mainVisual--ttl {
  text-align: center;
  margin-bottom: 2.4vw;
}
@media only screen and (min-width: 501px) {
  .mainVisual--ttl {
    margin-bottom: 1.2rem;
  }
}
.mainVisual--ttl__txt {
  display: inline-block;
  margin-bottom: 3.6vw;
  width: 25.6vw;
}
@media only screen and (min-width: 501px) {
  .mainVisual--ttl__txt {
    margin-bottom: 1.8rem;
    width: 12.8rem;
  }
}
.mainVisual--ttl__logo {
  display: inline-block;
  width: 26.4vw;
}
@media only screen and (min-width: 501px) {
  .mainVisual--ttl__logo {
    width: 13.2rem;
  }
}
.mainVisual--logo {
  position: relative;
}
.mainVisual--logo svg .svg-elem-1 {
  stroke-dashoffset: 100.0429992676px;
  stroke-dasharray: 100.0429992676px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
}
.mainVisual--logo svg.active .svg-elem-1 {
  stroke-dashoffset: 0;
}
.mainVisual--logo svg .svg-elem-2 {
  stroke-dashoffset: 131.9680023193px;
  stroke-dasharray: 131.9680023193px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s;
}
.mainVisual--logo svg.active .svg-elem-2 {
  stroke-dashoffset: 0;
}
.mainVisual--logo svg .svg-elem-3 {
  stroke-dashoffset: 64.9550018311px;
  stroke-dasharray: 64.9550018311px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
}
.mainVisual--logo svg.active .svg-elem-3 {
  stroke-dashoffset: 0;
}
.mainVisual--logo svg .svg-elem-4 {
  stroke-dashoffset: 122.8259963989px;
  stroke-dasharray: 122.8259963989px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s;
}
.mainVisual--logo svg.active .svg-elem-4 {
  stroke-dashoffset: 0;
}
.mainVisual--logo svg .svg-elem-5 {
  stroke-dashoffset: 57.676651001px;
  stroke-dasharray: 57.676651001px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s;
}
.mainVisual--logo svg.active .svg-elem-5 {
  stroke-dashoffset: 0;
  fill: rgb(255, 255, 255);
}
.mainVisual--logo svg .svg-elem-6 {
  stroke-dashoffset: 98.0289993286px;
  stroke-dasharray: 98.0289993286px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s;
}
.mainVisual--logo svg.active .svg-elem-6 {
  stroke-dashoffset: 0;
}
.mainVisual--logo svg .svg-elem-7 {
  stroke-dashoffset: 64.7589988708px;
  stroke-dasharray: 64.7589988708px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s;
}
.mainVisual--logo svg.active .svg-elem-7 {
  stroke-dashoffset: 0;
}
.mainVisual--logo svg .svg-elem-8 {
  stroke-dashoffset: 180.7779998779px;
  stroke-dasharray: 180.7779998779px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s;
}
.mainVisual--logo svg.active .svg-elem-8 {
  stroke-dashoffset: 0;
}
.mainVisual--logo__jp {
  position: absolute;
  width: 67.4vw;
  right: 0;
  left: 0;
  top: 12.6vw;
  margin: 0 auto;
  opacity: 0;
  -webkit-transition: 1s;
  transition: 1s;
}
@media only screen and (min-width: 501px) {
  .mainVisual--logo__jp {
    max-width: 33.7rem;
    top: 6.3rem;
  }
}
.mainVisual--logo__jp-on {
  top: 10.6vw;
  opacity: 1;
}
@media only screen and (min-width: 501px) {
  .mainVisual--logo__jp-on {
    top: 5.3rem;
  }
}
.mainVisual--candle {
  margin: -12.8vw auto 0;
  text-align: center;
}
@media only screen and (min-width: 501px) {
  .mainVisual--candle {
    margin: -6.4rem auto 0;
  }
}
.mainVisual--candle img {
  width: 64vw;
}
@media only screen and (min-width: 501px) {
  .mainVisual--candle img {
    max-width: 32rem;
  }
}
.concept {
  padding-bottom: 75vw;
}
@media only screen and (min-width: 501px) {
  .concept {
    padding-bottom: 37.5rem;
    padding-top: 10rem;
  }
}
.concept--ttl {
  background: url(../images/bg_conceptTtl.webp) no-repeat;
  background-size: contain;
  background-position-y: 5.2vw;
  padding-bottom: 13.6vw;
  margin-bottom: 9vw;
}
@media only screen and (min-width: 501px) {
  .concept--ttl {
    background-position-y: 2.6rem;
    padding-bottom: 6.8rem;
    margin-bottom: 4.5rem;
  }
}
.concept--ttl__txt {
  width: 28.8vw;
  margin-bottom: 10vw;
  line-height: 1;
}
@media only screen and (min-width: 501px) {
  .concept--ttl__txt {
    max-width: 14.4rem;
    margin-bottom: 5rem;
  }
}
.concept--ttl__main {
  width: 85vw;
}
@media only screen and (min-width: 501px) {
  .concept--ttl__main {
    max-width: 42.5rem;
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.concept--earth {
  text-align: center;
  margin-bottom: 8vw;
}
@media only screen and (min-width: 501px) {
  .concept--earth {
    margin-bottom: 4rem;
  }
}
.concept--subTtl {
  text-align: center;
  margin-bottom: 9vw;
}
@media only screen and (min-width: 501px) {
  .concept--subTtl {
    margin-bottom: 4.5rem;
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.concept--subTtl img {
  width: 61.8vw;
}
@media only screen and (min-width: 501px) {
  .concept--subTtl img {
    width: 30.9rem;
  }
}
.concept--txt {
  font-size: 3.2vw;
  line-height: 8.4vw;
  letter-spacing: 0;
}
@media only screen and (min-width: 501px) {
  .concept--txt {
    font-size: 1.6rem;
    line-height: 4.2rem;
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

.action {
  background: url(../images/bg_actionHouse.webp) no-repeat;
  background-size: cover;
  margin-top: -28vw;
  padding: 50.8vw 0 0;
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 501px) {
  .action {
    margin-top: -14rem;
    padding: 25.4rem 0 0;
    background-size: cover;
  }
}
.action--ttl {
  margin-bottom: 18vw;
}
@media only screen and (min-width: 501px) {
  .action--ttl {
    margin-bottom: 9rem;
  }
}
.action--ttl__txt {
  width: 10.4vw;
  margin-bottom: 9vw;
  line-height: 1;
}
@media only screen and (min-width: 501px) {
  .action--ttl__txt {
    width: 5.2rem;
    margin-bottom: 4.5rem;
  }
}
.action--ttl__main {
  width: 74.8vw;
}
@media only screen and (min-width: 501px) {
  .action--ttl__main {
    width: 37.4rem;
  }
}

.change {
  position: relative;
  height: 800vw;
}
@media only screen and (min-width: 501px) {
  .change {
    height: 400rem;
  }
}
.change--inner {
  position: relative;
  opacity: 1;
  -webkit-transition: 1s;
  transition: 1s;
}
.change--entry {
  border-radius: 25rem 25rem 0 0;
  overflow: hidden;
  position: relative;
}
.change--entryLight {
  text-align: center;
  font-size: 30.6vw;
  margin-bottom: 8vw;
  line-height: 1;
}
@media only screen and (min-width: 501px) {
  .change--entryLight {
    font-size: 15.3rem;
    margin-bottom: 4rem;
  }
}
.change--entryButton {
  position: relative;
  background: #333A71;
  border-radius: 5rem;
  width: 32.2vw;
  height: 11.6vw;
  display: block;
  margin: 0 auto 4vw;
}
@media only screen and (min-width: 501px) {
  .change--entryButton {
    width: 16.1rem;
    height: 5.8rem;
    margin: 0 auto 2rem;
  }
}
.change--entryButton__circle {
  width: 10.4vw;
  height: 9.8vw;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0.8vw;
  margin: auto;
  -webkit-animation-name: purupuru;
          animation-name: purupuru;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}
@media only screen and (min-width: 501px) {
  .change--entryButton__circle {
    width: 5.2rem;
    height: 4.9rem;
    left: 0.4rem;
  }
}
.change--entryButton__txt {
  position: absolute;
  color: #fff;
  font-size: 4.4vw;
  top: 50%;
  right: 3.8vw;
  transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
}
@media only screen and (min-width: 501px) {
  .change--entryButton__txt {
    font-size: 2.2rem;
    right: 1.9rem;
  }
}
.change--entryCount {
  text-align: center;
}
.change--entryCount__txt {
  font-size: 2.8vw;
  margin-bottom: 3vw;
}
@media only screen and (min-width: 501px) {
  .change--entryCount__txt {
    font-size: 1.4rem;
    margin-bottom: 1.5rem;
  }
}
.change--entryCount__main {
  font-size: 4.8vw;
  line-height: 8vw;
  margin-bottom: 6vw;
}
@media only screen and (min-width: 501px) {
  .change--entryCount__main {
    font-size: 2.4rem;
    line-height: 4rem;
    margin-bottom: 3rem;
  }
}
.change--entryCount__main span {
  color: #FFF500;
  font-size: 12.6vw;
  margin: 0 1vw;
}
@media only screen and (min-width: 501px) {
  .change--entryCount__main span {
    font-size: 6.3rem;
    margin: 0 0.5rem;
  }
}
.change--entryWindow {
  background: url(../images/bg_entryWindow.webp) no-repeat;
  background-size: cover;
  height: 69vw;
  text-align: center;
  padding-top: 10vw;
  position: relative;
}
@media only screen and (min-width: 501px) {
  .change--entryWindow {
    height: 34.5rem;
    padding-top: 5rem;
  }
}
.change--entryWindow:before {
  content: "";
  display: inline-block;
  height: 42.2vw;
  width: 87.6vw;
  position: absolute;
  right: 0;
  left: 0;
  bottom: 0.2vw;
  margin: auto;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#0b0d40+0,0d0e38+100&0.3+0,1+100 */
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(11, 13, 64, 0.3)), to(rgb(13, 14, 56)));
  background: linear-gradient(to bottom, rgba(11, 13, 64, 0.3) 0%, rgb(13, 14, 56) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#4d0b0d40", endColorstr="#0d0e38",GradientType=0 );
  /* IE6-9 */
}
@media only screen and (min-width: 501px) {
  .change--entryWindow:before {
    height: 21.1rem;
    width: 43.8rem;
    bottom: 0.1rem;
  }
}
.change--entryWindow__txt {
  font-size: 3.8vw;
  line-height: 6.4vw;
  margin-bottom: 10vw;
}
@media only screen and (min-width: 501px) {
  .change--entryWindow__txt {
    font-size: 1.9rem;
    line-height: 3.2rem;
    margin-bottom: 5rem;
  }
}
.change--entryRecommendation img {
  width: 62.6vw;
}
@media only screen and (min-width: 501px) {
  .change--entryRecommendation img {
    width: 31.3rem;
  }
}
.change--entryIlust {
  margin: -29vw -6vw 0;
  position: relative;
}
.change--campaign {
  margin: 68vw 0 36vw;
  position: relative;
}
@media only screen and (min-width: 501px) {
  .change--campaign {
    margin: 34rem 0 18rem;
  }
}
.change--campaign .particlesStar {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.change--campaignTtl {
  background: url(../images/bg_campaignTtl.webp) no-repeat;
  background-size: contain;
  background-position: bottom;
  text-align: center;
  margin: 0 -6vw 10vw;
  padding-bottom: 7vw;
  position: relative;
  z-index: 3;
}
@media only screen and (min-width: 501px) {
  .change--campaignTtl {
    margin: 0 -3rem 5rem;
    padding-bottom: 3.5rem;
  }
}
.change--campaignTtl__txt {
  line-height: 1;
  margin-bottom: 19vw;
}
@media only screen and (min-width: 501px) {
  .change--campaignTtl__txt {
    margin-bottom: 9.5rem;
  }
}
.change--campaignTtl__txt img {
  width: 20.2vw;
}
@media only screen and (min-width: 501px) {
  .change--campaignTtl__txt img {
    width: 10.1rem;
  }
}
.change--campaignTtl__main {
  padding: 0 6vw;
  margin-bottom: 8vw;
}
@media only screen and (min-width: 501px) {
  .change--campaignTtl__main {
    padding: 0 3rem;
    margin-bottom: 4rem;
  }
}
.change--campaignTtl__sub {
  padding: 0 6vw;
}
@media only screen and (min-width: 501px) {
  .change--campaignTtl__sub {
    padding: 0 3rem;
  }
}
.change--campaignTtl__sub img {
  width: 50vw;
}
@media only screen and (min-width: 501px) {
  .change--campaignTtl__sub img {
    width: 25rem;
  }
}
.change--campaignTtl-small {
  position: relative;
  font-size: 4vw;
  margin-bottom: 4vw;
  padding-left: 4.8vw;
}
@media only screen and (min-width: 501px) {
  .change--campaignTtl-small {
    font-size: 2rem;
    margin-bottom: 2rem;
    padding-left: 2.4rem;
  }
}
.change--campaignTtl-small:before {
  content: "";
  width: 2.8vw;
  height: 2.8vw;
  background: url(../images/ico_star.webp) no-repeat;
  position: absolute;
  background-size: cover;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
@media only screen and (min-width: 501px) {
  .change--campaignTtl-small:before {
    width: 1.4rem;
    height: 1.4rem;
  }
}
.change--campaignImg {
  margin-bottom: 5vw;
  position: relative;
  z-index: 3;
}
@media only screen and (min-width: 501px) {
  .change--campaignImg {
    margin-bottom: 2.5rem;
  }
}
.change--campaignTxt {
  font-size: 3.6vw;
  margin-bottom: 12vw;
  line-height: 6.4vw;
  position: relative;
  z-index: 3;
}
@media only screen and (min-width: 501px) {
  .change--campaignTxt {
    font-size: 1.8rem;
    margin-bottom: 6rem;
    line-height: 3.2rem;
  }
}
.change--campaignTxt span {
  font-size: 2.8vw;
  line-height: 5.6vw;
}
@media only screen and (min-width: 501px) {
  .change--campaignTxt span {
    font-size: 1.4rem;
    line-height: 2.8rem;
  }
}
.change--campaignBtn {
  position: relative;
  z-index: 3;
}
.change--campaignBtn__img {
  margin-bottom: 2vw;
}
@media only screen and (min-width: 501px) {
  .change--campaignBtn__img {
    margin-bottom: 1rem;
  }
}
.change--campaignBtn__txt {
  text-align: center;
  font-size: 2.8vw;
}
@media only screen and (min-width: 501px) {
  .change--campaignBtn__txt {
    font-size: 1.4rem;
  }
}
.change__block {
  position: absolute;
  top: 0;
  left: 0;
}
.change--on {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 1;
  -webkit-transition: 1s;
  transition: 1s;
}
.change--on__inner {
  position: relative;
}
.change--on .change--entry {
  background: url(../images/bg_changeOn.webp) no-repeat;
  background-size: cover;
}
.change--on .change--entryCount {
  color: #323970;
}
.change--on .change--entryIlust {
  margin: -29vw -6vw 0;
}
@media only screen and (min-width: 501px) {
  .change--on .change--entryIlust {
    margin: -14.5rem -3rem 0;
  }
}
.change--off {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: 1s;
  transition: 1s;
  pointer-events: none;
  width: 100%;
  height: 100%;
}
.change--off__inner {
  position: relative;
  background: url(../images/bg_changeOff.webp) no-repeat;
  background-size: cover;
  border-radius: 25rem 25rem 0 0;
  overflow: hidden;
}
.change--off .particlesStar {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  pointer-events: none;
  top: 0;
  left: 0;
}
.change--off .change--entryButton {
  opacity: 0.6;
  pointer-events: none;
}
.change--off .change--entryButton__txt {
  display: none;
}
.change--off .change--entryButton__circle {
  right: 0.8vw;
  left: inherit;
  -webkit-animation: none;
          animation: none;
}
@media only screen and (min-width: 501px) {
  .change--off .change--entryButton__circle {
    right: 0.4rem;
  }
}
.change--off .change--entryCount {
  background: url(../images/img_changeEntry-frame.webp) no-repeat;
  background-size: contain;
  padding: 7vw 0;
}
@media only screen and (min-width: 501px) {
  .change--off .change--entryCount {
    padding: 3.5rem 0;
  }
}
.change--off .change--entryCount__thanks {
  font-size: 5.4vw;
  line-height: 1;
  margin-bottom: 6vw;
}
@media only screen and (min-width: 501px) {
  .change--off .change--entryCount__thanks {
    font-size: 2.7rem;
    margin-bottom: 3rem;
  }
}
.change--off .change--entryCount__main {
  margin-bottom: 0;
}
.change--off .change--entryIlust {
  margin: 8vw -6vw 0;
}
@media only screen and (min-width: 501px) {
  .change--off .change--entryIlust {
    margin: 4rem -3rem 0;
  }
}
.change--off .change--entryRecommendation {
  text-align: center;
  margin: -38vw 0 10vw;
  position: relative;
}
@media only screen and (min-width: 501px) {
  .change--off .change--entryRecommendation {
    margin: -19rem 0 5rem;
  }
}
.change--off .change--slider {
  margin: 0 -6vw;
}
@media only screen and (min-width: 501px) {
  .change--off .change--slider {
    margin: 0 -3rem;
  }
}
.change--off .change--slider .c-slider01 {
  padding-bottom: 12vw;
  margin-bottom: 20vw;
}
@media only screen and (min-width: 501px) {
  .change--off .change--slider .c-slider01 {
    padding-bottom: 6rem;
    margin-bottom: 10rem;
  }
}
.change--off .change--slider .c-slider01 li {
  padding: 0 1vw;
}
@media only screen and (min-width: 501px) {
  .change--off .change--slider .c-slider01 li {
    padding: 0 0.5rem;
  }
}
.change--off .change--slider .c-slider01 .slick-list {
  height: 150vw !important;
}
@media only screen and (min-width: 501px) {
  .change--off .change--slider .c-slider01 .slick-list {
    height: 77rem !important;
  }
}
.change--off .change--slider .c-slider01 .c-slider__img {
  margin-bottom: 2vw;
}
@media only screen and (min-width: 501px) {
  .change--off .change--slider .c-slider01 .c-slider__img {
    margin-bottom: 1rem;
  }
}
.change--off .change--slider .c-slider01 .c-slider__ttl {
  text-align: center;
  font-size: 6.4vw;
  margin-bottom: 5vw;
  line-height: 10.4vw;
  font-family: "Shippori Mincho", serif;
}
@media only screen and (min-width: 501px) {
  .change--off .change--slider .c-slider01 .c-slider__ttl {
    font-size: 3.2rem;
    margin-bottom: 2.5rem;
    line-height: 5.2rem;
  }
}
.change--off .change--slider .c-slider01 .c-slider__txt {
  padding: 0 4vw;
  font-size: 3.2vw;
  line-height: 6.4vw;
}
@media only screen and (min-width: 501px) {
  .change--off .change--slider .c-slider01 .c-slider__txt {
    padding: 0 2rem;
    font-size: 1.6rem;
    line-height: 3.2rem;
  }
}
.change--off .change--slider .c-slider01 .slick-dots {
  bottom: 0;
}
.change--off .change--slider .c-slider01 .slick-dots li {
  background: url(../images/ico_dotsOff.webp) no-repeat;
  background-size: cover;
  height: 4.4vw;
  width: 3.6vw;
  margin: 0 3.4vw;
}
@media only screen and (min-width: 501px) {
  .change--off .change--slider .c-slider01 .slick-dots li {
    height: 2.2rem;
    width: 1.8rem;
    margin: 0 1.7rem;
  }
}
.change--off .change--slider .c-slider01 .slick-dots li.slick-active {
  background: url(../images/ico_dotsOn.webp) no-repeat;
  background-size: cover;
  height: 4.4vw;
  width: 3.6vw;
}
@media only screen and (min-width: 501px) {
  .change--off .change--slider .c-slider01 .slick-dots li.slick-active {
    height: 2.2rem;
    width: 1.8rem;
  }
}
.change--off .change--campaign {
  margin: 0 0 18vw;
  display: none;
}
@media only screen and (min-width: 501px) {
  .change--off .change--campaign {
    margin: 0 0 9rem;
  }
}
.change--off .change--campaign__inner {
  position: relative;
}
.change--off .change--campaign__inner::before {
  content: "";
  position: absolute;
  background: url(../images/bg_campaignAnchor02.webp) no-repeat;
  width: 100%;
  height: 100vw;
  top: 0;
  left: 0;
  background-size: cover;
  z-index: 2;
}
@media only screen and (min-width: 501px) {
  .change--off .change--campaign__inner::before {
    height: 50rem;
  }
}
.change--off .change--campaignMovie {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  margin: auto;
  opacity: 0.4;
}
.change--off .change--campaignMovie__inner {
  position: relative;
}
.change--off .change--campaignMovie__inner::before {
  content: "";
  position: absolute;
  background: url(../images/bg_campaignAnchor02.webp) no-repeat;
  width: 100%;
  height: 100vw;
  bottom: 0;
  left: 0;
  background-size: cover;
  z-index: 2;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
@media only screen and (min-width: 501px) {
  .change--off .change--campaignMovie__inner::before {
    height: 50rem;
  }
}
.change--off .change--campaign .c-contentInner {
  position: relative;
  padding: 57vw 6vw 0;
}
@media only screen and (min-width: 501px) {
  .change--off .change--campaign .c-contentInner {
    padding: 28.5rem 3rem 0;
  }
}
.change--off .change--campaign .c-contentInner::-webkit-scrollbar {
  display: none;
}

.off_link {
  display: none;
}

.switchOff .on_link {
  display: none;
}
.switchOff .off_link {
  display: block;
}
.switchOff .change {
  height: 657.6vw;
}
@media only screen and (min-width: 501px) {
  .switchOff .change {
    height: 328.8rem;
  }
}
.switchOff .change--on {
  opacity: 0;
  pointer-events: none;
  -webkit-animation-name: none;
          animation-name: none;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
.switchOff .change--off {
  opacity: 1;
  pointer-events: auto;
}
.switchOff .change--off .change--campaign {
  display: block;
}

@-webkit-keyframes purupuru {
  from {
    left: 2%;
  }
  50% {
    left: 10%;
  }
  to {
    left: 2%;
  }
}

@keyframes purupuru {
  from {
    left: 2%;
  }
  50% {
    left: 10%;
  }
  to {
    left: 2%;
  }
}
@-webkit-keyframes none {
  from {
    display: block;
  }
  to {
    display: none;
  }
}
@keyframes none {
  from {
    display: block;
  }
  to {
    display: none;
  }
}
.p-snsShare {
  position: relative;
  padding: 80vw 0 9.3333333333vw;
  background: rgb(202, 221, 217);
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(202, 221, 217)), to(rgb(223, 224, 223)));
  background: linear-gradient(180deg, rgb(202, 221, 217) 0%, rgb(223, 224, 223) 100%);
}
@media only screen and (min-width: 768px) {
  .p-snsShare {
    padding: 38rem 0 1.5rem;
  }
}
.p-snsShare__ttl {
  text-align: center;
  line-height: 1;
  margin-bottom: 6.6666666667vw;
}
@media only screen and (min-width: 768px) {
  .p-snsShare__ttl {
    margin-bottom: 4.5rem;
  }
}
.p-snsShare__ttl img {
  width: 62.6666666667vw;
}
@media only screen and (min-width: 768px) {
  .p-snsShare__ttl img {
    width: 34.6rem;
  }
}
.p-snsShare__txt {
  text-align: center;
  line-height: 7.4666666667vw;
  font-size: 3.7333333333vw;
  margin-bottom: 16vw;
}
@media only screen and (min-width: 768px) {
  .p-snsShare__txt {
    font-size: 1.4rem;
    line-height: 2;
    margin-bottom: 8rem;
  }
}
.p-snsShare__list {
  margin: 0 auto 26.6666666667vw;
}
@media only screen and (min-width: 768px) {
  .p-snsShare__list {
    margin: 0 auto 14rem;
  }
}
.p-snsShare__list__box01 {
  text-align: left;
}
.p-snsShare__list__box01 .p-snsShare__list__box__moveCircle {
  position: relative;
  display: inline-block;
  width: 41.3333333333vw;
  height: 35.7333333333vw;
  background: -webkit-gradient(linear, left top, right top, from(#9AD0C9), to(#5A88A1));
  background: linear-gradient(90deg, #9AD0C9, #5A88A1);
  border-radius: 57% 59% 53% 47%/51% 71% 47% 66%;
  -webkit-animation: fuwafuwaCircle01 8s linear infinite;
  animation: fuwafuwaCircle01 8s linear infinite;
}
@media only screen and (min-width: 768px) {
  .p-snsShare__list__box01 .p-snsShare__list__box__moveCircle {
    height: 17.6rem;
    width: 19.8rem;
    -webkit-transition: 0.6s;
    transition: 0.6s;
  }
}
@media only screen and (min-width: 768px) {
  .p-snsShare__list__box01 .p-snsShare__list__box__moveCircle:hover {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
}
.p-snsShare__list__box01 .p-snsShare__list__box__snsIco {
  display: block;
  height: 100%;
  position: relative;
}
.p-snsShare__list__box01 .p-snsShare__list__box__snsIco img {
  width: 15.2vw;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
@media only screen and (min-width: 768px) {
  .p-snsShare__list__box01 .p-snsShare__list__box__snsIco img {
    width: 7.5rem;
  }
}
.p-snsShare__list__box02 {
  margin-top: -6.4vw;
  text-align: right;
}
@media only screen and (min-width: 768px) {
  .p-snsShare__list__box02 {
    margin-top: -3rem;
  }
}
.p-snsShare__list__box02 .p-snsShare__list__box__moveCircle {
  position: relative;
  display: inline-block;
  width: 40.5333333333vw;
  height: 35.4666666667vw;
  background: linear-gradient(75deg, #9AD0C9, #5A88A1);
  border-radius: 57% 59% 53% 47%/51% 71% 47% 66%;
  -webkit-animation: fuwafuwaCircle01 8s linear infinite;
  animation: fuwafuwaCircle01 8s linear infinite;
}
@media only screen and (min-width: 768px) {
  .p-snsShare__list__box02 .p-snsShare__list__box__moveCircle {
    width: 20.4rem;
    height: 17.7rem;
    -webkit-transition: 0.6s;
    transition: 0.6s;
  }
}
@media only screen and (min-width: 768px) {
  .p-snsShare__list__box02 .p-snsShare__list__box__moveCircle:hover {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
}
.p-snsShare__list__box02 .p-snsShare__list__box__snsIco {
  display: block;
  height: 100%;
  position: relative;
}
.p-snsShare__list__box02 .p-snsShare__list__box__snsIco img {
  width: 17.3333333333vw;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
@media only screen and (min-width: 768px) {
  .p-snsShare__list__box02 .p-snsShare__list__box__snsIco img {
    width: 8.6rem;
  }
}
.p-snsShare__list__box03 {
  margin-top: -6.4vw;
  text-align: left;
}
@media only screen and (min-width: 768px) {
  .p-snsShare__list__box03 {
    margin-top: -1.8rem;
  }
}
.p-snsShare__list__box03 .p-snsShare__list__box__moveCircle {
  position: relative;
  display: inline-block;
  width: 40.5333333333vw;
  height: 35.4666666667vw;
  background: -webkit-gradient(linear, left top, left bottom, from(#9AD0C9), to(#5A88A1));
  background: linear-gradient(180deg, #9AD0C9, #5A88A1);
  border-radius: 57% 59% 53% 47%/51% 71% 47% 66%;
  -webkit-animation: fuwafuwaCircle01 8s linear infinite;
  animation: fuwafuwaCircle01 8s linear infinite;
}
@media only screen and (min-width: 768px) {
  .p-snsShare__list__box03 .p-snsShare__list__box__moveCircle {
    width: 20.1rem;
    height: 17.9rem;
    -webkit-transition: 0.6s;
    transition: 0.6s;
  }
}
@media only screen and (min-width: 768px) {
  .p-snsShare__list__box03 .p-snsShare__list__box__moveCircle:hover {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
}
.p-snsShare__list__box03 .p-snsShare__list__box__snsIco {
  display: block;
  height: 100%;
  position: relative;
  margin: auto;
}
.p-snsShare__list__box03 .p-snsShare__list__box__snsIco img {
  width: 10.6666666667vw;
}
@media only screen and (min-width: 768px) {
  .p-snsShare__list__box03 .p-snsShare__list__box__snsIco img {
    width: 5rem;
  }
}
.p-snsShare__list__box03 .p-snsShare__list__box__snsIco--link-balloon {
  position: absolute;
  bottom: 105%;
  left: 95%;
  z-index: 0;
  padding: 10px;
  font-family: "Tenor Sans", sans-serif;
  font-size: 1rem;
  line-height: 1;
  color: #fff;
  visibility: hidden;
  background-color: rgba(14, 14, 14, 0.5);
  border-radius: 3px 3px 3px 0;
  opacity: 0;
  -webkit-transition: visibility 0s 0.5s, opacity 0.5s, -webkit-transform 0.5s;
  transition: visibility 0s 0.5s, opacity 0.5s, -webkit-transform 0.5s;
  transition: visibility 0s 0.5s, opacity 0.5s, transform 0.5s;
  transition: visibility 0s 0.5s, opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
}
.p-snsShare__list__box03 .p-snsShare__list__box__snsIco--link-balloon.is-active {
  visibility: inherit;
  opacity: 1;
  -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, transform 0.5s;
  transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
  -webkit-transform: translateY(-5px);
          transform: translateY(-5px);
}
.p-snsShare .u-btn03 {
  margin-bottom: 26.6666666667vw;
}
@media only screen and (min-width: 768px) {
  .p-snsShare .u-btn03 {
    margin-bottom: 9.375vw;
  }
}
.p-snsShare__copyright {
  text-align: center;
  font-size: 3.2vw;
}
@media only screen and (min-width: 768px) {
  .p-snsShare__copyright {
    font-size: 1.2rem;
  }
}
.p-snsShare .p-bgFuwafuwa01 {
  position: absolute;
  width: 78.6666666667vw;
  height: 51.4666666667vw;
  bottom: 34.6666666667vw;
  left: -28vw;
  right: inherit;
  top: inherit;
  -webkit-filter: blur(5px);
  -moz-filter: blur(5px);
  -o-filter: blur(5px);
  -ms-filter: blur(5px);
  filter: blur(5px);
}
@media only screen and (min-width: 768px) {
  .p-snsShare .p-bgFuwafuwa01 {
    width: 20.8333333333vw;
    height: 10.0520833333vw;
    bottom: 25vw;
    left: -10.4166666667vw;
    right: inherit;
    top: inherit;
    opacity: 0.7;
  }
}
.p-snsShare .p-bgFuwafuwa02 {
  position: absolute;
  width: 35.7333333333vw;
  height: 36.5333333333vw;
  bottom: 9.0666666667vw;
  left: inherit;
  right: -15.2vw;
  top: inherit;
  -webkit-filter: blur(5px);
  -moz-filter: blur(5px);
  -o-filter: blur(5px);
  -ms-filter: blur(5px);
  filter: blur(5px);
}
@media only screen and (min-width: 768px) {
  .p-snsShare .p-bgFuwafuwa02 {
    width: 14.0625vw;
    height: 7.1354166667vw;
    bottom: 11.6666666667vw;
    left: inherit;
    right: -5.0520833333vw;
    top: inherit;
    opacity: 0.6;
  }
}