*,
::before,
::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
}

body {
  margin: 0;
}

main {
  display: block;
}

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  margin: 0;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

pre {
  font-family: monospace, monospace;
  font-size: inherit;
}

address {
  font-style: inherit;
}

a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: inherit;
}

small {
  font-size: 100%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img,
embed,
object,
iframe {
  vertical-align: bottom;
}

button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  text-align: inherit;
}

[type=checkbox] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  appearance: checkbox;
}

[type=radio] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
  appearance: radio;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

button[disabled],
[type=button][disabled],
[type=reset][disabled],
[type=submit][disabled] {
  cursor: default;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

select::-ms-expand {
  display: none;
}

option {
  padding: 0;
}

fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

label[for] {
  cursor: pointer;
}

details {
  display: block;
}

summary {
  display: list-item;
}

[contenteditable] {
  outline: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

@media (max-width: 750px) {
  html {
    font-size: 1.3333333333vw;
  }
}
@media (min-width: 751px) {
  html {
    font-size: 62.5%;
  }
}
@media (max-width: 767px) {
  html {
    scroll-padding-top: 0;
  }
}
@media (min-width: 768px) {
  html {
    scroll-padding-top: 8rem;
  }
}
body {
  position: relative;
  isolation: isolate;
}

body::before,
body::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background-position: top;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 0;
  -webkit-transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1);
  transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: opacity;
}

@media screen and (max-width: 767px) {
  body::before,
  body::after {
    display: none;
  }
}
a.p_button {
  color: #00657E;
}

main h1, main h2, main h3, main h4, main h5 {
  font-weight: 400;
}

.p_button {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.p_button::after {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.p_button:hover {
  color: rgba(0, 101, 126, 0.5);
}

.p_button:hover::after {
  opacity: 0.5;
}

.common-aside-instagram[data-v-92bece86] {
  padding-top: 15.3333333333vw !important;
  padding-bottom: 16vw !important;
  margin: 0 !important;
}

@media screen and (min-width: 768px) {
  .common-aside-instagram[data-v-92bece86] {
    position: relative;
    padding: 11.5rem 0 12rem !important;
    margin: 0 !important;
    background: #fff;
  }
}
footer.common-footer {
  position: relative;
  z-index: 6;
}

body {
  background-color: #FFFFFF;
  background-image: url(/ignis_bp/contents/ig/beautytrip/assets/src/img/bg_pc.png);
  background-repeat: repeat;
  background-size: 144rem 166.9rem;
  background-position: center 3.7rem;
}
@media (max-width: 767px) {
  body {
    background-image: none;
  }
}

:where(.l-main, .l-header-item, .l-header-float) {
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #00657E;
  font-weight: 400;
  line-height: 2;
}

:where(.l-main, .l-header-item, .l-header-float) :where(a, button) {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

:where(.l-main, .l-header-item, .l-header-float) :where(a:hover, button:hover) {
  cursor: pointer;
}

:where(.l-main, .l-header-item, .l-header-float) :where(a) {
  display: inline-block;
}

:where(.l-main, .l-header-item, .l-header-float) :where(img) {
  display: block;
  height: auto;
  -o-object-fit: contain;
  object-fit: contain;
  width: 100%;
}

body.is-loading {
  overflow: hidden;
}

.j-open {
  cursor: pointer;
}

.l-main {
  contain: paint;
  position: relative;
  z-index: 5;
  max-width: 54rem;
  margin: 0 auto;
  background: #fff;
}

@media screen and (max-width: 767px) {
  .l-main {
    max-width: 100%;
  }
}
.c-marker {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(56%, transparent), color-stop(56%, #BCE3AE), color-stop(90%, #BCE3AE), color-stop(90%, transparent));
  background: linear-gradient(transparent 56%, #BCE3AE 56%, #BCE3AE 90%, transparent 90%);
}

.c-menu {
  position: absolute;
  top: 0;
  right: 0;
  width: 5.904rem;
  height: 5.904rem;
  padding: 0;
  border: none;
  background: #4C9A43;
  cursor: pointer;
}
@media (max-width: 767px) {
  .c-menu {
    width: 8.2rem;
    height: 8.2rem;
  }
}

.c-menu__bar {
  position: absolute;
  left: 1.296rem;
  width: 3.456rem;
  height: 0.144rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .c-menu__bar {
    left: 1.8rem;
    width: 4.8rem;
    height: 0.2rem;
  }
}

.c-menu__bar:nth-child(1) {
  top: 2.448rem;
}
@media (max-width: 767px) {
  .c-menu__bar:nth-child(1) {
    top: 3.4rem;
  }
}

.c-menu__bar:nth-child(2) {
  top: 3.6rem;
}
@media (max-width: 767px) {
  .c-menu__bar:nth-child(2) {
    top: 5rem;
  }
}

.p-hero {
  padding: 0 2.88rem 4.32rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-hero {
    padding: 0 4rem 6rem;
  }
}

.p-hero__visual {
  position: relative;
}

.p-hero__img {
  display: block;
  width: 100%;
  height: auto;
}

.p-hero__logo {
  position: absolute;
  top: 2.88rem;
  left: 2.88rem;
  width: 15.984rem;
  height: auto;
}
@media (max-width: 767px) {
  .p-hero__logo {
    top: 4rem;
    left: 4rem;
    width: 22.2rem;
  }
}

.p-hero__badge {
  position: absolute;
  top: 0;
  left: 36.144rem;
  width: 0;
  height: 0;
  -webkit-filter: drop-shadow(0 0.144rem 0.576rem rgba(0, 0, 0, 0.15));
          filter: drop-shadow(0 0.144rem 0.576rem rgba(0, 0, 0, 0.15));
}
@media (max-width: 767px) {
  .p-hero__badge {
    left: 50.2rem;
    -webkit-filter: drop-shadow(0 0.2rem 0.8rem rgba(0, 0, 0, 0.15));
            filter: drop-shadow(0 0.2rem 0.8rem rgba(0, 0, 0, 0.15));
  }
}

.p-hero__badgeHash {
  position: absolute;
  top: 4.572rem;
  left: 0;
  font-family: "Akshar", sans-serif;
  font-size: 2.592rem;
  font-weight: 500;
  line-height: 1.1;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-hero__badgeHash {
    top: 6.3rem;
    font-size: 3.6rem;
  }
}

.p-hero__badgeNum {
  position: absolute;
  top: 2.844rem;
  left: 2.16rem;
  font-family: "Outfit", sans-serif;
  font-size: 5.76rem;
  font-weight: 400;
  line-height: 1;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-hero__badgeNum {
    top: 4rem;
    left: 3rem;
    font-size: 8rem;
  }
}

.p-hero__badgeLine {
  position: absolute;
  top: 9.18rem;
  left: 0;
  width: 8.64rem;
  height: 0.144rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-hero__badgeLine {
    top: 12.8rem;
    width: 12rem;
    height: 0.2rem;
  }
}

.p-hero__badgePlace {
  position: absolute;
  top: 10.332rem;
  left: 7.272rem;
  width: 8.64rem;
  font-family: "Lexend Deca", sans-serif;
  font-size: 1.008rem;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.07em;
  color: #FFFFFF;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transform-origin: left top;
          transform-origin: left top;
}
@media (max-width: 767px) {
  .p-hero__badgePlace {
    top: 14.3rem;
    left: 10.1rem;
    width: 12rem;
    font-size: 1.4rem;
  }
}

.p-hero__badgePlaceSub {
  font-size: 0.864rem;
}
@media (max-width: 767px) {
  .p-hero__badgePlaceSub {
    font-size: 1.2rem;
  }
}

.p-hero__badgeFarm {
  position: absolute;
  top: 9.684rem;
  left: 2.592rem;
  width: 13.98rem;
  font-family: "Lexend Deca", sans-serif;
  font-size: 1.08rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.07em;
  white-space: nowrap;
  color: #FFFFFF;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transform-origin: left top;
          transform-origin: left top;
}
@media (max-width: 767px) {
  .p-hero__badgeFarm {
    top: 13.4rem;
    left: 3.6rem;
    width: 19.4rem;
    font-size: 1.5rem;
  }
}

.p-hero__character {
  position: absolute;
  top: 38.491rem;
  left: 31.536rem;
  width: 19.296rem;
  height: 29.376rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-hero__character {
    top: 53.5rem;
    left: 43.8rem;
    width: 26.8rem;
    height: 40.8rem;
  }
}

.p-hero__head {
  position: absolute;
  top: 65.131rem;
  left: 1.584rem;
  width: 44.928rem;
  -webkit-filter: drop-shadow(0 0.576rem 0.576rem rgba(0, 0, 0, 0.25));
          filter: drop-shadow(0 0.576rem 0.576rem rgba(0, 0, 0, 0.25));
}
@media (max-width: 767px) {
  .p-hero__head {
    top: 91.5rem;
    left: 2.2rem;
    width: 62.4rem;
    -webkit-filter: drop-shadow(0 0.8rem 0.8rem rgba(0, 0, 0, 0.25));
            filter: drop-shadow(0 0.8rem 0.8rem rgba(0, 0, 0, 0.25));
  }
}

.p-hero__lead {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-hero__lead {
    font-size: 2.8rem;
  }
}

.p-hero__title {
  margin-top: 1.08rem;
  font-family: "Zen Antique Soft", serif;
  font-size: 6.912rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  white-space: nowrap;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-hero__title {
    margin-top: 1.2rem;
    font-size: 9.6rem;
  }
}

.p-intro {
  position: relative;
  padding: 4.32rem 2.88rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-intro {
    padding: 6rem 4rem;
  }
}

.p-intro__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.8;
  text-align: center;
  color: #222222;
}
@media (max-width: 767px) {
  .p-intro__text {
    font-size: 3.6rem;
  }
}

.p-intro__text + .p-intro__text {
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-intro__text + .p-intro__text {
    margin-top: 4rem;
  }
}

.p-question {
  padding: 8.64rem 2.88rem 4.32rem;
  overflow: hidden;
  background: #F0F8EC;
}
@media (max-width: 767px) {
  .p-question {
    padding: 12rem 4rem 6rem;
  }
}

.p-question__character {
  display: block;
  width: 20.874rem;
  height: 22.32rem;
  margin: 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-question__character {
    width: 29rem;
    height: 31rem;
  }
}

.p-question__card {
  position: relative;
  margin-top: 5.76rem;
  padding: 2.88rem;
  border-radius: 1.152rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-question__card {
    margin-top: 8rem;
    padding: 4rem;
    border-radius: 1.6rem;
  }
}

.p-question__tail {
  position: absolute;
  top: -3.888rem;
  left: 2.88rem;
  width: 5.296rem;
  height: 6.129rem;
  background: #FFFFFF;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  -webkit-transform: rotate(27.46deg);
          transform: rotate(27.46deg);
}
@media (max-width: 767px) {
  .p-question__tail {
    top: -4rem;
    left: 5.6rem;
    width: 7.4rem;
    height: 8.5rem;
  }
}

.p-question__head {
  border-bottom: 0.144rem solid #4C9A43;
  padding-bottom: 1.44rem;
}
@media (max-width: 767px) {
  .p-question__head {
    border-bottom-width: 0.2rem;
    padding-bottom: 2rem;
  }
}

.p-question__speaker {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.864rem;
}
@media (max-width: 767px) {
  .p-question__speaker {
    gap: 1.2rem;
  }
}

.p-question__icon {
  width: 3.456rem;
  height: 3.456rem;
}
@media (max-width: 767px) {
  .p-question__icon {
    width: 4.8rem;
    height: 4.8rem;
  }
}

.p-question__name {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.4;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-question__name {
    font-size: 3.6rem;
  }
}

.p-question__text {
  margin-top: 2.304rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.04em;
  color: #222222;
}
@media (max-width: 767px) {
  .p-question__text {
    margin-top: 3.2rem;
    font-size: 2.8rem;
  }
}

.p-question__lead {
  margin-top: 2.304rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.304rem;
  font-weight: 500;
  line-height: 1.8;
  color: #222222;
}
@media (max-width: 767px) {
  .p-question__lead {
    margin-top: 3.2rem;
    font-size: 3.2rem;
  }
}

.p-question__small {
  font-size: 2.016rem;
  line-height: 2.0571;
}
@media (max-width: 767px) {
  .p-question__small {
    font-size: 2.8rem;
  }
}

.p-question__strong {
  font-size: 2.592rem;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .p-question__strong {
    font-size: 3.6rem;
  }
}

.p-answerer {
  padding: 5.76rem 3.6rem 8.64rem 3.456rem;
  background: #F0F8EC;
}
@media (max-width: 767px) {
  .p-answerer {
    padding: 8rem 5rem 12rem 4.8rem;
  }
}

.p-answerer__head {
  position: relative;
  height: 9.072rem;
}
@media (max-width: 767px) {
  .p-answerer__head {
    height: 12.6rem;
  }
}

.p-answerer__sub {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-align: center;
  color: #222222;
}
@media (max-width: 767px) {
  .p-answerer__sub {
    font-size: 3.6rem;
  }
}

.p-answerer__title {
  margin-top: 0.144rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.456rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.02em;
  text-align: center;
  color: #078409;
}
@media (max-width: 767px) {
  .p-answerer__title {
    margin-top: 0.2rem;
    font-size: 4.8rem;
  }
}

.p-answerer__deco {
  position: absolute;
  top: 3.312rem;
  width: 3.6rem;
  height: 6.472rem;
}
@media (max-width: 767px) {
  .p-answerer__deco {
    top: 4.6rem;
    width: 5rem;
    height: 9rem;
  }
}

.p-answerer__deco--left {
  left: 0.288rem;
}
@media (max-width: 767px) {
  .p-answerer__deco--left {
    left: 0.4rem;
  }
}

.p-answerer__deco--right {
  right: 0.288rem;
}
@media (max-width: 767px) {
  .p-answerer__deco--right {
    right: 0.4rem;
  }
}

.p-answerer__photos {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.p-answerer__photo {
  -o-object-fit: cover;
     object-fit: cover;
}

.p-answerer__photo--hayashi {
  width: 15.696rem;
  height: 23.04rem;
}
@media (max-width: 767px) {
  .p-answerer__photo--hayashi {
    width: 21.8rem;
    height: 32rem;
  }
}

.p-answerer__photo--kodaira {
  width: 15.84rem;
  height: 25.056rem;
}
@media (max-width: 767px) {
  .p-answerer__photo--kodaira {
    width: 22rem;
    height: 34.8rem;
  }
}

.p-answerer__photo--sato {
  width: 15.408rem;
  height: 23.472rem;
}
@media (max-width: 767px) {
  .p-answerer__photo--sato {
    width: 21.4rem;
    height: 32.6rem;
  }
}

.p-answerer__names {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2.88rem;
  margin-top: 0.432rem;
}
@media (max-width: 767px) {
  .p-answerer__names {
    gap: 4rem;
    margin-top: 0.6rem;
  }
}

.p-answerer__name {
  width: 12.96rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 500;
  line-height: 1.8;
  text-align: center;
  color: #222222;
}
@media (max-width: 767px) {
  .p-answerer__name {
    width: 18rem;
    font-size: 2.8rem;
  }
}

.p-answerer__text {
  margin-top: 2.88rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.304rem;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.05em;
  text-align: center;
  color: #222222;
}
@media (max-width: 767px) {
  .p-answerer__text {
    margin-top: 4rem;
    font-size: 3.2rem;
  }
}

.p-interview {
  padding: 8.64rem 2.88rem 0;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-interview {
    padding: 12.8rem 4rem 0;
  }
}

.p-interview__en {
  font-family: "Akshar", sans-serif;
  font-size: 2.88rem;
  font-weight: 500;
  line-height: 1.1;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-interview__en {
    font-size: 4rem;
  }
}

.p-interview__title {
  margin-top: 0.576rem;
  font-family: "Zen Antique Soft", serif;
  font-size: 4.32rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #222222;
}
@media (max-width: 767px) {
  .p-interview__title {
    margin-top: 1.8rem;
    font-size: 6rem;
  }
}

.p-interview__body {
  margin-top: 5.76rem;
}
@media (max-width: 767px) {
  .p-interview__body {
    margin-top: 8rem;
  }
}

.p-interview__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.44rem;
}
@media (max-width: 767px) {
  .p-interview__block {
    gap: 2rem;
  }
}

.p-interview__block--narrow {
  gap: 1.152rem;
}
@media (max-width: 767px) {
  .p-interview__block--narrow {
    gap: 1.6rem;
  }
}

.p-interview__block--top {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.p-interview__block + .p-interview__block {
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-interview__block + .p-interview__block {
    margin-top: 4rem;
  }
}

.p-interview__block + .p-interview__photo {
  margin-top: 4.32rem;
}
@media (max-width: 767px) {
  .p-interview__block + .p-interview__photo {
    margin-top: 6rem;
  }
}

.p-interview__photo + .p-interview__block {
  margin-top: 4.32rem;
}
@media (max-width: 767px) {
  .p-interview__photo + .p-interview__block {
    margin-top: 6rem;
  }
}

.p-interview__photo {
  display: block;
  width: 48.24rem;
  height: 28.8rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 767px) {
  .p-interview__photo {
    width: 67rem;
    height: 40rem;
  }
}

.p-interview__avatar {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 12.384rem;
  height: 15.696rem;
}
@media (max-width: 767px) {
  .p-interview__avatar {
    width: 17.2rem;
    height: 21.8rem;
  }
}

.p-interview__avatar--bitekiko {
  height: 17.568rem;
}
@media (max-width: 767px) {
  .p-interview__avatar--bitekiko {
    height: 24.4rem;
  }
}

.p-interview__face {
  display: block;
  width: 12.096rem;
  height: 13.392rem;
  margin: -0.576rem auto 0;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-interview__face {
    width: 16.8rem;
    height: 18.6rem;
    margin: -0.8rem auto 0;
  }
}

.p-interview__face--bitekiko {
  width: 10.368rem;
  height: 13.824rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .p-interview__face--bitekiko {
    width: 14.4rem;
    height: 19.2rem;
  }
}

.p-interview__name {
  margin-top: 0.144rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.8;
  text-align: center;
  color: #222222;
}
@media (max-width: 767px) {
  .p-interview__name {
    margin-top: 0.2rem;
    font-size: 2.4rem;
  }
}

.p-interview__name--bitekiko {
  margin-top: 0.576rem;
}
@media (max-width: 767px) {
  .p-interview__name--bitekiko {
    margin-top: 0.8rem;
  }
}

.p-interview__balloon {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  padding: 1.44rem 2.016rem;
  border: 0.072rem solid #222222;
  border-radius: 1.44rem;
}
@media (max-width: 767px) {
  .p-interview__balloon {
    padding: 1.8rem 2.6rem;
    border-width: 0.1rem;
    border-radius: 2rem;
  }
}

.p-interview__balloon--left {
  border-top-left-radius: 0;
}

.p-interview__balloon--right {
  border-top-right-radius: 0;
}

.p-interview__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 400;
  line-height: 1.8;
  color: #222222;
}
@media (max-width: 767px) {
  .p-interview__text {
    font-size: 2.8rem;
  }
}

.p-interview__strong {
  font-weight: 500;
}

.p-interview__large {
  font-size: 3.168rem;
  line-height: 1.8;
}
@media (max-width: 767px) {
  .p-interview__large {
    font-size: 4.4rem;
  }
}

.p-botanical {
  padding: 2.88rem 2.736rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-botanical {
    padding: 4rem 3.8rem;
  }
}

.p-botanical--butterbur {
  padding-top: 5.76rem;
}
@media (max-width: 767px) {
  .p-botanical--butterbur {
    padding-top: 8rem;
  }
}

.p-botanical__frame {
  overflow: hidden;
  padding-bottom: 4.32rem;
  border: 0.288rem solid #4C9A43;
  border-radius: 0.288rem;
  background-image: repeating-linear-gradient(to right, #F0F0F0 0, #F0F0F0 1px, transparent 1px, transparent 2.16rem), repeating-linear-gradient(to bottom, #F0F0F0 0, #F0F0F0 1px, transparent 1px, transparent 2.16rem);
  background-origin: border-box;
  background-repeat: repeat, repeat;
}
@media (max-width: 767px) {
  .p-botanical__frame {
    padding-bottom: 6rem;
    border-width: 0.4rem;
    border-radius: 0.4rem;
    background-image: repeating-linear-gradient(to right, #F0F0F0 0, #F0F0F0 1px, transparent 1px, transparent 3rem), repeating-linear-gradient(to bottom, #F0F0F0 0, #F0F0F0 1px, transparent 1px, transparent 3rem);
  }
}

.p-botanical--butterbur .p-botanical__frame {
  background-position: 1.584rem 9.504rem;
}
@media (max-width: 767px) {
  .p-botanical--butterbur .p-botanical__frame {
    background-position: 2.2rem 13.2rem;
  }
}

.p-botanical__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 43.776rem;
  height: 9.216rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .p-botanical__head {
    width: 60.8rem;
    height: 12.8rem;
  }
}

.p-botanical__en {
  font-family: "Akshar", sans-serif;
  font-size: 4.32rem;
  font-weight: 500;
  line-height: 1.38;
  letter-spacing: 0.02em;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-botanical__en {
    font-size: 6rem;
  }
}

.p-botanical__category {
  font-family: "Akshar", sans-serif;
  font-size: 1.44rem;
  font-weight: 500;
  line-height: 1.38;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-botanical__category {
    font-size: 2rem;
  }
}

.p-botanical__index {
  font-family: "Outfit", sans-serif;
  font-size: 3.456rem;
  font-weight: 400;
  line-height: 1;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-botanical__index {
    font-size: 4.8rem;
  }
}

.p-botanical__catch {
  width: 42.48rem;
  margin: 0 auto;
  font-family: "Zen Antique Soft", serif;
  font-size: 3.456rem;
  font-weight: 400;
  line-height: 1.3;
  color: #222222;
}
@media (max-width: 767px) {
  .p-botanical__catch {
    width: 59rem;
    font-size: 4.8rem;
  }
}

.p-botanical__accent {
  color: #4C9A43;
}

.p-botanical__head + .p-botanical__catch {
  margin-top: 4.32rem;
}
@media (max-width: 767px) {
  .p-botanical__head + .p-botanical__catch {
    margin-top: 6rem;
  }
}

.p-botanical__catch + .p-botanical__block {
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-botanical__catch + .p-botanical__block {
    margin-top: 4rem;
  }
}

.p-botanical__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.728rem;
  padding: 0 2.88rem;
}
@media (max-width: 767px) {
  .p-botanical__block {
    gap: 2.4rem;
    padding: 0 4rem;
  }
}

.p-botanical__block--top {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.p-botanical__block + .p-botanical__block {
  margin-top: 2.16rem;
}
@media (max-width: 767px) {
  .p-botanical__block + .p-botanical__block {
    margin-top: 3rem;
  }
}

.p-botanical__block + .p-botanical__photo {
  margin-top: 4.32rem;
}
@media (max-width: 767px) {
  .p-botanical__block + .p-botanical__photo {
    margin-top: 6rem;
  }
}

.p-botanical__photo + .p-botanical__block {
  margin-top: 4.32rem;
}
@media (max-width: 767px) {
  .p-botanical__photo + .p-botanical__block {
    margin-top: 6rem;
  }
}

.p-botanical__photo {
  display: block;
  width: 42.48rem;
  height: 26.64rem;
  margin: 0 auto;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 767px) {
  .p-botanical__photo {
    width: 59rem;
    height: 37rem;
  }
}

.p-botanical__avatar {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 10.368rem;
  height: 13.104rem;
}
@media (max-width: 767px) {
  .p-botanical__avatar {
    width: 14.4rem;
    height: 18.2rem;
  }
}

.p-botanical__avatar--bitekiko {
  height: 17.568rem;
}
@media (max-width: 767px) {
  .p-botanical__avatar--bitekiko {
    height: 24.4rem;
  }
}

.p-botanical__avatar--bitekikoLow {
  height: 16.56rem;
}
@media (max-width: 767px) {
  .p-botanical__avatar--bitekikoLow {
    height: 23rem;
  }
}

.p-botanical__face {
  display: block;
  width: 10.126rem;
  height: 11.212rem;
  margin: -0.482rem auto 0;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-botanical__face {
    width: 14.1rem;
    height: 15.6rem;
    margin: -0.7rem auto 0;
  }
}

.p-botanical__face--bitekiko {
  width: 10.368rem;
  height: 13.824rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .p-botanical__face--bitekiko {
    width: 14.4rem;
    height: 19.2rem;
  }
}

.p-botanical__face--bitekikoLow {
  width: 10.368rem;
  height: 12.816rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .p-botanical__face--bitekikoLow {
    width: 14.4rem;
    height: 17.8rem;
  }
}

.p-botanical__name {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.8;
  text-align: center;
  color: #222222;
}
@media (max-width: 767px) {
  .p-botanical__name {
    font-size: 2.4rem;
  }
}

.p-botanical__name--bitekiko {
  margin-top: 0.576rem;
}
@media (max-width: 767px) {
  .p-botanical__name--bitekiko {
    margin-top: 0.8rem;
  }
}

.p-botanical__balloon {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  padding: 1.44rem;
  border: 0.072rem solid #000000;
  border-radius: 1.44rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-botanical__balloon {
    padding: 1.8rem;
    border-width: 0.1rem;
    border-radius: 2rem;
  }
}

.p-botanical__balloon--left {
  border-top-left-radius: 0;
}

.p-botanical__balloon--right {
  border-top-right-radius: 0;
}

.p-botanical__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 400;
  line-height: 1.8;
  color: #222222;
}
@media (max-width: 767px) {
  .p-botanical__text {
    font-size: 2.8rem;
  }
}

.p-botanical__strong {
  font-weight: 500;
}

.p-botanical__large {
  font-size: 3.168rem;
  line-height: 1.4;
}
@media (max-width: 767px) {
  .p-botanical__large {
    font-size: 4.4rem;
  }
}

.p-botanical--fennel .p-botanical__frame {
  background-position: 1.584rem 9.504rem;
}
@media (max-width: 767px) {
  .p-botanical--fennel .p-botanical__frame {
    background-position: 2.2rem 13.2rem;
  }
}

.p-botanical--fennel .p-botanical__head {
  width: 44.064rem;
}
@media (max-width: 767px) {
  .p-botanical--fennel .p-botanical__head {
    width: 61.2rem;
  }
}

.p-botanical--fennel .p-botanical__en {
  width: 32.976rem;
  text-align: center;
}
@media (max-width: 767px) {
  .p-botanical--fennel .p-botanical__en {
    width: 45.8rem;
  }
}

.p-botanical--fennel .p-botanical__rule {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 0.288rem;
  height: 9.216rem;
  background: #4C9A43;
}
@media (max-width: 767px) {
  .p-botanical--fennel .p-botanical__rule {
    width: 0.4rem;
    height: 12.8rem;
  }
}

.p-botanical--fennel .p-botanical__badge {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 6.48rem;
}
@media (max-width: 767px) {
  .p-botanical--fennel .p-botanical__badge {
    width: 9rem;
  }
}

.p-botanical--fennel .p-botanical__divider {
  width: 100%;
  height: 0.288rem;
  margin-top: -0.144rem;
  background: #4C9A43;
}
@media (max-width: 767px) {
  .p-botanical--fennel .p-botanical__divider {
    height: 0.4rem;
    margin-top: -0.2rem;
  }
}

.p-botanical--fennel .p-botanical__catch {
  font-size: 3.168rem;
}
@media (max-width: 767px) {
  .p-botanical--fennel .p-botanical__catch {
    font-size: 4.4rem;
  }
}

.p-botanical--fennel .p-botanical__divider + .p-botanical__catch {
  margin-top: 4.176rem;
}
@media (max-width: 767px) {
  .p-botanical--fennel .p-botanical__divider + .p-botanical__catch {
    margin-top: 5.8rem;
  }
}

.p-botanical--fennel .p-botanical__note {
  width: 42.48rem;
  margin: 2.16rem auto 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.6;
  color: #888888;
}
@media (max-width: 767px) {
  .p-botanical--fennel .p-botanical__note {
    width: 59rem;
    margin-top: 3rem;
    font-size: 2.4rem;
  }
}

.p-botanical--fennel .p-botanical__note + .p-botanical__photo {
  margin-top: 4.32rem;
}
@media (max-width: 767px) {
  .p-botanical--fennel .p-botanical__note + .p-botanical__photo {
    margin-top: 6rem;
  }
}

.p-botanical--fennel .p-botanical__small {
  font-size: 1.728rem;
}
@media (max-width: 767px) {
  .p-botanical--fennel .p-botanical__small {
    font-size: 2.4rem;
  }
}

.p-closing {
  padding: 2.88rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-closing {
    padding: 4rem;
  }
}

.p-closing__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-closing__row--01 {
  gap: 1.44rem;
}
@media (max-width: 767px) {
  .p-closing__row--01 {
    gap: 2rem;
  }
}

.p-closing__row--02 {
  margin-top: 2.88rem;
  gap: 1.152rem;
}
@media (max-width: 767px) {
  .p-closing__row--02 {
    margin-top: 4rem;
    gap: 1.6rem;
  }
}

.p-closing__bubble {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  padding: 1.368rem 1.944rem;
  border: 0.072rem solid #222222;
}
@media (max-width: 767px) {
  .p-closing__bubble {
    padding: 1.9rem 2.7rem;
    border-width: 0.1rem;
  }
}

.p-closing__bubble--01 {
  border-radius: 1.44rem 0 1.44rem 1.44rem;
}
@media (max-width: 767px) {
  .p-closing__bubble--01 {
    border-radius: 2rem 0 2rem 2rem;
  }
}

.p-closing__bubble--02 {
  border-radius: 0 1.44rem 1.44rem 1.44rem;
}
@media (max-width: 767px) {
  .p-closing__bubble--02 {
    border-radius: 0 2rem 2rem 2rem;
  }
}

.p-closing__text {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 400;
  line-height: 1.8;
  color: #222222;
}
@media (max-width: 767px) {
  .p-closing__text {
    font-size: 2.8rem;
  }
}

.p-closing__strong {
  font-weight: 500;
}

.p-closing__avatar {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 12.384rem;
}
@media (max-width: 767px) {
  .p-closing__avatar {
    width: 17.2rem;
  }
}

.p-closing__figure {
  position: relative;
  margin: 0 auto;
}

.p-closing__figure--01 {
  width: 11.52rem;
  height: 13.392rem;
}
@media (max-width: 767px) {
  .p-closing__figure--01 {
    width: 16rem;
    height: 18.6rem;
  }
}

.p-closing__figure--02 {
  width: 10.368rem;
  height: 13.824rem;
}
@media (max-width: 767px) {
  .p-closing__figure--02 {
    width: 14.4rem;
    height: 19.2rem;
  }
}

.p-closing__circle {
  position: absolute;
  left: 0;
  bottom: 0;
  border-radius: 50%;
}

.p-closing__circle--01 {
  width: 11.52rem;
  height: 11.52rem;
  background: #F0F0F0;
}
@media (max-width: 767px) {
  .p-closing__circle--01 {
    width: 16rem;
    height: 16rem;
  }
}

.p-closing__circle--02 {
  width: 10.368rem;
  height: 10.368rem;
  background: #E3E3E3;
}
@media (max-width: 767px) {
  .p-closing__circle--02 {
    width: 14.4rem;
    height: 14.4rem;
  }
}

.p-closing__photo {
  position: absolute;
  left: 0;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-closing__photo--01 {
  bottom: 0;
  width: 11.52rem;
  height: 13.742rem;
}
@media (max-width: 767px) {
  .p-closing__photo--01 {
    width: 16rem;
    height: 19.1rem;
  }
}

.p-closing__photo--02 {
  top: 0;
  width: 10.368rem;
  height: 13.824rem;
}
@media (max-width: 767px) {
  .p-closing__photo--02 {
    width: 14.4rem;
    height: 19.2rem;
  }
}

.p-closing__name {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.8;
  color: #222222;
}
@media (max-width: 767px) {
  .p-closing__name {
    font-size: 2.4rem;
  }
}

.p-closing__name--01 {
  margin-top: 0.144rem;
  text-align: center;
}
@media (max-width: 767px) {
  .p-closing__name--01 {
    margin-top: 0.2rem;
  }
}

.p-closing__name--02 {
  width: 10.368rem;
  margin-top: 0.576rem;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}
@media (max-width: 767px) {
  .p-closing__name--02 {
    width: 14.4rem;
    margin-top: 0.8rem;
  }
}

.p-memo {
  padding: 4.32rem 3.6rem 8.64rem;
  overflow: hidden;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-memo {
    padding: 6rem 5rem 12rem;
  }
}

.p-memo__card {
  position: relative;
  padding: 3.456rem 0.864rem 3.312rem 1.008rem;
  border: 0.072rem solid #222222;
  background-color: #FFFFFF;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #F0F0F0), color-stop(0.072rem, #F0F0F0), color-stop(0.072rem, transparent)), -webkit-gradient(linear, left top, right top, color-stop(0, #F0F0F0), color-stop(0.072rem, #F0F0F0), color-stop(0.072rem, transparent));
  background-image: linear-gradient(to bottom, #F0F0F0 0, #F0F0F0 0.072rem, transparent 0.072rem), linear-gradient(to right, #F0F0F0 0, #F0F0F0 0.072rem, transparent 0.072rem);
  background-size: 100% 2.16rem, 2.16rem 100%;
  background-position: 0 1.44rem, -0.288rem 0;
  background-repeat: repeat;
}
@media (max-width: 767px) {
  .p-memo__card {
    padding: 4.8rem 1.2rem 4.6rem 1.4rem;
    border-width: 0.1rem;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #F0F0F0), color-stop(0.1rem, #F0F0F0), color-stop(0.1rem, transparent)), -webkit-gradient(linear, left top, right top, color-stop(0, #F0F0F0), color-stop(0.1rem, #F0F0F0), color-stop(0.1rem, transparent));
    background-image: linear-gradient(to bottom, #F0F0F0 0, #F0F0F0 0.1rem, transparent 0.1rem), linear-gradient(to right, #F0F0F0 0, #F0F0F0 0.1rem, transparent 0.1rem);
    background-size: 100% 3rem, 3rem 100%;
    background-position: 0 2rem, -0.4rem 0;
  }
}

.p-memo__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-memo__illust {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 20.016rem;
  height: 26.352rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-memo__illust {
    width: 27.8rem;
    height: 36.6rem;
  }
}

.p-memo__column {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}

.p-memo__badge {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.438rem 0 0.658rem;
  background: #E8F6EA;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.411rem;
  font-weight: 500;
  line-height: 1.448;
  letter-spacing: 0.04em;
  white-space: nowrap;
  color: #078409;
}
@media (max-width: 767px) {
  .p-memo__badge {
    padding: 0.6rem 0 0.9rem;
    font-size: 3.3rem;
  }
}

.p-memo__text {
  margin-top: 1.44rem;
  padding-left: 1.44rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 500;
  line-height: 1.6;
  color: #222222;
}
@media (max-width: 767px) {
  .p-memo__text {
    margin-top: 2rem;
    padding-left: 2rem;
    font-size: 3.6rem;
  }
}

.p-memo__corner {
  position: absolute;
  width: 11.52rem;
  height: 5.76rem;
  border-bottom: 0.072rem solid #222222;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-memo__corner {
    width: 16rem;
    height: 8rem;
    border-bottom-width: 0.1rem;
  }
}

.p-memo__corner--tl {
  top: -2.094rem;
  left: -4.974rem;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
@media (max-width: 767px) {
  .p-memo__corner--tl {
    top: -2.9rem;
    left: -6.9rem;
  }
}

.p-memo__corner--br {
  right: -4.974rem;
  bottom: -2.094rem;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
@media (max-width: 767px) {
  .p-memo__corner--br {
    right: -6.9rem;
    bottom: -2.9rem;
  }
}

.p-pickup {
  overflow: visible;
  background: #4C9A43;
}

.p-pickup__head {
  padding: 8.64rem 2.88rem 2.88rem;
}
@media (max-width: 767px) {
  .p-pickup__head {
    padding: 12rem 4rem 4rem;
  }
}

.p-pickup__label {
  font-family: "Akshar", sans-serif;
  font-size: 2.88rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: #BCE3AE;
}
@media (max-width: 767px) {
  .p-pickup__label {
    font-size: 4rem;
  }
}

.p-pickup__lead {
  margin-top: 0.576rem;
  font-family: "Zen Antique Soft", serif;
  font-size: 4.32rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.032em;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-pickup__lead {
    margin-top: 0.8rem;
    font-size: 6rem;
  }
}

.p-pickup__leadNote {
  font-size: 1.728rem;
}
@media (max-width: 767px) {
  .p-pickup__leadNote {
    font-size: 2.4rem;
  }
}

.p-pickup__note {
  margin-top: 1.44rem;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-pickup__note {
    margin-top: 2rem;
    font-size: 2.4rem;
  }
}

.p-pickup__visual {
  padding: 0 2.88rem;
}
@media (max-width: 767px) {
  .p-pickup__visual {
    padding: 0 4rem;
  }
}

.p-pickup__visualCard {
  position: relative;
  height: 72rem;
  overflow: hidden;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-pickup__visualCard {
    height: 100rem;
  }
}

.p-pickup__visualImg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-pickup__info {
  position: relative;
  padding: 8.64rem 2.88rem 4.32rem;
}
@media (max-width: 767px) {
  .p-pickup__info {
    padding: 12rem 4rem 6rem;
  }
}

.p-pickup__infoCharacter {
  position: absolute;
  top: -24.48rem;
  left: 0;
  width: 20.736rem;
  height: 30.96rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-pickup__infoCharacter {
    top: -34rem;
    width: 28.8rem;
    height: 43rem;
  }
}

.p-pickup__infoLead {
  font-family: "Zen Antique", "Zen Antique Soft", serif;
  font-size: 2.304rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.04em;
  text-align: center;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-pickup__infoLead {
    font-size: 3.2rem;
  }
}

.p-pickup__product {
  margin-top: 1.44rem;
  padding: 1.44rem 7.92rem;
  text-align: center;
}
@media (max-width: 767px) {
  .p-pickup__product {
    margin-top: 2rem;
    padding: 2rem 11rem;
  }
}

.p-pickup__brand {
  font-size: 1.728rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-pickup__brand {
    font-size: 2.4rem;
  }
}

.p-pickup__itemName {
  margin-top: 0.576rem;
  font-size: 2.304rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-pickup__itemName {
    margin-top: 0.8rem;
    font-size: 3.2rem;
  }
}

.p-pickup__type {
  margin-top: 0.576rem;
  font-size: 1.728rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.1667em;
  white-space: nowrap;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-pickup__type {
    margin-top: 0.8rem;
    font-size: 2.4rem;
  }
}

.p-pickup__price {
  margin-top: 1.152rem;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  white-space: nowrap;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-pickup__price {
    margin-top: 1.6rem;
    font-size: 2.4rem;
  }
}

.p-pickup__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.152rem;
  width: 43.2rem;
  height: 7.488rem;
  margin: 4.32rem auto 0;
  border-radius: 0.576rem;
  font-size: 2.304rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-decoration: none;
  color: #4C9A43;
  background: #F0F8EC;
}
@media (max-width: 767px) {
  .p-pickup__button {
    gap: 1.6rem;
    width: 60rem;
    height: 10.4rem;
    margin-top: 6rem;
    border-radius: 0.8rem;
    font-size: 3.2rem;
  }
}

.p-pickup__buttonIcon {
  width: 3.024rem;
  height: 3.024rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-pickup__buttonIcon {
    width: 4.2rem;
    height: 4.2rem;
  }
}

.p-pickup__memo {
  padding: 4.32rem 3.6rem 8.64rem;
  overflow-x: clip;
}
@media (max-width: 767px) {
  .p-pickup__memo {
    padding: 6rem 5rem 12rem;
  }
}

.p-pickup__memoCard {
  position: relative;
  height: 33.12rem;
  border: 0.072rem solid #222222;
  background-color: #FFFFFF;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #F0F0F0), color-stop(0.144rem, #F0F0F0), color-stop(0.144rem, transparent)), -webkit-gradient(linear, left top, right top, color-stop(0, #F0F0F0), color-stop(0.144rem, #F0F0F0), color-stop(0.144rem, transparent));
  background-image: linear-gradient(to bottom, #F0F0F0 0, #F0F0F0 0.144rem, transparent 0.144rem), linear-gradient(to right, #F0F0F0 0, #F0F0F0 0.144rem, transparent 0.144rem);
  background-repeat: repeat-y, repeat-x;
  background-position: 0 1.44rem, -0.288rem 0;
  background-size: 100% 2.16rem, 2.16rem 100%;
}
@media (max-width: 767px) {
  .p-pickup__memoCard {
    height: 46rem;
    border-width: 0.1rem;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #F0F0F0), color-stop(0.2rem, #F0F0F0), color-stop(0.2rem, transparent)), -webkit-gradient(linear, left top, right top, color-stop(0, #F0F0F0), color-stop(0.2rem, #F0F0F0), color-stop(0.2rem, transparent));
    background-image: linear-gradient(to bottom, #F0F0F0 0, #F0F0F0 0.2rem, transparent 0.2rem), linear-gradient(to right, #F0F0F0 0, #F0F0F0 0.2rem, transparent 0.2rem);
    background-position: 0 2rem, -0.4rem 0;
    background-size: 100% 3rem, 3rem 100%;
  }
}

.p-pickup__memoCorner {
  position: absolute;
  width: 11.52rem;
  height: 5.76rem;
  border-bottom: 0.072rem solid #222222;
  background: #4C9A43;
}
@media (max-width: 767px) {
  .p-pickup__memoCorner {
    width: 16rem;
    height: 8rem;
    border-bottom-width: 0.1rem;
  }
}

.p-pickup__memoCorner--tl {
  top: -2.094rem;
  left: -4.974rem;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
@media (max-width: 767px) {
  .p-pickup__memoCorner--tl {
    top: -2.9rem;
    left: -6.9rem;
  }
}

.p-pickup__memoCorner--br {
  right: -4.974rem;
  bottom: -2.094rem;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
@media (max-width: 767px) {
  .p-pickup__memoCorner--br {
    right: -6.9rem;
    bottom: -2.9rem;
  }
}

.p-pickup__memoBody {
  position: absolute;
  top: 3.456rem;
  left: 1.008rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 44.928rem;
  height: 26.352rem;
}
@media (max-width: 767px) {
  .p-pickup__memoBody {
    top: 4.8rem;
    left: 1.4rem;
    width: 62.4rem;
    height: 36.6rem;
  }
}

.p-pickup__memoText {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 24.912rem;
}
@media (max-width: 767px) {
  .p-pickup__memoText {
    width: 34.6rem;
  }
}

.p-pickup__memoBadge {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 4.608rem;
  font-size: 2.411rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.04em;
  white-space: nowrap;
  color: #078409;
  background: #F0F8EC;
}
@media (max-width: 767px) {
  .p-pickup__memoBadge {
    height: 6.4rem;
    font-size: 3.3rem;
  }
}

.p-pickup__memoNote {
  margin-top: 1.44rem;
  padding-left: 1.44rem;
  font-size: 2.592rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0;
  white-space: nowrap;
  color: #222222;
}
@media (max-width: 767px) {
  .p-pickup__memoNote {
    margin-top: 2rem;
    padding-left: 2rem;
    font-size: 3.6rem;
  }
}

.p-pickup__memoCharacter {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 20.016rem;
  height: 26.352rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-pickup__memoCharacter {
    width: 27.8rem;
    height: 36.6rem;
  }
}

.p-campaign {
  background: #FFFFFF;
}

.p-campaign__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 8.64rem 0 4.32rem;
}
@media (max-width: 767px) {
  .p-campaign__head {
    padding: 12rem 0 6rem;
  }
}

.p-campaign__logo {
  display: block;
  width: 43.776rem;
  height: 7.2rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-campaign__logo {
    width: 60.8rem;
    height: 10rem;
  }
}

.p-campaign__title {
  margin-top: 1.44rem;
  font-size: 3.456rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-campaign__title {
    margin-top: 2rem;
    font-size: 4.8rem;
  }
}

.p-campaign__titleKern01 {
  letter-spacing: -0.2em;
}

.p-campaign__titleKern02 {
  letter-spacing: 0.01em;
}

.p-campaign__titleKern03 {
  letter-spacing: -0.09em;
}

.p-campaign__titleKern04 {
  letter-spacing: -0.12em;
}

.p-campaign__titleKern05 {
  letter-spacing: -0.01em;
}

.p-campaign__badge {
  margin-top: 1.44rem;
  padding: 0.576rem 3.6rem;
  border: 0.144rem solid #4C9A43;
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-campaign__badge {
    margin-top: 2rem;
    padding: 0.8rem 5rem;
    border-width: 0.2rem;
    font-size: 3.6rem;
  }
}

.p-campaign__prize {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1.44rem 0 4.32rem;
}
@media (max-width: 767px) {
  .p-campaign__prize {
    padding: 2rem 0 6rem;
  }
}

.p-campaign__prizeLead {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 45.648rem;
}
@media (max-width: 767px) {
  .p-campaign__prizeLead {
    width: 63.4rem;
  }
}

.p-campaign__prizeCatch {
  font-size: 1.728rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #222222;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-campaign__prizeCatch {
    font-size: 2.4rem;
  }
}

.p-campaign__prizeTotal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 0.432rem;
  margin-top: 1.44rem;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-campaign__prizeTotal {
    gap: 1.4rem;
    margin-top: 2rem;
  }
}

.p-campaign__prizeTotalLabel {
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  .p-campaign__prizeTotalLabel {
    font-size: 3.6rem;
  }
}

.p-campaign__prizeTotalNum {
  font-family: "Outfit", sans-serif;
  font-size: 6.912rem;
  font-weight: 400;
  line-height: 0.875;
  letter-spacing: 0.04em;
  text-align: center;
}
@media (max-width: 767px) {
  .p-campaign__prizeTotalNum {
    font-size: 9.6rem;
  }
}

.p-campaign__prizeLead2 {
  margin-top: 1.44rem;
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #222222;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-campaign__prizeLead2 {
    margin-top: 2rem;
    font-size: 3.6rem;
  }
}

.p-campaign__prizeAsterisk {
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-campaign__prizeAsterisk {
    font-size: 2.4rem;
  }
}

.p-campaign__prizeCards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 48.384rem;
  margin-top: 5.76rem;
}
@media (max-width: 767px) {
  .p-campaign__prizeCards {
    width: 67.2rem;
    margin-top: 8rem;
  }
}

.p-campaign__prizeCardList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 48.24rem;
}
@media (max-width: 767px) {
  .p-campaign__prizeCardList {
    width: 67rem;
  }
}

.p-campaign__card {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 48.24rem;
  padding: 2.88rem 0;
  border: 0.144rem solid #4C9A43;
  background: #F0F8EC;
}
@media (max-width: 767px) {
  .p-campaign__card {
    width: 67rem;
    padding: 4rem 0 5rem 0;
    border-width: 0.2rem;
  }
}

.p-campaign__card--master {
  margin-top: 5.76rem;
}
@media (max-width: 767px) {
  .p-campaign__card--master {
    margin-top: 8rem;
  }
}

.p-campaign__cardHead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 48.096rem;
}
@media (max-width: 767px) {
  .p-campaign__cardHead {
    width: 66.8rem;
  }
}

.p-campaign__cardHeadTop {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 48.096rem;
}
@media (max-width: 767px) {
  .p-campaign__cardHeadTop {
    width: 66.8rem;
  }
}

.p-campaign__cardLead {
  width: 100%;
  font-size: 2.592rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-campaign__cardLead {
    font-size: 3.6rem;
  }
}

.p-campaign__cardLead--master {
  font-size: 2.448rem;
}
@media (max-width: 767px) {
  .p-campaign__cardLead--master {
    font-size: 3.4rem;
  }
}

.p-campaign__cardBand {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 48.096rem;
  margin-top: 2.88rem;
  padding: 0.576rem 11.52rem 1.152rem;
  background: #4C9A43;
  color: #F0F8EC;
}
@media (max-width: 767px) {
  .p-campaign__cardBand {
    width: 66.8rem;
    margin-top: 4rem;
    padding: 0.8rem 16rem 1.6rem;
  }
}

.p-campaign__cardBand--master {
  padding-right: 14.112rem;
  padding-left: 14.112rem;
}
@media (max-width: 767px) {
  .p-campaign__cardBand--master {
    padding-right: 19.6rem;
    padding-left: 19.6rem;
  }
}

.p-campaign__cardBandTitle {
  font-size: 3.456rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-campaign__cardBandTitle {
    font-size: 4.8rem;
  }
}

.p-campaign__cardBandNote {
  font-size: 2.016rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-campaign__cardBandNote {
    font-size: 2.8rem;
  }
}

.p-campaign__cardSelect {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 42.336rem;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-campaign__cardSelect {
    width: 58.8rem;
    margin-top: 4rem;
  }
}

.p-campaign__cardSelectTitle {
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-campaign__cardSelectTitle {
    font-size: 3.6rem;
  }
}

.p-campaign__cardSelectDetail {
  margin-top: 1.44rem;
  font-size: 2.016rem;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-campaign__cardSelectDetail {
    margin-top: 2rem;
    font-size: 2.8rem;
  }
}

.p-campaign__prizeGrid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 41.616rem;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-campaign__prizeGrid {
    width: 57.8rem;
    margin-top: 4rem;
  }
}

.p-campaign__prizeGridInner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 41.616rem;
  height: 54.144rem;
}
@media (max-width: 767px) {
  .p-campaign__prizeGridInner {
    width: 57.8rem;
    height: 75.2rem;
  }
}

.p-campaign__prizeRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 13.68rem;
  width: 100%;
}
@media (max-width: 767px) {
  .p-campaign__prizeRow {
    gap: 19rem;
  }
}

.p-campaign__prizeRow--lower {
  gap: 12.96rem;
  margin-top: 4.32rem;
}
@media (max-width: 767px) {
  .p-campaign__prizeRow--lower {
    gap: 18rem;
    margin-top: 6rem;
  }
}

.p-campaign__prizeLower {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin-top: 1.728rem;
}
@media (max-width: 767px) {
  .p-campaign__prizeLower {
    margin-top: 2.4rem;
  }
}

.p-campaign__prizeLine {
  display: block;
  width: 100%;
  height: 0;
  border-top: 0.144rem solid #4C9A43;
}
@media (max-width: 767px) {
  .p-campaign__prizeLine {
    border-top-width: 0.2rem;
  }
}

.p-campaign__prizeCross {
  position: absolute;
  top: 1.728rem;
  left: 20.808rem;
  height: 52.416rem;
  border-left: 0.144rem solid #4C9A43;
}
@media (max-width: 767px) {
  .p-campaign__prizeCross {
    top: 2.4rem;
    left: 28.9rem;
    height: 72.8rem;
    border-left-width: 0.2rem;
  }
}

.p-campaign__prizeItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 8.64rem;
}
@media (max-width: 767px) {
  .p-campaign__prizeItem {
    width: 12rem;
  }
}

