.top-container{width:100%;max-width:64rem;margin-inline:auto;padding-inline:1rem}.top-heading{font-family:var(--font-en);letter-spacing:normal;margin:0 0 1rem;font-size:2.25rem;font-weight:200;line-height:2.5rem}.top-hero{justify-content:center;align-items:center;width:100%;height:50vh;min-height:500px;display:flex;position:relative;overflow:hidden}.top-hero__bg{z-index:0;position:absolute;inset:0}.top-hero__image{object-fit:cover;object-position:25% center;width:100%;height:100%}.top-hero__caption{z-index:10;color:#fff;text-align:right;padding:1rem .25rem;position:absolute;bottom:5%;right:2%}.top-hero__title-wrap{padding-bottom:.5rem;display:inline-block;position:relative}.top-hero__title{font-family:var(--font-en);letter-spacing:-.025em;margin:0;font-size:1.875rem;font-style:italic;font-weight:200;line-height:1.25}.top-hero__line{background:#fff;width:calc(90vw - 1rem);height:2px;position:absolute;right:0}.top-services{padding:4rem 0 1.25rem}.top-services__head{text-align:center;margin-bottom:3rem}.top-services__heading{color:#000}.top-services__lead{color:#6b7280;margin:0 0 2rem;font-size:1rem;line-height:1.5rem}.top-services__list{scroll-snap-type:x mandatory;grid-auto-columns:75vw;grid-auto-flow:column;align-items:stretch;gap:1rem;padding-bottom:1rem;display:grid;overflow-x:auto}.top-service-card{scroll-snap-align:center;background:#fff;flex-direction:column;flex-shrink:0;align-items:center;height:100%;padding-bottom:2rem;display:flex;position:relative}.top-service-card__summary{text-align:center;flex-grow:1;width:100%;margin-bottom:1rem;padding:2rem 1rem 0}.top-service-card__title-en{color:#000;font-family:var(--font-en);margin:0 0 .25rem;font-size:1.875rem;font-weight:200;line-height:2.25rem}.top-service-card__title-ja{color:#000;margin:0 0 .75rem;font-size:1.25rem;font-weight:200;line-height:1.75rem}.top-service-card__rule{background:#000;width:100%;height:1px;margin-bottom:1rem}.top-service-card__bullets{color:#374151;font-size:.875rem;font-weight:500;line-height:1.625}.top-service-card__bullet{margin-bottom:.25rem}.top-service-card__visual{aspect-ratio:4/5;width:100%;position:relative;overflow:hidden}.top-service-card__image,.top-banner__image{object-fit:cover;width:100%;height:100%;transition:transform .7s;position:absolute;inset:0}.top-service-card:hover .top-service-card__image,.top-banner:hover .top-banner__image{transform:scale(1.05)}.top-service-card__overlay{flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:absolute;inset:0}.top-service-card__case{text-align:center;background:#ffffffe6;width:100%;height:75%;margin-bottom:2rem;padding:1rem;box-shadow:0 10px 15px #0000001a,0 4px 6px #0000001a}.top-service-card__case-company{color:#6b7280;margin:0 0 .25rem;font-size:.875rem;line-height:1.25rem}.top-service-card__case-title{border-bottom:1px solid #d1d5db;margin:0 0 .5rem;padding-bottom:.5rem;font-size:.75rem;font-weight:400;line-height:1rem}.top-service-card__case-description{-webkit-line-clamp:6;line-clamp:6;color:#4b5563;text-align:left;-webkit-box-orient:vertical;font-size:.875rem;line-height:1.375;display:-webkit-box;overflow:hidden}.top-service-card__more{text-align:center;position:absolute;bottom:1.3rem;left:0;right:0}.top-recruit{padding-bottom:5rem}.top-company{padding-bottom:6rem}.top-banner{height:500px;position:relative;overflow:hidden}.top-banner__image--bottom{object-position:bottom}.top-banner__shade{background:#0006;width:100%;height:100%;position:absolute;inset:0}.top-banner__content{color:#fff;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;padding:1rem;display:flex;position:absolute;inset:0}.top-banner__content--recruit{z-index:10}.top-banner__heading{margin-bottom:.5rem}.top-banner__heading--flush{margin-bottom:0}.top-banner__sub{margin:0 0 2rem;font-size:1rem;line-height:1.5rem}.top-banner__text{margin:0 0 2rem;font-weight:500;line-height:1.625}.top-banner__label{flex-direction:column;align-items:center;display:flex;position:relative}.top-banner__label-sub{white-space:nowrap;flex-direction:column;align-items:center;width:100%;margin-top:.5rem;display:flex;position:absolute;top:100%}.top-news{z-index:10;padding:2.5rem 0;position:relative}.top-news__layout{flex-direction:column;align-items:center;gap:2rem;display:flex}.top-news__head{text-align:center;flex-shrink:0}.top-news__heading{color:#000;margin-bottom:.5rem}.top-news__sub{color:#000;text-align:center;margin:0;font-size:1rem;line-height:1.5rem}.top-news__box{border:1px solid var(--color-neovista-red);background:#fff;flex-direction:column;flex-grow:1;justify-content:center;width:100%;min-height:300px;padding:2rem;display:flex;position:relative}.top-news__list{flex-direction:column;gap:1.5rem;margin:0;padding:0;list-style:none;display:flex}.top-news__item{flex-direction:column;align-items:stretch;gap:.5rem;display:flex}.top-news__date{color:#000;flex-shrink:0;width:5rem;font-size:.875rem;font-weight:200;line-height:1.25rem}.top-news__body{flex-grow:1}.top-news__link-wrap{margin-bottom:.25rem}.top-news__link{color:var(--color-neovista-red);font-size:.875rem;font-weight:200;line-height:1.625;text-decoration:underline;transition:color .15s}.top-news__link:hover{color:var(--color-neovista-red-hover)}.top-news__description{color:#4b5563;margin:0;font-size:.75rem;line-height:1.625}@media (width>=768px){.top-heading{font-size:3rem;line-height:1}.top-hero__image{object-position:center}.top-hero__caption{padding:1rem}.top-hero__title{font-size:3.75rem}.top-services{padding:6rem 0 2rem}.top-services__lead,.top-banner__sub,.top-news__sub{font-size:1.125rem;line-height:1.75rem}.top-services__list{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-columns:auto;grid-auto-flow:row;padding-bottom:0}.top-service-card__case{height:80%}.top-service-card__case-description{font-size:10px}.top-company{padding-bottom:8rem}.top-news{padding:4rem 0}.top-news__layout{flex-direction:row;gap:4rem}.top-news__head{text-align:left}.top-news__box{padding:3rem}.top-news__list{gap:2rem}.top-news__item{flex-direction:row;align-items:flex-start;gap:2rem}.top-news__date,.top-news__link{font-size:1rem}.top-news__date{line-height:1.5rem}.top-news__description{font-size:.875rem;line-height:1.625}}
