@charset "UTF-8";
/* ---------------------------------------------
*   l-breadcrumb
--------------------------------------------- */
.l-breadcrumb {
    line-height: 1;
}
.l-breadcrumb__list {
    padding-block: 14px;
    display: flex;
    font-size: 0;
    overflow-x: auto;
    flex-wrap: wrap;
    scrollbar-width: none;
}
@media screen and (max-width: 992px) {
    .l-breadcrumb__list {
        flex-wrap: unset;
    }
}
.l-breadcrumb__list::-webkit-scrollbar {
    display: none;
}
.l-breadcrumb__item {
    display: flex;
    align-items: center;
}
.l-breadcrumb__item:not(:first-of-type)::before {
    content: "";
    display: block;
    width: 5px;
    height: 10px;
    margin-inline: 6px;
    background-color: #757577;
    -webkit-mask: url(/assets/img/common/icon_chevron_right.svg) 0 0/100% 100% no-repeat;
            mask: url(/assets/img/common/icon_chevron_right.svg) 0 0/100% 100% no-repeat;
    flex-shrink: 0;
}
.l-breadcrumb__txt {
    position: relative;
    top: -0.05em;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    color: #757577;
    font-size: 0.7333333333rem;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .l-breadcrumb__txt {
        white-space: nowrap;
    }
}
@media screen and (min-width: 993px) {
    .l-breadcrumb__txt:not([href]) {
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
}
.l-breadcrumb__txt[href] {
    color: #404045;
}
@media (hover: hover) and (pointer: fine) {
    .l-breadcrumb__txt[href]:hover {
        text-decoration: underline;
    }
}
@media screen and (min-width: 993px) {
    .l-breadcrumb__txt[href] {
        white-space: nowrap;
    }
}

/* ---------------------------------------------
*   column
--------------------------------------------- */
/*  l-column (大会)
--------------------------------------------- */
.l-column {
    display: grid;
    grid-template-columns: auto 200px;
    -moz-column-gap: 40px;
         column-gap: 40px;
}
@media screen and (max-width: 992px) {
    .l-column {
        display: block;
    }
}
@media screen and (min-width: 993px) {
    .l-column__main {
        position: relative;
        padding-right: 40px;
        overflow-x: hidden;
    }
    .l-column__main::after {
        position: absolute;
        top: 0;
        right: 0;
        content: "";
        width: 1px;
        height: 100%;
        background-color: #EFEFEF;
    }
}
.l-column__sidebar {
    position: sticky;
    top: calc(var(--sub-navi-height) * 1px);
    height: -moz-fit-content;
    height: fit-content;
    max-height: calc(100dvh - var(--sub-navi-height) * 1px);
    padding-bottom: var(--0_5gap);
    overflow-y: auto;
    scrollbar-width: none;
}
.l-column__sidebar::-webkit-scrollbar {
    display: none;
}

/*  l-column-2 (静的ページ)
--------------------------------------------- */
.l-column-2 {
    display: grid;
    grid-template-columns: 25% auto;
}
@media screen and (max-width: 992px) {
    .l-column-2 {
        display: flex;
        flex-direction: column-reverse;
    }
}
@media screen and (min-width: 993px) {
    .l-column-2__main {
        overflow-x: hidden;
        position: relative;
        padding-top: 52px;
        padding-bottom: var(--3gap);
        padding-inline: 6.25%;
    }
    .l-column-2__main::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 1px;
        height: 100%;
        background-color: #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .l-column-2__main {
        padding-bottom: 48px;
    }
}
.l-column-2__main-inner {
    margin-inline: auto;
    max-width: 720px;
}
@media screen and (max-width: 992px) {
    .l-column-2__main-inner {
        max-width: initial;
        padding-inline: 0;
    }
}
.old-column .l-column-2__main-inner {
    margin-inline: auto;
}
@media screen and (min-width: 993px) {
    .l-column-2__sidebar {
        position: sticky;
        top: calc(var(--sub-navi-height) * 1px);
        height: -moz-fit-content;
        height: fit-content;
        max-height: calc(100dvh - var(--sub-navi-height) * 1px);
        margin-top: 56px;
        padding-right: 18.75%;
        padding-bottom: 100px;
        overflow-y: auto;
        scrollbar-width: none;
        flex-shrink: 0;
    }
    .l-column-2__sidebar::-webkit-scrollbar {
        display: none;
    }
}

/* ---------------------------------------------
*   container
--------------------------------------------- */
/*  l-container
--------------------------------------------- */
.l-container {
    width: 100%;
    max-width: 1320px;
    margin-inline: auto;
    padding-inline: 20px;
}
@media screen and (max-width: 992px) {
    .l-container {
        padding-inline: 16px;
    }
}
@media screen and (max-width: 992px) {
    .l-container--sp-none {
        padding-inline: 0;
    }
}

/*  l-container-lg
--------------------------------------------- */
.l-container-lg {
    width: 100%;
    max-width: 1032px;
    margin-inline: auto;
    padding-inline: 20px;
}
@media screen and (max-width: 992px) {
    .l-container-lg {
        padding-inline: 16px;
    }
}
@media screen and (max-width: 992px) {
    .l-container-lg--sp-none {
        padding-inline: 0;
    }
}

/*  l-container-md
--------------------------------------------- */
.l-container-md {
    width: 100%;
    max-width: 807.98px;
    margin-inline: auto;
    padding-inline: 20px;
}
@media screen and (max-width: 992px) {
    .l-container-md {
        padding-inline: 16px;
    }
}
@media screen and (max-width: 992px) {
    .l-container-md--sp-none {
        padding-inline: 0;
    }
}

/*  l-container-sp
--------------------------------------------- */
@media screen and (max-width: 992px) {
    .l-container-sp {
        width: 100%;
        padding-inline: 16px;
    }
}

/*  l-container-pc
--------------------------------------------- */
@media screen and (min-width: 993px) {
    .l-container-pc {
        width: 100%;
        max-width: 1320px;
        margin-inline: auto;
        padding-inline: 20px;
    }
}

/*  l-container-w720
--------------------------------------------- */
.l-container-w720 {
    width: 100%;
    max-width: 760px;
    margin-inline: auto;
    padding-inline: 20px;
}
@media screen and (max-width: 992px) {
    .l-container-w720 {
        padding-inline: 16px;
    }
}
@media screen and (max-width: 992px) {
    .l-container-w720--sp-wide {
        max-width: initial;
    }
}
@media screen and (max-width: 992px) {
    .l-container-w720--sp-none {
        max-width: initial;
        padding-inline: 0;
    }
}

/*  l-container-custom
--------------------------------------------- */
.l-container-custom {
    width: 100%;
    max-width: calc((var(--max-width) + 40) * 1px);
    margin-inline: auto;
    padding-inline: 20px;
}
@media screen and (max-width: 992px) {
    .l-container-custom {
        padding-inline: 16px;
    }
}
@media screen and (max-width: 992px) {
    .l-container-custom--sp-wide {
        max-width: initial;
    }
}
@media screen and (max-width: 992px) {
    .l-container-custom--sp-none {
        max-width: initial;
        padding-inline: 0;
    }
}
.l-container-custom--no-side-padding {
    padding-inline: 0;
}

/*  l-container-fixed-bottom
--------------------------------------------- */
.l-container-fixed-bottom {
    position: fixed;
    background: #fff;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 8;
    padding: var(--1gap);
    display: flex;
    gap: var(--1gap);
    justify-content: center;
}
@media screen and (max-width: 992px) {
    .l-container-fixed-bottom {
        background-color: transparent;
        gap: 9px;
    }
}

/* ---------------------------------------------
*   contents
--------------------------------------------- */
/*  l-contents
--------------------------------------------- */
.l-contents {
    flex: 1 1 auto;
}
.l-contents--border-top {
    border-top: 8px solid #F0252D;
}
@media screen and (max-width: 992px) {
    .l-contents--border-top {
        border-width: 7px;
    }
}

/*  .l-contents-2 (新規会員登録＆ログイン画面用)
--------------------------------------------- */
.l-contents-2 {
    padding-bottom: var(--3gap);
}

/* ---------------------------------------------
*   l-drawer
--------------------------------------------- */
.l-drawer {
    --drawer-head-height: 60;
    position: fixed;
    inset: 0;
    z-index: 1;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}
@media screen and (min-width: 993px) {
    .is-menu-opened .l-drawer {
        opacity: 1;
        visibility: visible;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer {
        --drawer-head-height: 50;
        opacity: 1;
    }
    .is-menu-opened .l-drawer {
        visibility: visible;
    }
}
.l-drawer__overlay {
    display: none;
}
@media screen and (max-width: 992px) {
    .l-drawer__overlay {
        position: absolute;
        inset: 0;
        display: block;
        background-color: rgba(0, 0, 0, 0.3);
        opacity: 0;
        transition: opacity 0.3s;
    }
    .is-menu-opened .l-drawer__overlay {
        opacity: 1;
    }
}
.l-drawer__inner {
    position: relative;
    display: grid;
    grid-template-columns: auto min(28.125%, 540px);
    background-color: #fff;
}
@media screen and (max-width: 992px) {
    .l-drawer__inner {
        display: block;
        width: calc(100% - 48px);
    }
}
@media screen and (max-width: 992px) and (max-width: 992px) {
    .l-drawer__inner {
        transform: translateX(-100%);
        transition: opacity 0.3s, visibility 0.3s, transform 0.3s;
        will-change: transform;
    }
    .is-menu-opened .l-drawer__inner {
        transform: translateX(0%);
    }
}
.l-drawer__contents {
    padding-right: var(--1gap);
}
@media screen and (max-width: 992px) {
    .l-drawer__contents {
        padding-right: 0;
    }
}
.l-drawer__head {
    display: flex;
    align-items: center;
    height: calc(var(--drawer-head-height) * 1px);
}
.l-drawer__head-btn {
    display: grid;
    place-content: center;
    width: 60px;
    height: 60px;
    margin-left: 5px;
}
@media (hover: hover) and (pointer: fine) {
    .l-drawer__head-btn {
        transition: opacity 300ms;
    }
    .l-drawer__head-btn:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer__head-btn {
        display: none;
    }
}
.l-drawer__head-btn::before {
    content: "";
    display: block;
    width: 20px;
    height: 2.5px;
    background-color: #000;
}
.l-drawer__head-btn-sp {
    display: none;
}
@media screen and (max-width: 992px) {
    .l-drawer__head-btn-sp {
        display: grid;
        place-content: center;
        width: calc(var(--drawer-head-height) * 1px);
        height: calc(var(--drawer-head-height) * 1px);
        margin-left: auto;
    }
}
@media screen and (max-width: 992px) and (hover: hover) and (pointer: fine) {
    .l-drawer__head-btn-sp {
        transition: opacity 300ms;
    }
    .l-drawer__head-btn-sp:hover {
        opacity: 0.8;
    }
}
.l-drawer__head-btn-sp::before {
    content: "";
    display: block;
    width: 20px;
    height: 2.5px;
    background-color: #000;
}
@media screen and (max-width: 992px) {
    .l-drawer__head-btn-sp::before {
        width: 16px;
        height: 2px;
    }
}
.l-drawer__head-logo {
    display: block;
    width: 242px;
    margin-left: 15px;
}
@media (hover: hover) and (pointer: fine) {
    .l-drawer__head-logo {
        transition: opacity 300ms;
    }
    .l-drawer__head-logo:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer__head-logo {
        width: 174px;
    }
}
.l-drawer__head-logo img {
    width: 100%;
}
.l-drawer__body {
    display: flex;
    flex-direction: column;
    height: calc(100dvh - var(--drawer-head-height) * 1px);
    padding-bottom: 70px;
    padding-left: 80px;
    overflow-y: auto;
    scrollbar-width: none;
}
.l-drawer__body::-webkit-scrollbar {
    display: none;
}
@media screen and (max-width: 1400px) {
    .l-drawer__body {
        padding-left: 40px;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer__body {
        padding-inline: var(--1gap);
        padding-bottom: 48px;
    }
}
.l-drawer__body-main {
    padding-block: 40px;
}
@media screen and (max-width: 992px) {
    .l-drawer__body-main {
        padding-block: 0 var(--2gap);
    }
}
.l-drawer__sub-nav {
    display: flex;
    flex-wrap: wrap;
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .l-drawer__sub-nav {
        display: block;
    }
}
.l-drawer__sub-nav-item-link {
    display: flex;
    align-items: center;
    -moz-column-gap: 11px;
         column-gap: 11px;
    padding-right: 9.5px;
    font-size: 1.125rem;
    font-weight: bold;
}
@media (hover: hover) and (pointer: fine) {
    .l-drawer__sub-nav-item-link {
        transition: opacity 300ms;
    }
    .l-drawer__sub-nav-item-link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer__sub-nav-item-link {
        font-size: 1rem;
    }
}
.l-drawer__sub-nav-item-link::after {
    content: "";
    display: block;
    width: 8px;
    height: 15px;
    margin-top: 0.1em;
    -webkit-mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
    background-color: #000;
}
.l-drawer__sub-nav-item-link .small {
    position: relative;
    top: 0.1em;
    font-size: 0.8em;
}
.l-drawer__nav {
    --col: 6;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--2gap) var(--1gap);
    margin-top: var(--2gap);
}
@media screen and (max-width: 1400px) {
    .l-drawer__nav {
        --col: 3;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer__nav {
        display: block;
        margin-top: 0;
    }
}
@media screen and (min-width: 993px) {
    .l-drawer__nav-item {
        display: grid;
        grid-template-rows: subgrid;
        grid-row: span 2;
        gap: 0;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer__nav-item {
        border-bottom: 1px solid #EFEFEF;
    }
}
.l-drawer__nav-item-ttl {
    color: inherit;
}
@media screen and (min-width: 993px) {
    .l-drawer__nav-item-ttl {
        display: contents;
        cursor: text;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer__nav-item-ttl {
        position: relative;
        width: 100%;
        text-align: left;
    }
}
.l-drawer__nav-item-ttl-txt {
    padding-bottom: 10px;
    border-bottom: 1px solid #EFEFEF;
    font-size: 1.1875rem;
    font-weight: bold;
    line-height: 1.54;
    text-align: left;
}
@media screen and (max-width: 992px) {
    .l-drawer__nav-item-ttl-txt {
        display: block;
        width: 100%;
        padding: 11px 2em 12px 0;
        border: none;
        font-size: 1rem;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer__nav-item-ttl-txt .small {
        padding-left: 0.8em;
        font-size: 0.8666666667em;
    }
}
.l-drawer__nav-item-ttl-icon {
    display: none;
}
@media screen and (max-width: 992px) {
    .l-drawer__nav-item-ttl-icon {
        position: absolute;
        top: 50%;
        right: 2px;
        transform: translateY(-50%);
        display: block;
        width: 12px;
        height: 12px;
    }
}
.l-drawer__nav-item-ttl-icon::before, .l-drawer__nav-item-ttl-icon::after {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    display: block;
    background-color: #000;
}
.l-drawer__nav-item-ttl-icon::before {
    width: 100%;
    height: 1px;
}
.l-drawer__nav-item-ttl-icon::after {
    width: 1px;
    height: 100%;
}
.is-open .l-drawer__nav-item-ttl-icon::after {
    display: none;
}

.l-drawer__nav-lv2 {
    margin-top: 13px;
}
@media screen and (max-width: 992px) {
    .l-drawer__nav-lv2 {
        margin-top: 0;
        padding-block: 8px 27px;
    }
}
.l-drawer__nav-lv2-item:not(:first-of-type) {
    margin-top: var(--0_5gap);
}
@media screen and (max-width: 992px) {
    .l-drawer__nav-lv2-item:not(:first-of-type) {
        margin-top: var(--1gap);
    }
}
.l-drawer__nav-lv2-link {
    font-size: 0.875rem;
    font-weight: 500;
}
@media (hover: hover) and (pointer: fine) {
    .l-drawer__nav-lv2-link:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer__nav-lv2-link {
        display: block;
        font-size: 0.8666666667rem;
        font-weight: normal;
        padding-left: 0.4em;
        text-indent: -0.4em;
    }
    .l-drawer__nav-lv2-link::before {
        content: "-";
        margin-right: 0.1em;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer__nav-lv2-link--sp-main {
        padding-left: 0;
        text-indent: 0;
        font-weight: 500;
    }
    .l-drawer__nav-lv2-link--sp-main::before {
        display: none;
    }
}
.l-drawer__search-box {
    max-width: 413px;
    margin-top: 40px;
}
@media screen and (max-width: 992px) {
    .l-drawer__search-box {
        max-width: initial;
        margin-top: 17px;
    }
}
.l-drawer__body-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--2gap) var(--3gap);
    padding-block: 40px;
    border-top: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .l-drawer__body-foot {
        display: block;
        padding-block: 30px 0;
        margin-bottom: 33px;
    }
}
.l-drawer__body-foot-right {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1em 40px;
}
@media screen and (max-width: 992px) {
    .l-drawer__body-foot-right {
        display: block;
    }
}
.l-drawer__foot-btn {
    margin-top: auto;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 0.8125rem;
    color: inherit;
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .l-drawer__foot-btn:hover {
        text-decoration: none;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer__foot-btn {
        margin-inline: auto;
        padding: 8px 8px 9px;
    }
}
.l-drawer__foot-nav {
    display: flex;
    flex-wrap: wrap;
}
@media screen and (max-width: 992px) {
    .l-drawer__foot-nav {
        display: block;
        margin-top: 25px;
    }
}
.l-drawer__foot-nav-item {
    position: relative;
    padding-inline: 8px;
}
@media screen and (max-width: 992px) {
    .l-drawer__foot-nav-item {
        padding-inline: 0;
    }
    .l-drawer__foot-nav-item:first-of-type {
        padding-left: 0;
    }
    .l-drawer__foot-nav-item:last-of-type {
        padding-right: 0;
    }
    .l-drawer__foot-nav-item:not(:first-of-type) {
        margin-top: var(--1gap);
    }
}
@media screen and (min-width: 993px) {
    .l-drawer__foot-nav-item:not(:last-of-type)::after {
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        content: "";
        width: 1px;
        height: 16px;
        background-color: #EFEFEF;
    }
}
.l-drawer__foot-nav-link {
    display: block;
    font-size: 0.6875rem;
    font-weight: 500;
}
@media (hover: hover) and (pointer: fine) {
    .l-drawer__foot-nav-link:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer__foot-nav-link {
        display: inline-block;
        font-size: 0.7333333333rem;
    }
}
.l-drawer__foot-nav-link::after {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-left: 0.4em;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
    background-color: #000;
}
.l-drawer__lang {
    display: flex;
    align-items: center;
    -moz-column-gap: 8px;
         column-gap: 8px;
    padding: 9px 8px;
    font-size: 0.6875rem;
    font-weight: 500;
}
@media (hover: hover) and (pointer: fine) {
    .l-drawer__lang:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .l-drawer__lang {
        -moz-column-gap: 6px;
             column-gap: 6px;
        width: -moz-fit-content;
        width: fit-content;
        margin-top: 25px;
        padding: 8px 0 9px;
        font-size: 0.7333333333rem;
    }
}
.l-drawer__lang:before {
    content: "";
    display: inline-block;
    width: 13px;
    height: 13px;
    background: url("/assets/img/common/icon_language.svg") 0 0/100% 100% no-repeat;
}
.l-drawer__side {
    position: relative;
}
@media screen and (max-width: 992px) {
    .l-drawer__side {
        display: none;
    }
}
.l-drawer__side-bg {
    position: absolute;
    inset: 0;
    width: 288px;
    margin-left: auto;
}
.l-drawer__side-bg img {
    width: 100%;
    height: 100%;
}

/*  l-drawer-sns
--------------------------------------------- */
.l-drawer-sns {
    display: flex;
    -moz-column-gap: 20px;
         column-gap: 20px;
}
@media screen and (max-width: 992px) {
    .l-drawer-sns {
        -moz-column-gap: 16px;
             column-gap: 16px;
    }
}
.l-drawer-sns__item {
    width: 24px;
    height: 24px;
}
.l-drawer-sns__item--youtube {
    width: 27px;
}
.l-drawer-sns__link {
    display: grid;
    place-items: center;
    height: 100%;
}
@media (hover: hover) and (pointer: fine) {
    .l-drawer-sns__link {
        transition: opacity 300ms;
    }
    .l-drawer-sns__link:hover {
        opacity: 0.8;
    }
}
.l-drawer-sns__link img {
    display: block;
    width: 100%;
}
.l-drawer-sns__item--line .l-drawer-sns__link img, .l-drawer-sns__item--facebook .l-drawer-sns__link img, .l-drawer-sns__item--instagram .l-drawer-sns__link img {
    width: 22px;
}
.l-drawer-sns__item--x .l-drawer-sns__link img {
    width: 19px;
}
.l-drawer-sns__item--tiktok .l-drawer-sns__link img {
    width: 18px;
}
.l-drawer-sns__item--youtube .l-drawer-sns__link img {
    width: 27px;
}

/* ---------------------------------------------
*   l-footer
--------------------------------------------- */
footer.l-footer::after {
    margin-top: -49px;
}

footer.l-footer .l-footer__container {
    padding-inline: var(--1gap);
}

.l-footer {
    border-top: 1px solid #EFEFEF;
    padding: 40px 1em;
}
@media screen and (max-width: 992px) {
    .l-footer {
        padding: 0 0 46px;
    }
}
.l-footer__container {
    max-width: 1280px;
    margin-inline: auto;
}
.l-footer__upper, .l-footer__middle {
    display: flex;
    -moz-column-gap: 30px;
         column-gap: 30px;
}
@media screen and (max-width: 992px) {
    .l-footer__upper, .l-footer__middle {
        display: block;
    }
}
.l-footer__upper {
    align-items: center;
    margin-top: 53px;
}
@media screen and (max-width: 992px) {
    .l-footer__upper {
        margin-top: 0;
    }
}
.l-footer__middle {
    margin-top: 21px;
}
@media screen and (max-width: 1200px) {
    .l-footer__middle {
        display: block;
        margin-top: 30px;
    }
}
.l-footer__logo {
    display: block;
    width: 194px;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer__logo {
        transition: opacity 300ms;
    }
    .l-footer__logo:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .l-footer__logo {
        width: 228px;
        margin: -4px 0 0 -2px;
    }
}
.l-footer__logo img {
    width: 100%;
}
.l-footer__copyright {
    margin-top: 27px;
}
@media screen and (max-width: 992px) {
    .l-footer__copyright {
        margin-top: 26px;
    }
}
.l-footer__copyright-txt {
    display: block;
    font-size: 0.625rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .l-footer__copyright-txt {
        font-size: 0.6666666667rem;
    }
}

/*  l-footer-nav
--------------------------------------------- */
@media screen and (max-width: 992px) {
    .l-footer-nav {
        display: none;
        padding-inline: 16px;
    }
}
.l-footer-nav__lv1 {
    --col: 6;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .l-footer-nav__lv1 {
        display: block;
    }
}
.l-footer-nav__lv1-item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    gap: 0;
}
@media screen and (max-width: 992px) {
    .l-footer-nav__lv1-item {
        display: block;
    }
}
.l-footer-nav__lvl-trigger {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    padding: 10px 30px 10px 0;
    text-align: left;
    border-bottom: 1px solid #EFEFEF;
    font-size: 0.875rem;
    font-weight: bold;
    color: inherit;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer-nav__lvl-trigger {
        transition: opacity 300ms;
    }
    .l-footer-nav__lvl-trigger:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .l-footer-nav__lvl-trigger {
        padding: 12px 20px 12px 0;
        font-size: 0.8666666667rem;
    }
}
.l-footer-nav__lvl-trigger-icon {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    display: block;
    width: 10px;
    height: 10px;
}
@media screen and (max-width: 992px) {
    .l-footer-nav__lvl-trigger-icon {
        right: 0;
    }
}
.l-footer-nav__lvl-trigger-icon::before, .l-footer-nav__lvl-trigger-icon::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    display: block;
    background-color: #000;
}
.l-footer-nav__lvl-trigger-icon::before {
    width: 100%;
    height: 1px;
}
.l-footer-nav__lvl-trigger-icon::after {
    width: 1px;
    height: 100%;
}
.js-acc-scope.is-open .l-footer-nav__lvl-trigger-icon::after {
    display: none;
}

.l-footer-nav__lv2 {
    padding-top: 17px;
}
.l-footer-nav__lv2-item:not(:first-of-type) {
    margin-top: 10px;
}
.l-footer-nav__lv2-link {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer-nav__lv2-link {
        transition: opacity 300ms;
    }
    .l-footer-nav__lv2-link:hover {
        opacity: 0.8;
    }
}
.l-footer-nav__lv2-link.c-icon-external::after {
    top: 0.2em;
}

/*  l-footer-sns
--------------------------------------------- */
.l-footer-sns {
    display: flex;
    -moz-column-gap: 20px;
         column-gap: 20px;
    margin-left: auto;
}
@media screen and (max-width: 992px) {
    .l-footer-sns {
        margin-top: 34px;
        -moz-column-gap: 16px;
             column-gap: 16px;
    }
}
.l-footer-sns__item {
    width: 24px;
    height: 24px;
}
.l-footer-sns__item--youtube {
    width: 27.471px;
}
.l-footer-sns__link {
    display: grid;
    place-items: center;
    height: 100%;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer-sns__link {
        transition: opacity 300ms;
    }
    .l-footer-sns__link:hover {
        opacity: 0.8;
    }
}
.l-footer-sns__link img {
    display: block;
    width: 100%;
}
.l-footer-sns__item--line .l-footer-sns__link img {
    width: 22.45px;
}
.l-footer-sns__item--facebook .l-footer-sns__link img {
    width: 24px;
}
.l-footer-sns__item--instagram .l-footer-sns__link img {
    width: 24px;
}
.l-footer-sns__item--x .l-footer-sns__link img {
    width: 24px;
}
.l-footer-sns__item--tiktok .l-footer-sns__link img {
    width: 24px;
}
.l-footer-sns__item--youtube .l-footer-sns__link img {
    width: 100%;
}

/*  l-footer-sub-nav-1
--------------------------------------------- */
@media screen and (max-width: 992px) {
    .l-footer-sub-nav-1 {
        margin-left: -8px;
    }
}
.l-footer-sub-nav-1__list {
    display: flex;
    flex-wrap: wrap;
}
.l-footer-sub-nav-1__item {
    position: relative;
}
.l-footer-sub-nav-1__item:not(:last-of-type)::after {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 1px;
    height: 20px;
    background-color: #EFEFEF;
}
@media screen and (max-width: 992px) {
    .l-footer-sub-nav-1__item:not(:last-of-type)::after {
        height: 16px;
    }
}
.l-footer-sub-nav-1__link {
    display: block;
    padding: 8px 10px;
    font-size: 0.75rem;
    font-weight: 500;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer-sub-nav-1__link:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .l-footer-sub-nav-1__link {
        padding-inline: 8px;
        font-size: 0.7333333333rem;
    }
}
@media screen and (min-width: 993px) {
    .l-footer-sub-nav-1__item:first-of-type .l-footer-sub-nav-1__link {
        padding-left: 0;
    }
}

/*  l-footer-sub-nav-2
--------------------------------------------- */
.l-footer-sub-nav-2 {
    margin-left: auto;
    flex-shrink: 0;
}
@media screen and (max-width: 992px) {
    .l-footer-sub-nav-2 {
        margin-top: var(--1gap);
        margin-left: -8px;
    }
}
.l-footer-sub-nav-2__list {
    display: flex;
    flex-wrap: wrap;
}
.l-footer-sub-nav-2__item {
    position: relative;
}
.l-footer-sub-nav-2__item:not(:last-of-type)::after {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 1px;
    height: 20px;
    background-color: #3C3C3C;
}
@media screen and (max-width: 992px) {
    .l-footer-sub-nav-2__item:not(:last-of-type)::after {
        height: 16px;
    }
}
.l-footer-sub-nav-2__link {
    display: block;
    padding: 8px 10px;
    font-size: 0.75rem;
    font-weight: 500;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer-sub-nav-2__link:hover {
        text-decoration: underline;
    }
}
@media screen and (min-width: 993px) and (max-width: 1200px) {
    .l-footer-sub-nav-2__item:first-of-type .l-footer-sub-nav-2__link {
        padding-left: 0;
    }
}
@media screen and (max-width: 992px) {
    .l-footer-sub-nav-2__link {
        padding-inline: 8px;
        font-size: 0.7333333333rem;
    }
}
.l-footer-sub-nav-2__item:last-of-type .l-footer-sub-nav-2__link {
    padding-right: 0;
}
.l-footer-sub-nav-2__item--lang .l-footer-sub-nav-2__link {
    display: flex;
    align-items: center;
    -moz-column-gap: 6px;
         column-gap: 6px;
}
.l-footer-sub-nav-2__item--lang .l-footer-sub-nav-2__link::before {
    content: "";
    display: block;
    width: 13px;
    height: 13px;
    background-color: #000;
    -webkit-mask: url("/assets/img/common/icon_language.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_language.svg") 0 0/100% 100% no-repeat;
}

/*  l-footer-pagetop
--------------------------------------------- */
.l-footer-pagetop {
    position: fixed;
    bottom: 10px;
    right: 10px;
    z-index: 9;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}
@media screen and (max-width: 992px) {
    .l-footer-pagetop {
        bottom: 32px;
        right: 6px;
    }
}
.l-footer-pagetop.is-show {
    opacity: 1;
    visibility: visible;
}
.l-footer-pagetop__link {
    display: block;
    width: 50px;
    height: 0;
    padding-top: 50px;
    background: rgba(255, 255, 255, 0.33) url("/assets/img/common/icon_pagetop.svg") 50% 50%/20px auto no-repeat;
    overflow: hidden;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer-pagetop__link {
        transition: opacity 300ms;
    }
    .l-footer-pagetop__link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .l-footer-pagetop__link {
        width: 36px;
        padding-top: 36px;
        background-size: 16px;
    }
}

/* ---------------------------------------------
*   l-global-nav
--------------------------------------------- */
.l-global-nav {
    display: none;
}
/* ---------------------------------------------
*   l-header
--------------------------------------------- */
.l-header {
    position: sticky;
    top: 0;
    z-index: 11;
    height: 60px;
    background-color: #fff;
}
@media screen and (max-width: 992px) {
    .l-header {
        height: 48px;
        min-width: 320px;
    }
}
.l-header__container {
    display: flex;
    align-items: center;
    margin: 0 auto;
    height: 100%;
    padding-inline: 5px;
}
@media screen and (max-width: 992px) {
    .l-header__container {
        padding-inline: 0;
    }
}
:is(.is-login) .l-header--main .l-header__container {
    position: relative;
}
:is(.is-login) .l-header--main .l-header__container:after {
    content: "";
    display: block;
    position: absolute;
    inset: auto 0 -1px;
    border-bottom: 3px solid #F0252D;
}
@media screen and (max-width: 992px) {
    :is(.is-login) .l-header--main .l-header__container:after {
        border-width: 2px;
    }
}

.l-header__logo {
    width: 242px;
    flex-shrink: 0;
    margin-right: 26px;
    margin-left: 15px;
}
@media screen and (max-width: 1500px) {
    .l-header__logo {
        width: 193px;
        margin-right: 20px;
    }
}
@media screen and (max-width: 1400px) {
    .l-header__logo {
        width: 174px;
        margin-right: 10px;
        margin-left: 10px;
    }
}
@media screen and (max-width: 992px) {
    .l-header__logo {
        width: 254px;
        padding-inline: 13px 28px;
        margin-right: auto;
        margin-left: 0;
    }
}
@media screen and (max-width: 767.98px) {
    .l-header__logo {
        width: 228px;
        padding-inline: 0 15px;
        margin-left: auto;
    }
}
.l-header__logo-link {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .l-header__logo-link {
        transition: opacity 300ms;
    }
    .l-header__logo-link:hover {
        opacity: 0.8;
    }
}
.l-header__logo-link img {
    width: 100%;
}

/*  header-menu-button
--------------------------------------------- */
.header-menu-button {
    position: relative;
    display: block;
    padding: 20px;
}
@media (hover: hover) and (pointer: fine) {
    .header-menu-button {
        transition: opacity 300ms;
    }
    .header-menu-button:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .header-menu-button {
        padding: 17px 16px;
    }
}
.header-menu-button__lines {
    position: relative;
    display: block;
    width: 20px;
    height: 17.5px;
}
@media screen and (max-width: 992px) {
    .header-menu-button__lines {
        width: 16px;
        height: 14px;
    }
}
.header-menu-button__line {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 0;
    padding-top: 2.5px;
    background-color: #000;
    transition: 0.2s;
}
@media screen and (max-width: 992px) {
    .header-menu-button__line {
        padding-top: 2px;
    }
}
.header-menu-button__line--top {
    top: 0;
}
.windows .header-menu-button__line--top {
    margin-top: 0.5px;
}

.header-menu-button__line--center {
    top: 50%;
    margin-top: -1px;
}
.header-menu-button__line--bottom {
    bottom: 0;
}

/*  l-header-nav
--------------------------------------------- */
.l-header-nav {
    display: flex;
    align-items: center;
    height: 100%;
}
@media screen and (max-width: 1200px) {
    .l-header-nav {
        display: none;
    }
}
.l-header-nav__mega-menu-bg {
    position: fixed;
    inset: calc(var(--header-height) * 1px) 0 auto;
    height: 0;
    background-color: #fff;
    transition: height 0.3s, border-bottom 0.3s;
}
.l-header-nav:has(.l-header-nav__item.is-hover:hover) .l-header-nav__mega-menu-bg {
    border-bottom: 1px solid #EFEFEF;
}
.l-header-nav__list {
    display: flex;
    height: 100%;
}
.l-header-nav__item {
    position: relative;
    height: 100%;
}
.l-header-nav__item:not(:last-of-type)::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: block;
    width: 1px;
    height: 20px;
    background-color: #EFEFEF;
}
.l-header-nav__link {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    padding-inline: 10px;
    font-size: 14px;
    font-weight: bold;
}
@media (hover: hover) and (pointer: fine) {
    .l-header-nav__link {
        transition: opacity 300ms;
    }
    .l-header-nav__link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 1200px) {
    .windows .l-header-nav__link {
        padding-inline: 9px;
    }
}
.l-header-nav__link.is-current::before {
    content: "";
    position: absolute;
    top: calc(50% + 1.1em);
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: calc(100% - var(--0_5gap) * 2);
    height: 3px;
    background-color: #000;
}
@media (hover: hover) and (pointer: fine) {
    .l-header-nav__link:hover::before {
        content: "";
        position: absolute;
        top: calc(50% + 1.1em);
        left: 50%;
        transform: translate(-50%, -50%);
        display: block;
        width: calc(100% - var(--0_5gap) * 2);
        height: 3px;
        background-color: #000;
    }
}

/*  l-header-sub-nav
--------------------------------------------- */
.l-header-sub-nav {
    margin-left: auto;
}
@media screen and (max-width: 1400px) {
    .l-header-sub-nav {
        display: none;
    }
}
@media screen and (max-width: 1200px) {
    .l-header-sub-nav {
        display: block;
    }
}
@media screen and (max-width: 1250px) {
    .l-header-sub-nav {
        margin-left: auto;
    }
}
@media screen and (max-width: 767.98px) {
    .l-header-sub-nav {
        display: none;
    }
}
.l-header-sub-nav__list {
    display: flex;
}
.l-header-sub-nav__item {
    position: relative;
}
.l-header-sub-nav__item:not(:last-of-type)::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: block;
    width: 1px;
    height: 15px;
    background-color: #EFEFEF;
}
.l-header-sub-nav__link {
    display: flex;
    align-items: center;
    -moz-column-gap: 5px;
         column-gap: 5px;
    height: 100%;
    padding-inline: 10px;
    font-size: 12px;
    font-weight: 500;
    color: #404045;
}
@media (hover: hover) and (pointer: fine) {
    .l-header-sub-nav__link {
        transition: opacity 300ms;
    }
    .l-header-sub-nav__link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 1500px) {
    .l-header-sub-nav__item--museum .l-header-sub-nav__link::before {
        content: "";
        display: block;
        width: 15px;
        height: 15px;
        background: url("/assets/img/common/icon_museum.svg") 0 0/100% 100% no-repeat;
    }
}
@media screen and (max-width: 1500px) {
    .l-header-sub-nav__item--shop .l-header-sub-nav__link::before {
        content: "";
        display: block;
        width: 12px;
        height: 15px;
        background: url("/assets/img/common/icon_shop.svg") 0 0/100% 100% no-repeat;
    }
}
.l-header-sub-nav__item--lang .l-header-sub-nav__link::before {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    background: url("/assets/img/common/icon_language.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 1400px) {
    .l-header-sub-nav__link .txt-default {
        display: none;
    }
}
.l-header-sub-nav__link .txt-omission {
    display: none;
}
@media screen and (max-width: 1400px) {
    .l-header-sub-nav__link .txt-omission {
        display: block;
    }
}
@media screen and (max-width: 1500px) {
    .l-header-sub-nav__link-txt {
        display: none;
    }
}

/*  l-header-search-btn
--------------------------------------------- */
.l-header-search-btn {
    padding: 20px;
    margin-left: 10px;
}
@media (hover: hover) and (pointer: fine) {
    .l-header-search-btn {
        transition: opacity 300ms;
    }
    .l-header-search-btn:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 1400px) {
    .l-header-search-btn {
        margin-left: auto;
    }
}
@media screen and (max-width: 1200px) {
    .l-header-search-btn {
        margin-left: 5px;
    }
}
@media screen and (max-width: 992px) {
    .l-header-search-btn {
        padding: 14px 16px;
    }
}
@media screen and (max-width: 767.98px) {
    .l-header-search-btn {
        display: none;
    }
}
@media screen and (max-width: 992px) {
    .l-header-search-btn {
        margin-left: 5px;
    }
}
.l-header-search-btn img {
    width: 20px;
}
@media screen and (max-width: 992px) {
    .l-header-search-btn img {
        width: 16px;
    }
}
.is-header-search-opened .l-header-search-btn__img-open {
    display: none;
}

.l-header-search-btn__img-close {
    display: none;
}
.is-header-search-opened .l-header-search-btn__img-close {
    display: block;
}

/* ---------------------------------------------
*   l-header-mypage
--------------------------------------------- */
.l-header-mypage {
    position: relative;
}
.l-header-mypage::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    display: block;
    width: 1px;
    height: 40px;
    background-color: #EFEFEF;
}
@media screen and (max-width: 992px) {
    .l-header-mypage::before {
        height: 32px;
    }
}
@media screen and (max-width: 767.98px) {
    .l-header-mypage::before {
        display: none;
    }
}
.l-header-mypage__link {
    display: block;
    padding: 20px;
}
@media (hover: hover) and (pointer: fine) {
    .l-header-mypage__link {
        transition: opacity 300ms;
    }
    .l-header-mypage__link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .l-header-mypage__link {
        padding: 16px;
    }
}
.l-header-mypage img {
    display: block;
    width: 20px;
}
@media screen and (max-width: 992px) {
    .l-header-mypage img {
        width: 16px;
    }
}

/* ---------------------------------------------
*   l-header-search (ヘッダー検索窓)
--------------------------------------------- */
.l-header-search {
    position: fixed;
    inset: calc(var(--header-height) * 1px) 0 0;
    background-color: rgba(0, 0, 0, 0.3);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}
.is-header-search-opened .l-header-search {
    opacity: 1;
    visibility: visible;
}

.l-header-search__overlay {
    position: absolute;
    inset: 0;
}
.l-header-search__contents {
    position: absolute;
    top: 0px;
    right: 66px;
    max-width: 343px;
    padding: 8px 10px;
    background-color: #fff;
}
@media screen and (max-width: 992px) {
    .l-header-search__contents {
        right: 0;
        max-width: initial;
        padding-inline: var(--1gap);
    }
}

/* ---------------------------------------------
*   l-mypage-nav
--------------------------------------------- */
.l-mypage-nav {
    position: sticky;
    top: calc(var(--header-height) * 1px);
    z-index: 9;
    background-color: #fff;
    height: -moz-fit-content;
    height: fit-content;
}
.l-mypage-nav__main-nav {
    height: 44px;
}
.l-mypage-nav__main-nav-container {
    height: 100%;
}
.l-mypage-nav__main-nav-list {
    display: flex;
    align-items: center;
    height: 100%;
    overflow-x: auto;
    scrollbar-width: none;
}
.l-mypage-nav__main-nav-list::-webkit-scrollbar {
    display: none;
}
.l-mypage-nav__main-nav-item {
    position: relative;
}
.l-mypage-nav__main-nav-item:not(:last-of-type)::after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    content: "";
    display: block;
    width: 1px;
    height: 16px;
    margin-top: 2px;
    background-color: #EFEFEF;
}
.l-mypage-nav__main-nav-link {
    padding-inline: var(--1gap);
    font-size: 0.875rem;
    font-weight: bold;
    white-space: nowrap;
}
@media (hover: hover) and (pointer: fine) {
    .l-mypage-nav__main-nav-link {
        transition: opacity 300ms;
    }
    .l-mypage-nav__main-nav-link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .l-mypage-nav__main-nav-link {
        font-size: 0.8rem;
    }
}
.l-mypage-nav__main-nav-item:first-of-type .l-mypage-nav__main-nav-link {
    padding-left: 0;
}
.l-mypage-nav__main-nav-list:last-child .l-mypage-nav__main-nav-item:last-of-type .l-mypage-nav__main-nav-link {
    padding-right: 0;
}
.l-mypage-nav__main-nav-link.is-current {
    -webkit-text-decoration: underline #000;
            text-decoration: underline #000;
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    -webkit-text-decoration-skip-ink: none;
            text-decoration-skip-ink: none;
}
@media screen and (max-width: 992px) {
    .l-mypage-nav__main-nav-link.is-current {
        text-underline-offset: 6px;
    }
}
.l-mypage-nav__sub-nav {
    height: 44px;
    background-color: #FAFAFA;
}
.l-mypage-nav__sub-nav-container {
    display: flex;
    justify-content: space-between;
    height: 100%;
}
@media screen and (max-width: 992px) {
    .l-mypage-nav__sub-nav-container {
        padding-right: 0;
    }
}
.l-mypage-nav__sub-nav-list {
    display: flex;
    align-items: center;
    height: 100%;
    overflow-x: auto;
    scrollbar-width: none;
}
.l-mypage-nav__sub-nav-list::-webkit-scrollbar {
    display: none;
}
.l-mypage-nav__sub-nav-item {
    position: relative;
}
.l-mypage-nav__sub-nav-item:not(:last-of-type)::after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    content: "";
    display: block;
    width: 1px;
    height: 16px;
    margin-top: 2px;
    background-color: #EFEFEF;
}
.l-mypage-nav__sub-nav-link {
    padding-inline: var(--0_5gap);
    font-size: 0.875rem;
    font-weight: bold;
    white-space: nowrap;
}
@media (hover: hover) and (pointer: fine) {
    .l-mypage-nav__sub-nav-link {
        transition: opacity 300ms;
    }
    .l-mypage-nav__sub-nav-link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .l-mypage-nav__sub-nav-link {
        font-size: 0.8rem;
    }
}
.l-mypage-nav__sub-nav-item:first-of-type .l-mypage-nav__sub-nav-link {
    padding-left: 0;
}
.l-mypage-nav__sub-nav-item:last-of-type .l-mypage-nav__sub-nav-link {
    padding-right: 0;
}
.l-mypage-nav__sub-nav-link.is-current {
    -webkit-text-decoration: underline #000;
            text-decoration: underline #000;
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    -webkit-text-decoration-skip-ink: none;
            text-decoration-skip-ink: none;
}
@media screen and (max-width: 992px) {
    .l-mypage-nav__sub-nav-link.is-current {
        text-underline-offset: 6px;
    }
}
.l-mypage-nav__sub-nav-txt {
    padding-left: var(--1gap);
}
.l-mypage-nav__sub-nav-btn-wrap {
    padding-left: var(--1gap);
    flex-shrink: 0;
}
.l-mypage-nav__sub-nav-btn {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    padding-left: var(--1gap);
    border-left: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .l-mypage-nav__sub-nav-btn {
        padding-inline: var(--1gap);
    }
}
.l-mypage-nav__sub-nav-btn-txt {
    margin-right: 10px;
    color: #404045;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: underline;
}
@media screen and (max-width: 992px) {
    .l-mypage-nav__sub-nav-btn-txt {
        display: none;
    }
}
@media (hover: hover) and (pointer: fine) {
    .l-mypage-nav__sub-nav-btn:hover .l-mypage-nav__sub-nav-btn-txt {
        text-decoration: none;
    }
}
.l-mypage-nav__sub-nav-btn-icon {
    position: relative;
    display: block;
    width: 20px;
    height: 15px;
}
@media (hover: hover) and (pointer: fine) {
    .l-mypage-nav__sub-nav-btn-icon {
        transition: 300ms;
    }
    .l-mypage-nav__sub-nav-btn:hover .l-mypage-nav__sub-nav-btn-icon {
        opacity: 0.8;
    }
}
.l-mypage-nav__sub-nav-btn-icon::after {
    content: "";
    position: absolute;
    inset: 0;
    -webkit-mask: url("/assets/img/common/icon_list.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_list.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}
@media screen and (max-width: 992px) {
    .l-mypage-nav__sub-nav-btn-icon::after {
        background-color: #000;
    }
}

/* ---------------------------------------------
*   l-mega-menu
--------------------------------------------- */
.l-mega-menu {
    position: fixed;
    inset: calc(var(--header-height) * 1px) 0 auto;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}
.l-header-nav__item.is-hover:hover .l-mega-menu {
    opacity: 1;
    visibility: visible;
    z-index: 1;
}

.l-header-nav__item:not(.is-hover) .l-mega-menu {
    pointer-events: none;
}
.l-mega-menu__inner {
    max-height: calc(100dvh - var(--header-height) * 1px);
    padding: 40px 124px 60px;
    overflow-y: auto;
    scrollbar-width: none;
}
.l-mega-menu__inner::-webkit-scrollbar {
    display: none;
}
.l-mega-menu__nav-ttl {
    display: flex;
    align-items: center;
    -moz-column-gap: 12px;
         column-gap: 12px;
    font-size: 1.3125rem;
    font-weight: bold;
    line-height: 1.4;
}
@media (hover: hover) and (pointer: fine) {
    .l-mega-menu__nav-ttl[href]:hover {
        text-decoration: underline;
    }
}
.l-mega-menu__nav-ttl[href]::after {
    content: "";
    display: block;
    width: 10px;
    height: 18px;
    margin-top: 0.1em;
    -webkit-mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
    background-color: #000;
}
.l-mega-menu__nav-list {
    margin-top: 24px;
}
.l-mega-menu__nav-item:not(:first-of-type) {
    margin-top: var(--0_5gap);
}
.l-mega-menu__nav-link {
    font-size: 0.875rem;
    font-weight: bold;
    line-height: 1.4;
}
@media (hover: hover) and (pointer: fine) {
    .l-mega-menu__nav-link:hover {
        text-decoration: underline;
    }
}

/* ---------------------------------------------
*   l-sub-nav
--------------------------------------------- */
.l-sub-nav {
    position: sticky;
    top: 0;
    z-index: 10;
    display: flex;
    align-items: flex-start;
    height: calc(var(--sub-navi-height) * 1px);
    padding: 14px 1em 14px 25px;
    background-color: #fff;
    font-size: 0.875rem;
    font-weight: 500;
    border-top: 1px solid #EFEFEF;
    backface-visibility: hidden;
}
@media screen and (max-width: 992px) {
    .l-sub-nav {
        padding: 12px 1px 0 15px;
        font-size: 0.7333333333rem;
    }
}
.l-sub-nav__ttl {
    margin-right: auto;
    line-height: 1.1;
}
@media screen and (max-width: 992px) {
    .l-sub-nav__ttl {
        text-overflow: ellipsis;
        overflow: hidden;
        white-space: nowrap;
    }
}
.l-sub-nav__nav {
    margin-right: 20px;
}
@media screen and (max-width: 992px) {
    .l-sub-nav__nav {
        display: none;
    }
}
.l-sub-nav__nav-list {
    display: flex;
    flex-wrap: wrap;
}
.l-sub-nav__nav-item {
    position: relative;
}
.l-sub-nav__nav-item:not(:first-of-type)::before {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 1px;
    height: 21px;
    background-color: #EFEFEF;
}
.l-sub-nav__nav-link {
    display: block;
    padding-inline: 10px;
    font-size: inherit;
    font-weight: inherit;
    line-height: 2;
    color: inherit;
    --color: #000;
    color: var(--color);
}
@media (hover: hover) and (pointer: fine) {
    .l-sub-nav__nav-link:hover {
        text-decoration: underline;
    }
}
.l-sub-nav__nav-link::after {
    position: relative;
    top: 0.08em;
    content: "";
    display: inline-block;
    margin-left: 0.5em;
    background-color: var(--color);
}
.l-sub-nav__nav-link[target=_blank]::after, .l-sub-nav__nav-link[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
.l-sub-nav__nav-link[href*=".pdf"]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
}
.l-sub-nav__nav-link--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_arrow-right-square.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_arrow-right-square.svg") 0 0/100% 100% no-repeat;
}
.l-sub-nav__nav-link:not([href*=".pdf"], [target=_blank])::after {
    display: none;
}
.l-sub-nav__btn {
    padding: 10px;
    font-weight: inherit;
}
@media (hover: hover) and (pointer: fine) {
    .l-sub-nav__btn {
        transition: opacity 300ms;
    }
    .l-sub-nav__btn:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .l-sub-nav__btn {
        margin-top: -13px;
        padding: 15px;
    }
    .windows .l-sub-nav__btn {
        margin-top: -13.5px;
    }
    .l-sub-nav__btn::after {
        content: "";
        position: absolute;
        inset: 0;
    }
}
.l-sub-nav__btn-lines {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 20px;
    height: 10px;
}
@media screen and (max-width: 992px) {
    .l-sub-nav__btn-lines {
        width: 16px;
        height: 9px;
    }
}
.is-sub-nav-opened .l-sub-nav__btn-lines {
    justify-content: center;
}

.l-sub-nav__btn-line {
    display: block;
    width: 100%;
    height: 2.5px;
    background-color: #000;
}
@media screen and (max-width: 992px) {
    .l-sub-nav__btn-line {
        height: 2px;
    }
}
.is-sub-nav-opened .l-sub-nav__btn-line:nth-of-type(2) {
    display: none;
}

.l-sub-nav__menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: #fff;
    font-weight: normal;
    scrollbar-width: none;
    max-height: calc(100dvh - 60px);
    overflow-y: auto;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}
.is-sub-nav-opened .l-sub-nav__menu {
    opacity: 1;
    visibility: visible;
}

.l-sub-nav__menu::-webkit-scrollbar {
    display: none;
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu {
        display: flex;
        flex-direction: column;
        max-height: initial;
        height: calc(100dvh - var(--menu-height-offset));
    }
}
.l-sub-nav__menu-container {
    padding-block: 34px 78px;
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-container {
        padding-block: 0;
    }
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-ttl {
        border-bottom: 1px solid #EFEFEF;
    }
    .l-sub-nav__menu-ttl::after {
        display: none;
    }
}
.l-sub-nav__menu-ttl-link {
    display: inline-block;
    font-size: 1.3125rem;
    font-weight: bold;
    --color: #000;
    color: var(--color);
}
.l-sub-nav__menu-ttl-link::after {
    position: relative;
    top: 0.08em;
    content: "";
    display: inline-block;
    width: 0.4285714286em;
    height: 0.8571428571em;
    margin-left: 0.5em;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
}
.l-sub-nav__menu-ttl-link[target=_blank]::after, .l-sub-nav__menu-ttl-link[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_target-blank.svg");
            mask-image: url("/assets/img/common/icon_target-blank.svg");
}
.l-sub-nav__menu-ttl-link[href*=".pdf"]::after, .l-sub-nav__menu-ttl-link.pdf-icon::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_pdf.svg");
            mask-image: url("/assets/img/common/icon_pdf.svg");
}
.l-sub-nav__menu-ttl-link--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
            mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
}
@media screen and (min-width: 993px) and (hover: hover) and (pointer: fine) {
    .l-sub-nav__menu-ttl-link:hover {
        text-decoration: underline;
    }
}
@media screen and (min-width: 993px) {
    .windows .l-sub-nav__menu-ttl-link::after {
        top: 0.06em;
    }
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-ttl-link {
        display: block;
        padding-block: 11px;
        font-size: 0.9375rem;
        line-height: 1.4;
    }
}
@media screen and (max-width: 992px) and (hover: hover) and (pointer: fine) {
    .l-sub-nav__menu-ttl-link {
        transition: opacity 300ms;
    }
    .l-sub-nav__menu-ttl-link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-ttl-link::after {
        display: none;
    }
}
.l-sub-nav__menu-cols {
    --col: 5;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    -moz-column-gap: var(--1gap);
         column-gap: var(--1gap);
    margin-top: 24px;
}
.l-sub-nav__menu-cols--col4 {
    --col: 4;
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-cols {
        display: block;
        margin-top: 0;
    }
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-item {
        border-bottom: 1px solid #EFEFEF;
    }
}
.l-sub-nav__menu-item:not(:first-of-type) {
    margin-top: 24px;
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-item:not(:first-of-type) {
        margin-top: 0;
    }
}
.l-sub-nav__menu-link {
    --color: #000;
    color: var(--color);
    display: flex;
    align-items: center;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 0.875rem;
    font-weight: bold;
    line-height: 1.4;
}
.l-sub-nav__menu-link::after {
    position: relative;
    top: 0.08em;
    content: "";
    display: inline-block;
    width: 0.4285714286em;
    height: 0.8571428571em;
    margin-left: 0.5em;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
}
.l-sub-nav__menu-link[target=_blank]::after, .l-sub-nav__menu-link[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_target-blank.svg");
            mask-image: url("/assets/img/common/icon_target-blank.svg");
}
.l-sub-nav__menu-link[href*=".pdf"]::after, .l-sub-nav__menu-link.pdf-icon::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_pdf.svg");
            mask-image: url("/assets/img/common/icon_pdf.svg");
}
.l-sub-nav__menu-link--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
            mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
}
@media (hover: hover) and (pointer: fine) {
    .l-sub-nav__menu-link:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-link {
        padding-block: 11px;
        font-size: 1rem;
        width: 100%;
    }
}
.l-sub-nav__menu-link::after {
    flex-shrink: 0;
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-link:not([href*=".pdf"], [target=_blank])::after {
        display: none;
    }
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-group {
        display: none;
    }
}
.l-sub-nav__menu-group:not(:first-of-type) {
    margin-top: var(--3gap);
}
.l-sub-nav__menu-group-ttl {
    --color: #000;
    color: var(--color);
    display: flex;
    align-items: center;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 0.875rem;
    font-weight: bold;
    line-height: 1.4;
}
.l-sub-nav__menu-group-ttl::after {
    position: relative;
    top: 0.08em;
    content: "";
    display: inline-block;
    width: 0.4285714286em;
    height: 0.8571428571em;
    margin-left: 0.5em;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
}
.l-sub-nav__menu-group-ttl[target=_blank]::after, .l-sub-nav__menu-group-ttl[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_target-blank.svg");
            mask-image: url("/assets/img/common/icon_target-blank.svg");
}
.l-sub-nav__menu-group-ttl[href*=".pdf"]::after, .l-sub-nav__menu-group-ttl.pdf-icon::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_pdf.svg");
            mask-image: url("/assets/img/common/icon_pdf.svg");
}
.l-sub-nav__menu-group-ttl--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
            mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
}
@media (hover: hover) and (pointer: fine) {
    .l-sub-nav__menu-group-ttl[href]:hover {
        text-decoration: underline;
    }
}
.l-sub-nav__menu-group-ttl:not([href])::after {
    display: none;
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-group-ttl {
        padding-block: 11px;
        font-size: 1rem;
    }
}
.l-sub-nav__menu-group-lv2-wrap {
    margin-top: 24px;
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-group-lv2-wrap {
        display: none;
    }
}
.l-sub-nav__menu-group-lv2-wrap:not(:first-of-type) {
    margin-top: var(--3gap);
}
.l-sub-nav__menu-group-lv2-wrap--no-ttl {
    margin-top: calc(30px + 1.225rem);
}
.l-sub-nav__menu-group-lv2-ttl {
    font-size: 0.875rem;
    font-weight: bold;
    color: #757577;
}
.l-sub-nav__menu-group-lv2 {
    margin-top: 24px;
}
.l-sub-nav__menu-group-lv2-item:not(:first-of-type) {
    margin-top: var(--1gap);
}
@media screen and (max-width: 1200px) {
    .l-sub-nav__menu-group-lv2-item:not(:first-of-type) {
        margin-top: 18px;
    }
}
.l-sub-nav__menu-group-lv2-link {
    --color: #000;
    color: var(--color);
    font-size: 0.875rem;
    font-weight: normal;
}
.l-sub-nav__menu-group-lv2-link::after {
    position: relative;
    top: 0.08em;
    content: "";
    display: inline-block;
    width: 0.4285714286em;
    height: 0.8571428571em;
    margin-left: 0.5em;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
}
.l-sub-nav__menu-group-lv2-link[target=_blank]::after, .l-sub-nav__menu-group-lv2-link[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_target-blank.svg");
            mask-image: url("/assets/img/common/icon_target-blank.svg");
}
.l-sub-nav__menu-group-lv2-link[href*=".pdf"]::after, .l-sub-nav__menu-group-lv2-link.pdf-icon::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_pdf.svg");
            mask-image: url("/assets/img/common/icon_pdf.svg");
}
.l-sub-nav__menu-group-lv2-link--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
            mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
}
@media (hover: hover) and (pointer: fine) {
    .l-sub-nav__menu-group-lv2-link[href]:hover {
        text-decoration: underline;
    }
}
.l-sub-nav__menu-group-lv2-link::after {
    flex-shrink: 0;
}
.l-sub-nav__menu-group-lv2-link:not([href*=".pdf"], [target=_blank], .l-sub-nav__menu-group-lv2-link--arrow)::after {
    display: none;
}
.l-sub-nav__menu-group-lv2-link:not([href]) {
    color: #757577;
}
.l-sub-nav__menu-group-lv2-link .small {
    position: relative;
    top: -0.08em;
    margin-left: 9px;
    font-size: 0.8em;
}
@media (hover: hover) and (pointer: fine) {
    .l-sub-nav__menu-group-lv2-link--icon {
        transition: opacity 300ms;
    }
    .l-sub-nav__menu-group-lv2-link--icon:hover {
        opacity: 0.8;
    }
}
.l-sub-nav__menu-group-lv2-icon {
    width: 16px;
}
.l-sub-nav__menu-contents-sp {
    display: none;
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-contents-sp {
        display: flex;
        flex-direction: column;
        height: 100%;
    }
}
.l-sub-nav__menu-group2 {
    display: none;
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-group2 {
        display: block;
        border-bottom: 1px solid #EFEFEF;
    }
}
.l-sub-nav__menu-group2-ttl {
    position: relative;
    display: block;
    width: 100%;
    padding-block: 11px;
    font-size: 1rem;
    font-weight: bold;
    text-align: left;
    color: inherit;
}
@media (hover: hover) and (pointer: fine) {
    .l-sub-nav__menu-group2-ttl {
        transition: opacity 300ms;
    }
    .l-sub-nav__menu-group2-ttl:hover {
        opacity: 0.8;
    }
}
.l-sub-nav__menu-group2-ttl-icon {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: block;
    width: 16px;
    height: 16px;
}
.l-sub-nav__menu-group2-ttl-icon::before, .l-sub-nav__menu-group2-ttl-icon::after {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    display: block;
    background-color: #000;
}
.l-sub-nav__menu-group2-ttl-icon::before {
    width: 12px;
    height: 1px;
}
.l-sub-nav__menu-group2-ttl-icon::after {
    width: 1px;
    height: 12px;
}
.is-open .l-sub-nav__menu-group2-ttl-icon::after {
    display: none;
}

.l-sub-nav__menu-group2-body {
    padding-bottom: var(--1gap);
}
.l-sub-nav__menu-group2-sub:not(:first-of-type) {
    margin-top: var(--1gap);
}
.l-sub-nav__menu-group2-sub:not(:first-of-type):has(.l-sub-nav__menu-group2-sub-ttl) {
    margin-top: var(--1gap);
}
.l-sub-nav__menu-group2-sub-ttl {
    display: block;
    padding-block: 8.5px 8px;
    font-size: 0.7333333333rem;
    font-weight: bold;
    color: #757577;
}
.l-sub-nav__menu-group2-sub-link {
    position: relative;
    display: block;
    padding-block: 8.5px 8px;
    padding-left: 0.6em;
    font-size: 0.8666666667rem;
    --color: #000;
    color: var(--color);
}
.l-sub-nav__menu-group2-sub-link::after {
    position: relative;
    top: 0.08em;
    content: "";
    display: inline-block;
    width: 0.4285714286em;
    height: 0.8571428571em;
    margin-left: 0.5em;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
}
.l-sub-nav__menu-group2-sub-link[target=_blank]::after, .l-sub-nav__menu-group2-sub-link[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_target-blank.svg");
            mask-image: url("/assets/img/common/icon_target-blank.svg");
}
.l-sub-nav__menu-group2-sub-link[href*=".pdf"]::after, .l-sub-nav__menu-group2-sub-link.pdf-icon::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_pdf.svg");
            mask-image: url("/assets/img/common/icon_pdf.svg");
}
.l-sub-nav__menu-group2-sub-link--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
            mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
}
@media (hover: hover) and (pointer: fine) {
    .l-sub-nav__menu-group2-sub-link[href]:hover {
        text-decoration: underline;
    }
}
.l-sub-nav__menu-group2-sub-link::before {
    position: absolute;
    top: 0.55em;
    left: 0;
    content: "-";
    color: #000;
}
.l-sub-nav__menu-group2-sub-link::after {
    flex-shrink: 0;
}
.l-sub-nav__menu-group2-sub-link:not([href*=".pdf"], [target=_blank])::after {
    display: none;
}
.l-sub-nav__menu-group2-sub-link:not([href]) {
    color: #757577;
}
.l-sub-nav__menu-group2-sub-link--main {
    padding-left: 0;
    font-weight: 500;
}
.l-sub-nav__menu-group2-sub-link--main::before {
    display: none;
}
.l-sub-nav__menu-group2-sub-link .small {
    position: relative;
    top: -0.08em;
    margin-left: 3px;
    font-size: 0.8em;
}
.l-sub-nav__menu-group2-icon-wrap {
    margin-top: var(--2gap);
}
@media (hover: hover) and (pointer: fine) {
    .l-sub-nav__menu-group2-icon-link {
        transition: opacity 300ms;
    }
    .l-sub-nav__menu-group2-icon-link:hover {
        opacity: 0.8;
    }
}
.l-sub-nav__menu-group2-icon {
    width: 16px;
}
.l-sub-nav__menu-foot {
    display: none;
    margin-top: auto;
    padding-block: var(--3gap);
}
@media screen and (max-width: 992px) {
    .l-sub-nav__menu-foot {
        display: block;
    }
}
.l-sub-nav__btn-close {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
    padding: 8px 8px 9px;
    font-size: 0.8666666667rem;
    color: inherit;
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .l-sub-nav__btn-close:hover {
        text-decoration: none;
    }
}

/*  l-sub-nav-overlay
--------------------------------------------- */
.l-sub-nav-overlay {
    position: fixed;
    inset: 0;
    z-index: 8;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
    background-color: rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 992px) {
    .l-sub-nav-overlay {
        background-color: #fff;
    }
}
.is-sub-nav-opened .l-sub-nav-overlay {
    opacity: 1;
    visibility: visible;
}

/* ---------------------------------------------
*   wrapper
--------------------------------------------- */
/*  l-wrapper
--------------------------------------------- */
.l-wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100dvh;
}

/*  l-wrapper-2
--------------------------------------------- */
.l-wrapper-2 {
    display: grid;
    grid-template-rows: auto 1fr auto;
    grid-template-columns: 100%;
    min-height: 100dvh;
}

/*  l-footer-2
--------------------------------------------- */
.l-footer-2 {
    padding-block: 57px;
    border-top: 1px solid #EFEFEF;
}
.l-footer-2__logo {
    display: block;
    max-width: 98px;
    margin-inline: auto;
}
@media (hover: hover) and (pointer: fine) {
    .l-footer-2__logo {
        transition: opacity 300ms;
    }
    .l-footer-2__logo:hover {
        opacity: 0.8;
    }
}
.l-footer-2__logo img {
    width: 100%;
}
.l-footer-2__copyright {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 52px;
    margin-inline: auto;
    font-size: 0.625rem;
    font-weight: 500;
}

/*  l-header-2
--------------------------------------------- */
.l-header-2 {
    height: 80px;
    padding-top: 20px;
}
@media screen and (max-width: 992px) {
    .l-header-2 {
        height: 48px;
        padding-top: 0;
    }
}
.l-header-2--type2 {
    position: sticky;
    top: 0;
    z-index: 11;
    background-color: #fff;
}
.l-header-2__container {
    display: grid;
    place-content: center;
    height: 100%;
}
.l-header-2__logo {
    max-width: 242px;
}
@media screen and (max-width: 992px) {
    .l-header-2__logo {
        max-width: 174px;
    }
}
@media (hover: hover) and (pointer: fine) {
    .l-header-2__logo-link {
        transition: opacity 300ms;
    }
    .l-header-2__logo-link:hover {
        opacity: 0.8;
    }
}
.l-header-2__logo-link img {
    width: 100%;
}

/* ---------------------------------------------
*   anchor
--------------------------------------------- */
/*  c-anchor-list-1
--------------------------------------------- */
.c-anchor-list-1 {
    border-top: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-anchor-list-1 {
        width: 100vw;
        overflow-x: auto;
        padding-inline: 8px;
        scrollbar-width: none;
    }
    .c-anchor-list-1::-webkit-scrollbar {
        display: none;
    }
}
.c-anchor-list-1__list {
    display: flex;
    flex-wrap: wrap;
    padding-block: 10.5px;
    gap: var(--0_5gap) 0;
    margin-left: -10px;
}
@media screen and (max-width: 992px) {
    .c-anchor-list-1__list {
        margin-left: 0;
        padding-block: 12px;
        flex-wrap: nowrap;
    }
    .c-anchor-list-1--type2 .c-anchor-list-1__list {
        margin-left: -4px;
    }
}
.c-anchor-list-1__item {
    position: relative;
    padding-inline: 10px;
}
@media screen and (max-width: 992px) {
    .c-anchor-list-1__item {
        padding-inline: 8px;
        white-space: nowrap;
    }
    .c-anchor-list-1--type2 .c-anchor-list-1__item {
        padding-inline: 12px;
    }
}
.c-anchor-list-1__item:last-of-type {
    padding-right: 0;
}
@media screen and (max-width: 992px) {
    .c-anchor-list-1__item:last-of-type {
        padding-right: 16px;
    }
}
.c-anchor-list-1__item:not(:last-of-type)::after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -0.5px;
    content: "";
    display: block;
    width: 1px;
    height: 16px;
    background-color: #EFEFEF;
}
.c-anchor-list-1__link {
    display: flex;
    align-items: center;
    -moz-column-gap: var(--0_5gap);
         column-gap: var(--0_5gap);
    font-size: 0.875rem;
    font-weight: bold;
}
@media (hover: hover) and (pointer: fine) {
    .c-anchor-list-1__link:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .c-anchor-list-1__link {
        -moz-column-gap: 8px;
             column-gap: 8px;
        font-size: 0.8rem;
    }
    .c-anchor-list-1--type2 .c-anchor-list-1__link {
        -moz-column-gap: 5px;
             column-gap: 5px;
    }
}
.c-anchor-list-1__link::after {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    -webkit-mask: url("/assets/img/common/icon_chevron-down.svg") 50% 50%/12px auto no-repeat;
            mask: url("/assets/img/common/icon_chevron-down.svg") 50% 50%/12px auto no-repeat;
    background-color: #000;
}
@media screen and (max-width: 992px) {
    .c-anchor-list-1__link::after {
        width: 12px;
        height: 12px;
        -webkit-mask-size: 10px auto;
                mask-size: 10px auto;
    }
}
.safari .c-anchor-list-1__link::after {
    -webkit-mask-size: 12.5px auto;
            mask-size: 12.5px auto;
}
@media screen and (max-width: 992px) {
    .safari .c-anchor-list-1__link::after {
        -webkit-mask-size: 11px auto;
                mask-size: 11px auto;
    }
}

.c-anchor-list-1__item--guide .c-anchor-list-1__link {
    display: flex;
    align-items: center;
}
.c-anchor-list-1__item--guide .c-anchor-list-1__link::before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 20px;
    background: url("/assets/img/common/icon_beginner.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-anchor-list-1__item--guide .c-anchor-list-1__link::before {
        width: 11px;
        height: 16px;
    }
}

/*  c-anchor-list-2 (大会_競技個別-結果、横スクロールなしパターン)
--------------------------------------------- */
.c-anchor-list-2__list {
    display: flex;
    flex-wrap: wrap;
    padding-block: 12px;
    row-gap: var(--1gap);
    margin-left: calc(var(--0_5gap) * -1);
}
@media screen and (max-width: 992px) {
    .c-anchor-list-2__list {
        display: block;
        margin-left: 0;
        padding-block: 0;
    }
}
.c-anchor-list-2__item {
    position: relative;
    padding-inline: 10px;
}
@media screen and (max-width: 992px) {
    .c-anchor-list-2__item {
        padding-inline: 0;
        border-bottom: 1px solid #EFEFEF;
    }
}
.c-anchor-list-2__item:not(:last-of-type)::after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -0.5px;
    content: "";
    display: block;
    width: 1px;
    height: 16px;
    background-color: #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-anchor-list-2__item:not(:last-of-type)::after {
        display: none;
    }
}
.c-anchor-list-2__link {
    display: flex;
    align-items: center;
    -moz-column-gap: var(--0_5gap);
         column-gap: var(--0_5gap);
    font-size: 0.875rem;
    font-weight: bold;
}
@media (hover: hover) and (pointer: fine) {
    .c-anchor-list-2__link:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .c-anchor-list-2__link {
        position: relative;
        -moz-column-gap: 8px;
             column-gap: 8px;
        padding: 13px 20px 13px 0;
        font-size: 0.8666666667rem;
        line-height: 1.4;
    }
}
.c-anchor-list-2__link::after {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    -webkit-mask: url("/assets/img/common/icon_chevron-down.svg") 50% 50%/12px auto no-repeat;
            mask: url("/assets/img/common/icon_chevron-down.svg") 50% 50%/12px auto no-repeat;
    background-color: #000;
}
@media screen and (max-width: 992px) {
    .c-anchor-list-2__link::after {
        position: absolute;
        top: 50%;
        right: 1px;
        transform: translateY(-50%);
        width: 13px;
        height: 13px;
        -webkit-mask-size: 11px auto;
                mask-size: 11px auto;
    }
}

/* ---------------------------------------------
*   banner
--------------------------------------------- */
.c-banner-1 {
    display: block;
    width: 630px;
    max-width: 100%;
    margin-inline: auto;
}
.c-banner-1 img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* ---------------------------------------------
*   block
--------------------------------------------- */
/*  c-block-1 (TOPページ KV下)
--------------------------------------------- */
.c-block-1 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    max-width: 1920px;
    margin-inline: auto;
}
@media screen and (max-width: 767.98px) {
    .c-block-1 {
        grid-template-columns: max(280px, 50%) auto;
    }
}
@media screen and (max-width: 576px) {
    .c-block-1 {
        display: flex;
        flex-direction: row-reverse;
        -moz-column-gap: 10px;
             column-gap: 10px;
        padding-left: 16px;
    }
}
.c-block-1__ttl {
    display: flex;
    align-items: center;
}
@media screen and (max-width: 576px) {
    .c-block-1__ttl {
        display: block;
        width: 137px;
        flex-shrink: 0;
    }
}
.c-block-1__ttl img {
    width: 100%;
}
.c-block-1__txt {
    display: flex;
    align-items: center;
    padding: 12.6041666667% 12.2916666667%;
    font-size: clamp(14px, 1.2vw, 1.125rem);
    font-weight: bold;
    line-height: 1.8;
    letter-spacing: 0.02em;
}
@media screen and (max-width: 767.98px) {
    .c-block-1__txt {
        padding-inline: 16px;
    }
}
@media screen and (max-width: 992px) {
    .c-block-1__txt {
        text-align: justify;
    }
}
@media screen and (max-width: 576px) {
    .c-block-1__txt {
        display: block;
        padding: 24px 0 0;
        font-size: 1rem;
        letter-spacing: 0;
    }
}
@media screen and (max-width: 1550px) {
    .c-block-1 .br-1 {
        display: none;
    }
}

/*  c-block-2 (静的ページ)
--------------------------------------------- */
.c-block-2 {
    display: flex;
    flex-direction: row-reverse;
    -moz-column-gap: var(--1gap);
         column-gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-block-2 {
        display: flex;
        flex-direction: initial;
        flex-wrap: wrap;
    }
}
.c-block-2__img {
    position: relative;
    aspect-ratio: 16/9;
    width: 49.21875%;
    flex-shrink: 0;
    border: 1px solid rgba(0, 0, 0, 0.06);
}
@media screen and (max-width: 992px) {
    .c-block-2__img {
        width: 100%;
        margin-top: 13px;
        border: none;
    }
}
.c-block-2__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-block-2__txt-wrap {
    padding: 30px var(--1gap) 30px 0;
    border-top: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
    flex-grow: 1;
}
@media screen and (max-width: 992px) {
    .c-block-2__txt-wrap {
        display: contents;
        border: none;
    }
}
.c-block-2__ttl {
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-block-2__ttl {
        order: -1;
        font-size: 1.1333333333rem;
        line-height: 1.48;
    }
}
.c-block-2__txt {
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.7;
}
@media screen and (max-width: 992px) {
    .c-block-2__txt {
        font-size: 0.8666666667rem;
    }
}
.c-block-2__ttl + .c-block-2__txt {
    margin-top: 13px;
}
@media screen and (max-width: 992px) {
    .c-block-2__ttl + .c-block-2__txt {
        margin-top: 15px;
    }
}
.c-block-2__btn {
    margin-top: 17px;
}
@media screen and (max-width: 992px) {
    .c-block-2__btn {
        margin-top: 16px;
    }
}
@media screen and (max-width: 992px) {
    .c-block-2--type2 .c-block-2__img {
        margin-top: 0;
        border: 1px solid rgba(0, 0, 0, 0.06);
    }
}
@media screen and (max-width: 992px) {
    .c-block-2--type2 .c-block-2__txt-wrap {
        display: block;
        padding: 13px;
    }
}
@media screen and (max-width: 992px) {
    .c-block-2--type2 .c-block-2__ttl + .c-block-2__txt {
        margin-top: 10px;
    }
}

/*  c-block-3 (大会_検索結果)
--------------------------------------------- */
.c-block-3__head {
    position: sticky;
    top: calc((var(--header-height) - 1) * 1px);
    z-index: 1;
    background-color: #EFEFEF;
}
.c-block-3__ttl {
    padding-block: 12px;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.4;
}
.c-block-3__ttl-bar {
    margin-inline: 0.7em;
}
.c-block-3__body {
    padding-block: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-block-3__body {
        padding-block: var(--0_5gap);
    }
}
.c-block-3:last-of-type .c-block-3__body {
    padding-bottom: 0;
}

/*  c-block-4 (大会別 選手詳細)
--------------------------------------------- */
.c-block-4 {
    display: grid;
    grid-template-columns: 240px auto;
    -moz-column-gap: var(--1gap);
         column-gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-block-4 {
        grid-template-columns: 104px auto;
    }
}
.c-block-4__img {
    aspect-ratio: 4/5;
}
.c-block-4__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
@media screen and (max-width: 992px) {
    .c-block-4__txt-wrap {
        display: contents;
    }
}
@media screen and (max-width: 992px) {
    .c-block-4__ttl {
        display: grid;
        place-content: center;
        justify-content: flex-start;
        padding-block: 1em;
    }
}
.c-block-4__ttl-txt {
    display: block;
    margin-top: -0.2em;
    font-size: 1.75rem;
    font-weight: bold;
    line-height: 1.3;
}
@media screen and (max-width: 992px) {
    .c-block-4__ttl-txt {
        font-size: 1.4666666667rem;
    }
}
.c-block-4__ttl-txt-small {
    display: block;
    margin-top: 2px;
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-block-4__ttl-txt-small {
        font-size: 0.7333333333rem;
        line-height: 1.3;
    }
}
.c-block-4__body {
    margin-top: 18px;
}
@media screen and (max-width: 992px) {
    .c-block-4__body {
        grid-column: span 2;
    }
}
/*  c-block-5 (結果 対戦個人タイプ)
--------------------------------------------- */
.c-block-5 {
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-block-5 {
        font-size: 0.8666666667rem;
    }
}
.c-block-5 + .c-block-5 {
    margin-top: var(--1gap);
}
.c-block-5__main {
    text-align: center;
    display: flex;
    border-top: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-block-5__main {
        flex-wrap: wrap;
    }
}
.c-block-5__left, .c-block-5__right {
    display: contents;
}
.c-block-5__name {
    font-weight: 500;
    width: 30%;
    padding: 10px 5px;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media screen and (max-width: 992px) {
    .c-block-5__name {
        width: 50%;
        border-bottom: 1px solid #EFEFEF;
    }
}
.c-block-5__left .c-block-5__name {
    order: 1;
}
@media screen and (max-width: 992px) {
    .c-block-5__left .c-block-5__name {
        border-right: 1px solid #EFEFEF;
    }
}
.c-block-5__right .c-block-5__name {
    order: 5;
}
@media screen and (max-width: 992px) {
    .c-block-5__right .c-block-5__name {
        order: 2;
    }
}
.c-block-5__score {
    width: 10%;
    border-left: 1px solid #EFEFEF;
    border-right: 1px solid #EFEFEF;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media screen and (max-width: 992px) {
    .c-block-5__score {
        width: 30%;
        border: none;
    }
}
.c-block-5__left .c-block-5__score {
    order: 2;
}
@media screen and (max-width: 992px) {
    .c-block-5__left .c-block-5__score {
        order: 3;
    }
}
.c-block-5__right .c-block-5__score {
    order: 4;
}
@media screen and (max-width: 992px) {
    .c-block-5__right .c-block-5__score {
        order: 5;
    }
}
.c-block-5__center {
    order: 3;
    padding: 15px 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 20%;
}
@media screen and (max-width: 992px) {
    .c-block-5__center {
        order: 4;
        border-left: 1px solid #EFEFEF;
        border-right: 1px solid #EFEFEF;
        width: 40%;
    }
}
.c-block-5__info {
    padding-block: 10px;
    line-height: 1.7;
    border-bottom: 1px solid #EFEFEF;
}
.c-block-5__info:empty {
    border-top: none;
    border-bottom: none;
    margin: 0;
    padding: 0;
}

/*  c-block-favorite
--------------------------------------------- */
.c-block-favorite {
    padding-top: 54px;
}
@media screen and (max-width: 992px) {
    .c-block-favorite {
        padding-top: 40px;
    }
}
.c-block-favorite__body {
    padding-top: 16px;
}
@media screen and (max-width: 992px) {
    .c-block-favorite__body {
        padding-top: 13px;
    }
}
.c-block-favorite__btn:not(:first-of-type) {
    margin-top: var(--1gap);
}
.c-block-favorite__btn-wrap {
    position: relative;
    max-width: 500px;
    width: 100%;
}
.c-block-favorite__btn-wrap:not(:first-of-type) {
    margin-top: var(--1gap);
}
.c-block-favorite__tooltip {
    right: 0;
    bottom: calc(100% + 14px);
    z-index: 10;
    display: none;
    width: -moz-max-content;
    width: max-content;
}
.c-block-favorite__tooltip.c-tool-tip-1 {
    position: absolute;
}
@media screen and (max-width: 992px) {
    .c-block-favorite__tooltip.c-tool-tip-1 {
        position: fixed;
    }
}
.c-block-favorite__tooltip.is-show {
    display: block;
}

/*  c-block-edit
--------------------------------------------- */
.c-block-edit {
    font-size: 0;
    display: flex;
    align-items: center;
}
.c-block-edit__link-list {
    display: flex;
    flex-wrap: wrap;
}
.c-block-edit__link-item {
    position: relative;
    padding-inline: 8px;
}
.c-block-edit__link-item:first-of-type {
    padding-left: 0;
}
.c-block-edit__link-item:last-of-type {
    padding-right: 0;
}
.c-block-edit__link {
    display: inline-block;
    font-size: 0.875rem;
    color: #404045;
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .c-block-edit__link:hover {
        text-decoration: none;
    }
}
@media screen and (max-width: 992px) {
    .c-block-edit__link {
        font-size: 0.8666666667rem;
    }
}
.c-block-edit__link-item:not(:first-of-type) .c-block-edit__link::before {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    display: block;
    content: "";
    width: 1px;
    height: 16px;
    margin-top: 0.1em;
    background-color: #EFEFEF;
}
.c-block-edit__icon {
    display: block;
    width: 14px;
    margin-top: 1px;
    margin-left: 8px;
}
@media screen and (max-width: 992px) {
    .c-block-edit__icon {
        width: 13px;
    }
}
.c-block-edit__icon img {
    width: 100%;
}

/*  c-block-sticky (カレンダー)
--------------------------------------------- */
.c-block-sticky {
    position: sticky;
    top: calc(var(--header-height) * 1px);
    z-index: 2;
    background-color: #fff;
}
.c-block-sticky .c-select {
    max-width: 343px;
}
@media screen and (max-width: 992px) {
    .c-block-sticky .c-select {
        max-width: initial;
    }
}

/*  c-block-calendar
--------------------------------------------- */
.c-block-calendar__head {
    display: grid;
    grid-template-columns: 68px 147px 40.625% auto;
    -moz-column-gap: 3.125%;
         column-gap: 3.125%;
    padding-block: 36px 17px;
    color: #757577;
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-block-calendar__head {
        display: none;
    }
}
.c-block-calendar__cassette-head {
    position: sticky;
    top: calc((103 + var(--header-height)) * 1px);
    z-index: 1;
    padding-block: 12px;
    background-color: #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-block-calendar__cassette-head {
        top: calc((75 + var(--header-height)) * 1px);
    }
}
.c-block-calendar__cassette-head-txt {
    font-size: 0.875rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-block-calendar__cassette-head-txt {
        font-size: 0.8666666667rem;
    }
}
.c-block-calendar__item {
    display: grid;
    grid-template-columns: 68px 147px 40.625% auto;
    -moz-column-gap: 3.125%;
         column-gap: 3.125%;
    padding-block: 14px;
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-block-calendar__item {
        grid-template-columns: min-content auto;
        -moz-column-gap: 8px;
             column-gap: 8px;
        padding-block: 16px 15px;
        font-size: 0.8666666667rem;
    }
}
.c-block-calendar__item:not(:first-of-type) {
    border-top: 1px solid #EFEFEF;
}
.c-block-calendar__cassette:last-of-type .c-block-calendar__item:last-of-type {
    border-bottom: 1px solid #EFEFEF;
}
.c-block-calendar__category {
    display: block;
}
@media screen and (max-width: 992px) {
    .c-block-calendar__category {
        min-width: 68px;
    }
}
.c-block-calendar__date, .c-block-calendar__detail, .c-block-calendar__place {
    display: block;
    padding-top: 2px;
}
@media screen and (max-width: 992px) {
    .c-block-calendar__date, .c-block-calendar__detail, .c-block-calendar__place {
        padding-top: 0;
    }
}
@media screen and (max-width: 992px) {
    .c-block-calendar__detail, .c-block-calendar__place {
        grid-column: span 2;
    }
}
@media screen and (max-width: 992px) {
    .c-block-calendar__detail {
        margin-top: 5px;
    }
}
.c-block-calendar__detail a {
    --color: #000;
    color: var(--color);
    --color: #404045;
}
.c-block-calendar__detail a::after {
    position: relative;
    top: 0.08em;
    content: "";
    display: inline-block;
    margin-left: 0.5em;
    background-color: var(--color);
}
.c-block-calendar__detail a[target=_blank]::after, .c-block-calendar__detail a[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
.c-block-calendar__detail a[href*=".pdf"]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
}
.c-block-calendar__detail a--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_arrow-right-square.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_arrow-right-square.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-block-calendar__place {
        margin-top: 4px;
    }
}

/*  c-block-col
--------------------------------------------- */
.c-block-col {
    margin-top: 45px;
    padding-bottom: 53px;
    border-bottom: 1px solid #EFEFEF;
}
@media screen and (max-width: 1415px) {
    .c-block-col {
        padding-inline: 75px 60px;
    }
}
@media screen and (max-width: 1093px) {
    .c-block-col {
        margin-top: 30px;
        padding-inline: 32px 37px;
    }
}
@media screen and (max-width: 808px) {
    .c-block-col {
        margin-top: 17px;
        padding-inline: 20px 20px;
        padding-bottom: 17px;
        border-bottom: none;
    }
}
@media screen and (max-width: 767.98px) {
    .c-block-col {
        padding-inline: 0;
        padding-bottom: 0;
    }
}
.c-block-col--no-border {
    border-bottom: none;
}
.c-block-col__inner {
    display: grid;
    grid-template-columns: auto 46.875%;
    -moz-column-gap: 40px;
         column-gap: 40px;
}
@media screen and (max-width: 1415px) {
    .c-block-col__inner {
        grid-template-columns: auto 44.5414847162%;
    }
}
@media screen and (max-width: 1093px) {
    .c-block-col__inner {
        grid-template-columns: auto 42.6829268293%;
    }
}
@media screen and (max-width: 808px) {
    .c-block-col__inner {
        grid-template-columns: auto 44.5652173913%;
    }
}
@media screen and (max-width: 767.98px) {
    .c-block-col__inner {
        display: block;
    }
}
.c-block-col--type2 .c-block-col__inner {
    grid-template-columns: auto 47.65625%;
}
@media screen and (max-width: 1415px) {
    .c-block-col--type2 .c-block-col__inner {
        grid-template-columns: auto 45.4148471616%;
    }
}
@media screen and (max-width: 1093px) {
    .c-block-col--type2 .c-block-col__inner {
        grid-template-columns: auto 43.6991869919%;
    }
}
@media screen and (max-width: 808px) {
    .c-block-col--type2 .c-block-col__inner {
        grid-template-columns: auto 45.9239130435%;
    }
}
@media screen and (max-width: 767.98px) {
    .c-block-col--type2 .c-block-col__inner {
        display: block;
    }
}
.c-block-col__ttl {
    font-size: 2.625rem;
    font-weight: bold;
    line-height: 1.3;
}
@media screen and (max-width: 1415px) {
    .c-block-col__ttl {
        font-size: min(2.890625vw, 2.3125rem);
    }
}
@media screen and (max-width: 808px) {
    .c-block-col__ttl {
        font-size: min(3.3854166667vw, 1.625rem);
    }
}
@media screen and (max-width: 767.98px) {
    .c-block-col__ttl {
        font-size: 1.5333333333rem;
    }
}
@media screen and (max-width: 992px) {
    .c-block-col__ttl img {
        width: 100%;
    }
}
.c-block-col--type3 .c-block-col__ttl {
    padding-right: 20%;
}
@media screen and (max-width: 767.98px) {
    .c-block-col--type3 .c-block-col__ttl {
        padding-right: 0;
    }
}
.c-block-col__txt {
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.8;
}
@media screen and (max-width: 1093px) {
    .c-block-col__txt {
        font-size: 0.875rem;
    }
}
@media screen and (max-width: 808px) {
    .c-block-col__txt {
        font-size: 0.8125rem;
    }
}
@media screen and (max-width: 767.98px) {
    .c-block-col__txt {
        margin-top: 13px;
        font-size: 0.8666666667rem;
        line-height: 1.7;
    }
}
.c-block-col__txt:not(:first-of-type) {
    margin-top: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-block-col__txt:not(:first-of-type) {
        margin-top: 6px;
    }
}

/* ---------------------------------------------
*   box
--------------------------------------------- */
/*  c-box-note
--------------------------------------------- */
.c-box-note {
    border: 1px solid #F0252D;
    font-size: 1rem;
    line-height: 1.75;
}
@media screen and (max-width: 992px) {
    .c-box-note {
        font-size: 0.8rem;
    }
}
.c-box-note__ttl {
    padding: 8px 13px;
    font-weight: bold;
    background-color: rgba(240, 37, 45, 0.14);
}
.c-box-note__body {
    padding-inline: 1em;
}
@media screen and (max-width: 992px) {
    .c-box-note__body {
        padding: 9px 10px 9px 13px;
    }
}
.c-box-note__item {
    padding-block: 16px;
}
@media screen and (max-width: 992px) {
    .c-box-note__item {
        padding-block: 9px;
    }
}
.c-box-note__item:first-of-type {
    padding-top: 16px;
}
@media screen and (max-width: 992px) {
    .c-box-note__item:first-of-type {
        padding-top: 0;
    }
}
.c-box-note__item:not(:first-of-type) {
    border-top: 1px solid #EFEFEF;
}
.c-box-note__item-ttl {
    font-weight: bold;
}
.c-box-note__item-date {
    font-weight: normal;
    color: #757577;
}
.c-box-note__item-txt-link {
    display: inline-block;
    color: #F0252D;
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .c-box-note__item-txt-link:hover {
        text-decoration: none;
    }
}
.c-box-note__item-txt-link[target=_blank]::after {
    content: "";
    position: relative;
    top: 0.05em;
    display: inline-block;
    width: 0.8em;
    height: 0.8em;
    margin-left: 0.2em;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
    background-color: #F0252D;
}

.c-box-1 {
    color: #fff;
    background-color: #000;
    margin-block: 56px 27px;
    padding: 21.2px 20px 22.4px;
}
@media screen and (max-width: 992px) {
    .c-box-1 {
        padding: 16.6px 16px 15.25px;
    }
}
.c-box-1__ttl {
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 7.6px;
}
@media screen and (max-width: 992px) {
    .c-box-1__ttl {
        font-size: 1.1333333333rem;
        margin-bottom: 6.85px;
    }
}
.c-box-1__body {
    font-size: 1rem;
    line-height: 1.7;
}
@media screen and (max-width: 992px) {
    .c-box-1__body {
        font-size: 1rem;
    }
}

.c-box-2 {
    border-top: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
    padding-block: 35px;
}
.c-wysiwyg-3 .c-box-2__ttl {
    margin-top: 0;
}
.c-box-2__note {
    color: #757577;
    font-size: 0.9375rem;
    line-height: 1.4;
    margin-top: 35px;
}
@media screen and (max-width: 992px) {
    .c-box-2__note {
        font-size: 0.8rem;
    }
}

/* ---------------------------------------------
*   btn
--------------------------------------------- */
/*  c-btn
--------------------------------------------- */
.c-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 8px;
         column-gap: 8px;
    max-width: 400px;
    width: 100%;
    margin-inline: auto;
    padding: 10px 1em;
    font-size: 0.9375rem;
    font-weight: 500;
    border: 1px solid #000;
    color: #404045;
    text-align: center;
}
@media screen and (max-width: 992px) {
    .c-btn {
        max-width: initial;
        border-right: none;
        border-left: none;
        border-color: #EFEFEF;
        font-size: 1rem;
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-btn:not([disabled]) {
        transition: opacity 300ms;
    }
    .c-btn:not([disabled]):hover {
        opacity: 0.8;
    }
}
.c-btn[disabled] {
    opacity: 0.7;
    cursor: not-allowed;
}
.firefox .c-btn {
    padding: 9px 1em 11px;
}

.c-btn--type2 {
    color: #000;
}
@media screen and (max-width: 992px) {
    .c-btn--type2 {
        border: 1px solid #000;
    }
}
.c-btn--type2::after {
    background-color: #000;
}
@media (hover: hover) and (pointer: fine) {
    .c-btn--type2:not([disabled]), .c-btn--type2:not([disabled])::after {
        transition: opacity 0.15s ease-in-out, background-color 0.15s ease-in-out, color 0.15s ease-in-out;
    }
    .c-btn--type2:not([disabled]):hover {
        opacity: unset;
        background-color: #000;
        color: #fff;
    }
    .c-btn--type2:not([disabled]):hover::after {
        background-color: #FAFAFA;
    }
}
@media (prefers-reduced-motion: reduce) {
    .c-btn--type2:not([disabled]), .c-btn--type2:not([disabled])::after {
        transition-duration: 1ms;
    }
}
.c-btn::after {
    position: relative;
    top: 0.05em;
    content: "";
    display: inline-block;
    flex-shrink: 0;
    width: 6px;
    height: 12px;
    background-color: #404045;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
}

/*  c-btn-2 (新規会員登録＆ログイン)
--------------------------------------------- */
.c-btn-2 {
    --base-color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 8px;
         column-gap: 8px;
    max-width: 400px;
    width: 100%;
    margin-inline: auto;
    min-height: 44px;
    padding: 0.5em 1em;
    font-size: 0.9375rem;
    font-weight: bold;
    border: 2px solid var(--base-color);
    color: var(--base-color);
    text-align: center;
}
@media screen and (max-width: 992px) {
    .c-btn-2 {
        max-width: initial;
        font-size: 0.9333333333rem;
    }
}
:where(.l-container-fixed-bottom) .c-btn-2 {
    margin-inline: 0;
    background-color: #fff;
}
@media (hover: hover) and (pointer: fine) {
    .c-btn-2:not([disabled]) {
        transition: opacity 300ms;
    }
    .c-btn-2:not([disabled]):hover {
        opacity: 0.8;
    }
}
.c-btn-2[disabled] {
    opacity: 0.7;
    cursor: not-allowed;
}
.c-btn-2::after {
    position: relative;
    top: 0.06em;
    content: "";
    display: inline-block;
    flex-shrink: 0;
    width: 7px;
    height: 13px;
    background-color: var(--base-color);
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .windows .c-btn-2::after {
        top: 0.05em;
    }
}

.firefox .c-btn-2::after {
    top: 0.1em;
}

.c-btn-2--icon-external::after {
    width: 13px;
    height: 13px;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
.c-btn-2--bg-black {
    --base-color: #fff;
    background-color: #000;
    border: none;
}
.c-btn-2--light {
    border: none;
    font-weight: 400;
}
.c-btn-2--icon-x {
    -moz-column-gap: 10px;
         column-gap: 10px;
}
.c-btn-2--icon-x::after {
    width: 12px;
    height: 12px;
    -webkit-mask-image: url("/assets/img/common/icon_x.svg");
            mask-image: url("/assets/img/common/icon_x.svg");
}
.c-btn-2--small {
    max-width: 114px;
}
.c-btn-2--arrow-left {
    flex-direction: row-reverse;
}
.c-btn-2--arrow-left::after {
    transform: scaleX(-1);
}

/*  c-btn-3 (アカウント編集_ログインTOP)
--------------------------------------------- */
.c-btn-3 {
    --color: #000;
    position: relative;
    display: block;
    width: 100%;
    padding: 18px var(--2gap) 18px var(--1gap);
    border: 1px solid var(--color);
    color: var(--color);
    font-size: 1rem;
    line-height: 1.4;
    text-align: left;
}
@media screen and (max-width: 992px) {
    .c-btn-3 {
        padding: 11px var(--2gap) 12px 0;
        border-left: none;
        border-right: none;
        border-bottom: none;
        border-color: #EFEFEF;
        font-size: 1rem;
    }
    .c-btn-3:last-of-type {
        border-bottom: 1px solid #EFEFEF;
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-btn-3:not([disabled]) {
        transition: opacity 300ms;
    }
    .c-btn-3:not([disabled]):hover {
        opacity: 0.8;
    }
}
.c-btn-3[disabled] {
    opacity: 0.7;
    cursor: not-allowed;
}
@media screen and (min-width: 993px) {
    .c-btn-3--type2 {
        border-color: #EFEFEF;
    }
}
.c-btn-3:not(:first-of-type) {
    margin-top: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-btn-3:not(:first-of-type) {
        margin-top: 0;
    }
}
.c-btn-3::after {
    position: absolute;
    top: 50%;
    right: 19px;
    transform: translateY(-50%);
    content: "";
    position: absolute;
    display: block;
    width: 7px;
    height: 13px;
    background-color: var(--color);
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-btn-3::after {
        right: 4px;
    }
}

/*  c-btn-4
--------------------------------------------- */
.c-btn-4 {
    --base-color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 8px;
         column-gap: 8px;
    max-width: 400px;
    width: 100%;
    margin-inline: auto;
    min-height: 60px;
    padding: 0.5em 1em;
    font-size: 1.25rem;
    font-weight: bold;
    border: 2px solid var(--base-color);
    color: var(--base-color);
    text-align: center;
}
@media screen and (max-width: 992px) {
    .c-btn-4 {
        max-width: initial;
        font-size: 0.9333333333rem;
    }
}
:where(.l-container-fixed-bottom) .c-btn-4 {
    margin-inline: 0;
    background-color: #fff;
}
@media (hover: hover) and (pointer: fine) {
    .c-btn-4:not([disabled]) {
        transition: opacity 300ms;
    }
    .c-btn-4:not([disabled]):hover {
        opacity: 0.8;
    }
}
.c-btn-4[disabled] {
    opacity: 0.7;
    cursor: not-allowed;
}
.c-btn-4::after {
    position: relative;
    top: 0.06em;
    content: "";
    display: inline-block;
    flex-shrink: 0;
    width: 9.3333333333px;
    height: 17.3333333333px;
    background-color: var(--base-color);
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .windows .c-btn-4::after {
        top: 0.05em;
    }
}

.firefox .c-btn-4::after {
    top: 0.1em;
}

.c-btn-4--icon-external::after {
    width: 17.3333333333px;
    height: 17.3333333333px;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
.c-btn-4--bg-black {
    --base-color: #fff;
    background-color: #000;
    border: none;
}
.c-btn-4--bg-red {
    --base-color: #fff;
    background-color: #F0252D;
    border: none;
}

/*  c-btn-toggle
--------------------------------------------- */
.c-btn-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 6px;
         column-gap: 6px;
    max-width: 400px;
    width: 100%;
    margin-inline: auto;
    padding: 10px 1em;
    font-size: 0.9375rem;
    font-weight: 500;
    border: 1px solid #000;
    color: #000;
    text-align: center;
}
@media (hover: hover) and (pointer: fine) {
    .c-btn-toggle, .c-btn-toggle::after {
        transition: opacity 0.15s ease-in-out, background-color 0.15s ease-in-out, color 0.15s ease-in-out;
    }
    .c-btn-toggle:hover {
        opacity: unset;
        background-color: #000;
        color: #fff;
    }
    .c-btn-toggle:hover::after {
        background-color: #FAFAFA;
    }
}
@media (prefers-reduced-motion: reduce) {
    .c-btn-toggle, .c-btn-toggle::after {
        transition-duration: 1ms;
    }
}
@media screen and (max-width: 992px) {
    .c-btn-toggle {
        max-width: initial;
        font-size: 1rem;
    }
}
.c-btn-toggle__icon-toggle {
    position: relative;
    width: 12px;
    height: 12px;
}
.c-btn-toggle__icon-toggle::before, .c-btn-toggle__icon-toggle::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    display: block;
    background-color: currentColor;
}
.c-btn-toggle__icon-toggle::before {
    width: 100%;
    height: 1px;
}
.c-btn-toggle__icon-toggle::after {
    width: 1px;
    height: 100%;
}
.c-btn-toggle.is-open .c-btn-toggle__icon-toggle::after {
    display: none;
}
.c-btn-toggle__icon-arrow {
    width: 7px;
    height: 14px;
}

/*  c-btn-toggle-2 (競技詳細ページ)
--------------------------------------------- */
.c-btn-toggle-2 {
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 8px;
         column-gap: 8px;
    width: 100%;
    margin-inline: auto;
    padding: 9px 1em;
    border: 2px solid #000;
    font-size: 0.9375rem;
    font-weight: bold;
    color: #000;
    text-align: center;
}
@media (hover: hover) and (pointer: fine) {
    .c-btn-toggle-2, .c-btn-toggle-2::after {
        transition: opacity 0.15s ease-in-out, background-color 0.15s ease-in-out, color 0.15s ease-in-out;
    }
    .c-btn-toggle-2:hover {
        opacity: unset;
        background-color: #000;
        color: #fff;
    }
    .c-btn-toggle-2:hover::after {
        background-color: #FAFAFA;
    }
}
@media (prefers-reduced-motion: reduce) {
    .c-btn-toggle-2, .c-btn-toggle-2::after {
        transition-duration: 1ms;
    }
}
@media screen and (max-width: 992px) {
    .c-btn-toggle-2 {
        max-width: initial;
        font-size: 1rem;
    }
}
.c-btn-toggle-2__icon-toggle {
    position: relative;
    top: 0.05em;
    width: 15px;
    height: 15px;
    border-radius: 3px;
    background-color: #000;
}
.c-btn-toggle-2__icon-toggle::before, .c-btn-toggle-2__icon-toggle::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    display: block;
    background-color: #fff;
}
.c-btn-toggle-2__icon-toggle::before {
    width: 8px;
    height: 1px;
}
.c-btn-toggle-2__icon-toggle::after {
    width: 1px;
    height: 8px;
}
.c-btn-toggle-2.is-open .c-btn-toggle-2__icon-toggle::after {
    display: none;
}
.c-btn-toggle-2__icon-arrow {
    width: 7px;
    height: 14px;
}

/*  c-btn-toggle-3 (大会_競技個別_結果)
--------------------------------------------- */
.c-btn-toggle-3 {
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 8px;
         column-gap: 8px;
    max-width: 440px;
    width: 100%;
    margin-inline: auto;
    padding: 9px 1em;
    border: 1px solid #000;
    font-size: 0.9375rem;
    font-weight: 500;
    color: #000;
    text-align: center;
}
@media (hover: hover) and (pointer: fine) {
    .c-btn-toggle-3, .c-btn-toggle-3::after {
        transition: opacity 0.15s ease-in-out, background-color 0.15s ease-in-out, color 0.15s ease-in-out;
    }
    .c-btn-toggle-3:hover {
        opacity: unset;
        background-color: #000;
        color: #fff;
    }
    .c-btn-toggle-3:hover::after {
        background-color: #FAFAFA;
    }
}
@media (prefers-reduced-motion: reduce) {
    .c-btn-toggle-3, .c-btn-toggle-3::after {
        transition-duration: 1ms;
    }
}
@media screen and (max-width: 992px) {
    .c-btn-toggle-3 {
        max-width: initial;
        font-size: 1rem;
    }
}
.c-btn-toggle-3__icon-toggle {
    position: relative;
    top: 0.05em;
    width: 15px;
    height: 15px;
    border-radius: 3px;
    background-color: #000;
}
.c-btn-toggle-3__icon-toggle::before, .c-btn-toggle-3__icon-toggle::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    display: block;
    background-color: #fff;
}
.c-btn-toggle-3__icon-toggle::before {
    width: 8px;
    height: 1px;
}
.c-btn-toggle-3__icon-toggle::after {
    width: 1px;
    height: 8px;
}
.c-btn-toggle-3.is-open .c-btn-toggle-3__icon-toggle::after {
    display: none;
}
.c-btn-toggle-3__icon-arrow {
    width: 7px;
    height: 14px;
}

/*  c-btn-sm (TOP、静的ページ)
--------------------------------------------- */
.c-btn-sm {
    --color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 8px;
         column-gap: 8px;
    width: -moz-fit-content;
    width: fit-content;
    padding: 9px 22px;
    font-size: 0.9375rem;
    font-weight: bold;
    border: 2px solid var(--color);
    color: var(--color);
}
@media (hover: hover) and (pointer: fine) {
    .c-btn-sm, .c-btn-sm::after {
        transition: opacity 0.15s ease-in-out, background-color 0.15s ease-in-out, color 0.15s ease-in-out;
    }
    .c-btn-sm:hover {
        opacity: unset;
        background-color: #000;
        color: #fff;
    }
    .c-btn-sm:hover::after {
        background-color: #FAFAFA;
    }
}
@media (prefers-reduced-motion: reduce) {
    .c-btn-sm, .c-btn-sm::after {
        transition-duration: 1ms;
    }
}
@media screen and (max-width: 992px) {
    .c-btn-sm {
        width: 100%;
        padding-block: 8px;
        font-size: 1rem;
    }
}
.c-btn-sm::after {
    position: relative;
    top: 0.02em;
    content: "";
    display: inline-block;
    flex-shrink: 0;
    width: 7px;
    height: 13px;
    background-color: var(--color, #404045);
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-btn-sm::after {
        top: 0.05em;
    }
}
.c-btn-sm--icon-external::after {
    width: 13px;
    height: 13px;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
.c-btn-sm--icon-search::after {
    top: 0.15em;
    width: 16px;
    height: 16px;
    -webkit-mask: url("/assets/img/common/icon_search.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_search.svg") 0 0/100% 100% no-repeat;
}
.c-btn-sm--bg-red {
    --color: #fff;
    background-color: #F0252D;
    border-color: #F0252D;
}
.c-btn-sm--bg-blue {
    --color: #fff;
    background-color: #0078D0;
    border-color: #0078D0;
}
.c-btn-sm--bg-yellow {
    --color: #fff;
    background-color: #FFB114;
    border-color: #FFB114;
}
.c-btn-sm--bg-green {
    --color: #fff;
    background-color: #00A651;
    border-color: #00A651;
}
.c-btn-sm--bg-black {
    --color: #fff;
    background-color: #000;
    border-color: #000;
}

/*  c-btn-favorite-1
--------------------------------------------- */
.c-btn-favorite-1 {
    display: flex;
    align-items: center;
    -moz-column-gap: 22px;
         column-gap: 22px;
    padding: 10px;
    font-size: 0.9375rem;
    font-weight: 500;
    color: inherit;
}
@media (hover: hover) and (pointer: fine) {
    .c-btn-favorite-1 {
        transition: opacity 300ms;
    }
    .c-btn-favorite-1:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-btn-favorite-1 {
        -moz-column-gap: 15px;
             column-gap: 15px;
        font-size: 0.7333333333rem;
    }
}
.c-btn-favorite-1::after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 18px;
    -webkit-mask: url("/assets/img/common/icon_favorite.svg") 50% 50%/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_favorite.svg") 50% 50%/100% 100% no-repeat;
    background-color: #000;
}
.c-btn-favorite-1.is-active::after {
    -webkit-mask-image: url("/assets/img/common/icon_favorite_fill.svg");
            mask-image: url("/assets/img/common/icon_favorite_fill.svg");
    background-color: #F0252D;
}

/*  c-btn-favorite-2
--------------------------------------------- */
.c-btn-favorite-2 {
    position: relative;
    display: block;
    max-width: 500px;
    width: 100%;
    padding: 10px 50px 10px 16px;
    border: 1px solid #EFEFEF;
    color: inherit;
    font-size: 0.9375rem;
    text-align: left;
}
@media (hover: hover) and (pointer: fine) {
    .c-btn-favorite-2 {
        transition: opacity 300ms;
    }
    .c-btn-favorite-2:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-btn-favorite-2 {
        max-width: initial;
        font-size: 1rem;
    }
}
.c-btn-favorite-2--wide {
    max-width: initial;
}
.c-btn-favorite-2::after {
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 16px;
    height: 14px;
    -webkit-mask: url("/assets/img/common/icon_favorite.svg") 50% 50%/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_favorite.svg") 50% 50%/100% 100% no-repeat;
    background-color: #000;
}
.c-btn-favorite-2.is-active::after {
    -webkit-mask-image: url("/assets/img/common/icon_favorite_fill.svg");
            mask-image: url("/assets/img/common/icon_favorite_fill.svg");
    background-color: #F0252D;
}

/*  c-btn-thumbnail (NEWS詳細)
--------------------------------------------- */
.c-btn-thumbnail {
    position: relative;
    display: flex;
    align-items: center;
    -moz-column-gap: 20px;
         column-gap: 20px;
}
@media (hover: hover) and (pointer: fine) {
    .c-btn-thumbnail {
        transition: opacity 300ms;
    }
    .c-btn-thumbnail:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-btn-thumbnail {
        -moz-column-gap: 16px;
             column-gap: 16px;
    }
}
.c-btn-thumbnail::after {
    position: absolute;
    top: 50%;
    right: 19px;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 6px;
    height: 12px;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}
@media screen and (max-width: 992px) {
    .c-btn-thumbnail::after {
        right: 17px;
    }
}
.c-btn-thumbnail::before {
    position: absolute;
    inset: 0;
    content: "";
    border: 1px solid rgba(0, 0, 0, 0.06);
    z-index: 1;
}
.c-btn-thumbnail__img {
    position: relative;
    display: grid;
    place-content: center;
    width: 58px;
    height: 58px;
    flex-shrink: 0;
}
.c-btn-thumbnail--thumb-small .c-btn-thumbnail__img {
    padding: 14.5px;
}
.c-btn-thumbnail__img img {
    height: 58px;
    -o-object-fit: contain;
       object-fit: contain;
}
.c-btn-thumbnail__txt {
    padding-right: 2em;
    padding-block: 17px;
    font-size: 0.9375rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-btn-thumbnail__txt {
        font-size: 1rem;
    }
}

/*  c-btn-back (お気に入り一覧ページ)
--------------------------------------------- */
.c-btn-back {
    display: flex;
    align-items: center;
    justify-content: center;
    -moz-column-gap: 8px;
         column-gap: 8px;
    width: 400px;
    height: 44px;
    margin-inline: auto;
    font-size: 0.9375rem;
    color: #404045;
    background-color: #fff;
}
@media (hover: hover) and (pointer: fine) {
    .c-btn-back:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .c-btn-back {
        position: sticky;
        z-index: 8;
        bottom: var(--1gap);
        left: var(--1gap);
        width: 167px;
        margin-inline: initial;
        padding-inline: 15px;
        border: 1px solid #EFEFEF;
        font-size: 1rem;
        opacity: 0;
    }
    .c-btn-back.is-show {
        transition: opacity 1s;
        opacity: 1;
    }
}
.c-btn-back::before {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 6px;
    height: 12px;
    -webkit-mask: url("/assets/img/common/icon_chevron-left.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron-left.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}

/*  c-btn-sns (静的ページ)
--------------------------------------------- */
.c-btn-sns-wrap {
    --col: 3;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-btn-sns-wrap {
        --col: 1;
    }
}

.c-btn-sns {
    position: relative;
    display: flex;
    align-items: center;
    padding: 14px 45px 14px 14px;
    -moz-column-gap: 33px;
         column-gap: 33px;
}
@media (hover: hover) and (pointer: fine) {
    .c-btn-sns {
        transition: opacity 300ms;
    }
    .c-btn-sns:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-btn-sns {
        -moz-column-gap: 16px;
             column-gap: 16px;
    }
}
.c-btn-sns::after {
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}
@media screen and (max-width: 992px) {
    .c-btn-sns::after {
        right: 17px;
    }
}
.c-btn-sns::before {
    position: absolute;
    inset: 0;
    content: "";
    border: 1px solid rgba(0, 0, 0, 0.06);
}
.c-btn-sns__img {
    width: 31px;
    height: 31px;
    flex-shrink: 0;
}
.c-btn-sns__img img {
    width: 100%;
}
.c-btn-sns__txt {
    font-size: 0.9375rem;
    font-weight: 500;
    word-break: break-all;
}
@media screen and (max-width: 992px) {
    .c-btn-sns__txt {
        font-size: 1rem;
    }
}

/* ---------------------------------------------
*   calendar
--------------------------------------------- */
/*  c-calendar
--------------------------------------------- */
.c-calendar-wrap {
    position: relative;
}
.js-more-toggle-scope .c-calendar-wrap::before {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    content: "";
    display: block;
    width: 100%;
    height: 80px;
    background: linear-gradient(rgba(255, 255, 255, 0) 0%, #fff 100%);
}

.js-more-toggle-scope.is-open .c-calendar-wrap::before {
    display: none;
}

.c-calendar {
    padding-top: 1px;
}
@media screen and (max-width: 992px) {
    .c-calendar {
        overflow-x: auto;
        scrollbar-width: none;
        padding-bottom: 1px;
    }
    .c-calendar::-webkit-scrollbar {
        display: none;
    }
}
@media screen and (max-width: 992px) {
    .c-calendar__table-wrap {
        width: calc(992px + var(--1gap));
        padding-right: var(--1gap);
    }
    .c-calendar--type2 .c-calendar__table-wrap {
        width: max(100%, 580px + var(--1gap));
    }
}
.c-calendar__table {
    width: 100%;
    table-layout: fixed;
    border-top: 1px solid #EFEFEF;
}
.c-calendar__table :where(th, td) {
    border-right: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
    font-size: 0.875rem;
    line-height: 1.4;
    text-align: center;
}
@media screen and (max-width: 992px) {
    .c-calendar__table :where(th, td) {
        font-size: 0.8666666667rem;
    }
}
.c-calendar__table :where(th, td) {
    vertical-align: middle;
}
.c-calendar__thead th:first-of-type {
    position: relative;
    width: 24.21875%;
    background-color: #FAFAFA;
}
@media screen and (max-width: 992px) {
    .c-calendar__thead th:first-of-type {
        position: sticky;
        left: 0;
        width: 99px;
    }
}
.c-calendar--type2 .c-calendar__thead th:first-of-type {
    width: 22%;
}
@media screen and (max-width: 992px) {
    .c-calendar--type2 .c-calendar__thead th:first-of-type {
        min-width: 105px;
    }
}
.c-calendar__thead th:first-of-type::before {
    content: "";
    position: absolute;
    inset: -1px -1px -1px 0;
    border: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .windows.chrome .c-calendar__thead th:first-of-type::before, .windows.edge .c-calendar__thead th:first-of-type::before {
        inset: -1px 0px -1px 0;
    }
}
.c-calendar__month {
    padding: 7px 1em;
    font-weight: 500;
    background-color: #FAFAFA;
}
@media screen and (max-width: 992px) {
    .c-calendar__month {
        padding-inline: 15px;
        text-align: left;
    }
}
.c-calendar__day {
    padding-block: 7px;
}
@media screen and (max-width: 992px) {
    .c-calendar--type2 .c-calendar__day {
        padding-block: 4px;
        font-size: 0.7333333333rem;
    }
}
.c-calendar__week {
    padding-block: 7px;
}
@media screen and (max-width: 992px) {
    .c-calendar--type2 .c-calendar__week {
        padding-block: 4px;
        font-size: 0.7333333333rem;
    }
}
.c-calendar__name {
    position: relative;
    padding: 14px 16px;
    font-weight: 500;
    text-align: left;
}
@media screen and (max-width: 992px) {
    .c-calendar__name {
        position: sticky;
        left: 0;
        z-index: 1;
        padding: 7px 16px;
        background-color: #fff;
    }
}
.c-calendar__name::before {
    content: "";
    position: absolute;
    inset: 0 -1px 0 0;
    border-inline: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .windows.chrome .c-calendar__name::before, .windows.edge .c-calendar__name::before {
        inset: -1px 0px -1px 0;
    }
}
.c-calendar__name a {
    position: relative;
}
.c-calendar__acc-parent .c-calendar__name {
    padding-right: 26px;
}
@media screen and (max-width: 992px) {
    .c-calendar__name-txt {
        display: flex;
        align-items: center;
        min-height: 44px;
    }
}
.c-calendar__schedule {
    position: relative;
    font-size: 0;
}
.c-calendar__circle {
    position: absolute;
    inset: 0;
}
@media (hover: hover) and (pointer: fine) {
    .c-calendar__circle[href] {
        transition: opacity 300ms;
    }
    .c-calendar__circle[href]:hover {
        opacity: 0.8;
    }
}
.c-calendar__circle::after {
    position: absolute;
    inset: 0;
    margin: auto;
    content: "";
    display: block;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background-color: #FAFAFA;
    border: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-calendar--type2 .c-calendar__circle::after {
        width: 12px;
        height: 12px;
    }
}
.c-calendar__circle[href]::after {
    border: none;
    background-color: #0078D0;
}
.c-calendar__acc-child {
    display: none;
}
.c-calendar__acc-parent.active ~ .c-calendar__acc-child {
    display: table-row;
}
.c-calendar__acc-trigger {
    width: 16px;
    height: 16px;
    display: block;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
}
.c-calendar__acc-trigger:before, .c-calendar__acc-trigger:after {
    content: "";
    display: block;
    background-color: #000;
    width: 14px;
    height: 3px;
    border-radius: 1px;
    position: absolute;
    top: 50%;
    left: 50%;
}
.c-calendar__acc-trigger:before {
    transform: translate(-50%, -50%);
}
.c-calendar__acc-trigger:after {
    transform: translate(-50%, -50%) rotate(90deg);
}
.c-calendar__acc-parent.active .c-calendar__acc-trigger:after {
    transform: translate(-50%, -50%);
}
.c-calendar__star {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background: none;
}
@media (hover: hover) and (pointer: fine) {
    .c-calendar__star[href] {
        transition: opacity 300ms;
    }
    .c-calendar__star[href]:hover {
        opacity: 0.8;
    }
}
.c-calendar__star::before {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    display: block;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: #EFEFEF;
    -webkit-clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
            clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
}
@media screen and (max-width: 992px) {
    .c-calendar__star::before {
        width: 14px;
        height: 14px;
    }
}
.c-calendar__star[href]::before {
    border: none;
    background-color: #0078D0;
}
@media screen and (max-width: 992px) {
    .c-calendar--long-name .c-calendar__thead th:first-of-type {
        width: 111px;
    }
}
.c-calendar--type3 .c-calendar__circle::after {
    border: none;
    background-color: #0078D0;
}
.c-calendar--type3 .c-calendar__name a {
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .c-calendar--type3 .c-calendar__name a:hover {
        text-decoration: none;
    }
}

/* ---------------------------------------------
*   caption
--------------------------------------------- */
/* ---------------------------------------------
*   card
--------------------------------------------- */
/*  c-card-1
--------------------------------------------- */
.c-card-1 {
    position: relative;
    display: grid;
    grid-template-columns: auto 48.4126984127%;
    max-width: 630px;
    margin-inline: auto;
}
@media screen and (max-width: 992px) {
    .c-card-1 {
        grid-template-columns: auto 40.5247813411%;
    }
}
.c-card-1::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 1px solid rgba(0, 0, 0, 0.06);
}
.c-card-1__txt-wrap {
    display: grid;
    place-content: center;
    justify-content: flex-start;
    padding: var(--1gap) var(--2gap) var(--1gap) var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-1__txt-wrap {
        padding-right: 20px;
    }
}
.c-card-1__txt {
    position: relative;
    padding-right: 21px;
    font-size: 1rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-card-1__txt {
        padding-right: 19px;
        font-size: 1rem;
    }
}
.c-card-1__txt::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: block;
    margin-top: 0.08em;
    width: 7px;
    height: 13px;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: #000;
}
@media screen and (max-width: 992px) {
    .c-card-1__txt::after {
        width: 6px;
        height: 12px;
    }
}
.c-card-1__img-wrap {
    display: grid;
    place-content: center;
}
.c-card-1__img img {
    width: auto;
    max-height: 172px;
}
@media screen and (max-width: 992px) {
    .c-card-1__img img {
        max-height: 79px;
    }
}

/*  c-card-2
--------------------------------------------- */
.c-card-2 {
    position: relative;
    display: flex;
}
.c-card-2::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 1px solid rgba(0, 0, 0, 0.06);
}
.c-card-2__txt-wrap {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: var(--1gap);
    flex-grow: 1;
}
@media screen and (max-width: 992px) {
    .c-card-2__txt-wrap {
        padding: var(--0_5gap) var(--1gap);
    }
}
.c-card-2__txt {
    position: relative;
    padding-right: 21px;
    font-size: 1rem;
    font-weight: 500;
    width: 100%;
}
@media screen and (max-width: 992px) {
    .c-card-2__txt {
        padding-right: 19px;
        font-size: 0.8666666667rem;
        line-height: 1.5;
    }
}
.c-card-2__txt::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: block;
    margin-top: 0.08em;
    width: 7px;
    height: 13px;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: #000;
}
@media screen and (max-width: 992px) {
    .c-card-2__txt::after {
        width: 6px;
        height: 12px;
    }
}
.c-card-2[target=_blank] .c-card-2__txt::after {
    width: 14px;
    height: 14px;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-card-2[target=_blank] .c-card-2__txt::after {
        width: 13px;
        height: 13px;
    }
}
.c-card-2[href*=".pdf"] .c-card-2__txt::after {
    width: 14px;
    height: 14px;
    -webkit-mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-card-2[href*=".pdf"] .c-card-2__txt::after {
        width: 13px;
        height: 13px;
    }
}
.c-card-2__img-wrap {
    flex-shrink: 0;
}
.c-card-2__img {
    height: 100%;
}
.c-card-2__img img {
    width: auto;
    height: 127px;
    -o-object-fit: contain;
       object-fit: contain;
}
@media screen and (max-width: 992px) {
    .c-card-2__img img {
        height: 79px;
        min-height: 100%;
    }
}

/*  c-card-list-1
--------------------------------------------- */
.c-card-list-1 {
    --col: 4;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-1 {
        --col: 2;
        gap: 0 var(--1gap);
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-1 {
        display: block;
        gap: var(--1gap);
    }
}
.c-card-list-1__item:first-of-type {
    grid-area: 1/1/3/3;
}
@media screen and (max-width: 992px) {
    .c-card-list-1__item:first-of-type {
        grid-area: initial;
    }
}
.c-card-list-1__item:nth-of-type(2) {
    grid-area: 1/3/3/5;
}
@media screen and (max-width: 992px) {
    .c-card-list-1__item:nth-of-type(2) {
        grid-area: initial;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-1__item:nth-of-type(2) {
        margin-top: var(--1gap);
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-1__item:nth-of-type(3) {
        margin-top: var(--1gap);
    }
    .c-card-list-1__item:nth-of-type(n+3) {
        padding-inline: 16px;
    }
}
.c-card-list-1__item-link {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-bottom: 20px;
}
.c-card-list-1__item:nth-of-type(n+3) .c-card-list-1__item-link {
    padding-bottom: 16px;
}
@media screen and (max-width: 992px) {
    .c-card-list-1__item:nth-of-type(n+3) .c-card-list-1__item-link {
        display: grid;
        grid-template-columns: 40.5247813411% auto;
        -moz-column-gap: var(--1gap);
             column-gap: var(--1gap);
        padding-block: var(--1gap);
        border-top: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-1__item:nth-of-type(1) .c-card-list-1__item-link, .c-card-list-1__item:nth-of-type(2) .c-card-list-1__item-link {
        padding-bottom: 0;
    }
}
.c-card-list-1__img {
    aspect-ratio: 16/9;
}
.c-card-list-1__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    background-color: #EFEFEF;
}
.c-card-list-1__txt-wrap {
    display: contents;
}
@media screen and (max-width: 992px) {
    .c-card-list-1__txt-wrap {
        display: block;
        padding: 12px 16px 14px;
    }
    .c-card-list-1__item:nth-of-type(n+3) .c-card-list-1__txt-wrap {
        padding: 0;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-1__item:nth-of-type(n+3) .c-card-list-1__txt-wrap {
        display: flex;
        flex-direction: column;
    }
}
.c-card-list-1__ttl {
    margin-top: 16px;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-card-list-1__ttl {
        margin-top: 0;
        font-size: 1.1333333333rem;
    }
}
.c-card-list-1__item:nth-of-type(n+3) .c-card-list-1__ttl {
    margin-top: 12px;
    font-size: 0.875rem;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.5;
}
@media screen and (max-width: 992px) {
    .c-card-list-1__item:nth-of-type(n+3) .c-card-list-1__ttl {
        margin-top: 0;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-1__item:nth-of-type(n+3) .c-card-list-1__ttl {
        font-size: 0.8666666667rem;
        font-weight: 500;
    }
}
.c-card-list-1__sup {
    margin-top: auto;
    padding-top: 8px;
    display: block;
}
@media screen and (max-width: 992px) {
    .c-card-list-1__sup {
        margin-top: 3px;
        padding-top: 0;
    }
    .c-card-list-1__item:nth-of-type(n+3) .c-card-list-1__sup {
        margin-top: 4px;
    }
}
.c-card-list-1__date {
    font-size: 0.75rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-card-list-1__date {
        font-size: 0.6666666667rem;
    }
}
.c-card-list-1__category {
    margin-left: 3px;
    font-size: 0.75rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-card-list-1__category {
        font-size: 0.6666666667rem;
    }
}
.c-card-list-1__category::before {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 1px;
    height: 12px;
    margin-right: 5px;
    background-color: #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-card-list-1__category::before {
        top: 0.2em;
        height: 14px;
    }
}

/*  c-card-list-2 (SP時、横スクロール)
--------------------------------------------- */
.c-card-list-2 {
    --col: 4;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-2 {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        width: 100vw;
        padding-inline: 16px;
        scrollbar-width: none;
    }
    .c-card-list-2::-webkit-scrollbar {
        display: none;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-2__item {
        width: 294px;
        scroll-snap-align: center;
        flex-shrink: 0;
    }
}
.c-card-list-2__item-link {
    display: block;
}
.c-card-list-2__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-2__iframe iframe {
    width: 100%;
    height: 100%;
}
.c-card-list-2__txt-wrap {
    padding-bottom: 18px;
}
@media screen and (max-width: 992px) {
    .c-card-list-2__txt-wrap {
        padding-bottom: 13px;
    }
}
.c-card-list-2__ttl {
    margin-top: 16px;
    font-size: 0.875rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-card-list-2__ttl {
        margin-top: 11px;
        font-size: 0.8666666667rem;
    }
}
.c-card-list-2__txt {
    margin-top: 16px;
    font-size: 0.875rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-card-list-2__txt {
        margin-top: 11px;
        font-size: 0.8666666667rem;
    }
}

/*  c-card-list-3 (SP時、横スクロール)
--------------------------------------------- */
.c-card-list-3 {
    --col: 5;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-3 {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        width: 100vw;
        padding-inline: 16px;
        scrollbar-width: none;
    }
    .c-card-list-3::-webkit-scrollbar {
        display: none;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-3__item {
        width: max(26.6666666667vw, 139px);
        scroll-snap-align: center;
        flex-shrink: 0;
    }
}
.c-card-list-3__item-link {
    display: block;
    padding-bottom: 15px;
}
@media screen and (max-width: 992px) {
    .c-card-list-3__item-link {
        padding-bottom: 14px;
    }
}
.c-card-list-3__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-3__txt-wrap {
    margin-top: var(--1gap);
    padding-top: 14px;
    border-top: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-card-list-3__txt-wrap {
        padding-top: 12px;
    }
}
.c-card-list-3__date {
    font-size: 0.875rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-card-list-3__date {
        font-size: 0.8666666667rem;
    }
}
.c-card-list-3__ttl {
    margin-top: 16px;
    font-size: 0.875rem;
    font-weight: 500;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
@media screen and (max-width: 992px) {
    .c-card-list-3__ttl {
        margin-top: 11px;
        font-size: 0.8666666667rem;
    }
}
.c-card-list-3__date + .c-card-list-3__ttl {
    margin-top: 3px;
}
@media screen and (max-width: 992px) {
    .c-card-list-3__date + .c-card-list-3__ttl {
        margin-top: 2px;
    }
}

/*  c-card-list-4 (SP時、横スクロール)
--------------------------------------------- */
.c-card-list-4 {
    --col: 4;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: 0 var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-4 {
        display: block;
    }
}
.c-card-list-4 > .c-card-list-4__item:first-of-type {
    grid-area: 1/1/3/3;
}
@media screen and (max-width: 992px) {
    .c-card-list-4__sp-scroll-container .c-card-list-4__item {
        width: 294px;
        scroll-snap-align: center;
        flex-shrink: 0;
    }
}

.c-card-list-4__sp-scroll-container {
    display: contents;
}
@media screen and (max-width: 992px) {
    .c-card-list-4__sp-scroll-container {
        display: flex;
        -moz-column-gap: var(--1gap);
             column-gap: var(--1gap);
        overflow: auto hidden;
        scroll-snap-type: x mandatory;
        width: 100vw;
        margin-top: 17px;
        padding-inline: 16px;
        scrollbar-width: none;
    }
    .c-card-list-4__sp-scroll-container::-webkit-scrollbar {
        display: none;
    }
}
.c-card-list-4__item-link {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-bottom: 16px;
}
@media screen and (max-width: 992px) {
    .c-card-list-4__item-link {
        padding-bottom: 14px;
    }
}
.c-card-list-4__img {
    aspect-ratio: 16/9;
}
.c-card-list-4__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-4__txt-wrap {
    display: contents;
}
@media screen and (max-width: 992px) {
    .c-card-list-4__txt-wrap {
        display: block;
        padding-top: 12px;
    }
    .c-card-list-4 > .c-card-list-4__item:first-of-type .c-card-list-4__txt-wrap {
        padding-inline: 16px;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-4__sp-scroll-container .c-card-list-4__txt-wrap {
        display: contents;
    }
}
.c-card-list-4__ttl {
    margin-top: 16px;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-card-list-4__ttl {
        margin-top: 0;
        font-size: 1.1333333333rem;
    }
}
.c-card-list-4__sp-scroll-container .c-card-list-4__ttl {
    margin-top: 12px;
    font-size: 0.875rem;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.5;
}
@media screen and (max-width: 992px) {
    .c-card-list-4__sp-scroll-container .c-card-list-4__ttl {
        font-size: 0.8666666667rem;
        font-weight: 500;
    }
}
.c-card-list-4__sup {
    padding-top: 11px;
    line-height: 1;
}
@media screen and (max-width: 992px) {
    .c-card-list-4__sup {
        margin-top: 6px;
        padding-top: 0;
    }
}
.c-card-list-4__sp-scroll-container .c-card-list-4__sup {
    margin-top: auto;
    padding-top: 7px;
}
.c-card-list-4__date {
    font-size: 0.75rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-card-list-4__date {
        font-size: 0.6666666667rem;
    }
}
.c-card-list-4__category {
    margin-left: 3px;
    font-size: 0.75rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-card-list-4__category {
        font-size: 0.6666666667rem;
    }
}
.c-card-list-4__category::before {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 1px;
    height: 12px;
    margin-right: 5px;
    background-color: #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-card-list-4__category::before {
        top: 0.2em;
        height: 14px;
    }
}

/*  c-card-list-5 (SP時、横スクロール)
--------------------------------------------- */
.c-card-list-5 {
    --col: 4;
    --col-sp: 4;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-5 {
        grid-template-columns: repeat(var(--col-sp), 294px);
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        width: 100vw;
        padding-inline: 16px;
        scrollbar-width: none;
    }
    .c-card-list-5::-webkit-scrollbar {
        display: none;
    }
}
.c-card-list-5__item {
    position: relative;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span var(--subgrid-span);
    gap: 0;
}
@media screen and (max-width: 992px) {
    .c-card-list-5__item {
        scroll-snap-align: center;
    }
}
.c-card-list-5__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-5__ttl {
    --color: #000;
    margin-top: 16px;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: -0.01em;
}
@media screen and (max-width: 992px) {
    .c-card-list-5__ttl {
        margin-top: 12px;
        font-size: 0.8666666667rem;
        letter-spacing: 0;
    }
}
.c-card-list-5__item[target=_blank] .c-card-list-5__ttl::after {
    position: relative;
    top: 0.08em;
    content: "";
    display: inline-block;
    margin-left: 0.5em;
    background-color: var(--color);
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
.c-card-list-5__ttl + * {
    margin-top: 11px;
}
@media screen and (max-width: 992px) {
    .c-card-list-5__ttl + * {
        margin-top: 7px;
    }
}
.c-card-list-5__txt-sup {
    font-size: 0.75rem;
    font-weight: 500;
    color: #757577;
}
.c-card-list-5__txt-sup2 {
    margin-top: 11px;
}
@media screen and (max-width: 992px) {
    .c-card-list-5__txt-sup2 {
        margin-top: 7px;
    }
}
.c-card-list-5__txt-place, .c-card-list-5__txt-member, .c-card-list-5__txt-date, .c-card-list-5__txt-status {
    font-size: 0.75rem;
    font-weight: 500;
    color: #757577;
}
.c-card-list-5__txt-status {
    margin-top: 11px;
    color: #404045;
}
@media screen and (max-width: 992px) {
    .c-card-list-5__txt-status {
        margin-top: 7px;
    }
}
.c-card-list-5__txt-status.is-end {
    color: #757577;
}
.c-card-list-5__txt-sup2 .c-card-list-5__txt-status:first-child {
    margin-top: 0;
}
@media screen and (max-width: 992px) {
    .c-card-list-5__txt-sup2 .c-card-list-5__txt-status:first-child {
        margin-top: 0;
    }
}

/*  c-card-list-6
--------------------------------------------- */
.c-card-list-6 {
    --col: 2;
    --subgrid-span: 4;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-6 {
        display: block;
    }
}
.c-card-list-6__item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span var(--subgrid-span);
    gap: 0;
}
@media screen and (max-width: 992px) {
    .c-card-list-6__item:not(:first-of-type) {
        margin-top: var(--3gap);
    }
}
.c-card-list-6__img {
    aspect-ratio: 16/9;
    position: relative;
}
.c-card-list-6__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-6__ttl {
    margin-top: 14px;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-card-list-6__ttl {
        margin-top: 13px;
        font-size: 1.1333333333rem;
    }
}
.c-card-list-6__txt {
    margin-top: 13px;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.7;
}
@media screen and (max-width: 992px) {
    .c-card-list-6__txt {
        margin-top: 10px;
        font-size: 0.8666666667rem;
    }
}
.c-card-list-6__btn {
    margin-top: 17px;
}
@media screen and (max-width: 992px) {
    .c-card-list-6__btn {
        margin-top: 16px;
    }
}

/*  c-card-list-7 (SP時、縦積み)
--------------------------------------------- */
.c-card-list-7 {
    --col: 4;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: 0 var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-7 {
        display: block;
    }
}
.c-card-list-7__item:first-of-type {
    grid-area: 1/1/3/3;
}
@media screen and (max-width: 992px) {
    .c-card-list-7__item:nth-of-type(n+2) {
        padding-inline: 16px;
    }
}
.c-card-list-7__item-link {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-bottom: 16px;
}
@media screen and (max-width: 992px) {
    .c-card-list-7__item-link {
        padding-bottom: 14px;
    }
    .c-card-list-7__item:nth-of-type(n+2) .c-card-list-7__item-link {
        display: grid;
        grid-template-columns: 40.5247813411% auto;
        -moz-column-gap: var(--1gap);
             column-gap: var(--1gap);
        padding-block: var(--1gap);
        border-top: 1px solid #EFEFEF;
    }
}
.c-card-list-7__img {
    aspect-ratio: 16/9;
}
.c-card-list-7__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    background-color: #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-card-list-7__txt-wrap {
        display: block;
        padding-top: 12px;
        padding-bottom: 14px;
        padding-inline: 16px;
    }
}
.c-card-list-7__item:nth-of-type(n+2) .c-card-list-7__txt-wrap {
    display: contents;
}
@media screen and (max-width: 992px) {
    .c-card-list-7__item:nth-of-type(n+2) .c-card-list-7__txt-wrap {
        display: block;
        padding: 0;
    }
}
.c-card-list-7__ttl {
    margin-top: 12px;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-card-list-7__ttl {
        margin-top: 0;
        font-size: 1.1333333333rem;
    }
}
.c-card-list-7__item:nth-of-type(n+2) .c-card-list-7__ttl {
    margin-top: 16px;
    font-size: 0.875rem;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.5;
}
@media screen and (max-width: 992px) {
    .c-card-list-7__item:nth-of-type(n+2) .c-card-list-7__ttl {
        margin-top: 0;
    }
}
.c-card-list-7__sup {
    margin-top: auto;
    padding-top: 11px;
    line-height: 1.1;
    font-size: 0.75rem;
}
@media screen and (max-width: 992px) {
    .c-card-list-7__sup {
        padding-top: 6px;
        font-size: 0.7333333333rem;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-7__item:nth-of-type(n+2) .c-card-list-7__sup {
        font-size: 0.6666666667rem;
    }
}
.c-card-list-7__date {
    color: #757577;
}
.c-card-list-7__category {
    margin-left: 3px;
    color: #757577;
}
.c-card-list-7__category::before {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 1px;
    height: 12px;
    margin-right: 5px;
    background-color: #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-card-list-7__category::before {
        top: 0.2em;
        height: 14px;
    }
}

/*  c-card-list-8 (ニュース一覧、大会個別TOP、静的ページ)
--------------------------------------------- */
.c-card-list-8 {
    --col: 4;
    display: flex;
    flex-wrap: wrap;
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-8 {
        display: block;
    }
}
.c-card-list-8__item {
    width: calc((100% - var(--1gap) * (var(--col) - 1)) / var(--col));
}
@media screen and (max-width: 992px) {
    .c-card-list-8__item {
        width: 100%;
        padding-inline: var(--1gap);
    }
}
@media screen and (min-width: 993px) {
    .c-card-list-8--accent .c-card-list-8__item:nth-of-type(1), .c-card-list-8--accent .c-card-list-8__item:nth-of-type(2) {
        width: calc((100% - var(--1gap) * 1) / 2);
    }
    .c-card-list-8--accent .c-card-list-8__item:nth-of-type(3), .c-card-list-8--accent .c-card-list-8__item:nth-of-type(4), .c-card-list-8--accent .c-card-list-8__item:nth-of-type(5), .c-card-list-8--accent .c-card-list-8__item:nth-of-type(6), .c-card-list-8--accent .c-card-list-8__item:nth-of-type(7), .c-card-list-8--accent .c-card-list-8__item:nth-of-type(8) {
        width: calc((100% - var(--1gap) * 2) / 3);
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-8--accent .c-card-list-8__item:first-of-type {
        border-top: none;
    }
    .c-card-list-8--accent .c-card-list-8__item:nth-of-type(2), .c-card-list-8--accent .c-card-list-8__item:nth-of-type(3) {
        margin-top: var(--1gap);
    }
    .c-card-list-8--accent .c-card-list-8__item:nth-of-type(-n+2) {
        padding-inline: 0;
    }
}
.c-card-list-8__item-link {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-bottom: 16px;
}
@media screen and (max-width: 992px) {
    .c-card-list-8__item-link {
        display: grid;
        grid-template-columns: 40.5247813411% auto;
        -moz-column-gap: var(--1gap);
             column-gap: var(--1gap);
        border-top: 1px solid #EFEFEF;
        padding: var(--1gap) 0;
    }
    .c-card-list-8--accent .c-card-list-8__item:nth-of-type(-n+2) .c-card-list-8__item-link {
        display: block;
        padding: 0 0 14px;
        border-top: none;
    }
    .c-card-list-8__item:last-of-type .c-card-list-8__item-link {
        border-bottom: 1px solid #EFEFEF;
    }
    .c-card-list-8--type2 .c-card-list-8__item:last-of-type .c-card-list-8__item-link {
        border-bottom: none;
    }
}
@media screen and (min-width: 993px) {
    .c-card-list-8--accent .c-card-list-8__item:nth-of-type(-n+8) .c-card-list-8__item-link {
        padding-bottom: 20px;
    }
    .c-card-list-8--accent .c-card-list-8__item:first-of-type .c-card-list-8__item-link {
        padding-top: 0;
    }
}
.c-card-list-8__img {
    aspect-ratio: 16/9;
}
@media screen and (max-width: 992px) {
    .c-card-list-8__img {
        flex-shrink: 0;
    }
    .c-card-list-8--accent .c-card-list-8__item:nth-of-type(-n+2) .c-card-list-8__img {
        width: 100%;
    }
}
.c-card-list-8__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    background-color: #EFEFEF;
}
.c-card-list-8--all-cover .c-card-list-8__img img {
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-8__txt-wrap {
    display: contents;
}
@media screen and (max-width: 992px) {
    .c-card-list-8__txt-wrap {
        display: block;
    }
    .c-card-list-8--accent .c-card-list-8__item:nth-of-type(-n+2) .c-card-list-8__txt-wrap {
        padding-inline: var(--1gap);
    }
}
.c-card-list-8__ttl {
    margin-top: 16px;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.4;
}
.c-card-list-8:not(.c-card-list-8--accent) .c-card-list-8__ttl {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
@media screen and (max-width: 992px) {
    .c-card-list-8__ttl {
        margin-top: 0;
        font-size: 0.8666666667rem;
    }
    .c-card-list-8--accent .c-card-list-8__item:nth-of-type(-n+2) .c-card-list-8__ttl {
        margin-top: 12px;
        font-size: 1.1333333333rem;
        font-weight: bold;
    }
    .c-card-list-8--accent .c-card-list-8__item:nth-of-type(n+3) .c-card-list-8__ttl {
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
}
@media screen and (min-width: 993px) {
    .c-card-list-8--accent .c-card-list-8__item:nth-of-type(-n+8) .c-card-list-8__ttl {
        margin-top: 12px;
        font-size: 1.25rem;
        font-weight: bold;
    }
    .c-card-list-8--accent .c-card-list-8__item:nth-of-type(n+9) .c-card-list-8__ttl {
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
}
.c-card-list-8__sup {
    margin-top: auto;
    padding-top: 8px;
    display: block;
}
@media screen and (max-width: 992px) {
    .c-card-list-8__sup {
        margin-top: 3px;
        padding-top: 0;
    }
}
.c-card-list-8__date {
    font-size: 0.75rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-card-list-8__date {
        font-size: 0.6666666667rem;
    }
}
.c-card-list-8__category {
    margin-left: 3px;
    font-size: 0.75rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-card-list-8__category {
        font-size: 0.6666666667rem;
    }
}
.c-card-list-8__category::before {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 1px;
    height: 12px;
    margin-right: 5px;
    background-color: #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-card-list-8__category::before {
        top: 0.2em;
        height: 14px;
    }
}

/*  .c-card-list-9 (競技一覧)
--------------------------------------------- */
.c-card-list-9 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-9 {
        display: block;
    }
}
@media screen and (min-width: 993px) {
    .c-card-list-9__item {
        border: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-9__item {
        border-top: 1px solid #EFEFEF;
    }
    .c-card-list-9__item:last-of-type {
        border-bottom: 1px solid #EFEFEF;
    }
}
.c-card-list-9__img img {
    width: 100%;
}
.c-card-list-9__link {
    position: relative;
    display: grid;
    grid-template-columns: 54px auto;
    align-items: center;
    -moz-column-gap: var(--1gap);
         column-gap: var(--1gap);
    padding: var(--1gap) 44px var(--1gap) var(--1gap);
}
@media (hover: hover) and (pointer: fine) {
    .c-card-list-9__link {
        transition: opacity 300ms;
    }
    .c-card-list-9__link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-9__link {
        grid-template-columns: 44px auto;
        padding: var(--1gap) 27px var(--1gap) 0;
    }
}
.c-card-list-9__link::after {
    position: absolute;
    top: 50%;
    right: 18px;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 8px;
    height: 14px;
    -webkit-mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}
@media screen and (max-width: 992px) {
    .c-card-list-9__link::after {
        right: 5px;
        width: 6px;
        height: 12px;
    }
}
.c-card-list-9__txt {
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.4;
    word-break: break-all;
}
@media screen and (max-width: 992px) {
    .c-card-list-9__txt {
        font-size: 1.1333333333rem;
    }
}

/*  .c-card-list-10 (アスリート一覧)
--------------------------------------------- */
.c-card-list-10 {
    --col: 3;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 1200px) {
    .c-card-list-10 {
        --col: 2;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-10 {
        display: block;
    }
}
@media screen and (min-width: 993px) {
    .c-card-list-10__item {
        border: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-10__item {
        border-top: 1px solid #EFEFEF;
    }
    .c-card-list-10__item:last-of-type {
        border-bottom: 1px solid #EFEFEF;
    }
}
.c-card-list-10__item:not(:has(.c-card-list-10__link)) {
    padding: var(--1gap) 44px var(--1gap) var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-10__item:not(:has(.c-card-list-10__link)) {
        padding: var(--1gap) 27px var(--1gap) 0;
    }
}
.c-card-list-10__img {
    height: 125px;
}
@media screen and (max-width: 992px) {
    .c-card-list-10__img {
        height: 80px;
    }
}
.c-card-list-10__img--square {
    height: 100px;
}
@media screen and (max-width: 992px) {
    .c-card-list-10__img--square {
        height: 64px;
    }
}
.c-card-list-10__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-10__link {
    position: relative;
    display: grid;
    grid-template-columns: 100px auto;
    align-items: center;
    -moz-column-gap: var(--1gap);
         column-gap: var(--1gap);
    padding: var(--1gap) 44px var(--1gap) var(--1gap);
}
@media (hover: hover) and (pointer: fine) {
    .c-card-list-10__link {
        transition: opacity 300ms;
    }
    .c-card-list-10__link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-10__link {
        grid-template-columns: 64px auto;
        padding: var(--1gap) 27px var(--1gap) 0;
    }
}
.c-card-list-10__link::after {
    position: absolute;
    top: 50%;
    right: 18px;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 8px;
    height: 14px;
    -webkit-mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}
@media screen and (max-width: 992px) {
    .c-card-list-10__link::after {
        right: 5px;
        width: 6px;
        height: 12px;
    }
}
.c-card-list-10__link--favorite-btn {
    width: 100%;
    text-align: left;
    padding-right: 50px;
}
.c-card-list-10__link--favorite-btn::after {
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 16px;
    height: 14px;
    -webkit-mask: url("/assets/img/common/icon_favorite.svg") 50% 50%/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_favorite.svg") 50% 50%/100% 100% no-repeat;
    background-color: #000;
}
.c-card-list-10__link--favorite-btn.is-active::after {
    -webkit-mask-image: url("/assets/img/common/icon_favorite_fill.svg");
            mask-image: url("/assets/img/common/icon_favorite_fill.svg");
    background-color: #F0252D;
}
.c-card-list-10__txt-wrap {
    color: #000;
}
.c-card-list-10__txt {
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.4;
    word-break: break-all;
}
@media screen and (max-width: 992px) {
    .c-card-list-10__txt {
        font-size: 1.1333333333rem;
        line-height: 1.3;
    }
}
.c-card-list-10__txt-sm {
    margin-top: 11px;
    font-size: 0.875rem;
    line-height: 1.4;
    word-break: break-all;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
@media screen and (max-width: 992px) {
    .c-card-list-10__txt-sm {
        margin-top: 4px;
        font-size: 0.8rem;
    }
}
.c-card-list-10__txt-top {
    display: block;
    font-size: 0.875rem;
    font-weight: 400;
    margin-bottom: 10px;
    letter-spacing: -0.025em;
    line-height: 1.5;
}
@media screen and (max-width: 992px) {
    .c-card-list-10__txt-top {
        margin-bottom: 8px;
        font-size: 0.8666666667rem;
    }
}
.c-card-list-10__txt-middle {
    display: block;
}
.c-card-list-10__txt-middle:not(:last-child) {
    margin-bottom: 10px;
}
.c-card-list-10__txt-bottom {
    display: block;
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: -0.025em;
    line-height: 1.5;
}
@media screen and (max-width: 992px) {
    .c-card-list-10__txt-bottom {
        font-size: 0.7333333333rem;
    }
}

/*  c-card-list-11
--------------------------------------------- */
.c-card-list-11 {
    --col: 4;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-11 {
        --col: 2;
        display: block;
        gap: var(--1gap);
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-11__item {
        padding-inline: 16px;
    }
}
.c-card-list-11__item-link {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-bottom: 16px;
}
@media screen and (max-width: 992px) {
    .c-card-list-11__item-link {
        display: grid;
        grid-template-columns: 40.5247813411% auto;
        -moz-column-gap: var(--1gap);
             column-gap: var(--1gap);
        padding-block: var(--1gap);
        border-top: 1px solid #EFEFEF;
    }
}
.c-card-list-11__img {
    aspect-ratio: 16/9;
}
.c-card-list-11__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-fit: cover;
       object-fit: cover;
    background-color: #EFEFEF;
}
.c-card-list-11--all-contain .c-card-list-11__img img {
    -o-object-fit: contain;
       object-fit: contain;
}
.c-card-list-11__txt-wrap {
    display: contents;
}
@media screen and (max-width: 992px) {
    .c-card-list-11__txt-wrap {
        display: flex;
        flex-direction: column;
        padding: 0;
    }
}
.c-card-list-11__ttl {
    margin-top: 12px;
    font-size: 0.875rem;
    font-weight: bold;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
@media screen and (max-width: 992px) {
    .c-card-list-11__ttl {
        margin-top: 0;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-11__ttl {
        margin-top: 0;
        font-size: 0.8666666667rem;
        font-weight: 500;
    }
}
.c-card-list-11__sup {
    margin-top: auto;
    padding-top: 8px;
    display: block;
}
@media screen and (max-width: 992px) {
    .c-card-list-11__sup {
        margin-top: 4px;
        padding-top: 0;
    }
}
.c-card-list-11__date {
    font-size: 0.75rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-card-list-11__date {
        font-size: 0.6666666667rem;
    }
}
.c-card-list-11__category {
    margin-left: 3px;
    font-size: 0.75rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-card-list-11__category {
        font-size: 0.6666666667rem;
    }
}
.c-card-list-11__category::before {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 1px;
    height: 12px;
    margin-right: 5px;
    background-color: #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-card-list-11__category::before {
        top: 0.2em;
        height: 14px;
    }
}

/*  .c-card-list-12 (マイページお気に入り別)
--------------------------------------------- */
.c-card-list-12 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-12 {
        display: block;
    }
}
@media screen and (min-width: 993px) {
    .c-card-list-12__item {
        border: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-12__item {
        border-top: 1px solid #EFEFEF;
    }
    .c-card-list-12__item:last-of-type {
        border-bottom: 1px solid #EFEFEF;
    }
}
.c-card-list-12__link {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    padding: 20px 44px 20px 20px;
    font-size: 0.875rem;
    line-height: 1.4;
    word-break: break-all;
}
@media (hover: hover) and (pointer: fine) {
    .c-card-list-12__link {
        transition: opacity 300ms;
    }
    .c-card-list-12__link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-12__link {
        padding: 13px 27px 13px 0;
        font-size: 0.8666666667rem;
    }
}
.c-card-list-12__link::after {
    position: absolute;
    top: 50%;
    right: 19px;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 7px;
    height: 13px;
    -webkit-mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}
@media screen and (max-width: 992px) {
    .c-card-list-12__link::after {
        right: 5px;
    }
}
.c-card-list-12__link[target=_blank]::after {
    right: 16px;
    width: 14px;
    height: 14px;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-card-list-12__link[target=_blank]::after {
        right: 1px;
    }
}
.c-card-list-12__link[href*=".pdf"]::after {
    right: 15px;
    width: 14px;
    height: 16px;
    -webkit-mask: url("/assets/img/common/icon_pdf.svg") 50% 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_pdf.svg") 50% 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-card-list-12__link[href*=".pdf"]::after {
        right: 1px;
    }
}

/*  c-card-list-13 (静的ページ)
--------------------------------------------- */
.c-card-list-13 {
    --col: 5;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-13 {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        width: 100vw;
        padding-inline: 16px;
        scrollbar-width: none;
    }
    .windows.chrome .c-card-list-13 {
        padding-inline: 16px var(--2gap);
    }
    .c-card-list-13::-webkit-scrollbar {
        display: none;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-13__item {
        width: max(26.6666666667vw, 139px);
        scroll-snap-align: center;
        flex-shrink: 0;
    }
}
.c-card-list-13__item-link {
    display: block;
    padding-bottom: 15px;
}
@media screen and (max-width: 992px) {
    .c-card-list-13__item-link {
        padding-bottom: 14px;
    }
}
.c-card-list-13__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-13__txt-wrap {
    margin-top: var(--1gap);
    padding-top: 14px;
    border-top: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-card-list-13__txt-wrap {
        padding-top: 12px;
    }
}
.c-card-list-13__ttl {
    font-size: 0.875rem;
    font-weight: 500;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
@media screen and (max-width: 992px) {
    .c-card-list-13__ttl {
        font-size: 0.8666666667rem;
    }
}

/*  c-card-list-14
--------------------------------------------- */
.c-card-list-14 {
    --col: 3;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    -moz-column-gap: var(--1gap);
         column-gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-14 {
        display: block;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-14--sp-grid {
        display: grid;
    }
}
.c-card-list-14__item {
    position: relative;
}
.c-card-list-14__item .num {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 24px;
    height: 24px;
    padding: 3px 0 0;
    color: #FFF;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    text-align: center;
}
@media screen and (max-width: 992px) {
    .c-card-list-14__item .num {
        font-size: 0.9333333333rem;
    }
}
.c-card-list-14__item .num.red {
    background: #ff0000;
}
.c-card-list-14__item .num.orange {
    background: #f09629;
}
.c-card-list-14__item .num.aqua {
    background: #00ddff;
}
.c-card-list-14__item .num.blue {
    background: #2865e8;
}
.c-card-list-14__item .num.green {
    background: #00a100;
}
.c-card-list-14__link {
    display: block;
}
.c-card-list-14__img {
    position: relative;
    aspect-ratio: 16/9;
}
.c-card-list-14__img img {
    width: 100% !important;
    height: 100% !important;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-14--aspect-ratio-unset .c-card-list-14__img {
    aspect-ratio: unset;
}
.c-card-list-14__txt-wrap {
    padding-block: 15px 18px;
}
@media screen and (max-width: 992px) {
    .c-card-list-14__txt-wrap {
        padding-block: 10px 12px;
    }
}
.c-card-list-14__txt-wrap-bottom {
    padding-bottom: 18px;
}
@media screen and (max-width: 992px) {
    .c-card-list-14__txt-wrap-bottom {
        padding-bottom: 12px;
    }
}
.c-card-list-14__txt-wrap-bottom a {
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .c-card-list-14__txt-wrap-bottom a:hover {
        text-decoration: none;
    }
}
.c-card-list-14__ttl {
    position: relative;
    padding-right: 36px;
    font-size: 1rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-card-list-14__ttl {
        padding-right: 32px;
        font-size: 1rem;
    }
}
.c-card-list-14__ttl--small {
    font-size: 0.875rem;
    padding-right: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-14__ttl--small {
        font-size: 0.9333333333rem;
        padding-right: var(--1gap);
    }
}
.c-card-list-14__item:not(:has(.c-card-list-14__link)) .c-card-list-14__ttl {
    padding-right: 0;
}
@media screen and (max-width: 992px) {
    .c-card-list-14__item:not(:has(.c-card-list-14__link)) .c-card-list-14__ttl {
        padding-right: 0;
    }
}
.c-card-list-14__ttl::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 4px;
    transform: translateY(-50%);
    display: block;
    width: 7px;
    height: 13px;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}
@media screen and (max-width: 992px) {
    .c-card-list-14__ttl::after {
        width: 6px;
        height: 12px;
    }
}
.c-card-list-14__item:not(:has(.c-card-list-14__link)) .c-card-list-14__ttl::after {
    display: none;
}
.c-card-list-14__ttl--icon-external::after {
    right: 1px;
    width: 14px;
    height: 14px;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-card-list-14__ttl--icon-external::after {
        width: 13px;
        height: 13px;
    }
}
.c-card-list-14__ttl--icon-pdf::after {
    right: 1px;
    width: 14px;
    height: 14px;
    -webkit-mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-card-list-14__ttl--icon-pdf::after {
        width: 13px;
        height: 13px;
    }
}
.c-card-list-14__ttl--icon-search::after {
    right: 0px;
    width: 16px;
    height: 16px;
    -webkit-mask: url("/assets/img/common/icon_search.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_search.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-card-list-14__ttl--icon-search::after {
        width: 15px;
        height: 15px;
    }
}
.c-card-list-14__link:not(a) .c-card-list-14__ttl::after {
    display: none;
}
.c-card-list-14__txt {
    margin-top: 4px;
    padding-right: 36px;
    font-size: 0.75rem;
    line-height: 2;
}
@media screen and (max-width: 992px) {
    .c-card-list-14__txt {
        margin-top: 0;
        padding-right: 32px;
        font-size: 0.7333333333rem;
    }
}
.c-card-list-14__txt-wrap-bottom .c-card-list-14__txt:first-child {
    margin-top: 0;
}
.c-card-list-14:has(.c-card-list-14__txt-wrap-bottom):not(.c-card-list-14--has-bottom-txt-type2) .c-card-list-14__txt-wrap {
    padding-block: 10px;
}
.c-card-list-14:has(.c-card-list-14__txt-wrap-bottom):not(.c-card-list-14--has-bottom-txt-type2) .c-card-list-14__ttl {
    padding-right: var(--1gap);
}
.c-card-list-14:has(.c-card-list-14__txt-wrap-bottom):not(.c-card-list-14--has-bottom-txt-type2) .c-card-list-14__txt-wrap-bottom {
    padding-bottom: 18px;
    margin-top: -2px;
}
.c-card-list-14:has(.c-card-list-14__txt-wrap-bottom):not(.c-card-list-14--has-bottom-txt-type2) .c-card-list-14__txt {
    margin-top: 4px;
    padding-right: 0;
    font-size: 0.75rem;
    line-height: 2;
}
@media screen and (max-width: 992px) {
    .c-card-list-14:has(.c-card-list-14__txt-wrap-bottom):not(.c-card-list-14--has-bottom-txt-type2) .c-card-list-14__txt-wrap {
        padding-block: 10px;
    }
    .c-card-list-14:has(.c-card-list-14__txt-wrap-bottom):not(.c-card-list-14--has-bottom-txt-type2) .c-card-list-14__ttl {
        padding-right: var(--2gap);
    }
    .c-card-list-14:has(.c-card-list-14__txt-wrap-bottom):not(.c-card-list-14--has-bottom-txt-type2) .c-card-list-14__txt {
        padding-right: var(--2gap);
    }
}

/*  c-card-list-15 (静的ページ)
--------------------------------------------- */
.c-card-list-15 {
    --col: 2;
    --subgrid-span: 4;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-15 {
        display: block;
    }
}
.c-card-list-15__item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span var(--subgrid-span);
    gap: 0;
}
@media screen and (max-width: 992px) {
    .c-card-list-15__item:not(:first-of-type) {
        margin-top: var(--2gap);
    }
}
.c-card-list-15--type2 .c-card-list-15__item {
    border: 1px solid #EFEFEF;
    padding: 25px 20px 20px;
}
@media screen and (max-width: 992px) {
    .c-card-list-15--type2 .c-card-list-15__item {
        padding: 20px var(--1gap);
    }
    .c-card-list-15--type2 .c-card-list-15__item:not(:first-of-type) {
        margin-top: var(--1gap);
    }
}
.c-card-list-15__img {
    position: relative;
    aspect-ratio: 16/9;
}
.c-card-list-15__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-15__video {
    position: relative;
    aspect-ratio: 16/9;
}
@media screen and (max-width: 992px) {
    .c-card-list-15__video {
        aspect-ratio: auto;
    }
}
.c-card-list-15__video video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
@media screen and (min-width: 993px) {
    .c-card-list-15__txt-wrap {
        display: contents;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-15--sp-wide .c-card-list-15__txt-wrap {
        padding-inline: var(--1gap);
    }
}
.c-card-list-15__ttl {
    margin-top: 14px;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-card-list-15__ttl {
        margin-top: 13px;
        font-size: 1.1333333333rem;
    }
}
.c-card-list-15--type2 .c-card-list-15__ttl {
    margin-top: 0;
}
.c-card-list-15__txt {
    margin-top: 13px;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.7;
}
@media screen and (max-width: 992px) {
    .c-card-list-15__txt {
        margin-top: 10px;
        font-size: 0.8666666667rem;
    }
}
.c-card-list-15__txt--l {
    font-size: 0.9375rem;
    letter-spacing: 0.025em;
}
@media screen and (max-width: 992px) {
    .c-card-list-15__txt--l {
        font-size: 0.8666666667rem;
    }
}
.c-card-list-15__btn {
    margin-top: 17px;
}
@media screen and (max-width: 992px) {
    .c-card-list-15__btn {
        margin-top: 16px;
    }
}

/*  c-card-list-16 (大会_メダル・入賞者一覧)
--------------------------------------------- */
.c-card-list-16 {
    --col: 6;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 1200px) {
    .c-card-list-16 {
        --col: 4;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-16 {
        --col: 5;
    }
}
@media screen and (max-width: 767.98px) {
    .c-card-list-16 {
        --col: 4;
    }
}
@media screen and (max-width: 576px) {
    .c-card-list-16 {
        --col: 3;
    }
}
@media screen and (max-width: 374px) {
    .c-card-list-16 {
        --col: 2;
    }
}
.c-card-list-16__link {
    display: block;
    padding-bottom: 18px;
}
@media screen and (max-width: 992px) {
    .c-card-list-16__link {
        padding-bottom: 13px;
    }
}
.c-card-list-16__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-16__txt-sub {
    margin-top: 16px;
    font-size: 0.75rem;
    line-height: 1.75;
}
@media screen and (max-width: 992px) {
    .c-card-list-16__txt-sub {
        margin-top: 12px;
        font-size: 0.7333333333rem;
        line-height: 1.4;
    }
}
.c-card-list-16__txt {
    margin-top: 4px;
    font-size: 0.875rem;
    font-weight: 500;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
@media screen and (max-width: 992px) {
    .c-card-list-16__txt {
        margin-top: 2px;
        font-size: 0.8666666667rem;
    }
}

/*  c-card-list-17
--------------------------------------------- */
.c-card-list-17 {
    --col: 3;
    --col-sp: 6;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-17 {
        grid-template-columns: repeat(var(--col-sp), 294px);
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        width: 100vw;
        padding-inline: 16px;
        scrollbar-width: none;
    }
    .c-card-list-17::-webkit-scrollbar {
        display: none;
    }
}
.c-card-list-17__item {
    position: relative;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span var(--subgrid-span);
    gap: 0;
}
@media screen and (max-width: 992px) {
    .c-card-list-17__item {
        scroll-snap-align: center;
    }
}
.c-card-list-17__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-17__ttl {
    --color: #000;
    margin-top: 14px;
    font-size: 1.25rem;
    font-weight: bold;
    letter-spacing: -0.025em;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-card-list-17__ttl {
        margin-top: 12px;
        font-size: 0.8666666667rem;
        letter-spacing: 0;
        line-height: 1.5;
    }
}
.c-card-list-17__item[target=_blank] .c-card-list-17__ttl::after {
    position: relative;
    top: 0.08em;
    content: "";
    display: inline-block;
    margin-left: 0.5em;
    background-color: var(--color);
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
.c-card-list-17__label {
    font-size: 0.875rem;
    padding-inline: 20px;
    height: 100%;
    color: #fff;
    background-color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}
@media screen and (max-width: 992px) {
    .c-card-list-17__label {
        font-size: 0.7333333333rem;
        padding-inline: 8px;
    }
}
.c-card-list-17__label--gray1 {
    color: #000;
    background-color: #EFEFEF;
}
.c-card-list-17__label--white1 {
    color: #757577;
    background-color: #fff;
    outline: 1px solid #EFEFEF;
    font-weight: 500;
}
.c-card-list-17__label-wrap {
    margin-top: 14px;
    margin-right: auto;
    height: 30px;
}
@media screen and (max-width: 992px) {
    .c-card-list-17__label-wrap {
        height: 20px;
    }
}
.c-card-list-17__txt-sup {
    margin-top: 15px;
    font-size: 0.875rem;
    font-weight: 500;
    color: #757577;
    line-height: 1.7;
    letter-spacing: 0.004em;
}
@media screen and (max-width: 992px) {
    .c-card-list-17__txt-sup {
        margin-top: 8px;
        font-size: 0.7333333333rem;
        line-height: 1.4;
        letter-spacing: 0;
    }
}
.c-card-list-17__txt-sup p:not(:first-child) {
    margin-top: 11px;
}
@media screen and (max-width: 992px) {
    .c-card-list-17__txt-sup p:not(:first-child) {
        margin-top: 7px;
    }
}
.c-card-list-17__txt-place, .c-card-list-17__txt-member, .c-card-list-17__txt-date {
    font-size: 0.875rem;
    font-weight: 500;
    color: #757577;
    line-height: 1.7;
    letter-spacing: 0.004em;
}
@media screen and (max-width: 992px) {
    .c-card-list-17__txt-place, .c-card-list-17__txt-member, .c-card-list-17__txt-date {
        font-size: 0.7333333333rem;
        line-height: 1.4;
        letter-spacing: 0;
    }
}

/*  c-card-list-18
--------------------------------------------- */
.c-card-list-18 {
    --col: 2;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-18 {
        padding-inline: 16px;
        grid-template-columns: repeat(1, 1fr);
    }
}
.c-card-list-18__item {
    position: relative;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span var(--subgrid-span);
    gap: 0;
}
@media screen and (max-width: 992px) {
    .c-card-list-18__item {
        scroll-snap-align: center;
    }
}
.c-card-list-18__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-18__ttl {
    margin-top: 14px;
    font-size: 1.25rem;
    font-weight: bold;
    letter-spacing: -0.025em;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-card-list-18__ttl {
        margin-top: 13px;
        font-size: 1.1333333333rem;
    }
}
.c-card-list-18__label {
    font-size: 0.875rem;
    padding-inline: 20px;
    height: 100%;
    color: #fff;
    background-color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}
@media screen and (max-width: 992px) {
    .c-card-list-18__label {
        font-size: 0.8666666667rem;
        padding-inline: 16px;
    }
}
.c-card-list-18__label--gray1 {
    color: #000;
    background-color: #EFEFEF;
}
.c-card-list-18__label--white1 {
    color: #757577;
    background-color: #fff;
    outline: 1px solid #EFEFEF;
    font-weight: 500;
}
.c-card-list-18__label-wrap {
    margin-top: 14px;
    margin-right: auto;
    height: 30px;
}
@media screen and (max-width: 992px) {
    .c-card-list-18__label-wrap {
        height: 26px;
    }
}
.c-card-list-18__txt-sup {
    margin-top: 15px;
    font-size: 0.875rem;
    font-weight: 500;
    color: #757577;
    line-height: 1.7;
    letter-spacing: 0.004em;
}
@media screen and (max-width: 992px) {
    .c-card-list-18__txt-sup {
        font-size: 0.8666666667rem;
        margin-top: 11px;
    }
}
.c-card-list-18__txt-place, .c-card-list-18__txt-member, .c-card-list-18__txt-date {
    font-size: 0.875rem;
    font-weight: 500;
    color: #757577;
    line-height: 1.7;
    letter-spacing: 0.004em;
}
@media screen and (max-width: 992px) {
    .c-card-list-18__txt-place, .c-card-list-18__txt-member, .c-card-list-18__txt-date {
        font-size: 0.8666666667rem;
    }
}
.c-card-list-18__more-btn {
    margin-top: 18px;
}
@media screen and (max-width: 992px) {
    .c-card-list-18__more-btn {
        margin-top: 16px;
    }
}
.c-card-list-18__more-btn[target=_blank]::after {
    width: 13px;
    height: 13px;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}

/*  c-card-list-19
--------------------------------------------- */
.c-card-list-19 {
    --col: 3;
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-card-list-19 {
        display: block;
    }
}
@media screen and (max-width: 992px) {
    .c-card-list-19__item:not(:first-of-type) {
        margin-top: var(--1gap);
    }
}
.c-card-list-19__img {
    position: relative;
    aspect-ratio: 16/9;
}
.c-card-list-19__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-card-list-19__txt-wrap {
    margin-top: 13px;
}
@media screen and (max-width: 992px) {
    .c-card-list-19__txt-wrap {
        margin-top: 10px;
    }
}
.c-card-list-19__txt {
    font-size: 1rem;
    letter-spacing: -0.025em;
    font-weight: bold;
    line-height: 1.7;
}
@media screen and (max-width: 992px) {
    .c-card-list-19__txt {
        font-size: 0.8666666667rem;
    }
}

/* ---------------------------------------------
*   cassette
--------------------------------------------- */
/*  c-cassette-1 (アスリート詳細)
--------------------------------------------- */
.c-cassette-1 {
    padding-top: 30px;
}
@media screen and (max-width: 992px) {
    .c-cassette-1 {
        padding-top: 26px;
    }
}
.c-cassette-1__ttl {
    font-size: 1.5rem;
    font-weight: bold;
    font-weight: bold;
}
@media screen and (max-width: 992px) {
    .c-cassette-1__ttl {
        font-size: 1.1333333333rem;
    }
}
.c-cassette-1__wysiwyg {
    margin-top: 10px;
    font-size: 1rem;
    line-height: 1.7;
}
@media screen and (max-width: 992px) {
    .c-cassette-1__wysiwyg {
        margin-top: 8px;
        font-size: 1rem;
    }
}
.c-cassette-1__wysiwyg > *:first-child {
    margin-top: 0;
}
.c-cassette-1__contents {
    margin-top: 11px;
}
@media screen and (max-width: 992px) {
    .c-cassette-1__contents {
        margin-top: 8px;
    }
}
.c-cassette-1__contents-txt-wrapper {
    font-size: 0.875rem;
    line-height: 1.7;
}
@media screen and (max-width: 992px) {
    .c-cassette-1__contents-txt-wrapper {
        font-size: 0.8666666667rem;
    }
}
.c-cassette-1__contents-txt-wrapper b {
    font-weight: bold;
}
.c-cassette-1__list {
    margin-top: 11px;
}
@media screen and (max-width: 992px) {
    .c-cassette-1__list {
        margin-top: 8px;
    }
}
.c-cassette-1__item {
    font-size: 1.0625rem;
}
@media screen and (max-width: 992px) {
    .c-cassette-1__item {
        font-size: 0.8666666667rem;
    }
}
.c-cassette-1__item:not(:first-of-type) {
    margin-top: 5px;
}
@media screen and (max-width: 992px) {
    .c-cassette-1__item:not(:first-of-type) {
        margin-top: 4px;
    }
}

/*  c-cassette-2 (アスリート詳細)
--------------------------------------------- */
.c-cassette-2__head {
    display: flex;
    align-items: center;
    -moz-column-gap: 6px;
         column-gap: 6px;
    padding-block: 10px;
}
@media screen and (max-width: 992px) {
    .c-cassette-2__head {
        -moz-column-gap: 1px;
             column-gap: 1px;
        padding-block: 8px;
    }
}
.c-cassette-2__head-img {
    width: 46px;
    flex-shrink: 0;
}
@media screen and (max-width: 992px) {
    .c-cassette-2__head-img {
        width: 42px;
    }
}
.c-cassette-2__head-img img {
    width: 100%;
}
.c-cassette-2__ttl {
    font-size: 1rem;
}
@media screen and (max-width: 992px) {
    .c-cassette-2__ttl {
        font-size: 1rem;
    }
}
.c-cassette-2__ttl-link {
    position: relative;
    display: flex;
    align-items: center;
    -moz-column-gap: 8px;
         column-gap: 8px;
}
@media (hover: hover) and (pointer: fine) {
    .c-cassette-2__ttl-link:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .c-cassette-2__ttl-link {
        -moz-column-gap: 5px;
             column-gap: 5px;
    }
}
.c-cassette-2__ttl-link::after {
    content: "";
    display: inline-block;
    width: 7px;
    height: 14px;
    margin-top: 0.15em;
    -webkit-mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% auto no-repeat;
            mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% auto no-repeat;
    background-color: #000;
}
.c-cassette-2__tbl {
    table-layout: fixed;
    width: 100%;
}
.c-cassette-2__tr {
    border-top: 1px solid #EFEFEF;
}
.c-cassette-2__tr:last-of-type {
    border-bottom: 1px solid #EFEFEF;
}
.c-cassette-2__th, .c-cassette-2__td {
    padding-block: 11px;
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-cassette-2__th, .c-cassette-2__td {
        padding-block: 8px;
        font-size: 0.8666666667rem;
    }
}
.c-cassette-2__th {
    position: relative;
    width: 187px;
    padding-left: 52px;
}
@media screen and (max-width: 992px) {
    .c-cassette-2__th {
        width: 148px;
        padding-left: 44px;
    }
}
.c-cassette-2__th::before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 11px;
    display: block;
    width: 22px;
    height: 22px;
    border-radius: 50%;
}
@media screen and (max-width: 992px) {
    .c-cassette-2__th::before {
        left: 8px;
        width: 20px;
        height: 20px;
    }
}
.c-cassette-2__th--gold::before {
    background-color: #AA8532;
}
.c-cassette-2__th--silver::before {
    background-color: #A6A9AA;
}
.c-cassette-2__th--bronze::before {
    background-color: #967444;
}

/*  c-cassette-3 (大会_競技個別_結果)
--------------------------------------------- */
.c-cassette-3__head {
    padding-block: 15px 16px;
}
@media screen and (max-width: 992px) {
    .c-cassette-3__head {
        padding-block: 12px 16px;
    }
}

/*  c-cassette-4 (大会_検索結果)
--------------------------------------------- */
.c-cassette-4 {
    padding: var(--1gap);
    border: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-cassette-4 {
        padding: 0;
        border: none;
        background-color: #fff;
    }
    .c-cassette-4:not(:last-of-type) {
        border-bottom: 9px solid #EFEFEF;
    }
}
.c-cassette-4:not(:first-of-type) {
    margin-top: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-cassette-4:not(:first-of-type) {
        margin-top: var(--0_5gap);
    }
}
.c-cassette-4__head {
    position: relative;
    display: grid;
    grid-template-columns: 100px auto;
    -moz-column-gap: var(--1gap);
         column-gap: var(--1gap);
    align-items: center;
}
@media (hover: hover) and (pointer: fine) {
    .c-cassette-4__head {
        transition: opacity 300ms;
    }
    .c-cassette-4__head:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-cassette-4__head {
        grid-template-columns: 58px auto;
        align-items: initial;
        padding-left: var(--1gap);
    }
}
.c-cassette-4__head::after {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 9px;
    height: 16px;
    -webkit-mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}
@media screen and (max-width: 992px) {
    .c-cassette-4__head::after {
        right: 20px;
        width: 6px;
        height: 12px;
    }
}
.c-cassette-4__head-img {
    height: 100px;
}
@media screen and (max-width: 992px) {
    .c-cassette-4__head-img {
        height: 58px;
    }
}
.c-cassette-4--type2 .c-cassette-4__head-img {
    display: grid;
    place-items: center;
}
.c-cassette-4__head-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
}
.c-cassette-4--type2 .c-cassette-4__head-img img {
    width: 50px;
    height: 50px;
    -o-object-fit: cover;
       object-fit: cover;
}
@media screen and (max-width: 992px) {
    .c-cassette-4--type2 .c-cassette-4__head-img img {
        width: 29px;
        height: 29px;
    }
}
.c-cassette-4__head-txt-wrap {
    padding-block: 1em;
    padding-right: var(--2gap);
}
@media screen and (max-width: 992px) {
    .c-cassette-4__head-txt-wrap {
        display: grid;
        place-content: center;
        justify-content: flex-start;
        padding-right: var(--3gap);
        padding-block: 0.45em;
    }
}
.c-cassette-4__head-txt {
    display: block;
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-cassette-4__head-txt {
        font-size: 1rem;
    }
}
.c-cassette-4__head-txt-small {
    display: block;
    margin-top: 2px;
    font-size: 0.75rem;
}
@media screen and (max-width: 992px) {
    .c-cassette-4__head-txt-small {
        margin-top: 0;
        font-size: 0.7333333333rem;
    }
}
@media screen and (max-width: 992px) {
    .c-cassette-4__body {
        padding-inline: 20px var(--1gap);
        padding-bottom: var(--0_5gap);
    }
}
.c-cassette-4__table {
    width: 100%;
    table-layout: fixed;
}
.c-cassette-4__th {
    width: 120px;
    padding-block: 14px;
    padding-left: 10px;
    font-size: 0.75rem;
    font-weight: 500;
    color: #757577;
    line-height: 1.625;
    vertical-align: top;
}
@media screen and (max-width: 992px) {
    .c-cassette-4__th {
        width: 70px;
        padding-left: 0;
        font-size: 0.7333333333rem;
    }
}
.c-cassette-4__td {
    padding-block: 12px;
    border-top: 1px solid #EFEFEF;
    font-size: 0.875rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-cassette-4__td {
        font-size: 0.8666666667rem;
    }
}
.c-cassette-4__td-txt:not(:first-of-type) {
    margin-top: 8px;
}
.c-cassette-4__td-txt a {
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .c-cassette-4__td-txt a:hover {
        text-decoration: none;
    }
}

/*  c-cassette-5 旧大会 2カラム配置パーツ
--------------------------------------------- */
.c-cassette-5 {
    display: grid;
    gap: var(--1gap);
    grid-template-columns: 3fr 1fr;
}
@media screen and (max-width: 992px) {
    .c-cassette-5 {
        display: block;
    }
}
.c-cassette-5__left {
    order: 1;
}
.c-cassette-5__right {
    order: 2;
}

/* ---------------------------------------------
*   detail
--------------------------------------------- */
/*  c-detail-1 (アスリート詳細ページ)
--------------------------------------------- */
.c-detail-1 {
    margin-top: var(--2gap);
}
@media screen and (max-width: 992px) {
    .c-keyvisual + .c-detail-1 {
        margin-top: var(--1gap);
    }
}

.c-detail-1__head {
    display: flex;
    margin-bottom: var(--2gap);
}
@media screen and (max-width: 992px) {
    .c-detail-1__head {
        margin-bottom: calc(var(--1gap) * 1.5);
        display: grid;
        grid-template: "image info" "right right";
        grid-template-columns: 75px auto;
        -moz-column-gap: 18px;
             column-gap: 18px;
    }
}
@media screen and (min-width: 577px) and (max-width: 992px) {
    .c-detail-1__head {
        grid-template-columns: 104px auto;
    }
}
.c-detail-1__head-img {
    flex-shrink: 0;
    width: 168px;
    margin-right: max(8.59375%, 20px);
}
@media screen and (max-width: 992px) {
    .c-detail-1__head-img {
        width: auto;
        margin-right: 0;
        grid-area: image;
    }
}
.c-detail-1__head-info {
    margin-top: -8px;
    line-height: 1.36;
    letter-spacing: -0.01em;
    padding-right: 1rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-detail-1__head-info {
        grid-area: info;
        margin-top: -2px;
        padding-right: 0;
    }
}
.c-detail-1__head-ttl {
    -webkit-margin-start: -2px;
            margin-inline-start: -2px;
    line-height: 1.2;
    font-size: 3.0625rem;
    font-weight: bold;
}
@media screen and (max-width: 992px) {
    .c-detail-1__head-ttl {
        font-size: 2.1875rem;
    }
}
@media screen and (max-width: 992px) {
    .c-detail-1__head-ttl {
        font-size: 1.8rem;
        -webkit-margin-start: -1px;
                margin-inline-start: -1px;
    }
}
.specific-customization.specific-customization .c-detail-1__head-txt-s {
    display: block;
    margin-top: 7px;
    font-size: 1.5rem;
    font-family: "TJSans-Bold", "Noto Sans JP", sans-serif;
    line-height: 1.2;
}
@media screen and (min-width: 577px) and (max-width: 992px) {
    .specific-customization.specific-customization .c-detail-1__head-txt-s {
        margin-top: 2px;
        font-size: 1.5rem;
        line-height: 1.4571428571;
    }
}
@media screen and (max-width: 576px) {
    .specific-customization.specific-customization .c-detail-1__head-txt-s {
        font-size: 0.9333333333rem;
    }
}
.c-detail-1__head-txt {
    display: block;
    margin-top: 16px;
    font-size: 1rem;
}
@media screen and (min-width: 577px) and (max-width: 992px) {
    .c-detail-1__head-txt {
        margin-top: 4px;
    }
}
@media screen and (max-width: 576px) {
    .c-detail-1__head-txt {
        margin-top: 6px;
        font-size: 0.7333333333rem;
    }
}
.c-detail-1__head-txt + .c-detail-1__head-txt {
    margin-top: 10px;
}
@media screen and (min-width: 577px) and (max-width: 992px) {
    .c-detail-1__head-txt + .c-detail-1__head-txt {
        margin-top: 8px;
        margin-bottom: -3px;
        font-size: 1rem;
    }
}
@media screen and (max-width: 576px) {
    .c-detail-1__head-txt + .c-detail-1__head-txt {
        font-size: 0.8rem;
    }
}
.c-detail-1__head-sns {
    margin-top: 36px;
    margin-right: 1rem;
}
@media screen and (max-width: 992px) {
    .c-detail-1__head-sns {
        margin-top: 0;
    }
}
.c-detail-1__head-right {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    margin-left: auto;
    border-left: 1px solid #EFEFEF;
    padding-left: var(--1gap);
    width: 222px;
}
@media screen and (max-width: 992px) {
    .c-detail-1__head-right {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: auto;
        margin-top: 28px;
        border-left: none;
        margin-left: 0;
        padding-left: 0;
        grid-area: right;
    }
}
.c-detail-1__head-favorite {
    flex-shrink: 0;
}
@media screen and (max-width: 992px) {
    .c-detail-1__head-favorite {
        margin-left: auto;
    }
}
.c-detail-1__body {
    padding-bottom: 60px;
}
@media screen and (max-width: 992px) {
    .c-detail-1__body {
        padding-bottom: 32px;
    }
}
.c-detail-1__btn-wrap {
    position: relative;
}
.c-detail-1__tooltip {
    right: 0;
    bottom: calc(100% + 14px);
    z-index: 10;
    display: none;
    width: -moz-max-content;
    width: max-content;
}
.c-detail-1__tooltip.c-tool-tip-1 {
    position: absolute;
}
@media screen and (max-width: 992px) {
    .c-detail-1__tooltip.c-tool-tip-1 {
        position: fixed;
    }
}
.c-detail-1__tooltip.is-show {
    display: block;
}
.c-detail-1__tooltip::before {
    right: 14px;
}

/*  c-detail-2 (競技詳細ページ)
--------------------------------------------- */
.c-detail-2__head-flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 4px;
    padding-bottom: 14px;
    border-bottom: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-detail-2__head-flex {
        margin-top: -1px;
        padding-bottom: 8px;
    }
}
.c-detail-2__head-logo {
    width: 30px;
}
@media screen and (max-width: 992px) {
    .c-detail-2__head-logo {
        width: 20px;
    }
}
.c-detail-2__ttl {
    margin-top: 32px;
    line-height: 1.2;
    letter-spacing: -0.01em;
    margin-left: -0.08em;
    -webkit-margin-start: -2px;
            margin-inline-start: -2px;
    font-size: 3.0625rem;
    font-weight: bold;
}
@media screen and (max-width: 992px) {
    .c-detail-2__ttl {
        margin-top: 13px;
        -webkit-margin-start: -1px;
                margin-inline-start: -1px;
        font-size: 2.2666666667rem;
    }
}
.c-detail-2__ttl-sub {
    display: block;
    margin-top: 2px;
    font-size: 0.75rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-detail-2__ttl-sub {
        margin-top: 0px;
        font-size: 0.7333333333rem;
    }
}
.c-detail-2__link-list {
    margin-top: 16px;
}
@media screen and (max-width: 992px) {
    .c-detail-2__link-list {
        margin-top: 13px;
    }
}
.c-detail-2__col {
    display: grid;
    grid-template-columns: auto minmax(620px, calc(760px - var(--1gap) * 2)) auto minmax(260px, 320px);
    -moz-column-gap: var(--1gap);
         column-gap: var(--1gap);
    max-width: 1320px;
    margin-inline: auto;
    margin-top: calc(var(--1gap) * 2.5);
    padding: var(--1gap) var(--1gap) var(--2gap);
}
@media screen and (max-width: 992px) {
    .c-detail-2__col {
        display: block;
        margin-top: 6px;
        padding: 20px 16px var(--1gap);
    }
}
.c-detail-2__col + .c-detail-2__col {
    margin-top: 0;
}
.c-detail-2__col-main {
    margin-inline: auto;
    grid-column-start: 2;
    max-width: calc(760px - var(--1gap) * 2);
}
.c-detail-2__col-main h2:not(.heading-type-line1) {
    margin-bottom: 27px;
    font-size: 1.6875rem;
    font-weight: bold;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-detail-2__col-main h2:not(.heading-type-line1) {
        margin-bottom: 16px;
        font-size: 1.3333333333rem;
    }
}
.c-detail-2__col-sidebar {
    width: 100%;
    border-left: 1px solid #EFEFEF;
    margin-left: auto;
    padding-top: 5px;
    grid-column-start: 4;
}
@media screen and (max-width: 992px) {
    .c-detail-2__col-sidebar {
        display: none;
    }
}
.c-detail-2__col-sidebar-inner {
    position: sticky;
    top: calc(var(--header-height) * 1px + 20px);
    width: 222px;
    margin-left: auto;
}
.c-detail-2__wysiwygs {
    margin-top: -10px;
}
.c-detail-2__col-hr {
    grid-column: 2/-1;
}
.c-detail-2__wysiwyg {
    padding-top: 10px;
}
.c-detail-2__wysiwyg:not(:first-of-type) {
    margin-top: var(--2gap);
}
.c-detail-2__container {
    max-width: 1255px;
    padding-inline: 40px;
}
@media screen and (min-width: 993px) {
    .c-detail-2__btn-link {
        max-width: 343px;
    }
}
@media screen and (max-width: 992px) {
    .c-detail-2 .c-table-1__th,
    .c-detail-2 .c-table-1__td {
        padding-block: 8px;
    }
}
@media screen and (max-width: 992px) {
    .c-detail-2 .c-table-1__th {
        width: 155px;
    }
}
@media screen and (max-width: 992px) {
    .c-detail-2 .c-list-medal {
        -moz-column-gap: 8px;
             column-gap: 8px;
    }
}
@media screen and (max-width: 992px) {
    .c-detail-2 .c-list-medal__item::before {
        width: 16px;
        height: 16px;
    }
}
.c-detail-2__btn-wrap {
    position: relative;
    margin-left: auto;
}
.c-detail-2__tooltip {
    right: 0;
    bottom: calc(100% + 14px);
    z-index: 10;
    display: none;
    width: -moz-max-content;
    width: max-content;
}
.c-detail-2__tooltip.c-tool-tip-1 {
    position: absolute;
}
@media screen and (max-width: 992px) {
    .c-detail-2__tooltip.c-tool-tip-1 {
        position: fixed;
    }
}
.c-detail-2__tooltip.is-show {
    display: block;
}

/*  c-detail-3 (NEWS詳細)
--------------------------------------------- */
.c-detail-3__head-sup {
    font-size: 0.75rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-detail-3__head-sup {
        font-size: 0.7333333333rem;
    }
}
.c-detail-3__head-sup-2 {
    font-size: 0.875rem;
    color: #757577;
    margin-top: 17px;
    letter-spacing: 0.004em;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-detail-3__head-sup-2 {
        font-size: 0.8666666667rem;
        margin-top: 12px;
    }
}
.c-detail-3__head-sup-2 p {
    margin-top: 17px;
}
@media screen and (max-width: 992px) {
    .c-detail-3__head-sup-2 p {
        margin-top: 12px;
    }
}
.c-detail-3__category {
    margin-left: 3px;
}
.c-detail-3__category::before {
    position: relative;
    top: 0.2em;
    content: "";
    display: inline-block;
    width: 1px;
    height: 14px;
    margin-right: 5px;
    background-color: #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-detail-3__category::before {
        top: 0.25em;
    }
}
.c-detail-3__ttl {
    margin-top: 8px;
    font-size: 1.75rem;
    font-weight: bold;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-detail-3__ttl {
        margin-top: 2px;
        font-size: 1.5333333333rem;
    }
}
.c-detail-3__ttl:first-child {
    margin-top: 0;
}
.c-detail-3__label {
    font-size: 0.875rem;
    padding-inline: 20px;
    height: 30px;
    color: #fff;
    background-color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    margin-top: 12px;
    width: -moz-fit-content;
    width: fit-content;
}
@media screen and (max-width: 992px) {
    .c-detail-3__label {
        font-size: 0.8666666667rem;
        padding-inline: 16px;
        height: 26px;
    }
}
.c-detail-3__label--gray1 {
    color: #000;
    background-color: #EFEFEF;
}
.c-detail-3__label--white1 {
    color: #757577;
    background-color: #fff;
    outline: 1px solid #EFEFEF;
    font-weight: 500;
}
.c-detail-3__wysiwyg {
    margin-top: 28px;
}
@media screen and (max-width: 992px) {
    .c-detail-3__wysiwyg {
        margin-top: 20px;
    }
}
.c-detail-3__wysiwyg--type2 {
    margin-top: 38px;
}
@media screen and (max-width: 992px) {
    .c-detail-3__wysiwyg--type2 {
        margin-top: 30px;
    }
}
.c-detail-3__btn-list > *:not(:first-of-type) {
    margin-top: var(--1gap);
}
.c-detail-3__btn-wrap {
    position: relative;
}
.c-detail-3__tooltip {
    right: 0;
    bottom: calc(100% + 14px);
    z-index: 10;
    display: none;
    width: -moz-max-content;
    width: max-content;
}
.c-detail-3__tooltip.c-tool-tip-1 {
    position: absolute;
}
@media screen and (max-width: 992px) {
    .c-detail-3__tooltip.c-tool-tip-1 {
        position: fixed;
    }
}
.c-detail-3__tooltip.is-show {
    display: block;
}

/* ---------------------------------------------
*   hr
--------------------------------------------- */
/*  c-hr
--------------------------------------------- */
.c-hr {
    height: 1px;
    background-color: #EFEFEF;
}

/* ---------------------------------------------
*   icon
--------------------------------------------- */
/*  c-icon-new
--------------------------------------------- */
.c-icon-new {
    display: inline-block;
    font-size: 0.7em;
    padding-left: 1em;
    font-weight: 500;
}
.iphone .c-icon-new, .ipad .c-icon-new {
    display: inline;
}

/*  c-icon-external
--------------------------------------------- */
.c-icon-external {
    --color: #000;
}
.c-icon-external::after {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-inline: 0.3em;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
}

/*  c-icon
--------------------------------------------- */
.c-icon {
    --color: #000;
    color: var(--color);
}
.c-icon::after {
    position: relative;
    top: 0.08em;
    content: "";
    display: inline-block;
    width: 0.4285714286em;
    height: 0.8571428571em;
    margin-left: 0.5em;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
}
.c-icon[target=_blank]::after, .c-icon[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_target-blank.svg");
            mask-image: url("/assets/img/common/icon_target-blank.svg");
}
.c-icon[href*=".pdf"]::after, .c-icon.pdf-icon::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_pdf.svg");
            mask-image: url("/assets/img/common/icon_pdf.svg");
}
.c-icon--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
            mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
}

/* ---------------------------------------------
*   iframe
--------------------------------------------- */
/*  c-iframe
--------------------------------------------- */
.c-iframe iframe {
    display: block;
    width: 100%;
    height: 100%;
}

/* ---------------------------------------------
*   c-img
--------------------------------------------- */
.c-img__link {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .c-img__link {
        transition: opacity 300ms;
    }
    .c-img__link:hover {
        opacity: 0.8;
    }
}
.c-img img {
    width: 100%;
}

/* ---------------------------------------------
*   keyvisual
--------------------------------------------- */
/*  c-keyvisual
--------------------------------------------- */
.c-keyvisual img {
    width: 100%;
}
@media screen and (max-width: 992px) {
    .c-keyvisual--sp-cover img {
        -o-object-fit: cover;
           object-fit: cover;
        aspect-ratio: 375/240;
    }
}

/* ---------------------------------------------
*   label
--------------------------------------------- */
/*  c-label-1 (カレンダー)
--------------------------------------------- */
.c-label-1 {
    display: block;
    padding: 4px 10px;
    color: #fff;
    font-size: 0.75rem;
    text-align: center;
}
@media screen and (max-width: 992px) {
    .c-label-1 {
        padding: 2px 8px;
        font-size: 0.7333333333rem;
    }
}
.windows.firefox .c-label-1 {
    padding-block: 3.5px 4.5px;
}
@media screen and (max-width: 992px) {
    .windows.firefox .c-label-1 {
        padding-block: 1.5px 2.5px;
    }
}

/* ---------------------------------------------
*   link
--------------------------------------------- */
/*  c-link-angle-right
--------------------------------------------- */
.c-link-angle-right {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    padding: 8px 20px;
    margin-inline: auto;
    font-size: 0.8125rem;
    font-weight: bold;
}
@media (hover: hover) and (pointer: fine) {
    .c-link-angle-right:hover {
        text-decoration: underline;
    }
}
.c-link-angle-right::after {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 6px;
    height: 11px;
    margin-left: 7px;
    background: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
}

/*  c-link-angle-right-2 (大会_競技個別)
--------------------------------------------- */
.c-link-angle-right-2 {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
    font-size: 0.9375rem;
    font-weight: 500;
    color: #404045;
}
@media (hover: hover) and (pointer: fine) {
    .c-link-angle-right-2:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .c-link-angle-right-2 {
        font-size: 1rem;
    }
}
.c-link-angle-right-2::after {
    position: relative;
    top: 0.08em;
    content: "";
    display: inline-block;
    width: 6px;
    height: 12px;
    margin-left: 7px;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}

/*  c-link-angle-right-sm
--------------------------------------------- */
.c-link-angle-right-sm {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 0.75rem;
    font-weight: 500;
    color: #404045;
    flex-shrink: 0;
    align-self: end;
}
@media (hover: hover) and (pointer: fine) {
    .c-link-angle-right-sm:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .c-link-angle-right-sm {
        font-size: 0.7333333333rem;
    }
}
.c-link-angle-right-sm::after {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 6px;
    height: 11px;
    margin-left: 6px;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}
@media screen and (max-width: 992px) {
    .c-link-angle-right-sm::after {
        top: 0;
        width: 5px;
        height: 9px;
        margin-left: 5px;
    }
}

/*  c-link-target-blank
--------------------------------------------- */
.c-link-target-blank {
    --base-color: #fff;
    display: inline-block;
    color: var(--base-color);
    font-size: 0.75rem;
    font-weight: 500;
}
@media (hover: hover) and (pointer: fine) {
    .c-link-target-blank:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .c-link-target-blank {
        font-size: 0.7333333333rem;
    }
}
.c-link-target-blank--black {
    --base-color: #000;
}
.c-link-target-blank[target=_blank]::after {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-left: 4px;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
    background-color: var(--base-color);
}
@media screen and (max-width: 992px) {
    .c-link-target-blank[target=_blank]::after {
        top: 0;
        width: 9px;
        height: 9px;
    }
}

/*  c-link-list-1
--------------------------------------------- */
.c-link-list-1 {
    display: flex;
    -moz-column-gap: 10px;
         column-gap: 10px;
    font-size: 0.75rem;
}
@media screen and (max-width: 992px) {
    .c-link-list-1 {
        -moz-column-gap: 8px;
             column-gap: 8px;
        font-size: 0.7333333333rem;
    }
}
.c-link-list-1__ttl {
    color: #757577;
    flex-shrink: 0;
}
.c-link-list-1__list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
@media screen and (max-width: 992px) {
    .c-link-list-1__list {
        display: block;
        gap: 4px 8px;
    }
}
@media screen and (max-width: 992px) {
    .c-link-list-1__item:not(:first-of-type) {
        margin-top: 4px;
    }
}

/*  c-link-list-2 (PCのみ 競技詳細ページ)
--------------------------------------------- */
.c-link-list-2 {
    position: sticky;
    top: calc(var(--header-height) * 1px + 30px);
    font-size: 0.875rem;
}
.c-link-list-2__ttl {
    font-weight: 500;
}
.c-link-list-2__list {
    margin-top: 17px;
    padding-top: 16px;
    border-top: 1px solid #EFEFEF;
}
.c-link-list-2__item:not(:first-of-type) {
    margin-top: 13px;
}
.c-link-list-2__item-link {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .c-link-list-2__item-link:hover {
        text-decoration: underline;
    }
}

/*  c-link-list-3 (NEWS詳細)
--------------------------------------------- */
.c-link-list-3 li:not(:first-of-type) {
    margin-top: 10px;
}
@media screen and (max-width: 992px) {
    .c-link-list-3 li:not(:first-of-type) {
        margin-top: 10px;
    }
}
.c-link-list-3 li a {
    --color: #000;
    color: var(--color);
    line-height: 1.39;
    font-size: calc(14 / 16 * 1rem);
    text-decoration: underline;
}
@media screen and (max-width: 992px) {
    .c-link-list-3 li a {
        font-size: calc(13 / 15 * 1rem);
    }
}
.c-link-list-3 li a::after {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 0.4285714286em;
    height: 0.8571428571em;
    margin-inline: 0.5em;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
}
.c-link-list-3 li a[target=_blank]::after, .c-link-list-3 li a[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_target-blank.svg");
            mask-image: url("/assets/img/common/icon_target-blank.svg");
}
.c-link-list-3 li a[href*=".pdf"]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_pdf.svg");
            mask-image: url("/assets/img/common/icon_pdf.svg");
}
.c-link-list-3 li a--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
            mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
}
@media (hover: hover) and (pointer: fine) {
    .c-link-list-3 li a:hover {
        text-decoration: none;
    }
}
.c-link-list-3 li a[href$=".doc"]::after, .c-link-list-3 li a[href$=".docx"]::after, .c-link-list-3 li a[href$=".xlsx"]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_pdf.svg");
            mask-image: url("/assets/img/common/icon_pdf.svg");
}
.c-link-list-3 li a.c-txt-link-icon-up-1:after {
    display: none;
}

/*  c-link-list-4 (NEWS詳細)
--------------------------------------------- */
.c-link-list-4 {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 6px;
}
.c-link-list-4__item:not(:last-of-type)::after {
    content: ",";
    margin-left: -0.15em;
}
.c-link-list-4__link {
    font-size: 0.6875rem;
    line-height: 2;
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .c-link-list-4__link:hover {
        text-decoration: none;
    }
}
@media screen and (max-width: 992px) {
    .c-link-list-4__link {
        font-size: 0.7333333333rem;
    }
}

/*  c-txt-link-icon
--------------------------------------------- */
.c-txt-link-icon {
    --color: #000;
    color: var(--color);
    line-height: 1.39;
    font-size: calc(14 / 16 * 1rem);
    text-decoration: underline;
}
@media screen and (max-width: 992px) {
    .c-txt-link-icon {
        font-size: calc(13 / 15 * 1rem);
    }
}
.c-txt-link-icon::after {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 0.4285714286em;
    height: 0.8571428571em;
    margin-inline: 0.5em;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
}
.c-txt-link-icon[target=_blank]::after, .c-txt-link-icon[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_target-blank.svg");
            mask-image: url("/assets/img/common/icon_target-blank.svg");
}
.c-txt-link-icon[href*=".pdf"]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_pdf.svg");
            mask-image: url("/assets/img/common/icon_pdf.svg");
}
.c-txt-link-icon--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
            mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
}
@media (hover: hover) and (pointer: fine) {
    .c-txt-link-icon:hover {
        text-decoration: none;
    }
}

/*  c-txt-link-icon-fill
--------------------------------------------- */
.c-txt-link-icon-fill {
    --color: #000;
    color: var(--color);
    line-height: 1.39;
    font-size: calc(14 / 16 * 1rem);
    text-decoration: underline;
    padding-left: 1.7em;
    text-indent: -1.7em;
    display: inline-block;
}
@media screen and (max-width: 992px) {
    .c-txt-link-icon-fill {
        font-size: calc(13 / 15 * 1rem);
    }
}
.c-txt-link-icon-fill::before {
    position: relative;
    top: 0.15em;
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-inline: 0.35em;
    -webkit-mask: url("/assets/img/common/icon_arrow-right-square-fill.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_arrow-right-square-fill.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
}
.c-txt-link-icon-fill::after {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    background-color: var(--color);
}
.c-txt-link-icon-fill[target=_blank]::after, .c-txt-link-icon-fill[target=joc_window]::after {
    margin-inline: 0.5em;
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
.c-txt-link-icon-fill[href*=".pdf"]::after, .c-txt-link-icon-fill.pdf-icon::after {
    margin-inline: 0.5em;
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
}
@media (hover: hover) and (pointer: fine) {
    .c-txt-link-icon-fill:hover {
        text-decoration: none;
    }
}

/*  c-txt-link-icon-no-angle
--------------------------------------------- */
.c-txt-link-icon-no-angle {
    --color: #000;
    color: var(--color);
    text-decoration: underline;
}
.c-txt-link-icon-no-angle::after {
    position: relative;
    top: 0.08em;
    content: "";
    display: inline-block;
    margin-left: 0.5em;
    background-color: var(--color);
}
.c-txt-link-icon-no-angle[target=_blank]::after, .c-txt-link-icon-no-angle[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
.c-txt-link-icon-no-angle[href*=".pdf"]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
}
.c-txt-link-icon-no-angle--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_arrow-right-square.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_arrow-right-square.svg") 0 0/100% 100% no-repeat;
}
@media (hover: hover) and (pointer: fine) {
    .c-txt-link-icon-no-angle:hover {
        text-decoration: none;
    }
}

/*  c-link-box (静的ページ)
--------------------------------------------- */
.c-link-box {
    display: block;
    max-width: 630px;
    margin-inline: auto;
    padding: 24px;
    border: 1px solid #EFEFEF;
    font-size: 1rem;
    text-align: center;
    line-height: 1.7;
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .c-link-box:hover {
        text-decoration: none;
    }
}
@media screen and (max-width: 992px) {
    .c-link-box {
        max-width: initial;
        padding: 12px 19px;
        font-size: 0.8666666667rem;
        letter-spacing: -0.05em;
    }
}

/*  c-txt-link-icon-up-1
--------------------------------------------- */
.c-txt-link-icon-up-1 {
    --color: #000;
    color: var(--color);
    line-height: 1.39;
    text-align: right;
    font-size: calc(14 / 16 * 1rem);
    text-decoration: underline;
}
@media screen and (max-width: 992px) {
    .c-txt-link-icon-up-1 {
        font-size: calc(13 / 15 * 1rem);
    }
}
.c-txt-link-icon-up-1::before {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 0.4285714286em;
    height: 0.8571428571em;
    margin-inline: 0.7142857143em;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
    transform: rotate(-90deg);
}
@media (hover: hover) and (pointer: fine) {
    .c-txt-link-icon-up-1:hover {
        text-decoration: none;
    }
}

/* ---------------------------------------------
*   list
--------------------------------------------- */
/*  .c-list-medal
--------------------------------------------- */
.c-list-medal {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 20px;
}
.c-list-medal__item {
    display: flex;
    align-items: center;
    -moz-column-gap: 5px;
         column-gap: 5px;
}
.c-list-medal__item::before {
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    border-radius: 50%;
}
.c-list-medal__item--gold::before {
    background-color: #AA8532;
}
.c-list-medal__item--silver::before {
    background-color: #A6A9AA;
}
.c-list-medal__item--bronze::before {
    background-color: #967444;
}

/*  c-list-1 (NEWS詳細)
--------------------------------------------- */
.c-list-1__item {
    border-top: 1px solid #EFEFEF;
}
.c-list-1__item:last-of-type {
    border-bottom: 1px solid #EFEFEF;
}
.c-list-1__link {
    display: block;
    padding-block: 14px 13px;
}
@media screen and (max-width: 992px) {
    .c-list-1__link {
        padding-block: 8px;
    }
}
.c-list-1__ttl {
    font-size: 0.875rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-list-1__ttl {
        font-size: 0.8666666667rem;
    }
}
.c-list-1__sup {
    margin-top: 8px;
    font-size: 0.75rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-list-1__sup {
        margin-top: 4px;
        font-size: 0.6666666667rem;
    }
}
.c-list-1__category {
    margin-left: 3px;
}
.c-list-1__category::before {
    position: relative;
    top: 0.15em;
    content: "";
    display: inline-block;
    width: 1px;
    height: 12px;
    margin-right: 5px;
    background-color: #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-list-1__category::before {
        top: 0.25em;
    }
}

/*  c-list-2 (大会_競技個別_結果)
--------------------------------------------- */
.c-list-2 {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5em var(--2gap);
}
.c-list-2__item {
    display: flex;
    -moz-column-gap: var(--0_5gap);
         column-gap: var(--0_5gap);
}
.c-list-2__item-ttl {
    flex-shrink: 0;
    color: #757577;
}

/*  c-list-3 (大会_競技個別_日程)
--------------------------------------------- */
.c-list-3 {
    display: flex;
    flex-wrap: wrap;
}
.c-list-3__item:not(:last-of-type)::after {
    content: "、";
}
.c-list-3__link {
    font-weight: 500;
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .c-list-3__link:hover {
        text-decoration: none;
    }
}

/*  c-list-4 (静的ページ ニュース一覧)
--------------------------------------------- */
.c-list-4__item {
    border-bottom: 1px solid #EFEFEF;
}
.c-list-4__item:first-of-type {
    border-top: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-list-4__item:last-of-type {
        border-bottom: none;
    }
}
.c-list-4__link {
    display: block;
    padding-block: 14px;
}
@media screen and (max-width: 992px) {
    .c-list-4__link {
        padding-block: 8px;
    }
}
.c-list-4__txt {
    font-size: 0.875rem;
    font-weight: 500;
    --color: #000;
}
@media screen and (max-width: 992px) {
    .c-list-4__txt {
        font-size: 0.8666666667rem;
    }
}
.c-list-4__txt::after {
    position: relative;
    top: 0.1em;
    display: inline-block;
    margin-inline: 0.5em;
    background-color: var(--color);
}
.c-list-4__link[target=_blank] .c-list-4__txt::after, .c-list-4__link[target=joc_window] .c-list-4__txt::after {
    content: "";
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
.c-list-4__link[href*=".pdf"] .c-list-4__txt::after {
    content: "";
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
}
.c-list-4__sup {
    display: block;
    margin-top: 4px;
}
@media screen and (max-width: 992px) {
    .c-list-4__sup {
        margin-top: 3px;
        padding-top: 0;
    }
}
.c-list-4__date {
    font-size: 0.75rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-list-4__date {
        font-size: 0.6666666667rem;
    }
}
.c-list-4__category {
    margin-left: 3px;
    font-size: 0.75rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-list-4__category {
        font-size: 0.6666666667rem;
    }
}
.c-list-4__category::before {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 1px;
    height: 12px;
    margin-right: 5px;
    background-color: #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-list-4__category::before {
        top: 0.2em;
        height: 14px;
    }
}

/*  .c-list-5
--------------------------------------------- */
.c-list-5 {
    display: block;
}
@media screen and (min-width: 993px) {
    .c-list-5__item {
        border: 1px solid #EFEFEF;
    }
    .c-list-5__item:not(:last-of-type) {
        border-bottom: none;
    }
}
@media screen and (max-width: 992px) {
    .c-list-5__item {
        border-top: 1px solid #EFEFEF;
    }
    .c-list-5__item:last-of-type {
        border-bottom: 1px solid #EFEFEF;
    }
}
.c-list-5__link {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    padding: 20px 44px 20px 20px;
    font-size: 0.875rem;
    line-height: 1.4;
    word-break: break-all;
}
@media (hover: hover) and (pointer: fine) {
    .c-list-5__link {
        transition: opacity 300ms;
    }
    .c-list-5__link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-list-5__link {
        padding: 13px 27px 13px 0;
        font-size: 0.8666666667rem;
    }
}
.c-list-5__link::after {
    position: absolute;
    top: 50%;
    right: 19px;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 7px;
    height: 13px;
    -webkit-mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}
@media screen and (max-width: 992px) {
    .c-list-5__link::after {
        right: 5px;
    }
}
.c-list-5__link[target=_blank]::after {
    right: 16px;
    width: 14px;
    height: 14px;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-list-5__link[target=_blank]::after {
        right: 1px;
    }
}
.c-list-5__link[href*=".pdf"]::after {
    right: 15px;
    width: 14px;
    height: 16px;
    -webkit-mask: url("/assets/img/common/icon_pdf.svg") 50% 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_pdf.svg") 50% 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-list-5__link[href*=".pdf"]::after {
        right: 1px;
    }
}

/*  .c-list-6
--------------------------------------------- */
@media screen and (min-width: 993px) {
    .c-list-6__item {
        border: 1px solid #EFEFEF;
    }
    .c-list-6__item:not(:last-of-type) {
        margin-bottom: var(--0_5gap);
    }
}
@media screen and (max-width: 992px) {
    .c-list-6__item {
        border-top: 1px solid #EFEFEF;
    }
    .c-list-6__item:last-of-type {
        border-bottom: 1px solid #EFEFEF;
    }
}
.c-list-6__img {
    width: 80px;
}
@media screen and (max-width: 992px) {
    .c-list-6__img {
        width: 70px;
    }
}
.c-list-6__link {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    padding: 10px 44px 10px 20px;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.4;
    word-break: break-all;
    gap: var(--1gap);
}
@media (hover: hover) and (pointer: fine) {
    .c-list-6__link {
        transition: opacity 300ms;
    }
    .c-list-6__link:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-list-6__link {
        padding: 14px 27px 14px 0;
    }
}
.c-list-6__link::after {
    position: absolute;
    top: 50%;
    right: 19px;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 7px;
    height: 13px;
    -webkit-mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}
@media screen and (max-width: 992px) {
    .c-list-6__link::after {
        right: 5px;
    }
}
.c-list-6__link[target=_blank]::after {
    right: 16px;
    width: 14px;
    height: 14px;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-list-6__link[target=_blank]::after {
        right: 1px;
    }
}
.c-list-6__link[href*=".pdf"]::after {
    right: 15px;
    width: 14px;
    height: 16px;
    -webkit-mask: url("/assets/img/common/icon_pdf.svg") 50% 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_pdf.svg") 50% 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-list-6__link[href*=".pdf"]::after {
        right: 1px;
    }
}

body:has(dialog[open]) {
    overflow: hidden;
}

.is-dialog.l-wrapper {
    overflow: auto;
    scrollbar-gutter: stable;
}
@media screen and (max-width: 992px) {
    .is-dialog.l-wrapper {
        scrollbar-gutter: auto;
    }
}
.is-dialog .l-header {
    position: fixed;
    width: calc(100% - 15px);
}
@media screen and (max-width: 992px) {
    .is-dialog .l-header {
        width: 100%;
    }
}
.is-dialog .l-mypage-nav {
    position: fixed;
    width: 100%;
    overflow: auto;
    scrollbar-gutter: stable;
}
.is-dialog .l-footer-pagetop {
    right: 25px;
}
@media screen and (max-width: 992px) {
    .is-dialog .l-footer-pagetop {
        right: 6px;
    }
}
.is-dialog .l-contents {
    padding-top: 104px;
}
@media screen and (max-width: 992px) {
    .is-dialog .l-contents {
        padding-top: 92px;
    }
}
@media screen and (max-width: 992px) {
    .is-dialog.is-scrollBar {
        scrollbar-gutter: stable;
    }
}
@media screen and (max-width: 992px) {
    .is-dialog.is-scrollBar .l-header {
        width: calc(100% - 15px);
    }
}
@media screen and (max-width: 992px) {
    .is-dialog.is-scrollBar .l-footer-pagetop {
        right: 21px;
    }
}

dialog:-internal-dialog-in-top-layer::backdrop {
    background: rgba(0, 0, 0, 0.3);
}

.dialog {
    border: none;
    padding: 30px 40px;
    max-width: 50%;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s;
}
.dialog.is-open {
    opacity: 1;
    visibility: visible;
}
@media screen and (max-width: 992px) {
    .dialog {
        max-width: 80%;
    }
}

.dialog-link {
    text-decoration: underline;
    color: #006dc3;
}
.dialog-link:hover {
    text-decoration: none;
    color: #31b4ff;
}

.dialog-button {
    display: flex;
    width: calc(50% - 10px);
    height: 40px;
    background-color: #111111;
    color: #fff;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 16px;
}
@media screen and (max-width: 992px) {
    .dialog-button {
        width: 100%;
        font-size: 14px;
    }
}
.dialog-button__wrap {
    display: flex;
    gap: 20px;
    margin-top: 30px;
    flex-direction: row-reverse;
}
@media screen and (max-width: 992px) {
    .dialog-button__wrap {
        margin-top: 20px;
        flex-wrap: wrap;
        gap: 15px;
    }
}

.yes-button {
    display: none;
}
.yes-button.is-active {
    display: flex;
}

/* ---------------------------------------------
*   nav
--------------------------------------------- */
/*  c-nav-1
--------------------------------------------- */
.c-nav-1 {
    background-color: #fff;
    height: 44px;
}
.c-nav-1__list {
    display: flex;
    align-items: center;
    height: 100%;
    overflow-x: auto;
    scrollbar-width: none;
    margin-left: calc(var(--1gap) * -1);
}
.c-nav-1__list::-webkit-scrollbar {
    display: none;
}
.c-nav-1__item {
    position: relative;
}
.c-nav-1__item:not(:last-of-type)::after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    content: "";
    display: block;
    width: 1px;
    height: 16px;
    margin-top: 2px;
    background-color: #EFEFEF;
}
.c-nav-1__link {
    padding-inline: var(--1gap);
    font-size: 0.875rem;
    font-weight: bold;
    white-space: nowrap;
}
@media (hover: hover) and (pointer: fine) {
    .c-nav-1__link[href] {
        transition: opacity 300ms;
    }
    .c-nav-1__link[href]:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-nav-1__link {
        font-size: 0.8rem;
    }
}
.c-nav-1__link.is-current {
    -webkit-text-decoration: underline #000;
            text-decoration: underline #000;
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    -webkit-text-decoration-skip-ink: none;
            text-decoration-skip-ink: none;
}
@media screen and (max-width: 992px) {
    .c-nav-1__link.is-current {
        text-underline-offset: 6px;
    }
}
.c-nav-1__link:not([href]) {
    color: #909090;
}

/*  c-nav-2 (大会サイドバーナビ)
--------------------------------------------- */
.c-nav-2__item:not(:first-of-type) {
    margin-top: 13px;
}
.c-nav-2__link {
    display: block;
    font-size: 0.875rem;
    letter-spacing: -0.05em;
    outline-offset: -1px;
    text-align: justify;
    line-height: 1.4;
    --color: #000;
    color: var(--color);
    line-height: 1.39;
    font-size: calc(14 / 16 * 1rem);
}
@media (hover: hover) and (pointer: fine) {
    .c-nav-2__link:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .c-nav-2__link {
        font-size: calc(13 / 15 * 1rem);
    }
}
.c-nav-2__link::after {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 0.4285714286em;
    height: 0.8571428571em;
    margin-inline: 0.5em;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
}
.c-nav-2__link[target=_blank]::after, .c-nav-2__link[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_target-blank.svg");
            mask-image: url("/assets/img/common/icon_target-blank.svg");
}
.c-nav-2__link[href*=".pdf"]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_pdf.svg");
            mask-image: url("/assets/img/common/icon_pdf.svg");
}
.c-nav-2__link--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
            mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
}
.c-nav-2__link::after {
    content: none;
}
.c-nav-2__link[href*=".pdf"]::after, .c-nav-2__link[target=_blank]::after {
    content: "";
}

/*  c-nav-3 (競技個別 - 日程 / 結果)
--------------------------------------------- */
.c-nav-3 {
    position: relative;
    border-top: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
    padding-block: 12px 16px;
}
@media screen and (max-width: 992px) {
    .c-nav-3 {
        padding-block: 11px;
    }
}
.c-nav-3__txt {
    font-size: 2.25rem;
    font-weight: bold;
    text-align: center;
}
@media screen and (max-width: 992px) {
    .c-nav-3__txt {
        font-size: 1.4rem;
    }
}
.c-nav-3__item {
    position: absolute;
    bottom: 21px;
}
@media screen and (max-width: 992px) {
    .c-nav-3__item {
        bottom: 13px;
    }
}
.c-nav-3__item--prev {
    left: 0;
}
.c-nav-3__item--next {
    right: 0;
}
.c-nav-3__link {
    display: flex;
    align-items: center;
    -moz-column-gap: 7px;
         column-gap: 7px;
    font-size: 0.875rem;
    font-weight: 500;
    color: #404045;
}
@media (hover: hover) and (pointer: fine) {
    .c-nav-3__link:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .c-nav-3__link {
        font-size: 0.8666666667rem;
    }
}
.c-nav-3__item--prev .c-nav-3__link::before, .c-nav-3__item--next .c-nav-3__link::after {
    content: "";
    position: relative;
    top: 0.08em;
    display: inline-block;
    width: 6px;
    height: 12px;
    background-color: #404045;
}
@media screen and (max-width: 992px) {
    .c-nav-3__item--prev .c-nav-3__link::before, .c-nav-3__item--next .c-nav-3__link::after {
        top: 0.1em;
    }
}
.c-nav-3__item--prev .c-nav-3__link::before {
    -webkit-mask: url("/assets/img/common/icon_chevron-left.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron-left.svg") 0 0/100% 100% no-repeat;
}
.c-nav-3__item--next .c-nav-3__link::after {
    -webkit-mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron-right.svg") 0 0/100% 100% no-repeat;
}

/*  c-nav-4 (静的ページ サイドバー内)
--------------------------------------------- */
.c-nav-4 {
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-nav-4 {
        font-size: 0.8666666667rem;
        border-top: 1px solid #EFEFEF;
    }
}
.c-nav-4__ttl {
    display: block;
    font-weight: bold;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-nav-4__ttl {
        padding-block: var(--1gap);
        font-size: 0.7333333333rem;
        font-weight: 500;
    }
}
.c-nav-4__list {
    margin-top: var(--1gap);
    padding-top: var(--1gap);
    border-top: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-nav-4__list {
        margin-top: 0;
        padding-top: 0;
        border-top: none;
    }
}
.c-nav-4__sub-ttl + .c-nav-4__list {
    border-top: none;
    margin-top: 0;
}
@media screen and (min-width: 993px) {
    .c-nav-4__item:not(:first-of-type) {
        margin-top: var(--1gap);
    }
}
@media screen and (max-width: 992px) {
    .c-nav-4__item:not(:last-of-type) {
        border-bottom: 1px solid #EFEFEF;
    }
}
.c-nav-4__link {
    display: block;
    color: #404045;
    --color: #000;
    color: var(--color);
    --color: #404045;
}
.c-nav-4__link::after {
    position: relative;
    top: 0.08em;
    content: "";
    display: inline-block;
    margin-left: 0.5em;
    background-color: var(--color);
}
.c-nav-4__link[target=_blank]::after, .c-nav-4__link[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_target-blank.svg") 0 0/100% 100% no-repeat;
}
.c-nav-4__link[href*=".pdf"]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_pdf.svg") 0 0/100% 100% no-repeat;
}
.c-nav-4__link--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask: url("/assets/img/common/icon_arrow-right-square.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_arrow-right-square.svg") 0 0/100% 100% no-repeat;
}
@media screen and (min-width: 993px) and (hover: hover) and (pointer: fine) {
    .c-nav-4__link:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .c-nav-4__link {
        padding-block: 12px;
    }
}
@media screen and (max-width: 992px) and (hover: hover) and (pointer: fine) {
    .c-nav-4__link {
        transition: opacity 300ms;
    }
    .c-nav-4__link:hover {
        opacity: 0.8;
    }
}
.c-nav-4__link:not([href*=".pdf"], [target=_blank])::after {
    display: none;
}
.c-nav-4__sub-ttl {
    display: block;
    font-weight: bold;
    color: #757577;
    line-height: 1.4;
    font-size: 0.75rem;
    margin-top: var(--1gap);
    padding-block: 11.8px 4.6px;
}
@media screen and (max-width: 992px) {
    .c-nav-4__sub-ttl {
        font-size: 0.7333333333rem;
        padding-block: 12px;
    }
}

/* ---------------------------------------------
*   pager
--------------------------------------------- */
/*  c-pager
--------------------------------------------- */
.c-pager {
    --color: #404045;
    height: 46px;
    border-top: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
    overflow: hidden;
}
@media screen and (max-width: 992px) {
    .c-pager {
        padding-inline: var(--1gap);
    }
}
.c-pager__inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 343px;
    height: 100%;
    margin-inline: auto;
}
@media screen and (max-width: 992px) {
    .c-pager__inner {
        max-width: initial;
    }
}
.c-pager__link {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    width: 46px;
    height: 0;
    padding-top: 46px;
    overflow: hidden;
}
@media (hover: hover) and (pointer: fine) {
    .c-pager__link {
        transition: opacity 300ms;
    }
    .c-pager__link:hover {
        opacity: 0.8;
    }
}
.c-pager__link::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--color);
}
.c-pager__link--prev {
    left: -20px;
}
.c-pager__link--prev::before {
    -webkit-mask: url("/assets/img/common/icon_chevron-left.svg") 50% 50%/7px auto no-repeat;
            mask: url("/assets/img/common/icon_chevron-left.svg") 50% 50%/7px auto no-repeat;
}
.c-pager__link--next {
    right: -20px;
}
.c-pager__link--next::before {
    -webkit-mask: url("/assets/img/common/icon_chevron-right.svg") 50% 50%/7px auto no-repeat;
            mask: url("/assets/img/common/icon_chevron-right.svg") 50% 50%/7px auto no-repeat;
}
.c-pager__txt {
    font-size: 0.9375rem;
    color: var(--color);
}
@media screen and (max-width: 992px) {
    .c-pager__txt {
        font-size: 1rem;
    }
}

.c-pager-2 {
    display: grid;
    gap: 1px;
    grid-template-columns: repeat(2, 1fr);
    border-top: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
}
.c-pager-2__item:first-child {
    position: relative;
}
.c-pager-2__item:first-child::after {
    content: "";
    display: block;
    width: 1px;
    background-color: #EFEFEF;
    position: absolute;
    top: 17px;
    bottom: 17px;
    right: -1px;
}
.c-pager-2__link {
    display: block;
    position: relative;
}
.c-pager-2__link::after {
    position: absolute;
    top: 50%;
    content: "";
    display: block;
    width: 6px;
    height: 12px;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: #404045;
}
.c-pager-2__link--prev {
    padding: 14px 30px 14px 45px;
}
@media screen and (max-width: 992px) {
    .c-pager-2__link--prev {
        padding: 8px 16px 8px 25px;
    }
}
.c-pager-2__link--prev::after {
    left: 19px;
    transform: scaleX(-1) translateY(-50%);
}
@media screen and (max-width: 992px) {
    .c-pager-2__link--prev::after {
        left: 0;
    }
}
.c-pager-2__link--next {
    padding: 14px 45px 14px 30px;
}
@media screen and (max-width: 992px) {
    .c-pager-2__link--next {
        padding: 8px 25px 8px 16px;
    }
}
.c-pager-2__link--next::after {
    right: 19px;
    transform: translateY(-50%);
}
@media screen and (max-width: 992px) {
    .c-pager-2__link--next::after {
        right: 0;
    }
}
.c-pager-2__ttl {
    font-size: 0.875rem;
}
.c-pager-2__sup {
    margin-top: 8px;
    font-size: 0.75rem;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-pager-2__sup {
        margin-top: 4px;
        font-size: 0.6666666667rem;
    }
}

/* ---------------------------------------------
*   schedule
--------------------------------------------- */
/*  c-schedule (既存サイトパーツ)
--------------------------------------------- */
.c-schedule {
    border-bottom: 1px solid #EFEFEF;
}
.c-schedule:first-of-type {
    border-top: 1px solid #EFEFEF;
}
.c-schedule li {
    display: flex;
    padding-block: 16px;
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-schedule li {
        padding-block: 12px 13px;
        font-size: 0.8666666667rem;
    }
}
.c-schedule__time {
    width: 80px;
    padding-right: 1em;
    color: #757577;
    flex-shrink: 0;
}
@media screen and (max-width: 992px) {
    .c-schedule__time {
        width: 67px;
    }
}
.c-schedule__event {
    display: flex;
    width: 100%;
}
@media screen and (max-width: 992px) {
    .c-schedule__event {
        display: block;
    }
}
.c-schedule__event .event_game {
    width: 19.5652173913%;
    padding-right: 1em;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-schedule__event .event_game {
        width: 100%;
        padding-right: 0;
    }
}
@media screen and (max-width: 992px) {
    .c-schedule__event .event_ttl {
        margin-top: 1px;
    }
}
.c-schedule__event .member {
    display: block;
    margin-top: 13px;
}
@media screen and (max-width: 992px) {
    .c-schedule__event .member {
        margin-top: 9px;
    }
}
.c-schedule__event .member a {
    display: inline-block;
    font-weight: 500;
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .c-schedule__event .member a:hover {
        text-decoration: none;
    }
}

/* ---------------------------------------------
*   search-box
--------------------------------------------- */
/*  .c-search-box
--------------------------------------------- */
.c-search-box {
    position: relative;
    width: 100%;
}
@media screen and (min-width: 993px) {
    .c-search-box--pc-small {
        max-width: 343px;
    }
}
.c-search-box__btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 6px;
    display: grid;
    place-content: center;
    width: 36px;
    height: 36px;
}
@media (hover: hover) and (pointer: fine) {
    .c-search-box__btn {
        transition: opacity 300ms;
    }
    .c-search-box__btn:hover {
        opacity: 0.8;
    }
}
.c-search-box__btn::before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    -webkit-mask: url("/assets/img/common/icon_search.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_search.svg") 0 0/100% 100% no-repeat;
    background-color: #A6A9AA;
}
.c-search-box__input {
    width: 100%;
    border: 1px solid #A6A9AA;
    padding: 10px 44px 10px 43px;
    height: 44px;
    font-size: 1rem;
}
@media screen and (max-width: 992px) {
    .c-search-box__input {
        font-size: 1.0666666667rem;
    }
}
.c-search-box__input::-moz-placeholder {
    color: #909090;
    opacity: 1;
}
.c-search-box__input::placeholder {
    color: #909090;
    opacity: 1;
}
.c-search-box__btn-reset {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    display: block;
    width: 42px;
    height: 0;
    padding-top: 42px;
    overflow: hidden;
    background: url("/assets/img/common/icon_x-circle-fill.svg") 50% 50%/12px auto no-repeat;
    opacity: 0;
    visibility: hidden;
    transition: visibility 0.5s;
}
.c-search-box__input:focus + .c-search-box__btn-reset {
    opacity: 1;
    visibility: visible;
}
@media (hover: hover) and (pointer: fine) {
    .c-search-box__btn-reset {
        transition: opacity 300ms, visibility 0.5s;
    }
    .c-search-box__input:focus + .c-search-box__btn-reset:hover {
        opacity: 0.8;
    }
}

/*  c-search-box-2
--------------------------------------------- */
.c-search-box-2 {
    background-color: #fff;
    padding-bottom: 1px;
}
.c-search-box-2 .gsc-control-searchbox-only {
    border: 1px solid #A7A9AA;
}
.c-search-box-2 .gsc-search-box {
    height: 44px;
    margin: 0;
}
.c-search-box-2 .gsst_a:hover .gscb_a,
.c-search-box-2 .gsst_a:focus .gscb_a {
    color: #A7A9AA;
}
.c-search-box-2 .gsib_a {
    padding: 0;
    color: #A7A9AA;
}
.c-search-box-2 .gsst_a .gscb_a {
    color: #A7A9AA;
}
.c-search-box-2 .gsst_a .gscb_a:hover, .c-search-box-2 .gsst_a .gscb_a:focus {
    color: #A7A9AA;
}
@media (hover: hover) and (pointer: fine) {
    .c-search-box-2 .gsib_b {
        transition: opacity 300ms;
    }
    .c-search-box-2 .gsib_b:hover {
        opacity: 0.8;
    }
}
.c-search-box-2 table.gsc-search-box td.gsc-input {
    padding-inline: var(--0_5gap) 0;
}
.c-search-box-2 .gsc-search-button-v2 {
    height: 100%;
    padding-inline: 12px;
    border-radius: 0;
    border: none;
    background: none;
}
@media (hover: hover) and (pointer: fine) {
    .c-search-box-2 .gsc-search-button-v2 {
        transition: opacity 300ms;
    }
    .c-search-box-2 .gsc-search-button-v2:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-search-box-2 .gsc-search-button-v2 {
        padding-inline: var(--1gap);
    }
}
.c-search-box-2 .gsc-search-button-v2:hover, .c-search-box-2 .gsc-search-button-v2:focus {
    border: none;
    background: none;
}
.c-search-box-2 .gsc-search-button-v2 svg {
    fill: #A7A9AA;
}
.c-search-box-2 .gsc-input {
    height: 44px !important;
    line-height: 1 !important;
    margin: 0 !important;
}
.c-search-box-2 .gsc-input-box {
    padding-block: 0;
    border: none;
}

/* ---------------------------------------------
*   c-kv-slider
--------------------------------------------- */
.c-kv-slider__wrapper {
    position: relative;
}
.c-kv-slider__link {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .c-kv-slider__link {
        transition: opacity 300ms;
    }
    .c-kv-slider__link:hover {
        opacity: 0.8;
    }
}
.c-kv-slider .splide__slide {
    transform: translate3d(0, 0, 0);
}
.c-kv-slider .splide__pagination {
    position: absolute;
    bottom: 20px;
    right: 20px;
    gap: 8px;
}
@media screen and (max-width: 992px) {
    .c-kv-slider .splide__pagination {
        right: 16px;
        bottom: 8px;
    }
}
.c-kv-slider .splide__pagination li {
    font-size: 0;
}
.c-kv-slider .splide__pagination__page {
    width: 6px;
    height: 6px;
    background-color: rgba(255, 255, 255, 0.33);
    border-radius: 50%;
}
@media (hover: hover) and (pointer: fine) {
    .c-kv-slider .splide__pagination__page {
        transition: opacity 300ms;
    }
    .c-kv-slider .splide__pagination__page:hover {
        opacity: 0.8;
    }
}
.c-kv-slider .splide__pagination__page.is-active {
    background-color: #fff;
}
.c-kv-slider .splide__pagination__page:focus-visible {
    outline: 3px solid #b4e900;
    outline-offset: 3px;
}
.c-kv-slider__img img {
    display: block;
    width: 100%;
}

/* ---------------------------------------------
*   sns
--------------------------------------------- */
/*  c-sns-list-1 (アスリート詳細)
--------------------------------------------- */
.c-sns-list-1 {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
}
@media screen and (max-width: 992px) {
    .c-sns-list-1 {
        gap: 12px 16px;
    }
}
.c-sns-list-1__item {
    width: 24px;
    height: 24px;
}
.c-sns-list-1__item--youtube {
    width: 27px;
}
.c-sns-list-1__link {
    display: grid;
    place-items: center;
    height: 100%;
}
@media (hover: hover) and (pointer: fine) {
    .c-sns-list-1__link {
        transition: opacity 300ms;
    }
    .c-sns-list-1__link:hover {
        opacity: 0.8;
    }
}
.c-sns-list-1__link img {
    display: block;
    width: 100%;
}
.c-sns-list-1__item--line .c-sns-list-1__link img, .c-sns-list-1__item--facebook .c-sns-list-1__link img, .c-sns-list-1__item--instagram .c-sns-list-1__link img {
    width: 22px;
}
.c-sns-list-1__item--x .c-sns-list-1__link img {
    width: 19px;
}
.c-sns-list-1__item--tiktok .c-sns-list-1__link img {
    width: 18px;
}
.c-sns-list-1__item--youtube .c-sns-list-1__link img {
    width: 27px;
}
.c-sns-list-1__item--website .c-sns-list-1__link img {
    width: 22px;
}

/*  c-sns-list-2 (アスリート詳細)
--------------------------------------------- */
.c-sns-list-2 {
    display: flex;
    align-items: center;
    gap: 16px 24px;
}
@media screen and (max-width: 992px) {
    .c-sns-list-2 {
        margin-top: 34px;
        gap: 10px 24px;
    }
}
.c-sns-list-2__item {
    position: relative;
    width: 24px;
    height: 24px;
}
.c-sns-list-2__item--youtube {
    width: 27px;
}
.c-sns-list-2__item:not(:last-of-type)::after {
    position: absolute;
    top: 50%;
    right: -12.5px;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 1px;
    height: 16px;
    background-color: #EFEFEF;
}
.c-sns-list-2__link {
    display: grid;
    place-items: center;
    height: 100%;
}
@media (hover: hover) and (pointer: fine) {
    .c-sns-list-2__link {
        transition: opacity 300ms;
    }
    .c-sns-list-2__link:hover {
        opacity: 0.8;
    }
}
.c-sns-list-2__link img {
    display: block;
    width: 100%;
}
.c-sns-list-2__item--line .c-sns-list-2__link img, .c-sns-list-2__item--facebook .c-sns-list-2__link img, .c-sns-list-2__item--instagram .c-sns-list-2__link img {
    width: 22px;
}
.c-sns-list-2__item--x .c-sns-list-2__link img {
    width: 19px;
}
.c-sns-list-2__item--tiktok .c-sns-list-2__link img {
    width: 18px;
}
.c-sns-list-2__item--youtube .c-sns-list-2__link img {
    width: 27px;
}
.c-sns-list-2__item--website .c-sns-list-2__link img {
    width: 22px;
}

/* ---------------------------------------------
*   table
--------------------------------------------- */
/* ---------------------------------------------
*   c-table-1 (アスリート詳細、大会個別TOP)
--------------------------------------------- */
.c-table-1 {
    table-layout: fixed;
    width: 100%;
}
.c-table-1__th, .c-table-1__td {
    padding-block: 11px;
    font-size: 0.875rem;
    border-top: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
    line-height: 1.4;
    vertical-align: top;
}
@media screen and (max-width: 992px) {
    .c-table-1__th, .c-table-1__td {
        padding-block: 8px;
        font-size: 0.8666666667rem;
        line-height: 1.5;
    }
}
.c-table-1__th {
    width: 186px;
    color: #757577;
    padding-right: 1em;
}
@media screen and (max-width: 992px) {
    .c-table-1__th {
        width: 148px;
    }
}
@media screen and (min-width: 993px) {
    .c-table-1--type2 .c-table-1__th {
        width: 320px;
        padding-right: 40px;
    }
}

/*  c-table-2 (大会_競技個別_結果)
--------------------------------------------- */
.c-table-2 {
    table-layout: fixed;
    width: 100%;
}
@media screen and (max-width: 992px) {
    .c-table-2 {
        display: block;
        border-top: 1px solid #EFEFEF;
    }
}
.c-table-2 + .c-table-2 {
    margin-top: -1px;
}
@media screen and (max-width: 992px) {
    .c-table-2__tr, .c-table-2__tbody {
        display: block;
        width: 100%;
    }
}
@media screen and (max-width: 992px) {
    .c-table-2__tr {
        padding-block: 12px 13px;
        border-bottom: 1px solid #EFEFEF;
    }
}
.c-table-2__th, .c-table-2__td {
    padding-block: 16px;
    padding-right: 1em;
    font-size: 0.875rem;
    border-top: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-table-2__th, .c-table-2__td {
        display: block;
        padding-block: 0;
        padding-right: 0;
        border: none;
        font-size: 0.8666666667rem;
    }
}
.c-table-2__th {
    width: 26.4%;
    color: #757577;
    padding-right: 1em;
}
@media screen and (max-width: 992px) {
    .c-table-2__th {
        width: 100%;
    }
}
@media screen and (max-width: 992px) {
    .c-table-2__td {
        margin-top: 9px;
    }
}
.c-table-2__td:first-of-type {
    width: 35.1%;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-table-2__td:first-of-type {
        width: 100%;
    }
}
.c-table-2__td:last-of-type {
    padding-right: 0;
}

/*  c-table-3 (大会_競技個別_結果)
--------------------------------------------- */
.c-table-3 {
    table-layout: fixed;
    width: 100%;
}
@media screen and (max-width: 992px) {
    .c-table-3 {
        display: block;
        border-top: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-table-3__tr, .c-table-3__tbody {
        display: block;
        width: 100%;
    }
}
@media screen and (max-width: 992px) {
    .c-table-3__tr {
        padding-block: 12px 13px;
        border-bottom: 1px solid #EFEFEF;
    }
}
.c-table-3__th, .c-table-3__td {
    padding-block: 16px;
    padding-right: 1em;
    font-size: 0.875rem;
    border-top: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-table-3__th, .c-table-3__td {
        display: block;
        padding-block: 0;
        padding-right: 0;
        border: none;
        font-size: 0.8666666667rem;
    }
}
.c-table-3__th {
    width: 85px;
    color: #757577;
    padding-right: 0;
}
@media screen and (max-width: 992px) {
    .c-table-3__th {
        width: 100%;
    }
}
@media screen and (max-width: 992px) {
    .c-table-3__td {
        margin-top: 9px;
    }
}
.c-table-3__td:first-of-type {
    width: 53%;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-table-3__td:first-of-type {
        width: 100%;
    }
}
.c-table-3__td:last-of-type {
    padding-right: 0;
}
.c-table-3__medal {
    display: inline-block;
    width: 18px;
    height: 18px;
    margin-left: 5px;
    border-radius: 50%;
    background-color: #000;
    vertical-align: text-bottom;
}

/*  c-table-4 (大会_競技個別_日程)
--------------------------------------------- */
.c-table-4 {
    table-layout: fixed;
    width: 100%;
}
@media screen and (max-width: 992px) {
    .c-table-4:not(.c-table-4--type-8) .c-table-4 {
        display: block;
        border-top: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-table-4:not(.c-table-4--type-8) .c-table-4__tr, .c-table-4:not(.c-table-4--type-8) .c-table-4__tbody {
        display: block;
        width: 100%;
    }
}
@media screen and (max-width: 992px) {
    .c-table-4:not(.c-table-4--type-8) .c-table-4__tr {
        display: grid;
        grid-template-columns: 67px auto;
        grid-template-rows: 1fr auto;
        padding-block: 12px 13px;
        border-bottom: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-table-4:not(.c-table-4--type-8) .c-table-4__tr:has(.c-table-4__th:nth-of-type(2)) {
        grid-template-columns: repeat(2, 67px) auto;
    }
}
.c-table-4__th, .c-table-4__td {
    padding-block: 16px;
    padding-right: 1em;
    font-size: 0.875rem;
    border-top: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
    vertical-align: top;
}
@media screen and (max-width: 992px) {
    .c-table-4__th, .c-table-4__td {
        font-size: 0.8666666667rem;
    }
    .c-table-4:not(.c-table-4--type-8) .c-table-4__th, .c-table-4:not(.c-table-4--type-8) .c-table-4__td {
        display: block;
        padding-block: 0;
        padding-right: 0;
        border: none;
    }
}
.c-table-4__th {
    width: 80px;
    color: #757577;
    padding-right: 1em;
}
@media screen and (max-width: 992px) {
    .c-table-4:not(.c-table-4--type-8) .c-table-4__th {
        width: 100%;
        grid-area: 1/1/-1/2;
    }
}
.c-table-4__td:first-of-type {
    width: 18%;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-table-4:not(.c-table-4--type-8) .c-table-4__td:first-of-type {
        width: 100%;
    }
}
.c-table-4__td:last-of-type {
    margin-top: 1px;
    padding-right: 0;
}
@media screen and (max-width: 992px) {
    .c-table-4:not(.c-table-4--type-8) .c-table-4__tr:has(.c-table-4__th:nth-of-type(2)) .c-table-4__th:first-child,
    .c-table-4:not(.c-table-4--type-8) .c-table-4__tr:has(.c-table-4__th:nth-of-type(2)) .c-table-4__td:first-child {
        grid-area: 1/1/3/2;
    }
}
@media screen and (max-width: 992px) {
    .c-table-4:not(.c-table-4--type-8) .c-table-4__tr:has(.c-table-4__th:nth-of-type(2)) .c-table-4__th:nth-child(2),
    .c-table-4:not(.c-table-4--type-8) .c-table-4__tr:has(.c-table-4__th:nth-of-type(2)) .c-table-4__td:nth-child(2) {
        grid-area: 1/2/3/3;
    }
}
@media screen and (max-width: 992px) {
    .c-table-4:not(.c-table-4--type-8) .c-table-4__tr:has(.c-table-4__th:nth-of-type(2)) .c-table-4__th:nth-child(3),
    .c-table-4:not(.c-table-4--type-8) .c-table-4__tr:has(.c-table-4__th:nth-of-type(2)) .c-table-4__td:nth-child(3) {
        grid-area: 1/3/2/4;
    }
}
@media screen and (max-width: 992px) {
    .c-table-4:not(.c-table-4--type-8) .c-table-4__tr:has(.c-table-4__th:nth-of-type(2)) .c-table-4__th:nth-child(4),
    .c-table-4:not(.c-table-4--type-8) .c-table-4__tr:has(.c-table-4__th:nth-of-type(2)) .c-table-4__td:nth-child(4) {
        grid-area: 2/3/3/4;
    }
}
.c-table-4 .c-list-3 {
    margin-top: 13px;
    row-gap: var(--0_5gap);
}
@media screen and (max-width: 992px) {
    .c-table-4 .c-list-3 {
        margin-top: 9px;
    }
}
@media screen and (max-width: 992px) {
    .c-table-4--type-8 {
        min-width: 600px;
        padding-right: var(--1gap);
    }
}
@media screen and (max-width: 992px) {
    .c-section__body:has(.c-table-4--type-8) {
        padding-bottom: 1px;
        overflow-x: auto;
        /* for Firefox */
        scrollbar-width: none;
    }
    .c-section__body:has(.c-table-4--type-8)::-webkit-scrollbar {
        display: none;
    }
}

/*  c-table-5
--------------------------------------------- */
@media screen and (max-width: 992px) {
    .c-table-5 {
        padding-bottom: 1px;
        overflow-x: auto;
        /* for Firefox */
        scrollbar-width: none;
    }
    .c-table-5::-webkit-scrollbar {
        display: none;
    }
}
.c-table-5 a {
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-table-5__inner {
        min-width: 718px;
        padding-right: var(--1gap);
    }
}
.c-table-5__table {
    table-layout: fixed;
    width: 100%;
    border-top: 1px solid #EFEFEF;
    border-right: 1px solid #EFEFEF;
}
.c-table-5__table--sticky-1 {
    table-layout: auto;
}
.c-table-5__table--sticky-1 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(1) {
    width: 30%;
}
@media screen and (max-width: 992px) {
    .c-table-5__table--sticky-1 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(1) {
        width: 20%;
    }
}
.c-table-5__table--sticky-1 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(2) {
    width: 30%;
}
.c-table-5__table--sticky-1 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(3) {
    width: 30%;
}
.c-table-5__table--sticky-1 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(4) {
    width: auto;
}
.c-table-5__table--sticky-1 .c-table-5__body .c-table-5__td:nth-of-type(3) a {
    display: inline-block;
}
.c-table-5__table--sticky-1 .c-table-5__tr:has(> :nth-child(3)) .c-table-5__th:nth-of-type(1),
.c-table-5__table--sticky-1 .c-table-5__tr:has(> :nth-child(3)) .c-table-5__td:nth-of-type(1) {
    padding: 14px 16px;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-table-5__table--sticky-1 .c-table-5__tr:has(> :nth-child(3)) .c-table-5__th:nth-of-type(1),
    .c-table-5__table--sticky-1 .c-table-5__tr:has(> :nth-child(3)) .c-table-5__td:nth-of-type(1) {
        position: sticky;
        left: 0;
        padding-inline: 1em;
        border-left: none;
    }
    .c-table-5__table--sticky-1 .c-table-5__tr:has(> :nth-child(3)) .c-table-5__th:nth-of-type(1)::before,
    .c-table-5__table--sticky-1 .c-table-5__tr:has(> :nth-child(3)) .c-table-5__td:nth-of-type(1)::before {
        content: "";
        position: absolute;
        inset: -1px -1px -1px 0;
        border: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-table-5__table--sticky-1 .c-table-5__tr:has(> :nth-child(3)) .c-table-5__th:nth-of-type(1) a,
    .c-table-5__table--sticky-1 .c-table-5__tr:has(> :nth-child(3)) .c-table-5__td:nth-of-type(1) a {
        position: relative;
    }
}
.c-table-5__table--sticky-1 .c-table-5__tr:has(> :nth-child(3)) .c-table-5__td {
    background-color: #fff;
}
.c-table-5__table--sticky-1 .c-table-5__tr:has(> :nth-child(3)) .c-table-5__td:nth-of-type(3) a {
    display: inline-block;
}
.c-table-5__table--sticky-1 .c-table-5__tr:has(> :nth-child(2):last-of-type) .c-table-5__td:nth-of-type(2) a {
    display: inline-block;
}
.c-table-5__table--sticky-1 .c-table-5__tr .c-table-5__td:nth-of-type(1), .c-table-5__table--sticky-1 .c-table-5__tr .c-table-5__td:nth-of-type(2), .c-table-5__table--sticky-1 .c-table-5__tr .c-table-5__td:nth-of-type(3) {
    text-align: left;
}
.c-table-5__table--table-layout-auto {
    table-layout: auto;
}
.c-table-5__body .c-table-5__th:nth-of-type(1) a,
.c-table-5__body .c-table-5__td:nth-of-type(1) a {
    position: relative;
}
.c-table-5__th, .c-table-5__td {
    padding: 12px 0.5em;
    border-left: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
    font-size: 0.875rem;
    text-align: center;
}
.c-table-5__th {
    background-color: #FAFAFA;
    font-weight: 500;
}
.c-table-5__th:nth-of-type(1), .c-table-5__th:nth-of-type(2), .c-table-5__th:nth-of-type(3) {
    width: 12.6%;
}
.c-table-5__th:last-of-type {
    width: 25%;
}
@media screen and (max-width: 992px) {
    .c-table-5--type-1 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(1) {
        position: sticky;
        left: 0;
        border-left: none;
    }
    .c-table-5--type-1 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(1)::before {
        content: "";
        position: absolute;
        inset: -1px -1px -1px 0;
        border: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-table-5--type-1 tfoot .c-table-5__th:nth-of-type(1) {
        position: sticky;
        left: 0;
        border-left: none;
    }
    .c-table-5--type-1 tfoot .c-table-5__th:nth-of-type(1)::before {
        content: "";
        position: absolute;
        inset: -1px -1px -1px 0;
        border: 1px solid #EFEFEF;
    }
}
.c-table-5--type-1 .c-table-5__body .c-table-5__th:nth-of-type(1) {
    -webkit-padding-start: 1em;
            padding-inline-start: 1em;
}
@media screen and (max-width: 992px) {
    .c-table-5--type-1 .c-table-5__body .c-table-5__th:nth-of-type(1) {
        position: sticky;
        left: 0;
        padding-inline: 1em;
        border-left: none;
    }
    .c-table-5--type-1 .c-table-5__body .c-table-5__th:nth-of-type(1)::before {
        content: "";
        position: absolute;
        inset: -1px -1px -1px 0;
        border: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-table-5--type-1 .c-table-5__inner {
        min-width: 500px;
    }
}
.c-table-5--type-1 .c-table-5__th:nth-of-type(2) {
    width: auto;
}
.c-table-5--type-1 .c-table-5__th:last-of-type {
    width: auto;
}
.c-table-5--type-1 .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(1) {
    width: 30%;
}
.c-table-5--type-1 .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(3) {
    width: 14%;
}
.c-table-5--type-1 .c-table-5__tr:nth-of-type(2) .c-table-5__th:nth-of-type(1),
.c-table-5--type-1 .c-table-5__tr:nth-of-type(2) .c-table-5__th:nth-of-type(2),
.c-table-5--type-1 .c-table-5__tr:nth-of-type(2) .c-table-5__th:nth-of-type(3) {
    width: 14%;
}
@media screen and (max-width: 992px) {
    .c-table-5--type-2 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(1) {
        position: sticky;
        left: 0;
        border-left: none;
    }
    .c-table-5--type-2 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(1)::before {
        content: "";
        position: absolute;
        inset: -1px -1px -1px 0;
        border: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-table-5--type-2 tfoot .c-table-5__th:nth-of-type(1) {
        position: sticky;
        left: 0;
        border-left: none;
    }
    .c-table-5--type-2 tfoot .c-table-5__th:nth-of-type(1)::before {
        content: "";
        position: absolute;
        inset: -1px -1px -1px 0;
        border: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-table-5--type-2 .c-table-5__body .c-table-5__th:nth-of-type(1) {
        position: sticky;
        left: 0;
        padding-inline: 1em;
        border-left: none;
    }
    .c-table-5--type-2 .c-table-5__body .c-table-5__th:nth-of-type(1)::before {
        content: "";
        position: absolute;
        inset: -1px -1px -1px 0;
        border: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-table-5--type-2 .c-table-5__inner {
        min-width: 500px;
    }
}
.c-table-5--type-2 .c-table-5__th:nth-of-type(2) {
    width: auto;
}
.c-table-5--type-2 .c-table-5__th:last-of-type {
    width: auto;
}
.c-table-5--type-2 .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(1) {
    width: 25%;
}
@media screen and (max-width: 992px) {
    .c-table-5--type-2 .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(1) {
        width: 30%;
    }
}
.c-table-5--type-2 .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(3) {
    width: 15%;
}
@media screen and (max-width: 992px) {
    .c-table-5--type-2 .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(3) {
        width: 14%;
    }
}
.c-table-5--type-2 .c-table-5__tr:nth-of-type(2) .c-table-5__th:nth-of-type(1),
.c-table-5--type-2 .c-table-5__tr:nth-of-type(2) .c-table-5__th:nth-of-type(2),
.c-table-5--type-2 .c-table-5__tr:nth-of-type(2) .c-table-5__th:nth-of-type(3) {
    width: 15%;
}
@media screen and (max-width: 992px) {
    .c-table-5--type-2 .c-table-5__tr:nth-of-type(2) .c-table-5__th:nth-of-type(1),
    .c-table-5--type-2 .c-table-5__tr:nth-of-type(2) .c-table-5__th:nth-of-type(2),
    .c-table-5--type-2 .c-table-5__tr:nth-of-type(2) .c-table-5__th:nth-of-type(3) {
        width: 14%;
    }
}
.c-table-5--type-3 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(1) {
    width: 30%;
}
.c-table-5--type-3 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(2) {
    width: 50%;
}
.c-table-5--type-3 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(3) {
    width: 20%;
}
.c-table-5--type-4 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(1) {
    width: 20%;
}
.c-table-5--type-4 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(2) {
    width: 50%;
}
.c-table-5--type-4 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(3) {
    width: auto;
}
.c-table-5--type-4 .c-table-5__thead .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(4) {
    width: 20%;
}
@media screen and (max-width: 992px) {
    .c-table-5--type-5 .c-table-5__thead .c-table-5__th:nth-of-type(1) {
        position: sticky;
        left: 0;
        border-left: none;
    }
    .c-table-5--type-5 .c-table-5__thead .c-table-5__th:nth-of-type(1)::before {
        content: "";
        position: absolute;
        inset: -1px -1px -1px 0;
        border: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-table-5--type-5 tfoot .c-table-5__th:nth-of-type(1) {
        position: sticky;
        left: 0;
        border-left: none;
    }
    .c-table-5--type-5 tfoot .c-table-5__th:nth-of-type(1)::before {
        content: "";
        position: absolute;
        inset: -1px -1px -1px 0;
        border: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-table-5--type-5 .c-table-5__body .c-table-5__th:nth-of-type(1) {
        position: sticky;
        left: 0;
        padding-inline: 1em;
        border-left: none;
    }
    .c-table-5--type-5 .c-table-5__body .c-table-5__th:nth-of-type(1)::before {
        content: "";
        position: absolute;
        inset: -1px -1px -1px 0;
        border: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-table-5--type-5 .c-table-5__inner {
        min-width: 500px;
    }
}
.c-table-5--type-5 .c-table-5__th:nth-of-type(2) {
    width: auto;
}
.c-table-5--type-5 .c-table-5__th:last-of-type {
    width: auto;
}
.c-table-5--type-5 .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(1) {
    width: 30%;
    z-index: 1;
}
.c-table-5--type-5 .c-table-5__tr:nth-of-type(1) .c-table-5__th:nth-of-type(3) {
    width: 14%;
}
.c-table-5--type-5 .c-table-5__tr:nth-of-type(2) .c-table-5__th:nth-of-type(1),
.c-table-5--type-5 .c-table-5__tr:nth-of-type(2) .c-table-5__th:nth-of-type(2),
.c-table-5--type-5 .c-table-5__tr:nth-of-type(2) .c-table-5__th:nth-of-type(3) {
    width: 14%;
}
.c-table-5--type-6 .c-table-5__tr:first-child .c-table-5__th:nth-of-type(1) {
    width: 20%;
}
.c-table-5--type-6 .c-table-5__tr:first-child .c-table-5__th:nth-of-type(2), .c-table-5--type-6 .c-table-5__tr:first-child .c-table-5__th:nth-of-type(3) {
    width: 30%;
}
.c-table-5--type-6 .c-table-5__tr:first-child .c-table-5__th:nth-of-type(4) {
    width: 20%;
}
.c-table-5--type-7 a {
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .c-table-5--type-7 a:hover {
        text-decoration: none;
    }
}

/*  c-table-6 (大会別 選手詳細)
--------------------------------------------- */
.c-table-6 {
    table-layout: fixed;
    width: 100%;
    border-top: 1px solid #EFEFEF;
}
.c-table-6__tr {
    border-bottom: 1px solid #EFEFEF;
}
.c-table-6__td {
    color: #757577;
    padding-right: 1em;
    padding-block: 16px;
    font-size: 0.875rem;
    color: #404045;
}
@media screen and (max-width: 992px) {
    .c-table-6__td {
        display: block;
        padding-block: 12px 13px;
        font-size: 0.8666666667rem;
    }
}

/*  c-table-7 (大会別 選手詳細)
--------------------------------------------- */
.c-table-7 {
    table-layout: fixed;
    width: 100%;
}
@media screen and (max-width: 992px) {
    .c-table-7 {
        display: block;
        border-top: 1px solid #EFEFEF;
    }
}
@media screen and (max-width: 992px) {
    .c-table-7__tr, .c-table-7__tbody {
        display: block;
        width: 100%;
    }
}
@media screen and (max-width: 992px) {
    .c-table-7__tr {
        padding-block: 12px 13px;
        border-bottom: 1px solid #EFEFEF;
    }
}
.c-table-7__th, .c-table-7__td {
    padding-block: 16px;
    padding-right: 1em;
    font-size: 0.875rem;
    border-top: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-table-7__th, .c-table-7__td {
        display: block;
        padding-block: 0;
        padding-right: 0;
        border: none;
        font-size: 0.8666666667rem;
    }
}
.c-table-7__th {
    width: 61.5%;
    padding-right: 40px;
}
@media screen and (max-width: 992px) {
    .c-table-7__th {
        width: 100%;
    }
}
@media screen and (max-width: 992px) {
    .c-table-7__td {
        margin-top: 9px;
    }
}
.c-table-7__td:last-of-type {
    padding-right: 0;
}

/*  c-table-8 (結果 スコアボードタイプ)
--------------------------------------------- */
.c-table-8 {
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-table-8 {
        font-size: 0.8666666667rem;
    }
}
.c-table-8 + .c-table-8 {
    margin-top: var(--1gap);
}
.c-table-8 th:first-child {
    position: sticky;
    left: 0;
    z-index: 12;
    border-right: none;
    border-left: none;
}
.c-table-8 th:first-child:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-right: 1px solid #EFEFEF;
    border-left: 1px solid #EFEFEF;
}
.c-table-8 td {
    min-width: 24px;
}
@media screen and (max-width: 992px) {
    .c-table-8 td {
        min-width: 30px;
    }
}
.c-table-8 :where(th, td) {
    text-align: center;
    padding: 7px 0;
    border: 1px solid #EFEFEF;
    border-left: none;
    font-weight: normal;
    border-collapse: collapse;
}
.c-table-8 a {
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .c-table-8 a:hover {
        text-decoration: none;
    }
}
.c-table-8__table-wrap {
    width: 100%;
}
@media screen and (max-width: 992px) {
    .c-table-8__table-wrap {
        overflow-x: scroll;
    }
    .c-table-8__table-wrap::-webkit-scrollbar {
        display: none;
    }
}
.c-table-8__table {
    width: 100%;
}
.c-table-8__bg {
    background-color: #FAFAFA;
}
.c-table-8__name {
    min-width: 60px;
    text-align: left;
    padding: 0 0 0 5px;
}
.c-table-8__info {
    padding-block: 10px;
    line-height: 1.7;
    border-bottom: 1px solid #EFEFEF;
}
.c-table-8__info:empty {
    border-top: none;
    border-bottom: none;
    margin: 0;
    padding: 0;
}

/*  c-table-9 (結果 対戦団体タイプ)
--------------------------------------------- */
.c-table-9 {
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-table-9 {
        font-size: 0.8666666667rem;
    }
}
.c-table-9 + .c-table-9 {
    margin-top: var(--1gap);
}
.c-table-9 td {
    text-align: center;
    padding-block: 15px;
    border: 1px solid #EFEFEF;
    border-left: none;
}
.c-table-9 td:first-child {
    width: 30%;
    padding-block: 10px;
    border-left: none;
}
.c-table-9 td:last-child {
    width: 30%;
    padding-block: 10px;
    border-right: none;
}
.c-table-9 a {
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .c-table-9 a:hover {
        text-decoration: none;
    }
}
.c-table-9__table {
    width: 100%;
}
.c-table-9__name {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-table-9__name:not(:first-child) {
        margin-top: var(--0_5gap);
    }
}
.c-table-9__info {
    padding-block: 10px;
    line-height: 1.7;
    border-bottom: 1px solid #EFEFEF;
}
.c-table-9__info:empty {
    border-top: none;
    border-bottom: none;
    margin: 0;
    padding: 0;
}

/* ---------------------------------------------
*   tag cloud
--------------------------------------------- */
/*  c-tag-cloud-1
--------------------------------------------- */
.c-tag-cloud-1 {
    display: flex;
    flex-wrap: wrap;
    gap: var(--0_5gap);
}
.c-tag-cloud-1__item {
    display: block;
    padding: 8px var(--1gap);
    border: 1px solid #EFEFEF;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.4;
    color: #909090;
}
@media screen and (max-width: 992px) {
    .c-tag-cloud-1__item {
        padding-block: 7px;
        font-size: 0.8666666667rem;
    }
    .iphone .c-tag-cloud-1__item {
        padding-block: 6px 8px;
    }
}
.c-tag-cloud-1__item[href] {
    color: #000;
}
@media (hover: hover) and (pointer: fine) {
    .c-tag-cloud-1__item[href] {
        transition: opacity 300ms;
    }
    .c-tag-cloud-1__item[href]:hover {
        opacity: 0.8;
    }
}
.c-tag-cloud-1__item.is-current {
    border-color: #000;
    color: #fff;
    background-color: #000;
    pointer-events: none;
}

/*  c-tile-1 (企業バナー)
--------------------------------------------- */
.c-tile-1 {
    --col-sp: 3;
    --col-pc: 7;
    --col: var(--col-pc);
    display: grid;
    grid-template-columns: repeat(var(--col), 1fr);
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-tile-1 {
        gap: var(--0_5gap);
        --col: var(--col-sp);
    }
}
.c-tile-1__link {
    display: block;
    position: relative;
}
@media (hover: hover) and (pointer: fine) {
    .c-tile-1__link {
        transition: opacity 300ms;
    }
    .c-tile-1__link:hover {
        opacity: 0.8;
    }
}
.c-tile-1__link:after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    pointer-events: none;
    border: 1px solid rgba(0, 0, 0, 0.06);
}
.c-tile-1__link img {
    width: 100%;
}

/*  c-tile-2 (企業バナー テキストのみ)
--------------------------------------------- */
.c-tile-2 {
    display: flex;
    flex-wrap: wrap;
    gap: var(--1gap);
    overflow: hidden;
}
@media screen and (max-width: 992px) {
    .c-tile-2 {
        gap: var(--0_25gap) var(--0_5gap);
    }
}
.c-tile-2__item {
    margin-left: calc(var(--1gap) * -1);
}
@media screen and (max-width: 992px) {
    .c-tile-2__item {
        margin-left: calc(var(--0_5gap) * -1);
    }
}
.c-tile-2__link {
    display: block;
    padding: 33px var(--1gap);
    font-size: 1rem;
    outline-offset: -1px;
    line-height: 1.7;
}
@media (hover: hover) and (pointer: fine) {
    .c-tile-2__link:hover {
        text-decoration: underline;
    }
}
@media screen and (max-width: 992px) {
    .c-tile-2__link {
        padding: 7px var(--0_5gap);
        font-size: 0.9333333333rem;
    }
}

/*  c-tile-3
--------------------------------------------- */
.c-tile-3 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px 1.25%;
}
@media screen and (max-width: 992px) {
    .c-tile-3 {
        gap: var(--0_5gap);
    }
}
.c-tile-3--type2 {
    gap: var(--1gap) 1.5625%;
}
@media screen and (max-width: 992px) {
    .c-tile-3--type2 {
        gap: var(--0_5gap);
    }
}
.c-tile-3__item {
    width: 12.890625%;
}
@media screen and (max-width: 992px) {
    .c-tile-3__item {
        width: 48.3965014577%;
    }
}
@media screen and (max-width: 992px) {
    .c-tile-3--sp-3col .c-tile-3__item {
        width: 31.778425656%;
    }
}
.c-tile-3__link {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .c-tile-3__link {
        transition: opacity 300ms;
    }
    .c-tile-3__link:hover {
        opacity: 0.8;
    }
}
.c-tile-3__link img {
    width: 100%;
}

/*  c-tile-4
--------------------------------------------- */
.c-tile-4 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-tile-4 {
        gap: 20px var(--2gap);
    }
}
.c-tile-4__item {
    height: 14px;
    overflow: hidden;
}
@media screen and (max-width: 992px) {
    .c-tile-4__item {
        height: 11px;
    }
}
.c-tile-4__item > img {
    display: block;
    height: 100%;
}

/* ---------------------------------------------
*   tooltip
--------------------------------------------- */
/*  c-tool-tip-1 (アカウント編集ページ_会員登録情報の変更)
--------------------------------------------- */
.c-tool-tip-1 {
    position: relative;
    padding: 16px var(--2gap) 17px;
    background-color: #000;
    color: #fff;
    font-size: 0.875rem;
    line-height: 1.4;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}
@media (hover: hover) and (pointer: fine) {
    .c-tool-tip-1 {
        transition: opacity 300ms;
    }
    .c-tool-tip-1:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-tool-tip-1 {
        padding: var(--1gap) var(--2gap) var(--1gap) var(--1gap);
        text-align: left;
    }
}
@media screen and (min-width: 993px) {
    .c-tool-tip-1::before {
        position: absolute;
        top: calc(100% - 0.5px);
        right: 40px;
        content: "";
        display: block;
        width: 12px;
        height: 9px;
        background-color: #000;
        -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
                clip-path: polygon(0 0, 100% 0, 50% 100%);
    }
}
.c-tool-tip-1::after {
    position: absolute;
    top: 10px;
    right: 10px;
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    -webkit-mask: url("/assets/img/common/icon_x.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_x.svg") 0 0/100% 100% no-repeat;
    background-color: #fff;
}
@media screen and (max-width: 992px) {
    .c-tool-tip-1--type2.c-tool-tip-1 {
        position: absolute;
    }
}
@media (hover: hover) and (pointer: fine) {
    .c-tool-tip-1--type2:hover {
        opacity: 1;
    }
}
.c-tool-tip-1--type2::before {
    position: absolute;
    top: calc(100% - 0.5px);
    right: 18px;
    content: "";
    display: block;
    width: 12px;
    height: 9px;
    background-color: #000;
    -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
            clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.c-tool-tip-1--type2::after {
    display: none;
}
.c-tool-tip-1--type2 .c-tool-tip-1__close {
    position: absolute;
    top: 10px;
    right: 10px;
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    -webkit-mask: url("/assets/img/common/icon_x.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_x.svg") 0 0/100% 100% no-repeat;
    background-color: #fff;
}
@media (hover: hover) and (pointer: fine) {
    .c-tool-tip-1--type2 .c-tool-tip-1__close {
        transition: opacity 300ms;
    }
    .c-tool-tip-1--type2 .c-tool-tip-1__close:hover {
        opacity: 0.8;
    }
}

/* ---------------------------------------------
*   title
--------------------------------------------- */
/*  c-ttl-1
--------------------------------------------- */
.c-ttl-1 {
    font-size: 1.25rem;
    font-weight: bold;
}
@media screen and (max-width: 992px) {
    .c-ttl-1 {
        font-size: 1.1333333333rem;
    }
}

/*  c-ttl-2
--------------------------------------------- */
.c-ttl-2 {
    font-size: 1.5rem;
    font-weight: bold;
}
@media screen and (max-width: 992px) {
    .c-ttl-2 {
        font-size: 1.1333333333rem;
    }
}
.c-ttl-2--line {
    width: 100%;
    display: flex;
    align-items: center;
    gap: var(--0_5gap);
}
.c-ttl-2--line:before, .c-ttl-2--line:after {
    content: "";
    background-color: #000;
    height: 1px;
    display: block;
    flex: 1 1 auto;
}

/*  c-ttl-3
--------------------------------------------- */
.c-ttl-3 {
    font-size: 1.75rem;
    font-weight: bold;
    line-height: 1.3;
}
@media screen and (max-width: 992px) {
    .c-ttl-3 {
        font-size: 1.5333333333rem;
    }
}

/*  c-ttl-4
--------------------------------------------- */
.c-ttl-4 {
    font-size: 1.5rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-ttl-4 {
        font-size: 1.1333333333rem;
    }
}

/*  c-ttl-5
--------------------------------------------- */
.c-ttl-5 {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.7;
}
@media screen and (max-width: 992px) {
    .c-ttl-5 {
        font-size: 1.0666666667rem;
    }
}

/*  .c-ttl-6
--------------------------------------------- */
.c-ttl-6 {
    font-size: 1rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-ttl-6 {
        font-size: 1rem;
    }
}

/*  .c-ttl-7
--------------------------------------------- */
.c-ttl-7 {
    font-size: 1.3125rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-ttl-7 {
        font-size: 1.1333333333rem;
    }
}

/*  c-ttl-8
--------------------------------------------- */
.c-ttl-8 {
    font-size: 1.4375rem;
    font-family: "TJSans-Light", "Noto Sans JP", sans-serif;
    width: 100%;
    display: flex;
    align-items: center;
    gap: var(--0_5gap);
}
@media screen and (max-width: 992px) {
    .c-ttl-8 {
        font-size: 1.0666666667rem;
    }
}
.c-ttl-8:before, .c-ttl-8:after {
    content: "";
    background-color: #A6A9AA;
    height: 1px;
    display: block;
    flex: 1 1 auto;
}

/*  c-ttl-sm-1
--------------------------------------------- */
.c-ttl-sm-1 {
    font-family: "TJSans-Bold", "Noto Sans JP", sans-serif !important;
    font-size: 1.25rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-ttl-sm-1 {
        font-size: 1.1333333333rem;
    }
}

/*  c-ttl-sm-2
--------------------------------------------- */
.c-ttl-sm-2 {
    font-size: 0.75rem;
    font-weight: bold;
    line-height: 2;
}
@media screen and (max-width: 992px) {
    .c-ttl-sm-2 {
        font-size: 0.7333333333rem;
        line-height: 2.16;
    }
}

/*  c-ttl-img-1 (大会個別TOP)
--------------------------------------------- */
.c-ttl-img-1 {
    display: grid;
    grid-template-columns: 130px auto;
    -moz-column-gap: var(--1gap);
         column-gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-ttl-img-1 {
        grid-template-columns: 64px auto;
        -moz-column-gap: calc(var(--1gap) * 0.75);
             column-gap: calc(var(--1gap) * 0.75);
    }
}
.c-ttl-img-1__img {
    height: 130px;
}
@media screen and (max-width: 992px) {
    .c-ttl-img-1__img {
        height: 64px;
    }
}
.c-ttl-img-1__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-ttl-img-1__txt {
    padding-top: 19px;
    letter-spacing: -0.01em;
}
@media screen and (max-width: 992px) {
    .c-ttl-img-1__txt {
        padding-top: 3px;
    }
}
.c-ttl-img-1__txt-main {
    display: block;
    font-size: 2.625rem;
    font-weight: bold;
    line-height: 1.3;
    -webkit-margin-start: -1px;
            margin-inline-start: -1px;
}
@media screen and (max-width: 992px) {
    .c-ttl-img-1__txt-main {
        font-size: 1.7333333333rem;
        line-height: 1.1;
    }
}
.c-ttl-img-1__txt-sub {
    display: block;
    margin-top: 5px;
    font-size: 1.25rem;
    font-weight: 500;
    color: #757577;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-ttl-img-1__txt-sub {
        font-size: 0.8666666667rem;
    }
}

/*  c-ttl-img-2 （大会競技個別）
--------------------------------------------- */
.c-ttl-img-2 {
    display: grid;
    grid-template-columns: 130px auto;
    -moz-column-gap: 36px;
         column-gap: 36px;
}
@media screen and (max-width: 992px) {
    .c-ttl-img-2 {
        grid-template-columns: 50px auto;
        -moz-column-gap: 15px;
             column-gap: 15px;
    }
}
.c-ttl-img-2__img {
    height: 130px;
    border: 1px solid rgba(0, 0, 0, 0.06);
}
@media screen and (max-width: 992px) {
    .c-ttl-img-2__img {
        height: 50px;
    }
}
.c-ttl-img-2__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-ttl-img-2__txt {
    padding-top: 17px;
}
@media screen and (max-width: 992px) {
    .c-ttl-img-2__txt {
        padding-top: 0px;
        margin-top: -1px;
    }
}
.c-ttl-img-2__txt-main {
    display: block;
    font-size: 3.0625rem;
    font-weight: bold;
    line-height: 1.3;
}
@media screen and (max-width: 992px) {
    .c-ttl-img-2__txt-main {
        font-size: 1.5333333333rem;
    }
}
.c-ttl-img-2__txt-sub {
    display: block;
    margin-top: 7px;
    font-size: 0.75rem;
    font-weight: 500;
    color: #757577;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-ttl-img-2__txt-sub {
        margin-top: 5px;
        font-size: 0.7333333333rem;
    }
}

/*  c-ttl-img-3 （大会競技個別）
--------------------------------------------- */
.c-ttl-img-3 {
    display: grid;
    grid-template-columns: 54px auto;
    -moz-column-gap: 18px;
         column-gap: 18px;
}
@media screen and (max-width: 992px) {
    .c-ttl-img-3 {
        grid-template-columns: 24px auto;
        -moz-column-gap: 8px;
             column-gap: 8px;
    }
}
.c-ttl-img-3__img {
    height: 54px;
    border: 1px solid rgba(0, 0, 0, 0.06);
}
@media screen and (max-width: 992px) {
    .c-ttl-img-3__img {
        height: 24px;
    }
}
.c-ttl-img-3__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}
.c-ttl-img-3__txt {
    display: block;
    padding-top: 3px;
    font-size: 1.75rem;
    font-weight: bold;
    line-height: 1.67;
}
@media screen and (max-width: 992px) {
    .c-ttl-img-3__txt {
        margin-top: -0.1em;
        padding-top: 0px;
        font-size: 1.2666666667rem;
        line-height: 1.4;
    }
}

/* ---------------------------------------------
*   txt
--------------------------------------------- */
/*  .c-txt
--------------------------------------------- */
.c-txt {
    font-size: 1rem;
}
@media screen and (max-width: 992px) {
    .c-txt--sp-ls-narrow {
        letter-spacing: -0.01;
    }
}

/*  .c-txt-2
--------------------------------------------- */
.c-txt-2 {
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-txt-2 {
        font-size: 0.8666666667rem;
    }
}

/*  .c-txt-3
--------------------------------------------- */
.c-txt-3 {
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-txt-3 {
        font-size: 0.9333333333rem;
    }
}

/*  .c-txt-4
--------------------------------------------- */
.c-txt-4 {
    font-size: 1rem;
}
@media screen and (max-width: 992px) {
    .c-txt-4 {
        font-size: 0.8666666667rem;
    }
}

/*  .c-txt-5
--------------------------------------------- */
.c-txt-5 {
    font-size: 1.3125rem;
}
@media screen and (max-width: 992px) {
    .c-txt-5 {
        font-size: 0.9333333333rem;
    }
}

/*  .c-txt-6
--------------------------------------------- */
.c-txt-6 {
    font-size: 0.9375rem;
}
@media screen and (max-width: 992px) {
    .c-txt-6 {
        font-size: 1rem;
    }
}

/*  c-txt-small-1
--------------------------------------------- */
.c-txt-small-1 {
    font-size: 0.75rem;
}
@media screen and (max-width: 992px) {
    .c-txt-small-1 {
        font-size: 0.7333333333rem;
    }
}

/*  c-txt-small-2
--------------------------------------------- */
.c-txt-small-2 {
    font-size: 0.625rem;
}
@media screen and (max-width: 992px) {
    .c-txt-small-2 {
        font-size: 0.5333333333rem;
    }
}

/*  c-txt-img-credit
--------------------------------------------- */
.c-txt-img-credit {
    position: absolute;
    bottom: 9px;
    right: 19px;
    color: #fff;
    font-size: 0.625rem;
}
@media screen and (max-width: 992px) {
    .c-txt-img-credit {
        bottom: 7px;
        right: 7px;
        font-size: 0.5333333333rem;
        line-height: 1.375;
    }
}
.c-txt-img-credit--pos-top {
    top: 9px;
    bottom: auto;
}
@media screen and (max-width: 992px) {
    .c-txt-img-credit--pos-top {
        top: 7px;
        bottom: auto;
    }
}
@media screen and (max-width: 992px) {
    .c-txt-img-credit--sp-pos-top {
        top: 7px;
        bottom: auto;
    }
}
.c-txt-img-credit--small {
    bottom: 9px;
    right: 8px;
    font-size: 0.5rem;
    text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.34);
}
@media screen and (max-width: 992px) {
    .c-txt-img-credit--small {
        font-size: 0.5333333333rem;
    }
}

/* ---------------------------------------------
*   wysiwyg
--------------------------------------------- */
/*  c-wysiwyg-1 (競技詳細ページ)
--------------------------------------------- */
.c-wysiwyg-1 > *:first-child {
    margin-top: 0;
}
.c-wysiwyg-1 > *:last-child {
    margin-bottom: 0;
}
.c-wysiwyg-1 h3 {
    margin-block: 27px;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-1 h3 {
        margin-block: 8px;
        font-size: 1.1333333333rem;
    }
}
.c-wysiwyg-1 h3 + p {
    margin-top: 9px;
}
.c-wysiwyg-1 p {
    margin-block: 30px;
    font-size: 1rem;
    line-height: 1.7;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-1 p {
        margin-block: 13px;
        font-size: 1rem;
    }
}
.c-wysiwyg-1 b,
.c-wysiwyg-1 strong {
    font-weight: bold;
}
.c-wysiwyg-1 figcaption,
.c-wysiwyg-1 .caption {
    display: block;
    font-size: 0.875rem;
    width: -moz-fit-content;
    width: fit-content;
    margin-block: 11px 0;
    margin-left: auto;
    text-align: left;
    line-height: initial;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-1 figcaption,
    .c-wysiwyg-1 .caption {
        margin-block: 8px 0;
        font-size: 0.8666666667rem;
    }
}

/*  c-wysiwyg-2 (NEW詳細)
--------------------------------------------- */
.c-wysiwyg-2 {
    font-size: 1rem;
    line-height: 1.7;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-2 {
        font-size: 1rem;
    }
}
.c-wysiwyg-2 > *:first-child {
    margin-top: 0;
}
.c-wysiwyg-2 > *:last-child {
    margin-bottom: 0;
}
.c-wysiwyg-2 h2 {
    margin-top: 40px;
    font-size: 1.3125rem;
    font-weight: bold;
    line-height: 1.6;
}
.c-wysiwyg-2 h2 + p {
    margin-top: 11px;
}
.c-wysiwyg-2 h3 {
    margin-top: 32px;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.6;
}
.c-wysiwyg-2 h3 + p {
    margin-top: 5px;
}
.c-wysiwyg-2 p {
    margin-block: var(--0_5gap);
    line-height: 1.7;
    word-break: break-all;
}
.c-wysiwyg-2 p + figure,
.c-wysiwyg-2 p + .photo {
    margin-top: 24px;
}
.c-wysiwyg-2 p a, .c-wysiwyg-2 li a {
    --color: #000;
    color: var(--color);
    line-height: 1.39;
    font-size: calc(14 / 16 * 1rem);
    text-decoration: underline;
    font-size: inherit;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-2 p a, .c-wysiwyg-2 li a {
        font-size: calc(13 / 15 * 1rem);
    }
}
.c-wysiwyg-2 p a::after, .c-wysiwyg-2 li a::after {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 0.4285714286em;
    height: 0.8571428571em;
    margin-inline: 0.5em;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
}
.c-wysiwyg-2 p a[target=_blank]::after, .c-wysiwyg-2 p a[target=joc_window]::after, .c-wysiwyg-2 li a[target=_blank]::after, .c-wysiwyg-2 li a[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_target-blank.svg");
            mask-image: url("/assets/img/common/icon_target-blank.svg");
}
.c-wysiwyg-2 p a[href*=".pdf"]::after, .c-wysiwyg-2 li a[href*=".pdf"]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_pdf.svg");
            mask-image: url("/assets/img/common/icon_pdf.svg");
}
.c-wysiwyg-2 p a--arrow-right-square::after, .c-wysiwyg-2 li a--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
            mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
}
@media (hover: hover) and (pointer: fine) {
    .c-wysiwyg-2 p a:hover, .c-wysiwyg-2 li a:hover {
        text-decoration: none;
    }
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-2 p a, .c-wysiwyg-2 li a {
        font-size: inherit;
    }
}
.c-wysiwyg-2 p a:not([target])::after, .c-wysiwyg-2 li a:not([target])::after {
    display: none;
}
.c-wysiwyg-2 br + p {
    margin-top: 0;
}
.c-wysiwyg-2 ul li {
    padding-left: 1em;
    text-indent: -1em;
}
.c-wysiwyg-2 ul li::before {
    content: "・";
}
.c-wysiwyg-2 ul.no-bullet li {
    padding-left: 0;
    text-indent: 0;
}
.c-wysiwyg-2 ul.no-bullet li::before {
    content: unset;
}
.c-wysiwyg-2 figure,
.c-wysiwyg-2 .photo {
    margin-block: 30px;
    text-align: center;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-2 figure,
    .c-wysiwyg-2 .photo {
        margin-block: 20px;
    }
}
.c-wysiwyg-2 figcaption,
.c-wysiwyg-2 .cap {
    display: block;
    font-size: 0.875rem;
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 11px;
    margin-inline: auto;
    text-align: left;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-2 figcaption,
    .c-wysiwyg-2 .cap {
        margin-top: 8px;
        font-size: 0.8666666667rem;
    }
}
.c-wysiwyg-2 b,
.c-wysiwyg-2 strong {
    font-weight: bold;
}
.c-wysiwyg-2 .video-container iframe {
    max-width: 100%;
    display: block;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-2 .video-container iframe {
        height: auto;
        aspect-ratio: 16/9;
    }
}

/*  c-wysiwyg-3 (コラム／インタビュー詳細)
--------------------------------------------- */
.c-wysiwyg-3 {
    font-size: 1rem;
    line-height: 1.7;
    margin-block: 28px 40px;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-3 {
        font-size: 1rem;
        margin-block: 24px 20px;
    }
}
.c-wysiwyg-3 > *:first-child {
    margin-top: 0;
}
.c-wysiwyg-3 > *:last-child {
    margin-bottom: 0;
}
.c-wysiwyg-3 p {
    line-height: 1.7;
    word-break: break-all;
}
.c-wysiwyg-3 p + figure,
.c-wysiwyg-3 p + .photo {
    margin-top: 24px;
}
.c-wysiwyg-3__txt-1 {
    font-weight: bold;
    margin-block: 32px 6.8px;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-3__txt-1 {
        margin-block: 24px 4.5px;
    }
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-3__txt-2 {
        letter-spacing: -0.01;
    }
}
.c-wysiwyg-3 h2 {
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.4;
    margin-block: 40px 30px;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-3 h2 {
        font-size: 1.1333333333rem;
        margin-block: 24px 21.85px;
    }
}
.c-wysiwyg-3 h3 {
    margin-top: 32px;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.6;
}
.c-wysiwyg-3 h3 + p {
    margin-top: 5px;
}
.c-wysiwyg-3 p a, .c-wysiwyg-3 li a {
    --color: #000;
    color: var(--color);
    line-height: 1.39;
    font-size: calc(14 / 16 * 1rem);
    text-decoration: underline;
    font-size: inherit;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-3 p a, .c-wysiwyg-3 li a {
        font-size: calc(13 / 15 * 1rem);
    }
}
.c-wysiwyg-3 p a::after, .c-wysiwyg-3 li a::after {
    position: relative;
    top: 0.1em;
    content: "";
    display: inline-block;
    width: 0.4285714286em;
    height: 0.8571428571em;
    margin-inline: 0.5em;
    -webkit-mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron_right.svg") 0 0/100% 100% no-repeat;
    background-color: var(--color);
}
.c-wysiwyg-3 p a[target=_blank]::after, .c-wysiwyg-3 p a[target=joc_window]::after, .c-wysiwyg-3 li a[target=_blank]::after, .c-wysiwyg-3 li a[target=joc_window]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_target-blank.svg");
            mask-image: url("/assets/img/common/icon_target-blank.svg");
}
.c-wysiwyg-3 p a[href*=".pdf"]::after, .c-wysiwyg-3 li a[href*=".pdf"]::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_pdf.svg");
            mask-image: url("/assets/img/common/icon_pdf.svg");
}
.c-wysiwyg-3 p a--arrow-right-square::after, .c-wysiwyg-3 li a--arrow-right-square::after {
    width: 0.9285714286em;
    height: 0.9285714286em;
    -webkit-mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
            mask-image: url("/assets/img/common/icon_arrow-right-square.svg");
}
@media (hover: hover) and (pointer: fine) {
    .c-wysiwyg-3 p a:hover, .c-wysiwyg-3 li a:hover {
        text-decoration: none;
    }
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-3 p a, .c-wysiwyg-3 li a {
        font-size: inherit;
    }
}
.c-wysiwyg-3 p a:not([target])::after, .c-wysiwyg-3 li a:not([target])::after {
    display: none;
}
.c-wysiwyg-3 br + p {
    margin-top: 0;
}
.c-wysiwyg-3 ul li {
    padding-left: 1em;
    text-indent: -1em;
}
.c-wysiwyg-3 ul li::before {
    content: "・";
}
.c-wysiwyg-3 figure {
    margin-block: 30px;
    text-align: center;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-3 figure {
        margin-block: 20px;
    }
}
.c-wysiwyg-3 figure img {
    width: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    background-color: #EFEFEF;
    max-height: 469px;
}
.c-wysiwyg-3 figcaption {
    display: block;
    font-size: 0.875rem;
    margin-top: 11px;
    text-align: left;
}
@media screen and (max-width: 992px) {
    .c-wysiwyg-3 figcaption {
        margin-top: 8px;
        font-size: 0.8666666667rem;
    }
}
.c-wysiwyg-3 b,
.c-wysiwyg-3 strong {
    font-weight: bold;
}

/* ---------------------------------------------
*   section
--------------------------------------------- */
/*  c-section (TOPページ)
--------------------------------------------- */
.c-section__ttl {
    font-size: 1.5rem;
    font-weight: bold;
}
@media screen and (max-width: 992px) {
    .c-section__ttl {
        font-size: 1.1333333333rem;
    }
}
.c-section__head {
    padding-block: 30px 15px;
}
@media screen and (max-width: 992px) {
    .c-section__head {
        padding-block: 26px 13px;
    }
}
.c-section__head-flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-block: 30px 15px;
}
@media screen and (max-width: 992px) {
    .c-section__head-flex {
        padding-block: 26px 13px;
    }
}

/*  c-section-2 (競技・アスリート一覧)
--------------------------------------------- */
.c-section-2__head {
    position: sticky;
    top: calc(var(--header-height) * 1px);
    z-index: 1;
    padding: 28px 0 var(--2gap);
    background-color: #fff;
}
@media screen and (max-width: 992px) {
    .c-section-2__head {
        top: calc(var(--header-height) * 1px - 1px);
        padding: var(--1gap);
        border-top: 1px solid #EFEFEF;
    }
}
.c-section-2__head-container {
    display: flex;
    -moz-column-gap: 40px;
         column-gap: 40px;
    max-width: 726px;
}
@media screen and (max-width: 992px) {
    .c-section-2__head-container {
        display: block;
        max-width: initial;
    }
}
@media screen and (min-width: 993px) {
    .c-section-2 .c-select {
        width: 343px;
    }
}
.c-section-2 .c-select::after {
    background-color: #909090;
}
.c-section-2 .c-select__select {
    padding-left: 16px;
}

/*  c-section-3 (大会TOP)
--------------------------------------------- */
.c-section-3__ttl {
    font-size: 1.5rem;
    font-weight: bold;
}
@media screen and (max-width: 992px) {
    .c-section-3__ttl {
        font-size: 1.1333333333rem;
    }
}
.c-section-3__head {
    padding-block: 34px 16px;
}
@media screen and (max-width: 992px) {
    .c-section-3__head {
        padding-block: 26px 13px;
    }
}

/* ---------------------------------------------
*   form-parts
--------------------------------------------- */
/*  c-input-txt
--------------------------------------------- */
.c-input-txt {
    width: 100%;
    border: 1px solid #A6A9AA;
    padding: 10px 1em 10px var(--1gap);
    height: 44px;
    font-size: 1rem;
}
@media screen and (max-width: 992px) {
    .c-input-txt {
        font-size: 1.0666666667rem;
    }
}
.c-txt-error + .c-input-txt {
    margin-top: 7px;
}
@media screen and (max-width: 992px) {
    .c-txt-error + .c-input-txt {
        margin-top: 6px;
    }
}

.c-input-txt::-moz-placeholder {
    color: #909090;
    opacity: 1;
}

.c-input-txt::placeholder {
    color: #909090;
    opacity: 1;
}

/*  c-input-password
--------------------------------------------- */
.c-input-password {
    position: relative;
}
.c-input-password__input {
    padding-right: 2em;
}
.c-input-password__icon {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    display: block;
    width: 26px;
    height: 22px;
    background: url("/assets/img/common/icon_eye-slash-fill.svg") 50% 50%/16px auto no-repeat;
}
@media (hover: hover) and (pointer: fine) {
    .c-input-password__icon {
        transition: opacity 300ms;
    }
    .c-input-password__icon:hover {
        opacity: 0.8;
    }
}
@media screen and (max-width: 992px) {
    .c-input-password__icon {
        right: 4px;
        width: 36px;
        height: 32px;
    }
}
.c-input-password__icon.is-visible {
    background-image: url("/assets/img/common/icon_eye-fill.svg");
}
.c-txt-error + .c-input-password {
    margin-top: 7px;
}
@media screen and (max-width: 992px) {
    .c-txt-error + .c-input-password {
        margin-top: 6px;
    }
}

/*  c-txt-error
--------------------------------------------- */
.c-txt-error {
    font-size: 0.875rem;
    font-weight: 500;
    color: #F0252D;
}

/*  c-select-flex
--------------------------------------------- */
.c-select-flex {
    display: flex;
    align-items: center;
    -moz-column-gap: var(--0_5gap);
         column-gap: var(--0_5gap);
    width: 100%;
}
.c-select-flex__txt {
    font-size: 1rem;
}
@media screen and (max-width: 992px) {
    .c-select-flex__txt {
        font-size: 0.8666666667rem;
    }
}

/*  c-select
--------------------------------------------- */
.c-select {
    position: relative;
    width: 100%;
    flex-shrink: 0;
}
.c-select--small {
    max-width: 113px;
}
.c-select::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    z-index: -1;
    display: block;
    width: 16px;
    height: 9px;
    margin-top: 0.05em;
    -webkit-mask: url("/assets/img/common/icon_chevron-down.svg") 0 0/100% 100% no-repeat;
            mask: url("/assets/img/common/icon_chevron-down.svg") 0 0/100% 100% no-repeat;
    background-color: var(--arrow-color, #000);
}
.c-select--arrow-gray::after {
    --arrow-color: #909090;
}
.c-select--nav1::after {
    --arrow-color: #909090;
    z-index: 0;
    pointer-events: none;
}
.c-select__select {
    position: relative;
    z-index: 1;
    width: 100%;
    border: 1px solid #A6A9AA;
    padding: 9px 2.5em 11px var(--1gap);
    height: 44px;
    font-size: 1rem;
    color: inherit;
}
@media screen and (max-width: 992px) {
    .c-select__select {
        background-position: right 16px center;
        font-size: 1.0666666667rem;
    }
}
.c-txt-error + .c-select {
    margin-top: 7px;
}
@media screen and (max-width: 992px) {
    .c-txt-error + .c-select {
        margin-top: 6px;
    }
}

.c-select__hidden-link {
    display: none;
}

/*  c-checkbox
--------------------------------------------- */
.c-checkbox {
    position: relative;
    display: inline-block;
    cursor: pointer;
}
.c-checkbox__input {
    position: absolute;
    pointer-events: none;
    opacity: 0;
}
.c-checkbox__txt {
    position: relative;
    display: inline-block;
    padding-left: 38px;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
    font-size: 0.75rem;
}
@media screen and (max-width: 992px) {
    .c-checkbox__txt {
        font-size: 0.7333333333rem;
    }
}
.c-checkbox__txt::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    display: inline-block;
    width: 28px;
    height: 28px;
    border: 1px solid #A6A9AA;
}
.l-mypage-nav__main-nav-container .c-checkbox__txt::before {
    transform: translateY(calc(-50% + 3px));
}
@media screen and (max-width: 992px) {
    .l-mypage-nav__main-nav-container .c-checkbox__txt::before {
        transform: translateY(calc(-50% + 1px));
    }
}
.c-checkbox__input:checked + .c-checkbox__txt::before {
    background: url("/assets/img/common/icon_check.svg") 50% 50%/16px auto no-repeat;
}
.c-checkbox__input:focus-visible + .c-checkbox__txt::before {
    outline: 2px solid;
    outline-offset: -1px;
}
.c-checkbox__txt--type2 {
    letter-spacing: -0.025em;
    color: #757577;
    font-weight: 500;
    font-size: 0.875rem;
    padding-top: 1.5px;
}
@media screen and (max-width: 992px) {
    .c-checkbox__txt--type2 {
        font-size: 0.8rem;
        padding-left: 36px;
        padding-top: 0;
    }
}

/*  c-checkbox-2
--------------------------------------------- */
.c-checkbox-2-list {
    display: flex;
    flex-wrap: wrap;
    gap: 14px var(--2gap);
}
@media screen and (max-width: 992px) {
    .c-checkbox-2-list {
        row-gap: 8px;
    }
}
@media screen and (max-width: 992px) and (max-width: 992px) {
    .c-checkbox-2-list--type2 > * {
        min-width: 78px;
    }
}

.c-checkbox-2 {
    position: relative;
    display: inline-block;
    cursor: pointer;
}
.c-checkbox-2__input {
    position: absolute;
    pointer-events: none;
    opacity: 0;
}
.c-checkbox-2__txt {
    position: relative;
    display: inline-block;
    padding-left: 2.1428571429em;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
    font-size: 0.875rem;
    font-weight: 500;
}
@media screen and (max-width: 992px) {
    .c-checkbox-2__txt {
        padding-left: 2em;
        font-size: 0.8666666667rem;
    }
}
.c-checkbox-2__txt::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    display: inline-block;
    width: 1.4285714286em;
    height: 1.4285714286em;
    border: 1px solid rgba(0, 0, 0, 0.7);
}
@media screen and (max-width: 992px) {
    .c-checkbox-2__txt::before {
        margin-top: 0.05em;
    }
}
.c-checkbox-2__input:checked + .c-checkbox-2__txt::before {
    background: url("/assets/img/common/icon_check.svg") 50% 50%/0.9285714286em auto no-repeat;
}
@media screen and (max-width: 992px) {
    .c-checkbox-2__input:checked + .c-checkbox-2__txt::before {
        background-size: 0.9230769231em auto;
    }
}
.c-checkbox-2__input:focus-visible + .c-checkbox-2__txt::before {
    outline: 2px solid;
    outline-offset: -1px;
}

/*  c-radio
--------------------------------------------- */
.c-radio-list {
    display: flex;
    flex-wrap: wrap;
    gap: 14px var(--2gap);
    font-size: 0;
}
@media screen and (max-width: 992px) {
    .c-radio-list {
        row-gap: 8px;
    }
}

.c-radio {
    position: relative;
    display: inline-block;
    cursor: pointer;
    line-height: 1;
}
.c-radio__input {
    position: absolute;
    pointer-events: none;
    opacity: 0;
}
.c-radio__txt {
    position: relative;
    display: inline-block;
    padding-left: 2.1428571429em;
    font-size: 0.875rem;
    font-weight: 500;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
}
@media screen and (max-width: 992px) {
    .c-radio__txt {
        padding-left: 2em;
        font-size: 0.8666666667rem;
    }
}
.c-radio__txt::before {
    position: absolute;
    display: inline-block;
}
.c-radio__txt::before {
    content: "";
    top: -0.15em;
    left: 0;
    width: 1.4285714286em;
    height: 1.4285714286em;
    background: url("/assets/img/common/icon_radio_off.svg") 0 0/100% 100% no-repeat;
}
@media screen and (max-width: 992px) {
    .c-radio__txt::before {
        width: 1.3846153846em;
        height: 1.3846153846em;
    }
}
.c-radio__input:checked + .c-radio__txt::before {
    background-image: url("/assets/img/common/icon_radio_on.svg");
}
.c-radio__input:focus-visible + .c-radio__txt::before {
    outline: 2px solid;
    outline-offset: -1px;
}

/* ---------------------------------------------
*   form
--------------------------------------------- */
/*  c-form-1 (新規会員登録＆ログイン&エラー画面)
--------------------------------------------- */
.c-form-1__container {
    max-width: calc((var(--max-width, 720) + 40) * 1px);
    margin-inline: auto;
    padding-inline: 20px;
}
@media screen and (max-width: 992px) {
    .c-form-1__container {
        max-width: initial;
        padding-inline: 16px;
    }
}
@media screen and (min-width: 993px) {
    .c-form-1__container--pc-wide {
        max-width: initial;
    }
}
.c-form-1__ttl {
    padding-block: 35px;
    text-align: center;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-form-1__ttl {
        padding-block: 26px 13px;
        text-align: left;
    }
}
.c-form-1__lead {
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
    line-height: 1.7;
}
@media screen and (max-width: 992px) {
    .c-form-1__lead {
        width: auto;
    }
}
.c-form-1__btn {
    margin-top: 38px;
}
@media screen and (max-width: 992px) {
    .c-form-1__btn {
        margin-top: 30px;
    }
}
.c-form-1__fields {
    margin-top: 38px;
}
@media screen and (max-width: 992px) {
    .c-form-1__fields {
        margin-top: 30px;
    }
}
.c-form-1__field {
    display: grid;
    grid-template-columns: 137px auto;
    -moz-column-gap: 20px;
         column-gap: 20px;
}
@media screen and (max-width: 992px) {
    .c-form-1__field {
        display: block;
    }
}
.c-form-1__field:not(:first-of-type) {
    margin-top: var(--1gap);
}
.c-form-1__field-head {
    padding-top: 0.8em;
    font-weight: bold;
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-form-1__field-head {
        padding-top: 0;
        font-size: 0.8666666667rem;
    }
}
@media screen and (max-width: 992px) {
    .c-form-1__field-head--sp-col {
        display: flex;
        flex-wrap: wrap;
        -moz-column-gap: 7px;
             column-gap: 7px;
    }
}
.c-form-1__field-head-txt-sm {
    margin-top: 2px;
    font-size: 0.75rem;
    font-weight: normal;
    color: #757577;
}
@media screen and (max-width: 992px) {
    .c-form-1__field-body {
        margin-top: 5px;
    }
}
.c-form-1__txt-error {
    margin-top: 6px;
}
@media screen and (max-width: 992px) {
    .c-form-1__txt-error {
        margin-top: 4px;
    }
}
.c-form-1__txt {
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-form-1__txt {
        font-size: 0.8666666667rem;
        line-height: 1.7;
    }
}
.c-form-1__btn-list-item:not(:first-child) {
    margin-top: var(--1gap);
}
.c-form-1__cols {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 992px) {
    .c-form-1__cols {
        display: block;
    }
}
@media screen and (min-width: 993px) {
    .c-form-1__col:nth-of-type(1) {
        padding-right: var(--2gap);
    }
    .c-form-1__col:nth-of-type(2) {
        position: relative;
        padding-left: var(--2gap);
    }
    .c-form-1__col:nth-of-type(2):before {
        position: absolute;
        top: var(--2gap);
        left: 0;
        content: "";
        display: block;
        width: 1px;
        height: calc(100% - var(--2gap));
        background-color: #EFEFEF;
    }
}

/*  c-form-2 (大会配下 記録検索・プロフィール検索)
--------------------------------------------- */
.c-form-2__ttl {
    padding-block: 35px;
    text-align: center;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-form-2__ttl {
        padding-block: 26px 13px;
        text-align: left;
    }
}
.c-form-2__lead {
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
    line-height: 1.7;
}
@media screen and (max-width: 992px) {
    .c-form-2__lead {
        width: auto;
    }
}
.c-form-2__fields {
    margin-top: 38px;
}
@media screen and (max-width: 992px) {
    .c-form-2__fields {
        margin-top: 30px;
    }
}
.c-form-2__field {
    display: grid;
    grid-template-columns: 137px auto;
    -moz-column-gap: 20px;
         column-gap: 20px;
    border-top: 1px solid #EFEFEF;
    min-height: 86px;
    padding-block: 14px;
}
@media screen and (max-width: 992px) {
    .c-form-2__field {
        display: block;
        min-height: initial;
        padding: 12px var(--1gap) 16px;
    }
}
.c-form-2__field:last-of-type {
    border-bottom: 1px solid #EFEFEF;
}
.c-form-2__field-head {
    display: flex;
    align-items: center;
    font-weight: bold;
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-form-2__field-head {
        font-size: 0.8666666667rem;
    }
}
.c-form-2__field-body {
    display: flex;
    align-items: center;
}
@media screen and (max-width: 992px) {
    .c-form-2__field-body {
        display: block;
        margin-top: 6px;
    }
}
@media screen and (max-width: 992px) {
    .c-form-2__field-body--sp-mgt {
        margin-top: 8px;
    }
}
.c-form-2__field-body--col {
    -moz-column-gap: 1em;
         column-gap: 1em;
    justify-content: space-between;
}
.c-form-2__txt {
    font-size: 0.875rem;
}
@media screen and (max-width: 992px) {
    .c-form-2__txt {
        font-size: 0.8666666667rem;
        line-height: 1.7;
    }
}
.c-form-2__txt-small {
    flex-shrink: 0;
}
.c-form-2__select-year {
    max-width: 105px;
}
@media screen and (max-width: 992px) {
    .c-form-2__select-year {
        max-width: 100px;
    }
}
@media screen and (max-width: 374px) {
    .c-form-2__select-year {
        max-width: 80px;
    }
}
.c-form-2__select-month, .c-form-2__select-day {
    max-width: 85px;
}
@media screen and (max-width: 992px) {
    .c-form-2__select-month, .c-form-2__select-day {
        max-width: 76px;
    }
}
@media screen and (max-width: 374px) {
    .c-form-2__select-month, .c-form-2__select-day {
        max-width: 60px;
    }
}
@media screen and (max-width: 374px) {
    .c-form-2__select-year .c-select__select, .c-form-2__select-month .c-select__select, .c-form-2__select-day .c-select__select {
        padding-inline: var(--0_5gap) 20px;
    }
}
@media screen and (max-width: 992px) {
    .c-form-2__select-year::after, .c-form-2__select-month::after, .c-form-2__select-day::after {
        right: 15px;
    }
}
@media screen and (max-width: 374px) {
    .c-form-2__select-year::after, .c-form-2__select-month::after, .c-form-2__select-day::after {
        right: 10px;
        width: 12px;
        height: 7px;
    }
}
@media screen and (min-width: 993px) {
    .c-form-2 .c-checkbox-2-list {
        max-width: 450px;
    }
}
@media screen and (min-width: 993px) {
    .c-form-2 .c-btn-2 {
        max-width: 400px;
    }
}

/*  c-form-3 (アカウント編集)
--------------------------------------------- */
.c-form-3 {
    padding-bottom: var(--3gap);
}
.c-form-3__ttl {
    padding-block: 35px;
    text-align: center;
    line-height: 1.4;
}
@media screen and (max-width: 992px) {
    .c-form-3__ttl {
        padding-block: 26px 13px;
        text-align: left;
    }
}
.c-form-3__ttl-small {
    font-size: 0.875rem;
    font-weight: bold;
    line-height: 1.7;
    text-align: center;
}
@media screen and (max-width: 992px) {
    .c-form-3__ttl-small {
        font-size: 0.8666666667rem;
        text-align: left;
    }
}
.c-form-3__txt {
    font-size: 0.875rem;
    line-height: 1.7;
}
@media screen and (max-width: 992px) {
    .c-form-3__txt {
        font-size: 0.8666666667rem;
    }
}
.c-form-3__field {
    display: grid;
    grid-template-columns: 157px auto;
    border-bottom: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-form-3__field {
        grid-template-columns: 124px auto;
        padding-block: 16px;
    }
}
.c-form-3__field:first-of-type {
    border-top: 1px solid #EFEFEF;
}
@media screen and (max-width: 992px) {
    .c-form-3__field--sp-block {
        display: block;
    }
}
.c-form-3__field-head {
    padding-block: 30px var(--1gap);
    padding-right: 14px;
    font-size: 0.875rem;
    font-weight: bold;
}
@media screen and (max-width: 992px) {
    .c-form-3__field-head {
        margin-top: -5px;
        padding-block: 0;
        font-size: 0.8666666667rem;
    }
}
.c-form-3__field--type2 .c-form-3__field-head {
    margin-top: 0;
    padding-top: 15px;
}
.c-form-3__field-body {
    padding-block: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-form-3__field-body {
        padding-block: 0;
    }
}
.c-form-3__field-body--col {
    display: flex;
    align-items: center;
    -moz-column-gap: var(--1gap);
         column-gap: var(--1gap);
}
@media screen and (max-width: 992px) {
    .c-form-3__field--sp-block .c-form-3__field-body {
        margin-top: 5px;
    }
}
.c-form-3__field--type2 .c-form-3__field-body {
    padding-top: 16px;
}
@media screen and (max-width: 992px) {
    .c-form-3__field--type2 .c-form-3__field-body {
        margin-top: 8px;
        padding-top: 0;
    }
}
.c-form-3__field-txt {
    font-size: 0.875rem;
    line-height: 1.7;
    word-break: break-all;
}
@media screen and (max-width: 992px) {
    .c-form-3__field-txt {
        font-size: 0.8666666667rem;
    }
}
.c-form-3__field-btn-wrap {
    position: relative;
}
.c-form-3__btn-small {
    margin-inline: auto 0;
}
.c-form-3__radio-list {
    margin-top: 13px;
}
@media screen and (min-width: 993px) {
    .c-form-3__radio-list {
        width: -moz-fit-content;
        width: fit-content;
        margin-inline: auto;
    }
}
@media screen and (max-width: 992px) {
    .c-form-3__radio-list {
        margin-top: 25px;
    }
}
.c-form-3__tooltip {
    position: absolute;
    right: 0;
    bottom: calc(100% + 14px);
    z-index: 10;
    display: none;
}
@media screen and (max-width: 992px) {
    .c-form-3__tooltip {
        position: fixed;
        bottom: var(--0_5gap);
        left: var(--0_5gap);
        right: var(--0_5gap);
        width: calc(100% - var(--1gap));
    }
}
.c-form-3__tooltip.is-show {
    display: block;
}

/* ---------------------------------------------
*   background-color
--------------------------------------------- */
.bg-white {
    background-color: #fff !important;
}

.bg-black-1 {
    background-color: #000 !important;
}

.bg-black-2 {
    background-color: #404045 !important;
}

.bg-gold {
    background-color: #AA8532 !important;
}

.bg-silver {
    background-color: #A6A9AA !important;
}

.bg-bronze {
    background-color: #967444 !important;
}

/* カテゴリ */
.bg-cat-event {
    background-color: #FFB114 !important;
}

.bg-cat-game {
    background-color: #00A651 !important;
}

.bg-cat-meeting {
    background-color: #0078D0 !important;
}

/* ---------------------------------------------
*   color
--------------------------------------------- */
.color-white {
    color: #fff !important;
    --color: #fff;
}

.color-red-1 {
    color: #F0252D !important;
    --color: #F0252D;
}

.color-blue-1 {
    color: #0078D0 !important;
    --color: #0078D0;
}

.color-green-1 {
    color: #00A651 !important;
    --color: #00A651;
}

.color-black-1 {
    color: #000 !important;
    --color: #000;
}

.color-black-2 {
    color: #404045 !important;
    --color: #404045;
}

.color-gray-1 {
    color: #EFEFEF !important;
    --color: #EFEFEF;
}

.color-gray-2 {
    color: #404045 !important;
    --color: #404045;
}

.color-gray-3 {
    color: #757577 !important;
    --color: #757577;
}

.color-gray-4 {
    color: #A6A9AA !important;
    --color: #A6A9AA;
}

.color-gray-5 {
    color: #707070 !important;
    --color: #707070;
}

.color-gray-6 {
    color: #909090 !important;
    --color: #909090;
}

.color-gold-1 {
    color: #AA8532 !important;
    --color: #AA8532;
}

.color-silver-1 {
    color: #A6A9AA !important;
    --color: #A6A9AA;
}

.color-bronze-1 {
    color: #967444 !important;
    --color: #967444;
}

/* ---------------------------------------------
*   before after background color
--------------------------------------------- */
.before-bg-color-black-1::before {
    background-color: #000 !important;
}

.after-bg-color-black-1::after {
    background-color: #000 !important;
}

.pseudo-bg-color-black-1::before, .pseudo-bg-color-black-1::after {
    background-color: #000 !important;
}

/* ---------------------------------------------
*   border
--------------------------------------------- */
.border-gray-transparent {
    border: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.border-gray-1 {
    border: 1px solid #EFEFEF !important;
}

.border--bottom-gray-1 {
    border-bottom: 1px solid #EFEFEF !important;
}

.border-top-gray-1 {
    border-top: 1px solid #EFEFEF !important;
}

/* ---------------------------------------------
*   width-fit-center
--------------------------------------------- */
.width-fit-center {
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
}

@media screen and (min-width: 993px) {
    .width-fit-center-pc {
        width: -moz-fit-content;
        width: fit-content;
        margin-inline: auto;
    }
}

@media screen and (max-width: 992px) {
    .width-fit-center-sp {
        width: -moz-fit-content;
        width: fit-content;
        margin-inline: auto;
    }
}

/* ---------------------------------------------
*   block
--------------------------------------------- */
.display-block {
    display: block !important;
}

/* ---------------------------------------------
*   inline-block
--------------------------------------------- */
.display-inline-block {
    display: inline-block !important;
}

/* ---------------------------------------------
*   flex
--------------------------------------------- */
.display-flex {
    display: flex !important;
}

@media screen and (min-width: 993px) {
    .display-flex-pc {
        display: flex;
    }
}

@media screen and (max-width: 992px) {
    .display-flex-sp {
        display: flex;
    }
}

.align-items-center {
    align-items: center;
}

.justify-content-fs {
    justify-content: flex-start !important;
}

.justify-content-sb {
    justify-content: space-between;
}

@media screen and (min-width: 993px) {
    .justify-content-sb-pc {
        justify-content: space-between;
    }
}

@media screen and (max-width: 992px) {
    .justify-content-sb-sp {
        justify-content: space-between;
    }
}

.justify-content-center {
    justify-content: center;
}

@media screen and (min-width: 993px) {
    .justify-content-center-pc {
        justify-content: center;
    }
}

@media screen and (max-width: 992px) {
    .justify-content-center-sp {
        justify-content: center;
    }
}

@media screen and (max-width: 992px) {
    .flex-wrap-sp {
        flex-wrap: wrap;
    }
}

/* ---------------------------------------------
*   width
--------------------------------------------- */
.w-per-100 {
    width: 100%;
}

@media screen and (min-width: 993px) {
    .w-per-100-pc {
        width: 100%;
    }
}

@media screen and (max-width: 992px) {
    .w-per-100-sp {
        width: 100%;
    }
}

/* ---------------------------------------------
*   max-width
--------------------------------------------- */
.max-w-unset {
    max-width: unset !important;
}

/* ---------------------------------------------
*   min-width
--------------------------------------------- */
.min-w-unset {
    min-width: unset !important;
}

/* ---------------------------------------------
*   font-family
--------------------------------------------- */
.ff-tjsans-bold {
    font-family: "TJSans-Bold", "Noto Sans JP", sans-serif !important;
    font-weight: unset !important;
}

.ff-tjsans-light {
    font-family: "TJSans-Light", "Noto Sans JP", sans-serif !important;
    font-weight: unset !important;
}

/* ---------------------------------------------
*   font-wight
--------------------------------------------- */
.fw-normal {
    font-weight: 400 !important;
}

.fw-medium {
    font-weight: 500 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

/* ---------------------------------------------
*  object-position
--------------------------------------------- */
.object-position-top {
    -o-object-position: top;
       object-position: top;
}

.object-position-bottom {
    -o-object-position: bottom;
       object-position: bottom;
}

/* ---------------------------------------------
*   object-fit
--------------------------------------------- */
.object-fit-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
}

.object-fit-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
}

/* ---------------------------------------------
*   text-align
--------------------------------------------- */
.txt-al-center {
    text-align: center !important;
}

.txt-al-right {
    text-align: right !important;
}

.txt-al-left {
    text-align: left !important;
}

@media screen and (min-width: 993px) {
    .txt-al-pc-center {
        text-align: center !important;
    }
    .txt-al-pc-right {
        text-align: right !important;
    }
    .txt-al-pc-left {
        text-align: left !important;
    }
}
@media screen and (max-width: 992px) {
    .txt-al-sp-center {
        text-align: center !important;
    }
    .txt-al-sp-right {
        text-align: right !important;
    }
    .txt-al-sp-left {
        text-align: left !important;
    }
}
/* ---------------------------------------------
*   table-txt-al
--------------------------------------------- */
.table-txt-al-left-row-3 th:nth-child(3),
.table-txt-al-left-row-3 td:nth-child(3) {
    text-align: left !important;
}

.table-txt-al-center-row-1 th:nth-child(1),
.table-txt-al-center-row-1 td:nth-child(1) {
    text-align: center !important;
}

.table-txt-al-center-row-2 th:nth-child(2),
.table-txt-al-center-row-2 td:nth-child(2) {
    text-align: center !important;
}

/* ---------------------------------------------
*   border-width
--------------------------------------------- */
.border-width-1 {
    border-width: 1px;
}

.border-width-2 {
    border-width: 2px;
}

/* ---------------------------------------------
*   border-none
--------------------------------------------- */
.border-none {
    border: none !important;
}

@media screen and (max-width: 992px) {
    .border-top-none-sp {
        border-top: none !important;
    }
}

@media screen and (max-width: 992px) {
    .border-bottom-none-sp {
        border-bottom: none !important;
    }
}

/* ---------------------------------------------
*   text-line-clamp
--------------------------------------------- */
.text-line-clamp-1 {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.text-line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.text-line-clamp-3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.text-line-clamp-4 {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.text-line-clamp-5 {
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@media screen and (max-width: 992px) {
    .text-line-clamp-sp-1 {
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
    .text-line-clamp-sp-2 {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
    .text-line-clamp-sp-3 {
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
    .text-line-clamp-sp-4 {
        display: -webkit-box;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
    .text-line-clamp-sp-5 {
        display: -webkit-box;
        -webkit-line-clamp: 5;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
}
/* ---------------------------------------------
*   letter-spacing
--------------------------------------------- */
.letter-spacing-minus-001 {
    letter-spacing: -0.01em;
}

.letter-spacing-minus-002 {
    letter-spacing: -0.02em;
}

.letter-spacing-minus-003 {
    letter-spacing: -0.03em;
}

.letter-spacing-minus-004 {
    letter-spacing: -0.04em;
}

.letter-spacing-minus-005 {
    letter-spacing: -0.05em;
}

.letter-spacing-minus-010 {
    letter-spacing: -0.1em;
}

@media screen and (max-width: 992px) {
    .letter-spacing-minus-sp-001 {
        letter-spacing: -0.01em;
    }
    .letter-spacing-minus-sp-002 {
        letter-spacing: -0.02em;
    }
    .letter-spacing-minus-sp-003 {
        letter-spacing: -0.03em;
    }
    .letter-spacing-minus-sp-004 {
        letter-spacing: -0.04em;
    }
    .letter-spacing-minus-sp-005 {
        letter-spacing: -0.05em;
    }
    .letter-spacing-minus-sp-010 {
        letter-spacing: -0.1em;
    }
}
/* ---------------------------------------------
*   line height
--------------------------------------------- */
.line-height-1-4 {
    line-height: 1.4;
}

.line-height-1-5 {
    line-height: 1.5;
}

.line-height-1-7 {
    line-height: 1.7;
}

.line-height-1-8 {
    line-height: 1.8;
}

.line-height-1-9 {
    line-height: 1.9;
}

.line-height-2-0 {
    line-height: 2;
}

.line-height-2-1 {
    line-height: 2.1;
}

.line-height-2-2 {
    line-height: 2.2;
}

@media screen and (max-width: 992px) {
    .line-height-sp-1-4 {
        line-height: 1.4;
    }
    .line-height-sp-1-5 {
        line-height: 1.5;
    }
    .line-height-sp-1-7 {
        line-height: 1.7;
    }
    .line-height-sp-1-8 {
        line-height: 1.8;
    }
    .line-height-sp-1-9 {
        line-height: 1.9;
    }
    .line-height-sp-2-0 {
        line-height: 2;
    }
    .line-height-sp-2-1 {
        line-height: 2.1;
    }
    .line-height-sp-2-2 {
        line-height: 2.2;
    }
}
/* ---------------------------------------------
*   aspect-ratio
--------------------------------------------- */
.aspect-ratio-16-9 {
    aspect-ratio: 16/9 !important;
}

.aspect-ratio-2-1 {
    aspect-ratio: 2/1 !important;
}

.aspect-ratio-1-1 {
    aspect-ratio: 1/1 !important;
}

.aspect-ratio-4-5 {
    aspect-ratio: 4/5 !important;
}

.aspect-ratio-unset {
    aspect-ratio: unset !important;
}

/* ---------------------------------------------
*   grid column
--------------------------------------------- */
.grid-col-none {
    display: block;
}

.grid-col-1 {
    --col: 1;
}

.grid-col-2 {
    --col: 2;
}

.grid-col-3 {
    --col: 3;
}

.grid-col-4 {
    --col: 4;
}

.grid-col-5 {
    --col: 5;
}

@media screen and (max-width: 1400px) {
    .grid-col-xxl-none {
        display: block;
    }
    .grid-col-xxl-1 {
        --col: 1;
    }
    .grid-col-xxl-2 {
        --col: 2;
    }
    .grid-col-xxl-3 {
        --col: 3;
    }
    .grid-col-xxl-4 {
        --col: 4;
    }
    .grid-col-xxl-5 {
        --col: 5;
    }
}
@media screen and (max-width: 1200px) {
    .grid-col-xl-none {
        display: block;
    }
    .grid-col-xl-1 {
        --col: 1;
    }
    .grid-col-xl-2 {
        --col: 2;
    }
    .grid-col-xl-3 {
        --col: 3;
    }
    .grid-col-xl-4 {
        --col: 4;
    }
    .grid-col-xl-5 {
        --col: 5;
    }
}
@media screen and (max-width: 992px) {
    .grid-col-lg-none {
        display: block;
    }
    .grid-col-lg-1 {
        --col: 1;
    }
    .grid-col-lg-2 {
        --col: 2;
    }
    .grid-col-lg-3 {
        --col: 3;
    }
    .grid-col-lg-4 {
        --col: 4;
    }
    .grid-col-lg-5 {
        --col: 5;
    }
}
@media screen and (max-width: 767.98px) {
    .grid-col-md-none {
        display: block;
    }
    .grid-col-md-1 {
        --col: 1;
    }
    .grid-col-md-2 {
        --col: 2;
    }
    .grid-col-md-3 {
        --col: 3;
    }
    .grid-col-md-4 {
        --col: 4;
    }
    .grid-col-md-5 {
        --col: 5;
    }
}
@media screen and (max-width: 992px) {
    .grid-col-sp-none {
        display: block;
    }
    .grid-col-sp-1 {
        --col: 1;
    }
    .grid-col-sp-2 {
        --col: 2;
    }
    .grid-col-sp-3 {
        --col: 3;
    }
    .grid-col-sp-4 {
        --col: 4;
    }
    .grid-col-sp-5 {
        --col: 5;
    }
}
/*  subgrid-sapn
--------------------------------------------- */
.subgrid-span-1 {
    --subgrid-span: 1;
}

.subgrid-span-2 {
    --subgrid-span: 2;
}

.subgrid-span-3 {
    --subgrid-span: 3;
}

.subgrid-span-4 {
    --subgrid-span: 4;
}

.subgrid-span-5 {
    --subgrid-span: 5;
}

.subgrid-span-6 {
    --subgrid-span: 6;
}

.subgrid-span-7 {
    --subgrid-span: 7;
}

.subgrid-span-8 {
    --subgrid-span: 8;
}

.subgrid-span-9 {
    --subgrid-span: 9;
}

.subgrid-span-10 {
    --subgrid-span: 10;
}

/*  hover-zoom-img
--------------------------------------------- */
.hover-zoom-img {
    overflow: hidden;
}
@media (hover: hover) and (pointer: fine) {
    .hover-zoom-img img {
        transition: scale 1s cubic-bezier(0.1, 0.88, 0.1, 0.88);
    }
    a:hover .hover-zoom-img img {
        scale: 1.08;
    }
}
@media (prefers-reduced-motion: reduce) {
    a:hover .hover-zoom-img img {
        scale: 1;
        transition: unset;
    }
}

/*  hover-opacity
--------------------------------------------- */
@media (hover: hover) and (pointer: fine) {
    .hover-opacity {
        transition: opacity 300ms;
    }
    .hover-opacity:hover {
        opacity: 0.8;
    }
}

/*  hover-underline
--------------------------------------------- */
@media (hover: hover) and (pointer: fine) {
    .hover-underline:hover {
        text-decoration: underline;
    }
}

/*  hover-underline-2
--------------------------------------------- */
@media (hover: hover) and (pointer: fine) {
    a:hover .hover-underline-2 {
        text-decoration: underline;
    }
}

/*  hover-underline-none
--------------------------------------------- */
.hover-underline-none {
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .hover-underline-none:hover {
        text-decoration: none;
    }
}

/*  hover-underline-none-2
--------------------------------------------- */
.hover-underline-none-2 {
    text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    a:hover .hover-underline-none-2 {
        text-decoration: none;
    }
}

/* ---------------------------------------------
*   position
--------------------------------------------- */
.position-relative {
    position: relative !important;
}

.position-static {
    position: static !important;
}

/* ---------------------------------------------
*   gap
--------------------------------------------- */
.gap--1gap {
    gap: var(--1gap) !important;
}

.gap--2gap {
    gap: var(--2gap) !important;
}

.gap--3gap {
    gap: var(--3gap) !important;
}

@media screen and (min-width: 993px) {
    .gap-pc--1gap {
        gap: var(--1gap) !important;
    }
    .gap-pc--2gap {
        gap: var(--2gap) !important;
    }
    .gap-pc--3gap {
        gap: var(--3gap) !important;
    }
}
@media screen and (max-width: 992px) {
    .gap-sp--1gap {
        gap: var(--1gap) !important;
    }
    .gap-sp--2gap {
        gap: var(--2gap) !important;
    }
    .gap-sp--3gap {
        gap: var(--3gap) !important;
    }
}
/* ---------------------------------------------
*   column-gap
--------------------------------------------- */
.column-gap--1gap {
    -moz-column-gap: var(--1gap) !important;
         column-gap: var(--1gap) !important;
}

.column-gap--2gap {
    -moz-column-gap: var(--2gap) !important;
         column-gap: var(--2gap) !important;
}

.column-gap--3gap {
    -moz-column-gap: var(--3gap) !important;
         column-gap: var(--3gap) !important;
}

@media screen and (min-width: 993px) {
    .column-gap-pc--1gap {
        -moz-column-gap: var(--1gap) !important;
             column-gap: var(--1gap) !important;
    }
    .column-gap-pc--2gap {
        -moz-column-gap: var(--2gap) !important;
             column-gap: var(--2gap) !important;
    }
    .column-gap-pc--3gap {
        -moz-column-gap: var(--3gap) !important;
             column-gap: var(--3gap) !important;
    }
}
@media screen and (max-width: 992px) {
    .column-gap-sp--1gap {
        -moz-column-gap: var(--1gap) !important;
             column-gap: var(--1gap) !important;
    }
    .column-gap-sp--2gap {
        -moz-column-gap: var(--2gap) !important;
             column-gap: var(--2gap) !important;
    }
    .column-gap-sp--3gap {
        -moz-column-gap: var(--3gap) !important;
             column-gap: var(--3gap) !important;
    }
}
/* ---------------------------------------------
*   row-gap
--------------------------------------------- */
.row-gap--1gap {
    row-gap: var(--1gap) !important;
}

.row-gap--2gap {
    row-gap: var(--2gap) !important;
}

.row-gap--3gap {
    row-gap: var(--3gap) !important;
}

@media screen and (min-width: 993px) {
    .row-gap-pc--1gap {
        row-gap: var(--1gap) !important;
    }
    .row-gap-pc--2gap {
        row-gap: var(--2gap) !important;
    }
    .row-gap-pc--3gap {
        row-gap: var(--3gap) !important;
    }
}
@media screen and (max-width: 992px) {
    .row-gap-sp--1gap {
        row-gap: var(--1gap) !important;
    }
    .row-gap-sp--2gap {
        row-gap: var(--2gap) !important;
    }
    .row-gap-sp--3gap {
        row-gap: var(--3gap) !important;
    }
}
/*  fit-center
--------------------------------------------- */
.fit-center {
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
}

/*  .visually-hidden
--------------------------------------------- */
.visually-hidden {
    position: absolute;
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(50%);
            clip-path: inset(50%);
    width: 1px;
    height: 1px;
    overflow: hidden;
    white-space: nowrap;
}

/*  .float-unset
--------------------------------------------- */
.float-unset {
    float: unset !important;
}

/*  vertical-align
--------------------------------------------- */
.vertical-al-baseline {
    vertical-align: baseline !important;
}

.vertical-al-bottom {
    vertical-align: bottom !important;
}

/*  overflow-x-auto-sp
--------------------------------------------- */
@media screen and (max-width: 992px) {
    .overflow-x-auto-sp {
        overflow-x: auto;
        /* for Firefox */
        scrollbar-width: none;
    }
    .overflow-x-auto-sp::-webkit-scrollbar {
        display: none;
    }
}

/*  table-layout
--------------------------------------------- */
.table-layout-auto {
    table-layout: auto !important;
}

@media screen and (min-width: 993px) {
    .table-layout-auto-pc {
        table-layout: auto !important;
    }
}

@media screen and (max-width: 992px) {
    .table-layout-auto-sp {
        table-layout: auto !important;
    }
}

/*  login-hide
--------------------------------------------- */
body.is-login .login-hide {
    display: none !important;
}

/* ---------------------------------------------
*   インデント調整汎用class
--------------------------------------------- */
.txt-indent {
    padding-left: 1em !important;
}

/* ---------------------------------------------
*   break-word
--------------------------------------------- */
.break-word {
    overflow-wrap: break-word !important;
    word-break: break-all !important;
}

.break-word-unset {
    overflow-wrap: unset !important;
    word-break: unset !important;
}

/* ---------------------------------------------
*   旧html用要素間margin調整用汎用class
--------------------------------------------- */
.spacing-between-p-type1 p + p {
    margin-top: var(--0_5gap);
}

/*  js-acc-target (アコーディオン)
--------------------------------------------- */
.js-acc-target {
    --acc-body-height: 0px;
    height: 0;
    overflow: hidden;
}
.js-acc-scope.is-close .js-acc-target {
    animation: closeAccAnim 0.3s forwards;
}

.js-acc-scope.is-open .js-acc-target {
    animation: openAccAnim 0.3s forwards;
}

@keyframes openAccAnim {
    0% {
        height: 0px;
        visibility: hidden;
    }
    99% {
        visibility: visible;
        height: var(--acc-body-height);
    }
    100% {
        height: auto;
    }
}
@keyframes closeAccAnim {
    0% {
        height: var(--acc-body-height);
    }
    99% {
        visibility: visible;
    }
    100% {
        height: 0px;
        visibility: hidden;
    }
}

/*  js-sp-acc-target (アコーディオン SPのみ)
--------------------------------------------- */
@media screen and (max-width: 992px) {
    .js-sp-acc-target {
        --acc-body-height: 0px;
        height: 0;
        overflow: hidden;
    }
    .js-sp-acc-scope.is-close .js-sp-acc-target {
        animation: closeAccAnim 0.3s forwards;
    }
    .js-sp-acc-scope.is-open .js-sp-acc-target {
        animation: openAccAnim 0.3s forwards;
    }
    @keyframes openAccAnim {
        0% {
            height: 0px;
            visibility: hidden;
        }
        99% {
            visibility: visible;
            height: var(--acc-body-height);
        }
        100% {
            height: auto;
        }
    }
    @keyframes closeAccAnim {
        0% {
            height: var(--acc-body-height);
        }
        99% {
            visibility: visible;
        }
        100% {
            height: 0px;
            visibility: hidden;
        }
    }
}
/*  .js-tel-disabled
--------------------------------------------- */
.js-tel-disabled {
    pointer-events: none;
}

/*  js-pagetop-threshold （ページトップボタン）
--------------------------------------------- */
.js-pagetop-threshold {
    position: absolute;
    top: 0;
    height: 300px;
}

/*  .js-tab-target (タブ切り替え)
--------------------------------------------- */
.js-tab-target {
    display: none;
}
.js-tab-target.is-current {
    display: block;
}

/*  .js-more-toggle-scope （もっと見る）
--------------------------------------------- */
.js-more-toggle-scope .is-hide {
    display: none;
}
.js-more-toggle-scope .open-show {
    display: none;
}
.js-more-toggle-scope .open-hide {
    display: block;
}
.js-more-toggle-scope.is-open .open-show {
    display: block;
}
.js-more-toggle-scope.is-open .open-hide {
    display: none;
}

/*  js-show-all-target (もっと見る 全て表示)
--------------------------------------------- */
.js-show-all-target {
    display: none;
}

.js-show-all-scope .open-show {
    display: none;
}
.js-show-all-scope .open-hide {
    display: block;
}
.js-show-all-scope.is-open .open-show {
    display: block;
}
.js-show-all-scope.is-open .open-hide {
    display: none;
}

/*  js-show-all-scope-2 (もっと見る 全て表示)
--------------------------------------------- */
.js-show-all-scope-2 .is-hide {
    display: none;
}

/*  js-more-step-scope （もっと見る n件ずつ表示）
--------------------------------------------- */
.js-more-step-scope .is-hide {
    display: none;
}
.js-more-step-scope .show-all-hide {
    display: block;
}
.js-more-step-scope .show-all-visible {
    display: none;
}
.js-more-step-scope.is-show-all .show-all-hide {
    display: none;
}
.js-more-step-scope.is-show-all .show-all-visible {
    display: block;
}

/*  js-show-all-scope-3
--------------------------------------------- */
.js-show-all-scope-3 .js-show-all-target-3 {
    display: none;
}
.js-show-all-scope-3.is-open .js-show-all-target-3 {
    display: block;
}
.js-show-all-scope-3 .open-visible {
    display: none;
}
.js-show-all-scope-3.is-open .open-visible {
    display: block;
}
.js-show-all-scope-3.is-open .open-hidden {
    display: none;
}

@media print and (min-width: 993px), screen and (min-width: 993px) {
    .pc-hide {
        display: none !important;
    }
}
@media print and (max-width: 1400px), screen and (max-width: 1400px) {
    .xxl-hide {
        display: none !important;
    }
}
@media print and (max-width: 992px), screen and (max-width: 992px) {
    .sp-hide {
        display: none !important;
    }
}
/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt--0_25gap {
    margin-top: var(--0_25gap) !important;
}

.mgt--0_5gap {
    margin-top: var(--0_5gap) !important;
}

.mgt--1gap {
    margin-top: var(--1gap) !important;
}

.mgt--2gap {
    margin-top: var(--2gap) !important;
}

.mgt--3gap {
    margin-top: var(--3gap) !important;
}

.mgt--4gap {
    margin-top: var(--4gap) !important;
}

.mgt-pc--0 {
    margin-top: 0 !important;
}

.mgt-pc--5 {
    margin-top: 5px !important;
}

.mgt-pc--10 {
    margin-top: 10px !important;
}

.mgt-pc--15 {
    margin-top: 15px !important;
}

.mgt-pc--20 {
    margin-top: 20px !important;
}

.mgt-pc--25 {
    margin-top: 25px !important;
}

.mgt-pc--30 {
    margin-top: 30px !important;
}

.mgt-pc--35 {
    margin-top: 35px !important;
}

.mgt-pc--40 {
    margin-top: 40px !important;
}

.mgt-pc--45 {
    margin-top: 45px !important;
}

.mgt-pc--50 {
    margin-top: 50px !important;
}

.mgt-pc--55 {
    margin-top: 55px !important;
}

.mgt-pc--60 {
    margin-top: 60px !important;
}

.mgt-pc--65 {
    margin-top: 65px !important;
}

.mgt-pc--70 {
    margin-top: 70px !important;
}

.mgt-pc--75 {
    margin-top: 75px !important;
}

.mgt-pc--80 {
    margin-top: 80px !important;
}

.mgt-pc--85 {
    margin-top: 85px !important;
}

.mgt-pc--90 {
    margin-top: 90px !important;
}

.mgt-pc--95 {
    margin-top: 95px !important;
}

.mgt-pc--100 {
    margin-top: 100px !important;
}

.mgt-pc--105 {
    margin-top: 105px !important;
}

.mgt-pc--110 {
    margin-top: 110px !important;
}

.mgt-pc--115 {
    margin-top: 115px !important;
}

.mgt-pc--120 {
    margin-top: 120px !important;
}

.mgt-pc--125 {
    margin-top: 125px !important;
}

.mgt-pc--130 {
    margin-top: 130px !important;
}

.mgt-pc--135 {
    margin-top: 135px !important;
}

.mgt-pc--140 {
    margin-top: 140px !important;
}

.mgt-pc--145 {
    margin-top: 145px !important;
}

.mgt-pc--150 {
    margin-top: 150px !important;
}

.mgt-pc--155 {
    margin-top: 155px !important;
}

.mgt-pc--160 {
    margin-top: 160px !important;
}

.mgt-pc--165 {
    margin-top: 165px !important;
}

.mgt-pc--170 {
    margin-top: 170px !important;
}

.mgt-pc--175 {
    margin-top: 175px !important;
}

.mgt-pc--180 {
    margin-top: 180px !important;
}

.mgt-pc--185 {
    margin-top: 185px !important;
}

.mgt-pc--190 {
    margin-top: 190px !important;
}

.mgt-pc--195 {
    margin-top: 195px !important;
}

.mgt-pc--200 {
    margin-top: 200px !important;
}

@media screen and (max-width: 992px) {
    .mgt-sp--0 {
        margin-top: 0 !important;
    }
    .mgt-sp--5 {
        margin-top: 5px !important;
    }
    .mgt-sp--10 {
        margin-top: 10px !important;
    }
    .mgt-sp--15 {
        margin-top: 15px !important;
    }
    .mgt-sp--20 {
        margin-top: 20px !important;
    }
    .mgt-sp--25 {
        margin-top: 25px !important;
    }
    .mgt-sp--30 {
        margin-top: 30px !important;
    }
    .mgt-sp--35 {
        margin-top: 35px !important;
    }
    .mgt-sp--40 {
        margin-top: 40px !important;
    }
    .mgt-sp--45 {
        margin-top: 45px !important;
    }
    .mgt-sp--50 {
        margin-top: 50px !important;
    }
    .mgt-sp--55 {
        margin-top: 55px !important;
    }
    .mgt-sp--60 {
        margin-top: 60px !important;
    }
    .mgt-sp--65 {
        margin-top: 65px !important;
    }
    .mgt-sp--70 {
        margin-top: 70px !important;
    }
    .mgt-sp--75 {
        margin-top: 75px !important;
    }
    .mgt-sp--80 {
        margin-top: 80px !important;
    }
    .mgt-sp--85 {
        margin-top: 85px !important;
    }
    .mgt-sp--90 {
        margin-top: 90px !important;
    }
    .mgt-sp--95 {
        margin-top: 95px !important;
    }
    .mgt-sp--100 {
        margin-top: 100px !important;
    }
    .mgt-sp--105 {
        margin-top: 105px !important;
    }
    .mgt-sp--110 {
        margin-top: 110px !important;
    }
    .mgt-sp--115 {
        margin-top: 115px !important;
    }
    .mgt-sp--120 {
        margin-top: 120px !important;
    }
    .mgt-sp--125 {
        margin-top: 125px !important;
    }
    .mgt-sp--130 {
        margin-top: 130px !important;
    }
    .mgt-sp--135 {
        margin-top: 135px !important;
    }
    .mgt-sp--140 {
        margin-top: 140px !important;
    }
    .mgt-sp--145 {
        margin-top: 145px !important;
    }
    .mgt-sp--150 {
        margin-top: 150px !important;
    }
    .mgt-sp--155 {
        margin-top: 155px !important;
    }
    .mgt-sp--160 {
        margin-top: 160px !important;
    }
    .mgt-sp--165 {
        margin-top: 165px !important;
    }
    .mgt-sp--170 {
        margin-top: 170px !important;
    }
    .mgt-sp--175 {
        margin-top: 175px !important;
    }
    .mgt-sp--180 {
        margin-top: 180px !important;
    }
    .mgt-sp--185 {
        margin-top: 185px !important;
    }
    .mgt-sp--190 {
        margin-top: 190px !important;
    }
    .mgt-sp--195 {
        margin-top: 195px !important;
    }
    .mgt-sp--200 {
        margin-top: 200px !important;
    }
}
@media screen and (max-width: 992px) {
    .mgt-sp--0_25gap {
        margin-top: var(--0_25gap) !important;
    }
    .mgt-sp--0_5gap {
        margin-top: var(--0_5gap) !important;
    }
    .mgt-sp--1gap {
        margin-top: var(--1gap) !important;
    }
    .mgt-sp--2gap {
        margin-top: var(--2gap) !important;
    }
    .mgt-sp--3gap {
        margin-top: var(--3gap) !important;
    }
    .mgt-sp--4gap {
        margin-top: var(--4gap) !important;
    }
    .mgt-sp--type1 {
        margin-top: 43.05px !important;
    }
}
/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */
.mgb--0_25gap {
    margin-bottom: var(--0_25gap) !important;
}

.mgb--0_5gap {
    margin-bottom: var(--0_5gap) !important;
}

.mgb--1gap {
    margin-bottom: var(--1gap) !important;
}

.mgb--2gap {
    margin-bottom: var(--2gap) !important;
}

.mgb--3gap {
    margin-bottom: var(--3gap) !important;
}

.mgb--4gap {
    margin-bottom: var(--4gap) !important;
}

.mgb-pc--0 {
    margin-bottom: 0 !important;
}

.mgb-pc--5 {
    margin-bottom: 5px !important;
}

.mgb-pc--10 {
    margin-bottom: 10px !important;
}

.mgb-pc--15 {
    margin-bottom: 15px !important;
}

.mgb-pc--20 {
    margin-bottom: 20px !important;
}

.mgb-pc--25 {
    margin-bottom: 25px !important;
}

.mgb-pc--30 {
    margin-bottom: 30px !important;
}

.mgb-pc--35 {
    margin-bottom: 35px !important;
}

.mgb-pc--40 {
    margin-bottom: 40px !important;
}

.mgb-pc--45 {
    margin-bottom: 45px !important;
}

.mgb-pc--50 {
    margin-bottom: 50px !important;
}

.mgb-pc--55 {
    margin-bottom: 55px !important;
}

.mgb-pc--60 {
    margin-bottom: 60px !important;
}

.mgb-pc--65 {
    margin-bottom: 65px !important;
}

.mgb-pc--70 {
    margin-bottom: 70px !important;
}

.mgb-pc--75 {
    margin-bottom: 75px !important;
}

.mgb-pc--80 {
    margin-bottom: 80px !important;
}

.mgb-pc--85 {
    margin-bottom: 85px !important;
}

.mgb-pc--90 {
    margin-bottom: 90px !important;
}

.mgb-pc--95 {
    margin-bottom: 95px !important;
}

.mgb-pc--100 {
    margin-bottom: 100px !important;
}

.mgb-pc--105 {
    margin-bottom: 105px !important;
}

.mgb-pc--110 {
    margin-bottom: 110px !important;
}

.mgb-pc--115 {
    margin-bottom: 115px !important;
}

.mgb-pc--120 {
    margin-bottom: 120px !important;
}

.mgb-pc--125 {
    margin-bottom: 125px !important;
}

.mgb-pc--130 {
    margin-bottom: 130px !important;
}

.mgb-pc--135 {
    margin-bottom: 135px !important;
}

.mgb-pc--140 {
    margin-bottom: 140px !important;
}

.mgb-pc--145 {
    margin-bottom: 145px !important;
}

.mgb-pc--150 {
    margin-bottom: 150px !important;
}

.mgb-pc--155 {
    margin-bottom: 155px !important;
}

.mgb-pc--160 {
    margin-bottom: 160px !important;
}

.mgb-pc--165 {
    margin-bottom: 165px !important;
}

.mgb-pc--170 {
    margin-bottom: 170px !important;
}

.mgb-pc--175 {
    margin-bottom: 175px !important;
}

.mgb-pc--180 {
    margin-bottom: 180px !important;
}

.mgb-pc--185 {
    margin-bottom: 185px !important;
}

.mgb-pc--190 {
    margin-bottom: 190px !important;
}

.mgb-pc--195 {
    margin-bottom: 195px !important;
}

.mgb-pc--200 {
    margin-bottom: 200px !important;
}

@media screen and (max-width: 992px) {
    .mgb-sp--0 {
        margin-bottom: 0 !important;
    }
    .mgb-sp--5 {
        margin-bottom: 5px !important;
    }
    .mgb-sp--10 {
        margin-bottom: 10px !important;
    }
    .mgb-sp--15 {
        margin-bottom: 15px !important;
    }
    .mgb-sp--20 {
        margin-bottom: 20px !important;
    }
    .mgb-sp--25 {
        margin-bottom: 25px !important;
    }
    .mgb-sp--30 {
        margin-bottom: 30px !important;
    }
    .mgb-sp--35 {
        margin-bottom: 35px !important;
    }
    .mgb-sp--40 {
        margin-bottom: 40px !important;
    }
    .mgb-sp--45 {
        margin-bottom: 45px !important;
    }
    .mgb-sp--50 {
        margin-bottom: 50px !important;
    }
    .mgb-sp--55 {
        margin-bottom: 55px !important;
    }
    .mgb-sp--60 {
        margin-bottom: 60px !important;
    }
    .mgb-sp--65 {
        margin-bottom: 65px !important;
    }
    .mgb-sp--70 {
        margin-bottom: 70px !important;
    }
    .mgb-sp--75 {
        margin-bottom: 75px !important;
    }
    .mgb-sp--80 {
        margin-bottom: 80px !important;
    }
    .mgb-sp--85 {
        margin-bottom: 85px !important;
    }
    .mgb-sp--90 {
        margin-bottom: 90px !important;
    }
    .mgb-sp--95 {
        margin-bottom: 95px !important;
    }
    .mgb-sp--100 {
        margin-bottom: 100px !important;
    }
    .mgb-sp--105 {
        margin-bottom: 105px !important;
    }
    .mgb-sp--110 {
        margin-bottom: 110px !important;
    }
    .mgb-sp--115 {
        margin-bottom: 115px !important;
    }
    .mgb-sp--120 {
        margin-bottom: 120px !important;
    }
    .mgb-sp--125 {
        margin-bottom: 125px !important;
    }
    .mgb-sp--130 {
        margin-bottom: 130px !important;
    }
    .mgb-sp--135 {
        margin-bottom: 135px !important;
    }
    .mgb-sp--140 {
        margin-bottom: 140px !important;
    }
    .mgb-sp--145 {
        margin-bottom: 145px !important;
    }
    .mgb-sp--150 {
        margin-bottom: 150px !important;
    }
    .mgb-sp--155 {
        margin-bottom: 155px !important;
    }
    .mgb-sp--160 {
        margin-bottom: 160px !important;
    }
    .mgb-sp--165 {
        margin-bottom: 165px !important;
    }
    .mgb-sp--170 {
        margin-bottom: 170px !important;
    }
    .mgb-sp--175 {
        margin-bottom: 175px !important;
    }
    .mgb-sp--180 {
        margin-bottom: 180px !important;
    }
    .mgb-sp--185 {
        margin-bottom: 185px !important;
    }
    .mgb-sp--190 {
        margin-bottom: 190px !important;
    }
    .mgb-sp--195 {
        margin-bottom: 195px !important;
    }
    .mgb-sp--200 {
        margin-bottom: 200px !important;
    }
}
@media screen and (max-width: 992px) {
    .mgb-sp--0_25gap {
        margin-bottom: var(--0_25gap) !important;
    }
    .mgb-sp--0_5gap {
        margin-bottom: var(--0_5gap) !important;
    }
    .mgb-sp--1gap {
        margin-bottom: var(--1gap) !important;
    }
    .mgb-sp--2gap {
        margin-bottom: var(--2gap) !important;
    }
    .mgb-sp--3gap {
        margin-bottom: var(--3gap) !important;
    }
    .mgb-sp--4gap {
        margin-bottom: var(--4gap) !important;
    }
}
/* ---------------------------------------------
*   margin-left
--------------------------------------------- */
.mgl--0_25gap {
    margin-left: var(--0_25gap) !important;
}

.mgl--0_5gap {
    margin-left: var(--0_5gap) !important;
}

.mgl--1gap {
    margin-left: var(--1gap) !important;
}

.mgl--2gap {
    margin-left: var(--2gap) !important;
}

.mgl--3gap {
    margin-left: var(--3gap) !important;
}

.mgl--4gap {
    margin-left: var(--4gap) !important;
}

.mgl-pc--0 {
    margin-left: 0 !important;
}

.mgl-pc--5 {
    margin-left: 5px !important;
}

.mgl-pc--10 {
    margin-left: 10px !important;
}

.mgl-pc--15 {
    margin-left: 15px !important;
}

.mgl-pc--20 {
    margin-left: 20px !important;
}

.mgl-pc--25 {
    margin-left: 25px !important;
}

.mgl-pc--30 {
    margin-left: 30px !important;
}

.mgl-pc--35 {
    margin-left: 35px !important;
}

.mgl-pc--40 {
    margin-left: 40px !important;
}

.mgl-pc--45 {
    margin-left: 45px !important;
}

.mgl-pc--50 {
    margin-left: 50px !important;
}

.mgl-pc--55 {
    margin-left: 55px !important;
}

.mgl-pc--60 {
    margin-left: 60px !important;
}

.mgl-pc--65 {
    margin-left: 65px !important;
}

.mgl-pc--70 {
    margin-left: 70px !important;
}

.mgl-pc--75 {
    margin-left: 75px !important;
}

.mgl-pc--80 {
    margin-left: 80px !important;
}

.mgl-pc--85 {
    margin-left: 85px !important;
}

.mgl-pc--90 {
    margin-left: 90px !important;
}

.mgl-pc--95 {
    margin-left: 95px !important;
}

.mgl-pc--100 {
    margin-left: 100px !important;
}

.mgl-pc--105 {
    margin-left: 105px !important;
}

.mgl-pc--110 {
    margin-left: 110px !important;
}

.mgl-pc--115 {
    margin-left: 115px !important;
}

.mgl-pc--120 {
    margin-left: 120px !important;
}

.mgl-pc--125 {
    margin-left: 125px !important;
}

.mgl-pc--130 {
    margin-left: 130px !important;
}

.mgl-pc--135 {
    margin-left: 135px !important;
}

.mgl-pc--140 {
    margin-left: 140px !important;
}

.mgl-pc--145 {
    margin-left: 145px !important;
}

.mgl-pc--150 {
    margin-left: 150px !important;
}

.mgl-pc--155 {
    margin-left: 155px !important;
}

.mgl-pc--160 {
    margin-left: 160px !important;
}

.mgl-pc--165 {
    margin-left: 165px !important;
}

.mgl-pc--170 {
    margin-left: 170px !important;
}

.mgl-pc--175 {
    margin-left: 175px !important;
}

.mgl-pc--180 {
    margin-left: 180px !important;
}

.mgl-pc--185 {
    margin-left: 185px !important;
}

.mgl-pc--190 {
    margin-left: 190px !important;
}

.mgl-pc--195 {
    margin-left: 195px !important;
}

.mgl-pc--200 {
    margin-left: 200px !important;
}

@media screen and (max-width: 992px) {
    .mgl-sp--0 {
        margin-left: 0 !important;
    }
    .mgl-sp--5 {
        margin-left: 5px !important;
    }
    .mgl-sp--10 {
        margin-left: 10px !important;
    }
    .mgl-sp--15 {
        margin-left: 15px !important;
    }
    .mgl-sp--20 {
        margin-left: 20px !important;
    }
    .mgl-sp--25 {
        margin-left: 25px !important;
    }
    .mgl-sp--30 {
        margin-left: 30px !important;
    }
    .mgl-sp--35 {
        margin-left: 35px !important;
    }
    .mgl-sp--40 {
        margin-left: 40px !important;
    }
    .mgl-sp--45 {
        margin-left: 45px !important;
    }
    .mgl-sp--50 {
        margin-left: 50px !important;
    }
    .mgl-sp--55 {
        margin-left: 55px !important;
    }
    .mgl-sp--60 {
        margin-left: 60px !important;
    }
    .mgl-sp--65 {
        margin-left: 65px !important;
    }
    .mgl-sp--70 {
        margin-left: 70px !important;
    }
    .mgl-sp--75 {
        margin-left: 75px !important;
    }
    .mgl-sp--80 {
        margin-left: 80px !important;
    }
    .mgl-sp--85 {
        margin-left: 85px !important;
    }
    .mgl-sp--90 {
        margin-left: 90px !important;
    }
    .mgl-sp--95 {
        margin-left: 95px !important;
    }
    .mgl-sp--100 {
        margin-left: 100px !important;
    }
    .mgl-sp--105 {
        margin-left: 105px !important;
    }
    .mgl-sp--110 {
        margin-left: 110px !important;
    }
    .mgl-sp--115 {
        margin-left: 115px !important;
    }
    .mgl-sp--120 {
        margin-left: 120px !important;
    }
    .mgl-sp--125 {
        margin-left: 125px !important;
    }
    .mgl-sp--130 {
        margin-left: 130px !important;
    }
    .mgl-sp--135 {
        margin-left: 135px !important;
    }
    .mgl-sp--140 {
        margin-left: 140px !important;
    }
    .mgl-sp--145 {
        margin-left: 145px !important;
    }
    .mgl-sp--150 {
        margin-left: 150px !important;
    }
    .mgl-sp--155 {
        margin-left: 155px !important;
    }
    .mgl-sp--160 {
        margin-left: 160px !important;
    }
    .mgl-sp--165 {
        margin-left: 165px !important;
    }
    .mgl-sp--170 {
        margin-left: 170px !important;
    }
    .mgl-sp--175 {
        margin-left: 175px !important;
    }
    .mgl-sp--180 {
        margin-left: 180px !important;
    }
    .mgl-sp--185 {
        margin-left: 185px !important;
    }
    .mgl-sp--190 {
        margin-left: 190px !important;
    }
    .mgl-sp--195 {
        margin-left: 195px !important;
    }
    .mgl-sp--200 {
        margin-left: 200px !important;
    }
}
@media screen and (max-width: 992px) {
    .mgl-sp--0_25gap {
        margin-left: var(--0_25gap) !important;
    }
    .mgl-sp--0_5gap {
        margin-left: var(--0_5gap) !important;
    }
    .mgl-sp--1gap {
        margin-left: var(--1gap) !important;
    }
    .mgl-sp--2gap {
        margin-left: var(--2gap) !important;
    }
    .mgl-sp--3gap {
        margin-left: var(--3gap) !important;
    }
    .mgl-sp--4gap {
        margin-left: var(--4gap) !important;
    }
}
/* ---------------------------------------------
*   margin-right
--------------------------------------------- */
.mgr--0_25gap {
    margin-right: var(--0_25gap) !important;
}

.mgr--0_5gap {
    margin-right: var(--0_5gap) !important;
}

.mgr--1gap {
    margin-right: var(--1gap) !important;
}

.mgr--2gap {
    margin-right: var(--2gap) !important;
}

.mgr--3gap {
    margin-right: var(--3gap) !important;
}

.mgr--4gap {
    margin-right: var(--4gap) !important;
}

.mgr-pc--0 {
    margin-right: 0 !important;
}

.mgr-pc--5 {
    margin-right: 5px !important;
}

.mgr-pc--10 {
    margin-right: 10px !important;
}

.mgr-pc--15 {
    margin-right: 15px !important;
}

.mgr-pc--20 {
    margin-right: 20px !important;
}

.mgr-pc--25 {
    margin-right: 25px !important;
}

.mgr-pc--30 {
    margin-right: 30px !important;
}

.mgr-pc--35 {
    margin-right: 35px !important;
}

.mgr-pc--40 {
    margin-right: 40px !important;
}

.mgr-pc--45 {
    margin-right: 45px !important;
}

.mgr-pc--50 {
    margin-right: 50px !important;
}

.mgr-pc--55 {
    margin-right: 55px !important;
}

.mgr-pc--60 {
    margin-right: 60px !important;
}

.mgr-pc--65 {
    margin-right: 65px !important;
}

.mgr-pc--70 {
    margin-right: 70px !important;
}

.mgr-pc--75 {
    margin-right: 75px !important;
}

.mgr-pc--80 {
    margin-right: 80px !important;
}

.mgr-pc--85 {
    margin-right: 85px !important;
}

.mgr-pc--90 {
    margin-right: 90px !important;
}

.mgr-pc--95 {
    margin-right: 95px !important;
}

.mgr-pc--100 {
    margin-right: 100px !important;
}

.mgr-pc--105 {
    margin-right: 105px !important;
}

.mgr-pc--110 {
    margin-right: 110px !important;
}

.mgr-pc--115 {
    margin-right: 115px !important;
}

.mgr-pc--120 {
    margin-right: 120px !important;
}

.mgr-pc--125 {
    margin-right: 125px !important;
}

.mgr-pc--130 {
    margin-right: 130px !important;
}

.mgr-pc--135 {
    margin-right: 135px !important;
}

.mgr-pc--140 {
    margin-right: 140px !important;
}

.mgr-pc--145 {
    margin-right: 145px !important;
}

.mgr-pc--150 {
    margin-right: 150px !important;
}

.mgr-pc--155 {
    margin-right: 155px !important;
}

.mgr-pc--160 {
    margin-right: 160px !important;
}

.mgr-pc--165 {
    margin-right: 165px !important;
}

.mgr-pc--170 {
    margin-right: 170px !important;
}

.mgr-pc--175 {
    margin-right: 175px !important;
}

.mgr-pc--180 {
    margin-right: 180px !important;
}

.mgr-pc--185 {
    margin-right: 185px !important;
}

.mgr-pc--190 {
    margin-right: 190px !important;
}

.mgr-pc--195 {
    margin-right: 195px !important;
}

.mgr-pc--200 {
    margin-right: 200px !important;
}

@media screen and (max-width: 992px) {
    .mgr-sp--0 {
        margin-right: 0 !important;
    }
    .mgr-sp--5 {
        margin-right: 5px !important;
    }
    .mgr-sp--10 {
        margin-right: 10px !important;
    }
    .mgr-sp--15 {
        margin-right: 15px !important;
    }
    .mgr-sp--20 {
        margin-right: 20px !important;
    }
    .mgr-sp--25 {
        margin-right: 25px !important;
    }
    .mgr-sp--30 {
        margin-right: 30px !important;
    }
    .mgr-sp--35 {
        margin-right: 35px !important;
    }
    .mgr-sp--40 {
        margin-right: 40px !important;
    }
    .mgr-sp--45 {
        margin-right: 45px !important;
    }
    .mgr-sp--50 {
        margin-right: 50px !important;
    }
    .mgr-sp--55 {
        margin-right: 55px !important;
    }
    .mgr-sp--60 {
        margin-right: 60px !important;
    }
    .mgr-sp--65 {
        margin-right: 65px !important;
    }
    .mgr-sp--70 {
        margin-right: 70px !important;
    }
    .mgr-sp--75 {
        margin-right: 75px !important;
    }
    .mgr-sp--80 {
        margin-right: 80px !important;
    }
    .mgr-sp--85 {
        margin-right: 85px !important;
    }
    .mgr-sp--90 {
        margin-right: 90px !important;
    }
    .mgr-sp--95 {
        margin-right: 95px !important;
    }
    .mgr-sp--100 {
        margin-right: 100px !important;
    }
    .mgr-sp--105 {
        margin-right: 105px !important;
    }
    .mgr-sp--110 {
        margin-right: 110px !important;
    }
    .mgr-sp--115 {
        margin-right: 115px !important;
    }
    .mgr-sp--120 {
        margin-right: 120px !important;
    }
    .mgr-sp--125 {
        margin-right: 125px !important;
    }
    .mgr-sp--130 {
        margin-right: 130px !important;
    }
    .mgr-sp--135 {
        margin-right: 135px !important;
    }
    .mgr-sp--140 {
        margin-right: 140px !important;
    }
    .mgr-sp--145 {
        margin-right: 145px !important;
    }
    .mgr-sp--150 {
        margin-right: 150px !important;
    }
    .mgr-sp--155 {
        margin-right: 155px !important;
    }
    .mgr-sp--160 {
        margin-right: 160px !important;
    }
    .mgr-sp--165 {
        margin-right: 165px !important;
    }
    .mgr-sp--170 {
        margin-right: 170px !important;
    }
    .mgr-sp--175 {
        margin-right: 175px !important;
    }
    .mgr-sp--180 {
        margin-right: 180px !important;
    }
    .mgr-sp--185 {
        margin-right: 185px !important;
    }
    .mgr-sp--190 {
        margin-right: 190px !important;
    }
    .mgr-sp--195 {
        margin-right: 195px !important;
    }
    .mgr-sp--200 {
        margin-right: 200px !important;
    }
}
@media screen and (max-width: 992px) {
    .mgr-sp--0_25gap {
        margin-right: var(--0_25gap) !important;
    }
    .mgr-sp--0_5gap {
        margin-right: var(--0_5gap) !important;
    }
    .mgr-sp--1gap {
        margin-right: var(--1gap) !important;
    }
    .mgr-sp--2gap {
        margin-right: var(--2gap) !important;
    }
    .mgr-sp--3gap {
        margin-right: var(--3gap) !important;
    }
    .mgr-sp--4gap {
        margin-right: var(--4gap) !important;
    }
}
/* ---------------------------------------------
*   margin-inline
--------------------------------------------- */
.margin-inline-auto {
    margin-inline: auto;
}

.margin-inline-initial {
    margin-inline: initial;
}

@media screen and (min-width: 993px) {
    .margin-inline-initial-pc {
        margin-inline: initial;
    }
}

@media screen and (max-width: 992px) {
    .margin-inline-initial-sp {
        margin-inline: initial;
    }
}

@media screen and (max-width: 992px) {
    .margin-inline-sp--minus-side-pd {
        margin-inline: -16px;
    }
}

/* ---------------------------------------------
*   padding-top
--------------------------------------------- */
.pdt--0_25gap {
    padding-top: var(--0_25gap) !important;
}

.pdt--0_5gap {
    padding-top: var(--0_5gap) !important;
}

.pdt--1gap {
    padding-top: var(--1gap) !important;
}

.pdt--2gap {
    padding-top: var(--2gap) !important;
}

.pdt--3gap {
    padding-top: var(--3gap) !important;
}

.pdt--4gap {
    padding-top: var(--4gap) !important;
}

.pdt-pc--0 {
    padding-top: 0 !important;
}

.pdt-pc--5 {
    padding-top: 5px !important;
}

.pdt-pc--10 {
    padding-top: 10px !important;
}

.pdt-pc--15 {
    padding-top: 15px !important;
}

.pdt-pc--20 {
    padding-top: 20px !important;
}

.pdt-pc--25 {
    padding-top: 25px !important;
}

.pdt-pc--30 {
    padding-top: 30px !important;
}

.pdt-pc--35 {
    padding-top: 35px !important;
}

.pdt-pc--40 {
    padding-top: 40px !important;
}

.pdt-pc--45 {
    padding-top: 45px !important;
}

.pdt-pc--50 {
    padding-top: 50px !important;
}

.pdt-pc--55 {
    padding-top: 55px !important;
}

.pdt-pc--60 {
    padding-top: 60px !important;
}

.pdt-pc--65 {
    padding-top: 65px !important;
}

.pdt-pc--70 {
    padding-top: 70px !important;
}

.pdt-pc--75 {
    padding-top: 75px !important;
}

.pdt-pc--80 {
    padding-top: 80px !important;
}

.pdt-pc--85 {
    padding-top: 85px !important;
}

.pdt-pc--90 {
    padding-top: 90px !important;
}

.pdt-pc--95 {
    padding-top: 95px !important;
}

.pdt-pc--100 {
    padding-top: 100px !important;
}

.pdt-pc--105 {
    padding-top: 105px !important;
}

.pdt-pc--110 {
    padding-top: 110px !important;
}

.pdt-pc--115 {
    padding-top: 115px !important;
}

.pdt-pc--120 {
    padding-top: 120px !important;
}

.pdt-pc--125 {
    padding-top: 125px !important;
}

.pdt-pc--130 {
    padding-top: 130px !important;
}

.pdt-pc--135 {
    padding-top: 135px !important;
}

.pdt-pc--140 {
    padding-top: 140px !important;
}

.pdt-pc--145 {
    padding-top: 145px !important;
}

.pdt-pc--150 {
    padding-top: 150px !important;
}

.pdt-pc--155 {
    padding-top: 155px !important;
}

.pdt-pc--160 {
    padding-top: 160px !important;
}

.pdt-pc--165 {
    padding-top: 165px !important;
}

.pdt-pc--170 {
    padding-top: 170px !important;
}

.pdt-pc--175 {
    padding-top: 175px !important;
}

.pdt-pc--180 {
    padding-top: 180px !important;
}

.pdt-pc--185 {
    padding-top: 185px !important;
}

.pdt-pc--190 {
    padding-top: 190px !important;
}

.pdt-pc--195 {
    padding-top: 195px !important;
}

.pdt-pc--200 {
    padding-top: 200px !important;
}

@media screen and (max-width: 992px) {
    .pdt-sp--0 {
        padding-top: 0 !important;
    }
    .pdt-sp--5 {
        padding-top: 5px !important;
    }
    .pdt-sp--10 {
        padding-top: 10px !important;
    }
    .pdt-sp--15 {
        padding-top: 15px !important;
    }
    .pdt-sp--20 {
        padding-top: 20px !important;
    }
    .pdt-sp--25 {
        padding-top: 25px !important;
    }
    .pdt-sp--30 {
        padding-top: 30px !important;
    }
    .pdt-sp--35 {
        padding-top: 35px !important;
    }
    .pdt-sp--40 {
        padding-top: 40px !important;
    }
    .pdt-sp--45 {
        padding-top: 45px !important;
    }
    .pdt-sp--50 {
        padding-top: 50px !important;
    }
    .pdt-sp--55 {
        padding-top: 55px !important;
    }
    .pdt-sp--60 {
        padding-top: 60px !important;
    }
    .pdt-sp--65 {
        padding-top: 65px !important;
    }
    .pdt-sp--70 {
        padding-top: 70px !important;
    }
    .pdt-sp--75 {
        padding-top: 75px !important;
    }
    .pdt-sp--80 {
        padding-top: 80px !important;
    }
    .pdt-sp--85 {
        padding-top: 85px !important;
    }
    .pdt-sp--90 {
        padding-top: 90px !important;
    }
    .pdt-sp--95 {
        padding-top: 95px !important;
    }
    .pdt-sp--100 {
        padding-top: 100px !important;
    }
    .pdt-sp--105 {
        padding-top: 105px !important;
    }
    .pdt-sp--110 {
        padding-top: 110px !important;
    }
    .pdt-sp--115 {
        padding-top: 115px !important;
    }
    .pdt-sp--120 {
        padding-top: 120px !important;
    }
    .pdt-sp--125 {
        padding-top: 125px !important;
    }
    .pdt-sp--130 {
        padding-top: 130px !important;
    }
    .pdt-sp--135 {
        padding-top: 135px !important;
    }
    .pdt-sp--140 {
        padding-top: 140px !important;
    }
    .pdt-sp--145 {
        padding-top: 145px !important;
    }
    .pdt-sp--150 {
        padding-top: 150px !important;
    }
    .pdt-sp--155 {
        padding-top: 155px !important;
    }
    .pdt-sp--160 {
        padding-top: 160px !important;
    }
    .pdt-sp--165 {
        padding-top: 165px !important;
    }
    .pdt-sp--170 {
        padding-top: 170px !important;
    }
    .pdt-sp--175 {
        padding-top: 175px !important;
    }
    .pdt-sp--180 {
        padding-top: 180px !important;
    }
    .pdt-sp--185 {
        padding-top: 185px !important;
    }
    .pdt-sp--190 {
        padding-top: 190px !important;
    }
    .pdt-sp--195 {
        padding-top: 195px !important;
    }
    .pdt-sp--200 {
        padding-top: 200px !important;
    }
}
@media screen and (max-width: 992px) {
    .pdt-sp--0_25gap {
        padding-top: var(--0_25gap) !important;
    }
    .pdt-sp--0_5gap {
        padding-top: var(--0_5gap) !important;
    }
    .pdt-sp--1gap {
        padding-top: var(--1gap) !important;
    }
    .pdt-sp--2gap {
        padding-top: var(--2gap) !important;
    }
    .pdt-sp--3gap {
        padding-top: var(--3gap) !important;
    }
    .pdt-sp--4gap {
        padding-top: var(--4gap) !important;
    }
}
@media screen and (min-width: 993px) {
    .pdt-pc--52 {
        padding-top: 52px;
    }
}

/* ---------------------------------------------
*   padding-bottom
--------------------------------------------- */
.pdb--0_25gap {
    padding-bottom: var(--0_25gap) !important;
}

.pdb--0_5gap {
    padding-bottom: var(--0_5gap) !important;
}

.pdb--1gap {
    padding-bottom: var(--1gap) !important;
}

.pdb--2gap {
    padding-bottom: var(--2gap) !important;
}

.pdb--3gap {
    padding-bottom: var(--3gap) !important;
}

.pdb--4gap {
    padding-bottom: var(--4gap) !important;
}

.pdb-pc--0 {
    padding-bottom: 0 !important;
}

.pdb-pc--5 {
    padding-bottom: 5px !important;
}

.pdb-pc--10 {
    padding-bottom: 10px !important;
}

.pdb-pc--15 {
    padding-bottom: 15px !important;
}

.pdb-pc--20 {
    padding-bottom: 20px !important;
}

.pdb-pc--25 {
    padding-bottom: 25px !important;
}

.pdb-pc--30 {
    padding-bottom: 30px !important;
}

.pdb-pc--35 {
    padding-bottom: 35px !important;
}

.pdb-pc--40 {
    padding-bottom: 40px !important;
}

.pdb-pc--45 {
    padding-bottom: 45px !important;
}

.pdb-pc--50 {
    padding-bottom: 50px !important;
}

.pdb-pc--55 {
    padding-bottom: 55px !important;
}

.pdb-pc--60 {
    padding-bottom: 60px !important;
}

.pdb-pc--65 {
    padding-bottom: 65px !important;
}

.pdb-pc--70 {
    padding-bottom: 70px !important;
}

.pdb-pc--75 {
    padding-bottom: 75px !important;
}

.pdb-pc--80 {
    padding-bottom: 80px !important;
}

.pdb-pc--85 {
    padding-bottom: 85px !important;
}

.pdb-pc--90 {
    padding-bottom: 90px !important;
}

.pdb-pc--95 {
    padding-bottom: 95px !important;
}

.pdb-pc--100 {
    padding-bottom: 100px !important;
}

.pdb-pc--105 {
    padding-bottom: 105px !important;
}

.pdb-pc--110 {
    padding-bottom: 110px !important;
}

.pdb-pc--115 {
    padding-bottom: 115px !important;
}

.pdb-pc--120 {
    padding-bottom: 120px !important;
}

.pdb-pc--125 {
    padding-bottom: 125px !important;
}

.pdb-pc--130 {
    padding-bottom: 130px !important;
}

.pdb-pc--135 {
    padding-bottom: 135px !important;
}

.pdb-pc--140 {
    padding-bottom: 140px !important;
}

.pdb-pc--145 {
    padding-bottom: 145px !important;
}

.pdb-pc--150 {
    padding-bottom: 150px !important;
}

.pdb-pc--155 {
    padding-bottom: 155px !important;
}

.pdb-pc--160 {
    padding-bottom: 160px !important;
}

.pdb-pc--165 {
    padding-bottom: 165px !important;
}

.pdb-pc--170 {
    padding-bottom: 170px !important;
}

.pdb-pc--175 {
    padding-bottom: 175px !important;
}

.pdb-pc--180 {
    padding-bottom: 180px !important;
}

.pdb-pc--185 {
    padding-bottom: 185px !important;
}

.pdb-pc--190 {
    padding-bottom: 190px !important;
}

.pdb-pc--195 {
    padding-bottom: 195px !important;
}

.pdb-pc--200 {
    padding-bottom: 200px !important;
}

@media screen and (max-width: 992px) {
    .pdb-sp--0 {
        padding-bottom: 0 !important;
    }
    .pdb-sp--5 {
        padding-bottom: 5px !important;
    }
    .pdb-sp--10 {
        padding-bottom: 10px !important;
    }
    .pdb-sp--15 {
        padding-bottom: 15px !important;
    }
    .pdb-sp--20 {
        padding-bottom: 20px !important;
    }
    .pdb-sp--25 {
        padding-bottom: 25px !important;
    }
    .pdb-sp--30 {
        padding-bottom: 30px !important;
    }
    .pdb-sp--35 {
        padding-bottom: 35px !important;
    }
    .pdb-sp--40 {
        padding-bottom: 40px !important;
    }
    .pdb-sp--45 {
        padding-bottom: 45px !important;
    }
    .pdb-sp--50 {
        padding-bottom: 50px !important;
    }
    .pdb-sp--55 {
        padding-bottom: 55px !important;
    }
    .pdb-sp--60 {
        padding-bottom: 60px !important;
    }
    .pdb-sp--65 {
        padding-bottom: 65px !important;
    }
    .pdb-sp--70 {
        padding-bottom: 70px !important;
    }
    .pdb-sp--75 {
        padding-bottom: 75px !important;
    }
    .pdb-sp--80 {
        padding-bottom: 80px !important;
    }
    .pdb-sp--85 {
        padding-bottom: 85px !important;
    }
    .pdb-sp--90 {
        padding-bottom: 90px !important;
    }
    .pdb-sp--95 {
        padding-bottom: 95px !important;
    }
    .pdb-sp--100 {
        padding-bottom: 100px !important;
    }
    .pdb-sp--105 {
        padding-bottom: 105px !important;
    }
    .pdb-sp--110 {
        padding-bottom: 110px !important;
    }
    .pdb-sp--115 {
        padding-bottom: 115px !important;
    }
    .pdb-sp--120 {
        padding-bottom: 120px !important;
    }
    .pdb-sp--125 {
        padding-bottom: 125px !important;
    }
    .pdb-sp--130 {
        padding-bottom: 130px !important;
    }
    .pdb-sp--135 {
        padding-bottom: 135px !important;
    }
    .pdb-sp--140 {
        padding-bottom: 140px !important;
    }
    .pdb-sp--145 {
        padding-bottom: 145px !important;
    }
    .pdb-sp--150 {
        padding-bottom: 150px !important;
    }
    .pdb-sp--155 {
        padding-bottom: 155px !important;
    }
    .pdb-sp--160 {
        padding-bottom: 160px !important;
    }
    .pdb-sp--165 {
        padding-bottom: 165px !important;
    }
    .pdb-sp--170 {
        padding-bottom: 170px !important;
    }
    .pdb-sp--175 {
        padding-bottom: 175px !important;
    }
    .pdb-sp--180 {
        padding-bottom: 180px !important;
    }
    .pdb-sp--185 {
        padding-bottom: 185px !important;
    }
    .pdb-sp--190 {
        padding-bottom: 190px !important;
    }
    .pdb-sp--195 {
        padding-bottom: 195px !important;
    }
    .pdb-sp--200 {
        padding-bottom: 200px !important;
    }
}
@media screen and (max-width: 992px) {
    .pdb-sp--0_25gap {
        padding-bottom: var(--0_25gap) !important;
    }
    .pdb-sp--0_5gap {
        padding-bottom: var(--0_5gap) !important;
    }
    .pdb-sp--1gap {
        padding-bottom: var(--1gap) !important;
    }
    .pdb-sp--2gap {
        padding-bottom: var(--2gap) !important;
    }
    .pdb-sp--3gap {
        padding-bottom: var(--3gap) !important;
    }
    .pdb-sp--4gap {
        padding-bottom: var(--4gap) !important;
    }
}
/* ---------------------------------------------
*   padding-right
--------------------------------------------- */
.pdr--0_25gap {
    padding-right: var(--0_25gap) !important;
}

.pdr--0_5gap {
    padding-right: var(--0_5gap) !important;
}

.pdr--1gap {
    padding-right: var(--1gap) !important;
}

.pdr--2gap {
    padding-right: var(--2gap) !important;
}

.pdr--3gap {
    padding-right: var(--3gap) !important;
}

.pdr--4gap {
    padding-right: var(--4gap) !important;
}

.pdr-pc--0 {
    padding-right: 0 !important;
}

.pdr-pc--5 {
    padding-right: 5px !important;
}

.pdr-pc--10 {
    padding-right: 10px !important;
}

.pdr-pc--15 {
    padding-right: 15px !important;
}

.pdr-pc--20 {
    padding-right: 20px !important;
}

.pdr-pc--25 {
    padding-right: 25px !important;
}

.pdr-pc--30 {
    padding-right: 30px !important;
}

.pdr-pc--35 {
    padding-right: 35px !important;
}

.pdr-pc--40 {
    padding-right: 40px !important;
}

.pdr-pc--45 {
    padding-right: 45px !important;
}

.pdr-pc--50 {
    padding-right: 50px !important;
}

.pdr-pc--55 {
    padding-right: 55px !important;
}

.pdr-pc--60 {
    padding-right: 60px !important;
}

.pdr-pc--65 {
    padding-right: 65px !important;
}

.pdr-pc--70 {
    padding-right: 70px !important;
}

.pdr-pc--75 {
    padding-right: 75px !important;
}

.pdr-pc--80 {
    padding-right: 80px !important;
}

.pdr-pc--85 {
    padding-right: 85px !important;
}

.pdr-pc--90 {
    padding-right: 90px !important;
}

.pdr-pc--95 {
    padding-right: 95px !important;
}

.pdr-pc--100 {
    padding-right: 100px !important;
}

.pdr-pc--105 {
    padding-right: 105px !important;
}

.pdr-pc--110 {
    padding-right: 110px !important;
}

.pdr-pc--115 {
    padding-right: 115px !important;
}

.pdr-pc--120 {
    padding-right: 120px !important;
}

.pdr-pc--125 {
    padding-right: 125px !important;
}

.pdr-pc--130 {
    padding-right: 130px !important;
}

.pdr-pc--135 {
    padding-right: 135px !important;
}

.pdr-pc--140 {
    padding-right: 140px !important;
}

.pdr-pc--145 {
    padding-right: 145px !important;
}

.pdr-pc--150 {
    padding-right: 150px !important;
}

.pdr-pc--155 {
    padding-right: 155px !important;
}

.pdr-pc--160 {
    padding-right: 160px !important;
}

.pdr-pc--165 {
    padding-right: 165px !important;
}

.pdr-pc--170 {
    padding-right: 170px !important;
}

.pdr-pc--175 {
    padding-right: 175px !important;
}

.pdr-pc--180 {
    padding-right: 180px !important;
}

.pdr-pc--185 {
    padding-right: 185px !important;
}

.pdr-pc--190 {
    padding-right: 190px !important;
}

.pdr-pc--195 {
    padding-right: 195px !important;
}

.pdr-pc--200 {
    padding-right: 200px !important;
}

@media screen and (max-width: 992px) {
    .pdr-sp--0 {
        padding-right: 0 !important;
    }
    .pdr-sp--5 {
        padding-right: 5px !important;
    }
    .pdr-sp--10 {
        padding-right: 10px !important;
    }
    .pdr-sp--15 {
        padding-right: 15px !important;
    }
    .pdr-sp--20 {
        padding-right: 20px !important;
    }
    .pdr-sp--25 {
        padding-right: 25px !important;
    }
    .pdr-sp--30 {
        padding-right: 30px !important;
    }
    .pdr-sp--35 {
        padding-right: 35px !important;
    }
    .pdr-sp--40 {
        padding-right: 40px !important;
    }
    .pdr-sp--45 {
        padding-right: 45px !important;
    }
    .pdr-sp--50 {
        padding-right: 50px !important;
    }
    .pdr-sp--55 {
        padding-right: 55px !important;
    }
    .pdr-sp--60 {
        padding-right: 60px !important;
    }
    .pdr-sp--65 {
        padding-right: 65px !important;
    }
    .pdr-sp--70 {
        padding-right: 70px !important;
    }
    .pdr-sp--75 {
        padding-right: 75px !important;
    }
    .pdr-sp--80 {
        padding-right: 80px !important;
    }
    .pdr-sp--85 {
        padding-right: 85px !important;
    }
    .pdr-sp--90 {
        padding-right: 90px !important;
    }
    .pdr-sp--95 {
        padding-right: 95px !important;
    }
    .pdr-sp--100 {
        padding-right: 100px !important;
    }
    .pdr-sp--105 {
        padding-right: 105px !important;
    }
    .pdr-sp--110 {
        padding-right: 110px !important;
    }
    .pdr-sp--115 {
        padding-right: 115px !important;
    }
    .pdr-sp--120 {
        padding-right: 120px !important;
    }
    .pdr-sp--125 {
        padding-right: 125px !important;
    }
    .pdr-sp--130 {
        padding-right: 130px !important;
    }
    .pdr-sp--135 {
        padding-right: 135px !important;
    }
    .pdr-sp--140 {
        padding-right: 140px !important;
    }
    .pdr-sp--145 {
        padding-right: 145px !important;
    }
    .pdr-sp--150 {
        padding-right: 150px !important;
    }
    .pdr-sp--155 {
        padding-right: 155px !important;
    }
    .pdr-sp--160 {
        padding-right: 160px !important;
    }
    .pdr-sp--165 {
        padding-right: 165px !important;
    }
    .pdr-sp--170 {
        padding-right: 170px !important;
    }
    .pdr-sp--175 {
        padding-right: 175px !important;
    }
    .pdr-sp--180 {
        padding-right: 180px !important;
    }
    .pdr-sp--185 {
        padding-right: 185px !important;
    }
    .pdr-sp--190 {
        padding-right: 190px !important;
    }
    .pdr-sp--195 {
        padding-right: 195px !important;
    }
    .pdr-sp--200 {
        padding-right: 200px !important;
    }
}
@media screen and (max-width: 992px) {
    .pdr-sp--0_25gap {
        padding-right: var(--0_25gap) !important;
    }
    .pdr-sp--0_5gap {
        padding-right: var(--0_5gap) !important;
    }
    .pdr-sp--1gap {
        padding-right: var(--1gap) !important;
    }
    .pdr-sp--2gap {
        padding-right: var(--2gap) !important;
    }
    .pdr-sp--3gap {
        padding-right: var(--3gap) !important;
    }
    .pdr-sp--4gap {
        padding-right: var(--4gap) !important;
    }
}
/* ---------------------------------------------
*   padding-left
--------------------------------------------- */
.pdl--0_25gap {
    padding-left: var(--0_25gap) !important;
}

.pdl--0_5gap {
    padding-left: var(--0_5gap) !important;
}

.pdl--1gap {
    padding-left: var(--1gap) !important;
}

.pdl--2gap {
    padding-left: var(--2gap) !important;
}

.pdl--3gap {
    padding-left: var(--3gap) !important;
}

.pdl--4gap {
    padding-left: var(--4gap) !important;
}

.pdl-pc--0 {
    padding-left: 0 !important;
}

.pdl-pc--5 {
    padding-left: 5px !important;
}

.pdl-pc--10 {
    padding-left: 10px !important;
}

.pdl-pc--15 {
    padding-left: 15px !important;
}

.pdl-pc--20 {
    padding-left: 20px !important;
}

.pdl-pc--25 {
    padding-left: 25px !important;
}

.pdl-pc--30 {
    padding-left: 30px !important;
}

.pdl-pc--35 {
    padding-left: 35px !important;
}

.pdl-pc--40 {
    padding-left: 40px !important;
}

.pdl-pc--45 {
    padding-left: 45px !important;
}

.pdl-pc--50 {
    padding-left: 50px !important;
}

.pdl-pc--55 {
    padding-left: 55px !important;
}

.pdl-pc--60 {
    padding-left: 60px !important;
}

.pdl-pc--65 {
    padding-left: 65px !important;
}

.pdl-pc--70 {
    padding-left: 70px !important;
}

.pdl-pc--75 {
    padding-left: 75px !important;
}

.pdl-pc--80 {
    padding-left: 80px !important;
}

.pdl-pc--85 {
    padding-left: 85px !important;
}

.pdl-pc--90 {
    padding-left: 90px !important;
}

.pdl-pc--95 {
    padding-left: 95px !important;
}

.pdl-pc--100 {
    padding-left: 100px !important;
}

.pdl-pc--105 {
    padding-left: 105px !important;
}

.pdl-pc--110 {
    padding-left: 110px !important;
}

.pdl-pc--115 {
    padding-left: 115px !important;
}

.pdl-pc--120 {
    padding-left: 120px !important;
}

.pdl-pc--125 {
    padding-left: 125px !important;
}

.pdl-pc--130 {
    padding-left: 130px !important;
}

.pdl-pc--135 {
    padding-left: 135px !important;
}

.pdl-pc--140 {
    padding-left: 140px !important;
}

.pdl-pc--145 {
    padding-left: 145px !important;
}

.pdl-pc--150 {
    padding-left: 150px !important;
}

.pdl-pc--155 {
    padding-left: 155px !important;
}

.pdl-pc--160 {
    padding-left: 160px !important;
}

.pdl-pc--165 {
    padding-left: 165px !important;
}

.pdl-pc--170 {
    padding-left: 170px !important;
}

.pdl-pc--175 {
    padding-left: 175px !important;
}

.pdl-pc--180 {
    padding-left: 180px !important;
}

.pdl-pc--185 {
    padding-left: 185px !important;
}

.pdl-pc--190 {
    padding-left: 190px !important;
}

.pdl-pc--195 {
    padding-left: 195px !important;
}

.pdl-pc--200 {
    padding-left: 200px !important;
}

@media screen and (max-width: 992px) {
    .pdl-sp--0 {
        padding-left: 0 !important;
    }
    .pdl-sp--5 {
        padding-left: 5px !important;
    }
    .pdl-sp--10 {
        padding-left: 10px !important;
    }
    .pdl-sp--15 {
        padding-left: 15px !important;
    }
    .pdl-sp--20 {
        padding-left: 20px !important;
    }
    .pdl-sp--25 {
        padding-left: 25px !important;
    }
    .pdl-sp--30 {
        padding-left: 30px !important;
    }
    .pdl-sp--35 {
        padding-left: 35px !important;
    }
    .pdl-sp--40 {
        padding-left: 40px !important;
    }
    .pdl-sp--45 {
        padding-left: 45px !important;
    }
    .pdl-sp--50 {
        padding-left: 50px !important;
    }
    .pdl-sp--55 {
        padding-left: 55px !important;
    }
    .pdl-sp--60 {
        padding-left: 60px !important;
    }
    .pdl-sp--65 {
        padding-left: 65px !important;
    }
    .pdl-sp--70 {
        padding-left: 70px !important;
    }
    .pdl-sp--75 {
        padding-left: 75px !important;
    }
    .pdl-sp--80 {
        padding-left: 80px !important;
    }
    .pdl-sp--85 {
        padding-left: 85px !important;
    }
    .pdl-sp--90 {
        padding-left: 90px !important;
    }
    .pdl-sp--95 {
        padding-left: 95px !important;
    }
    .pdl-sp--100 {
        padding-left: 100px !important;
    }
    .pdl-sp--105 {
        padding-left: 105px !important;
    }
    .pdl-sp--110 {
        padding-left: 110px !important;
    }
    .pdl-sp--115 {
        padding-left: 115px !important;
    }
    .pdl-sp--120 {
        padding-left: 120px !important;
    }
    .pdl-sp--125 {
        padding-left: 125px !important;
    }
    .pdl-sp--130 {
        padding-left: 130px !important;
    }
    .pdl-sp--135 {
        padding-left: 135px !important;
    }
    .pdl-sp--140 {
        padding-left: 140px !important;
    }
    .pdl-sp--145 {
        padding-left: 145px !important;
    }
    .pdl-sp--150 {
        padding-left: 150px !important;
    }
    .pdl-sp--155 {
        padding-left: 155px !important;
    }
    .pdl-sp--160 {
        padding-left: 160px !important;
    }
    .pdl-sp--165 {
        padding-left: 165px !important;
    }
    .pdl-sp--170 {
        padding-left: 170px !important;
    }
    .pdl-sp--175 {
        padding-left: 175px !important;
    }
    .pdl-sp--180 {
        padding-left: 180px !important;
    }
    .pdl-sp--185 {
        padding-left: 185px !important;
    }
    .pdl-sp--190 {
        padding-left: 190px !important;
    }
    .pdl-sp--195 {
        padding-left: 195px !important;
    }
    .pdl-sp--200 {
        padding-left: 200px !important;
    }
}
@media screen and (max-width: 992px) {
    .pdl-sp--0_25gap {
        padding-left: var(--0_25gap) !important;
    }
    .pdl-sp--0_5gap {
        padding-left: var(--0_5gap) !important;
    }
    .pdl-sp--1gap {
        padding-left: var(--1gap) !important;
    }
    .pdl-sp--2gap {
        padding-left: var(--2gap) !important;
    }
    .pdl-sp--3gap {
        padding-left: var(--3gap) !important;
    }
    .pdl-sp--4gap {
        padding-left: var(--4gap) !important;
    }
}
/* --------ニュース用-------- */
.data_table_news>table {
    table-layout: fixed;
    width: 100%;
    border-top: 1px solid #EFEFEF;
    border-right: 1px solid #EFEFEF;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
tr {
    display: table-row;
    /* vertical-align: inherit; */
    unicode-bidi: isolate;
    /* border-color: inherit; */
}
.data_table_news th[scope=col] {
    background-color: #FAFAFA;
}
.data_table_news th {
    font-weight: 500;
    text-align: center;
}
.data_table_news td {
    padding: 12px 0.5em;
    border-left: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
    font-size: 0.875rem;
}
.data_table_news th {
    padding: 12px 0.5em;
    border-left: 1px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF;
    font-size: 0.875rem;
}

th{
    vertical-align: middle;
}

/* youtube */

.youtube {
    width: 100%;
    aspect-ratio: 16 / 9;
}
  .youtube iframe {
    width: 100%;
    height: 100%;
}