@charset "UTF-8";


* {
  box-sizing: border-box;
}

body {
  color: #333;
  font-size: 12px;
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a:link,
a:visited {
  color: #666;
  text-decoration: underline;
}

a:hover,
a:active {
  color: #999;
  text-decoration: underline;
}

.rollover {
  cursor: pointer;
  -moz-transition: opacity 0.3s ease;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.rollover:hover {
  opacity: 0.7;
  -ms-filter: "alpha(opacity=70)";  /* ie 8 */
}

.rolloverjs {}

/* ----- clearfix ----- */
.clearfix { display: inline-table; }
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* End hide from IE-mac */

.clear   { clear: both; }
.float_l { float: left; }
.float_r { float: right; }

.hidden { display: none; }

.w50  { width:  50%; }
.w100 { width: 100%; }

.text_center    { text-align: center; }
.text_left      { text-align: left; }
.text_right     { text-align: right; }
.text_bold      { font-weight: bold; }
.text_underline { text-decoration: underline; }

/* ----- flex_box ----- */
.flex_box {
  display: flex;
}
.flx_sp_btw {
  justify-content: space-between;
}





/* --------------
 * space
 * -------------- */
/* margin */
.mt10 { margin-top: 10px; }
.mt15 { margin-top: 15px; }
.mt20 { margin-top: 20px; }

/* padding */
.pt10 { padding-top: 10px; }
.pt15 { padding-top: 15px; }
.pt20 { padding-top: 20px; }






/* --------------
 * ALL
 * -------------- */
body {
  position: relative;
}

.container {
  margin: 0 auto;
  width: 1000px;
}

.tabelog {
  text-align: center;
  margin-bottom: 50px;
}
.tabelog a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  max-width: 600px;
  width: 100%;
  padding-top: 10px;
  background-image: url(../img/party/party_gallery_bg.png);
  background-size: cover;
  aspect-ratio: 1010 / 210;
  color: #e1b69e;
  font-size: 36px;
  font-weight: bold;
  font-family: serif;
  text-decoration: none;
  line-height: 1;
}




/* --------------
 * header
 * -------------- */
header {
  background-image: url(../img/common/header_bg.png);
  background-position: center top;
  background-repeat: repeat-x;
  position: absolute;
  width: 100%;
  z-index: 1000;
}

header .header_logo_menu {
  font-size: 12px;
  color: #dbbc9e;
}

header h1 {
  color: #dbbc9e;
  font-size: 12px;
  font-weight: normal;
  height: 51px;
  line-height: 51px;
  margin: 0;
  display: inline-block;
}
header .header_logo_menu a {
  font-size: 12px;
  color: #dbbc9e;
  text-decoration: none;
}
header .header_logo_menu a:hover {
  text-decoration: underline;
}
header .header_logo_menu a img {
  margin: 0 3px;
}

header img.logo {
  margin-left: -14px;
}



/* --------------
 * main_wrapper
 * -------------- */
#main_wrapper {
  margin-top: -4px;
}

/* ----- cover_wrapper ----- */
#cover_wrapper {
  height: 642px;
  position: relative;
}

.cover_slide_bg {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  display: none;
  height: 642px;
  left: 0;
  min-width: 1000px;
  position: absolute;
  top: 0;
  width: 100%;
}

.cover_slide_bg .container {
  padding-top: 90px;
  position: relative;
  z-index: 100;
}

#cover_nav {
  bottom: 20px;
  position: absolute;
  width: 100%;
  z-index: 600;
}

#cover_nav ul {
  list-style-type: none;
  margin: 0 auto;
  padding: 0;
  text-align: center;
  width: 170px;
}

#cover_nav li {
  display: inline-block;
  padding: 0 10px;
}

#cover_nav li img {
  cursor: pointer;
}

a#tel_area{
  text-decoration: none;
}

