@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;600;700;800;900&display=swap);
@import url(https://use.typekit.net/ruo6rev.css);
@import url(https://fonts.googleapis.com/css?family=Open+Sans|Roboto:400,700|Anton&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&display=swap);
@import url(https://use.typekit.net/ruo6rev.css);
@import url(https://fonts.googleapis.com/css?family=Open+Sans|Roboto:400,700|Anton&display=swap);

#CAMPAIGN abbr,
#CAMPAIGN address,
#CAMPAIGN article,
#CAMPAIGN aside,
#CAMPAIGN audio,
#CAMPAIGN b,
#CAMPAIGN blockquote,
#CAMPAIGN body,
#CAMPAIGN canvas,
#CAMPAIGN caption,
#CAMPAIGN cite,
#CAMPAIGN code,
#CAMPAIGN dd,
#CAMPAIGN del,
#CAMPAIGN details,
#CAMPAIGN dfn,
#CAMPAIGN div,
#CAMPAIGN dl,
#CAMPAIGN dt,
#CAMPAIGN em,
#CAMPAIGN fieldset,
#CAMPAIGN figcaption,
#CAMPAIGN figure,
#CAMPAIGN footer,
#CAMPAIGN form,
#CAMPAIGN h1,
#CAMPAIGN h2,
#CAMPAIGN h3,
#CAMPAIGN h4,
#CAMPAIGN h5,
#CAMPAIGN h6,
#CAMPAIGN header,
#CAMPAIGN hgroup,
#CAMPAIGN html,
#CAMPAIGN i,
#CAMPAIGN iframe,
#CAMPAIGN img,
#CAMPAIGN ins,
#CAMPAIGN kbd,
#CAMPAIGN label,
#CAMPAIGN legend,
#CAMPAIGN li,
#CAMPAIGN mark,
#CAMPAIGN menu,
#CAMPAIGN nav,
#CAMPAIGN object,
#CAMPAIGN ol,
#CAMPAIGN p,
#CAMPAIGN pre,
#CAMPAIGN q,
#CAMPAIGN samp,
#CAMPAIGN section,
#CAMPAIGN small,
#CAMPAIGN span,
#CAMPAIGN strong,
#CAMPAIGN sub,
#CAMPAIGN summary,
#CAMPAIGN sup,
#CAMPAIGN table,
#CAMPAIGN tbody,
#CAMPAIGN td,
#CAMPAIGN tfoot,
#CAMPAIGN th,
#CAMPAIGN thead,
#CAMPAIGN time,
#CAMPAIGN tr,
#CAMPAIGN ul,
#CAMPAIGN var,
#CAMPAIGN video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: 0 0
}

#CAMPAIGN body {
  line-height: 1
}

#CAMPAIGN article,
#CAMPAIGN aside,
#CAMPAIGN details,
#CAMPAIGN figcaption,
#CAMPAIGN figure,
#CAMPAIGN footer,
#CAMPAIGN header,
#CAMPAIGN hgroup,
#CAMPAIGN menu,
#CAMPAIGN nav,
#CAMPAIGN section {
  display: block
}

#CAMPAIGN li,
#CAMPAIGN nav ul {
  list-style: none
}

#CAMPAIGN blockquote,
#CAMPAIGN q {
  quotes: none
}

#CAMPAIGN blockquote:after,
#CAMPAIGN blockquote:before,
#CAMPAIGN q:after,
#CAMPAIGN q:before {
  content: none
}

#CAMPAIGN a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: 0 0;
  color: #111;
  text-decoration: none
}

#CAMPAIGN ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none
}

#CAMPAIGN mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: 700
}

#CAMPAIGN del {
  text-decoration: line-through
}

#CAMPAIGN abbr[title],
#CAMPAIGN dfn[title] {
  border-bottom: 1px dotted;
  cursor: help
}

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

#CAMPAIGN hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0
}

#CAMPAIGN input,
#CAMPAIGN select {
  vertical-align: middle
}

#CAMPAIGN main {
  display: block
}

#CAMPAIGN button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: 0;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

#CAMPAIGN img {
  width: 100%
}

#CAMPAIGN input[type=text] {
  max-width: none
}

li {
  list-style: none
}

@font-face {
  font-family: SF-Compact;
  src: url(../../font/SF-Compact.ttf)
}

@font-face {
  font-family: SF-Compact-blod;
  src: local("SF-Compact-Text-Medium"), url(../../font/SF-Compact-Text-Medium.otf)
}

@font-face {
  font-family: SF-Compact-semiblod;
  src: local("SF-Compact-Display-Semibold"), url(../../font/SF-Compact-Display-Semibold.otf)
}

@media screen and (min-width:769px) {
  html#CAMPAIGN {
    -webkit-text-size-adjust: none;
    scroll-behavior: smooth
  }

  #CAMPAIGN * {
    margin: 0;
    padding: 0;
    zoom: 1
  }

  #CAMPAIGN *,
  #CAMPAIGN :after,
  #CAMPAIGN :before {
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box
  }

  #CAMPAIGN body {
    color: #000;
    background: #fff;
    font-size: 14px;
    line-height: 1.8;
    font-family: "Noto Sans JP", Avenir, "Helvetica Neue", Helvetica, Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    letter-spacing: 3px
  }

  #CAMPAIGN a:hover {
    transition: all .4s;
    opacity: .8
  }

  #CAMPAIGN h1,
  #CAMPAIGN h2,
  #CAMPAIGN h3,
  #CAMPAIGN h4,
  #CAMPAIGN h5,
  #CAMPAIGN h6 {
    font-weight: 500;
    text-align: center !important
  }

  #CAMPAIGN img {
    -ms-interpolation-mode: bicubic;
    vertical-align: bottom
  }

  #CAMPAIGN i,
  #CAMPAIGN strong {
    font-style: normal
  }

  #CAMPAIGN input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
  }

  #CAMPAIGN .clear {
    clear: both
  }

  #CAMPAIGN .clearfix:after {
    content: "";
    display: block;
    clear: both
  }

  #CAMPAIGN .display_sm {
    max-width: 750px;
    width: 100%;
    margin: 0 auto
  }
}

@media only screen and (min-width:769px) and (max-width:768px) {
  #CAMPAIGN .display_sm {
    width: 90%
  }
}

@media screen and (min-width:769px) {
  #CAMPAIGN .display_item {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto
  }
}

@media only screen and (min-width:769px) and (max-width:768px) {
  #CAMPAIGN .display_item {
    width: 90%;
    margin-bottom: 40px
  }
}

