@charset "UTF-8";
/*
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;
  border: none;
  font-family: inherit;
  outline: none;
}

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

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

input:invalid {
  box-shadow: none;
}

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

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

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 {
  background: var(--bg-color);
  color: var(--txt-color);
  text-align: center;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", sans-serif;
  font-weight: normal;
  line-height: 1.4;
  -webkit-text-size-adjust: 100%;
}

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;
}
a:link, a:visited {
  color: var(--txt-color);
}
a:hover, a:active {
  color: var(--txt-color);
}

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

/*準備ページ-------------------------------------------------------------------------------------------------------------*/
html.Teaser {
  width: 100%;
  height: 100%;
}
html.Teaser.iphone {
  height: 100vh;
}
html.Teaser body {
  height: 100%;
  display: flex;
  align-items: center;
}
html.Teaser article {
  width: 64%;
  margin: 0 auto;
}
@media (min-width: 901px) {
  html.Teaser article {
    width: 600px;
  }
}
html.Teaser article img {
  width: 100%;
  height: auto;
  display: block;
}
@media (min-width: 901px) {
  html.Teaser article img {
    width: 64%;
    margin: 0 auto;
  }
}

/*サイト設定-------------------------------------------------------------------------------------------------------------*/
/*ボタン*/
@keyframes btnActiveMove {
  0% {
    transform: translate(-50%, -50%) scale(0);
    opacity: 1;
  }
  100% {
    transform: translate(-50%, -50%) scale(10);
    opacity: 0;
  }
}
@keyframes bodyActiveMove {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
.BtnMove {
  background: var(--bg-color);
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  animation: bodyActiveMove 0.4s cubic-bezier(0.22, 1, 0.36, 1) 0s 1 normal forwards;
}

.BtnMoveRev {
  background: var(--bg-color);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  animation: bodyActiveMove 0.4s cubic-bezier(0.22, 1, 0.36, 1) 0s 1 normal forwards;
}

.BtnSolidArrow, .prizeListItem .btn, .BtnSolidArrowBk, .BtnSolidArrowGrayStop, .BtnSolidArrowGray, .prizeListItem .btnGray, .BtnLineQr.BtnLineQrSolidGray, .BtnSolidMinus, .BtnSolidPlus, .BtnSolidBlank,
input.BtnSolidArrow { /*ベタ塗りボタン 矢印*/
  margin: 0 auto;
  padding: 20px;
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  color: var(--btn-color) !important;
  background-color: var(--key-color);
  background-image: var(--btn-solid-icon-arrow);
  background-repeat: no-repeat;
  background-position: right 10px top 50%;
  background-size: 16px auto;
  border-radius: 5px;
  font-size: 1.12rem;
  font-weight: bold;
  letter-spacing: -0.02em;
  line-height: 1;
}
@media (max-width: 374px) {
  .BtnSolidArrow, .prizeListItem .btn, .BtnSolidArrowBk, .BtnSolidArrowGrayStop, .BtnSolidArrowGray, .prizeListItem .btnGray, .BtnLineQr.BtnLineQrSolidGray, .BtnSolidMinus, .BtnSolidPlus, .BtnSolidBlank,
  input.BtnSolidArrow {
    background-size: 14px auto;
    font-size: 0.9375rem;
  }
}
.BtnSolidArrow.BtnActive, .prizeListItem .BtnActive.btn, .BtnActive.BtnSolidArrowBk, .BtnActive.BtnSolidArrowGrayStop, .BtnActive.BtnSolidArrowGray, .prizeListItem .BtnActive.btnGray, .BtnActive.BtnLineQr.BtnLineQrSolidGray, .BtnActive.BtnSolidMinus, .BtnActive.BtnSolidPlus, .BtnActive.BtnSolidBlank,
input.BtnSolidArrow.BtnActive {
  position: relative;
  overflow: hidden;
}
.BtnSolidArrow.BtnActive::after, .prizeListItem .BtnActive.btn::after, .BtnActive.BtnSolidArrowBk::after, .BtnActive.BtnSolidArrowGrayStop::after, .BtnActive.BtnSolidArrowGray::after, .prizeListItem .BtnActive.btnGray::after, .BtnActive.BtnLineQr.BtnLineQrSolidGray::after, .BtnActive.BtnSolidMinus::after, .BtnActive.BtnSolidPlus::after, .BtnActive.BtnSolidBlank::after,
input.BtnSolidArrow.BtnActive::after {
  content: "";
  position: absolute;
  display: block;
  width: 60px;
  height: 60px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--btn-color);
  animation: btnActiveMove 0.6s ease-out 0s 1 normal forwards;
  border-radius: 500px;
  opacity: 0;
}

.BtnSolidBlank { /*ベタ塗りボタン　外部リンク*/
  background-image: var(--btn-solid-icon-blank);
}

.BtnSolidPlus { /*ベタ塗りボタン　プラス記号*/
  background-image: var(--btn-solid-icon-plus);
}
.BtnSolidPlus::after {
  animation: btnActiveMove 0.6s ease-out 0s 1 normal none;
}

.BtnSolidMinus { /*ベタ塗りボタン　マイナス記号*/
  background-image: var(--btn-solid-icon-minus);
}
.BtnSolidMinus::after {
  animation: btnActiveMove 0.6s ease-out 0s 1 normal none;
}

.BtnSolidArrowGray, .prizeListItem .btnGray, .BtnLineQr.BtnLineQrSolidGray { /*ベタ塗りボタン　グレーアウト*/
  background-color: #737373 !important;
  pointer-events: none;
}

.BtnSolidArrowGrayStop { /*ベタ塗りボタン　グレーアウト*/
  background-color: #737373 !important;
  pointer-events: none !important;
  background-image: none;
}

.BtnSolidArrowBk { /*ベタ塗りボタン　黒*/
  background-color: #000 !important;
}

.BtnSolidArrow._inBr1, .prizeListItem ._inBr1.btn, ._inBr1.BtnSolidBlank, ._inBr1.BtnSolidPlus, ._inBr1.BtnSolidMinus, ._inBr1.BtnSolidArrowGray, .prizeListItem ._inBr1.btnGray, ._inBr1.BtnLineQr.BtnLineQrSolidGray, ._inBr1.BtnSolidArrowGrayStop, ._inBr1.BtnSolidArrowBk {
  line-height: 1.4;
  padding-top: 10px;
  padding-bottom: 10px;
}

.BtnSolidArrow.BtnPrizeImage, .prizeListItem .BtnPrizeImage.btn, .BtnPrizeImage.BtnSolidBlank, .BtnPrizeImage.BtnSolidPlus, .BtnPrizeImage.BtnSolidMinus, .BtnPrizeImage.BtnSolidArrowGray, .prizeListItem .BtnPrizeImage.btnGray, .BtnPrizeImage.BtnLineQr.BtnLineQrSolidGray, .BtnPrizeImage.BtnSolidArrowGrayStop, .BtnPrizeImage.BtnSolidArrowBk {
  padding: 14px;
  line-height: 1.4;
  font-size: 1rem;
}

.LowerBodyWh .BtnLineArrow, .LowerBodyWh .InputBodyForm .LowerBtn .BtnLineArrowBk, .InputBodyForm .LowerBtn .LowerBodyWh .BtnLineArrowBk, .LowerBodyWh .BtnLineArrowBk, .LowerBodyWh .BtnLineQr, .LowerBodyWh .BtnLineReverse,
.IndexBodyWh .BtnLineArrow,
.IndexBodyWh .InputBodyForm .LowerBtn .BtnLineArrowBk,
.InputBodyForm .LowerBtn .IndexBodyWh .BtnLineArrowBk,
.IndexBodyWh .BtnLineArrowBk,
.IndexBodyWh .BtnLineQr,
.IndexBodyWh .BtnLineReverse {
  background-image: var(--btn-line-icon-arrow-bk);
  color: #000;
}

