@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="mail"], input[type="email"], textarea, select, button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  border: none;
  font-family: inherit;
  font-size: 100%;
  outline: none;
}

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

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

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

input::placeholder {
  color: #333;
  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.0 !important;
}

html.iphone a:hover img, html.ipod a:hover img, html.ipad a:hover img, html.android a:hover img {
  opacity: 1.0 !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 {
  -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;
}

.TxtRed {
  color: #da2129;
}

/*サイト設定-------------------------------------------------------------------------------------------------------------*/
/*ボタン*/
@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(--key-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(--key-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, .BtnSolidBlank, .BtnSolidPlus, .BtnSolidMinus, .BtnSolidArrowGray, .prizeListItem .btnGray, .prizeListItem .btn,
input.BtnSolidArrow,
input.BtnSolidBlank,
input.BtnSolidPlus,
input.BtnSolidMinus,
input.BtnSolidArrowGray,
.prizeListItem input.btnGray,
.prizeListItem input.btn {
  /*ベタ塗りボタン 矢印*/
  margin: 0 auto;
  padding: 0;
  min-height: 58px;
  display: flex;
  justify-content: center;
  align-items: center;
  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;
}

.BtnSolidArrow:hover, .BtnSolidBlank:hover, .BtnSolidPlus:hover, .BtnSolidMinus:hover, .BtnSolidArrowGray:hover, .prizeListItem .btnGray:hover, .prizeListItem .btn:hover,
input.BtnSolidArrow:hover,
input.BtnSolidBlank:hover,
input.BtnSolidPlus:hover,
input.BtnSolidMinus:hover,
input.BtnSolidArrowGray:hover,
.prizeListItem input.btnGray:hover,
.prizeListItem input.btn:hover {
  color: var(--btn-color) !important;
}

@media (max-width: 374px) {
  .BtnSolidArrow, .BtnSolidBlank, .BtnSolidPlus, .BtnSolidMinus, .BtnSolidArrowGray, .prizeListItem .btnGray, .prizeListItem .btn,
  input.BtnSolidArrow,
  input.BtnSolidBlank,
  input.BtnSolidPlus,
  input.BtnSolidMinus,
  input.BtnSolidArrowGray,
  .prizeListItem input.btnGray,
  .prizeListItem input.btn {
    min-height: 55px;
    background-size: 14px auto;
    font-size: 0.9375rem;
  }
}

.BtnSolidArrow.Btn_2Line, .Btn_2Line.BtnSolidBlank, .Btn_2Line.BtnSolidPlus, .Btn_2Line.BtnSolidMinus, .Btn_2Line.BtnSolidArrowGray, .prizeListItem .Btn_2Line.btnGray, .prizeListItem .Btn_2Line.btn,
input.BtnSolidArrow.Btn_2Line,
input.Btn_2Line.BtnSolidBlank,
input.Btn_2Line.BtnSolidPlus,
input.Btn_2Line.BtnSolidMinus,
input.Btn_2Line.BtnSolidArrowGray,
.prizeListItem input.Btn_2Line.btnGray,
.prizeListItem input.Btn_2Line.btn {
  line-height: 1.2 !important;
  min-height: 58px !important;
  font-size: 1rem !important;
}

@media (max-width: 374px) {
  .BtnSolidArrow.Btn_2Line, .Btn_2Line.BtnSolidBlank, .Btn_2Line.BtnSolidPlus, .Btn_2Line.BtnSolidMinus, .Btn_2Line.BtnSolidArrowGray, .prizeListItem .Btn_2Line.btnGray, .prizeListItem .Btn_2Line.btn,
  input.BtnSolidArrow.Btn_2Line,
  input.Btn_2Line.BtnSolidBlank,
  input.Btn_2Line.BtnSolidPlus,
  input.Btn_2Line.BtnSolidMinus,
  input.Btn_2Line.BtnSolidArrowGray,
  .prizeListItem input.Btn_2Line.btnGray,
  .prizeListItem input.Btn_2Line.btn {
    font-size: 0.875rem !important;
    min-height: 55px !important;
  }
}

.BtnSolidArrow.BtnActive, .BtnActive.BtnSolidBlank, .BtnActive.BtnSolidPlus, .BtnActive.BtnSolidMinus, .BtnActive.BtnSolidArrowGray, .prizeListItem .BtnActive.btnGray, .prizeListItem .BtnActive.btn,
input.BtnSolidArrow.BtnActive,
input.BtnActive.BtnSolidBlank,
input.BtnActive.BtnSolidPlus,
input.BtnActive.BtnSolidMinus,
input.BtnActive.BtnSolidArrowGray,
.prizeListItem input.BtnActive.btnGray,
.prizeListItem input.BtnActive.btn {
  position: relative;
  overflow: hidden;
}

.BtnSolidArrow.BtnActive::after, .BtnActive.BtnSolidBlank::after, .BtnActive.BtnSolidPlus::after, .BtnActive.BtnSolidMinus::after, .BtnActive.BtnSolidArrowGray::after, .prizeListItem .BtnActive.btnGray::after, .prizeListItem .BtnActive.btn::after,
input.BtnSolidArrow.BtnActive::after,
input.BtnActive.BtnSolidBlank::after,
input.BtnActive.BtnSolidPlus::after,
input.BtnActive.BtnSolidMinus::after,
input.BtnActive.BtnSolidArrowGray::after,
.prizeListItem input.BtnActive.btnGray::after,
.prizeListItem input.BtnActive.btn::after {
  content: '';
  position: absolute;
  display: block;
  width: 60px;
  height: 60px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  animation: btnActiveMove .6s ease-out 0s 1 normal forwards;
  border-radius: 500px;
  opacity: 0;
}

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

.BtnSolidPlus {
  /*ベタ塗りボタン　プラス記号*/
  padding: 0;
  min-height: 58px;
  background-image: var(--btn-solid-icon-plus);
}

.BtnSolidPlus::after {
  animation: btnActiveMove .6s ease-out 0s 1 normal none;
}

.BtnSolidMinus {
  /*ベタ塗りボタン　マイナス記号*/
  padding: 0;
  min-height: 58px;
  background-image: var(--btn-solid-icon-minus);
}

.BtnSolidMinus::after {
  animation: btnActiveMove .6s ease-out 0s 1 normal none;
}

.BtnSolidArrowGray, .prizeListItem .btnGray {
  /*ベタ塗りボタン　グレーアウト*/
  background-color: #737373 !important;
  background-image: none;
  color: #fff !important;
  pointer-events: none;
  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;
}

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

.LowerBodyWh .BtnLineArrow, .LowerBodyWh .BtnLineReverse, .LowerBodyWh .BtnLineQr, .LowerBodyWh .BtnLineArrowBk, .LowerBodyWh .InputBodyForm .LowerBtn .BtnLineArrowBk, .InputBodyForm .LowerBtn .LowerBodyWh .BtnLineArrowBk,
.IndexBodyWh .BtnLineArrow,
.IndexBodyWh .BtnLineReverse,
.IndexBodyWh .BtnLineQr,
.IndexBodyWh .BtnLineArrowBk,
.IndexBodyWh .InputBodyForm .LowerBtn .BtnLineArrowBk,
.InputBodyForm .LowerBtn .IndexBodyWh .BtnLineArrowBk {
  color: #000;
}

.BtnLineArrow, .BtnLineReverse, .BtnLineQr, .BtnLineArrowBk, .InputBodyForm .LowerBtn .BtnLineArrowBk {
  /*罫線ボタン 矢印*/
  margin: 0 auto;
  padding: 20px;
  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;
}

.BtnLineArrow._arrow-wh, ._arrow-wh.BtnLineReverse, ._arrow-wh.BtnLineQr, ._arrow-wh.BtnLineArrowBk, .InputBodyForm .LowerBtn ._arrow-wh.BtnLineArrowBk {
  background-image: var(--btn-line-icon-arrow-wh);
}

@media (max-width: 374px) {
  .BtnLineArrow, .BtnLineReverse, .BtnLineQr, .BtnLineArrowBk, .InputBodyForm .LowerBtn .BtnLineArrowBk {
    background-size: 14px auto;
    font-size: 0.9375rem;
  }
}

.BtnLineArrow.BtnActive, .BtnActive.BtnLineReverse, .BtnActive.BtnLineQr, .BtnActive.BtnLineArrowBk, .InputBodyForm .LowerBtn .BtnActive.BtnLineArrowBk {
  position: relative;
  overflow: hidden;
}

.BtnLineArrow.BtnActive::after, .BtnActive.BtnLineReverse::after, .BtnActive.BtnLineQr::after, .BtnActive.BtnLineArrowBk::after, .InputBodyForm .LowerBtn .BtnActive.BtnLineArrowBk::after {
  content: '';
  position: absolute;
  display: block;
  width: 60px;
  height: 60px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--key-color);
  animation: btnActiveMove .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._arrowWh {
  background-image: var(--btn-line-icon-reverse-wh);
}

.BtnLineQr {
  /*罫線ボタン QRコード*/
  background-image: var(--btn-line-icon-qr);
  background-position: right 11px top 50%;
  line-height: 1.2;
  padding: 12px 20px;
}

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

.BtnLineArrowBk._arrow-wh {
  background-image: var(--btn-line-icon-arrow-wh);
}

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

.InputBodyForm .LowerBtn .BtnLineArrowBk._arrow-wh {
  color: #fff;
  background-image: url(../images/icon_arrow_reverse_wh.svg);
}

.LinkBlue {
	text-decoration: underline;
}


._mt0{
  margin-top: 0 !important;
}

.ml-20{
  margin-left: 20px;
}

._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;
}

._pt0 {
  padding-top: 0px !important;
}

._pt10 {
  padding-top: 10px !important;
}

._pt15 {
  padding-top: 15px !important;
}

._pt25{
  padding-top: 25px !important;
}

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

._alignLeft {
  text-align: left;
}

._textUnderline {
  text-decoration: underline;
}

/*ページレイアウト*/
/*ヘッダー*/
#LowerHeader {
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
}

/*フッター*/
#CommonFooter {
  margin: 0 auto;
  padding: 0 0 15px;
  border-top: 2px solid var(--key-color);
  width: 100%;
  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 span.animationDot {
  display: inline-block;
  letter-spacing: normal;
  animation: dotBlink01 2s infinite;
}

article span.animationDot + span.animationDot {
  animation-name: dotBlink02;
}

article span.animationDot + span.animationDot + span.animationDot {
  animation-name: dotBlink03;
}

article h1 {
  width: 100%;
  position: relative;
  font-size: 1.6875rem;
  font-weight: bold;
}

article h1 span {
  letter-spacing: -0.2em;
}

@media (max-width: 374px) {
  article h1 {
    font-size: 1.5rem;
    letter-spacing: -0.05em;
  }
}

article h1.TitLine {
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--txt-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 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%;
  transform: translate(0, -50%);
}

article h2 .PointTit::before {
  left: -16px;
}

article h2 .PointTit::after {
  right: -16px;
}

article h3 .PointTit {
  margin: 30px 0 0;
  font-size: 1.12rem;
  font-weight: bold;
  line-height: 1.2;
  display: inline-block;
  position: relative;
}

article h3 .PointTit span {
  font-size: 2.125rem;
  display: inline-block;
  font-family: 'Helvetica Neue', 'Helvetica', sans-serif;
}

article h3 .PointTit::after, article h3 .PointTit::before {
  content: '';
  display: block;
  width: 9px;
  height: 9px;
  background: var(--txt-color);
  border-radius: 500px;
  position: absolute;
  top: 50%;
  transform: translate(0, -40%);
}

article h3 .PointTit::before {
  left: -16px;
}

article h3 .PointTit::after {
  right: -16px;
}

article .PointTitSub {
  font-size: 0.9375rem !important;
  letter-spacing: -0.02em !important;
  font-weight: bold;
}

.PrizeAnchor {
  padding: 30px 0 0;
}

.PrizeAnchor ul {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.PrizeAnchor ul li {
  width: 50%;
  box-sizing: border-box;
  padding: 0 5px 10px 0;
}

.PrizeAnchor ul li:nth-child(even) {
  padding: 0 0 10px 5px;
}

.PrizeAnchor ul a {
  background: var(--key-color) url(../images/icon_arrow_down_wh.svg) no-repeat scroll bottom 8px left 50%;
  background-size: auto 12px;
  font-size: 0.875rem;
  padding: 12px 0 28px;
}

.PrizeSubtit {
  margin: 25px -35px 0;
  padding: 15px 0 15px !important;
  font-size: 1.25rem;
  line-height: 1;
  background: var(--bg-color);
  border-bottom: 4px solid var(--key-color);
}

.PrizeSubtit:not(:first-of-type) {
  margin-top: 25px;
}

@media (max-width: 374px) {
  .PrizeSubtit:not(:first-of-type) {
    margin: 10px -30px 0;
  }
}

@media (max-width: 374px) {
  .PrizeSubtit {
    margin: 10px -30px 0;
  }
}

.PrizeSubtit span {
  display: blocknpm;
  font-size: 0.75rem;
}

/*下層基本レイアウト*/
#LowerBody {
  padding: 45px 35px 45px;
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
  box-sizing: border-box;
  border-top: 2px solid var(--key-color);
}

@media (max-width: 374px) {
  #LowerBody {
    padding: 45px 30px 30px;
  }
}

