
@charset "UTF-8";
.f11 {
  font-size: 0.69rem !important;
}

.f12 {
  font-size: 0.75rem !important;
}

.f14 {
  font-size: 0.875rem !important;
}

/*
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;
}

@media screen and (max-width: 767px) {
  .only_pc {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .only_sp {
    display: none !important;
  }
}

/*サイト設定-------------------------------------------------------------------------------------------------------------*/
/*ボタン*/
@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-color: #fff;
  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-color: #fff;
  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, .InputBodyFormSurvey .BtnSolidArrowGray, .prizeListItem .btn,
input.BtnSolidArrow,
input.BtnSolidBlank,
input.BtnSolidPlus,
input.BtnSolidMinus,
input.BtnSolidArrowGray,
.prizeListItem input.btnGray,
.InputBodyFormSurvey input.BtnSolidArrowGray,
.prizeListItem input.btn {
  /*ベタ塗りボタン 矢印*/
  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;
}

.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, .InputBodyFormSurvey .BtnSolidArrowGray, .prizeListItem .btn,
  input.BtnSolidArrow,
  input.BtnSolidBlank,
  input.BtnSolidPlus,
  input.BtnSolidMinus,
  input.BtnSolidArrowGray,
  .prizeListItem input.btnGray,
  .InputBodyFormSurvey input.BtnSolidArrowGray,
  .prizeListItem input.btn {
    background-size: 14px auto;
    font-size: 0.9375rem;
  }
}

.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 {
  /*ベタ塗りボタン　プラス記号*/
  background-image: var(--btn-solid-icon-plus);
}

.BtnSolidPlus::after {
  animation: btnActiveMove .6s ease-out 0s 1 normal none;
}

.BtnSolidMinus {
  /*ベタ塗りボタン　マイナス記号*/
  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;
  pointer-events: none;
}

.InputBodyFormSurvey .BtnSolidArrowGray, .InputBodyFormSurvey .prizeListItem .btnGray, .prizeListItem .InputBodyFormSurvey .btnGray {
  background-color: #737373 !important;
  background-image: var(--btn-solid-icon-arrow) !important;
  background-repeat: no-repeat !important;
  background-position: right 10px top 50% !important;
  background-size: 16px auto !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, .BtnAnim {
  position: relative;
  overflow: hidden;
}

.BtnLineArrow.BtnActive::after, .BtnActive.BtnLineReverse::after, .BtnActive.BtnLineQr::after, .BtnActive.BtnLineArrowBk::after, .InputBodyForm .LowerBtn .BtnActive.BtnLineArrowBk::after, .BtnAnim::after {
  content: '';
  position: absolute;
  display: block;
  width: 60px;
  height: 60px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #d9cab1;
  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(https://lsp-campaign.com/pasco-sampling-1/images/icon_arrow_reverse_bk.svg);
  background-position: left 10px top 50%;
}

.InputBodyForm .LowerBtn .BtnLineArrowBk._arrow-wh {
  color: #fff;
  background-image: url(https://lsp-campaign.com/pasco-sampling-1/images/icon_arrow_reverse_wh.svg);
}

._mt20 {
  margin-top: 20px;
}

._alignLeft {
  text-align: left;
}

.RedEx {
  background-color: #da2129;
  color: #fff;
  margin-top: 20px !important;
  padding: 15px 15px 15px !important;
  font-weight: bold;
}

.RedEx + .RedEx {
  margin-top: -10px !important;
  padding-top: 0 !important;
  padding-bottom: 15px !important;
  font-weight: normal;
}

.TxtCenter {
  text-align: center !important;
}

.TxtUnderline {
  text-decoration: underline;
}

.TextIndent {
  text-indent: -1em !important;
  padding-left: 1em !important;
}

.inlineLink {
  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.12rem;
  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: translateY(-50%);
}

article h2 .PointTit::before {
  left: -16px;
}

article h2 .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(https://lsp-campaign.com/pasco-sampling-1/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: 36px -35px 0;
  padding: 15px 0 15px !important;
  font-size: 1.25rem;
  line-height: 1;
  background: #fff;
  border-top: 4px solid var(--key-color);
  color: #000;
}

@media (max-width: 374px) {
  .PrizeSubtit {
    margin: 36px -30px 0;
  }
}

.PrizeSubtit span {
  display: block;
  font-size: 0.75rem;
}

.howtoFig {
  margin-top: 5px;
  border: 4px solid #e6e6e6;
  border-radius: 5px;
  overflow: hidden;
  padding: 4%;
}

/*下層基本レイアウト*/
#LowerBody {
  padding: 45px 35px;
  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;
}

#LowerBody p .TxtBold {
  font-weight: bold;
}

.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(https://lsp-campaign.com/pasco-sampling-1/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;
}

.IndexPrizeWrap + .LowerBtn {
  padding: 0 !important;
  margin-top: 30px;
}

.IndexPrizeWrap p {
  text-align: left;
}

.IndexPrizeWrap p.-center {
  text-align: center;
}

.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;
}

