@charset "utf-8";

/* debug ------------------------------------------------------------

.contents,
aside,
nav,

#bodyWrapper,
#body,

#headerWrapper,
#header,

#footerWrapper,
#footer,

#contentsWrapper,
#contents,

#contentsHeaderWrapper,
#contentsHeader,

#contentsFooterWrapper,
#contentsFooter,

#rightContentsWrapper,
#rightContents,

#leftContentsWrapper,
#leftContents,

#mainContentsWrapper,
#mainContents,

#mainContentsHeaderWrapper,
#mainContentsHeader,

#mainContentsFooterWrapper,
#mainContentsFooter,

#innerRightWrapper,
#innerRight,

#innerLeftWrapper,
#innerLeft,

#innerMainWrapper,
#innerMain,

body {
  border:1px solid #eee;
  margin:5px;
}

header{
  background-color:#dfd;
}
footer{
  background-color:#bef;
}
section{
  background-color:#ffc;
}
div{
  background-color:#fff;
}
.contents{
  background-color:#fbb;
}

aside{
  background-color:#fee;
}
nav{
  background-color:#eff;
}
 */
/* reset ------------------------------------------------------------
 */
*{
  margin:0;
  padding:0;
}
h1, h2, h3, h4, h5{
  text-align:left;
  margin:0;
  padding:0;
}


/* image setting ----------------------------------------------------
 */
img {
  border:none 0px;
  vertical-align:top;
}


/* list setting -----------------------------------------------------
 */
ul{
  list-style:none;
  list-style-position: outside;
  margin:0;
  padding:0;
}
ol{
  list-style:none;
  list-style-position: inside;
  margin:0;
  padding:0;
}
menu{
  list-style:none;
  list-style-position: outside;
  margin:0;
  padding:0;
}
*:first-child+html menu{
  list-style-position: none;
}
li{
  margin:0;
  padding:0;
}


/* form setting -----------------------------------------------------
 */
legend {
  display:block;
}
fieldset{
  border:none 0px;
  vertical-align:bottom;
}
input, textarea, select {
  vertical-align:middle;
}


/* anchor setting ---------------------------------------------------
 */
a {
  color:#1c439b;
  text-decoration:none;
  cursor:pointer;
}
a:hover {
  color:#1c439b;
  text-decoration:underline;
}


/* font setting -----------------------------------------------------
 */
body, input, textarea{
  font-family:'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', sans-serif;
  _font-family:'ＭＳ Ｐゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro', sans-serif;
  *font-family:'ＭＳ Ｐゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro', sans-serif;
  font-size:12px;
  line-height:1.6; /* 他にもコンテンツ内に高さを合わせている箇所があるので注意する */
}
body{
  color:#424242;
  *font-size:small;
  *font:x-small;
}
input, textarea, select {
  font-size:13px;
  line-height:1.6;
}


/* table setting ----------------------------------------------------
 */
table, tbody, tfoot, thead, tr, th, td, table > caption {
  font-size:1em;
  border:none;
}



/* figure setting ---------------------------------------------------
 */
figure, figcaption {
  font-size:1em;
}



/* inline-block setting ---------------------------------------------
   フロートの代わりにコレを使う場合は下記に注意
   親要素をfont-size:0にしないと、要素間にfont-size通りの隙間ができる
 */
.inlineBlock{
  display:inline-block;
}
* html .inlineBlock {
  display:inline;
  zoom:1;
}
*:first-child+html .inlineBlock {
  display:inline;
  zoom:1;
}


/* inline setting ---------------------------------------------------
 */

/* head title
 */

h1{ font-size:182%;   font-weight:bold; line-height:1.2; }
h2{ font-size:153.9%; font-weight:bold; line-height:1.2; }
h3{ font-size:138.5%; font-weight:bold; line-height:1.4; }
h4{ font-size:123.1%; font-weight:bold; line-height:1.4; }
h5{ font-size:108%;   font-weight:bold; line-height:1.6; }
h6{ font-size:100%;   font-weight:bold; line-height:1.6; }


/* paragraph setting ------------------------------------------------
 */
p{
  white-space: normal; /* スペース・タブ・改行はブラウザに任せる */
  word-break: normal; /* 長文の改行時に泣き別れを許容する */
  wrod-wrap: break-word; /* 単語の泣き別れを許容する */
  line-break: strict; /* 禁則処理（ハイフネーション）を厳格に行う */
  text-justify: newspaper; /* 左揃えを news paper 風にする（通常処理） */
  text-align: left; 
  margin-top:1em;
}
p:first-child{
  margin-top:0;
}

