header{position:fixed;top:0;left:0;height:5.5rem;width:100%;background-color:#3498db;color:white;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;transition:background-color 0.3s ease;z-index:1000}header h1 a{color:white;text-decoration:none}header.fixed-header{position:fixed;background-color:rgba(0,0,0,0.3)}header.fixed-header nav ul li:last-child a{background-color:#3498db;color:white}header.fixed-header.scrolled{background-color:#3498db}header.fixed-header.scrolled nav ul li:last-child a{background-color:white;color:black}@media (max-width: 700px){header.fixed-header{background-color:#3498db}header.fixed-header nav ul li:last-child a{background-color:white;color:black}}header img{height:50px}header nav ul{list-style:none;margin-right:4rem;display:flex;align-items:center;gap:2rem}header nav ul li:last-child a{display:inline-block;padding:0.5rem 1rem;background-color:white;transition:background-color 0.3s ease;color:black;border-radius:5px;text-decoration:none}header nav ul li a{color:white;text-decoration:none;font-size:1.1rem}header .menu-toggle{display:none;background:transparent;border:none;width:40px;height:40px;cursor:pointer;align-items:center;justify-content:center;z-index:1200;right:100px;position:absolute}@media (max-width: 900px){header .menu-toggle{display:block}}header .menu-toggle span{display:block;width:32px;height:4px;background:white;position:relative;transition:background 0.2s ease}header .menu-toggle span::before,header .menu-toggle span::after{content:'';display:block;width:32px;height:4px;background:white;position:absolute;left:0;transition:transform 0.2s ease, top 0.2s ease, opacity 0.2s ease}header .menu-toggle span::before{top:-10px}header .menu-toggle span::after{top:10px}@media (max-width: 900px){header nav .menu-toggle{display:flex}header nav ul{display:none}header.open nav ul{display:flex;position:fixed;inset:0;background:rgba(0,0,0,0.9);padding:5.5rem 0;flex-direction:column;gap:1.25rem;justify-content:start;align-items:center;z-index:1100;width:100%;height:100%;margin:0 100px 0 0}header.open .menu-toggle span{background:transparent}header.open .menu-toggle span::before{transform:rotate(45deg);top:0}header.open .menu-toggle span::after{transform:rotate(-45deg);top:0}}html{font-size:100%}@media (max-width: 600px){html{font-size:90%}}body{font-family:"Noto Sans JP",sans-serif;color:#333;background-color:#f8f8f8;margin:0;padding:0}.btn{display:inline-block;padding:0.5rem 1rem;background-color:#3498db;color:white;text-decoration:none;border-radius:5px}section{padding:2rem}.page-header{text-align:center;margin-bottom:4rem}.page-header h2{font-size:1.4rem;display:inline-block;border-bottom:3px solid #ffd000;padding-bottom:0.5rem;margin-bottom:1.5rem}.page-header .lead-text{font-size:1rem;color:#666;line-height:1.8}footer{background-color:#3498db;color:white;padding:1rem}.hero-slider{position:relative;width:100%;aspect-ratio:16 / 9;height:min(70vh, calc(100vw * aspect-ratio));overflow:hidden}@media (max-width: 700px){.hero-slider{margin-top:5.5rem}}.hero-slider .slide{position:absolute;top:0;left:0;width:100%;height:100%;background-size:120%;background-position:center;opacity:0;transition:opacity 1s cubic-bezier(0.4, 0, 0.2, 1);background-repeat:no-repeat}.hero-slider .slide.active{opacity:1;animation:heroPanZoom 10s cubic-bezier(0, 0, 1, 1)}@keyframes heroPanZoom{0%{background-position:left top}100%{background-position:right bottom}}.hero-slider .overlay{position:absolute;top:50%;left:2rem;transform:translateY(-50%);text-align:left;color:#fff;background:rgba(0,0,0,0.45);padding:20px 30px;border-radius:6px;max-width:calc(100% - 4rem);min-width:220px}@media (max-width: 700px){.hero-slider .overlay{left:1rem;padding:12px 16px;max-width:calc(70% - 2rem);font-size:0.95rem;background:rgba(0,0,0,0.6);border-radius:4px}}@media (max-width: 430px){.hero-slider .overlay{left:0.75rem;padding:10px 12px;max-width:calc(70% - 1.5rem)}}.hero-slider .overlay h1{margin:0 0 0.5rem 0;text-shadow:0 2px 6px rgba(0,0,0,0.6);font-size:clamp(1.5rem, 2.5vw, 2.4rem);line-height:1.1}@media (max-width: 700px){.hero-slider .overlay h1{font-size:1.4rem;line-height:1.05}}@media (max-width: 430px){.hero-slider .overlay h1{font-size:1.2rem}}.hero-slider .overlay p{margin:0;line-height:1.4;text-shadow:0 1px 4px rgba(0,0,0,0.6);font-size:clamp(1rem, 1.8vw, 1.15rem)}@media (max-width: 700px){.hero-slider .overlay p{font-size:0.95rem}}@media (max-width: 430px){.hero-slider .overlay p{font-size:0.9rem}}.index{text-align:center}.index h2{margin:0 0 2rem}.index p{margin-bottom:1.5rem}.index .index-sections{display:grid;grid-template-columns:repeat(3, 1fr);gap:1.5rem;align-items:stretch}@media (max-width: 900px){.index .index-sections{grid-template-columns:repeat(2, 1fr)}}@media (max-width: 600px){.index .index-sections{grid-template-columns:1fr}}.index .index-sections .index-card{background:#ffffff;padding:1.25rem;border-radius:8px;box-shadow:0 6px 18px rgba(0,0,0,0.06);color:#333;display:flex;flex-direction:column;justify-content:space-between}.index .index-sections .index-card h3{margin-top:0}.about-container{max-width:1000px;margin:0 auto;padding:4rem 2rem}.about-container .page-header{margin-bottom:0}.about-container .ceo-message{margin-bottom:6rem}.about-container .ceo-message h3{font-size:1.5rem;margin-bottom:1.5rem;color:#333;border-left:5px solid #3498db;padding-left:1rem}.about-container .ceo-message .ceo-content{display:flex;flex-direction:column;gap:2rem}@media (min-width: 700px){.about-container .ceo-message .ceo-content{flex-direction:row;align-items:center;justify-content:space-between;gap:3rem}}.about-container .ceo-message .ceo-content .message-text{flex:1}.about-container .ceo-message .ceo-content .message-text p{line-height:1.8;margin-bottom:1rem;font-size:1rem}.about-container .ceo-message .ceo-content .ceo-profile{width:100%;max-width:300px;margin:0 auto}@media (min-width: 700px){.about-container .ceo-message .ceo-content .ceo-profile{margin:0;flex-shrink:0}}.about-container .ceo-message .ceo-content .ceo-profile .ceo-img{width:100%;margin-bottom:0.5rem}.about-container .ceo-message .ceo-content .ceo-profile .ceo-img img{width:100%;height:auto;border-radius:8px;box-shadow:0 4px 10px rgba(0,0,0,0.1);object-fit:cover}.about-container .ceo-message .ceo-content .ceo-profile .ceo-name{text-align:right;font-weight:bold;font-size:1.2rem}.about-container .company-profile{margin-bottom:6rem}.about-container .company-profile h3{font-size:1.5rem;margin-bottom:1.5rem;color:#333;border-left:5px solid #3498db;padding-left:1rem}.about-container .company-profile .profile-table{width:100%;border-collapse:collapse}.about-container .company-profile .profile-table th,.about-container .company-profile .profile-table td{padding:1rem;border-bottom:1px solid #eee;text-align:left}.about-container .company-profile .profile-table th{width:30%;background:#f9f9f9;font-weight:bold;color:#3498db;white-space:nowrap}@media (max-width: 600px){.about-container .company-profile .profile-table th,.about-container .company-profile .profile-table td{display:block;width:100%}.about-container .company-profile .profile-table th{border-bottom:none;padding-bottom:0.5rem}.about-container .company-profile .profile-table td{padding-top:0.5rem}}.about-container .access-map h3{font-size:1.5rem;margin-bottom:1.5rem;color:#333;border-left:5px solid #3498db;padding-left:1rem;text-align:left}.about-container .access-map .company-img{width:70%;max-width:600px;margin:0 auto 2rem}.about-container .access-map .company-img img{width:100%;height:auto;max-height:600px;object-fit:cover;border-radius:8px;box-shadow:0 4px 10px rgba(0,0,0,0.1)}.about-container .access-map .access-info{margin-bottom:2rem}.about-container .access-map .access-info p{margin-bottom:0.5rem;font-size:1.1rem}.about-container .access-map .access-info .address{font-weight:bold}.about-container .access-map .access-info .tel{font-weight:bold;font-size:1.3rem;color:#3498db}.about-container .access-map .access-info .tel .time{font-size:0.9rem;color:#666;font-weight:normal;margin-left:1rem}@media (max-width: 600px){.about-container .access-map .access-info .tel .time{display:block;margin-left:0;margin-top:0.2rem}}.about-container .access-map .map-container{width:100%;border-radius:8px;overflow:hidden;box-shadow:0 4px 10px rgba(0,0,0,0.1)}.about-container .access-map .map-container iframe{width:100%;display:block}.about-container .access-map #google-map{scroll-margin-top:calc(5.5rem + 2rem)}.recruit-container{max-width:900px;margin:0 auto;padding:4rem 2rem}.recruit-container .recruit-section{margin-bottom:5rem}.recruit-container .recruit-section h3{font-size:1.5rem;color:#333;border-left:6px solid #3498db;padding-left:1rem;margin-bottom:2rem}.recruit-container .recruit-section .ideal-person{list-style:none;padding:0;display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 700px){.recruit-container .recruit-section .ideal-person{grid-template-columns:1fr 1fr}}.recruit-container .recruit-section .ideal-person li{background:#fff;padding:1rem 1.2rem;border-radius:6px;box-shadow:0 1px 3px rgba(0,0,0,0.1);font-weight:bold;color:#333;line-height:1.4;font-size:0.95rem;display:flex;align-items:center}.recruit-container .recruit-section .ideal-person li::before{content:'';display:inline-block;width:7px;height:12px;border-right:3px solid #34e25d;border-bottom:3px solid #34e25d;transform:rotate(45deg);margin-right:12px;margin-bottom:3px;flex-shrink:0;filter:drop-shadow(1px 1px 0px rgba(0,0,0,0.1))}.recruit-container .recruit-section .recruit-table{width:100%;border-collapse:collapse;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,0.05)}.recruit-container .recruit-section .recruit-table th,.recruit-container .recruit-section .recruit-table td{padding:1.5rem;border-bottom:1px solid #eee;text-align:left}.recruit-container .recruit-section .recruit-table th{background:#f9f9f9;width:30%;color:#3498db;font-weight:bold;vertical-align:top}.recruit-container .recruit-section .recruit-table td{line-height:1.8}.recruit-container .recruit-section .recruit-table td p{margin-bottom:0.5rem}.recruit-container .recruit-section .recruit-table td p:last-child{margin-bottom:0}.recruit-container .recruit-section .recruit-table td .salary-examples{margin-top:1rem;display:flex;flex-direction:column;gap:0.8rem}.recruit-container .recruit-section .recruit-table td .salary-examples .salary-card{background:#f8f9fa;border:1px solid #e9ecef;border-left:4px solid #3498db;padding:1rem;border-radius:4px;display:flex;flex-direction:column}@media (min-width: 700px){.recruit-container .recruit-section .recruit-table td .salary-examples .salary-card{flex-direction:row;align-items:center;justify-content:space-between}}.recruit-container .recruit-section .recruit-table td .salary-examples .salary-card .model-case{font-weight:bold;color:#555;font-size:0.9rem;margin-bottom:0.5rem}@media (min-width: 700px){.recruit-container .recruit-section .recruit-table td .salary-examples .salary-card .model-case{margin-bottom:0;margin-right:1rem;min-width:140px}}.recruit-container .recruit-section .recruit-table td .salary-examples .salary-card .salary-detail{display:flex;flex-direction:column}@media (min-width: 700px){.recruit-container .recruit-section .recruit-table td .salary-examples .salary-card .salary-detail{flex-direction:row;align-items:baseline;flex:1}}.recruit-container .recruit-section .recruit-table td .salary-examples .salary-card .salary-detail .annual-income{font-size:1.2rem;font-weight:bold;color:#333;margin-right:0.5rem}.recruit-container .recruit-section .recruit-table td .salary-examples .salary-card .salary-detail .breakdown{font-size:0.85rem;color:#777}@media (max-width: 600px){.recruit-container .recruit-section .recruit-table{display:block}.recruit-container .recruit-section .recruit-table tbody,.recruit-container .recruit-section .recruit-table tr,.recruit-container .recruit-section .recruit-table th,.recruit-container .recruit-section .recruit-table td{display:block;width:100%;box-sizing:border-box}.recruit-container .recruit-section .recruit-table th{background:#3498db;color:white;padding:0.8rem 1rem}.recruit-container .recruit-section .recruit-table td{padding:1rem;margin-bottom:1rem;border-bottom:none}}.recruit-container .recruit-section .recruit-table .requirements-row{display:flex;align-items:center;padding:0.8rem;margin-bottom:0.8rem;background:#f8f9fa;border-radius:6px;border:1px solid #eee;flex-wrap:wrap}.recruit-container .recruit-section .recruit-table .requirements-row:last-of-type{margin-bottom:0}.recruit-container .recruit-section .recruit-table .requirements-row .req-category{font-size:0.8rem;font-weight:bold;padding:0.3rem 0.6rem;border-radius:4px;background:#fff;color:#666;margin-right:0.8rem;min-width:60px;text-align:center;border:1px solid #ddd;box-shadow:0 1px 2px rgba(0,0,0,0.05)}.recruit-container .recruit-section .recruit-table .requirements-row .req-category.welcome{background:#fff;color:#2f9e44;border:1px solid #b2f2bb}.recruit-container .recruit-section .recruit-table .requirements-row .tags-container{display:flex;flex-wrap:wrap;gap:0.5rem;flex:1;margin-bottom:0}.recruit-container .recruit-section .recruit-table .requirements-row .tags-container .tag{background:#fff;color:#495057;padding:0.3rem 0.8rem;border-radius:20px;font-size:0.9rem;border:1px solid #dee2e6}.recruit-container .recruit-section .recruit-table .supplement-text{font-size:0.9rem;color:#666;margin-top:0.5rem}.recruit-container .recruit-section .recruit-table .benefits-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill, minmax(140px, 1fr));gap:0.5rem;margin-bottom:0.5rem}.recruit-container .recruit-section .recruit-table .benefits-grid li{background:#fff;border:1px solid #eee;padding:0.5rem 0.8rem;text-align:left;border-radius:4px;font-size:0.9rem;color:#555;display:flex;align-items:center}.recruit-container .recruit-section .recruit-table .benefits-grid li::before{content:"●";color:#ffd000;font-size:0.6rem;margin-right:0.5rem;flex-shrink:0}.recruit-container .recruit-section .recruit-table .simple-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill, minmax(140px, 1fr));gap:0.5rem;margin-bottom:0.5rem}.recruit-container .recruit-section .recruit-table .simple-list li{background:#fff;border:1px solid #eee;padding:0.5rem 0.8rem;text-align:left;border-radius:4px;font-size:0.9rem;color:#555;display:flex;align-items:center}.recruit-container .recruit-section .recruit-table .simple-list li::before{content:"●";color:#ffd000;font-size:0.6rem;margin-right:0.5rem;flex-shrink:0}.recruit-container .recruit-section .process-flow{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}@media (min-width: 700px){.recruit-container .recruit-section .process-flow{flex-direction:row;align-items:stretch;justify-content:space-between}}.recruit-container .recruit-section .process-flow .step-card{flex:1;background:#fff;border:1px solid #eee;border-radius:8px;padding:1.5rem;box-shadow:0 2px 5px rgba(0,0,0,0.05);text-align:center;position:relative}.recruit-container .recruit-section .process-flow .step-card .step-header{margin-bottom:1rem}.recruit-container .recruit-section .process-flow .step-card .step-header .step-num{display:block;font-size:0.8rem;color:#3498db;font-weight:bold;letter-spacing:1px;margin-bottom:0.2rem}.recruit-container .recruit-section .process-flow .step-card .step-header .step-title{font-size:1.3rem;margin:0;color:#333}.recruit-container .recruit-section .process-flow .step-card .step-desc{font-size:0.95rem;color:#666;margin:0}.recruit-container .recruit-section .process-flow .step-arrow{display:none}@media (min-width: 700px){.recruit-container .recruit-section .process-flow .step-arrow{display:flex;align-items:center;justify-content:center;width:30px}.recruit-container .recruit-section .process-flow .step-arrow::after{content:"▶";color:#ccc;font-size:1.2rem}}@media (max-width: 600px){.recruit-container .recruit-section .process-flow .step-arrow{display:flex;justify-content:center;height:20px}.recruit-container .recruit-section .process-flow .step-arrow::after{content:"▼";color:#ccc;font-size:1.2rem}}.recruit-container .recruit-section .note{font-size:0.9rem;color:#666;line-height:1.6;background:#f9f9f9;padding:1rem;border-radius:4px}.recruit-container .form-section{scroll-margin-top:120px;background:#f4f8fb;border-radius:10px}.recruit-container .form-section .form-desc{margin-bottom:2rem}.recruit-container .form-section .google-form-container{position:relative;width:100%;overflow:hidden}.recruit-container .form-section .google-form-container iframe{width:100%;max-width:640px;margin:0;display:block;border:none;min-height:800px}.recruit-container .form-section .contact-alt{scroll-margin-top:120px;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid #ddd}.recruit-container .form-section .contact-alt .tel-number{font-size:1.8rem;font-weight:bold;color:#3498db;margin:0.5rem 0}.recruit-container .form-section .contact-alt .tel-time{font-size:0.9rem;color:#666}.floating-entry-btn{position:fixed;bottom:20px;right:20px;background:#3d3d3d;color:#fff;padding:1rem 2rem;border-radius:50px;text-decoration:none;font-weight:bold;box-shadow:0 4px 10px rgba(0,0,0,0.3);z-index:1000;transition:transform 0.3s, box-shadow 0.3s, opacity 0.3s, visibility 0.3s;display:flex;align-items:center;justify-content:center;opacity:0.9}.floating-entry-btn.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.floating-entry-btn.is-switching{opacity:0;pointer-events:none}.floating-entry-btn.is-phone-mode{background:#28a745}.floating-entry-btn:hover{transform:translateY(-2px);box-shadow:0 6px 15px rgba(0,0,0,0.4);color:#fff;text-decoration:none}.floating-entry-btn::after{content:"▼";margin-left:0.5rem;font-size:0.8rem}.floating-entry-btn.is-phone-mode::after{content:"▲"}@media (max-width: 600px){.floating-entry-btn{bottom:0;right:0;left:0;border-radius:0;padding:1rem;font-size:1.1rem;box-shadow:0 -2px 10px rgba(0,0,0,0.1);box-sizing:border-box}.floating-entry-btn:hover{transform:none}}.work-container{max-width:1000px;margin:0 auto;padding:4rem 2rem}.work-container .work-list{display:flex;flex-direction:column;gap:3rem}.work-container .work-item{display:flex;flex-direction:column;background:white;border-radius:8px;overflow:hidden;box-shadow:0 4px 15px rgba(0,0,0,0.08);transition:transform 0.3s ease}.work-container .work-item:hover{transform:translateY(-5px)}@media (min-width: 700px){.work-container .work-item{flex-direction:row;align-items:stretch}}.work-container .work-item .work-img{flex:0 0 300px;width:100%;min-height:200px;background-color:#eee}@media (min-width: 700px){.work-container .work-item .work-img{width:300px}}.work-container .work-item .work-img img{width:100%;height:100%;object-fit:cover;display:block}.work-container .work-item .work-content{flex:1;padding:2rem;display:flex;flex-direction:column;justify-content:center}.work-container .work-item .work-content h3{font-size:1.4rem;margin-bottom:1rem;color:#333;border-left:4px solid #3498db;padding-left:0.8rem}.work-container .work-item .work-content .work-meta{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:0.5rem 1rem;margin-bottom:1rem;font-size:0.9rem;color:#555;background:#f8f8f8;padding:0.8rem;border-radius:4px}.work-container .work-item .work-content .work-meta dt{font-weight:bold;color:#3498db;white-space:nowrap}.work-container .work-item .work-content .work-meta dt::after{content:":";margin-left:0.2rem}.work-container .work-item .work-content .work-meta dd{margin:0}.work-container .work-item .work-content .work-desc{font-size:1rem;line-height:1.7;color:#444}.header-spacer{height:5.5rem}
