@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Outfit:wght@600&display=swap");article,aside,footer,header,nav,section,main,div,img{display:block}header,a,li,div,dl,dt,dd,input,main,section,aside,textarea,th,td{box-sizing:border-box}ul,ol{list-style:none;margin:0;padding:0}dd,dt{margin:0}img{max-width:100%;height:auto;border:none;vertical-align:middle}p,dl{margin:0}blockquote{margin:0}figure{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}table,tbody,td,tfoot,th,thead,tr{margin:0;padding:0;border:0}td,th{word-break:break-word}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.4;margin:0;padding:0;letter-spacing:.05em}*:focus{outline:none}::-webkit-input-placeholder{font-family:sans-serif}:-moz-placeholder{font-family:sans-serif}input[type="submit"],input[type="reset"],input[type="button"]{border-radius:0;-webkit-box-sizing:content-box;-webkit-appearance:button;appearance:button;box-sizing:border-box}input[type="submit"]::-webkit-search-decoration,input[type="reset"]::-webkit-search-decoration,input[type="button"]::-webkit-search-decoration{display:none}input[type="submit"]:focus,input[type="reset"]:focus,input[type="button"]:focus{outline-offset:-2px}@media screen and (max-width: 767px){input:not([type="checkbox"]),textarea,select{font-size:1.6rem}}@media (min-width: 768px){a[href^="tel:"]{pointer-events:none}}@media (max-width: 767px){a[href^="tel:"]{text-decoration:underline}}html{font-size:62.5%}body{width:100%;min-height:100lvh;position:relative;margin:0;color:#000;font-size:1.6rem;font-family:"Noto Sans JP", sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal;line-height:1.8;opacity:0}header{z-index:100}.totop{z-index:70}a{display:inline-block}main a{transition:opacity .2s ease-out;text-decoration:underline;display:inline-block}main a:hover{opacity:.8}main a,main a:visited{color:#000}section{position:relative}main{width:100%;position:relative;overflow:hidden}.is_pc{display:block}.is_sp{display:none}br.is_pc{display:inline-block}@media screen and (max-width: 767px){.is_pc{display:none !important}.is_sp{display:block !important}br.is_sp{display:inline-block !important}}.gHeader{background:#00224e;padding:1rem 3rem}.gHeader--logo{display:block;margin:0 auto}.gFooter{text-align:center;padding:4rem 0}.gFooter--logo{margin-bottom:2rem}.gFooter--logo img{display:inline-block}.gFooter--copy{color:#00224e;font-size:1.2rem;font-weight:500}.totop{background:#00224e;position:fixed;bottom:2rem;right:2rem;display:none;cursor:pointer}.totop img{transition:opacity .2s ease-out}.totop img:hover{opacity:.8}@media screen and (max-width: 767px){.gFooter{padding:4rem 0 8rem}.totop{bottom:1rem;right:1rem}}.wrapper{max-width:1000px;width:90%;margin:0 auto}@media screen and (max-width: 767px){.wrapper{max-width:600px}}.wrapper--lg{width:calc( 100% - 6rem);margin:0 auto}@media screen and (max-width: 767px){.wrapper--lg{width:90%}}.btn{border:1px solid #00224e;border-radius:4rem;padding:1rem 3.5rem 1rem 2rem;font-size:2rem;line-height:1.4;font-weight:500;text-decoration:none;position:relative;transition:background .2s ease-out}.btn,.btn:visited{color:#00224e}.btn::after{content:'';position:absolute;right:1rem;top:50%;translate:0 -50%;width:0;height:0;border:6px solid transparent;border-left-color:#00224e}.btn:hover{background:rgba(0,34,78,0.2);opacity:1}.btn.btn_back{border-color:#666;padding:1rem 2rem 1rem 3.5rem}.btn.btn_back,.btn.btn_back:visited{color:#666}.btn.btn_back::after{transform:scale(-1, 1);right:auto;left:1rem;border-left-color:#666}.btn.btn_back:hover{background:rgba(102,102,102,0.2)}.btn.btn_w{border-color:#fff}.btn.btn_w,.btn.btn_w:visited{color:#fff}.btn.btn_w::after{border-left-color:#fff}.btn.btn_w:hover{background:rgba(255,255,255,0.2)}.dotAnim{display:flex;flex-direction:column;gap:12px;margin:4rem auto;width:12px;position:relative}.dotAnim::before,.dotAnim::after{content:'';width:12px;height:12px;border-radius:50%;opacity:0}.dotAnim::before{animation:dots-anim 2s infinite;background:rgba(255,255,51,0.3)}.dotAnim::after{background:#ff3;animation:dots-anim 2s infinite;animation-delay:.6s}.dotAnim span{display:block;width:12px;height:12px;border-radius:50%;background:rgba(255,255,51,0.7);animation:dots-anim 2s infinite;animation-delay:.3s;opacity:0}@media screen and (max-width: 767px){.dotAnim{margin:2rem auto;width:8px}.dotAnim span{width:8px;height:8px}.dotAnim::before,.dotAnim::after{width:8px;height:8px}}@keyframes dots-anim{0%{opacity:0}50%{opacity:1}70%{opacity:1}80%{opacity:0}100%{opacity:0}}.dotAnim--blue{display:flex;flex-direction:column;gap:12px;margin:4rem auto;width:12px;position:relative}.dotAnim--blue::before,.dotAnim--blue::after{content:'';width:12px;height:12px;border-radius:50%;opacity:0}.dotAnim--blue::before{animation:dots-anim 2s infinite;background:rgba(0,34,78,0.3)}.dotAnim--blue::after{background:#00224e;animation:dots-anim 2s infinite;animation-delay:.6s}.dotAnim--blue span{display:block;width:12px;height:12px;border-radius:50%;background:rgba(0,34,78,0.7);animation:dots-anim 2s infinite;animation-delay:.3s;opacity:0}@media screen and (max-width: 767px){.dotAnim--blue{margin:2rem auto;width:8px}.dotAnim--blue span{width:8px;height:8px}.dotAnim--blue::before,.dotAnim--blue::after{width:8px;height:8px}}@keyframes dots-anim{0%{opacity:0}50%{opacity:1}70%{opacity:1}80%{opacity:0}100%{opacity:0}}.scroll_anim.up>li,.scroll_anim.up>div{transform:translateY(30px);opacity:0}.scroll_anim.up.on>li,.scroll_anim.up.on>div{transition:transform .8s ease-in-out, opacity .8s ease-in-out;transform:translateY(0);opacity:1}.scroll_anim.up.on>li:nth-of-type(1),.scroll_anim.up.on>div:nth-of-type(1){transition-delay:.15s}.scroll_anim.up.on>li:nth-of-type(2),.scroll_anim.up.on>div:nth-of-type(2){transition-delay:.3s}.scroll_anim.up.on>li:nth-of-type(3),.scroll_anim.up.on>div:nth-of-type(3){transition-delay:.45s}.scroll_anim.up.on>li:nth-of-type(4),.scroll_anim.up.on>div:nth-of-type(4){transition-delay:.6s}.scroll_anim.up_sin{transform:translateY(30px);opacity:0}.scroll_anim.up_sin.on{transition:transform .8s ease-in-out, opacity .8s ease-in-out;transform:translateY(0);opacity:1}.scroll_anim.down{transform:translateY(-30px);opacity:0}.scroll_anim.down.on{transition:transform .8s ease-in-out, opacity .8s ease-in-out;transform:translateY(0);opacity:1}.scroll_anim.ttl{clip-path:inset(0% 100% 0% 0%);transition:all 0.8s cubic-bezier(0.7, 0, 0.4, 1)}.scroll_anim.ttl.on{clip-path:inset(0% 0% 0% 0%)}@media screen and (max-width: 767px){.scroll_anim.ttl{clip-path:inset(0% 0% 100% 0%)}.scroll_anim.ttl.on{clip-path:inset(0% 0% 0% 0%)}}.scroll_anim.moji.on{animation:moji_em .5s ease-in-out;animation-delay:1s}@keyframes moji_em{50%{transform:scale(1)}70%{transform:scale(0.9)}90%{transform:scale(1.1)}100%{transform:scale(1)}}.scrollWrap{position:relative}.scrollWrap img,.scrollWrap table{width:100%}@media screen and (max-width: 767px){.scrollWrap__inner{border:1px solid #00224e;overflow-x:auto;margin-top:3rem}.scrollWrap__inner img,.scrollWrap__inner table{min-width:680px;padding:2rem 5%;box-sizing:border-box}}.scrollWrap--scroll{font-size:1.4rem;color:#00224e;position:absolute;right:0;top:-3rem;animation:scroll-indicator 2s ease-in-out infinite}@media screen and (min-width: 768px){.scrollWrap--scroll{display:none}}@keyframes scroll-indicator{0%{right:10px}50%{right:0}100%{right:10px}}.notes{font-size:1.3rem;text-align:right;margin-top:1rem}.txt--center{text-align:center}.title__page{padding:6rem 0 3rem;color:#00224e}.title__page--en{font-size:8rem;font-family:"Outfit", serif;font-optical-sizing:auto;font-weight:600;font-style:normal;letter-spacing:.07em;line-height:1;margin-bottom:.5rem}.title__page--ja{font-size:3rem;font-weight:600;line-height:1.6}.title__page--ja span{font-size:1.8rem}.workList{display:grid;grid-template-columns:repeat(3, 1fr);gap:3% 3rem}.workList h3{font-size:1.5rem;line-height:1.6;margin-top:.5rem}.workList a{text-decoration:none}.workList a,.workList a:visited{color:#000}.workList--wrapper{padding-bottom:8rem}@media screen and (max-width: 767px){.title__page{padding:4rem 0}.title__page--en{font-size:5rem}}.contactBody{opacity:1}.contactForm{color:#00224e}.contactForm .wrapper{max-width:880px}.contactForm--intro{margin-bottom:6rem}.contactForm--footer{text-align:center;font-size:1.5rem;background:#00224e;padding:.5rem 1rem}.contactForm--footer a{text-decoration:none}.contactForm--footer a,.contactForm--footer a:visited{color:#fff}.contactForm--body{margin-bottom:10rem}.contactForm--body dl{display:grid;grid-template:auto / 35% 1fr;gap:2rem 0;border-top:1px solid #00224e;padding-top:2rem;margin-bottom:4rem}.contactForm--body dt,.contactForm--body dd{border-bottom:1px solid #00224e;padding-bottom:2rem}.contactForm--body dt{grid-column:1;padding-right:5%}.contactForm--body dd{grid-column:2}.contactForm--body a,.contactForm--body a:visited{color:#00224e}.contactForm--body a:hover{opacity:.6}.contactForm--body .err,.contactForm--body .req{color:#c00}.contactForm--body .req{margin:0 5px;font-size:1.4rem}.contactForm--body input:not([type="checkbox"]),.contactForm--body textarea,.contactForm--body select{font-size:1.6rem;padding:1rem;width:100%;border-radius:0;border:1px solid #cacaca}.contactForm--body textarea{resize:none;height:216px;flex:1}.contactForm--body label{cursor:pointer;position:relative;display:inline-flex;align-items:center;flex-wrap:wrap}.contactForm--body input[type=checkbox]{display:none}.contactForm--body input[type=checkbox]:hover{cursor:pointer}.contactForm--body input[type=checkbox]+label:before,.contactForm--body input[type=checkbox]+label:after{display:inline-block;content:"";width:20px;height:20px;margin-right:10px}.contactForm--body input[type=checkbox]+label:before{border:1px solid #cacaca}.contactForm--body input[type=checkbox]:checked+label:after{position:absolute;left:7px;top:7px;width:4px;height:10px;border:solid #00224e;border-width:0 3px 3px 0;transform:rotate(45deg)}.contactForm--buttons{display:flex;justify-content:center}.contactForm--buttons .btn{background:#fff;cursor:pointer;font-size:1.6rem;font-weight:700}.contactForm--buttons .btn:not(.btn_back):hover{background:#00224e;color:#fff}.contactForm--buttons .btn:not(.btn_back):hover::after{border-left-color:#fff}.contactForm--buttons .btn:nth-of-type(2){margin-left:2rem}.contactForm--sent,.contactForm--preview{margin-bottom:10rem}.contactForm--error{margin:0 auto 4rem}.contactForm--error span{display:block}@media screen and (max-width: 767px){.contactForm--intro{margin-bottom:3rem}.contactForm--body{margin-bottom:8rem}.contactForm--body dl{grid-template:auto / 1fr;gap:0;padding-top:0}.contactForm--body dt{padding:1rem 0;border:none}.contactForm--body dd{padding:0 0 2rem;grid-column:1}}
