@charset "UTF-8";
/* #Pagetop{
	bottom: 7%;
} */
.page_ttl p span.min01{
	display: inline-block;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 0.8;
	background: var(--blue);
	border-radius: 3px;
    padding: 6px 7px;
	margin-right: 5px;
	color: white;
	text-align: center;
}
.page_ttl p.close_txt{
	margin-top: 20px;
	font-size: 20px;
}
/*---login form---*/
::placeholder{
	color: var(--gray);
}
.form{
	padding: 50px 0;
}
.form.form-box{
	padding-bottom: 3.2rem;
}
.pre-login{
	justify-content: space-around;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}

.manegy_login,.new_login{
	position: relative;
    width: 48%;
    box-sizing: border-box;
    border: 1px solid var(--olive);
	background: #fff;
}
.manegy_login .inner,
.new_login .inner{
	padding: 20px 20px 30px;
}
.form-til{
	background: #003b67;
    color: #fff;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    padding: 15px 0;
}
.form-til > span{
	background-color: white;
    font-size: 16px;
    color: var(--basic);
    font-weight: bold;
    padding: 2px 14px;
    border-radius: 50vw;
    margin-left: 10px;
}
.form-txt{
	font-size: 1.4rem;
	line-height: 1.8rem;
	margin-bottom: 1rem;
	letter-spacing: 0.01em;
}
.campaign_caution {
	margin-top: 1rem;
	line-height: 2rem;
	color: #f65151;
}
.form-box_login{
	margin-bottom: 2.4rem;
}
.form-box_login li{
	margin-bottom: 1.6rem;
}
.form dt, .cont01 h4{
	font-weight: bold;
	font-size: 1.5rem;
	margin-bottom: 0.2rem;
}
.form dt b{
	font-size: 1.4rem;
}
.form dt i{
	font-size: 1rem;
	line-height: 1rem;
	margin-left: 0.4rem;
	font-style: normal;
	color: #fff;
	background: #f65151;
	padding: 0.2rem 0.4rem;
	border-radius:2px;
	vertical-align: middle;
}
.form-box_login .caution{
	font-size: 1.3rem;
	line-height: 1.8rem;
	letter-spacing: 0.05em;
	margin-top: 0.2rem;
}
.primary_color{
	text-decoration: underline;
	font-weight: bold;
}
.term{
	font-size: 1.5rem;
	line-height: 2.4rem;
}
.new-txt{
	font-weight: bold;
	font-size: 1.8rem;
	margin-bottom: 0.8rem;
}
.btn-txt{
	text-align: center;
	color: var(--gray2);
	font-size: 14px;
	text-decoration: underline;
	margin-top: 20px;
	transition: 0.3s;
}
.btn-txt:hover{
	text-decoration: none;
}
.pre-login .arrow_Btn{
	width: 100%;
	max-width: none;
	cursor: pointer;
}

.new_login .manegy-point{
	position: absolute;
    top: -4%;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 90%;
	background: var(--blue);
	padding: 5px;
	text-align: center;
	color: white;
	font-size: 1.6rem;
	font-weight: 600;
}
.new_login .manegy-point strong{
	font-size: 130%;
    font-weight: bold;
    font-family: "Oswald", sans-serif;
    margin: 0 3px;
	color: #fff432;
}
.new_login .manegy-point::after{
	position: absolute;
	content: "";
	border-top: 10px solid var(--blue);
	border-right: 7px solid transparent;
	border-left: 7px solid transparent;
	bottom: -6px;
	left: 50%;
	transform: translateX(-50%);
}

.new-login_con{
	justify-content: space-around;
}
.new-login_con p{
	width: 50%;
	font-size: 2.4rem;
	line-height: 3.2rem;
	font-weight: bold;
}
.new-login_con img{
	width: 40%;
}
.new_login_img{
	margin-bottom: 1.6rem;
}
/*---end login form---*/

