/* ---------------------------------
 reset CSS
--------------------------------- */
button {
    -webkit-appearance: none;
}

html,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{
  margin:0;
  padding:0;
  border:0;
  outline:0; 
  font-size:100%;
  background:transparent
}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{
  display:block
}

nav ul {
  list-style:none
}

blockquote,q {
  quotes:none
}

blockquote:before,blockquote:after,q:before,q:after{
  content:none
}

a {
  margin:0;
  padding:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent
}

ins {
  background-color:#ff9;
  color:#000;
  text-decoration:none
}

mark {
  background-color:#ff9;
  color:#000;
  font-style:italic;
  font-weight:bold
}

del {
  text-decoration:line-through
}

abbr[title],dfn[title]{
  border-bottom:1px dotted;
  cursor:help
}

input,select{
  vertical-align:middle
}

li {
  list-style-type: none;
}
  
/* --------------------------------------
  共通項目
--------------------------------------- */

/*-- clear --*/

br.clear {
  font-size: 0;
  line-height: 0;
  clear: both;
}


.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  visibility: hidden;
  clear: both;
}

/*-- color --*/

.color_01 {
  color: #1b1b1b;
}

.color_02 {
  color: #fff;
}

.color_bg_01 {
  background: #fff;
}

.color_bg_02 {
  background: #1b1b1b;
}

.color_bg_03 {
  background: #e9e9e9;
}

.color_bg_04 {
  background: #f7f7f7;
}

/*-- link --*/

a:link {
  color: #1b1b1b;
  text-decoration: none;
}
  
a:visited {
  color: #1b1b1b;
  text-decoration: none;
}
    
a:hover {
  color: #737373;
  text-decoration: underline;
}
  
a:active {
  color: #737373;
  text-decoration: none;
  outline: none;
}

/*-- border --*/

.border {
  border: 1px #d8d5d1 solid;
}

.border_top {
  border-top: 1px #d8d5d1 solid;
}

.border_bottom {
  border-bottom: 1px #d8d5d1 solid;
}

.border_bottom_dot {
  border-bottom: 1px #d8d5d1 dotted;
}

/*-- border_radius --*/

.border_radius {
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}

/* --------------------------------------
  メイン要素
--------------------------------------- */

html { 
}

body {
  font: 13px 'Helvetica','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',Meiryo, メイリオ, sans-serif;
  letter-spacing: 1px;
  margin: 0; 
  background: #fff;
} 
#container_back {
	background-image: url(http://goope.jp/goope/26485/150501114404ayef.gif);
	background-repeat: repeat;
} 
#container {
  width: 1000px;  
  margin: 0 auto;        
} 

#wrapper {
} 

body#top #container {  
   width: 1000px;  
  margin: 0 auto;    
} 

#wrapper_inner {
  margin: 0 20px;   
} 

body#top #wrapper_inner {
  margin: 0;     
}   

#contents {
  width: 960px;
  padding: 0;
}

/* TOPページのみ */
#top #contents {
  padding: 0;
  width: 100%;
  background: none;
}

#header {
	font-family: 'Open Sans Condensed','Helvetica','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',Meiryo, メイリオ, sans-serif;
	width: 100%;
	margin-bottom: 0;
	background-image: url(http://goope.jp/goope/26485/150501114404vqah.gif);
	background-repeat: repeat-x;
	background-position: left top;
}

body#top #header {
  border-bottom: none;  
width: 100%;
}

#header_inner {
	width: 960px;
	margin: 0 auto;
	padding-top: 70px;
}

#main {
  width: 720px;  
  float: right;
  margin-right: 0px;
}

/* TOPページのみ */
#top #main {
  float: none;
  width: 100%;
}

#main_inner {
  margin: 0;
} 

/* --- Main float none area--- */  
body#free #main,   
body#reservation #main,  
body#coupon #main,   
body#contact #main,  
body#calendar #main,   
body#about #main {
  width: 960px;
  float: none;  
} 
/* --- Main float none area--- */     
   

/* --------------------------------------
  ヘッダー
  --------------------------------------- */

.site_title {
  padding: 0;
  text-align: center;
  background-repeat: repeat;
  margin-bottom: 10px;
}  
  
h1.site_logo {
  font-weight: normal;
  font-size: 40px;  
  margin-bottom: 10px;  
}

.site_description {
  font-size: 15px;    
  display: block;
} 

.tel_area {
  width:960px;
  margin: 0 auto;
}

.shop_rss {
  margin: 11px 0 0 6px;
  float: right;  
  display: none; 
}

.shop_tel {
  margin: 12px 0 0 6px;
  font-size: 13px;
  letter-spacing: 0.1em;
  float: right;   
  display: none;   
}

/* --------------------------------------
  ページタイトル
--------------------------------------- */

#main h2.page_title {
  font-family: 'Open Sans Condensed','Helvetica','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',Meiryo, メイリオ, sans-serif;  
  font-size: 28px;
  font-weight: normal;
  text-align: left;
  _margin: 0;
  padding: 50px 0 30px;
}  

/* ---  サイドナビがないページ用 ---*/
body#free  #main h2.page_title,   
body#reservation  #main h2.page_title,  
body#coupon  #main h2.page_title,  
body#calendar  #main h2.page_title,   
body#contact  #main h2.page_title,     
body#about #main h2.page_title {
  width: 960px;  
  text-align: center;  
  padding: 45px 0 50px;  
}  
/* ---  サイドナビがないページ用 ---*/

/* --------------------------------------
  ナビゲーション
--------------------------------------- */
  
.gnav {
  display: block;
  text-align: center;
  line-height: 22px;
  margin-bottom: 10px;
  font-size: 15px;
  padding: 20px 0;
}

.gnav li {
	display: -moz-inline-box;
	display: inline-block;
  /display: inline;
  /zoom: 1;
	margin-bottom: 10px;
}