#tel_area {
  background-image: url(../img/common/tel_bg.png);
  background-position: center bottom;
  background-repeat: repeat-x;
  bottom: 0;
  color: #eee;
  font-size: 16px;
  height: 100px;
  line-height: 30px;
  padding-top: 62px;
  position: absolute;
  text-align: center;
  width: 100%;
  z-index: 500;
}

#tel_area img {
  margin-right: 10px;
  vertical-align: baseline;
}

#tel_area span {
  font-size: 20px;
  font-weight: bold;
  line-height: 38px;
}

/* ----- nav ----- */
#g_navi {
  height: 66px;
  position: relative;
  z-index: 500;
  background: #6b3003 url(../img/common/nav_bg_repeat.png) repeat-x center;
  box-shadow: 0px 0px 3px 1px rgba(0,0,0, 0.5);
  box-sizing: border-box;
}
#g_navi ul, #g_navi ul li, #g_navi ul li a {
  text-decoration: none;
  list-style: none;
  cursor: pointer;
  padding: 0;
  margin: 0;
}
#g_navi > .container > ul {
  display: flex;
  justify-content: space-between;
  border-left: 2px solid rgba(0, 0, 0, 0.2);
  border-right: 2px solid rgba(255, 255, 255, 0.05);
}
#g_navi > .container > ul > li {
  width: 100%;
  height: 58px;
  text-align: center;
  border-right: 2px solid rgba(0, 0, 0, 0.2);
  border-left: 2px solid rgba(255, 255, 255, 0.05);
  margin: 4px 0;
}
#g_navi ul > li {
  height: 58px;
  display: block;
  position: relative;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5);
}
#g_navi ul li:hover {
  background: rgba(0, 0, 0, 0.2);
}
#g_navi > .container > ul > li:hover {
  border-left: 2px solid rgba(255, 255, 255, 0.08);
}
#g_navi ul > li a {
  font-size: 15px;
}
#g_navi ul > li .main {
  display: block;
  padding: 11px 0 0;
  color : #dab7aa;
  font-family: serif;
}
#g_navi ul > li .sub {
  line-height: 1em;
  display: block;
  font-size: 0.8em;
  color: #815334;  
}

#g_navi ul > li > ul {
  width: 100%;
  display: none;
  position: absolute;
  top: 58px;
  background: rgba(61, 19, 0, 0.8);
  z-index: 99;
}
#g_navi ul > li > ul > li {
  border-top: solid 1px rgba(255,255,255,0.15);
  border-bottom: solid 1px rgba(0,0,0,0.3);
}
#g_navi ul > li > ul > li:first-child {
  border-top: none;
}
#g_navi ul > li > ul > li:last-child {
  border-bottom: none;
}
#g_navi ul > li > ul > li > a {
  line-height: 62px;
  display: block;
  font-family: serif;
  color : #bf9e91;
}



/*
nav.hidden-sp {
  background-image: url(../img/common/nav_bg_loop.png);
  background-position: top center;
  background-repeat: repeat-x;
  height: 66px;
  position: relative;
  z-index: 500;
}

#g_nav {
  position: relative;
}

#g_nav > ul {
  background-image: url(../img/common/nav_bg.png);
  background-position: top center;
  background-repeat: repeat-x;
  height: 66px;
  left: 0;
  list-style-type: none;
  margin: 0;
  padding: 0;
  position: absolute;
  text-align: center;
  top: 0;
  width: 1000px;
}

#g_nav > ul > li {
  padding: 6px 0 0 3px;
}

#g_nav > ul > li:first-child {
  padding: 6px 0 0 2px;
}

#g_nav > ul > li > a,
#g_nav > ul > li > div {
  cursor: pointer;
  display: block;
  height: 50px;
}

#g_nav > ul > li > ul {
  display: none;
  list-style-type: none;
  margin: 0;
  padding: 6px 0 0;
}

#g_nav > ul > li > ul > li a {
  background-color: rgba(98,35,1,0.7);
  color: #fff;
  display: block;
  padding: 7px 5px 4px;
  text-decoration: none;
}

#g_nav > ul > li > ul > li a:hover {
  background-color: rgba(117,51,5,0.7);
}
*/

