/*!
 * ress.css • v1.1.1
 * MIT License
 * github.com/filipelinhares/ress
 */
html {
    box-sizing: border-box;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased
}

html,
body {
    width: 100%;
    height: 100%
}

* {
    box-sizing: border-box
}

::before,
::after {
    text-decoration: inherit;
    vertical-align: inherit;
    box-sizing: inherit
}

* {
    background-repeat: no-repeat;
    padding: 0;
    margin: 0;
    backface-visibility: hidden
}

audio:not([controls]) {
    display: none;
    height: 0
}

hr {
    overflow: visible
}

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

summary {
    display: list-item
}

small {
    font-size: 80%
}

[hidden],
template {
    display: none
}

abbr[title] {
    border-bottom: 1px dotted;
    text-decoration: none
}

a {
    background-color: rgba(0, 0, 0, 0);
    -webkit-text-decoration-skip: objects
}

a:active,
a:hover {
    outline-width: 0
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace
}

b,
strong {
    font-weight: bolder
}

dfn {
    font-style: italic
}

mark {
    background-color: #ff0;
    color: #000
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

input {
    border-radius: 0
}

button,
[type=button],
[type=reset],
[type=submit] [role=button] {
    cursor: pointer
}

[disabled] {
    cursor: default
}

[type=number] {
    width: auto
}

[type=search] {
    -webkit-appearance: textfield
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

textarea {
    overflow: auto;
    resize: vertical
}

button,
input,
optgroup,
select,
textarea {
    font: inherit
}

optgroup {
    font-weight: bold
}

button {
    overflow: visible
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
    border-style: 0;
    padding: 0
}

button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
    outline: 1px dotted ButtonText
}

button,
html [type=button],
[type=reset],
[type=submit] {
    -webkit-appearance: button
}

button,
select {
    text-transform: none
}

button,
input,
select,
textarea {
    background-color: rgba(0, 0, 0, 0);
    border-style: none;
    color: inherit
}

select {
    -moz-appearance: none;
    -webkit-appearance: none
}

select::-ms-expand {
    display: none
}

select::-ms-value {
    color: currentColor
}

legend {
    border: 0;
    color: inherit;
    display: table;
    max-width: 100%;
    white-space: normal
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

img {
    border-style: none
}

progress {
    vertical-align: baseline
}

svg:not(:root) {
    overflow: hidden
}

audio,
canvas,
progress,
video {
    display: inline-block
}

@media screen {
    [hidden~=screen] {
        display: inherit
    }

    [hidden~=screen]:not(:active):not(:focus):not(:target) {
        position: absolute !important;
        clip: rect(0 0 0 0) !important
    }
}

[aria-busy=true] {
    cursor: progress
}

[aria-controls] {
    cursor: pointer
}

[aria-disabled] {
    cursor: default
}

::-moz-selection {
    background-color: #b3d4fc;
    color: #000;
    text-shadow: none
}

::selection {
    background-color: #b3d4fc;
    color: #000;
    text-shadow: none
}

li {
    list-style: none
}

table {
    border-collapse: separate;
    border-spacing: 0;
    cellspacing: 0
}

html,
body {
    font-family: YakuHanJP, "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal
}

* {
    box-sizing: border-box
}

html,
body {
    font-size: 10px;
    line-height: 1.4;
    letter-spacing: 0;
    scroll-behavior: smooth
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility
}

.pcNone {
    display: none !important
}

@media only screen and (max-width: 1040px) {
    .pcNone {
        display: block !important
    }
}

@media only screen and (max-width: 768px) {
    .pcNone {
        display: block !important
    }
}

@media only screen and (max-width: 1040px) {
    .tbNone {
        display: none
    }
}

@media only screen and (max-width: 768px) {
    .tbNone {
        display: block !important
    }
}

@media only screen and (max-width: 1040px) {
    .spNone {
        display: block !important
    }
}

@media only screen and (max-width: 768px) {
    .spNone {
        display: none !important
    }
}

.is-pc {
    display: block !important
}

@media only screen and (max-width: 1040px) {
    .is-pc {
        display: none !important
    }
}

@media only screen and (max-width: 768px) {
    .is-pc {
        display: none !important
    }
}

.is-tb {
    display: none !important
}

@media only screen and (max-width: 1040px) {
    .is-tb {
        display: block !important
    }
}

@media only screen and (max-width: 768px) {
    .is-tb {
        display: none !important
    }
}

.is-sp {
    display: none !important
}

@media only screen and (max-width: 1040px) {
    .is-sp {
        display: none !important
    }
}

@media only screen and (max-width: 768px) {
    .is-sp {
        display: block !important
    }
}

a {
    text-decoration: none;
    transition: .3s ease-out;
    outline: none
}

a:hover {
    text-decoration: none
}

a:visited,
a:active {
    outline: none
}

a img {
    transition: .3s ease-out;
    border-style: none;
    border: 0
}

img {
    -ms-interpolation-mode: bicubic;
    vertical-align: bottom;
    backface-visibility: hidden;
    width: 100%;
    height: auto
}

.innerArea {
    width: 1040px;
    margin: 0 auto;
    position: relative
}

@media only screen and (max-width: 1040px) {
    .innerArea {
        width: calc(100% - 40px)
    }
}

#common-header {
    background: #fff;
    padding: 15px 0
}

@media only screen and (max-width: 768px) {
    #common-header {
        padding: 7px 0
    }
}

