*{box-sizing:border-box;margin:0;padding:0}html{font-size:62.5%;scroll-behavior:smooth}body{background-color:#fff;color:#333;font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;font-size:1.6rem;font-weight:300;line-height:1.5}img{display:block;height:auto;max-width:100%}.visually-hidden{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.br-mobile{display:none}.main-container{background-color:#fff;width:100%}.hero{background-color:#fff;padding:80px 0}.hero__inner{align-items:center;display:flex;gap:80px;margin:0 auto;max-width:1440px;padding:0 40px}.hero__content{align-self:stretch}.hero__content,.hero__text-wrapper{display:flex;flex:1;flex-direction:column}.hero__text-wrapper{justify-content:flex-end}.hero__button-wrapper{align-items:center;display:flex;flex:1;justify-content:center}.hero__title{color:#333;font-family:Hiragino Kaku Gothic Std,Hiragino Sans,sans-serif;font-size:4.8rem;font-weight:800;letter-spacing:.05em;line-height:1.33;margin-bottom:24px}.hero__subtitle{color:#333;font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,sans-serif;font-size:2.4rem;font-weight:300;line-height:1.33;margin-bottom:0}.hero__button{background:linear-gradient(90deg,#ea66c9,#2828e8);border:none;border-radius:73px;box-shadow:0 5px 5px rgba(0,0,0,.25);color:#fff;display:inline-block;font-family:Hiragino Kaku Gothic Std,Hiragino Sans,sans-serif;font-size:3.2rem;font-weight:800;line-height:1.5;padding:21px 60px;text-decoration:none;transition:transform .3s ease-out,box-shadow .3s ease-out}.hero__button:hover{box-shadow:0 8px 15px rgba(0,0,0,.3);transform:translateY(-2px)}.hero__image{flex:1}.hero__image img{border-radius:8px;height:auto;width:100%}.section{width:100%}.section__inner{margin:0 auto;max-width:1440px;padding:0 20px;width:100%}.section__title{color:#333;font-family:Hiragino Kaku Gothic Std,Hiragino Sans,sans-serif;font-size:4.8rem;font-weight:800;letter-spacing:.05em;line-height:1.333;text-align:center}.section__title--white{color:#fff}.section__title--gradient{background:linear-gradient(90deg,#ea66c9,#2828e8);-webkit-background-clip:text;display:block;margin-left:auto;margin-right:auto;width:-moz-fit-content;width:fit-content;-webkit-text-fill-color:transparent;background-clip:text}.section--features{background-color:#f5f5f5;padding:120px 0 60px;width:100%}.section--realizations{background-color:#f5f5f5;padding:56px 0;width:100%}.realizations{align-items:center;display:flex;flex-wrap:wrap;gap:40px;justify-content:center;margin:0 auto;max-width:1134px}.realization-card{align-items:center;display:flex;flex-direction:column;gap:24px;width:338px}.realization-card__image{height:261px;width:209px}.realization-card__text{color:#333;font-size:2.4rem;line-height:1.333;text-align:center;width:100%}.section--strengths{background-color:#d788dc;padding:120px 0 60px;width:100%}.section--strength-cards{background-color:#d788dc;padding:0 0 56px;width:100%}.strength-cards{flex-wrap:wrap;gap:24px;margin:0 auto;max-width:1440px;padding:0 20px}.strength-card,.strength-cards{display:flex;justify-content:center}.strength-card{align-items:center;background-color:#fff;border-radius:24px;gap:32px;max-width:800px;overflow:hidden;padding:32px;width:100%}.strength-card__content{align-items:center;display:flex;flex:1;flex-direction:column;gap:16px;max-width:342px}.strength-card__number{color:#ea66c9;font-family:Barlow Condensed,sans-serif;font-size:7.2rem;font-weight:700;line-height:1;text-align:center}.strength-card__title{color:#333;font-family:Hiragino Kaku Gothic Std,Hiragino Sans,sans-serif;font-size:3.2rem;font-weight:800;line-height:1.2;text-align:center}.strength-card__description{color:#666;font-size:1.6rem;line-height:1.5;text-align:center}.strength-card__image{flex-shrink:0;height:255px;width:340px}.section--usecases{background-color:#fff;padding:120px 0 60px;width:100%}.section--usecase-cards{background-color:#fff;padding:0 20px 120px;width:100%}.usecase-cards{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;margin:0 auto;max-width:1440px}.usecase-card{align-items:center;display:flex;gap:24px;max-width:777px;width:100%}.usecase-card__content{display:flex;flex-direction:column;gap:16px;width:416px}.usecase-card__label{background:linear-gradient(90deg,#ea66c9,#2828e8);-webkit-background-clip:text;display:block;font-family:Barlow Condensed,sans-serif;font-size:5.6rem;font-weight:700;line-height:1.167;width:-moz-fit-content;width:fit-content;-webkit-text-fill-color:transparent;background-clip:text}.usecase-card__title{color:#333;font-family:Hiragino Kaku Gothic Std,Hiragino Sans,sans-serif;font-size:2.4rem;font-weight:800;line-height:1.333}.usecase-card__description{color:#333;font-size:1.6rem;line-height:1.5;width:325px}.usecase-card__image{border-radius:24px;flex-shrink:0;height:217px;overflow:hidden;width:336px}.usecase-card__image img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.usecase-card__image--contain img{background-color:#fff;-o-object-fit:contain;object-fit:contain}.section--pricing{background-color:#cbcbcb;padding:120px 0;width:100%}.pricing{background-color:#fff;border:2px solid #333;border-radius:32px;margin:56px auto 0;max-width:800px;padding:48px 40px;text-align:center}.pricing__label{color:#000;font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,sans-serif;font-size:2.4rem;font-weight:300;line-height:1.33;margin-bottom:12px}.pricing__price{color:#000;font-family:Hiragino Kaku Gothic Std,Hiragino Sans,sans-serif;font-size:4.8rem;font-weight:800;letter-spacing:.05em;line-height:1.33;margin-bottom:24px}.pricing__description{color:#333;font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,sans-serif;font-size:1.6rem;font-weight:300;line-height:1.5;margin-bottom:36px}.pricing__button{background:linear-gradient(90deg,#ea66c9,#2828e8);border:none;border-radius:58px;box-shadow:0 4px 4px rgba(0,0,0,.25);color:#fff;display:inline-block;font-family:Hiragino Kaku Gothic Std,Hiragino Sans,sans-serif;font-size:3.2rem;font-weight:800;line-height:1.5;padding:15px 50px;text-decoration:none;transition:transform .3s ease-out,box-shadow .3s ease-out}.pricing__button:hover{box-shadow:0 6px 12px rgba(0,0,0,.3);transform:translateY(-2px)}.web-header{background-color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.1);left:0;position:fixed;right:0;top:0;z-index:1000}.web-header__inner{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1440px;padding:16px 24px}.web-header__logo{cursor:pointer;display:block;height:40px;position:relative;text-decoration:none;width:180px}.header-logo{height:100%;left:0;-o-object-fit:contain;object-fit:contain;position:absolute;top:0;width:100%}.web-header__nav{margin-left:auto;margin-right:40px}.web-list-template{display:flex;gap:32px;list-style:none;margin:0;padding:0}.web-list-template__item{position:relative}.web-list-template__link{color:#333;display:block;font-size:1.6rem;font-weight:500;padding:8px 0;position:relative;text-decoration:none}.web-list-template__text{transition:opacity .3s ease-out}.web-list-template__text--default{opacity:1}.web-list-template__text--hover{color:#ea66c9;left:0;opacity:0;position:absolute;top:8px}.web-list-template__link:hover .web-list-template__text--default{opacity:0}.web-list-template__link:hover .web-list-template__text--hover{opacity:1}.inquiry-button{background:none;border:none;border-radius:24px;cursor:pointer;overflow:hidden;padding:12px 32px;position:relative}.inquiry-button__bg{border-radius:24px;bottom:0;left:0;position:absolute;right:0;top:0;transition:opacity .3s ease-out}.inquiry-button__bg--default{background:linear-gradient(90deg,#ea66c9,#2828e8);opacity:1}.inquiry-button__bg--hover{background:linear-gradient(90deg,#2828e8,#ea66c9);opacity:0}.inquiry-button:hover .inquiry-button__bg--default{opacity:0}.inquiry-button:hover .inquiry-button__bg--hover{opacity:1}.inquiry-button__text{color:#fff;font-size:1.6rem;font-weight:700;position:relative;z-index:1}.hamburger-menu{background:none;border:none;cursor:pointer;display:none;flex-direction:column;height:20px;justify-content:space-between;padding:0;width:24px;z-index:1001}.web-list-template__item--mobile-only{display:none}.hamburger-menu__line{background-color:#333;border-radius:2px;height:2px;transition:all .3s ease-out;width:100%}.hamburger-menu[aria-expanded=true] .hamburger-menu__line:first-child{transform:translateY(9px) rotate(45deg)}.hamburger-menu[aria-expanded=true] .hamburger-menu__line:nth-child(2){opacity:0}.hamburger-menu[aria-expanded=true] .hamburger-menu__line:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.section--service-flow{background-color:#fff;padding:120px 0;width:100%}.service-flow{display:grid;gap:40px;grid-template-columns:repeat(3,1fr);margin:56px auto 0;max-width:1200px}.service-flow__step{background-color:#fff;border-radius:8px;padding:40px 30px;text-align:center;transition:transform .3s ease-out,box-shadow .3s ease-out}.service-flow__step:hover{box-shadow:0 8px 20px rgba(0,0,0,.1);transform:translateY(-4px)}.service-flow__icon{align-items:center;background-color:#fff;border:2px solid #333;border-radius:50%;display:flex;height:120px;justify-content:center;margin:0 auto 24px;padding:24px;position:relative;width:120px}.service-flow__icon img{height:100%;-o-object-fit:contain;object-fit:contain;width:100%}.service-flow__step-number{background:linear-gradient(180deg,#2828e8 5%,#ea66c9 95%);-webkit-background-clip:text;display:block;font-family:Barlow Condensed,sans-serif;font-size:5.6rem;font-weight:700;line-height:1.167;margin-bottom:16px;width:-moz-fit-content;width:fit-content;-webkit-text-fill-color:transparent;background-clip:text}.service-flow__step-title{color:#333;font-family:Hiragino Kaku Gothic Std,Hiragino Sans,sans-serif;font-size:2.4rem;font-weight:800;line-height:1.33;margin-bottom:16px}.service-flow__step-description{color:#666;font-size:1.6rem;font-weight:300;line-height:1.6;margin:0}.section--faq{background-color:#f5f5f5;padding:120px 0;width:100%}.faq-list{display:flex;flex-direction:column;gap:16px;margin:56px auto 0;max-width:800px}.faq-item{background-color:#fff;border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.08);overflow:hidden}.faq-item__button{align-items:center;background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;padding:24px;text-align:left;width:100%}.faq-item__question{color:#333;flex:1;font-size:1.8rem;font-weight:700}.faq-item__icon{flex-shrink:0;height:24px;margin-left:16px;position:relative;width:24px}.faq-item__icon:after,.faq-item__icon:before{background-color:#ea66c9;content:"";left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:transform .4s cubic-bezier(.4,0,.2,1)}.faq-item__icon:before{height:2px;width:20px}.faq-item__icon:after{height:20px;width:2px}.faq-item[data-faq-state=open] .faq-item__icon:after{transform:translate(-50%,-50%) rotate(90deg)}.faq-item__answer{color:#666;font-size:1.6rem;line-height:1.5;max-height:0;opacity:0;overflow:hidden;padding:0 24px;transition:max-height .5s cubic-bezier(.4,0,.2,1),opacity .5s cubic-bezier(.4,0,.2,1),padding .5s cubic-bezier(.4,0,.2,1)}.faq-item[data-faq-state=open] .faq-item__answer{max-height:500px;opacity:1;padding-bottom:24px}.section--inquiry{background-color:#fff;padding:120px 0;width:100%}.inquiry-form{margin:56px auto 0;max-width:600px}.form-group{margin-bottom:24px}.form-label{color:#333;display:block;font-size:1.6rem;font-weight:700;margin-bottom:8px}.required{color:#ea66c9;margin-left:4px}.form-input,.form-select,.form-textarea{border:1px solid #cbcbcb;border-radius:8px;font-family:inherit;font-size:1.6rem;padding:12px 16px;transition:border-color .2s ease;width:100%}.form-input::-moz-placeholder,.form-textarea::-moz-placeholder{color:#999;opacity:1}.form-input::placeholder,.form-textarea::placeholder{color:#999;opacity:1}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#ea66c9;outline:none}.form-textarea{resize:vertical}.form-checkbox{align-items:center;display:flex;gap:8px;margin:32px 0}.form-checkbox input[type=checkbox]{cursor:pointer;height:20px;width:20px}.form-checkbox label{color:#333;cursor:pointer;font-size:1.4rem}.form-checkbox label a{color:#2828e8;text-decoration:underline;transition:color .3s ease}.form-checkbox label a:hover{color:#ea66c9}.form-submit{background:linear-gradient(90deg,#ea66c9,#2828e8);border:none;border-radius:24px;color:#fff;cursor:pointer;font-size:1.8rem;font-weight:700;padding:16px 32px;transition:opacity .3s ease;width:100%}.form-submit:disabled{background:#cbcbcb;cursor:not-allowed}.form-submit:not(:disabled):hover{opacity:.9}.footer{background-color:#e8e8e8;padding:48px 0 24px;width:100%}.footer__inner{justify-content:flex-start;margin:0 auto;max-width:1440px;padding:0 24px;position:relative}.footer__inner,.footer__left{align-items:flex-start;display:flex}.footer__left{flex-direction:column;gap:12px}.footer__center{left:50%;position:absolute;transform:translateX(-50%)}.button-scroll{align-items:center;background:none;border:2px solid #333;border-radius:50%;color:#333;cursor:pointer;display:flex;height:60px;justify-content:center;transition:background-color .3s ease;width:60px}.button-scroll:hover{background-color:rgba(0,0,0,.05)}.button-scroll__icon{border-left:3px solid #333;border-top:3px solid #333;display:block;height:16px;margin-top:4px;transform:rotate(45deg);width:16px}.tarvo-site{display:inline-block;transition:opacity .3s ease-out}.tarvo-site:hover{opacity:.7}.tarvo-logo{height:auto;width:150px}.footer__company-info{color:#666;font-size:1.2rem;font-style:normal;line-height:1.6;text-align:left}.footer__copyright{color:#666;font-size:1.2rem;margin-top:24px;text-align:center}@media (max-width:1400px){.strength-cards{padding:0 40px}.section--usecase-cards{padding:0 40px 120px}}@media (max-width:1200px){.strength-cards{padding:0 30px}.section--usecase-cards{padding:0 30px 120px}}@media (max-width:1024px){.hero{padding:60px 0}.hero__inner{gap:40px}.hero__title{font-size:3.6rem}.hero__subtitle{font-size:2rem}.section--service-flow{padding:80px 0}.service-flow{gap:30px;grid-template-columns:repeat(2,1fr)}.service-flow__step{padding:33px 25px}.service-flow__icon{height:100px;margin-bottom:20px;padding:20px;width:100px}.service-flow__step-number{font-size:4rem;margin-bottom:13px}.service-flow__step-title{font-size:2rem;margin-bottom:13px}.service-flow__step-description{font-size:1.35rem}}@media (max-width:800px){html{font-size:55%}.br-mobile{display:block}.web-header__inner{position:relative}.web-header__logo{height:31px;width:140px}.hamburger-menu{display:flex!important;position:absolute;right:24px;top:50%;transform:translateY(-50%)}.web-header__nav{background-color:#fff;box-shadow:0 4px 8px rgba(0,0,0,.1);left:auto;margin-left:0!important;margin-right:0!important;max-height:0;overflow:hidden;position:absolute;right:0;top:100%;transition:max-height .3s ease-out;width:240px}.web-header__nav.is-open{max-height:500px}.web-list-template{flex-direction:column;gap:0;padding:32px 0!important}.web-list-template__item{padding:0 20px}.web-list-template__item--mobile-only{display:block!important}.web-list-template__link{border-bottom:1px solid #f5f5f5!important;min-height:40px;padding:8px 0 8px 12px!important;position:relative;text-align:left}.web-list-template__text--default,.web-list-template__text--hover{left:12px!important;position:absolute!important;top:8px!important}.inquiry-button{display:none}.hero{padding:40px 0}.hero__inner{flex-direction:column;gap:30px}.hero__text-wrapper{margin-bottom:40px}.hero__button-wrapper{margin-top:20px}.hero__title{font-size:2.8rem}.hero__subtitle{font-size:1.6rem}.hero__button{font-size:2.4rem;padding:15px 40px}.section__inner{padding:0 15px}.section--faq,.section--features,.section--strengths,.section--usecases{padding:60px 0 30px}.section--pricing{padding:60px 0}.pricing{padding:16px}.pricing__label{font-size:1.8rem;margin-bottom:8px}.pricing__price{font-size:3.6rem;margin-bottom:16px}.pricing__description{font-size:1.4rem;margin-bottom:24px}.pricing__button{font-size:2.4rem;padding:12px 40px}.section--realizations,.section--strength-cards{padding:28px 0}.section--usecase-cards{padding:0 15px 60px}.section__title{font-size:4.4rem}.realizations{gap:30px}.realization-card{max-width:300px;width:100%}.realization-card__text{font-size:2rem}.strength-cards{padding:0 15px}.strength-card{flex-direction:column;gap:12px;max-width:500px;padding:24px;width:100%}.strength-card__content{max-width:100%}.strength-card__number{font-size:6.5rem}.strength-card__title{font-size:2.4rem}.strength-card__image{height:auto;width:100%}.usecase-cards{gap:40px}.usecase-card{flex-direction:column;max-width:500px;width:100%}.usecase-card__content{width:100%}.usecase-card__label{font-size:3.2rem}.usecase-card__title{font-size:2rem}.usecase-card__description{width:100%}.usecase-card__image{height:200px;width:100%}}@media (max-width:768px){.section--service-flow{padding:60px 0}.service-flow{gap:24px;grid-template-columns:1fr;justify-items:center}.service-flow__step{max-width:400px;padding:28px 21px;width:100%}.service-flow__icon{height:84px;margin-bottom:17px;padding:17px;width:84px}.service-flow__step-number{font-size:3.36rem;margin-bottom:11px}.service-flow__step-title{font-size:1.68rem;margin-bottom:11px}.service-flow__step-description{font-size:1.12rem}.footer__inner{flex-direction:column;gap:32px}.footer__inner,.footer__left{align-items:center}.footer__center{order:-1;position:static;transform:none}.footer__company-info{text-align:center}}@media (max-width:480px){.section__title{font-size:3.2rem}.realization-card__text{font-size:1.8rem}.strength-card{padding:16px}.strength-card__number{font-size:5.5rem}.strength-card__title{font-size:2rem}.usecase-card__label{font-size:2.8rem}}