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

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
END*/

body{
	margin:0;
	padding:0;
	font-family:"メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#666666;
	line-height: 1.5;
}


a,
a:link,
a:visited {
	color:#005457;
}

a:hover {
}

img {
	max-width: 100%;
}

h2,h3,h4,h5{
	font-weight: normal;
	font-size:1.75em;
  	margin:0.5em auto 0.5em auto;
	/* width:70%; */
  	line-height:1.4em;
  	text-align:left;
	word-break: keep-all;
}
  
h2{
	font-size:2.25em;
	}
 

h2 img{
	display:block;
	margin:20px auto 15px;
}

h4{
	font-size:1.7em;}


h5{font-size:1.25em;
	font-weight:bold}
		

h6{
	font-weight:bold;
	margin:0.3em 0}
	
#wrapper{
	width:100%;
	height:auto;
	background-repeat:no-repeat;
	background-position:center top;
	background-size:100%;}

p{	max-width:70%;
	margin:10px auto;
	text-align:left;}

.v_max{
	width:100%}
.v_mid{
	width:100%;
	max-width:70%;
	margin:auto}
	
@media (width <= 845px) {
	.v_mid{
		max-width: 90%;
	}
}
.t_left{
	text-align:left;}
.t_center{
	text-align:center;}
/*見出し2本線/////////////////////*/

.sideLine{
  position: relative;
  top: 0;
  left: 0;
  text-align:center}
  
.sideLine span:not([class]){
  background: #fff;
  padding: 0 20px;
  position: relative;
  z-index:5;}
  
 
.grayback .sideLine span{
  background: #EDEDED;
  padding: 0 20px;
  position: relative;
  z-index:5;}
  
.sideLine:before{
	 content: "";
  display: block;
  border-top: solid 1px #EDEDED;
  border-bottom: solid 1px #EDEDED;
  width: 100%;
  height: 5px;
  position: absolute;
  top: 40%;
  z-index:1;
  }
  
 
.grayback .sideLine:before{ 
  border-top: solid 1px #323232;
  border-bottom: solid 1px #323232;
  }

.sideLine.green:before{ 
  border-top: solid 1px #007958;
  border-bottom: solid 1px #007958;
  }
 
/*//////////////////////////////////////////////////*/
.grayGradi{
	background: linear-gradient(#EDEDED,#fff 100px)}

/*//////////////////////////////////////////////////*/
table{
	margin-bottom:40px;
	text-align:left;
	max-width:1000px;}
	
td{
	padding:15px}
	
th{
	width:25%;
	padding:15px;}
	
ul.normal_list{
	text-align:left;
	list-style-type:none;
	max-width:calc(70% + 1.0em);
	margin:auto;
	position:relative;
	left:1.2em;}
	

ul.normal_list li:before{
	content:"・";
	margin-left:-1.0em}
 /*文字パレット////////////////////////*/
	
.yellow{
	color:#FFFF00;}
	
.red{
	color:#AA0000;}
	

.green{
	color:#007958;}

.big{
	font-size:1.4em;}
	

.small{
	font-size:0.6em;}
	
.bold{
	font-weight:bold}
	
/*header//////////////////////////////////////////////////*/

header{
	width:100%;
	color:white;
	font-size:20px;
	line-height:1.2em
	}
	
header a,
header a:link,
header a:visited {
	text-decoration:none;
}

	
nav li{
	display:inline-block;
	margin:0 auto 0;
}
	
#nav_top{
	height:100px;
	width:100%;	
	-ms-flex-pack: justify; /*IE10*/
-webkit-box-pack: justify; /* Android4.3以下、Safari3.1〜6.0 */
-webkit-justify-content: space-between; /* Safari6.1以降 */
display: -ms-flexbox; /* IE10 */
display: -webkit-box; /* Android4.3以下、Safari3.1〜6.0 */
display: -webkit-flex; /* Safari6.1以降 */
	display:flex;
	align-items:center;
	 -webkit-box-pack: center;
     -ms-flex-pack: center;
	justify-content:  space-between;
	margin:0 auto;
	padding:0;

	}


#nav_top a,
#nav_top a:link,
#nav_top a:visited {
		color:#007857;
}
	
#nav_top li{
		width:auto;
	}
	

#nav_top li:nth-child(1){
	margin-left:0 !important;}
	
#nav_top li:nth-child(1) img{
	height:100px;
	object-fit: contain;
}
	
	
#nav_top li:nth-child(2){
	position:relative;
	top:5px;
	left:3px;
	max-width: 55%;
	}

#nav_top li:nth-child(3){
	margin-right:2em !important;}
	
#nav_bottom{
	flex-shrink:0;
  display: flex;
	margin:0 auto;
	height:70px;
	background-color:#007857;
}



