@charset "utf-8";
/*
Theme Name: theme148
Theme URI: http://theme.o2gp.com/
Description: theme148
Version: 1.0
Author: o2 Group
Author URI: http://theme.o2gp.com/
Tags: simple

	o2 Group v1.0
	 http://theme.o2gp.com/

	This theme was designed and built by o2 Group,
	whose blog you will find at http://theme.o2gp.com/

	The CSS, XHTML and design is released under GPL:
	http://www.opensource.org/licenses/gpl-license.php

*/

*{margin:0;padding:0;}

body{
font: 14px/1.4 "メイリオ","Meiryo",arial,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
line-height: 1.6em;
color: #555;
background: #f9f6f2;
}

a{color:#D38E27;text-decoration:none;}
a:hover{color:#e9a947;}
a:active, a:focus {outline: 0;}
img{border:0;}
.clear{clear:both;}


/*************
全体
*************/
#wrapper{
border-top: 6px solid #cccccc;
background: #ffffff;
margin: 0 auto;
padding: 0 20px;
width: 910px;
}

/*************
/* ヘッダー
*************/
#header{
background: url(images/header.png) no-repeat 100% 0;
height: 80px;
margin-bottom:22px;
}

#header h1 {
padding: 7px 0 5px;
font-size: 12px;
font-weight: normal;
}


/*************
/* トップナビゲーション
*************/

#navi ul {
	margin:0px;
	padding:0;
        height: 38px;
        border-bottom:3px solid lightgray;
        border-right:1px solid gainsboro;
        margin-bottom:15px;
	list-style-type:none;
        behavior: url("csshover.htc");/* IE6 */
}


#navi ul a {
        color: gray;
        text-decoration: none;
        background-color: white;
}

#navi ul a {
        background-color: white;
}

#navi ul a:hover {
        color: white;
        background-color: darkgray;
}

#navi ul li {
        width: 150px;
        font-weight: normal;
        line-height: 38px;
        float: left;
        border:solid gainsboro;
        border-width:0px 0px 0px 1px;
}

#navi ul li a {
        display: block;
        height: 100%;
        font-size:95%;
        text-align: center;
}

#navi ul li ul li a {
        font-size:85%;
        border:solid gainsboro;
        border-width:0px 1px 1px 0px;
}

#navi ul li ul li {
        margin: 0;
        font-weight: normal;
        border-bottom:none;
        position:relative;
        left:-1px;
        float: none;
}

/* OFF */
#navi ul li ul {
        display: none;
}

/* ON */
#navi ul li:hover ul {
        display: block;
        position: absolute;
        z-index: 100;
}

/*************
メイン（右側）コンテンツ
*************/
#main {
float: right;
width: 618px;
padding: 20px 0;
display: inline;
}

#main .bannerM img{
padding-right: 10px;
padding-bottom: 15px;
}
#main .bannerM img.last{padding-right:0;}

#main h2{
margin-bottom: 20px;
padding: 2px 10px 0px 15px;
font-size: 15px;
font-weight: normal;
color: #6c6c6d;
line-height: 40px;
background: #6c6c6d url(images/heading.png) no-repeat;
-webkit-text-size-adjust: 100%;
}


#main h3 {
margin-bottom: 20px;
margin-top: 20px;
font-size: 15px;
line-height: 28px;
border-bottom: 1px solid lightgray;
border-left: 5px solid lightgray;
padding-left: 15px;
font-weight: normal;
color: #333333;
}


#main p {
padding: 0px 10px;
}


#main img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
#main img.alignright {
    padding: 4px;
    margin: 0 0 2px 7px;
    display: inline;
}
#main img.alignleft {
    padding: 4px;
    margin: 0 7px 2px 0;
    display: inline;
}
#main .alignright {
    float: right;
}
#main .alignleft {
    float: left;
}


#main table{
       margin: 10px 0;
       font-size: 90%;
       empty-cells:show;
       width:100%:
}

#main table{ border-collapse: collapse; }

#main th{
	padding: 0.5em;
	vertical-align: top;
	border: 1px solid #aaa;
        font-weight: normal;
        background-color: #f8f8f8;
}


#main td{
	padding: 0.5em;
	vertical-align: top;
	border: 1px solid #aaa;
}


#main #mainlist {
	margin-top: 1px;
	margin-bottom: 15px;
	border: 1px solid #E5E5E5;
	background-repeat: repeat-x;
	background-position: bottom;
	padding-top: 5px;
	padding-right: 5px;
	padding-bottom: 10px;
	padding-left: 5px;
}
#mainlist ul {
	padding-top: 10px;
	padding-right: 20px;
	padding-bottom: 10px;
	padding-left: 20px;
}
#mainlist ul ul {
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
}
#mainlist li {
        list-style-type: none;
	font-size: 14px;
	line-height: 20px;
}
*html #mainlist li {
	line-height: 0;
	margin-bottom: 0;
	margin-top: 0;
	padding-bottom: 0;
	padding-top: 0;
}
#mainlist li a {
        background: url(images/list.png) no-repeat 0 50%;
        margin-bottom: 2px;
	padding-bottom: 2px;
	padding-left: 15px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #D8D8D3;
	display: block;
	padding-top: 2px;
}
*html #mainlist li a {
	line-height: 6px;
	margin-bottom: 0;
	margin-top: 0;
	padding-top: 0;
	border: 0;
}