.BtnLineArrow, .InputBodyForm .LowerBtn .BtnLineArrowBk, .BtnLineArrowBk, .BtnLineQr, .BtnLineReverse { /*罫線ボタン 矢印*/
  margin: 0 auto;
  padding: 18px;
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  background-image: var(--btn-line-icon-arrow);
  background-repeat: no-repeat;
  background-position: right 10px top 50%;
  background-size: 16px auto;
  border: 2px solid var(--key-color);
  border-radius: 5px;
  font-size: 1.12rem;
  font-weight: bold;
  letter-spacing: -0.02em;
  line-height: 1;
  color: #000 !important;
}
@media (max-width: 374px) {
  .BtnLineArrow, .InputBodyForm .LowerBtn .BtnLineArrowBk, .BtnLineArrowBk, .BtnLineQr, .BtnLineReverse {
    background-size: 14px auto;
    font-size: 0.9375rem;
  }
}
.BtnLineArrow.Btn_2Line, .InputBodyForm .LowerBtn .Btn_2Line.BtnLineArrowBk, .Btn_2Line.BtnLineArrowBk, .Btn_2Line.BtnLineQr, .Btn_2Line.BtnLineReverse {
  line-height: 1.2 !important;
  padding: 8px 18px 0 !important;
  min-height: 57px !important;
  font-size: 1rem !important;
}
@media (max-width: 374px) {
  .BtnLineArrow.Btn_2Line, .InputBodyForm .LowerBtn .Btn_2Line.BtnLineArrowBk, .Btn_2Line.BtnLineArrowBk, .Btn_2Line.BtnLineQr, .Btn_2Line.BtnLineReverse {
    font-size: 0.875rem !important;
    padding: 10px 18px 0 !important;
    min-height: 55px !important;
  }
}
.BtnLineArrow.BtnLineKeyColor, .InputBodyForm .LowerBtn .BtnLineKeyColor.BtnLineArrowBk, .BtnLineKeyColor.BtnLineArrowBk, .BtnLineKeyColor.BtnLineQr, .BtnLineKeyColor.BtnLineReverse {
  line-height: 1;
  color: #000;
}
.BtnLineArrow.BtnActive, .InputBodyForm .LowerBtn .BtnActive.BtnLineArrowBk, .BtnActive.BtnLineArrowBk, .BtnActive.BtnLineQr, .BtnActive.BtnLineReverse {
  position: relative;
  overflow: hidden;
}
.BtnLineArrow.BtnActive::after, .InputBodyForm .LowerBtn .BtnActive.BtnLineArrowBk::after, .BtnActive.BtnLineArrowBk::after, .BtnActive.BtnLineQr::after, .BtnActive.BtnLineReverse::after {
  content: "";
  position: absolute;
  display: block;
  width: 60px;
  height: 60px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--key-color);
  animation: btnActiveMove 0.6s ease-out 0s 1 normal forwards;
  border-radius: 500px;
  opacity: 0;
}

.BtnLineReverse { /*罫線ボタン 矢印逆向き*/
  background-image: var(--btn-line-icon-reverse);
  background-position: left 10px top 50%;
}
.BtnLineReverse._arrowBk {
  background-image: url(../images/icon_arrow_reverse_bk.svg);
}

.BtnLineQr { /*罫線ボタン QRコード*/
  background-image: var(--btn-line-icon-qr) !important;
  background-position: right 11px top 50%;
  line-height: 1;
  color: #000 !important;
}
.BtnLineQrWh{
  background-image: var(--btn-line-icon-qr-wh) !important;
}
.BtnLineQr.BtnLineQrLp {
  background-image: var(--btn-line-icon-qr);
  background-color: var(--bg-color);
}
.BtnLineQr.BtnSolidArrowGray, .prizeListItem .BtnLineQr.btnGray, .BtnLineQr.BtnLineQrSolidGray {
  border: none !important;
}
.BtnLineQr.BtnLineQrSolidGray {
  background-image: none;
}

.BtnLineArrowBk { /*罫線ボタン キャンペーントップページへ*/
  background-image: var(--btn-line-icon-arrow-wh);
}
.BtnLineArrowBk._arrow-wh {
  background-image: var(--btn-line-icon-arrow-bk);
}

.InputBodyForm .LowerBtn .BtnLineArrowBk {
  background-image: url(../images/icon_arrow_reverse_wh.svg);
  background-position: left 10px top 50%;
}

/*ページレイアウト*/
#IndexBody {
  max-width: 750px;
  margin: 0 auto;
  background: var(--bg-color);
}
#IndexBody._w750 {
  max-width: 750px;
  background: var(--bg-color);
}

/*ヘッダー*/
#LowerHeader {
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
}
#LowerHeader img {
  width: 100%;
  height: auto;
  margin: 0 auto;
}

/*フッター*/
#CommonFooter {
  margin: 0 auto;
  padding: 0 0 15px;
  border-top: 2px solid var(--key-color);
  width: 100%;
  background: var(--bg-color);
  max-width: 750px;
}
#CommonFooter._w750 {
  background: var(--bg-color);
  max-width: 750px;
}
#CommonFooter .FooterID {
  padding: 15px 0 0;
  font-size: 0.6875rem;
  line-height: 1;
}
#CommonFooter .FooterID span {
  padding: 3px 13px;
  display: inline-block;
  border: 1px solid var(--txt-color);
  border-radius: 300px;
}
#CommonFooter aside {
  padding: 15px 0 0;
  font-size: 0.6875rem;
}

/*ページタイトル*/
@keyframes dotBlink01 {
  0% {
    opacity: 0;
  }
  24% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  99% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes dotBlink02 {
  0% {
    opacity: 0;
  }
  49% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  99% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes dotBlink03 {
  0% {
    opacity: 0;
  }
  74% {
    opacity: 0;
  }
  75% {
    opacity: 1;
  }
  99% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
article h1 {
  width: 100%;
  position: relative;
  font-size: 1.6875rem;
  font-weight: bold;
}
article h1 span {
  letter-spacing: -0.2em;
}
article h1 span.animationDot {
  display: inline-block;
  letter-spacing: normal;
  animation: dotBlink01 2s infinite;
}
article h1 span.animationDot + span.animationDot {
  animation-name: dotBlink02;
}
article h1 span.animationDot + span.animationDot + span.animationDot {
  animation-name: dotBlink03;
}
@media (max-width: 374px) {
  article h1 {
    letter-spacing: -0.05em;
  }
}
article h1.TitLine {
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--txt-color);
}
article h1.TitLine02 {
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--bg-color);
}
article h1.TitLine::after {
  content: "";
  width: 15px;
  height: 15px;
  display: block;
  background: var(--bg-color);
  border: 2px solid var(--txt-color);
  border-top: none;
  border-right: none;
  position: absolute;
  left: 50%;
  bottom: -10px;
  transform: translate(-50%, 0) rotate(-45deg);
}
article h1.TitLine02::after {
  background: var(--txt-color);
  border: 2px solid var(--bg-color);
  border-top: none;
  border-right: none;
}
article h2 {
  padding: 30px 0 0;
}
article h2 .PointTit {
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.2;
  display: inline-block;
  position: relative;
}
article h2 .PointTit span {
  font-size: 2.125rem;
  display: inline-block;
  font-family: "Helvetica Neue", "Helvetica", sans-serif;
}
article h2 .PointTit::after, article h2 .PointTit::before {
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  background: var(--txt-color);
  border-radius: 500px;
  position: absolute;
  top: 50%;
}
article h2 .PointTit::before {
  left: -16px;
  transform: translate(0, -50%);
}
article h2 .PointTit::after {
  right: -16px;
  transform: translate(0, -50%);
}
article .PointTitSub {
  font-size: 0.75rem !important;
  letter-spacing: -0.02em !important;
}

/*下層基本レイアウト*/
#LowerBody {
  max-width: 750px;
  margin: 0 auto;
  padding: 45px 35px 45px;
  box-sizing: border-box;
  border-top: 2px solid var(--key-color);
}
#LowerBody.LowerBodyWh {
  background: #fff;
}
#LowerBody p {
  padding: 15px 0 0;
  font-size: 0.9375rem;
}
#LowerBody p._pad {
  padding: 1em 0;
}
#LowerBody p._pad2 {
  padding: 0 0 1em;
}
#LowerBody .IndexPrize h1.TitLine {
  margin-bottom: 5px;
}
#LowerBody .IndexPrize h2 {
  padding: 30px 0 0;
}
#LowerBody .IndexPrize figure {
  padding: 15px 0 0;
}
#LowerBody .IndexPrize figure.IndexPrize3Point {
  padding: 30px 0 0;
}
#LowerBody .IndexPrize p {
  font-size: 0.75rem;
  padding: 10px 0 0;
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}
#LowerBody .IndexPrize p.IndexPrizeCaption {
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}
#LowerBody .IndexPrize ul.IndexPrizeCaption {
  font-size: 0.75rem;
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}
#LowerBody .IndexPrize ul.IndexPrizeCaption li {
  padding-left: 1em;
  text-indent: -1em;
}
#LowerBody .IndexPrize aside.LowerBtn {
  padding: 30px 0 0;
}
#LowerBody .IndexPrize aside.LowerBtn a {
  background-image: var(--btn-line-icon-arrow-wh);
}

.LowerBtn {
  padding: 15px 0 0;
}
.LowerBtn.LowerBtnShare {
  padding: 15px 0 0;
}
.LowerBtn.IndexBtnNext {
  padding: 0 0 30px;
}
.LowerBtn.IndexBtnNextNo {
  padding: 0 !important;
}
.LowerBtn li {
  padding-top: 15px;
}
.LowerBtn li:first-child {
  padding-top: 0;
}
.LowerBtn p.LowerBtnNote {
  margin-bottom: 4px;
  font-size: 0.75rem !important;
  color: #f00;
}

