@charset "utf-8";

@import url("fontawesome-4.3.0.min.css");
@import url("framework.css");

/* Rows
--------------------------------------------------------------------------------------------------------------- */
.row0{padding:30px 0;}
.row1, .row1 a{}
.row2{border-bottom:1px solid;}
.row3, .row3 a{}
.row4, .row4 a{}
.row5, .row5 a{}


/* Header
--------------------------------------------------------------------------------------------------------------- */

#topbar{padding:10px 0; width:950px; margin-left:auto; margin-right:auto;}

#header, #header #logo, #header #mainav{height:80px;}

#header #logo{padding:0 10px;} 
#header #logo h1{margin:0; padding:0; font-size:28px; line-height:80px; font-variant:small-caps;}


/* Page Intro
--------------------------------------------------------------------------------------------------------------- */
#pageintro{padding:40px 0 80px;}

#pageintro *{margin:0;}
#pageintro span{display:inline-block; padding:10px;}
#pageintro p{font-size:22px; line-height:normal;}
#pageintro p .btn{margin-top:30px; font-size:1rem;}


/* Content Area
--------------------------------------------------------------------------------------------------------------- */
.container{padding:50px 0;}

/* Content */
.container .content{}

.services{}
.services article{position:relative; min-height:65px; padding:20px 20px 20px 75px; border:1px solid;}
.services article *{margin:0;}
.services article .heading{margin-bottom:10px; font-size:1.1rem; text-transform:uppercase; font-weight:bold;}
.services article .icon{display:inline-block; position:absolute; top:20px; left:15px; width:35px; height:35px; text-align:center;}
.services article .icon i{line-height:35px; font-size:36px;}
.services article .viewit{display:inline-block; position:absolute; bottom:-1px; right:-1px; width:24px; height:24px; border:1px solid; text-align:center; opacity:0;}
.services article:hover .viewit{opacity:1;}
.services article .viewit i{line-height:22px; font-size:22px;}

.pr-charts{}
.pr-charts .pr-chart-ctrl{display:block; float:left; width:25%;}
@media screen and (max-width:500px){.pr-charts .pr-chart-ctrl{width:100%; margin-bottom:50px;} .pr-charts .pr-chart-ctrl:last-child{margin-bottom:0;}}
@media screen and (min-width:501px) and (max-width:900px){.pr-charts .pr-chart-ctrl{width:50%; margin-bottom:50px;} .pr-charts .pr-chart-ctrl:nth-child(n+3){margin-bottom:0;}}
.pr-charts .pr-chart-ctrl .pr-chart{display:block; position:relative; width:100%; margin:0 0 20px 0; text-align:center;}
.pr-charts .pr-chart-ctrl .pr-chart canvas{display:block; margin:0 auto; padding:0; vertical-align:top;}
.pr-charts .pr-chart-ctrl .pr-chart i{position:absolute; top:0; left:0; width:100%; height:200px; line-height:200px; font-size:18px; font-style:normal;}/* Must have same height & line height as set in the javascript size element to vertical align centre */
.pr-charts .pr-chart-ctrl p{margin:0; padding:0; text-transform:uppercase;}

/* 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:80px 0; border-bottom:1px solid;}

#footer .title{margin:0 0 30px 0; padding:0 0 8px 0; border-bottom:1px solid; font-size:18px; text-transform:capitalize;}

#footer .linklist li{margin-bottom:10px;}
#footer .linklist li:last-child{margin-bottom:0;}

#footer .smallfont{font-size:.8em; margin:0;}


/* Copyright
--------------------------------------------------------------------------------------------------------------- */
#copyright{padding:30px 0;}
#copyright *{margin:0; padding:0;}


/* Transition Fade
--------------------------------------------------------------------------------------------------------------- */
.faico a, #mainav *, #backtotop, .btn, .icon, .viewit, .bg-grey{transition:all .3s ease-in-out;}


/* 追加スタイル
------------------------------------------------------------------------------------------------------------ */
.box01{
	overflow: hidden;
}

.title01 {
position: relative;
padding: 5px 5px 5px 42px;
background: #77c3df;
font-size: 20px;
color: white;
margin-left: -33px;
margin-bottom: 5%;
line-height: 1.3;
z-index:-1;
}
.title01:before {
position: absolute;
content: '';
left: -2px;
top: -2px;
border: none;
border-left: solid 40px white;
border-bottom: solid 79px transparent;
z-index:-2
}


.title02 {
position: relative;
padding: 5px 5px 5px 42px;
background: #5C00C4;
font-size: 20px;
color: white;
margin-left: -33px;
margin-bottom: 3%;
line-height: 1.3;
z-index:-1;
}
.title02:before {
position: absolute;
content: '';
left: -2px;
top: -2px;
border: none;
border-left: solid 40px white;
border-bottom: solid 79px transparent;
z-index:-2
}


.title03 {
position: relative;
padding: 5px 5px 5px 42px;
background: #16AEF8;
font-size: 20px;
color: white;
margin-left: -33px;
margin-bottom: 3%;
line-height: 1.3;
z-index:-1;
}
.title03:before {
position: absolute;
content: '';
left: -2px;
top: -2px;
border: none;
border-left: solid 40px white;
border-bottom: solid 79px transparent;
z-index:-2
}



