/*common variable------------*/
:root {
    --color_main: rgba(164 , 0 , 130 , 1);
    --color_sub: rgba(164 , 0 , 130 , 0.1);
}


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

#contents {
    font-family: Verdana, Roboto, Droid Sans, Ã¦Â¸Â¸Ã£â€šÂ´Ã£â€šÂ·Ã£Æ’Æ’Ã£â€šÂ¯, YuGothic, Ã£Æ’Â¡Ã£â€šÂ¤Ã£Æ’ÂªÃ£â€šÂª, Meiryo, Ã£Æ’â€™Ã£Æ’Â©Ã£â€šÂ®Ã£Æ’Å½Ã¨Â§â€™Ã£â€šÂ´ ProN W3, Hiragino Kaku Gothic ProN, Ã¯Â¼Â­Ã¯Â¼Â³ Ã¯Â¼Â°Ã£â€šÂ´Ã£â€šÂ·Ã£Æ’Æ’Ã£â€šÂ¯, sans-serif;
}

#contents html {
    line-height: 1;
}

#contents ol,
#contents ul,
#contents li {
    list-style: none;
}

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

#contents caption,
#contents th,
#contents td {
    font-weight: normal;
    text-align: left;
    vertical-align: middle;
}

#contents q,
#contents blockquote {
    quotes: none;
}

#contents q:before,
#contents q:after,
#contents blockquote:before,
#contents blockquote:after {
    content: "";
    content: none;
}

#contents a img {
    border: none;
}

#contents a {
    color: inherit;
    text-decoration: none;
}

#contents img {
    max-width: 100%;
    vertical-align: bottom;
}

#contents article,
#contents aside,
#contents details,
#contents figcaption,
#contents figure,
#contents footer,
#contents header,
#contents hgroup,
#contents main,
#contents menu,
#contents nav,
#contents section,
#contents summary {
    display: block;
}

#contents input,
#contents button {
    -webkit-appearance: none;
    -moz-appearance: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-box-shadow: none;
    appearance: none;
    border: none;
    outline: none;
    background: transparent;
    box-shadow: none;
    cursor: pointer;
}

#contents input:focus,
#contents button:focus {
    outline: none;
}

#contents input:focus-visible,
#contents button:focus-visible {
    outline: none;
}

#contents *,
#contents *::after,
#contents *::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.c-button {
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    height: 44px;
    padding-right: 20px;
    border-radius: 999px;
    background-color: var(--color_main);
    color: #fff !important;
    font-weight: 700;
    font-size: 16px !important;
    text-align: center;
}

.c-button::before,
.c-button::after {
    -webkit-transform: translateY(-50%);
    display: block;
    position: absolute;
    top: 50%;
    right: 4px;
    width: 35.2px;
    height: 35.2px;
    transform: translateY(-50%);
    content: "";
}

.c-button::before {
    border-radius: 50%;
    background-color: #fff;
}

.c-button::after {
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    display: -ms-grid;
    display: grid;
    place-items: center;
    background-color: #fff;
    color: var(--color_main);
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain;
    border-radius: 50%;
}

.c-button--arrow::after {
    background-image: url("../images/button-arrow.svg");
    background-color: #830067;
}

.c-button--external::after {
    background-image: url("../images/button-external.svg");
}

.c-button--external.c-button--white::after {
    background-image: url("../images/button-external_white.svg");
}

.c-button--chevron::after {
    -webkit-mask-image: url("../images/button-chevron.svg");
    background-image: url("../images/button-chevron.svg");
}

.c-button--white {
    background-color: #fff;
    color: var(--color_main) !important;
}

.c-button--white::before {
    background-color: var(--color_main);
}

.c-button--white::after {
    background-color: var(--color_main);
}

.l_footer {
    padding: 0;
}

.l_footer .c_oddsparkBnr {
    height: auto;
    margin: 0;
}

.l_footer .c_oddsparkBnr_bg {
    height: 100%;
}

.l_footer .c_oddsparkBnr_inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 112px 0;
    gap: 37px;
}

.l_footer .c_oddsparkBnr_logo {
    width: 540px;
    max-width: unset;
}

.l_footer__button {
    width: 230px;
    height: 50px;
    background-color: #fff;
    color: var(--color_main) !important;
}

#contents {
    font-family: "Noto Sans JP", sans-serif;
}

