/* ベース */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre, a,
abbr, acronym, address, big, cite, code, del,
dfn, em, font, ins, kbd, q, s, samp, small,
strike, sub, sup, tt, var, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, caption, tfoot,
thead {
  border:0;
  font-family:inherit;
  font-size:100%;
  font-style:inherit;
  font-weight:inherit;
  margin:0;
  outline:0;
  padding:0;
  vertical-align:baseline;
}

caption, th, td {
  font-weight:normal;
  text-align:left;
}

blockquote:before, blockquote:after,q:before, q:after { content:""; }

blockquote, q { quotes:"" ""; }

a img { border:0; }

article, aside, details, figcaption, figure, footer,
header, hgroup, menu, nav, section {
  display:block;
}

body {
  font: 12px/1.5 "メイリオ","Meiryo",arial,"ヒラギノ角ゴ Pro W3",
  "Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MSPGothic",Sans-Serif;
  color:#333;
  -webkit-text-size-adjust:none;
  background:#f5f3ee;
}

/* リンク設定
------------------------------------------------------------*/
a {
  margin:0;
  padding:0;
  text-decoration:none;
  outline:0;
  vertical-align:baseline;
  background:transparent;
  font-size:100%;
  color:#313131;
}

a:hover, a:active { outline: none; color:#0d74ab; }

/**** Clearfix ****/
nav .panel:after,
nav#mainNav:after,
.newsTitle:after,
.post:after,
nav#mainNav .inner:after {
  content:"";
  display:table;
  clear:both;
}

nav .panel,
nav#mainNav,
.newsTitle,
.post,
nav#mainNav .inner {
  zoom:1;
}

/* レイアウト
------------------------------------------------------------*/
#wrapper, .inner {
  margin:0 auto;
  width:880px;
}

#header {
  overflow:hidden;
  background:#f3f1ec url(/usr_img/wall.png) repeat-x;
}

#content {
  float:right;
  width:627px;
  padding:22px 0 50px;
}

#sidebar {
  float:left;
  width:233px;
  padding:22px 0 50px;
}

#footer {
  clear:both;
  background:#909090;
}

/* ヘッダー */

/* サイト説明文
----------------------------------*/
#header h1 {
  padding:5px 0;
  font-size:80%;
  font-weight:normal;
}

/* ロゴ (サイトタイトル)
----------------------------------*/
#header h2 {
  clear:both;
  float:left;
   padding:15px 3px 9px;
  color: #515151;
  font-size:160%;
  font-weight:bold;
}

/* コンタクト
----------------------------------*/
.contact {
  float:right;
  padding:10px 0 0;
  text-align:right;
}

.contact .tel {
  margin-bottom:-5px;
  font-size:220%;
  font-weight:bold;
  font-family:Arial, Helvetica, sans-serif;
}

/* トップページ　メイン画像
----------------------------------*/
#mainImg {
  clear:both;
  margin-top:20px;
  line-height:0;
  text-align:center;
  z-index:0;
}

.post {
  margin:0 0 20px 0;
  padding:20px 10px 20px 20px;
  border:1px solid #e9e2d8;
  background: #fff;
}

.toppage { padding:10px 10px 20px 20px; }

.newImg {
  float:none !important;
  margin:0 !important;
}

/* タイポグラフィ */

#content a { color:#118ed1; }

#content a:hover { color:#0d74ab; }

h2.title {
  clear:both;
  margin:0;
  padding:7px 10px 7px 10px;
  font-size:110%;
  color:#fff;
  border:1px solid #dcdcdc;
  border-bottom:0;
  background:#4a4a4a url(/usr_img/headingBg.png) repeat-x 0 100%;
}

h2.title span {
  padding-left:20px;
  background:url(/usr_img/headingBgSpan.png) no-repeat 0 3px;
}

.post p { padding-bottom:15px; }

.post h3 {
  margin:10px 0;
  font-size:100%;
  font-weight:normal;
  color:#2e2c2c;
  border-bottom:1px solid #515151;
}

.post img { max-width:100%;height:auto; }

.post #map_canvas img { max-width:inherit; height:inherit; }

img.alignleft { margin:10px 15px 15px 10px; }

.alignleft { float:left; }

/* 各ページ */

.topics table {
  width:100%;
  border:0;
  border-collapse:collapse;
}

.topics table th {
  text-align:left;
  padding:10px;
  border-bottom:dotted 1px #dcdcdc;
}

.topics table td {
  text-align:right;
  padding:10px;
  border-bottom:dotted 1px #dcdcdc;
}

.report table {
  width:100%;
  border:0;
  border-collapse:collapse;
}

