﻿@charset "utf-8";
/* =======================================

	 CSS BrowserReset

======================================== */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  font-family: inherit;
  font-style: inherit;
  font-weight: inherit;}
html { overflow-y: scroll; }
img {
  vertical-align: text-bottom;
  outline:none !important;
  height:auto;}
strong { font-weight: bold; }
ol,
ul { list-style: none; }
table {
  border-collapse: collapse;
  border-spacing: 0;}
caption,
th,
td {
  font-weight: normal;
  text-align: left;
  vertical-align: top;}
blockquote:before, blockquote:after,
q:before, q:after { content: ""; }
blockquote,
q { quotes: "" ""; }
a:focus { /*\*/
  overflow: hidden; /**/
}
option { padding-right: 10px; }


/* =======================================

  Common

======================================= */
body {
  position: relative;
  font-family: Verdana, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  font-size: 16px;
  width: 100%;
  min-width: 1000px;
  height: 100%;
  line-height: 1.6;
  background: transparent url(../img/common/bg.gif) repeat;
  color: #756653;
  letter-spacing: 0.1em;
  -webkit-text-size-adjust: none;}

a {
  color: #57370e;
  text-decoration: underline;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;}
a:visited { text-decoration: underline; color: #57370e;}
a:active { text-decoration: underline; color: #756653;}
a:hover { text-decoration: underline; color: #cbcc2d;}

::selection { background: #e6e75b; color: #fff;}
::-moz-selection { background: #e6e75b; color: #fff;}


/* =======================================

  jQuery.support.opacity

======================================= */
#support {
  width: 100%;
  padding: 20px 20px 25px 20px;
  background: #fc3;}
#support p {
  width: 1000px;
  min-width: 1000px;
  margin: 0 auto 5px auto;}
#support p a {
  font-size: 18px;
  font-weight: bold;}


/* =======================================

  h1

======================================= */
#h1_wrap {
  width: 100%;
  background: #f2f18b;
  height: 32px;}
h1 {
  width: 980px;
  min-width: 980px;
  margin: 0 auto;
  padding-top: 14px;
  text-align: left;
  height: 12px;
  line-height: 12px;
  font-size: 12px;
  font-weight: bold;}


/* =======================================

  header

======================================= */
#header_wrap {
  width: 100%;
  height: 115px;
  background: #f8f9f1;}
#header {
  width: 980px;
  min-width: 980px;
  margin: 0 auto;
  position: relative;}
#header .logo {
  position: absolute;
  top: 6px;
  left: 0;}
#header .h_tel {
  position: absolute;
  top: 13px;
  right: 174px;}
#header .h_mail {
  position: absolute;
  top: 13px;
  right: 0;}


/* =======================================

  mainimg

======================================= */
#mainimg_wrap {
  width: 100%;
  height: 540px;
  background: #f7f9f1 url(../img/index/FV.jpg) no-repeat center top;}
.pages #mainimg_wrap {
  height: 112px;
  background: #f7f9f1 url(../img/common/mainimg.png) no-repeat center top;}
#mainimg {
  width: 980px;
  min-width: 980px;
  margin: 0 auto;
  position: relative;}
#index #mainimg {
  height: 540px;}


/* =======================================

  gnavi

======================================= */
#gnavi {
  width: 980px;
  min-width: 980px;
  margin: 0 auto;
  position: relative;}
#gnavi li a {
  position: absolute;
  display: block;
  overflow: visible;
  z-index: 9999;
}
#gnavi li.g1 a { 
  top: 55px; 
  left: 390px;
  width: 338px;
  height: 167px;
  background-image: url("../img/index/gnav/service.png");
  background-repeat: no-repeat;
}
#gnavi li.g2 a {
  top: 55px;
    left: 730px;
  width: 338px;
  height: 167px;
  background-image: url("../img/index/gnav/about.png");
  background-repeat: no-repeat;
  }
#gnavi li.g3 a {
  top: 220px;
    left: 390px;
  width: 338px;
  height: 167px;
  background-image: url("../img/index/gnav/schedule.png");
  background-repeat: no-repeat;
  }
