@charset "utf-8";
/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
header
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */

/* TOPページ */
#topHeader {
	width: 100%;
	height: 600px;
	margin: 0;
	padding: 0;
	border-top: 4px solid #f71a46;
}
#topHeader div.left {
	width: 35%;
	height: 600px;
	margin: 0;
	padding: 0;
	display: inline-block;
}
#topHeader h1 {
	margin: 50px 0 0;
}
#topHeader div.right {
	width: 65%;
	height: 600px;
	margin: 0;
	padding: 0;
	display: inline-block;
	position: relative;
}
#topHeader div.right div {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
	z-index: 1;
}
#topHeader div.right div div {
	width: 100%;
	height: 100%;
	background-image: url(../img/index/mainImage01.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	-webkit-animation: zoomFunc 20s linear alternate infinite;
	-moz-animation: zoomFunc 20s linear alternate infinite;
	animation: zoomFunc 20s linear alternate infinite;
}
@-webkit-keyframes zoomFunc {
  0% {transform: scale(1.0);}
  100% {transform: scale(1.2);}
}
@-moz-keyframes zoomFunc {
  0% {transform: scale(1.0);}
  100% {transform: scale(1.2);}
}
@keyframes zoomFunc {
  0% {transform: scale(1.0);}
  100% {transform: scale(1.2);}
}
#topHeader div.right p.cc {
	letter-spacing: 0.2em;
	position: absolute;
	top: 50px;
	left: -40px;
	z-index: 2;
}
#topHeader div.right p.cc span {
	margin: 0 0 20px;
	display: inline-block;
	opacity: 0;
}
#topHeader div.right p.cc span:nth-of-type(1) {
	-webkit-animation: ccFunc 1s linear 0s forwards;
	-moz-animation: ccFunc 1s linear 0s forwards;
	animation: ccFunc 1s linear 0s forwards;
}
#topHeader div.right p.cc span:nth-of-type(2) {
	-webkit-animation: ccFunc 1s linear 0.8s forwards;
	-moz-animation: ccFunc 1s linear 0.8s forwards;
	animation: ccFunc 1s linear 0.8s forwards;
}
#topHeader div.right p.cc span:nth-of-type(3) {
	-webkit-animation: ccFunc 1s linear 1.6s forwards;
	-moz-animation: ccFunc 1s linear 1.6s forwards;
	animation: ccFunc 1s linear 1.6s forwards;
}
@-webkit-keyframes ccFunc {
  0% {opacity: 0;transform: translateX(20px);}
  100% {opacity: 1;transform: translateX(0);}
}
@-moz-keyframes ccFunc {
  0% {opacity: 0;transform: translateX(20px);}
  100% {opacity: 1;transform: translateX(0);}
}
@keyframes ccFunc {
  0% {opacity: 0;transform: translateX(20px);}
  100% {opacity: 1;transform: translateX(0);}
}
#topHeader div.right p.contact {
	width: 400px;
	height: 100px;
	padding: 6px 0;
	position: absolute;
	bottom: -50px;
	right: 40px;
	background: #f71a46; /* Old browsers */
	background: -moz-linear-gradient(left, #f71a46 0%, #c81e40 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, #f71a46 0%,#c81e40 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, #f71a46 0%,#c81e40 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f71a46', endColorstr='#c81e40',GradientType=1 ); /* IE6-9 */
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	z-index: 3;
	opacity: 0;
	-webkit-animation: fadeFunc 1s linear 1.6s forwards;
	-moz-animation: fadeFunc 1s linear 1.6s forwards;
	animation: fadeFunc 1s linear 1.6s forwards;
}
@-webkit-keyframes fadeFunc {
  0% {opacity: 0;}
  100% {opacity: 1;}
}
@-moz-keyframes fadeFunc {
  0% {opacity: 0;}
  100% {opacity: 1;}
}
@keyframes fadeFunc {
  0% {opacity: 0;}
  100% {opacity: 1;}
}
#topHeader div.right p.contact span,
#topHeader div.right p.contact strong {
	display: inline-block;
}
#topHeader div.right p.contact strong {
	padding: 0 0 0 50px;
	background-image: url(../img/common/ico/01.png);
	background-position: left;
	background-repeat: no-repeat;
	background-size: 40px 26px;	
}