.report table th {
  font-size:110%;
  padding-bottom:0;
  border-bottom:solid 1px #dcdcdc;
}

.report table td {
  padding:12px 10px 0 10px;
}

.report img {
    float: left;
    margin: 0 15px 5px 0;
}

.tb_std1 {
    border: 1px solid #cccccc;
    border-collapse: collapse;
    border-spacing: 0;
    margin: 10px 0 20px;
}

.tb_std1 th {
    background: none repeat scroll 0 0 #efede7;
    border-color: #cccccc;
    border-image: none;
    border-style: solid;
    border-width: 0 0 1px 1px;
    padding: 10px;
}

.tb_std1 td {
    background: none repeat scroll 0 0 #ffffff;
    border-color: #cccccc;
    border-image: none;
    border-style: solid;
    border-width: 0 0 1px 1px;
    padding: 10px;
}

/* サイドバーウィジェット */

section.widget ul {
  margin:0 0 20px 0;
  padding:10px 10px 10px 17px;
  border:1px solid #e9e2d8;
  background: #fff;
  list-style-type:none;
}

p.banner { padding-bottom:15px; }

p.banner img {
  max-width:233px;
  height:auto;
}

p.banner img:hover {
  cursor:pointer;
  opacity:.8;
}

section.widget h3 {
  clear:both;
  margin:0;
  padding:7px 10px 7px 10px;
  font-size:110%;
  border:1px solid #dcdcdc;
  border-bottom:0;
  color:#fff;
  background:#4a4a4a url(/usr_img/headingBg.png) repeat-x 0 100%;
}

section.widget h3 span {
  padding-left:20px;
  background:url(/usr_img/headingBgSpan.png) no-repeat 0 50%;
}

section.widget li a {
  display:block;
  padding:7px 0 7px 12px;
  background:url(/usr_img/arrow.gif) no-repeat 0 12px;
  border-bottom:1px dashed #dcdcdc;
}

section.widget li:last-child a { border:0; }

/* お知らせ　
-------------*/
.newsTitle {
  clear:both;
  margin:0;
  padding:7px 10px 7px 10px;
  font-size:110%;
  border:1px solid #dcdcdc;
  border-bottom:0;
  color:#fff;
  background:#4a4a4a url(/usr_img/headingBg.png) repeat-x 0 100%;
}

.newsTitle h3 {
  float:left;
  font-weight:normal;
}

.newsTitle h3 span {
  padding-left:20px;
  background:url(/usr_img/headingBgSpan.png) no-repeat 0 3px;
}

.newsTitle p {
  float:right;
  padding:0 0 0 10px;
  font-size:80%;
  background:url(/usr_img/arrow.gif) no-repeat 0 5px;
}

.newsTitle p a{color:#fff;}

.news p {
  clear:both;
  padding-bottom:2px;
  border-bottom:1px dashed #dcdcdc;
}

.news p:last-child { border:0; }

.news p a {
  display:block;
  padding:5px 0;
  color:#333;
  font-style:italic;
  font:italic 110% "Palatino Linotype", "Book Antiqua", Palatino, serif;
}

.news a span {
  color:#515151;
  font:normal 90% Arial, 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;
}

.news span { padding-left:10px; }

.news a:hover span { color:#0d74ab; }

.tb_qrarea {
  background: none repeat scroll 0 0 #fff;
  border: 1px solid #e9e2d8;
  border-spacing: 0;
  margin: 0 auto;
  width: 233px;
}

.tb_qrarea th {
  padding: 0;
}

.tb_qrarea td {
  padding:10px;
}

.tb_qrarea img {
  vertical-align: bottom;
}

/* フッター/メニュー */

#footer ul {
  padding:15px 0 25px;
  text-align:center;
}

#footer li {
  display:inline-block;
  padding: 5px 16px;
  border-left:1px dotted #d5d5d5;
  /display: inline;
  /zoom: 1;
}

#footer li:first-child { border:0; }

#footer li a {
  text-decoration:none;
  color:#fff;
}

#footer li a:hover { color:#999; }

#copyright {
  clear:both;
  padding:10px 0 37px;
  text-align:center;
  color:#fff;
  font-size:10px;
}

#foot_menu strong {
  font-weight:normal;
}

#foot_menu span {
  display:none;
}

/* フォーム用表組み */
.formArea{
  width:100%;
  border-bottom:solid 1px #CCCCCC;
  margin:10px 0;
}

.formRow {
  border-top:solid 1px #CCCCCC;
  background-image:url(/usr_img/form_head_bg.jpg);
  background-repeat:repeat-y;
  background-position:-350px 0; /*500-見出し幅*/
}

