/* コンテンツ html body */

html {
  overflow-y:scroll;
}

body {
  margin:0;
  padding:0;
  line-height:1.4;
  letter-spacing:1px;
  font-family: "メイリオ", "MS P ゴシック","MS P Gothic","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Osaka","Verdana","Helvetica","sans-Serif";
  font-size:12px;
  color:#333333;
  border-top:3px solid #6AB98D;
  background:#ffffff;
}

#main h2 {
  position:absolute;
  margin:0;
  padding:0;
  top:-102px;
  left:-230px;
  width:860px;
  height:100px;
  line-height:100px;
  text-indent:30px;
  color:#666666;
  font-weight:normal;
  font-size:21px;
}

/* サイト全体 */

p {
  margin:0 0 1em 0;
  padding:0;
}

br {
  letter-spacing:normal;
}

a {
  color:#397D59;
  text-decoration:underline;
}

a:hover {
  color:#6AB98D;
  text-decoration:none;
}

a:hover img {
  filter: alpha(opacity=50);
  -moz-opacity: 0.50;
  opacity: 0.50;
}

dt {
  margin-bottom:3px;
}

dd {
  padding: 0;
  margin:0 0 0.5em 1em;
  padding: 3px;
  background: #eee;
}

img {
  border:0;
  vertical-align: middle;
}

h1,h2,h3,h4,h5,h6 {
  margin: 0;
}

h3 {
  font-size: 16px;
  font-weight: bold;
  color: #66bb88;
  line-height: 100%;
  padding: 10px 0 6px 8px;
  margin-bottom: 8px;
  border-left: 6px solid #66bb88;
  border-right: 1px dotted #cccccc;
  border-top: 1px solid #66bb88;
  border-bottom: 1px dotted #cccccc;
  background: #ffffff;
}

h4 {
  font-size: 16px;
  font-weight: bold;
  color: #0099cc;
  line-height: 100%;
  padding: 3px 0 3px 15px;
  margin-bottom: 6px;
  border-bottom: 1px solid #0099cc;
  background: url("/usr_img/pc/icon03.png") 0 4px no-repeat;
}

h5 {
  font-size: 13px;
  font-weight: bold;
  color: #666666;
  line-height: 100%;
  padding: 3px 0 3px 10px;
  margin-bottom: 6px;
  border-bottom: 1px dotted #cccccc;
  background: url("/usr_img/pc/icon02.png") 0 5px no-repeat;
}

h6 {
  font-size:13px;
  font-weight: bold;
  color: #666666;
  line-height: 100%;
  padding:3px 0;
}

.mb10 {
  margin-bottom:10px;
}

.m0 {
  margin:0;
}

.table-deco1 {
  /* border-top: dashed 1px #CCCCCC; */
}

.table-deco1 td {
  padding: 6px;
  border-bottom: dashed 1px #CCCCCC;
}

.table-deco2 {
  border: 1px #cccccc solid;
  border-collapse: collapse;
  border-spacing: 0;
  margin-bottom: 5px;
}

.table-deco2 th {
  padding: 5px;
  border: #cccccc solid;
  border-width: 0 0 1px 1px;
  background: #eeeeee;
  line-height: 120%;
  text-align: center;
}

.table-deco2 td {
  padding: 5px;
  border: 1px #cccccc solid;
  border-width: 0 0 1px 1px;
}

.table-deco3 {
  border: none;
  border-collapse: collapse;
  border-spacing: 0;
  margin-bottom: 5px;
}

.table-deco3 td {
  padding: 5px;
  border: none;
  border-width: 0 0 1px 1px;
}

.table-deco4 {
  border: 1px #cccccc solid;
  border-collapse: collapse;
  border-spacing: 0;
  margin-bottom: 5px;
}

.table-deco4 th {
  padding: 5px;
  border: #cccccc solid;
  border-width: 0 0 1px 1px;
  background: #eeeeee;
  line-height: 120%;
  text-align: left;
}

.table-deco4 td {
  padding: 5px;
  border: 1px #cccccc solid;
  border-width: 0 0 1px 1px;
  line-height: 120%;
  text-align: center;
}