@media screen and (min-width:769px) {

  #CAMPAIGN ol,
  #CAMPAIGN ul {
    list-style: none
  }

  #CAMPAIGN input[type=email],
  #CAMPAIGN input[type=submit],
  #CAMPAIGN input[type=tel],
  #CAMPAIGN input[type=text],
  #CAMPAIGN textarea {
    -webkit-appearance: none
  }
}

@media screen and (max-width:768px) {
  html#CAMPAIGN {
    -webkit-text-size-adjust: none;
    scroll-behavior: smooth
  }

  #CAMPAIGN * {
    margin: 0;
    padding: 0;
    zoom: 1
  }

  #CAMPAIGN *,
  #CAMPAIGN :after,
  #CAMPAIGN :before {
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box
  }

  #CAMPAIGN body {
    color: #000;
    background: #fff;
    font-size: 12px;
    line-height: 1.8;
    font-family: "Noto Sans JP", Avenir, "Helvetica Neue", Helvetica, Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    letter-spacing: 3px
  }

  #CAMPAIGN a:hover {
    transition: all .4s;
    opacity: .8
  }

  #CAMPAIGN h1,
  #CAMPAIGN h2,
  #CAMPAIGN h3,
  #CAMPAIGN h4,
  #CAMPAIGN h5,
  #CAMPAIGN h6 {
    font-weight: 500;
    text-align: center !important
  }

  #CAMPAIGN img {
    -ms-interpolation-mode: bicubic;
    vertical-align: bottom
  }

  #CAMPAIGN i,
  #CAMPAIGN strong {
    font-style: normal
  }

  #CAMPAIGN input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
  }

  #CAMPAIGN .clear {
    clear: both
  }

  #CAMPAIGN .clearfix:after {
    content: "";
    display: block;
    clear: both
  }

  #CAMPAIGN .display_sm {
    max-width: 750px;
    width: 100%;
    margin: 0 auto
  }
}

@media only screen and (max-width:768px) and (max-width:768px) {
  #CAMPAIGN .display_sm {
    width: 90%
  }
}

@media screen and (max-width:768px) {
  #CAMPAIGN .display_item {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto
  }
}

@media only screen and (max-width:768px) and (max-width:768px) {
  #CAMPAIGN .display_item {
    width: 90%;
    margin-bottom: 40px
  }
}

@media screen and (max-width:768px) {

  #CAMPAIGN ol,
  #CAMPAIGN ul {
    list-style: none
  }

  #CAMPAIGN input[type=email],
  #CAMPAIGN input[type=submit],
  #CAMPAIGN input[type=tel],
  #CAMPAIGN input[type=text],
  #CAMPAIGN textarea {
    -webkit-appearance: none
  }
}

#BONAS {
  font-family: "Noto Sans JP", Avenir, "Helvetica Neue", Helvetica, Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif
}

#BONAS.EN .title {
  font-size: 32px;
  letter-spacing: .02em
}

@media only screen and (max-width:768px) {
  #BONAS.EN .title {
    font-size: 21px !important
  }
}

#BONAS.EN .way_step {
  max-width: 610px;
  width: 48% !important
}

@media only screen and (max-width:768px) {
  #BONAS.EN .way_step {
    width: 70% !important
  }
}

#BONAS.EN .way_step-two {
  max-width: 810px !important;
  width: 63% !important
}

@media only screen and (max-width:768px) {
  #BONAS.EN .way_step-two {
    width: 70% !important
  }
}

#BONAS.EN .way_dsc li:nth-child(2) figure {
  margin-bottom: 40px !important
}

@media only screen and (max-width:768px) {
  #BONAS.EN .way_dsc li:nth-child(2) figure {
    margin-bottom: 16px !important
  }
}

#BONAS.EN .btn-clm input:nth-child(1) {
  background: url(../../../../images/campaign/202311_final_bonus/en/tool-btn01.svg) no-repeat center 0 !important;
  margin-right: 16px
}

@media only screen and (max-width:768px) {
  #BONAS.EN .btn-clm input:nth-child(1) {
    margin: 0
  }
}

#BONAS.EN .btn-clm input:nth-child(2) {
  background: url(../../../../images/campaign/202311_final_bonus/en/tool-btn02.svg) no-repeat center 0 !important;
  margin-left: 16px
}

@media only screen and (max-width:768px) {
  #BONAS.EN .btn-clm input:nth-child(2) {
    margin: 0
  }
}

#BONAS.EN .calculation_warn-img {
  max-width: 316px !important
}

@media only screen and (max-width:768px) {
  #BONAS.EN .calculation_warn-img {
    max-width: 104px !important
  }
}

@media only screen and (max-width:768px) {
  #BONAS.EN .mv_text {
    display: block !important;
    width: 98% !important;
    top: 50% !important
  }
}

#BONAS abbr,
#BONAS address,
#BONAS article,
#BONAS aside,
#BONAS audio,
#BONAS b,
#BONAS blockquote,
#BONAS body,
#BONAS canvas,
#BONAS caption,
#BONAS cite,
#BONAS code,
#BONAS dd,
#BONAS del,
#BONAS details,
#BONAS dfn,
#BONAS div,
#BONAS dl,
#BONAS dt,
#BONAS em,
#BONAS fieldset,
#BONAS figcaption,
#BONAS figure,
#BONAS footer,
#BONAS form,
#BONAS h1,
#BONAS h2,
#BONAS h3,
#BONAS h4,
#BONAS h5,
#BONAS h6,
#BONAS header,
#BONAS hgroup,
#BONAS html,
#BONAS i,
#BONAS iframe,
#BONAS img,
#BONAS ins,
#BONAS kbd,
#BONAS label,
#BONAS legend,
#BONAS li,
#BONAS mark,
#BONAS menu,
#BONAS nav,
#BONAS object,
#BONAS ol,
#BONAS p,
#BONAS pre,
#BONAS q,
#BONAS samp,
#BONAS section,
#BONAS small,
#BONAS span,
#BONAS strong,
#BONAS sub,
#BONAS summary,
#BONAS sup,
#BONAS table,
#BONAS tbody,
#BONAS td,
#BONAS tfoot,
#BONAS th,
#BONAS thead,
#BONAS time,
#BONAS tr,
#BONAS ul,
#BONAS var,
#BONAS video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: 0 0
}

#BONAS body {
  line-height: 1
}

#BONAS article,
#BONAS aside,
#BONAS details,
#BONAS figcaption,
#BONAS figure,
#BONAS footer,
#BONAS header,
#BONAS hgroup,
#BONAS menu,
#BONAS nav,
#BONAS section {
  display: block
}