.formRow:after{
  display:block;
  clear:both;
  height:0px;
  visibility:hidden;
  content:".";
}

.formItemH {
  width:200px;
  padding:8px 5px;
  float:left;
  _display:inline;
}

.formItemD {
  width:375px;
  padding:8px 5px;
  float:left;
  _display:inline;
}

.formItemD textarea {
  max-width:99%;
}

.formItemD input[type="text"] {
  padding:3px 5px;
}

.form-fdl {
  float:left;
  max-width:50%;
  width:auto;
}

.form-fdc, .form-fdr{
  float:left;
  width:25%;
  text-align:center;
}

.form-food input {
  width:95%;
  height:auto;
  padding-top:5px;
  padding-bottom:5px;
}



/* メインメニュー　PC用
------------------------------------------------------------*/
@media only screen and (min-width: 1025px) {

  nav#mainNav {
    clear:both;
    position:relative;
    z-index:200;
    width:100%;
    padding-top:4px;
    background:url(/usr_img/mainNav.png) repeat-x 0 0;
  }

  nav#mainNav .inner {
    padding-left:1px;
    background:url(/usr_img/mainNavSep.png) no-repeat 0 1px;
  }

  nav#mainNav ul li {
    float:left;
    position:relative;
    background:url(/usr_img/mainNavSep.png) no-repeat 100% 1px;
    list-style-type:none;
  }

  nav#mainNav ul li a {
    display:block;
    text-align: center;
    _float:left;
    color:#fff;
    height:35px;
    line-height:45px;
    font-size:110%;
    font-weight:bold;
    margin-right:1px;
    padding:10px 40px 0;
    background:url(/usr_img/mainnavBg.png) repeat-x 0 0;
  }

  nav#mainNav ul li a span,nav#mainNav ul li a strong { display:block; font-size:90%; line-height:1.4; }

  nav#mainNav ul li a span { font-size:70%; color:#1a6085; font-weight:normal; }

  nav div.panel{ display:block !important; float:left; }

  a#menu { display:none; }

  nav#mainNav ul li a:hover { padding:10px 40px 0; color:#ccc; }

}

/*スライダー*/

.slider-wrapper {
  width:880px;
  margin:0 auto;
}

/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px) {

  nav#mainNav {
    clear:both;
    width:880px;
    margin:0 auto 10px;
    background:#fbfaf9 url(/usr_img/mainnavBg.png) repeat-x 0 -5px;
    border:1px solid #e8e5e0;
  }

  nav#mainNav a.menu {
    width:100%;
    display:block;
    height:37px;
    line-height:37px;
    font-weight: bold;
    text-align:left;
    color:#fff;
    background: url(/usr_img/menuOpen.png) no-repeat 5px 8px;
  }

  nav#mainNav a#menu span { padding-left:35px; }

  nav#mainNav a.menuOpen { background:url(/usr_img/menuOpen.png) no-repeat 5px -34px; }

  nav#mainNav a#menu:hover { cursor:pointer; }

  nav .panel {
    display:none;
    width:100%;
    position:relative;
    right:0;
    top:0;
    z-index:1;
  }

  nav#mainNav ul {
    margin:0;
    padding:0;
  }

  nav#mainNav ul li {
    float:none;
    clear:both;
    width:100%;
    height:auto;
    line-height:1.2;
  }

  nav#mainNav ul li a, nav#mainNav ul li.current-menu-item li a {
    display:block;
    padding:15px 10px;
    text-align:left;
    border-bottom:1px dashed #ccc;
    color:#fff;
    background:#474747;
  }

  nav#mainNav ul li:last-child a { border:0; }

  nav#mainNav ul li li:last-child a { border:0; }

  nav#mainNav ul li li:last-child a { border-bottom:1px dashed #ccc; }

  nav#mainNav ul li a span { display:none; }

  nav#mainNav ul li.current-menu-item a,
  nav#mainNav ul li a:hover,
  nav#mainNav ul li.current-menu-item a,
  nav#mainNav ul li a:active,
  nav#mainNav ul li li.current-menu-item a,
  nav#mainNav ul li.current-menu-item li a:hover,
  nav#mainNav ul li.current-menu-item li a:active {
    color:#118ed1;
    background:#000;
  }

  nav#mainNav ul li li {
    float:left;
    border:0;
  }

  nav#mainNav ul li li a,
  nav#mainNav ul li.current-menu-item li a,
  nav#mainNav ul li li.current-menu-item a {
    padding-left:40px;
    background:#474747 url(/usr_img/sub1.png) no-repeat 20px 18px;
  }

  nav#mainNav ul li li.current-menu-item a,
  nav#mainNav ul li li a:hover,
  nav#mainNav ul li.current-menu-item li a:hover {
    background:#000 url(/usr_img/sub1.png) no-repeat 20px -62px;
  }

  nav#mainNav ul li li:last-child a {
    background:#474747 url(/usr_img/subLast.png) no-repeat 20px 20px;
  }

  nav#mainNav ul li li:last-child.current-menu-item a,
  nav#mainNav ul li li:last-child a:hover,
  nav#mainNav ul li.current-menu-item li:last-child a:hover {
    background:#000 url(/usr_img/subLast.png) no-repeat 20px -65px;
  }

  nav div.panel { float:none; }

  #mainImg { margin-bottom:20px; }

  h2.title span,
  section.widget h3 span,
  .newsTitle h3 span {
    background-position:0 50%;
  }

}