@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 {
  font-size: 0.875rem !important;
  text-align: left;
}

/*下層 エントリー〜当落*/
.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 figure, .LowerCoupon figure {
  padding: 15px 0 0;
}

.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: 30px 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-radius: 5px;
  padding: 7px 0;
  font-family: 'Helvetica Neue', 'Helvetica', sans-serif;
  font-size: 1.3125rem;
  line-height: 1;
}

.LowerEntry .LowerWinCaution, .LowerCoupon .LowerWinCaution ,
._innerWrap .LowerWinCaution{
  padding: 30px 0 0;
}

.LowerEntry .LowerWinCaution ul, .LowerCoupon .LowerWinCaution ul,
._innerWrap .LowerWinCaution ul {
  border: 1px solid var(--txt-color);
  padding: 20px 15px;
}

.LowerEntry .LowerWinCaution li, .LowerCoupon .LowerWinCaution li,
._innerWrap .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.mt, .LowerCoupon .LowerWinCaution li.mt {
  margin-top: 1em;
}

.LowerEntry .LowerWinCaution a, .LowerCoupon .LowerWinCaution a {
  text-decoration: underline;
}

/*下層 抽選*/
.LoadPic {
  padding: 30px 0 15px;
  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;
}

/*END*/
.EndIndexCaution {
  background: #da2129;
  padding: 20px;
}

.EndIndexCaution p {
  padding: 0 !important;
  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;
}

.ZaikoCaution p {
  color: #fff;
  font-weight: bold;
  font-size: 1rem !important;
}

@media (max-width: 374px) {
  .ZaikoCaution p br {
    display: none;
  }
}

.IndexKvBtn {
  margin-top: 15px;
}

.IndexKvBtn li + li {
  margin-top: 10px;
}

.IndexKvBtn li.topBorder {
  border-top: 1px solid;
}

.IndexKvBtn ul.IndexPrizeCaption {
  font-size: 0.75rem;
  padding-top: 5px;
  padding-bottom: 10px;
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}

.IndexKvBtn ul.IndexPrizeCaption > li.IndexPrizeCaptionIndent {
  padding-left: 1em;
  text-indent: -1em;
  margin-top: 0;
}

/*INDEX*/
#IndexBody {
  max-width: 750px;
  margin: 0 auto;
}

#IndexBody .IndexKv {
  padding: 0 0 15px;
}

#IndexBody .IndexKv.IndexKvCoupon {
  padding: 0;
}

#IndexBody .IndexKv.IndexKvEnd {
  padding: 0;
}

#IndexBody .IndexKv.IndexKvMy {
  padding: 0;
}

#IndexBody .IndexKv.IndexKvTeaser {
  padding-bottom: 30px;
}

#IndexBody .IndexKv p {
  padding: 15px 20px;
  font-size: 0.75rem;
}

#IndexBody .IndexKv p.mp0 {
  padding-top: 0;
}

#IndexBody .IndexKv .IndexKvBtn {
  padding: 5px 35px 0;
}

@media (max-width: 374px) {
  #IndexBody .IndexKv .IndexKvBtn {
    padding: 5px 30px 0;
  }
}

#IndexBody .IndexKv .IndexKvBtn h3 {
  padding: 15px 0 10px;
  font-size: 0.875rem;
  width: 100%;
}

#IndexBody .IndexKv .IndexKvBtn h3 span {
  display: inline-block;
  position: relative;
}

#IndexBody .IndexKv .IndexKvBtn h3 span::before, #IndexBody .IndexKv .IndexKvBtn h3 span::after {
  width: 2px;
  height: 80%;
  content: '';
  display: block;
  background: #000;
  position: absolute;
  top: 50%;
}

