@charset "UTF-8";
/*! 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;
}
@media (max-width: 600px) {
  html {
    font-size: 2.7777777778vw;
  }
}

body {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #0F2343;
  line-height: 1.5;
}

a {
  color: #EA5505;
  font-weight: bold;
}
a:hover {
  text-decoration: none;
}
a img {
  transition: opacity 0.3s;
}
a img:hover {
  opacity: 0.7;
}

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

/*------------------------------------
  Animation
------------------------------------*/
[data-aos=fade-in] {
  opacity: 0;
  transition-property: transform, opacity;
}
[data-aos=fade-in].aos-animate {
  opacity: 1;
}

/*------------------------------------
  Components
------------------------------------*/
.l-section {
  padding: 4.6875rem 1.875rem;
}
@media (max-width: 600px) {
  .l-section {
    padding: 3.75rem 1.25rem;
  }
}
.l-section.-blue {
  background-image: radial-gradient(#4ACCD2 16%, transparent 16%), radial-gradient(#4ACCD2 16%, transparent 16%);
  background-position: 0 0, 1.75rem 1.75rem;
  background-size: 3.625rem 3.625rem;
  background-color: #21C1C7;
}
.l-section.-yellow {
  background-image: linear-gradient(-45deg, #fff366 23.53%, #ffee00 23.53%, #ffee00 50%, #fff366 50%, #fff366 73.53%, #ffee00 73.53%, #ffee00 100%);
  background-size: 7.5625rem 7.5625rem;
}
.l-section.-first {
  margin-top: -3.625rem;
}
@media (max-width: 600px) {
  .l-section.-first {
    margin-top: -3.125rem;
  }
}

.box-a > .heading {
  margin: 0;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2.25rem;
  text-align: center;
  color: #fff;
  background: #0F2343;
  padding: 1.0625rem 0.625rem 0.5625rem;
  border-radius: 1.25rem 1.25rem 0 0;
}
@media (max-width: 600px) {
  .box-a > .heading {
    font-size: 1.875rem;
  }
}
.box-a > .body {
  background: #fff;
  border: 0.375rem solid #0F2343;
  border-radius: 0 0 1.25rem 1.25rem;
  padding: 2.0625rem;
}

.box-b {
  position: relative;
  background: rgba(255, 255, 255, 0.8);
  border-radius: 1.25rem;
  padding: 5rem 2.5rem 3.125rem;
}
.box-b .heading {
  position: absolute;
  top: -2.125rem;
  left: 50%;
  transform: translateX(-50%);
  width: 28.75rem;
  margin: 0;
  padding: 0.75rem 0.75rem 0.6875rem;
  text-align: center;
  background: #0F2343;
  color: #fff;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.875rem;
  box-sizing: border-box;
}
@media (max-width: 600px) {
  .box-b .heading {
    font-size: 1.5rem;
    width: 21.25rem;
  }
}
.box-b .heading::after {
  position: absolute;
  bottom: -0.8125rem;
  left: 50%;
  margin-left: -0.625rem;
  border-style: solid;
  border-width: 14px 10px 0 10px;
  border-color: #0F2343 transparent transparent transparent;
  content: "";
}
.box-b + .box-b {
  margin-top: 5.875rem;
}

.btn-orange {
  display: block;
  background: #EA5505;
  color: #fff;
  font-size: 2rem;
  text-align: center;
  text-decoration: none;
  border-radius: 0.75rem;
  padding: 1.25rem;
  box-sizing: border-box;
  box-shadow: 0 0.6875rem #9A3804;
  position: relative;
}
.btn-orange:hover {
  color: #fff !important;
}
@media (max-width: 600px) {
  .btn-orange {
    font-size: 1.625rem;
  }
}
.btn-orange::after {
  position: absolute;
  top: 50%;
  right: 1.875rem;
  margin-top: -0.9375rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cpath d='M15,0A15,15,0,1,1,0,15,15,15,0,0,1,15,0' fill='%23fff'/%3E%3Cpath d='M44.438,35l4.983,4.983-4.983,4.983' transform='translate(-30.93 -24.983)' fill='none' stroke='%23ea5505' stroke-linecap='square' stroke-miterlimit='20' stroke-width='4'/%3E%3C/svg%3E%0A");
  background-size: 1.875rem 1.875rem;
  background-repeat: no-repeat;
  width: 1.875rem;
  height: 1.875rem;
  content: "";
}
@media (max-width: 600px) {
  .btn-orange::after {
    right: 1.25rem;
    margin-top: -0.6875rem;
    background-size: 1.625rem 1.625rem;
    width: 1.625rem;
    height: 1.625rem;
  }
}
.btn-orange:active {
  box-shadow: none;
  transform: translateY(0.6875rem);
}

.btn-round {
  display: block;
  background: #EA5505;
  color: #fff;
  font-size: 1.25rem;
  text-align: center;
  text-decoration: none;
  letter-spacing: -0.03rem;
  transform: rotate(0.05deg);
  border-radius: 50vh;
  padding: 1.25rem;
  box-sizing: border-box;
  position: relative;
  width: 100%;
  max-width: 37rem;
  margin: 0 auto;
}
.btn-round:hover {
  color: #fff !important;
  opacity: 0.8;
}
@media (max-width: 600px) {
  .btn-round {
    font-size: 1.125rem;
  }
}
.btn-round::after {
  position: absolute;
  top: 50%;
  right: 1.875rem;
  margin-top: -0.9375rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cpath d='M15,0A15,15,0,1,1,0,15,15,15,0,0,1,15,0' fill='%23fff'/%3E%3Cpath d='M44.438,35l4.983,4.983-4.983,4.983' transform='translate(-30.93 -24.983)' fill='none' stroke='%23ea5505' stroke-linecap='square' stroke-miterlimit='20' stroke-width='4'/%3E%3C/svg%3E%0A");
  background-size: 1.875rem 1.875rem;
  background-repeat: no-repeat;
  width: 1.875rem;
  height: 1.875rem;
  content: "";
}
@media (max-width: 600px) {
  .btn-round::after {
    right: 1.25rem;
    margin-top: -0.6875rem;
    background-size: 1.625rem 1.625rem;
    width: 1.625rem;
    height: 1.625rem;
  }
}

.btn-detail {
  display: block;
  background: #1B7FE6;
  color: #fff;
  font-size: 1.375rem;
  text-align: center;
  text-decoration: none;
  transform: rotate(0.05deg);
  border-radius: 50vh;
  padding: 0.875rem;
  box-sizing: border-box;
  position: relative;
  width: 100%;
  max-width: 28rem;
  margin: 0 auto;
}
.btn-detail:hover {
  color: #fff !important;
  opacity: 0.8;
}
@media (max-width: 600px) {
  .btn-detail {
    font-size: 1.125rem;
    max-width: 26rem;
  }
}
.btn-detail::after {
  position: absolute;
  top: 50%;
  right: 10px;
  width: 10px;
  height: 10px;
  margin: -8px 22px 0 0;
  border-bottom: 3px solid;
  border-right: 3px solid;
  transform: rotate(45deg);
  content: "";
}
@media (max-width: 600px) {
  .btn-detail::after {
    right: 6px;
    width: 6px;
    height: 6px;
    margin: -6px 22px 0 0;
    border-bottom: 2px solid;
    border-right: 2px solid;
  }
}

.text-notes {
  transform: rotate(0.05deg);
  position: relative;
}
.text-notes > a {
  color: #0F2343;
  font-size: 0.875rem;
  text-decoration: underline;
  position: relative;
}
.text-notes > a:hover {
  text-decoration: none;
}
.text-notes > a::after {
  position: absolute;
  top: 50%;
  right: -1rem;
  margin-top: -0.40625rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17.368' height='17.367' viewBox='0 0 17.368 17.367'%3E%3Cg transform='translate(1 1.414)'%3E%3Cpath d='M16.961,14.815V19.8A1.661,1.661,0,0,1,15.3,21.461H6.161A1.661,1.661,0,0,1,4.5,19.8V10.661A1.661,1.661,0,0,1,6.161,9h4.984' transform='translate(-4.5 -6.508)' fill='none' stroke='%230F2343' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3Cpath d='M22.5,4.5h4.984V9.484' transform='translate(-12.531 -4.5)' fill='none' stroke='%230F2343' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3Cpath d='M15,13.638,24.138,4.5' transform='translate(-9.185 -4.5)' fill='none' stroke='%230F2343' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: 0.875rem 0.875rem;
  width: 0.875rem;
  height: 0.875rem;
  content: "";
}
@media (max-width: 720px) {
  .text-notes > a::after {
    position: static;
    display: inline-block;
    margin-left: 0.3125rem;
    margin-top: -0.25rem;
    vertical-align: middle;
  }
}
@media (max-width: 600px) {
  .text-notes {
    text-align: left;
  }
}

.head-notes {
  font-size: 0.875rem;
  transform: rotate(0.05deg);
}

/*------------------------------------
  Original layout
------------------------------------*/
#inbox {
  max-width: 750px;
  margin: 0 auto;
}

.audience-box {
  margin-bottom: 3.125rem;
}
.audience-box .heading-ribbon {
  position: relative;
  display: block;
  height: 60px;
  line-height: 60px;
  padding: 0 1rem;
  background-color: #1B7FE6;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.05rem;
  text-align: center;
  margin: 1.5625rem 1.25rem;
}
.audience-box .heading-ribbon::before, .audience-box .heading-ribbon::after {
  position: absolute;
  top: 0;
  width: 0px;
  height: 0px;
  border-color: #1B7FE6 transparent;
  border-style: solid;
  content: "";
}
.audience-box .heading-ribbon::before {
  left: -15px;
  border-width: 30px 0px 30px 15px;
}
.audience-box .heading-ribbon::after {
  right: -15px;
  border-width: 30px 15px 30px 0px;
}
@media (max-width: 600px) {
  .audience-box .heading-ribbon {
    height: 40px;
    line-height: 40px;
    font-size: 1.625rem;
  }
  .audience-box .heading-ribbon::before {
    border-width: 20px 0px 20px 15px;
  }
  .audience-box .heading-ribbon::after {
    border-width: 20px 15px 20px 0px;
  }
}
.audience-box .lead {
  text-align: center;
  color: #fff;
  background: #0F2343;
  border-radius: 0.375rem;
  margin: 2.5rem 0 0.875rem;
  padding: 0.4375rem;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.625rem;
  font-weight: bold;
}
@media (max-width: 600px) {
  .audience-box .lead {
    font-size: 1.5rem;
  }
}
.audience-box .feature {
  list-style: none;
  margin: 0;
  padding: 0;
  counter-reset: feature-list;
}
.audience-box .feature li {
  font-size: 1.5rem;
  line-height: 1.5;
  padding-left: 2.5rem;
  position: relative;
}
@media (max-width: 600px) {
  .audience-box .feature li {
    font-size: 1.25rem;
    padding-left: 2.1875rem;
  }
}
.audience-box .feature li::before {
  position: absolute;
  top: 0.3125rem;
  left: 0;
  width: 1.75rem;
  height: 1.75rem;
  background: #0F2343;
  color: #fff;
  font-size: 1.125rem;
  border-radius: 50%;
  line-height: 1.75rem;
  text-align: center;
  counter-increment: feature-list;
  content: counter(feature-list);
}
@media (max-width: 600px) {
  .audience-box .feature li::before {
    width: 1.5rem;
    height: 1.5rem;
    line-height: 1.5rem;
  }
}
.audience-box .feature li + li {
  margin-top: 0.9375rem;
}
.audience-box .condition {
  list-style: none;
  margin: 0;
  padding: 0;
}
.audience-box .condition li {
  font-size: 1.5rem;
  line-height: 1.5;
  padding-left: 1.375rem;
  position: relative;
}
@media (max-width: 600px) {
  .audience-box .condition li {
    font-size: 1.25rem;
    padding-left: 1.25rem;
  }
}
.audience-box .condition li::before {
  position: absolute;
  top: 1rem;
  left: 0;
  width: 0.625rem;
  height: 0.625rem;
  background: #0F2343;
  border-radius: 50%;
  content: "";
}
@media (max-width: 600px) {
  .audience-box .condition li::before {
    width: 0.5rem;
    height: 0.5rem;
    top: 0.875rem;
  }
}
.audience-box .condition li + li {
  margin-top: 0.75rem;
}
.audience-box .benefit {
  margin: 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 12.1875rem 0.375rem 1fr;
  grid-template-columns: 12.1875rem 1fr;
  gap: 0.5rem 0.375rem;
}
@media (max-width: 600px) {
  .audience-box .benefit {
    -ms-grid-columns: 11.5625rem 1fr;
    grid-template-columns: 11.5625rem 1fr;
  }
}
.audience-box .benefit dt, .audience-box .benefit dd {
  font-size: 1.5rem;
  line-height: 1.5;
  margin: 0;
}
@media (max-width: 600px) {
  .audience-box .benefit dt, .audience-box .benefit dd {
    font-size: 1.25rem;
  }
}

.payment-box {
  margin: 3.125rem 0 3.125rem;
}
.payment-box .platform {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 0 5rem;
  position: relative;
}
@media (max-width: 600px) {
  .payment-box .platform {
    gap: 0 3.125rem;
  }
}
.payment-box .platform::after {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -0.09375rem;
  height: 100%;
  border-left: 0.1875rem dashed #666666;
  content: "";
}
.payment-box .platform .name {
  font-size: 1.5rem;
  color: #1B7FE6;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin-bottom: 1.25rem;
}
@media (min-width: 601px) and (max-width: 720px) {
  .payment-box .platform .name {
    font-size: 3.056vw;
  }
}
@media (max-width: 600px) {
  .payment-box .platform .name {
    font-size: 1.125rem;
  }
}
.payment-box .platform .name::before, .payment-box .platform .name::after {
  border-top: 0.25rem solid;
  margin: 0 0.9375rem 0 0;
  flex: 1 0 0.9375rem;
  content: "";
}
@media (min-width: 601px) and (max-width: 720px) {
  .payment-box .platform .name::before, .payment-box .platform .name::after {
    margin: 0 1.9vw 0 0;
    flex: 1 0 1.9vw;
  }
}
@media (max-width: 600px) {
  .payment-box .platform .name::before, .payment-box .platform .name::after {
    border-top-width: 0.1875rem;
    margin: 0 0.625rem 0 0;
    flex: 1 0 0.625rem;
  }
}
.payment-box .platform .name::after {
  margin: 0 0 0 0.9375rem;
}
@media (min-width: 601px) and (max-width: 720px) {
  .payment-box .platform .name::after {
    margin: 0 0 0 1.9vw;
  }
}
@media (max-width: 600px) {
  .payment-box .platform .name::after {
    margin: 0 0 0 0.625rem;
  }
}
.payment-box .platform .name.-green {
  color: #00B119;
}

.recommend-apps {
  margin-top: 2.125rem;
}
.recommend-apps .icons {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: calc(33.3333333333% - 0.9375rem) 1.875rem calc(33.3333333333% - 0.9375rem) 1.875rem calc(33.3333333333% - 0.9375rem);
  grid-template-columns: repeat(3, calc(33.3333333333% - 0.9375rem));
  justify-content: space-around;
  gap: 1.875rem;
}
.recommend-apps .icons li {
  text-align: center;
}
.recommend-apps .icons li img {
  border-radius: 1.25rem;
}
.recommend-apps .icons-6 {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: calc(16.6666666667% - 0.375rem) 0.9375rem calc(16.6666666667% - 0.375rem) 0.9375rem calc(16.6666666667% - 0.375rem) 0.9375rem calc(16.6666666667% - 0.375rem) 0.9375rem calc(16.6666666667% - 0.375rem) 0.9375rem calc(16.6666666667% - 0.375rem);
  grid-template-columns: repeat(6, calc(16.6666666667% - 0.375rem));
  justify-content: space-around;
  gap: 0.9375rem;
}
.recommend-apps .icons-6 li {
  text-align: center;
}
.recommend-apps .icons-6 li img {
  border-radius: 1.25rem;
}

.other-campaigns .banner {
  list-style: none;
  padding: 0;
  margin: 0;
}
.other-campaigns .banner li + li {
  margin-top: 1.875rem;
}

.note-box .list, .note-box .extra {
  list-style: none;
  margin: 0;
  padding: 0;
}
.note-box .list li, .note-box .extra li {
  font-size: 1.125rem;
  line-height: 1.7777777778;
  transform: rotate(0.05deg);
  position: relative;
}
.note-box .list li {
  padding-left: 1rem;
  transform: rotate(0.05deg);
}
.note-box .list li::before {
  position: absolute;
  top: 0.75rem;
  left: 0;
  width: 0.5rem;
  height: 0.5rem;
  background: #0F2343;
  border-radius: 50%;
  content: "";
}
.note-box .list li + li {
  margin-top: 0.375rem;
}
.note-box .extra {
  margin-top: 0.625rem;
}
.note-box .extra li {
  padding-left: 1.375rem;
}
.note-box .extra li::before {
  position: absolute;
  top: 0;
  left: 0;
  font-size: inherit;
  color: inherit;
  content: "※";
}

.contact-box {
  margin-top: 3.75rem;
}
.contact-box .wrapper {
  display: flex;
  justify-content: center;
  gap: 0 1.125rem;
}
@media (max-width: 600px) {
  .contact-box .wrapper {
    gap: 0 0.9375rem;
  }
}
.contact-box .body .txt {
  margin: 0;
  padding: 0;
  font-size: 1.125rem;
  line-height: 1.7777777778;
  transform: rotate(0.05deg);
}
.contact-box .body .txt.-center {
  text-align: center;
}
.contact-box .button {
  display: block;
  width: 25rem;
  font-size: 1.25rem;
  text-align: center;
  color: #fff;
  background: #EB5505;
  border-radius: 50vh;
  text-decoration: none;
  margin: 0.875rem auto;
  padding: 1rem 2.125rem 1rem 1rem;
  box-sizing: border-box;
  position: relative;
  transition: opacity 0.3s;
  transform: rotate(0.05deg);
}
@media (max-width: 720px) {
  .contact-box .button {
    font-size: 2.9vw;
  }
}
.contact-box .button:hover {
  opacity: 0.65;
}
.contact-box .button::after {
  position: absolute;
  top: 50%;
  right: 1.6875rem;
  margin-top: -0.5625rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17.368' height='17.367' viewBox='0 0 17.368 17.367'%3E%3Cg transform='translate(1 1.414)'%3E%3Cpath d='M16.961,14.815V19.8A1.661,1.661,0,0,1,15.3,21.461H6.161A1.661,1.661,0,0,1,4.5,19.8V10.661A1.661,1.661,0,0,1,6.161,9h4.984' transform='translate(-4.5 -6.508)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3Cpath d='M22.5,4.5h4.984V9.484' transform='translate(-12.531 -4.5)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3Cpath d='M15,13.638,24.138,4.5' transform='translate(-9.185 -4.5)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: 1.125rem 1.125rem;
  width: 1.125rem;
  height: 1.125rem;
  content: "";
}
@media (max-width: 720px) {
  .contact-box .button::after {
    right: 2.778vw;
  }
}
.contact-box .button.-pink {
  background: #EA0183;
}

.credit-box {
  margin-top: 4.375rem;
  margin-bottom: 5rem;
}
.credit-box.-sub {
  margin: 1.875rem 0 0;
}
.credit-box.-sub .content {
  color: #0F2343;
  font-weight: 500;
  line-height: 1.5;
}
.credit-box .heading {
  margin: 0 0 1.4375rem;
  text-align: center;
}
.credit-box .content {
  margin: 0;
  font-size: 0.875rem;
  color: #fff;
  line-height: 1.7142857143;
  transform: rotate(0.05deg);
}

.floating-bar {
  position: fixed;
  bottom: 0;
  z-index: 10;
  background: rgba(255, 255, 255, 0.6);
  padding: 0.625rem 0.625rem 0.9375rem;
  box-sizing: border-box;
  max-width: 46.875rem;
  width: 100%;
  margin: 0 -1.875rem;
}
@media (max-width: 600px) {
  .floating-bar {
    margin: 0 -1.25rem;
  }
}
.floating-bar .btn-orange {
  width: 33.75rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 0.875rem;
  padding-bottom: 0.6875rem;
  box-shadow: 0 0.4375rem #9A3804;
}
.floating-bar .btn-orange:hover {
  color: #fff;
}
@media (max-width: 600px) {
  .floating-bar .btn-orange {
    width: 25rem;
  }
}

/* complete */
.complete .box-f {
  margin: -1rem auto 3.125rem;
}
@media (max-width: 720px) {
  .complete .box-f {
    margin: -1rem auto 2.5rem;
  }
}
.complete .txt {
  position: relative;
  color: #EA5505;
  font-size: 1.625rem;
  text-align: center;
  /*&::before {
    position: absolute;
    top: 50%;
    left: 11.5rem;
    margin-top: rem(-9);
    background-image: url("https://kantan-cpn.auone.jp/sp/campaign/202403_dcbshop/img/img-slash-l.svg");
    background-repeat: no-repeat;
    background-size: rem(26) rem(22);
    width: rem(26);
    height: rem(22);
    content: '';
    @media (max-width: 720px) {
      left: 7.2rem;
    }
  }
  &::after {
    position: absolute;
    top: 50%;
    right: 11.8rem;
    margin-top: rem(-9);
    background-image: url("https://kantan-cpn.auone.jp/sp/campaign/202403_dcbshop/img/img-slash-r.svg");
    background-repeat: no-repeat;
    background-size: rem(26) rem(22);
    width: rem(26);
    height: rem(22);
    content: '';
    @media (max-width: 720px) {
      right: 7.2rem;
    }
  }*/
}
@media (max-width: 720px) {
  .complete .txt {
    font-size: 1.375rem;
  }
}
.complete .button {
  display: block;
  width: 37.5rem;
  font-size: 1.375rem;
  text-align: center;
  color: #fff;
  background: #EB5505;
  border-radius: 50vh;
  border-bottom: 4px solid #9A3804;
  text-decoration: none;
  margin: 0.875rem auto;
  padding: 1.125rem 1.625rem 1.125rem 0.875rem;
  box-sizing: border-box;
  position: relative;
  transition: opacity 0.3s;
}
@media (max-width: 720px) {
  .complete .button {
    width: 90%;
    font-size: 3.4vw;
  }
}
.complete .button:hover {
  opacity: 0.65;
  transition: opacity 0.2s;
}
.complete .button::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  width: 10px;
  height: 10px;
  margin: -6px 30px 0 0;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: rotate(45deg);
}
@media (max-width: 720px) {
  .complete .button::after {
    right: 2vw;
    width: 6px;
    width: 6px;
    height: 6px;
    margin: -4px 10px 0 0;
  }
}
.complete .effect {
  overflow: hidden;
}
.complete .effect::before {
  position: absolute;
  content: "";
  display: inline-block;
  top: -180px;
  left: 0;
  width: 30px;
  height: 100%;
  background-color: #fff;
  animation: shiny-btn 5s ease-in-out infinite;
  -ms-animation: shiny-btn 5s ease-in-out infinite;
  -webkit-animation: shiny-btn 5s ease-in-out infinite;
}
@keyframes shiny-btn {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

/*------------------------------------
  Gampla layout
------------------------------------*/
/* header */
header {
  padding: 0;
}

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

/* エントリーはこちら */
.btn-primary {
  font-family: "M PLUS 1p", sans-serif !important;
  font-size: 20px !important;
  background: #EA5505 !important;
  padding: 1em 0 !important;
  box-shadow: 0 0.4375rem #9A3804;
  transform: rotate(0.05deg);
}
.btn-primary:hover {
  color: #fff;
}
@media (max-width: 600px) {
  .btn-primary {
    font-size: 16px !important;
  }
}

.btn-secondary {
  font-family: "M PLUS 1p", sans-serif !important;
  font-size: 18px !important;
  padding: 0.8em 0 !important;
  box-shadow: 0 0.4375rem #666;
  transform: rotate(0.05deg);
}

/* 下書き時に出現する.fabを非表示にする */
.fab {
  display: none;
}

/* 時限設定 */
.js-time_limited {
  display: none;
}

.js-time_limited_fire {
  display: block;
}