@keyframes LowerResultMove {
  0% {
    transform: translate(0, 15px);
    opacity: 0;
  }
  50% {
    opacity: 0.2;
  }
  100% {
    transform: translate(0, 0);
    opacity: 1;
  }
}
.LowerResult {
  animation: LowerResultMove 0.4s ease-out 0.6s 1 normal forwards;
  opacity: 0;
}

h1.LowerResult {
  animation: LowerResultMove 0.4s ease-out 0.3s 1 normal forwards;
  opacity: 0;
}

/*下層 エントリー〜当落*/
.LowerShareCaution {
  font-size: 0.75rem !important;
  color: #da2129;
  text-align: left;
  padding: 15px 0 0 1em !important;
  text-indent: -1em;
}

.LowerEntry.LowerWin h2 {
  padding: 15px 0 0;
}
.LowerEntry.LowerWin.LowerWinCode figure {
  padding: 0;
  margin-top: -15px;
}
.LowerEntry.LowerWin.LowerWinCode h1 {
  font-size: 1.12rem;
  padding: 30px 0 0;
}
.LowerEntry.LowerWin.LowerWinCode .LowerWinCoupon {
  padding: 0;
}
.LowerEntry.LowerWin.LowerWinCode .LowerWinCoupon p {
  padding: 8px 0 0 !important;
  font-size: 0.75rem !important;
}
.LowerEntry figure {
  padding: 15px 0 0;
}
.LowerEntry .LowerEntryPoint {
  padding: 15px 0 0;
}
.LowerEntry .LowerEntryPoint dt {
  border: 2px solid var(--txt-color);
  color: var(--txt-color);
  border-radius: 5px;
  padding: 10px 2px;
  font-size: 1.12rem;
  font-weight: bold;
  letter-spacing: -0.03em;
}
.LowerEntry .LowerEntryPoint dt span {
  letter-spacing: -0.08em;
}
.LowerEntry .LowerEntryPoint dd {
  padding: 10px 0 0;
  font-size: 1rem;
  letter-spacing: -0.03em;
}
@media (max-width: 374px) {
  .LowerEntry .LowerEntryPoint dd {
    font-size: 0.875rem;
  }
}
.LowerEntry .LowerEntryPoint dd span {
  letter-spacing: -0.08em;
}
.LowerEntry .LowerWinCoupon {
  padding: 30px 0 0;
  margin: 0 auto -20px;
}
.LowerEntry .LowerWinCoupon h3 {
  font-size: 1rem;
  font-weight: bold;
  line-height: 1;
  text-align: left;
  position: relative;
  padding: 0 0 0 20px;
}
.LowerEntry .LowerWinCoupon h3::before {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  background: var(--txt-color);
  border-radius: 2px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}
.LowerEntry .LowerWinCoupon div {
  margin: 10px auto 0;
  background: #fff;
  color: #000;
  border-radius: 5px;
  padding: 7px 0;
  font-family: "Helvetica Neue", "Helvetica", sans-serif;
  font-size: 1.3125rem;
  line-height: 1;
}
.LowerEntry .LowerWinCaution {
  margin: 15px 0 0;
  border: 1px solid var(--txt-color);
  padding: 20px 15px;
}
.LowerEntry .LowerWinCaution li {
  font-size: 0.75rem;
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
  padding: 0 0 0 1em;
  text-indent: -1em;
}
.LowerEntry .LowerWinCaution p {
  padding: 0 !important;
  font-size: 0.75rem !important;
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}
.LowerEntry .LowerWinCaution a {
  text-decoration: underline;
}
.LowerEntry .LowerWinCautionRed {
  font-size: 1.6875rem !important;
  font-weight: bold;
  line-height: 1.2;
  margin-top: 10px;
  padding: 10px 5px !important;
  background: var(--key-color);
}
@media (max-width: 374px) {
  .LowerEntry .LowerWinCautionRed {
    font-size: 1.5rem !important;
  }
}
.LowerEntry .LowerWinCautionRed span {
  letter-spacing: -0.2em;
}

/*汎用エラー*/
.LowerError,
body.ErrorBody {
  padding: 0 0 15px;
  background: #fff;
}
.LowerError h1,
body.ErrorBody h1 {
  font-size: 1.3125rem;
  color: #da2129;
}
.LowerError p,
body.ErrorBody p {
  font-size: 0.875rem !important;
}

/*END*/
.EndIndexCaution {
  background: #da2129;
  padding: 20px;
}
.EndIndexCaution p {
  font-size: 0.875rem !important;
  color: #fff;
  font-weight: bold;
}

.CpEndIndexCaution {
  background: #da2129;
  padding: 30px 0;
}
.CpEndIndexCaution p {
  font-size: 1.25rem;
  color: #fff;
  font-weight: bold;
}

.IndexKvEndCaution {
  background: #da2129;
  padding: 0;
}
.IndexKvEndCaution p {
  font-size: 0.875rem !important;
  color: #fff;
  font-weight: bold;
  padding: 15px 20px !important;
}

.ZaikoCaution p {
  color: #fff;
  font-weight: bold;
  font-size: 1rem !important;
}
@media (max-width: 374px) {
  .ZaikoCaution p br {
    display: none;
  }
}

.IndexPointNow {
  padding: 30px 0 30px;
}
.IndexPointNow._mt30px {
  margin-top: 30px;
}
.IndexPointNow.IndexPointNowEnd {
  padding: 0;
}
.IndexPointNow dt {
  font-size: 1.6875rem;
  font-weight: bold;
  padding: 0 0 15px;
}
.IndexPointNow dd {
  font-family: "Helvetica Neue", "Helvetica", sans-serif;
  font-weight: bold;
  margin-right: 5px;
  display: inline-block;
  box-sizing: border-box;
  padding: 15px 30px;
  min-width: 150px;
  font-size: 3.4375rem;
  line-height: 0.8;
  border: 2px solid var(--key-color);
  border-radius: 10px;
  vertical-align: bottom;
  line-height: 0.8;
  color: var(--key-color);
  position: relative;
  background-color: #fff;
}
.IndexPointNow dd .IndexPointNowSmall {
  display: block;
  font-size: 1.12rem;
  line-height: 1;
  position: absolute;
  bottom: 0;
  right: -60px;
}

/*INDEX*/
#IndexBody .IndexKv {
  padding-bottom: 30px;
}

#IndexBody .IndexKv.IndexKvCoupon {
  padding: 0;
}

#IndexBody .IndexKv.IndexKvEnd {
  padding: 0;
}

#IndexBody .IndexKv p {
  padding: 10px 20px;
  font-size: 0.75rem;
}

#IndexBody .IndexKv ul.outline {
	padding: 15px 0 0;
	font-size: 0.75rem;
  margin-right: 35px;
  margin-left: 35px;
}
#IndexBody .IndexKv ul.outline li {
	margin-top: 1rem;
}
#IndexBody .IndexKv ul.outline li:first-child {
	margin-top: 0;
}

#IndexBody .IndexKv p.AnchorText {
  padding: 15px 20px 10px;
	font-size: 0.6875rem;
}

#IndexBody .IndexKv p.AnchorText a {
	text-decoration: underline;
}

#IndexBody .IndexKv .IndexKvBtn {
  padding: 15px 35px 0;
}

@media (max-width: 374px) {
  #IndexBody .IndexKv .IndexKvBtn {
    padding: 15px 30px 0;
  }
}

#IndexBody .IndexKv dl {
  margin: 0 35px 0;
  padding: 15px 0 15px;
  font-size: 0.875rem;
  font-weight: bold;
  border: 1px solid var(--txt-color);
	border-top: none;
  border-right: none;
  border-left: none;
}

#IndexBody .IndexKv dl dt {
  font-size: 0.875rem;
}

@media (max-width: 374px) {
  #IndexBody .IndexKv dl {
    margin: 10px 35px 0;
  }
}

#IndexBody .IndexKv dl dd {
  letter-spacing: -0.03em;
	font-size: 0.875rem;
}

#IndexBody .IndexKv dl dd span {
  font-weight: normal;
  font-size: 0.75rem;
}

#IndexBody .IndexKv dl + dl {
  margin-top: 0;
  border-top: none;
}

#IndexBody .IndexKv ._s {
  display: block;
  font-size: .85em;
  margin-top: .25em;
}

#IndexBody .IndexKvTeaser h2 {
  background: var(--bg-color);
  padding: 30px 0;
  /* font-size: 1.25rem; */
  font-size: 1rem;
  color: var(--txt-color);
}

#IndexBody .IndexKvTeaser dl:first-of-type{
	border-top: 1px solid var(--txt-color);
	margin-top: 0;
}

