@media all and (min-width: 1246px) and (max-width: 1500px) {
    #header h1 img {
        width: 75px;
        /* width: 230px; */
        /* margin-left: -115px; */
    }

    .mainVisual .swiper-slide .width {
        height: 710px;
    }

    .indexsec03 .bgbox .numul li {
        padding-right: 20px;
        padding-left: 50px;
    }

    .indexsec04 .sliderbox {
        padding: 0 120px;
    }

    .indexsec05 .lbox .photo {
        height: 342px;
    }

    .indexsec05 .lbox .photo img {
        min-height: 342px;
    }

    .indexsec05 .rbox .photo {
        height: 140px;
    }

    .indexsec05 .rbox .photo img {
        min-height: 140px;
    }

    #footer .flogo {
        max-width: 200px;
    }

    #footer .code {
        max-width: 200px;
    }

    #footer .ftxt {
        max-width: 460px;
    }
}

@media all and (min-width: 992px) and (max-width: 1245px) {
    #header h1 img {
        width: 75px;
        /* margin-left: -85px; */
    }

    #header .navi ul {
        width: 100%;
    }

    .indexsec01 .cateul li {
        width: 13%;
        margin-right: 1.5%;
    }

    .indexsec01 #scroll a {
        height: 390px;
    }

    .indexsec01 #scroll a img {
        /* min-height: 390px; */
        object-fit: cover;
        object-position: center;
    }

    .indexsec01 #scroll a:before {
        background-size: 150px auto;
    }

    .indexsec03 .bgbox .leafImg {
        left: 15px;
        width: 380px;
    }

    .indexsec03 .bgbox .numul {
        padding-left: 540px;
    }

    .indexsec03 .bgbox .numul li {
        margin-left: 20px;
        padding-right: 15px;
        padding-left: 45px;
    }

    .indexsec03 .bgbox .numul li:nth-child(2n) {
        margin-right: 20px;
    }

    .indexsec04 .sliderbox {
        padding: 0 120px;
    }

    .indexsec05 .lbox .photo {
        height: 270px;
    }

    .indexsec05 .lbox .photo img {
        min-height: 270px;
    }

    .indexsec05 .rbox .photo {
        height: 110px;
    }

    .indexsec05 .rbox .photo img {
        min-height: 110px;
    }

    #footer .flogo {
        max-width: 180px;
    }

    #footer .code {
        max-width: 160px;
    }

    #footer .ftxt {
        max-width: 330px;
    }

    #footer .fnavi {
        max-width: 190px;
    }

    #footer .fnavi a {
        font-size: 16px;
    }

    #footer .ftxt .tel a {
        font-size: 35px;
        background-size: 110px auto;
        padding-left: 120px;
    }

    .contactPage .sec01 .txtbox .code {
        margin-top: 0;
    }

    .videoPage .photoul a {
        height: 400px;
    }

    .videoPage .photoul a>img {
        min-height: 400px;
    }

    .videoPage .photoul a:before {
        background-size: 80px auto;
        background-position: center top 160px;
    }

    .videoPage .photoul a:hover p {
        bottom: 30px;
        font-size: 18px;
    }

    .honorPage .listul a {
        height: 230px;
    }

    .casePage .listul .photo {
        height: 390px;
    }

    .casePage .listul .photo img {
        min-height: 390px;
    }

    .productPage .conts .listul a {
        height: 300px;
    }

    .productPage .conts .listul img {
        min-height: 300px;
    }

    .productPage .sidebar .tel span {
        font-size: 32px;
    }
}

