:root {
  --nav-height: 60px;
  --shadow-big: 3vw;
  --shadow-normal: 1.5vw;
  --shadow-small: 1vw;
}
@media only screen and (min-width: 481px) {
  :root {
    --nav-height: 80px;
    --shadow-big: 16px;
    --shadow-normal: 8px;
    --shadow-small: 5px;
  }
}

@keyframes show {
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes breathe {
  to {
    transform: scale(1.05);
  }
}
.content {
  position: relative;
  width: 100%;
  max-width: 480px;
  min-height: 100%;
  margin: auto;
  text-align: center;
  padding-top: var(--nav-height);
  background: #fdc8dd;
}

h1 {
  width: 80%;
  margin: auto;
}

.deco-beauty,
.deco-style,
.deco-c {
  z-index: 0;
  position: absolute;
  width: 6%;
  pointer-events: none;
}

.deco-c {
  width: 44%;
  top: calc(var(--nav-height) - 5vw);
  left: 3%;
}

.deco-beauty,
.deco-style {
  display: none;
}

.deco-star {
  position: absolute;
  display: block;
  width: 3%;
}

.deco-star-1 {
  top: calc(-5vw + var(--nav-height));
  left: 58%;
}

.deco-star-2 {
  top: calc(24.5vw + var(--nav-height));
  left: 86%;
}

.deco-star-3 {
  top: calc(67vw + var(--nav-height));
  left: 4%;
}

.deco-star-4 {
  top: calc(135vw + var(--nav-height));
  left: 88%;
}

.deco-star-5 {
  top: calc(140vw + var(--nav-height));
  left: 3%;
}

.btn-flex {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 90%;
  margin: auto;
  gap: 1.5em 5%;
}
.btn-flex.column {
  flex-direction: column;
}
.btn-flex a {
  position: relative;
  display: block;
  width: 65%;
  margin: auto;
  text-align: center;
  padding: 0.25em 0;
  border-radius: 5em;
  -webkit-border-radius: 5em;
  font-size: 5.5vw;
  box-shadow: 0 0 1.5vw rgba(255, 255, 81, 0.8);
}
@media only screen and (min-width: 481px) {
  .btn-flex a {
    font-size: 26.4px;
  }
}
.btn-flex a span {
  z-index: 1;
  position: relative;
  color: #0097e4;
  background: linear-gradient(to right, #0097e4, #6e26bf);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.btn-flex a.disabled {
  pointer-events: none;
  opacity: 0.75;
  filter: grayscale(1);
}
.btn-flex a::before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  background: #43e8b1;
  border-radius: 5em;
  -webkit-border-radius: 5em;
}
.btn-flex a::after {
  position: absolute;
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% + 6px);
  height: calc(100% + 6px);
  border: 2px solid #FFF;
  border-radius: 5em;
  -webkit-border-radius: 5em;
}

.index {
  overflow: hidden;
}
.index .index-kv {
  position: relative;
  width: 65%;
  margin: auto;
  opacity: 0;
  transform: translateY(1.5em);
  animation: show 1s forwards;
}
.index .index-1 {
  position: absolute;
  display: block;
  width: 42%;
  right: -30%;
  top: 35%;
}
.index .index-2 {
  position: absolute;
  display: block;
  width: 34%;
  left: -28%;
  top: 52%;
}
.index p {
  margin: 3% 0;
  opacity: 0;
  transform: translateY(1.5em);
  animation: show 1s 0.5s forwards;
}
.index .btn-index {
  margin-bottom: 5%;
  animation: breathe 0.75s alternate infinite;
}
.index .index-p-block {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 100%;
  height: 5em;
  white-space: nowrap;
}
.index .index-p {
  position: absolute;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: indexp 6s infinite;
  opacity: 0;
}
.index .index-p-2 {
  animation-delay: 2s;
}
.index .index-p-3 {
  animation-delay: 4s;
}
@keyframes indexp {
  0%, 40%, 100% {
    opacity: 0;
    margin-top: 0.5em;
  }
  20%, 30% {
    opacity: 1;
    margin-top: 0;
  }
}

