@charset "UTF-8";
:root{--navy:#122f46;--blue:#276e9d;--red:#bc3b43;--line:#cad6df;--pale:#edf5fa;--text:#243b4a}
*{box-sizing:border-box}
body{margin:0;background:#f0f4f6;color:var(--text);font:16px/1.6 "Noto Sans CJK JP","Yu Gothic",Meiryo,sans-serif}
a{color:var(--blue);text-underline-offset:3px}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid #945c00;outline-offset:3px}
h1,h2,h3,p{margin:0}
.toolbar{background:#fff;border-bottom:1px solid var(--line);padding:24px}
.toolbar>div{max-width:1050px;margin:auto}
.toolbar h1{font-size:26px;color:var(--navy);margin:12px 0}
.toolbar p{max-width:900px;margin:8px 0;font-size:14px}
.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:20px}
button,.bottom-bar>a{padding:12px 20px;border:1px solid var(--navy);border-radius:5px;color:white;background:var(--navy);font-weight:bold;text-decoration:none}
button.secondary{background:white;color:var(--navy);border-color:var(--line)}
main{max-width:1050px;margin:30px auto;padding:0 16px}
.sheet{padding:32px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 32px #183a4a08;margin-bottom:30px;overflow-wrap:anywhere}
.sheet-head{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:2px solid var(--navy);padding-bottom:16px;font-size:13px}
.sheet-head img{display:block;max-width:158px;width:100%;height:auto}
.sheet-head .brand{flex-shrink:0}
.sheet-kicker{font-size:12px;letter-spacing:.13em;color:var(--blue);font-weight:bold;margin:17px 0 4px}
.sheet h2{font-size:28px;color:var(--navy);line-height:1.5}
.sheet-intro{margin:8px 0 15px;font-size:15px}
.meta{display:flex;flex-wrap:wrap;gap:6px 24px;padding:8px 12px;border:1px solid var(--line);background:#f7fafc;font-size:13px}
.meta b{font-weight:normal}
.sheet h3{font-size:18px;border-left:3px solid var(--red);padding-left:11px;color:var(--navy);margin:20px 0 12px;line-height:1.5}
.grid{display:grid;gap:11px 16px;margin:12px 0}
.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.field{display:flex;flex-direction:column;min-width:0;gap:5px;font-size:14px}
.field>span:first-child{color:var(--navy);font-weight:600;line-height:1.45}
.input-wrap{display:flex;align-items:center;gap:6px;min-width:0}
.input-wrap b{font-size:13px;font-weight:400;flex-shrink:0}
input,textarea,select{min-width:0;width:100%;color:var(--text);background:#fff;border:1px solid #a9bccb;border-radius:3px;padding:8px 9px;line-height:1.5}
input::placeholder,textarea::placeholder{color:#657686;opacity:1}
textarea{resize:vertical}
.note{margin:11px 0}
.status{display:flex;flex-direction:column;gap:5px;font-size:14px}
.status select{font-size:14px}
.print-value{display:none}
table{border-collapse:collapse;width:100%;table-layout:fixed;margin:12px 0;font-size:14px}
th,td{border:1px solid var(--line);padding:8px;vertical-align:middle}
thead th{color:var(--navy);background:var(--pale);font-weight:600}
th{text-align:left}
tbody th{font-weight:500}
table th:first-child{width:39%}
table .compact>span:first-child,table .status{font-size:0}
table .compact input,table .status select{font-size:14px}
.notice{font-size:13px;margin:12px 0;color:#475f70;background:#f4f7f9;padding:10px 12px;border-left:2px solid #9db5c6}
.risk-table th:first-child{width:27%}
.risk-table th:nth-child(2){width:26%}
.sheet-foot{display:flex;justify-content:space-between;gap:20px;margin-top:18px;border-top:1px solid var(--line);padding-top:12px;font-size:12px;color:#526773}
.bottom-bar{max-width:1050px;margin:24px auto 50px;text-align:center;padding:0 22px}
.bottom-bar>a{display:inline-block}
.bottom-bar p{font-size:14px;margin-top:12px}
@media(max-width:700px){.sheet{padding:20px}.sheet-head{gap:12px}.sheet-head>span:nth-child(2){display:none}.sheet-head img{width:132px}.sheet h2{font-size:23px}.three,.two{grid-template-columns:1fr}.meta{display:block}.meta>span{display:block}.sheet-foot{flex-direction:column;gap:8px}.actions{align-items:stretch;flex-direction:column}.toolbar{padding:20px}.sheet h3{font-size:17px}table{font-size:13px}td,th{padding:5px}table .compact input,table .status select{font-size:13px;padding:8px 4px}.input-wrap{display:block}.input-wrap b{display:block;text-align:right}.risk-table th:first-child{width:30%}.risk-table th:nth-child(2){width:31%}}
@media print{
 @page{size:A4 portrait;margin:12mm}
 html,body{margin:0;padding:0;background:#fff;font-size:12pt;line-height:1.35;color:#172f40}
 .toolbar,.bottom-bar{display:none!important}
 main{max-width:none;margin:0;padding:0}
 .sheet{margin:0;padding:0;border:0;box-shadow:none;break-after:page;page-break-after:always;overflow:visible}
 .sheet:last-child{break-after:auto;page-break-after:auto}
 .sheet-head{padding-bottom:8px;gap:10px;font-size:12pt;line-height:1.3}
 .sheet-head .brand{width:110px}
 .sheet-head>span:nth-child(2){display:block}
 .sheet-head img{width:110px}
 .sheet-kicker{font-size:12pt;letter-spacing:0;margin:9px 0 3px}
 .sheet h2{font-size:20pt;line-height:1.35}
 .sheet-intro{font-size:12pt;margin:5px 0 8px;line-height:1.4}
 .meta{font-size:12pt;display:flex;gap:5px 15px;padding:5px 7px;line-height:1.4}
 .meta>span{display:inline}
 .identity{display:none}
 .sheet h3{font-size:13pt;margin:11px 0 7px;padding-left:8px;line-height:1.35}
 .grid{display:grid;gap:7px 12px;margin:8px 0}
 .two{grid-template-columns:repeat(2,minmax(0,1fr))}
 .three{grid-template-columns:repeat(3,minmax(0,1fr))}
 .field,.field>span:first-child,.status,.input-wrap b{font-size:12pt;line-height:1.35;gap:3px}
 .input-wrap{display:flex;gap:3px}
 .input-wrap b{display:inline;text-align:left}
 input,textarea,select{display:none!important}
 .print-value{display:block;white-space:pre-wrap;overflow-wrap:anywhere;min-height:23px;padding:3px 0;border-bottom:1px solid #b7c7d2;font-size:12pt;font-weight:400;color:#243b4a;flex:1}
 .note{margin:8px 0}
 .note>.print-value{min-height:37px}
 table{font-size:12pt;margin:8px 0;line-height:1.35}
 th,td{padding:5px 6px;font-size:12pt}
 table .field{gap:0}
 table .compact>span:first-child{display:none}
 table .status{font-size:0}
 table .status .print-value{font-size:12pt;line-height:1.35}
 table .print-value{min-height:21px;border:0;padding:0}
 .notice{font-size:12pt;margin:8px 0;padding:7px 9px;line-height:1.35;background:#fff;border:1px solid #b7c7d2}
 .sheet-foot{font-size:12pt;line-height:1.35;display:flex;flex-direction:row;margin-top:10px;padding-top:7px;gap:14px}
 .sheet-foot>span:first-child{flex-shrink:0}
 tr,.grid,.note,.notice,.sheet-head,.sheet-foot{break-inside:avoid}
 .sheet h3{break-after:avoid}
 .risk-table th:first-child{width:28%}.risk-table th:nth-child(2){width:25%}
 a{color:inherit;text-decoration:none}
}
@media print{.grid.identity{display:none}}
