*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}:where([hidden]:not([hidden='until-found'])){display:none!important}:where(html){-webkit-text-size-adjust:none;color-scheme:dark light}@supports not (min-block-size:100dvb){:where(html){block-size:100%}}@media (prefers-reduced-motion:no-preference){:where(html:focus-within){scroll-behavior:smooth}}:where(body){block-size:100%;block-size:100dvb;line-height:1.5;font-family:system-ui,sans-serif;-webkit-font-smoothing:antialiased}:where(input,button,textarea,select){font:inherit;color:inherit}:where(textarea){resize:vertical;resize:block}:where(button,label,select,summary,[role='button'],[role='option']){cursor:pointer}:where(:disabled){cursor:not-allowed}:where(label:has(>input:disabled),label:has(+input:disabled)){cursor:not-allowed}:where(button){border-style:solid}:where(a){text-underline-offset:.2ex}:where(ul,ol){list-style:none}:where(img,svg,video,canvas,audio,iframe,embed,object){display:inline-block}:where(img,picture,svg){max-inline-size:100%;block-size:auto}:where(p,h1,h2,h3,h4,h5,h6){overflow-wrap:break-word}:where(h1,h2,h3){line-height:calc(1em + 0.5rem)}:where(hr){border:none;border-block-start:1px solid;color:inherit;block-size:0;overflow:visible}:where(:focus-visible){outline:2px solid var(--focus-color,Highlight);outline-offset:2px}:root{--base-col:#22b573;--base-light-col:#e2f5ec;--cocole-col:#1a935c;--text-col:#2d3748;--bace-radius:8px;--bace-font:"Noto Sans JP" , -apple-system , BlinkMacSystemFont , "Segoe UI" , Roboto , sans-serif;--lead-font:"Zen Maru Gothic" , var(--bace-font)}body{font-family: var(--bace-font);background-color:#f4f7f6;color:var(--text-col);margin:0;padding:0;line-height:1.6}.site-header{max-width:800px;margin:40px auto 20px auto;padding:30px;background-color:#fff;border-radius:var(--bace-radius);box-shadow:0 4px 16px rgba(34,181,115,.06);border:1px solid var(--base-light-col);text-align:center;box-sizing:border-box}.logo-wrapper{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:20px}.site-logo{max-width:240px;width:100%;height:auto;display:block}.lead-text{font-family: var(--lead-font);font-size:12pt;font-weight:700;color:var(--cocole-col);margin:0 0 15px 0;line-height:1.5}.guide-text{display:inline-block;background-color:#f0fdf4;border:1px dashed var(--base-col);padding:12px 20px;border-radius:var(--bace-radius);font-size:10pt;color:var(--text-col);text-align:left;margin:0;width:100%;box-sizing:border-box}.control-panel{max-width:800px;margin:20px auto;padding:30px;background-color:#fff;border-radius:var(--bace-radius);box-shadow:0 4px 16px rgba(34,181,115,.06);border:1px solid var(--base-light-col);box-sizing:border-box}.control-panel h2{font-family: var(--lead-font);margin-top:0;color:var(--text-col);border-bottom:3px solid var(--base-col);padding-bottom:8px;font-size:14pt;margin-bottom:25px}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:12px;font-weight:bold;color:var(--text-col);font-size:11pt}input[type="text"],select{width:100%;padding:16px;font-size:11pt;border:2px solid #e2e8f0;border-radius:var(--bace-radius);box-sizing:border-box;background-color:#fff;color:var(--text-col);cursor:pointer;transition:border-color .2s , box-shadow .2s;-webkit-appearance:none;appearance:none}select{background-image:url(data:image/svg+xml;utf8,<svg\ xmlns=\'http://www.w3.org/2000/svg\'\ width=\'24\'\ height=\'24\'\ viewBox=\'0\ 0\ 24\ 24\'\ fill=\'none\'\ stroke=\'%23718096\'\ stroke-width=\'2\'\ stroke-linecap=\'round\'\ stroke-linejoin=\'round\'><polyline\ points=\'6\ 9\ 12\ 15\ 18\ 9\'></polyline></svg>);background-repeat:no-repeat;background-position:right 16px center;background-size:16px;padding-right:45px}input[type="text"]:focus,select:focus{outline:none;border-color:var(--base-col);box-shadow:0 0 0 4px rgba(34,181,115,.15)}.radio-group{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:5px}.radio-group label{position:relative;display:flex;align-items:center;justify-content:center;padding:12px 20px;background-color:#f8fafc;border:2px solid #e2e8f0;border-radius:var(--bace-radius);font-weight:bold;font-size:10.5pt;color:var(--text-col);cursor:pointer;transition:all .2s ease;user-select:none;margin-bottom:0;flex:1 1 calc(50% - 10px);min-width:140px;box-sizing:border-box}.radio-group input[type="radio"],.radio-group input[type="checkbox"]{position:absolute;opacity:0;width:0;height:0}.radio-group label:hover{background-color:#f1f5f9;border-color:#cbd5e0}.radio-group label:has(input:checked) {background-color:var(--base-light-col);border-color:var(--base-col);color:var(--cocole-col)}.radio-group label:has(input[type="checkbox"]:checked)::before {content:"✓";margin-right:6px;font-weight:900}.suggest-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.badge{background-color:#f0f4f2;color:#357a5b;border:1px solid var(--base-light-col);padding:8px 16px;font-size:9.5pt;border-radius:20px;transition:all .2s;cursor:pointer;font-weight:500}.badge:hover{background-color:var(--base-light-col);color:#154c32;transform:translateY(-1px)}.counter-info{background:#fffcf7;border:1px solid #ffe3bf;padding:12px 18px;border-radius:var(--bace-radius);margin-bottom:25px;font-size:10.5pt;font-weight:bold;color:#c46d00;display:inline-block}.button-group{display:flex;flex-wrap:wrap;gap:12px;margin-top:15px}.btn-submit,.btn-print,.btn-reset{flex:1 1 auto;min-height:50px;display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;border:none;border-radius:var(--bace-radius);font-size:11pt;font-weight:bold;cursor:pointer;transition:background-color .2s , transform .1s , box-shadow .1s;box-sizing:border-box;text-align:center}.btn-submit{background-color:#ff9f1c;color:#fff;box-shadow:0 4px 0 #d9841c}.btn-submit:hover{background-color:#f78f00}.btn-print{background-color:var(--base-col);color:#fff;box-shadow:0 4px 0 #198c58;margin-left:0}.btn-print:hover{background-color:var(--cocole-col)}.btn-reset{background-color:#6c757d;color:#fff;box-shadow:0 4px 0 #545b62}.btn-reset:hover{background-color:#5a6268}.btn-submit:active,.btn-print:active,.btn-reset:active{transform:translateY(4px);box-shadow:none}@media (max-width:480px){.radio-group label{flex:1 1 100%}.button-group{flex-direction:column}.btn-submit,.btn-print,.btn-reset{width:100%}}.preview-container{display:flex;flex-direction:column;align-items:center;margin:30px 0 60px 0;width:100%;overflow:hidden}.a4-page{width:210mm;height:297mm;padding:20mm 15mm;background-color:#fff;box-shadow:0 4px 24px rgba(0,0,0,.08);margin-bottom:30px;box-sizing:border-box;position:relative;transform-origin:top center;transition:transform .2s ease}.a4-name-area{display:flex;justify-content:flex-end;align-items:flex-end;gap:20mm;width:100%;margin-bottom:8mm;font-size:11pt;font-family:sans-serif;color:#1a1a1a}.a4-name-field{width:60mm;border-bottom:1px solid #1a1a1a;text-align:left;padding-bottom:2px}.a4-date-field{width:40mm;border-bottom:1px solid #1a1a1a;text-align:left;padding-bottom:2px}.practice-row-grid{display:flex;margin-bottom:8mm}.char-box-grid{width:var(--box-w);height:var(--box-h);border:2px solid #1a1a1a;margin-right:-2px;position:relative;display:flex;align-items:center;justify-content:center;box-sizing:border-box;background:#fff}.char-box-grid::before{content:"";position:absolute;top:0;bottom:0;left:50%;border-left:1px var(--grid-border-style) #a0aec0;pointer-events:none}.char-box-grid::after{content:"";position:absolute;left:0;right:0;top:50%;border-top:1px var(--grid-border-style) #a0aec0;pointer-events:none}.char-text-grid{font-family: var(--font-selected);font-size:var(--box-f);line-height:1;z-index:5;user-select:none}.practice-row-line{display:flex;width:100%;height:var(--line-h);margin-bottom:8mm;box-sizing:border-box;position:relative}.practice-row-line-bg{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;background-image: 
        linear-gradient(to bottom, transparent var(--line-t), #1a1a1a var(--line-t), #1a1a1a calc(var(--line-t) + 0.3mm), transparent calc(var(--line-t) + 0.3mm)), 
        linear-gradient(to bottom, transparent calc(var(--line-h) - var(--line-t)), #1a1a1a calc(var(--line-h) - var(--line-t)), #1a1a1a calc(var(--line-h) - var(--line-t) + 0.3mm), transparent calc(var(--line-h) - var(--line-t) + 0.3mm)), 
        linear-gradient(to bottom, transparent calc(var(--line-t) + (var(--line-h) - var(--line-t) * 2) * 0.33), var(--mid-blue) calc(var(--line-t) + (var(--line-h) - var(--line-t) * 2) * 0.33), var(--mid-blue) calc(var(--line-t) + (var(--line-h) - var(--line-t) * 2) * 0.33 + 0.3mm), transparent calc(var(--line-t) + (var(--line-h) - var(--line-t) * 2) * 0.33 + 0.3mm)), 
        linear-gradient(to bottom, transparent calc(var(--line-t) + (var(--line-h) - var(--line-t) * 2) * 0.66), var(--mid-red) calc(var(--line-t) + (var(--line-h) - var(--line-t) * 2) * 0.66), var(--mid-red) calc(var(--line-t) + (var(--line-h) - var(--line-t) * 2) * 0.66 + 0.5mm), transparent calc(var(--line-t) + (var(--line-h) - var(--line-t) * 2) * 0.66 + 0.5mm));background-size:100% var(--line-h);background-repeat:no-repeat;z-index:1}.char-box-line{width:var(--box-w);height:var(--line-h);position:relative;display:flex;justify-content:center;box-sizing:border-box;border-right:1px var(--grid-border-style) #cbd5e0;z-index:2}.char-box-line:first-child{border-left:1px var(--grid-border-style) #cbd5e0}.char-text-line{font-family: var(--font-selected);font-size:var(--line-f);line-height:1;z-index:5;user-select:none;position:absolute;top:var(--line-t)}.model-text{color:#1a1a1a}.trace-text{color:#e2e8f0}.ad-container{text-align:center;padding:15px 0;background:transparent;border:none;box-shadow:none}.site-footer{text-align:center;padding:30px 20px;font-size:9.5pt;color:#718096;background:transparent;border:none;box-shadow:none}.footer-links{margin-bottom:10px}.footer-links a{color:var(--base-col);text-decoration:none;font-weight:bold}.footer-links a:hover{text-decoration:underline}.copyright{margin-bottom:0}.modal-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.6);z-index:9999;align-items:center;justify-content:center;padding:20px;box-sizing:border-box}.modal-content{background:#fff;max-width:600px;width:100%;max-height:80vh;border-radius:var(--bace-radius);display:flex;flex-direction:column;box-shadow:0 10px 25px rgba(0,0,0,.2);overflow:hidden}.modal-header{padding:18px 20px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;background-color:#f8fafc}.modal-header h3{font-family: var(--lead-font);font-size:13pt;margin:0;color:var(--text-col)}#close-policy{background:none;border:none;font-size:24px;line-height:1;color:#a0aec0;cursor:pointer;padding:0}#close-policy:hover{color:#4a5568}.modal-body{padding:25px;overflow-y:auto;font-size:10pt;line-height:1.7;color:#4a5568;text-align:left}.modal-body p{margin-bottom:18px}.modal-body p:last-child{margin-bottom:0}@media print{html,body{background-color:#fff!important;color:#000!important;height:auto!important;line-height:1!important}.control-panel,.adsbygoogle,.no_print,.site-header,.site-footer{display:none!important}.preview-container{margin:0!important;padding:0!important;display:block!important;width:210mm!important}.a4-page{width:210mm!important;height:297mm!important;padding:20mm 15mm!important;margin:0!important;box-shadow:none!important;page-break-after:always!important;page-break-inside:avoid!important;transform:none!important;background:#fff!important}@page {
        size: A4 portrait;
        margin: 0;
    }.a4-page::after{content:"作れる文字練習プリント「書き取りメーカー」 https://kakitori.cocole.org/";position:absolute;bottom:8mm;left:15mm;right:15mm;text-align:center;font-size:8.5pt;color:#888;font-family:sans-serif;border-top:1px solid #eee;padding-top:2mm;display:block!important;z-index:9999}}.btn-reset{background-color:#6c757d;color:#fff;padding:13px 28px;border:none;border-radius:var(--bace-radius,8px);font-size:11pt;font-weight:bold;cursor:pointer;box-shadow:0 3px 0 #545b62;transition:all .1s ease}.btn-reset:hover{background-color:#5a6268}.btn-reset:active{transform:translateY(3px);box-shadow:none}.site-footer{width:100%;margin-top:60px;padding:0;background-color:transparent;text-align:left;box-shadow:none;border:none}#foot_brand_area{border-top:4px solid var(--cocole-col,#1a935c);background-color:var(--gray-4,#f8fafc);color:var(--text-col,#2d3748);padding:40px 20px;font-size:9.5pt;line-height:1.6}.footer-container{max-width:1000px;margin:0 auto;display:flex;flex-wrap:wrap;gap:40px;justify-content:space-between}.brand-box{flex:1 1 320px}.brand-logo img{max-width:160px;height:auto;margin-bottom:12px}.brand-desc p{margin-bottom:8px;color:#4a5568}.brand-sns-box{margin-top:20px}.sns-title{color:var(--cocole-col,#1a935c);font-weight:bold;margin-bottom:8px}.sns-list{display:flex;gap:12px;align-items:center;padding:0;margin:0}.sns-list li a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#fff;border:1px solid #e2e8f0;border-radius:50%;color:#4a5568;transition:all .2s ease}.sns-list li a:hover{background-color:var(--base-light-col,#e2f5ec);border-color:var(--base-col,#22b573);color:var(--cocole-col,#1a935c);transform:translateY(-2px)}.sns-list svg{width:18px;height:18px;fill:currentColor}.brand-service-box{flex:2 1 400px}.service-list{display:flex;flex-wrap:wrap;gap:8px 20px;padding:0;margin:0 0 16px 0}.service-list li a{color:var(--text-col,#2d3748);text-decoration:none;font-weight:bold;transition:color .2s}.service-list li a:hover{color:var(--base-col,#22b573);text-decoration:underline}.group-title{font-size:10.5pt;font-weight:bold;color:#718096;margin-bottom:8px}.group-services{margin-bottom:20px;gap:6px 16px}.group-services li a{font-weight:normal;color:#4a5568}.attend-list{padding:0;margin:0;list-style:none;font-size:8.5pt;color:#a0aec0}.attend-list li{position:relative;padding-left:12px;margin-bottom:4px}.attend-list li::before{content:"※";position:absolute;left:0;top:0}.copyright-area{background-color:#2d3748;color:#cbd5e0;text-align:center;padding:15px 20px;font-size:9pt}.copyright-area .copyright{margin:0}@media (max-width:768px){.footer-container{flex-direction:column;gap:30px}#foot_brand_area{padding:30px 15px}}