@charset "UTF-8";

/* ==================================================
contents
================================================== */
#main h2 {
	padding:10px 20px 10px 76px;
	font-size:162.5%;
	margin:1.5em 0 30px;
	clear:both;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
	color:#fff;
	background-color:#ED1D25;
	background-repeat:no-repeat;
	background-position:left top;
}
#main h2:first-child {
	margin-top:0;
}
.amenity #main h2 {
	background-image:url(../images/free/amenity/h2_bg.png);
}
.life #main h2 {
	background-image:url(../images/free/life/h2_bg.png);
}
.energy #main h2 {
	background-image:url(../images/free/energy/h2_bg.png);
}
.recruit #main h2 {
	background-image:url(../images/free/recruit/h2_bg.png);
}
.company #main h2 {
	background-image:url(../images/free/company/h2_bg.png);
}
.inquiry #main h2 {
	background-image:url(../images/free/inquiry/h2_bg.png);
}
#main h3 {
	border-bottom:5px solid #FC3;
	margin:1.5em 0 30px;
	padding:0 0 5px 25px;
	font-size:143%;
	line-height:1.2;
	position:relative;
}
#main h3::before {
	content:"";
	position:absolute;
	left:0;
	top:10px;
	width:15px;
	height:6px;
	background-color: #F60;
}
#main p {
	margin:0 0 30px;
}
#main table {
	width:100%;
	margin:0 0 20px;
	border-collapse:collapse;
	border-spacing:0;
}
#main ul {
	list-style:none;
	margin:0 0 30px;
}
#main ul li {
	background: url(../images/free/list_icon.png) no-repeat left 9px;
	padding-left:16px;
	margin:0 0 10px;
}
/* ==================================================
class
================================================== */
#main .txt_red {
	color:#C00;
}
/* col
============================== */
#main .col2 {
	margin:0 -20px;
	padding-bottom:20px;
	clear:both;
}
#main .col2 .col {
	float:left;
	width:50%;
	padding:0 20px;
}
#main .col4 {
	margin:0 -10px;
	padding-bottom:20px;
	clear:both;
}
#main .col4 .col {
	float:left;
	width:25%;
	padding:0 10px;
}
/* life_col2
============================== */
#main .life_col2 {
	clear:both;
}
#main .life_col2L {
	float:left;
	width:25%;
}
#main .life_col2R {
	float:right;
	width:70%;
}
/* box_note
============================== */
.box_note {
	margin:0 0 30px;
	clear:both;
}
#main .box_note_ttl h3 {
	margin:0;
	padding:8px 0 8px 50px;
	border:none;
	color:#ED1D25;
	background:url(../images/free/life/note_icon.png) no-repeat 2px top;
}
#main .box_note_ttl h3::before {
	display:none;
}
.box_note_cnt {
	border:10px solid #FFD5D5;
	padding:25px 25px 15px;
}
#main .box_note_cnt ul {
	margin-bottom:0;
}
#main .box_note_cnt ul li strong {
	color:#C00;
}
/* box_pohoto
============================== */
#main .box_photo {
	margin:0 0 30px;
	clear:both;
}
#main .box_photo_img {
	float:left;
	width:40%;
}
#main .box_photo_cnt {
	float:right;
	width:57%;
}
/* piece_list
============================== */
#main .piece_list {
	list-style:none;
	list-style-image:none;
}
#main .piece_list li {
	width:19%;
	float:left;
	margin:0 0.8% 10px 0;
	background:none;
	border:1px solid #ccc;
	padding:10px 15px;
	position:relative;
}
#main .piece_list li::after {
	content:"";
	position:absolute;
	left:1px;
	top:1px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10px 0 0;
	border-color: #FC3 transparent transparent transparent;
}
#main .piece_list li:nth-child(5n+1) {
	clear:both;
}
/* ==================================================
list_table
================================================== */
#main .list_table {
	width: 100%;
	border-left:1px solid #ccc;
	border-top:1px solid #ccc;
}
#main .list_table th,
#main .list_table td {
	text-align: left;
	vertical-align:top;
	border-right:1px solid #ccc;
	border-bottom:1px solid #ccc;
	padding:12px 10px;
}
#main .list_table th {
	width:250px;
	background-color:#FFFFEA;
}
#main .list_table p {
	margin-bottom:0;
}
#main .list_table .name {
	font-weight:bold;
	margin-right:1em;
}
#main .list_table td ul {
	margin-bottom:0;
}
/* ==================================================
mailform
================================================== */
table.mailform {
	width: 100%;
}
table.mailform th,
table.mailform td {
	text-align: left;
	font-weight: normal;
	border-bottom:1px dotted #999999;
	padding:12px 10px;
}
#main .must {
	line-height:1.2;
	font-size:10px;
	color:#fff;
	background:#C03;
	padding:2px 8px;
	display:inline-block;
	vertical-align: middle;
	margin:0 5px 0 0;
}
table.mailform th {
	width: 300px;
	padding-right:3.5em;
	position:relative;
}
table.mailform th .must {
	margin:0;
	position:absolute;
	top:16px;
	right:5px;
}
table.mailform td textarea,
table.mailform input[type='text'] {
	padding:4px 7px;
	transition: 0.3s;
	letter-spacing: 1px;
	color: #666;
	border: 1px solid #1b2538;
	border-radius: 4px;
}
table.mailform td textarea:focus,
table.mailform input[type='text']:focus {
	border: 1px solid #da3c41;
	outline: none;
	box-shadow: 0 0 5px 1px rgba(218,60,65, .5);
}
table.mailform td textarea {
	height: 120px;
}
/* box_btn */
#main .box_btn {
	text-align: center;
	padding-bottom:30px;
}
#main .box_btn p {
	margin: 0 10px;
	display:inline-block;
	vertical-align:top;
}
#main .box_btn p input {
	border:1px solid #fff;
	display: block;
	width: 100%;
	min-width: 400px;
	padding:15px 10px;
	font-weight: bold;
	transition: 0.3s;
	cursor:pointer;
	-webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3);
	-moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3);
	box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3);
}
#main .box_btn .submit_btn input {
	background: #111111;
	color: #fff;
}
#main .box_btn .submit_btn input:hover {
	background: #ff9300;
}
#main .box_btn .reset_btn input {
	background: #ddd;
	color: #000;
}
#main .box_btn .reset_btn input:hover {
	background: #666;
	color: #fff;
}
/* inquiry_send */
#main .inquiry_send {
	border:2px solid #000;
	padding:30px 30px 10px;
}
/* ==================================================
clearfix
================================================== */
#main .col2:after,
#main .col4:after,
#main .life_col2:after,
#main .box_photo:after,
#main .piece_list:after {
	content: ""; 
	display: table;
	clear: both;
}