#LowerBody.LowerBodyWh {
  background: #fff;
  color: #000;
}

#LowerBody p {
  padding: 15px 0 0;
  font-size: 0.9375rem;
}

.Lottery {
  padding: 48px 0 72px;
  font-size: 1.5rem;
  font-weight: bold;
}

.LowerBtn {
  padding: 30px 0 0;
}

.LowerBtn.LowerBtnEnd {
  padding: 0;
}

.LowerBtn.CouponBtn {
  margin: 0 -35px -30px;
  padding: 30px 35px;
  background: #fff;
}

@media (max-width: 374px) {
  .LowerBtn.CouponBtn {
    margin: 0 -30px -30px;
    padding: 30px;
  }
}

.LowerBtn.CouponBtn a.BtnLineArrow, .LowerBtn.CouponBtn a.BtnLineReverse, .LowerBtn.CouponBtn a.BtnLineQr, .LowerBtn.CouponBtn a.BtnLineArrowBk {
  background-image: url(../images/icon_arrow_bk.svg);
  color: #000;
}

.LowerBtn li {
  padding-top: 15px;
}

.LowerBtn li:first-child {
  padding-top: 0;
}

section.IndexBodyInner > .LowerBtn {
  padding: 0 !important;
}

section.IndexBodyInner > .LowerBtn._pt30 {
  padding-top: 30px !important;
}

.IndexPrizeWrap + .LowerBtn {
  padding: 0 !important;
  margin-top: 30px;
}

.IndexPrizeWrap p,
.IndexPrizeWrap li {
	font-size: 0.75rem !important;
  text-align: left;
}

.IndexPrizeWrap li {
	padding-left: 1em;
	text-indent: -1em;
}



@keyframes LowerResultMove {
  0% {
    transform: translate(0, 15px);
    opacity: 0;
  }
  50% {
    opacity: .2;
  }
  100% {
    transform: translate(0, 0);
    opacity: 1;
  }
}

.LowerResult {
  animation: LowerResultMove .4s ease-out .6s 1 normal forwards;
  opacity: 0;
}

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

.LowerResultCaution {
  color: #da2129;
}

.GiftNum{
  padding: 10px 0;
	border: 2px solid var(--border-color);
  border-radius: 5px;
  font-size: 20px;
  font-weight: bold;
	margin-bottom: 20px;
}
.GiftTxt{
  margin: 20px 0;
}

/*下層 エントリー〜当落*/
.LowerEntry .TextLeft, .LowerCoupon .TextLeft {
  text-align: left;
}

.LowerEntry.LowerWin h2, .LowerWin.LowerCoupon h2 {
  padding: 15px 0 0;
}

.LowerEntry.LowerWin.LowerWinCode figure, .LowerWin.LowerWinCode.LowerCoupon figure {
  padding: 0;
  margin-top: -15px;
}

.LowerEntry.LowerWin.LowerWinCode h1, .LowerWin.LowerWinCode.LowerCoupon h1 {
  font-size: 1.12rem;
  padding: 30px 0 0;
}

.LowerEntry.LowerWin.LowerWinCode .LowerWinCoupon, .LowerWin.LowerWinCode.LowerCoupon .LowerWinCoupon {
  padding: 0;
}