.gnav li a {
	text-decoration: none;
	display: block;
	background-image: url(http://goope.jp/goope/26485/150507094049tgmn.gif);
	background-repeat: no-repeat;
	background-position: center top;
	padding-top: 32px;
	padding-right: 20px;
	padding-left: 20px;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: #E8E9E0;
	margin-right: 2px;
	margin-left: 2px;
	padding-bottom: 10px;
	border-right-width: 1px;
	border-left-width: 1px;
	border-right-style: dotted;
	border-left-style: dotted;
	border-right-color: #E7E7E7;
	border-left-color: #E7E7E7;
}
.gnav li a:hover {
	text-decoration: none;
	display: block;
	background-image: url(http://goope.jp/goope/26485/150507094049tgmn.gif);
	background-repeat: no-repeat;
	background-position: center top;
	padding-top: 32px;
	padding-right: 20px;
	padding-left: 20px;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: #D0D2BF;
	margin-right: 2px;
	margin-left: 2px;
	padding-bottom: 10px;
	border-right-width: 1px;
	border-left-width: 1px;
	border-right-style: dotted;
	border-left-style: dotted;
	border-right-color: #E7E7E7;
	border-left-color: #E7E7E7;
}
.gnav li.navi_last {
  padding-right: 0;
}

#mobile-bar,
#build-menu {
  display: none;
}

.fa {
  display: inline-block;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  font-size: 30px;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
  
/* PC用サブナビ */  
.sub_navi_side {
  float: left;
  width: 200px;
  position: relative;
  padding: 10px 0;
  top: 30px;
}
  
.sub_navi_side ul.sub_navi {
  padding: 0;
}  
  
body#free  .sub_navi_side,  
body#reservation  .sub_navi_side,   
body#coupon  .sub_navi_side,  
body#contact  .sub_navi_side,      
body#about .sub_navi_side,
body#calendar .sub_navi_side {
  display: none;
}  

ul.sub_navi_side li a {
  margin-bottom: 1px;
  padding: 0 15px 15px 15px;
  display: block;
} 

/* フリーページナビゲーション用 */
.free_area {
  margin-bottom: 50px;
}  

.free_area_inner {
  padding: 8px 0;
}

.gnav li:hover > div {
  display: block !important;
}    
   
/* --------------------------------------
  サイドバー
--------------------------------------- */

#sidebar {
  width: 200px;
  margin: 82px 30px 0 0;
  text-align: left;
  float: left;
}

body#contact #sidebar,
body#calendar #sidebar,
body#about #sidebar,
body#reservation #sidebar,
body#top #sidebar {
  display: none;
}

#sidebar_inner {
  margin: 0;  
}   

/* --------------------------------------
  フッター
--------------------------------------- */

#footer {
  clear: both;
  width: 100%;
padding-top: 20px;
}

body#top {
  background: #fff;
} 
  
#footer_inner {
	width: 960px;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
}

/* ナビパーツ */

#footer #navi_parts {
  font-size: 12px;
}

.navi_parts_area {
	padding-top: 20px;
padding-right: 5px;
	padding-left: 5px;
	border-top-width: 5px;
	border-top-style: solid;
	border-top-color: #162142;
	margin-top: 20px;
	margin-right: 10px;
	margin-bottom: 0;
	margin-left: 10px;
}
  
#footer .navi_parts_detail {
  margin-top: 0;
	margin-right: 10px;
	margin-bottom: 10px;
	margin-left: 0; 
  float: left;   
} 

/* --------------------------------------
  フッターコピーライト
--------------------------------------- */

#footer_copyright {
  font-size: 12px;
  height: auto;
  width: 100%;
} 

#footer_copyright_inner {
	width: 960px;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	padding-top: 15px;
	padding-right: 0;
	padding-bottom: 5px;
	padding-left: 0;
text-align: center;
} 
#footer_copyright_inner strong {
	font-weight: bold;
	text-align: center;
	display: block;
	margin-bottom: 5px;
} 
.copyright {
  text-align: center;
}

/* QRコード */
.qr_img {
  text-align: center;
}

/* --------------------------------------
  トップ
--------------------------------------- */ 

.slide_one {
  width: 960px;
  height: 480px;
  overflow:hidden;
  margin:0 auto 40px;
}

.slide_one ul li img {
  width: 980px;
  height: auto;  
}

.welcome_info_area { 
  width: 960px;
  margin: 0 auto 40px;
}
  
.welcome_area_title {
  font-family: 'Open Sans Condensed','Helvetica','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',Meiryo, メイリオ, sans-serif;    
  font-size: 25px;
  margin-bottom: 20px;   
}

.welcome_area {
  width: 550px;  
  float: left;
  margin: 0 60px 0 0;   
} 

.welcome_area_message {
  line-height: 25px;
}
  
.top_info_area {
  width: 350px;
  float: left;
}

.info_area_title {
  font-family: 'Open Sans Condensed','Helvetica','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',Meiryo, メイリオ, sans-serif;    
  font-size: 25px;
  margin-bottom: 13px;   
}
  
.top_info_message {
  list-style-type: none;
}  

.top_info_message li {
  margin: 0;
  padding: 7px 0;
}  
  
.top_info_message li a {
  margin: 0 0 10px 0;
}
   
.top_info_date {
  margin-right: 10px;
}   

/* -----------------------------------------

wideslider

----------------------------------------- */


.wideslider {
  width: 100%;
  text-align: left;
  position: relative;
  overflow: hidden;
  margin-bottom: 30px;
}

.wideslider ul,
.wideslider ul li {
	float: left;
	display: inline;
	overflow: hidden;
	position: relative;
	z-index: 100;
}

.wideslider ul li img {
	width: 100%;
	display: none;
}

_.wideslider_base {
	top: 0;
	position: absolute;
	z-index: 100;
}

.wideslider_wrap {
  top: 0;
  position: absolute;
  overflow: hidden;
z-index: 100;
}

.slider_prev,
.slider_next {
	cursor: pointer;
	position: absolute;
	z-index: 100;
	overflow: hidden;
}


.pagination {
  bottom: 20px;
  left: 0;
  width: 100%;
  height: 15px;
  text-align: center;
  position: absolute;
  z-index: 200;
}

.pagination a {
  margin: 0 7px;
  width: 12px;
  height: 12px;
  border-radius: 6px;
  display: inline-block;
  overflow: hidden;
  background: #fff;
}

.pagination a.active {
  filter:alpha(opacity=100)!important;
  -moz-opacity: 1!important;
  opacity: 1!important;
}


/* =======================================
  ClearFixElements
======================================= */

.wideslider ul:after {
  content: ".";
  height: 0;
  clear: both;
  display: block;
  visibility: hidden;
}

