@charset "UTF-8";
/************オープニング****************/
div.main-image-wrap h1 {
  opacity: 0;
  transform-origin: center center;
  transform: scale(0);
  animation: opening-titile01_sp 0.4s 0.2s ease-out forwards;
}
@media screen and (min-width: 768px) {
  div.main-image-wrap h1 {
    animation: opening-titile01_pc 0.6s 0.2s ease-out forwards;
  }
}

div.main-image-wrap p {
  opacity: 0;
  transform-origin: center center;
  transform: scale(0);
  animation: opening-icon-ani 0.4s 1s ease-out forwards;
}

div.main-image-wrap h2 {
  opacity: 0;
  transform-origin: center center;
  transform: scale(0);
  animation: opening-icon-ani 0.4s 0.6s ease-out forwards;
}

div.main-image-wrap div.illust01 {
  opacity: 0;
  animation: opening-illust01 0.4s 0.6s ease-out forwards;
}

div.main-image-wrap div.illust02 {
  opacity: 0;
  animation: opening-illust02 0.4s 0.8s ease-out forwards;
}

div.main-image-wrap div.illust03 {
  opacity: 0;
  animation: fadein 0.4s 0.8s ease-out forwards;
}

@keyframes opening-titile01_sp {
  0% {
    opacity: 0;
    transform: translate(-50%, 0) scale(0);
  }
  90% {
    opacity: 1;
    transform: translate(-50%, 0) scale(1.06);
  }
  100% {
    opacity: 1;
    transform: translate(-50%, 0) scale(1);
  }
}
@keyframes opening-titile01_pc {
  0% {
    opacity: 0;
    transform: translate(-50%, -8%) scale(0);
  }
  90% {
    opacity: 1;
    transform: translate(-50%, -8%) scale(1.06);
  }
  100% {
    opacity: 1;
    transform: translate(-50%, -8%) scale(1);
  }
}
@keyframes opening-icon-ani {
  0% {
    opacity: 0;
    transform: scale(0);
  }
  90% {
    opacity: 1;
    transform: scale(1.06);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes opening-illust01 {
  0% {
    opacity: 0;
    transform: translate(-30%, 0);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}
@keyframes opening-illust02 {
  0% {
    opacity: 0;
    transform: translate(30%, 0);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}
/************オープニング****************/
section.sec04 div.sec04-cont-wrap01 h2.sec04-title.ani,
section.sec04 div.sec04-cont-wrap01 p.sec04-txt01.ani,
section.sec02 div.sec02-inner02 div.sec02-inner02-box p.ani,
section.sec01 div.sec01-cont-wrap span.bg-circle03.ani,
section.sec01 div.sec01-cont-wrap span.bg-circle02.ani,
section.sec01 div.sec01-cont-wrap span.bg-circle01.ani,
section.sec01 div.sec01-cont-wrap span.sec01-img.ani,
section.sec01 div.sec01-cont-wrap div.sec01-cont-box p.ani,
section.sec01 div.sec01-cont-wrap div.sec01-cont-box h2.sec01-sub-title.ani {
  opacity: 0;
}
section.sec04 div.sec04-cont-wrap01 h2.sec04-title.ani.animation,
section.sec04 div.sec04-cont-wrap01 p.sec04-txt01.ani.animation,
section.sec02 div.sec02-inner02 div.sec02-inner02-box p.ani.animation,
section.sec01 div.sec01-cont-wrap span.bg-circle03.ani.animation,
section.sec01 div.sec01-cont-wrap span.bg-circle02.ani.animation,
section.sec01 div.sec01-cont-wrap span.bg-circle01.ani.animation,
section.sec01 div.sec01-cont-wrap span.sec01-img.ani.animation,
section.sec01 div.sec01-cont-wrap div.sec01-cont-box p.ani.animation,
section.sec01 div.sec01-cont-wrap div.sec01-cont-box h2.sec01-sub-title.ani.animation {
  animation: fadein 0.6s 0.2s ease-out forwards;
}

section.sec01 div.sec01-cont-wrap span.sec01-img.animation {
  animation-delay: 0.8s;
}

section.sec01 div.sec01-cont-wrap span.bg-circle03.animation,
section.sec01 div.sec01-cont-wrap span.bg-circle02.animation,
section.sec01 div.sec01-cont-wrap span.bg-circle01.animation {
  animation-delay: 0.4s;
}

div.photo-wrap div.photo01.ani {
  opacity: 0;
}
div.photo-wrap div.photo01.ani.animation {
  animation: fadein 0.6s 0.2s ease-out forwards;
}

div.photo-wrap div.photo02.ani {
  opacity: 0;
}
div.photo-wrap div.photo02.ani.animation {
  animation: fadein 0.6s 0.6s ease-out forwards;
}

@keyframes fadein {
  0% {
    opacity: 0;
    transform: translate(0, 12%);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}
section span.number span {
  display: inline-block;
}

section.sec02 h2 span.sec02-sub-txt02.ani,
section.sec02 h2 span.sec02-sub-txt01.ani {
  opacity: 0;
}
section.sec02 h2 span.sec02-sub-txt02.ani.animation,
section.sec02 h2 span.sec02-sub-txt01.ani.animation {
  animation: fadein02 0.6s 0.2s ease-out forwards;
}

@keyframes fadein02 {
  0% {
    opacity: 0;
    transform: translate(-50%, 12%);
  }
  100% {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}
@keyframes flag-ani01_sp {
  0% {
    opacity: 0;
    transform-origin: center center;
    transform: translate(20%, -42%) rotate(20deg);
  }
  100% {
    opacity: 1;
    transform-origin: center center;
    transform: translate(0, -42%) rotate(0deg);
  }
}
section.sec02 div.sec02-inner ul li {
  /*ani*/
}
section.sec02 div.sec02-inner ul li.ani dl dt {
  opacity: 0;
  transform-origin: center center;
  transform: translate(20%, -42%);
}
section.sec02 div.sec02-inner ul li.ani dl dd {
  opacity: 0;
}
section.sec02 div.sec02-inner ul li.ani dl dd span.icon {
  opacity: 0;
}
section.sec02 div.sec02-inner ul li.ani.animation dl dt {
  animation: flag-ani01_sp 0.6s 0.2s ease-out forwards;
}
@media screen and (min-width: 768px) {
  section.sec02 div.sec02-inner ul li.ani.animation dl dt {
    animation: flag-ani01_pc 0.6s 0.2s ease-out forwards;
  }
}
section.sec02 div.sec02-inner ul li.ani.animation dl dd {
  animation: fadein 0.6s 0.4s ease-out forwards;
}
section.sec02 div.sec02-inner ul li.ani.animation dl dd span.icon {
  animation: icon-scale-ani01_sp 0.4s 0.4s ease-out forwards;
}
@media screen and (min-width: 768px) {
  section.sec02 div.sec02-inner ul li.ani.animation dl dd span.icon {
    animation: icon-scale-ani01_pc 0.4s 0.6s ease-out forwards;
  }
}
@media screen and (min-width: 768px) {
  section.sec02 div.sec02-inner ul li.ani.animation:last-child dl dt {
    animation: flag-ani01_pc 0.6s 0.6s ease-out forwards;
  }
  section.sec02 div.sec02-inner ul li.ani.animation:last-child dl dd {
    animation: fadein 0.6s 0.8s ease-out forwards;
  }
  section.sec02 div.sec02-inner ul li.ani.animation:last-child dl dd span.icon02 {
    animation: icon-scale-ani01_pc02 0.4s 1s ease-out forwards;
  }
}

@keyframes flag-ani01_sp {
  0% {
    opacity: 0;
    transform-origin: center center;
    transform: translate(20%, -42%) rotate(20deg);
  }
  100% {
    opacity: 1;
    transform-origin: center center;
    transform: translate(0, -42%) rotate(0deg);
  }
}
@keyframes flag-ani01_pc {
  0% {
    opacity: 0;
    transform-origin: center center;
    transform: translate(-30%, -42%) rotate(20deg);
  }
  100% {
    opacity: 1;
    transform-origin: center center;
    transform: translate(-50%, -42%);
  }
}
@keyframes icon-scale-ani01_sp {
  0% {
    opacity: 0;
    transform-origin: center center;
    transform: translate(25%, -50%) scale(0);
  }
  100% {
    opacity: 1;
    transform-origin: center center;
    transform: translate(25%, -50%) scale(1);
  }
}
@keyframes icon-scale-ani01_pc {
  0% {
    opacity: 0;
    transform-origin: center center;
    transform: translate(-50%, 0%) scale(0);
  }
  100% {
    opacity: 1;
    transform-origin: center center;
    transform: translate(-50%, 0%) scale(1);
  }
}
@keyframes icon-scale-ani01_pc02 {
  0% {
    opacity: 0;
    transform-origin: center center;
    transform: translate(50%, 0%) scale(0);
  }
  100% {
    opacity: 1;
    transform-origin: center center;
    transform: translate(50%, 0%) scale(1);
  }
}
/*キャンペーン概要*/
section.sec03 h2.sec03-title.ani span.txt span.circle {
  opacity: 0;
}
section.sec03 h2.sec03-title.ani.animation span.txt span.circle {
  opacity: 0;
  animation: sec03-title-bg-ani 1.2s ease-out forwards;
}
@media screen and (min-width: 768px) {
  section.sec03 h2.sec03-title.ani.animation span.txt span.circle {
    animation: sec03-title-bg-ani_pc 0.8s ease-out forwards;
  }
}
section.sec03 h2.sec03-title.ani.animation span.txt span.circle:first-child {
  animation-delay: 0.1s;
}
section.sec03 h2.sec03-title.ani.animation span.txt span.circle:nth-child(2) {
  animation-delay: 0.2s;
}
section.sec03 h2.sec03-title.ani.animation span.txt span.circle:nth-child(3) {
  animation-delay: 0.3s;
}
section.sec03 h2.sec03-title.ani.animation span.txt span.circle:nth-child(4) {
  animation-delay: 0.4s;
}
section.sec03 h2.sec03-title.ani.animation span.txt span.circle:nth-child(5) {
  animation-delay: 0.5s;
}
section.sec03 h2.sec03-title.ani.animation span.txt span.circle:nth-child(6) {
  animation-delay: 0.6s;
}
section.sec03 h2.sec03-title.ani.animation span.gaiyou span {
  display: inline-block;
  opacity: 0;
  animation: sec03-title-bg-ani 0.8s ease-out forwards;
}
@media screen and (min-width: 768px) {
  section.sec03 h2.sec03-title.ani.animation span.gaiyou span {
    animation: sec03-title-bg-ani_pc 0.8s ease-out forwards;
  }
}
section.sec03 h2.sec03-title.ani.animation span.gaiyou span:first-child {
  animation-delay: 0.2s;
}
section.sec03 h2.sec03-title.ani.animation span.gaiyou span:nth-child(2) {
  animation-delay: 0.3s;
}
section.sec03 h2.sec03-title.ani.animation span.gaiyou span:nth-child(3) {
  animation-delay: 0.4s;
}
section.sec03 h2.sec03-title.ani.animation span.gaiyou span:nth-child(4) {
  animation-delay: 0.5s;
}
section.sec03 h2.sec03-title.ani.animation span.gaiyou span:nth-child(6) {
  animation-delay: 0.6s;
}
section.sec03 h2.sec03-title.ani.animation span.gaiyou span:nth-child(7) {
  animation-delay: 0.7s;
}
section.sec03 h2.sec03-title.ani.animation span.gaiyou span:nth-child(8) {
  animation-delay: 0.8s;
}

@keyframes sec03-title-bg-ani {
  0% {
    opacity: 0;
    transform-origin: center center;
    transform: translate(-50%, 0);
  }
  100% {
    opacity: 1;
    transform-origin: center center;
    transform: translate(0%, 0);
  }
}
@keyframes sec03-title-bg-ani_pc {
  0% {
    opacity: 0;
    transform-origin: center center;
    transform: translate(0%, -50%);
  }
  100% {
    opacity: 1;
    transform-origin: center center;
    transform: translate(0%, 0);
  }
}
/**/
section.sec04 div.sec04-cont-wrap02 h3.flag.ani::before,
section.sec04 div.sec04-cont-wrap01 h3.flag.ani::before {
  opacity: 0;
}
section.sec04 div.sec04-cont-wrap02 h3.flag.ani span,
section.sec04 div.sec04-cont-wrap01 h3.flag.ani span {
  opacity: 0;
}
section.sec04 div.sec04-cont-wrap02 h3.flag.ani.animation::before,
section.sec04 div.sec04-cont-wrap01 h3.flag.ani.animation::before {
  opacity: 0;
  animation: flag-shadowani 0.2s 0.6s ease-out forwards;
}
section.sec04 div.sec04-cont-wrap02 h3.flag.ani.animation span,
section.sec04 div.sec04-cont-wrap01 h3.flag.ani.animation span {
  animation: flag-ani02_sp 0.4s 1s ease-out forwards;
}

section.sec04 div.sec04-cont-wrap02 p.sec04-icon01.ani,
section.sec04 div.sec04-cont-wrap01 p.sec04-icon01.ani {
  opacity: 0;
}
section.sec04 div.sec04-cont-wrap02 p.sec04-icon01.ani.animation,
section.sec04 div.sec04-cont-wrap01 p.sec04-icon01.ani.animation {
  animation: sec04-icon-ani 0.4s 0.2s ease-out forwards;
}

section.sec04 div.sec04-cont-wrap01 p.sec04-icon02.ani {
  opacity: 0;
}
section.sec04 div.sec04-cont-wrap01 p.sec04-icon02.ani.animation {
  animation: sec04-icon-ani 0.4s 0.6s ease-out forwards;
}

@keyframes flag-ani02_sp {
  0% {
    opacity: 0;
    transform-origin: center center;
    transform: translate(20%, 0%) rotate(20deg);
  }
  100% {
    opacity: 1;
    transform-origin: center center;
    transform: translate(0, 0%) rotate(0deg);
  }
}
@keyframes flag-ani02_pc {
  0% {
    opacity: 0;
    transform-origin: center center;
    transform: translate(-30%, -42%) rotate(20deg);
  }
  100% {
    opacity: 1;
    transform-origin: center center;
    transform: translate(-50%, -42%);
  }
}
@keyframes flag-shadowani {
  0% {
    opacity: 0;
    transform-origin: center center;
    transform: translate(0, 42%) scale(0);
  }
  100% {
    opacity: 1;
    transform-origin: center center;
    transform: translate(0, 42%) scale(1);
  }
}
@keyframes sec04-icon-ani {
  0% {
    opacity: 0;
    transform-origin: center center;
    transform: scale(0);
  }
  100% {
    opacity: 1;
    transform-origin: center center;
    transform: scale(1);
  }
}
section.sec04 div.sec04-cont-wrap01 div.sec04-list ul li.ani {
  transform-origin: center center;
  transform: scale(0);
}
section.sec04 div.sec04-cont-wrap01 div.sec04-list ul li.ani.animation {
  animation: sec04-scale-ani 0.8s 0.2s forwards;
}
@media screen and (min-width: 768px) {
  section.sec04 div.sec04-cont-wrap01 div.sec04-list ul li.ani.animation {
    animation: sec04-scale-ani 1.4s 0.2s forwards;
  }
}
section.sec04 div.sec04-cont-wrap01 div.sec04-list ul li:nth-child(2).ani.animation {
  animation-delay: 0.3s;
}
section.sec04 div.sec04-cont-wrap01 div.sec04-list ul li:nth-child(3).ani.animation {
  animation-delay: 0.4s;
}
section.sec04 div.sec04-cont-wrap01 div.sec04-list ul li:nth-child(4).ani.animation {
  animation-delay: 0.5s;
}
section.sec04 div.sec04-cont-wrap01 div.sec04-list ul li:nth-child(5).ani.animation {
  animation-delay: 0.6s;
}

@keyframes sec04-scale-ani {
  0% {
    transform: scale(0);
  }
  75% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
section.sec04 div.sec04-cont-wrap01 div.sec04-txt-box01.ani p {
  opacity: 0;
}
section.sec04 div.sec04-cont-wrap01 div.sec04-txt-box01.animation p {
  animation: fadein 0.6s 0.2s ease-out forwards;
}

section.sec04 div.sec04-cont-wrap01 div.sec04-txt-box01 span.illust01.ani {
  opacity: 0;
}
section.sec04 div.sec04-cont-wrap01 div.sec04-txt-box01 span.illust01.ani.animation {
  animation: sec04-illust-ani01 0.6s 0.2s ease-out forwards, sec04-illust-buruburu01 3s 1.2s infinite;
}
@media screen and (min-width: 768px) {
  section.sec04 div.sec04-cont-wrap01 div.sec04-txt-box01 span.illust01.ani.animation {
    animation: sec04-illust-ani01-pc 0.6s 0.4s ease-out forwards, sec04-illust-buruburu01-pc 3s 1.2s infinite;
  }
}

section.sec04 div.sec04-cont-wrap01 span.illust02.ani {
  opacity: 0;
  transform: translate(-20%, 78%);
}
section.sec04 div.sec04-cont-wrap01 span.illust02.ani.animation {
  animation: sec04-illust-ani02 0.6s 0.2s ease-out forwards, sec04-illust-buruburu02 3s 1.2s infinite;
}
@media screen and (min-width: 768px) {
  section.sec04 div.sec04-cont-wrap01 span.illust02.ani.animation {
    animation: sec04-illust-ani02-pc 0.6s 0.4s ease-out forwards, sec04-illust-buruburu02-pc 3s 1.2s infinite;
  }
}

@keyframes sec04-illust-ani01 {
  0% {
    opacity: 0;
    transform: translate(58%, 48%);
  }
  100% {
    opacity: 1;
    transform: translate(18%, 48%);
  }
}
@keyframes sec04-illust-buruburu01 {
  0% {
    transform: translate(18%, 48%);
  }
  30% {
    transform: translate(18%, 48%);
  }
  32% {
    transform: translate(18.8%, 48%);
  }
  34% {
    transform: translate(18%, 48%);
  }
  36% {
    transform: translate(17.2%, 48%);
  }
  38% {
    transform: translate(18%, 48%);
  }
  40% {
    transform: translate(18.8%, 48%);
  }
  42% {
    transform: translate(18%, 48%);
  }
  44% {
    transform: translate(17.2%, 48%);
  }
  46% {
    transform: translate(18%, 48%);
  }
  100% {
    transform: translate(18%, 48%);
  }
}
@keyframes sec04-illust-ani02 {
  0% {
    opacity: 0;
    transform: translate(-20%, 78%);
  }
  100% {
    opacity: 1;
    transform: translate(0, 78%);
  }
}
@keyframes sec04-illust-buruburu02 {
  0% {
    transform: translate(0, 78%);
  }
  30% {
    transform: translate(0, 78%);
  }
  32% {
    transform: translate(2px, 78%);
  }
  34% {
    transform: translate(0, 78%);
  }
  36% {
    transform: translate(-2px, 78%);
  }
  38% {
    transform: translate(0, 78%);
  }
  40% {
    transform: translate(2px, 78%);
  }
  42% {
    transform: translate(0, 78%);
  }
  44% {
    transform: translate(-2px, 78%);
  }
  46% {
    transform: translate(0, 78%);
  }
  100% {
    transform: translate(0, 78%);
  }
}
@keyframes sec04-illust-ani01-pc {
  0% {
    opacity: 0;
    transform: translate(80%, -70%);
  }
  100% {
    opacity: 1;
    transform: translate(40%, -70%);
  }
}
@keyframes sec04-illust-buruburu01-pc {
  0% {
    transform: translate(40%, -70%);
  }
  30% {
    transform: translate(40%, -70%);
  }
  32% {
    transform: translate(41%, -70%);
  }
  34% {
    transform: translate(40%, -70%);
  }
  36% {
    transform: translate(39%, -70%);
  }
  38% {
    transform: translate(40%, -70%);
  }
  40% {
    transform: translate(41%, -70%);
  }
  42% {
    transform: translate(40%, -70%);
  }
  44% {
    transform: translate(39%, -70%);
  }
  46% {
    transform: translate(40%, -70%);
  }
  100% {
    transform: translate(40%, -70%);
  }
}
@keyframes sec04-illust-ani02-pc {
  0% {
    opacity: 0;
    transform: translate(-60%, 0);
  }
  100% {
    opacity: 1;
    transform: translate(-20%, 0);
  }
}
@keyframes sec04-illust-buruburu02-pc {
  0% {
    transform: translate(-20%, 0%);
  }
  30% {
    transform: translate(-20%, 0);
  }
  32% {
    transform: translate(-21%, 0);
  }
  34% {
    transform: translate(-20%, 0);
  }
  36% {
    transform: translate(-19%, 0);
  }
  38% {
    transform: translate(-20%, 0);
  }
  40% {
    transform: translate(-21%, 0);
  }
  42% {
    transform: translate(-20%, 0);
  }
  44% {
    transform: translate(-19%, 0);
  }
  46% {
    transform: translate(-20%, 0);
  }
  100% {
    transform: translate(-20%, 0);
  }
}
section.sec04 div.sec04-cont-wrap02 div.sec04-cont02-inner div.sec04-cont02-inner-box p.ani,
section.sec04 div.sec04-cont-wrap02 div.sec04-cont02-inner figure.ani,
section.sec04 div.sec04-cont-wrap02 div.sec04-cont02-inner div.sec04-cont02-inner-box h2.sec04-title02.ani {
  opacity: 0;
}
section.sec04 div.sec04-cont-wrap02 div.sec04-cont02-inner div.sec04-cont02-inner-box p.animation,
section.sec04 div.sec04-cont-wrap02 div.sec04-cont02-inner figure.animation,
section.sec04 div.sec04-cont-wrap02 div.sec04-cont02-inner div.sec04-cont02-inner-box h2.sec04-title02.animation {
  animation: fadein 0.6s 0.2s ease-out forwards;
}

section.sec04 span.dot-bg.dot08.ani,
section.sec04 span.dot-bg.dot07.ani,
section.sec04 span.dot-bg.dot06.ani,
section.sec04 span.dot-bg.dot05.ani,
section.sec04 span.dot-bg.dot05.ani,
section.sec04 span.dot-bg.dot03.ani,
section.sec04 span.dot-bg.dot02.ani,
section.sec04 span.dot-bg.dot01.ani {
  opacity: 0;
  transform: translate(0, 20%);
}
section.sec04 span.dot-bg.dot08.ani.animation,
section.sec04 span.dot-bg.dot07.ani.animation,
section.sec04 span.dot-bg.dot06.ani.animation,
section.sec04 span.dot-bg.dot05.ani.animation,
section.sec04 span.dot-bg.dot05.ani.animation,
section.sec04 span.dot-bg.dot03.ani.animation,
section.sec04 span.dot-bg.dot02.ani.animation,
section.sec04 span.dot-bg.dot01.ani.animation {
  animation: fadedown-dot 0.6s 0.2s ease-out forwards;
}

@keyframes fadedown-dot {
  0% {
    opacity: 0;
    transform: translate(0, 20%);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}/*# sourceMappingURL=animation.css.map */