@charset "UTF-8";

/*hakata*/
h3, h4 {

  color: #09A49F !important;
  
  }
  




    /* fadeIn 画面外にいる状態 */
    .fadein2 {
      opacity : 0.1;
      transform : translate(0, 50px);
      transition : all 500ms;
      }
  
  /* 画面内に入った状態 */
  .fadein2.scrollin {
      opacity : 1;
      transform : translate(0, 0);
      }



    /* fadeIn 画面外にいる状態 */
  .fadein3 {
      opacity : 0.1;
      transform : translate(0, 50px);
      transition : all 500ms;
      }
  
  /* 画面内に入った状態 */
  .scrollin1 {
      opacity : 1;
      transform : translate(0, 0);
      animation-duration: 3s;
      animation-name: anime_left4;
      animation-fill-mode: forwards;
      }





.is-current {

  pointer-events: none;
}

.mod-frame {

  padding: 0px !important;
  margin-top: 0px !important;
  border-top: 0px !important;
}



.page-title h1, .page-title h2, .page-title h3, .page-title h4, .page-title h5, .page-title h6 {

  color: #4DB6C0 !important;
  font-weight: bold;
  
    
  }
  .page-title h1:after, .page-title h2:after, .page-title h3:after, .page-title h4:after, .page-title h5:after, .page-title h6:after {
    
  background: #4DB6C0 !important;
  
  }



  .floating {
    position: fixed !important;
    width: 100% ;
    top:0px;
    margin-top: 0px !important;
    padding: 0px 20px !important;
    box-sizing: border-box;
    z-index: 100;
    /*transition: .5s;*/
  }
  
  .floating.hide {
  
  
    transform: translateY(-100%);
  
  
  }
  
  .main_tittle .main_txt {

    font-size: 3em;
    letter-spacing: 2.5px;
    padding: 0px 15px 35px;

  }   

 .cpoy_img01 figure, 
.slider_area figure {

  position: relative;
}

.cpoy_img01 figcaption,
.slider_area figcaption {

  font-size: 1.2rem;
  text-align: right;
      color: #fff;
    position: absolute;
      bottom: 2px;
    right: 1rem;/*
     text-shadow: 2px 2px 0 #333, -2px -2px 0 #333, -2px 2px 0 #333,
    2px -2px 0 #333, 2px 0 0 #333;
*/
text-shadow: 1px 1px 1px #333;
}


  @media screen and (min-width: 767px) {

  .mod-visual-slider {
    padding-top: 70px!important;
    }

.main_font p {

  font-size: 1.5em;
  /*text-align: justify;*/

    }


  }

  
  @media screen and (max-width: 1429px) {
    body {
    padding-top:0px !important; 
    }
  
    .top-nav > ul > li {
  
      font-size: 1.6em !important;
    }
  
  
 }  

  @media screen and (max-width: 1199px) {
    body {
    padding-top:0px !important; 
    }
  
    .top-nav > ul > li {
  
      font-size: 1.4em !important;
    }
  
  
 }  

 @media screen and (max-width: 1099px) {
  body {
  padding-top:0px !important; 
  }

  .top-nav > ul > li {

    font-size: 1.2em !important;
  }


}  