.table-form1 {
  border-top: dashed 1px #CCCCCC;
}

.table-form1 td {
  padding: 6px;
  border-bottom: dashed 1px #CCCCCC;
}

.CorpTB {
  margin:0;
  padding:0;
  border-collapse:collapse;
  border-top:dotted 1px #aaa;
}

.CorpTB td {
  padding:8px;
  text-align:left;
  vertical-align:top;
  border-bottom:dotted 1px #aaa;
}

.CorpTB th {
  width:100px;
  padding:8px;
  text-align:left;
  vertical-align:middle;
  font-weight: normal;
  border-bottom:dotted 1px #aaa;
  background-color:#eee;
}

/* テンプレート */

#header {
  width:860px;
  margin:0 auto;
  position:relative;
  padding:0;
  height:70px;
}

#menu {
  width:100%;
  float:left;
  border-bottom:5px solid #6AB98D;
  background:url("/usr_img/pc/bg_menu.gif") 0 0 repeat-x;
}

#contentArea {
  clear:both;
  background:url("/usr_img/pc/content_bg_top.jpg") repeat-x top center;
}

#icatchIndexWrap {
  clear:both;
  position:relative;
  overflow:hidden;
}

#icatchWrap {
  clear:both;
  position:relative;
  z-index:-1;
  overflow:hidden;
  height:200px;
  background:#ddd;
}

#icatch {
   width:860px;
   margin:0 auto;
}

#contents {
   clear:both;
   position:relative;
   width:860px;
   margin:0 auto 0 auto;
   border-left:solid 1px #EEEEEE;
   border-right:solid 1px #EEEEEE;
   background:#fff;
}

#main {
   float:right;
   width:600px;
   padding:12px 10px 10px 10px;
   background:url("/usr_img/pc/bg_contents.gif") 100% 0 no-repeat;
   position:relative;
}

#sub {
   float:left;
   width:220px;
   padding:10px;
   background:url("/usr_img/pc/bg_contents.gif") 0 0 no-repeat;
}

#sub img {
  margin-bottom:15px;
}

#pageTop {
   clear:both;
   width:840px;
}

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

#footMenu {
   clear:both;
   overflow:hidden;
   width:810px;
   margin:0 auto;
   padding:30px 0px 30px 40px;
}

/* ヘッダ部 */

#header h1 {
  margin:0;
  padding:19px 0;
  height:32px;
  float:left;
}

#header h1 a {
  display:block;
  padding:32px 0 0 0;
  overflow:hidden;
  height:0;
  width:201px;
  background-image:url("/usr_img/pc/logo.jpg");
}

#header .headTel {
  width:200px;
  float:right;
  text-align:right;
  height:70px;
}

#pr {
  margin:0;
  height:18px;
  font-size:10px;
  background-color:#E6F2EC;
  border-bottom:solid 1px #DDDDDD;
  text-align:center;
}

#pr p {
  width:860px;
  margin:0 auto;
  height:18px;
  line-height:18px;
  text-align:left;
}

#header #gNavi {
  position:absolute;
  top:0;
  right:0;
  margin:0;
  font-size:11px;
}

#header-img {
  margin:0 auto 0 auto;
  padding: 0;
  width: 860px;
  height: auto;
  text-align: right;
  border-top: 2px solid #901d34;
}

/* メニュー部 */

#menu ul {
  overflow:hidden;
  width:858px;
  margin:0 auto;
  padding:0;
  border-right:1px solid #e5e5e5;
}

#menu li {
  float:left;
  color:#333;
  text-align:center;
  list-style-type:none;
}

#menu li a {
  display:block;
  width:142px;
  color:#333;
  line-height:40px;
  text-decoration:none;
  border-left:1px solid #e5e5e5;
}

#menu li a.active {
  color:#fff;
  text-decoration:none;
  background:url("/usr_img/pc/bg_menu_on.jpg") 0 0 repeat-x;
}

#menu li a:hover {
  color:#fff;
  text-decoration:none;
  background:url("/usr_img/pc/bg_menu_on.jpg") 0 0 repeat-x;
}