/* SUBページ */
#subHeader {
	width: 100%;
	height: 100px;
	overflow: hidden;
	margin: 0;
	padding: 0;
	border-top: 4px solid #f71a46;
	position: relative;
}
#subHeader h1 {
	margin: 15px 0 0 40px;
	padding: 0;
}
#subHeader p.contact {
	width: 360px;
	height: 100px;
	margin: 0;
	padding: 6px 0;
	display: inline-block;
	background: #f71a46; /* Old browsers */
	background: -moz-linear-gradient(left, #f71a46 0%, #c81e40 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, #f71a46 0%,#c81e40 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, #f71a46 0%,#c81e40 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f71a46', endColorstr='#c81e40',GradientType=1 ); /* IE6-9 */
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#subHeader p.contact span,
#subHeader p.contact strong {
	display: inline-block;
}
#subHeader p.contact strong {
	padding: 0 0 0 50px;
	background-image: url(../img/common/ico/01.png);
	background-position: left;
	background-repeat: no-repeat;
	background-size: 40px 26px;	
}

/* TOP用 */
#topPage #subHeader {
	display: none;
}


@media (max-width: 1320px) {
	#subHeader p.contact {	
		display: none;
	}
}
@media (max-width: 950px) {
	#topPage #subHeader {
		display: block;
	}
	#topHeader {
		height: 400px;
		padding: 102px 0 0;
	}
	#topHeader div.left {
		display: none;
	}
	#topHeader div.right {
		width: 100%;
		height: 400px;
		display: block;
	}
	#topHeader div.right p.cc {
		font-size: 24px;
		letter-spacing: 0;
		top: 40px;
		left: 20px;
	}
	#topHeader div.right p.contact {
		margin: 0 -200px 0 0;
		right: 50%;
	}
	#subHeader {
		height: auto;
		padding: 0;
		position: fixed;
		background-color: #FFF;
		z-index: 9999;
	}
	#subHeader h1 {
		margin: 15px 0 15px 20px;
		padding: 0;
	}
}
@media (max-width: 500px) {
	#topHeader div.right p.contact {
		width: calc(100% - 40px);
		margin: 0 20px;
		right: auto;
	}
}
@media (max-width: 460px) {
	#topHeader div.right p.contact {
		padding: 10px 0;
	}
	#topHeader div.right p.contact strong {
		font-size: 32px;
	}
}


/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
container
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */

#container {
	margin: 0;
	padding: 0;
}
#pageTitle {
	width: 100%;
	height: 200px;
	margin: 0;
	padding: 0;
	background-image: url(../img/common/subImage.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;	
}
#pageTitle h2 {
	margin: 140px 0 0;
	padding: 40px 100px 0;
	letter-spacing: 0.2em;
	display: inline-block;
	border-top: 1px solid #f71a46;
}
#pageTitle p {
	margin: 40px 0 0;
}

@media (max-width: 950px) {
	#container {
		padding: 102px 0 0;
	}
	#pageTitle h2 {
		width: calc(100% - 40px);
		margin: 140px 20px 0;
		padding: 40px 20px 0;
		font-size: 32px;
		letter-spacing: 0;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	#pageTitle p {
		margin: 40px 20px 0;
	}
}


/* ------------------------------------------------------------------
/////////////////////////////////////////////////////////////////////
footer
/////////////////////////////////////////////////////////////////////
------------------------------------------------------------------ */

footer {
	width: auto;
	overflow: hidden;
	margin: 60px 0 0;
	padding: 0;
}
footer address strong {
	margin: 0 0 15px;
	display: block;
}
footer address strong span {
	margin: 0 0 10px;
	display: block;
}
#copyright {
	margin: 60px 0 0;
	padding: 15px 0;
}




