@media screen and (hover: hover) {
    .uButton_item a:hover {
        opacity: .8
    }
    .uPickup.has-link:hover {
        opacity: .8
    }
    .uBtn:hover {
        opacity: .7
    }
    #topic-path a:hover {
        text-decoration: underline !important;
        text-underline-offset: 3px;
        color: var(--sec-cl) !important;
    }
    #content a[target=_blank]:not([class]) {
        text-decoration: underline !important
    }
    #content a:not([class]):hover {
        text-decoration: none
    }
    .caseList_item-content .top .btn a:hover {
        background: linear-gradient(150deg, rgba(214, 84, 13, 0.7) 0%, rgb(214, 84, 13) 100%)
    }
    .caseGallery_main .slick-arrow:hover {
        opacity: .7
    }
    .caseGallery_thumb .item:hover::after {
        opacity: 0
    }
    .blogList_item:hover {
        opacity: .7
    }
    .list_txt02 li:hover {
        opacity: .7
    }
    .worksSlide_slick-nav .slick-slide img:hover {
        opacity: 1;
    }
    .img-hover:hover {
        opacity: .7;
    }
    .residential-bnr2 a {
        transition: .2s linear;
    }
    .residential-bnr2 a:hover {
        opacity: .7;
    }
    .tbl-scroll-bg .slick-dots li button:hover {
        background-color: #dd7237;
    }
    .group_list:hover {
        opacity: 1 !important;
    }
	.uCate_item.active > .uBtn {
		opacity: 1 !important;
	}
}

@media screen and (min-width: 751px) {
    .sp320,
    .sp375,
    .sp425 {
        display: none
    }
    .tbl-block th {
        width: 247px;
        border-right: 0
    }
    .tbl-block td {
        border-left: 0
    }
    .tbl-large th {
        width: 325px
    }
    .uBox.align-end {
        align-items: flex-end
    }
    .uCate_item a {
        min-width: auto;
    }
    .under .header-act-contact {
        opacity: 0;
        pointer-events: none;
    }
    .under.fix-active .header-act-contact {
        opacity: 1;
        pointer-events: all;
        justify-content: center;
    }
    .uCate.col3 .uCate_item {
        width: calc((100% - 90px) / 3);
    }
    .sec-features .ls-nav-slide .item .tit {
        transition: all 0.2s;
    }
    .sec-features .ls-nav-slide .item:hover .tit {
        color: #d6540d;
    }
    .sec-features .slide-features .item .btn-features a:hover {
        background-color: var(--color-primary);
        color: #fff !important;
    }
    .sec-features .slide-features .item .btn-features a:hover .icon::before,
    .sec-features .slide-features .item .btn-features a:hover .icon::after {
        background-color: #fff;
    }
    .btn-all a.link:hover {
        opacity: 0.7;
    }
    .custom__link.prev-next p {
        margin-bottom: 0;
    }
    .tbl-scroll-bg .slick-dots {
        bottom: -34px;
    }
    .tbl-scroll-bg .slick-dots li {
        width: 12px;
        height: 12px;
        margin: 0 6px;
    }
    .tbl-scroll-bg .slick-dots li.slick-active button {
        background-color: #dd7237;
    }
    .tbl-scroll-bg .slick-dots li button {
        padding: 0 !important;
        width: 100%;
        height: 100%;
        background-color: rgba(204, 204, 204, 0.5);
        border-radius: 100%;
    }
    .tbl-scroll-bg .slick-dots li button::before {
        display: none;
    }
    .cnt-center {
        display: flex;
        align-items: center;
        flex-direction: row-reverse;
        gap: 30px;
    }
    .cnt-center .image-c {
        text-align: center;
        margin-bottom: 0;
        flex-shrink: 0;
    }
    .d-flex>img {
        width: calc(50% - 40px);
    }
    .no-hv>* {
        opacity: 1 !important;
    }
    .uframe-bg.d-flex {
        gap: 15px;
        flex-direction: row-reverse;
        justify-content: flex-end;
        width: max-content;
        margin: 0 auto;
    }
    .uframe-bg.d-flex {
        li {
            font-size: 190%;
        }
    }
    .uframe-bg.d-flex img {
        height: 137px;
    }
    .uframe-bg.have_icon li:nth-child(2n+1) {
        border-right: 0;
    }
}

@media screen and (min-width: 1921px) {
    .uVisual_wrap {
        max-width: 1644px;
        margin-left: auto;
    }
}

