@charset "UTF-8";

/**********************************************
- HEADER
- JS_NAV_BTN
- NAV
- FOOTER
- CONTENT
- MAIN_NAV
- SECTION_HEADER
- BTN_BOX
- TOP
- IMG_BOX
- NEWS
- PRODUCT_ITEM
- SHOP
- PAGE_SHOP
- SINGLE_NEWS
- SINGLE_PRODUCT
- PAGE_ABOUT
- PAGE_CONTACT
- PAGE_RECRUIT
- PAGE_SUPPLIERS
**********************************************/


@import url("https://fonts.googleapis.com/css?family=Raleway:400,500,600,700,800");
body {
  -webkit-font-smoothing: subpixel-antialiased;
	/*
  -moz-transform: rotate(0.028deg);
  -ms-transform: rotate(0.028deg);
	*/
 }

/** unmounting in html5 */
/**************************************/
address, article, aside, figure, footer, header, hgroup, nav, nav, section {
  display: block; }

[hidden], command, datalist, nav[type=context], rp, source {
  display: none; }

/** document */
/**************************************/
body {
  font-size: 14px;

  /* font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif; */
  font-family:  'Hiragino ProN', 'Yu Gothic', sans-serif;
  text-align: left;
  color: #725c56;
  -webkit-text-size-adjust: none;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
  @media only screen and (max-width: 768px) {
    body {
      font-size: 13px;
    }
  }
img,
a img
a span{
  transition: all  .4s ease;
}
a{
  color:#583c32;
  text-decoration: underline;
}

.news a,
.anchors a,
.product_category a,
footer a{
  text-decoration: none;
}

#wrap{
  position: relative;
}

.inner{
  width: 1100px;
  margin: auto;
}
  @media only screen and (min-width: 769px) {
    .issp{
      visibility: hidden;
      display: none;
    }
    .ispc{
      visibility: visible;
    }
    a:hover img{
      opacity: .8;
    }
  }
  @media only screen and (max-width: 768px) {
    .inner{
      width: auto;
      padding: 0 20px;
    }
    .issp{
      visibility: visible;
    }
    .ispc{
      visibility: hidden;
      display: none;
    }
  }

.clearfix:after {
  content: '';
  height: 0;
  clear: both;
  visibility: hidden;
  display: block; }


input[type=text],
input[type=tel],
input[type=email],
input[type=number],
input[type=button],
textarea,
select{
  color:#583c32;
  border: solid 1px #ccc;
  background: #fff;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 13px 20px;
  box-sizing: border-box;
  width: 100%;
  font-size: 16px;
}
.form_confirm input[type=email]{
  background: #fff !important;
}
input[type=button],
input[type=submit]{
  background: #fff;
  color:#583c32;
  border: solid 1px #583c32;
  margin: auto;
  width: 280px;
  height: 55px;
  cursor: pointer;
}
input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px white inset;
}

  @media only screen and (min-width: 768px) {
    input[type=submit]:hover{
      background: #583c32;
      color:#fff;
    }

		input[type=text],
		input[type=tel],
		input[type=email],
		input[type=number],
		input[type=button],
		textarea,
		select{
			font-size:16px;
		}
  }

.recruit-file{
 display: inline-block;
  overflow: hidden;
  position: relative;
  padding: .5em;
  border: 1px solid #999;
  background-color: #eee;
}
.recruit-file:after{
	content:"ファイルを選択する";
}
.recruit-file input[type=file] {
  opacity: 0;
  filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0);
  position: absolute;
  right: 0;
  top: 0;
  margin: 0;
  font-size: 100px;
  cursor: pointer;
}


input[type=button]{
  width: 140px;
  border: none;
  background: #ededed;
}
input:focus,
textarea:focus,
select:focus{
  border: solid 1px #000 !important;
  background-color: #e5e0df;
  outline:none;
}
select{
  background: url(../svg/arrow_select.svg) no-repeat;
  background-position: right 10px center;
  background-size: 12px 8px;
}
.wpcf7-response-output.wpcf7-validation-errors,
.screen-reader-response{
  display: none;
}
span.wpcf7-not-valid-tip{
  font-size: 75% !important;
  padding-top:10px;
}
div.wpcf7-validation-errors{
  background: #ffdede;
	border:none !important;
	margin:0 !important;
	padding:10px !important;
}
input.wpcf7-not-valid{
  background: #ffdede;
}
input:focus{
  border:#000;
}
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder{
  color: #ccc;
  border-color: #583c32;
}
:-ms-input-placeholder {
  color: #ccc !important;
  border-color: #583c32 !important;
}
input:placeholder-shown,
textarea:placeholder-shown{
  color: #ccc;
  border-color: #583c32;
}
.form_confirm input[type=text],
.form_confirm input[type=tel],
.form_confirm input[type=email],
.form_confirm input[type=number],
.form_confirm textarea,
.form_confirm select{
  border:none !important;
  background: none;
  padding-left:0;
}

.form_confirm textarea:focus,
.form_confirm input:focus{
  border:none !important;
  padding-left:0;
  padding-right:0;
  background:#fff;
}
.form_confirm .wpcf7 dl dt{
  vertical-align:top;
  padding:10px 0;
}
.form_confirm .wpcf7 .btn_box dt{
  padding:0;
}
.form_confirm .wpcf7 .btn_box dt input{
  background-image: url(../svg/arrow_link_r.svg);
  background-repeat:no-repeat;
  background-position: 15px center;
  background-size: 12px 8px;
}
.form_confirm .form_step .wpcf7c-elm-step1,
.form_step .wpcf7c-elm-step2{
  display:none;
}
.form_confirm .form_step .wpcf7c-elm-step2{
  display:block;
}
select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
select::-ms-expand{
    display: none;
}

/** JS **/
/*****************************************/
.inview{
  opacity: 0;
  transform: translate(0, 5px);
  -webkit-transform: translate(0, 5px);
  -webkit-transition: all 0.8s;
  -moz-transition: all 0.8s;
  -ms-transition: all 0.8s;
  -o-transition: all 0.8s;
  transition: all 0.8s;
}
.inview_show{
  opacity: 1;
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
}
/** HEADER **/
/*****************************************/
header{
  transition: all .2s;
  height: 116px;
  top:-120px;
}
header a{
  text-decoration: none;
    -webkit-transform: rotate(0.028deg);
    -moz-transform: rotate(0.028deg);
    -ms-transform: rotate(0.028deg);
    -o-transform: rotate(0.028deg);
    transform: rotate(0.028deg);
}
header .inner{
  width: auto;
}
header .reservation_btn,
header .nav{
  position: absolute;
  top:58px;
  font-size: 92%;
}
header .reservation_btn{
  left:40px;
}
header .reservation_btn a:before{
  content:"";
  display:inline-block;
  width:19px;
  height:13px;
  background:url(../svg/icon_raisin.svg) no-repeat;
  background-size:19px auto;
  margin-right:10px;
  vertical-align:-2px;
}
header .reservation_btn .is_sp{
	display:none;
}
header .nav{
  right: 81px;
}
header .nav a{
  display: inline-block;
}
header .nav a::after{
  content: "|";
  display: inline-block;
  margin: 0 20px;
}
header h1 {
  text-align: center;
  padding: 40px 0 25px;
}
header h1 img{
  width:170px;
  margin-bottom: 10px;
}
header h1 strong{
  display: block;
  letter-spacing: 1.5px;
}

.small_header header{
  position: fixed;
  top:0;
  left:0;
  width: 100vw;
  background-color:rgba(255,255,255,0.96);
  z-index:100;
  height: 78px;
}
.small_header header .inner{
  position: relative;
  width: 100vw;
  box-sizing:  border-box;
}
.small_header header h1 {
  padding: 15px 0 0;
}
.small_header header .reservation_btn,
.small_header header .nav{
  position: absolute;
  top:31px;
}
.small_header header h1 img{
  margin-bottom: 6px;
}
.small_header header h1 strong{
  font-size: 85%;
}

  @media only screen and (min-width: 768px) {
    header .inner{
      position:relative;
    }
  }
  @media only screen and (min-width: 1100px) {
    header .inner{
      min-width:1100px;
      position:relative;
    }
  }

  @media only screen and (max-width: 768px) {
    header{
      width: 100vw;
      height: 100px;
    }
    header a img{
      transition: all  .1s ease;
    }
    header h1 {
      padding: 30px 0;
    }
    header h1 img{
      width: 52%;
      height: auto;
      margin-bottom:2%;
    }
    header h1 strong{
      font-size: 0.8rem !important;
    }
    header .nav{
      background: #583c32;
      position: fixed;
      top:0;
      left:0;
      width: 100vw;
      height: 100vh;
      z-index:10000;
      padding: 30px;
      display: none;
    }
    header .nav li{
      display: block;
      border-bottom: dotted 1px #a2938e;
    }
    header .nav a{
      color: #fff;
      padding: 30px 0;
      line-height: 1;
    }
    header .nav nav ul li:not(:last-child):after{
      display: none;
    }
    header .reservation_btn{
      left: 15px;
      top: 17px;
    }
    header .reservation_btn a{
      width: 20px;
      height: 66px;
      display:block;
      position:relative;
    }
    header .reservation_btn a span{
      display:none;
    }
	header .reservation_btn .is_sp{
		display:block;
		width:80px;
		padding-top:42px;
	}
    header .reservation_btn a:before{
      position:absolute;
      top:15px;
      left:12px;
      display:block;
      width:28px;
      height:21px;
      background-size:28px auto;
    }
    .small_header header .reservation_btn{
        top:-11px;
    }

    .small_header header{
      height: 46px;
    }
    .small_header header h1 {
      padding: 8px 0 0;
    }
    .small_header header h1 img{
      width: 36%;
      margin-bottom:2px;
    }
    .small_header header h1 strong{
      font-size: 0.5rem !important;
    }
  }

  @media only screen and (min-width: 500px) and (max-width: 768px) {
    header h1 img{
      width: 30%;
    }
  }
	