#IndexBody .IndexKvShare {
  padding: 0 35px;
}

@media (max-width: 374px) {
  #IndexBody .IndexKvShare {
    padding: 0 30px;
  }
}

#IndexBody .IndexKvShare h2 {
  font-size: 1.25rem;
  position: relative;
  width: auto;
  display: inline-block;
}

#IndexBody .IndexKvShare h2::before {
  content: '';
  display: block;
  background: var(--txt-color);
  width: 3px;
  height: 36px;
  border-radius: 500px;
  position: absolute;
  bottom: 0;
  left: -20px;
  transform: rotate(-30deg);
}

#IndexBody .IndexKvShare h2::after {
  content: '';
  display: block;
  background: var(--txt-color);
  width: 3px;
  height: 36px;
  border-radius: 500px;
  position: absolute;
  bottom: 0;
  right: -20px;
  transform: rotate(30deg);
}

#IndexBody .IndexKvShare .LowerBtn {
  padding-top: 10px;
}

#IndexBody .IndexKvShare .LowerBtn a {
  font-size: 0.9375rem;
}

@media (max-width: 374px) {
  #IndexBody .IndexKvShare .LowerBtn a {
    font-size: 0.8125rem;
  }
}

#IndexBody .IndexBodyInner {
  padding: 30px 35px;
  border-bottom: 2px solid var(--key-color);
}

#IndexBody .IndexBodyInner p.IndexCaution {
  padding: 10px 0 20px;
  font-size: 0.75rem;
}

#IndexBody .IndexBodyInner p.IndexCaution a {
  text-decoration: underline;
}

#IndexBody .IndexBodyInner.IndexBodyLineless {
  border-top: none !important;
  padding-top: 0 !important;
}

#IndexBody .IndexBodyInner.IndexBodyWh {
  background: #fff;
}
#IndexBody .IndexBodyInner.IndexBodyWh h1._mt30px {
  margin-top: 30px;
}
#IndexBody .IndexBodyInner.IndexHowtoStep {
  padding-bottom: 0;
}
#IndexBody .IndexBodyInner.IndexHowtoStep ol li {
  padding-top: 30px;
}
#IndexBody .IndexBodyInner.IndexHowtoStep h2 {
  padding: 3px 0 7px;
  font-size: 1.12rem;
  font-family: "Helvetica Neue", "Helvetica", sans-serif;
  line-height: 1;
  background: #e6e6e6;
  border-radius: 500px;
  vertical-align: baseline;
}
#IndexBody .IndexBodyInner.IndexHowtoStep h2 span {
  font-size: 1.75rem;
  display: inline-block;
  margin-left: 3px;
  vertical-align: baseline;
}
#IndexBody .IndexBodyInner.IndexHowtoStep figure {
  padding-top: 15px;
}
#IndexBody .IndexBodyInner.IndexTarget {
  padding-top: 30px;
  border: none;
  color: var(--txt-color);
  /* border-top: 2px solid var(--key-color); */
  border-bottom: 2px solid var(--key-color);
}
#IndexBody .IndexBodyInner.IndexTarget figure {
  padding-top: 15px;
}
#IndexBody .IndexBodyInner.IndexTarget ul {
  padding: 5px 0 0;
}
#IndexBody .IndexBodyInner.IndexTarget li {
  text-align: left;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 0.75rem;
  line-height: 1.5;
}
#IndexBody .IndexBodyInner.IndexTarget li span {
  font-size: 0.75rem;
  background: #e6e6e6;
  display: inline-block;
  padding: 3px 7px;
  margin-right: 5px;
  text-indent: 0;
  border-radius: 4px;
}
#IndexBody .IndexBodyInner.IndexTarget.IndexTargetLP {
  padding-top: 30px;
}
#IndexBody .IndexBodyInner.IndexTarget p {
  text-align: left;
  font-size: 0.75rem;
}
#IndexBody .IndexBodyInner.LowerBtn2nd {
  padding-top: 0;
  border: none;
}
#IndexBody .IndexBodyInner.LowerBtn2nd .LowerBtn {
  padding: 0;
}
#IndexBody .IndexBodyInner p {
  padding: 15px 0 0;
  font-size: 0.9375rem;
  letter-spacing: -0.05em;
}
@media (max-width: 374px) {
  #IndexBody .IndexBodyInner p {
    font-size: 0.875rem;
  }
}
#IndexBody .IndexHistoryEnd .IndexBodyInner.IndexBodyLineless {
  padding-top: 30px !important;
}
#IndexBody .IndexHistory .LowerBtn {
  padding: 0;
}
#IndexBody .IndexDocuments section {
  padding: 15px 0 0;
}
#IndexBody .IndexDocuments section:first-child {
  padding: 0;
}
#IndexBody .IndexDocuments h1 {
  cursor: pointer;
  padding: 15px 20px;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden {
  display: none;
  border-radius: 5px;
  background: #e6e6e6;
  margin-top: 7px;
  padding: 0 15px 15px;
  color: #000;
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden.IndexDocumentsFaq h2 {
  padding-top: 15px;
  font-size: 0.875rem;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden.IndexDocumentsFaq h2:first-child {
  padding-top: 15px;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden h1 {
  font-size: 0.875rem;
  padding: 15px 0 7px;
  border-bottom: 1px solid #000;
  cursor: auto;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden h2 {
  padding-top: 15px;
  font-size: 0.875rem;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden h3 {
  padding-top: 7px;
  font-size: 0.75rem;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden p {
  padding-top: 7px;
  font-size: 0.75rem;
  letter-spacing: -0.02em;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden p .TxtBold {
  font-weight: bold;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden ul, #IndexBody .IndexDocuments .IndexDocumentsHidden ol {
  padding-top: 7px;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden ul.IndexDocumentsIndent li, #IndexBody .IndexDocuments .IndexDocumentsHidden ol.IndexDocumentsIndent li {
  text-indent: -1.5em;
  padding-left: 1.5em;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden li {
  padding-top: 3px;
  font-size: 0.75rem;
  text-indent: -1em;
  padding-left: 1em;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden li:first-child {
  padding-top: 0;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden a {
  color: #000;
  text-decoration: underline;
}
#IndexBody .IndexDocuments .IndexDocumentsHidden dl {
  padding-top: 7px;
  font-size: 0.75rem;
  letter-spacing: -0.02em;
}
#IndexBody .IndexDocuments .IndexDocumentsClose {
  margin: 15px 60px 0;
  text-align: center;
}
#IndexBody .IndexDocuments .IndexDocumentsClose .BtnSolidMinus {
  cursor: pointer;
  padding: 10px 15px;
  font-size: 0.75rem;
}
#IndexBody .IndexPointNotice {
  background: var(--key-color);
  padding: 1px 0;
  margin: -15px -35px 27px;
}
@media (max-width: 374px) {
  #IndexBody .IndexPointNotice {
    margin: -15px -30px 27px;
  }
}
#IndexBody .IndexPointNotice div {
  border: 1px solid #fff;
  border-left: none;
  border-right: none;
  padding: 10px;
  font-size: 1rem;
  font-weight: bold;
  color: #fff;
  line-height: 1;
}
#IndexBody .IndexPointStopCaution {
  background: #da2129;
  padding: 30px 35px !important;
  margin: 15px -35px 0 !important;
}
@media (max-width: 374px) {
  #IndexBody .IndexPointStopCaution {
    padding: 30px 30px !important;
    margin: 15px -30px 0 !important;
  }
}
#IndexBody .IndexPointStopCaution p {
  font-size: 1rem;
  font-weight: bold;
  color: #fff;
  line-height: 1.5;
  padding: 0;
}
#IndexBody .IndexPointEntry input[type=number] {
  display: block;
  background: #e6e6e6;
  font-family: "Helvetica Neue", "Helvetica", sans-serif;
  width: 100%;
  box-sizing: border-box;
  font-size: 1.3125rem;
  line-height: 0.8;
  color: #000;
  padding: 5px 10px;
  text-align: center;
  border-radius: 5px;
  margin: 5px auto 0;
  border: none;
  outline: none;
}
#IndexBody .IndexPointEntry input[type=number]:first-child {
  margin: 0 auto;
}
#IndexBody .IndexPointEntry input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  appearance: none;
}
#IndexBody .IndexPointEntry input[type=number]::placeholder {
  color: #999;
  font-size: 1.3125rem;
}
#IndexBody .IndexPointEntry nav {
  padding: 0;
  width: 100%;
  position: relative;
  overflow: hidden;
  /* padding-top: 15px; */
}
#IndexBody .IndexPointEntry nav li {
  padding: 15px 0 0;
}
#IndexBody .IndexPointEntry nav span {
  content: "";
  position: absolute;
  display: block;
  width: 60px;
  height: 60px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  animation: btnActiveMove 0.6s ease-out 0s 1 normal forwards;
  border-radius: 500px;
}

