/* ── komari pages shared CSS ── */
body{font-family:'Noto Sans JP',sans-serif;background:#FAFCFB;color:#333;line-height:1.8;font-size:18px;margin:0;}
.komari-article{max-width:760px;margin:0 auto;padding:0 20px;}

.k-breadcrumb{font-size:0.85rem;color:#888;padding:14px 0;}
.k-breadcrumb a{color:#1A6B5A;text-decoration:none;}

/* Hero */
.k-hero{padding:28px 0 32px;text-align:center;border-bottom:1px solid #DDE5E2;}
.k-hero-icon{display:inline-block;width:64px;height:64px;border-radius:50%;overflow:hidden;background:#E8F4F1;margin-bottom:14px;}
.k-hero-icon img{width:100%;height:100%;object-fit:cover;display:block;}
.k-hero h1{font-size:1.6rem;font-weight:700;color:#144F42;margin:0 0 12px;line-height:1.4;}
.k-hero-empathy{font-size:1rem;color:#555;line-height:1.8;margin:0;}

/* Section */
.k-section{padding:32px 0;border-bottom:1px solid #ECF2F0;}
.k-section h2{font-size:1.15rem;font-weight:700;color:#144F42;margin:0 0 16px;display:flex;align-items:center;gap:8px;}
.k-section h2::before{content:'';display:inline-block;width:4px;height:1.1em;background:#1A6B5A;border-radius:2px;}

/* Action cards */
.k-actions{display:flex;flex-direction:column;gap:10px;}
.k-action{display:flex;align-items:center;gap:14px;padding:16px 18px;background:white;border:1.5px solid #DDE5E2;border-radius:12px;text-decoration:none;color:#222;transition:all 0.15s;}
.k-action:hover{border-color:#1A6B5A;background:#F0F8F6;}
.k-action-icon{font-size:1.6rem;flex-shrink:0;}
.k-action-text{flex:1;}
.k-action-label{display:block;font-weight:700;color:#144F42;font-size:1rem;margin-bottom:2px;}
.k-action-desc{display:block;font-size:0.88rem;color:#777;line-height:1.55;}
.k-action-arrow{color:#888;flex-shrink:0;}

/* Checklist */
.k-checklist{list-style:none;padding:0;margin:0;}
.k-checklist li{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid #ECF2F0;cursor:pointer;-webkit-tap-highlight-color:transparent;}
.k-checklist li:last-child{border-bottom:0;}
.k-checkbox{width:22px;height:22px;border:2px solid #ccc;border-radius:4px;flex-shrink:0;margin-top:3px;display:flex;align-items:center;justify-content:center;background:white;font-size:0.9rem;color:transparent;transition:all 0.15s;}
.k-checkbox.checked{background:#1A6B5A;border-color:#1A6B5A;color:white;}
.k-check-label{flex:1;font-size:0.95rem;color:#444;line-height:1.6;}
.k-check-note{font-size:0.88rem;color:#888;margin:14px 0 0;}

/* Flow */
.k-flow{display:flex;flex-direction:column;gap:0;counter-reset:fstep;}
.k-flow-step{display:flex;gap:14px;padding:14px 0;}
.k-flow-num{counter-increment:fstep;width:32px;height:32px;border-radius:50%;background:#1A6B5A;color:white;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:0.95rem;}
.k-flow-num::before{content:counter(fstep);}
.k-flow-body{flex:1;padding-top:2px;}
.k-flow-title{font-weight:700;color:#144F42;font-size:1rem;margin-bottom:4px;}
.k-flow-desc{font-size:0.92rem;color:#666;line-height:1.7;}

/* Related columns (keep compatible with existing callout) */
.k-related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;}
.k-related-card{display:block;padding:14px 16px;background:white;border:1.5px solid #e0d5cb;border-radius:10px;text-decoration:none;color:#222;}
.k-related-card:hover{border-color:#1A6B5A;}
.k-related-title{font-weight:700;color:#1A6B5A;font-size:0.95rem;margin-bottom:4px;line-height:1.4;}
.k-related-desc{font-size:0.85rem;color:#666;line-height:1.55;}

/* Other komari grid */
.k-other-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;}
.k-other{display:flex;align-items:center;gap:8px;padding:12px 14px;background:#F2F5F4;border:1px solid #e8e4df;border-radius:10px;text-decoration:none;color:#333;font-size:0.92rem;}
.k-other:hover{background:#E8F4F1;border-color:#1A6B5A;color:#144F42;}

/* Zip search */
.k-zip{background:#FFF8F2;border:1.5px solid #E8D5C0;border-radius:12px;padding:18px 20px;text-align:center;}
.k-zip-label{font-weight:700;color:#8B6B4A;margin-bottom:8px;}
.k-zip-desc{font-size:0.88rem;color:#666;margin-bottom:14px;}
.k-zip-form{display:inline-flex;align-items:center;border:2px solid #1A6B5A;border-radius:10px;padding:4px 4px 4px 12px;background:white;gap:6px;}
.k-zip-mark{font-size:0.9rem;color:#bbb;font-weight:700;}
.k-zip-input{border:none;outline:none;font-size:1rem;font-family:inherit;width:160px;padding:8px;color:#333;height:42px;}
.k-zip-btn{background:#1A6B5A;color:white;border:none;border-radius:8px;padding:0 18px;font-size:0.92rem;font-weight:700;cursor:pointer;font-family:inherit;height:42px;}
.k-zip-err{color:#C62828;font-size:0.88rem;margin-top:8px;display:none;}

@media(max-width:640px){
  .k-hero h1{font-size:1.35rem;}
  .k-section h2{font-size:1.05rem;}
  .k-action{padding:14px;}
}