#common-header .h-content {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-flow: row nowrap;
    align-items: center
}

@media only screen and (max-width: 768px) {
    #common-header .h-content {
        width: calc(100% - 20px)
    }
}

#common-header .h-content .logo {
    flex: 0 0 175px;
    margin-right: auto
}

@media only screen and (max-width: 768px) {
    #common-header .h-content .logo {
        flex: 0 0 120px
    }
}

#common-header .h-content .btn-list {
    flex: 1 1 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
    gap: 15px
}

@media only screen and (max-width: 768px) {
    #common-header .h-content .btn-list {
        gap: 7px
    }
}

#common-header .h-content .btn-list li a {
    display: inline-block;
    background: #ccc;
    font-size: clamp(1rem, .7272727273rem + .7272727273vw, 1.6rem);
    padding: .5em 1em;
    border-radius: 5px;
    font-weight: 700;
    color: #fff;
    height: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    align-items: center
}

@media only screen and (max-width: 768px) {
    #common-header .h-content .btn-list li a {
        padding: .5em .5em;
        display: block
    }
}

#common-header .h-content .btn-list li a::before {
    font-family: "Material Symbols Outlined";
    content: "";
    font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48;
    display: inline-block;
    font-size: 1.5em;
    vertical-align: middle;
    position: relative;
    top: -0.03em;
    margin-right: .2em
}

@media only screen and (max-width: 768px) {
    #common-header .h-content .btn-list li a::before {
        display: block;
        margin: 0 auto 3px;
        text-align: center
    }
}

#common-header .h-content .btn-list li.register a {
    background: #d9b53f
}

#common-header .h-content .btn-list li.register a::before {
    content: ""
}

#common-header .h-content .btn-list li.login a {
    background: #d9b53f
}

#common-header .h-content .btn-list li.login a::before {
    content: ""
}

#common-header .h-content .btn-list li.bet a {
    background: #ffe100;
    color: #000
}

@media only screen and (max-width: 768px) {
    #common-header .h-content .btn-list li.bet a {
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: 1.6rem;
        padding: .5em 20px
    }
}

#common-header .h-content .btn-list li.bet a::before {
    content: none;
    display: none
}

#footer {
    background: #000;
    padding: 50px 20px;
    text-align: center;
    color: #fff
}

#footer .footer-link-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    gap: 15px
}

@media only screen and (max-width: 768px) {
    #footer .footer-link-list {
        flex-flow: column wrap;
        gap: 15px
    }
}

#footer .footer-link-list>li a {
    font-size: clamp(1.3rem, 1.2545454545rem + .1212121212vw, 1.4rem);
    color: #fff
}

#footer .footer-link-list>li a:hover {
    text-decoration: underline
}