@media screen and (max-width: 989px) {
  body {
  padding-top:0px !important; 
  }

  .top-nav > ul > li {

    font-size: 1em !important;
  }


}  
 @media screen and (min-width: 768px) {
 

 .slider_area {

  margin-top: 25px;
 }
    .on_sp {
  display:none !important;

    } 

 }


  @media screen and (max-width: 767px) {
    

    
      .on_pc {
      display:none !important;

        }





        body  .page-title h1 {

          margin-top: 60px !important ;
    
        }


        .cr_name p {
      
          position: relative !important;
            text-align: center;
            right: 0 !important;

        }
        
        body .floor_txt p  {
          font-size: 1.4em !important;
        }
        


        
.top-nav > ul > li:last-child::after {


      right: 0px !important;

        }


    .top-nav {


      box-shadow: 0px 15px 10px rgba(0,0,0,0.4);

    }


 .main_tittle .main_txt {

          /**/font-size: 1.4em !important;
            word-break: break-all;
   }



  .spmt35 {

          margin-top: 35px !important;
        }


.sp_pad {

          padding: 10px; 
          box-sizing: border-box;
  }
        

.top-nav > ul > li {

  padding: 15px 5px !important;

}


.top-nav > ul > li > a {

  padding: 0px !important;

}  

.floating {

    padding: 0 !important;


}        

.page-header {

          display: block !important;
          visibility:unset !important;
        
          }



.last_box {

  margin-top: 0px !important;
  margin-bottom: 50px !important;
  
  
  }



.site-top_b {
  width: 68px !important;

}


.main_tittle {

margin-top: 0px !important;
}

.main_tittle h3 {

  font-size: 2.6em !important;
}

/*
.top_head  {
    margin-top: 40px !important;
    padding: 5px 10px 0px;

}
*/


.top-nav  {

padding: 0px 0px 5px !important;
margin-top: 0px !important;


}    



.top-nav > ul {

width: 100% !important;


}


.top-nav > ul > li {

font-size: 1em !important;

        }


.text_hg {

  font-size: 1.4em;
    word-break: break-word;
    padding: 10px;
    box-sizing: border-box;

  }
 
.main_tittle h4 
{

  margin-top: 0px !important;
  padding-bottom: 35px;
}

.main_tittle p {

  font-size: 1.2em !important;
  padding: 0px 5px  !important;
  } 


.bannr01_area { 

  width: 100% !important;

  }


  .cp_r {

margin-bottom: 0px; padding: 50px 0 !important;

  }


}





  /**ud引き離し作業**/

  .page-header {

  display: none !important;
  visibility:hidden;

  }

  @media screen and (min-width: 768px) and (max-width: 989px) {
    

 .mod-frame_inner {

  padding: 0 10px;
  box-sizing: border-box;

 }

/*


    .page-header {
    
          display: block !important;
          visibility:unset !important;
        
          }*/
    }
    


  .toolbar {

  display: none !important;
  visibility:hidden;

  } 

  .content {

  padding-left:0px !important;

  }


  .mod-visual-slider {
    padding-top: 0px!important;
  }

  .page-footer {
  /**/
  display: none !important;
  visibility:hidden;
  }

  .mod-index-col .mod-dl-horizontal.opt-colon > dt, .mod-media-col .mod-dl-horizontal.opt-colon > dt {

  width: 140px;



  }




  body {

  opacity : 0;
  animation-duration: 3s;
  animation-name: slidein2;

  animation-fill-mode:both ;	

  }


  @keyframes slidein2 {

  0% {
  opacity : 0;
  }


  50% {
  opacity : 0;
  }


  80% {
  opacity : 1;
  }

  
  100% {
  opacity : 1;
  }

  

  }

  /*ub*/


  .top-nav {
    padding: 0 20px 5px;
    background-color: #fff;
    margin-top: 15px;
    position: relative;
    z-index: 10;
    font-family: Montserrat;
    letter-spacing: 0.1em; 
  }

  .top-nav > ul {
      display: table;
      max-width: max(70%, 760px);
      margin: 0 auto;
      table-layout: fixed;
      width: calc(100% - 15px);
    }

  .top-nav > ul > li {
      word-wrap: break-word;
      position: relative;
      display: table-cell;
      /*font-size: 1.6em;*/
      font-size: 1.8em;
      font-weight: normal;
      /*line-height: 1.3;*/
      width: 16.66%;
      letter-spacing: 0.05em;
          vertical-align: middle;
    text-align: center;
    line-height: 1.2;
  }

  .top-nav > ul > li > a {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    text-decoration: none;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    /*height: 50px;*/
    padding:5px 0;
    color: #4DB6C0;

    /*
      display: inline-block;
      width: 100%;
      padding: 15px 10px;
      text-align: center;
      color: #000;
      /*color: #231815;*/
      /*vertical-align: middle;
      text-decoration: none;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;*/
  }


  .top-nav > ul > li:first-child:before {
      display: block;
      position: absolute;
      left: 0;
      top: 0%;
      width: 1px;
      height: 100%;
      /* margin-top: -9px;
     
      background: #d8d8d8;*/
      background: #4DB6C0;
      content: "";
  }


  .top-nav  > ul > li:after {
      display: block;
      position: absolute;
      right: -1px;
      top: 0%;
      /*bottom: 15%;*/
      width: 1px;
      /*height: 18px;*/
      height: 100%;/*
      margin-top: -9px;
      background: #d8d8d8;*/
      background: #4DB6C0;
      content: "";
  }


  .top-nav > ul > li:last-child::after {
      display: block;
      position: absolute;
      /*right: 0px !important;*/
      top: 0%;
      width: 1px;
      height: 100%;/*
      margin-top: -9px;
      background: #d8d8d8;*/
      background: #4DB6C0;
      content: "";
  }


  .top-nav > ul > li > a:hover {

    color:darkseagreen;
  }
  .main_tittle {

    text-align: center;
    margin-top: 35px ;
  }

  .main_tittle h3 {

    font-size: 4.5em;
      letter-spacing: 7.5px;
      padding:25px 15px 0px;
      /*font-family: 'NotoSerifCJKjp', serif;*/
    /*font-weight: normal ;*/
line-height: 1.6;
  }

  .main_tittle h4 {

    letter-spacing: 0.75px;
    padding: 15px;
    /*font-family: 'NotoSerifCJKjp', serif;*/
    margin-bottom: 20px;
    margin-top: 20px;
    font-size: 1.8em;
  }

  .main_tittle p {


    padding: 0px 35px 5px;
    font-size: 1.6em;
  line-height: 2.2;

  }

  .bannr01_area {
    width: 90%;
      text-align: center;
      margin: 0 auto;

  }

  .bannr01_area > div {
    
      padding: 5px 0;
      position: relative;
      box-sizing: border-box;
  }

  .bannr01_area > div:last-child {

  margin-bottom: 15px;

  }


  /**font指定**/

