@charset "utf-8";
/* HEADER*/
#fade {
	width: 100%;
	height: 100%;
	min-height: 100%;
	background: #FFF;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 9999 !important;              /* #loaderより少ない値を入れて下さい */
}
#progressBarWrap {
	width: 200px !important;
	height: 2px;
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 99999;
	transform: translateY(-50%) translateX(-50%);
 -webkit- transform: translateY(-50%) translateX(-50%);
	background: #EEE;
}
#progressBar {
	width: 0;
	height: 2px;
	position: fixed;
	background: #EC1C24;
	z-index: 99999;
}
#loader {
	width: 23px;
	height: 23px;
	position: fixed;
	_position: absolute;     /* IE6対策 */
	top: 50%;
	left: 50%;
	margin-top: -10px;       /* heightの半分のマイナス値 */
	margin-left: -10px;      /* widthの半分のマイナス値 */
	z-index: 99999;             /* #fadeより多い値を入れて下さい */
}
#progressTxt {
	display: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
 -webkit- transform: translateY(-50%) translateX(-50%);
	z-index: 99999999;             /* #fadeより多い値を入れて下さい */
	font-family: 'Oswald', sans-serif !important;
	font-size: 100px;
	color: #FFF;
	letter-spacing: 3px;
}
body {
	margin: 0;
}
img {
	max-width: 100%;
}
p {
	color: #58595B;
}
#header:before, #header:after {
	content: "";
	display: block;
	clear: both;
	overflow: hidden;
}
#header {
	max-width: 1200px;
	margin: 0 auto;
}
header {
	position: fixed;
	width: 100%;
	top: 0;
	background: #FFF;
	z-index: 999;
}
.logo {
	float: left;
	width: 30%;
	padding: 30px 30px 20px 0;
	box-sizing: border-box;
	position: relative;
	z-index: 9999;
	font-size: 14px;
	font-weight: bold;
}
.logo img {
	max-width: 38%;
	margin: 0 10px 0 0;
}
.logo span {
	display: block;
	margin: 10px 0 0 0;
	width:320px;
}
#globalnavi {
	float: right;
	width: 70%;
	box-sizing: border-box;
	text-align: right;
}

@media only screen and (max-width:980px) {
	input[type=text], textarea, input[type=button] , input[type=submit]{
	-webkit-appearance: none;
}
.logo {
	float: none;
	width: auto;
	padding: 15px;
	font-size: 11px;
}
.logo span {
	margin: 0;
}
.logo img {
	width: 30%;
	margin: 0 10px 0 0;
}
#globalnavi {
	float: none;
	width: auto;
	margin: 20px 0 0 0;
}
}
.nav {
	clear: both;
	overflow: hidden;
}
ul.upper-nav {
	float: right;
	margin: 0;
}
ul.upper-nav li {
	float: left;
}
ul.upper-nav li img {
	max-width: 55%;
}
ul.upper-nav li a {
	font-weight: 500;
	font-size: 13px;
	margin: 10px 0;
	display: block;
}
ul.under-nav {
	float: right;
	margin: 0;
}
ul.under-nav li {
	float: left;
	text-align: center;
}
ul.under-nav li a {
	font-weight: 500;
	font-size: 16px;
	padding: 10px 15px;
	display: block;
	font-weight: bold;
	letter-spacing: 2px;
}
ul.under-nav li a:hover {
	opacity: 0.7;
}
ul.under-nav li:last-child a {
	background: #EC1B23;
	color: #FFF;
	margin: 0 0 0 15px;
	border-radius: 30px;
	padding: 10px 30px;
	box-sizing:border-box;
}
#commonnavi {
	margin: 150px 0 0 0;
	background: #F7F7F7;
	display: block;
	position: relative;
	padding: 20px 0 0 0;
}
p.touj{
	position:relative;
	top:-85px;
	max-width:1200px;
	margin:0 auto 0 auto;
	text-align:right;
	font-size:13px;
}

	@media only screen and (max-width:1180px) {
		p.touj{
			top:-105px;
		}
	}
