@charset "utf-8";
@import url("fontawesome-4.3.0.min.css");
@import url("framework.css");

/* Rows
--------------------------------------------------------------------------------------------------------------- */
.row1, .row1 a{}
.row2, .row2 a{}
.row3, .row3 a{}
.row4, .row4 a{}
.row5, .row5 a{}


/* Header
--------------------------------------------------------------------------------------------------------------- */
#header{padding-top:20px;}

#header #logo{}
#header #logo h1{margin:10px 0 0 0; padding:0; font-size:32px;}


/* systemsales
--------------------------------------------------------------------------------------------------------------- */

.mg-80{
	margin-top:-80px;
}
.mg80{
	margin-top:80px;
}

/* Page Intro
--------------------------------------------------------------------------------------------------------------- */
#pageintro{}

#pageintro .eyecatch{}
#pageintro .eyecatch li{}
#pageintro .eyecatch li::after{display:block; position:absolute; top:0; left:0; width:100%; height:100%; content:"";}
#pageintro .eyecatch li .flex-content{padding:250px 0 150px; text-align:center; z-index:1;}
#pageintro .eyecatch li .flex-content *{margin:0; white-space:normal; word-wrap:break-word;}
#pageintro .eyecatch li .flex-content p{margin-bottom:15px; font-size:36px;}
#pageintro .eyecatch li .flex-content p:first-of-type{max-width:60%; margin:0 auto 30px; line-height:1.4;}
#pageintro .eyecatch li p{
	font-family: 'Noto Sans Japanese', sans-serif;
	line-height: normal;
	font-weight: bold;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	padding-top: 20px;
	padding-right: 0;
	padding-bottom: 20px;
	padding-left: 0;
	border-top-width: 1px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-right-style: none;
	border-bottom-style: solid;
	border-left-style: none;
	border-top-color: #FFF;
	border-bottom-color: #FFF;
}

#pageintro .eyecatch li p span {
	display: block;
	margin-top: -2px;
	color: #FFFFFF;
	font-size: 12px;
	font-weight: normal;
	font-family: 'Noto Sans Japanese', sans-serif;
}

/* original

#pageintro .slides{}
#pageintro .slides li{}
#pageintro .slides li::after{display:block; position:absolute; top:0; left:0; width:100%; height:100%; content:"";}
#pageintro .slides li .flex-content{padding:250px 0 150px; text-align:center; z-index:1;}
#pageintro .slides li .flex-content *{margin:0; white-space:normal; word-wrap:break-word;}
#pageintro .slides li .flex-content .heading{margin-bottom:15px; font-size:80px;}
#pageintro .slides li .flex-content p:first-of-type{max-width:50%; margin:0 auto 30px; line-height:1.4;}
#pageintro .slides li p{padding:250px 0 150px;}

*/

/* Testimonials
--------------------------------------------------------------------------------------------------------------- */
#testimonials{}

#testimonials .slides{}
#testimonials .slides li{}
#testimonials .slides li .flex-content{padding:100px 0;}
#testimonials .slides li .flex-content blockquote{position:relative; min-height:205px; padding:40px 0 0 75px; line-height:2; font-size:16px; overflow:hidden; z-index:1;}
#testimonials .slides li .flex-content blockquote::before{display:block; position:absolute; top:0; left:0; width:240px; height:205px; line-height:.85; font-family:"FontAwesome"; content:"\f10d"; font-size:260px; z-index:-1;}

#testimonials .slides li .flex-content figure{text-align:center;}
#testimonials .slides li .flex-content figure img{width:125px; margin-bottom:20px;}
#testimonials .slides li .flex-content figure figcaption{}
#testimonials .slides li .flex-content figure figcaption em{font-size:.8rem;}


/* Latest
--------------------------------------------------------------------------------------------------------------- */
#latest.centred{
	padding-top: 60px;
	padding-right: 0;
	padding-bottom: 80px;
	padding-left: 0;
}

#latest .carousel-items li{width:306px; margin-right:20px; padding-bottom:5px; text-align:center;}
#latest .carousel-items li figure{border:1px solid;}
#latest .carousel-items li figure figcaption{padding:25px 20px;}
#latest .carousel-items li figure figcaption *{margin:0; padding:0;}
#latest .carousel-items li figure figcaption time{font-size:.8rem;}
#latest .carousel-items li figure figcaption .heading{margin-bottom:15px;}


