@media only screen and (min-width:1300px) {
    .d-none-lg {
        display: none
    }
}

/* @media only screen and (max-width:1300px) {
    .mobile-header .header__nav {
        display: flex;
    }
    .mobile-header .header__nav .header__nav-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 38px;
        padding: 10px;
        background: #3d5f51;
        font-family: "LINE Seed JP";
        font-style: normal;
        font-weight: 700;
        font-size: 14px;
        line-height: 18px;
        text-align: center;
        letter-spacing: 1px;
        color: #fff;
        border-right: 1px solid #fff
    }

    .mobile-header .header__nav .header__nav-item:hover,
    .mobile-header .header__nav .header__nav-item--active {
        background: #63ac6b
    }

    .sidebar,
    .sidebar-submenu {
        display: none
    }

    .main-body {
        margin-left: 0;
        width: 100%
    }

    .blog-detail-page {
        padding: 100px 0
    }
} */

@media only screen and (max-width:991px) {
    .hero .hero__right .hero__content .hero__text h2 {
        font-size: 20px;
        line-height: 28px;
        margin-bottom: 10px
    }

    .hero .hero__right .hero__content .hero__text p {
        font-size: 14px
    }

    .works-section .works-section__footer {
        margin-top: 40px
    }

    .section-heading--light h4,
    .clevelex-section h2 {
        font-size: 30px
    }

    .about-section .about-section__row--left-padded,
    .about-section .about-section__row--right-padded {
        padding-right: 0;
        padding-left: 0
    }

    .about-section__row .about-section__content {
        padding: 0 20px
    }

    .about-section .about-section__row {
        gap: 0
    }

    .about-section .about-section__row .about-section__content p {
        font-size: 15px;
        line-height: 26px
    }

    .gallery .gallery__item {
        height: 220px
    }

    .audience-section .hiroshima-card p {
        font-size: 16px
    }

    .gallery .gallery__item {
        height: 180px
    }

    .footer .footer__row .footer__col h6 {
        font-size: 16px
    }

    .footer .footer__row .footer__col .footer__nav a {
        font-size: 12px
    }

    .footer .footer__row .footer__col .footer__nav {
        gap: 8px
    }

    .hero .hero__right .hero__banner {
        height: calc(100vh - 250px)
    }

    .hero .hero__right .hero__content {
        height: 250px
    }

    .services-hero .hero__right {
        padding: 40px 30px 30px 30px
    }

    .services-hero h1 {
        font-size: 33px;
        line-height: 40px
    }

    .services-hero .hero__right h4 {
        margin-bottom: 20px
    }

    .services-hero .hero__right .service-lead {
        margin: auto auto 20px;
        font-size: 25px;
        line-height: 34px;
        text-align: center;
    }

    .services-hero .hero__right p {
        margin-bottom: 20px
    }

    .services-hero .hero__right .strengt-wrapper {
        margin: auto;
    }

    .services-subnav {
        padding: 15px;
        flex-wrap: wrap
    }

    .service-content .content {
        padding: 30px 0 0
    }

    .service-content .video-card {
        margin: auto auto 60px;
    }

    .service-content .serve-flow .flow-card {
        padding: 20px;
        width: 50%;
    }

    .service-content .serve-flow {
        flex-wrap: wrap;
    }

    .service-content {
        padding: 120px 0
    }

    .rental-delivery-product .product-assets {
        width: 360px
    }

    .rental-delivery-product .product-assets .product-slider .main-slider {
        width: 356px;
        height: 356px
    }

    .rental-delivery-product {
        gap: 20px
    }

    .rental-delivery-product .product-detail {
        width: calc(100% - 380px)
    }

    .rental-delivery-product .tags span {
        height: auto
    }

    .rental-delivery-product .heading {
        font-size: 22px
    }

    .rental-delivery-product .pro-detail-card .check-list h6 {
        font-size: 16px
    }

    .rental-delivery-product .pro-detail-card .table-card .t-row {
        padding: 10px 0
    }

    .rental-delivery-product .pro-detail-card .table-card .t-row .col-1 span {
        font-size: 14px
    }

    .rental-delivery-product .pro-detail-card .table-card .t-row .col-1 {
        width: 90px
    }

    .rental-delivery-product .pro-detail-card .table-card .t-row .col-2 {
        width: calc(100% - 105px)
    }

    .rental-delivery-product .pro-detail-card .table-card .t-row .col-2 span {
        font-size: 14px
    }

    .categories-card .categories-card-row {
        flex-direction: column-reverse;
        gap: 20px
    }

    .other-pages-body .heading-section .categories-card .categories-card-row .display-order,
    .other-pages-body .heading-section .categories-card .categories-card-row .card-left {
        width: 100%
    }

    .blog-detail-page {
        padding: 80px 0
    }

    .blog-detail-page h1 {
        font-size: 22px;
        margin-bottom: 20px;
    }

    .blog-detail-page .blog-detail-card {
        padding: 30px 25px
    }

    .blog-detail-page .blog-detail-card .blog-detail-part h3 {
        font-size: 24px
    }

    .blog-detail-page .blog-detail-card .blog-detail-part p {
        font-size: 16px
    }

    .blog-detail-page .page-n-p {
        padding: 100px 0
    }
}

@media screen and (min-width:992px) {
    .d-none-md {
        display: none;
    }
}

