@charset "utf-8";

a{
  text-decoration: none;
  color: #333;
}
p, dt, dd ,li{
  font-size: 14px;
}
a:hover{
  text-decoration: none
}
.agreement{
  padding: 60px 0px 80px 0px
}
.container{
  max-width: 1025px;
  margin: 0 auto;
}
.page h2{
  color: #3aa5f5;
  font-size: 28px;
  font-weight: bold;
  text-align: center;
}
.page h2 + p{
  margin: 5px 0 0;
  font-size: 17px;
  text-align: center;
}
.page .input_block{
  border: solid 10px #dff0fd;
  padding: 30px  10px;
}
.page .input_block dl{
  width: 90%;
  max-width: 685px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.page .input_block dt{
  font-size: 15px;
  width: 130px;
}
.page .input_block dd{
  width: calc(100% - 130px);
  width: -webkit-calc(100% - 130px);
}
.page.mypage .profile_block{
  margin: 0 0 80px;
}
.page.mypage .profile_block dl{
  display: flex;
  border-bottom: 1px solid #d1d1d1;
  padding: 15px 0;
}
.page.mypage .profile_block dl:first-of-type{
  padding-top: 0;
}
.page.mypage .profile_block dt{
  width: 140px;
}
.page.mypage .profile_block p.atention{
  margin: 10px 0 45px;
  color: #01549f;
}
.page.mypage .profile_block p.atention span{
  font-size: 13px;
}
.page.mypage .btn_singup{
  display: block;
  width: 90%;
  max-width: 328px;
  border: none;
  border-radius: 100px;
  background-color: #3aa5f5;
  margin: 0 auto;
  padding: 14px 0 12px;
  text-align: center;
  color: #fff;
  font-size: 14px;
cursor:pointer;
}
a#forgot_pass span{
  color: #3fa9f5
}
.page.mypage .memo_block{
  margin: 0 0 80px;
}
.page.mypage .memo_block h2{
  font-size: 17px;
  font-weight: normal;
}
.page.mypage .memo_block ul{
  border-top: 1px solid #d1d1d1;
}
.page.mypage .memo_block li{
  border-bottom: 1px solid #d1d1d1;
  padding: 15px 0;
}
.page.mypage .passwd_block{
  padding: 38px 0 57px;
  background-color: #f0f3f5;
}
.page.mypage .passwd_block h2 + p{
  margin: 0 0 50px;
}
.page.mypage .passwd_block dl{
  display: flex;
  align-items: baseline;
  margin: 0 0 10px;
}
.page.mypage .passwd_block dt{
  width: 130px;
}
.page.mypage .typeB dd{
  display: flex;
  justify-content: space-between;
}
.page.mypage .typeB dd #tmp-login-form-pw-reset-box{
  text-align: right;
}
.page.mypage .passwd_block dd.ind::before{
  display: inline-block;
  content: '必須';
  background-color: #fa5443;
  margin-right: 5px;
  padding: 3px 5px;
  color: #fff;
  font-size: 10px;
}
.page.mypage .tmp-mail-input input,
.page.mypage .tmp-password-input input,
.page.mypage .tmp-pw-reset-email-input input{
  background-color: #fff;
  border: solid 1px #e6e6e6;
  padding: 10px;
  width: calc(100% - 20px);
  height: 1em;
}
.page.mypage .passwd_block dd p{
  font-size: 13px;
  margin: 5px 0 50px 39px;
}
.page.mypage .passwd_block input[type="text"]{
  border-radius: 3px;
  border: solid 1px #b7b7b7;
  padding: 10px 5px;
  font-size: 14px;
  width: 310px;
}
.page.mypage .passwd_block input[type="submit"]{
  margin: 40px auto 0;
}
.read_block{
  margin: 40px 0 20px;
}
p.atention{
  margin: 40px 0 20px;
  text-align: center;
  font-size: 13px;
  line-height: 20px;
  color: #ff1d25;
}
.signup_block{
  margin: 70px 0 0;
}
.signup_block h2 + p{
  margin: 0 0 20px;
}
.signup_block .input_block p{
  margin: 30px 0 15px;
  text-align: center;
  font-size: 12px;
}
.signup_block .input_block p.memo{
  width: 90%;
  max-width: 882px;
  margin: 0 auto;
  padding: 15px 0 0;
  border-top: dotted 2px #01549f;
  font-size: 16px;
  color: #01549f;
  text-align: left;
}
#gnavi{
  display: none
}
.signup_block .input_block p.memo span{
  font-weight: bold;
}
.profile_block p.atention img{
  width: 127px;
  position: relative;
  top: 5px;
  margin: 0 5px;
}
#tmp-login-form-pw-reset-box{
text-align:right;}
.tmp-login-form-pw-reset-link{
	font-size: 1em;
	color: #808080;
	text-decoration:underline
}
.tmp-mail-input input, .tmp-password-input input, .tmp-pw-reset-email-input input{
	line-height: 1!important
}
@media screen and (max-width: 769px) {
  .page .input_block dl {
    justify-content: flex-start;
    flex-direction: column;
    align-items: stretch;
    flex-wrap: nowrap;
  }
  .page .input_block dd {
    width: 100%;
  }
  .page.mypage .typeB dd {
    flex-wrap: wrap;
    row-gap: 20px;
  }
  .agreement {
    padding: 30px 0 80px;
  }
}