#gnavi li.g4 a {
  top: 220px;
    left: 730px;
  width: 338px;
  height: 167px;
  background-image: url("../img/index/gnav/guide.png");
  background-repeat: no-repeat;
  }
.pages #gnavi li a {
  top: 12px;
  background-image: none;
}
.pages #gnavi li.g1 a {left: 0;}
.pages #gnavi li.g2 a {left: 238px;}
.pages #gnavi li.g3 a {left: 510px;}
.pages #gnavi li.g4 a {left: 748px;}


/* =======================================

  content

======================================= */
#content {
  width: 980px;
  min-width: 980px;
  margin: 0 auto;
  position: relative;}
#content:after {
  content: ".";
  height: 0;
  clear: both;
  display: block;
  visibility: hidden;}

/* ---------------------------------------
  left
--------------------------------------- */
#left {
  width: 660px;
  float: left;
  margin: 0 0 0 15px;}

/*  ぱんくず
--------------------------------------- */
#topicpath {
  position: absolute;
  right: 15px;
  top: 10px;
  font-size: 12px;}
#topicpath li {
  float: left;
  margin-left: 5px;}
#topicpath li a {
  margin-right: 5px;}

/*  #left コンテンツ
--------------------------------------- */
#index_news,
#index_concept,
.index_heart,
#left h2 {
  margin: 40px 0 0 0;
  vertical-align: top;}

#index_news,
#index_concept,
.index_heart,
.pages #left h2 {
  width: 600px;
  margin: 40px 0 0 0;
  padding: 6px 0 12px 60px;
  color: #ae8249;
  font-size: 24px;
  font-weight: bold;
  background: transparent url(../img/common/h2_bg_pen.gif) left bottom no-repeat;}
.pages #left h2.home {background: transparent url(../img/common/h2_bg_home.gif) left bottom no-repeat;}
.pages #left h2.leaf {background: transparent url(../img/common/h2_bg_leaf.gif) left bottom no-repeat;}
.pages #left h2.star {background: transparent url(../img/common/h2_bg_star.gif) left bottom no-repeat;}
#index_concept{
  background: transparent url(../img/index/h_consept.gif) left bottom no-repeat;
  padding: 30px;
}
#index_news{
  background: transparent url(../img/index/h_news.gif) left bottom no-repeat;
  padding: 30px;
}

.index_heart,
.pages #left h2.heart {background: transparent url(../img/common/h2_bg_heart.gif) left bottom no-repeat;}
.pages #left h2.smile {background: transparent url(../img/common/h2_bg_smile.gif) left bottom no-repeat;}
.pages #left h2.pin {background: transparent url(../img/common/h2_bg_pin.gif) left bottom no-repeat;}
.pages #left h2.cmt {background: transparent url(../img/common/h2_bg_comment.gif) left bottom no-repeat;}

#left h3 {
  padding: 0 0 0 10px;
  margin: 30px 0 5px 0;
  color: #ae8249;
  font-size: 18px;
  font-weight: bold;}
#left h3:before {
  content: "";
  width: 20px;
  padding-left: 25px;
  background: url(../img/common/icons.png) 0 -17px no-repeat;}

#left p {
  margin: 12px 10px 0 10px;
  text-indent: 1em;}
#left p span.line {
  background: linear-gradient(transparent 60%, #edf2b0 60%);}
#left p.border {
  padding: 15px;
  border: 1px dotted #c7c2a2;
  text-indent: 0;}
#left img.left {
  margin: 20px 15px 15px 15px;
  float: left;}
#left img.right {
  margin: 20px 15px 15px 15px;
  float: right;}
#left img.center {
  margin: 10px auto 0 auto;
  display: block;
  text-align: center;}
.pages iframe {
  margin: 15px auto 0 auto;
  display: block;}
#left .dotline {
  width: 100%;
  clear: both;
  padding: 20px 0 0 10px;
  background: url(../img/common/h3_dline.gif) top center no-repeat;}

