@charset "UTF-8";
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Hiragino Kaku Gothic Pro", Osaka, "MS P Gothic", sans-serif;
  list-style: none; }

body {
  position: relative; 
}
  @media screen and (max-width: 767px) {
    body {
	position: relative;
	top:70px;
  	border-top: none;
} 
	  
	  }


header {
  width: 100%;
  height: 70px;
  margin: 0 auto;
  padding: 15px 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
   }
  
	
  header h1#logo {flot:left;padding-left: 35px;padding-top: 10px;}
		
    header h1#logo img {
      width: auto;
      height: auto; }
		
	header .time{float: right;padding-right: 15px;}  
	header .time p{float: left;text-align: 16px;font-weight: bold;color: #555;padding-top: 8px;}  
	header .time .tel{float: right;padding-left: 15px;}  
#headnav{background: rgba(34,34,34,06);height: 70px;padding: 0px 20px;}
#headnav .subtitle{float: left;padding-top: 12px;font-size: 22px;color: white;font-weight: bold;letter-spacing: 0.08rem;}

  ul#GNAV {
  padding-top: 18px;
    width: 70%;
	text-align: right;
			}
			
    ul#GNAV li {
	display: inline;
	line-height: 1;
      font-size: 16px; 
		text-align: center;
	 		margin: 0px 5px;
}
    ul#GNAV li:last-child {background: none;}
	  
      ul#GNAV li a {
	  display: inline-block;
	  text-align: center;
		line-height: 1;
        color: #fff;
 	 		padding: 0px 10px;
}
			
		  
        ul#GNAV li a.active {
		  text-decoration: none;
		  padding-bottom: 1px;
		  border-bottom:3px solid #ea1818;
          color: #ea1818; }
		  
        ul#GNAV li a:hover {
		  border-bottom:3px solid #ea1818;
          color: #ea1818; 
		  padding-bottom: 1px;
}
		  		  
		
		
  @media screen and (max-width: 1024px) {
  header h1#logo {flot:left;padding-left: 25px;padding-top: 10px;}
  header h1#logo img {
      width: 350px;
      height: auto; }
#headnav .subtitle{float: left;padding-top: 15px;font-size: 18px;color: white;font-weight: bold;letter-spacing: 0.08rem;}
		


    ul#GNAV li {
      font-size: 14px; }
	  

}


  @media screen and (max-width: 991px) {
    ul#GNAV li {
      font-size: 14px; }
    header .time p{float: left;font-size: 14px;font-weight: bold;color: #555;padding-top: 8px;}
	  }


    @media screen and (max-width: 900px) {
      header h1#logo {float:left;padding-left: 15px;padding-top: 12px;}
  header h1#logo img {
      width: 250px;
      height: auto; }
#headnav .subtitle{float: left;padding-top: 15px;font-size: 16px;color: white;font-weight: bold;letter-spacing: 0.08rem;}
	header .time{float: right;padding-right: 15px;}  
	header .time p{float: left;font-size: 14px;font-weight: bold;color: #555;padding-top: 8px;}  
	header .time .tel{float: right;padding-left: 8px;}  
	header .time .tel img{width: 130px;height: auto;}  

  ul#GNAV {
  padding-top: 18px;
    width: 70%;
	text-align: right;
      }
    }



	  
  /* @media screen and (max-width: 834px) {
 header h1#logo {flot:left;padding-left: 15px;padding-top: 12px;}
  header h1#logo img {
      width: 250px;
      height: auto; }
#headnav .subtitle{float: left;padding-top: 15px;font-size: 16px;color: white;font-weight: bold;letter-spacing: 0.08rem;}
	header .time{float: right;padding-right: 15px;}  
	header .time p{float: left;font-size: 14px;font-weight: bold;color: #555;padding-top: 8px;}  
	header .time .tel{float: right;padding-left: 8px;}  
	header .time .tel img{width: 130px;height: auto;}  

  ul#GNAV {
  padding-top: 18px;
    width: 70%;
	text-align: right; 
			}
		  
		  }*/
		  
  @media screen and (max-width: 800px) {
  header h1#logo {flot:left;padding-left: 15px;padding-top: 12px;}
  header h1#logo img {
      width: 250px;
      height: auto; }
#headnav .subtitle{float: left;padding-top: 18px;font-size: 15px;color: white;font-weight: bold;letter-spacing: 0.08rem;}
	header .time{float: right;padding-right: 15px;}  
	header .time p{float: left;font-size: 14px;font-weight: bold;color: #555;padding-top: 8px;}  
	header .time .tel{float: right;padding-left: 5px;}  
	/* header .time .tel img{width: 130px;height: auto;}   */
  header .time .tel img{width: 130px;height: auto;}

  ul#GNAV {
  padding-top: 18px;
    width: 70%;
	text-align: right;
			}
		  
		  }
  @media screen and (max-width: 767px) {
header{display: none;}
#headnav{width: 100%; background: url("../images/bg-head.png"),rgba(255,255,255,06);background-position: left top;background-repeat: no-repeat; padding: 0px 0px; position: fixed;
      top: 0;
      height:70px;
	  border-bottom: 1px solid #eee;}
	  
#headnav h1#logo-xs {flot:left;padding-left: 25px; padding-top: 20px;padding-bottom: 10px;}
		
    #headnav h1#logo-xs img {
      width: 150px;
      height: auto; }

