@charset "UTF-8";
/*color*/
/*font*/
@media screen and (max-width: 768px) {
  body {
    min-width: 0; } }

#Container {
  width: 100%; }

.WrapTop {
  width: 980px;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .WrapTop {
      width: 100%; } }

#header {
  position: relative;
  z-index: 5; }

#Container {
  position: relative;
  z-index: 1; }

#footer {
  position: relative; }

.p-campaign {
  position: relative;
  overflow: hidden;
  font-size: 16px;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, sans-serif;
  color: #705a52;
  z-index: 0; }
  @media screen and (max-width: 768px) {
    .p-campaign {
      font-size: 3.2vw; } }
  .p-campaign .c-inner {
    width: 980px;
    margin: auto; }
    @media screen and (max-width: 768px) {
      .p-campaign .c-inner {
        width: 100%;
        padding-left: 7.46666666667vw;
        padding-right: 7.46666666667vw; } }
    @media screen and (min-width: 769px) {
      .p-campaign .c-inner--lg {
        width: 1320px;
        min-width: 980px;
        max-width: 100%;
        padding-left: 20px;
        padding-right: 20px; } }
  .p-campaign .c-box {
    margin-bottom: 88px; }
    @media screen and (max-width: 768px) {
      .p-campaign .c-box {
        margin-bottom: 11.7333333333vw; } }
  .p-campaign .c-annotation {
    margin-top: 4px; }
    @media screen and (min-width: 769px) {
      .p-campaign .c-annotation {
        font-size: 12px; } }
  .p-campaign .c-btn-wrap {
    text-align: center; }
  .p-campaign .c-btn {
    display: inline-block;
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.25);
    background: #6ebcff;
    color: #fff;
    border: 3px solid #705a52;
    border-radius: 24px;
    font-weight: bold;
    text-align: center;
    text-decoration: none; }
    .p-campaign .c-btn--cmn {
      width: 532px;
      font-size: 30px;
      line-height: 64px;
      border-radius: 200px; }
      @media screen and (max-width: 768px) {
        .p-campaign .c-btn--cmn {
          width: 100%;
          line-height: 14.4vw;
          font-size: 5.33333333333vw; } }
    .p-campaign .c-btn--wh {
      background: #fff;
      color: #705a52; }
    .p-campaign .c-btn--arrow {
      width: 100%;
      padding: 16px;
      font-size: 20px; }
      .p-campaign .c-btn--arrow:after {
        content: "";
        display: block;
        width: 30px;
        height: 30px;
        margin: 4px auto 0;
        background: url(../img/icon_arrow.png) no-repeat center/contain; }
      @media screen and (max-width: 768px) {
        .p-campaign .c-btn--arrow {
          width: 100%;
          padding: 4.66666666667vw; }
          .p-campaign .c-btn--arrow:after {
            width: 4vw;
            height: 4vw;
            margin-top: 1.6vw; } }
  .p-campaign .c-row {
    display: flex;
    flex-wrap: wrap;
    margin: -20px; }
    @media screen and (max-width: 768px) {
      .p-campaign .c-row {
        margin: 2.66666666667vw * -1; } }
    .p-campaign .c-row__item {
      padding: 20px;
      width: 100%; }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item {
          padding: 2.66666666667vw; } }
      .p-campaign .c-row__item--1 {
        width: 8.33333333333%; }
      .p-campaign .c-row__item--2 {
        width: 16.6666666667%; }
      .p-campaign .c-row__item--3 {
        width: 25%; }
      .p-campaign .c-row__item--4 {
        width: 33.3333333333%; }
      .p-campaign .c-row__item--5 {
        width: 41.6666666667%; }
      .p-campaign .c-row__item--6 {
        width: 50%; }
      .p-campaign .c-row__item--7 {
        width: 58.3333333333%; }
      .p-campaign .c-row__item--8 {
        width: 66.6666666667%; }
      .p-campaign .c-row__item--9 {
        width: 75%; }
      .p-campaign .c-row__item--10 {
        width: 83.3333333333%; }
      .p-campaign .c-row__item--11 {
        width: 91.6666666667%; }
      .p-campaign .c-row__item--12 {
        width: 100%; }
      .p-campaign .c-row__item--5th {
        width: 20%; }
      @media screen and (min-width: 769px) {
        .p-campaign .c-row__item--1-pc {
          width: 8.33333333333%; } }
      @media screen and (min-width: 769px) {
        .p-campaign .c-row__item--2-pc {
          width: 16.6666666667%; } }
      @media screen and (min-width: 769px) {
        .p-campaign .c-row__item--3-pc {
          width: 25%; } }
      @media screen and (min-width: 769px) {
        .p-campaign .c-row__item--4-pc {
          width: 33.3333333333%; } }
      @media screen and (min-width: 769px) {
        .p-campaign .c-row__item--5-pc {
          width: 41.6666666667%; } }
      @media screen and (min-width: 769px) {
        .p-campaign .c-row__item--6-pc {
          width: 50%; } }
      @media screen and (min-width: 769px) {
        .p-campaign .c-row__item--7-pc {
          width: 58.3333333333%; } }
      @media screen and (min-width: 769px) {
        .p-campaign .c-row__item--8-pc {
          width: 66.6666666667%; } }
      @media screen and (min-width: 769px) {
        .p-campaign .c-row__item--9-pc {
          width: 75%; } }
      @media screen and (min-width: 769px) {
        .p-campaign .c-row__item--10-pc {
          width: 83.3333333333%; } }
      @media screen and (min-width: 769px) {
        .p-campaign .c-row__item--11-pc {
          width: 91.6666666667%; } }
      @media screen and (min-width: 769px) {
        .p-campaign .c-row__item--12-pc {
          width: 100%; } }
      @media screen and (min-width: 769px) {
        .p-campaign .c-row__item--5th-pc {
          width: 20%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item--1-sp {
          width: 8.33333333333%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item--2-sp {
          width: 16.6666666667%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item--3-sp {
          width: 25%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item--4-sp {
          width: 33.3333333333%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item--5-sp {
          width: 41.6666666667%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item--6-sp {
          width: 50%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item--7-sp {
          width: 58.3333333333%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item--8-sp {
          width: 66.6666666667%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item--9-sp {
          width: 75%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item--10-sp {
          width: 83.3333333333%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item--11-sp {
          width: 91.6666666667%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item--12-sp {
          width: 100%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .c-row__item--5th-sp {
          width: 20%; } }
    @media screen and (min-width: 769px) {
      .p-campaign .c-row--wide {
        margin: -30px; } }
    @media screen and (min-width: 769px) {
      .p-campaign .c-row--wide .c-row__item {
        padding: 30px; } }
    .p-campaign .c-row--no-space {
      margin: 0; }
      .p-campaign .c-row--no-space .c-row__item {
        padding: 0; }
    .p-campaign .c-row--center {
      justify-content: center; }
    .p-campaign .c-row--align-center {
      align-items: center; }
    .p-campaign .c-row--reverse {
      flex-direction: column-reverse; }

@keyframes lightup {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes chara {
  0% {
    transform: rotate(0.2deg) translateX(0); }
  20% {
    transform: rotate(0) translateX(2px); }
  25% {
    transform: rotate(-0.3deg) translateX(2px); }
  70% {
    transform: rotate(-0.3deg) translateX(-1px); }
  75% {
    transform: rotate(0.2deg) translateX(-1px); }
  to {
    transform: rotate(0.2deg) translateX(0); } }

@keyframes pyon {
  0% {
    transform: translateY(0); }
  5% {
    transform: translateY(-1px); }
  25% {
    transform: translateY(6px); }
  50% {
    transform: translateY(-1px); }
  75% {
    transform: translateY(6px); }
  95% {
    transform: translateY(-1px); }
  to {
    transform: translateY(0); } }

@keyframes fuyofuyo {
  0% {
    transform: translateY(0) rotate(0); }
  25% {
    transform: translateY(-4px) rotate(-0.5deg); }
  50% {
    transform: translateY(0) rotate(0); }
  75% {
    transform: translateY(4px) rotate(0.5deg); }
  to {
    transform: translateY(0) rotate(0); } }
  .p-campaign .p-stage__before .p-stage__cts {
    opacity: 0;
    transition: .2s; }
  .p-campaign .p-stage__after {
    opacity: 0; }
  .p-campaign .p-stage__confetti, .p-campaign .p-stage__items, .p-campaign .p-stage__title {
    opacity: 0; }
  .p-campaign .p-stage__chara {
    transform: rotate(0.2deg) translateX(0); }
  .p-campaign .p-stage.is-inview .p-stage__before .p-stage__cts {
    opacity: 1;
    transform: translateY(0); }
  .p-campaign .p-stage.is-inview .p-stage__after {
    animation: fadein .6s linear .7s forwards; }
  .p-campaign .p-stage.is-inview .p-stage__confetti,
  .p-campaign .p-stage.is-inview .p-stage__title,
  .p-campaign .p-stage.is-inview .p-stage__items {
    animation: zoomin 0.36s cubic-bezier(0.4, 0, 0.6, 1.45) 1.45s forwards; }
  .p-campaign .p-stage.is-inview .p-stage__confetti {
    animation-delay: 1.55s; }
  .p-campaign .p-stage.is-inview .p-stage__chara {
    animation: fuyofuyo 1.4s linear 2.6s infinite; }
  .p-campaign .p-stage.is-inview .p-stage__item {
    animation: fuyofuyo 2s linear 2.1s infinite; }
    .p-campaign .p-stage.is-inview .p-stage__item--1, .p-campaign .p-stage.is-inview .p-stage__item--4 {
      animation-delay: 2.6s; }
    .p-campaign .p-stage.is-inview .p-stage__item--2, .p-campaign .p-stage.is-inview .p-stage__item--5 {
      animation-delay: 2.3s; }
    .p-campaign .p-stage.is-inview .p-stage__item--3, .p-campaign .p-stage.is-inview .p-stage__item--6 {
      animation-delay: 1.9s; }
  .p-campaign .p-anim-bnr:hover {
    opacity: 1; }
    .p-campaign .p-anim-bnr:hover .p-anim-bnr__chara {
      animation: pyon .5s linear forwards; }

@keyframes fadein {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes contents {
  0% {
    opacity: 0;
    transform: translateY(20px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

@keyframes zoomin {
  0% {
    opacity: 0;
    transform: scale(0.5); }
  100% {
    opacity: 1;
    transform: scale(1); } }
  .p-campaign .p-anim-chara {
    animation: chara 1.4s linear .8s infinite; }
  .p-campaign .p-anim-contents {
    opacity: 0;
    transform: translateY(12px); }
    .p-campaign .p-anim-contents.is-inview {
      animation: .7s ease forwards contents; }
  .p-campaign .p-anim-zoom {
    opacity: 0;
    transform: scale(0.5); }
    .p-campaign .p-anim-zoom.is-inview {
      animation: .5s ease forwards zoomin; }
  .p-campaign *,
  .p-campaign ::before,
  .p-campaign ::after {
    box-sizing: border-box; }
  .p-campaign a {
    transition: .2s; }
  .p-campaign a:hover img,
  .p-campaign a:focus img {
    opacity: 1;
    filter: alpha(opacity=100); }
  .p-campaign img {
    max-width: 100%; }
  .p-campaign h1, .p-campaign h2, .p-campaign h3, .p-campaign h4 {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, sans-serif;
    color: inherit; }
  .p-campaign sup {
    line-height: 1; }
  @media screen and (min-width: 769px) {
    .p-campaign a:hover {
      opacity: .7; } }
  .p-campaign .p-ttl-ribon {
    margin-bottom: 32px;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-ttl-ribon {
        margin-bottom: 4.8vw; } }
  .p-campaign .p-stage {
    position: relative; }
    .p-campaign .p-stage__before, .p-campaign .p-stage__after {
      display: flex;
      justify-content: center; }
    .p-campaign .p-stage__before {
      background: #6ed5c1; }
    .p-campaign .p-stage__after {
      position: absolute;
      width: 100%;
      top: 0;
      left: 0;
      background: #a9ffe3;
      z-index: 1; }
    .p-campaign .p-stage__cts {
      position: relative; }
      @media screen and (min-width: 769px) {
        .p-campaign .p-stage__cts {
          min-width: 1440px; } }
    .p-campaign .p-stage__light, .p-campaign .p-stage__confetti, .p-campaign .p-stage__chara, .p-campaign .p-stage__items, .p-campaign .p-stage__title {
      position: absolute;
      left: 0;
      width: 100%;
      text-align: center; }
    .p-campaign .p-stage__light, .p-campaign .p-stage__confetti {
      top: 0; }
    @media screen and (min-width: 769px) {
      .p-campaign .p-stage__chara {
        bottom: 25px; } }
    @media screen and (max-width: 768px) {
      .p-campaign .p-stage__chara {
        width: 45.0666666667vw;
        left: 27.3333333333vw;
        bottom: 19.3333333333vw; } }
    @media screen and (min-width: 769px) {
      .p-campaign .p-stage__items {
        width: 1012px;
        height: 354px;
        bottom: 120px;
        left: calc( 50% - 506px); } }
    @media screen and (max-width: 768px) {
      .p-campaign .p-stage__items {
        width: 93.0666666667vw;
        height: 70.9333333333vw;
        top: 3.2vw;
        left: 4.26666666667vw;
        z-index: 1; } }
    .p-campaign .p-stage__item {
      position: absolute; }
      @media screen and (min-width: 769px) {
        .p-campaign .p-stage__item--1 {
          top: 22px;
          left: 32px; }
        .p-campaign .p-stage__item--2 {
          top: 0;
          right: 36px; }
        .p-campaign .p-stage__item--3 {
          top: 142px;
          left: 0; }
        .p-campaign .p-stage__item--4 {
          top: 112px;
          right: 0; }
        .p-campaign .p-stage__item--5 {
          bottom: 0;
          left: 44px; }
        .p-campaign .p-stage__item--6 {
          right: 48px;
          bottom: 32px; } }
      @media screen and (max-width: 768px) {
        .p-campaign .p-stage__item {
          width: 17.0666666667vw; }
          .p-campaign .p-stage__item--1 {
            top: 3.46666666667vw;
            left: 25.3333333333vw; }
          .p-campaign .p-stage__item--2 {
            top: 0;
            left: 49.6vw; }
          .p-campaign .p-stage__item--3 {
            top: 27.7333333333vw;
            left: 0; }
          .p-campaign .p-stage__item--4 {
            top: 29.0666666667vw;
            right: 0; }
          .p-campaign .p-stage__item--5 {
            bottom: 0;
            left: 1.86666666667vw; }
          .p-campaign .p-stage__item--6 {
            right: 0;
            bottom: 0; } }
    @media screen and (min-width: 769px) {
      .p-campaign .p-stage__title {
        bottom: 32px; } }
    @media screen and (max-width: 768px) {
      .p-campaign .p-stage__title {
        top: 0; } }
  .p-campaign .p-feature {
    padding-top: 32px;
    padding-bottom: 64px;
    background: url(../img/feature_flag_l.png) no-repeat left top, url(../img/feature_flag_r.png) no-repeat right top, url(../img/feature_bg.png) repeat; }

@media screen and (max-width: 1440px) and (min-width: 769px) {
  .p-campaign .p-feature {
    background-size: 18vw,18vw,auto; } }
    @media screen and (max-width: 768px) {
      .p-campaign .p-feature {
        padding-top: 0;
        padding-bottom: 14.9333333333vw;
        background: url(../img/feature_flag_sp.png) no-repeat left top/100%, url(../img/feature_bg.png) repeat; } }
    @media screen and (max-width: 768px) {
      .p-campaign .p-feature__ttl {
        position: relative;
        z-index: 1;
        top: -3.2vw;
        margin-bottom: -2.66666666667vw; } }
    .p-campaign .p-feature__date {
      position: relative;
      margin-top: 28px; }
    .p-campaign .p-feature__chara {
      position: absolute;
      width: 171px;
      height: 258px;
      background: url(../img/feature_chara.png) no-repeat center/contain;
      right: 0;
      bottom: 0;
      z-index: 1; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-feature__chara {
          width: 48.1333333333vw;
          height: 29.3333333333vw;
          background: url(../img/feature_chara_sp.png) no-repeat center/contain;
          right: calc( 50% - 24vw);
          bottom: auto;
          top: calc( 100% + 3.2vw); } }
    .p-campaign .p-feature__close {
      position: relative; }
      .p-campaign .p-feature__close:before {
        content: "";
        display: block;
        position: absolute;
        width: 624px;
        max-width: 100%;
        height: 90%;
        top: 10%;
        left: 50%;
        z-index: 2;
        transform: translateX(-50%);
        background: url(../img/result_feature_announce.png) no-repeat center/contain; }
        @media screen and (max-width: 768px) {
          .p-campaign .p-feature__close:before {
            top: 30%;
            height: 70%;
            background: url(../img/result_feature_announce_sp.png) no-repeat center/contain; } }
    .p-campaign .p-feature__about {
      text-align: center;
      margin-top: 40px;
      font-size: 24px; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-feature__about {
          margin-top: 5.33333333333vw;
          font-size: 4vw; } }
    @media screen and (min-width: 769px) {
      .p-campaign .p-feature .c-annotation {
        padding-left: 92px; } }
    @media screen and (max-width: 768px) {
      .p-campaign .p-feature .c-annotation {
        text-align: center; } }
    .p-campaign .p-feature--result {
      border-top: 5px solid #705a52;
      border-bottom: 5px solid #705a52; }
  .p-campaign .p-fes-wrap {
    padding: 40px 0 100px;
    background: url(../img/bg_tip.png) repeat calc(50% - 20px) top; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-fes-wrap {
        padding: 17.6vw 0 10.6666666667vw;
        background: url(../img/bg_tip_sp.png) repeat calc(50% - 21.3333333333vw) top / 34.5333333333vw; } }
  .p-campaign .p-campaign {
    padding: 60px 0;
    background: #18a678;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-campaign {
        padding: 3.2vw 0 26.6666666667vw; } }
    .p-campaign .p-campaign__ttl {
      margin-bottom: 16px; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-campaign__ttl {
          margin-bottom: 6.4vw; } }
    .p-campaign .p-campaign__date {
      margin-bottom: 52px; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-campaign__date {
          margin-bottom: 9.06666666667vw; } }
    .p-campaign .p-campaign__read {
      margin-bottom: 68px; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-campaign__read {
          margin-bottom: 8vw; } }
      .p-campaign .p-campaign__read--result {
        margin-top: 54px;
        margin-bottom: 0; }
  .p-campaign .p-sheet {
    position: relative;
    background: #ffffe8;
    border-radius: 24px;
    padding: 68px 48px 52px; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-sheet {
        padding: 10.6666666667vw 4.8vw 6.4vw; } }
    .p-campaign .p-sheet:before {
      content: "";
      display: block;
      position: absolute;
      width: 222px;
      height: 222px;
      left: -12px;
      bottom: calc( 100% - 15px);
      background: url(../img/sheet_chara_1.png) no-repeat center/contain; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-sheet:before {
          width: 100%;
          height: 22.1333333333vw;
          left: 0;
          bottom: calc( 100% - 1.86666666667vw);
          background: url(../img/sheet_chara_1_sp.png) no-repeat center/contain; } }
    @media screen and (max-width: 768px) {
      .p-campaign .p-sheet--v2 {
        margin-top: 11.7333333333vw; } }
    .p-campaign .p-sheet--v2:before {
      content: "";
      display: block;
      position: absolute;
      width: 275px;
      height: 329px;
      left: -52px;
      bottom: auto;
      top: -204px;
      background: url(../img/v2_sheet_chara_1.png) no-repeat center/contain; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-sheet--v2:before {
          width: 100%;
          height: 43.8666666667vw;
          left: 0;
          top: auto;
          bottom: calc( 100% - 9.6vw);
          background: url(../img/v2_sheet_chara_1_sp.png) no-repeat center/contain; } }
    .p-campaign .p-sheet--result {
      padding-bottom: 100px; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-sheet--result {
          padding-bottom: 10.6666666667vw; } }
      .p-campaign .p-sheet--result:before {
        background: url(../img/result_sheet_chara_1.png) no-repeat center/contain; }
        @media screen and (max-width: 768px) {
          .p-campaign .p-sheet--result:before {
            background: url(../img/result_sheet_chara_1_sp.png) no-repeat center/contain; } }
    .p-campaign .p-sheet__chara {
      position: absolute;
      width: 189px;
      height: 197px;
      right: -15px;
      bottom: -36px;
      background: url(../img/sheet_chara_2.png) no-repeat center/contain; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-sheet__chara {
          width: 28.6666666667vw;
          height: 29.8666666667vw;
          right: -0.533333333333vw;
          bottom: -4.26666666667vw; } }
      @media screen and (max-width: 768px) {
        .p-campaign .p-sheet__chara--result {
          right: -1.6vw;
          bottom: -13.3333333333vw; } }
    .p-campaign .p-sheet__read {
      position: relative;
      margin-bottom: 40px;
      font-size: 22px;
      font-weight: bold;
      line-height: 2.2;
      text-align: center;
      letter-spacing: 3px; }
      .p-campaign .p-sheet__read:before, .p-campaign .p-sheet__read:after {
        content: "";
        display: block;
        position: absolute;
        width: 78px;
        height: 70px;
        bottom: 0; }
      .p-campaign .p-sheet__read:before {
        left: 40px;
        background: url(../img/cracker_l.png) no-repeat center/contain; }
      .p-campaign .p-sheet__read:after {
        right: 40px;
        background: url(../img/cracker_r.png) no-repeat center/contain; }
      .p-campaign .p-sheet__read--v2:before, .p-campaign .p-sheet__read--v2:after, .p-campaign .p-sheet__read--result:before, .p-campaign .p-sheet__read--result:after {
        content: none; }
      .p-campaign .p-sheet__read--result {
        margin-bottom: 80px; }
        @media screen and (max-width: 768px) {
          .p-campaign .p-sheet__read--result {
            margin-bottom: 5.33333333333vw; } }
      @media screen and (max-width: 768px) {
        .p-campaign .p-sheet__read {
          font-size: 4vw;
          margin-bottom: 8vw;
          letter-spacing: 0.4vw;
          line-height: 1.8; }
          .p-campaign .p-sheet__read:before, .p-campaign .p-sheet__read:after {
            width: 9.33333333333vw;
            height: 8.53333333333vw;
            bottom: -10.6666666667vw; }
          .p-campaign .p-sheet__read:before {
            left: 0; }
          .p-campaign .p-sheet__read::after {
            right: 0; } }
    .p-campaign .p-sheet__announce {
      margin-top: 80px;
      text-align: center; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-sheet__announce {
          margin-top: 8vw; } }
  .p-campaign .p-card-entry {
    padding-bottom: 24px;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-card-entry {
        padding-bottom: 5.33333333333vw; } }
    .p-campaign .p-card-entry__img {
      margin-bottom: 16px; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-card-entry__img {
          margin-bottom: 3.73333333333vw; } }
    .p-campaign .p-card-entry__pid {
      font-size: 19px;
      font-weight: bold;
      text-decoration: underline;
      letter-spacing: 2px;
      margin-bottom: 4px; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-card-entry__pid {
          font-size: 4vw; } }
    .p-campaign .p-card-entry__list {
      display: inline-block;
      text-align: left; }
      .p-campaign .p-card-entry__list li {
        text-indent: -16px; }
        @media screen and (max-width: 768px) {
          .p-campaign .p-card-entry__list li {
            text-indent: -3.2vw; } }
    .p-campaign .p-card-entry--result .p-card-entry__img {
      margin-bottom: 28px; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-card-entry--result .p-card-entry__img {
          margin-bottom: 3.2vw; } }
    .p-campaign .p-card-entry--result .p-card-entry__pid {
      font-size: 28px;
      margin-bottom: 8px; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-card-entry--result .p-card-entry__pid {
          font-size: 4vw; } }
    .p-campaign .p-card-entry--result .p-card-entry__list {
      display: inline-block;
      text-align: left;
      font-weight: bold; }
      .p-campaign .p-card-entry--result .p-card-entry__list li {
        text-indent: -24px;
        font-size: 24px; }
        @media screen and (max-width: 768px) {
          .p-campaign .p-card-entry--result .p-card-entry__list li {
            font-size: 3.2vw;
            text-indent: -3.2vw; } }
  .p-campaign .p-present {
    margin-top: 40px;
    padding: 32px;
    background: #fff;
    border: 3px solid #1b8d4f;
    border-radius: 16px; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-present {
        margin-top: 5.33333333333vw;
        padding: 6.4vw; } }
    .p-campaign .p-present__ttl {
      margin-bottom: 20px;
      text-align: left; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-present__ttl {
          margin-bottom: 6.4vw;
          text-align: center; } }
      .p-campaign .p-present__ttl-sub, .p-campaign .p-present__ttl-main {
        display: block; }
      .p-campaign .p-present__ttl-sub {
        font-size: 20px;
        font-weight: bold;
        margin-bottom: 8px;
        letter-spacing: 2px; }
        @media screen and (max-width: 768px) {
          .p-campaign .p-present__ttl-sub {
            font-size: 3.33333333333vw;
            line-height: 1.5;
            margin-bottom: 2.66666666667vw; } }
    @media screen and (min-width: 769px) {
      .p-campaign .p-present__list {
        display: flex; } }
    .p-campaign .p-present__list-item {
      position: relative;
      font-size: 17px;
      line-height: 1.3;
      font-weight: bold;
      text-align: center; }
      @media screen and (min-width: 769px) {
        .p-campaign .p-present__list-item {
          width: 33.333%; } }
      @media screen and (max-width: 768px) {
        .p-campaign .p-present__list-item {
          font-size: 3.2vw; } }
      .p-campaign .p-present__list-item:not(:last-child):before {
        content: "";
        display: block;
        position: absolute;
        width: 22px;
        height: 22px;
        top: calc( 50% - 11px);
        right: -11px;
        background: url(../img/icon_plus.png) no-repeat center/contain; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-present__list-item:not(:last-child) {
          padding-bottom: 9.6vw; }
          .p-campaign .p-present__list-item:not(:last-child):before {
            width: 4.8vw;
            height: 4.8vw;
            top: auto;
            bottom: 2.66666666667vw;
            right: calc( 50% - 2.4vw); } }
      .p-campaign .p-present__list-item img {
        margin-bottom: 8px; }
        @media screen and (max-width: 768px) {
          .p-campaign .p-present__list-item img {
            margin-bottom: 3.2vw; } }
  .p-campaign .p-list-flow {
    padding-top: 72px; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-list-flow {
        padding: 16.5333333333vw 6.4vw; }
        .p-campaign .p-list-flow__item:not(:last-child) {
          margin-bottom: 19.2vw; } }
  .p-campaign .p-card-flow {
    position: relative;
    height: 100%;
    padding: 52px 24px 32px;
    text-align: center;
    background: #ffffe8;
    border-radius: 12px;
    z-index: 1; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-card-flow {
        padding: 10.6666666667vw 5.33333333333vw 6.93333333333vw; } }
    .p-campaign .p-card-flow__num {
      position: absolute;
      top: -72px;
      left: calc( 50% - 72px);
      width: 144px;
      z-index: -1; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-card-flow__num {
          top: -16.5333333333vw;
          width: 34.1333333333vw;
          left: calc( 50% - 17.0666666667vw); } }
    .p-campaign .p-card-flow__txt {
      margin-bottom: 32px;
      font-size: 20px;
      font-weight: bold; }
      .p-campaign .p-card-flow__txt a {
        color: #1b8d4f; }
      .p-campaign .p-card-flow__txt strong {
        display: block;
        font-size: 26px; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-card-flow__txt {
          margin-bottom: 6.4vw;
          font-size: 4vw; }
          .p-campaign .p-card-flow__txt strong {
            font-size: 5.33333333333vw;
            margin-bottom: 2.13333333333vw; } }
    .p-campaign .p-card-flow--chara {
      padding-bottom: 116px; }
      .p-campaign .p-card-flow--chara:before {
        content: "";
        display: block;
        position: absolute;
        width: 100%;
        height: 127px;
        bottom: 0;
        left: 0;
        background: url(../img/flow_chara.png) no-repeat center bottom/contain; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-card-flow--chara {
          padding-bottom: 29.6vw; }
          .p-campaign .p-card-flow--chara:before {
            height: 29.6vw;
            background: url(../img/flow_chara_sp.png) no-repeat center bottom/contain; } }
  .p-campaign .p-rule__sheet {
    background: #ffffe8;
    border-radius: 16px;
    margin-bottom: 100px;
    padding: 40px; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-rule__sheet {
        padding: 5.33333333333vw;
        margin-bottom: 8.53333333333vw; } }
  .p-campaign .p-rule__cts {
    height: 252px;
    padding-right: 20px;
    overflow: auto; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-rule__cts {
        height: 66.6666666667vw; } }
  .p-campaign .p-rule__ttl {
    margin-bottom: 16px;
    font-size: 20px;
    font-weight: bold;
    color: #18a678; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-rule__ttl {
        font-size: 4.26666666667vw;
        margin-bottom: 4.26666666667vw; } }
  .p-campaign .p-rule__txt {
    white-space: pre-wrap;
    word-break: break-all;
    font-family: inherit;
    font-size: 14px;
    font-weight: bold; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-rule__txt {
        font-size: 3.2vw; } }
  .p-campaign .p-bnr {
    padding: 36px 0 80px;
    background: #ffc94a;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-bnr {
        font-size: 8.53333333333vw 0 10.6666666667vw; } }
    .p-campaign .p-bnr--result {
      padding-top: 80px; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-bnr--result {
          padding-top: 10.6666666667vw; } }
    .p-campaign .p-bnr__cts {
      position: relative;
      display: block;
      margin-bottom: 60px; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-bnr__cts {
          margin-bottom: 10.6666666667vw; } }
      .p-campaign .p-bnr__cts:not(:first-child) {
        margin-top: 80px; }
        @media screen and (max-width: 768px) {
          .p-campaign .p-bnr__cts:not(:first-child) {
            margin-top: 10.6666666667vw; } }
    .p-campaign .p-bnr__chara {
      position: absolute;
      width: 15.4034%;
      height: 410px;
      right: 6%;
      bottom: 14%;
      background: url(../img/bnr_chara.png) no-repeat center bottom/contain; }
      @media screen and (max-width: 768px) {
        .p-campaign .p-bnr__chara {
          width: 24vw;
          height: 49.8666666667vw;
          right: 9.06666666667vw;
          bottom: 6.4vw;
          background: url(../img/bnr_chara_sp.png) no-repeat center bottom/contain; } }
  .p-campaign .p-secret {
    position: fixed;
    transition: .3s;
    z-index: 10;
    right: 100px;
    bottom: 50px; }
    .p-campaign .p-secret__close {
      position: absolute;
      right: 0;
      top: 28%; }
    @media screen and (max-width: 768px) {
      .p-campaign .p-secret {
        width: 28.2666666667vw;
        right: 6.4vw;
        bottom: 6.4vw; }
        .p-campaign .p-secret__close {
          top: 8.53333333333vw;
          width: 4.26666666667vw; } }
  @media screen and (min-width: 769px) {
    .p-campaign .p-v2flow {
      margin: 0 -23px; } }

@media screen and (max-width: 768px) {
  .u-pc-only {
    display: none !important; } }

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

.u-text-center {
  text-align: center !important; }
  @media screen and (max-width: 768px) {
    .u-text-center--sp {
      text-align: center !important; } }
  .u-text-center iframe {
    margin-left: auto !important;
    margin-right: auto !important; }

.u-text-left {
  text-align: left !important; }

.u-text-right {
  text-align: right !important; }

.u-ib {
  display: inline-block !important;
  vertical-align: middle; }

.u-block {
  display: block !important; }

.u-flex {
  display: flex; }
  .u-flex--wrap {
    flex-wrap: wrap; }
  .u-flex--between {
    justify-content: space-between; }
  .u-flex--jcenter {
    justify-content: center; }

.u-lh-0 {
  line-height: 0 !important; }

.u-lh-1 {
  line-height: 1 !important; }

.u-lh-125 {
  line-height: 1.25 !important; }

.u-lh-15 {
  line-height: 1.5 !important; }

.u-lh-2 {
  line-height: 2 !important; }

.u-m-0 {
  margin: 0px !important; }

.u-mt-0,
.u-my-0 {
  margin-top: 0px !important; }

.u-mr-0,
.u-mx-0 {
  margin-right: 0px !important; }

.u-mb-0,
.u-my-0 {
  margin-bottom: 0px !important; }

.u-ml-0,
.u-mx-0 {
  margin-left: 0px !important; }

@media screen and (max-width: 768px) {
  .u-m-0--sp,
  .u-m-0 {
    margin: 0vw !important; }
  .u-mt-0,
  .u-my-0,
  .u-mt-0--sp,
  .u-my-0--sp {
    margin-top: 0vw !important; }
  .u-mr-0,
  .u-mx-0,
  .u-mr-0--sp,
  .u-mx-0--sp {
    margin-right: 0vw !important; }
  .u-mb-0,
  .u-my-0,
  .u-mb-0--sp,
  .u-my-0--sp {
    margin-bottom: 0vw !important; }
  .u-ml-0,
  .u-mx-0,
  .u-ml-0--sp,
  .u-mx-0--sp {
    margin-left: 0vw !important; } }

@media screen and (min-width: 769px) {
  .u-m-0--pc {
    margin: 0px !important; }
  .u-mt-0--pc,
  .u-my-0--pc {
    margin-top: 0px !important; }
  .u-mr-0--pc,
  .u-mx-0--pc {
    margin-right: 0px !important; }
  .u-mb-0--pc,
  .u-my-0--pc {
    margin-bottom: 0px !important; }
  .u-ml-0--pc,
  .u-mx-0--pc {
    margin-left: 0px !important; } }

.u-m-4 {
  margin: 4px !important; }

.u-mt-4,
.u-my-4 {
  margin-top: 4px !important; }

.u-mr-4,
.u-mx-4 {
  margin-right: 4px !important; }

.u-mb-4,
.u-my-4 {
  margin-bottom: 4px !important; }

.u-ml-4,
.u-mx-4 {
  margin-left: 4px !important; }

@media screen and (max-width: 768px) {
  .u-m-4--sp,
  .u-m-4 {
    margin: 0.533333333333vw !important; }
  .u-mt-4,
  .u-my-4,
  .u-mt-4--sp,
  .u-my-4--sp {
    margin-top: 0.533333333333vw !important; }
  .u-mr-4,
  .u-mx-4,
  .u-mr-4--sp,
  .u-mx-4--sp {
    margin-right: 0.533333333333vw !important; }
  .u-mb-4,
  .u-my-4,
  .u-mb-4--sp,
  .u-my-4--sp {
    margin-bottom: 0.533333333333vw !important; }
  .u-ml-4,
  .u-mx-4,
  .u-ml-4--sp,
  .u-mx-4--sp {
    margin-left: 0.533333333333vw !important; } }

@media screen and (min-width: 769px) {
  .u-m-4--pc {
    margin: 4px !important; }
  .u-mt-4--pc,
  .u-my-4--pc {
    margin-top: 4px !important; }
  .u-mr-4--pc,
  .u-mx-4--pc {
    margin-right: 4px !important; }
  .u-mb-4--pc,
  .u-my-4--pc {
    margin-bottom: 4px !important; }
  .u-ml-4--pc,
  .u-mx-4--pc {
    margin-left: 4px !important; } }

.u-m-8 {
  margin: 8px !important; }

.u-mt-8,
.u-my-8 {
  margin-top: 8px !important; }

.u-mr-8,
.u-mx-8 {
  margin-right: 8px !important; }

.u-mb-8,
.u-my-8 {
  margin-bottom: 8px !important; }

.u-ml-8,
.u-mx-8 {
  margin-left: 8px !important; }

@media screen and (max-width: 768px) {
  .u-m-8--sp,
  .u-m-8 {
    margin: 1.06666666667vw !important; }
  .u-mt-8,
  .u-my-8,
  .u-mt-8--sp,
  .u-my-8--sp {
    margin-top: 1.06666666667vw !important; }
  .u-mr-8,
  .u-mx-8,
  .u-mr-8--sp,
  .u-mx-8--sp {
    margin-right: 1.06666666667vw !important; }
  .u-mb-8,
  .u-my-8,
  .u-mb-8--sp,
  .u-my-8--sp {
    margin-bottom: 1.06666666667vw !important; }
  .u-ml-8,
  .u-mx-8,
  .u-ml-8--sp,
  .u-mx-8--sp {
    margin-left: 1.06666666667vw !important; } }

@media screen and (min-width: 769px) {
  .u-m-8--pc {
    margin: 8px !important; }
  .u-mt-8--pc,
  .u-my-8--pc {
    margin-top: 8px !important; }
  .u-mr-8--pc,
  .u-mx-8--pc {
    margin-right: 8px !important; }
  .u-mb-8--pc,
  .u-my-8--pc {
    margin-bottom: 8px !important; }
  .u-ml-8--pc,
  .u-mx-8--pc {
    margin-left: 8px !important; } }

.u-m-12 {
  margin: 12px !important; }

.u-mt-12,
.u-my-12 {
  margin-top: 12px !important; }

.u-mr-12,
.u-mx-12 {
  margin-right: 12px !important; }

.u-mb-12,
.u-my-12 {
  margin-bottom: 12px !important; }

.u-ml-12,
.u-mx-12 {
  margin-left: 12px !important; }

@media screen and (max-width: 768px) {
  .u-m-12--sp,
  .u-m-12 {
    margin: 1.6vw !important; }
  .u-mt-12,
  .u-my-12,
  .u-mt-12--sp,
  .u-my-12--sp {
    margin-top: 1.6vw !important; }
  .u-mr-12,
  .u-mx-12,
  .u-mr-12--sp,
  .u-mx-12--sp {
    margin-right: 1.6vw !important; }
  .u-mb-12,
  .u-my-12,
  .u-mb-12--sp,
  .u-my-12--sp {
    margin-bottom: 1.6vw !important; }
  .u-ml-12,
  .u-mx-12,
  .u-ml-12--sp,
  .u-mx-12--sp {
    margin-left: 1.6vw !important; } }

@media screen and (min-width: 769px) {
  .u-m-12--pc {
    margin: 12px !important; }
  .u-mt-12--pc,
  .u-my-12--pc {
    margin-top: 12px !important; }
  .u-mr-12--pc,
  .u-mx-12--pc {
    margin-right: 12px !important; }
  .u-mb-12--pc,
  .u-my-12--pc {
    margin-bottom: 12px !important; }
  .u-ml-12--pc,
  .u-mx-12--pc {
    margin-left: 12px !important; } }

.u-m-20 {
  margin: 20px !important; }

.u-mt-20,
.u-my-20 {
  margin-top: 20px !important; }

.u-mr-20,
.u-mx-20 {
  margin-right: 20px !important; }

.u-mb-20,
.u-my-20 {
  margin-bottom: 20px !important; }

.u-ml-20,
.u-mx-20 {
  margin-left: 20px !important; }

@media screen and (max-width: 768px) {
  .u-m-20--sp,
  .u-m-20 {
    margin: 2.66666666667vw !important; }
  .u-mt-20,
  .u-my-20,
  .u-mt-20--sp,
  .u-my-20--sp {
    margin-top: 2.66666666667vw !important; }
  .u-mr-20,
  .u-mx-20,
  .u-mr-20--sp,
  .u-mx-20--sp {
    margin-right: 2.66666666667vw !important; }
  .u-mb-20,
  .u-my-20,
  .u-mb-20--sp,
  .u-my-20--sp {
    margin-bottom: 2.66666666667vw !important; }
  .u-ml-20,
  .u-mx-20,
  .u-ml-20--sp,
  .u-mx-20--sp {
    margin-left: 2.66666666667vw !important; } }

@media screen and (min-width: 769px) {
  .u-m-20--pc {
    margin: 20px !important; }
  .u-mt-20--pc,
  .u-my-20--pc {
    margin-top: 20px !important; }
  .u-mr-20--pc,
  .u-mx-20--pc {
    margin-right: 20px !important; }
  .u-mb-20--pc,
  .u-my-20--pc {
    margin-bottom: 20px !important; }
  .u-ml-20--pc,
  .u-mx-20--pc {
    margin-left: 20px !important; } }

.u-m-32 {
  margin: 32px !important; }

.u-mt-32,
.u-my-32 {
  margin-top: 32px !important; }

.u-mr-32,
.u-mx-32 {
  margin-right: 32px !important; }

.u-mb-32,
.u-my-32 {
  margin-bottom: 32px !important; }

.u-ml-32,
.u-mx-32 {
  margin-left: 32px !important; }

@media screen and (max-width: 768px) {
  .u-m-32--sp,
  .u-m-32 {
    margin: 4.26666666667vw !important; }
  .u-mt-32,
  .u-my-32,
  .u-mt-32--sp,
  .u-my-32--sp {
    margin-top: 4.26666666667vw !important; }
  .u-mr-32,
  .u-mx-32,
  .u-mr-32--sp,
  .u-mx-32--sp {
    margin-right: 4.26666666667vw !important; }
  .u-mb-32,
  .u-my-32,
  .u-mb-32--sp,
  .u-my-32--sp {
    margin-bottom: 4.26666666667vw !important; }
  .u-ml-32,
  .u-mx-32,
  .u-ml-32--sp,
  .u-mx-32--sp {
    margin-left: 4.26666666667vw !important; } }

@media screen and (min-width: 769px) {
  .u-m-32--pc {
    margin: 32px !important; }
  .u-mt-32--pc,
  .u-my-32--pc {
    margin-top: 32px !important; }
  .u-mr-32--pc,
  .u-mx-32--pc {
    margin-right: 32px !important; }
  .u-mb-32--pc,
  .u-my-32--pc {
    margin-bottom: 32px !important; }
  .u-ml-32--pc,
  .u-mx-32--pc {
    margin-left: 32px !important; } }

.u-m-40 {
  margin: 40px !important; }

.u-mt-40,
.u-my-40 {
  margin-top: 40px !important; }

.u-mr-40,
.u-mx-40 {
  margin-right: 40px !important; }

.u-mb-40,
.u-my-40 {
  margin-bottom: 40px !important; }

.u-ml-40,
.u-mx-40 {
  margin-left: 40px !important; }

@media screen and (max-width: 768px) {
  .u-m-40--sp,
  .u-m-40 {
    margin: 5.33333333333vw !important; }
  .u-mt-40,
  .u-my-40,
  .u-mt-40--sp,
  .u-my-40--sp {
    margin-top: 5.33333333333vw !important; }
  .u-mr-40,
  .u-mx-40,
  .u-mr-40--sp,
  .u-mx-40--sp {
    margin-right: 5.33333333333vw !important; }
  .u-mb-40,
  .u-my-40,
  .u-mb-40--sp,
  .u-my-40--sp {
    margin-bottom: 5.33333333333vw !important; }
  .u-ml-40,
  .u-mx-40,
  .u-ml-40--sp,
  .u-mx-40--sp {
    margin-left: 5.33333333333vw !important; } }

@media screen and (min-width: 769px) {
  .u-m-40--pc {
    margin: 40px !important; }
  .u-mt-40--pc,
  .u-my-40--pc {
    margin-top: 40px !important; }
  .u-mr-40--pc,
  .u-mx-40--pc {
    margin-right: 40px !important; }
  .u-mb-40--pc,
  .u-my-40--pc {
    margin-bottom: 40px !important; }
  .u-ml-40--pc,
  .u-mx-40--pc {
    margin-left: 40px !important; } }

.u-m-48 {
  margin: 48px !important; }

.u-mt-48,
.u-my-48 {
  margin-top: 48px !important; }

.u-mr-48,
.u-mx-48 {
  margin-right: 48px !important; }

.u-mb-48,
.u-my-48 {
  margin-bottom: 48px !important; }

.u-ml-48,
.u-mx-48 {
  margin-left: 48px !important; }

@media screen and (max-width: 768px) {
  .u-m-48--sp,
  .u-m-48 {
    margin: 6.4vw !important; }
  .u-mt-48,
  .u-my-48,
  .u-mt-48--sp,
  .u-my-48--sp {
    margin-top: 6.4vw !important; }
  .u-mr-48,
  .u-mx-48,
  .u-mr-48--sp,
  .u-mx-48--sp {
    margin-right: 6.4vw !important; }
  .u-mb-48,
  .u-my-48,
  .u-mb-48--sp,
  .u-my-48--sp {
    margin-bottom: 6.4vw !important; }
  .u-ml-48,
  .u-mx-48,
  .u-ml-48--sp,
  .u-mx-48--sp {
    margin-left: 6.4vw !important; } }

@media screen and (min-width: 769px) {
  .u-m-48--pc {
    margin: 48px !important; }
  .u-mt-48--pc,
  .u-my-48--pc {
    margin-top: 48px !important; }
  .u-mr-48--pc,
  .u-mx-48--pc {
    margin-right: 48px !important; }
  .u-mb-48--pc,
  .u-my-48--pc {
    margin-bottom: 48px !important; }
  .u-ml-48--pc,
  .u-mx-48--pc {
    margin-left: 48px !important; } }

.u-m-60 {
  margin: 60px !important; }

.u-mt-60,
.u-my-60 {
  margin-top: 60px !important; }

.u-mr-60,
.u-mx-60 {
  margin-right: 60px !important; }

.u-mb-60,
.u-my-60 {
  margin-bottom: 60px !important; }

.u-ml-60,
.u-mx-60 {
  margin-left: 60px !important; }

@media screen and (max-width: 768px) {
  .u-m-60--sp,
  .u-m-60 {
    margin: 8vw !important; }
  .u-mt-60,
  .u-my-60,
  .u-mt-60--sp,
  .u-my-60--sp {
    margin-top: 8vw !important; }
  .u-mr-60,
  .u-mx-60,
  .u-mr-60--sp,
  .u-mx-60--sp {
    margin-right: 8vw !important; }
  .u-mb-60,
  .u-my-60,
  .u-mb-60--sp,
  .u-my-60--sp {
    margin-bottom: 8vw !important; }
  .u-ml-60,
  .u-mx-60,
  .u-ml-60--sp,
  .u-mx-60--sp {
    margin-left: 8vw !important; } }

@media screen and (min-width: 769px) {
  .u-m-60--pc {
    margin: 60px !important; }
  .u-mt-60--pc,
  .u-my-60--pc {
    margin-top: 60px !important; }
  .u-mr-60--pc,
  .u-mx-60--pc {
    margin-right: 60px !important; }
  .u-mb-60--pc,
  .u-my-60--pc {
    margin-bottom: 60px !important; }
  .u-ml-60--pc,
  .u-mx-60--pc {
    margin-left: 60px !important; } }

.u-p-0 {
  padding: 0px !important; }

.u-pt-0,
.u-py-0 {
  padding-top: 0px !important; }

.u-pr-0,
.u-px-0 {
  padding-right: 0px !important; }

.u-pb-0,
.u-py-0 {
  padding-bottom: 0px !important; }

.u-pl-0,
.u-px-0 {
  padding-left: 0px !important; }

@media screen and (max-width: 768px) {
  .u-p-0--sp,
  .u-p-0 {
    padding: 0vw !important; }
  .u-pt-0,
  .u-py-0,
  .u-pt-0--sp,
  .u-py-0--sp {
    padding-top: 0vw !important; }
  .u-pr-0,
  .u-px-0,
  .u-pr-0--sp,
  .u-px-0--sp {
    padding-right: 0vw !important; }
  .u-pb-0,
  .u-py-0,
  .u-pb-0--sp,
  .u-py-0--sp {
    padding-bottom: 0vw !important; }
  .u-pl-0,
  .u-px-0,
  .u-pl-0--sp,
  .u-px-0--sp {
    padding-left: 0vw !important; } }

@media screen and (min-width: 769px) {
  .u-p-0--pc {
    padding: 0px !important; }
  .u-pt-0--pc,
  .u-py-0--pc {
    padding-top: 0px !important; }
  .u-pr-0--pc,
  .u-px-0--pc {
    padding-right: 0px !important; }
  .u-pb-0--pc,
  .u-py-0--pc {
    padding-bottom: 0px !important; }
  .u-pl-0--pc,
  .u-px-0--pc {
    padding-left: 0px !important; } }

.u-p-4 {
  padding: 4px !important; }

.u-pt-4,
.u-py-4 {
  padding-top: 4px !important; }

.u-pr-4,
.u-px-4 {
  padding-right: 4px !important; }

.u-pb-4,
.u-py-4 {
  padding-bottom: 4px !important; }

.u-pl-4,
.u-px-4 {
  padding-left: 4px !important; }

@media screen and (max-width: 768px) {
  .u-p-4--sp,
  .u-p-4 {
    padding: 0.533333333333vw !important; }
  .u-pt-4,
  .u-py-4,
  .u-pt-4--sp,
  .u-py-4--sp {
    padding-top: 0.533333333333vw !important; }
  .u-pr-4,
  .u-px-4,
  .u-pr-4--sp,
  .u-px-4--sp {
    padding-right: 0.533333333333vw !important; }
  .u-pb-4,
  .u-py-4,
  .u-pb-4--sp,
  .u-py-4--sp {
    padding-bottom: 0.533333333333vw !important; }
  .u-pl-4,
  .u-px-4,
  .u-pl-4--sp,
  .u-px-4--sp {
    padding-left: 0.533333333333vw !important; } }

@media screen and (min-width: 769px) {
  .u-p-4--pc {
    padding: 4px !important; }
  .u-pt-4--pc,
  .u-py-4--pc {
    padding-top: 4px !important; }
  .u-pr-4--pc,
  .u-px-4--pc {
    padding-right: 4px !important; }
  .u-pb-4--pc,
  .u-py-4--pc {
    padding-bottom: 4px !important; }
  .u-pl-4--pc,
  .u-px-4--pc {
    padding-left: 4px !important; } }

.u-p-8 {
  padding: 8px !important; }

.u-pt-8,
.u-py-8 {
  padding-top: 8px !important; }

.u-pr-8,
.u-px-8 {
  padding-right: 8px !important; }

.u-pb-8,
.u-py-8 {
  padding-bottom: 8px !important; }

.u-pl-8,
.u-px-8 {
  padding-left: 8px !important; }

@media screen and (max-width: 768px) {
  .u-p-8--sp,
  .u-p-8 {
    padding: 1.06666666667vw !important; }
  .u-pt-8,
  .u-py-8,
  .u-pt-8--sp,
  .u-py-8--sp {
    padding-top: 1.06666666667vw !important; }
  .u-pr-8,
  .u-px-8,
  .u-pr-8--sp,
  .u-px-8--sp {
    padding-right: 1.06666666667vw !important; }
  .u-pb-8,
  .u-py-8,
  .u-pb-8--sp,
  .u-py-8--sp {
    padding-bottom: 1.06666666667vw !important; }
  .u-pl-8,
  .u-px-8,
  .u-pl-8--sp,
  .u-px-8--sp {
    padding-left: 1.06666666667vw !important; } }

@media screen and (min-width: 769px) {
  .u-p-8--pc {
    padding: 8px !important; }
  .u-pt-8--pc,
  .u-py-8--pc {
    padding-top: 8px !important; }
  .u-pr-8--pc,
  .u-px-8--pc {
    padding-right: 8px !important; }
  .u-pb-8--pc,
  .u-py-8--pc {
    padding-bottom: 8px !important; }
  .u-pl-8--pc,
  .u-px-8--pc {
    padding-left: 8px !important; } }

.u-p-12 {
  padding: 12px !important; }

.u-pt-12,
.u-py-12 {
  padding-top: 12px !important; }

.u-pr-12,
.u-px-12 {
  padding-right: 12px !important; }

.u-pb-12,
.u-py-12 {
  padding-bottom: 12px !important; }

.u-pl-12,
.u-px-12 {
  padding-left: 12px !important; }

@media screen and (max-width: 768px) {
  .u-p-12--sp,
  .u-p-12 {
    padding: 1.6vw !important; }
  .u-pt-12,
  .u-py-12,
  .u-pt-12--sp,
  .u-py-12--sp {
    padding-top: 1.6vw !important; }
  .u-pr-12,
  .u-px-12,
  .u-pr-12--sp,
  .u-px-12--sp {
    padding-right: 1.6vw !important; }
  .u-pb-12,
  .u-py-12,
  .u-pb-12--sp,
  .u-py-12--sp {
    padding-bottom: 1.6vw !important; }
  .u-pl-12,
  .u-px-12,
  .u-pl-12--sp,
  .u-px-12--sp {
    padding-left: 1.6vw !important; } }

@media screen and (min-width: 769px) {
  .u-p-12--pc {
    padding: 12px !important; }
  .u-pt-12--pc,
  .u-py-12--pc {
    padding-top: 12px !important; }
  .u-pr-12--pc,
  .u-px-12--pc {
    padding-right: 12px !important; }
  .u-pb-12--pc,
  .u-py-12--pc {
    padding-bottom: 12px !important; }
  .u-pl-12--pc,
  .u-px-12--pc {
    padding-left: 12px !important; } }

.u-p-20 {
  padding: 20px !important; }

.u-pt-20,
.u-py-20 {
  padding-top: 20px !important; }

.u-pr-20,
.u-px-20 {
  padding-right: 20px !important; }

.u-pb-20,
.u-py-20 {
  padding-bottom: 20px !important; }

.u-pl-20,
.u-px-20 {
  padding-left: 20px !important; }

@media screen and (max-width: 768px) {
  .u-p-20--sp,
  .u-p-20 {
    padding: 2.66666666667vw !important; }
  .u-pt-20,
  .u-py-20,
  .u-pt-20--sp,
  .u-py-20--sp {
    padding-top: 2.66666666667vw !important; }
  .u-pr-20,
  .u-px-20,
  .u-pr-20--sp,
  .u-px-20--sp {
    padding-right: 2.66666666667vw !important; }
  .u-pb-20,
  .u-py-20,
  .u-pb-20--sp,
  .u-py-20--sp {
    padding-bottom: 2.66666666667vw !important; }
  .u-pl-20,
  .u-px-20,
  .u-pl-20--sp,
  .u-px-20--sp {
    padding-left: 2.66666666667vw !important; } }

@media screen and (min-width: 769px) {
  .u-p-20--pc {
    padding: 20px !important; }
  .u-pt-20--pc,
  .u-py-20--pc {
    padding-top: 20px !important; }
  .u-pr-20--pc,
  .u-px-20--pc {
    padding-right: 20px !important; }
  .u-pb-20--pc,
  .u-py-20--pc {
    padding-bottom: 20px !important; }
  .u-pl-20--pc,
  .u-px-20--pc {
    padding-left: 20px !important; } }

.u-p-32 {
  padding: 32px !important; }

.u-pt-32,
.u-py-32 {
  padding-top: 32px !important; }

.u-pr-32,
.u-px-32 {
  padding-right: 32px !important; }

.u-pb-32,
.u-py-32 {
  padding-bottom: 32px !important; }

.u-pl-32,
.u-px-32 {
  padding-left: 32px !important; }

@media screen and (max-width: 768px) {
  .u-p-32--sp,
  .u-p-32 {
    padding: 4.26666666667vw !important; }
  .u-pt-32,
  .u-py-32,
  .u-pt-32--sp,
  .u-py-32--sp {
    padding-top: 4.26666666667vw !important; }
  .u-pr-32,
  .u-px-32,
  .u-pr-32--sp,
  .u-px-32--sp {
    padding-right: 4.26666666667vw !important; }
  .u-pb-32,
  .u-py-32,
  .u-pb-32--sp,
  .u-py-32--sp {
    padding-bottom: 4.26666666667vw !important; }
  .u-pl-32,
  .u-px-32,
  .u-pl-32--sp,
  .u-px-32--sp {
    padding-left: 4.26666666667vw !important; } }

@media screen and (min-width: 769px) {
  .u-p-32--pc {
    padding: 32px !important; }
  .u-pt-32--pc,
  .u-py-32--pc {
    padding-top: 32px !important; }
  .u-pr-32--pc,
  .u-px-32--pc {
    padding-right: 32px !important; }
  .u-pb-32--pc,
  .u-py-32--pc {
    padding-bottom: 32px !important; }
  .u-pl-32--pc,
  .u-px-32--pc {
    padding-left: 32px !important; } }

.u-p-40 {
  padding: 40px !important; }

.u-pt-40,
.u-py-40 {
  padding-top: 40px !important; }

.u-pr-40,
.u-px-40 {
  padding-right: 40px !important; }

.u-pb-40,
.u-py-40 {
  padding-bottom: 40px !important; }

.u-pl-40,
.u-px-40 {
  padding-left: 40px !important; }

@media screen and (max-width: 768px) {
  .u-p-40--sp,
  .u-p-40 {
    padding: 5.33333333333vw !important; }
  .u-pt-40,
  .u-py-40,
  .u-pt-40--sp,
  .u-py-40--sp {
    padding-top: 5.33333333333vw !important; }
  .u-pr-40,
  .u-px-40,
  .u-pr-40--sp,
  .u-px-40--sp {
    padding-right: 5.33333333333vw !important; }
  .u-pb-40,
  .u-py-40,
  .u-pb-40--sp,
  .u-py-40--sp {
    padding-bottom: 5.33333333333vw !important; }
  .u-pl-40,
  .u-px-40,
  .u-pl-40--sp,
  .u-px-40--sp {
    padding-left: 5.33333333333vw !important; } }

@media screen and (min-width: 769px) {
  .u-p-40--pc {
    padding: 40px !important; }
  .u-pt-40--pc,
  .u-py-40--pc {
    padding-top: 40px !important; }
  .u-pr-40--pc,
  .u-px-40--pc {
    padding-right: 40px !important; }
  .u-pb-40--pc,
  .u-py-40--pc {
    padding-bottom: 40px !important; }
  .u-pl-40--pc,
  .u-px-40--pc {
    padding-left: 40px !important; } }

.u-p-48 {
  padding: 48px !important; }

.u-pt-48,
.u-py-48 {
  padding-top: 48px !important; }

.u-pr-48,
.u-px-48 {
  padding-right: 48px !important; }

.u-pb-48,
.u-py-48 {
  padding-bottom: 48px !important; }

.u-pl-48,
.u-px-48 {
  padding-left: 48px !important; }

@media screen and (max-width: 768px) {
  .u-p-48--sp,
  .u-p-48 {
    padding: 6.4vw !important; }
  .u-pt-48,
  .u-py-48,
  .u-pt-48--sp,
  .u-py-48--sp {
    padding-top: 6.4vw !important; }
  .u-pr-48,
  .u-px-48,
  .u-pr-48--sp,
  .u-px-48--sp {
    padding-right: 6.4vw !important; }
  .u-pb-48,
  .u-py-48,
  .u-pb-48--sp,
  .u-py-48--sp {
    padding-bottom: 6.4vw !important; }
  .u-pl-48,
  .u-px-48,
  .u-pl-48--sp,
  .u-px-48--sp {
    padding-left: 6.4vw !important; } }

@media screen and (min-width: 769px) {
  .u-p-48--pc {
    padding: 48px !important; }
  .u-pt-48--pc,
  .u-py-48--pc {
    padding-top: 48px !important; }
  .u-pr-48--pc,
  .u-px-48--pc {
    padding-right: 48px !important; }
  .u-pb-48--pc,
  .u-py-48--pc {
    padding-bottom: 48px !important; }
  .u-pl-48--pc,
  .u-px-48--pc {
    padding-left: 48px !important; } }

.u-p-60 {
  padding: 60px !important; }

.u-pt-60,
.u-py-60 {
  padding-top: 60px !important; }

.u-pr-60,
.u-px-60 {
  padding-right: 60px !important; }

.u-pb-60,
.u-py-60 {
  padding-bottom: 60px !important; }

.u-pl-60,
.u-px-60 {
  padding-left: 60px !important; }

@media screen and (max-width: 768px) {
  .u-p-60--sp,
  .u-p-60 {
    padding: 8vw !important; }
  .u-pt-60,
  .u-py-60,
  .u-pt-60--sp,
  .u-py-60--sp {
    padding-top: 8vw !important; }
  .u-pr-60,
  .u-px-60,
  .u-pr-60--sp,
  .u-px-60--sp {
    padding-right: 8vw !important; }
  .u-pb-60,
  .u-py-60,
  .u-pb-60--sp,
  .u-py-60--sp {
    padding-bottom: 8vw !important; }
  .u-pl-60,
  .u-px-60,
  .u-pl-60--sp,
  .u-px-60--sp {
    padding-left: 8vw !important; } }

@media screen and (min-width: 769px) {
  .u-p-60--pc {
    padding: 60px !important; }
  .u-pt-60--pc,
  .u-py-60--pc {
    padding-top: 60px !important; }
  .u-pr-60--pc,
  .u-px-60--pc {
    padding-right: 60px !important; }
  .u-pb-60--pc,
  .u-py-60--pc {
    padding-bottom: 60px !important; }
  .u-pl-60--pc,
  .u-px-60--pc {
    padding-left: 60px !important; } }

.u-m-auto {
  margin: auto !important; }

.u-mt-auto,
.u-my-auto {
  margin-top: auto !important; }

.u-mr-auto,
.u-mx-auto {
  margin-right: auto !important; }

.u-mb-auto,
.u-my-auto {
  margin-bottom: auto !important; }

.u-ml-auto,
.u-mx-auto {
  margin-left: auto !important; }

.u-font-goth {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, sans-serif; }

.u-font-mincho {
  font-family: "Times New Roman", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif; }

.u-font-10 {
  font-size: 1rem !important; }

@media screen and (max-width: 768px) {
  .u-font-10--sp {
    font-size: 1rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-10--pc {
    font-size: 1rem !important; } }

.u-font-12 {
  font-size: 1.2rem !important; }

@media screen and (max-width: 768px) {
  .u-font-12--sp {
    font-size: 1.2rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-12--pc {
    font-size: 1.2rem !important; } }

.u-font-16 {
  font-size: 1.6rem !important; }

@media screen and (max-width: 768px) {
  .u-font-16--sp {
    font-size: 1.6rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-16--pc {
    font-size: 1.6rem !important; } }

.u-font-20 {
  font-size: 2rem !important; }

@media screen and (max-width: 768px) {
  .u-font-20--sp {
    font-size: 2rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-20--pc {
    font-size: 2rem !important; } }

.u-font-32 {
  font-size: 3.2rem !important; }

@media screen and (max-width: 768px) {
  .u-font-32--sp {
    font-size: 3.2rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-32--pc {
    font-size: 3.2rem !important; } }

.u-font-40 {
  font-size: 4rem !important; }

@media screen and (max-width: 768px) {
  .u-font-40--sp {
    font-size: 4rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-40--pc {
    font-size: 4rem !important; } }

.u-font-56 {
  font-size: 5.6rem !important; }

@media screen and (max-width: 768px) {
  .u-font-56--sp {
    font-size: 5.6rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-56--pc {
    font-size: 5.6rem !important; } }

.u-font-60 {
  font-size: 6rem !important; }

@media screen and (max-width: 768px) {
  .u-font-60--sp {
    font-size: 6rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-60--pc {
    font-size: 6rem !important; } }

.u-font-normal {
  font-weight: normal !important; }

.u-font-bold {
  font-weight: bold !important; }

.u-color-wh {
  color: #fff !important; }

.u-color-bk {
  color: #000 !important; }

.u-bg-wh {
  background: #fff !important; }

.u-bg-bk {
  background: #000 !important; }
