
/*=================================================
 * CSS for PC
 * ================================================= */

#cnt{	padding: 20px 0;}

#system{
}

.topimg{
	font-size: 0;
	line-height: 0;
	text-align: center;
	margin: 0 0 20px 0;
}


/** sys1 **/

.sys1{
	width: 800px;
	margin: 0 auto;
	padding: 0 0 20px 0;
}

.sys1 .s_title{
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 360px;
	font-size: 24px;
	line-height: 18px;
	height: 80px;
	padding-top: 24px;
	border-radius: 40px;
	margin: 0 0 20px 0;
}

.sys1 .s_title em{
	font-size: 11px;
	font-weight: normal;
}

.sys1 .s_title span{
	content: '';
	width: 220px;
	border-bottom-width: 3px;
	border-bottom-style: double;
}
.sys1 .s_title span:nth-of-type(1){
	position: absolute;
	top: 39px;
	left: -220px;
}
.sys1 .s_title span:nth-of-type(2){
	position: absolute;
	top: 39px;
	right: -220px;
}

.sbox1{
	display: table;
	width: 100%;
	font-size: 0;
	line-height: 0;
	table-layout: fixed;
	margin: 0 0 1px 0;
}

.sbox1_l,
.sbox1_r{
	display: table-cell;
	vertical-align: middle;
	height: 60px;
	font-size: 22px;
	line-height: 22px;
	padding: 0 20px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.sbox1_l{
	text-align: left;
	border-top-width: 1px;
	border-left-width: 1px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-left-style: solid;
	border-bottom-style: solid;
}

.sbox1_r{
	text-align: right;
	border-top-width: 1px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-bottom-style: solid;
}


/** sys2 **/

.sys2{
	font-size: 0;
	line-height: 0;
	padding: 0 10px;
}

.sys2_in{
	width: 540px;
	vertical-align: top;
	margin: 0 0 20px 0;
	padding: 0 10px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.sys2 .sbox2{
	padding: 15px;
	border-left-width: 1px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-left-style: solid;
	border-right-style: solid;
	border-bottom-style: solid;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.sys2 .sbox2 .sbox2_in{
	border-width: 1px;
	border-style: solid;
}


/** service **/

#service > div{
	font-size: 0;
	line-height: 0;
	padding: 20px 13px 15px 20px;
	text-align: left;
}

#service > div p{
	display: inline-block;
	vertical-align: top;
	width: calc(100% / 3 - 7px);
	border-width: 2px;
	border-style: solid;
	border-radius: 3px;
	margin: 0 7px 5px 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

#service > div p span{
	display: table;
	width: 100%;
	font-size: 0;
	line-height: 0;
}

#service > div p span em{
	display: table-cell;
	vertical-align: middle;
	height: 36px;
	font-size: 14px;
	line-height: 15px;
	text-align: center;
	padding: 0 3px;
}


/** op **/

#op > div{
	padding: 14px 20px 20px 20px;
}

#op > div table{
	width: 100%;
	font-size: 16px;
	line-height: 20px;
	table-layout: fixed;
}

#op > div tr{
	vertical-align: middle;
}

#op > div th{
	font-weight: normal;
	text-align: left;
	padding: 10px 0 10px 40px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}

#op > div td{
	text-align: right;
	padding: 10px 40px 10px 0;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}


/** area **/

#area > div{
	text-align: left;
	padding: 5px 20px 20px 20px;
}

#area dl{
	display: table;
	font-size: 0;
	line-height: 0;
	width: 100%;
	margin: 0 auto;
}

#area dt,
#area dd{
	display: table-cell;
	vertical-align: middle;
	font-size: 14px;
	line-height: 20px;
}

#area dt{
	width: 155px;
	font-weight: normal;
	text-align: left;
	padding: 10px 0;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

#area dt em{	display: none;}

#area dd{
	padding: 10px 0;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}


/** map **/

#map .gmap{
	border-width: 5px;
	border-style: solid;
	margin: 0 0 10px 0;
}
#map .gmap iframe{	width: 790px;}

#map .mbox{
	display: table;
	width: 100%;
	font-size: 0;
	line-height: 0;
	text-align: left;
}

#map .mbox_l,
#map .mbox_r{
	display: table-cell;
	vertical-align: middle;
	font-size: 14px;
	line-height: 20px;
	height: 75px;
}

#map .mbox_l{
	width: 70px;
	text-align: center;
}
#map .mbox_l em{	display: none;}

#map .mbox_r{
	padding: 0 20px 0 0;
}

