@charset "utf-8";
/* ========================================
   Suifeel Partner Entry - PC
======================================== */

.PartnerEntryPage{
	width:100%;
	background:#fff;
	color:#0D0B2B;
	overflow:hidden;
}

.PartnerEntryContainer{
	width:100%;
	max-width:1280px;
	margin:0 auto;
	padding:0 40px;
	box-sizing:border-box;
}

/* LowerHero */

.LowerHero-partnerEntry .LowerHero_bg{
	background:
		linear-gradient(90deg, rgba(247,251,253,.96), rgba(247,251,253,.42)),
		url(../commonImages/h1_img_partner-entry.png);
	background-position:center right;
	background-size:cover;
}

/* Intro */

.PartnerEntryIntro{
	padding:118px 0 0;
	background:#fff;
}

.PartnerEntryIntro_inner{
	display:grid;
	grid-template-columns:38% 1fr;
	column-gap:96px;
	align-items:start;
}

.PartnerEntryIntro_body{
	padding-top:6px;
}

.PartnerEntryIntro_body .SfText{
	max-width:720px;
}

.PartnerEntryIntro_body .SfText + .SfText{
	margin-top:26px;
}

.PartnerEntryIntro_note{
	color:rgba(13,11,43,.52);
	font-size:13px;
}

.PartnerEntryBack{
	margin:58px 0 0;
	padding-top:28px;
	border-top:1px solid rgba(13,11,43,.08);
}

.PartnerEntryBack a{
	position:relative;
	display:inline-block;
	padding-left:18px;
	font-size:13px;
	line-height:1.8;
	font-weight:500;
	letter-spacing:.05em;
	color:rgba(13,11,43,.66);
	text-decoration:none;
	transition:
		color .25s ease,
		transform .25s ease;
}

.PartnerEntryBack a::before{
	content:"";
	position:absolute;
	left:0;
	top:.72em;
	width:7px;
	height:7px;
	border-left:1px solid #7BAFCB;
	border-bottom:1px solid #7BAFCB;
	transform:rotate(45deg);
}

.PartnerEntryBack a:hover{
	color:#0D0B2B;
	transform:translateX(-3px);
}

/* Form Section */

.PartnerEntryFormSection{
	padding:118px 0 160px;
	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f8fcfd 100%
		);
}

.PartnerEntryForm{
	max-width:1080px;
	margin:0 auto;
}

/* Error */

.PartnerEntryErrors{
	max-width:1080px;
	margin:0 auto 42px;
	padding:30px 34px;
	border:1px solid rgba(185,54,54,.22);
	background:rgba(255,247,247,.92);
	border-radius:26px;
	box-sizing:border-box;
}

.PartnerEntryErrors_title{
	margin:0 0 18px;
	font-size:15px;
	line-height:1.7;
	font-weight:600;
	letter-spacing:.05em;
	color:#9E3030;
}

.PartnerEntryErrors ul{
	margin:0;
	padding-left:1.4em;
}

.PartnerEntryErrors li{
	font-size:13.5px;
	line-height:2;
	letter-spacing:.035em;
	color:rgba(158,48,48,.86);
}

/* Block */

.PartnerEntryFormBlock,
.PartnerEntryAgreement{
	margin-top:48px;
	padding:48px 52px 52px;
	background:rgba(255,255,255,.94);
	border:1px solid rgba(13,11,43,.07);
	border-radius:34px;
	box-shadow:0 24px 70px rgba(13,11,43,.045);
	box-sizing:border-box;
}

.PartnerEntryFormBlock:first-of-type{
	margin-top:0;
}

.PartnerEntryFormHead{
	margin:0 0 38px;
	padding-bottom:28px;
	border-bottom:1px solid rgba(13,11,43,.08);
}

.PartnerEntryFormHead h2{
	margin:0;
	font-size:26px;
	line-height:1.55;
	font-weight:500;
	letter-spacing:.05em;
	color:#0D0B2B;
}

/* Fields */

.PartnerEntryFieldGrid{
	display:grid;
	grid-template-columns:repeat(2, minmax(0,1fr));
	column-gap:28px;
	row-gap:28px;
}

.PartnerEntryField{
	min-width:0;
}

.PartnerEntryFieldWide{
	grid-column:1 / -1;
}

.PartnerEntryField label{
	display:block;
	margin:0 0 10px;
	font-size:13px;
	line-height:1.7;
	font-weight:600;
	letter-spacing:.055em;
	color:rgba(13,11,43,.82);
}

.PartnerEntryField label span{
	display:inline-flex;
	align-items:center;
	margin-left:10px;
	padding:3px 8px;
	border-radius:999px;
	background:rgba(123,175,203,.12);
	color:#4D6A7F;
	font-size:10px;
	line-height:1;
	font-weight:600;
	letter-spacing:.08em;
	vertical-align:middle;
}

.PartnerEntryField input,
.PartnerEntryField textarea{
	width:100%;
	border:1px solid rgba(13,11,43,.12);
	background:#fff;
	border-radius:0;
	box-sizing:border-box;
	font-size:14px;
	line-height:1.8;
	letter-spacing:.035em;
	color:#0D0B2B;
	outline:none;
	transition:
		border-color .25s ease,
		box-shadow .25s ease,
		background .25s ease;
}

.PartnerEntryField input{
	height:56px;
	padding:0 16px;
}

.PartnerEntryField textarea{
	min-height:148px;
	padding:15px 16px;
	resize:vertical;
}