/* サイズ調整 */

/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px) {

  #wrapper, .inner { width:100%; }

  #header { width:96%; padding:0 2%; }

  .contact { padding:10px 0 10px; }

  nav#mainNav { width:95%; }

  nav#mainNav ul { margin:0 auto; }

  nav div.panel { float:none; }

  #mainImg img { width:98%; height:auto; }

  #content, #sidebar { clear:both; width:95%; float:none; margin:0 auto; padding:10px 0; }

  .banner { width:100%; margin:0 auto; text-align:center; }

  p.banner img { width:100%; height:auto; }

  #footer li { margin-bottom:10px; }

  /*スライダー　モバイル*/
  .slider-wrapper { width:95%; margin:0 auto; }


   /*フォーム　モバイル*/
  .formRow { background-image:none; padding-bottom:2%; border:none; }
  .formItemH { background-color:#EFEDE7; width:auto; float:none; }
  .formItemD { width:auto; float:none; }
  .formItemD input[type="text"] {  padding:5px 5px; }
  .form-fdl {  max-width:100%;  width:100%; }
  .form-fdc, .form-fdr{ width:100%; }
  .form-food input { width:100%; height:60px; margin-top:2%; }

}

/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px) {

  nav#mainNav { width:98%; }

  #header { text-align:center; background-image:none; }

  #header h2,.contact { float:none; }

  .contact { padding:0 0 20px; }

  .contact p { text-align:center; }

  img.alignleft { display: block; margin:5px auto; }

  .alignleft { float:none; }

}

/* 追加分 */

input[type="text"]{
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}


.priceBox {
width:100%;
padding:5px 0;
border-bottom:dotted 1px #999999;
}

.priceBox:after{  
display:block;  
clear:both;  
height:0;  
visibility:hidden;  
content:".";  
zoom:1;  
} 

.pBoxLeft {
float:left;
margin-right:10px;
}

.pBoxRight {
width:85px;
float:right;
text-align:right;
}

.pBoxLeftImage {
float:left;
width:200px;
margin:0 10px 0px 0;
}

.pBoxLeftTxt {
padding:5px 0 0 0;
float:left;
max-width:290px;
min-width:100px;
}

.noPhoto {
max-width:500px;
}

#mainImg .nivo-caption {
  text-align:right;
  line-height:1.5;
}

.yoBody div {
  position:absolute;
  right:0;
  top:0;
  width:87px;
  height:57px;
}

.yoBox {
  margin-bottom:15px;
  padding-bottom:15px;
  border-bottom: solid 1px #CCCCCC;
  position:relative;
}

.yoTitle {
  margin-bottom:5px;
  font-size:15px;
}

.compleatBox {
    background: #fff none repeat scroll 0 0;
    border: 1px solid #666;
    margin: 50px auto 100px;
    padding: 40px 20px;
    text-align: center;
    width: 600px;
}

  @media screen and (max-width:640px){
    .compleatBox {
      background: #fff none repeat scroll 0 0;
      border: 1px solid #666;
      margin: 50px 20px 100px;
      padding: 40px 20px;
      text-align: center;
      width: auto;
  }
}

/* メールフォーム用 */

.form_requir {
  background-color:#ff3333;
  color:#ffffff;
  font-size:9px;
  line-height:100%;
  text-align:center;
  padding:0 4px;
  margin-left:10px;
}

.form_fld {
  font-weight:bold;
  font-size:13px;
}

.form-errors {
  color:#ff0000;
  padding-top:8px;
}

.form-paarea{
  display:flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding:15px;
}

.form-pa1{
  position:relative;
  width:130px;
  line-height:1;
}