#contents .l-inner {
    max-width: 1440px;
    margin: 0 auto;
}

#contents .c-title {
    padding: 0 20px 0 0;
    color: var(--color_main);
    font-weight: 700;
    font-size: 120px;
}

#contents .c-title span {
    display: block;
    font-size: 24px;
    font-family: "Noto Sans JP", sans-serif;
}

#contents .kv .kv-img {
    width: 100%;
    height: auto;
}

#contents .menu {
    background: #fff;
}

#contents .menu__inner {
    -webkit-box-align: center;
    -ms-flex-align: center;
    -ms-grid-columns: 1fr auto auto;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr auto auto;
    grid-template-columns: 1fr auto auto;
    align-items: center;
    padding: 19px 44px 19px 30px;
    gap: 7%;
    background-color: #830067;
    color: #fff;
}

#contents .menu__title {
    font-weight: 700;
    font-size: 20px;
}

#contents .menu__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 32px;
}

#contents .menu__item {
    -webkit-box-align: center;
    -ms-flex-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    gap: 7px;
    font-weight: 700;
    font-size: 16px;
}

#contents .menu__item::after {
    -ms-flex-negative: 0;
    display: block;
    flex-shrink: 0;
    width: 10.42px;
    height: 5.2px;
    background-image: url("../images/menu-chevron.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    content: "";
}

#contents .menu__button {
    width: 203px;
    background-color: #fff;
    color: var(--color_main)!important;
}

#contents .banner {
    /* padding: 77px 68px 200px; */
    /* background-image: url("../images/banner-bg.png"); */
    /* background-position: center top; */
    /* background-size: cover; */
    /* background-repeat: no-repeat; */
    /* background-color: #beeef2; */
}

#contents .banner__list {}

#contents .banner__item {
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.5);
    border-radius: 18px;
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.5);
    max-width: 900px;
    display: block;
    margin: auto;
}

#contents .banner__title {
    margin-top: 121px;
    color: #006896;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: normal;
    font-family: "Noto Sans";
    text-align: right;
}

#contents .banner__title img {
    width: 920px;
    height: 121px;
    margin-top: 60px;
    margin-left: auto;
}

#contents .banner__button {
    z-index: 3;
    position: relative;
    width: 203px;
    margin-top: 60px;
    margin-left: auto;
}

#contents .racer {
    position: relative;
    /* margin-top: -335px; */
    /* padding-top: 170px; */
    padding-bottom: 125px;
    background-image: url("../images/racer-bg.png");
    background-position: center top;
    background-size: 1440px;
    background-repeat: no-repeat;
    background-color: #eee;
    padding-top: 90px;
}

#contents .racer__title {
    max-width: 1320px;
    margin: 0 auto;
}

#contents .racer__list {
    -ms-grid-columns: (1fr)[4];
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr);
    max-width: 1150px;
    margin: 57px auto 0;
    padding: 0 20px;
    gap: 59px 40px;
}

#contents .racer__item {
    padding: 0 15px;
}

#contents .racer__img {
    aspect-ratio: 1/1;
    overflow: hidden;
    border-radius: 50%;
}

#contents .racer__name {
    margin-top: 17px;
    font-weight: 700;
    font-size: 18px;
}

#contents .racer__name span {
    padding-left: 10px;
    font-size: 14px;
}

#contents .racer__class {
    margin-top: 3px;
    font-weight: 600;
    font-size: 14px;
}

#contents .racer__times {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 11px;
    padding: 0px 6px;
    background-color: var(--color_main);
    color: #fff;
    font-size: 13px;
}

#contents .racer__career {
    margin-top: 8px;
    font-weight: 400;
    font-size: 13px;
    line-height: normal;
}

#contents .prediction {
    /* margin-top: -490px; */
    padding: 0px 43px 0;
    /* background-image: url("../images/prediction-bg.png"); */
    /* background-position: center top; */
    /* background-size: 1440px auto; */
    background-repeat: no-repeat;
    background-color: #fff;
}

#contents .prediction__section {
    padding: 77px 37px 87px;
    background-color: #fff;
}

#contents .prediction .c_tab_menu li {
    padding-bottom: 15px;
    border-bottom: 3px solid #000;
    font-weight: 700;
    font-size: 18px;
}