/** JS_NAV_BTN **/
/*****************************************/
.js_nav_btn{
  position:absolute;
  right:20px;
  top:58px;
  z-index:0;
  width: 30px;
  height: 14px;
  display: block;
  z-index:10001;
}
.small_header .js_nav_btn{
  top:31px;
}
.js_nav_btn a,
.js_nav_btn a span {
	display: inline-block;
	box-sizing: border-box;
	transition: all .4s;
}
.js_nav_btn a {
	position: relative;
	width: 30px;
	cursor:  pointer;
	height: 66px;
}
.js_nav_btn a span {
	position: absolute;
	width: 3px;
	height: 3px;
	background-color: #583c32;
	border-radius: 3px;
	right:15px;
}
.js_nav_btn a span:nth-of-type(1) {
	top: 0;
}
.js_nav_btn a span:nth-of-type(2) {
	top: 5px;
}
.js_nav_btn a span:nth-of-type(3) {
	top: 10px;
}
.js_nav_btn.active span{
  width: 30px;
  height: 3px;
  right:15px;
}
.js_nav_btn.active span:nth-of-type(1) {
  transform: translateY(5px) rotate(-45deg);
}
.js_nav_btn.active span:nth-of-type(3) {
	transform: translateY(-5px) rotate(45deg);
}
.js_nav_btn.active span:nth-of-type(2){
  opacity: 0;
}
  @media only screen and (max-width: 768px) {
    .js_nav_btn{
      right: 20px;
      top: 17px;
      width: 30px;
      height: 66px;
    }
    .js_nav_btn a span {
	   width: 20px;
	   left: 10px;
    }
    .js_nav_btn a span:nth-of-type(1) {
	   top: 22px;
    }
    .js_nav_btn a span:nth-of-type(2) {
	   top: 29px;
    }
    .js_nav_btn a span:nth-of-type(3) {
	   top: 36px;
    }
    .js_nav_btn.active span{
      width: 23px;
      height: 3px;
      background-color:#fff;
	   left: 10px;
    }
    .js_nav_btn.active a span:nth-of-type(1) {
	   top: 23px;
	   left: 10px;
	   }
    .js_nav_btn.active a span:nth-of-type(2) {
	   top: 29px;
	   right: -10px;
	   }
    .js_nav_btn.active a span:nth-of-type(3) {
	   top: 33px;
	   left: 10px;
	   }
    .small_header .js_nav_btn{
        top:-7px;
    }
  }
/** JS_NAV **/
/*****************************************/
.js_nav{
  position:fixed;
  top:0;
  left:0;
  width:100vw;
  height:100vh;
  background: rgba(255,255,255,.96);
  text-align: center;
  z-index:10000;
  visibility: hidden;
  opacity: 0;
  transition: all  .4s ease;
}
.js_nav.active{
  visibility: visible;
  opacity: 1;
}
.js_nav_inner{
  position: relative;
  width: 100%;
  height: 100%;
}
.js_nav nav{
  position: absolute;
  top:0;
  left:0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 550px;
  height: 540px;
}
.js_nav ul{
  text-align: left;
}
.js_nav ul:first-child{
  margin-bottom: 20px;
}
.js_nav ul:first-child li{
  font-weight: bold;
  border-bottom:solid 1px #978883;
}
.js_nav ul + ul li{
  font-size: 85%;
}
.js_nav li a{
  display:block;
}
.js_nav li a:before {
  display: inline-block;
  content: "-";
  margin-right: 20px;
  color: #978883;
}
.js_nav ul:first-child li{
  padding:20px 0;
}
.js_nav ul + ul li{
  padding:15px 0;
}

  @media only screen and (min-width: 768px) {
		.js_nav li a{
			font-size: 18px;
		}
	}

  @media only screen and (max-width: 768px) {
    .js_nav{
      background: #583c32;
    }
    .js_nav_inner{
      padding:40px;
      width:auto;
      height:80%;
      overflow-y: scroll;
    }
    .js_nav nav{
      width:auto;
      position:  static;
      height:  auto;
    }
    .js_nav a{
      color:#fff;
    }
    .js_nav ul:first-child li{
       padding:6% 0;
    }
    .js_nav ul + ul li{
      padding:4% 0;
    }
  }
/** MODIULE **/
/*****************************************/
.delivery_module{
  background: #fff2f1;
  padding: 40px 0;
}
.delivery_module h1{
  margin-bottom: 15px;
}
.delivery_module h2,
.delivery_module h1 strong{
  font-size: 157%;
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
}
@media all and (-ms-high-contrast:none){
	.delivery_module h2,
	.delivery_module h1 strong{ /* font-weight:bold\0; */ }
}


.delivery_module h1 span{
  font-size: 86%;
  font-family:  'Hiragino ProN', 'Yu Gothic', sans-serif;
}
.delivery_detail{
  border: solid 1px #583c32;
}
.delivery_table{
  display: table;
  width: 100%;
  padding: 21px 0;
}
.delivery_table_cell{
  display: table-cell;
  width: 33%;
  text-align: center;
  vertical-align: middle;
}
.delivery_module h2{
  line-height: 32px;
}
.delivery_table_cell.area{
  background: #725c56;
  color: #fff2f1;
  width: 19.6%;
}
.delivery_table_cell.areas{
  font-size: 114%;
  line-height: 24px;
}
.delivery_table_cell h2 span{
  display: block;
  font-family:  'Hiragino ProN', 'Yu Gothic', sans-serif;
	font-weight: bold;
	letter-spacing:3px;
}
.delivery_time{
  border-top:solid 1px #583c32;
  text-align: center;
  padding: 10px 0;
}
.delivery_time span{
  display:inline-block;
  margin-right:2em;
}
.delivery_option{
  padding: 25px 0;
  overflow: hidden;
  line-height: 26px;
  font-size: 100%;
}
.delivery_option ul{
  width: 52%;
  float: left;
}
.delivery_option ul:last-child{
  width: 48%;
}
.delivery_option ul li{
  overflow: hidden;
}
.delivery_option ul:last-child li{
  text-indent: -1em;
  padding-left: 1em;
}
.delivery_option ul li span,
.delivery_option ul li p{
  display: inline-block;
  vertical-align: top;
}
.delivery_option ul li span{
  width: 28%;
}
.delivery_option ul li p{
  width: 63%;
}

  @media only screen and (max-width: 768px) {
    .delivery_module h1 span{
      font-size: 80%;
      display:block;
      padding-top:5px;
    }
    .delivery_module h2{
      line-height: 26px;
      margin-bottom:15px;
    }
    .delivery_table{
      display: block;
      overflow:hidden;
      padding:20px;
      box-sizing:  border-box;
      font-size: 80%;
    }
    .delivery_table_cell{
      display: block;
      width: 100%;
    }
    .delivery_table_cell.area,
    .delivery_table_cell.areas{
      display: table-cell;
    }
    .delivery_table_cell.area{
      width:30%;
    }
    .delivery_table_cell.areas{
      text-align:left;
      width:60%;
      padding:0 20px;
      box-sizing:border-box;
    }
    .delivery_time{
      padding:15px 20px;
      font-size: 86%;
      line-height:18px;
    }
    .delivery_time span{
       display:block;
       margin-right:0;
    }
    .delivery_option ul{
      width: 100%;
      float: none;
    }
    .delivery_option{
      padding-bottom:0;
      font-size: 90%;
    }
    .delivery_option ul:first-child{
      margin-bottom:15px;
    }
    .delivery_option div,
    .delivery_option ul li{
      line-height:18px;
    }
    .delivery_option ul li span{
      width: 33%;
    }
    .delivery_option ul li p{
      width: 67%;
    }
  }
/** FOOTER **/
/*****************************************/
footer{
  background: #583c32;
  color: #a3948f;
  text-align: left;
  padding: 40px 0 60px;
  position:relative;
}
footer .inner{
  position: relative;
  overflow: hidden;
}
footer a{
  color: #fff;
}
footer ul{
  width: 218px;
  float: left;
  font-size: 78.5%;
  line-height: 26px;
}
footer ul:first-child{
  font-size: 92.8%;
}
.footer_sns{
  position: absolute;
  right:0;
}
.sns img{
  width: 24px;
  height: 24px;
}
.sns {
  display: inline-block;
}
.footer_sns .sns:first-child{
  margin-right: 40px;
}
.copyright{
  clear: both;
  font-size: 71%;
  padding-top: 40px;
}
.pagetop{
  position:absolute;
  top:-32px;
  right:40px;
  width:64px;
  height:64px;
  opacity: 0;
	transition: all .4s;
}
.pagetop a{
  display:table;
  width:100%;
  height:100%;
  background:#583c32;
  border-radius:32px;
}
.pagetop a span{
  display:table-cell;
  vertical-align:middle;
  text-align:center;
  color:#fff;
  font-size:10px;
  line-height:12px;
}
.pagetop a span i{
	font-style:normal;
}
.pagetop a span:before{
  display:block;
  margin:-4px auto 4px;
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 4px 6px 4px;
  border-color: transparent transparent #ffffff transparent;
}
.pagetop.floating{
  position:fixed;
  bottom:60px;
  top:auto;
  opacity: 1;
	transition: all .4s;
}
.pagetop.fixed{
  opacity: 1;
}
  @media only screen and (max-width: 768px) {

	.pagetop{
		width:30px;
		height:30px;
		right:10px;
		top:-15px;
	}
	.pagetop.floating{
		bottom:50px;
	}
	.pagetop a span i{
		display:none;
	}
	.pagetop a span:before{
		margin-top:2px;
	}
    footer{
      padding:40px 0;
    }
    footer nav ul{
      width:50%;
    }
    footer nav ul:nth-of-type(3){
      display:none;
    }
    footer nav ul li{
      display: block;
      text-align: left;
    }
    footer .footer_sns{
      clear:both;
      position:static;
      padding-top:20px;
    }
    .footer_sns .sns:first-child{
      margin-right: 15px;
    }
    .copyright{
      text-align:center;
    }
  }