#footer .oddstoplink {
    display: block;
    max-width: 250px;
    margin: 30px auto;
    font-size: clamp(1.3rem, 1.2545454545rem + .1212121212vw, 1.4rem);
    font-weight: 700;
    border: 1px solid #fff;
    padding: .8em 0;
    text-align: center;
    border-radius: 3em;
    color: #fff;
    position: relative
}

#footer .oddstoplink::after {
    font-family: "Material Symbols Outlined";
    content: "";
    font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 48;
    display: block;
    font-size: 1.5em;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%)
}

#footer .footer-lead {
    font-size: clamp(1.4rem, 1.1272727273rem + .7272727273vw, 2rem);
    line-height: 1.6;
    font-weight: 700;
    color: #ffe100;
    margin-bottom: 20px
}

#footer .footer-lead a {
    color: inherit
}

#footer .footer-annote {
    font-size: clamp(1.3rem, 1.2545454545rem + .1212121212vw, 1.4rem);
    font-weight: 700;
    line-height: 1.6;
    margin-bottom: 20px
}

#footer .copyright {
    font-size: clamp(1.1rem, 1.0545454545rem + .1212121212vw, 1.2rem);
    font-weight: 500
}

html,
body {
    background: #000;
    color: #fff
}

#main-wrapper {
    background-image: url("../images/kv_bg.webp");
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center top;
    padding: 40px 0 20px
}

@media only screen and (max-width: 768px) {
    #main-wrapper {
        background-image: url("../images/kv_bg_sp.webp");
        width: 100vw;
        overflow-x: hidden;
        padding: 20px 0 50px
    }
}

.btn-gold {
    display: block;
    max-width: 770px;
    margin: 0 auto;
    text-align: center;
    background: linear-gradient(360deg, #d9b53f 0%, #5b4910 100%);
    border-radius: 9999px;
    padding: 3px
}

.btn-gold a {
    text-decoration: none;
    display: block;
    width: 100%;
    height: 100%;
    font-size: clamp(1.6rem, 1.5090909091rem + .2424242424vw, 1.8rem);
    color: #fff;
    font-weight: 700;
    text-shadow: 0px 0px 5px rgba(0, 0, 0, .25);
    padding: 20px;
    background: #fff;
    border-radius: 9999px;
    text-align: center;
    background: linear-gradient(180deg, #d9b53f 0%, #503e00 100%);
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 3.5em
}

.btn-gold a:hover {
    opacity: .8
}

.btn-gold a .sText {
    font-size: .8em;
    display: block
}

.btn-outline {
    display: block;
    max-width: 400px;
    margin: 0 auto
}

.btn-outline a {
    display: block;
    width: 100%;
    padding: 1em .5em;
    text-align: center;
    font-size: clamp(1.6rem, 1.5090909091rem + .2424242424vw, 1.8rem);
    color: #fff;
    font-weight: 700;
    border: 1px solid #fff;
    border-radius: 9999px
}

.text-link {
    color: inherit;
    text-decoration: underline;
    word-break: break-all
}

.kv-logo-set {
    max-width: 500px;
    margin: 0 auto 20px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-flow: row nowrap;
    gap: 52px;
    justify-content: center;
    align-items: center;
    position: relative
}

@media only screen and (max-width: 768px) {
    .kv-logo-set {
        width: calc(100% - 60px);
        gap: 30px
    }
}

.kv-logo-set::before {
    content: "";
    display: block;
    width: 40px;
    aspect-ratio: 1/1;
    background-image: url("../images/h_logo_x.webp");
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

@media only screen and (max-width: 768px) {
    .kv-logo-set::before {
        width: 20px
    }
}

.kv-logo-set .logo {
    width: calc((100% - 52px)/2)
}

@media only screen and (max-width: 768px) {
    .kv-logo-set .logo {
        width: calc((100% - 30px)/2)
    }
}

.kv-logo-set .logo.logo-777 {
    padding-right: 20px
}

@media only screen and (max-width: 768px) {
    .kv-logo-set .logo.logo-777 {
        padding-right: 10px
    }
}

.kv-logo-set .logo.logo-odds {
    padding-left: 20px
}

@media only screen and (max-width: 768px) {
    .kv-logo-set .logo.logo-odds {
        padding-left: 10px
    }
}

.kv-logo {
    max-width: 500px;
    margin: 0 auto 20px
}

@media only screen and (max-width: 768px) {
    .kv-logo {
        max-width: 80vw;
        margin: 0 auto 5px
    }
}

.kv-title {
    max-width: 1104px;
    margin: 0 auto 0
}

@media only screen and (max-width: 768px) {
    .kv-title {
        max-width: calc(100vw - 20px);
        margin: 0 auto 0
    }
}

#sec-intro {
    margin: -20px auto 100px;
    text-align: center
}

@media only screen and (max-width: 768px) {
    #sec-intro {
        margin: 50px auto 50px;
        padding: 0 20px
    }
}

#sec-intro .event-period {
    max-width: 770px;
    margin: 0 auto;
    background: #000;
    border: 3px solid #d9b53f;
    padding: 10px
}