#map .mtxt{
	font-size: 14px;
	line-height: 20px;
	text-align: left;
	border-top-width: 1px;
	border-top-style: dotted;
	margin: 0 20px;
	padding: 10px 0 15px 0;
}


/** credit **/

#credit > div{
	padding: 15px 15px 20px 15px;
}

#credit > div p{
	font-size: 14px;
	line-height: 20px;
	text-align: left;
	margin: 0 0 10px 0;
}

#credit > div .bt_bg{	text-align: center;}

#credit > div .bt1{
	display: inline-block;
	width: 250px;
}


/** other **/

.other > div{
	padding: 15px 15px 20px 15px;
}

.other > div p{
	font-size: 14px;
	line-height: 20px;
	text-align: left;
}


/** notes **/

#notes > div{
	padding: 15px;
}

#notes > div p{
	font-size: 12px;
	line-height: 18px;
	text-align: left;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	margin: 0 0 10px 0;
	padding: 0 0 10px 0;
}

#notes > div p:last-of-type{
	margin-bottom: 0;
}


/*=================================================
 * CSS for SP
 * ================================================= */

@media screen and (max-width: 650px) {
	#cnt{	padding: 0;}
	.topimg{
		margin: 0 0 10px 0;
	}
	.topimg img{
		width: 100%;
		max-width: 1060px;
		height: auto;
	}

	/** sys1 **/
	.sys1{
		width: auto;
		margin: 0;
		padding: 0 0 10px 0;
	}

	.sys1 .s_title{
		position: relative;
		display: block;
		width: auto;
		border-radius: 0;
		margin: 0 0 10px 0;
		font-size: 15px;
		font-weight: bold;
		line-height: 16px;
		text-align: center;
		height: 60px;
		padding-top: 13px;
	}
	.sys1 .s_title em{
		font-size: 11px;
		font-weight: normal;
	}
	.sys1 .s_title span{
		display: block;
	}
	.sbox1{
		width: calc(100% - 20px);
		margin: 0 auto 1px auto;
	}
	.sbox1_l,
	.sbox1_r{
		height: auto;
		font-size: 16px;
		line-height: 16px;
		padding: 12px 10px;
	}

	/** sys2 **/
	.sys2{
		width: 100% !important;
		padding: 0;
	}
	.sys2_in{
		width: 100% !important;
		position: static !important;
		float: none !important;
		vertical-align: top;
		margin: 0 0 10px 0;
		padding: 0;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
	}
	.sys2 .sbox2{
		padding: 0;
		border-left: none;
		border-right: none;
	}
	.sys2 .sbox2 .sbox2_in{	border: none;}

	/** service **/
	#service > div{
		padding: 10px 5px 5px 5px;
		text-align: center;
	}
	#service > div p{
		width: calc(100% / 2 - 10px);
		border-width: 2px;
		margin: 0 5px 5px 5px;
	}

	/** op **/
	#op > div{
		padding: 0 10px 10px 10px;
	}
	#op > div table{
		font-size: 14px;
		line-height: 20px;
	}
	#op > div th{	padding: 10px 0;}
	#op > div td{	padding: 10px 0;}

	/** area **/
	#area > div{
		padding: 0 10px 10px 10px;
	}
	#area dl{
		display: block;
		width: 100%;
		margin: 0;
	}
	#area dt,
	#area dd{
		display: block;
	}
	#area dt{
		width: 100%;
		font-size: 14px;
		line-height: 18px;
		padding: 10px 0 0 0;
		border: none;
	}
	#area dt em{	display: inline;}
	#area dd{
		font-size: 14px;
		line-height: 18px;
		padding: 0 0 10px 0;
	}

	/** map **/
	#map{
		padding: 10px;
	}
	#map .gmap{
		border-width: 5px;
		border-style: solid;
		margin: 0 0 10px 0;
	}
	#map .gmap iframe{ width: 100%;	height: 200px;}
	#map .mbox,
	#map .mbox_l,
	#map .mbox_r{
		display: block;
		width: auto;
		height: auto;
	}
	#map .mbox_l,
	#map .mbox_r{
		font-size: 14px;
		line-height: 20px;
	}
	#map .mbox_l{
		text-align: left;
	}
	#map .mbox_l em{	display: inline;}
	#map .mbox_r{	padding: 0;}
	#map .mtxt{
		margin: 10px 0 0 0;
		padding: 10px 0 0 0;
	}

	/** credit **/
	#credit > div{	padding: 10px 0;}
	#credit > div p{	padding: 0 10px;}
	#credit > div .bt1{
		display: block;
		width: auto;
	}

	/** other **/
	.other > div{	padding: 10px;}

	/** notes **/
	#notes > div{	padding: 10px;}
}