﻿@charset "utf-8";
 @import url("fontawesome-4.3.0.min.css");
@import url("custom.flexslider.css");
@import url("framework.css");
/* Rows
--------------------------------------------------------------------------------------------------------------- */
.row1, .row1 a {
}
.row2, .row2 a {
}
.row3 {
	border-top: 1px solid;
}
.row4 {
	border-top: 1px solid;
}
.row5, .row5 a {
}
/* Header
--------------------------------------------------------------------------------------------------------------- */
#header {
}
#header #logo {
}
#header #logo h1 {
	font-size: 16px;
	letter-spacing: .1em;
	margin: 40px 0 0 400px;
	padding: 0;
}
#header #logo h2 {
	font-size: 34px;
	letter-spacing: .15em;
	margin: 0 0 0 400px;
	padding: 0;
}
.open {
	font-size: 11px;
	letter-spacing: .1em;
	margin: 10px 0 0 400px;
	padding: 0;
}
span.logo01 {
	font-size: 13px;
	margin: 10px 0 0 0;
	padding: 0;
}
.logo {
	clear: left;
	float: left;
	margin: 20px 20px 10px 0;
}
/* Basic Slider
--------------------------------------------------------------------------------------------------------------- */
.txtoverlay {
	bottom: 0;
	display: block;
	height: 100%;
	left: 0;
	margin: 0;
	padding: 0;
	position: absolute;
	white-space: normal;
	width: 100%;
}
.centralise {
	display: block;
	height: 100%;
	margin: 0 auto;
	max-width: 978px;
	padding: 0;
}
.verticalwrap {
	border: none;
	display: table;
	height: 100%;
	text-align: center;
	width: 100%;
}
.txtoverlay article {
	border: none;
	display: table-cell;
	padding: 0;
	vertical-align: middle;
}
.txtoverlay .heading {
	font-size: 50px;
	line-height: 80px;
	margin-bottom: 30px;
	text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.5);
}
/* Services
--------------------------------------------------------------------------------------------------------------- */
#services {
	padding: 50px 0;
}
/* CTA - Call To Action
--------------------------------------------------------------------------------------------------------------- */
#cta {
	padding: 30px 0;
}
#cta div * {
	margin: 0;
	padding: 0;
}
#cta .heading, #cta .btn {
	text-transform: uppercase;
}
#cta .heading {
	margin-bottom: 10px;
}
#cta .btn {
	border-radius: 8px;
	display: block;
	font-weight: bold;
	padding: 15px;
	text-align: center;
}
/* Latest
---------------------------------------------------------------------------------------------------------------*/
.latest {
	display: block;
	max-width: 2000px;
	margin: 0 auto;
	width: 100%;
}
.latest ul {
}
.latest ul li {
	display: block;
	float: left;
	min-height: 100%;
	width: 50%;
}
.latest ul li:first-child, .latest ul li:nth-child(5n+1) {
	clear: left;
	margin-left: -1px;
}
.latest ul li figure {
	border: solid;
	border-width: 0 0 0 1px;
	display: block;
	max-width: 100%;
}
.latest ul li figure img {
	width: 100%;
}
.latest ul li figure figcaption * {
	margin: 0;
	padding: 0;
}
.latest a.overlay {
	display: block;
	position: relative;
}
.latest a.overlay::before {
	content: "";
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
.latest a.overlay::after {
	border-radius: 50%;
	content: "\f0c1";
	display: block;
	font-family: "FontAwesome";
	font-size: 18px;
	height: 40px;
	left: 50%;
	line-height: 40px;
	margin: -18px 0 0 -18px;
	padding: 0;
	position: absolute;
	text-align: center;
	top: 50%;
	width: 40px;
}
.latest a.overlay::before, .latest a.overlay::after {
	opacity: 0;
}
.latest a.overlay:hover::before, .latest a.overlay:hover::after {
	opacity: 1;
}
/* Content Area
--------------------------------------------------------------------------------------------------------------- */
.container {
	padding: 80px 0;
}
.container.nospace {
	padding-bottom: 0
}
/* Content */
.container .content {
}
/* Comments */
#comments ul {
	list-style: none;
	margin: 0 0 40px 0;
	padding: 0;
}
#comments li {
	margin: 0 0 10px 0;
	padding: 15px;
}
#comments .avatar {
	border: 1px solid;
	float: right;
	margin: 0 0 10px 10px;
	padding: 3px;
}
#comments address {
	font-weight: bold;
}
#comments time {
	font-size: smaller;
}
#comments .comcont {
	display: block;
	margin: 0;
	padding: 0;
}
#comments .comcont p {
	margin: 10px 5px 10px 0;
	padding: 0;
}
#comments form {
	display: block;
	width: 100%;
}
#comments input, #comments textarea {
	border: 1px solid;
	padding: 10px;
	width: 100%;
}
#comments textarea {
	overflow: auto;
}
#comments div {
	margin-bottom: 15px;
}
#comments input[type="submit"], #comments input[type="reset"] {
	cursor: pointer;
	display: inline-block;
	min-width: 150px;
	margin: 0;
	padding: 8px 5px;
	width: auto;
}
/* Sidebar */
.container .sidebar {
}
.sidebar .sdb_holder {
	margin-bottom: 50px;
}
.sidebar .sdb_holder:last-child {
	margin-bottom: 0;
}
/* Footer
--------------------------------------------------------------------------------------------------------------- */
#footer {
	padding: 50px 0;
}
#footer .title {
	border-bottom: 1px solid;
	font-size: 16px;
	margin: 0 0 30px 0;
	padding: 0 0 8px 0;
}
#footer .linklist li {
	margin-bottom: 10px;
}
#footer .linklist li:last-child {
	margin-bottom: 0;
}
#footer .smallfont {
	font-size: .8em;
	margin: 0;
}
#footer input, #footer button {
	border: none;
	border-radius: 5px;
}
#footer input {
	display: block;
	padding: 8px;
	width: 100%;
}
#footer button {
	cursor: pointer;
	font-weight: bold;
	padding: 6px 12px;
	text-transform: uppercase;
}
/* Copyright
--------------------------------------------------------------------------------------------------------------- */
#copyright {
	padding: 30px 0;
}
#copyright * {
	margin: 0;
	padding: 0;
}
/* Transition Fade
--------------------------------------------------------------------------------------------------------------- */
.faico a, #mainav *, .latest ::before, .latest ::after, #backtotop {
	transition: all .3s ease-in-out;
}
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */

