﻿html {
  background: #f2f2f2;
  font-size: 2.6666vw
}

@media(min-width: 501px) {
  html {
    font-size: 13.333px
  }
}

body {
  margin: 0 auto;
  padding: 0;
  color: #000;
  -webkit-text-size-adjust: 100%;
  max-width: 500px;
  overflow-x: hidden;
  box-shadow: 0 0 1rem rgba(0, 0, 0, .2);
  text-align: left;
  min-height: 100vh
}

body * {
  font-family: "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", sans-serif;
  font-feature-settings: "palt" 1
}

#page-wrap {
  overflow: hidden
}

* {
  box-sizing: border-box
}

main,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
picture {
  display: block;
  margin: 0;
  padding: 0
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
dl,
dt,
dd,
ul,
ol,
li,
form {
  margin: 0;
  padding: 0
}

button {
  background-color: rgba(0, 0, 0, 0);
  border: none;
  cursor: pointer;
  outline: none;
  margin: 0;
  padding: 0;
  appearance: none;
  cursor: pointer;
  color: currentColor
}

button::-moz-focus-inner {
  border: 0
}

ul {
  list-style-type: none
}

img {
  vertical-align: bottom;
  border: 0;
  width: 100%;
  height: auto
}

a {
  outline: 0;
  color: currentColor;
  text-decoration: none
}

a:hover {
  text-decoration: none
}

a.line-link {
  text-decoration: underline
}

.underline {
  border-bottom: .1em solid currentColor
}

.underline-dash {
  border-bottom: .1em dashed currentColor
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1rem;
  line-height: 1.6
}

p,
ul,
dl {
  font-size: 1rem;
  line-height: 1.5
}

sup {
  font-size: .7em
}

.d-ib {
  display: inline-block
}

.ind-1em {
  display: block;
  text-indent: -1em !important;
  padding-left: 1em
}

.ind-1em::first-letter {
  font-feature-settings: normal
}

.ind-1em>* {
  text-indent: 0
}

.burasage {
  overflow: hidden;
  text-align: left
}

.burasage>* {
  display: block;
  overflow: hidden
}

.burasage>*:first-child {
  float: left;
  font-feature-settings: normal
}

.txt-lg {
  font-size: 2rem
}

.txt-md {
  font-size: 1.8rem
}

.txt-rg {
  font-size: 1.6rem
}

.txt-sm {
  font-size: 1.4rem
}

.txt-xs {
  font-size: 1.2rem
}

.txt-xxs {
  font-size: 1rem
}

.txt-list>li+li {
  margin-top: .2em
}

.fw-normal {
  font-weight: 400 !important
}

.fw-medium {
  font-weight: 500 !important
}

.fw-bold {
  font-weight: 700 !important
}

.mt-0 {
  margin-top: 0 !important
}

.mt-02em {
  margin-top: .2em !important
}

.mt-05em {
  margin-top: .5em !important
}

.mt-1em {
  margin-top: 1em !important
}

.mt-2em {
  margin-top: 2em !important
}

.mt-3em {
  margin-top: 3em !important
}

.mt-4em {
  margin-top: 4em !important
}

.mt-5em {
  margin-top: 5em !important
}

.mb-0 {
  margin-bottom: 0 !important
}

.mb-05em {
  margin-bottom: .5em !important
}

.mb-1em {
  margin-bottom: 1em !important
}

.mb-2em {
  margin-bottom: 2em !important
}

.mb-3em {
  margin-bottom: 3em !important
}

.mb-4em {
  margin-bottom: 4em !important
}

.mb-5em {
  margin-bottom: 5em !important
}

.m-auto {
  margin: auto !important
}

.ml-1em {
  margin-left: 1em
}

.side-padding {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important
}

.pt-0 {
  padding-top: 0 !important
}

.pt-05em {
  padding-top: .5em !important
}

.pt-1em {
  padding-top: 1em !important
}

.pt-2em {
  padding-top: 2em !important
}

.pt-3em {
  padding-top: 3em !important
}

.pt-4em {
  padding-top: 4em !important
}

.pt-5em {
  padding-top: 5em !important
}

.pb-0 {
  padding-bottom: 0 !important
}

.pb-05em {
  padding-bottom: .5em !important
}

.pb-1em {
  padding-bottom: 1em !important
}

.pb-2em {
  padding-bottom: 2em !important
}

.pb-3em {
  padding-bottom: 3em !important
}

.pb-4em {
  padding-bottom: 4em !important
}

.pb-5em {
  padding-bottom: 5em !important
}

.lh-12 {
  line-height: 1.2
}

.align-left {
  text-align: left
}

.align-center {
  text-align: center
}

.align-right {
  text-align: right
}

.justify {
  text-align: justify
}

.color-blue {
  color: #0672d8 !important
}

.material-symbols-rounded {
  font-variation-settings: "FILL" 1, "wght" 500, "GRAD" 0, "opsz" 24;
  font-size: 1em
}

.round-btn,
.mission-btn {
  background: currentColor;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 3em;
  border-radius: 2em;
  font-weight: bold;
  line-height: 1.2;
  padding: .25em 0
}

.round-btn.bd,
.bd.mission-btn {
  border: .2rem solid currentColor;
  background-color: #fff;
  color: currentColor
}

.round-btn .btn-txt,
.mission-btn .btn-txt {
  margin-bottom: .1em
}

.round-btn .icon,
.mission-btn .icon {
  font-size: 1.5em;
  margin-left: .2em;
  margin-right: -0.2em
}

.mission-btn {
  font-size: 1.4rem;
  min-height: 5rem;
  position: relative;
  color: #fff !important
}

.mission-btn .btn-txt {
  margin-right: 1em;
  text-align: center
}

.mission-btn .btn-txt small {
  display: block;
  margin: .2em 0 -0.2em
}

.mission-btn .icon {
  position: absolute;
  margin-right: 0;
  right: 1rem
}

.mission-btn.recruit,
.mission-btn.auid {
  background-image: linear-gradient(to bottom, #e2444d 0%, #d0111b 60%);
  box-shadow: 0 .25rem #880b12
}

.mission-btn.recruit .icon,
.mission-btn.auid .icon {
  color: #ffe400
}

.mission-btn.ponta {
  background-image: linear-gradient(to bottom, #3c97ec 0%, #0672d8 60%);
  box-shadow: 0 .25rem #043886
}

.mission-btn.ponta .icon {
  color: #ffe400
}

.is-connect .mission-btn.auid {
  pointer-events: none;
  opacity: .3
}

.main-contents {
  background-color: #faf5f7
}

.bg-red-stripe {
  background-image: repeating-linear-gradient(-45deg, #FED8DC, #FED8DC 1.5rem, #FEE0E3 1.5rem, #FEE0E3 3rem);
}

.kv-sec {
  text-align: center;
  padding: 1px 0 0
}

.kv-sec .kv-ttl {
  margin: 1rem 0 0;
  position: relative;
  z-index: 2;
}

.kv-sec__cta__bg {
  position: relative;
}

.kv-sec__cta__bg::before {
  background: #fff;
  border-radius: 50% / 100% 100% 0 0;
  content: "";
  position: absolute;
  top: -6rem;
  left: 50%;
  transform: translateX(-50%);
  width: calc(588px);
  height: 170px;
}

.kv-sec__cta {
  background-color: #fff8df;
  margin-top: -2rem;
  padding: 2rem 0 2rem;
  position: relative;
  z-index: 1;
}

.kv-period {
  position: relative;
}

.kv-sec .kv-more {
  margin: 0 2.5rem
}

.kv-sec .kv-pass {
  margin: 1.5rem 4rem 1rem
}

.kv-sec .kv-period {
  margin: 1rem 1.5rem 0
}

.kv-entry-anc {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.5rem
}

.kv-entry-anc a {
  border-bottom: .2em dotted currentColor;
  padding-bottom: .1em
}

.kv-entry-anc a .icon {
  font-size: 1.2em;
  vertical-align: -0.2em;
  margin-left: .2em
}

.anc-sec {
  background: url(https://prcp.pass.auone.jp/gpl/202610_recruit_11/img/anc_bg.webp) no-repeat 50% 0;
  background-size: 100% auto;
  padding: 1.5rem 1.5rem 2rem
}

.anc-sec .anc-list {
  display: flex;
  gap: 1rem
}

.detail-col {
  border-radius: 1.2rem;
  background: #fdfdf6;
  overflow: hidden
}

.detail-col-ttl {
  background: #c4a34e;
}

.detail-col-wrap {
  position: relative;
  margin: 0 1.5rem
}

.detail-col::before {
  content: "";
  position: absolute;
  width: 8.3rem;
  height: 8.3rem;
  background: no-repeat 0 0;
  background-size: contain;
  z-index: 1;
  top: -0.72rem;
  left: -0.68rem
}

.howto-col::before {
  background-image: url(https://prcp.pass.auone.jp/gpl/202610_recruit_11/img/howto_ttl_acc.webp)
}

.howto-step {
  text-align: center
}

.howto-step dt {
  margin: 0 -2rem
}

.howto-step dd {
  margin-top: 1rem
}

.howto-step-arr {
  width: 2rem;
  margin: 1rem auto
}

.howto-step-block {
  background-image: repeating-linear-gradient(-45deg, #fff, #fff 1.5rem, #fbfaf5 1.5rem, #fbfaf5 3rem);
  padding: 2rem 2rem 5rem;
  border-bottom: .4rem dotted #a8a399
}

.howto-terms-ttl {
  width: 21rem;
  top: -3rem;
  position: relative;
  margin: 0 auto -3rem
}

.howto-terms-step {
  padding: 2rem
}

.howto-terms-step-ttl {
  font-size: 1.6rem;
  font-weight: bold;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  width: fit-content;
  margin: 0 auto .5em;
  line-height: 1.4
}

.howto-terms-step-ttl>strong {
  font-size: 1.5em;
  margin: -0.3em .2em 0 0
}

.howto-terms-step+.howto-terms-step {
  border-top: .15rem solid #a8a399
}

.mission-btn.ponta {
  max-width: 22rem;
  margin: auto
}

.prize-col::before {
  background-image: url(https://prcp.pass.auone.jp/gpl/202610_recruit_11/img/prize_ttl_acc.webp)
}

.prize-col-inner {
  background: url(https://prcp.pass.auone.jp/gpl/202610_recruit_11/img/prize_bg.webp) no-repeat 50% 0;
  background-size: auto;
  padding: 2rem
}

.prize-col .prize-01 {
  margin: 0 -1.2rem -1rem
}

.notes-ttl {
  color: #d0111b;
  border-bottom: .15rem solid #000;
  padding-bottom: .2em
}

.notes-sec>strong {
  display: block;
}

#fixed-btn {
  text-align: center;
  background: rgba(255, 255, 255, .95);
  padding: 1rem 1.5rem;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  max-width: 500px;
  z-index: 100;
  box-shadow: 0 0 1rem rgba(0, 0, 0, .3);
  clip-path: inset(-1rem 0 0 0)
}

#fixed-btn p {
  line-height: 1.2
}

.scroll-in.up-in {
  opacity: 0;
  transform: translateY(2rem);
  transition: .4s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.scroll-in.up-in.appeared {
  opacity: 1;
  transform: translateY(0)
}

.scroll-in.zoom-in {
  opacity: 0;
  transform: scale(0.4);
  transform-origin: 50% 50%;
  transition: .8s cubic-bezier(0.22, 1.5, 0.8, 1)
}

.scroll-in.zoom-in.appeared {
  opacity: 1;
  transform: scale(1)
}

[class^=show-],
[class*=" show-"] {
  display: none !important
}

html.is-entry .show-is-entry {
  display: block !important
}

html.is-entry .show-is-entry-inline {
  display: inline !important
}

[class^=show-],
[class*=" show-"] {
  display: none !important
}

html.is-connect .show-is-connect {
  display: block !important
}

html.is-connect .show-is-connect-inline {
  display: inline !important
}

[class^=show-],
[class*=" show-"] {
  display: none !important
}

html.is-login .show-is-login {
  display: block !important
}

html.is-login .show-is-login-inline {
  display: inline !important
}

html.is-entry .hide-is-entry {
  display: none !important
}

html.is-connect .hide-is-connect {
  display: none !important
}

html.is-login .hide-is-login {
  display: none !important
}

.footer {
  background: #fff;
  text-align: center;
  padding: 1rem 0 15rem
}

.footer .optout {
  font-size: 1rem
}

.footer .copyright {
  font-size: .9rem
}

div.campaign__container-floating-footer {
  display: none
}

.campaign__container {
  max-width: 900px
}

.alert {
  margin-bottom: 0;
  border-radius: 0
}

.btn-after {
  display: none;
}

.btn-before {
  display: block;
}

body.is-after .btn-after {
  display: block;
}

body.is-after .btn-before {
  display: none;
}