/*---form---*/
.after_entry {
	background-image: none;
}
.form_input {
    padding-top: 6rem;
}
.form_cam-tag {
	top: 0;
}
.form-box{
	position:relative;
	box-sizing: border-box;
    border-radius: 5px;
    border: 1px solid var(--basic);
	background: #fff;
	width: 90%;
	max-width: 780px;
	margin: 0 auto;
	/* z-index:10; */
}
.form-box .inner{
	padding: 20px 20px 30px;
}
.form-box .new_entry{
	text-align: center;
}
.form input[type="text"],
.form input[type="mail"],
.form input[type="tel"],
.form input[type="email"],
.form input[type="password"] {
	line-height: 1.5em;
	padding: 10px;
    border: solid 1px var(--gray);
    border-radius: 3px;
    width: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    box-shadow: none;
    background-color: #fff;
    font-size: 16px;
}
.form select {
	cursor: pointer;
	padding: 10px;
	border: solid 1px var(--gray);
	border-radius: 2px;
	width: 100%;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	/*background: url(../img/triangle_inverted_01.svg) no-repeat center right 10px / 11px auto;*/
	background-color: #fff;
	font-size: 16px;
}
.form-selectbox{
	position: relative;
}
.form-selectbox::after{
    position: absolute;
    content: "";
    border-top: var(--gray) 7px solid;
    border-right: transparent 5px solid;
    border-left: transparent 5px solid;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
}

.ECM_CheckboxInput {
	margin-bottom: 0.8rem;
	display: flex;
	align-items: center;
	cursor: pointer;
}
.ECM_CheckboxInput-Input {
	margin: 0;
	width: 0;
	opacity: 0;
}
.ECM_CheckboxInput:hover > .ECM_CheckboxInput-DummyInput{
	background: var(--gray);
}
.ECM_CheckboxInput-Input:focus + .ECM_CheckboxInput-DummyInput{
	background: var(--gray2);
}
.ECM_CheckboxInput-Input:checked + .ECM_CheckboxInput-DummyInput {
	background: var(--blue);
	border-color: var(--blue);
}
.ECM_CheckboxInput-Input:checked + .ECM_CheckboxInput-DummyInput::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 35%;
	height: 2px;
	transform: translate(-5px, 6px) rotateZ(-135deg);
	transform-origin: 1px 1px;
	background: #FFFFFF;
}
.ECM_CheckboxInput-Input:checked + .ECM_CheckboxInput-DummyInput::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 70%;
	height: 2px;
	transform: translate(-5px, 6px) rotateZ(-45deg);
	transform-origin: 1px 1px;
	background: #fff;
}
.ECM_CheckboxInput-DummyInput {
	cursor: pointer;
	position: relative;
	top: 0;
	left: 0;
	display: block;
	width: 32px;
	height: 32px;
	border-radius:2px;
	background:white;
	border:1px solid var(--gray);
}
.ECM_CheckboxInput-LabelText {
	width: calc(100% - 32px);
	margin-left: 1rem;
	display: block;
	font-size: 14px;
	line-height: 1.5;
	font-weight: bold;
}
.form ul.namebox, .form ul.telbox {
	display: flex;
	justify-content: space-between;
}
.form .namebox li {
	width: 48%;
}
.form dd {
	margin-bottom: 30px;
}
.form .address ul:not(:nth-child(3)) dd{
	margin-bottom: 10px;
}
.form ul.address01 {
	display: flex;
}
.form .telbox li {
	width: 30%;
}
.form .address01 li {
	width: 38%;
}
.form .postcode li {
	width: 20%;
}
.form li.text, .form li.text02 {
	font-weight: normal;
	font-size: 14px;
	line-height: 1.2em;
	text-align: center;
	width: 12%;
	padding-top: 12px;
}
.form ul.address02 li.text {
	width: 100%;
	text-align: left;
	margin-bottom: 5px;
}
.form ul.postcode {
	display: flex;
}


.form li.text02 {
	width: 5%;
	padding-top: 18px;
}