html[lang="zh"] p, /* china */
html:lang(zh) p,
html[lang="ko"] p, /* korea */
html:lang(ko) p,
html[lang="ja"] p, /* japan */
html:lang(ja) p,
html[lang="zh"] li, /* china */
html:lang(zh) li,
html[lang="ko"] li, /* korea */
html:lang(ko) li,
html[lang="ja"] li, /* japan */
html:lang(ja) li,{
  text-align: justify; /* 左揃えで改行が入る場合行端揃えを行う */
  text-justify: inter-ideograph; /* 行端揃えをＣＪＫに最適化する */
}
html[lang="en"] p, /* english */
html[lang="en"] li{ /* english */
  text-align: left;
  text-justify: newspaper;
}


.data{ font-size:93%; line-height:1.2; }
.caption{ font-size:93%; line-height:1.2; }
.quote{ font-size:84%; line-height:1.2; }
.footnote{ font-size:73%; line-height:1.2; text-align:right; }

/* wording ----------------------------------------------------------
 */
sup{ font-size:69%; line-height:1.3; }
sub{ font-size:69%; line-height:1.3; }

address {
  font-style: normal;
}

.highlight{ font-weight:bold; font-size:108%; }


/* print setting ----------------------------------------------------
 */
.printOnly{
  display:none;
}
@media print{
  .newPage{
	page-break-before: always !important;
  }
  .printOnly{
	display:block;
  }
}


/* clearfix ---------------------------------------------------------
 */
.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}
*:first-child+html .clearfix { zoom: 1; } /* IE7 */


br.clearfix{
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
  line-height:0;
}
*:first-child+html br.clearfix { zoom: 1; } /* IE7 */


/* browser bug fix --------------------------------------------------
 */

/* fix IE6 Duplicate Characters Bug */
.fixIE6DCB{
  width:0 !important;
  height:0 !important;
  margin:0 !important;
  padding:0 !important;
}


/* body -------------------------------------------------------------
 */
#bodyWrapper{
  padding-top:10px;
  text-align:center;
  background:url(../img/header/goldLineBg.png) left top repeat-x;
}
#body{
  text-align:left;
}


/* header -----------------------------------------------------------
 */
#headerWrapper{
  width:960px;
  margin:0 auto;
}
#header{
  width:960px;
  height:102px;
  position:relative;
}
#header .logo{
  position:absolute;
  top:21px;
  left:0;
}
#header .utilSitemap{
  position:absolute;
  top:7px;
  right:410px;
  padding-left:18px;
  font-size:10px;
  background:url(../img/header/sitemapIcon.png) left 0.05em no-repeat;
}
#header .utilSitemap a{
  color:#555555;
}
#header .utilFontSize{
  position:relative;
  right:20px;
}
#header .utilFontSize h6{
  position:absolute;
  top:7px;
  right:320px;
  font-size:10px;
  font-weight:normal;
  color:#555555;
}
#header .utilFontSize .fontSizeDefault{
  position:absolute;
  top:3px;
  right:277px;
}
#header .utilFontSize .fontSizeLarge{
  position:absolute;
  top:3px;
  right:245px;
}

#search .text{
  width:163px;
  height:22px;
  margin-right:-5px;
  font-size:12px;
  border:#b2b2b2 solid 1px;
}
#search .image{
  font-size:1px;
}


#search{
  position:absolute;
  top:-14px;
  _top:-14px;
  right:-0;
  font-size:12px;
  width:240px;
}

#search table{
  border:top none !important;
}
#search th,
#search td{
  border:none !important;
  margin:0 !important;
  padding:0 !important;
}
#search td.gsc-search-button,
#search td.gsc-input{
  margin:0;
  padding:0;
  
}
#search table.gstl_0{
  margin:0;
  padding:0;
}
#search div.gsc-input-box table{
  margin-top:0 !important;
}

.gsc-input-box{
  border:none !important;
}


#gm .room{
  position:absolute;
  top:41px;
  right:645px;
}
#gm .service{
  position:absolute;
  top:41px;
  right:476px;
}
#gm .food{
  position:absolute;
  top:41px;
  right:355px;
}
#gm .branch{
  position:absolute;
  top:41px;
  right:229px;
}
#gm .event{
  position:absolute;
  top:41px;
  right:76px;
}
#gm .reserve{
  position:absolute;
  top:41px;
  right:0px;
}


/* footer -----------------------------------------------------------
 */
