@layer base,components,pages,utilities;@layer pages{.home-hero{position:relative;width:100%;height:calc(100lvh + 20rem);overflow:hidden;&:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#18181800 0% 78.37%,#181818);pointer-events:none;z-index:1}& video{position:absolute;top:50%;left:50%;min-width:100%;min-height:100%;width:auto;height:auto;transform:translate(-50%,-50%);z-index:-1}.home-hero__logo{position:absolute;width:140%;mix-blend-mode:difference;z-index:1;top:35%;left:35%;transform:translate(-25%) translateY(-50%);@media screen and (min-width: 768px){width:85%;top:15%;left:30%;transform:translate(-15%)}@media screen and (min-width: 1440px){width:70%;top:15%;left:35%}& img{width:100%;height:auto}}}.home-philosophy{.home-philosophy__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));margin-inline:var(--fluid-size-base);margin-block-start:calc(var(--fluid-size-base) * 7.5);@media screen and (min-width: 768px){margin-inline:calc(var(--fluid-size-base) * 3.75)}@media screen and (min-width: 1440px){margin-inline:calc(var(--fluid-size-base) * 8)}}.home-philosophy__title{width:100%;grid-column:span 12 / span 12;>svg{width:100%;height:auto}}.home-philosophy__block1{grid-column:span 12 / span 12;margin-block-start:calc(var(--fluid-size-base) * 6);@media screen and (min-width: 768px){grid-column:2 / span 12}.block-title{font-size:2rem;@media screen and (min-width: 768px){font-size:3.2rem}@media screen and (min-width: 1440px){font-size:4.8rem}}.block-text{margin-block-start:calc(var(--fluid-size-base) * 2.4);@media screen and (min-width: 1440px){margin-inline-start:calc(var(--fluid-size-base) * 3.2)}}}.home-philosophy__block2{grid-column:span 12 / span 12;margin-block-start:calc(var(--fluid-size-base) * 10);@media screen and (min-width: 768px){grid-column:3 / span 12;margin-block-start:calc(var(--fluid-size-base) * 15)}@media screen and (min-width: 1440px){grid-column:5 / span 10}.block-title{font-size:1.5rem;@media screen and (min-width: 768px){font-size:2.8rem}@media screen and (min-width: 1440px){font-size:3.6rem}}.block-text{margin-block-start:calc(var(--fluid-size-base) * 3)}}.home-philosophy__block1,.home-philosophy__block2{.block-text{& br{display:none;@media screen and (min-width: 1440px){display:initial}}}}}.home-services{&.page-section{padding-block-start:calc(var(--fluid-size-base) * 7.5);padding-block-end:0}.home-services__cards{margin-block-start:calc(var(--fluid-size-base) * 3.75);margin-inline:var(--fluid-size-base);z-index:1;background-color:hsla(from var(--fluid-color-yuki) h s l / 60%);color:var(--fluid-color-sumi);position:relative;padding-block-start:calc(var(--fluid-size-base) * 5);@media screen and (min-width: 768px){padding-block-start:calc(var(--fluid-size-base) * 10);margin-inline:calc(var(--fluid-size-base) * 2.5)}&:before{content:"";position:absolute;inset:0;background:url(/images/video-effect-1.png);background-repeat:repeat;background-size:10px 10px;opacity:.1}}.home-services__header{margin-inline:auto;width:100%;max-width:calc(var(--fluid-size-base) * 67.5);position:relative;padding-inline:var(--fluid-size-base);margin-block-end:calc(var(--fluid-size-base) * 3);@media screen and (min-width: 768px){padding-inline:calc(var(--fluid-size-base) * 2.5);margin-block-end:calc(var(--fluid-size-base) * 6)}@media screen and (min-width: 1440px){padding-inline:0}.block-text{margin-block-start:calc(var(--fluid-size-base) * 3)}}}.home-service-card{position:relative;width:100%;padding-block-start:calc(var(--fluid-size-base) * 5);padding-block-end:calc(var(--fluid-size-base) * 3);@media screen and (min-width: 768px){padding-block-start:calc(var(--fluid-size-base) * 7.5);padding-block-end:calc(var(--fluid-size-base) * 4)}.home-service-card__image{position:absolute;inset:0;z-index:-1;& img{width:100%;height:100%;object-fit:cover;object-position:center}&:before{content:"";position:absolute;inset:0;background:url(/images/video-effect-2.png);background-repeat:repeat;background-size:3px 3px;opacity:.6}}.home-service-card__content{position:relative;color:var(--fluid-color-yuki);padding-inline:var(--fluid-size-base);margin-inline:auto;width:100%;max-width:calc(var(--fluid-size-base) * 57.5);@media screen and (min-width: 768px){padding-inline:calc(var(--fluid-size-base) * 2.5)}@media screen and (min-width: 1440px){padding-inline:0}>.service-logo{mix-blend-mode:difference;color:hsl(from var(--fluid-color-yuki) h s l / 60%);width:auto;max-width:80%;margin-inline:auto;display:block;margin-block-end:calc(var(--fluid-size-base) * .75)}>h3{text-align:center;line-height:1.25;font-weight:300;font-size:1.25rem}>p{line-height:2;color:hsla(from var(--fluid-color-yuki) h s l / 80%);margin-block-start:calc(var(--fluid-size-base) * 2)}}}}@layer base,components,pages,utilities;@layer base{*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--fluid-font-sans: "Montserrat", "Noto Sans JP", sans-serif;--fluid-font-display: "Oswald", "Noto Sans JP", sans-serif;--fluid-font-size-base: 4.0625vw;--fluid-size-base: .923254472rem;@media screen and (min-width: 768px){--fluid-font-size-base: 1.6927vw}@media screen and (min-width: 1440px){--fluid-font-size-base: .9027vw}--fluid-color-sumi: #181818;--fluid-color-yuki: #ffffff;--fluid-color-shirogane: #f8f8f9;--fluid-color-gunjo: #0d58d2;--fluid-color-enji: #9b0d27}html{font-size:clamp(13px,var(--fluid-font-size-base),31.2px);font-feature-settings:"palt";font-family:var(--fluid-font-sans);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;@media screen and (min-width: 768px){font-size:clamp(13px,var(--fluid-font-size-base),24.375px)}@media (min-width: 1440px){font-size:clamp(13px,var(--fluid-font-size-base),18.49px)}}body{letter-spacing:.08em;font-size:1rem;font-weight:300;color:var(--fluid-color-yuki);background-color:var(--fluid-color-sumi)}a{text-decoration:none;color:inherit}}@layer components{.video-wrapper{z-index:1;position:relative;.video-wrapper__effect{z-index:1;position:absolute;inset:0;pointer-events:none;&:before{content:"";position:absolute;inset:0;background:url(/images/video-effect-1.png);background-repeat:repeat;background-size:10px 10px}&:after{content:"";position:absolute;inset:0;background:url(/images/video-effect-2.png);background-repeat:repeat;background-size:3px 3px}}}.page-section{padding-block:calc(var(--fluid-size-base) * 10);.page-section__inner{max-width:118rem;margin-inline:auto;width:100%}.page-section__container{padding-inline:var(--fluid-size-base);@media screen and (min-width: 768px){padding-inline:calc(var(--fluid-size-base) * 2.5);&.page-section__container--has-wide{padding-inline:calc(var(--fluid-size-base) * 3.75)}}@media screen and (min-width: 1440px){padding-inline:calc(var(--fluid-size-base) * 4);&.page-section__container--has-wide{padding-inline:calc(var(--fluid-size-base) * 7.5)}}}}.section-title+.page-section__inner{margin-block-start:calc(var(--fluid-size-base) * 3.75)}.block-title{font-weight:900;line-height:1.25;font-size:1.5rem;@media screen and (min-width: 768px){font-size:2.4rem}@media screen and (min-width: 1440px){font-size:2.6rem}}.block-text{line-height:2;opacity:.8;&.block-text--loose{line-height:2.4}&.block-text--large{font-size:1.2rem}>p{+p{margin-block-start:calc(var(--fluid-size-base) * 1.2)}}}}@layer utilities{.bg-noise-white{background-image:url(/images/noise-white.png);background-repeat:repeat;background-size:69.5px 69.5px;background-color:var(--fluid-color-yuki)}.fg-white{color:var(--fluid-color-yuki)}.fg-black{color:var(--fluid-color-sumi)}.has-word-break{word-break:keep-all;overflow-wrap:break-word}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@layer base,components,pages,utilities;@layer components{.footer{position:relative;padding-block:calc(var(--fluid-size-base) * 5);padding-inline:var(--fluid-size-base);@media screen and (min-width: 768px){padding-block:calc(var(--fluid-size-base) * 7.5);padding-inline:calc(var(--fluid-size-base) * 3)}@media screen and (min-width: 1440px){padding-inline:calc(var(--fluid-size-base) * 7.5)}}.footer__inner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-row-gap:calc(var(--fluid-size-base) * 2.5);grid-column-gap:calc(var(--fluid-size-base) * 2.5);grid-template-areas:"logo logo" "address address" "banner banner" "info info";@media screen and (min-width: 1440px){grid-template-areas:"logo banner" "address info"}}.footer__logo{grid-area:logo;>svg{width:100%;max-width:calc(var(--fluid-size-base) * 30)}}.footer__banner{grid-area:banner}.footer__address{grid-area:address;font-style:normal;font-size:.875rem;opacity:.6;line-height:1.75;>h3{font-weight:300;font-size:inherit}>p{margin-block-start:calc(var(--fluid-size-base) * 1.5)}}.footer__info{grid-area:info;>p{font-size:.75rem;opacity:.6;line-height:1.75;place-self:end}}}@layer base,components,pages,utilities;@layer components{.banner-link{display:block;position:relative;z-index:0;overflow:hidden;background-repeat:repeat;background-size:69.5px 69.5px;transition:opacity .3s ease;padding-block:calc(var(--fluid-size-base) * 2.5);padding-inline:var(--fluid-size-base);text-align:center;@media screen and (min-width: 768px){padding-block:calc(var(--fluid-size-base) * 5)}&:hover{opacity:.8}.banner-link__effect{pointer-events:none;position:absolute;width:43%;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.4;aspect-ratio:335 / 344;>svg{width:100%;height:auto;position:absolute;inset:0;transform-origin:center;animation:rotate 30s linear infinite;&:nth-child(1){animation-delay:0}&:nth-child(2){animation-delay:-7.5s;animation-duration:33s}&:nth-child(3){animation-delay:-15s;animation-duration:36s}&:nth-child(4){animation-delay:-22.5s;animation-duration:39s}}}&.banner-link--light{background-image:url(/images/noise-white.png);background-color:var(--fluid-color-yuki);color:var(--fluid-color-sumi);.banner-link__effect{color:var(--fluid-color-gunjo)}}&.banner-link--dark{background-image:url(/images/noise-black.png);background-color:var(--fluid-color-sumi);color:var(--fluid-color-yuki);.banner-link__effect{color:var(--fluid-color-enji)}}.banner-link__heading{>p{font-family:var(--fluid-font-display);font-weight:100;line-height:1;font-size:1.75rem;text-transform:uppercase;@media screen and (min-width: 768px){font-size:2.8rem}}>h2,>h3{font-size:1rem;font-weight:300;line-height:1.25}}.banner-link__text{line-height:2;font-size:.875rem;opacity:.6;margin-block-start:calc(var(--fluid-size-base) * 1.375)}}}@layer base,components,pages,utilities;@layer components{.section-title{display:flex;align-items:baseline;gap:calc(var(--fluid-size-base) * .875);@media screen and (min-width: 768px){gap:calc(var(--fluid-size-base) * 1.5)}@media screen and (min-width: 1440px){gap:calc(var(--fluid-size-base) * 2)}.section-title__line{width:calc(var(--fluid-size-base) * 2);height:.0625rem;@media screen and (min-width: 768px){width:calc(var(--fluid-size-base) * 3.5)}@media screen and (min-width: 1440px){width:calc(var(--fluid-size-base) * 6)}}&.section-title--dark{color:hsla(from var(--fluid-color-yuki) h s l / 60%);.section-title__line{background-color:hsla(from var(--fluid-color-yuki) h s l / 60%)}}&.section-title--light{color:hsla(from var(--fluid-color-sumi) h s l / 60%);.section-title__line{background-color:hsla(from var(--fluid-color-sumi) h s l / 60%)}}&.section-title--align-start{text-align:start}&.section-title--align-end{text-align:end;flex-direction:row-reverse}& hgroup{line-height:1.25;letter-spacing:.12em;& p{font-size:2.5rem;font-family:var(--fluid-font-display);text-transform:uppercase;font-weight:200;@media screen and (min-width: 768px){font-size:3.2rem}@media screen and (min-width: 1440px){font-size:4.5rem}}& h2{font-size:1rem;font-weight:100;@media screen and (min-width: 768px){font-size:1.44rem}@media screen and (min-width: 1440px){font-size:1.6rem}}}}}@layer base,components,pages,utilities;@layer components{.company-overview{margin:0;padding:0;list-style:none;font-size:.9375rem;line-height:1.8;@media screen and (min-width: 768px){font-size:1.5rem}@media screen and (min-width: 1440px){font-size:1.8rem}.company-overview__row{padding-block-end:calc(var(--fluid-size-base) * 2.5);border-block-end:.0625rem solid hsla(from var(--fluid-color-sumi) h s l / 15%);display:grid;grid-template-columns:calc(var(--fluid-size-base) * 6) 1fr;gap:calc(var(--fluid-size-base) * 1.5);@media screen and (min-width: 768px){grid-template-columns:calc(var(--fluid-size-base) * 10) 1fr;gap:calc(var(--fluid-size-base) * 3)}@media screen and (min-width: 1440px){grid-template-columns:35% 1fr;gap:calc(var(--fluid-size-base) * 4)}+.company-overview__row{margin-block-start:calc(var(--fluid-size-base) * 2.5)}>dt{display:block;opacity:.8}>dd{display:block}& ul{list-style:none;margin:0;padding:0}}}}
