@charset "utf-8";

/* =====================================================================
 * main
 * =================================================================== */
h3 {
	margin-bottom: 30px;
	padding-bottom: 12px;
	width: 678px;
	border-bottom: 1px solid #bbbbbb;
}
#main h4 {
	margin-bottom: 10px;
}
#mainImage {
	padding-bottom: 21px;
	background: url(images/topimage_new.png) no-repeat;
	background-size: 100%;
}
.lead {
	height: 269px;
	background: url(images/subtxt_recruit.svg) no-repeat center bottom;
	background-size: 100% auto;
	text-indent: 200%;
	white-space: nowrap;
	overflow: hidden;
}
.circle {
	text-indent: 200%;
	white-space: nowrap;
	overflow: hidden;
}
caption {
	width: 678px;
	margin-bottom: 15px;
	background: url(images/ttl_guideline.gif) no-repeat;
}
#obo {
	clear: both;
	background: url(images/ttl_entry.gif) no-repeat;
}
#internship {
	clear: both;
	background: url(images/ttl_internship2024.gif) no-repeat;
}
/*
#internshipOnline {
	clear: both;
	background: url(images/ttl_internship_online.gif) no-repeat;
}
*/
#tandoku {
	clear: both;
	background: url(images/ttl_tandoku.gif) no-repeat;
}
#contactUs h4 {
	background: url(images/ttl_contact.gif) no-repeat;
}
table.detail {
	float: left;
	margin-bottom: 30px;
	width: 678px;
	border-top: 1px solid #cccccc;
}
table.detail th, table.detail td {
	padding: 8px 20px;
	border-bottom: 1px solid #cccccc;
	vertical-align: middle;
}
table.detail colgroup:nth-of-type(1) {
	width: 140px;
	background-color: #ecf3fa;
}
table.detail ul li {
	margin-left: 20px;
	list-style: disc;
}
#mynavi {
	float: left;
	width: 400px;
}
#qrcode {
	float: right;
	width: 229px;
	padding-left: 15px;
	border-left: 1px solid #cccccc;
	text-align: center;
}
#mynavi dt {
	margin-bottom: 20px;
}
#mynavi dt span {
	display: block;
	margin-bottom: 5px;
}
#mynavi dd {
	text-align: center;
}
#qrcode dt {
	margin-bottom: 10px;
}
#contactUs {
	margin-top: 20px;
	padding: 18px;
	width: 638px;
	background-color: #ffffff;
	border: 2px solid #cccccc;
	border-radius: 5px;        /* CSS3草案 */  
	-webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 5px;   /* Firefox用 */
}
#contactUs h4, #contactUs p {
	float: left;
	width: 325px;
}
#contactUs ul {
	float: right;
	margin-top: -30px;
}

/* 採用お問い合わせ */
#byTel {
	margin-bottom: 30px;
	background: url(../images/dotline.gif) repeat-x bottom;
}
#byTel p {
	float: left;
	margin: 0 30px 30px 0;
}
#byTel p img {
	margin-top: 3px;
}
#byMail p {
	margin-bottom: 10px;
}
.required {
	color: #436bce;
}

/* =====================================================================
 * mediaqueries
 * =================================================================== */
@media screen and (max-width: 960px) {
	h3 {
		margin-bottom: 4.4%;
		width: 100%;
	}
	#mainImage {
		padding-bottom: 3.5%;
	}
	.lead {
		padding-top: 40%;
		width: 100%;
		height: 0;
	}
	caption, #obo, #contactUs h4, #internship, #internshipOnline, #tandoku {
		background: none;
		width: 100%;
	}
	.circle {
		margin-bottom: 10px;
		text-indent: inherit;
		white-space: inherit;
		font-size: 153.9%;
		font-weight: bold;
		text-align: left;
		padding-left: 18px;
		text-indent: -18px;
		line-height: 1.4;
		color: #436bcd;
	}
	.circle:before {
		content: "";
		display: inline-block;
		border-radius: 50%;
		-webkit-border-radius: 50%;
		-moz-border-radius: 50%;
		vertical-align: middle;
		margin-right: 5px;
		height: 8px;
		width: 8px;
		border: 3px solid #6c99d7;
		position: relative;
		top: -3px;	
	}
	table.detail {
		width: 100%;
	}
	table.detail colgroup:nth-of-type(1) {
		width: 110px;
	}
	#mynavi {
		float: none;
		display: table;
		width: 100%;
	}
	#mynavi dt, #mynavi dd {
		display: table-cell;
		vertical-align: middle;
	}
	#mynavi dt {
		padding-right: 20px;
	}
	#mynavi dd {
		width: 195px;
		height: 60px;
	}
	#qrcode {
		display: none;
	}
	#contactUs {
		padding: 15px;
		width: 100%;
	}
	#contactUs h4 {
		float: none;
		width: 100%;
	}
	#contactUs p {
		width: 48%;	
		text-align: left;
	}
	#contactUs p span {
		display: inline-block;
	}
	#contactUs ul {
		width: 48%;
		margin-top: 0;
	}
}
@media screen and (max-width: 480px) {
	h3 {
		margin-bottom: 20px;
		padding-top: 5px;
	}
	h3 img {
		width: auto;
		height: 25px;
	}
	#main h4 {
		margin-bottom: 5px;
	}
	#mainImage {
		padding-bottom: 20px;
	}
	.lead {
		padding-top: 53%;
		background: url(images/subtxt_recruit2.svg) no-repeat center bottom;
		background-size: 95% auto;
	}
	.circle {
		margin-bottom: 7px;
		font-size: 138.5%;
	}
	table.detail {
		margin-bottom: 25px;
	}
	table.detail th, table.detail td {
		display: block;
		width: 100%;
		padding: 8px 10px;
	}
	table.detail th {
		padding: 6px 10px;
		border-bottom: none;
	}
	table.detail td {
		background-color: #fff;
	}
	#mynavi, #mynavi dt, #mynavi dd {
		display: inherit;
	}
	#mynavi dt {
		margin-bottom: 10px;
		padding-right: 0;
	}
	#mynavi dd {
		width: 100%;
	}
	#contactUs p, #contactUs ul {
		float: none;
		width: 100%;	
	}
	#contactUs ul {
		margin-top: 15px;
		text-align: center;
	}
	#contactUs li:first-child {
		margin-bottom: 15px;
	}
}
@media screen and (max-width: 414px) {
	h3 {
		margin-bottom: 15px;
		padding-bottom: 9px;
	}
	h3 img {
		height: 24px;
	}
}
@media screen and (max-width: 375px) {
	.lead {
		padding-top: 55%;
		background-size: 100% auto;
	}
	.circle {
		font-size: 123.1%;
	}
}
@media screen and (max-width: 320px) {
	h3 img {
		height: 21px;
	}
}