:root{--背景色: #0c0e13;--表面色: #151820;--表面色上: #1c2030;--入力背景: #10131a;--文字色: #e8ecf2;--淡色: #8b93a7;--強調色: #6b9bff;--強調色薄: rgba(107, 155, 255, .15);--強調ホバー: #8fb4ff;--線色: #262c3a;--ホバー線: #353d52;--影: rgba(0, 0, 0, .45);--コード文字: #b8c8e8;--ヘッダー背景: rgba(21, 24, 32, .6);--ロゴフィルタ: invert(1) brightness(1.15);--背景光: rgba(107, 155, 255, .08);--リンクホバー: #8fb4ff;--ボタン文字: #fff;--節境界: rgba(255, 255, 255, .04);--キッカー色: #e6d3a8;--最大幅: 720px;color-scheme:dark;font-family:system-ui,-apple-system,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif}html[data-色調=明]{--背景色: #f4f6fb;--表面色: #ffffff;--表面色上: #eef1f7;--入力背景: #f7f8fc;--文字色: #1a202c;--淡色: #5b6478;--強調色: #3d6fd9;--強調色薄: rgba(61, 111, 217, .12);--強調ホバー: #2f5fc4;--線色: #d8dee8;--ホバー線: #c5cedb;--影: rgba(15, 23, 42, .12);--コード文字: #334155;--ヘッダー背景: rgba(255, 255, 255, .78);--ロゴフィルタ: none;--背景光: rgba(61, 111, 217, .1);--リンクホバー: #2f5fc4;--ボタン文字: #fff;--節境界: rgba(26, 32, 44, .08);--ナビ枠: rgba(180, 120, 40, .28);--ナビ背景: rgba(180, 120, 40, .06);--ナビ文字: #5c4a32;--ナビホバー文字: #3a2e1c;--ナビホバー枠: rgba(180, 120, 40, .5);--ナビホバー背景: rgba(180, 120, 40, .12);--キッカー色: #8a5a12;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}:target{scroll-margin-top:72px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;overflow-x:clip;background:var(--背景色);background-image:radial-gradient(ellipse 80% 50% at 50% -20%,var(--背景光),transparent);color:var(--文字色);line-height:1.7}img,svg{max-width:100%}a{color:var(--強調色)}a:hover{color:var(--リンクホバー)}code{font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:.9em;background:var(--表面色上);color:var(--コード文字);padding:.15em .4em;border-radius:4px;border:1px solid var(--線色)}pre{margin:1rem 0;padding:1rem;overflow-x:auto;background:var(--表面色上);border:1px solid var(--線色);border-radius:8px;line-height:1.6;text-indent:0}pre code{display:block;padding:0;background:transparent;border:0;border-radius:0;text-indent:0;white-space:pre}.コンテナ{max-width:var(--最大幅);margin-inline:auto;padding:0 1.25rem}.サイトヘッダー{position:sticky;top:0;z-index:200;border-bottom:1px solid var(--線色);background:var(--ヘッダー背景);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4)}.ヘッダー内容{position:relative;display:flex;align-items:center;height:56px;max-width:1120px;margin-inline:auto;padding:0 1.25rem}.サイトヘッダー a{text-decoration:none;color:inherit}.ロゴ{flex-shrink:0;margin-right:auto}.ロゴ画像{display:block;width:120px;height:32px;object-fit:contain;filter:var(--ロゴフィルタ)}.ナビ{display:flex;gap:1.15rem;position:absolute;left:50%;transform:translate(-50%);max-width:min(720px,calc(100% - 25rem))}.ナビ a{color:var(--淡色);font-size:.95rem;text-align:center;transition:color .15s}.ナビサイト名{color:var(--文字色);font-weight:600}.ナビ a:hover{color:var(--強調色)}.ナビ a[aria-current=page]{color:var(--文字色);font-weight:600}.言語切替{position:relative;flex-shrink:0;margin-right:.55rem}.言語切替ボタン{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.2rem;padding:0;border:1px solid var(--線色);border-radius:8px;background:transparent;color:var(--淡色)}.言語切替アイコン{display:block;width:1.25rem;height:1.25rem;pointer-events:none}.言語切替ボタン:hover,.言語切替.開 .言語切替ボタン{color:var(--文字色);border-color:var(--ホバー線);background:var(--表面色上)}.言語切替メニュー{position:absolute;top:calc(100% + .4rem);right:0;z-index:300;min-width:10.5rem;padding:.35rem;display:none;flex-direction:column;gap:.1rem;background:var(--表面色);border:1px solid var(--線色);border-radius:8px;box-shadow:0 8px 24px var(--影)}.言語切替.開 .言語切替メニュー{display:flex}.言語切替メニュー a{display:block;padding:.45rem .7rem;border-radius:6px;color:var(--淡色);text-decoration:none;font-size:.85rem;white-space:nowrap}.言語切替メニュー a:hover{color:var(--文字色);background:var(--表面色上)}.言語切替メニュー a[aria-current=true]{color:var(--文字色);font-weight:700}.色調切替ボタン{cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;margin-right:.55rem;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--文字色);font-size:1.1rem;transition:all .2s}.色調切替ボタン .色調アイコン{display:none;width:20px;height:20px;pointer-events:none}.色調切替ボタン .日月{display:block}html[data-色調選択=明] .色調切替ボタン .日月,html[data-色調選択=暗] .色調切替ボタン .日月{display:none}html[data-色調選択=明] .色調切替ボタン .日,html[data-色調選択=暗] .色調切替ボタン .月{display:block}.色調切替ボタン:hover{color:var(--文字色);background-color:#ffffff14}html[data-色調=明] .色調切替ボタン:hover{color:var(--文字色);background-color:#0000000d}.始めるボタン{flex-shrink:0;display:inline-flex;align-items:center;white-space:nowrap;background:var(--強調色);color:var(--ボタン文字);font-size:.9rem;font-weight:600;padding:.45rem 1.1rem;border-radius:8px;text-decoration:none;transition:background .15s,box-shadow .15s;box-shadow:0 2px 8px #6b9bff40}.始めるボタン:hover{background:var(--強調ホバー);color:var(--背景色);box-shadow:0 4px 16px #6b9bff59}.ハンバーガー{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:8px;background:none;border:0;border-radius:6px;cursor:pointer;flex-shrink:0}.ハンバーガー:hover{background:var(--表面色上);color:var(--文字色)}.ハンバーガー線{display:block;width:100%;height:2px;background:var(--文字色);border-radius:1px;transition:transform .25s,opacity .25s}.ハンバーガー[aria-expanded=true] .ハンバーガー線:nth-child(1){transform:translateY(7px) rotate(45deg)}.ハンバーガー[aria-expanded=true] .ハンバーガー線:nth-child(2){opacity:0}.ハンバーガー[aria-expanded=true] .ハンバーガー線:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media(max-width:768px){.ハンバーガー{display:flex}.ナビ{display:none;position:absolute;top:56px;left:0;right:0;transform:none;max-width:none;flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1.25rem 1rem;background:var(--表面色);border-bottom:1px solid var(--線色);box-shadow:0 8px 24px var(--影);z-index:100}.ナビ.開{display:flex}.ナビ a{padding:.75rem 0;font-size:1rem;border-bottom:1px solid var(--線色)}.ナビ a:last-child{border-bottom:0}}main{padding:3rem 0}h1{font-size:2rem;margin:0 0 .5rem}.リード{color:var(--淡色);font-size:1.1rem}.サイトフッター{border-top:1px solid var(--線色);color:var(--淡色);font-size:.85rem;padding:2.5rem 0 0}.フッター内容{max-width:1120px;margin-inline:auto;padding:0 1.25rem}.サイトマップ{display:flex;justify-content:center;gap:3rem;flex-wrap:wrap}.サイトマップ列{display:flex;flex-direction:column;gap:.4rem;min-width:140px}.サイトマップ列 a{color:var(--淡色);text-decoration:none;font-size:.8rem;line-height:1.6}.サイトマップ列 a:hover{color:var(--強調色)}.フッター下部{margin-top:2rem;padding:1.25rem 0;border-top:1px solid var(--線色);text-align:center}.カード{background:var(--表面色);border:1px solid var(--線色);border-radius:12px;padding:1.5rem;margin-top:1.5rem;transition:border-color .2s,box-shadow .2s}.カード:hover{border-color:var(--ホバー線);box-shadow:0 4px 20px var(--影)}button{font:inherit;cursor:pointer;background:var(--強調色);color:var(--ボタン文字);border:0;border-radius:8px;padding:.5rem 1rem;transition:background .15s}button:hover{background:var(--強調ホバー);color:var(--背景色)}@media(max-width:480px){.コンテナ,.ヘッダー内容,.フッター内容{padding-inline:1rem}.ヘッダー内容{gap:.35rem}.ロゴ画像{width:108px}.言語切替{margin-right:.25rem}.言語切替ボタン{width:2.25rem;height:2.1rem}.色調切替ボタン{width:32px;height:32px;margin-right:.25rem}.始めるボタン{padding-inline:.85rem}main{padding-block:2.25rem}h1{font-size:1.75rem;line-height:1.3}.リード{font-size:1rem}.カード{padding:1.1rem}.サイトマップ{align-items:flex-start;gap:2rem 1.25rem}.サイトマップ列{min-width:132px}}@media(max-width:360px){.コンテナ,.ヘッダー内容,.フッター内容{padding-inline:.7rem}.ヘッダー内容{gap:.15rem}.ロゴ画像{width:88px}.言語切替{margin-right:.1rem}.言語切替ボタン{width:2rem;height:2rem}.色調切替ボタン{width:28px;height:28px;margin-right:.1rem}.色調切替ボタン .色調アイコン{width:16px;height:16px}.始めるボタン{padding:.4rem .55rem;font-size:.8rem}.ハンバーガー{width:36px;height:36px}}
