@charset "UTF-8";
/* -------------------------------------------------------------------------
-- This CSS is generated by Sass. Please do not never be edited directly. --
------------------------------------------------------------------------- */
/*--- reset */
html {
  overflow-y: scroll;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th {
  text-align: left;
}

q:before, q:after {
  content: '';
}

object,
embed {
  vertical-align: top;
}

hr, legend {
  display: none;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
}

img, abbr, acronym, fieldset {
  border: 0;
}

li {
  list-style-type: none;
}

/*--- default */
body {
  background: #FFF;
  color: #333;
  font-size: small;
  font-family: "メイリオ","Meiryo",verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
  line-height: 1.5;
}

* html body {
  /* for IF6 */
  font-family: "ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
}

select {
  font-family: "メイリオ","Meiryo",verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
}

/* ===================================================================
 style info :共通（ヘッダー、フッター）
=================================================================== */
.box_size, #header #gNav li, #page #header #gNav li a span {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

/* -----------------------------------------------------------
	#header
----------------------------------------------------------- */
#header {
  width: 980px;
  margin: 0 auto 7px;
  padding: 21px 0 0;
}
@media all and (max-width: 640px) {
  #header {
    width: auto;
    padding-top: 0;
  }
}

#header:after {
  content: '';
  display: block;
  clear: both;
}

.englishBody #header h1 {
  padding-top: 14px;
}

#header h1 {
  float: left;
  width: 126px;
  height: 48px;
  margin-bottom: 24px;
}
#header h1 img {
  width: 126px;
  height: 48px;
}
@media all and (max-width: 640px) {
  #header h1 {
    position: absolute;
    top: 23px;
    left: 10px;
    margin: 0 0 5px;
  }
  #header h1 img {
    width: 88px;
    height: 33px;
  }
}

.englishBody #header h1 {
  width: 308px;
  height: 24px;
}
.englishBody #header h1 img {
  width: 308px;
  height: 24px;
}
@media all and (max-width: 640px) {
  .englishBody #header h1 {
    position: static;
    margin-left: 10px;
    padding-top: 29px;
  }
  .englishBody #header h1 img {
    width: 154px;
    height: 12px;
  }
}

/* #utilityNav
----------------------------------------------------------- */
#header #utilityNav {
  float: right;
  padding-top: 10px;
}
@media all and (max-width: 640px) {
  #header #utilityNav {
    margin: 0 0 15px;
    padding: 0 0 0 108px;
    zoom: 0.8;
  }
}

#header #utilityNav li {
  float: left;
}
@media all and (max-width: 640px) {
  #header #utilityNav li {
    float: none;
    display: inline;
    text-align: right;
  }
}

/* サイト内検索 */
#header #utilityNav li.search {
  height: 28px;
  width: 209px;
  padding: 0;
  border: 1px solid #ccc;
}
@media all and (max-width: 640px) {
  #header #utilityNav li.search {
    display: block;
    width: 159px;
  }
}

#header #utilityNav li.search input[type="text"] {
  float: left;
  border: 0;
  width: 140px;
  height: 20px;
  padding: 4px;
  *padding-bottom: 3px;
  margin-right: 2px;
}
@media all and (max-width: 640px) {
  #header #utilityNav li.search input[type="text"] {
    width: 90px;
  }
}

#header #utilityNav li.search input[type="image"] {
  float: right;
  border-radius: 0;
}

.englishBody #header #utilityNav,
#header #utilityNav li.lang {
  margin-left: 10px;
}
@media all and (max-width: 640px) {
  .englishBody #header #utilityNav,
  #header #utilityNav li.lang {
    position: absolute;
    top: 37px;
    right: 10px;
  }
}

/* #gNav
----------------------------------------------------------- */
#header #gNav {
  clear: both;
  width: 980px;
  padding: 0;
}
@media all and (max-width: 640px) {
  #header #gNav {
    width: auto;
    height: auto;
    border-top: 1px solid #999;
  }
}
#header #gNav li {
  float: left;
}
@media all and (max-width: 640px) {
  #header #gNav li {
    width: 33%;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
  }
  #header #gNav li:nth-child(3n+1) {
    width: 34%;
    border-left: 0;
  }
}
@media all and (max-width: 400px) {
  #header #gNav li:nth-child(3n+1) {
    width: 34%;
    border-left: 0;
  }
}

#header #gNav li a {
  display: block;
  height: 45px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background: url(../img/share/nav.gif) no-repeat;
}
.englishBody #header #gNav li a {
  background-image: url(../img/english/nav.gif);
}
#header #gNav li a br {
  display: none;
}
@media all and (max-width: 640px) {
  #header #gNav li a br {
    display: block;
  }
}

@media all and (max-width: 640px) {
  #page #header #gNav li a {
    display: block;
    width: 100%;
    height: auto;
    text-indent: 0;
    overflow: visible;
    text-align: center;
    text-decoration: none;
    color: #1a1a1a;
    font-size: 85%;
    line-height: 1.2;
    background: #eee;
    background: -moz-linear-gradient(top, white 0%, #d6d6d6 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, #d6d6d6));
    background: -webkit-linear-gradient(top, white 0%, #d6d6d6 100%);
    background: -o-linear-gradient(top, white 0%, #d6d6d6 100%);
    background: -ms-linear-gradient(top, white 0%, #d6d6d6 100%);
    background: linear-gradient(to bottom, white 0%, #d6d6d6 100%);
  }
  #page #header #gNav li a span {
    display: table-cell;
    margin: 0 auto;
    padding: 1px 0;
    width: 300px;
    height: 32px;
    vertical-align: middle;
  }
}

@media all and (max-width: 640px) {
  #page #header #gNav li:nth-child(3) a, #page #header #gNav li:nth-child(2) a, #page #header #gNav li:nth-child(1) a {
    background: white;
    background: -moz-linear-gradient(top, white 0%, #cddbba 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, #cddbba));
    background: -webkit-linear-gradient(top, white 0%, #cddbba 100%);
    background: -o-linear-gradient(top, white 0%, #cddbba 100%);
    background: -ms-linear-gradient(top, white 0%, #cddbba 100%);
    background: linear-gradient(to bottom, white 0%, #cddbba 100%);
  }
  #page #header #gNav li:nth-child(7) a {
    font-size: 9px;
  }
}

#header #gNav li.aboutNav a {
  width: 116px;
}
.aboutBody #header #gNav li.aboutNav a, #header #gNav li.aboutNav a:hover {
  background-position: 0 -45px;
}
.englishBody #header #gNav li.aboutNav a {
  width: 93px;
}

#header #gNav li.areamapNav a {
  width: 105px;
  background-position: -116px 0;
}
.areamapBody #header #gNav li.areamapNav a, #header #gNav li.areamapNav a:hover {
  background-position: -116px -45px;
}
.englishBody #header #gNav li.areamapNav a {
  width: 93px;
  background-position: -93px 0;
}
.englishBody #header #gNav li.areamapNav a:hover {
  background-position: -93px -45px;
}

#header #gNav li.accessNav a {
  width: 93px;
  background-position: -221px 0;
}
.accessBody #header #gNav li.accessNav a, #header #gNav li.accessNav a:hover {
  background-position: -221px -45px;
}
.englishBody #header #gNav li.accessNav a {
  width: 94px;
  background-position: -186px 0;
}
.englishBody #header #gNav li.accessNav a:hover {
  background-position: -186px -45px;
}

#header #gNav li.tonboNav a {
  width: 105px;
  background-position: -314px 0;
}
.tonboBody #header #gNav li.tonboNav a, #header #gNav li.tonboNav a:hover {
  background-position: -314px -45px;
}

#header #gNav li.shopNav a {
  width: 130px;
  background-position: -419px 0;
}
.shopBody #header #gNav li.shopNav a, #header #gNav li.shopNav a:hover {
  background-position: -419px -45px;
}

#header #gNav li.sonminsyokudouNav a {
  width: 97px;
  background-position: -549px 0;
}
.sonminsyokudouBody #header #gNav li.sonminsyokudouNav a, #header #gNav li.sonminsyokudouNav a:hover {
  background-position: -549px -45px;
}

#header #gNav li.hotelNav a {
  width: 173px;
  background-position: -646px 0;
}
.hotelBody #header #gNav li.hotelNav a, #header #gNav li.hotelNav a:hover {
  background-position: -646px -45px;
}

#header #gNav li.ecotourNav a {
  width: 89px;
  background-position: -819px 0;
}
.ecotourBody #header #gNav li.ecotourNav a, #header #gNav li.ecotourNav a:hover {
  background-position: -819px -45px;
}

#header #gNav li.churchNav a {
  width: 72px;
  background-position: -908px 0;
}
.churchBody #header #gNav li.churchNav a, #header #gNav li.churchNav a:hover {
  background-position: -908px -45px;
}