/*
  .main_font {
    font-family:sans-serif, serif, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝" !important;
  }

  .main_font {
    font-family:   "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif,"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif  !important;
  }
  .main_font {
    font-family:  "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif  !important;
    color: #4DB6C0;
  }
*/
.modaal-wrapper .modaal-container,
 .main_font {
font-family: 'Noto Sans JP', sans-serif !important;
    color: #4DB6C0;
  }


  .bold_ja{
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 700;
  }
  .bold_en{
    font-family: "アルファベットに指定したいフォントファミリー", sans-serif;
    font-weight: 500;
  }

.monst {
  font-family:'Montserrat' ;

}

/*
  .top_head {

  margin-top: 80px;
  }


  .top_head img {

        width: 632px;
  }
*/
  /**footer**/

  
.return-top > a {

  background: #4DB6C0 !important;
box-shadow: 10px 10px 10px 5px #000;
}


  .mod-contact-block_tel {

    background: #6B7D5C !important;

  }

  section.mod-contact-block, div.mod-contact-block {

    background: #dedede !important;
    font-family: arial, Helvetica, "Hiragino Kaku Gothic ProN", "Meiryo", "MS PGothic", sans-serif;


  }


  .mod-contact-block_inquiry > a {

  background: #8BA365 !important;

  }


  .mod-contact-block_inquiry > a:hover {

    background: #59869c !important;  

  }

  .site-id {
      width: 230px;
      padding: 28px 15px;
      text-align: center;
      vertical-align: middle;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      margin: 0 auto;
      position: relative;
      overflow: hidden;
  }


  .text_hg {

    text-align: center;
      letter-spacing: 1px;
      color: #000;


  }

.cp_r {

  height: 100%; 
  border-top: 1px solid #d8d8d8!important;
  background-color: #ecf1f4;    
  margin-bottom: 0px; padding: 25px 0 !important;

}


#op_bg {
    width: 230%;
    height: 41px;
    position: absolute;
    background: -webkit-gradient(linear, 0% 50%, 100% 50%, from(transparent), color-stop(0.25, rgb(255, 255, 255)), color-stop(0.5, rgb(255, 255, 255)), color-stop(0.75, rgb(255, 255, 255)), to(transparent));
    background: -moz-linear-gradient(center left, transparent, #fff 25%, #fff 50%, #fff 75%, transparent);
    /* background: linear-gradient(to right, transparent, #fff, #fff, #fff, transparent); */
    background: linear-gradient(to right, rgba(255,255,255,0), #fff, #fff, #fff, rgba(255,255,255,0));
    top: 0;
    bottom: 0;
    margin: auto;
    transform: translateX(-449px);
    /* left: -500px; */
    /* opacity: 0; */
    z-index: 1;
}



.bg_slide3 {
    animation-duration: 3s;
    animation-name: anime_left3;
    animation-fill-mode: forwards;
    transform: rotate(0.0001deg);
}



@keyframes anime_left3 {
0% {opacity:1; 
    transform: translateX(-449px) rotate(0.1deg); }
45% {opacity:1; 
    transform: translateX(-449px) rotate(0.1deg); }
100% {opacity:1;
	 transform: translateX(930px) rotate(0.1deg);
 	}
}


@keyframes anime_left4 {
0% {opacity:1; 
    }
45% {opacity:0; 
    }
100% {opacity:1;	}
}

  /**footer**/



  /**TOPへ**/

.site_top {

    position: relative;
  display: block;
  }
  
  .site-top_b {
    width: auto;
      position: absolute;
      top: 0;
      right: 0;
  z-index: 1;
  }
  
  


  .site-top_b > .sns {

    position: relative;
    display: flex;
    justify-content: flex-end;
  }
  
  
  .sns_inner {
    width: 45px;
    padding: 15px 10px;
  
  }
  
  .sns_inner:hover {
  
    opacity: 0.5;
  }


  
  /**TOPへ**/

  .u_txt {

    font-size: 1.5em;
  }


.table_title {
    display: inline-block;
    margin-left: 0px;
    margin-right: 5px;
    font-size: 1em;

}

.fl_sp {

  display: -webkit-box;
  
  display: -ms-flexbox;
  
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  
        font-size: 1.2em;
  }



  .last_box {

    margin-top: 35px;
    margin-bottom: 100px;
    
    
    }
    



    .mod-visual-slider_list > li .mod-visual-slider_caption {

background: none !important;

    }



    @media screen and (max-width: 320px) {
      .main_font, 
      .hakata_top_rw {
  
        font-size: 0.8rem !important;
      }
     
      
    .top-nav > ul {
  
      table-layout: auto !important;
  
      }
  
      .top-nav > ul > li {
  
        padding: 15px 0px !important;
        width: auto !important;
  
      }
  
    }    

/**クレジット**/
    .cr_name {
  
      position: relative;
      color:#4DB6C0 ;
      font-family: Montserrat;
      font-weight: bold;
    }
    
    .cr_name p {
      
      position: absolute;
      right: 15px;
      bottom: 15px;
    }
    



body  .page-title h1 {

      margin-top: 85px ;

    }

    body .floor_txt p {
      font-size: 3em;
      text-align: center;
      color: #040000;
    }



 .harow_top_b img {

  max-width: 696px;
  width: 100%;
 }



 /*top*/



 



.ovf {

  overflow: hidden;  
}

.business_list {
overflow: hidden;
width: 930px;
max-width: 100%;
margin: 120px auto ;
-webkit-box-sizing: border-box;
box-sizing: border-box;
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.business_list > li {
overflow: hidden;
position: relative;
/*float: left;*/
width: 33.3%;
margin-top: 30px;
text-shadow: 0 0 4px rgba(0, 0, 0, 0.4);
-webkit-box-sizing: border-box;
box-sizing: border-box;
}

.business_list > li .business_list_img img {
width: 100%;
max-height: 100%;
}

.business_list > li a {
display: block;
position: relative;
max-width: 100%;
max-height: 100%;
}
.business_list > li:nth-child(-n+3) {
margin-top: 0;
}
.business_list > li:nth-child(3n+1) {
clear: left;
width: 33.4%;
padding-right: 20px;
}
.business_list > li:nth-child(3n+2) {
padding: 0 10px;
}
.business_list > li:nth-child(3n+3) {
padding-left: 20px;
}

.business_list > li .business_list_img img {
width: 100%;
max-height: 100%;
}

.business_list > li.is-current a figure::after {

   content: '';
    background-color: #000;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
opacity: 0.5;

}




@media screen and (max-width: 767px) {

  body .modaal-video-wrap {


    margin: 0 auto !important;
  }

.mod-contact-block_tel {

  height: 131px !important;
}
    .mod-contact-block_inquiry > a, .mod-contact-block_tel + .mod-contact-block_inquiry > a {
height: auto !important;
    }

.business_list {

  margin: 0 auto  !important;

}





.business_list > li {
  width: 50%;
  margin-top: 15px;
}
.business_list > li:nth-child(-n+3) {
  margin-top: 15px;
}
.business_list > li:nth-child(-n+2) {
  margin-top: 0;
}
.business_list > li:nth-child(3n+1) {
  clear: none;
  width: 50%;
  padding: 0;
}
.business_list > li:nth-child(3n+2) {
  clear: none;
  width: 50%;
  padding: 0;
}
.business_list > li:nth-child(3n+3) {
  clear: none;
  width: 50%;
  padding: 0;
}
.business_list > li:nth-child(odd) {
  clear: left;
  padding-right: 5px;
}
.business_list > li:nth-child(even) {
  padding-left: 5px;
}

.last_box {

margin-top: 35px !important;/*
margin-left: 1% !important;*/
 }
}












#content .anim_fade {
    opacity: 0;
    -webkit-transition: all 1s;
    transition: all 1s;
}





.return-top {

  display: none;

}


body .anim_fade .caption {

  left: auto;
  right: 5px;
}


body .caption {

font-size: 10px;
  letter-spacing: 0;
  color: #fff;
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5), -1px 1px 3px rgba(0, 0, 0, 0.5), 1px -1px 3px rgba(0, 0, 0, 0.5), -1px -1px 3px rgba(0, 0, 0, 0.5);
  position: absolute;
  bottom: 5px;
  left: 5px;

}


