@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@500;600;700&display=swap');

html {
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

/*------------------------------*/

.img-responsive.img-center {
    margin: 0 auto;
}

/*------------------------------*/

.no-margin {
    margin: 0 !important;
}

.no-margin-t {
    margin-top: 0 !important;
}

.no-margin-b {
    margin-bottom: 0 !important;
}

.no-margin-l {
    margin-left: 0 !important;
}

.no-margin-r {
    margin-right: 0 !important;
}

/*------------------------------*/

.no-padding {
    padding: 0 !important;
}

.no-padding-t {
    padding-top: 0 !important;
}

.no-padding-b {
    padding-bottom: 0 !important;
}

.no-padding-l {
    padding-left: 0 !important;
}

.no-padding-r {
    padding-right: 0 !important;
}

/*------------------------------*/

a:hover img {
    opacity: 0.7;
}

a.active {
    text-decoration: underline;
}

/*------------------------------*/

/*
.nav-justified > li {
    display: table-cell;
    width: 1%;
}

.nav-justified > li > a {
    margin-bottom: 0;
}
*/

/*------------------------------*/

@media screen and (min-width: 1200px) {

}

@media screen and (max-width: 1199px) and (min-width: 992px) {

}

@media screen and (max-width: 991px) and (min-width: 768px) {

}

@media screen and (max-width: 767px) {

}

/* ===== index.html moved inline styles ===== */
body {
            font-family: 'Noto Sans JP', 'Inter', sans-serif;
            color: #333; /* Default text color */
            font-size: 18px; /* Base font size increased */
        }
        h1, h2, h3 {
            font-family: 'Noto Serif JP', serif;
            font-weight: 600;
            letter-spacing: .04em;
            line-height: 1.5;
        }
        h2 {
            letter-spacing: .06em;
        }
        .text-base { font-size: 18px; }
        .text-lg { font-size: 20px; }
        .text-xl { font-size: 22px; }
        .text-2xl { font-size: 26px; }
        .text-3xl { font-size: 32px; }
        .text-4xl { font-size: 38px; }
        .text-5xl { font-size: 50px; }

        /* Custom Green Colors */
        .bg-custom-green { background-color: #008432; }
        .text-custom-green { color: #008432; }
        .hover\:bg-custom-green-dark:hover { background-color: #006325; }
        .border-custom-green { border-color: #008432; }
        .bg-custom-green-light { background-color: #f0f9f4; }
        a[href="https://mitsukijapan.com/ma/feature/"].bg-custom-green,
        a[href="https://mitsukijapan.com/ma/interviews/"].bg-custom-green,
        a[href="https://mitsukijapan.com/ma/faq/"].bg-custom-green,
        a[href="/ma/feature/"].bg-custom-green,
        a[href="/ma/interviews/"].bg-custom-green,
        a[href="/ma/faq/"].bg-custom-green {
            background: transparent !important;
            color: #008432 !important;
            border: 1px solid #008432;
            font-weight: 600;
            border-radius: 2px;
            box-shadow: none;
        }
        a[href="https://mitsukijapan.com/ma/feature/"].bg-custom-green:hover,
        a[href="https://mitsukijapan.com/ma/interviews/"].bg-custom-green:hover,
        a[href="https://mitsukijapan.com/ma/faq/"].bg-custom-green:hover,
        a[href="/ma/feature/"].bg-custom-green:hover,
        a[href="/ma/interviews/"].bg-custom-green:hover,
        a[href="/ma/faq/"].bg-custom-green:hover {
            background: #f0f9f4 !important;
            color: #006325 !important;
        }

        .dropdown-menu { display: none; }
        .nav-item:hover .dropdown-menu { display: block; }
        .mobile-menu { display: none; }
        .step-connector {
            position: absolute;
            left: 2rem;
            right: auto;
            top: 4rem;
            bottom: 0;
            width: 2px;
            background-color: #d1d5db; /* gray-300 */
            z-index: -1;
        }
        .max-w-3xl.mx-auto > .relative.pl-16 > .absolute.left-0.top-0.bg-custom-green.rounded-full {
            font-family: 'Noto Serif JP', serif;
            top: -2px;
            width: 3rem !important;
            height: 3rem !important;
            line-height: 1;
            font-size: 1.375rem;
        }
        .flow-step-number {
            display: block;
            transform: translateY(-1px);
        }
        .max-w-3xl.mx-auto > .relative.pl-16 > .step-connector {
            left: 1.5rem;
            top: 3rem;
        }
        /* FAQ Accordion */
        details > summary {
            list-style: none;
        }
        details > summary::-webkit-details-marker {
            display: none;
        }
        details[open] summary .plus-icon {
            transform: rotate(45deg);
        }
        @media (min-width: 1024px) {
            .footer-main-grid {
                grid-template-columns: max-content minmax(320px, 2fr) repeat(3, minmax(0, 1fr));
            }
            .footer-main-grid > * {
                grid-column: auto !important;
            }
            .footer-ma-links {
                margin-left: 10px;
            }
        }
        @media (min-width: 1536px) {
            .footer-services-links {
                margin-left: 48px;
            }
        }

/* ===== 業種別M&A（画像カードUI／<img>実装・JS不使用・レスポンシブ） ===== */
            .mc-ind {
                --g: #2A8F0F;
                --ink: #2B2A27;
                --body: #333;
                --muted: #6E6E68;
                --line: #E7E4DB;
                background: #FAF9F6;
                padding: 5rem 0;
                font-family: 'Noto Sans JP', 'Inter', sans-serif;
                color: var(--body);
            }

            .mc-ind * {
                box-sizing: border-box;
            }

            .mc-ind__inner {
                width: 100%;
                max-width: 1180px;
                margin-inline: auto;
                padding-inline: 1.25rem;
            }

            .mc-ind__head {
                max-width: 760px;
                margin: 0 0 2.75rem;
            }

            .mc-ind__eyebrow {
                margin: 0 0 .55rem;
                font-size: 12px;
                font-weight: 700;
                letter-spacing: .18em;
                color: var(--g);
                text-transform: uppercase;
            }

            .mc-ind__h2 {
                font-family: 'Noto Serif JP', serif;
                font-weight: 600;
                color: var(--ink);
                font-size: 33px;
                letter-spacing: .06em;
                line-height: 1.45;
                margin: 0;
            }

            .mc-ind__desc {
                font-size: 16px;
                line-height: 1.85;
                color: var(--body);
                margin: .9rem 0 0;
            }

            /* グリッド（ul/li・装飾なし） */
            .mc-ind__feats,
            .mc-ind__grid {
                list-style: none;
                margin: 0;
                padding: 0;
                display: grid;
            }

            .mc-ind__feats {
                grid-template-columns: 1fr 1fr;
                gap: 1.75rem;
                margin-bottom: 1.75rem;
            }

            .mc-ind__grid {
                grid-template-columns: repeat(3, 1fr);
                gap: 1.5rem;
            }

            /* カード：<a>全体リンク・画像＋下グラデ＋白抜き名 */
            .mc-ind__card {
                position: relative;
                display: block;
                overflow: hidden;
                border-radius: 8px;
                aspect-ratio: 16/9;
                background: #3b3b37;
                text-decoration: none;
            }

            .mc-ind__img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                display: block;
                transition: transform .5s ease;
            }

            .mc-ind__card::after {
                content: "";
                position: absolute;
                inset: 0;
                pointer-events: none;
                background: linear-gradient(to top, rgba(0, 0, 0, .58) 0%, rgba(0, 0, 0, .26) 40%, rgba(0, 0, 0, .04) 72%, rgba(0, 0, 0, 0) 100%);
            }

            .mc-ind__name {
                position: absolute;
                left: 22px;
                bottom: 18px;
                right: 18px;
                z-index: 1;
                margin: 0;
                font-family: 'Noto Serif JP', serif;
                font-weight: 600;
                color: #fff;
                letter-spacing: .05em;
                line-height: 1.25;
                text-shadow: 0 2px 8px rgba(0, 0, 0, .45);
                font-size: 20px;
            }

            .mc-ind__item--large .mc-ind__name {
                font-size: 27px;
                left: 26px;
                bottom: 22px;
            }

            /* ホバー：画像をわずかに拡大 */
            .mc-ind__card:hover .mc-ind__img {
                transform: scale(1.045);
            }

            .mc-ind__card:focus-visible {
                outline: 2px solid var(--g);
                outline-offset: 3px;
            }

            @media (max-width:900px) {
                .mc-ind__grid {
                    grid-template-columns: repeat(2, 1fr);
                }
            }

            @media (max-width:760px) {
                .mc-ind {
                    padding: 3.5rem 0;
                }

                .mc-ind__feats {
                    grid-template-columns: 1fr;
                    gap: 1.25rem;
                    margin-bottom: 1.25rem;
                }

                .mc-ind__grid {
                    gap: 1.1rem;
                }

                .mc-ind__name {
                    font-size: 18px;
                    left: 16px;
                    bottom: 14px;
                }

                .mc-ind__item--large .mc-ind__name {
                    font-size: 22px;
                    left: 18px;
                    bottom: 16px;
                }
            }

            @media (max-width:520px) {
                .mc-ind__grid {
                    grid-template-columns: 1fr;
                }
            }

            @media (prefers-reduced-motion:reduce) {
                .mc-ind__img {
                    transition: none;
                }

                .mc-ind__card:hover .mc-ind__img {
                    transform: none;
                }
            }