@media all and (max-width: 991px) {
    #header {
        padding: 0;
    }

    #header .width {
        max-width: inherit;
        height: 66px;
    }

    #header .width h1 img {
        width: 4.5rem;
        margin-left: 1rem;
    }

    #header .width h1 h3 {
        font-size: 2rem;
    }

    #header .navi {
        padding-top: 15px;
        display: none;
        position: absolute;
        left: 0;
        top: 100%;
        width: 100%;
        z-index: 900;
        background-color: rgba(255, 255, 255, 0.9);
    }

    #header .navi ul {
        width: auto;
        display: block;
    }

    #header .navi li {
        width: auto;
        transform: none;
    }

    #header .navi a {
        padding: 15px 5px;
        text-align: center;
        display: block;
        height: auto;
        font-size: 16px;
    }

    #header .navi span {
        transform: none;
    }

    #header .navi .leaf {
        width: 45px;
        height: 54px;
        right: 0;
        top: 0;
        transform: none;
    }

    #header .navi .leaf02 {
        right: 20px;
        bottom: 1px;
    }

    #header .navi .leaf03 {
        right: 8px;
        bottom: 16px;
    }

    #header .navi .on a .leaf01,
    #header .navi a:hover .leaf01 {
        width: 20px;
    }

    #header .navi .on a .leaf02,
    #header .navi a:hover .leaf02 {
        width: 26px;
    }

    #header .navi .on a .leaf03,
    #header .navi a:hover .leaf03 {
        width: 24px;
    }

    #header .menu {
        position: absolute;
        right: 15px;
        top: 18px;
    }

    .menu-trigger,
    .menu-trigger span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }

    .menu-trigger {
        position: relative;
        width: 38px;
        height: 30px;
    }

    .menu-trigger span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 4px;
        background-color: #489f21;
        border-radius: 4px;
    }

    .menu-trigger span:nth-of-type(1) {
        top: 0;
    }

    .menu-trigger span:nth-of-type(2) {
        top: 13px;
    }

    .menu-trigger span:nth-of-type(3) {
        bottom: 0;
    }

    .menu-trigger.active span:nth-of-type(1) {
        -webkit-transform: translateY(13px) rotate(-45deg);
        transform: translateY(13px) rotate(-45deg);
    }

    .menu-trigger.active span:nth-of-type(2) {
        opacity: 0;
    }

    .menu-trigger.active span:nth-of-type(3) {
        -webkit-transform: translateY(-13px) rotate(45deg);
        transform: translateY(-13px) rotate(45deg);
    }

    #footer {
        margin-top: 35px;
        background-size: cover;
    }

    #footer .width {
        max-width: inherit;
        padding: 60px 0 20px;
        display: block;
    }

    #footer .flogo {
        max-width: 140px;
        margin: 0 auto 20px;
    }

    #footer .code,
    #footer .fnavi,
    #footer .line {
        display: none;
    }

    #footer .ftxt {
        max-width: inherit;
    }

    #footer .ftxt p {
        margin-top: 15px;
        line-height: 1.7;
    }

    #footer .ftxt .tel a {
        padding-left: 100px;
        font-size: 28px;
        background-size: 90px auto;
    }

    #footer .copyright {
        padding: 10px 0 75px;
    }

    #footer .copyright span {
        margin: 5px 0 0;
        display: block;
    }

    .mainVisual .swiper-slide .width {
        max-width: inherit;
        height: 330px;
        padding: 15px;
    }

    .mainVisual .swiper-slide .width02 {
        max-width: inherit;
    }

    .mainVisual .swiper-slide .width img {
        max-height: 220px;
    }

    .mainVisual .swiper-pagination {
        display: none;
    }

    .headLine01 {
        margin-bottom: 25px;
    }

    .headLine01 .txt01 {
        /* padding-left: 65px; */
        background-size: 50px auto;
    }

    .headLine01 .txt02 {
        padding: 0px 0px 8px 0;
        font-size: 24px;
        background-size: 34px auto;
    }

    .headLine01 .txt03 {
        margin-top: 5px;
        font-size: 16px;
    }

    .comWidth {
        max-width: inherit;
    }

    .comLink a {
        width: 200px;
        padding: 10px 5px;
    }

    .comLink a span {
        padding-right: 50px;
        letter-spacing: 1px;
        font-size: 14px;
        background-size: 40px auto;
    }

    .indexsec01 {
        padding: 35px 0;
        background: none;
    }

    .indexsec01 .cateul {
        margin: 0;
        margin-bottom: 20px;
        flex-wrap: wrap;
        justify-content: space-around;
    }

    .headLine01 .txticon {
        margin: 5px 0;
    }

    .indexsec01 .cateul li {
        width: 33%;
        /* margin: 0 2% 10px 0; */
    }

    .indexsec01 .cateul li:nth-child(4n) {
        margin-right: 0;
    }

    .indexsec01 .cateul a {
        padding: 5px;
        border-radius: 10px;
        background-size: 10px auto;
    }

    .indexsec01 .cateul p {
        font-size: 14px;
    }

    .indexsec01 .cateul .icon img {
        /* height: 38px; */
    }

    .indexsec01 .cateul .hidden {
        display: none;
    }

    .indexsec01 #scroll {
        height: 400px;
    }

    .indexsec01 #scroll ul {
        justify-content: space-between;
    }

    .indexsec01 #scroll li {
        width: 49%;
        margin: 0 0 10px;
    }

    .indexsec01 #scroll a {
        height: 200px;
    }

    .indexsec01 #scroll a img {
        /* min-height: 200px; */
    }

    .indexsec01 #scroll p {
        padding: 5px;
        font-size: 14px;
    }

    .indexsec01 #scroll a:before {
        background-size: auto 80px;
    }

    .indexsec02 {
        margin-bottom: 35px;
        padding: 35px 0;
        background-size: 220px auto, 180px auto;
    }

    .indexsec02 .comWidth {
        display: block;
    }

    .indexsec02 .lbox {
        width: auto;
    }

    .indexsec02 .lbox h2 {
        margin-bottom: 25px;
        font-size: 24px;
        text-align: center;
    }

    .indexsec02 .lbox h2 span {
        font-size: 16px;
    }

    .indexsec02 .lbox .txt {
        margin-bottom: 20px;
    }

    .indexsec02 .lbox .intor {
        line-height: 1.6;
        font-size: 16px;
        margin: 0 0 20px;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 5;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .indexsec02 .lbox .comLink a {
        margin: 0 auto;
        width: 200px;
    }

    .indexsec02 .rbox {
        width: auto;
        margin-top: 30px;
    }

    .indexsec02 .rbox .img01 {
        text-align: center;
    }

    .indexsec02 .rbox .img02 {
        margin-top: 0;
    }

    .indexsec03 .headLine01 {
        margin-bottom: 10px;
    }

    .indexsec03 .bgbox .comWidth {
        min-height: inherit;
    }

    .indexsec03 .bgbox .leafImg {
        width: 260px;
        left: 0;
    }

    .indexsec03 .bgbox .leafImg img {
        opacity: 0;
    }

    .indexsec03 .bgbox .numul {
        padding: 35px 0 35px 33px;
        position: relative;
        z-index: 10;
    }

    .indexsec03 .bgbox .numul li {
        padding: 15px 15px 15px 35px;
        border-radius: 15px;
        margin: 0 0 20px;
    }

    .indexsec03 .bgbox .numul li .num {
        left: -30px;
        margin-top: -25px;
        width: 50px;
    }

    .indexsec03 .bgbox .numul li:nth-child(2n) {
        margin: 0 0 20px;
    }

    .indexsec03 .bgbox .numul li:last-child {
        margin-bottom: 0;
    }

    .indexsec03 .bgbox .numul h3 {
        font-size: 18px;
    }

    .indexsec03 .bgbox .numul li:before {
        display: none;
    }

    .indexsec04 {
        padding: 35px 0;
    }

    .indexsec04 .sliderbox {
        max-width: inherit;
        padding: 0 60px;
    }

    .indexsec04 .sliderbox .swiper-slide {
        width: 200px;
    }

    .indexsec04 .sliderbox a {
        height: 265px;
    }

    .indexsec04 .sliderbox a img {
        min-height: 265px;
    }

    .indexsec04 .sliderbox p {
        padding: 5px;
        font-size: 14px;
    }

    .indexsec04 .sliderbox .swiper-container {
        padding: 30px 20px;
    }

    .indexsec04 .sliderbox .swiper-pagination-bullet {
        width: 10px;
        height: 10px;
        margin: 0 5px;
    }

    .indexsec04 .sliderbox .swiper-pagination-bullet-active {
        width: 35px;
    }

    .indexsec04 .swiper-button-next,
    .indexsec04 .swiper-button-prev,
    .indexsec06 .swiper-button-next,
    .indexsec06 .swiper-button-prev {
        width: 32px;
        height: 32px;
        margin-top: -16px;
    }

    .indexsec05 {
        margin-bottom: 35px;
        min-height: inherit;
        background: none;
        background-color: #489f21;
        padding: 35px 0;
    }

    .indexsec05 h2 {
        margin-bottom: 25px;
        font-size: 16px;
    }

    .indexsec05 h2>span {
        margin-bottom: 5px;
        font-size: 24px;
    }

    .indexsec05 .inner {
        display: block;
        margin-bottom: 0;
    }

    .indexsec05 .lbox {
        margin-bottom: 15px;
        width: auto;
    }

    .indexsec05 .lbox .photo {
        height: auto;
    }

    .indexsec05 .lbox .photo img {
        min-height: inherit;
    }

    .indexsec05 .rbox {
        width: auto;
    }

    .indexsec05 .rbox a {
        display: block;
    }

    .indexsec05 .rbox .photo {
        width: auto;
        height: auto;
    }

    .indexsec05 .rbox .photo img {
        min-height: inherit;
    }

    .indexsec05 .rbox .txtbox {
        width: auto;
        padding: 10px 15px;
    }

    .indexsec05 .rbox .txtbox h3 {
        margin-bottom: 5px;
    }

    .indexsec05 .rbox .txtbox .time {
        margin-bottom: 5px;
    }

    .indexsec06 .sliderbox {
        max-width: inherit;
        padding: 0 60px;
    }

    .indexsec06 .sliderbox .swiper-slide {
        width: 200px;
    }

    .indexsec06 .sliderbox a {
        height: 250px;
    }

    .indexsec06 .sliderbox a img {
        min-height: 250px;
    }

    .indexsec06 .sliderbox p {
        padding: 5px;
        font-size: 14px;
    }

    .indexsec06 .sliderbox a:before {
        width: 59px;
        height: 58px;
        background-size: 100% 100%;
    }

    .comImg{
        padding-top: 5rem;
    }

    .comImg .width {
        max-width: inherit;
        height: 250px;
    }

    .comImg h2 {
        font-size: 14px;
        line-height: 1.6;
        letter-spacing: 0;
    }

    .comImg h2 span {
        padding-bottom: 30px;
        font-size: 26px;
        background-position: center bottom 10px;
        background-size: 65px auto;
    }

    .pagePath {
        margin-bottom: 35px;
    }

    .pagePath .width {
        max-width: inherit;
        padding: 10px 15px;
        display: block;
    }

    .pagePath .pagelink {
        padding: 5px 0 5px 25px;
        background-position: left top 6px;
        background-size: 18px auto;
    }

    .pagePath .pagetel {
        display: none;
    }

    .aboutPage .h2Ttl {
        padding-bottom: 10px;
        margin-bottom: 20px;
        font-size: 20px;
    }

    .aboutPage .h2Ttl:before {
        height: 3px;
    }

    .aboutPage .h2Ttl span {
        line-height: 1.5;
        font-size: 36px;
    }

    .aboutPage .sec01 {
        margin-bottom: 35px;
        display: block;
    }

    .aboutPage .sec01 .photobox {
        width: auto;
    }

    .aboutPage .sec01 .txtbox {
        margin: 0 0 20px;
        width: auto;
    }

    .aboutPage .sec01 .txtbox p,
    .aboutPage .sec01 .txtbox p * {
        font-size: 14px !important;
        line-height: 1.6 !important;
    }

    .aboutPage .sec01 .txtbox p:not(:last-child) {
        margin-bottom: 15px;
    }

    .aboutPage .sec02 .inner {
        display: block;
        background-size: 80px auto;
    }

    .aboutPage .sec02 .inner .lbox {
        width: auto;
        background: none;
    }

    .aboutPage .sec02 .inner .lbox img {
        width: 100%;
    }

    .aboutPage .sec02 .inner .rbox {
        width: auto;
        padding: 15px;
    }

    .aboutPage .sec02 .inner .rbox li {
        margin: 10px 0;
        font-size: 16px;
    }

    .contactPage .sec01 {
        display: block;
    }

    .contactPage .sec01 .ditu {
        width: auto;
        height: 300px;
    }

    .contactPage .sec01 .txtbox {
        width: auto;
        padding: 20px 15px;
    }

    .contactPage .sec01 .txtbox h2 {
        margin-bottom: 20px;
        font-size: 20px;
    }

    .contactPage .sec01 .txtbox h2 span {
        font-size: 12px;
    }

    .contactPage .sec01 .txtbox li {
        padding-left: 30px;
        font-size: 16px;
        line-height: 1.8;
    }

    .contactPage .sec01 .txtbox li img {
        width: 20px;
        top: 5px;
    }

    .contactPage .sec01 .txtbox .code {
        display: none;
    }

    .pagination-wrapper {
        margin-top: 20px;
    }

    .pagination li a {
        font-size: 14px;
    }

    .pagination li.thisclass {
        font-size: 14px;
    }

    .videoPage .comImg .width {
        max-width: inherit;
    }

    .videoPage .comImg h2 {
        padding-top: 0;
    }

    .videoPage .photoul {
        justify-content: space-between;
    }

    .videoPage .photoul li {
        width: 49%;
        margin: 0 0 15px;
    }

    .videoPage .photoul a {
        height: 220px;
    }

    .videoPage .photoul a>img {
        min-height: 220px;
    }

    .videoPage .photoul p {
        font-size: 14px;
        padding: 5px;
        letter-spacing: 0;
    }

    .videoPage .photoul a:before {
        background: transparent url("../img/icon18.png") no-repeat center top 80px;
        opacity: 1;
        background-size: 50px auto;
    }

    .videoPage .photoul a:hover p {
        font-size: 14px;
        font-weight: normal;
        bottom: 0;
        background-color: #489f21;
    }

    .newsPage .comImg .width {
        max-width: inherit;
    }

    .newsPage .newsul .width {
        max-width: inherit;
        display: block;
    }

    .newsPage .newsul a {
        padding: 15px 15px;
        display: block;
    }

    .newsPage .newsul .photo {
        width: auto;
        height: auto;
        text-align: center;
        margin-bottom: 20px;
        display: block;
    }

    .newsPage .newsul .txtbox {
        width: auto;
    }

    .newsPage .newsul .txtbox h3 {
        margin-bottom: 10px;
        font-size: 18px;
        padding-right: 0;
    }

    .newsPage .newsul .txtbox .time {
        position: static;
        right: inherit;
        top: inherit;
        font-size: 16px;
        margin-bottom: 10px;
    }

    .newsPage .newsul .txtbox p {
        font-size: 14px;
        letter-spacing: 0;
    }

    .newsPage .newsul .txtbox .link {
        text-align: center;
        margin-top: 10px;
    }

    .newsPage .newsul .txtbox .link span {
        padding: 10px 5px;
        width: 200px;
    }

    .newsPage .info {
        line-height: 1.6;
        font-size: 14px;
    }

    .newsPage .info * {
        line-height: 1.6 !important;
        font-size: 14px !important;
    }

    .headLine02 {
        margin-bottom: 20px;
        font-size: 18px;
        letter-spacing: 0;
    }

    .comNote {
        margin-bottom: 20px;
        display: block;
    }

    .comNote li {
        font-size: 14px;
        margin: 0 0 5px;
        text-align: center;
    }

    .comNote li img {
        height: 15px;
        margin: -3px 5px 0 0;
    }

    .comPage {
        margin-top: 20px;
    }

    .comPage a {
        padding: 5px 0;
        font-size: 14px;
    }

    .comPage .prev a {
        padding-left: 40px;
        background-size: 30px auto;
    }

    .comPage .next a {
        padding-right: 40px;
        background-size: 30px auto;
    }

    .honorPage .comImg .width {
        max-width: inherit;
    }

    .honorPage .listul {
        justify-content: space-between;
    }

    .honorPage .listul li {
        width: 49%;
        margin: 0 0 20px;
    }

    .honorPage .listul a {
        height: 125px;
    }

    .honorPage .listul p {
        font-size: 14px;
        padding: 5px;
    }

    .honorPage .info {
        line-height: 1.6;
        font-size: 14px;
    }

    .honorPage .info * {
        line-height: 1.6 !important;
        font-size: 14px !important;
    }

    .casePage .comImg .width {
        max-width: inherit;
    }

    .casePage .listul {
        justify-content: space-between;
    }

    .casePage .listul li {
        width: 49%;
        margin: 0 0 15px;
    }

    .casePage .listul .photo {
        height: 220px;
    }

    .casePage .listul .photo img {
        min-height: 220px;
    }

    .casePage .listul h3 {
        font-size: 16px;
    }

    .casePage .info {
        line-height: 1.6;
        font-size: 14px;
    }

    .casePage .info * {
        line-height: 1.6 !important;
        font-size: 14px !important;
    }

    .casePage .info ul li {
        max-width: 45%;
        margin: 0 2.5% 20px;
    }

    .productPage .comImg .width {
        max-width: inherit;
    }

    .productPage .sidebar {
        width: auto;
        border: none;
        padding-bottom: 20px;
        float: none;
    }

    .productPage .sidebar .ttl,
    .productPage .sidebar .text,
    .productPage .sidebar .tel,
    .productPage .sidebar .code {
        display: none;
    }

    .productPage .sidebar .sideul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .productPage .sidebar .sideul li {
        border: 1px solid #999;
        margin-bottom: 10px;
        box-sizing: border-box;
        width: 49%;
    }

    .productPage .sidebar .sideul a {
        display: flex;
        height: 100%;
        justify-content: center;
        align-items: center;
        font-size: 15px;
    }

    .productPage .sidebar .sideul span {
        padding: 8px 5px;
    }

    .productPage .sidebar .sideul .on span,
    .productPage .sidebar .sideul a:hover span {
        background: none;
    }

    .productPage .conts {
        width: auto;
        float: none;
    }

    .productPage .conts .listul {
        justify-content: space-between;
    }

    .productPage .conts .listul li {
        width: 49%;
        margin: 0 0 15px;
    }

    .productPage .conts .listul a {
        height: 200px;
    }

    .productPage .conts .listul img {
        min-height: 200px;
    }

    .productPage .conts .listul p {
        padding: 5px;
    }

    .productPage .conts .listul a:before {
        background-size: 100px auto;
    }

    .productPage .imgbox .photo {
        margin-bottom: 20px;
    }

    .productPage .imgbox .txtbox {
        line-height: 1.6;
        font-size: 14px;
    }

    .productPage .imgbox .txtbox * {
        line-height: 1.6 !important;
        font-size: 14px !important;
    }





    body {
        min-width: inherit;
        font-size: 14px;
    }

    a:hover,
    a:hover img {
        opacity: 1 !important;
    }

    .pc {
        display: none !important;
    }

    a[href^="tel:"] {
        cursor: pointer;
        pointer-events: auto;
    }



    .cndns-right {
        display: none;
    }

    .pagination span {
        font-size: 14px;
    }

    .pagination a {
        margin: 0 3px 5px;
        min-width: 33px;
    }

    .pagination .page-status {
        margin-right: 8px;
    }



    #toolbar {
        display: block;
    }


    .mainVisual .swiper-slide {
        height: 37.5rem;
        margin-top: 66px;
    }

}


@media all and (min-width: 992px) {
    .sp {
        display: none !important;
    }
}