#sec-intro .event-period dt {
    font-size: clamp(1.6rem, 1.4181818182rem + .4848484848vw, 2rem);
    font-weight: 700;
    color: #d9b53f;
    margin-bottom: 10px
}

#sec-intro .event-period dd {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-flow: row nowrap;
    gap: 10px
}

#sec-intro .event-period dd .part {
    width: calc((100% - 10px*(2 - 1))/2);
    background: #fff;
    font-size: clamp(1.4rem, 1.1272727273rem + .7272727273vw, 2rem);
    font-weight: 700;
    color: #000;
    padding: 10px
}

#sec-intro .btn-set {
    margin-top: 30px
}

#sec-intro .btn-set .btn-gold {
    margin-bottom: 15px
}

.sec-maincontent {
    margin-top: 100px
}

.sec-maincontent .contents {
    position: relative;
    text-align: center;
    padding: 50px;
    background: #000;
    border: 10px solid rgba(0, 0, 0, 0);
    -o-border-image: linear-gradient(120deg, rgb(155, 112, 33) 0%, rgb(230, 196, 69) 40%, rgb(155, 112, 33) 100%);
    border-image: linear-gradient(120deg, rgb(155, 112, 33) 0%, rgb(230, 196, 69) 40%, rgb(155, 112, 33) 100%);
    border-image-slice: 1
}

@media only screen and (max-width: 768px) {
    .sec-maincontent .contents {
        padding: 20px
    }
}

.sec-maincontent .contents .lights {
    width: 216px;
    position: absolute;
    mix-blend-mode: screen;
    z-index: 1
}

.sec-maincontent .contents .lights.left {
    top: 0;
    left: 0;
    transform: translate(-50%, -50%)
}

.sec-maincontent .contents .lights.right {
    top: 40px;
    right: 0;
    transform: translate(50%, -50%)
}

.sec-maincontent .contents .sec-badge {
    width: 180px;
    position: absolute;
    top: 0;
    left: 20px;
    z-index: 2;
    transform: translateY(-30%)
}

@media only screen and (max-width: 768px) {
    .sec-maincontent .contents .sec-badge {
        width: 70px;
        left: -20px;
        top: -20px
    }
}

.sec-maincontent .contents .title-block {
    margin-bottom: 30px
}

.sec-maincontent .contents .title-block .sec-title {
    font-size: clamp(3.4rem, 2.6727272727rem + 1.9393939394vw, 5rem);
    font-weight: 900;
    color: #d9b53f;
    margin-bottom: .5em
}

.sec-maincontent .contents .title-block .sec-lead {
    font-size: clamp(1.5rem, 1.0909090909rem + 1.0909090909vw, 2.4rem);
    font-weight: 700;
    margin-bottom: 20px
}

.sec-maincontent .contents .title-block .prize-lead {
    color: #d9b53f;
    font-size: clamp(1.3rem, .8rem + 1.3333333333vw, 2.4rem);
    font-weight: 900
}

.sec-maincontent .contents .title-block .prize-title-main {
    color: #d9b53f;
    font-size: clamp(2.7rem, 1.2rem + 4vw, 6rem);
    font-weight: 900
}