p.touj a:before{
	content:">";
	display:inline-block;
	margin:0 10px 0 0;
	transform:scale(0.7,1)
}
p.touj a{
	transition:all 0.3s ease-in-out;
	padding-right:10px;
}
p.touj a:hover{
color:#EB1B23;
}
@media only screen and (max-width:736px) {
	p.touj{
		position:static;
		text-align:center;
		margin:0 auto;
font-size:11px;
}
p.touj a{
	display:block;
	background:#FFF;
	padding:10px 0;
	font-weight:bold;
}
	
}
#commonnavi:before, #commonnavi:after {
	content: "";
	display: block;
	overflow: hidden;
	clear: both;
}
#commonnavi:before {
	content: "サービス一覧";
	font-size: 11px;
	text-align: center;
	background: url(../img/common/title-alluj.png) no-repeat;
	background-size: 160px;
	width: 160px;
	height: 23px;
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
	padding: 5px 0 0 0;
}
#commonnavi ul {
	margin: 0px auto;
	max-width: 1200px;
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
#commonnavi ul li {
	float: left;
	width: 15%;
	margin-right: 2%;
		display: -webkit-box;
	display: flex;
	text-align: center;
}
#commonnavi ul li:last-child {
	margin-right: 0;
}



ul.three-btns li:nth-child(3n) {
	margin-right: 0;
}
#commonnavi ul li a {
	background: #FFF;
	padding: 10px;
	font-weight: bold;
	position: relative;
	display: block;
	font-size: 13px;
	text-align: center;
	width: 100%;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
	transition: all 0.3s ease-in-out;
}