#contents .prediction .c_tab_menu li.is-active {
    border-bottom: 3px solid var(--color_main);
    color: var(--color_main);
}

#contents .prediction .c_tab_menu li.is-disable {
    border-color: #ccc;
    color: #ccc;
    pointer-events: none;
}

#contents .prediction .c_tab_panel_inner {
    background-color: unset;
}

#contents .prediction .c_tab-race_menu {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 42px;
}

#contents .prediction .c_tab-race_menu li {
    padding: 13px 25px;
    background-color: #c5c5c5;
    color: #fff;
    font-weight: 700;
    font-size: 17px;
    line-height: 1;
}

#contents .prediction .c_tab-race_menu li.is-active {
    background-color: var(--color_main);
}

#contents .prediction .c_tab-race_panel {
    margin-top: 42px;
}

#contents .prediction .c_predictTable[data-persons="7"] .c_predictTable_person {
    min-width: 118px;
    padding: 4px 15px;
}

#contents .prediction .c_predictTable[data-persons="7"] .c_predictTable_person a {
    -ms-grid-columns: 1fr;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    place-items: center;
    justify-content: center;
    gap: 0px;
}

#contents .prediction .c_predictTable[data-persons="7"] .c_predictTable_person_name {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#contents .prediction .c_predictTable[data-persons="7"] img.yoso_ico {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    width: 74px;
    margin-top: 4px;
}

#contents .prediction .c_predictTable_table > thead th {
    padding: 11.5px 0px;
    border: 1px solid #b3b3b3;
    background-color: var(--color_main);
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    text-align: center;
}

#contents .prediction .c_predictTable_table > thead th:first-child {
    font-weight: 900;
    font-size: 28px;
}

#contents .prediction .c_predictTable_table td {
    border: 1px solid #b3b3b3;
    font-weight: 700;
    font-size: 18px;
    text-align: center;
    padding: 0 0.2em;
}

#contents .prediction .c_predictTable_table :has(td:contains("Ã¢â€”â€¹")),
#contents .prediction .c_predictTable_table :has(td:contains("Ã¢â€“Â³")),
#contents .prediction .c_predictTable_table :has(td:contains("Ãƒâ€”")),
#contents .prediction .c_predictTable_table :has(td:contains("Ã¢â€”Å½")) {
    background-color: yellow;
}

#contents .prediction .c_predictTable_table td:nth-child(2) {
    /* padding: 0 13.5px; */
    /* text-align: left; */
}

#contents .prediction .c_predictTable_table td:nth-child(n+4) {
    /* font-size: 16px; */
    /* text-align: center; */
}

#contents .prediction .c_predictTable_lg {
    min-width: 100px !important;
}

#contents .prediction .c_predictTable_cellNum {
    width: 55px;
    height: 50px;
    font-size: 26px;
}

#contents .prediction .c_predictTable_cellNum.bg-2 {
    background-color: #333333 !important;
    color: #ffffff;
}

#contents .prediction .c_predictTable_cellNum.bg-3 {
    background-color: #ff6666 !important;
    color: #ffffff;
}

#contents .prediction .c_predictTable_cellNum.bg-4 {
    background-color: #2b91e1 !important;
    color: #ffffff;
}

#contents .prediction .c_predictTable_cellNum.bg-5 {
    background-color: #ffffcc !important;
}

#contents .prediction .c_predictTable_cellNum.bg-6 {
    background-color: #ccff99 !important;
}

#contents .prediction .c_predictTable_cellNum.bg-7 {
    background-color: #ffcc66 !important;
}

#contents .prediction .c_predictTable_cellNum.bg-8 {
    background-color: #ffccff !important;
}

#contents .prediction .c_predictTable_person {
    min-width: 195px;
}

#contents .prediction .c_predictTable_person > a {
    -ms-grid-columns: auto 1fr;
    display: -ms-grid;
    /* display: grid; */
    -ms-grid-columns: auto 1fr;
    /* grid-template-columns: auto 1fr; */
    /* width: -webkit-fit-content; */
    width: -moz-fit-content;
    /* width: fit-content; */
    /* margin: auto; */
    gap: 6px;
    text-align: center;
}

#contents .prediction .c_predictTable_person_img {
    width: 41px;
    height: 41px;
}

#contents .prediction .c_predictTable_person_img img {
    border: none !important;
}

