@charset "UTF-8";
/* CSS Document */

#header {
	background-repeat:no-repeat;
	background-position:center;
	background-color:#000;
	width:100%;
	/*height:737px;*/
	position:relative;
	overflow: hidden;
}
/*スライダー*/
#header .slider {
	/*position:absolute;
	top:0;*/
	width:100%;
	height:auto;
}
#header .slider div img {
}
#header .title {
	display:block;
	position:absolute;
	top:48%;
	width:90%;
	margin:0 5%;
	background:none;
	text-indent:0;
	text-align:center;
	z-index: 10;
}
#header .title h1 {
	display:block;
	line-height:1;
	background:none;
	transition-duration:1s;
}
#header .title h1 img {
	max-width:100%;
	height:auto;
}
#header .title a {
	display:block;
	margin-top:20px;
	transition-duration:1s;
}
#header .title a img {
	max-width: 100%;
}
#header .info_box ul li a *,
#header .info_box ul li a:link {
	color:#FFF;
	text-decoration:none;
}
/**/
#contents {
	padding-bottom:0;
	width:100%;
	padding-left:0;
	padding-right:0;
}
#contents .slider.photoCar {
	overflow: hidden;
}


@media screen and (min-width: 481px) {

	#header {
		display: block;
		position:relative;
		height: auto;
	}
	#header .info_box {
		display:block;
		width:100%;
		height:auto;
		position:absolute;
		bottom:0;
		background-color:rgba( 0, 0, 0, 0.5 );
	}
	#header .info_box ul {
		display: block;
		width:auto;
		max-width: 1100px;
		color:#FFF;
		margin:20px auto 0;
		padding: 0 50px;
	}
	#header .info_box ul li {
		margin-bottom:15px;
		line-height:1.4em;
	}
	#header .info_box ul li .cat {
		display:inline-block;
		margin-right:1em;
		margin-top:-0.2em;
		width:70px;
		height:16px;
		background-color:#7bb6e2;
		font-size:10px;
		text-align:center;
		line-height:16px;
		vertical-align:middle;
		/*角丸*/
		border-radius: 3px;        /* CSS3草案 */  
		-webkit-border-radius: 3px;    /* Safari,Google Chrome用 */  
		-moz-border-radius: 3px;   /* Firefox用 */ 
	}
	#header .info_box ul li .date {
		display:inline-block;
		padding-right:1.5em;
	}
	/*--*/
	#contents .rinen {
		text-align:center;
	}
	#contents .rinen h2.title {
		display: block;
		text-align: center;
		border: none;
		padding: 0;
		margin-top: 0;
		margin-bottom:0;
		padding-bottom: 0;
	}
	#contents .rinen .catch {
		font-weight:bold;
		font-size:1.4em;
		line-height: 1.4em;
		margin-top:50px;
		margin-bottom:40px;
		color:#000;
	}#contents .rinen .catch img {
		max-width:94%;
	}
	#contents .rinen p {
		margin-bottom:80px;
		margin-top:40px;
		line-height: 2.2em;
		font-size:15px;
	}

	/*-- service*/
	#contents .service {
		display:block;
		background-color:#ededed;
		background-image: url(../images/service_title_bg.jpg);
		background-size: contain;
		text-align:center;
		overflow:hidden;
		font-size:15px;
	}
	#contents .service h2 {
		display:block;
		margin:60px auto 40px;
	}
	#contents .service h2+p {
		margin-bottom:40px;
	}
	#contents .service .wrap {
		display:block;
		overflow:hidden;
		background-color:#000;
		position:relative;
		margin:0;
		padding:0;
	}

	#contents .service p {
		font-size:15px;
	}
	#contents .service .wrap a.col {
		float:left;
		width:33%;
		height:275px;
		position:relative;
		margin:0;
		padding:0;
		overflow:hidden;
		transition-duration:1s;
		background-size:cover;
		text-decoration: none;
	}
	#contents .service .wrap a.col.service01 {
		background-image:url(../images/service_1bg.jpg);
	}
	#contents .service .wrap a.col.service02 {
		width:34%;
		background-image:url(../images/service_2bg.jpg);
	}
	#contents .service .wrap a.col.service03 {
		background-image:url(../images/service_3bg.jpg);
	}
	/*tag========*/
	#contents .service .wrap .col .tag_t {
		display:block;
		width:230px;
		height: 39px;
		padding: 0 10px;
		margin: 35px auto 23px;
		border-radius: 3px;
		font-size:16px;
		color:#FFF;
		text-align: center;
		line-height: 39px;
		text-decoration: none;
		background-color: #7bb6e2;
	}
	/*#contents .service .wrap .col .tag { イメージの場合
		position: absolute;
		top: 41px;
		left: -1px;
		right: 0;
		margin: auto;
	}*/
	#contents .service .wrap .col h3 {
		display: block;
		font-size:1.4em;
		position:absolute;
		top:100px;left:0;right:0;
		padding: 0;
		margin:auto;
		color:#FFF;
		font-weight: bold;
		text-decoration:none;
		border: none;
		text-shadow: 1px 1px 3px #000;  
	}
	#contents .service .wrap .col p {
		position:absolute;
		top:140px;left:0;right:0;
		margin:auto;
		color:#FFF;
		text-decoration:none;
		text-shadow: 1px 1px 3px #000; 
		font-size:15px;
		line-height:1.6em;
	}
	#contents .service .contact_us {
		display:block;
		width:100%;
		height:auto;
		padding:5px 0;
		text-align:center;
		background-color:#421995;
		background: linear-gradient(to right, #492975, #7bb6e2);
		color:#FFF;
		overflow:hidden;
	}
	
		#contents .service .contact_us p{
			margin-top:25px;
	}
	
	#contents .service .contact_us img {
		vertical-align:middle;
		/*padding:25px 15px;*/
	}
	/*-- profile*/
	#contents .profile {
		display:block;
		width:auto;
		max-width: 1100px;
		height:auto;
		padding:0 50px 50px;
		margin:0 auto 60px;
		overflow:hidden;
	}
	#contents .profile h2 {
		display:block;
		text-align:center;
		margin:70px auto 30px;
		padding: 0;
		border: none;
	}
	#contents .profile .imageBlock {
		float:left;
		width:40%;
		margin-left: 5%;
		text-align: right;
	}
	#contents .profile .imageBlock img {
		margin-right: 90px;
	}
	#contents .profile .textBlock {
		float:right;
		width:53%;
		margin-right: 0;
		transition-duration:1s;
	}
	#contents .profile .textBlock h3 {
		font-weight:bold;
		font-size:150%;
		line-height:1.3em;
		margin-bottom:0.5em;
		padding: 0px 0 0 0;
		border: none;
		margin:30px 0px 10px 0px;
	}
	#contents .profile .textBlock h3+small {
		display: block;
		font-size:90%;
		margin-bottom: 40px;
	}
	#contents .profile .textBlock p {
		width: 100%;
		line-height:2em;
		margin-bottom:2.3em;
		text-align: justify;
		font-size:15px;
	}
}