.business_list_img figcaption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-decoration: none;
    color: #fff;
    font-weight: bold;
    font-size: clamp(1.8rem, 0.737rem + 2.22vw, 2.4rem);
    letter-spacing: 0.05em;
    text-align: center;
    line-height: 1.2;
}

.business_list a {

  transition: all .3s;

}

.business_list a:hover {

 transition: all .3s;
  opacity: 0.8;
}
.business_list a:hover img {


filter: brightness(0) saturate(100%) invert(82%) sepia(71%) saturate(1453%) hue-rotate(152deg) brightness(80%) contrast(85%);
  
}




.story_h2  {


  margin-top: 100px;

}

.story_h2  img {


  width: 100%;
  max-width: 680px;

}


.main_fl_kv01 {
  display: flex;
  margin-top: 50px;
  flex-wrap: wrap;
  row-gap: 25px;
}

.main_fl_kv01 p {

  color: #000;
    font-size: clamp(1.5rem, 0.969rem + 1.11vw, 1.8rem);
    font-feature-settings: "palt";
    font-weight: normal;
    letter-spacing: 0.15rem;
    line-height: 1.9;

    font-family:   "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif,"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif  ;
    word-break: auto-phrase;
}

.main_fl_kv01 div {

  flex: 1.1;
}
.main_fl_kv01 figure {

  flex: 1;
}
body 
section  {

  margin-top: 0;
}

.move {
  margin-bottom: 120px;
}

.move img:hover {

  opacity: 0.5 ;
  transition: all .55s;
}


.move a {

  position: relative;
}

.video_ic01 {
    width: 100%;
    max-width: 150px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
 width: max(25%, 75px);
    

}

@media screen and (max-width: 989px) {

.mod-frame .mod-frame_inner {


  padding:0  20px ;

  box-sizing: border-box;
}


}



  @media screen and (max-width: 767px) {

    body  .move {
    margin-top: 60px;
  margin-bottom: 60px;
}
 

body .story_h2 {

  margin-top: 50px;
}
body .main_fl_kv01 {

  margin-top: 25px;
  flex-direction: column-reverse;
}

 body .main_fl_kv01 div {
  flex:auto;
 }   
body .main_fl_kv01 figure {

  flex: auto;

  text-align: center;
}


  }


  /*//top*/



  /*about*/


  