#IndexBody .IndexPointEntry p {
  font-size: 0.875rem;
}
#IndexBody .IndexPointQr p {
  padding: 30px 0 0;
  font-size: 0.9375rem;
}
#IndexBody .IndexPointQr .LowerBtn {
  padding: 20px 0 0;
}
#IndexBody .IndexPrize h1.TitLine {
  margin-bottom: 5px;
}
#IndexBody .IndexPrize h2 {
  padding: 30px 0 0;
}
#IndexBody .IndexPrize figure {
  padding: 15px 0 0;
}
#IndexBody .IndexPrize figure.Imgsmall {
  width: 240px;
  margin: 0 auto;
}
#IndexBody .IndexPrize p {
  font-size: 0.75rem;
  padding: 10px 0 0;
}
#IndexBody .IndexPrize p.IndexPrizeCaption {
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}
#IndexBody .IndexPrize ul.IndexPrizeCaption {
  font-size: 0.75rem;
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}
#IndexBody .IndexPrize ul.IndexPrizeCaption li {
  padding-left: 1em;
  text-indent: -1em;
}
#IndexBody .IndexPrize aside.LowerBtn {
  padding: 30px 0 0;
}
#IndexBody .IndexPrize aside.LowerBtn a {
  background-image: var(--btn-line-icon-arrow-wh);
}

.IndexAddress {
  padding: 30px 0 0;
  font-size: 0.8125rem;
  /* color: var(--txt-color); */
  color: #000;
}
.IndexAddress dt {
  line-height: 1;
  font-weight: bold;
  /* padding: 25px 0 0; */
}
.IndexAddress dt {
  line-height: 1;
  font-weight: bold;
  /* padding: 25px 0 0; */
}
.IndexAddress dd p {
  padding-top: 7px;
}
.IndexAddress ul {
  padding-top: 7px;
}
.IndexAddress ul li {
  padding-top: 7px;
}
.IndexAddress ul li:first-child {
  padding-top: 0;
}
.IndexAddress ul li span {
  font-size: 0.875rem;
}
.IndexAddress a {
  text-decoration: underline;
}

.Mypage .IndexTarget {
  padding-top: 30px !important;
}

.HistoryBody {
  padding-top: 15px;
}
.HistoryBody table {
  margin-top: 8px;
  width: 100%;
  border: 1px solid var(--border-color);
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 5px;
  overflow: hidden;
}
.HistoryBody table:first-child {
  margin-top: 0;
}
.HistoryBody table tr:first-child {
  border: none;
}
.HistoryBody table tr:first-child th {
  border: none;
}
.HistoryBody table tr:first-child td {
  border: none;
}
.HistoryBody table th {
  border-top: 1px solid var(--border-color);
  background: #cccccc;
  text-align: center;
  font-size: 0.8125rem;
  font-weight: normal;
  color: #000;
  padding: 10px 3px;
  letter-spacing: 0.08em;
  width: 84px;
  box-sizing: border-box;
}
.HistoryBody table td {
  border-top: 1px solid var(--border-color);
  background: #fff;
  /* color: var(--bg-color); */
  text-align: left;
  font-size: 0.8125rem;
  color: #000;
  padding: 10px;
  letter-spacing: -0.03em;
}
.HistoryBody table td a {
  color: var(--key-color);
  text-decoration: underline;
  font-size: 0.9375rem;
}
.HistoryBody table td .HistoryWin {
  color: var(--key-color);
}
.HistoryBody table td .HistoryWin span {
  font-weight: bold;
  font-size: 0.9375rem;
}

.HistoryPagenation {
  padding-top: 10px;
}
.HistoryPagenation aside {
  font-size: 0.75rem;
}
.HistoryPagenation nav {
  padding-top: 10px;
}
.HistoryPagenation nav li {
  display: inline-block;
  margin: 0 5px 0;
  font-size: 0.875rem;
  line-height: 1;
  font-family: "Helvetica Neue", "Helvetica", sans-serif;
}
@media (max-width: 374px) {
  .HistoryPagenation nav li {
    margin: 0 3px 0;
  }
}
.HistoryPagenation nav li a {
  display: block;
  padding: 7px 5px;
  min-width: 32px;
  box-sizing: border-box;
  border: 1px solid var(--txt-color);
  border-radius: 5px;
}
.HistoryPagenation nav li.HistoryPageArrowLeft {
  border: none;
  /* padding: 7px 0; */
}
.HistoryPagenation nav li.HistoryPageArrowLeft a {
  min-width: 24px;
  border: none;
  font-weight: bold;
}
.HistoryPagenation nav li.HistoryPageArrowRight {
  border: none;
  /* padding: 7px 0; */
}
.HistoryPagenation nav li.HistoryPageArrowRight a {
  min-width: 24px;
  border: none;
  font-weight: bold;
}
.HistoryPagenation nav li span {
  display: block;
  padding: 7px 5px;
  min-width: 32px;
  box-sizing: border-box;
  border-radius: 5px;
  color: #fff;
  background: var(--key-color);
}

.prizeList {
  margin-top: 1em;
}

.prizeListItem {
  background-color: #fff;
  color: #000;
  border-radius: 5px;
  overflow: hidden;
  padding: 15px 10px;
  border: 1px solid var(--border-color);
}
.prizeListItem + .prizeListItem {
  margin-top: 20px;
}
.prizeListItem .prizeInfo {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.prizeListItem .prize-l {
  flex: 4;
  padding: 0;
}
.prizeListItem .prize-r {
  flex: 5;
  font-size: 0.6875rem;
  padding-left: 1em;
  text-align: left;
}
.prizeListItem .prize-r-caution {
  font-size: 0.625rem !important;
  color: var(--key-color);
}
.prizeListItem th, .prizeListItem td {
  padding-top: 0.2em;
  padding-bottom: 0.2em;
}
.prizeListItem th {
  padding-right: 0.5em;
  white-space: nowrap;
}
.prizeListItem td {
  vertical-align: middle;
}
.prizeListItem .btn {
  margin-top: 15px;
  width: auto;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
.prizeListItem .btn._disable {
  background-color: #737373;
  pointer-events: none;
}
.prizeListItem .btn.BtnSolidArrowGrayStop {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
@media (max-width: 374px) {
  .prizeListItem .btn.BtnSolidArrowGrayStop {
    font-size: 0.8125rem;
    padding-top: 0.85em;
    padding-bottom: 0.85em;
  }
}
.prizeListItem .btnGray {
  margin-top: 15px;
  width: auto;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  background-color: #737373;
  pointer-events: none;
}

html.ModalOpen {
  overflow-y: hidden;
  width: 100%;
  height: 100%;
}
html.ModalOpen.iphone {
  height: 100vh;
}
html.ModalOpen body {
  position: fixed;
  left: 0;
  width: 100%;
}
@media (orientation: landscape) {
  html.ModalOpen.ModalLandscape {
    overflow-y: visible !important;
    position: static !important;
  }
}
@media (orientation: landscape) {
  html.ModalOpen.ModalLandscape body {
    position: relative !important;
    top: 0 !important;
  }
}
@media (orientation: landscape) {
  html.ModalOpen.ModalLandscape .ModalCover {
    position: absolute !important;
    overflow-y: visible !important;
  }
}
@media (orientation: landscape) {
  html.ModalOpen.ModalLandscape .ModalCover .ModalOuter {
    align-items: flex-start !important;
  }
}

@-ms-viewport {
  width: auto;
}
#ModalCover {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch !important;
  background: rgba(0, 0, 0, 0.6);
  z-index: 99999999999999;
  transition: 0.3s 0.2s;
}
#ModalCover .ModalOuter {
  display: table;
  height: 100%;
  margin: 0 auto;
}
#ModalCover .ModalInner {
  display: table-cell;
  vertical-align: middle;
  padding: 80px 0 80px;
}

.ModalWrap {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch !important;
  background: rgba(0, 0, 0, 0.6);
  z-index: 99999999999999;
  transition: 0.3s 0.2s;
}

.ModalWrap .ModalOuter {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  margin: 0 auto;
}

.ModalWrap .ModalInner {
  padding: 40px 0;
  width: 100%;
}

@media (min-width: 901px) {
  .ModalWrap .ModalInner {
    width: 590px;
  }
}

