@charset "utf-8";
/* CSS Document */
body, div, a, p, span, input, button {
	font-family: Arial,游ゴシック,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";font-size: 14px;font-weight: 700;margin:0;padding:0;box-sizing: border-box;letter-spacing: 0.1em;line-height: 1.5em
}

a{font-family: Arial,游ゴシック,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";text-decoration:none;color: #333;}

img{border-style:none;}

li{list-style:none;}

html{height:100%;width:100%;}

body{height:100%;width:100%;}

input:-webkit-autofill { -webkit-box-shadow: 0 0 0px 10000px #fff inset;}
input:focus::-webkit-input-placeholder { color: transparent; }
input:focus::-moz-placeholder { color: transparent; }
input:focus::-ms-input-placeholder { color: transparent; }
input:focus::placeholder { color: transparent; }

#wrapper{height:100%;width:100%;background-color:#efefef;}

.webins-login-display{
	width:475px;
	background-color:#F5F5F5;
}
#webins_login {
	position: relative;
	background-color: #fff;
	border-radius: 5px;
	z-index: 10;
	padding-bottom: 30px;
	width: 81%;
	margin: 0 auto;
}
#webins_login input {
	min-width: 240px;
	width: 64%;
	display: block;
	padding: 8px;
	border-radius: 5px;
	margin: auto;
}
#webins_login input.text_line_m:focus{
  border: 2px #dd3131 solid;
  transition-duration: 0.25s;
}
#webins_login button {
	border: none;
	background-color: #e5002d;
	width: 64%;
	min-width: 240px;
	height: 35px;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	padding: 5px;
	color: #fff;
	font-size: 17px;
	border-radius: 5px;
}
#webins_login button:hover{
	background-color: #d8002d;
}
#webins_login p a:hover{color:#e5002d;}
#btnLogin{
  margin-top: 15px;
}
#webins_login .link:hover{
  color: #dd3131;
}
#webins_login ul{
	margin: 0 0 0 0;
}
#webins_login .password-eye-icon {
	right: 65px;
}
#webins_login .password-form input, .password-form input{
	padding-right: 35px;
}

#login-form {
	width: 95%;
	margin: 20px auto 10px auto;
	text-align: center;
}
#login-form li{
  list-style: disc;
  list-style-position: inside;
  padding-bottom: 10px;
  white-space: nowrap;
}
#login-form .btn-area {
	margin-top: 40px;
}
#login-form .input-label,
#login-form .two-factor-auth-label{
	margin-bottom: 0;
	text-align: left;
	display: block;
	margin: 0 auto;
	width: 82%;
}

/*-- Responsive --*/
.flex{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-js-display: flex;
}
.webins-display-flex {
  display: flex;
  flex-wrap: wrap;
}
.webins-display-flex > [class*='col-'] {
  display: flex;
  flex-direction: column;
}

/*-- Messages --*/
.webins-message {
	width: 70%;
	margin: auto;
}
p.warning-message {
	color: red;
	font-size: 0.95em;
	font-weight: bold;
}
.login-password-edit-message {
	color: red;
	border: 1px solid red;
	padding: 10px;
	background-color: #fdeff2;
	text-align: left;
	margin-bottom: 5px;
}
div#login_error,
p#login_error {
	font-size: 12px;
	font-weight: bold;
	color: #FF0000;
	padding: 0px;
	padding-left: 5px;
	width: 100%;
	margin-bottom: 20px;
	text-align: left;
}
div#login_error>ul>li {
	font-size: 12px;
	color: #FF0000;
	margin-left: 10px;
	list-style: inside;
}
#red_frame_for_message{
	border:2px solid #d9263c;
	text-align:left;
	margin: 30px auto 10px auto;
	padding-top: 8px;
	padding-bottom: 3px;
}
#red_frame_for_message > p {
	padding-left: 15px;
	margin-bottom: 0;
}
#red_frame_for_message > p:nth-child(2) {
	height: 100px;
	overflow-y: auto;
	margin: 5px 0;
}

.insource-site-iframe {
	width: 100%;
	min-height: 916px;
}