/*------------------------------------------------------------ 
   リスト
------------------------------------------------------------*/
ol.a {
	list-style-type: square;
	font-size: 14px;
	line-height: 160%;
	padding: 0 0 30px 20px;
	text-align: left;
	zoom: 1;
	overflow: hidden;
}

li.a {
	margin-top: -1px;
	padding: 10px 5px;
	border-top:1px solid #CCC;
}

/* Navigation
--------------------------------------------------------------------------------------------------------------- */
nav ul, nav ol {
	list-style: none;
	margin: 0;
	padding: 0;
}
#mainav, #breadcrumb, .sidebar nav {
	line-height: normal;
}
#mainav .drop::after, #mainav li li .drop::after, #breadcrumb li a::after, .sidebar nav a::after {
	font-family: "FontAwesome";
	font-size: 10px;
	line-height: 10px;
	position: absolute;
}
/* Top Navigation */
#mainav {
}
#mainav ul {
	text-transform: uppercase;
}
#mainav ul ul {
	position: absolute;
	text-transform: none;
	width: 160px;
	z-index: 9999;
}
#mainav ul ul ul {
	left: 160px;
	top: 0;
}
#mainav li {
	display: inline-block;
	margin: 0 30px 0 0;
	padding: 0;
	position: relative;
}
#mainav li:last-child {
	margin-right: 0;
}
#mainav li li {
	margin: 0;
	width: 100%;
}
#mainav li a {
	display: block;
	padding: 20px 0;
}
#mainav li li a {
	border: solid;
	border-width: 0 0 1px 0;
}
#mainav .drop {
	padding-left: 15px;
}
#mainav li li a, #mainav li li .drop {
	display: block;
	margin: 0;
	padding: 10px 15px;
}
#mainav .drop::after, #mainav li li .drop::after {
	content: "\f0d7";
}
#mainav .drop::after {
	left: 5px;
	top: 25px;
}
#mainav li li .drop::after {
	left: 5px;
	top: 15px;
}
#mainav ul ul {
	opacity: 0;
	visibility: hidden;
}
#mainav ul li:hover > ul {
	opacity: 1;
	visibility: visible;
}
#mainav form {
	display: none;
	margin: 0;
	padding: 0;
}
#mainav form select, #mainav form select option {
	cursor: pointer;
	display: block;
	outline: none;
}
#mainav form select {
	border: 1px solid;
	padding: 5px;
	width: 100%;
}
#mainav form select option {
	border: none;
	margin: 5px;
	padding: 0;
}
/* Breadcrumb */
#breadcrumb {
	border-top: 1px solid;
	padding: 15px 0;
}
#breadcrumb ul {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: left;
}
#breadcrumb li {
	display: inline-block;
	margin: 0 6px 0 0;
	padding: 0;
}
#breadcrumb li a {
	display: block;
	font-size: 12px;
	margin: 0;
	padding: 0 12px 0 0;
	position: relative;
}
#breadcrumb li a::after {
	content: "\f101";
	right: 0;
	top: 3px;
}
#breadcrumb li:last-child a {
	margin: 0;
	padding: 0;
}
#breadcrumb li:last-child a::after {
	display: none;
}
/* Sidebar Navigation */
.sidebar nav {
	display: block;
	width: 100%;
}
.sidebar nav li {
	margin: 0 0 3px 0;
	padding: 0;
}
.sidebar nav a {
	border: solid;
	border-width: 0 0 1px 0;
	display: block;
	margin: 0;
	padding: 5px 10px 5px 15px;
	position: relative;
	text-decoration: none;
}
.sidebar nav a::after {
	content: "\f101";
	left: 5px;
	top: 9px;
}
.sidebar nav ul ul a {
	padding-left: 35px;
}
.sidebar nav ul ul a::after {
	left: 25px;
}
.sidebar nav ul ul ul a {
	padding-left: 55px;
}
.sidebar nav ul ul ul a::after {
	left: 45px;
}
/* Pagination */
.pagination {
	clear: both;
	display: block;
	text-align: center;
	width: 100%;
}
.pagination li {
	display: inline-block;
	margin: 0 2px 0 0;
}
.pagination li:last-child {
	margin-right: 0;
}
.pagination a, .pagination strong {
	border: 1px solid;
	display: block;
	font-weight: normal;
	padding: 8px 11px;
}
/* Back to Top */
#backtotop {
	border-radius: 5px;
	bottom: 20px;
	display: inline-block;
	font-size: 16px;
	height: 36px;
	line-height: 36px;
	opacity: .2;
	position: fixed;
	right: 20px;
	text-align: center;
	visibility: hidden;
	width: 36px;
	z-index: 999;
}
#backtotop i {
	display: block;
	height: 100%;
	line-height: inherit;
	width: 100%;
}
#backtotop.visible {
	opacity: .5;
	visibility: visible;
}
#backtotop:hover {
	opacity: 1;
}
/* Tables
--------------------------------------------------------------------------------------------------------------- */
table, th, td {
	border: 1px solid;
	border-collapse: collapse;
	vertical-align: top;
}
table, th {
	table-layout: auto;
}
table {
	margin-bottom: 15px;
	width: 100%;
}
th, td {
	padding: 5px 8px;
}
td {
	border-width: 0 1px;
}
/* フォーム追加分
--------------------------------------------------------------------------------------------------------------- */
.form-box {
	width: 90%;
	margin: 20px auto;
	text-align: left;
}
 