/** CONTENT **/
/*****************************************/
.is_top{
  display: none;
}
.main section:first-child .inner{
  padding-top:8px;
}
.main{
  padding-top: 10px;
}
.small_header .main{
  padding-top: 116px;
}
.main .inner{
  padding: 63px 0 90px;
}
.main p{
  line-height: 30px;
  text-align: justify;
}
.hide{
  visibility:hidden;
  opacity: 0;
  transition: all  .8s ease;
}
.show{
  visibility:visible;
  opacity: 1;
}
  @media only screen and (max-width: 768px) {

    .main .inner{
      padding:0 20px 60px;
    }
    .main p{
      line-height: 24px;
    }
    .main h1,
    .main h2,
    .main h3,
    .main h4{
      font-weight:bold;
    }
    .home .main .inner{
      padding-top:40px;
    }
  }

/** MAIN_NAV **/
/*****************************************/
.anchors{
  padding-top:5px;
}
.main nav{
  padding-bottom: 72px;
  text-align:center;
}
.main nav li{
  display:inline-block;
}
.main nav li a{
  border-bottom:dotted 1px #583c32;
  margin-bottom: 3px;
  padding: 0 0 6px;
  margin: 0 18px;
}
.main nav li.active a{
  border-bottom:solid 1px #583c32;
  margin-bottom: 0;
}

  @media only screen and (min-width: 768px) {
    .main nav li a:hover{
      border-bottom:solid 1px #583c32;
      margin-bottom: 0;
    }
  }


.main nav ul li:not(:last-child):after{
  display: none;
}
  @media only screen and (max-width: 768px) {
    .main nav{
      padding-bottom: 20px;
    }
  }
/** SECTION_HEADER **/
/*****************************************/
.section_header{
  text-align: center;
  padding: 0 0 65px;
}
.section_header.left,
.section_header.left p{
  text-align: left;
}
.section_header.right,
.section_header.right p{
  text-align: right;
}
.section_header h1{
  font-size: 171%;
  letter-spacing: 5px;
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  line-height: 1;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
}
@media all and (-ms-high-contrast:none){
	.section_header h1{ /* font-weight:bold\0; */ }
}

.section_header p{
  text-align:center;
  padding-top:50px;
  font-size:114%;
}
  @media only screen and (max-width: 768px) {
    .section_header{
      padding-bottom:30px;
    }
    .section_header h1{
      font-size: 132%;
      letter-spacing: 1px;
    }
    .section_header p{
      padding-top:20px;
      font-size:86%;
    }
  }
/** BTN_BOX **/
/*****************************************/
.section_footer{
  clear: both;
}

/*レイズン・ウィッチ  Shopifyリンクボタン*/
.section_footer.raisin-ec {
	margin-bottom: 30px;
}


.btn_box{
  clear: both;
  min-height: 43px;
  text-align: center;
}
.btn_box.left{
  text-align: left;
}
.btn_box.right{
  text-align: right;
}
.btn_box a.noarrow span:after{
  display: none;
}
.btn_box a{
  text-decoration: none;
}

  @media only screen and (min-width: 768px) {
    .btn_box a:hover span{
      background: #583c32;
      color: #fff;
    }
    .btn_box a:hover span:after{
      background: url(../svg/arrow_link_w.svg) no-repeat;
    }
}


.btn_box a span{
  display: inline-block;
  line-height: 43px;
  border: solid 1px #583c32;
  min-width: 245px;
  font-size: 114%;
  text-align: center;
	transition: all  .4s ease;
      padding: 15px 30px;
	letter-spacing: 1px;
}

.btn_box a span.shopify-link {
	margin: 30px 0 0;
}

.btn_box.send input[type=submit]:after,
.btn_box a span:after,
.btn_box.back a span:before{
  content:"";
  display: inline-block;
  margin-left: 15px;
  vertical-align: middle;
  background: url(../svg/arrow_link.svg) no-repeat;
  background-size: 5px auto;
  width: 5px;
  height: 12px;
}
.btn_box.back a span:before{
  background: url(../svg/arrow_link_r.svg) no-repeat;
  margin-right:10px;
  margin-left:-10px;
}
.btn_box.back a span:after{
  display:none;
}
.btn_box.small a span{
  min-width: 165px;
  font-size: 92%;
  line-height: 33px;
}
.btn_box.form input[type=submit].wpcf7c-elm-step2,
.btn_box.send input[type=submit],
.btn_box.bgcolor a span{
  background:#583c32;
  color:#fff;
}
.btn_box.bgcolor a span:after{
  display:none;
}
.btn_box.form input[type=submit].wpcf7c-elm-step2,
.btn_box.send input[type=submit]{
  background-image: url(../svg/icon_send.svg);
  background-size: 12px auto;
  background-repeat:no-repeat;
  background-position:right 60px center;
}

.btn_box.form input[type=submit].wpcf7c-elm-step1{
  background: #583c32 url(../svg/arrow_link_w.svg) no-repeat;
  background-size: 5px auto;
  color: #fff;
  background-position:right 70px center;
}
.form_confirm .btn_box.form input[type=submit].wpcf7c-elm-step2{
  margin-left:40px;
  background-position:right 50px center;
}
.btn_box.form input[type=submit].wpcf7c-elm-step1:disabled{
	background:#ccc;
	border-color:#ccc;
	cursor:default;
}
  @media only screen and (max-width: 768px) {

    .btn_box.left{
      text-align:center;
    }
    .btn_box a span{
      height:38px;
      line-height:38px;
      min-width: 60%;
      font-size:94%;
	  padding: 10px 15px;
    }
    
    .btn_box a span.shopify-link {
		margin: 20px 0 0;
	}

    .btn_box.small a span{
      height:30px;
      line-height: 30px;
      min-width: 43%;
    }
	.btn_box.form input[type=button],
	.btn_box.form input[type=submit]{
		width:100%;
	}
	.form_confirm .contact_form .btn_box.form dt,
	.form_confirm .contact_form .btn_box.form dd{
		display:inline-block;
	}
	.form_confirm .contact_form .btn_box.form dt{
		width:40%;
	}
	.form_confirm .contact_form .btn_box.form dd{
		width:58%;
	}
	.form_confirm .btn_box.form input[type=submit].wpcf7c-elm-step2{
  		margin-left:0;
  		background-position:right 20px center;
		border-radius:0;
	}
  }

/** TOP **/
/*****************************************/
.home .is_top{
  display: inline;
}
.mv_gallery{
  width: 1108px;
  margin: auto;
}
.mv_gallery img{
  width: 1108px;
}
.mv_gallery .slick-dots{
  bottom:-20px;
}
.mv_copy{
  text-align: center;
  padding: 35px 0 10px;
  letter-spacing: 1px;
}
.mv_copy h1{
  font-size: 157%;
  margin-bottom: 15px;
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
}
@media all and (-ms-high-contrast:none){
	.mv_copy h1{ /* font-weight:bold\0; */ }
}


.slick-dotted.slick-slider{
	margin-bottom:0;
}
  @media only screen and (max-width: 768px) {
    .mv_gallery{
      width: 100%;
      height:  auto;
    }
    .img_box .img_inner{
      margin:0 -13.5%;
    }
    .mv_gallery img{
      width: 127%;
    }
    .mv_gallery .slick-list{
      overflow: hidden;
    }
    .slick-arrow{
      display: none !important;
    }
    .mv_gallery .slick-dots{
      bottom:-24px;
    }
    .slick-dots li{
      margin: 0;
    }
    .mv_copy {
      padding: 15px 0 0;
    }
    .mv_copy h1{
      font-size: 130%;
      margin-bottom:6px;
    }
    .mv_copy h2{
      font-size: 81.25%;
    }
  }
.home .products{
  padding-top: 35px;
}
.home .about h2{
  font-size: 157%;
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  margin-bottom: 35px;
  line-height: 30px;
}
@media all and (-ms-high-contrast:none){
	.home .about h2{ /* font-weight:bold\0; */ }
}


.home section:not(:last-child){
  border-bottom: solid 1px #583c32;
}
.home section.mv{
  border-bottom: none;
}
  @media only screen and (max-width: 768px) {
    .home .main{
      padding-top: 0;
    }
    .home.small_header .main{
      padding-top:64px;
    }
    .anchors{
      padding: 0 5%;
    }
    .main .anchors li{
      width: 44.5%;
      margin:0 2% 20px;
    }
    .main .anchors li a{
      width: 100%;
      margin: 0;
      font-size: 75%;
      display:block;
    }
    .home .products{
      padding-top: 0;
    }
    .home .products .inner{
      padding-top: 60px;
    }
    .home .about h2{
      /* padding-left:20px; */
      margin-bottom:20px;
    }
  }
/** PRODUCT_ITEM **/
/*****************************************/
.product_category {
  overflow: hidden;
}
.product_category article{
  float: left;
  width: 250px;
  height:260px;
}
.product_category article:not(:nth-of-type(4n)){
  margin: 0 33px 0 0;
}

.product_thumbnail{
  width: 250px;
  height: 167px;
  overflow: hidden;
  margin-bottom: 10px;
}
.product_category article img{
  width: 100%;
  height: auto;
}
.product_tag{
  font-size: 78.5%;
  line-height: 1;
  color: #96807a;
  display: inline-block ;
  padding: 5px 0;
  margin-bottom: 5px;
}
.product_tag.special{
  background: #583c32;
  color: #fff;
  padding: 5px 15px;
}

.inview h1.product_title {
	line-height: 1.6;
}

