@charset "utf-8";

/******************************************************************************

 TOP

******************************************************************************/

body.top #header {
	margin-bottom: 2px;
}
body.top #main_visual {
	height: 290px;
	margin-bottom: 20px;
	position: relative;
	background: url(../images/top/main_visual_bg.jpg) no-repeat center center;
	background-size: cover;
	overflow: hidden;
	border-bottom: 28px solid #EEEEEE;
}
body.top #main_visual .pic {
	width: 51.66666666666667%;
	min-width: 558px;
	position: absolute;
	left: -123px;
	bottom: 0;
}
body.top #main_visual .pic_over {
	width: 42.666667%;
	left: 0;
}
body.top #main_visual .pic img {
	max-width: 558px;
	position: absolute;
	right: 0;
	bottom: 0;
}
body.top #main_visual .pic_over img {
	width: 100%;
	max-width: inherit;
	min-width: 100%;
	left: 0;
}
body.top #main_visual .inner {
	width: 1080px;
	margin: 0 auto;
	position: relative;
}
body.top #main_visual .txt {
	position: absolute;
	right: 20px;
	top: 81px;
}
body.top #main .bnr_list {
	padding: 0 16px;
}

/******************************************************************************

 COMPANY

******************************************************************************/
body.company #main {
	padding: 30px 0 30px 0;
}
body.company #main_inner {
	padding: 0 16px;
}
body.company #main h1 {
	padding-bottom: 28px;
	margin-bottom: 30px;
	text-align: center;
	border-bottom: 1px solid #CCCCCC;
}
body.company #main #right_column {
}
body.company #main #right_column #message {
	margin-bottom: 60px;
}
body.company #main #right_column #message .txt_01 {
	margin-bottom: 20px;
}
body.company #main #right_column #message .txt_area {
	margin-bottom: 30px;
	font-size: 117%;
}
body.company #main #right_column #message .txt_area p {
	line-height: 1.8;
}
body.company #main #right_column #message .profile {
	font-size: 117%;
	padding-right: 8px;
}
body.company #main #right_column #message .profile p {
	text-align: right;
}
body.company #main #right_column #message .profile p.txt_02 {
	margin-bottom: 15px;
}
body.company #main #right_column #message .profile p.txt_03 {
	margin-bottom: 8px;
}
body.company #main #right_column #message .profile p.txt_04 {
	font-weight: bold;
}
body.company #main #right_column #outline {
	margin-bottom: 50px;
}
body.company #main #right_column .sec_01 {
	margin-bottom: 30px;
}
body.company #main #right_column .sec_01 h2 {
	margin-bottom: 15px;
}
body.company #main #right_column .sec_01 table {
	width: 100%;
	border-collapse: collapse;
}
body.company #main #right_column #group h2 {
	margin-bottom: 30px;
}
body.company #main #right_column #group h3 {
	padding-left: 10px;
	font-size: 150%;
	font-weight: bold;
	margin-bottom: 10px;
}
body.company #main #right_column #group table {
	margin-bottom: 30px;
}
body.company #main #right_column .sec_01 table tr th {
	width: 130px;
	padding: 10px 10px 10px 10px;
	font-size: 117%;
	font-weight: bold;
	border-top: 1px dotted #cccccc;
	white-space: nowrap;
	vertical-align: top;
}
body.company #main #right_column .sec_01 table tr td {
	padding: 10px 10px 10px 10px;
	font-size: 117%;
	border-top: 1px dotted #cccccc;
}
body.company #main #right_column .sec_01 table tr.first th,
body.company #main #right_column .sec_01 table tr.first td {
	border-top: none;
}
body.company #main #right_column .sec_01 table tr td .google_map {
	font-weight: bold;
}
body.company #main #right_column .sec_01 table tr td .tel {
	color: #333;
	text-decoration: none;
}