.wideslider ul {
  display: inline-block;
  overflow: hidden;
}

/* --------------------------------------
  インフォメーション
--------------------------------------- */

.info_area {
  margin: 0 0 40px 0;
  padding-top: 40px;
}

.info {
  padding: 8px 0 40px 0;
  margin: 0 0 40px 0;
}
  
.info_photo {
  padding: 0 1px;
} 
  
.info_photo img {
  max-width: 750px;
  height: auto;
  margin-bottom: 20px;
} 

.info_date {
  padding: 0 0 0 1px;
}
  
.info_title {
  font-size: 18px;
  margin: 0 0 10px 0; 
  padding: 10px 0;
  width: 720px;
  background-repeat: no-repeat;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}

.info_title a {
}
  
.info_body {
  padding: 0 1px 0 1px;
  word-wrap:break-word;
}

/* --------------------------------------
  カレンダー
--------------------------------------- */

.calendar_area {
  margin: 0 0 40px;
  width: 100%;
}

.calendar_header {
  margin: 0 0 60px 0;
  font-size: 16px;
  text-align: center;
}
  
.calendar_header a {
  margin: 0 20px;
  font-size: 14px;
  text-align: center;
  font-weight: normal;
} 

.table_calendar {
  font-family: 'Open Sans Condensed','Helvetica','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',Meiryo, メイリオ, sans-serif;  
} 
   
.table_calendar th {
  text-align: center;
  font-size: 12px;
  border-bottom: 1px solid #848484;
  padding: 0 0 5px 0;
}
  
.table_calendar th.sun {
  color: #ff3355;
}
      
.table_calendar th.sat {
  color: #0250d0;
}
  
.table_calendar td {
  border-bottom: 1px solid #848484;
  border-left: 1px solid  #848484;
  width: 14%;
  height: 120px;
  text-align: center;
  padding: 0 0 5px 0;

}
      
.table_calendar td img {
  padding: 15px;
}
        
.table_calendar td.sun {
}
      
.table_calendar td.sat {
  border-right: 1px solid #848484;
}
      
.table_calendar td p.day {
  line-height: 14px;
  margin: 10px 10px 0;
  padding: 0;
  text-align: left;
  vertical-align: top;
}
      
.table_calendar td.sun p.day {
  color: #ff3355;
}
        
.table_calendar td.sat p.day {
  color: #0250d0;
}
  
.schedule {
  margin: 0 0 20px 0;
}
   
.schedule_date {
  font-weight: bold;
  margin: 0 0 20px 0;
  padding: 0 0 20px 0;
}
     
.schedule ul {
  list-style: none;
  margin: 0 0 40px 0;
}
     
.schedule ul li {
  margin: 0 0 10px 0;
  line-height: 20px;
}
      
.schedule_category {
  padding: 5px 7px;
  margin:0 10px 0 0;
  font-size: 10px;
}
      
.schedule_time {
  font-weight: bold;
}

.schedule_detail {
  width: 500px;
  margin: 0 auto;
  padding: 40px 0 8px 0;
}
     
.schedule_detail_category {
  padding: 5px 7px;
  margin: 0 0 8px 0;
  font-size: 10px;
}
  
.schedule_detail_title {
  font-size: 18px;  
  margin: 10px 0 15px 0;
}
     
.schedule_detail_body {
  line-height: 20px;
}
     
.schedule_detail_body img {
  margin: 0 0 20px 0;
}

/* --------------------------------------
  メニュー
--------------------------------------- */

.menu_area {
  width: 720px;
  margin: 0 0 40px 0;
  padding: 0;
}

.menu_title {
  margin: 0 20px 15px 0;
  font-size: 18px;
}

.menu_price {
  font-weight: bold;
  line-height: 24px;
  margin: 0 0 20px 0;
  padding: 0 1px;
  font-size: 12px;
}

.menu_price_num {
  font-size: 20px;
}

.menu_list {
  margin: 0;
  padding: 0;
}

.menu_category {
  font-family: 'Open Sans Condensed','Helvetica','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',Meiryo, メイリオ, sans-serif;    
  font-size: 20px;
  margin-bottom: 40px;
  width: 720px;
  padding: 8px 0px;
}

.menu {
  margin: 0 0 15px 0;
}  

.menu_body {
  clear: both;
  line-height: 20px;
  width: 100%;
  margin: 0;
}
     
.menu_body img {
  margin: 0 0 20px 0;
  padding: 0 1px;
  max-width: 720px;
  height: auto;
}   

/* --------------------------------------
  フォトギャラリー
--------------------------------------- */

.album_title {
  font-family: 'Open Sans Condensed','Helvetica','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',Meiryo, メイリオ, sans-serif;    
  font-size: 20px;
  padding: 8px 0;
  margin-bottom: 40px;
  width: 720px;
}

.photo_area {
  width: 720px;
  margin: 0 0 30px 0;
}

.album {
  margin: 0 0 30px -15px;
  padding: 0;
}
  
.album:last-child {
  padding: 0 0 15px 0;
} 
     
.photo_thumb {
  float: left;
  margin: 0 0 20px 20px;
}

.photo {
  width: 100%;
  margin: 0 5px 40px 0;
}

.photo_image {
  margin: 0 0 20px 0;
}

.photo_image img {
  max-width: 720px;
  height: auto;
}
  
.photo_date {
  text-align: left;
  margin-bottom: 4px;
  padding: 0 1px 0 1px;
}

.photo_title {
  font-size: 18px;
  margin: 0 0 10px 0;
  padding: 0 1px;
}

.photo_body {
  line-height: 20px;
  padding: 0 1px 40px 1px;
}
  
/* --------------------------------------
  クーポン
--------------------------------------- */

.coupon_area {
  width: 960px;
  margin-bottom: 0 0 40px !important;
} 
  
.coupon {
  padding: 0;
  width: 840px;  
  margin: 0 auto 20px;
}

.coupon_image {
  float: left;
  margin: 0 40px 20px 0;
}

.coupon_qr {
  width: 110px;
  margin-bottom: 20px;    
}

.coupon_title {
  margin-bottom: 20px;
  font-size: 18px;
}
  
.coupon_body {
  float: left;
  width: 300px;
} 

.coupon_body ul {
  margin-bottom: 20px;  
}
  
