:root{--background:#ffffff;--foreground:#171717;--main-color:#db0917;--tab-gray:#989898;--box-gray:#f2f2f4;--table-gray:#e1e1e1;--mobile-table-gray:#e1e1e1;--hover-color:#f2f2f2;--primary-entry-color:#fa8000;--secondary-primary-entry-color:#0074c8;--url-color:#0074c8;--login-page-color:#ff1414;--footer-background-color:#595757}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed}}html{scroll-behavior:smooth}body{background-color:#f4f4f4;margin:0;padding:0}.loading-component{display:flex;justify-content:center;align-items:center;height:calc(100vh - 124px)}.menu-label,.mobile-toggle-menu{display:none}.jphs-header{position:-webkit-sticky;position:sticky;top:0;z-index:999;border-bottom:2px solid #eee;box-shadow:0 3px 6px rgba(0,0,0,.1607843137);display:flex;flex-direction:column}.jphs-header-spacer{display:flex;height:7px}.jphs-header-spacer .bar{flex:1 1;height:7px}.jphs-contents{display:flex;justify-content:space-between;align-items:center;background:white;padding:20px 24px 15px 17px;height:102px;gap:16px;width:100%}.jphs-logo-container{position:relative;width:235px;height:100%}.jphs-logo-container:hover{cursor:pointer;opacity:.8}.jphs-logo{height:40px;margin-right:8px}.jphs-logo-text{font-weight:700;color:var(--main-color);font-size:16px}.jphs-contents-right-area{flex-grow:1;gap:24px}.jphs-contents-right-area,.jphs-nav{display:flex;align-items:center;justify-content:flex-end}.jphs-nav{gap:16px;flex-wrap:wrap}.jphs-nav a{text-decoration:none;color:black;font-weight:700;font-size:14px;cursor:pointer}.jphs-nav a:hover{opacity:.8}.jphs-contents-mypage{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 7px;background-color:var(--main-color);height:60px;border-radius:11px;min-width:150px;cursor:pointer}.jphs-contents-mypage:hover{opacity:.8}.mypage-button{color:white!important;gap:8px;cursor:pointer;display:flex;align-items:center;font-weight:700;margin:auto}.warning{background-color:rgb(247,247,130)}.info{background-color:#101049}.info button{width:170px}.footer{background-color:var(--footer-background-color);color:white;text-align:center;height:20px;align-content:center}.footer-copyright{text-align:center;font-size:10px}.login-fixed-button{position:fixed;bottom:0;left:0;width:100%;max-width:500px;margin:auto;background-color:white;color:var(--main-color);font-weight:700;border:2px solid var(--main-color);border-radius:0;padding:16px 0;text-align:center;z-index:1000}.how-to-enter-body-pc,.how-to-enter-header-pc{display:block}.how-to-enter-body-mobile,.how-to-enter-header-mobile{display:none}.how-to-enter-title{font-size:72px;letter-spacing:-2.16px;font-weight:500;line-height:1;color:var(--login-page-color);text-align:center;padding:10px}.how-to-enter-sub{font-size:24px}.how-to-enter-sub,.how-to-enter-subText{font-weight:700;text-align:center;padding:10px}.how-to-enter-subText{font-size:16px}.content{background-color:white;padding:40px 80px;box-shadow:0 0 10px rgba(0,0,0,.1);min-height:calc(100vh - 124px);max-width:1300px;margin:auto}h1{text-align:center}.mypage-header{position:relative}.mypage-title{display:flex;align-items:center;flex-wrap:wrap;font-weight:700;gap:10px;margin-bottom:8px;h1{margin:0}}.mypage-season-switcher{position:relative;gap:10px;flex-wrap:wrap}.mypage-season-current,.mypage-season-switcher{display:inline-flex;align-items:center;max-width:100%;min-width:0}.mypage-season-current{gap:12px;min-height:48px;padding:6px 14px 6px 18px;border:2px solid var(--main-color);border-radius:12px;background:#fff}.mypage-season-current__label{display:inline-flex;align-items:center;flex-shrink:0;color:var(--main-color);font-size:15px;font-weight:700;line-height:1.2;white-space:nowrap}.mypage-season-current__options{display:inline-flex;align-items:center;gap:10px;max-width:560px;min-width:0;overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:none}.mypage-season-current__options::-webkit-scrollbar{display:none}.mypage-season-chip{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;min-height:34px;min-width:104px;justify-content:center;padding:4px 16px;border:1px solid #dcdcdc;border-radius:999px;background:#ededed;color:#888;cursor:pointer;font:inherit;font-size:15px;line-height:1.2;white-space:nowrap;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.mypage-season-chip:focus-visible,.mypage-season-chip:hover{background:#fff1f3;border-color:var(--main-color);color:var(--main-color);outline:none}.mypage-season-chip--current{background:var(--main-color);border-color:var(--main-color);color:#fff;cursor:default}.mypage-season-chip--current:focus-visible,.mypage-season-chip--current:hover{background:var(--main-color);color:#fff}.mypage-season-chip__range{font-weight:700}.mypage-season-chip__label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mypage-switcher{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 20px}.mypage-switcher__note{margin:0;color:#666;font-size:13px;line-height:1.6}.mypage-season-past{position:relative;display:inline-flex}.mypage-season-past__toggle{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border:1px solid var(--main-color);border-radius:999px;background:#fff;color:var(--main-color);cursor:pointer;font-size:12px;font-weight:700;white-space:nowrap;transition:background-color .2s ease,box-shadow .2s ease}.mypage-season-past__toggle:hover:not(:disabled){background:#fff1f3;box-shadow:0 1px 3px rgba(219,9,23,.14)}.mypage-season-past__toggle:disabled{opacity:.4;cursor:not-allowed}.mypage-season-past__chevron{flex-shrink:0;transition:transform .28s cubic-bezier(.22,1,.36,1)}.mypage-season-switcher--open .mypage-season-past__chevron{transform:rotate(180deg)}.mypage-season-past__dropdown{position:absolute;top:calc(100% + 6px);left:0;z-index:20;display:flex;flex-direction:column;gap:6px;width:min(260px,calc(100vw - 32px));padding:6px;background:#fff;border:1px solid #efd9dc;border-radius:10px;box-shadow:0 8px 22px rgba(0,0,0,.12);opacity:0;visibility:hidden;transform:translateY(-6px);pointer-events:none;transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s}.mypage-season-switcher--open .mypage-season-past__dropdown{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;transition:opacity .2s ease,transform .2s ease,visibility 0s}.mypage-season-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;width:100%;padding:10px 12px;border:1px solid #dcdcdc;border-radius:7px;background:#ededed;color:#888;cursor:pointer;font:inherit;text-align:left;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.mypage-season-row:focus-visible,.mypage-season-row:hover{background:#fff1f3;border-color:var(--main-color);color:var(--main-color);outline:none}.mypage-season-row--current{background:var(--main-color);border-color:var(--main-color);color:#fff;cursor:default}.mypage-season-row--current:focus-visible,.mypage-season-row--current:hover{background:var(--main-color);color:#fff}.mypage-season-row__range{font-size:15px;font-weight:700}.mypage-season-row__label{flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}@media (prefers-reduced-motion:reduce){.mypage-season-past__chevron,.mypage-season-past__dropdown{transition-duration:0s}}.mypage-entrance__lead{margin:0 0 16px;font-size:16px;font-weight:700}.mypage-entrance__cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;margin-bottom:16px}.mypage-entrance__cards--single{grid-template-columns:minmax(0,1fr)}@supports (grid-template-rows:subgrid){.mypage-entrance__cards:not(.mypage-entrance__cards--single){grid-template-rows:auto 1fr auto;row-gap:8px}.mypage-entrance__cards:not(.mypage-entrance__cards--single) .mypage-entrance-card{display:grid;grid-row:1/-1;grid-template-rows:subgrid}}.mypage-entrance-card{display:flex;flex-direction:column;gap:8px;padding:18px 20px;border:2px solid transparent;border-radius:8px;background:linear-gradient(#fff,#fff) padding-box,var(--mypage-card-border,linear-gradient(#e0e0e0,#e0e0e0)) border-box;box-shadow:0 1px 4px rgb(0 0 0/6%);color:inherit;text-decoration:none;transition:box-shadow .2s ease}.mypage-entrance-card:focus-visible,.mypage-entrance-card:hover{box-shadow:0 3px 10px rgb(0 0 0/18%);outline:none}.mypage-entrance-card--competition{--mypage-card-border:linear-gradient(135deg,#b78628,#e6c96a,#b78628)}.mypage-entrance-card--priority{--mypage-card-border:linear-gradient(var(--main-color),var(--main-color))}.mypage-entrance-card__title{font-size:18px;font-weight:700}.mypage-entrance-card__desc{color:#444;font-size:13px;line-height:1.7}.mypage-entrance-card__cta{margin-top:auto;padding-top:8px;color:var(--main-color);font-size:14px;font-weight:700}.mypage-entrance-card--wide{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title cta" "desc  cta";grid-column-gap:24px;column-gap:24px;grid-row-gap:4px;row-gap:4px;align-items:center;padding:14px 20px}.mypage-entrance-card--wide .mypage-entrance-card__title{grid-area:title;font-size:16px}.mypage-entrance-card--wide .mypage-entrance-card__desc{grid-area:desc}.mypage-entrance-card--wide .mypage-entrance-card__cta{grid-area:cta;margin-top:0;padding-top:0;white-space:nowrap}.mypage-branch-topbar{justify-content:space-between;gap:8px 20px;margin-bottom:10px}.mypage-branch-topbar,.mypage-breadcrumb{display:flex;flex-wrap:wrap;align-items:center}.mypage-breadcrumb{gap:8px;font-size:13px}.mypage-breadcrumb a{color:var(--main-color);text-decoration:underline}.mypage-breadcrumb span[aria-hidden=true]{color:#aaa}.mypage-branch-heading{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px}.mypage-branch-heading h2{margin:0;font-size:20px}.mypage-branch-heading__unit{padding:2px 8px;border:1px solid var(--main-color);border-radius:4px;color:var(--main-color);font-size:12px;font-weight:700;white-space:nowrap}.mypage-branch-caption{margin:0 0 14px;color:#444;font-size:13px;line-height:1.8}.mypage-branch-links{display:flex;flex-wrap:wrap;gap:10px 18px}.mypage-branch-links__item{color:var(--main-color);font-size:13px;font-weight:700;text-decoration:underline}.mypage-age-category{margin:8px 0 0;font-size:15px;font-weight:700}.mypage-age-category__note{margin-left:6px;font-size:.8em;font-weight:400}@media screen and (max-width:767px){.mypage-entrance__cards,.mypage-entrance__cards--single{grid-template-columns:minmax(0,1fr)}.mypage-entrance__cards:not(.mypage-entrance__cards--single){grid-template-rows:none;row-gap:16px}.mypage-entrance__cards:not(.mypage-entrance__cards--single) .mypage-entrance-card{display:flex;grid-row:auto;gap:8px}.mypage-entrance-card--wide{grid-template-columns:minmax(0,1fr);grid-template-areas:"title" "desc" "cta";padding:18px 20px}.mypage-entrance-card--wide .mypage-entrance-card__cta{padding-top:8px}.mypage-branch-links{display:none}.mypage-switcher{flex-direction:column;align-items:flex-start}.mypage-season-chip{min-width:76px;padding:4px 12px}}.season-info{position:relative;display:flex;flex-direction:column;gap:6px;margin:10px 0 12px;padding:10px 14px 11px;background:#faf7f7;border:1px solid #efd9dc;border-left:4px solid var(--main-color);border-radius:12px;box-shadow:0 1px 4px rgba(0,0,0,.04);max-width:560px}.season-info__label{color:var(--main-color);font-size:11px;font-weight:700;letter-spacing:.08em}.season-info__main{display:flex;align-items:center;justify-content:space-between;gap:12px}.season-info__title{display:flex;align-items:baseline;flex-wrap:wrap;flex:1 1;gap:8px;margin:0;color:#222;font-size:23px;font-weight:700;letter-spacing:.01em}.season-info__range{line-height:1.2}.season-info__suffix{color:#555;font-size:.78em;font-weight:600}.mypage-edit-button.season-info__button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:112px;height:32px;padding:0 13px;border:1px solid var(--main-color);border-radius:999px;background:#fff;color:var(--main-color);cursor:pointer;font-size:13px;font-weight:700;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}.mypage-edit-button.season-info__button:hover{background-color:#fff1f3;box-shadow:0 1px 3px rgba(219,9,23,.14)}.mypage-edit-button.season-info__button:disabled{border-color:#c8c8c8;color:#777;cursor:not-allowed;background:#f5f5f5;box-shadow:none}.season-info__dropdown{z-index:20;top:calc(100% - 2px);right:14px;display:flex;flex-direction:column;width:min(260px,calc(100% - 28px));padding:6px;border:1px solid #efd9dc;border-radius:10px;box-shadow:0 8px 22px rgba(0,0,0,.12)}.season-info__option{align-items:baseline;gap:10px;padding:10px 12px;border:0;border-radius:7px;background:#fff;color:#222;font:inherit;transition:background-color .2s ease,color .2s ease}.season-info__option:focus-visible,.season-info__option:hover{background:#fff1f3;color:var(--main-color);outline:none}.season-info__option--current{background:var(--main-color);color:#fff;cursor:default}.season-info__option--current:focus-visible,.season-info__option--current:hover{background:var(--main-color);color:#fff}.season-info__option-range{font-size:15px;line-height:1.25}.season-info__option-label{flex-shrink:0;color:inherit;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.season-info__message{padding:10px 12px;color:#555;font-weight:700;line-height:1.4}.mypage-account-info{display:flex;flex-direction:column;align-items:flex-start;padding:5px;margin-bottom:10px;border-bottom:1px solid #ccc;font-size:20px;font-weight:700;gap:5px}.mypage-account-info .note{font-size:.8em;margin-left:6px}.logout-link{margin-left:auto;font-size:.9rem;color:#333;border-bottom:1px solid #ccc;cursor:pointer}.mypage-icon{font-size:24px}.period-tab{display:flex;align-items:center;justify-content:flex-start;gap:12px;margin:8px 0 10px;font-size:16px}.period-tab__label{flex-shrink:0;font-weight:700;letter-spacing:.04em}.period-tab__group{display:inline-flex;align-items:center;gap:14px}.period-tab__button{display:inline-flex;align-items:center;justify-content:center;min-width:auto;height:30px;padding:0 2px;border:none;border-bottom:2px solid transparent;background:transparent;color:#555;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}.period-tab__button:hover{color:#222}.period-tab__button--active{border-bottom-color:var(--main-color);color:#222;box-shadow:none}.period-tab__button--active:hover{color:#222}.tab-buttons{padding-top:10px;display:flex}.tab-buttons-with-priority .tab-buttons-inner{display:flex;gap:8px}.tab-button{padding:12px 20px;background-color:var(--tab-gray);color:white;text-decoration:none;border:none;border-top-left-radius:12px;border-top-right-radius:12px;margin-right:4px;position:relative;font-weight:700}.tab-button.active{background-color:white;background-color:#fff;color:#000;box-shadow:0 -2px 4px rgba(0,0,0,.1);z-index:2}.tab-button.active:before{content:"";position:absolute;height:70%;width:4px;background-color:var(--main-color);top:15%;left:0;border-radius:4px}.mypage-content{background:white;box-shadow:0 0 8px rgba(0,0,0,.1);padding:24px;border-radius:0 10px 10px 10px}.box{margin-bottom:20px;border-radius:6px;display:flex;flex-direction:column}.box-title{align-items:center;color:white;background-color:var(--main-color);padding:8px 12px;font-weight:700;font-size:15px;border-top-left-radius:4px;border-top-right-radius:4px;display:flex}.box-title.with-link{display:flex;justify-content:space-between;align-items:center}.box p{margin:auto;padding:8px 12px;font-weight:700}.box-content{background-color:var(--box-gray);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.section-link{font-size:13px;color:white;text-decoration:underline;margin-left:auto;display:flex;align-items:center}.section-link:hover{text-decoration:none}.inner-row{justify-content:space-between;align-content:center;padding:8px 12px}.btn-register,.inner-row{display:flex;align-items:center}.btn-register{padding:5px 10px;font-size:12px;font-weight:700;text-decoration:none;border-radius:4px;white-space:nowrap;cursor:pointer;width:108px;margin:auto;justify-content:center}.btn-register.not-registered{background-color:white;color:var(--main-color);border:2px solid var(--main-color)}.btn-register.not-registered:hover{background-color:var(--hover-color)}.btn-register.registered{background-color:var(--main-color);color:white;border:2px solid var(--main-color);cursor:default;text-align:center}.btn-register-prefix-icon{margin-right:8px;display:flex;align-items:center}.btn-register-suffix-icon{margin-left:8px;display:flex;align-items:center}.inner-row .btn-register{padding:5px 10px;font-size:12px;font-weight:700;text-decoration:none;border-radius:4px;white-space:nowrap;cursor:pointer;width:auto;margin:0}.link-buttons{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start}.link-button{flex:0 0 auto;padding:8px;border-radius:4px;text-align:center;color:#fff;font-size:16px;transition:background-color .2s,border .2s;background-color:var(--tab-gray);border:4px solid transparent}.link-button.active{cursor:pointer;background-color:var(--main-color)}.link-button.selected{border:4px solid gold}.switch-wrapper{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;flex-direction:column}.switch-label{font-weight:700;font-size:16px;display:flex;align-items:center}.switch-label .icon{display:flex;align-items:center;justify-content:center;margin-right:6px;height:100%}.toggle-button-group{display:flex;background-color:var(--box-gray);border-radius:999px}.toggle-button{border:none;padding:4px 20px;border-radius:999px;background-color:transparent;color:var(--foreground);font-weight:700;cursor:pointer}.toggle-button.active{background-color:var(--main-color);color:white}.prize-tab-wrapper{position:relative;display:flex;gap:10px}.prize-tab-button{padding:10px 20px;cursor:pointer;border-radius:6px;text-decoration:none;color:var(--main-color);border:1px solid var(--main-color);font-weight:700}.prize-tab-button:hover{background-color:var(--hover-color)}.prize-tab-button.active{background-color:var(--main-color);color:#fff}.mypage-detail-table,.mypage-table,.ranking-table{border-right:1px solid var(--table-gray);border-left:1px solid var(--table-gray);border-bottom:1px solid var(--table-gray);border-collapse:separate;overflow:hidden;border-spacing:0;border-radius:10px;text-align:center;width:100%;td,th{padding:9px;text-align:center;vertical-align:middle;border-right:1px solid var(--table-gray);border-bottom:1px solid var(--table-gray);&:last-child{border-right:none}}th{background:var(--main-color);color:white}td{background:#fff;min-width:160px}thead th{border:none}tbody{tr{&:last-child{td,th{border-bottom:none}}}}}.record-link-buttons{display:flex;align-items:center;justify-content:center;gap:20px}.record-link-button{padding:5px 10px;font-size:13px;background-color:var(--main-color);color:white;font-weight:700;cursor:pointer;border-radius:4px}.table-entry-race{padding:6px}.status{text-align:center;max-width:200px;font-weight:700}.status.not-registered{color:red;font-weight:700}.status.entered{color:#b69b1b;font-weight:700}.status.complete{color:green;font-weight:700}.status.dnf,.status.dnq,.status.dns{color:red;font-weight:700}.status.aggregating{color:#000;font-weight:700}.status.allClosed,.status.closed,.status.isFinished{color:red;font-weight:700}.badge-links{text-align:center;color:var(--main-color)}.race-name-wrapper{display:flex;align-items:center;gap:8px}.race-name-wrapper,.table-text{position:relative;z-index:1}.table-text.entry-close{margin-top:4px}.table-text.entry-close,.table-text.status-text{font-weight:400;font-size:12px;color:gray;align-items:center}.entry-period-tooltip{position:absolute;z-index:2;border-radius:20%;padding:3px;justify-content:center;align-items:center;display:flex;top:4px;right:4px;border:1px solid var(--tab-gray)}.table-text.link{cursor:pointer;color:var(--url-color)}.table-text.link:hover{text-decoration:underline}.table-ranking-content{display:flex;gap:8px;justify-content:center;align-items:center;padding:3px}.table-ranking-text{padding:2px 4px;width:-moz-fit-content;width:fit-content}.ranking-top-rank-icon{position:absolute;right:calc(50% + 8px);top:50%;transform:translateY(-50%);display:flex;align-items:center}.age-ranking{display:flex;border-radius:0 0 4px 4px;background:var(--box-gray);overflow:hidden;flex-wrap:wrap}.age-ranking__left{background-color:var(--main-color);color:#fff;padding:12px;display:flex;flex-direction:column;justify-content:center;font-weight:700;align-items:center;font-size:14px}.age-ranking__category{font-size:16px;font-weight:700}.age-ranking__right{flex:1 1}.age-ranking__points,.age-ranking__rank,.age-ranking__right{display:flex;flex-direction:column;background:var(--box-gray)}.age-ranking__points,.age-ranking__rank{justify-content:space-between;padding:12px 16px;position:relative}.team-race-detail{width:100%;max-width:800px;margin:0 auto}.team-race-detail .status{margin-left:auto;margin-right:auto}.team-race-detail .point-cutoff-cell{text-align:center;font-size:12px;font-weight:700;color:var(--main-color);background-color:var(--mobile-table-gray);border-top:2px dashed var(--main-color);padding:6px 8px}@media (max-width:768px){.team-race-detail .point-cutoff-cell{display:block;height:auto;min-height:0;padding:8px;border-bottom:none}.team-race-detail .point-cutoff-cell:before{content:none}}.age-ranking__points{border-bottom:1px solid #e0e0e0}.age-ranking__points .label,.age-ranking__rank .label{font-weight:700;font-size:14px}.age-ranking__points .value,.age-ranking__rank .value{font-size:18px;font-weight:700;display:flex}.age-ranking__rank .icon{width:20px;height:20px;margin-right:6px}.age-ranking__link{position:absolute;right:0;bottom:0}.period-ranking__periods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.period-ranking__period{min-width:0}.period-ranking__period+.period-ranking__period{border-left:1px solid #e0e0e0}.period-ranking__period-title{color:#666;font-size:16px;font-weight:700;padding:8px 16px 0}.priority-year{font-weight:700;font-size:15px;margin:10px 0 5px}.priority-entry{width:100%}.priority-divider{border-top:1px solid #e1e1e1;margin:4px 0}.priority-btn-group .btn-register{justify-content:flex-start}.priority-entry__btn{width:100%;display:flex;gap:10px;justify-content:flex-end}.container{margin:0 auto;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:72px;box-sizing:border-box;min-height:calc(100vh - 124px);max-width:1300px}.invite-card{border-radius:12px;box-shadow:0 2px 6px rgba(0,0,0,.1);background-color:white;width:100%}.invite-card__header{background-color:#e93226;color:white;text-align:center;padding:16px;font-weight:700;font-size:20px;border-radius:12px 12px 0 0}.description{text-align:center;padding:20px;background-color:var(--box-gray)}.description,.description p{font-size:14px;word-break:break-word;white-space:normal}.description p{line-height:1.6}.box_description{padding:24px 16px;text-align:center}.box_description,.box_description p{word-break:break-word;white-space:normal}.box_description p{font-size:14px;line-height:1.6}.invite-input-group{margin:0 auto 16px;max-width:320px;text-align:left}.invite-input-group label{display:block;font-size:14px;margin-bottom:6px}.invite-input-group input[type=text]{width:100%;padding:10px 12px;font-size:14px;border:1px solid #ccc;border-radius:5px;background-color:white;box-sizing:border-box;outline:none}.invite-input-group input[type=text]:focus{border-color:var(--main-color)}.btn-area{text-align:center;margin:20px}.btn-area button.btn-submit{padding:12px 24px;background-color:white;color:var(--main-color);border:2px solid var(--main-color);border-radius:5px;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:space-between}.btn-area button:disabled{color:var(--table-gray);border:2px solid var(--table-gray);cursor:default}.btn-area button:hover{background-color:var(--table-gray)}.btn-area button:disabled:hover{background-color:white}.btn{padding:10px 20px;font-size:14px;margin:auto;border:none;border-radius:4px;cursor:pointer}.btn:hover{opacity:.9}.btn-submit{background-color:white;color:var(--main-color);font-weight:700}.btn-text{flex:1 1}.btn-prefix{margin-right:8px}.btn-suffix{margin-left:8px}.only-request-user-area{text-align:center;margin-top:20px}.cancel-button{padding:12px 24px;background-color:var(--main-color);color:white;border:none;border-radius:5px;font-size:14px;font-weight:700;cursor:pointer}.section{margin-bottom:25px;width:100%}.section-subtitle{font-weight:700;margin-bottom:8px;font-size:16px;display:flex;align-items:center}.request-url,.request-user{font-size:15px;padding:10px;background:var(--box-gray);border-left:8px solid var(--main-color);border-radius:8px;text-align:start}.request-url{word-break:break-all;white-space:normal}.description-card{border-radius:12px;box-shadow:0 2px 6px rgba(0,0,0,.1);width:100%;text-align:center}.description-card__header{background-color:var(--box-gray);color:black;text-align:center;padding:16px;font-weight:700;font-size:20px;border-radius:12px 12px 0 0}.description-list{list-style:none;padding:24px 32px 0;margin:0}.team-member-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-column-gap:8px;column-gap:8px;grid-row-gap:4px;row-gap:4px;padding:0 30px 10px}.description-list-item{position:relative;text-align:start;padding-left:30px;word-break:break-word;line-height:1.6;min-height:20px;font-size:18px;margin-bottom:5px}.description-list-item:before{content:"";position:absolute;width:18px;height:14px;top:50%;left:0;transform:translateY(-50%);background:url(/assets/images/li-item-icon.png) no-repeat 50%;background-size:contain}.custom-dialog-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;z-index:999}.custom-dialog{background:white;border-radius:8px;padding:24px;max-width:400px;width:90%;box-shadow:0 4px 12px rgba(0,0,0,.2)}.custom-dialog-title{font-weight:700;font-size:16px;margin-bottom:12px}.custom-dialog-content{font-size:14px;margin-bottom:20px}.custom-dialog-actions{display:flex;justify-content:center;gap:10px}.custom-dialog-actions .btn{cursor:pointer;border:none;border-radius:4px;margin:11px;padding:8px 16px;font-size:18px}.custom-dialog-actions .btn.cancel{background:#ccc;color:black}.custom-dialog-actions .btn.confirm{background:var(--main-color);color:white;min-width:80px}.invalid-url{margin:30px;padding:24px 32px;background-color:#fff3f3;border:1px solid #f5c2c2;border-radius:8px;text-align:center;font-size:16px;color:var(--main-color);line-height:1.6;box-shadow:0 2px 8px rgba(0,0,0,.05)}.comment-preview{background-color:#f2f7fb;border:1px solid #ccc;padding:30px}.complete-message{font-size:16px;color:black;margin-bottom:30px}.pair-info{border-left:4px solid var(--main-color);text-align:left;background-color:var(--box-gray);padding:15px;display:inline-block;min-width:300px}.pair-info p{margin:5px 0}.ribbon-row{display:flex;gap:1px;align-items:center;justify-content:center;margin-bottom:30px}.ribbon{transform-origin:center;box-sizing:border-box;text-align:center;border-top-left-radius:100px;border-bottom-left-radius:100px;height:100px;width:50px;position:absolute;top:20px;left:-50px}.ribbon-row .ribbon{animation:fadeInRibbon 3s ease-in-out infinite;position:relative;opacity:.8;left:0}@keyframes fadeInRibbon{0%{opacity:0}20%{opacity:.8}80%{opacity:.8}to{opacity:0}}.badge-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;padding:16px;grid-auto-rows:auto;justify-items:center}.badge-grid__item{padding:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.badge-stack{position:relative;width:120px;height:140px;margin:0 auto}.badge-stack img{position:absolute;left:50%;top:0;transform:translateX(-50%)}.badge-stack--1 img{position:relative;transform:none;left:auto}.badge-stack--2 img:first-child{transform:translate(-90%,-10%)}.badge-stack--2 img:nth-child(2){transform:translate(-20%,45%)}.ranking-contents{padding:24px 32px;display:flex;flex-direction:column;align-items:center;min-height:calc(100vh - 124px);max-width:1000px;margin:auto}.ranking-title{text-align:center;font-weight:700;font-size:32px;margin-bottom:20px}.ranking-table-wrapper{width:100%}.ranking-table-title{font-weight:700;font-size:24px;margin-bottom:12px}.select-gender-buttons{display:flex;flex-wrap:wrap;gap:8px}.ranking-table-paging{display:flex;justify-content:center;gap:8px;margin-top:20px;text-align:center;.prize-tab-button{width:50px;padding:10px}}.ranking-table-paging-dots{display:inline-flex;align-items:center;justify-content:center}.ranking-link-button{width:80px;margin:auto;background-color:var(--main-color);color:#fff;cursor:pointer;border-radius:4px;padding:5px 10px;font-size:13px;font-weight:700}.ranking-card-list{display:none}.ranking-detail-contents{margin:auto;padding:24px 32px;display:flex;flex-direction:column;align-items:center;max-width:1000px;min-height:calc(100vh - 124px)}.ranking-detail-title{text-align:center;font-weight:700;font-size:32px;margin-bottom:20px}.ranking-detail-info{width:100%;font-weight:700}.ranking-detail-info-name .value{font-size:24px}.ranking-detail-info-point-list{display:flex;gap:20px}.ranking-detail-info-point .value{font-size:24px}.ranking-detail-info-label-row{display:inline-flex;align-items:center;gap:6px}.ranking-detail-info-icon-button{border:none;color:var(--main-color);padding:0;display:inline-flex;align-items:center;cursor:pointer}.ranking-detail-info-icon-button:hover{color:var(--main-color);opacity:.7}.ranking-detail-info .label{color:var(--tab-gray)}.ranking-detail-info-age-range .value{font-size:20px}.age-ranking-select-categories{width:100%;flex-direction:column;gap:16px;margin-bottom:16px;display:flex;padding:16px;background-color:var(--box-gray);border-radius:12px}.age-ranking-select-age-buttons{display:flex;flex-wrap:wrap;gap:8px}.team-request-info{padding:12px 16px;border:1px solid #ddd;border-radius:8px;margin-bottom:8px;background-color:#fafafa;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}.team-request-name{margin-right:16px;font-size:14px;font-weight:500;flex:1 1 auto;&:hover{text-decoration:underline;cursor:pointer}}.button-group{display:flex;gap:8px}.certificate-view{display:flex;flex-direction:column;gap:12px}.certificate-title{text-align:center;font-weight:700;font-size:32px;margin-bottom:20px}.certificate{width:230mm;min-height:277mm;margin:0 auto;box-sizing:border-box;display:flex;flex-direction:column;box-shadow:0 0 10px rgba(0,0,0,.1)}.cert-header{position:relative;width:100%;height:400px;overflow:hidden}.cert-header img{width:100%;display:block}.cert-body{padding:36px 24mm 8mm;flex:1 1;.cert-title{font-size:36px;font-weight:700;background-color:white;color:black}.icon{position:relative;width:192px;height:29px}}.cert-title{font-size:18pt;font-weight:700;text-align:center;letter-spacing:.04em;color:white}.cert-race-data{display:flex;flex-direction:column;gap:24px;padding-top:24px}.cert-race-data .row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.cert-race-data .row .icon{display:flex;align-items:center;width:200px}.cert-race-data .row .label{font-size:20pt;font-weight:700;display:flex;align-items:center;min-height:48px;height:auto;flex:1 1}.cert-race-data-pair{display:flex;justify-content:center;gap:50px}.cert-race-block{text-align:center;margin-top:6mm;margin-bottom:12mm}.cert-race-block .race-name{font-size:14pt;font-weight:700;margin-bottom:4mm}.cert-race-block .cert-desc{font-size:20px;font-weight:700;white-space:pre-line}.cert-issue{font-size:24px}.cert-date,.cert-issue{font-weight:700;text-align:center}.cert-date{font-size:32px;padding-bottom:12px}.cert-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:24px 48px;gap:24px 48px;margin-top:48px;margin-bottom:48px}.cert-grid-item{display:grid;grid-template-rows:auto auto;border-bottom:1px solid #ccc;padding-bottom:4px;grid-row-gap:8px;row-gap:8px}.cert-grid-item .race-name{justify-self:flex-start;font-weight:700;font-size:18px;margin-bottom:0}.cert-grid-item .race-date,.cert-grid-item .race-time{grid-row:2}.cert-grid-item .race-date{justify-self:flex-start;font-size:14px;font-weight:700}.cert-grid-item .race-time{justify-self:end;font-size:14px;font-weight:700}.certificate-download-button{width:100%}.meister-cert-logo{display:flex;flex-direction:column;align-items:center;margin:16px auto;width:80px;height:35px;position:relative}.certificate-link-buttons{display:none}.certificate-loading-overlay{background-color:white;z-index:999}.certificate-empty{height:300px;display:flex;align-items:center;justify-content:center}.certificate-section-label{display:block;font-weight:600;color:#555;margin-bottom:8px}.certificate-section-label.mobile{display:none}.cert-row{display:flex;align-items:center}.pair-name,.runner-name{flex:1 1;text-align:center;font-size:14px;font-weight:700}.season-select{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 124px);padding:40px 20px;background-color:var(--background)}.season-select__heading{font-size:20px;font-weight:700;color:var(--foreground);margin:0 0 40px;text-align:center;display:flex;align-items:center;gap:10px}.season-select__heading:after,.season-select__heading:before{content:"";display:block;width:40px;height:2px;background-color:var(--main-color);border-radius:2px}.season-select__buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:24px;gap:24px;width:min(100%,708px)}.season-select__button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:36px 56px;font-size:24px;font-weight:700;background-color:white;color:var(--main-color);border:2px solid var(--main-color);border-radius:12px;cursor:pointer;width:100%;box-shadow:0 2px 10px rgba(0,0,0,.08);letter-spacing:.04em}.season-select__button:hover{background-color:var(--main-color);color:white;box-shadow:0 6px 20px rgba(219,9,23,.25);transform:translateY(-2px)}.season-select__button:hover:after{color:rgba(255,255,255,.75)}.season-select__label{font-size:11px;font-weight:400;letter-spacing:.12em;color:var(--tab-gray);transition:color .2s}@media (max-width:768px){.season-select{min-height:calc(100vh - 80px);padding:32px 16px}.season-select__buttons{grid-template-columns:1fr;gap:16px;width:100%;max-width:320px}.season-select__button{padding:28px 40px;font-size:20px;min-width:unset;width:100%}.container,.content{padding:10px;min-height:calc(100vh - 80px)}.container{max-width:800px}.loading-component{height:calc(100vh - 80px)}.jphs-header{height:60px;background-color:white}.jphs-header-spacer{height:5px}.jphs-contents{flex-direction:row;justify-content:space-between;padding:5px 10px;height:55px;margin:auto}.jphs-logo-container{width:140px}.jphs-contents-right-area{align-items:center;gap:8px}.jphs-nav{flex-direction:column;align-items:flex-start;position:fixed;top:0;right:-100%;width:100%;height:100vh;background-color:white;padding:80px 24px 24px;box-shadow:-4px 0 10px rgba(0,0,0,.1);transition:right .3s ease-in-out;overflow-y:auto}.jphs-nav.open{right:0;justify-content:start}.jphs-nav a{display:block;padding:16px 0;border-bottom:1px solid #ddd;width:100%;font-size:16px}.mypage-button{gap:5px}.jphs-contents-mypage{padding:7px 6px;height:50px;min-width:auto;border-radius:5px}.mobile-toggle-menu{position:relative;display:flex;flex-direction:column;align-items:center;width:45px;height:45px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;justify-content:center}.menu-bar{position:absolute;width:24px;height:2px;background-color:black;transition:transform .3s ease,opacity .3s ease;border-radius:1px;left:50%;transform:translateX(-50%);transform-origin:center}.menu-bar:first-child{top:10px}.menu-bar:last-child{top:20px}.mobile-toggle-menu .menu-bar.open-top{top:18px;transform:translateX(-50%) rotate(45deg)}.open-bottom{top:18px;transform:translateX(-50%) rotate(-45deg)}.menu-label{font-size:14px;font-weight:700;margin-top:36px;color:black;display:block}.mypage-title{h1{font-size:20px}}.mypage-account-info{font-size:14px}.season-info{margin:8px 0 10px;padding:9px 12px 10px;gap:6px;max-width:100%}.season-info__main{align-items:center;flex-direction:row;gap:8px}.season-info__title{align-items:center;font-size:19px;gap:6px}.mypage-edit-button.season-info__button{width:auto;min-width:104px;align-self:auto;height:30px;padding:0 12px;font-size:12px}.season-info__dropdown{left:12px;right:12px;width:auto}.season-info__option{align-items:center;padding:9px 10px}.season-info__option-range{font-size:14px}.period-tab{gap:8px;margin:6px 0 8px}.period-tab__label{font-size:11px}.period-tab__group{gap:10px}.period-tab__button{height:28px;padding:0 1px;font-size:12px}.mypage-content{border-radius:0}.inner-row{align-items:start;flex-direction:column}.inner-row .btn-register,.inner-row .inner-row__status{margin-left:auto}.how-to-enter-body-pc,.how-to-enter-header-pc{display:none}.how-to-enter-body-mobile,.how-to-enter-header-mobile{display:block}.login-fixed-button{left:50%;transform:translateX(-50%)}.how-to-enter-title{font-size:36px}.how-to-enter-sub{font-size:18px}.how-to-enter-subText{font-size:16px}.mypage-table{border:none;width:100%;thead{display:none}th{padding:0}tbody,td,tr{display:block;width:100%}tr{margin-bottom:15px;border:1px solid var(--table-gray);border-radius:10px;overflow:hidden;background-color:#fff;&:last-child{td{border-bottom:1px solid var(--table-gray)}}}td{text-align:center;border:none;border-bottom:1px solid var(--mobile-table-gray);position:relative;box-sizing:border-box;display:flex;flex-direction:column;padding:0;height:80px;.entry-link{height:90px}&:before{content:attr(data-label);font-weight:700;display:flex;justify-content:center;align-items:center;font-size:14px;background-color:var(--mobile-table-gray);height:30px;color:black;z-index:10}&:first-child:before{background-color:var(--main-color);color:white}&.year-row{height:40px;border-radius:10px;&:first-child:before{display:none}}&.status{max-width:100%}&:last-child{border-bottom:none}min-height:75px;height:auto}}.status.closed{.table-text{margin-top:3px;margin-bottom:5px}}.status.not-registered{.table-text{margin-top:3px;margin-bottom:5px}}.race-name-wrapper,.table-text{justify-content:center;align-items:center;flex:1 1;font-weight:700}.table-text{position:relative;display:flex}.table-text.status-text{white-space:normal;word-break:break-word;margin:0 5px 5px 0;display:block}.record-link-buttons{flex:1 1}.status{text-align:center;white-space:nowrap;font-weight:700;width:100%;box-sizing:border-box}.prize-tabs,.tab-buttons,.tab-buttons.race-tab{margin:10px 0;flex-direction:column;align-items:stretch}.tab-buttons-with-priority{margin:0;flex-direction:column;align-items:stretch}.tab-button{height:50px;font-size:14px;padding:5px 5px 5px 10px;margin:auto;display:flex;align-items:center}.prize-tab-button,.tab-button{width:100%;box-sizing:border-box}.prize-tab-button{padding:10px 5px;text-align:center}.age-ranking__points,.age-ranking__rank{display:flex;flex-direction:column;justify-content:space-between;background:var(--box-gray);padding:8px 12px;position:relative}.age-ranking__link{position:relative;padding:8px 0 0}.age-ranking__link .inner-row{padding:0}.period-ranking__periods{grid-template-columns:1fr}.period-ranking__period+.period-ranking__period{border-top:1px solid #e0e0e0;border-left:0}.period-ranking__period-title{padding:8px 12px 0}.priority-entry__btn{flex-direction:column}.description{background-color:var(--box-gray);font-size:14px}.box_description,.description{text-align:start;word-break:break-word;white-space:normal;padding:10px}.description-card{text-align:start}.description-list-item{font-size:14px}.entry-period-tooltip{top:35px;right:2px}.badge-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px;padding:8px;grid-auto-rows:auto;justify-items:center}.ranking-contents,.ranking-detail-contents{margin:12px;padding:12px 16px}.ranking-detail-info-point-list{flex-direction:column;gap:8px}.ranking-table{display:none}.ranking-card-list-header{font-weight:700;font-size:14px;margin:5px 0 5px auto}.ranking-card-list{display:flex;flex-direction:column;gap:12px}.ranking-card{background-color:#ffffff;border-radius:8px;padding:12px;box-shadow:0 1px 6px rgba(0,0,0,.1);cursor:pointer}.rank-badge,.ranking-card{display:flex;align-items:center}.rank-badge{background-color:var(--main-color);color:white;font-weight:700;border-radius:50%;width:36px;height:36px;justify-content:center;margin-right:12px;font-size:14px}.card-body{flex:1 1;display:flex;align-items:center;gap:12px}.card-header{display:flex;flex-direction:column;margin-bottom:4px}.card-name{font-size:16px;font-weight:700}.card-age-location{font-size:13px;color:var(--footer-background-color);margin-top:2px}.card-point{font-size:14px;font-weight:700;color:var(--main-color);flex:1 1;text-align:right}.ranking-table-paging{gap:1px;.prize-tab-button{width:30px;padding:5px}}.select-gender-buttons{display:flex;justify-content:space-between;gap:8px;margin-bottom:16px;a{flex:1 1}}.age-ranking-select-age-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));grid-gap:8px;gap:8px;button{width:100%}}.age-ranking-select-age-buttons{grid-template-columns:repeat(3,1fr)}.certificate-header .link-buttons,.certificate-section-label.web{display:none}.certificate-link-buttons,.certificate-section-label.mobile{display:block}.certificate{width:100%;min-height:auto}.cert-header{height:166px}.cert-title{font-size:12px}.cert-body{padding:5px 25px;.cert-title{font-size:20px}.cert-race-data{padding-top:16px;gap:12px}.icon{width:100px;height:15px}}.cert-race-data .row .icon{width:100px}.cert-race-data .row .label{min-height:16px;font-size:12pt}.cert-race-data-pair{display:flex;justify-content:center;gap:8px;.cert-race-data .row .label{font-size:13px}.cert-race-data .row .icon{width:80px;height:20px}}.cert-race-block{margin-bottom:6mm}.cert-date,.cert-issue,.cert-race-block .cert-desc{font-size:12px}.meister-cert-logo{height:20px}.cert-grid{margin-top:12px;gap:10px}.cert-grid-item{border-bottom:1px solid #ccc;grid-template-rows:auto auto;row-gap:3px;padding-bottom:4px;display:flex;flex-direction:column;font-size:11px;.race-date,.race-name,.race-time{font-size:11px}.race-time{margin-top:auto}}.pair-name,.runner-name{font-size:11px}.team-member-list{grid-template-columns:1fr;padding:0 20px 10px}.team-info p{padding:4px 8px}}.isDownload{.certificate{width:230mm;min-height:277mm;margin:0 auto;box-sizing:border-box;display:flex;flex-direction:column;box-shadow:0 0 10px rgba(0,0,0,.1)}.cert-header{position:relative;width:100%;height:400px;overflow:hidden}.cert-header img{width:100%;display:block}.cert-body{padding:36px 24mm 8mm;flex:1 1;.cert-title{font-size:36px;font-weight:700;background-color:white;color:black}.icon{position:relative;width:192px;height:29px}}.cert-title{font-size:18pt;font-weight:700;text-align:center;letter-spacing:.04em;color:white}.cert-race-data{display:flex;flex-direction:column;gap:24px;padding-top:24px}.cert-race-data .row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.cert-race-data .row .icon{display:flex;align-items:center;width:200px}.cert-race-data .row .label{font-size:20pt;font-weight:700;display:flex;align-items:center;height:auto;min-height:48px;flex:1 1}.cert-race-data-pair{display:flex;justify-content:center;gap:50px;.cert-race-data .row .icon{height:29px}.cert-race-data .row .label{min-height:48px}}.cert-race-block{text-align:center;margin-top:6mm;margin-bottom:12mm}.cert-race-block .race-name{font-size:14pt;font-weight:700;margin-bottom:4mm}.cert-race-block .cert-desc{font-size:20px;font-weight:700;white-space:pre-line}.cert-issue{font-size:24px}.cert-date,.cert-issue{font-weight:700;text-align:center}.cert-date{font-size:32px;padding-bottom:12px}.meister-cert-logo{display:flex;flex-direction:column;align-items:center;margin:16px auto;width:80px;height:35px;position:relative}.cert-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:24px 48px;gap:24px 48px;margin-top:48px;margin-bottom:48px}.cert-grid-item{display:grid;grid-template-rows:auto auto;border-bottom:1px solid #ccc;padding-bottom:4px;grid-row-gap:8px;row-gap:8px}.cert-grid-item .race-name{justify-self:flex-start;font-weight:700;font-size:18px;margin-bottom:0}.cert-grid-item .race-date,.cert-grid-item .race-time{grid-row:2}.cert-grid-item .race-date{justify-self:flex-start;font-size:14px;font-weight:700}.cert-grid-item .race-time{justify-self:end;font-size:14px;font-weight:700}.cert-row{display:flex;align-items:center}.pair-name,.runner-name{flex:1 1;text-align:center;font-size:14px;font-weight:700}}.season-info__dropdown{position:absolute;top:calc(100% + 6px);left:0;z-index:100;min-width:200px;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.12);overflow:hidden}.season-info__message{padding:10px 14px;font-size:13px;color:#666}.season-info__option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 14px;border:none;background:transparent;cursor:pointer;font-size:14px;font-weight:600;text-align:left;transition:background-color .15s ease}.season-info__option:hover{background-color:var(--hover-color)}.season-info__option--current{background-color:#fff1f3;color:var(--main-color)}.season-info__option-range{font-weight:700}.season-info__option-label{font-size:11px;color:#888;font-weight:400}