#partnerCodeOpen.done{
    color: #004986;
    text-decoration: underline;
    cursor: pointer;
}
#partnerCodeOpen.done::after {
    content: "をお持ちの方はこちら";
}
#partnerCode dd {
    display: none;
}
.form-box dd{
	font-size: 1.6rem;
}
.form-box .check dd{
	display: flex;
    flex-wrap: wrap;
    gap: 2px 10px;
}
/* チェックボックス01 */
input[type=checkbox] {
	display: none;
}
.chk {
	box-sizing: border-box;
	cursor: pointer;
	display: inline-block;
	padding: 5px 30px;
	position: relative;
	width: auto;
}
.chk::before {
	background: #fff;
	border: 1px solid #231815;
	content: '';
	display: block;
	height: 16px;
	left: 5px;
	margin-top: -8px;
	position: absolute;
	top: 50%;
	width: 16px;
}
.chk::after {
	border-right: 3px solid var(--blue);
	border-bottom: 3px solid var(--blue);
	content: '';
	display: block;
	height: 9px;
	left: 10px;
	margin-top: -7px;
	opacity: 0;
	position: absolute;
	top: 50%;
	transform: rotate(45deg);
	width: 5px;
}
input[type=checkbox]:checked + .chk::after {
	opacity: 1;
}
.cont03{
	margin-top: 2.4rem;
}
.caution_term {
	font-size: 1.4rem;
	line-height: 2rem;
	letter-spacing: 0.05em;
	height: 200px;
	overflow-y: scroll;
	padding: 20px;
	background: #fff;
	border: solid 1px var(--dark);
	/*	background: var(--light );*/
	margin-bottom: 2rem;
}
.form-box .caution{
	font-size: 1.4rem;
	line-height: 2rem;
	color: #f65151;;
	text-align: center;
	margin-bottom: 2rem;
}
.rule-til{
	text-align: center;
	font-weight: bold;
	font-size: 2rem;
	line-height: 2rem;
	margin-bottom: 1rem;
	margin-top: 2rem;
	/*	padding: 0.8rem 0;*/
	/*
	border-bottom:2px solid var(--basic);
	border-top:2px solid var(--basic);
	*/
}
.caution_term h2 {
	font-size: 1.7rem;
	margin: 0;
	background: var(--light );
	text-align: center;
	padding: 0.8rem 0;
	font-weight: bold;
}
.caution_term h3 {
	font-size: 1.6rem;
	width: 100%;
	font-weight: bold;
	margin-top: 2rem;
	margin-bottom: 1rem;
	border-left: 5px solid var(--olive);
	padding-left: 0.8rem;
}
.caution_term p{
	font-size: 1.5rem;
	line-height: 2.5rem;
	letter-spacing: 0.08em;
	margin-bottom:1rem;
}
.caution_term a{
	color: var(--blue);
	text-decoration: underline;
	/* border-bottom:1px solid var(--basic); */
	word-wrap: break-word;
}
.cont01 .form_category {
	width: 49%;
	margin: 10px 0 0;
	background: #fff;
}
.cont01 .checkbox01 {
	box-sizing: border-box;
	cursor: pointer;
	display: block;
	position: relative;
	border-radius: 5px;
}
.cont01 .checkbox01 p.category_title::before {
	background: var(--gray);
	content: '';
	display: block;
	height: 30px;
	margin-top: -12px;
	position: absolute;
	width: 30px;
	border-radius: 3px;
	left: 10px;
	top: 20px;
}
.cont01 .checkbox01::before {
	border-right: 3px solid #fff;
	border-bottom: 3px solid #fff;
	content: '';
	display: block;
	height: 22px;
	margin-top: -11px;
	position: absolute;
	transform: rotate(45deg);
	width: 10px;
	z-index: 2;
	left: 19px;
	top: 18px;
}
.cont01 .checkbox01 p.category_title {
	font-size: 22px;
	font-weight: bold;
	padding: 10px 7px 10px 50px;
	color: #fff;
}
.cont01 .checkbox01 p.category_title span{
	font-size: 14px;
	font-weight: normal;
	padding-left: 1em;
}
.cont01 .checkbox01.keiri p.category_title{
	background: var(--keiri);
}
.cont01 .checkbox01.houmu p.category_title{
	background: var(--houmu);
}
.cont01 .checkbox01.jinji p.category_title{
	background: var(--jinji);
}
.cont01 .checkbox01.soumu p.category_title{
	background: var(--soumu);
}
.cont01 .checkbox01.system p.category_title{
	background: var(--system);
}
/* .cont01 .checkbox01.jinji {
	border: solid 2px var(--jinji);
}
.cont01 #jinji .checkbox01 p.category_title {
	color: var(--jinji);
} */
.cont01 .checkbox01.keiri {
	border: solid 2px var(--keiri);
}
.cont01 .checkbox01.houmu {
	border: solid 2px var(--houmu);
}
.cont01 .checkbox01.jinji {
	border: solid 2px var(--jinji);
}
.cont01 .checkbox01.soumu {
	border: solid 2px var(--soumu);
}
.cont01 .checkbox01.system {
	border: solid 2px var(--system);
}