/* ----- sill ------ */
.sill {
  background-image: url(../img/common/section_line.png);
  background-position: center center;
  height: 39px;
  margin: -5px 0;
  position: relative;
  z-index: 500;
}

/* ----- go_to_top ----- */
#go_to_top {
  bottom: 0;
  display: none;
  left: 0;
  position: fixed;
  width: 100%;
  z-index: 1500;
}

#go_to_top > div {
  position: relative;
}

#go_to_top img {
  bottom: 38px;
  position: absolute;
  right: 18px;
}




/* --------------
 * footer
 * -------------- */
footer dl, footer dt, footer dd, footer ul, footer li, img, a {
  font-size: 13px;
  box-sizing: border-box;;
 	list-style: none;
 	padding: 0;
 	margin: 0;
 }
 /*footer ul, footer li, footer a {
  font-size: 11.5px;
 }*/

footer {
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.4)) , url(../img/shop/shop_bg_top.png) center repeat-x;
  padding: 3em 0 2em;
  color: #8a987a;
}
footer a {
  color: #a1ab98;
  text-decoration: none;
}

/* detail */
footer > .container > .detail {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
footer > .container > .detail > dl {
  flex-basis: 49%;
  position: relative;;
  color: #a1ab98;
  background: rgba(0, 0, 0, 0.05);
  border-radius: 0.3em;
  box-shadow: inset 0px 0px 10px 5px rgba(0, 0, 0, 0.2);
  padding: 0.5em 1.5em 1.5em;
}
footer > .container > .detail > dl > dt {
  display: flex;
  line-height: 1.5em;
  font-family: serif;
  font-size: 1.4em; 
  font-weight: bold;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.7);
  border-bottom: 1px solid #2d3325;
  letter-spacing: 0.1em;
  padding: 0.5em 0;
  margin: 0 0 0.5em;
}
footer > .container > .detail > dl > dt:before {
  width: 0.2em;
  height: 1.5em;
  content: "";
  background: linear-gradient(0deg, #505d45, #a1ab98);
  margin: 0 0.8em 0 0;
}
footer > .container > .detail > dl > .tel, footer > .container > .detail > dl > .tel a {
  font-family: serif;
  font-size: 1.6em;
  font-weight: bold;
  color: #a3b791;
  text-decoration: none;
  letter-spacing: 0.08em;
  margin: 0 0 0.5em; 
}
footer > .container > .detail > dl > .tel {
  display: flex;
  line-height: 1em;
}
footer > .container > .detail > dl > .tel:before {
  font-family: icomoon;
  content: "\e911";
  padding: 0 0.2em 0 0;
}

/* outline */
footer > .container > .outline {
  display: flex;
  justify-content: center;
  border-top: 1px solid #455039;
  padding: 1.5em 0 0;
  margin: 1.5em 0 0;
}
footer > .container > .outline > .logo {
  margin: 0 1em 0 0;
}
footer > .container > .outline nav > ul {
  display: flex;
  justify-content: space-between;
  margin: 0 0 1.5em;
}
footer > .container > .outline nav > ul a{
  color: #a3b791;
  text-decoration: none;
}
footer > .container > .outline nav > ul > li {
  border-right: solid 1px #a3b791;
  padding: 0 1em 0 1em;
}
footer > .container > .outline nav > ul > li:first-child {
  padding: 0 1em 0 0;
}
footer > .container > .outline nav > ul > li:last-child {
  border: none;
}

footer > .container > .outline .copy {
  display: flex;
  color: #a3b791;
}
footer > .container > .outline .copy p {
  line-height: 22px;
  padding: 0;
  margin: 0 0 0 1em;;
}
footer > .container > .outline .copy > img {
  width: 225px;
  height: 22px;
}

/* btn */
footer .btn_01 {
  line-height: 3em;
  text-align: center;
  box-shadow: 0.1em 0.1em 1px rgba(0, 0, 0, 0.3), inset 0px 0px 10px 5px rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.1);
  border-radius: 0.2em;
}
footer .btn_01 > a {
  margin-top: 10px;
  display: block;
  font-family: serif;
  font-size: 1.2em;
  font-weight: bold;
  color: #a3b791;
  text-decoration: none;
  text-shadow: 0.05em 0.05em 0 rgba(0, 0, 0, 1);
}
footer .btn_01 > a span:after {
  content: ">";
  padding: 0 0 0 1em;
}
footer .btn_01:hover {
  opacity: 0.7;
}