#nav_bottom a,
#nav_bottom a:link,
#nav_bottom a:visited {
	color:white;
	width:100%;
	height:100%;
}

#nav_bottom ul{
	}

#nav_bottom li{
	background-color:#007857;
	border-right:solid 2px #005457;
	align-self:center;
	width:calc(100%/2);/* メニューの数により増減 */
	height:100%;
	margin: auto;
	}
	
#nav_bottom li:last-child{
	border-right:none;
}	

#nav_bottom a{
	display: block;
	height:100%;
	text-align:center;}

#nav_bottom img{
	display:inline-block;
	position:relative;
	top:5px;
	margin:15px 8px;}

#nav_bottom li p{
	margin:0;
	display:inline-block;
	text-align:left;
	position:relative;
	top:-15px;
}

#nav_bottom li:nth-child(2) p{
	top:-17px;}
	

#nav_bottom li:nth-child(3) p{
	top:-2px;
}
#nav_bottom li:nth-child(3) img{
	top:7px;
}

@media (width <= 845px) {
	#nav_bottom li:nth-child(2) p{
		top:-5px;
	}
}

/*footer/////////////////////////////////////////////////////////////////*/

footer a,
footer a:link,
footer a:visited {
	color:white;
	text-decoration:none
}

footer{
	color:white;
	background-color:#005457;
	padding:40px 20px;
	text-align:center;
	min-height:275px;}

footer ul{
	display:inline-flex;
     flex-direction: column;
	 vertical-align: text-top;
	 text-align:left;
	 margin-left:50px}
	 
	
footer ul li {
	list-style-type:none;
  	position: relative;
	margin:8px 0;
}

footer ul li:before {
  display: block;
  content: '';
  position: absolute;
  top: .65em;
  left: -1em;
  width: 10px;
  height: 4px;
  background-color:#007857;
}

footer .footer_rogo li:before{
  background-color:transparent;
	  }
footer .footer_rogo{
	width:170px;
  position: absolute;
	left:1em;}
		 
#copyright{
	text-align:center;
	position:relative;
	bottom:-110px;
	font-size:10px;
}
	
.center_box{
	display:inline-block;
	}
	
footer .right{
  position: absolute;
	right:1em;
    text-align:left;
	display:inline-block;
    width:30%;
    font-size:0.8em;
	word-break: keep-all;
	}
	

@media (width <= 845px) {
	footer ul {
		margin-left: 0;
		width: 100%;
	}
	footer .footer_rogo,
	footer .right {
		position: static;
	}
	footer .footer_rogo {
		 margin-left:0;
		 width: inherit;
	}
	footer .right {
		width: 100%;
	}
	.center_box{
		margin-bottom: 2em;
	}
	#copyright{
		bottom:-50px;
	}
}

/*content///////////////////////////////////////////////////////////////////////////*/


#conteiner{
	width:100%;
	margin:0;}

#conteiner img.headimage{
	margin:0 auto;
	width:100%;
	max-width:70%;}
	
#conteiner span.blueGradi{
	display:block;
	background-repeat:repeat-x;
	background-size: contain;
	width:100%;
	max-width:100%;}
	
#conteiner.index  span.blueGradi{	background-image:url(image/main_back.jpg);}
#conteiner.officer span.blueGradi{	background-image:url(image/main_officer_back.jpg);}
	
#content{
	text-align:center;
	width:100%;
	margin:0 auto;
	margin-bottom:85px;
	padding-top:50px;
	min-height:30vh;}
	

	
#content.txt h6{
	max-width:70%;
	margin:30px auto 10px auto;
	text-align:left;}
/*//////////////////////////////////////////////////////////////////////////////*/
.inline_box{
	list-style-type:none;
	margin:auto;
	text-align:left;
	display:inline-block;
	}
	
.inline_box li{
	display:inline-block;
	width:calc(100%/3.3);
	height:100px;
	vertical-align:bottom;}
	
.grayback{
	background-color:#EDEDED;
	width:100%;
	padding:40px 0 50px;
	margin:50px auto}
	
.lineBlock{
	border:1px solid #656565;
	max-width:70%;
	margin:40px auto;}
	

.lineBlock p{
	margin:20px}
	
.hover_btn :hover{
	opacity:0.6;
	}

@media (width <= 845px) {
	.inline_box li{
		display:block;
		width:100%;
	}
}
	
/*index///////////////////////////////////////////////////////////////////////////*/

.movie li{
	height:300px;
	min-width:280px;}

	
@media (width <= 845px) {
	.movie li{
		height:240px;
	}
}
/*officer///////////////////////////////////////////////////////////////////////////*/
	
.officer .lineBlock p{
	max-width:100%}
	
	