@media screen and (min-width: 751px) and (max-width: 1919px) {
    .sec-features .slide-features .item .wr-item {
        padding: 40px 36px 40px;
    }
    .sec-features .slide-features .item .tit {
        font-size: 22px;
    }
    .sec-features .slide-features .item .txt {
        letter-spacing: 0.05em;
    }
    .sec-features .nav-slide-features {
        padding: 50px 40px 54px 40px;
    }
    .sec-features .ls-nav-slide .item::before,
    .sec-features .ls-nav-slide .item::after {
        top: -8px;
    }
    .sec-features .ls-nav-slide .item .num {
        padding-bottom: 3px;
    }
    .sec-features .ls-nav-slide .item .tit {
        font-size: 20px;
    }
    .bx-h3-all .h3-all {
        font-size: 28px;
    }
    .sec-features .wr-features {
        padding-left: 40px;
    }
    .bx-h3-all .stk-h3-all::before {
        width: 152px;
        left: -36px;
    }
    .tesla__h2 {
        left: 11vw;
    }
    .sec-features .slide-features .item .wr-item {
        min-height: 492px;
    }
}
@media screen and (min-width: 751px) and (max-width: 1880px) {
    .uVisual.visual_full .uVisual_wrap {
        min-height: max(22.87vw, 290px);
    }
}
@media screen and (min-width: 751px) and (max-width: 1600px) {
    .utbl-land .utbl.custom-size td {
        font-size: 10px !important;
        padding: 5px !important;
    }
    .utbl-land th {
        padding: 15px 5px;
        font-size: 14px !important;
        letter-spacing: 0;
    }
    .list-compensation {
        gap: 5px;
    }
    .list-compensation dd {
        font-size: 10px;
        line-height: 24px;
    }
    .uBtn>span {
        font-size: 14px;
    }
    .plt_m02 ul:first-child li {
        width: 188px;
        font-size: 22px;
    }
    .plt_m02 ul:first-child {
        top: 23px;
        left: 197px;
    }
    .plt_m02 ul:nth-child(2) {
        width: 190px;
    }
    .plt_m02 ul:nth-child(2) li {
        height: 59px;
        font-size: 22px;
    }
    .tbl-compare-custom td {
        padding: 5px;
    }
    .tbl-residential-size td {
        font-size: 9px !important;
    }
    .main-under h2:not([class]) {
        font-size: 38px;
    }
    .main-under h3:not([class]),
    .uh3 {
        font-size: 30px;
    }
    .main-under h4:not([class]) {
        font-size: 26px;
    }
    .tbl-scroll-bg .custom-size th,
    .tbl-scroll-bg .custom-size td {
        padding: 10px !important;
        line-height: 20px;
    }
    .custom-size th.w60 {
        width: 60% !important;
    }
    .list-col2-text ul li {
        font-size: 14px;
    }
    .list-col2-text {
        gap: 30px;
    }
    .slide-logo img[alt="Qcells"] {
        height: auto;
    }
    .list_txt02 li {
        font-size: 14px;
    }
    .under main .industrial_list-circle {
        min-height: 179px;
    }
    .uFlow.box_col2 {
        gap: 20px;
    }
    .uFlow.box_col2 .uFlow_step-content .title {
        font-size: 22px;
    }
    .cpn_group {
        gap: 15px;
    }
    .cpn_group .item .ttl {
        font-size: 18px;
    }
    .cpn_group .item .cnt p {
        font-size: 14px;
    }
    .cpn_group {
        gap: 15px;
        padding: 15px;
    }
}

@media screen and (min-width: 751px) and (max-width: 1560px) {
    .tesla-img-full {
        height: 500px;
    }
    .list-col4.list-col4-text ul {
        gap: 10px 35px;
    }
    .list-col4.list-col4-text li {
        font-size: 14px;
    }
    .uVisual_title {
        margin-bottom: 20px;
        font-size: 35px;
    }
    .uVisual_content {
        padding: 30px 40px 35px;
    }
    .uVisual_img {
        width: min(35%, 780px);
    }
    .uVisual_sub {
        font-size: 20px;
    }
    .custom-size th:first-child {
        width: 120px !important;
    }
    .custom-size th.w60 {
        width: 60% !important;
    }
    .sec-features .nav-slide-features {
        --min-valuemw: 430;
        --max-valuemw: 637;
        --min-vmw: 1441;
        --max-vmw: 1920;
        padding: 50px 20px 54px 20px;
    }
    .sec-features .ls-nav-slide .item .num {
        font-size: 28px;
    }
    .sec-features .ls-nav-slide .item .tit {
        font-size: max(1.154vw, 14px);
    }
    .sec-features .slide-features .item .wr-item {
        padding: 40px 30px 40px;
    }
    .bx-h3-all .h3-all {
        font-size: 26px;
    }
    .uButton_item a>span {
        font-size: 18px;
    }
    /* .sec-features .slide-features .item .wr-item {
        min-height: 600px;
    } */
    .tesla-info-img {
        flex-shrink: unset;
    }
    .img-group .item .ttl {
        font-size: 14px;
        margin-bottom: 5px;
    }
    .img-group .item {
        width: calc((100% / 4) - 2px);
        padding: 6px 3px;
    }
    .tesla-info-desc li {
        font-size: max(0.8vw, 10px);
        line-height: 1.8em !important;
    }
    .tesla-info-desc {
        gap: 10px;
        width: 50%;
    }
    .img-group .item .desc p {
        font-size: 10px;
    }
    .img-group .item .icon {
        flex-shrink: 0;
        height: 24px;
    }
    /* .img-group .item .icon {
        height: 40px;
        margin: 0 auto 10px;
    } */
    .tesla-info-img .img-large {
        width: 290px;
        margin: 0 auto 20px;
    }
    .img-group {
        gap: 5px;
    }
    .tesla-info-desc ul li {
        padding-left: 20px !important;
    }
    .tesla-info-desc ul li::before {
        top: .4vw !important;
        height: 12px !important;
        width: 12px !important;
    }
    .uPickup_content {
        padding: 66px 40px 99px 80px;
    }
}

@media screen and (min-width: 751px) and (max-width: 1440px) {
    .fix-active .uButton_item a {
        padding: 20px 90px 20px 36px;
        width: 455px;
    }
    .list-col4.list-col4-text ul {
        gap: 10px 1.4vw;
    }
    .list-col4.list-col4-text li {
        font-size: 1vw;
        padding-left: 1.5vw !important;
        letter-spacing: 0;
    }
    .custom-size th:first-child {
        width: 110px !important;
    }
    .custom-size th.w60 {
        width: 60% !important;
    }
    .custom-size th,
    .custom-size td {
        font-size: 12px !important;
    }
    .uCate {
        gap: 20px;
    }
    .uCate_item {
        width: calc((100% - 60px) / 4);
    }
    .uBtn>span {
        letter-spacing: 0;
    }
    .sec-features .desc-features {
        margin-right: 20px;
    }
    .sec-features .wr-slide-features {
        margin-right: 15px;
        --min-valuemw: 440;
        --max-valuemw: 530;
        --min-vmw: 1260;
        --max-vmw: 1440;
    }
    /* .sec-features .slide-features .item .wr-item {
        padding: 40px 20px 40px;
    } */
    .sec-features .slide-features .item .tit {
        font-size: 20px;
    }
    .sec-features .slide-features .item .img .num {
        font-size: 40px;
    }
    .sec-features .slide-features .item .img .num::before {
        width: 60px;
    }
    .sec-features .nav-slide-features {
        --min-valuemw: 400;
    }
    /* .sec-features .ls-nav-slide .item {
        margin-bottom: 25px;
    } */
    .sec-features .ls-nav-slide .item .tit {
        font-size: 16px;
    }
    .bx-h3-all .h3-all {
        font-size: 22px;
    }
    .tit-all.tit-features {
        font-size: 14px;
    }
    .tesla-info-desc ul li::before {
        top: .35vw !important;
    }
    .tesla-info {
        gap: 10px;
    }
}

