@charset "UTF-8";
html {font-size: 62.5%;
}
body {
  font-family: “游ゴシック“, YuGothic, “ヒラギノ角ゴ Pro W3”, “Hiragino Kaku Gothic Pro”, “メイリオ“, Meiryo, “ＭＳ Ｐゴシック“, “MS PGothic”, sans-serif;
  color: #906E53;
  background-color: #fffceb;
  background-image: url("https://www.transparenttextures.com/patterns/clean-textile.png");
/* This is mostly intended for prototyping; please download the pattern and re-host for production environments. Thank you! */
}
.header {
  max-width: 1000px;
  margin: 0 auto;
  height: 208px;
}
.header_wrapper {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}
h1 img {
  width: 278px;
  margin-top: 20px;
}
h1:hover {
  opacity:0.7;
}
.menu {
  display: none;
}
.download {
  margin-top: 20px;
  margin-bottom: 12px;
  font-size: 14px;
  background-image: url(../images/download_bg.png);
  background-repeat: no-repeat;
  background-position: right;
  width: 548px;
  text-align: right;
}
.download:hover {
  opacity: 0.7;
}

.download a{
  display: block;
  padding-right: 18px;
  padding-top: 13px;
  padding-bottom: 12px;
  margin-left: 342px;
}
.download a::before {
  content:'';
  display: inline-block;
  width: 23px;
  height: 23px;
  background-image: url(../images/icon_download.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;

}
.contact {
  display: flex;
  font-size: 14px;
  background-image: url(../images/form_box.svg);
  background-repeat: no-repeat;
  background-color: 0.5;
  width: 548px;
  height: 44px;
  position: relative;
  
}
.contact li:first-child {
  position: absolute;
  left: 170px;
  top: 12px;
  font-size: 20px;
  font-weight: bold;
} 
.contact li:first-child::before {
  content:'';
  display: inline-block;
  width: 23px;
  height: 23px;
  background-image: url(../images/icon_tel.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;

}

.contact li:last-child {
  position: absolute;
  left: 390px;
  top: 12px;
  border-bottom: dotted 1px;
  font-weight: bold;
}
.contact li:last-child::before {
  content:'';
  display: inline-block;
  width: 23px;
  height: 23px;
  background-image: url(../images/icon_mail.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}
.contact li:last-child:hover {
  opacity: 0.7;
}
.header_navi {
  display: flex;
  margin-bottom: 40px;

  
}
.header_navi li {
  width: 165px;
  text-align: center;
  border-right: dashed 1px #906E53;
}
.header_navi li:first-child {
  border-left: dashed 1px #906E53;
  background-image: url(../images/gb_navi_spot.png);
  background-repeat: no-repeat;
  background-position: center;
}
.navi_bg {
  position: relative;
}
.navi_bg::before {
  content:'';
  display: inline-block;
  position: absolute;
  top: 12px;
  left: 15px;
  width: 125px;
  height: 47px;
  background-image: url(../images/gb_navi_spot.png);
  background-repeat: no-repeat;
  background-size: contain;
  z-index: -1;
  opacity: 0;
  transition: all 0.1s;
}
.navi_bg:hover::before {
  transition: all 0.3s;
  opacity: 1;

}

.carousel img {
  width: 100%;
  height: 35vw;
  object-fit: contain;
}
.carousel {
  margin-top: 50px;
}
.slick-prev {
  z-index: 100;
  left: 250px;
}
.slick-next {
  z-index: 100;
  right: 287px;
}
.slick-prev::before {
  content: url(../images/arrow_left.png); 
}
.slick-next::before {
   content: url(../images/arrow_right.png);
}
.slogan h2 {
  background-image: url(../images/slogan.png);
  margin: 60px auto 40px;
  background-size: contain;
  background-repeat: no-repeat;
  height: 38px;
  width: 854px;

}
.photo_frame {
  width: 210px;
  height: 190px;
  background-color:#ffffff;
  box-shadow: 2px 2px 5px 1px rgba(0,0,0,.1);
  transition: 0.3s;
}
.photo_frame:hover {
  transform: rotate(5deg);

}
.photo img {
  display: block;
  width:180px;
  margin: 0 auto 18px;
  padding-top: 15px;
}
.photo figcaption {
  text-align: center;
  font-family: 'TBUD丸ゴシック Std','HG丸ｺﾞｼｯｸM-PRO';
  font-size: 20px;
}
.photo_wrapper {
  display: flex;
  max-width: 1000px;
  margin: 0 auto 40px;
  justify-content: space-between;
}
.main_contents1 {
  display: flex;
  max-width: 1030px;
  margin: 0 auto 30px;
  justify-content: space-between;
}
.main_contents1 h3 {
  margin-left: 15px;
}
h3 {
  font-size: 22px;
}
h3::before, h3::after {
  content:'';
  display: inline-block;
  width: 23px;
  height: 23px;
  background-image: url(../images/dot_mini.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}
.news_bg {
  background-image: url(../images/news_bg.png);
  width: 686px;
  height: 237px;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  margin-top: 10px;
  
}
.news_bg ul {
 width: 608px;
 font-size: 18px;
 position: absolute;
 top: 35px;
 left: 40px;
 line-height: 53px;
}
.news_bg li {
  border-bottom: dashed 0.25px #dbba9f;
}
.news_bg li:first-child {
  border-top: dashed 0.25px #dbba9f;
}
.news_bg li a:hover {
  color: rgb(252, 144, 108);
  transition: 0.1s;

}
#more_btn {
  display: block;
  width: 120px;
  height: 2em;
  text-align: center;
  padding-top: 0.5em;
  font-size: 12px;
  position: absolute;
  left: 520px;
  border-radius: 20px;
  background-color:#c4a992;
  color: #ffffff;
}
#more_btn::after {
  font-family: FontAwesome;
  content:'\f0a9';
}
#more_btn:hover {
  opacity:0.7;
}
.lunch img{
  width: 290px;
  margin-top: 10px;
}
.lunch_sp {
  display: none;
}
.main_contents2 {
  display: flex;
  max-width: 1030px;
  margin: 0 auto;
  justify-content: space-between;
}
#about {
  width: 663px;
  margin-left: 15px;
  font-size: 1.6rem;
}
.about_wrapper {
  display: flex;
  justify-content: space-between;
  margin: 20px 0 30px;
  line-height: 1.8;
}
.about_wrapper img {
  height: 142px;
  margin-top: 50px;
}
.about_wrapper dl {
  max-width: 495px;
}
.about_wrapper dt {
  margin-bottom: 20px;
}
.about_wrapper dd {
  text-align: justify;
  line-height: 1.6;
  color:#664E3A;
}
.access_bg {
  background-image: url(../images/access_bg.png);
  width:337px;
  height: 449px;
  position: relative;
  margin-top: 10px;
  font-size: 16px;
}
.access_bg img {
  position: absolute;
  top: 30px;
  left: 35px;
  border: solid 0.5px #d8c1ae; 
  border-radius: 15px;
}
.access_bg dl {
  position: absolute;
  top: 230px;
  left: 40px;
  line-height: 1.8;
}
#map_btn {
  position: absolute;
  top: 370px;
  left: 40px;
  background-color: #99cc33;
  padding: 10px 50px;
  color: #ffffff;
  font-family: 'TBUD丸ゴシック Std','HG丸ｺﾞｼｯｸM-PRO';
  font-size: 1.25em;
  border-radius: 30px;
  transition: all 0.3s;
}
#map_btn::after {
  font-family: FontAwesome;
  content:'\f0a9';
}
#map_btn:hover {
  background-color:#ffffff;
  border: solid 0.5px #99cc33;
  color: #99cc33;
  
}
.banner_pc {
  max-width: 1000px;
  margin: 20px auto 50px;
  display: flex;
  justify-content: space-between;
}
.banner_sp {
  display: none;
}
.banner_pc a:hover {
  opacity: 0.7;
}
footer {
  font-size: 1.4rem;
}
.footer_line {
  background-image: url(../images/footer_line.png);
  background-repeat: repeat-x;
}
#site_map {
  padding-top: 50px;
  max-width: 700px;
  margin: 0 auto 40px;
}
#site_map a:hover {
  color:rgb(252, 144, 108);
}
.f_navi {
  display: flex;
  justify-content: space-between;
  font-weight: bold;
  line-height: 1.6;
}
.sub_navi {
  font-weight: normal;
  margin-top: 5px;
}
.info {
  display: flex;
  justify-content: space-between;
  max-width: 1000px;
  margin: 0 auto;
}
.info img {
  width: 138px;
}
.address {
  line-height: 1.4;
}
.copyright {
  text-align: center;
  margin: 15px 0;
}
#page_top {
  position: fixed;
  right: 0px;
  bottom: 20px;
  padding: 0 50px 10px 0;
  transform: translateY(120px); 
}

/* 上に出てくる動き */
.up_move {
  animation: up_anime 0.5s forwards;
}
@keyframes up_anime {
  from {
    transform: translateY(120px);
  }
  to {
    transform: translateY(0);
  }
}
/* 下に隠れる動き */
.down_move {
  animation: down_anime 0.5s forwards;
}
@keyframes down_anime {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(120px);
  }
}

