@charset "utf-8";

/* ----------------------------------------------------------------------------
	ログイン/会員登録/マイページ
---------------------------------------------------------------------------- */
body{
	background-color: #f4f4f4;
}
main{
	min-height: calc(100vh - 162px);
}
.login-box {
    margin: 0 auto;
    background-color: #fff;
	border-radius: 12px;
    box-sizing: border-box;
	width: 780px;
	padding: 20px;
}
.login-box--small {
    width: 780px;
}
.regist-sumarry {
	text-align: center;
	width: 780px;
	background-color: #f4f4f4;
	padding: 0;
	margin-bottom: 20px;
}
.regist-sumarry.login-box .text-link--center a{
    display: inline-block;
    text-align: center;
    border-radius: 4px;
}
.regist-sumarry.login-box .text-link--center a .text-link__text{
	font-size: 16px;
	margin-right: 0;
	color: #A57E49;
	margin-right: 5px;
}
.regist-sumarry.login-box .text-link--center a .icon-arrow-right-small{
	font-size: 12px;
}
.login-sumarry {
    margin-bottom: 20px;
    font-size: 16px;
    line-height: 160%;
    color: #8f8f8f;
}
.login-sumarry br{
	display: none;
}
.password-sumarry {
    margin-bottom: 20px;
    font-size: 16px; 
    line-height: 160%;
    color: #8f8f8f;
}
.password-subttl {
	text-align: center;
	font-weight: 500;
	margin-top: 25px;
}
.title-wrap {
    width: 780px;
    margin: 40px auto 0;
    display: flex;
    align-items: center;
}
.title-wrap .u-tac{
    text-align: left;
    order: 2;
}
.title-wrap .title {
    font-size: 24px;
    margin-bottom: 20px;
	margin-right: 20px;
    font-weight: 700;
    position: relative;
    text-align: left;
    width: auto;
    margin: 0 20px 20px 0;
}
.title {
    font-size: 24px;
    margin-bottom: 20px;
    font-weight: 700;
    position: relative;
    text-align: left;
    width: 780px;
    margin: 20px auto;
}
.title-small {
	font-size: 17px;
}

.regist-sumarry .text {
	margin-bottom: 10px;
    font-size: 16px;
    line-height: 160%;
    text-align: left;
    color: #8f8f8f;
}
.regist-sumarry .text br{
	display: none;
}
.login-btn {
	margin-bottom: 10px;
}
.btm-link-regist {
    background-color: #fff;
    padding: 0 40px 40px;
    width: 780px;
    margin: -30px auto 0;
    box-sizing: border-box;
}
/* ヘッダー ソーセージリンク */
ul.head-tab .head-tab__item {
	text-align: center;
		background-color: #fff;
		border-radius: 22px;
		margin-right: 10px;
		width: auto;
		border: 1px solid #ddd;
	}
	.head-tab .head-tab__item .head-tab__inner {
		display: block;
		height: 38px;
		font-weight: 500;
		border: 0;
		padding: 0 16px;
		color: #8f8f8f;
		box-sizing: border-box;
	}
	li.head-tab__item:first-child{
		border: 1px solid #ddd;
	}
	.head-tab {
		display: flex;
		width: 780px;
		margin: 0 auto 20px;
	}
	.head-tab .head-tab__item--active .head-tab__inner {
		color: #fff;
	}
	.head-tab__item:last-child {
	}
	.head-tab__item--active .head-tab__text {
		font-weight: 700;
		font-size: 14px;
	}
	ul.head-tab .head-tab__item--active{
		background-color: #666;
		border: 1px solid #666;
	}

