
@charset "UTF-8";
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

/*COMMON-----------------------------------------------------------------------------------------------------------------*/
/* --------------------
リセット追加
-------------------- */
input[type=text], input[type=password], input[type=submit], input[type=button], input[type=tel], input[type=email], textarea, select, button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  border: none;
  outline: none;
  font-family: inherit;
  font-size: 100%;
}

select::-ms-expand {
  display: none;
}

input[type=submit], input[type=button], button {
  cursor: pointer;
}

input:-ms-input-placeholder {
  color: #999;
  font-size: 1.3125rem;
}

input::placeholder {
  color: #999;
  font-size: 1.3125rem;
}

ul, ol, li {
  list-style: none;
}

/* --------------------
基本設定
-------------------- */
html {
  overflow-y: scroll;
}
html.msie body {
  font-size: 100%;
}
html.no-msie body {
  font-size: 16px;
}
html.iphone a:hover, html.ipod a:hover, html.ipad a:hover, html.android a:hover {
  opacity: 1 !important;
}
html.iphone a:hover img, html.ipod a:hover img, html.ipad a:hover img, html.android a:hover img {
  opacity: 1 !important;
}

body {
  -webkit-text-size-adjust: 100%;
  text-align: center;
  color: #fff;
  line-height: 1.4;
}

body.bgChange {
  background-color: #fff;
}

body {
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}
a {
  text-decoration: none;
}

img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
  vertical-align: bottom;
}

body,
body input,
body button {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Noto sans JP", "NotoSansCJKjp", sans-serif !important;
  font-weight: 400 !important;
}
body img,
body input img,
body button img {
  width: 100%;
  height: auto;
}
body li,
body input li,
body button li {
  list-style: none;
}
body *,
body :after,
body :before,
body input *,
body input :after,
body input :before,
body button *,
body button :after,
body button :before {
  box-sizing: border-box;
  line-break: strict;
}
body p,
body input p,
body button p {
  font-size: 15px;
  font-weight: 500;
}
body a,
body input a,
body button a {
  cursor: pointer;
}
body article,
body input article,
body button article {
  position: relative;
}

body {
  position: relative;
  background-color: #eee;
}
body::before {
  content: "";
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 460px;
  height: 100vh;
  background-color: var(--paper-bg-color);
}
body .IndexBody {
  position: relative;
  overflow: hidden;
  max-width: 460px;
  margin: 0 auto;
  background-color: var(--sub-bg-color);
  z-index: 2;
}
body .IndexBody.IndexBodyMainBg {
  background-color: var(--main-bg-color);
}

body .Loading, body .Lottery {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: var(--main-bg-color);
  transition: opacity 0.5s 0s;
  z-index: 99999;
}
body .Loading img, body .Lottery img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 112px;
}
body .Loading.hide, body .hide.Lottery {
  pointer-events: none;
  opacity: 0;
}
body .Lottery img {
  width: 210px;
}

body .BtnPrimary, body .BtnWinReceive, body .SubmitPrimary, body .SubmitLine, body .BtnCamera, body .BtnBackSub, body .BtnBackPaper, body .BtnSolidSub, body .BtnSolidPaper, body .BtnPrimaryTwoLine {
  position: relative;
  transform: translateZ(0);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 260px;
  height: 44px;
  margin: 0 auto;
  background-color: var(--sub-a-color);
  border-radius: 100px;
  letter-spacing: 0.02em;
  color: var(--sub-bg-color);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  filter: drop-shadow(0 3px 9px rgba(0, 0, 0, 0.3));
}
body .BtnPrimary input, body .BtnWinReceive input, body .SubmitPrimary input, body .SubmitLine input, body .BtnCamera input, body .BtnBackSub input, body .BtnBackPaper input, body .BtnSolidSub input, body .BtnSolidPaper input, body .BtnPrimaryTwoLine input {
  width: 100%;
  height: 100%;
  color: var(--sub-bg-color);
  font-weight: 600 !important;
}
body .BtnPrimary::after, body .BtnWinReceive::after, body .SubmitPrimary::after, body .SubmitLine::after, body .BtnCamera::after, body .BtnBackSub::after, body .BtnBackPaper::after, body .BtnSolidSub::after, body .BtnSolidPaper::after, body .BtnPrimaryTwoLine::after {
  content: "\e409";
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  font-family: "Material Symbols Rounded";
  font-size: 19px;
  font-weight: 500;
}
body .BtnPrimaryTwoLine {
  height: 54px;
  line-height: 1.3;
}
body .BtnHistory {
  position: relative;
  display: block;
  width: 96px;
  height: 49px;
  padding-top: 1px;
  background-color: var(--main-fg-color);
  border-radius: 100px;
  letter-spacing: 0.02em;
  color: var(--main-bg-color);
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  filter: drop-shadow(10px 2px 18px rgba(0, 0, 0, 0.3));
}
body .BtnHistory .IconHistory {
  display: block;
  width: 30px;
  margin: 0 auto;
}
body .BtnReceipt {
  position: relative;
  display: block;
  width: calc(100% - 104px);
  height: 49px;
  padding: 0 12px 0 9px;
  background-color: var(--main-fg-color);
  border-radius: 100px;
  color: var(--main-bg-color);
  font-weight: 600;
  filter: drop-shadow(10px 2px 18px rgba(0, 0, 0, 0.3));
}
body .BtnReceipt .BtnInner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  margin: 0 auto;
}
body .BtnReceipt .BtnInner .BtnIcon {
  display: block;
  width: 40px;
  height: 40px;
}
body .BtnReceipt .BtnInner .BtnTxt {
  position: relative;
  display: inline-block;
  padding: 0 3px;
}
body .BtnReceipt .BtnInner .BtnTxt .BtnTxt01 {
  display: block;
  font-size: 13px;
  line-height: 1.4;
}
body .BtnReceipt .BtnInner .BtnTxt .BtnTxt02 {
  display: block;
  letter-spacing: -0.02em;
  font-size: 10px;
  line-height: 1.4;
}
body .BtnSolidSub, body .BtnSolidPaper {
  max-width: 220px;
  height: 34px;
  background-color: transparent;
  border: 1px solid var(--sub-b-color);
  color: var(--sub-b-color);
  font-size: 12px;
  filter: none;
}
body .BtnSolidPaper {
  border: 1px solid var(--paper-fg-color);
  color: var(--paper-fg-color);
}
body .BtnBackSub, body .BtnBackPaper {
  max-width: 220px;
  height: 34px;
  background-color: transparent;
  border: 1px solid var(--sub-b-color);
  color: var(--sub-b-color);
  font-size: 12px;
  filter: none;
}
body .BtnBackSub::after, body .BtnBackPaper::after {
  content: "\e408";
  right: auto;
  left: 10px;
  font-size: 19px;
  font-weight: 500;
}
body .BtnBackPaper {
  border: 1px solid var(--paper-fg-color);
  color: var(--paper-fg-color);
}
body .BtnCamera {
  padding: 0 4px 0 0;
  background-color: var(--sub-b-color);
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.15));
}
body .BtnCamera::before {
  content: "\e412";
  margin-right: 5px;
  font-family: "Material Symbols Rounded";
  font-size: 22px;
  font-weight: 300;
}
body .BtnCamera::after {
  content: none;
}
body .BtnReload, body .BtnModalClose, body .BtnZoom {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 28px;
  margin: 0 auto;
  padding: 0 5px 0 0;
  border: 1px solid var(--main-fg-color);
  border-radius: 100px;
  color: var(--main-fg-color);
  font-size: 12px;
}
body .BtnReload::before, body .BtnModalClose::before, body .BtnZoom::before {
  content: "\e5d5";
  margin-right: 3px;
  font-family: "Material Symbols Rounded";
  font-size: 20px;
  font-weight: 300;
}
body .BtnZoom {
  width: 110px;
  padding: 0;
  background-color: var(--paper-bg-color);
  border: 1px solid var(--paper-fg-color);
  letter-spacing: -0.03em;
  color: var(--paper-fg-color);
}
body .BtnZoom::before {
  content: "\e8ff";
  font-weight: 300;
}
body .SubmitPrimary, body .SubmitLine {
  max-width: 400px;
  height: 40px;
  background-color: var(--main-bg-color);
  color: var(--main-fg-color);
  filter: none;
}
body .SubmitPrimary > input, body .SubmitLine > input {
  width: 100%;
  height: 100%;
  letter-spacing: 0.02em;
  color: var(--main-fg-color);
  font-size: 14px;
  font-weight: 600 !important;
}
body .SubmitLine {
  height: 60px;
  background-color: #06c755;
  box-shadow: 0 5px 0 #0ea04a;
  border-radius: 16px;
  color: #fff;
  font-size: 20px;
  animation: osos 1.5s ease-in-out infinite;
  z-index: 20;
}
body .SubmitLine::after {
  right: 8px;
  font-size: 30px;
}
@keyframes osos {
  60% {
    transform: translateY(0);
    box-shadow: 0 5px 0 #0ea04a;
  }
  70% {
    transform: translateY(5px);
    box-shadow: 0 0 0 #0ea04a;
  }
  75% {
    transform: translateY(5px);
    box-shadow: 0 0 0 #0ea04a;
  }
  100% {
    transform: translateY(0);
    box-shadow: 0 5px 0 #0ea04a;
  }
}
body .BtnModalClose {
  width: 160px;
  height: 36px;
  background-color: #fff;
  border: none;
  color: var(--paper-fg-color);
  font-size: 14px;
  font-weight: 600 !important;
}
body .BtnModalClose::before {
  content: "\e5cd";
  font-size: 22px;
  font-weight: 400;
}
body .BtnUnderline, body .BtnLineUnderline, body .BtnHistoryUnderLine, body .BtnUnderlineSub {
  position: relative;
  display: inline-block;
  padding: 10px 22px 10px 20px;
  text-decoration: underline;
  color: var(--main-fg-color);
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
}
body .BtnUnderline::after, body .BtnLineUnderline::after, body .BtnHistoryUnderLine::after, body .BtnUnderlineSub::after {
  content: "\e409";
  position: absolute;
  top: 50%;
  right: 3px;
  transform: translateY(-50%);
  font-family: "Material Symbols Rounded";
  font-size: 19px;
  font-weight: 500;
}
body .BtnUnderlineSub {
  color: var(--sub-b-color);
  font-size: 12px;
}
body .BtnLineUnderline, body .BtnHistoryUnderLine {
  padding: 12px 22px 12px 40px;
}
body .BtnLineUnderline::before, body .BtnHistoryUnderLine::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 4px;
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  background: url(https://receipt-line.com/calpiskit_cp/images/icon_line.png) center center/100% auto no-repeat;
}
body .BtnHistoryUnderLine {
  padding: 12px 22px 12px 25px;
  color: var(--sub-a-color);
  font-size: 12px;
}
body .BtnHistoryUnderLine::before {
  content: none;
}
body .BtnHistoryUnderLine .IconHistory {
  position: absolute;
  top: 50%;
  left: 4px;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
}
body .BtnWinReceive {
  width: 100%;
  max-width: none;
  height: 38px;
  margin: -5px 0 0;
  border-radius: 6px;
  font-size: 12px;
  filter: drop-shadow(0 1px 5px rgba(0, 0, 0, 0.15));
}
body .BtnWinReceive::after {
  right: 6px;
}
body .DisableBtn {
  background-color: #919191 !important;
  border: none !important;
  pointer-events: none !important;
  color: rgba(255, 255, 255, 0.5) !important;
  filter: none !important;
}
body .DisableBtn input {
  pointer-events: none !important;
  opacity: 0.5 !important;
}
body .DisableBtn::after {
  opacity: 0.5 !important;
}
body .Bg_PayPay {
  background-color: #f03 !important;
}
body .Bg_Rakuten {
  background-color: #bf0000 !important;
}
body .Bg_Line {
  background-color: #06c755 !important;
}
body .Bg_d {
  background-color: #c03 !important;
}
body .Bg_V {
  background-color: #034099 !important;
}
body .Color_PayPay {
  color: #f03 !important;
}
body .Color_Rakuten {
  color: #bf0000 !important;
}
body .Color_Line {
  color: #06c755 !important;
}
body .Color_d {
  color: #c03 !important;
}
body .Color_V {
  color: #034099 !important;
}