.LowerEntry.LowerWin.LowerWinCode .LowerWinCoupon p, .LowerWin.LowerWinCode.LowerCoupon .LowerWinCoupon p {
  padding: 8px 0 0 !important;
  font-size: 0.75rem !important;
}

.LowerEntry p.TxtCenter, .LowerCoupon p.TxtCenter {
  text-align: center;
}

.LowerEntry figure, .LowerCoupon figure {
  padding: 15px 0 0;
}

.LowerEntry figure._w185, .LowerCoupon figure._w185 {
  width: 185px;
  margin: 0 auto;
}

.LowerEntry .LowerEntryPoint, .LowerCoupon .LowerEntryPoint {
  padding: 15px 0 0;
}

.LowerEntry .LowerEntryPoint dt, .LowerCoupon .LowerEntryPoint dt {
  border: 2px solid var(--key-color);
  color: var(--key-color);
  border-radius: 5px;
  padding: 10px 2px;
  font-size: 1.12rem;
  font-weight: bold;
  letter-spacing: -0.03em;
}

.LowerEntry .LowerEntryPoint dt span, .LowerCoupon .LowerEntryPoint dt span {
  letter-spacing: -0.08em;
}

.LowerEntry .LowerEntryPoint dd, .LowerCoupon .LowerEntryPoint dd {
  padding: 10px 0 0;
  font-size: 1rem;
  letter-spacing: -0.03em;
}

@media (max-width: 374px) {
  .LowerEntry .LowerEntryPoint dd, .LowerCoupon .LowerEntryPoint dd {
    font-size: 0.875rem;
  }
}

.LowerEntry .LowerEntryPoint dd span, .LowerCoupon .LowerEntryPoint dd span {
  letter-spacing: -0.08em;
}

.LowerEntry .LowerWinCoupon, .LowerCoupon .LowerWinCoupon {
  padding: 0 0 0;
  margin: 0 auto -20px;
}

.LowerEntry .LowerWinCoupon h3, .LowerCoupon .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, .LowerCoupon .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, .LowerCoupon .LowerWinCoupon div {
  margin: 10px auto 0;
  background: #fff;
  color: #000;
  border: 1px solid var(--txt-color);
  border-radius: 5px;
  padding: 7px 0;
  font-family: 'Helvetica Neue', 'Helvetica', sans-serif;
  font-size: 1.3125rem;
  line-height: 1;
}

.LowerEntry .LowerWinCaution, .LowerCoupon .LowerWinCaution {
  margin: 30px 0 0;
  border: 1px solid var(--txt-color);
  padding: 20px 15px !important;

}

.LowerEntry .LowerWinCaution._NoBorder, .LowerCoupon .LowerWinCaution._NoBorder {
  border: none;
}

.LowerEntry .LowerWinCaution._NoBorder ul, .LowerCoupon .LowerWinCaution._NoBorder ul {
  padding: 0;
}

.LowerEntry .LowerWinCaution h3, .LowerCoupon .LowerWinCaution h3 {
  padding: 0 15px 0;
  font-size: 0.875rem;
  text-align: left;
}

.LowerEntry .LowerWinCaution h3:first-child, .LowerCoupon .LowerWinCaution h3:first-child {
  padding: 20px 15px 0;
}

.LowerEntry .LowerWinCaution h3 + ul, .LowerCoupon .LowerWinCaution h3 + ul {
  padding: 5px 15px 20px;
}

/* .LowerEntry .LowerWinCaution > ul, .LowerCoupon .LowerWinCaution ul {
  padding: 20px 15px;
} */

.LowerEntry .LowerWinCaution li, .LowerCoupon .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 li span, .LowerCoupon .LowerWinCaution li span {
  font-weight: bold;
}

.LowerEntry .LowerWinCaution a, .LowerCoupon .LowerWinCaution a {
  text-decoration: underline;
}

.LowerEntry .LowerWinCaution p, .LowerCoupon .LowerWinCaution p {
  font-size: 0.75rem !important;
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}

.LowerEntry .LowerWinCaution p span, .LowerCoupon .LowerWinCaution p span {
  font-weight: bold;
}

.LowerEntry .LowerWinCaution dl {
	padding: 20px 10px;
	text-align-last: left;
}

.LowerEntry .LowerWinCaution dl dt {
	font-size: 0.875rem;
	font-weight: bold;
}

.LowerEntry .LowerWinCaution dl dd {
	font-size: 0.75rem;
	margin-top: 15px;
	text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}

.LowerEntry .LowerWinCaution dl dd:not(:last-child) {
	margin-bottom: 20px;
}


/*下層 抽選*/
.LoadPic {
  padding: 15px 0;
  margin: 0 auto;
}

.LoadPic div {
  width: 100px;
  margin: 0 auto;
}

.LoadPic p {
  padding: 0 !important;
  margin: 0 auto !important;
  font-size: 0.75rem !important;
}

.LowerCoupon {
  padding: 0 0 15px;
}

.LowerCoupon h1 {
  font-size: 1.3125rem;
}

@media (max-width: 374px) {
  .LowerCoupon h1 {
    font-size: 1.12rem;
  }
}

.LowerCoupon p.CouponCaution {
  text-align: left;
  font-size: 0.75rem !important;
}

.CouponCode {
  padding: 0 0 15px;
}

.CouponCode figure {
  background: #fff;
  padding: 15px 35px 10px;
  margin: 0 -35px;
}

.CouponCode figure img {
  width: 300px;
}

@media (max-width: 374px) {
  .CouponCode figure {
    margin: 0 -30px;
    padding: 15px 30px 10px;
  }
}

.CouponCode .CouponNum {
  padding: 0 0 15px !important;
}

.CouponCode p {
  font-size: 0.75rem !important;
  padding-bottom: 15px !important;
}

.CouponCode dl {
  border-radius: 5px;
  overflow: hidden;
  border: solid 2px;
  border-color: var(--key-color);
}

.CouponCode dl dt {
  background: var(--key-color);
  color: var(--btn-color);
  font-size: 0.75rem;
  font-weight: bold;
  padding: 5px 0;
}

.CouponCode dl dd {
  background: #fff;
  color: #000;
  font-weight: bold;
  padding: 5px 0;
}

.CouponCode.CouponCodeQR figure img {
  width: 140px;
}

.CouponCode.CouponCodeQR dl:nth-child(4) {
  margin-top: 15px;
}

.CouponDocuments {
  background: #fff;
  padding: 15px 35px 0;
  margin: 0 -35px;
  color: #000;
}

@media (max-width: 374px) {
  .CouponDocuments {
    margin: 0 -30px;
    padding: 15px 30px 0;
  }
}

.CouponDocuments h1.TitLine {
  border-bottom: 2px solid #000;
}

.CouponDocuments h1.TitLine::after {
  background: #fff;
  border: 2px solid #000;
  border-top: 0;
  border-right: 0;
}

.CouponDocuments h2 {
  padding-top: 30px;
  font-size: 1rem;
  text-align: left;
}

.CouponDocuments h3 {
  padding-top: 15px;
  font-size: 0.875rem;
  text-align: left;
}

.CouponDocuments ul, .CouponDocuments ol {
  padding-top: 7px;
}

.CouponDocuments li {
  padding-top: 3px;
  font-size: 0.75rem;
  text-indent: -1em;
  padding-left: 1em;
  text-align: left;
}

.CouponDocuments li:first-child {
  padding-top: 0;
}

.CouponDocuments p {
  padding-top: 3px !important;
  font-size: 0.75rem !important;
  text-align: left;
}

.CouponDocuments .CouponDocumentsImg {
  padding-top: 15px;
}

.CouponDocuments .CouponDocumentsImg img {
  width: 100%;
  height: auto;
}

/*汎用エラー*/
.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;
}

#LowerBody p.error{
  padding: 25px 0 0;
}

.LowerBtn.error2{
  padding-top: 25px;
}


/*END*/
.EndIndexCaution {
  background: #da2129;
  padding: 30px 20px;
}

.EndIndexCaution p {
  padding: 0 !important;
  font-size: 1.25rem;
  color: #fff;
  font-weight: bold;
}

.CpEndIndexCaution {
  background: #da2129;
  padding: 30px 0;
}

.CpEndIndexCaution p {
  font-size: 1.25rem;
  color: #fff;
  font-weight: bold;
}

.ZaikoCaution p {
  color: #fff;
  font-weight: bold;
  font-size: 1rem !important;
}

