@font-face{font-family:"Zen Kaku Gothic New";src:url("assets/zen-privacy-500.woff") format("woff");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Zen Kaku Gothic New";src:url("assets/zen-privacy-700.woff") format("woff");font-weight:700 900;font-style:normal;font-display:swap}
:root{--navy:#092b43;--teal:#087f83;--yellow:#ffe15a;--page:#f5f5f5;--line:#b9cbce;--hu:min(calc(100vw / 1440),1.1px);--content:1040px;--gutter:48px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:112px}
body{margin:0;background:var(--page);color:var(--navy);font-family:"Zen Kaku Gothic New","Hiragino Sans",sans-serif;font-weight:500;line-height:1.9}
img{display:block;max-width:100%;height:auto}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3,strong{font-weight:700}
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--teal);outline-offset:5px}
.skip-link{position:fixed;z-index:50;left:16px;top:-80px;padding:10px 16px;background:#fff;border:1.5px solid var(--navy);font-weight:700;text-decoration:none}.skip-link:focus{top:16px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* Privacy owns this shell so concurrent edits to the four landing pages remain isolated. */
.site-header a{text-decoration:none}
.brand{position:absolute;top:0;left:0;z-index:28;display:flex;align-items:center;gap:calc(12*var(--hu));width:calc(304*var(--hu));height:calc(100*var(--hu));padding:calc(20*var(--hu));background:#fff;border-radius:0 0 calc(20*var(--hu)) 0}
.brand img{width:calc(242*var(--hu));min-width:0;flex:1}
.brand-caption{flex:none;font-family:Arial,sans-serif;font-size:calc(12*var(--hu));font-weight:700;line-height:1.05;letter-spacing:.08em;transform:translateY(.12em)}
.header-bar{position:fixed;right:32px;top:calc(32*var(--hu));z-index:30;display:flex;align-items:center;gap:calc(20*var(--hu));height:max(44px,calc(64*var(--hu)))}
.entry-link{display:flex;align-items:center;justify-content:center;gap:calc(14*var(--hu));width:calc(196*var(--hu));height:100%;border:1.5px solid var(--navy);border-radius:999px;background:var(--yellow);transition:background-color .2s}
.entry-en{font-family:Arial,sans-serif;font-weight:800;font-size:calc(20*var(--hu));letter-spacing:.12em}
.entry-link-arrow{width:calc(26*var(--hu));height:calc(15*var(--hu));fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.entry-link:hover{background:#ffea85}.entry-link:hover .entry-link-arrow{transform:translateX(4px)}
.menu-toggle{display:grid;place-items:center;flex:none;width:max(44px,calc(64*var(--hu)));height:100%;padding:0;border:1.5px solid var(--navy);border-radius:50%;background:var(--navy);color:#fff}
.menu-toggle svg{width:calc(26*var(--hu));height:calc(26*var(--hu));stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round}
.menu-toggle .menu-close-icon{display:none}.menu-toggle[aria-expanded="true"] .menu-open-icon{display:none}.menu-toggle[aria-expanded="true"] .menu-close-icon{display:block}
.no-js .menu-toggle{display:none}
.site-menu{position:absolute;z-index:31;top:calc(100% + 14*var(--hu));right:0;width:min(440px,calc(100vw - 48px));max-height:calc(100dvh - 140*var(--hu));overflow:auto;overscroll-behavior:contain;padding:24px 28px 28px;background:#fbf8f1;border:1.5px solid var(--navy);border-radius:5px;box-shadow:0 18px 50px rgb(9 43 67 / 14%)}
.menu-caption{margin:16px 0 6px;color:var(--teal);font-size:14px;font-weight:700}
.site-menu a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:62px;padding:16px 0;border-bottom:1px solid rgb(9 43 67 / 20%);font-size:20px;font-weight:700;line-height:1.5}
.site-menu a:after{content:"→";font-family:Arial,sans-serif;font-weight:400}
.site-menu a:last-child{justify-content:center;margin-top:24px;padding:16px;border:1.5px solid var(--navy);border-radius:999px;background:var(--yellow)}
.site-menu a:hover{color:var(--teal)}
.menu-backdrop{position:fixed;inset:0;z-index:29;border:0;background:rgb(9 43 67 / 18%)}.menu-open{overflow:hidden}

/* One reading surface, using the recruitment site's paper edge and type scale. */
main{width:min(var(--content),calc(100% - 2*var(--gutter)));margin:0 auto}
.privacy-head{padding:184px 0 48px;text-align:center}
.privacy-head h1{font-size:48px;line-height:1.5;letter-spacing:.02em}
.privacy-head>p{margin-top:24px;font-size:18px;line-height:1.9;text-wrap:balance}
.privacy-body{--fold:28px;position:relative;padding:16px 64px;background:#fff;border:1.5px solid var(--navy);border-radius:3px;clip-path:polygon(0 0,calc(100% - var(--fold)) 0,100% var(--fold),100% 100%,0 100%)}
.privacy-body:after{content:"";position:absolute;right:-1px;top:-1px;width:var(--fold);height:var(--fold);background:var(--navy);clip-path:polygon(0 0,0 100%,100% 100%);pointer-events:none}
.privacy-article{display:grid;grid-template-columns:40px minmax(0,1fr);gap:24px;padding:40px 0}
.privacy-article+.privacy-article{border-top:1px solid var(--line)}
.privacy-number{padding-top:5px;color:var(--teal);font-family:Arial,sans-serif;font-weight:700;font-size:16px;line-height:1.7;font-variant-numeric:tabular-nums}
.privacy-article h2{font-size:24px;line-height:1.5;margin-bottom:16px;overflow-wrap:anywhere}
.privacy-article h3{font-size:20px;line-height:1.6;margin:32px 0 12px}
.privacy-article p:not(.privacy-number),.privacy-article li,.privacy-article address{font-size:18px;line-height:1.9;font-style:normal;overflow-wrap:anywhere}
.privacy-article p+p,.privacy-article ul+p{margin-top:16px}
.privacy-article ul{margin:16px 0 0;padding-left:1.4em}.privacy-article li+li{margin-top:8px}.privacy-article li::marker{color:var(--teal);font-size:.8em}
.privacy-article a{color:var(--teal);text-underline-offset:.22em;text-decoration-thickness:1px;transition:color .2s}
.privacy-article a:hover{color:var(--navy)}
.privacy-article address{margin-top:24px}.privacy-article address strong{display:inline-block;margin-bottom:8px}
.privacy-actions{display:flex;flex-direction:column;align-items:center;gap:24px;padding:48px 0 80px}
.privacy-back{display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(380px,100%);min-height:64px;padding:16px 28px;border:1.5px solid var(--navy);border-radius:999px;background:var(--yellow);text-decoration:none;font-size:18px;font-weight:700;line-height:1.5;transition:background .2s}
.privacy-back svg{flex:none;width:26px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.privacy-back:hover{background:#ffea85}.privacy-back:hover svg{transform:translateX(4px)}
.privacy-home{font-size:16px;text-decoration-thickness:1px;text-underline-offset:.35em}.privacy-home:hover{color:var(--teal)}

/* Compact footer: brand, navigation and a quiet page-top control. */
.privacy-footer{background:var(--teal);color:#fff;padding:48px var(--gutter) 24px}
.privacy-footer-main,.privacy-footer-bottom{width:min(var(--content),100%);margin-inline:auto}
.privacy-footer-main{display:flex;align-items:center;gap:32px}
.footer-mark{display:flex;align-items:center;gap:12px;width:272px;flex:none;text-decoration:none}.footer-mark img{width:196px;height:auto}.footer-mark>span{font-family:Arial,sans-serif;font-size:12px;line-height:1.05;letter-spacing:.08em;font-weight:700;transform:translateY(.12em)}
.privacy-footer nav{display:flex;align-items:center;gap:32px;margin-left:auto}.privacy-footer nav a{display:flex;align-items:center;gap:6px;min-height:44px;font-size:16px;font-weight:700;text-decoration:none;white-space:nowrap}
.privacy-footer nav a:hover{text-decoration:underline;text-underline-offset:.35em}
.privacy-footer nav svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5}
.privacy-top{flex:none;display:grid;place-items:center;width:56px;height:56px;border:1px solid rgb(255 255 255 / 65%);border-radius:50%;transition:background-color .2s}
.privacy-top:hover{background:rgb(255 255 255 / 12%)}.privacy-top svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.privacy-footer-bottom{display:flex;justify-content:space-between;gap:24px;margin-top:32px;padding-top:24px;border-top:1px solid rgb(255 255 255 / 40%);font-size:14px;line-height:1.6}.privacy-footer-bottom small{font-family:Arial,sans-serif;font-size:12px;letter-spacing:.08em}
.privacy-footer :focus-visible{outline-color:#fff}

@media(max-width:1023px){
 :root{--gutter:24px}html{scroll-padding-top:96px}
 .brand{--hu:1px;width:min(164px,calc(100% - 200px));height:72px;padding:12px 10px;gap:7px;border-radius:0 0 16px 0}.brand img{width:0}.brand .brand-caption{display:none}
 .header-bar{--hu:1px;top:16px;right:12px;height:44px;gap:12px}.entry-link{width:112px;height:44px;gap:0}.entry-en{font-size:15px}.entry-link-arrow{display:none}
 .menu-toggle{width:44px;height:44px;background:#fff;color:var(--navy)}.menu-toggle svg{width:20px;height:20px}
 .site-menu{top:60px;width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 96px);padding:18px 24px 24px}.site-menu a{font-size:18px}
 .privacy-head{padding-top:136px}.privacy-head h1{font-size:36px}.privacy-head>p{font-size:16px}
 .privacy-body{padding:8px 32px}.privacy-article{gap:16px}
 .privacy-article p:not(.privacy-number),.privacy-article li,.privacy-article address{font-size:16px}
 .privacy-footer-main{flex-wrap:wrap;justify-content:space-between;gap:24px}.privacy-footer nav{order:3;justify-content:flex-start;width:100%;margin:0;flex-wrap:wrap;gap:8px 24px}
}
@media(max-width:600px){
 .privacy-head{padding:128px 0 32px;text-align:left}.privacy-head h1{font-size:30px;line-height:1.5;letter-spacing:0}.privacy-head>p{margin-top:16px;text-wrap:pretty}
 .privacy-body{--fold:20px;padding:0 24px}
 .privacy-article{display:block;position:relative;padding:32px 0}
 .privacy-number{position:absolute;top:34px;left:0;padding:0;font-size:14px;line-height:1.7}
 .privacy-article h2{padding-left:36px;font-size:20px;line-height:1.5;margin-bottom:16px}.privacy-article h3{font-size:18px;margin-top:24px}
 .privacy-article li+li{margin-top:8px}.privacy-article ul{padding-left:1.2em}
 .privacy-actions{padding:32px 0 56px;gap:24px}.privacy-back{padding:16px 24px;min-height:60px;font-size:16px;gap:16px}.privacy-back svg{width:22px}.privacy-home{font-size:14px}
 .privacy-footer{padding-top:40px}.footer-mark{width:232px;gap:10px}.footer-mark img{width:172px}.footer-mark>span{font-size:10px}
 .privacy-top{width:44px;height:44px}.privacy-top svg{width:20px;height:20px}
 .privacy-footer-main{gap:24px 12px}.privacy-footer nav{gap:0 24px}.privacy-footer nav a{font-size:14px}
 .privacy-footer-bottom{margin-top:24px;padding-top:24px;font-size:12px}
}
@media(max-width:359px){.footer-mark{width:212px}.footer-mark img{width:154px}.privacy-back{padding-inline:20px;gap:8px}.privacy-back svg{width:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media print{
 .site-header,.menu-backdrop,.privacy-actions,.privacy-footer,.skip-link{display:none!important}body{background:#fff}main{width:100%}.privacy-head{padding:0 0 24px;text-align:left}.privacy-head h1{font-size:28px}.privacy-head>p{font-size:12px}.privacy-body{padding:0;border:0;clip-path:none}.privacy-body:after{display:none}.privacy-article{padding:20px 0}.privacy-article h2{font-size:16px;break-after:avoid}.privacy-article h3{font-size:14px}.privacy-article p:not(.privacy-number),.privacy-article li,.privacy-article address{font-size:12px}.privacy-article a{color:inherit}
}

.privacy-head>p span{display:inline-block}