.coupon_body ul li {
  list-style-type: none;
}

.coupon_print {
  margin: 0 auto 40px;  
  font-weight: bold;
}   

/* --------------------------------------
  店舗情報
--------------------------------------- */

.map {
  width: 100%;
  height: 100%;
  margin: 0 0 40px 0;
  padding: 0;
}

.detail {
  margin: 0 0 10px 0;
}

.table_detail {
  float: right;
  width: 100%;
  border-top: 1px solid #bfbfbf;
}
     
.table_detail th {
  width: 150px;
  text-align: center;
  white-space: nowrap;
  padding: 20px 20px;
  border-bottom: 1px solid #bfbfbf;
  border-left: 1px solid #bfbfbf;
  background: #fff;   
}
      
.table_detail td {
  width: 350px;
  padding: 20px 20px;
  border-bottom: 1px solid #bfbfbf;
  border-left: 1px solid #bfbfbf;
  border-right: 1px solid #bfbfbf;  
}

/* --------------------------------------
  お問い合わせ
--------------------------------------- */

.contact_area_wrap {
  margin: 0 auto;
  display: block;
  clear: both;
  overflow: hidden;
  line-height: 20px;
  width: 460px;  
}

.contact_message {
  margin: 0 0 40px 0;
  font-size: 15px;
  line-height: 23px;
}

.contact_area_wrap input {
  margin: 5px 5px 0 0;
  padding: 10px;
  height: 25px;
  font-size: 14px;
  vertical-align: middle;
  border: 1px solid #bfbfbf; 
  background: #fafafa;     
  width: 438px;
}

.contact_area_wrap textarea {
  margin: 5px 0 0 0;  
  padding: 10px;
  font-size: 14px;    
  border: 1px solid #bfbfbf;
  background: #fafafa;  
  vertical-align: middle;
  width: 438px;
  height: 150px;    
}

.contact_area {
  margin-bottom: 40px;
}

.contact_area .button_area {
  text-align: right;
}
  
.contact_area_wrap input.button {
  display: block;
  font-size: 18px;
  color: #fff;
  padding: 15px 0;
  background: #989898;
  text-decoration: none;
  width: 460px;
  height: 70px; 
  margin: 50px auto;  
  cursor: pointer;
  border: none;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}

 .contact_area_wrap input.button:hover {
  opacity: 0.8;
  -moz-opacity: 80;
}
   
input.contact_small {
  width: 250px;
}
  
input.contact_medium {
  width: 378px;
}
  
input.contact_large {
  height: 150px;
  width: 378px;
}

.checkbox {
  display: block;
  clear: both;
  padding: 0 0 5px 0;
}
  
.checkbox input {
  display: inline;
  float: left;
  margin: 0 5px 0 0;
  padding: 5px;
  width: 13px;
  border: none;
}
  
.checkbox label {
  display: block;
  width: 460px;
  float: left;
  margin: 0 0 5px 0;
}

.radio {
  display: block;
  clear: both;
  padding: 5px 0 5px 3px;
}
  
.radio input {
  display: inline;
  float: left;
  margin: 0 5px 0 0;
  padding: 5px;
  width: 13px;
  border: none;
}
  
.radio span {
  display: block;
  width: 460px;
  float: left;
  margin: 0 0 5px 0;
}
  
.personal_info {
  width: 460px;
  font-weight: bold;
  margin: 1px 0 0 0;
}
  
.personal_info_txt {
  margin: 8px 0 0 0;     
  font-weight: normal;
  line-height: 160%;
  font-size: 12px; 
}

.requier {
  color: #ff0000;
  margin-left: 5px;
}

/* --------------------------------------
    予約ページ
--------------------------------------- */

.reservation_area {
  margin: 0 auto;
  display: block;
  clear: both;
  overflow: hidden;
  line-height: 20px;
  width: 460px;    
}

.reservation_message {
  margin: 0 0 40px 0;
  font-size: 15px;
  line-height: 23px;
}
  
.reservation_form .reservation_area label {
  margin: 0 0 5px 0;
}
  
.reservation_form .reservation_area input {
  margin: 5px 5px 0 0;
  padding: 10px;
  height: 25px;
  font-size: 14px;
  vertical-align: middle;
  border: 1px solid #bfbfbf; 
  background: #fafafa;  
  width: 438px;
}

.reservation_form .reservation_area span.radio input {
  margin: 1px 5px 0 0;
  padding: 10px;
  height: 20px;
  font-size: 14px;
  vertical-align: middle;
  width: 20px;  
}

.reservation_form .reservation_area textarea {
  margin: 5px 0 0 0;  
  padding: 10px;
  font-size: 14px;    
  border: 1px solid #bfbfbf; 
  background: #fafafa; 
  vertical-align: middle;
  width: 438px;
  height: 150px;  
}

.reservation_form .reservation_area {
  margin-bottom: 40px;  
}

.reservation_form .reservation_name {
  width: 460px;
}
  
.reservation_form .reservation_email {
  width: 460px;
}
  
.reservation_form .reservation_tel {
  width: 460px;
}
  
.reservation_form .reservation_memo {
  width: 460px;
  height: 100px;
}
  
.reservation_area .button_area {
  text-align: left;
}
  
.reservation_area .button {
  display: block;
  font-size: 18px;
  color: #fff;
  padding: 15px 0;
  background: #989898;
  text-decoration: none;
  width: 460px;
  height: 70px; 
  margin: 50px auto;  
  height: 70px; 
  margin: 0 auto 50px;  
  cursor: pointer;
  border: none;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}

.reservation_area .button:hover {
  opacity: 0.8;
  -moz-opacity: 80;
}
      
.reservation_form .reservation_small {
  width: 200px;
}
  
.reservation_form .reservation_medium {
  width: 200px;
}
  
.reservation_form .reservation_large {
  height: 200px;
  width: 460px;
}

.reservation_info {
  margin-bottom: 40px;
  font-weight: normal;  
}

.reservation_info .reservation_tel_number {
  font-family: Arial #6a6a6a;
  font-size: 18px;
  padding: 3px 5px 5px 0;
}

.reservation_tel_time {
  padding: 0;
}

.reservation_others {
  margin-bottom: 40px;
}

.reservation_photo {
  margin: 0 0 20px 0;
}

