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


/* SP */
@media screen and (max-width: 768px){

/* fv */	
#fv {
	width: 100%;
	height: 100vh;	
	position: relative;
	margin: 0 0 0 0;
	overflow: hidden;
	background-color: #CED7E6;
}	

.fv_img_sp img {
	width: 100%;
	position: absolute;
	top: -2%;
	left: 0;
	z-index: 1;
	display: block;
}

.fv_text_1 {
	position: absolute;
	top: 17%;
	left: 0;
	right: 0;
	text-align: center;
	margin: 0 auto;
	z-index: 5;
	font-weight: bold;
	line-height: 1.4;
	color: #404040;
}

.fv_title_sp {
	position: absolute;
	width: 76.13%;
	top: 28.5%;
	left: 0;
	right: 0;
	text-align: center;
	margin: 0 auto;
	z-index: 5;
}

.fv_title_pc {
	display: none;	
}

.fv_bk_text  {
	width: 100%;
	height: 29vh;
	background-color:  #9fb8c8;
	position: absolute;
	bottom: 0;
	left: 0;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
	z-index: 5;
	color: #ffffff;
}


.text_waku {
	position: absolute;
	width: 86.66%;
	top: 11%;
	left: 0;
	right: 0;
	margin: 0 auto 0 auto;
	z-index: 5;

}

.fv_text_2 {
	margin: 0 auto 2.5% auto;
	padding-bottom: 2.5%;
	text-align: justify;
	z-index: 5;
	line-height: 1.5;
	color: #000000;
	border-bottom: 1px solid;
}

.fv_text_3 {
	margin: 0 auto 0 auto;
	text-align: justify;
	z-index: 5;
	line-height: 1.5;
	color: #000000;
}

.zoom-1 img {
      width: 100%;
      height: auto;
      animation: animationZoom1 2s ease-in-out forwards;
}


/* jiseki */
#jiseki {
	width: 100%;
	margin: 0 0 0 0;
	overflow: hidden;
}

.jiseki_pc {
	display: none;
}


/*news */
#news {
	width: 100%;
	margin: 0 0 0 0;
	overflow: hidden;
	padding-bottom: 2.66%;
}

#news h2 {
	width: 26%;
	white-space: nowrap;
	margin: 6.66% auto 5.33% auto;
	text-align: center;
	font-weight: bold;
	color: #0F4C75;
	border-bottom: 1px solid;
	line-height: 1.3;
}

#news h2 span {
	font-size: 75%;
	padding-left: 5%;
}

.news_w {
	width: 86.66%;
	margin: 0 auto 4% auto;
	padding-bottom: 4%;
	border-bottom: 1px solid #B3B3B3;
	overflow: hidden;
}

.news_text, .news_text2 {
	width: 100%;
	margin: 0 0 0 0;
}

.news_date {
	margin: 0 0 0.5% 1.33%;
	line-height: 1.5;
}

.news_p {
	margin: 0 0 0 1.33%;
	line-height: 1.5;
}

.news_photo {
	width: 61.53%;
	margin: 4% auto 0 auto;
}



/* service */
#service {
	width: 100%;
	margin: 0 0 0 0;
	overflow: hidden;
	background-color: #F1F6F9;
	padding-bottom: 6.66%;
}

#service h2 {
	width: 36%;
	white-space: nowrap;
	margin: 6.66% auto 0 auto;
	text-align: center;
	font-weight: bold;
	color: #0F4C75;
	border-bottom: 1px solid;
	line-height: 1.3;
}

#service h2 span {
	font-size: 75%;
	padding-left: 5%;
}

.service_w {
	margin: 5.33% auto 0 auto;
}

.service_1 {
	width: 86.66%;
	margin: 0 auto 5.3% auto;
}

.service_2 {
	width: 86.66%;
	margin: 0 auto 0 auto;
}

.service_m_1 {
	background-color: #0F4C75;
	margin: 0 auto 2% auto;
	color: #ffffff;
	padding: 2%;
}

.service_m_2 {
	background-color: #0F4C75;
	margin: 0 auto 2% auto;
	color: #ffffff;
	padding: 2%;
}

.service_l_1, .service_l_2, .service_l_3, .service_l_4 {
	background-color: #77ABB7;
	margin: 0 auto 2% auto;
	color: #ffffff;
	padding: 3%;
}