#footerWrapper{
  background:#f7f7f7;
  padding:28px 0 35px 0;
}
#footer{
  width:960px;
  margin:0 auto;
}
#footer .footerImages{
  margin:0 50px 0 49px;
  _margin-left:24px;
  float:left;
}
#footer .footerImages p{
  margin-top:40px;
}
#footer .nav{
  width:707px;
  _width:677px;
  padding-left:50px;
  border-left:#c1c1c1 dotted 1px;
  float:right;
}
#footer .nav .navList{
  width:171px;
  _width:160px;
  margin-right:5px;
  float:left;
}
#footer .nav .navList ul{
  list-style:disc;
}
#footer .nav .navList li{
  line-height:200%;
  font-size:85%;
}
#footer .nav .navList li a{
  color:#444444;
}
#footer .copy{
  margin-top:20px;
  float:right;
}

#footer .groupLink{
  margin-top:6px;
  padding-left:49px;
  float:left;
}
#footer .groupLink li{
  margin-right:40px;
  float:left;
}
#footer .groupLink li:last-child{
  margin-right:0;
}

/* contents ---------------------------------------------------------
 */
#contentsWrapper{
  width:960px;
  margin:37px auto 0;
}
#contents{
}


/* underContents header --------------------------------------------------
 */
#underContentsHeaderWrapper{
  float:right;
  width:716px;
}
#underContentsHeader{
}
#underContentsHeader .breadCrumb{
  font-size:93%;
}


/* contents footer --------------------------------------------------
 */
#contentsFooterWrapper{
}
#contentsFooter{
  width:960px;
  margin:56px auto 0;
}
#contentsFooter .pageTop{
  text-align:right;
}


/* left contents ----------------------------------------------------
 */
#leftContentsWrapper{
  float:left;
  width:207px;
}
#leftContents .reserve{
  position:relative;
}
#leftContents .reserve .balloon{
  position:absolute;
  top:-35px;
  left:-17px;
  font-size:1px;
}
#leftContents .sideBtnList{
  margin-top:27px;
  padding:20px 0 0 12px;
  height:174px;
  background:url(../img/side/orangeBg.png) left top no-repeat;
}
#leftContents .sideBtnList .branch{
  position:relative;
  margin-bottom:8px;
}
#leftContents .sideBtnList .branch select{
  position:absolute;
  top:40px;
  left:22px;
  font-size:10px;
}
#leftContents .memberList{
  margin-top:32px;
}

#leftContents .textList ul{
  margin-top:14px;
}
#leftContents .textList ul li{
  margin-top:8px;
  padding-left:10px;
  background:url(../img/icon/dotBlue.png) left 0.2em no-repeat;
}
#leftContents .otherList{
  margin-top:35px;
}
#leftContents .otherList li{
  margin-top:13px;
}

#underEditAreaSide{
  margin-top:35px;
}


/* main contents ----------------------------------------------------
 */
#mainContentsWrapper{
  float:right;
  width:716px;
}
#mainContents{

}

#snsBtnUnder{
  margin-top:25px;
  padding-top:27px;
  border-top:#c4c4c4 dotted 1px;
}
#snsBtnUnder ul li{
  margin-left:15px;
  vertical-align:middle;
}
#snsBtnUnder ul li{
  float:right;
}
#snsBtnUnder ul .tw{
  width:85px;
}
#snsBtnUnder ul .gp{
  width:60px;
}
#snsBtnUnder ul .mi{
  width:90px;
}
#snsBtnUnder ul .fb{
  margin-left:20px;  
}

/* main contents header ---------------------------------------------
 */
#mainContentsHeaderWrapper{
}
#mainContentsHeader{
  margin-top:20px;
}
#mainContentsHeader time{
  margin-bottom:10px;
  display:block;
}
#mainContentsHeader h1{
  width:686px;
  padding:15px;
  background:url(../img/contents/dotBg.png) left top repeat;
  font-size:146.5%;
  font-weight:normal;
}
#mainContentsHeader .description{
  margin-top:20px;
  padding-bottom:15px;
  font-size:116%;
  font-weight:normal;
  border-bottom:#c4c4c4 dotted 1px;
}


/* main contents footer ---------------------------------------------
 */
#mainContentsFooterWrapper{
  width:716px;
  margin:55px auto 0;
  float:right;
}
#mainContentsFooter{
}
#mainContentsFooter p{
  width:340px;
  margin:0 auto;
}


/* contents parts setting -----------------------------------------------------
   */