#BONAS nav ul {
  list-style: none
}

#BONAS blockquote,
#BONAS q {
  quotes: none
}

#BONAS blockquote:after,
#BONAS blockquote:before {
  content: none
}

#BONAS q:after,
#BONAS q:before {
  content: none
}

#BONAS a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: 0 0;
  color: #111;
  text-decoration: none
}

#BONAS ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none
}

#BONAS mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: 700
}

#BONAS del {
  text-decoration: line-through
}

#BONAS abbr[title],
#BONAS dfn[title] {
  border-bottom: 1px dotted;
  cursor: help
}

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

#BONAS hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0
}

#BONAS input,
#BONAS select {
  vertical-align: middle
}

#BONAS main {
  display: block
}

#BONAS button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: 0;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

#BONAS img {
  width: 100%
}

#BONAS input[type=text] {
  max-width: none
}

#BONAS .pagetop {
  width: 100px;
  position: fixed;
  bottom: 110px;
  left: 10px;
  z-index: 1000
}

#BONAS h1,
#BONAS h2,
#BONAS h3,
#BONAS h4,
#BONAS h5 {
  font-family: "Noto Sans JP", Avenir, "Helvetica Neue", Helvetica, Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif
}

#BONAS main {
  position: relative;
  min-height: 100vh
}

#BONAS .display {
  max-width: 1140px;
  width: 100%;
  margin: auto
}

#BONAS .display_s {
  max-width: 820px;
  width: 100%;
  margin: auto
}

#BONAS .display_m {
  max-width: 960px;
  width: 100%;
  margin: auto
}

#BONAS .display_l {
  max-width: 1200px;
  width: 100%;
  margin: auto
}

#BONAS .display_r {
  max-width: 960px;
  width: 100%;
  margin: auto
}

#BONAS .sp {
  display: none
}

#BONAS .sp:after,
#BONAS .sp:before {
  display: none
}

#BONAS .sp-inline {
  display: none
}

#BONAS .sp-inline:after,
#BONAS .sp-inline:before {
  display: none
}

#BONAS .tb {
  display: block;
  display: none
}

@media only screen and (max-width:768px) {
  #BONAS .sp {
    display: block
  }
}

@media only screen and (max-width:768px) {
  #BONAS .sp-inline {
    display: inline-block
  }
}

@media only screen and (max-width:900px) {
  #BONAS .tb {
    display: none
  }

  #BONAS .tb:after,
  #BONAS .tb:before {
    display: none
  }
}

@media only screen and (max-width:960px) {
  #BONAS .tb {
    display: block
  }
}

@media (max-width:680px) {
  #BONAS .tb-pc {
    display: none
  }
}

@media (min-width:681px) {
  #BONAS .tb-sp {
    display: none
  }
}

@media (max-width:680px) {
  #BONAS .tb-sp {
    display: block
  }
}

#BONAS .pc {
  display: block
}

@media only screen and (max-width:768px) {
  #BONAS .pc {
    display: none
  }

  #BONAS .pc:after,
  #BONAS .pc:before {
    display: none
  }
}

@media only screen and (max-width:960px) {
  #BONAS .tb {
    display: block
  }
}

@media (min-width:681px) {
  #BONAS .tb-sp {
    display: none
  }
}

@media (max-width:680px) {
  #BONAS .tb-sp {
    display: block
  }
}

#BONAS .button a {
  background: #fff;
  padding: 18px;
  font-size: 16px;
  border-radius: 32px;
  display: block
}

#BONAS .mb-16 {
  margin-bottom: 16px
}

#BONAS .mb-n {
  margin-bottom: 0 !important
}

#BONAS .anm,
#BONAS .anm_d {
  opacity: 0;
  transition: transform .1s cubic-bezier(.12, 0, .39, 0)
}

#BONAS .anm_y {
  transform: translateY(18px);
  opacity: 0;
  transition: transform 80ms
}

#BONAS .hide {
  display: none
}

#BONAS .bold {
  font-weight: 700 !important
}

#BONAS .pl-0 {
  margin-left: 0 !important
}

#BONAS .pr-0 {
  margin-right: 0 !important
}

#BONAS .color_wf {
  color: #fff !important
}

#BONAS .max-1124 {
  max-width: 1124px;
  margin: auto;
  width: 92%
}

#BONAS .max-960 {
  max-width: 960px;
  margin: auto;
  width: 92%
}

#BONAS .max-700 {
  max-width: 700px;
  margin: auto;
  width: 92%
}

#BONAS .mb-3 {
  margin-bottom: 30px
}

#BONAS .title {
  font-size: 40px;
  color: #fff;
  margin-bottom: 40px;
  text-align: center;
  position: relative;
  z-index: 1;
  font-family: toppan-bunkyu-midashi-go-std, sans-serif;
  font-weight: 900;
  font-style: normal;
  letter-spacing: .2em
}

@media only screen and (max-width:960px) {
  #BONAS .title {
    font-size: 32px
  }
}

@media only screen and (max-width:768px) {
  #BONAS .title {
    letter-spacing: .1em
  }
}

#BONAS .title::after {
  content: "";
  background: url(../../../../images/campaign/202311_final_bonus/title-bg.png) no-repeat center center;
  width: 100%;
  height: 150px;
  position: absolute;
  left: 50%;
  bottom: -16px;
  transform: translate(-50%, 0);
  display: inline-block;
  z-index: -1
}

@media only screen and (max-width:768px) {
  #BONAS .title::after {
    background: url(../../../../images/campaign/202311_final_bonus/title-bg-sp.png) no-repeat center center;
    height: 75px
  }
}

@media only screen and (max-width:768px) {
  #BONAS .title {
    font-size: 24px
  }
}

#BONAS .title.l {
  font-size: 40px
}

#BONAS .mv {
  margin: 0 auto;
  padding: 0;
  position: relative;
  max-height: 70vh
}

@media only screen and (max-width:1500px) {
  #BONAS .mv {
    max-height: 100vh
  }
}

@media only screen and (max-width:768px) {
  #BONAS .mv {
    height: auto;
    max-height: inherit
  }
}

#BONAS .mv::after {
  content: "";
  background: url(../../../../images/campaign/202311_final_bonus/gold-bar_u.svg) no-repeat center center;
  position: absolute;
  left: 50%;
  bottom: -8px;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 10px
}

#BONAS .mv #effectimg {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 99
}

