/* みんなの声 */
.kkoe{--ink:#13294B;max-width:760px;margin:6px 0 0;font-family:'Zen Maru Gothic',sans-serif;color:var(--ink)}
.kkoe-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.kkoe-step{border:0;margin:0 0 18px;padding:0;min-width:0}
.kkoe-step legend{display:flex;align-items:center;gap:8px;font-weight:900;font-size:16px;margin:0 0 9px;padding:0}
.kkoe-step legend b{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;font-size:13px;flex:0 0 auto}
.kkoe-step legend small{font-weight:700;font-size:11.5px;opacity:.65}
.kkoe-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.kkoe-type{position:relative;cursor:pointer}
.kkoe-type input,.kkoe-chips input,.kkoe-faces input{position:absolute;opacity:0;pointer-events:none}
.kkoe-type span{display:flex;align-items:center;gap:8px;min-height:40px;padding:7px 12px;border:2.5px solid var(--ink);border-radius:14px;background:#fff;font-weight:900;font-size:13.5px;box-shadow:3px 3px 0 var(--ink);transition:transform .1s,box-shadow .1s}
.kkoe-type span:before{content:'';width:14px;height:14px;border-radius:50%;border:2.5px solid var(--ink);background:var(--c);flex:0 0 auto}
.kkoe-type input:checked+span{background:var(--c);transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.kkoe-type input:focus-visible+span,.kkoe-chips input:focus-visible+span,.kkoe-faces input:focus-visible+.f{outline:3px solid #FF5A3C;outline-offset:2px}
.kkoe-panel{display:none}
.kkoe-panel.on{display:block;animation:kkoe-in .25s ease}
@keyframes kkoe-in{from{opacity:0;transform:translateY(6px)}}
.kkoe-faces{display:flex;gap:6px;flex-wrap:wrap}
.kkoe-faces label{flex:1 1 0;min-width:58px;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;text-align:center}
.kkoe-faces .f{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border:2.5px solid var(--ink);border-radius:50%;background:#fff;font-size:28px;box-shadow:3px 3px 0 var(--ink);transition:transform .1s}
.kkoe-faces .f5:after{content:'😆'}.kkoe-faces .f4:after{content:'🙂'}.kkoe-faces .f3:after{content:'😐'}.kkoe-faces .f2:after{content:'😕'}.kkoe-faces .f1:after{content:'😣'}
.kkoe-faces small{font-size:11px;font-weight:700;line-height:1.3}
.kkoe-faces input:checked+.f{background:#FFC53D;transform:translate(2px,2px) scale(1.06);box-shadow:1px 1px 0 var(--ink)}
.kkoe-chips{display:flex;flex-wrap:wrap;gap:6px}
.kkoe-chips label{cursor:pointer}
.kkoe-chips span{display:inline-block;padding:6px 12px;border:2px solid var(--ink);border-radius:999px;background:#fff;font-weight:700;font-size:13px}
.kkoe-chips input:checked+span{background:#7BDB9A;font-weight:900}
.kkoe-field{display:block;margin:0 0 14px}
.kkoe-field .l{display:block;font-weight:900;font-size:14.5px;margin:0 0 6px}
.kkoe-field .l em{font-style:normal;margin-left:6px;padding:1px 7px;border-radius:99px;background:#FF5A3C;color:#fff;font-size:11px;vertical-align:2px}
.kkoe-field input,.kkoe-field textarea{display:block;width:100%;box-sizing:border-box;padding:10px 12px;border:2.5px solid var(--ink);border-radius:12px;background:#fff;font:500 15px/1.6 'Zen Maru Gothic',sans-serif;color:var(--ink)}
.kkoe-field textarea{resize:vertical;min-height:110px}
.kkoe-field input:focus,.kkoe-field textarea:focus{outline:3px solid #8FD3FF;outline-offset:1px}
.kkoe-check{display:flex;gap:8px;align-items:flex-start;margin:0 0 14px;font-size:13px;font-weight:700;line-height:1.6;cursor:pointer}
.kkoe-check input{width:18px;height:18px;margin-top:2px;flex:0 0 auto}
.kkoe-note{font-size:12px;line-height:1.7;opacity:.8;margin:0 0 10px}
.kkoe-err{min-height:1em;margin:0 0 8px;color:#D63A1E;font-weight:900;font-size:13.5px}
.kkoe-send{display:inline-flex;align-items:center;justify-content:center;min-width:180px;padding:12px 26px;border:3px solid var(--ink,#13294B);border-radius:16px;background:#FFC53D;color:#13294B;font:900 17px 'Zen Maru Gothic',sans-serif;box-shadow:4px 4px 0 #13294B;cursor:pointer}
.kkoe-send[disabled]{opacity:.6;cursor:wait}
.kkoe-done{max-width:760px;margin:10px 0;padding:22px 20px;border:3px solid #13294B;border-radius:20px;background:#fff;box-shadow:5px 5px 0 #13294B;font-family:'Zen Maru Gothic',sans-serif;color:#13294B;text-align:center}
.kkoe-done .t{font-size:22px;font-weight:900;margin:0 0 6px}
.kkoe-again{margin:14px 0 0;display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap;font-weight:900}
/* 各ページの小さな入口 */
.kkoe-mini{display:inline-flex;align-items:center;gap:6px;margin:8px 0 0;padding:5px 12px;border:2px solid #13294B;border-radius:999px;background:#fff;color:#13294B!important;font:900 12.5px 'Zen Maru Gothic',sans-serif;text-decoration:none!important;box-shadow:2px 2px 0 #13294B}
.kkoe-mini:hover{background:#FFF1C2}
.kkoe-banner{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:space-between;margin:26px 0 6px;padding:14px 18px;border:3px solid #13294B;border-radius:20px;background:linear-gradient(135deg,#FFF8EC,#FFE9F0);box-shadow:5px 5px 0 #13294B;font-family:'Zen Maru Gothic',sans-serif;color:#13294B}
.kkoe-banner p{margin:0;font-weight:700;font-size:13.5px;line-height:1.6}
.kkoe-banner p b{display:block;font-size:17px;font-weight:900}
.kkoe-banner a{flex:0 0 auto;padding:9px 18px;border:3px solid #13294B;border-radius:14px;background:#FFC53D;color:#13294B!important;font-weight:900;text-decoration:none!important;box-shadow:3px 3px 0 #13294B}
@media (max-width:560px){.kkoe-types{grid-template-columns:1fr}.kkoe-faces .f{width:46px;height:46px;font-size:24px}.kkoe-banner a{width:100%;text-align:center}}