#Modal, #LineModal {
  background: #fff;
  width: auto;
  margin: 0 30px;
  padding: 30px 20px;
  border-radius: 5px;
  color: #000;
  position: relative;
}
#Modal h1, #LineModal h1 {
  font-size: 1.5rem;
  padding-bottom: 15px;
  color: var(--key-color);
}
#Modal h1 span, #LineModal h1 span {
  font-size: 2.125rem;
}
#Modal p, #LineModal p {
  padding-top: 15px;
  font-size: 0.75rem;
  text-align: left;
}
#Modal .BtnLineQr, #LineModal .BtnLineQr {
  color: #000;
}
#Modal .ModalClose, #LineModal .ModalClose {
  position: absolute;
  width: 24px;
  height: 24px;
  background: #000;
  right: -11px;
  top: -11px;
  cursor: pointer;
  z-index: 999999999999999;
  border-radius: 500px;
  border: 2px solid #fff;
  box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.5);
}
#Modal .ModalClose::before, #Modal .ModalClose::after, #LineModal .ModalClose::before, #LineModal .ModalClose::after {
  content: "";
  display: block;
  width: 12px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: 0.6s;
}
#Modal .ModalClose::after, #LineModal .ModalClose::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

#LineModal p {
  font-size: 0.875rem;
  text-align: center;
}
#LineModal p.CautionTxt {
  text-align: left;
  font-size: 0.75rem;
  color: #f00;
}
#LineModal .LineModalScroll {
	max-height: 70vh;
	overflow-y: scroll;
	-ms-overflow-style: none;
	scrollbar-width: none;
}

#LineModal .LineModalScroll::-webkit-scrollbar {
	display: none;
}

#LineModal .list_shareStep .title_shareStep {
	font-size: 1.2rem;
}

.list_shareStep .title_shareStep {
	display:inline-block;
	position:relative;
	margin-bottom:5px;
	padding:0 1.4em;
	font-size:1.25rem;
	font-weight:bold;
}

.list_shareStep .title_shareStep::before,.list_shareStep .title_shareStep::after {
	display:inline-block;
	position:absolute;
	top:0;
	bottom:0;
	margin:auto;
	vertical-align:middle;
	content:'●';
	transform:scale(0.75);
}

.list_shareStep .title_shareStep::before {
	left:0;
}

.list_shareStep .title_shareStep::after {
	right:0;
}


.ModalCover {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch !important;
  background: rgba(0, 0, 0, 0.6);
  z-index: 99999999999999;
  transition: 0.3s 0.2s;
}
.ModalCover .ModalOuter {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  margin: 0 auto;
}
.ModalCover .ModalInner {
  padding: 40px 0;
  width: 100%;
}
@media (min-width: 901px) {
  .ModalCover .ModalInner {
    width: 590px;
  }
}

#Modal {
  color: #000;
  background: #fff;
  width: calc(100% - 60px);
  margin: 0 30px;
  box-sizing: border-box;
  padding: 30px 20px;
  border-radius: 5px;
  position: relative;
}
#Modal._wide {
  margin: 0 auto;
}
#Modal.ModalGetPoint {
  padding: 70px 20px;
}
#Modal h1 {
  font-size: 1.12rem;
  padding-bottom: 15px;
  color: var(--key-color);
}
#Modal h1 span {
  font-size: 2.125rem;
}
#Modal h1.ModalTitleOnly {
  padding: 15px 0;
}
#Modal h1.ModalErrorTitle {
  color: #000;
}
#Modal figure {
  padding-bottom: 15px;
}
#Modal figure img {
  width: 100%;
  max-width: 420px;
}
#Modal p {
  font-size: 0.75rem;
}
#Modal p + p {
  margin-top: 15px;
}
#Modal > .ModalClose {
  position: absolute;
  width: 24px;
  height: 24px;
  background: #000;
  right: -11px;
  top: -11px;
  cursor: pointer;
  z-index: 999999999999999;
  border-radius: 500px;
  border: 2px solid #fff;
  box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.5);
}
#Modal > .ModalClose::before, #Modal > .ModalClose::after {
  content: "";
  display: block;
  width: 12px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: 0.6s;
}
#Modal > .ModalClose::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
#Modal .overIsScroll {
  border: 1px solid #eee;
  border-radius: 3px;
  max-height: 50vh;
  overflow: auto;
  padding: 1em;
  text-align: left;
  font-size: 0.75rem;
}
#Modal .overIsScroll li + li {
  margin-top: 1em;
  padding-top: 1em;
  border-top: 1px solid #eee;
}
#Modal .overIsScroll .time {
  display: block;
  margin-bottom: 0.2em;
  font-size: 0.8em;
}
#Modal .check20over {
  display: block;
  font-size: 1.25rem;
  padding: 1.5em 0;
}
#Modal .LowerBtn a {
  font-size: 0.875rem;
  color: #000;
}

.InputBody p {
  text-align: left;
}
.InputBody .PointTit {
  font-size: 1.12rem;
}
/* .InputBody .IndexAddress {
  margin-top: 30px;
  padding: 0;
  font-size: 0.875rem;
} */
.TermsBody .InputBody .IndexAddress dt {
  font-size: 12px !important;
}
.InputBody .IndexAddress dt {
  line-height: 1;
  font-weight: bold;
}
.InputBody .IndexAddress dd p {
  padding-top: 10px;
  text-align: center;
}
.InputBody .IndexAddress ul {
  padding-top: 10px;
}
.InputBody .IndexAddress ul li {
  padding-top: 7px;
}
.InputBody .IndexAddress ul li:first-child {
  padding-top: 0;
}
.InputBody .IndexAddress ul li span {
  font-size: 0.75rem;
}
.InputBody .IndexAddress a {
  text-decoration: underline;
}

.InputBodyForm {
  padding: 15px 0 0;
}
.InputBodyForm.InputBodyFormConfirm dl {
  padding-bottom: 15px;
  border-bottom: 1px solid #cccccc;
}
.InputBodyForm dl {
  padding: 15px 0 0;
  text-align: left;
}
.InputBodyForm dl .tableMatWrap {
  padding-top: 6px;
  overflow-x: scroll;
}
.InputBodyForm dl .tableMatWrap table.tableMat {
  width: 600px;
}
.InputBodyForm dl .tableMatWrap table.tableMat tr {
  border-bottom: solid 2px #fff;
}
.InputBodyForm dl .tableMatWrap table.tableMat tr.tableMatHead td {
  width: 11.1111111111%;
  /* background: #fff; */
  background: var(--bg-color);
  font-size: 0.75rem;
}
.InputBodyForm dl .tableMatWrap table.tableMat tr.tableMatHead td span {
  font-size: 0.625rem;
}
.InputBodyForm dl .tableMatWrap table.tableMat tr.tableMatHead td.tdHead {
  /* background: #fff; */
  background: var(--bg-color);
}
.InputBodyForm dl .tableMatWrap table.tableMat tr td {
  position: relative;
  background: #eee;
  text-align: center;
}
.InputBodyForm dl .tableMatWrap table.tableMat tr td input[type=radio] {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 0;
}
.InputBodyForm dl .tableMatWrap table.tableMat tr td.tdHead {
  background: #888;
  color: #fff;
  position: sticky;
  padding: 8px 0;
  font-size: 0.875rem;
  line-height: 1.2;
  left: 0;
  z-index: 1;
}
.InputBodyForm dl .tableMatWrap table.tableMat tr td.tdHead.tdHeadCheck {
  /* background: var(--txt-color); */
  background: var(--key-color);
}
/* .InputBodyForm dl.FormOverflow dt {
  text-align: center !important;
} */
/* .InputBodyForm dl.FormOverflow dd {
  overflow: auto;
  height: 130px;
  margin-top: 5px;
  padding: 6px 10px;
  border: 1px solid #666;
  border-radius: 5px;
} */

#LowerBody .InputBodyForm .FormOverflow .FormOverflowInner {
	margin-top: 10px;
	padding: 6px 10px;
	border: 1px solid #666;
	border-radius: 5px;
	overflow: auto;
	height: 130px;
	font-size: 0.75rem !important;
	text-align: left;
}