/* ----- table ----- */
#left table {
  margin: 20px 10px 0 10px;
  border: 5px solid #e1ddc1;
  background: #f7f3de;
  width: 640px;
  table-layout: fixed;}
#left table.linktable {
  font-size: 12px;}
#left table thead th {
  text-align: center;}
#left table tr {
  background: url(../img/common/line_dot.gif) left bottom repeat-x;
  padding-bottom: 4px;}
#left table th,
#left table td {
  padding: 6px 15px 10px 15px;
  vertical-align: middle;}

/* ----- list ----- */
.pages #left ul {
  margin: 12px 10px 0 10px;}
.pages #left ul li {
  margin-bottom: 5px;}
.pages #left ul.icon li:before {
  content: "";
  padding-left: 25px;
  background: url(../img/common/icons.png) 0 -18px no-repeat;}
ul.ul_border {
  margin-top: 20px !important;
  background: url(../img/common/line_dot.gif) left top repeat-x;}
ul.ul_border li {
  padding: 14px;
  margin: 0 !important;
  line-height: 1.0;
  background: url(../img/common/line_dot.gif) left bottom repeat-x;}
ul.ul_arw li {
  width: 100%;
  padding: 0 0 30px 1em;
  background: url(../img/common/ul_arw.gif) 100px bottom no-repeat;}

/* ---------------------------------------
  right
--------------------------------------- */
#right {
  width: 240px;
  float: right;
  margin: 40px 15px 0 0;}
.pages #right {
  margin: 46px 15px 0 0;}
#right ul.banner li {
  margin-bottom: 20px;}
#right ul.banner li a img {
  line-height: 1.0;}
#right .btl {
  margin: 5px 7px 0 10px;
  display: inline-block;}
#right .kengaku {
  position: relative;}
#right .kengaku .access {
  position: absolute;
  bottom: 20px;
  text-align: center;
  width: 240px;}
#right .kengaku .access a {
  color: #faf9f1;}
#right .kengaku .access a:hover {
  color: #cbcc2d;}

/* ----- rnavi ----- */
#rnavi {
  position: relative;
  margin: 6px 0 40px 0;
  padding-top: 10px;
  background: url(../about/img/rnavi_bgtop.png) center top no-repeat;}
#rnavi ul {
  background: url(../about/img/rnavi_bg.png) center top repeat-y;}
#rnavi ul li {
  margin: 0 7px;}
#rnavi ul li.title {
  position: relative;
  top: -10px;
  margin: 0;
  height: 64px;
  overflow: visible;}
#rnavi ul li a {
  padding: 10px;
  display: block;}
#rnavi ul li.current a {
  padding: 10px 10px 10px 5px;
  text-decoration: none;}
#rnavi ul li.current a:before {
  content: "";
  overflow: hidden;
  background: url(../img/common/icons.png) 0 -36px no-repeat;
  padding-right: 20px;
  margin-left: 3px;}
#rnavi ul li.title a {
  padding: 0;}
#rnavi:after {
  content: "";
  display: block;
  position: absolute;
  background: url(../about/img/rnavi_bgbtm.png) center bottom no-repeat;
  width: 240px;
  height: 16px;
  z-index: -1;}


/* =======================================

  footer

======================================= */
#footer_wrap {
  width: 100%;
  background: #faf9f1;
  margin: 120px 0 0 0;}
#footer {
  width: 980px;
  min-width: 980px;
  margin: 0 auto;
  padding-top: 15px;
  position: relative;}

#fnavi {
  display: inline-block;
  margin: 0 5px;
  font-size: 14px;
  line-height: 1.8;}
#fnavi li {
  display: inline;
  white-space: nowrap;
  margin-right: 6px;}
#fnavi li:after {
  content: "|";}
#fnavi li:last-child:after {
  content: "";
  margin-right: 0;}
#fnavi li a {
  padding-right: 12px;}

