@charset "UTF-8";

.ec-role {
	padding: 0;
}
.ec-login {
	background: transparent;
}

.login-set {
	display: flex;
	/* justify-content: space-between; */
	justify-content: center;
	align-items: flex-start;
	margin: 65px auto 0;
	max-width: 1080px;
	gap: 60px;

  @media screen and (max-width: 767px) {
    flex-direction: column;
    margin: 30px 0;
    gap: 30px;
  }

	.set-title {
		margin-bottom: 40px;
		font-weight: 700;
		font-size: 18px;
		line-height: 22px;
		text-align: center;
		color: #000000;
    @media screen and (max-width: 767px) {
      font-size: 16px;
    }
	}

	.set-detail {
		color: #000;
		font-weight: 400;
		line-height: 24px;
		text-align: center;
		letter-spacing: 0.03em;
		&.small{
			font-size: 14px;
		}
		&.tal{
			text-align-last: left;
		}
    @media screen and (max-width: 767px) {
      font-size: 13px;
      line-height: 22px;
      letter-spacing: 0.02em;
    }
	}

	.set-input {
		margin-bottom: 14px;
		&:first-child {
			margin-top: -6px;
		}
		&:last-child {
			margin-bottom: 0;
		}

		.input-label {
			margin-bottom: 10px;
			font-weight: 400;
			font-size: 12px;
			line-height: 14px;
			color: #000000;
		}
		.input-main {
			& input {
				width: 100%;
				height: 50px;
				background: #ffffff;
				border: 1px solid #d2d2d2;
    		padding: 6px 12px;
        @media screen and (max-width: 767px) {
          font-size: 14px;
        }
			}
		}
		.input-update,
		.input-error {
			color: #c00;
			font-size: 12px;
			line-height: 14px;
		}
		.input-update {
			color: #000;
			/* font-weight: bold; */
		}
	}

	.set-main,
	.set-sub {
		width: 510px;
		padding: 40px 50px;
		border-radius: 10px;
    @media screen and (max-width: 767px) {
      width: 100%;
      padding: 40px 30px;
    }
	}

	.set-main {
		background: #ffffff;
		border: 2px solid #939e94;
	}

	.set-sub {
		background: #f3f3f3;

		.set-detail {
			margin-top: 40px;
			margin-bottom: 20px;
      @media screen and (max-width: 767px) {
        margin-top: 30px;
      }
		}
	}

	.text-link {
		margin-top: 16px;
		& li {
			margin-bottom: 8px;
			text-align: center;
			&:last-child {
				margin-bottom: 0;
			}
		}
		& a {
			font-weight: 400;
			font-size: 14px;
			line-height: 17px;
			text-decoration-line: underline;
			color: #000000;
      @media (hover: hover) and (pointer: fine) {
        &:hover{
          text-decoration: none;
        }
      }
		}
	}

	.login-btn {
		text-align: center;

		&.type03,
		.cover {
			display: flex;
			flex-direction: row;
			justify-content: center;
			align-items: center;
			margin: 0 auto;
			width: 350px;
			height: 50px;

			font-weight: 700;
			line-height: 19px;
			letter-spacing: 0.02em;

			color: #ffffff;
			border-radius: 5px;
			border: 2px solid transparent;

      @media screen and (max-width: 767px) {
        width: 100%;
        font-size: 14px;
        border-width: 1px;
      }
		}

		&.type01 {
			.cover {
				background: #006a72;
				@media (hover: hover) and (pointer: fine) {
					transition: ease 0.25s background-color, ease 0.25s color, ease 0.25s border-color;
					&:hover {
						color: #006a72;
						background-color: #fff;
						text-decoration: none;
						border-color: #006a72;
					}
				}
			}
		}
		&.type02 {
			.cover {
				color: #006a72;
				border-color: #006a72;

				@media (hover: hover) and (pointer: fine) {
					transition: ease 0.25s background-color, ease 0.25s color;
					&:hover {
						color: #fff;
						background-color: #006a72;
						text-decoration: none;
					}
				}
			}
		}

		&.type03 {
			margin-top: 30px;
			background: #77b053;
			color: #ffffff;
			border: 2px solid transparent;

			@media (hover: hover) and (pointer: fine) {
				transition: ease 0.25s background-color, ease 0.25s color, ease 0.25s border-color;
				&:hover {
					color: #77b053;
					background-color: #fff;
					border-color: #77b053;
					text-decoration: none;
				}
			}
		}
	}
}