/*会員登録/ログイン*/
.regist-fb-caption {
	font-size: 14px;
	color: #8f8f8f;
	line-height: 132%;
	margin: 20px 0 10px;
}
.regist-fb-caption a {
	font-weight: normal;
}
.login-mail-fb-wrap {
	position: relative;
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
	-webkit-box-pack:space-between;
	-ms-flex-pack:space-between;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-box-align:flex-start;
	-ms-flex-align:flex-start;
	-webkit-align-items:flex-start;
	align-items:flex-start;
}
.login-mail-fb-wrap .login-mail .form-label-caption{
	margin-bottom: 20px;
}
.login-mail {
	padding-right: 20px;
	width: 100%;
}
.login-fb {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
	padding-left: 20px;
    position: relative;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.login-fb::before{
    content: '';
    display: block;
    width: 1px;
    height: 317px;
    background-color: #f4f4f4;
    position: absolute;
    left: 0;
	top: -20px;
}
.login-fb .btn{
	background-color: #f4f4f4;
    border: 1px solid #ddd;
    border-radius: 8px;
    color: #333;
    width: calc(50% - 5px);
	margin-bottom: 10px;
	height: 44px;
    padding: 0 12px;
}
.login-fb .btn:hover{
	opacity: 0.5;
}
.login-fb .btn .btn__inner{
	display: inline-flex;
	font-size: 14px;
    font-weight: bold;
    align-items: center;
	width: 100%;
}
.login-fb .btn .btn__inner .text{
	font-weight: bold;
	flex: 1;
    display: inline-block;
}
.login-fb .btn .btn__inner .icon-fb{
	color: #4267b2;
}
.login-fb .btn .btn__inner .icon-line{
	color: #06C755;
}
.login-mail-fb-wrap .title-small {
    margin-bottom: 20px;
    font-size: 20px;
    font-weight: 700;
}
.login-fb .title-small {
	font-size: 16px;
	width: 100%;
}
.login-regist-btn {
	box-sizing: border-box;
}
.login-mail #member_form .login-regist-btn .btn-regist.btn{
   padding: 0;
   height: 44px;
   border-radius: 8px;
}
.btn-regist{
  background-color: #a6764f;
}
.btn--disabled {
    color: #adadad;
    background-color: #dddddd;
}
.login-mail #member_form .login-regist-btn .btn-regist.btn .btn__inner{
	font-size: 14px;
}
.btn-regist:hover{
	background-color: #c57e3f;
}

#member_form .input_box {
  position: relative;
  display: block;
}

#member_form .form-input {
  box-sizing: border-box;
  width: 100%;
  padding-right: 2.4rem;
  font-size: 16px;
  line-height: 1.4;
  font-family: inherit;
  letter-spacing: normal;
}

#member_form input.form-input[type="password"],
#member_form input.form-input[type="text"] {
  font-size: 16px;
  line-height: 1.4;
  font-family: inherit;
  letter-spacing: normal;
}

#member_form .toggle-password {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  cursor: pointer;
  z-index: 2;
  line-height: 1;
}

#member_form .toggle-password i {
  font-size: 16px;
  line-height: 1;
  vertical-align: middle;
}

/*フォーム*/
.form-item  {
	position: relative;
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
	flex-wrap: wrap;
	-webkit-box-pack:space-between;
	-ms-flex-pack:space-between;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-box-align:center;
	-ms-flex-align:center;
	-webkit-align-items:center;
	align-items:center;
	margin-bottom: 20px;
}
.form-item--vertical {
	-webkit-box-align: flex-start;
	-ms-flex-align: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
}
.form-item:first-child {

}
.form-item .form-label{
	font-size: 14px;
}
.form-wrap--small .input_box {
	width: 100%;
}
.input_box {
    width: 100%;
    margin-top: 10px;
}
.form-label-caption, .login-caption {
    font-size: 12px;
    line-height: 160%;
    color: #adadad;
	font-weight: normal;
	margin-bottom: 20px;
}
.login-mail .form-label-wrap .form-label-caption{
	margin-bottom: 0;
	margin-top: 10px;
}

/*または*/
.login-break-line {
    position: absolute;
    right: 290px;
}

.login-break-line .text {
    font-weight: 700;
    color: #adadad;
}

/*パスワードをお忘れの方*/
.password-caption {
	margin-bottom: 20px;
}
.password-btn {
	text-align: center;
}
.password-btn .btn {
	width: 100%;
	background-color: #f4f4f4;
}
.password-btn .btn:hover{
	background-color: #A57E49;
}
.box-title {
    font-size: 20px;
    margin-bottom: 20px;
    font-weight: 700;
}
.box-title--small {
    font-size: 16px;
    margin-bottom: 20px;
    line-height: 160%;
	color: #8f8f8f;
}
.password-text {
    font-size: 12px;
    margin-bottom: 40px;
    line-height: 160%;
    color: #adadad;
    font-weight: 700;
}
.password-btn--login {
	text-align: center;
	padding-top: 10px;
}
.password-btn--login.password-btn .btn{
	color: #A57E49;
}
.password-btn--login.password-btn .btn:hover{
	color: #fff;
}
.password-link--top {
	margin-top: 40px;
}