header .BottomNav {
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 460px;
  height: 92px;
  background: rgba(250, 250, 250, 0.95);
  z-index: 1000;
}
header .BottomNav > a {
  position: absolute;
  bottom: 31px;
  left: 50%;
  transform: translateX(-50%) translateZ(0);
  width: 220px;
  border: 2px solid var(--main-bg-color);
  filter: drop-shadow(0 3px 9px rgba(0, 0, 0, 0.3));
}
header .HamburgerWrap {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 460px;
  z-index: 1000;
}
header .HamburgerWrap .Hamburger {
  position: absolute;
  top: 0;
  right: 0;
  width: 49px;
  height: 44px;
  pointer-events: auto;
}
header .HamburgerWrap .Hamburger .HamburgerBg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  transition: all 0.3s ease-out;
}
header .HamburgerWrap .Hamburger .Stick01, header .HamburgerWrap .Hamburger .Stick03, header .HamburgerWrap .Hamburger .Stick02 {
  position: absolute;
  top: calc(50% - 7px);
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 19px;
  height: 2px;
  background-color: var(--main-fg-color);
  border-radius: 10px;
  transition: all 0.3s ease-in-out;
}
header .HamburgerWrap .Hamburger .Stick02 {
  top: 50%;
}
header .HamburgerWrap .Hamburger .Stick03 {
  top: calc(50% + 7px);
}
header .HamburgerWrap .Hamburger.open .HamburgerBg {
  background-color: var(--main-bg-color);
}
header .HamburgerWrap .Hamburger.open .Stick01, header .HamburgerWrap .Hamburger.open .Stick02, header .HamburgerWrap .Hamburger.open .Stick03 {
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 23px;
  background-color: var(--main-fg-color);
}
header .HamburgerWrap .Hamburger.open .Stick02 {
  transform: translate(-50%, -50%) rotate(-45deg);
  width: 23px;
}
header .HamburgerWrap .Hamburger.open .Stick03 {
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 23px;
}
header .HamburgerInner {
  position: fixed;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: none;
  width: 100%;
  max-width: 460px;
  z-index: 1000;
}
header .HamburgerInner .HamburgerTtl {
  width: 280px;
  margin: 0 auto;
  padding: 8px 0 6px;
  background-color: var(--main-fg-color);
  border-radius: 4px;
  letter-spacing: -0.02em;
  color: var(--main-bg-color);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  animation: uwa 0.5s ease 0.15s forwards;
  opacity: 0;
}
@keyframes uwa {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
header .HamburgerInner .HamburgerTtl span {
  letter-spacing: 0;
  font-family: "Arial", sans-serif;
  font-size: 19px;
  line-height: 1.3;
}
header .HamburgerInner .HamburgerUl > li {
  opacity: 0;
}
header .HamburgerInner .HamburgerUl > li:nth-child(1) {
  animation: fuwa 0.5s ease 0s forwards;
}
header .HamburgerInner .HamburgerUl > li:nth-child(2) {
  animation: fuwa 0.5s ease 0.05s forwards;
}
header .HamburgerInner .HamburgerUl > li:nth-child(3) {
  animation: fuwa 0.5s ease 0.1s forwards;
}
header .HamburgerInner .HamburgerUl > li:nth-child(4) {
  animation: fuwa 0.5s ease 0.15s forwards;
}
header .HamburgerInner .HamburgerUl > li:nth-child(5) {
  animation: fuwa 0.5s ease 0.2s forwards;
}
header .HamburgerInner .HamburgerUl > li:nth-child(6) {
  animation: fuwa 0.5s ease 0.25s forwards;
}
header .HamburgerInner .HamburgerUl > li:nth-child(7) {
  animation: fuwa 0.5s ease 0.3s forwards;
}
@keyframes fuwa {
  0% {
    transform: translateY(10px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

body .Area {
  padding: 30px 25px 40px;
}
body .Area .AreaInner {
  max-width: 370px;
  margin: 0 auto;
}
body .AreaBtn {
  padding: 25px 25px;
  background-color: #fff;
  border-top: 1px solid color-mix(in srgb, var(--paper-fg-color), transparent 70%);
}
body .AreaApply {
  padding: 62px 25px 40px;
}
body .HeadTxt {
  color: var(--sub-a-color);
  font-size: 17px;
  font-weight: 600;
}
body .BarHead {
  position: relative;
  padding: 10px 12px;
  background-color: var(--main-bg-color);
  border-radius: 3px;
  text-align: left;
  letter-spacing: 0.04em;
  color: var(--main-fg-color);
  font-size: 13px;
}
body .BarHead span {
  padding: 0 0 0 12px;
  letter-spacing: 0;
  font-size: 14px;
}
body .LeftTxt {
  text-align: left;
  color: var(--sub-b-color);
  font-size: 12px;
}
body .CenterTxt {
  text-align: center;
  color: var(--sub-b-color);
  font-size: 14px;
}
body .Cap {
  text-align: left;
  color: var(--sub-b-color);
  font-size: 10px;
}
body .Cap li {
  padding-left: 1em;
  text-indent: -1em;
}
body .Bold {
  font-weight: 600;
}
body .SmallTxt {
  font-size: 10px;
}
body .ColorError {
  color: var(--error-color) !important;
}
body .CenterCap {
  text-align: center;
  color: var(--sub-b-color);
  font-size: 10px;
}
body .TotalPointTxt {
  display: inline-block;
  padding: 6px 20px;
  border: 1px solid var(--paper-fg-color);
  border-radius: 100px;
  color: var(--paper-fg-color);
  font-size: 12px;
  line-height: 1.5;
}
body .TotalPointTxt span {
  padding: 0 2px;
  font-size: 14px;
  line-height: 1;
}
body .PointTxtWrap {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 11px 18px;
  background-color: color-mix(in srgb, var(--paper-bg-color), transparent 30%);
  background-color: var(--main-bg-color);
  border-radius: 6px;
  text-align: center;
  color: var(--main-fg-color);
}
body .PointTxtWrap .IconPoint {
  width: 26px;
  margin-right: 4px;
}
body .PointTxtWrap > p {
  font-size: 13px;
}
body .SolidWrap {
  position: relative;
  width: 100%;
  padding: 16px 20px;
  background-color: var(--paper-bg-color);
  border: 1px solid var(--paper-fg-color);
  border-radius: 6px;
  color: var(--paper-fg-color);
  z-index: 2;
}
body .SolidWrap * {
  color: var(--paper-fg-color);
}
body .PointBox {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  margin: 7px auto 0;
  color: var(--paper-fg-color);
  line-height: 1;
}
body .PointBox .PointTxt {
  display: block;
  padding: 0 0 4px 0;
  font-size: 16px;
  font-weight: 600;
}
body .PointBox .PointNum {
  padding: 0 4px;
  letter-spacing: -0.02em;
  font-family: Futura, "Century Gothic", CenturyGothic, sans-serif !important;
  font-size: 38px;
  line-height: 1;
}
body .NecessityTxt {
  margin: 0 auto;
  color: var(--sub-a-color);
  font-size: 13px;
  font-weight: 600;
}
body .ApplyWinImg {
  overflow: hidden;
  border-radius: 6px;
  filter: drop-shadow(0 2px 20px rgba(0, 0, 0, 0.15));
}
body .GiftCode {
  padding: 8px 0;
  background-color: var(--paper-bg-color);
  border: 2px solid var(--paper-fg-color);
  border-radius: 6px;
}
body .GiftCode > p {
  color: var(--paper-fg-color);
  font-size: 20px;
  font-weight: 600;
}
body .FormWrap {
  text-align: left;
  color: var(--sub-b-color);
}
body .FormWrap > dl > dt {
  margin: 16px auto 6px;
}
body .FormWrap > dl > dt .FormQuestion {
  color: var(--sub-a-color);
  font-size: 13px;
  font-weight: 600;
}
body .FormWrap > dl > dt .FormQuestion .DtCap {
  color: var(--sub-b-color);
  font-size: 11px;
  font-weight: 400;
}
body .FormWrap > dl > dt .FormError {
  display: block;
  margin: 6px auto 0;
  padding: 4px 8px;
  background: var(--error-color);
  border: 1px solid #fff;
  border-radius: 3px;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
}
body .FormWrap > dl > dd {
  display: flex;
}
body .FormWrap > dl > dd .FormRadio {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  color: var(--paper-fg-color);
}
body .FormWrap > dl > dd .FormRadio input {
  display: none;
}
body .FormWrap > dl > dd .FormRadio .RadioBtn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc((100% - 12px) / 3);
  min-height: 38px;
  padding: 6px 12px;
  background: var(--paper-bg-color);
  border: 1px solid #999;
  border-radius: 6px;
  color: var(--paper-fg-color);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
}
body .FormWrap > dl > dd .FormRadio input[type=radio]:checked + .RadioBtn {
  background-color: var(--sub-a-color);
  border: 1px solid var(--sub-bg-color);
  color: var(--sub-bg-color);
}
body .FormWrap > dl > dd .FormSelect {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
body .FormWrap > dl > dd .FormSelect .SelectWrap {
  position: relative;
  width: 100%;
  height: 42px;
}
body .FormWrap > dl > dd .FormSelect .SelectWrap select {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 2px 25px 0 12px;
  background-color: #fff;
  border: 1px solid #999;
  border-radius: 6px;
  text-align: left;
  color: var(--paper-fg-color);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
}
body .FormWrap > dl > dd .FormSelect .SelectWrap::after {
  content: "\e5c5";
  position: absolute;
  top: 52%;
  right: 6px;
  transform: translateY(-50%);
  pointer-events: none;
  color: #999;
  font-family: "Material Symbols Rounded";
  font-size: 20px;
  font-weight: 900;
}
body .FormWrap > dl > dd .FormSelect span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  color: var(--main-bg-color);
  font-size: 12px;
  font-weight: 600;
  line-height: 36px;
}
body .FormWrap > dl > dd .FormCheckbox {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
body .FormWrap > dl > dd .FormCheckbox input[type=checkbox] {
  display: none;
}
body .FormWrap > dl > dd .FormCheckbox .Checkbox {
  position: relative;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: calc(50% - 3px);
  min-height: 36px;
  margin-top: 6px;
  padding: 6px 4px 6px 30px;
  background-color: var(--paper-bg-color);
  border: 1.5px solid #999;
  border-radius: 6px;
  text-align: left;
  color: var(--paper-fg-color);
  font-size: 10px;
  font-weight: 600;
  line-height: 1.3;
  transition: background-color 0.2s linear;
}
body .FormWrap > dl > dd .FormCheckbox .Checkbox span {
  width: 100%;
}
body .FormWrap > dl > dd .FormCheckbox .Checkbox::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translate(-50%, -50%);
  display: block;
  width: 16px;
  height: 16px;
  background-color: var(--paper-bg-color);
  border: 1.5px solid #999;
  border-radius: 3px;
  transition: border-color 0.2s linear;
}
body .FormWrap > dl > dd .FormCheckbox .Checkbox::after {
  content: "\e876";
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translate(-50%, -50%);
  color: var(--main-fg-color);
  font-family: "Material Symbols Rounded";
  font-size: 20px;
  font-weight: 700;
  opacity: 0;
}
body .FormWrap > dl > dd .FormCheckbox .Checkbox:nth-child(-n+4) {
  margin-top: 0;
}
body .FormWrap > dl > dd .FormCheckbox input[type=checkbox]:checked + .Checkbox {
  background-color: var(--sub-a-color);
  border: 1.5px solid var(--sub-a-color);
  color: var(--sub-bg-color);
}
body .FormWrap > dl > dd .FormCheckbox input[type=checkbox]:checked + .Checkbox::before {
  background-color: var(--main-bg-color);
  border: 1.5px solid var(--main-bg-color);
}
body .FormWrap > dl > dd .FormCheckbox input[type=checkbox]:checked + .Checkbox::after {
  opacity: 1;
}
body .FormWrap > dl > dd .FormCheckboxSingle {
  width: 100%;
  text-align: left;
}
body .FormWrap > dl > dd .FormCheckboxSingle label {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  margin-top: 10px;
  padding: 0 4px 0 30px;
  background-color: transparent;
  border: none;
  color: var(--sub-b-color);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  transition: color 0.2s linear;
  cursor: pointer;
}
body .FormWrap > dl > dd .FormCheckboxSingle label:first-of-type {
  margin-top: 8px;
}
body .FormWrap > dl > dd .FormCheckboxSingle label::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translate(-50%, -50%);
  width: 16px;
  height: 16px;
  background-color: var(--paper-bg-color);
  border: 1.5px solid #999;
  border-radius: 3px;
  transition: border-color 0.2s linear;
}
body .FormWrap > dl > dd .FormCheckboxSingle label::after {
  content: "\e876";
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translate(-50%, -50%);
  color: var(--main-fg-color);
  font-family: "Material Symbols Rounded";
  font-size: 20px;
  font-weight: 700;
  opacity: 0;
}
body .FormWrap > dl > dd .FormCheckboxSingle input[type=checkbox] {
  display: none;
}
body .FormWrap > dl > dd .FormCheckboxSingle input[type=checkbox]:checked + label::before {
  background-color: var(--main-bg-color);
  border: 1.5px solid var(--main-bg-color);
}
body .FormWrap > dl > dd .FormCheckboxSingle input[type=checkbox]:checked + label::after {
  opacity: 1;
}
body .FormWrap > dl > dd .FormCheckboxSingle .CheckboxOtherInput {
  margin-top: 9px;
  pointer-events: none;
  transition: opacity 0.2s linear;
  opacity: 0.4;
}
body .FormWrap > dl > dd .FormCheckboxSingle:has(.OtherCheck:checked) .CheckboxOtherInput {
  pointer-events: auto;
  opacity: 1;
}
body .FormWrap > dl > dd .FormRadioSingle {
  width: 100%;
  text-align: left;
}
body .FormWrap > dl > dd .FormRadioSingle label {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  margin-top: 10px;
  padding: 0 4px 0 30px;
  background-color: transparent;
  border: none;
  color: var(--sub-b-color);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  transition: color 0.2s linear;
  cursor: pointer;
}
body .FormWrap > dl > dd .FormRadioSingle label:first-of-type {
  margin-top: 8px;
}
body .FormWrap > dl > dd .FormRadioSingle label::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translate(-50%, -50%);
  width: 16px;
  height: 16px;
  background-color: var(--paper-bg-color);
  border: 1.5px solid #999;
  border-radius: 50%;
  transition: border-color 0.2s linear;
}
body .FormWrap > dl > dd .FormRadioSingle label::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 8px;
  background-color: #fff;
  border-radius: 50%;
  opacity: 0;
}
body .FormWrap > dl > dd .FormRadioSingle input[type=radio] {
  display: none;
}
body .FormWrap > dl > dd .FormRadioSingle input[type=radio]:checked + label::before {
  background-color: #fff;
  border: 1.5px solid var(--main-bg-color);
}
body .FormWrap > dl > dd .FormRadioSingle input[type=radio]:checked + label::after {
  background-color: var(--main-bg-color);
  opacity: 1;
}
body .FormWrap > dl > dd .FormRadioSingle .CheckboxOtherInput {
  margin-top: 9px;
  pointer-events: none;
  transition: opacity 0.2s linear;
  opacity: 0.4;
}
body .FormWrap > dl > dd .FormRadioSingle:has(.OtherCheck:checked) .CheckboxOtherInput {
  pointer-events: auto;
  opacity: 1;
}
body .FormWrap > dl > dd .FormInput, body .FormWrap > dl > dd .FormTextarea {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 42px;
  padding: 6px 12px 6px 12px;
  background: var(--paper-bg-color);
  border: 1px solid #999;
  border-radius: 6px;
  color: var(--paper-fg-color);
  font-size: 16px;
  font-weight: 600 !important;
  line-height: 1.3;
}
body .FormWrap > dl > dd .FormInput::placeholder, body .FormWrap > dl > dd .FormTextarea::placeholder {
  font-size: 14px;
  font-weight: 600;
}
body .FormWrap > dl > dd .FormInput.FormInputBirth, body .FormWrap > dl > dd .FormInputBirth.FormTextarea {
  width: 140px;
}
body .FormWrap > dl > dd .FormInput.FormInputHalf, body .FormWrap > dl > dd .FormInputHalf.FormTextarea {
  width: calc((100% - 6px) / 2);
  margin-left: 6px;
}
body .FormWrap > dl > dd .FormInput.FormInputHalf:first-child, body .FormWrap > dl > dd .FormInputHalf.FormTextarea:first-child {
  margin-left: 0;
}
body .FormWrap > dl > dd .AddressConfirm {
  display: block;
  width: 100%;
  padding: 10px 8px;
  background-color: var(--paper-bg-color);
  border-radius: 5px;
  color: var(--paper-fg-color);
  font-size: 16px;
  font-weight: 600;
}
body .FormWrap > dl > dd .AddressInputBtn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 120px;
  height: 42px;
  margin: 0 0 0 6px;
  background-color: var(--main-bg-color);
  border: 1px solid var(--main-bg-color);
  border-radius: 6px;
  color: var(--main-fg-color);
  font-size: 12px;
  font-weight: 600;
}
body .FormWrap > dl > dd .FormTextarea {
  overflow: auto;
  height: 120px;
  resize: vertical;
}
body .FormWrap .SpecialCapWrap {
  padding-top: 15px;
  border-top: 1.5px solid color-mix(in srgb, var(--sub-b-color), transparent 50%);
}
body .ErrorHead {
  position: relative;
  display: block;
  padding: 9px 9px 9px 29px;
  background: #fff;
  border: 1px solid var(--error-color);
  border-radius: 4px;
  color: var(--error-color);
}
body .ErrorHead::before {
  content: "\e000";
  position: absolute;
  top: 50%;
  left: 4px;
  transform: translateY(-50%);
  font-family: "Material Symbols Rounded";
  font-size: 22px;
  font-weight: 400;
}
body .ErrorHead .ErrorHeadTxt {
  font-size: 12px;
  font-weight: 600;
}
body .PeriodWrap, body .PeriodEndWrap {
  max-width: 340px;
  margin: 0 auto;
  padding: 2px 5px 9px;
  border: 1px solid var(--sub-b-color);
  border-radius: 6px;
  font-weight: 600;
}
body .PeriodWrap .PeriodHead, body .PeriodEndWrap .PeriodHead {
  margin-top: 6px;
  color: var(--sub-b-color);
  font-size: 12px;
  line-height: 1.2;
}
body .PeriodWrap .PeriodTxt, body .PeriodEndWrap .PeriodTxt {
  margin-top: 2px;
  color: var(--sub-b-color);
  font-size: 12px;
  line-height: 1.2;
}
body .PeriodEndWrap {
  padding: 8px 5px 14px;
  background-color: var(--error-color);
  border: none;
}
body .PeriodEndWrap .PeriodHead {
  color: #fff;
  font-size: 14px;
  line-height: 1.3;
}
body .PeriodEndWrap .PeriodTxt {
  margin-top: 5px;
  color: #fff;
  font-size: 13px;
  line-height: 1.3;
}
body .FixPoint {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%) translateZ(0);
  width: 100%;
  max-width: 460px;
  filter: drop-shadow(0 3px 25px rgba(0, 0, 0, 0.2));
  z-index: 200;
}
body .FixPoint .FixPointInner {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 8px 12px 8px 8px;
  background-color: var(--main-bg-color);
  border-radius: 0 0 14px 0px;
  color: var(--main-fg-color);
}
body .FixPoint .FixPointInner .IconPoint {
  overflow: hidden;
  width: 28px;
  height: 28px;
}
body .FixPoint .FixPointInner .IconPoint img {
  width: 100%;
  height: auto;
}
body .FixPoint .FixPointInner .PointName {
  padding: 0 7px 0 8px;
  text-align: left;
  letter-spacing: -0.02em;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.12;
}
body .FixPoint .FixPointInner .PointNum {
  padding: 0;
  letter-spacing: -0.02em;
  font-family: Futura, "Century Gothic", CenturyGothic, sans-serif !important;
  font-size: 22px;
  line-height: 1;
}
body .FixPoint .FixPointInner .PointUnit02 {
  transform: scale(0.88);
  margin: 0 -2px 0 -1px;
  padding-top: 8px;
  letter-spacing: -0.07em;
  font-size: 10px;
  font-weight: 600;
}
body .FixPoint .FixPointInner .PointKai {
  padding: 4px 0 0 3px;
  font-family: Futura, "Century Gothic", CenturyGothic, sans-serif !important;
  font-size: 13px;
  font-weight: 600;
}
body .ApplyUl {
  transform: translateZ(0);
  filter: drop-shadow(0 2px 20px rgba(0, 0, 0, 0.15));
}
body .ApplyUl .ApplyLi {
  position: relative;
  overflow: hidden;
  margin-top: 15px;
  background-color: #fafafc;
  border-radius: 8px;
  z-index: 1;
}
body .ApplyUl .ApplyLi:first-child {
  margin-top: 0;
}
body .ApplyUl .ApplyLi .ApplyImg {
  position: relative;
  border-bottom: 1px solid color-mix(in srgb, var(--paper-fg-color), transparent 90%);
}
body .ApplyUl .ApplyLi .ApplyDesc {
  position: relative;
  padding: 16px 20px 20px;
  background-color: color-mix(in srgb, var(--sub-a-color), transparent 98%);
  text-align: left;
}
body .ApplyUl .ApplyLi .ApplyDesc .ApplyCont {
  font-size: 0;
}
body .ApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyCourse {
  display: inline-block;
  margin: 0 0 6px;
  padding: 4px 12px 5px;
  background-color: var(--sub-a-color);
  border-radius: 100px;
  color: var(--sub-bg-color);
  line-height: 0;
}
body .ApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyCourse span {
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
}
body .ApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyCourse span.CourseNum {
  margin: 0 2px;
  font-size: 13px;
}
body .ApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyTtl {
  padding: 0 0 0 4px;
  color: var(--paper-fg-color);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.3;
}
body .ApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyWinnersNum {
  padding: 6px 0 0 4px;
  color: color-mix(in srgb, var(--paper-fg-color), transparent 20%);
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
}
body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn {
  display: flex;
  justify-content: space-between;
  margin-top: 14px;
}
body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .ApplyInfo {
  display: flex;
  align-items: center;
  flex: 1 1 86px;
  justify-content: center;
  height: 37px;
  padding: 0 0 0 14px;
  border: 1px solid var(--paper-fg-color);
  border-radius: 100px;
  color: var(--paper-fg-color);
  font-size: 12px;
}
body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .ApplyInfo::after {
  content: "\e409";
  margin-left: 2px;
  font-family: "Material Symbols Rounded";
  font-size: 17px;
  font-weight: 500;
}
body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnPrimary, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnPrimaryTwoLine, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnSolidSub, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnSolidPaper, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnBackSub, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnBackPaper, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnCamera, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .SubmitPrimary, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .SubmitLine, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnWinReceive {
  flex: 4 4 205px;
  height: 37px;
  margin-left: 3%;
  font-size: 12px;
  filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.15));
}
body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnPrimary::after, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnPrimaryTwoLine::after, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnSolidSub::after, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnSolidPaper::after, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnBackSub::after, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnBackPaper::after, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnCamera::after, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .SubmitPrimary::after, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .SubmitLine::after, body .ApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnWinReceive::after {
  content: "\e409";
  right: 8px;
  font-size: 17px;
}
body .ApplyUl .ApplyLi .ApplyMaxWrap {
  margin-top: -4px;
  padding: 0 20px 20px;
}
body .ApplyUl .ApplyLi .ApplyMaxWrap .ApplyMaxInner {
  padding: 8px 5px;
  background-color: var(--paper-bg-color);
  border: 1px solid color-mix(in srgb, var(--paper-fg-color), transparent 80%);
  border-radius: 5px;
}
body .ApplyUl .ApplyLi .ApplyMaxWrap .ApplyMaxInner .ApplyMax {
  display: block;
  text-align: center;
  color: var(--paper-fg-color);
  font-size: 12px;
  font-weight: 600;
}
body .ApplyUl .ApplyLi .ApplyMaxWrap .ApplyMaxInner .ApplyLeft {
  text-align: center;
  color: var(--paper-fg-color);
  font-size: 12px;
}
body .ApplyUl.SlickApplyUl, body .ApplyUl.SlickStepUl, body .ApplyUl.OneApplyUl {
  margin: 0 -25px;
  filter: drop-shadow(0 3px 25px rgba(0, 0, 0, 0.15));
}
body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc .ApplyCont {
  flex: 3 3 198px;
  padding: 0 2% 0 0;
}
body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyWinnersNum {
  padding-bottom: 4px;
}
body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc .ApplyBtn {
  flex: 1 1 86px;
  margin-top: 10px;
}
body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnPrimary, body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnPrimaryTwoLine, body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnSolidSub, body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnSolidPaper, body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnBackSub, body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnBackPaper, body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnCamera, body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc .ApplyBtn .SubmitPrimary, body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc .ApplyBtn .SubmitLine, body .ApplyUl.ConfirmApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnWinReceive {
  display: none;
}
body .ApplyUl.WinApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyWinnersNum {
  display: none;
}
body .ApplyUl.WinApplyUl .ApplyLi .ApplyDesc .ApplyBtn {
  display: none;
}
body .ApplyUl.WinApplyUl .ApplyLi .ApplyMaxWrap {
  display: none;
}
body .ApplyNumWrap {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  color: var(--paper-fg-color);
  font-weight: 600;
}
body .ApplyNumWrap span {
  padding: 0 0 8px;
  color: var(--sub-b-color);
  font-size: 14px;
}
body .ApplyNumWrap .ApplyConfirmNum {
  margin: 0 6px 0 10px;
  padding: 0 0 4px;
  font-size: 24px;
}
body .ApplyNumWrap .ApplyNumSelectWrap {
  position: relative;
  display: block;
  height: 40px;
  margin: 0 4px 0 8px;
}
body .ApplyNumWrap .ApplyNumSelectWrap select {
  position: relative;
  display: block;
  height: 100%;
  padding: 1px 22px 0 10px;
  background-color: #fff;
  border: 1px solid var(--paper-fg-color);
  border-radius: 6px;
  text-align: left;
  letter-spacing: -0.04em;
  font-size: 16px;
  font-weight: 600;
}
body .ApplyNumWrap .ApplyNumSelectWrap::after {
  content: "\e5c5";
  position: absolute;
  top: 52%;
  right: 2px;
  transform: translateY(-50%);
  pointer-events: none;
  font-family: "Material Symbols Rounded";
  font-size: 20px;
  font-weight: 900;
}
body .StepUl {
  transform: translateZ(0);
  margin: 0 -25px;
  filter: drop-shadow(0 2px 20px rgba(0, 0, 0, 0.15));
}
body .StepUl .StepLi {
  margin: 0 8px;
}
body .SubmitWrap {
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%) translateZ(0);
  width: 100%;
  max-width: 460px;
  padding: 18px 20px 26px;
  background-color: var(--paper-bg-color);
  border-radius: 22px 22px 0 0;
  filter: drop-shadow(0 -3px 20px rgba(0, 0, 0, 0.3));
  z-index: 20;
}
body .SubmitWrap .SubmitCheckUl {
  display: flex;
  justify-content: space-between;
  width: 196px;
  margin: -3px auto 12px;
}
body .SubmitWrap .SubmitCheckUl.SubmitCheckUlInvoice {
  width: 225px;
}
body .SubmitWrap .SubmitCheckUl .SubmitCheck {
  position: relative;
  display: flex;
  align-items: center;
  color: #a6a6a6;
}
body .SubmitWrap .SubmitCheckUl .SubmitCheck::before {
  content: "\e876";
  width: 20px;
  height: 20px;
  background-color: #a6a6a6;
  border-radius: 50%;
  color: rgba(255, 255, 255, 0.8);
  font-family: "Material Symbols Rounded";
  font-size: 18px;
  font-weight: 800;
  line-height: 20px;
}
body .SubmitWrap .SubmitCheckUl .SubmitCheck > span {
  padding: 2px 0 0 6px;
  font-size: 12px;
  font-weight: 600;
}
body .SubmitWrap .SubmitCheckUl .SubmitCheck.checked {
  color: var(--paper-fg-color);
}
body .SubmitWrap .SubmitCheckUl .SubmitCheck.checked::before {
  background-color: var(--main-bg-color);
  color: var(--main-fg-color);
}
body .SubmitWrap .SubmitCheckUl .SubmitCheck.checked::after {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(100% - 17px);
  transform: translateY(-50%);
  width: 14px;
  height: 57%;
  background-color: var(--main-bg-color);
  animation: shu 0.6s ease-in-out both;
}
@keyframes shu {
  0% {
    width: 14px;
  }
  35% {
    width: 8px;
  }
  50% {
    width: 8px;
  }
  100% {
    width: 0;
  }
}
body .SubmitWrap .CenterCap {
  color: var(--paper-fg-color);
}
body .ReceiptForm .ReceiptTxt {
  padding: 0 8px;
}
body .ReceiptForm .ReceiptProductsWrap, body .ReceiptForm .ReceiptConfirmWrap {
  transform: translateZ(0);
  padding: 0 4px;
  filter: drop-shadow(0 2px 20px rgba(0, 0, 0, 0.15));
}
body .ReceiptForm .ProductsInputWrap {
  padding: 20px 20px 6px;
  background-color: #fff;
  border-radius: 6px;
  text-align: left;
  color: var(--paper-fg-color);
}
body .ReceiptForm .ProductsInputWrap .BtnProductsType {
  position: relative;
  display: block;
  width: calc(100% - 64px);
  padding: 2px 0 4px;
  color: var(--paper-fg-color);
  font-size: 14px;
  font-weight: 600;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner {
  position: relative;
  padding: 0 0 12px;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner .GuideBox {
  display: flex;
  justify-content: flex-end;
  margin: 0 auto -1px;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner .GuideBox .GuideNum {
  width: 44px;
  text-align: center;
  color: var(--paper-fg-color);
  font-size: 10px;
  font-weight: 600;
  line-height: 1;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner > dl {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 8px 0;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner > dl > dt {
  position: relative;
  display: flex;
  align-items: center;
  width: calc(100% - 44px);
  min-height: 50px;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner > dl > dt .ProductsBox {
  display: flex;
  align-items: center;
  width: calc(100% - 20px);
  height: 100%;
  min-height: 50px;
  padding-left: 52px;
  background-color: color-mix(in srgb, var(--paper-fg-color), transparent 92%);
  border-radius: 4px;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner > dl > dt .ProductsBox .ProductsPoint {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 100%;
  background-color: var(--main-bg-color);
  border-radius: 4px 0 0 4px;
  text-align: center;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner > dl > dt .ProductsBox .ProductsPoint .ProductsPointTxt {
  color: var(--main-fg-color);
  font-size: 14px;
  font-weight: 600;
  line-height: 1em;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner > dl > dt .ProductsBox .ProductsPoint .ProductsPointTxt > span {
  letter-spacing: -0.1em;
  font-size: 10px;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner > dl > dt .ProductsBox .ProductsName {
  width: 100%;
  padding: 0 12px 0 5px;
  font-size: 10px;
  line-height: 1.2;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner > dl > dt .ProductsX {
  width: 20px;
  text-align: center;
  font-size: 16px;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner > dl > dd {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 44px;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner > dl > dd:has(input) {
  min-height: 50px;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner > dl > dd ._error {
  padding: 3px 0;
  letter-spacing: -0.01em;
  color: var(--error-color);
  font-size: 10px;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner > dl > dd ._error._hidden {
  display: none;
}
body .ReceiptForm .ProductsInputWrap .ReceiptProductsInner > dl > dd .InputNum {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 50px;
  padding: 2px 2px 0;
  border: 1px solid var(--paper-fg-color);
  border-radius: 6px;
  text-align: center;
  letter-spacing: -0.04em;
  font-size: 16px;
  font-weight: 600 !important;
}
body .ReceiptForm .ReceiptPhotoWrap {
  padding: 0 4px;
}
body .ReceiptForm .ReceiptPhotoWrap .ReceiptPhoto {
  overflow-y: scroll;
  width: 100%;
  max-height: 230px;
  border: 1px solid color-mix(in srgb, var(--paper-fg-color), transparent 60%);
}
body .ReceiptForm .ReceiptConfirmWrap .ProductsInputWrap {
  padding: 7px 15px;
}
body .ReceiptForm .ReceiptConfirmWrap .ProductsInputWrap .ReceiptProductsInner {
  display: block;
  padding: 0;
}
body .ReceiptForm .ReceiptConfirmWrap .ProductsInputWrap .ReceiptProductsInner > dl {
  height: 54px;
  margin: 8px 0;
  padding-right: 14px;
  background-color: color-mix(in srgb, var(--paper-fg-color), transparent 97%);
  border-radius: 4px;
}
body .ReceiptForm .ReceiptConfirmWrap .ProductsInputWrap .ReceiptProductsInner > dl > dt {
  width: calc(100% - 30px);
}
body .ReceiptForm .ReceiptConfirmWrap .ProductsInputWrap .ReceiptProductsInner > dl > dt .ProductsBox {
  background-color: transparent;
}
body .ReceiptForm .ReceiptConfirmWrap .ProductsInputWrap .ReceiptProductsInner > dl > dt .ProductsBox .ProductsName {
  width: calc(100% - 40px);
  padding: 0 5px;
}
body .ReceiptForm .ReceiptConfirmWrap .ProductsInputWrap .ReceiptProductsInner > dl > dt .ProductsX {
  width: 20px;
}
body .ReceiptForm .ReceiptConfirmWrap .ProductsInputWrap .ReceiptProductsInner > dl > dd {
  align-items: center;
  justify-content: flex-end;
  width: 30px;
}
body .ReceiptForm .ReceiptConfirmWrap .ProductsInputWrap .ReceiptProductsInner > dl > dd .ConfirmNum {
  width: 100%;
  padding: 2px 2px 0;
  border-radius: 6px;
  text-align: right;
  letter-spacing: -0.01em;
  font-size: 14px;
  font-weight: 600;
}
body .ReceiptForm .ReceiptConfirmPointWrap {
  position: relative;
  margin-top: 8px;
  padding: 22px 20px 20px;
  background-color: var(--paper-bg-color);
  border: 1px solid color-mix(in srgb, var(--paper-fg-color), transparent 60%);
  border-radius: 6px;
  text-align: center;
  color: var(--paper-fg-color);
}
body .ReceiptForm .ReceiptConfirmPointWrap .ConfirmPointTxt01 {
  font-size: 12px;
  font-weight: 600;
}
body .ReceiptForm .ReceiptConfirmPointWrap .ConfirmPointTxt02 {
  margin-top: 12px;
  letter-spacing: -0.03em;
  color: var(--paper-fg-color);
  font-size: 14px;
  font-weight: 600;
}
body .ReceiptForm .ReceiptConfirmPointWrap .ConfirmPointTxt02 > span {
  display: inline-block;
  margin: 0 8px 0 10px;
  padding: 8px 14px;
  background-color: color-mix(in srgb, var(--paper-fg-color), transparent 97%);
  border: 1px solid var(--paper-fg-color);
  border-radius: 5px;
  vertical-align: 0.1em;
  font-size: 18px;
  line-height: 1;
}
body .ReceiptLoading .HeadTxt {
  color: var(--main-fg-color);
}
body .ReceiptLoading img {
  width: 60px;
  padding: 30px 0 60px;
}
body .ReceiptPointWrap {
  transform: translateZ(0);
  padding: 30px 25px 42px;
  background-color: var(--paper-bg-color);
  border-radius: 6px;
  filter: drop-shadow(0 2px 20px rgba(0, 0, 0, 0.15));
}
body .VideoFrame {
  position: relative;
  display: block;
  width: 100%;
  padding-bottom: 56.25%;
}
body .VideoFrame iframe,
body .VideoFrame video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
body .HistoryWrap .HistoryNone {
  padding: 30px 0;
  color: var(--sub-b-color);
  font-size: 14px;
  font-weight: 600;
}
body .HistoryWrap table {
  display: block;
  width: 100%;
  padding: 15px 0;
  border-top: 1px solid color-mix(in srgb, var(--sub-b-color), transparent 50%);
}
body .HistoryWrap table:first-child {
  border-top: none;
}
body .HistoryWrap table tbody {
  display: block;
  width: 100%;
}
body .HistoryWrap table tbody tr {
  display: flex;
  overflow: hidden;
  justify-content: space-between;
  margin-top: 3px;
  border-radius: 3px;
}
body .HistoryWrap table tbody tr:first-child {
  margin-top: 0;
}
body .HistoryWrap table tbody tr th {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 82px;
  min-height: 42px;
  background: var(--main-bg-color);
  text-align: center;
  color: var(--main-fg-color);
  font-size: 10px;
  font-weight: 600;
  line-height: 1.25;
}
body .HistoryWrap table tbody tr td {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: calc(100% - 82px);
  padding: 8px 10px;
  background-color: var(--paper-bg-color);
  text-align: left;
  color: var(--paper-fg-color);
  font-size: 12px;
}
body .HistoryWrap table tbody tr td ul li {
  padding-left: 1em;
  text-indent: -1em;
}
body .HistoryWrap table tbody tr td a {
  position: relative;
  margin-left: 10px;
  text-decoration: underline;
  color: #06c;
  font-weight: 600;
}
body .HistoryWrap table tbody tr td a::after {
  content: "\e409";
  position: absolute;
  top: 50%;
  left: calc(100% - 2px);
  transform: translateY(-50%);
  font-family: "Material Symbols Rounded";
  font-size: 18px;
  font-weight: 500;
  line-height: 12px;
}
body .HistoryPagenation {
  transform: translateZ(0);
  filter: drop-shadow(0 3px 9px rgba(0, 0, 0, 0.15));
}
body .HistoryPagenation nav {
  display: flex;
  justify-content: center;
  height: 40px;
  margin: 0 auto;
}
body .HistoryPagenation nav .HistoryPagePrev, body .HistoryPagenation nav .HistoryPageNext {
  position: relative;
  display: block;
  width: 52px;
  height: 100%;
  background-color: var(--sub-a-color);
  border-radius: 50px 0 0 50px;
  color: var(--sub-bg-color);
  z-index: 2;
}
body .HistoryPagenation nav .HistoryPagePrev::after, body .HistoryPagenation nav .HistoryPageNext::after {
  content: "\e408";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-family: "Material Symbols Rounded";
  font-size: 24px;
  font-weight: 500;
}
body .HistoryPagenation nav .HistoryPageNext {
  border-radius: 0 50px 50px 0;
}
body .HistoryPagenation nav .HistoryPageNext::after {
  content: "\e409";
}
body .HistoryPagenation nav .HistoryPulldown {
  position: relative;
  width: 180px;
  background-color: var(--sub-a-color);
  border-right: 1px solid color-mix(in srgb, var(--sub-bg-color), transparent 50%);
  border-left: 1px solid color-mix(in srgb, var(--sub-bg-color), transparent 50%);
}
body .HistoryPagenation nav .HistoryPulldown .HistoryPulldownLabel {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  width: 100%;
  height: 100%;
  color: var(--sub-bg-color);
  z-index: 1;
}
body .HistoryPagenation nav .HistoryPulldown .HistoryPulldownLabel::after {
  content: "\e5c5";
  position: absolute;
  top: 50%;
  left: calc(50% + 24px);
  transform: translateY(-50%);
  font-family: "Material Symbols Rounded";
  font-size: 21px;
  font-weight: 900;
}
body .HistoryPagenation nav .HistoryPulldown .HistoryPulldownLabel > p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
}
body .HistoryPagenation nav .HistoryPulldown .HistoryPulldownLabel > p span {
  margin: 0 3px;
}
body .HistoryPagenation nav .HistoryPulldown select {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  width: 100%;
  height: 100%;
  border: none;
  opacity: 0;
  cursor: pointer;
  z-index: 2;
}
body .NoteInner {
  text-align: left;
  color: var(--paper-fg-color);
}
body .NoteInner > h2:first-child,
body .NoteInner p:first-child,
body .NoteInner ul:first-child,
body .NoteInner ol:first-child {
  margin-top: 0;
}
body .NoteInner .NoteTtl {
  margin-top: 15px;
  font-size: 12px;
  font-weight: 600;
}
body .NoteInner .NoteTxt {
  margin-top: 5px;
  font-size: 11px;
}
body .NoteInner .NoteAnswer {
  margin: 5px 0 -2px;
  font-size: 12px;
  font-weight: 600;
}
body .NoteInner .NoteCap {
  margin-top: 5px;
  font-size: 11px;
}
body .NoteInner .NoteCap > li {
  margin-top: 2px;
  padding-left: 1em;
  text-indent: -1em;
}
body .NoteInner .NoteCap > li:first-child {
  margin-top: 0;
}
body .NoteInner ol.NoteCap > li {
  padding-left: 1.2em;
  list-style-position: inside;
  list-style-type: decimal;
  text-indent: -1.2em;
}
body .NoteInner a {
  position: relative;
  padding-right: 2px;
  text-decoration: underline;
  word-break: break-all;
  color: #06c;
  font-weight: 600;
}
body .NoteInner a::after {
  content: "\e89e";
  vertical-align: -1px;
  font-family: "Material Symbols Rounded";
  font-weight: 500;
}
body .NoteInner .NoteOl01 > li {
  padding-left: 2.7em;
  text-indent: -2.7em;
}
body .PointSelectBlock {
  position: relative;
  padding: 20px;
  background-color: var(--paper-bg-color);
  border-radius: 12px;
  color: var(--paper-fg-color);
  filter: drop-shadow(0 2px 20px rgba(0, 0, 0, 0.15));
  transition: all 0.6s ease-in-out;
}
body .BtnUl li {
  margin-top: 10px;
}
body .BtnUl li:first-child {
  margin-top: 0;
}
body .BtnUl li a {
  filter: drop-shadow(0 0 0);
}
body .BtnUl li .CloseBtn {
  background-color: var(--paper-fg-color);
}

body .SlickApplyUl .ApplyLi, body .SlickStepUl .ApplyLi, body .OneApplyUl .ApplyLi {
  margin: 0 8px;
}
body .SlickApplyUl .ApplyLi .ApplyDesc, body .SlickStepUl .ApplyLi .ApplyDesc, body .OneApplyUl .ApplyLi .ApplyDesc {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  padding: 11px 12px 12px;
}
body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyCont, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyCont, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyCont {
  flex: 3 3 155px;
  padding: 0 2% 0 0;
}
body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyCourse, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyCont .ApplyCourse, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyCourse {
  margin: 0 0 5px;
  padding: 3px 9px;
}
body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyCourse span, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyCont .ApplyCourse span, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyCourse span {
  font-size: 10px;
}
body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyTtl, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyCont .ApplyTtl, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyTtl {
  padding: 0 0 0 3px;
  font-size: 12px;
}
body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyWinnersNum, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyCont .ApplyWinnersNum, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyCont .ApplyWinnersNum {
  padding: 4px 0 3px 3px;
  font-size: 10px;
  font-weight: 600;
  line-height: 1;
}
body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyBtn, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyBtn, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyBtn {
  display: flex;
  flex: 1 1 61px;
  justify-content: space-between;
  margin-top: 14px;
}
body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyBtn .ApplyInfo, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyBtn .ApplyInfo, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyBtn .ApplyInfo {
  height: 26px;
  padding: 0 0 0 9px;
  font-size: 10px;
}
body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyBtn .ApplyInfo::after, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyBtn .ApplyInfo::after, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyBtn .ApplyInfo::after {
  margin-left: 1px;
  font-size: 15px;
}
body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnPrimary, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyBtn .BtnPrimary, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnPrimary, body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnPrimaryTwoLine, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyBtn .BtnPrimaryTwoLine, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnPrimaryTwoLine, body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnSolidSub, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyBtn .BtnSolidSub, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnSolidSub, body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnSolidPaper, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyBtn .BtnSolidPaper, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnSolidPaper, body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnBackSub, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyBtn .BtnBackSub, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnBackSub, body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnBackPaper, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyBtn .BtnBackPaper, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnBackPaper, body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnCamera, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyBtn .BtnCamera, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnCamera, body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyBtn .SubmitPrimary, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyBtn .SubmitPrimary, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyBtn .SubmitPrimary, body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyBtn .SubmitLine, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyBtn .SubmitLine, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyBtn .SubmitLine, body .SlickApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnWinReceive, body .SlickStepUl .ApplyLi .ApplyDesc .ApplyBtn .BtnWinReceive, body .OneApplyUl .ApplyLi .ApplyDesc .ApplyBtn .BtnWinReceive {
  display: none;
}
body .SlickApplyUl .slide-dots, body .SlickStepUl .slide-dots, body .OneApplyUl .slide-dots {
  width: 100%;
  margin: 20px auto 0;
  text-align: center;
  font-size: 0;
}
body .SlickApplyUl .slide-dots li, body .SlickStepUl .slide-dots li, body .OneApplyUl .slide-dots li {
  display: inline-block;
  margin: 0 7px;
}
body .SlickApplyUl .slide-dots li button, body .SlickStepUl .slide-dots li button, body .OneApplyUl .slide-dots li button {
  position: relative;
  width: 10px;
  height: 10px;
  padding: 0;
  background: none;
  border: none;
  text-indent: -9999px;
  font-size: 0;
}
body .SlickApplyUl .slide-dots li button:before, body .SlickStepUl .slide-dots li button:before, body .OneApplyUl .slide-dots li button:before {
  content: "●";
  position: absolute;
  top: 0;
  left: 0;
  text-indent: 0px;
  color: var(--sub-a-color);
  font-size: 10px;
  line-height: 1;
  transition: 0.2s;
  opacity: 0.4;
}
body .SlickApplyUl .slide-dots li.slick-active button:before, body .SlickStepUl .slide-dots li.slick-active button:before, body .OneApplyUl .slide-dots li.slick-active button:before {
  transform: scale(1.06);
  color: var(--sub-a-color);
  opacity: 1;
}
body .SlickApplyUl .slick-track, body .SlickStepUl .slick-track, body .OneApplyUl .slick-track {
  display: flex;
}
body .SlickApplyUl .slick-slide, body .SlickStepUl .slick-slide, body .OneApplyUl .slick-slide {
  height: auto !important;
}
body .OneApplyUl {
  max-width: 370px;
  margin: 0 auto !important;
}
body .OneApplyUl .ApplyLi {
  margin: 0;
}
body .SlickStepUl .StepLi {
  padding: 18px;
  background-color: var(--paper-bg-color);
  border-radius: 8px;
}
body .SlickStepUl .StepLi h3 {
  width: 68px;
  margin: 0 auto;
  background-color: var(--main-bg-color);
  border-radius: 100px;
  letter-spacing: 0.04em;
  color: var(--main-fg-color);
  font-family: Futura, "Century Gothic", CenturyGothic, sans-serif !important;
  font-size: 12px;
  font-weight: 900;
}
body .SlickStepUl .StepLi .IconStep {
  color: var(--main-bg-color);
}
body .SlickStepUl .StepLi .StepTxt {
  color: var(--paper-fg-color);
  font-size: 12px;
  font-weight: 600;
}
body .SlickStepUl .StepLi .StepCap {
  color: var(--paper-fg-color);
  font-size: 10px;
}
body .SlickStepUl .prev, body .SlickStepUl .next {
  position: absolute;
  top: 0;
  left: 0;
  width: 12%;
  height: calc(100% - 30px);
  color: var(--main-bg-color);
  z-index: 20;
}
body .SlickStepUl .prev::after, body .SlickStepUl .next::after {
  content: "\e408";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-family: "Material Symbols Rounded";
  font-size: 32px;
  font-weight: 500;
}
body .SlickStepUl .prev.slick-disabled, body .SlickStepUl .slick-disabled.next {
  opacity: 0;
}
body .SlickStepUl .next {
  right: 0;
  left: auto;
}
body .SlickStepUl .next::after {
  content: "\e409";
}

body .LpKv .LpPeriod, body .LpKv .LpPeriodEnd {
  padding: 3px 5px 12px;
  background-color: var(--main-bg-color);
}
body .LpKv .LpPeriod .PeriodHead, body .LpKv .LpPeriodEnd .PeriodHead {
  margin-top: 8px;
  color: var(--main-fg-color);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}
body .LpKv .LpPeriod .PeriodTxt, body .LpKv .LpPeriodEnd .PeriodTxt {
  margin-top: 4px;
  color: var(--main-fg-color);
  font-size: 14px;
  line-height: 1.2;
}
body .LpKv .LpPeriodEnd {
  padding: 16px 5px;
  background-color: var(--error-color);
}
body .LpKv .LpPeriodEnd .PeriodHead {
  margin-top: 0;
}
body .LpTtl {
  color: var(--main-bg-color);
  color: var(--sub-a-color);
  font-size: 17px;
  font-weight: 600;
  line-height: 1.4;
}
body .LpApply {
  padding: 25px 25px 0;
}
body .LpApply .LpApplyCont {
  margin: 0 -25px;
}
body .LpStep {
  padding: 40px 25px 45px;
  background-color: var(--sub-bg-color);
}
body .LpLinks {
  padding: 25px 25px;
  background-color: var(--paper-bg-color);
}
body .LpLinks > a {
  margin-top: 8px;
}
body .LpLinks > a:first-child {
  margin-top: 0;
}
body .IndexArticle {
  position: relative;
}
body .IndexArticle .TopPoint {
  position: relative;
  height: auto;
  padding: 30px 0 28px;
  background-color: var(--main-bg-color);
  color: var(--main-fg-color);
  z-index: 10;
}
body .IndexArticle .TopPoint .PointWrap {
  position: relative;
  z-index: 3;
}
body .IndexArticle .TopPoint .PointWrap .PointInner .PointName {
  font-size: 14px;
  line-height: 1;
}
body .IndexArticle .TopPoint .PointWrap .PointInner .TopPointBox {
  position: relative;
  display: inline-block;
  margin: 7px auto 0;
  line-height: 1;
}
body .IndexArticle .TopPoint .PointWrap .PointInner .TopPointBox .LineIcon {
  position: absolute;
  top: 53%;
  right: calc(100% + 10px);
  transform: translateY(-50%);
  overflow: hidden;
  width: 33px;
  height: 33px;
  border-radius: 33px;
}
body .IndexArticle .TopPoint .PointWrap .PointInner .TopPointBox .LineIcon img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
}
body .IndexArticle .TopPoint .PointWrap .PointInner .TopPointBox .PointNum {
  margin: 0 auto;
  font-family: Futura, "Century Gothic", CenturyGothic, sans-serif !important;
  font-size: 44px;
  line-height: 1;
}
body .IndexArticle .TopPoint .PointWrap .PointInner .TopPointBox .PointUnit01 {
  position: absolute;
  top: 70%;
  left: calc(100% + 3px);
  transform: translateY(-50%);
  width: 60px;
  text-align: left;
  letter-spacing: -0.07em;
  font-size: 13px;
  font-weight: 600;
}
body .IndexArticle .TopPoint .PointWrap .PointInner .TopPointBox .PointUnit02 {
  top: 66%;
  left: calc(100% + 8px);
  font-size: 20px;
  font-weight: 600;
}
body .IndexArticle .TopPoint .PointWrap .PointInner .PointReload {
  margin: 9px auto 0;
}
body .IndexArticle .TopPoint .TopNav {
  position: relative;
  transform: translateZ(0);
  display: flex;
  justify-content: space-between;
  width: calc(100% - 50px);
  max-width: 370px;
  margin: 20px auto 0;
  z-index: 10;
}
body .IndexArticle .AreaMain {
  position: relative;
  padding: 34px 25px 32px;
}
body .AreaProducts {
  position: relative;
  padding: 35px 25px 35px;
  background-color: var(--main-bg-color);
}
body .ProductsBlock {
  position: relative;
  padding: 20px;
  background-color: var(--paper-bg-color);
  border-radius: 12px;
  color: var(--paper-fg-color);
  filter: drop-shadow(0 3px 9px rgba(0, 0, 0, 0.3));
  transition: all 0.6s ease-in-out;
}
body .ProductsBlock .BlockTtl {
  font-size: 14px;
  font-weight: 600;
}
body .ProductsBlock .ProductsWrap {
  text-align: left;
}
body .ProductsBlock .ProductsWrap .ProductsType {
  padding: 20px 0 0 4px;
  font-size: 12px;
}
body .ProductsBlock .ProductsWrap .ProductsUl > li {
  padding: 3px 0;
  font-size: 12px;
}
body .ProductsBlock .ProductsWrap .ProductsUl > li .ProductsImg {
  position: relative;
  width: 40px;
  height: 58px;
}
body .ProductsBlock .ProductsWrap .ProductsUl > li .ProductsImg img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%;
}
body .ProductsBlock .ProductsWrap .ProductsUl > li .ProductsName {
  width: 108px;
  padding: 0 5px 0 5px;
  font-size: 10px;
}
body .ProductsBlock .ProductsWrap .ProductsInnerTtl {
  text-align: center;
}
body .ProductsBlock .ProductsWrap .ProcutsTxt {
  padding-top: 5px;
  font-size: 12px;
}

body .Modal {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100vh;
  color: var(--paper-fg-color);
  z-index: 10000;
}
body .Modal.OpenModal {
  display: block;
}
body .Modal .ModalInner, body .Modal .ModalPhotoInner {
  position: absolute;
  top: 47%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 40px);
  max-width: 430px;
  text-align: center;
  z-index: 1000;
}
body .Modal .ModalInner .ModalWrap, body .Modal .ModalPhotoInner .ModalWrap {
  overflow-y: scroll;
  width: 100%;
  max-height: calc(100vh - 180px);
  background-color: var(--paper-bg-color);
  border-radius: 6px;
}
body .Modal .ModalInner .ModalWrap .ModalPd, body .Modal .ModalPhotoInner .ModalWrap .ModalPd {
  padding: 32px 18px;
}
body .Modal .ModalInner .ModalWrap .HeadTxt, body .Modal .ModalPhotoInner .ModalWrap .HeadTxt {
  color: var(--paper-fg-color);
}
body .Modal .ModalInner .ModalWrap .CenterTxt, body .Modal .ModalPhotoInner .ModalWrap .CenterTxt {
  color: var(--paper-fg-color);
}
body .Modal .ModalInner .ModalWrap .ApplyModalHead, body .Modal .ModalPhotoInner .ModalWrap .ApplyModalHead {
  padding: 16px 18px 10px;
  background-color: color-mix(in srgb, var(--sub-a-color), transparent 98%);
  text-align: center;
  font-size: 16px;
  font-weight: 600;
}
body .Modal .ModalInner .ModalWrap .ApplyModalCard, body .Modal .ModalPhotoInner .ModalWrap .ApplyModalCard {
  border-top: 1px solid #e8e8ea;
  border-bottom: 1px solid #e8e8ea;
}
body .Modal .ModalInner .ModalWrap .ApplyModalDesc, body .Modal .ModalPhotoInner .ModalWrap .ApplyModalDesc {
  padding: 12px 18px 20px;
  background-color: color-mix(in srgb, var(--sub-a-color), transparent 98%);
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto {
  padding: 18px 18px 24px !important;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoWrap, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoWrap, body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoGrayWrap, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoGrayWrap, body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoRedWrap, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoRedWrap {
  padding: 8px 9px;
  border: 1px solid #999;
  border-radius: 5px;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoRedWrap, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoRedWrap {
  border: 1px solid var(--error-color);
  color: var(--error-color);
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoGrayWrap, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoGrayWrap {
  background-color: #e6e6e6;
  border: none;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoGrayWrap p, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoGrayWrap p {
  padding: 0 8px 10px;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto p, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto p {
  text-align: left;
  font-size: 12px;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto h3, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto h3 {
  font-size: 15px;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto h4, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto h4 {
  font-size: 15px;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoCap, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoCap {
  text-align: left;
  font-size: 12px;
  line-height: 1.5;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoCap li, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoCap li {
  padding-left: 1em;
  text-indent: -1em;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoCheckUl, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoCheckUl {
  width: calc(100% - 10px);
  max-width: 320px;
  margin: 0 auto;
  padding-bottom: 4px;
  text-align: left;
  font-size: 12px;
  line-height: 1.35;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoCheckUl li, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoCheckUl li {
  position: relative;
  padding-left: 1.4em;
  line-height: 1.6em;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoCheckUl li::after, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoCheckUl li::after {
  content: "\e5ca";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  text-indent: -0.02em;
  color: #fff;
  font-family: "Material Symbols Rounded";
  font-size: 1.1em;
  font-weight: 700;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoCheckUl li::before, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoCheckUl li::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 1.1em;
  height: 1.1em;
  background-color: var(--error-color);
  border-radius: 50%;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoOK, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoOK, body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoNG, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoNG {
  position: relative;
  display: inline-block;
  padding: 0 0.2em 0.3em 1.5em;
  border-bottom: 4px solid var(--error-color);
  letter-spacing: -0.02em;
  color: var(--error-color);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.1em;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoOK::after, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoOK::after, body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoNG::after, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoNG::after {
  content: "\ef4a";
  position: absolute;
  top: 0;
  left: 0;
  font-family: "Material Symbols Rounded";
  font-size: 1.25em;
  font-weight: 900;
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoNG, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoNG {
  border-bottom: 4px solid var(--paper-fg-color);
  color: var(--paper-fg-color);
}
body .Modal .ModalInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoNG::after, body .Modal .ModalPhotoInner .ModalWrap .ModalReceiptHowto .ReceiptHowtoNG::after {
  content: "\e5cd";
}
body .Modal .ModalInner .ModalLoadingWrap, body .Modal .ModalPhotoInner .ModalLoadingWrap {
  width: 91%;
  max-width: 430px;
  max-height: calc(100vh - 180px);
  margin: 0 auto;
  padding: 40px 18px;
  background-color: var(--main-bg-color);
  border-radius: 10px;
  color: #fff;
}
body .Modal .ModalInner .ModalLoadingWrap .ModalLoadingHead, body .Modal .ModalPhotoInner .ModalLoadingWrap .ModalLoadingHead {
  font-size: 16px;
  font-weight: 600;
}
body .Modal .ModalInner .ModalLoadingWrap .ModalLoadingTxt, body .Modal .ModalPhotoInner .ModalLoadingWrap .ModalLoadingTxt {
  font-size: 12px;
}
body .Modal .ModalInner .ModalLoadingWrap > img, body .Modal .ModalPhotoInner .ModalLoadingWrap > img {
  width: 64px;
  padding: 28px 0;
}
body .Modal .ModalPhotoInner {
  width: calc(100% - 10px);
}
body .Modal .ModalPhotoInner .ModalWrap {
  border-radius: 0;
}
body .Modal .ModalBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
}

.Info {
  position: relative;
  padding: 30px 25px 25px;
  background-color: var(--paper-bg-color);
  border-top: 1px solid color-mix(in srgb, var(--paper-fg-color), transparent 70%);
  color: var(--paper-fg-color);
}
.Info .InfoInner {
  max-width: 370px;
  margin: 0 auto;
}
.Info .InfoInner .InfoHead {
  position: relative;
  letter-spacing: 0.04em;
  font-size: 16px;
}
.Info .InfoInner .InfoHead::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: calc(50% - 4em);
  height: 1px;
  background: var(--paper-fg-color);
}
.Info .InfoInner .InfoHead::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: calc(50% - 4em);
  height: 1px;
  background: var(--paper-fg-color);
}
.Info .InfoInner .InfoTtl {
  margin-top: 12px;
  font-size: 13px;
  font-weight: 600;
}
.Info .InfoInner .InfoTxt {
  font-size: 13px;
}
.Info .InfoInner .InfoCap {
  text-align: left;
  font-size: 11px;
}
.Info .InfoInner .InfoCap > li {
  padding-left: 1em;
  text-indent: -1em;
}
.Info .InfoInner .InfoTel {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 10px;
  color: var(--paper-fg-color);
  font-size: 21px;
  line-height: 1;
}
.Info .InfoInner .InfoTel::before {
  content: "\e0b0";
  font-family: "Material Symbols Rounded";
  font-size: 27px;
  font-weight: 400;
}
.Info .InfoInner .InfoTel > span {
  padding: 0 3px 4px;
  text-decoration: underline;
}
.Info .InfoInner .InfoMail {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 7px;
  color: var(--paper-fg-color);
  font-size: 21px;
  line-height: 1;
}
.Info .InfoInner .InfoMail::before {
  content: "\e158";
  font-family: "Material Symbols Rounded";
  font-size: 27px;
  font-weight: 300;
}
.Info .InfoInner .InfoMail > span {
  padding: 0 3px 4px;
  text-decoration: underline;
  word-break: break-all;
}

body .Footer {
  position: relative;
  width: 100%;
  max-width: 460px;
  margin: 0 auto;
  padding: 10px 25px 16px;
  background: #fff;
  border-top: 1px solid color-mix(in srgb, var(--paper-fg-color), transparent 70%);
  z-index: 1;
}
body .Footer .FooterID {
  display: inline-block;
  padding: 3px 12px 4px;
  border: 1px solid var(--paper-fg-color);
  border-radius: 100px;
  color: var(--paper-fg-color);
  line-height: 1;
}
body .Footer .FooterID span {
  display: block;
  font-size: 10px;
  line-height: 1;
}
body .Footer aside {
  margin-top: 8px;
  color: var(--paper-fg-color);
  font-size: 10px;
  line-height: 1;
}
body .Top + .Footer {
  padding: 12px 25px 124px;
}

body .MarginTop65 {
  margin-top: 65px !important;
}
body .MarginTop60 {
  margin-top: 60px !important;
}
body .MarginTop50 {
  margin-top: 50px !important;
}
body .MarginTop40 {
  margin-top: 40px !important;
}
body .MarginTop35 {
  margin-top: 35px !important;
}
body .MarginTop30 {
  margin-top: 30px !important;
}
body .MarginTop25 {
  margin-top: 25px !important;
}
body .MarginTop20 {
  margin-top: 20px !important;
}
body .MarginTop15 {
  margin-top: 15px !important;
}
body .MarginTop10 {
  margin-top: 10px !important;
}
body .MarginTop5 {
  margin-top: 5px !important;
}
body .MarginTop0 {
  margin-top: 0 !important;
}
body .MarginBottom10 {
  margin-bottom: 10px !important;
}
body .PaddingTop35 {
  padding-top: 35px !important;
}

html.android.line263 .Footer {
  padding-bottom: calc(10px + var(--android-safe-area-inset-bottom, env(safe-area-inset-bottom)));
}
html.android.line263 body .Top + .Footer {
  padding-bottom: calc(114px + var(--android-safe-area-inset-bottom, env(safe-area-inset-bottom)));
}
html.android.line263 header .BottomNav > a {
  bottom: calc(25px + var(--android-safe-area-inset-bottom, env(safe-area-inset-bottom)));
}
html.android.line263 header .BottomNav {
  height: calc(86px + var(--android-safe-area-inset-bottom, env(safe-area-inset-bottom)));
}
html.android.line263 body .SubmitWrap {
  padding-bottom: calc(18px + var(--android-safe-area-inset-bottom, env(safe-area-inset-bottom)));
}