/*
Theme Name: NARASUKE Lightning Child
Theme URI: https://example.com/
Description: NARASUKEブランドサイト専用のLightning子テーマ
Author: NARASUKE
Version: 0.3.27
Template: lightning
Text Domain: narasuke
*/

:root{--ns-green:#25483a;--ns-accent:#a9785d;--ns-ink:#242321;--ns-white:#fff;--ns-paper:#fbfcf8;--ns-mist:#f0f4f0;--ns-blue:#dce8ea;--ns-line:#d7ded9;--ns-muted:#647169;--ns-serif:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;--ns-sans:"Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif}
html{scroll-behavior:smooth}.ns-site{overflow:hidden;background:var(--ns-paper);color:var(--ns-ink);font-family:var(--ns-sans);font-size:16px;line-height:1.95}.ns-site *{box-sizing:border-box}.ns-site img{display:block;max-width:100%;height:auto}.ns-site a{color:inherit;text-decoration:none}.ns-container{width:min(1180px,84%);margin-inline:auto}.ns-narrow{width:min(760px,84%);margin-inline:auto}.ns-grain{position:relative;isolation:isolate}.ns-grain:after{content:"";position:absolute;inset:0;z-index:-1;opacity:.19;background-image:radial-gradient(rgba(37,72,58,.14) .45px,transparent .55px),radial-gradient(rgba(36,35,33,.09) .4px,transparent .52px);background-position:0 0,3px 4px;background-size:6px 6px,7px 7px;pointer-events:none}.ns-site h1,.ns-site h2,.ns-site h3{margin:0;font-family:var(--ns-serif);font-weight:500;letter-spacing:.04em;word-break:keep-all;overflow-wrap:anywhere}.ns-site h1{font-size:clamp(2rem,4.4vw,3.55rem);line-height:1.55}.ns-site h2{font-size:clamp(1.55rem,3vw,2.45rem);line-height:1.65}.home .ns-site h2{border-top-color:var(--ns-accent)!important}.ns-site h3{font-size:1.18rem;line-height:1.7}.ns-site p{margin:1.25rem 0 0;color:var(--ns-muted)}.ns-eyebrow{margin-bottom:1.35rem;color:var(--ns-green);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}.ns-dark,.ns-dark h1,.ns-dark h2,.ns-dark h3,.ns-dark p,.ns-dark .ns-eyebrow,.ns-dark a{color:#fff}.ns-button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:.8rem 1.5rem;border:1px solid var(--ns-green);color:var(--ns-green);font-size:.88rem;transition:.25s}.ns-button:hover{background:var(--ns-green);color:#fff}.ns-dark .ns-button{border-color:rgba(255,255,255,.85);color:#fff}.ns-dark .ns-button:hover,.ns-dark .ns-button--primary{background:#fff;color:var(--ns-green)}.ns-link{display:inline-block;margin-top:1.5rem;padding-bottom:.3rem;border-bottom:1px solid currentColor;color:var(--ns-green);font-size:.88rem}
.ns-header{position:relative;z-index:20;display:flex;min-height:76px;align-items:center;justify-content:space-between;padding:0 5.5%;background:rgba(251,252,248,.96);border-bottom:1px solid rgba(37,72,58,.12)}.ns-logo img{width:142px}.ns-menu{display:flex;gap:2rem;align-items:center;margin:0;padding:0;list-style:none}.ns-menu a{font-size:1.05rem;letter-spacing:.06em}.ns-menu-toggle{display:none;border:0;background:none;color:var(--ns-ink);font:inherit;font-size:.8rem}.ns-footer{padding:2.5rem 6%;background:var(--ns-green);color:#fff}.ns-footer__inner{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}.ns-footer img{width:135px;filter:brightness(0) invert(1)}.ns-footer p,.ns-footer a{color:#fff;font-size:.78rem}.ns-footer__links{display:flex;flex-wrap:wrap;gap:1.4rem}.ns-footer__copy{margin-top:2rem!important;font-size:.68rem!important;opacity:.8}
.ns-hero{display:grid;min-height:680px;grid-template-columns:.88fr 1.12fr;background:var(--ns-paper)}.ns-hero__copy{display:flex;flex-direction:column;justify-content:center;padding:7rem 12%}.ns-hero__copy p{max-width:34rem}.ns-hero__media{min-height:500px;background:center/cover no-repeat;filter:saturate(.72) contrast(.9) brightness(1.05)}.ns-cycle{padding:6.5rem 0;background:#fff}.ns-cycle__inner{width:min(900px,84%);margin-inline:auto}.ns-cycle h2,.ns-share h2{padding:1.45rem 0 1.25rem;border-right:0;border-left:0;background:none;box-shadow:none}.ns-cycle h2{border-top:1px solid var(--ns-accent);border-bottom:1px solid rgba(169,120,93,.22);text-align:center}.ns-cycle__body{width:min(780px,100%);margin:2.5rem auto 0;text-align:left}.ns-cycle__body p{margin-top:0}.ns-cycle__body p+p{margin-top:1.65rem}.ns-share h2{border-top:1px solid var(--ns-accent);border-bottom:1px solid rgba(255,255,255,.16)}.ns-cycle h2:before,.ns-cycle h2:after,.ns-share h2:before,.ns-share h2:after{background-color:currentColor}.ns-split{display:grid;grid-template-columns:1fr 1fr;align-items:center}.ns-split__media{min-height:500px;background:center/cover no-repeat;filter:saturate(.72) contrast(.9) brightness(1.04)}.ns-split__copy{padding:6rem 13%}.ns-split__copy h2,.ns-steps h2,.ns-products h2{border-top-color:var(--ns-accent)}.ns-split--reverse .ns-split__media{order:2}.ns-steps{padding:6rem 0;background:var(--ns-mist)}.ns-step-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;margin-top:3rem;background:var(--ns-line)}.ns-step{min-height:230px;padding:2rem 1.4rem;background:var(--ns-paper)}.ns-step span{display:block;margin-bottom:1.5rem;color:#87948c;font-size:.7rem;letter-spacing:.14em}.ns-step p{font-size:.88rem;line-height:1.8}.ns-products{padding:6rem 0;background:#fff}.ns-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}.ns-product-grid,.ns-story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;margin-top:3rem}.ns-card{background:var(--ns-mist)}.ns-card__media{aspect-ratio:4/3;overflow:hidden;background:#e5ebe6}.ns-card__media img{width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(.94)}.ns-card__body{padding:1.7rem}.ns-card__meta{margin-bottom:.8rem;color:#748078;font-size:.7rem;letter-spacing:.08em}.ns-card p{font-size:.88rem;line-height:1.8}.ns-share{padding:7rem 0 4rem;background:var(--ns-green);text-align:center}.ns-share p{max-width:680px;margin:1.4rem auto 0}.ns-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.9rem;margin-top:2.2rem}.ns-actions:empty{display:none}
.post-type-archive-narasuke_product .ns-card,.post-type-archive-narasuke_product .ns-card>a,.post-type-archive-narasuke_product .ns-card__media,.post-type-archive-narasuke_product .ns-card__body,.tax-narasuke_product_category .ns-card,.tax-narasuke_product_category .ns-card>a,.tax-narasuke_product_category .ns-card__media,.tax-narasuke_product_category .ns-card__body{box-sizing:border-box;width:100%}.post-type-archive-narasuke_product .ns-card,.tax-narasuke_product_category .ns-card{overflow:hidden}.post-type-archive-narasuke_product .ns-card>a,.tax-narasuke_product_category .ns-card>a{display:block}.post-type-archive-narasuke_product .ns-card__media,.tax-narasuke_product_category .ns-card__media{display:flex;align-items:center;justify-content:center;padding:1rem;background:#fff}.post-type-archive-narasuke_product .ns-card__media img,.tax-narasuke_product_category .ns-card__media img{display:block!important;width:100%!important;max-width:100%!important;height:100%!important;margin:0!important;padding:0!important;object-fit:contain!important;object-position:center!important}
.post-type-archive-narasuke_product .ns-card__media,.tax-narasuke_product_category .ns-card__media{aspect-ratio:auto!important;padding:0!important}.post-type-archive-narasuke_product .ns-card__media img,.tax-narasuke_product_category .ns-card__media img{height:auto!important;aspect-ratio:auto!important}
.ns-page-hero{padding:7rem 0;background:var(--ns-mist)}.ns-page-hero p{max-width:650px}.ns-content{padding:5.5rem 0;background:#fff}.ns-entry-content>*{max-width:760px;margin-right:auto;margin-left:auto}.ns-entry-content>.alignwide{max-width:1080px}.ns-entry-content>.alignfull{max-width:none}.ns-entry-content img,.ns-entry-content video{margin-top:2rem}.ns-entry-content h2{margin-top:4rem}.ns-entry-content h3{margin-top:2.5rem}.ns-entry-content ul{max-width:760px;margin:1.5rem auto;line-height:2}.ns-archive{padding:5.5rem 0;background:#fff}.ns-single-hero{padding:5.5rem 0 3rem;background:var(--ns-mist)}.ns-single-hero__meta{margin-bottom:1rem;color:#738078;font-size:.76rem}.ns-single-image{display:block;width:auto;max-width:90%;height:auto;max-height:none;margin:0 auto;object-fit:contain}.ns-product-image{max-width:min(520px,80vw);max-height:min(760px,75vh);margin:3rem auto}.ns-product-info{display:grid;grid-template-columns:220px 1fr;border-top:1px solid var(--ns-line)}.ns-product-info dt,.ns-product-info dd{margin:0;padding:1rem 0;border-bottom:1px solid var(--ns-line)}.ns-product-info dt{color:#66736c}.ns-empty{padding:3rem;background:var(--ns-mist);text-align:center}.ns-product-category{display:inline-block;margin-bottom:1rem;padding:.35rem .65rem;background:#e2e9e4;color:var(--ns-green);font-size:.72rem;letter-spacing:.08em}
@media(max-width:900px){.ns-step-grid{grid-template-columns:repeat(2,1fr)}.ns-product-grid,.ns-story-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.ns-header{min-height:64px;padding:0 6%}.ns-logo img{width:116px}.ns-menu-toggle{display:block}.ns-nav{display:none;position:absolute;top:64px;left:0;width:100%;padding:1.5rem 6%;background:var(--ns-paper);border-bottom:1px solid var(--ns-line)}.ns-nav.is-open{display:block}.ns-menu{display:grid;gap:1rem}.ns-menu a{font-size:1rem}.ns-container,.ns-narrow{width:84%}.ns-hero{min-height:0;grid-template-columns:1fr}.ns-hero__media{order:1;min-height:330px}.ns-hero__copy{order:2;padding:4rem 8%}.ns-cycle{padding:4.5rem 0}.ns-split{grid-template-columns:1fr}.ns-split__media,.ns-split--reverse .ns-split__media{order:1;min-height:285px}.ns-split__copy{order:2;padding:4rem 8%}.ns-steps,.ns-products,.ns-archive,.ns-content{padding:4.5rem 0}.ns-step-grid,.ns-product-grid,.ns-story-grid{grid-template-columns:1fr}.ns-step{min-height:0}.ns-section-head{display:block}.ns-section-head p{margin-top:1rem}.ns-share{padding:5rem 8% 3.5rem}.ns-button{width:100%}.ns-page-hero{padding:4.5rem 0}.ns-footer__inner{align-items:flex-start;flex-direction:column}.ns-product-info{grid-template-columns:1fr}.ns-product-info dt{padding-bottom:0;border-bottom:0}}

/* Contact Form 7 */
.wpcf7-form label{display:block;margin:0 0 1.5rem;font-weight:500}.wpcf7-form input[type="text"],.wpcf7-form input[type="email"],.wpcf7-form input[type="tel"],.wpcf7-form select,.wpcf7-form textarea{width:100%;margin-top:.55rem;padding:.85rem 1rem;border:1px solid var(--ns-line);border-radius:0;background:#fff;color:var(--ns-black);font:inherit}.wpcf7-form textarea{min-height:220px;resize:vertical}.wpcf7-form input:focus,.wpcf7-form select:focus,.wpcf7-form textarea:focus{outline:2px solid rgba(37,72,58,.25);border-color:var(--ns-green)}.wpcf7-form input[type="submit"]{padding:.9rem 2rem;border:1px solid var(--ns-green);background:var(--ns-green);color:#fff;letter-spacing:.08em;cursor:pointer}.ns-char-count{margin:-1rem 0 1.5rem;color:#8a5b4c;font-size:.82rem;text-align:right}.ns-char-count.is-valid{color:var(--ns-green)}.ns-confirm-dialog{width:min(680px,90vw);max-height:85vh;padding:0;border:0;background:#fff;color:var(--ns-black);box-shadow:0 20px 70px rgba(0,0,0,.24)}.ns-confirm-dialog::backdrop{background:rgba(36,35,33,.62)}.ns-confirm-dialog__inner{padding:2rem}.ns-confirm-dialog h2{margin:0 0 .75rem}.ns-confirm-list{margin:1.5rem 0;border-top:1px solid var(--ns-line)}.ns-confirm-list div{padding:1rem 0;border-bottom:1px solid var(--ns-line)}.ns-confirm-list dt{margin-bottom:.3rem;color:#66736c;font-size:.8rem}.ns-confirm-list dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.ns-confirm-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.75rem}.ns-confirm-actions button{padding:.8rem 1.2rem;border:1px solid var(--ns-green);background:#fff;color:var(--ns-green);cursor:pointer}.ns-confirm-actions .ns-confirm-send{background:var(--ns-green);color:#fff}@media(max-width:680px){.ns-confirm-dialog__inner{padding:1.4rem}.ns-confirm-actions{display:grid}.ns-confirm-actions button{width:100%}}
.ns-success-dialog{width:min(760px,92vw);max-height:90vh;padding:0;border:0;background:var(--ns-green);color:#fff;box-shadow:0 24px 90px rgba(0,0,0,.34)}.ns-success-dialog::backdrop{background:rgba(36,35,33,.78)}.ns-success-dialog__inner{padding:clamp(2.2rem,7vw,4.8rem);text-align:center}.ns-success-dialog .ns-eyebrow,.ns-success-dialog h2,.ns-success-dialog p{color:#fff}.ns-success-dialog h2{margin:0;font-family:var(--ns-serif);font-size:clamp(1.5rem,4vw,2.35rem);font-weight:500;line-height:1.6}.ns-success-dialog p{max-width:590px;margin:1.4rem auto 0;line-height:2}.ns-success-dialog__note{font-size:.84rem;opacity:.82}.ns-success-close{min-width:150px;margin-top:2rem;padding:.85rem 1.5rem;border:1px solid rgba(255,255,255,.9);background:transparent;color:#fff;font:inherit;cursor:pointer}.ns-success-close:hover,.ns-success-close:focus{background:#fff;color:var(--ns-green)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ns-button{transition:none}}

/* Privacy policy and operator information */
:is(.privacy-policy,.narasuke-company-page) .ns-page-hero .ns-container{width:min(1080px,89%);margin-left:5.5%;margin-right:auto}
:is(.privacy-policy,.narasuke-company-page) .ns-page-hero h1{font-size:clamp(1.75rem,3vw,2.65rem);line-height:1.45;text-align:left}
:is(.privacy-policy,.narasuke-company-page) .ns-entry-content{width:min(1080px,89%);margin-left:5.5%;margin-right:auto;font-size:1.0625rem;line-height:2}
:is(.privacy-policy,.narasuke-company-page) .ns-entry-content>*{max-width:none;margin-right:0;margin-left:0;text-align:left}
:is(.privacy-policy,.narasuke-company-page) .ns-entry-content h2{margin-top:3.5rem;border-top-color:#a9785d!important;font-size:clamp(1.35rem,2vw,1.65rem);line-height:1.6}
:is(.privacy-policy,.narasuke-company-page) .ns-entry-content h3{font-size:1.15rem}
:is(.privacy-policy,.narasuke-company-page) .ns-entry-content p,:is(.privacy-policy,.narasuke-company-page) .ns-entry-content li{font-size:1.0625rem;line-height:2}
:is(.privacy-policy,.narasuke-company-page) .ns-entry-content ol,:is(.privacy-policy,.narasuke-company-page) .ns-entry-content ul{max-width:none;margin:1.25rem 0;padding-left:1.6em;text-align:left}
@media(max-width:680px){:is(.privacy-policy,.narasuke-company-page) .ns-page-hero .ns-container,:is(.privacy-policy,.narasuke-company-page) .ns-entry-content{width:88%;margin-right:auto;margin-left:auto}:is(.privacy-policy,.narasuke-company-page) .ns-page-hero h1{font-size:1.75rem}:is(.privacy-policy,.narasuke-company-page) .ns-entry-content,:is(.privacy-policy,.narasuke-company-page) .ns-entry-content p,:is(.privacy-policy,.narasuke-company-page) .ns-entry-content li{font-size:1rem;line-height:1.95}:is(.privacy-policy,.narasuke-company-page) .ns-entry-content h2{margin-top:3rem;font-size:1.35rem}}

/* Contact page title only; existing content spacing stays unchanged. */
.narasuke-contact-page .ns-page-hero h1{font-size:clamp(1.75rem,3vw,2.65rem);line-height:1.45}
@media(max-width:680px){.narasuke-contact-page .ns-page-hero h1{font-size:1.75rem}.narasuke-contact-page .ns-entry-content{width:88%;margin-right:auto;margin-left:auto}}

/* About page */
.ns-about-hero{display:grid;min-height:560px;grid-template-columns:.92fr 1.08fr;background:var(--ns-mist)}
.ns-about-hero__copy{display:flex;flex-direction:column;justify-content:center;padding:7rem 12%}
.ns-about-hero__copy p{max-width:38rem}
.ns-about-hero__media{min-height:440px;background:center/cover no-repeat url('assets/images/about-coast.webp');filter:saturate(.78) contrast(.92) brightness(1.02)}
.ns-about-role{display:grid;grid-template-columns:.82fr 1.18fr;gap:7%;align-items:center;padding:7rem 8%;background:#fff}
.ns-about-role__media{min-height:520px;background:32% center/cover no-repeat url('assets/images/about-tea-picker.webp');filter:saturate(.82) contrast(.96) brightness(1.01)}
.ns-about-role__icons{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}
.ns-about-role__icons div{display:flex;min-height:150px;align-items:center;justify-content:center;flex-direction:column;border:1px solid rgba(37,72,58,.18);background:var(--ns-paper);color:var(--ns-green)}
.ns-about-role__icons .dashicons{width:auto;height:auto;margin-bottom:1rem;font-size:2.25rem}
.ns-about-role__icons small{font-size:.72rem;letter-spacing:.08em}
.ns-about-role__copy h2,.ns-about-values h2,.ns-about-principles h2{padding:1.35rem 0 1.15rem;border-top:1px solid var(--ns-accent);border-bottom:1px solid rgba(169,120,93,.22)}
.ns-about-values{padding:7rem 0;background:var(--ns-mist)}
.ns-about-values__lead{max-width:760px}
.ns-about-value-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;margin-top:3rem;background:var(--ns-line)}
.ns-about-value{min-height:310px;padding:2rem 1.35rem;background:var(--ns-paper)}
.ns-about-value>.dashicons{width:auto;height:auto;margin-bottom:2.4rem;color:var(--ns-accent);font-size:2.3rem}
.ns-about-value>img{width:82px;height:82px;margin:0 0 1.8rem;object-fit:contain}
.ns-about-value p{font-size:.86rem;line-height:1.9}
.ns-about-principles{padding:7rem 0;background:#fff}
.ns-about-principle-list{margin-top:3rem}
.ns-about-principle-list article{display:grid;grid-template-columns:64px 110px 1fr;column-gap:1.5rem;align-items:start;padding:2rem 0;border-bottom:1px solid var(--ns-line)}
.ns-about-principle-list article>span{color:var(--ns-accent);font-family:var(--ns-serif);font-size:1.25rem}
.ns-about-principle-list article>p{margin:0;font-size:.95rem}
.ns-about-promise{position:relative;padding:7rem 0;background:linear-gradient(rgba(25,50,40,.82),rgba(25,50,40,.86)),url('assets/images/about-promise.webp') center/cover no-repeat;text-align:center}
.ns-about-promise h2{padding:1.45rem 0 1.25rem;border-top:1px solid var(--ns-accent);border-bottom:1px solid var(--ns-accent);color:#fff}
.ns-about-promise p{max-width:690px;margin:1.4rem auto 0}
.home .ns-share h2{border-top-color:var(--ns-accent)!important;border-bottom-color:var(--ns-accent)!important}

/* v0.3.7: TOP page — five-part moving accent line */
.ns-step-progress{position:relative;height:2px;margin-bottom:1.35rem;background:repeating-linear-gradient(to right,var(--ns-line) 0,var(--ns-line) calc(20% - 2px),transparent calc(20% - 2px),transparent 20%)}
.ns-step-progress:after{content:"";position:absolute;top:0;bottom:0;left:calc(var(--ns-step) * 20%);width:calc(20% - 2px);background:var(--ns-accent)}
.ns-step h3{padding:0!important;border:0!important;background:none!important}
.ns-step h3:before,.ns-step h3:after{display:none!important}

/* v0.3.7: About page — six shared copper rules */
.ns-about-principle-list{border-top:2px solid var(--ns-accent)}
.ns-about-principle-list article{align-items:center;border-bottom:2px solid var(--ns-accent)}
.ns-about-principle-list article>h3{align-self:center;padding:0!important;border:0!important;background:none!important}
.ns-about-principle-list article>h3:before,.ns-about-principle-list article>h3:after{display:none!important}

/* v0.3.9: Product/TOP share presentation */
.home .ns-share,.single-narasuke_product .ns-share{background:linear-gradient(rgba(25,50,40,.82),rgba(25,50,40,.86)),url('assets/images/about-promise.webp') center/cover no-repeat}
.single-narasuke_product .ns-share h2{border-top-color:var(--ns-accent)!important;border-bottom-color:var(--ns-accent)!important}
.single-narasuke_product .ns-entry-content h2,.single-narasuke_product .ns-content>.ns-narrow>h2{border-color:var(--ns-accent)!important}
.single-narasuke_product .ns-entry-content h2:before,.single-narasuke_product .ns-entry-content h2:after,.single-narasuke_product .ns-content>.ns-narrow>h2:before,.single-narasuke_product .ns-content>.ns-narrow>h2:after{background-color:var(--ns-accent)!important}

/* v0.3.14: Restore the centered v0.3.12 product layout and unify rules. */
.single-narasuke_product .ns-entry-content{width:min(760px,88%);margin-right:auto;margin-left:auto}
.single-narasuke_product .ns-entry-content>*{width:100%;max-width:none;margin-right:0;margin-left:0}
.single-narasuke_product .ns-entry-content h3{border-top:0!important;border-right:0!important;border-left:0!important;border-bottom:1px solid var(--ns-accent)!important;background:none!important;background-image:none!important;box-shadow:none!important}
.single-narasuke_product .ns-entry-content h3:before,.single-narasuke_product .ns-entry-content h3:after{display:none!important;content:none!important;background:none!important;border:0!important;box-shadow:none!important}
.single-narasuke_product .ns-product-info{border-top-color:var(--ns-accent)}
.single-narasuke_product .ns-product-info dt,.single-narasuke_product .ns-product-info dd{border-bottom-color:rgba(169,120,93,.34)}
.single-narasuke_product .ns-product-information-body>h2{border-top-color:var(--ns-accent)!important;border-bottom-color:var(--ns-accent)!important}
.single-narasuke_product .ns-product-information-body>h2:before,.single-narasuke_product .ns-product-information-body>h2:after{background:var(--ns-accent)!important;border-color:var(--ns-accent)!important}
.ns-product-information-layout.has-image{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:clamp(3rem,6vw,7rem);align-items:center}
.ns-product-information-media{display:flex;align-items:center;justify-content:center;min-width:0}
.ns-product-information-image{width:auto;max-width:100%;max-height:620px;margin:0 auto;object-fit:contain}
.ns-product-information-body{min-width:0}
.ns-product-purchase-actions{justify-content:flex-start;margin-top:2.5rem}
.ns-product-purchase-actions .ns-button--primary{background:var(--ns-green);color:#fff}
.ns-product-purchase-actions .ns-button--primary:hover{background:transparent;color:var(--ns-green)}
@media(max-width:900px){.ns-about-value-grid{grid-template-columns:repeat(2,1fr)}.ns-about-role{grid-template-columns:1fr;gap:3.5rem}.ns-about-role__media{min-height:420px}}
@media(max-width:1050px) and (min-width:681px){.ns-menu{gap:1.15rem}.ns-menu a{font-size:.9rem}}
@media(max-width:680px){.ns-about-hero{min-height:0;grid-template-columns:1fr}.ns-about-hero__media{order:1;min-height:300px;background-position:center}.ns-about-hero__copy{order:2;padding:4.5rem 8%}.ns-about-role,.ns-about-values,.ns-about-principles{padding:4.5rem 8%}.ns-about-role__media{min-height:300px;background-position:25% center}.ns-about-values .ns-container,.ns-about-principles .ns-narrow{width:100%}.ns-about-value-grid{grid-template-columns:1fr}.ns-about-value{min-height:0}.ns-about-value>img{width:74px;height:74px}.ns-about-principle-list article{grid-template-columns:44px 82px 1fr;column-gap:.75rem}.ns-about-principle-list article>p{font-size:.88rem}.ns-about-promise{padding:5rem 8%;background-position:center}.ns-about-promise .ns-narrow{width:100%}.single-narasuke_product .ns-single-hero .ns-narrow,.single-narasuke_product .ns-entry-content,.single-narasuke_product .ns-content>.ns-narrow,.single-narasuke_product .ns-share .ns-narrow{width:88%;margin-right:auto;margin-left:auto}.single-narasuke_product .ns-product-information{width:88%;margin-right:auto;margin-left:auto}.single-narasuke_product .ns-entry-content>*{max-width:none;margin-right:0;margin-left:0}.ns-product-information-layout.has-image{grid-template-columns:1fr;gap:3rem}.ns-product-information-image{max-height:480px}.ns-product-purchase-actions{display:grid;justify-content:stretch}}

/* v0.3.22: hierarchical primary navigation */
.ns-menu>li{position:relative;margin:0;padding:0;list-style:none}
.ns-menu .sub-menu{position:absolute;top:100%;left:50%;z-index:30;display:block;min-width:210px;margin:0;padding:.55rem 0;list-style:none;background:rgba(251,252,248,.99);border:1px solid rgba(37,72,58,.14);box-shadow:0 10px 28px rgba(25,50,40,.12);opacity:0;visibility:hidden;transform:translate(-50%,8px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
.ns-menu .sub-menu li{margin:0;padding:0;list-style:none}
.ns-menu .sub-menu a{display:block;padding:.65rem 1rem;white-space:nowrap;font-size:.9rem;letter-spacing:.04em}
.ns-menu .sub-menu a:hover,.ns-menu .sub-menu a:focus{background:var(--ns-mist);color:var(--ns-green)}
.ns-menu>li:hover>.sub-menu,.ns-menu>li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.ns-submenu-toggle{display:none}
@media(max-width:680px){
  .ns-menu>li{width:100%}
  .ns-menu>.menu-item-has-children{display:grid;grid-template-columns:1fr auto;align-items:center}
  .ns-menu>.menu-item-has-children>a{min-width:0}
  .ns-submenu-toggle{display:flex;width:42px;height:42px;align-items:center;justify-content:center;padding:0;border:0;background:transparent;color:var(--ns-green);font:inherit;cursor:pointer}
  .ns-submenu-toggle:before{content:"＋";font-size:1.1rem;line-height:1}
  .ns-submenu-toggle[aria-expanded="true"]:before{content:"－"}
  .ns-menu .sub-menu{position:static;grid-column:1/-1;display:none;min-width:0;margin:.35rem 0 .15rem;padding:.35rem 0 .35rem 1rem;border:0;border-left:1px solid var(--ns-accent);background:transparent;box-shadow:none;opacity:1;visibility:visible;transform:none;transition:none}
  .ns-site .ns-nav .ns-menu .sub-menu.is-open{display:block!important;opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important}
  .ns-site .ns-nav .ns-menu .sub-menu.is-open>li{display:list-item!important;opacity:1!important;visibility:visible!important;transform:none!important}
  .ns-menu .sub-menu a,
  .ns-menu .sub-menu a:link,
  .ns-menu .sub-menu a:visited{display:block!important;padding:.55rem .8rem!important;color:var(--ns-green)!important;-webkit-text-fill-color:var(--ns-green)!important;opacity:1!important;visibility:visible!important;white-space:normal;font-size:.9rem!important;line-height:1.7!important;text-indent:0!important}
  .ns-site .ns-nav .ns-menu .sub-menu a>.ns-submenu-label{display:inline!important;position:static!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;color:#25483a!important;-webkit-text-fill-color:#25483a!important;background:none!important;clip:auto!important;clip-path:none!important;opacity:1!important;visibility:visible!important;white-space:normal!important;font-size:.9rem!important;line-height:1.7!important;text-indent:0!important}
}

/* v0.3.23: NARASUKE origin page */
.ns-origin-hero{display:grid;min-height:560px;grid-template-columns:.88fr 1.12fr;background:var(--ns-paper)}
.ns-origin-hero__copy{display:flex;align-items:center;padding:7rem 12%}
.ns-origin-hero__copy h1{font-size:clamp(2rem,4vw,3.4rem);line-height:1.55}
.ns-origin-hero__media{min-height:500px;background:center/cover no-repeat url('assets/images/origin-sekitei.webp');filter:saturate(.76) contrast(.94) brightness(1.02)}
.ns-origin-story{padding:6.5rem 0 7rem;background:#fff}
.ns-origin-story__inner{width:min(760px,84%);margin-inline:auto}
.ns-origin-story h2{margin:0;padding:1.4rem 0 1.25rem;border-top:1px solid var(--ns-accent);border-bottom:1px solid rgba(169,120,93,.34);font-size:clamp(1.55rem,3vw,2.2rem);text-align:center}
.ns-origin-story h2:before,.ns-origin-story h2:after{display:none!important;content:none!important}
.ns-origin-story__body{margin-top:2.7rem}
.ns-origin-story__body p{margin:0;color:var(--ns-muted);font-size:1rem;line-height:2.05}
.ns-origin-story__body p+p{margin-top:1.85rem}
@media(max-width:680px){
  .ns-origin-hero{min-height:0;grid-template-columns:1fr}
  .ns-origin-hero__media{order:1;min-height:300px}
  .ns-origin-hero__copy{order:2;padding:4rem 8%}
  .ns-origin-hero__copy h1{font-size:2rem}
  .ns-origin-story{padding:4.5rem 0 5rem}
  .ns-origin-story__inner{width:88%}
  .ns-origin-story__body{margin-top:2.2rem}
  .ns-origin-story__body p{font-size:.96rem;line-height:2}
}