.cont01 .form_category .checkbox01 .gyomu_List{
	padding: 10px;
	justify-content: center;
}
.cont01 .form_category .checkbox01 .gyomu_List li{
	position: relative;
	width: calc((100% / 3) - 2%);
	max-width: 100px;
	min-width: 100px;
	border-radius: 50%;
	margin-right: 2%;
	margin-bottom: 2%;
}
.cont01 .form_category .checkbox01 .gyomu_List li:last-child,
.cont01 .form_category .checkbox01.keiri .gyomu_List li:nth-child(3){
	margin-right: 0;
}
.cont01 .form_category .checkbox01.keiri .gyomu_List li{
	background: #36cdff;
}
.cont01 .form_category .checkbox01.houmu .gyomu_List li{
	background: #4be565;
}
.cont01 .form_category .checkbox01.houmu .gyomu_List{
	width: 90%;
	margin: 0 auto;
}
.cont01 .form_category .checkbox01 .gyomu_List li div{
	position: relative;
	padding-top: 100%;
	height: 0;
}
.cont01 .form_category .checkbox01 .gyomu_List li div span{
	position: absolute;
    top: 52%;
    transform: translateY(-50%);
	left: 0;
	right: 0;
	margin: 0;
	text-align: center;
	color: #fff;
	font-size: 16px;
	line-height: 1.2;
}

input[type=checkbox]:checked + .checkbox01.keiri,
input[type=checkbox]:checked + .checkbox01.jinji,
input[type=checkbox]:checked + .checkbox01.houmu,
input[type=checkbox]:checked + .checkbox01.soumu,
input[type=checkbox]:checked + .checkbox01.system{
	border: solid 3px #f65151;
	background: #faefef;
}
input[type=checkbox]:checked + .checkbox01 p.category_title::before {
	background: #f65151;
}

/*---end form---*/
.form_cam_bg {
    background: var(--gray);
    background-color: #fff;
}
.form_cam .cam-tag  {
    position: absolute;
    top: 0rem;
    right: 20px;
    max-width: 150px;
    width: 100%;
    z-index: 20;
}
.unndone{
	font-weight:bold;
}
.unndone span{
border-bottom:1px solid  var(--basic);
font-weight:bold;
}
.mail .error{
text-align: left;
margin-bottom:1rem;
}
/* 根岸追記 */
#partnerCodeOpen.done {
    color: var(--basic);
    font-size: 16px;
    text-decoration: underline;
    cursor: pointer;
}
#partnerCodeOpen.done:after {
    content: "をお持ちの方はこちら";
}
#partnerCode dd {
    display: none;
}
#partnerCode dd{

}

