@charset "utf-8";
/*----------------------------------------------------------------------------------------------
	reset
----------------------------------------------------------------------------------------------*/
*, *:after, *:before {
	box-sizing:border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
html, body, div, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp,small, strike, strong, tt, var,b, u, i, center, sup,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed,figure, figcaption, footer, header, hgroup,menu, nav, output, ruby, section, summary,time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: middle;
}
a, span{
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
}
article, aside, details, figcaption, figure,footer, header, hgroup, menu, nav, section { display: block;}
html,body{ width:100%; height:100%;}
blockquote, q { quotes: none;}
blockquote:before, blockquote:after,
q:before, q:after { content: ''; content: none;}
input, textarea { margin: 0; padding: 0;}
ol, ul{ list-style:none;}
table{ border-collapse: collapse; border-spacing:0;}
caption, th{ text-align: left;}
a:focus { outline:none;}
.clearfix:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.clearfix { min-height: 1px;}
* html .clearfix { height: 1px; /*¥*//*/ height: auto; overflow: hidden; /**/}
.both{ clear:both;}
img { vertical-align:bottom;}
/*----------------------------------------------------------------------------------------------
	base
----------------------------------------------------------------------------------------------*/
html {
  overflow-y: scroll;
  font-size:62.5%;
  padding:0;
  margin:0;
  width:100%;
  height:100%;
}
body {
  position:relative;
	font-family: 'Noto Sans JP', "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", sans-serif;
  font-size: 15px;
  color:#111;
  background: url(../img/bg.jpg);
  background-position: center top;
  background-repeat: repeat;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  width:100%;
  height:100%;
  margin:auto;
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
}
a {
  -webkit-transition: .4s;
  transition: .4s;
}
a:link, a:visited {
  color: #111;
  text-decoration: none;
}
a:hover, a:active {
  color: #666;
}
@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
/*PCで表示させないセレクタ*/
#sp_header,
.tel-btn_sp{
  display: none;
}
.sp {
  display: none;
}
#header {
  position: relative;
  margin: 0 auto;
}
#mv {
	position: relative;
}
#mv .logo img {
	width: 90px;
	position: absolute;
	top: 30px;
	left: 30px;
}
#mv .caption img {
	max-width: 660px;
	width: 60%;
	position: absolute;
	top: 30%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#mv img {
	width: 100%;
	display: block;
}
#sv {
	background-image: url(../img/sv.jpg);
	background-position: center center;
	background-size: cover;
	position: relative;
	height: 500px;
}
#sv .logo img {
	width: 90px;
	position: absolute;
	top: 30px;
	left: 30px;
}
#sv .caption img {
	max-width: 600px;
	width: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	transform: translate(-50%, -50%);
}
#sv img {
	width: 100%;
	display: block;
}
#nav{
  width: 100%;
  -webkit-transition: .4s;
  transition: .4s;
  z-index: 9999;
  opacity: 0;
}
#fixed {
	width: 100%;
	background: #528736;
}
.is_scroll #nav{
  position: fixed;
  top: 0;
  left: 0;
  opacity: 1;
}
#fixed ul {
	width: 100%;
	margin: 0 auto;
  display: flex;
}
#fixed ul li {
	width: 50%;
	padding: 10px;
}
#nav ul li a {
	font-size: 20px;
	line-height: 30px;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	display: block;
  font-weight: bold;
}
.fixed {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 99999;
}
.menu-btn {
  display: none;
}
/* Underline From Center */
.hvr-underline-from-center {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  overflow: hidden;
}
.hvr-underline-from-center:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 51%;
  right: 51%;
  bottom: 0;
  background: #ffd201;
  height: 4px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-underline-from-center:hover:before, .hvr-underline-from-center:focus:before, .hvr-underline-from-center:active:before,
.hvr-underline-from-center.on:before {
  left: 0;
  right: 0;
}
.sp-menu {
  display: none;
}
@media screen and (min-width:834px) and ( max-width:1080px) {

}
/*----------------------------------------------------------------------------------------------
	footer area
----------------------------------------------------------------------------------------------*/