/* -----------------------------------------------------------
	#footer
----------------------------------------------------------- */
#footer {
  clear: both;
  background: url(../img/share/bg_footer.gif) repeat-x;
}
@media all and (max-width: 640px) {
  #footer {
    background: none;
    border-top: 1px solid #141414;
  }
}

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

#footer a:hover {
  text-decoration: underline;
}

#footer .inner {
  overflow: hidden;
  width: 980px;
  margin: 0 auto;
  padding: 25px 0 50px;
}
@media all and (max-width: 640px) {
  #footer .inner {
    width: auto;
  }
}

#footer .siteMap {
  border-bottom: 1px solid #e9e8e8;
}
@media all and (max-width: 640px) {
  #footer .siteMap {
    display: none;
  }
}

#footer .siteMap .inner {
  padding-bottom: 30px;
}

#footer .siteMap ul {
  float: left;
  width: 24%;
  font-size: 85%;
}

#footer .siteMap ul.col_2 {
  width: 27%;
}

#footer .siteMap ul li {
  margin: 0 0 5px;
}

#footer .siteMap ul li a {
  display: inline-block;
  padding-left: 8px;
  background: url(../img/item/mark_basic_child.gif) no-repeat left center;
}

#footer .navArea {
  clear: both;
}

#footer .navArea .inner {
  padding-top: 0;
}

#footer .navArea ul.subNav {
  padding-top: 12px;
}
#footer .navArea ul.subNav li {
  margin-right: 1px;
}
#footer .navArea ul.subNav li img {
  height: 30px;
}
@media all and (max-width: 640px) {
  #footer .navArea ul.subNav {
    float: none;
    text-align: center;
  }
  #footer .navArea ul.subNav li {
    margin-right: 0;
  }
}

#footer .navArea ul li {
  float: left;
}
@media all and (max-width: 640px) {
  #footer .navArea ul li {
    float: none;
    display: inline;
  }
}

#footer ul.corporateNav {
  float: right;
}
@media all and (max-width: 640px) {
  #footer ul.corporateNav {
    clear: both;
    float: none;
    text-align: center;
  }
}

#footer ul.corporateNav li {
  float: right;
}
@media all and (max-width: 640px) {
  #footer ul.corporateNav li {
    float: none;
    display: inline;
  }
}

#footer ul.corporateNav li.copyright {
  clear: both;
  text-align: right;
  font-size: 85%;
}
@media all and (max-width: 640px) {
  #footer ul.corporateNav li.copyright {
    display: block;
    text-align: center;
  }
}

@media all and (max-width: 640px) {
  #footer p.copyright {
    margin-left: 10px;
    margin-right: 10px;
  }
}

/* ===================================================================
 style info :コンテンツエリア関係 他
=================================================================== */
/*----------------------------------------------------
	基本設定、リンクカラーなど
----------------------------------------------------*/
body {
  -webkit-text-size-adjust: none;
  /* フォントサイズ自動調整 */
}

body.englishBody {
  font-family: verdana,"メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
}

img {
  vertical-align: top;
}
@media all and (max-width: 640px) {
  img {
    max-width: 100%;
  }
}

a {
  color: #533;
}

a:link {
  color: #533;
}

a:visited {
  color: #866;
}

a:hover {
  text-decoration: none;
}

a:active {
  text-decoration: underline;
}

.opacity a:hover img {
  opacity: 0.6;
  -moz-opacity: 0.6;
  filter: alpha(opacity=60);
}

strong.searchResultText {
  background: #e8f1dd;
}

/*----------------------------------------------------
	汎用、共通
----------------------------------------------------*/
#contents .imgR {
  clear: both;
  float: right;
  margin: 0 0 30px 20px;
}

#contents .imgL {
  clear: both;
  float: left;
  margin: 0 20px 30px 0;
}

.glueText {
  float: left;
  width: 370px;
}

.imgC,
.tC,
.btn {
  text-align: center;
}

.tR {
  text-align: right;
}

.tL {
  text-align: left;
}

.clear {
  clear: both;
}

.mt0 {
  margin-top: 0 !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

/* 外部リンク、PDFリンクの指定 */
.pdfIcon,
.externalIcon {
  padding-left: 3px;
  padding-right: 3px;
  vertical-align: middle;
}

/* NEWアイコン */
span.new {
  display: none;
}

span.new img {
  margin-left: 7px;
  vertical-align: baseline;
  line-height: 0;
  font-size: 0;
  position: relative;
  top: 2px;
  *left: 5px;
}

/* frameArea */
.frameArea {
  margin-bottom: 20px;
  padding: 30px 30px 15px;
  border: 3px solid #b3cf8e;
}
.frameArea img {
  max-width: 100%;
}

.frame {
  margin-bottom: 30px;
  padding: 15px 15px 1px;
  border: 1px solid #d9cccc;
}

/* clearfix */
.cf,
#main .entryBody,
#main .tabArea .tabNav,
#main .section,
.topBody #contents,
.clearfix,
#header #gNav,
#main .shopArea .col2,
.englishBody #main .anchorNav,
.englishBody #main .mapArea,
#main .entryHeader ul.snsBtn,
#sub ul.bnr {
  *zoom: 1;
}
.cf:after,
#main .entryBody:after,
#main .tabArea .tabNav:after,
#main .section:after,
.topBody #contents:after,
.clearfix:after,
#header #gNav:after,
#main .shopArea .col2:after,
.englishBody #main .anchorNav:after,
.englishBody #main .mapArea:after,
#main .entryHeader ul.snsBtn:after,
#sub ul.bnr:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

@media all and (max-width: 640px) {
  #main .cf .imgR,
  #main .cf .imgL {
    float: none;
    margin: 0 auto 10px;
    text-align: center;
  }
}
/*----------------------------------------------------
	#navSkip (NavigationSkip)
----------------------------------------------------*/
span#navSkip {
  position: absolute;
  top: 0;
  left: 0;
}

/*----------------------------------------------------
	#page
----------------------------------------------------*/
#page {
  margin: 0 auto;
  padding: 0;
  text-align: left;
  border-top: 5px solid #141414;
}

/* pageTop */
p.pageTop {
  clear: both;
  width: 980px;
  margin: 0 auto;
  padding: 0;
  text-align: right;
  line-height: 0;
  font-size: 0;
}
@media all and (max-width: 640px) {
  p.pageTop {
    display: none;
  }
}

#main p.pageTop {
  width: auto;
}

.shopBody #main .pageTop {
  display: none;
}

/*----------------------------------------------------
	#contents
----------------------------------------------------*/
#contents {
  width: 980px;
  margin: 0 auto;
  padding-bottom: 30px;
  font-size: 90%;
}
@media all and (max-width: 640px) {
  #contents {
    min-width: 320px;
    width: auto;
  }
}

/* トップページ 背景 */
.topBody #contents {
  width: 940px;
  position: relative;
  top: 0;
  z-index: 9999;
  top: -81px;
  margin-bottom: -81px;
  padding: 20px;
  background: #fff;
}
@media all and (max-width: 640px) {
  .topBody #contents {
    width: auto;
    padding: 0;
  }
}

/* eye */
#eye {
  clear: both;
  width: 100%;
  height: 450px;
  background: url(../img/top/eye_01.jpg) no-repeat center top;
}
@media all and (max-width: 640px) {
  #eye {
    max-width: 640px;
  }
}

/* パンくずリスト */
#contents .topicPath {
  margin: 20px 0 30px;
  line-height: 1.2;
  font-size: 85%;
}
@media all and (max-width: 640px) {
  #contents .topicPath {
    margin: 10px 0 20px;
    padding: 0 10px;
  }
}

.englishBody #contents .topicPath {
  margin-bottom: 20px;
}

#contents .topicPath a {
  color: #333;
}

/*----------------------------------------------------
	#main
----------------------------------------------------*/
#main {
  float: left;
  width: 700px;
  margin: 0 0 20px;
  background: #fff;
  font-size: 110%;
}
@media all and (max-width: 640px) {
  #main {
    width: auto;
    margin: 0 10px 20px;
    float: none;
  }
}

.topBody #main {
  width: 680px;
}
@media all and (max-width: 640px) {
  .topBody #main {
    width: auto;
  }
}

.englishBody #main {
  width: auto;
  padding-bottom: 40px;
}

#main table, #main ol, #main ul, #main dl, #main blockquote, #main pre, #main p {
  margin-bottom: 15px;
}

#main h2 {
  margin: 0 0 30px;
}

.topBody #main h2 {
  margin: 0 0 20px;
}

#main h3 {
  margin: 0 0 10px;
}

.englishBody #main h3 {
  margin-bottom: 27px;
}

#page #main p + h3 {
  margin-top: 30px;
}

#page #main p.date + h3 {
  margin-top: 0;
}

#main h4 {
  margin-bottom: 10px;
  padding-bottom: 5px;
  border-bottom: 1px solid #b39999;
}

#main p {
  line-height: 1.7;
}