/*ログイン情報の変更*/
.change-login-wrap {
	background-color: #F9F6F3;
}
.change-login-wrap #nav_footer.copyright_only {
	margin-top: 0;
}
.mypage-container {
	background-color: #fff;
}
.mypage-side-col {
	background: #fff;
	box-sizing: border-box;
	width: 300px;
	position: absolute;
	min-height: calc(100vh - 50px);
}
.mypage-nav__item .mypage-nav__inner {
	display: block;
	background-color: #fff;
	padding: 20px;
	font-weight: 500;
}
.mypage-nav__item .mypage-nav__inner:hover {
	background-color: #90795A;
	color: #fff;
	opacity: 1;
}
.mypage-nav__item.mypage-nav__item--active .mypage-nav__inner {
	background-color: #90795A;
	color: #fff;
}
.mypage-nav__num {
	font-weight: 300;
	padding-left: 20px;
}
.mypage-nav__item .icon {
	font-size: 10px;
	padding-left: 8px;
}

.mypage-main-col {
	margin: 0 auto;
	margin-left: 300px;
	background-color: #F9F6F3;
	padding-bottom: 100px;
}
.mypage-ttl {
	background: #F2EBE5;
	padding: 10px 40px;
	margin-bottom: 50px;
	color: #3e3e3e;
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	-webkit-align-items:center;
	align-items:center;
	position: relative;
	z-index: 5;
	height: 60px;
	box-sizing: border-box;
}
.mypage-wrapper {
	position: relative;
}
.mypage-wrapper:after {
	content: "";
	position: absolute;
	background: #F2EBE5;
	height: 60px;
	top: 0;
	left: 50%;
	z-index: 0;
	width: 50%;
}
.mypage-ttl__img img {
	width: 30px;
	height: 30px;
	border-radius: 50%;
}
.mypage-ttl__txt {
	width: 660px;
	font-weight: 500;
	padding-left: 10px;
}
.mypage-ttl__txt--big {
	font-size: 17px;
}

.mypage-main-wrap {

}
.shadow-box {
	background-color: #FFF;
}
.mypage-main-col .login-box--small {
	width: 740px;
	box-sizing: border-box;
	padding: 30px 60px 40px;
	margin-bottom: 0;
	background-color: #FFF;
}
.mypage-main-col .shadow-box .title {
	padding-top: 0;
	margin-bottom: 0;
}
.mypage-main-col .shadow-box .password-caption {
	font-size: 13px;
	margin-bottom: 0;
	margin-top: 25px;
}
.mypage-main-col .shadow-box .password-sumarry {
	margin-bottom: 0;
	margin-top: 20px;
}
.mypage-main-col .shadow-box .form-wrap {
	margin-top: 30px;
}

/*退会*/
.retire-caution {
	color: #FF0000;
	font-weight: 500;
	text-align: center;
	margin-top: 25px;
}
.retire-link {
	margin: 55px -20px 0;
}
.retire-link .retire-link-ttl {
	font-size: 15px;
	padding-left: 20px;
	font-weight: 500;
	margin-bottom: 5px;
}
.retire-link-bar__item {
	border-bottom: 1px solid #E8E2DC;
}
.retire-link-bar__item:first-child {
	border-top: 1px solid #E8E2DC;
}
.retire-link-bar__inner {
	color: #3E3E3E;
	padding: 15px 20px;
	display: block;
}
.retire-link-bar__text {
	font-weight: 300;
}
.retire-text-link {
	margin-top: 35px;
}
.mypage-main-col .login-box--small.login-bot--retire {
	padding: 30px 20px 40px;
}
.retire-thanks-text {
	font-weight: 500;
	text-align: center;
	margin-bottom: 30px;
}

