@charset "UTF-8";:root{--tag-bg-color: #4f749c;--font-family-base: "Noto Serif JP", Georgia, "Times New Roman", serif;--font-handwrite: "Yomogi", "Hachi Maru Pop", "Comic Sans MS", "Noto Serif JP", serif;--tag-text-color: #0e3166;--color-headline-blue: #1d4ed8;--color-accent-orange: #bd5200;--color-accent-orange-rgb: 189, 82, 0;--color-muted-blue: #4f749c;--color-text: #333333;--color-background: #fafbfc;--color-grid-dot: rgba(30, 40, 60, .04);--paper-bg: #fffef8;--paper-border: rgba(0,0,0,.06);--note-line: rgba(0,0,0,.06);--note-rule-start: #ff6b6b;--note-rule-end: #ff4d4d;--shadow: 0 8px 24px rgba(15,15,15,.06);--paper-radius: 12px;--paper-radius-inner: 8px;--paper-shadow-front: 0 8px 24px rgba(0,0,0,.12);--paper-shadow-outer: 0 10px 30px rgba(0, 0, 0, .08);--paper-line-height: 32px;--color-hero-head: #000000;--max-line: 72ch;--max-width: 1000px;--color-bg: var(--color-background);--color-accent: var(--color-headline-blue);--color-accent-alt: var(--color-accent-orange);--color-border: rgba(0, 0, 0, .12);--color-border-subtle: rgba(0, 0, 0, .06);--color-border-accent: rgba(91, 127, 163, .12);--duration-instant: .12s;--duration-fast: .18s;--duration-base: .2s;--duration-moderate: .25s;--duration-smooth: .35s;--duration-deliberate: .5s;--ease-standard: cubic-bezier(.22, .61, .36, 1);--ease-gentle: cubic-bezier(.22, 1, .36, 1);--spacing-xs: .5rem;--spacing-sm: .75rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--tap-target-min: 44px;--nav-margin-bottom: 3.2rem;--nav-margin-bottom-desktop: 4.2rem;--hero-margin-bottom: 4rem}@media(min-width:1024px){:root{--max-line: 1000px}}[data-theme=dark]{--tag-bg-color: #1f425d;--tag-text-color: #ffffff;--color-headline-blue: #4d76e7;--color-text: #ffffff;--color-background: #041226;--color-grid-dot: rgba(255, 255, 255, .035);--color-bg: var(--color-background);--color-accent: #5fb0ff;--color-accent-alt: #ff6f00;--color-muted-blue: #4a80ba;--color-card-bg: rgba(255, 255, 255, .02);--color-surface-solid: #09172a;--color-surface-solid-hover: #0b192c;--color-border: rgba(255, 255, 255, .18);--color-border-subtle: rgba(255, 255, 255, .04);--color-border-accent: rgba(95, 150, 200, .08);--color-hero-head: #ffffff;--paper-bg: #09172a;--note-line: rgba(255,255,255,.055);--note-rule-start: rgba(255,107,107,.65);--note-rule-end: rgba(255,77,77,.65);--paper-shadow-outer: 0 12px 32px rgba(0, 0, 0, .35)}.blog-note-wrapper{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:24px 24px 48px;font-family:var(--font-family-base);width:100%;max-width:800px;margin:0 auto;box-sizing:border-box;overflow-x:hidden}@media(min-width:1280px){.blog-note-wrapper.design-simple,.blog-note-wrapper.design-notebook{width:100%;max-width:1440px;padding-left:40px;padding-right:40px}}.blog-note-header{position:relative;width:100%;background:var(--paper-bg);padding:80px 40px 40px;border-radius:var(--paper-radius);border:1px solid var(--paper-border);box-shadow:var(--shadow);margin-bottom:24px;text-align:center;box-sizing:border-box}.blog-note-header:before{content:"";position:absolute;top:-10px;left:50%;transform:translate(-50%);width:60px;height:20px;background:rgba(var(--color-accent-orange-rgb),.2);border-radius:2px;opacity:.8}.blog-note-title{font-family:inherit;margin:0 0 24px;font-weight:700;font-size:28px;color:var(--color-hero-head);line-height:1.3}.blog-note-title span{background:linear-gradient(transparent 65%,rgba(var(--color-accent-orange-rgb),.3) 65%);padding:0 .1em}.blog-meta{display:flex;justify-content:center;margin-top:16px}.blog-meta .tags{display:flex;flex-wrap:wrap;justify-content:center;gap:20px}.dates.note-ruled{display:flex;flex-direction:column;align-items:flex-end;gap:4px;color:var(--color-muted-blue);font-size:.85rem;font-family:var(--font-handwrite);position:absolute;top:24px;right:32px;margin-bottom:0;z-index:10}.dates.note-ruled:after{content:"";display:block;width:100%;min-width:120px;height:1px;background:#0000001a;margin-top:4px;transform:rotate(-1deg)}.dates-row{display:inline-flex;align-items:center}.dates .published,.dates .blog-updated,.dates .reading-time{display:inline-block;background:transparent;padding:0;border-radius:0;color:var(--color-text);opacity:1}.tags-container{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;padding:24px 0}.blog-tag{display:inline-flex;align-items:center;gap:8px;background:#fff9c4;color:#5d4037;padding:6px 14px;border-radius:2px;font-size:.95rem;font-family:var(--font-handwrite);text-decoration:none;box-shadow:1px 1px 2px #0000001a;transition:transform .2s,box-shadow .2s;transform:rotate(-1deg);border:1px solid rgba(0,0,0,.05)}.blog-tag .tag-count{display:inline-block;background:#0000000f;padding:1px 6px;border-radius:999px;font-size:.8em;font-family:ui-monospace,SFMono-Regular,monospace;opacity:.8}.blog-tag:hover{transform:scale(1.05) rotate(0);box-shadow:2px 4px 8px #00000026;opacity:1;z-index:1}.blog-tag:hover .tag-count{background:#0000001a;opacity:1}.blog-tag:nth-child(3n+1){background:#e1f5fe;color:#01579b;transform:rotate(1.5deg)}.blog-tag:nth-child(3n+1) .tag-count{background:#01579b1a}.blog-tag:nth-child(3n+2){background:#fbe9e7;color:#bf360c;transform:rotate(-2deg)}.blog-tag:nth-child(3n+2) .tag-count{background:#bf360c1a}.blog-tag:nth-child(3n){background:#f0f4c3;color:#33691e;transform:rotate(.5deg)}.blog-tag:nth-child(3n) .tag-count{background:#33691e1a}.paper-front{display:block;position:relative;background-color:var(--paper-bg);background:linear-gradient(180deg,#fffaf2,#fff7ee);border-radius:var(--paper-radius);border:1px solid var(--paper-border);box-shadow:var(--shadow);padding:48px 56px;box-sizing:border-box;width:100%}.paper-stack{position:relative;margin:0 auto;padding:0 0 36px}.paper-layer{position:absolute;left:0;right:0;height:100%;border-radius:var(--paper-radius);box-shadow:var(--paper-shadow-front);background:linear-gradient(180deg,#fffdf6,#fbfaf6);z-index:0}.paper-layer--deep{transform:translateY(-6px) rotate(-1.5deg) scale(.992);left:14px;right:4px;opacity:.94;background:linear-gradient(180deg,#f0e7d9,#efe3d4)}.paper-layer--back{transform:translateY(-2px) rotate(-.5deg) scale(.994);z-index:1;left:10px;right:2px;opacity:.95;background:linear-gradient(180deg,#fbf6ea,#f9f4e6)}.paper-layer--front{transform:translateY(-1px) rotate(.5deg) scale(.998);z-index:2;left:6px;right:0;opacity:.98;background:linear-gradient(180deg,#fffaf2,#fff7ee)}.paper-stack>.paper-front{position:relative;z-index:3}.blog-body{font-size:17px;line-height:1.9;color:var(--color-text);margin-top:0;overflow-wrap:break-word;word-break:break-word}.blog-body code:not(pre code){word-break:break-all;overflow-wrap:break-word}.blog-body p{margin:0 0 1.5em}.blog-body.design-notebook h2{position:relative;font-size:1.6rem;margin-top:48px;margin-bottom:24px;padding:.5em .8em;background:rgba(var(--color-accent-orange-rgb),.1);border-left:5px solid rgb(var(--color-accent-orange-rgb));border-bottom:none;color:var(--color-text);border-radius:0 4px 4px 0}.blog-body.design-notebook h3{font-size:1.3rem;margin-top:32px;margin-bottom:16px;padding-left:.6em;border-left:4px solid var(--color-muted-blue);border-bottom:1px dashed var(--color-border);color:var(--color-text);font-weight:700}.blog-body.design-notebook h4{font-size:1.15rem;margin-top:24px;margin-bottom:12px;font-weight:700;color:var(--color-muted-blue)}.blog-body.design-notebook ul,.blog-body.design-notebook ol{margin:1.5em 0;padding-left:1.5em}.blog-body.design-notebook ul li{list-style-type:none;position:relative;margin-bottom:.6em;padding-left:.5em;line-height:1.7}.blog-body.design-notebook ul li:before{content:"・";position:absolute;left:-.8em;color:rgb(var(--color-accent-orange-rgb));font-weight:700}.blog-body.design-notebook ol{counter-reset:ol-counter}.blog-body.design-notebook ol li{list-style-type:none;position:relative;margin-bottom:.6em;padding-left:.5em;line-height:1.7}.blog-body.design-notebook ol li:before{counter-increment:ol-counter;content:counter(ol-counter) ".";position:absolute;left:-1.2em;color:var(--color-muted-blue);font-weight:700;font-family:var(--font-handwrite)}.blog-body.design-notebook strong{background:linear-gradient(transparent 60%,rgba(var(--color-accent-orange-rgb),.25) 60%);font-weight:700;padding:0 .1em}.blog-body.design-notebook blockquote,.blog-body.design-notebook .blog-note-quote{border-left:4px solid var(--color-muted-blue);background:#00000005;padding:16px 20px;margin:24px 0;border-radius:0 4px 4px 0;color:var(--color-text)}.blog-body.design-simple h2{font-size:1.75rem;margin-top:3rem;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border);color:var(--color-text);font-weight:700}.blog-body.design-simple h3{font-size:1.4rem;margin-top:2.5rem;margin-bottom:1rem;color:var(--color-text);font-weight:600}.blog-body.design-simple h4{font-size:1.15rem;margin-top:2rem;margin-bottom:1rem;font-weight:600;color:var(--color-text)}.blog-body.design-simple ul,.blog-body.design-simple ol{margin:1.5em 0;padding-left:2em}.blog-body.design-simple ul li{list-style-type:disc;margin-bottom:.5em}.blog-body.design-simple ol li{list-style-type:decimal;margin-bottom:.5em}.blog-body.design-simple strong{font-weight:700;color:var(--color-headline-blue);background:none;padding:0}.blog-body.design-simple blockquote{border-left:4px solid var(--color-border);padding:1rem 1.25rem;margin:2rem 0;color:var(--color-text);font-style:italic;background:transparent}@media(min-width:1280px){.blog-body.design-simple,.blog-body.design-notebook{display:grid;grid-template-columns:1fr 280px;gap:40px;align-items:start}.blog-body.design-simple .toc-area,.blog-body.design-notebook .toc-area{grid-column:2;grid-row:1;position:sticky;top:120px;padding-top:10px;padding-right:5px}.blog-body.design-simple .post-content,.blog-body.design-notebook .post-content{grid-column:1;grid-row:1;min-width:0;max-width:52rem}}.toc-area{margin-bottom:2rem}.blog-body pre{overflow-x:auto;max-width:100%;border-radius:4px;margin:1.5em 0;padding:1em}.blog-body table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:.95em;display:block;overflow-x:auto;max-width:100%}.blog-body th,.blog-body td{padding:.8em;border:1px solid var(--color-border)}.blog-body th{background-color:#00000005;font-weight:700}[data-theme=dark] .blog-note-header,[data-theme=dark] .paper-front{background:var(--color-surface-solid);border-color:var(--color-border)}[data-theme=dark] .paper-layer{background:#15181c}[data-theme=dark] .paper-layer--deep{background:#1f1b16}[data-theme=dark] .blog-note-title span{background:linear-gradient(transparent 65%,rgba(var(--color-accent-orange-rgb),.5) 65%)}[data-theme=dark] .blog-body.design-notebook h2{background:rgba(var(--color-accent-orange-rgb),.15);color:var(--color-text)}[data-theme=dark] .blog-body.design-notebook strong{background:linear-gradient(transparent 60%,rgba(var(--color-accent-orange-rgb),.4) 60%)}[data-theme=dark] .dates .published,[data-theme=dark] .dates .blog-updated,[data-theme=dark] .dates .reading-time{color:var(--color-text)}[data-theme=dark] .blog-tag{background:#fff9c426;color:#fff9c4;border-color:#ffffff1a;box-shadow:none}[data-theme=dark] .blog-tag .tag-count{background:#ffffff26;color:#ffffffe6}[data-theme=dark] .blog-tag:hover .tag-count{background:#ffffff40}[data-theme=dark] .blog-tag:nth-child(3n+1){background:#e1f5fe26;color:#e1f5fe}[data-theme=dark] .blog-tag:nth-child(3n+1) .tag-count{background:#e1f5fe33;color:#e1f5fe}[data-theme=dark] .blog-tag:nth-child(3n+2){background:#fbe9e726;color:#ffccbc}[data-theme=dark] .blog-tag:nth-child(3n+2) .tag-count{background:#fbe9e733;color:#ffccbc}[data-theme=dark] .blog-tag:nth-child(3n){background:#f0f4c326;color:#f0f4c3}[data-theme=dark] .blog-tag:nth-child(3n) .tag-count{background:#f0f4c333;color:#f0f4c3}.footnotes{margin-top:48px;padding-top:24px;border-top:2px solid var(--color-border);font-size:.9rem;color:var(--color-text)}.footnotes h2{display:none!important}.footnotes ol{padding-left:1.5em;margin:0}.footnotes ol li{margin-bottom:.8em;line-height:1.7}.footnotes ol li::marker{color:var(--color-muted-blue);font-weight:700}.footnotes ol li p{margin:0;display:inline}.footnotes a{color:var(--color-headline-blue);text-decoration:none}.footnotes a:hover{text-decoration:underline}.footnotes .data-footnote-backref{margin-left:.3em;font-size:.9em;text-decoration:none}.footnotes .data-footnote-backref:before{content:"["}.footnotes .data-footnote-backref:after{content:"]"}.footnotes .data-footnote-backref:hover{text-decoration:none;color:rgba(var(--color-accent-orange-rgb),1)}.blog-body a[data-footnote-ref]{color:var(--color-headline-blue);text-decoration:none;font-size:.85em;vertical-align:super;padding:0 .2em}.blog-body a[data-footnote-ref]:before{content:"["}.blog-body a[data-footnote-ref]:after{content:"]"}.blog-body a[data-footnote-ref]:hover{text-decoration:underline}@media(max-width:720px){.blog-note-wrapper{padding:16px 16px 32px}.blog-note-header{padding:24px 20px 60px;display:flex;flex-direction:column}.blog-note-title{font-size:22px;margin-top:40px}.dates.note-ruled{position:relative;top:auto;right:auto;width:100%;align-items:flex-end;margin-bottom:8px;flex-direction:column;justify-content:flex-end;gap:4px}.paper-front{padding:32px 16px}.paper-layer{display:none}.paper-stack{width:100%;max-width:100%;overflow:hidden}.paper-front:before{content:"";position:absolute;top:-6px;left:8px;right:8px;height:1px;background:#0000001a}}.note-box{position:relative;margin:2.5em 0;padding:1.5em;border-radius:2px;background:#fff;color:var(--color-text);font-family:var(--font-family-base);box-sizing:border-box}.note-box>*:first-child{margin-top:0}.note-box>*:last-child{margin-bottom:0}.note-box.point{background:#fffde7;border:1px solid rgba(0,0,0,.06);box-shadow:2px 3px 6px #0000000a}.note-box.point:before{content:"POINT";position:absolute;top:-14px;left:50%;transform:translate(-50%) rotate(-1.5deg);background:rgba(var(--color-accent-orange-rgb),.85);color:#fff;font-size:.8rem;font-weight:700;letter-spacing:.05em;padding:3px 14px;border-radius:2px;box-shadow:0 2px 4px #00000026;border-left:2px dotted rgba(255,255,255,.4);border-right:2px dotted rgba(255,255,255,.4)}.note-box.memo{background:#fff;border:2px dashed #4f749c;border-radius:6px;margin-top:2.5em}.note-box.memo:before{content:"💡 MEMO";position:absolute;top:-14px;left:16px;background:var(--paper-bg, #fff);padding:0 8px;font-weight:700;color:#4f749c;font-size:.85rem;font-family:var(--font-handwrite);line-height:1.2}.note-box.alert{background:snow;border-left:6px solid #ff6b6b;border-radius:0 4px 4px 0;box-shadow:0 1px 3px #0000000d}.note-box.alert:before{content:"!";display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#ff6b6b;color:#fff;border-radius:50%;font-weight:700;font-size:14px;position:absolute;top:-12px;left:-12px;box-shadow:0 2px 4px #0000001a}.note-box.check{border:4px double rgba(var(--color-accent-orange-rgb),.3);background:#fff;border-radius:4px;margin-top:2.5em}.note-box.check:before{content:"✔ CHECK";position:absolute;top:-14px;left:16px;background:var(--paper-bg, #fff);padding:0 8px;font-weight:700;color:rgb(var(--color-accent-orange-rgb));font-size:.85rem;font-family:var(--font-handwrite);line-height:1.2}.note-box.clip{background:#fcfcfc;border:1px solid #e0e0e0;border-top:4px solid #e0e0e0;box-shadow:0 4px 8px #0000000d;margin-top:3.5em}.note-box.clip:before{content:"";position:absolute;top:-24px;right:32px;width:14px;height:36px;border:4px solid #9aa5b1;border-bottom:none;border-radius:14px 14px 0 0;z-index:1}.note-box.clip:after{content:"";position:absolute;top:-12px;right:28px;width:22px;height:20px;border:4px solid #86919d;border-top:none;border-radius:0 0 14px 14px;z-index:2}.note-box.tape{background:#fff;box-shadow:0 2px 12px #0000000f;border:1px solid rgba(0,0,0,.02);margin-top:3em;transform:rotate(-.5deg)}.note-box.tape:before{content:"";position:absolute;top:-16px;left:50%;transform:translate(-50%) rotate(1deg);width:100px;height:30px;background:#ffffff73;border:1px solid rgba(0,0,0,.08);box-shadow:0 1px 2px #0000000d;background-image:repeating-linear-gradient(45deg,#fff0,#fff0 2px,#ffffff4d 2px 4px);backdrop-filter:blur(1px);opacity:.8}[data-theme=dark] .note-box{background:var(--color-surface-solid);color:var(--color-text)}[data-theme=dark] .note-box.point{background:#fffde71a;border-color:#ffffff1a;color:#fffde7}[data-theme=dark] .note-box.point:before{opacity:.9;border-color:#0003}[data-theme=dark] .note-box.memo{background:transparent;border-color:#4f749c;color:#e1f5fe}[data-theme=dark] .note-box.memo:before{background:var(--color-surface-solid);color:#4f749c}[data-theme=dark] .note-box.alert{background:#ff6b6b1a;color:#fcc}[data-theme=dark] .note-box.check{background:transparent;border-color:rgba(var(--color-accent-orange-rgb),.5)}[data-theme=dark] .note-box.check:before{background:var(--color-surface-solid);color:rgba(var(--color-accent-orange-rgb),.9)}[data-theme=dark] .note-box.clip{background:#ffffff08;border-color:#ffffff1a;border-top-color:#fff3}[data-theme=dark] .note-box.clip:before{border-color:#788595}[data-theme=dark] .note-box.clip:after{border-color:#5d6a78}[data-theme=dark] .note-box.tape{background:#ffffff08;border-color:#ffffff0d;box-shadow:0 2px 12px #0003}[data-theme=dark] .note-box.tape:before{background:#ffffff14;border-color:#ffffff1a;background-image:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(255,255,255,.2) 2px,rgba(255,255,255,.2) 4px)}