@media (max-width: 374px) {
  .ZaikoCaution p br {
    display: none;
  }
}

.Maintenance {
  background: #da2129;
  padding: 20px 0;
  color: #fff;
}

.Maintenance .MaintenanceTit {
  font-size: 1.5rem !important;
  font-weight: bold;
}

.Maintenance p {
  font-size: 0.9375rem !important;
  padding: 15px 20px;
}

.Maintenance p:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.Maintenance p strong {
  display: block;
  font-size: 1.1em;
}

.Maintenance p .sub {
  font-size: .8em;
}

/*INDEX*/
#IndexBody {
  max-width: 750px;
  margin: 0 auto;
}

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

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

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

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

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

#IndexBody .IndexKv p 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 20px 0;
  padding: 10px 0 12px;
  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:first-of-type {
  padding-top: 15px;
}

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

#IndexBody .IndexKv dl dd {
  letter-spacing: -0.03em;
}

@media (max-width: 374px) {
  #IndexBody .IndexKv dl dd {
    font-size: 0.75rem;
  }
}

#IndexBody .IndexKv dl dd span {
  display: inline-block;
  padding: 10px 0 0;
  font-size: 0.75rem;
  font-weight: normal;
}

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

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

#IndexBody .IndexKvTeaser h2 {
  padding: 20px 0 10px;
  font-size: 1.25rem;
}

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

#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 .IndexKv .IndexKvBtn .modalOpenBtn {
	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-blank);
  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;
}
#IndexBody .IndexKv .IndexKvBtn .modalOpenBtn:hover {
	cursor: pointer;
}

#IndexBody .IndexBodyInner {
  padding: 45px 35px;
  border-top: 2px solid var(--key-color);
}
@media (max-width: 374px) {
  #IndexBody .IndexBodyInner {
    padding: 30px;
  }
}

#IndexBody .IndexBodyInner-lp {
  padding: 0 15px 30px;
  border-top: 1px solid var(--txt-color);
	margin: 0 20px;
}
@media (max-width: 374px) {
  #IndexBody .IndexBodyInner-lp {
    padding: 30px;
  }
}

#IndexBody .IndexBodyInner p.IndexCaution {
  color: #da2129;
}

#IndexBody .IndexBodyInner.IndexBodyLineless {
  border-top: none;
}

#IndexBody .IndexBodyInner.IndexBodyWh {
  background: #fff;
  color: #000;
  /* 例外的対応↓ */
}

#IndexBody .IndexBodyInner.IndexBodyWh h1.TitLine {
  border-bottom: 2px solid #000;
}

#IndexBody .IndexBodyInner.IndexBodyWh h1.TitLine::after {
  background: #fff;
  border: 2px solid #000;
  border-top: 0;
  border-right: 0;
}

#IndexBody .IndexBodyInner.IndexBodyWh h1._mt30px {
  margin-top: 30px;
}

#IndexBody .IndexBodyInner.IndexBodyWh .BtnLineArrow, #IndexBody .IndexBodyInner.IndexBodyWh .BtnLineReverse, #IndexBody .IndexBodyInner.IndexBodyWh .BtnLineArrowBk {
  background-image: var(--btn-line-icon-arrow);
}

#IndexBody .IndexBodyInner.IndexHowtoStep section {
  padding: 0;
}

#IndexBody .IndexBodyInner.IndexHowtoStep > section {
  padding: 15px 0 0 !important;
}

#IndexBody .IndexBodyInner.IndexHowtoStep ol li {
  padding-top: 30px;
}

#IndexBody .IndexBodyInner.IndexHowtoStep h1 {
  margin-bottom: 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: 5px;
}

#IndexBody .IndexBodyInner.IndexHowtoStep figure img {
  border-radius: 5px;
}

/* #IndexBody .IndexBodyInner.IndexTarget {
  border: none;
} */

#IndexBody .IndexBodyInner.IndexTarget figure {
  padding-top: 15px;
}

#IndexBody .IndexBodyInner.IndexTarget ul {
  padding: 15px 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.IndexTargetName {
  padding-left: 0;
  text-indent: 0;
}

#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;
}

#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 .IndexDocuments > section {
  padding: 15px 0 0;
}

#IndexBody .IndexDocuments > section:first-child {
  padding: 0;
}

#IndexBody .IndexDocuments h1 {
  cursor: pointer;
  padding: 15px 20px;
  min-height: 0;
}

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

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

.TermsBody 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;
  padding-inline: 0 !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;
}

.IndexDocumentsHidden, .TermsBody {
  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;
}

.IndexDocumentsHidden.IndexDocumentsHiddenVisible, .IndexDocumentsHiddenVisible.TermsBody {
  display: block;
}

.IndexDocumentsHidden.IndexDocumentsFaq h2, .IndexDocumentsFaq.TermsBody h2 {
  padding-top: 15px;
  font-size: 0.875rem;
}

.IndexDocumentsHidden._imageBox, ._imageBox.TermsBody {
  padding: 0;
}

.IndexDocumentsHidden h1, .TermsBody h1 {
  font-size: 0.875rem;
  padding: 15px 0 7px;
  border-bottom: 1px solid #000;
  cursor: auto;
}

.IndexDocumentsHidden h2, .TermsBody h2 {
  padding-top: 15px;
  font-size: 0.875rem;
}

.IndexDocumentsHidden h3, .TermsBody h3 {
  padding-top: 7px;
  font-size: 0.75rem;
}

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

.IndexDocumentsHidden p span, .TermsBody p span {
  font-weight: bold;
}

.IndexDocumentsHidden ul, .TermsBody ul, .IndexDocumentsHidden ol, .TermsBody ol {
  padding-top: 7px;
}

.IndexDocumentsHidden ul.IndexDocumentsIndent li, .TermsBody ul.IndexDocumentsIndent li, .IndexDocumentsHidden ol.IndexDocumentsIndent li, .TermsBody ol.IndexDocumentsIndent li {
  text-indent: -1.5em;
  padding-left: 1.5em;
}

.IndexDocumentsHidden li, .TermsBody li {
  padding-top: 3px;
  font-size: 0.75rem;
  text-indent: -1em;
  padding-left: 1em;
}

.IndexDocumentsHidden li:first-child, .TermsBody li:first-child {
  padding-top: 0;
}

.IndexDocumentsHidden a, .TermsBody a {
  color: #000;
  text-decoration: underline;
}

.IndexDocumentsClose {
  margin: 15px 60px 0;
  text-align: center;
}

.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 {
  padding: 25px 0 0;
}

#IndexBody .IndexPointEntry p > a {
	text-decoration: underline;
}

#IndexBody .IndexPointEntry input[type='tel'] {
  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;
}

#IndexBody .IndexPointEntry input[type='tel']:first-child {
  margin: 0 auto;
}

#IndexBody .IndexPointEntry nav {
  padding: 15px 0 0;
  width: 100%;
  position: relative;
  overflow: hidden;
}

#IndexBody .IndexPointEntry nav + div {
  padding: 15px 0 0;
  width: 100%;
  position: relative;
  overflow: hidden;
}

#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 .6s ease-out 0s 1 normal forwards;
  border-radius: 500px;
}

#IndexBody .IndexPointEntry .AnchorTargetText {
  font-weight: bold;
}

#IndexBody .IndexPointEntry .AnchorTargetText a {
  color: #000;
  text-decoration: underline;
}

#IndexBody .IndexPointQr p {
  padding: 30px 0 0;
  font-size: 0.75rem;
}

#IndexBody .IndexPointQr .LowerBtn {
  padding: 15px 0 0;
}

#IndexBody .IndexPrize h1.TitLine {
  margin-bottom: 15px;
}

#IndexBody .IndexPrize h2 {
  padding: 30px 0 0;
}

#IndexBody .IndexPrize figure {
  padding: 10px 0 0;
}

#IndexBody .IndexPrize figure.IndexPrize3Point {
  padding: 30px 0 0;
}

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

#IndexBody .IndexPrize li{
  font-size: 0.75rem;
}

#IndexBody .IndexPrize p.IndexPrizeCaption {
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}

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

#IndexBody .IndexPrize p span {
  display: block;
  margin: 0 0 10px;
  font-size: 1.5rem;
  font-weight: bold;
  color: #007d32;
}

#IndexBody .IndexPrize ul.IndexPrizeCaption {
  font-size: 0.75rem;
  padding: 10px 0 0;
  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;
}

