@charset "UTF-8";

@media screen and (max-width: 640px) {
}
/*-----------------------------------

	main

-----------------------------------*/
#main_pc{
	width:1200px;
	margin: 0 auto;
}
#main_sp{
	display:none;
}
@media screen and (max-width: 840px) {
	#main_pc{
		width:100%;
		margin: 0 auto;
	}
}
@media screen and (max-width: 640px) {
	#main_pc{
		display:none;
	}
	#main_sp{
		display: block;
	}

}
/*-----------------------------------

	top_contact

-----------------------------------*/
#top_contact{
	text-align:center;
	padding: 60px 0;
}
#top_contact h2{
	font-size:28px;
	line-height: 2.8rem;
	letter-spacing: 0.4rem;
	color:#2c4b64;
	margin-bottom: 20px;
}
#top_contact ul{
	width: 735px;
	margin: 30px auto;
}
#top_contact ul li{
	float: left;
}
#top_contact ul li:first-child{
	color:#2c4b64;
	text-align:left;
	padding-left: 40px;
	margin-top: 5px;
}
#top_contact ul li:first-child span{
	font-size: 36px;
	letter-spacing:0.5rem;
	display: inline-block;
	position:relative;
}
#top_contact ul li:first-child span:before{
	content:url(../img/common/icon_tel.svg);
	width: 28px;
	height: 42px;
	position:absolute;
	left: -40px;
}
#top_contact ul li:nth-child(2){
	margin-left: 50px;
}
#top_contact ul li:nth-child(2) a{
    width: 360px;
    height: 60px;
    text-align: right;
    display: block;
    color: #fff;
    background: #b2ad77;
	position:relative;
    padding:16px 50px 0 25px;
	border-bottom:solid 5px #2c4b64;
    box-sizing: border-box;
}
#top_contact ul li:nth-child(2) a:hover{
	background: #a5a06b;
}
#top_contact ul li:nth-child(2) a span{
	font-size:28px;
	float: left;	
}
#top_contact ul li:nth-child(2) a:after {
    color: #fff;
    top: 28%;
    right: 15px;
}
#top_contact ul li:nth-child(2) a:hover:after {
    right: 30px;
}
@media screen and (max-width: 840px) {
	#top_contact ul{
		width: 100%;
		text-align:center;
		margin: 30px auto;
	}
	#top_contact ul li{
		float: none;
	}
	#top_contact ul li:first-child {
		text-align: center;
		padding-left: 40px;
		margin-top: 5px;
	}
	#top_contact ul li:nth-child(2) {
		width: 360px;
		margin: 20px auto 0;
	}
}
@media screen and (max-width: 640px) {
	#top_contact {
    	padding: 30px 0;
	}
	#top_contact h2{
		font-size:20px;
		line-height: 2.8rem;
		letter-spacing: 0.2rem;
		margin-bottom: 10px;
	}
	#top_contact ul li:first-child span {
		font-size: 28px;
		letter-spacing:0.2rem;
	}
	#top_contact ul li:nth-child(2) {
		width: 80%;
		margin: 20px auto 0;
	}
	#top_contact ul li:nth-child(2) a {
		width: 100%;
		height: 60px;
		padding: 16px 50px 0 25px;
	}
	#top_contact ul li:nth-child(2) a span {
		font-size: 20px;
		letter-spacing:0.2rem;
	}
}
/*-----------------------------------

	service

-----------------------------------*/
#service{
	text-align:center;
	padding: 60px 0;
	background:url(../img/index/bg_service_01.png), url(../img/index/bg_service_02.png),url(../img/common/bg_gray.png);
	background-position:left top,right bottom;
	background-repeat:no-repeat,no-repeat, repeat;
}
#service h2{
	font-size:14px;
	letter-spacing: 0.4rem;
	color:#2c4b64;
	font-weight: normal;
}
#service h2 span{
	font-size:30px;
	display:block;
}
#service ul {
    margin: 30px 0;
}
#service ul li{
	width: 495px;
	float: left;
	margin-right: 30px;
}
#service ul li:first-child,
#service ul li:nth-child(2){
	margin-bottom: 30px;
}
#service ul li:nth-child(2n){
	margin-right: 0;
}
#service ul li a{
	width: 100%;
	height: 125px;
	background:#fff;
	display:block;
	position:relative;
	padding: 35px 90px 15px 80px;
	box-sizing:border-box;
}
#service ul li a:hover{
	background:#fbfafa;
}
#service ul li a:after{
	color:#0d3b60;
	top: 40%;
	right:15px;
}
#service ul li a:hover:after{
	right:30px;
}
#service ul li a h3{
    font-size: 12px;
	text-align:left;
	margin:5px 0 0 10px;
}
#service ul li a h3 span{
    font-size: 21px;
	color:#0d3b60;
	display:block;
}
#service ul li:last-child{
	margin-right: 0;
}
#service ul li p.text{
	font-size: 14px;
	line-height:2.1rem;
	text-align:left;
	margin-top: 10px;
}
#service ul li .icon{
	width: 72px;
}
#service a.btn_link{
	color:#fff;
	background:#2c4b64;
	display: inline-block;
	position:relative;
	padding:20px 60px 20px 50px;
}
#service .btn_link:after{
	color:#fff;
	top: 28%;
	right:15px;
}
#service .btn_link:hover:after{
	right:30px;
}
#service a.btn_link:hover{
	background:#153752;
}
@media screen and (max-width: 840px) {
	#service ul li{
		width: 100%;
		float: none;
		margin-right: 0;
	}
	#service ul li:first-child,
	#service ul li:nth-child(2),
	#service ul li:nth-child(3){
		margin-bottom: 30px;
	}
	#service ul li a {
		height: 100px;
		position: relative;
		padding: 22px 60px 15px;
	}
}
@media screen and (max-width: 640px) {
	#service{
		padding: 30px 0;
	}
	#service h2{
		letter-spacing:0.2rem;
	}
	#service h2 span{
		font-size:20px;
		display:block;
	}
	#service ul li a {
		height: 90px;
		padding: 22px 10px 15px;
	}
	#service ul li a h3 span{
		font-size: 18px;
	}
	#service ul li .icon {
		width: 55px;
	}
}
/*-----------------------------------

	greeting

-----------------------------------*/
#greeting{
	height: 380px;
}
#greeting #greeting_left{
	width: 50%;
	height: 380px;
	float: left;
}
#greeting_left_inner{
	float: right;
	padding:60px 40px 0 0;
	box-sizing: border-box;
}
#greeting_left_inner h2{
	font-size: 28px;
	color:#2c4b64;
	letter-spacing:0.4rem;
	line-height:3.4rem;
	margin-bottom: 20px;
}
#greeting_left_inner .name{
	font-size: 18px;
	color:#2c4b64;
	text-align:right;
	margin-top: 10px;
}
#greeting #greeting_right{
	width: 50%;
	height: 380px;
	background:url(../img/index/greeting_img_01.jpg) no-repeat;
	background-size: cover;
	background-position: center bottom;
	float: right;
}
#greeting #greeting_right_inner{
	padding:80px 0 0 40px;
}
#greeting #greeting_right_inner a{
    width: 440px;
    height: 95px;
	color: #313131;
    text-align: right;
    display: block;
    background: #fff;
	position:relative;
    padding:37px 50px 0 25px;
	border-bottom:solid 5px #2c4b64;
    box-sizing: border-box;
}
#greeting #greeting_right_inner a:hover{
	background: #fbfafa;
}
#greeting #greeting_right_inner a span{
	font-size:21px;
	color:#2c4b64;
	float: left;	
}
#greeting #greeting_right_inner a:after {
    color: #0d3b60;
    top: 40%;
    right: 15px;
}
#greeting #greeting_right_inner a:hover:after {
    right: 30px;
}
#greeting #greeting_right_inner a:first-child{
	margin-bottom: 30px;
}
@media screen and (max-width: 840px) {
	#greeting {
		height: auto;
	}
	#greeting #greeting_right {
		width: 100%;
		height: auto;
		float: none;
		background-position: right bottom;
	}
	#greeting #greeting_right_inner {
		padding: 20px 2.5% 60px;
		box-sizing: border-box;
	}
	#greeting #greeting_left {
		width: 100%;
		height: auto;
		padding: 60px 2.5% 20px;
		float: none;
		box-sizing: border-box;
	}
	#greeting_left_inner {
		float: none;
		padding: 0;
		box-sizing: border-box;
	}
	#greeting #greeting_right_inner a {
		width: 100%;
		height: 90px;
		padding: 35px 50px 0 25px;
	}
	#greeting #greeting_right_inner a:first-child {
		margin-bottom: 20px;
	}
}
@media screen and (max-width: 640px) {
	#greeting #greeting_right_inner {
		padding: 20px 2.5% 30px;
	}
	#greeting #greeting_left {
		padding: 30px 2.5% 20px;
	}
	#greeting_left_inner h2 {
		font-size: 20px;
		line-height: 2.8rem;
		letter-spacing:0.2rem;
		margin-bottom: 10px;
	}
	#greeting_left_inner .name {
		font-size: 16px;
		margin-top: 10px;
	}
	#greeting #greeting_right_inner a span{
		font-size:18px;
	}
}
/*-----------------------------------

	info

-----------------------------------*/
#info{
	padding: 60px 0;
}
#info h2{
	font-size: 24px;
	letter-spacing:0.4rem;
	color:#2c4b64;
	margin-bottom: 15px;
}
#info dl dt{
	width: 120px;
	float: left;
	padding: 10px 0;
}
#info dl dd{
	padding: 10px 0 10px 120px;
	border-bottom:solid 1px #f4f4f4;
}
@media screen and (max-width: 640px) {
	#info{
		padding: 30px 0;
	}
	#info h2 {
		font-size: 20px;
		line-height: 1.8rem;
		margin-bottom: 0;
	}
	#info dl dt{
		width: 100%;
		float: none;
		padding: 10px 0 0;
	}
	#info dl dd{
		padding: 0 0 10px;
		border-bottom:solid 1px #dfdfdf;
	}
}