.p-campaign__prizeItem--wide {
  width: 10.08rem;
}
@media (max-width: 767px) {
  .p-campaign__prizeItem--wide {
    width: 14rem;
  }
}

.p-campaign__prizeImg {
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-campaign__prizeImg--01 {
  width: 8.64rem;
  height: 19.584rem;
}
@media (max-width: 767px) {
  .p-campaign__prizeImg--01 {
    width: 12rem;
    height: 27.2rem;
  }
}

.p-campaign__prizeImg--02 {
  width: 7.056rem;
  height: 20.592rem;
}
@media (max-width: 767px) {
  .p-campaign__prizeImg--02 {
    width: 9.8rem;
    height: 28.6rem;
  }
}

.p-campaign__prizeImg--03 {
  width: 11.506rem;
  height: 12.15rem;
}
@media (max-width: 767px) {
  .p-campaign__prizeImg--03 {
    width: 16rem;
    height: 16.9rem;
  }
}

.p-campaign__prizeImg--04 {
  width: 10.058rem;
  height: 10.199rem;
}
@media (max-width: 767px) {
  .p-campaign__prizeImg--04 {
    width: 14rem;
    height: 14.2rem;
  }
}

.p-campaign__prizeLabel {
  margin-top: 0.864rem;
  font-size: 2.016rem;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-campaign__prizeLabel {
    margin-top: 1.2rem;
    font-size: 2.8rem;
  }
}

.p-campaign__prizeDate {
  margin-top: 0.864rem;
  font-size: 1.728rem;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-campaign__prizeDate {
    margin-top: 1.2rem;
    font-size: 2.4rem;
  }
}

.p-campaign__prizeNote {
  width: 100%;
  margin-top: 1.728rem;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-campaign__prizeNote {
    margin-top: 2.4rem;
    font-size: 2.4rem;
  }
}

.p-campaign__cardMore {
  margin-top: 2.88rem;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-campaign__cardMore {
    margin-top: 4rem;
    font-size: 2.8rem;
  }
}

.p-campaign__cardArrow {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: block;
  width: 4.32rem;
  height: 4.32rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-campaign__cardArrow {
    width: 6rem;
    height: 6rem;
  }
}

.p-campaign__cardArrow--rank {
  top: 96.192rem;
}
@media (max-width: 767px) {
  .p-campaign__cardArrow--rank {
    top: 133.6rem;
  }
}

.p-campaign__cardArrow--master {
  top: 59.184rem;
}
@media (max-width: 767px) {
  .p-campaign__cardArrow--master {
    top: 82.2rem;
  }
}

.p-campaign__cardMasterLead {
  margin-top: 2.88rem;
  font-size: 2.016rem;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-campaign__cardMasterLead {
    margin-top: 4rem;
    font-size: 2.8rem;
  }
}

.p-campaign__masterPic {
  position: relative;
  width: 41.472rem;
  height: 25.92rem;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-campaign__masterPic {
    width: 57.6rem;
    height: 36rem;
    margin-top: 4rem;
  }
}

.p-campaign__masterPicImg {
  position: absolute;
  top: 0;
  left: -0.36rem;
  display: block;
  width: 41.904rem;
  height: 25.92rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-campaign__masterPicImg {
    left: -0.5rem;
    width: 58.2rem;
    height: 36rem;
  }
}

.p-campaign__prizeCaution {
  width: 48.384rem;
  margin-top: 5.76rem;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: left;
}
@media (max-width: 767px) {
  .p-campaign__prizeCaution {
    width: 67.2rem;
    margin-top: 8rem;
    font-size: 2.4rem;
  }
}

.p-campaign__prizePeriod {
  width: 48.096rem;
  margin-top: 5.76rem;
}
@media (max-width: 767px) {
  .p-campaign__prizePeriod {
    width: 66.8rem;
    margin-top: 8rem;
  }
}

.p-campaign__prizePeriodHead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.152rem;
  height: 4.032rem;
}
@media (max-width: 767px) {
  .p-campaign__prizePeriodHead {
    gap: 1.6rem;
    height: 5.6rem;
  }
}

