html,body{overflow-x:hidden}body{margin:0;padding:0;font-family:"Noto Sans JP",sans-serif;color:#333;background-color:#fff;line-height:1.8}a{color:#2c7a7b;text-decoration:none}a:hover{text-decoration:underline}.inner{max-width:1000px;margin:0 auto;padding:0 1rem}.site-header{background:#fff;border-bottom:1px solid #eee;padding:1rem 0}.logo{font-size:1.5rem;font-weight:bold;margin:0}.site-header .inner{display:flex;justify-content:space-between;align-items:center}nav ul{display:flex;gap:1.5rem;list-style:none;margin:0;padding:0}nav a{font-weight:500}nav a.current{color:#111;border-bottom:2px solid #2c7a7b}.main-visual{position:relative;width:100%;height:400px;overflow:hidden;background: url('../img/header.jpg') no-repeat center center / cover;display:flex;align-items:center;justify-content:center}.main-visual img{width:100%;height:auto;object-fit:cover}.catchcopy{position:absolute;color:#1f3346;text-align:center}.catchcopy h2{font-size:2rem;margin-bottom:.5rem}.catchcopy p{font-size:1.1rem}.home-top-feature{background:#f9f9f9;padding:4rem 0}.feature-img{width:100%;max-width:1000px;display:block;margin:0 auto}.home-bottom-service{padding:80px 20px;background-color:#fff;text-align:center}.service-text p{font-size:16px;color:#333;line-height:1.8;margin-bottom:10px}.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:50px}.service-item{position:relative;overflow:hidden;border-radius:6px;box-shadow:0 4px 8px rgba(0,0,0,.05)}.service-item img{width:100%;height:auto;display:block}.service-item .label{position:absolute;bottom:0;width:100%;background-color:#2c7a7b;color:#fff;font-weight:bold;font-size:14px;padding:12px 0;letter-spacing:1px}.company-info{background-color:#f2f3f3;padding:2rem 0}.company-info .inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.company-left{flex:1;min-width:250px}.company-right p{margin:0;line-height:1.6;font-size:.95rem;color:#333}.footer-logo{width:240px;height:auto;display:block;margin-bottom:.5rem}.footer-links{text-align:center;padding:.8rem 0;background:#f8f8f8;font-size:.85rem}.footer-links a{color:#333;text-decoration:none;margin:0 1rem}.footer-links a:hover{text-decoration:underline}.site-footer{background-color:#111;color:#fff;text-align:center;padding:1rem 0;font-size:.85rem}html,body{overflow-x:hidden}body{margin:0;padding:0;font-family:"Noto Sans JP",sans-serif;color:#333;background-color:#fff;line-height:1.8}a{color:#2c7a7b;text-decoration:none}a:hover{text-decoration:underline}.main-visual{height:400px}.main-visual{background: linear-gradient(to bottom, rgba(0,0,0,0.7), rgba(0,0,0,0.6)), url('../img/main.jpg') center center/cover no-repeat;height:400px;display:flex;align-items:center;justify-content:center}.catchcopy{background-color:rgba(0,0,0,.5);padding:2rem 2.5rem;border-radius:12px;text-align:center;max-width:80%}.catchcopy h2{font-size:2.8rem;font-weight:900;color:#fff;text-shadow:3px 3px 8px rgba(0,0,0,.6);letter-spacing:.1em}.catchcopy p{font-size:1.4rem;font-weight:500;color:#fff;text-shadow:2px 2px 6px rgba(0,0,0,.5);margin-top:1rem}.service-item{position:relative;overflow:hidden;border-radius:6px;box-shadow:0 4px 8px rgba(0,0,0,.05)}.service-item img{width:100%;height:auto;display:block;object-fit:cover}.service-item .label{position:absolute;bottom:0;width:100%;background-color:#2c7a7b;color:#fff;font-weight:bold;font-size:14px;padding:12px 0;text-align:center}.service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:50px}.service-item{position:relative;overflow:hidden;border-radius:6px;box-shadow:0 4px 8px rgba(0,0,0,.05)}.service-item img{width:100%;height:400px;object-fit:cover;display:block;border-radius:4px}.service-item .label{position:absolute;bottom:0;width:100%;background-color:#2c7a7b;color:#fff;font-weight:bold;font-size:14px;padding:12px 0;text-align:center}.home-greeting{background-color:#f9f9f9;padding:60px 0 40px}.greeting-flex{display:flex;flex-wrap:wrap;gap:2rem;align-items:center}.greeting-text{flex:1;min-width:280px}.greeting-text h2{font-size:1.8rem;margin-bottom:1rem;color:#2c7a7b}.greeting-text p{font-size:1rem;color:#333;line-height:1.9}.greeting-image{flex:1;min-width:280px}.greeting-image img{width:100%;height:auto;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.service-text{text-align:center;max-width:800px;margin:0 auto;padding-top:0;padding-bottom:20px}.service-text h2{font-size:1.8rem;margin-bottom:1rem;color:#2c7a7b;letter-spacing:.05em;font-weight:bold}.service-text p{font-size:1.05rem;line-height:1.9;margin-bottom:1.2rem;color:#444}.service-text strong{color:#2c7a7b;font-weight:bold}@media screen and (max-width:768px){.greeting-flex{flex-direction:column}.greeting-text h2{text-align:center}.greeting-text p{text-align:justify}}.service-item a{display:block;text-decoration:none;color:inherit}@media screen and (max-width:768px){.service-grid{display:flex;flex-direction:column;align-items:center;gap:16px;padding:0 1rem}.service-item img{display:none}.service-item .label{position:static;background-color:#2c7a7b;color:#fff;font-size:1rem;padding:1rem;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.service-item{width:100%;max-width:320px}.service-item a{display:flex;justify-content:center;align-items:center;width:100%;height:50px;background-color:#2c7a7b;color:#fff;font-weight:bold;font-size:1rem;text-align:center;text-decoration:none;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,.1);transition:background-color .3s ease}.service-item a:hover{background-color:#256b6c}}@charset "utf-8";.menu-toggle{display:none;font-size:28px;background:none;border:none;cursor:pointer;color:#333}@media screen and (max-width:768px){.site-header{background:#fff;border-bottom:1px solid #ddd}.site-header .inner{display:flex;justify-content:space-between;align-items:center;padding:0 16px;width:100%}.logo{margin:0;padding:0;flex:1;margin-left:-8px}.logo a{font-size:24px;font-weight:bold;text-decoration:none;color:#2c7a7b!important;display:block;line-height:60px}.menu-toggle{display:block;font-size:40px;background:none;border:none;cursor:pointer;color:#333;margin-left:auto;margin-right:16px;padding:0;line-height:1;height:48px;width:48px;display:flex;align-items:center;justify-content:center}#main-nav{display:none;position:absolute;top:60px;right:0;width:100%;background:#fff;box-shadow:0 4px 8px rgba(0,0,0,.1);z-index:999}#main-nav.open{display:block}#main-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;text-align:center}#main-nav li{position:relative;padding:14px 0}#main-nav li::after{content:"";display:block;width:100%;height:1px;background-color:#ccc;position:absolute;bottom:0;left:0}#main-nav li:last-child::after{display:none}#main-nav a{text-decoration:none;color:#333;display:block;font-weight:normal;border-bottom:none!important}#main-nav a.current,nav ul li a.current{border-bottom:none!important}}#scroll-top{position:fixed;bottom:20px;right:20px;z-index:9999;background:#0f766e;color:#fff;border:none;border-radius:50%;width:56px;height:56px;font-size:24px;font-weight:bold;cursor:pointer;display:none;box-shadow:0 4px 8px rgba(0,0,0,.2);transition:opacity .3s ease , transform .3s ease;line-height:56px;text-align:center;padding:0}#scroll-top:hover{transform:scale(1.05);background-color:#0e615c}@media screen and (max-width:768px){#scroll-top{display:none}}