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

  .pc-on,
  .-pc {
    display: none !important;
  }

  .c-button {
    height: 11.7333333333vw;
    padding-right: 5.3333333333vw;
    font-size: 4.2666666667vw !important;
  }

  .c-button span {
    font-size: 3.2vw !important;
  }

  .c-button::before,
  .c-button::after {
    right: 1.0666666667vw;
    width: 9.3866666667vw;
    height: 9.3866666667vw;
  }

  .l_footer .c_oddsparkBnr_inner {
    padding: 22.6666666667vw 0;
    gap: 9.8666666667vw;
  }

  .l_footer .c_oddsparkBnr_logo {
    width: 78.6666666667vw;
  }

  .l_footer__button {
    width: 61.3333333333vw;
    height: 13.3333333333vw;
  }

  #contents .c-title {
    padding: 0 2.6666666667vw;
    font-size: 14.4vw;
    white-space: nowrap;
  }

  #contents .c-title span {
    font-size: 4.2666666667vw;
  }

  /*section.kv
    --------------------------------------------------*/
  #contents section.kv {
    position: relative;
  }

  #contents section.kv .kv_title_wrap {
    position: absolute;
    left: 10vw;
    top: calc(34vw + 50%);
    transform: translateY(-50%);
  }

  #contents section.kv .kv_title_wrap .kv_title {
    font-size: 7vw;
    color: #fff;
    font-weight: 700;
    line-height: 1.2em;
    margin-bottom: 4vw;
  }

  #contents section.kv .kv_title_wrap .kv_title .line {
    position: relative;
    display: inline-block;
    line-height: 1.4em;
    padding: 0 0.2em;
    margin-bottom: 0.4em;
  }

  #contents section.kv .kv_title_wrap .kv_title .line::after {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-42%);
    width: 100%;
    height: 10vw;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: -1;
  }

  #contents section.kv .kv_title_wrap .kv_date {
    color: #fff;
    font-size: 4vw;
    font-weight: 700;
    margin-bottom: 2vw;
  }

  #contents section.kv .kv_title_wrap .kv_location {
    color: #fff;
    font-size: 4vw;
    font-weight: 700;
  }

  #contents .menu__inner {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    padding: 5.0666666667vw 0 4.5333333333vw;
    gap: 0;
  }

  #contents .menu__inner nav {
    margin-bottom: 3vw;
  }

  #contents .menu__title {
    padding-bottom: 5.0666666667vw;
    border-bottom: 1px solid #000;
    font-size: 4.8vw;
    text-align: center;
  }

  #contents .menu__list {
    width: 100vw;
    padding: 5.0666666667vw 4vw;
    overflow-x: auto;
    gap: 8.5333333333vw;
  }

  #contents .menu__item {
    gap: 1.8666666667vw;
    font-size: 4.2666666667vw;
    white-space: nowrap;
  }

  #contents .menu__item::after {
    width: 2.7786666667vw;
    height: 1.3866666667vw;
  }

  #contents .menu__button {
    width: 54.1333333333vw;
    margin: 0 auto;
  }

  /*section.banner
    --------------------------------------------------*/

  #contents .banner {
    padding: 8vw 2.7vw 17vw;
    background-image: url("../images/banner-bg_sp.webp");
    background-color: #f1f1f1;
    background-position: bottom right;
    background-size: 50vw;
    background-repeat: no-repeat;
  }

  #contents .banner__list {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 5.3333333333vw;
  }

  #contents .banner__item {
    border-radius: 4.8vw;
    overflow: hidden;
  }

  #contents .banner__title {
    margin-top: 13.0666666667vw;
    font-size: 7vw;
    text-align: left;
    color: #000;
  }

  #contents section.banner .banner__title span {
    color: var(--color_main);
    font-size: 4vw;
    margin-bottom: 4vw;
    display: block;
    font-family: 'Noto Sans JP';
  }


  #contents section.banner .banner__main_title {
    font-family: 'Noto Sans JP';
  }


  #contents .banner__title img {
    width: 94.6666666667vw;
    height: 12.5333333333vw;
    margin-top: 8vw;
  }

  #contents .banner__button {
    width: 54.1333333333vw;
    margin: 8vw auto 0 0;
  }

  #contents .racer {
    /* margin-top: -33.8666666667vw; */
    /* padding-top: 31vw; */
    /* padding-bottom: 73.8vw; */
    /* background-image: url("../images/racer-bg-sp.png"); */
    background-size: cover;
    padding: 15vw 0 24vw;
  }

  #contents .racer__list {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    margin-top: 11.2vw;
    gap: 6.9333333333vw 5.3333333333vw;
  }

  #contents .racer__item {
    padding: 0;
  }

  #contents .racer__name {
    margin-top: 4.5333333333vw;
    font-size: 4.8vw;
  }

  #contents .racer__name span {
    padding-left: 2.6666666667vw;
    font-size: 3.7333333333vw;
  }

  #contents .racer__class {
    margin-top: 0.8vw;
    font-size: 3.7333333333vw;
  }

  #contents .racer__times {
    margin-top: 2.9333333333vw;
    padding: 0 1.6vw;
    font-size: 3.4666666667vw;
  }

  #contents .racer__career {
    margin-top: 2.1333333333vw;
    font-size: 3.4666666667vw;
  }

  #contents .prediction {
    padding: 15vw 0vw;
    /* background-image: url("../images/prediction-bg-sp.png"); */
    background-size: 100% auto;
  }

  #contents .prediction .c_predictTable_caption {
    min-width: 60vw;
  }
  #contents .prediction .c_predictTable_location {
    min-width: 15vw;
  }

  #contents .prediction .c_predictTable_person {
    min-width: 15vw;
  }
  #contents .prediction .comingsoon_wrap {
    text-align: center;
    margin: 25vw auto 0;
    display: block;
    color: var(--color_main);
  }

  #contents .prediction .comingsoon_wrap .comingsoon_title {
    font-size: 6.5vw;
    font-weight: 700;
  }


  #contents .prediction__section {
    padding: 6.5333333333vw 2.5vw 10.4vw;
  }

  #contents .prediction__section.single {
    padding: 0vw 2.5vw 10.4vw;
  }

  #contents .prediction .c_tab_menu li {
    padding-bottom: 2.6666666667vw;
    font-weight: 700;
    font-size: 4vw;
  }

  .c_tab_menu > li.is-active {
    color: var(--color_main);
  }

  #contents .prediction .c_tab_menu li .youbi {
    display: block;
    font-size: 3.4666666667vw !important;
  }

  #contents .prediction .c_tab-race_menu {
    margin-top: 8.5333333333vw;
  }

  #contents .prediction .c_tab-race_menu li {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 2vw 6vw;
    font-size: 4vw;
  }

  #contents .prediction .c_tab-race_panel {
    margin-top: 10.9333333333vw;
  }

  #contents .prediction .c_predictTable[data-persons="7"] .c_predictTable_person {
    min-width: 31.4666666667vw;
    padding: 1.0666666667vw 4vw;
  }

  #contents .prediction .c_predictTable[data-persons="7"] img.yoso_ico {
    width: 19.7333333333vw;
    margin-top: 1.0666666667vw;
  }

  #contents .prediction .c_predictTable_table > thead th {
    padding: 3vw 1vw;
    font-size: 4vw;
    min-width: 35vw;
  }

  #contents .prediction .c_predictTable_table > thead th:first-child {
    font-size: 7.5vw;
  }

  #contents .prediction .c_predictTable_table td {
    font-size: 4.8vw;
  }

  #contents .prediction .c_predictTable_table td:nth-child(2) {
    /* padding: 0 3.6vw; */
  }

  #contents .prediction .c_predictTable_table td:nth-child(n+4) {}

  #contents .prediction .c_predictTable_lg {
    min-width: 26.6666666667vw !important;
  }

  #contents .prediction .c_predictTable_cellNum {
    height: 11vw;
    font-size: 6.9333333333vw;
  }

  #contents .prediction .c_predictTable_person {
    min-width: 12vw;
  }

  #contents .prediction .c_predictTable_person > a {
    gap: 2.6666666667vw;
  }

  #contents .prediction .c_predictTable_person_img {
    min-width: 10vw;
    height: 10vw;
    /* margin-bottom: 1.7vw; */
  }

  #contents .prediction img.yoso_ico {
    max-width: 18vw;
  }

  #contents .prediction__buttons {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    flex-direction: column;
    align-items: center;
    margin-top: 13.0666666667vw;
    gap: 4.2666666667vw;
  }

  #contents .prediction__button {
    width: 73.0666666667vw;
    height: 12.5333333333vw;
    gap: 2.6666666667vw;
    border-radius: 1.0666666667vw;
    font-size: 5.0666666667vw;
    letter-spacing: 0;
  }

  #contents .prediction__button img {
    height: 5.3333333333vw;
  }

  #contents .prediction__modals {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    margin-top: 13.0666666667vw;
    padding: 0 1.8666666667vw;
    gap: 2.6666666667vw;
  }

  #contents .prediction .c_modal_box {
    margin: 0 !important;
    padding: 8vw 4.2666666667vw;
  }

  #contents .prediction .c_predict_box_name {
    gap: 2.4vw 5.0666666667vw;
  }

  #contents .prediction .c_predict_art {
    width: 25.0666666667vw;
    height: 25.0666666667vw;
  }

  #contents .prediction .c_predict_name {
    font-size: 4.8vw;
  }

  #contents .prediction .c_predict_desc {
    font-size: 3.2vw;
  }

  #contents .prediction .c_heading-tertiary {
    margin: 4.2666666667vw 0 !important;
  }

  #contents .prediction .c_predict_text {
    font-size: 4.2666666667vw;
  }

  #contents .prediction .c_heading-quinary {
    margin-top: 6.9333333333vw;
    margin-bottom: 4vw;
    font-size: 4.2666666667vw;
  }

  #contents .prediction__links {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    padding: 0 1.8666666667vw;
    gap: 5.3333333333vw;
  }

  #contents .highlight {
    padding: 20vw 4.2vw;
    position: relative;
    background-image: url(../images/highlights-bg_top.png), url(../images/highlights-bg_bottom.png);
    background-position: left top, right bottom;
    background-size: 80vw, 70vw;
    background-repeat: no-repeat;
    background-color: var(--color_main);
  }

  #contents .highlight__title span {
    margin-bottom: 2.6666666667vw;
    font-size: 14.4vw;
    display: block;
  }

  #contents .highlight__title {
    font-size: 4.2666666667vw;
    line-height: normal;
    color: #fff;
  }

  #contents .highlight__desc {
    margin-top: 10.7vw;
    font-size: 4.2vw;
    color: #fff;
  }

  #contents .highlight__text {
    top: 0vw;
    left: 2.6666666667vw;
    width: calc(100% - 140px);
  }

  /*fixed_btn_top_wrap*/

  .fixed_btn_top_wrap {
    position: fixed;
    bottom: 5vw;
    right: 3vw;
    z-index: 10;
  }

  .fixed_btn_top_wrap .fixed_btn_top {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 12vw;
    width: 12vw;
    border: 0.5vw solid var(--color_main);
    color: var(--color_main);
    font-size: 2.7vw;
    font-weight: 700;
    position: relative;
    background-color: #fff;
    flex-direction: column;
    padding-top: 4vw;
    border-radius: 2vw;
    z-index: 20;
    box-sizing: border-box;
    cursor: pointer;
    font-family: 'Noto Sans JP';
  }

  .fixed_btn_top_wrap .fixed_btn_top::before {
    content: "";
    height: 2.4vw;
    width: 2.4vw;
    border-left: 0.5vw solid var(--color_main);
    border-bottom: 0.5vw solid var(--color_main);
    transform: rotate(135deg);
    position: absolute;
    top: 3.5vw;
  }

}