.service_l_1 p, .service_l_2 p, .service_l_3 p, .service_l_4 p {
	padding: 1% 0 1% 3%;
	border-left: 4px solid #ffffff;
}


/* investments */
#investments {
	width: 100%;
	margin: 0 0 0 0;
	padding: 0 0 2.66% 0;
	overflow: hidden;
	background-color: #ffffff;
}

#investments h2 {
	width: 37%;
	white-space: nowrap;
	margin: 6.66% auto 5.3% auto;
	text-align: center;
	font-weight: bold;
	color: #0F4C75;
	border-bottom: 1px solid;
	line-height: 1.3;
}

#investments h2 span {
	font-size: 75%;
	padding-left: 5%;
}

#investments h3 {
	width: 20%;
	white-space: nowrap;
	margin: 0 auto 2.66% auto;
	padding: 1% 0.5% 0.5% 0.5%;
	text-align: center;
	color: #ffffff;
	background-color: #0F4C75;
	line-height: 1.3;
}

.investments_w {
	width: 86.66%;
	margin: 0 auto 4% auto;
	overflow: hidden;
}

.inve_1 {
	width: 49.23%;
	margin: 0 0 1.53% 0;
	float: left;
}

.inve_2 {
	width: 49.23%;
	margin: 0 0 1.53% 0;
	float: right;
}


/* company */

#company {
	width: 100%;
	margin: 0 0 0 0;
	padding: 0 0 6.66% 0;
	overflow: hidden;
	background-color: #F1F6F9;
}

#company h2 {
	width: 34%;
	white-space: nowrap;
	margin: 6.66% auto 5.3% auto;
	text-align: center;
	font-weight: bold;
	color: #0F4C75;
	border-bottom: 1px solid;
	line-height: 1.3;
}

#company h2 span {
	font-size: 75%;
	padding-left: 5%;
}
	
.company_th {
	line-height: 1.3;	
}

	
	
/* history */
#history {
	width: 100%;
	margin: 0 0 0 0;
	padding: 0 0 6.66% 0;
	overflow:hidden;
	background-color: #ffffff;
}

#history h2 {
	width: 22%;
	white-space: nowrap;
	margin: 6.66% auto 5.3% auto;
	text-align: center;
	font-weight: bold;
	color: #0F4C75;
	border-bottom: 1px solid;
	line-height: 1.3;
}

#history h2 span {
	font-size: 75%;
	padding-left: 5%;
}


#history table span {
	font-size: 85%;
}

table {
	width: 86.66%;
	margin: 0 auto 0 auto;
	font-size: 3.7vw;
	border-top: 1px solid;
}

th {
	width: 20%;
	white-space: nowrap;
	padding: 3%;
	line-height: 1.5;
	border-bottom: 1px solid;
}

td {
	padding: 3%;
	text-align: justify;
	line-height: 1.5;
	border-bottom: 1px solid;
}

.map {
	text-align: right;
	color: #1E90FF;
}

.map a {
	color: #1E90FF;
}

.map a:hover {
	color: #1E90FF;
	text-decoration: underline;
}

.map_btn {
	background-color: #1E90FF;
	padding: 1% 3.5% 0.5% 3%;
	color: #ffffff;
}

	.history_t2 {
		border-bottom: 1px dotted;
		margin-bottom: 3%;
		padding-bottom: 3%;
		
	}	
	
}


/* PC */
@media screen and (min-width: 769px){

#fv {
	width: 100%;
	height: 100vh;	
	position: relative;
	margin: 0 0 0 0;
	overflow: hidden;
	background-color: #CED7E6;
}

.fv_img_sp {
	display: none;
}	

.fv_img_pc {
	width: 100%;
	height: 100vh;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	display: block;
	background-image: url(../img/top/pc_top_img.jpg);
	background-size: cover;
	background-position: center;
}

.fv_text_1 {
	position: absolute;
	top: 17.12%;
	left: 0;
	right: 0;
	text-align: center;
	margin: 0 auto;
	z-index: 5;
	font-weight: bold;
	font-size: 300%;
	line-height: 1.5;
	color: #404040;
}

.fv_title_pc {
	position: absolute;
	width: 775px;
	top: 25.5%;
	left: 0;
	right: 0;
	text-align: center;
	margin: 0 auto;
	z-index: 5;
}

.fv_title_sp {
	display: none;
}