/******************************************************************************

 拠点一覧

******************************************************************************/
body.branch #main #right_column #branch {
}
body.branch #main #right_column #branch .box {
	margin: 0 8px 40px;
}
body.branch #main #right_column #branch .box h3 {
	padding: 0 12px 8px;
	margin: 0 0 18px;
	background: url(../images/company/company_bg_01.gif) no-repeat center bottom;
	font-size: 150%;
	font-weight: bold;
}
body.branch #main #right_column #branch .box table {
	width: 100%;
	border-collapse: collapse;
	font-size: 117%;
}
body.branch #main #right_column #branch .box table th {
	width: 160px;
	padding: 20px 0 20px 12px;
	font-weight: bold;
	border-bottom: 1px dotted #cccccc;
}
body.branch #main #right_column #branch .box table td.address {
	width: 460px;
	padding: 20px 0 20px 12px;
	border-bottom: 1px dotted #cccccc;
}
body.branch #main #right_column #branch .box table td.address .tel {
	color: #333;
	text-decoration: none;
}
body.branch #main #right_column #branch .box table td.map {
	width: 80px;
	padding: 20px 0 20px 12px;
	border-bottom: 1px dotted #cccccc;
}
body.branch #main #right_column #branch .box table td.map a {
	font-weight: bold;
}


/******************************************************************************

 沿革

******************************************************************************/
body.history #main #right_column #history {
	margin-bottom: 30px;
}
body.history #main #right_column #history table {
	width: 100%;
	border-collapse: collapse;
	font-size: 117%;
}
body.history #main #right_column #history table tr th {
	width: 100px;
	padding: 0 20px 20px 20px;
	background: #D8E9F9;
	font-weight: bold;
	white-space: nowrap;
}
body.history #main #right_column #history table tr:first-child th {
	padding-top: 15px;
}
body.history #main #right_column #history table tr td {
	padding: 0 10px 20px 25px;
}
body.history #main #right_column #history table tr:first-child td {
	padding-top: 15px;
}

