.contents-page{--lp-contents-accent:#3977b9;--lp-contents-filter-bg:color-mix(in srgb, var(--lp-blue-soft) 45%, white);--lp-crimson:var(--lp-contents-accent);--lp-cream:var(--lp-blue-soft);--lp-line-soft:var(--lp-blue-line);--lp-line-card:var(--lp-blue-line);--lp-line-warm:var(--lp-blue-line);--lp-chip-border:var(--lp-blue-line);--lp-contents-choice-line:color-mix(in srgb, var(--lp-body-soft) 75%, white);--lp-muted:var(--lp-body-soft);--lp-font-sans:"LINE Seed JP", "Noto Sans JP", "Hiragino Sans", "Yu Gothic", Meiryo, sans-serif;font-family:var(--lp-font-sans)}.contents-page :is(button,a,input):focus-visible{outline:2px solid var(--lp-contents-accent);outline-offset:3px}.contents-page .contents-body{padding-block:40px 80px}.contents-page .contents-past-exams{border:1px solid var(--lp-blue-line);background:var(--lp-blue-soft);grid-template-columns:minmax(0,1fr) minmax(0,.8fr);align-items:center;max-width:1240px;min-height:300px;display:grid;overflow:hidden}.contents-page .contents-past-exams__copy{min-width:0;padding:30px 0 30px 36px}.contents-page .contents-past-exams__eyebrow{color:var(--lp-heading);letter-spacing:.1em;font-size:13px;font-weight:700}.contents-page .contents-past-exams h2{color:var(--lp-heading);font-family:var(--lp-font-display);letter-spacing:.04em;margin-top:12px;font-size:clamp(28px,3.2vw,44px);font-weight:700;line-height:1.6}.contents-page .contents-past-exams__description{margin-top:10px;font-size:16px;line-height:1.9}.contents-page .contents-past-exams__link{background:var(--lp-contents-accent);color:#fff;letter-spacing:.06em;justify-content:center;align-items:center;gap:20px;min-width:240px;min-height:54px;margin-top:22px;padding:12px 24px;font-size:16px;font-weight:700;text-decoration:none;transition:background-color .15s;display:inline-flex}.contents-page .contents-past-exams__link:hover{background:var(--lp-navy)}.contents-page .contents-past-exams__image{object-fit:cover;object-position:left top;width:100%;height:300px;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12%);mask-image:linear-gradient(90deg,#0000,#000 12%)}@media (width<=767px){.contents-page .contents-past-exams{grid-template-columns:minmax(0,1fr)}.contents-page .contents-past-exams__copy{padding:24px 24px 0}.contents-page .contents-past-exams h2{font-size:clamp(26px,5vw,34px)}.contents-page .contents-past-exams__description{font-size:15px}.contents-page .contents-past-exams__link{min-width:0;min-height:48px;margin-top:18px;padding-inline:20px;font-size:14px}.contents-page .contents-past-exams__image{object-fit:cover;object-position:center top;height:160px;margin-top:12px;-webkit-mask-image:linear-gradient(#0000,#000 12%);mask-image:linear-gradient(#0000,#000 12%)}}.contents-page .contents-layout{gap:32px}.contents-page .contents-filters{gap:14px;min-width:0;display:grid}.contents-page .contents-categories{flex-wrap:wrap;gap:8px;display:flex}.contents-page .contents-category{border:1px solid var(--lp-contents-choice-line);min-height:40px;color:var(--lp-heading);letter-spacing:.02em;white-space:nowrap;background:#fff;border-radius:999px;align-items:center;padding:0 16px;font-size:14px;font-weight:700;display:inline-flex}.contents-page .contents-category:hover{border-color:var(--lp-contents-accent);color:var(--lp-contents-accent)}.contents-page .contents-category[aria-pressed=true]{border-color:var(--lp-contents-accent);background:var(--lp-contents-accent);color:#fff}.contents-page .contents-chips{border-top:1px solid var(--lp-blue-line);gap:8px;padding-top:14px;display:grid}.contents-page .contents-chips__row{border:0;flex-wrap:wrap;gap:8px;min-width:0;margin:0;padding:0;display:flex}.contents-page .contents-chip{border:1px solid var(--lp-contents-choice-line);min-height:34px;color:var(--lp-heading);white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:13px;display:inline-flex}.contents-page .contents-chip>span{color:var(--lp-body-soft);font-size:12px}.contents-page .contents-chip:hover{border-color:var(--lp-contents-accent)}.contents-page .contents-chip[aria-pressed=true]{border-color:var(--lp-contents-accent);background:var(--lp-blue-soft);color:var(--lp-contents-accent);font-weight:700}.contents-page .contents-chip[aria-pressed=true]>span{color:var(--lp-contents-accent)}.contents-page #contents-results{min-width:0;scroll-margin-top:125px}.contents-page .contents-results-heading,.contents-page .contents-results-heading__title{align-items:baseline;gap:14px;display:flex}.contents-page .contents-results-heading{flex-wrap:wrap;justify-content:space-between}.contents-page .contents-results-heading h2{color:var(--lp-heading);font-family:var(--lp-font-display);letter-spacing:.04em;font-size:28px;font-weight:700;line-height:1.6}.contents-page .contents-results-heading p,.contents-page .contents-clear{color:var(--lp-body-soft);font-size:13px}.contents-page .contents-clear{color:var(--lp-contents-accent);text-underline-offset:5px;padding-block:8px;text-decoration:underline}.contents-page .contents-shelves{gap:48px;display:grid}.contents-page .contents-shelf{gap:18px;min-width:0;display:grid}.contents-page .contents-shelf__head{border-bottom:1px solid var(--lp-blue-line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;padding-bottom:10px;display:flex}.contents-page .contents-shelf__head h3{color:var(--lp-heading);letter-spacing:.04em;align-items:baseline;gap:10px;font-size:19px;font-weight:700;line-height:1.5;display:flex}.contents-page .contents-shelf__head h3 span{color:var(--lp-body-soft);font-size:13px;font-weight:400}.contents-page .contents-shelf__more{color:var(--lp-contents-accent);align-items:center;gap:4px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.contents-page .contents-shelf__more:hover{text-underline-offset:4px;text-decoration:underline}.contents-page .contents-card-grid{grid-template-columns:minmax(0,1fr);gap:20px;display:grid}.contents-page .contents-card{min-width:0;color:inherit;grid-template-columns:128px minmax(0,1fr);align-content:start;align-items:start;gap:14px;text-decoration:none;display:grid}.contents-page .contents-card__media{background:var(--lp-blue-soft);overflow:hidden}.contents-page .contents-card__media>*{aspect-ratio:16/9;width:100%;transition:transform .3s;display:block}.contents-page .contents-card:hover .contents-card__media>*{transform:scale(1.03)}.contents-page .contents-card__body{gap:6px;min-width:0;display:grid}.contents-page .contents-card__label{color:var(--lp-contents-accent);letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.contents-page .contents-card__title{color:var(--lp-heading);letter-spacing:.02em;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:15px;font-weight:700;line-height:1.65;display:-webkit-box;overflow:hidden}.contents-page .contents-card:hover .contents-card__title{color:var(--lp-contents-accent)}.contents-page .contents-card__meta{color:var(--lp-body-soft);letter-spacing:.04em;flex-wrap:wrap;align-items:center;gap:2px 12px;font-size:12px;display:flex}.contents-page .contents-card__lock{color:var(--lp-heading);align-items:center;gap:3px;font-weight:700;display:inline-flex}@media (prefers-reduced-motion:reduce){.contents-page .contents-card__media>*{transition:none}}@media (width>=640px){.contents-page .contents-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}.contents-page .contents-card{grid-template-columns:minmax(0,1fr);gap:12px}}@media (width>=1024px){.contents-page .contents-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 24px}}.contents-page .contents-empty{border:1px solid var(--lp-blue-line);background:var(--lp-blue-soft);box-shadow:none}.contents-page .contents-empty>p:not(:first-child){font-size:16px}.contents-page .contents-empty>p:first-child{color:var(--lp-heading)}.contents-page .contents-empty>a{background:var(--lp-contents-accent)}.contents-page .contents-pagination-button[aria-current=page]{border-color:var(--lp-contents-accent);background:var(--lp-contents-accent);color:#fff}.contents-page .contents-pagination-button{min-width:42px;height:42px;font-size:14px}@media (width<=639px){.contents-page .contents-body{padding-top:24px}.contents-page .contents-layout{gap:24px}.contents-page .contents-results-heading h2{font-size:24px}.contents-page .contents-shelves{gap:40px}}
