/*=============================================================
 TOPページ
=============================================================*/
 _:-ms-input-placeholder, :root .home #main-imge {
 margin-top:0;
}
/*.home 共通
---------------------------------------*/
.home {
}
 @media screen and (min-width:750px) {
.home .left-box, .home .right-box {
	box-sizing:border-box;
}
}
/*#message
---------------------------------------*/
.home #message .lead {
	font-size:16px;
	background-color:#084A96;
	color:#FFF;
	vertical-align:middle;
	padding:10px 0;
	font-weight:bold;
}
.home #message .lead span {
	font-size:14px;
	padding:0 20px;
	vertical-align:middle;
	background-color:#FFF;
	color:#084A96;
	border-radius:15px;
	display:block;
	width:40%;
	margin:0 auto 5px auto;
	font-weight:bold;
}
.home #message .contents {
	padding:20px 20px 40px 20px;
}
.home #message .arrow_box {
	position: relative;
	background: #ffffff;
	border: 1px solid #000000;
	display:inline-block;
	margin-bottom:10px;
	padding:2px 10px;
	font-size:13px;
	font-weight:bold;
}
.home #message .arrow_box:after, .arrow_box:before {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
.home #message .arrow_box:after {
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #ffffff;
	border-width: 10px;
	margin-left: -10px;
}
.home #message .arrow_box:before {
	border-color: rgba(0, 0, 0, 0);
	border-top-color: #000000;
	border-width: 11px;
	margin-left: -11px;
}
.home #message .right-box {
	padding:20px 0 0 0;
}
 @media screen and (min-width:750px) {
.home #message .lead {
	font-size:32px;
	padding:18px 0;
}
.home #message .lead span {
	font-size:20px;
	margin:-5px 40px 0 0;
	line-height:50px;
	display:inline-block;
	width:auto;
}
.home #message .contents {
	padding:60px 0;
}
.home #message .left-box {
	width:465px;
}
.home #message .right-box {
	width:535px;
	padding:0 40px;
}
}
/*#flow
---------------------------------------*/
.home #flow {
	background-color:#EDF7F9;
	padding:40px 0;
}
.home #flow .contents {
	margin-top:20px;
}
.home #flow .contents dl {
	background-color:#FFF;
	box-shadow:3px 3px 1px #999;
	margin-top:20px;
}
.home #flow .contents dd {
	padding:20px;
}
.home #flow .contents dd b {
	display:block;
	text-align:center;
	color:#084A96;
	border-bottom:1px solid #084A96;
	padding-bottom:10px;
	margin-bottom:10px;
	font-size:18px;
	font-weight:bold;
}
.home #flow .contents dl:nth-child(1) dd {
	background:url(../images/home/no1.png) no-repeat 20px 20px;
}
.home #flow .contents dl:nth-child(2) dd {
	background:url(../images/home/no2.png) no-repeat 20px 20px;
}
.home #flow .contents dl:nth-child(3) dd {
	background:url(../images/home/no3.png) no-repeat 20px 20px;
}
 @media screen and (min-width:750px) {
.home #flow {
	padding:60px 0;
}
.home #flow .contents {
	margin-top:40px;
}
.home #flow .contents dl {
	width:290px;
	margin:0;
}
.home #flow .contents dd b {
	font-size:20px;
}
}
/*#work
---------------------------------------*/ 
#work {
	background:url(../images/home/work_img.jpg) no-repeat left top;
	background-size:cover;
	padding:20px 0;
}
 @media screen and (min-width:750px) {
#work {
	background:url(../images/home/work_img.jpg) no-repeat left center;
	background-size:cover;
	padding:0;
}
#work .contents {
	padding:115px 0 130px 500px;
}
}
/*#sct
---------------------------------------*/  
#sct {
	padding:20px 0 40px 0;
	background-color:#F7F7F7;
}
#sct .tit img {
	width:80%;
}
#sct .col2 .in-box {
	position:relative;
	border:1px #DBDBDB solid;
	box-sizing:border-box;
	background-color:#FFF;
	box-shadow:5px 5px 1px #E0E0E0;
	margin-top:30px;
	padding:30px 20px 20px 20px;
}
#sct .col2 .in-box:before {
	position:absolute;
	top:0;
	left:0;
	content:"";
	display:block;
	width:100%;
	height:10px;
	border-top:10px #084A96 solid;
}
#sct .col2 .in-box .txt {
	padding:20px;
}
#sct .col2 .in-box .txt b {
	text-align:center;
	padding:0 0 8px 0;
	margin-bottom:10px;
	display:block;
	border-bottom:1px dotted #083C70;
	color:#083C70;
	font-size:18px;
	font-weight:bold;
}
#sct .col2 .in-box .ico {
	position:absolute;
	top:-10px;
	left:-10px;
}
 @media screen and (min-width:750px) {
#sct {
	padding:60px 0;
}
#sct .tit img {
	width:auto;
}
#sct .col2 {
	margin-top:20px;
}
#sct .col2 .in-box {
	width:470px;
	margin-top:35px;
	padding:30px 20px 20px 20px;
}
#sct .col2 .in-box .img {
	width:205px;
}
#sct .col2 .in-box .txt {
	width:200px;
	padding:0;
}
#sct .col2 .in-box .txt b {
	font-size:20px;
}
#sct .col2 .in-box .ico {
	top:-35px;
	left:-30px;
}
}
/*#job
---------------------------------------*/
#job {
	padding-bottom:40px;
}
#job .tit-area .lead {
	font-weight:bold;
	letter-spacing:0.1em;
}
#job .in-box {
	background-color:#FCF8E6;
	position:relative;
	margin-bottom:60px;
	padding:40px 0 40px 0;
}
#job .in-box:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(252, 248, 230, 0);
	border-top-color: #FCF8E6;
	border-width: 40px;
	margin-left: -40px;
}
#job .in-box .tit-area {
	position:relative;
	display:inline-block;
}
#job .in-box .tit-area:before {
	position:absolute;
	top:0;
	left:-70px;
	content:"/";
	display:block;
	font-size:50px;
	transform: rotateY(180deg);
}
#job .in-box .tit-area:after {
	position:absolute;
	top:0;
	right:-70px;
	content:"/ ";
	display:block;
	font-size:50px;
}
#job .in-box .col4 {
	margin-top:50px;
}
#job .in-box dl {
	position:relative;
	padding:40px 0 0 0;
	box-sizing:border-box;
	background-color:#FFF;
	box-shadow:5px 5px 1px #E0E0E0;
	margin-top:30px;
}
#job .in-box dt {
	margin:-50px auto 0 auto;
	width:90%;
	line-height:20px;
	padding:10px 5px;
	background-color:#F2E036;
	border-bottom:2px solid #BF9019;
	border-right:2px solid #BF9019;
	text-align:center;
	border-radius:5px;
	font-size:15px;
	font-weight:bold;
}
#job .in-box dt b {
	color:#084A96;
	font-size:20px;
	font-weight:bold;
}
#job .in-box dd {
	padding:20px 0;
}
#job .in-box dd .txt {
	padding:20px 20px 0 20px;
}
#job .in-box dd .img {
	text-align:center;
}
#job .in-box dd .img img {
	width:185px;
	height:185px;
	border-radius:100%;
	margin:0 auto;
}
#job .voice-box {
	padding:0 20px 30px 20px;
}
#job .voice-box .box .box-in {
	padding:20px;
}
#job .voice-box h3 {
	text-align:center;
	background-color:#084A96;
	color:#FFF;
	line-height:50px;
	letter-spacing:.1em;
	font-weight:bold;
}
#job .voice-box h3 img {
	width:auto;
	height:50px;
	margin-right:20px;
}
#job .voice-box .box {
	box-sizing:border-box;
	border-radius:15px 15px;
	border:5px #084A96 solid;
	box-shadow:5px 5px 1px #E0E0E0;
}
#job .voice-box .box .right-box {
	margin-top:20px;
}
#job .voice-box .box .name {
	margin:10px 0;
	text-align:center;
	border-bottom:1px #BCBCBC solid;
	padding-bottom:10px;
	font-weight:bold;
}
#job .voice-box .box .name span {
	padding:0 10px;
	display:inline-block;
	line-height:20px;
	margin: 0 0 0 10px;
	border:1px #BCBCBC solid;
	color:#CCC;
	font-size:12px;
}
 @media screen and (min-width:750px) {
#job {
	padding-bottom:65px;
}
#job .in-box {
	padding:60px 0;
	margin-bottom:78px;
}
#job .in-box:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(252, 248, 230, 0);
	border-top-color: #FCF8E6;
	border-width: 78px;
	margin-left: -78px;
}
#job .in-box .tit-area .lead {
	font-size:18px;
}
#job .in-box dl {
	width:230px;
	margin:0;
}
#job .voice-box {
	padding:60px 0 60px 0;
}
#job .voice-box h3 {
	text-align:center;
	font-size:30px;
	line-height:90px;
}
#job .voice-box h3 img {
	width:auto;
	height:auto;
	margin-right:20px;
}
#job .voice-box .box .box-in {
	padding:45px 80px;
}
#job .voice-box .box .left-box, #job .voice-box .box .right-box {
	width:370px;
	margin-top:0;
}
#job .voice-box .box .name {
	font-size:20px;
	margin:20px 0 10px 0;
}
#job .voice-box .box .name span {
	margin: 0 0 5px 10px;
}
#job .voice-box .box .txt {
	font-size:17px;
}
}
/*.banar-area
---------------------------------------*/  
.banar-area {
	margin-bottom:40px;
}
 @media screen and (min-width:750px) {
.banar-area {
	margin-bottom:60px;
}
}
/*#challenge
---------------------------------------*/  
#challenge {
	padding:60px 0 0 0;
}
#challenge .tit {
	position: relative;
	background-color:#084A96;
	color: #FFF;
	font-size:18px;
	padding:20px 0;
}
#challenge .sine {
	text-align:right;
	font-weight:bold;
	font-size:16px;
}
#challenge .tit:before {
	z-index:1;
	position:absolute;
	top:50%;
	left:50%;
	margin-left:-500px;
	content:"";
	display:block;
	width:1000px;
	height:1px;
	background-color:#FFF;
}
#challenge .tit span {
	position:relative;
	z-index:2;
	display:inline-block;
	margin:0 auto;
	background-color:#084A96;
	padding:0 20px;
	font-weight: bold;
	letter-spacing:.1em;
}
#challenge .in-box {
	position:relative;
	z-index:2;
	background: url(../images/home/pic_challenge01.png) no-repeat center bottom;
	background-size:250% auto;
	padding:20px 20px 100px 20px;
}
#challenge .in-box .contents {
	background-color:#FFF;
	border:1px #CCC solid;
	padding:20px;
}
#challenge .in-box .contents .left-box {
	text-align:center;
}
#challenge .in-box .contents .left-box img {
	margin:0 auto;
	width:80%;
}
#challenge .in-box .contents .right-box {
	margin-top:20px;
}
#challenge .in-box .contents .right-box b {
	text-align:center;
	display:block;
	color:#084A96;
	font-weight:bold;
	font-size:18px;
}
#challenge .in-box .contents .right-box p {
	margin-top:20px;
}
#challenge .in-box02 {
	position:relative;
	z-index:1;
	background:url(../images/home/bg_challenge01.jpg) no-repeat center center;
	background-size:cover;
	margin-top:-70px;
	padding:90px 0 40px 0;
}
#challenge .in-box02 .flexPc {
	background-color: #FFF;
	box-shadow:5px 5px 1px #999;
	padding:40px 20px 20px 20px;
}
#challenge .in-box02 .flexPc .com-tit01 {
	text-align:center;
}
#challenge .in-box02 .flexPc .left-box p {
	margin-top:20px;
}
#challenge .tit02 {
	text-align:center;
	margin-bottom:-25px;
}
#challenge .in-box02 .flexPc .right-box {
	margin:20px 0 0 0;
}
#challenge .tit02 .lead {
	position:relative;
	display:inline-block;
	background-color:#4F9BDB;
	color:#FFF;
	font-size:16px;
	line-height:50px;
	font-weight:bold;
	letter-spacing:.1em;
}
#challenge .tit02 .lead:before {
	position:absolute;
	top:0;
	left:-50px;
	content:"";
	display:block;
	width:50px;
	height:50px;
	background:url(../images/home/bg_ribbon.png) no-repeat left center;
}
#challenge .tit02 .lead:after {
	position:absolute;
	top:0;
	right:-50px;
	content:"";
	display:block;
	width:50px;
	height:50px;
	background:url(../images/home/bg_ribbon.png) no-repeat right center;
}
 @media screen and (min-width:750px) {
#challenge {
	padding:0;
}
#challenge .tit {
	font-size:34px;
	padding:20px 0;
}
#challenge .tit span {
	padding:0 40px;
}
#challenge .sine {
	font-size:18px;
}
#challenge .in-box {
	padding:72px 0 150px 0;
	background-size:cover;
}
#challenge .in-box .contents {
	padding:45px;
}
#challenge .in-box .contents .left-box img {
	width:auto;
}
#challenge .in-box .contents .right-box b {
	font-size:25px;
}
#challenge .in-box .contents .left-box {
	width:270px;
}
#challenge .in-box .contents .right-box {
	width:570px;
	margin:0;
}
#challenge .in-box02 {
	margin-top:-100px;
	padding:175px 0 75px 0;
}
#challenge .in-box02 .flexPc {
	padding:70px 75px 60px 75px;
}
#challenge .in-box02 .flexPc .left-box {
	width:395px;
}
#challenge .in-box02 .flexPc .com-tit01 {
	text-align:left;
}
#challenge .in-box02 .flexPc .right-box {
	width:400px;
	margin:0;
}
#challenge .tit02 {
	margin-bottom:-35px;
}
#challenge .tit02 .lead {
	position:relative;
	font-size:25px;
	line-height:72px;
	padding:0 70px;
}
#challenge .tit02 .lead:before {
	position:absolute;
	top:0;
	left:-50px;
	content:"";
	display:block;
	width:50px;
	height:72px;
	background:url(../images/home/bg_ribbon.png) no-repeat left center;
}
#challenge .tit02 .lead:after {
	position:absolute;
	top:0;
	right:-50px;
	content:"";
	display:block;
	width:50px;
	height:72px;
	background:url(../images/home/bg_ribbon.png) no-repeat right center;
}
}
/*#about
---------------------------------------*/  
#about {
	padding:0 0 40px 0;
}
#about .left-box {
	padding-top:20px;
}
#about .left-box .tit {
	font-size:18px;
	margin-bottom:10px;
	font-weight:bold;
}
#about .left-box tr {
	border-bottom:1px #CCC solid;
}
#about .left-box th, #about .left-box td {
	vertical-align:middle;
	padding:10px 0;
}
#about .left-box td {
	font-size:17px;
}
#about .right-box {
	margin-top:20px;
}
 @media screen and (min-width:750px) {
#about {
	padding:65px 0;
}
#about .left-box {
	width:505px;
	padding:0;
}
#about .left-box .tit {
	font-size:30px;
	margin-bottom:10px;
}
#about .left-box th {
	width:80px;
}
#about .right-box {
	width:430px;
	margin:0;
}
}
/*#contact
---------------------------------------*/  		
#contact {
	padding:60px 0 40px 0;
}
#contact .com-tit02 {
	margin:20px 0 10px 0;
}
#contact p {
	text-align:center;
}
#contact .com-tbl01 {
	margin:20px 0;
}
#contact .form-button {
	position:relative;
	display:block;
	margin:0 auto;
	width:80%;
}
#contact .form-button:after {
	position:absolute;
	top:45%;
	right:50px;
	content: url(../images/home/ico_arrow.png);
	display:inline-block;
	margin-top:-5px;
}
 @media screen and (min-width:750px) {
#contact {
	padding:60px 0;
}
#contact .com-tit02 {
	margin:0 0 20px 0;
}
#contact .com-tbl01 {
	margin:40px 0;
}
#contact .form-button {
	display:inline-block;
	width:auto;
}
}

form#contact_form {
	text-align: center;
}
form#contact_form span.required {
	color:red;
}
form#contact_form span.form_error {
	color:red;
	display:block;
	width:100%;
}