{"id":14022,"date":"2026-10-21T08:10:00","date_gmt":"2026-10-20T23:10:00","guid":{"rendered":"https:\/\/chicodori.net\/?p=14022"},"modified":"2026-10-19T10:55:28","modified_gmt":"2026-10-19T01:55:28","slug":"%e3%81%93%e3%81%a8%e3%81%b0%e3%81%ae%e3%83%a1%e3%83%ad%e3%83%87%e3%82%a3%e3%83%bc%e3%83%9f%e3%82%ad%e3%82%b5%e3%83%bc","status":"publish","type":"post","link":"https:\/\/chicodori.net\/?p=14022","title":{"rendered":"\u3053\u3068\u3070\u306e\u30e1\u30ed\u30c7\u30a3\u30fc\u30df\u30ad\u30b5\u30fc"},"content":{"rendered":"<!-- Lesson feature icons: shared semantic symbols -->\r\n<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"0\" height=\"0\" aria-hidden=\"true\" focusable=\"false\" style=\"position:absolute;overflow:hidden\"><defs>\r\n<symbol id=\"cd-icon-punctuation\" viewBox=\"0 0 48 48\"><rect x=\"8\" y=\"5\" width=\"32\" height=\"38\" rx=\"5\" fill=\"var(--cd-icon-accent,#fff2ca)\" stroke=\"currentColor\" stroke-width=\"2.5\"\/><text x=\"24\" y=\"30\" text-anchor=\"middle\" font-size=\"30\" font-family=\"sans-serif\" fill=\"currentColor\">\u3001<\/text><\/symbol>\r\n<symbol id=\"cd-icon-compare\" viewBox=\"0 0 48 48\"><g fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"4\" y=\"9\" width=\"16\" height=\"29\" rx=\"3\"\/><rect x=\"28\" y=\"9\" width=\"16\" height=\"29\" rx=\"3\"\/><path d=\"M9 16h6M9 23h6M33 16h6M33 23h6M21 24h6m-3-3 3 3-3 3\"\/><\/g><\/symbol>\r\n<symbol id=\"cd-icon-read-aloud\" viewBox=\"0 0 48 48\"><g fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"14\" cy=\"14\" r=\"6\"\/><path d=\"M4 39v-8a10 10 0 0 1 20 0v8M26 17l7-4v9zM36 10q8 7 0 15M40 6q12 11 0 23\"\/><\/g><\/symbol>\r\n<symbol id=\"cd-icon-audio\" viewBox=\"0 0 48 48\"><g fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M6 19h8l11-9v28l-11-9H6zM32 16q8 8 0 16M37 10q14 14 0 28\"\/><\/g><\/symbol>\r\n<\/defs><\/svg>\r\n<style>\r\n\r\n\/* cd-lesson v1 \u2014 shared presentation. Game logic and question data are separate. *\/\r\n.cd-lesson{--cd-ink:#254452;--cd-sky:#b5e9f5;--cd-soft:#f2f9fb;--cd-accent:#fff2a5;--cd-border:#cbdfe5;--cd-body:18px;--cd-title-size:28px;--cd-game-width:660px;color:var(--cd-ink);font:var(--cd-body)\/1.85 Meiryo,sans-serif;background:white}\r\nbody:has(.cd-lesson) .blog-post-title{display:none}\r\n.cd-lesson .cd-hero{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:16px;align-items:center;position:relative;overflow:hidden;padding:24px 26px 40px;background:var(--cd-sky);border-radius:22px 22px 32px 18px}\r\n.cd-lesson .cd-hero:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:23px;background:radial-gradient(ellipse at 50% 100%,white 68%,transparent 71%) 0 0\/64px 24px repeat-x}\r\n.cd-lesson .cd-tags{display:inline-block;background:var(--cd-accent);padding:3px 12px;border-radius:20px;font-size:16px;margin-bottom:10px}\r\n.cd-lesson .cd-title{font-size:var(--cd-title-size);line-height:1.5;margin:0 0 12px;color:var(--cd-ink);letter-spacing:0;padding:0;border:0}\r\n.cd-lesson .cd-lead{margin:0;font-size:18px;line-height:1.85}\r\n.cd-lesson .cd-mascot{text-align:center}.cd-lesson .cd-mascot p{font-size:15px;background:white;padding:10px 6px;border-radius:22px;line-height:1.6;margin:0 0 8px}.cd-lesson .cd-mascot img{width:90px;height:90px;object-fit:contain;border-radius:0}\r\n.cd-lesson .cd-points{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 28px;padding:0}\r\n.cd-lesson .cd-point{display:flex;align-items:center;justify-content:center;gap:8px;font-size:16px;line-height:1.55;margin:0;padding:8px 0}.cd-lesson .cd-point__icon,.cd-lesson .cd-point>svg{width:36px;height:36px;flex:none;color:#31596b}\r\n.cd-lesson .cd-play{max-width:var(--cd-game-width);margin:0 auto}.cd-lesson .cd-play-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 12px}.cd-lesson .cd-section-title{font-size:21px;line-height:1.6;margin:0;color:var(--cd-ink);padding:0;border:0}.cd-lesson .cd-count-label{font-size:16px;color:#526c77}.cd-lesson .cd-start-note{font-size:18px;margin:0 0 14px}\r\n.cd-lesson .cdl-game{width:100%;max-width:100%;margin:0;box-shadow:none}\r\n.cd-lesson .cdl-brand,.cd-lesson .cdl-topic{display:none}\r\n.cd-lesson .cdl-title{font-size:19px;line-height:1.5}\r\n.cd-lesson .cd-method{max-width:var(--cd-game-width);margin:22px auto;border-bottom:1px solid var(--cd-border);padding-bottom:12px}.cd-lesson .cd-method summary{font-size:19px;font-weight:bold;cursor:pointer;min-height:44px;padding:6px 0}.cd-lesson .cd-method ol{padding-left:28px;margin:10px 0}.cd-lesson .cd-method li{font-size:18px;margin:8px 0}\r\n.cd-lesson .cd-takeaway{max-width:var(--cd-game-width);margin:24px auto;padding:18px 22px;border-radius:18px;background:#fffbeb}.cd-lesson .cd-takeaway p{font-size:18px;margin:8px 0 0}.cd-lesson .cd-takeaway strong{background:linear-gradient(transparent 65%,#ffeb8b 65%)}\r\n.cd-lesson .cd-like{margin:20px auto;text-align:center}.cd-lesson .cd-related{margin:28px 0 0;padding:20px 24px;background:var(--cd-soft);border-radius:22px}.cd-lesson .cd-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.cd-lesson .cd-link{display:inline-flex;align-items:center;min-height:46px;padding:8px 18px;border:1px solid var(--cd-border);border-radius:25px;background:white;color:#285d74;font-size:18px;text-decoration:none}\r\n.cd-lesson a:focus-visible,.cd-lesson summary:focus-visible{outline:3px solid #276887;outline-offset:3px}\r\nbody:has(.cd-lesson) #comments{margin-top:36px;padding:24px;background:#f5fafb;border:1px solid #d9e8ec;border-radius:22px}body:has(.cd-lesson) #reply-title{font-size:22px;letter-spacing:0}body:has(.cd-lesson) #commentform label,body:has(.cd-lesson) #commentform textarea{font-size:18px}body:has(.cd-lesson) #commentform textarea{border-radius:14px;background:white}body:has(.cd-lesson) #comment-submit{border-radius:24px;background:#32697c;font-size:18px;text-transform:none;letter-spacing:0}\r\n@media(max-width:600px){.cd-lesson{--cd-title-size:24px}.cd-lesson .cd-hero{grid-template-columns:minmax(0,1fr) 64px;padding:18px 16px 34px;gap:10px}.cd-lesson .cd-mascot img{width:64px;height:64px}.cd-lesson .cd-mascot p{font-size:14px;padding:7px 3px}.cd-lesson .cd-lead{grid-column:1\/-1}.cd-lesson .cd-tags{font-size:15px}.cd-lesson .cd-points{gap:8px;margin:12px 0 24px}.cd-lesson .cd-point{flex-direction:column;text-align:center;font-size:15px;gap:6px}.cd-lesson .cd-point__icon,.cd-lesson .cd-point>svg{width:32px;height:32px}.cd-lesson .cd-takeaway{padding:16px}.cd-lesson .cd-related{padding:18px}.cd-lesson .cd-link{width:100%;justify-content:center}}\r\n\r\n.cd-lesson .cd-lead{grid-column:1\/-1}\r\n\r\n\/* Feature icons: unified cream horizontal cards *\/\r\n.cd-lesson .cd-features{margin:14px auto 24px;max-width:660px}\r\n.cd-lesson .cd-features-title{font-size:16px;font-weight:400;line-height:1.6;text-align:center;color:#526c77;margin:0 0 8px;padding:0;border:0;letter-spacing:0}\r\n.cd-lesson .cd-points{margin:0;gap:10px}\r\n.cd-lesson .cd-point{display:grid;grid-template-columns:40px 1fr;gap:10px;align-items:center;text-align:left;padding:10px;background:#fffdf5;border:1px solid #eee9d8;border-radius:14px;font-size:16px;font-weight:400;line-height:1.6;min-height:70px;box-sizing:border-box}\r\n.cd-lesson .cd-point__icon,.cd-lesson .cd-point>svg{width:40px;height:40px;color:#806d3f;--cd-icon-accent:#fff2ca}\r\n.cd-lesson .cd-point>span{border-left:1px solid #e7dfc8;padding-left:10px;min-height:40px;display:flex;align-items:center}\r\n@media(max-width:600px){.cd-lesson .cd-points{grid-template-columns:1fr;gap:8px}.cd-lesson .cd-point{min-height:60px;padding:8px 12px;grid-template-columns:36px 1fr}.cd-lesson .cd-point__icon,.cd-lesson .cd-point>svg{width:36px;height:36px}}\r\n\r\n\/* Shared article sections; game internals retain their own styles. *\/\r\n.cd-lesson .cd-copy{max-width:660px;margin:24px auto;color:var(--cd-ink);font-size:18px;line-height:1.85}\r\n.cd-lesson .cd-copy p,.cd-lesson .cd-copy li{font-size:18px;line-height:1.85;margin:12px 0}\r\n.cd-lesson .cd-copy h2,.cd-lesson .cd-copy h3,.cd-lesson .cd-copy h4{font-size:21px;line-height:1.6;color:var(--cd-ink);margin:0 0 14px;padding:0;border:0;letter-spacing:0}\r\n.cd-lesson .cd-copy img{max-width:100%;height:auto}.cd-lesson .cd-copy figure{margin:18px auto}\r\n.cd-lesson .cd-note{display:flex;align-items:center;gap:14px;background:#f2f9fb;padding:14px 18px;border-radius:18px;margin:18px 0}\r\n.cd-lesson .cd-note>img{width:52px;height:62px;object-fit:contain;flex:none}.cd-lesson .cd-note p{margin:0}\r\n.cd-lesson .cd-copy summary{cursor:pointer;font-size:19px;font-weight:bold;min-height:44px;padding:8px 0}\r\n.cd-lesson details.cd-copy{border-top:1px solid var(--cd-border);padding-top:12px}\r\n.cd-lesson .cd-copy mark{background:transparent;color:inherit}.cd-lesson .cd-copy a{color:#285d74;text-decoration:underline}\r\n.cd-lesson .cd-lead p{font-size:18px;line-height:1.85;margin:0}\r\n.cd-lesson .cd-points{grid-template-columns:repeat(auto-fit,minmax(185px,1fr))}\r\n.cd-lesson .cd-point{list-style:none}.cd-lesson .cd-point>span{font-size:16px}\r\n.cd-lesson .cd-game-mount{max-width:660px;margin:0 auto}.cd-lesson .cd-game-mount>div{max-width:100%}\r\n.cd-lesson .cd-like{margin:12px auto 18px}.cd-lesson .cd-play{margin-top:20px}\r\n@media(max-width:600px){.cd-lesson .cd-points{grid-template-columns:1fr}.cd-lesson .cd-copy{margin:20px auto}.cd-lesson .cd-note{padding:12px}}\r\n\r\n\r\n\/* Circle area: compact layout, 2026-10-15 *\/\r\n#circle-area-game{container-type:inline-size}\r\n#circle-area-game .circle-game{margin:12px auto;padding:14px;border-radius:18px;font-size:18px;line-height:1.5;box-shadow:0 3px 12px #24465012}\r\n#circle-area-game .circle-game h2{font-size:24px;line-height:1.5;margin:0 0 8px}\r\n#circle-area-game .status{font-size:18px;margin-bottom:10px}\r\n#circle-area-game .problem-card{padding:12px;margin-bottom:12px;border-radius:16px}\r\n#circle-area-game .question{font-size:22px;line-height:1.5;margin:0 0 4px}\r\n#circle-area-game .circle-svg{width:240px;margin:0 auto 4px}\r\n#circle-area-game .formula{font-size:20px;margin:6px 0}\r\n#circle-area-game .formula:empty{display:none}\r\n#circle-area-game .answer-row{font-size:18px;margin:8px 0;white-space:nowrap}\r\n#circle-area-game .answer-row input{width:108px;height:46px;padding:6px;font-size:22px}\r\n#circle-area-game .main-btn{min-height:46px;padding:8px 22px;font-size:20px;line-height:1.4}\r\n#circle-area-game .message{min-height:28px;margin-top:6px;font-size:20px;line-height:1.4}\r\n#circle-area-game .calculator{padding:10px;border-radius:14px}\r\n#circle-area-game .calc-display{height:44px;padding:6px 8px;margin-bottom:8px;font-size:22px}\r\n#circle-area-game .calc-grid{gap:6px}\r\n#circle-area-game .calc-btn{min-height:46px;padding:6px 4px;font-size:20px;line-height:1.4;border-radius:9px}\r\n#circle-area-game [data-calc=\"copy\"]{font-size:16px;white-space:normal;line-height:1.25}\r\n@container(min-width:580px){\r\n#circle-area-game .circle-game{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 12px;align-items:start}\r\n#circle-area-game .circle-game>h2,#circle-area-game .status{grid-column:1\/-1}\r\n#circle-area-game .problem-card{margin:0;min-width:0}\r\n#circle-area-game .calculator{min-width:0}\r\n}\r\n\r\n\r\n\/* Average: compact layout, 2026-10-15 *\/\r\n#average-game{container-type:inline-size}\r\n#average-game .average-game{margin:12px auto;padding:14px;border-radius:18px;font-size:18px;line-height:1.5;box-shadow:0 3px 12px #24465012}\r\n#average-game .average-game h2{font-size:24px;line-height:1.5;margin:0 0 8px}\r\n#average-game .status{font-size:18px;margin-bottom:10px}\r\n#average-game .problem-card{padding:12px;margin-bottom:12px;border-radius:16px}\r\n#average-game .question{font-size:22px;line-height:1.5;margin:0 0 4px}\r\n#average-game .formula{font-size:20px;margin:6px 0}\r\n#average-game .formula:empty{display:none}\r\n#average-game .answer-row{font-size:18px;margin:8px 0;white-space:nowrap}\r\n#average-game .answer-row input{width:108px;height:46px;padding:6px;font-size:22px}\r\n#average-game .main-btn{min-height:46px;padding:8px 22px;font-size:20px;line-height:1.4}\r\n#average-game .message{min-height:28px;margin-top:6px;font-size:20px;line-height:1.4}\r\n#average-game .calculator{padding:10px;border-radius:14px}\r\n#average-game .calc-display{height:44px;padding:6px 8px;margin-bottom:8px;font-size:22px}\r\n#average-game .calc-grid{gap:6px}\r\n#average-game .calc-btn{min-height:46px;padding:6px 4px;font-size:20px;line-height:1.4;border-radius:9px}\r\n#average-game [data-calc=\"copy\"]{font-size:16px;white-space:normal;line-height:1.25}\r\n@container(min-width:580px){\r\n#average-game .average-game{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 12px;align-items:start}\r\n#average-game .average-game>h2,#average-game .status{grid-column:1\/-1}\r\n#average-game .problem-card{margin:0;min-width:0}\r\n#average-game .calculator{min-width:0}\r\n}\r\n\r\n#average-game .question{font-size:20px;line-height:1.6;margin:0 0 10px}\r\n#average-game .average-table{font-size:20px;line-height:1.5;margin:10px 0}\r\n#average-game .average-table th,#average-game .average-table td{padding:6px 8px}\r\n\r\n\r\n\/* Compact requested lessons 12398,13154,13156 *\/\r\n#circle-game .circle-game{padding:12px;margin:12px auto;border-width:2px;border-radius:18px;box-shadow:0 3px 0 #f1b84b}\r\n#circle-game h2{font-size:24px;line-height:1.5}\r\n#circle-game .game-lead,#circle-game .score,#circle-game .answer-label{font-size:16px;line-height:1.5}\r\n#circle-game .level-buttons{margin:6px 0;gap:8px}\r\n#circle-game .level-btn{min-height:44px;font-size:16px;padding:6px 12px}\r\n#circle-game .question-text{font-size:18px;line-height:1.5;min-height:0}\r\n#circle-game .circle-wrap{max-width:430px}\r\n#circle-game .measure-text{font-size:26px}\r\n#circle-game .unknown-text{font-size:28px}\r\n#circle-game .answer-area{margin-top:6px}\r\n#circle-game .answer-display{min-height:44px;margin-bottom:6px}\r\n#circle-game .keypad{max-width:540px}\r\n#circle-game .key{min-height:44px;font-size:20px}\r\n:is(#post-13154,#post-13156) .cdl-game{font-size:18px;line-height:1.6;border-radius:18px}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-brand,:is(#post-13154,#post-13156) .cdl-game .cdl-topic{display:none}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-header{padding:12px 16px;gap:10px}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-title{font-size:21px;line-height:1.5;margin:0}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-help-toggle{font-size:16px;min-height:44px;padding:6px 10px}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-toolbar{padding:8px 16px;font-size:16px}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-body{padding:14px 16px}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-prompt{font-size:21px;line-height:1.6;margin:0 0 8px}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-learning-note{font-size:18px;line-height:1.6;padding:6px 10px;margin:0 0 10px}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-visual{padding:10px;margin:0 0 12px;min-height:0}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-reading{font-size:20px;line-height:1.7;padding:10px 14px;margin:0}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-choices{grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:8px}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-choice{font-size:20px;min-height:54px;padding:10px;line-height:1.5}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-feedback{font-size:18px;line-height:1.6;min-height:0;padding:10px 12px;margin:10px 0 0}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-actions{margin-top:8px;gap:8px}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-footer{padding:8px 16px;font-size:16px}\r\n:is(#post-13154,#post-13156) .cdl-game .cdl-footer button{min-height:44px}\r\n#post-13156 .cdl-game .cdl-caption{font-size:18px;margin:0 0 6px}\r\n#post-13156 .cdl-game .cdl-votes-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0}\r\n#post-13156 .cdl-game .cdl-votes-cards span{font-size:18px;line-height:1.5;padding:6px 4px;min-height:0;min-width:0}\r\n#post-13156 .cdl-game .cdl-vote-table{font-size:20px;line-height:1.5;margin:0;width:100%}\r\n#post-13156 .cdl-game .cdl-vote-table caption{font-size:18px;padding:0 0 6px}\r\n#post-13156 .cdl-game .cdl-vote-table th,#post-13156 .cdl-game .cdl-vote-table td{padding:6px 8px}\r\n@media(min-width:1000px){#post-13156 .cdl-game .cdl-visual{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 14px;align-items:start}#post-13156 .cdl-game .cdl-caption{grid-column:1}#post-13156 .cdl-game .cdl-votes-cards{grid-column:1}#post-13156 .cdl-game .cdl-vote-table{grid-column:2;grid-row:1\/3}}\r\n@media(max-width:520px){#circle-game .keypad{grid-template-columns:repeat(5,1fr)}:is(#post-13154,#post-13156) .cdl-game .cdl-choices{grid-template-columns:1fr}#post-13156 .cdl-game .cdl-vote-table{margin-top:12px}}\r\n\r\n\r\n#circle-game{container-type:inline-size}\r\n@container(min-width:600px){#circle-game .circle-game{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:8px 12px;align-items:start}#circle-game .circle-game>h2,#circle-game .game-lead,#circle-game .level-buttons,#circle-game .score,#circle-game .result{grid-column:1\/-1;margin:0}#circle-game .circle-wrap{max-width:100%}#circle-game .problem-card{align-self:stretch;display:flex;flex-direction:column;justify-content:center}#circle-game .answer-area{margin:0}#circle-game .keypad{grid-template-columns:repeat(3,1fr);gap:6px}#circle-game .key.action{grid-column:2\/4!important}#circle-game .key.enter{grid-column:1\/-1!important}#circle-game .measure-text{font-size:28px}}\r\n\r\n\r\n\r\n\/* Reviewed JS layouts: 2026-10-15 *\/\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game{font-size:18px;line-height:1.6;border-radius:18px}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-brand,:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-topic{display:none}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-header{padding:12px 16px;gap:10px}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-title{font-size:21px;line-height:1.5;margin:0}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-help-toggle{font-size:16px;min-height:44px;padding:6px 10px}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-toolbar{padding:8px 16px;font-size:16px}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-body{padding:14px 16px}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-prompt{font-size:21px;line-height:1.6;margin:0 0 8px}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-learning-note{font-size:18px;line-height:1.6;padding:6px 10px;margin:0 0 10px}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-visual{padding:10px;margin:0 0 12px;min-height:0}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-reading{font-size:20px;line-height:1.7;padding:10px 14px;margin:0}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-choices{grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:8px}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-choice{font-size:20px;min-height:54px;padding:10px;line-height:1.5}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-feedback{font-size:18px;line-height:1.6;min-height:0;padding:10px 12px;margin:10px 0 0}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-actions{margin-top:8px;gap:8px}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-footer{padding:8px 16px;font-size:16px}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-footer button{min-height:44px}\r\n\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-long .cdl-choices{grid-template-columns:1fr}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-visual:empty{display:none}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-speak{min-height:44px;font-size:16px;padding:6px 10px;margin-top:6px}\r\n:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-caption{font-size:18px;line-height:1.6;margin:0 0 8px}\r\n#post-13152 .cdl-game .cdl-reading{font-size:22px;line-height:1.8}\r\n#post-13152 .cdl-game .cdl-choices{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}\r\n#post-13146 .cdl-game .cdl-choices{grid-template-columns:repeat(auto-fit,minmax(245px,1fr))}\r\n#post-13146 .cdl-game .cdl-new-picture{max-width:270px;margin:0 auto}\r\n@media(max-width:520px){:is(#post-13054,#post-13056,#post-13058,#post-13060,#post-13062,#post-13064,#post-13068,#post-13071,#post-13073,#post-13144,#post-13146,#post-13148,#post-13150,#post-13152) .cdl-game .cdl-choices{grid-template-columns:1fr}}\r\n\/* Circle area: compact layout, 2026-10-15 *\/\r\n.cd-lesson #volume-game{container-type:inline-size}\r\n.cd-lesson #volume-game .volume-game{margin:12px auto;padding:14px;border-radius:18px;font-size:18px;line-height:1.5;box-shadow:0 3px 12px #24465012}\r\n.cd-lesson #volume-game .volume-game h2{font-size:24px;line-height:1.5;margin:0 0 8px}\r\n.cd-lesson #volume-game .status{font-size:18px;margin-bottom:10px}\r\n.cd-lesson #volume-game .problem-card{padding:12px;margin-bottom:12px;border-radius:16px}\r\n.cd-lesson #volume-game .question{font-size:22px;line-height:1.5;margin:0 0 4px}\r\n.cd-lesson #volume-game .shape-svg{width:240px;margin:0 auto 4px}\r\n.cd-lesson #volume-game .formula{font-size:20px;margin:6px 0}\r\n.cd-lesson #volume-game .formula:empty{display:none}\r\n.cd-lesson #volume-game .answer-row{font-size:18px;margin:8px 0;white-space:nowrap}\r\n.cd-lesson #volume-game .answer-row input{width:108px;height:46px;padding:6px;font-size:22px}\r\n.cd-lesson #volume-game .main-btn{min-height:46px;padding:8px 22px;font-size:20px;line-height:1.4}\r\n.cd-lesson #volume-game .message{min-height:28px;margin-top:6px;font-size:20px;line-height:1.4}\r\n.cd-lesson #volume-game .calculator{padding:10px;border-radius:14px}\r\n.cd-lesson #volume-game .calc-display{height:44px;padding:6px 8px;margin-bottom:8px;font-size:22px}\r\n.cd-lesson #volume-game .calc-grid{gap:6px}\r\n.cd-lesson #volume-game .calc-btn{min-height:46px;padding:6px 4px;font-size:20px;line-height:1.4;border-radius:9px}\r\n.cd-lesson #volume-game [data-calc=\"copy\"]{font-size:16px;white-space:normal;line-height:1.25}\r\n@container(min-width:580px){\r\n.cd-lesson #volume-game .volume-game{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 12px;align-items:start}\r\n.cd-lesson #volume-game .volume-game>h2,.cd-lesson #volume-game .status{grid-column:1\/-1}\r\n.cd-lesson #volume-game .problem-card{margin:0;min-width:0}\r\n.cd-lesson #volume-game .calculator{min-width:0}\r\n}\r\n\r\n\r\n\r\n.cd-lesson #rate-change-game>div{padding:14px;margin:12px auto;border-radius:18px}\r\n.cd-lesson #rate-change-game h2{font-size:24px;line-height:1.5;margin:0 0 8px}\r\n.cd-lesson #rate-change-game .mode-area{font-size:18px;gap:6px;margin:8px 0}\r\n.cd-lesson #rate-change-game .mode-area label{min-height:44px;display:inline-flex;align-items:center}\r\n.cd-lesson #rate-change-game .status{font-size:18px;margin:8px 0}\r\n.cd-lesson #rate-change-game .problem-card{padding:12px;border-radius:14px}\r\n.cd-lesson #rate-change-game .problem,.cd-lesson #rate-change-game .story{font-size:22px;line-height:1.65;margin:8px 0}\r\n.cd-lesson #rate-change-game .direction,.cd-lesson #rate-change-game .mission{font-size:18px;margin:4px 0}\r\n.cd-lesson #rate-change-game .answer-row{font-size:20px;margin:8px 0}\r\n.cd-lesson #rate-change-game .answer-box{font-size:24px;min-height:46px;padding:6px 10px;margin:8px auto;line-height:1.4}\r\n.cd-lesson #rate-change-game .keypad{gap:6px;margin:10px auto;max-width:420px}\r\n.cd-lesson #rate-change-game .key-btn{font-size:20px;min-height:46px;padding:6px 4px;line-height:1.4}\r\n.cd-lesson #rate-change-game .message{font-size:20px;min-height:28px;margin:8px 0;line-height:1.5}\r\n\r\n.cd-lesson #rate-rescue-game>div{padding:14px;margin:12px auto;border-radius:18px}\r\n.cd-lesson #rate-rescue-game h2{font-size:24px;line-height:1.5;margin:0 0 8px}\r\n.cd-lesson #rate-rescue-game .mode-area{font-size:18px;gap:6px;margin:8px 0}\r\n.cd-lesson #rate-rescue-game .mode-area label{min-height:44px;display:inline-flex;align-items:center}\r\n.cd-lesson #rate-rescue-game .status{font-size:18px;margin:8px 0}\r\n.cd-lesson #rate-rescue-game .problem-card{padding:12px;border-radius:14px}\r\n.cd-lesson #rate-rescue-game .problem,.cd-lesson #rate-rescue-game .story{font-size:22px;line-height:1.65;margin:8px 0}\r\n.cd-lesson #rate-rescue-game .direction,.cd-lesson #rate-rescue-game .mission{font-size:18px;margin:4px 0}\r\n.cd-lesson #rate-rescue-game .answer-row{font-size:20px;margin:8px 0}\r\n.cd-lesson #rate-rescue-game .answer-box{font-size:24px;min-height:46px;padding:6px 10px;margin:8px auto;line-height:1.4}\r\n.cd-lesson #rate-rescue-game .keypad{gap:6px;margin:10px auto;max-width:420px}\r\n.cd-lesson #rate-rescue-game .key-btn{font-size:20px;min-height:46px;padding:6px 4px;line-height:1.4}\r\n.cd-lesson #rate-rescue-game .message{font-size:20px;min-height:28px;margin:8px 0;line-height:1.5}\r\n\r\n.cd-lesson #speed-rescue-game>div{padding:14px;margin:12px auto;border-radius:18px}\r\n.cd-lesson #speed-rescue-game h2{font-size:24px;line-height:1.5;margin:0 0 8px}\r\n.cd-lesson #speed-rescue-game .mode-area{font-size:18px;gap:6px;margin:8px 0}\r\n.cd-lesson #speed-rescue-game .mode-area label{min-height:44px;display:inline-flex;align-items:center}\r\n.cd-lesson #speed-rescue-game .status{font-size:18px;margin:8px 0}\r\n.cd-lesson #speed-rescue-game .problem-card{padding:12px;border-radius:14px}\r\n.cd-lesson #speed-rescue-game .problem,.cd-lesson #speed-rescue-game .story{font-size:22px;line-height:1.65;margin:8px 0}\r\n.cd-lesson #speed-rescue-game .direction,.cd-lesson #speed-rescue-game .mission{font-size:18px;margin:4px 0}\r\n.cd-lesson #speed-rescue-game .answer-row{font-size:20px;margin:8px 0}\r\n.cd-lesson #speed-rescue-game .answer-box{font-size:24px;min-height:46px;padding:6px 10px;margin:8px auto;line-height:1.4}\r\n.cd-lesson #speed-rescue-game .keypad{gap:6px;margin:10px auto;max-width:420px}\r\n.cd-lesson #speed-rescue-game .key-btn{font-size:20px;min-height:46px;padding:6px 4px;line-height:1.4}\r\n.cd-lesson #speed-rescue-game .message{font-size:20px;min-height:28px;margin:8px 0;line-height:1.5}\r\n\r\n.cd-lesson #box-formula-game>div{padding:14px;margin:12px auto;border-radius:18px}\r\n.cd-lesson #box-formula-game h2{font-size:24px;line-height:1.5;margin:0 0 8px}\r\n.cd-lesson #box-formula-game .mode-area{font-size:18px;gap:6px;margin:8px 0}\r\n.cd-lesson #box-formula-game .mode-area label{min-height:44px;display:inline-flex;align-items:center}\r\n.cd-lesson #box-formula-game .status{font-size:18px;margin:8px 0}\r\n.cd-lesson #box-formula-game .problem-card{padding:12px;border-radius:14px}\r\n.cd-lesson #box-formula-game .problem,.cd-lesson #box-formula-game .story{font-size:22px;line-height:1.65;margin:8px 0}\r\n.cd-lesson #box-formula-game .direction,.cd-lesson #box-formula-game .mission{font-size:18px;margin:4px 0}\r\n.cd-lesson #box-formula-game .answer-row{font-size:20px;margin:8px 0}\r\n.cd-lesson #box-formula-game .answer-box{font-size:24px;min-height:46px;padding:6px 10px;margin:8px auto;line-height:1.4}\r\n.cd-lesson #box-formula-game .keypad{gap:6px;margin:10px auto;max-width:420px}\r\n.cd-lesson #box-formula-game .key-btn{font-size:20px;min-height:46px;padding:6px 4px;line-height:1.4}\r\n.cd-lesson #box-formula-game .message{font-size:20px;min-height:28px;margin:8px 0;line-height:1.5}\r\n.cd-lesson #rate-change-game .problem{font-size:32px}.cd-lesson #speed-rescue-game .scene{font-size:38px;margin:4px 0}.cd-lesson #box-formula-game .key-btn.check,.cd-lesson #box-formula-game .key-btn.back{font-size:18px}\r\n\r\n.cd-lesson #story-order-game .sog-game{padding:14px;margin:12px auto}\r\n.cd-lesson #story-order-game .sog-title{font-size:24px;margin:0 0 8px}\r\n.cd-lesson #story-order-game .sog-lead,.cd-lesson #story-order-game .sog-instruction{font-size:18px;line-height:1.6;margin:8px 0}\r\n.cd-lesson #story-order-game .sog-progress{margin:8px auto}\r\n.cd-lesson #story-order-game .sog-card{padding:12px;margin-top:12px}\r\n.cd-lesson #story-order-game .sog-topic{font-size:22px;margin:0 0 8px}\r\n.cd-lesson #story-order-game .sog-item,.cd-lesson #story-order-game .sog-answer-box{font-size:20px;line-height:1.6;min-height:48px;padding:8px 12px}\r\n.cd-lesson #story-order-game .sog-answer-row{min-height:48px;margin:6px 0;gap:8px}\r\n.cd-lesson #story-order-game .sog-label{font-size:18px;min-height:48px;padding:8px}\r\n.cd-lesson #story-order-game .sog-pool-title,.cd-lesson #story-order-game .sog-answer-title{font-size:18px;margin:10px 0 6px}\r\n.cd-lesson #story-order-game .sog-actions{margin:10px 0;gap:8px}\r\n.cd-lesson #story-order-game .sog-actions button{min-height:44px;font-size:20px;padding:8px 16px}\r\n.cd-lesson #story-order-game .sog-message{min-height:28px;margin-top:8px;font-size:20px}\r\n.cd-lesson #number-hunter-game.number-hunter{padding:14px;margin:12px auto}\r\n.cd-lesson #number-hunter-game h2{font-size:24px;margin:0 0 8px}\r\n.cd-lesson #number-hunter-game .rule{font-size:18px;margin:8px 0}\r\n.cd-lesson #number-hunter-game .target-box{padding:10px;margin:8px 0}\r\n.cd-lesson #number-hunter-game .target-number{font-size:38px;line-height:1.3}\r\n.cd-lesson #number-hunter-game .stars{font-size:28px;margin:6px 0}\r\n.cd-lesson #number-hunter-game .status{font-size:20px;margin:6px 0}\r\n.cd-lesson #number-hunter-game .card-grid{gap:8px;margin:10px 0}\r\n.cd-lesson #number-hunter-game .calc-card{font-size:24px;min-height:60px;padding:10px}\r\n.cd-lesson #number-hunter-game .next-btn{font-size:20px;min-height:44px;padding:8px 18px}\r\n.cd-lesson #three-hint-quiz-game .three-hint-game,.cd-lesson #syrup-memory-game .memory-game{padding:14px;margin:12px auto}\r\n.cd-lesson #three-hint-quiz-game h2,.cd-lesson #syrup-memory-game h2{font-size:24px;margin:0 0 8px}\r\n.cd-lesson #three-hint-quiz-game .game-lead,.cd-lesson #syrup-memory-game .lead{font-size:18px;line-height:1.6;margin:8px 0}\r\n.cd-lesson #three-hint-quiz-game .question-card{padding:12px;margin:10px 0}\r\n.cd-lesson #three-hint-quiz-game .hint{font-size:20px;padding:8px;margin:6px 0}\r\n.cd-lesson #three-hint-quiz-game .choice-btn{font-size:24px;min-height:52px;padding:8px}\r\n.cd-lesson #three-hint-quiz-game .result,.cd-lesson #three-hint-quiz-game .message{font-size:20px;min-height:28px;margin:8px 0}\r\n.cd-lesson #syrup-memory-game .stage{padding:12px;margin:10px 0}\r\n.cd-lesson #syrup-memory-game .pad{width:110px;height:110px;font-size:44px}\r\n.cd-lesson #syrup-memory-game .pads{gap:12px;margin:10px auto}\r\n.cd-lesson #syrup-memory-game .status{font-size:20px;margin:8px 0}\r\n.cd-lesson #syrup-memory-game .result{min-height:28px;font-size:20px;margin:8px 0}\r\n.cd-lesson #connect-word-game .connect-game{padding:14px;margin:12px auto}\r\n.cd-lesson #connect-word-game h2{font-size:24px;margin:0 0 8px}\r\n.cd-lesson #connect-word-game .question{padding:10px;margin:10px 0}\r\n.cd-lesson #connect-word-game .question-word{font-size:28px;margin:6px 0}\r\n.cd-lesson #connect-word-game .buttons{gap:8px}\r\n.cd-lesson #connect-word-game .choice{padding:8px;min-height:44px}\r\n.cd-lesson #connect-word-game .choice-img{max-width:76px;height:auto;margin:0 auto 6px}\r\n.cd-lesson #connect-word-game .choice-main{font-size:20px}\r\n.cd-lesson #connect-word-game .choice-yomi{font-size:16px}\r\n.cd-lesson #connect-word-game .info-box{padding:12px;margin-top:16px}\r\n.cd-lesson #connect-word-game .info-item{padding:10px;margin:8px 0}\r\n.cd-lesson #connect-word-game .info-title,.cd-lesson #connect-word-game .info-text,.cd-lesson #connect-word-game .info-example{font-size:18px;line-height:1.6}\r\n.cd-lesson #connect-word-game .info-img-small{width:48px;height:auto}\r\n.cd-lesson #pref-kanji-game .pref-game{padding:14px;margin:12px auto}\r\n.cd-lesson #pref-kanji-game h2{font-size:24px;margin:0 0 8px}\r\n.cd-lesson #pref-kanji-game .game-lead{font-size:18px;line-height:1.6;margin:8px 0}\r\n.cd-lesson #pref-kanji-game .question-box{padding:10px;margin:10px 0}\r\n.cd-lesson #pref-kanji-game .question-title{font-size:20px;margin:6px 0}\r\n.cd-lesson #pref-kanji-game .kanji-btn{font-size:28px;min-height:54px;padding:8px 16px}\r\n.cd-lesson #koji-game .koji-game{padding:14px;margin:12px auto}\r\n.cd-lesson #koji-game h2{font-size:24px;margin:0 0 8px}\r\n.cd-lesson #koji-game .question-card{padding:12px;margin:10px 0}\r\n.cd-lesson #koji-game .question-label,.cd-lesson #koji-game .question-yomi{font-size:18px;margin:6px 0}\r\n.cd-lesson #koji-game .choice{padding:12px;font-size:20px}\r\n.cd-lesson #koji-game .mode-btn,.cd-lesson #koji-game .hint-btn{font-size:18px;min-height:44px;padding:8px 12px}\r\n.cd-lesson #water-mission .wg-wrap{padding:14px}\r\n.cd-lesson #water-mission .wg-header{padding:0 0 8px}\r\n.cd-lesson #water-mission .wg-hero{padding:10px 0;gap:10px}\r\n.cd-lesson #water-mission .wg-hero h2{font-size:26px;line-height:1.5}\r\n.cd-lesson #water-mission .wg-hero-stamp{display:none}\r\n.cd-lesson #water-mission .wg-intro{font-size:18px;margin:6px 0;line-height:1.6}\r\n.cd-lesson #water-mission .wg-course-bar{padding:8px 0;margin:8px 0}\r\n.cd-lesson #water-mission .wg-console-top{padding:10px}\r\n.cd-lesson #water-mission .wg-lab,.cd-lesson #water-mission .wg-brief,.cd-lesson #water-mission .wg-answer-pane{padding:12px}\r\n.cd-lesson #water-mission .wg-scene{max-width:440px;margin:0 auto}\r\n.cd-lesson #water-mission .wg-target{margin:6px 0}\r\n.cd-lesson #water-mission .wg-target strong{font-size:36px}\r\n.cd-lesson #water-mission .wg-question{font-size:22px;line-height:1.6;margin:10px 0}\r\n.cd-lesson #water-mission .wg-goal-box,.cd-lesson #water-mission .wg-conditions{padding:10px;margin:8px 0}\r\n\r\n#post-13152 .cdl-game .cdl-long .cdl-choices{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}\r\n#post-13146 .cdl-game .cdl-long .cdl-choices{grid-template-columns:repeat(auto-fit,minmax(245px,1fr))}\r\n:is(#post-13054,#post-13058,#post-13062) .cdl-game .cdl-focus-drawing{max-width:320px;margin:0 auto}\r\n@media(max-width:520px){#post-13152 .cdl-game .cdl-long .cdl-choices,#post-13146 .cdl-game .cdl-long .cdl-choices{grid-template-columns:1fr}}\r\n.cd-lesson #water-mission{container-type:inline-size}\r\n@container(min-width:580px){.cd-lesson #water-mission .wg-play-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.cd-lesson #water-mission .wg-lab,.cd-lesson #water-mission .wg-mission{min-width:0}.cd-lesson #water-mission .wg-scene{width:100%;max-width:100%}.cd-lesson #water-mission .wg-question{font-size:20px}.cd-lesson #water-mission .wg-target strong{font-size:32px}}\r\n\r\n\r\n@container(min-width:580px){.cd-lesson #water-mission .wg-lab{grid-column:1;grid-row:1}.cd-lesson #water-mission .wg-mission{display:block;grid-column:2;grid-row:1}.cd-lesson #water-mission .wg-brief,.cd-lesson #water-mission .wg-answer-pane{grid-area:auto}}\r\n\r\n\/* Compact active question screens *\/\r\n.cd-lesson #ratio-table-game .ratio-game,.cd-lesson #decimal-fraction-game .df-game{padding:14px;margin:12px auto;border-radius:18px}\r\n.cd-lesson #ratio-table-game h2,.cd-lesson #decimal-fraction-game h2{font-size:24px;line-height:1.5;margin:0 0 8px}\r\n.cd-lesson #ratio-table-game .ratio-top,.cd-lesson #decimal-fraction-game .df-top{margin:8px 0;gap:6px}\r\n.cd-lesson #ratio-table-game .ratio-badge,.cd-lesson #decimal-fraction-game .df-badge{font-size:16px;padding:6px 10px}\r\n.cd-lesson #ratio-table-game .ratio-story{font-size:20px;line-height:1.6;padding:10px;margin:10px 0}\r\n.cd-lesson #ratio-table-game .ratio-table-wrap{margin:10px 0}\r\n.cd-lesson #ratio-table-game .ratio-table th,.cd-lesson #ratio-table-game .ratio-table td{padding:8px 6px;font-size:20px;height:auto;min-width:44px}\r\n.cd-lesson #ratio-table-game .ratio-question-box{padding:10px;margin:10px 0}\r\n.cd-lesson #ratio-table-game .ratio-question{font-size:20px;line-height:1.6}\r\n.cd-lesson #ratio-table-game .ratio-choices,.cd-lesson #decimal-fraction-game .df-choices{gap:8px;margin:10px 0}\r\n.cd-lesson #ratio-table-game .ratio-choice,.cd-lesson #decimal-fraction-game .df-choice{font-size:22px;min-height:52px;padding:10px}\r\n.cd-lesson #ratio-table-game .ratio-message,.cd-lesson #decimal-fraction-game .df-message{font-size:20px;min-height:28px;margin:8px 0}\r\n.cd-lesson #decimal-fraction-game .df-card{padding:12px;margin:10px 0}\r\n.cd-lesson #decimal-fraction-game .df-decimal{font-size:34px;margin:6px 0}\r\n.cd-lesson #decimal-fraction-game .df-question{font-size:20px;margin:8px 0}\r\n.cd-lesson #decimal-fraction-game .df-fraction{font-size:28px;margin:10px auto;line-height:1.4}\r\n<\/style>\r\n<!-- Chicodori: fold explanation after the bird balloon (2026-10-19) -->\r\n<style>\r\n.cd-lesson .cd-instructions-fold{margin:22px 0 28px;border:2px solid var(--cd-border,#cbdfe5);border-radius:16px;background:#fff;overflow:hidden}\r\n.cd-lesson .cd-instructions-fold>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer;padding:16px 20px;background:var(--cd-soft,#f2f9fb);color:var(--cd-ink,#254452);font-size:19px;font-weight:bold;line-height:1.65;min-height:54px;box-sizing:border-box}\r\n.cd-lesson .cd-instructions-fold>summary::-webkit-details-marker{display:none}\r\n.cd-lesson .cd-instructions-fold>summary:after{content:'\uff0b';font-size:24px;line-height:1;flex:none}\r\n.cd-lesson .cd-instructions-fold[open]>summary:after{content:'\u2212'}\r\n.cd-lesson .cd-instructions-fold>summary:focus-visible{outline:3px solid #276887;outline-offset:-4px}\r\n.cd-lesson .cd-instructions-body{padding:4px 20px 16px}\r\n.cd-lesson .cd-instructions-body>:first-child.wp-block-spacer,.cd-lesson .cd-instructions-body>:last-child.wp-block-spacer{display:none}\r\n@media(max-width:600px){.cd-lesson .cd-instructions-fold>summary{font-size:18px;padding:14px 16px}.cd-lesson .cd-instructions-body{padding:4px 16px 12px}}\r\n@media print{.cd-lesson .cd-instructions-fold>.cd-instructions-body{display:block!important}}\r\n<\/style>\r\n<script>\r\n(function(){\r\n  function foldInstructions(){\r\n    document.querySelectorAll('.cd-lesson .cd-content').forEach(function(content){\r\n      if(content.querySelector('.cd-instructions-fold'))return;\r\n      var balloon=Array.from(content.children).find(function(node){\r\n        return node.matches('.wp-block-word-balloon-word-balloon-block') &&\r\n          Array.from(node.querySelectorAll('img')).some(function(img){return \/\\\/(?:chico\\.jpg|chicodori-san[^\/]*\\.(?:png|jpg))(?:[?#]|$)\/i.test(img.getAttribute('src')||'');});\r\n      });\r\n      if(!balloon)return;\r\n      var nodes=[],next=balloon.nextSibling;\r\n      var protectedSelector='.wp-block-word-balloon-word-balloon-block,.cdr-route,.cjr-route,.cd-play,.cd-related,.cd-method,details,iframe,video,audio,canvas,form,button,input,select,script,style,#remix';\r\n      while(next){\r\n        if(next.nodeType===1 && (next.matches(protectedSelector)||next.querySelector(protectedSelector)))break;\r\n        nodes.push(next);next=next.nextSibling;\r\n      }\r\n      if(!nodes.some(function(node){return node.nodeType===1 && (node.textContent.trim()||node.querySelector('img'));}))return;\r\n      var details=document.createElement('details');details.className='cd-instructions-fold';\r\n      var summary=document.createElement('summary');summary.textContent='\u904a\u3073\u65b9\u30fb\u304f\u308f\u3057\u3044\u8aac\u660e';\r\n      var body=document.createElement('div');body.className='cd-instructions-body';\r\n      details.appendChild(summary);details.appendChild(body);\r\n      balloon.parentNode.insertBefore(details,nodes[0]);\r\n      nodes.forEach(function(node){body.appendChild(node);});\r\n      \/\/ Existing anchor links still reveal their destination inside the folded area.\r\n      function revealHash(){\r\n        var id;try{id=decodeURIComponent(location.hash.slice(1));}catch(e){return;}\r\n        var target=id && document.getElementById(id);\r\n        if(target && body.contains(target)){details.open=true;target.scrollIntoView();}\r\n      }\r\n      window.addEventListener('hashchange',revealHash);revealHash();\r\n    });\r\n  }\r\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',foldInstructions,{once:true});\r\n  else foldInstructions();\r\n})();\r\n<\/script>\r\n\r\n<style>\r\n\/* WordPress\u901a\u5e38\u30d6\u30ed\u30c3\u30af\u7248\u306e\u6559\u6750\u30d8\u30c3\u30c0\u30fc *\/\r\n.cd-lesson.wp-block-group .cd-hero > .wp-block-group__inner-container{display:contents}\r\n.cd-lesson.wp-block-group .cd-hero .cd-mascot{margin:0}\r\n<\/style>\r\n\r\n<style>\r\n\/* \u901a\u5e38\u30d6\u30ed\u30c3\u30af\u306e\u30d8\u30c3\u30c0\u30fc\u3068\u3001\u904a\u3073\u65b9\u306e\u958b\u9589\u898b\u51fa\u3057 *\/\r\n:is(.cd-lesson,.cd-chicoratch) .cd-hero.wp-block-group>.wp-block-group__inner-container{display:contents}\r\n:is(.cd-lesson,.cd-chicoratch) .cd-hero.wp-block-group .cd-mascot{margin:0}\r\n:is(.cd-lesson,.cd-chicoratch) details.cd-instructions{max-width:660px;margin:24px auto;border:2px solid #94becd;border-radius:16px;background:#f5fafc;padding:0;overflow:hidden}\r\n:is(.cd-lesson,.cd-chicoratch) details.cd-instructions>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;cursor:pointer;min-height:58px;padding:14px 18px;background:#e0f1f7;color:#244c60;font-size:21px;font-weight:700;line-height:1.6}\r\n:is(.cd-lesson,.cd-chicoratch) details.cd-instructions>summary::-webkit-details-marker{display:none}\r\n:is(.cd-lesson,.cd-chicoratch) details.cd-instructions>summary::after{content:\"\uff0b\";flex:none;font-size:26px;line-height:1}\r\n:is(.cd-lesson,.cd-chicoratch) details.cd-instructions[open]>summary::after{content:\"\u2212\"}\r\n:is(.cd-lesson,.cd-chicoratch) details.cd-instructions>:not(summary){margin-left:18px;margin-right:18px}\r\n:is(.cd-lesson,.cd-chicoratch) details.cd-instructions>summary:focus-visible{outline:3px solid #286983;outline-offset:-4px}\r\n@media(max-width:600px){:is(.cd-lesson,.cd-chicoratch) details.cd-instructions>summary{font-size:19px;padding:12px 14px}}\r\n<\/style>\r\n\r\n<style>\r\n.cd-lesson .cd-kid-steps.wp-block-group>.wp-block-group__inner-container,.cd-lesson .cd-kid-step.wp-block-group>.wp-block-group__inner-container{display:contents}\r\n.cd-lesson .cd-native-step-13799-0{--kid-line:#efcf8e;--kid-bg:#ffedb8}\r\n.cd-lesson .cd-native-step-13799-1{--kid-line:#b9dce7;--kid-bg:#def3fa}\r\n.cd-lesson .cd-native-step-13799-2{--kid-line:#c7deb3;--kid-bg:#eaf4d9}\r\n<\/style>\r\n\r\n<!-- cd-feedback-sound-v1: 2026-10-19. Restore the pre-sound backup to undo. -->\r\n<style>\r\n.cd-lesson .cd-feedback-audio-bar{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;max-width:660px;margin:12px auto;color:#526c77;font-size:14px;line-height:1.6}\r\n.cd-lesson .cd-feedback-audio-toggle{min-height:42px;padding:6px 16px;border:2px solid #648e9c;border-radius:999px;background:#fff;color:#254452;font:700 16px\/1.5 sans-serif;cursor:pointer;text-transform:none;letter-spacing:0}\r\n.cd-lesson .cd-feedback-audio-toggle[aria-pressed=\"false\"]{background:#f3f4f6;color:#5b6470;border-color:#9ca3af}\r\n.cd-lesson .cd-feedback-audio-toggle:focus-visible{outline:3px solid #2563eb;outline-offset:3px}\r\n<\/style>\r\n<script>\r\n(function(){\r\n'use strict';\r\nconst configurations={\"12008\":{\"message\":\"#result\",\"positive\":\"\"},\"12011\":{\"message\":\"#result\",\"positive\":\"\"},\"12014\":{\"message\":\"#result\",\"positive\":\"\"},\"12017\":{\"message\":\"\",\"positive\":\"button.correct\",\"negative\":\"button.wrong\"},\"12061\":{\"message\":\"#message\",\"positive\":\"#message.correct\",\"negative\":\"#message.wrong\"},\"12067\":{\"message\":\"#message\",\"positive\":\"#message.correct\",\"negative\":\"#message.wrong\"},\"12076\":{\"message\":\"#message\",\"positive\":\"\"},\"12080\":{\"message\":\"#message\",\"positive\":\"\"},\"12083\":{\"message\":\"#message\",\"positive\":\"\",\"badText\":\"\u5c0f\u6570\u70b9\u306e\u53f3\u306f\u4f55\u3051\u305f|\u5206\u5b50\u306f\u5408\u3063\u3066\u3044\u307e\u3059|\u5206\u6bcd\u306f\u5408\u3063\u3066\u3044\u307e\u3059\"},\"12085\":{\"message\":\"#message\",\"positive\":\"\"},\"12091\":{\"message\":\"#message\",\"positive\":\"\"},\"12093\":{\"message\":\"#message\",\"positive\":\"\"},\"12095\":{\"message\":\"#message\",\"positive\":\"\"},\"12099\":{\"message\":\"#message\",\"positive\":\"\"},\"12101\":{\"message\":\"#message\",\"positive\":\"\"},\"12103\":{\"message\":\"#message\",\"positive\":\"\"},\"12105\":{\"message\":\"#message\",\"positive\":\"\"},\"12111\":{\"message\":\"#message\",\"positive\":\"\"},\"12113\":{\"message\":\"#message\",\"positive\":\"\"},\"12117\":{\"message\":\"#result,#message\",\"positive\":\"\"},\"12119\":{\"message\":\"#result\",\"positive\":\"\"},\"12121\":{\"message\":\"#status\",\"positive\":\".correct\",\"negative\":\".wrong\"},\"12123\":{\"message\":\"#result\",\"positive\":\"\"},\"12128\":{\"message\":\"#result\",\"positive\":\".correct-overlay\",\"negative\":\"#result.bad\"},\"12174\":{\"message\":\"#result\",\"positive\":\".correct-overlay\"},\"12236\":{\"message\":\"#result\",\"positive\":\".correct-overlay\",\"negative\":\"button.wrong\"},\"12384\":{\"message\":\"#result\",\"positive\":\".correct-overlay\"},\"12392\":{\"message\":\"#result\",\"positive\":\".correct-overlay\"},\"12396\":{\"message\":\"#stepMessage,#result\",\"positive\":\".correct-overlay\"},\"12398\":{\"message\":\"#result\",\"positive\":\".correct-overlay\"},\"12410\":{\"message\":\"#boxeqResult\",\"positive\":\".boxeq-correct\"},\"12413\":{\"message\":\"#changeResult\",\"positive\":\".change-correct\"},\"12419\":{\"message\":\"\",\"positive\":\".dq-choice.correct\",\"negative\":\".dq-choice.wrong\"},\"12423\":{\"message\":\"\",\"positive\":\".wtg-choice.correct\",\"negative\":\".wtg-choice.wrong\"},\"12427\":{\"message\":\"#cwgResult\",\"positive\":\".cwg-correct\"},\"12585\":{\"message\":\"#bngMessage\",\"positive\":\".bng-correct-overlay\"},\"12590\":{\"message\":\"#dkgMessage\",\"positive\":\".dkg-correct-overlay\"},\"12593\":{\"message\":\"#rmgMessage\",\"positive\":\".rmg-correct-overlay\"},\"12606\":{\"message\":\"#mwgMessage\",\"positive\":\".mwg-correct-overlay\"},\"12617\":{\"message\":\"#owgMessage\",\"positive\":\".owg-correct-overlay\"},\"12638\":{\"message\":\"#srkMessage\",\"positive\":\"\"},\"12645\":{\"message\":\"#swgMessage\",\"positive\":\"\"},\"12648\":{\"message\":\"#sogMessage\",\"positive\":\".sog-correct-overlay\"},\"12901\":{\"message\":\"#wg-feedback\",\"positive\":\"#wg-feedback.is-correct\",\"negative\":\"#wg-feedback.is-retry\"},\"13054\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13056\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13058\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13060\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13062\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13064\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13066\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13068\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13071\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13073\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13142\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13144\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13146\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13148\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13150\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13152\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13154\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"},\"13156\":{\"message\":\".cdl-feedback\",\"positive\":\".cdl-feedback.is-correct\",\"negative\":\".cdl-feedback.is-wrong\"}};\r\nconst sources={correct:\"https:\/\/chicodori.net\/wp-content\/uploads\/2026\/10\/Quiz-Correct_Answer01-1.mp3\",wrong:\"https:\/\/chicodori.net\/wp-content\/uploads\/2026\/10\/Quiz-Wrong_Buzzer02-1.mp3\"};\r\nfunction mountSound(lesson){\r\n const pageID=lesson.dataset.originalPost||(document.body.className.match(\/(?:^|\\s)postid-(\\d+)(?:\\s|$)\/)||[])[1];\r\n const config=configurations[pageID];\r\n const mount=lesson.querySelector('.cd-game-mount')||lesson.querySelector('.cdl-game');\r\n if(!config||!mount||lesson.querySelector('.cd-feedback-audio-bar,.cd-sound-controls'))return;\r\n let enabled=true;\r\n try{enabled=localStorage.getItem('chicodori-feedback-muted')!=='1';}catch(error){}\r\n const bar=document.createElement('div');bar.className='cd-feedback-audio-bar';\r\n const toggle=document.createElement('button');toggle.type='button';toggle.className='cd-feedback-audio-toggle';toggle.setAttribute('aria-label','\u52b9\u679c\u97f3');\r\n const note=document.createElement('span');note.textContent='\u6b63\u89e3\u30fb\u4e0d\u6b63\u89e3\u306e\u97f3';bar.append(toggle,note);mount.before(bar);\r\n const clips={};\r\n Object.keys(sources).forEach(function(name){const clip=document.createElement('audio');clip.src=sources[name];clip.preload='auto';clip.volume=.5;clip.hidden=true;clip.dataset.feedbackSound=name;bar.appendChild(clip);clips[name]=clip;});\r\n function stop(){Object.values(clips).forEach(function(clip){clip.pause();try{clip.currentTime=0;}catch(error){}});}\r\n function refresh(){toggle.textContent=enabled?'\u97f3\u3042\u308a':'\u97f3\u306a\u3057';toggle.setAttribute('aria-pressed',String(enabled));}\r\n toggle.addEventListener('click',function(){enabled=!enabled;stop();refresh();note.textContent='\u6b63\u89e3\u30fb\u4e0d\u6b63\u89e3\u306e\u97f3';try{localStorage.setItem('chicodori-feedback-muted',enabled?'0':'1');}catch(error){}});refresh();\r\n let lastTime=-1000;\r\n function play(name){if(!enabled)return;const now=performance.now();if(now-lastTime<180)return;lastTime=now;stop();bar.dataset.lastFeedback=name;const pending=clips[name].play();if(pending&&pending.catch)pending.catch(function(){note.textContent='\u97f3\u3092\u518d\u751f\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f';});}\r\n const good=\/^(?:[\ud83c\udf89\u2728\ud83c\udf38\ud83d\udcae\u2605\u2606\\s]*)(?:\u6b63\u89e3[\uff01!]|\u305b\u3044\u304b\u3044[\uff01!]|\u306f\u306a\u307e\u308b|\u30ec\u30b9\u30ad\u30e5\u30fc\u6210\u529f|\u304f\u3082\u308f\u30ad\u30e3\u30c3\u30c1\u6210\u529f|\u30ad\u30e3\u30c3\u30c1[\uff01!]|\u767a\u898b[\uff01!]|PERFECT[\uff01!])\/;\r\n const bad=\/^(?:\u3056\u3093\u306d\u3093|\u6b8b\u5ff5|\u3061\u304c\u3046|\u3082\u3046(?:\u4e00\u56de|\u3044\u3063\u304b\u3044|\u4e00\u5ea6|\u3044\u3061\u3069)[\uff01!]|\u3082\u3046(?:\u4e00\u5ea6|\u3044\u3061\u3069)(?: |\u3000)*(?:\u8003\u3048\u3066|\u304b\u3093\u304c\u3048\u3066)|\u3058\u3085\u3093\u3070\u3093\u304c \u3061\u304c\u3046|\u305d\u308c\u306f\u516c\u7d04\u6570\u3058\u3083\u306a\u3044)\/;\r\n const extraBad=config.badText?new RegExp('^(?:'+config.badText+')'):null;\r\n function matches(node,selector){return !!selector&&node.nodeType===1&&node.matches(selector);}\r\n function invalidPrompt(node){return \/^(?:\u6570\u5b57\u3092\u5165\u308c\u3066|1\u301c60\u306e\u6574\u6570\u3092\u5165\u308c\u3066|\u307e\u3060 \u25a1|\u307e\u3060 \u3048\u3089\u3093\u3067|\u5206\u5b50\u3068\u5206\u6bcd\u306e\u4e21\u65b9)\/.test(node.textContent.trim());}\r\n function textState(node){if(!matches(node,config.message)||invalidPrompt(node))return '';const text=node.textContent.trim();if(matches(node,config.negative))return 'wrong';if(matches(node,config.positive))return 'correct';if(bad.test(text)||(extraBad&&extraBad.test(text)))return 'wrong';if(good.test(text))return 'correct';return '';}\r\n const watch=[config.message,config.positive,config.negative].filter(Boolean).join(',');\r\n const observer=new MutationObserver(function(records){\r\n  let positive=false,negative=false;\r\n  function classify(node,classes){if(!node||node.nodeType!==1)return;const text=textState(node);if(text==='wrong')negative=true;if(text==='correct')positive=true;if(classes){if(matches(node,config.negative)&&!invalidPrompt(node))negative=true;if(matches(node,config.positive))positive=true;}}\r\n  records.forEach(function(record){\r\n   if(record.type==='attributes'){\r\n    const node=record.target,old=node.cloneNode(false);old.setAttribute('class',record.oldValue||'');\r\n    if(matches(node,config.negative)&&!matches(old,config.negative)&&!invalidPrompt(node))negative=true;\r\n    if(matches(node,config.positive)&&!matches(old,config.positive))positive=true;\r\n    return;\r\n   }\r\n   let parent=record.target.nodeType===1?record.target:record.target.parentElement;\r\n   if(parent){const message=config.message?parent.closest(config.message):null;if(message&&mount.contains(message))classify(message,false);}\r\n   record.addedNodes.forEach(function(node){if(node.nodeType!==1)return;classify(node,true);if(watch)node.querySelectorAll(watch).forEach(function(child){classify(child,true);});});\r\n  });\r\n  if(negative)play('wrong');else if(positive)play('correct');\r\n });\r\n observer.observe(mount,{subtree:true,childList:true,characterData:true,attributes:true,attributeFilter:['class'],attributeOldValue:true});\r\n window.addEventListener('pagehide',stop,{once:true});\r\n}\r\nfunction start(){setTimeout(function(){document.querySelectorAll('.cd-lesson').forEach(mountSound);},0);}\r\nif(document.readyState==='loading')document.addEventListener('DOMContentLoaded',start,{once:true});else start();\r\n})();\r\n<\/script>\n\n\n<div class=\"cd-lesson\" data-template=\"js-lesson-v1\"><header class=\"cd-hero\"><div><span class=\"cd-tags\">\u5c0f\u5b66\u751f\u306e\u3053\u3068\u3070\u904a\u3073\uff0f5\u5e74\u56fd\u8a9e\u300c\u65b9\u8a00\u3068\u5171\u901a\u8a9e\u300d\u306b\u3082<\/span><h1 class=\"cd-title\">\u3053\u3068\u3070\u306e\u30e1\u30ed\u30c7\u30a3\u30fc\u30df\u30ad\u30b5\u30fc<\/h1><\/div><div class=\"cd-mascot\"><img decoding=\"async\" src=\"https:\/\/chicodori.net\/wp-content\/uploads\/2023\/05\/chicodori-san01.png\" alt=\"\u30c1\u30b3\u30c9\u30ea\u306e\u9ce5\"><\/div><div class=\"cd-lead\"><p>\u304a\u306a\u3058 \u3053\u3068\u3070\u3067\u3082\u3001\u3053\u3048\u306e \u305f\u304b\u3055\u3067 \u304d\u3053\u3048\u304b\u305f\u304c \u304b\u308f\u308b\uff01<br>\u300c\u3046\u3061\u3067\u306f \u3053\u3046\u3044\u3046\u3088\uff01\u300d\u3092 \u3064\u304f\u3063\u3066\u3001\u304d\u304d\u304f\u3089\u3079\u3088\u3046\u3002<\/p><\/div><\/header><section class=\"cd-features\"><h2 class=\"cd-features-title\">\u3053\u3093\u306a \u3042\u305d\u3073\u3060\u3088\uff01<\/h2><ul class=\"cd-points\"><li class=\"cd-point\"><svg viewBox=\"0 0 48 48\" class=\"cd-point__icon\" aria-hidden=\"true\"><use href=\"#cd-icon-audio\"><\/use><\/svg><span>\u3053\u3048\u3092 \u304d\u3053\u3046<\/span><\/li><li class=\"cd-point\"><svg viewBox=\"0 0 48 48\" class=\"cd-point__icon\" aria-hidden=\"true\"><use href=\"#cd-icon-compare\"><\/use><\/svg><span>2\u3064\u3092 \u304f\u3089\u3079\u3088\u3046<\/span><\/li><li class=\"cd-point\"><svg viewBox=\"0 0 48 48\" class=\"cd-point__icon\" aria-hidden=\"true\"><use href=\"#cd-icon-read-aloud\"><\/use><\/svg><span>\u3058\u3076\u3093\u306e \u3088\u307f\u304b\u305f<\/span><\/li><\/ul><\/section><section class=\"cd-play\"><h2 class=\"cd-section-title\">\u3055\u3042\u3001\u3084\u3063\u3066\u307f\u3088\u3046\uff01<\/h2><div class=\"cd-like\"><div class=\"ifw_wrap ifw_center\"><button class=\"ifw_btn\" data-postid=\"14022\" data-buttoncount=\"1\">\u3053\u308c\u597d\u304d<span class=\"material-symbols-rounded\">favorite<\/span><span class=\"ifw_count\" id=\"ifw_count_14022_1\">0<\/span><\/button><div class=\"ifw_message_wrap ifw_top_left\" id=\"ifw_message_14022_1\"><div class=\"ifw_message\"><div class=\"ifw_text\"><p class=\"ifw_processing\">\u9001\u4fe1\u4e2d\u3067\u3059<\/p><\/div><\/div><div class=\"ifw_arrow\"><\/div><\/div><div class=\"ifw_message_wrap ifw_top_left ifw_thanks\" id=\"ifw_thanks_14022_1\"><div class=\"ifw_close\" data-id=\"14022_1\">\u00d7<\/div><div class=\"ifw_message\"><div class=\"ifw_image\"><img decoding=\"async\" src=\"\" id=\"ifw_image_14022_1\"><\/div><div class=\"ifw_text\" id=\"ifw_showmessage_14022_1\"><\/div><\/div><div class=\"ifw_arrow\"><\/div><\/div><\/div><\/div><div class=\"cd-game-mount\"><style>#kotoba-mixer *{box-sizing:border-box}#kotoba-mixer{margin:0;background:#fffcf4;color:#263548;font-family:\"Yu Gothic\",\"Hiragino Kaku Gothic ProN\",sans-serif}#kotoba-mixer{max-width:1080px;margin:auto;padding:20px 28px}#kotoba-mixer header{text-align:center}#kotoba-mixer .mixer-title{font-size:30px;line-height:1.35;margin:8px 0;color:#263548}#kotoba-mixer .mixer-title span{color:#0871cb}#kotoba-mixer header p{font-size:20px;margin:10px 0 18px}#kotoba-mixer .tag{font-size:16px;letter-spacing:.08em;color:#68717c}#kotoba-mixer .entry{background:white;padding:16px 20px;border:2px solid #e5e2d9;border-radius:20px}#kotoba-mixer form label{font-size:20px;font-weight:bold}#kotoba-mixer small{font-size:18px;color:#697383;margin-left:12px}#kotoba-mixer .input-row{display:flex;gap:10px;margin-top:8px}#kotoba-mixer input[type=text],#kotoba-mixer #word{min-width:0;flex:1;border:2px solid #bcc8d7;border-radius:12px;padding:9px 14px;font:700 25px inherit;font-size:25px;color:#263548;background:#fff}#kotoba-mixer button{font-family:inherit;font-size:20px;font-weight:bold;cursor:pointer;border:0;border-radius:12px;padding:10px 18px;color:inherit}#kotoba-mixer button:focus-visible,#kotoba-mixer input:focus-visible,#kotoba-mixer summary:focus-visible{outline:3px solid #7048bd;outline-offset:4px}#kotoba-mixer .create{background:#263548;color:white}#kotoba-mixer .presets{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}#kotoba-mixer .presets span{font-size:18px;color:#68717c}#kotoba-mixer .presets button{font-size:18px;padding:6px 12px;background:#f1f5fa;border:1px solid #dce3ed}#kotoba-mixer #error{font-size:20px;color:#af293c;margin:0}#kotoba-mixer #error:not(:empty){margin-top:10px}#kotoba-mixer .boards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}#kotoba-mixer .board{--ink:#0867df;--tint:#ecf5ff;border:2px solid #b6d5fa;border-radius:22px;background:var(--tint);padding:12px 16px}#kotoba-mixer .board.orange{--ink:#c35a00;--tint:#fff4dc;border-color:#f4cf88}#kotoba-mixer .board-head{display:flex;align-items:center;justify-content:space-between;gap:8px}#kotoba-mixer .board h2{margin:0;font-size:23px;color:var(--ink)}#kotoba-mixer .play{background:var(--ink);color:#fff;padding:8px 15px;font-size:19px}#kotoba-mixer .track{position:relative;height:174px;margin-top:12px;padding-left:48px}#kotoba-mixer .level{position:absolute;left:0;font-size:17px;color:#566578;line-height:1.4;writing-mode:vertical-rl;letter-spacing:1px}#kotoba-mixer .level.high{top:2px}#kotoba-mixer .level.low{bottom:6px}#kotoba-mixer .dots{position:relative;height:100%;display:grid;grid-template-columns:repeat(var(--count),minmax(0,1fr));z-index:1}#kotoba-mixer .slot{position:relative;display:flex;align-items:flex-start;justify-content:center}#kotoba-mixer .dot{position:absolute;top:104px;background:var(--ink);color:white;border-radius:50%;height:54px;width:54px;padding:0;font-size:25px;box-shadow:0 4px 0 #0002;transition:top .18s,transform .15s;touch-action:manipulation}#kotoba-mixer .dot.high{top:4px}#kotoba-mixer .dot.small{font-size:20px}#kotoba-mixer .dot.playing{outline:5px solid #e7b124;outline-offset:5px;transform:scale(1.08)}#kotoba-mixer .lines{position:absolute;left:48px;top:0;width:calc(100% - 48px);height:174px;overflow:visible}#kotoba-mixer .guide{stroke:#b3bbc7;stroke-width:1;stroke-dasharray:3 4}#kotoba-mixer .melody{stroke:var(--ink);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;fill:none;opacity:.5}#kotoba-mixer .board-foot{display:flex;justify-content:space-between;color:#607080;font-size:18px}#kotoba-mixer .reset{background:transparent;font-size:18px;padding:2px;color:#526174;text-decoration:underline}#kotoba-mixer .controls{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}#kotoba-mixer fieldset{border:0;padding:0;margin:0;display:flex;gap:12px}#kotoba-mixer legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#kotoba-mixer label{font-size:18px}#kotoba-mixer input[type=checkbox],#kotoba-mixer input[type=radio]{accent-color:#175ab6;width:19px;height:19px;vertical-align:middle}#kotoba-mixer .compare{background:#263548;color:#fff}#kotoba-mixer .stop{background:#e8edf2}#kotoba-mixer .hint{text-align:center;font-size:20px;margin:14px 0;color:#536274}#kotoba-mixer details{font-size:18px;color:#5b6878;line-height:1.8;margin-top:16px}#kotoba-mixer summary{cursor:pointer}#kotoba-mixer details p{font-size:20px}#kotoba-mixer button:disabled{opacity:.5;cursor:default}@media(max-width:900px){#kotoba-mixer{padding:16px}#kotoba-mixer .boards{gap:12px}#kotoba-mixer .board{padding:12px 8px}#kotoba-mixer .track{padding-left:28px}#kotoba-mixer .lines{left:28px;width:calc(100% - 28px)}#kotoba-mixer .dot{width:42px;height:42px;font-size:22px}#kotoba-mixer .dot.small{font-size:18px}#kotoba-mixer .level{font-size:16px}#kotoba-mixer .board h2{font-size:22px}}@media(max-width:700px){#kotoba-mixer .boards{grid-template-columns:1fr}#kotoba-mixer .mixer-title{font-size:27px}#kotoba-mixer .mixer-title span{display:block}#kotoba-mixer header p{font-size:20px}#kotoba-mixer .entry{padding:12px}#kotoba-mixer .presets span{width:100%}#kotoba-mixer .input-row button{padding:8px 10px;font-size:18px}#kotoba-mixer .track{height:166px}#kotoba-mixer .lines{height:166px}#kotoba-mixer .dot{width:40px;height:40px}#kotoba-mixer .dot.small{font-size:18px}#kotoba-mixer small{margin-left:6px}#kotoba-mixer .controls{gap:10px}#kotoba-mixer .board-foot{font-size:18px}}@media(prefers-reduced-motion:reduce){#kotoba-mixer .dot{transition:none}}@media(min-width:701px){#kotoba-mixer{padding:10px 22px}#kotoba-mixer .mixer-title{font-size:28px;margin:4px 0}#kotoba-mixer header p{margin:6px 0 10px}#kotoba-mixer .entry{padding:10px 16px}#kotoba-mixer .input-row{margin-top:6px}#kotoba-mixer #word{padding:6px 12px}#kotoba-mixer .presets{margin-top:8px}#kotoba-mixer .boards{margin:12px 0}#kotoba-mixer .board{padding:8px 12px}#kotoba-mixer .track{height:132px;margin-top:6px}#kotoba-mixer .lines{height:132px}#kotoba-mixer .dot{width:48px;height:48px;top:84px}#kotoba-mixer .dot.high{top:4px}#kotoba-mixer .dot.small{font-size:20px}#kotoba-mixer .hint{margin:8px 0}#kotoba-mixer details{margin-top:10px}}@media(min-width:701px){#kotoba-mixer .tag{display:none}#kotoba-mixer header p{margin:4px 0 8px}#kotoba-mixer .entry{padding-top:8px;padding-bottom:8px}#kotoba-mixer .boards{margin:10px 0}}#kotoba-mixer .timing-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:white;border:1px solid #dce3ed;padding:14px;border-radius:12px}#kotoba-mixer .timing-grid label{display:block;font-size:20px}#kotoba-mixer .timing-grid input{display:block;width:100%;min-height:40px;accent-color:#0871cb}#kotoba-mixer .timing-grid output{font-weight:bold;margin-left:8px}@media(max-width:700px){#kotoba-mixer .timing-grid{grid-template-columns:1fr}}\n\n#kotoba-mixer{font-size:18px;line-height:1.5;border:2px solid #e5e2d9;border-radius:20px;margin:14px auto;color:#263548}#kotoba-mixer h2,#kotoba-mixer p{border:0;background:none;padding:0;letter-spacing:0}#kotoba-mixer h2:before,#kotoba-mixer h2:after{display:none}#kotoba-mixer h2{line-height:1.35}#kotoba-mixer p{margin:8px 0}#kotoba-mixer label{font-weight:inherit}#kotoba-mixer button{line-height:1.5;text-transform:none;letter-spacing:0}#kotoba-mixer .dot{padding:0;min-height:0}#kotoba-mixer .input-row input{margin:0;height:auto}#kotoba-mixer .entry form{margin:0}#kotoba-mixer fieldset label{white-space:nowrap}#kotoba-mixer svg{max-width:none}#kotoba-mixer .tag{font-size:18px}#kotoba-mixer .level{font-size:18px}#kotoba-mixer .entry .presets button{font-size:18px}#kotoba-mixer .mixer-title{margin:4px 0}#kotoba-mixer #error:empty{margin:0}#kotoba-mixer .track{min-width:0}#kotoba-mixer .controls{margin:0;padding:0;border:0}body:has(#kotoba-mixer) #primary{width:100%;padding-right:0;border:0}body:has(#kotoba-mixer) #right-sidebar{display:none}.cd-lesson:has(#kotoba-mixer){--cd-game-width:1080px}.cd-lesson:has(#kotoba-mixer) .cd-game-mount{max-width:1080px}.cd-lesson:has(#kotoba-mixer) .cd-copy p{font-size:20px}\n\n@media(max-width:700px){#kotoba-mixer{padding:8px}#kotoba-mixer .board{padding:10px 4px}#kotoba-mixer .track{padding-left:24px}#kotoba-mixer .lines{left:24px;width:calc(100% - 24px)}}body:has(#kotoba-mixer) .cd-like .ifw_message_wrap{left:50%!important;right:auto;transform:translateX(-50%);max-width:calc(100vw - 40px)}\n\n\/* \u5c0f\u5b66\u751f\u5411\u3051\uff1a\u6587\u5b57\u3092\u4fdd\u3061\u3001\u64cd\u4f5c\u90e8\u3068\u91cd\u8907\u6848\u5185\u3092\u30b3\u30f3\u30d1\u30af\u30c8\u306b\u3059\u308b\u3002 *\/\n#kotoba-mixer .mixer-title{font-size:26px;line-height:1.3}#kotoba-mixer header p{font-size:20px;margin:6px 0 10px}#kotoba-mixer .entry{padding:10px 12px}#kotoba-mixer .input-row{gap:8px;margin-top:4px}#kotoba-mixer #word{font-size:24px;line-height:1.4;padding:6px 10px;min-height:44px}#kotoba-mixer .create{font-size:18px;line-height:1.4;padding:6px 12px;min-height:44px}#kotoba-mixer .presets{gap:6px;margin-top:8px}#kotoba-mixer .presets button{font-size:18px;line-height:1.4;padding:5px 10px;min-height:36px}#kotoba-mixer .play{font-size:18px;line-height:1.4;padding:6px 12px;min-height:40px}#kotoba-mixer .compare{font-size:18px;line-height:1.4;padding:7px 14px;min-height:44px}#kotoba-mixer .stop{font-size:18px;line-height:1.4;padding:6px 12px;min-height:40px}#kotoba-mixer .controls{gap:10px}#kotoba-mixer .board-foot>span{display:none}#kotoba-mixer .board-foot{justify-content:flex-end}#kotoba-mixer .reset{font-size:18px;padding:3px 6px;min-height:32px}#kotoba-mixer .dot.small{font-size:22px}#kotoba-mixer .hint{font-size:20px;margin:8px 0}#kotoba-mixer .board-head{min-height:40px}#kotoba-mixer details>summary{font-size:18px;min-height:40px}#kotoba-mixer .board h2{font-size:22px}@media(min-width:701px){#kotoba-mixer .track{height:120px}#kotoba-mixer .lines{height:120px}#kotoba-mixer .dot:not(.high){top:76px}}\n<\/style><div id=\"kotoba-mixer\"><header><span class=\"tag\">\u3053\u3068\u3070 \u00d7 \u304a\u3068\u306e \u3058\u3063\u3051\u3093\u3057\u3064<\/span><h2 class=\"mixer-title\">\u3053\u3068\u3070\u306e<span>\u30e1\u30ed\u30c7\u30a3\u30fc\u30df\u30ad\u30b5\u30fc<\/span><\/h2><p>\u3007\u3092 \u304a\u3059\u3068\u3001\u3053\u3048\u304c <b>\u305f\u304b\u3044 \u2194 \u3072\u304f\u3044<\/b> \u306b \u304b\u308f\u308b\u3088\u3002<\/p><\/header>\n<section class=\"entry\" aria-label=\"\u3053\u3068\u3070\u3092\u3048\u3089\u3076\"><form id=\"wordForm\"><label for=\"word\">\u3053\u3068\u3070\u3092 \u3044\u308c\u3088\u3046 <small>\u3007\u306f7\u3053\u307e\u3067<\/small><\/label><div class=\"input-row\"><input id=\"word\" value=\"\u3070\u306a\u306a\" autocomplete=\"off\" spellcheck=\"false\" aria-describedby=\"error\"><button class=\"create\" type=\"submit\">\u3007\u3092 \u3064\u304f\u308b<\/button><\/div><\/form><div class=\"presets\"><span>\u305f\u3081\u3057\u3066\u307f\u3088\u3046<\/span><button data-word=\"\u3070\u306a\u306a\">\u3070\u306a\u306a<\/button><button data-word=\"\u304a\u3068\u3053\">\u304a\u3068\u3053<\/button><button data-word=\"\u3066\u3093\u306e\u3046\u3058\">\u3066\u3093\u306e\u3046\u3058<\/button><button data-word=\"\u304d\u3083\u3093\u3077\">\u304d\u3083\u3093\u3077<\/button><button data-word=\"\u3058\u3085\u30fc\u3059\">\u3058\u3085\u30fc\u3059<\/button><\/div><p id=\"error\" role=\"status\"><\/p><\/section>\n<div class=\"boards\" id=\"boards\"><\/div>\n<footer class=\"controls\"><fieldset><legend>\u3069\u3093\u306a \u304a\u3068\uff1f<\/legend><label><input type=\"radio\" name=\"voice\" value=\"speech\" checked>\u3053\u3048<\/label><label><input type=\"radio\" name=\"voice\" value=\"tone\">\u304a\u3068\u3060\u3051<\/label><\/fieldset><button id=\"compare\" class=\"compare\">\u25b6 \u304d\u304d\u304f\u3089\u3079\u308b<\/button><button id=\"stop\" class=\"stop\">\u25a0 \u3068\u3081\u308b<\/button><label class=\"slow\"><input type=\"checkbox\" id=\"slow\">\u3086\u3063\u304f\u308a<\/label><\/footer>\n<p class=\"hint\" id=\"status\" role=\"status\">\u3042\u304a\u3068 \u30aa\u30ec\u30f3\u30b8\u3001\u3069\u3046 \u3061\u304c\u3046\u304b\u306a\uff1f<\/p><details class=\"timing\"><summary>\u3053\u3048\u306e \u306a\u304c\u3055\u30fb\u97f3\u306e \u3042\u3044\u3060<\/summary><div class=\"timing-grid\"><label for=\"duration\">1\u97f3\u306e \u306a\u304c\u3055 <output id=\"durationValue\" for=\"duration\">0.55\u79d2<\/output><input id=\"duration\" type=\"range\" min=\"0.25\" max=\"0.9\" step=\"0.05\" value=\"0.55\"><\/label><label for=\"gap\">\u97f3\u306e \u3042\u3044\u3060 <output id=\"gapValue\" for=\"gap\">0.01\u79d2<\/output><input id=\"gap\" type=\"range\" min=\"0\" max=\"0.2\" step=\"0.01\" value=\"0.01\"><\/label><\/div><\/details><details><summary>\u3042\u305d\u3073\u304b\u305f\u30fb\u3053\u3048\u306b\u3064\u3044\u3066<\/summary><p>\u3007\u3092 \u304a\u3059\u3068\u3001\u4e0a\u304b\u4e0b\u306b \u3046\u3054\u304f\u3088\u3002\u3042\u304a\u3068 \u30aa\u30ec\u30f3\u30b8\u3092 \u3079\u3064\u3079\u3064\u306b \u304d\u3044\u305f\u308a\u3001\u3064\u3065\u3051\u3066 \u304d\u3044\u305f\u308a\u3057\u3066\u306d\u3002<\/p><p>\u300c\u304d\u3083\u30fb\u3057\u3083\u30fb\u3073\u3085\u300d\u306f\u30071\u3053\u3002\u300c\u3093\u30fb\u3063\u30fb\u30fc\u300d\u306f\u30071\u3053\u305a\u3064\u3002\u300c\u3063\u300d\u306f\u5c11\u3057\u304a\u4f11\u307f\u3001\u300c\u30fc\u300d\u306f\u524d\u306e\u97f3\u3092\u306e\u3070\u3059\u3088\u3002<\/p><p>\u65e5\u672c\u8a9e\u306e\u58f0\u306e\u7d20\u6750\u3092\u3001\u9ad8\u304f\u30fb\u4f4e\u304f\u3057\u3066\u3064\u306a\u3052\u3066\u3044\u307e\u3059\u3002\u4e00\u97f3\u306e\u9577\u3055\u3068\u97f3\u306e\u9593\u9694\u3092\u5225\u3005\u306b\u5909\u3048\u3089\u308c\u307e\u3059\u3002\u300c\u3070\u306a\u306a\u300d\u306a\u3069\u306e\u6700\u521d\u306e\u306a\u3089\u3073\u306f\u97f3\u3042\u305d\u3073\u306e\u4f8b\u3067\u3001\u5730\u57df\u306e\u65b9\u8a00\u306e\u304a\u624b\u672c\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002<\/p><\/details><\/div><script>\/* \u30071\u500b = 1\u62cd\uff08\u30e2\u30fc\u30e9\uff09\u3002\u97f3\u7a0b\u306f\u5225\u306b L \/ H \u3067\u6301\u3064\u3002 *\/\n(function (root) {\n  'use strict';\n  const joins = {\n    '\u3083': '\u304d\u304e\u3057\u3058\u3061\u3062\u306b\u3072\u3073\u3074\u307f\u308a',\n    '\u3085': '\u304d\u304e\u3057\u3058\u3061\u3062\u306b\u3072\u3073\u3074\u307f\u308a\u3075\u3094',\n    '\u3087': '\u304d\u304e\u3057\u3058\u3061\u3062\u306b\u3072\u3073\u3074\u307f\u308a',\n    '\u3041': '\u3046\u304f\u3050\u3064\u3075\u3094',\n    '\u3043': '\u3046\u304f\u3050\u3059\u305a\u3064\u3066\u3067\u3068\u3069\u3075\u3094',\n    '\u3045': '\u3068\u3069\u3075',\n    '\u3047': '\u3044\u3046\u304d\u304e\u3057\u3058\u3061\u3062\u306b\u3072\u3073\u3074\u307f\u308a\u3064\u3066\u3067\u3075\u3094',\n    '\u3049': '\u3046\u304f\u3050\u3064\u3075\u3094',\n    '\u308e': '\u304f\u3050'\n  };\n  function splitMora(input, options = {}) {\n    if (typeof input !== 'string') throw new TypeError('\u3053\u3068\u3070\u3092\u6587\u5b57\u3067\u5165\u308c\u3066\u306d\u3002');\n    const max = options.maxMora ?? 7;\n    if (!Number.isInteger(max) || max < 1) throw new RangeError('maxMora \u306f1\u4ee5\u4e0a\u306e\u6574\u6570\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002');\n    \/\/ \u534a\u89d2\u30fb\u30ab\u30bf\u30ab\u30ca\u30fb\u5206\u304b\u308c\u305f\u6fc1\u70b9\u3082\u3001\u3072\u3089\u304c\u306a\u306b\u305d\u308d\u3048\u308b\u3002\n    const text = input.normalize('NFKC').replace(\/[\u30a1-\u30f6]\/g, c => String.fromCharCode(c.charCodeAt(0) - 0x60)).normalize('NFC').replace(\/\\s\/g, '');\n    if (!text) throw new Error('\u3053\u3068\u3070\u3092\u5165\u308c\u3066\u306d\u3002');\n    const result = [];\n    for (const char of text) {\n      if (Object.prototype.hasOwnProperty.call(joins, char)) {\n        const previous = result[result.length - 1];\n        if (!previous || previous.length !== 1 || !joins[char].includes(previous)) {\n          throw new Error('\u5c0f\u3055\u3044\u300c' + char + '\u300d\u306e\u524d\u306e\u6587\u5b57\u3092\u305f\u3057\u304b\u3081\u3066\u306d\u3002');\n        }\n        result[result.length - 1] += char;\n      } else if (\/^[\u3042-\u3094\u30fc]$\/.test(char) && !'\u3095\u3096'.includes(char)) {\n        \/\/ \u300c\u3093\u300d\u300c\u3063\u300d\u300c\u30fc\u300d\u306f\u3001\u305d\u308c\u305e\u308c\u3007\u30921\u500b\u4f7f\u3046\u3002\n        result.push(char);\n      } else {\n        throw new Error('\u3072\u3089\u304c\u306a\u304b \u30ab\u30bf\u30ab\u30ca\u3067 \u5165\u308c\u3066\u306d\u3002');\n      }\n    }\n    if (result[0] === '\u30fc' || result[0] === '\u3063') throw new Error('\u306f\u3058\u3081\u306e\u6587\u5b57\u3092\u305f\u3057\u304b\u3081\u3066\u306d\u3002');\n    if (result.length > max) throw new Error('\u3007\u304c' + max + '\u3053\u307e\u3067\u306e \u3053\u3068\u3070\u306b\u3057\u3066\u306d\u3002');\n    return result;\n  }\n  function makePattern(input, options) {\n    return splitMora(input, options).map(text => ({ text, pitch: 'L' }));\n  }\n  const api = { splitMora, makePattern };\n  if (typeof module === 'object' && module.exports) module.exports = api;\n  else root.KotobaMora = api;\n})(typeof globalThis !== 'undefined' ? globalThis : this);\n<\/script><script>document.addEventListener('DOMContentLoaded',()=>{\n'use strict';\nconst root=document.getElementById('kotoba-mixer');if(!root)return;const $=s=>root.querySelector(s);\nlet mora=['\u3070','\u306a','\u306a'],patterns=[['H','L','L'],['L','H','L']],ctx,run=0,nodes=[],timers=[];\nconst names=['\u3042\u304a','\u30aa\u30ec\u30f3\u30b8'];\nfunction render(){\n $('#boards').innerHTML=patterns.map((pattern,b)=>`<section class=\"board ${b?'orange':''}\" aria-label=\"${names[b]}\u306e \u30e1\u30ed\u30c7\u30a3\u30fc\"><div class=\"board-head\"><h2>${names[b]}<\/h2><button class=\"play\" data-play=\"${b}\">\u25b6 \u304d\u304f<\/button><\/div><div class=\"track\"><span class=\"level high\">\u305f\u304b\u3044<\/span><span class=\"level low\">\u3072\u304f\u3044<\/span><svg class=\"lines\" viewBox=\"0 0 100 132\" preserveAspectRatio=\"none\" aria-hidden=\"true\"><path class=\"guide\" d=\"M0 28H100M0 108H100\"\/><polyline class=\"melody\" points=\"${pattern.map((p,i)=>`${(i+.5)*100\/mora.length},${p==='H'?28:108}`).join(' ')}\"\/><\/svg><div class=\"dots\" style=\"--count:${mora.length}\">${mora.map((m,i)=>`<div class=\"slot\"><button class=\"dot ${pattern[i]==='H'?'high':''} ${m.length>1?'small':''}\" data-board=\"${b}\" data-note=\"${i}\" aria-label=\"${m}\uff1a${pattern[i]==='H'?'\u305f\u304b\u3044':'\u3072\u304f\u3044'}\u3002\u304a\u3059\u3068 \u304d\u308a\u304b\u3048\" aria-pressed=\"${pattern[i]==='H'}\">${m}<\/button><\/div>`).join('')}<\/div><\/div><div class=\"board-foot\"><span>\u3007\u3092 \u304a\u3057\u3066 \u304d\u308a\u304b\u3048<\/span><button class=\"reset\" data-reset=\"${b}\">\u3072\u304f\u304f \u305d\u308d\u3048\u308b<\/button><\/div><\/section>`).join('');\n}\nfunction stop(){run++;if(window.speechSynthesis)window.speechSynthesis.cancel();for(const t of timers)clearTimeout(t);timers=[];for(const n of nodes)try{n.stop()}catch{}nodes=[];document.querySelectorAll('.playing').forEach(e=>e.classList.remove('playing'));$('#status').textContent='\u3042\u304a\u3068 \u30aa\u30ec\u30f3\u30b8\u3001\u3069\u3046 \u3061\u304c\u3046\u304b\u306a\uff1f';}\nfunction setWord(text){try{const next=KotobaMora.splitMora(text);stop();mora=next;patterns=[mora.map((_,i)=>i===0?'H':'L'),mora.map((_,i)=>i===1?'H':'L')];$('#word').value=mora.join('');$('#error').textContent='';render()}catch(e){$('#error').textContent=e.message}}\n$('#wordForm').addEventListener('submit',e=>{e.preventDefault();setWord($('#word').value)});\ndocument.querySelectorAll('[data-word]').forEach(b=>b.addEventListener('click',()=>setWord(b.dataset.word)));\n$('#boards').addEventListener('click',e=>{const b=e.target.closest('button');if(!b)return;if(b.dataset.note!==undefined){stop();const board=+b.dataset.board,i=+b.dataset.note;patterns[board][i]=patterns[board][i]==='H'?'L':'H';render();document.querySelector(`[data-board=\"${board}\"][data-note=\"${i}\"]`).focus({preventScroll:true})}else if(b.dataset.play!==undefined){play([+b.dataset.play])}else if(b.dataset.reset!==undefined){stop();patterns[+b.dataset.reset].fill('L');render()}});\n$('#compare').addEventListener('click',()=>play([0,1]));$('#stop').addEventListener('click',stop);\ndocument.querySelectorAll('input[name=voice],#slow').forEach(e=>e.addEventListener('change',stop));\ndocument.addEventListener('visibilitychange',()=>{if(document.hidden)stop()});\n\/\/ \u5916\u90e8\u901a\u4fe1\u3092\u4f7f\u308f\u306a\u3044\u7c21\u6613\u30d5\u30a9\u30eb\u30de\u30f3\u30c8\u5408\u6210\u3002\u58f0\u306e\u57fa\u672c\u5468\u6ce2\u6570\u3068\u3001\u6bcd\u97f3\u306e\u5171\u9cf4\u3092\u5225\u306b\u3059\u308b\u3002\nconst vowels={a:[800,1200,2600],i:[300,2300,3100],u:[350,1100,2500],e:[500,1900,2800],o:[500,850,2600],n:[250,1100,2200]};\nconst kana={};\nfor(const [row,c] of [['\u3042\u3044\u3046\u3048\u304a',''],['\u304b\u304d\u304f\u3051\u3053','k'],['\u304c\u304e\u3050\u3052\u3054','g'],['\u3055\u3057\u3059\u305b\u305d','s'],['\u3056\u3058\u305a\u305c\u305e','z'],['\u305f\u3061\u3064\u3066\u3068','t'],['\u3060\u3062\u3065\u3067\u3069','d'],['\u306a\u306b\u306c\u306d\u306e','n'],['\u306f\u3072\u3075\u3078\u307b','h'],['\u3070\u3073\u3076\u3079\u307c','b'],['\u3071\u3074\u3077\u307a\u307d','p'],['\u307e\u307f\u3080\u3081\u3082','m'],['\u3089\u308a\u308b\u308c\u308d','r']]) Array.from(row).forEach((k,i)=>kana[k]={c,v:'aiueo'[i]});\nObject.assign(kana,{\u3084:{c:'y',v:'a'},\u3086:{c:'y',v:'u'},\u3088:{c:'y',v:'o'},\u308f:{c:'w',v:'a'},\u3092:{c:'',v:'o'},\u3090:{c:'',v:'i'},\u3091:{c:'',v:'e'},\u3093:{c:'',v:'n'},\u3094:{c:'b',v:'u'}});\nconst smallV={'\u3083':'a','\u3085':'u','\u3087':'o','\u3041':'a','\u3043':'i','\u3045':'u','\u3047':'e','\u3049':'o','\u308e':'a'};\nfunction phoneme(text,previous){if(text==='\u3063')return {rest:true};if(text==='\u30fc')return {c:'',v:previous?.v||'u'};const base=kana[text[0]]||{c:'',v:'u'};return {...base,v:smallV[text[1]]||base.v,palatal:!!text[1]&&'\u3083\u3085\u3087'.includes(text[1])}}\n\/\/ \u65e5\u672c\u8a9e\u306e\u58f0\u3092\u97f3\u58f0\u7d20\u6750\u3068\u3057\u3066\u8aad\u307f\u8fbc\u307f\u3001\u518d\u751f\u6642\u306b\u9ad8\u4f4e\u30fb\u9577\u3055\u30fb\u9593\u9694\u3092\u6307\u5b9a\u3059\u308b\u3002\nconst AUDIO_INDEX={\"3042.wav\":{\"start\":0,\"duration\":0.3405},\"3044.wav\":{\"start\":0.3505,\"duration\":0.2918125},\"3046.wav\":{\"start\":0.6523125,\"duration\":0.308375},\"3048.wav\":{\"start\":0.9706875,\"duration\":0.30825},\"304a.wav\":{\"start\":1.2889375,\"duration\":0.1693125},\"304b.wav\":{\"start\":1.46825,\"duration\":0.3513125},\"304c.wav\":{\"start\":1.8295625,\"duration\":0.3264375},\"304d.wav\":{\"start\":2.166,\"duration\":0.2831875},\"304e.wav\":{\"start\":2.4591875,\"duration\":0.2885625},\"304f.wav\":{\"start\":2.75775,\"duration\":0.2859375},\"3050.wav\":{\"start\":3.0536875,\"duration\":0.2989375},\"3051.wav\":{\"start\":3.362625,\"duration\":0.3114375},\"3052.wav\":{\"start\":3.6840625,\"duration\":0.2965},\"3053.wav\":{\"start\":3.9905625,\"duration\":0.158},\"3054.wav\":{\"start\":4.1585625,\"duration\":0.168},\"3055.wav\":{\"start\":4.3365625,\"duration\":0.3991875},\"3056.wav\":{\"start\":4.74575,\"duration\":0.3736875},\"3057.wav\":{\"start\":5.1294375,\"duration\":0.3614375},\"3058.wav\":{\"start\":5.500875,\"duration\":0.318},\"3059.wav\":{\"start\":5.828875,\"duration\":0.360875},\"305a.wav\":{\"start\":6.19975,\"duration\":0.3846875},\"305b.wav\":{\"start\":6.5944375,\"duration\":0.3548125},\"305c.wav\":{\"start\":6.95925,\"duration\":0.3553125},\"305d.wav\":{\"start\":7.3245625,\"duration\":0.2305625},\"305e.wav\":{\"start\":7.565125,\"duration\":0.2050625},\"305f.wav\":{\"start\":7.7801875,\"duration\":0.32975},\"3060.wav\":{\"start\":8.1199375,\"duration\":0.3435},\"3061.wav\":{\"start\":8.4734375,\"duration\":0.301},\"3062.wav\":{\"start\":8.7844375,\"duration\":0.318},\"3064.wav\":{\"start\":9.1124375,\"duration\":0.3089375},\"3065.wav\":{\"start\":9.431375,\"duration\":0.3846875},\"3066.wav\":{\"start\":9.8260625,\"duration\":0.3040625},\"3067.wav\":{\"start\":10.140125,\"duration\":0.3275},\"3068.wav\":{\"start\":10.477625,\"duration\":0.151625},\"3069.wav\":{\"start\":10.63925,\"duration\":0.158125},\"306a.wav\":{\"start\":10.807375,\"duration\":0.3608125},\"306b.wav\":{\"start\":11.1781875,\"duration\":0.304625},\"306c.wav\":{\"start\":11.4928125,\"duration\":0.3120625},\"306d.wav\":{\"start\":11.814875,\"duration\":0.33},\"306e.wav\":{\"start\":12.154875,\"duration\":0.1795},\"306f.wav\":{\"start\":12.344375,\"duration\":0.352875},\"3070.wav\":{\"start\":12.70725,\"duration\":0.3395},\"3071.wav\":{\"start\":13.05675,\"duration\":0.3318125},\"3072.wav\":{\"start\":13.3985625,\"duration\":0.29625},\"3073.wav\":{\"start\":13.7048125,\"duration\":0.2875},\"3074.wav\":{\"start\":14.0023125,\"duration\":0.2616875},\"3075.wav\":{\"start\":14.274,\"duration\":0.296},\"3076.wav\":{\"start\":14.58,\"duration\":0.30325},\"3077.wav\":{\"start\":14.89325,\"duration\":0.2665625},\"3078.wav\":{\"start\":15.1698125,\"duration\":0.320375},\"3079.wav\":{\"start\":15.5001875,\"duration\":0.3273125},\"307a.wav\":{\"start\":15.8375,\"duration\":0.3050625},\"307b.wav\":{\"start\":16.1525625,\"duration\":0.171125},\"307c.wav\":{\"start\":16.3336875,\"duration\":0.16725},\"307d.wav\":{\"start\":16.5109375,\"duration\":0.149125},\"307e.wav\":{\"start\":16.6700625,\"duration\":0.3559375},\"307f.wav\":{\"start\":17.036,\"duration\":0.3033125},\"3080.wav\":{\"start\":17.3493125,\"duration\":0.3155625},\"3081.wav\":{\"start\":17.674875,\"duration\":0.3306875},\"3082.wav\":{\"start\":18.0155625,\"duration\":0.1895},\"3084.wav\":{\"start\":18.2150625,\"duration\":0.3716875},\"3086.wav\":{\"start\":18.59675,\"duration\":0.3201875},\"3088.wav\":{\"start\":18.9269375,\"duration\":0.1891875},\"3089.wav\":{\"start\":19.126125,\"duration\":0.3634375},\"308a.wav\":{\"start\":19.4995625,\"duration\":0.3089375},\"308b.wav\":{\"start\":19.8185,\"duration\":0.311625},\"308c.wav\":{\"start\":20.140125,\"duration\":0.33825},\"308d.wav\":{\"start\":20.488375,\"duration\":0.181},\"308f.wav\":{\"start\":20.679375,\"duration\":0.3745625},\"3090.wav\":{\"start\":21.0639375,\"duration\":0.256875},\"3091.wav\":{\"start\":21.3308125,\"duration\":0.2246875},\"3092.wav\":{\"start\":21.5655,\"duration\":0.167875},\"3093.wav\":{\"start\":21.743375,\"duration\":0.206375},\"3094.wav\":{\"start\":21.95975,\"duration\":0},\"304d-3083.wav\":{\"start\":21.96975,\"duration\":0.3486875},\"304e-3083.wav\":{\"start\":22.3284375,\"duration\":0.3425625},\"3057-3083.wav\":{\"start\":22.681,\"duration\":0.4083125},\"3058-3083.wav\":{\"start\":23.0993125,\"duration\":0.3574375},\"3061-3083.wav\":{\"start\":23.46675,\"duration\":0.370375},\"3062-3083.wav\":{\"start\":23.847125,\"duration\":0.3574375},\"306b-3083.wav\":{\"start\":24.2145625,\"duration\":0.38075},\"3072-3083.wav\":{\"start\":24.6053125,\"duration\":0.36025},\"3073-3083.wav\":{\"start\":24.9755625,\"duration\":0.346875},\"3074-3083.wav\":{\"start\":25.3324375,\"duration\":0.3314375},\"307f-3083.wav\":{\"start\":25.673875,\"duration\":0.3698125},\"308a-3083.wav\":{\"start\":26.0536875,\"duration\":0.3690625},\"304d-3085.wav\":{\"start\":26.43275,\"duration\":0.3358125},\"304e-3085.wav\":{\"start\":26.7785625,\"duration\":0.3389375},\"3057-3085.wav\":{\"start\":27.1275,\"duration\":0.409625},\"3058-3085.wav\":{\"start\":27.547125,\"duration\":0.360625},\"3061-3085.wav\":{\"start\":27.91775,\"duration\":0.363},\"3062-3085.wav\":{\"start\":28.29075,\"duration\":0.360625},\"306b-3085.wav\":{\"start\":28.661375,\"duration\":0.3725625},\"3072-3085.wav\":{\"start\":29.0439375,\"duration\":0.356875},\"3073-3085.wav\":{\"start\":29.4108125,\"duration\":0.34775},\"3074-3085.wav\":{\"start\":29.7685625,\"duration\":0.3291875},\"307f-3085.wav\":{\"start\":30.10775,\"duration\":0.365},\"308a-3085.wav\":{\"start\":30.48275,\"duration\":0.370625},\"3075-3085.wav\":{\"start\":30.863375,\"duration\":0.356875},\"3094-3085.wav\":{\"start\":31.23025,\"duration\":0.1436875},\"304d-3087.wav\":{\"start\":31.3839375,\"duration\":0.2155},\"304e-3087.wav\":{\"start\":31.6094375,\"duration\":0.212125},\"3057-3087.wav\":{\"start\":31.8315625,\"duration\":0.29075},\"3058-3087.wav\":{\"start\":32.1323125,\"duration\":0.2330625},\"3061-3087.wav\":{\"start\":32.375375,\"duration\":0.253},\"3062-3087.wav\":{\"start\":32.638375,\"duration\":0.2330625},\"306b-3087.wav\":{\"start\":32.8814375,\"duration\":0.228},\"3072-3087.wav\":{\"start\":33.1194375,\"duration\":0.23625},\"3073-3087.wav\":{\"start\":33.3656875,\"duration\":0.215875},\"3074-3087.wav\":{\"start\":33.5915625,\"duration\":0.208},\"307f-3087.wav\":{\"start\":33.8095625,\"duration\":0.236875},\"308a-3087.wav\":{\"start\":34.0564375,\"duration\":0.2293125},\"3046-3041.wav\":{\"start\":34.29575,\"duration\":0.47075},\"304f-3041.wav\":{\"start\":34.7765,\"duration\":0.4645},\"3050-3041.wav\":{\"start\":35.251,\"duration\":0.4448125},\"3064-3041.wav\":{\"start\":35.7058125,\"duration\":0.487},\"3075-3041.wav\":{\"start\":36.2028125,\"duration\":0.4443125},\"3094-3041.wav\":{\"start\":36.657125,\"duration\":0.3405},\"3046-3043.wav\":{\"start\":37.007625,\"duration\":0.407625},\"304f-3043.wav\":{\"start\":37.42525,\"duration\":0.3905625},\"3050-3043.wav\":{\"start\":37.8258125,\"duration\":0.394125},\"3059-3043.wav\":{\"start\":38.2299375,\"duration\":0.4780625},\"305a-3043.wav\":{\"start\":38.718,\"duration\":0.4226875},\"3064-3043.wav\":{\"start\":39.1506875,\"duration\":0.4263125},\"3066-3043.wav\":{\"start\":39.587,\"duration\":0.3509375},\"3067-3043.wav\":{\"start\":39.9479375,\"duration\":0.4390625},\"3068-3043.wav\":{\"start\":40.397,\"duration\":0.39125},\"3069-3043.wav\":{\"start\":40.79825,\"duration\":0.408125},\"3075-3043.wav\":{\"start\":41.216375,\"duration\":0.417},\"3094-3043.wav\":{\"start\":41.643375,\"duration\":0.2918125},\"3068-3045.wav\":{\"start\":41.9451875,\"duration\":0.3996875},\"3069-3045.wav\":{\"start\":42.354875,\"duration\":0.4319375},\"3075-3045.wav\":{\"start\":42.7968125,\"duration\":0.407},\"3044-3047.wav\":{\"start\":43.2138125,\"duration\":0.461875},\"3046-3047.wav\":{\"start\":43.6856875,\"duration\":0.43225},\"304d-3047.wav\":{\"start\":44.1279375,\"duration\":0.4383125},\"304e-3047.wav\":{\"start\":44.57625,\"duration\":0.419},\"3057-3047.wav\":{\"start\":45.00525,\"duration\":0.5051875},\"3058-3047.wav\":{\"start\":45.5204375,\"duration\":0.46225},\"3061-3047.wav\":{\"start\":45.9926875,\"duration\":0.4535625},\"3062-3047.wav\":{\"start\":46.45625,\"duration\":0.4481875},\"306b-3047.wav\":{\"start\":46.9144375,\"duration\":0.439625},\"3072-3047.wav\":{\"start\":47.3640625,\"duration\":0.4370625},\"3073-3047.wav\":{\"start\":47.811125,\"duration\":0.454125},\"3074-3047.wav\":{\"start\":48.27525,\"duration\":0.415375},\"307f-3047.wav\":{\"start\":48.700625,\"duration\":0.463},\"308a-3047.wav\":{\"start\":49.173625,\"duration\":0.45275},\"3064-3047.wav\":{\"start\":49.636375,\"duration\":0.4663125},\"3066-3047.wav\":{\"start\":50.1126875,\"duration\":0.4409375},\"3067-3047.wav\":{\"start\":50.563625,\"duration\":0.4806875},\"3075-3047.wav\":{\"start\":51.0543125,\"duration\":0.432625},\"3094-3047.wav\":{\"start\":51.4969375,\"duration\":0.310125},\"3046-3049.wav\":{\"start\":51.8170625,\"duration\":0.349125},\"304f-3049.wav\":{\"start\":52.1761875,\"duration\":0.3390625},\"3050-3049.wav\":{\"start\":52.52525,\"duration\":0.33825},\"3064-3049.wav\":{\"start\":52.8735,\"duration\":0.3329375},\"3075-3049.wav\":{\"start\":53.2164375,\"duration\":0.339875},\"3094-3049.wav\":{\"start\":53.5663125,\"duration\":0.1693125},\"304f-308e.wav\":{\"start\":53.745625,\"duration\":0.467625},\"3050-308e.wav\":{\"start\":54.22325,\"duration\":0.463875}};let atlasPromise;async function loadAtlas(){if(!atlasPromise)atlasPromise=fetch(\"https:\/\/chicodori.net\/wp-content\/uploads\/2026\/10\/kotoba-mixer-voice.wav\").then(r=>{if(!r.ok)throw Error(\"audio\");return r.arrayBuffer()}).then(b=>ctx.decodeAudioData(b)).catch(e=>{atlasPromise=null;throw e});return atlasPromise;}\nconst sampleCache=new Map();\nasync function getSample(unit){if(sampleCache.has(unit))return sampleCache.get(unit);const promise=(async()=>{const file=Array.from(unit).map(c=>c.codePointAt(0).toString(16)).join('-')+'.wav';const atlas=await loadAtlas(),clip=AUDIO_INDEX[file];if(!clip)throw Error('missing '+unit);const from=Math.round(clip.start*atlas.sampleRate),length=Math.round(clip.duration*atlas.sampleRate),decoded=ctx.createBuffer(1,length,atlas.sampleRate);decoded.copyToChannel(atlas.getChannelData(0).slice(from,from+length),0);const data=decoded.getChannelData(0),sr=decoded.sampleRate;let peak=0;for(const x of data)peak=Math.max(peak,Math.abs(x));let a=0,b=data.length-1;const threshold=Math.max(.001,peak*.015);while(b>a){if(Math.abs(data[a])>=threshold)break;a++;}while(b>a&&Math.abs(data[b])<threshold)b--;a=Math.max(0,a-Math.round(sr*.006));b=Math.min(data.length,b+Math.round(sr*.012));const buffer=ctx.createBuffer(1,b-a,sr);buffer.copyToChannel(data.slice(a,b),0);const d=buffer.getChannelData(0);const start=Math.floor(d.length*.4),end=Math.floor(d.length*.73),cross=Math.min(Math.floor(sr*.02),Math.floor((end-start)\/4));for(let i=0;i<cross;i++){const t=i\/(cross-1);d[end-cross+i]=d[end-cross+i]*(1-t)+d[start+i]*t}return {buffer,loopStart:(start+cross)\/sr,loopEnd:end\/sr}})();sampleCache.set(unit,promise);try{return await promise}catch(e){sampleCache.delete(unit);throw e}}\nfunction highlight(board,i){document.querySelectorAll('.playing').forEach(e=>e.classList.remove('playing'));document.querySelector('[data-board=\"'+board+'\"][data-note=\"'+i+'\"]').classList.add('playing');$('#status').textContent=names[board]+'\uff1a'+mora[i]+' \/ '+(patterns[board][i]==='H'?'\u305f\u304b\u3044':'\u3072\u304f\u3044')}\nfunction tone(pitch,time,duration){const o=ctx.createOscillator(),g=ctx.createGain();o.type='sine';o.frequency.value=pitch==='H'?245:155;g.gain.setValueAtTime(0,time);g.gain.linearRampToValueAtTime(.22,time+.02);g.gain.setValueAtTime(.22,time+duration-.025);g.gain.linearRampToValueAtTime(0,time+duration);o.connect(g).connect(ctx.destination);o.start(time);o.stop(time+duration);nodes.push(o)}\nfunction sampleVoice(sample,pitch,time,duration){const source=ctx.createBufferSource(),gain=ctx.createGain();source.buffer=sample.buffer;source.loop=true;source.loopStart=sample.loopStart;source.loopEnd=sample.loopEnd;source.playbackRate.value=pitch==='H'?1.22:.88;gain.gain.setValueAtTime(0,time);gain.gain.linearRampToValueAtTime(.95,time+.008);gain.gain.setValueAtTime(.95,time+duration-.025);gain.gain.linearRampToValueAtTime(0,time+duration);source.connect(gain).connect(ctx.destination);source.start(time);source.stop(time+duration+.005);nodes.push(source)}\nfunction refreshTiming(){ $('#durationValue').textContent=(+$('#duration').value).toFixed(2)+'\u79d2';$('#gapValue').textContent=(+$('#gap').value).toFixed(2)+'\u79d2'}\nfor(const id of ['duration','gap'])$('#'+id).addEventListener('input',()=>{stop();refreshTiming()});\nasync function play(boards){stop();const token=run,mode=document.querySelector('input[name=voice]:checked').value;try{ctx??=new(window.AudioContext||window.webkitAudioContext)();await ctx.resume();if(token!==run)return;let previous='\u3046';const units=mora.map(m=>{if(m==='\u3063')return null;if(m==='\u30fc')return previous;const ph=phoneme(m);previous={a:'\u3042',i:'\u3044',u:'\u3046',e:'\u3048',o:'\u304a',n:'\u3093'}[ph.v]||'\u3046';return m});let samples;if(mode==='speech'){$('#status').textContent='\u3053\u3048\u3092 \u3058\u3085\u3093\u3073\u3057\u3066\u3044\u307e\u3059\u2026';samples=await Promise.all(units.map(m=>m?getSample(m):null));if(token!==run)return}\nconst duration=+$('#duration').value*($('#slow').checked?1.3:1),gap=+$('#gap').value;let cursor=ctx.currentTime+.045;for(const board of boards){for(let i=0;i<mora.length;i++){if(units[i]){if(mode==='speech')sampleVoice(samples[i],patterns[board][i],cursor,duration);else tone(patterns[board][i],cursor,duration)}timers.push(setTimeout(()=>{if(token===run)highlight(board,i)},Math.max(0,(cursor-ctx.currentTime)*1000)));cursor+=duration+gap}cursor+=.3}timers.push(setTimeout(()=>{if(token===run)stop()},(cursor-ctx.currentTime)*1000))}catch(e){if(token!==run)return;stop();$('#status').textContent='\u3053\u3048\u306e\u3058\u3085\u3093\u3073\u304c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u3082\u3046\u3044\u3061\u3069 \u305f\u3081\u3057\u3066\u306d\u3002'}}\nrender();refreshTiming();\n\n});<\/script><\/div><\/section><details class=\"cd-copy\"><summary>\u4fdd\u8b77\u8005\u3001\u5148\u751f\u65b9\u3078<\/summary><p>\u3053\u3068\u3070\u3092\u97f3\u306e\u307e\u3068\u307e\u308a\u306b\u5206\u3051\u3001\u97f3\u306e\u9ad8\u4f4e\u3092\u64cd\u4f5c\u3057\u3066\u805e\u304d\u6bd4\u3079\u308b\u6559\u6750\u3067\u3059\u3002\u4e3b\u306b5\u5e74\u56fd\u8a9e\u300c\u65b9\u8a00\u3068\u5171\u901a\u8a9e\u300d\u3078\u306e\u95a2\u5fc3\u3092\u80b2\u3066\u308b\u5c0e\u5165\u3068\u3057\u3066\u3001\u307e\u305f\u5b66\u5e74\u3092\u554f\u308f\u305a\u3001\u8eab\u8fd1\u306a\u3053\u3068\u3070\u3084\u540d\u524d\u3067\u904a\u3076\u6d3b\u52d5\u306b\u4f7f\u3048\u307e\u3059\u3002<\/p><p>\u9752\u3068\u30aa\u30ec\u30f3\u30b8\u306f\u81ea\u7531\u306b\u4f5c\u308b2\u3064\u306e\u30d1\u30bf\u30fc\u30f3\u3067\u3059\u3002\u521d\u671f\u306e\u9ad8\u4f4e\u306f\u904a\u3073\u59cb\u3081\u308b\u305f\u3081\u306e\u4f8b\u3067\u3001\u7279\u5b9a\u306e\u5730\u57df\u306e\u767a\u97f3\u3084\u6a19\u6e96\u8a9e\u306e\u6b63\u89e3\u3092\u793a\u3057\u3066\u3044\u307e\u305b\u3093\u3002\u5730\u57df\u30fb\u5bb6\u5ead\u30fb\u4eba\u306b\u3088\u308b\u8a00\u3044\u65b9\u306e\u9055\u3044\u3092\u3001\u307e\u3061\u304c\u3044\u3068\u3057\u3066\u6271\u308f\u305a\u3001\u6c17\u3065\u304d\u3092\u8a71\u3057\u5408\u3063\u3066\u307f\u3066\u304f\u3060\u3055\u3044\u3002<\/p><p>\u300c\u3057\u3083\u300d\u300c\u304d\u3083\u300d\u300c\u3073\u3085\u300d\u306a\u3069\u306f1\u62cd\u3001\u300c\u3093\u300d\u300c\u3063\u300d\u300c\u30fc\u300d\u306f\u305d\u308c\u305e\u308c1\u62cd\u3068\u3057\u3066\u6570\u3048\u3001\u6700\u59277\u62cd\u307e\u3067\u5165\u529b\u3067\u304d\u307e\u3059\u3002\u97f3\u58f0\u306f\u4e00\u97f3\u305a\u3064\u52a0\u5de5\u3057\u3066\u3044\u308b\u305f\u3081\u3001\u81ea\u7136\u306a\u4f1a\u8a71\u3068\u540c\u3058\u767a\u97f3\u306b\u306f\u306a\u308a\u307e\u305b\u3093\u3002\u97f3\u306e\u9ad8\u4f4e\u306b\u6ce8\u76ee\u3057\u3066\u8a66\u3059\u305f\u3081\u306e\u6559\u6750\u3067\u3059\u3002<\/p><\/details><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u5c0f\u5b66\u751f\u306e\u3053\u3068\u3070\u904a\u3073\uff0f5\u5e74\u56fd\u8a9e\u300c\u65b9\u8a00\u3068\u5171\u901a\u8a9e\u300d\u306b\u3082 \u3053\u3068\u3070\u306e\u30e1\u30ed\u30c7\u30a3\u30fc\u30df\u30ad\u30b5\u30fc \u304a\u306a\u3058 \u3053\u3068\u3070\u3067\u3082\u3001\u3053\u3048\u306e \u305f\u304b\u3055\u3067 \u304d\u3053\u3048\u304b\u305f\u304c \u304b\u308f\u308b\uff01\u300c\u3046\u3061\u3067\u306f \u3053\u3046\u3044\u3046\u3088\uff01\u300d\u3092 \u3064\u304f\u3063\u3066\u3001\u304d\u304d\u304f\u3089\u3079\u3088\u3046\u3002 \u3053\u3093\u306a \u3042\u305d\u3073\u3060\u3088\uff01 \u3053 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":14021,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26,1,7,18],"tags":[],"cd_learning_unit":[2344,2351],"cd_english_grade":[],"class_list":["post-14022","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-26","category-1","category-7","category-18","entry","has-media"],"_links":{"self":[{"href":"https:\/\/chicodori.net\/index.php?rest_route=\/wp\/v2\/posts\/14022","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/chicodori.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/chicodori.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/chicodori.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/chicodori.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=14022"}],"version-history":[{"count":5,"href":"https:\/\/chicodori.net\/index.php?rest_route=\/wp\/v2\/posts\/14022\/revisions"}],"predecessor-version":[{"id":14027,"href":"https:\/\/chicodori.net\/index.php?rest_route=\/wp\/v2\/posts\/14022\/revisions\/14027"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/chicodori.net\/index.php?rest_route=\/wp\/v2\/media\/14021"}],"wp:attachment":[{"href":"https:\/\/chicodori.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=14022"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/chicodori.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=14022"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/chicodori.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=14022"},{"taxonomy":"cd_learning_unit","embeddable":true,"href":"https:\/\/chicodori.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcd_learning_unit&post=14022"},{"taxonomy":"cd_english_grade","embeddable":true,"href":"https:\/\/chicodori.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcd_english_grade&post=14022"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}