#main p.eye {
  text-align: center;
  margin-bottom: 20px;
}

@media all and (max-width: 640px) {
  p.eye img {
    width: 100%;
  }

  h3, h2 {
    overflow: hidden;
  }
}
#main .backLink {
  margin-top: 30px;
}

#main .textLink a,
#main .backLink a {
  *zoom: 1;
  padding-left: 16px;
  background: url(../img/item/mark_back.gif) no-repeat 0em 0.3em;
}

#main .textLink a {
  background-image: url(../img/item/mark_basic.gif);
}

* html #main .backLink a {
  background-position: 0em .1em;
}

* html #main .textLink a {
  background-position: 0em .1em;
}

#main .section {
  *zoom: 1;
}

/* トップページ
----------------------------------------------------*/
.topBody #main .newsArea {
  overflow: hidden;
  width: 680px;
  margin-bottom: 0;
}
@media all and (max-width: 640px) {
  .topBody #main .newsArea {
    width: auto;
  }
}

.topBody #main .newsArea .line {
  clear: both;
  overflow: hidden;
  width: 695px;
  margin-left: -15px;
  margin-bottom: 30px;
}
@media all and (max-width: 640px) {
  .topBody #main .newsArea .line {
    width: auto;
  }
}

.topBody #main .newsArea .section {
  float: left;
  position: relative;
  width: 216px;
  min-height: 70px;
  margin-left: 15px;
  background: #fff;
}
@media all and (max-width: 640px) {
  .topBody #main .newsArea .section {
    float: none;
    width: auto;
    margin-bottom: 10px;
  }
}

* html .topBody #main .newsArea .section {
  display: inline;
  height: 70px;
}

.topBody #main .newsArea .section .image a {
  position: absolute;
  top: 0;
  left: 0;
}

.topBody #main .newsArea .section .text {
  padding-left: 108px;
}

.topBody #main .newsArea .section h3 {
  margin-bottom: 3px;
  padding: 0;
  border-bottom: 0;
  font-size: 0;
  line-height: 0;
}

.topBody #main .newsArea .section p {
  margin: 0;
  font-size: 85%;
  line-height: 1.5;
}

.topBody #main .newsArea .section .update {
  font-size: 83%;
  color: #f46b3e;
}

#main .enjoyBnr {
  margin: 0 auto 50px;
}
@media all and (max-width: 640px) {
  #main .enjoyBnr img {
    max-width: 100%;
  }
}

#main .info_staffArea {
  *zoom: 1;
  overflow: hidden;
}

#main .info_staffArea p.btn {
  margin: 0;
  text-align: right;
}

#main .info_staffArea .infoArea {
  float: left;
  width: 325px;
}
@media all and (max-width: 640px) {
  #main .info_staffArea .infoArea {
    float: none;
    width: auto;
    margin-bottom: 30px;
  }
}

#main .staffBlogArea {
  float: right;
  width: 325px;
  overflow: hidden;
}
@media all and (max-width: 640px) {
  #main .staffBlogArea {
    float: none;
    width: auto;
  }
}

.topBody #main dl.dateList {
  margin-top: -10px;
  margin-bottom: 5px;
}

#main dl.dateList dt {
  clear: both;
  float: left;
  width: 5.2em;
  margin-bottom: 10px;
}

* html #main dl.dateList dt {
  width: 4.5em;
}

#main dl.dateList dt {
  padding-bottom: 10px;
}

#main dl.dateList dd {
  margin-bottom: 10px;
  padding-left: 6.2em;
}

* html #main dl.dateList dd {
  padding-left: 5em;
}

#main dl.dateList dd {
  padding-bottom: 10px;
  border-bottom: 1px solid #d9e7c6;
}

/* イベント＆ニュース
----------------------------------------------------*/
#main .infoLinkBtn {
  *zoom: 1;
  position: relative;
  margin: 0;
  padding: 0;
}

#main .infoLinkBtn a {
  position: absolute;
  top: -64px;
  right: 0;
  margin: 0;
  padding: 0;
}
@media all and (max-width: 640px) {
  #main .infoLinkBtn a {
    top: -57px;
  }
  #main .infoLinkBtn a img {
    zoom: .5;
  }
}

#main .newNews {
  margin-top: 80px;
}

#main .newNews .section,
.infoBody #main .section,
.newsBody #main .section {
  width: 700px;
  overflow: hidden;
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid #d8cbcb;
}
@media all and (max-width: 640px) {
  #main .newNews .section,
  .infoBody #main .section,
  .newsBody #main .section {
    width: auto;
  }
}

#main .newNews .section {
  background: none;
}

.infoBody #main .section,
.newsBody #main .section {
  background: none;
  border-bottom-color: #d9e7c7;
}

#main .newNews .section a {
  color: #191311;
}

#main .newNews .section p.photo,
#main .entryBody p.photo,
.newsBody #main .section p.photo {
  float: left;
  width: 260px;
  height: 173px;
  overflow: hidden;
  margin-right: 20px;
}
@media all and (max-width: 640px) {
  #main .newNews .section p.photo,
  #main .entryBody p.photo,
  .newsBody #main .section p.photo {
    float: none;
    text-align: center;
    margin: 0 auto 10px;
  }
}

.shopBody #main .section p.photo {
  height: auto;
  overflow: none;
}

#main .newNews .section .meta,
.infoBody #main .section .meta,
.newsBody #main .section .meta {
  float: left;
  width: 420px;
}
@media all and (max-width: 640px) {
  #main .newNews .section .meta,
  .infoBody #main .section .meta,
  .newsBody #main .section .meta {
    width: auto;
  }
}

.infoBody #main .section .meta {
  width: auto;
}

.sonminsyokudouBody #main .newNews .section .textOnly,
.shopBody #main .newNews .section .textOnly {
  width: auto;
  float: none;
}

#main .newNews .section .meta p.date,
#main .entryBody p.date,
.infoBody #main .section .meta p.date,
.newsBody #main .section .meta p.date {
  margin: 0 0 3px;
  color: #f36b3e;
  line-height: 1.2;
}

#main .newNews .section .meta h3,
#main .entryBody h3,
.infoBody #main .section .meta h3,
.newsBody #main .section .meta h3 {
  margin: 0 0 5px;
  padding: 0;
  border: 0;
  font-size: 100%;
}

#main .more img {
  vertical-align: middle;
  margin-left: 10px;
}

* html #main .more img {
  padding: 6px 0;
}

.staffBody #main .more {
  margin-top: -20px;
  text-align: right;
}

#main .newNews .section .meta dl,
#main dl.period,
.newsBody #main .section .meta dl {
  margin: 0;
  display: inline-block;
  padding-bottom: 10px;
  background: #e8f1dd;
  font-size: 90%;
}

.shopBody #main .newNews .section .textOnly dl {
  margin-bottom: 20px;
  background-image: url(../img/news/bg_period_bottom.gif);
}

#main dl.period {
  *zoom: 1;
  clear: both;
}

#main .newNews .section .meta dl dt,
#main dl.period dt,
.newsBody #main .section .meta dl dt {
  margin-bottom: 3px;
  padding: 10px 15px 0;
}

.shopBody #main .newNews .section .textOnly dl dt {
  background-image: url(../img/news/bg_period_top.gif);
}

#main .newNews .section .meta dl dd,
#main dl.period dd,
.newsBody #main .section .meta dl dd {
  margin: 0;
  padding: 0 15px;
}

#main .newNews .section .meta dl a,
#main dl.period a,
.newsBody #main .section .meta dl a {
  color: #191311;
}

#main ul.prevNext {
  zoom: 1;
  overflow: hidden;
  margin: 0;
}

#main ul.prevNext li {
  width: 65px;
}

#main ul.prevNext li.prev {
  float: left;
}

#main ul.prevNext li.next {
  float: right;
}

#main .entryBody {
  *zoom: 1;
  margin-bottom: 20px;
}

#main .entryBody p {
  margin-bottom: 15px;
}

.newsBody #main .entryBody h3 {
  margin-bottom: 10px;
}

#main .newNews .section .meta ul,
#main .entryBody ul {
  margin-left: 5px;
}

#main .newNews .section .meta ul li,
#main .entryBody ul li {
  padding-left: 10px;
  padding-bottom: 3px;
  background: url(../img/item/mark_basic_child.gif) no-repeat 0em 0.5em;
}

/* ショップ＆レストラン
----------------------------------------------------*/
.shopBody #main .line,
#main .shopIndexSection,
.shopTopBody #main .section {
  clear: both;
  overflow: hidden;
  width: auto;
  margin-left: -28px;
}

#main .shopIndexSection {
  margin-top: 80px;
}

.shopTopBody #main .harunireSection {
  width: auto;
  margin-bottom: 30px;
}
@media all and (max-width: 640px) {
  .shopTopBody #main .harunireSection p .imgR {
    float: none;
    display: block;
    margin: 0 auto -30px;
    text-align: center;
  }
}