ul#GNAV {
        width: 100%;
        height: auto;
        opacity: 0;
		display: none;
        transition: .2s; 
		padding: 0px 0px 0px 0px;
		  padding-top: 0px;
		  border-top: 1px solid #ddd;

		}
		

        ul#GNAV.active {
          -webkit-transform: scale(1, 1);
                  transform: scale(1, 1);
          opacity: 1;
		  display: block;
          pointer-events: auto;
		 background: #000; }
		  
        ul#GNAV li {
          width: 100%;
          max-width: 100%;
          height: auto;
		  font-weight: bold;
		  margin: 0px;
          -webkit-transform: scale(1, 1);
                  transform: scale(1, 1);}
        ul#GNAV li:first-child {border-top: 1px solid #a2a2a2; }
          ul#GNAV li a{
		    display: block;
            -ms-flex-wrap: nowrap;
                flex-wrap: nowrap;
            -webkit-box-pack: justify;
                -ms-flex-pack: justify;
                    justify-content: space-between;
            width: 100%;
            font-size: 16px;
            padding: 15px 0px;
			letter-spacing: 0.1em;
			font-weight: normal;
			color:#fff;
				  border-bottom: 1px solid #666;
			}
          ul#GNAV li a:hover{
		    display: block;
            -ms-flex-wrap: nowrap;
                flex-wrap: nowrap;
            -webkit-box-pack: justify;
                -ms-flex-pack: justify;
                    justify-content: space-between;
            width: 100%;
            font-size: 16px;
            padding: 15px 0px;
			letter-spacing: 0.1em;
			font-weight: normal;
			color:#fff;
				  border-bottom: 1px solid #666;
			}
          ul#GNAV li a.active{
		    display: block;
            -ms-flex-wrap: nowrap;
                flex-wrap: nowrap;
            -webkit-box-pack: justify;
                -ms-flex-pack: justify;
                    justify-content: space-between;
            width: 100%;
            font-size: 16px;
            padding: 15px 0px;
			letter-spacing: 0.1em;
			font-weight: normal;
			color:#fff;
			}
			
		  
        ul#GNAV li a:hover, ul#GNAV li a.active {
          color: white;background: #ea1818;margin-bottom: 0px;border-bottom: none;}
		  
.head-tel{position: absolute;right: 50px;top:12px;}
					}
		  
					
  @media screen and (max-width: 375px) {
	  }
	  
	  
  #headnav .bMenu {
    position: fixed;
    right: 10px;
    top: 22px;
    z-index: 15000;
    display: none; }
	
    @media screen and (max-width: 767px) {
      #headnav .bMenu {
        display: block; } 
		}
		
    #headnav .bMenu .menu-trigger,
    #headnav .bMenu .menu-trigger span {
      display: inline-block;
      -webkit-transition: all .3s;
      transition: all .3s;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
			  
    #headnav .bMenu .menu-trigger {
      position: relative;
      width: 30px;
      height: 19px; }
	  
    #headnav .bMenu .menu-trigger span {
      position: absolute;
      left: 0;
      width: 80%;
      height: 3px;
      background-color: #544444;
      /*	border-radius: 4px;*/ }
	  
    #headnav .bMenu .menu-trigger span:nth-of-type(1) {
      top: 0; }
    #headnav .bMenu .menu-trigger span:nth-of-type(2) {
      top: 8px; }
    #headnav .bMenu .menu-trigger span:nth-of-type(3) {
      bottom: 0px; }
	  
    #headnav .bMenu .menu-trigger.active span:nth-of-type(1) {
      -webkit-transform: translateY(6px) rotate(45deg);
              transform: translateY(6px) rotate(45deg); }
			  
    #headnav .bMenu .menu-trigger.active span:nth-of-type(2) {
      opacity: 0; }
	  
    #headnav .bMenu .menu-trigger.active span:nth-of-type(3) {
      -webkit-transform: translateY(-10px) rotate(-45deg);
              transform: translateY(-10px) rotate(-45deg); }


#header #logo img{
    cursor: pointer;
}

/* 20240719 Instagram */

header .time .instagram_icon{
  float: left;
  padding-right: 10px;
}  

.instagram_icon{
  display: inline;
}

.instagram_icon img{
  width: 35px;
  height: auto;
}

@media screen and (max-width: 767px) {
  .instagram_icon img{
    margin: 0 0.2em 0 0 ;
  }
  }