/* サブコンテンツ部 */

#sub .section {
  margin-bottom:10px;
  border:1px solid #E8E8E8;
}

#sub h3 {
  padding:6px 5px;
  font-size:13px;
  font-weight:bold;
  color:#333333;
  text-align:center;
  border:1px solid #fff;
  border-bottom:none;
  background:#0089a1 url("/usr_img/pc/bg_sub_h3_off.jpg") 0 0 repeat-x;
  margin:0;
}

#sub h3.on {
  color:#fff;
  background:#0089a1 url("/usr_img/pc/bg_sub_h3.jpg") 0 0 repeat-x;
}

#sub ul {
  margin:0;
  padding:2px;
  border:1px solid #fff;
  background:#E8E8E8;
}

#sub li {
  padding:3px 5px 2px 5px;
  list-style:none;
  background-color:#FFF;
  border-bottom:dotted 1px #CCCCCC;
}

#sub li.endLi {
  border:none;
}

#sub li a {
  display:block;
  padding-left:5px;
  text-decoration:none;
}

#sub li a:hover {
  border-color:#09C;
}

#sub2 ul {
  margin:0;
  padding:0;
}

#sub2 li {
  line-height:1.4;
  border-bottom:1px solid #ddd;
  list-style:none;
}

#sub2 li a {
  display:block;
  padding-left:20px;
  color:#333;
  line-height:3.0;
}

/* ページトップ部 */

#pageTop {
  padding:20px 0 4px 0;
  text-align:right;
}

#pageTop a {
  padding:5px 5px 5px 17px;
  background:#ddd url("/usr_img/pc/bg_pagetop.gif") 7px 50% no-repeat;
  font-size:11px;
}


/* 各ページ設定 */

.index_left {
  width: 420px;
  float: left;
  margin-bottom: 10px;
}

.index_right {
  width: 130px;
  float: right;
  padding: 10px 10px 0 10px;
  margin-bottom: 10px;
  border: 1px solid #ccc;
  background: none repeat scroll 0 0 #eee;
}

.index_right img {
  margin-bottom: 10px;
}

.clearfloat {
  clear: both;
  height: 1px;
  width: 1px;
  font-size: 0px;
  line-height: 0px;
  overflow: hidden;
}

.news_right {
    font-size: 12px;
    font-weight: normal;
    position: absolute;
    right: 0px;
    top: 2px;
}

.indexBoxArea {
  width:580px;
  margin:0 10px;
}

.indexBoxArea div {
  float:left;
  padding:0;
}

.indexBoxArea div a {
  border:solid 1px #CCCCCC;
  display:block;
  padding:48px 10px 10px 90px;
  width:183px;
  height:80px;
  color:#333333;
  text-decoration:none;
}

.indexBoxArea div a:hover {
  filter: alpha(opacity=70);
   -moz-opacity:0.70;
  opacity:0.70;
}

.ib1 { margin:0 10px 10px 0; }
.ib1 a { background-image:url(/usr_img/pc/index/top_box1.jpg); }
.ib2 { margin:0 0 10px 0; }
.ib2 a { background-image:url(/usr_img/pc/index/top_box2.jpg); }
.ib3 { margin:0 10px 10px 0; }
.ib3 a { background-image:url(/usr_img/pc/index/top_box3.jpg); }
.ib4 { margin:0 0 10px 0; }
.ib4 a { background-image:url(/usr_img/pc/index/top_box4.jpg); }

.indexReadBox {
  width:580px;
  margin:0 10px 10px 10px;
}

.box_1px {
  padding:5px;
  border: 1px solid #cccccc;
}

.result_left {
  width: 283px;
  float: left;
  margin-bottom: 10px;
}

.result_right {
  width: 283px;
  float: right;
  margin-bottom: 10px;
}

.form-fdr {
  width:160px;
  float:left;
  text-align:right;
}

.form-fdr input {
  padding:10px 0;
  width:150px;
}

.form-fdl {
  float:left;
  text-align:right;
  line-height:43px;
}

.form-fdc{
  width:160px;
  float:left;
  text-align:right;
}

