@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400&family=Noto+Serif+JP:wght@200;300;400&display=swap");*{margin:0;padding:0;box-sizing:border-box}body{font-family:Noto Sans JP,sans-serif;background:#ffffff;color:#2a2a2a}.blog-column{max-width:900px;margin:0 auto;background:#fdfcfa;min-height:100vh}.blog-header{padding:24px 48px 22px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f0ece6}.blog-logo{font-family:Noto Sans JP,sans-serif;font-size:24px;color:#3c3c3c;letter-spacing:.18em;font-weight:300;display:flex;align-items:baseline;gap:2px;text-decoration:none}.blog-logo-hyphen{color:#a8bfa5}.blog-nav{display:flex;gap:32px}.blog-nav a{font-size:13px;letter-spacing:.15em;color:#b5afa8;text-decoration:none;font-weight:400;transition:color .2s}.blog-nav a:hover{color:#7fa88a}.blog-footer{padding:32px 48px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(150deg,#f3f7f2,#faf4ee 60%,#fbf8f3);margin-top:64px}.blog-footer-logo{font-family:Noto Sans JP,sans-serif;font-size:20px;color:#3c3c3c;letter-spacing:.1em;font-weight:300;display:flex;align-items:baseline;gap:2px}.blog-footer p{font-size:12px;color:#b5afa8;letter-spacing:.18em;font-weight:300}.blog-hero{padding:52px 48px 56px;text-align:center;background:linear-gradient(150deg,#f3f7f2,#faf4ee 60%,#fbf8f3)}.hero-en-label{font-size:11px;letter-spacing:.35em;color:#a8bfa5;margin-bottom:18px;display:flex;align-items:center;justify-content:center;gap:14px;font-weight:300}.hero-en-label:after,.hero-en-label:before{content:"";display:block;width:28px;height:1px;background:#c4d4c2}.blog-hero-title{font-size:28px;font-weight:300;letter-spacing:.12em;color:#3c3c3c;line-height:1.9;margin-bottom:18px}.blog-hero-title em{font-style:normal;color:#5c8f6e}.blog-hero-desc{font-size:13px;font-weight:400;color:#888;line-height:2.1;letter-spacing:.06em;max-width:440px;margin:0 auto}.articles-page{padding:48px 48px 72px}.section-heading{font-size:11px;letter-spacing:.35em;color:#c4bfb8;margin-bottom:36px;display:flex;align-items:center;gap:18px;font-weight:400}.section-heading:after{content:"";flex:1 1;height:2px;background-image:repeating-linear-gradient(90deg,#ede9e4 0,#ede9e4 5px,transparent 0,transparent 9px)}.sub-articles{display:grid;grid-template-columns:repeat(3,1fr);grid-column-gap:40px;column-gap:40px;grid-row-gap:52px;row-gap:52px;align-items:start}.sub-article{text-decoration:none;color:inherit;transition:opacity .2s}.sub-article:hover{opacity:.75}.sub-oval{width:70%;aspect-ratio:1;border-radius:50% 52% 48% 50%/50% 48% 52% 50%;margin:0 auto 14px}.sub-text{max-width:15em;margin:0 auto}.sub-cat{font-size:11px;letter-spacing:.22em;color:#d4845a;margin-bottom:8px;font-weight:400}.sub-title{font-size:14px;font-weight:400;letter-spacing:.05em;color:#5a5a5a;line-height:1.9;margin-bottom:6px}.sub-date{font-size:11px;color:#c4bfb8;letter-spacing:.1em;font-weight:300}.articles-empty{text-align:center;padding:80px 0;color:#b5afa8;font-size:14px;letter-spacing:.1em}.article-header{padding:52px 48px 48px;background:linear-gradient(150deg,#f3f7f2,#faf4ee 60%,#fbf8f3);text-align:center}.article-cat{font-size:11px;letter-spacing:.3em;color:#d4845a;margin-bottom:20px;font-weight:400}.article-title{font-size:26px;font-weight:300;letter-spacing:.1em;color:#3c3c3c;line-height:1.9;margin-bottom:24px;max-width:600px;margin-left:auto;margin-right:auto}.article-meta{font-size:11px;color:#c4bfb8;letter-spacing:.15em;font-weight:300}.article-body{padding:56px 160px 80px}.article-body p{font-size:15px;font-weight:400;line-height:2.1;letter-spacing:.04em;color:#626262;margin-bottom:28px}.article-body h1{font-size:20px;letter-spacing:.1em;color:#3c3c3c}.article-body h1,.article-body h2{font-weight:400;line-height:1.8;margin-top:56px;margin-bottom:20px}.article-body h2{font-size:17px;letter-spacing:.12em;color:#555555;padding-bottom:12px;border-bottom:2px dashed #c8d8c6}.article-body h2:before{content:"";display:inline-block;width:16px;height:16px;border-radius:50%;background:#d4e2d2;margin-right:12px;vertical-align:middle;position:relative;top:-1px}.article-body h3{font-size:15px;font-weight:400;letter-spacing:.1em;color:#5c8f6e;margin-top:36px;margin-bottom:14px}.article-body ol,.article-body ul{padding-left:24px;margin-bottom:28px}.article-body li{font-size:15px;line-height:2.1;letter-spacing:.04em;color:#626262;margin-bottom:4px}.article-body blockquote{border-left:3px solid #c8d8c6;padding-left:20px;margin:28px 0;color:#888;font-style:italic}.article-body hr{border:none;border-top:1px solid #ede9e3;margin:40px 0}.article-body a{color:#5c8f6e;text-decoration:underline;text-underline-offset:3px}.article-body pre{background:#f4f7f3;border-radius:10px;padding:20px 24px;margin:28px 0;overflow-x:auto}.article-body pre code{color:#4a4a4a}.article-body pre code,.inline-code{font-size:13px;font-family:Courier New,monospace}.inline-code{background:#f0f0f0;border-radius:4px;padding:2px 6px;color:#d4845a}.note-box{background:#f4f7f3;border-radius:14px;padding:20px 24px;margin:32px 0;display:flex;align-items:flex-start;gap:12px}.note-box-icon{font-size:18px;line-height:1.6;flex-shrink:0}.note-box p{font-size:14px;color:#6a6a6a;margin-bottom:0!important;line-height:2}.article-body figure{margin:32px 0;text-align:center}.article-body figure img{max-width:100%;border-radius:12px}.article-body figcaption{font-size:12px;color:#b5afa8;margin-top:8px;letter-spacing:.1em}.article-nav{padding:32px 48px 40px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ede9e3}.article-nav a{font-size:12px;letter-spacing:.12em;color:#a8bfa5;text-decoration:none;font-weight:300;transition:color .2s}.article-nav a:hover{color:#7fa88a}@media (max-width:640px){.blog-header{padding:16px 20px;flex-direction:column;gap:12px}.blog-nav{gap:16px}.blog-hero{padding:36px 20px 40px}.blog-hero-title{font-size:20px}.articles-page{padding:32px 20px 48px}.sub-articles{grid-template-columns:repeat(2,1fr);column-gap:24px;row-gap:36px}.article-header{padding:36px 24px 32px}.article-title{font-size:20px}.article-body{padding:36px 24px 48px}.article-nav,.blog-footer{padding:24px 20px}.blog-footer{flex-direction:column;gap:8px;text-align:center}}