﻿@charset "UTF-8";

/* ==================================================
トップ
================================================== */
body.login {
	background-color:#F2F2F2;
}
/* header
============================== */
header {
	padding:30px 0 20px;
	text-align:center;
}
#header_logo {
	display:table;
	margin:0 auto;
}
#header_logo #logo,
#header_logo #name {
	display:table-cell;
	vertical-align:middle;
}
#header_logo #logo {
	padding-right:10px;
}
#header_logo #name {
	font-size:87.5%;
	font-weight:bold;
	line-height:1.2;
}
#header_logo #name span {
	margin-top:5px;
	display:inline-block;
	padding:4px 20px 3px;
	background-color:#015BA9;
	color:#fff;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	border-radius:4px;
}
/* container
============================== */
#container {
	clear:both;
	width:100%;
}
/* login_top
============================== */
#login_top {
	width:auto;
	margin:0 auto 50px;
}
#login_top th,
#login_top td {
	padding:20px 10px;
	vertical-align:middle;
	text-align:left;
}
#login_top th {
	white-space: nowrap;
	width:6em;
	font-weight:normal;
}
#login_top th label {
	padding:4px 0 1px 22px;
}
#login_top th.mail label {
	background:url(../images/icon/mail.png) no-repeat left center;
}
#login_top th.pass label {
	background:url(../images/icon/pass.png) no-repeat left center;
}
#login_top td input {
	width:100%;
	padding:7px 10px;
	border: 1px solid #ffffff;
	box-shadow: 1px 1px 2px 0 #707070 inset;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}
#login_top td input:focus {
	box-shadow: inset 1px 1px 2px 0 #c9c9c9;
}
/* login_main
============================== */
#wrap_login_main {
	width:800px;
	margin:0 auto 30px;
	background-color:#fff;
}
#login_main {
	border:1px solid #015BA9;
	padding:40px 50px;
	box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5);
}
#login_main_ttl {
	text-align:center;
	padding:0 0 20px;
	margin:0 0 30px;
	position:relative;
}
#login_main_ttl::after {
	content:"";
	position:absolute;
	left:50%;
	bottom:0;
	margin-left:-50px;
	width:100px;
	height:2px;
	border-bottom:2px solid #015BA9;
}
#login_main_ttl h2 {
	font-weight:normal;
	font-size:143%;
}
#login_main #login_main_cnt dt {
	font-weight:normal;
}
/* box_msg */
#login_main .box_msg {
	background-color:#E9F8F4;
	padding:30px;
	text-align:center;
	font-size:114.3%;
	margin:0 0 20px;
}
#login_main .box_msg h3 {
	font-size:114.3%;
	font-weight:bold;
	margin:0 0 20px;
	color:#015BA9;
}
/* table */
#login_main_cnt table {
	width:100%;
	margin:30px 0;
	border:1px solid #ccc;
}
#login_main_cnt table th,
#login_main_cnt table td {
	text-align:left;
	vertical-align: middle;
	padding:8px 10px;
	border:1px solid #ccc;
}
#login_main_cnt table th {
	width:20%;
	background-color:#f2f2f2;
	white-space:nowrap;
}
#login_main_cnt table td {
	width:80%;
}
#login_main_cnt table td input {
	width:60%;
	padding:5px 10px;
	border: 1px solid #ffffff;
	box-shadow: 1px 1px 2px 0 #707070 inset;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}
#login_main_cnt table td input:focus {
	box-shadow: inset 1px 1px 2px 0 #c9c9c9;
}
/* box_btn */
#login_main .box_btn p {
	width:50%;
	max-width:inherit;
}

#login_main .box_btn .row_display p {
	width: 40%;
	max-width: inherit;
}

/* login_btn
============================== */
.login_btn {
	width:300px;
	text-align:center;
	margin:0 auto 20px;
}
.login_btn a {
	display:block;
	text-decoration:none;
	font-size:125%;
	font-weight:bold;
	color:#fff;
	padding:10px;
	border:2px solid #333333;
	background-color:#333333;
	-webkit-box-shadow: 4px 4px 0 0 #e0e0e0;
	-moz-box-shadow: 4px 4px 0 0 #e0e0e0;
	box-shadow: 4px 4px 0 0 #e0e0e0;
}
.login_btn a:hover {
	background: #333333;
	background:-webkit-gradient(linear, center top, center bottom, from(#333333), to(#777777));
	background:-moz-linear-gradient(center top, #333333, #777777);
	background:linear-gradient(to bottom, #333333, #777777);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#333333', endColorstr='#777777',GradientType=0 );
	border:2px solid #fff;
	box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5);
}
.login_btn a span {
	display:inline-block;
	background:url(../images/icon/key_icon.png) no-repeat left center;
	padding-left:25px;
	min-height:18px;
}
/* login_pass
============================== */
.login_pass {
	text-align:center;
}
.login_pass a {
	display:inline-block;
	color:#333;
	background:url(../images/icon/arrow_g.png) no-repeat left center;
	padding:2px 0 0 16px;
}
.login_pass a:hover {
	text-decoration:underline;
}
/* footer
============================== */
footer {
	text-align:center;
	clear:both;
}
footer address {
	font-size:85.7%;
	font-style:normal;
	text-align:center;
	font-family:Arial, Helvetica, sans-serif;
}
/* ==================================================
clearfix
================================================== */
header:after,
#container:after,
#login_main dl:after {
	content: ""; 
	display: table;
	clear: both;
}

/* error用 */
input[type='text'].in_error,
input[type='tel'].in_error,
input[type='email'].in_error,
input[type='password'].in_error {
    border-color: #da3c41;
    background-color: #FFF0F0;
}
input[type='text'].in_error:focus,
input[type='tel'].in_error:focus,
input[type='email'].in_error:focus,
input[type='password'].in_error:focus {
    box-shadow: 0 0 5px 1px rgba(218,60,65, .5);
}