#commonnavi ul li a:hover {
	opacity: 0.7;
}
#commonnavi ul li:not(:nth-child(4)) a:after {
 content: "";
 position: absolute;
 right: 0;
 bottom: 0;
 width: 0;
 height: 0;
 border-style: solid;
 border-width: 0 0 7px 7px;
}
#commonnavi ul li:nth-child(1) a:after {
	border-color: transparent transparent #E80000 transparent;
}
#commonnavi ul li:nth-child(2) a:after {
	border-color: transparent transparent #4878BB transparent;
}
#commonnavi ul li:nth-child(3) a:after {
	border-color: transparent transparent #0094D9 transparent;
}
#commonnavi ul li:nth-child(4) a:after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	background: url(../img/common/rental-parts.png) no-repeat right 100%;
	background-size: 7px;
	width: 7px;
	height: 7px;
}
#commonnavi ul li:nth-child(5) a:after {
	border-color: transparent transparent #00B38C transparent;
}
#commonnavi ul li:nth-child(6) a:after {
	border-color: transparent transparent #58595B transparent;
}
@media only screen and (max-width:736px) {
#commonnavi {
	padding: 10px;
	margin: 100px 0 0 0;
}
#commonnavi ul li {
	float: left;
	width: 32%;
	margin-right: 2%;
	margin-bottom:2%;
}
#commonnavi ul li:nth-child(3n){
	margin-right:0;
}
/*
#commonnavi ul {
	display: flex;
	overflow-x: scroll;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
}
#commonnavi ul li {
	white-space: nowrap;
	flex: 0 0 30%;
	float: none;
	width: auto;
	margin-right: 10px;
}
*/
#commonnavi ul li a {
	font-size: 11px;
}
}
 @media only screen and (max-width:980px) {
ul.upper-nav, ul.under-nav {
	float: none;
}
ul.upper-nav li a:before {
	font-size: 10px;
}
.nav:first-child {
	border-bottom: 2px solid #EEE;
}
ul.under-nav li {
	float: none;
	text-align: left;
}
ul.upper-nav li {
	text-align: left;
}

ul.upper-nav li a {
	font-size: 13px;
	display: block;
	box-sizing: border-box;
	margin: 0;
	padding:15px;
}
ul.under-nav li a {
	font-size: 15px;
	border-bottom: 1px solid #EEE;
	padding: 12px 15px;
	position: relative;
}
ul.under-nav li a:after {
	content: ">";
	position: absolute;
	top: 10px;
	right: 20px;
	display: block;
	transform: scale(0.8, 1)
}
ul.under-nav li:last-child a {
	background: #EC1B23;
	color: #FFF;
	margin: 15px;
	border-radius: 30px;
	padding: 10px 30px;
	box-sizing:border-box;
}
}
a#btn span {
	background: #FFF;
	width: 18px;
	height: 2px;
	display: block;
	position: relative;
	top: 11px;
	left: 4px;
}
a#btn span:before {
	content: "";
	display: block;
	position: absolute;
	top: -7px;
	background: #FFF;
	width: 18px;
	height: 2px;
	transition: all 0.3s ease-in-out;
}
a#btn span:after {
	content: "";
	display: block;
	position: absolute;
	top: 7px;
	background: #FFF;
	width: 18px;
	height: 2px;
	transition: all 0.3s ease-in-out;
}
a#btn span.change {
	height: 0;
}
a#btn span.change:before {
	transform: rotate(-45deg);
	top: 0;
}
a#btn span.change:after {
	transform: rotate(45deg);
	top: 0;
}
a#btn {
	background: #EC1B23;
	display: none;
	margin: 0;
	position: absolute;
	right: 20px;
	top: 15px;
	padding: 0;
	cursor: pointer;
	width: 36px;
	height: 36px;
	padding: 5px;
	box-sizing: border-box;
	border-radius: 50%;
	z-index: 9999;
}
@media only screen and (max-width:980px) {
p.spnav {
	display: block;
}
.logo img {
	max-width: 150px;
}
.logo span {
	font-size: 10px;
	top: -6px;
}
a#btn img {
	max-width: 100%;
}
a#btn, p#close {
	display: block;
}
}
@media only screen and (max-width:769px) {
input[type=text], textarea, input[type=button] {
	-webkit-appearance: none;
}
}
.scroll {
	position: relative;
	left: 50%;
	bottom: 80px;
	transform: translateX(-50%);
 -webkit- transform: translateX(-50%);
	animation: fade 2s ease-in-out forwards;
	opacity: 0;
	z-index: 99;
	text-align: center;
}
@media only screen and (max-width:769px) {
.scroll {
	position: relative;
	text-align: center;
	bottom: auto;
	top: -20px;
}
}
@keyframes fade {
 0% {
 opacity:0;
}
 100% {
 opacity:1;
}
}
.scroll-line {
	background: #FFF;
	position: relative;
	left: 50%;
	z-index: 999;
	width: 90px;
	height: 90px;
	margin: 10px 0 0 -45px;
}
.scroll-line:before {
	position: absolute;
	content: "";
	width: 1px;
	height: 100px;
	background: #51ABB9;
	display: block;
	bottom: 20px;
	left: 50%;
	animation: sc 2s ease-in-out infinite;
}
@keyframes sc {
 0% {
 height:0;
}
 50% {
 height:60px;
}
 100% {
 height:0;
}
}
.scroll-line:after {
	position: absolute;
	content: "";
	width: 1px;
	height: 20px;
	background: #51ABB9;
	display: block;
	top: 60%;
	left: 57%;
	transform: rotate(45deg);
}
.scroll p {
	background: none;
	color: #5DC2D6;
	font-family: 'Oswald', sans-serif !important;
	font-size: 20px;
}
@media only screen and (max-width:769px) {
.scroll-line {
	width: 30px;
	height: 30px;
	bottom: -10px;
	margin: 0 0 0 -15px;
}
.scroll-line:before {
	height: 30px;
	bottom: 10px;
}
.scroll-line:after {
	top: 32%;
	left: 60%;
	height: 10px;
}
@keyframes sc {
 0% {
 height:0;
}
 50% {
 height:30px;
}
 100% {
 height:0;
}
}
.scroll p {
	font-size: 11px;
}
}
/*
.box h2 span.effect1, .box p span.effect1 {
	position: relative;
	display: block;
}
.box h2 span.effect1:before, .box p span.effect1:before {
	content: "";
	position: absolute;
	background: #FFF;
	width: 100%;
	height: 100%;
	right: 0;
}
.box h2 span.effect1.appear:before, .box p span.effect1.appear:before {
	animation: change 1s ease-in-out forwards;
}
@keyframes change {
 0% {
 width:100%;
}
 100% {
 width:0;
}
}
.box p span.effect2, section#wallart .aboutpic.effect2 {
	position: relative;
	display: block;
}
.box p span.effect2:before, section#wallart .aboutpic.effect2:before {
	content: "";
	position: absolute;
	background: #FFF;
	width: 100%;
	height: 100%;
	right: 0;
	z-index: 2;
}
.box p span.effect2:after, section#wallart .aboutpic.effect2:after {
	content: "";
	position: absolute;
	background: #F7F7F7;
	width: 100%;
	height: 100%;
	right: 0;
	top: 0;
	z-index: 1;
}
.box p span.effect2.appear2:before, section#wallart .aboutpic.effect2.appear2:before {
	animation: change2 1s ease-in-out forwards;
}
.box p span.effect2.appear2:after, section#wallart .aboutpic.effect2.appear2:after {
	animation: change2 1s ease-in-out 1s forwards;
}
 @keyframes change2 {
 0% {
 width:100%;
}
 100% {
 width:0;
}
}
*/
.box {
	opacity: 0;
}
.slideUp {
	opacity: 1;
	animation: slideUp 0.5s ease-in-out forwards;
}
@keyframes slideUp {
 from {
 opacity: 0;
}
to {
	opacity: 1;
}
}
p.more {
	opacity: 0;
	animation: change3 1s ease-in-out 1s forwards;
	position: relative;
	left: -20px;
	margin: 50px 0 0 0;
}
p.more a {
	border: 2px solid #52ACBA;
	color: #52ACBA;
	padding: 10px 20px;
	font-weight: bold;
}
p.more a:after {
	content: ">";
	display: inline-block;
	transform: scale(0.9, 1);
	font-weight: bold;
	margin: 0 0 0 10px;
}
p.more a:hover {
	background: #52ACBA;
	color: #FFF;
}
@keyframes change3 {
 0% {
 opacity:0;
 left:-20px;
}
 100% {
 opacity:1;
 left:0;
}
}
@media only screen and (max-width:769px) {
p.more {
	margin: 25px 0 0 0;
}
p.more a {
	font-size: 13px;
}
}
/*BIG version*/

