body, html, main {
	/* important */
	margin: 0;
	padding: 0;
	width: 100%;
	-webkit-box-sizing: border-box;
	animation: fadeIn 2s ease 0s 1 normal;
	webkit-animation: fadeIn 2s ease 0s 1 normal;
	font-family: 'Kosugi Maru', sans-serif;
}

@keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}


.sp {
	display: none;
}
.pc {
	display: block;
}


/*--ナビゲーション css-----------------*/
header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 5;
	width: 100%;
	height: 140px;
	background: rgba(0, 0, 0,0);
	transition: .3s;
	font-size: 2vw;
}
header nav {
	color: #000;
	transition: .7s;
}
header nav ul {
	display: flex;
	width: 90%;
	margin: 3% auto 0;
	padding: 0;
}
header nav ul li:first-child {
	margin-right: auto;
	color: rgb(225,225,225,.1);
}
nav ul li {
	list-style: none;
	padding: 0 2%;
	text-align: center;
}
nav ul li a {
	text-decoration: none;
	color: #000;
	font-family: 'Dosis', sans-serif;
}
nav ul li a .bcup {
	color: rgb(225,225,225,.1);
}
nav p {
	margin: -10px;
	text-align: center;
}
.nav_small {
	font-size: 0.9vw;
	text-align: center;
	margin: 0;
}



.is-animation {
	height: 75px;
	background: rgba(255, 255, 255,.9);
}
.is-animation nav {
	color: #000;
	font-size: 1.3vw;
}
.is-animation nav ul {
	margin: 1% auto;
}
.is-animation nav li {
}
.is-animation nav ul li:first-child {
	font-size: 3vw;
}




/*--コンテンツ css-----------------------*/


.fadein {
	opacity : 0;
	transform : translate(0, 50px);
	transition:all 0.5s;
}
.fadein.scrollin {
	opacity : 1;
	transform : translate(0, 0);
}


.small {
	font-size:1vw;
}
.contents h1 {
	position: absolute;
	right: 10%;
	top: 24%;
	bottom: 0;
	margin: auto;
	z-index: 1;
	font-size: 8.5vw;
	font-family: 'Abril Fatface', cursive;

	text-shadow:
	2px 2px 2px #9d9da4 /*背景色に合わせる*/ ,
	0 0 #000;
}


.contents h2 {
	color: #0e61af;
	font-family: 'Abel', sans-serif;
}

.contents h3 {
	color: #4c4c4c;
}
.contents p {
	color: #606060;
	font-size: 0.96vw;
}






/*//スクロール/////////////////*/

a.scroll  {
	position: absolute;
	bottom: 60px;
	left: 50%;
	z-index: 2;
	display: inline-block;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	text-decoration: none;
	color: #000;
	font-size: 0.9vw;
}
a.scroll {
	padding-top: 70px;
}
a.scroll span {
	position: absolute;
	top: -25px;
	left: 50%;
	width: 44px;
	height: 44px;
	margin-left: -23px;
	border-left: 3px solid #000;
	border-bottom: 3px solid #000;
	-webkit-transform: rotateZ(-45deg);
	transform: rotateZ(-45deg);
	-webkit-animation: sdb 1.5s infinite;
	animation: sdb 1.5s infinite;
	box-sizing: border-box;
}
@-webkit-keyframes sdb {
	0% {
		-webkit-transform: rotateY(0) rotateZ(-45deg) translate(0, 0);
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		-webkit-transform: rotateY(720deg) rotateZ(-45deg) translate(-20px, 20px);
		opacity: 0;
	}
}
@keyframes sdb {
	0% {
		transform: rotateY(0) rotateZ(-45deg) translate(0, 0);
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		transform: rotateY(720deg) rotateZ(-45deg) translate(-20px, 20px);
		opacity: 0;
	}
}





/*//サービス css//////////////*/
.service {
	margin: 0 auto;
	width: 80%;
	padding: 8% 0 0 0;
}
.service h2 {
	border-bottom: solid 3px #828a96;
	font-size: 3vw;
}
.service h3 {
	text-indent: 0.5em;
}

.serviceBox {
	width: 30%;
	border: solid 1px #d6d6d6;
	margin: 1.5%;
	box-shadow: 0px 2px 12px rgba(0,0,0,0.2);
}
.serviceBox p {
	background: rgba(255,255,255,0.6);
	padding: 3%;
	line-height: 180%;
}

.serviceOne {
	display: flex;
	justify-content: center;
}