.IndexAddress {
  padding: 7px 0 0;
  font-size: 0.8125rem;
}

.IndexAddress dt {
  padding: 30px 0 0;
  line-height: 1.2;
  font-weight: bold;
}

.IndexAddress dt span {
  font-weight: normal;
}

.IndexAddress dd {
  padding-top: 7px;
}

.IndexAddress ul li {
  padding-top: 7px;
}

.IndexAddress ul li:first-child {
  padding-top: 0;
}

.IndexAddress a {
  color: #000;
  text-decoration: underline;
}

.TermsBody h2 +.IndexAddress dt{
	padding-top: 0;
}

.TermsBody h2+.IndexAddress dt{
	font-weight: normal !important;
	font-size: 0.75rem;
}

.TermsBody h2+.IndexAddress dd{
	padding-top: 3px;
}

.TermsBody h2 + .IndexAddress dd ul{
  padding-top: 0px !important;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden li:first-child {
  padding-top: 0;
}

.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;
  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;
}

.HistoryBody table td .HistoryWin {
  color: var(--key-color);
}

.HistoryBody table td .HistoryWin span {
  color: var(--key-color);
  font-weight: bold;
  font-size: 0.9375rem;
}

.HistoryBody table td .HistoryWin ._bk {
  color: #000;
}

.HistoryBody table td .HistoryWait span {
  font-weight: bold;
  font-size: 0.9375rem;
}

.HistoryBody table td .HistorySeal {
  color: var(--key-color);
}

.HistoryBody table td .HistorySeal 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: 0px 5px;
  font-size: 0.875rem;
  line-height: 1;
  font-family: 'Helvetica Neue', 'Helvetica', sans-serif;
}

@media (max-width: 374px) {
  .HistoryPagenation nav li {
    margin: 10px 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: 0;
}

.HistoryPagenation nav li.HistoryPageArrowLeft a {
  min-width: 24px;
  border: none;
  font-weight: bold;
}

.HistoryPagenation nav li.HistoryPageArrowRight {
  border: none;
  padding: 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;
  background: var(--key-color);
  color: var(--btn-color);
}

html.ModalOpen {
  overflow-y: hidden;
  position: fixed;
  left: 0;
  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, html.ModalOpen.ModalLandscape #ModalCoverMovie,
  html.ModalOpen.ModalLandscape #ModalCover_2nd,
  html.ModalOpen.ModalLandscape #ModalCover_3rd {
    position: absolute !important;
    overflow-y: visible !important;
  }
}

@media (orientation: landscape) {
  html.ModalOpen.ModalLandscape #ModalCover .ModalOuter, html.ModalOpen.ModalLandscape #ModalCoverMovie .ModalOuter,
  html.ModalOpen.ModalLandscape #ModalCover_2nd .ModalOuter,
  html.ModalOpen.ModalLandscape #ModalCover_3rd .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: .3s .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;
  }
}

.InputBody p {
  text-align: left;
}

.InputBodyForm {
  padding: 15px 0 0;
}

.InputBodyForm.InputBodyFormConfirm dl {
  padding-bottom: 15px;
  border-bottom: 1px solid #ccc;
}

.InputBodyForm dl {
  padding: 15px 0 0;
  text-align: left;
}

.InputBodyForm .FormOverflow {
  margin-top: 15px;
}

.InputBodyForm .FormOverflow .FormOverflowInner {
  margin-top: 5px;
  padding: 6px 10px;
  border: 1px solid #666;
  border-radius: 5px;
  overflow: auto;
  height: 130px;
}

.InputBodyForm .FormOverflow .FormOverflowBody h1 {
  font-size: 0.875rem !important;
  padding: 15px 0 7px;
  border-bottom: 1px solid #000;
  cursor: auto;
}

.InputBodyForm .FormOverflow .FormOverflowBody h2 {
  padding-top: 15px;
  font-size: 0.875rem !important;
  text-align: left;
}

.InputBodyForm .FormOverflow .FormOverflowBody h3 {
  padding-top: 7px;
  font-size: 0.75rem !important;
  text-align: left;
}

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

.InputBodyForm .FormOverflow .FormOverflowBody ul li, .InputBodyForm .FormOverflow .FormOverflowBody ol li {
  padding-top: 3px;
  font-size: 0.75rem !important;
  text-indent: -1em;
  padding-left: 1em;
  text-align: left;
}

.InputBodyForm .FormOverflow .FormOverflowBody ul li:first-child, .InputBodyForm .FormOverflow .FormOverflowBody ol li:first-child {
  padding-top: 0;
}

.InputBodyForm .FormOverflow .FormOverflowBody ul.TargetList, .InputBodyForm .FormOverflow .FormOverflowBody ol.TargetList {
  padding: 0;
}

.InputBodyForm .FormOverflow .FormOverflowBody ul.TargetList > li, .InputBodyForm .FormOverflow .FormOverflowBody ol.TargetList > li {
  padding-top: 7px;
  padding-left: 0;
  text-indent: 0;
}

.InputBodyForm .FormOverflow .FormOverflowBody ul.TargetList > li.TargetListPadding, .InputBodyForm .FormOverflow .FormOverflowBody ol.TargetList > li.TargetListPadding {
  padding-top: 0;
}

.InputBodyForm .FormOverflow .FormOverflowBody ul.TargetList ul, .InputBodyForm .FormOverflow .FormOverflowBody ol.TargetList ul {
  padding: 0;
}

.InputBodyForm .FormOverflow .FormOverflowBody a {
  color: #000;
  text-decoration: underline;
  word-break: break-all;
}

.InputBodyForm .FormOverflow .FormOverflowBody dl {
  padding-top: 7px;
  font-size: 0.75rem !important;
}

.InputBodyForm .FormOverflow .FormOverflowBody dl dd {
  padding-top: 0;
}

.InputBodyForm .FormOverflow .FormOverflowBody dl dd ul {
  padding-top: 0;
}

.InputBodyForm dt {
  font-size: 0.875rem;
  font-weight: bold;
}

.InputBodyForm dt span {
  display: inline-block;
  background: #ff0000;
  color: #fff;
  font-weight: bold;
  font-size: 0.75rem;
  padding: 3px 6px;
  border-radius: 3px;
  margin-left: 5px;
  line-height: 1;
}

.InputBodyForm dd {
  padding: 5px 0 0;
}

.InputBodyForm dd.imgPreview img {
  display: block;
  margin: 10px auto 0;
  width: 50%;
}

.InputBodyForm dd.imgPreview img:first-child {
  margin-top: 0;
}

.InputBodyForm dd.CheckedColor {
  color: #999;
}

.InputBodyForm dd.CheckedColor label.CheckEtc {
  color: var(--txt-color);
}

.InputBodyForm dd input.CheckEtc2Form {
  opacity: .3;
}

.InputBodyForm dd input, .InputBodyForm dd select {
  background: #eee;
  color: #000;
  border: 1px solid #e8e8e8;
  border-radius: 5px;
  width: 100%;
  box-sizing: border-box;
  padding: 3px 6px;
  display: block;
}

.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: 11em;
  margin-right: .25em;
}

.InputBodyForm dd select.select_age._mini {
  width: 5em;
}

.InputBodyForm dd .wrap_md {
  display: block;
  margin-top: .5em;
}

.InputBodyForm dd .wrap_md select.select_age:nth-child(n+2) {
  margin-left: .25em;
}

.InputBodyForm dd .InputError {
  display: block;
  background: #ff0000;
  color: #fff;
  font-weight: bold;
  font-size: 0.75rem;
  padding: 3px 6px;
  border-radius: 3px;
  margin-top: 5px;
  line-height: 1;
  width: 100%;
  box-sizing: border-box;
}

.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: calc(50% - 1%);
}

.InputBodyForm dd.flex .InputError {
  margin-left: 0;
}

.InputBodyForm dd .input_min {
  width: 72px !important;
}

.InputBodyForm dd button.InputAddressAuto {
  font-size: 0.6875rem;
  width: 42%;
  border: 1px solid var(--txt-color);
  border-radius: 5px;
  color: var(--txt-color);
  line-height: 1.3;
  margin-left: 4% !important;
}

@media (max-width: 374px) {
  .InputBodyForm dd button.InputAddressAuto {
    width: calc(37% - 10px);
  }
}

.InputBodyForm p {
  padding: 5px 0 !important;
}