.sec-maincontent .contents .title-block .prize-title-sub {
    color: #d9b53f;
    font-size: clamp(1.8rem, 1.0272727273rem + 2.0606060606vw, 3.5rem);
    font-weight: 900
}

.sec-maincontent .contents .title-block .prize-title-sub.big {
    font-size: clamp(2.7rem, 1.2rem + 4vw, 6rem)
}

.sec-maincontent .contents .title-block .prize-title-sub.plus::before {
    content: "+";
    display: block;
    margin: 0 auto;
    color: #d9b53f;
    font-size: clamp(1.8rem, 1.0272727273rem + 2.0606060606vw, 3.5rem);
    font-weight: 900;
    line-height: 1
}

.sec-maincontent .contents .title-block .prize-annote {
    font-size: clamp(1.2rem, 1.2rem + 0vw, 1.2rem);
    margin-top: 20px
}

@media only screen and (max-width: 768px) {
    .sec-maincontent .contents .title-block .prize-annote {
        text-align: center
    }
}

.sec-maincontent .contents .cp-detail-list>.item {
    margin-bottom: 30px
}

.sec-maincontent .contents .cp-detail-list>.item:last-child {
    margin-bottom: 0
}

.sec-maincontent .contents .cp-detail-list>.item>dt {
    background: #d00000;
    color: #fff;
    font-size: clamp(1.4rem, 1.2181818182rem + .4848484848vw, 1.8rem);
    font-weight: 700;
    padding: .3em;
    margin-bottom: 10px
}

.sec-maincontent .contents .cp-detail-list>.item>dd {
    font-size: clamp(1.4rem, 1.1272727273rem + .7272727273vw, 2rem);
    font-weight: 700;
    color: #d9b53f
}

.sec-maincontent .contents .cp-detail-list>.item>dd .annote {
    color: #fff;
    font-size: clamp(1.1rem, .9636363636rem + .3636363636vw, 1.4rem);
    font-weight: 400;
    line-height: 1.7
}

@media only screen and (max-width: 768px) {
    .sec-maincontent .contents .cp-detail-list>.item>dd .annote {
        text-align: justify
    }
}

.sec-maincontent .contents .cp-detail-list>.item.condition .condition-list {
    margin: 15px auto
}

.sec-maincontent .contents .cp-detail-list>.item.condition .condition-list li {
    color: #fff;
    margin-bottom: 20px;
    font-size: clamp(1.6rem, 1.4181818182rem + .4848484848vw, 2rem)
}

@media only screen and (max-width: 768px) {
    .sec-maincontent .contents .cp-detail-list>.item.condition .condition-list li {
        text-align: justify
    }
}

.sec-maincontent .contents .cp-detail-list>.item.condition .condition-list li:last-child {
    margin-bottom: 0
}

.sec-maincontent .contents .cp-detail-list>.item.condition .condition-list li .annote {
    margin-top: 10px;
    font-weight: 400
}

.sec-maincontent .contents .cp-detail-info {
    border: 1px solid #fff;
    margin-top: 30px;
    padding: 30px;
    text-align: left
}

@media only screen and (max-width: 768px) {
    .sec-maincontent .contents .cp-detail-info {
        padding: 15px
    }
}

.sec-maincontent .contents .cp-detail-info>.item {
    margin-bottom: 25px;
    line-height: 1.7
}

.sec-maincontent .contents .cp-detail-info>.item.top-border {
    border-top: 1px dashed #fff;
    padding-top: 20px
}

.sec-maincontent .contents .cp-detail-info>.item:last-child {
    margin-bottom: 0
}

.sec-maincontent .contents .cp-detail-info>.item dt {
    font-size: clamp(1.4rem, 1.3545454545rem + .1212121212vw, 1.5rem);
    font-weight: 700;
    margin-bottom: .3em
}

.sec-maincontent .contents .cp-detail-info>.item dd {
    font-size: clamp(1.2rem, 1.1090909091rem + .2424242424vw, 1.4rem);
    font-weight: 400
}

