   body {
        padding-bottom: 0;
    }
    .intro_wrap {
        padding-top: calc(60vw/var(--mainWidth));
        padding-bottom: calc(100vw/var(--mainWidth));
        background: url('/img/intro/bg-intro.png') no-repeat center center / cover;
    }
    .intro_logo {
        width: calc(430vw/var(--mainWidth));
        margin: 0 auto;
    }
    .intro_logo img {
        width: 100%;
    }
    .main-row {
        display: flex;
        justify-content: center;
        align-items: stretch;
        margin: 0 auto;
        width: calc(1720vw/var(--mainWidth));
        gap: calc(33vw/var(--mainWidth));
    }
    .main-col {
        width: calc(853vw/var(--mainWidth));
        height: calc(766vw/var(--mainWidth));
        display: flex;
        flex-direction: column;
        align-items: center;
        position: relative;
        padding-top: calc(155vw/var(--mainWidth));
        cursor: pointer;
    }
    .main-col.left {
        background: url('/img/intro/bg-clinic.png?ver=260205') no-repeat center center;
        background-size: cover;
    }
    .main-col.right {
        background: url('/img/intro/bg-spm.png?ver=260205') no-repeat center center;
        background-size: cover;
    }
    .main-col.left > a, .main-col.right > a {
        display: block;
        width: 100%;
        height: 100%;
        pointer-events: none;
    }
    .intro_title {
        width: 100%;
        font-size: calc(70vw/var(--mainWidth));
        font-weight: 600;
        color: #fff;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        letter-spacing: -.06em;
        line-height: 1;
    }
    .intro_title svg {
        width: calc(60vw/var(--mainWidth));
        height: auto;
        margin-bottom: calc(40vw/var(--mainWidth));
    }
    .intro_title span {
        font-family: var(--subFont1);
        font-size: calc(62vw/var(--mainWidth));
        font-weight: 100;
        color: white;
        letter-spacing: 0.1em;
    }
    .intro_title strong {
        font-size: calc(105vw/var(--mainWidth));
        font-weight: 600;
        color: white;
    }

    .main-btn-grid {
        margin: 0 auto;
        margin-top: calc(127vw/var(--mainWidth));
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-gap: calc(9vw/var(--mainWidth)) calc(8vw/var(--mainWidth));
        width: calc(556vw/var(--mainWidth));
        position: relative;
        z-index: 5;
    }
    .main-btn-grid::before {
        content: '';
        position: absolute;
        top: calc(-100vw/var(--mainWidth));
        left: 50%;
        transform: translateX(-50%);
        width: 3px;
        height: calc(60vw/var(--mainWidth));
        background: white;
    }

    .main-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: calc(178vw/var(--mainWidth));
        height: calc(48vw/var(--mainWidth));
        background: white;
        color: #ff6490;
        font-family: var(--mainFont);
        font-weight: 400;
        font-size: calc(26vw/var(--mainWidth));
        cursor: pointer;
        text-align: center;
        border: none;
        border-radius: calc(24vw/var(--mainWidth));
        transition: background 0.3s, color 0.3s;
        overflow: hidden;
        position: relative;
        z-index: 5;
        pointer-events: auto;
    }
    .main-btn a {
        display: block;
        width: 100%;
        height: 100%;
        text-decoration: none;
        color: #ff6490;
    }
    .main-btn:hover {
        background: #ff6490;
        color: #fff;
    }
    .main-col.right .spm-link-btn {
        position: absolute;
        left: 1vw;
        top: 1vw;
        width: calc(200vw/var(--mainWidth));
        height: calc(200vw/var(--mainWidth));
        border: none;
        border-radius: 50%;
        cursor: pointer;
        transition: background 0.13s, color 0.13s;
        background-color: white;
        z-index: 10;
        pointer-events: auto;
    }
    .main-col.right .spm-link-btn .rotate-txt {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: calc(170vw/var(--mainWidth));
        height: calc(170vw/var(--mainWidth));
        animation: rotate360 10s linear infinite;
    }
    .main-col.right .spm-link-btn .rotate-txt img {
        width: 100%;
        height: 100%;
    }
    .main-col.right .spm-link-btn .icon-arrow {
        display: inline-block;
        width: calc(54vw/var(--mainWidth));
        height: auto;
    }
    .main-col.right .spm-link-btn .icon-arrow img {
        width: 100%;
        height: auto;
    }

    @keyframes rotate360 {
        100% {
            transform: translate(-50%, -50%) rotate(360deg);
        }
        0% {
            transform: translate(-50%, -50%) rotate(0deg);
        }
    }
    
    .main-col.left .clinic-link-btn {
        position: absolute;
        right: 1.3vw;
        top: 1.3vw;
        width: calc(200vw/var(--mainWidth));
        height: calc(200vw/var(--mainWidth));
        border: none;
        border-radius: 50%;
        cursor: pointer;
        transition: background 0.13s, color 0.13s;
        background-color: white;
        z-index: 10;
        pointer-events: auto;
    }
    .main-col.left .clinic-link-btn .rotate-txt {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: calc(170vw/var(--mainWidth));
        height: calc(170vw/var(--mainWidth));
        animation: rotate360 10s linear infinite;
    }
    .main-col.left .clinic-link-btn .rotate-txt img {
        width: 100%;
        height: 100%;
    }
    .main-col.left .clinic-link-btn .icon-arrow {
        display: inline-block;
        width: calc(54vw/var(--mainWidth));
        height: auto;
    }
    .main-col.left .clinic-link-btn .icon-arrow img {
        width: 100%;
        height: auto;
    }
    .main-col.right .spm-link-btn:hover {
        color: #fff;
    }

    @media (max-width: 800px) {
        .intro_wrap {
            height: 100vh;
        }
        .intro_logo {
            width: calc(320vw/var(--mainWidth));
        }
        .main_wr {
            margin-top: calc(40vw/var(--mainWidth));
        }
        .main-row {
            width: calc(970vw/var(--mainWidth));
            padding: 0 calc(16vw/var(--mainWidth));
            flex-direction: column;
            gap: calc(58vw/var(--mainWidth));
        }
        .main-col {
            width: 100%;
            height: calc(858vw/var(--mainWidth));
            padding-top: calc(180vw/var(--mainWidth));
        }

        .intro_title {
            width: 100%;
            font-size: calc(70vw/var(--mainWidth));
            font-weight: 600;
            color: #fff;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            letter-spacing: -.06em;
            line-height: 1;
        }
        .intro_title svg {
            width: calc(66vw/var(--mainWidth));
        }
        .intro_title span {
            font-size: calc(68vw/var(--mainWidth));
        }
        .intro_title strong {
            font-size: calc(115vw/var(--mainWidth));
        }

        .main-btn-grid {
            margin-top: calc(150vw/var(--mainWidth));
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            grid-gap: calc(15vw/var(--mainWidth)) calc(14vw/var(--mainWidth));
            width: calc(800vw/var(--mainWidth));
            position: relative;
            z-index: 5;
        }
        .main-btn-grid::before {
            top: calc(-110vw/var(--mainWidth));
            height: calc(67vw/var(--mainWidth));
        }

        .main-btn {
            width: 100%;
            height: calc(73vw/var(--mainWidth));
            font-size: calc(36vw/var(--mainWidth));
            pointer-events: auto;
            border-radius: calc(36vw/var(--mainWidth));
        }
        .main-col.right .spm-link-btn {
            width: calc(240vw/var(--mainWidth));
            height: calc(240vw/var(--mainWidth));
            pointer-events: auto;
        }
        .main-col.right .spm-link-btn .rotate-txt {
            width: calc(200vw/var(--mainWidth));
            height: calc(200vw/var(--mainWidth));
        }
        
        .main-col.right .spm-link-btn .icon-arrow {
            width: calc(59vw/var(--mainWidth));
        }
        .main-col.left .clinic-link-btn {
            width: calc(240vw/var(--mainWidth));
            height: calc(240vw/var(--mainWidth));
            pointer-events: auto;
        }
        .main-col.left .clinic-link-btn .rotate-txt {
            width: calc(200vw/var(--mainWidth));
            height: calc(200vw/var(--mainWidth));
        }
        .main-col.left .clinic-link-btn .icon-arrow {
            width: calc(59vw/var(--mainWidth));
        }
    }


