:root{--c-black: #000000;--c-white: #FFFFFF;--c-sky: #91C9E8;--c-apricot: #F3B38C;--c-line: #E6E6E6;--c-muted: #5C5C5C;--font-sans: "Inter", "Noto Sans JP", system-ui, -apple-system, "Segoe UI", "Hiragino Sans", "Yu Gothic", sans-serif;--container: 1040px;--gutter: 24px;--logo-h: 22px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-sans);font-size:1.0625rem;line-height:1.85;color:var(--c-black);background:var(--c-white);font-feature-settings:"palt"}html[lang=en] body{line-height:1.7;font-feature-settings:normal}img,svg{max-width:100%;height:auto;display:block}h1,h2,h3,h4{margin:0;font-weight:600;line-height:1.4;letter-spacing:-.005em}p{margin:0}ul{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:underline;text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--c-black);outline-offset:3px}.container{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.site-header{padding:26px 0}.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.site-header .logo-link{display:inline-block;line-height:0;text-decoration:none;padding:11px 0}.site-header .logo-link img{height:var(--logo-h);width:auto}.site-nav{display:flex;align-items:center;gap:28px;flex-wrap:wrap;font-size:.9375rem}.site-nav a{text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{text-decoration:underline}.site-nav .lang{margin-left:8px;padding-left:20px;border-left:1px solid var(--c-line);font-size:.875rem}.site-footer{background:var(--c-black);color:var(--c-white);margin-top:120px;padding:64px 0 40px;font-size:.875rem}.site-footer .logo-link{display:inline-block;line-height:0;text-decoration:none;padding:10px 0}.site-footer .logo-link img{height:20px;width:auto}.site-footer .footer-grid{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap}.site-footer address{font-style:normal;margin-top:8px}.site-footer nav{display:flex;gap:24px;flex-wrap:wrap;align-items:flex-start}.site-footer .copyright{margin-top:40px;font-size:.8125rem;opacity:.8}.site-footer :focus-visible{outline-color:var(--c-white)}.page-head{padding-block:72px 24px}.page-head h1{font-size:clamp(1.75rem,3.2vw,2.25rem)}.page-head .lead{margin-top:20px}.section{padding-block:72px 0}.section h2{font-size:clamp(1.25rem,2.2vw,1.5rem);margin-bottom:20px}.eyebrow{display:block;font-size:.8125rem;letter-spacing:.04em;color:var(--c-muted);margin-bottom:12px}.prose>*+*{margin-top:1em}.link-more{display:inline-block;margin-top:20px;font-weight:500}.note{margin-top:32px;font-size:.9375rem;color:var(--c-muted)}.hero{padding:96px 0 40px}.hero h1{font-size:clamp(1.875rem,4.2vw,2.875rem);max-width:22em}.hero .sub{margin-top:16px;font-size:1rem;color:var(--c-muted)}.hero .lead{margin-top:32px}.themes{padding-top:80px}.themes h2{font-size:clamp(1.25rem,2.2vw,1.5rem);margin-bottom:28px}.theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.theme-card{border:1px solid var(--c-line);padding:28px 24px 30px}.theme-card .name-en{font-size:1.25rem;font-weight:600}.theme-card .name-ja{font-size:.875rem;color:var(--c-muted);margin-top:2px}.theme-card p{margin-top:14px;font-size:.9375rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding-top:96px}.split h3{font-size:1.25rem;margin-bottom:14px}.card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.card{border:1px solid var(--c-line);padding:28px 24px 30px}.card h3{font-size:1.0625rem;margin-bottom:10px}.card p{font-size:.9375rem}.value-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.value{border-top:1px solid var(--c-black);padding-top:20px}.value .value-en{font-size:1.125rem;font-weight:600}.value .value-ja{font-weight:600;margin-top:2px}.value .value-text{margin-top:12px;font-size:.9375rem}.value .value-text-en{font-size:.875rem;color:var(--c-muted);margin-top:4px}.band{padding:48px 40px;margin-top:64px;color:var(--c-black)}.band-sky{background:var(--c-sky)}.band-apricot{background:var(--c-apricot)}.band h2{font-size:clamp(1.25rem,2.2vw,1.5rem);margin-bottom:16px}.purpose-block{padding:40px 40px 44px}.purpose-block .purpose-ja{font-size:clamp(1.375rem,2.6vw,1.75rem);font-weight:600}.purpose-block .purpose-en{margin-top:8px}.purpose-block .text{margin-top:24px}.company-table{width:100%;border-collapse:collapse;margin-top:8px}.company-table th,.company-table td{text-align:left;vertical-align:top;padding:18px 0;border-bottom:1px solid var(--c-line)}.company-table th{width:10em;font-weight:600;padding-right:24px;white-space:nowrap}.section-tight{padding-block:32px 0}.contact-list li{padding-left:1.2em;position:relative}.contact-list li:before{content:"";position:absolute;left:0;top:.85em;width:6px;height:6px;background:var(--c-black);border-radius:50%}.email-block{margin-top:48px;padding:36px 0;border-top:1px solid var(--c-black);border-bottom:1px solid var(--c-line)}.email-block .label{display:block;font-size:.8125rem;letter-spacing:.06em;color:var(--c-muted)}.email-block .email{display:inline-block;margin-top:10px;font-size:clamp(1.5rem,3.2vw,2.125rem);font-weight:600;letter-spacing:-.01em;line-height:1.3;word-break:break-all;text-decoration-color:var(--c-line);text-underline-offset:.22em}.email-block .email:hover{text-decoration-color:var(--c-black);text-decoration-thickness:1px}.contact-note{margin-top:28px;font-size:.9375rem}.legal h2{font-size:1.125rem;margin-top:40px;margin-bottom:10px}.legal .date{margin-top:48px;font-size:.9375rem;color:var(--c-muted)}@media(max-width:860px){.theme-grid,.card-grid,.value-list,.split{grid-template-columns:1fr}.split{gap:56px;padding-top:72px}}@media(max-width:640px){:root{--gutter: 20px;--logo-h: 20px}body{font-size:1rem}.site-header{padding:18px 0}.site-nav{gap:18px;font-size:.875rem}.site-nav .lang{margin-left:0;padding-left:0;border-left:0}.hero{padding:56px 0 24px}.page-head{padding-block:48px 16px}.section{padding-block:48px 0}.themes{padding-top:56px}.band,.purpose-block{padding:32px 24px}.email-block{margin-top:36px;padding:28px 0}.company-table th{width:6.5em;white-space:normal;padding-right:16px}.site-footer{margin-top:80px;padding:48px 0 32px}}.photo-band{margin-top:56px}.photo-band img{width:100%;aspect-ratio:21 / 9;object-fit:cover;object-position:center 45%}.photo-band.photo-business img{object-position:30% 55%}.media{width:100%;aspect-ratio:4 / 3;object-fit:cover}.media-box{aspect-ratio:4 / 3;margin-bottom:24px;overflow:hidden}.media-box img{width:100%;height:100%;object-fit:cover}.media-box svg{width:100%;height:100%;display:block}.media-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}.media-grid .media{aspect-ratio:4 / 3}.section>h2:before,.themes>.container>h2:before{content:"";display:block;width:32px;height:2px;background:var(--c-black);margin-bottom:20px}.section>h2,.themes>.container>h2{letter-spacing:.01em}.flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:16px;margin-top:8px}.flow-node{aspect-ratio:1;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:12%;color:var(--c-black)}.flow-node .label{font-weight:600;font-size:clamp(.9375rem,1.6vw,1.125rem);line-height:1.4}.flow-node .sub{font-size:clamp(.75rem,1.2vw,.875rem);margin-top:8px;line-height:1.5}.flow-node-sky{background:var(--c-sky)}.flow-node-apricot{background:var(--c-apricot)}.flow-node-outline{border:1px solid var(--c-black)}.flow-arrow{width:28px;height:28px;flex:none}.flow-arrow svg{width:100%;height:100%;display:block}.card .num{display:inline-block;font-size:.8125rem;letter-spacing:.06em;color:var(--c-muted);margin-bottom:10px}@media(max-width:860px){.media-grid{grid-template-columns:1fr;gap:28px}.flow{grid-template-columns:1fr;justify-items:center;gap:8px}.flow-node{width:min(100%,300px)}.flow-arrow{transform:rotate(90deg)}}@media(max-width:640px){.photo-band{margin-top:36px}.photo-band img{aspect-ratio:4 / 3}.section>h2:before,.themes>.container>h2:before{width:24px;margin-bottom:14px}}.media-link{display:block;text-decoration:none}.media-link .split-title{font-size:1.25rem;margin-bottom:14px}.media-link:hover .split-title{text-decoration:underline;text-underline-offset:.18em}.media-link:hover .media-box img{opacity:.92}
