/* Source style 1 (v10129-age-gate-parallel-copy) */
/* Age-gate bilingual copy should read as a pair, not as a staircase. */
.ageActions button,
.ageActions .btn,
.ageActions a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
  gap:0!important;
  text-align:center!important;
}
.ageActions button .ageBtnEn,
.ageActions .btn .ageBtnEn,
.ageActions a .ageBtnEn{
  display:inline-block!important;
  font-weight:800!important;
}
.ageActions button .ageBtnSep,
.ageActions .btn .ageBtnSep,
.ageActions a .ageBtnSep{
  display:inline-block!important;
  opacity:.9!important;
  margin:0 .28em!important;
  font-weight:700!important;
}
.ageActions button .ageBtnJa,
.ageActions .btn .ageBtnJa,
.ageActions a .ageBtnJa{
  display:inline-block!important;
  font-weight:700!important;
}
@media (min-width:561px){
  .ageActions button,
  .ageActions .btn,
  .ageActions a{
    min-height:108px!important;
    font-size:22px!important;
    line-height:1.2!important;
  }
  .ageActions .ageBtnJa{font-size:.72em!important}
}
@media (max-width:560px){
  .ageActions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .ageActions button,
  .ageActions .btn,
  .ageActions a{
    width:100%!important;
    min-height:58px!important;
    padding:0 14px!important;
    font-size:17px!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }
  .ageActions .ageBtnEn{font-size:1em!important}
  .ageActions .ageBtnJa{font-size:.84em!important}
  .ageActions .ageBtnSep{font-size:.92em!important}
}
@media (max-width:380px){
  .ageActions button,
  .ageActions .btn,
  .ageActions a{
    font-size:15px!important;
    min-height:54px!important;
    padding:0 10px!important;
  }
  .ageActions .ageBtnJa{font-size:.8em!important}
}
/* Source style 2 (v10131-age-gate-single-line-fix) */
/* True one-line bilingual buttons for the age gate. */
.ageActions button,
.ageActions .btn,
.ageActions a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.ageActions .ageBtnLine{
  display:inline-flex!important;
  align-items:baseline!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
  max-width:100%!important;
}
.ageActions .ageBtnEn,
.ageActions .ageBtnSep,
.ageActions .ageBtnJa{
  display:inline-block!important;
  white-space:nowrap!important;
}
.ageActions .ageBtnSep{
  margin:0 .28em!important;
  opacity:.92!important;
}
@media (min-width:561px){
  .ageActions button,
  .ageActions .btn,
  .ageActions a{
    min-height:108px!important;
    padding:0 22px!important;
    font-size:24px!important;
    line-height:1.2!important;
  }
  .ageActions .ageBtnEn{font-size:1em!important;font-weight:800!important}
  .ageActions .ageBtnJa{font-size:.78em!important;font-weight:700!important}
}
@media (max-width:560px){
  .ageActions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .ageActions button,
  .ageActions .btn,
  .ageActions a{
    width:100%!important;
    min-height:58px!important;
    padding:0 12px!important;
    font-size:16px!important;
    line-height:1.15!important;
    overflow:hidden!important;
  }
  .ageActions .ageBtnEn{font-size:1em!important;font-weight:800!important}
  .ageActions .ageBtnJa{font-size:.82em!important;font-weight:700!important}
}
@media (max-width:390px){
  .ageActions button,
  .ageActions .btn,
  .ageActions a{
    font-size:14px!important;
    min-height:54px!important;
    padding:0 10px!important;
  }
  .ageActions .ageBtnSep{margin:0 .22em!important}
  .ageActions .ageBtnJa{font-size:.78em!important}
}
/* Source style 3 (v10132-age-button-hard-fix) */
/* Hard override of the legacy mobile rule that forced bilingual labels into two rows. */
#ageYesBtn,
#ageNoBtn{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
  text-align:center!important;
  line-height:1!important;
}

#ageYesBtn .ageInline,
#ageNoBtn .ageInline{
  display:inline-flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:baseline!important;
  justify-content:center!important;
  white-space:nowrap!important;
  line-height:1!important;
}

#ageYesBtn .ageEn,
#ageNoBtn .ageEn,
#ageYesBtn .ageSlash,
#ageNoBtn .ageSlash,
#ageYesBtn .ageJp,
#ageNoBtn .ageJp{
  display:inline!important;
  position:static!important;
  margin:0!important;
  padding:0!important;
  white-space:nowrap!important;
  line-height:1!important;
}

#ageYesBtn .ageSlash,
#ageNoBtn .ageSlash{
  margin:0 .30em!important;
}

#ageYesBtn .ageEn,
#ageNoBtn .ageEn{
  font-size:1em!important;
  font-weight:800!important;
}

#ageYesBtn .ageJp,
#ageNoBtn .ageJp{
  font-size:.84em!important;
  font-weight:700!important;
}

@media (max-width:560px){
  #ageYesBtn,
  #ageNoBtn{
    min-height:56px!important;
    height:56px!important;
    padding:0 10px!important;
    font-size:15px!important;
  }
}

@media (max-width:390px){
  #ageYesBtn,
  #ageNoBtn{
    font-size:14px!important;
    padding:0 8px!important;
  }
  #ageYesBtn .ageSlash,
  #ageNoBtn .ageSlash{
    margin:0 .22em!important;
  }
  #ageYesBtn .ageJp,
  #ageNoBtn .ageJp{
    font-size:.80em!important;
  }
}
/* Source style 4 (v10133-deny-go-back-one-line) */
/* Restricted-access modal: keep "Go back / 戻る" on a single baseline. */
.denyInline{
  display:inline-flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:baseline!important;
  justify-content:center!important;
  white-space:nowrap!important;
  line-height:1!important;
}
.denyInline .denyEn,
.denyInline .denySlash,
.denyInline .denyJp{
  display:inline-block!important;
  position:static!important;
  white-space:nowrap!important;
  line-height:1!important;
  margin:0!important;
  padding:0!important;
}
.denyInline .denySlash{margin:0 .30em!important}
.denyInline .denyEn{font-weight:800!important}
.denyInline .denyJp{font-size:.84em!important;font-weight:700!important}

/* Override legacy button rules that stack bilingual text vertically. */
#ageDenyModal button,
#ageDenyModal .btn,
#ageDeniedModal button,
#ageDeniedModal .btn,
.accessRestricted button,
.accessRestricted .btn{
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
}