.p-campaign__prizePeriodLabel {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 10.944rem;
  font-family: "Akshar", sans-serif;
  font-size: 2.592rem;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: 0;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-campaign__prizePeriodLabel {
    width: 15.2rem;
    font-size: 3.6rem;
  }
}

.p-campaign__prizePeriodLine {
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 36rem;
  height: 0;
  border-top: 0.144rem solid #4C9A43;
}
@media (max-width: 767px) {
  .p-campaign__prizePeriodLine {
    width: 50rem;
    border-top-width: 0.2rem;
  }
}

.p-campaign__prizePeriodDate {
  font-size: 2.592rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-campaign__prizePeriodDate {
    font-size: 3.6rem;
  }
}

.p-quiz {
  position: relative;
  background: #FFFFFF;
}

.p-quiz__grid {
  position: absolute;
  top: 0;
  left: -2.16rem;
  z-index: 0;
  display: block;
  width: 58.32rem;
  height: 286.272rem;
  pointer-events: none;
  background-image: repeating-linear-gradient(to right, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 2.16rem), repeating-linear-gradient(to bottom, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 2.16rem);
}
@media (max-width: 767px) {
  .p-quiz__grid {
    left: -3rem;
    width: 81rem;
    height: 397.6rem;
    background-image: repeating-linear-gradient(to right, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 3rem), repeating-linear-gradient(to bottom, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 3rem);
  }
}

.p-quiz__bubble {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 4.32rem 2.88rem 2.88rem;
}
@media (max-width: 767px) {
  .p-quiz__bubble {
    padding: 6rem 4rem 4rem;
  }
}

.p-quiz__bubbleInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 42.192rem;
}
@media (max-width: 767px) {
  .p-quiz__bubbleInner {
    width: 58.6rem;
  }
}

.p-quiz__bubbleText {
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 29.376rem;
}
@media (max-width: 767px) {
  .p-quiz__bubbleText {
    width: 40.8rem;
  }
}

.p-quiz__marker {
  position: absolute;
  left: 0;
  display: block;
  height: 1.44rem;
  background: #BCE3AE;
}
@media (max-width: 767px) {
  .p-quiz__marker {
    height: 2rem;
  }
}

.p-quiz__marker--01 {
  top: 2.736rem;
  width: 25.488rem;
}
@media (max-width: 767px) {
  .p-quiz__marker--01 {
    top: 3.8rem;
    width: 35.4rem;
  }
}

.p-quiz__marker--02 {
  top: 9.936rem;
  width: 13.824rem;
}
@media (max-width: 767px) {
  .p-quiz__marker--02 {
    top: 13.8rem;
    width: 19.2rem;
  }
}

.p-quiz__lead {
  position: relative;
  z-index: 1;
  font-size: 2.016rem;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0;
  color: #222222;
}
@media (max-width: 767px) {
  .p-quiz__lead {
    font-size: 2.8rem;
  }
}

.p-quiz__leadStrong {
  font-size: 2.592rem;
  font-weight: 500;
}
@media (max-width: 767px) {
  .p-quiz__leadStrong {
    font-size: 3.6rem;
  }
}

.p-quiz__bitekiko {
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 12.384rem;
  height: 12.816rem;
}
@media (max-width: 767px) {
  .p-quiz__bitekiko {
    width: 18.2rem;
    height: 18.8rem;
  }
}

.p-quiz__bitekikoImg {
  position: absolute;
  top: -2.88rem;
  left: -0.72rem;
  display: block;
  width: 13.392rem;
  height: 16.416rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-quiz__bitekikoImg {
    top: -4rem;
    left: 0rem;
    width: 18.6rem;
    height: 22.8rem;
  }
}

.p-quiz__body {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 8.64rem;
}
@media (max-width: 767px) {
  .p-quiz__body {
    padding-bottom: 12rem;
  }
}

.p-quiz__illust {
  display: block;
  width: 41.904rem;
  height: 59.328rem;
  margin-top: 2.448rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-quiz__illust {
    width: 58.2rem;
    height: 82.4rem;
    margin-top: 3.4rem;
  }
}

.p-quiz__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 40.032rem;
  margin-top: 5.328rem;
  padding: 2.304rem 5.76rem;
  border: none;
  border-radius: 99.9rem;
  background: #4C9A43;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.456rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  color: #FFFFFF;
  text-align: center;
  cursor: pointer;
}
@media (max-width: 767px) {
  .p-quiz__button {
    width: 55.6rem;
    margin-top: 7.4rem;
    padding: 3.2rem 8rem;
    font-size: 4.8rem;
  }
}

.p-prize {
  position: relative;
  z-index: 2;
  background: #FFFFFF;
}

.p-prize__headInner {
  padding-top: 8.64rem;
}
@media (max-width: 767px) {
  .p-prize__headInner {
    padding-top: 12rem;
  }
}

.p-prize__title {
  font-size: 3.456rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__title {
    font-size: 4.8rem;
  }
}

.p-prize__tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.304rem;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-prize__tabs {
    gap: 3.2rem;
    margin-top: 4rem;
  }
}

.p-prize__tab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 21.888rem;
  height: 4.896rem;
  padding: 0;
  border: none;
  border-radius: 0;
  font-size: 2.304rem;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: 0;
}
@media (max-width: 767px) {
  .p-prize__tab {
    width: 30.4rem;
    height: 5.8rem;
    font-size: 3.2rem;
  }
}

.p-prize__tab--rank {
  background: #4C9A43;
  color: #FFFFFF;
}

.p-prize__tab--master {
  background: #BCE3AE;
  color: #4C9A43;
}

.p-prize__share {
  border-top: 0.576rem solid #4C9A43;
  padding: 5.184rem 0 4.32rem;
}
@media (max-width: 767px) {
  .p-prize__share {
    border-top-width: 0.8rem;
    padding: 7.2rem 0 6rem;
  }
}

.p-prize__shareLead {
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #222222;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__shareLead {
    font-size: 3.6rem;
  }
}

.p-prize__shareCount {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0.288rem;
  width: 35.424rem;
  margin: 1.44rem auto 0;
}
@media (max-width: 767px) {
  .p-prize__shareCount {
    gap: 0.4rem;
    width: 49.2rem;
    margin-top: 2rem;
  }
}

.p-prize__shareTotal {
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__shareTotal {
    font-size: 3.6rem;
  }
}

.p-prize__shareNum {
  font-family: "Outfit", sans-serif;
  font-size: 6.912rem;
  font-weight: 400;
  line-height: 0.875;
  letter-spacing: 0.04em;
  color: #4C9A43;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__shareNum {
    font-size: 9.6rem;
  }
}

.p-prize__shareUnit {
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #222222;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__shareUnit {
    font-size: 3.6rem;
  }
}

.p-prize__shareAccent {
  color: #4C9A43;
}

.p-prize__shareMark {
  position: absolute;
  top: 2.016rem;
  left: 19.728rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-prize__shareMark {
    top: 2.8rem;
    left: 27.4rem;
    font-size: 2.4rem;
  }
}

.p-prize__shareNote {
  width: 45.936rem;
  margin: 2.88rem auto 0;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: left;
  word-break: break-word;
}
@media (max-width: 767px) {
  .p-prize__shareNote {
    width: 63.8rem;
    margin-top: 4rem;
    font-size: 2.4rem;
  }
}

.p-prize__cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  gap: 2.88rem;
  padding: 0 2.88rem 8.64rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
@media (max-width: 767px) {
  .p-prize__cards {
    gap: 4rem;
    padding: 0 4rem 12rem;
  }
}

.p-prize__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 44.064rem;
  padding: 2.88rem 0;
}
@media (max-width: 767px) {
  .p-prize__card {
    width: 61.2rem;
    padding: 4rem 0;
  }
}

.p-prize__card--01 {
  background: #F0F8EC;
}

.p-prize__card--02 {
  background: #ECF7FA;
}

.p-prize__card--03 {
  background: #FCF0F1;
}

.p-prize__card--04 {
  background: #FCF5EA;
}

.p-prize__cardHead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}

.p-prize__cardTitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.88rem;
}
@media (max-width: 767px) {
  .p-prize__cardTitle {
    gap: 4rem;
  }
}

.p-prize__cardLine {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 4.32rem;
  height: 0;
  border-top: 0.144rem solid #4C9A43;
}
@media (max-width: 767px) {
  .p-prize__cardLine {
    width: 6rem;
    border-top-width: 0.2rem;
  }
}

.p-prize__cardTitleText {
  font-size: 2.592rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__cardTitleText {
    font-size: 3.6rem;
  }
}

.p-prize__card--01 .p-prize__cardTitleText {
  font-weight: 500;
}

.p-prize__cardVisual {
  position: relative;
  width: 100%;
  height: 33.84rem;
  margin-top: 2.304rem;
}
@media (max-width: 767px) {
  .p-prize__cardVisual {
    height: 47rem;
    margin-top: 3.2rem;
  }
}

.p-prize__cardPhoto {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 15.12rem;
  height: 33.84rem;
}
@media (max-width: 767px) {
  .p-prize__cardPhoto {
    width: 21rem;
    height: 47rem;
  }
}

.p-prize__cardPhoto--wide {
  width: 36.432rem;
}
@media (max-width: 767px) {
  .p-prize__cardPhoto--wide {
    width: 50.6rem;
  }
}

.p-prize__cardBadge {
  position: absolute;
  top: 9.072rem;
  left: 24.624rem;
  width: 15.696rem;
  height: 15.84rem;
}
@media (max-width: 767px) {
  .p-prize__cardBadge {
    top: 12.6rem;
    left: 34.2rem;
    width: 21.8rem;
    height: 22rem;
  }
}

.p-prize__cardBadge--03 {
  top: 1.728rem;
  left: 26.928rem;
}
@media (max-width: 767px) {
  .p-prize__cardBadge--03 {
    top: 2.4rem;
    left: 37.4rem;
  }
}

.p-prize__cardBadge--04 {
  top: 2.16rem;
  left: 26.928rem;
}
@media (max-width: 767px) {
  .p-prize__cardBadge--04 {
    top: 3rem;
    left: 37.4rem;
  }
}

.p-prize__cardBadgeCircle {
  position: absolute;
  top: 0.432rem;
  left: 0.288rem;
  width: 15.12rem;
  height: 15.12rem;
  border: 0.093rem solid #4C9A43;
  border-radius: 50%;
}
@media (max-width: 767px) {
  .p-prize__cardBadgeCircle {
    top: 0.6rem;
    left: 0.4rem;
    width: 21rem;
    height: 21rem;
    border-width: 0.1rem;
  }
}

.p-prize__cardBadgeNum {
  position: absolute;
  top: 5.616rem;
  left: 5.904rem;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-family: "Outfit", sans-serif;
  font-size: 5.184rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-prize__cardBadgeNum {
    top: 7.8rem;
    left: 8.2rem;
    font-size: 7.2rem;
  }
}

.p-prize__cardBadgeUnit {
  position: absolute;
  top: 6.408rem;
  left: 7.344rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 1.872rem;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
  color: #4C9A43;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__cardBadgeUnit {
    top: 8.9rem;
    left: 10.2rem;
    font-size: 2.6rem;
  }
}

.p-prize__cardBadgeItem {
  position: absolute;
  top: 7.632rem;
  left: 7.92rem;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 2.016rem;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__cardBadgeItem {
    top: 10.6rem;
    left: 11rem;
    font-size: 2.8rem;
  }
}

.p-prize__cardBadgeGift {
  position: absolute;
  top: 10.224rem;
  left: 7.92rem;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 2.016rem;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__cardBadgeGift {
    top: 14.2rem;
    left: 11rem;
    font-size: 2.8rem;
  }
}

.p-prize__cardProduct {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-prize__cardProduct {
    margin-top: 4rem;
  }
}

.p-prize__cardBrand {
  font-size: 1.728rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  color: #222222;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__cardBrand {
    font-size: 2.4rem;
  }
}

.p-prize__cardName {
  margin-top: 0.576rem;
  font-size: 2.016rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  color: #222222;
  text-align: center;
  text-decoration: underline;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__cardName {
    margin-top: 0.8rem;
    font-size: 2.8rem;
  }
}

.p-prize__cardWin {
  width: 36.576rem;
  margin-top: 2.88rem;
  font-size: 2.304rem;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.02em;
  color: #222222;
  text-align: left;
}
@media (max-width: 767px) {
  .p-prize__cardWin {
    width: 50.8rem;
    margin-top: 4rem;
    font-size: 3.2rem;
  }
}

.p-prize__cardNote {
  width: 38.304rem;
  margin-top: 2.88rem;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #222222;
  text-align: left;
  word-break: break-word;
}
@media (max-width: 767px) {
  .p-prize__cardNote {
    width: 53.2rem;
    margin-top: 4rem;
    font-size: 2.4rem;
  }
}

.p-prize__cardCaption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 36.576rem;
  min-height: 4.608rem;
  margin-top: 2.88rem;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #222222;
  text-align: center;
}
@media (max-width: 767px) {
  .p-prize__cardCaption {
    width: 50.8rem;
    min-height: 6.4rem;
    margin-top: 4rem;
    font-size: 2.4rem;
  }
}

.p-prize__card--02 .p-prize__cardTitleText,
.p-prize__card--02 .p-prize__cardBadgeNum,
.p-prize__card--02 .p-prize__cardBadgeUnit,
.p-prize__card--02 .p-prize__cardBadgeItem,
.p-prize__card--02 .p-prize__cardBadgeGift {
  color: #1B97C8;
}

.p-prize__card--02 .p-prize__cardLine {
  border-top-color: #1B97C8;
}

.p-prize__card--02 .p-prize__cardBadgeCircle {
  border-color: #1B97C8;
}

.p-prize__card--03 .p-prize__cardTitleText,
.p-prize__card--03 .p-prize__cardBadgeNum,
.p-prize__card--03 .p-prize__cardBadgeUnit,
.p-prize__card--03 .p-prize__cardBadgeItem,
.p-prize__card--03 .p-prize__cardBadgeGift {
  color: #E6585D;
}

.p-prize__card--03 .p-prize__cardLine {
  border-top-color: #E6585D;
}

.p-prize__card--03 .p-prize__cardBadgeCircle {
  border-color: #E6585D;
}

.p-prize__card--04 .p-prize__cardTitleText,
.p-prize__card--04 .p-prize__cardBadgeNum,
.p-prize__card--04 .p-prize__cardBadgeUnit,
.p-prize__card--04 .p-prize__cardBadgeItem,
.p-prize__card--04 .p-prize__cardBadgeGift {
  color: #F18D00;
}

.p-prize__card--04 .p-prize__cardLine {
  border-top-color: #F18D00;
}

.p-prize__card--04 .p-prize__cardBadgeCircle {
  border-color: #F18D00;
}

.p-period {
  position: relative;
  z-index: 2;
  background: #F0F8EC;
}

.p-period__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 8.64rem 5.04rem 0 5.184rem;
}
@media (max-width: 767px) {
  .p-period__head {
    padding: 12rem 7rem 0 7.2rem;
  }
}

.p-period__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.456rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-align: center;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-period__title {
    font-size: 4.8rem;
  }
}

.p-period__subhead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.88rem;
  margin-top: 5.76rem;
}
@media (max-width: 767px) {
  .p-period__subhead {
    gap: 4rem;
    margin-top: 8rem;
  }
}

.p-period__subhead--master {
  margin-top: 0;
}
@media (max-width: 767px) {
  .p-period__subhead--master {
    margin-top: 0;
  }
}

.p-period__line {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 12.384rem;
  height: 0.144rem;
  background: #4C9A43;
}
@media (max-width: 767px) {
  .p-period__line {
    width: 17.2rem;
    height: 0.2rem;
  }
}

.p-period__line--short {
  width: 7.2rem;
}
@media (max-width: 767px) {
  .p-period__line--short {
    width: 10rem;
  }
}

.p-period__subTitle {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
  white-space: nowrap;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-period__subTitle {
    font-size: 3.6rem;
  }
}

.p-period__rank {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.728rem;
  padding: 2.88rem;
  overflow-x: auto;
}
@media (max-width: 767px) {
  .p-period__rank {
    gap: 2.4rem;
    padding: 4rem;
  }
}

.p-period__badge {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 22.032rem;
}
@media (max-width: 767px) {
  .p-period__badge {
    width: 30.6rem;
  }
}

.p-period__badgeLabel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  height: 3.6rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.304rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.1125em;
  text-align: center;
}
@media (max-width: 767px) {
  .p-period__badgeLabel {
    height: 5rem;
    font-size: 3.2rem;
  }
}

.p-period__badgeLabel--01 {
  color: #4C9A43;
}

.p-period__badgeLabel--02 {
  color: #1B97C8;
}

.p-period__badgeLabel--03 {
  color: #E6585D;
}

.p-period__badgeLabel--04 {
  color: #F18D00;
}

.p-period__badgeNum {
  font-family: "Outfit", sans-serif;
  font-size: 3.744rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.09em;
}
@media (max-width: 767px) {
  .p-period__badgeNum {
    font-size: 5.2rem;
  }
}

.p-period__badgeCircle {
  position: relative;
  width: 22.032rem;
  height: 22.032rem;
  margin-top: 1.152rem;
  border-radius: 50%;
  overflow: hidden;
}
@media (max-width: 767px) {
  .p-period__badgeCircle {
    width: 30.6rem;
    height: 30.6rem;
    margin-top: 1.6rem;
  }
}

.p-period__badgeCircle--01 {
  background: #80C269;
}

.p-period__badgeCircle--02 {
  background: #5FB5DA;
}

.p-period__badgeCircle--03 {
  background: #F29C9F;
}

.p-period__badgeCircle--04 {
  background: #F5B04F;
}

.p-period__badgeIllust {
  position: absolute;
  top: 6.912rem;
  left: 0;
  width: 22.032rem;
  height: 15.12rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 767px) {
  .p-period__badgeIllust {
    top: 9.6rem;
    width: 30.6rem;
    height: 21rem;
  }
}

.p-period__badgeIllust--01 {
  top: 10.512rem;
  height: 11.52rem;
}
@media (max-width: 767px) {
  .p-period__badgeIllust--01 {
    top: 14.6rem;
    height: 16rem;
  }
}

.p-period__badgeText {
  position: absolute;
  top: 4.32rem;
  left: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (max-width: 767px) {
  .p-period__badgeText {
    top: 6rem;
  }
}

.p-period__badgeText--01 {
  top: 2.88rem;
}
@media (max-width: 767px) {
  .p-period__badgeText--01 {
    top: 3.4rem;
  }
}

.p-period__badgeLead {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-align: center;
  white-space: nowrap;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-period__badgeLead {
    font-size: 2.8rem;
  }
}

.p-period__badgeLead--01 {
  font-size: 1.728rem;
  font-weight: 500;
}
@media (max-width: 767px) {
  .p-period__badgeLead--01 {
    font-size: 2.4rem;
  }
}

.p-period__badgeSoon {
  margin-top: 0.72rem;
  font-family: "Akshar", sans-serif;
  font-size: 2.592rem;
  font-weight: 500;
  line-height: 1.1;
  text-align: center;
  white-space: nowrap;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-period__badgeSoon {
    margin-top: 1rem;
    font-size: 3.6rem;
  }
}

.p-period__badgeDate {
  margin-top: 0.288rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.02em;
  text-align: center;
  white-space: nowrap;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-period__badgeDate {
    margin-top: 0.4rem;
    font-size: 2.4rem;
  }
}

.p-period__badgeDateNum {
  font-family: "Outfit", sans-serif;
  font-size: 2.304rem;
  font-weight: 700;
}
@media (max-width: 767px) {
  .p-period__badgeDateNum {
    font-size: 3.2rem;
  }
}

.p-period__badgeDateTime {
  font-family: "Outfit", sans-serif;
  font-size: 2.304rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}
@media (max-width: 767px) {
  .p-period__badgeDateTime {
    font-size: 3.2rem;
  }
}

.p-period__badgeDateUnit {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 700;
}
@media (max-width: 767px) {
  .p-period__badgeDateUnit {
    font-size: 2.4rem;
  }
}

.p-period__badgeDateUnit--tight {
  letter-spacing: -0.1em;
}

.p-period__master {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2.88rem 5.04rem 4.32rem 5.184rem;
}
@media (max-width: 767px) {
  .p-period__master {
    padding: 4rem 7rem 6rem 7.2rem;
  }
}

.p-period__deadline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-period__deadline {
    margin-top: 4rem;
  }
}

.p-period__deadlineLabel {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-align: center;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-period__deadlineLabel {
    font-size: 2.8rem;
  }
}

.p-period__deadlineDate {
  margin-top: 1.44rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.02em;
  text-align: center;
  white-space: nowrap;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-period__deadlineDate {
    margin-top: 2rem;
    font-size: 3.6rem;
  }
}

.p-period__deadlineNum {
  font-family: "Outfit", sans-serif;
  font-size: 3.456rem;
  font-weight: 700;
}
@media (max-width: 767px) {
  .p-period__deadlineNum {
    font-size: 4.8rem;
  }
}

.p-period__deadlineTime {
  font-family: "Outfit", sans-serif;
  font-size: 3.456rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}
@media (max-width: 767px) {
  .p-period__deadlineTime {
    font-size: 4.8rem;
  }
}

.p-period__deadlineUnit {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 700;
}
@media (max-width: 767px) {
  .p-period__deadlineUnit {
    font-size: 3.6rem;
  }
}

.p-period__deadlineUnit--tight {
  letter-spacing: -0.1em;
}

.p-period__note {
  width: 44.928rem;
  margin-top: 2.88rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-align: center;
  word-break: break-word;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-period__note {
    width: 62.4rem;
    margin-top: 4rem;
    font-size: 2.4rem;
  }
}

.p-entry {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 4.32rem 5.04rem 2.88rem 5.184rem;
  background: #F0F8EC;
}
@media (max-width: 767px) {
  .p-entry {
    padding: 6rem 7rem 4rem 7.2rem;
  }
}

.p-entry__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.456rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.02em;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-entry__title {
    font-size: 4.8rem;
  }
}

.p-entry__card {
  position: relative;
  width: 46.8rem;
  margin-top: 5.76rem;
  padding: 5.76rem 2.88rem;
  border: 0.072rem solid #222222;
  overflow: hidden;
  background-color: #FFFFFF;
  background-image: repeating-linear-gradient(to right, #E4E4E4 0 1px, transparent 1px 2.16rem), repeating-linear-gradient(to bottom, #E4E4E4 0 1px, transparent 1px 2.16rem);
  background-position: -5.76rem 0;
  background-origin: border-box;
}
@media (max-width: 767px) {
  .p-entry__card {
    width: 65rem;
    margin-top: 8rem;
    padding: 8rem 4rem 6rem 4rem;
    border-width: 0.1rem;
    background-image: repeating-linear-gradient(to right, #E4E4E4 0 1px, transparent 1px 3rem), repeating-linear-gradient(to bottom, #E4E4E4 0 1px, transparent 1px 3rem);
    background-position: -8rem 0;
  }
}

.p-entry__body {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
}

.p-entry__block {
  width: 100%;
}

.p-entry__steps {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
}

.p-entry__step {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.44rem;
  width: 100%;
}
@media (max-width: 767px) {
  .p-entry__step {
    gap: 2rem;
  }
}

.p-entry__step--center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-entry__step--02 {
  margin-top: 2.016rem;
}
@media (max-width: 767px) {
  .p-entry__step--02 {
    margin-top: 2.8rem;
  }
}

.p-entry__step--04 {
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-entry__step--04 {
    margin-top: 4rem;
  }
}

.p-entry__badge {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 8.928rem;
  height: 4.032rem;
  padding-top: 0.288rem;
  background: #4C9A43;
  font-family: "Akshar", sans-serif;
  font-size: 2.304rem;
  font-weight: 500;
  line-height: 1.1;
  color: #FFFFFF;
  text-align: center;
}
@media (max-width: 767px) {
  .p-entry__badge {
    width: 12.4rem;
    height: 5.6rem;
    padding-top: 0.4rem;
    font-size: 3.2rem;
  }
}

.p-entry__badge--light {
  background: #80C269;
}

.p-entry__stepText {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.304rem;
  font-weight: 400;
  line-height: 1.4375;
  color: #222222;
  text-align: left;
}
@media (max-width: 767px) {
  .p-entry__stepText {
    font-size: 3.2rem;
  }
}

.p-entry__stepLink {
  text-decoration: underline;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}

.p-entry__stepClose {
  letter-spacing: -0.38em;
}

.p-entry__note {
  width: 100%;
  margin-top: 2.88rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-entry__note {
    margin-top: 4rem;
    font-size: 2.4rem;
  }
}

.p-entry__hashtag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  margin-top: 2.88rem;
  padding: 2.88rem 0;
  border: 0.144rem solid #4C9A43;
  background: #F0F8EC;
}
@media (max-width: 767px) {
  .p-entry__hashtag {
    margin-top: 4rem;
    padding: 4rem 0;
    border-width: 0.2rem;
  }
}

.p-entry__hashtagInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 36.72rem;
}
@media (max-width: 767px) {
  .p-entry__hashtagInner {
    width: 51rem;
  }
}

.p-entry__hashtagTitle {
  width: 100%;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-entry__hashtagTitle {
    font-size: 2.8rem;
  }
}

.p-entry__hashtagLine {
  display: block;
  width: 100%;
  height: 0.144rem;
  margin-top: 1.44rem;
  background: #4C9A43;
}
@media (max-width: 767px) {
  .p-entry__hashtagLine {
    height: 0.2rem;
    margin-top: 2rem;
  }
}

.p-entry__hashtagTags {
  width: 100%;
  margin-top: 1.44rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-entry__hashtagTags {
    margin-top: 2rem;
    font-size: 2.8rem;
  }
}

.p-entry__flow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-entry__flow {
    margin-top: 4rem;
  }
}

.p-entry__flowBlock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}

.p-entry__flowBlock--02 {
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-entry__flowBlock--02 {
    margin-top: 4rem;
  }
}

.p-entry__arrow {
  font-family: "Noto Sans JP", "Zen Kaku Gothic New", sans-serif;
  font-size: 2.304rem;
  font-weight: 400;
  line-height: 1.4375;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-entry__arrow {
    font-size: 3.2rem;
  }
}