.about_a01 {

  background-color: #4db6c0;
}

.about_a02 {

  background-color: #e8b512;
}

.about_a02 h2 {
color: #fff ;

}
#about_main01 
.page-title h1:after {

  background-color: #fff !important;
}
#about_main01 
.page-title h1, #about_main01 h2{

  color: #fff !important;

  margin: 25px 0;
}

[class^="shop_"] h2,
[class^="about_"]
 h2 {
font-size: 3rem;

 }

small {
  font-size: 70%;

}

.sub {


  font-size: clamp(1.5rem, 0.969rem + 1.11vw, 1.8rem);
  display: block;
}

h2 small {
  display: block;
}


#harow_shop01  
.main_txt h2,
#harow_about01  
.main_txt h2 {

  letter-spacing: 0.2rem;
}
#harow_shop01 
.main_txt,
#harow_about01 
.main_txt {

  text-align: center;
  margin: 50px 0;
}


.about_txt {

  margin: 35px 0 50px;
}


.about_txt p {


font-size: clamp(1.5rem, 0.969rem + 1.11vw, 1.8rem);
    text-align: justify;
    line-height: 2.1;
    word-break: auto-phrase;
}


.coment li {

        position: relative;
        display: flex;
        font-size: 1.4rem;
        

    }

    .coment li::before {

        content: '※';


    }

#about_main05 figure,
#about_main04_02 figure,
#about_main04 figure,
#about_main03 figure,
    #about_main02 figure {
  
  margin: 50px 0;
}

.figure_warp figure {

  position: relative;
}

.figure_warp {

  margin: 0 auto;
  max-width: 1040px;

  padding: 0 15px;
  box-sizing: border-box;
}
.about02_02 li,
.about02_02 p {

  color: #e8b512;
}

.fl_b_a01 {

display: flex;
    width: min(90%, 829px);
    margin-top: 50px;


}

.fl_b_r01 {

display: flex;
    width: min(90%, 829px);
    margin-left: auto;    

}
#harow_shop01 
#footer_lsit_detal,
#harow_about01 
#footer_lsit_detal {

      background: #fff;
    margin-top: -150px;
    padding-top: 150px;
}


@media screen and (max-width:767px) {
#harow_access01 #footer_lsit_detal,
#harow_shop01 #footer_lsit_detal,
#harow_about01 #footer_lsit_detal {


margin-top: -15vw;
    padding-top: 25vw;
    margin-bottom: 50px;
}



}




  /*//about*/


  /*shop*/



.svg_area {

  margin: 0 auto;
  width: calc(100% - 15px);

  max-width: 1040px;
}

.svg_area svg {

width: 100%;
}

.svg_area svg a:hover {

  opacity: .55;

}

.modal_area li {

  display: none;
}
.fl_modal_area {

  display: flex;
  gap: 15px 25px;
  align-items: center;

}
.fl_modal_area:has(.soon)  {

  align-items: normal;

}

 .fl_modal_area div, .fl_modal_area figure {

  flex: 1;

}

.fl_modal_area h2 {
color:   #09A49F !important;

font-size: 1.8rem;

}

.shop_t01 {
line-height: 1.4;

}
.shop_t01 .sub {

color:   #09A49F;
  font-size: 1.3rem;
  margin-left: 1rem;
}

.fl_modal_area h3{
  position: relative;
  padding-left: 0.7rem;
  
font-size: 1.7rem;
margin-top: -5px;
}
.fl_modal_area h3::before {
  position: absolute;
  content: '【';
left: -1rem;
}

.fl_modal_area h3::after {
  content: '】';
}


.fl_modal_area h3 span { 

  font-weight: normal;
}

.fl_modal_area h4 {
display: inline-flex;
margin-top: 2px;
font-size: 1.5rem;

}
.fl_modal_area h4::before {

  content: '・';
}

.fl_modal_area p {
  margin-top: 0;
}

.modal_area_logo {

  width: min(50%, 180px);
}

.fl_modal_area a {

  display: block;
}

.fl_modal_area a:hover {

  opacity: .55;

}

.fl_modal_area .sns {

  display: block;
  margin-top: 10px;
}
.fl_modal_area .sns span {
  position: relative;
  font-weight: bold;
  text-decoration: none;
  color:   #09A49F ;
font-size: clamp(1.4rem, 0.691rem + 1.48vw, 1.8rem);
display: inline-flex;
gap: 0 5px;
border: 1px solid;
    border-radius: 5px;
    padding: 0 5px;
    margin-top: 5px;
}


.fl_modal_area .sns span::after {
transition: all .3s;
  content: '＞';
}
.fl_modal_area a:hover span::after {

  margin-left: 5px;
}

.soon {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2rem;
color: #4DB6C0;
}

.fl_modal_area figure:has(.soon) {

  display: flex;
  justify-content: center;
  align-items: center;
      border: 1px solid #4DB6C0;
}


body #harow_shop01 section {


  border-top: 0 !important;
}

.shop_lsit01 {


  margin: 50px 0;
}






.shop_lsit01 ul {

  display: flex;
  gap: 25px;
  flex-wrap: wrap;

}