.reservation_title {
  line-height: 24px;
  font-size: 18px;
  margin-bottom: 15px;
}
  
.reservation_course_body img {  
  margin: 5px 0 20px 0;
} 
  
.reservation_course_body p {  
  font-weight: normal;
  margin: 20px 0;  
}    

/* --------------------------------------
  pager
--------------------------------------- */

.pager {
  text-align: center;
  white-space: nowrap;
  padding: 5px 0;
  font-size: 12px;
  line-height: 16px;
}

.pager a {
  margin: 0 2px;
  padding: 3px 5px;
}
  
.pager a.next ,
.pager a.prev {
  margin: 0 2px;
  padding: 3px 5px;
}

.pager a.chk {
  margin: 0 2px;
  padding: 8px 11px;
  background: #e9e9e9;
  text-decoration: none;
}

/*--------------------------------
  AutoPagerize
--------------------------------*/

.autopagerize_page_element {
  clear: both;
}

#hr {
  border: none;
  margin-top: 20px;
}
  
.autopagerize_link {
  margin-bottom: 20px;
}

/* --------------------------------------
  tooltip
--------------------------------------- */

.hotspot {
  cursor: pointer;
}

#tt {
  position: absolute;
  display: block;
  background: url(/img/tooltip/tt_left.gif) top left no-repeat;
}
  
#tttop {
  display: block;
  height: 5px;
  margin-left: 5px;
  background: url(/img/tooltip/tt_top.gif) top right no-repeat;
  overflow: hidden;
}
  
#ttcont {
  display: block;
  padding: 2px 12px 3px 7px;
  margin-left: 5px;
  background: #ccc;
  color: #333;
  font-size: 10px;
  line-height: 16px;
}
  
#ttcont div.schedule_title {
  font-size: 13px;
}
   
#ttcont div.schedule_body {
  font-size: 11px;
}

#ttbot {
  display: block;
  height: 5px;
  margin-left: 5px;
  background: url(/img/tooltip/tt_bottom.gif) top right no-repeat;
  overflow: hidden;
}
  
/* --------------------------------------
  colorbox
--------------------------------------- */

#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none;}
.cboxIframe{width:100%; height:100%; display:block; border:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}

/* 
    User Style:
    Change the following styles to modify the appearance of ColorBox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay{background:#fff;}
#colorbox{outline:0;}
#cboxContent{margin-top:32px; overflow:visible; background:#000;}
.cboxIframe{background:#fff;}
#cboxError{padding:50px; border:1px solid #ccc;}
#cboxLoadedContent{background:#000; padding:1px;}
#cboxLoadingGraphic{background:url(/img/theme_simple2/loading.gif) no-repeat center center;}
#cboxLoadingOverlay{background:#000;}
#cboxTitle{position:absolute; top:-22px; left:0; color:#000;}
#cboxCurrent{position:absolute; top:-22px; right:205px; text-indent:-9999px;}

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; text-indent:-9999px; width:20px; height:20px; position:absolute; top:-20px; background:url(/img/theme_simple2/controls.png) no-repeat 0 0;}

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}
#cboxPrevious{background-position:0px 0px; right:44px;}
#cboxPrevious:hover{background-position:0px -25px;}
#cboxNext{background-position:-25px 0px; right:22px;}
#cboxNext:hover{background-position:-25px -25px;}
#cboxClose{background-position:-50px 0px; right:0;}
#cboxClose:hover{background-position:-50px -25px;}
.cboxSlideshow_on #cboxPrevious, .cboxSlideshow_off #cboxPrevious{right:66px;}
.cboxSlideshow_on #cboxSlideshow{background-position:-75px -25px; right:44px;}
.cboxSlideshow_on #cboxSlideshow:hover{background-position:-100px -25px;}
.cboxSlideshow_off #cboxSlideshow{background-position:-100px 0px; right:44px;}
.cboxSlideshow_off #cboxSlideshow:hover{background-position:-75px -25px;}

/* --------------------------------------
  For IE6
--------------------------------------- */

* html .info {
  margin: 0 0 40px 0;
}

* html .table_calendar td a.hotspot {
  display: block;
  width: 26px;
  height: 26px;
  border: 2px solid #a3a3a3;
  cursor: hand;
}
.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget iframe[style]{ width: 100%!important; }
  /* -----------------------------------------

※ 幅980px以下のデバイスには、下記のスタイルが継承されます。

----------------------------------------- */

@media screen and (max-width: 980px) {

html {
  height: auto;   
}

body {   
  background-image: none;
  font-size: 13px;
  margin: 0;
  min-width: inherit;
}

img {  
  max-width: 100%;
}

#container {
  width: 100%;
} 

#wrapper  {
  width: 100%;
}

#wrapper_inner {
  margin: 0 20px;
}  
  
div#contents {
  width: 100%;
padding: 0;
}

/* TOPページのみ */
body#top #container {  
   width: 100%;
  margin: 0 auto;   
}

#top #contents {
  width:100%;
  padding: 0;
}

#contents_inner {
  margin: 0 20px;
}  

#header {
  height: auto;
width: 100%;
}

#header_inner {
  padding-top: 70px;
  width: 100%;
}

#main {
  margin: 0;
  width: 72%;
}

#contact #main {
  float: none;
  width: 100%; 
  margin: 0;
}

/* TOPページのみ */
#top #main {
  width: 100%; 
}
  
#main_inner {
  width: 100%;
}

/* --- Main float none area--- */  
body#free div#main,   
body#reservation div#main,  
body#coupon div#main,   
body#contact div#main,  
body#calendar div#main,   
body#about div#main {
  width: 100%;
} 
/* --- Main float none area--- */ 

/* --------------------------------------
  ヘッダー
  --------------------------------------- */

.shop_title {
  margin: 0 0 20px 0;
  height: auto;
  float: right;
}

.shop_tel {
  margin: 5px 12px 0 0;
  float: right;
  height: auto;
}

.site_title {
  padding: 0;
  text-align: center;
  background-repeat: repeat;
  margin-bottom: 10px;
  margin-left: 2%;
}  

.tel_area {
  display: none;
}
  
h1.site_logo {
  font-size: 35px;  
  margin-bottom: 10px;  
}

.site_description {
  font-size: 12px;
  display: none;
} 