.p-entry__arrow--gap {
  margin-top: 1.44rem;
}
@media (max-width: 767px) {
  .p-entry__arrow--gap {
    margin-top: 2rem;
  }
}

.p-entry__result {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}

.p-entry__result--wide {
  width: 46.8rem;
  margin-top: 1.44rem;
  margin-left: -2.952rem;
  margin-right: -2.952rem;
}
@media (max-width: 767px) {
  .p-entry__result--wide {
    width: 65rem;
    margin-top: 2rem;
    margin-left: -4.1rem;
    margin-right: -4.1rem;
  }
}

.p-entry__result--last {
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-entry__result--last {
    margin-top: 4rem;
  }
}

.p-entry__resultLabel {
  padding: 1.152rem 2.88rem;
  border: 0.144rem solid #4C9A43;
  background: #FFFFFF;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-entry__resultLabel {
    padding: 1.6rem 4rem;
    border-width: 0.2rem;
    font-size: 2.8rem;
  }
}

.p-entry__notes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-entry__notes {
    margin-top: 4rem;
  }
}

.p-entry__noteWide {
  width: 100%;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-entry__noteWide {
    font-size: 2.4rem;
  }
}

.p-entry__noteWide--02 {
  margin-top: 1.44rem;
}
@media (max-width: 767px) {
  .p-entry__noteWide--02 {
    margin-top: 2rem;
  }
}

.p-entry__noteLast {
  width: 100%;
  margin-top: 2.88rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-entry__noteLast {
    margin-top: 4rem;
    font-size: 2.4rem;
  }
}

.p-entry__cta {
  position: relative;
  width: 45.504rem;
  margin-top: 5.76rem;
}
@media (max-width: 767px) {
  .p-entry__cta {
    width: 63.2rem;
    margin-top: 8rem;
  }
}

.p-entry__ctaLink {
  position: relative;
  display: block;
  width: 100%;
  height: 10.224rem;
  border-radius: 0.576rem;
  background: #4C9A43;
}
@media (max-width: 767px) {
  .p-entry__ctaLink {
    height: 14.2rem;
    border-radius: 0.8rem;
  }
}

.p-entry__ctaBody {
  position: absolute;
  top: 2.736rem;
  left: 13.248rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.44rem;
  width: 29.664rem;
  height: 4.896rem;
}
@media (max-width: 767px) {
  .p-entry__ctaBody {
    top: 3.8rem;
    left: 18.4rem;
    gap: 2rem;
    width: 41.2rem;
    height: 6.8rem;
  }
}

.p-entry__ctaTexts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 23.328rem;
  height: 4.896rem;
}
@media (max-width: 767px) {
  .p-entry__ctaTexts {
    width: 32.4rem;
    height: 6.8rem;
  }
}

.p-entry__ctaEn {
  font-family: "Akshar", sans-serif;
  font-size: 1.728rem;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0.04em;
  color: #BCE3AE;
}
@media (max-width: 767px) {
  .p-entry__ctaEn {
    font-size: 2.4rem;
  }
}

.p-entry__ctaJa {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.1667;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-entry__ctaJa {
    font-size: 3.6rem;
  }
}

.p-entry__ctaIcon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 4.896rem;
  height: 4.896rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-entry__ctaIcon {
    width: 6.8rem;
    height: 6.8rem;
  }
}

.p-entry__mascot {
  position: absolute;
  top: -4.896rem;
  left: 0.576rem;
  width: 11.376rem;
  height: 15.12rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-entry__mascot {
    top: -6.8rem;
    left: 0.8rem;
    width: 15.8rem;
    height: 21rem;
  }
}

.p-entry__deco {
  position: absolute;
  width: 9.775rem;
  height: 9.775rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-entry__deco {
    width: 13.6rem;
    height: 13.6rem;
  }
}

.p-entry__deco--tl {
  top: 12.384rem;
  left: 0.864rem;
}
@media (max-width: 767px) {
  .p-entry__deco--tl {
    top: 17.2rem;
    left: 1.2rem;
  }
}

.p-entry__deco--br {
  bottom: 16.001rem;
  left: 43.632rem;
}
@media (max-width: 767px) {
  .p-entry__deco--br {
    bottom: 22.2rem;
    left: 60.6rem;
  }
}

.p-credit__notes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2.88rem 5.04rem 8.64rem 5.184rem;
  background: #F0F8EC;
}
@media (max-width: 767px) {
  .p-credit__notes {
    padding: 4rem 7rem 12rem 7.2rem;
  }
}

.p-credit__text {
  width: 44.928rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #4C9A43;
  text-align: center;
  word-break: break-word;
}
@media (max-width: 767px) {
  .p-credit__text {
    width: 62.4rem;
    font-size: 2.4rem;
  }
}

.p-credit__terms {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 48.24rem;
  margin-top: 4.32rem;
}
@media (max-width: 767px) {
  .p-credit__terms {
    width: 67rem;
    margin-top: 6rem;
  }
}

.p-credit__termsLine {
  display: block;
  width: 100%;
  height: 0.144rem;
  background: #BCE3AE;
}
@media (max-width: 767px) {
  .p-credit__termsLine {
    height: 0.2rem;
  }
}

.p-credit__termsLine--bottom {
  margin-top: 1.44rem;
}
@media (max-width: 767px) {
  .p-credit__termsLine--bottom {
    margin-top: 2rem;
  }
}

.p-credit__termsRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 44.64rem;
  height: 3.744rem;
  margin-top: 1.44rem;
}
@media (max-width: 767px) {
  .p-credit__termsRow {
    width: 62rem;
    height: 5.2rem;
    margin-top: 2rem;
  }
}

.p-credit__termsLabel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.152rem;
}
@media (max-width: 767px) {
  .p-credit__termsLabel {
    gap: 1.6rem;
  }
}

.p-credit__termsIcon {
  display: block;
  width: 3.744rem;
  height: 3.744rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-credit__termsIcon {
    width: 5.2rem;
    height: 5.2rem;
  }
}

.p-credit__termsTitle {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 400;
  line-height: 1.45;
  color: #078409;
}
@media (max-width: 767px) {
  .p-credit__termsTitle {
    font-size: 3.6rem;
  }
}

.p-credit__termsPlus {
  display: block;
  width: 2.304rem;
  height: 2.304rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-credit__termsPlus {
    width: 3.2rem;
    height: 3.2rem;
  }
}

.p-credit__supervision {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 8.64rem 3.168rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-credit__supervision {
    padding: 12rem 4.4rem;
  }
}

.p-credit__logo {
  display: block;
  width: 33.839rem;
  height: 3.619rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-credit__logo {
    width: 47rem;
    height: 5rem;
  }
}

.p-credit__credit {
  width: 28.656rem;
  margin-top: 0.576rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.1em;
  color: #888888;
  text-align: center;
  word-break: break-word;
}
@media (max-width: 767px) {
  .p-credit__credit {
    width: 39.8rem;
    margin-top: 0.8rem;
    font-size: 2.4rem;
  }
}

.p-botanical--butterbur .p-botanical__en {
  width: 32.976rem;
}
@media (max-width: 767px) {
  .p-botanical--butterbur .p-botanical__en {
    width: 45.8rem;
  }
}

.p-botanical--butterbur .p-botanical__rule {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 0.288rem;
  height: 9.216rem;
  background: #4C9A43;
}
@media (max-width: 767px) {
  .p-botanical--butterbur .p-botanical__rule {
    width: 0.4rem;
    height: 12.8rem;
  }
}

.p-botanical--butterbur .p-botanical__badge {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 6.192rem;
}
@media (max-width: 767px) {
  .p-botanical--butterbur .p-botanical__badge {
    width: 8.6rem;
  }
}

.p-botanical--butterbur .p-botanical__divider {
  width: 100%;
  height: 0.288rem;
  margin-top: -0.144rem;
  background: #4C9A43;
}
@media (max-width: 767px) {
  .p-botanical--butterbur .p-botanical__divider {
    height: 0.4rem;
    margin-top: -0.2rem;
  }
}

.p-botanical--butterbur .p-botanical__divider + .p-botanical__catch {
  margin-top: 4.176rem;
}
@media (max-width: 767px) {
  .p-botanical--butterbur .p-botanical__divider + .p-botanical__catch {
    margin-top: 5.8rem;
  }
}

footer.common-footer .page-to-top button {
  position: relative;
}

footer.common-footer .page-to-top button::after {
  content: "";
  position: absolute;
  top: 11.4px;
  left: 12.9px;
  width: 3.3px;
  height: 3.3px;
  border-top: 0.75px solid #a39187;
  border-left: 0.75px solid #a39187;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  pointer-events: none;
}

footer.common-footer .page-to-top .icn-arr-circle-top path {
  d: path("M25,17.765V33.75");
}

.p-credit__termsRow {
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
}

.p-credit__termsPlus {
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}

.p-credit__terms.is-open .p-credit__termsPlus {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.p-credit__termsBody {
  display: grid;
  grid-template-rows: 0fr;
  width: 100%;
  -webkit-transition: grid-template-rows 0.4s ease;
  transition: grid-template-rows 0.4s ease;
  transition: grid-template-rows 0.4s ease, -ms-grid-rows 0.4s ease;
}

.p-credit__terms.is-open .p-credit__termsBody {
  grid-template-rows: 1fr;
}

.p-credit__termsText {
  overflow: hidden;
  min-height: 0;
  width: 43.776rem;
  margin: 0 auto;
  padding-top: 1.44rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-align: left;
  word-break: break-word;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-credit__termsText {
    width: 60.8rem;
    padding-top: 2rem;
    font-size: 2.4rem;
  }
}

.p-credit__termsBold {
  font-weight: 700;
}

.p-credit__termsBlack {
  font-weight: 900;
}

.p-credit__termsUnderline {
  text-decoration: underline;
}

.p-credit__termsLink {
  color: inherit;
  text-decoration: underline;
}

.p-credit__termsLink--url {
  word-break: break-all;
}

body.is-menuOpen .c-menu {
  opacity: 0;
  pointer-events: none;
}

.c-drawer {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1090;
  width: 100%;
  height: 100%;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

body.is-menuOpen .c-drawer {
  visibility: visible;
  opacity: 1;
}

.c-drawer__close {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 5.904rem;
  height: 5.904rem;
  padding: 0;
  border: none;
  background: #4C9A43;
  cursor: pointer;
}
@media (max-width: 767px) {
  .c-drawer__close {
    width: 8.2rem;
    height: 8.2rem;
  }
}

.c-drawer__closeBar {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3.456rem;
  height: 0.144rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .c-drawer__closeBar {
    width: 4.8rem;
    height: 0.2rem;
  }
}

.c-drawer__closeBar:nth-child(1) {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}

.c-drawer__closeBar:nth-child(2) {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.c-drawer__panel {
  position: absolute;
  top: 0;
  right: 0;
  width: 48.24rem;
  height: 100%;
  padding: 2.88rem;
  overflow-y: auto;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .c-drawer__panel {
    width: 67rem;
    padding: 4rem;
  }
}

.c-drawer__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.c-drawer__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  color: #222222;
  text-decoration: none;
}

.c-drawer__item + .c-drawer__item {
  margin-top: 4.32rem;
}
@media (max-width: 767px) {
  .c-drawer__item + .c-drawer__item {
    margin-top: 6rem;
  }
}

.c-drawer__item--01 {
  color: #4C9A43;
}

.c-drawer__item--02 {
  color: #1B97C8;
}

.c-drawer__item--03 {
  color: #E6585D;
}

.c-drawer__item--04 {
  color: #F18D00;
}

.c-drawer__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0.72rem;
}
@media (max-width: 767px) {
  .c-drawer__head {
    gap: 1rem;
  }
}

.c-drawer__pin {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 3.525rem;
  height: 5.184rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .c-drawer__pin {
    width: 4.896rem;
    height: 7.2rem;
  }
}

.c-drawer__en {
  font-family: "Akshar", sans-serif;
  font-size: 2.592rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em;
}
@media (max-width: 767px) {
  .c-drawer__en {
    font-size: 3.6rem;
  }
}

.c-drawer__jp {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 4.32rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
}
@media (max-width: 767px) {
  .c-drawer__jp {
    font-size: 6rem;
  }
}

.c-drawer__head + .c-drawer__jp {
  margin-top: 0.72rem;
}
@media (max-width: 767px) {
  .c-drawer__head + .c-drawer__jp {
    margin-top: 1rem;
  }
}

.c-drawer__jp + .c-drawer__en {
  margin-top: 1.44rem;
}
@media (max-width: 767px) {
  .c-drawer__jp + .c-drawer__en {
    margin-top: 2rem;
  }
}

.c-drawer__quiz {
  margin-top: 7.2rem;
}
@media (max-width: 767px) {
  .c-drawer__quiz {
    margin-top: 10rem;
  }
}

.c-drawer__quizHead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  color: #222222;
}

.c-drawer__quizGrid {
  display: grid;
  grid-template-columns: repeat(2, 20.592rem);
  gap: 1.44rem;
  margin-top: 4.32rem;
}
@media (max-width: 767px) {
  .c-drawer__quizGrid {
    grid-template-columns: repeat(2, 28.6rem);
    gap: 2rem;
    margin-top: 6rem;
  }
}

.c-drawer__quizBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 5.184rem;
  padding: 1.728rem;
  border: 0.144rem solid currentColor;
  border-radius: 0.288rem;
  background: #FFFFFF;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  text-align: center;
  text-decoration: none;
}
@media (max-width: 767px) {
  .c-drawer__quizBtn {
    height: 7.2rem;
    padding: 2.4rem;
    border-width: 0.2rem;
    border-radius: 0.4rem;
    font-size: 2.8rem;
  }
}

.c-drawer__quizNum {
  font-family: "Outfit", sans-serif;
  font-weight: 500;
}

.c-drawer__quizBtn--01 {
  color: #4C9A43;
}

.c-drawer__quizBtn--02 {
  color: #1B97C8;
}

.c-drawer__quizBtn--03 {
  color: #E6585D;
}

.c-drawer__quizBtn--04 {
  color: #F18D00;
}

.p-exam {
  position: relative;
  background: #FFFFFF;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.p-exam__line {
  display: block;
  width: 100%;
  height: 0.432rem;
  background: #4C9A43;
}
@media (max-width: 767px) {
  .p-exam__line {
    height: 0.6rem;
  }
}

.p-exam__body {
  position: relative;
  height: 103.248rem;
  overflow: hidden;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-exam__body {
    height: 143.4rem;
  }
}

.p-exam__grid {
  position: absolute;
  top: 0;
  left: -2.16rem;
  z-index: 0;
  display: block;
  width: 58.32rem;
  height: 103.248rem;
  pointer-events: none;
  background-image: repeating-linear-gradient(to right, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 2.16rem), repeating-linear-gradient(to bottom, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 2.16rem);
}
@media (max-width: 767px) {
  .p-exam__grid {
    left: -3rem;
    width: 81rem;
    height: 143.4rem;
    background-image: repeating-linear-gradient(to right, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 3rem), repeating-linear-gradient(to bottom, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 3rem);
  }
}

.p-exam__inner {
  position: absolute;
  top: 2.88rem;
  left: 2.88rem;
  z-index: 1;
  width: 48.24rem;
}
@media (max-width: 767px) {
  .p-exam__inner {
    top: 4rem;
    left: 4rem;
    width: 67rem;
  }
}

.p-exam__screen {
  display: none;
}

.p-exam__screen.is-active {
  display: block;
}

.p-exam__progress {
  width: 43.92rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .p-exam__progress {
    width: 61rem;
  }
}

.p-exam__bar {
  position: relative;
  width: 100%;
  height: 7.776rem;
}
@media (max-width: 767px) {
  .p-exam__bar {
    height: 10.8rem;
  }
}

.p-exam__barTrack {
  position: absolute;
  top: 6.336rem;
  left: 0;
  display: block;
  width: 100%;
  height: 1.44rem;
  border-radius: 0.72rem;
  background: #F0F8EC;
}
@media (max-width: 767px) {
  .p-exam__barTrack {
    top: 8.8rem;
    height: 2rem;
    border-radius: 1rem;
  }
}

.p-exam__barFill {
  position: absolute;
  top: 6.336rem;
  left: 0;
  display: block;
  height: 1.44rem;
  border-radius: 0.72rem;
  background: #4C9A43;
}
@media (max-width: 767px) {
  .p-exam__barFill {
    top: 8.8rem;
    height: 2rem;
    border-radius: 1rem;
  }
}

.p-exam__barFill--25 {
  width: 10.944rem;
}
@media (max-width: 767px) {
  .p-exam__barFill--25 {
    width: 15.2rem;
  }
}

.p-exam__barFill--50 {
  width: 21.888rem;
}
@media (max-width: 767px) {
  .p-exam__barFill--50 {
    width: 30.4rem;
  }
}

.p-exam__barFill--75 {
  width: 32.832rem;
}
@media (max-width: 767px) {
  .p-exam__barFill--75 {
    width: 45.6rem;
  }
}

.p-exam__barFill--100 {
  width: 43.92rem;
}
@media (max-width: 767px) {
  .p-exam__barFill--100 {
    width: 61rem;
  }
}

.p-exam__barIcon {
  position: absolute;
  top: 0;
  display: block;
  width: 5.76rem;
  height: 7.776rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-exam__barIcon {
    width: 8rem;
    height: 10.8rem;
  }
}

.p-exam__barIcon--25 {
  left: 2.304rem;
}
@media (max-width: 767px) {
  .p-exam__barIcon--25 {
    left: 3.2rem;
  }
}

.p-exam__barIcon--50 {
  left: 13.248rem;
}
@media (max-width: 767px) {
  .p-exam__barIcon--50 {
    left: 18.4rem;
  }
}

.p-exam__barIcon--75 {
  left: 24.192rem;
}
@media (max-width: 767px) {
  .p-exam__barIcon--75 {
    left: 33.6rem;
  }
}

.p-exam__barIcon--100 {
  left: 35.28rem;
}
@media (max-width: 767px) {
  .p-exam__barIcon--100 {
    left: 49rem;
  }
}

.p-exam__status {
  margin-top: 0.576rem;
  font-size: 2.304rem;
  font-weight: 700;
  line-height: 1.5;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-exam__status {
    margin-top: 0.8rem;
    font-size: 3.2rem;
  }
}

.p-exam__card {
  position: relative;
  width: 100%;
  height: 68.256rem;
  margin-top: 2.88rem;
  border: 0.144rem solid #222222;
  border-radius: 1.152rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-exam__card {
    height: 94.8rem;
    margin-top: 4rem;
    border-width: 0.2rem;
    border-radius: 1.6rem;
  }
}

.p-exam__cardInner {
  position: absolute;
  top: 5.616rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 43.488rem;
}
@media (max-width: 767px) {
  .p-exam__cardInner {
    top: 7.8rem;
    width: 60.4rem;
  }
}

.p-exam__qNum {
  font-family: "Outfit", sans-serif;
  font-size: 4.608rem;
  font-weight: 400;
  line-height: 1.5;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-exam__qNum {
    font-size: 6.4rem;
  }
}

.p-exam__qText {
  margin-top: 1.152rem;
  font-size: 3.456rem;
  font-weight: 400;
  line-height: 1.5;
  color: #222222;
  text-align: center;
}
@media (max-width: 767px) {
  .p-exam__qText {
    margin-top: 1.6rem;
    font-size: 4.8rem;
  }
}

.p-exam__choices {
  width: 43.2rem;
  margin: 4.32rem auto 0;
}
@media (max-width: 767px) {
  .p-exam__choices {
    width: 60rem;
    margin-top: 6rem;
  }
}

.p-exam__choices--photo {
  width: 37.728rem;
}
@media (max-width: 767px) {
  .p-exam__choices--photo {
    width: 52.4rem;
  }
}

.p-exam__choice {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  min-height: 10.08rem;
  padding: 1.44rem 8.64rem;
  border: none;
  border-radius: 99.9rem;
  background: #4C9A43;
  cursor: pointer;
}
@media (max-width: 767px) {
  .p-exam__choice {
    min-height: 14rem;
    padding: 2rem 12rem;
  }
}

.p-exam__choice + .p-exam__choice {
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-exam__choice + .p-exam__choice {
    margin-top: 4rem;
  }
}

.p-exam__choice:hover {
  background: #70AE69;
}

.p-exam__choice:active {
  background: #70AE69;
}

.p-exam__choice--tall {
  min-height: 13.68rem;
}
@media (max-width: 767px) {
  .p-exam__choice--tall {
    min-height: 19rem;
  }
}

.p-exam__choice--photo {
  display: block;
  min-height: 0;
  height: 17.28rem;
  padding: 0;
  overflow: hidden;
  border-radius: 0.576rem;
  background: none;
}
@media (max-width: 767px) {
  .p-exam__choice--photo {
    height: 24rem;
    border-radius: 0.8rem;
  }
}

.p-exam__choice--photo:hover {
  background: none;
}

.p-exam__choice--photo:active {
  background: none;
}

.p-exam__choiceText {
  display: block;
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.4;
  color: #FFFFFF;
  text-align: center;
}
@media (max-width: 767px) {
  .p-exam__choiceText {
    font-size: 3.6rem;
  }
}

.p-exam__choicePhoto {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-exam__answer {
  position: absolute;
  top: 2.736rem;
  left: -0.144rem;
  width: 48.24rem;
}
@media (max-width: 767px) {
  .p-exam__answer {
    top: 3.8rem;
    left: -0.2rem;
    width: 67rem;
  }
}

.p-exam__answerHead {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 25.92rem;
}
@media (max-width: 767px) {
  .p-exam__answerHead {
    height: 36rem;
  }
}

.p-exam__answerTitle {
  position: absolute;
  top: 8.64rem;
  left: 4.032rem;
  width: 18.144rem;
  font-size: 7.2rem;
  font-weight: 400;
  line-height: 1.4;
  color: #222222;
  text-align: center;
}
@media (max-width: 767px) {
  .p-exam__answerTitle {
    top: 12rem;
    left: 5.6rem;
    width: 25.2rem;
    font-size: 10rem;
  }
}

.p-exam__answerTitle--wrong {
  left: 3.744rem;
  width: 21.6rem;
}
@media (max-width: 767px) {
  .p-exam__answerTitle--wrong {
    left: 5.2rem;
    width: 30rem;
  }
}

.p-exam__answerMark {
  position: absolute;
  top: 8.64rem;
  left: 22.176rem;
  display: block;
  width: 4.32rem;
  height: 10.08rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-exam__answerMark {
    top: 12rem;
    left: 30.8rem;
    width: 6rem;
    height: 14rem;
  }
}

.p-exam__answerChar {
  position: absolute;
  top: 0;
  left: 23.904rem;
  display: block;
  width: 24.336rem;
  height: 25.92rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-exam__answerChar {
    left: 33.2rem;
    width: 33.8rem;
    height: 36rem;
  }
}

.p-exam__box {
  position: absolute;
  top: 23.04rem;
  left: 3.888rem;
  z-index: 0;
  width: 40.464rem;
  padding: 2.88rem;
  border-radius: 1.152rem;
  background: #F0F8EC;
}
@media (max-width: 767px) {
  .p-exam__box {
    top: 32rem;
    left: 5.4rem;
    width: 56.2rem;
    padding: 4rem;
    border-radius: 1.6rem;
  }
}

.p-exam__boxText {
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1.8;
  color: #4C9A43;
  text-align: left;
}
@media (max-width: 767px) {
  .p-exam__boxText {
    font-size: 2.8rem;
  }
}

.p-exam__hintHead {
  width: 100%;
}

.p-exam__hintRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.864rem;
}
@media (max-width: 767px) {
  .p-exam__hintRow {
    gap: 1.2rem;
  }
}

.p-exam__hintIcon {
  display: block;
  width: 2.88rem;
  height: 2.88rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-exam__hintIcon {
    width: 4rem;
    height: 4rem;
  }
}

.p-exam__hintLabel {
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1.4;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-exam__hintLabel {
    font-size: 2.8rem;
  }
}

.p-exam__hintLine {
  display: block;
  width: 100%;
  height: 0.288rem;
  margin-top: 1.44rem;
  background-image: radial-gradient(circle, #4C9A43 0.144rem, transparent 0.144rem);
  background-size: 1.44rem 0.288rem;
  background-repeat: repeat-x;
}
@media (max-width: 767px) {
  .p-exam__hintLine {
    height: 0.4rem;
    margin-top: 2rem;
    background-image: radial-gradient(circle, #4C9A43 0.2rem, transparent 0.2rem);
    background-size: 2rem 0.4rem;
  }
}

.p-exam__hintText {
  margin-top: 2.88rem;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1.8;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-exam__hintText {
    margin-top: 4rem;
    font-size: 2.8rem;
  }
}

.p-exam__hintText--narrow {
  margin-top: 1.44rem;
}
@media (max-width: 767px) {
  .p-exam__hintText--narrow {
    margin-top: 2rem;
  }
}

.p-exam__hintLink {
  display: block;
  margin-top: 2.88rem;
  font-size: 2.016rem;
  font-weight: 400;
  line-height: 1.8;
  color: #4C9A43;
  text-align: center;
  text-decoration: underline;
}
@media (max-width: 767px) {
  .p-exam__hintLink {
    margin-top: 4rem;
    font-size: 2.8rem;
  }
}

.p-exam__cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 43.776rem;
  height: 8.784rem;
  margin: 2.88rem auto 0;
  border: none;
  border-radius: 14.4rem;
  background: #4C9A43;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.88rem;
  font-weight: 500;
  line-height: 1.448;
  color: #FFFFFF;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
}
@media (max-width: 767px) {
  .p-exam__cta {
    width: 60.8rem;
    height: 12.2rem;
    margin-top: 4rem;
    border-radius: 20rem;
    font-size: 4rem;
  }
}

.p-exam__cta:hover {
  background: #70AE69;
  color: #FFFFFF;
}

.p-exam__cta:active {
  background: #70AE69;
  color: #FFFFFF;
}

.p-examResult {
  position: relative;
  width: 100%;
  background: #FFFFFF;
}

.p-examResult__hero {
  position: relative;
  width: 100%;
  height: 68.4rem;
  overflow: hidden;
}
@media (max-width: 767px) {
  .p-examResult__hero {
    height: 95rem;
  }
}

.p-examResult__heroRays {
  position: absolute;
  top: 0.072rem;
  left: -32.832rem;
  display: block;
  width: 121.68rem;
  height: 63.792rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-examResult__heroRays {
    top: 0.1rem;
    left: -45.6rem;
    width: 169rem;
    height: 88.6rem;
  }
}

.p-examResult__heroSparkle {
  position: absolute;
  top: 27.864rem;
  left: 2.736rem;
  display: block;
  width: 5.76rem;
  height: 6.624rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-examResult__heroSparkle {
    top: 38.7rem;
    left: 3.8rem;
    width: 8rem;
    height: 9.2rem;
  }
}

.p-examResult__heroTitle {
  position: absolute;
  top: 4.104rem;
  left: 16.128rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 4.32rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.34em;
  color: #4C9A43;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-examResult__heroTitle {
    top: 5.7rem;
    left: 22.4rem;
    font-size: 6rem;
  }
}

