@charset "utf-8";





/* ---------- blog ---------- */

#blog #main {
	float:left;
	width:683px;
}

#blog #main article {
	background:url(../../images/info/bg_mc.png) repeat-y 0 bottom;
	margin: 0 0 50px;
	width:683px;
}

#blog #main header {
	background:url(../../images/info/bg_mt.png) no-repeat 0 0;
	padding:35px 50px 30px 35px;
	overflow:hidden;
}

#blog #main header h2 {
	background:url(../../images/info/bg_ttl.png) no-repeat 0px bottom;
	float:right;
	font-size:100%;
	font-weight:bold;
	line-height:1.6em;
	padding:40px 0 5px;
	width:484px;
}

#blog #main header p {
	background:url(../../images/info/bg_date.png) no-repeat 0 0;
	color:#fff;
	font-size:140%;
	float:left;
	line-height:1.2em;
	height:73px;
	padding:23px 0 0;
	text-align:center;
	width:96px;
}

#blog #main .body {
	background:url(../../images/info/bg_mb.png) no-repeat 0 bottom;
	padding:0 50px 35px 35px;
}

#blog #side {
	float:right;
	width:283px;
}

#blog #side section {
	background:url(../../images/info/bg_st.png) no-repeat 0 0;
	margin:0 0 25px;
	padding:25px 0 0;
	width:283px;
}

#blog #side section div {
	background:url(../../images/info/bg_sc.png) repeat-y 0 bottom;
}

#blog #side h2 {
	background:url(../../images/info/bg_arrow.jpg) no-repeat 0 5px;
	border-bottom:1px #ddd solid;
	font-size:100%;
	font-weight:bold;
	line-height:1.6em;
	margin:0 35px 0 25px;
	padding:0 0 5px 23px;
}

#blog #side ul {
	background:url(../../images/info/bg_sb.png) no-repeat 0 bottom;
	font-size:75%;
	line-height:1.6em;
	padding:5px 35px 35px 25px;
}

#blog #side li {
	background:url(../../images/info/bs_si.jpg) no-repeat 3px 15px;
	border-bottom:1px #ddd dotted;
	padding:12px 0 5px 18px;
}





/* ---------- inquiry ---------- */

#form {
	background:url(../../images/inquiry/bg_form_bot.png) no-repeat 30px bottom;
	margin: 0 0 30px 0;
	padding:0 0 16px 30px;
	width:959px;
}

#form div {
	background:url(../../images/inquiry/bg_form_top.png) no-repeat 0 0;
	padding:16px 0px 0px 0px;
}

#form form,
#form section {
	background:url(../../images/inquiry/bg_form_mid.png) repeat-y 0 bottom;
	padding:20px 70px 15px 70px;
}

#form .button {
	text-align:center;
	padding:40px 0 20px;
}

#form .button input:hover {
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter:alpha(opacity=80);
	text-align:center;
}

#form table {
	border-top:#e4e4e4 1px dotted;
	border-collapse:collapse;
	width:100%;
}

#form table p {
	padding:0 0 5px;
}

#form table tr {
	border-bottom:#e4e4e4 1px dotted;
}

#form table th {
	padding:15px 20px 10px;
	font-weight:bold;
	white-space:nowrap;
	text-align:left;
	vertical-align:middle;
}

#form table td {
	padding:15px 40px 10px;
}

#form table .in {
	background:url(../../images/inquiry/bg_in.jpg) no-repeat right center;
	padding:15px 70px 10px 10px;
}

#form table .op {
	background:url(../../images/inquiry/bg_op.jpg) no-repeat right center;
	padding:13px 70px 5px 10px;
}

#form table .error {
	background:#FFCC00;
}

#form table input,
#form table textarea {
	border:#bbb 1px solid;
	padding:5px;
	width:90%;
}





/* ---------- privacy ---------- */

.privacy {
	padding:0 40px 40px;
}

.privacy ol {
	font-size:75%;
	line-height:1.7em;
	list-style:decimal;
	padding:0 0 15px 25px;
}

.privacy ol li {
	padding:0 0 5px;
}





