.yakudati_contents{
    text-align: center;
    width: fit-content;
	position: relative;
}
.yakudati_contents{
    margin: 80px auto 80px;
}
.yakudati_contents p{
    font-size: 33px;
    line-height: 1;
    position: relative;
	font-weight: bold;
}
.yakudati_contents p{
    color: #00a0e8;
}
.yakudati_contents p::before{
    content: '';
    width: 55px;
    height: 4px;
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translate(-50%, 0px);
}
.yakudati_contents p::before{
    background-color: #00a0e8;
}
.yakudati_contents p span{
    color: #030000;
    font-size: 21px;
    font-weight: normal;
}
.login_width, .login_width2{
    width: 850px;
    margin: 0 auto;
}
.login_margin{
    margin: 35px 0;
}
.login_flex, .login_flex2{
    display: flex;
    align-items: center;
}
.login_flex div{
    width: 30px;
    margin: 0px 26px 0 46px;
}
.login_flex div img{
    width: 100%;
}
.login_flex input, .login_flex2 input{
    border: 1px solid #888889;
    border-radius: 6px;
    padding: 18px 15px;
    font-size: 16px;
}
.login_flex input{
    width: 88%;
}
.login_flex2 input{
    width: 100%;
}
.login_width button, .login_width2 button{
    float: right;
    text-align: center;
    border-radius: 20px;
    background-color: #00a0e8;
    font-size: 22px;
	margin-bottom: 20px;
    margin-top: 50px;
	font-weight: bold;
}
.login_width button p, .login_width2 button p{
    color: #fff;
	padding: 20px 0;
}
.login_width button input{
    color: #fff;
	width:100%;
	padding: 20px 0;
}
.login_width button{
    width: 88%;
}
.login_width2 button{
    width: 100%;
}
.pass_for{
    clear: both;
    text-align: right;
    color: #717071;
    text-decoration: underline;
	font-size: 16px;
	margin-bottom: 100px;
}
.pass_cr, .pass_cr2{
    color: #595757;
    font-size: 17px;
    line-height: 23px;
	margin: 0 auto;
    width: fit-content;
}
.pass_cr2{
    text-align: center;
}
.err_text{
    text-align: right;
    color: #e61e19;
    font-size: 14px;
    margin-top: 10px;
}
.pass_fin_p{
    text-align: center;
    font-size: 30px;
    font-weight: bold;
}
.pass_fin_p2{
    width: fit-content;
    margin: 40px auto;
    font-size: 20px;
    color: #595757;
    line-height: 23px;
}
.login_width button:active, .saihakkou:active, .login_width2 button:active{
	opacity:0.6;
}
.pass_for:hover{
	opacity:0.6;
}
.bot {
    display: none;
}
@media screen and (max-width:1080px) {
.login_width, .login_width2 {
    width: 80%;
}
}
@media screen and (max-width:820px) {
.pass_fin_p {
    font-size: 28px;
}
.pass_fin_p2 {
    font-size: 23px;
    line-height: 30px;
}
}
@media screen and (max-width:480px) {
.yakudati_contents {
    margin: 12vw auto 12vw;
}
.yakudati_contents p {
    font-size: 5.5vw;
}
.yakudati_contents p span {
    font-size: 3.7vw;
}
.yakudati_contents p::before {
    content: '';
    width: 9.5vw;
    height: 0.5vw;
    bottom: -2vw;
}
.login_width, .login_width2 {
    width: 90%;
}
.login_margin {
    margin: 5vw 0;
}
.login_flex div {
    width: 6vw;
    margin: 0px;
	margin-right: 4vw;
}
.login_flex input, .login_flex2 input {
    padding: 2.5vw 3vw;
    font-size: 3.5vw;
}
.err_text {
    font-size: 3vw;
    margin-top: 2vw;
}
.login_width button, .login_width2 button {
    font-size: 4vw;
    margin-bottom: 3vw;
    margin-top: 4vw;
}
.login_width button p, .login_width2 button p {
    padding: 2.5vw 0;
}
.pass_for {
    font-size: 3.2vw;
    margin-bottom: 22vw;
}
.pass_cr, .pass_cr2 {
    font-size: 3.5vw;
    line-height: 4.5vw;
}
.pass_cr2 {
    text-align: left;
}
.pass_fin_p {
    text-align: center;
    font-size: 5vw;
    font-weight: bold;
}
.pass_fin_p2 {
    margin: 6vw auto;
    line-height: 5vw;
    font-size: 4vw;
}
.login_width button input {
    padding: 2.5vw 0;
}
}