.product_category h2{
  text-align: left;
  font-size: 157%;
  letter-spacing: 3px;
  margin-bottom: 45px;
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  line-height: 1.3;
}
@media all and (-ms-high-contrast:none){
	.product_category h2{ /* font-weight:bold\0; */ }
}



.product_category h3 {
  line-height: 36px;
}
/* .product_category h3 a:after{
  content: "";
  background: url(../svg/arrow_link.svg) no-repeat;
  background-size: 17px 17px;
  width: 17px;
  height: 17px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 10px;
} */
.clear_line{
  display:block;
  height:1px;
  width:100%;
  clear:both;
}

#product-special article{
  height:330px;
  width: auto;
}
#product-special .product_thumbnail{
  width: 350px;
  height: 230px;
  overflow: hidden;
  margin-bottom: 10px;
}
.post-type-archive-product .product_category:not(:last-child) {
  margin-bottom:20px;
}

  @media only screen and (max-width: 768px) {
    .product_category .product_raisin{
      width: auto;
    }
    .product_category .product_raisin h2{
      font-size: 180%;
    }
    .product_category{
      width: auto;
      padding: 0 0 10px;
    }
    .product_category article:not(:nth-of-type(4n)),
    .product_category article{
      width: 47.5%;
      margin-bottom:30px;
    }
    .product_category article{
    	height: auto;
    }
    .product_category article:not(:nth-of-type(4n)){
      margin-right: 5%;
    }
    .product_category article:nth-of-type(2n){
      margin: 0 0 30px 0;
    }
    .product_category article h1{
      line-height:18px;
    }
    .product_category article h3 a:after{
      display: none;
    }
    .product_thumbnail{
      width: 100%;
      height: auto;
      overflow: hidden;
      margin-bottom: 0;
    }
    .product_category h2{
      margin-bottom:20px;
      font-size:140%;
      letter-spacing:2px;
    }
    .product_category h3 {
      line-height: 20px;
    }
	#product-special article {
		width:100%;
    	height:250px;
	}
	.product_tag{
	  margin-bottom: 0;
	}
  }
/** SPECIAL_PRODUCT **/
/*****************************************/
.special_product{
  overflow: hidden;
  margin-bottom: 52px;
}
.special_product_text{
  float: left;
  width: calc(100% - 553px);
  box-sizing: border-box;
  padding-right: 70px;
}
.special_product_text h1{
  font-size: 157%;
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  margin-bottom: 35px;
  line-height: 1.3;
}
@media all and (-ms-high-contrast:none){
	.special_product_text h1{ /* font-weight:bold\0; */ }
}


.special_product_text p{
  margin-bottom: 50px;
}
.special_product_image{
  float: right;
  width: 553px;
  display: block;
}
.special_product_image img{
  width: 100%;
}
.post-type-archive-product .special_product{
  margin-bottom: 75px;
}
  @media only screen and (max-width: 768px) {

    .special_product{
      margin-bottom: 60px;
    }
    .special_product_image,
    .special_product_text{
      float:none;
      width:100%;
      box-sizing:border-box;
    }
    .special_product_image{
      margin-bottom:10px;
    }
    .special_product_text{
      padding:0;
    }
    .special_product_text h1{
      margin-bottom:20px;
    }
    .special_product_text p{
      margin-bottom: 20px;
      line-height: 24px;
    }
  }
/** IMG_BOX **/
/*****************************************/
.img_box{
  width: 100%;
  height: 100%;
  padding: 0.66666667%;
  display:  block;
}
.img_box .img_inner{
  width: 100%;
  height: 100%;
}
  @media only screen and (min-width: 768px) {
		.img_box{
			overflow:hidden;
		}
	.img_box .img_inner{
		overflow:hidden;
		}
		.img_box .img_inner a{
			display:block;
				width: 100%;
				height: 100%;
			overflow:hidden;
		}
	}
/** NEWS **/
/*****************************************/
.news .product_tag{
  padding:0;
  margin-bottom: 10px;
}
.news.product_category article:not(:nth-of-type(4n)){
  margin-bottom:50px;
}
  @media only screen and (max-width: 768px) {
	.news .product_tag{
	  margin-bottom: 5px;
	}
  }
/** SHOP **/
/*****************************************/
.shop .section_header h1{
  font-size: 157%;
}
.shop_section{
  overflow: hidden;
}
.shop_section:not(:last-child){
  margin-bottom: 54px;
}
.shop_section .shop_img{
  float:right;
  width: 500px;
}
.shop_details {
  float: left;
  width: calc(100% - 500px);
  box-sizing: border-box;
  padding-right: 70px;
}
.shop_details h2{
  font-size: 129%;
  line-height: 1.6;
  letter-spacing:1px;
  margin-bottom: 25px;
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
}


/*カフェのカレンダーのみ非表示に 2020.07.21 橋本*/
/*
#shimbashi_cafe .shop_calender_section .shop_calender_left,
#shimbashi_cafe .shop_calender_section .shop_calender_box {
	display: none;
}
*/

@media all and (-ms-high-contrast:none){
	.shop_details h2{ /* font-weight:bold\0; */ }
}


.shop_details dl{
  margin-bottom: 10px;
}
.shop_details div dl:last-child{
  margin-bottom:80px;
}
.shop_details .btn_box{
  padding-top: 20px;
}
.shop_details dt,
.shop_details dd{
  display: inline-block;
  vertical-align: top;
  line-height: 25px;
}
.shop_details dt{
  width:26%;
}
.shop_details dd{
  width:70%;
}
  @media only screen and (max-width: 768px) {
    .shop .section_header h1{
      text-align:center;
    }
    .shop_section{
      padding: 0;
      border-bottom: none;
      text-align:center;
    }
    .shop_section:not(:last-child){
      margin-bottom: 40px;
    }
    .shop_details,
    .shop_section .shop_img{
      float:none;
      width: 100%;
      /*width: calc(100vw - 40px);*/
      margin:auto;
      box-sizing:border-box;
    }
    .shop_section .shop_img{
      margin-bottom:10px;
    }
    .shop_details {
      text-align:left;
      padding-right:0;
      /* margin-bottom: 20px; */
    }
    .shop_details h2{
      margin-bottom: 5px;
      font-size: 120%;
      letter-spacing:2px;
    }
    .shop_details dl{
      margin-bottom:5px;
    }
    .shop_details dt{
      width:24.5%;
    }
    .shop_details dd{
      width:73%;
      font-size:90%;
    }
    .shop_details div dl:last-child{
      margin-bottom:0;
    }

    .home .shop_details,
    .home .shop_section .shop_img{
      width: calc(100vw - 80px);
    }
    .home .shop_details .btn_box{
      text-align:right;
    }

    .archive .shop_details .btn_box a:first-child span{
      margin-bottom:15px;
    }
    .archive .shop_details .btn_box a + i{
      font-size:70%;
      display:block;
      margin-bottom:25px;
      margin-top:8px;
    }
  }



  /** PAGE_SHOP **/
  /*****************************************/
  #page-shops .shop_img{
    width: 660px;
    float: none;
    margin-bottom: 20px;
  }
  .shop_header{
    text-align: center;
  }
  #page-shops .shop_details{
    width: 660px;
    float: none;
    margin: auto;
    padding: 30px 0 50px;
  }
  .shop_calender_section{
    clear:both;
    padding-top:110px;
    padding-bottom:  20px;
    overflow:hidden;
    border-bottom: solid 1px #efefef;
  }
  .shop_calender_left{
    float:left;
    width: 313px;
  }
  .shop_calender_section h3{
    font-size:130%;
    font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
    letter-spacing:1px;
    line-height:26px;
    margin-bottom:40px;
  }
  .shop_calender_status li{
    font-size: 87.5%;
    margin-bottom:20px;
  }
  .shop_calender_status li:before{
    content:"";
    display: inline-block;
    width:20px;
    height: 20px;
    background: #333;
    margin-right: 15px;
    vertical-align: -5px;
  }
  .shop_calender_status li:nth-of-type(1):before{
    background:#f1aeae;
  }
  .shop_calender_status li:nth-of-type(2):before{
    background:#9bd6ff;
  }
  .shop_calender_status li:nth-of-type(3):before{
    background:#ffd117;
  }
  .shop_calender_box{
    float:left;
  }
  .shop_calender{
    width: 255px;
    display: inline-block;
    vertical-align: top;
    box-sizing: content-box;
    margin-bottom: 30px;
  }
  .shop_calender:nth-of-type(2){
    padding: 0 6px;
  }
  .shop_calender h4{
    font-size:128%;
    line-height:28px;
  }
  .shop_calender table,
  .shop_calender th,
  .shop_calender td{
    border-collapse:collapse;
    border:solid 1px #583c32;
    text-align: center;
  }
  .shop_calender table{
    border:solid 2px #583c32;
    margin-top: 6px;
  }
  .shop_calender th{
    padding: 5px;
    border-bottom:solid 2px #583c32;
  }
  .shop_calender td{
    padding: 8px 8px;
  }
	.shop_calender td.week_0{
    background:#f1aeae;
  }
	.shop_calender td.week_6{
    background:#9bd6ff;
  }

  .shop_calender td.day_status_1{
    background:#f1aeae;
  }
  .shop_calender td.day_status_2{
    background:#9bd6ff;
  }
  .shop_calender td.day_status_3{
    background:#ffd117;
  }

  .shop_calender_caption{
    padding: 10px 0;
    font-size: 75%;
    line-height: 1.4;
  }


  @media only screen and (max-width: 768px) {
    .shop_calender_section{
      padding-top:0;
      padding: 0;
      transition: all  .4s ease;
      opacity:0;
      height:0;
      border-bottom:none;
      visibility:hidden;
    }
    .shop_section:not(:last-child) .shop_calender_section{
      border-bottom: solid 1px #efefef;
    }


    .shop_section.active .btn_box a:hover span{
      background: #583c32;
      color: #fff;
    }
    .shop_section.active .shop_calender_section{
      padding: 20px 0;
      max-height:999999px;
      height:auto;
      opacity:1;
      visibility:visible;
    }
    .shop_calender_section h3{
      font-size: 110%;
      margin-bottom:20px;
      text-align:center;
      letter-spacing:  0;
    }
    .shop_calender_section h3 br{
      display:none;
    }
    .shop_calender_status li{
      text-align:left;
      padding:0 20px;
      margin-bottom:10px;
    }
    .shop_calender{
      width: 90%;
      margin-bottom:0;
    }
    .shop_calender:not(:last-child){
      margin-bottom:20px;
    }
    .shop_calender_left{
      float:none;
      width:100%;
      margin-bottom: 20px;
    }
    .shop_calender table{
      width:100%;
    }
    .shop_calender_caption{
      font-size: 85%;
      text-align:left;
      padding-bottom:0;
    }
  }