/* --------------------------------------
  ページタイトル
--------------------------------------- */

#main h2.page_title {
  font-size: 24px;
  padding: 30px 0 30px;
}  

/* ---  サイドナビがないページ用 ---*/
body#free  #main h2.page_title,   
body#reservation  #main h2.page_title,  
body#coupon  #main h2.page_title,  
body#calendar  #main h2.page_title,   
body#contact  #main h2.page_title,     
body#about #main h2.page_title {
  width: 960px;  
  text-align: center;  
  padding: 30px 0 30px;  
}  
/* ---  サイドナビがないページ用 ---*/

/* ---  サイドナビがないページ用 ---*/
body#free  #main h2.page_title,   
body#reservation  #main h2.page_title,  
body#coupon  #main h2.page_title,  
body#calendar  #main h2.page_title,   
body#contact  #main h2.page_title,     
body#about #main h2.page_title {
  width: 100%;  
}  
/* ---  サイドナビがないページ用 ---*/

/* --------------------------------------
  ナビゲーション
--------------------------------------- */

.gnav {
  display: none;  
  text-align: center;
  font-size: 13px;
  line-height: 22px;
  margin-bottom: 10px;
  font-weight: bold;
  padding: 20px 0;
}

.gnav li {
  display: -moz-inline-box;
  display: inline-block;
  /display: inline;
  /zoom: 1;
  padding-right: 12px;
}


.gnav li.navi_last {
  padding-right: 0;
}

.gnav_smart_phone {
  font-size: 13px;
}

.gnav_smart_phone li {
  padding: 14px 20px;
}

.gnav_smart_phone li a:hover {
  text-decoration: none;
}

#navi {
  display: none;
}

#build-menu {
  display: block;
}

#mobile-bar {
  display: block;
  margin: 0 3%  0;
  position: absolute;  
}

/* スマホ用サブナビを非表示 */
#navi ul.sub_navi {
  display: none !important;
}

#build-menu-page {
  left: 0;
  position: relative;
  background: #fff;
}

#build-menu {
  visibility: visible;
  z-index: 0;
  opacity: 1;
  -webkit-transform: none;
  -moz-transform: none;
  -o-transform: none;
  -ms-transform: none;
  transform: none;
  display: none;
  width: 260px;
  padding: 0;
  position: static;
  z-index: 0;
  top: 0;
  left: 0;  
  height: 100%;
  overflow-y: auto;
}

.build-menu-animating #build-menu-page {
  position: fixed;
  overflow: hidden;
  width: 100%;
  top: 0;
  bottom: 0;
}

.build-menu-animating.build-menu-close #build-menu-page,
.build-menu-animating.build-menu-open #build-menu-page {
  -webkit-transition: -webkit-transform 250ms;
  -moz-transition: -moz-transform 250ms;
  -o-transition: -o-transform 250ms;
  -ms-transition: -ms-transform 250ms;
  transition: transform 250ms;
}

.build-menu-animating.build-menu-open #build-menu-page {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.build-menu-animating #build-menu { 
  display: block
}

.build-menu-open #build-menu {
  display: block;
  -webkit-transition-delay: 0ms, 0ms, 0ms;
  -moz-transition-delay: 0ms, 0ms, 0ms;
  -o-transition-delay: 0ms, 0ms, 0ms;
  -ms-transition-delay: 0ms, 0ms, 0ms;
  transition-delay: 0ms, 0ms, 0ms;
}

.build-menu-open #build-menu,
.build-menu-close #build-menu {
  -webkit-transition: -webkit-transform 250ms, opacity 250ms, visibility 0ms 250ms;
  -moz-transition: -moz-transform 250ms, opacity 250ms, visibility 0ms 250ms;
  -o-transition: -o-transform 250ms, opacity 250ms, visibility 0ms 250ms;
  -ms-transition: -ms-transform 250ms, opacity 250ms, visibility 0ms 250ms;
  transition: transform 250ms, opacity 250ms, visibility 0ms 250ms;
}

#build-menu-button {
  display: block;
}

#build-menu-button div {
  height: 5px;
  width: 30px;
  background: 
}
  
/* PC用サブナビ */  
.sub_navi_side {
  float: left;
  width: 100%;
  position: relative;
  padding: 10px 0;
  top: 30px;
}
  
.sub_navi_side ul.sub_navi {
  padding: 0;
}  
  
body#free  .sub_navi_side,  
body#reservation  .sub_navi_side,   
body#coupon  .sub_navi_side,  
body#contact  .sub_navi_side,      
body#about .sub_navi_side,
body#calendar .sub_navi_side {
  display: none;
}  

/* フリーページナビゲーション用 */
.free_area {
  margin-bottom: 50px;
}  

.free_area_inner {
  padding: 8px 0;
}

.gnav li:hover > div {
  display: block !important;
}  -right: 0;

/* PC用サブナビ */  
.sub_navi_side {
} 
  
.sub_navi_side ul.sub_navi {
  padding: 0;
}  


ul.sub_navi_side li {
  padding: 8px 0 9px 0;
}

ul.sub_navi_side li a {
  margin-bottom: 1px;
  padding: 2px 15px 0 0;
  display: block;
  background-repeat: no-repeat;
  background-position: 10px 2px;
} 

/* フリーページナビゲーション用 */
.free_area {
  margin-bottom: 50px;
}  

.free_area_inner {
  padding: 8px 0;
}

.free_area_title {
  margin: 0px;
}   

/*-----------------------------------------
  サイドバー
--------------------------------------- */

#sidebar {
  width: 24%;
  margin: 52px 4% 0 0;
  float: left;
}
  
#sidebar_inner {
  margin: 0;
}
  
/* --------------------------------------
  フッター
--------------------------------------- */

#footer {
  width: 100%; 
padding-top: 20px;
} 
  
#footer_inner {
  width: 100%;  
}

.navi_parts_area {
	padding-top: 20px;
padding-right: 10px;
	padding-left: 10px;
	border-top-width: 5px;
	border-top-style: solid;
	border-top-color: #162142;
	margin-top:10px;
	margin-right: 10px;
	margin-bottom: 0;
	margin-left: 10px;
text-align: center;
}

#footer .navi_parts_detail {
  margin-top: 0;
	margin-right: 10px;
	margin-bottom: 10px;
	margin-left: 0; 
  float: left; 
} 

