:root{--primary-color: #f39c12;--primary-light: #fef5e7;--primary-dark: #d35400;--text-color: #333333;--text-muted: #666666;--bg-light: #fafafa;--white: #ffffff;--border-color: #e0e0e0}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;color:var(--text-color);line-height:1.75;background-color:var(--white)}a{text-decoration:none;color:inherit;transition:all .3s ease}.container{width:100%;max-width:1100px;margin:0 auto;padding:0 20px}section{padding:80px 0;border-bottom:1px solid var(--border-color)}.section-title{text-align:center;font-size:1.8rem;margin-bottom:15px;color:var(--text-color)}.section-subtitle{text-align:center;font-size:.95rem;color:var(--text-muted);margin-bottom:50px}.btn{display:inline-block;background-color:var(--primary-color);color:var(--white);padding:12px 30px;border-radius:4px;font-weight:700;border:none;cursor:pointer;box-shadow:0 4px 6px #f39c1226;transition:all .3s ease;text-align:center}.btn:hover{background-color:var(--primary-dark);transform:translateY(-2px)}.btn-outline{background-color:transparent;color:var(--primary-color);border:2px solid var(--primary-color);box-shadow:none}.btn-outline:hover{background-color:var(--primary-color);color:var(--white)}header{background-color:var(--white);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:1000;box-shadow:0 2px 5px #00000008}.header-container{display:flex;justify-content:space-between;align-items:center;height:80px}.logo{display:flex;align-items:center;font-weight:700;font-size:1.4rem}.logo img{margin-right:12px;display:block;object-fit:contain}.logo span{display:flex;align-items:center;gap:8px}nav ul{display:flex;list-style:none}nav ul li{margin-left:20px;font-size:.9rem;font-weight:500}nav ul li a:hover{color:var(--primary-color)}.back-home{font-size:.9rem;color:var(--primary-dark);font-weight:500;display:flex;align-items:center;gap:5px}.back-home:hover{text-decoration:underline}.hero{background-color:var(--primary-light);padding:100px 0;text-align:center}.hero h1{font-size:2.4rem;margin-bottom:20px;font-weight:700}.hero p{font-size:1.1rem;color:var(--text-muted);max-width:750px;margin:0 auto 35px}.ceo-message{background-color:var(--white)}.ceo-container{display:flex;align-items:center;gap:50px}.ceo-img-placeholder{flex:1;height:320px;background-color:#fcefdc;border-radius:8px;display:flex;align-items:center;justify-content:center;border:1px solid #f39c1240}.ceo-img-container{flex:1;display:flex;justify-content:center}.ceo-img{width:100%;max-width:320px;height:auto;border-radius:8px;object-fit:cover;border:1px solid var(--border-color);box-shadow:0 4px 10px #0000000d}.ceo-content{flex:1.5}.ceo-content h3{font-size:1.5rem;margin-bottom:10px;color:var(--primary-dark)}.ceo-title{font-size:1.8rem;margin-bottom:15px;color:var(--text-color)}.ceo-subtitle{font-size:.9rem;color:var(--text-muted);margin-bottom:20px}.media-box h3{font-size:1.5rem;margin-bottom:5px;color:var(--primary-dark)}.media-card-custom{background-color:var(--white);border:1px solid var(--border-color);border-radius:8px;padding:20px;box-shadow:0 4px 10px #00000005}.media-banner-placeholder{width:100%;height:180px;background-color:#e8f4f8;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:15px;border:1px solid #b2bec360;position:relative;overflow:hidden}.media-badge-nhk{background-color:#ff3f34;color:#fff;padding:3px 10px;font-weight:700;font-size:.8rem;border-radius:3px;margin-bottom:5px}.media-text-content{font-size:.9rem;color:var(--text-color);text-align:justify}.media-link{display:inline-block;margin-top:15px;color:var(--primary-dark);font-weight:700;text-decoration:underline}.media-link:hover{color:var(--primary-color)}.vision{background-color:var(--bg-light);text-align:center}.vision-box{background-color:var(--white);padding:40px;border-radius:8px;border:1px solid var(--border-color);max-width:800px;margin:0 auto}.vision-box h3{font-size:1.4rem;color:var(--primary-dark);margin-bottom:15px}.services{background-color:var(--white)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.service-card{border:1px solid var(--border-color);border-radius:6px;padding:30px 20px;text-align:center;background:var(--white)}.service-icon{width:50px;height:50px;background-color:var(--primary-light);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.service-card h3{font-size:1.15rem;margin-bottom:15px;color:#2c3e50}.service-card p{font-size:.9rem;color:var(--text-muted);text-align:left}.it-pillar{background-color:#fff9f0;border:2px solid #f39c1230;border-radius:8px;padding:40px;margin-top:50px;display:flex;align-items:center;justify-content:space-between;gap:30px}.it-pillar-content{flex:2}.it-pillar-content h3{font-size:1.35rem;color:var(--primary-dark);margin-bottom:10px;display:flex;align-items:center;gap:10px}.it-pillar-content p{font-size:.95rem;color:var(--text-muted)}.it-pillar-action{flex:1;text-align:right}.community{background-color:var(--bg-light)}.media-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.media-card{background-color:var(--white);border:1px solid var(--border-color);padding:25px 15px;border-radius:6px;text-align:center}.media-card h4{font-size:1rem;margin-bottom:10px;color:var(--text-color)}.media-card p{font-size:.85rem;color:var(--text-muted)}.partners{background-color:var(--white);padding:60px 0}.partners-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;align-items:center;justify-items:center;margin-top:20px}.partner-logo-link{display:block;width:100%;max-width:240px;text-decoration:none;color:inherit}.partner-logo-box{width:100%;max-width:240px;height:75px;background-color:#fff;border:1px solid var(--border-color);border-radius:6px;display:flex;align-items:center;justify-content:center;padding:10px;filter:grayscale(20%);transition:all .3s ease}.partner-logo-box:hover{filter:grayscale(0%);border-color:var(--primary-color);box-shadow:0 4px 10px #0000000d}.partner-logo-box img{max-width:100%;max-height:100%;object-fit:contain}.company-profile{background-color:var(--bg-light)}.profile-table{width:100%;border-collapse:collapse}.profile-table th,.profile-table td{padding:15px 20px;border-bottom:1px solid var(--border-color);text-align:left}.profile-table th{width:25%;background-color:#fafafa;font-weight:700}.contact{background-color:var(--primary-light)}.contact-container{max-width:600px;margin:0 auto;background:var(--white);padding:40px;border-radius:6px;border:1px solid var(--border-color)}.form-group{text-align:left;margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:700;font-size:.9rem}.form-control{width:100%;padding:10px;border:1px solid var(--border-color);border-radius:4px;font-family:inherit;font-size:.95rem}textarea.form-control{resize:vertical}.section-bg{background-color:var(--bg-light);padding:60px 0}.section-tech{background-color:var(--white);padding:60px 0}.section-title-custom{font-size:1.6rem;margin-bottom:10px;text-align:center;position:relative;padding-bottom:10px}.section-title-custom:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:50px;height:3px;background-color:var(--primary-color)}.section-desc{text-align:center;font-size:.95rem;color:var(--text-muted);margin-bottom:40px}.it-hero{background-color:var(--primary-light);padding:60px 0;text-align:center}.hero-badge{display:inline-block;background-color:var(--white);border:1px solid var(--primary-color);color:var(--primary-color);padding:3px 12px;border-radius:20px;font-size:.85rem;font-weight:700;margin-bottom:15px}.it-hero h1{font-size:2rem;margin-bottom:15px;font-weight:700}.it-hero p{font-size:1rem;color:var(--text-muted);max-width:750px;margin:0 auto}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.menu-card{background-color:var(--white);border:1px solid var(--border-color);border-radius:6px;padding:25px 20px}.menu-card h3{font-size:1.15rem;margin-bottom:12px;color:#2c3e50;border-bottom:2px solid var(--primary-light);padding-bottom:8px}.menu-card p{font-size:.9rem;color:var(--text-muted)}.tech-box{background-color:var(--white);border:1px solid var(--border-color);border-radius:6px;padding:30px}.tech-row{display:flex;padding:15px 0;border-bottom:1px solid #f0f0f0}.tech-row:last-child{border-bottom:none}.tech-label{flex:1;font-weight:700;font-size:.95rem;color:var(--primary-dark)}.tech-values{flex:3;display:flex;flex-wrap:wrap;gap:8px}.tag{background-color:#f5f5f5;padding:3px 10px;border-radius:4px;font-size:.85rem;font-weight:500;border:1px solid #e8e8e8}.strengths-container{display:flex;flex-direction:column;gap:30px}.strength-row{display:flex;background-color:var(--white);border:1px solid var(--border-color);border-radius:6px;overflow:hidden}.strength-num-box{background-color:var(--primary-color);color:var(--white);width:80px;display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:700;font-style:italic}.strength-text{padding:25px;flex:1}.strength-text h3{font-size:1.2rem;margin-bottom:10px;color:#2c3e50}.strength-text p{font-size:.9rem;color:var(--text-muted)}.inner-cta{background-color:#fff9f0;border:1px solid rgba(243,156,18,.2);border-radius:6px;padding:35px;text-align:center;margin-top:40px}.inner-cta h3{margin-bottom:10px;font-size:1.3rem}.inner-cta p{font-size:.9rem;color:var(--text-muted);margin-bottom:20px}footer{background-color:#333;color:#fff;padding:30px 0;text-align:center;font-size:.85rem}.footer-links{display:flex;justify-content:center;gap:25px;margin-bottom:15px;flex-wrap:wrap}.footer-links a{color:#ccc;font-size:.8rem;text-decoration:none;transition:color .2s ease}.footer-links a:hover{color:var(--primary-color);text-decoration:underline}@media(max-width:768px){.ceo-container{flex-direction:column;align-items:stretch;gap:30px}}@media(max-width:900px){.it-pillar{flex-direction:column;text-align:center}.it-pillar-action{text-align:center}.services-grid,.partners-grid,.media-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.menu-grid{grid-template-columns:1fr}.tech-row{flex-direction:column;gap:10px}.strength-row{flex-direction:column}.strength-num-box{width:100%;height:50px}}@media(max-width:600px){.header-container{flex-direction:column;height:auto;padding:15px 0;gap:15px}nav ul{flex-wrap:wrap;justify-content:center;gap:10px}nav ul li{margin:0 10px}.services-grid,.media-grid,.partners-grid{grid-template-columns:1fr}.profile-table th,.profile-table td{display:block;width:100%}.profile-table th{border-bottom:none;padding-bottom:5px}}