#BONAS .mv .mv_title {
  position: relative;
  height: 55vw;
  max-height: 80vh
}

@media only screen and (max-width:768px) {
  #BONAS .mv .mv_title {
    height: inherit;
    max-height: inherit
  }
}

#BONAS .mv .mv_title img {
  position: absolute;
  bottom: 0
}

@media only screen and (max-width:768px) {
  #BONAS .mv .mv_title img {
    position: relative
  }
}

#BONAS .mv .mv_text {
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 70%;
  z-index: 100;
  max-width: 850px
}

@media only screen and (max-width:768px) {
  #BONAS .mv .mv_text {
    display: none
  }
}

#BONAS .mv .mv_btn {
  position: absolute;
  bottom: 13%;
  left: 50%;
  transform: translate(-50%, 0);
  width: 46%;
  z-index: 100;
  max-width: 620px
}

@media only screen and (max-width:768px) {
  #BONAS .mv .mv_btn {
    width: 90%;
    margin: auto;
    bottom: 40px
  }
}

#BONAS .get {
  background: url(../../../../images/campaign/202311_final_bonus/get-bg.png) no-repeat center center;
  width: 100%;
  background-size: cover;
  height: 24vw;
  max-height: 320px;
  position: relative
}

@media only screen and (max-width:768px) {
  #BONAS .get {
    background: url(../../../../images/campaign/202311_final_bonus/get-bg-sp.png) no-repeat center center;
    height: 34vw;
    max-height: 185px;
    background-size: cover
  }
}

#BONAS .get .get_wrap {
  text-align: center;
  padding: 16px 0 0
}

#BONAS .get .get_wrap .get_img {
  max-width: 700px;
  margin: 0 auto;
  position: absolute;
  bottom: 0px;
  left: 50%;
  transform: translate(-50%, 0)
}

@media only screen and (max-width:768px) {
  #BONAS .get .get_wrap .get_img {
    width: 70%;
    max-width: 400px
  }
}

#BONAS .get .get_wrap .get_img img {
  vertical-align: bottom
}

#BONAS .get .get_wrap .get_text {
  margin-top: 30px;
  font-size: 24px;
  color: #fff
}

#BONAS .get .get_wrap .get_text span {
  font-size: 34px;
  font-weight: 700
}

#BONAS .ditail {
  background: url(../../../../images/campaign/202311_final_bonus/ditail-bg.jpg) no-repeat center 0;
  width: 100%;
  padding: 80px 0;
  background-size: cover;
  position: relative
}

@media only screen and (max-width:768px) {
  #BONAS .ditail {
    background: url(../../../../images/campaign/202311_final_bonus/ditail-bg-sp.jpg) no-repeat center 0;
    background-size: cover;
    padding: 40px 0
  }
}

#BONAS .ditail .title::after {
  bottom: -32px
}

@media only screen and (max-width:768px) {
  #BONAS .ditail .title::after {
    bottom: -18px
  }
}

#BONAS .ditail::after {
  content: "";
  background: url(../../../../images/campaign/202311_final_bonus/gold-bar_u.svg) no-repeat center center;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 10px
}

@media only screen and (max-width:768px) {
  #BONAS .ditail::after {
    content: "";
    background: url(../../../../images/campaign/202311_final_bonus/gold-bar_u-sp.svg) no-repeat center center;
    position: absolute;
    left: 50%;
    top: 0;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 10px
  }
}

#BONAS .ditail .title {
  margin-bottom: 80px
}

@media only screen and (max-width:768px) {
  #BONAS .ditail .title {
    margin-bottom: 40px
  }
}

#BONAS .ditail .ditail_wrap {
  text-align: center
}

#BONAS .ditail .ditail_wrap .ditail_img {
  width: 50%;
  margin: auto
}

@media only screen and (max-width:768px) {
  #BONAS .ditail .ditail_wrap .ditail_img {
    width: 80%
  }
}

#BONAS .ditail .ditail_wrap .ditaol_text {
  margin-top: 30px;
  margin-bottom: 40px;
  font-size: 24px;
  color: #fff
}

@media only screen and (max-width:768px) {
  #BONAS .ditail .ditail_wrap .ditaol_text {
    margin-top: 8px;
    font-size: 16px;
    margin-bottom: 24px
  }
}

#BONAS .ditail .ditail_wrap .ditaol_text span {
  font-size: 34px;
  font-weight: 700
}

@media only screen and (max-width:768px) {
  #BONAS .ditail .ditail_wrap .ditaol_text span {
    font-size: 24px
  }
}

#BONAS .ditail .ditail_wrap .ditail_btn {
  max-width: 340px;
  margin: auto;
  cursor: pointer;
  display: block
}

@media only screen and (max-width:768px) {
  #BONAS .ditail .ditail_wrap .ditail_btn {
    max-width: 320px
  }
}

#BONAS .partake {
  background: url(../../../../images/campaign/202311_final_bonus/partake-bg.jpg) no-repeat 0 0;
  width: 100%;
  background-size: cover;
  position: relative;
  padding: 64px 0
}

@media only screen and (max-width:768px) {
  #BONAS .partake {
    background: url(../../../../images/campaign/202311_final_bonus/partake-bg-sp.jpg) no-repeat 0 0;
    background-size: cover
  }
}

#BONAS .partake::after {
  content: "";
  background: url(../../../../images/campaign/202311_final_bonus/silver-bar_d.svg) no-repeat center center;
  position: absolute;
  left: 50%;
  top: -2px;
  transform: translate(-50%, 0);
  width: 100%;
  height: 10px
}

@media only screen and (max-width:768px) {
  #BONAS .partake::after {
    background: url(../../../../images/campaign/202311_final_bonus/silver-bar_d-sp.svg) no-repeat center center
  }
}

#BONAS .partake::before {
  content: "";
  background: url(../../../../images/campaign/202311_final_bonus/silver-bar_d.svg) no-repeat center center;
  position: absolute;
  left: 50%;
  bottom: -3px;
  transform: translate(-50%, 0);
  width: 100%;
  height: 10px
}

@media only screen and (max-width:768px) {
  #BONAS .partake::before {
    background: url(../../../../images/campaign/202311_final_bonus/silver-bar_d-sp.svg) no-repeat center center
  }
}

@media only screen and (max-width:768px) {
  #BONAS .partake::before {
    content: "";
    background: url(../../../../images/campaign/202311_final_bonus/silver-bar_d-sp.svg) no-repeat center center;
    position: absolute;
    left: 50%;
    bottom: -2px;
    transform: translate(-50%, 0);
    width: 100%;
    height: 10px
  }
}

