@charset "utf-8";


/*=============================================================================
   Reset
=============================================================================*/
html {
   font-size: 100%;
   overflow-y: scroll;
   -webkit-text-size-adjust: 100%;
   -ms-text-size-adjust: 100%;
	 }
body {
	margin: 0;
	}

h1,h2,h3,h4,h5,h6,div,p,ol,ul,li,dl,dt,dd,address,form,input{
	margin: 0;
	padding: 0;
	font-size: 100%;
	font-weight: normal;
	}

strong { font-style: normal; font-weight: bold;}
img {
	border: 0;
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
	}

ul,ol { list-style: none;}

table { border-collapse: collapse;border-spacing: 0;}
th,td { }

/*=============================================================================
   Base
=============================================================================*/
body {
	color: #666666;
	background:#F3F9F1 url(../img/body.png);
	font: 80%/1.6 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HiraKakuPro-W3", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", Osaka, verdana, arial, Sans-Serif;
	}

a:link, a:visited{
	color: #39A77A;
	text-decoration: none;
	}
a:hover, a:active{
	color: #887755;
	text-decoration: underline;
	outline: 0;
	}
a:focus {
  outline: thin dotted/*chrome*/;
	}
h1 {
	height: 15px;
	line-height: 15px;
	text-align: left;
	color: #FFFFFF;
	margin-bottom: 5px;
	font-weight: normal;
	font-size: 0.86em;
	}
h2 { }
h3 {
	background-image: url(../img/bg_h3.png);
	background-repeat: no-repeat;
	height: 30px;
	width: 940px;
	padding: 10px 0px 10px 20px;
	color: #FFFFFF;
	font-size: 1.25em;
	line-height: 30px;
	margin-bottom: 10px;
	clear: both;
	}
h4 {
	font-size: 1.24em;
	margin-bottom: 10px;
	border-left: 10px solid #36C087;
	padding-left: 10px;
	color: #2CAB73;
	}
h5 {
	}
h6 {
	}
hr {
	margin: 18px 0px;
	padding:0;
	border:solid #A08868;
	border-width:1px 0 0 0;
	height:1px;
	clear:both;
	}

/* Clear Settings
-----------------------------------------------------------------------------*/
.clear:before,.clear:after {content:"";display:table;}
.clear:after { clear:both;}
.clear { zoom:1;}

.clearboth {clear: both;}
.clearblank {clear: both;height: 0px;font-size: 0px;line-height: 0px;}

/*=============================================================================
   Layout
=============================================================================*/
.container {
	margin: 0px auto;
	width: 1020px;
	height: auto;
	position: relative;
	}
	.container:after{content: ""; display: block; clear: both;}
.inner {
	margin: 0 auto 10px;
	width: 960px;
	height: auto;
	}
	.inner:after{content: ""; display: block; clear: both;}

div#header {
	width: auto;
	height: 150px;
	margin: 0px auto 10px;
	background-image: url(../img/bg_header.png);
	background-repeat: repeat-x;
	}

div#main_visual {
	clear: both;
	width: auto;
	height: auto;
	margin: 0px auto;
	}

div#content_wrap {
	clear: both;
	width: auto;
	height: auto;
	margin: 0px auto;
	}

div#main {
	float: left;
	width: 68%;
	height: auto;
	margin-bottom: 30px;
	}
	div#main:after{content: ""; display: block; clear: both;}

div#side {
	float: right;
	width: 30%;
	height: auto;
	margin-bottom: 30px;
	}

div#footer {
	height: auto;
	background-color: #36C087;
	font-size: 1.17em;
	color: #FFFFFF;
	}
/* grd ******************************/


/* Header
-----------------------------------------------------------------------------*/
div#header .container {
	width: 1000px;
	}
div#logo {
	height: 80px;
	width: 415px;
	left: 0px;
	top: 15px;
	z-index: 50;
	float: left;
	margin-bottom: 0px;
	}
	div#logo a {
	background: url(../img/logo.png) no-repeat;
	height: 1px;
	width: 415px;
	overflow: hidden;
	display: block;
	padding-top: 79px;
	}
div#header_bnr {
	clear: right;
	width: 240px;
	float: right;
	height: 30px;
	margin-right: 10px;
	}
div#header_tel {
	float: right;
	margin-right: 10px;
	background: url(../img/header_tel.png) no-repeat;
	height: 1px;
	width: 240px;
	padding-top: 69px;
	overflow: hidden;
	}