.shop_lsit01 li {

  flex: 0 0 calc((100% - 80px) / 4);
}

.shop_lsit01 li figure {

  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}


.shop_lsit01 li figcaption {
    position: absolute;
    top: 2px;
    left: 2px;
    background-color: #fff;
    padding: 0 5px;
    border-radius: 3px;
    width: 65px;
    text-align: center;


}

.file_img_inner img,
.file_img_inner {

  height: 100%;
  width: 100%;
  object-fit: cover;
  overflow: hidden;

}

.yellow 
.file_img_inner:has(.soon) {

border: 1px solid #e8b512 ;
}

.file_img_inner:has(.soon) {

      background: aliceblue;
    display: flex;
    align-items: center;
    justify-content: center;
        border: 1px solid #4DB6C0;
        overflow: hidden;
        box-sizing: border-box;
}

.shop_t02 {

  line-height: 1.4;
  text-decoration: none;
  margin-top: 10px;
  display: grid;
  grid-template-rows: 20px 1fr;
}

.shop_t02 span {
  text-decoration: none;
  color: #4DB6C0;
  font-size: 1.2rem;
}

.shop_lsit01 li a {
  text-decoration: none;
}
.shop_lsit01 ul 
a:hover .soon, 
.shop_lsit01 ul 
a:hover img {
    filter: brightness(0.5);
    transition: all .3s;
    transform: scale(1.1);
}
a:hover 
.file_img_inner:has(.soon) {

  transform: scale(1.1);
    filter: brightness(0.5);
    transition: all .3s;
}
.tb_soon {
  aspect-ratio: 3 / 2;
}

.h2_y {

  color: #e8b512;
}
.h2_y h2.stairs {

  font-size: 1.8rem;
}
.mt-25 {

  margin-top: -25px !important;
}
[class^="s"].fl_modal_area h2 ,.yellow h2 ,.yellow h3, .yellow h4,.yellow .shop_t01 .sub,.fl_modal_area.nav.yellow .sns span, .yellow .soon, .yellow, .shop_lsit01.yellow li figcaption ,.yellow .shop_t02 span{
  color: #e8b512 !important;
}

html:has(.modaal-noscroll) {
  overflow: hidden;
}
.fl_modal_area.nav.yellow figure:has(.soon) {

border: 1px solid #e8b512;
}



/*アコーディオン*/
              
              
@media screen and (min-width: 899px) {
.nav-open {

  display: none;
}

.fl_modal_area {

  display: flex !important;



}

.on_svg_tb {
  display: none !important;
}

.modal_area {

  display: none;
}

.fl_modal_area figure img:nth-child(1)  {

  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.fl_modal_area div figure img:nth-child(1)  {

aspect-ratio:initial;
}

 }

@media screen and (max-width: 898px) {

body .modal_area ul li:last-child  .fl_modal_area{


  padding-bottom: 25px;
        border-bottom: 1px solid;
}


.nav-open span {
margin-left: 1rem;
overflow: hidden;
white-space: nowrap;
 text-overflow: ellipsis; 
    -webkit-text-overflow: ellipsis; 
       -o-text-overflow: ellipsis; 
  display: block;
  width: 80%;
}

  body .modaal-wrapper, body .modaal-overlay {
        /*display: none;*/
        visibility: inherit;
      
      }



.on_svg {

  display: none !important;
}

 .fl_modal_area figure {

  text-align: center;
 }
body             
.modal_area li {

  display: block;
}

.modal_area_logo {

  margin-top: 15px;
}

.acmenu {

  margin-top: 25px;
}
            .acmenu .nav {
    
    
                display: none;
                margin: 15px 0;
            }
    
            
            .nav-open {
        padding: 15px;
        color: #fff;
        font-size: 1.4rem;
        background: #2073c8;
        position: relative;
        cursor: pointer;
        margin: 1px auto;
        display: flex;
        white-space: nowrap;
    }
    .nav-open::before{/* 閉じている時 */
        content: "＋";
        position: absolute;
        right: 20px;
    }
    .nav-open.active::before{/* 開いている時 */
        content: "－";
    }
            

    }
            
            
 .fl_modal_area p {

  font-size: 1.5rem;
  color: #000 !important;
  
  font-feature-settings: "palt";
 }
            



small.schedule {margin-left: 5px;}


  /*//shop*/


  
  /*access*/


  




  @media screen and (max-width:989px) {

    body .map iframe {

      height: 480px;
    }

  }

  @media screen and (max-width:767px) {

body .map {

  margin-top: 65px;
  margin-bottom: 0px;
}
   body .map_box {

    width: auto;
    padding-left: 70px;
    }


    body .list01 li span:nth-child(1) {

width: auto;

}

    body .list01 li span:nth-child(2) {

      width: auto;

    }


 body .map_box ul li span {
      font-size: 1em;
    }

    body  .list02 li span {

      width: auto;
      white-space: nowrap;
    }

    body .list02 li span:nth-child(2) {
      width: auto;

    }
    body  .list02 li span:last-child {

      /*padding-left: 1em;*/
    width: auto;
    }

    body .list03 li span:nth-child(1) {

      width: auto;

    }
    .list03 li span:last-child {

      width: auto;
    }


    .spmt35 {

  margin-top: 35px !important;
  }


  .last_box {
    margin-top: 35px !important;  

    padding-bottom:0px !important;

  }


  #map {

  height: 280px !important;
  margin-top: 70px !important;
  }  


  .pd_last {

  padding-bottom:10px !important;

  }

  }


