.lesson p,.lesson h1,.lesson h2{overflow-wrap:anywhere}.lesson h1,.lesson h2{text-wrap:balance}.lesson [tabindex="-1"]:focus{outline:none}.lesson :is(p,h1,h2,button):lang(ja){word-break:auto-phrase}.lesson-top{justify-content:space-between;align-items:center;gap:12px;min-height:44px;display:flex}.back-home{min-height:44px;color:var(--c-blue);align-items:center;gap:6px;font-size:16px;font-weight:700;text-decoration:none;display:inline-flex}.meter-text{color:var(--c-gray);margin:0;font-size:15px;font-weight:700}.meter{grid-template-columns:repeat(7,1fr);gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.meter li{background:var(--c-line);border-radius:3px;height:6px}.meter li.is-done{background:var(--c-green)}.meter li.is-current{background:var(--c-blue)}.save-note{background:var(--c-light-blue);border-radius:14px;margin:20px 0 0;padding:14px 16px;font-size:15px;line-height:1.6}.step{padding-top:36px}.context{color:var(--c-gray);margin:0 0 8px;font-size:15px;font-weight:700}.step h1{color:var(--c-navy);letter-spacing:-.03em;margin:0;font-size:clamp(28px,8vw,32px);line-height:1.25}.step h2{color:var(--c-navy);margin:0 0 20px;font-size:22px;line-height:1.4}.lead{color:var(--c-gray);margin:16px 0 0;font-size:17px;line-height:1.75}.ja{color:var(--c-navy)}.translation{color:var(--c-gray);margin:6px 0 0;font-size:15px;line-height:1.6}.translation-label{margin-bottom:2px;font-size:13px;font-weight:700;display:block}.hint{color:var(--c-gray);text-align:center;margin:12px 0 0;font-size:15px;line-height:1.6}.audio-note{background:var(--c-light-blue);color:var(--c-gray);border-radius:14px;align-items:center;gap:10px;margin:24px 0 0;padding:12px 16px;font-size:15px;font-weight:700;line-height:1.5;display:flex}.audio-note .icon{flex:none}.primary-button,.secondary-button{text-align:center;cursor:pointer;border-radius:16px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:56px;padding:0 20px;font-size:19px;font-weight:800;line-height:1.3;text-decoration:none;display:flex}.primary-button{background:var(--c-blue);color:var(--c-white);box-shadow:0 8px 16px rgb(var(--c-blue-rgb) / 22%);border:0}.primary-button:disabled{background:var(--c-light-blue);color:var(--c-gray);box-shadow:none;cursor:not-allowed}.secondary-button{border:2px solid var(--c-blue);background:var(--c-white);color:var(--c-blue)}.back-button{min-height:48px;color:var(--c-blue);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;margin:20px auto 0;padding:0 16px;font-size:17px;font-weight:700;display:flex}.text-button{min-height:44px;color:var(--c-blue);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:16px;font-weight:700;text-decoration:underline}.step-actions{margin-top:56px}.step-actions>a+a{margin-top:16px}.js-note{background:var(--c-light-blue);border-radius:14px;margin:0;padding:16px 18px;font-size:16px;line-height:1.6}.audio-button{border:1.5px solid var(--c-line);background:var(--c-white);color:var(--c-blue);cursor:pointer;flex:none;justify-content:center;align-items:center;gap:8px;display:inline-flex}.audio-button.is-icon{border-radius:50%;width:44px;height:44px}.audio-button.has-text{border-radius:22px;min-height:44px;padding:0 18px 0 14px;font-size:16px;font-weight:700}.audio-icon{display:inline-flex}.audio-icon-stop{display:none}.audio-button[data-state=loading],.audio-button[data-state=playing]{border-color:var(--c-blue);background:var(--c-blue);color:var(--c-white)}.audio-button[data-state=loading] .audio-icon-play,.audio-button[data-state=playing] .audio-icon-play{display:none}.audio-button[data-state=loading] .audio-icon-stop,.audio-button[data-state=playing] .audio-icon-stop{display:inline-flex}.audio-button[data-state=error]{border-color:var(--c-orange);color:var(--c-orange)}.toast{left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:10;background:var(--c-navy);width:min(440px,100% - 32px);color:var(--c-white);box-shadow:0 10px 24px rgb(var(--c-navy-rgb) / 24%);border-radius:14px;margin:0;padding:14px 18px;font-size:15px;line-height:1.5;position:fixed;transform:translate(-50%)}.toast:empty{display:none}.hero{aspect-ratio:900/612;background-color:var(--c-img-hero);background-position:100% 100%;background-repeat:no-repeat;background-size:100%;border-radius:22px;flex-direction:column;padding:20px 16px;display:flex}.hero.is-plain{aspect-ratio:auto;padding:28px 20px 32px}.hero.is-plain .hero-copy{max-width:none}.hero-copy{max-width:max(52%,150px)}.lesson-number{color:var(--c-blue);margin:0;font-size:19px;font-weight:800}.step .hero h1{letter-spacing:-.04em;margin-top:4px;font-size:clamp(28px,8.6vw,34px);line-height:1.18}.title-ja{color:var(--c-gray);margin:8px 0 0;font-size:15px;font-weight:700}.situation{margin:32px 0 0;font-size:18px;line-height:1.75}.goal{margin-top:48px}.cando-list,.card-list{gap:16px;margin:0;padding:0;list-style:none;display:grid}.cando-list li{background:var(--c-light-blue);border-radius:16px;align-items:flex-start;gap:14px;padding:18px;font-size:17px;line-height:1.65;display:flex}.cando-icon{background:var(--c-white);width:32px;height:32px;color:var(--c-green);border-radius:50%;flex:none;place-items:center;display:grid}.scene-image{background:var(--c-light-blue);border-radius:18px;width:100%;height:auto;margin:0 0 16px;display:block}.use-it-image{margin-top:32px;margin-bottom:0}.use-it-image+.scene-card{margin-top:16px}.done-image{max-width:360px;margin:0 auto}.dialogue{margin-top:40px}.dialogue+.dialogue{border-top:1px solid var(--c-line);margin-top:56px;padding-top:48px}.scene{background:var(--c-light-blue);border-radius:14px;margin:0;padding:16px 18px;font-size:16px;line-height:1.7}.dialogue-tools{flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:16px;display:flex}.dialogue-tools:empty{display:none}.lines{gap:24px;margin:32px 0 0;padding:0;list-style:none;display:grid}.line{justify-items:start;gap:6px;display:grid}.line.is-self{justify-items:end}.speaker{color:var(--c-gray);align-items:center;gap:8px;margin:0;padding:0 2px;font-size:14px;font-weight:700;display:flex}.line.is-self .speaker{flex-direction:row-reverse}.avatar{background:var(--c-light-blue);object-fit:cover;border-radius:50%;flex:none;width:32px;height:32px}.line-row{align-items:center;gap:10px;max-width:94%;display:flex}.line.is-self .line-row{flex-direction:row-reverse}.bubble{border:1px solid var(--c-line);background:var(--c-white);border-radius:6px 18px 18px;min-width:0;padding:14px 16px}.line.is-self .bubble{background:var(--c-light-blue);border-color:#0000;border-radius:18px 6px 18px 18px}.bubble .ja{margin:0;font-size:20px;line-height:1.6}.bubble .translation{border-top:1px dashed var(--c-line);margin-top:10px;padding-top:10px}.line.is-self .bubble .translation{border-top-color:var(--c-line)}.expressions{gap:20px;margin:32px 0 0;padding:0;list-style:none;display:grid}.expression{border:1px solid var(--c-line);border-radius:18px;padding:20px 18px}.expression-main{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.expression .ja{margin:0;font-size:22px;font-weight:700;line-height:1.5}.expression-audio{flex:none;gap:8px;display:flex}.usage{margin:14px 0 0;font-size:16px;line-height:1.75}.pattern,.vocab{margin-top:56px}.pattern p{background:var(--c-light-blue);border-radius:18px;margin:0;padding:20px 18px;font-size:17px;line-height:1.85}.vocab-list{border-top:1px solid var(--c-line);margin:0;padding:0;list-style:none}.vocab-list li{border-bottom:1px solid var(--c-line);justify-content:space-between;align-items:center;gap:12px;min-height:68px;padding:12px 4px;display:flex}.vocab-list .ja{margin:0;font-size:19px;font-weight:700;line-height:1.5}.vocab-list .translation{margin-top:2px}.practice{margin-top:32px}.practice-status{gap:10px;display:grid}.practice-counter{margin:0;font-size:17px;font-weight:800}.practice-track{background:var(--c-line);border-radius:4px;height:8px;overflow:hidden}.practice-track span{background:var(--c-blue);border-radius:4px;width:0;height:100%;transition:width .2s;display:block}.exercise{margin-top:32px}.instruction{margin:0;font-size:19px;font-weight:700;line-height:1.6}.listen-box{background:var(--c-light-blue);border-radius:18px;justify-content:center;margin-top:24px;padding:28px 16px;display:flex}.listen-box .audio-button{border-radius:28px;min-height:56px;padding:0 26px 0 20px;font-size:18px}.pending-box{background:var(--c-light-blue);color:var(--c-gray);border-radius:18px;margin-top:24px;padding:18px;font-size:15px;line-height:1.6}.pending-box p{margin:0}.pending-box .pending-title{color:var(--c-navy);align-items:center;gap:8px;margin-bottom:6px;font-weight:800;display:flex}.prompt{justify-items:start;gap:6px;margin-top:24px;display:grid}.prompt .bubble{margin:0;font-size:20px;line-height:1.6}.fill-sentence{background:var(--c-light-blue);color:var(--c-navy);text-align:center;border-radius:18px;margin:24px 0 0;padding:24px 18px;font-size:22px;line-height:1.6}.material{color:var(--c-navy);margin:28px auto 0}.material.is-nametag{border:2px solid var(--c-navy);background:var(--c-white);letter-spacing:.12em;text-align:center;width:min(100%,240px);box-shadow:0 6px 14px rgb(var(--c-navy-rgb) / 10%);border-radius:12px;padding:16px 20px 22px;font-size:30px;font-weight:800}.material.is-nametag:before{content:"";background:var(--c-line);border-radius:3px;width:44px;height:6px;margin:0 auto 14px;display:block}.material-row{white-space:pre-wrap;display:block}.material.is-memo{border:1px solid var(--c-line);background:var(--c-white);width:min(100%,280px);box-shadow:0 6px 14px rgb(var(--c-navy-rgb) / 10%);border-radius:4px;padding:14px 24px 18px;font-size:20px;line-height:1.5}.material.is-memo .material-row{border-bottom:1px solid var(--c-line);padding:8px 0}.choices{gap:12px;margin-top:28px;display:grid}.choice{border:2px solid var(--c-line);background:var(--c-white);width:100%;min-height:60px;color:var(--c-navy);text-align:left;cursor:pointer;border-radius:16px;align-items:center;gap:14px;padding:12px 16px;font-size:19px;line-height:1.45;display:flex}.choice-mark{border:2px solid var(--c-line);width:26px;height:26px;color:var(--c-white);border-radius:50%;flex:none;place-items:center;display:grid}.mark-correct,.mark-wrong{display:none}.choice[aria-pressed=true]{border-color:var(--c-blue);background:var(--c-light-blue)}.choice[aria-pressed=true] .choice-mark{border:8px solid var(--c-blue);background:var(--c-white)}.choice:disabled{cursor:default}.choice:disabled:not(.is-correct,.is-wrong){color:var(--c-gray)}.choice.is-correct{border-color:var(--c-green);background:var(--c-white)}.choice.is-wrong{border-color:var(--c-orange);background:var(--c-white)}.choice.is-correct .choice-mark{background:var(--c-green);border:0}.choice.is-wrong .choice-mark{background:var(--c-orange);border:0}.choice.is-correct .mark-correct,.choice.is-wrong .mark-wrong{display:inline-flex}.order{margin-top:24px}.order-answer{border:2px dashed var(--c-line);border-radius:18px;min-height:132px;padding:18px}.order-lead{color:var(--c-gray);margin:0 0 12px;font-size:19px}.order-slots{gap:10px;margin:0;padding:0;list-style:none;display:grid}.order-pool{gap:12px;margin-top:20px;display:grid}.order-pool:empty{display:none}.piece{border:2px solid var(--c-blue);background:var(--c-white);width:100%;min-height:56px;color:var(--c-navy);text-align:left;cursor:pointer;border-radius:14px;padding:10px 16px;font-size:19px;line-height:1.45}.order-slots .piece{background:var(--c-light-blue);border-color:#0000}.piece:disabled{cursor:default}.order.is-correct .order-answer{border-style:solid;border-color:var(--c-green)}.order.is-wrong .order-answer{border-style:solid;border-color:var(--c-orange)}.order .hint{text-align:left}.order .text-button{margin-top:4px}.feedback{border:2px solid var(--c-line);background:var(--c-white);border-radius:18px;margin-top:24px;padding:20px 18px}.feedback.is-correct{border-color:var(--c-green)}.feedback.is-wrong{border-color:var(--c-orange)}.feedback-title{align-items:center;gap:10px;margin:0;font-size:22px;font-weight:800;display:flex}.feedback-title.is-correct{color:var(--c-green)}.feedback-title.is-wrong{color:var(--c-orange)}.answer{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:14px 0 0;font-size:19px;font-weight:700;line-height:1.5;display:flex}.answer-label{background:var(--c-light-blue);border-radius:8px;padding:2px 10px;font-size:14px}.explanation{margin:14px 0 0;font-size:16px;line-height:1.8}.exercise-actions{margin-top:32px}.practice-panel{background:var(--c-light-blue);text-align:center;border-radius:20px;margin-top:32px;padding:32px 20px}.practice-panel p{margin:0;font-size:19px;font-weight:700;line-height:1.6}.practice-panel .primary-button{margin-top:24px}.practice-panel .text-button{margin-top:16px}.done-mark{background:var(--c-green);width:56px;height:56px;color:var(--c-white);border-radius:50%;place-items:center;margin-bottom:16px;display:inline-grid}.done-mark.is-large{width:76px;height:76px;margin-bottom:0}.scene-card{background:var(--c-light-blue);border-radius:18px;margin-top:32px;padding:22px 18px}.scene-text{margin:0;font-size:18px;line-height:1.75}.scene-hint{color:var(--c-gray);margin:14px 0 0;font-size:15px;line-height:1.6}.model-toggle{margin-top:24px}.model{border:2px solid var(--c-blue);border-radius:18px;margin-top:24px;padding:20px 18px}.model-title{color:var(--c-blue);margin:0 0 8px;font-size:15px;font-weight:800}.model-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.model .ja{margin:0;font-size:20px;line-height:1.75}.self-check{margin-top:56px}.card-item{border:1px solid var(--c-line);border-radius:18px;padding:20px 18px}.card-item>p:first-child{margin:0;font-size:17px;line-height:1.7}.eval-buttons{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.eval-buttons button{border:2px solid var(--c-line);background:var(--c-white);min-height:52px;color:var(--c-navy);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:17px;font-weight:700;line-height:1.3;display:flex}.eval-buttons button[aria-pressed=true]{border-color:var(--c-blue);background:var(--c-blue);color:var(--c-white)}.done-head{text-align:center;padding-top:24px}.done-head h1{margin-top:24px}.done-summary{margin-top:48px}.result{border-radius:999px;align-items:center;gap:6px;margin:14px 0 0;padding:6px 14px;font-size:15px;font-weight:800;display:inline-flex}.result.is-can{background:var(--c-green);color:var(--c-white)}.result.is-again{background:var(--c-light-blue);color:var(--c-navy)}@media (hover:hover){.primary-button:not(:disabled):hover{filter:brightness(.9)}.secondary-button:hover,.audio-button:hover,.piece:not(:disabled):hover,.eval-buttons button:hover,.choice:not(:disabled):hover{border-color:var(--c-blue)}.back-home:hover,.back-button:hover{text-decoration:underline}}.back[data-astro-cid-tsvbwkoi]{min-height:44px;color:var(--c-blue);align-items:center;margin-bottom:16px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}section[data-astro-cid-tsvbwkoi]{background:var(--c-light-blue);border-radius:20px;padding:26px 20px}section[data-astro-cid-tsvbwkoi]>p[data-astro-cid-tsvbwkoi]:first-child{color:var(--c-gray);margin:0 0 8px;font-size:14px;font-weight:700}h1[data-astro-cid-tsvbwkoi]{color:var(--c-navy);letter-spacing:-.035em;overflow-wrap:anywhere;margin:0;font-size:clamp(24px,6.4vw,30px);line-height:1.22}h1[data-astro-cid-tsvbwkoi]+p[data-astro-cid-tsvbwkoi]{color:var(--c-gray);margin:8px 0 0;font-size:15px}p[data-astro-cid-tsvbwkoi]{line-height:1.6}h1[data-astro-cid-tsvbwkoi]~p[data-astro-cid-tsvbwkoi]:not(.note){color:var(--c-gray)}.note[data-astro-cid-tsvbwkoi]{color:var(--c-gray);margin:16px 0 0;font-size:14px;line-height:1.55}.button[data-astro-cid-tsvbwkoi]{background:var(--c-blue);min-height:52px;color:var(--c-white);border-radius:14px;justify-content:center;align-items:center;margin-top:22px;font-weight:800;text-decoration:none;display:flex}@media (hover:hover){.button[data-astro-cid-tsvbwkoi]:hover{filter:brightness(.9)}.back[data-astro-cid-tsvbwkoi]:hover{text-decoration:underline}}