#IndexBody .IndexKv .IndexKvBtn h3 span::before {
  left: -8px;
  transform: translate(0, -50%) rotate(-30deg);
}

#IndexBody .IndexKv .IndexKvBtn h3 span::after {
  right: -8px;
  transform: translate(0, -50%) rotate(30deg);
}

#IndexBody .IndexKv dl {
  margin: 10px 20px 0;
  padding: 10px 0 12px;
  font-size: 0.875rem;
  font-weight: bold;
  border-right: none;
  border-left: none;
}

#IndexBody .IndexKv dl.-btmBorderNone {
  border-bottom: none;
  padding-bottom: 0;
}

@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 + dl {
  margin-top: 0;
  border-top: 1px solid var(--txt-color);
}

#IndexBody .IndexKv ._s {
  display: block;
  font-size: .85em;
  margin-top: .25em;
}

#IndexBody .IndexBodyInner .IndexKv dl {
  margin: 15px auto 0;
}

#IndexBody .IndexBodyInner .IndexKv dl + dl {
  margin-top: 0;
  border-top: none;
}

#IndexBody .IndexKvTeaser h2 {
  padding: 20px 0;
  margin: 0 20px -10px;
  font-size: 1.25rem;
  border-bottom: 1px solid var(--txt-color);
}

#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-top: 2px solid var(--key-color);
}

@media (max-width: 374px) {
  #IndexBody .IndexBodyInner {
    padding: 30px;
  }
}

#IndexBody .IndexBodyInner .IndexKvBtn {
  padding-top: 15px;
}

#IndexBody .IndexBodyInner p.IndexCaution {
  padding: 0;
  font-size: 0.75rem;
}

#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.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.IndexHowtoStep .IndexDocumentsHidden {
  display: none;
}

#IndexBody .IndexBodyInner.IndexHowtoStep .IndexDocumentsAccordion {
  margin-top: 20px;
}

#IndexBody .IndexBodyInner.IndexHowtoStep .IndexDocumentsAccordion + .IndexDocumentsAccordion {
  margin-top: 10px;
}

#IndexBody .IndexBodyInner.IndexHowtoStep .IndexDocumentsAccordion figure {
  border: #e6e6e6 3px solid;
  border-radius: 5px;
  padding: 3% 5%;
  margin-top: 10px;
}

#IndexBody .IndexBodyInner.IndexTarget {
  border: none;
  padding-top: 0;
}

#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.875rem;
  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 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 .IndexBodyInner .wrap-sideSlash {
  padding: 2em 0;
}

#IndexBody .IndexBodyInner .wrap-sideSlash .BtnSolidBlank {
  line-height: 1.2 !important;
}

#IndexBody .IndexBodyInner p.sideSlash {
  display: inline-block;
  position: relative;
  padding: 0 30px;
  font-weight: normal;
  margin-bottom: 1em;
}

#IndexBody .IndexBodyInner p.sideSlash:before {
  content: "";
  width: 1px;
  border-radius: 1px;
  background-color: #fff;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  transform: rotate(-25deg);
}

#IndexBody .IndexBodyInner p.sideSlash:after {
  content: "";
  width: 1px;
  border-radius: 1px;
  background-color: #fff;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  transform: rotate(25deg);
}

#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;
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}

#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 h1 {
  font-size: 1rem;
  padding: 30px 0 7px;
  border-bottom: 1px solid #000;
  cursor: auto;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden h1:first-child {
  padding: 15px 0 7px;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden h2 {
  padding-top: 15px !important;
  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 .indentP {
  padding-left: 1em;
  display: block;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden p .TxtBold {
  font-weight: bold;
}

#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:first-child {
  padding-top: 0;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden li .TxtUnderline {
  text-decoration: underline;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden dl dt {
  padding-top: 7px;
  font-size: 0.75rem;
  letter-spacing: -0.02em;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden dl li {
  padding-top: 3px;
  font-size: 0.75rem;
  text-indent: 0;
  padding-left: 0;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden dl li:first-child {
  padding-top: 0;
}

#IndexBody .IndexDocuments .IndexDocumentsHidden a {
  color: #000;
  text-decoration: underline;
}

#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 {
  padding: 15px 0 0;
}

#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 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: 5px;
}

#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 p.IndexPrizeCaption {
  text-justify: inter-cluster;
  text-align: justify;
  line-break: strict;
  word-break: break-all;
}

#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.IndexPrizeCaptionIndent {
  padding-left: 1em;
  text-indent: -1em;
}

#IndexBody .IndexPrize aside.LowerBtn {
  padding: 30px 0 0;
}