/* デフォルトのコンテンツセクション */
section.contents{
  margin-top:30px;
}
section.contents .wysiwyg h2{
  margin-top:30px;
  padding-left:15px;
  font-size:131%;
  font-weight:normal;
  color:#7e4700;
  background:url(../img/icon/h2Icon.png) left top no-repeat;
}
section.contents .wysiwyg h3{
  margin-top:30px;
  padding-left:15px;
  font-size:131%;
  font-weight:normal;
  color:#7e4700;
  background:url(../img/icon/h3Icon.png) left 0.2em no-repeat;
}
section.contents .wysiwyg h4{
  margin-top:30px;
  padding-left:15px;
  font-size:123.1%;
  font-weight:normal;
  color:#7e4700;
  background:url(../img/icon/h4Icon.png) left 0.2em no-repeat;
}
section.contents .wysiwyg h5{
  margin-top:30px;
  padding-bottom:5px;
  font-size:123.1%;
  font-weight:normal;
  border-bottom:#debc88 solid 1px;
}
section.contents .wysiwyg h6{
  margin-top:30px;
  font-weight:normal;
  font-size:116%;
}
section.contents .wysiwyg ul{
  list-style:disc;
  list-style-position: inside;
  margin:0;
  padding:0;
}
section.contents .wysiwyg ol{
  list-style:decimal;
  list-style-position: inside;
  margin:0;
  padding:0;
}



/* ファイルサイズ用バルーン */
.size{
  position:absolute;
/*  width:100px; */
  width:52px;
  height:38px;
  line-height:29px;
  font-size:11px;
  text-align:left;
}
* html a .size{
  right:inherit;
  /*left:0;*/
}
* html a:hover .size{
  text-decoration:none;
}



*[data-icon="pdf"] a{
  background-image:url('../img/icon/pdf.png');
}
*[data-icon="doc"] a{
  background-image:url('../img/icon/doc.png');
}
*[data-icon="zip"] a{
  background-image:url('../img/icon/zip.png');
}


/* 表組み */
table{
  margin-top:1em;
  border:1px solid #d4d4d4;
  border-collapse:collapse;
}
table caption{
  font-size:93%;
}
table th{
  border-right:1px solid #d4d4d4;
  border-bottom:1px solid #d4d4d4;
  background-color:#debc88;
  padding:3px;
  color:#7e4700;
}
table td{
  border-right:#d4d4d4 solid 1px;
  border-bottom:#d4d4d4 solid 1px;
  background-color:#ffffff;
  padding:3px;
}


/* 図表左回りこみ */
figure.leftWrap{
  float:left;
  margin-right: 5px;
  margin-bottom: 5px;
}

/* 図表右回りこみ */
figure.rightWrap{
  float:right;
  margin-left: 5px;
  margin-bottom: 5px;
}

/* 図表２段組 */
figure.block2{
  width:100%;
  margin: auto;
}
figure.block2 div.fig1,
figure.block2 div.fig2{
  width:50%;
  float:left;
  text-align:center;
}
figure.block2 div.fig2{
  float:right;
}

/* 図表３段組 */
figure.block3{
  width:99%;
  margin:0 auto;
}
figure.block3 div.fig1,
figure.block3 div.fig2,
figure.block3 div.fig3{
  width:33%;
  float:left;
  text-align:center;
}
figure.block3 div.fig1{
  margin-left:0.5%;
}
figure.block3 div.fig3{
  text-align:center;
}

/* 図表キャプション */
figure figcaption{
  margin-top:0.5em;
  font-size:85%;
  text-align:center;
}
figure figcaption:after{
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}

/* 図表キャプション（２段組用） */
figure.block2 figcaption p.cap1,
figure.block2 figcaption p.cap2{
  float:left;
  margin-top:0.5em;
  width:50%;
  text-align:center;
}

/* 図表キャプション（３段組用） */
figure.block3 figcaption p.cap1,
figure.block3 figcaption p.cap2,
figure.block3 figcaption p.cap3{
  float:left;
  margin-top:0.5em;
  width:33%;
  text-align:center;
}

/* コード表示 */
figure pre{
  margin:10px 0 0 10px;
  padding:0 10px;
  line-height:1.3em;
  border: 1px solid #d4d4d4;
}


/* 日付付きリスト */
section.contents .body article.list{
  position:relative;
  margin-top:10px;
}
section.contents .body article.list p.time{
  margin-left:3px;
  margin-bottom:-1.6em; /* 行の高さに合わす */
}
section.contents .body article.list > p{
  position:relative;
  margin:0 0 0 7em;
}
section.contents .body article.list p.dataicon{
}
section.contents .body article.list p.dataicon a{
  position:relative;
  margin-right:10px;
  display:block;
  padding-right:20px;
  background-position:right 0.3em;
  background-repeat:no-repeat;
}

