@charset "UTF-8";
@media screen and (max-width: 1024px) {
/*aimate.min.css無効化*/
    .animated {
      animation-duration: 0s !important;
      /* 他の必要なスタイルをここに追加 */
    }

    /*-----以下ハンバーガーメニュー-----*/
    #wrapper .nav.globalMenuSp {/*管理画面用*/
        position: initial;
        transform: initial;
    }
    /*common.cssでnavに高さが与えられている場合はheight:initial;を追加*/
    .nav.globalMenuSp {
        position: fixed;
        z-index: 20;
        top: 0;
        left: 0;
        /*background:rgba(0,0,0,0.8);*/
        color: #000;
        text-align: center;
        transform: translateY(-100%);
        transition: all 0.6s;
        width: 100%;
    }




*{
    line-height: 1.8 !important;
}
    h2{
        font-size: 2.2rem !important;
    }
    h3{
        font-size: 2rem !important;
    }
    h4{
        font-size: 1.9rem !important;
    }






    /*汎用*/
[class*="_cnt"]{
    margin: 0 auto !important;
    padding: 5rem 0 !important;
}

.col2 .left{
    width: 100% !important;
    margin: 0 0 3rem !important;
}
.col2 .right{
    width: 100% !important;
}
[class^="title"] .flex p{
    font-size: 2.4rem;
}
.titleA h3{
    font-size: 2.4rem;
}
.titleB h3{
    font-size:initial !important;
}


/*header*/
.header{
    display: block;
}
.header .nav {
    display: block;
    max-width: initial;
}
.header .nav .ul{
    display: block;
    background: rgba(255,255,255,0.7);
    border-radius: 0 0 1rem 1rem;
}
.header .nav .li{
    width: 100%;
    padding: 2rem 0;
    border-bottom: 0.1rem dashed #999;
}
.header .nav .li a{
    color: #000;
}
.header .nav .li:first-of-type {
  display: block;
}
.header .nav .li:last-of-type{
    width: 100%;
    border-radius: 0 0 1rem 1rem;
    border: none;
}


    /* このクラスを、jQueryで付与・削除する */
    .nav.globalMenuSp.active {
        transform: translateY(0%);
    }


    .navToggle {
        display: block;
        position: fixed;
        /* bodyに対しての絶対位置指定 */
        right: 13px;
        top: 12px;
        width: 42px;
        height: 51px;
        cursor: pointer;
        z-index: 30;
        /*background: #666;*/
        text-align: center;
    }

    .navToggle span {
        display: block;
        position: absolute;
        /* .navToggleに対して */
        width: 30px;
        border-bottom: solid 3px #8d9cbc;
        -webkit-transition: .35s ease-in-out;
        -moz-transition: .35s ease-in-out;
        transition: .35s ease-in-out;
        left: 6px;
    }

    .navToggle span:nth-child(1) {
        top: 9px;
    }

    .navToggle span:nth-child(2) {
        top: 18px;
    }

    .navToggle span:nth-child(3) {
        top: 27px;
    }

    .navToggle span:nth-child(4) {
        border: none;
        color: #8d9cbc;
        font-size: 1.2rem;
        font-weight: bold;
        top: 3.5rem;
    }


    /* 最初のspanをマイナス45度に */
    .navToggle.active span:nth-child(1) {
        top: 18px;
        left: 6px;
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    /* 2番目と3番目のspanを45度に */
    .navToggle.active span:nth-child(2),
    .navToggle.active span:nth-child(3) {
        top: 18px;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        transform: rotate(45deg);
    }




    /*main*/
    .main .tab{
        display: flex;
        width: 100%;
        top: initial;
        right: 0;
        bottom: 0;
    }
    .main .tab :is(.contact, .line){
        width: 50%;
        min-height:6rem;
    }
    .main .tab :is(.contact, .line) a{
        writing-mode: initial;
        justify-content: center;
    }
    .main .tab .contact {
        margin: initial;
    }
.bottom .inner .grid{
    display: block !important;
}.bottom .inner .grid div:not(:last-of-type){
    margin: 0 0 3rem !important;
}
.footer .inner .col2 .ul{
    display: none !important;
}





/*footer*/

.footer .pagetop{
    display: none;
}
















}
@media screen and (max-width: 780px){
.header .flex .logo {
    width: fit-content;
    max-width: 20rem;
    padding-top: 1.5rem;
  }
  
.header .flex h1 {
  display:none;
  }
  .header {
    height: 7rem;
  }
  .inner {
    width: 90%;
  }
   
}

@media screen and (max-width: 780px) {
  .col2{
    display: block !important;
}
}