footer > div > .float_l {
  line-height: 26px;/*
  margin-top: 25px;*/
}
footer > div > .float_r {
  border: 1px solid #455039;
  padding: 10px 120px 10px 10px;
  font-size: 13px;
}
footer a:link,
footer a:visited {
  color: #aab79d;
  font-weight: bold;
  text-decoration: none;
}
footer > .container > .float_r .tel {
  font-family: serif;
  font-size: 1.8em;
  font-weight: bold;
  color: #a3b791;
  text-decoration: none;
  letter-spacing: 0.08em;
  /*margin: 0 0 4px;*/
}
footer > .container > .float_r .tel:before {
  font-family: icomoon;
  content: "\e911";
  padding: 0 0.2em 0 0;
}
footer > div > .float_r > img {
  margin: 10px 10px 0 10px;
 /* width: 70px;*/
}

@media (max-width: 767px) {
  footer {
    background-size: contain;
    height: auto;
    padding: 20px 0;
    font-size: 15px;
  }
  footer > div > .float_l {
    width: 100%;
    margin: 0 0 20px;
  }
  footer > div > .float_r {
    padding: 20px 10px 40px 10px;
    width: 100%;
  }
  footer > div > .float_r > .float_r {
    float: left;
  }
  br.visible-sp {
    display: none;
  }
  footer a.visible-sp {
    font-size: 35px;
    display: inline-block;
  }
  span.copy {
    margin-top: 10px;
    display: block;
  }
  span.copy img {
    width: 70%;
    max-width: 275px;
  }
}


/* space */
.sp_b_1 {
  margin-bottom: 1em;
}


 /*
footer {
  background: url(../img/shop/shop_bg_top.png) center repeat-x, linear-gradient(rgba(0,0,0,0.2), rgba(0,0,0,0.9));
  color: #8a987a;
  padding: 40px 0;
}

footer a:link,
footer a:visited {
  color: #aab79d;
  font-weight: bold;
  text-decoration: none;
}

footer a:hover,
footer a:active {
  color: #aab79d;
  text-decoration: underline;
}

footer > div > .float_l {
  line-height: 26px;
  margin-top: 25px;
}

footer > div > .float_r {
  border: 1px solid #455039;
  padding: 10px 120px 10px 10px;
}

footer > div > .float_r > img {
  margin: 10px 10px 0;
}

footer > div > .float_r div img {
  margin: 5px 0;
}

footer .footer_shop {
  width: 400px;
}
footer .footer_shop, footer .footer_shop dt, footer .footer_shop dd, footer .footer_shop dd ul, footer .footer_shop dd ul li {
  padding: 0;
  margin: 0;
}
footer .footer_shop dt{
  line-height: 1.5em;
  font-size: 1.2em;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
  font-weight: bold;
  letter-spacing: 0.1em;
  display: inline-block;
  background: rgba(255,255,255,0.15);
  box-shadow: 1px 1px 1px rgba(0,0,0,0.5);
  border-radius: 0.75em;
  padding: 0 1em;
  margin: 0 0 0.3em;
}
footer .footer_shop dd {
  margin: 0 0 1em;
}
footer .footer_shop dd:last-child {
  margin: 0;
}
footer .footer_shop dd > ul > li {
  list-style: none;
}
footer .footer_shop dd .tel, footer .footer_shop dd .tel a {
  font-size: 1.7em;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
  font-weight: bold;
  letter-spacing: 0.08em;
}
*/