.p-examResult__heroMt {
  position: absolute;
  top: 41.796rem;
  left: 0;
  display: block;
  width: 54rem;
  height: 26.64rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-examResult__heroMt {
    top: 58.1rem;
    width: 75rem;
    height: 37rem;
  }
}

.p-examResult__heroCard {
  position: absolute;
  top: 10.872rem;
  left: 8.64rem;
  display: block;
  width: 37.397rem;
  height: 42.624rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-examResult__heroCard {
    top: 15.1rem;
    left: 12rem;
    width: 51.9rem;
    height: 59.2rem;
  }
}

.p-examResult__message {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 4.176rem 2.88rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-examResult__message {
    padding: 0 5.8rem 4rem;
  }
}

.p-examResult__messageCatch {
  width: 100%;
  height: 7.056rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1.8;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-examResult__messageCatch {
    height: 9.8rem;
    font-size: 2.8rem;
  }
}

.p-examResult__messageText {
  width: 100%;
  height: 14.256rem;
  margin-top: 2.88rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1.8;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-examResult__messageText {
    height: 19.8rem;
    margin-top: 4rem;
    font-size: 2.8rem;
  }
}

.p-examResult__share {
  width: 100%;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-examResult__share {
    margin-top: 4rem;
  }
}

.p-examResult__shareLink {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 1.44rem;
  width: 100%;
  height: 15.12rem;
}
@media (max-width: 767px) {
  .p-examResult__shareLink {
    gap: 2rem;
    height: 21rem;
  }
}

.p-examResult__shareBg {
  position: absolute;
  top: 4.932rem;
  left: 50%;
  display: block;
  width: 45.504rem;
  height: 10.224rem;
  border-radius: 0.576rem;
  background: #4C9A43;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (max-width: 767px) {
  .p-examResult__shareBg {
    top: 6.9rem;
    width: 63.2rem;
    height: 14.2rem;
    border-radius: 0.8rem;
  }
}

.p-examResult__shareGirl {
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 11.376rem;
  height: 15.12rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-examResult__shareGirl {
    width: 15.8rem;
    height: 21rem;
  }
}

.p-examResult__shareBody {
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.44rem;
  width: 29.808rem;
  height: 7.92rem;
  padding-bottom: 2.88rem;
}
@media (max-width: 767px) {
  .p-examResult__shareBody {
    gap: 2rem;
    width: 41.4rem;
    height: 11rem;
    padding-bottom: 4rem;
  }
}

.p-examResult__shareLabel {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 23.328rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.16rem;
  font-weight: 700;
  line-height: 1.4667;
  color: #FFFFFF;
}
@media (max-width: 767px) {
  .p-examResult__shareLabel {
    width: 32.4rem;
    font-size: 3rem;
  }
}

.p-examResult__shareArrow {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 6.48rem;
  height: 5.04rem;
  margin-right: -1.44rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-examResult__shareArrow {
    width: 9rem;
    height: 7rem;
    margin-right: -2rem;
  }
}

.p-examResult__memo {
  position: relative;
  padding: 4.32rem 3.6rem 8.64rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-examResult__memo {
    padding: 6rem 5rem 12rem;
  }
}

.p-examResult__memoBody {
  position: relative;
  width: 46.8rem;
  height: 25.344rem;
  border: 0.072rem solid #222222;
  overflow: hidden;
  background-color: #F0F8EC;
  background-image: repeating-linear-gradient(to bottom, rgba(255, 255, 255, 0.5019607843) 0 1px, transparent 1px 2.16rem), repeating-linear-gradient(to right, rgba(255, 255, 255, 0.5019607843) 0 1px, transparent 1px 2.16rem);
  background-position: 0 1.44rem, -0.288rem 0;
}
@media (max-width: 767px) {
  .p-examResult__memoBody {
    width: 65rem;
    height: 35.2rem;
    border-width: 0.1rem;
    background-image: repeating-linear-gradient(to bottom, rgba(255, 255, 255, 0.5019607843) 0 1px, transparent 1px 3rem), repeating-linear-gradient(to right, rgba(255, 255, 255, 0.5019607843) 0 1px, transparent 1px 3rem);
    background-position: 0 2rem, -0.4rem 0;
  }
}

.p-examResult__memoInner {
  width: 40.464rem;
  margin: 4.32rem auto 0;
}
@media (max-width: 767px) {
  .p-examResult__memoInner {
    width: 56.2rem;
    margin-top: 6rem;
  }
}

.p-examResult__memoTitle {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.304rem;
  font-weight: 700;
  line-height: 1.6875;
  letter-spacing: 0.04em;
  color: #222222;
}
@media (max-width: 767px) {
  .p-examResult__memoTitle {
    font-size: 3.2rem;
  }
}

.p-examResult__memoText {
  margin-top: 1.152rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.8;
  color: #222222;
}
@media (max-width: 767px) {
  .p-examResult__memoText {
    margin-top: 1.6rem;
    font-size: 2.4rem;
  }
}

.p-examResult__memoLink {
  margin-top: 1.627rem;
}
@media (max-width: 767px) {
  .p-examResult__memoLink {
    margin-top: 2.3rem;
  }
}

.p-examResult__memoLinkRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.576rem;
  width: 40.032rem;
}
@media (max-width: 767px) {
  .p-examResult__memoLinkRow {
    gap: 0.8rem;
    width: 55.6rem;
  }
}

.p-examResult__memoLinkText {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1.4286;
  color: #4C9A43;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-examResult__memoLinkText {
    font-size: 2.8rem;
  }
}

.p-examResult__memoArrow {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 3.168rem;
  height: 3.168rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-examResult__memoArrow {
    width: 4.4rem;
    height: 4.4rem;
  }
}

.p-examResult__memoLine {
  display: block;
  width: 39.6rem;
  height: 0.144rem;
  margin-top: 0.576rem;
  background: #4C9A43;
}
@media (max-width: 767px) {
  .p-examResult__memoLine {
    width: 55rem;
    height: 0.2rem;
    margin-top: 0.8rem;
  }
}

.p-examResult__memoCorner {
  position: absolute;
  display: block;
  width: 9.775rem;
  height: 9.775rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-examResult__memoCorner {
    width: 13.6rem;
    height: 13.6rem;
  }
}

.p-examResult__memoCorner--tl {
  top: 1.44rem;
  left: 0.72rem;
}
@media (max-width: 767px) {
  .p-examResult__memoCorner--tl {
    top: 2rem;
    left: 1rem;
  }
}

.p-examResult__memoCorner--br {
  top: 22.896rem;
  left: 43.632rem;
}
@media (max-width: 767px) {
  .p-examResult__memoCorner--br {
    top: 31.8rem;
    left: 60.6rem;
  }
}

.p-examResult__ranks {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 8.64rem 2.88rem;
  background: #F0F8EC;
}
@media (max-width: 767px) {
  .p-examResult__ranks {
    padding: 12rem 4rem;
  }
}

.p-examResult__ranksHead {
  width: 100%;
}

.p-examResult__ranksTitle {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.456rem;
  font-weight: 700;
  line-height: 1.125;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-examResult__ranksTitle {
    font-size: 4.8rem;
  }
}

.p-examResult__ranksCount {
  width: 13.968rem;
  height: 3.888rem;
  margin: 1.152rem auto 0;
  padding: 0.144rem 3.6rem;
  border: 0.144rem solid #4C9A43;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.3;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-examResult__ranksCount {
    width: 19.4rem;
    height: 5.4rem;
    margin-top: 1.6rem;
    padding: 0.2rem 5rem;
    border-width: 0.2rem;
    font-size: 3.6rem;
  }
}

.p-examResult__ranksLead {
  margin-top: 2.304rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 400;
  line-height: 1.3571;
  color: #222222;
  text-align: center;
}
@media (max-width: 767px) {
  .p-examResult__ranksLead {
    margin-top: 3.2rem;
    font-size: 2.8rem;
  }
}

.p-examResult__rankList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2.304rem;
  width: 47.952rem;
  height: 24.768rem;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-examResult__rankList {
    gap: 3.2rem;
    width: 66.6rem;
    height: 34.4rem;
    margin-top: 4rem;
  }
}

.p-examResult__rankCard {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 9.36rem;
  height: 20.448rem;
}
@media (max-width: 767px) {
  .p-examResult__rankCard {
    width: 13rem;
    height: 28.4rem;
  }
}

.p-examResult__rankCard--01 {
  width: 12.96rem;
  height: 24.768rem;
  border: 0.144rem solid #80C269;
  border-radius: 14.4rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-examResult__rankCard--01 {
    width: 18rem;
    height: 34.4rem;
    border-width: 0.2rem;
    border-radius: 20rem;
  }
}

.p-examResult__rankRound {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 500;
  line-height: 1.5;
  color: #222222;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-examResult__rankRound {
    font-size: 2.8rem;
  }
}

.p-examResult__rankIcon {
  display: block;
  margin-top: 0.864rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-examResult__rankIcon {
    margin-top: 1.2rem;
  }
}

.p-examResult__rankIcon--01 {
  width: 5.328rem;
  height: 9.36rem;
}
@media (max-width: 767px) {
  .p-examResult__rankIcon--01 {
    width: 7.4rem;
    height: 13rem;
  }
}

.p-examResult__rankIcon--02 {
  width: 4.464rem;
  height: 9.36rem;
}
@media (max-width: 767px) {
  .p-examResult__rankIcon--02 {
    width: 6.2rem;
    height: 13rem;
  }
}

.p-examResult__rankIcon--03 {
  width: 5.76rem;
  height: 9.36rem;
}
@media (max-width: 767px) {
  .p-examResult__rankIcon--03 {
    width: 8rem;
    height: 13rem;
  }
}

.p-examResult__rankIcon--04 {
  width: 7.776rem;
  height: 9.36rem;
}
@media (max-width: 767px) {
  .p-examResult__rankIcon--04 {
    width: 10.8rem;
    height: 13rem;
  }
}

.p-examResult__rankName {
  margin-top: 1.728rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.304rem;
  font-weight: 500;
  line-height: 1.5;
  color: #222222;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-examResult__rankName {
    margin-top: 2.4rem;
    font-size: 3.2rem;
  }
}

.p-examResult__rankNameSub {
  display: block;
  font-size: 1.44rem;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .p-examResult__rankNameSub {
    font-size: 2rem;
  }
}

.p-examResult__talk {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.152rem;
  width: 48.24rem;
  height: 17.568rem;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-examResult__talk {
    gap: 1.6rem;
    width: 67rem;
    height: 24.4rem;
    margin-top: 4rem;
  }
}

.p-examResult__talkAvatar {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 12.384rem;
}
@media (max-width: 767px) {
  .p-examResult__talkAvatar {
    width: 17.2rem;
  }
}

.p-examResult__talkAvatarBox {
  position: relative;
  width: 12.384rem;
  height: 12.816rem;
}
@media (max-width: 767px) {
  .p-examResult__talkAvatarBox {
    width: 17.2rem;
    height: 17.8rem;
  }
}

.p-examResult__talkAvatarImg {
  position: absolute;
  top: -2.88rem;
  left: -0.36rem;
  display: block;
  width: 13.248rem;
  height: 15.768rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-examResult__talkAvatarImg {
    top: -4rem;
    left: -0.5rem;
    width: 18.4rem;
    height: 21.9rem;
  }
}

.p-examResult__talkName {
  margin-top: 0.576rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.296rem;
  font-weight: 400;
  line-height: 1.8;
  color: #222222;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-examResult__talkName {
    margin-top: 0.8rem;
    font-size: 1.8rem;
  }
}

.p-examResult__talkBubble {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 34.704rem;
  height: 14.976rem;
  padding: 1.44rem 2.016rem;
  border: 0.072rem solid #222222;
  border-radius: 0 1.44rem 1.44rem 1.44rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-examResult__talkBubble {
    width: 48.2rem;
    height: 20.8rem;
    padding: 2rem 2.8rem;
    border-width: 0.1rem;
    border-radius: 0 2rem 2rem 2rem;
  }
}

.p-examResult__talkText {
  width: 30.672rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 400;
  line-height: 1.5;
  color: #222222;
}
@media (max-width: 767px) {
  .p-examResult__talkText {
    width: 42.6rem;
    font-size: 2.8rem;
  }
}

.p-examResult__talkStrong {
  font-weight: 700;
  color: #4C9A43;
}

.p-examResult__trip {
  position: relative;
}

.p-examResult__tripMap {
  position: relative;
  width: 100%;
  height: 74.304rem;
}
@media (max-width: 767px) {
  .p-examResult__tripMap {
    height: 103.2rem;
  }
}

.p-examResult__tripMapImg {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-examResult__tripPin {
  position: absolute;
  display: block;
  width: 5.616rem;
  height: 8.208rem;
}
@media (max-width: 767px) {
  .p-examResult__tripPin {
    width: 7.8rem;
    height: 11.4rem;
  }
}

.p-examResult__tripPin--01 {
  top: 29.376rem;
  left: 3.456rem;
}
@media (max-width: 767px) {
  .p-examResult__tripPin--01 {
    top: 40.8rem;
    left: 4.8rem;
  }
}

.p-examResult__tripPin--02 {
  top: 27.216rem;
  left: 23.904rem;
}
@media (max-width: 767px) {
  .p-examResult__tripPin--02 {
    top: 37.8rem;
    left: 33.2rem;
  }
}

.p-examResult__tripPin--03 {
  top: 15.696rem;
  left: 38.304rem;
}
@media (max-width: 767px) {
  .p-examResult__tripPin--03 {
    top: 21.8rem;
    left: 53.2rem;
  }
}

.p-examResult__tripPin--04 {
  top: 44.064rem;
  left: 39.6rem;
}
@media (max-width: 767px) {
  .p-examResult__tripPin--04 {
    top: 61.2rem;
    left: 55rem;
  }
}

.p-examResult__tripBack {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 5.904rem;
  background: #1B97C8;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1.5;
  color: #FFFFFF;
  text-align: center;
}
@media (max-width: 767px) {
  .p-examResult__tripBack {
    height: 8.2rem;
    font-size: 2.8rem;
  }
}

.p-quiz__button {
  text-decoration: none;
}

.p-examResult__heroRays,
.p-examResult__talkAvatarImg,
.p-campaign__prizeImg,
.p-campaign__masterPicImg,
.p-quiz__bitekikoImg {
  max-width: none;
}

.u-anime {
  opacity: 0;
  translate: 0 1.44rem;
  -webkit-transition: opacity 0.9s ease-out, translate 0.9s ease-out;
  transition: opacity 0.9s ease-out, translate 0.9s ease-out;
}
@media (max-width: 767px) {
  .u-anime {
    translate: 0 2rem;
  }
}

.u-anime.is-shown {
  opacity: 1;
  translate: 0 0;
}

.u-twist__inner {
  position: relative;
  display: block;
  overflow: hidden;
}

.u-twist__front,
.u-twist__back {
  display: block;
}

.u-twist__back {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.u-twist__char {
  display: inline-block;
  -webkit-transition: opacity 0.4s cubic-bezier(0.2, 0.63, 0.4, 1.02), -webkit-transform 0.4s cubic-bezier(0.2, 0.63, 0.4, 1.02);
  transition: opacity 0.4s cubic-bezier(0.2, 0.63, 0.4, 1.02), -webkit-transform 0.4s cubic-bezier(0.2, 0.63, 0.4, 1.02);
  transition: opacity 0.4s cubic-bezier(0.2, 0.63, 0.4, 1.02), transform 0.4s cubic-bezier(0.2, 0.63, 0.4, 1.02);
  transition: opacity 0.4s cubic-bezier(0.2, 0.63, 0.4, 1.02), transform 0.4s cubic-bezier(0.2, 0.63, 0.4, 1.02), -webkit-transform 0.4s cubic-bezier(0.2, 0.63, 0.4, 1.02);
  -webkit-transition-delay: calc(0.015s * var(--index));
          transition-delay: calc(0.015s * var(--index));
}

.u-twist__back .u-twist__char {
  opacity: 0;
  -webkit-transform: translateY(101%) skewX(55deg);
          transform: translateY(101%) skewX(55deg);
}

.u-twist.is-twisted .u-twist__back .u-twist__char {
  opacity: 1;
  -webkit-transform: none;
          transform: none;
}

.u-twist.is-twisted .u-twist__front .u-twist__char {
  opacity: 0;
  -webkit-transform: translateY(-101%) skewX(-55deg);
          transform: translateY(-101%) skewX(-55deg);
}

.u-scrollChar {
  color: #C8C8C8;
  -webkit-transition: color 0.3s ease-out;
  transition: color 0.3s ease-out;
}

.u-scrollChar.is-on {
  color: #222222;
}

@-webkit-keyframes u-arrowLoop {
  0% {
    opacity: 1;
    translate: 0 0;
  }
  38% {
    opacity: 0;
    translate: 32% 0;
  }
  39% {
    opacity: 0;
    translate: -32% 0;
  }
  76% {
    opacity: 1;
    translate: 0 0;
  }
  100% {
    opacity: 1;
    translate: 0 0;
  }
}

@keyframes u-arrowLoop {
  0% {
    opacity: 1;
    translate: 0 0;
  }
  38% {
    opacity: 0;
    translate: 32% 0;
  }
  39% {
    opacity: 0;
    translate: -32% 0;
  }
  76% {
    opacity: 1;
    translate: 0 0;
  }
  100% {
    opacity: 1;
    translate: 0 0;
  }
}
.p-entry__ctaIcon {
  -webkit-animation: u-arrowLoop 2.4s ease-in-out infinite;
          animation: u-arrowLoop 2.4s ease-in-out infinite;
}

.p-examResult__shareArrow {
  -webkit-animation: u-arrowLoop 2.4s ease-in-out infinite;
          animation: u-arrowLoop 2.4s ease-in-out infinite;
}

.c-drawer {
  opacity: 1;
  -webkit-transition: visibility 0.4s ease;
  transition: visibility 0.4s ease;
}

.c-drawer__close {
  opacity: 0;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}

body.is-menuOpen .c-drawer__close {
  opacity: 1;
}

.c-drawer__panel {
  translate: 100% 0;
  -webkit-transition: translate 0.4s ease;
  transition: translate 0.4s ease;
}

body.is-menuOpen .c-drawer__panel {
  translate: 0 0;
}

.c-drawer__item {
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}

.c-drawer__item:hover,
.c-drawer__item:active {
  opacity: 0.6;
}

.c-drawer__quizBtn {
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}

.c-drawer__quizBtn:hover,
.c-drawer__quizBtn:active {
  opacity: 0.6;
}

.c-menuFixed {
  position: fixed;
  top: 0;
  left: 50%;
  z-index: 1080;
  width: 54rem;
  height: 0;
  translate: -50% 0;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
@media (max-width: 767px) {
  .c-menuFixed {
    width: 100%;
  }
}

body.is-menuFixed .c-menuFixed {
  opacity: 1;
  visibility: visible;
}

body.is-menuOpen .c-menuFixed {
  opacity: 0;
  visibility: hidden;
}

.c-menu--fixed {
  pointer-events: auto;
}

.p-exam__choice {
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}

.p-pickup__visualCatch {
  position: absolute;
  top: 4.32rem;
  left: 40.032rem;
  width: 3.888rem;
  height: 42.624rem;
  clip-path: inset(0 0 100% 0);
  -webkit-transition: clip-path 1s ease-out 0.3s;
  transition: clip-path 1s ease-out 0.3s;
}
@media (max-width: 767px) {
  .p-pickup__visualCatch {
    top: 6rem;
    left: 55.6rem;
    width: 5.4rem;
    height: 59.2rem;
  }
}

.p-pickup__visualCatch.is-shown {
  clip-path: inset(0 0 0 0);
}

.p-prize__cards,
.p-period__rank {
  cursor: -webkit-grab;
  cursor: grab;
}

.p-prize__cards.is-dragging,
.p-period__rank.is-dragging {
  cursor: -webkit-grabbing;
  cursor: grabbing;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.c-menu__bar,
.c-drawer__closeBar {
  height: 1px;
}

.c-menuFixed {
  top: 8rem;
  -webkit-transition: none;
  transition: none;
}
@media (max-width: 767px) {
  .c-menuFixed {
    top: 0;
  }
}

body.is-menuFixed .p-intro .c-menu {
  visibility: hidden;
}

.p-campaign__cardMore {
  display: block;
  text-decoration: none;
}

.p-campaign__cardArrow {
  cursor: pointer;
}

.p-prize.is-master .p-prize__tab--rank {
  background: #BCE3AE;
  color: #4C9A43;
}

.p-prize.is-master .p-prize__tab--master {
  background: #4C9A43;
  color: #FFFFFF;
}

.p-prize__tab {
  cursor: pointer;
}

.p-prize__master {
  display: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-top: 0.576rem solid #4C9A43;
  padding: 5.76rem 5.04rem 2.88rem 5.184rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-prize__master {
    border-top-width: 0.8rem;
    padding: 8rem 7rem 4rem 7.2rem;
  }
}

.p-prize.is-master .p-prize__master {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.p-prize.is-master .p-prize__share {
  display: none;
}

.p-prize.is-master .p-prize__cards {
  display: none;
}

.p-prize__masterLead {
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #222222;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__masterLead {
    font-size: 3.6rem;
  }
}

.p-prize__masterCount {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-top: 1.44rem;
}
@media (max-width: 767px) {
  .p-prize__masterCount {
    margin-top: 2rem;
  }
}

.p-prize__masterNum {
  font-family: "Outfit", sans-serif;
  font-size: 6.912rem;
  font-weight: 400;
  line-height: 0.875;
  letter-spacing: 0.04em;
  color: #4C9A43;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__masterNum {
    font-size: 9.6rem;
  }
}

.p-prize__masterUnit {
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #222222;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__masterUnit {
    font-size: 3.6rem;
  }
}

.p-prize__masterAccent {
  color: #4C9A43;
}

.p-prize__masterTitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.88rem;
  width: 44.064rem;
  margin-top: 5.76rem;
}
@media (max-width: 767px) {
  .p-prize__masterTitle {
    gap: 4rem;
    width: 61.2rem;
    margin-top: 8rem;
  }
}

.p-prize__masterLine {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 7.2rem;
  height: 0;
  border-top: 1px solid #4C9A43;
}
@media (max-width: 767px) {
  .p-prize__masterLine {
    width: 10rem;
  }
}

.p-prize__masterTitleText {
  font-size: 2.592rem;
  font-weight: 500;
  line-height: 1.4;
  color: #4C9A43;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__masterTitleText {
    font-size: 3.6rem;
  }
}

.p-prize__masterPics {
  position: relative;
  width: 44.064rem;
  height: 23.04rem;
  margin-top: 2.304rem;
}
@media (max-width: 767px) {
  .p-prize__masterPics {
    width: 61.2rem;
    height: 32rem;
    margin-top: 3.2rem;
  }
}

.p-prize__masterPic {
  position: absolute;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-prize__masterPic--01 {
  top: 0.022rem;
  left: 2.714rem;
  width: 8.928rem;
  height: 22.817rem;
}
@media (max-width: 767px) {
  .p-prize__masterPic--01 {
    top: 0;
    left: 3.8rem;
    width: 12.4rem;
    height: 31.7rem;
  }
}

.p-prize__masterPic--02 {
  top: 1.817rem;
  left: 11.822rem;
  width: 7.152rem;
  height: 21.146rem;
}
@media (max-width: 767px) {
  .p-prize__masterPic--02 {
    top: 2.5rem;
    left: 16.4rem;
    width: 9.9rem;
    height: 29.4rem;
  }
}

.p-prize__masterPic--03 {
  top: 2.477rem;
  left: 19.752rem;
  width: 6.114rem;
  height: 20.344rem;
}
@media (max-width: 767px) {
  .p-prize__masterPic--03 {
    top: 3.4rem;
    left: 27.4rem;
    width: 8.5rem;
    height: 28.3rem;
  }
}

.p-prize__masterPic--04 {
  top: 7.021rem;
  left: 28.099rem;
  width: 6.188rem;
  height: 15.886rem;
}
@media (max-width: 767px) {
  .p-prize__masterPic--04 {
    top: 9.8rem;
    left: 39rem;
    width: 8.6rem;
    height: 22.1rem;
  }
}

.p-prize__masterPic--05 {
  top: 7.125rem;
  left: 36.634rem;
  width: 4.408rem;
  height: 15.376rem;
}
@media (max-width: 767px) {
  .p-prize__masterPic--05 {
    top: 9.9rem;
    left: 50.9rem;
    width: 6.1rem;
    height: 21.4rem;
  }
}

.p-prize__masterName {
  width: 43.776rem;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-prize__masterName {
    width: 60.8rem;
    margin-top: 4rem;
  }
}

.p-prize__masterBrand {
  font-size: 1.728rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  color: #222222;
  text-align: center;
}
@media (max-width: 767px) {
  .p-prize__masterBrand {
    font-size: 2.4rem;
  }
}

.p-prize__masterItem {
  margin-top: 0.576rem;
  font-size: 2.016rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  color: #222222;
  text-align: center;
}
@media (max-width: 767px) {
  .p-prize__masterItem {
    margin-top: 0.8rem;
    font-size: 2.8rem;
  }
}

.p-prize__masterSet {
  width: 43.776rem;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-prize__masterSet {
    width: 60.8rem;
    margin-top: 4rem;
  }
}

.p-prize__masterSetTitle {
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.04em;
  color: #222222;
  text-align: center;
}
@media (max-width: 767px) {
  .p-prize__masterSetTitle {
    font-size: 2.4rem;
  }
}

.p-prize__masterSetItem {
  font-size: 1.728rem;
  font-weight: 400;
  line-height: 2.4;
  letter-spacing: 0.04em;
  color: #222222;
  text-align: center;
  text-decoration: underline;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-prize__masterSetItem {
    font-size: 2.4rem;
  }
}

.p-prize__masterTalk {
  position: relative;
  width: 48.24rem;
  height: 14.256rem;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-prize__masterTalk {
    width: 67rem;
    height: 19.8rem;
    margin-top: 4rem;
  }
}

.p-prize__masterMascot {
  position: absolute;
  top: -0.305rem;
  left: -0.36rem;
  display: block;
  width: 13.104rem;
  height: 13.536rem;
  max-width: none;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-prize__masterMascot {
    top: -0.4rem;
    left: -0.5rem;
    width: 18.2rem;
    height: 18.8rem;
  }
}

.p-prize__masterBubble {
  position: absolute;
  top: 2.143rem;
  left: 13.464rem;
  width: 34.704rem;
  padding: 1.44rem 2.016rem;
  border: 0.072rem solid #222222;
  border-radius: 0 1.44rem 1.44rem 1.44rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-prize__masterBubble {
    top: 3rem;
    left: 18.7rem;
    width: 48.2rem;
    padding: 2rem 2.8rem;
    border-width: 0.1rem;
    border-radius: 0 2rem 2rem 2rem;
  }
}

.p-prize__masterBubbleText {
  font-size: 2.016rem;
  font-weight: 400;
  line-height: 1.8;
  color: #222222;
}
@media (max-width: 767px) {
  .p-prize__masterBubbleText {
    font-size: 2.8rem;
  }
}

.p-credit__termsUnderline {
  color: inherit;
}

.p-prize__cardNameLink,
.p-prize__masterSetLink {
  color: inherit;
  text-decoration: underline;
}

.p-intro {
  padding: 4.32rem 2.88rem 8.64rem;
}
@media (max-width: 767px) {
  .p-intro {
    padding: 6rem 4rem 12rem;
  }
}

.p-campaign__prize {
  padding: 1.44rem 0 5.76rem;
}
@media (max-width: 767px) {
  .p-campaign__prize {
    padding: 2rem 0 8rem;
  }
}


.p-prize__cardName {
  width: 32.4rem;
  font-size: 2.304rem;
  white-space: normal;
}
@media (max-width: 767px) {
  .p-prize__cardName {
    width: 45rem;
    font-size: 3.2rem;
  }
}

.p-prize__cardCategory {
  width: 38.16rem;
  margin-top: 0.576rem;
  font-size: 1.728rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.1667em;
  color: #222222;
  text-align: center;
}
@media (max-width: 767px) {
  .p-prize__cardCategory {
    width: 53rem;
    margin-top: 0.8rem;
    font-size: 2.4rem;
  }
}

.p-pickup__visualCatch {
  height: 52.128rem;
}
@media (max-width: 767px) {
  .p-pickup__visualCatch {
    height: 72.4rem;
  }
}

body.page-top {
  background-image: none;
}

.page-top .l-main {
  contain: none;
}

.p-topKv {
  position: relative;
  background: #FFFFFF;
}

.p-topKv__img {
  display: block;
  width: 100%;
  height: auto;
}

.p-topKv__pin {
  position: absolute;
  display: block;
  width: 9.072rem;
  translate: -50% -100%;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}
@media (max-width: 767px) {
  .p-topKv__pin {
    width: 12.6rem;
  }
}

.p-topKv__pin.is-active {
  opacity: 1;
}

.p-topKv__pinImg {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
}

.p-topKv__pin--01 {
  top: 41.583rem;
  left: 6.048rem;
}
@media (max-width: 767px) {
  .p-topKv__pin--01 {
    top: 57.8rem;
    left: 8.4rem;
  }
}

.p-topKv__pin--02 {
  top: 41.727rem;
  left: 25.92rem;
}
@media (max-width: 767px) {
  .p-topKv__pin--02 {
    top: 58rem;
    left: 36rem;
  }
}

.p-topKv__pin--03 {
  top: 29.343rem;
  left: 41.904rem;
}
@media (max-width: 767px) {
  .p-topKv__pin--03 {
    top: 40.8rem;
    left: 58.2rem;
  }
}

.p-topKv__pin--04 {
  top: 51.951rem;
  left: 41.76rem;
}
@media (max-width: 767px) {
  .p-topKv__pin--04 {
    top: 72.2rem;
    left: 58rem;
  }
}

.p-topLead {
  background: #FFFFFF;
}

.p-topLead__brand {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-topLead__brand {
    padding-top: 4rem;
  }
}

.p-topLead__logo {
  display: block;
  width: 14.098rem;
  height: auto;
}
@media (max-width: 767px) {
  .p-topLead__logo {
    width: 19.6rem;
  }
}

.p-topLead__cross {
  position: relative;
  display: block;
  width: 2.246rem;
  height: 2.246rem;
  margin-left: 3.038rem;
}
@media (max-width: 767px) {
  .p-topLead__cross {
    width: 3.1rem;
    height: 3.1rem;
    margin-left: 4.2rem;
  }
}

.p-topLead__cross::before,
.p-topLead__cross::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -20.7%;
  width: 141.4%;
  height: 1px;
  background: #888888;
}