.shopTopBody #main .halfSection {
  float: left;
  width: 310px;
  margin-left: 28px;
  *margin-bottom: -20px;
}

* html .shopTopBody #main .halfSection {
  display: inline;
}

#main .shopIndexSection h3,
.shopTopBody #main .section h3 {
  margin-bottom: 20px;
  margin-left: 28px;
  padding: 0;
  border: 0;
}

.shopTopBody #main .halfSection h3 {
  margin-left: 0;
}

#main .shopIndexSection .item,
.shopTopBody #main .section .item {
  position: relative;
  float: left;
  width: 165px;
  min-height: 130px;
  margin-left: 28px;
  padding-right: 170px;
  padding-bottom: 30px;
}
@media all and (max-width: 640px) {
  #main .shopIndexSection .item,
  .shopTopBody #main .section .item {
    float: none;
    width: auto;
  }
}

.shopTopBody #main .section .item:nth-child(2n) {
  clear: both;
}

* html .shopTopBody #main .section .item {
  display: inline;
  height: 130px;
}

.shopTopBody #main .halfSection .item {
  margin-left: 0;
}

#main .shopIndexSection .item h4,
.shopTopBody #main .section .item h4 {
  margin-top: -3px;
  margin-bottom: 5px;
  padding: 0;
  font-size: 100%;
  border: 0;
}

#main .shopIndexSection .item h4 a,
.shopTopBody #main .section .item h4 a {
  color: #191311;
}

#main .shopIndexSection .item h4 span,
.shopTopBody #main .section .item h4 span {
  display: block;
  font-weight: normal;
  font-size: 85%;
}

#main .shopIndexSection .item h4 img,
.shopTopBody #main .section .item h4 img {
  position: absolute;
  top: 0;
  right: 0;
  clip: rect(auto auto 130px auto);
}

#main .shopIndexSection .item p,
.shopTopBody #main .section .item p {
  margin: 0;
  font-size: 85%;
  line-height: 1.5;
}

#main .shopIndexSection .item p.detail,
.shopTopBody #main .section .item p.detail {
  margin-top: 7px;
}

#main .shopIndexSection .item p span,
.shopTopBody #main .section .item p span {
  position: absolute;
  top: 110px;
  left: 0;
  display: block;
  zoom: 1;
  color: #ff5346;
  font-size: 85%;
}

#main .shopTitle {
  margin-top: -10px;
  margin-bottom: 15px;
  color: #18202d;
  font-size: 110%;
}

#main .shopTitle img {
  margin-right: 10px;
  vertical-align: middle;
}

.shopBody .shopArea h3 {
  float: left;
  width: 125px;
  margin-right: 10px;
}

.shopBody .shopArea .shopSummary {
  float: left;
  width: 240px;
  margin-right: 13px;
}

.shopBody #main .shopArea .textLong {
  width: 560px;
  margin-right: 0;
}

.shopBody #main .shopArea .shopInfo {
  width: 700px;
}

.shopBody #main .shopArea .shopInfo p.imgLink {
  text-align: right;
}

/* 星野温泉 トンボの湯
----------------------------------------------------*/
#main .shopArea {
  *zoom: 1;
  overflow: hidden;
  margin-bottom: 80px;
}

#main .shopArea h3 {
  margin-bottom: 20px;
}

#main .shopArea .shopHeader {
  *zoom: 1;
  overflow: hidden;
}

#main .shopArea p.logo,
#main .shopArea h3,
#main .shopArea h2 {
  float: right;
  width: auto;
}
@media all and (max-width: 640px) {
  #main .shopArea p.logo,
  #main .shopArea h3,
  #main .shopArea h2 {
    float: none;
    text-align: center;
  }
}

#main .shopArea .shopInfo {
  padding-top: 15px;
  border-top: 3px solid #141414;
}

#main .shopArea .shopInfo dl {
  margin-bottom: 10px;
}

#main .shopArea .shopInfo dl dt {
  float: left;
  clear: both;
  width: 6em;
  margin-bottom: 15px;
  padding: 0 0 15px;
}
@media all and (max-width: 640px) {
  #main .shopArea .shopInfo dl dt {
    float: none;
    width: auto;
    margin: 0 0 2px;
    padding: 0;
    font-weight: bold;
  }
}

#main .shopArea .shopInfo dl dt.ohp {
  float: none;
  width: auto;
  padding-bottom: 0;
  margin-bottom: 0;
}

#main .shopArea .shopInfo dl dd {
  margin-bottom: 15px;
  padding: 0 0 15px 7.5em;
  background: #fff;
  border-bottom: 1px solid #d8cbcb;
}
@media all and (max-width: 640px) {
  #main .shopArea .shopInfo dl dd {
    margin: 0 0 10px;
    padding: 0 0 10px;
  }
}

#main .shopArea .shopInfo dl dd.ohp {
  padding-left: 18px;
  word-break: break-all;
}

#main .shopArea .col2 {
  margin: 35px 0;
}
#main .shopArea .col2 li {
  float: left;
}
#main .shopArea .col2 li + li {
  float: right;
}
@media all and (max-width: 640px) {
  #main .shopArea .col2 li {
    width: auto;
    float: none;
    margin: 0 auto 15px;
    text-align: center;
  }
  #main .shopArea .col2 li + li {
    float: none;
  }
  #main .shopArea .col2 li img {
    max-width: 100%;
    height: auto;
  }
}

#main .newNews h3 {
  margin-bottom: 20px;
}

.tonboBody #main h3 {
  zoom: 1;
  clear: both;
  margin-top: 20px;
}

.tonboBody #main div.text {
  float: right;
  width: 350px;
}
@media all and (max-width: 640px) {
  .tonboBody #main div.text {
    float: none;
    width: auto;
  }
}

.tonboBody #main .imgL img {
  padding-bottom: 5px;
}

.tonboBody #main div.text h4 {
  margin-bottom: 5px;
}

.tonboBody #main div.text p {
  margin-bottom: 20px;
}

@media all and (max-width: 640px) {
  .tonboBody #main .imgL,
  .tonboBody #main .imgR {
    float: none;
    width: auto;
    margin: 0 auto 10px;
    text-align: center;
  }
  .tonboBody #main .imgL img,
  .tonboBody #main .imgR img {
    max-width: 100%;
  }
}

#main p.senshitsu {
  width: 325px;
}
@media all and (max-width: 640px) {
  #main p.senshitsu {
    width: auto;
  }
}
@media all and (max-width: 640px) {
  #main p.senshitsu.imgL {
    float: none;
    width: auto;
    margin: 0 auto 30px;
    text-align: left;
  }
  #main p.senshitsu.imgL br {
    display: none;
  }
  #main p.senshitsu.imgL br ~ br {
    display: block;
  }
  #main p.senshitsu.imgL img {
    max-width: 100%;
    display: block;
    margin: 0 auto 10px;
    text-align: center;
  }
}

#main .facilities {
  width: 425px;
}
@media all and (max-width: 640px) {
  #main .facilities {
    width: auto;
  }
}

#main .facilities * {
  background: #fff;
  margin: 0;
}

#main .facilities h4 {
  margin-bottom: 10px;
}

#main .facilities dl {
  padding: 0 0 10px;
}

#main .facilities dt {
  font-weight: bold;
}

#main .facilities dl dt + dt {
  padding-top: 10px;
}

#main .facilities dl dd {
  padding-left: 1em;
  padding-bottom: 15px;
}

#main .ancNav,
#main .mainFooterMenu {
  clear: both;
  margin: 30px 0 15px 0;
  background: url(../img/item/line_01.gif) repeat-x;
}

#main .ancNav {
  margin-top: 0;
}

#main .ancNav ul,
#main .mainFooterMenu ul {
  width: 700px;
  overflow: hidden;
  padding: 5px 0;
  background: url(../img/item/line_01.gif) repeat-x left bottom;
}
@media all and (max-width: 640px) {
  #main .ancNav ul,
  #main .mainFooterMenu ul {
    width: auto;
  }
}

#main .ancNav ul,
#main .ancNav {
  background: none;
}

#main .ancNav ul li,
#main .mainFooterMenu ul li {
  float: left;
  margin: 0 25px 0 0;
  padding: 0;
  white-space: nowrap;
  line-height: 2;
}

#main .ancNav ul li a,
#main .mainFooterMenu ul li a {
  *zoom: 1;
  padding-left: 12px;
  background: url(../img/item/mark_basic.gif) no-repeat 0em 0.7em;
  *background-position: 0em .8em;
}

#main .ancNav ul li a {
  padding-left: 12px;
  background: url(../img/item/mark_bottom.gif) no-repeat 0em 0.7em;
  *background-position: 0em .8em;
  color: #533;
}

/* エコツアー
----------------------------------------------------*/
#main .programBnr {
  *zoom: 1;
  overflow: hidden;
  margin-left: -20px;
}