/* Latest2
--------------------------------------------------------------------------------------------------------------- */
.box{
	width:80%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	background-color:#FFF;
	margin: 0 auto;
}

.carousel-items2{
	width:50%;
	background-color:#FFF;
	padding:0 15px 0 15px;
}

.mg{
	max-width:950px;
	margin: 0 auto;
}

@media screen and (max-width:800px){
.box{
	margin-left:-20px;
	width: 100%;
	background-color: #FFF;
}

.carousel-items2{
	width:100%;
	background-color:#FFF;
}

#latest2.centred{
	background-color:#FFF;
	padding-top: 20px;
	padding-bottom: 20px;
	margin: 0 auto;
	text-align:center;
}

#latest2 .carousel-items2 li figure{border:1px solid; margin: 0 auto;}
#latest2 .carousel-items2 li figure figcaption{padding:20px;}
#latest2 .carousel-items2 li figure figcaption *{margin:0; padding:0; font-size:1rem;}
#latest2 .carousel-items2 li figure figcaption time{font-size:.6rem;}
#latest2 .carousel-items2 li figure figcaption .heading{margin-bottom:25px;}
}

.none{
	list-style:none;
}

#latest2 .carousel-items2 li figure{border:1px solid; max-width:400px;}
#latest2 .carousel-items2 li figure figcaption{padding:25px 0;}
#latest2 .carousel-items2 li figure figcaption *{margin:0; padding:0; font-size:1.2rem;}
#latest2 .carousel-items2 li figure figcaption time{font-size:.8rem;}
#latest2 .carousel-items2 li figure figcaption .heading{margin-bottom:0px; padding:10px 0 0 10px; font-weight:bold;}


/* Clients
--------------------------------------------------------------------------------------------------------------- */
#clients.centred{
	padding-top: 50px;
	padding-right: 0;
	padding-bottom: 90px;
	padding-left: 0;
}

#clients .carousel-items li{width:222px; margin-right:30px;}

#clients .carousel-items2 li{width:222px; margin-right:30px;}

#clients p img{
	margin-top: 30px;
	margin-bottom: 10px;
	margin-right: 10px;
	margin-left: 10px;
}



/* Content Area
--------------------------------------------------------------------------------------------------------------- */
.container{
	padding-top: 60px;
	padding-right: 0;
	padding-bottom: 10px;
	padding-left: 0;
}

/* Content */
.container .content{}

.services article{text-align:center;}
.services article i{display:inline-block; width:100px; height:100px; line-height:100px; margin-bottom:20px; border:1px solid; font-size:50px;}
.services article .heading{margin-bottom:10px;}
.services article footer{margin-top:15px;}

/* Comments */
#comments ul{margin:0 0 40px 0; padding:0; list-style:none;}
#comments li{margin:0 0 10px 0; padding:15px;}
#comments .avatar{float:right; margin:0 0 10px 10px; padding:3px; border:1px solid;}
#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{width:100%; padding:10px; border:1px solid;}
#comments textarea{overflow:auto;}
#comments div{margin-bottom:15px;}
#comments input[type="submit"], #comments input[type="reset"]{display:inline-block; width:auto; min-width:150px; margin:0; padding:8px 5px; cursor:pointer;}


/* Sidebar */
.container .sidebar{}

.sidebar .sdb_holder{margin-bottom:50px;}
.sidebar .sdb_holder:last-child{margin-bottom:0;}


/* Footer
--------------------------------------------------------------------------------------------------------------- */
#footer{padding:10px 0; line-height:2;}

#footer .icon{display:inline-block; width:40px; height:40px; line-height:38px; margin-bottom:10px; border:1px solid; text-align:center; font-size:18px;}

#footer .title{margin:0 0 30px 0;}

#footer .linklist li{margin-bottom:10px;}
#footer .linklist li:last-child{margin-bottom:0;}

#footer .smallfont{margin:0; font-size:.8rem;}

#footer input, #footer button{border:none;}
#footer input{display:block; width:100%; padding:8px;}
#footer button{padding:6px 12px 8px; text-transform:uppercase; cursor:pointer;}

#footer a{color:#FFFFFF;}