/** SINGLE_NEWS **/
/*****************************************/
.section_header.none h1::after{
  display: none;
}
.single_time{
  text-align: center;
  font-size: 87.5%;
  padding: 0 0 20px;
}
.single_content{
	max-width: 720px; /*20181009追加*/
  margin: 0 auto 80px;
  text-align: center;
}
.single_content img{
  max-width: 720px;
  margin: 0 -30px;
}
.single_content ul,
.single_content ol,
.single_content h1,
.single_content h2,
.single_content h3,
.single_content h4,
.single_content h5,
.single_content h6,
.single_content p,
.single_content blockquote{
  width: 660px;
  margin: 0 auto 20px;
  text-align: left;
}

.single_content h1,
.single_content h2,
.single_content h3,
.single_content h4,
.single_content h5,
.single_content h6{
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  margin-bottom:40px;
}
@media all and (-ms-high-contrast:none){
	.single_content h1,
	.single_content h2,
	.single_content h3,
	.single_content h4,
	.single_content h5,
	.single_content h6{ /* font-weight:bold\0; */ }
}


.single_content h1{
	font-size:2rem;
}
.single_content h2{
	font-size:1.4rem;
}
.single_content h3{
	font-size:1.2rem;
}
.single_content h4{
	font-size:1rem;
}
.single_content h5{
	font-size:0.9rem;
}
.single_content h6{
	font-size:0.8rem;
	font-weight:bold;
}
.single_content a{
	text-decoration:underline;
}

.product_content ol,
.product_content ul,
.single_content ol,
.single_content ul{
	margin:40px auto;
}
.product_content ol li,
.product_content ul li,
.single_content ol li,
.single_content ul li{
	margin-bottom:10px;
	line-height:20px;
}
.product_content ol li,
.single_content ol li{
	list-style:decimal inside;
}
.product_content ul li,
.single_content ul li{
	list-style:disc inside;
}
.product_content blockquote,
.single_content blockquote{
	background:#efefef;
	padding:20px 20px 1px;
	margin-bottom:40px;
}
.product_content blockquote p,
.single_content blockquote p{
	font-size:0.7rem;
	line-height:18px;
}
.product_content strong,
.single_content strong{
	font-weight:bold;
}
.product_content em,
.single_content em{
	font-style:italic;
}
.product_content br.is_pc,
.single_content br.is_pc{
	display:block;
}
.product_content br.is_sp,
.single_content br.is_sp{
	display:none;
}

  @media only screen and (max-width: 768px) {
  	.single_content ul,
	.single_content ol,
	.single_content h1,
	.single_content h2,
	.single_content h3,
	.single_content h4,
	.single_content h5,
	.single_content h6,
	.single_content p,
	.single_content blockquote{
      width: auto;
      word-break:break-all;
    }
    .single_content p img{
      max-width:100%;
      height: auto;
      margin:0;
    }
    .single_content p a{
      text-decoration:underline;
    }
	.product_content br.is_pc,	
    .single_content br.is_pc{
		display:none;
	}
	.product_content br.is_sp,
	.single_content br.is_sp{
		display:block;
	}
  }



.wp-pagenavi a, .wp-pagenavi span{
	padding:10px 12px !important;
	color:#583c32;
}
.wp-pagenavi a:hover{
	border-color:#583c32 !important;
}
.wp-pagenavi span.pages{
	border:none;
	font-size:12px;
}
.wp-pagenavi span.current{
    background: #583c32;
	color:#fff;
	border-color:#583c32 !important;
}
/** SINGLE_PRODUCT **/
/*****************************************/
.product.single .inner{
  padding-top: 0;
}
.product.single h1{
  font-size: 187.5%;
  text-align: center;
}
.product_image{
  width:1100px;
  margin: 0 0 40px;
}
.product_content{
  width:860px;
  margin:auto;
  border-bottom: solid 1px #583c32;
  padding-bottom: 50px;
}
.product_content ul,
.product_content ol,
.product_content h1,
.product_content h2,
.product_content h3,
.product_content h4,
.product_content h5,
.product_content h6,
.product_content p{
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  line-height:48px;
}
@media all and (-ms-high-contrast:none){
	.product_content ul,
	.product_content ol,
	.product_content h1,
	.product_content h2,
	.product_content h3,
	.product_content h4,
	.product_content h5,
	.product_content h6,
	.product_content p{ /* font-weight:bold\0; */ }
}

.product_content p{
  text-align:center;
  font-size: 127%;
}
.product_content ul,
.product_content ol{
  font-size: 115%;
  line-height:62px;
}
.product_content strong{
	font-weight:bold;
}
.product_content em{
	font-style:italic;
}
.product_detail{
  width:740px;
  margin:auto;
  padding:55px 0 20px;
  box-sizing:border-box;
}
.product_detail dl{
  font-size: 92%;
  overflow: hidden;
  margin-bottom:30px;
}
.product_detail dt,
.product_detail dd{
  vertical-align:top;
  line-height:25px;
}
.product_detail dt{
  width: 200px;
  float: left;
}
.product_detail dd{
  width: 400px;
  float: left;
}
.product_caution{
  width:780px;
  border:solid 1px #583c32;
  padding:30px 40px 40px;
  margin:0 auto;
}

.breadcrumb{
  font-size: 86%;
  border-bottom:solid 1px #ccc;
  padding-bottom:15px;
  margin-bottom: 40px;
}
.breadcrumb .inner{
  padding:0 !important;
}
.breadcrumb span:after,
.breadcrumb strong:after{
  content:">";
  margin: 0 10px;
}
.breadcrumb strong:last-child:after{
  display: none;
}

.inner.same_cat{
}

@media only screen and (max-width: 768px) {
  .breadcrumb{
    display:none;
  }
  .product_detail dt,
  .product_detail dd{
    float: none;
    width: auto;
  }
  .product_image{
    width: calc(100% + 40px);
    margin:0 -20px 20px;
  }
  .product_detail,
  .product_caution,
  .product_content{
    width:100%;
    box-sizing:border-box;
  }
  .product_content {
    padding-bottom:0;
    border-bottom:none;
  }
  .product_content p{
    line-height:32px;
    text-align:left;
    font-size:110%;
  }
  .product_detail{
    padding:30px 0;
  }
  .product_detail dl{
    margin-bottom:0;
  }
  .product_detail dl:not(:last-child){
    margin-bottom:30px;
  }
  .product_detail dt{
    width:auto;
    margin-bottom:6px;
  }
  .product_detail dd{
    width:auto;
    border-left:solid 1px #583c32;
    padding-left:20px;
  }
  .product_caution{
    padding:20px;
  }
  .product_caution p{
    font-size:80%;
    line-height:22px;
  }
}

/** SPECIAL_PAGE_PRODUCT **/
/*****************************************/
.special_page .product_content{
  border:none;
  padding-bottom: 35px;
}
.special_page .product_content p{
  text-align:left;
  font-size:117%;
}
.special_page .product_detail{
  width: 860px;
}
.special_page .product_detail img{
  width:100%;
  margin-bottom:  30px;
}
.special_page .product_detail dt{
  width: 260px;
}
.special_page .product_detail dd{
  width: 600px;
}
.product_special_option{
  padding-top:80px;
  width:860px;
  margin:auto;
  margin-bottom: 80px;
}
.product_special_option h2{
  text-align:center;
  font-size:171%;
  letter-spacing:1px;
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  margin-bottom:  40px;
}
@media all and (-ms-high-contrast:none){
	.product_special_option h2{ /* font-weight:bold\0; */ }
}

.column2{
  overflow:hidden;
  margin-bottom:40px;
}
.column2 img{
  width:380px;
  float:left;
}
.column2 dl{
  width:480px;
  float:left;
  padding-left:50px;
  box-sizing:border-box;
  padding-top:40px;
}
.column2 dt{
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  font-size:145%;
  margin-bottom:20px;
}
@media all and (-ms-high-contrast:none){
	.column2 dt{ /* font-weight:bold\0; */ }
}

.column2 dd{
  line-height:32px;
}
.column2.right dl,
.column2.right img{
  float:right;
}
.column2.right dl{
  padding-right:50px;
  padding-left:0;
}

	@media only screen and (max-width: 768px) {
		
		.special_page .product_content{
		  padding-bottom: 25px;
		}

		.special_page .product_detail img{
		  width:100%;
		  margin-bottom:  30px;
		}
		.product_special_option,
		.special_page .product_detail,
		.special_page .product_detail dd,
		.special_page .product_detail dt{
		  width: auto;
		}
		.column2 dl,
		.column2.right dl,
		.column2.right img,
		.column2 img{
		  width: 70%;
		  float:none;
		  padding:0;
		}
		.column2 dl,
		.column2.right dl,
		.column2{
			width:auto;
			text-align:center;
		}
		.column2 dl dt,
		.column2.right dl dt,
		.column2 dl dd,
		.column2.right dl dd{
			text-align:left;
		}
		.column2 img{
			margin-bottom:20px;
		}
	}