#main .programBnr li {
  float: left;
  margin-left: 20px;
}

* html #main .programBnr li {
  display: inline;
}

/* 宿泊、教会
----------------------------------------------------*/
#main .itemArea .item {
  *zoom: 1;
  overflow: hidden;
  margin-bottom: 50px;
}

#main .item .image {
  float: left;
  margin-right: 20px;
}
@media all and (max-width: 640px) {
  #main .item .image {
    float: none;
    text-align: center;
  }
}

#main .item .text {
  *zoom: 1;
  overflow: hidden;
}
@media all and (max-width: 640px) {
  #main .item .text {
    overflow: visible;
  }
}

#main .reservationBtn {
  margin-left: 10px;
}

#main .pr {
  zoom: 1;
  clear: both;
  overflow: hidden;
  padding: 20px 20px 15px;
  margin-bottom: 30px;
  border: 1px solid #b39999;
}

#main .pr .photo {
  float: right;
  margin-left: 20px;
  padding-top: 5px;
}

#main .pr h4 {
  margin-bottom: 10px;
}

#main .pr p.textLink {
  margin-bottom: 7px;
}

/* アクセス
----------------------------------------------------*/
.accessBody #main .btnBus {
  margin-top: -63px;
  margin-bottom: 30px;
  text-align: right;
}
.accessBody #main .tabNav {
  overflow: hidden;
}
.accessBody #main .tabNav li {
  float: left;
  width: 33.3%;
  border-bottom: 5px solid #7da84f;
}
.accessBody #main .tabNav li a {
  display: block;
  margin-left: 3px;
  padding: 10px 0;
  background: #a4c284 url(../img/access/bg_tab.gif) no-repeat center bottom;
  color: white;
  text-align: center;
  text-decoration: none;
}
.accessBody #main .tabNav li a.active {
  background-color: #7da84f;
}
.accessBody #main .tabNav li:first-child a {
  margin-left: 0;
}
.accessBody #main .tabNav.col2 li {
  width: 50%;
}
@media all and (max-width: 640px) {
  .accessBody #main .section img {
    max-width: 100%;
  }
  .accessBody #main .section .imgL {
    display: block;
    margin: 0 auto 10px;
    float: none;
    text-align: center;
  }
}

.accessBody #main h4 {
  background: #d9e7c6;
  border: 0;
  padding: 7px 10px;
  margin: 30px 0 8px 0;
}

.accessBody #main h4.sub {
  font-weight: normal;
}

.accessBody #main h4.sub span {
  font-weight: bold;
}

.accessBody #main h5 {
  margin-bottom: 5px;
}

.accessBody #main h4 + h5 {
  margin-top: 0;
}

.accessBody #main h5.entryTitle {
  margin-top: 0;
}

.accessBody #main dl {
  margin-bottom: 30px;
}

.accessBody #main dl dt {
  font-weight: bold;
}

#main .googleMapsFrame {
  border: 1px solid #b3cf8e;
  margin: 0 0 30px;
}

#main #googleMaps {
  height: 450px;
  margin: 0 auto;
}
@media all and (max-width: 640px) {
  #main #googleMaps {
    height: 320px;
  }
}

#main .addressMap {
  *zoom: 1;
  min-height: 50px;
  position: relative;
}

* html #main .addressMap {
  height: 50px;
}

#main .addressMap address {
  font-weight: bold;
  font-size: 115%;
  line-height: 1.8;
}

#main .addressMap p.imgLink {
  position: absolute;
  top: 0;
  right: 0;
}
@media all and (max-width: 640px) {
  #main .addressMap p.imgLink {
    position: static;
    text-align: right;
  }
}

#main .routeGuide {
  margin-top: 15px;
  margin-left: 2px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e8f1dd;
}

#main .routeGuide li {
  margin-bottom: 5px;
}

.accessBody #main .section dt {
  margin-bottom: 5px;
  font-size: 105%;
}

#main .sAtt {
  font-size: 85%;
}

#main .busDiaArea {
  *zoom: 1;
  overflow: hidden;
}

#main .busDiaArea .item {
  float: right;
  width: 48%;
}
@media all and (max-width: 640px) {
  #main .busDiaArea .item {
    float: none;
    width: auto;
  }
}

#main .busDiaArea .item:first-child {
  float: left;
}
@media all and (max-width: 640px) {
  #main .busDiaArea .item:first-child {
    float: none;
  }
}

#main .tblSchedule {
  width: 100%;
  border: 1px solid #e0d6d6;
}
#main .tblSchedule .station {
  background-color: white;
}

#main .tblSchedule caption {
  padding: 5px 10px;
  background: #c9b7b7;
  text-align: left;
  font-weight: normal;
  border-bottom: 1px solid #fff;
  font-size: 90%;
}

#main .tblSchedule th {
  padding: 5px 10px;
  background: #f6f3f3;
  border: 1px solid #e0d6d6;
  text-align: center;
  font-weight: normal;
  font-size: 85%;
}

#main .tblSchedule td {
  padding: 5px 5px;
  vertical-align: middle;
  text-align: center;
  border: 1px solid #e0d6d6;
  background: #f6f3f3;
}

/* 駐車場のご案内 */
.accessBody #main #section04 ul {
  margin-left: 10px;
}

.accessBody #main #section04 ul li {
  padding-left: 15px;
  background: url(../img/item/mark_basic_child.gif) no-repeat left 0.5em;
}

.accessBody #main #section04 table {
  margin: 15px 0 20px;
  width: 300px;
  border-top: 1px solid #e0d6d6;
}
@media all and (max-width: 640px) {
  .accessBody #main #section04 table {
    width: 80%;
  }
}

.accessBody #main #section04 table td,
.accessBody #main #section04 table th {
  padding: 5px 0;
  border-bottom: 1px solid #e0d6d6;
}

.accessBody #main #section04 table th {
  width: 40%;
}

.accessBody #main #section04 table td {
  text-align: right;
}

.accessBody #main #section04 p + table {
  margin-top: -10px;
}

/* 星野エリアマップ
----------------------------------------------------*/
/* areamap.css に集約 */
@media all and (max-width: 640px) {
  .areamapBody #sub {
    display: none;
  }
}

@media all and (max-width: 640px) {
  .areamapBody #main h2 img {
    width: 189.33333px;
    height: 21.33333px;
  }
}

@media all and (max-width: 640px) {
  .areamapBody #main #areaMap {
    width: 700px;
    zoom: .85;
  }
}
@media all and (max-width: 610px) {
  .areamapBody #main #areaMap {
    zoom: .8;
  }
}
@media all and (max-width: 570px) {
  .areamapBody #main #areaMap {
    zoom: .7;
  }
}
@media all and (max-width: 530px) {
  .areamapBody #main #areaMap {
    zoom: .6;
  }
}
@media all and (max-width: 480px) {
  .areamapBody #main #areaMap {
    zoom: .5;
  }
}
@media all and (max-width: 400px) {
  .areamapBody #main #areaMap {
    zoom: .45;
  }
}
@media all and (max-width: 320px) {
  .areamapBody #main #areaMap {
    zoom: .39;
  }
}

/* よくあるご質問
----------------------------------------------------*/
#main .faqSection {
  margin-bottom: 30px;
}

#main .section h3,
#main .entryHeader h3,
#page #main .textTitle,
#main .faqSection h3 {
  font-size: 115%;
  margin-bottom: 20px;
  padding-top: 20px;
  padding-bottom: 3px;
  border-bottom: 3px solid #141414;
}

#main .textTitle {
  padding-top: 0;
}

#main .faqSection dl dt {
  font-weight: bold;
  font-size: 115%;
}

#main .faqSection dl dt img {
  vertical-align: middle;
  margin-right: 5px;
}

#main .faqSection dl dd {
  margin-left: 43px;
  margin-bottom: 30px;
}

/* お問い合わせ
----------------------------------------------------*/
#main fieldset {
  margin-bottom: 30px;
  padding: 15px;
  border: 3px solid #b3cf8e;
}

#main table.formTable {
  width: 100%;
  margin-bottom: 20px;
}

#main table.formTable th {
  width: 170px;
  padding: 15px 10px;
  vertical-align: top;
  font-weight: normal;
  border-top: 1px dotted #b3cf8e;
}

#main table.formTable td span.att,
#main table.formTable th span {
  color: #c41f17;
  margin-left: 5px;
}

#main table.formTable td {
  padding: 15px 10px;
  vertical-align: top;
  border-top: 1px dotted #b3cf8e;
}

#main table.formTable td * {
  vertical-align: middle;
}

#main table.formTable td span {
  margin-left: 5px;
  font-size: 80%;
}

#main table.formTable td p {
  margin-bottom: 5px;
}

#main table.formTable tr:first-child td,
#main table.formTable tr:first-child th {
  border-top: 0;
}

