*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:#17304b;background:#f7f9fc;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:17px;line-height:1.85}a{color:inherit;text-decoration:none}button,input{font:inherit}.wrap{max-width:1160px;margin:auto;padding:0 32px}.site-header{background:white;border-bottom:1px solid #e1e8f0}.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}.header-inner img{object-fit:contain}.header-inner span{font-size:14px;font-weight:700;color:#51667a}.hero{background:#eaf2f8;padding:58px 0 36px;border-bottom:1px solid #dbe6ef}.eyebrow{color:#236991;font-size:14px;font-weight:800;letter-spacing:.08em;margin:0 0 13px}h1{font-size:clamp(30px,4.7vw,54px);line-height:1.45;letter-spacing:.035em;margin:0 0 22px;font-weight:800}h2,h3,p{overflow-wrap:anywhere}.lead{font-size:18px;margin:0 0 28px;color:#425d74}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.primary,.secondary,.open,button{display:inline-flex;align-items:center;justify-content:center;background:#126b9b;color:#fff;border:0;border-radius:8px;min-height:52px;padding:12px 24px;font-weight:700}.primary{background:#c55d16}.secondary{background:#126b9b}.how{display:flex;gap:28px;flex-wrap:wrap;margin-top:28px;color:#425d74;font-size:15px}.how b{display:inline-grid;place-items:center;background:#fff;width:27px;height:27px;border-radius:50%;margin-right:5px;color:#24688e}.content{padding-top:48px;padding-bottom:50px}.finder>h2{font-size:30px;line-height:1.5;margin:0 0 10px}.finder>p{color:#51667a;margin-top:0}.categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:26px 0 32px}.categories a{display:flex;align-items:center;gap:13px;padding:15px 18px;background:white;border:1px solid #cbdbe8;border-radius:8px;font-weight:700;font-size:16px;min-height:64px}.categories span{font-size:13px;color:#4a7a98}.categories a:hover,.card:hover{border-color:#438bb5}.search-row{background:#eaf0f6;border-radius:12px;padding:24px}.search-row label{display:block;font-weight:700;margin-bottom:10px}.search-controls{display:flex;gap:10px}.search-controls input{width:100%;min-width:0;border:1px solid #aabed1;border-radius:6px;background:white;padding:12px 14px;font-size:17px}.search-controls button{flex:none;font-size:15px;min-height:48px;padding:10px 16px}.search-row p{font-size:14px;margin:10px 0 0;color:#496278}.category-section{padding-top:52px}.section-heading{display:flex;align-items:center;gap:16px;margin-bottom:22px}.section-heading>span{font-size:30px;font-weight:800;color:#367a9f}.section-heading p{font-size:13px;color:#567188;margin:0;line-height:1.3}.section-heading h2{font-size:26px;line-height:1.5;margin:5px 0 0}.back{margin-left:auto;font-size:13px;text-decoration:underline;white-space:nowrap}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{display:flex;flex-direction:column;border:1px solid #dae3ec;border-radius:12px;background:white;padding:24px;min-width:0}.material-no{font-size:12px;color:#397694;font-weight:800;letter-spacing:.06em;margin:0 0 10px}.card h3{font-size:19px;line-height:1.7;margin:0 0 13px}.goal{font-size:16px;line-height:1.8;color:#52677b;margin:0 0 24px}.open{margin-top:auto;min-height:48px;font-size:15px}.page-back{display:block;text-align:center;margin:40px auto 0;text-decoration:underline}footer{padding:32px 0;background:#17304b;color:white}footer p{margin:0}.note{font-size:12px;color:#d5dce5;margin-top:8px}.skip{position:absolute;left:-10000px}.skip:focus{left:12px;top:12px;background:white;padding:12px;z-index:20}:focus-visible{outline:3px solid #c55d16;outline-offset:4px}[hidden]{display:none!important}.mascots{display:flex;align-items:center;gap:28px;margin-top:28px}.mascot{text-align:center;display:flex;align-items:center;gap:8px}.mascot img{width:64px;height:64px;object-fit:contain}.mascot span{font-size:13px;color:#425d74;font-weight:700}@media(max-width:1000px){.categories{grid-template-columns:repeat(2,minmax(0,1fr))}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){body{font-size:16px}.wrap{padding-left:20px;padding-right:20px}.header-inner{min-height:70px;gap:12px}.header-inner img{width:111px;height:40px}.header-inner span{font-size:11px}.hero{padding:35px 0 28px}h1{font-size:clamp(26px,7.7vw,30px);letter-spacing:0;line-height:1.55}.eyebrow{font-size:12px}.lead{font-size:16px}.desktop{display:none}.hero-actions{display:grid;grid-template-columns:1fr;gap:10px}.hero-actions a{width:100%;font-size:16px}.how{gap:10px 18px;margin-top:23px;font-size:13px}.how b{width:23px;height:23px}.content{padding-top:32px}.finder>h2{font-size:25px}.categories{grid-template-columns:1fr;gap:9px;margin-top:22px}.categories a{min-height:55px;padding:12px 16px;font-size:15px}.search-row{padding:18px}.search-controls{flex-direction:column}.search-controls button{align-self:flex-start}.section-heading{gap:12px;flex-wrap:wrap}.section-heading h2{font-size:23px}.section-heading>span{font-size:26px}.back{margin-left:0;width:100%}.grid{grid-template-columns:1fr;gap:14px}.card{padding:22px}.card h3{font-size:19px}.goal{font-size:16px}.note{font-size:10px}.mascots{gap:12px;justify-content:space-between}.mascot{flex-direction:column;gap:1px}.mascot img{width:56px;height:56px}.mascot span{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* 教材の札・案内は14px以上。補足注だけ別扱い。 */
.header-inner span,.eyebrow,.categories span,.search-row p,.section-heading p,.back,.material-no,.mascot span{font-size:14px}

