@charset utf-8;

* {margin:0;padding:0;border:0}

.clearfix:after { content: ""; display: block; clear: both; }
.clearfix {display: inline-block;} /* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;} /* End hide from IE-mac */

body{
	font-size:75%;
	line-height:150%;
	-webkit-text-size-adjust:none;
	background-color:#fff;
	color:#333;
}


/* link
---------------------------------------------------- */
a:link,
a:visited {color: #036; text-decoration:underline} 
a:hover,
a:active {color: #036; text-decoration:none}


/* header_menu
---------------------------------------------------- */
#header_menu{
	margin:0 auto;
	overflow:hidden;
	border-bottom:1px solid #ccc;
}
#header_menu li {
	list-style:none;
	line-height:normal;
	font-size:100%;
	font-weight:bold;
	float:left;
}
#home{ width:30%}
#menu{ width:40%}
#pc{ width:30%}
#header_menu li a{
	display:block;
	border-right:1px solid #ccc;
	padding:15px 0px;
	text-align:center;
	text-shadow:1px 1px #fff;
	-moz-text-shadow:1px 1px #fff;
	-webkit-text-shadow:1px 1px #fff;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ddd));
}
#header_menu a:link,
#header_menu a:hover,
#header_menu a:visited{
	color:#666;
	text-decoration:none;
}
#header_menu #home strong{ background:url(../images/ico_home.png) no-repeat center left; padding:5px 0px 5px 25px}
#header_menu #menu strong{ background:url(../images/ico_menu.png) no-repeat center left; padding:5px 0px 5px 25px}
#header_menu #pc strong{ background:url(../images/ico_pc.png) no-repeat center left;padding:5px 0px 5px 25px}


/* header
---------------------------------------------------- */
header{
	padding:10px;
}
header img{ width:100%; height:auto}
h1{ width:70%; float:left; margin-top:8px}
#tel{width:17%;float:right;}


/* h2
---------------------------------------------------- */
#h2{
	background: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#fff));
	border-top:1px solid #ccc;
	border-left:5px solid #036;
	padding:15px 0px 15px 15px
}
#h2 img{ width:80%; height:auto}


/* page
---------------------------------------------------- */
.page{
	background:#fff;
	padding:20px 15px;
}


/* footer
---------------------------------------------------- */
footer{
	border-top:4px solid #99c3de;
	background-color:#e0f5ff;
	padding:15px
}
footer h3{
	font-size:120%;
	background-color:#036;
	border:1px solid #036;
	color:#fff;
	padding:7px;
	text-align:center;
}
nav ul{
	list-style:none;
	border-left:1px solid #ccc;
	border-right:1px solid #ccc;
	margin-bottom:10px
}
nav li{
	/*background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#eee));*/
	background-color:#fff;
	border-bottom:1px solid #ccc;
}
nav li a:link,
nav li a:visited,
nav li a:active{
	display:block;
	text-decoration:none;
	padding:10px;
	text-shadow:1px 1px #fff;
	-moz-text-shadow:1px 1px #fff;
	-webkit-text-shadow:1px 1px #fff;
	font-weight:bold;
	background:url(../images/ico_nav.png) no-repeat 97% center;
	font-weight:bold
}


#pagetop{
	text-align:right;
	padding-bottom:10px;
	border-bottom:1px solid #99c3de;
}

address{
	border-top:1px solid #fff;
	padding-top:10px;
	text-align:center;
	font-style:normal;
	font-size:85%;
	line-height:normal;
	color:#666
}


/* index
---------------------------------------------------- */
#top_menu{
	list-style:none;
	height:100%;
	overflow:hidden
}
#top_menu li{
	border:1px solid #ccc;
	border-radius:5px;
    -moz-border-radius:5px;
	-webkit-border-radius:5px;
	margin-bottom:5px;
	font-size:120%;
}
#top_menu li a:link,
#top_menu li a:hover,
#top_menu li a:visited{
	display:block;
	text-decoration:none;
	border:1px solid #fff;
	border-radius:5px;
    -moz-border-radius:5px;
	-webkit-border-radius:5px;
	text-shadow:1px 1px #fff;
	-moz-text-shadow:1px 1px #fff;
	-webkit-text-shadow:1px 1px #fff;
	padding:0px 10px;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#eee));
}
#top_menu li a strong{ display:block;padding:15px 0px 15px 50px;}
#top_menu #topmenu01 strong{background:url(../images/ico_topmenu01.png) no-repeat left center; }
#top_menu #topmenu02 strong{background:url(../images/ico_topmenu02.png) no-repeat left center; }
#top_menu #topmenu03 strong{background:url(../images/ico_topmenu03.png) no-repeat left center; }
#top_menu #topmenu04 strong{background:url(../images/ico_topmenu04.png) no-repeat left center; }
#top_menu li a span{background:url(../images/ico_nav.png) no-repeat 100% center; display:block;}