.InputBodyForm p.FormCation a {
  text-decoration: underline !important;
}

.InputBodyForm p.FormCation.FormError {
  background: #da2129;
  color: #fff;
  border-radius: 5px;
  margin-top: 5px;
  padding: 5px 10px !important;
  box-sizing: border-box;
  display: none;
}

.InputBodyForm p.TxtCenter {
  text-align: center;
}

.InputBodyForm .InputFormPostal {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.InputBodyForm .InputFormPostal input {
  width: 50%;
}

.InputBodyForm .InputFormPostal button.InputAddressAuto {
  font-size: 0.6875rem;
  width: calc(50% - 10px);
  border: 1px solid var(--txt-color);
  border-radius: 5px;
}

.InputBodyForm input[type="checkbox"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  background: #eee;
  width: 14px;
  height: 14px;
  vertical-align: text-bottom;
  border-radius: 2px;
  display: inline-block;
  position: relative;
  border: 1px solid #e8e8e8;
  margin-right: 0.5rem;
  margin-top: 0.25rem;
}

.InputBodyForm input[type="checkbox"]:checked::before {
  content: '';
  display: block;
  position: absolute;
  left: 1px;
  top: 6px;
  width: 5px;
  height: 2px;
  transform: rotate(45deg);
  background: #000;
}

.InputBodyForm input[type="checkbox"]:checked::after {
  content: '';
  display: block;
  position: absolute;
  right: 4px;
  bottom: 2px;
  width: 2px;
  height: 8px;
  transform: rotate(40deg);
  background: #000;
}

.InputBodyForm input[type="radio"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  background: #eee;
  width: 14px;
  height: 14px;
  vertical-align: text-bottom;
  border-radius: 500px;
  display: inline-block;
  position: relative;
  border: 1px solid #e8e8e8;
  margin-right: 0.5rem;
  margin-top: 0.25rem;
}

.InputBodyForm input[type="radio"]:checked::after {
  content: '';
  display: block;
  position: absolute;
  line-height: 1;
  left: 50%;
  top: 50%;
  width: 8px;
  height: 8px;
  background: #000;
  border-radius: 500px;
  transform: translate(-50%, -50%);
}

.InputBodyForm label {
  padding-top: 8px;
  font-size: 1rem;
  line-height: 1.8;
  display: flex;
  align-items: baseline;
  width: 100%;
}

.InputBodyForm textarea {
  background: #eee;
  border: 1px solid #e8e8e8;
  border-radius: 5px;
  width: 100%;
  box-sizing: border-box;
  padding: 3px 6px;
  display: block;
}

.LowerBtnEntryCheck {
  font-size: 0.875rem;
  padding: 10px 0 15px;
}

.LowerBtnEntryCheck input[type="checkbox"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  background: #fff !important;
  width: 14px;
  height: 14px;
  vertical-align: text-bottom;
  border-radius: 2px;
  display: inline-block;
  position: relative;
  border: 1px solid #666 !important;
  margin: 0;
}

.LowerBtnEntryCheck input[type="checkbox"]:checked::before {
  content: '';
  display: block;
  position: absolute;
  left: 1px;
  top: 6px;
  width: 5px;
  height: 2px;
  transform: rotate(45deg);
  background: #000;
}

.LowerBtnEntryCheck input[type="checkbox"]:checked::after {
  content: '';
  display: block;
  position: absolute;
  right: 4px;
  bottom: 2px;
  width: 2px;
  height: 8px;
  transform: rotate(40deg);
  background: #000;
}

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

.LowerBtnEntryCheck ul {
  font-size: 0.75rem;
  text-align: left;
  padding-top: 15px;
  color: #da2129;
}

.LowerBtnEntryCheck ul li {
  text-indent: -1em;
  padding-left: 1em;
}

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

.FormCautionBox {
  margin-top: 24px;
  padding: 12px;
  background-color: #da2129;
  color: #fff;
}

.FormCautionBox h2 {
  padding: 0 !important;
}

.FormCautionBox p {
  margin-top: 5px;
  padding: 0 !important;
  text-align: center;
}

#LowerBody .FormCautionBox p + p {
	font-weight: lighter;
}

.LowerMovie {
  padding: 45px 0;
}

.LowerMovie video {
  width: 100%;
  height: auto;
}

.LowerMovie .MovieVol {
  width: 72px;
  height: 24px;
  display: block;
  border-radius: 500px;
  opacity: 0;
}

.LowerMovie .MovieVol.MovieVolOn {
  background: var(--key-color) url(../images/icon_vol_on.png) no-repeat center center;
  background-size: auto 14px;
}

.LowerMovie .MovieVol.MovieVolOff {
  background: #737373 url(../images/icon_vol_off.png) no-repeat center center;
  background-size: auto 14px;
}

#ModalCoverMovie {
  display: block;
}

#Modal.ModalVolSelect {
  padding: 30px;
}

@media (max-width: 374px) {
  #Modal.ModalVolSelect {
    padding: 30px 15px;
  }
}

#Modal.ModalVolSelect p {
  padding-top: 0;
}

#Modal.ModalVolSelect ul {
  padding-top: 30px;
  width: 100%;
  display: flex;
  justify-content: space-between;
}

#Modal.ModalVolSelect li {
  width: calc(50% - 7px);
}

#Modal.ModalVolSelect li a {
  display: block;
  border-radius: 500%;
  width: 100%;
  box-sizing: border-box;
  padding: 10px;
}

#Modal.ModalVolSelect li a.MovieStartOff {
  background: #737373;
}

#Modal.ModalVolSelect li a.MovieStartOn {
  background: var(--key-color);
}

#Modal.ModalVolSelect li a img {
  width: 100%;
  height: auto;
  display: block;
}

html.MovieBody, body.MovieBody {
  overflow: hidden;
}

html.MovieBody #CommonFooter, body.MovieBody #CommonFooter {
  padding: 0 0 5px;
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 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 .LowerMovie .MovieVol, body.MovieBody .LowerMovie .MovieVol {
  position: fixed;
  right: 10px;
}

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;
  transform: translate(0, 0);
}

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 - 24px);
  left: 50%;
  transform: translate(-50%, -50%);
}

.LowerAddress {
  padding: 25px 0 0;
  font-size: 0.75rem;
}

.LowerAddress dt {
  line-height: 1.5;
}

.LowerAddress dd {
  padding-top: 7px;
}

.LowerAddress ul li {
  padding-top: 7px;
}

.LowerAddress ul li:first-child {
  padding-top: 0;
}

.LowerAddress a {
  color: #000;
  text-decoration: underline;
}

ul.errorCaption {
  font-size: 0.75rem;
  padding: 0;
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}

ul.errorCaption li {
  padding-left: 1em;
  text-indent: -1em;
}

p.errorCaption {
  font-size: 0.75rem !important;
  padding: 10px 0 0 !important;
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}

#IndexBody .IndexBodyInner p.TxtSmall {
  font-size: 0.75rem;
}

.prizeList {
  margin-top: 15px;
}

.prizeListItem {
  background-color: #fff;
  color: #000;
  border: solid 1px;
  border-color: var(--border-color);
  border-radius: 5px;
  overflow: hidden;
  padding: 15px 10px;
}

.prizeListItem + .prizeListItem {
  margin-top: 10px;
}

.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: .2em;
  padding-bottom: .2em;
}

.prizeListItem th {
  padding-right: .5em;
  white-space: nowrap;
}

.prizeListItem td {
  vertical-align: middle;
}

.prizeListItem select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  margin-top: 15px;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  width: 100%;
  padding-left: calc(50% - 7em);
  background: #eee url(../images/icon_arrow_select.svg) no-repeat right 10px top 50%;
  background-size: auto 7px;
  border-radius: 5px;
  font-size: 0.9375rem;
  color: var(--txt-color);
  line-height: 1;
  cursor: pointer;
}

@media (max-width: 374px) {
  .prizeListItem select {
    background-size: 14px auto;
    font-size: 0.8125rem;
  }
}

.prizeListItem select option {
  padding-left: 0;
}

.prizeListItem .btn {
  margin-top: 15px;
  width: auto;
  padding-top: .5em;
  padding-bottom: .5em;
  min-height: 0;
}

.prizeListItem .btn._disable {
  background-color: #737373;
  pointer-events: none;
}

