@charset "UTF-8";
/*!
global > color
------------------------------
*/
/*!
global > font
------------------------------
*/:root{--font-family-base:$font-main}

/*!
foundation > reset
------------------------------
*/abbr,address,article,aside,audio,b,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,main,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*!
foundation > base
------------------------------
*/body,html{font-size:16px;line-height:1.231;font-family:var(--font-family-base);*font-size:small;*font:x-small;width:100%;height:auto;color:#555;-webkit-text-size-adjust:none;-ms-font-feature-settings:"normal";font-weight:500}#wrapper{width:100%;overflow:hidden}a{text-decoration:none}a:hover{text-decoration:none}img{vertical-align:top}button,input,select,textarea{font:99% var(--font-family-base)}table{font-size:inherit;font:100%}code,kbd,pre,samp,tt{font-family:monospace;*font-size:108%;line-height:100%}*{-webkit-box-sizing:border-box;box-sizing:border-box}a{color:inherit}a:hover{-webkit-transition:0.5s;transition:0.5s}@media screen and (min-width:769px){a[href^="tel:"]{pointer-events:none}}button{color:inherit;cursor:pointer}button:hover{opacity:0.7;-webkit-transition:0.5s;transition:0.5s}a:focus,button:focus{outline:2px solid #C94D00;outline-offset:2px}img{max-width:100%;width:100%}html{font-size:62.5%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-size:1.6rem;font-weight:400;letter-spacing:0.08em;line-height:1.75;color:#555;-webkit-font-feature-settings:"palt";font-feature-settings:"palt";background-color:#f6f6f1}@media screen and (max-width:768px){body{font-size:1.4rem}}body.add_overray{overflow:hidden}address{font-style:normal}.sp{display:none}@media screen and (max-width:768px){.sp{display:block}}.pc{display:block}@media screen and (max-width:768px){.pc{display:none}}#wrapper{margin:0 auto;position:relative}

/*!
utility > utility
------------------------------
*/
/*!
animation > fadein
------------------------------
*/.fadeIn{opacity:0;-webkit-transition-duration:1100ms;transition-duration:1100ms;-webkit-transition-property:opacity,color,-webkit-transform,-webkit-filter;transition-property:opacity,color,-webkit-transform,-webkit-filter;transition-property:opacity,transform,filter,color;transition-property:opacity,transform,filter,color,-webkit-transform,-webkit-filter}.fadeIn-up{-webkit-transform:translate(0,50px);transform:translate(0,50px)}.fadeIn-down{-webkit-transform:translate(0,-50px);transform:translate(0,-50px)}.fadeIn-left{-webkit-transform:translate(-50px,0);transform:translate(-50px,0)}.fadeIn-right{-webkit-transform:translate(50px,0);transform:translate(50px,0)}.fadeIn-soft{-webkit-transform:translate(0,24px) scale(0.98);transform:translate(0,24px) scale(0.98);-webkit-filter:blur(6px);filter:blur(6px)}.fadeIn-accent{color:#C94D00;-webkit-transition-delay:0.2s;transition-delay:0.2s}.fadeIn-delay-1{-webkit-transition-delay:0.1s;transition-delay:0.1s}.fadeIn-delay-2{-webkit-transition-delay:0.2s;transition-delay:0.2s}.fadeIn-delay-3{-webkit-transition-delay:0.3s;transition-delay:0.3s}.fadeIn-delay-4{-webkit-transition-delay:0.4s;transition-delay:0.4s}.fadeIn-delay-5{-webkit-transition-delay:0.5s;transition-delay:0.5s}.fadeIn.scrollin{opacity:1;-webkit-transform:translate(0,0);transform:translate(0,0);-webkit-filter:blur(0);filter:blur(0)}.revealClip{clip-path:inset(0 100% 0 0);-webkit-transition:clip-path 1.2s ease;transition:clip-path 1.2s ease}.revealClip.scrollin{clip-path:inset(0 0 0 0)}

/*!
animation > text-animation
------------------------------
*/#loader-bg{background:#f6f6f1;position:fixed;z-index:9999999999;width:100vw;height:100vh!important;top:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.loading-dots{position:absolute;top:50%;left:50%;translate:-50% -50%;display:-webkit-box;display:-ms-flexbox;display:flex;gap:10px}.loading-dots span{width:10px;height:10px;border-radius:50%;background:#C94D00;opacity:0.3;-webkit-animation:loadingDot 1.2s ease-in-out infinite;animation:loadingDot 1.2s ease-in-out infinite}.loading-dots span:nth-child(2){-webkit-animation-delay:0.2s;animation-delay:0.2s}.loading-dots span:nth-child(3){-webkit-animation-delay:0.4s;animation-delay:0.4s}@-webkit-keyframes loadingDot{0%,to{-webkit-transform:translateY(0);transform:translateY(0);opacity:0.3}50%{-webkit-transform:translateY(-6px);transform:translateY(-6px);opacity:1}}@keyframes loadingDot{0%,to{-webkit-transform:translateY(0);transform:translateY(0);opacity:0.3}50%{-webkit-transform:translateY(-6px);transform:translateY(-6px);opacity:1}}@media (prefers-reduced-motion:reduce){.loading-dots span{-webkit-animation:none;animation:none}}
/*!
component > title
------------------------------
*/.c-title-simple{font-size:110%;margin-bottom:0.75em;border-left:3px solid #fff;padding-left:0.75em;line-height:1.5}

/*!
layout > container
------------------------------
*/.l-container,.l-container-center,.l-container-l,.l-container-m,.l-container-s{width:92%;margin:auto}.l-container-l{max-width:1200px}.l-container-m{max-width:1000px}.l-container-s{max-width:860px}.l-container-center{text-align:center}.l-container-right{text-align:right;margin:auto 0 auto auto}

/*!
layout > header
------------------------------
*/header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;position:fixed;width:100%;height:100px;z-index:10000;-webkit-transition:0.5s;transition:0.5s;top:0;left:0;padding:0 4%;font-family:#555}@media screen and (max-width:768px){header{height:60px;padding-top:20px}}#gnav_btn{position:relative;z-index:10000;display:none;width:60px;height:6px;-webkit-transition:0.3s;transition:0.3s;cursor:none}@media screen and (max-width:768px){#gnav_btn{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}}#gnav_btn span{display:inline-block;-webkit-transition:all 0.4s;transition:all 0.4s;width:100%;height:1px;background-color:#2b2b2b}#gnav_btn.open span{background:#fff}#gnav_btn.open span:first-of-type{-webkit-transform:translateY(3px) rotate(-8deg);transform:translateY(3px) rotate(-8deg)}#gnav_btn.open span:nth-of-type(2){-webkit-transform:translateY(-2px) rotate(8deg);transform:translateY(-2px) rotate(8deg)}nav{display:none;position:fixed;top:0;left:0;width:100%;z-index:1000;overflow-y:scroll;color:#fff;height:100%}@media screen and (max-width:768px){nav{bottom:0}}nav:before{content:"";width:100%;height:100%;background:rgba(0,0,0,0.9);display:block;position:absolute;left:0;top:0}nav span{position:absolute;bottom:24px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);width:100%;text-align:center;font-size:1rem;letter-spacing:0.03em;line-height:1}.header-nav{position:relative;z-index:1;width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:3rem;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center}.header-nav li{font-size:1.8rem;letter-spacing:0.03em;line-height:1}.header-nav--pc{display:-webkit-box;display:-ms-flexbox;display:flex;gap:16px}.header-nav--pc li{position:relative;padding:0 2px}.header-nav--pc li a{padding:2px 0}@media screen and (max-width:768px){.header-nav--pc{display:none}}.header-logo{position:relative;z-index:10000;font-size:1.6rem;letter-spacing:0.12em;text-transform:uppercase;color:#555}@media screen and (max-width:768px){.header-logo{font-size:1.3rem}}

/*!
layout > footer
------------------------------
*/footer{background-color:#555;width:100%;margin:0 auto;padding:45px 0}@media screen and (max-width:859px){footer{padding:30px 0x}}.footer-copy{text-align:center}.footer-copy aside{font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic","Meiryo",sans-serif;color:#f6f6f1;font-size:1.5rem;letter-spacing:0}@media screen and (max-width:768px){.footer-copy aside{font-size:1rem}}

/*!
page > top
------------------------------
*/.top-container{position:relative;width:100%;min-height:100vh}.section{padding:120px 0}@media screen and (max-width:768px){.section{padding:88px 0}}.section-head{margin-bottom:40px;text-align:left}.about .section-head{text-align:center;margin-bottom:64px}.about .section-sub{color:#C94D00}.about .section-title{color:#555}.section-sub{text-transform:uppercase;letter-spacing:0.18em;color:#C94D00;font-size:1.2rem;margin-bottom:8px}.section-title{font-size:3.2rem;line-height:1.3}@media screen and (max-width:768px){.section-title{font-size:2.4rem}}.fv{position:relative;min-height:100vh;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#f6f6f1;overflow:hidden}.fv-slides{position:absolute;inset:0;z-index:0}.fv-slide{position:absolute;inset:0;background:#111 no-repeat center center/cover;opacity:0;-webkit-transition:opacity 1.4s ease;transition:opacity 1.4s ease;will-change:opacity}.fv-slide.is-active{opacity:1}.fv-overlay{position:absolute;inset:0;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0.35)),to(rgba(0,0,0,0.65)));background:linear-gradient(180deg,rgba(0,0,0,0.35),rgba(0,0,0,0.65));z-index:1}.fv-content{position:relative;z-index:2;padding:160px 0 120px}.fv-eyebrow{font-size:1.2rem;letter-spacing:0.25em;text-transform:uppercase;margin-bottom:20px}.fv-title{font-size:4.6rem;line-height:1.25;letter-spacing:0.06em;margin-bottom:20px}@media screen and (max-width:768px){.fv-title{font-size:3.2rem}}.fv-sub{font-size:1.4rem;letter-spacing:0.18em;margin-bottom:32px}.fv-cta{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:8px 20px;border:1px solid #f6f6f1;color:#f6f6f1;-webkit-transition:0.4s;transition:0.4s}.fv-cta:hover{background:#f6f6f1;color:#555}.fv-scroll{position:absolute;right:4%;bottom:24px;z-index:2;font-size:1rem;letter-spacing:0.2em;-webkit-writing-mode:vertical-rl;-ms-writing-mode:tb-rl;writing-mode:vertical-rl;opacity:0.8}.fv-scroll:after{content:"";display:block;width:1px;height:64px;margin:12px auto 0;background:#f6f6f1}@media screen and (max-width:768px){.fv-scroll{display:none}}.lead{padding:160px 0 220px;background:#C94D00;color:#f6f6f1;text-align:center;min-height:100vh;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;overflow:hidden}@media screen and (max-width:768px){.lead{padding:130px 0 180px}}.lead .fadeIn-accent{color:#C94D00}.lead .fadeIn-accent.scrollin{color:#f6f6f1!important}.lead:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:140px;background-repeat:no-repeat;background-size:200% 100%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 140' preserveAspectRatio='none'%3E%3Cpath d='M0,80 C240,140 480,20 720,80 C960,140 1200,20 1440,80 L1440,140 L0,140 Z' fill='%23f6f6f1'/%3E%3C/svg%3E");pointer-events:none;-webkit-animation:leadWave 14s linear infinite;animation:leadWave 14s linear infinite}@-webkit-keyframes leadWave{0%{background-position:0 0}to{background-position:100% 0}}@keyframes leadWave{0%{background-position:0 0}to{background-position:100% 0}}.lead-catch{font-size:3.6rem;letter-spacing:0.12em;margin:0 auto 40px;line-height:1.5;color:#f6f6f1;border-left:0;padding-left:0;font-weight:700;max-width:720px;text-align:left}@media screen and (max-width:768px){.lead-catch{font-size:2rem;letter-spacing:0.06em;line-height:1.4}}.lead-text{max-width:720px;margin:0 auto;text-align:left}.lead-text p{margin-bottom:18px;font-size:1.8rem;line-height:2;letter-spacing:0.08em;font-weight:600}@media screen and (max-width:768px){.lead-text p{font-size:1.4rem;line-height:1.9;font-weight:500}}.lead-text p:last-child{margin-bottom:0}.about{background:#f6f6f1;color:#555;min-height:90vh;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:120px 0;position:relative;overflow:hidden}.about .fadeIn-accent,.services .fadeIn-accent{color:#C94D00}.about .fadeIn-accent.scrollin,.services .fadeIn-accent.scrollin{color:#555}.about-cards{display:-ms-grid;display:grid;-ms-grid-columns:1fr;grid-template-columns:1fr;gap:56px;text-align:center}@media screen and (max-width:768px){.about-cards{gap:40px}}.about-card{background:transparent;padding:0;border:0;-webkit-box-shadow:none;box-shadow:none}.about-label{text-transform:uppercase;letter-spacing:0.32em;color:#C94D00;margin-bottom:18px;font-size:1.3rem}.about-text{font-size:2.8rem;line-height:1.6;font-weight:600;letter-spacing:0.08em}@media screen and (max-width:768px){.about-text{font-size:2.2rem}}.service-cards{display:-ms-grid;display:grid;-ms-grid-columns:1fr;grid-template-columns:1fr;gap:64px}.service-card{display:-ms-grid;display:grid;-ms-grid-columns:minmax(0,1.1fr) 40px minmax(0,1fr);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:transparent;padding:0;border:0}@media screen and (max-width:768px){.service-card{-ms-grid-columns:1fr;grid-template-columns:1fr;gap:24px}}.service-card:nth-child(2n) .service-media{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.service-card:nth-child(2n) .service-body{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.service-card--reverse .service-media{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.service-card--reverse .service-body{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}@media screen and (max-width:768px){.service-card--reverse .service-media{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.service-card--reverse .service-body{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}}.service-media{width:100%;aspect-ratio:16/10;border-radius:18px;background:#111 no-repeat center center/cover;-webkit-box-shadow:0 18px 36px rgba(0,0,0,0.12);box-shadow:0 18px 36px rgba(0,0,0,0.12)}.service-media--top{background-position:0 25%}.service-body h3{font-size:2.6rem;margin-bottom:16px;letter-spacing:0.06em;border-left:4px solid #C94D00;padding-left:14px}@media screen and (max-width:768px){.service-body h3{font-size:2rem;margin-bottom:12px}}.service-body p{font-size:1.6rem;line-height:2}@media screen and (max-width:768px){.service-body p{font-size:1.4rem;line-height:1.9}}.works{background:#fdf6ef}.works-list{display:-webkit-box;display:-ms-flexbox;display:flex;gap:16px;list-style:none;padding:0 4% 8px calc((100vw - min(1000px, 92vw)) / 2);margin:0 0 0 calc(50% - 50vw);width:100vw;overflow-x:auto;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;translate:80px 0}@media screen and (max-width:768px){.works-list{translate:16px 0}}.works-list::-webkit-scrollbar{height:6px}.works-list::-webkit-scrollbar-thumb{background:rgba(0,0,0,0.2);border-radius:999px}.work-item{width:clamp(200px,22vw,260px);-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;display:block;text-align:left;background:transparent;border:0;border-radius:0;padding:0;-webkit-box-shadow:none;box-shadow:none;cursor:pointer;-webkit-transition:-webkit-transform 0.3s ease,-webkit-box-shadow 0.3s ease;transition:-webkit-transform 0.3s ease,-webkit-box-shadow 0.3s ease;transition:transform 0.3s ease,box-shadow 0.3s ease;transition:transform 0.3s ease,box-shadow 0.3s ease,-webkit-transform 0.3s ease,-webkit-box-shadow 0.3s ease;scroll-snap-align:start}.work-item:hover{-webkit-transform:translateY(-4px);transform:translateY(-4px);-webkit-box-shadow:none;box-shadow:none}.work-visual{display:block;position:relative;width:100%;aspect-ratio:9/19;margin-bottom:10px}.work-phone{display:block;width:100%;aspect-ratio:9/19;position:relative;z-index:1}.work-phone:after{content:"";position:absolute;inset:0;background:url(../img/top/iphone-mock.png) no-repeat center center/contain;z-index:1;pointer-events:none}.work-phone__screen{position:absolute;top:18px;left:11px;right:11px;bottom:18px;border-radius:24px;background:#111 no-repeat center center/cover;z-index:0}.work-title{display:block;font-size:1.7rem;margin-bottom:6px;color:#C94D00}.work-meta{display:block;font-size:1.2rem;letter-spacing:0.08em;color:#555;opacity:0.8}.member-list{display:-ms-grid;display:grid;-ms-grid-columns:1fr 24px 1fr 24px 1fr;grid-template-columns:repeat(3,1fr);gap:24px}@media screen and (max-width:768px){.member-list{-ms-grid-columns:(1fr)[2];grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:399px){.member-list{-ms-grid-columns:1fr;grid-template-columns:1fr}}.members-lead{font-size:1.4rem;letter-spacing:0.2em;color:#C94D00;margin-bottom:24px}.member-card{background:#f6f6f1;padding:0;border:0;text-align:left;display:block;width:100%;cursor:pointer;-webkit-transition:-webkit-transform 0.3s ease;transition:-webkit-transform 0.3s ease;transition:transform 0.3s ease;transition:transform 0.3s ease,-webkit-transform 0.3s ease}.member-card:hover{-webkit-transform:translateY(-4px);transform:translateY(-4px)}.member-photo{display:block;width:100%;aspect-ratio:4/3;border-radius:12px;background:#e4d9ce no-repeat center center/cover;margin-bottom:12px}.member-name{font-size:1.8rem;margin-bottom:4px;display:block}.member-role{font-size:1.2rem;color:#C94D00;letter-spacing:0.12em;display:block;text-transform:uppercase}.member-modal{position:fixed;inset:0;z-index:10050;display:none}.member-modal.is-open{display:block}.member-modal__overlay{position:absolute;inset:0;background:rgba(0,0,0,0.6)}.member-modal__body{position:relative;z-index:1;background:#f6f6f1;width:min(880px,92%);margin:10vh auto 0;border-radius:16px;padding:32px;-webkit-box-shadow:0 20px 50px rgba(0,0,0,0.25);box-shadow:0 20px 50px rgba(0,0,0,0.25);max-height:80vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.member-modal__close{position:absolute;right:16px;top:12px;font-size:2.2rem;border:0;background:transparent}.member-modal__content{display:-ms-grid;display:grid;-ms-grid-columns:240px 24px 1fr;grid-template-columns:240px 1fr;gap:24px}@media screen and (max-width:768px){.member-modal__content{-ms-grid-columns:1fr;grid-template-columns:1fr}}.member-modal__photo{width:100%;aspect-ratio:3/4;border-radius:12px;background:#e4d9ce;-o-object-fit:cover;object-fit:cover;display:block}@media screen and (max-width:768px){.member-modal__photo{aspect-ratio:1/1}}.member-modal__name{font-size:2.4rem;margin-bottom:8px}.member-modal__furigana{font-size:1.3rem;letter-spacing:0.08em;margin-bottom:16px;opacity:0.75}.member-modal__role{color:#C94D00;letter-spacing:0.16em;text-transform:uppercase;margin-bottom:8px}.member-modal__profile{font-size:1.5rem;line-height:1.9}body.is-modal-open{overflow:hidden}.company-table{display:-ms-grid;display:grid;gap:16px}.company-table div{display:-ms-grid;display:grid;-ms-grid-columns:140px 16px 1fr;grid-template-columns:140px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid rgba(0,0,0,0.08)}@media screen and (max-width:768px){.company-table div{-ms-grid-columns:1fr;grid-template-columns:1fr}}.company-table dt{font-weight:600}.company-table dd{margin:0}.contact{background:#555;color:#f6f6f1;text-align:center}.contact-text{margin-bottom:24px}.contact-cta{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:12px 28px;border:1px solid #f6f6f1;color:#f6f6f1;background:transparent;-webkit-transition:0.4s;transition:0.4s}.contact-cta:hover{background:#f6f6f1;color:#555}