/* エンリンク ブログ専用。既存の固定ページ・営業ページには影響させない。 */
.enl-blog-main{background:linear-gradient(180deg,#f8fbff 0,#fff 300px);padding-top:22px}
.enl-blog-main>.enl-container{max-width:1210px}
.enl-blog-breadcrumb{font-size:12px;color:#6b7b8e;display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:9px 0 28px}
.enl-blog-breadcrumb a{color:#52667c;text-decoration:none}
.enl-blog-breadcrumb a:hover{color:var(--enl-blue);text-decoration:underline}
.enl-blog-breadcrumb span[aria-current]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:65ch}
.enl-blog-archive-header{padding:38px 42px 42px;margin:0 0 24px;border:1px solid #e6edf5;border-radius:18px;background:linear-gradient(110deg,#fff 0%,#eef6ff 100%);}
.enl-blog-archive-header__kicker{font-size:11px;font-weight:800;color:#1768c4;letter-spacing:.17em}
.enl-blog-archive-header h1{font-size:clamp(28px,3.1vw,38px);font-weight:800;letter-spacing:.02em;color:#1f3857;line-height:1.45;margin:10px 0 13px}
.enl-blog-archive-header p,.enl-blog-archive-header__description{margin:0;color:#556777;font-size:15px;line-height:1.9;max-width:850px}
.enl-blog-archive-header__description p{margin:0}
.enl-blog-categories{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 38px}
.enl-blog-categories a,.enl-blog-categories__current{display:inline-flex;align-items:center;min-height:36px;border:1px solid #dce6f1;background:#fff;border-radius:999px;padding:5px 16px;font-weight:700;font-size:12px;color:#365372;text-decoration:none;transition:background .18s,border-color .18s}
.enl-blog-categories a:hover{background:#e9f4ff;border-color:#aacbea;color:#0d5cae}
.enl-blog-categories__current{background:#1768c4;border-color:#1768c4;color:#fff}
.enl-blog-results-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-bottom:1px solid #e5ebf3;padding:0 0 14px;margin:0 0 22px}
.enl-blog-results-heading h2{margin:0;font-size:20px;font-weight:800;color:#213f60}
.enl-blog-results-heading span{font-size:12px;color:#6c7c8c}
.enl-blog-results-heading__intro p{font-size:12px;line-height:1.7;color:#788898;margin:5px 0 0}
.enl-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 23px}
.enl-blog-card{min-width:0;border:1px solid #e3eaf2;border-radius:13px;overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:transform .18s}
.enl-blog-card:hover{transform:translateY(-3px);}
.enl-blog-card__media{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#eaf3fc}
.enl-blog-card__image{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s}
.enl-blog-card:hover .enl-blog-card__image{transform:scale(1.035)}
.enl-blog-card__placeholder{height:100%;width:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#dbeefe,#f6fbff 56%,#b6d7f5);position:relative}
.enl-blog-card__placeholder-mark{color:#2571c1;font-size:23px;font-weight:800;letter-spacing:.07em}
.enl-blog-card__placeholder-graphic{position:absolute;width:80px;height:80px;border:1px solid #ffffff90;border-radius:50%;right:7%;bottom:-30px}
.enl-blog-card__body{padding:21px 21px 23px;display:flex;flex-direction:column;flex:1}
.enl-blog-card__meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 10px;margin-bottom:12px}
.enl-blog-card__category,.enl-blog-article__category{display:inline-flex;background:#eaf3ff;color:#1865b3;border-radius:5px;font-size:11px;font-weight:800;text-decoration:none;padding:3px 9px;line-height:1.7}
.enl-blog-card__category:hover,.enl-blog-article__category:hover{background:#d9edff}
.enl-blog-card__meta time{color:#8795a4;font-size:11px}
.enl-blog-card__title{font-size:17px;line-height:1.65;font-weight:800;margin:0 0 11px;letter-spacing:0;color:#22384e}
.enl-blog-card__title a{color:inherit;text-decoration:none}
.enl-blog-card__title a:hover{color:#1465b8}
.enl-blog-card__excerpt{font-size:13px;line-height:1.8;color:#596979;margin:0 0 20px;flex:1}
.enl-blog-card__read{font-size:12px;font-weight:800;color:#1768c4;text-decoration:none;display:inline-flex;gap:7px;align-items:center}
.enl-blog-card__read:hover{text-decoration:underline}
.enl-blog-empty{border-radius:13px;border:1px dashed #b9cedf;background:#fff;padding:55px 25px;text-align:center;color:#687989}
.enl-blog-empty__title{font-weight:800;color:#294963;font-size:20px;margin:0 0 10px}
.enl-blog-pagination{margin-top:38px;display:flex;justify-content:center}
.enl-blog-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:34px;padding:5px 11px;border-radius:7px;border:1px solid #dae6f1;background:#fff;color:#305372;text-decoration:none;font-weight:700;font-size:13px;margin:0 3px}
.enl-blog-pagination .page-numbers.current,.enl-blog-pagination .page-numbers:hover{background:#1768c4;color:#fff;border-color:#1768c4}
.enl-blog-pagination ul{display:flex;gap:4px;list-style:none;margin:0;padding:0;flex-wrap:wrap;justify-content:center}
.enl-blog-pagination ul li{list-style:none}
.enl-blog-main--single .enl-blog-breadcrumb{padding-bottom:25px}
.enl-blog-layout{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:37px;align-items:start}
.enl-blog-left{min-width:0}
.enl-blog-article{max-width:none;min-width:0;background:#fff;border:1px solid #e5ebf3;border-radius:13px;overflow:hidden}
.enl-blog-article__header{padding:36px 38px 0}
.enl-blog-article__title{font-size:clamp(26px,2.5vw,33px);color:#1f364f;line-height:1.54;margin:15px 0 15px;letter-spacing:.01em;font-weight:800;overflow-wrap:anywhere}
.enl-blog-article__meta{display:flex;gap:15px;flex-wrap:wrap;font-size:12px;color:#738293;margin:0 0 26px}
.enl-blog-article__featured{margin:0 0 5px;overflow:hidden;border-radius:9px;aspect-ratio:16/9;background:#eaf4fd}
.enl-blog-article__featured img{display:block;width:100%;height:100%;object-fit:cover}
.enl-blog-article__content{padding:30px 38px 45px;color:#304155;font-size:15.5px;line-height:2.0;word-wrap:break-word;overflow-wrap:anywhere}
.enl-blog-article__content>*:first-child{margin-top:0}
.enl-blog-article__content p{margin:0 0 22px}
.enl-blog-article__content>p:first-child{font-size:16.5px;font-weight:500;color:#354e68;line-height:1.95;margin-bottom:30px}
.enl-blog-article__content h2{font-size:clamp(21px,2vw,25px);line-height:1.55;font-weight:800;color:#183e65;letter-spacing:.012em;margin:51px 0 16px;padding:10px 0 12px 17px;border-left:4px solid #1873d3;border-bottom:1px solid #e2eaf2;scroll-margin-top:95px}
.enl-blog-article__content h3{font-size:19px;line-height:1.6;color:#244969;font-weight:800;margin:35px 0 13px;scroll-margin-top:95px}
.enl-blog-article__content h2+p,.enl-blog-article__content h3+p{margin:0 0 21px;color:#43586d}
.enl-blog-article__content h2+p{font-size:15.75px}
.enl-blog-article__content strong{color:#203e5c}
.enl-blog-article__content a{color:#125eae;text-decoration:underline;text-underline-offset:3px}
.enl-blog-article__content ul,.enl-blog-article__content ol{margin:0 0 22px;padding-left:1.45em}
.enl-blog-article__content li{padding-left:2px;margin:0 0 8px}
.enl-blog-article__content blockquote{border-left:4px solid #bedbf2;background:#f4f9fe;padding:17px 23px;margin:22px 0;color:#35516b}
.enl-blog-article__content blockquote p:last-child{margin:0}
.enl-blog-article__content table{border-spacing:0;border-collapse:collapse;width:100%;max-width:100%;display:table;table-layout:auto;margin:22px 0 26px;font-size:13.5px;line-height:1.7}
.enl-blog-article__content th,.enl-blog-article__content td{border:1px solid #dfe7ef;padding:12px 14px;vertical-align:top;min-width:95px}
.enl-blog-article__content th{background:#edf5fc;color:#214668;font-weight:800}
.enl-blog-article__content tbody tr:nth-child(even){background:#fbfdff}
.enl-blog-article__content img{max-width:100%;height:auto;border-radius:8px}
.enl-blog-article__content .enl-blog-note{background:#f1f7fe;border-left:4px solid #347bc2;padding:18px 21px;margin:26px 0;border-radius:4px;color:#375675}
.enl-blog-article__content .enl-blog-note p:last-child{margin-bottom:0}
.enl-blog-toc{border:1px solid #d9e6f2;border-radius:11px;background:#f5f9fe;padding:24px 26px;margin:30px 0 36px}
.enl-blog-toc__heading{font-size:17px;color:#203f5e;font-weight:800;margin-bottom:11px}
.enl-blog-toc__list{margin:0!important;padding-left:1.4em!important;font-size:13.5px;line-height:1.75}
.enl-blog-toc__list li{margin:7px 0!important;color:#2571bc}
.enl-blog-toc__list > li{list-style-type:decimal}
.enl-blog-toc__list .enl-blog-toc__children{margin:7px 0 12px!important;padding-left:1.45em!important;list-style-type:circle}
.enl-blog-toc__list .enl-blog-toc__sub{margin-left:0!important;list-style-type:circle}
.enl-blog-toc a{text-decoration:none;color:#27577f}
.enl-blog-toc a:hover{text-decoration:underline}
.enl-blog-article__footer{border-top:1px solid #e9edf3;padding:28px 38px 33px}
.enl-blog-article__cta{padding:28px 30px;border-radius:12px;background:linear-gradient(120deg,#e8f3ff,#f6fbff);border:1px solid #d4e6f9;text-align:center}
.enl-blog-article__cta-eyebrow{font-size:11px;color:#216fb9;font-weight:800;margin:0 0 6px;letter-spacing:.05em}
.enl-blog-article__cta-title{font-size:21px;line-height:1.55;font-weight:800;color:#1c4369;margin:0 0 8px}
.enl-blog-article__cta-body{font-size:13px;color:#546b7d;margin:0 auto 18px;max-width:460px;line-height:1.85}
.enl-blog-article__cta a,.enl-blog-widget__cta-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#1768c4;color:#fff;text-decoration:none;font-size:14px;font-weight:800;border-radius:6px;padding:12px 24px}
.enl-blog-article__cta a:hover,.enl-blog-widget__cta-button:hover{background:#0b559f;color:#fff}
.enl-blog-article__back{margin:24px 0 0;text-align:left;font-size:13px}
.enl-blog-article__back a{color:#466a8c;text-decoration:none}
.enl-blog-article__back a:hover{text-decoration:underline}
.enl-blog-sidebar{min-width:0;align-self:stretch}
.enl-blog-sidebar__sticky{position:static;height:100%}
.enl-blog-widget{background:#fff;border:1px solid #e0e9f3;border-radius:10px;padding:22px;margin:0 0 20px;color:#3a526b}
.enl-blog-widget__title{font-size:15px;font-weight:800;color:#244767;margin:0 0 18px;padding-bottom:12px;border-bottom:1px solid #dfebf4;line-height:1.5}
.enl-blog-widget ul{padding:0;margin:0;list-style:none}
.enl-blog-widget li{list-style:none;margin:0;padding:9px 0;border-bottom:1px solid #edf1f5;font-size:13px;line-height:1.65}
.enl-blog-widget li:last-child{border-bottom:none}
.enl-blog-widget a{color:#3d5b75;text-decoration:none}
.enl-blog-widget a:hover{color:#1268bd;text-decoration:underline}
.enl-blog-sidebar__categories a{display:inline}
.enl-blog-sidebar__recent time{display:block;font-size:11px;color:#91a0ad;margin-top:5px}
.enl-blog-sidebar__empty{color:#788897;font-size:13px;margin:0}
.enl-blog-widget--cta{background:linear-gradient(145deg,#eaf4ff,#fff);border-color:#cfe2f5;text-align:center}
@media(min-width:841px){.enl-blog-sidebar .enl-blog-widget--cta{position:sticky;top:24px}}
.enl-blog-widget__cta-kicker{font-size:12px;color:#1869b9;font-weight:800;margin:0 0 8px}
.enl-blog-widget__cta-heading{font-size:18px;line-height:1.55;font-weight:800;margin:0 0 12px;color:#20466c}
.enl-blog-widget__cta-copy{font-size:13px;line-height:1.8;margin:0 0 19px;color:#5a7085}
.enl-blog-cta-logo{display:flex;align-items:center;justify-content:center;margin:12px 0 14px;text-align:center}
.enl-blog-cta-logo .enl-brand__image{display:block;width:190px;max-width:100%;max-height:none;height:auto;margin:0 auto}
.enl-blog-widget--cta .enl-blog-cta-logo .enl-brand__image{width:155px}
.enl-blog-widget--cta .enl-blog-widget__cta-button{color:#fff;width:100%;padding:11px 8px}
.enl-blog-widget--cta .enl-blog-widget__cta-detail{display:inline-block;font-weight:700;font-size:12px;margin:13px 0 0;color:#2469ad}
@media(max-width:1040px){.enl-blog-layout{grid-template-columns:minmax(0,1fr) 250px;gap:24px}.enl-blog-article__header{padding-inline:28px}.enl-blog-article__content{padding-inline:28px}.enl-blog-article__footer{padding-inline:28px}.enl-blog-grid{gap:18px}.enl-blog-card__body{padding:17px}}
@media(max-width:840px){.enl-blog-layout{grid-template-columns:minmax(0,1fr)}.enl-blog-sidebar__sticky{position:static}.enl-blog-sidebar{display:block}.enl-blog-sidebar__sticky{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.enl-blog-widget{margin:0}.enl-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}}
@media(max-width:600px){.enl-blog-main{padding-top:8px}.enl-blog-breadcrumb{padding-bottom:18px}.enl-blog-archive-header{padding:29px 22px 30px;border-radius:12px}.enl-blog-archive-header h1{font-size:25px}.enl-blog-archive-header p{font-size:14px}.enl-blog-categories{margin-bottom:27px;gap:7px}.enl-blog-categories a,.enl-blog-categories__current{font-size:11px;padding-inline:12px}.enl-blog-grid{grid-template-columns:minmax(0,1fr);gap:19px}.enl-blog-card__body{padding:20px}.enl-blog-card__title{font-size:17px}.enl-blog-article{border-radius:10px}.enl-blog-article__header{padding:26px 19px 0}.enl-blog-article__title{font-size:24px}.enl-blog-article__content{padding:26px 19px 34px;font-size:15px;line-height:1.93}.enl-blog-article__content h2{font-size:21px;margin-top:36px}.enl-blog-article__content h3{font-size:18px;margin-top:28px}.enl-blog-toc{padding:18px 17px;margin-bottom:31px}.enl-blog-article__footer{padding:22px 18px}.enl-blog-article__cta{padding:23px 17px}.enl-blog-article__cta-title{font-size:19px}.enl-blog-sidebar__sticky{display:block}.enl-blog-widget{margin-bottom:17px}}
@media(prefers-reduced-motion:reduce){.enl-blog-card,.enl-blog-card__image{transition:none}}

/* H2節の本文内ベクター図解。本文幅に合わせて表示し、スマホは横スクロール可能。 */
.enl-blog-article__content .enl-blog-diagram{margin:27px 0 32px;padding:0;max-width:100%;min-width:0}
.enl-blog-diagram__viewport{border:1px solid #dbe8f5;border-radius:13px;background:#f6faff;overflow:hidden;}
.enl-blog-diagram__viewport svg,.enl-blog-diagram__viewport img{display:block;width:100%;height:auto;max-width:100%}
.enl-blog-article__content .enl-blog-diagram figcaption{font-size:12px;line-height:1.75;color:#6c7f92;margin:10px 3px 0}
@media(max-width:600px){.enl-blog-diagram__viewport{overflow-x:auto;-webkit-overflow-scrolling:touch}.enl-blog-diagram__viewport svg,.enl-blog-diagram__viewport img{width:710px;min-width:710px;max-width:none;height:auto}.enl-blog-article__content .enl-blog-diagram{margin:23px 0 28px}.enl-blog-diagram__viewport{scrollbar-width:thin}}

/* 著作者情報：記事末尾のCTAの下だけに表示する。 */
.enl-blog-author{display:grid;grid-template-columns:82px minmax(0,1fr);gap:21px;align-items:start;margin:25px 0 0;padding:25px 26px;border:1px solid #dfe9f4;border-radius:12px;background:#fff;text-align:left}
.enl-blog-author__avatar{width:82px;height:82px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid #e2ecf5;border-radius:15px;background:#fff}
.enl-blog-author__image{display:block;width:66px;height:66px;max-width:100%;object-fit:contain}
.enl-blog-author__detail{min-width:0}
.enl-blog-author__eyebrow{margin:0 0 4px;color:#4776a5;font-size:11px;font-weight:800;letter-spacing:.035em}
.enl-blog-author__name{margin:0 0 3px;color:#1f4164;font-size:19px;font-weight:800;line-height:1.45}
.enl-blog-author__operator{margin:0 0 13px;color:#61738a;font-size:12px;line-height:1.6}
.enl-blog-author__operator a{color:#386994;text-decoration:underline;text-underline-offset:2px}
.enl-blog-author__description{margin:0 0 14px;color:#4f6277;font-size:13px;line-height:1.9}
.enl-blog-author__links{display:flex;flex-wrap:wrap;gap:9px 20px}
.enl-blog-author__links a{color:#1768c4;text-decoration:none;font-size:12px;font-weight:800;line-height:1.7}
.enl-blog-author__links a:hover{text-decoration:underline}
.enl-blog-author__links a::after{content:" →";font-weight:700}
@media(max-width:600px){.enl-blog-author{grid-template-columns:62px minmax(0,1fr);gap:13px;padding:18px 15px;margin-top:20px}.enl-blog-author__avatar{width:62px;height:62px;border-radius:12px}.enl-blog-author__image{width:50px;height:50px}.enl-blog-author__name{font-size:17px}.enl-blog-author__description{font-size:12px;line-height:1.85}}

/* 著作者情報の直下に表示する関連記事。既存カードを再利用。 */
.enl-blog-related{margin-top:33px}
.enl-blog-related>h2{margin:0 0 7px;color:#1f4164;font-size:20px;font-weight:800;line-height:1.5}
.enl-blog-related__lead{margin:0 0 19px;color:#61738a;font-size:13px;line-height:1.8}
.enl-blog-related .enl-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
@media(max-width:600px){.enl-blog-related{margin-top:27px}.enl-blog-related .enl-blog-grid{grid-template-columns:minmax(0,1fr)}}

/* 表はPCで記事幅いっぱいに表示。スマートフォンのみ横スクロール。 */
@media(max-width:600px){.enl-blog-article__content table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}}