.fv_bk_text  {
	width: 100%;
	height: 18vh;
	background-color: #275F83;
	position: absolute;
	bottom: 0;
	left: 0;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
	z-index: 5;
	color: #ffffff;
}

.text_waku {
	width: 900px;
	height: 100%;
	margin: 0 auto 0 auto;
	padding: 0 0 0 0;
	position: relative;
}

.fv_text_2 {
	position: absolute;
	width: 420px;
	height: 8rem;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto 0 auto 0;
	text-align: justify;
	z-index: 10;
	font-size: 140%;
	line-height: 1.5;
	color: #fff;
}

.fv_text_3 {
	position: absolute;
	width: 420px;
	height: 8rem;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto 0 auto 0;
	text-align: justify;
	z-index: 10;
	font-size: 140%;
	line-height: 1.5;
	color: #fff;
	border-left: 1px solid;
	padding-left: 30px;
}


/* jiseki */
#jiseki {
	width: 100%;
	margin: 0 0 0 0;
	overflow: hidden;
	background-color: #0F4C75;
}

.jiseki_pc {
	width: 700px;
	margin: 0 auto 0 auto;
}

.jiseki_sp {
	display: none;
}


/*news */
#news {
	width: 700px;
	margin: 60px auto 60px auto;
	overflow: hidden;
}

#news h2 {
	width: 155px;
	white-space: nowrap;
	margin: 0 auto 40px auto;
	text-align: center;
	font-weight: bold;
	color: #0F4C75;
	border-bottom: 1px solid;
	line-height: 1.3;
	font-size: 260%;
}

#news h2 span {
	font-size: 70%;
	padding-left: 5%;
}

.news_w {
	width: 700px;
	margin: 0 auto 15px auto;
	padding-bottom: 15px;
	border-bottom: 1px solid #B3B3B3;
	overflow: hidden;
}

.news_text {
	width: 480px;
	margin: 0 0 0 0;
	float: left;
}

.news_text2 {
	width: 700px;
	margin: 0 0 0 0;
}

.news_date {
	width: 100px;
	margin: 0 0 5px 10px;
	line-height: 1.5;
	font-size: 150%;
}

.news_p {
	margin: 0 0 0 10px;
	line-height: 1.5;
	font-size: 150%;
	text-align: justify;
}

.news_photo {
	width: 200px;
	margin: 0 0 0 0;
	float: right;
}


/* service */
#service {
	width: 100%;
	margin: 0 auto 0 auto;
	overflow: hidden;
	background-color: #F1F6F9;
	padding-bottom: 60px;
}

#service h2 {
	width: 220px;
	white-space: nowrap;
	margin: 60px auto 40px auto;
	text-align: center;
	font-weight: bold;
	color: #0F4C75;
	border-bottom: 1px solid;
	line-height: 1.3;
	font-size: 260%;
}

#service h2 span {
	font-size: 70%;
	padding-left: 6%;
}

.service_w {
	width: 900px;
	margin: 0 auto 0 auto;
}

.service_1 {
	width: 285px;
	float: left;
}

.service_2 {
	width: 585px;
	float: right;
	border-left: 1px solid #0F4D75;
	padding-left: 14px;
}

.service_m_1 {
	width: 285px;
	background-color: #0F4C75;
	margin: 0 0 15px 0;
	color: #ffffff;
	padding: 10px 0 6px 0;
	font-size: 160%;
	line-height: 1.2;
	text-align: center;
}

.service_m_2 {
	width: 585px;
	background-color: #0F4C75;
	margin: 0 0 15px 0;
	color: #ffffff;
	padding: 10px 0 6px 0;
	font-size: 160%;
	line-height: 1.2;
	text-align: center;
}

.service_l_1 {
	width: 269px;
	height: 53px;
	background-color: #77ABB7;
	margin: 0 15px 15px 0;
	color: #ffffff;
	padding: 8px;
	font-size: 170%;
	line-height: 1.4;
	float: left;
}

.service_l_2 {
	width: 269px;
	height: 53px;
	background-color: #77ABB7;
	margin: 0 0 15px 0;
	color: #ffffff;
	padding: 8px;
	font-size: 170%;
	line-height: 1.4;
	float: left;
}