#sec-1st .cp-detail-list .prize-list {
    margin-top: 30px;
    margin-bottom: 20px;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-flow: row nowrap;
    align-items: stretch;
    gap: 30px
}

@media only screen and (max-width: 768px) {
    #sec-1st .cp-detail-list .prize-list {
        flex-flow: column wrap;
        gap: 40px
    }
}

#sec-1st .cp-detail-list .prize-list .item {
    width: calc((100% - 20px*(3 - 1))/3);
    border: 5px solid #d9b53f;
    font-size: clamp(1.4rem, 1.4rem + 0vw, 1.4rem);
    position: relative;
    display: flex;
    flex-direction: column
}

@media only screen and (max-width: 768px) {
    #sec-1st .cp-detail-list .prize-list .item {
        width: calc((100% - 0px*(1 - 1))/1)
    }
}

#sec-1st .cp-detail-list .prize-list .item>dt {
    background: #d00000;
    color: #fff;
    font-size: clamp(1.6rem, 1.6rem + 0vw, 1.6rem);
    font-weight: 700;
    padding: .3em .8em;
    border-radius: 3em;
    display: inline-block;
    position: absolute;
    top: -0.8em;
    left: -20px
}

#sec-1st .cp-detail-list .prize-list .item>dd {
    display: flex;
    flex-direction: column;
    flex-grow: 1
}

#sec-1st .cp-detail-list .prize-list .item>dd ul {
    text-align: center;
    padding: 10px;
    position: relative
}

#sec-1st .cp-detail-list .prize-list .item>dd ul>li .image {
    width: 90px;
    margin: 10px auto 0
}

#sec-1st .cp-detail-list .prize-list .item>dd ul.playodds {
    border-bottom: 5px solid #d9b53f
}

#sec-1st .cp-detail-list .prize-list .item>dd ul.playodds::before {
    content: "";
    display: block;
    margin: 0 auto 5px;
    width: 65px;
    aspect-ratio: 65/38;
    background: url("../images/prize_logo_olayodds.webp") no-repeat center center;
    background-size: contain
}

#sec-1st .cp-detail-list .prize-list .item>dd ul.threeseventown {
    flex-grow: 1;
    padding-top: 20px
}

@media only screen and (max-width: 768px) {
    #sec-1st .cp-detail-list .prize-list .item>dd ul.threeseventown {
        min-height: 80px
    }
}

#sec-1st .cp-detail-list .prize-list .item>dd ul.threeseventown::before {
    content: "";
    display: block;
    margin: 0 auto 10px;
    width: 65px;
    aspect-ratio: 65/50;
    background: url("../images/prize_logo_777town.webp") no-repeat center center;
    background-size: contain
}

#sec-2nd .cp-detail-list .prize-item {
    border: 5px solid #d9b53f;
    max-width: 250px;
    margin: 20px auto 0;
    padding: 20px
}

#sec-2nd .cp-detail-list .prize-item::before {
    content: "";
    display: block;
    margin: 0 auto 5px;
    width: 65px;
    aspect-ratio: 65/38;
    background: url("../images/prize_logo_olayodds.webp") no-repeat center center;
    background-size: contain
}

#sec-2nd .cp-detail-list .prize-item .image {
    width: 90px;
    margin: 10px auto 0
}

#faq-btn {
    padding: 50px 0
}

@media only screen and (max-width: 768px) {
    #faq-btn {
        padding: 50px 20px
    }
}

#sec-text .sec-text-title {
    font-size: clamp(1.8rem, 1.8rem + 0vw, 1.8rem);
    text-align: center;
    font-weight: 700;
    background: hsla(0, 0%, 100%, .3);
    color: #fff;
    padding: .4em;
    margin-bottom: 20px
}

#sec-text .info-block {
    border: 1px solid #fff;
    padding: 20px 40px;
    margin-bottom: 30px
}

@media only screen and (max-width: 768px) {
    #sec-text .info-block {
        padding: 20px
    }
}

