@media (max-width: 750px) {
    header {
        height: 10.8rem;
        width: 100vw;
        overflow: hidden;
        padding: 0;
    }

    .logo.header {
        margin-left: 10px;
        width: 30.48rem;
    }

    .main-nav {
        margin: 0;
        gap: 2rem;
    }

    .main-nav li:nth-of-type(4) a {
        width: 9.24rem;
        height: 9.24rem;
        border-radius: 50%;
        text-indent: -9999px;
        overflow: hidden;
        font-size: 0 !important;
    }

    .main-nav li:nth-of-type(4) a::before {
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 3.12rem;
        height: 2.4rem;
        background-size: 3.12rem;
    }

    .menu-icon {
        height: 10.8rem;
        aspect-ratio: 1/1;
        background-color: #fff;
        position: relative;
        transition: all ease-in-out .35s;
    }

    .menu-icon span {
        width: 6rem;
        height: 2px;
        border: none;
        background-color: var(--bg-color);
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateX(-50%);
        transition: all ease-in-out .35s;
    }

    .menu-icon span::before {
        content: '';
        width: 6rem;
        height: 2px;
        border: none;
        background-color: var(--bg-color);
        position: absolute;
        top: -1.8rem;
        left: 50%;
        transform: translateX(-50%);
        transition: all ease-in-out .35s;
    }

    .menu-icon span::after {
        content: '';
        width: 6rem;
        height: 2px;
        border: none;
        background-color: var(--bg-color);
        position: absolute;
        top: 1.8rem;
        left: 50%;
        transform: translateX(-50%);
        transition: all ease-in-out .35s;
    }

    .open .menu-icon span {
        height: 0;
        width: 0;
    }

    .open .menu-icon span::before {
        top: 0;
        transform: translateX(-50%) rotate(45deg);
    }

    .open .menu-icon span::after {
        top: 0;
        transform: translateX(-50%) rotate(-45deg);
    }

    /* SP MENU */

    .open .sp_menu {
        opacity: 1;
        transform: translateX(0);
    }

    /* TOP */
    .top {
        height: 144vw;
        max-height: unset;
        background: url("../img/mv-sp.webp") no-repeat;
        background-size: 100%;
    }

    .top-img {
        width: 58%;
        transform: translateX(30%);
		margin-top:-60px;
    }

    .top-img.fir {
        right: 54.5%;
    }

    .top .content {
        width: 76.4%;
        top: 48%;
        left: 1.3125rem;
    }

    .top .content h1 {
        font-size: 13.5rem;
        line-height: 12rem;
        padding-left: 2rem;
        margin-bottom: 4rem;
    }

    .top .content h1 span {
        font-size: 8.5rem;
    }

    .top .content p {
        margin-top: 13px;
        font-size: 3.7rem;
        white-space: nowrap;
        padding-left: 3rem;
    }

    .text-slide {
        transform: translateY(42%);
    }

    /* ABOUT */
    .about {
        flex-direction: column;
        max-height: unset;
        align-items: flex-start;
    }

    .about>div {
        width: 100%;
    }

    .about-content {
        font-size: 3rem;
    }

    /* STRENGTHS */
    .strengths-content {
        flex-direction: column;
        gap: 56px;
        margin: 0 auto;
        margin-top: 50px;
        width: 80vw;
        max-width: 450px;
    }

    .strengths-item {
        width: 100%;
        transform: translateX(0);
    }

    .strengths-item .item-img {
        max-height: unset;
    }

    .strengths-item .item-img span {
        font-size: 26px;
    }

    .strengths-item h2 {
        font-size: 24px;
    }

    .strengths-item p {
        font-size: 16px;
    }

    .strengths-item p span {
        /*font-size: 24px;*/
    }

    /* SUPPORT */
    .support-item {
        flex-direction: column !important;
    }

    .support-item .item-img {
        width: unset;
        margin: 3.6rem 4.8rem;
    }

    .support-item .item-content {
        padding: unset;
        width: 88%;
    }

    .support-item .item-content h1 {
        font-size: 7rem;
        line-height: 7.2rem;
        white-space: nowrap;
    }

    .support-item .item-content p {
        font-size: 3.3rem;
        margin-top: 3.6rem;
        margin-bottom: 52px;
    }

    .support-item:nth-of-type(1) {
        background: url("../img/support_bg01_sp.webp") no-repeat left/cover;
    }

    .support-item:nth-of-type(2) {
        background: url("../img/support_bg02_sp.webp") no-repeat left/cover;
    }

    .support-item:nth-of-type(3) {
        background: url("../img/support_bg03_sp.webp") no-repeat left/cover;
    }


    .support-item .item-content span {
        font-size: 2.4rem;
        top: 6.8%;
        right: 7.5%;
        left: unset;
        padding: 1.32rem 2.64rem;
    }

    /* FAQ */

    .faq-item {
        gap: 3rem;
    }

    .faq-item .item-content {
        color: #333333;
    }

    .faq-item .item-num {
        font-size: 9.5rem;
    }

    .faq-item .item-content h2 {
        font-size: 3.5rem;
        line-height: 1.3;
    }

    .faq-item .item-content h2::after {
        bottom: 0.5rem;
        height: 1.5rem;
    }

    .faq-item .item-content p {
        margin-top: 10px;
    }

    /* GROW */
    .grow {
        width: 84.5%;
    }

    .grow-content {
        flex-direction: column;
        gap: 7rem;
    }

    .grow-item {
        gap: 10px;
    }

    .grow-item h1 {
        font-size: 3.9rem;
        line-height: 1;
    }

    .grow-item p {
        font-size: 3.1rem;
    }

    /* LIVERS  */
    .livers-content {
        flex-direction: column;
        gap: 10vw;
    }

    .livers-item {
        width: 100%;
    }

    .livers-item .item-content {
        height: max-content;
        font-size: 3rem;
        /*letter-spacing: 0.6rem;*/
    }

    .item-footer p {
        width: 93%;
        font-size: 2.5rem;
        letter-spacing: 0.4rem;
    }

    .item-button {
        height: 12rem;
        max-height: 80px;
        border-radius: 40px;
        font-size: 3.5rem;
    }

    .item-button::after {
        width: 25px;
        height: 25px;
        right: 40px;
    }

    /* SYSTEM */
    .system {
        margin-top: 22.66vw;
    }

    .strengths-content.container {
        margin: 0 auto;
    }

    .system .strengths-content {
        gap: 12.53vw;
        padding-top: 30vw;
    }

    .strengths-item .item-img {
        width: 87%;
        transform: skew(-10deg) translateX(7%);
    }

    .strengths-item .item-content {
        transform: translateX(0);
    }

    .system-back {
        top: 70vw;
    }

    /* FLOW */
    .flow {
        margin-top: 20vw;
    }

    .flow-item .item-content {
        flex-direction: column;
    }

    /* CONTACT */
    .contact .contact-item {
        width: 100%;
        height: 60vw;
    }

    #contact {
        height: 80vw;
    }

    .contact-item .item-title {
        font-size: 60px;
    }

    .contact-item .description {
        font-size: 12px;
    }

    .contact .more-btn a {
        width: calc(96% - 40px);
        margin-left: 12px;
    }

    /* FOOTER */
    .footer {
        flex-direction: column;
        align-items: center;
        gap: 18rem;
    }

    .footer-logo {
        width: 46.2rem;
    }

    .footer-nav {
        font-size: 5.52rem;
        flex-direction: column;
        padding: unset;
        gap: 18rem;
    }

    /* --------------------------------------------------- */
    /* -------------- C O M P A N Y ---------------------- */
    /* --------------------------------------------------- */
    #company-top {
        background: url(../img/company-top-sp.webp) no-repeat center/cover;
    }

    .company-main {
        margin-top: 50px;
    }

    .company-main table tr {
        display: flex;
        flex-direction: column;
    }

    .company-main table tr td {
        font-size: 3.36rem;
        letter-spacing: 0.48rem;
        padding: 3.6rem 0;
    }

    .company-main table tr td:nth-of-type(1),
    .company-main table tr td:nth-of-type(2) {
        width: calc(119vw - 100px);
        padding-inline: 50px;
        border: none !important;
    }

    .company-main table tr td:nth-of-type(1) {
        background-color: #e7e7e7;
    }

    .company-main table tr:nth-of-type(3) td:nth-of-type(2) {
        padding-top: 0;
        padding-inline: 0;
        width: 100%;
        line-height: 1.5;
        margin-top: 35px;
    }

    .company-main table tr:nth-of-type(3) td:nth-of-type(2) p {
        margin-inline: 50px;
    }

    iframe {
        width: 100%;
    }

    /* --------------------------------------------------- */
    /* -------------- C O N T A C T ---------------------- */
    /* --------------------------------------------------- */

    #contact-top {
        background: url(../img/contact-top-sp.webp) no-repeat center/cover;
        height: 90.8vw;
    }

    .contact-step .content p:nth-of-type(1) {
        font-size: 2.88rem;
    }

    .contact-step .content p:nth-of-type(2) {
        font-size: 2.4rem;
    }

    .step-diagram p {
        font-weight: 400;
        font-size: 1.92rem;
    }

    .step-diagram span.arrow {
        width: 4.8rem;
    }

    .step-diagram span.arrow::after {
        width: 1.8rem;
    }

    form {
        font-size: 2.64rem;
    }

    form label {
        margin-top: 35px;
        font-size: 2.64rem;
    }

    form input {
        font-size: 2.16rem;
    }

    /* --------------------------------------------------- */
    /* ------------------ L I V E R ---------------------- */
    /* --------------------------------------------------- */

    #liver-top {
        background: url(../img/liver-top-sp.webp) no-repeat center/cover;
        height: 90.8vw;
    }
}