.IndexAddress,
.DlAttention {
  padding: 20px 0 0;
  font-size: 0.8125rem;
}
h2+.IndexAddress,
h2+.DlAttention  {
  padding: 7px 0 0;
  font-weight: normal;
}

.IndexAddress dt,
.DlAttention dt {
  padding: 7px 0 0;
  line-height: 1.2;
  font-weight: bold;
}
h2+.IndexAddress dt,
h2+.DlAttention dt {
  padding: 3px 0 0;
  font-weight: normal;
}

.IndexAddress dd,
.DlAttention dd {
  padding-top: 7px;
}

.IndexAddress ul li,
.DlAttention ul li {
  padding-top: 7px;
}

h2+.IndexAddress ul{
  padding-top: 0px !important;
}

.IndexAddress ul li:first-child,
.DlAttention ul li:first-child {
  padding-top: 0;
}

.IndexAddress a,
.DlAttention a {
  color: #000;
  text-decoration: underline;
}

.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 {
  font-weight: bold;
  font-size: 0.9375rem;
}

.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: 7px;
}

.HistoryPagenation aside {
  font-size: 0.75rem;
}

.HistoryPagenation nav {
  padding-top: 5px;
}

.HistoryPagenation nav li {
  display: inline-block;
  margin: 10px 5px 0;
  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: 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;
  background: var(--key-color);
  color: var(--btn-color);
}

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;
}

.InputBody p {
  text-align: left;
}

.InputBodyForm {
  padding: 15px 0 0;
}

.InputBodyForm * {
  color: var(--txt-color);
}

.InputBodyForm.InputBodyFormConfirm dl {
  padding-bottom: 15px;
  border-bottom: 1px solid #ccc;
}

.InputBodyForm dl {
  padding: 15px 0 0;
  text-align: left;
}

.InputBodyForm dl.FormOverflow dt {
  text-align: center !important;
}

.InputBodyForm dl.FormOverflow dd {
  margin-top: 5px;
  padding: 6px 10px;
  border: 1px solid #666;
  border-radius: 5px;
  overflow: auto;
  height: 130px;
}

.InputBodyForm dl.FormOverflow .FormOverflowBody h1 {
  font-size: 0.875rem !important;
  padding: 15px 0 7px;
  border-bottom: 1px solid #000;
  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;
  font-size: 0.75rem !important;
  letter-spacing: -0.02em;
}

.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;
  font-size: 0.75rem !important;
  text-indent: -1em;
  padding-left: 1em;
}

.InputBodyForm dl.FormOverflow .FormOverflowBody ul li:first-child, .InputBodyForm dl.FormOverflow .FormOverflowBody ol li:first-child {
  padding-top: 0;
}

.InputBodyForm dl.FormOverflow .FormOverflowBody ul li .TxtUnderline, .InputBodyForm dl.FormOverflow .FormOverflowBody ol li .TxtUnderline {
  text-decoration: underline;
  display: inline !important;
}

.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 {
  color: #000;
  text-decoration: underline;
  word-break: break-all;
}

.InputBodyForm dl.FormOverflow .FormOverflowBody dl {
  padding-top: 7px;
  font-size: 0.75rem !important;
}

.InputBodyForm dl.FormOverflow .FormOverflowBody dl dt {
  text-align: left !important;
  font-weight: normal;
  font-size: 0.75rem;
}

.InputBodyForm dl.FormOverflow .FormOverflowBody dl dd {
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
  border: none;
  height: auto;
}

.InputBodyForm dl.FormOverflow .FormOverflowBody dl dd ul {
  padding-top: 0;
}

.InputBodyForm dl.FormOverflow .FormOverflowBody dl dd li {
  text-indent: 0;
  padding-left: 0;
}

.InputBodyForm dl.FormOverflow .FormOverflowBody dl dd li.TextIndent {
  text-indent: -1em;
  padding-left: 1em;
}

.InputBodyForm dt {
  font-size: 1rem;
  font-weight: bold;
}