.listing {
	background-color: #a8cbe5;
	background-image: url(../img/bgListing.png);
	background-repeat: no-repeat, no-repeat;
	background-position: 50% 60%;
}
.social {
	background-color: #a4c5d8;
	background-image: url(../img/bgSocial.png);
	background-repeat: no-repeat, no-repeat;
	background-position: 50% 60%;
}
.investment {
	background-color: #afc5ce;
	background-image: url(../img/bgInvestment.png);
	background-repeat: no-repeat, no-repeat;
	background-position: 50% 60%;
}
.affiliate {
	background-color: #b8c9cc;
	background-image: url(../img/bgAffiliate.png);
	background-repeat: no-repeat, no-repeat;
	background-position: 50% 60%;
}
.seo {
	background-color: #b6ccc5;
	background-image: url(../img/bgSeo.png);
	background-repeat: no-repeat, no-repeat;
	background-position: 50% 60%;
}
.design {
	background-color: #b4ccb7;
	background-image: url(../img/bgDesign.png);
	background-repeat: no-repeat, no-repeat;
	background-position: 50% 60%;
}





/*//その他 css///////////*/
.other {
	width: 75%;
	margin: 3% auto 10%;
}
.other img {
	position: absolute;
	z-index: 1;
	opacity: .9;
}
.otherBox {
	position: relative;
	border: solid 1px #000;
	border-radius: 10px;
	top: 10px;
	left: 10px;
	padding: 2% 0;
	box-shadow: 0px 2px 12px rgba(0,0,0,0.2);
}
.otherBox ul {
	margin-left: 18%;
	line-height: 180%;
}
.otherBox ul li {
	list-style: none;
	color: #606060;
	font-size: 0.96vw;
}





/*//会社の特徴/////////////*/
.characterstic {
	background-image: url(../img/bgFB.jpg);
	background-repeat: no-repeat, no-repeat;
	background-size: cover;
}
.layer {
	background: rgba(232, 232, 232, 0.8);
	padding: 6% 0 2%;
}

.characterstic h2 {
	width: 80%;
	margin: 0 auto;
	border-bottom: solid 3px #828a96;
	font-size: 3vw;
}
.charactersticBox {
	display: flex;
	width: 70%;
	margin: 4% auto;
}
.charactersticBox section {
	margin: 0 0 0 3%;
	line-height: 160%;
	z-index: 1;
}
.charactersticBox section h3 {
	margin:1% 0 1% 0;
}
.charactersticBox section p {
	font-size: 1vw;
	margin: 0;
}


.charactersticBox img {
	filter: drop-shadow(10px 10px 10px rgba(0,0,0,0.6));
}

.tate {
	-webkit-animation-name:tate;
	-webkit-animation-property:-webkit-transform;
	-webkit-animation-duration:1500ms;
	-webkit-animation-timing-function:ease-out;
	-webkit-animation-iteration-count:infinite;
	-webkit-transform-origin:center bottom;
}
@-webkit-keyframes tate {
	0% {
	}
	25% {
		-webkit-transform:scale(.8,1.1);
	}
	100% {
		-webkit-transform:scaleX(1.2,.2);
	}
}







/*//会社概要/////////////////////*/
.company {
	width: 80%;
	margin: 0 auto;
	padding: 5% 0 5% 0;
}
.company h2 {
	border-bottom: solid 3px #828a96;
	font-size: 3vw;
}
.company table {
	border: solid 1px #e8e8e8;
	border-collapse: collapse;
	margin: 4% auto 2%;
	width: 80%;
	color: #606060;
	font-size: 0.96vw;
	box-shadow: 0px 2px 12px rgba(0,0,0,0.2);
}
.company th {
	background: #aecfe8;
	border: solid 1px #e8e8e8;
	border-right: dashed 1px #e8e8e8;
	padding: 3%;
	line-height: 160%;
}
.company td {
	background: #fff;
	border: solid 1px #e8e8e8;
	padding: 3%;
	line-height: 160%;
}
.map {
	width: 80%;
	margin: 5% auto 0;
}
.map iframe {
	box-shadow: 0px 2px 12px rgba(0,0,0,0.2);
}




/*メールフォーム*/
#formWrap {
	width:70%;
	margin:0 auto;
	color:#555;
	line-height:120%;
	font-size:90%;
	padding: 5% 0 5%;
}
#formWrap h3 {
	font-size: 3vw;
	letter-spacing: 1px;
	color: #0e61af;
	margin: 7% 0 7% 0;
	font-family: 'Abel', sans-serif;
}
#formWrap p {
	color: #606060;
	font-size: 1vw;
}