/* --------------
 * Under Smart Phone Size
 * -------------- */
.visible-sp {
  display: none;
}

@media (max-width: 767px) {
  .hidden-sp {
    display: none;
  }

  .visible-sp {
    display: inherit;
  }

  .container {
    margin: 0 15px;
    width: auto;
  }

  .tabelog {
    margin-bottom: 50px;
  }
  .tabelog a {
    padding-top: 5px;
    font-size: calc(2800vw / 520);
  }

  .responsive_img {
    max-width: 100%;
  }

  /* ----- flex_box ----- */
  .flex_box {
    display: flex;
  }
  .flx_sp_btw {
    flex-direction: column;
  }




  /* ----- header ----- */
  header {
    background-image: url(../img/common/sp_header_bg.png);
    background-position: top center;
    background-size: auto 115px;
    height: 115px;
    margin-bottom: -15px;
    padding-top: 20px;
    position: relative;
  }

  header h1 {
    font-size: 13px;
  }

  header h1 img {
    margin: 0 10px 0 -5px;
  }

  .sp_logo {
    display: inline-block;
  }

  #sp_menu_btn {
    margin-top: 15px;
  }





  /* ----- cover_wrapper ----- */
  #cover_wrapper {
    height: 320px;
  }

  .cover_slide_bg {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
    width: 100%;
    height: 320px;
    min-width: initial;
  }

  #tel_area {
    font-size: 12px;
  }

  #tel_area span {
    font-size: 16px;
  }

  #tel_area span a {
    color: #fff;
  }





  /* ----- sp_menu ----- */
  nav.visible-sp ul {
    margin: 0;
    padding: 0;
    width: 100%;
  }

  #sp_menu {
    background-color: rgba(14,9,9,0.9);
    display: none;
    list-style-type: none;
    position: absolute;
    top: 111px;
    z-index: 700;
  }

  #sp_menu li > div,
  #sp_menu li > a {
    border-bottom: 1px solid #655850;
    color: #fff0ed;
    display: block;
    font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-size: 24px;
    padding: 30px 0;
    text-decoration: none;
  }

  #sp_menu li > div {
    background-image: url(../img/common/sp_menu_arrow.png);
    background-position: right center;
    background-repeat: no-repeat;
    background-size: 65px 19px;
  }

  #sp_menu ul {
    background-color: rgba(60,54,50,0.7);
    display: none;
  }

  #sp_menu ul > li > div,
  #sp_menu ul > li > a {
    padding: 20px 0;
  }
  #sp_menu ul > li > a > span {
    color: #000;
    background: rgba(255,255,255,0.5);
    border-radius: 0.2em; 
    padding: 0.3em;
  }

  #sp_menu .sp_menu_border {
    background-image: url(../img/common/section_line.png);
    background-position: top center;
    background-size: cover;
    font-size: 10px;
    height: 20px;
    line-height: 10px;
  }
  #sp_menu .cart_ico {
    position: relative;
    left: -5px;
    top: -3px;
  }


  /* ----- go_to_top ----- */
  #go_to_top img {
    bottom: 30px;
    right: 10px;
  }


  /* ----- footer ----- */
  footer > .container {
    padding: 1em 0 0;
  }
  footer > .container > .detail {
    flex-direction: column;
    justify-content: flex-start;
  }
  footer > .container > .detail > dl {
    flex-basis: 100%;
  }
  /* detail */
  footer > .container > .detail > dl {
    margin: 0 0 1em;
  }
  footer > .container > .detail > dl > .tel {
    margin: 1em 0 0;
  }
  footer > .container > .detail > dl > .tel:before {
    font-size: 1.3em;
  }
  /* outline */
  footer > .container > .outline > .logo {
    display:  none;
  }



}


