/******************************************************************************

 SERVICE

******************************************************************************/
body.service #main {
	padding: 30px 0 30px 0;
}
body.service #main_inner {
	padding: 0 16px;
}
body.service #main h1 {
	padding-bottom: 28px;
	margin-bottom: 25px;
	text-align: center;
	border-bottom: 1px solid #CCCCCC;
}
body.service #main h2 {
	margin-bottom: 60px;
	text-align: center;
}
body.service #main .box {
	margin-bottom: 40px;
	position: relative;
}
body.service #main .box .pic {
	width: 311px;
	float: left;
	text-align: center;
}
body.service #main .box .txt_area {
	width: 648px;
	padding-top: 40px;
	float: right;
	font-size: 117%;
}
body.service #main .box .txt_area p {
	padding: 14px 8px;
	border-top: 2px solid #ccc;
	border-bottom: 2px solid #ccc;
}
/******************************************************************************

 INQUIRY

******************************************************************************/
body.inquiry #main {
	padding: 30px 0 30px 0;
}
body.inquiry #main_inner {
	padding: 0 16px;
}
body.inquiry #main h1 {
	padding-bottom: 28px;
	margin-bottom: 15px;
	text-align: center;
	border-bottom: 1px solid #CCCCCC;
}
body.inquiry #main table#form {
	width: 100%;
	margin-bottom: 30px;
	border-collapse: collapse;
}
body.inquiry #main table#form tr th {
	width: 150px;
	padding: 18px 18px 18px 17px;
	border-top: 1px dotted #cccccc;
	vertical-align: top;
	white-space: nowrap;
}
*+html body.inquiry #main table#form tr th {
	width: 200px;
} 
body.inquiry #main table#form tr th p {
	border-left: 4px solid #cccccc;
	padding-left: 8px;
	font-size: 117%;
}
body.inquiry #main table#form tr th .require {
	padding-left: 10px;
	color: #FF0000;
}
body.inquiry #main table#form tr td {
	padding: 18px 8px 18px 17px;
	border-top: 1px dotted #cccccc;
}
body.inquiry #main table#form tr:first-child th,
body.inquiry #main table#form tr:first-child td {
	border-top: none;
}
body.inquiry #main table#form tr td .example {
	padding-left: 20px;
}
body.inquiry #main table#form tr td textarea {
	font-size: 14px;
}
body.inquiry #main table#form tr td input {
	height: 18px;
}
body.inquiry #main table#form tr td .w200 {
	width: 200px;
}
body.inquiry #main table#form tr td .w330 {
	width: 330px;
}
body.inquiry #main table#form tr td .w590 {
	width: 590px;
}
body.inquiry #main .btn {
	text-align: center;
}
body.inquiry #main .error {
	padding-top: 20px;
}
body.inquiry #main .error .message {
	margin-bottom: 20px;
	font-size: 117%;
}
body.inquiry #main .error .list {
	margin-bottom: 30px;
	font-size: 117%;
}
body.inquiry #main .error .btn {
	text-align: center;
}
body.inquiry #main .confirm {
	padding-top: 20px;
}
body.inquiry #main .confirm .check {
	margin-bottom: 20px;
	font-size: 117%;
}
body.inquiry #main .confirm table {
	width: 100%;
	margin-bottom: 50px;
	border-collapse: collapse;
}
body.inquiry #main .confirm table tr th {
	width: 150px;
	padding: 18px 18px 18px 17px;
	border-top: 1px dotted #cccccc;
	vertical-align: top;
	white-space: nowrap;
}
body.inquiry #main .confirm table tr th p {
	border-left: 4px solid #cccccc;
	padding-left: 8px;
	font-size: 117%;
}
body.inquiry #main .confirm table tr td {
	padding: 18px 8px 18px 17px;
	border-top: 1px dotted #cccccc;
	font-size: 117%;
}
body.inquiry #main .confirm table tr:first-child th,
body.inquiry #main .confirm table tr:first-child td {
	border-top: none;
}
body.inquiry #main .confirm .btn_area {
	text-align: center;
}
body.inquiry #main .confirm .btn_area li {
    display: -moz-inline-box;  
    display: inline-block;
	padding: 0 20px;
}
* html body.inquiry #main .confirm .btn_area li {    
    display: inline;  
    margin-right: 3px;  
    zoom: 1;  
}  
*+html body.inquiry #main .confirm .btn_area li {    
    display: inline;  
    margin-right: 3px;  
    zoom: 1;  
} 
body.inquiry #main .sent {
	padding-top: 20px;
}
body.inquiry #main .sent .messe01 {
	margin-bottom: 100px;
	font-size: 117%;
}
body.inquiry #main .sent .btn_area {
	text-align: center;
}
body.inquiry #main .sent .totoppage {
	font-size: 117%;
	display: inline;
}
body.inquiry #main .sent .totoppage a {
	color: #fff;
	text-decoration: none;
}

/******************************************************************************

 SITEMAP

******************************************************************************/
body.sitemap #main {
	padding: 30px 0 30px 0;
}
body.sitemap #main_inner {
	padding: 0 16px;
}
body.sitemap #main h1 {
	padding-bottom: 28px;
	margin-bottom: 25px;
	text-align: center;
	border-bottom: 1px solid #CCCCCC;
}

body.sitemap #main .box {
}
body.sitemap #main .box ul.parent {
	font-size: 117%;
}
body.sitemap #main .box ul.parent > li {
	margin-bottom: 20px;
}
body.sitemap #main .box ul.parent > li a {
	padding-left: 20px;
	color: #333;
	text-decoration: none;
	background: url(../images/common/icon_03.gif) no-repeat left center;
}
body.sitemap #main .box ul.parent > li a:hover {
	text-decoration: underline;
}
body.sitemap #main .box ul.child {
	padding-left: 20px;
}
body.sitemap #main .box ul.child > li {
	margin: 5px 0;
}