/* Copyright
--------------------------------------------------------------------------------------------------------------- */
#copyright{padding:30px 0;}
#copyright *{margin:0; padding:10px;}
#copyright .link {
	text-align: right;
	font-size: 11px;
	padding:10px 0 30px 50px;
}

@media screen and (max-width:900px){
#copyright .link {
	text-align: center;
	font-size: 11px;
	padding:10px 0 30px 0;
}	
}


/* Transition Fade
--------------------------------------------------------------------------------------------------------------- */
.faico a, #mainav *, #backtotop, .btn, input, textarea, .services a, .services i, #latest, .carousel-items *{transition:all .3s ease-in-out;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Navigation
--------------------------------------------------------------------------------------------------------------- */
nav ul, nav ol{margin:0; padding:0; list-style:none;}

#mainav, #breadcrumb, .sidebar nav{line-height:normal;}
#mainav .drop::after, #mainav li li .drop::after, #breadcrumb li a::after, .sidebar nav a::after{position:absolute; font-family:"FontAwesome"; font-size:10px; line-height:10px;}

/* Top Navigation */
#mainav{margin-top:21px; font-style:normal;}
#mainav ul{}
#mainav ul ul{z-index:9999; position:absolute; width:160px;}
#mainav ul ul ul{left:160px; top:0;}
#mainav li{display:inline-block; position:relative; margin:0 15px 0 0; padding:0;}
#mainav li:last-child{margin-right:0;}
#mainav li li{width:100%; margin:0;}
#mainav li a{display:block; padding:0 0 40px 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{top:5px; left:5px;}
#mainav li li .drop::after{top:15px; left:5px;}
#mainav ul ul{visibility:hidden; opacity:0;}
#mainav ul li:hover > ul{visibility:visible; opacity:1;}

#mainav form{display:none; margin:0; padding:0;}
#mainav form select, #mainav form select option{display:block; cursor:pointer; outline:none;}
#mainav form select{width:100%; padding:5px; border:1px solid;}
#mainav form select option{margin:5px; padding:0; border:none;}

/* Breadcrumb */
#breadcrumb{padding:30px 0; font-style:normal;}
#breadcrumb ul{margin:0; padding:0; list-style:none;}
#breadcrumb li{display:inline-block; margin:0 6px 0 0; padding:0;}
#breadcrumb li a{display:block; position:relative; margin:0; padding:0 12px 0 0; font-size:12px;}
#breadcrumb li a::after{top:3px; right:0; content:"\f101";}
#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{display:block; position:relative; margin:0; padding:5px 10px 5px 15px; text-decoration:none; border:solid; border-width:0 0 1px 0;}
.sidebar nav a::after{top:9px; left:5px; content:"\f101";}
.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{display:block; width:100%; text-align:center; clear:both;}
.pagination li{display:inline-block; margin:0 2px 0 0;}
.pagination li:last-child{margin-right:0;}
.pagination a, .pagination strong{display:block; padding:8px 11px; border:1px solid; background-clip:padding-box; font-weight:normal;}

/* Back to Top */
#backtotop{z-index:980; display:inline-block; position:fixed; visibility:hidden; bottom:20px; right:20px; width:36px; height:36px; line-height:36px; font-size:16px; text-align:center; opacity:.2;}
#backtotop i{display:block; width:100%; height:100%; line-height:inherit;}
#backtotop.visible{visibility:visible; opacity:.5;}
#backtotop:hover{opacity:1;}


/* Smartphone + Tablet hamburger
--------------------------------------------------------------------------------------------------------------- */

.hamburger_header {
	display:none;
}

