@import url("vendor/destyle.min.css") layer(reset);@layer reset, foundation, layout, component, project, utility;@font-face{font-display:swap;font-family:Noto Sans JP;font-style:normal;font-weight:400;src:url(../font/noto-sans-jp-v56-japanese_latin-regular.woff2) format("woff2")}@font-face{font-display:swap;font-family:Noto Sans JP;font-style:normal;font-weight:500;src:url(../font/noto-sans-jp-v56-japanese_latin-500.woff2) format("woff2")}@font-face{font-display:swap;font-family:Noto Sans JP;font-style:normal;font-weight:700;src:url(../font/noto-sans-jp-v56-japanese_latin-700.woff2) format("woff2")}@font-face{font-display:swap;font-family:Barlow;font-style:normal;font-weight:400;src:url(../font/barlow-v13-latin-regular.woff2) format("woff2")}@font-face{font-display:swap;font-family:Barlow;font-style:normal;font-weight:500;src:url(../font/barlow-v13-latin-500.woff2) format("woff2")}@layer foundation{:root{--base-font-size:16;--base-viewport-min:374;--base-viewport-lg:1280;--base-viewport-max:1440;--rem:calc(1rem/var(--base-font-size));--vw-min:calc(1/var(--base-viewport-min)*100dvw);--vw-lg:calc(1/var(--base-viewport-lg)*100dvw);--vw-max:calc(1/var(--base-viewport-max)*100dvw);--color-black:#252525;--color-white:#fff;--color-purple:#3c317b;--color-purple-dark:#4f5caa;--color-purple-light:#f4f3fa;--color-blue:#6389db;--color-link:#0066ba;--font-jaBase:"Noto Sans JP",sans-serif;--font-enBase:"Barlow",sans-serif;--z-index-back:-1;--z-index-base:0;--z-index-front:1;--z-index-fixed:50;--z-index-header:100;--z-index-follow:150;--z-index-loading:300;--move-time:0.4s;--move-timing:ease-out;--move-base:var(--move-time) var(--move-timing)}html{scroll-behavior:smooth}body{background-color:var(--color-white);color:var(--color-black);font-family:var(--font-jaBase);font-weight:400;min-height:100dvh;width:max(100%,calc(var(--rem)*360))}a{display:inline-block}img{height:auto;max-width:100%;-o-object-fit:cover;object-fit:cover}}@layer layout{.l-window{min-height:100svh;overflow-x:clip;position:relative}.l-header{position:sticky;top:0;z-index:var(--z-index-header);@media screen and (width >= 60rem){position:relative}}.l-footer{position:sticky;top:100%}.l-container{-webkit-box-sizing:unset;box-sizing:unset;margin-inline:auto;padding-inline:5%;width:min(90%,calc(var(--rem)*560));@media screen and (width >= 60rem){width:min(90%,calc(var(--rem)*1080));&.--xl{width:min(90%,calc(var(--rem)*1300))}&.--lg{width:min(90%,calc(var(--rem)*1172))}&.--sm{width:min(90%,calc(var(--rem)*960))}&.--xs{width:min(90%,calc(var(--rem)*640))}}}.l-center{display:grid;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}}@layer component{.c-heading{color:var(--color-purple);display:grid;font-size:calc(var(--rem)*14);font-weight:700;letter-spacing:.1em;line-height:1;row-gap:calc(var(--rem)*8);&:before{background:-webkit-gradient(linear,left top,right top,from(var(--color-purple)),to(var(--color-blue)));background:linear-gradient(90deg,var(--color-purple) 0,var(--color-blue) 100%);-webkit-background-clip:text;content:attr(data-en);display:block;width:-webkit-max-content;width:-moz-max-content;width:max-content;-webkit-text-fill-color:transparent;color:transparent;font-family:var(--font-enBase);font-size:calc(var(--rem)*40);font-weight:400;letter-spacing:.1em;line-height:1;text-transform:uppercase}&.-white{color:var(--color-white);&:before{background:initial;-webkit-background-clip:initial;-webkit-text-fill-color:initial;color:var(--color-white)}}&.-center{justify-items:center}@media screen and (width >= 60rem){font-size:calc(var(--rem)*16);row-gap:calc(var(--rem)*16);&:before{font-size:calc(var(--rem)*56)}}}.c-subHeading{position:relative;span{background-color:var(--color-white);color:var(--color-purple);display:inline-block;font-size:calc(var(--rem)*18);font-weight:700;letter-spacing:.1em;line-height:1;padding-right:calc(var(--rem)*10)}&:before{background-color:rgba(157,151,188,.5);content:"";height:1px;left:0;position:absolute;top:50%;width:100%;z-index:var(--z-index-back)}@media screen and (width >= 60rem){span{font-size:calc(var(--rem)*24)}}}.c-btn{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:100vmax;font-size:calc(var(--rem)*18);font-weight:500;height:calc(var(--rem)*56);line-height:calc(var(--rem)*22);padding-inline:calc(var(--rem)*24);-webkit-transition:background-color var(--move-time),color var(--move-time);transition:background-color var(--move-time),color var(--move-time);rect{-webkit-transition:fill var(--move-time);transition:fill var(--move-time)}&.-primary{background-color:var(--color-purple);border:2px solid var(--color-white);color:var(--color-white);width:calc(var(--rem)*280)}&.-secondary,&.-white{-webkit-box-sizing:content-box;box-sizing:content-box;width:calc(var(--rem)*192)}&.-secondary,&.-white{border:2px solid var(--color-purple);color:var(--color-purple)}&.-secondary{background-color:var(--color-white)}&.-white{border:2px solid var(--color-white);color:var(--color-white);rect{fill:var(--color-white)}}@media (any-hover:hover){&:hover{&.-primary{background-color:var(--color-white);border-color:var(--color-purple);color:var(--color-purple);rect{fill:var(--color-purple)}}&.-secondary,&.-white{background-color:var(--color-purple);color:var(--color-white);rect{fill:var(--color-white)}}&.-white{border-color:var(--color-purple)}}}@media screen and (width >= 60rem){height:calc(var(--rem)*64);padding-inline:calc(var(--rem)*32);&.-primary{width:calc(var(--rem)*320)}&.-secondary,&.-white{width:calc(var(--rem)*216)}}}.c-bg{background-position:top;background-repeat:repeat-x;height:100%;left:50%;position:absolute;top:0;translate:-50% 0;width:100%;z-index:calc(var(--z-index-back) - 10)}}@layer project{.p-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:calc(var(--rem)*8) calc(var(--rem)*10);-webkit-transition:background-color var(--move-base);transition:background-color var(--move-base);&.is-scrolled{background-color:hsla(0,0%,100%,.7)}.p-header_logo{img{-webkit-transition:opacity var(--move-base);transition:opacity var(--move-base);width:calc(var(--rem)*200)}@media (any-hover:hover){&:hover{img{opacity:.7}}}}@media screen and (width >= 60rem){padding:calc(var(--rem)*40) 5% 0;.p-header_logo{padding-top:calc(var(--rem)*7);img{width:calc(var(--rem)*224)}}}}.p-hamburger{aspect-ratio:1/1;background-color:var(--color-white);border-radius:50%;-webkit-box-shadow:0 0 10px rgba(0,0,0,.1);box-shadow:0 0 10px rgba(0,0,0,.1);position:relative;width:calc(var(--rem)*48);.p-hamburger_bar{background-color:var(--color-purple);border-radius:100vmax;height:2.5px;inset:0;margin:auto;position:absolute;-webkit-transition:background-color var(--move-time);transition:background-color var(--move-time);width:calc(var(--rem)*24);&:after,&:before{background-color:var(--color-purple);border-radius:100vmax;content:"";height:100%;position:absolute;-webkit-transition:width var(--move-time),translate var(--move-time),rotate var(--move-time);transition:width var(--move-time),translate var(--move-time),rotate var(--move-time);width:100%}&:before{translate:0 calc(var(--rem)*-7)}&:after{translate:0 calc(var(--rem)*7)}}}.is-gNavActive{.p-hamburger{.p-hamburger_bar{background-color:transparent;&:after,&:before{translate:0 0;width:calc(var(--rem)*22)}&:before{rotate:-45deg}&:after{rotate:45deg}}}}.p-gNav{background-color:var(--color-purple-light);display:grid;height:100%;opacity:0;overflow-y:auto;place-items:center;position:fixed;right:0;top:0;-webkit-transition:visibility var(--move-time),opacity var(--move-time);transition:visibility var(--move-time),opacity var(--move-time);visibility:hidden;width:100%;z-index:var(--z-index-back);.p-gNav_list{display:grid;font-weight:500;gap:calc(var(--rem)*40) calc(var(--rem)*30);line-height:1.1875;place-items:center}.p-gNav_contact{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--color-purple);-webkit-column-gap:calc(var(--rem)*4);-moz-column-gap:calc(var(--rem)*4);column-gap:calc(var(--rem)*4)}@media screen and (width >= 60rem){background-color:var(--color-white);border-radius:100vmax;-webkit-box-shadow:0 4px 30px rgba(0,0,0,.07);box-shadow:0 4px 30px rgba(0,0,0,.07);height:auto;opacity:1;overflow-y:initial;padding:calc(var(--rem)*12) calc(var(--rem)*40);right:5%;top:calc(var(--rem)*40);visibility:initial;width:auto;.p-gNav_list{display:-webkit-box;display:-ms-flexbox;display:flex;line-height:1.75;a{overflow-x:clip;position:relative;-webkit-transition:color var(--move-base);transition:color var(--move-base);&:before{background-color:var(--color-purple);bottom:0;content:"";height:1px;left:0;position:absolute;-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform-origin:right top;transform-origin:right top;-webkit-transition:-webkit-transform var(--move-time);transition:-webkit-transform var(--move-time);transition:transform var(--move-time);transition:transform var(--move-time),-webkit-transform var(--move-time);width:100%}@media (any-hover:hover){&:hover{color:var(--color-purple);&:before{-webkit-transform:scale(1);transform:scale(1);-webkit-transform-origin:left top;transform-origin:left top}}}}}}}.is-gNavActive{.p-gNav{opacity:1;visibility:initial}}.p-footer{background-color:var(--color-purple-light);padding-block:calc(var(--rem)*80) calc(var(--rem)*40);.p-footer_head{display:grid;margin-bottom:calc(var(--rem)*64);row-gap:calc(var(--rem)*64)}.p-footer_info{display:grid;height:-webkit-max-content;height:-moz-max-content;height:max-content;row-gap:calc(var(--rem)*32)}.p-footer_logo{img{-webkit-transition:opacity var(--move-base);transition:opacity var(--move-base)}@media (any-hover:hover){&:hover{img{opacity:.7}}}}.p-footer_address{display:grid;font-size:calc(var(--rem)*18);line-height:1.5}.p-footer_nav{display:grid;height:-webkit-max-content;height:-moz-max-content;height:max-content;row-gap:calc(var(--rem)*40)}.p-footer_list{display:grid;gap:calc(var(--rem)*20) clamp(calc(var(--rem)*20),calc(var(--vw-lg)*30),calc(var(--rem)*30))}.p-footer_item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-column-gap:calc(var(--rem)*4);-moz-column-gap:calc(var(--rem)*4);column-gap:calc(var(--rem)*4);>a{font-size:calc(var(--rem)*18);font-weight:500;line-height:calc(var(--rem)*22);-webkit-transition:opacity var(--move-base);transition:opacity var(--move-base);@media (any-hover:hover){&:hover{opacity:.7}}}}.p-footer_policy{font-size:calc(var(--rem)*14);line-height:1;-webkit-transition:opacity var(--move-base);transition:opacity var(--move-base);@media (any-hover:hover){&:hover{opacity:.7}}}.p-footer_rights{font-size:calc(var(--rem)*14);line-height:1;text-align:center}@media screen and (width >= 60rem){padding-bottom:calc(var(--rem)*24);.p-footer_head{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.p-footer_nav{justify-items:end;row-gap:calc(var(--rem)*32)}.p-footer_list{display:-webkit-box;display:-ms-flexbox;display:flex}}}.p-followBtn{bottom:calc(var(--rem)*8);position:fixed;right:calc(var(--rem)*8);-webkit-transition:translate var(--move-time);transition:translate var(--move-time);z-index:var(--z-index-follow);@media (any-hover:hover){&:hover{translate:0 calc(var(--rem)*-5)}}@media screen and (width >= 60rem){bottom:calc(var(--rem)*20);right:calc(var(--rem)*20);img{width:calc(var(--rem)*165)}}}.p-toTopBtn{bottom:calc(var(--rem)*120);opacity:0;position:fixed;right:calc(var(--rem)*16);-webkit-transition:visibility var(--move-time),opacity var(--move-time);transition:visibility var(--move-time),opacity var(--move-time);visibility:hidden;z-index:var(--z-index-fixed);&.is-scrolled{opacity:1;visibility:visible}a{display:grid;grid-template-columns:calc(var(--rem)*34) 1fr;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--color-purple);-webkit-column-gap:calc(var(--rem)*8);-moz-column-gap:calc(var(--rem)*8);column-gap:calc(var(--rem)*8);font-family:var(--font-enBase);font-size:calc(var(--rem)*14);font-weight:500;line-height:1;text-transform:uppercase;-webkit-writing-mode:vertical-lr;-ms-writing-mode:tb-lr;writing-mode:vertical-lr}@media (any-hover:hover){&:hover{opacity:.6}}@media screen and (width >= 60rem){bottom:calc(var(--rem)*148)}}.p-footBg{margin-bottom:calc(var(--rem)*20);position:relative;&:before{background-color:var(--color-purple-light);bottom:calc(var(--rem)*-20);content:"";height:calc(var(--rem)*190);left:0;position:absolute;width:100%;z-index:calc(var(--z-index-back) - 1)}@media screen and (width >= 60rem){margin-bottom:calc(var(--rem)*40);&:before{bottom:calc(var(--rem)*-40);height:calc(var(--rem)*262)}}}.p-contact{margin-inline:auto;padding-inline:calc(var(--rem)*20);padding-bottom:calc(var(--rem)*64);position:relative;width:min(90%,calc(var(--rem)*560));&:before{background-color:var(--color-white);border-radius:calc(var(--rem)*8);bottom:0;-webkit-box-shadow:0 0 30px rgba(0,0,0,.08);box-shadow:0 0 30px rgba(0,0,0,.08);content:"";height:calc(100% - var(--rem)*22);left:50%;position:absolute;translate:-50% 0;width:100%;z-index:var(--z-index-back)}.p-contact_text{font-size:calc(var(--rem)*18);line-height:2;margin-top:calc(var(--rem)*40)}.p-contact_btn{margin-top:calc(var(--rem)*32)}@media screen and (width >= 37.5rem){.p-contact_text{display:grid;row-gap:calc(var(--rem)*2);text-align:center}}@media screen and (width >= 60rem){width:min(90%,calc(var(--rem)*800));&:before{height:calc(100% - var(--rem)*26)}.p-contact_btn,.p-contact_text{margin-top:calc(var(--rem)*48)}}}.p-title{color:var(--color-purple);font-size:calc(var(--rem)*32);font-weight:700;letter-spacing:.1em;line-height:1;margin-top:calc(var(--rem)*48);padding-top:calc(var(--rem)*24);position:relative;&:before{background-image:url(../img/common/icon-diamond.svg);background-size:contain;content:"";height:calc(var(--rem)*8);left:0;top:calc(var(--rem)*3);width:calc(var(--rem)*8)}&:after,&:before{position:absolute}&:after{background:-webkit-gradient(linear,left top,right top,from(var(--color-purple)),to(var(--color-blue)));background:linear-gradient(90deg,var(--color-purple) 0,var(--color-blue) 100%);-webkit-background-clip:text;content:attr(data-en);left:calc(var(--rem)*12);top:0;-webkit-text-fill-color:transparent;color:transparent;font-family:var(--font-enBase);font-size:calc(var(--rem)*14);font-weight:400;letter-spacing:.1em;line-height:1;text-transform:uppercase}@media screen and (width >= 60rem){font-size:calc(var(--rem)*40);margin-top:calc(var(--rem)*120);padding-top:calc(var(--rem)*32);&:before{height:calc(var(--rem)*12);left:calc(var(--rem)*2);top:calc(var(--rem)*2);width:calc(var(--rem)*12)}&:after{font-size:calc(var(--rem)*16);left:calc(var(--rem)*22)}}}.p-breadcrumb{-webkit-column-gap:calc(var(--rem)*22);-moz-column-gap:calc(var(--rem)*22);column-gap:calc(var(--rem)*22);display:-webkit-box;display:-ms-flexbox;display:flex;font-size:calc(var(--rem)*14);font-weight:500;line-height:1;margin-top:calc(var(--rem)*64);>:not(:first-child){position:relative;&:before{background-image:url(../img/common/icon-chevron.svg);background-repeat:no-repeat;background-size:contain;content:"";height:calc(var(--rem)*10);left:calc(var(--rem)*-14);position:absolute;top:50%;translate:0 -50%;width:calc(var(--rem)*6)}}a{color:var(--color-purple);-webkit-transition:opacity var(--move-time);transition:opacity var(--move-time);@media (any-hover:hover){&:hover{opacity:.6}}}}.p-inPageLink{margin-top:calc(var(--rem)*64);ul{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:calc(var(--rem)*20) clamp(calc(var(--rem)*24),calc(var(--vw-min)*32),calc(var(--rem)*32))}li{position:relative;&:after{background-color:rgba(157,151,188,.5);content:"";height:clamp(calc(var(--rem)*15),calc(var(--vw-min)*20),calc(var(--rem)*20));position:absolute;right:calc(var(--rem)*-16);top:0;width:1px}}a{font-size:clamp(calc(var(--rem)*12),calc(var(--vw-min)*16),calc(var(--rem)*16));font-weight:500;line-height:clamp(calc(var(--rem)*15),calc(var(--vw-min)*20),calc(var(--rem)*20));padding-right:clamp(calc(var(--rem)*21),calc(var(--vw-min)*28),calc(var(--rem)*28));position:relative;-webkit-transition:opacity var(--move-time);transition:opacity var(--move-time);@media (any-hover:hover){&:hover{opacity:.7}}&:after{aspect-ratio:1/1;background-image:url(../img/common/in_page_link-btn.webp);background-size:contain;content:"";position:absolute;right:0;top:0;width:clamp(calc(var(--rem)*15),calc(var(--vw-min)*20),calc(var(--rem)*20))}}@media screen and (width >= 60rem){margin-top:calc(var(--rem)*120);li{&:after{height:calc(var(--rem)*24)}}a{font-size:calc(var(--rem)*18);letter-spacing:.05em;line-height:calc(var(--rem)*24);padding-right:calc(var(--rem)*34);&:after{width:calc(var(--rem)*24)}}}}}@layer utility{.u-sp{@media screen and (width >= 60rem){display:none}}.u-pc{display:none;@media screen and (width >= 60rem){display:initial}}.u-lg{display:none;@media screen and (width >= 85rem){display:initial}}.u-noCopy{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.u-srOnly{border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);white-space:nowrap}}.is-gNavActive{overflow:hidden}.js-fadeIn,.js-fadeIn-toRight,.js-fadeIn-toTop{opacity:0;-webkit-transition:visibility 1s,opacity 1s,translate 1s;transition:visibility 1s,opacity 1s,translate 1s;visibility:hidden;&.is-show{opacity:1;translate:0 0;visibility:visible}}.js-fadeIn-toTop{translate:0 calc(var(--rem)*40)}.js-fadeIn-toRight{translate:max(-5%,calc(var(--rem)*-72)) 0}.js-loading{background-color:var(--color-purple-light);height:100vh;position:fixed;top:0;width:100vw;z-index:var(--z-index-loading)}.is-loading{height:100vh;overflow:hidden}.loader{aspect-ratio:1;left:50%;position:absolute;top:50%;translate:-50% -50%;width:calc(var(--rem)*40);&:after,&:before{-webkit-animation:l1-1 2s infinite,l1-2 .5s infinite;animation:l1-1 2s infinite,l1-2 .5s infinite;aspect-ratio:1;content:"";left:0;margin:calc(var(--rem)*-8) 0 0 calc(var(--rem)*-8);position:absolute;top:0;width:calc(var(--rem)*16)}&:before{background-color:var(--color-white)}&:after{-webkit-animation-delay:-1s,0s;animation-delay:-1s,0s;background-color:var(--color-purple)}}@-webkit-keyframes l1-1{0%{left:0;top:0}25%{left:0;top:100%}50%{left:100%;top:100%}75%{left:100%;top:0}to{left:0;top:0}}@keyframes l1-1{0%{left:0;top:0}25%{left:0;top:100%}50%{left:100%;top:100%}75%{left:100%;top:0}to{left:0;top:0}}@-webkit-keyframes l1-2{80%,to{-webkit-transform:rotate(.5turn);transform:rotate(.5turn)}}@keyframes l1-2{80%,to{-webkit-transform:rotate(.5turn);transform:rotate(.5turn)}}