/*プレースホルダーの色*/
input::-moz-placeholder {
color: #666;
}
 textarea::-moz-placeholder {
color: #666;
}
/*入力時の背景色*/
input:focus, select:focus, textarea:focus {
	background: #bde9ba;
}
/*入力フォームの設定*/
.form-text {
	width: 100%;
	font-size: 14px;
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 5px;
	color: #000;
	background: #f5f5f5;
	margin-bottom: 20px;
}
/* Gallery
--------------------------------------------------------------------------------------------------------------- */
#gallery {
	display: block;
	margin-bottom: 50px;
	width: 100%;
}
#gallery figure figcaption {
	clear: both;
	display: block;
	width: 100%;
}
#gallery li {
	margin-bottom: 30px;
}
/* Font Awesome Social Icons
--------------------------------------------------------------------------------------------------------------- */
.faico {
	list-style: none;
	margin: 0;
	padding: 0;
}
.faico li {
	display: inline-block;
	line-height: normal;
	margin: 0 2px 0 0;
	padding: 0;
}
.faico li:last-child {
	margin-right: 0;
}
.faico a {
	border-radius: 5px;
	display: inline-block;
	font-size: 16px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	width: 30px;
}
.faico a {
	background-color: #EBEBEB;
	color: inherit;
}
.faico a:hover {
	color: #fff;
}
.faicon-facebook:hover {
	background-color: #3B5998;
}
.faicon-google-plus:hover {
	background-color: #DB4A39;
}
.faicon-instagram:hover {
	background-color: #3F729B;
}
.faicon-linkedin:hover {
	background-color: #0E76A8;
}
.faicon-tumblr:hover {
	background-color: #34526F;
}
.faicon-twitter:hover {
	background-color: #00ACEE;
}
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Colours
--------------------------------------------------------------------------------------------------------------- */
body {
	background-color: #fff;
	color: #474747;
}
a {
	color: #1a599c;
}
hr, .borderedbox {
	border-color: #D7D7D7;
}
label span {
	background-color: inherit;
	color: #FF0000;
}
.icon {
	background-color: #000;
	color: #fff;
}
.icon.nobg {
	background-color: inherit;
	border-color: #D7D7D7;
	color: inherit;
}
.red {
	background-color: #D1171A;
}
.blue {
	background-color: #243CA0;
}
.orange {
	background-color: #EC9700;
}
.green {
	background-color: #A7DFC4;
}
.aqua {
	background-color: #00FFFF;
}
.flexslider .heading, .flexslider .btn {
	color: #fff;
}
h1, h2, h3, h4, h5, h6, .heading {
	border-color: inherit;
	color: #242424;
}
/* Rows */
.row1, .row1 a {
	background-color: #fff;
	color: #242424;
}
.row2 {
	background-color: #fff;
	color: #474747;
}
.row3 {
	background-color: #fff;
	border-color: #EBEBEB;
	color: #474747;
}
.row4 {
	background-color: #F7F7F7;
	border-color: #EBEBEB;
	color: #474747;
}
.row5, .row5 a {
	background-color: #EBEBEB;
	color: #474747;
}
.row6 {
	background-color: #1a599c;
	color: #fff;
}
.row6 a {
	background-color: #fff;
	color: #96AFAA;
}
/* CTA - Call To Action */
#cta .heading {
	color: inherit;
}
/* Latest */
.latest ul li figure {
	border-color: #EBEBEB;
}
.latest a.overlay::before {
	background-color: rgba(0,0,0,.5);
}
.latest a.overlay::after {
	background-color: #96AFAA;
	color: #fff;
}
/* Footer */
#footer .title {
	border-color: #EBEBEB;
}
#footer input {
	background-color: #EBEBEB;
	color: #474747;
}
#footer button {
	background-color: #96AFAA;
	color: #fff;
}
/* Navigation */
#mainav li a {
	color: inherit;
}
#mainav .active a, #mainav a:hover, #mainav li:hover > a {
	background-color: inherit;
	color: #96AFAA;
}
#mainav li li a, #mainav .active li a {
	background-color: rgba(0,0,0,.6);
	border-color: rgba(0,0,0,.6);
	color: #fff;
}
#mainav li li:hover > a, #mainav .active .active > a {
	background-color: #96AFAA;
	color: #fff;
}
#mainav form select {
	border-color: #D7D7D7;
}
#breadcrumb {
	border-color: #EBEBEB;
}
#breadcrumb a {
	background-color: inherit;
	color: inherit;
}
#breadcrumb li:last-child a {
	color: #96AFAA;
}
.container .sidebar nav a {
	border-color: #D7D7D7;
	color: inherit;
}
.container .sidebar nav a:hover {
	color: #96AFAA;
}
.pagination a, .pagination strong {
	border-color: #D7D7D7;
}
.pagination .current {
	background-color: #96AFAA;
	color: #fff;
}
#backtotop {
	background-color: #96AFAA;
	color: #fff;
}
/* Tables + Comments */
table, th, td, #comments .avatar, #comments input, #comments textarea {
	border-color: #D7D7D7;
	padding: 10px;
	margin: 0 auto 40px auto;
}
th {
	background-color: #8c8b8b;
	color: #fff;
}
tr, #comments li, #comments input[type="submit"], #comments input[type="reset"] {
	background-color: #FBFBFB;
	color: inherit;
}
tr:nth-child(even), #comments li:nth-child(even) {
	background-color: #F7F7F7;
	color: inherit;
}
table a, #comments a {
	background-color: inherit;
}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Media Queries
--------------------------------------------------------------------------------------------------------------- */
@-ms-viewport {
width:device-width;
}