.form-pa1 .updatable-img[src="usr_img/reload.png"]{
  position:absolute;
  top:-5px;
  left:-5px;
  width:16px;
  height:16px;
  border-radius:8px;
  background:#fff;
}

.form-pa2{
  width:calc(100% - 130px - 20px);
  line-height:1;
}

.form-pa2 input{
  margin-top:4px;
}

@media screen and (max-width:644px){
  
  .form-paarea{
    display:block;
    padding:15px 0;
  }
  
  .form-pa1{
    margin:0 auto 15px;
  }
  
  .form-pa2{
    width:auto;
  }
  
  .form-pa2 input{
    padding:5px;
    height:auto;
    font-size:16px;
    margin-top:10px;
  }
        
}

/* エラー */

.error {
  margin: 100px 0 0 0;
  padding: 0;
  width: 500px;
  text-align: right;
}

.error-box {
  margin: 0;
  padding: 15px;
  font-size: 14px;
  text-align: left;
  border: solid 1px #888888;
  background-color: #ffffff;
}

/* 営業カレンダー */

.calarea {
  margin-bottom: 15px;
  padding: 10px 0;
  border: 1px solid #e8e8e8;
  background: #ffffff;
}

.ocAR{
  font-size:14px;
  text-align:center;
  padding-bottom: 10px;
}

table.ocTB {
  width:auto;
  border:1px #cccccc solid;
  border-collapse:collapse;
  border-spacing:0;
  margin:0 auto;
}

.ocTB th {
  padding:1px 4px;
  background-color:#e8e8e8;
  border:#cccccc solid;
  border-width:0 0 1px 1px;
  font-size:14px;
  font-weight:normal;
  text-align:center;
}

.ocTB td {
  padding:1px 4px;
  background-color:#ffffff;
  border:#cccccc solid;
  border-width:0 0 1px 1px;
  font-size:14px;
  text-align:center;
}

.ocTB td.close {
  background-color:#ffe8e8;
}

.ocTB td span.today {
  font-weight:bold;
}

.ocTB td span.satday {
  color:#0000ff;
}

.ocTB td span.holday {
  color:#ff0000;
}

/* タブテスト01 */

#tabnavi li{
  display:inline;
}

#tabnavi li a{
  display:inline-block;
  background:#405dca;
  color:#fff;
  padding:5px;
  border-radius:5px 5px 0 0;
  text-decoration:none;
}

#tabnavi li a:hover,
#tabnavi li a.active{
  background:#ddd;
  color:#333;
}

#tabcontent{
  padding:5px;
  border:1px dotted #ccc;
}

/* BXスライダー用 */

/* スライダー スタイル初期化
--------------------------------------------------------------- */
.slider_area .bx-wrapper .bx-viewport{/* スタイル初期化 */
  background:none;
  border:none;
  box-shadow:none;
  margin:0;
  padding:0;
  left:0;
}

.slider_area .bx-wrapper .bx-pager{/* ページャー位置初期化 */
  padding:0;
  line-height:1;
}

.slider_area .bx-wrapper{
  margin: 0px;
  border:0;
  background:none;
}

/* カルーセルスライダー
--------------------------------------------------------------- */
.slider_area{
  position: relative;
  height: 320px;
  overflow: hidden;
  margin:0; 
}

.slider_area > .slide_inner{
  position:relative;
  width:2640px;/* (880*3) */
  left:calc(50% - 1320px); 
}

.slider_area > .slide_inner .bx-prev{
  left:calc(50% - 545px);
  width:50px;
  height:50px;
  background:url(./pc/bxslider/images/controls_l.png) center center / 30px auto no-repeat;
  z-index:998;
}

.slider_area > .slide_inner .bx-next{
  right:calc(50% - 545px);
  width:50px;
  height:50px;
  background:url(./pc/bxslider/images/controls_r.png) center center / 30px auto no-repeat;
  z-index:998;
}

.slider_area .bx-wrapper .bx-controls-direction a{
position: absolute;
top: 50%;
margin-top: -25px;
outline: 0;
text-indent: -9999px;
z-index: 9999;
}

.slider_area .bx-wrapper .bx-prev:hover{background-position:center center;}
.slider_area .bx-wrapper .bx-next:hover{background-position:center center;}


@media screen and (max-width:879px){
  
.slider_area{
  height:auto;
  padding:0;
  width:95%;
  margin:0 auto;
}
  
.slider_area > .slide_inner{
  position:relative;
  width:300%;
  left:-100%;
}
  
.slider_area > .slide_inner img{
  width: 100% !important;
  height: auto !important;
}
  
.slider_area > .slide_inner .bx-prev,
.slider_area > .slide_inner .bx-next{
  display:none;
}
  
}