.footer_contents {
  margin: 0 20px 0 20px;
}

/* --------------------------------------
  フッターコピーライト
--------------------------------------- */

#footer_copyright {
  height: auto;
  width: 100%;
} 

#footer_copyright_inner {
  margin: 0;
  padding-top: 15px;
	padding-right: 0px;
	padding-bottom: 5px;
	padding-left: 0px;
  width: 100%;
}
#footer_copyright_inner strong {
	font-weight: bold;
	text-align: center;
	display: block;
	margin-bottom: 5px;
} 

.copyright {
  margin: 0 20px;
}

/* QRコード */

.qr_img {
  text-align: center;
}

/* --------------------------------------
  トップ
--------------------------------------- */

.slide_one {
  width: 100%;
  height: auto;
}

.slide_one ul li img {
  width: 100%;
  height: auto;  
}

.welcome_info_area { 
  width: 100%;
  margin: 0 auto 40px; 
}
  
.welcome_area_title {
  font-size: 30px;
  margin-bottom: 30px;   
  text-align: center;   
}

.welcome_area {
  width: 94%;  
  float: none;
  font-size: 14px;  
  margin: 0 3% 40px; 
  padding-bottom: 30px;
} 

.welcome_area_message {
  line-height: 25px;
}
  
.top_info_area {
  width: 94%;
  float: none;
  font-size: 14px;
  margin: 0 3%;     
}

.info_area_title {
  font-size: 30px;
  margin-bottom: 30px;  
  text-align: center; 
}
  
.top_info_message {
  list-style-type: none;
}  

/* --------------------------------------
  インフォメーション
--------------------------------------- */

.info_area {
  width: 100%;
  margin: 0 0 30px 0;
}

.info {
  padding: 0 0 30px 0;
  margin: 0 0 30px 0;  
}  
   
.info_title {
  width: 100%;
}

.info_photo img {
  max-width: 100%;
}
  
.info_body {
}
     
.info_body img {
  margin-bottom: 10px;
}

/* --------------------------------------
  カレンダー
--------------------------------------- */
  
.calendar_area {
  width: 100%;
  padding-top: 10px;
}

.calendar_header {
  margin: 0 0 50px 0;  
}

.table_calendar td {
  height: 100px; 
}
      
.table_calendar td img {
  padding: 10px 0 0;
}
 

/* --------------------------------------
  メニュー
--------------------------------------- */

.menu_area {
  width: 100%;
}
  
.menu_list {
  margin: 0 0 30px 0;
  padding: 0;
}  
  
.menu_category {
}  

.menu {
  padding: 0;
}

.menu_body {
  clear: none;
  width: 100%;
}
     
.menu_body img {
  margin: 0 0 20px 0;
  padding:0;
  max-width: 100%; 
}
   
/* --------------------------------------
  フォトギャラリー
--------------------------------------- */

.album_title {
  width: 100%;
}

.album {
  margin: 0;
  padding: 0 0 13px 0;
}
  
.album:last-child {
  padding: 0 0 12px 0;
} 
  
.album img {
  margin: 0 13px 13px 0;
}
  
.photo_area {
  width: 100%;
} 

.photo_image img {
  max-width: 100%;
}

/* --------------------------------------
  店舗情報
--------------------------------------- */

.map {
  width: 100%;
  margin: 0 0 25px 0;
  padding: 0;
}

.table_detail th {
  width:30%;
  font-size: 12px;
}
      
.table_detail td {
  width: 70%;
  font-size: 12px;
}     

/* --------------------------------------
  クーポン
--------------------------------------- */

.coupon_area {
  width: 100%;
} 
  
.coupon {
  width: 100%;  
}

.coupon_image img {
  width: 100%;
}

.coupon_qr {
  width: 110px;
}

.coupon_title {
  margin-bottom: 10px;
  font-size: 18px;
}

.coupon_body ul {
  margin-bottom: 10px;  
}
  
.coupon_body ul li {
  list-style-type: none;
}

.coupon_print {
  width: 100%;    
  margin: 0 auto 40px;  
  font-weight: bold;
}   
}

  /* -----------------------------------------

Smart Phone
※ 幅600px以下のデバイスには、下記のスタイルが継承されます。

----------------------------------------- */

@media screen and (max-width: 600px) {

#wrapper_inner {
  margin: 0 3%;
}  

body#top #wrapper_inner {
  margin: 0;     
} 

#main {
  float: none;
  width: 100%;
}
  
#main_inner {
  width: 100%;
  margin: 0;
}

#header {
  height: auto;
width: 100%;
}

#header_inner {
  padding-top: 70px;
width: 100%;
}

#mobile-bar {
  top: 70px;  
}
.top_info_area {
  width: 90%;
  font-size: 14px;
  margin: 0 3%;     
}

/* --------------------------------------
  ヘッダー
  --------------------------------------- */

.shop_title {
  padding: 0;
}

.shop_tel {
  float: none;
  margin: 35px 0px 0 90px;
  height: 100%;
  clear: both;
}

h1.site_logo {
  margin: 0 auto;
}

h1.site_logo img {

}

.site_title {
  padding: 0;
  text-align: center;
  background-repeat: repeat;
}  

.header_wrap_smartphone {
  padding: 10px 0 10px;
  margin-bottom: 20px;
  background: #e2e2e2;
}

/* --------------------------------------
  ページタイトル
--------------------------------------- */

#main h2.page_title {
  text-align: center;
}

/* --------------------------------------
  ナビゲーション
--------------------------------------- */
  
/* PC用サブナビ を非表示*/
.sub_navi_side {
  display: none;
}
  
body#calendar .sub_navi_side {
  display: none;
}  

ul.sub_navi_side li a {
  display: none;
} 
  
/* フリーページナビゲーション用 */

    a.navi_free{
        
        
    }

    a.navi_free:hover {
        
        
    }

    body.id_58605 a.free_58605, body.id_58609 a.free_58609, body.id_58608 a.free_58608 {
        
        
    }
  
   
/* --------------------------------------
  サイドバー
--------------------------------------- */

#sidebar {
  margin: 0;
  float: none;
  width: 100%;
  display: none;  
}
  
#sidebar_inner {
  margin: 0;
}


/* --------------------------------------
  フッター
--------------------------------------- */
  