#BONAS .partake .partake_title {
  font-size: 40px;
  color: #fff;
  margin-bottom: 40px;
  text-align: center;
  font-family: toppan-bunkyu-midashi-go-std, sans-serif;
  font-weight: 900
}

@media only screen and (max-width:960px) {
  #BONAS .partake .partake_title {
    font-size: 32px
  }
}

@media only screen and (max-width:768px) {
  #BONAS .partake .partake_title {
    font-size: 24px
  }
}

#BONAS .partake .partake_item {
  width: 40%;
  margin: 8px;
  cursor: pointer
}

#BONAS .partake .partake_item a:hover {
  opacity: 1
}

@media only screen and (max-width:768px) {
  #BONAS .partake .partake_item {
    width: 80%
  }
}

#BONAS .partake .item_box {
  position: relative;
  width: 100%
}

#BONAS .partake .item_box .flashbox {
  width: 100%;
  height: 92%;
  border-radius: 20px;
  overflow: hidden;
  display: block;
  transform: scale(1, 1);
  position: absolute;
  bottom: 0
}

#BONAS .partake .item_box .flashbox::before {
  -webkit-animation: shine 2.3s ease-in-out infinite;
  animation: shine 2.3s ease-in-out infinite;
  background-color: #fff;
  content: " ";
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: -180px;
  transform: rotate(45deg);
  width: 30px
}

@-webkit-keyframes shine {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0
  }

  80% {
    transform: scale(0) rotate(45deg);
    opacity: .5
  }

  81% {
    transform: scale(4) rotate(45deg);
    opacity: 1
  }

  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0
  }
}

@keyframes shine {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0
  }

  80% {
    transform: scale(0) rotate(45deg);
    opacity: .5
  }

  81% {
    transform: scale(4) rotate(45deg);
    opacity: 1
  }

  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0
  }
}

#BONAS .partake .partake_clm {
  display: flex;
  justify-content: center;
  flex-wrap: wrap
}

@media only screen and (max-width:768px) {
  #BONAS .partake .partake_clm {
    width: 100%
  }
}

#BONAS .partake .partake_txt {
  position: absolute;
  top: 55%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center
}

#BONAS .partake .partake_txt h4 {
  font-size: 28px;
  color: #fff;
  margin-bottom: 4px
}

@media only screen and (max-width:960px) {
  #BONAS .partake .partake_txt h4 {
    font-size: 24px
  }
}

@media only screen and (max-width:768px) {
  #BONAS .partake .partake_txt h4 {
    font-size: 22px
  }
}

#BONAS .partake .partake_txt p {
  font-size: 16px;
  color: #fff
}

#BONAS .way {
  width: 100%;
  padding: 80px 0 40px;
  position: relative;
  background: #000;
  background-size: cover;
  overflow: hidden
}

#BONAS .way .bg {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 50%;
  transform: translate(-50%, -24%);
  width: 200%;
  max-width: 2825px;
  mix-blend-mode: screen
}

#BONAS .way .bg2 {
  position: absolute;
  z-index: 1;
  bottom: -8%;
  left: -15%;
  transform: translate(0, 0);
  width: 200%;
  max-width: 1052px;
  mix-blend-mode: screen
}

#BONAS .way .content {
  position: relative;
  z-index: 2
}

@media only screen and (max-width:768px) {
  #BONAS .way {
    background: url(../../../../images/campaign/202311_final_bonus/way-bg-sp.svg) no-repeat center 0;
    background-size: cover;
    padding: 40px 0
  }
}

#BONAS .way .title {
  margin-bottom: 80px
}

@media only screen and (max-width:768px) {
  #BONAS .way .title {
    margin-bottom: 50px
  }
}

#BONAS .way .title::after {
  bottom: -32px
}

@media only screen and (max-width:768px) {
  #BONAS .way .title::after {
    bottom: -16px
  }
}

#BONAS .way .way_step {
  width: 385px;
  margin-bottom: 24px
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_step {
    margin-top: 40px;
    width: 70%
  }
}

#BONAS .way .way_step-two {
  max-width: 539px
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_step-two {
    width: 80%;
    margin-bottom: 24px
  }
}

#BONAS .way .way_btn {
  max-width: 490px;
  margin: 0 auto 64px;
  cursor: pointer;
  display: block
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_btn {
    width: 90%;
    margin: 0 auto 60px
  }
}

#BONAS .way .way_dsc ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  background: url(../../../../images/campaign/202311_final_bonus/way_box.svg) no-repeat 0 0;
  background-size: cover;
  width: 100%;
  padding: 24px 0;
  border-radius: 10px;
  margin-bottom: 40px
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_dsc ul {
    align-items: start;
    background: url(../../../../images/campaign/202311_final_bonus/way_box-sp.svg) no-repeat center center;
    background-size: cover;
    border-radius: 10px;
    padding: 50px 0 0;
    width: 90%;
    height: 550px;
    margin: 0 auto 40px
  }
}

#BONAS .way .way_dsc ul li {
  width: 33.333%
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_dsc ul li {
    width: 100%;
    display: flex;
    align-items: center
  }
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_dsc ul li .way_dsc-box {
    width: 59%
  }
}

#BONAS .way .way_dsc ul li figure {
  margin: auto
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_dsc ul li figure {
    text-align: center
  }
}

#BONAS .way .way_dsc ul li h5,
#BONAS .way .way_dsc ul li p {
  color: #fff;
  text-align: center
}

@media only screen and (max-width:768px) {

  #BONAS .way .way_dsc ul li h5,
  #BONAS .way .way_dsc ul li p {
    text-align: left
  }
}

#BONAS .way .way_dsc ul li h5 {
  font-size: 20px;
  margin-bottom: 8px
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_dsc ul li h5 {
    font-size: 18px
  }
}

#BONAS .way .way_dsc ul li p {
  font-size: 15px
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_dsc ul li p {
    font-size: 13px
  }
}

#BONAS .way .way_dsc ul li:nth-child(1) figure {
  width: 141px;
  margin-bottom: 16px
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_dsc ul li:nth-child(1) figure {
    width: 38%;
    margin: auto 0 0 auto
  }

  #BONAS .way .way_dsc ul li:nth-child(1) figure img {
    width: 110px
  }
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_dsc ul li:nth-child(2) {
    margin-top: 24px
  }
}