@media screen and (min-width: 751px) and (max-width: 1380px) {
    .plt_m02 ul:first-child {
        width: calc(100% - 13.768vw * 2);
        left: 0;
        right: 0;
        top: calc(50% - 10.8vw);
        margin: auto;
    }
    .plt_m02 ul:first-child li {
        width: calc((100% / 3) - 5px);
        margin-right: 7px;
    }
    .plt_m02 ul:first-child li:last-child {
        margin-right: 0;
    }
    .plt_m02 ul:nth-child(2) {
        width: calc(100% - (13.768vw * 4) - 30px);
    }
}

@media screen and (min-width: 751px) and (max-width: 1260px) {
    .list-col4.list-col4-text ul {
        gap: 10px;
    }
    .list-col4.list-col4-text li {
        font-size: 13px;
        padding-left: 18px !important;
    }
    .tesla-info-desc ul li::before {
        top: 4px !important;
    }
}

@media screen and (min-width: 1px)and (max-width: 750px) {
    .image-l,
    .image-r {
        float: none;
        text-align: center;
        margin: 0 0 25px
    }
    section {
        margin-bottom: 50px
    }
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    input,
    button,
    textarea,
    select,
    p,
    blockquote,
    th,
    td,
    pre,
    address,
    li,
    dt,
    dd {
        font-size: 14px
    }
    .main-under h2:not([class]) {
        margin-bottom: 20px;
        padding-bottom: 18px;
        font-size: 24px;
        letter-spacing: 0;
    }
    .main-under h3:not([class]),
    .uh3 {
        margin-bottom: 20px;
        padding: 8px 15px 10px;
        font-size: 22px
    }
    .main-under h4:not([class]) {
        margin-bottom: 20px;
        padding-left: 15px;
        font-size: 20px
    }
    .main-under h5:not([class]) {
        margin-bottom: 20px;
        padding: 8px 15px 9px;
        font-size: 18px
    }
    .main-under h6:not([class]) {
        margin-bottom: 15px;
        font-size: 16px
    }
    .uTitle {
        font-size: 18px
    }
    .uTitle.sp-c {
        text-align: center
    }
    .utbl tr th+td {
        border-top: none
    }
    .utbl tr:not(:first-child) th {
        border-top: none
    }
    .utbl th {
        padding: 20px 10px;
        font-size: 16px
    }
    .utbl td {
        padding: 10px;
        line-height: 1.8em;
        word-break: break-all;
    }
    .tbl-link th:first-child {
        width: 90px
    }
    .tbl-block {
        display: block
    }
    .tbl-block thead,
    .tbl-block tbody,
    .tbl-block tr,
    .tbl-block td,
    .tbl-block th {
        display: block;
        width: 100%
    }
    .tbl-note {
        margin-bottom: 5px;
        font-size: min(3.4vw, 12px);
        opacity: .6;
        line-height: 1.5em;
    }
    .tbl-scroll {
        overflow: auto
    }
    .tbl-scroll table {
        min-width: 749px
    }
    .tbl-wrap:not(:last-child) {
        margin-bottom: 20px
    }
    #topic-path {
        margin-bottom: 30px;
        padding: 20px 0
    }
    .main-under #content {
        padding-bottom: 50px
    }
    #content .container:not(:last-child) {
        margin-bottom: 50px
    }
    #content ul:not([class]):not(:last-child) {
        margin-bottom: 25px
    }
    .uVisual_wrap {
        flex-direction: column
    }
    .uVisual_img {
        width: 100%
    }
    .uVisual_content {
        padding: 30px 15px !important;
        width: 100%
    }
    .uVisual_title {
        margin-bottom: 20px;
        font-size: 28px;
        line-height: 1.4em;
        text-align: center
    }
    .uVisual_title:last-child {
        margin-bottom: 0
    }
    .uVisual_sub {
        margin-bottom: 18px;
        font-size: 18px;
        text-align: center
    }
    .uVisual_sub:last-child {
        margin-bottom: 0
    }
    .uButton {
        flex-direction: column
    }
    .uButton_item {
        width: 100%;
        display: flex;
        justify-content: center
    }
    .uButton_item:not(:last-child) {
        margin-right: 0;
        margin-bottom: 20px
    }
    .uButton_item a {
        padding: 12px 35px 12px 15px;
        width: 380px;
        min-height: 130px
    }
    .uButton_item a::before {
        width: 150px;
        border-width: 14px
    }
    .uButton_item a::after {
        bottom: 15px;
        right: 10px;
        width: 32px
    }
    .uButton_item a>span {
        font-size: min(4.15vw, 16px);
        letter-spacing: 0;
    }
    .uFlow_step:not(:last-child) {
        margin-bottom: 80px
    }
    .uFlow_step:not(:last-child)::after {
        bottom: -50px;
        width: 36px
    }
    .uFlow_step-stt {
        margin-right: 15px;
        padding-bottom: 0;
        width: 80px;
        line-height: 1.6em
    }
    .uFlow_step-stt .txt {
        font-size: 16px
    }
    .uFlow_step-stt .num {
        font-size: 28px
    }
    .uFlow_step-content {
        padding-top: 5px
    }
    .uFlow_step-content .title {
        padding-bottom: 10px;
        margin-bottom: 15px;
        font-size: 18px;
        line-height: 1.6em
    }
    .uPickup {
        flex-direction: column;
        margin-top: 80px;
    }
    .uPickup_content {
        padding: 40px 30px;
        width: 100%
    }
    .uPickup_content-en {
        margin-bottom: 20px;
        font-size: 30px
    }
    .uPickup_content-en::before {
        top: -15px;
        left: -25px;
        width: 22px
    }
    .uPickup_content-en::after {
        bottom: -5px;
        right: -65px;
        width: 56px
    }
    .uPickup_content-title {
        margin-bottom: 20px;
        font-size: 24px
    }
    .uPickup_img {
        width: 100%
    }
    .uBox {
        flex-direction: column !important
    }
    .uBox:not(:last-child) {
        margin-bottom: 20px
    }
    .uBox.no-gap .uBox_item:not(:first-child) {
        margin-top: -1px
    }
    .uBox.no-gap .uBox_item:not(:last-child) {
        margin-bottom: 0
    }
    .uBox_item {
        width: 100% !important
    }
    .uBox_item:not(:last-child) {
        margin-bottom: 20px
    }
    .uBox_item:last-child .title {
        border-left: 1px solid var(--main-cl)
    }
    .uBox_item:last-child .content {
        border-left: 1px solid var(--main-cl)
    }
    .uBox .title {
        padding: 15px 10px 16px;
        font-size: 16px
    }
    .uBox .content {
        padding: 10px
    }
    .uBtn>span {
        font-size: min(4vw, 16px)
    }
    .uBtn.btn-down {
        width: 100%;
        max-width: 395px;
        padding: 15px 10px 40px
    }
    .uPower {
        grid-template-columns: 1fr;
        gap: 30px
    }
    .uPower_item {
        flex-direction: column;
        align-items: center
    }
    .uPower_item-img {
        margin-bottom: 10px
    }
    .uPower_item-content {
        width: 100%
    }
    .uPower_item-content .title {
        text-align: center
    }
    .uFaq:not(:last-child) {
        margin-bottom: 20px
    }
    .uFaq_item:not(:last-child) {
        margin-bottom: 30px
    }
    .uFaq_item .question {
        font-size: 16px;
        line-height: 1.6em
    }
    .uFaq_item .answer {
        padding-top: 3px
    }
    .uFaq_item .char {
        padding-bottom: 3px;
        margin-right: 10px;
        width: 40px;
        aspect-ratio: 1/1;
        font-size: 20px
    }
    .uFaq_q {
        padding: 10px;
        display: flex
    }
    .uFaq_a {
        padding: 10px
    }
    .uCate {
        margin-left: -5px;
        margin-right: -5px;
        justify-content: center;
        flex-wrap: wrap;
        gap: 0
    }
    .uCate:not(:last-child) {
        margin-bottom: 0
    }
    .uCate_item {
        width: calc(50% - 10px);
        margin: 0 5px 10px !important
    }
    .uCate_item:not(:last-child) {
        margin-bottom: 0
    }
    .uCate_item > a, .uCate_item > p {
        padding: 15px 10px !important;
        width: 100%;
        min-width: auto
    }
    .caseList {
        grid-template-columns: 1fr;
        gap: 30px 20px
    }
    .caseList_item {
        flex-direction: column
    }
    .caseList_item-img {
        margin-bottom: 20px;
        width: 100%
    }
    .caseGallery_main {
        margin-bottom: 10px
    }
    .caseGallery_main .slick-slide {
        margin: 0 5px
    }
    .caseGallery_main .slick-list {
        margin: 0 -5px
    }
    .caseGallery_main .slick-arrow {
        width: 46px;
        height: 46px
    }
    .caseGallery_main .slick-arrow::before {
        width: 8px;
        height: 8px
    }
    .caseGallery_main .slick-arrow.slick-prev {
        left: 10px
    }
    .caseGallery_main .slick-arrow.slick-next {
        right: 10px
    }
    .caseGallery_main .item {
        height: 320px
    }
    .caseGallery_thumb .slick-slide {
        margin: 0 5px
    }
    .caseGallery_thumb .slick-list {
        margin: 0 -5px
    }
    .caseGallery_thumb .item {
        height: 100px
    }
    .blogList_item {
        flex-direction: column
    }
    .blogList_item:not(:last-child) {
        margin-bottom: 30px
    }
    .blogList_item-img {
        margin-right: 0;
        margin-bottom: 20px;
        width: 100%
    }
    .blogList_item-content .top .title {
        font-size: 18px
    }
    .blogList_item-content table th,
    .blogList_item-content table td {
        padding: 5px 0
    }
    .blogList_item-content table th {
        width: 80px
    }
    .wpcf7-response-output {
        font-size: 14px
    }
    .postcode {
        flex-direction: column
    }
    .postcode p:first-child {
        width: 100%
    }
    .postcode p:not(:last-child) {
        margin-right: 0
    }
    .postcode .btn-postcode {
        padding: 10px;
        margin-top: 10px
    }
    #form-ct .wpcf7-date {
        width: 100%
    }
    #form-ct select {
        width: 100%
    }
    .gr_input.nowrap {
        flex-wrap: nowrap
    }
    .gr_input .txt {
        white-space: nowrap
    }
    .ft__left {
        bottom: 90px;
        transition: .3s ease
    }
    .tbl-compare-custom td {
        padding: 10px 5px;
    }
    .tbl-compare-custom {
        min-width: 1080px !important;
    }
    .list_txt02 li {
        width: calc((100% / 2) - 10px);
        font-size: 16px;
    }
    .list-col2 {
        flex-direction: column;
        align-items: center;
    }
    .list-col4 ul {
        flex-direction: column;
        justify-content: center;
    }
    .list-col4 li,
    .list-col2 li {
        width: 100%;
        text-align: center;
        padding-left: 0 !important;
    }
    .list-col4 li img {
        width: 100%;
        max-width: 300px;
        margin: 0 auto;
    }
    .list-col4.list-col4-text ul {
        flex-direction: row;
        align-items: center;
    }
    .list-col4.list-col4-text li {
        line-height: 1.5em !important;
        padding-left: 20px !important;
    }
    .list-col4.list-col4-text li::before {
        top: 1px !important;
        bottom: 0;
        margin: auto;
    }
    .list-col4.list-col4-text ul {
        gap: 20px 40px;
    }
    .list-col2 li {
        width: 100%;
        max-width: 150px;
    }
    .tesla-page .uVisual_img::before {
        background: url('../images/tesla-mainvs-sp.png') bottom center no-repeat;
        background-size: cover;
        width: 750px;
        height: 100%;
    }
    .tesla__h2 {
        top: 0;
        left: 0;
        right: 0;
        padding: 0 15px;
        display: block;
    }
    .tesla__h2 .uVisual_title_ttm {
        font-size: 16px;
        padding-left: 8px;
    }
    .tesla__h2 .uVisual_title {
        padding: 10px;
        text-align: center;
        font-size: 20px;
        width: max-content;
        margin: 0 auto;
        letter-spacing: .1em;
    }
    .tesla-img-full {
        height: 66vw;
        margin-bottom: 20px;
    }
    .tesla-img-full::before {
        background: url(../images/tesla-img-full-sp.jpg) top left no-repeat;
        background-size: cover;
        width: 100%;
    }
    .box-center {
        flex-direction: column;
    }
    .box-center .image-r {
        margin-bottom: 20px;
    }
    .ttl-red {
        font-size: 24px;
        line-height: 1.5em;
        margin-bottom: 20px;
    }
    .custom-size th:first-child {
        width: 140px !important;
    }
    /* .under .main-under {
        margin-top: 89px;
    } */
    .under #header {
        box-shadow: unset;
    }
    .under #header.fix {
        box-shadow: 0 0 20px rgba(0, 0, 0, 0.4);
    }
    .uCate {
        flex-direction: column;
        align-items: center;
        margin-left: auto;
        margin-right: auto;
    }
    .uCate_item {
        width: 100%;
        max-width: 280px;
        margin: 0 0 10px !important;
    }
    .utbl.utbl-block tr th+td {
        border-top: 1px solid var(--main-cl);
    }
    .utbl.utbl-block tr th:first-child {
        width: 40%;
    }
    .utbl.utbl-block tr th {
        letter-spacing: 0;
    }
    .utbl.utbl-block th,
    .utbl.utbl-block td {
        display: block;
        width: 100% !important;
    }
    .tb_note {
        margin-bottom: 5px;
        line-height: 1.5em;
    }
    .utbl.tbl-fix {
        overflow-x: scroll;
    }
    .utbl.tbl-fix table {
        min-width: 800px;
    }
    .utbl.utbl-block th {
        border-bottom: 0;
    }
    .tbl-scroll .utbl th {
        width: 160px;
    }
    .tbl-scroll .utbl .w50 {
        width: auto;
    }
    .tbl-scroll .utbl tr th+td {
        border-top: 1px solid var(--main-cl);
    }
    .umap iframe {
        height: 300px;
    }
    .frame-txt-sp {
        width: 100%;
        max-width: 500px;
        margin: 0 auto;
    }
    .utbl.utbl-block tr:last-child td {
        border-top: 0;
    }
    .utbl.utbl-block .w50 {
        width: auto;
    }
    .list_txt02.col3 li {
        width: calc((100% / 2) - 10px);
    }
    .list_txt02.col3 li img {
        width: 100%;
        height: 30.469vw;
    }
    .tbl-compare-custom th.w10 {
        width: 200px !important;
    }
    .utbl-land .utbl tr th+td {
        border-top: 1px solid var(--main-cl);
    }
    .utbl-land .utbl th {
        font-size: 14px;
    }
    .utbl-land .tbl-scroll .utbl th {
        width: 100px;
    }
    .utbl-land .tbl-scroll table {
        min-width: 1080px;
        /* min-width: 850px; */
    }
    .utbl-land .utbl.custom-size td {
        padding: 10px 5px;
    }
    .utbl-land .utbl.w50 {
        width: 100% !important;
    }
    .txt_red {
        width: auto;
    }
    .land-slide-img img {
        width: 90%;
    }
    .land-slide-desc {
        background: #fff;
        width: 90%;
        margin-top: -60px;
    }
    .worksSlide_slick-for img {
        height: 100%;
    }
    .about-frame-txt,
    .worksSlide_slick-for {
        height: 80vw;
    }
    .c-banner.idx_box_l {
        width: 100%;
        max-width: 500px;
    }
    .c-banner.idx_box_l .idx_ls_txt {
        line-height: 1.2em;
        margin-bottom: 0;
    }
    .c-banner.idx_box_l .idx_info {
        padding: 0 10px;
        margin-bottom: 10px;
    }
    .c-banner.idx_box_l .idx_txt {
        font-size: min(3.125vw, 14px);
    }
    .c-banner.idx_box_l .idx_ls_it {
        font-size: min(3.125vw, 14px);
    }
    .c-banner.idx_box_l .idx_ttl {
        font-size: min(5vw, 20px);
        line-height: 1.5em;
    }
    .c-banner.idx_box_l .idx_ls_it span {
        font-size: min(3.125vw, 14px);
    }
    .c-banner.idx_box_l .idx_des {
        font-size: min(3.125vw, 14px);
        line-height: 1.5em;
    }
    .c-banner.idx_box_l .idx_ls_it span {
        margin-right: 0;
    }
    .c-banner.idx_box_l .idx_btn_link {
        font-size: min(3.125vw, 14px);
        width: 80%;
        line-height: 1.5em;
    }
    .c-banner.idx_box_l .idx_ttl .idx_txt_bf {
        width: 44px;
        height: 44px;
        bottom: -8px;
        right: calc(50% - 130px);
        font-size: 12px;
    }
    .tesla-content .tesla-content-bg {
        padding-bottom: 50px;
        margin-bottom: 0;
    }
    .sec-features {
        padding-top: 41px;
        padding-bottom: 32px;
    }
    .sec-features::before {
        width: 79.6437659033%;
        background-image: url(../images/bg-features-sp.png);
        background-repeat: repeat;
        height: calc(100% - 250px);
    }
    .sec-features .wr-features {
        padding-left: 20px;
        padding-right: 20px;
        flex-direction: column;
        align-items: center;
    }
    .sec-features .desc-features {
        margin-right: 0;
        margin-top: 0;
        margin-bottom: 30px;
    }
    .sec-features .bx-h3-all {
        margin-left: 21px;
    }
    .sec-features .wr-slide-features {
        margin-right: 0;
        margin-left: 0;
        max-width: 520px;
    }
    .sec-features .slide-features .slick-list {
        margin-top: 0;
        margin-bottom: 0;
        margin-left: -10px;
        margin-right: -10px;
    }
    .sec-features .slide-features .item {
        margin-top: 0;
        margin-bottom: 0;
        margin-left: 10px;
        margin-right: 10px;
    }
    .sec-features .slide-features .item:first-child .img .num::before {
        right: -4px;
    }
    .sec-features .slide-features .item .wr-item {
        padding: 20px 19px 24px;
        display: flex;
        flex-direction: column;
        min-height: auto;
    }
    .sec-features .slide-features .item .img {
        margin-bottom: 13px;
    }
    .sec-features .slide-features .item .img .num {
        font-size: 30px;
        bottom: -10px;
        right: -10px;
    }
    .sec-features .slide-features .item .img .num::before {
        background-image: url(../images/num-features-sp.png);
        width: 48px;
        aspect-ratio: 48/42;
        bottom: 2px;
    }
    .sec-features .slide-features .item .tit {
        --min-valuefz: 16;
        --max-valuefz: 18;
        --min-vfz: 375;
        --max-vfz: 393;
        --valuefz: max(min(calc((var(--max-valuefz) - var(--min-valuefz)) * ((100vw - var(--min-vfz) * 1px) / (var(--max-vfz) - var(--min-vfz))) + calc(var(--min-valuefz) * 1px)), calc(var(--max-valuefz) * 1px)), calc(var(--min-valuefz) * 1px));
        font-size: var(--valuefz);
        letter-spacing: 0.05em;
        margin-bottom: 17px;
    }
    .sec-features .slide-features .item .tit.long {
        letter-spacing: 0.05em;
    }
    .sec-features .slide-features .item .txt {
        line-height: 2.15em;
        margin-bottom: 0;
    }
    .sec-features .slide-features .item .btn-features {
        margin-top: auto;
    }
    .sec-features .slide-features .item .btn-features a {
        width: 157px;
        height: 41px;
        font-size: 14px;
    }
    .sec-features .slide-features .item .btn-features a .icon::before,
    .sec-features .slide-features .item .btn-features a .icon::after {
        background-color: #716139;
        height: 1px;
    }
    .sec-features .nav-slide-features {
        margin-top: 0;
        max-width: 520px;
        padding: 16px 10px 37px;
        border-top: 1px solid #fff;
    }
    /* .sec-features .ls-nav-slide {
        margin-bottom: 31px;
    } */
    .sec-features .ls-nav-slide .item {
        align-items: flex-start;
        padding: 9px 4px 9px 4px;
        margin-bottom: 18px;
    }
    .sec-features .ls-nav-slide .item::before,
    .sec-features .ls-nav-slide .item::after {
        top: 1px;
        width: 14px;
        right: 4px;
    }
    .sec-features .ls-nav-slide .item .num {
        font-size: 20px;
        margin-right: 8px;
        line-height: 1em;
    }
    .sec-features .ls-nav-slide .item .tit {
        font-size: 14px;
        line-height: 1.55em;
    }
    .btn-all .link {
        font-size: 16px;
        --h: 56px;
        --min-valuew: 240;
        --max-valuew: 280;
        --min-vw: 320;
        --max-vw: 393;
        --valuew: max(min(calc((var(--max-valuew) - var(--min-valuew)) * ((100vw - var(--min-vw) * 1px) / (var(--max-vw) - var(--min-vw))) + calc(var(--min-valuew) * 1px)), calc(var(--max-valuew) * 1px)), calc(var(--min-valuew) * 1px));
        --w: var(--valuew);
    }
    .btn-all .link .icon {
        padding: 10px 40px 10px 31px;
    }
    .btn-all .link .icon::before {
        top: 24px;
        right: 13px;
        background-image: url(../images/arrow-btn-w-sp.svg);
        aspect-ratio: 27/9;
        width: 27px;
    }
    .tesla-info {
        flex-direction: column;
    }
    .img-group {
        flex-wrap: wrap;
        flex-direction: column;
    }
    .img-group .item {
        /* width: calc((100% / 2) - 5px); */
        width: 100%;
        gap: 10px;
    }
    /* .img-group .item .icon {
        height: 50px;
    } */
    .img-group .item .icon {
        flex-shrink: 0;
    }
    .list-compensation {
        width: 280px;
        margin: 0 auto;
        flex-wrap: wrap;
        gap: 20px 10px;
    }
    .list-compensation dl {
        width: calc(50% - 5px);
    }
    .list-compensation dd {
        font-size: 18px;
        padding-top: 5px;
    }
    .custom-title {
        font-size: 20px;
    }
    .bx-h3-all .h3-all {
        font-size: 22px;
        margin-bottom: 10px;
    }
    .bx-h3-all .stk-h3-all::before {
        width: 132px;
        left: -15px;
        top: 4px;
    }
    .bx-h3-all .stk-h3-all {
        padding-left: 20px;
        min-width: 132px;
    }
    .tesla-info-desc {
        flex-direction: column;
        gap: 10px;
    }
    .tesla-info-desc ul {
        margin-bottom: 0 !important;
    }
    .tesla-info-desc ul li {
        font-size: 16px;
        line-height: 1.5em !important;
    }
    .tesla-info-desc ul li::before {
        top: 6px !important;
    }
    .tbl-residential-size th.w7 {
        width: auto;
    }
    .battery_video {
        height: 55vw;
        max-width: 100%;
    }
    .tesla-info-img {
        width: 100%;
    }
    .uls-history dl {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        --mb-last: 20px;
        padding-left: 25px;
    }
    .uls-history dl::before {
        width: 12px;
        height: 12px;
    }
    .uls-history dl dt {
        width: 100%;
        font-size: 16px;
    }
    .uls-history dl dd {
        font-size: 14px;
    }
    .uls-history dl:not(:last-child)::after {
        left: 6px;
    }
    .uh3 {
        font-size: 24px !important;
    }
    .tesla-page {
        height: 580px;
    }
    .under.tesla .main-under {
        margin-top: 0;
    }
    .residential-bnr2 {
        margin-top: 30px;
    }
    .residential-bnr2 ul {
        gap: 10px;
        flex-direction: column;
    }
    .residential-bnr2 li {
        max-width: 100%;
    }
    .custom-size th.w60 {
        width: 60% !important;
    }
    .tbl-scroll-bg {
        /* padding: 0;
        min-height: auto;
        background: none; */
        /* padding: 20px; */
    }
    .ttl-img img {
        height: 50px;
    }
    .tbl-scroll-bg .custom-size th,
    .tbl-scroll-bg .custom-size td {
        padding: 5px;
        font-size: 12px !important;
        line-height: 20px;
    }
    .list-col4.list-col4-text li {
        text-align: left;
        width: 100%;
        max-width: 100%;
        font-size: 16px;
    }
    .list-col4.list-col2-text li.sp {
        display: none;
    }
    .list-circle {
        gap: 20px;
    }
    .industrial_list-circle.list-circle {
        margin: 0 auto;
        display: flex;
    }
    .list-circle img {
        width: 100px;
        padding: 10px;
    }
    .binary img {
        width: 50px;
        margin-top: 30px;
    }
    .balloon {
        position: absolute;
        top: 0;
        right: -102px;
    }
    .balloon img {
        width: 120px;
    }
    .storage-col2 .item .ttl {
        font-size: 18px;
        padding: 4px 50px 6px;
    }
    .has-balloon {
        position: relative;
        z-index: 1;
        width: max-content;
        margin: 0 auto;
    }
    .list-col2-text {
        flex-direction: column;
        gap: 0;
    }
    .list-col2-text ul li {
        font-size: 14px;
    }
    .list-col2-text li {
        text-align: left;
        padding-left: 20px !important;
    }
    .list-col2-text li .sp {
        display: none;
    }
    .bx-h3-all .en-all::before {
        width: 200px;
    }
    .list-img-phone ul {
        grid-template-columns: repeat(2, 1fr);
    }
    .box-ct .call .num {
        font-size: 32px;
        padding-left: 30px;
    }
    .box-ct .call .num::before {
        width: 26px;
        height: 20px;
    }
    .box-ct {
        padding: 15px;
    }
    .box-ct>p {
        line-height: 1.8em;
        font-size: min(3.75vw, 16px);
    }
    .title-large {
        font-size: 22px;
    }
    .drop425 {
        display: block;
    }
    .list-image.col2 {
        grid-template-columns: repeat(1, 1fr);
        max-width: 400px;
        margin: 0 auto;
    }
    .sec__spec .bx-h3-all .en-all::before {
        width: calc(100% + 15px);
    }
    .slide-logo img[alt="Qcells"] {
        height: auto;
    }
    .image-r.resize img {
        max-width: 230px;
    }
    .storage-col2 {
        flex-direction: column;
        align-items: center;
    }
    .storage-col2 .item {
        width: 300px;
        max-width: 100%;
    }
    .list-image.col2.list-temperature {
        grid-template-columns: repeat(1, 1fr);
        gap: 20px;
    }
    .list-image.col2.list-temperature p:nth-child(3) {
        max-width: 280px;
        margin: 0 auto;
    }
    .img-group .item .icon {
        width: 18px;
        height: auto !important;
        margin: 5px 0 5px 5px;
    }
    .under main .uBox .content p .sm {
        font-size: 17px;
    }
    .d-flex {
        flex-direction: column;
    }
    .d-flex {
        gap: 20px;
    }
    .industrial_list {
        margin: -10px 0;
    }
    section section {
        margin: 0 0 50px 0;
    }
    .uVisual.visual_full .uVisual_wrap {
        min-height: 200px;
    }
    .uframe-bg.uframe-bg2 ul {
        padding-right: 0;
        padding-bottom: 90px;
    }
    .uframe-bg.uframe-bg2 ul::before {
        width: 98px;
        height: 84px;
        left: 0;
        margin: auto;
    }
    .residential-bnr li {
        width: 100%;
        max-width: 100%;
    }
    .uframe-bg.have_icon li {
        padding: 5px 10px !important;
        width: 100%;
    }
    .uFlow.box_col2 {
        grid-template-columns: repeat(1, 1fr);
        gap: 30px;
    }
    .list_txt02 .group_list > p {
        flex-direction: column;
    }
    .list_txt02 .group_list.custom_residential > p {
        flex-direction: row;
    }
    .list_check {
        flex-direction: column;
        width: auto;
        gap: 10px;
    }
    .uframe-bg.have_icon ul {
        flex-direction: column;
    }
    .uframe-bg.have_icon li  {
        line-height: 1.8em !important;
    }
    .uframe-bg.have_icon li span {
        padding-left: 60px;
    }
    .uframe-bg.have_icon li span::before {
        width: 46px;
        height: 48px;
    }
    .cpn_group {
        grid-template-columns: repeat(1, 1fr);
        max-width: 500px;
        margin: 0 auto;
        padding: 15px;
        gap: 15px;
    }
    .cpn_cnt .item .cnt {
        flex-direction: column;
        gap: 10px;
    }
    .cpn_cnt .item .cnt > * {
        order: 1;
    }
    .cpn_cnt .item .cnt .cpn_cnt_logo {
        order: 0;
        margin-bottom: 0;
    }
    .cpn_cnt .item .ttl {
        font-size: 20px;
    }
    .list_txt02 .group_list {
        width: 100%;
    }
    .uframe-bg.storage_icon_list li span::before {
        width: 46px;
        height: 48px;
    }
    .uframe-bg.storage_icon_list li {
        padding: 5px 10px !important;
    }
    .uframe-bg.storage_icon_list li span {
        padding-left: 60px;
    }
    .custom_utbl td:first-child {
        width: 40%;
    }
    .custom_utbl td:nth-child(2), .custom_utbl td:nth-child(4) {
        white-space: nowrap;
    }
	.custom_utbl {
		overflow: auto;
	}
	.custom_utbl table {
		width: 600px;
		margin: 0 auto;
	}
	.custom_utbl td:nth-child(2), .custom_utbl td:nth-child(4) {
		width: 10% !important;
	}
	.advantage_ttl_table {
		font-size: 16px;
		text-align: center;
		color: #fff;
		background-color: rgba(29, 36, 80, .8);
		padding: 10px;
        margin-bottom: 0;
	}
	.uCate_item .dropdown {
		position: static;
	}
	.uBtn {
		min-width: 234px
	}
	.uCate_item .dropdown {
		margin: 10px auto 0;
		max-width: 240px;
	}
	.uCate_item .dropdown ul {
		flex-direction: column;
		gap: 10px;
	}
	.uCate_item .dropdown li {
		width: 100%;
	}
}

