body.article-page{background:#fff}.so-post{--post-wide: 1120px;--post-text: 840px;--post-gutter: 6vw;--post-cream: #fff8eb;--post-line: #efe9de;--post-sub: #6f6a62;padding-bottom:120px}.so-post__head{padding:168px var(--post-gutter) 64px;background:var(--post-cream)}.so-post--cover .so-post__head{padding-bottom:200px}.so-post__inner{max-width:var(--post-text);margin:0 auto}.so-post__eyebrow{display:inline-flex;align-items:center;gap:12px;color:var(--color-sun-deep);font-family:var(--font-logo);font-size:15px;font-weight:600;letter-spacing:.24em;text-decoration:none}.so-post__eyebrow:before{content:"";width:28px;height:2px;border-radius:2px;background:currentColor}@media(hover:hover){.so-post__eyebrow:hover{color:var(--color-sun)}}.so-post__meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:22px}.so-post__meta time{color:var(--post-sub);font-family:Lato,Hiragino Kaku Gothic ProN,sans-serif;font-size:15px;font-weight:700;letter-spacing:.08em}.so-post__cat{display:inline-flex;align-items:center;gap:7px;padding:5px 14px 5px 11px;border:1.5px solid var(--cat);border-radius:999px;background:#fff;color:var(--cat);font-size:13px;font-weight:700;line-height:1.2}.so-post__cat:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--cat)}.so-post__title{margin-top:16px;color:var(--color-ink);font-size:clamp(28px,3.2vw,42px);font-weight:700;line-height:1.5;letter-spacing:.04em;text-wrap:balance;word-break:auto-phrase}.so-post__cover{max-width:var(--post-wide);margin:-150px auto 0;padding:0 var(--post-gutter);box-sizing:content-box}.so-post__cover img{display:block;width:100%;height:auto;max-height:640px;object-fit:cover;border-radius:24px;background:#f3efe7;box-shadow:0 24px 48px -28px #3c2c0a59}.so-article-body{max-width:var(--post-text);margin:64px auto 0;padding:0 var(--post-gutter);box-sizing:content-box;color:#2b2b2b;font-family:Lato,Hiragino Kaku Gothic ProN,Hiragino Sans,Yu Gothic,Meiryo,Noto Sans JP,sans-serif;font-size:17px;line-height:2.05;letter-spacing:.02em;overflow-wrap:anywhere}.so-post--plain .so-article-body{margin-top:56px}.so-article-body>*+*{margin-top:1.4em}.so-article-body h2{position:relative;margin-top:2.8em;padding-bottom:.55em;border-bottom:1px solid var(--post-line, #efe9de);font-family:var(--font-sans);font-size:26px;font-weight:700;line-height:1.5;letter-spacing:.04em}.so-article-body h2:after{content:"";position:absolute;left:0;bottom:-2px;width:64px;height:3px;border-radius:3px;background:var(--color-sun)}.so-article-body h3{margin-top:2.4em;padding-left:.75em;border-left:4px solid var(--color-sun);font-family:var(--font-sans);font-size:21px;font-weight:700;line-height:1.55}.so-article-body h4{position:relative;margin-top:2em;padding-left:1.05em;font-family:var(--font-sans);font-size:18px;font-weight:700;line-height:1.7}.so-article-body h4:before{content:"";position:absolute;left:0;top:.62em;width:.48em;height:.48em;border-radius:50%;background:var(--color-sun)}.so-article-body :is(h2,h3,h4){word-break:auto-phrase}.so-article-body :is(h2,h3,h4)+*{margin-top:1.1em}.so-article-body ul{padding-left:1.3em;list-style:disc}.so-article-body ol{padding-left:1.5em;list-style:decimal}.so-article-body li+li{margin-top:.5em}.so-article-body li>:is(ul,ol){margin-top:.5em}.so-article-body li>p{margin:0}.so-article-body ul ul{list-style:circle}.so-article-body li::marker{color:var(--color-sun);font-weight:700}.so-article-body .contains-task-list{padding-left:0;list-style:none}.so-article-body .task-list-item{list-style:none;padding:.75em 1.1em;border:1px solid var(--post-line, #efe9de);border-radius:14px;background:#fff;line-height:1.7}.so-article-body .task-list-item+.task-list-item{margin-top:.6em}.so-article-body .task-list-item>p{margin:0}.so-article-body .task-list-item input[type=checkbox]{appearance:none;display:inline-block;width:20px;height:20px;margin:0 .75em 0 0;border:2px solid var(--color-sun);border-radius:6px;background:#fff;vertical-align:-4px}.so-article-body .task-list-item input[type=checkbox]:checked{background:var(--color-sun) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 14px no-repeat}.so-article-body a{color:var(--color-sky);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.28em;transition:color .2s,text-decoration-thickness .2s}@media(hover:hover){.so-article-body a:hover{color:var(--color-sky-deep);text-decoration-thickness:2px}}.so-article-body strong{font-weight:700;background:linear-gradient(transparent 64%,#ffd67873 64%)}.so-article-body blockquote{padding:1.1em 1.4em;border-radius:16px;background:#f8f6f1;color:#4d4a45}.so-article-body blockquote>*+*{margin-top:.8em}.so-article-body img{display:block;width:100%;height:auto;border-radius:18px;box-shadow:0 18px 40px -26px #281e0a4d}.so-article-body p:has(>img:only-child){margin-top:2em;margin-bottom:2em}.so-article-body hr{margin:3em 0;border:0;border-top:1px solid var(--post-line, #efe9de)}.so-article-body hr+*{margin-top:0}.so-article-body code{padding:.1em .4em;border-radius:6px;background:#f3f1ec;font-size:.9em}.so-article-body pre{overflow-x:auto;padding:1em 1.2em;border-radius:12px;background:#f6f4ef;line-height:1.7}.so-article-body pre code{padding:0;background:none}.so-article-table{overflow-x:auto;margin-top:1.6em;border:1px solid var(--post-line, #efe9de);border-radius:16px;-webkit-overflow-scrolling:touch}.so-article-table table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.75}.so-article-table table:has(tr>:nth-child(4)){min-width:640px}.so-article-table :is(th,td){padding:14px 18px;border-bottom:1px solid var(--post-line, #efe9de);text-align:left;vertical-align:top}.so-article-table tbody tr:last-child :is(th,td){border-bottom:0}.so-article-table thead th{background:var(--post-cream, #fff8eb);color:var(--color-sun-deep);font-family:var(--font-sans);font-size:14px;font-weight:700;letter-spacing:.06em;white-space:nowrap}.so-article-table tbody th{width:1%;font-weight:700;white-space:nowrap;word-break:auto-phrase}.so-article-table tbody tr:nth-child(2n) :is(th,td){background:#fcfbf8}.so-article-table strong{background:none}.so-article-btns{display:flex;flex-wrap:wrap;gap:14px 16px;margin-top:1.6em}.so-article-body a.so-article-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-width:260px;padding:15px 16px 15px 30px;border:2px solid var(--color-sun);border-radius:999px;background:#fff;color:var(--color-sun-deep);font-family:var(--font-sans);font-size:16px;font-weight:700;line-height:1.4;letter-spacing:.04em;text-decoration:none;box-shadow:0 6px #f3a40038;transition:transform .25s,box-shadow .25s,background-color .25s}.so-article-body a.so-article-btn:after{content:"";flex:none;width:30px;height:30px;border-radius:50%;background:var(--color-sun) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h13M12 6l6 6-6 6'/%3E%3C/svg%3E") center / 14px no-repeat;transition:transform .25s}.so-article-body a.so-article-btn[href^="/contact"]{border-color:transparent;background:linear-gradient(to right,var(--color-sun-soft),var(--color-sun));color:#fff;box-shadow:0 6px 0 var(--color-sun-deep)}.so-article-body a.so-article-btn[href^="/contact"]:after{background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e09300' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h13M12 6l6 6-6 6'/%3E%3C/svg%3E")}@media(hover:hover){.so-article-body a.so-article-btn:hover{transform:translateY(-2px);box-shadow:0 8px #f3a40047;background-color:#fffaf0;color:var(--color-sun-deep);text-decoration:none}.so-article-body a.so-article-btn[href^="/contact"]:hover{box-shadow:0 8px 0 var(--color-sun-deep);color:#fff}.so-article-body a.so-article-btn:hover:after{transform:translate(3px)}}.so-article-body a.so-article-btn:active{transform:translateY(3px);box-shadow:0 3px #f3a40038}.so-article-body a.so-article-btn[href^="/contact"]:active{box-shadow:0 3px 0 var(--color-sun-deep)}.so-article-body a.so-article-btn:focus-visible{outline:3px solid var(--color-sky);outline-offset:4px}.so-post__foot{max-width:var(--post-text);margin:80px auto 0;padding:40px var(--post-gutter) 0;box-sizing:content-box}.so-post__foot{border-top:0}.so-post__back{display:inline-flex;align-items:center;gap:10px;padding:14px 28px 14px 22px;border:1.5px solid var(--color-sun);border-radius:999px;color:var(--color-sun-deep);font-size:15px;font-weight:700;text-decoration:none;transition:background-color .25s,color .25s}.so-post__back svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}@media(hover:hover){.so-post__back:hover{background:var(--color-sun);color:#fff}.so-post__back:hover svg{transform:translate(-3px)}}.so-post__back:focus-visible{outline:3px solid var(--color-sky);outline-offset:3px}@media(max-width:840px){.so-post__head{padding-top:132px}.so-post--cover .so-post__head{padding-bottom:140px}.so-post__cover{margin-top:-100px}}@media(max-width:540px){.so-post{--post-gutter: 20px;padding-bottom:88px}.so-post__head{padding-top:104px;padding-bottom:44px}.so-post--cover .so-post__head{padding-bottom:96px}.so-post__cover{margin-top:-64px}.so-post__cover img{border-radius:16px}.so-post__meta{margin-top:16px}.so-post__title{margin-top:12px}.so-article-body{margin-top:40px;font-size:16px;line-height:2}.so-article-body h2{font-size:21px}.so-article-body h3{font-size:18px}.so-article-body img{border-radius:14px}.so-post__foot{margin-top:56px;padding-top:24px}.so-article-btns{flex-direction:column}.so-article-table table{font-size:14px}.so-article-table :is(th,td){padding:12px 14px}.so-article-table tbody th{white-space:normal;min-width:6.5em}.so-article-body a.so-article-btn{width:100%;min-width:0}}@media(prefers-reduced-motion:reduce){.so-post__back,.so-post__back svg,.so-article-body a,.so-article-body a.so-article-btn:after{transition:none}}