@media screen and (min-width: 481px) and (max-width: 1520px) {
	#header {
		/*height:auto;/*680px*/
	}
	#header .title {
		display:block;
		position:absolute;
		top:40%;
		transition-duration:1s;
	}
	/*--*/
	#contents .rinen {
		width:90%;
		margin:auto;
	}
	#contents .rinen .title {
		text-align: center;
	}
	#contents .rinen .title img {
		max-width:100%;
		height:auto;
	}
}


/*==ブラウザ幅が大きい場合*/
@media screen and (min-width: 1521px) {
	#header {
		height:800px;
	}
}

/*==中間サイズ調整*/
@media screen and (min-width: 481px) and (max-width: 1280px){
	#header {
		/*height:550px;*/
	}
}

@media screen and (max-width: 1100px){
	/*文字溢れが発生する前に、早めに1列に切り替える*/
	/*-- service*/
	#contents .service {
		display:block;
		text-align:center;
		overflow:hidden;
		background-color:#ededed;
		background-image: url(../images/service_title_bg.jpg);
		background-size: contain;
	}
	#contents .service h2 {
		display:block;
		margin:30px auto 20px;
	}#contents .service h2 img {
		max-width:90%;
	}
	#contents .service h2+p {
		margin-bottom:40px;
		width:90%;
		margin:0 auto 20px;
		text-align:center;
	}
	#contents .service .wrap {
		display:block;
		overflow:hidden;
	}
	#contents .service .wrap a.col {
		float:none;
		display:block;
		width:100%;
		height:auto;
		position:static;
		margin:0;
		padding:0;
		overflow:hidden;
		background-size:cover;
		text-decoration:none;
	}
	#contents .service .wrap a:hover h3,
	#contents .service .wrap a:hover p
	{
		text-decoration:none;
	}
	#contents .service .wrap a.col.service01 {
		background-image:url(../images/service_1bg.jpg);
	}
	#contents .service .wrap a.col.service02 {
		background-image:url(../images/service_2bg.jpg);
		width:100%;
	}
	#contents .service .wrap a.col.service03 {
		background-image:url(../images/service_3bg.jpg);
	}
	#contents .service .wrap .col .tag {
		position:static;
		margin:20px auto;
	}
	#contents .service .wrap .col h3 {
		font-size:1.4em;
		position:static;
		margin:0 auto 15px;
		color:#FFF;
		padding: 0;
		border: none;
	}
	#contents .service .wrap .col p {
		position:static;
		margin:0 auto 15px;
		color:#FFF;
		font-size:90%;
	}
	#contents .service .contact_us {
		display:block;
		width:100%;
		height:auto;
		padding:15px 5px;
		text-align:center;
		background-color:#421995;
		background: linear-gradient(to right, #421995, #83e3f4);
		color:#FFF;
		overflow:hidden;
	}
	#contents .service .contact_us img {
		vertical-align:middle;
		padding: 0;
		margin:5px 5px;
	}
}
@media screen and (min-width: 481px) and (max-width: 835px){
	#header {
		/*height:500px;*/
	}
	#header .title {
		top:35%;
	}
	#header .title a {
		margin-top:0;
	}
}

	
@media screen and (min-width: 481px) and (max-width: 750px){
	#header {
		/*height:350px;*/
	}
	#header .title a {
		margin-top:0;
	}
	#header .info_box ul {
		margin-top: 10px;
	}
	#header .info_box ul li {
		margin-bottom:0.5em;
	}
	#contents .profile .textBlock h3 {
		text-align: center;
	}
	#contents .profile .textBlock h3+small {
		text-align: center;
	}
	#contents .profile .imageBlock {
		float:none;
		display:block;
		width:100%;
		text-align: center;
	}
	#contents .profile .imageBlock img {
		max-width:80%;
		height: auto;
	}
	#contents .profile .textBlock {
		float:none;
		display:block;
		width:80%;
		margin-left: 10%;
	}
	#contents .profile .textBlock p {
		width:100%;
	}
	#contents .profile .textBlock .button {
		display:block;
		width:100%;
		text-align:center;
	}
}