/*injury/////////////////////////////////////////////////////////////////////*/
.h_green{
	background-color:#005457;
	width:100%;
	text-align:center;
	height:100%;
	line-height:60px;}
	
.h_green img{
	vertical-align:middle;
	display:inline;
	position:relative;
	top:-3px;}
	

.injury .lineBlock{
	height:auto;
	max-width:50%;
	}
	
.injury .lineBlock h5{
	position:relative;
	top:-0.7em;
	left:2%;
	background-color:white;
	width:1.5em;
	text-align:center;
	margin:0;}
	

.injury table.middle{
	text-align:center;
	table-layout:fixed;
	width:100%;
	max-width:50%;
	margin:0 auto;
	}
	

.lineBlock table.middle{
	max-width:80%;}
	
.injury table.middle td{
	padding:0;
	vertical-align:middle;
	text-align:center;
}
	

.injury .lineBlock ul.normal_list,
.injury .lineBlock h6{
	margin:10px auto 12px 12px;
	line-height:1.0em;
	font-size:1.2em;}	
	

	
.injury_TOPICS img{
	width:100%;}
	

.injury_TOPICS div{
	vertical-align:top}

.injury_TOPICS div:first-child{
	width:43%}	

.injury_TOPICS div:last-child{
	margin:0 auto auto 50px;
	width:30%;}
	
.injury_TOPICS p{
	margin: 0.5em 0;
		max-width:100%;}

.injury .grayback p.t_center{
	position:relative;
	top:-0.5em;}

.blackGradi{
	background-image:url(image/injury_image02_back.png);
	background-repeat:repeat-x;
	background-size: contain;
	max-width:100%}

.blackGradi img{
	max-width:70%;
}

@media (width <= 845px) {
	.injury .lineBlock,
	.injury table.middle {
		max-width:100%;
	}
	.injury table.middle td:nth-of-type(2) {
		width: 46px;
	}
	.injury .lineBlock table.middle td:nth-of-type(2) {
		width: auto;
	}
	.blackGradi img{
		max-width:100%;
	}
	.injury .t_center,
	.injury .t_center .v_mid {
		max-width: 100%;
	}
	.injury_TOPICS div:first-child,
	.injury_TOPICS div:last-child{
		display: block;
		width:100%;
	}
	.injury_TOPICS div:last-child {
		margin-left: auto;
	}
}
/*check/////////////////////////////////////////////////////////*/
.checksheet{
	background-color:#e2cea1;
	border-top:solid 15px #b59b69;
	box-shadow:0 0 5px 5px #EDEDED;
	margin:0 1.2em;
	position:relative;
	top:-40px;}

.check_paper{
	background-color:white;
	width:90%;
	box-shadow:0 0 10px 1px #7B715A;
	margin: 3em auto;
	max-width:80%;}
	

.check_paper ul li{
	text-align:center;
	position:relative;	padding:1em;}

.check_paper h3.h_green{
	margin:0}
	
	
.check_paper li:nth-child(even){
	background-color:#eeeeee;}
	
.check_paper li:before{
	display: inline-block;
	content:url('image/icon_check.png');
	position: absolute;
	margin:2.4em 0;/*  .check_paper ul li div{  のマージン上下の値+0.1em*/
	}
	
.check_paper ul li div{
	display:inline-block;
	width: 100%;
	margin:2.3em auto;
	}
.check_paper ul h3,.check_paper ul p{
	width:90%;
	max-width:1000px;
	padding-left: 1em;
}


/*inquiry**********************************************************************/
#formWrap{

	text-align:center;}
.formTable{
	margin:auto;}
.formTable th{
	vertical-align:top;}

@media (width <= 1097px) {
	#formWrap.v_mid {
		max-width: 100%;
	}
	.formTable th,
	.formTable td {
		display: block;
		max-width: 90vw;
	}
	.formTable th{
		width: 100%;
	}
	.formTable td {
		padding-top: 0;
	}
	.formTable td select,
	.formTable td input[type="text"],
	.formTable td textarea {
		display: block;
		max-width: 80%;
		min-height: 2em;
	}
}
.submit input{
	border-radius:0;
	border:none;
	background-color:#AA0000;
	color:white;
	width:215px;
	height:60px;
	font-size:1.2em;
	margin:2em 1em;
}

.submit.back input{
	background-color:#999;}

.submit input:hover{
	cursor:pointer;}
	

.noteTable {
	max-width:40em;
	text-align:left;
	}
.noteTable tr{
	border-bottom:1px solid #EDEDED;
	}
	
.noteTable th{
	text-align:center;
	width:40%;
	padding: auto 3em;}


/*company**********************************************************************/

.company .inline_box li:first-child{
	margin-right:1.2em;}
	
.company table{
	margin-bottom:3.5em;}