@charset "UTF-8";

html,body {
	height: 100%;
}
#main a:active,
#main a:hover {
	color: inherit;
	text-decoration: none;
	opacity: 0.8;
}
#main a:active {
	opacity: 0.7;
}

#main a.btn:hover,
#main a.g-btn-cyan:hover,
#main a.btn:visited {
	color: #FFF !important;
}


/* Common Parts */
#main {
	margin: 0 0 30px 0;
}
#main h2 {
	margin: 0 0 0.7em 0;
	padding: 0;
	line-height: 1.4em;
	font-weight:bold;
	color: #003669;
	font-size: 3em;
}
#main h3 {
}
#main h4 {
	margin: 0 0 1em 0;
	padding: 0;
	line-height: 1.4em;
	font-weight:bold;
	font-size: 1.8em;
	text-align: center;
}

#main form {
	margin: 0;
	padding: 0;
}
#main p {
	margin: 0 0 1em 0;
	/*padding: 0;*/
	line-height: 1.6em;
	font-size: 1.2em;
}
#main p.txt_lg {
	font-size: 1.4em;
	line-height: 2.2em;
}
.content_block {
	padding-top: 130px;
}

.serif {
	font-family: 'Playfair Display', serif;
}
.row-eq-height {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display:         flex;
}


ul.ul_def {
	margin: 0 0 1.5em 1.2em;
}
ul.ul_def li {
	margin: 0 0 0.7em 0;
	padding-left:0em;
	list-style-type: disc;
}

.sp { display: none; }
.pc { display: block; }


.mb10 { margin-bottom: 10px; }
.mb20 { margin-bottom: 20px; }
.mb30 { margin-bottom: 30px; }
.mb40 { margin-bottom: 40px; }
.mb50 { margin-bottom: 50px; }
.mb60 { margin-bottom: 60px; }
.mb70 { margin-bottom: 70px; }
.mb80 { margin-bottom: 80px; }
.mb90 { margin-bottom: 90px; }
.mb100 { margin-bottom: 100px; }

.a_right {
	text-align: right;
}
.a_left {
	text-align: left;
}
.a_center {
	text-align: center;
}
/* icon */
i.fa {
	padding-right: 0.5em;
}



/* Header */
#cnt_header {
	position: relative;
}



/* Top Navi */
#ecgp {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 130px;
	padding: 0 0;
	background-color: #fff000;
	z-index: 10000;
}
	#ecgp div.container {
		position: relative;
		max-width: 640px;
		height: 100%;
		margin: 0 auto;
	}










.container {
	padding-right: 15px;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto;
	max-width: 970px;
}

@media (min-width:768px) {

.container { width: 750px }
}

@media (min-width:992px) {

.container { width: 970px }
}

@media (min-width:1200px) {

.container { width: 1170px }
}

.container-fluid {
	padding-right: 15px;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto
}







@media only screen and (max-width: 1200px) {
}

@media only screen and (max-width: 990px) {
}


/* for SP */
@media only screen and (max-width: 480px) {
	


	#main h2 {
		line-height: 1.4em;
		font-size: 1.4em;
	}
	#main h3 {
	}
	#main h4 {
	}
	#main p {
		font-size: 0.8em;
	}
	
	.pc { display: none; }
	.sp { display: block; }
}





















