@charset "UTF-8";
@media screen and (max-width: 1024px) {
    * {
        line-height: 2 !important;
    }
    body {
        font-size: 1.4rem !important;
      font-weight:normal;
    }





    /*汎用*/
    .buttonA {
        margin: auto !important;
    }
    .col2 {
        display: block !important;
    }
    .col2 :is(.left, .right) {
        width: 100% !important;
    }

    [class*=cnt] {
        padding: 5rem 0 !important;
        margin: 0 auto !important;
    }


    .title {
        margin-bottom: 3rem !important;
    }
    .title h3 {}
    .title p {
        font-size: 2rem !important;
    }






    /*header*/
  
    .header h1 {
        display: none;
    }
    .header .logo {
        width: 15rem;
        top: 2rem;
        position: absolute;
    }
    .header .logo img {
        width: 80%;
    }
    #g-nav .col2 {
        height: initial;
        display: flex !important;
        padding: 3rem 0;
      flex-direction: column-reverse;
    }
    #g-nav .col2 .left{
        height: initial;
    }
    #g-nav .col2 .left .logo{
        width: 50%;
        margin: 0 auto 3rem;
    }
    #g-nav .col2 .left .logo img{
        width: 100%;
    }
    
    #g-nav .col2 .left .sns{
        width: 30%;
        margin: 0 auto;
      display:flex;
        gap: 2rem;
    }
  #g-nav .col2 .left .sns .icon:not(:last-of-type){border:initial;}
    #g-nav .col2 .right>.ul {
        display: block;
        margin: auto;
        width: fit-content;
    }
    #g-nav .col2 .right .ul .li {
        margin: 0 0 1rem;
    }
    #g-nav .col2 .right .ul .li:not(>a){
        border-bottom: 0.5rem solid #000;
    }
    #g-nav .col2 .right>.ul>.li>.ul {
        margin: 1rem 0 0;
    }
    #g-nav .col2 .right>.ul>.li>.ul>.li {
        margin: 0 0 1rem;
        padding: 0 0 0 2rem;
    }


    /*main*/
    .toptitle{
        margin: 14rem auto 5rem;
    }
    .toptitle_02{
        margin: 10rem auto 0;
    }
    .toptitle p{
        font-size: 3rem;
    }
    .ordersuits_box{
        padding:5rem 0 0;
    }
    .ordersuits_box .inner{
        width: 100%;
    }
    .ordersuits_box .inner .grid{
        display: block;
    }
    .bottom .col2 {
        min-height: 25rem;
    }
    .bottom .col2 :is(.sns, .contact) {
        width: 100% !important;
    }
    .bottom .col2 :is(.sns, .contact) h2 {
        font-size: 2rem;
        margin: 0 auto 3rem;
    }
    .bottom .col2 .contact :is(.mail, .line) {
        width: 80%;
    }





    /*footer*/
    .footer {
        padding: 5rem 0 3rem;
    }
    .footer .inner .logo {
        width: 50%;
        max-width: 23.1rem;
        margin: 0 auto 3rem;
        display: block;
    }
    .footer .inner .logo img {
        width: 100%;
    }
    .footer .inner .sns {
        width: 50%;
        margin: 0 auto 3rem;
        display: grid;
    }
    .footer .inner .copyright {
        text-align: center;
    }

}