.text01 {position: relative; padding: 0.6em; background: #e0edff; margin-bottom: 3%;}
.text01:after {
position: absolute;
content: '';
top: 100%;
left: 30px;
border: 15px solid transparent;
border-top: 15px solid #e0edff;
width: 0;
height: 0;
}


.text02{
position: relative;
padding: 2em 3em;
border-top: solid 2px #F90;
border-bottom: solid 2px #F90;
}
.text02:before, .text02:after{
content: '';
position: absolute;
top: -7px;
width: 2px;
  height: -webkit-calc(100% + 14px);
height: calc(100% + 14px);
background-color: #F90;
}
.text02:before {left: 7px;}
.text02:after {right: 7px;}

.sub{
margin:0;
padding-bottom: 20px;
padding-top: 10px;
font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", "YuGothic", "メイリオ", Meiryo, sans-serif;
font-size: 18px;
}


.pad30{
	padding-bottom: 30px;
}
.pad50{
	padding-bottom: 50px;
}

/* お問合せ */
	
.form01{
	width: 100%;
    content: "";
	display: block;
	overflow: hidden;
	margin-bottom: 4%;
	text-align: left;
}

.form01left{
	float: left;
	width: 35%;
	padding: 1%;
	background-color: #EAEAEA;
	font-size: 1.16em;
}

.form01right{
	float: right;
	width: 60%;
	font-size: 1.3em;
}


.ga01{
	width: 100%;
	padding-bottom: 2%;
	overflow: hidden;
}
.ga01in{
	float: left;
	width: 24%;
	padding-right: 1%;
}
.sa01in{
	float: left;
	width: 30%;
	padding-right: 2%;
}

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


/* 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{}
#mainav ul{text-transform:uppercase;}
#mainav ul ul{z-index:9999; position:absolute; width:160px; text-transform:none;}
#mainav ul ul ul{left:160px; top:0;}
#mainav li{display:inline-block; float:left; position:relative; margin:0; padding:0;}
#mainav li:last-child{margin-right:0;}
#mainav li li{width:100%; height:auto; margin:0;}
#mainav li a{display:block; height:80px; padding:31px 15px; line-height:normal;}
#mainav li li a{height:auto; 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:35px; 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:15px 0;}
#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:999; 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;}


/* 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:5px 8px;}
td{border-width:0 1px;}


/* Gallery
--------------------------------------------------------------------------------------------------------------- */
#gallery{display:block; width:100%; margin-bottom:50px;}
#gallery figure figcaption{display:block; width:100%; clear:both;}
#gallery li{margin-bottom:30px;}


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


/* Colours
--------------------------------------------------------------------------------------------------------------- */
body{color:#4e4e4e; background-color:#FFFFFF;}
a{color:#F85656;}
hr, .borderedbox{border-color:#D7D7D7;}
label span{color:#FF0000; background-color:inherit;}
.overlay.dark{color:inherit; background-color:rgba(0,0,0,.3);}
.overlay.light{color:inherit; background-color:rgba(255,255,255,.8);}
.btn{color:#FFFFFF; background-color:#F85656; border-color:#F85656;}
.bg-grey:hover{color:inherit; background-color:#F3F3F3;}


/* Rows */
.row0{color:#000000;}
.row1{color:#FFFFFF;}
.row2{color:#4e4e4e; border-color:#D7D7D7;}
.row3, .row3 a{}
.row4{color:#4e4e4e;}
.row5, .row5 a{color:#4e4e4e;}


/* Header
--------------------------------------------------------------------------------------------------------------- */
#header{background:rgba(255,255,255,.75);}
#header #logo{background:rgba(255,255,255,0);}
#header #logo a{color:inherit;}

#logo {
margin-top:8px;
}

/* Page Intro */
#pageintro .bl-trans{color: #F60;}
#pageintro .btn{}
#pageintro .btn:hover{background-color:#F85656; border-color:#F85656;}


/* Content Area */
.services article{border-color:#D7D7D7;}
.services article .icon{color:inherit;}
.services article:hover .icon{color:#F85656;}
.services article .viewit{background-color:#FFFFFF; border-color:#D7D7D7 #FFFFFF #FFFFFF #D7D7D7;}


/* Footer */
#footer, #footer .title{border-color:rgba(0,0,0,.15);}


/* Navigation */
#mainav li a{color:inherit;}
#mainav .active a, #mainav a:hover, #mainav li:hover > a{color:#FFFFFF; background-color:#F85656;}
#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:#F85656;}
#mainav form select{color:inherit; background-color:#FFFFFF; border-color:#D7D7D7;}

#breadcrumb a{color:inherit; background-color:inherit;}
#breadcrumb li:last-child a{color:#F85656;}

.container .sidebar nav a{color:inherit; border-color:#D7D7D7;}
.container .sidebar nav a:hover{color:#F85656;}

.pagination a, .pagination strong{border-color:#D7D7D7;}
.pagination .current *{color:#FFFFFF; background-color:#F85656;}

#backtotop{color:#FFFFFF; background-color:#F85656;}


/* Tables + Comments */
table, th, td, #comments .avatar, #comments input, #comments textarea{border-color:#D7D7D7;}
th{color:#FFFFFF; background-color:#373737;}
tr, #comments li, #comments input[type="submit"], #comments input[type="reset"]{color:inherit; background-color:#FBFBFB;}
tr:nth-child(even), #comments li:nth-child(even){color:inherit; background-color:#F7F7F7;}
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, #topbar, #pageintro, #breadcrumb, .container, #footer, #copyright{max-width:978px;}
}


/* Smartphone + Tablet
--------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:900px) {
	#header, #topbar, #pageintro, #breadcrumb, .container, #footer, #copyright{max-width:90%;}

	#header, #header #logo, #header #mainav{height:auto;}

	#header{display:block; text-align:center;}
	#header #logo{display:inline-block;}

	#pageintro{}

	#mainav{}
	#mainav ul{display:none;}
	#mainav form{display:block; margin:25px 15px 0 0;}

	#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;}
}

@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{background:transparent;}

	#mainav form{margin:15px 0 0 0;}

	.services article:last-child{margin-bottom:0;}

	#footer{padding-bottom:30px;}
}


/* 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;}
}