       * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        
        html, body {
            height: 100%;
            font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
            background: #fff;
            -webkit-text-size-adjust: 100%;
        }
        
        #main {
            background: #FFFFFF;
            width: 100%;
            overflow-x: hidden; /* 横方向のはみ出しを防止 */
        }
        
        #main p {
            margin-bottom: 1em;
            line-height: 1.9;
        }
        
        #main .inner {
            padding: 10px;
        }
        
        /* Header and Navigation */
        .header {
            background-color: #fff;
            box-shadow: 0 2px 5px rgba(0,0,0,0.1);
            position: sticky;
            top: 0;
            z-index: 1000;
            width: 100%;
        }
        
        .header-container {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 10px 20px;
            max-width: 1200px;
            margin: 0 auto;
        }
        
        .logo {
            display: flex;
            align-items: center;
        }
        
        .logo img {
            max-height: 60px;
            width: auto;
        }
        
        .nav-toggle {
            display: none;
            background: none;
            border: none;
            font-size: 24px;
            cursor: pointer;
            color: #606060;
        }
        
        .main-nav {
            display: flex;
            align-items: center;
        }
        
        .nav-list {
            display: flex;
            list-style: none;
            margin: 0;
            padding: 0;
            flex-wrap: nowrap; /* メニュー項目の折り返しを防止 */
        }
        
        .nav-item {
            position: relative;
            margin: 0 2px; /* 余白を少し減らす */
            white-space: nowrap; /* テキストの折り返しを防止 */
        }
        
        .nav-link {
            display: block;
            padding: 15px 8px; /* 左右の余白を少し減らす */
            color: #606060;
            text-decoration: none;
            font-size: 13px; /* フォントサイズを少し小さく */
            transition: all 0.3s ease;
        }
        
        .nav-link:hover {
            color: #000;
            background-color: #f5f5f5;
        }
        
        .dropdown {
            position: relative;
        }
        
        .dropdown-menu {
            display: none;
            position: absolute;
            top: 100%;
            left: 0;
            background-color: #fff;
            box-shadow: 0 2px 5px rgba(0,0,0,0.2);
            min-width: 200px;
            z-index: 1;
        }
        
        .dropdown:hover .dropdown-menu {
            display: block;
        }
        
        .dropdown-item {
            display: block;
            padding: 10px 15px;
            color: #606060;
            text-decoration: none;
            font-size: 14px;
            transition: all 0.3s ease;
        }
        
        .dropdown-item:hover {
            background-color: #f5f5f5;
            color: #000;
        }

       /* Content sections */
        .content-section {
            padding: 40px 20px;
            max-width: 1200px;
            margin: 0 auto;
        }

        /* 製品情報以降のセクション */
        #yokogawa_03, #yokogawa_06, #yokogawa_05, #company, #map {
            max-width: 1000px;
        }
        
        .content-section-narrow {
            padding: 40px 20px;
            max-width: 1000px;
            margin: 0 auto;
        }
        
        .section-title {
            text-align: center;
            margin-bottom: 30px;
            font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
            font-size: 24px;
            color: #333;
        }
        
        /* About section */
        .yokogawa-text {
            font-size: 1.4em;
            text-align: center;
            font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
            line-height: 150%;
            padding: 20px 0 20px 0;
        }
        
        /* Product section */
        .product-container {
            margin-bottom: 50px;
        }
        
        .product-row {
            display: flex;
            flex-wrap: wrap;
            margin-bottom: 50px;
        }
        
        .product-image {
            flex: 0 0 60%;
            max-width: 60%;
        }
        
        .product-logo {
            flex: 0 0 40%;
            max-width: 40%;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .product-image img, .product-logo img {
            width: 100%;
            height: auto;
        }
        
        /* Features section */
        .feature-row {
            display: flex;
            flex-wrap: wrap;
            margin-bottom: 50px;
        }
        
        .feature-image {
            flex: 0 0 65%;
            max-width: 65%;
        }
        
        .feature-text {
            flex: 0 0 35%;
            max-width: 35%;
            padding: 0 20px;
        }
        
        .feature-image img {
            width: 100%;
            height: auto;
        }
        
        .feature-title {
            font-size: 1.3em;
            margin-bottom: 15px;
            font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
        }
        
        .feature-description {
            font-size: 1.2em;
            font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
            line-height: 1.6;
        }
        
        /* Factory photos section */
        .gallery-container {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            margin-bottom: 30px;
        }
        
        .gallery-item {
            flex: 0 0 32%;
            max-width: 32%;
            margin-bottom: 20px;
        }
        
        .gallery-item img {
            width: 100%;
            height: auto;
        }
        
        .gallery-caption {
            text-align: center;
            margin-top: 10px;
            font-size: 1.3em;
            font-weight: bold;
            font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
        }


        /* モバイルメニューのオーバーレイ */
        .menu-overlay {
            display: none;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 0, 0, 0.5);
            z-index: 999;
        }
        

 
        /* Footer styles */
        .footer {
            background-color: #f5f5f5;
            padding: 30px 20px;
            text-align: center;
            font-size: 14px;
            color: #606060;
        }
        
        .social-links {
            margin-bottom: 20px;
        }
        
        .social-links a {
            display: inline-block;
            margin: 0 10px;
            color: #606060;
            text-decoration: none;
        }
        
        .footer-nav {
            margin-bottom: 20px;
        }
        
        .footer-nav a {
            color: #606060;
            text-decoration: none;
            margin: 0 5px;
        }
        
        .footer-nav a:hover {
            color: #000;
        }
        
        .copyright {
            font-size: 12px;
        }
        

        /* 会社概要テーブルスタイル */
        .company-info-container {
            max-width: 800px;
            margin: 0 auto;
            font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
        }
        

        .company-info-table {
            width: 100%;
            border-collapse: collapse;
            margin: 20px 0;
            font-size: 1.2em;
            line-height: 1.6;
        }
        
        .company-info-table th {
            width: 25%;
            text-align: left;
            padding: 15px 10px;
            border-bottom: 1px solid #e0e0e0;
            vertical-align: top;
            font-weight: normal;
            color: #333;
        }
        
        .company-info-table td {
            width: 75%;
            padding: 15px 10px;
            border-bottom: 1px solid #e0e0e0;
            vertical-align: top;
        }
        
        .company-info-table tr:last-child th,
        .company-info-table tr:last-child td {
            border-bottom: none;
        }
        
        .company-address {
            margin-bottom: 15px;
        }
        
        .company-address:last-child {
            margin-bottom: 0;
        }
        
        .company-address-title {
            font-weight: bold;
            margin-bottom: 5px;
        }
        
        @media screen and (max-width: 767px) {
            .company-info-table {
                font-size: 1em;
            }
            
            .company-info-table th,
            .company-info-table td {
                display: block;
                width: 100%;
            }
            
            .company-info-table th {
                padding-bottom: 5px;
                border-bottom: none;
            }
            
            .company-info-table td {
                padding-top: 5px;
                padding-bottom: 15px;
            }
        }
        
        /* Map section */
        .map-container {
            margin-bottom: 30px;
        }
        
        .map-container iframe {
            width: 100%;
            height: 450px;
            border: 0;
        }
        
        /* Footer */
        .footer {
            background-color: #f5f5f5;
            padding: 30px 20px;
            text-align: center;
            font-size: 14px;
            color: #606060;
        }
        
        .social-links {
            margin-bottom: 20px;
        }
        
        .social-links a {
            display: inline-block;
            margin: 0 10px;
        }
        
        .social-links img {
            width: 32px;
            height: 32px;
        }
        
        .footer-nav {
            margin-bottom: 20px;
        }
        
        .footer-nav a {
            color: #606060;
            text-decoration: none;
            margin: 0 5px;
        }
        
        .footer-nav a:hover {
            color: #000;
        }
        
        .copyright {
            font-size: 12px;
        }
        
        /* Back to top button */
        .back-to-top {
            display: inline-block;
            padding: 10px 20px;
            background-color: #f5f5f5;
            color: #606060;
            text-decoration: none;
            border-radius: 5px;
            margin: 20px 0;
            transition: background-color 0.3s;
        }
        
        .back-to-top:hover {
            background-color: #e0e0e0;
        }
        
        /* Responsive styles */
        @media screen and (max-width: 900px) {
            .header-container {
                flex-wrap: wrap;
            }
            
            .nav-toggle {
                display: block;
            }
            
            .main-nav {
                display: none;
                width: 100%;
                order: 3;
            }
            
            .main-nav.active {
                display: block;
            }
            
            .nav-list {
                flex-direction: column;
                width: 100%;
            }
            
            .nav-item {
                margin: 0;
                width: 100%;
            }
            
            .nav-link {
                padding: 15px;
                border-top: 1px solid #eee;
                font-size: 14px;
            }
            
            .dropdown-menu {
                position: static;
                box-shadow: none;
                display: none;
                padding-left: 20px;
            }
            
            .dropdown.active .dropdown-menu {
                display: block;
            }
            
            .dropdown-toggle::after {
                content: '+';
                float: right;
            }
            
            .dropdown.active .dropdown-toggle::after {
                content: '-';
            }

            /* メニューが開いているときにオーバーレイを表示 */
            .menu-overlay.active {
                display: block;
            }
            
            .product-image, .product-logo {
                flex: 0 0 100%;
                max-width: 100%;
            }
            
            .product-logo {
                margin-top: 20px;
            }
            
            .feature-image, .feature-text {
                flex: 0 0 100%;
                max-width: 100%;
            }
            
            .feature-text {
                padding: 20px 0 0 0;
            }
            
            .gallery-item {
                flex: 0 0 48%;
                max-width: 48%;
            }
            
            .company-info-table th,
            .company-info-table td {
                display: block;
                width: 100%;
            }
            
            .company-info-table th {
                padding-bottom: 5px;
                border-bottom: none;
            }
            
            .company-info-table td {
                padding-top: 5px;
                padding-bottom: 15px;
            }
        }
        
        @media screen and (max-width: 600px) {
            .gallery-item {
                flex: 0 0 100%;
                max-width: 100%;
            }
            
            .yokogawa-text {
                font-size: 1.1em;
            }
            
            .feature-title {
                font-size: 1.2em;
            }
            
            .feature-description {
                font-size: 1em;
            }
        }

        .dropdown-item {
            display: block;
            padding: 10px 15px;
            color: #606060;
            text-decoration: none;
            font-size: 14px;
            transition: all 0.3s ease;
        }
        
        .dropdown-item:hover {
            background-color: #f5f5f5;
            color: #000;
        }
