@import url(http://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css);

@charset "utf-8";

/* ---------------------------------------------
	reset
--------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td,img { margin: 0; padding: 0; }
table {	border-collapse: collapse; border-spacing: 0; }
fieldset,img { border: 0; }
img { vertical-align: bottom; }
img a { border: none; }
address,caption,cite,code,dfn,em,strong,th,var { font-style: normal; font-weight: normal; }
ol, ul { list-style: none; }
caption, th { text-align: left; }
h1,h2,h3,h4,h5,h6 {	font-size: 100%; font-weight: normal; line-height: 1.0; }
q:before, q:after {	content: ""; }
figure { width: 100%; margin: 0; padding: 0;}

/* ---------------------------------------------
	css
--------------------------------------------- */
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	-webkit-text-size-adjust: 100%;
	word-break: break-all;
	color: #333;
	font-family: Meiryo, メイリオ, 游ゴシック体, 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	background-image: url(../img/bg.jpg);
	background-position: center center;
	background-attachment: fixed;
	background-size: cover;
	background-repeat: no-repeat;
}

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearfix {
    display: inline-table;
}

img { width: 100%; height: auto; }

.imgL { float: left; }
.imgR { float: right; }

a { text-decoration: none; }
a:link {color: #002f76;}
a:visited {color: #002f76;}
a:hover { text-decoration: underline; color: #ea5404; -webkit-transition: all .3s; transition: all .3s;}
a:active {color: #ea5404;}

.mt00 { margin-top: 0px !important; }
.mt05 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt30 { margin-top: 30px !important; }
.mt40 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }
.mt60 { margin-top: 60px !important; }
.mt70 { margin-top: 70px !important; }
.mt80 { margin-top: 80px !important; }
.mt90 { margin-top: 90px !important; }
.mt100 { margin-top: 100px !important; }

.mb00 { margin-bottom: 0px !important; }
.mb05 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb90 { margin-bottom: 90px !important; }
.mb100 { margin-bottom: 100px !important; }

.ml00 { margin-left: 0px !important; }
.ml05 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }
.ml40 { margin-left: 40px !important; }
.ml50 { margin-left: 50px !important; }
.ml60 { margin-left: 60px !important; }
.ml70 { margin-left: 70px !important; }
.ml80 { margin-left: 80px !important; }
.ml90 { margin-left: 90px !important; }
.ml100 { margin-left: 100px !important; }

.mr00 { margin-right: 0px !important; }
.mr05 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr40 { margin-right: 40px !important; }
.mr50 { margin-right: 50px !important; }
.mr60 { margin-right: 60px !important; }
.mr70 { margin-right: 70px !important; }
.mr80 { margin-right: 80px !important; }
.mr90 { margin-right: 90px !important; }
.mr100 { margin-right: 100px !important; }

.pt05 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt20 { padding-top: 20px !important; }
.pt30 { padding-top: 30px !important; }
.pt40 { padding-top: 40px !important; }
.pt50 { padding-top: 50px !important; }

.pb05 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb50 { padding-bottom: 50px !important; }

.pl05 { padding-left: 5px !important; }
.pl10 { padding-left: 10px !important; }
.pl20 { padding-left: 20px !important; }
.pl30 { padding-left: 30px !important; }
.pl40 { padding-left: 40px !important; }
.pl50 { padding-left: 50px !important; }

.pr05 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pr20 { padding-right: 20px !important; }
.pr30 { padding-right: 30px !important; }
.pr40 { padding-right: 40px !important; }
.pr50 { padding-right: 50px !important; }

.bold {	font-weight: bold; }
.left { text-align: left; }
.center { text-align: center; }
.right { text-align: right; }

.red01 { color: #FF0000; }
.red02 { color: #CC0000; }
.red03 { color: #990000; }
.red04 { color: #E4007F; }

.blue01 { color: #003399; }
.blue02 { color: #006699; }
.blue03 { color: #0066CC; }
.blue04 { color: #00A0E9; }

.orange01 { color: #F60; }
.orange02 { color: #F90; }
.orange03 { color: #FC0; }
.orange04 { color: #EB6100; }
.orange05 { color: #FFCC00; }

.green01 { color: #060; }
.green02 { color: #093; }
.green03 { color: #6C0; }

.f20 { font-size: 1.25em; margin-top: 0; }
.f19 { font-size: 1.19em; margin-top: 0; }
.f18 { font-size: 1.12em; margin-top: 0; }
.f17 { font-size: 1.06em; margin-top: 0; }
.f16 { font-size: 1.00em; margin-top: 0; }
.f15 { font-size: 0.94em; margin-top: 0; }
.f14 { font-size: 0.88em; margin-top: 0; }
.f13 { font-size: 0.81em; margin-top: 0; }
.f12 { font-size: 0.75em; margin-top: 0; }

.lh0 { line-height: 1.0; }
.lh1 { line-height: 1.1; }
.lh2 { line-height: 1.2; }
.lh3 { line-height: 1.3; }
.lh4 { line-height: 1.4; }
.lh5 { line-height: 1.5; }
.lh6 { line-height: 1.6; }
.lh7 { line-height: 1.7; }
.lh8 { line-height: 1.8; }

.indent {
	text-indent: -1em;
	padding-left: 1em;
}

p {
	line-height: 1.4;
}

/* ---------------------------------------------
	pageTop
--------------------------------------------- */
.pageTop {
	position: fixed;
	bottom: 10px;
	right: 0px;
	width: 40px;
	text-align: center;
}

.pageTop a {
	display: block;
	padding: 4px 6px;
	background: rgba(0,0,0,0.3);
	color: #fff;
	font-size: 1.5em;
}

.pageTop a:hover {
	background: rgba(0,0,0,0.4);
}

/* ---------------------------------------------
	global navi
--------------------------------------------- */
@media (max-width: 768px) {

	#gNaviMenu { display: none; }

	#gNaviBtn {
		margin: 0;
		padding: 10px 0;
		background: rgba(0,0,0,0.7);
		color: #fff;
		font-size: 1.12em;
		width: 100%;
		cursor: pointer;
		text-align: center;
		box-shadow: 0 1px 5px rgba(0,0,0,0.3);
	}

	#gNaviBtn i {
		margin-right: 5px;
	}

	.gNavi nav ul li {
		border-bottom: 1px solid rgba(255,255,255,0.5);
		background: rgba(0,0,0,0.7);
	}

	.gNavi nav ul li:first-child {
		border-top: 1px solid rgba(255,255,255,0.5);
	}

	.gNavi nav ul li:last-child {
		border-bottom: none;
	}

	.gNavi nav ul li a {
		display: block;
		padding: 10px;
		color: #fff;
		font-size: 0.88em;
		text-decoration: none;
	}

	.gNavi nav ul li a:hover {
		background: rgba(255,255,255,0.3);
	}

}

@media (min-width: 769px) {

	#gNaviBtn { display: none; }
	#gNaviMenu { display: block !important; }

	.gNavi {
		background: rgba(0,0,0,0.7);
		box-shadow: 0 1px 5px rgba(0,0,0,0.3);
	}

	.gNavi nav {
		max-width: 1120px;
		margin: 0 auto;
	}

	.gNavi nav ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}

	.gNavi nav ul li {
		width: auto;
	    text-align: center;
	}

	.gNavi nav ul li a {
	    display: block;
	    padding: 30px 25px;
	    color: #fff;
	    text-decoration: none;
	}

	.gNavi nav ul li a:hover {
	    background: rgba(255,255,255,0.3);
	}

}


/* ---------------------------------------------
	768px 以下
--------------------------------------------- */
@media only screen and (max-width: 768px) {
	body {
		background-image: url(../img/bg2.jpg);
		background-position: top center;
	}
}


/* ---------------------------------------------
	contents
--------------------------------------------- */
section {
	padding: 0 20px;
}

.title {
	max-width: 600px;
	margin: 20px auto 10px;
}

.theme {
	max-width: 300px;
	margin: 0 auto 20px;
}

.box1 {
	max-width: 1120px;
	background: rgba(0,70,107,0.6);
	padding: 30px;
	margin: 0 auto 30px;
}

.col2,
.col2-1,
.col3,
.col4 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 20px;
}

.col2 li {
	width: 48%;
}

.col3 li {
	width: 31%;
	margin-bottom: 15px;
}

.col4 li {
	width: 24%;
	margin-bottom: 15px;
}

.col6 {
	display: flex;
	flex-wrap: wrap;
}

.col6 li {
	width: 15.83333%;
	margin-right: 1%;
	margin-bottom: 15px;
}

.col6 li:nth-child(6n) {
	margin-right: 0;
}

.headline01 {
	color: #fff;
	text-align: center;
	font-size: 2em;
	font-weight: bold;
	margin-bottom: 20px;
}

.headline02 {
	color: #fff;
	text-align: center;
	font-size: 1.5em;
	font-weight: bold;
	margin-bottom: 10px;
}

.headline03 {
	color: #fff;
	text-align: center;
	font-size: 1.25em;
	font-weight: bold;
	margin-bottom: 10px;
}

.headline04 {
	color: #fff;
	font-family: "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
	text-align: center;
	font-size: 1.25em;
	margin-bottom: 20px;
}

/* ---------------------------------------------
	footer
--------------------------------------------- */
#footerWrap {
	background: rgba(0,0,0,0.7);
	padding: 30px 20px;
}

.footer {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1120px;
	margin: 0 auto;
}

.greenPow {
	width: 40%;
}

.greenPow dl {
	content: "";
	display: block;
	clear: both;
}

.greenPow dl dt {
	float: left;
	max-width: 60px;
	margin-right: 10px;
}

.greenPow dl dd {
	width: auto;
	font-size: 0.75em;
	color: #fff;
	line-height: 1.6;
}

.footerInfo {
	width: 58%;
	text-align: right;
}

.footerInfo p {
	color: #fff;
}

.contact {
	font-size: 1.12em;
	margin-bottom: 10px;
	line-height: 1.5;
}

.copyright {
	font-size: 0.75em;
	line-height: 1.5;
}

.sns {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: flex-start;
}

.sns li {
	margin-right: 5px;
	margin-bottom: 5px;
}

.fb_iframe_widget > span {
  vertical-align: baseline !important;
}

/* ---------------------------------------------
	768px 以下
--------------------------------------------- */
@media only screen and (max-width: 768px) {

	/* ---------------------------------------------
		contents
	--------------------------------------------- */
	.box1 {
		padding: 20px;
		margin: 0 auto 20px;
	}
	
	.col2 li {
		width: 100%;
		margin-bottom: 15px;
	}
	
	.col3 li {
		width: 48%;
	}
	
	.col6 li {
		width: 19.2%;
	}
	
	.col6 li:nth-child(6n) {
		margin-right: 1%;
	}

	.col6 li:nth-child(5n) {
		margin-right: 0;
	}
	
	.headline01 {
		font-size: 1.875em;
	}
	
	.headline02 {
		font-size: 1.375em;
	}
	
	.headline03 {
		font-size: 1.12em;
	}
	
	.headline04 {
		font-size: 1.12em;
	}

	/* ---------------------------------------------
		footer
	--------------------------------------------- */
	.greenPow {
		width: 100%;
		margin-bottom: 20px;
	}
	
	.footerInfo {
		width: 100%;
		text-align: left;
	}
	
	.contact {
		font-size: 0.88em;
	}
	
	.sns {
		justify-content: flex-start;
	}

}

/* ---------------------------------------------
	640px 以下
--------------------------------------------- */
@media only screen and (max-width: 640px) {

	/* ---------------------------------------------
		contents
	--------------------------------------------- */
	.box1 {
		padding: 20px 14px 14px;
		margin: 0 auto 20px;
	}
	
	.col3 li {
		width: 100%;
	}
	
	.col4 li {
		width: 48%;
		margin-bottom: 15px;
	}
	
	.col6 li {
		width: 32%;
		margin-right: 2%;
	}
	
	.col6 li:nth-child(6n) {
		margin-right: 0;
	}

	.col6 li:nth-child(5n) {
		margin-right: 2%;
	}

	.col6 li:nth-child(3n) {
		margin-right: 0;
	}

	.headline01 {
		font-size: 1.5em;
	}
	
	.headline02 {
		font-size: 1.25em;
	}
	
	.headline03 {
		font-size: 1.00em;
	}
	
	.headline04 {
		font-size: 1.00em;
	}

}

/* ---------------------------------------------
	480px 以下
--------------------------------------------- */
@media only screen and (max-width: 480px) {

	/* ---------------------------------------------
		contents
	--------------------------------------------- */
	.theme {
		max-width: 240px;
	}


}





