*{box-sizing:border-box}body{margin:0;background:#f2f7fc;color:#183048;font:16px/1.8 -apple-system,BlinkMacSystemFont,sans-serif}main{max-width:1020px;margin:auto;background:white;padding:clamp(20px,4vw,48px)}.cover{padding:clamp(24px,5vw,48px);background:linear-gradient(135deg,#d8f2ff,#f3eaff);border-radius:20px}.eyebrow{font-weight:750;color:#075694;letter-spacing:.06em}h1{font-size:clamp(27px,5vw,42px);line-height:1.35;color:#0a4679;word-break:keep-all;overflow-wrap:anywhere}h2{margin-top:2.1em;color:#174f80;font-size:clamp(23px,3vw,30px);border-bottom:2px solid #d9eaf8;padding-bottom:8px}.button{display:inline-block;background:#075d9e;color:#fff;border-radius:9px;padding:14px 20px;text-decoration:none;font-weight:700;min-height:48px}.intro{font-size:18px}.card{border:1px solid #d6e7f2;border-radius:16px;padding:20px;margin:14px 0;background:#fff}.flow{display:flex;gap:8px;flex-wrap:wrap}.flow span{background:#e9f6ff;border-radius:9px;padding:10px;font-weight:700}li{margin:.7em 0}code{background:#eef5f9;border-radius:4px;padding:2px 4px;overflow-wrap:anywhere}table{border-collapse:collapse;width:100%}th,td{border:1px solid #cedee9;padding:9px;vertical-align:top;text-align:left}th{background:#e8f4fc}.tablewrap{overflow-x:auto}.foot{border-top:1px solid #d6e7f2;margin-top:42px;padding-top:20px;color:#49667d}@media(max-width:650px){main{padding:16px}.cover{padding:24px}h1{font-size:28px}.button{display:block;text-align:center}.tablewrap table{min-width:0}.tablewrap thead{display:none}.tablewrap tr{display:block;border:1px solid #d4e4ed;border-radius:12px;margin:12px 0;padding:9px}.tablewrap td{display:block;border:0;padding:5px;overflow-wrap:anywhere}.tablewrap td:before{display:block;font-size:14px;font-weight:700;color:#315a77;content:attr(data-label)}}.brand{display:flex;gap:8px;margin-top:18px}.brand img{width:64px;height:64px;object-fit:contain}
/* O wrap-r1: preserve words and action, balance the displayed lines. */
h1,h2,h3,.button{ text-wrap:balance; }

/* Use the explicit boundary after the starter phrase; never split 一式. */
.button{word-break:keep-all;overflow-wrap:normal;}

/* Wrap-r2: preserve 始める and 役割 as whole words. */
h1,h2{word-break:keep-all;overflow-wrap:normal;}

/* Table wrap-r3: whole words, no table scrollbar, readable responsive field groups. */
.tablewrap{width:100%;max-width:100%;overflow:visible;}
.tablewrap table{table-layout:fixed;width:100%;max-width:100%;min-width:0;}
.tablewrap th,.tablewrap td{word-break:keep-all;overflow-wrap:normal;text-wrap:balance;hyphens:none;}
.tablewrap th:nth-child(1),.tablewrap td:nth-child(1){width:20%;white-space:nowrap;}
.tablewrap th:nth-child(2),.tablewrap td:nth-child(2){width:21%;}
.tablewrap th:nth-child(3),.tablewrap td:nth-child(3){width:23%;}
.tablewrap th:nth-child(4),.tablewrap td:nth-child(4){width:24%;}
.tablewrap th:nth-child(5),.tablewrap td:nth-child(5){width:12%;}
@media(max-width:1000px){
 .tablewrap table,.tablewrap tbody{display:block;width:100%;}
 .tablewrap thead{display:none;}
 .tablewrap tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;border:1px solid #d4e4ed;border-radius:12px;margin:14px 0;padding:14px;}
 .tablewrap td{display:block;width:auto!important;min-width:0;border:0;padding:0;}
 .tablewrap td:first-child{grid-column:1/-1;}
 .tablewrap td:before{display:block;font-size:14px;font-weight:700;color:#315a77;content:attr(data-label);}
}
@media(max-width:650px){.tablewrap tr{grid-template-columns:minmax(0,1fr);}}