@media screen and (min-width: 375px)and (max-width: 750px) {
    .sp320 {
        display: none
    }
    .sec-features .nav-slide-features {
        padding: 16px 20px 37px;
    }
    .sec-features .ls-nav-slide .item .tit {
        font-size: 16px;
    }
    .sec-features .ls-nav-slide .item .num {
        line-height: 1.4em;
        position: relative;
        top: -2px;
    }
    .img-group {
        flex-direction: row;
    }
    .img-group .item {
        width: calc((100% / 2) - 5px);
    }
    .img-group .item .icon {
        height: 22px;
    }
    .balloon {
        right: -135px;
    }
    .balloon img {
        width: 140px;
    }
}

@media screen and (min-width: 393px)and (max-width: 750px) {
    .sec-features .slide-features .item .tit {
        letter-spacing: 0.1em;
    }
}

@media screen and (min-width: 425px)and (max-width: 750px) {
    .sp375 {
        display: none
    }
    .utbl.utbl-block tr th:first-child {
        width: 160px;
    }
    .list_txt02.col3 li {
        width: calc((100% / 3) - 14px);
    }
    .list_txt02 li {
        width: calc((100% / 2) - 10px);
        font-size: 14px;
    }
    .list_txt02.col3 li img {
        height: 20.235vw;
    }
    .c-banner.idx_box_l .idx_ls_txt {
        line-height: 1.5em;
    }
    .img-group .item .desc p {
        font-size: 12px;
    }
    .img-group .item .icon {
        height: 25px;
    }
    .drop425 {
        display: none;
    }
}

