@charset "UTF-8";

.top_head {
/*
    width: 50%;*/
    max-width: 960px;
    width: 65%;
  flex: 1;
    }  


    .top_head img {

      width: auto;
      transition: all 0.5s;
    
    } 

.pnf::before {

  background: none !important;

}    


.hakata_top_left {

    width: 25%;
}

.hakata_top_right {
width: 100%;
font-size: 2em;
padding: 10px;
/*white-space: nowrap;*/
}


  .mod-contact-block_inquiry span {
  
    /* padding-left: 0px;*/

    font-size: 2.3rem;
  }
  

  @media all and (-ms-high-contrast: none) {


    .mod-contact-block_inquiry span {
      padding-top: 0px !important;
    }
    
    
    }
    
.hakata_top_banner {

display: -webkit-box;

display: -ms-flexbox;

display: flex;
-webkit-box-align: center;
    -ms-flex-align: center;
        align-items: center;
-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
        padding: 80px 0px 0px;
/*margin-top: 80px;*/
background: #fff;
}



.hakata_mainv_text {

    position: absolute;
      top: 14%;
      left: 50%;
      transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
  }
  
  .hakata_mainv_text span {
    display: block;
      width: 960px;
      font-size: 1.8em;
      text-shadow: #fff 1px 1px 2px;
      font-weight: bold;
  }
  
  .hakata_top_rw {
  /*
    width: 300px;
    display: table; */
display: inline-block ;

    max-width: 25%;
    width: 25%;
    pointer-events: none;
    opacity: 0;
  }
  
  .hakata_top_rw p {

    /* display: inline-block ;*/
     box-sizing: border-box;
   }
  .hakata_top_right {
  font-size: 1.4em;
  
   }


@media screen and (max-width: 1199px) and (min-width:898px) {

  .hakata_top_right {
    font-size: 1.2em !important;
    
    
     }
    
  

}

@media screen and (max-width: 1199px) {


   .hakata_top_rw {
    /**/
      width: 25%;
      display: table;
     
    }
    

  }

  @media screen and (max-width: 1099px) {


    .top_head  {

      max-width: 65%;
      width: 50%;
      }


    .hakata_top_left {
     
     display: block !important;
    }

    .hakata_top_rw {
    
    width: 50%;
    }
    
    
}


@media screen and (max-width: 898px) {

  .hakata_top_left {
     
     display: none !important;
    }
  
  .hakata_top_rw {
    max-width: 100% !important;
    display: none;
     }
    
     .hakata_top_banner {
    
    flex-wrap: wrap;
   
   } 

 .top_head  {
  
  max-width: 100% !important;
    width: 100% !important;
    padding: 5px;
    box-sizing: border-box;
  }
  
  
  
  
  }



@media screen and (max-width: 767px) {

    .hakata_mainv_text {
  
      top:0;
      left: 1%;
      transform: none;
      -webkit-transform: none;
      -ms-transform: none;
  
    }
  
  
   .hakata_mainv_text span {
    
      width: auto;
      font-size: 1.2em;
  }
  
  
  .top_head {
  
    width: 100% !important;
    max-width: 100% !important;
  }
  
  .mod-contact-block_inquiry span::before {
  
  left: -48px  ;
  
  }
  
  
  .hakata_top_rw {
  
  width: 100%;
  display: none;
  }
  
   .hakata_top_rw {
  
  width: 100% !important;
  }
  
  .hakata_top_right {
  width: 100%;
  font-size: 2em !important;
  padding:10px 0px !important;
  }
  
  .hakata_top_banner {
  
   flex-wrap: wrap;
   margin-top: 40px !important;
   padding: 5px 10px 10px;
  } 

}

img {

  image-rendering: -webkit-optimize-contrast;
}



@-moz-document url-prefix() {
  
  img {
      image-rendering:auto !important;
      
        }
  }



  


#floating-menu p {

    display: grid;
    grid-template-rows: 1fr min-content;
    row-gap: 10px;
}

.top-nav.nav02 ul {

display: flex;
justify-content: center;
width: calc(100% - 15px);
max-width: 1099px;
padding-bottom: 10px;
margin: 0 auto;
}

.top-nav.nav02 {

  padding: 0;
}

.top-nav.nav02 ul li {

display: flex;
justify-content: center;
align-items: center;
flex: 1;

}

.top-nav.nav02.floating03 ul {

  padding-bottom: 0;
}

h1.top_head {

  width: 100%;
  margin: 0 auto;
  padding-top: 80px;
}




@media screen and (max-width: 989px) {


.on_pc02 {
  display: none !important;
}

.on_sp02 
.hamburger-menu02 {
        height: 20px;
    }


    .on_sp02 #menu-btn-check {
        display: none;
    }

.on_sp02 
    .menu-btn02 {
         position: fixed; 
        /* position: absolute;*/

        top: 0px;
        right: 0px;
        display: flex;
        height: 60px;
        width: 60px;
        justify-content: center;
        align-items: center;
        z-index: 90;
        background-color: #3584bb;
        cursor: pointer;
        z-index: 999;
    }

.on_sp02 
.menu-content {
        width: 100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 100%;
        z-index: 80;
        background-color: #3584bb;
        transition: all 0.5s;
        z-index: 998;
    }

    .on_sp02 
.menu-content ul {
        padding: 70px 10px 0;
    }

.on_sp02 
    .menu-content ul li {
        border-bottom: solid 1px #ffffff;
        list-style: none;
    }


.on_sp02 
        .menu-content ul li a {
        display: block;
        width: 100%;
        font-size: 15px;
        box-sizing: border-box;
        color: #ffffff;
        text-decoration: none;
        padding: 9px 15px 10px 0;
        position: relative;
    }


    .on_sp02 
    .menu-content ul li a::before {
        content: "";
        width: 7px;
        height: 7px;
        border-top: solid 2px #ffffff;
        border-right: solid 2px #ffffff;
        transform: rotate(45deg);
        position: absolute;
        right: 11px;
        top: 16px;
    }



            .on_sp02 .menu-btn02 span, .on_sp02 .menu-btn02 span:before, .on_sp02 .menu-btn02 span:after {
        content: '';
        display: block;
        height: 3px;
        width: 25px;
        border-radius: 3px;
        background-color: #ffffff;
        position: absolute;
        left: 0;
        right: 0;
        margin: 0 auto;



    }
 .on_sp02 
.menu-btn02 span:before {
        bottom: 8px;
    }

 .on_sp02 
    .menu-btn02 span:after {
        top: 8px;
    }


 .on_sp02 
    #menu-btn-check:checked ~ .menu-content {
        left: 0;
    }


h1.top_head {

  padding-bottom: 15px;
  padding-top: 50px;
}

  }




@media screen and (min-width: 990px) {


.on_sp02 {

  display: none !important;

}


}