.form-note {
	text-align: left;
	width: 66%;
	margin: auto;
	font-size: 12px;
	font-weight: 600;
	color: #666;
}
.webins-ad{
	width: 95%;
	margin: 0 auto;
}
.webins-logo{
	background-color:#ffffff;
	height:fit-content;
}
.webins-logo-group{
	display: inline-block;
	margin: 20px auto 20px auto;
	text-align: center;
	width: 68%;
	min-width: 240px;
}
.login-elements #webins_title{
	font-size:23px;
	margin-bottom: 15px;
}
.login-elements #mail_sent_message{
	text-align: left;
	width: 70%;
	margin: 40px auto 0;
}
.login-elements #how_to{
	padding-top: 20px;
	padding-bottom: 30px;
	font-size: 13px;
	text-align: left;
}

.m_heading__ttl{
  border-bottom: 3px solid #a19a81;
  text-align: left;
  font-size: 20px;
  font-weight: bold;
  padding-left: 8px;
}
.text_line_m {
  font-weight: 500;
  height: 35px;
  padding-left: 0.5vw;
  background-color: transparent;
  outline: none;
  border-style: solid;
  border-color: #000000;
  border-width: 1px 1px 1px 1px;
  font-size: inherit;
  -webkit-transition: border-color 0.45s linear;
  transition: border-color 0.45s linear;
}

#guidance_to_login a{
  border: 2px solid #337ab7;
  background-color: #ffffff;
  width: 64%;
  min-width: 240px;
  border-radius: 5px;
  text-align: center;
  padding: 5px;
  display: block;
  color: #333333;
  text-decoration: none;
  margin: auto;
}
#guidance_to_login a:hover{
	text-decoration: none;
	color: #FFF;
	background-color: #337ab7;
}

.login-notice {
	margin: 10px auto;
	width: 95%;
	padding-top: 15px;
}
.login-notice p {
	text-align: left;
	margin-left: 10px;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 1px;
	margin-bottom: 0;
	margin-top: 10px;
}
.login-notice a {
	font-weight: bold;
	font-size: 14px;
	text-align: left;
}
.login-notice .double-chevron-right{
	vertical-align: text-bottom;
	margin-right: 3px;
}
.login-notice .chevron-right-size{
	font-size: 6px;
	margin-right: -7px;
}
.login-notice .pageup {
	text-align: right;
	padding-bottom: 10px;
}
.register-notice .new-registration{
	width: 51%;
	min-width: 240px;
	height: 35px;
	margin: auto;
	color: #333;
	background-color: #fff;
	border-color: #e5002d;
	border-width: 2px;
	border-radius: 4px;
	font-weight: bold;
	font-size: medium;
	text-align: center;
}
.register-notice a.new-registration:hover{
	background-color: #e5002d;
	color: #FFF;
}
.register-notice > div > a:hover,
.register-notice > div > a:focus {
	background-color: #FFF;
	border-color: #e5002d;
}
.register-notice div{
	margin-top: 10px;
}
.webins-rules a
,.webins-question a{
	font-size: 12px;
}
.login-guide-explanation{
	font-weight: 500;
}
.webins-iframe {
	flex-grow: 1;
}
@media screen and (max-width: 320px) {
	.webins-login-display,
	.register-notice .new-registration,
	.webins-logo-group,
	#webins_login input,
	#webins_login button,
	#guidance_to_login a{
		min-width: 100%;
	}
	#webins_login button,
	.register-notice .new-registration{
		white-space: unset;
		height: 100%;
	}
}
@media screen and (max-width: 970px) {
	.webins-iframe {
		display: none;
	}
	.webins-display-flex {
		justify-content: center;
	}
}

/* -----------------------------------
  「はじめて利用する方へ」popover用
 ------------------------------------- */
.popover{
	max-width: 500px; 
	width:100%;
}
.popover #contents {
	width: 80%;
	margin: 20px auto;
}
.popover #contents .title {
	font-size: 20px;
	margin-bottom: 10px;
	font-weight: 700;
	
}
.popover #contents .title img {
	width: 1em;
	height: auto;
	padding-bottom: 10px;
}
.popover #contents a.btn {
	width: 240px;
	height: 35px;
	margin: auto;
	color: #333;
	border-color: #337ab7;
	border-width: 2px;
	font-weight: bold;
	font-size: 14px;
	padding: 5px;
	text-align: center;
}
.popover #contents .note {
	text-align: center;
	margin-bottom: 30px;
	font-size: 14px;
}
.popover #contents .etcetera {
	text-align: center;
	font-size: 14px;
}
.popover #contents a.btn:hover {
	background-color: #337ab7;
	color: #FFF;
}
.popover .popover_hide a {
	color: #a19a81;
}
.popover .popover_hide a:hover {
	opacity: 0.75;
}