@media screen and (min-width: 475px)and (max-width: 750px) {
    .uBtn>span {
        font-size: min(3vw, 16px);
    }
    .uCate {
        flex-direction: row;
    }
    .uCate_item {
        width: calc(50% - 10px);
        max-width: 100%;
    }
    .uCate_item:nth-child(2n+1) {
        margin-right: 10px !important;
    }
    .storage-col2 {
        flex-direction: row;
        justify-content: center;
    }
    .storage-col2 .item {
        width: 45%;
        padding: 0;
        max-width: 100%;
    }
    .storage-col2 .item .ttl {
        padding: 4px 30px 6px;
    }
    .balloon {
        right: -21vw;
    }
    .binary img {
        width: min(8.421vw, 60px);
    }
    .balloon img {
        width: 23.158vw;
    }
    .storage-col2-bg {
        padding: 15px;
    }
    .uFlow.box_col2 {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media screen and (min-width: 525px)and (max-width: 750px) {
    .sp425 {
        display: none
    }
    .caseList_item {
        flex-direction: row
    }
    .caseList_item-img {
        margin-bottom: 0;
        width: max(40%, 200px)
    }
    .list_txt02 li {
        /* width: calc((100% / 4) - 15px); */
    }
    .list-compensation dl {
        width: calc(25% - 8px);
    }
    .list-compensation {
        width: 485px;
    }
    .list-compensation dd {
        font-size: 16px;
    }
    .residential-bnr2 ul {
        flex-direction: row;
    }
    .img-group .item .icon {
        height: 35px;
    }
    .list-img-phone ul {
        grid-template-columns: repeat(4, 1fr);
    }
    .list-img-phone li span {
        font-size: min(2.286vw, 14px);
    }
    .list_txt02 .group_list > p {
        flex-direction: row;
    }
}

@media screen and (min-width: 640px)and (max-width: 750px) {
    .blogList_item {
        flex-direction: row
    }
    .blogList_item-img {
        margin-right: 30px;
        margin-bottom: 0;
        width: max(35%, 200px);
        height: 180px
    }
}

@-moz-document url-prefix() {}