/* ==========================================================================
   RESPONSIVE DESIGN - 1200px� ('�����������PC()
   ========================================================================== */

@media (max-width: 1300px) {
    /* ���������^h:JO[ܿ��	 */
    .header__menu li:nth-child(1), /* 
>n� */
    .header__menu li:nth-child(2), /* ��ӹ�� */
    .header__menu li:nth-child(3), /* �m�� */
    .header__menu li:nth-child(4), /* L���� */
    .header__menu li:nth-child(5), /* m�� */
    .header__menu li:nth-child(6)  /* ���� */ {
        display: none;
    }

    /* ����������ܿ�h: */
    .hamburger-menu {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        width: 30px;
        height: 30px;
        background: none;
        border: none;
        cursor: pointer;
        padding: 6px;
        margin-left: var(--spacing-sm);
        z-index: 1001;
        position: relative;
    }
    
    .hamburger-line {
        width: 100%;
        height: 2px;
        background-color: #fff;
        transition: all 0.3s ease;
        transform-origin: center;
        border-radius: 1px;
    }

    /* TOP������g����������nڒ�rk */
    .header.visible .hamburger-line {
        background-color: #000;
    }
    
    /* ����������L��ƣ�jB */
    .hamburger-menu.active .hamburger-line:nth-child(1) {
        transform: rotate(45deg) translate(6px, 6px);
    }
    
    .hamburger-menu.active .hamburger-line:nth-child(2) {
        opacity: 0;
    }
    
    .hamburger-menu.active .hamburger-line:nth-child(3) {
        transform: rotate(-45deg) translate(6px, -6px);
    }
    
    /* �Ф����� */
    .mobile-menu {
        display: block;
        position: fixed;
        top: 60px;
        right: -100%;
        width: 300px;
        height: calc(100vh - 60px);
        background: #333;
        border-left: 3px solid #fff;
        transition: right 0.3s ease;
        z-index: 999;
        overflow-y: auto;
        box-shadow: -5px 0 15px rgba(0,0,0,0.3);
    }
    
    .mobile-menu.active {
        right: 0;
    }
    
    .mobile-menu__list {
        list-style: none;
        padding: 20px;
        margin: 0;
    }
    
    .mobile-menu__list li {
        margin-bottom: 15px;
        border-bottom: 1px solid #555;
        padding-bottom: 15px;
    }
    
    .mobile-menu__link {
        display: block;
        padding: 15px;
        color: #fff;
        text-decoration: none;
        font-size: 16px;
        border-radius: 8px;
        transition: background-color 0.3s ease;
        font-weight: 500;
    }
    
    .mobile-menu__link:hover {
        background-color: #555;
        color: #fff;
    }

    /* トップセクション左右の文言を縦並び配置 */
    .top__left-text {
        left: 50%;
        top: 25vh;
        transform: translateX(-50%);
    }
    
    .top__right-text {
        left: 50%;
        top: 50vh;
        right: auto;
        transform: translateX(-50%);
    }

    /* トップセクションのフォントサイズを45pxに固定 */
    .top__left-text-symbol,
    .top__right-text-symbol,
    .top__left-text-with-furigana,
    .top__right-text-with-furigana,
    .top__left-text-service,
    .top__right-text-service {
        font-size: 45px;
    }

    .top__left-text-with-furigana rt,
    .top__right-text-with-furigana rt {
        font-size: 15px;
    }

    /* 会社概要を横いっぱいの1列レイアウトに変更 */
    .company__content {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }

    /* 経営メンバーを横いっぱいの1列レイアウトに変更 */
    .management__grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
    }
}