div#header_txt {
	background: url(../img/header_txt01.png) no-repeat;
	height: 1px;
	font-size: 1.4em;
	font-weight: bold;
	float: right;
	width: 160px;
	padding-top: 29px;
	overflow: hidden;
	margin: 10px 0px 15px;
	}


/* Navigation
-----------------------------------------------------------------------------*/
/* Main navi *****/
#navi {
	width: 750px;
	height: 40px;
	margin: 0px;
	padding: 0px;
	float: left;
	clear: left;
	}
	#navi li {
	height: 40px;
	float: left;
	}
	#navi a {
	height: 1px;
	display: block;
	background-image: url(../img/navi.png);
	background-repeat: no-repeat;
	padding-top: 39px;
	overflow: hidden;
	}
	#navi a:hover {
	background-image: url(../img/navi_over.png);
	}

#navi01 a {
	background-position: 0px 0px;
	width: 150px;
}
#navi02 a {
	background-position: -150px 0px;
	width: 160px;
}
#navi03 a {
	background-position: -310px 0px;
	width: 107px;
}

#about #navi01 a,
#ryoma #navi02 a
#ryoma #navi03 a {
	background-image: url(../img/navi_over.png);
	}


/* Contents
-----------------------------------------------------------------------------*/

/* main contents
***************************************************************/

.contentsbox {
	width: 100%;
	clear: both;
	height: auto;
	background-image: url(../img/bg_main.png);
	background-repeat: repeat-y;
	margin-bottom: 20px;
	}
	.contentsbox:after{content: ""; display: block; clear: both;}
.contentsbox > .inner {
	margin: 0 auto 0px;
	width: 960px;
	height: auto;
	background-image: url(../img/bg_mainb.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	padding: 10px 30px 30px;
	}
	.inner:after{content: ""; display: block; clear: both;}
.matbox {
	clear: both;
	padding: 20px;
	background: url(../img/mat.png);
	margin-bottom: 20px;
	}
	.matbox:after{content: ""; display: block; clear: both;}

/* Form ******/
#form {
	margin-bottom: 20px;
	padding-top: 30px;
	}
	#form table {
	margin: 0px auto 15px;
	width: 85%;
	}
	#form th, #form td {
	}
	#form th {
	width: 33%;
	}
	#form td {
	}
	#form th span {
	font-size: 0.86px;
	color: #CC3333;
	margin-left: 5px;
	}


#pagetop {
	position: fixed;
	bottom: 180px;
	right: 10px;
	clear: both;
	}
	#pagetop a {
	text-decoration: none;
	background: #36C087 repeat-x 5px;
	color: #FDFFF8;
	padding: 20px 15px 10px;
	text-align: center;
	display: block;
	-moz-border-radius: 45px;
	-webkit-border-radius: 45px;
	border-radius: 45px;
	font-size: 11px;
	height: 45px;
	width: 45px;
	vertical-align: middle;
	}
	#pagetop a:hover { 
	opacity: .75;
	filter: alpha(opacity=75);
	-ms-filter: "alpha(opacity=75)";
	}


/* Footer
-----------------------------------------------------------------------------*/
div#footer .container {
	height: auto;
	padding-top: 30px;
	width: 1000px;
	}
	div#footer_logo {
	float: right;
	margin: 15px 0px 0px;
	height: 75px;
	width: 177px;
	text-indent: -9999px;
	background: url(../img/footer_logo.jpg) no-repeat;
	}
	div#footer a { text-decoration: underline; 	}
	div#footer_img {
	float: left;
	height: auto;
	width: auto;
	margin-right: 10px;
	}
	div#footer .add {
	text-align: right;
	padding: 5px 0px;
	line-height: 1.4em;
	}
	div#footer h4 {
	background: url(none);
	margin: 0px;
	padding: 0px;
	font-size: 1.16em;
	font-weight: normal;
	border-style: none;
	clear: none;
	color: #887755;
	}
	div#footer dl {
	margin: 0px;
	float: left;
	text-align: left;
	padding: 0px;
	}
	div#footer dt {
	margin: 0px;
	float: left;
	text-align: right;
	width: 60px;
	clear: both;
	}
	div#footer dd {
	text-align: left;
	border-style: none;
	margin-left: 65px;
	}

div#footernavi {
	height: 18px;
	font-size: 12px;
	line-height: 18px;
	padding: 9px 0px 8px;
	text-align: center;
	}
	div#footernavi ul {
	}
	div#footernavi li {
	padding: 0px 15px;
	display: inline;
	}
	div#footernavi li, div#footernavi li:first-child { border-left: 1px solid #887755;}