.PartnerEntryField input:focus,
.PartnerEntryField textarea:focus{
	border-color:rgba(123,175,203,.88);
	box-shadow:0 0 0 4px rgba(123,175,203,.10);
	background:#fff;
}

.PartnerEntryField input::placeholder,
.PartnerEntryField textarea::placeholder{
	color:rgba(13,11,43,.34);
}

.PartnerEntryHelp{
	margin:12px 0 0;
	font-size:12px;
	line-height:1.9;
	letter-spacing:.035em;
	color:rgba(13,11,43,.48);
}

.lot-field-hidden{
	display:none;
}

/* Radio */

.PartnerEntryRadioBlock{
	padding:30px 32px;
	border:1px solid rgba(13,11,43,.07);
	background:
		linear-gradient(180deg, rgba(247,252,255,.72), rgba(255,255,255,.96));
	box-sizing:border-box;
}

.PartnerEntryRadioTitle{
	margin:0 0 22px;
	font-size:14px;
	line-height:1.8;
	font-weight:600;
	letter-spacing:.055em;
	color:#0D0B2B;
}

.PartnerEntryRadioGroup{
	display:flex;
	flex-wrap:wrap;
	gap:16px;
}

.PartnerEntryRadioGroup label{
	position:relative;
	display:flex;
	align-items:center;
	min-width:160px;
	height:52px;
	padding:0 20px;
	border:1px solid rgba(13,11,43,.10);
	background:#fff;
	box-sizing:border-box;
	cursor:pointer;
	transition:
		border-color .25s ease,
		background .25s ease;
}

.PartnerEntryRadioGroup input{
	margin:0 12px 0 0;
	accent-color:#0D0B2B;
}

.PartnerEntryRadioGroup span{
	font-size:14px;
	line-height:1;
	font-weight:500;
	letter-spacing:.05em;
	color:rgba(13,11,43,.76);
}

.PartnerEntryRadioGroup label:has(input:checked){
	border-color:rgba(123,175,203,.65);
	background:rgba(247,252,255,.92);
}

#lotNoField{
	margin-top:30px;
}

/* Agreement */

.PartnerEntryAgreement{
	padding-bottom:48px;
}

.PartnerEntryAgreementBlock{
	margin-top:38px;
}

.PartnerEntryAgreementBlock:first-of-type{
	margin-top:0;
}

.PartnerEntryAgreementBlock h3{
	margin:0 0 20px;
	font-size:22px;
	line-height:1.55;
	font-weight:500;
	letter-spacing:.05em;
	color:#0D0B2B;
}

.PartnerEntryTermsBox{
	height:260px;
	overflow-y:auto;
	padding:28px 30px;
	border:1px solid rgba(13,11,43,.08);
	background:
		linear-gradient(180deg, rgba(250,253,255,.92), rgba(255,255,255,1));
	box-sizing:border-box;
}

.PartnerEntryTermsBox h4{
	margin:0 0 24px;
	font-size:18px;
	line-height:1.6;
	font-weight:500;
	letter-spacing:.05em;
	color:#0D0B2B;
}

.PartnerEntryTermsBox p,
.PartnerEntryTermsBox li{
	font-size:13px;
	line-height:2.05;
	letter-spacing:.035em;
	color:rgba(13,11,43,.68);
}

.PartnerEntryTermsBox p{
	margin:0 0 20px;
}

.PartnerEntryTermsBox ul{
	margin:0 0 22px;
	padding-left:1.4em;
}

.PartnerEntryTermsBox strong{
	font-weight:600;
	color:rgba(13,11,43,.82);
}

.PartnerEntryAgreeLabel{
	display:flex;
	align-items:flex-start;
	gap:12px;
	margin-top:18px;
	cursor:pointer;
}

.PartnerEntryAgreeLabel input{
	margin-top:.35em;
	accent-color:#0D0B2B;
}

.PartnerEntryAgreeLabel input:disabled + span{
	color:rgba(13,11,43,.34);
}

.PartnerEntryAgreeLabel span{
	font-size:13.5px;
	line-height:1.9;
	letter-spacing:.04em;
	color:rgba(13,11,43,.70);
}

/* Submit */

.PartnerEntrySubmitArea{
	max-width:1080px;
	margin:56px auto 0;
	padding:46px 52px 50px;
	text-align:center;
	background:
		linear-gradient(
			180deg,
			rgba(247,252,255,.86),
			rgba(255,255,255,.98)
		);
	border:1px solid rgba(123,175,203,.18);
	border-radius:34px;
	box-sizing:border-box;
}

.PartnerEntrySubmitArea p{
	margin:0 0 30px;
	font-size:13.5px;
	line-height:2;
	letter-spacing:.04em;
	color:rgba(13,11,43,.58);
}

.PartnerEntrySubmitBtn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:340px;
	min-height:62px;
	padding:0 40px;
	border:none;
	border-radius:999px;
	background:#0D0B2B;
	color:#fff;
	font-size:15px;
	line-height:1.6;
	font-weight:500;
	letter-spacing:.08em;
	cursor:pointer;
	transition:
		opacity .25s ease,
		transform .25s ease,
		box-shadow .25s ease;
}

.PartnerEntrySubmitBtn:hover:not(:disabled){
	transform:translateY(-2px);
	box-shadow:0 18px 40px rgba(13,11,43,.14);
}

.PartnerEntrySubmitBtn:disabled{
	cursor:not-allowed;
	opacity:.34;
	box-shadow:none;
}

/* Common */

.pc-only{
	display:inline;
}

.sp-only{
	display:none;
}

@media screen and (min-width:1081px){
	.LowerHero-partnerEntry{
		min-height:620px;
	}
}