.InputBodyForm dt .Required {
  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 dt .attention {
  display: block;
  font-weight: normal;
  font-size: 0.6875rem;
  line-height: 1.4;
  margin-top: .5em;
  text-indent: -1em;
  padding-left: 1em;
}

.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 label > span {
  display: inline-block;
  line-height: 1.4;
}

.InputBodyForm dd sup {
  vertical-align: super;
  font-size: 0.625rem;
}

.InputBodyForm dd p {
  padding: 5px 0 !important;
}

.InputBodyForm dd p.FormCation {
  font-size: 0.75rem !important;
}

.InputBodyForm dd p.FormCation a {
  text-decoration: underline !important;
}

.InputBodyForm dd p.FormCation.FormError {
  background: #da2129;
  color: #fff;
  border-radius: 5px;
  margin-top: 5px;
  padding: 5px 10px !important;
  box-sizing: border-box;
  display: none;
}

.InputBodyForm dd p.TxtCenter {
  text-align: center;
}

.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;
  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(https://lsp-campaign.com/pasco-sampling-1/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 .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: 0;
  margin-right: .5em;
  margin-top: .25em;
}

.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: 0;
  margin-right: .5em;
  margin-top: .25em;
}

.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;
  width: 100%;
}

.InputBodyForm textarea {
  background: #eee;
  border: 1px solid #e8e8e8;
  border-radius: 5px;
  width: 100%;
  box-sizing: border-box;
  padding: 3px 6px;
  display: block;
}

.CompleteCaution {
  font-size: 0.875rem !important;
}

.CompleteCaution p {
  font-size: 0.875rem !important;
}

.LowerMovie {
  padding: 45px 0;
}

.LowerMovie video {
  width: 100%;
  height: auto;
}

.LowerMovie .MovieVol {
  width: 72px;
  height: 24px;
  display: block;
  border-radius: 500px;
  margin: 5px 5px 0 auto;
}

.LowerMovie .MovieVol button {
  margin: 0 0 0 auto;
  width: 72px;
  height: 24px;
  display: block;
  border-radius: 500px;
}

.LowerMovie .MovieVol button.MovieVolOn {
  background: var(--key-color) url(https://lsp-campaign.com/pasco-sampling-1/images/icon_vol_on.png) no-repeat center center;
  background-size: auto 14px;
}

.LowerMovie .MovieVol button.MovieVolOff {
  background: #737373 url(https://lsp-campaign.com/pasco-sampling-1/images/icon_vol_off.png) no-repeat center center;
  background-size: auto 14px;
}

.LowerMovie .wrap_movie {
  width: calc(100% + 70px);
  margin-top: 25px;
  margin-left: -35px;
}

html.MovieBody video, body.MovieBody video {
  display: block;
}

html.MovieBody .LowerMovie, body.MovieBody .LowerMovie {
  padding: 0;
}

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.cmnCaption {
  text-align: left;
  font-size: 0.75rem;
  padding: 10px 0 0;
}

ul.cmnCaption li {
  padding-left: 1em;
  text-indent: -1em;
}

ul.errorCaption {
  font-size: 0.75rem;
  padding: 10px 0 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;
}

.TxtSmall {
  font-size: 0.75rem;
}

#IndexBody .IndexBodyInner p.TxtSmall {
  font-size: 0.75rem;
}

#IndexBody .IndexBodyInner p .TxtUnderline {
  text-decoration: underline;
}

.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: .2em;
  padding-bottom: .2em;
}

.prizeListItem th {
  padding-right: .5em;
  white-space: nowrap;
}

.prizeListItem td {
  vertical-align: middle;
}

.prizeListItem .btn {
  margin-top: 15px;
  width: auto;
  padding-top: .5em;
  padding-bottom: .5em;
}

.prizeListItem .btn._disable {
  background-color: #737373;
  pointer-events: none;
}

.prizeListItem .btnGray {
  margin-top: 15px;
  width: auto;
  padding-top: .5em;
  padding-bottom: .5em;
  background-color: #737373;
  pointer-events: none;
}

.CopyGuard {
  -webkit-touch-callout: none;
  -moz-touch-callout: none;
  user-select: none;
  pointer-events: none;
}

@media print {
  .CopyGuard {
    visibility: hidden;
  }
}

.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;
}

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;
}

#ModalCover-Prefectures,
#ModalCoverMovie {
  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-Prefectures .ModalOuter,
