@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
@import url("https://kantan-cpn.auone.jp/sp/campaign/kantan_all/common/css/common.css");
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/*------------------------------------
 Campaign contents base
------------------------------------*/
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  scroll-behavior: smooth;
}
@media (max-width: 600px) {
  html {
    font-size: 2.6666666667vw;
  }
}

body {
  font-family: "Noto Sans JP", "Noto Sans CJK JP", sans-serif;
  line-height: 1.5;
  background: #F0F0F0;
}

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

#wrap {
  max-width: 750px;
  margin: 0 auto;
}

#wrap h1 {
  margin: 0;
}

#wrap h3,
#wrap h4 {
  font-family: "Noto Sans JP", "Noto Sans CJK JP", sans-serif;
}

.main-visual img {
  display: block;
}

#snow {
  position: relative;
}
#snow #particles {
  position: absolute;
  z-index: 1;
  max-width: 750px;
  width: 100%;
  height: 1100px;
  margin: 0 auto;
  top: 0;
}
@media screen and (max-width: 750px) {
  #snow #particles {
    height: 146.6666666667vw;
  }
}

header img {
  padding: 10px 15px;
  width: 70px;
  border: 1px solid #ccc;
  border-radius: 7px;
  background: #FFF;
  vertical-align: top;
  box-sizing: content-box;
}

@media screen and (max-width: 460px) {
  header img {
    padding: 8px 12px;
    width: 60px;
    vertical-align: top;
    border-radius: 5px;
  }
}
.l-section {
  margin: 3.125rem 0;
  padding: 0 1.3125rem;
}
.l-section > .box > .heading {
  margin: 0 auto -3.5625rem;
  width: 43.75rem;
}
@media screen and (max-width: 750px) {
  .l-section > .box > .heading {
    margin-bottom: -7.6vw;
    width: 93.3333333333vw;
  }
}
.l-section > .box > .body {
  background: #fff;
  padding: 5rem 1.625rem 2.75rem;
  border-radius: 1.25rem;
  box-shadow: 0 0 1.25rem 0 rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 750px) {
  .l-section > .box > .body {
    padding: 10.6666666667vw 3.4666666667vw 5.8666666667vw;
  }
}
.l-section > .box > .body > .text {
  margin: 0 0 1.625rem;
  font-size: 1.75rem;
  font-weight: bold;
  line-height: 1.5714285714;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 460px) {
  .l-section > .box > .body > .text {
    font-size: 1.5rem;
  }
}
.l-section > .box > .body > .text.-center {
  text-align: center;
}

.l-section.-feature {
  background-image: url("../img/feature-confetti.png"), url("../img/feature-sunshine.png");
  background-size: 46.875rem auto;
  background-position: top center, bottom center;
  margin: 0;
  padding-top: 2.25rem;
  padding-bottom: 4.375rem;
}
.l-section.-feature > .box > .body {
  padding-left: 1.625rem;
  padding-right: 1.625rem;
}
@media screen and (max-width: 750px) {
  .l-section.-feature > .box > .body {
    padding-left: 3.4666666667vw;
    padding-right: 3.4666666667vw;
  }
}
.l-section.-feature .triangle {
  width: 6.8125rem;
  margin: 1.25rem auto -1.25rem;
}
@media screen and (max-width: 750px) {
  .l-section.-feature .triangle {
    width: 14.5333333333vw;
    margin: 2.6666666667vw auto -2.6666666667vw;
  }
}
.l-section.-feature .title {
  margin: 0;
}
.l-section.-feature .note {
  list-style: none;
  margin: 0;
  padding: 1rem 0 0;
}
.l-section.-feature .note li {
  font-size: 1.125rem;
  letter-spacing: 0.04em;
  line-height: 1.5555555556;
  padding-left: 1.3em;
  position: relative;
}
.l-section.-feature .note li::before {
  position: absolute;
  top: 0;
  left: 0;
  font-size: inherit;
  color: inherit;
  content: "※";
}