.p-topLead__cross::before {
  rotate: 45deg;
}

.p-topLead__cross::after {
  rotate: -45deg;
}

.p-topLead__biteki {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 2.88rem;
}
@media (max-width: 767px) {
  .p-topLead__biteki {
    margin-left: 4rem;
  }
}

.p-topLead__bitekiLogo {
  display: block;
  width: 6.019rem;
  height: auto;
}
@media (max-width: 767px) {
  .p-topLead__bitekiLogo {
    width: 8.4rem;
  }
}

.p-topLead__bitekiText {
  margin-left: 0.461rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.509rem;
  font-weight: 400;
  line-height: 1.448;
  color: #4CC1F1;
}
@media (max-width: 767px) {
  .p-topLead__bitekiText {
    margin-left: 0.6rem;
    font-size: 3.5rem;
  }
}

.p-topLead__text {
  margin-top: 7.2rem;
  padding: 0 2.88rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #000000;
  text-align: center;
}
@media (max-width: 767px) {
  .p-topLead__text {
    margin-top: 10rem;
    padding: 0 4rem;
    font-size: 3.6rem;
  }
}

.p-topProfile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 7.2rem 0 0;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-topProfile {
    padding-top: 10rem;
  }
}

.p-topProfile__card {
  position: relative;
  width: 48.24rem;
  height: 31.248rem;
  border: 0.072rem solid #222222;
  background-color: #FFFFFF;
  background-image: repeating-linear-gradient(to right, #E4E4E4 0, #E4E4E4 1px, transparent 1px, transparent 2.016rem), repeating-linear-gradient(to bottom, #E4E4E4 0, #E4E4E4 1px, transparent 1px, transparent 2.016rem);
}
@media (max-width: 767px) {
  .p-topProfile__card {
    width: 67rem;
    height: 43.4rem;
    border-width: 0.1rem;
    background-image: repeating-linear-gradient(to right, #E4E4E4 0, #E4E4E4 1px, transparent 1px, transparent 2.8rem), repeating-linear-gradient(to bottom, #E4E4E4 0, #E4E4E4 1px, transparent 1px, transparent 2.8rem);
  }
}

.p-topProfile__body {
  position: absolute;
  top: 2.88rem;
  left: 3.456rem;
  width: 39.744rem;
}
@media (max-width: 767px) {
  .p-topProfile__body {
    top: 4rem;
    left: 4.8rem;
    width: 55.2rem;
  }
}

.p-topProfile__label {
  font-family: "Akshar", sans-serif;
  font-size: 1.728rem;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: 0.02em;
  color: #1B97C8;
  text-align: center;
}
@media (max-width: 767px) {
  .p-topProfile__label {
    font-size: 2.4rem;
  }
}

.p-topProfile__text {
  margin-top: 0.72rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.1em;
  color: #222222;
}
@media (max-width: 767px) {
  .p-topProfile__text {
    margin-top: 1rem;
    font-size: 2.8rem;
  }
}

.p-topProfile__img {
  position: absolute;
  top: 12.672rem;
  left: 10.8rem;
  display: block;
  width: 36.72rem;
  height: auto;
  max-width: none;
}
@media (max-width: 767px) {
  .p-topProfile__img {
    top: 17.6rem;
    left: 15rem;
    width: 51rem;
  }
}

.p-topProfile__corner {
  position: absolute;
  display: block;
  width: 6.624rem;
  height: auto;
  max-width: none;
}
@media (max-width: 767px) {
  .p-topProfile__corner {
    width: 9.2rem;
  }
}

.p-topProfile__corner--tl {
  top: -1.296rem;
  left: -1.584rem;
}
@media (max-width: 767px) {
  .p-topProfile__corner--tl {
    top: -1.8rem;
    left: -2.2rem;
  }
}

.p-topProfile__corner--br {
  top: 26.208rem;
  left: 42.912rem;
}
@media (max-width: 767px) {
  .p-topProfile__corner--br {
    top: 36.4rem;
    left: 59.6rem;
  }
}

.p-topProfile__credit {
  margin-top: 1.44rem;
  font-family: "Akshar", sans-serif;
  font-size: 1.44rem;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.1em;
  color: #4C9A43;
  text-align: center;
}
@media (max-width: 767px) {
  .p-topProfile__credit {
    margin-top: 2rem;
    font-size: 2rem;
  }
}

.p-topBand {
  position: relative;
  overflow: hidden;
}

.p-topBand__img {
  display: block;
  max-width: none;
}

.p-topBand--mt {
  height: 26.64rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-topBand--mt {
    height: 37rem;
  }
}

.p-topBand--mt .p-topBand__img {
  position: absolute;
  top: 2.491rem;
  left: -8.064rem;
  width: 74.448rem;
  height: auto;
}
@media (max-width: 767px) {
  .p-topBand--mt .p-topBand__img {
    top: 3.5rem;
    left: -11.2rem;
    width: 103.4rem;
  }
}

.p-topBand--labo {
  height: 26.64rem;
  background: #BCE3AE;
}
@media (max-width: 767px) {
  .p-topBand--labo {
    height: 37rem;
  }
}

.p-topBand--labo .p-topBand__img {
  position: absolute;
  top: -0.864rem;
  left: 0;
  width: 100%;
  height: auto;
}
@media (max-width: 767px) {
  .p-topBand--labo .p-topBand__img {
    top: -1.2rem;
  }
}

.p-topBand--city {
  height: 37.44rem;
  background: #AEE1F2;
}
@media (max-width: 767px) {
  .p-topBand--city {
    height: 52rem;
  }
}

.p-topBand--shop {
  height: 37.44rem;
  background: #F9C7C9;
}
@media (max-width: 767px) {
  .p-topBand--shop {
    height: 52rem;
  }
}

.p-topBand--city .p-topBand__img,
.p-topBand--shop .p-topBand__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
}

.p-topArea {
  padding: 2.88rem 2.88rem 8.64rem;
}
@media (max-width: 767px) {
  .p-topArea {
    padding: 4rem 4rem 12rem;
  }
}

.p-topArea--01 {
  background: #BCE3AE;
}

.p-topArea--02 {
  background: #AEE1F2;
}

.p-topArea--03 {
  padding-top: 5.76rem;
  background: #F9C7C9;
}
@media (max-width: 767px) {
  .p-topArea--03 {
    padding-top: 8rem;
  }
}

.p-topArea--04 {
  padding-top: 5.76rem;
  background: #FFCE8C;
}
@media (max-width: 767px) {
  .p-topArea--04 {
    padding-top: 8rem;
  }
}

.p-topArea__card {
  position: relative;
  padding: 5.76rem 2.88rem;
}
@media (max-width: 767px) {
  .p-topArea__card {
    padding: 8rem 4rem;
  }
}

.p-topArea--01 .p-topArea__card {
  background: #F0F8EC;
}

.p-topArea--02 .p-topArea__card {
  background: #ECF7FA;
}

.p-topArea--03 .p-topArea__card {
  background: #FDF0F1;
}

.p-topArea--04 .p-topArea__card {
  background: #FCF5EA;
}

.p-topArea__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.872rem;
}
@media (max-width: 767px) {
  .p-topArea__head {
    gap: 2.6rem;
  }
}

.p-topArea__pin {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 7.2rem;
  height: 10.656rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-topArea__pin {
    width: 10rem;
    height: 14.8rem;
  }
}

.p-topArea__heading {
  padding-top: 0;
}

.p-topArea__place {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1.44rem;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.07em;
}
@media (max-width: 767px) {
  .p-topArea__place {
    font-size: 2rem;
  }
}

.p-topArea__en {
  margin-top: 0.864rem;
  font-family: "Akshar", sans-serif;
  font-size: 4.32rem;
  font-weight: 500;
  line-height: 0.9;
  letter-spacing: 0.02em;
}
@media (max-width: 767px) {
  .p-topArea__en {
    margin-top: 1.2rem;
    font-size: 6rem;
  }
}

.p-topArea__body {
  margin-top: 5.76rem;
}
@media (max-width: 767px) {
  .p-topArea__body {
    margin-top: 8rem;
  }
}

.p-topArea__lead {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  .p-topArea__lead {
    font-size: 3.6rem;
  }
}

.p-topArea__title {
  margin-top: 0.576rem;
  font-family: "Zen Antique Soft", serif;
  font-size: 6.912rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .p-topArea__title {
    margin-top: 0.8rem;
    font-size: 9.6rem;
  }
}

.p-topArea__text {
  margin-top: 2.88rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1.8;
}
@media (max-width: 767px) {
  .p-topArea__text {
    margin-top: 4rem;
    font-size: 2.8rem;
  }
}

.p-topArea--01 .p-topArea__place,
.p-topArea--01 .p-topArea__en,
.p-topArea--01 .p-topArea__lead,
.p-topArea--01 .p-topArea__title,
.p-topArea--01 .p-topArea__text {
  color: #4C9A43;
}

.p-topArea--02 .p-topArea__place,
.p-topArea--02 .p-topArea__en,
.p-topArea--02 .p-topArea__lead,
.p-topArea--02 .p-topArea__title,
.p-topArea--02 .p-topArea__text {
  color: #1B97C8;
}

.p-topArea--03 .p-topArea__place,
.p-topArea--03 .p-topArea__en,
.p-topArea--03 .p-topArea__lead,
.p-topArea--03 .p-topArea__title,
.p-topArea--03 .p-topArea__text {
  color: #E6585D;
}

.p-topArea--04 .p-topArea__place,
.p-topArea--04 .p-topArea__en,
.p-topArea--04 .p-topArea__lead,
.p-topArea--04 .p-topArea__title,
.p-topArea--04 .p-topArea__text {
  color: #F18D00;
}

.p-topArea__visual {
  position: relative;
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-topArea__visual {
    margin-top: 4rem;
  }
}

.p-topArea__photo {
  display: block;
  width: 42.48rem;
  height: 60.192rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 767px) {
  .p-topArea__photo {
    width: 59rem;
    height: 83.6rem;
  }
}

.p-topArea__plate {
  display: block;
  width: 42.48rem;
  height: 60.192rem;
}
@media (max-width: 767px) {
  .p-topArea__plate {
    width: 59rem;
    height: 83.6rem;
  }
}

.p-topArea--03 .p-topArea__plate {
  background: #F9C7C9;
}

.p-topArea--04 .p-topArea__plate {
  background: #FFCE8C;
}

.p-topArea__veil {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.39);
}

.p-topArea__coming {
  position: absolute;
  top: 1.44rem;
  left: 8.64rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 25.2rem;
  height: 60.192rem;
  font-family: "Akshar", sans-serif;
  font-size: 7.794rem;
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
}
@media (max-width: 767px) {
  .p-topArea__coming {
    top: 2rem;
    left: 12rem;
    width: 35rem;
    height: 83.6rem;
    font-size: 10.8rem;
  }
}

.p-topArea--02 .p-topArea__coming {
  color: #ECF7FA;
}

.p-topArea--03 .p-topArea__coming {
  color: #FDF0F1;
}

.p-topArea--04 .p-topArea__coming {
  color: #FCF5EA;
}

.p-topArea__mascot {
  position: absolute;
  display: block;
  max-width: none;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-topArea__mascot--01 {
  top: 34.848rem;
  left: 29.232rem;
  width: 18rem;
  height: 27.072rem;
}
@media (max-width: 767px) {
  .p-topArea__mascot--01 {
    top: 48.4rem;
    left: 40.6rem;
    width: 25rem;
    height: 37.6rem;
  }
}

.p-topArea__mascot--02 {
  top: 36.288rem;
  left: 25.776rem;
  width: 22.464rem;
  height: 25.92rem;
}
@media (max-width: 767px) {
  .p-topArea__mascot--02 {
    top: 50.4rem;
    left: 35.8rem;
    width: 31.2rem;
    height: 36rem;
  }
}

.p-topArea__mascot--03 {
  top: 98.784rem;
  left: 32.688rem;
  width: 18.432rem;
  height: 23.962rem;
}
@media (max-width: 767px) {
  .p-topArea__mascot--03 {
    top: 137.2rem;
    left: 45.4rem;
    width: 25.6rem;
    height: 33.3rem;
  }
}

.p-topArea__mascot--04 {
  top: 96.624rem;
  left: 32.688rem;
  width: 18.432rem;
  height: 26.64rem;
}
@media (max-width: 767px) {
  .p-topArea__mascot--04 {
    top: 134.2rem;
    left: 45.4rem;
    width: 25.6rem;
    height: 37rem;
  }
}

.p-topArea__cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 42.48rem;
  height: 10.656rem;
  margin-top: 4.32rem;
  padding: 0 2.88rem;
  border-radius: 0.576rem;
  background: #FFFFFF;
  text-decoration: none;
}
@media (max-width: 767px) {
  .p-topArea__cta {
    width: 59rem;
    height: 14.8rem;
    margin-top: 6rem;
    padding: 0 4rem;
    border-radius: 0.8rem;
  }
}

.p-topArea__ctaJa {
  display: block;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 700;
  line-height: 1;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-topArea__ctaJa {
    font-size: 2.8rem;
  }
}

.p-topArea__ctaEn {
  display: block;
  margin-top: 1.872rem;
  font-family: "Akshar", sans-serif;
  font-size: 3.744rem;
  font-weight: 600;
  line-height: 1;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-topArea__ctaEn {
    margin-top: 2.6rem;
    font-size: 5.2rem;
  }
}

.p-topArea__ctaIcon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 3.888rem;
  height: 3.456rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (max-width: 767px) {
  .p-topArea__ctaIcon {
    width: 5.4rem;
    height: 4.8rem;
  }
}

.p-topArea__schedule {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 42.48rem;
  height: 9.504rem;
  margin-top: 4.32rem;
  border-radius: 0.576rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1;
}
@media (max-width: 767px) {
  .p-topArea__schedule {
    width: 59rem;
    height: 13.2rem;
    margin-top: 6rem;
    border-radius: 0.8rem;
    font-size: 3.6rem;
  }
}

.p-topArea--03 .p-topArea__schedule,
.p-topArea--04 .p-topArea__schedule {
  margin-top: 2.88rem;
}
@media (max-width: 767px) {
  .p-topArea--03 .p-topArea__schedule,
  .p-topArea--04 .p-topArea__schedule {
    margin-top: 4rem;
  }
}

.p-topArea--02 .p-topArea__schedule {
  border: 1px solid #1B97C8;
  color: #1B97C8;
}

.p-topArea--03 .p-topArea__schedule {
  border: 1px solid #E6585D;
  color: #E6585D;
}

.p-topArea--04 .p-topArea__schedule {
  border: 1px solid #F18D00;
  color: #F18D00;
}

.p-topQuizHead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 8.64rem 5.04rem 4.32rem 5.184rem;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-topQuizHead {
    padding: 12rem 7rem 6rem 7.2rem;
  }
}

.p-topQuizHead__logo {
  display: block;
  width: 43.776rem;
  height: auto;
}
@media (max-width: 767px) {
  .p-topQuizHead__logo {
    width: 60.8rem;
  }
}

.p-topQuizHead__badge {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 13.968rem;
  height: 4.752rem;
  margin-top: 2.88rem;
  border: 1px solid #4C9A43;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.3;
  color: #4C9A43;
}
@media (max-width: 767px) {
  .p-topQuizHead__badge {
    width: 19.4rem;
    height: 6.6rem;
    margin-top: 4rem;
    font-size: 3.6rem;
  }
}

.p-topQuizHead__catch {
  margin-top: 2.88rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #222222;
  text-align: center;
}
@media (max-width: 767px) {
  .p-topQuizHead__catch {
    margin-top: 4rem;
    font-size: 3.6rem;
  }
}

.p-topQuizHead__note {
  margin-top: 5.76rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.592rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #222222;
  text-align: center;
}
@media (max-width: 767px) {
  .p-topQuizHead__note {
    margin-top: 8rem;
    font-size: 3.6rem;
  }
}

.p-topQuiz {
  position: relative;
  overflow: hidden;
  background-color: #FFFFFF;
  background-image: repeating-linear-gradient(to right, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 2.16rem), repeating-linear-gradient(to bottom, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 2.16rem);
}
@media (max-width: 767px) {
  .p-topQuiz {
    background-image: repeating-linear-gradient(to right, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 3rem), repeating-linear-gradient(to bottom, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 3rem);
  }
}

.p-topQuiz__intro {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 4.32rem 2.88rem 2.88rem;
}
@media (max-width: 767px) {
  .p-topQuiz__intro {
    padding: 6rem 4rem 4rem;
  }
}

.p-topQuiz__lead {
  width: 29.376rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.016rem;
  font-weight: 500;
  line-height: 1.8;
  color: #222222;
}
@media (max-width: 767px) {
  .p-topQuiz__lead {
    width: 40.8rem;
    font-size: 2.8rem;
  }
}

.p-topQuiz__leadFirst {
  font-size: 2.592rem;
}
@media (max-width: 767px) {
  .p-topQuiz__leadFirst {
    font-size: 3.6rem;
  }
}

.p-topQuiz__bitekiko {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 13.392rem;
  height: auto;
  margin-left: 0.576rem;
  max-width: none;
}
@media (max-width: 767px) {
  .p-topQuiz__bitekiko {
    width: 18.6rem;
    margin-left: 0.8rem;
  }
}

.p-topQuiz__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2.88rem 6.48rem 8.64rem;
}
@media (max-width: 767px) {
  .p-topQuiz__body {
    padding: 4rem 9rem 12rem;
  }
}

.p-topQuiz__card {
  width: 41.04rem;
  border: 0.432rem solid #4C9A43;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-topQuiz__card {
    width: 57rem;
    border-width: 0.6rem;
  }
}

.p-topQuiz__cardImg {
  display: block;
  width: 100%;
  height: auto;
}

.p-topQuiz__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 40.032rem;
  height: 9.504rem;
  margin-top: 5.76rem;
  border-radius: 99.9rem;
  background: #4C9A43;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3.456rem;
  font-weight: 500;
  line-height: 1.4;
  color: #FFFFFF;
  text-align: center;
  text-decoration: none;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}
@media (max-width: 767px) {
  .p-topQuiz__button {
    width: 55.6rem;
    height: 13.2rem;
    margin-top: 8rem;
    font-size: 4.8rem;
  }
}

.p-topQuiz__button:hover,
.p-topQuiz__button:active {
  background: #70AE69;
}

.p-topQuizHead__note {
  width: 44.784rem;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .p-topQuizHead__note {
    width: 62.2rem;
  }
}

.p-topKv__pin {
  translate: none;
}

.p-topKv__pin--01 {
  top: 26.28rem;
  left: 1.548rem;
}
@media (max-width: 767px) {
  .p-topKv__pin--01 {
    top: 36.5rem;
    left: 2.2rem;
  }
}

.p-topKv__pin--02 {
  top: 26.28rem;
  left: 21.42rem;
}
@media (max-width: 767px) {
  .p-topKv__pin--02 {
    top: 36.5rem;
    left: 29.8rem;
  }
}

.p-topKv__pin--03 {
  top: 13.896rem;
  left: 37.404rem;
}
@media (max-width: 767px) {
  .p-topKv__pin--03 {
    top: 19.3rem;
    left: 52rem;
  }
}

.p-topKv__pin--04 {
  top: 36.504rem;
  left: 37.26rem;
}
@media (max-width: 767px) {
  .p-topKv__pin--04 {
    top: 50.7rem;
    left: 51.8rem;
  }
}

.p-topBand--mt .p-topBand__img {
  top: 1.786rem;
}
@media (max-width: 767px) {
  .p-topBand--mt .p-topBand__img {
    top: 2.5rem;
  }
}

.p-topBand--labo .p-topBand__img {
  top: -0.864rem;
  left: -3.6rem;
  width: 58.464rem;
}
@media (max-width: 767px) {
  .p-topBand--labo .p-topBand__img {
    top: -1.2rem;
    left: -5rem;
    width: 81.2rem;
  }
}

.p-topArea__pin {
  width: auto;
  height: 10.656rem;
}
@media (max-width: 767px) {
  .p-topArea__pin {
    width: auto;
    height: 14.8rem;
  }
}

.p-topQuiz__card {
  width: 41.904rem;
  border: none;
  background: none;
}
@media (max-width: 767px) {
  .p-topQuiz__card {
    width: 58.2rem;
  }
}

.p-topArea__lead {
  line-height: 1.4444;
}

.p-topLead__logo {
  width: 14.256rem;
}
@media (max-width: 767px) {
  .p-topLead__logo {
    width: 19.8rem;
  }
}

.p-topProfile {
  padding-bottom: 3.744rem;
}
@media (max-width: 767px) {
  .p-topProfile {
    padding-bottom: 5.2rem;
  }
}

.p-topArea--03 .p-topArea__schedule {
  height: 9.648rem;
}
@media (max-width: 767px) {
  .p-topArea--03 .p-topArea__schedule {
    height: 13.4rem;
  }
}

.p-topArea--04 .p-topArea__schedule {
  height: 9.792rem;
  margin-top: 4.32rem;
}
@media (max-width: 767px) {
  .p-topArea--04 .p-topArea__schedule {
    height: 13.6rem;
    margin-top: 6rem;
  }
}

.p-topQuiz__card {
  margin-top: -0.432rem;
  margin-bottom: -0.432rem;
}
@media (max-width: 767px) {
  .p-topQuiz__card {
    margin-top: -0.6rem;
    margin-bottom: -0.6rem;
  }
}

.page-top .l-main {
  background: none;
}

.p-topArea,
.p-topBand,
.p-topQuizHead,
.p-topQuiz {
  position: relative;
  z-index: 0;
}

.p-topArea::before,
.p-topBand::before,
.p-topQuizHead::before,
.p-topQuiz::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  width: 100vw;
  height: 100%;
  translate: -50% 0;
  background: #FFFFFF;
}
@media (max-width: 767px) {
  .p-topArea::before,
  .p-topBand::before,
  .p-topQuizHead::before,
  .p-topQuiz::before {
    content: none;
  }
}

.p-topArea--01::before,
.p-topBand--labo::before {
  background: #F0F8EC;
}

.p-topArea--02::before,
.p-topBand--city::before {
  background: #ECF7FA;
}

.p-topArea--03::before,
.p-topBand--shop::before {
  background: #FDF0F1;
}

.p-topArea--04::before {
  background: #FCF5EA;
}

.page-top .l-main {
  overflow: visible;
}

.p-topKv__title {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
  line-height: 0;
}

.p-topQuizHead__title {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
  line-height: 0;
}

.p-topProfile__card {
  background-position: -1px -1px;
}

.p-topQuiz {
  background-position: -1px -1px;
}