#LowerBody .InputBodyForm .FormOverflow .FormOverflowBody p {
  padding-top: 7px;
  font-size: 0.75rem !important;
  letter-spacing: -0.02em;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody {
  color: #000;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody h1 {
  padding: 15px 0 7px;
  border-bottom: 1px solid #000;
  font-size: 0.875rem !important;
  cursor: auto;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody h2 {
  padding-top: 15px;
  font-size: 0.875rem !important;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody h3 {
  padding-top: 7px;
  font-size: 0.75rem !important;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody p {
  padding-top: 7px;
  letter-spacing: -0.02em;
  font-size: 0.75rem !important;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody ul, .InputBodyForm dl.FormOverflow .FormOverflowBody ol {
  padding-top: 7px;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody ul li, .InputBodyForm dl.FormOverflow .FormOverflowBody ol li {
  padding-top: 3px;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 0.75rem !important;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody ul li:first-child, .InputBodyForm dl.FormOverflow .FormOverflowBody ol li:first-child {
  padding-top: 0;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody ul.TargetList, .InputBodyForm dl.FormOverflow .FormOverflowBody ol.TargetList {
  padding: 0;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody ul.TargetList > li, .InputBodyForm dl.FormOverflow .FormOverflowBody ol.TargetList > li {
  padding-top: 7px;
  padding-left: 0;
  text-indent: 0;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody ul.TargetList > li.TargetListPadding, .InputBodyForm dl.FormOverflow .FormOverflowBody ol.TargetList > li.TargetListPadding {
  padding-top: 0;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody ul.TargetList ul, .InputBodyForm dl.FormOverflow .FormOverflowBody ol.TargetList ul {
  padding: 0;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody a {
  text-decoration: underline;
  word-break: break-all;
  color: #000;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody dl {
  padding-top: 7px;
  font-size: 0.75rem !important;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody dl dd {
  padding-top: 0;
}
.InputBodyForm dl.FormOverflow .FormOverflowBody dl dd ul {
  padding-top: 0;
}
.InputBodyForm dt {
  font-size: 0.875rem;
  font-weight: bold;
}
.InputBodyForm dt span {
  display: inline-block;
  margin-left: 5px;
  padding: 3px 6px;
  background: #f00;
  border-radius: 3px;
  color: #fff;
  font-size: 0.75rem;
  font-weight: bold;
  line-height: 1;
}
.InputBodyForm dd {
  padding: 5px 0 0;
}
.InputBodyForm dd.imgPreview img {
  display: block;
  width: 50%;
  margin: 10px auto 0;
}
.InputBodyForm dd.imgPreview img:first-child {
  margin-top: 0;
}
.InputBodyForm dd p {
  padding: 5px 0 !important;
}
.InputBodyForm dd p.FormCation {
  font-size: 0.9375rem !important;
}
.InputBodyForm dd p.FormCation a {
  text-decoration: underline !important;
}
.InputBodyForm dd p.FormCation.FormError {
  display: none;
  box-sizing: border-box;
  margin-top: 5px;
  padding: 5px 10px !important;
  background: #da2129;
  border-radius: 5px;
  color: #fff;
}
.InputBodyForm dd p.TxtCenter {
  text-align: center;
}
.InputBodyForm dd.CheckedColor {
  color: #999;
}
.InputBodyForm dd.CheckedColor label.CheckEtc {
  color: var(--txt-color);
}
.InputBodyForm dd input.CheckEtcForm {
  opacity: 0.6;
}
.InputBodyForm dd input, .InputBodyForm dd select {
  display: block;
  box-sizing: border-box;
  width: 100%;
  padding: 3px 6px;
  background: #e8e8e8;
  border: none;
  border-radius: 5px;
  color: #000;
  font-size: 1rem;
}
.InputBodyForm dd input:-ms-input-placeholder, .InputBodyForm dd textarea:-ms-input-placeholder {
  color: #999;
  font-size: 0.8125rem;
}
.InputBodyForm dd input::placeholder, .InputBodyForm dd textarea::placeholder {
  color: #999;
  font-size: 0.8125rem;
}
.InputBodyForm dd input[type=file] {
  display: block;
  margin-top: 5px;
}
.InputBodyForm dd input[type=file]:first-child {
  margin-top: 0;
}
.InputBodyForm dd select {
  background: #eee url(../images/icon_arrow_select.svg) no-repeat right 10px top 50%;
  background-size: auto 7px;
  line-height: 24px;
}
.InputBodyForm dd select.select_age {
  display: inline-block;
  width: 12em;
  margin-right: 0.25em;
}
.InputBodyForm dd select.select_age._mini {
  width: 5em;
}
.InputBodyForm dd .wrap_md {
  display: block;
  margin-top: 0.5em;
}
.InputBodyForm dd .wrap_md select.select_age:nth-child(n+2) {
  margin-left: 0.25em;
}
.InputBodyForm dd .InputError {
  display: block;
  box-sizing: border-box;
  width: 100%;
  margin-top: 5px;
  padding: 3px 6px;
  background: #f00;
  border-radius: 3px;
  color: #fff;
  font-size: 0.75rem;
  font-weight: bold;
  line-height: 1;
}
.InputBodyForm dd span {
  display: block;
}
.InputBodyForm dd.flex {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.InputBodyForm dd.flex > * + * {
  margin-left: 2%;
}
.InputBodyForm dd.flex input {
  width: 49%;
}
.InputBodyForm dd.flex .InputError {
  margin-left: 0;
}
.InputBodyForm dd .input_min {
  width: 72px !important;
}
.InputBodyForm dd button.InputAddressAuto {
  width: 42%;
  margin-left: 4% !important;
  border: 1px solid #999;
  border-radius: 5px;
  /* color: var(--txt-color); */
  color: #000;
  font-size: 0.6875rem;
  line-height: 1.3;
}
@media (max-width: 374px) {
  .InputBodyForm dd button.InputAddressAuto {
    width: calc(37% - 10px);
  }
}
.InputBodyForm .InputFormPostal {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.InputBodyForm .InputFormPostal input {
  width: 50%;
}
.InputBodyForm .InputFormPostal button.InputAddressAuto {
  width: calc(50% - 10px);
  border: 1px solid var(--txt-color);
  border-radius: 5px;
  font-size: 0.6875rem;
}
.InputBodyForm input[type=checkbox] {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0;
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 2px;
  outline: none;
  vertical-align: text-bottom;
}
.InputBodyForm input[type=checkbox]:checked::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 1px;
  transform: rotate(45deg);
  display: block;
  width: 5px;
  height: 2px;
  background: #000;
}
.InputBodyForm input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  right: 4px;
  bottom: 2px;
  transform: rotate(40deg);
  display: block;
  width: 2px;
  height: 8px;
  background: #000;
}
.InputBodyForm input[type=radio] {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0;
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 500px;
  outline: none;
  vertical-align: text-bottom;
}
.InputBodyForm input[type=radio]:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 8px;
  height: 8px;
  background: #000;
  border-radius: 500px;
  line-height: 1;
}
.InputBodyForm label {
  display: block;
  padding-top: 5px;
  font-size: 1rem;
  line-height: 1.8;
}
.InputBodySurvey label {
  font-size: 0.875rem;
}

.InputBodyForm textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  padding: 3px 6px;
  background: #e8e8e8;
  border-radius: 5px;
}
.InputBodyForm .LowerBtnEntryCheck {
  padding: 10px 0 15px;
}

p.TxtRed {
  color: #da2129;
}
p.TxtCenter {
  text-align: center;
}
p.TxtBold {
  font-weight: bold;
}

.FormCautionBox {
  background: #da2129;
  padding: 0 14px 14px;
  color: #fff;
}
.FormCautionBox p {
  text-align: center;
}

html.MovieBody, body.MovieBody {
  overflow: hidden;
}
html.MovieBody #CommonFooter, body.MovieBody #CommonFooter {
  padding: 0 0 5px;
  position: fixed;
  bottom: 0;
  left: 0;
}
html.MovieBody #LowerMovie, body.MovieBody #LowerMovie {
  padding: 0;
}
html.MovieBody #LowerMovie video, body.MovieBody #LowerMovie video {
  width: 100%;
  height: auto;
  position: fixed;
  top: calc(50% - 35px);
  left: 50%;
  transform: translate(-50%, -50%);
}
html.MovieBody.MovieBodyLand, body.MovieBody.MovieBodyLand {
  width: 100%;
  height: 100%;
  position: relative;
}
html.MovieBody.MovieBodyLand #CommonFooter, body.MovieBody.MovieBodyLand #CommonFooter {
  padding: 5px 0;
  position: fixed;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: center;
}
html.MovieBody.MovieBodyLand #CommonFooter .FooterID, body.MovieBody.MovieBodyLand #CommonFooter .FooterID {
  padding: 0;
}
html.MovieBody.MovieBodyLand #CommonFooter aside, body.MovieBody.MovieBodyLand #CommonFooter aside {
  padding: 0;
  margin-left: 10px;
}
html.MovieBody.MovieBodyLand #LowerMovie, body.MovieBody.MovieBodyLand #LowerMovie {
  padding: 0;
}
html.MovieBody.MovieBodyLand #LowerMovie video, body.MovieBody.MovieBodyLand #LowerMovie video {
  width: auto;
  height: auto;
  position: fixed;
  top: calc(50% - 10px);
  left: 50%;
  transform: translate(-50%, -50%);
}

/*下層 抽選*/
.LoadPic {
  padding: 0 0 15px;
  margin: 10px auto 0;
}
.LoadPic div {
  width: 200px;
  margin: 0 auto 10px;
}
.LoadPic p {
  padding: 0 !important;
  margin: 0 auto !important;
  font-size: 0.75rem !important;
}

.IndexCaution span {
  text-decoration: underline;
}

.BtnSolidArrowGray {
  background-color: #737373 !important;
  pointer-events: none;
}

#IndexBody .IndexKv .IndexKvBtn {
  padding: 15px 35px 0;
}

/*モーダル*/
html.ModalOpen {
  overflow-y: hidden;
  position: fixed;
  left: 0;
  width: 100%;
  height: 100%;
}
html.ModalOpen body {
  position: fixed;
  left: 0;
  width: 100%;
}

@-ms-viewport {
  width: auto;
}
#ModalCover {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch !important;
  background: rgba(0, 0, 0, 0.6);
  z-index: 99999999999999;
  transition: 0.3s 0.2s;
}
#ModalCover .ModalOuter {
  display: table;
  height: 100%;
  margin: 0 auto;
}
#ModalCover .ModalInner {
  display: table-cell;
  vertical-align: middle;
  padding: 80px 0 80px;
}