#contents .prediction .c_predictTable_person_name {
    flex-direction: row;
    justify-content: center;
    gap: 0.5em;
}

#contents .prediction .c_predictTable_person_name .name_full {
    -webkit-writing-mode: unset;
    -ms-writing-mode: unset;
    writing-mode: unset;
}

#contents .prediction img.yoso_ico {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    position: static;
    grid-column: 1/3;
    max-width: 78px;
}

#contents .prediction__buttons {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    margin-top: 42px;
    gap: 42px;
}

#contents .prediction__button {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 2px 1px 0 rgba(0, 0, 0, 0.12), 0 1px 3px 0 rgba(0, 0, 0, 0.2);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 274px;
    height: 47px;
    gap: 10px;
    border-radius: 4px;
    background-color: #2e77d0;
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 2px 1px 0 rgba(0, 0, 0, 0.12), 0 1px 3px 0 rgba(0, 0, 0, 0.2);
    color: #fff;
    font-weight: 700;
    font-size: 19px;
    letter-spacing: -1.33px;
}

#contents .prediction__button img {
    width: auto;
    height: 20px;
}

#contents .prediction__modals {
    -ms-grid-columns: (1fr)[2];
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    margin-top: 42px;
    gap: 42px;
}

#contents .prediction__modals .c_layout-centered,
#contents .prediction__modals .js-modal {
    height: 100%;
}

#contents .prediction .c_modal_content {
    height: 100% !important;
}

#contents .prediction .c_modal_content_inner {
    width: 100%;
    height: 100%;
}

#contents .prediction .c_modal_box {
    height: 100%;
    padding: 30px;
    background: var(--color_sub);
}

#contents .prediction .c_predict_box_name {
    -ms-grid-columns: auto 1fr;
    -ms-grid-rows: auto 1fr;
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto 1fr;
    grid-template-rows: auto 1fr;
    -ms-grid-columns: auto 1fr;
    grid-template-columns: auto 1fr;
    gap: 16px 19px;
}

#contents .prediction .c_predict_art {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1/3;
    width: 94px;
    height: 94px;
}

#contents .prediction .c_predict_name {
    font-weight: 500;
    font-size: 18px;
}

#contents .prediction .c_predict_desc {
    font-weight: 400;
    font-size: 12px;
    line-height: normal;
}

#contents .prediction .c_heading-tertiary {
    margin: 30px 0 !important;
}

#contents .prediction .c_heading-tertiary::after {
    position: static;
    width: 100%;
    background-color: #828282;
}

#contents .prediction .c_predict_text {
    margin-bottom: 0;
    font-size: 16px;
    line-height: normal !important;
}

#contents .prediction .c_heading-quinary {
    margin-top: 19px;
    margin-bottom: 16px;
    font-weight: 700;
    font-size: 16px;
    text-align: left;
}

#contents .prediction__links {
    -ms-grid-columns: (1fr)[2];
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    max-width: 800px;
    margin: 42px auto 0;
    gap: 42px;
}

#contents .highlight {
    position: relative;
    /* padding: 125px 80px 183px; */
    /* background-image: url("../images/highlights-bg.png"); */
    /* background-position: center top; */
    /* background-size: cover; */
    /* background-repeat: no-repeat; */
    /* background-color: #beeef2; */
}

#contents .highlight__title {
    /* color: #006896; */
    font-weight: 700;
    /* font-size: 24px; */
    line-height: 1;
}

#contents .highlight__title span {
    /* -webkit-background-clip: text; */
    /* -webkit-text-fill-color: transparent; */
    /* display: block; */
    /* margin-bottom: 25px; */
    /* background: -webkit-gradient(linear, left top, left bottom, from(#415a90), to(#54cedb)); */
    /* background: linear-gradient(180deg, #415a90 0%, #54cedb 100%); */
    /* background-clip: text; */
    /* font-size: 120px; */
    font-family: "Inter", sans-serif;
}

#contents .highlight__desc {
    margin-top: 55px;
    font-weight: 400;
    font-size: 18px;
    line-height: 2;
}

#contents .highlight__text {
    position: absolute;
    top: 40px;
    right: 0;
    width: 208px;
}

#contents .highlight__bike {
    -webkit-transform: translateY(-50%);
    position: absolute;
    top: 28%;
    right: 0;
    width: calc(100% - 652px);
    transform: translateY(-50%);
}