.subway h3 {
    font-size: 2em;

}
.subway_in01 img {
    width: 45px;
    position: absolute;
    top: -7px;
    left: -55px;
}
.box_inner {
    display: table;
    margin: 0 auto;
} 
  .map_box {

    width: 400px;
  margin: 0 auto;
  padding-top: 50px;
  padding-left:60px ;
  }

  
  .subway h3 {

      font-size: 2em;
      color: #09A49F;
  }

  .map_box li {

    position: relative;
  }
  .map_box li::before {

      content: "●";
      color: #09A49F;
      position: absolute;
    left: -1.5em;
    top:1px ;
  }
  .map_box  ul li {


display: flex;
gap: 0 15px;
margin-left: 1.5em;
table-layout: auto;
flex-wrap: wrap;

}
  .map_box  ul li span {

display: table-cell;
    font-size: 1.2em;

    color: #09A49F;
    box-sizing: border-box;
  }



    .list01 li span {

   padding-right: 0em; 
  }
  .list01 li span:nth-child(1) {
  
      width: auto;
  }


  .list01 li span:nth-child(2) {
  
  width: auto;
}


.list01 li span:nth-child(3) {
  
  width: auto;
}


  .list02 li span {
width: auto;/*
padding-right: 1em;
    */
  }



  .list02 li span:nth-child(2) {

width: auto;

  }



  .list03 li span {
    width: auto;
    
  }


  .list03 li span:nth-child(1) {

width: auto;

  }





  .subway {
    position: relative;


  }

  .subway_in01 img {
    width: 45px;
    position: absolute;
    top: -7px;
    left: -55px;
  }


  .subway_in02 img {
    width: 35px;
    position: absolute;
    top: -7px;
    left: -52px;
  }




section.map_wrap .map_wrap_inner {

  margin-bottom: 50px ;

}
  .pd_last {
  padding-bottom: 100px !important;

  }

.map_box02 {

  margin-top: 50px;
}

.map_box02 p {

  font-size: 1.8rem;
  margin-bottom: 25px;
  text-align: center;
  line-height: 1.4;
}

.map {

  margin: 100px 0;
}


section.map_wrap  {

      display: flex;
      justify-content: center;
    }


  /*//access*/

  /*info*/


  




.scroll_news table.bort05 {
    width: 915px;
    margin: 0 auto;
    font-size: 1.4rem;
}


.scroll_news table.bort05 tr {
    border-top: 1px solid;
    border-right: 1px solid;
    border-left: 1px solid;
}
.scroll_news table.bort05 th {

	width: 100px;
}

.scroll_news table.bort05 td, .scroll_news table.bort05 th {
    border-left: 1px solid;
    padding: 1%;
    font-weight: normal;
    vertical-align: middle;
  
}

table.bort05 tbody th {
  font-size: 1.6rem;
text-align-last:justify ;
}
table.bort05 thead th {

  line-height: 1.1;

}


.scroll_news table.bort05 tr:nth-child(n + 3 ) th {
    text-align-last: justify;
}

.scroll_news table.bort05 td {
    /*width: 365px;*/
    width: auto;
    text-align: justify;
    font-size: 1.6rem !important;
	
}

.scroll_news table.bort05 tr:last-child {
    border-bottom: 1px solid;
}


body .scroll_news table{
	overflow-x: scroll;
    }
    .scroll_news{
    overflow: auto;/*tableをスクロールさせる*/
    white-space: nowrap;/*tableのセル内にある文字の折り返しを禁止*/
	padding-bottom: 15px;
    }
    .scroll_news::-webkit-scrollbar{/*tableにスクロールバーを追加*/
    height: 8px;
    }
    .scroll_news::-webkit-scrollbar-track{/*tableにスクロールバーを追加*/
    background: #F1F1F1;
    }
    .scroll_news::-webkit-scrollbar-thumb {/*tableにスクロールバーを追加*/
    background: #195cbf;
	}

.slash {
    background-image: linear-gradient(to right top, transparent calc(50% - 0.5px), #4DB6C0 50%, #4DB6C0 calc(50% + 0.5px), transparent calc(50% + 1px));
}


table.bort05 {

  text-shadow: 0 0 #333;
}


  /*//info*/



 #shop02 a rect {

  transition: all.3s;
 }
 #shop02 a rect:hover {
  fill:#ccc;
