@charset "UTF-8";
:root{font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:#203342;background:#f5f8fa;line-height:1.8}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:#176e9a;text-underline-offset:2px}a:hover{color:#0d4c70}
.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:white;padding:.5rem;z-index:10}
.site-header{background:#fff;border-bottom:1px solid #dbe5ea}.header-inner{max-width:1100px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.2rem}.brand{font-size:1.45rem;font-weight:800;color:#1f5972;text-decoration:none}.tagline{font-size:.78rem;color:#6f7c83;margin-left:.65rem}.menu-toggle{display:none;border:1px solid #b7ccd7;border-radius:.35rem;background:white;padding:.4rem .7rem}.nav{display:flex;gap:1.2rem;flex-wrap:wrap}.nav a{text-decoration:none;font-weight:600;color:#294a5b}
.layout{max-width:1100px;margin:2rem auto;padding:0 1.2rem;display:grid;grid-template-columns:minmax(0,760px) 260px;gap:2rem}.main{min-width:0}.card,.sidebar-box{background:#fff;border:1px solid #e2eaee;border-radius:.6rem;box-shadow:0 2px 8px #163b4c0a}.card{padding:clamp(1.2rem,3vw,2.4rem)}.sidebar-box{padding:1.2rem;margin-bottom:1.2rem}.sidebar-box h2{font-size:1.05rem;margin:.1rem 0 .7rem}.sidebar-box ul{padding-left:1.2rem;margin:0}
h1,h2,h3,h4{line-height:1.45;color:#213c4c;overflow-wrap:anywhere}h1{font-size:clamp(1.55rem,3.5vw,2.15rem);margin:.2rem 0 1rem}h2{font-size:1.4rem;margin:2.3rem 0 1rem;border-bottom:2px solid #d6e7ee;padding-bottom:.3rem}h3{font-size:1.2rem;margin:1.7rem 0 .8rem}h4{font-size:1.05rem}p{margin:1em 0}.meta{color:#687984;font-size:.85rem}.intro{font-size:1.05rem}
img,video,iframe{max-width:100%;height:auto}figure{margin:1.5rem auto;text-align:center}figcaption{color:#687984;font-size:.85rem}iframe{width:100%;min-height:300px;border:0}.entry-content{overflow-wrap:anywhere}.entry-content img{object-fit:contain}.entry-content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.entry-content td,.entry-content th{border:1px solid #d6e1e7;padding:.45rem .65rem;min-width:3rem}.entry-content th{background:#eff5f7}.entry-content blockquote{margin:1.4rem 0;padding:.2rem 1rem;border-left:4px solid #86b1c4;background:#f7fafb}.entry-content pre{overflow-x:auto;background:#eef3f5;padding:1rem}.entry-content .yyi-rinker-contents{display:flex;align-items:center;gap:1rem;border:1px solid #d9e6ec;border-radius:.45rem;padding:.8rem;margin:1rem 0}.entry-content a.blogcard-wrap{display:block;color:inherit;text-decoration:none;margin:1rem 0}.entry-content .blogcard{display:grid;grid-template-columns:160px minmax(0,1fr);align-items:center;gap:1rem;border:1px solid #d9e6ec;border-radius:.45rem;padding:.8rem}.entry-content .blogcard-thumbnail{width:160px;margin:0}.entry-content .blogcard-thumbnail img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.entry-content .blogcard-content{min-width:0}.entry-content .blogcard-title{font-weight:700;color:#176e9a;text-decoration:underline}.entry-content .blogcard-snippet{font-size:.85rem;color:#6d7b83;text-decoration:none;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.entry-content .blogcard-footer{display:none}
.article-list{list-style:none;padding:0}.article-list li{padding:1rem 0;border-bottom:1px solid #e1e9ed}.article-list a{font-weight:700;font-size:1.08rem}.article-list p{margin:.35rem 0;color:#5f707a;font-size:.9rem}.category-list{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0}.category-list a{display:block;border:1px solid #cbdfe8;border-radius:999px;padding:.15rem .7rem;text-decoration:none}.contact-link a{display:inline-block;background:#1b729b;color:white;text-decoration:none;border-radius:.4rem;padding:.65rem 1rem}.search-box{width:100%;padding:.65rem;border:1px solid #acbdc8;border-radius:.4rem;font:inherit}.site-footer{text-align:center;padding:2rem 1rem;color:#687984;font-size:.85rem}.site-footer a{margin:0 .5rem}.back{margin-top:2rem}
@media(max-width:850px){.layout{grid-template-columns:1fr}.sidebar{display:none}.menu-toggle{display:block}.nav{display:none;position:absolute;right:1rem;top:4rem;z-index:5;background:white;border:1px solid #dbe5ea;box-shadow:0 5px 15px #0002;padding:1rem;flex-direction:column}.nav.open{display:flex}.tagline{display:none}}
@media(max-width:600px){.entry-content .blogcard{grid-template-columns:110px minmax(0,1fr);gap:.7rem;padding:.6rem}.entry-content .blogcard-thumbnail{width:110px}.entry-content .blogcard-snippet{-webkit-line-clamp:2}}