.service_l_3 {
	width: 269px;
	height: 53px;
	background-color: #77ABB7;
	margin: 0 15px 0 0;
	color: #ffffff;
	padding: 8px;
	font-size: 170%;
	line-height: 1.4;
	float: left;
}

.service_l_4 {
	width: 269px;
	height: 53px;
	background-color: #77ABB7;
	margin: 0 0 0 0;
	color: #ffffff;
	padding: 8px;
	font-size: 170%;
	line-height: 1.4;
	float: left;
}

.service_l_1 p, .service_l_3 p, .service_l_4 p {
	padding: 5px 0 0 15px;
	border-left: 4px solid #ffffff;
}

.service_l_2 p {
	padding: 18px 0 18px 15px;
	border-left: 4px solid #ffffff;
	line-height: 1.0;
}

a:hover div.service_m_1, a:hover div.service_m_2, a:hover div.service_l_1, a:hover div.service_l_2, a:hover div.service_l_3,  a:hover div.service_l_4 {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}

/* investment */
#investments {
	width: 100%;
	margin: 0 auto 0 auto;
	overflow: hidden;
	background-color: #ffffff;
	padding-bottom: 50px;
}

#investments h2 {
	width: 230px;
	white-space: nowrap;
	margin: 60px auto 0 auto;
	text-align: center;
	font-weight: bold;
	color: #0F4C75;
	border-bottom: 1px solid;
	line-height: 1.3;
	font-size: 260%;
}

#investments h2 span {
	font-size: 70%;
	padding-left: 6%;
}
	
	
#investments h3 {
	width: 100px;
	white-space: nowrap;
	margin: 40px auto 20px auto;
	padding: 8px 3px 3px 3px;
	text-align: center;
	color: #ffffff;
	background-color: #0F4C75;
	line-height: 1.3;
	font-size: 140%;
}

.investments_w {
	width: 908px;
	margin: 0 auto 10px auto;
	overflow: hidden;
}

.inve_1 {
	width: 217px;
	margin: 0 5px 10px 5px;
	float: left;
}

.inve_2 {
	width: 217px;
	margin: 0 5px 10px 5px;
	float: left;
}

/* company */
#company {
	width: 100%;
	margin: 0 0 0 0;
	padding: 0 0 60px 0;
	overflow:hidden;
	background-color: #F1F6F9;
	border-bottom: 4px solid #ffffff;
}

#company h2 {
	width: 205px;
	white-space: nowrap;
	margin: 60px auto 40px auto;
	text-align: center;
	font-weight: bold;
	color: #0F4C75;
	border-bottom: 1px solid;
	line-height: 1.3;
	font-size: 260%;
}

#company h2 span {
	font-size: 70%;
	padding-left: 6%;
}

#company a:hover {
	color: #1E90FF;
	text-decoration: none;
}

/* history */
#history {
	width: 100%;
	margin: 0 0 0 0;
	padding: 0 0 60px 0;
	overflow: hidden;
	background-color: #ffffff;
}

#history h2 {
	width: 140px;
	white-space: nowrap;
	margin: 60px auto 40px auto;
	text-align: center;
	font-weight: bold;
	color: #0F4C75;
	border-bottom: 1px solid;
	line-height: 1.3;
	font-size: 260%;
}

#history h2 span {
	font-size: 70%;
	padding-left: 6%;
}

#history table span {
	font-size: 85%;
}

table {
	width: 700px;
	margin: 0 auto 0 auto;
	font-size: 150%;
	border-top: 1px solid;
}

th {
	width: 20%;
	white-space: nowrap;
	padding: 2% 2% 1.5% 2%;
	line-height: 1.7;
	border-bottom: 1px solid;
}

td {
	padding: 2% 2% 1.5% 2%;
	text-align: justify;
	line-height: 1.7;
	border-bottom: 1px solid;
}

.map {
	text-align: right;
	color: #1E90FF;
	margin: 5px 0 0 0;
}

.map a {
	color: #1E90FF;
}

.map a:hover {
	color: #1E90FF;
	text-decoration: none;
	filter: alpha(opacity=60);
	-moz-opacity: 0.6;
	opacity: 0.6;
}

.map_btn {
	background-color: #1E90FF;
	padding: 3px 5px 1px 5px;
	color: #ffffff;
}



.history_t2 {
	border-bottom: 1px dotted;
	margin-bottom: 10px;
	padding-bottom: 10px;
		
}

















}