/* Shared across the corporate site. Keep page styles out of global navigation. */
/* Interaction: two points connect. Pseudo-elements never affect logo/text geometry. */
.d-header .d-header-nav a{position:relative;--connection-width:100%;--connection-left:0px}
.d-header .d-header-nav a::before,.d-header .d-header-nav a::after{content:'';position:absolute;pointer-events:none;left:var(--connection-left);bottom:4px;width:var(--connection-width);height:4px;opacity:0;transition:opacity 120ms ease-out}
.d-header .d-header-nav a::before{background:radial-gradient(circle at 2px 2px,#806039 2px,transparent 2px) left center/4px 4px no-repeat,radial-gradient(circle at 2px 2px,#806039 2px,transparent 2px) right center/4px 4px no-repeat}
.d-header .d-header-nav a::after{left:calc(var(--connection-left) + 7px);bottom:5.5px;width:calc(var(--connection-width) - 14px);height:1px;background:#806039;transform:scaleX(0);transform-origin:left;transition:transform 180ms cubic-bezier(.2,.7,.3,1),opacity 120ms ease-out}
.d-header .d-header-nav a:focus-visible::before,.d-header .d-header-nav a:focus-visible::after{opacity:1;transform:scaleX(1)}
@media(hover:hover) and (pointer:fine){.d-header .d-header-nav a:hover::before,.d-header .d-header-nav a:hover::after{opacity:1;transform:scaleX(1)}}
@media(max-width:1040px){.d-header .d-header-nav a{--connection-width:80px;--connection-left:10px}.d-header .d-header-nav a[aria-current="page"]{--connection-left:8px}}
@media(prefers-reduced-motion:reduce){.d-header .d-header-nav a::before,.d-header .d-header-nav a::after{transition:none}}
.d-header{position:sticky;top:0;z-index:100;background:#faf9f6;border-bottom:1px solid #dcd8cd;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:#262620;font-family:'Noto Sans JP','Helvetica Neue',sans-serif;font-size:13px;font-weight:400;line-height:1.5;letter-spacing:0;text-align:left}
.d-header *{box-sizing:border-box}.d-header [hidden]{display:none!important}.d-header-wrap{max-width:1200px;min-height:64px;margin:0 auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}.d-header a{color:#44443d;text-decoration:none;transition:color .15s}.d-header a:focus-visible,.d-header button:focus-visible{outline:2px solid #86663c;outline-offset:4px}.d-header-brand{display:inline-flex;align-items:center;flex-shrink:0;min-height:44px}.d-header-brand img{display:block;height:30px;width:auto;max-width:none}.d-header-panel{display:flex;align-items:center;gap:28px}.d-header-nav{display:flex;align-items:center;gap:24px}.d-header-nav a{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap;border-bottom:2px solid transparent}.d-header-nav a:hover{color:#806039}.d-header-nav a[aria-current="page"]{color:#806039;border-bottom-color:#806039}.d-header .d-header-contact{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;background:#262620;color:#fff;white-space:nowrap;border-radius:2px}.d-header .d-header-contact:hover{background:#45463e}.d-header-toggle{align-items:center;justify-content:center;gap:12px;min-height:44px;padding:8px 12px;border:1px solid #c6c6bd;border-radius:2px;background:transparent;color:#262620;font:inherit;cursor:pointer;display:inline-flex}.d-header-toggle-icon{display:flex;flex-direction:column;gap:5px}.d-header-toggle-icon i{width:18px;height:1px;background:currentColor;display:block;transition:transform .15s,opacity .15s}.d-header-toggle[aria-expanded="true"] i:nth-child(1){transform:translateY(6px) rotate(45deg)}.d-header-toggle[aria-expanded="true"] i:nth-child(2){opacity:0}.d-header-toggle[aria-expanded="true"] i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media(min-width:1041px){.d-header .d-header-toggle{display:none}}
@media(max-width:1040px){.d-header-wrap{flex-wrap:wrap;gap:0 20px;padding:10px 24px}.d-header-panel{width:100%;flex-direction:column;align-items:stretch;gap:18px;padding:15px 0 10px;border-top:1px solid #dcd8cd;margin-top:10px}.d-header-nav{flex-direction:column;align-items:stretch;gap:0}.d-header-nav a{font-size:14px;min-height:46px;border-bottom:1px solid #dcd8cd;padding:0 10px}.d-header-nav a[aria-current="page"]{background:#efece3;border-left:2px solid #806039;border-bottom-color:#dcd8cd;padding-left:8px}.d-header[data-enhanced] .d-header-panel{position:absolute;top:100%;left:0;right:0;width:100%;margin:0;padding:14px 24px 24px;background:#faf9f6;border-bottom:1px solid #dcd8cd;max-height:calc(100dvh - 65px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 12px 18px #2626200d}.d-header:not([data-enhanced]){position:relative}}
@media(max-width:480px){.d-header-wrap{padding:10px 20px}.d-header-brand img{height:28px}.d-header-toggle{font-size:12px;gap:10px}.d-header[data-enhanced] .d-header-panel{padding-left:20px;padding-right:20px}}
@media(prefers-reduced-motion:reduce){.d-header *{transition:none}}

.d-header-nav{flex-wrap:nowrap;font-weight:400}.d-header-nav a{padding-top:0;padding-bottom:0}.d-header-toggle-icon i{margin:0;padding:0;border:0}.d-local{background:#efeee7;border-bottom:1px solid #dcd8cd;color:#535348;font-family:"Noto Sans JP",sans-serif;font-size:12px;line-height:1.6}.d-local-inner{max-width:1200px;margin:auto;padding:8px 28px;display:flex;align-items:center;gap:24px}.d-local-title{font-size:12px;font-weight:600;white-space:nowrap;color:#535348;text-decoration:none}.d-local .d-local-nav{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:0;font-size:12px}.d-local-nav a{display:inline-flex;align-items:center;min-height:36px;text-decoration:none;color:#535348;border:0;padding:0}.d-local-nav a[aria-current]{color:#806039;text-decoration:underline;text-underline-offset:5px}@media(max-width:1040px){.d-header .d-header-nav{display:flex;flex-wrap:nowrap}}@media(max-width:700px){.d-local-inner{display:block;padding:10px 20px}.d-local .d-local-nav{gap:0 18px;margin-top:4px}}@media print{.d-header,.d-local{display:none!important}}