.l-footer {
  width: 100%;
  padding: 60px 20px 80px;
  position: relative;
	background: #4F961A;
	color: #fff;
}
.info_ttl {
  text-align: center;
  font-size: 52px;
  font-weight: 700;
  margin-bottom: 40px;
}
.l-footer_inner {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.l-shop_info {
  width: 420px;
}
.p-shop_ttl {
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 20px;
}
.shop {
  font-size: 13px;
  font-weight: 700;
}
.shop dt {
  width: 20%;
  float: left;
  margin-bottom: 1em;
}
.shop dd {
  width: 100%;
  margin-bottom: 1em;
}
.shop dd:after {
	content: "";
	display: block;
	clear: both;
}
.access_map iframe{
  width: 100%;
  height: 246px;
  margin-top: 20px;
}
.copy {
  font-size: 12px;
  text-align: center;
  padding: 10px;
}
@media screen and (max-width:834px){
  .l-footer {
    width: 100%;
    padding: 30px 20px 60px;
	}
  .info_ttl {
    text-align: center;
    font-size: 30px;
    margin-bottom: 30px;
  }
  .l-footer_inner {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
  }
  .l-shop_info {
    width: 100%;
  }
  .p-shop_ttl {
    font-size: 20px;
    margin-bottom: 10px;
  }
  .l-shop_info + .l-shop_info {
    margin-top: 30px;
  }
  .shop {
    font-size: 13px;
    font-weight: 700;
  }
  .shop dt {
    margin-bottom: .5em;
  }
  .shop dd {
    margin-bottom: .5em;
  }
}
@media screen and (min-width:769px) and (max-width: 1350px) {

}
/*----------------------------------------------------------------------------------------------
	page area
----------------------------------------------------------------------------------------------*/
.pages {
  margin-bottom: 80px;
}
@media screen and (max-width:834px){
  .pages {
    margin-bottom: 50px;
  }
}
/*----------------------------------------------------------------------------------------------
	COMMON
----------------------------------------------------------------------------------------------*/
.row:after, .col:after {
  content: "";
  display: block;
  clear: both;
}
.col {
  display: block;
  float: left;
}
.fl {
  float: left !important;
}
.fr {
  float: right !important;
}
.mt05 {
  margin-top: 5px;
}
.mt10 {
  margin-top: 10px;
}
.mt15 {
  margin-top: 15px;
}
.mt20 {
  margin-top: 20px;
}
.mt30 {
  margin-top: 30px;
}
.mb05 {
  margin-bottom: 5px;
}
.mb10 {
  margin-bottom: 10px;
}
.mb15 {
  margin-bottom: 15px;
}
.mb20 {
  margin-bottom: 20px;
}
.mb25 {
  margin-bottom: 25px;
}
.mb30 {
  margin-bottom: 30px;
}
.mb35 {
  margin-bottom: 35px;
}
.mb40 {
  margin-bottom: 40px;
}
.mb45 {
  margin-bottom: 45px;
}
.mb50 {
  margin-bottom: 50px;
}
.mb55 {
  margin-bottom: 55px;
}
.mb60 {
  margin-bottom: 60px;
}
.mb65 {
  margin-bottom: 65px;
}
.mb70 {
  margin-bottom: 70px;
}
.mb75 {
  margin-bottom: 75px;
}
.mb80 {
  margin-bottom: 80px;
}
.mb85 {
  margin-bottom: 85px;
}
.ctb {
  text-align: center;
}
.ac {
  text-align: center;
}
.al {
  text-align: left;
}
.ar {
  text-align: right;
}
a.hover img {
  -webkit-transition: .4s;
  transition: .4s;
}
a.hover:hover img {
  opacity: 0.7;
}
img{
  max-width: 100%;
  height: auto;
}
.full_w_img img,
img.full_w_img{
  width: 100%;
  height: auto;
}
.fs_s {
  font-size: .8em;
}
.text-s {
  font-size: 12px !important;
}
.text-ss {
  font-size: 10px !important;
}
.fs-sage {
  text-indent: -1em;
  margin-left: 1em;
}


/* ----------------------------------------------------------------------------------------------
	sp
----------------------------------------------------------------------------------------------*/
@media screen and (max-width:834px){
  html { -webkit-text-size-adjust: none;}
  body {
    min-width: 320px;
    font-feature-settings: "palt";
    font-size: 14px;
  }
  .footer__tel {
      padding: 20px 0;
  }
  .tel {
      margin: 10px 0;
  }
  img {
      max-width: 100%;
      height: auto;
  }
  /*スマホのみのオプション*/
  .sp_pic{ width:100%; height:auto; margin-bottom:5px;}
  .sp_center{display:block; margin:0px auto;}
  .sp_br{ display:block; margin-top:5px;}
  .sp_50{width:50%;margin:0px auto 5px;display:block;}
  .sp_80{width:80%;margin:0px auto 5px;display:block;}
  .FRight,.FLeft { float:none; }
  .sp_right { float:right; }
  .sp_left { float:left; }
  .sp_centering { text-align:center}
  
  /*スマホで表示させないセレクタ*/
  .h_nav_pc, #gnavi_wrap { display:none; }
  .sp {display: block;}
  .pc {display:none;}
  .sp.inlineb {display: inline-block;}
  .hidden-md {display: none;}
  .visible-md {display: block;}
  .xs-justify {
    text-align: justify;
  }
  .box_w900 {
    margin-left: 15px;
    margin-right: 15px;
  }
	.sp_btn-ac {
		text-align: center;
	}
  /* ----------------------------------------------------------------------------------------------
     sp_header ※スマホのみ表示のセレクタ
  ---------------------------------------------------------------------------------------------- */
  .header__inner {
    /* position: relative; */
    margin: 0 auto;
    padding: 10px 15px;
    height: 50px;
  }
  #mv {
    position: relative;
  }
  #mv .logo img {
    width: 60px;
    position: absolute;
    top: 10px;
    left: 10px;
  }
  #mv .caption img {
    max-width: 300px;
    width: 60%;
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  #mv img {
    width: 100%;
    display: block;
  }
  #sv {
    background-image: url(../img/sv.jpg);
    background-position: center center;
    background-size: cover;
    position: relative;
    height: 300px;
  }
  #sv .logo img {
    width: 60px;
    position: absolute;
    top: 10px;
    left: 10px;
  }
  #sv .caption img {
    max-width: 300px;
    width: 60%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .is_scroll .header__inner {
  }
  .menu-btn {
      display: block;
      position: fixed;
      top: 10px;
      right: 10px;
      width: 50px;
      height: 50px;
      line-height: 50px;
      font-size: 12px;
      text-align: center;
      cursor: pointer;
      z-index: 99999;
  }
  /* 開閉用ボタンがクリックされた時のスタイル */
  
  .sp-menu {
      position: fixed;
      display: block;
      top: 0;
      left: 0;
      width: 100%;
      height: 100vh;
      background: rgba(255, 255, 255, 0.9);
      -webkit-transition: all .5s;
      transition: all .5s;
      visibility: hidden;
      opacity: 0;
      z-index: 99990;
      padding-top: 15vh;
  }
  /* 開閉用ボタンがクリックされた時のスタイル */
  .open .sp-menu {
      -webkit-transition: all .5s;
      transition: all .5s;
      visibility: visible;
      opacity: 1;
  }
  .sp-menu ul {
    display: block;
    vertical-align: middle;
    width: 80%;
    margin: 0 auto;
  }
  .sp-menu li {
    width: 100%;
    font-size: 16px;
    font-weight: 400;
    margin: 0 auto 10px auto;
    text-align: center;
  }
  .sp-menu li a {
    display: block;
    padding: 10px;
    background: #528736;
    color: #FFF;
    border-radius: 30px;
  }
  /* ----------------------------------------------------------------------------------------------
    footer
  ----------------------------------------------------------------------------------------------*/
  #nav-dock {
    position: fixed;
    bottom: 20px;
    right: 5px;
    font-size: 10px;
  }
  /* ----------------------------------------------------------------------------------------------
    common
  ----------------------------------------------------------------------------------------------*/
  .mt05 {
    margin-top: 5px;
  }
  .mt10 {
    margin-top: 10px;
  }
  .mt15 {
    margin-top: 15px;
  }
  .mt20 {
    margin-top: 10px;
  }
  .mt30 {
    margin-top: 15px;
  }
  .mb05 {
    margin-bottom: 5px;
  }
  .mb10 {
    margin-bottom: 10px;
  }
  .mb15 {
    margin-bottom: 15px;
  }
  .mb20 {
    margin-bottom: 10px;
  }
  .mb25 {
    margin-bottom: 14px;
  }
  .mb30 {
    margin-bottom: 15px;
  }
  .mb35 {
    margin-bottom: 17px;
  }
  .mb40 {
    margin-bottom: 20px;
  }
  .mb45 {
    margin-bottom: 22px;
  }
  .mb50 {
    margin-bottom: 25px;
  }
  .mb55 {
    margin-bottom: 27px;
  }
  .mb60 {
    margin-bottom: 30px;
  }
  .mb65 {
    margin-bottom: 32px;
  }
  .mb70 {
    margin-bottom: 35px;
  }
  .mb75 {
    margin-bottom: 37px;
  }
  .mb80 {
    margin-bottom: 40px;
  }
  .mb85 {
    margin-bottom: 47px;
  }
  .xs-mt10 {margin-top: 10px;}
  .xs-mt15 {margin-top: 15px;}
  .xs-mt20 {margin-top: 20px;}
  .xs-mt25 {margin-top: 25px;}
  .xs-mt30 {margin-top: 30px;}
  .xs-mt35 {margin-top: 35px;}
  .xs-mt40 {margin-top: 40px;}
  
  .btn_center {
    text-align: center;
    margin-bottom: 40px;
    padding-top: 20px;
  }
  }
  
  @media screen and (max-width:680px){
    .hidden-md {display: none;}
    .visible-md {display: none;}
    .pc_hidden.hidden-md {display: block;}
  }
  
  @media screen and (max-width:320px){
    .h__id img,
    .is_scroll .h__id img {
      height: auto;
      width: 80%;
      margin-top: 0.8vh;
    }
  }

/*----------------------------------------------------------------------------------------------
	page common
----------------------------------------------------------------------------------------------*/

@media screen and (max-width:834px){

}