.l-section.-store > .box > .heading {
  width: 44rem;
}
@media screen and (max-width: 750px) {
  .l-section.-store > .box > .heading {
    width: 93.8666666667vw;
  }
}
.l-section.-store > .box > .body > .title {
  margin: 0 0 0.625rem;
  font-weight: 900;
  font-size: 1.875rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FE6500;
}
@media screen and (max-width: 750px) {
  .l-section.-store > .box > .body > .title {
    font-size: 4vw;
    margin-bottom: 1.3333333333vw;
  }
}
.l-section.-store > .box > .body > .title::before, .l-section.-store > .box > .body > .title::after {
  width: 2.375rem;
  height: 2.125rem;
  background-image: url("data:image/svg+xml,%3Csvg width='38' height='34' viewBox='0 0 38 34' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.434 22.339C23.105 24.714 24.934 26.639 27.182 33.678C29.432 26.64 31.257 24.714 37.928 22.339C31.257 19.964 29.428 18.039 27.182 11C24.934 18.038 23.105 19.964 16.434 22.339Z' fill='%23FFDD45'/%3E%3Cpath d='M0 8.67C5.1 10.486 6.5 11.959 8.218 17.34C9.938 11.959 11.333 10.487 16.434 8.67C11.334 6.854 9.934 5.381 8.218 0C6.5 5.381 5.1 6.853 0 8.67Z' fill='%23FFDD45'/%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
@media screen and (max-width: 750px) {
  .l-section.-store > .box > .body > .title::before, .l-section.-store > .box > .body > .title::after {
    width: 5.0666666667vw;
    height: 4.5333333333vw;
  }
}
.l-section.-store > .box > .body > .title::before {
  margin-right: 0.75rem;
}
.l-section.-store > .box > .body > .title::after {
  margin-left: 0.25rem;
  transform: scaleX(-1);
}
.l-section.-store > .box > .body > .list {
  list-style: none;
  padding: 0;
  margin: 1.875rem 0 0;
}
.l-section.-store > .box > .body > .list li {
  font-size: 1.125rem;
  line-height: 1.5555555556;
  padding-left: 1.2em;
  letter-spacing: 0.04em;
  position: relative;
}
.l-section.-store > .box > .body > .list li + li {
  margin-top: 0.625rem;
}
.l-section.-store > .box > .body > .list li a {
  color: #FE6500;
  text-decoration: underline;
}
.l-section.-store > .box > .body > .list li a:hover {
  text-decoration: none;
}
.l-section.-store > .box > .body > .list li::before {
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  left: 0.1875rem;
  top: 0.8125rem;
  border-radius: 50%;
  background-image: linear-gradient(to bottom right, #fe8900 0%, #f85203 45.3%, #e10010 100%);
  content: "";
}
.l-section.-store .logo-box {
  max-width: 550px;
  margin: 1.25rem auto 1.875rem;
}
@media (max-width: 750px) {
  .l-section.-store .logo-box {
    max-width: 73.3333333333vw;
    margin-bottom: 4vw;
  }
}
.l-section.-store .logo-box .list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 5.375rem 1.875rem 5.375rem 1.875rem 5.375rem 1.875rem 5.375rem 1.875rem 5.375rem;
  grid-template-columns: repeat(5, 5.375rem);
  gap: 1.5rem 1.875rem;
}
@media (max-width: 750px) {
  .l-section.-store .logo-box .list {
    -ms-grid-columns: 11.4666666667vw 4vw 11.4666666667vw 4vw 11.4666666667vw 4vw 11.4666666667vw 4vw 11.4666666667vw;
    grid-template-columns: repeat(5, 11.4666666667vw);
    gap: 3.2vw 4vw;
  }
}
@media (max-width: 480px) {
  .l-section.-store .logo-box .list {
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr);
  }
}
.l-section.-store .logo-box .list li a {
  color: inherit;
  text-decoration: none;
}
.l-section.-store .logo-box .list .logo {
  box-shadow: 0 0 0.75rem rgba(0, 0, 0, 0.07);
  border-radius: 1rem;
}
.l-section.-store .logo-box .list .logo img {
  border-radius: inherit;
}
.l-section.-store .logo-box .list .name {
  font-size: 0.875rem;
  text-align: center;
  margin: 0.5rem 0 0;
}
@media (max-width: 750px) {
  .l-section.-store .logo-box .list .name {
    font-size: 1.8666666667vw;
    margin: 1.0666666667vw 0 0;
  }
}
.l-section.-store .logo-box .list .etc .logo {
  box-shadow: none;
}
.l-section.-store .logo-box .list .etc .name {
  font-size: 0.9375rem;
  text-align: left;
}
.l-section.-store .logo-box .note {
  text-align: right;
  margin-bottom: 0;
}

.l-section.-autocharge > .box > .body {
  padding-top: 5.5rem;
}
.l-section.-autocharge > .box > .body > .text {
  margin: 1.75rem 0 2.5rem;
}
@media screen and (max-width: 680px) {
  .l-section.-autocharge > .box > .body > .text br {
    display: none;
  }
}
.l-section.-autocharge .image {
  width: 35.125rem;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .l-section.-autocharge .image {
    width: 74.9333333333vw;
  }
}

.l-section.-other .bnr_box {
  text-align: center;
}
.l-section.-other .bnr_box > div + div {
  margin-top: 2rem;
}
.l-section.-other .bnr_box a {
  transition: 0.2s;
}
.l-section.-other .bnr_box a:hover {
  opacity: 0.8;
}

.l-section.-details > .box > .body {
  padding-top: 5.5rem;
}
@media screen and (max-width: 750px) {
  .l-section.-details > .box > .body {
    padding-top: 11.7333333333vw;
  }
}
.l-section.-details .title {
  margin: 0 0 1.25rem;
  font-size: 1.875rem;
  font-weight: 900;
  line-height: inherit;
  text-align: center;
  background-image: linear-gradient(to bottom, #fe8900 0%, #f85203 45.3%, #e10010 100%);
  padding: 0.5rem 0;
  color: #fff;
}
@media screen and (max-width: 750px) {
  .l-section.-details .title {
    font-size: 4vw;
    margin-bottom: 2.6666666667vw;
  }
}
.l-section.-details .title span {
  display: block;
  border-width: 0.125rem 0;
  border-style: solid;
  border-color: #fff;
  padding: 0.5rem 0 0.375rem;
}
.l-section.-details .title:not(:first-child) {
  margin-top: 2.9375rem;
}
@media screen and (max-width: 750px) {
  .l-section.-details .title:not(:first-child) {
    margin-top: 6.2666666667vw;
  }
}
.l-section.-details .ranking {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 0 0.3fr;
  grid-template-columns: 1fr 0.3fr;
  gap: 0.4375rem 0;
  margin: 1.25rem 0;
}
@media screen and (max-width: 680px) {
  .l-section.-details .ranking {
    font-size: 2.9411764706vw;
  }
}
.l-section.-details p {
  font-size: 1.25rem;
  line-height: 1.6;
  margin: 0;
  letter-spacing: 0.04em;
}
.l-section.-details p a {
  color: #FE6500;
  text-decoration: underline;
}
.l-section.-details p a:hover {
  text-decoration: none;
}
.l-section.-details p + .dot {
  margin-top: 0.4375rem;
}
.l-section.-details .asterisk {
  list-style: none;
  padding: 0;
  margin: 0;
}
.l-section.-details .asterisk li {
  font-size: 1.125rem;
  line-height: 1.5555555556;
  padding-left: 1.2em;
  letter-spacing: 0.04em;
  position: relative;
}
.l-section.-details .asterisk li::before {
  position: absolute;
  top: 0;
  left: 0;
  font-size: inherit;
  color: inherit;
  content: "※";
}
.l-section.-details .asterisk li + li {
  margin-top: 0.5rem;
}
.l-section.-details .dot {
  list-style: none;
  padding: 0;
  margin: 0;
}
.l-section.-details .dot > li {
  font-size: 1.25rem;
  line-height: 1.6;
  padding-left: 1.2em;
  letter-spacing: 0.04em;
  position: relative;
}
.l-section.-details .dot > li::before {
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  left: 0.1875rem;
  top: 0.8125rem;
  border-radius: 50%;
  background-image: linear-gradient(to bottom right, #fe8900 0%, #f85203 45.3%, #e10010 100%);
  content: "";
}
.l-section.-details .dot > li + li {
  margin-top: 0.5rem;
}
.l-section.-details .dot > li > ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.l-section.-details .dot > li > ul > li {
  position: relative;
}
.l-section.-details .dot > li > ul > li::before {
  display: inline-block;
  margin-right: 0.3125rem;
  font-size: inherit;
  color: inherit;
  content: "-";
}
.l-section.-details .dot + p {
  margin-top: 0.625rem;
}
.l-section.-details .callout {
  background: #FFF2B7;
  border-radius: 0.625rem;
  padding: 1rem 1.5rem;
  margin: 1.875rem 0;
}
.l-section.-details .callout .lead {
  font-weight: bold;
  margin: 0 0 0.4375rem;
  font-size: 1.25rem;
}
.l-section.-details .callout p {
  font-size: 1.125rem;
  line-height: 1.5555555556;
}

.l-section.-contact .btn-group {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
}
@media screen and (max-width: 680px) {
  .l-section.-contact .btn-group {
    flex-direction: column;
    align-items: center;
    gap: 3.2vw;
  }
}
.l-section.-contact .button {
  display: block;
  font-size: 1.125rem;
  letter-spacing: 0.04em;
  font-weight: bold;
  color: #fff;
  text-decoration: none;
  width: 18.75rem;
  border-radius: 1.25rem;
  border: 0.25rem solid #fff;
  text-align: center;
  background-image: linear-gradient(to bottom, #fe8900 0%, #f85203 22.65%, #e10010 50%, #f85203 77.35%, #fe8900 100%);
  background-size: auto 200%;
  transition: background-position 0.5s;
  box-shadow: 0 0.375rem 0.25rem 0 rgba(0, 0, 0, 0.2);
  padding: 1.375rem 2.125rem 1.375rem 0.3125rem;
  box-sizing: border-box;
  position: relative;
}
.l-section.-contact .button::after {
  position: absolute;
  width: 1.5rem;
  height: 1.5rem;
  top: 50%;
  right: 1.4375rem;
  margin-top: -0.75rem;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24 12C24 5.37258 18.6274 0 12 0C5.37258 0 0 5.37258 0 12C0 18.6274 5.37258 24 12 24C18.6274 24 24 18.6274 24 12Z' fill='white'/%3E%3Cpath d='M18.1 11.936L8.448 17.979V5.893L18.1 11.936Z' fill='%23E10010'/%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.l-section.-contact .button:hover {
  background-position: bottom center;
}

.callout-box {
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 0.04em;
  text-align: center;
  border-width: 0.125rem 0;
  border-style: solid;
  border-color: #ccc;
  margin: 1.875rem 0 0;
  padding: 1.875rem 0;
}
.callout-box p {
  margin: 0;
}
.callout-box p a {
  color: #FE6500;
  text-decoration: underline;
}
.callout-box p a:hover {
  text-decoration: none;
}
@media screen and (max-width: 750px) {
  .callout-box {
    font-size: 1.25rem;
  }
}

.bg-yellow {
  background-image: linear-gradient(to right, #ffc824 0%, #fee62c 46.3%, #ffc824 100%);
  position: relative;
}
.bg-yellow::after {
  position: absolute;
  inset: 0;
  background-image: url("../img/bg-dots.png");
  background-size: 3rem 3rem;
  opacity: 0.4;
  content: "";
}
.bg-yellow > .inner {
  position: relative;
  z-index: 1;
}

.btn-orange {
  display: block;
  max-width: 39.375rem;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
  border: 0.25rem solid #fff;
  color: #fff;
  font-size: 1.75rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  border-radius: 1.25rem;
  background-image: linear-gradient(to bottom, #fe8900 0%, #f85203 22.65%, #e10010 50%, #f85203 77.35%, #fe8900 100%);
  background-size: auto 200%;
  transition: background-position 0.5s;
  padding: 1.6875rem 0.625rem;
  box-shadow: 0 0.375rem 0.25rem 0 rgba(0, 0, 0, 0.2);
  letter-spacing: 0.04em;
  position: relative;
}
@media screen and (max-width: 750px) {
  .btn-orange {
    font-size: 3.7333333333vw;
    max-width: 84vw;
    padding: 3.6vw 1.3333333333vw;
  }
}
.btn-orange::after {
  position: absolute;
  top: 50%;
  right: 1.75rem;
  width: 2rem;
  height: 2rem;
  margin-top: -1rem;
  background-image: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 16C0 12.8355 0.938384 9.74207 2.69649 7.11088C4.45459 4.4797 6.95345 2.42894 9.87706 1.21793C12.8007 0.0069325 16.0177 -0.309921 19.1214 0.307443C22.2251 0.924806 25.0761 2.44866 27.3137 4.6863C29.5513 6.92394 31.0752 9.77487 31.6926 12.8786C32.3099 15.9823 31.9931 19.1993 30.7821 22.1229C29.5711 25.0466 27.5203 27.5454 24.8891 29.3035C22.2579 31.0616 19.1645 32 16 32C11.7565 32 7.68687 30.3143 4.68629 27.3137C1.68571 24.3131 0 20.2435 0 16Z' fill='white'/%3E%3Cpath d='M22.3479 15.914L12.6959 23.957V7.87098L22.3479 15.914Z' fill='%23E10010'/%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
@media screen and (max-width: 750px) {
  .btn-orange::after {
    right: 3.7333333333vw;
    width: 4.2666666667vw;
    height: 4.2666666667vw;
    margin-top: -2.1333333333vw;
  }
}
.btn-orange.-anchor::after {
  transform: rotate(90deg);
}
.btn-orange:hover {
  background-position: bottom center;
  color: #fff;
  text-decoration: none;
}

.section-prize {
  margin-top: -1.25rem;
  position: relative;
}
.section-prize::after {
  position: absolute;
  top: 1.625rem;
  left: 0;
  background-image: url("../img/prize-confetti.png");
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 73.5rem;
  z-index: -1;
  content: "";
}
@media screen and (max-width: 750px) {
  .section-prize::after {
    top: 3.4666666667vw;
    height: 156.8vw;
  }
}
.section-prize .sarani-box {
  position: relative;
  z-index: 2;
}
.section-prize .sarani-box::after {
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  top: 0.9375rem;
  left: 0;
  background: #fff;
  clip-path: polygon(0 0, 100% 0, 100% 80%, 52% 100%, 0 80%);
  content: "";
}
@media screen and (max-width: 750px) {
  .section-prize .sarani-box::after {
    top: 2vw;
  }
}
.section-prize .sarani-box > .wrapper {
  background: radial-gradient(ellipse at 50% 50%, #f01 0%, #e00010 42.9%, #c30209 100%);
  text-align: center;
  padding: 2.5rem 1.25rem 4.5rem;
  clip-path: polygon(0 0, 100% 0, 100% 80%, 52% 100%, 0 80%);
}
@media screen and (max-width: 750px) {
  .section-prize .sarani-box > .wrapper {
    padding: 5.3333333333vw 2.6666666667vw 9.6vw;
  }
}
.section-prize .sarani-box > .wrapper > .heading {
  width: 43.90625rem;
  margin: -8.125rem auto -0.625rem;
  z-index: 1;
}
@media screen and (max-width: 750px) {
  .section-prize .sarani-box > .wrapper > .heading {
    width: 93.6666666667vw;
    margin: -16vw auto -1.3333333333vw;
  }
}
.section-prize .sarani-box .title {
  width: 16.25rem;
  margin: 0 auto 0.4375rem;
}
@media screen and (max-width: 750px) {
  .section-prize .sarani-box .title {
    width: 34.6666666667vw;
    margin-bottom: 0.9333333333vw;
  }
}
.section-prize .sarani-box .anchor {
  color: #fff;
  font-size: 2.5rem;
  font-weight: bold;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 750px) {
  .section-prize .sarani-box .anchor {
    font-size: 5.3333333333vw;
  }
}
.section-prize .sarani-box .anchor > a {
  color: currentColor;
  font-size: 2.25rem;
  letter-spacing: 0.04em;
  text-decoration: underline;
  text-underline-offset: 0.8125rem;
  display: inline-block;
  margin-right: 0.625rem;
}
@media screen and (max-width: 750px) {
  .section-prize .sarani-box .anchor > a {
    font-size: 4.8vw;
    margin-right: 1.3333333333vw;
  }
}
.section-prize .sarani-box .anchor > a::after {
  display: inline-block;
  margin-left: 0.1875rem;
  vertical-align: -0.25rem;
  width: 2.1875rem;
  height: 2.125rem;
  background-image: url("data:image/svg+xml,%3Csvg width='35' height='34' viewBox='0 0 35 34' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.5 -1.79559e-06C22.0747 -0.0654569 26.4882 1.68864 29.7699 4.87658C33.0516 8.06451 34.9329 12.4253 35 17C34.9329 21.5747 33.0516 25.9355 29.7699 29.1234C26.4882 32.3114 22.0747 34.0655 17.5 34C12.9253 34.0655 8.51181 32.3114 5.2301 29.1234C1.9484 25.9355 0.0671456 21.5747 0 17C0.0671456 12.4253 1.9484 8.06451 5.2301 4.87658C8.51181 1.68864 12.9253 -0.0654569 17.5 -1.79559e-06Z' fill='white'/%3E%3Cpath d='M17.928 24.069L9.092 13.469H26.764L17.928 24.069Z' fill='%23E10010'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}
@media screen and (max-width: 750px) {
  .section-prize .sarani-box .anchor > a::after {
    margin-left: 0.4vw;
    vertical-align: -0.5333333333vw;
    width: 4.6666666667vw;
    height: 4.5333333333vw;
  }
}
.section-prize .prize-box {
  padding: 0.5rem 1.3125rem 0;
  position: relative;
  z-index: 1;
  margin-top: -1.25rem;
}
.section-prize .prize-box > .box {
  background: #fff;
  border-radius: 1.25rem;
  box-shadow: 0 0 1.25rem 0 rgba(0, 0, 0, 0.2);
  padding: 1.625rem 1.625rem 2.75rem;
}
.section-prize .prize-box .list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.section-prize .prize-box .list li {
  border-bottom: 0.1875rem solid #DBCAA1;
  padding: 1.3125rem 0;
}
.section-prize .prize-box .list li:first-child {
  padding-top: 0;
}
.section-prize .prize-box .note {
  list-style: none;
  margin: 0 0 2.5rem;
  padding: 1rem 0 0;
}
.section-prize .prize-box .note li {
  font-size: 1.125rem;
  letter-spacing: 0.04em;
  line-height: 1.5555555556;
  padding-left: 1.3em;
  position: relative;
}
.section-prize .prize-box .note li::before {
  position: absolute;
  top: 0;
  left: 0;
  font-size: inherit;
  color: inherit;
  content: "※";
}
.section-prize .prize-box .note li + li {
  margin-top: 0.625rem;
}
.section-prize .prize-box .note li a {
  color: #FE6500;
  text-decoration: underline;
}
.section-prize .prize-box .note li a:hover {
  text-decoration: none;
}

.section-sns {
  padding: 3.125rem 1.25rem 2.375rem;
  background-color: #FE6500;
  background-image: url("../img/bg-sns.png");
  background-size: 46.875rem auto;
  background-repeat: no-repeat;
  background-blend-mode: soft-light;
}
.section-sns .heading {
  width: 20.0625rem;
  margin: 0 auto;
}
.section-sns .sns_box {
  display: flex;
  justify-content: center;
  gap: 2.5rem;
  list-style: none;
  margin: 1.25rem 0 0;
  padding: 0;
}
.section-sns .sns_box li {
  width: 3.75rem;
}

.policy-link {
  display: block;
  text-decoration: none;
  text-align: center;
  color: #fff;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1;
  background: #FE6500;
  padding: 1.375rem;
  margin: 0 0 4rem;
}
.policy-link::after {
  display: inline-block;
  vertical-align: -0.125rem;
  margin-left: 0.625rem;
  width: 1.5rem;
  height: 1.125rem;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='18' viewBox='0 0 24 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.5 2V11H21.5V2H6.5ZM4.5 0H23.5V13H4.5V0Z' fill='white'/%3E%3Cpath d='M1 3.74902V16.3379H17.625' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
}
.policy-link:hover {
  color: #fff;
  text-decoration: none;
}

/* CMS
------------------------------------------------------------- */
.peri {
  clip-path: polygon(0 15%, 100% 0, 100% 54%, 0 100%);
  background-color: rgb(0, 209, 199);
  color: #FFF;
  padding: 30px 0 0;
  height: 150px;
  margin-top: -160px;
}

.peri02 {
  clip-path: polygon(0 15%, 100% 0, 100% 54%, 0 100%);
  background: linear-gradient(90deg, transparent, #ff00ff 50%, #03e9f4 100%);
  margin-top: 0;
  padding: 30px 0 0;
  height: 157px;
  z-index: 0;
}

@media (max-width: 570px) {
  .peri {
    clip-path: polygon(0 15%, 100% 0, 100% 54%, 0 100%);
    color: #FFF;
    padding: 20px 0 0;
    height: 100px;
    margin-top: -110px;
  }
  .peri02 {
    clip-path: polygon(0 15%, 100% 0, 100% 54%, 0 100%);
    margin-top: 0;
    padding: 20px 0 0;
    height: 106px;
    z-index: 0;
  }
}
@media (max-width: 460px) {
  .peri {
    clip-path: polygon(0 15%, 100% 0, 100% 54%, 0 100%);
    color: #FFF;
    padding: 10px 0 0;
    height: 70px;
    margin-top: -80px;
  }
  .peri02 {
    clip-path: polygon(0 15%, 100% 0, 100% 54%, 0 100%);
    margin-top: 0;
    padding: 10px 0 0;
    height: 70px;
    z-index: 0;
  }
}
/* キャンペーン期間前 */
.btn-secondary {
  background-color: #eb5505;
  border: #ff9123 solid 4px;
  border-radius: 20px;
}

.campaign__container-floating-footer .campaign__entry-btn  {
  font-size: 20px;
  line-height: 1.8;
}

/* キャンペーン期間中 */
.btn-primary {
  background-color: #eb5505;
  border: #ff9123 solid 4px;
  border-radius: 20px 0;
}

.btn-primary:hover {
  background-color: #e35e51;
  border-color: #e35e51;
}

.btn-primary.disabled,
.btn-primary:disabled {
  background-color: #d11300;
  border-color: #d11300;
}

.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  background-color: #e35e51;
  border-color: #e35e51;
}

.campaign__container-floating-footer .campaign__entry-btn {
  font-size: 20px;
  line-height: 1.8;
}

/* entry_btn */
.campaign__container-floating-footer {
  position: sticky;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.7);
  padding: 0 0 0;
  z-index: 1;
  box-sizing: border-box;
}

.campaign__schedule {
  display: none;
}

.campaign__container-finish {
  background: rgba(0, 0, 0, 0.7);
  max-width: 750px;
  margin: 10px auto 0;
  position: fixed;
  bottom: 48px;
  padding: 10px 0;
  left: 0;
  right: 0;
  z-index: 999;
  box-sizing: border-box;
}

.campaign__container-finish .btn-primary {
  background-color: #ccc;
  color: #000;
  border: #000 solid 4px;
  border-radius: 15px;
  width: 90%;
  margin: 0 auto;
  padding: 20px 0;
}

.btn-primary {
  color: #FFF;
  border-radius: 50px;
  max-width: 750px;
  width: 90%;
  margin: 7px auto 15px;
  padding: 20px 0;
  box-sizing: border-box;
  font-size: 18px;
  border-bottom: 5px solid rgb(255, 255, 255);
  border-right: 4px solid rgb(255, 255, 255);
  border-top: none;
  border-left: none;
  background-color: #eb5505;
}

#ft_btn {
  background: rgba(0, 0, 0, 0.7);
  text-align: center;
  color: #fff;
  max-width: 750px;
  margin: 0 auto 0;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 999;
  box-sizing: border-box;
  font-size: 12px;
}

#ft_btn p {
  font-size: 120%;
  margin: 7px 0 2px;
}

@media screen and (max-width: 460px) {
  .arw_box div {
    font-size: 80%;
  }
  .arw_box02 {
    font-size: 70%;
  }
  .btn_link {
    font-size: 0.8rem;
  }
  .btn_link::after {
    top: 2px;
    right: 35px;
  }
}
.js-time_limited {
  display: none;
}

.js-time_limited_fire {
  display: block;
}

.t_info {
  color: #FFF;
  font-weight: bold;
  background: #eb5505;
  text-align: center;
  padding: 10px 0;
  margin: 10px auto;
}