@charset "UTF-8";
/*
sold-share_202603.css
(C) LY Corporation
version 1.0.3
*/
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  /* stylelint-disable */
  font-size: 100%;
  font: inherit;
  /* stylelint-enable */
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

/* ------------------------ *
    theme color 
 * ------------------------ */
/* ------------------------ *
    background 
 * ------------------------ */
/* ------------------------ *
    system color (obsoleted) 
 * ------------------------ */
/* ------------------------ *
    label color 
 * ------------------------ */
/* ------------------------ *
    text color
 * ------------------------ */
.u-mt-s {
  margin-top: 8px !important;
}

.u-mt-m {
  margin-top: 16px !important;
}

.u-mt-l {
  margin-top: 24px !important;
}

.u-mt-xl {
  margin-top: 32px !important;
}

.u-mt-xxl {
  margin-top: 40px !important;
}

.u-mr-s {
  margin-right: 8px !important;
}

.u-mr-m {
  margin-right: 16px !important;
}

.u-mr-l {
  margin-right: 24px !important;
}

.u-mr-xl {
  margin-right: 32px !important;
}

.u-mr-xxl {
  margin-right: 40px !important;
}

.u-mb-s {
  margin-bottom: 8px !important;
}

.u-mb-m {
  margin-bottom: 16px !important;
}

.u-mb-l {
  margin-bottom: 24px !important;
}

.u-mb-xl {
  margin-bottom: 32px !important;
}

.u-mb-xxl {
  margin-bottom: 40px !important;
}

.u-ml-s {
  margin-left: 8px !important;
}

.u-ml-m {
  margin-left: 16px !important;
}

.u-ml-l {
  margin-left: 24px !important;
}

.u-ml-xl {
  margin-left: 32px !important;
}

.u-ml-xxl {
  margin-left: 40px !important;
}

.u-mv-s {
  margin-top: 8px !important;
  margin-bottom: 8px !important;
}

.u-mv-m {
  margin-top: 16px !important;
  margin-bottom: 16px !important;
}

.u-mv-l {
  margin-top: 24px !important;
  margin-bottom: 24px !important;
}

.u-mv-xl {
  margin-top: 32px !important;
  margin-bottom: 32px !important;
}

.u-mv-xxl {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}

.u-mh-s {
  margin-left: 8px !important;
  margin-right: 8px !important;
}

.u-mh-m {
  margin-left: 16px !important;
  margin-right: 16px !important;
}

.u-mh-l {
  margin-left: 24px !important;
  margin-right: 24px !important;
}

.u-mh-xl {
  margin-left: 32px !important;
  margin-right: 32px !important;
}

.u-mh-xxl {
  margin-left: 40px !important;
  margin-right: 40px !important;
}

.u-ma-s {
  margin: 8px !important;
}

.u-ma-m {
  margin: 16px !important;
}

.u-ma-l {
  margin: 24px !important;
}

.u-ma-xl {
  margin: 32px !important;
}

.u-ma-xxl {
  margin: 40px !important;
}

.u-pt-s {
  padding-top: 8px !important;
}

.u-pt-m {
  padding-top: 16px !important;
}

.u-pt-l {
  padding-top: 24px !important;
}

.u-pt-xl {
  padding-top: 32px !important;
}

.u-pt-xxl {
  padding-top: 40px !important;
}

.u-pr-s {
  padding-right: 8px !important;
}

.u-pr-m {
  padding-right: 16px !important;
}

.u-pr-l {
  padding-right: 24px !important;
}

.u-pr-xl {
  padding-right: 32px !important;
}

.u-pr-xxl {
  padding-right: 40px !important;
}

.u-pb-s {
  padding-bottom: 8px !important;
}

.u-pb-m {
  padding-bottom: 16px !important;
}

.u-pb-l {
  padding-bottom: 24px !important;
}

.u-pb-xl {
  padding-bottom: 32px !important;
}

.u-pb-xxl {
  padding-bottom: 40px !important;
}

.u-pl-s {
  padding-left: 8px !important;
}

.u-pl-m {
  padding-left: 16px !important;
}

.u-pl-l {
  padding-left: 24px !important;
}

.u-pl-xl {
  padding-left: 32px !important;
}

.u-pl-xxl {
  padding-left: 40px !important;
}