.prizeListItem .btnGray {
  margin-top: 15px;
  width: auto;
  padding-top: .5em;
  padding-bottom: .5em;
  min-height: 0;
  background-color: #737373;
  pointer-events: none;
}

.EntryFileSize {
  display: none;
}

.EntryFileSize aside {
  text-align: center;
}

.EntryFileSize p {
  font-size: 0.75rem !important;
  color: #da2129;
}

@media (max-width: 374px) {
  .EntryFileSize p {
    font-size: 0.6875rem !important;
  }
}

.EntryFileSizeOther {
  display: block;
}

.EntryFileSizeOther aside {
  text-align: center;
}

.EntryFileSizeOther p {
  font-size: 0.75rem !important;
  color: #da2129;
}

@media (max-width: 374px) {
  .EntryFileSizeOther p {
    font-size: 0.6875rem !important;
  }
}

.EntryDisplay .EntryDisplayTotal {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 20px auto;
  font-weight: bold;
}

.EntryDisplay .EntryDisplayTotal > span {
  display: block;
}

.EntryDisplay .EntryDisplayTotal span.EntryTotalNum {
  color: var(--key-color);
  font-weight: bold;
  font-size: 1.5em;
  padding: .5em .8em;
  border: 2px solid var(--key-color);
  border-radius: .5em;
  margin: 0 .5em;
}

.EntryDisplay .EntryDisplayTotal._noLefty {
  padding-left: 2em;
}

.EntryDisplay .EntryDisplayTotal._noLefty span.EntryTotalNum {
  padding-right: 1.4em;
  padding-left: 1.4em;
}

.EntryDisplay .EntryDisplayList {
  padding: 2px 0;
  background: #eee;
  border-radius: .5em;
}

.EntryDisplay .EntryDisplayList ._item {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  padding: 8px 10px;
}

.EntryDisplay .EntryDisplayList ._item + ._item {
  border-top: 2px solid #fff;
}

.EntryDisplay .EntryDisplayList ._item > span {
  display: block;
}

.EntryDisplay .EntryDisplayList ._item ._itemNameWrap {
  flex-grow: 999;
  display: flex;
  align-items: center;
  background: #fff;
  border: 1px solid var(--key-color);
  border-radius: .25em;
}

.EntryDisplay .EntryDisplayList ._item ._itemPoint {
  display: inline-flex;
  align-items: center;
  align-content: center;
  justify-content: center;
  flex-wrap: wrap;
  flex-shrink: 0;
  font-size: .7em;
  background: var(--key-color);
  color: var(--btn-color);
  width: 3.5em;
  height: 100%;
}

.EntryDisplay .EntryDisplayList ._item ._itemPoint > span {
  display: block;
  width: 100%;
  line-height: 1;
}

.EntryDisplay .EntryDisplayList ._item ._itemPoint strong {
  font-size: 1.2em;
  line-height: 1;
  display: block;
  width: 100%;
}

.EntryDisplay .EntryDisplayList ._item ._itemName {
  flex-grow: 999;
  font-size: .9em;
  text-align: left;
  padding: .75em 1em;
}

.EntryDisplay .EntryDisplayList ._item ._itemX {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 0 .25em;
  font-size: 1.6em;
  color: var(--key-color);
}

.EntryDisplay .EntryDisplayList ._item ._itemStatus_Num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.EntryDisplay .EntryDisplayList ._item ._itemStatus_Num input {
  width: 4em;
  height: 100%;
  background: #fff;
  border: 1px solid var(--key-color);
  border-radius: .25em;
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
  box-sizing: border-box;
}

.EntryDisplay .EntryDisplayList ._item ._itemStatus_Num input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.EntryDisplay .EntryDisplayList ._item ._itemStatus_Num input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.EntryDisplay .EntryDisplayList ._item ._itemStatus_Num input::placeholder {
  color: #c9c9c9;
}

.IndexPointNow {
  padding: 0 0 30px;
}

.IndexPointNow._mt30px {
  margin-top: 30px;
}

.IndexPointNow.IndexPointNowEnd {
  padding: 0;
}

.IndexPointNow dt {
  font-size: 1rem;
  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: 2.625rem;
  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.3125rem;
  line-height: 1;
  position: absolute;
  bottom: 0;
  right: -3.5em;
}

/* 年齢確認モーダル */
.ModalWrap-Age{
	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: .3s .2s;
}

.ModalWrap-Age .ModalInner-Age{
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: 510px;
	width: 73.333333333%;
	transform: translate(-50%, -50%);
	border-radius: 5px;
	background-color: var(--bg-color);
	padding: 30px 20px;
}

.ModalWrap-Age .ModalInner-Age form label{
	font-size: 18px;
	font-weight: 700;
	display: block;
	margin-bottom: 30px;
}

.ModalWrap-Age .ModalInner-Age form p{
	font-size: 12px;
	margin-bottom: 15px;
}

.ModalWrap-Age .ModalInner-Age form p .underLine {
	text-decoration: underline;
}

.ModalWrap-Age .ModalInner-Age form .AgeWrap{
	font-size: 20px;
	width: 100px;
	margin: 0 auto 15px;
	padding: 0 8px;
	position: relative;
	border-radius: 10px;
	border: 2px solid var(--key-color);
	display: flex;
	justify-content: center;
	align-items: center;
}
.ModalWrap-Age .ModalInner-Age form .AgeWrap span{
	position: absolute;
	left: calc(100% + 15px);
	bottom: 0;
}

.ModalWrap-Age .ModalInner-Age form ul li {
	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 !important;
  font-weight: bold;
  letter-spacing: -0.02em;
  line-height: 1;
}
.ModalWrap-Age .ModalInner-Age form ul li:hover {
	cursor: pointer;
}
.ModalWrap-Age .ModalInner-Age form ul .btn02 {
	margin-top: 12px;
}

html.ModalOpen {
  overflow-y: hidden;
  position: fixed;
  left: 0;
  width: 100%;
  height: 100%;
}

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;
}

.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: .3s .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, #Modal-noSerial, #Modal-lockSerial {
  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-noSerial h1, #Modal-lockSerial h1 {
	font-size: 1.12rem;
	padding-bottom: 15px;
	color: var(--txt-color);
}

#Modal h1 span {
  font-size: 2.125rem;
}

#Modal h1.ModalTitleOnly, #Modal-noSerial h1.ModalTitleOnly, #Modal-lockSerial 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, #Modal-noSerial p, #Modal-lockSerial p {
  font-size: 0.75rem;
}

.nockModal #Modal p{
  font-size: 1rem;
  font-weight: bold;
}

#Modal h1 + p, #Modal-noSerial p + p, #Modal-lockSerial p + p {
  margin-top: 15px;
}

#Modal p + p, #Modal-noSerial p + p, #Modal-lockSerial p + p {
  margin-top: 15px;
}

#Modal p a {
  color: #000;
  text-decoration: underline;
}

#Modal > .ModalClose, #Modal-noSerial > .ModalClose, #Modal-lockSerial > .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, #Modal-noSerial > .ModalClose::before, #Modal-noSerial .ModalClose::after, #Modal-lockSerial > .ModalClose::before, #Modal-lockSerial .ModalClose::after {
  content: '';
  display: block;
  width: 12px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: .6s;
}

#Modal > .ModalClose::after, #Modal-noSerial > .ModalClose::after, #Modal-lockSerial .ModalClose::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

#Modal .overIsScroll {
  box-sizing: border-box;
  width: 100%;
  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: .2em;
  font-size: .8em;
}

#Modal .ModalTtlCheck {
  display: block;
  font-size: 1.25rem;
  padding: 0 0 1em;
}

#Modal .ModalSelectAge {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  margin: 0.75em 0;
}

#Modal .ModalSelectAge .ModalSelect {
  color: #000;
  border: 2px solid var(--key-color);
  border-radius: 5px;
  min-width: 150px;
  box-sizing: border-box;
  padding: 10px 6px 10px calc(75px - 1.25em);
  display: block;
  background: url(../images/icon_arrow_select.svg) no-repeat right 10px top 50%;
  background-size: auto 7px;
  font-weight: bold;
  line-height: 24px;
}

#Modal .ModalSelectAge p {
  font-size: 1rem;
  padding: 0 0 0 .25em;
}

@media (max-width: 374px) {
  #Modal .ModalSelectAge p {
    font-size: 0.875rem;
  }
}