.p-topQuiz {
  background-image: repeating-linear-gradient(to right, #DEF1D7 0, #DEF1D7 1px, transparent 1px, transparent 2.16rem), repeating-linear-gradient(to bottom, #DEF1D7 0, #DEF1D7 1px, transparent 1px, transparent 2.16rem);
}
@media (max-width: 767px) {
  .p-topQuiz {
    background-image: repeating-linear-gradient(to right, #DEF1D7 0, #DEF1D7 1px, transparent 1px, transparent 3rem), repeating-linear-gradient(to bottom, #DEF1D7 0, #DEF1D7 1px, transparent 1px, transparent 3rem);
  }
}

.p-topProfile__card {
  background-image: repeating-linear-gradient(to right, #F7F7F7 0, #F7F7F7 1px, transparent 1px, transparent 2.016rem), repeating-linear-gradient(to bottom, #F7F7F7 0, #F7F7F7 1px, transparent 1px, transparent 2.016rem);
}
@media (max-width: 767px) {
  .p-topProfile__card {
    background-image: repeating-linear-gradient(to right, #F7F7F7 0, #F7F7F7 1px, transparent 1px, transparent 2.8rem), repeating-linear-gradient(to bottom, #F7F7F7 0, #F7F7F7 1px, transparent 1px, transparent 2.8rem);
  }
}

.p-topQuiz {
  background-image: repeating-linear-gradient(to right, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 2.16rem), repeating-linear-gradient(to bottom, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 2.16rem);
}
@media (max-width: 767px) {
  .p-topQuiz {
    background-image: repeating-linear-gradient(to right, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 3rem), repeating-linear-gradient(to bottom, #BCE3AE 0, #BCE3AE 1px, transparent 1px, transparent 3rem);
  }
}

.p-topQuiz__intro {
  display: block;
  height: 22.464rem;
  padding: 0;
}
@media (max-width: 767px) {
  .p-topQuiz__intro {
    height: 31.2rem;
    padding: 0;
  }
}

.p-topQuiz__lead {
  position: absolute;
  top: 4.32rem;
  left: 5.904rem;
}
@media (max-width: 767px) {
  .p-topQuiz__lead {
    top: 6rem;
    left: 8.2rem;
  }
}

.p-topQuiz__bitekiko {
  position: absolute;
  top: 2.664rem;
  left: 35.136rem;
  margin-left: 0;
}
@media (max-width: 767px) {
  .p-topQuiz__bitekiko {
    top: 3.7rem;
    left: 48.8rem;
    margin-left: 0;
  }
}

.p-topProfile__label {
  text-align: left;
}

.p-topProfile__text {
  white-space: nowrap;
}

.p-topArea__cta {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 1.728rem;
}
@media (max-width: 767px) {
  .p-topArea__cta {
    gap: 2.4rem;
  }
}

.p-topArea__ctaTexts {
  width: 30.096rem;
}
@media (max-width: 767px) {
  .p-topArea__ctaTexts {
    width: 41.8rem;
  }
}

.p-topProfile__card {
  border: 1px solid #919191;
}

.p-topArea__ctaEn {
  margin-top: 1.152rem;
}
@media (max-width: 767px) {
  .p-topArea__ctaEn {
    margin-top: 1.6rem;
  }
}

.p-topArea__ctaTexts {
  -ms-flex-item-align: start;
      align-self: flex-start;
  margin-top: 2.304rem;
}
@media (max-width: 767px) {
  .p-topArea__ctaTexts {
    margin-top: 3.2rem;
  }
}

.p-topLead__text .u-scrollChar.is-on {
  color: #000000;
}

.page-top .c-menuFixed {
  opacity: 1;
  visibility: visible;
}

.p-topArea__cta {
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}

.p-topArea__cta:hover,
.p-topArea__cta:active {
  background: #BCE3AE;
}

.c-floatBanner {
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 1070;
  width: 25.92rem;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
@media (max-width: 767px) {
  .c-floatBanner {
    bottom: 60px;
    width: 36rem;
  }
}

.c-floatBanner.is-closed {
  opacity: 0;
  visibility: hidden;
}

body.is-menuOpen .c-floatBanner {
  opacity: 0;
  visibility: hidden;
}

.c-floatBanner__link {
  display: block;
}

.c-floatBanner__img {
  display: block;
  width: 100%;
  height: auto;
}

.c-floatBanner__close {
  position: absolute;
  top: 14.544rem;
  left: 5.017rem;
  width: 8.064rem;
  height: 2.304rem;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
}
@media (max-width: 767px) {
  .c-floatBanner__close {
    top: 20.2rem;
    left: 7rem;
    width: 11.2rem;
    height: 3.2rem;
  }
}

.p-topArea::before,
.p-topBand::before,
.p-topQuizHead::before,
.p-topQuiz::before {
  content: none;
}

.p-topBands {
  position: relative;
  z-index: -1;
  width: 100vw;
  height: 0;
  margin-left: calc(50% - 50vw);
}
@media (max-width: 767px) {
  .p-topBands {
    display: none;
  }
}

.p-topBands__band {
  position: absolute;
  left: 0;
  width: 100%;
  background-repeat: repeat;
  background-size: 3.7rem 100%, 100% 3.72185rem;
  background-position: 3.45rem 0, 0 3rem;
}

.p-topBands__band--01 {
  top: 11.676rem;
  height: 192.4rem;
  background-color: #F0F8EC;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #BCE3AE), color-stop(0.1rem, #BCE3AE), color-stop(0.1rem, transparent)), -webkit-gradient(linear, left top, left bottom, color-stop(0, #BCE3AE), color-stop(0.1rem, #BCE3AE), color-stop(0.1rem, transparent));
  background-image: linear-gradient(to right, #BCE3AE 0, #BCE3AE 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #BCE3AE 0, #BCE3AE 0.1rem, transparent 0.1rem);
}

.p-topBands__band--02 {
  top: 204.076rem;
  height: 194.3rem;
  background-color: #ECF7FA;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #AEE1F2), color-stop(0.1rem, #AEE1F2), color-stop(0.1rem, transparent)), -webkit-gradient(linear, left top, left bottom, color-stop(0, #AEE1F2), color-stop(0.1rem, #AEE1F2), color-stop(0.1rem, transparent));
  background-image: linear-gradient(to right, #AEE1F2 0, #AEE1F2 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #AEE1F2 0, #AEE1F2 0.1rem, transparent 0.1rem);
}

.p-topBands__band--03 {
  top: 398.376rem;
  height: 192.9rem;
  background-color: #FCF0F1;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #F9C7C9), color-stop(0.1rem, #F9C7C9), color-stop(0.1rem, transparent)), -webkit-gradient(linear, left top, left bottom, color-stop(0, #F9C7C9), color-stop(0.1rem, #F9C7C9), color-stop(0.1rem, transparent));
  background-image: linear-gradient(to right, #F9C7C9 0, #F9C7C9 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #F9C7C9 0, #F9C7C9 0.1rem, transparent 0.1rem);
}

.p-topBands__band--04 {
  top: 591.276rem;
  height: 159.5rem;
  background-color: #FCF5EA;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #FFCE8C), color-stop(0.1rem, #FFCE8C), color-stop(0.1rem, transparent)), -webkit-gradient(linear, left top, left bottom, color-stop(0, #FFCE8C), color-stop(0.1rem, #FFCE8C), color-stop(0.1rem, transparent));
  background-image: linear-gradient(to right, #FFCE8C 0, #FFCE8C 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #FFCE8C 0, #FFCE8C 0.1rem, transparent 0.1rem);
}

.p-topBands__band--05 {
  top: 750.776rem;
  height: 154.5rem;
  background-color: #FFFFFF;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #E4E4E4), color-stop(0.1rem, #E4E4E4), color-stop(0.1rem, transparent)), -webkit-gradient(linear, left top, left bottom, color-stop(0, #E4E4E4), color-stop(0.1rem, #E4E4E4), color-stop(0.1rem, transparent));
  background-image: linear-gradient(to right, #E4E4E4 0, #E4E4E4 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #E4E4E4 0, #E4E4E4 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 2.05rem;
}

.p-topKv {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  background: #C0EEFF;
}
@media (max-width: 767px) {
  .p-topKv {
    width: auto;
    margin-left: 0;
    background: #FFFFFF;
  }
}

.p-topKv__pcImg {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
}
@media (max-width: 767px) {
  .p-topKv__pcImg {
    display: none;
  }
}

.p-topKv__spImg {
  display: none;
}
@media (max-width: 767px) {
  .p-topKv__spImg {
    display: block;
    width: 100%;
    height: auto;
    max-width: none;
  }
}

.p-topKv__pin {
  width: 13.033%;
}
@media (max-width: 767px) {
  .p-topKv__pin {
    width: 12.6rem;
  }
}

.p-topKv__pin--01 {
  top: 60.405%;
  left: 14.271%;
}
@media (max-width: 767px) {
  .p-topKv__pin--01 {
    top: 57.8rem;
    left: 8.4rem;
  }
}

.p-topKv__pin--02 {
  top: 56.194%;
  left: 64.882%;
}
@media (max-width: 767px) {
  .p-topKv__pin--02 {
    top: 58rem;
    left: 36rem;
  }
}

.p-topKv__pin--03 {
  top: 37.976%;
  left: 83.521%;
}
@media (max-width: 767px) {
  .p-topKv__pin--03 {
    top: 40.8rem;
    left: 58.2rem;
  }
}

.p-topKv__pin--04 {
  top: 71.984%;
  left: 80.243%;
}
@media (max-width: 767px) {
  .p-topKv__pin--04 {
    top: 72.2rem;
    left: 58rem;
  }
}

.c-menuFixed {
  display: none;
}
@media (max-width: 767px) {
  .c-menuFixed {
    display: block;
  }
}

.c-drawer {
  display: none;
}
@media (max-width: 767px) {
  .c-drawer {
    display: block;
  }
}

@media (max-width: 1329px) {
  .c-menuFixed {
    display: block;
  }
}

@media (max-width: 1329px) {
  .c-drawer {
    display: block;
  }
}

.c-side {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1060;
  width: 100%;
  height: 0;
  pointer-events: none;
}
@media (max-width: 1329px) {
  .c-side {
    display: none;
  }
}

.c-side__logo {
  position: absolute;
  top: 36.7rem;
  left: calc(50% - 65rem);
  display: block;
  width: 32rem;
  pointer-events: auto;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.c-side__logoImg {
  display: block;
  width: 100%;
  height: auto;
}

.c-side__nav {
  position: absolute;
  top: 22.7rem;
  left: calc(50% + 33rem);
  width: 30rem;
  pointer-events: auto;
}

.c-side__item {
  display: block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.c-side__item + .c-side__item {
  margin-top: 3rem;
}

.c-side__item--01 {
  color: #4C9A43;
}

.c-side__item--02 {
  color: #1B97C8;
}

.c-side__item--03 {
  color: #E6585D;
}

.c-side__item--04 {
  color: #F18D00;
}

.c-side__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.5rem;
}

.c-side__pin {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 2.448rem;
  height: 3.6rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.c-side__en {
  font-family: "Akshar", sans-serif;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em;
}

.c-side__jp {
  display: block;
  margin-top: 0.5rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
}

.c-side__quiz {
  position: absolute;
  top: 65.191rem;
  left: calc(50% + 33rem);
  width: 30rem;
  pointer-events: auto;
}

.c-side__quizHead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
}

.c-side__quizLogo {
  display: block;
  width: 24.862rem;
  height: auto;
}

.c-side__quizGrid {
  display: grid;
  grid-template-columns: repeat(2, 14.333rem);
  gap: 1.326rem;
  margin-top: 2.486rem;
}

.c-side__quizBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 3.606rem;
  border: 0.1rem solid currentColor;
  border-radius: 0.2rem;
  background: #FFFFFF;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.492rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.c-side__quizNum {
  font-family: "Outfit", sans-serif;
  font-weight: 500;
}

.c-side__quizBtn--01 {
  color: #4C9A43;
}

.c-side__quizBtn--02 {
  color: #1B97C8;
}

.c-side__quizBtn--03 {
  color: #E6585D;
}

.c-side__quizBtn--04 {
  color: #F18D00;
}

.c-side__logo:hover,
.c-side__item:hover,
.c-side__quizBtn:hover {
  opacity: 0.7;
}

.u-brPc {
  display: inline;
}
@media (max-width: 767px) {
  .u-brPc {
    display: none;
  }
}

.u-brSp {
  display: none;
}
@media (max-width: 767px) {
  .u-brSp {
    display: inline;
  }
}

.p-topLead__text {
  width: 100vw;
  margin-top: 5rem;
  margin-left: calc(50% - 50vw);
  padding: 0;
  font-size: 2.4rem;
}
@media (max-width: 767px) {
  .p-topLead__text {
    width: auto;
    margin-top: 10rem;
    margin-left: 0;
    padding: 0 4rem;
    font-size: 3.6rem;
  }
}

.c-side__quizBtn {
  gap: 0.5rem;
}

.p-topKv__pin {
  translate: -50% -100%;
}
@media (max-width: 767px) {
  .p-topKv__pin {
    translate: none;
  }
}

.p-topKv__pin picture {
  display: block;
}

@media (max-width: 767px) {
  .p-topKv__pin--01 {
    top: 36.5rem;
    left: 2.2rem;
  }
}

@media (max-width: 767px) {
  .p-topKv__pin--02 {
    top: 36.5rem;
    left: 29.8rem;
  }
}

@media (max-width: 767px) {
  .p-topKv__pin--03 {
    top: 19.3rem;
    left: 52rem;
  }
}

@media (max-width: 767px) {
  .p-topKv__pin--04 {
    top: 50.7rem;
    left: 51.8rem;
  }
}

.p-topKv__pin.is-active {
  opacity: 0;
}
@media (max-width: 767px) {
  .p-topKv__pin.is-active {
    opacity: 1;
  }
}

.p-topLead__brand {
  padding-top: 3rem;
}
@media (max-width: 767px) {
  .p-topLead__brand {
    padding-top: 4rem;
  }
}

.p-topLead__logo {
  width: 18.921rem;
}
@media (max-width: 767px) {
  .p-topLead__logo {
    width: 19.8rem;
  }
}

.p-topLead__cross {
  width: 3.033rem;
  height: 3.033rem;
  margin-left: 3.861rem;
}
@media (max-width: 767px) {
  .p-topLead__cross {
    width: 3.1rem;
    height: 3.1rem;
    margin-left: 4.2rem;
  }
}

.p-topLead__biteki {
  margin-left: 4.112rem;
}
@media (max-width: 767px) {
  .p-topLead__biteki {
    margin-left: 4rem;
  }
}

.p-topLead__bitekiLogo {
  width: 8.092rem;
}
@media (max-width: 767px) {
  .p-topLead__bitekiLogo {
    width: 8.4rem;
  }
}

.p-topLead__bitekiText {
  margin-left: 0.647rem;
  font-size: 3.367rem;
}
@media (max-width: 767px) {
  .p-topLead__bitekiText {
    margin-left: 0.6rem;
    font-size: 3.5rem;
  }
}

.p-topProfile {
  padding-top: 6rem;
  padding-bottom: 6rem;
}
@media (max-width: 767px) {
  .p-topProfile {
    padding-top: 10rem;
    padding-bottom: 5.2rem;
  }
}

.p-topProfile__card {
  width: 69.5rem;
  height: 18.865rem;
  background-image: linear-gradient(to right, #F7F7F7 0, #F7F7F7 1px, transparent 1px), linear-gradient(to bottom, #F7F7F7 0, #F7F7F7 1px, transparent 1px);
  background-repeat: repeat;
  background-size: 2rem 100%, 100% 2.016rem;
  background-position: 0.655rem 0, 0 1.628rem;
}
@media (max-width: 767px) {
  .p-topProfile__card {
    width: 67rem;
    height: 43.4rem;
    background-image: repeating-linear-gradient(to right, #F7F7F7 0, #F7F7F7 1px, transparent 1px, transparent 2.8rem), repeating-linear-gradient(to bottom, #F7F7F7 0, #F7F7F7 1px, transparent 1px, transparent 2.8rem);
    background-size: auto;
    background-position: -1px -1px;
  }
}

.p-topProfile__body {
  top: 3rem;
  left: 4.985rem;
  width: 58.689rem;
}
@media (max-width: 767px) {
  .p-topProfile__body {
    top: 4rem;
    left: 4.8rem;
    width: 55.2rem;
  }
}

.p-topProfile__label {
  font-size: 1.8rem;
}
@media (max-width: 767px) {
  .p-topProfile__label {
    font-size: 2.4rem;
  }
}

.p-topProfile__text {
  margin-top: 0.5rem;
  font-size: 2rem;
}
@media (max-width: 767px) {
  .p-topProfile__text {
    margin-top: 1rem;
    font-size: 2.8rem;
  }
}

.p-topProfile__img {
  top: 3.405rem;
  left: 36.46rem;
  width: 32.678rem;
  clip-path: inset(0 0 12.15% 33.88%);
}
@media (max-width: 767px) {
  .p-topProfile__img {
    top: 17.6rem;
    left: 15rem;
    width: 51rem;
    clip-path: none;
  }
}

.p-topProfile__corner--br {
  top: 13.825rem;
  left: 64.172rem;
}
@media (max-width: 767px) {
  .p-topProfile__corner--br {
    top: 36.4rem;
    left: 59.6rem;
  }
}

.p-topProfile__credit {
  margin-top: 1rem;
  font-size: 1.8rem;
}
@media (max-width: 767px) {
  .p-topProfile__credit {
    margin-top: 2rem;
    font-size: 2rem;
  }
}

.p-topBands {
  margin-top: 1.244rem;
}

.p-topKv__basePin {
  position: absolute;
  top: 60.564%;
  left: 14.438%;
  display: block;
  width: 8.345%;
  height: auto;
  max-width: none;
  translate: -50% -100%;
}
@media (max-width: 767px) {
  .p-topKv__basePin {
    display: none;
  }
}

.p-topKv__pin {
  width: 13.051%;
}
@media (max-width: 767px) {
  .p-topKv__pin {
    width: 12.6rem;
  }
}

.p-topKv__pin.is-active {
  opacity: 1;
}

.p-topKv__pin--01 {
  top: 60.564%;
  left: 14.438%;
}
@media (max-width: 767px) {
  .p-topKv__pin--01 {
    top: 36.5rem;
    left: 2.2rem;
  }
}

.p-topKv__pin--02 {
  top: 56.303%;
  left: 65.009%;
}
@media (max-width: 767px) {
  .p-topKv__pin--02 {
    top: 36.5rem;
    left: 29.8rem;
  }
}

.p-topKv__pin--03 {
  top: 38.237%;
  left: 83.64%;
}
@media (max-width: 767px) {
  .p-topKv__pin--03 {
    top: 19.3rem;
    left: 52rem;
  }
}

.p-topKv__pin--04 {
  top: 72.552%;
  left: 80.353%;
}
@media (max-width: 767px) {
  .p-topKv__pin--04 {
    top: 50.7rem;
    left: 51.8rem;
  }
}

.p-topKv__pin {
  translate: -48.5% -100%;
}
@media (max-width: 767px) {
  .p-topKv__pin {
    translate: none;
  }
}

.p-topKv__basePin {
  top: 60.543%;
  left: 14.264%;
  translate: -48.55% -100%;
}

.p-topKv__pin--01 {
  top: 60.543%;
  left: 14.264%;
}
@media (max-width: 767px) {
  .p-topKv__pin--01 {
    top: 36.5rem;
    left: 2.2rem;
  }
}

.p-topKv__pin--02 {
  top: 56.284%;
  left: 64.888%;
}
@media (max-width: 767px) {
  .p-topKv__pin--02 {
    top: 36.5rem;
    left: 29.8rem;
  }
}

.p-topKv__pin--03 {
  top: 38.217%;
  left: 83.518%;
}
@media (max-width: 767px) {
  .p-topKv__pin--03 {
    top: 19.3rem;
    left: 52rem;
  }
}

.p-topKv__pin--04 {
  top: 72.045%;
  left: 80.231%;
}
@media (max-width: 767px) {
  .p-topKv__pin--04 {
    top: 50.7rem;
    left: 51.8rem;
  }
}

.p-topKv__basePin {
  top: 45.1509%;
  left: 10.2292%;
  width: 8.3453%;
  translate: none;
}

.p-topKv__pin--01 {
  top: 60.5641%;
  left: 14.3452%;
}
@media (max-width: 767px) {
  .p-topKv__pin--01 {
    top: 36.5rem;
    left: 2.2rem;
  }
}

.p-topKv__pin--02 {
  top: 56.3038%;
  left: 64.9531%;
}
@media (max-width: 767px) {
  .p-topKv__pin--02 {
    top: 36.5rem;
    left: 29.8rem;
  }
}

.p-topKv__pin--03 {
  top: 38.2364%;
  left: 83.5843%;
}
@media (max-width: 767px) {
  .p-topKv__pin--03 {
    top: 19.3rem;
    left: 52rem;
  }
}

.p-topKv__pin--04 {
  top: 72.0931%;
  left: 80.2939%;
}
@media (max-width: 767px) {
  .p-topKv__pin--04 {
    top: 50.7rem;
    left: 51.8rem;
  }
}

.p-topKv__pin--01 {
  top: 33.9271%;
  left: 7.9124%;
  translate: none;
}
@media (max-width: 767px) {
  .p-topKv__pin--01 {
    top: 36.5rem;
    left: 2.2rem;
  }
}

.p-topKv {
  width: calc(100vw - var(--sb, 0px));
  margin-left: calc(50% - 50vw + var(--sb, 0px) / 2);
}
@media (max-width: 767px) {
  .p-topKv {
    width: auto;
    margin-left: 0;
  }
}

.p-topBands {
  width: calc(100vw - var(--sb, 0px));
  margin-left: calc(50% - 50vw + var(--sb, 0px) / 2);
}

.p-topLead__text {
  width: calc(100vw - var(--sb, 0px));
  margin-left: calc(50% - 50vw + var(--sb, 0px) / 2);
}
@media (max-width: 767px) {
  .p-topLead__text {
    width: auto;
    margin-left: 0;
  }
}

.page-top .c-side {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.4s ease, visibility 0.4s ease;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}

body.page-top.is-sideShown .c-side {
  opacity: 1;
  visibility: visible;
}

.c-floatBanner {
  right: calc(50% - 27rem);
}
@media (max-width: 767px) {
  .c-floatBanner {
    right: 0;
  }
}

span.c-side__quizBtn {
  cursor: default;
}

span.c-side__quizBtn:hover {
  opacity: 1;
}

.page-top .c-floatBanner {
  opacity: 0;
  visibility: hidden;
}
@media (max-width: 767px) {
  .page-top .c-floatBanner {
    opacity: 1;
    visibility: visible;
  }
}

body.page-top.is-sideShown:not(.is-sideHidden) .c-floatBanner {
  opacity: 1;
  visibility: visible;
}

body.page-top .c-floatBanner.is-closed,
.c-floatBanner.is-closed {
  opacity: 0;
  visibility: hidden;
}

.c-side {
  -webkit-transition: opacity 0.4s ease, visibility 0.4s ease;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}

.page-top .l-main {
  margin-bottom: 8rem;
}
@media (max-width: 767px) {
  .page-top .l-main {
    margin-bottom: 0;
  }
}

body.is-sideHidden .c-side,
body.page-top.is-sideHidden .c-side,
body.page-top.is-sideHidden .c-floatBanner,
body.is-sideHidden .c-floatBanner,
body.is-sideHidden .common-fixed-btn {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

footer.common-footer .page-to-top button::after {
  content: none;
}

footer.common-footer .page-to-top .icn-arr-circle-top path {
  d: path("M21.068,21.719L25,17.765L28.932,21.719M25,17.765V33.75");
}

.p-exam,
.p-examResult {
  margin-bottom: 8rem;
}
@media (max-width: 767px) {
  .p-exam,
  .p-examResult {
    margin-bottom: 11.2rem;
  }
}

.p-exam__barFill {
  -webkit-transition: width 0.7s cubic-bezier(0.4, 0, 0.2, 1);
  transition: width 0.7s cubic-bezier(0.4, 0, 0.2, 1);
}

.p-exam__barIcon {
  -webkit-transition: left 0.7s cubic-bezier(0.4, 0, 0.2, 1);
  transition: left 0.7s cubic-bezier(0.4, 0, 0.2, 1);
}/*# sourceMappingURL=style.css.map */
.p-prize__cardName {
  width: 38.16rem;
}
@media (max-width: 767px) {
  .p-prize__cardName {
    width: 53rem;
  }
}

.p-prize__masterSetItem {
  text-decoration: none;
}

.p-period__badgeIllust {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: contain;
}
@media (max-width: 767px) {
  .p-period__badgeIllust {
    top: 0;
    width: 100%;
    height: 100%;
  }
}

.p-period__badgeIllust--01 {
  top: 0;
  height: 100%;
}
@media (max-width: 767px) {
  .p-period__badgeIllust--01 {
    top: 0;
    height: 100%;
  }
}

.c-side__item--02,
.c-side__item--03,
.c-side__item--04,
.c-side__quizBtn--02,
.c-side__quizBtn--03,
.c-side__quizBtn--04,
.c-drawer__item--02,
.c-drawer__item--03,
.c-drawer__item--04,
.c-drawer__quizBtn--02,
.c-drawer__quizBtn--03,
.c-drawer__quizBtn--04 {
  opacity: 0.5;
  cursor: default;
  pointer-events: none;
}

.p-credit__notes {
  padding-bottom: 2.88rem;
}
@media (max-width: 767px) {
  .p-credit__notes {
    padding-bottom: 4rem;
  }
}

.p-topBands {
  display: none;
}

.p-topBand {
  overflow: visible;
}

.p-topBand__clip {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.p-topArea,
.p-topBand,
.p-topQuizHead,
.p-topQuiz {
  z-index: auto;
}

.p-topArea::before,
.p-topBand::before,
.p-topQuizHead::before,
.p-topQuiz::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  width: calc(100vw - var(--sb, 0px));
  height: 100%;
  translate: -50% 0;
  background-repeat: repeat;
  background-size: 3.7rem 100%, 100% 3.72185rem;
}
@media (max-width: 767px) {
  .p-topArea::before,
  .p-topBand::before,
  .p-topQuizHead::before,
  .p-topQuiz::before {
    content: none;
  }
}

.p-topBand--mt::after,
.p-topBand--labo::after,
.p-topBand--city::after,
.p-topBand--shop::after {
  content: "";
  position: absolute;
  left: 50%;
  z-index: -1;
  width: calc(100vw - var(--sb, 0px));
  translate: -50% 0;
  background-repeat: repeat;
  background-size: 3.7rem 100%, 100% 3.72185rem;
  background-position: 3.45rem 0, 0 3rem;
}
@media (max-width: 767px) {
  .p-topBand--mt::after,
  .p-topBand--labo::after,
  .p-topBand--city::after,
  .p-topBand--shop::after {
    content: none;
  }
}

.p-topBand--mt::before {
  background-color: #FFFFFF;
  background-image: none;
}

.p-topBand--mt::after {
  top: 11.676rem;
  height: calc(100% - 11.676rem);
  background-color: #F0F8EC;
  background-image: linear-gradient(to right, #BCE3AE 0, #BCE3AE 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #BCE3AE 0, #BCE3AE 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 3rem;
}

.p-topArea--01::before {
  background-color: #F0F8EC;
  background-image: linear-gradient(to right, #BCE3AE 0, #BCE3AE 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #BCE3AE 0, #BCE3AE 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 2.924rem;
}

.p-topBand--labo::before {
  background-color: #F0F8EC;
  background-image: linear-gradient(to right, #BCE3AE 0, #BCE3AE 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #BCE3AE 0, #BCE3AE 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 2.064rem;
}

.p-topBand--labo::after {
  top: 20.468rem;
  height: calc(100% - 20.468rem);
  background-color: #ECF7FA;
  background-image: linear-gradient(to right, #AEE1F2 0, #AEE1F2 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #AEE1F2 0, #AEE1F2 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 3rem;
}

.p-topArea--02::before {
  background-color: #ECF7FA;
  background-image: linear-gradient(to right, #AEE1F2 0, #AEE1F2 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #AEE1F2 0, #AEE1F2 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 0.551rem;
}

.p-topBand--city::before {
  background-color: #ECF7FA;
  background-image: linear-gradient(to right, #AEE1F2 0, #AEE1F2 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #AEE1F2 0, #AEE1F2 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 0.842rem;
}

.p-topBand--city::after {
  top: 32.312rem;
  height: calc(100% - 32.312rem);
  background-color: #FCF0F1;
  background-image: linear-gradient(to right, #F9C7C9 0, #F9C7C9 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #F9C7C9 0, #F9C7C9 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 3rem;
}

.p-topArea--03::before {
  background-color: #FCF0F1;
  background-image: linear-gradient(to right, #F9C7C9 0, #F9C7C9 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #F9C7C9 0, #F9C7C9 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 1.595rem;
}

.p-topBand--shop::before {
  background-color: #FCF0F1;
  background-image: linear-gradient(to right, #F9C7C9 0, #F9C7C9 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #F9C7C9 0, #F9C7C9 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 0.044rem;
}

.p-topBand--shop::after {
  top: 33.828rem;
  height: calc(100% - 33.828rem);
  background-color: #FCF5EA;
  background-image: linear-gradient(to right, #FFCE8C 0, #FFCE8C 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #FFCE8C 0, #FFCE8C 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 3rem;
}

.p-topArea--04::before {
  background-color: #FCF5EA;
  background-image: linear-gradient(to right, #FFCE8C 0, #FFCE8C 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #FFCE8C 0, #FFCE8C 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 3.111rem;
}

.p-topQuizHead::before {
  background-color: #FFFFFF;
  background-image: linear-gradient(to right, #E4E4E4 0, #E4E4E4 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #E4E4E4 0, #E4E4E4 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 2.05rem;
}

.p-topQuiz::before {
  background-color: #FFFFFF;
  background-image: linear-gradient(to right, #E4E4E4 0, #E4E4E4 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #E4E4E4 0, #E4E4E4 0.1rem, transparent 0.1rem);
  background-position: 3.45rem 0, 0 0.19rem;
}

.p-prize__cardNameLink,
.p-prize__masterSetLink,
.p-credit__termsLink,
.p-credit__termsUnderline,
.p-prize__tab {
  transition: opacity 0.2s ease;
}

.p-prize__cardNameLink:hover,
.p-prize__cardNameLink:active,
.p-prize__masterSetLink:hover,
.p-prize__masterSetLink:active,
.p-credit__termsLink:hover,
.p-credit__termsLink:active,
.p-credit__termsUnderline:hover,
.p-credit__termsUnderline:active,
.p-prize__tab:hover,
.p-prize__tab:active {
  opacity: 0.6;
}

.p-quiz__button {
  transition: background-color 0.2s ease;
}

.p-quiz__button:hover,
.p-quiz__button:active {
  background: #70AE69;
}

.c-floatBanner__link,
.c-floatBanner__close {
  transition: opacity 0.3s ease;
}

.c-floatBanner__link:hover,
.c-floatBanner__link:active,
.c-floatBanner__close:hover,
.c-floatBanner__close:active {
  opacity: 0.7;
}

.p-credit__termsText {
  width: calc(43.776rem + 0.04em);
  line-height: 1.3333;
}
@media (max-width: 767px) {
  .p-credit__termsText {
    width: calc(60.8rem + 0.04em);
  }
}

.p-credit__termsText {
  padding-top: 0;
}
@media (max-width: 767px) {
  .p-credit__termsText {
    padding-top: 0;
  }
}

.p-credit__terms.is-open .p-credit__termsText {
  padding-top: 1.44rem;
}
@media (max-width: 767px) {
  .p-credit__terms.is-open .p-credit__termsText {
    padding-top: 2rem;
  }
}

.p-credit__terms.is-open .p-credit__termsPlus {
  transform: none;
  display: none;
}

.p-credit__termsMinus {
  display: none;
  width: 2.304rem;
  height: 2.304rem;
  object-fit: contain;
}
@media (max-width: 767px) {
  .p-credit__termsMinus {
    width: 3.2rem;
    height: 3.2rem;
  }
}

.p-credit__terms.is-open .p-credit__termsMinus {
  display: block;
}

.p-credit__termsLine {
  height: 1px;
}
@media (max-width: 767px) {
  .p-credit__termsLine {
    height: 1px;
  }
}

.p-credit__termsText {
  padding-top: 0;
}
@media (max-width: 767px) {
  .p-credit__termsText {
    padding-top: 0;
  }
}

.p-credit__terms.is-open .p-credit__termsText {
  padding-top: 0;
}
@media (max-width: 767px) {
  .p-credit__terms.is-open .p-credit__termsText {
    padding-top: 0;
  }
}

.p-credit__termsText::before {
  content: "";
  display: block;
  height: 1.44rem;
}
@media (max-width: 767px) {
  .p-credit__termsText::before {
    height: 2rem;
  }
}

.p-topArea::before,
.p-topBand::before,
.p-topQuizHead::before,
.p-topQuiz::before,
.p-topBand--mt::after,
.p-topBand--labo::after,
.p-topBand--city::after,
.p-topBand--shop::after {
  content: none;
}

.p-topBg {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  background: #FFFFFF;
  pointer-events: none;
}
@media (max-width: 767px) {
  .p-topBg {
    display: none;
  }
}

.p-topBg__layer {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0;
  background-repeat: repeat;
  background-size: 3.7rem 100%, 100% 3.72185rem;
  background-position: 3.45rem 0, 0 3rem;
  transition: opacity 0.5s ease;
}

body.is-band01 .p-topBg__layer--01,
body.is-band02 .p-topBg__layer--02,
body.is-band03 .p-topBg__layer--03,
body.is-band04 .p-topBg__layer--04,
body.is-band05 .p-topBg__layer--05 {
  opacity: 1;
}

.p-topBg__layer--01 {
  background-color: #F0F8EC;
  background-image: linear-gradient(to right, #BCE3AE 0, #BCE3AE 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #BCE3AE 0, #BCE3AE 0.1rem, transparent 0.1rem);
}

.p-topBg__layer--02 {
  background-color: #ECF7FA;
  background-image: linear-gradient(to right, #AEE1F2 0, #AEE1F2 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #AEE1F2 0, #AEE1F2 0.1rem, transparent 0.1rem);
}

.p-topBg__layer--03 {
  background-color: #FCF0F1;
  background-image: linear-gradient(to right, #F9C7C9 0, #F9C7C9 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #F9C7C9 0, #F9C7C9 0.1rem, transparent 0.1rem);
}

.p-topBg__layer--04 {
  background-color: #FCF5EA;
  background-image: linear-gradient(to right, #FFCE8C 0, #FFCE8C 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #FFCE8C 0, #FFCE8C 0.1rem, transparent 0.1rem);
}

.p-topBg__layer--05 {
  background-color: #FFFFFF;
  background-image: linear-gradient(to right, #E4E4E4 0, #E4E4E4 0.1rem, transparent 0.1rem), linear-gradient(to bottom, #E4E4E4 0, #E4E4E4 0.1rem, transparent 0.1rem);
}

body:has(.p-hero) {
  background-image: linear-gradient(#FFFFFF, #FFFFFF), url(/ignis_bp/contents/ig/beautytrip/assets/src/img/bg_pc.png);
  background-repeat: no-repeat, repeat;
  background-size: 100% 90.367rem, 144rem 166.9rem;
  background-position: 0 0, center 3.7rem;
}
@media (max-width: 767px) {
  body:has(.p-hero) {
    background-image: none;
  }
}


.p-loading {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.p-loading__stage {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  isolation: isolate;
  background: #E3F9FF;
  animation: p-loadingStage 4.6s linear forwards;
}

.p-loading__band {
  position: absolute;
  top: 52.872%;
  left: -58.333%;
  display: block;
  width: 219.861vw;
  mix-blend-mode: screen;
}
@media (max-width: 767px) {
  .p-loading__band {
    top: 26.173%;
    left: -355.2%;
    width: 844.267vw;
  }
}

.p-loading__bandImg {
  display: block;
  width: 100%;
  height: auto;
}

.p-loading__plane {
  position: absolute;
  top: 45.213%;
  left: -6.042%;
  display: block;
  width: 27.083vw;
  height: auto;
  animation: p-loadingPlanePc 4.6s ease-out forwards;
}
@media (max-width: 767px) {
  .p-loading__plane {
    top: 41.975%;
    left: -40%;
    width: 79.733vw;
    animation-name: p-loadingPlaneSp;
  }
}

.p-loading__contrail {
  display: none;
}

.p-loading__logo {
  position: absolute;
  top: 40.638%;
  left: 27.847%;
  display: block;
  width: 43.333vw;
  height: 4.583vw;
}
@media (max-width: 767px) {
  .p-loading__logo {
    top: 36.667%;
    left: 9.333%;
    width: 78.4vw;
    height: 9.6vw;
  }
}

.p-loading__logoPart {
  position: absolute;
  display: block;
  height: auto;
  opacity: 0;
}

.p-loading__logoPart--ignis {
  top: 0;
  left: 0;
  width: 48.077%;
  animation: p-loadingFade 0.4s ease-out 0.5s forwards;
}
@media (max-width: 767px) {
  .p-loading__logoPart--ignis {
    top: 5.556%;
    width: 56.179%;
  }
}

.p-loading__logoPart--cross {
  top: 22.727%;
  left: 60.096%;
  width: 4.808%;
  animation: p-loadingFade 0.4s ease-out 1s forwards;
}
@media (max-width: 767px) {
  .p-loading__logoPart--cross {
    top: 27.778%;
    left: 63.265%;
    width: 5.618%;
  }
}

.p-loading__logoPart--biteki {
  top: 0;
  left: 79.487%;
  width: 20.513%;
  animation: p-loadingFade 0.4s ease-out 1.5s forwards;
}
@media (max-width: 767px) {
  .p-loading__logoPart--biteki {
    left: 76.19%;
    width: 23.972%;
  }
}

.p-loading__white {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: #FFFFFF;
  opacity: 0;
  animation: p-loadingWhite 4.6s ease-in-out forwards;
}

.p-loading__cloud {
  position: absolute;
  display: block;
}

.p-loading__cloudImg {
  display: block;
  width: 100%;
  height: auto;
}

.p-loading__cloud--01 {
  width: 83.958vw;
  animation: p-loadingCloudPc01 4.6s ease-in-out forwards;
}
@media (max-width: 767px) {
  .p-loading__cloud--01 {
    width: 174.4vw;
    animation-name: p-loadingCloudSp01;
  }
}

.p-loading__cloud--02 {
  width: 72.917vw;
  animation: p-loadingCloudPc02 4.6s ease-in-out forwards;
}
@media (max-width: 767px) {
  .p-loading__cloud--02 {
    width: 169.6vw;
    animation-name: p-loadingCloudSp02;
  }
}

.p-loading__cloud--03 {
  width: 90.486vw;
  animation: p-loadingCloudPc03 4.6s ease-in-out forwards;
}
@media (max-width: 767px) {
  .p-loading__cloud--03 {
    width: 163.467vw;
    animation-name: p-loadingCloudSp03;
  }
}

.p-loading__cloud--04 {
  width: 80.069vw;
  animation: p-loadingCloudPc04 4.6s ease-in-out forwards;
}
@media (max-width: 767px) {
  .p-loading__cloud--04 {
    width: 159.2vw;
    animation-name: p-loadingCloudSp04;
  }
}

@keyframes p-loadingFade {
  to {
    opacity: 1;
  }
}
@keyframes p-loadingWhite {
  0%, 34.8% {
    opacity: 0;
  }
  52.2%, 58% {
    opacity: 1;
  }
  66%, 100% {
    opacity: 0;
  }
}
@keyframes p-loadingStage {
  0%, 48% {
    opacity: 1;
  }
  54%, 100% {
    opacity: 0;
  }
}
@keyframes p-loadingPlanePc {
  0% {
    top: 45.213%;
    left: -6.042%;
  }
  11.6% {
    top: 39.787%;
    left: 28.194%;
  }
  23.2% {
    top: 39.787%;
    left: 44.583%;
  }
  34.8%, 100% {
    top: 37.021%;
    left: 62.361%;
  }
}
@keyframes p-loadingPlaneSp {
  0% {
    top: 41.975%;
    left: -40%;
  }
  11.6% {
    top: 39.012%;
    left: -16.267%;
  }
  23.2% {
    top: 32.963%;
    left: 9.333%;
  }
  34.8% {
    top: 32.222%;
    left: 39.467%;
  }
  45%, 100% {
    top: 32.099%;
    left: 61.6%;
  }
}
@keyframes p-loadingCloudPc01 {
  0%, 52.2% {
    top: 95%;
    left: -90%;
  }
  56.5%, 62% {
    top: 40.638%;
    left: -33.333%;
  }
  100% {
    top: 95%;
    left: -90%;
  }
}
@keyframes p-loadingCloudPc02 {
  0%, 52.2% {
    top: -85%;
    left: -80%;
  }
  56.5%, 62% {
    top: -14.574%;
    left: -8.333%;
  }
  100% {
    top: -85%;
    left: -80%;
  }
}
@keyframes p-loadingCloudPc03 {
  0%, 52.2% {
    top: -100%;
    left: 105%;
  }
  56.5%, 62% {
    top: -26.915%;
    left: 54.167%;
  }
  100% {
    top: -100%;
    left: 105%;
  }
}
@keyframes p-loadingCloudPc04 {
  0%, 52.2% {
    top: 105%;
    left: 105%;
  }
  56.5%, 62% {
    top: 39.468%;
    left: 28.819%;
  }
  100% {
    top: 105%;
    left: 105%;
  }
}
@keyframes p-loadingCloudSp01 {
  0%, 52.2% {
    top: -10%;
    left: -220%;
  }
  56.5%, 62% {
    top: -10%;
    left: -40%;
  }
  100% {
    top: -10%;
    left: -220%;
  }
}
@keyframes p-loadingCloudSp02 {
  0%, 52.2% {
    top: 50%;
    left: -235%;
  }
  56.5%, 62% {
    top: 50%;
    left: -55%;
  }
  100% {
    top: 50%;
    left: -235%;
  }
}
@keyframes p-loadingCloudSp03 {
  0%, 52.2% {
    top: 25%;
    left: 200%;
  }
  56.5%, 62% {
    top: 25%;
    left: -15%;
  }
  100% {
    top: 25%;
    left: 200%;
  }
}
@keyframes p-loadingCloudSp04 {
  0%, 52.2% {
    top: -15%;
    left: 195%;
  }
  56.5%, 62% {
    top: -15%;
    left: -25%;
  }
  100% {
    top: -15%;
    left: 195%;
  }
}

.p-loading__stage,
.p-loading__plane,
.p-loading__contrail,
.p-loading__logoPart,
.p-loading__white,
.p-loading__cloud {
  animation-play-state: paused;
}

.p-loading.is-ready .p-loading__stage,
.p-loading.is-ready .p-loading__plane,
.p-loading.is-ready .p-loading__contrail,
.p-loading.is-ready .p-loading__logoPart,
.p-loading.is-ready .p-loading__white,
.p-loading.is-ready .p-loading__cloud {
  animation-play-state: running;
}

.p-entry__ctaLink,
.c-menu,
.p-examResult__shareBg,
.p-examResult__tripBack,
.p-pickup__button {
  transition: background-color 0.2s ease;
}

.p-entry__ctaLink:hover,
.p-entry__ctaLink:active,
.c-menu:hover,
.c-menu:active {
  background: #70AE69;
}

.p-examResult__shareLink:hover .p-examResult__shareBg,
.p-examResult__shareLink:active .p-examResult__shareBg {
  background: #70AE69;
}

.p-examResult__tripBack:hover,
.p-examResult__tripBack:active {
  background: #4CAFD6;
}

.p-pickup__button:hover,
.p-pickup__button:active {
  background: #E2F2DA;
}

.p-campaign__cardMore,
.p-entry__stepLink,
.p-credit__termsRow,
.p-examResult__memoLinkRow {
  transition: opacity 0.2s ease;
}

.p-campaign__cardMore:hover,
.p-campaign__cardMore:active,
.p-entry__stepLink:hover,
.p-entry__stepLink:active,
.p-credit__termsRow:hover,
.p-credit__termsRow:active,
.p-examResult__memoLinkRow:hover,
.p-examResult__memoLinkRow:active {
  opacity: 0.6;
}

.p-topKv__pin {
  transition: opacity 0.5s ease, filter 0.2s ease;
}

.p-topKv__pin:hover,
.p-topKv__pin:active {
  filter: brightness(1.08);
}

.p-examResult__tripPin {
  border-radius: 100%;
  transition: background-color 0.2s ease;
}

.p-examResult__tripPin:hover,
.p-examResult__tripPin:active {
  background: rgba(255, 255, 255, 0.35);
}

.p-examResult__memoBody {
  height: 50.976rem;
}
@media (max-width: 767px) {
  .p-examResult__memoBody {
    height: 70.8rem;
  }
}

.p-examResult__memoBlock {
  width: 100%;
}

.p-examResult__memoBlock + .p-examResult__memoBlock {
  margin-top: 4.32rem;
}
@media (max-width: 767px) {
  .p-examResult__memoBlock + .p-examResult__memoBlock {
    margin-top: 6rem;
  }
}

.p-examResult__memoAccount {
  text-decoration: underline;
  text-decoration-skip-ink: none;
  color: #222222;
  transition: opacity 0.2s ease;
}

.p-examResult__memoAccount:hover,
.p-examResult__memoAccount:active {
  opacity: 0.6;
}

.p-examResult__memoLink {
  display: inline-block;
  margin-top: 1.152rem;
}
@media (max-width: 767px) {
  .p-examResult__memoLink {
    margin-top: 1.6rem;
  }
}

.p-examResult__memoLinkRow {
  width: auto;
}
@media (max-width: 767px) {
  .p-examResult__memoLinkRow {
    width: auto;
  }
}

.p-examResult__memoLine {
  width: 100%;
}
@media (max-width: 767px) {
  .p-examResult__memoLine {
    width: 100%;
  }
}

.p-examResult__memoCorner--br {
  top: 48.672rem;
}
@media (max-width: 767px) {
  .p-examResult__memoCorner--br {
    top: 67.6rem;
  }
}

.c-floatBanner {
  right: auto;
  left: calc(50% - 27rem);
}
@media (max-width: 767px) {
  .c-floatBanner {
    right: auto;
    left: 0;
  }
}

.c-side__quizHead {
  justify-content: flex-start;
}

.p-topQuizHead__campaignBtn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 43.2rem;
  height: 7.488rem;
  margin-top: 4.32rem;
  border-radius: 0.576rem;
  background: #F0F8EC;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 2.304rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.02em;
  color: #4C9A43;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}
@media (max-width: 767px) {
  .p-topQuizHead__campaignBtn {
    width: 60rem;
    height: 10.4rem;
    margin-top: 6rem;
    border-radius: 0.8rem;
    font-size: 3.2rem;
  }
}

.p-topQuizHead__campaignBtn:hover,
.p-topQuizHead__campaignBtn:active {
  background: #4C9A43;
  color: #F0F8EC;
}

.c-menu {
  top: 1.44rem;
  right: 1.44rem;
  width: 5.76rem;
  height: 5.76rem;
  background: none;
}
@media (max-width: 767px) {
  .c-menu {
    top: 2rem;
    right: 2rem;
    width: 8rem;
    height: 8rem;
  }
}

.c-menu__bar {
  left: 1.152rem;
  background: #000000;
}
@media (max-width: 767px) {
  .c-menu__bar {
    left: 1.6rem;
  }
}

.c-menu__bar:nth-child(1) {
  top: 2.304rem;
}
@media (max-width: 767px) {
  .c-menu__bar:nth-child(1) {
    top: 3.2rem;
  }
}

.c-menu__bar:nth-child(2) {
  top: 3.456rem;
}
@media (max-width: 767px) {
  .c-menu__bar:nth-child(2) {
    top: 4.8rem;
  }
}

.c-drawer__close {
  top: 1.44rem;
  right: 1.44rem;
  left: auto;
  width: 5.76rem;
  height: 5.76rem;
  background: none;
}
@media (max-width: 767px) {
  .c-drawer__close {
    top: 2rem;
    right: 2rem;
    width: 8rem;
    height: 8rem;
  }
}

.c-drawer__closeBar {
  background: #222222;
}

.c-drawer__panel {
  width: 100%;
  padding: 5.76rem;
}
@media (max-width: 767px) {
  .c-drawer__panel {
    width: 100%;
    padding: 8rem;
  }
}

.c-drawer__quiz {
  margin-top: 5.76rem;
}
@media (max-width: 767px) {
  .c-drawer__quiz {
    margin-top: 8rem;
  }
}

.c-drawer__item--02,
.c-drawer__item--03,
.c-drawer__item--04,
.c-drawer__quizBtn--02,
.c-drawer__quizBtn--03,
.c-drawer__quizBtn--04 {
  opacity: 0.3;
}

.views-field-field-block-00,
.views-field-field-block-00 .block-bg-frame {
  background-color: #FFFFFF !important;
}

.views-field-field-block-00,
.common-aside-shop,
.common-aside-instagram,
.common-aside-flow-line {
  position: relative;
  z-index: 1061;
}

footer.common-footer {
  z-index: 1061;
}


.c-side {
  top: calc(50% + 4rem);
}

.c-side__nav {
  top: -28.8rem;
}

.c-side__logo {
  top: -3.6rem;
}

.c-side__quiz {
  top: 13.691rem;
}

.p-hero {
  padding: 2.88rem 2.88rem 4.32rem;
}
@media (max-width: 767px) {
  .p-hero {
    padding: 0 4rem 6rem;
  }
}

@media (max-width: 767px) {
  .page-top .c-floatBanner {
    opacity: 0;
    visibility: hidden;
  }
}

@media (max-width: 767px) {
  body.page-top.is-sideShown:not(.is-sideHidden) .c-floatBanner {
    opacity: 1;
    visibility: visible;
  }
}

.p-topProfile__img {
  display: block;
  top: 3.405rem;
  left: 47.53rem;
  width: 21.608rem;
  height: auto;
  clip-path: none;
}
@media (max-width: 767px) {
  .p-topProfile__img {
    top: 17.6rem;
    left: 15rem;
    width: 51rem;
    clip-path: none;
  }
}

.p-topProfile__imgInner {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
}

body:has(.p-hero) .l-main {
  position: relative;
  margin-top: 6rem;
  overflow: visible;
  contain: none;
}
@media (max-width: 767px) {
  body:has(.p-hero) .l-main {
    margin-top: 0;
  }
}

body:has(.p-hero) .l-main::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  pointer-events: none;
}
@media (max-width: 767px) {
  body:has(.p-hero) .l-main::after {
    content: none;
  }
}


.p-topKv__basePin {
  position: absolute;
  display: block;
  width: 5.7792%;
  height: auto;
  max-width: none;
  translate: -48.55% -100%;
}
@media (max-width: 767px) {
  .p-topKv__basePin {
    display: none;
  }
}

.p-topKv__basePin--01 {
  top: 65.751%;
  left: 27.0789%;
}

.p-topKv__basePin--02 {
  top: 60.7191%;
  left: 62.1217%;
}

.p-topKv__basePin--03 {
  top: 39.9552%;
  left: 80.1841%;
}

.p-topKv__basePin--04 {
  top: 68.8143%;
  left: 85.445%;
}

.p-topKv__pin {
  width: 9.0378%;
  translate: -48.5% -100%;
}
@media (max-width: 767px) {
  .p-topKv__pin {
    width: 12.6rem;
    translate: none;
  }
}

.p-topKv__pin--01 {
  top: 65.751%;
  left: 27.0789%;
}
@media (max-width: 767px) {
  .p-topKv__pin--01 {
    top: 36.5rem;
    left: 2.2rem;
  }
}

.p-topKv__pin--02 {
  top: 60.8151%;
  left: 62.1217%;
}
@media (max-width: 767px) {
  .p-topKv__pin--02 {
    top: 36.5rem;
    left: 29.8rem;
  }
}

.p-topKv__pin--03 {
  top: 40.0512%;
  left: 80.1841%;
}
@media (max-width: 767px) {
  .p-topKv__pin--03 {
    top: 19.3rem;
    left: 52rem;
  }
}

.p-topKv__pin--04 {
  top: 68.4028%;
  left: 85.445%;
}
@media (max-width: 767px) {
  .p-topKv__pin--04 {
    top: 50.7rem;
    left: 51.8rem;
  }
}

body:has(.p-hero) .c-menu {
  display: none;
}
@media (max-width: 767px) {
  body:has(.p-hero) .c-menu {
    display: block;
  }
}

.p-prize__cards,
.p-period__rank {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.p-prize__cards::-webkit-scrollbar,
.p-period__rank::-webkit-scrollbar {
  display: none;
}

.p-quiz {
  overflow: hidden;
}

body:has(.l-main) .views-field-field-block-00 .block-bg-frame,
body:has(.l-main) .common-aside-shop,
body:has(.l-main) .common-aside-instagram,
body:has(.l-main) .common-aside-flow-line {
  display: none;
}

body:has(.l-main) .views-field-field-block-00 {
  margin: 0;
  padding: 0;
}

body:has(.l-main) .l-main {
  margin-bottom: 0;
}

body:has(.l-main) .p-exam,
body:has(.l-main) .p-examResult {
  margin-bottom: 0;
}

body:has(.l-main) footer.common-footer {
  padding-top: 7rem;
}
@media (max-width: 767px) {
  body:has(.l-main) footer.common-footer {
    padding-top: 12rem;
  }
}

@media (max-width: 767px) {
  .p-credit__supervision {
    padding-bottom: 0;
  }
}

.p-topBg__layer,
.p-topArea::before,
.p-topBand::before,
.p-topQuizHead::before,
.p-topQuiz::before,
.p-topBand--mt::after,
.p-topBand--labo::after,
.p-topBand--city::after,
.p-topBand--shop::after {
  background-position-x: center, center;
}

body:has(.p-hero) {
  background-image: linear-gradient(#FFFFFF, #FFFFFF), repeating-linear-gradient(to right, #F2F2F2 0, #F2F2F2 1px, transparent 1px, transparent 3.7rem), repeating-linear-gradient(to bottom, #F2F2F2 0, #F2F2F2 1px, transparent 1px, transparent 3.7rem);
  background-repeat: no-repeat, repeat, repeat;
  background-size: 100% 99.247rem, 3.7rem 100%, 100% 3.7rem;
  background-position: 0 0, center 0, 0 6.75rem;
}
@media (max-width: 767px) {
  body:has(.p-hero) {
    background-image: none;
  }
}

.p-topQuiz,
.p-topProfile__card {
  background-size: 2.16rem 100%, 100% 2.16rem;
  background-position: calc(50% + 1.08rem) -1px, -1px -1px;
}

.p-quiz__grid {
  left: -1.08rem;
}
@media (max-width: 767px) {
  .p-quiz__grid {
    left: -1.5rem;
  }
}

.p-exam__grid {
  left: -1.08rem;
}
@media (max-width: 767px) {
  .p-exam__grid {
    left: -1.5rem;
  }
}

body:has(.common-header .nav-trigger[aria-expanded="true"]) .c-side,
body:has(.common-header .nav-trigger[aria-expanded="true"]) .c-floatBanner {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