/* --------------------------------
アーカイブ対応
----------------------------------- */
/* .lower_ttl{
    height: 280px;
}
.page_ttl p {
    padding-bottom: 20px;
} */
.page_ttl p.archive-txt{
    font-size: 28px;
	width: 90%;
    max-width: 500px;
    margin: 0 auto;
    padding-bottom: 10px;
}

/* --------------------------------
クローズ対応
----------------------------------- */
.end_txt {
	margin-top: 10px;
}
/* END */
@media screen and (max-width: 1024px) {

	.manegy_login,.new_login{
		width: 48%;
		justify-content: space-between;
	}
}

@media screen and (max-width: 852px){
    .form_cam .cam-tag {
        top: -17px;
        right: 20px;
        max-width: 108px;
    }
	.cont01 .form_category .checkbox01 .gyomu_List li{
		min-width: 0;
	}
}

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

	.page_ttl p span.min01{
		font-size: 1.4rem;
		padding: 5px;
	}
	.page_ttl p.close_txt{
		margin-top: 10px;
		font-size: 16px;
	}

	.form{
		padding: 40px 0;
	}
	.form-til {
		font-size: 16px;
		padding: 10px 0;
	}
	.form-til > span{
		font-size: 14px;
		padding: 0 10px;
		margin-left: 6px;
	}
	.manegy_login,.new_login{
		width: 100%;
	}
	.manegy_login {
		margin-bottom: 2rem;
		order: 2;
	}
	#manegy_login {
		margin-top: -4rem;
		padding-top: 4rem;
	}
	.new_login {
		margin-bottom: 4rem;
	}
	.manegy_login_link {
		font-size: 15px;
		padding-top: 15px;
		text-align: center;
	}
	.manegy_login_link a {
		text-decoration: underline;
	}
	.form_cam-tag {
		top: -2rem;
	}

}

@media screen and (max-width: 540px) {
	.form{
		padding: 10px 0;
	}
    .form_cam .cam-tag {
        top: -18px;
        right: 5px;
        max-width: 96px;
    }
	.form-box .inner {
		padding: 20px 15px 30px;
	}
	.new_login{
		margin-top: 30px;
	}
	.new_login .manegy-point {
		padding: 3px;
		font-size: 1.4rem;
	}
	.form-box .new_entry {
		font-size: 14px;
		margin-bottom: 20px;
	}
	.campaign_caution{
		font-size: 12px;
	}
	.form dt, .cont01 h4{
		font-size: 14px;
		line-height: 1.6;
		margin-bottom: 5px;
	}
	.form dt i{
		line-height: 1.8rem;
	}
	.form-box dd{
		font-size: 14px;
	}
	.form ul.postcode li.text,
	.form ul.postcode li.text02{
		width: 10%;
	}
	.form ul.address01 li.text{
		width: 25%;
	}
	.chk {
		padding: 5px 20px 0 22px;
	}
	.chk::before {
		width: 14px;
		height: 14px;
		left: 0;
		margin-top: -5px;
	}
	.chk::after {
		left: 5px;
		margin-top: -5px;
	}
	.form-txt {
		display: inline-block;
		font-size: 12px;
		line-height: 1.4;
		margin: 5px 0 0;
		letter-spacing: 0.05em;
	}
	.caution_term{
		padding: 15px;
	}
	.rule-til{
		font-size: 16px;
	}
	.caution_term h2 {
		font-size: 16px;
	}
	.caution_term h3 {
		font-size: 14px;
	}
	.caution_term p{
		font-size: 13px;
		line-height: 1.5;
	}
	.cont01 .form_category{
		width: 100%;
	}
	.cont01 .checkbox01 p.category_title{
		font-size: 20px;
	}
	.cont01 .checkbox01 p.category_title span {
		font-size: 12px;
	}
	.cont01 .form_category .checkbox01 .gyomu_List li div span{
		font-size: 14px;
	}
	.cont01 .form_category .checkbox01.houmu .gyomu_List li{
		width: 48%;
	}
	.cont01 .form_category .checkbox01.houmu .gyomu_List li:nth-child(2){
		margin-right: 0;
	}

}