#Modal .LowerBtn a {
  font-size: 0.875rem;
  color: #000;
}

#Modal .LowerBtn span.ModalClose {
  padding: 15px 20px;
}

.TermsBody {
	display: block;
	padding: 0;
	background: none;
	text-align: justify;
	line-break: strict;
	word-break: break-all;
  /* モーダルの中身用 */
}

.TermsBody h2:first-of-type {
  padding-top: 0;
}

#IndexBody .AnchorText {
	font-size: 0.75rem !important;
	padding-top: 15px;
}

#LowerBody .checkPrivacy label {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 5px;
}

/* 規約　よく質　アコーディオン用 */
#IndexBody .IndexDocuments .IndexDocumentsHidden{
  display: none;
  border-radius: 5px;
  background: #e6e6e6;
  margin-top: 7px;
  padding: 15px;
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden.Open {
  display: block;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden._imageBox {
  padding: 0;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden.IndexDocumentsFaq h2 {
  padding-top: 30px;
  font-size: 0.875rem;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden.IndexDocumentsFaq h2:first-child {
  padding-top: 15px;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden.IndexDocumentsFaq p {
  padding-inline: 0 !important;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden h1 {
  font-size: 0.875rem;
  padding: 15px 0 7px;
  border-bottom: 1px solid #000;
  cursor: auto;
}

#IndexBody .IndexDocuments #Term h1:hover,
#IndexBody .IndexDocuments #Question h1:hover {
	cursor: pointer;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden h2 {
  padding-top: 0;
  font-size: 0.875rem;
  text-align: center;
}

#IndexBody .IndexDocuments #Term .IndexDocumentsHidden h2,
#IndexBody .IndexDocuments #Question .IndexDocumentsHidden h2 {
	text-align: left;
	padding-top: 15px;
}

#IndexBody .IndexDocuments #Term .IndexDocumentsHidden h2:first-child,
#IndexBody .IndexDocuments #Question .IndexDocumentsHidden h2:first-child {
	text-align: left;
	padding-top: 0px;
}

#IndexBody .IndexDocuments #Question {
	padding-top: 15px;
}

#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;
  padding-right: 10px;
  padding-left: 10px;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden ul, #IndexBody .IndexDocuments .IndexDocumentsHidden ol {
  padding-top: 7px;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden li {
  padding-top: 3px;
  font-size: 0.75rem;
  text-indent: -1em;
  padding-left: 1em;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden li.CautionTxt {
	color: red;
	font-size: 1em !important;
	font-weight: bold;
	text-align: center;
	padding: 10px 0;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden li:first-child {
  padding-top: 0;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden a {
  color: #000;
  text-decoration: underline;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden a span.BtnCautionTxt {
	display: block;
	font-size: 0.75em;
	font-weight: normal;
	padding: 10px 0 0;
}

/* 調整用 */

#IndexBody .IndexBodyInner .HeadTxt{
  color: #da2129;
  border: 1px solid #da2129;
  padding: 10px;
  font-weight: bold;
}

#LowerBody .EntryDisplay .HeadTxt{
  color: #da2129;
  border: 1px solid #da2129;
  padding: 10px;
  font-weight: bold;
}

.SecondBtn{
  padding: 10px 0 0;
}

.InputBodySerial dt{
  padding: 15px 0 0;
}

.InputBodySerial dd{
  padding: 3px 6px;
}

.InputBodySerial dd input{
  background: #eee;
  color: #000;
  border: 1px solid #e8e8e8;
  border-radius: 5px;
  width: 100%;
  box-sizing: border-box;
  padding: 3px 6px;
  display: block;
  padding: 5px 10px;
  font-size: 1.3125rem;
  text-align: center
}

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

.InputBodySerial dd input::-webkit-inner-spin-button,
.InputBodySerial dd input::-webkit-outer-spin-button {
      -webkit-appearance: none !important;
      margin: 0 !important;
      -moz-appearance:textfield !important;
  }
  
  .prizeListItem .btn._disable, .prizeListItem .btn._disable2 {
    background-color: #737373;
    pointer-events: none;
    color: #fff !important;
    background-image: url(../images/icon_arrow_wh.svg) !important;
  }

  #IndexBody .IndexBodyInner.IndexBodyLineless{
    border-top: none;
  }

.EntryDisplayEach{
  display: flex;
  justify-content: center;
  align-items: center;
  align-items:stretch;
  gap: 10px;
  margin: 20px auto;
  width: 80%;
  height: 100%;
}

.EntryDisplay .EntryDisplayEach span.EntryEachNum {
  color: var(--key-color);
  font-weight: bold;
  font-size: 1.5em;
  padding: .5em .2em;
}

.EntryDisplayGr{
  width: 40%;
  border: 2px solid var(--border-color);
  border-radius: 10px;
}

.EntryDisplayGr div{
  padding: 0.5em;
}

.EntryDisplayYl{
  width: 40%;
  border: 2px solid var(--border-color);
  border-radius: 10px;
}

.EntryDisplayYl div{
  padding: 0.5em;
}

#LowerBody .EntryDisplayGr p{
  background-color: var(--key-color);
  border-radius: 8px 8px 0 0;
  padding: 5px 0;
  font-weight: bold;
}

#LowerBody .EntryDisplayGr span{
  color: var(--key-color);;
  font-weight: bold;
}

#LowerBody .EntryDisplayYl p{
  background-color: #f5be48;
  border-radius: 8px 8px 0 0;
  padding: 5px 0;
  font-weight: bold;
}

#LowerBody .EntryDisplayYl span{
  color: var(--key-color);
  font-weight: bold;
}

  .HistoryLose span{
    font-weight: bold;
  }

 .LowerEntry .LowerWinCaution .CautionTxt li{
    padding-left: 1.8em;
    text-indent: -1.8em;
  }

  .Maintenance{
    padding: 20px;
  }

  ._left{
    text-align: left !important;
  }

  ._fz0875{
    font-size: 0.875rem !important;
  }

	._fz09375{
    font-size: 0.9375rem !important;
  }

  ._fz100{
    font-size: 1rem !important;
  }

  ._fz112{
    font-size: 1.12rem !important;
  }

  ._fz125{
    font-size: 1.25rem !important;
  }

  ._pt0{
    padding-top: 0 !important;
  }

  ._pt5{
    padding-top: 5px !important;
  }

  ._pt10{
    padding-top: 10px !important;
  }

    ._pt15{
    padding-top: 15px !important;
  }

  ._pt20{
    padding-top: 20px !important;
  }

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

  ._pb0{
    padding-bottom: 0px !important;
  }

  ._pb15{
    padding-bottom: 15px !important;
  }

  ._pb25{
    padding-bottom: 25px !important;
  }

  ._mt5{
    margin-top: 5px !important;
  }

  ._mt15{
    margin-top: 15px !important;
  }

	._indent {
		padding-left: 1em !important;
		text-indent: -1em !important;
	}

  .fw_B{
    font-weight: bold;
  }

._fc-key{
  color: var(--key-color);
}

.Inquiry{
  padding: 0 !important;
}

.TermsBody h2+.Inquiry dl{
  padding-top: 0;
}

.TermsBody h2+.Inquiry dd{
  padding-top: 0;
}

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

._noIndent{
  text-indent: 0 !important;
  padding-left: 0 !important;
}

.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: #fbf4e9;;
  font-size: 0.75rem;
  padding: 5px;
  vertical-align: middle;
}
.InputBodyForm dl .tableMatWrap table.tableMat tr.tableMatHead td span {
  font-size: 0.625rem;
}
.InputBodyForm dl .tableMatWrap table.tableMat tr.tableMatHead td.tdHead {
  background: #fbf4e9;;
}
.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);
}

.tableMatWrap 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;
}
.tableMatWrap 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 dl .tableMatWrap table.tableMat tr td.tdHead.tdHeadCheck {
  background: var(--key-color);
}

._bk{
  color: #000 !important;
}

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

.border-bt{
  border-bottom: #000 1px solid;
}

.outline{
  padding: 15px 20px 0;
}

/* #IndexBody p{
  padding: 15px 0;
  margin: 0 20px;
} */

#IndexBody .IndexKv p.AnchorText{
  padding:30px 0 0;
  margin: 0 20px;
  font-size: 0.6875rem;
}

.border-top{
  border-top: 1px solid #000;
}

.TermsBody p:first-of-type {
  padding-top: 0 !important;
}