.nk-facility-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}@media (max-width:768px){.nk-facility-grid{grid-template-columns:1fr}}.nk-facility-card{border:2px solid var(--nk-ts-accent-color);border-radius:14px;padding:18px;background:#fff}.nk-facility-card__title{margin-top:0;font-weight:700}

/* ==========================================================================
 * NK Twenty Seventeen Motion Layer v0.2.0
 * Twenty Seventeen のHTMLを改変せず、CSS/JSで上品な動きを追加する。
 * ========================================================================== */
:root{
  --nk-ts17-brand:var(--nk-ts-site-color,#1d4ed8);
  --nk-ts17-accent:var(--nk-ts-accent-color,#f59e0b);
  --nk-ts17-ease:cubic-bezier(.2,.8,.2,1);
  --nk-ts17-luxury:cubic-bezier(.16,1,.3,1);
  --nk-ts17-shadow:0 16px 42px rgba(15,23,42,.10);
  --nk-ts17-glow:rgba(29,78,216,.20);
  --nk-ts17-delay:0s;
}
body.nk-ts17-motion-soft{--nk-ts17-distance:14px;--nk-ts17-duration:.54s;--nk-ts17-scale:.992}
body.nk-ts17-motion-standard{--nk-ts17-distance:22px;--nk-ts17-duration:.72s;--nk-ts17-scale:.986}
body.nk-ts17-motion-rich{--nk-ts17-distance:30px;--nk-ts17-duration:.92s;--nk-ts17-scale:.978}

@keyframes nkTs17HeaderDrop{from{opacity:0;transform:translate3d(0,-14px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes nkTs17FadeUp{from{opacity:0;transform:translate3d(0,var(--nk-ts17-distance),0) scale(var(--nk-ts17-scale));filter:blur(3px)}to{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}}
@keyframes nkTs17Shine{0%{transform:translateX(-160%) skewX(-18deg);opacity:0}18%{opacity:.44}48%{opacity:.24}100%{transform:translateX(230%) skewX(-18deg);opacity:0}}
@keyframes nkTs17HeroBreath{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}

body.nk-ts17-motion-on .site-header,
body.nk-ts17-motion-on .navigation-top,
body.nk-ts17-motion-on .site-content-contain,
body.nk-ts17-motion-on .entry-content a,
body.nk-ts17-motion-on button,
body.nk-ts17-motion-on input[type="submit"]{transition:transform .42s var(--nk-ts17-ease),box-shadow .42s var(--nk-ts17-ease),background-color .28s ease,color .28s ease,filter .42s var(--nk-ts17-ease)}

body.nk-ts17-motion-on .site-branding{animation:nkTs17FadeUp .84s var(--nk-ts17-luxury) both;will-change:transform,opacity}
body.nk-ts17-motion-on .navigation-top{animation:nkTs17HeaderDrop .58s var(--nk-ts17-luxury) both;z-index:50}
body.nk-ts17-motion-on.nk-ts17-header-elegant.nk-ts17-scrolled .navigation-top{box-shadow:0 12px 28px rgba(15,23,42,.12)}
body.nk-ts17-motion-on.nk-ts17-header-glass .navigation-top{background:rgba(255,255,255,.88);backdrop-filter:saturate(1.25) blur(12px);-webkit-backdrop-filter:saturate(1.25) blur(12px)}
body.nk-ts17-motion-on.nk-ts17-header-glass.nk-ts17-scrolled .navigation-top{box-shadow:0 14px 32px rgba(15,23,42,.14)}

body.nk-ts17-motion-on .custom-header-media img{transform-origin:center;will-change:transform}
body.nk-ts17-motion-rich .custom-header-media img{animation:nkTs17HeroBreath 12s ease-in-out infinite}

body.nk-ts17-js .nk-ts17-reveal{opacity:0;transform:translate3d(0,var(--nk-ts17-distance),0) scale(var(--nk-ts17-scale));filter:blur(3px);will-change:opacity,transform,filter}
body.nk-ts17-js .nk-ts17-reveal.is-inview{animation:nkTs17FadeUp var(--nk-ts17-duration) var(--nk-ts17-luxury) both;animation-delay:var(--nk-ts17-delay)}

body.nk-ts17-motion-on .nk-facility-card,
body.nk-ts17-motion-on .entry-content .wp-block-group,
body.nk-ts17-motion-on .entry-content .wp-block-columns,
body.nk-ts17-motion-on .entry-content .wp-block-media-text,
body.nk-ts17-motion-on .entry-content figure,
body.nk-ts17-motion-on .widget{transition:transform .58s var(--nk-ts17-luxury),box-shadow .58s var(--nk-ts17-luxury),border-color .38s ease,filter .38s ease}
body.nk-ts17-motion-on .nk-facility-card:hover,
body.nk-ts17-motion-on .entry-content .wp-block-group:hover,
body.nk-ts17-motion-on .entry-content .wp-block-columns:hover,
body.nk-ts17-motion-on .entry-content .wp-block-media-text:hover,
body.nk-ts17-motion-on .widget:hover{transform:translateY(-2px);box-shadow:var(--nk-ts17-shadow)}

body.nk-ts17-button-shine-on .nk-ts17-action{position:relative;overflow:hidden;transform:translateZ(0)}
body.nk-ts17-button-shine-on .nk-ts17-action:hover{transform:translateY(-2px);filter:saturate(1.03) brightness(1.02);box-shadow:0 14px 34px rgba(15,23,42,.12),0 0 0 7px rgba(29,78,216,0)}
body.nk-ts17-button-shine-on .nk-ts17-action::after{content:"";position:absolute;inset:-35% auto -35% -55%;width:38%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.30),transparent);transform:translateX(-160%) skewX(-18deg);pointer-events:none;opacity:0}
body.nk-ts17-button-shine-on .nk-ts17-action:hover::after{animation:nkTs17Shine 1.25s var(--nk-ts17-luxury) both}

body.nk-ts17-motion-on .main-navigation a{transition:color .25s ease,background-color .25s ease,transform .32s var(--nk-ts17-ease)}
body.nk-ts17-motion-on .main-navigation a:hover{transform:translateY(-1px)}
body.nk-ts17-menu-open .main-navigation ul{animation:nkTs17FadeUp .34s var(--nk-ts17-ease) both}

@media (max-width:782px){
  body.nk-ts17-motion-on .navigation-top{position:sticky;top:0}
  body.admin-bar.nk-ts17-motion-on .navigation-top{top:46px}
  body.nk-ts17-motion-rich .custom-header-media img{animation:none}
}

@media (prefers-reduced-motion:reduce){
  body.nk-ts17-motion-on *,
  body.nk-ts17-motion-on *::before,
  body.nk-ts17-motion-on *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  body.nk-ts17-js .nk-ts17-reveal{opacity:1!important;transform:none!important;filter:none!important}
}

/* ==========================================================================
 * NK Twenty Seventeen Design Layer v0.3.0
 * カラー20パターン / ヒーロー編集 / セクション別ON-OFF
 * ========================================================================== */
body.nk-ts17-design-on{background:var(--nk-ts-bg-color);color:var(--nk-ts-text-color)}
body.nk-ts17-design-on .site-content-contain{background:var(--nk-ts-bg-color)}
body.nk-ts17-design-on .wrap,body.nk-ts17-design-on .entry-content,body.nk-ts17-design-on .widget{color:var(--nk-ts-text-color)}
body.nk-ts17-design-on .navigation-top{border-bottom-color:color-mix(in srgb,var(--nk-ts-site-color) 18%,transparent)}
body.nk-ts17-design-on .main-navigation a:hover,body.nk-ts17-design-on .main-navigation li.focus>a{color:var(--nk-ts-accent-color)}
body.nk-ts17-design-on .entry-content h2,body.nk-ts17-design-on .entry-content h3{position:relative}
body.nk-ts17-design-on .entry-content h2::after{content:"";display:block;width:54px;height:3px;margin-top:.42em;border-radius:999px;background:linear-gradient(90deg,var(--nk-ts-site-color),var(--nk-ts-accent-color))}
body.nk-ts17-design-on .wp-block-button__link,body.nk-ts17-design-on .nk-ts17-custom-hero__button{border-radius:999px;text-decoration:none;font-weight:700;letter-spacing:.02em}
body.nk-ts17-design-on .entry-content .wp-block-group,body.nk-ts17-design-on .entry-content .wp-block-columns,body.nk-ts17-design-on .entry-content .wp-block-media-text,body.nk-ts17-design-on .widget{border-radius:18px}

.nk-ts17-custom-hero{min-height:var(--nk-ts17-hero-height,520px);display:flex;align-items:center;justify-content:center;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 18% 20%,color-mix(in srgb,var(--nk-ts-accent-color) 48%,transparent),transparent 32%),linear-gradient(135deg,var(--nk-ts-site-color),#111827);color:#fff;text-align:center;background-image:linear-gradient(rgba(0,0,0,var(--nk-ts17-hero-overlay,.45)),rgba(0,0,0,var(--nk-ts17-hero-overlay,.45))),var(--nk-ts17-hero-image),radial-gradient(circle at 18% 20%,color-mix(in srgb,var(--nk-ts-accent-color) 48%,transparent),transparent 32%),linear-gradient(135deg,var(--nk-ts-site-color),#111827);background-size:cover;background-position:center}.nk-ts17-custom-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.16),transparent 36%,rgba(255,255,255,.08));pointer-events:none;z-index:-1}.nk-ts17-custom-hero__inner{max-width:980px;padding:64px 24px}.nk-ts17-custom-hero__title{font-size:clamp(2.2rem,5vw,4.8rem);line-height:1.08;margin:0 0 .28em;color:#fff;text-shadow:0 8px 28px rgba(0,0,0,.28);font-weight:800}.nk-ts17-custom-hero__subtitle{font-size:clamp(1rem,2.1vw,1.45rem);line-height:1.8;max-width:760px;margin:0 auto 1.6em;color:rgba(255,255,255,.92);text-shadow:0 4px 18px rgba(0,0,0,.28)}.nk-ts17-custom-hero__button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 26px;background:var(--nk-ts-accent-color);color:#111!important;box-shadow:0 16px 36px rgba(0,0,0,.22)}.nk-ts17-custom-hero__button:hover{transform:translateY(-2px);filter:brightness(1.04);box-shadow:0 20px 44px rgba(0,0,0,.26)}
body.nk-ts17-js .nk-ts17-custom-hero{animation:nkTs17FadeUp .82s var(--nk-ts17-luxury) both}

body.nk-ts17-hide-header .site-header{display:none!important}body.nk-ts17-hide-nav .navigation-top{display:none!important}body.nk-ts17-hide-hero .nk-ts17-custom-hero{display:none!important}body.nk-ts17-hide-featured_image .single-featured-image-header,body.nk-ts17-hide-featured_image .post-thumbnail{display:none!important}body.nk-ts17-hide-entry_header .entry-header{display:none!important}body.nk-ts17-hide-content .entry-content{display:none!important}body.nk-ts17-hide-cards .nk-facility-grid,body.nk-ts17-hide-cards .nk-facility-card{display:none!important}body.nk-ts17-hide-widgets .widget-area,body.nk-ts17-hide-widgets .widget{display:none!important}body.nk-ts17-hide-footer .site-footer{display:none!important}body.nk-ts17-hide-comments #comments{display:none!important}

@media (max-width:782px){.nk-ts17-custom-hero{min-height:min(var(--nk-ts17-hero-height,520px),620px)}.nk-ts17-custom-hero__inner{padding:52px 20px}.nk-ts17-custom-hero__button{width:100%;max-width:320px}}

/* NKTS17 v0.4.0 - detailed color and wallpaper support */
body.nk-ts17-design-on .entry-content a:not(.wp-block-button__link){text-decoration-color:color-mix(in srgb,var(--nk-ts-link-color) 35%,transparent)}
body.nk-ts17-design-on .entry-content a:not(.wp-block-button__link):hover{text-decoration-color:var(--nk-ts-link-hover-color)}
body.nk-ts17-design-on .entry-content table,body.nk-ts17-design-on .entry-content th,body.nk-ts17-design-on .entry-content td{border-color:var(--nk-ts-border-color)}
body.nk-ts17-design-on .entry-content .wp-block-group,body.nk-ts17-design-on .entry-content .wp-block-columns,body.nk-ts17-design-on .entry-content .wp-block-media-text,body.nk-ts17-design-on .widget{border:1px solid var(--nk-ts-border-color)}
body.nk-ts17-design-on .site-footer .wrap{background:transparent;color:inherit}
body.nk-ts17-design-on .nk-ts17-custom-hero__button{color:var(--nk-ts-button-text)!important}
body.nk-ts17-design-on .site-header,body.nk-ts17-design-on .navigation-top,body.nk-ts17-design-on .site-content-contain,body.nk-ts17-design-on .site-footer{background-blend-mode:normal}
@media(max-width:782px){body.nk-ts17-design-on{background-attachment:scroll!important}body.nk-ts17-design-on .site-header,body.nk-ts17-design-on .navigation-top,body.nk-ts17-design-on .site-content-contain,body.nk-ts17-design-on .site-footer{background-attachment:scroll!important}}

/* ========================================================================== 
 * NKTS17 v0.7.0 - Twenty Seventeen Beauty Upgrade
 * 現代的なLP風カード / 上品なアニメーション / 見出し装飾 / 画像美装
 * ========================================================================== */
body.nk-ts17-beauty-off .nk-ts17-beauty-card,
body.nk-ts17-beauty-off .nk-ts17-polished-image{box-shadow:none!important;transform:none!important}

body.nk-ts17-design-on{--nk-ts17-card-shadow:0 18px 48px rgba(15,23,42,.12);--nk-ts17-card-shadow-hover:0 28px 72px rgba(15,23,42,.18);--nk-ts17-border-soft:color-mix(in srgb,var(--nk-ts-border-color) 78%,transparent);--nk-ts17-surface-glow:color-mix(in srgb,var(--nk-ts-site-color) 9%,var(--nk-ts-surface-color));--nk-ts17-accent-glow:color-mix(in srgb,var(--nk-ts-accent-color) 24%,transparent)}

/* content rhythm */
body.nk-ts17-design-on .site-content{padding-top:3.25em;padding-bottom:3.25em}
body.nk-ts17-design-on .entry-content{font-size:clamp(16px,1.1vw,18px);line-height:1.9}
body.nk-ts17-design-on .entry-content > * + *{margin-top:1.35em}
body.nk-ts17-design-on .entry-title{letter-spacing:.02em}
body.nk-ts17-design-on .entry-header{position:relative;padding-bottom:1.2em;margin-bottom:1.8em}
body.nk-ts17-design-on .entry-header::after{content:"";display:block;width:88px;height:4px;margin-top:1.1em;border-radius:999px;background:linear-gradient(90deg,var(--nk-ts-site-color),var(--nk-ts-accent-color));box-shadow:0 8px 22px var(--nk-ts17-accent-glow)}

/* beauty mode surfaces */
body.nk-ts17-beauty-modern .site-content-contain{background:radial-gradient(circle at 0 0,color-mix(in srgb,var(--nk-ts-site-color) 8%,transparent),transparent 34%),linear-gradient(180deg,var(--nk-ts-bg-color),color-mix(in srgb,var(--nk-ts-bg-color) 86%,#fff))}
body.nk-ts17-beauty-soft .site-content-contain{background:radial-gradient(circle at 14% 12%,color-mix(in srgb,var(--nk-ts-accent-color) 16%,transparent),transparent 30%),radial-gradient(circle at 82% 16%,color-mix(in srgb,var(--nk-ts-site-color) 12%,transparent),transparent 26%),var(--nk-ts-bg-color)}
body.nk-ts17-beauty-luxury .site-content-contain{background:linear-gradient(180deg,color-mix(in srgb,var(--nk-ts-bg-color) 92%,#0f172a),var(--nk-ts-bg-color))}
body.nk-ts17-beauty-glass .site-content-contain{background:radial-gradient(circle at top left,color-mix(in srgb,var(--nk-ts-site-color) 14%,transparent),transparent 34%),radial-gradient(circle at bottom right,color-mix(in srgb,var(--nk-ts-accent-color) 12%,transparent),transparent 32%),var(--nk-ts-bg-color)}

/* cards */
body.nk-ts17-design-on .nk-ts17-beauty-card,
body.nk-ts17-design-on .nk-facility-card{position:relative;isolation:isolate;overflow:hidden;border-radius:var(--nk-ts-radius-xl);transition:transform .42s var(--nk-ts-ease),box-shadow .42s var(--nk-ts-ease),border-color .42s var(--nk-ts-ease),background .42s var(--nk-ts-ease);will-change:transform;background:linear-gradient(180deg,color-mix(in srgb,var(--nk-ts-surface-color) 94%,#fff),var(--nk-ts-surface-color));border:1px solid var(--nk-ts17-border-soft);box-shadow:var(--nk-ts17-card-shadow)}
body.nk-ts17-design-on .entry-content > .nk-ts17-beauty-card,
body.nk-ts17-design-on .widget.nk-ts17-beauty-card{padding:clamp(22px,3vw,36px)}
body.nk-ts17-design-on .wp-block-columns.nk-ts17-beauty-card{gap:clamp(20px,3vw,40px)}
body.nk-ts17-design-on .nk-ts17-card-glow{position:absolute;inset:auto -18% -44% -18%;height:64%;z-index:-1;pointer-events:none;background:radial-gradient(circle at 50% 0,var(--nk-ts17-accent-glow),transparent 64%);opacity:.8;transition:opacity .35s ease,transform .35s var(--nk-ts-ease)}
body.nk-ts17-card-standard .nk-ts17-beauty-card{border-radius:18px;box-shadow:0 8px 24px rgba(15,23,42,.08)}
body.nk-ts17-card-elevated .nk-ts17-beauty-card{box-shadow:0 20px 50px rgba(15,23,42,.13)}
body.nk-ts17-card-glass .nk-ts17-beauty-card{background:linear-gradient(135deg,color-mix(in srgb,var(--nk-ts-surface-color) 72%,transparent),color-mix(in srgb,var(--nk-ts-surface-color) 56%,transparent));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-color:color-mix(in srgb,#fff 34%,var(--nk-ts-border-color))}
body.nk-ts17-card-luxury .nk-ts17-beauty-card{background:linear-gradient(145deg,color-mix(in srgb,var(--nk-ts-surface-color) 86%,#111827),var(--nk-ts-surface-color));border-color:color-mix(in srgb,var(--nk-ts-accent-color) 38%,var(--nk-ts-border-color));box-shadow:0 18px 60px rgba(0,0,0,.18)}
body.nk-ts17-card-luxury .nk-ts17-beauty-card::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,color-mix(in srgb,var(--nk-ts-accent-color) 60%,transparent),transparent 42%,color-mix(in srgb,var(--nk-ts-site-color) 42%,transparent));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
body.nk-ts17-card-outline .nk-ts17-beauty-card{box-shadow:none;border:2px solid var(--nk-ts-border-color);background:var(--nk-ts-surface-color)}

/* hover modes */
body.nk-ts17-hover-lift .nk-ts17-beauty-card:hover,
body.nk-ts17-hover-lift .nk-facility-card:hover{transform:translateY(-8px);box-shadow:var(--nk-ts17-card-shadow-hover)}
body.nk-ts17-hover-glow .nk-ts17-beauty-card:hover,
body.nk-ts17-hover-glow .nk-facility-card:hover{border-color:color-mix(in srgb,var(--nk-ts-accent-color) 62%,var(--nk-ts-border-color));box-shadow:0 0 0 1px color-mix(in srgb,var(--nk-ts-accent-color) 26%,transparent),0 28px 72px color-mix(in srgb,var(--nk-ts-site-color) 22%,transparent)}
body.nk-ts17-hover-glow .nk-ts17-beauty-card:hover .nk-ts17-card-glow{opacity:1;transform:translateY(-8px) scale(1.04)}
body.nk-ts17-hover-tilt .nk-ts17-beauty-card:hover,
body.nk-ts17-hover-tilt .nk-facility-card:hover{transform:perspective(900px) rotateX(var(--nk-ts17-tilt-x,0deg)) rotateY(var(--nk-ts17-tilt-y,0deg)) translateY(-5px);box-shadow:var(--nk-ts17-card-shadow-hover)}
body.nk-ts17-hover-none .nk-ts17-beauty-card:hover{transform:none}

/* facility grid cards */
.nk-facility-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:clamp(18px,2.5vw,30px);margin:2em 0}
.nk-facility-card{padding:clamp(20px,2.4vw,30px)}
.nk-facility-card__title{margin-top:0;font-size:1.22rem;line-height:1.45}
.nk-facility-card p:last-child{margin-bottom:0;color:var(--nk-ts-muted-color)}

/* headings */
body.nk-ts17-design-on .entry-content h2,
body.nk-ts17-design-on .entry-content h3{line-height:1.45;letter-spacing:.02em}
body.nk-ts17-heading-none .entry-content h2::after,
body.nk-ts17-heading-none .entry-header::after{display:none!important}
body.nk-ts17-heading-side_bar .entry-content h2{padding-left:.8em;border-left:6px solid var(--nk-ts-site-color)}
body.nk-ts17-heading-side_bar .entry-content h2::after{display:none!important}
body.nk-ts17-heading-marker .entry-content h2{display:inline;background:linear-gradient(transparent 62%,color-mix(in srgb,var(--nk-ts-accent-color) 36%,transparent) 62%);padding:0 .08em}
body.nk-ts17-heading-marker .entry-content h2::after{display:none!important}
body.nk-ts17-heading-centered .entry-content h2{text-align:center}
body.nk-ts17-heading-centered .entry-content h2::after{margin-left:auto;margin-right:auto;width:78px}
body.nk-ts17-heading-gradient_line .entry-content h2::after{height:4px;width:72px;box-shadow:0 8px 20px color-mix(in srgb,var(--nk-ts-site-color) 20%,transparent)}

/* buttons */
body.nk-ts17-design-on .nk-ts17-action,
body.nk-ts17-design-on .wp-block-button__link,
body.nk-ts17-design-on input[type="submit"],
body.nk-ts17-design-on button:not(.menu-toggle){position:relative;overflow:hidden;transform:translateZ(0);transition:transform .32s var(--nk-ts-ease),box-shadow .32s var(--nk-ts-ease),filter .32s ease;border-radius:999px;box-shadow:0 14px 30px color-mix(in srgb,var(--nk-ts-button-bg) 26%,transparent)}
body.nk-ts17-design-on .nk-ts17-action::after,
body.nk-ts17-design-on .wp-block-button__link::after{content:"";position:absolute;top:-60%;bottom:-60%;left:-46%;width:34%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.48),transparent);transform:translateX(-130%) rotate(18deg);transition:transform .72s var(--nk-ts-ease);pointer-events:none}
body.nk-ts17-design-on .nk-ts17-action:hover,
body.nk-ts17-design-on .wp-block-button__link:hover{transform:translateY(-3px);box-shadow:0 18px 44px color-mix(in srgb,var(--nk-ts-button-hover-bg) 32%,transparent)}
body.nk-ts17-design-on .nk-ts17-action:hover::after,
body.nk-ts17-design-on .wp-block-button__link:hover::after{transform:translateX(420%) rotate(18deg)}

/* images */
body.nk-ts17-image-polish-on .nk-ts17-polished-figure{overflow:hidden;border-radius:var(--nk-ts-radius-xl)}
body.nk-ts17-image-polish-on .nk-ts17-polished-image{border-radius:var(--nk-ts-radius-xl);box-shadow:0 18px 48px rgba(15,23,42,.14);transition:transform .55s var(--nk-ts-ease),filter .55s ease,box-shadow .55s var(--nk-ts-ease)}
body.nk-ts17-image-polish-on .nk-ts17-polished-image:hover{transform:scale(1.018);filter:saturate(1.06) contrast(1.02);box-shadow:0 26px 72px rgba(15,23,42,.18)}

/* hero upgrade */
.nk-ts17-custom-hero{min-height:var(--nk-ts17-hero-height,520px);padding:clamp(54px,7vw,96px) 20px}
.nk-ts17-custom-hero::after{content:"";position:absolute;inset:9% 8%;border:1px solid rgba(255,255,255,.16);border-radius:34px;pointer-events:none;box-shadow:inset 0 0 80px rgba(255,255,255,.06)}
.nk-ts17-custom-hero__inner{position:relative;z-index:1;background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.18);border-radius:34px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 24px 80px rgba(0,0,0,.20)}
.nk-ts17-custom-hero__title{letter-spacing:.035em}

/* reveal patterns */
body.nk-ts17-js .nk-ts17-reveal{opacity:0;transition:opacity .72s var(--nk-ts-ease),transform .72s var(--nk-ts-ease),filter .72s var(--nk-ts-ease),clip-path .72s var(--nk-ts-ease);transition-delay:var(--nk-ts17-delay,0s);will-change:opacity,transform,filter,clip-path}
body.nk-ts17-js .nk-ts17-reveal[data-nk-reveal="fade_up"]{transform:translateY(28px)}
body.nk-ts17-js .nk-ts17-reveal[data-nk-reveal="slide_left"]{transform:translateX(34px)}
body.nk-ts17-js .nk-ts17-reveal[data-nk-reveal="zoom"]{transform:scale(.965)}
body.nk-ts17-js .nk-ts17-reveal[data-nk-reveal="blur"]{filter:blur(14px);transform:translateY(14px)}
body.nk-ts17-js .nk-ts17-reveal[data-nk-reveal="clip"]{clip-path:inset(0 0 100% 0);transform:translateY(10px)}
body.nk-ts17-js .nk-ts17-reveal.is-inview{opacity:1;transform:none;filter:none;clip-path:inset(0 0 0 0)}
body.nk-ts17-motion-rich .nk-ts17-reveal{transition-duration:.9s}
body.nk-ts17-motion-soft .nk-ts17-reveal{transition-duration:.52s}

/* header/nav polish */
body.nk-ts17-design-on .navigation-top{transition:box-shadow .34s ease,background .34s ease,backdrop-filter .34s ease;border-bottom:1px solid var(--nk-ts-border-color)}
body.nk-ts17-scrolled.nk-ts17-header-elegant .navigation-top{box-shadow:0 14px 38px rgba(15,23,42,.12)}
body.nk-ts17-scrolled.nk-ts17-header-glass .navigation-top{background:color-mix(in srgb,var(--nk-ts-header-bg) 82%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 16px 44px rgba(15,23,42,.12)}
body.nk-ts17-design-on .main-navigation a{transition:color .25s ease,transform .25s var(--nk-ts-ease)}
body.nk-ts17-design-on .main-navigation a:hover{transform:translateY(-1px)}

@media (max-width:782px){
  body.nk-ts17-design-on .site-content{padding-top:2em;padding-bottom:2em}
  body.nk-ts17-design-on .entry-content{font-size:16px;line-height:1.85}
  body.nk-ts17-design-on .entry-content > .nk-ts17-beauty-card,
  body.nk-ts17-design-on .widget.nk-ts17-beauty-card{padding:20px;border-radius:20px}
  .nk-facility-grid{grid-template-columns:1fr;gap:18px}
  .nk-ts17-custom-hero::after{inset:5%;border-radius:22px}
  .nk-ts17-custom-hero__inner{border-radius:24px;padding:42px 20px}
  body.nk-ts17-hover-tilt .nk-ts17-beauty-card:hover{transform:translateY(-5px)}
}

@media (prefers-reduced-motion: reduce){
  body.nk-ts17-js .nk-ts17-reveal{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important;transition:none!important}
  body.nk-ts17-design-on .nk-ts17-beauty-card,
  body.nk-ts17-design-on .nk-ts17-polished-image,
  body.nk-ts17-design-on .nk-ts17-action{transition:none!important}
}

/* ==========================================================================
 * NK Twenty Seventeen v0.8.0
 * PCワイド化 / タブレット・スマホ最適化 / Google Fonts 全ページ適用
 * ========================================================================== */
body.nk-ts17-design-on,
body.nk-ts17-design-on button,
body.nk-ts17-design-on input,
body.nk-ts17-design-on select,
body.nk-ts17-design-on textarea,
body.nk-ts17-design-on .site-title,
body.nk-ts17-design-on .site-description,
body.nk-ts17-design-on .main-navigation,
body.nk-ts17-design-on .entry-title,
body.nk-ts17-design-on .page-title,
body.nk-ts17-design-on .widget-title,
body.nk-ts17-design-on .entry-content,
body.nk-ts17-design-on .entry-summary,
body.nk-ts17-design-on .site-footer{font-family:var(--nk-ts-font-family)!important}

body.nk-ts17-wide-layout{--nk-ts17-gutter:clamp(22px,4vw,70px);--nk-ts17-tablet-gutter:clamp(20px,4vw,44px);--nk-ts17-mobile-gutter:18px}
body.nk-ts17-responsive-spacious{--nk-ts17-gutter:clamp(28px,5vw,88px);--nk-ts17-card-gap:clamp(24px,3vw,42px);--nk-ts17-section-space:clamp(56px,7vw,108px)}
body.nk-ts17-responsive-balanced{--nk-ts17-card-gap:clamp(20px,2.5vw,34px);--nk-ts17-section-space:clamp(44px,6vw,88px)}
body.nk-ts17-responsive-compact{--nk-ts17-gutter:clamp(18px,3vw,44px);--nk-ts17-card-gap:clamp(16px,2vw,24px);--nk-ts17-section-space:clamp(32px,4.5vw,62px)}

@media screen and (min-width:48em){
  body.nk-ts17-wide-layout .wrap,
  body.nk-ts17-wide-layout .navigation-top .wrap,
  body.nk-ts17-wide-layout .site-content .wrap,
  body.nk-ts17-wide-layout .panel-content .wrap,
  body.nk-ts17-wide-layout .footer-widget-1,
  body.nk-ts17-wide-layout .footer-widget-2{max-width:var(--nk-ts17-site-max)!important;padding-left:var(--nk-ts17-gutter);padding-right:var(--nk-ts17-gutter)}

  body.nk-ts17-wide-layout.page-one-column .panel-content .wrap,
  body.nk-ts17-wide-layout.page-one-column .site-content .wrap,
  body.nk-ts17-wide-layout:not(.has-sidebar) #primary{max-width:var(--nk-ts17-site-max)!important}

  body.nk-ts17-wide-layout.page-one-column .entry-header,
  body.nk-ts17-wide-layout.page-one-column .entry-content,
  body.nk-ts17-wide-layout.page-one-column #comments,
  body.nk-ts17-wide-layout:not(.has-sidebar) .entry-header,
  body.nk-ts17-wide-layout:not(.has-sidebar) .entry-content,
  body.nk-ts17-wide-layout:not(.has-sidebar) #comments{max-width:var(--nk-ts17-content-max)!important;width:100%!important;margin-left:auto!important;margin-right:auto!important;float:none!important}

  body.nk-ts17-wide-layout.single-post:not(.has-sidebar) .entry-content,
  body.nk-ts17-wide-layout.single-post:not(.has-sidebar) .entry-header,
  body.nk-ts17-wide-layout.single-post:not(.has-sidebar) .entry-footer,
  body.nk-ts17-wide-layout.single-post:not(.has-sidebar) #comments{max-width:var(--nk-ts17-narrow-max)!important}

  body.nk-ts17-wide-layout.has-sidebar #primary{width:calc(100% - 360px);max-width:calc(var(--nk-ts17-site-max) - 410px)}
  body.nk-ts17-wide-layout.has-sidebar #secondary{width:320px;max-width:320px}

  body.nk-ts17-wide-layout .entry-content .alignwide{width:min(var(--nk-ts17-site-max),calc(100vw - (var(--nk-ts17-gutter) * 2)))!important;max-width:min(var(--nk-ts17-site-max),calc(100vw - (var(--nk-ts17-gutter) * 2)))!important;margin-left:50%!important;transform:translateX(-50%)}
  body.nk-ts17-wide-layout .entry-content .alignfull{width:100vw!important;max-width:100vw!important;margin-left:50%!important;transform:translateX(-50%)}
  body.nk-ts17-wide-layout .entry-content > .wp-block-cover.alignfull,
  body.nk-ts17-wide-layout .entry-content > .wp-block-group.alignfull{padding-left:var(--nk-ts17-gutter);padding-right:var(--nk-ts17-gutter)}
}

body.nk-ts17-wide-layout .site-content{padding-top:var(--nk-ts17-section-space);padding-bottom:var(--nk-ts17-section-space)}
body.nk-ts17-wide-layout .entry-content{font-size:clamp(16px,1.06vw,18px);line-height:1.9}
body.nk-ts17-wide-layout .entry-content p{max-width:72em}
body.nk-ts17-wide-layout .entry-content h1{font-size:clamp(2rem,3.2vw,4rem)}
body.nk-ts17-wide-layout .entry-content h2{font-size:clamp(1.6rem,2.2vw,2.8rem);margin-top:1.7em}
body.nk-ts17-wide-layout .entry-content h3{font-size:clamp(1.25rem,1.55vw,1.85rem)}
body.nk-ts17-wide-layout .entry-content .wp-block-columns{gap:var(--nk-ts17-card-gap)}
body.nk-ts17-wide-layout .entry-content .wp-block-group,
body.nk-ts17-wide-layout .entry-content .wp-block-media-text,
body.nk-ts17-wide-layout .nk-facility-card,
body.nk-ts17-wide-layout .widget{overflow-wrap:anywhere}
body.nk-ts17-wide-layout .nk-facility-grid{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:var(--nk-ts17-card-gap)}
body.nk-ts17-wide-layout .entry-content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}
body.nk-ts17-wide-layout .entry-content img,
body.nk-ts17-wide-layout .entry-content video,
body.nk-ts17-wide-layout .entry-content iframe{max-width:100%;height:auto}

@media screen and (min-width:48em) and (max-width:1024px){
  body.nk-ts17-wide-layout .wrap,
  body.nk-ts17-wide-layout .navigation-top .wrap,
  body.nk-ts17-wide-layout .site-content .wrap,
  body.nk-ts17-wide-layout .panel-content .wrap{padding-left:var(--nk-ts17-tablet-gutter);padding-right:var(--nk-ts17-tablet-gutter)}
  body.nk-ts17-wide-layout.has-sidebar #primary,
  body.nk-ts17-wide-layout.has-sidebar #secondary{float:none!important;width:100%!important;max-width:100%!important}
  body.nk-ts17-wide-layout.has-sidebar #secondary{margin-top:32px}
  body.nk-ts17-wide-layout .entry-content .wp-block-columns:not(.is-not-stacked-on-mobile){flex-wrap:wrap!important}
  body.nk-ts17-wide-layout .entry-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column{flex-basis:calc(50% - var(--nk-ts17-card-gap))!important;min-width:260px}
}

@media screen and (max-width:767px){
  body.nk-ts17-wide-layout .wrap,
  body.nk-ts17-wide-layout .navigation-top .wrap,
  body.nk-ts17-wide-layout .site-content .wrap,
  body.nk-ts17-wide-layout .panel-content .wrap{max-width:100%!important;padding-left:var(--nk-ts17-mobile-gutter)!important;padding-right:var(--nk-ts17-mobile-gutter)!important}
  body.nk-ts17-wide-layout .site-content{padding-top:28px;padding-bottom:34px}
  body.nk-ts17-wide-layout .entry-content{font-size:16px;line-height:1.86}
  body.nk-ts17-wide-layout .entry-content p{max-width:none}
  body.nk-ts17-wide-layout .entry-content h1{font-size:clamp(1.8rem,9vw,2.5rem)}
  body.nk-ts17-wide-layout .entry-content h2{font-size:clamp(1.35rem,7vw,2rem);margin-top:1.5em}
  body.nk-ts17-wide-layout .entry-content h3{font-size:clamp(1.12rem,5.8vw,1.45rem)}
  body.nk-ts17-wide-layout .entry-content .alignwide,
  body.nk-ts17-wide-layout .entry-content .alignfull{width:calc(100vw - 0px)!important;max-width:100vw!important;margin-left:50%!important;transform:translateX(-50%)}
  body.nk-ts17-wide-layout .entry-content > .wp-block-cover.alignfull,
  body.nk-ts17-wide-layout .entry-content > .wp-block-group.alignfull{padding-left:var(--nk-ts17-mobile-gutter);padding-right:var(--nk-ts17-mobile-gutter)}
  body.nk-ts17-wide-layout .entry-content .wp-block-columns,
  body.nk-ts17-wide-layout .entry-content .wp-block-media-text{display:block!important}
  body.nk-ts17-wide-layout .entry-content .wp-block-column,
  body.nk-ts17-wide-layout .entry-content .wp-block-media-text__content,
  body.nk-ts17-wide-layout .entry-content .wp-block-media-text__media{width:100%!important;max-width:100%!important}
  body.nk-ts17-wide-layout .entry-content .wp-block-media-text__content{padding:20px 0 0!important}
  body.nk-ts17-wide-layout .nk-facility-grid{grid-template-columns:1fr!important;gap:18px}
  body.nk-ts17-wide-layout .nk-ts17-custom-hero{min-height:min(var(--nk-ts17-hero-height,520px),560px);padding:42px var(--nk-ts17-mobile-gutter)}
  body.nk-ts17-wide-layout .nk-ts17-custom-hero__inner{width:100%;padding:34px 18px}
  body.nk-ts17-wide-layout .nk-ts17-custom-hero__title{font-size:clamp(2rem,10vw,3rem)}
  body.nk-ts17-wide-layout .nk-ts17-custom-hero__subtitle{font-size:1rem;line-height:1.75}
  body.nk-ts17-wide-layout .main-navigation ul{max-width:100%;overflow-x:hidden}
  body.nk-ts17-wide-layout .main-navigation a{white-space:normal;line-height:1.6;padding-top:.85em;padding-bottom:.85em}
}

/* v0.8.1 Area directory breadcrumb */
.nk-area-breadcrumb{
  max-width:var(--nk-ts-content-max,1180px);
  margin:clamp(16px,2.4vw,28px) auto clamp(12px,1.8vw,22px);
  padding:0 clamp(18px,3vw,32px);
  font-size:clamp(12px,1.4vw,14px);
  color:var(--nk-ts-muted-color,#64748b);
}
.nk-area-breadcrumb ol{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:0;
  padding:10px 14px;
  list-style:none;
  border:1px solid color-mix(in srgb,var(--nk-ts-border-color,#e5e7eb) 88%,transparent);
  border-radius:999px;
  background:color-mix(in srgb,var(--nk-ts-surface-color,#ffffff) 90%,transparent);
  box-shadow:0 10px 28px color-mix(in srgb,var(--nk-ts-shadow-color,#0f172a) 8%,transparent);
}
.nk-area-breadcrumb li{
  display:inline-flex;
  align-items:center;
  min-width:0;
}
.nk-area-breadcrumb li+li::before{
  content:'›';
  margin:0 2px 0 -2px;
  color:color-mix(in srgb,var(--nk-ts-muted-color,#64748b) 65%,transparent);
}
.nk-area-breadcrumb a{
  color:var(--nk-ts-link-color,#2563eb);
  text-decoration:none;
  font-weight:700;
}
.nk-area-breadcrumb a:hover{
  color:var(--nk-ts-link-hover-color,#1d4ed8);
  text-decoration:underline;
}
.nk-area-breadcrumb span[aria-current="page"]{
  color:var(--nk-ts-text-color,#0f172a);
  font-weight:800;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  max-width:min(52vw,560px);
}
@media (max-width:767px){
  .nk-area-breadcrumb{padding:0 14px;margin:14px auto 12px;font-size:12px;}
  .nk-area-breadcrumb ol{border-radius:18px;padding:9px 12px;gap:6px;}
  .nk-area-breadcrumb span[aria-current="page"]{max-width:62vw;}
}