#footer {
  padding: 0; 
padding-top: 20px;
} 
  
#footer_inner {
  width: 94%;
  margin: 0 3%;
  height: auto;
}

#footer .navi_parts_detail {
  margin: 0 0 10px 0; 
  text-align: center;
  float: none;    
} 

#footer .today_area {
  margin-right: 30px;
  float: none;  
}

#footer .counter_area { 
  margin-right: 30px;
  float: none;   
} 

#footer .footer_info_qr {
  display: none;
}

/* --------------------------------------
  フッターコピーライト
--------------------------------------- */

#footer_copyright {
  font-size: 11px;
  width: 100%;
} 

#footer_copyright_inner {
	padding-top: 15px;
	padding-right: 0px;
	padding-bottom: 5px;
	padding-left: 0px;
	width: 100%;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
}
#top #footer_copyright_inner {
	padding-top: 15px;
	padding-right: 0px;
	padding-bottom: 5px;
	padding-left: 0px;
	width: 96%;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
}
#footer_copyright_inner strong {
	font-weight: bold;
	text-align: center;
	display: block;
	margin-bottom: 5px;
} 

.copyright {
  margin: 0 20px 5px 20px;
}
    
/* --------------------------------------
  トップ
--------------------------------------- */

.top_bnr_area {
  width: 100%;
}

.top_bnr_area div {
  float: none;
  width: 100%;
  height: auto;
  display: block;
}

.top_bnr_area div.top_bnr_area_left {
  margin: 0 0 10px 0;
}

/* --------------------------------------
  インフォメーション
--------------------------------------- */

.info_area {
  width: 100%;
  margin: 0 0 30px 0;
}

.info_title a {
  padding: 0 0;
}
  
/* --------------------------------------
  カレンダー
--------------------------------------- */
  
.calendar_area {
  width: 100%;
  padding-top: 10px;
}
  
.table_calendar td {
  height: 60px;  
}

.schedule_detail {
  width: 100%;
}

/* --------------------------------------
  メニュー
--------------------------------------- */

.menu_area {
  width: 100%;
  margin: 0 0 40px 0;
}
  
.menu_list {
  margin: 0 0 30px 0;
}  

.menu_title {
  font-size: 15px;
  margin-bottom: 10px;
}
  
.menu_category {
  text-align:center;
  width: 100%;
}  

.menu {
  padding: 0;
}

.menu_body {
  clear: none;
  width: 100%;
}
     
.menu_body img {
  margin: 0 0 10px 0;
  padding:0;
  float: none;
}
   
/* --------------------------------------
  フォトギャラリー
--------------------------------------- */

.album_title {
  text-align: center;
  margin-bottom: 30px;  
}

.album {
  margin: 0;
  padding: 0 0 13px 0;
}
  
.album:last-child {
  padding: 0 0 12px 0;
} 
  
.album img {
  margin: 0 13px 18px 0;
}
  
.photo_area {
  width: 100%;
  margin: 0 0 30px 0;
} 
  
.photo_thumb{
  margin: 0;
} 

.photo_date {
}

/* --------------------------------------
  店舗情報
--------------------------------------- */

.map {
  width: 100%;
  margin: 0 0 25px 0;
  padding: 0;
}

.table_detail th {
  width:30%;
  font-size: 12px;
}
      
.table_detail td {
  width: 70%;
  font-size: 12px;
}     

/* --------------------------------------
  お問い合わせ
--------------------------------------- */

.contact_area_wrap {
  width: 100%;  
}

.contact_message {
  margin: 0 0 40px 0;
  line-height: 23px;
}

.contact_area_wrap input {
  width: 92%;
  height: 20px;    
}

.contact_area_wrap textarea {  
  width: 92%;
  height: 100px;    
}
  
.contact_area .button_area {
  text-align: center;
}
  
.contact_area_wrap input.button {
  width: 100%;
  height: 60px;
  padding: 10px 0;  
}  
  
.contact_name {
  width: 100%;
}
  
.contact_email {
  width: 100%;
}
  
.contact_tel {
  width: 100%;
}
  
.button {
  width: 100%;
}
  
.contact_form {
  display: block;
  float: none;
}   
  
.checkbox input {
  width: 30px;
  height: 30px;
}
  
.radio input {
  width: 30px;
  height: 30px;
}
  
.radio span {
  display: block;
  width: 100%;
  float: left;
  margin: 0 0 5px 0;
}
  
.personal_info {
  width: 100%;
  margin: 0 0 30px 0; 
}
  
.personal_info_txt {
}

/* --------------------------------------
    予約ページ
--------------------------------------- */

.reservation_area {
  width: 100%;    
}

.reservation_form .reservation_area input {
  margin: 5px 5px 0 0;
  padding: 10px;
  height: 20px;
  font-size: 14px;
  vertical-align: middle;
  border: 1px solid #848484;  
  width: 92%;
}

.reservation_form .reservation_area span.radio input {
  margin: 1px 5px 0 0;
  padding: 10px;
  height: 20px;
  font-size: 14px;
  vertical-align: middle;
}

.reservation_form .reservation_area textarea {
  margin: 5px 0 0 0;  
  padding: 10px;
  font-size: 14px;    
  border: 1px solid #848484;  
  vertical-align: middle;
  width: 92%;
  height: 150px;  
}
  
.reservation_form .reservation_area label {
  vertical-align: bottom !important;
  line-height: 1.5em;
  margin: 0;
}  
  
.reservation_area .button {
  width: 100%;
}  
  
.reservation_form .reservation_name {
  width: 100%;
}
  
.reservation_form .reservation_email {
  width: 100%;
}
  
.reservation_form .reservation_tel {
  width: 100%;
}
  
.reservation_form .reservation_memo {
  width: 100%;
}
  
.reservation_form .button_area {
  text-align: center;
}
  
.reservation_area .button {
  width: 100%;
}

/* --------------------------------------
  クーポン
--------------------------------------- */

.coupon_image {
  float: none;
}

.coupon_image img {
  text-align: center;
}

.coupon_body {
  float: none;
  width: 100%;
} 

.coupon_body ul {
  font-weight: bold;
  margin-bottom: 20px;  
}
  
.coupon_body ul li {
  list-style-type: none;
}

.coupon_print {
  display:none;
}   
}