table.formTable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}
table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:15px;
}
table.formTable th{
	width:30%;
	font-weight:normal;
	background:#efefef;
	text-align:left;
}

.formRed {
	font-size: 1vw;
}

/*お問い合わせ*/
.contact {
	width: 80%;
	margin: 0 auto;
	padding: 5% 0 5% 0;
}
.contact h2 {
	border-bottom: solid 3px #828a96;
	font-size: 3vw;
	font-family: 'Abel', sans-serif;
}
.contactButton {
	text-align: center;
	margin: 5% 0 10%;
}

.contactButton a {
	text-decoration: none;
	border: solid 1px #0e61af;
	border-radius: 20px;
	padding: 3% 20%;
	background:  #ccc;
	color:#0e61af;
}
.contactButton a:hover {
	border: solid 2px #0e61af;
	background: #0e61af;
	color: #fff;
	transition: .3s;
}




/*フッター///////////////*/
footer {
	background-color: #5498d8;
}
footer p {
	margin: 0;
	padding: 5% 0;
	text-align: center;
	color: #fff;
}








@media screen and (max-width:480px) {
	* {-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box
	}

	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	.bcup {
		height: 100vh;
		width: 100%;
	}



	header {
		height: 140px;
		font-size: 4.3vw;
	}
	header nav ul {
		width: 100%;
	}
	.nav_small {
		font-size: 2.6vw;
		text-align: center;
		margin: 0;
	}
	nav p {
		margin: -1px 0 0 0;
		text-align: center;
	}
	.is-animation {
		height: 47px;
		background: rgba(255, 255, 255,.9);
	}
	.is-animation nav {
		font-size: 4vw;
	}
	.is-animation nav ul li:first-child {
		font-size: 6.5vw;
	}


	a.scroll {
		bottom: 125px;
		left: 45%;
		font-size: 4.9vw;
	}



	.contents h1 {
		position: absolute;
		right: 12%;
		top: 7%;
		bottom: 0;
		margin: auto;
		z-index: 1;
		font-size: 10.5vw;
		font-family: 'Abril Fatface', cursive;
		text-shadow: 2px 2px 2px #9d9da4 /*背景色に合わせる*/ , 0 0 #000;
	}

	.small {
		font-size: 3vw;
	}
	.contents h2 {
		font-size: 6.5vw;
	}
	.contents h3 {
		font-size: 3.4vw;
	}
	.contents p {
		font-size: 3.2vw;
	}

	.serviceOne {
		flex-direction: column;
	}
	.serviceBox {
		width: 100%;
		margin-bottom: 5%;
	}
	.other img {
		width: 60%;
	}
	.otherBox ul {
		margin: 25% 0 0 0;
		padding: 5%;
		line-height: 180%;
	}
	.other {
		width: 81%;
	}
	.otherBox ul li {
		font-size: 3vw;
	}




	.charactersticBox {
		flex-direction: column;
		width: 70%;
		margin: 7% auto 2%;
	}
	.charactersticBox img {
		width: 90px;
		height: 90px;
		margin-top: 5%;
	}

	.charactersticBox section p {
		font-size: 3.2vw;
	}
	.layer {
		background: rgba(232, 232, 232, .8);
		padding: 15% 0 5%;
	}


	.company table {
		width: 100%;
		font-size: 3vw;
		margin-bottom: 5%;
	}
	.company table th, .company table td {
		display: block;
		padding: 1%;
	}
	.company table th {
		border-right: none;
	}
	.company table {
		border-collapse: collapse;

	}
	.company table:last-child {
		border-bottom: none;
	}
	.company table td, th {
		font-size: 3.2vw;
	}



	.map {
		width: 100%;
		margin: 0 auto;
	}
	.map iframe {
		width: 100%;
	}



	#formWrap {
		width:95%;
		margin:0 auto;
		padding-top: 15%;
	}
	#formWrap h3 {
		font-size: 6vw;
	}
	#formWrap p {
		font-size: 3.2vw;
	}

	.formRed {
		font-size: 3vw;
	}
	table.formTable th, table.formTable td {
		width:auto;
		display:block;
	}
	table.formTable th {
		margin-top:5px;
		border-bottom:0;
	}
	input[type="text"], textarea {
		width:80%;
		padding:5px;
		font-size:110%;
		display:block;
	}
	input[type="submit"], input[type="reset"], input[type="button"] {
		display:block;
		width:50%;
		margin: 0 auto;
		height:40px;
	}




	.contactButton {
		margin: 15% 0 10%;
	}
	.contactButton a {
		padding: 6% 13%;
	}





	footer p {
		padding: 10% 0;
	}

}