#main .formMailArea,
#main .formTextArea {
  width: 215px;
  padding: 4px 2px;
  border: 1px solid #b3cf8e;
  background: #e8f1dd;
}
@media all and (max-width: 640px) {
  #main .formMailArea,
  #main .formTextArea {
    min-width: 160px;
    width: 80%;
  }
}

#main .formContactContent {
  width: 420px;
  height: 200px;
  padding: 4px 2px;
  border: 1px solid #b3cf8e;
  background: #e8f1dd;
}
@media all and (max-width: 640px) {
  #main .formContactContent {
    min-width: 160px;
    width: 80%;
  }
}

#main .formMailArea:focus,
#main .formTextArea:focus,
#main .formContactContent:focus {
  background: #fff;
}

#main .formBtn,
#main .confirmText {
  text-align: center;
}

#main .confirmText {
  margin-bottom: 50px;
}

/* English
----------------------------------------------------*/
.englishBody #main .anchorNav {
  margin: 0 0 50px -10px;
}
.englishBody #main .anchorNav li {
  float: left;
  width: 155px;
  margin: 0 0 10px 10px;
  padding: 0;
  font-size: 140%;
  font-weight: bold;
  letter-spacing: -1px;
}
.englishBody #main .anchorNav li a {
  display: block;
  padding: 10px 3px 30px;
  border: 3px solid #b2cf8f;
  text-decoration: none;
  background: url(../img/share/arrow.gif) no-repeat center 45px;
  color: #191311;
}
@media all and (max-width: 640px) {
  .englishBody #main .anchorNav {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: -5px;
  }
  .englishBody #main .anchorNav li {
    width: 33.3%;
    margin: 0 0 5px;
    font-size: 110%;
  }
  .englishBody #main .anchorNav li a {
    margin: 0 0 0 5px;
  }
}
@media all and (max-width: 340px) {
  .englishBody #main .anchorNav li {
    font-size: 100%;
  }
}
.englishBody #main .imgArea {
  overflow: hidden;
}
@media all and (max-width: 640px) {
  .englishBody #main .imgArea {
    margin-bottom: 30px;
  }
}
.englishBody #main h3 {
  clear: both;
  margin-top: 30px;
  margin-bottom: 20px;
  padding-top: 20px;
}
.englishBody #main h4 {
  margin-bottom: 8px;
  padding: 0;
  border: 0;
  font-size: 120%;
}
.englishBody #main h4 a {
  zoom: 1;
  padding-left: 18px;
  background: url(../img/item/mark_basic.gif) no-repeat 0em 0.5em;
}

.englishBody #main ul.toursList li {
  margin-bottom: 10px;
}

@media all and (max-width: 640px) {
  .englishBody #main .imgL,
  .englishBody #main .imgR {
    margin: 0 0 10px;
    float: none;
    text-align: center;
  }
}
.englishBody #main .mapArea .googleMapsFrame {
  float: left;
  width: 700px;
}
@media all and (max-width: 640px) {
  .englishBody #main .mapArea .googleMapsFrame {
    float: none;
    width: auto;
  }
  .englishBody #main .mapArea .googleMapsFrame iframe {
    width: auto;
    height: 300px;
  }
}
.englishBody #main .mapArea .addressMap {
  float: right;
  width: 260px;
}
@media all and (max-width: 640px) {
  .englishBody #main .mapArea .addressMap {
    float: none;
    width: auto;
  }
}

/* 星野エリアについて
----------------------------------------------------*/
@media all and (max-width: 640px) {
  .aboutBody #main .imgL,
  .aboutBody #main .imgR {
    float: none;
    margin: 0 auto 10px;
    text-align: center;
  }
  .aboutBody #main .lead img {
    max-width: 100%;
  }
}

.aboutBody #main .tabSection {
  min-height: 500px;
}
@media all and (max-width: 640px) {
  .aboutBody #main .tabSection {
    min-height: 250px;
  }
}

#main .tabArea .tabNav {
  *zoom: 1;
  margin-left: 43px;
}
@media all and (max-width: 640px) {
  #main .tabArea .tabNav {
    margin-left: -7px;
    text-align: center;
  }
}
#main .tabArea .tabNav li {
  float: left;
  margin-left: 7px;
}
@media all and (max-width: 640px) {
  #main .tabArea .tabNav li {
    margin-bottom: 7px;
  }
}

#main .tabArea .tabNav li a {
  display: block;
  width: 145px;
  height: 41px;
  background: url(../img/about/tab_nav.gif) no-repeat;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

#main .tabArea .tabNav li.tab01 a.active,
#main .tabArea .tabNav li.tab01 a:hover {
  background-position: 0 -41px;
}

#main .tabArea .tabNav li.tab02 a {
  background-position: -151px 0;
}

#main .tabArea .tabNav li.tab02 a.active,
#main .tabArea .tabNav li.tab02 a:hover {
  background-position: -151px -41px;
}

#main .tabArea .tabNav li.tab03 a {
  background-position: -303px 0;
}

#main .tabArea .tabNav li.tab03 a.active,
#main .tabArea .tabNav li.tab03 a:hover {
  background-position: -303px -41px;
}

#main .tabArea .tabNav li.tab04 a {
  background-position: -455px 0;
}

#main .tabArea .tabNav li.tab04 a.active,
#main .tabArea .tabNav li.tab04 a:hover {
  background-position: -455px -41px;
}

@media all and (max-width: 640px) {
  .tonboBody #main .sliderArea {
    min-height: 210px;
  }
  .tonboBody #main .sliderArea span.image-caption,
  .tonboBody #main .sliderArea div.slideshow a.advance-link,
  .tonboBody #main div.slideshow,
  .tonboBody #main .sliderArea div.loader,
  .tonboBody #main .sliderArea div.content {
    width: auto;
    margin: 0 auto;
    padding: 0 5px;
    text-align: center;
  }
  .tonboBody #main .sliderArea div.slideshow img {
    width: 100%;
    position: static;
    margin: 0 auto;
    text-align: center;
  }
  .tonboBody #main .sliderArea div.slideshow a.advance-link,
  .tonboBody #main .sliderArea div.loader,
  .tonboBody #main div.slideshow-container {
    height: auto;
  }
  .tonboBody #main .sliderArea .controls a {
    top: 33%;
  }
  .tonboBody #main ul.thumbs {
    margin-top: -30px;
  }
  .tonboBody #main .sliderArea div.slideshow a.advance-link {
    line-height: 0;
  }
  .tonboBody #main .sliderArea .controls a.prev {
    left: -7px;
  }
  .tonboBody #main .sliderArea .controls a.next {
    right: -7px;
  }
}
.aboutBody #main .section .text {
  *zoom: 1;
  overflow: hidden;
}

.aboutBody #main .section h3 {
  margin-bottom: 15px;
  border: 0;
}

.aboutBody #main dl dt {
  margin-top: 23px;
  font-weight: bold;
}

.englishBody #main .shopList {
  background: url(../img/english/photo_02_03.jpg) no-repeat right top;
}
@media all and (max-width: 640px) {
  .englishBody #main .shopList {
    background: none;
  }
}

.englishBody #main .shopList h4 {
  margin-top: 20px;
  margin-bottom: 10px;
}

.englishBody #main .shopList table td {
  width: 300px;
  padding: 10px 15px 15px 0;
  white-space: nowrap;
  background: url(../img/about/bg_table_td.gif) no-repeat right top;
}
@media all and (max-width: 640px) {
  .englishBody #main .shopList table td {
    width: 50%;
    white-space: normal;
    padding: 5px 0;
    background: none;
    border-bottom: 1px solid #b3cf8e;
  }
}

.englishBody #main .shopList table td {
  letter-spacing: 0;
}

.englishBody #main .shopList table td strong {
  display: block;
}

/* スタッフブログ
----------------------------------------------------*/
#main .entryHeader {
  *zoom: 1;
  margin-bottom: 20px;
}
#main .entryHeader ul.snsBtn {
  margin: 8px 0 0;
}
#main .entryHeader ul.snsBtn li {
  float: left;
  list-style: none;
  padding-left: 0;
  background: none;
}
#main .entryHeader ul.snsBtn li.twitter {
  width: 100px;
}

#main .entryHeader h3 {
  margin-bottom: 5px;
}

#main .entryHeader h3 a {
  text-decoration: none;
  color: #333;
}

#main .entryHeader h3 a:hover {
  text-decoration: underline;
  color: #003f7e;
}

#main .entryHeader p {
  font-size: 85%;
}

#main .entryBody img[class="mt-image-none"] {
  max-width: 100%;
  height: auto;
}
@media all and (max-width: 640px) {
  #main .entryBody img {
    max-width: 100%;
    height: auto;
  }
}

#main .entryBody p {
  line-height: 1.7;
}

#main .entryBody p.imgR,
#main .entryBody p.imgL {
  padding-top: 7px;
}