@media screen and (max-width:768px) {
    .wp-singular h2.wp-block-heading {
        font-size: 24px;
        line-height: 30px;
    }
    .wp-singular h3.wp-block-heading {
        margin: 40px auto 20px;
        font-size: 22px;
        line-height: 28px;
    }
    .wp-singular h4.wp-block-heading {
        margin: 40px auto 20px;
        font-size: 20px;
        line-height: 26px;
    }
    .wp-singular h5.wp-block-heading {
        margin: 40px auto 10px;
        font-size: 18px;
        line-height: 24px;
    }
    .wp-singular h6.wp-block-heading {
        margin: 40px auto 10px;
        font-size: 16px;
        line-height: 24px;
    }

    /*  */
    .mobile-header__wrap {
        position: static;
        top: auto;
        width: 100%;
        z-index: 100;
    }
    .mobile-header {
        padding-top: 0;
    }
    .mobile-header .header__nav {
        display: flex;
    }
    .mobile-header .header__nav .header__nav-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 38px;
        padding: 10px;
        background: #3d5f51;
        font-family: "LINE Seed JP";
        font-style: normal;
        font-weight: 700;
        font-size: 14px;
        line-height: 18px;
        text-align: center;
        letter-spacing: 1px;
        color: #fff;
        border-right: 1px solid #fff
    }

    .mobile-header .header__nav .header__nav-item:hover,
    .mobile-header .header__nav .header__nav-item--active {
        background: #63ac6b
    }

    /* .service-heading {
        padding-top: 76px;
    } */
    /* .wp-singular .service-heading {
        padding-top: 30px;
    } */

    .sidebar,
    .sidebar-submenu {
        display: none
    }

    .main-body {
        margin-left: 0;
        width: 100%
    }

    /* .blog-detail-page {
        padding: 100px 0
    } */
    /*  */

    .header {
        display: none;
    }

    .hero {
        min-height: auto;
        height: auto;
        flex-direction: column
    }

    .hero .hero__left {
        width: 100%;
        height: 375px
    }

    .hero .hero__right {
        height: auto;
        width: 100%
    }

    .hero .hero__right .hero__banner {
        display: none
    }

    .hero .hero__right .hero__content {
        padding: 30px 20px
    }

    .hero .hero__right .hero__content .hero__text h2 {
        max-width: 356px;
        text-align: center
    }

    .hero .hero__right .hero__content .hero__text {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center
    }

    .hero .hero__right .hero__content .hero__text p {
        text-align: center
    }

    .hero .hero__right .hero__content {
        height: auto
    }

    .rental,
    .comparison,
    .audience-section,
    .column-section,
    .news-section,
    .usage-section,
    .about-section,
    .guide-section,
    .service-section {
        padding: 80px 0
    }

    .works-section {
        padding: 80px 0 120px
    }

    .clevelex-section {
        width: 50px 0
    }

    .service-tailored {
        padding: 80px 0 60px
    }

    .service-section .service-section__bottom-grass {
        width: auto;
        height: 100px
    }

    .service-section__serve {
        position: fixed;
        width: 100%;
        bottom: 0;
        left: 0;
        right: 0;
        display: flex;
        border-top: 1px solid #63ac6b;
        justify-content: space-between;
        background: #fff;
        box-shadow: 0 -4px 16px rgba(61, 95, 81, 0.12);
        z-index: 10;
    }
    .service-section__serve .service-section__serve-row {
        flex: 1 1 auto;
        min-width: 0;
        display: flex;
        justify-content: space-evenly
    }
    .service-section__serve .service-section__serve-row .service-section__serve-col {
        flex: 1 1 0;
        min-width: 0;
        height: 55px;
        display: flex;
        gap: 5px;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        border-right: 1px solid #e9eae5
    }
    .service-section__serve .service-section__serve-row .service-section__serve-col span {
        font-family: "LINE Seed JP", sans-serif;
        font-style: normal;
        font-weight: 700;
        font-size: 11px;
        line-height: 13px;
        letter-spacing: 1px;
        color: #3d5f51
    }
    .service-section__serve .service-section__serve-row .service-section__serve-col, .service-section__serve .service-section__arrow {
        text-decoration: none
    }
    .service-section__serve .service-section__arrow {
        flex: 0 0 40px;
        width: 40px;
        height: 55px;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #63ac6b
    }

    .service-section__serve .service-section__serve-row {
        display: flex;
        flex: 1 1 auto;
        min-width: 0;
        width: calc(100% - 40px);
    }

    .service-section__serve .service-section__arrow {
        flex: 0 0 40px;
        width: 40px;
        height: 58px;
    }

    .service-section__serve .service-section__serve-row .service-section__serve-col {
        flex: 1 1 0;
        min-width: 0;
        height: 58px;
        padding: 6px 4px;
    }

    .service-section__serve .service-section__serve-row .service-section__serve-col svg {
        max-width: 18px;
        height: auto;
    }

    .service-section__serve .service-section__serve-row .service-section__serve-col span {
        font-size: 10px;
        line-height: 14px;
        letter-spacing: 0.02em;
        text-align: center;
        white-space: normal;
        word-break: keep-all;
    }

    .works-section .works-section__grass {
        width: auto;
        height: 120px
    }

    .section-heading h4 {
        font-family: "LINE Seed JP";
        font-style: normal;
        font-weight: 700;
        font-size: 30px;
        line-height: 35px;
        text-align: center;
        letter-spacing: 1.5px;
        color: #333;
        margin-bottom: 10px
    }

    .section-heading p {
        font-family: "LINE Seed JP";
        font-style: normal;
        font-weight: 700;
        font-size: 12px;
        line-height: 20px;
        text-align: center;
        letter-spacing: 2px;
        text-transform: uppercase;
        color: #63ac6b
    }

    .service-card .service-card__content p {
        font-size: 15px
    }

    .rental-card .rental-card__head h3 {
        font-size: 22px;
        margin-bottom: 10px;
        line-height: normal
    }

    .rental-card .rental-card__head p {
        font-size: 15px;
        line-height: normal
    }

    .rental-card .rental-card__product .rental-card__product-banner {
        height: 100px;
        width: 100px
    }

    .rental-card .rental-card__product .rental-card__product-info {
        width: calc(100% - 120px)
    }

    .rental-card .rental-card__product .rental-card__product-info h4 {
        font-size: 17px
    }

    .rental-card .rental-card__product .rental-card__product-info p {
        font-size: 14px
    }

    .rental-card .rental-card__body {
        padding: 15px
    }

    .section-heading h5 {
        font-size: 16px;
        line-height: 26px;
    }

    .comparison .comparison__table {
        overflow: auto;
        padding-bottom: 15px
    }

    .comparison .comparison__table table {
        min-width: 560px
    }

    .comparison .comparison__table table thead th {
        height: auto;
        padding: 10px 15px
    }

    .comparison .comparison__table table thead th:first-child,
    .comparison .comparison__table table thead th:last-child,
    .comparison .comparison__table table tbody tr:last-child td:first-child,
    .comparison .comparison__table table tbody tr:last-child td:last-child {
        border-radius: inherit;
    }

    .comparison .comparison__table table thead th .comparison__cell-content h6 {
        font-size: 15px
    }

    .comparison .comparison__table table thead th .comparison__cell-content p {
        font-size: 13px
    }

    .comparison .comparison__table table tbody td {
        padding: 13px 15px;
    }

    .comparison .comparison__table table tbody td .comparison__cell-content p {
        font-size: 13px
    }

    .comparison .comparison__table table tbody td .comparison__cell-content img {
        height: 20px
    }

    .comparison .comparison__table table tbody td {
        height: auto
    }

    .comparison .comparison__table table tbody td .comparison__cell-content h5 {
        font-size: 14px;
    }

    .comparison .comparison__note p {
        font-size: 14px
    }

    .comparison__table {
        overflow-x: auto;
    }

    .comparison__table table {
        border-collapse: collapse;
        min-width: 700px; /* 必要に応じて調整 */
    }

    .comparison__table th:first-child,
    .comparison__table td:first-child {
        position: sticky;
        left: 0;
        z-index: 2;
        background: #fff; /* 背景ないと透ける */
    }

    /* ヘッダーの1列目は少し上 */
    .comparison__table thead th:first-child {
        z-index: 3;
    }

    /* スマホ時だけ適用 */
    .comparison__table {
        overflow-x: auto;
    }

    .service-tailored .service-tailored__tooltip {
        max-width: 296px;
        margin: -120px auto 22px;
    }

    .service-tailored .service-tailored__btn img {
        width: 75px;
        height: 85px;
        -o-object-fit: cover;
        object-fit: cover
    }

    .service-tailored .service-tailored__btn {
        height: 85px;
        filter: drop-shadow(3px 3px 0 rgba(0, 0, 0, .3))
    }

    .service-tailored .service-tailored__btn:hover {
        transform: translate(3px, 3px);
        filter: drop-shadow(0 0 0 rgba(0, 0, 0, .3))
    }

    .service-tailored .service-tailored__btn--email p,
    .service-tailored .service-tailored__btn--quote p {
        font-size: 20px
    }

    .column-section .column-section__btn {
        box-shadow: 3px 3px 0 rgba(0, 0, 0, .2)
    }

    .column-section .column-section__btn:hover {
        transform: translate(3px, 3px);
        box-shadow: 0 0 0 rgba(0, 0, 0, .2)
    }

    .news-section .news-section__footer .news-section__btn {
        box-shadow: 3px 3px 0 rgba(0, 0, 0, .2)
    }

    .news-section .news-section__footer .news-section__btn:hover {
        transform: translate(3px, 3px);
        box-shadow: 0 0 0 rgba(0, 0, 0, .2)
    }

    .usage-section .usage-card .usage-card__banner {
        height: 130px
    }

    .usage-section .usage-card .usage-card__text {
        padding: 18px
    }

    .usage-section .usage-card .usage-card__text h4 {
        font-size: 16px;
        line-height: 20px;
    }

    .usage-section .usage-card .usage-card__text p {
        font-weight: 400;
        font-size: 13px;
        line-height: 18px
    }

    .usage-section .row {
        margin-left: -5px;
        margin-right: -5px
    }

    .usage-section .col-6 {
        padding-left: 5px !important;
        padding-right: 5px !important
    }

    .service-tailored .service-tailored__btn .service-tailored__btn-content {
        width: calc(100% - 75px);
        padding: 16px 20px
    }

    .works-section .works-card .works-card__banner {
        height: 213px
    }

    .clevelex-section h2 {
        font-size: 25px;
        letter-spacing: 0
    }

    .clevelex-section .clevelex-section__row .clevelex-section__card .clevelex-section__col p {
        font-size: 14px;
        line-height: 20px
    }

    .clevelex-section .clevelex-section__row .clevelex-section__card .clevelex-section__col {
        padding: 15px;
        min-height: auto
    }

    .clevelex-section .clevelex-section__row .clevelex-section__card .clevelex-section__col p span {
        font-size: 12px
    }

    .clevelex-section .clevelex-section__row .clevelex-section__card {
        border-radius: 10px
    }

    .about-section .about-section__row {
        flex-direction: column
    }

    .about-section .about-section__row .about-section__banner {
        width: 100%
    }

    .about-section .about-section__row .about-section__content {
        width: 100%;
        padding: 20px
    }

    .about-section .about-section__row {
        margin-top: 20px
    }

    .about-section .about-section__row .about-section__content h2 {
        font-size: 24px;
        line-height: 35px;
    }

    .hide-sp {
        display: none;
    }

    .gallery.hide-sp {
        display: none;
    }

    .hide-pc {
        display: block;
    }

    .gallery.hide-pc {
        display: flex;
        flex-wrap: wrap;
    }

    .gallery .gallery__item {
        width: 50%
    }

    .gallery--alt .gallery__item:first-of-type {
        width: 100%
    }

    .section-heading h4 {
        font-size: 30px;
        line-height: 35px;
    }

    .problems .problems-card {
        padding: 20px 15px
    }

    .problems .problems-card .content h6 {
        font-size: 16px
    }

    .problems .problems-card .content p {
        font-size: 14px
    }

    .problems .problems-card {
        margin-bottom: 10px
    }

    .cleverex-can-help {
        padding: 35px 20px 40px
    }

    .cleverex-can-help h2 {
        font-size: 28px;
        line-height: 33px
    }

    .cleverex-can-help .down {
        height: 30px;
        bottom: -30px
    }

    .service-content {
        padding: 100px 0
    }

    .service-content .banner {
        height: 300px;
        overflow: hidden;
        width: calc(100% + 203px);
        margin-left: -110px;
    }

    .service-content .banner img {
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center;
        object-position: center;
        margin-left: auto;
        width: 100%;
    }

    .service-strengt__wrapper {
        max-width: 340px;
        margin: 0 auto 40px
    }

    .audience-section .alike-card {
        padding: 20px
    }

    .order1 {
        order: 2
    }

    .order2 {
        order: 1
    }

    .audience-section .alike-card .alike-card__header .alike-card__check {
        height: 20px;
        width: 20px
    }

    .audience-section .alike-card .alike-card__header span {
        font-size: 20px
    }

    .audience-section .alike-card p {
        font-size: 14px;
        margin-bottom: 0
    }

    .audience-section .hiroshima-card p {
        text-align: center
    }

    .news-section .news-card h3 {
        font-size: 15px
    }

    .news-section .blog-card .blog-card__content h3 {
        font-size: 15px
    }

    .services-bar .services-bar__col p {
        font-size: 14px;
        line-height: normal
    }

    .services-bar .services-bar__col {
        padding: 15px
    }

    .services-bar .services-bar__col p span {
        font-size: 12px;
        line-height: normal
    }

    .service-tailored .service-tailored__heading h2 {
        font-size: 22px;
        line-height: 36px
    }

    .service-tailored .service-tailored__heading p {
        font-size: 15px
    }

    .guide-section .guide-card {
        padding: 25px 20px
    }

    .guide-section .guide-card p {
        font-size: 14px
    }

    .guide-section .guide-card .guide-title__wrap {
        font-size: 28px;
        line-height: 24px;
        margin-bottom: 15px;
    }

    .footer .footer__row {
        flex-wrap: wrap
    }

    .footer .footer__row .footer__col {
        width: 50%;
        margin-bottom: 40px
    }

    .footer .footer__row .footer__col h6 {
        margin-bottom: 12px
    }

    .footer .footer__instagram {
        flex-direction: column;
        border-radius: 0;
        width: calc(100% + 30px);
        margin-left: -15px;
        gap: 14px
    }

    .footer .footer__instagram svg {
        display: none
    }

    .footer .footer__instagram .footer__instagram-icon {
        display: inline-flex;
    }

    .footer .footer__instagram .footer__instagram-left .footer__instagram-content p {
        display: none
    }

    .footer {
        padding: 60px 0 0
    }

    .page-bottom .page-bottom__nav a {
        font-size: 13px
    }

    .page-bottom {
        padding: 25px 20px 80px
    }

    .btn-view-all {
        font-size: 16px
    }

    .container--md {
        padding-left: 22px;
        padding-right: 22px;
    }

    .section-heading {
        margin-bottom: 30px;
    }

    .audience-section .section-heading h4 {
        font-size: 20px
    }

    .audience-section .hiroshima-card {
        margin-top: 40px
    }

    .news-section .news-section__col {
        margin-bottom: 60px;
        height: auto
    }

    .news-section {
        padding-bottom: 0
    }

    .service-card .service-card__fukidashi {
        height: 40px
    }

    .news-section .blog-card .blog-card__content {
        padding: 20px
    }

    .services-hero {
        min-height: auto;
        flex-direction: column;
        padding: 0
    }

    .services-hero .hero__left {
        height: 200px;
        display: flex;
        width: 100%
    }

    .services-hero .hero__left .hero__banner {
        height: 200px
    }

    .services-hero .hero__right {
        height: auto;
        min-height: auto;
        width: 100%;
        padding: 30px 22px 60px;
        justify-content: flex-start;
        align-items: flex-start
    }
    /* SP: h1 を Figma 仕様 28px/33px/ls:2px に */
    .services-hero h1 {
        font-size: 28px;
        line-height: 33px;
        letter-spacing: 2px;
        margin-bottom: 0;
        text-align: left
    }

    .services-hero .hero__right .badge {
        margin: auto auto 15px;
    }

    .services-hero .hero__right .strengt-wrapper {
        max-width: 280px;
    }

    .service-content .circles img {
        height: auto;
        width: 340px
    }

    .precautions {
        padding: 20px
    }

    .services-hero .hero__right h5 {
        text-align: center
    }

    .services-hero .hero__right p {
        font-size: 15px;
    }

    .services-subnav .nav-link {
        font-size: 15px
    }

    .services-subnav {
        gap: 10px 20px
    }

    .features-section,
    .problems {
        padding: 80px 0
    }

    .service-content .content h2 {
        font-size: 26px
    }

    .service-content .content p {
        font-size: 16px
    }

    .service-content .serve-flow {
        margin: 20px 0
    }

    .service-content .serve-flow .flow-card {
        border: none
    }

    .service-content .serve-flow .flow-card:nth-child(1) {
        border-right: 1px solid #e9eae5
    }

    .service-content .serve-flow .flow-card:nth-child(2) {
        border-bottom: 1px solid #e9eae5
    }

    .service-content .serve-flow .flow-card:nth-child(3) {
        border-top: 1px solid #e9eae5
    }

    .service-content .serve-flow .flow-card:nth-child(4) {
        border-left: 1px solid #e9eae5
    }

    .service-content .serve-flow .flow-card {
        padding: 15px
    }

    .service-content .serve-flow .flow-card h4 {
        font-size: 18px;
        line-height: 22px;
    }

    .service-content .serve-flow .flow-card p,
    .service-content .serve-flow .flow-card h4 small {
        font-size: 15px;
        line-height: 22px;
    }

    .service-content .serve-flow .flow-card small {
        font-size: 15px
    }

    .service-content .serve-flow .flow-card .icon {
        height: 60px;
        width: 60px;
        padding: 15px;
        background: #f9faf4;
        margin-bottom: 15px;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 100px
    }

    .service-content .serve-flow .flow-card .icon svg {
        width: 100%
    }

    .service-content .bottom-grass {
        width: auto;
        height: 100px;
        left: auto;
        right: auto
    }

    .radio-controlled {
        padding: 60px 0 80px
    }

    .radio-controlled .radio-controlled-content {
        padding: 30px 20px 25px;
    }

    .radio-controlled .radio-controlled-content h4 {
        font-size: 20px;
        line-height: 32px;
    }

    .radio-controlled .radio-controlled-content h6 {
        font-size: 16px;
        line-height: 22px;
    }

    .radio-controlled .radio-controlled-content .radio-controlled-desc {
        margin-top: 20px;
    }

    .features-section .green-card h4 {
        text-align: left
    }

    .features-section .features-card {
        padding: 25px 20px
    }

    .features-section .features-card {
        margin-bottom: 15px;
        height: auto
    }

    .price-section .about-amount {
        flex-direction: column;
        justify-content: center;
        align-items: center
    }

    .price-section .about-amount .content {
        width: 100%;
        text-align: center;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center
    }

    .price-section .about-amount .content p {
        font-size: 15px
    }

    .precautions .inner .precautions-card,
    .conditions-card,
    .price-section .included-card {
        padding: 30px 20px
    }

    .flow-section {
        padding: 80px 0
    }

    .flow-section .accordion .accordion-header .accordion-button {
        padding: 10px 15px
    }

    .flow-section .accordion .accordion-header .accordion-button .step {
        font-size: 25px
    }

    .flow-section .accordion .accordion-header .accordion-button .title {
        gap: 20px
    }

    .flow-section .accordion .accordion-header .accordion-button h4 {
        font-size: 18px
    }

    .flow-section .accordion .accordion-body .action {
        flex-direction: column;
        width: -moz-fit-content;
        width: fit-content
    }

    .flow-section .accordion .accordion-body {
        padding: 20px
    }

    .flow-section .accordion .accordion-item {
        margin-bottom: 15px
    }

    .area-card {
        padding: 30px 20px
    }

    .area-card .area-banner {
        margin-bottom: 25px
    }

    .price-section {
        padding: 80px 0
    }

    .precautions {
        padding: 50px 10px
    }

    .area-card .badges-row .badge {
        width: calc(33.33% - 5px)
    }

    .area-card .bottom-card {
        padding: 25px 20px
    }

    .area-card .bottom-card p {
        text-align: left
    }

    .faq-section {
        padding: 80px 0
    }

    .faq-section .faq-card {
        padding: 25px 15px
    }

    .faq-section .faq-card .content p {
        font-size: 15px
    }

    .breadcumb {
        padding: 14px 8px
    }

    .breadcumb .inner a {
        font-size: 12px;
    }

    .breadcumb .inner small {
        font-size: 12px;
    }

    .further-than-clevelex {
        padding: 80px 0
    }

    .further-than-clevelex h2 {
        font-size: 25px
    }

    .further-than-clevelex p {
        font-size: 15px
    }

    .further-than-clevelex .further-card {
        flex-direction: column
    }

    .further-than-clevelex .further-card .col {
        width: 100%
    }

    .further-than-clevelex .further-card .col.b-right {
        border-right: none;
        border-bottom: 1px solid #e9eae5
    }

    .services__title {
        padding: 35px 22px;
    }

    .services-hero .hero__right h4 {
        display: none
    }
    /* SP: h6 を Figma 仕様で表示 */
    .services-hero h6 {
        font-size: 14px;
        font-weight: 700;
        line-height: 16px;
        letter-spacing: 1px;
        color: #63ac6b;
        margin-bottom: 8px;
        text-align: left
    }

    .other-pages-body {
        padding: 40px 0 80px;
    }

    .other-pages-body .heading-section h6 {
        font-size: 14px
    }

    .other-pages-body .heading-section h1 {
        font-size: 28px;
        margin-bottom: 15px;
        line-height: normal
    }

    .other-pages-body .heading-section .page-summary {
        font-size: 15px;
        line-height: 24px;
    }

    .pt-40 {
        padding-top: 20px
    }

    .news-card-lg {
        padding: 20px 40px 20px 20px
    }

    .news-card-lg span {
        font-size: 13px
    }

    .news-card-lg h3 {
        font-size: 14px
    }

    .pagination-row .page-item .page-link {
        height: 45px;
        width: 45px
    }

    .pagination-row .pagination .page-item:nth-child(4),
    .pagination-row .pagination .page-item:nth-child(5) {
        display: none
    }

    .pagination-row {
        margin-top: 50px
    }

    .blog-listing .row {
        margin-left: -5px;
        margin-right: -5px
    }

    .blog-listing .col-6 {
        width: 47%;
    }

    .blog-listing .blog__card .blog-card__banner {
        height: 105px
    }

    .blog-listing .blog__card .blog-card__content {
        padding: 20px 15px
    }

    .blog-listing .blog__card .blog-card__content .blog-card__date {
        font-size: 13px
    }

    .blog-listing .blog__card .blog-card__content .blog-card__title {
        font-size: 14px
    }

    .wp-singular .categories-card2 {
        margin: 24px auto auto;
    }

    .categories-card2 {
        padding: 30px 20px;
        margin: 35px auto auto;
    }

    .categories-card2 .cat-row .cat-link {
        font-size: 14px
    }

    .categories-card2 h5 {
        font-size: 15px
    }

    .categories-card2 .keyword-row .keyword-link {
        font-size: 13px
    }

    .works-card-md .works-card__content {
        padding: 25px 20px;
        line-height: 20px;
    }

    .works-card-md .works-card__content .column-cart__title {
        font-size: 14px;
    }

    .works-card-md .works-card__content table td {
        font-size: 14px;
        line-height: 18px;
    }

    .works-card-md .works-card__banner {
        height: 210px
    }

    .terms-and-conditions-section .terms-and-conditions-table .table-row {
        flex-direction: column
    }

    .terms-and-conditions-section .terms-and-conditions-table .table-row .table-col-1,
    .terms-and-conditions-section .terms-and-conditions-table .table-row .table-col-2 {
        width: 100%;
        padding: 20px
    }

    .terms-and-conditions-section .terms-and-conditions-table .table-row .table-col-1 span,
    .terms-and-conditions-section .terms-and-conditions-table .table-row .table-col-2 span {
        font-size: 14px
    }

    .terms-and-conditions-section .terms-and-conditions-table {
        margin-bottom: 40px
    }

    .page__heading-section {
        padding: 35px 8px 40px
    }

    .page__heading-section h1,
    .page__heading-section h2 {
        font-size: 28px;
        line-height: normal;
        margin-bottom: 0
    }

    .page-label {
        margin-bottom: 8px;
    }

    .contact__us__section .contact__us__card .heading .text .form-title {
        font-size: 20px;
        line-height: 24px;
        gap: 0;
    }

    .contact__us__section .contact__us__card .heading .text .page-label {
        font-size: 12px;
        line-height: 20px;
    }

    .contact__us__section .contact__us__heading p {
        font-size: 14px
    }

    .contact__us__section .contact__us__card .heading .text {
        padding: 0 20px
    }

    .contact__us__section .contact__us__card {
        padding: 50px 15px
    }

    .cart-card .price-table {
        padding: 15px 0
    }

    .cart-card .price-table .p-row span {
        width: 50%;
        font-size: 12px;
        text-align: left
    }

    .cart-card .total h6 {
        font-size: 16px
    }

    .cart-card .total p {
        font-size: 14px
    }

    .cart-card-bottom h3 {
        margin-bottom: 20px
    }

    .cart-card-bottom .btn-danger {
        font-size: 14px
    }

    .cart-card-bottom .devider {
        margin-top: 50px;
        margin-bottom: 30px
    }

    .cart-card .price-table .p-row p {
        font-size: 12px;
        text-align: left;
        width: 50%
    }

    .wizard-form .step-bar {
        width: 70px
    }

    .wizard-form .panel .form-wrap .field-group {
        margin-bottom: 40px
    }

    .wizard-form .panel .form-wrap .address-zip-row {
        margin-bottom: 20px
    }

    .wizard-form .panel .confirm-content p {
        font-size: 14px
    }

    .wizard-form .panel .form-wrap .terms-scroll-box {
        height: 160px;
        padding: 12px;
        font-size: 13px;
    }

    .wizard-form .panel .form-wrap .terms-scroll-box p {
        font-size: 13px;
        line-height: 21px;
    }
    .page__breadcrumb {
        padding: 30px 5px
    }

    .page__breadcrumb .breadcrumb-row a {
        font-size: 15px
    }

    .page__breadcrumb .breadcrumb-row {
        gap: 10px
    }

    .faq-section {
        padding: 50px 0
    }

    .faq-section h3 {
        font-size: 23px;
        margin-bottom: 30px
    }

    .privacy-policy-section .content-card .heading h4 {
        font-size: 22px
    }

    .privacy-policy-section .section-bottom {
        margin-top: 40px
    }

    .rental-delivery-product {
        flex-direction: column
    }

    .rental-delivery-product .product-assets {
        width: 100%
    }

    .rental-delivery-product .product-assets .product-slider .thumb-slider .swiper-slide {
        height: 64px;
        width: 64px !important;
        border-radius: 8px
    }

    .rental-delivery-product .product-assets .product-slider .thumb-slider {
        margin-top: 10px
    }

    .rental-delivery-product .product-assets .video-card {
        height: 200px
    }

    .rental-delivery-product .product-detail {
        width: 100%
    }

    .rental-delivery-product .heading {
        font-size: 18px
    }

    .rental-delivery-product .tags span {
        font-size: 13px
    }

    .rental-delivery-product .symbol {
        font-size: 14px;
        line-height: 22px;
    }

    .rental-delivery-product .product-detail .dics {
        font-size: 15px
    }

    .rental-delivery-product .nav-pills .nav-link {
        padding: 10px 12px;
        font-size: 15px
    }

    .rental-delivery-product .pro-detail-card {
        padding: 30px 20px;
        border-radius: 10px
    }

    .rental-delivery-product .pro-detail-card .check-list h6 {
        font-size: 15px
    }

    .rental-delivery-product .pro-detail-card .check-list h6 img {
        height: 20px
    }

    .rental-delivery-product .notes {
        font-size: 15px
    }

    .rental-delivery-product .reservation-card {
        padding: 30px 20px;
        border-radius: 10px
    }

    .rc-months {
        grid-template-columns: 1fr
    }

    #rcMonth2,
    #rcTitle2 {
        display: none
    }

    .rental-delivery-product .reservation-card .rc-calendar__inner {
        width: calc(100% + 40px);
        margin-left: -20px
    }

    .rental-delivery-product .reservation-card .rc-calendar__num {
        margin-bottom: 2px
    }

    .rental-delivery-product .reservation-card .rc-calendar__cell {
        margin-bottom: 10px
    }

    .rental-delivery-product .reservation-card .rc-calendar__label {
        margin-top: auto;
    }

    .rental-delivery-product .simultaneou-section p {
        font-size: 14px
    }

    .rental-delivery-product .social-share span {
        font-size: 10px !important
    }

    .other-pages-body .heading-section .categories-card {
        padding: 30px 20px
    }

    .other-pages-body .heading-section .categories-card .categories-card-row .card-left .options .nav-links {
        font-size: 14px
    }

    .rental-delivery-main .row {
        margin-left: -5px;
        margin-right: -5px
    }

    .rental-delivery-main .col-6 {
        padding-left: 5px !important;
        padding-right: 5px !important
    }

    .rental-delivery-main .product-card .banner {
        height: 175px
    }

    .rental-delivery-main .product-card .fav {
        height: 35px;
        width: 35px
    }

    .rental-delivery-main .product-card .content {
        padding: 20px 15px
    }

    .rental-delivery-main .product-card .content .product-card__tag {
        font-size: 12px;
        line-height: 16px;
    }

    .rental-delivery-main .product-card .content .product-card__title {
        font-size: 15px;
        line-height: 18px;
    }

    .rental-delivery-main .product-card .content .product-card__title span {
        font-size: 20px;
        letter-spacing: .5px;
    }

    .rental-delivery-main .product-card .content .product-card__title span.woocommerce-Price-currencySymbol {
        font-size: 18px;
    }

    .rental-delivery-main .product-card .content .product-card__description {
        display: none
    }

    .rental-delivery-main .product-card .content .product-card__price span {
        font-size: 18px;
        line-height: 25px;
        letter-spacing: .5px;
    }

    .rental-delivery-main .product-card .content .product-card__price span.woocommerce-Price-currencySymbol {
        font-size: 12px;
    }

    .price-tax-suffix {
        font-size: 12px;
        line-height: 18px;
    }

    .rental-delivery-main .product-card .content .btn-sold {
        padding: 4px 12px;
        font-size: 12px;
        line-height: 15px;
        letter-spacing: .5px;
    }

    .conditions-card .content ul li span {
        font-size: 15px
    }

    .user-guide-main {
        padding: 50px 0
    }

    .user-guide-main .card-heading {
        font-size: 25px;
        margin-bottom: 30px
    }

    .user-guide-main .guide-card {
        padding: 40px 20px 20px
    }

    .user-guide-main .guide-card p {
        font-size: 15px
    }

    .user-guide-main .guide-card .devider {
        margin: 50px 0
    }

    .user-guide-main .guide-card .guide-card__title {
        font-size: 18px;
        line-height: 26px;
    }

    .user-guide-main .guide-card .guide-card__title-sub {
        font-size: 17px;
    }

    .user-guide-main .guide-card .tabs-section .nav-pills .nav-link {
        padding: 10px 15px;
        font-size: 14px
    }

    .user-guide-main .guide-card .pickup-rentals-card {
        padding: 30px 20px
    }

    .user-guide-main .guide-card .pickup-rentals-card p {
        font-size: 15px
    }

    .user-guide-main .guide-card .store-pickup-rental-points {
        padding: 10px
    }

    .user-guide-main .guide-card .store-pickup-rental-points .point p {
        font-size: 14px
    }

    .user-guide-main .guide-card .map-card {
        height: 300px
    }

    .user-guide-main .guide-card .delivery-information .info-card {
        padding: 30px 20px
    }

    .service-content .circles {
        gap: 10px
    }

    .service-content .circles .circle {
        height: 77px;
        width: 77px
    }

    .service-content .circles .circle h4 {
        font-size: 16px
    }

    .services-hero .hero__right .circles .circle {
        height: 92px;
        width: 92px;
        gap: 10px
    }

    .services-hero .hero__right .circles .circle span {
        font-size: 22px
    }

    .checkbox-item {
        font-size: 14px
    }

    .wizard-form .panel .step-2 p {
        font-size: 16px
    }

    .login-card form {
        padding: 50px 20px
    }

    .login-card form h4 {
        font-size: 25px
    }

    .login-card form {
        gap: 40px
    }

    .login-heading {
        padding: 60px 30px
    }

    .page__heading-section h4 {
        font-size: 24px
    }

    .page__heading-section h4 small {
        font-size: 14px
    }

    .my-page-section .mypage-card {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 10px
    }

    .my-page-section .mypage-card {
        padding: 24px 20px 30px;
        min-height: auto
    }

    .my-page-section .mypage-card svg {
        height: 23px
    }

    .my-page-section .mypage-card .my-page__menu h3 {
        font-size: 18px
    }

    .my-page-section .mypage-card p {
        font-size: 14px
    }

    .my-page-section .my-tags span {
        font-size: 14px
    }

    .my-page-section .my-tags {
        height: 42px
    }

    .warning-card {
        padding: 40px 20px
    }

    .my-page-sub-level {
        padding: 0 0 30px
    }

    .my-page-tags {
        padding: 40px 0
    }

    .my-page-tags .col-lg-3 {
        width: 49.2%;
    }

    .my-page-tags .my-tags {
        font-size: 13px;
        line-height: 16px;
    }

    .my-page-tags .my-tags {
        padding: 10px 5px;
        height: 42px
    }

    .page-my-account-inline .my-order-card {
		padding: 20px;
	}

	.page-my-account-inline .my-order-item {
		flex-direction: column;
	}

	.page-my-account-inline .my-order-item__thumb {
		flex-basis: auto;
    text-align: center;
	}

	.page-my-account-inline .my-order-item__thumb img {
		width: 100%;
		height: auto;
		max-width: 220px;
	}

    .shopping-card {
        padding: 25px 15px;
        margin-bottom: 30px
    }

    .shopping-card p {
        font-size: 14px;
        text-align: center
    }

    .cart-card {
        padding: 25px 15px
    }

    .cart-card .product-row {
        flex-direction: column
    }

    .cart-card .product-row .banner {
        height: auto;
        width: 100%;
        margin-bottom: 20px
    }

    .cart-card .product-row .detail {
        width: 100%
    }

    .cart-card .product-row .detail h3 {
        font-size: 16px
    }

    .cart-card-bottom p {
        text-align: center
    }

    .blog-detail-page h1 {
        font-size: 18px;
        margin-bottom: 20px
    }

    .blog-detail-page .badges {
        margin-bottom: 25px
    }

    .blog-detail-page .blog-detail-card .blog-banner {
        height: 205px;
        margin-bottom: 60px;
    }

    .blog-detail-page .blog-detail-card .blog-banner .overlay p {
        font-size: 20px
    }

    .blog-detail-page .blog-detail-card .blog-detail-part h3 {
        padding-bottom: 15px;
        margin-bottom: 20px
    }

    .blog-detail-page .blog-detail-card .blog-detail-part ol li,
    .blog-detail-page .blog-detail-card .blog-detail-part h3 {
        font-size: 20px
    }

    .blog-detail-page .blog-detail-card .detail-table .table-row {
        flex-direction: column
    }

    .blog-detail-page .blog-detail-card .detail-table .table-row .table-col-2,
    .blog-detail-page .blog-detail-card .detail-table .table-row .table-col-1 {
        width: 100%;
        padding: 15px
    }

    .blog-detail-page .blog-detail-card .detail-table {
        margin-bottom: 30px
    }

    .blog-detail-page .blog-detail-card .blog-banner-2 {
        height: 460px
    }

    .blog-detail-page .blog-detail-card .blog-banner-2 .overlay p {
        font-size: 20px
    }

    .blog-detail-page .page-n-p .n-p-row .p-n-btn span {
        display: none
    }

    .blog-detail-page .page-n-p .n-p-row .btn-back {
        font-size: 14px
    }

    .blog-detail-page .heading .text h6 {
        font-size: 20px;
        line-height: 24px;
    }

    .related-blogs .row .col-6 {
        width: 48%;
        padding: 0;
    }

    .blog-detail-page .related-blogs .heading h4,
    .blog-detail-page .works .heading h4 {
        font-size: 20px;
        line-height: 24px;
    }

    .blog-detail-page .related-blogs .heading h6,
    .blog-detail-page .works .heading h6 {
        font-size: 12px;
        line-height: 20px;
    }

    .case-study-detail-card .product-slider .main-slider img {
        height: 270px
    }

    .case-study-detail-card .charge-comment {
        padding: 40px 25px;
        margin: 60px auto 80px;
    }

    .case-study-detail-card .charge-comment h4 {
        font-size: 18px
    }

    .case-study-detail-card .charge-comment p {
        font-size: 15px
    }

    .case-study-detail-card .video-card {
        margin-bottom: 60px;
    }

    .case-study-detail-card .warn {
        padding-top: 0
    }

    .case-study-detail-card .sidebarrr {
        padding: 0;
    }

     .blog-detail-page {
        padding: 40px 0 100px;
    }

    .blog-detail-page .related-blogs {
        margin: auto auto 120px;
    }

    .blog-detail-page .tags {
        margin-bottom: 15px;
    }

    .case-study-detail-card .blog-detail-page h1 {
        margin-bottom: 25px;
    }

    /* .blog-detail-page .case-study-detail-card {
        padding: 0 25px;
    } */

    .d-none-md {
        display: initial !important;
    }

    .mobile-header.d-none-md {
        display: block !important;
    }

    .mobile-header .mobile-header__nav-bar {
        border-bottom: 0 !important;
    }
}