#BONAS .way .way_dsc ul li:nth-child(2) figure {
  width: 141px;
  margin-bottom: 24px
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_dsc ul li:nth-child(2) figure {
    width: 38%;
    margin: auto 0 0 auto
  }

  #BONAS .way .way_dsc ul li:nth-child(2) figure img {
    width: 98px
  }
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_dsc ul li:nth-child(3) {
    margin-top: 40px
  }
}

#BONAS .way .way_dsc ul li:nth-child(3) figure {
  width: 92px;
  margin-bottom: 16px
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_dsc ul li:nth-child(3) figure {
    width: 38%;
    margin: auto 0 0 auto
  }

  #BONAS .way .way_dsc ul li:nth-child(3) figure img {
    width: 65px
  }
}

#BONAS .way .way_img {
  width: 26%;
  margin-bottom: 32px
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_img {
    width: 60%
  }
}

#BONAS .way .way_txt {
  text-align: center;
  margin-bottom: 32px
}

#BONAS .way .way_txt p {
  color: #fff;
  font-size: 24px
}

@media only screen and (max-width:768px) {
  #BONAS .way .way_txt p {
    font-size: 16px
  }
}

#BONAS .way .way_txt p a {
  color: #fff;
  text-decoration: underline
}

#BONAS .bonus-wrap {
  background: url(../../../../images/campaign/202311_final_bonus/calculation-bg.svg) no-repeat center 0;
  width: 100%;
  padding: 80px 0;
  background-size: cover
}

@media only screen and (max-width:768px) {
  #BONAS .bonus-wrap {
    background: url(../../../../images/campaign/202311_final_bonus/calculation-bg-sp.svg) no-repeat center 0;
    background-size: cover;
    padding: 40px 0
  }
}

#BONAS .bonus-wrap .title {
  width: 66%;
  max-width: 960px;
  margin: 0 auto 40px
}

@media only screen and (max-width:768px) {
  #BONAS .bonus-wrap .title {
    width: 92%
  }
}

#BONAS .bonus .title {
  margin: 0 auto 72px
}

@media only screen and (max-width:768px) {
  #BONAS .bonus .title {
    margin: 0 auto 48px
  }
}

#BONAS .bonus .title::after {
  bottom: -32px
}

@media only screen and (max-width:768px) {
  #BONAS .bonus .title::after {
    bottom: -16px
  }
}

#BONAS .bonus .tool-box {
  background: linear-gradient(90deg, #2b0000, #cb1919, #2b0000);
  text-align: center;
  border-radius: 18px;
  margin-bottom: 24px;
  padding: 18px 0
}

@media only screen and (max-width:768px) {
  #BONAS .bonus .tool-box {
    width: 90%;
    margin: 0 auto 32px
  }
}

#BONAS .bonus .tool-box h4 {
  color: #fff;
  font-weight: 700;
  font-size: 32px;
  letter-spacing: 0;
  line-height: 1.3
}

@media only screen and (max-width:768px) {
  #BONAS .bonus .tool-box h4 {
    font-size: 20px
  }
}

#BONAS .bonus .tool-box p {
  font-size: 14px;
  margin-top: 10px;
  font-weight: 500;
  letter-spacing: .04em;
  color: #fff
}

@media only screen and (max-width:768px) {
  #BONAS .bonus .tool-box p {
    font-size: 10px
  }
}

#BONAS .bonus .bonus-table {
  border-radius: 10px;
  border-spacing: 0;
  border: none;
  text-align: center;
  width: 90%;
  margin: 0 auto 80px;
  position: relative
}

@media only screen and (max-width:768px) {
  #BONAS .bonus .bonus-table {
    width: 90%;
    margin: 0 auto 40px;
    border-radius: 6px
  }
}

#BONAS .bonus .bonus-table ul {
  display: flex;
  align-items: center;
  background: #fff;
  border-bottom: 1px solid #ccc
}

#BONAS .bonus .bonus-table ul li {
  padding: 8px 0;
  vertical-align: middle;
  font-weight: 700;
  background: 0 0;
  text-align: center;
  font-size: 22px
}

@media only screen and (max-width:960px) {
  #BONAS .bonus .bonus-table ul li {
    font-size: 18px
  }
}

@media only screen and (max-width:600px) {
  #BONAS .bonus .bonus-table ul li {
    font-size: 14px
  }
}

#BONAS .bonus .bonus-table ul li:nth-child(1) {
  width: 40%
}

#BONAS .bonus .bonus-table ul li:nth-child(2) {
  width: 20%;
  border-right: 1px solid #ccc;
  border-left: 1px solid #ccc
}

@media only screen and (max-width:600px) {
  #BONAS .bonus .bonus-table ul li:nth-child(2) {
    width: 33%;
    height: 60px;
    line-height: 60px;
    padding: 0
  }
}

#BONAS .bonus .bonus-table ul li:nth-child(3) {
  border-right: none;
  width: 40%
}

#BONAS .bonus .bonus-table ul:first-child {
  border-radius: 10px 10px 0 0;
  background: #4d4d4d
}

@media only screen and (max-width:768px) {
  #BONAS .bonus .bonus-table ul:first-child {
    border-radius: 6px 6px 0 0
  }
}

#BONAS .bonus .bonus-table ul:first-child li {
  font-size: 26px;
  font-weight: 500;
  color: #fff
}

@media only screen and (max-width:600px) {
  #BONAS .bonus .bonus-table ul:first-child li {
    height: auto;
    line-height: 1.5;
    padding: 16px 0
  }
}

@media only screen and (max-width:960px) {
  #BONAS .bonus .bonus-table ul:first-child li {
    font-size: 2.4vw
  }
}

@media only screen and (max-width:680px) {
  #BONAS .bonus .bonus-table ul:first-child li {
    font-size: 20px
  }
}

@media only screen and (max-width:414px) {
  #BONAS .bonus .bonus-table ul:first-child li {
    font-size: 16px
  }
}

#BONAS .bonus .bonus-table ul:nth-child(7) {
  border-radius: 0 0 10px 10px
}

@media only screen and (max-width:680px) {
  #BONAS .bonus .bonus-table ul:nth-child(7) {
    border-radius: 0 0 6px 6px
  }
}

@media only screen and (max-width:600px) {
  #BONAS .bonus .bonus-table ul:nth-child(7) {
    border-radius: 0 0 6px 6px
  }
}

#BONAS .bonus .bonus-table ul.bottom {
  background: 0 0 !important
}

#BONAS .bonus .bonus-table ul.bottom li {
  border-right: none !important;
  font-size: 14px;
  padding: 8px 0
}

#BONAS .bonus .bonus-table ul:last-child li {
  border-bottom: none
}