p.more-big {
	opacity: 0;
	animation: change4 1s ease-in-out 1s forwards;
	position: relative;
	left: -20px;
	margin: 100px 0 0 0;
	text-align: center;
}
p.more-big a {
	border: 2px solid #52ACBA;
	color: #52ACBA;
	padding: 20px 70px;
	font-weight: bold;
	font-size: 20px;
}
p.more-big a:hover {
	background: #52ACBA;
	color: #FFF;
}
@keyframes change4 {
 0% {
 opacity:0;
 left:-20px;
}
 100% {
 opacity:1;
 left:0;
}
}
@media only screen and (max-width:769px) {
p.more-big {
	margin: 50px 0 0 0;
}
p.more-big a {
	font-size: 14px;
}
}
/*==========================================FOOTER======================================================*/
aside {
	text-align: center;
}
aside h3 {
	max-width: 120px;
	margin: 0 auto;
}
ul.logos {
	overflow: hidden;
	clear: both;
	max-width: 1200px;
	margin: 25px auto 50px auto;
}
ul.logos li {
	float: left;
	width: 15%;
	margin-right: 2%;
}
ul.logos li div {
	height: 40px;
	line-height: 40px;
	vertical-align: middle;
}
ul.logos li p {
	border-top: 2px solid #EEE;
	padding: 5px 0 0 0;
	font-size: 12px;
	font-weight: bold;
}
ul.logos li img {
	height: 32px;
}
ul.logos li:nth-child(1) img, ul.logos li:nth-child(6) img {
	height: 22px;
}
ul.logos li:nth-child(2) img {
	height: 24px;
}
ul.logos li:last-child {
	margin: 0;
}
 @media only screen and (max-width:769px) {
aside h3 {
	margin-bottom: 25px;
}
ul.logos {
	margin: 0 15px 25px 15px;
}
ul.logos li {
	float: left;
	width: 49%;
	margin: 0 2% 2% 0;
	border: 2px solid #EEE;
	box-sizing: border-box;
	padding: 5px;
}
ul.logos li:nth-child(2n) {
	margin-right: 0;
}
ul.logos li:nth-child(1) img, ul.logos li:nth-child(6) img {
	height: auto;
	width: 56%;
}
ul.logos li:nth-child(2) img {
	height: auto;
	width: 60%;
}
ul.logos li p {
	border-top: none;
	padding: 0;
	font-size: 11px;
}
ul.logos li img {
	height: auto;
	width: 100%;
}
}
footer {
	background: #231f20;
}
#footer {
	max-width: 1200px;
	margin: 0 auto;
	overflow: hidden;
	clear: both;
	padding: 50px 0;
}
#footer ul {
	display: flex;
	flex-wrap: wrap;
}
#footer ul li {
	width: 25%;
	float: left;
	box-sizing: border-box;
	border-right: 1px solid #000;
	border-left: 1px solid #414042;
	padding: 0 25px;
}
#footer ul li:first-child {
	border-left: none;
}
#footer ul li:last-child {
	border-right: none;
}
#footer ul li h4 img {
	height: 28px;
	width: auto !important;
	margin-right: 20px;
}
#footer ul li:nth-child(1) h4 img {
	height: 18px;
}
#footer ul li:nth-child(2) h4 img {
	height: 22px;
}
#footer ul li h5 {
	color: #FFF;
	font-size: 15px;
	margin-bottom: 5px;
}
#footer ul li p {
	font-size: 12px;
	color: #FFF;
}
#footer ul li div.place {
	margin-top: 10px;
	margin-bottom:10px;
}
#footer ul li:nth-child(4) h4:nth-child(4) {
	margin: 40px 0 0 0;
}
#copyright {
	background: #58595b;
	text-align: center;
	overflow:hidden;
	clear:both;
}
.copyright-in{
	max-width:1200px;
	margin:0 auto;
}
#copyright ul{
	float:left;
	margin:5px 0 0 0;
}
#copyright ul li a{
	color:#FFF;
	font-size:12px;
}
#copyright ul li a:before{
	content:">";
	display:inline-block;
	margin-right:10px;
	transform:scale(0.7,1);
}
#copyright p {
	color: #FFF !important;
	font-size: 11px;
	letter-spacing: 0;
	padding: 10px 0;
	float:right;
}
@media only screen and (max-width:769px) {
	.address{
		display:none;
		margin:10px 0;
	}
	#footer ul li div.place {
	margin-top: auto;
	margin-bottom:auto;
}
#footer ul li div.place {
	border-bottom:1px solid #333;
	padding:7px 0;
}
#footer ul li h4 {
	margin-top:15px;
}
#footer ul li:first-child h4 {
	margin-top:0;
}
#footer ul li h5 {
	font-size:13px;
}
#footer ul li h5:after{
	content:">";
	display:inline-block;
	float:right;
	transform:rotate(90deg);
	transition:all 0.3s ease-in-out;
}
#footer ul li h5.on:after{
	content:">";
	transform:rotate(-90deg);
	margin-right:3px;
}
#footer ul li {
	width: 100%;
	float: none;
	box-sizing: border-box;
	border-right: none !important;
	border-left: none !important;
	padding: 0 15px;
}	
#footer ul li:nth-child(4) h4:nth-child(4) {
	margin: 20px 0 0 0;
}
#copyright ul{
	float:none;
}
#copyright p {	float:none;
	font-size:10px;
}
}
/*==========================================TITLE======================================================*/
h2.title {
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	margin: 0 0 25px 0;
}
h2.title:before {
	content: "";
	background: #ec1b23;
	width: 30px;
	height: 3px;
	display: block;
	margin: 0 auto 15px auto;
}
 @media only screen and (max-width:736px) {
h2.title {
	font-size: 16px;
}
}