div#footer_txt {
	width: auto;
	overflow: auto;
	line-height: 1.4em;
	height: auto;
	text-align: right;
	}
div#copyright {
	background: url(../img/copyright.jpg) no-repeat;
	text-align: right;
	font-size: 11px;
	padding: 10px 0px;
	}


/*=============================================================================
   Style
=============================================================================*/
.disnon {
	display: none;
	}
.btn_more {
	position: absolute;
	right: 25px;
	bottom: 25px;
	}
/* Style_text
--------------------------------------------------- */
.small {font-size:0.92em;font-weight: normal;}
.smaller {font-size:smaller;font-weight: normal;}
.midium {font-size:1.16em}
.larger { font-size:larger; }
.big {font-size:1.40em;font-weight: bold;}
.bold {font-weight: bold;}
.red {color: #CC3333;}
.pink { color: #CC1155; }


/* Style_border
--------------------------------------------------- */
.border {border: 1px solid #CC6633;}

.border_btm {border-bottom: 1px solid #CC6633;}
.borderdot {border: 1px dotted #CE8639;}
.borderdot_btm {border-bottom: 1px dotted #CE8639;}

.border02 {border: 2px double #CC6633;}

.borderbox01 {
	border: 3px double #463225;
	margin: 0px 5px 5px;
	padding: 7px;
	}
.line {
	margin: 0px 0px 10px;
	height: 10px;
	width: auto;
	clear: both;
	padding-bottom: 3px;
	line-height: 10px;
	}


/* Style_table
--------------------------------------------------- */
table { margin-bottom: 5px; }
table caption {text-align: left;font-weight: bold;}
th,td {padding: 6px;}
th {
	background: #F3F9F1;
	text-align: left;
	font-weight: normal;
}

table.border, .border th, .border td {border: 1px solid #CBD2BF;}
table.border_btm, .border_btm th, .border_btm td { border-bottom: 1px solid #CDB; }


/* Style float margin padding
--------------------------------------------------- */
.alignleft {text-align:left;}
.alignright {text-align:right;}
.aligncenter {text-align:center;}

.lfloat, .left {float: left;}
.rfloat, .right {float: right;}

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

.lfloatmrb5 {float: left; margin-right: 5px; margin-bottom: 5px;}
.rfloatmbl5 {float: right; margin-bottom: 5px; margin-left: 5px;}
.lfloatmrb10 {float: left; margin-right: 10px; margin-bottom: 10px;}
.rfloatmbl10 {float: right; margin-bottom: 10px; margin-left: 10px;}
.lfloatmr20 {float: left; margin-right: 20px;}
.lfloatmr30 {float: left; margin-right: 30px;}

.m5 { margin: 5px;}
.m10 { margin: 10px;}
.m15 { margin: 15px;}
.m20 { margin: 20px;}
.m30 { margin: 30px;}
.m40 { margin: 40px;}
.m50 { margin: 50px;}

.mr5 { margin-right: 5px;}
.mr10 {	margin-right: 10px;}
.mr15 {	margin-right: 15px;}
.mr20 {	margin-right: 20px;}
.mr30 {	margin-right: 30px;}

.mrb5 { margin-right: 5px; margin-bottom: 5px;}

.mb3 { margin-bottom: 3px;}
.mb5 { margin-bottom: 5px;}
.mb10 { margin-bottom: 10px;}
.mb15 { margin-bottom: 15px;}
.mb20 { margin-bottom: 20px;}
.mb25 { margin-bottom: 25px;}
.mb30 { margin-bottom: 30px;}
.mb40 { margin-bottom: 40px;}

.ml10 {	margin-left: 10px;}
.ml20 {	margin-left: 20px;}
.ml150 {	margin-left: 150px;}

.mside10 { margin-right: 10px; margin-left: 10px;}
.mside15 { margin-right: 15px; margin-left: 15px;}
.mside20 { margin-right: 20px; margin-left: 20px;}

.p5 { padding: 5px;}
.p10 { padding: 10px;}
.p20 { padding: 20px;}

.ptb5 { padding-top: 5px; padding-bottom: 5px;}
.ptb10 { padding-top: 10px; padding-bottom: 10px;}
.ptb20 { padding-top: 20px; padding-bottom: 20px;}

.pside10 { padding-right: 10px; padding-left: 10px;}
.pside20 { padding-right: 20px; padding-left: 20px;}

.pt5 { padding-top: 5px}
.pr5 { padding-right: 5px}
.pb5 { padding-bottom: 5px}
.pl5 { padding-left: 5px}