/* ---------- project ---------- */

#project {
	margin:0 auto;
	overflow:hidden;
	padding:50px 0 35px;
	width:1000px;
}

#project section {
	height:521px;
	text-align:center;
	margin:35px 0 0;
	padding:100px 0 0;
}

#project .caption {
	background:url(../../images/project/top/bg_line.png) no-repeat center bottom;
	margin:0 0 20px;
	padding:16px 0 12px;
}

#project section article {
	text-align:left;
	margin:0 auto;
	overflow:hidden;
	padding:0 0 20px;
	width:400px;
}

#project section article h3 {
	font-weight:bold;
	padding:4px 0 5px 30px;
}

#project #plan {
	background:url(../../images/project/top/plan_bg.png) no-repeat center 0;
}

#project #plan article h3 {
	background:url(../../images/project/top/plan_circle.png) no-repeat 0 0;
}

#project #talent {
	background:url(../../images/project/top/talent_bg.png) no-repeat center 0;
	position:relative;
}

#project #talent article h3 {
	float:left;
	font-size:110%;
	font-weight:bold;
	line-height:1.2em;
	padding:5px 0;
	width:230px;
}

#project #talent article:nth-child(5) h3 {
	padding:80px 0 5px;
}

#project #talent article:nth-child(6) h3 {
	padding:20px 0 5px;
}

#project #talent h3 span {
	font-size:70%;
	padding:0 0 0 5px;
}

#project #talent p {
	font-size:70%;
	line-height:1.8em;
	padding:0 0 10px;
}

#project #talent .image {
	float:left;
	padding:0 20px 0 0;
}

#project #talent article:nth-child(5) {
	margin:-80px auto 0;
}

#project #talent article:nth-child(6) {
	margin:-5px auto 0;
}

#project #talent article:nth-child(5) .image {
	float:right;
	padding:0 0 0 20px;
}

#project #talent ul {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 20px;
    margin: 0 auto;
    width: 380px;
}

#project #talent ul li {
    box-sizing: border-box;
    font-size: 0.9rem;
    font-weight: bold;
    margin: 0;
    padding: 0;
    width: calc(50% - 10px);
}

#project #talent ul li img {
    height: auto;
    margin: 0 0 5px;
    width: 100%;
}

#project #talent .button {
	position:absolute;
	top:47%;
	right:150px;
}

#project #works {
	background:url(../../images/project/top/works_bg.png) no-repeat center 0;
}

#project #works article h3 {
	background:url(../../images/project/top/works_circle.png) no-repeat 0 0;
}





/* ---------- talent ---------- */

.talent {
	overflow:hidden;
	padding:10px 70px 30px;
}

.talent h2 {
	float:right;
	font-size:120%;
	font-weight:bold;
	margin:5px 0 15px;
	width:620px;
}

.talent h2 span {
	font-size:75%;
	padding-left:10px;
}

.talent .image {
	float:left;
}

.talent ul {
	float:right;
	font-size:80%;
	line-height:1.5em;
	padding:0 0 25px;
	width:620px;
}

.talent ul li {
	list-style:circle;
	margin:0 0 10px 20px;
}

.talent .facebook {
	float:right;
	width:620px;
}

.talent .facebook img {
	vertical-align:middle;
}





/* ---------- company ---------- */

#outline {
	float:left;
	overflow:hidden;
	padding:20px 0 0 30px;
}

#outline dl {
	float:left;
	font-size:85%;
	line-height:2.0em;
}

#outline dt {
	float:left;
	font-weight:bold;
}

#outline dd {
	padding:0 0 20px 140px;
}

#map {
	background:url(../../images/company/bg_map.png) no-repeat 0 0;
	float:right;
	height:423px;
	margin:5px 0 0;
	padding:3px 0 50px 3px;
	width:505px;
}

#map iframe {
	padding:0 0 35px;
}

#map p a {
	background:url(../../images/company/bg_map_link.png) no-repeat 0 0;
	color:#3399CC;
	margin:40px 0 0;
	padding:7px 30px 10px 35px;
	text-decoration:none;
}