#Modal, #LineModal {
  background: #fff;
  width: auto;
  margin: 0 30px;
  padding: 30px 20px;
  border-radius: 5px;
  color: #000;
  position: relative;
}
#Modal h1, #LineModal h1 {
  font-size: 1.5rem;
  padding-bottom: 15px;
  color: var(--key-color);
  border-bottom: 2px solid var(--key-color);
}
#Modal h1 span, #LineModal h1 span {
  font-size: 2.125rem;
}
#Modal p, #LineModal p {
  padding-top: 15px;
  font-size: 0.75rem;
  text-align: left;
}
#Modal .BtnLineQr, #LineModal .BtnLineQr {
  color: #000;
}
#Modal .ModalClose, #LineModal .ModalClose {
  position: absolute;
  width: 24px;
  height: 24px;
  background: #000;
  right: -11px;
  top: -11px;
  cursor: pointer;
  z-index: 999999999999999;
  border-radius: 500px;
  border: 2px solid #fff;
  box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.5);
}
#Modal .ModalClose::before, #Modal .ModalClose::after, #LineModal .ModalClose::before, #LineModal .ModalClose::after {
  content: "";
  display: block;
  width: 12px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: 0.6s;
}
#Modal .ModalClose::after, #LineModal .ModalClose::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

#LineModal p {
  font-size: 0.875rem;
  text-align: center;
}
#LineModal p.CautionTxt {
  text-align: left;
  font-size: 0.75rem;
  color: #f00;
}


/* Terms */
.TermsBody{
	display: block;
	padding: 0;
	background: none;
	text-align: justify;
	line-break: strict;
	word-break: break-all;
}

.TermsBody p,li{
	font-size: 0.75rem !important;
	letter-spacing: -0.02em !important;
}

.TermsBody p{
	font-size: 0.75rem !important;
	letter-spacing: -0.02em !important;
	padding-top: 7px !important;
}

.TermsBody li{
	padding: 3px 0 0 0;
	text-indent: -1em;
	padding-left: 1em;
}

.TermsBody ul{
	padding-top: 7px !important;
}

.TermsBody h2{
	font-size: 0.875rem;
}

.TermsBody h3{
	font-size: 0.75rem;
	padding: 7px 0 0 0;
}

.TermsBody h2{
	padding-top: 15px;
}

.TermsBody a{
	text-decoration: underline;
}
.TermsBody._colorWhite a{
  color: #fff !important;
}

/* .Inquiry {
	padding: 0 !important;
}

.IndexBodyInner .Inquiry dl.IndexAddress{
  padding-top: 0;
} */

h2 + .IndexAddress,
h2 + .IndexAddress ul {
	padding: 0 !important;
}

h2 + .IndexAddress dt {
	font-size: 12px !important;
	font-weight: normal !important;
	padding-top: 7px;
	text-align: left !important;
}

.FormOverflowInner .IndexAddress dt{
  font-weight: normal !important;
}

h2 + .IndexAddress dd {
	font-size: 12px;
	padding: 0;
	text-align: left;
}

h2 + .IndexAddress li {
	padding-top: 3px !important;
	text-align: left;
}

h2._txtIndent + .IndexAddress ul li {
  text-indent: -1rem;
  padding-left: 1rem;
}


._p0{
  padding: 0 !important;
}
._pt0 {
  padding-top: 0 !important;
}
._pt5 {
  padding-top: 5px !important;
}
._pt7 {
  padding-top: 7px !important;
}
._pt10 {
  padding-top: 10px !important;
}
._pt15 {
  padding-top: 15px !important;
}
._pt20 {
  padding-top: 20px !important;
}
._pt25 {
  padding-top: 25px !important;
}
._pt30 {
  padding-top: 30px !important;
}
._pt40{
  padding-top: 40px !important;
}
._pb0{
  padding-bottom: 0 !important;
}
._pb5{
  padding-bottom: 5px !important;
}
._pb10{
  padding-bottom: 10px !important;
}
._pb15{
  padding-bottom: 15px !important;
}
._pb20{
  padding-bottom: 20px !important;
}
._pb25{
  padding-bottom: 25px !important;
}
._pb30{
  padding-bottom: 30px !important;
}
._pb40{
  padding-bottom: 40px !important;
}
._pb45{
  padding-bottom: 45px !important;
}
._pr20{
  padding-right: 20px !important;
}
._pl20{
  padding-left: 20px !important;
}


._m0{
  margin: 0 !important;
}
._mt5 {
  margin-top: 5px !important;
}
._mt10 {
  margin-top: 10px !important;
}
._mt15 {
  margin-top: 15px !important;
}
._mt20 {
  margin-top: 20px !important;
}
._mt25 {
  margin-top: 25px !important;
}
._mt30 {
  margin-top: 30px !important;
}
._mt40 {
  margin-top: 40px !important;
}
._mt60 {
  margin-top: 60px;
}
._mb5 {
	margin-bottom: 5px !important;
}
._mb10 {
	margin-bottom: 10px !important;
}
._mb15 {
	margin-bottom: 15px !important;
}
._mb20 {
	margin-bottom: 20px !important;
}
._mb25 {
	margin-bottom: 25px !important;
}
._mb30 {
	margin-bottom: 30px !important;
}
._alignLeft{
  text-align: left !important;
}
._alignCenter {
  text-align: center !important;
}
ul._txtIndent li{
  text-indent: -1rem !important;
  padding-left: 1rem !important;
}
._noIndent{
  text-indent: 0 !important;
  padding-left: 0 !important;
}
ul._noIndent li{
  text-indent: 0 !important;
  padding-left: 0 !important;
}

._txtBorderBottom{
  border-bottom: 1px solid var(--txt-color);
}

._keyBorderTop{
  border-top: 2px solid var(--key-color);
}

._noBottomBorder{
  border-bottom: 0 !important;
}

._fz11{
  font-size: 0.6875rem !important;
}

._fz12{
  font-size: 0.75rem !important;
}

ul._fz13 li{
  font-size: 0.8125rem !important;
}

._fz13{
  font-size: 0.8125rem !important;
}
._fz14{
  font-size: 0.875rem !important;
}
._fz15{
  font-size: 0.9375rem !important;
}
._fz16{
  font-size: 1rem !important;
}
._fz18{
  font-size: 1.12rem !important;
}
._fz20{
  font-size: 1.25rem !important;
}


ul._fz15 li{
  font-size: 0.9375rem !important;
}

._alignCenter{
  text-align: center;
}

.ftStrong {
	font-size: 0.9375rem;
	color: #e71f19;
}

._innerWrapper{
  border: 1px solid #000;
  color: #000;
  /* border: 1px solid #fff;
  color: #fff; */
}

._innerWrapper a{
  color: #000;
  /* color: #fff; */
  text-decoration: underline;
}

._colorWhite{
  color: #fff !important;
}

._colorBlack{
  color: #000 !important;
}

._bgWhite{
  background-color: #fff !important;
}

.BtnSolidArrowWh{
  background-image: var(--btn-solid-icon-arrow);
}

.BtnLineReverseWh{
  background-image: var(--btn-solid-icon-reverse);
}

._colorWhite .IndexAddress,
._colorWhite .IndexAddress a{
  color: #fff !important;
}

._fw-b{
  font-weight: bold;
}

.TxtRed{
  color: #da2129;
}

h2+.IndexAddress dd ul li {
  font-size: 0.75rem !important;
}

h2+.IndexAddress ul._noIndent li._indent{
  text-indent: -1em !important;
  padding-left: 1em !important;
}

.InputBodyForm dd p._pb0{
  padding-bottom: 0 !important;
}

.q-coution {
  background-color: #cb333b;
  padding: 15px;
  margin-top: 20px;
}

.q-coution p {
  color: #fff;
  padding-top: 0 !important;
  font-size: 0.875rem !important;
  font-weight: bold;
}

.InputBodyFormCheck textarea {
    font-size: 1rem;
}
