/* NDS Tajima 1.0.0 — common tokens and existing content adapters */
:root{--ndstj-navy:#132c4e;--ndstj-gold:#bfa36a;--ndstj-ink:#333;--ndstj-serif:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;--ndstj-body:.85rem;--ndstj-heading:.95rem;--ndstj-line:#e9e7e2;--ndstj-header-height:88px}
body.ndstj-core{font-family:var(--ndstj-serif);color:var(--ndstj-ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body.ndstj-core .entry-content{font-family:var(--ndstj-serif);font-size:var(--ndstj-body);line-height:2.2}
body.ndstj-core .entry-content>.wp-block-heading{font-size:var(--ndstj-heading);font-weight:400;letter-spacing:.12em}
body.ndstj-core.page .site-body{padding-top:0;padding-bottom:0}
body.ndstj-core.page .main-section,body.ndstj-core.page .mainSection{margin-bottom:0}
body.ndstj-hide-page-header .page-header,body.ndstj-hide-page-header .vk_pageHeader,body.ndstj-hide-page-header .page-header-container{display:none!important}
body.ndstj-hide-post-meta .entry-meta,body.ndstj-hide-post-meta .post-meta,body.ndstj-hide-post-meta .entry-author,body.ndstj-hide-post-meta .post-author{display:none!important}
body.ndstj-hide-post-nav .section-postNextPrev,body.ndstj-hide-post-nav .postNextPrev,body.ndstj-hide-post-nav .card-intext{display:none!important}
body.ndstj-core :where(.ndstj-shell,.ndstj-nav,.ndstj-articles,.tj-form-container) :focus-visible{outline:2px solid var(--ndstj-gold);outline-offset:5px}
body.ndstj-core :where(.entry-content [id]){scroll-margin-top:calc(var(--ndstj-header-height) + 32px)}
.ndstj-skip{position:fixed;left:16px;top:-100px;z-index:100100;background:#fff;color:#132c4e;padding:12px 20px;font-size:.85rem}
.ndstj-skip:focus{top:12px}
body.admin-bar .ndstj-skip:focus{top:44px}

/* 既存の最新記事ショートコードを維持 */
.ndstj-articles{width:100%;max-width:1000px;margin:0 auto}
.ndstj-articles .ndstj-article{display:grid;grid-template-columns:140px minmax(0,1fr) 24px;align-items:center;gap:20px;padding:24px 0;border-bottom:1px solid #e9e7e2;color:#333;text-decoration:none;transition:border-color .25s ease}
.ndstj-articles .ndstj-article:first-child{border-top:1px solid #e9e7e2}
.ndstj-articles .ndstj-article::before,.ndstj-articles .ndstj-article::after{content:none!important}
.ndstj-articles .tajima-article-cat{color:#927a4d;font-size:.68rem;letter-spacing:.08em}
.ndstj-articles .tajima-article-title{margin:0;padding:0;background:none;border:0;box-shadow:none;font-size:.85rem;line-height:2;font-weight:400;color:inherit}
.ndstj-articles .tajima-article-title::before,.ndstj-articles .tajima-article-title::after{content:none}
.ndstj-article-arrow{color:#bfa36a;text-align:right;transition:transform .25s ease}
@media(hover:hover){.ndstj-article:hover{border-color:#bfa36a}.ndstj-article:hover .ndstj-article-arrow{transform:translate(3px,-3px)}}

/* Contact Form 7：既存クラス内だけを装飾。チェックボックスを操作可能に維持 */
.tj-form-container{max-width:800px;margin:0 auto;font-family:var(--ndstj-serif);font-size:.85rem}
.tj-form-container .tj-form-row{margin-bottom:36px}
.tj-form-container .tj-form-row label{display:block;font-size:.85rem;font-weight:400;margin-bottom:14px;letter-spacing:.08em}
.tj-form-container .required{display:inline-block;margin-left:10px;padding:1px 7px;background:#bfa36a;color:#fff;font-size:.62rem;vertical-align:middle}
.tj-form-container :is(input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],input[type=date],select,textarea){width:100%;max-width:100%;min-height:48px;padding:12px 8px;border:0;border-bottom:1px solid #d8d5cf;border-radius:0;background:transparent;color:#333;font-family:inherit;font-size:1rem;line-height:1.7;transition:border-color .25s ease}
.tj-form-container textarea{min-height:150px;resize:vertical}
.tj-form-container :is(input,select,textarea):focus-visible{outline:2px solid #bfa36a;outline-offset:4px;border-bottom-color:#bfa36a}
.tj-form-container .wpcf7-checkbox{display:flex;flex-wrap:wrap;gap:10px}
.tj-form-container .wpcf7-checkbox .wpcf7-list-item{margin:0}
.tj-form-container .wpcf7-checkbox label{display:flex;align-items:center;gap:10px;min-height:46px;margin:0;padding:10px 16px;border:1px solid #e5e1d9;background:#fafaf8;font-size:.8rem;cursor:pointer}
.tj-form-container .wpcf7-checkbox input{appearance:auto;width:16px;height:16px;margin:0;flex:0 0 16px;accent-color:#bfa36a}
.tj-form-container .wpcf7-checkbox label:has(input:checked){border-color:#bfa36a;background:#f8f5ee}
.tj-form-container .wpcf7-checkbox label:has(input:focus-visible){outline:2px solid #bfa36a;outline-offset:3px}
.tj-form-container .acceptance-row{text-align:center;margin:48px 0 28px}
.tj-form-container .acceptance-row label{display:inline-flex;align-items:flex-start;gap:10px;font-size:.8rem;color:#666;cursor:pointer;text-align:left}
.tj-form-container .acceptance-row input[type=checkbox]{width:18px;height:18px;margin-top:5px;accent-color:#bfa36a;flex:0 0 18px}
.tj-form-container .privacy-link{color:#927a4d;text-decoration:underline;text-underline-offset:4px}
.tj-form-container .tj-form-submit{text-align:center;margin-top:20px}
.tj-form-container .wpcf7-submit{display:inline-block;max-width:100%;width:300px;min-height:54px;padding:16px 24px;border:1px solid #bfa36a;border-radius:0;background:#bfa36a;color:#fff;font-family:inherit;font-size:.85rem;letter-spacing:.15em;cursor:pointer;transition:background .25s ease}
.tj-form-container .wpcf7-submit:disabled{background:#e5e3df;border-color:#e5e3df;color:#777;cursor:not-allowed}
.tj-form-container .wpcf7-submit:not(:disabled):hover{background:#132c4e;border-color:#132c4e}
.tj-form-container .wpcf7-not-valid-tip{font-size:.75rem;margin-top:8px}
@media(max-width:767px){:root{--ndstj-header-height:72px}.ndstj-articles .ndstj-article{grid-template-columns:minmax(0,1fr) 20px;gap:8px 16px;padding:20px 0}.ndstj-articles .tajima-article-cat{grid-column:1}.ndstj-articles .tajima-article-title{grid-column:1}.ndstj-article-arrow{grid-column:2;grid-row:1/3}.tj-form-container .wpcf7-checkbox{flex-direction:column}.tj-form-container .wpcf7-submit{width:100%}}
@media(prefers-reduced-motion:reduce){.ndstj-articles *,.tj-form-container *{transition:none!important}}