#BONAS .calculation .title {
  margin: 0 auto 72px
}

#BONAS .calculation .title::after {
  bottom: -32px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .title {
    margin: 0 auto 48px
  }
}

#BONAS .calculation .title::after {
  bottom: -32px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .title::after {
    bottom: -16px
  }
}

#BONAS .calculation .calculation_txt {
  text-align: center;
  color: #fff;
  font-size: 20px;
  margin-bottom: 32px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-sub {
    font-size: 15px
  }
}

#BONAS .calculation .tool-form ul {
  display: flex;
  flex-wrap: wrap;
  overflow: visible;
  border-radius: 16px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .3);
  margin-bottom: 32px;
  background: #fff
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-form ul {
    width: 100%;
    margin: auto;
    background: 0 0
  }
}

#BONAS .calculation .tool-form ul li {
  width: 50%;
  text-align: center
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-form ul li {
    width: 100%;
    border-radius: 16px;
    border: none;
    background: #fff
  }
}

#BONAS .calculation .tool-form ul li:nth-child(1) {
  border-right: 1px solid #ccc
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-form ul li:nth-child(1) {
    border-right: none;
    margin-bottom: 32px
  }
}

#BONAS .calculation .tool-form ul li:nth-child(1) dt {
  border-radius: 16px 0 0 0
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-form ul li:nth-child(1) dt {
    border-radius: 16px 16px 0 0
  }
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-form ul li:nth-child(2) {
    margin-bottom: 32px
  }
}

#BONAS .calculation .tool-form ul li:nth-child(2) dt {
  border-radius: 0 16px 0 0
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-form ul li:nth-child(2) dt {
    border-radius: 16px 16px 0 0
  }
}

#BONAS .calculation .tool-form ul li dt {
  background: #4d4d4d;
  padding: 16px 0;
  font-size: 26px;
  letter-spacing: .06em;
  line-height: 60px;
  color: #fff
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-form ul li dt {
    font-size: 18px;
    line-height: 40px;
    padding: 0
  }
}

#BONAS .calculation .tool-form ul li dd {
  padding: 16px 0;
  text-align: center;
  line-height: 60px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-form ul li dd {
    line-height: 50px
  }
}

#BONAS .calculation .tool-form ul li dd select {
  font-size: 26px;
  border: none;
  text-align: center
}

#BONAS .calculation .tool-form ul li dd select:invalid {
  color: #e2e2e2
}

#BONAS .calculation .tool-form ul li dd select option {
  color: #000
}

#BONAS .calculation .tool-form ul li dd select option:first-child {
  color: #e2e2e2
}

#BONAS .calculation .tool-form ul li dd input {
  font-size: 26px;
  width: 100%;
  border: none;
  text-align: center
}

#BONAS .calculation .tool-form ul li dd input::-webkit-input-placeholder {
  color: #e2e2e2;
  font-size: 26px;
  text-align: center
}

#BONAS .calculation .tool-form ul li dd input:-ms-input-placeholder,
#BONAS .calculation .tool-form ul li dd input::-moz-placeholder,
#BONAS .calculation .tool-form ul li dd input::-ms-input-placeholder,
#BONAS .calculation .tool-form ul li dd input::-webkit-input-placeholder,
#BONAS .calculation .tool-form ul li dd input::placeholder {
  color: #e2e2e2;
  font-size: 26px;
  text-align: center
}

#BONAS .calculation .tool-form .btn-clm {
  display: flex;
  justify-content: center;
  margin-bottom: 64px;
  flex-wrap: wrap
}

#BONAS .calculation .tool-form .btn-clm input {
  cursor: pointer;
  border-radius: 20px;
  border: none;
  padding: 24px 0;
  font-size: 26px;
  color: #fff;
  width: 328px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .2)
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-form .btn-clm input {
    width: 260px
  }
}

#BONAS .calculation .tool-form .btn-clm input:nth-child(1) {
  background: url(../../../../images/campaign/202311_final_bonus/tool-btn01.svg) no-repeat center 0;
  margin-right: 16px
}

@media only screen and (max-width:583px) {
  #BONAS .calculation .tool-form .btn-clm input:nth-child(1) {
    margin: 0
  }
}

#BONAS .calculation .tool-form .btn-clm input:nth-child(2) {
  background: url(../../../../images/campaign/202311_final_bonus/tool-btn02.svg) no-repeat center 0;
  margin-left: 16px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-form .btn-clm input:nth-child(2) {
    margin: 0
  }
}

#BONAS .calculation .tool-bonus {
  background: linear-gradient(90deg, #cb1919, #2b0000);
  text-align: center;
  border-radius: 12px;
  margin-bottom: 56px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-bonus {
    width: 90%;
    margin: auto
  }
}

#BONAS .calculation .tool-bonus h2 {
  color: #fff;
  font-size: 26px;
  padding: 24px 0;
  margin-bottom: 48px;
  font-weight: 300;
  text-align: center;
  position: relative
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-bonus h2 {
    padding: 14px 0;
    font-size: 18px;
    margin-bottom: 30px
  }
}

#BONAS .calculation .tool-bonus h2::after {
  content: "";
  background: url(../../../../images/campaign/202311_final_bonus/bonus-bar.svg) no-repeat center center;
  width: 100%;
  height: 6px;
  position: absolute;
  bottom: -2px;
  left: 50%;
  transform: translate(-50%, 0)
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-bonus h2::after {
    background: url(../../../../images/campaign/202311_final_bonus/bonus-bar-sp.svg) no-repeat center center
  }
}

#BONAS .calculation .tool-bonus ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding-bottom: 48px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-bonus ul {
    padding-bottom: 30px;
    margin-bottom: 80px
  }
}

#BONAS .calculation .tool-bonus ul li {
  width: 37.5%;
  text-align: right
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-bonus ul li {
    width: 90%
  }
}

#BONAS .calculation .tool-bonus ul li:nth-child(1) {
  margin-right: 16px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-bonus ul li:nth-child(1) {
    margin: 0 auto 24px
  }
}

#BONAS .calculation .tool-bonus ul li:nth-child(2) {
  margin-left: 16px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-bonus ul li:nth-child(2) {
    margin: auto
  }
}

#BONAS .calculation .tool-bonus ul li .price {
  background: #fff;
  border-radius: 16px;
  height: 80px;
  line-height: 80px;
  font-size: 26px;
  padding-right: 24px;
  margin-bottom: 8px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-bonus ul li .price {
    height: 60px;
    line-height: 60px
  }

  #BONAS .calculation .tool-bonus ul li .price span {
    font-size: 20px
  }
}

