@charset "utf-8";

footer{
	margin-top:-80px;
	}
#headbg .bg{
	background:url(../img/message/headbg.jpg) no-repeat center bottom 10%;
	-webkit-background-size:cover;
	background-size:cover;
	}
#index1{
	max-width:830px;
	margin:0 auto;
	overflow:hidden;
	zoom:1;
	padding:150px 70px 100px 70px;
	position:relative;
	}
#index1 h2{
	font-size:21px;
	line-height:2.3;
	letter-spacing:4.8px;
	}
#index1 h3{
	position:absolute;
	right:70px;
	top:150px;
	width:220px;
	font-size:13px;
	}
#index1 h3 img{
	margin-bottom:15px;
	-webkit-box-shadow:0px 0px 16px 3px rgba(0,0,0,0.14);
	-moz-box-shadow:0px 0px 16px 3px rgba(0,0,0,0.14);
	box-shadow:0px 0px 16px 3px rgba(0,0,0,0.14);
	}
#index1 h3 strong{
	font-size:18px;
	letter-spacing:3.3px;
	display:block;
	margin-top:1px;
	}
#index1 h3 strong span{
	font-size:13px;
	letter-spacing:2.2px;
	display:inline-block;
	margin-right:10px;
	vertical-align:1px;
	}
#index1 p{
	margin-top:45px;
	letter-spacing:2.95px;
	}
.wrap{
	overflow:hidden;
	width:100%;
	}
.wrap ul{
	display:flex;
	min-width:100%;
	width:min-content;
	animation:40s linear infinite sliderAnimation;
	}
.wrap ul li{
	position:relative;
	list-style-type:none;
	float:left;
	overflow:hidden;
	zoom:1;
	}
.wrap ul li img{
	height:100%;
	width:auto;
	max-width:none;
	}
@keyframes sliderAnimation{ 100%{ transform:translateX(-50%); }}
#index2{
	max-width:830px;
	margin:0 auto;
	overflow:hidden;
	zoom:1;
	padding:100px 70px 0px 70px;
	}
#index2 h3{
	font-size:21px;
	letter-spacing:3.6px;
	margin-top:140px;
	}
#index2 table{
	width:100%;
	margin-top:15px;
	}
#index2 table tr th{
	font-size:15px;
	text-align:left;
	vertical-align:top;
	padding:30px 20px 15px 0;
	border-bottom:1px solid #000;
	position:relative;
	width:140px;
	}
#index2 table tr th:after{
	content:"";
	display:block;
	width:1px;
	height:35px;
	background-color:#000;
	position:absolute;
	right:0;
	bottom:0;
	}
#index2 table tr td{
	font-size:14px;
	text-align:left;
	vertical-align:top;
	padding:30px 0px 15px 25px;
	border-bottom:1px solid #000;
	}
#index2 table tr td span{
	display:inline-block;
	margin-left:15px;
	}
#index2 table tr td strong{
	display:block;
	margin:15px 0 5px 0;
	}
#index2 table tr td strong:nth-of-type(1){
	margin-top:0;
	}
#index2 table tr td a{
	text-decoration:underline;
	color:#164332;
	}
#index2 .map{
	padding-top:80px;
	overflow:hidden;
	zoom:1;
	}
#index2 .map .lb{
	float:left;
	width:48%;
	}
#index2 .map .rb{
	float:right;
	width:48%;
	}
#index2 .map .box{
	position:relative;
	width:100%;
	padding-top:65%;
	height:0;
	}
#index2 .map .box iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
	}
#index2 .map h4{
	font-size:15px;
	margin-top:18px;
	}
#index3{
	margin-top:190px;
	border-top:1px solid #000;
	}
#index3 ul{
	overflow:hidden;
	zoom:1;
	}
#index3 ul li{
	float:left;
	width:50%;
	position:relative;
	transition:0.4s;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	border-right:1px solid #000;
	}
#index3 ul li a{
	padding:75px 16% 150px 16%;
	transition:0.4s;
	display:block;
	}
#index3 ul li a:hover{
	background:#164332;
	}
#index3 ul li a:hover h3,
#index3 ul li a:hover p,
#index3 ul li a:hover h4.linkto strong{
	color:#FFF;
	}
#index3 ul li a:hover h4.linkto strong:before{
	background-color:#FFF;
	}
#index3 ul li a:hover h4.linkto strong:after{
	border-color:#FFF;
	}
#index3 ul li a:hover h4.linkto strong span:before{
	background-color:#FFF;
	}
#index3 ul li a:hover h4.linkto strong span:after{
	background:#164332;
	}
#index3 ul li h3{
	font-size:17px;
	letter-spacing:2.3px;
	}
#index3 ul li p{
	font-size:12px;
	margin-top:10px;
	letter-spacing:1.45px;
	}
#index3 ul li h4.linkto{
	margin-top:30px;
	}
@media screen and (max-width:900px){
footer{
	margin-top:-40px;
	}
#index1{
	padding:75px 7% 90px 7%;
	}
#index1 h2{
	font-size:17px;
	line-height:2.2;
	position:relative;
	}
#index1 h2:before{
	content:"代表メッセージ";
	font-size:13px;
	display:block;
	letter-spacing:3.3px;
	margin-bottom:35px;
	}
#index1 h2:after{
	content:"";
	display:block;
	background-color:#000;
	width:115px;
	height:1px;
	position:absolute;
	left:0;
	top:28px;
	}
#index1 h3{
	position:relative;
	right:auto;
	top:auto;
	width:auto;
	margin-top:40px;
	}
#index1 h3 img{
	margin-bottom:18px;
	-webkit-box-shadow:0px 0px 14px 2px rgba(0,0,0,0.1);
	-moz-box-shadow:0px 0px 14px 2px rgba(0,0,0,0.1);
	box-shadow:0px 0px 14px 2px rgba(0,0,0,0.1);
	}
#index1 p{
	margin-top:30px;
	letter-spacing:2.2px;
	}
.wrap ul{
	animation:25s linear infinite sliderAnimation;
	}
.wrap ul li img{
	height:286px;
	}
#index2{
	padding:90px 7% 0px 7%;
	}
#index2 h3{
	margin-top:90px;
	}
#index2 table{
	margin-top:0;
	}
#index2 table tr th{
	padding:30px 0px 10px 0;
	width:100%;
	display:block;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	}
#index2 table tr th:after{
	display:none;
	}
#index2 table tr td{
	font-size:13px;
	padding:12px 0px 0px 0px;
	border-bottom:0;
	width:100%;
	display:block;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	}
#index2 table tr td span{
	display:block;
	margin-left:0;
	}
#index2 .map .lb{
	float:none;
	width:100%;
	}
#index2 .map .rb{
	float:none;
	width:100%;
	margin-top:30px;
	}
#index2 .map .box{
	padding-top:80%;
	}
#index2 .map h4{
	font-size:13px;
	margin-top:12px;
	}
#index3{
	margin-top:100px;
	border-top:0;
	}
#index3 ul li{
	float:none;
	width:auto;
	border-top:1px solid #000;
	border-right:0;
	}
#index3 ul li a{
	padding:70px 7% 70px 7%;
	}
#index3 ul li:nth-of-type(2) a{
	padding-bottom:100px;
	}
#index3 ul li h4.linkto strong{
	display:block;
	}
}