#copy {
  width: 980px;
  min-width: 980px;
  padding: 20px 5px 10px 0;
  text-align: right;
  font-size: 12px;}

#cinfo_wrap {
  margin-top: 0 !important;}


/* =======================================

  common

======================================= */

/* ---------------------------------------
  Sprite Icons
--------------------------------------- */
.icons:before {
  content: "";
  background: url(../img/common/icons.png) top left no-repeat;}
.ico_dot:before {
  content: "";
  width: 20px;
  padding-left: 20px;
  background: url(../img/common/icons.png) 0 0 no-repeat;}

/* 外部リンク */
a.external:after {
  content: "";
  width: 10px;
  height: 19px;
  overflow: hidden;
  background: url(../img/common/icons.png) 0 3px no-repeat;
  padding-right: 10px;
  margin-left: 3px;}

.mt0 {margin-top: 0 !important;}
.mt5 {margin-top: 5px !important;}
.mt8 {margin-top: 8px !important;}
.mt10 {margin-top: 10px !important;}
.mt12 {margin-top: 12px !important;}
.mt15 {margin-top: 15px !important;}
.mt20 {margin-top: 20px !important;}
.mt23 {margin-top: 23px !important;}
.mt25 {margin-top: 25px !important;}
.mt30 {margin-top: 30px !important;}
.mt35 {margin-top: 35px !important;}
.mt40 {margin-top: 40px !important;}
.mt50 {margin-top: 50px !important;}
.mb0 {margin-bottom: 0px !important;}
.mb10 {margin-bottom: 10px !important;}
.mb15 {margin-bottom: 15px !important;}
.mb20 {margin-bottom: 20px !important;}
.mb30 {margin-bottom: 30px !important;}
.mb50 {margin-bottom: 50px !important;}
.ml3 {margin-left: 3px !important;}
.ml5 {margin-left: 5px !important;}
.ml10 {margin-left: 10px !important;}
.ml11 {margin-left: 11px !important;}
.ml12 {margin-left: 12px !important;}
.ml15 {margin-left: 15px !important;}
.ml20 {margin-left: 20px !important;}
.ml30 {margin-left: 30px !important;}
.ml40 {margin-left: 40px !important;}
.mr10 {margin-right: 10px !important;}
.pt10 {padding-top: 10px !important;}
.pt15 {padding-top: 15px !important;}
.pt20 {padding-top: 20px !important;}
.pt25 {padding-top: 25px !important;}
.pt40 {padding-top: 40px !important;}
.pb20 {padding-bottom: 20px !important;}
.pb30 {padding-bottom: 30px !important;}

.floatleft {float: left !important;}
.floatright {float: right !important;}
.clearleft {clear: left !important;}
.clearright {clear: right !important;}
.clearboth {clear: both !important;}

.fs10 {font-size: 10px !important;}
.fs11 {font-size: 11px !important;}
.fs12 {font-size: 12px !important;}
.fs14 {font-size: 14px !important;}
.fs16 {font-size: 16px !important;}
.fs18 {font-size: 18px !important;}
.fs20 {font-size: 20px !important;}
.fs22 {font-size: 22px !important;}
.fs24 {font-size: 24px !important;}

.bold {font-weight: bold !important;}

.red {color: #FF3300 !important;}
.yellow {color: #ffd040 !important;}

.center {text-align: center; margin-left: auto; margin-right: auto !important;}
.right {text-align: right !important;}

#modal{
  display: none;
}
form{
  position: relative;
}
.error{
text-align: center;
}
.error_str{
  font-weight: bold !important;
  color: #FF3300 !important;
}


/* =======================================

  ClearFixElements

======================================= */
.clearfix:after {
  content: ".";
  height: 0;
  clear: both;
  display: block;
  visibility: hidden;}
.clearfix {
  display: inline-block;
  overflow: hidden;}

.imeon {
	ime-mode: active; /* 全角モード */
}
.imeoff {
	ime-mode: inactive; /* 半角モード */
}
.for_sp {
  display: none;
}
.for_pc {
  display: inline-block;
}