/*ラジオボタン*/
.list-condition-radio {
	width: 610px;
	margin: 0 auto;
	text-align: left;
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	-webkit-align-items:center;
	align-items:center;
}
.list-condition-radio__item {
    font-size: 16px;
    margin-right: 0;
    display: inline-block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    background-color: #f4f4f4;
    padding: 0 16px;
    height: 48px;
}
.list-condition-radio__item:hover {
	cursor: pointer;
	font-weight: 500;
}
.radio-icon {
    width: 16px;
    height: 16px;
    display: inline-block;
    border-radius: 3px;
    border: 1px solid #EFEFEF;
    margin-right: 5px;
    position: relative;
    background-color: #fff;
}
.list-condition-radio__item--active .radio-icon:after,
.card-time-btn--active .radio-icon:after{
    content: "";
    width: 16px;
    height: 16px;
    display: inline-block;
    border-radius: 3px;
    border: 1px solid #B08C44;
    background: #B08C44;
    position: absolute;
    left: 0px;
    top: 0px;
}
.list-condition-radio__item.card-time-btn--active {
	background: none;
}
.card-time-btn--active .radio-txt {
	font-weight: 500;
}
.form-wrap--retire .input_box {
    width: 100%;
    margin-top: 20px;
}
.list-condition-radio__item--small {
	margin-left: 0px;
	padding-left: 36px;
}
.form-wrap--retire .list-condition-radio__item {
	margin-top: 1px;
}
.form-wrap--retire .list-condition-radio__item p{
	color: #8f8f8f;
}
.form-wrap--retire .list-condition-radio__item:first-child {
    margin-top: 0;
    border-radius: 8px 8px 0 0;
}
.form-wrap--retire .list-condition-radio__item:last-child {
    margin-top: 0;
    border-radius: 0 0 8px 8px;
}
/*==================================

 iPhone5対応

==================================*/

@media screen and (max-width: 320px) {

}

/*faq*/
.faq {
	width: 780px;
	margin: 0 auto;
	margin-top: 40px;
}
.faq .accordion-bar {
}
.faq .link-bar__item .link-bar__text {
    font-weight: 500;
    font-size: 16px;
    color: #8f8f8f;
}
.faq .link-bar__item .link-bar__inner {
    padding: 0 16px;
    height: 48px;
}
.faq .accordion-bar .link-bar__item{
	margin-bottom: 1px;
	background-color: #fff;
}
.faq .accordion-bar .link-bar__item:only-child{
	border-radius: 8px !important;
}
.faq .accordion-bar .link-bar__item:first-child{
	border-radius: 8px 8px 0 0;
}
.faq .accordion-bar .link-bar__item:last-child{
	border-radius: 0 0 8px 8px ;
}
.faq .accordion-contents {
	padding: 20px;
	padding-top: 0;
	line-height: 160%;
}
.faq .link-bar__item:hover .link-bar__inner {
	opacity: 0.5;
	cursor: pointer;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	transition: all 0.3s;
}
.faq .section-small .u-tac{
	text-align: left;
	font-size: 20px;
	font-weight: 700;
	color: #333;
}

/*point*/
.point-regist-balloon {
    position: relative;
    line-height: 1;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 700;
    color: #A57E49;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    background-color: #F9F7F5;
    border: 1px solid #A57E49;
    line-height: 32px;
    border-radius: 16px;
    padding: 0 16px;
}
.point-regist-balloon span {
	color: #A57E49;
}
.point-regist-balloon__img {
	width: 17px;
	margin-right: 5px;
}
/*regist-merit*/
.regist-merit {
    width: 780px;
    box-sizing: border-box;
    margin: 20px auto 20px;
}
.regist-merit-subttl {
	color: #A57E49;
	font-size: 16px;
    font-weight: 700;
	line-height: 132%;
    margin-bottom: 12px;
}
.regist-merit-list__item {
	margin-bottom: 1px;
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
    display: flex;
	align-items: center;
    background-color: #fff;
    padding: 0 16px;
    height: 48px;
    line-height: 48px;
    color: #8f8f8f;
    font-size: 16px;
    font-weight: 700;
}
.regist-merit-list__item:first-child{
	border-radius: 8px 8px 0 0;
}
.regist-merit-list__item:last-child {
	margin-bottom: 0;
	border-radius: 0 0 8px 8px;
}
.regist-merit-list__item [class^="icon-"]{
    font-size: 20px;
	margin-right: 10px;
}
.regist-merit-list__txt a {
    font-weight: 700;
    color: #A57E49;
}
.container{
}
#appleid-signin div{
	max-width: 100% !important;
}
.btn--siwa {
    box-shadow: none;
	margin-top: 0;
}
.form-input{
	outline: none;
	border-radius: 8px;
	border: 1px solid #ddd;
	font-size: 14px;
	padding: 0 12px;
    height: 44px;
}
.form-input:focus{
	border: 1px solid #B08C44;
}

.password-btn-wrap .btn--medium {
	margin-top: 5px;
}
