.ld-materials{--ld-paper: #fbf8f3;--ld-sand: #f3eadf;--ld-line: #e8dccf;--ld-ink: #2f2230;--ld-ink-soft: #5c4f55;--ld-plum: #3b1d38;--ld-coral: #ff6b6b;--ld-coral-hover: #ff5252;--ld-coral-ink: #a8322c;--ld-peach: #ffe6e0;--background: 38 52% 97%;--foreground: 305 20% 16%;--card: 0 0% 100%;--card-foreground: 305 20% 16%;--popover: 0 0% 100%;--popover-foreground: 305 20% 16%;--primary: 318 34% 32%;--primary-foreground: 38 52% 98%;--secondary: 22 75% 94%;--secondary-foreground: 305 20% 18%;--muted: 32 35% 93%;--muted-foreground: 330 8% 34%;--accent: 0 100% 71%;--accent-foreground: 305 35% 15%;--border: 30 32% 86%;--input: 30 30% 78%;--ring: 318 34% 40%;--radius: 1rem;--font-display: "Fraunces", "Noto Serif JP", Georgia, serif;--font-body: "DM Sans", "Noto Sans JP", system-ui, sans-serif;--shadow-card: 0 1px 2px hsl(20 30% 30% / .05), 0 6px 20px -8px hsl(20 30% 30% / .12);--shadow-elevated: 0 12px 32px -10px hsl(20 30% 30% / .18);background:var(--ld-paper);color:var(--ld-ink);font-family:var(--font-body);font-size:1rem;line-height:1.8;line-break:strict;overflow-wrap:anywhere;-webkit-text-size-adjust:100%}.ld-materials [lang=en]{line-height:1.6;overflow-wrap:break-word}.ld-materials :focus-visible{outline:3px solid hsl(var(--ring));outline-offset:3px;border-radius:6px}.ld-container{max-width:1160px;margin-inline:auto;padding-inline:16px}@media (min-width: 768px){.ld-container{padding-inline:32px}}html:not(.ld-ready) .ld-js-only{display:none!important}.ld-tap{min-height:44px;min-width:44px}.ld-block [data-island=dialogue] button{position:relative}.ld-block [data-island=dialogue] button:before{content:"";position:absolute;inset:-8px}.ld-nav{border-bottom:1px solid var(--ld-line);background:var(--ld-paper)}.ld-navlink{display:inline-flex;align-items:center;color:var(--ld-ink);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:4px}.ld-navlink:hover{text-decoration-color:var(--ld-coral)}.ld-breadcrumb{color:var(--ld-ink-soft);line-height:1.5}.ld-breadcrumb a{color:var(--ld-ink-soft);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--ld-line)}.ld-breadcrumb a:hover{color:var(--ld-ink);text-decoration-color:currentColor}.ld-breadcrumb a{display:inline-flex;align-items:center;min-height:44px}.ld-footer{border-top:1px solid var(--ld-line);margin-top:96px}.ld-credit{color:var(--ld-ink-soft);font-size:.875rem}.ld-hero{padding-top:20px}.ld-hero>*{max-width:46rem}@media (min-width: 768px){.ld-hero{padding-top:40px}}.ld-h1{margin-top:20px;font-family:var(--font-display);font-weight:600;font-size:clamp(2.125rem,1.4rem + 3.2vw,3.5rem);line-height:1.2;letter-spacing:.01em;font-feature-settings:"palt";word-break:auto-phrase;color:var(--ld-ink)}.ld-h1__ja{display:block;text-wrap:balance}.ld-h1__en{display:block;margin-top:10px;font-family:var(--font-body);font-size:1.0625rem;font-weight:500;letter-spacing:.02em;color:var(--ld-ink-soft)}.ld-summary,.ld-body,.ld-facts dd,.ld-faq__q,.ld-canvas .font-display{word-break:auto-phrase}.ld-summary{margin-top:18px;font-size:1.0625rem;line-height:1.9;text-wrap:pretty}@media (min-width: 768px){.ld-summary{font-size:1.125rem}}.ld-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.ld-badge{display:inline-flex;align-items:center;min-height:30px;padding:2px 12px;border-radius:999px;border:1px solid var(--ld-line);background:#fff;color:var(--ld-ink);font-size:.875rem;font-weight:600;line-height:1.4;white-space:nowrap}.ld-badge--free{background:var(--ld-peach);border-color:#f6c7bd;color:#7d2520}.ld-badge--soon{background:var(--ld-sand);color:var(--ld-ink-soft);font-weight:500}.ld-facts{margin-top:24px;border-top:1px solid var(--ld-line)}.ld-facts__row{display:grid;gap:2px;padding:14px 0;border-bottom:1px solid var(--ld-line)}@media (min-width: 640px){.ld-facts__row{grid-template-columns:9.5rem minmax(0,1fr);gap:16px}}.ld-facts dt{font-size:.875rem;font-weight:600;color:var(--ld-ink-soft);line-height:1.8}.ld-facts dd{font-size:1rem}.ld-inline-list{display:flex;flex-wrap:wrap;gap:4px 0}.ld-inline-list li:not(:last-child):after{content:"・";color:var(--ld-ink-soft)}.ld-lesson-credit{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:32px;font-size:.875rem;color:var(--ld-ink-soft);text-align:center}.ld-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.ld-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 28px;border-radius:999px;background:var(--ld-coral);color:var(--ld-plum);font-weight:700;font-size:1rem;line-height:1.3;text-align:center;text-decoration:none;box-shadow:0 1px #a3292940,0 8px 20px -10px #e6191973;transition:background-color .15s ease,transform .15s ease}.ld-cta:hover{background:var(--ld-coral-hover)}.ld-cta:active{transform:translateY(1px)}.ld-cta--compact{min-height:48px;padding:0 22px}.ld-btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 22px;border-radius:999px;border:1.5px solid hsl(305 20% 16% / .22);background:transparent;color:var(--ld-ink);font-weight:600;transition:background-color .15s ease,border-color .15s ease}.ld-btn-secondary:hover{background:#fff;border-color:#31213066}@media (max-width: 479px){.ld-cta-row>*{flex:1 1 100%}}.ld-cta-sub{margin-top:10px;font-size:.875rem;color:var(--ld-ink-soft);line-height:1.7}#lesson{margin-top:48px}.ld-board{background:var(--ld-sand);border-radius:32px;padding:12px}@media (max-width: 639px){.ld-board{margin-inline:-16px;border-radius:0;padding:20px 10px}}@media (min-width: 768px){.ld-board{padding:28px}}@media (min-width: 1024px){.ld-board{padding:40px}}.ld-board__grid{display:grid;gap:32px}@media (min-width: 1024px){.ld-board__grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:36px}}.ld-canvas{min-width:0}.ld-canvas__item+.ld-canvas__item{margin-top:40px}.ld-notes{margin-top:20px;border-top:1px solid hsl(var(--border));padding-top:14px}.ld-notes__toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:4px 12px 4px 6px;border-radius:999px;cursor:pointer;list-style:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .15s ease}.ld-notes__toggle::-webkit-details-marker{display:none}.ld-notes__toggle:hover{background:var(--ld-sand)}.ld-notes__chevron{color:var(--ld-ink-soft);transition:transform .2s cubic-bezier(.25,1,.5,1)}.ld-notes[open] .ld-notes__chevron{transform:rotate(180deg)}.ld-notechip{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:2px 12px;border-radius:999px;font-size:.875rem;font-weight:700;line-height:1.4}.ld-notechip--teacher{background:#fdf0dc;color:#7a3a0a}.ld-notechip--student{background:#f3e9f1;color:#5b2a4e}.ld-notes__toggle.is-pulsing{animation:ld-notes-pulse 1.1s cubic-bezier(.25,1,.5,1) 2}@keyframes ld-notes-pulse{0%{box-shadow:0 0 #ff6b6b8c}to{box-shadow:0 0 0 12px #ff6b6b00}}.ld-notes__body{display:grid;gap:12px;margin-top:12px}.ld-notepanel{border-radius:16px;padding:16px 16px 18px}@media (min-width: 768px){.ld-notepanel{padding:18px 22px 20px}}.ld-notepanel--teacher{background:#fff7ea;border:1px solid #f0dcbc}.ld-notepanel--student{background:#faf5f9;border:1px solid #ead9e6}.ld-notepanel__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:10px}.ld-notepanel__label{display:inline-flex;align-items:center;gap:5px;font-size:.8125rem;font-weight:700}.ld-notepanel--teacher .ld-notepanel__label{color:#7a3a0a}.ld-notepanel--student .ld-notepanel__label{color:#5b2a4e}.ld-notepanel__explain{font-size:.75rem;color:var(--ld-ink-soft);line-height:1.6}.ld-note{display:grid;gap:10px;font-size:.9375rem;line-height:1.8;color:var(--ld-ink);word-break:auto-phrase}.ld-note-en{display:block;margin-top:2px;font-size:.8125rem;color:var(--ld-ink-soft);line-height:1.55}.ld-note-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ld-note-h__title{font-family:var(--font-display);font-size:1.0625rem;font-weight:600}.ld-timechip{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;background:#fff;border:1px solid #f0dcbc;color:#7a3a0a;font-size:.8125rem;font-weight:700;font-variant-numeric:tabular-nums}.ld-note-section{font-family:var(--font-display);font-size:1rem;font-weight:600;color:#5b2a4e}.ld-note-lead{color:var(--ld-ink-soft)}.ld-steps{display:grid;gap:8px}.ld-steps li{display:grid;grid-template-columns:1.75rem minmax(0,1fr);align-items:start}.ld-steps__marker{font-size:1.0625rem;line-height:1.7;color:#5b2a4e}.ld-note-section+.ld-note-stepsblock .ld-steps__text{font-size:1.0625rem;font-weight:700}.ld-note-section+.ld-note-stepsblock .ld-steps{gap:12px}.ld-note-example{margin-top:6px;padding:6px 12px;border-radius:10px;background:#ffffffbf}.ld-note-example__label{display:inline-block;margin-right:8px;font-size:.75rem;font-weight:700;color:var(--ld-ink-soft)}.ld-callout{display:grid;grid-template-columns:1.5rem minmax(0,1fr);gap:4px;padding:10px 12px;border-radius:12px}.ld-callout__icon{line-height:1.8}.ld-callout--tip{background:#fff;border:1px solid #ead9e6}.ld-callout--caution{background:#fdeceb;border:1px solid #f3c4bf;color:#6e1f1a}.ld-sticky-cta{position:fixed;z-index:40;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .2s ease,transform .25s cubic-bezier(.25,1,.5,1),visibility 0s linear .25s}.ld-sticky-cta.is-visible{opacity:1;visibility:visible;transform:none;transition:opacity .2s ease,transform .25s cubic-bezier(.25,1,.5,1),visibility 0s}.ld-cta--sticky{min-height:48px;padding:0 22px;font-size:.9375rem}@media (max-width: 1023px){.ld-sticky-cta{left:0;right:0;bottom:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fbf8f3f5;border-top:1px solid var(--ld-line)}.ld-cta--sticky{width:100%}html.ld-ready body.ld-materials{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.ld-toast{bottom:calc(80px + env(safe-area-inset-bottom))}}@media (min-width: 1024px){.ld-sticky-cta{display:none}}.ld-penbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:12px}.ld-pen-hint{flex:1 1 16rem;font-size:.875rem;color:var(--ld-ink-soft);line-height:1.7}.ld-pen-hint:empty{display:none}.ld-pen-canvas{position:absolute;inset:0;z-index:5;border-radius:inherit;pointer-events:none}.is-pen-active{box-shadow:0 0 0 3px #ff6b6b8c,var(--shadow-card)}.is-pen-active .ld-pen-canvas{pointer-events:auto;cursor:crosshair;touch-action:none}.ld-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--ld-line);background:#fff;color:var(--ld-ink);font-size:.9375rem;font-weight:600;line-height:1.3;text-decoration:none;transition:background-color .15s ease,border-color .15s ease}.ld-chip:hover{border-color:#31213059}.ld-chip[aria-pressed=true]{background:var(--ld-coral);border-color:var(--ld-coral);color:var(--ld-plum)}.ld-wordlist{background:#fff;border-radius:24px;padding:20px;box-shadow:var(--shadow-card)}.ld-side-cta{display:none}@media (min-width: 1024px){.ld-side{position:sticky;top:24px;display:flex;flex-direction:column;gap:14px;max-height:calc(100vh - 48px)}.ld-side .ld-wordlist{flex:1 1 auto;min-height:0;overflow-y:auto}.ld-side-cta{display:block;flex:none}.ld-cta--side{width:100%;justify-content:center;min-height:52px}.ld-side-cta .ld-cta-sub{margin-top:8px;font-size:.8125rem;text-align:center}}.ld-wordlist__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.ld-h3{font-family:var(--font-display);font-size:1.1875rem;font-weight:600;line-height:1.4}.ld-wordlist__count{min-width:28px;padding:0 8px;border-radius:999px;background:var(--ld-sand);color:var(--ld-ink-soft);font-size:.8125rem;font-weight:600;text-align:center}.ld-hint{margin-top:6px;font-size:.8125rem;color:var(--ld-ink-soft);line-height:1.7}.ld-words{margin-top:10px}.ld-word{padding:9px 8px;margin-inline:-8px;border-radius:10px;border-bottom:1px dashed var(--ld-line)}.ld-word:last-child{border-bottom:0}.ld-word dt{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px}.ld-word__term{font-weight:600;font-size:1.0625rem}.ld-word__reading{font-size:.8125rem;color:var(--ld-ink-soft)}.ld-word__def{font-size:.875rem;color:var(--ld-ink-soft)}.ld-word.is-new{animation:ld-word-new 1.8s ease-out}@keyframes ld-word-new{0%,35%{background:var(--ld-peach)}to{background:transparent}}.ld-select-add{position:absolute;z-index:50;min-height:44px;padding:0 18px;border-radius:999px;background:var(--ld-plum);color:#fff8f2;font-size:.9375rem;font-weight:600;box-shadow:0 10px 24px -10px #240f2299}.ld-select-add[hidden]{display:none}.ld-toast{position:fixed;left:50%;bottom:max(16px,env(safe-area-inset-bottom));z-index:60;max-width:calc(100vw - 32px);padding:10px 18px;border-radius:999px;background:var(--ld-plum);color:#fff8f2;font-size:.9375rem;font-weight:600;line-height:1.5;opacity:0;pointer-events:none;transform:translate(-50%,8px);transition:opacity .2s ease,transform .2s ease}.ld-toast:empty{display:none}.ld-toast.is-visible{opacity:1;transform:translate(-50%)}.ld-section{margin-top:88px}.ld-section--tight{margin-top:40px}.ld-h2{font-family:var(--font-display);font-weight:600;font-size:clamp(1.5rem,1.2rem + 1.4vw,2.125rem);line-height:1.35;text-wrap:balance;font-feature-settings:"palt";word-break:auto-phrase}.ld-h2 a{display:inline-block;padding-block:6px;color:inherit;text-decoration:underline;text-decoration-color:var(--ld-coral);text-underline-offset:6px;text-decoration-thickness:2px}.ld-body{margin-top:12px;font-size:1.0625rem;line-height:1.9;max-width:38rem;text-wrap:pretty}.ld-keeps{display:grid;gap:28px;align-items:center}@media (min-width: 1024px){.ld-keeps{grid-template-columns:minmax(0,1fr) 400px;gap:56px}}.ld-deck{background:#fff;border:1px solid var(--ld-line);border-radius:28px;padding:24px;box-shadow:var(--shadow-elevated)}.ld-deck__root{margin-top:14px;min-height:180px}.ld-make{background:var(--ld-plum);color:#fff8f2;border-radius:32px;padding:32px 20px}@media (min-width: 768px){.ld-make{padding:48px}}.ld-make .ld-body{color:#f9f0e7e0}.ld-make__form{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;max-width:40rem}.ld-input{flex:1 1 16rem;min-width:0;min-height:48px;padding:0 18px;border-radius:999px;border:1.5px solid transparent;background:#fff;color:var(--ld-ink);font-size:1rem}.ld-input::-moz-placeholder{color:#7a6b72}.ld-input::placeholder{color:#7a6b72}.ld-make .ld-cta{flex:0 0 auto}@media (max-width: 479px){.ld-make .ld-cta{flex:1 1 100%}}.ld-make :focus-visible{outline-color:var(--ld-coral)}.ld-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.ld-make .ld-chip{background:transparent;color:#fff8f2;border-color:#f9f0e759}.ld-make .ld-chip:hover{border-color:#f9f0e7bf}.ld-faq{margin-top:20px;max-width:46rem;border-top:1px solid var(--ld-line)}.ld-faq__item{border-bottom:1px solid var(--ld-line)}.ld-faq__summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:12px 4px;cursor:pointer;list-style:none;border-radius:8px}.ld-faq__summary::-webkit-details-marker{display:none}.ld-faq__summary:hover .ld-faq__q{text-decoration:underline;text-decoration-color:var(--ld-coral);text-underline-offset:4px}.ld-faq__chevron{flex:none;color:var(--ld-ink-soft);transition:transform .2s cubic-bezier(.25,1,.5,1)}.ld-faq__item[open] .ld-faq__chevron{transform:rotate(180deg)}.ld-faq__q{font-family:var(--font-body);font-size:1.0625rem;font-weight:700;line-height:1.6}.ld-faq__a{padding:0 4px 20px;color:var(--ld-ink-soft);line-height:1.85;display:grid;gap:8px}.ld-faq__a a{color:var(--ld-ink);text-decoration:underline;text-decoration-color:var(--ld-coral);text-underline-offset:3px}.ld-faq__a a:hover{text-decoration-thickness:2px}.ld-faq__links{display:grid;gap:2px;padding-left:1.25rem;list-style:disc}.ld-faq__links li::marker{color:var(--ld-coral)}.ld-faq__links a{display:inline-block;padding-block:6px}.ld-list{margin-top:16px;max-width:46rem;border-top:1px solid var(--ld-line)}.ld-list__item{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:14px 0;border-bottom:1px solid var(--ld-line)}.ld-list__title{font-weight:700;font-size:1.0625rem;color:var(--ld-ink)}a.ld-list__title{text-decoration:underline;text-decoration-color:var(--ld-coral);text-underline-offset:4px}.ld-list__en{font-size:.875rem;color:var(--ld-ink-soft)}.ld-list__meta{display:inline-flex;flex-wrap:wrap;gap:6px;margin-left:auto}.ld-hublist{display:grid;gap:16px}.ld-hubitem{background:#fff;border:1px solid var(--ld-line);border-radius:24px;padding:24px;box-shadow:var(--shadow-card);transition:box-shadow .2s ease}.ld-hubitem:hover{box-shadow:var(--shadow-elevated)}.ld-hubitem__link{display:block;color:inherit;text-decoration:none}.ld-hubitem__title{display:block;font-family:var(--font-display);font-size:1.5rem;font-weight:600;line-height:1.35;text-decoration:underline;text-decoration-color:var(--ld-coral);text-underline-offset:6px;text-decoration-thickness:2px}.ld-hubitem__en{display:block;margin-top:4px;font-size:.9375rem;color:var(--ld-ink-soft)}.ld-hubitem__summary{margin-top:10px;max-width:42rem;line-height:1.85}.ld-hubitem .ld-list__meta{margin:14px 0 0}@media (prefers-reduced-motion: reduce){.ld-materials *,.ld-materials *:before,.ld-materials *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.ld-word.is-new{animation:none;background:var(--ld-peach)}.ld-toast{transform:translate(-50%)}}@media print{@page{margin:14mm}html,body.ld-materials{background:#fff!important}.ld-materials{font-size:11pt;line-height:1.7}.ld-nav,.ld-breadcrumb,.ld-no-print,.ld-js-only,.ld-toast,.ld-select-add,.ld-pen-canvas,.ld-footer,.ld-block [data-island=dialogue] button,.ld-sticky-cta,.ld-notes__toggle,.ld-block [data-face=en]{display:none!important}.ld-block [data-flip]{transform:none!important}.ld-block [data-face=ja]{position:static!important;transform:none!important;backface-visibility:visible!important}.ld-notes::details-content{content-visibility:visible;display:contents}.ld-notes{border-top:0;padding-top:0;margin-top:10pt}.ld-notepanel{-moz-column-break-inside:avoid;break-inside:avoid}html.ld-ready body.ld-materials{padding-bottom:0!important}.ld-materials *,.ld-materials *:before,.ld-materials *:after{animation:none!important;transition:none!important}.ld-container{max-width:none;padding:0}.ld-hero{padding-top:0}.ld-hero>*{max-width:none}.ld-h1{font-size:22pt;margin-top:0}#lesson{margin-top:16pt}.ld-board{background:none;padding:0;margin:0;border-radius:0}.ld-board__grid{display:block}.ld-canvas__item+.ld-canvas__item{margin-top:12pt}.ld-block{box-shadow:none!important;border:1px solid #d9cfc4;padding:14pt!important}.ld-block img{max-height:80mm!important}.ld-block .font-display,.ld-block [class*=text-xl]{font-size:13pt!important;line-height:1.6!important}.ld-block h2.font-display{font-size:15pt!important}.ld-block [data-island=dialogue]>div{padding-block:6pt!important}.ld-block [data-island=dialogue]>div>*+*{margin-top:8pt!important}.ld-block [data-island=dialogue] .rounded-2xl{padding:5pt 10pt!important}.ld-block,.ld-word,.ld-block [data-island=dialogue]>div>*{break-inside:avoid-page}.ld-block{-moz-column-break-inside:auto;break-inside:auto}.ld-side{position:static;display:block;max-height:none}.ld-wordlist{position:static;max-height:none;overflow:visible;box-shadow:none;border:1px solid #d9cfc4;margin-top:12pt;-moz-column-break-inside:avoid;break-inside:avoid}.ld-words{-moz-columns:2;columns:2;-moz-column-gap:24pt;column-gap:24pt}.ld-word{-moz-column-break-inside:avoid;break-inside:avoid}.ld-footer{margin-top:16pt;border-top:1px solid #d9cfc4}.ld-footer>div{padding:8pt 0 0}a{color:inherit!important;text-decoration:none!important}}
