@charset "utf-8";
/* CSS Document */
body {
	font-size: 16px;
	font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
	line-height: 1.6;
	background-color: #FFF;
	color: #333;
	margin: 0;
	font-style: normal;
	font-weight: normal;
	position: relative;
	width: 100%;
    right: 0;
	overflow-x: hidden;
}
/* clearfix */
.cf:before, .cf:after {
	content: "";
	display: table;
}
.cf:after {
	clear: both;
}
/* clear */
.clear {
	clear: both;
}
/* link */
a {
	transition:color 0.3s ease ,background 0.3s ease ,opacity 0.3s ease;
	text-decoration: underline;
	color: #283593;
}
.ios a {
	transition:none;
}
a:hover {
	text-decoration: none;
}
/* fade */
.fade {
	display: block;
}
.fade:hover{
	transition:all 0.3s ease;
	opacity: 0.7;
	filter: alpha(opacity=70);
	text-decoration: none;
}
/* image */
img {
	-webkit-backface-visibility: hidden;
	max-width: 100%;
	height: auto;
}
.alignleft {
    display: inline-block;
    float: left;
    margin-right: 3em;
    margin-bottom: 1em;
}
.alignright {
    display: inline-block;
    float: right;
    margin-left: 3em;
    margin-bottom: 1em;
}
/* contents */
.contents {
	width: 960px;
	max-width: 100%;
	margin: 0 auto;
	padding: 0 20px;
}
/* pc-none */
.pc-none {
	display: none;
}
/* feda-up */
.fade-up {
    transition : all 800ms;
	-moz-transition-delay:100ms;
    -webkit-transition-delay:100ms;
    -o-transition-delay:100ms;
    -ms-transition-delay:100ms;
}
.fade-up-box > .fade-up:nth-of-type(2) {
    -moz-transition-delay:200ms;
    -webkit-transition-delay:200ms;
    -o-transition-delay:200ms;
    -ms-transition-delay:200ms;
    }
.fade-up-box > .fade-up:nth-of-type(3) {
    -moz-transition-delay:300ms;
    -webkit-transition-delay:300ms;
    -o-transition-delay:300ms;
    -ms-transition-delay:300ms;
}
.fade-up-box > .fade-up:nth-of-type(4) {
    -moz-transition-delay:400ms;
    -webkit-transition-delay:400ms;
    -o-transition-delay:400ms;
    -ms-transition-delay:400ms;
}

/* +++++++++++++++++++++++
ヘッダー
+++++++++++++++++++++++ */
.header {
	position: relative;
	padding: 30px 0;
	background: #f6fbfc url(../images/bg-top.jpg) no-repeat center center;
	background-size: cover;
}
.logo {
	margin: 0 0 40px;
}
.header h1 {
	margin: 100px 0;
	color: #FFF;
	text-align: center;
	font-size: 350%;
}

/* +++++++++++++++++++++++
アバウト
+++++++++++++++++++++++ */
.about {
	padding: 50px 0;
}
.txt-about p {
	max-width: 640px;
	margin: 0 auto;
	color: #2980b9;
	font-weight: bold;
	text-align: center;
}

/* +++++++++++++++++++++++
メインコンテンツ
+++++++++++++++++++++++ */
.main {
	padding: 50px 0;
	background: #FFF;
}
.main-lead p {
	max-width: 640px;
	margin: 0 auto;
	font-weight: bold;
	text-align: center;
}
.main h2 {
	margin: 0 0 30px;
	padding: 0 0 15px;
	color: #008744;
	font-size: 200%;
	text-align: center;
	border-bottom: solid 4px #008744;
}
.txt-box {
	margin: 60px 0;
}
.txt-box .alignleft ,.txt-box .alignright {
	box-shadow: 10px 10px 0 #99cfb5;
}
.txt-box p {
	margin: 50px 0 0;
	line-height: 2;
}
.txt-box-last {
	margin: 50px -500%;
	padding: 50px 500%;
	background: #4eab7e;
	color: #FFF;
}
.txt-box-last .alignleft {
	box-shadow: none;
	margin-bottom: 0;
}

/* +++++++++++++++++++++++
フッター
+++++++++++++++++++++++ */
.footer {
	margin: 0;
	background: #EEE;
}
.page-top {
	text-align: center;
	font-size: 88%;
}
.page-top a {
	display: block;
	padding: 12px;
	color: #FFF;
	background: #324c4d;
	text-decoration: none;
}
.page-top a:hover {
	opacity: 0.8;
}
.page-top img {
	margin: 0 0 0 20px;
}
.footer .contents {
	padding: 40px 20px;
}
.fotter-logo {
	display: table;
	margin: 0 auto;
}
.fotter-logo .item {
	display: table-cell;
	padding: 40px;
	vertical-align: middle;
}
.copyright {
	padding: 5px;
	font-size: 75%;
	text-align: center;
}
@media (max-width: 960px) {
	.contents {
		padding: 0 2%;
		box-sizing: border-box;
	}
	/* pc-none */
	.pc-none {
		display: block;
	}
	/* sp-none */
	.sp-none {
		display: none;
	}
	/* image */
	.alignleft ,.alignright {
		max-width: 45%;
	}
	/* +++++++++++++++++++++++
	ヘッダー
	+++++++++++++++++++++++ */
	.header h1 {
		margin: 70px 0;
		font-size: 300%;
	}
	/* +++++++++++++++++++++++
	メインコンテンツ
	+++++++++++++++++++++++ */
	.main {
		padding: 30px 0;
	}
	.txt-box p {
		margin: 40px 0 0;
		line-height: 1.8;
	}
	
	/* +++++++++++++++++++++++
	フッター
	+++++++++++++++++++++++ */
	.footer-nav .item {
		padding: 10px;
	}
}
@media (max-width: 690px) {
	.contents {
		padding: 0 3%;
	}
	/* image */
	.alignleft ,.alignright {
		float: none;
		display: block;
		margin: 1em auto;
		max-width: 100%;
	}
	/* +++++++++++++++++++++++
	ヘッダー
	+++++++++++++++++++++++ */
	.header h1 {
		margin: 40px 0;
		font-size: 225%;
	}
	
	/* +++++++++++++++++++++++
	メインコンテンツ
	+++++++++++++++++++++++ */
	.main {
		overflow: hidden;
	}
	.main h2 {
		font-size: 150%;
	}
	.txt-box {
		margin: 20px 0;
	}
	.txt-box .alignleft, .txt-box .alignright {
		box-shadow: 5px 5px 0 #99cfb5;
	}
	.txt-box p {
		margin: 20px 0 0;
	}
	.txt-box-last {
		margin: 20px -500%;
		padding: 20px 500%;
	}
	.txt-box-last .alignleft {
		margin: 0 auto 1em;
		box-shadow: none;
	}
	
	/* +++++++++++++++++++++++
	フッター
	+++++++++++++++++++++++ */
	.footer .contents {
		padding: 15px 0;
	}
	.fotter-logo .item {
		display: table-cell;
		padding: 10px 20px;
		vertical-align: middle;
	}

}