#main .entryFooter {
  clear: both;
  *zoom: 1;
  margin-bottom: 50px;
  padding-top: 10px;
  border-top: 1px solid #d9e7c7;
  font-size: 85%;
}

#main .entryFooter ul {
  text-align: right;
}

#main .entryFooter ul li {
  display: inline;
}

#main .entryFooter ul li.firstChild,
#main .entryFooter ul li:first-child {
  margin-left: 0;
  padding-left: 0;
  background: none;
}

/* ページ送り */
#main .pageNav {
  *zoom: 1;
  clear: both;
  position: relative;
  margin: 20px 0 30px;
  padding: 0;
  text-align: center;
}

#main .pageNav li {
  display: inline;
}

#main ul.pageNav li {
  display: inline;
  margin: 0 2px;
  padding: 0;
}

#main ul.pageNav li span,
#main ul.pageNav li a {
  display: inline-block;
  margin-bottom: 5px;
  padding: 5px 10px;
  background: #fff;
  border: 1px solid #d9cccc;
  text-decoration: none;
  vertical-align: middle;
}

#main ul.pageNav li span,
#main ul.pageNav li a:hover {
  background-color: #f0ebeb;
  border-color: #b4a8a8;
}

#main .pageNav li.current span {
  margin: 0;
  background: none;
  border: 0;
}

#main .pageNav li.prev {
  margin-right: 10px;
}

#main .pageNav li.next {
  margin-left: 10px;
}

#main .pageNav li.prev a {
  display: inline;
  margin: 0;
  padding-left: 10px;
  padding-right: 5px;
  background: url(../img/item/mark_prev.gif) no-repeat 0em 0.8em;
  border: 0;
}

#main .pageNav li.next a {
  display: inline;
  margin: 0;
  padding-right: 10px;
  padding-left: 5px;
  background: url(../img/item/mark_next.gif) no-repeat right 0.8em;
  border: 0;
}

#main .pageNav li.blogTop {
  position: absolute;
  top: 3px;
  right: 0;
}

#main .pageNav li.blogTop a {
  *zoom: 1;
  display: inline;
  margin: 0;
  padding: 0 0 0 15px;
  border: 0;
  background: #fff url(../img/item/mark_blogtop.gif) no-repeat 0em 0.3em;
}

#main .pageNav li.blogTop a:hover {
  background-color: #fff;
  text-decoration: underline;
}

/* 採用情報
----------------------------------------------------*/
#main .recruitTable table {
  width: 100%;
  margin-bottom: 30px;
}

#main h3 + .recruitTable table {
  margin-top: -20px;
}

#main .recruitTable table th {
  width: 18%;
  padding: 10px 20px 10px 0;
  border-bottom: 1px solid #dfd4c8;
  font-weight: normal;
}

#main .recruitTable table td {
  padding: 10px 0;
  border-bottom: 1px solid #dfd4c8;
}

/* ホテル ブレストンコート レストラン＆ラウンジ
----------------------------------------------------*/
#main .hotelHeader {
  *zoom: 1;
  overflow: hidden;
  margin-bottom: 60px;
}

#main .hotelHeader .image {
  float: left;
  margin-right: 25px;
}
@media all and (max-width: 640px) {
  #main .hotelHeader .image {
    float: none;
    margin: 0 auto 10px;
    text-align: center;
  }
}

#main .hotelHeader .text {
  *zoom: 1;
  overflow: hidden;
}

#main .hotelHeader .text h3 {
  text-align: center;
}

/* 楽しみ方
----------------------------------------------------*/
#main .anchorNav {
  margin: 20px auto 50px;
  text-align: center;
}

#main .anchorNav li {
  display: inline;
  margin: 0 7px;
}
@media all and (max-width: 640px) {
  #main .anchorNav li a img {
    padding-bottom: 15px;
    height: 45px;
  }
}

#main .planArea .planSection {
  margin: 0 0 8px;
  background: url(../img/enjoy/bg_section_middle.gif) repeat-y;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection {
    background: none;
  }
  #main .planArea .planSection img {
    max-width: 100%;
  }
}

#main .planArea .planSection .inner {
  *zoom: 1;
  padding-bottom: 5px;
  background: url(../img/enjoy/bg_section_bottom.gif) no-repeat left bottom;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection .inner {
    background: none;
  }
}

#main .planArea .planSection h2 {
  margin-bottom: 32px;
}

#main .planArea .planSection .timeSchedule {
  margin-left: 29px;
  margin-bottom: 20px;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection .timeSchedule {
    margin-left: 0;
  }
}

#main .planArea .planSection .subSection {
  margin: 0 7px 5px 24px;
  float: none;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection .subSection {
    margin-right: 0;
    margin-left: 0;
  }
}

#main .planArea .planSection .subSection.next {
  margin-bottom: 15px;
  padding-bottom: 12px;
  background: url(../img/enjoy/next.gif) no-repeat center bottom;
}

#main .planArea .planSection .subSection .body {
  padding: 0 36px 8px 46px;
  *zoom: 1;
  overflow: hidden;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection .subSection .body {
    padding: 0 0 8px;
  }
}

#main .planArea .planSection .subSection .time {
  float: left;
  width: 44px;
  margin-right: 10px;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection .subSection .time {
    float: left;
  }
}

#main .planArea .planSection .subSection .text {
  float: left;
  width: 263px;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection .subSection .text {
    width: 263px;
    overflow: hidden;
  }
}

#main .planArea .planSection .subSection .text p {
  margin: 0 0 10px;
}

#main .planArea .planSection .subSection .image {
  float: left;
  width: 270px;
  text-align: center;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection .subSection .image {
    clear: both;
    float: none;
    width: auto;
  }
}

#main .planArea .planSection .subSection.teaBreak {
  width: 614px;
  margin: 0 auto 30px 50px;
  padding-top: 24px;
  background: url(../img/enjoy/bg_tea_break_top.gif) no-repeat;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection .subSection.teaBreak {
    background: #f5efdf;
    width: auto;
    margin-left: auto;
  }
}

#main .planArea .planSection .subSection.teaBreak .body {
  padding: 1px 20px 9px;
  background: url(../img/enjoy/bg_tea_break_bottom.gif) no-repeat left bottom;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection .subSection.teaBreak .body {
    background: #f5efdf;
  }
}

#main .planArea .planSection .subSection.teaBreak .text {
  width: 325px;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection .subSection.teaBreak .text {
    width: 220px;
  }
}

#main .planArea .planSection .subSection.teaBreak .image {
  float: right;
  width: auto;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection .subSection.teaBreak .image {
    float: none;
  }
}

#main .planArea .planSection .subSection.sec_02_04 .text {
  width: 318px;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection .subSection.sec_02_04 .text {
    width: auto;
  }
}

#main .planArea .planSection .subSection.sec_02_04 .image {
  float: right;
  width: 180px;
}
@media all and (max-width: 640px) {
  #main .planArea .planSection .subSection.sec_02_04 .image {
    float: none;
    width: auto;
  }
}

/* 軽井沢 マルシェ
----------------------------------------------------*/
#main .marcheHeader {
  margin: 0 0 20px;
  padding: 0 415px 0 0;
  min-height: 300px;
  background: #c01920 url(../img/marche/eye.jpg) no-repeat;
}
@media all and (max-width: 640px) {
  #main .marcheHeader {
    padding-right: 0;
    background: #c01920;
  }
}

#main .marcheHeader h2 {
  margin: 0;
  padding: 0 0 0 70px;
}
@media all and (max-width: 640px) {
  #main .marcheHeader h2 {
    padding-left: 0;
    text-align: center;
  }
}

#main .marcheHeader p {
  text-align: center;
  color: #fff;
}

#main .marcheHeader p.time {
  margin: 13px auto;
  font-weight: bold;
}

#main .marcheHeader p.btn {
  margin: 0 auto;
  padding-bottom: 15px;
}

.marcheBody #main .lead {
  margin-bottom: 55px;
}
@media all and (max-width: 640px) {
  .marcheBody #main .lead {
    text-align: center;
  }
  .marcheBody #main .lead:after {
    content: "ハルニレテラスでは「軽井沢マルシェ」を季節ごとに開催しています。 テーマは「信州の食、新発見・再発見」。普段見かけない珍しい野菜や、地元で親しまれている食材が並ぶ「マルシェブース」や、レストランでは、テーマ食材を使った「コラボメニュー」をお楽しみください。生産者とのコミュニケーションも楽しい、ハートフルなマルシェです。";
    color: #c01920;
    font-weight: bold;
  }
  .marcheBody #main .lead img {
    display: none;
  }
}

