/*==========================================================================*/
/*                     H O V E R    &    P C    O N L Y                     */
/*==========================================================================*/
@media screen and (min-width: 751px) {
.under main .side-banner{bottom: 130px}
	
.under main a.link[target="_blank"]:hover {text-decoration: underline;}
.under main a.link:not([target="_blank"]):hover {text-decoration: none;}
.frame01.list_col ul {display: flex;flex-wrap: wrap;justify-content: center;}
.frame01.list_col ul li {margin: 0 40px;}
    .toc-button:hover {
    opacity: 0.7;
}
    .wp-pagenavi a:hover,
    .pagination a:hover {
        color: var(--color-primary);
    }

    #topic-path a:hover {
        color: var(--color-primary);
    }

    .ovn__item {
        transition: 0.2s linear;
    }

    .ovn__item:hover {
        background-color: #dcdcdc;
    }

    .btn-prev-next a:hover {
        background: var(--color-primary);
    }

    .sec__h3 {
        min-height: 210px;
        position: relative;
        z-index: 1;
        padding-left: 350px;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .sec__h3.custom__slide {
        padding-right: 500px !important;
        min-height: 470px;
    }

    .sec__h3.custom__slide .s1_ct {
        position: absolute;
        right: 50px;
        top: 0;
        bottom: 0;
        margin: auto;
    }

    .sec__h3.sec__h3--right {
        padding-left: 0;
        padding-right: 350px;
    }

    .sec__h3 .image-l img,
    .sec__h3 .image-r img {
        width: 320px;
    }

    .sec__h3 .image-l,
    .sec__h3 .image-r {
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto !important;
        float: unset;
        height: max-content;
    }

    .sec__h3.pie-chart {
        min-height: 320px;
    }

    .sec__h3 .image-l {
        margin: 0 30px 0 0;
        left: 0;
    }

    .sec__h3 .image-r {
        margin: 0 0 0 30px;
        right: 0;
    }

    .button_slider:hover {
        opacity: .7;
    }

    .toc-002>ol li a:hover {
        color: #937422;
    }

    h2.left-pc {
        margin-left: 0;
        margin-right: auto;
    }

    .box-float {
        width: calc(100% - 380px);
        display: inline-block;
    }

    .u_box_pic {
        position: relative;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding-right: 350px;
        min-height: 210px;
    }

    .u_box_pic .image {
        position: absolute;
        top: 0;
        right: 0;
    }

    /* END screen-min:751px */


    #page_complex #ttl5.sec__h3 .image-r{top: 12px;}
    #page_complex #ttl9.sec__h3 .image-r{top: 33px;}
    .under main .bg_fix{width: 600px;padding: 20px 110px;}

    #page_sell .uPickup .img{top: 155px;}
    
    .list_3col li:nth-child(3n + 3){margin-right: 0;}


    .news-detail-item.img_right{}
    .news-detail-item.img_right .news-detail-img{max-width: 400px;margin-left: 30px;height: auto;max-height: 400px;margin-bottom: 30px;float:right}

    .news-detail-item.img_left{}
    .news-detail-item.img_left .news-detail-img{max-width: 400px;margin-right: 30px;height: auto;max-height: 400px;margin-bottom: 30px;float:left}

}

@media screen and (min-width: 751px) and (max-width: 1560px) {
    .uPickup {
        width: calc(100% - 20px);
        margin-left: auto;
        margin-right: auto;
    }

    .uPickup__bg {
        width: calc(100% - 70px);
        padding: 85px 0;
        min-height: 545px;
    }

    .uPickup .img {
        width: 500px;
        height: 328px;
    }

    .uPickup .img img {
        max-height: 100%;
    }

    .sec__pickup {
        padding: 22px 0;
    }

    .sec__pickup::before {
        width: 256px;
        height: 290px;
        left: -10px;
    }

    .sec__pickup::after {
        width: 256px;
        height: 286px;
        right: -10px;
    }

    .umessage-scroll .utext {
        font-size: 80px;
    }

    .umessage-scroll .img {
        width: 400px;
    }

    .list-river img {
        width: max(30vw, 378px);
    }

    /* END screen-min:751px && screen-max:1560px */
}

@media screen and (min-width: 751px) and (max-width: 1260px) {
    .uPoint .item .ttl>span {
        height: 48px;
        border-top-right-radius: 2px;
        border-bottom-right-radius: 2px;
    }

    .uPoint .item .ttl>span::before {
        left: calc(100% - 1px);
        border-width: 24px 0 24px 17px;
    }
}