#content #mainlist {
	margin-top: 1px;
	margin-bottom: 15px;
	border: 1px solid #E5E5E5;
	background-repeat: repeat-x;
	background-position: bottom;
	padding-top: 5px;
	padding-right: 5px;
	padding-bottom: 10px;
	padding-left: 5px;
}
#mainlist ul {
	padding-top: 10px;
	padding-right: 20px;
	padding-bottom: 10px;
	padding-left: 0px;
}
#mainlist ul ul {
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
}
#mainlist li {
	font-size: 14px;
	line-height: 20px;
}
*html #mainlist li {
	line-height: 0;
	margin-bottom: 0;
	margin-top: 0;
	padding-bottom: 0;
	padding-top: 0;
}
#mainlist li a {
	margin-bottom: 2px;
	padding-bottom: 2px;
	padding-left: 15px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #D8D8D3;
	display: block;
	padding-top: 2px;
}
*html #mainlist li a {
	line-height: 6px;
	margin-bottom: 0;
	margin-top: 0;
	padding-top: 0;
	border: 0;
}


/* =asumeru
----------------------------------------------- */

#asumeruform{
    width: 100%;
}

#asumeruform table {
	border-collapse: collapse;
	margin: 0 0 10px;
	width: 100%;
	table-layout: fixed;
	border-color: #ccc;
}

#asumeruform table th {
	width: 150px;
	padding: 5px 10px;
	border: 1px solid #ccc;
	background: #ffffcc;
	text-align: left;
	vertical-align: middle;
	font-size: 12px;
	color: #000;
}

#asumeruform table tr{
    border-color: #ccc;
}

#asumeruform table td {
	padding: 10px;
	border: 1px solid #ccc;
	color: #000;
	font-size:12px;
}

#asumeruform input{
	font-size: 12px;
}

#asumeruform .inputSelect {
	padding: 3px;
	font-size: 12px;
	color: #000;
}

#asumeruform .inputText.inputTextShortest {
	width: 30%;
}

#asumeruform .inputText.inputTextShort {
	width: 55%;
}

#asumeruform .inputText.inputTextLong {
	width: 98%;
}

#asumeruform textarea {
	font-size: 12px;
	width: 98%;
	height: 150px;
	padding: 3px;
}

#asumeruform .formBtn {
	font-size: 16px;
	width: 40%;
	height:35px;
	padding: 4px;
	padding-left: 8px;
	padding-right: 8px;
	-webkit-border-radius: 6px;
	-webkit-box-shadow: 0 2px 2px #ccc;
	border-radius: 6px;
	box-shadow: 0 2px 2px #ccc;
}

#asumeruform .center-text {
	text-align: center;
}

#asumeruform span.require {
	color: red;
	font-weight: bold;
}

/* 画像を右に回りこみ */
#main p.withImage{
width: 598px;
margin: 20px 0 10px 10px;
padding: 5px 0;
}

#main p.withImage img{
float: right;
margin-left: .5em;
}

#date {
text-align: right;
padding-right: 15px;
padding-top: 15px;
padding-bottom: 10px;
font-weight:bold;
color:#6c6c6d;
}

#next {
text-align: center;
padding-top: 30px;
padding-bottom: 30px;
}


/* フッター共通 */
.box{
float: left;
width: 195px;
margin: 20px 16px 10px 0;
line-height: 1.2;
}

.box_img{
padding: 0px 0px 10px 0px;
}

.last{margin-right:0;}


/* ボタン */
p.button{
text-align: center;
font-weight:bold;
padding: 10px 0;
}

p.button a{
display:block;
line-height: 32px;
background: #ffffff url(images/button.png) no-repeat;
margin: 0 -20px;
}

p.button a{color:#fff;}
p.button a:hover{color:#d9e8ff;}

p.button a:hover{
cursor:pointer;
background-position: 0 -32px;
}

/* メインとフッターのリスト位置調節 */
#main ul, #footer ul{margin-left: 20px;}
#main li, #footer li{margin-bottom: 3px;}


/*************
サイド（左側）コンテンツ
*************/
#sidebar {
float: left;
width: 265px;
padding: 16px 0;
}

#sidebar p{margin-bottom: 20px;}

#sidebar h3 {
margin-top: 5px;
padding: 2px 10px 0 15px;
line-height: 40px;
font-size: 15px;
font-weight: normal;
color: #6c6c6d;
background: #6c6c6d url(images/heading2.png) no-repeat;
}

#sidebar ul{
margin-left: 5px;
padding: 10px 0;
}

#sidebar li{
margin: 0 10px 10px 5px;
list-style: none;
border-bottom: 1px dashed #6c6c6d;
}

#sidebar li a{
background: url(images/list.png) no-repeat 0 50%;
display: block;
padding-left:15px;
}

#sidebar li a:hover{background-position: 3px 50%;}

#sidebar img{
border:1px solid gainsboro;
}

/*************
/* フッター
*************/
#footer{
clear:both;
padding: 10px 0 10px;
border-top: 1px solid #6c6c6d;
}

#footer .inner{
overflow: hidden;
}

* html #footer .inner{height:1%;}

#footer #logo{
float:left;
padding: 10px 0 5px;
width: 292px;
}

address{
margin: 0 auto;
padding: 3px 0 3px;
text-align: center;
font-style:normal;
font-size: 12px;
clear:both;
display:block;
background: #cccccc;
width: 950px;
}

address a {
        color: #555;;
        text-decoration: underline;
}

address a:hover {
        color: gray;
        text-decoration: underline;
}