.phrase{white-space:nowrap}

/* 17:05名称訂正：三体の正式名を可読な行幅で表示。画像の内容・大きさは変更しない。 */
.mascots{flex-wrap:wrap}.mascot span{white-space:nowrap}@media(max-width:600px){.mascots{flex-direction:column;align-items:flex-start;gap:12px}.mascot{flex-direction:row;gap:10px}.mascot img{width:56px;height:56px}}

/* 17:12統括の差戻し：右の採用絵・小アイコン列なし・サイト共通gloss CTA */
.hero{padding:62px 0 54px}.hero-layout{max-width:1280px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;align-items:center}.hero h1{font-size:clamp(32px,3.65vw,50px);letter-spacing:0;line-height:1.5}.hero .lead{font-size:17px}.hero-art{margin:0;min-width:0;background:white;border:5px solid white;border-radius:22px;box-shadow:0 16px 42px #244b6d1b;overflow:hidden}.hero-art img{display:block;width:100%;height:auto}.hero-actions{gap:14px}.hero-actions a{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:2px;min-height:76px;border-radius:999px;border:2px solid #ffffffa6;padding:11px 25px;color:#fff;font-weight:800;text-shadow:0 1px 2px #68300055;box-shadow:inset 0 2px 1px #ffffffa8,inset 0 -4px 5px #a93d1f30,0 4px 0 #b84919,0 7px 13px #a24c2627;background:linear-gradient(155deg,#ffbd32 0%,#ff9025 22%,#ff6d21 57%,#f65d32 100%);font-size:19px}.hero-actions small{font-size:14px;line-height:1.5;font-weight:700;color:#fff}.hero-actions .secondary{font-size:17px;box-shadow:inset 0 2px 1px #ffffffa8,inset 0 -4px 5px #063d9d40,0 4px 0 #0955a5,0 7px 13px #2161a527;background:linear-gradient(155deg,#41c3ff 0%,#178eea 28%,#0868d7 68%,#1355bc 100%)}.open,button{position:relative;overflow:hidden;border-radius:999px;border:2px solid #ffffffa6;color:#fff;font-weight:800;background:linear-gradient(155deg,#ffb534,#ff8724 27%,#f76a22 70%,#ef5a2a);box-shadow:inset 0 2px 1px #ffffff9c,inset 0 -3px 4px #a93d1f2c,0 3px 0 #b84919,0 5px 10px #a24c261c;transition:transform .16s ease,box-shadow .16s ease}.hero-actions a{transition:transform .16s ease,box-shadow .16s ease}.hero-actions a::after,.open::after,button::after{content:"";position:absolute;top:0;left:-80%;width:45%;height:100%;background:linear-gradient(90deg,transparent,#ffffff5e,transparent);transform:skewX(-22deg);pointer-events:none}.hero-actions a:hover,.open:hover,button:hover{transform:translateY(-2px)}.hero-actions a:hover::after,.open:hover::after,button:hover::after{animation:gift-gloss .65s ease 1}@keyframes gift-gloss{to{left:140%}}.brand-link{display:inline-flex;align-items:center;min-height:47px}.brand-link img{display:block}.how{font-size:14px;gap:12px 20px}
@media(max-width:1100px) and (min-width:701px){.hero-layout{gap:24px}.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions a{font-size:18px}.hero h1{font-size:35px}.hero-art{border-width:4px}}
@media(max-width:700px){.hero{padding:30px 0 34px}.hero-layout{display:flex;flex-direction:column;align-items:stretch;gap:28px}.hero h1{font-size:clamp(26px,7.7vw,30px)}.hero .lead{font-size:16px}.hero-actions{display:grid;grid-template-columns:1fr;gap:14px}.hero-actions a{font-size:19px;min-height:76px;width:100%}.hero-actions .secondary{font-size:17px}.hero-art{border-width:3px;border-radius:14px}.how{margin-top:25px}}
@media(prefers-reduced-motion:reduce){.hero-actions a,.open,button{transition:none}.hero-actions a:hover,.open:hover,button:hover{transform:none}.hero-actions a:hover::after,.open:hover::after,button:hover::after{animation:none}}

/* 語句単位の折返し。親全体のnowrap/切抜き/縮小は使用しない。 */
.wm-wrap{word-break:normal;word-break:auto-phrase;overflow-wrap:normal;line-break:strict;white-space:normal}
.wm-wrap .wm-text-unit{white-space:nowrap;word-break:normal;overflow-wrap:normal}

/* 2026-10-20 20:2x 本人共通型：採用画像は全面・原比率・切抜きなし。同じFV枠の下帯に実CTA。 */
.hero-image-first{padding:0;background:#eaf2f8;border-bottom:1px solid #dbe6ef}
.hero-full-art{display:block;margin:0;width:100%;background:#eaf2f8}
.hero-full-art img{display:block;width:100%;height:auto;max-width:none;object-fit:contain;border:0;border-radius:0}
.hero-cta-band{padding:22px 20px 28px;background:linear-gradient(180deg,#eaf2f8,#f4f8fc)}
.hero-cta-inner{max-width:900px;margin:0 auto;text-align:center}
.hero-image-first h1{font-size:22px;line-height:1.6;letter-spacing:0;margin:0 0 16px;font-weight:800}
.hero-image-first .hero-actions{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}
.hero-image-first .hero-actions a{display:inline-flex;flex-direction:row;width:300px;min-height:64px;padding:13px 20px;border:2px solid rgba(255,255,255,.9);border-radius:999px;font-size:19px;line-height:1.5;color:#fff;font-weight:800;white-space:normal;word-break:auto-phrase;background:linear-gradient(180deg,#ea580c 0%,#c2410c 55%,#c2410c 100%);box-shadow:0 6px 14px rgba(8,20,40,.20),inset 0 2px 1px rgba(255,255,255,.35);text-shadow:0 1px 1px #68250044}
.hero-image-first .hero-actions .secondary{background:linear-gradient(180deg,#234a7a,#16335e);font-size:19px}
.hero-image-first .hero-actions a::before,.hero-image-first .hero-actions a::after{content:none}
.hero-image-first .hero-actions a:hover{transform:translateY(-1px);filter:brightness(1.05)}
@media(max-width:700px){.hero-cta-band{padding:19px 16px 25px}.hero-image-first h1{font-size:20px;line-height:1.65;margin-bottom:16px}.hero-image-first .hero-actions{display:grid;grid-template-columns:1fr;gap:10px;max-width:440px;margin:auto}.hero-image-first .hero-actions a,.hero-image-first .hero-actions .secondary{width:100%;min-height:56px;font-size:18px}}
@media(prefers-reduced-motion:reduce){.hero-image-first .hero-actions a:hover{transform:none}}

/* Wide PC only: preserve the complete artwork and keep both first-screen actions visible. */
@media (min-width:1281px){.hero-image-first .hero-full-art img{max-height:min(560px,60vh);object-fit:contain}}
