:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Noto Sans JP,Helvetica Neue,sans-serif;color:#203832;background:#f4f6f7;font-synthesis:none;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;background:#fff;border:1px solid #dce4e0;border-radius:8px;padding:10px 14px;color:inherit;font-size:14px}button:hover{background:#edf4f0}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #6eaa95;outline-offset:3px}a{color:#216c59}input,select{min-width:0;max-width:100%;border:1px solid #d6dedb;border-radius:8px;padding:11px 12px;background:#fff;color:#223d34}input[type=checkbox]{width:18px;height:18px;accent-color:#246e5d}label{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#52645e}h1,h2,h3,p{margin-top:0}h1{font-size:29px;letter-spacing:-1px;margin-bottom:0}h2{font-size:18px;font-weight:650;margin-bottom:18px}h3{font-size:16px;margin:0}small{display:block;font-size:12px;line-height:1.7;color:#7b8b84}strong,b{font-variant-numeric:tabular-nums}aside{width:230px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid #e2e8e5;padding:34px 20px;display:flex;flex-direction:column}.brand{display:flex;flex-wrap:wrap;gap:10px;align-items:center;text-decoration:none;color:#183d32;font-size:26px;font-weight:700;padding:0 10px}.brandmark{background:#164f40;color:#fff;border-radius:11px;padding:8px;display:flex}.brand>span{display:block;width:100%;padding-left:52px;font-size:12px;color:#82908b;font-weight:400;margin-top:-9px}.navlabel{font-size:11px;letter-spacing:2px;color:#98a59f;margin:53px 15px 17px}nav{display:flex;flex-direction:column;gap:8px}nav button{border:0;justify-content:flex-start;padding:14px 15px;background:transparent;color:#6a7972;gap:13px}nav button.active{background:#e8f3ed;color:#1d634c;font-weight:650}.private{margin-top:auto;padding:16px 8px;border-top:1px solid #e8ecea}.private>span{font-size:12px}.private button{margin-top:18px;width:100%}.private small{font-size:11px}main{max-width:1570px;margin-left:230px;padding:36px 42px}header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:38px}.eyebrow{font-size:11px;letter-spacing:2px;color:#82998e;font-weight:700;display:block;margin-bottom:9px}.scenario{display:flex;align-items:center;gap:12px;font-size:13px;color:#7c8a83}.scenario select{min-width:180px;font-size:14px;font-weight:550}.sectiontitle{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:27px 0 16px}.sectiontitle h2{margin:0}.sectiontitle>span{font-size:12px;color:#7a8a82}.hero{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#123e34;border-radius:15px;padding:30px 32px;color:#fff;box-shadow:0 8px 25px #143f3210}.hero>div{flex:1;min-width:0}.hero span{font-size:14px;color:#b5ccbe}.hero strong{display:block;white-space:nowrap;font-size:clamp(24px,2.4vw,38px);font-weight:550;letter-spacing:-1px;margin:13px 0 8px}.hero small{color:#9fbbad}.hero .operator{font-size:25px;opacity:.5}.hero .result strong{color:#c2ecc7}.walletgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.card{background:#fff;border:1px solid #e1e8e4;border-radius:12px;padding:23px;margin-bottom:22px}.wallet{margin:0;padding:20px}.wallethead{display:flex;gap:10px;align-items:center;margin-bottom:23px}.icon{padding:9px;border-radius:10px;display:flex}dl{margin:0}dl>div{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0;font-size:14px}dt{color:#7d8a84}dd{margin:0;font-variant-numeric:tabular-nums}.remaining{border-top:1px solid #e9eeeb;padding-top:15px;font-weight:650}.remaining dd{font-size:18px}.wallet small{border-top:1px dashed #e9eeeb;padding-top:12px;margin-top:15px;font-size:11px}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#fff;border:1px solid #e1e8e4;border-radius:12px;margin-bottom:24px}.metric{padding:23px 26px}.metric+.metric{border-left:1px solid #e8ecea}.metric>span{font-size:13px;color:#6e7f75}.metric strong{display:block;font-size:27px;letter-spacing:-.7px;margin:10px 0 3px}.negative{color:#b25d47!important}.twocol{display:grid;grid-template-columns:1.3fr 1fr;gap:22px}.muted{font-size:14px;line-height:1.8;color:#7a8981}.piearea{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:13px}.legendrow{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin:16px 0}.legendrow span{white-space:nowrap}.legendrow b{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:9px}.outlook{background:#eaf2ed;padding:28px 32px}.outlook>strong{font-size:36px;display:block;margin:20px 0}.outlook p{font-size:13px;color:#789084}.outlookline{display:flex;justify-content:space-between;font-size:14px;padding:9px 0}.textbutton{background:none;border:0;padding:16px 0 0;color:#21694f}.footnote{font-size:12px;color:#7c8983;line-height:1.9;margin:16px 0}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px;white-space:nowrap}th{font-size:12px;text-align:left;color:#819087;font-weight:500;background:#f7f9f8}td,th{padding:15px 12px;border-bottom:1px solid #e9eeeb}td small{font-size:11px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}td .actions{margin:0;flex-wrap:nowrap}td .actions button{padding:9px}.primary{background:#21644f;color:#fff;border-color:#21644f}.primary:hover{background:#154635}.listcard .sectiontitle{margin-top:0}.calendargrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.month{margin-bottom:0}.month h3{font-size:28px;display:flex;gap:7px;align-items:center}.month h3>span{font-size:14px;color:#819187}.month em{margin-left:auto;font-size:11px;font-style:normal;background:#fff2d9;color:#946321;padding:5px 8px;border-radius:5px}.warningcard{border-color:#e8d4ad}.warning{font-size:12px;color:#a16b31;line-height:1.6;margin:8px 0 0}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px;margin:22px 0}.badge{background:#eef5f0;color:#286d51;display:inline-block;padding:10px 14px;border-radius:6px;font-size:14px}.horizon{margin-top:22px}.horizon strong{display:block;font-size:23px;margin:18px 0}.checks{display:flex;gap:25px;flex-wrap:wrap}.checks label,.check{display:flex;align-items:center;flex-direction:row}.walletedit{display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:14px;margin:20px 0}.filebutton{position:relative;display:inline-flex;flex-direction:row;border:1px solid #dce4e0;border-radius:8px;padding:10px 14px;cursor:pointer;align-items:center}.filebutton input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;cursor:pointer}.notice{padding:15px;background:#fff3d9;color:#7b5725;font-size:14px;line-height:1.7;border-radius:9px;margin-bottom:22px}.notice button{margin-left:12px}footer{display:flex;gap:15px;font-size:12px;color:#99a59d;margin-top:32px;padding:22px 0;border-top:1px solid #e2e8e4}footer span:last-child{margin-left:auto}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#102a2466;display:flex;align-items:center;justify-content:center;z-index:10;padding:20px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{max-height:90dvh;overflow:auto;width:620px;background:#fff;padding:30px;border-radius:16px}.modal .actions{justify-content:flex-end}@media(min-width:1500px){main{padding:40px 55px}.hero strong{font-size:40px}}@media(max-width:1150px){aside{width:190px;padding:28px 12px}main{margin-left:190px;padding:30px 25px}.walletgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.twocol{grid-template-columns:1fr}.hero{padding:24px 22px;gap:12px}.hero strong{font-size:26px}.metric{padding:20px 17px}.metric strong{font-size:23px}.calendargrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){aside{position:fixed;inset:auto 0 0;width:100%;height:73px;padding:0;border-top:1px solid #dce5de;z-index:5;background:#fffffff5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand,.navlabel,.private{display:none}nav{display:grid;grid-template-columns:repeat(6,1fr);gap:0;height:100%;padding:5px 3px}nav button{padding:8px 1px;flex-direction:column;justify-content:center;gap:5px;border-radius:8px}nav button span{font-size:10px;white-space:nowrap}nav button svg{width:19px}main{margin:0;padding:25px 17px 94px}header{margin-bottom:26px;gap:10px}h1{font-size:24px}.eyebrow{font-size:9px;letter-spacing:1.5px}.scenario{display:block}.scenario>span{display:block;font-size:10px;margin-bottom:5px}.scenario select{min-width:0;max-width:160px;font-size:12px;padding:9px}h2{font-size:16px}.hero{display:grid;grid-template-columns:1fr 1fr;padding:22px;gap:20px}.hero .operator{display:none}.hero strong{font-size:25px}.hero span{font-size:12px}.hero .result{grid-column:1/-1;border-top:1px solid #ffffff25;padding-top:19px;display:grid;grid-template-columns:1fr auto;align-items:center}.hero .result strong{font-size:31px;margin:0}.hero .result small{grid-column:1/-1;margin-top:4px}.sectiontitle>span{font-size:10px}.walletgrid{gap:11px}.wallet{padding:15px 12px}.wallethead{gap:7px;margin-bottom:18px}.wallethead h3{font-size:14px}.icon{padding:6px}.icon svg{width:17px}.wallet dl>div{font-size:12px}.remaining dd{font-size:15px}.wallet small{font-size:10px}.metrics{grid-template-columns:1fr}.metric{display:grid;grid-template-columns:1fr auto;align-items:center;padding:19px}.metric+.metric{border-left:0;border-top:1px solid #e8ecea}.metric strong{font-size:23px;margin:0}.metric small{grid-column:1/-1}.card{padding:20px 16px}.wallet.card{padding:15px 12px;margin-bottom:0}.piearea{grid-template-columns:1fr}.piearea>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.legendrow{font-size:11px;margin:9px 0}.outlook>strong{font-size:33px}.calendargrid{grid-template-columns:1fr}.formgrid{gap:15px;grid-template-columns:1fr}.walletedit{grid-template-columns:1fr 1fr;border-bottom:1px solid #e4ebe6;padding-bottom:18px}.walletedit label:nth-child(3){grid-column:1/2}.walletedit button{justify-self:end}footer>span:nth-child(2){display:none}.modal{padding:24px 20px;max-height:88dvh}.horizon strong{font-size:19px}.horizon small{font-size:10px}.horizon{margin:12px 0 0}.checks{gap:14px}.sectiontitle button{font-size:12px;padding:9px}.check{font-size:13px}}.editshortcuts{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}.editshortcuts button{min-height:44px}.itemname{border:0;padding:0;background:transparent;font-weight:650;text-align:left;justify-content:flex-start;white-space:normal}.amountedit{min-height:44px;font-variant-numeric:tabular-nums;color:#185e51;background:#edf6f1;border-color:#c9ded3;white-space:nowrap}input[aria-invalid=true]{border-color:#b25d47}@media(max-width:700px){input,select{font-size:16px!important}.editshortcuts{display:grid;grid-template-columns:1fr 1fr}.editshortcuts .primary{grid-column:1/-1;font-size:16px}.listcard .tablewrap{overflow:visible}.listcard table,.listcard tbody{display:block;white-space:normal}.listcard thead{display:none}.listcard tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:17px 0;border-bottom:1px solid #e1e8e4}.listcard td{border:0;padding:0;min-width:0}.listcard td:nth-child(1){grid-column:1;align-self:center}.listcard td:nth-child(2){grid-column:2;text-align:right;align-self:center}.listcard td:nth-child(3){grid-column:1;font-size:13px;color:#6a7972}.listcard td:nth-child(4){grid-column:2;text-align:right;font-size:12px;color:#6a7972}.listcard td:nth-child(4):before{content:"月あたり ";display:block}.listcard td:nth-child(5){grid-column:1/-1}.listcard td .actions{justify-content:flex-end}.listcard td .actions button{min-height:44px}.amountedit{font-size:14px;padding:8px 10px}.itemname{font-size:14px;line-height:1.6}}.accountadd,.accountcontrols{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.accountadd label,.accountcontrols label{flex:1;min-width:170px}.accounttotals{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:#edf5f0;padding:18px;border-radius:9px;margin:20px 0}.accounttotals span{display:block;color:#5b7568;font-size:13px}.accounttotals strong{display:block;font-size:24px;margin-top:8px}.accountitem{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:17px 0;border-bottom:1px solid #e5ece7}.accountitem label{grid-column:1/-1}.accountitem>strong{font-size:17px}.accountcard .sectiontitle{margin-top:0}.accounttag{color:#21644f;font-weight:650}.unassigned{border-color:#d9bd81}@media(max-width:700px){nav{grid-template-columns:repeat(7,minmax(0,1fr))}nav button span{font-size:9px}.accounttotals{grid-template-columns:1fr}.accounttotals strong{font-size:25px}.accountadd button{width:100%}.accountitem>strong{font-size:15px}}