.u-pv-s {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

.u-pv-m {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

.u-pv-l {
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

.u-pv-xl {
  padding-top: 32px !important;
  padding-bottom: 32px !important;
}

.u-pv-xxl {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

.u-ph-s {
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.u-ph-m {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

.u-ph-l {
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.u-ph-xl {
  padding-left: 32px !important;
  padding-right: 32px !important;
}

.u-ph-xxl {
  padding-left: 40px !important;
  padding-right: 40px !important;
}

.u-pa-s {
  padding: 8px !important;
}

.u-pa-m {
  padding: 16px !important;
}

.u-pa-l {
  padding: 24px !important;
}

.u-pa-xl {
  padding: 32px !important;
}

.u-pa-xxl {
  padding: 40px !important;
}

.l-contentHeader {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-left: 0px;
  padding-right: 0px;
}

.l-contentFooter {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-left: 0px;
  padding-right: 0px;
}

.l-main {
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 16px;
  padding-right: 16px;
}

.l-sub {
  padding: 0;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 16px;
  padding-right: 16px;
}

.is-2column .l-container {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
}
.is-2column .l-main {
  width: auto;
}
.is-2column .l-sub {
  width: auto;
}

body {
  color: #2F2C2B;
  line-height: 1.3;
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, Osaka, "MS PGothic", arial, helvetica, sans-serif;
  -webkit-text-size-adjust: 100%;
          text-size-adjust: 100%;
}

a {
  color: #0260EA;
  text-decoration: none;
}
a:link {
  color: #0260EA;
  text-decoration: none;
}
a:hover {
  color: #0260EA;
  text-decoration: underline;
}
a:active {
  color: #0260EA;
  text-decoration: none;
}
a:visited {
  color: #0260EA;
  text-decoration: none;
}

em {
  font-style: normal;
}

.Frame {
  padding: 16px;
  border: 1px solid #D9D9D9;
  border-radius: 4px;
}
.PageTopNav__link {
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  margin: 16px 16px 16px auto;
  border-radius: 4px;
  background: rgba(0, 0, 0, 0.36);
  text-indent: -9999px;
  overflow: hidden;
}
.PageTopNav__link:before {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  content: "";
  width: 16px;
  height: 4px;
  margin-left: -3px;
  margin-top: -7px;
  background: #FFFFFF;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transform-origin: 2px 2px;
          transform-origin: 2px 2px;
}
.PageTopNav__link:after {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  content: "";
  width: 16px;
  height: 4px;
  margin-left: -3px;
  margin-top: -7px;
  background: #fff;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  -webkit-transform-origin: 2px 2px;
          transform-origin: 2px 2px;
}
.PageTopNav__link:hover {
  background: #6C6A69;
  background: rgba(67, 32, 24, 0.54);
}

/**
 * vw計算
 *
 * @param {Number} $size     - 基準デザイン上のサイズ（px値）
 * @param {Number} $viewport - デザインカンプの横幅 (デフォルト: 750px)
 * @param {Number} $pc_size  - PC での基準横幅 (デフォルト: 580px)
 *
 * 仕様:
 * - モバイル画面幅では $size を vw に変換して返します
 * - PC 画面幅以上では、基準比で算出した px 値を上限／下限として返します
 * - 正の値なら「min()」で上限を設ける
 * - 負の値なら「max()」で下限を設ける（マイナスマージン等に対応）
 */
/*
* パス
**************************/
/*
* 色変数
**************************/
.Header--miniapp {
  position: fixed;
  width: 100%;
  box-sizing: border-box;
  padding: 8px;
  border-bottom: 1px solid #FE8E76;
  background: #fff;
  z-index: 1000;
}
.Header--miniapp__button {
  display: block;
  width: 36px;
  height: 36px;
  background: url(../img/icon_back.svg) center no-repeat;
}

.KeyVisual {
  background-color: transparent;
  padding-bottom: min(2.6666666667vw, 15.4666666667px);
  position: relative;
}
.KeyVisual::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% + min(17.3333333333vw, 100.5333333333px) + min(235.8666666667vw, 1368.0266666667px));
  background-image: url(../img/bg01.png);
  background-position: center top;
  background-size: 100% auto;
  background-repeat: no-repeat;
  z-index: 0;
  pointer-events: none;
}
.KeyVisual__body {
  position: relative;
  -webkit-perspective: 1200px;
          perspective: 1200px;
  z-index: 1;
}
.KeyVisual__image {
  background-image: url(../img/keyvisual.png);
  background-position: center top;
  background-size: 100% auto;
  background-repeat: no-repeat;
  width: 100%;
  height: min(132.1333333333vw, 766.3733333333px);
  position: relative;
  overflow: hidden;
}
.KeyVisual__image::after {
  content: "";
  position: absolute;
  top: min(4.4vw, 25.52px);
  left: max(-6.1333333333vw, -35.5733333333px);
  width: min(31.3333333333vw, 181.7333333333px);
  height: min(34.8vw, 201.84px);
  background-image: url(../img/hand.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center top;
  -webkit-transform-origin: 0% 100%;
          transform-origin: 0% 100%;
  -webkit-animation: keyVisualHandSwing 0.5s ease-in-out 0.5s forwards;
          animation: keyVisualHandSwing 0.5s ease-in-out 0.5s forwards;
}
.KeyVisual__title {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: visible;
  clip: auto;
  white-space: nowrap;
  border: 0;
}
.KeyVisual__title img {
  display: none;
}
.KeyVisual__title::before {
  content: "";
  position: absolute;
  top: min(44.4vw, 257.52px);
  left: min(6.2666666667vw, 36.3466666667px);
  width: min(87.8666666667vw, 509.6266666667px);
  height: min(64.2666666667vw, 372.7466666667px);
  margin: 0 auto;
  background-image: url(../img/panel.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center top;
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  z-index: 1;
  -webkit-animation: keyVisualPanelBounce 0.3s ease-in 1.1s forwards;
          animation: keyVisualPanelBounce 0.3s ease-in 1.1s forwards;
}
.KeyVisual__title::after {
  content: "";
  position: absolute;
  top: min(52.2666666667vw, 303.1466666667px);
  left: min(30vw, 174px);
  width: min(37.4666666667vw, 217.3066666667px);
  height: min(13.6vw, 78.88px);
  background-image: url(../img/sns.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center top;
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  z-index: 2;
  -webkit-animation: keyVisualSnsBounce 0.4s ease-in 1.1s forwards;
          animation: keyVisualSnsBounce 0.4s ease-in 1.1s forwards;
}
.KeyVisual__campaign {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.KeyVisual__link {
  position: absolute;
  left: 18%;
  top: 35%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  display: block;
  width: 30%;
  z-index: 1;
  -webkit-animation: keyVisualCoinShine ease-out 1s;
          animation: keyVisualCoinShine ease-out 1s;
}
.KeyVisual__link img {
  width: 100%;
  height: auto;
  display: block;
}
.KeyVisual__notes {
  font-size: min(2.5333333333vw, 14.6933333333px);
  margin: min(4vw, 23.2px) min(4vw, 23.2px) 0;
  text-align: left;
  line-height: 1.56;
  color: #000000;
}
.KeyVisual__notesItem {
  position: relative;
  padding-left: 1.5em;
  text-indent: -1.5em;
}
.KeyVisual__notesItem + .KeyVisual__notesItem {
  margin-top: min(1.3333333333vw, 7.7333333333px);
}
@-webkit-keyframes keyVisualSnsBounce {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  20% {
    -webkit-transform: translateY(max(-6.6666666667vw, -38.6666666667px));
            transform: translateY(max(-6.6666666667vw, -38.6666666667px));
  }
  40% {
    -webkit-transform: translateY(min(0.6666666667vw, 3.8666666667px));
            transform: translateY(min(0.6666666667vw, 3.8666666667px));
  }
  60% {
    -webkit-transform: translateY(max(-4vw, -23.2px));
            transform: translateY(max(-4vw, -23.2px));
  }
  80% {
    -webkit-transform: translateY(min(0.4vw, 2.32px));
            transform: translateY(min(0.4vw, 2.32px));
  }
  90% {
    -webkit-transform: translateY(max(-1.0666666667vw, -6.1866666667px));
            transform: translateY(max(-1.0666666667vw, -6.1866666667px));
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes keyVisualSnsBounce {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  20% {
    -webkit-transform: translateY(max(-6.6666666667vw, -38.6666666667px));
            transform: translateY(max(-6.6666666667vw, -38.6666666667px));
  }
  40% {
    -webkit-transform: translateY(min(0.6666666667vw, 3.8666666667px));
            transform: translateY(min(0.6666666667vw, 3.8666666667px));
  }
  60% {
    -webkit-transform: translateY(max(-4vw, -23.2px));
            transform: translateY(max(-4vw, -23.2px));
  }
  80% {
    -webkit-transform: translateY(min(0.4vw, 2.32px));
            transform: translateY(min(0.4vw, 2.32px));
  }
  90% {
    -webkit-transform: translateY(max(-1.0666666667vw, -6.1866666667px));
            transform: translateY(max(-1.0666666667vw, -6.1866666667px));
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes keyVisualPanelBounce {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  20% {
    -webkit-transform: translateY(max(-4vw, -23.2px));
            transform: translateY(max(-4vw, -23.2px));
  }
  40% {
    -webkit-transform: translateY(max(-1.0666666667vw, -6.1866666667px));
            transform: translateY(max(-1.0666666667vw, -6.1866666667px));
  }
  60% {
    -webkit-transform: translateY(max(-2.6666666667vw, -15.4666666667px));
            transform: translateY(max(-2.6666666667vw, -15.4666666667px));
  }
  80% {
    -webkit-transform: translateY(max(-0.6666666667vw, -3.8666666667px));
            transform: translateY(max(-0.6666666667vw, -3.8666666667px));
  }
  90% {
    -webkit-transform: translateY(min(1.3333333333vw, 7.7333333333px));
            transform: translateY(min(1.3333333333vw, 7.7333333333px));
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes keyVisualPanelBounce {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  20% {
    -webkit-transform: translateY(max(-4vw, -23.2px));
            transform: translateY(max(-4vw, -23.2px));
  }
  40% {
    -webkit-transform: translateY(max(-1.0666666667vw, -6.1866666667px));
            transform: translateY(max(-1.0666666667vw, -6.1866666667px));
  }
  60% {
    -webkit-transform: translateY(max(-2.6666666667vw, -15.4666666667px));
            transform: translateY(max(-2.6666666667vw, -15.4666666667px));
  }
  80% {
    -webkit-transform: translateY(max(-0.6666666667vw, -3.8666666667px));
            transform: translateY(max(-0.6666666667vw, -3.8666666667px));
  }
  90% {
    -webkit-transform: translateY(min(1.3333333333vw, 7.7333333333px));
            transform: translateY(min(1.3333333333vw, 7.7333333333px));
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes keyVisualHandSwing {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  20% {
    -webkit-transform: rotate(8deg);
            transform: rotate(8deg);
  }
  40% {
    -webkit-transform: rotate(-8deg);
            transform: rotate(-8deg);
  }
  60% {
    -webkit-transform: rotate(6deg);
            transform: rotate(6deg);
  }
  80% {
    -webkit-transform: rotate(-6deg);
            transform: rotate(-6deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
@keyframes keyVisualHandSwing {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  20% {
    -webkit-transform: rotate(8deg);
            transform: rotate(8deg);
  }
  40% {
    -webkit-transform: rotate(-8deg);
            transform: rotate(-8deg);
  }
  60% {
    -webkit-transform: rotate(6deg);
            transform: rotate(6deg);
  }
  80% {
    -webkit-transform: rotate(-6deg);
            transform: rotate(-6deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}

@-webkit-keyframes anim300 {
  from {
    background-position: 0 0;
  }
  to {
    background-position: max(-466.6666666667vw, -2706.6666666667px) 0;
  }
}

@keyframes anim300 {
  from {
    background-position: 0 0;
  }
  to {
    background-position: max(-466.6666666667vw, -2706.6666666667px) 0;
  }
}
.Description {
  margin-top: min(17.3333333333vw, 100.5333333333px);
  background-color: transparent;
  position: relative;
  padding-bottom: min(26.6666666667vw, 154.6666666667px);
  background-image: url(../img/bg02.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: 50% min(204vw, 1183.2px);
}
.Description__body {
  position: relative;
}
.Description__image {
  position: relative;
  background-image: url(../img/description.png);
  background-position: center top;
  background-size: 100% auto;
  background-repeat: no-repeat;
  width: 100%;
  height: min(235.8666666667vw, 1368.0266666667px);
}
.Description__image::before {
  content: "";
  position: absolute;
  top: min(81.6vw, 473.28px);
  left: min(3.3333333333vw, 19.3333333333px);
  width: min(93.3333333333vw, 541.3333333333px);
  height: min(46.6666666667vw, 270.6666666667px);
  background-image: url(../img/300_anim.png);
  background-position: 0 0;
  background-size: auto 100%;
  background-repeat: no-repeat;
  z-index: 1;
  -webkit-animation: anim300 0.5s steps(5) 0.7s 1 forwards;
          animation: anim300 0.5s steps(5) 0.7s 1 forwards;
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
}
.Description__image.is-animated::before {
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.Description__content {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.HowTo {
  position: relative;
  margin-top: max(-42.6666666667vw, -247.4666666667px);
  z-index: 3;
}
.HowTo__body {
  position: relative;
}
.HowTo__image {
  background-image: url(../img/howto.png);
  background-position: center top;
  background-size: 100% auto;
  background-repeat: no-repeat;
  width: 100%;
  height: min(337.0666666667vw, 1954.9866666667px);
  position: relative;
}
.HowTo__title, .HowTo__subtitle, .HowTo__steps {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.Video {
  position: relative;
  margin-top: max(-18vw, -104.4px);
}
.Video__body {
  position: relative;
}
.Video__image {
  background-image: url(../img/video.png);
  background-position: center top;
  background-size: 100% auto;
  background-repeat: no-repeat;
  width: 100%;
  height: min(187.3333333333vw, 1086.5333333333px);
  position: relative;
}
.Video__title, .Video__content {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.Video__thumbnailWrapper {
  position: absolute;
  bottom: max(-6.6666666667vw, -38.6666666667px);
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: min(90.4vw, 524.32px);
  height: min(50.9333333333vw, 295.4133333333px);
}
.Video__thumbnail {
  display: block;
  width: 100%;
  border: none;
  background: none;
  padding: 0;
  cursor: pointer;
  -webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease, -webkit-transform 0.3s ease;
}
.Video__thumbnail:hover {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
  opacity: 0.9;
}
.Video__thumbnail img {
  width: 100%;
  height: auto;
  display: block;
}
.Video__modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
}
.Video__modal.is-active {
  display: block;
}
.Video__modalOverlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  cursor: pointer;
}
.Video__modalContent {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 90%;
  max-width: min(133.3333333333vw, 773.3333333333px);
  background-color: #000;
  border-radius: min(1.3333333333vw, 7.7333333333px);
  overflow: hidden;
}
.Video__modalClose {
  position: absolute;
  top: max(-6.6666666667vw, -38.6666666667px);
  right: min(0vw, 0px);
  width: min(6.6666666667vw, 38.6666666667px);
  height: min(6.6666666667vw, 38.6666666667px);
  background-color: #fff;
  border: none;
  border-radius: 50%;
  font-size: min(4vw, 23.2px);
  line-height: 1;
  cursor: pointer;
  z-index: 1;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
.Video__modalClose:hover {
  background-color: #f0f0f0;
}
.Video__modalBody {
  position: relative;
  padding-top: 56.25%;
}
.Video__player {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.Sell {
  background-image: url(../img/section_separate1.png), url(../img/section_separate2.png), url(../img/bg_dot-pink.png);
  background-repeat: no-repeat, no-repeat, repeat;
  background-position: top center, bottom center, 0 0;
  background-size: contain, contain, 20px;
  padding: min(5.3333333333vw, 30.9333333333px) 0;
}
.Sell__title img, .Sell__items img {
  width: 100%;
  height: auto;
  vertical-align: top;
}
.Sell__notes {
  font-size: min(2.4vw, 13.92px);
  margin: 0 min(4vw, 23.2px);
  text-align: left;
  color: #9e384a;
}

.Campaign {
  background-color: #fff;
  padding-top: min(8vw, 46.4px);
}
.Campaign__title img, .Campaign__items img {
  width: 100%;
  height: auto;
  vertical-align: top;
}
.Campaign__items {
  margin: min(8vw, 46.4px) 0 0;
  position: relative;
  width: min(100vw, 580px);
  height: min(109.3333333333vw, 634.1333333333px);
}
.Campaign__button {
  display: block;
  position: absolute;
  width: min(61.3333333333vw, 355.7333333333px);
  height: min(21.3333333333vw, 123.7333333333px);
  left: min(5.3333333333vw, 30.9333333333px);
  bottom: min(16vw, 92.8px);
}
.Campaign__notes {
  font-size: min(2.4vw, 13.92px);
  margin: min(1.3333333333vw, 7.7333333333px) min(4vw, 23.2px) 0;
  text-align: left;
  color: #7c7c7c;
}
.CampaignEntertainment__items {
  margin: 0 0 0;
  position: relative;
  width: min(100vw, 580px);
  height: min(120vw, 696px);
}
.CampaignEntertainment__items img {
  width: 100%;
  height: auto;
  vertical-align: top;
}
.CampaignEntertainment__button {
  display: block;
  position: absolute;
  width: min(61.3333333333vw, 355.7333333333px);
  height: min(21.3333333333vw, 123.7333333333px);
  left: min(20vw, 116px);
  bottom: min(1.3333333333vw, 7.7333333333px);
}

.Coupon {
  background-color: #fff;
  padding-top: min(13.3333333333vw, 77.3333333333px);
}
.Coupon__title img {
  width: 100%;
  height: auto;
  vertical-align: top;
}
.Coupon__items {
  position: relative;
  width: min(100vw, 580px);
  height: min(193.3333333333vw, 1121.3333333333px);
}
.Coupon__items--01 {
  display: block;
  position: absolute;
  width: 100%;
  height: auto;
  left: min(0vw, 0px);
  top: min(0vw, 0px);
}
.Coupon__items--02 {
  display: block;
  position: absolute;
  width: min(41.0666666667vw, 238.1866666667px);
  height: min(27.4666666667vw, 159.3066666667px);
  left: min(2.6666666667vw, 15.4666666667px);
  top: min(8vw, 46.4px);
}
.Coupon__button {
  display: block;
  position: absolute;
  width: min(61.3333333333vw, 355.7333333333px);
  height: min(21.3333333333vw, 123.7333333333px);
}
.Coupon__button--01 {
  right: min(4vw, 23.2px);
  top: min(50.6666666667vw, 293.8666666667px);
}
.Coupon__button--02 {
  left: min(4vw, 23.2px);
  top: min(132vw, 765.6px);
}
.Coupon__button img {
  width: 100%;
  height: auto;
  vertical-align: top;
}
.Coupon__notes {
  font-size: min(2.4vw, 13.92px);
  margin: 0 min(4vw, 23.2px);
  text-align: left;
  color: #7c7c7c;
}

.Confidence {
  background-color: #fee8bd;
  padding-top: min(8vw, 46.4px);
  text-align: center;
}
.Confidence__title img, .Confidence__headline img, .Confidence__items img {
  width: 100%;
  height: auto;
  vertical-align: top;
}
.Confidence__text {
  margin: min(2.6666666667vw, 15.4666666667px) auto;
  color: #d93300;
}
.Confidence__headline--02 {
  margin: min(8vw, 46.4px) auto min(5.3333333333vw, 30.9333333333px);
}
.Confidence__items--01, .Confidence__items--02 {
  position: relative;
  width: min(100vw, 580px);
  height: min(40vw, 232px);
}
.Confidence__button {
  display: block;
  position: absolute;
  width: min(58.6666666667vw, 340.2666666667px);
  height: min(13.3333333333vw, 77.3333333333px);
  left: min(20.6666666667vw, 119.8666666667px);
  top: min(20vw, 116px);
}
.Confidence__notes {
  font-size: min(2.4vw, 13.92px);
  margin: min(2.6666666667vw, 15.4666666667px) auto 0;
  text-align: center;
  color: #7c7c7c;
}

.Item {
  background-color: #ffc343;
  background-image: url(../img/section_separate3.png), url(../img/image_item2.png);
  background-repeat: no-repeat, no-repeat;
  background-position: top center, bottom center;
  background-size: contain;
  padding: min(26.6666666667vw, 154.6666666667px) 0 min(93.3333333333vw, 541.3333333333px);
}
.Item__title img, .Item__headline img, .Item__items img {
  width: 100%;
  height: auto;
  vertical-align: top;
}
.Item__items {
  position: relative;
  width: min(100vw, 580px);
  height: min(102.6666666667vw, 595.4666666667px);
}
.Item__button {
  display: block;
  position: absolute;
  width: min(61.3333333333vw, 355.7333333333px);
  height: min(26.6666666667vw, 154.6666666667px);
  right: min(5.3333333333vw, 30.9333333333px);
  bottom: max(-18.6666666667vw, -108.2666666667px);
}
.Item__notes {
  font-size: min(2.4vw, 13.92px);
  margin: 0 min(4vw, 23.2px);
  text-align: left;
  color: #7c7c7c;
}

.CloseNotice__text {
  box-sizing: border-box;
  width: 100%;
  padding: min(2.1333333333vw, 12.3733333333px) 0;
  background: #f1f1f1;
  text-align: center;
  color: #e9173d;
  font-weight: 700;
}

.FixedAppDownload {
  display: block;
  position: fixed;
  opacity: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  background: rgba(0, 0, 0, 0.5);
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  z-index: 100;
}
.FixedAppDownload.is-show {
  opacity: 1;
}
.FixedAppDownload__inner.is-active {
  display: block;
}
.FixedAppDownload__innerBody {
  padding: min(4vw, 23.2px) 0 0;
}
.FixedAppDownload__body {
  height: min(18.6666666667vw, 108.2666666667px);
}
.FixedAppDownload__body--smartphone {
  display: -webkit-box;
  display: flex;
}
.FixedAppDownload__body--smartphone .FixedAppDownload__button {
  width: 50vw;
  font-size: 5vw;
  margin: 0 1vw;
}
.FixedAppDownload__body--smartphone .FixedAppDownload__button--web {
  width: 74vw;
  margin: 0 auto;
}
.FixedAppDownload__button {
  display: block;
  width: 74vw;
  height: 14vw;
  margin: 0 auto;
  color: #fff !important;
  background-color: #df2f25;
  border-radius: 7vw;
  text-align: center;
  font-size: 6vw;
  line-height: 14vw;
  border: 4px solid #292929;
}
.FixedAppDownload__button--app, .FixedAppDownload__button--miniApp, .FixedAppDownload__button--web {
  background-color: transparent;
  border: none;
  height: auto;
  padding: 0;
}
.FixedAppDownload__button--app img, .FixedAppDownload__button--miniApp img, .FixedAppDownload__button--web img {
  width: 100%;
  height: auto;
  display: block;
}
.FixedAppDownload__button--websell {
  background-color: #fe7604;
}

.AppDownload {
  display: none;
}

.Detail {
  background-color: #fff;
  padding: min(8vw, 46.4px) min(4vw, 23.2px) min(4vw, 23.2px);
}
.Detail a:link, .Detail a:visited, .Detail a:hover, .Detail a:active {
  color: #007aff;
}
.Detail__list {
  margin: 0 auto;
  font-size: min(3.2vw, 18.56px);
  line-height: 1.6;
}
.Detail__term {
  margin-bottom: min(1.6vw, 9.28px);
  font-weight: bold;
}
.Detail__description {
  margin-bottom: min(3.2vw, 18.56px);
  counter-reset: asteriskNumber;
}
.Detail__description:last-child {
  margin-bottom: 0;
}
.Detail__text--indent {
  text-indent: -1.2em;
  padding-left: 1.2em;
}
.Detail__text--paddingLeft {
  padding-left: 1.2em;
}
.Detail__text--plainIndent {
  padding-left: 1.2em;
}
.Detail__text--dottedIndent {
  position: relative;
  padding-left: 1.2em;
  text-indent: 0;
}
.Detail__text--dottedIndent:before {
  content: "・ ";
  left: 0;
  position: absolute;
  top: 0;
}
.Detail__text--asteriskIndent {
  position: relative;
  padding-left: 1.2em;
  text-indent: 0;
}
.Detail__text--asteriskIndent:before {
  content: "※ ";
  left: 0;
  position: absolute;
  top: 0;
}
.Detail__text--asteriskNumberIndent {
  position: relative;
  padding-left: 2em;
  text-indent: 0;
  counter-increment: asteriskNumber;
}
.Detail__text--asteriskNumberIndent:before {
  content: "※" counter(asteriskNumber) " ";
  left: 0;
  position: absolute;
  top: 0;
}
.Detail__text--mt12 {
  margin-top: min(1.6vw, 9.28px);
}
.Detail__text--strong {
  color: #fa4b6f;
  font-weight: bold;
}

.RelatedLinks {
  position: relative;
}
.RelatedLinks__image {
  background-image: url(../img/relatedlinks.png);
  background-position: center top;
  background-size: 100% auto;
  background-repeat: no-repeat;
  width: 100%;
  height: min(112vw, 649.6px);
  margin-top: max(-14.6666666667vw, -85.0666666667px);
  position: relative;
}
.RelatedLinks__body {
  position: relative;
}
.RelatedLinks__title {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.RelatedLinks__items {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
  gap: min(4vw, 23.2px);
  padding: min(48vw, 278.4px) 0 0;
}
.RelatedLinks__item {
  width: 100%;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
}
.RelatedLinks__link {
  display: block;
  width: min(90.6666666667vw, 525.8666666667px);
  height: min(16vw, 92.8px);
  background-color: #ffffff;
}
.RelatedLinks__link img {
  width: 100%;
  height: auto;
  display: block;
}

/*
* ページ全体
**************************/
body {
  position: relative;
  counter-reset: section;
}

/** コンテンツの影が重ならないようにレイヤーを上げる */
.l-header {
  position: relative;
  padding-bottom: min(0.1333333333vw, 0.7733333333px);
  background-color: #fff;
  z-index: 1;
}

/*
* レイアウト
**************************/
.l-content {
  display: block;
  position: relative;
  background-color: #faf4f5;
  color: #7c7c7c;
  font-size: min(3.2vw, 18.56px);
  line-height: 1.35;
  overflow: hidden;
}
.l-content a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.04);
  -webkit-transition: -webkit-filter 0.3s ease;
  transition: -webkit-filter 0.3s ease;
  transition: filter 0.3s ease;
  transition: filter 0.3s ease, -webkit-filter 0.3s ease;
}
.l-content a:hover {
  text-decoration: none;
  -webkit-filter: brightness(1.3);
          filter: brightness(1.3);
}
.l-content img {
  vertical-align: bottom;
}

.l-contentHeader {
  overflow: visible;
}

.l-contentHeader,
.l-contentBody,
.l-contentFooter {
  max-width: 580px;
  margin: 0 auto;
}

.l-contentBody {
  position: relative;
  z-index: 10;
}

.l-contentHeader {
  background-color: #fff;
}

.l-main {
  position: relative;
  padding: 0 0 1px;
  background: #fff;
  z-index: 1;
}

/*
* 背景装飾用の斜め線
**************************/
.l-diagonalLines {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-filter: blur(8px);
          filter: blur(8px);
  pointer-events: none;
  overflow: hidden;
  z-index: 0;
}

.l-diagonalLine {
  position: absolute;
  -webkit-transform-origin: center;
          transform-origin: center;
  overflow: hidden;
}
.l-diagonalLine--1 {
  top: -560px;
  left: -50%;
  right: 0;
  width: 200%;
  height: 630px;
  margin: 0 auto;
  background-color: #ffe3e8;
  -webkit-transform: rotate(16.7deg);
          transform: rotate(16.7deg);
  z-index: 1;
}
.l-diagonalLine--2 {
  top: 135px;
  left: -50%;
  right: 0;
  width: 200%;
  height: 466px;
  margin: 0 auto;
  background-color: #ffb6c5;
  -webkit-transform: rotate(-16.7deg);
          transform: rotate(-16.7deg);
  z-index: 2;
}
.l-diagonalLine--3 {
  top: 450px;
  left: -50%;
  right: 0;
  width: 200%;
  height: 580px;
  margin: 0 auto;
  background-color: #ffe3e8;
  -webkit-transform: rotate(16.7deg);
          transform: rotate(16.7deg);
  z-index: 1;
}
.l-diagonalLine--4 {
  top: 1056px;
  left: -50%;
  right: 0;
  width: 200%;
  height: 10px;
  margin: 0 auto;
  background-color: #ffe3e8;
  -webkit-transform: rotate(16.7deg) translateX(40%);
          transform: rotate(16.7deg) translateX(40%);
  z-index: 1;
}
.l-diagonalLine--5 {
  top: 2398px;
  left: -50%;
  right: 0;
  width: 200%;
  height: 10px;
  margin: 0 auto;
  background-color: #ffe3e8;
  -webkit-transform: rotate(16.7deg) translateX(-40%);
          transform: rotate(16.7deg) translateX(-40%);
  z-index: 1;
}
.l-diagonalLine--6 {
  top: 2436px;
  left: -50%;
  right: 0;
  width: 200%;
  height: 580px;
  margin: 0 auto;
  background-color: #ffe3e8;
  -webkit-transform: rotate(16.7deg);
          transform: rotate(16.7deg);
  z-index: 1;
}
.l-diagonalLine--7 {
  top: 2523px;
  left: -50%;
  right: 0;
  width: 200%;
  height: 1690px;
  margin: 0 auto;
  background-color: #ffb6c5;
  -webkit-transform: rotate(-16.7deg);
          transform: rotate(-16.7deg);
  z-index: 2;
}
.l-diagonalLine--8 {
  top: 4396px;
  left: -50%;
  right: 0;
  width: 200%;
  height: 840px;
  margin: 0 auto;
  background-color: #ffe3e8;
  -webkit-transform: rotate(16.7deg);
          transform: rotate(16.7deg);
  z-index: 1;
}
.l-diagonalLine--9 {
  top: 5353px;
  left: -50%;
  right: 0;
  width: 200%;
  height: 626px;
  margin: 0 auto;
  background-color: #e4edf9;
  -webkit-transform: rotate(-16.7deg);
          transform: rotate(-16.7deg);
  z-index: 0;
}

.l-footer {
  position: relative;
  background: #fff;
}
/*
* EMGなどのモジュール
**************************/
.EMG__inner > table {
  margin-top: 16px !important;
  margin-bottom: 16px !important;
}
.EMG__inner br {
  display: none;
}
.EMG__inner td {
  padding: 2px !important;
}

.PageTopNav {
  display: block;
  overflow: hidden;
  background-color: #fff;
}

/**
 * ユーティリティクラス
 */

@media all and (max-width: 750px) {
  .is-2column .l-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
  }
  .is-2column .l-main {
    width: auto;
  }
  .is-2column .l-sub {
    width: auto;
  }
  .PageTopNav {
    display: none;
  }
}

@media all and (min-width: 751px) and (max-width: 990px) {
  .is-2column .l-container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
  }
  .is-2column .l-main {
    width: calc(100% - 344px);
  }
  .is-2column .l-sub {
    flex-shrink: 0;
    width: 280px;
  }
}

@media all and (min-width: 991px) {
  .is-2column .l-container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
  }
  .is-2column .l-main {
    width: 666px;
  }
  .is-2column .l-sub {
    width: 280px;
  }
}

@media (min-width: 1000px) {
  .FixedAppDownload {
    display: none;
  }
  .AppDownload {
    height: 100%;
    display: block;
    margin-bottom: 0px;
    padding: 0px;
  }
  .AppDownload__inner {
    width: 260px;
    max-width: 260px;
    border: none;
    background-color: #fff;
    border-radius: 25px;
    padding: 40px 0;
    position: fixed;
    top: 160px;
    left: calc(50% + 340px);
  }
  .AppDownload__title img {
    width: 220px;
    height: 24px;
    margin: 0 auto;
    background-size: 100% auto;
    padding-left: 20px;
  }
  .AppDownload__body {
    display: block;
  }
  .AppDownload__iphone img, .AppDownload__android img, .AppDownload__qr img {
    display: block;
    margin: 5px auto 0;
  }
  .AppDownload__iphone img {
    margin: 30px auto 0;
    width: 185px;
  }
  .AppDownload__android img {
    margin: 20px auto 0;
    width: 195px;
  }
  .AppDownload__movecontents {
    position: absolute;
    top: -215px;
    right: -300px;
  }
  .AppDownload__movecontents .AppDownload__inner {
    border-radius: 25px;
  }
}

@media (min-width: 584px) {
  .l-contentBody {
    background-color: #fff;
    box-shadow: 0 0 30px rgba(107, 76, 84, 0.15);
  }
}

@media screen and (max-width: 767px) {
  .u-hidden--sp {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .u-hidden--pc {
    display: none;
  }
}