#main .marcheSection {
  *zoom: 1;
  overflow: hidden;
  margin-bottom: 60px;
  padding-top: 62px;
  background: url(../img/marche/glue.gif) no-repeat center top;
}
#main .marcheSection h3 {
  float: left;
  width: 170px;
}
#main .marcheSection .text {
  float: left;
  width: 260px;
}
@media all and (max-width: 640px) {
  #main .marcheSection {
    width: 260px;
    margin-left: auto;
    margin-right: auto;
  }
  #main .marcheSection h3, #main .marcheSection .text {
    float: none;
  }
  #main .marcheSection h3 {
    width: 131px;
    margin-left: auto;
    margin-right: auto;
  }
}

#main .marcheSection.even .text,
#main .marcheSection.even h3 {
  float: right;
}
@media all and (max-width: 640px) {
  #main .marcheSection.even .text,
  #main .marcheSection.even h3 {
    float: none;
  }
}

#main .marcheSection.even h3 {
  text-align: right;
}
@media all and (max-width: 640px) {
  #main .marcheSection.even h3 {
    text-align: left;
  }
}

#main .marcheSection .text p {
  margin-bottom: 20px;
  line-height: 34px;
  padding-top: 1px;
  background: url(../img/marche/line.gif) repeat-y;
}

#main .marcheSection .text dl {
  background: #f0f5e8;
  padding-bottom: 15px;
}

#main .marcheSection .text dl dt {
  text-align: center;
  padding: 15px 0;
}

#main .marcheSection .text dl dd {
  padding: 0 10px;
  font-size: 93%;
}

#main .marcheSection .image {
  float: right;
  width: 240px;
  margin: 0;
}
@media all and (max-width: 640px) {
  #main .marcheSection .image {
    float: none;
    margin-left: auto;
    margin-right: auto;
  }
}

#main .marcheSection.even .image {
  float: left;
}
@media all and (max-width: 640px) {
  #main .marcheSection.even .image {
    float: none;
  }
}

/* サイト内検索
----------------------------------------------------*/
#main .resultItem {
  margin-bottom: 20px;
  border-bottom: 1px solid #dfd4c8;
}

#main .resultItem h4 {
  border: 0;
  padding: 0;
}

/* サイトマップ
----------------------------------------------------*/
#main .sitemapArea {
  *zoom: 1;
  margin-left: -20px;
}
@media all and (max-width: 640px) {
  #main .sitemapArea {
    margin-left: 0;
    margin-bottom: 50px;
    border-bottom: 1px solid #caddb0;
  }
}

#main .sitemapArea:after {
  content: '';
  display: block;
  clear: both;
}

#main .sitemapArea ul {
  float: left;
  width: 340px;
  margin: 0 0 0 20px;
}
@media all and (max-width: 640px) {
  #main .sitemapArea ul {
    float: none;
    width: auto;
    margin-left: 0;
  }
}

* html #main .sitemapArea ul {
  display: inline;
}

#main .sitemapArea ul li {
  _margin-left: -16px;
  margin-bottom: 8px;
  *zoom: 1;
}
@media all and (max-width: 640px) {
  #main .sitemapArea ul li {
    margin-bottom: 1px;
    border-top: 1px solid #caddb0;
  }
}

#main .sitemapArea ul li a {
  display: inline-block;
  padding-left: 12px;
  background: url(../img/item/mark_basic_child.gif) no-repeat 2px 0.5em;
}
@media all and (max-width: 640px) {
  #main .sitemapArea ul li a {
    display: block;
    padding: 13px 10px;
    padding-right: 25px;
    text-decoration: none;
    background: url(/sp/img/mark_01.png) no-repeat right center;
    -webkit-background-size: 20px auto;
    -moz-background-size: 20px auto;
    -ms-background-size: 20px auto;
    -o-background-size: 20px auto;
    background-size: 20px auto;
  }
}

#main .sitemapArea ul li a:link {
  color: #141414;
}

#main .sitemapArea ul li a:visited {
  color: #545454;
}

#main .sitemapArea ul li ul {
  margin-top: 8px;
  margin-left: 17px;
  width: 295px;
  font-size: 90%;
}
@media all and (max-width: 640px) {
  #main .sitemapArea ul li ul {
    margin-top: 1px;
    margin-left: 0;
    width: auto;
  }
  #main .sitemapArea ul li ul li {
    padding-left: 15px;
  }
}

@media all and (max-width: 640px) {
  #main h3[title],
  #main h2[title] {
    padding-bottom: 5px;
    border-bottom: 3px solid #f0f0f0;
  }
  .englishBody #main h3[title], .englishBody
  #main h2[title] {
    border-bottom-color: #e8f1dd;
  }
  #main h3[title]:after,
  #main h2[title]:after {
    content: attr(title);
    font-size: 130%;
    line-height: 1.2;
  }
  #main h3[title] img,
  #main h2[title] img {
    display: none;
  }
  #main h3[title] {
    text-align: left;
  }
  #main h3[title]:after {
    font-size: 120%;
  }
}
/*-----------------------------------------------------------
	#sub
----------------------------------------------------------- */
#sub {
  float: right;
  width: 240px;
  margin-bottom: 50px;
  background: #fff;
}
@media all and (max-width: 640px) {
  #sub {
    float: none;
    width: auto;
    margin: 30px 10px 50px;
  }
}

#sub .mobileArea {
  width: 210px;
  overflow: hidden;
  margin: 0 0 10px;
  padding: 0;
  background: #fff;
  border: 5px solid #c8c8c8;
  font-size: 85%;
}

#sub .mobileArea h3 {
  margin-bottom: 5px;
}

#sub .mobileArea p {
  margin-bottom: 10px;
  padding-left: 10px;
}

#sub .mobileArea p.url {
  padding-left: 0;
}

#sub .mobileArea .mobileImage {
  float: right;
  width: 103px;
  margin-left: 5px;
  margin-bottom: 0;
  *margin-bottom: -10px;
  padding: 0;
}

#sub ul.bnr {
  margin-bottom: 20px;
}

#sub ul.bnr li {
  margin-bottom: 10px;
}

@media all and (max-width: 640px) {
  #sub ul.bnr {
    text-align: center;
  }
  #sub ul.bnr li {
    margin: 0 5px 10px;
  }
}
/* socialBtn */
#sub ul.socialBtn {
  margin-top: 30px;
}

#sub ul.socialBtn li {
  float: left;
  width: 42%;
}

/* menu */
#sub .item,
#sub .menu {
  *zoom: 1;
  margin: 0 0 15px;
  padding-bottom: 3px;
  border: 1px solid #d9cccc;
}
@media all and (max-width: 640px) {
  #sub .item,
  #sub .menu {
    margin-bottom: 50px;
  }
}

#sub .menu dt {
  padding: 20px 10px;
}
@media all and (max-width: 640px) {
  #sub .menu dt {
    padding: 10px;
  }
}

#sub .menu dt.sub {
  padding: 0 0 5px;
  text-align: center;
}
@media all and (max-width: 640px) {
  #sub .menu dt.sub {
    margin: 0 5px 5px;
    padding: 0;
    text-align: left;
    background: #b3cf8e;
  }
}

#sub .menu dd + dt.sub {
  margin-top: 20px;
}

#sub .menu dd select {
  margin: 3px 0 0 10px;
}

#sub .menu dd ul {
  margin: 0 5px;
}

#sub .menu dd ul li {
  padding: 1px 0;
  border-top: 1px solid #d9cccc;
}

#sub .menuGreen dd ul li,
#sub .menuGreen {
  border-color: #d9e7c7;
}

.infoBody #sub .menu dd ul li {
  color: #999;
}

#sub .menu dd ul li.firstChild,
#sub .menu dd ul li:first-child {
  background: none;
}

#sub .menu dd ul li a {
  *zoom: 1;
  display: block;
  padding: 7px 5px 7px 17px;
  background: url(../img/item/mark_basic.gif) no-repeat 8px 1.2em;
  color: #191311;
  text-decoration: none;
}

#sub .menu dd ul li:last-child a {
  padding-bottom: 5px;
}

.newsBody #sub .menu dd ul li a.parentsLink,
#sub .menu dd ul li a.current,
#sub .menu dd ul li a:hover {
  background-color: #f0ebeb;
}

.newsBody #sub .menuGreen dd ul li a.parentsLink,
#sub .menuGreen dd ul li a.current,
#sub .menuGreen dd ul li a:hover {
  background-color: #e8f1dd;
}

#sub .item dt {
  padding: 7px 10px;
  background: #18202d;
  color: #fff;
  font-size: 115%;
  font-weight: bold;
}

#sub .item dd {
  overflow: hidden;
  padding: 10px;
}

#sub .item dd ul {
  margin-top: -2px;
}

#sub .item dd ul li {
  margin-top: 5px;
  color: #b7b8b8;
}

#contents #sub .profile .imgL {
  margin: 0 10px 10px 0;
  width: 90px;
}

#contents #sub .profile dd p {
  float: left;
  width: 90px;
}

/* ===================================================================
 style info :印刷用
=================================================================== */
@media print {
  /*
  #sub {
  	display: none;
  }
  */
}

/*# sourceMappingURL=import.css.map */