@media screen and (max-width:900px){
.hamburger_header {
	display:block;
	position: fixed;
	right: 3px;
	top: 6px;
	width: 4em; /* アイコン（クリック可能領域）の幅 */
	height: 4em; /* アイコン（クリック可能領域の）高さ */
	z-index: 990;
}

.global-nav {
	font-size:15px;
	position: fixed;
	right: -75%; /* これで隠れる */
	top: 0;
	width: 75%; /* スマホに収まるくらい */
	height: 100vh;
	padding-top: 33px;
	background-color: rgba(255, 255, 255, 1);
	transition: all .3s;
	z-index: 989;
	overflow-y: auto; /* メニューが多くなったらスクロールできるように */
	border-top: 3px solid #15a69e;
}

.global-nav__list{
	font-weight:900;
	width:80%;
	line-height:30px;
	text-align:left;
	color:#000;
	margin: 0 auto;
	list-style: none;
	padding-bottom:20px;
}

.open_line{
	color:#15a69e;
	padding-left:20px;
}

.global-nav__open:nth-child(odd){  
	background-color:#f2f2f2;
	padding:5px;
}
.global-nav__open:nth-child(even){  
	background-color: #f2f2f2;
	padding:5px;
}  

.global-nav__open:hover{
	background-color: #fff;
}

.global-nav__list a{
	font-size:16px;
	font-weight:800;
	color:#FFF;
	letter-spacing:0.1em;
    padding: 5px 10px 5px 20px;
}

.global-nav__open a{
	font-size:12px;
	font-weight:800;
	color:#363636;
	letter-spacing:0.1em;
    padding: 10px 10px 10px 10px;
}

.logo_wrap{
	list-style:none;
	width:80%;
	background-color:#fff;
	margin:0 auto;
}

.logo{
	list-style:none;
	text-align:left;
	padding-bottom:20px;
}

.hamburger {
	position: absolute;
	right: 0;
	top: 0;
	cursor: pointer;
	width: 4em; /* アイコン（クリック可能領域）の幅 */
	height: 4em; /* アイコン（クリック可能領域の）高さ */
	background-color: #ceeceb;
	z-index: 990;
}

.global-nav__item{
	text-align: center;
	background-color:#15a69e;
	margin-bottom:20px;
}

.global-nav__item:hover{
	background-color: #64c5c0;
}

.global-nav__item a {
	text-align:left;
	display: block;
	text-decoration: none;
	color:#FFF;
}

.global-nav__item p {
	letter-spacing:0.1em;
	font-size:0.1em; /* メニューのフォントサイズ */
	color:#15a69e;
}

.hamburger__line {
	position: absolute;
	top: 50%;
	right: 16px;
	width: 25px;
	height: 2px;
	background-color: #5ec2c6;
	transition: all .3s;
	content: "";
	box-sizing: border-box;
}

.hamburger__line--1 {
  top: 18px;
}
.hamburger__line--2 {
  top: 26px;
}

.hamburger__line--3 {
  top: 34px;
}

.black-bg {
	position: fixed;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	z-index: 900;
	background:rgba(194,220,233,0.5);
	opacity: 0.2;
	visibility: hidden;
	transition: all .2s;
	cursor: pointer;
}

/* 表示された時用のCSS */
.nav-open .global-nav {
  right: 0;
}

.nav-open .black-bg {
  opacity: .8;
  visibility: visible;
}

.nav-open .hamburger__line--1 {
  transform: rotate(45deg);
  top: 26px;
}

.nav-open .hamburger__line--2 {
  width: 0;
  left: 50%;
}

.nav-open .hamburger__line--3 {
  transform: rotate(-45deg);
  top: 26px;
}
}

.acd-check{
    display: none;
}

.acd-label{
	letter-spacing:0.2em;
    padding: 5px 10px 5px 0;
    background: #15a69e;
    color: #fff;
    display: block;
    margin-bottom: 1px;
    position: relative;
}

.acd-label:hover{
	background-color: #64c5c0;
}

.acd-label:after{
    box-sizing: border-box;
    content: '＋';
    display: block;
    font-family: "Font Awesome 5 Free";
    height: 52px;
    padding: 5px 20px;
    position: absolute;
    right: 0;
    top: 0px;
}

.acd-content{
    display: block;
    height: 0;
    opacity: 0;
    transition: .5s;
	transition-delay: 0.03s;
    visibility: hidden;
	padding-bottom:20px;
}
.acd-check:checked + .acd-label:after{
    content: '\－';
}
.acd-check:checked + .acd-label + .acd-content{
    height: auto;
    opacity: 1;
    visibility: visible;
}

/* ------------------ ハンバーガーメニューここまで ------------------ */


/* Tables
--------------------------------------------------------------------------------------------------------------- */
/*table, th, td{border:1px solid; border-collapse:collapse; vertical-align:top;}*/
table, th{table-layout:auto;}
table{width:100%; margin-bottom:15px;}
th, td{padding:8px 10px;}
td{border-width:0 1px;}