#BONAS .calculation .tool-bonus ul li .price-dsc {
  text-align: center;
  font-size: 20px;
  color: #fff;
  font-weight: 300
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .tool-bonus ul li .price-dsc {
    font-size: 12px
  }
}

#BONAS .calculation .calculation_warn-img {
  max-width: 140px;
  width: 100%;
  margin: 0 auto 32px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .calculation_warn-img {
    max-width: 104px;
    margin: 0 auto 24px
  }
}

#BONAS .calculation .calculation_warn-box {
  color: #fff;
  font-size: 20px;
  font-weight: 400;
  width: 90%;
  margin: 0 auto
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .calculation_warn-box {
    width: 90%;
    margin: auto;
    transform: translateX(5px)
  }
}

#BONAS .calculation .calculation_warn-box p {
  margin-bottom: 8px;
  position: relative
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .calculation_warn-box p {
    font-size: 16px;
    word-break:break-word;
    text-align:start;
  }
}

#BONAS .calculation .calculation_warn-box p:nth-child(1)::before {
  content: "1.";
  position: absolute;
  left: -20px;
  color: #fff;
  font-size: 20px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .calculation_warn-box p:nth-child(1)::before {
    font-size: 16px
  }
}

#BONAS .calculation .calculation_warn-box p:nth-child(2)::before {
  content: "2.";
  position: absolute;
  left: -20px;
  color: #fff;
  font-size: 20px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .calculation_warn-box p:nth-child(2)::before {
    font-size: 16px
  }
}

#BONAS .calculation .calculation_warn-box p:nth-child(3)::before {
  content: "3.";
  position: absolute;
  left: -20px;
  color: #fff;
  font-size: 20px
}

@media only screen and (max-width:768px) {
  #BONAS .calculation .calculation_warn-box p:nth-child(3)::before {
    font-size: 16px
  }
}

#BONAS .rule {
  background: url(../../../../images/campaign/202311_final_bonus/ditail-bg.jpg) no-repeat center 0;
  padding: 80px 0;
  background-size: cover;
  text-align: center
}

@media only screen and (max-width:768px) {
  #BONAS .rule {
    background: url(../../../../images/campaign/202311_final_bonus/ditail-bg-sp.jpg) no-repeat center 0;
    background-size: cover;
    padding: 40px 0 80px
  }
}

#BONAS .rule .title {
  margin: 0 auto 72px
}

@media only screen and (max-width:768px) {
  #BONAS .rule .title {
    margin-bottom: 45px
  }
}

#BONAS .rule .title::after {
  bottom: -32px
}

@media only screen and (max-width:768px) {
  #BONAS .rule .title::after {
    bottom: -21px
  }
}

#BONAS .rule .rule-title {
  font-size: 40px;
  text-align: center;
  margin-bottom: 32px;
  font-weight: 500
}

#BONAS .rule .rule_txt {
  color: #fff;
  font-size: 20px;
  margin-bottom: 32px
}

@media only screen and (max-width:768px) {
  #BONAS .rule .rule_txt {
    font-size: 13px;
    width: 90%;
    margin: 0 auto 30px
  }
}

#BONAS .rule .rule-content {
  max-width: 960px;
  background: #333;
  margin: auto;
  padding: 40px 50px;
  max-height: 540px;
  overflow-y: scroll
}

@media only screen and (max-width:960px) {
  #BONAS .rule .rule-content {
    width: 92%;
    margin: auto;
    padding: 30px 15px
  }
}

#BONAS .rule .rule-block {
  max-width: 900px;
  margin: 0 auto 32px
}

#BONAS .rule .rule-block h3 {
  background: #fff;
  padding: 8px 16px;
  color: #000;
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 15px;
  letter-spacing: 0;
  text-align: center
}

@media only screen and (max-width:768px) {
  #BONAS .rule .rule-block h3 {
    font-size: 15px
  }
}

#BONAS .rule .rule-block p {
  font-size: 16px;
  letter-spacing: 0;
  color: #fff;
  text-align: left;
  line-height: 1.7;
  margin-bottom: 10px;
  font-size: 15px
}

@media only screen and (max-width:768px) {
  #BONAS .rule .rule-block p {
    font-size: 13px
  }
}

#BONAS .rule .rule-block p.kome {
  margin-top: 10px
}

#BONAS .rule .rule-block:nth-child(3) ul li,
#BONAS .rule .rule-block:nth-child(7) ul li,
#BONAS .rule .rule-block:nth-child(8) ul li {
  background: url(../../../../images/campaign/202311_final_bonus/list_icon_2.png) no-repeat left 8px/13px auto;
  padding-left: 19px
}

#BONAS .rule .rule-block ul li {
  font-size: 16px;
  letter-spacing: 0;
  color: #fff;
  text-align: left;
  margin-bottom: 15px
}

@media only screen and (max-width:768px) {
  #BONAS .rule .rule-block ul li {
    font-size: 13px
  }
}

#BONAS .rule .rule-block table {
  width: 100%;
  margin-bottom: 15px;
  border-collapse: separate;
  border-spacing: 2px
}

@media only screen and (max-width:768px) {
  #BONAS .rule .rule-block .table-block {
    width: 100%;
    overflow-x: scroll
  }
}

#BONAS .rule .rule-block .table-block table tr.midashi {
  background: #fff;
  color: #000
}

#BONAS .rule .rule-block .table-block table tr.midashi th {
  font-weight: 600;
  color: #000
}

#BONAS .rule .rule-block table td,
#BONAS .rule .rule-block table th {
  border: 1px solid #fff;
  text-align: center;
  padding: 14px 0;
  align-items: center;
  vertical-align: middle;
  color: #fff
}

#BONAS .calculation .tool-form ul li dd {
  padding-left: 16px;
  padding-right: 16px;
}
#currency {
  width: 100%;
}
.btn-clm input {
  margin: 0 auto;
}
.br-552 {
  display: none;
}
.br-864 {
  display: none;
}
@media only screen and (max-width:864px) {
  .br-864 {
    display: block;
  }
}
@media only screen and (max-width:768px) {
  .br-864 {
    display: none;
  }
}

@media only screen and (max-width:552px) {
  .br-552 {
    display: block;
  }
}

@media only screen and (min-width:768px) {
  #BONAS .mv,#BONAS .mv #effectimg,#BONAS .mv .mv_title,#BONAS .mv .mv_title .pc {
      min-height: 600px;
  }
}