/*==========================================================================*/
/*                        M O B I L E    D E V I C E                        */
/*==========================================================================*/
@media screen and (min-width: 1px) and (max-width: 750px) {

    .image-l,
    .image-r {
        float: none;
        text-align: center;
        margin: 0 0 25px;
    }

    .image-l img,
    .image-r img {
        width: auto;
        height: auto;
    }

    section {
        margin-bottom: 50px;
    }

    section.mgb_sec_x2 {
        margin-bottom: 80px;
    }

    .uTable__scroll {
        overflow: scroll;
        table-layout: fixed;
    }

    .uTable__scroll table {
        min-width: 800px;
    }

    .uTable__scroll th,
    .uTable__scroll td {
        padding: 15px;
    }

    h2 {
        font-size: 26px;
        line-height: 1.5em;
        letter-spacing: 0;
        margin-bottom: 20px;
    }

    h3 {
        font-size: 24px;
        line-height: 1.5em;
        letter-spacing: 0;
        margin-bottom: 20px;
        margin-left: 0;
    }

    h3 span {
        padding-left: 0;
        background-size: 20px 15px;
    }

    h4 {
        font-size: 22px;
        line-height: 1.5em;
        letter-spacing: 0;
        margin-bottom: 20px;
    }

    h5,
    .style5 {
        font-size: 20px !important;
        line-height: 1.5em !important;
        letter-spacing: 0 !important;
        margin-bottom: 20px !important;
        padding: 8px 10px !important;
    }

    h6 {
        font-size: 18px !important;
        line-height: 1.5em !important;
        letter-spacing: 0 !important;
        margin-bottom: 20px !important;
    }

    .page-title {
        max-width: calc(100% - 30px);
    }

    .page-title .ttl {
        font-size: 26px;
        margin-bottom: 10px;
        line-height: 1.5em;
        letter-spacing: 0;
    }

    .page-title .ttm {
        font-size: 20px;
        margin-bottom: 10px;
        line-height: 1.5em;
        letter-spacing: 0;
    }

    .page-title .desc p {
        font-size: 14px;
    }

    #top_info {
        padding: 70px 0 50px;
    }

    #top_info::before {
        width: 91px;
        height: 144px;
        left: 10px;
        top: 10px;
    }

    #top_info::after {
        width: 91px;
        height: 152px;
        right: 10px;
        bottom: 10px;
    }

    #topic-path li,
    #topic-path a {
        font-size: 14px;
    }

    .cnt * {
        font-size: 14px;
    }

    .cnt h2 {
        font-size: min(26px, 6vw);
    }

    .cnt-ttl-wrap {
        margin: 0 auto;
    }

    #page_trouble .cnt-ttl-wrap {
        margin: 0;
    }

    .cnt-ttl-wrap .case-tag span {
        font-size: 14px;
        padding: 0.5rem 1rem 0.6rem;
    }

    .uTable__block th,
    .uTable__block td {
        display: block;
        width: 100%;
        padding: 10px;
    }

    .uTable__block th {
        border-bottom-color: #fff;
    }

    .uTable__block td {
        font-size: 14px;
    }

    .tbl-note {
        font-size: 14px;
        margin-bottom: 5px;
        line-height: 1.5em;
    }

    .uBnr {
        flex-direction: column;
        align-items: center;
    }

    .uBnr .item {
        width: 100%;
        max-width: 360px;
        min-height: 120px;
    }

    .uBnr .item:not(:last-child) {
        margin-bottom: 30px;
    }

    .uBnr .item a {
        min-height: 120px;
        font-size: 18px;
    }

    .uBnr .item a span {
        min-height: 120px;
        background: url(../images/icon-arrow.png) right 20px center no-repeat;
        background-size: 18px 13px;
        padding: 10px 45px;
    }

    .uPoint .item:not(:last-child) {
        padding-bottom: 55px;
        margin-bottom: 25px;
    }

    .uPoint .item .ttl {
        font-size: 20px;
        line-height: 1.5em;
        margin-bottom: 15px;
        flex-direction: column;
    }

    .uPoint .item .ttl>span {
        font-size: 12px;
        padding: 5px;
        justify-content: center;
        align-items: normal;
        height: 30px;
        margin-right: 30px;
        width: 100px;
        margin-bottom: 10px;
    }

    .uPoint .item .ttl>span::before {
        border-width: 15px 0 15px 10px;
    }

    .uPoint .item .ttl>span .num::before {
        font-size: 20px;
    }

    .uPickup {
        width: calc(100% - 20px);
        margin-left: auto;
        margin-right: auto;
    }

    .uPickup__content {
        width: 100%;
    }

    .uPickup .txt-pickup {
        font-size: 20px;
        width: 124px;
    }

    .uPickup .txt-pickup::before {
        border-width: 15px 62px 0 62px;
    }

    .uPickup .ttl {
        font-size: 20px;
        line-height: 1.5em;
    }

    .uPickup .img {
        position: static;
        width: auto;
        margin-bottom: 20px;
    }

    .uPickup__bg {
        width: 100%;
        padding: 50px 20px 30px !important;
    }

    .sec__pickup {
        padding: 12px 0;
        margin-left: -10px;
        margin-right: -10px;
    }

    .sec__pickup::before {
        width: 109px;
        height: 111px;
        left: -5px;
    }

    .sec__pickup::after {
        width: 118px;
        height: 125px;
        right: -5px;
    }

    .uTable th {
        font-size: 16px;
    }

    .under #content ul:not([class]) li::before {
        top: 8px;
    }

    .txt-l {
        font-size: 18px;
        text-align: center;
        font-weight: 500;
    }

    .under main {
        margin-top: 80px;
    }

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

    .flex-content .img {
        width: auto;
        flex-shrink: unset;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 20px;
    }

    .ovn__item {
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
    }

    .ovn__item--img {
        width: 100%;
        height: 51vw;
        max-height: 300px;
        margin: 0 auto 20px;
    }

    .ovn__item--img img {
        height: 100%;
    }

    .ovn__item--ttl {
        font-size: 20px;
    }

    .btn-prev-next {
        flex-direction: column;
        align-items: center;
    }

    .btn-prev-next li {
        width: 100%;
        position: relative !important;
        width: 250px;
        max-width: 100%;
    }

    .btn-prev-next a {
        padding: 16px 20px;
        font-size: 16px;
    }

    .btn-prev-next .prevPage::before {
        height: 12px;
        right: 20px;
    }

    .btn-prev-next .nextPage::before {
        height: 12px;
        right: 20px;
    }

    .toc-002>ol {
        padding-left: 1em;
    }

    .umessage-scroll {
        margin-top: 30px;
        width: 100%;
        left: 0;
    }

    .umessage-scroll .utext:not(:last-of-type) {
        margin-bottom: 10px;
    }

    .umessage-scroll .utext {
        font-size: min(5.625vw, 24px);
    }

    .umessage-scroll .img {
        position: static;
        margin-bottom: 50px;
        -webkit-transform: unset;
        transform: unset;
        width: 250px;
        margin-left: auto;
        margin-right: auto;
    }

    .umessage-scroll .utext:last-of-type {
        margin-top: -35px;
    }

    .list-river img {
        width: 150px;
    }

    .s1_thumbv2 {
        padding-top: 0;
    }

    .s1_ct_gallery {
        transform: scale(0.8);
    }

    .s1_ct_gallery {
        padding-right: 0;
        max-width: 272px;
        margin: 10px auto;
        padding-top: 30px;
    }

    .card {
        width: 100%;
        height: 350px;
    }

    .button_slider {
        width: 70px;
        height: 70px;
        bottom: -30px;
        left: -30px;
    }

    .s1_ct {
        justify-content: center;
    }

    .sec__h3.pie-chart img {
        width: 100%;
        max-width: 400px;
    }

    .drop425 {
        display: block;
    }

    .box-map {
        height: 250px;
    }

    .u_box_pic .image {
        text-align: center;
    }

    #page_contact .u_bnn {
        padding: 20px 15px;
    }

    #page_contact .u_bnn .u_txt {
        font-size: 14px;
    }

    #page_contact .u_bnn .h-contact-buttons {
        margin: 0 auto;
    }

    #page_contact .u_bnn .h-contact-buttons li:first-child {
        margin: 0 0 20px 0;
    }

    #page_contact .u_bnn .h-contact-buttons a {
        height: 84px !important;
        font-size: 20px !important;
        width: 290px;
        justify-content: center;
        padding: 5px 10px !important;
    }

    #page_contact .u_bnn .h-contact-buttons a.btn-line {
        height: 60px !important;
    }

    #page_contact .u_bnn .btn_tel .t_01 {
        font-size: 24px;
    }

    #page_contact .u_bnn .btn_tel .t_01::before {
        width: 18px;
    }

    #page_contact .u_bnn .btn_tel .t_02,
    #page_contact .u_bnn .btn_tel .t_03 {
        font-size: 12px;
    }

    #page_contact .u_bnn .h-contact-buttons a.btn-line .btn-icon {
        margin-right: 7px;
        width: 40px;
        height: 40px;
    }

    .frame02{padding: 15px;}
    .frame02_ct{padding: 15px;}
    .frame02_ct .big_ttl{font-size: 18px;padding: 10px 15px;margin-bottom: 15px;}
    .frame02 h4{padding: 15px;}

    .list_staff{justify-content: center;flex-wrap: wrap;}
    .list_staff li{width: 48%;margin:0 4% 20px 0;}
    .list_staff li:nth-child(2n + 2){margin-right: 0;}
    .list_staff li span{font-size: 16px;margin-top: 5px;}
	.under main .frame01 {padding: 25px 20px;}

}

@media screen and (min-width: 375px) and (max-width: 750px) {
    .s1_ct_gallery {
        transform: scale(1);
    }

    .s1_ct {
        padding: 30px 0 40px;
    }

    /* END min-width:375px && screen-max:750px */
}

@media screen and (min-width: 425px) and (max-width: 750px) {
    .drop425 {
        display: none;
    }

    /* END min-width:425px && screen-max:750px */
}


@media screen and (max-width: 360px) {
    #page_contact .u_bnn .h-contact-buttons a {
        width: 260px;
    }

    #page_contact .u_bnn .h-contact-buttons a.btn-line {
        font-size: 18px !important;
    }

}