@charset "UTF-8";
@media screen and (max-width: 1280px) {
    .company_cnt2 .inner .dl::before {
        content: initial;
    }
    .company_cnt2 .inner .dl::after {
        content: initial;
    }
}
@media screen and (max-width: 1024px) {

  #file1,#file2,#file3{
    font-size:1.2rem;
  width:90%;}


    /*index*/
    .index .mainimg {
        width: 100%;
        height: calc(100vh - 11rem);
    }
    .index .mainimg h2 {
        width: 60%;
        margin: auto;
        top: 30vh;
    }
    .index .mainimg .ul {
        width: 100%;
        bottom: 1rem;
        position: absolute;
        justify-content: center;
    }
    .index .mainimg .li {
        font-size: 1rem;
    }
    .index .mainimg .slider {
        width: 100%;
        height: 100%;
    }
    .index .mainimg .slider * {
        height: 100% !important;
        object-fit: cover;
        object-position: center;
    }
    .index .mainimg .slider .pic {
        aspect-ratio: initial;
    }
    .index .mainimg .slider .pic img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }
    .index_cnt2 .inner .grid {
        display: block;
    }
    .index_cnt2 .inner .grid .dl {
        display: block;
        margin: 0 0 3rem;
    }
    .index_cnt2 .inner .grid a .dt {
        font-size: 2.2rem;
    }
    .index_cnt2 .inner .grid2 {
        display: block;
    }
    .index_cnt2 .inner .grid2 .dl {
        display: block;
        margin: 0 0 3rem;
        padding: 1rem;
    }
    .index_cnt2 .inner .grid2 .dt {
        font-size: 2.2rem;
    }
    .index_cnt2 .inner .grid2 .pic {
        border: 0.5rem solid #fff;
    }
    .index_cnt3 .inner .webgene-blog {
        display: block;
    }
    .index_cnt3 .inner .webgene-blog .webgene-item {
        margin: 0 0 3rem;
    }





    /*reason*/
    .reason_cnt2 .inner .col2:nth-of-type(2) .left img {
        width: 100%;
    }
    .reason_cnt1 .inner .col2 .right p:not(.buttonA) {
        margin: 0 0 3rem;
    }




    /*tent*/
    .tent_cnt2 .inner>.grid {
        display: block;
    }
    .tent_cnt2 .inner>.grid .dl {
        margin: 0 0 3rem;
    }
    .tent_cnt2 .inner>.grid a .dt {
        font-size: 2.2rem;
    }
    .tent_cnt2 .inner .set .window {
        width: 100%;
        padding: clamp(2rem, 2.6vw, 5rem);
    }
    .tent_cnt2 .inner .set .window .pic {
        position: initial;
        width: 100%;
    }
    .tent_cnt2 .inner .set .window p {
        margin: 0 0 3rem;
    }
    .tent_cnt2 .inner .set .grid {
        display: block;
    }
    .tent_cnt2 .inner .set .grid .dt {
        font-size: 2.2rem;
    }
    .tent_cnt2 .inner .set .grid .dl {
        margin: 0 0 3rem;
        padding: 0 0 3rem;
        border-bottom: 0.1rem dashed #ccc;
    }
    .tent_cnt2 .inner .set .grid .dt {
        font-size: 2.2rem;
    }






    /*catalog*/
    .catalog_cnt2 .inner .window {
        width: 100%;
        padding: clamp(2rem, 2.6vw, 5rem);
    }
    .catalog_cnt2 .inner .window .col2 .left .name {
        font-size: 2rem;
    }
    .catalog_cnt2 .inner .window .buttonA {
        margin: 0 auto 3rem;
    }
    .catalog_cnt2 .inner .window .pic {
        position: initial;
        width: 100%;
    }





    /*choose*/
    .choose_cnt2 .inner .grid {
        display: block;
    }
    .choose_cnt2 .inner .grid .dl {
        margin: 0 0 3rem;
    }
    .choose_cnt2 .inner .grid .dt {
        font-size: 2.2rem;
    }
    .choose_cnt2 .inner .grid .dd {
        margin: 0 0 3rem;
        padding: 0 0 3rem;
        border-bottom: 0.1rem dashed #ccc;
    }
    .choose_cnt3 .inner .col2 :is(.left, .right) .set .title {
        font-size: 2.2rem;
    }
    .choose_cnt4 .inner .grid2 {
        display: block;
    }
    .choose_cnt4 .inner .grid2 .dl {
        margin: 0 0 2rem;
    }




    /*flow*/
    .flow_cnt1 .inner .dl {
        display: block;
    }
    .flow_cnt1 .inner .dt {
        font-size: 2.2rem;
    }
    .flow_cnt1 .inner .dd .flex {
        display: block;
    }
    .flow_cnt1 .inner .dd .flex .tel a {
        font-size: 2rem;
    }
    .flow_cnt1 .inner .dd .flex .fax span {
        font-size: 2rem;
    }
    .flow_cnt1 .inner .dd .button {
        width: 100%;
    }
    .flow_cnt2 .inner .dt {
        font-size: 2.2rem;
    }




    /*works & worksdetail共通*/
    :is(.works_cnt1, .worksdetail_cnt1) .inner {
        display: block;
    }
    :is(.works_cnt1, .worksdetail_cnt1) .inner>.buttonA {
        margin: 0 0 0.5rem;
    }
    :is(.works_cnt1, .worksdetail_cnt1) .inner .webgene-blog {
        width: 100%;
    }
    :is(.works_cnt1, .worksdetail_cnt1) .inner .webgene-blog .webgene-item {
        width: 100%;
    }


    /*works*/
    .works_cnt2 .inner .webgene-blog {
        display: block;
    }
    .works_cnt2 .inner .webgene-blog .webgene-item {
        margin: 0 0 3rem;
        padding: 0 0 3rem;
        border-bottom: 0.1rem dashed #ccc;
    }
    .webgene-pagination :is(.prev, .next),
    .webgene-pagination ul .number.selected,
    .webgene-pagination ul .number {
        width: 2em;
        height: 2em;
        margin: 0;
    }
    .webgene-pagination ul {
        width: 100%;
        justify-content: space-between;
    }
    .webgene-pagination .prev {
        margin: 0;
    }
    .webgene-pagination .next {
        margin: 0;
    }




    /*worksdetail*/
    .worksdetail_cnt2 .inner .webgene-blog .webgene-item .dt {
        font-size: 2.2rem;
    }





    /*company*/
    .company_cnt2 .inner .dl {
        display: block;
    }
    .company_cnt2 .inner .dt {
        font-size: 2rem;
    }
    .company_cnt2 .inner .title {
        font-size: initial;
    }
    .company_cnt3 .inner .dl {
        display: block;
    }
    .company_cnt3 .inner .dt {
        width: 100%;
    }
    .company_cnt3 .inner .dd {
        width: 100%;
        text-align: center;
    }
    .company_cnt1 .inner .col2 .left .ceo p {
        font-size: initial;
    }
    .company_cnt1 .inner .col2 .left .ceo .name {
        font-size: 2.2rem;
    }





    /*contact*/
    .contact_cnt2 .inner .window .flex {
        display: block;
    }
    .contact_cnt2 .inner .window .flex .tel a {
        font-size: 2rem;
    }
    .contact_cnt2 .inner .window .flex .fax span {
        font-size: 2rem;
    }
    .contact_cnt3 .inner h4 {
        font-size: initial !important;
    }
    form .dl {
        display: block;
        min-height: initial;
    }
    form .dl .dt {
        width: 100%;
        padding: 1rem;
        border: none;
    }
    form .dl .dd {
        width: 100%;
        padding: 1rem;
    }
    form .col label {
        font-size: 1.2rem;
    }
    .privacyformError {
        margin-top: -36.5px !important;
    }
.worksdetail_cnt2 .inner .webgene-blog .webgene-item .pic {
    width: 100%;
  }
.company .map,.contact_cnt3 {
  margin: 0 ;
}

  
}

@media screen and (max-width: 600px) {
.h1767682716301,.h1767665088745{
  font-size:2rem!important;
}
  .footer .inner .window h3 {
        margin: 1rem 0;
  }
  .maintitle {
    margin:0;
    width: 100%;
  }
.choose_cnt3 .inner .col2 :is(.left, .right) .set .title {
        font-size: 1.8rem;
    }
  
.contact_cnt1 .inner .col2 .right .li {
      font-size: 1.8rem;
}
  }
.contact_cnt1 .inner .col2 .right>p {
  padding:1rem 0rem;
}
.marquee p {
    font-size: 2.8rem;
}
  
}