.nickname .nickname-block {
  width: 70%;
  padding: 22% 0;
  margin: 5% auto;
  border: 5px solid #dd4d93;
  background: rgba(255, 255, 255, 0.65);
}
.nickname .nickname-block .nickname-input {
  border-radius: 5em;
  -webkit-border-radius: 5em;
  overflow: hidden;
  border: 1px solid #dd4d93;
  width: 85%;
  margin: 5% auto;
  box-shadow: 0 0 var(--shadow-normal) rgba(221, 77, 147, 0.75);
  background: rgba(255, 255, 255, 0.75);
}
.nickname .nickname-block .nickname-input input {
  display: block;
  width: 100%;
  padding: 0.5em 0;
  text-align: center;
}
.nickname .btn-nickname:not(.disabled) {
  animation: breathe 0.75s alternate infinite;
}

.choose .choose-title {
  position: relative;
}
.choose .choose-title p:nth-child(2) {
  font-size: 5.5vw;
  color: #dd4d93;
}
@media only screen and (min-width: 481px) {
  .choose .choose-title p:nth-child(2) {
    font-size: 26.4px;
  }
}
.choose .choose-title .choose-star-1,
.choose .choose-title .choose-star-2 {
  position: absolute;
  display: block;
  filter: brightness(0);
}
.choose .choose-title .choose-star-1 {
  width: 4%;
  bottom: 0;
  left: 13%;
}
.choose .choose-title .choose-star-2 {
  width: 5%;
  bottom: 30%;
  right: 12%;
}
.choose .choose-block {
  z-index: 1;
  position: relative;
  width: 70%;
  padding: 0 5%;
  margin: 8% auto;
  border: 5px solid #dd4d93;
  background: rgba(255, 255, 255, 0.65);
  box-shadow: 0 0 var(--shadow-normal) #dd4d93;
  max-height: 50vh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.choose .choose-block p {
  padding: 1% 0;
  border-top: 1px solid #FFF;
}
.choose .choose-block p:first-child {
  border: 0;
}
.choose .choose-block p a {
  display: block;
  padding: 0.5em 0;
  border-radius: 0.25em;
  -webkit-border-radius: 0.25em;
  transition: color 0.25s, background 0.25s;
}
.choose .choose-block p a.active {
  color: #FFF;
  background: #dd4d93;
}
.choose .btn-choose:not(.disabled) {
  animation: breathe 0.75s alternate infinite;
}

.photo .photo-title p:nth-child(2) {
  font-size: 5.5vw;
  color: #dd4d93;
}
@media only screen and (min-width: 481px) {
  .photo .photo-title p:nth-child(2) {
    font-size: 26.4px;
  }
}
.photo .photo-block {
  position: relative;
  width: 55%;
  padding-top: 70%;
  margin: 5% auto 3% auto;
  border: 5px solid #dd4d93;
  background: rgba(255, 255, 255, 0.65);
  box-shadow: 0 0 var(--shadow-normal) #dd4d93;
}
.photo .photo-block .photo-preview {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: cover !important;
}
.photo p.des {
  padding: 5% 0;
  font-size: 3.25vw;
}
@media only screen and (min-width: 481px) {
  .photo p.des {
    font-size: 15.6px;
  }
}
.photo .btn-upload-choose {
  margin-top: 12%;
}
.photo .btn-upload-confirm {
  margin-top: 5%;
}
.photo #btn-upload,
.photo .btn-confirm {
  animation: breathe 0.75s alternate infinite;
}

.running {
  padding-top: 10%;
  overflow: hidden;
}
.running .running-title p:nth-child(1) {
  font-size: 8vw;
  color: #FFF;
  line-height: normal;
  text-shadow: 0 0 var(--shadow-small) #dd4d93;
  animation: runtitle 1s alternate infinite;
}
@media only screen and (min-width: 481px) {
  .running .running-title p:nth-child(1) {
    font-size: 38.4px;
  }
}
@keyframes runtitle {
  to {
    transform: scale(1.05);
    text-shadow: 0 0 var(--shadow-small) #dd4d93, 0 0 calc(var(--shadow-small) * 2) #dd4d93, 0 0 calc(var(--shadow-small) * 3) #dd4d93;
  }
}
.running .running-video {
  position: relative;
  margin: 5% auto;
  width: 90%;
  padding-top: 50.625%;
  border: 5px solid #dd4d93;
  background: rgba(255, 255, 255, 0.65);
  box-shadow: 0 0 var(--shadow-normal) #dd4d93;
  overflow: hidden;
}
.running .running-video::after {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.running .running-video .ytVideo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 102%;
  height: 102%;
}
.running p.des {
  color: #dd4d93;
  font-size: 5vw;
}
@media only screen and (min-width: 481px) {
  .running p.des {
    font-size: 24px;
  }
}

.result .result-title {
  position: relative;
  width: 75%;
  margin: auto;
}
.result .result-title .result-name {
  position: absolute;
  top: 35%;
  left: 59%;
  width: 50%;
  color: #FFF;
  transform: translate(-50%, -50%);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.result .result-img-block {
  position: relative;
  width: 70%;
  padding-top: 99.140625%;
  border: 2px solid #FFF;
  margin: 5% auto;
}
.result .result-img-block .result-img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: cover !important;
}
.result .result-img-block .deco-1,
.result .result-img-block .deco-2,
.result .result-img-block .deco-3,
.result .result-img-block .deco-4 {
  width: 2em;
  height: 2em;
  position: absolute;
  border: 6px solid #FFF;
  filter: drop-shadow(0 0 var(--shadow-normal) #FFF);
}
.result .result-img-block .deco-1 {
  border-right: 0;
  border-bottom: 0;
  top: -4px;
  left: -4px;
}
.result .result-img-block .deco-2 {
  border-left: 0;
  border-bottom: 0;
  top: -4px;
  right: -4px;
}
.result .result-img-block .deco-3 {
  border-right: 0;
  border-top: 0;
  bottom: -4px;
  left: -4px;
}
.result .result-img-block .deco-4 {
  border-top: 0;
  border-left: 0;
  bottom: -4px;
  right: -4px;
}
.result .btn-flex {
  position: relative;
  z-index: 2;
  width: 65%;
  gap: 8%;
}
.result .result-content {
  z-index: 1;
  position: relative;
  padding: 5% 0;
  letter-spacing: 0.025em;
  text-align: justify;
}
.result .result-content .deco-c {
  z-index: -1;
  top: -18%;
  left: -3%;
}
.result .result-content article {
  position: absolute;
  width: 55%;
  top: 28%;
  left: 40%;
  text-align: left;
  font-size: 3vw;
}
@media only screen and (min-width: 481px) {
  .result .result-content article {
    font-size: 14.4px;
  }
}
.result .result-content article p {
  color: #dd4d93;
  margin: 0.25em 0 1em 0;
  font-weight: bold;
  text-shadow: 0 0 0.25em #FFF;
}
.result .result-content article p span {
  display: inline-block;
  transform: scale(1, 0.5);
}
.result .result-content article a {
  display: block;
  width: 70%;
  margin-left: -3%;
  animation: breathe 0.75s alternate infinite;
}
.result .result-more {
  position: relative;
  margin-top: -27%;
}
.result .result-more a {
  position: absolute;
  display: block;
  width: 58%;
  padding: 0.5em 0;
  bottom: 12%;
  left: 22%;
  font-weight: bold;
  border-radius: 10em;
  -webkit-border-radius: 10em;
  animation: breathe 0.75s alternate infinite;
}
.result .result-more a span {
  z-index: 1;
  position: relative;
  font-size: 5vw;
  color: #0097e4;
  background: linear-gradient(to right, #0097e4, #6e26bf);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media only screen and (min-width: 481px) {
  .result .result-more a span {
    font-size: 24px;
  }
}
.result .result-more a::before {
  display: block;
  position: absolute;
  content: "";
  width: calc(100% + 6px);
  height: calc(100% + 6px);
  top: -3px;
  left: -3px;
  background: linear-gradient(to right, #0097e4, #6e26bf);
  border-radius: 10em;
  -webkit-border-radius: 10em;
}
.result .result-more a::after {
  display: block;
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #ffff51;
  border-radius: 10em;
  -webkit-border-radius: 10em;
}
.result .btn-share {
  z-index: 5;
  display: block;
  position: fixed;
  bottom: 5%;
  right: 1.5%;
  width: 12.5%;
  max-width: 80px;
}

.lightbox-privacy,
.lightbox-fail {
  z-index: 5;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.5);
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
}
.lightbox-privacy article,
.lightbox-fail article {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  padding: 5%;
  margin: 3% auto;
  border: 5px solid #dd4d93;
  background: #fdc8dd;
  max-width: 480px;
  font-size: 5vw;
  box-shadow: 0 0 var(--shadow-normal) #dd4d93;
}
@media only screen and (min-width: 481px) {
  .lightbox-privacy article,
  .lightbox-fail article {
    font-size: 24px;
  }
}
.lightbox-privacy article h2,
.lightbox-fail article h2 {
  font-size: 5.5vw;
  color: #dd4d93;
  text-align: center;
}
@media only screen and (min-width: 481px) {
  .lightbox-privacy article h2,
  .lightbox-fail article h2 {
    font-size: 26.4px;
  }
}
.lightbox-privacy article a,
.lightbox-fail article a {
  position: relative;
  display: block;
  width: 65%;
  margin: auto;
  text-align: center;
  padding: 0.25em 0;
  border-radius: 5em;
  -webkit-border-radius: 5em;
  font-size: 5.5vw;
  box-shadow: 0 0 1.5vw rgba(255, 255, 81, 0.8);
}
@media only screen and (min-width: 481px) {
  .lightbox-privacy article a,
  .lightbox-fail article a {
    font-size: 26.4px;
  }
}
.lightbox-privacy article a span,
.lightbox-fail article a span {
  z-index: 1;
  position: relative;
  color: #0097e4;
  background: linear-gradient(to right, #0097e4, #6e26bf);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.lightbox-privacy article a.disabled,
.lightbox-fail article a.disabled {
  pointer-events: none;
  opacity: 0.75;
  filter: grayscale(1);
}
.lightbox-privacy article a::before,
.lightbox-fail article a::before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  background: #43e8b1;
  border-radius: 5em;
  -webkit-border-radius: 5em;
}
.lightbox-privacy article a::after,
.lightbox-fail article a::after {
  position: absolute;
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% + 6px);
  height: calc(100% + 6px);
  border: 2px solid #FFF;
  border-radius: 5em;
  -webkit-border-radius: 5em;
}

.lightbox-privacy {
  text-align: justify;
}
.lightbox-privacy article {
  display: flex;
  flex-direction: column;
  font-size: 3.25vw;
  height: 80%;
  gap: 3%;
}
@media only screen and (min-width: 481px) {
  .lightbox-privacy article {
    font-size: 15.6px;
  }
}
.lightbox-privacy article .privacy-scroll {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  flex: 1 0 0;
}
.lightbox-privacy article ol {
  margin-left: 1.5em;
}

@media only screen and (min-width: 481px) {
  .deco-c {
    width: 44%;
    top: calc(var(--nav-height) - 45px);
    left: 3%;
  }
  .deco-star-1 {
    top: 57px;
  }
  .deco-star-2 {
    top: 197px;
  }
  .deco-star-3 {
    top: 400px;
  }
  .deco-star-4 {
    top: 720px;
  }
  .deco-star-5 {
    top: 750px;
  }
  .content {
    border-right: 5px solid #dd4d93;
    border-left: 5px solid #dd4d93;
    overflow: hidden;
  }
  .deco-beauty {
    position: fixed;
    display: block;
    width: 40px;
    top: 175px;
    left: -550px;
    right: 0;
    margin: auto;
  }
  .deco-style {
    position: fixed;
    display: block;
    width: 40px;
    bottom: 100px;
    right: -550px;
    left: 0;
    margin: auto;
  }
}/*# sourceMappingURL=index.css.map */