/** PAGE_ABOUT **/
/*****************************************/
.about_section{
  margin-bottom:30px;
  overflow:hidden;
}
.about_section:last-child{
  margin-bottom: 120px;
}
.about_section h2,
.about_section h3,
.about_section h4,
.about_header h3,
.about_stuck_th h4,
.about_stuck_th p,
.about_stuck_td:nth-of-type(2),
.about_stuck_td:last-child h5{
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  line-height:1.3;
}
@media all and (-ms-high-contrast:none){
	.about_section h2,
	.about_section h3,
	.about_section h4,
	.about_header h3,
	.about_stuck_th h4,
	.about_stuck_th p,
	.about_stuck_td:nth-of-type(2),
	.about_stuck_td:last-child h5{ /* font-weight:bold\0; */ }
}
.about_section h2{
  font-size:171%;
  letter-spacing:5px;
  margin-bottom:35px;
}
.about_section h3{
  font-size:142%;
  letter-spacing:4px;
  margin-bottom:35px;
}
.about_section h4{
  font-size:142%;
  line-height:40px;
  margin-bottom:30px;
}
.about_section img{
  float:right;
  width: 508px;
}
.about_section.about_motto{
  margin-bottom:90px;
}
.about_section.about_motto img{
  width:267px;
  margin-right:240px;
}
.about_section .about_text{
  width:530px;
}
.about_section .about_text p{
  font-size:107%;
  line-height:32px;
}
.about_section.about_motto .about_text p{
  font-size:85%;
  margin-bottom:50px;
}
.about_section.about_motto .about_text strong{
  font-size:114%;
}
.about_header {
  padding-bottom:0;
}
.about_header h3{
  font-size:172%;
  text-align:left;
  border-bottom:solid 1px #583c32;
  padding-bottom:35px;
}
.about_stuck_table{
  display:table;
  padding: 60px 0;
  border-bottom:solid 1px #583c32;
  width: 100%;
  border-collapse: separate;
}
.about_stuck_th,
.about_stuck_td{
  display:table-cell;
  vertical-align:middle;
}
.about_stuck_th h4{
  font-size:142%;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  height: 100px;
  min-height: 100px;
  max-height: 140px;
	letter-spacing:2px;
  text-align: center;
  padding:  0 50px;
}
.about_stuck_td:nth-of-type(2){
  width:370px;
}
.about_stuck_td:nth-of-type(2) p{
  font-size:127%;
  line-height:36px;
  padding-left:60px;
}
.about_stuck_td:last-child h5{
  font-size:142%;
  margin-bottom:20px;
}
.about_stuck_td .about_box:not(:last-child){
  margin-bottom:40px;
}

@media only screen and (max-width: 768px) {
  .about_section img{
    float:none;
    width: 100%;
    margin-bottom:10px;
  }
  .about_section h2,
  .about_section h3{
    font-size:130%;
    letter-spacing:2px;
    margin-bottom:10px;
  }
  .about_section h4{
    font-size:110%;
    line-height:28px;
    margin-bottom:20px;
  }
  .about_section.about_motto{
    text-align:center;
  }
  .about_section.about_motto img{
    width:60%;
    margin-right:0;
  }
  .about_section .about_text{
    width:100%;
    text-align:left;
  }
  .about_section.about_motto .about_text p{
    margin-bottom:30px;
    line-height:20px;
  }
  .about_section.about_motto .about_text strong{
    font-size:105%;
  }
  .about_header h3{
    font-size:172%;
    text-align:center;
    border-bottom:none;
    padding-bottom:0;
  }
  .about_stuck_table{
    display:block;
    padding: 30px 0 0;
    border-bottom:none;
  }
  .about_stuck_table:not(:last-child){
    padding-bottom:30px;
  }
  .about_stuck_th,
  .about_stuck_td{
    display:block;
    text-align:center;
  }
  .about_stuck_th h4{
    font-size:130%;
    -webkit-writing-mode:horizontal-tb;
    -ms-writing-mode:horizontal-tb;
    writing-mode:horizontal-tb;
    -webkit-writing-mode:lr-tb;
    -ms-writing-mode:lr-tb;
    writing-mode:lr-tb;
    min-height: 0;
		height:auto;
    text-align: center;
    padding: 0 0 20px;
  }
  .about_stuck_td:nth-of-type(2){
    width:auto;
    padding-bottom:20px;
    border-bottom:solid 1px #583c32;
    margin-bottom:30px;
  }
  .about_stuck_td:nth-of-type(2) p{
    font-size:100%;
    line-height:24px;
    padding-left:0;
    text-align: center;
  }
  .about_stuck_td:nth-of-type(2) p br{
    display:none;
  }
  .about_stuck_td .about_box{
    text-align:left;
  }
  .about_stuck_td h5{
    font-weight:bold;
  }
  .about_stuck_td:last-child h5{
    font-size:120%;
    margin-bottom:10px;
  }
  .about_stuck_td .about_box:not(:last-child){
    margin-bottom:30px;
  }
}

/** PAGE_CONTACT **/
/*****************************************/
.contact_box {
  width: 480px;
  margin: auto;
}
.contact_box .contact{
  border: solid 1px #583c32;
  padding: 31px 0;
}
.contact_box .contact:first-child{
  margin-bottom: 30px;
}
.contact_box .contact p{
  text-align: center;
  font-size: 148%;
}
.contact_box .contact p:first-child{
  font-family: 'Hiragino Mincho ProN', 'Yu Mincho', serif;
}
@media all and (-ms-high-contrast:none){
	.contact_box .contact p:first-child{ /* font-weight:bold\0; */ }
}


.faq_header h2{
    font-size: 171%;
    letter-spacing: 2px;
    font-family: 'Hiragino Mincho ProN', 'Yu Mincho', serif;
    line-height: 1;
}
@media all and (-ms-high-contrast:none){
	.faq_header h2{ /* font-weight:bold\0; */ }
}



.faq{
  border-top:solid 1px #ccc;
}
.contact_qa_list{
  width:720px;
  margin:auto;
}
.contact_qa_list dl{
  border-bottom: dotted 1px #ccbfbd;
}
.contact_qa_list dl:first-child{
  border-top: solid 1px #ccc;
}
.contact_qa_list dt a{
  padding: 33px 0 33px 30px;
  display:block;
  text-decoration:none;
}
.contact_qa_list dt a:after{
  content:"";
  display:inline-block;
  float:right;
  background:url(../svg/arrow.svg) no-repeat;
  background-size: 23px auto;
  width: 23px;
  height: 12px;
  margin-right: 14px;
}
.contact_qa_list dl.active dt a:after{
  transform: scale(1, -1);
}
.contact_qa_list dd{
  max-height:0;
  height:0;
  opacity:0;
  overflow:hidden;
  font-size: 112.5%;
  line-height: 30px;
  transition: all  .4s ease;
  padding:0;
  padding-left:3.1em;
  padding-right:45px;
}
.contact_qa_list dl.active dd{
  max-height:999999px;
  height:auto;
  opacity:1;
  padding: 0px 45px 30px 3.1em;
  transition: all  .4s ease;
}
.contact_qa_list dl dd:after{
  height:0;
  transition: all  .4s ease;
}
.contact_qa_list dl.show dd{
  opacity:1;
  visibility:visible;
}
.contact_qa_list dt a:before{
  content: "Q. ";
}
/*
.contact_qa_list dd a:before{
  content: "A. ";
  color: #b81800;
}
*/

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

    .contact_box{
      width:72%;
    }
    .contact_box .contact{
      padding:10px;
    }
    .contact_box .contact:first-child{
      margin-bottom:20px;
    }
    .contact_box .contact p{
      font-size: 115%;
    }
    .contact_qa_list{
      width:auto;
      margin:auto;
    }
    .faq_header h2{
      font-size: 125%;
    }
    .faq .inner{
      padding-top:40px;
    }
    .contact_qa_list dt a{
      padding-right:50px;
      line-height:24px;
      text-indent:-1.3em;
      padding-top:15px;
      padding-bottom:15px;
    }
    .contact_qa_list dt a:after{
      margin-right:-40px;
    }
    .contact_qa_list dl.active dd{
      padding: 0 20px 20px;
    }
  }

/** PAGE_RECRUIT **/
/*****************************************/
.recruit_wrap{
  width: 740px;
  margin:auto;
  border-bottom:solid 1px #583c32;
}
.recruit_wrap.active{
  padding-bottom:60px;
  border-bottom:none;
}
.recruit .section_header{
  padding-bottom: 40px;
}
.recruit_header {
  margin-bottom: 0;
}
.recruit_header h2 a{
  padding: 30px 0 37px;
  font-size: 157%;
  letter-spacing:1px;
  text-align:center;
  text-decoration: none;
  display: block;
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  position:relative;
}
@media all and (-ms-high-contrast:none){
	.recruit_header h2 a{ /* font-weight:bold\0; */ }
}


