*{box-sizing:border-box}
:root{--text:#222;--sub:#777;--line:#dedede}
body{background: #FDFDFB; margin:0;color:var(--text);font-family:"Zen Maru Gothic",sans-serif;line-height:1.8;letter-spacing:.04em}
a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}
a:hover{opacity:.55}
main{width:min(100% - 40px,720px);margin:auto}
.hero{padding:112px 0 96px;text-align:center}
.logo{display:block;width:240px;height:auto;margin:0 auto}
h1,h2,p{margin-top:0}
h1{margin-bottom:4px;font-size:clamp(1.5rem,4vw,1.9rem);font-weight:500;letter-spacing:.08em}
.company-en{margin:0;color:var(--sub);font-size:.78rem;letter-spacing:.12em}
.company{padding-bottom:112px}
h2{margin-bottom:32px;font-size:1.05rem;font-weight:500;letter-spacing:.08em}
.company-table{margin:0;border-top:1px solid var(--line)}
.company-row{display:grid;grid-template-columns:130px 1fr;gap:28px;padding:22px 4px;border-bottom:1px solid var(--line)}
.company-row dt{font-weight:500}
.company-row dd{margin:0}
.company-row dd p{margin-bottom:8px}
.company-row dd p:last-child{margin-bottom:0}
.company-row a{display:inline-block;margin-left:.5em;font-size:.86rem}
footer{padding:32px 20px;border-top:1px solid #f0f0f0;color:var(--sub);text-align:center;font-size:.72rem;letter-spacing:.08em}
@media(max-width:560px){
 main{width:min(100% - 32px,720px)}
 .hero{padding:80px 0 72px}
 .company{padding-bottom:80px}
 .company-row{grid-template-columns:1fr;gap:4px;padding:18px 2px}
 .company-row dt{font-size:.8rem;color:var(--sub)}
 .company-row a{display:block;width:fit-content;margin:4px 0 0}
}
