/* HTML5 Boilerplate  */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
html, button, input, select, textarea { font-family: sans-serif; color: #222; }
body {
	background:url(../img/bg_top.jpg) center 108px no-repeat;
	margin: 0;
	font-family: 'OpenSansRegular';
	font-size: 15px;
	line-height: 1;
	color:#808080;
}

::-moz-selection { background: #2887c6; color: #fff; text-shadow: none; }
::selection { background: #2887c6; color: #fff; text-shadow: none; }

a { color: #2884c6; text-decoration:none; }
a:hover { color: #2884c6; }
abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }

q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd { margin:0; padding: 0; font-weight:normal; }
li { list-style:none;}

img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }

label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
button[disabled], input[disabled] { cursor: default; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }

.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }


/* -- font -- */
@font-face {
	font-family: 'OpenSansRegular';
	src: url('../font/opensans-regular-webfont.eot');
	src: url('../font/opensans-regular-webfont.eot?#iefix') format('embedded-opentype'),
			 url('../font/opensans-regular-webfont.woff') format('woff'),
			 url('../font/opensans-regular-webfont.ttf') format('truetype'),
			 url('../font/opensans-regular-webfont.svg#CabinRegular') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'OpenSansExtrabold';
	src: url('../font/opensans-extrabold-webfont.eot');
	src: url('../font/opensans-extrabold-webfont.eot?#iefix') format('embedded-opentype'),
			 url('../font/opensans-extrabold-webfont.woff') format('woff'),
			 url('../font/opensans-extrabold-webfont.ttf') format('truetype'),
			 url('../font/opensans-extrabold-webfont.svg#OpenSansExtrabold') format('svg');
	font-weight: normal;
	font-style: normal;
}


/* -- Adjusment -- */
.clr { clear: both; }
.fr { float: right!important; }
.fl { float: left!important; }
.ar { text-align: right!important; }
.al { text-align: left!important; }
.ac { text-align: center!important; }
ul.basic li {
	margin-left: 20px;
	list-style-type: disc;
}
ol.basic li {
	margin-left: 20px;
	list-style-type: decimal;
}
.mb0 { margin-bottom:0!important;}
.mb10 { margin-bottom:10px!important;}
.mb50 { margin-bottom:50px!important;}

.mr0 { margin-right:0!important;}


/* -- common -- */
#wrap {
	width:940px;
	margin:0 auto;
}
#main {
	padding-bottom:50px;
}
#main p {
	line-height:1.4;
	margin-bottom:15px;
}
#main h1 {
	margin:50px 0 90px;
	font-size:40px;
	font-weight:bold;
	color:#0465aa;
}
#main .fr,
#main .fl {
	width:440px;
	font-weight:600;
}
#main .bold,
#main strong {
	font-weight:normal;
	font-weight:bold;
}
#main .fl li {
	margin-bottom:15px;
	line-height:1.4;
}

/* -- header -- */
header .logo {
	width:330px;
	margin:22px 0 16px 0;
	float:left;
}

/* -- gNav -- */
nav #gNav {
	border-left:2px solid #2884c6;
	width:450px;
	height:50px;
	padding-left:10px;
	margin-top:33px;
	float:right;
	font-size:17px;
	text-align:right;
}
nav #gNav li {
	margin:0 10px;
	display:inline-block;
	line-height:50px;
}
nav #gNav li.on {
	font-weight:bold;
}

/* -- footer -- */
footer {
	border-top:2px solid #2884c6;
	padding:10px 0 30px;
}
footer p {
	width:400px;
	float:left;
	font-size:12px;
	line-height:1.5;
}
footer p.fb {
	width:148px;
	float:right;
}
footer p a {
	color:#808080;
}
/* -- home -- */
#home {
	background:url(../img/bg_home.jpg) center 108px no-repeat;
}
#home .hero {
	margin-bottom:20px;
	padding:45px 0;
}
#home .hero .txt {
	width:390px;
	float:left;
	color:#fff;
}
#home .hero .txt a {
	font-weight:bold;
	color:#0465aa;
}
#home .hero h2 {
	margin-bottom:20px;
	font-size:40px;
	font-weight:bold;
	color:#0465aa;
}
#home .hero .ph {
	width:440px;
	float:right;
}
#home .hero strong {
	color:#fff;
}
#home .banner_home dl {
	width:220px;
	margin-right:20px;
	float:left;
	line-height:1.4;
}
#home .banner_home dd,
#home .banner_home dt {
	margin-bottom:15px;
}
#home .banner_home dd strong {
	color:#555;
}
#home .banner_home a {
	font-weight:bold;
	color:#6e9dbf;
}

/* -- gallery -- */
.gallery {
	width:900px;
}
.gallery li {
	width:139px;
	margin:0 10px 10px 0;
	float:left;
}

/* -- contact -- */
.contact_detail dt,
.contact_detail p {
	font-weight:bold;
}
.contact_detail dt {
	margin-bottom:5px;
}
.contact_detail dd {
	margin-bottom:20px;
}
.contact_detail dd a {
	color:#555;
}

label {
	margin-bottom:10px;
	display:block;
	vertical-align:top;
	clear:both;
}
textarea,
input {
	border:#ccc 1px solid;
	width:300px;
	height:40px;
	padding:0 10px;
	margin-bottom:20px;
	display:block;
}
input {
	margin-right:20px;
	float:left;
}
textarea {
	height:100px;
	padding:10px;
}
#send {
	background:#0465aa;
	border:none;
	width:100px;
	height:30px;
	font-weight:400;
	color:#fff;
}
.required {
	font-size:11px;
	color:#F00;
}
.warning {
	color:#F00;
}
form .warning {
	width:200px;
	float:left;
}




@media only screen and (min-width: 35em) {
  

}

.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }

@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } 
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } 
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } 
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}