@media screen and (max-width: 480px) {
	/* スマホ */
	#header {
		display: block;
		width:100%;
		background-image:url(../images/header_img.jpg);
		height:auto;
		background-size:100%;
		background-position:center 70px;
		margin-bottom: 25px;
		overflow:visible;
		position: relative;
	}
	/*title*/
	#header .title {
		display: block;
		position:absolute;
		top:20%;
		margin: auto;
		height: 50px;
	}
	#header .title a {
		display:block;
		margin-top:10px;
	}
	#header .title a img {
		max-width: 40%;
	}
	/**/
	#header .info_box {
		display:block;
		width:100%;
		height:auto;
	}
	#header .info_box ul {
		display: block;
		color:#FFF;
		margin:8px 10px 0px 10px;
		overflow: hidden;
	}
	#header .info_box ul li {
		margin-bottom:10px;
		line-height:1.6em;
		padding:0px 5px;
	}
	#header .info_box ul li .cat {
		display:inline-block;
		margin-right:1em;
		margin-top:-0.2em;
		width:70px;
		height:16px;
		background-color:#7bb6e2;
		font-size:10px;
		text-align:center;
		line-height:16px;
		vertical-align:middle;
		/*角丸*/
		border-radius: 3px;        /* CSS3草案 */  
		-webkit-border-radius: 3px;    /* Safari,Google Chrome用 */  
		-moz-border-radius: 3px;   /* Firefox用 */ 
	}
	#header .info_box ul li .date {
		display:inline-block;
		font-size: 0.8em;
		padding-right:1em;
	}
	#header .info_box ul li .text {
		display: block;
		font-size: 0.8em;
		line-height: 1.2em;
	}
	/*--*/
	#contents .rinen {
		display:block;
		width:90%;
		margin:auto;
		text-align:center;
	}
	#contents .rinen h2.title {
		margin-bottom:0px;
		margin-top: 0;
		padding: 0;
		text-align: center;
		border: none;
	}#contents .rinen .title img {
		width:45%;
		padding: 0;
		height:auto;
	}
	#contents .rinen .catch {
		font-weight:bold;
		font-size:1.4em;
		color:#000;
		line-height: 1.4em;
		margin-top: 0px;
		margin-bottom:20px;
		padding: 0;
	}
	#contents .rinen .catch img {
		max-width: 95%;
		margin-top:25px;
	}
	#contents .rinen p {
		font-size: 90%;
		line-height:2em;
		margin-bottom:50px;
		text-justify:auto;
		padding:8px;
	}
	/**/
	#contents .service h2 img {
		width:55%;
	}
	#contents .service p {
		font-size: 90%;
		line-height:2em;
		background:none;
	}
	#contents .service .wrap .col p {
		position:static;
		margin:0 auto 15px;
		color:#FFF;
		font-size: 90%;
		line-height:2em;
		text-shadow: 1px 1px 3px #000; 
	}
	#contents .service .wrap .col h3 {
		border: none;
		font-size: 110%;
		font-weight:bold;
		text-shadow: 1px 1px 3px #000;  
	}

	/*tag========*/
	#contents .service .wrap .col .tag_t {
		display:block;
		width:180px;
		height: 35px;
		padding: 0 10px;
		margin: 23px auto 23px;
		border-radius: 3px;
		font-size:18px;
		font-family: Helvetica , "游ゴシック" , "Yu Gothic" , sans-serif;
		color:#FFF;
		text-align: center;
		line-height: 39px;
		text-decoration: none;
		background-color: #7bb6e2;
		font-size: 90%;
	}
	#contents .service .contact_us img {
		margin-top:20px;
	}
	#contents .profile {
		display:block;
		width:100%;
		height:auto;
		overflow:hidden;
		position:relative;
		padding-bottom:25px;
	}
	#contents .profile h2 {
		display:block;
		text-align:center;
		margin:60px auto 1em;
		opacity:1;
	}
	#contents .profile h2 img {
		width:40%;
		padding: 0;
		height:auto;
	}
	#contents .profile .imageBlock {
		float:none;
		display:block;
		width:100%;
		text-align: center;
	}
	#contents .profile .imageBlock img {
		max-width:60%;
		height: auto;
		margin-left:15px;
	}
	#contents .profile .textBlock {
		float:none;
		display:block;
		width:90%;
		margin-left: 5%;
	}
	#contents .profile .textBlock h3 {
		margin-bottom: 0.5em;
			border: none;
			margin-left:0px;
	}
	#contents .profile .textBlock h3+small {
		display: block;
		font-size:85%;
		margin-bottom: 1.5em;
			padding:8px;
	}
	#contents .profile .textBlock p {
		width:100%;
		font-size: 90%;
		line-height:2em;
		padding:8px;
	}
	#contents .profile .textBlock .button {
		display:block;
		max-width:100%;
		text-align:center;
		margin-bottom:20px;
	}
	/**/
	#contents .slider.photoCar {
		overflow: hidden;
		height: 150px;
	}
}