tbody, tr, td, .cp01{
	width: 25%;
	text-align: center;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #CCC;
	border-bottom-color: #CCC;
}

tbody, tr, td, .cp02{
	width: 75%;
	text-align: left;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #CCC;
	border-bottom-color: #CCC;
}

tbody, tr, td, .cp03{
	width: 100%;
	text-align: left;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}

tbody, tr, td, .cp04{
	width: 100%;
	text-align: left;
}

tbody, tr, td, .hs01{
	width: 15%;
	text-align: center;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #CCC;
	border-bottom-color: #CCC;
}

tbody, tr, td, .hs02{
	width: 10%;
	text-align: center;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #CCC;
	border-bottom-color: #CCC;
}

tbody, tr, td, .hs03{
	width: 75%;
	text-align: left;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #CCC;
	border-bottom-color: #CCC;
}

/* recruit
--------------------------------------------------------------------------------------------------------------- */

#rbtm {
	background-color: #59b1eb;
	color: #FFFFFF;
	width: 80%;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}

#rbtm #entry{
	padding: 20px;
	text-align: center;
	color: #FFFFFF;
	font-family: 'Noto Sans Japanese', sans-serif;
	letter-spacing: 0.2em;
	font-size: 16px;
}

#rbtm2 #entry a {
	color: #FFFFFF;
}

#rbtm2 {
	border:#FFF solid;
	width: 65%;
	margin-right: auto;
	margin-left: auto;
  position: relative;
}

#rbtm2 #entry{
	padding: 20px;
	text-align: center;
	color: #FFFFFF;
	font-family: 'Noto Sans Japanese', sans-serif;
	letter-spacing: 0.2em;
	font-size: 16px;
}

#rbtm2 #entry a {
	color: #FFF;
}

#rbtm2 #entry hover: {
	color: #FFF;
}

.mgb{
	padding-bottom:40px;
}

.noentry{
    width: 100%;
    position: absolute;
    bottom: 0px;
    background-color: rgba(0, 0, 0, 0.7);
    color: #FFFFFF;
    padding:8px 0 0px 0;
		font-size: 16px;
		text-align: center;
		letter-spacing: 0.2em;
	
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.icon article {text-align:center;}
.icon article i{display:inline-block; width:150px; height:150px; line-height:150px; margin-bottom:20px; border:1px solid; font-size:100px;}
.icon article .heading{margin-bottom:50px;}



/* privacy
--------------------------------------------------------------------------------------------------------------- */

.priv {margin: 50px 0 20px 0;}

.priv-r {text-align: right;}

.priv-c {text-align: center;
				margin: 50px 0 20px 0;
}

.priv-h
{
	font-size: 18px;
	line-height: normal;
	font-weight: normal;
	margin: 80px 0 0 0;
}

.priv-li {margin: 0 0 0 0;}

.priv-li li {margin: 0 0 0 15px;}

.priv-li p {margin: 20px 0 0 0;}


/* change
--------------------------------------------------------------------------------------------------------------- */
#change{
	border: 3px solid #59b1eb;
	font-size: 18px;
	line-height: normal;
	font-weight: bold;
	margin-top: 40px;
	margin-bottom: 40px;
	padding-top: 15px;
	padding-right: 0;
	padding-bottom: 15px;
	padding-left: 0;
}

.chtext {
	text-align: center;
	margin: 50px 0 20px 0;
	line-height: 2.2em;
}


/* att
--------------------------------------------------------------------------------------------------------------- */
#att{
	border: 3px solid #59b1eb;
	line-height: normal;
	margin-top: 40px;
	margin-bottom: 40px;
	padding:15px;
}

#att h3{
	font-size: 18px;
	text-align:center;
	font-weight: bold;
}

#att p {
	text-align: left;
	font-size: 14px;
}



/* Gallery
--------------------------------------------------------------------------------------------------------------- */
#gallery{display:block; width:100%; margin-bottom:50px;}
#gallery figure figcaption{display:block; width:100%; clear:both;}
#gallery li{margin-bottom:30px;}


/* googleMap
--------------------------------------------------------------------------------------------------------------- */
#googleMap {
	height: 400px;
	width: 100%;
	margin-top: 60px;
}