#ModalCoverMovie .ModalOuter {
  display: table;
  height: 100%;
  margin: 0 auto;
}

#ModalCover-Prefectures .ModalInner,
#ModalCoverMovie .ModalInner {
  display: table-cell;
  vertical-align: middle;
}

#Modal {
  background: #fff;
  width: auto;
  margin: 0 30px;
  padding: 60px;
  border-radius: 5px;
  position: relative;
}

@media (max-width: 374px) {
  #Modal {
    padding: 60px 45px;
  }
}

#Modal.ModalAlert {
  padding: 30px 20px;
}

@media (max-width: 374px) {
  #Modal.ModalAlert {
    padding: 30px 20px;
  }
}

#Modal h1 {
  font-size: 1.5rem;
  padding-bottom: 15px;
  color: var(--key-color);
  border-bottom: 2px solid var(--key-color);
}

#Modal h1 span {
  font-size: 2.125rem;
}

#Modal p {
  padding-top: 15px;
  font-size: 0.75rem;
}

.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,
#ModalMovie{
  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, #ModalMovie > .ModalClose::before, #Modal > .ModalClose::after, #ModalMovie > .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, #ModalMovie > .ModalClose::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

#Modal .overIsScroll, #ModalMovie .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, #ModalMovie .overIsScroll li + li {
  margin-top: 1em;
  padding-top: 1em;
  border-top: 1px solid #eee;
}

#Modal .overIsScroll .time, #ModalMovie .overIsScroll .time {
  display: block;
  margin-bottom: .2em;
  font-size: .8em;
}

#Modal .check20over, #ModalMovie .check20over {
  display: block;
  font-size: 1.25rem;
  padding: 1.5em 0;
}

#Modal .LowerBtn a, #ModalMovie .LowerBtn a {
  font-size: 0.875rem;
  color: #000;
}

#ModalMovie.ModalVolSelect {
  padding: 30px;
}

@media (max-width: 374px) {
  #ModalMovie.ModalVolSelect {
    padding: 30px 15px;
  }
}

#ModalMovie.ModalVolSelect p {
  padding-top: 0;
}

#ModalMovie.ModalVolSelect ul {
  padding-top: 30px;
  width: 100%;
  display: flex;
  justify-content: space-between;
}

#ModalMovie.ModalVolSelect li {
  width: calc(50% - 7px);
}

#ModalMovie.ModalVolSelect li a {
  display: block;
  border-radius: 500%;
  width: 100%;
  box-sizing: border-box;
  padding: 10px;
}

#ModalMovie.ModalVolSelect li a.MovieStartOff {
  background: #737373;
}

#ModalMovie.ModalVolSelect li a.MovieStartOn {
  background: var(--key-color);
}

#ModalMovie.ModalVolSelect li a img {
  width: 100%;
  height: auto;
  display: block;
}

.Maintenance {
  background: #da2129;
  padding: 20px 0;
  color: #fff;
}

.Maintenance p {
  font-size: 0.875rem !important;
}

.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;
}

/*当選　注釈*/
#LowerBody .WinNote p {
  font-size: 0.75rem;
}

#LowerBody .WinNote .WinNoteInner {
  margin-top: 20px;
  padding: 0 10px 10px;
  border: solid 1px #000;
}

#LowerBody .WinNote .WinNoteInner ul li {
  font-size: 0.75rem;
  text-align: left;
  margin-top: 5px;
  text-indent: -1em;
  padding-left: 1em;
}

#LowerBody .WinNote .WinNoteInner ul li a {
  text-decoration: underline;
}

#LowerBody .WinNote .WinNoteInner ul + ul {
  margin-top: 1em;
}

.section_couponCaption {
  background-color: #fff;
  width: calc(100% + 70px);
  margin-left: -35px;
  margin-bottom: -30px;
  padding: 25px 35px;
  box-sizing: border-box;
}

.section_couponCaption h1.TitLine::after {
  background-color: #fff;
}

ul.couponCaption {
  font-size: 0.75rem;
  text-align: left;
  padding: 10px 0 0;
}

ul.couponCaption li {
  padding-left: 1em;
  text-indent: -1em;
}

ul.couponCaption li + li {
  margin-top: .5em;
}

ul.couponCaption._red {
  color: #da2129;
}

