@charset "UTF-8";

/* ----------------------------------------------------------------------
	body
---------------------------------------------------------------------- */

body {
	color: #333;
    font:14px "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    *font-size:small;
    *font:x-small;
	line-height:1.8;
	background:url(../img/hd_bg.png) left top repeat-x #F7F7F5;
}

body#top {
	background:url(../img/top_hd_bg.png) left top repeat-x #F7F7F5;
}

table {
    font-size:inherit;
    font:100%;
}

/*
--- 14px ---
10px｜72%
11px｜79%
12px｜86%
13px｜93%
14px｜100%
15px｜108%
16px｜115%
17px｜122%
18px｜129%
19px｜136%
20px｜143%
21px｜150%
22px｜158%
23px｜165%
24px｜172%
25px｜179%
26px｜186%
*/

/* ----------------------------------------------------------------------
	a style
---------------------------------------------------------------------- */

a:link { text-decoration: underline;  color: #333; }  
a:visited { text-decoration: underline;  color: #333; }  
a:hover { text-decoration: underline;  color: #777; }  
a:active { text-decoration: underline;  color: #333; }  

/* ----------------------------------------------------------------------
	wrapper
---------------------------------------------------------------------- */

.wrap {
	width: 980px;
	margin: 0 auto;
}

/* ----------------------------------------------------------------------
	header
---------------------------------------------------------------------- */

header .inner {
	height: 167px;
	position: relative;
}

header h1 {
	position: absolute;
	left: 0;
	top: 0;
	color: #FFF;
	font-size: 93%;
	line-height: 2;
}

header .logo {
	position: absolute;
	left: 0;
	top: 73px;
}

header .banner {
	position: absolute;
	right: 0;
	top: 0;
}

/* ////////////// 
  nav
////////////// */

header nav ul {
	position: absolute;
	right: 0;
	top: 98px;
	border-right: 1px solid #96B1BB;
}

header nav ul li {
	float: left;
	border-left: 1px solid #96B1BB;
}

header nav ul li a:link {
	color: #265D72;
	background: url(../img/ic_arrow1.png) 22px center no-repeat;
	display: block;
	padding: 10px 25px 10px 35px;
	font-size: 108%;
	line-height: 1;
	text-decoration: none;
}

header nav ul li a:hover {
	color: #00A7B2;
	background: url(../img/ic_arrow2.png) 22px center no-repeat;
	text-decoration: none;
}

.caption {
	width: 980px;
	margin: 0 auto;
	padding: 65px 0 50px;
	font-size: 108%;
}

.caption .left {
	float: left;
	width: 260px;
}

.caption .right {
	float: right;
	width: 680px;
}

.cap-bg {
	background: url(../img/cap_bg.png) right top no-repeat ;
}

.cap-bg h2 {
	padding: 10px 0 0 302px;
}

/* ----------------------------------------------------------------------
	side
---------------------------------------------------------------------- */

.side {
	float: left;
	width: 260px;
}

.side aside {
	border: 3px solid #C2E0ED;
	margin-bottom: 20px;
}

.side aside .inner {
	width: 242px;
	margin: 6px auto;
}

/* ////////////// 
  menu
////////////// */

.side aside .inner h2 {
	margin-bottom: 6px;
}

.side aside .inner .menu {
	border-top: 1px solid #97B1BA;
	margin-bottom: 6px;
}

.side aside .inner .menu li {
	border-bottom: 1px solid #97B1BA;
}

.side aside .inner .menu li a:link {
	color: #265D72;
	background: url(../img/ic_arrow3.png) 10px center no-repeat;
	display: block;
	padding: 15px 20px 15px 27px;
	font-size: 108%;
	line-height: 1;
	text-decoration: none;
}

.side aside .inner .menu li a:hover {
	color: #00A7B2;
	background: url(../img/ic_arrow4.png) 10px center no-repeat;
	text-decoration: none;
}

/* ////////////// 
  blog
////////////// */

.side aside .inner .blog {
	background: #E9ECEC;
	padding: 10px 10px 0;
}

.side aside .inner .blog p {
	color: #333;
	border-bottom: 1px dotted #BBB;
	font-size: 93%;
	line-height: 1;
	padding-bottom: 10px;
	margin-bottom: 12px;
	
}

.side aside .inner .blog dl {
	line-height: 1.4;
}

.side aside .inner .blog dl dt {
	color: #00A7B2;
	font-size: 79%;
	letter-spacing: 1px;
}

.side aside .inner .blog dl dd {
	font-size: 93%;
	padding-bottom: 10px;
}

.side aside .inner .blog dl dd a:link {
	color: #555;
}

.side aside .inner .blog dl dd a:hover {
	color: #777;
}

/* ----------------------------------------------------------------------
	contents
---------------------------------------------------------------------- */

.contents {
	float: right;
	width: 680px;
}

.contents .inner {
	background: #FFF;
	margin-bottom: 40px;
}

.contents .inner h3 {
	margin-bottom: 40px;
}

.contents .banner {
	padding-bottom: 75px;
}

/* ----------------------------------------------------------------------
	footer
---------------------------------------------------------------------- */

footer {
	border-top: 3px solid #235D74;
	background: #DFE5E6;
	min-width:1000px;
}

footer .inner {
	position: relative;
	height: 152px;
}

footer .inner .logo {
	position: absolute;
	left: 0;
	top: 50px;
}

footer .inner .add {
	position: absolute;
	left:  300px;
	top: 65px;
}

footer .inner .pagetop {
	position: absolute;
	right: 0;
	top: -40px;
}

footer .copyright {
	background: #235D74;
	color: #DFE5E6;
	font-size: 93%;
	text-align: center;
	line-height: 3;
}

footer .copyright a {
	color: #DFE5E6;
	margin-left: 15px;
}

footer .copyright a:hover {
	color: #FFF;
}

/* ----------------------------------------------------------------------
	common
---------------------------------------------------------------------- */

.tc { text-align: center; }
.tr { text-align: right; }
.tl { text-align: left; }

.fl { float: left; }
.fr { float: right; }

.pt-5 { padding-top: 5px; }
.pt-10 { padding-top: 10px; }
.pt-15 { padding-top: 15px; }
.pt-20 { padding-top: 20px; }
.pt-25 { padding-top: 25px; }
.pt-30 { padding-top: 30px; }

.pb-5 { padding-bottom: 5px; }
.pb-10 { padding-bottom: 10px; }
.pb-15 { padding-bottom: 15px; }
.pb-20 { padding-bottom: 20px; }
.pb-25 { padding-bottom: 25px; }
.pb-30 { padding-bottom: 30px; }

.mt-5 { margin-top: 5px; }
.mt-10 { margin-top: 10px; }
.mt-15 { margin-top: 15px; }
.mt-20 { margin-top: 20px; }
.mt-25 { margin-top: 25px; }
.mt-30 { margin-top: 30px; }

.mb-5 { margin-bottom: 5px; }
.mb-10 { margin-bottom: 10px; }
.mb-15 { margin-bottom: 15px; }
.mb-20 { margin-bottom: 20px; }
.mb-25 { margin-bottom: 25px; }
.mb-30 { margin-bottom: 30px; }

.f-13 { font-size: 93%; }
.f-22 { font-size: 158%; }

.blue { color: #00A7B2; }
.red { color: #D45240; }

/* ////////////// 
  box
////////////// */

.box-a {
	padding: 0 40px;
}

.box-b {
	padding: 0 40px 55px;
}

.box-b2 {
	padding: 0 40px 30px;
}