/* Smartphone + Tablet
--------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:180px) and (max-width:750px) {
.imgl, .imgr {
	display: inline-block;
	float: none;
	margin: 0 0 10px 0;
}
.fl_left, .fl_right {
	display: block;
	float: none;
}
.one_half, .one_third, .two_third, .one_quarter, .one_quarter01, .one_quarter02, .two_quarter, .three_quarter {
	display: block;
	float: none;
	margin: 0 0 30px 0;
	padding: 0;
	width: auto;
}
#header {
	text-align: center;
}
#header #logo h1 {
	font-size: 15px;
	margin: 0 0 10px 0;
}
#header #logo h2 {
	font-size: 30px;
	margin: 0 0 20px 0;
}
.open {
	font-size: 11px;
	margin: 0 0 10px 0;
}
#cta {
	padding-bottom: 0;
}
#footer {
	padding-bottom: 20px;
}
}

@media screen and (min-width:180px) and (max-width:900px) {
#header, #services, #cta, #breadcrumb, .container, #footer, #copyright {
	max-width: 90%;
}
#header {
	padding: 15px 0;
}
#header #logo h1 {
	margin-top: 5px;
}
.logo {
	clear: left;
	float: left;
	margin: 20px 20px 10px 0;
	width: 40%;
}
.basicslider .heading {
	font-size: 36px;
	line-height: 36px;
	margin-bottom: 15px;
}
.basicslider .btn {
	padding: 10px 25px;
}
#services {
	padding-bottom: 20px;
}
#cta {
}
#mainav {
}
#mainav ul {
	display: none;
}
#mainav form {
	display: block;
}
#breadcrumb {
}
.container {
}
#comments input[type="reset"] {
	margin-top: 10px;
}
.pagination li {
	display: inline-block;
	margin: 0 5px 5px 0;
}
#footer {
}
#copyright {
}
#copyright p:first-of-type {
	margin-bottom: 10px;
}
}

/* Max Wrapper Width - Laptop, Desktop etc.
--------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:978px) {
#header, #services, #cta, #breadcrumb, .container, #footer, #copyright {
	max-width: 978px;
}
}

/* Other
--------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:650px) {
.scrollable {
	display: block;
	margin: 0 0 30px 0;
	overflow: auto;
	overflow-x: scroll;
	padding: 0 0 15px 0;
	width: 100%;
}
.scrollable table {
	margin: 0 auto 40px auto;
	padding: 0;
	white-space: nowrap;
}
.basicslider .txtoverlay {
	display: none
}
.latest {
	max-width: none;
	padding: 30px 0;
	width: 90%;
}
.latest ul li {
	float: none;
	margin: 0 0 30px 0;
	width: auto;
}
.latest ul li:last-child {
	margin: 0;
}
.latest ul li figure {
	border-width: 0 1px 1px 1px;
	display: inline-block;
}
.latest ul li figure img {
	width: 100%;
}
.latest ul li figure figcaption {
	padding: 15px 30px;
}
}
