:root{--key: #dd3333;--key-dark: #b12929;--key-vivid: #f33838;--yellow: #ffcc1d;--yellow-dark: #eab010;--pale: #f4f6f6;--mist: #d4e1e1;--ink: #333;--muted: #666;--line: #e5e5e5;--max: 1140px;color:var(--ink);background:#fff;font-family:Lato,Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-size:16px;line-height:1.8}a{color:inherit;text-underline-offset:.18em}img{max-width:100%;height:auto}.container{width:min(calc(100% - 2rem),var(--max));margin-inline:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:#fff;padding:.65rem 1rem}.site-header{position:relative;z-index:20;background:#fff;border-bottom:1px solid #f0f0f0}.header-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;text-decoration:none;flex:0 1 281px}.brand img{width:min(281px,100%)}nav ul{display:flex;list-style:none;margin:0;padding:0}.site-header nav a{display:flex;min-height:74px;padding:0 1rem;align-items:center;justify-content:center;flex-direction:column;text-decoration:none;font-weight:700;border-bottom:4px solid transparent}.site-header nav a:hover,.site-header nav a:focus-visible{color:var(--key);border-bottom-color:var(--key)}.site-header nav small{display:block;color:#999;font-size:.68rem;font-weight:400;line-height:1.2}.home-hero{min-height:755px;display:grid;place-items:center;text-align:center;color:#fff;background:linear-gradient(#00000047,#00000047),url(/images/sea-island.jpg) center/cover fixed}.home-hero h1{margin:0;font-size:clamp(3rem,8vw,6.2rem);line-height:1;letter-spacing:.28em;text-indent:.28em;font-weight:800;text-shadow:0 2px 9px rgba(0,0,0,.28)}.home-hero .hero-en{margin:1.6rem 0 .4rem;font-size:clamp(1rem,2vw,1.35rem);letter-spacing:.08em}.home-hero .hero-ja{margin:0;font-size:clamp(1rem,2.1vw,1.45rem);font-weight:700}.button{display:inline-block;margin-top:1.5rem;padding:.72rem 1.6rem;color:#fff;border:1px solid #fff;border-radius:.2rem;text-decoration:none;font-weight:700;transition:.2s ease}.button:hover{background:#fff;color:var(--key)}.button.key{background:var(--key);border-color:var(--key)}.button.key:hover{background:var(--key-dark);color:#fff}.cover-section{position:relative;isolation:isolate;padding:clamp(4.5rem,8vw,7rem) 0;background-position:center;background-size:cover}.cover-section:before{content:"";position:absolute;inset:0;z-index:-1;background:#f4f6f6ed}.feature-cover{background-image:url(/images/sample-img07.jpg)}.problem-cover{color:#fff;background-image:url(/images/sample-img10.jpg);background-attachment:fixed}.problem-cover:before{background:#14191bb8}.section-title{margin:0 0 3rem;text-align:center;font-size:clamp(1.75rem,3.4vw,2.6rem);line-height:1.35}.section-title:after,.content h2:after{content:"";display:block;width:52px;height:3px;margin:1rem auto 0;background:var(--key)}.feature-intro{margin-bottom:3rem;text-align:center;color:var(--key);font-weight:700}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.feature-card{padding:2rem 1.5rem;text-align:center;background:#ffffffd6;border-top:4px solid var(--key);box-shadow:0 8px 24px #0000000f}.feature-card h3{margin:.25rem 0 1rem;color:var(--key);font-size:1.25rem}.feature-card p{margin:0}.problem-list{display:grid;gap:2rem}.problem{display:grid;grid-template-columns:.9fr 1.1fr;align-items:stretch;background:#fffffff0;color:var(--ink)}.problem h3{display:grid;place-items:center;margin:0;padding:2rem;background:var(--mist);font-size:1.4rem;text-align:center}.problem-answer{padding:2rem}.problem-answer strong{color:var(--key);font-size:1.25rem}.problem-answer ul{margin-bottom:0;padding-left:1.3rem}.band{padding:3.6rem 0;color:#fff;text-align:center;background:linear-gradient(#0000008f,#0000008f),url(/images/sample-img12.jpg) center/cover}.band.company-band{background-image:linear-gradient(#0000008f,#0000008f),url(/images/sample-img03.jpg)}.band h2{margin:0;font-size:clamp(1.9rem,4vw,2.7rem)}.service-cards,.link-cards{padding:4rem 0}.image-card{text-align:center}.image-card img{width:100%;aspect-ratio:3 / 2;object-fit:cover}.image-card h3{color:var(--key)}.link-card{padding:2rem;text-align:center;border:1px solid var(--line);box-shadow:0 7px 20px #0000000f}.link-card h3{color:var(--key)}.page-hero{padding:2.3rem 0;background:linear-gradient(120deg,var(--pale),var(--mist));border-top:4px solid var(--key)}.page-hero h1{margin:0;font-size:clamp(1.85rem,4vw,2.7rem);font-weight:500}.breadcrumb{border-bottom:1px solid var(--line);background:#fff;font-size:.82rem;color:var(--muted)}.breadcrumb .container{display:flex;gap:.65rem;padding-block:.6rem;flex-wrap:wrap}.breadcrumb a{text-decoration:none;color:var(--key-dark)}.content{padding:4rem 0 5rem}.content h2{margin:3.6rem 0 2rem;font-size:clamp(1.65rem,3vw,2.15rem);text-align:center}.content h2:first-child{margin-top:0}.content h3{margin-top:2.5rem;font-size:1.4rem}.content-lede{max-width:850px;margin:0 auto 3rem;text-align:center;font-size:1.1rem}.ahrp-wordmark{text-align:center;margin-bottom:3.5rem}.ahrp-wordmark h2{margin-bottom:.4rem;font-size:clamp(2.8rem,6vw,4.4rem);letter-spacing:.14em;color:var(--key)}.ahrp-wordmark h2:after{display:none}.ahrp-wordmark p{margin:0}.service-step{display:grid;grid-template-columns:110px 1fr;margin-bottom:2rem;border:1px solid var(--line);box-shadow:0 5px 16px #0000000a}.step-number{display:grid;align-content:center;justify-items:center;color:#fff;background:var(--key);font-weight:700}.step-number span{font-size:2.7rem;line-height:1}.step-body{padding:2rem}.step-body h3{margin:0 0 .7rem;color:var(--key-dark)}.task-columns{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.4rem}.task-box{padding:1rem 1.2rem;background:var(--pale)}.task-box h4{margin:0 0 .5rem;color:var(--key)}.task-box ul{margin:0;padding-left:1.2rem}.flow-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.flow-item{position:relative;padding:1.5rem 1.5rem 1.5rem 4.5rem;background:var(--pale);border-left:4px solid var(--key)}.flow-item strong{position:absolute;left:1.25rem;top:1.25rem;display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--key);color:#fff}.flow-item h3{margin:0 0 .45rem;font-size:1.15rem}.subnav{display:flex;justify-content:center;gap:1px;margin-top:3rem;background:var(--line)}.subnav a{flex:1;padding:1rem;text-align:center;text-decoration:none;background:var(--pale)}.subnav a:hover{color:#fff;background:var(--key)}.profile{display:grid;grid-template-columns:minmax(260px,.8fr) 1.2fr;gap:2.5rem;align-items:start}.profile img{width:100%}.profile h2{text-align:left;margin-top:0}.profile h2:after{margin-left:0}.profile-name{color:var(--key);font-size:1.25rem}.company-table{width:100%;border-collapse:collapse}.company-table th,.company-table td{padding:1rem 1.2rem;border:1px solid var(--line);text-align:left;vertical-align:top}.company-table th{width:13rem;background:var(--pale)}.contact-box{padding:1.5rem;text-align:center;background:var(--pale)}.contact-box a{color:var(--key-dark);font-weight:700}.records-heading{margin:0 0 2rem;font-size:clamp(2rem,4vw,3rem);text-align:center;color:var(--key)}.records-heading:after{content:"";display:block;width:52px;height:3px;margin:1rem auto 0;background:var(--key)}.records-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;align-items:start}.record-card{padding:1.4rem;border-top:4px solid var(--key);background:var(--pale)}.record-card h3{margin:0 0 1rem;color:var(--key-dark)}.record-card ul,.university-card ul{margin:0;padding-left:1.2rem}.university-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem}.university-card{padding:1.4rem;border:1px solid var(--line)}.university-card h3{margin-top:0;color:var(--key)}.prose{max-width:900px;margin-inline:auto}.prose li{margin-bottom:.55rem}.empty-page{min-height:13rem}.site-footer{color:#ddd;background:#333}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem;padding-block:3rem}.footer-brand img{display:block;width:251px;margin-bottom:1.25rem;filter:brightness(0) invert(1)}.footer-brand strong{color:#fff}.site-footer h2{margin:0 0 1rem;color:#fff;font-size:1rem}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer a{color:#ddd;text-decoration:none}.copyright{padding:1rem 0;background:#222;font-size:.8rem}@media(max-width:800px){.header-inner{align-items:center;flex-direction:column;gap:.7rem;padding-top:.9rem}.brand{flex-basis:auto}.site-header nav{width:100%}.site-header nav ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.site-header nav a{min-height:56px;padding:0 .2rem;font-size:.78rem;text-align:center}.home-hero{min-height:580px;background-attachment:scroll}.grid,.records-grid,.university-grid,.footer-grid,.problem,.profile{grid-template-columns:1fr}.service-step{grid-template-columns:68px 1fr}.task-columns,.flow-list{grid-template-columns:1fr}.company-table th,.company-table td{display:block;width:100%}.company-table th{border-bottom:0}.problem-cover{background-attachment:scroll}}