.recruit_header:after,
.recruit_header h2 a:after{
  background:#fff url(../svg/arrow.svg) no-repeat;
  content: "";
  width: 23px;
  height: 12px;
  background-size: 23px 12px;
  margin: auto;
  display: block;
  position: absolute;
}
.recruit_header h2 a:after{
  right:25px;
  top:0;
  bottom:0;
}
.recruit_header:after{
  right:0;
  left:0;
  margin:auto;
  opacity:0;
}
.recruit_detail_box{
  padding: 70px 0 18px;
}
.recruit_list{
  width: 720px;
  margin: auto;
  padding-bottom: 30px;
}
.recruit_list dl{
  margin-bottom: 30px;
}
.recruit_form dt,
.recruit_form dd,
.recruit_list dt,
.recruit_list dd{
  display: inline-block;
  vertical-align: top;
  line-height: 30px;
}
.recruit_list dt{
  width: 150px;
}
.recruit_list dd{
  width: 560px;
}
.recruit_header:after{
  opacity:0;
  transition: all .1s ease;
}
.active .recruit_header{
  border-bottom: solid 1px #583c32;
}
.active .recruit_header:after{
  opacity:1;
}
.recruit_detail{
  overflow: hidden;
  max-height: 0;
  height:0;
  opacity:0;
  transition: all .5s ease 0;
}
.active .recruit_detail{
  max-height: 9999px;
  height:100%;
  opacity:1;
  transition: all 2s ease;
}
.active .recruit_header h2 a:after{
  background:#fff url(../svg/arrow.svg) no-repeat;
  transform: scale(1, -1);
}
.active .recruit_header h2 {
  font-weight: bold;
  transition: all 0 ease-in;
  cursor: pointer;
}

  @media only screen and (min-width: 768px) {
    .recruit_header a:hover{
      font-weight: bold;
      transition: all 0 ease-in;
      cursor: pointer;
    }
  }
  @media only screen and (max-width: 768px) {
    .recruit .inner{
      padding:0 0 60px;
    }
    .recruit_wrap{
      width: 100%;
    }
    .recruit_wrap.active{
      padding-bottom:30px;
    }
    .recruit_header h2 a{
      padding: 15px 0 15px;
      font-size: 120%;
    }
    .recruit_header h2 a:after{
      right:10px;
      background-size:18px auto;
      width: 18px;
    }
    .recruit_detail_box{
      padding: 30px 0 18px;
    }
    .recruit_list{
      width: auto;
      padding:0 20px 10px;
      box-sizing:border-box;
    }
    .recruit_list dl{
      display:table;
      margin-bottom:15px;
    }
    .recruit_list dt,
    .recruit_list dd{
      display:table-cell;
      vertical-align:top;
    }
    .recruit_list dt{
      width: 27%;
      line-height:20px;
    }
    .recruit_list dd{
      line-height:20px;
    }
  }

#recruit_form .section_header{
  padding-bottom:20px;
}
#recruit_form  > .inner{
  padding-top:0;
}
.recruit_form {
  margin:auto;
  width:  660px;
  border: solid 1px #583c32;
  padding:  40px;
}
.recruit_form p{
  text-align: center;
}
.recruit_form dl:not(:last-child){
  margin-bottom: 20px;
}
.recruit_form dt{
  width: 340px;
}
.recruit_form dd{
  width: 310px;
  vertical-align: middle;
}
.recruit_form dd label + i,
.recruit_form dd input + i{
  display: block;
  font-size: 75%;
  font-style: normal;
}
.recruit_form dd input,
.recruit_form dd select{
  font-size: 100%;
}
.recruit_form .btn_box{
  padding: 12px 0 0;
}
div.wpcf7 .ajax-loader {
  display:block !important;
  margin-left:auto !important;
}
.recruit_caution{
  background:#f3f3f3;
}
.recruit_caution .inner{
  padding:60px 0;
}
.recruit_caution_box{
  width:48%;
  display:inline-block;
  vertical-align:top;
}
.recruit_caution_box:first-child{
  padding-right:80px;
  box-sizing:border-box;
}
.recruit_caution h3{
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  font-size: 114%;
  letter-spacing:2px;
  margin-bottom: 10px;
}
@media all and (-ms-high-contrast:none){
	.recruit_caution h3{ /* font-weight:bold\0; */ }
}


.recruit_caution p{
  font-size:92%;
}
  @media only screen and (max-width: 768px) {
    .recruit_form {
      width:  100%;
      padding:  20px;
      box-sizing:border-box;
    }
    .recruit_form dt{
      width: 30%;
    }
    .recruit_form dd{
      width: 70%;
      vertical-align: middle;
    }
    .recruit_form .section_footer,
    .recruit_form dl{
      text-align:center;
      width: 85%;
      margin:auto;
    }
    .recruit_form dt,
    .recruit_form dd{
      width:100%;
    }
    .recruit_form dd select,
    .recruit_form dd input{
      border:solid 1px #583c32;
      width:100%;
      padding:5px 15px;
      box-sizing:border-box;
    }
    .recruit_form .section_footer .btn_box input[type=submit]{
      width:100%;
      height:40px;
      background-position: right 60px center;
    }
    .recruit_caution_box{
      width:auto;
      display:block;
      padding:0 20px;
      vertical-align:top;
    }
    .recruit_caution .inner{
      padding:30px 0;
    }
    .recruit_caution_box:first-child{
      padding-bottom:30px;
      padding-right:20px;
    }
  }

/** CONTACT_FORM **/
/*****************************************/
.contact_form{
  width: 740px;
  margin: auto;
  /* padding-bottom: 80px; */
}
.contact_form p{
  text-align: left;
  margin-bottom: 60px;
}
.contact_form dl{
  display:table;
  width:100%;
  margin-bottom: 20px;
}
.contact_form dt,
.contact_form dd{
  display:table-cell;
  vertical-align:middle;
  text-align: left;
}
.contact_form dt{
  width: 200px;
}
.contact_form dd p{
  font-size: 74%;
  margin-bottom: 0;
  line-height: 20px;
}

.contact_form dd p span.bold {
	font-weight: bold;
	color: #900;
}
.contact_form .btn_box.form input[type=button]{
	margin-right:40px;
}

  @media only screen and (max-width: 768px) {
    .contact_form{
      width: 100%;
      margin: auto;
    }
    .contact_form p{
      text-align: left;
      margin-bottom: 60px;
    }
    .contact_form dl{
      display:block;
      margin-bottom: 20px;
    }
    .contact_form dt,
    .contact_form dd{
      display:block;
    }
    .contact_form dt{
      width: 100%;
      font-weight:bold;
    }
    .contact_form dd p{
      font-size: 74%;
      margin-bottom: 0;
      line-height: 16px;
    }
	.contact_form .btn_box.form input[type=button]{
		margin-right:0;
	}

	#page-reservation.form_confirm .contact_form .btn_box.form input{
		vertical-align:top;
	}
	#page-reservation.form_confirm .contact_form .btn_box.form input[type=button]{
		width:40%;
		margin-right:2%;
	}
	#page-reservation.form_confirm .contact_form .btn_box.form input[type=submit]{
		width:58%;
	}
  }
/** PAGE_SUPPLIERS **/
/*****************************************/

.suppliers .section_header + p{
  width: 680px;
  margin: auto;
  margin-bottom: 68px;
}
.suppliers_list{
  padding-bottom: 64px;
  width: 780px;
  margin:  auto;
}
.suppliers_list:after{
  content: "";
  display: block;
  width: 1px;
  height: 1px;
  clear: both;
}
.suppliers_list h2 {
  text-align: center;
}
.suppliers_list h2 span{
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  background: #583c32;
  color: #fff;
  padding:10px 35px;
  display: inline-block;
  font-size: 127%;
  margin-bottom: 45px;
}
@media all and (-ms-high-contrast:none){
	.suppliers_list h2 span{ /* font-weight:bold\0; */ }
}


.suppliers_list dl{
  width: 21.1%;
  float: left;
}
.suppliers_list dl:not(:last-child){
  margin-right:40px;
}
.suppliers_list dt {
  font-size: 112.5%;
  margin-bottom:20px;
  border-bottom:solid 2px #583c32;
  padding-bottom:13px;
}
.suppliers_list dd{
  margin-bottom: 18px;
}
.suppliers_list dd ul{
  padding-left: 1em;
}
.suppliers_list dd ul li{
  margin-top: 20px;
}
  @media only screen and (max-width: 768px) {

	.suppliers .section_header + p{
	  width: auto;
	  margin-bottom:30px;
	}
	.suppliers_list{
	  width: auto;
	  padding-bottom:0;
	}
	.suppliers_list dl{
  		width: 45%;
  		height:200px;
	}
	.suppliers_list dl:not(:last-child){
		margin: 0;
	}
	.suppliers_list dl:nth-of-type(2n){
  		margin-left:10%;
	}
  }

/** PAGE_RESERVATION **/
/*****************************************/

.reserve-small {
	display: block;
	font-size: 12px;
	font-weight: 600;
    margin: -3px 0 -6px;
}

.reservation_content{
  background: #fff2f1;
  padding: 40px;
  text-align: center;
  margin-top: -100px;
  margin-bottom: 40px;
}
.reservation_content .inner{
  padding: 0;
}
.reservation_content h2{
  background: #583c32;
  color: #fff;
  padding: 10px 0;
  margin: auto;
  width: 280px;
  text-align: center;
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  font-size: 125%;
  font-weight: normal;
  letter-spacing: 3px;
  margin-bottom: 30px;
  line-height: 1;
}
@media all and (-ms-high-contrast:none){
	.reservation_content h2{ /* font-weight:bold\0; */ }
}


.reservation_content_image{
  width: 480px;
  margin-bottom: 30px;
}
.reservation_content_title{
  margin-bottom: 50px;
}
.reservation_content_title strong{
  font-size: 147%;
  display: block;
  margin-bottom: 30px;
}
.reservation_content_title p{
  text-align: center;
}
.reservation_content_detail{
  width: 660px;
}
.reservation_content_detail dt,
.reservation_content_detail dd{
  vertical-align: top;
  line-height: 28px;
}


.reservation_form{
  padding-bottom: 80px;
}
.reservation_form .item div{
  display:inline-block;
  line-height:  32px;
  width:;
}
.reservation_form .item div img{
  width: 250px;
  display: block;
  margin-bottom: 5px;
}
.reservation_form .item div input{
  width:100px;
  font-size:142%;
  padding:6px;
}

.reservation_form .privacy{
  padding-top: 40px;
}
.reservation_form .privacy span{
  display: block;
  font-size: 127%;
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  margin-bottom: 10px;
}
@media all and (-ms-high-contrast:none){
	.reservation_form .privacy span{ /* font-weight:bold\0; */ }
}