/* Map
--------------------------------------------------------------------------------------------------------------- */
.accessmap {
	width: 100%;
	height: auto;
	text-align:center;
	margin: 100px 0 50px 0;
}

.access {
    width: 680px;
    margin: 0 auto;
}
.access:after {
    content: "";
    clear: both;
    display: block;
}

/* bottom image
--------------------------------------------------------------------------------------------------------------- */
#btmimg {
	padding-top: 80px;
}


/* Font Awesome Social Icons
--------------------------------------------------------------------------------------------------------------- */
.faico{margin:0; padding:0; list-style:none;}
.faico li{display:inline-block; margin:5px 2px 0 0; padding:0; line-height:normal;}
.faico li:last-child{margin-right:0;}
.faico a{display:inline-block; width:30px; height:30px; line-height:30px; font-size:16px; text-align:center;}

.faico a{color:inherit; background-color:#3D4247;}
.faico a:hover{color:#FFFFFF;}

.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{color:#FFFFFF; background-color:#FFFFFF; border-color:#59b1eb;}
a{color:#59b1eb;}
hr, .borderedbox{border-color:#D7D7D7;}
label span{color:#FF0000; background-color:inherit;}
input:focus, textarea:focus, *:required:focus{border-color:#59b1eb;}
.overlay{color:#FFFFFF; background-color:inherit;}
.overlay::after{color:inherit; background-color:rgba(0,0,0,0);}
.overlay-2::after{color:inherit; background-color:rgba(36,40,48,.8);}
.btn{color:inherit; background-color:transparent; border-color:inherit;}
.btn:hover{color:#FFFFFF; background-color:#59b1eb; border-color:#59b1eb;}


/* Rows */
.row1{color:#363636;}
.row2{color:#D7D7D7; background-color:#3D4247;}
.row3{color:#363636;}
.row4{color:#FFFFFF; background-color:#232830;}
.row5, .row5 a{color:#D7D7D7; background-color:#3D4247;}

/* Header */
#header #logo a{color:inherit;}


/* Content area */
.services a{color:inherit;}
.services i{color:#363636; border-color:#363636;}
.services li:hover a{color:#59b1eb;}
.services li:hover i{color:inherit; border-color:inherit;}

/* business */
.img{
	width:70%;
	margin:50px auto;
}

@media screen and (max-width:900px){
.img{
	width:100%;
	margin:50px auto 0;
}

.access {
        width: 100%;
        padding: 0;
}	
}

/* ■□■□■□■□■□■□■□■□ map □■□■□■□■□■□■□■□■ */

.iframe-wrap {
  position: relative;
  width: 100%;
  padding-top: 58.82%; /* = height ÷ width × 100 */
}
.iframe-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Sliders + Carousels */
.flex-wrapper .flex-direction-nav a{color:#363636;}

#testimonials .slides li .flex-content blockquote::before{color:rgba(255,255,255,.15);}

#latest .carousel-items li a figure{border-color:#DDDDDD}
#latest .carousel-items li a:hover figure{border-color:#DDDDDD;}
#latest .carousel-items li a figure figcaption{color:#363636; background-color:#FFFFFF;}
#latest .carousel-items li a:hover figure figcaption{color:#FFFFFF; background-color:#59b1eb;}

#latest2 .carousel-items2 li a figure{border-color:#DDDDDD;}
#latest2 .carousel-items2 li a:hover figure{border-color:#DDDDDD;}
#latest2 .carousel-items2 li a figure figcaption{color:#363636; background-color:#FFFFFF; transition:all .3s ease-in-out;}
#latest2 .carousel-items2 li a:hover figure figcaption{color:#FFFFFF; background-color:#59b1eb;}


/* Footer */
#footer .icon, #footer hr, #footer .borderedbox{border-color:#3D4247;}
#footer .title{color:#FFFFFF; background-color:inherit;}
#footer input{color:#FFFFFF; background-color:#3D4247;}
#footer button{color:#FFFFFF; background-color:#59b1eb;}


/* Navigation */
#mainav li a{color:inherit;}
#mainav .active a, #mainav a:hover, #mainav li:hover > a{color:#59b1eb; background-color:inherit;}
#mainav li li a, #mainav .active li a{color:#FFFFFF; background-color:rgba(0,0,0,.6); border-color:rgba(0,0,0,.6);}
#mainav li li:hover > a, #mainav .active .active > a{color:#FFFFFF; background-color:#59b1eb;}
#mainav form select{color:#464646; background-color:#FFFFFF; border-color:#D7D7D7;}

#breadcrumb a{color:inherit; background-color:inherit;}
#breadcrumb li:last-child a{color:#59b1eb;}

.container .sidebar nav a{color:inherit; border-color:#D7D7D7;}
.container .sidebar nav a:hover{color:#59b1eb;}

.pagination a, .pagination strong{border-color:#D7D7D7;}
.pagination .current *{color:#FFFFFF; background-color:#59b1eb;}

#backtotop{color:#FFFFFF; background-color:#59b1eb;}


/* Tables + Comments */
table, th, td, #comments .avatar, #comments input, #comments textarea{border-color:#D7D7D7;}
#comments input:focus, #comments textarea:focus, #comments *:required:focus{border-color:#59b1eb;}
th{color:#FFFFFF; background-color:#373737;}
#comments li, #comments input[type="submit"], #comments input[type="reset"]{color:inherit; background-color:#FBFBFB;}
#comments li:nth-child(even){color:inherit; background-color:#F7F7F7;}
tr{color:inherit;}
tr:nth-child(even){color:inherit;}
table a, #comments a{background-color:inherit;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Media Queries
--------------------------------------------------------------------------------------------------------------- */
@-ms-viewport{width:device-width;}


/* Max Wrapper Width - Laptop, Desktop etc.
--------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:978px){
	#header, #breadcrumb, .container, .centred, #footer, #copyright{max-width:978px;}
}


/* Smartphone + Tablet
--------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:900px){
	#header, #breadcrumb, .container, .centred, #footer, #copyright{max-width:90%;}

	#header{padding:30px 0;}
	#header #logo h1{margin:0;}

	#mainav{margin-top:5px;}
	#mainav ul{display:none;}
	#mainav form{display:none;}

	#breadcrumb{}

	#pageintro .eyecatch li .flex-content{padding:200px 0 150px;}
	#pageintro .eyecatch li .flex-content .p{font-size:26px;}
	#pageintro .eyecatch li .flex-content p:first-of-type{max-width:80%;}
	
/* original
	#pageintro .eyecatch li .flex-content{padding:200px 0 150px;}
	#pageintro .eyecatch li .flex-content .heading{font-size:54px;}
	#pageintro .eyecatch li .flex-content p:first-of-type{max-width:75%;}
*/

	#testimonials .slides li .flex-content blockquote{padding-left:25px;}

	.container{}
	#comments input[type="reset"]{margin-top:10px;}
	.pagination li{display:inline-block; margin:0 5px 5px 0;}

	.centred{}

	#footer{}

	#copyright{}
	#copyright p:first-of-type{margin-bottom:10px;}
}


@media screen 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, .two_quarter, .three_quarter{display:block; float:none; width:auto; margin:0 0 30px 0; padding:0;}

	#header{text-align:center;}
	#mainav{margin-top:15px;}

	#pageintro .eyecatch li .flex-content{padding:100px 0;}
	#pageintro .eyecatch li .flex-content p{font-size:22px;}
	#pageintro .eyecatch li .flex-content p:first-of-type{max-width:none; width:80%;}
	
/*original
	#pageintro .eyecatch li .flex-content{padding:100px 0;}
	#pageintro .eyecatch li .flex-content .heading{font-size:32px;}
	#pageintro .eyecatch li .flex-content p:first-of-type{max-width:none; width:100%;}
*/

	#testimonials .slides li .flex-content{padding:65px 0;}
	#testimonials .slides li .flex-content figure{margin-bottom:0;}

	.container, #footer{padding-bottom:50px;}

	#footer .group:first-of-type div:last-child{margin-bottom:0;}
}



/* Other
--------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:650px){
/*	.scrollable{display:block; width:100%; margin:0 0 30px 0; padding:0 0 15px 0; overflow:auto; overflow-x:scroll;}
	.scrollable table{margin:0; padding:0; white-space:nowrap;}
*/
	.inline li{display:block; margin-bottom:10px;}
	.pushright li{margin-right:0;}

	.font-x2{font-size:1.4rem;}
	.font-x3{font-size:1.6rem;}
}