.CouponCode {
  padding: 0 0 15px;
  margin-top: 20px;
}

.CouponCode figure {
  background: #fff;
  padding: 15px 35px;
  margin: 0 -35px;
}

.CouponCode figure img {
  width: 300px;
}

@media (max-width: 374px) {
  .CouponCode figure {
    margin: 0 -30px;
    padding: 15px 30px 10px;
  }
}

.CouponCode .CouponNum {
  padding: 5px 0 !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;
}

.noDrinkingUnderageWrap {
  background-color: #fff;
  padding: 10px 20px;
  margin: -1px auto 0;
  max-width: 750px;
  box-sizing: border-box;
}

.noDrinkingUnderage {
  padding: 10px 0px;
  margin: 0 auto;
  max-width: 440px;
}

.pcLpWrap {
  margin-top: 30px;
}

.qrWrap {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  border-radius: 2em;
  padding: 2em;
}

.qrWrap img {
  width: 90px;
}

.qrWrap p {
  text-align: left;
  font-size: 0.875rem !important;
  padding: 0 2em !important;
  line-height: 1.8;
}

._redBand {
  background: #da2129;
  padding: 20px 20px;
  color: #fff;
}

._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;
}
._pl35{
  padding-left: 35px !important;
}
._pr35{
  padding-right: 35px !important;
}

._m0{
  margin: 0 !important;
}
._mt0{
  margin-top: 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;
}
._ml35{
  margin-left: 35px !important;
}
._mr35{
  margin-right: 35px !important;
}
._alignLeft{
  text-align: left !important;
}
._alignCenter {
  text-align: center !important;
}
ol._txtIndent li,
ul._txtIndent li{
  text-indent: -1em !important;
  padding-left: 1em !important;
}
li._txtIndent{
  text-indent: -1em !important;
  padding-left: 1em !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;
}

._fwNormal{
  font-weight: normal !important;
}

._disable {
  background-color: #737373;
  pointer-events: none;
}

._innerWrap{
  max-width: 750px;
  margin: 0 auto;
}

._innerBox{
  border: 1px solid var(--txt-color);
  padding: 20px 15px;
}

.selectShop {
  margin: 25px auto;
}
.selectShop ul {
  margin-left: 10px;
  text-align: left;
}
.selectShop li + li {
  margin-top: 10px;
}
.selectShop label {
  font-size: 1rem;
}

.selectShop input[type=checkbox],
.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: 0;
  margin-right: 0.5em;
  margin-top: 0.25em;
}

.selectShop input[type=checkbox]:checked::before,
.InputBodyForm input[type=checkbox]:checked::before {
  content: "";
  display: block;
  position: absolute;
  left: 1px;
  top: 6px;
  width: 5px;
  height: 2px;
  transform: rotate(45deg);
  background: #000;
}

.selectShop input[type=checkbox]:checked::after,
.InputBodyForm input[type=checkbox]:checked::after {
  content: "";
  display: block;
  position: absolute;
  right: 4px;
  bottom: 2px;
  width: 2px;
  height: 8px;
  transform: rotate(40deg);
  background: #000;
}

.selectShop input[type=checkbox] {
	margin-top: 0;
}

.selectShop li {
	display: flex;
	align-items: center;
}

.BtnSolidArrow02{
  width: calc(100% - 70px);
}

.InputBodyForm [type="text"][disabled] {
	opacity: .5;
}


/* 20251120 */
#ModalCover-Prefectures h2{
  font-size: 1.25rem;
  font-weight: 700;
}

#ModalCover-Prefectures p{
  margin-top: 23px;
	padding-top: 0;
}

#ModalCover-Prefectures p{
  margin-top: 23px;
  padding-top: 0;
  font-size: 0.88rem;
  font-weight: 350;
}

#ModalCover-Prefectures select {
  margin-top: 26px;
	min-width: 180px;
  padding: 13px 22px 13px 22px;
  font-size: 1.25rem;
  font-weight: 700;
  border: 2px solid #0A579D;
  border-radius: 12px;
  background: url(https://lsp-campaign.com/pasco-sampling-1/images/icon_arrow_select.svg) no-repeat right 10px top 50%;
  background-size: auto 7px;
  text-align: center;
}

._p11-20{
  padding: 11px 20px !important;
}

.InputBodyForm>form>dl.disable{
	opacity: 0.3;
	pointer-events:none;
}