fill-opacity: .5;
 }

 

 #shop02 .cls-1,#shop02 .cls-2,#shop02 .cls-3,#shop02 .cls-4,#shop02 .cls-5,#shop02 .cls-6,#shop02 .cls-7,#shop02 .cls-8,#shop02 .cls-9,#shop02 .cls-10,#shop02 .cls-11,#shop02 .cls-12,#shop02 .cls-13,#shop02 .cls-14{stroke-miterlimit:10;}
  #shop02 .cls-1,#shop02 .cls-4,#shop02 .cls-5{stroke:#a38a77;}
  #shop02 .cls-1,#shop02 .cls-4,#shop02 .cls-5,#shop02 .cls-15,#shop02 .cls-16,#shop02 .cls-8,#shop02 .cls-9,#shop02 .cls-10,#shop02 .cls-12,#shop02 .cls-13,#shop02 .cls-17{fill:none;}
  #shop02 .cls-2{stroke:#c4b898;}
  #shop02 .cls-2,#shop02 .cls-18,#shop02 .cls-6{fill:#fff;}
  #shop02 .cls-3,#shop02 .cls-6,#shop02 .cls-7,#shop02 .cls-8,#shop02 .cls-9,#shop02 .cls-10,#shop02 .cls-11,#shop02 .cls-12,#shop02 .cls-13,#shop02 .cls-14{stroke:#c8bb9b;}
  #shop02 .cls-3,#shop02 .cls-8{stroke-width:2px;}
  #shop02 .cls-3,#shop02 .cls-19,#shop02 .cls-11{fill:#f6f8e3;}
  #shop02 .cls-20{fill:#f9b900;}
  #shop02 .cls-21{fill:#a38a77;}
  #shop02 .cls-4{stroke-linecap:square;}
  #shop02 .cls-4,#shop02 .cls-5{stroke-width:4px;}
  #shop02 .cls-16,#shop02 .cls-11,#shop02 .cls-12{stroke-width:3px;}
  #shop02 .cls-16,#shop02 .cls-17{stroke:#fff;stroke-linecap:round;stroke-linejoin:round;}
  #shop02 .cls-22{clip-path:url(#clippath-1);}
  #shop02 .cls-7,#shop02 .cls-10,#shop02 .cls-13{stroke-width:.5px;}
  #shop02 .cls-7,#shop02 .cls-14{fill:#f7f7f7;}
  #shop02 .cls-23{clip-path:url(#clippath-3);}
  #shop02 .cls-24{fill:#c8bb9b;}
  #shop02 .cls-13{stroke-dasharray:6.09 6.09;}
  #shop02 .cls-25{clip-path:url(#clippath-2);}
  #shop02 .cls-17{stroke-width:11px;}
  #shop02 .cls-26{clip-path:url(#clippath);}



  /*tococo*/


  

section.appli .fl_b{

    display: flex;

}
section.appli 
.info_title h2 {
    font-size: 3.2rem;
    letter-spacing: 0.1em;
    text-align: center;
    font-family: Futura, "Century Gothic", sans-serif;
    color: #005bab;
    font-weight: bold;
}

section.appli, .top_info {
    background: #EFF7FB;
    margin: 0 auto;
    padding: 78px 0;
    color: #00417a;
    margin-bottom: 100px;
}
section.appli 
.info_title {
    margin: 0 auto;
}


section.appli .main_txt {
    margin-top: 0;
    font-size: 2.3rem;
    text-align: center;
    color: #00417a;
}
section.appli 
.button_link02 {
    flex: 0 0 50%;
    width: 100%;
    margin: 0 auto;
    padding: 0 5px;
    box-sizing: border-box;
}
section.appli 
.button_link02 a {
    display: flex;
    width: auto;
    height: auto;
    font-size: clamp(1.2rem, 0.669rem + 1.11vw, 1.5rem);
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    outline: none;
    padding: 20px 60px;
    border-radius: 100px;
    align-items: center;
    justify-content: flex-start;
    border: 1px solid #3074df;
    color: #3074df;
    transition: all .5s;
    box-sizing: border-box;
    background: #fff;
    position: relative;
    gap: 15px;
    line-height: 1.7;
}

section.appli 
.button_link02 a figure {
    flex: 0 1 20%;
    margin-right: 5px;
    border: 1px solid rgba(39, 167, 241, 0.12);
    border-radius: 15px;
}

section.appli 
.button_link_text02,section.appli .button_link_text {
    letter-spacing: 0.06em;
    position: relative;
}

section.appli 
.dl_01 {
    margin-top: 30px;
    text-align: center;
}
section.appli .mod-frame_inner {
    background: #fff;
    padding: 44px 0;
}

section.appli  
.button_link02 a:hover::after {
    bottom: -5px;
    transition: all .3s;
}
section.appli  
.button_link02 a::after {
    content: url(/sendai_img/arrow01.svg);
    position: absolute;
    vertical-align: middle;
    top: auto;
    bottom: 0;
    transform: rotate(90deg);
    left: 50%;
    transition: all .3s;
}

section.appli 
.button_link02 a:hover,section.appli .button_link01 a:hover {
    background-color: #3074df;
    color: #fff;
}


@media screen and (max-width: 899px) {
    body .appli .fl_b {
        display: block;
    }

        body .appli .button_link02 a {
        text-align: justify;
        padding: 15px 45px;
    }
        body section.appli .mod-frame_inner {
        width: 90% !important;

    }
    body section.appli .dl_01 {
        display: none;
    }

        body section.appli .button_link02 {
        margin-bottom: 25px;
    }
        body section.appli, body .top_info {
        padding: 36px 0;
                margin-top: 25px !important;
    }

}