.form-fdc input {
  width:150px;
  padding:10px 0;
}

.form-food {
  width:100%;
  float:right;
}

.form-food:after {
    content: "";
    clear: both;
    height: 0;
    display: block;
    visibility: hidden;
}

.table-form1 {
  margin-bottom:20px;
}


.myNavi-box {
  background-color:#e5ffff;
  padding:10px;
  margin-top:10px;
}

.myNavi-box ul {
  margin:0;
  padding:0 0 0 1.5em;
}

.myNavi-box ul li {
  margin:0 0 5px 0;
  padding:0;
}

.myNavi-box ul li:last-child{
  margin:0;
}

/* フッダメニュー部 */

#footMenu .section {
  float:left;
  width:172px;
  margin-right:30px;
  padding:0;
}

#footMenu h3 {
  font-size: 12px;
  font-weight: normal;
  line-height: 100%;
  color: #333333;
  border: none;
  border-bottom: 1px dotted #999;
  background-image: none;
  background-color: transparent;
  margin: 0 0 4px 0;
  padding: 0 0 4px 0;
}

#footMenu ul {
  margin:0;
  padding:0;
}

#footMenu li {
  margin:0;
  padding:0;
  list-style:none;
}

#footMenu li a {
  padding-left:10px;
  font-size:11px;
  background:url("/usr_img/pc/bg_footmenu.gif") 0 50% no-repeat;
}

/* フッダ部 */

.copyright {
  clear:both;
  padding:10px 0;
  font-style:normal;
  font-size:11px;
  text-align:center;
}


/* エラー */

.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;
}

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

/* 食べログ */

.dmBoxType01{
width:580px;
margin:0 auto 1em;
}

.dmListType01{
padding:0;
list-style-type:none;
letter-spacing:0;
line-height:1;
margin:0 0 20px 0;
}
.dmListType01 li{
margin-bottom:10px;
}

.dmListType02{
padding:0;
list-style-type:none;
letter-spacing:0;
line-height:1;
margin:0;
}

.dmListType02 li{
float:left;
margin:0 10px 10px 0;
}

.voiceBox{
border:2px solid #F6AB00;
padding:13px;
margin-bottom:20px;
}

.faqBox{
border:2px solid #CCCCCC;
padding:8px;
margin-bottom:20px;
}
.faqBox dl{
margin:0;
padding:0;
}
.faqBox dt{
padding:0 0 10px 35px;
border-bottom:1px dotted #CCCCCC;
margin-bottom:10px;
background:url(usr_img/pc/dm/faq_q.png) 0 0 no-repeat;
}
.faqBox dd{
padding:0 0 0 35px;
margin:0;
background:none;
background:url(usr_img/pc/dm/faq_a.png) 0 0 no-repeat;
}

/* ライブラリ */

.mtop10{margin-top:10px;}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:30px;}
.fleft{float:left;}
.fright{float:right;}
.txtright{text-align:right;}
.txtcenter{text-align:center;}

/* clearfix */

.cf:before,
.cf:after {
    content:"";
    display:table;
}
.cf:after {
    clear:both;
}
/* IE 6/7 */
.cf {
    zoom:1;
}

/* カレンダー */

.calarea {
  margin:0;
  padding:0 10px;
}

.ocAR{
  max-width:193px;
  font-size:13px;
  text-align:center;
}

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

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

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

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

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

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

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

/* 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-bottom:0;
}

.slider_area{
  position: relative;
  height: 320px;
  overflow: hidden;
  margin:0; 
}

.slider_area > .innerS{
  position:relative;
  width:2640px;/* (990*3)+100 */
  left:calc(50% - 1320px); 
}

.bxslider img {
  margin:0 auto;
  display:block;
  width:auto;
  height:auto;
}

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


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

.slider_area > .innerS .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-prev:hover{background-position:center center;}
.slider_area .bx-wrapper .bx-next:hover{background-position:center center;}


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

.slider_area{
  height:auto;
}
  
.slider_area > .innerS{
  position:relative;
  width:300%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
  
}

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

.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;
  }
        
}