/* カテゴリーアイコン付きリスト */
section.contents .withCategoryList{
  margin-top:49px;
}
section.contents .withCategoryList article{
  margin-top:10px;
}
section.contents .withCategoryList article .new{
}
section.contents .withCategoryList article header{
  float:left;
}
section.contents .withCategoryList article header time{
  width:120px;
  display:inline-block;
}
section.contents .withCategoryList article header .catIcon{
  width:90px;
  margin:0 18px 0 0;
  padding:1px 0 2px;
  text-align:center;
  display:inline-block;
  font-size:85%;
}
section.contents .withCategoryList article header .iconColor01{
  background:#f5e1c2;
}
section.contents .withCategoryList article header .iconColor02{
  background:#e6e6e6;
}
section.contents .withCategoryList article h3{
  width:487px;
  font-size:100%;
  font-weight:normal;
  float:left;
  line-height:160%;
}
section.contents .withCategoryList article .newIcon img{
}
section.contents .withCategoryList .moreBtn{
  margin-top:25px;
  text-align:right;
}


/* ダウンロードファイルリスト */
#downloadContents{
  margin-top:26px;
  padding-top:20px;
  border-top:#c4c4c4 dotted 1px;
}
#downloadContents header h1{
  padding:0;
  background:none;
}
#downloadContents ul li{
  padding:5px 10px;
  background:url(../img/icon/allowBlue.png) left 0.8em no-repeat;
}
#downloadContents ul li a{
  position:relative;
  margin-right:10px;
  display:block;
  padding-right:90px;
  background-position:623px 0.3em;
  background-repeat:no-repeat;
}

#downloadContents ul li a .size{
  top:-5px;
  right:-68px;
  color:#444444;
}


/* 添付ファイルリスト */
#IndexNewsList{
  margin:0;
}
#IndexNewsList article{
  margin-top:10px;
}
#IndexNewsList article p{
  margin:0;
}
#IndexNewsList article .new{
}
#IndexNewsList article header{
  float:left;
}
#IndexNewsList article header time{
  width:120px;
  display:inline-block;
}
#IndexNewsList article header .catIcon{
  width:90px;
  margin:0 18px 0 0;
  padding:1px 0 2px;
  text-align:center;
  display:inline-block;
  font-size:85%;
}
#IndexNewsList article header .iconColor01{
  background:#f5e1c2;
}
#IndexNewsList article header .iconColor02{
  background:#e6e6e6;
}
#IndexNewsList article h3{
  width:487px;
  font-size:100%;
  font-weight:normal;
  float:left;
  line-height:160%;
}
#IndexNewsList article .newIcon{
  margin-top:-10px;
}
#IndexNewsList article .newIcon img{
  margin:-5px 0 0 5px;
  display:inline-block;
}

#IndexNewsList article h3 a.attachmentFile{
  position:relative;
  margin-right:10px;
  display:block;
  padding-right:90px;
  background-position:399px 0.3em;
  background-repeat:no-repeat;
}
#IndexNewsList article h3 a.attachmentFile .size{
  top:-5px;
/*  right:-48px;*/
  right:0;
}


/* 定義リスト */
section.contents .body dl{
}
section.contents .body dl dt{
  float:left;
  clear:both;
  width:10em;
  padding:20px 0;
}
section.contents .body dl dd{
  padding:20px 0 20px 11em;
  border-top:dashed 1px #dddddd;
}
section.contents .body dl dd a{
  position:relative;
  margin-right:10px;
  display:block;
  padding-right:20px;
  background-position:right 0.3em;
  background-repeat:no-repeat;
}


/* ページ送り */

#paging{
  position:relative;
  margin:30px auto;
  text-align:center;
  clear:both;
}

#paging ul {
 list-style: none outside none;
}

#paging ul li {
  display:inline;
}

#paging ul li a{
 margin:3px 0;
 padding:0 15px;
 text-align:center;
 list-style:none;
 display:inline;
 color:#424242;
}


#paging ul li a:hover {
 margin:3px 0;
 padding:0 15px;
 display:inline;
 background-color:#debc88;
}


#paging ul li.number{
  background-color:#eaeaea;
}

#paging ul li.current{
  background-color:#debc88;
}

#paging ul li.prev {
  margin:0;
  padding:0;
  background-color:#FFFFFF;
}

#paging ul li.next {
  margin:0;
  padding:0;
  background-color:#FFFFFF;
}

#paging ul li.prev a:hover{
 margin:0;
 padding:0 15px;
 background-color:#FFFFFF;
}

#paging ul li.next a:hover{
 margin:0;
 padding:0 15px;
 background-color:#FFFFFF;
}