@media screen and (min-width:769px) and (max-width:991px) {
    .mobile-header.d-none-md {
        display: block !important;
    }

    .mobile-header .mobile-header__nav-bar {
        border-bottom: 0 !important;
    }
}

.header .header__nav-right .header__nav-item.header__nav-item--login:hover {
    background: #fff !important;
}

.header .header__nav-right .header__nav-item--register,
.header .header__nav-right .header__nav-item--register:hover {
    border: 0 !important;
    box-shadow: none !important;
}
@media screen and (max-width: 768px) {
  .sidebar-submenu {
    display: none !important
  }
}

@media screen and (max-width: 768px) {
    /* Swiper の display:flex を維持（block!important は使わない） */
    .machine-card .product-slider {
        width: 100%;
    }
    /* main-slider は aspect-ratio で高さを確保（autoHeight不使用） */
    .machine-card .main-slider .swiper-slide img {
        width: 100%;
        aspect-ratio: 255/193;
        object-fit: cover;
        display: block;
    }
    .machine-card .thumb-slider {
        margin-top: 15px;
    }

    /* ============================================================
    マイページ
    ============================================================ */
    .woocommerce-view-order .wc-item-meta-label {
        width: 100px;
    }
}

/* ライトボックス用ダミーボタンを隠す */
.machine-card .main-slider .swiper-button-next,
.machine-card .main-slider .swiper-button-prev,
.machine-card .main-slider .swiper-pagination {
    display: none !important;
}
