@charset "UTF-8";html{font-size:62.5%;scroll-behavior:smooth}body{font-family:Noto Sans JP,sans-serif;background:#faf9f9;color:#233d4d;margin:0;padding:0;font-size:1.6rem;line-height:1.6}ul{list-style:none;padding:0}ul,li,div,p{box-sizing:border-box}p{margin:0}.pc-none{display:none}@media (max-width: 768px){.pc-none{display:block}}.sp-none{display:block}@media (max-width: 768px){.sp-none{display:none}}@keyframes floatUpDown{0%{transform:translateY(0)}50%{transform:translateY(-5px)}to{transform:translateY(0)}}.u-float{animation:floatUpDown 1.5s ease-in-out infinite}.u-float:hover{animation-play-state:paused}.u-hoverBrighten{display:inline-block;transition:filter .3s ease}.u-hoverBrighten:hover{filter:brightness(1.15)}.fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.fade-in.is-visible{opacity:1;transform:translateY(0)}#hero{position:relative}#hero .hero-container{position:relative;padding:0 0 100px}@media (max-width: 480px){#hero .hero-container{padding:0 0 50px}}#hero img{width:100%;max-width:1200px;height:auto;margin:0 auto;display:block}#hero a{position:relative;display:block;bottom:30vh;left:0;right:0;margin:0 auto}@media (max-width: 1024px){#hero a{bottom:25vh}}@media (max-width: 768px){#hero a{bottom:20vh}}@media (max-width: 480px){#hero a{bottom:15vh}}#hero a img{position:absolute;width:100%;max-width:650px;left:0;right:0}@media (max-width: 768px){#hero a img{width:95%;max-width:500px;bottom:-20px}}.section{padding:10rem 0}@media (max-width: 480px){.section{padding:4rem 0}}.section_bg{background:#faf9f9}.section_bg--white{background:#fff}.section_ttl{color:#e0b700;text-align:center;margin-bottom:4rem;margin-top:0;font-size:2.4rem}@media (max-width: 480px){.section_ttl{margin-bottom:2rem}}.voices-container{max-width:1280px;margin:0 0 0 auto;padding:0 2rem;overflow-x:auto}.voice{overflow-x:auto;-webkit-overflow-scrolling:touch}.voice_ul{display:flex;gap:24px;min-width:100%}.voice_ul li{flex:0 0 420px;background-color:#faf9f9;padding:2rem;border-radius:.8rem;box-shadow:0 .3rem .6rem #00000029;display:flex;flex-direction:column;gap:2rem}@media (max-width: 480px){.voice_ul li{flex:0 0 320px}}.voice_ul .voice_images{display:flex;gap:6rem}@media (max-width: 480px){.voice_ul .voice_images{gap:2rem}}.voice_ul .voice_images .voice_image img{width:156px;height:auto}@media (max-width: 480px){.voice_ul .voice_images .voice_image img{width:130px}}.voice_ul .voice_images .voice_image .voice_image_txt{font-size:2.7rem;font-weight:700;text-align:center}@media (max-width: 480px){.voice_ul .voice_images .voice_image .voice_image_txt{font-size:1.75rem}}.voice_ul .voice_images .voice_image.after .voice_image_txt{color:#e0b700}.voice_ul .voice_message{background:#fff;padding:2rem;font-size:1.2rem;flex:1}.google-reviews{max-width:600px;margin:4rem auto 0;background:#fffbe7;border-radius:.8rem;box-shadow:0 .3rem .6rem #0000001a;padding:2.5rem 2rem 2rem}@media (max-width: 480px){.google-reviews{padding:1.5rem .5rem}}.google-reviews .google-reviews-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.google-reviews .google-reviews-header h3{font-size:1.6rem;font-weight:700;color:#e0b700;margin:0}@media (max-width: 480px){.google-reviews .google-reviews-header h3{font-size:1.4rem;padding:0 .5rem}}.google-reviews .google-reviews-header .google-reviews-rating{display:flex;align-items:center;gap:.5rem;font-size:1.3rem}.google-reviews .google-reviews-header .google-reviews-rating img{width:90px;height:auto;margin-right:.2rem}.google-reviews .google-reviews-header .google-reviews-rating .google-reviews-score{font-weight:700;color:#e0b700;font-size:1.5rem}.google-reviews .google-reviews-header .google-reviews-rating .google-reviews-count{color:#888;font-size:1.1rem}.google-reviews .google-reviews-list{list-style:none;margin:0 0 1.5rem;padding:0;display:flex;gap:1rem}.google-reviews .google-reviews-list li.google-review{flex:1;background:#fff;border-radius:.5rem;box-shadow:0 .1rem .2rem #0000000f;padding:1.2rem;margin-bottom:1.2rem;font-size:1.2rem;position:relative;display:flex;flex-direction:column;gap:.5rem}@media (max-width: 480px){.google-reviews .google-reviews-list li.google-review{font-size:1.1rem;padding:1rem .5rem}}.google-reviews .google-reviews-list li.google-review .google-review-rating{color:#e0b700;font-weight:700;font-size:1.1rem;margin-bottom:.2rem}.google-reviews .google-reviews-list li.google-review .google-review-rating span[itemprop=ratingValue]{font-size:1.3rem}.google-reviews .google-reviews-list li.google-review .google-review-text{color:#333;font-size:1.15rem;margin:.2rem 0;line-height:1.7}.google-reviews .google-reviews-list li.google-review .google-review-author{color:#666;font-size:1.05rem;margin-top:.2rem}.google-reviews .google-reviews-list li.google-review .google-review-author span[itemprop=author]{font-weight:700}.google-reviews .google-reviews-list li.google-review .google-review-author .google-review-date{color:#aaa;font-size:.95rem;margin-left:.5rem}.google-reviews .google-reviews-link{display:block;text-align:center;margin-top:1.5rem;color:#e0b700;font-size:1.2rem}.features{overflow:hidden}.features .feature{position:relative;margin:4rem 0}@media (max-width: 480px){.features .feature{padding:0 2rem}}.features .feature .feature-inner{max-width:1200px;margin:0 auto;display:flex;background:#fff;border-radius:.8rem;box-shadow:0 .4rem 1rem #0000001a;align-items:stretch;overflow:hidden}@media (max-width: 480px){.features .feature .feature-inner{flex-direction:column}}.features .feature.left-overflow .feature-inner{transform:translate(-5vw)}@media (max-width: 480px){.features .feature.left-overflow .feature-inner{transform:none}}.features .feature.right-overflow .feature-inner{transform:translate(5vw)}@media (max-width: 480px){.features .feature.right-overflow .feature-inner{transform:none;flex-direction:column-reverse}}.features .feature .feature-image{flex:1 1 50%;aspect-ratio:4/3;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}@media (max-width: 480px){.features .feature .feature-image{aspect-ratio:16/9;flex:none;width:100%;height:auto}}.features .feature .feature-image img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block;object-position:left center}@media (max-width: 480px){.features .feature .feature-image img{position:static;height:auto}}.features .feature .feature-text{flex:1 1 50%;padding:2rem;font-size:1.4rem;display:flex;flex-direction:column;justify-content:center}@media (max-width: 480px){.features .feature .feature-text{flex:none;width:100%}}.cta.section{background:#eaeff3;padding:3rem;position:relative;text-align:center}.cta.section img{width:100%;height:auto;max-width:900px;padding:2rem;margin-left:-4rem;margin-top:-2rem}@media (max-width: 480px){.cta.section img{padding:0;margin-left:0;margin-top:0}}.cta.section a{width:100%}.cta.section .cta-button{position:absolute;left:50%;transform:translate(-46%);bottom:-3rem;width:80%;height:auto;max-width:592px}@media (max-width: 480px){.cta.section .cta-button{bottom:-2rem}}#philosophy{padding-bottom:0}#philosophy .philosophy-container{margin:0 auto;padding:0 2rem 13rem;max-width:1000px}@media (max-width: 480px){#philosophy .philosophy-container{padding:0 2rem 4rem}}#philosophy .philosophy-message{display:flex;align-items:flex-start;position:relative}#philosophy .philosophy-message .philosophy-image{flex:0 0 auto;margin-top:-8rem;z-index:2}#philosophy .philosophy-message .philosophy-image img{display:block;width:360px;height:auto;border-radius:0 .5rem .5rem 0;box-shadow:0 .4rem 1rem #0000001a}@media (max-width: 480px){#philosophy .philosophy-message .philosophy-image img{border-radius:.5rem}}#philosophy .philosophy-message .philosophy-text{flex:1 1 auto;position:relative}#philosophy .philosophy-message .philosophy-text:before{content:"";position:absolute;top:0;bottom:0;left:-20rem;right:0;background:#f6f6f6;z-index:1;border-radius:.5rem}#philosophy .philosophy-message .philosophy-text span{background-color:#f4d35e;font-weight:700}#philosophy .philosophy-message .philosophy-text .philosophy-text-inner{position:relative;padding:2rem;z-index:2;max-width:840px}#philosophy .philosophy-message .philosophy-text .philosophy-text-inner .philosophy-position{font-size:1.2rem}#philosophy .philosophy-message .philosophy-text .philosophy-text-inner .philosophy-name{font-size:1.8rem;font-weight:700;margin:0 0 2rem}#philosophy .philosophy-message .philosophy-text .philosophy-text-inner .philosophy-catch{font-size:1.8rem;font-weight:700;margin-bottom:2rem}#philosophy .philosophy-message .philosophy-text .philosophy-text-inner p{font-size:1.4rem;line-height:1.8}#philosophy .philosophy-message .philosophy-text .philosophy-text-inner .philosophy-info{font-size:1.1rem}@media (max-width: 480px){#philosophy .philosophy-message{flex-direction:column}#philosophy .philosophy-message .philosophy-image{margin:0 auto 2rem}#philosophy .philosophy-message .philosophy-text:before{left:0;right:0;border-radius:0}}#flow .flow-step{max-width:900px;margin:4rem auto;width:100%;overflow:hidden}#flow .flow-step h3{font-size:4rem;font-weight:700;margin:0}#flow .flow-step .flow-inner{max-width:900px;margin:0 auto;position:relative}#flow .flow-step .flow-text{position:absolute;top:4rem;left:0;z-index:2;width:400px;padding:2rem;font-size:1.4rem;background-color:#eaeff3e6}#flow .flow-step .flow-image{display:flex;justify-content:end}#flow .flow-step .flow-image img{aspect-ratio:4/3;width:100%;max-width:600px;margin:0 0 -2rem;height:100%;object-fit:cover;display:block}#flow .flow-step.right-text h3{text-align:center}@media (max-width: 480px){#flow .flow-step.right-text h3{text-align:unset}}#flow .flow-step.right-text .flow-text{top:2rem;left:auto;right:0}@media (max-width: 480px){#flow .flow-step.right-text .flow-text{top:4rem}}#flow .flow-step.right-text .flow-image{justify-content:start}#flow .flow-step.right-text .flow-image img{margin-top:8rem}@media (max-width: 480px){#flow .flow-step.right-text .flow-image img{margin-top:unset}}#plan.section .plan-container{max-width:1200px;margin:0 auto;padding:0 2rem;overflow-x:auto;-webkit-overflow-scrolling:touch}#plan.section .plan-block{margin-bottom:2rem}#plan.section .plan-heading{font-size:1.8rem;font-weight:700;margin-bottom:2rem;margin-top:0;color:#233d4d}#plan.section .plan-table{min-width:700px;width:100%;border-collapse:collapse;text-align:center;font-size:1.4rem;background:#fff}#plan.section .plan-table th,#plan.section .plan-table td{border:1px solid #ddd;padding:1.2rem}#plan.section .plan-table thead th{background:#f3f3f3;font-weight:600}#plan.section .plan-table tbody th{text-align:left;background:#f9f9f9;font-weight:500}#plan.section .plan-note{font-size:1.2rem;margin-top:1rem;line-height:1.6}#instagram .instagram-container{max-width:800px;margin:0 auto;padding:0 2rem}@media (max-width: 480px){#instagram .instagram-container{padding:0 1rem;max-width:800px}}#instagram .instagram-container iframe{width:100%;border:none}@media (max-width: 480px){#instagram .instagram-container iframe{height:460px}}.contact{background:#faf9f9;padding:4rem 2rem;text-align:center}.contact .contact_form{max-width:600px;margin:0 auto;background:#ffffffb0;border-radius:.8rem;padding:3rem;box-shadow:0 .3rem .6rem #00000029}.contact .contact_form_group{display:flex;flex-direction:column;margin-bottom:2rem}.contact .contact_form_group label{text-align:left;margin-bottom:.5rem;font-size:1.4rem}.contact .contact_form_group label .required{color:red;margin-left:.8rem;font-size:1.1rem}.contact .contact_form_group input,.contact .contact_form_group select,.contact .contact_form_group textarea{border:1px solid #ccc;border-radius:.4rem;padding:1rem;font-size:1.4rem;width:100%;box-sizing:border-box}.contact .contact_form_group textarea{min-height:120px;resize:vertical}.contact .contact_form_2columns{display:flex;gap:1rem}.contact .contact_form_2columns .column{flex:1}.contact .contact_form_submit{margin-top:8rem}.contact .contact_form_submit .contact_note{font-size:1.2rem;margin-bottom:1rem;color:#333}.contact .contact_form_submit .cta-button{display:inline-block;border:none;background:none;padding:0;cursor:pointer}.contact .contact_form_submit .cta-button img{width:100%;max-width:400px;height:auto;display:block;transition:filter .3s ease}.contact .contact_form_submit .cta-button img:hover{filter:brightness(1.1)}.line-container{text-align:center;font-size:1.2rem}.line-container a{color:#00c300;text-decoration:none;font-weight:700;margin-bottom:1rem}.line-container a:hover{text-decoration:underline}.line-container a img{vertical-align:middle;width:50px;height:50px;margin-right:.5rem}.footer{background:#233d4d}.footer .footer-inner{width:100%;max-width:1000px;margin:0 auto;padding:4rem 2rem}.footer .footer-inner h3{font-size:1.8rem;font-weight:700;color:#fff;margin:0 0 2rem}@media (max-width: 480px){.footer .footer-inner h3{text-align:unset}}.footer .footer-inner p{text-align:center;color:#fff}.footer .footer-inner p span{font-size:1.1rem}.footer .footer-access{color:#fff;display:flex;font-size:1.4rem;gap:2rem;margin-bottom:2rem}@media (max-width: 480px){.footer .footer-access{flex-direction:column;gap:4rem;margin-bottom:4rem}}.footer .footer-text{flex-grow:1}.footer .footer-text ul{display:flex;flex-direction:column;margin:0;gap:1rem}.footer .footer-text ul li dl{display:flex;gap:.5rem}.footer .footer-text ul li dl dt{font-weight:700;min-width:8rem;text-align:right}@media (max-width: 480px){.footer .footer-text ul li dl dt{text-align:left}}.footer .footer-text ul li dl dd{margin:0}.footer .footer-text ul li dl dd a{color:#fff}@media (max-width: 480px){.footer .footer-google_map iframe{width:100%}}#scrollTopButton{position:fixed;right:2rem;bottom:2rem;z-index:1000;display:none;background:#233d4d;color:#fff;border:none;padding:1rem 1.4rem;border-radius:50%;cursor:pointer;font-size:1.6rem;box-shadow:0 .4rem .8rem #0000004d;transition:opacity .3s ease,transform .3s ease}#scrollTopButton:hover{opacity:.8;transform:translateY(-.2rem)}#floatingCta{position:fixed;left:0;right:0;bottom:2rem;z-index:999;display:none;width:100%;max-width:400px;margin:0 auto;text-align:center;transition:opacity .3s ease}#floatingCta img{width:100%;height:auto;border-radius:.8rem}#form-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#0006;z-index:9999;align-items:center;justify-content:center}#form-overlay .spinner{width:48px;height:48px;border:5px solid #fff;border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
