@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;
}
/* 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;
	vertical-align: bottom;
}
.alignleft {
    display: inline-block;
    float: left;
    margin-right: 2em;
    margin-bottom: 1em;
}
.alignright {
    display: inline-block;
    float: right;
    margin-left: 2em;
    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;
	height: 460px;
	padding: 30px 0;
	background: url(../images/bg-top.png) no-repeat center center;
	background-size: cover;
}
.logo {
	margin: 0 0 40px;
}
.header h2 {
	margin: 70px 0;
	font-size: 350%;
	color: #005792;
	text-align: center;
	font-feature-settings : "palt";
	line-height: 1.2;
}
.header h2 span {
	display: inline-block;
}
.header h2 span.sub {
	min-width: 240px;
	margin: 0 0 20px;
	padding: 10px;
	font-size: 50%;
	color: #FFF;
	background: #005792;
	letter-spacing: 0.2em;
}
/* title-collabo */
.title-collabo {
	display: table;
	margin: 30px auto 0;
}
.collabo-kagaya ,.collabo-cross ,.collabo-imos {
	display: table-cell;
	padding: 15px;
	vertical-align: middle;
}

/* +++++++++++++++++++++++
アバウト
+++++++++++++++++++++++ */
.about {
	padding: 50px 0;
	background: #005792;
}
.txt-about p {
	max-width: 640px;
	margin: 0 auto;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
/* +++++++++++++++++++++++
メニュー
+++++++++++++++++++++++ */
.menu {
	padding: 60px 0 40px;
	background: #d9faff;
	text-align: center;
}
.menu li {
	list-style: none;
}
.menu li {
	display: inline-block;
	width: 220px;
	margin: 0 10px 20px;
	line-height: 1.2;
}
.menu li a {
	position: relative;
	display: block;
	padding: 15px;
	background: #FFF;
	border: solid 4px #00BBF0;
	color: #005792;
	font-weight: bold;
	font-size: 150%;
	text-decoration: none;
}
.menu li span {
	display: block;
	font-size: 58%;
}
.menu li a:hover {
	background: #00BBF0;
	color: #FFF;
}
/* +++++++++++++++++++++++
メインコンテンツ
+++++++++++++++++++++++ */
.main {
	padding: 50px 0;
	background: #FFF;
}
/* report-box */
.report-box {
	margin: 0 0 50px;
	padding: 0 35px 35px;
	background: #FFF;
	border: solid 5px #00BBF0;
	border-top: none;
}
.report-box h2 {
	position: relative;
	width: 100%;
	margin: 0 -35px 35px;
	padding: 0 35px;
	background: #00bbf0;
	color: #FFF;
	font-size: 162%;
}
.report-box h2 .title01 {
	position: absolute;
	width: 80px;
	height: 80px;
	left: -30px;
	top: -14px;
	/*margin: -20px 0 0 -70px;*/
	padding: 10px;
	vertical-align: middle;
	background: #f9f18a;
	font-size: 80%;
	text-align: center;
	color: #005792;
	border-radius: 100px;
	line-height: 80px;
	white-space: nowrap;
}
.report-box h2 .title02 {
	display: block;
	padding: 15px 20px 15px 60px;
	vertical-align: middle;
}
.report-box h3 {
	margin: 0 0 1em;
	font-size: 125%;
	color: #005792;
}
.report-box p {
	margin: 1.5em 0;
}
.report-box dl {
	float: left;
	width: 60%;
	margin: 0 0 1em;
	border-top: solid 1px #CCC;
}
.report-box dt {
	clear: both;
	float: left;
	width: 6em;
	padding: 1em 0;
	color: #005792;
	font-weight: bold;
}
.report-box dd {
	padding: 1em 0 1em 6em;
	border-bottom: solid 1px #CCC;
}
.report-box table {
	width: 100%;
}
.report-box th ,.report-box td {
	padding: 15px 20px;
	border-bottom: solid 2px #FFF;
}
.report-box th {
	width: 160px;
	background: #015792;
	color: #FFF;
	text-align: left;
}
.report-box td {
	background: #F3F3F3;
}
.report-box .alignright {
	max-width: 38%;
	margin-left: 0;
	margin-bottom: 2em;
}

/* +++++++++++++++++++++++
フッター
+++++++++++++++++++++++ */
.footer {
	margin: 0;
}
.page-top {
	text-align: center;
	font-size: 88%;
}
.page-top a {
	display: block;
	padding: 12px;
	color: #FFF;
	background: #015792;
	text-decoration: none;
}
.page-top a:hover {
	opacity: 0.8;
}
.page-top img {
	margin: 0 0 3px;
}
.footer .contents {
	padding: 50px 20px;
}
.fotter-logo {
	display: table;
	margin: 0 auto;
}
.fotter-logo .item {
	display: table-cell;
	padding: 30px 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%;
	}
	/* +++++++++++++++++++++++
	ヘッダー
	+++++++++++++++++++++++ */
	.wrap-header {
		background:
			url(../images/bg-top-l.png) no-repeat left bottom,
			url(../images/bg-top-r.png) no-repeat right top;
		background-size: 240px 345px;
	}
	.header {
		height: 380px;
		background: none;
		background-color: rgba(255,255,255,0.3);
	}
	.header h2 {
		margin: 50px 0 40px;
		font-size: 300%;
	}
	/* +++++++++++++++++++++++
	アバウト
	+++++++++++++++++++++++ */
	.about {
		padding: 30px 0;
	}
	.txt-about p {
		text-align: left;
	}
	/* +++++++++++++++++++++++
	メニュー
	+++++++++++++++++++++++ */
	.menu {
		padding: 30px 0 10px;
	}
	.menu li {
		list-style: none;
	}
	.menu li {
		width: 30%;
		margin: 0 1% 20px;
	}
	/* +++++++++++++++++++++++
	メインコンテンツ
	+++++++++++++++++++++++ */
	.main {
		padding: 30px 0;
	}
	.report-box {
		padding: 0 20px 20px;
	}
	.report-box h2 {
   		margin: 0 -20px 20px;
		padding: 0 20px;
		font-size: 125%;
	}
	.report-box h2 .title01 {
		width: 70px;
		height: 70px;
		left: -18px;
		top: -15px;
		line-height: 70px;
	}
	
	/* +++++++++++++++++++++++
	フッター
	+++++++++++++++++++++++ */
	.footer-nav .item {
		padding: 10px;
	}
}
@media (max-width: 690px) {
	/* image */
	.alignleft ,.alignright {
		float: none;
		display: block;
		margin: 1em auto;
		max-width: 100%;
	}
	/* +++++++++++++++++++++++
	ヘッダー
	+++++++++++++++++++++++ */
	.wrap-header {
		background-size: 100px 144px;
	}
	.header {
    	padding: 20px 0;
		height: auto;
	}
	.header h2 {
		margin: 40px 0;
		font-size: 200%;
	}
	.header h2 span.sub {
		margin: 0 0 15px;
		padding: 5px;
	}
	/* title-collabo */
	.title-collabo {
		display: block;
		margin: 20px auto 10px;
	}
	.collabo-kagaya ,.collabo-imos {
		width: 35%;
		min-width: auto;
		padding: 5px;
	}
	.collabo-kagaya {
		text-align: right;
	}
	.collabo-cross {
		width: 10%;
		padding: 5px;
		text-align: center;
	}
	.collabo-cross img {
		width: 40px;
	}
	/* +++++++++++++++++++++++
	アバウト
	+++++++++++++++++++++++ */
	.about {
    	padding: 20px 0;
	}
	/* +++++++++++++++++++++++
	メニュー
	+++++++++++++++++++++++ */
	.menu {
		padding: 20px 0 10px;
	}
	.menu li {
		margin: 0 1% 10px;
	}
	.menu li a {
		padding: 10px 5px;
		font-size: 125%;
		border: solid 3px #00BBF0;
	}
	/* +++++++++++++++++++++++
	メインコンテンツ
	+++++++++++++++++++++++ */
	.main {
		overflow: hidden;
	}
	.report-box {
		margin: 0 0 30px;
		padding: 0 3%;
		border-width: 4px;
	}
	.report-box h2 {
		margin: 0 -4% 10px;
		padding: 0 4%;
		font-size: 112%;
		line-height: 1.4;
	}
	.report-box h2 .title01 {
		width: 50px;
		height: 50px;
		margin: auto;
		left: 3px;
		top: 0;
		bottom: 0;
		line-height: 50px;
		font-size: 75%;
	}
	.report-box h2 .title02 {
		display: block;
		padding: 10px 0 10px 70px;
		vertical-align: middle;
	}
	.report-box p {
		margin: 1em 0;
	}
	.report-box dl {
		width: 100%;
		margin: 0 0 0.5em;
	}
	.report-box dt {
		padding: 0.5em 0;
	}
	.report-box dd {
		padding: 0.5em 0 0.5em 6em;
	}
	.report-box th, .report-box td {
		padding: 10px;
		line-height: 1.2;
	}
	.report-box th {
		width: auto;
	}
	.report-box .alignright {
		max-width: 100%;
		width: 100%;	
		margin: 0 auto 10px;
	}
	.pic-report {
		display: block;
		margin: 0 -3.2%;
	}
	
	/* +++++++++++++++++++++++
	フッター
	+++++++++++++++++++++++ */
	.footer .contents {
		padding: 15px 0;
	}
	.fotter-logo .item {
		display: table-cell;
		padding: 10px 20px;
		vertical-align: middle;
	}

}
@media (max-width: 340px) {
	/* +++++++++++++++++++++++
	ヘッダー
	+++++++++++++++++++++++ */
	.wrap-header {
		background-size: 100px 144px;
	}
}