/* result
---------------------------------------------------- */
#result_category{
	border-left:1px solid #ccc;
	margin-bottom:15px
}
#result_category h3{
	font-size:100%;
	background: -webkit-gradient(linear, left top, left bottom, from(#3b92c7), to(#003467));
	color:#fff;
	padding:15px;
	text-align:center;
	border-left:none;
}
#result_category ul{
	width:100%;
	
	list-style:none;
	margin-bottom:10px
}
#result_category li{
	float:left;
	width:50%;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#eee));
	border-bottom:1px solid #ccc;
}
#result_category li a:link,
#result_category li a:visited,
#result_category li a:active{
	display:block;
	text-decoration:none;
	padding:10px;
	border-right:1px solid #ccc;
	font-weight:bold;
	background:url(../images/ico_nav.png) no-repeat 95% center;
	font-weight:bold
}


/* contact
---------------------------------------------------- */
.contact_dl{ margin:10px 0px}
.contact_dl dt{
	background-color:#e0f5ff;
	color:#036;
	font-weight:bold;
	padding:5px;
}
.contact_dl dd{
	background-color:#fff;
	padding:5px 5px 7px 0px;
	border-bottom:1px dotted #aaa;
	margin-bottom:7px;
}
.contact_dl dd span{ color:#666}
.contact_dl .need{background:url(../images/ico_need.gif) no-repeat 95% center #e0f5ff}

input{width:99%; font-size:100%;vertical-align:middle; padding:2px}
input[type="text"], select{ height:30px;border:1px solid #ccc}
input[type="checkbox"]{
    -webkit-appearance: none;
    position: relative;
    margin-right: 5px;
    border-radius: 8px;
    border: 2px solid #4c4c4c;
    -webkit-box-sizing: border-box;
    width: 28px;
    height: 28px;
    background: -webkit-gradient(
        linear,
        left top,
        left bottom,
        from(#fdfdfd),
        to(#d1d1d1)
    );
}
/* チェック時は背景色を変更 */
input[type="checkbox"]:checked {
    background: -webkit-gradient(
        linear,
        left top,
        left bottom,
        from(#353535),
        to(#8f8f8f)
    );
}
/* チェックの印を:before疑似要素と:after疑似要素を使って作成 */
input[type="checkbox"]:checked:before {
    position: absolute;
    left: 1px;
    top: 17px;
    display: block;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 1);
    content: "";
    width: 10px;
    height: 4px;
    background: #FFFFFF;
    -webkit-transform: rotate(45deg);
    -webkit-transform-origin: right center;
}
input[type="checkbox"]:checked:after {
    display: block;
    position: absolute;
    left: 9px;
    top: 17px;
    content: "";
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 1);
    width: 19px;
    height: 4px;
    background: #FFFFFF;
    -webkit-transform: rotate(-53deg);
    -webkit-transform-origin: left center;
}

input[type="radio"] {
    -webkit-appearance: none;
    position: relative;
    margin-right: 5px;
    border-radius: 14px;
    border: 2px solid #4c4c4c;
    -webkit-box-sizing: border-box;
    width: 28px;
    height: 28px;
    background: -webkit-gradient(
        linear,
        left top,
        left bottom,
        from(#fdfdfd),
        to(#d1d1d1)
    );
    vertical-align: middle;
}

/* チェック時は背景色を変更 */
input[type="radio"]:checked {
    background: -webkit-gradient(
        linear,
        left top,
        left bottom,
        from(#353535),
        to(#8f8f8f)
    );
}

/* チェックの印を:before疑似要素を使って作成 */
input[type="radio"]:checked:before {
    position: absolute;
    left: 50%;
    top: 50%;
    display: block;
    margin: -5px 0 0 -5px;
    -webkit-box-shadow: 0 2px 1px rgba(0, 0, 0, 1);
    content: "";
    border-radius: 5px;
    width: 10px;
    height: 10px;
    background: -webkit-gradient(
        linear,
        left top,
        left bottom,
        from(#fdfdfd),
        to(#d1d1d1)
    );
}

textarea{ width:99%; border:1px solid #ccc;}

.submit{
	display:block;
	text-decoration:none;
	padding:10px 0px;
	text-align:center;
	font-weight:bold;
	color:#444;
	background: -webkit-gradient(linear, left top, left bottom, from(#f1f1f1), to(#ddd));
	border:1px solid #ccc;
	-moz-box-shadow: inset 1px 1px 1px rgba(000,000,000,0.3);
	-webkit-box-shadow: inset 1px 1px 1px rgba(000,000,000,0.3);
	border-radius:20px;
    -moz-border-radius:20px;
	-webkit-border-radius:20px;
	text-shadow:1px 1px #fff;
	-moz-text-shadow:1px 1px #fff;
	-webkit-text-shadow:1px 1px #fff;
}


/* common
---------------------------------------------------- */
* html .dtb { zoom: 1; } /* IE6 */
*:first-child+html .dtb { zoom: 1; } /* IE7 */

h2,
h3,
h4,
h5,
h6{ clear:both; font-size:100%;line-height:normal;}

img{ vertical-align:top}

.clear {clear:both}
.f-left{float:left}
.f-right{float:right}

.tac{ text-align:center}
.tar{ text-align:right}

.ul{ margin-left:18px}

.lhn{ line-height:normal}

.small{ font-size:85%; line-height:1.3em}

.red{ color:#c00}

.table{
	width:100%;
	border-top:1px dotted #aaa;
}
.table th{
	width:30%;
	color:#036;
	padding:5px 0px;
	border-bottom:1px dotted #aaa;
	text-align:left;
	font-weight:normal
}
.table td{
	padding:5px 0px;
	border-bottom:1px dotted #aaa;
}

.title{
	font-size:120%;
	border-top:1px solid #388dc2;
	padding-top:15px;
	color:#036;
	margin-bottom:15px
}
.title2{
	font-size:120%;
	line-height:normal;
	color:#036;
	border-left:2px solid #036;
	padding:5px 0px 5px 10px;
	margin-bottom:10px
}
.title3{
	font-size:120%;
	line-height:nomal;
	border-bottom:1px dotted #666;
	padding-bottom:5px;
	margin-bottom:7px
}
.title4{
	font-size:110%;
	line-height:normal;
	background-color:#036;
	color:#fff;
	padding:5px;
	text-align:center;
	margin-bottom:10px
}

.link{background:url(../images/ico_link.png) no-repeat left center; padding:5px 0px 5px 15px}

.btn {
	border:1px solid #ccc;
	background: -webkit-gradient(linear, left top, left bottom, from(#f1f1f1), to(#ddd));
	border-radius:20px;
    -moz-border-radius:20px;
	-webkit-border-radius:20px;
}
.btn a{
	display:block;
	text-decoration:none;
	padding:10px;
	text-align:center;
	color:#333;
	text-shadow:1px 1px #fff;
	-moz-text-shadow:1px 1px #fff;
	-webkit-text-shadow:1px 1px #fff;
	background:url(../images/ico_navlink.png) no-repeat 95% center;
}

.img100 img{width:100%;height:auto;}

.box{ border:2px solid #99c3de; padding:12px; background-color:#fff}

.access_map{ border:1px solid #ccc}

.w-20{ width:20%}
.w-40{ width:40%}
.w-49{ width:49%}
.w-50{ width:50%}
.w-60{ width:60%}
.w-70{ width:70%}
.w-100{ width:100%}

.mb5{ margin-bottom:5px}
.mb10{ margin-bottom:10px}
.mb15{ margin-bottom:15px}
.mb20{ margin-bottom:20px}
.mr10{ margin-right:10px}
.ml10{ margin-left:10px}
.ml15{ margin-left:15px}