#sec-text .info-block .sec-title {
    border-bottom: 1px solid #fff;
    margin-bottom: 20px;
    font-size: clamp(1.8rem, 1.6181818182rem + .4848484848vw, 2.2rem);
    text-align: center;
    font-weight: 700;
    padding-bottom: 20px
}

#sec-text .info-block p,
#sec-text .info-block dl,
#sec-text .info-block dt,
#sec-text .info-block dd {
    font-size: clamp(1.4rem, 1.4rem + 0vw, 1.4rem);
    line-height: 1.7;
    color: #fff
}

#sec-text .info-block a {
    color: inherit;
    text-decoration: underline
}

#sec-text .info-block .sec-cont-list .item {
    margin-bottom: 30px
}

#sec-text .info-block .sec-cont-list .item dt {
    font-size: clamp(1.5rem, 1.5rem + 0vw, 1.5rem);
    font-weight: 700;
    margin-bottom: 5px
}

#sec-text .info-block .sec-cont-list .item dd {
    font-weight: 400
}

#sec-text .game-start-banner {
    max-width: 300px;
    margin: 20px auto 0;
    text-align: center
}

@media only screen and (max-width: 768px) {
    #sec-text .game-start-banner {
        width: 100%
    }
}

#sec-text .game-start-banner .title {
    font-size: clamp(1.4rem, 1.4rem + 0vw, 1.4rem);
    font-weight: 700;
    margin-bottom: 10px
}

#sec-text .game-start-banner a {
    display: block;
    border: 1px solid #ccc
}

#what-oddspark {
    text-align: center
}

#what-oddspark p.base {
    font-size: clamp(1.4rem, 1.4rem + 0vw, 1.4rem)
}

#what-oddspark p.main {
    font-size: clamp(1.6rem, 1.3272727273rem + .7272727273vw, 2.2rem);
    font-weight: 900
}

#what-oddspark p.annote {
    font-size: clamp(1.2rem, 1.2rem + 0vw, 1.2rem)
}

#what-oddspark figure {
    display: block;
    width: 275px;
    margin: 20px auto 0
}

#what-oddspark figure figcaption {
    margin-top: 7px;
    font-size: clamp(1.4rem, 1.4rem + 0vw, 1.4rem)
}

.f-btn-set {
    margin-top: 50px
}

.f-btn-set .btn-gold {
    margin-bottom: 15px
}

.f-btn-set .btn-outline {
    margin-top: 50px
}


.sec-maincontent .contents-apology {
    position: relative;
    text-align: center;
    background: #000;
    border: 10px solid rgba(0, 0, 0, 0);
    border-image-slice: 1;
    margin-top: -100px;
    padding: 0 8%;
}

@media only screen and (max-width: 768px) {
    .sec-maincontent .contents-apology {
        padding: 0
    }
}

.sec-maincontent .contents-apology .title-block {
    margin-bottom: 30px
}

.sec-maincontent .contents-apology .cp-detail-info {
    border: 2px solid #ff0000;
    margin-top: 30px;
    padding: 30px;
    text-align: left
}

@media only screen and (max-width: 768px) {
    .sec-maincontent .contents-apology .cp-detail-info {
        padding: 15px
    }
}

.sec-maincontent .contents-apology .cp-detail-info>.item {
    margin-bottom: 25px;
    line-height: 1.7
}

.sec-maincontent .contents-apology .cp-detail-info>.item.top-border {
    border-top: 1px dashed #fff;
    padding-top: 20px
}

.sec-maincontent .contents-apology .cp-detail-info>.item:last-child {
    margin-bottom: 0
}

.sec-maincontent .contents-apology .cp-detail-info>.item dt {
    font-size: clamp(1.4rem, 1.3545454545rem + .1212121212vw, 1.5rem);
    font-weight: 700;
    margin-bottom: .3em;
    color: #fff;
}

.sec-maincontent .contents-apology .cp-detail-info>.item dt:not(:first-child) {
    margin-top: 20px;
}



.sec-maincontent .contents-apology .cp-detail-info>.item dd {
    font-size: clamp(1.2rem, 1.1090909091rem + .2424242424vw, 1.4rem);
    font-weight: 400
}