.reservation_form .privacy .privacy_box{
  border:solid 1px #583c32;
  overflow:scroll;
  height: 200px;
}
.reservation_form .privacy .privacy_box div{
  padding:10px 20px;
}
.reservation_form .privacy .privacy_box div dl{
	border-bottom:solid 1px #ccc;
	padding-bottom:20px;
}
.reservation_form .privacy .privacy_box div dl dt,
.reservation_form .privacy .privacy_box div dl dd{
	width:auto;
	float:none;
	display:block;
  line-height: 24px;
}
.reservation_form .privacy .privacy_box div dl dt{
	margin-bottom:10px;
}
.reservation_form .privacy .privacy_box div dl dd{
  font-size: 86%;
}
.reservation_form .privacy .privacy_box div dl ul{
	padding-top:10px;
}
.reservation_form .privacy .privacy_box div dl li{
  font-size: 86%;
	text-indent:2em;
}
.reservation_form .acceptance{
  text-align: center;
  padding: 20px 0 40px;
  position:relative;
}
.reservation_form .acceptance .wpcf7-not-valid-tip{
	position:absolute;
	text-align:center;
	top:10px;
	left:30px;
	right:0;
	width:240px;
	margin:auto;
}

.form_confirm .suppliers .section_header + p,
.form_confirm .suppliers_list,
.form_confirm .reservation_form .acceptance,
.form_confirm .reservation_form .privacy{
  display:none;
}
.form_confirm .reservation_form .btn_box{
  padding-top:40px;
}

.reservation_form .reservation_time select,
.reservation_form .reservation_date select{
	width:300px;
}
.form_confirm .reservation_content,
.form_confirm .acceptance,
.form_confirm dd p,
.form_confirm .confirm_email,
.form_confirm .privacy{
	display:none;
}
.form_confirm .btn_box{
	padding-top:40px;
}
.form_confirm .reservation_form{
  margin-top: -100px;
}

  @media only screen and (max-width: 768px) {
	  
	  .reserve-small {
		font-size: 9px;
	    margin: 4px 0 0;
	}


    .reservation_content{
      padding:23px 20px;
      margin-top: -60px;
      margin-bottom: 30px;
    }
    .reservation_content h2{
      width: 42%;
      padding:4px;
      font-size: 100%;
      margin-bottom: 20px;
      line-height: 1;
    }
    .reservation_content_image{
      width: 80%;
      margin-bottom: 10px;
    }
    .reservation_content_title{
      margin-bottom: 15px;
    }
    .reservation_content_title strong{
      font-size: 120%;
      margin-bottom: 10px;
    }
    .reservation_content_title p{
      font-size:85%;
      line-height:18px;
    }
    .reservation_content_detail{
      width: 100%;
    }
    .reservation_content_detail dl{
      margin-bottom:10px;
    }
    .reservation_content_detail dt,
    .reservation_content_detail dd{
      line-height: 18px;
    }



	.form_confirm .reservation_form{
	  margin-top: -50px;
	}
    .reservation_form{
      padding: 0 20px 80px;
      box-sizing:border-box;
    }
    .reservation_form dl{
      margin-bottom:30px;
    }
    .reservation_form dl dt{
      margin-bottom:10px;
    }
    .reservation_form .item div{
      width: 46.5%;
      line-height:20px;
      vertical-align:top;
      font-size:88%;
    }
    .reservation_form .item div:not(:last-child){
      margin-right:4%;
    }
    .reservation_form .item div img{
      width: 100%;
    }
    .reservation_form .item div input{
      margin-top:10px;
    }
	.reservation_form .reservation_time select,
	.reservation_form .reservation_date select{
		width:100%;
	}
  }




.reservation_form.contact_form .js_check_box dl,
.reservation_form.contact_form .js_input_box{
	visibility:hidden;
	opacity:0;
	max-height:0;
	height:0;
	display:block;
	transition:all .5s;
}
.reservation_form.contact_form .js_input_box.show,
.reservation_form.contact_form .js_check_box dl.show,
.reservation_form.contact_form .js_check_box .item{
	height:auto;
	max-height:1000px;
	opacity:1;
	visibility:visible;
	display:block;
	vertical-align:top;
}

.reservation_form.contact_form .js_check_box option:disabled{
	color:#ccc;
}

.form_confirm .reservation_form.contact_form dl{
	border-bottom:solid 1px #efefef;
}

/** FORM_STEP **/
/*****************************************/
.form_step{
  width: 740px;
  margin: auto;
}
.form_step p{
  text-align:center;
  margin-bottom:32px;
}
.form_step ul{
  overflow:hidden;
  margin-bottom:30px;
}
.form_step ul li{
  display:inline-block;
  width: 30%;
  text-align:center;
  background:#f3f3f3;
  line-height:38px;
  float:left;
  position:relative;
  height:39px;
  box-sizing:border-box;
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  position:relative;
}
@media all and (-ms-high-contrast:none){
	.form_step ul li{ /* font-weight:bold\0; */ }
}


.form_step ul li:not(:last-child){
  margin-right: 5%;
}


.form_step ul li:not(:last-child):after{
    content:'';
    border-top: 38px solid transparent;
    border-bottom: 38px solid transparent;
    position: absolute;
    top: -50%;
    right: -20px;
    z-index: 1;
    border-left: 30px solid #f3f3f3;
}
#page-suppliers .form_step .step1,
#page-suppliers.form_confirm .form_step .step2,
#page-suppliers-complete .form_step .step3,
#page-reservation .form_step .step1,
#page-reservation.form_confirm .form_step .step2,
#page-reservation-complete .form_step .step3{
  background:#583c32;
  border:solid 1px #583c32;
  color:#fff;
}
#page-suppliers .form_step .step1:after,
#page-suppliers.form_confirm .form_step .step2:after,
#page-reservation .form_step .step1:after,
#page-reservation.form_confirm .form_step .step2:after{
   border-left-color:#583c32;
}
#page-suppliers.form_confirm .form_step .step1,
#page-reservation.form_confirm .form_step .step1{
  background:#f3f3f3;
  border-color:#f3f3f3;
  color:#583c32;
}
#page-suppliers.form_confirm .form_step .step1:after,
#page-reservation.form_confirm .form_step .step1:after{
   border-left-color:#f3f3f3;
  color:#583c32;
}

  @media only screen and (max-width: 768px) {
    .form_step{
      width: 100%;
      box-sizing:border-box;
      padding:0;
    }
    .form_step ul li{
      height:30px;
      line-height:30px;
      width: 29%;
    }
	.form_step ul li:not(:last-child){
      padding-left:10px;
      margin-right:6%;
	}
	.form_step ul li:not(:last-child):after{
		background-size:auto 30px;
		right:-20px;
    	border-top: 28px solid transparent;
    	border-bottom: 28px solid transparent;
    	border-left: 20px solid #f3f3f3;
	}
    .form_step ul li span{
		display:none;
    }
  }
/** COMPLETE **/
/*****************************************/
.complete{
  padding: 40px 0 80px;
}
.complete p,
.complete{
  text-align: center;
  font-size: 112%;
}
.complete p{
  margin-bottom: 90px;
}
.reservation_number{
  width: 320px;
  margin: auto;
  text-align: center;
  border: solid 1px #583c32;
  padding: 30px;
  box-sizing: border-box;
}
.reservation_number strong,
.reservation_number span{
  display: block;
  font-size: 145%;
}

.reservation_number strong{
  font-family:  'Hiragino Mincho ProN', 'Yu Mincho', serif;
  margin-bottom: 20px;
}
@media all and (-ms-high-contrast:none){
	.reservation_number strong{ /* font-weight:bold\0; */ }
}

/** 404 **/
/*****************************************/
.notfound .section_header{
	padding:200px 0;
}
.display_none{
	padding:0 0 300px;
	text-align:center !important;
}
.display_none p{
  border: solid 1px #583c32;
  padding: 30px;
  width:50vw;
  margin:auto;
  text-align: center;
}
  @media only screen and (max-width: 768px) {
	.display_none{
		padding:0 0 100px;
	}
  }
  
 
 /** SHUTTO中間ページ **/
/*****************************************/
.translate-box {
	max-width: 600px;
	margin: 0 auto;
	border-top: 1px solid #583c32;
	border-bottom: 1px solid #583c32;
	text-align: center;
	padding: 35px 0;
}
	
.translate-box p {
	text-align: center;
}

.translate-box .btn_box {
	margin: 30px 0 10px;
}
  
@media only screen and (max-width: 768px) {
	
	.translate-box {
		padding: 30px 0;
	}
    
	.translate-box p {
		text-align: left;
	}
	
	.translate-box .btn_box {
		margin: 20px 0 10px;
	}
    
}




 /** FLOATING WIDGET **/
/*****************************************/

.float-widget {
  display: none;
  background: #fff;
  width: 276px;
  width: calc(92vw - 84px);
  position: relative;
  z-index: 100;
  box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
  position: fixed;
  bottom: 20px;
  left: 5vw;
  border: 2px solid #fff;
}

.float-widget .float-widget-inner img {
	display: block;
	max-width: 100%;
	height: auto;
}

.float-widget .float-widget-inner p.close {
  position: absolute;
  top: -15px;
  right: -15px;
  z-index: 100;
}

.float-widget .float-widget-inner p.close a {
	background: #583c32;
	display: block;
	width: 30px;
	height: 30px;
	font-size: 13px;
	line-height: 30px;
	text-align: center;
	color: #fff;
	border-radius: 15px;
	text-decoration: none;
}


@media only screen and (max-width: 812px) {
	
	.float-widget .float-widget-inner article:nth-of-type(3),
	.float-widget .float-widget-inner article:nth-of-type(4) {
		display: none;	
	}

}


@media only screen and (min-width: 813px) {
	
	.float-widget {
	  width: 300px;
	  bottom: 40px;
	  left: 40px;
	}
	
	
	.float-widget .float-widget-inner p.close {
	  top: -15px;
	  right: -15px;
	}

	
}

