@charset "utf-8";
/* ========================================
   Suifeel Partner Program - TB
   768px - 1080px
======================================== */

.PartnerProgramPage{
	overflow: hidden;
}

.PartnerProgramContainer{
	width: 100%;
	max-width: 100%;
	padding: 0 34px;
	box-sizing: border-box;
}

/* HERO */

.LowerHero-partnerProgram{
	min-height: 520px;
}

.LowerHero-partnerProgram .LowerHero_bg{
	background-position: 68% center;
	background-size: cover;
}

.LowerHero-partnerProgram .LowerHero_inner{
	padding: 150px 34px 92px;
}

.LowerHero-partnerProgram .LowerHero_content{
	width: min(620px, 100%);
}

/* Intro */

.PartnerProgramIntro{
	padding: 94px 0 0;
}

.PartnerProgramIntro_inner{
	grid-template-columns: 1fr;
	row-gap: 36px;
}

.PartnerProgramIntro_body{
	padding-top: 0;
}

.PartnerProgramIntro_body .SfText{
	max-width: 100%;
}

.PartnerProgramIntro_body .SfText + .SfText{
	margin-top: 24px;
}

/* Anchor：HTML削除済み想定だが、残っても崩れない保険 */

.PartnerProgramAnchor{
	max-width: 100%;
	margin: 64px auto 0;
}

.PartnerProgramAnchor_list{
	grid-template-columns: 1fr;
	column-gap: 0;
}

/* Section Rhythm */

.PartnerProgramOverview,
.PartnerProgramType,
.PartnerProgramReward,
.PartnerProgramRule,
.PartnerProgramSupport,
.PartnerProgramFlow,
.PartnerProgramFaq{
	padding-top: 104px;
}

.PartnerProgramEntry{
	padding: 108px 0 128px;
}

/* Overview */

.PartnerProgramOverview_grid{
	grid-template-columns: 1fr;
	margin-top: 64px;
}

.PartnerProgramOverview_card{
	min-height: auto;
	padding: 34px 32px;
	border-right: none;
	border-bottom: 1px solid rgba(13,11,43,.08);
}

.PartnerProgramOverview_card:last-child{
	border-bottom: none;
}

.PartnerProgramOverview_card h3{
	font-size: 22px;
}

/* Type */

.PartnerProgramType_head{
	grid-template-columns: 1fr;
	row-gap: 34px;
}

.PartnerProgramType_head .SfText{
	max-width: 100%;
	padding-top: 0;
}

.PartnerProgramType_list{
	grid-template-columns: 1fr;
	margin-top: 62px;
}

.PartnerProgramType_item{
	min-height: auto;
	padding: 36px 34px;
	border-right: none;
	border-bottom: 1px solid rgba(13,11,43,.08);
}

.PartnerProgramType_item:last-child{
	border-bottom: none;
}

.PartnerProgramType_item h3{
	font-size: 23px;
}

/* Reward */

.PartnerProgramReward_body{
	grid-template-columns: 1fr;
	gap: 24px;
	margin-top: 62px;
}

.PartnerProgramReward_main{
	padding: 42px 38px 40px;
}

.PartnerProgramReward_main h3,
.PartnerProgramReward_box h3{
	font-size: 24px;
}

.PartnerProgramReward_priceList{
	grid-template-columns: repeat(3, minmax(0,1fr));
	margin-top: 38px;
}

.PartnerProgramReward_priceList div{
	padding: 28px 22px 30px;
}

.PartnerProgramReward_priceList strong{
	font-size: 27px;
}

.PartnerProgramReward_note{
	text-align: left;
}

.PartnerProgramReward_sub{
	grid-template-columns: 1fr 1fr;
	gap: 22px;
}

.PartnerProgramReward_box{
	padding: 34px 32px;
}

.PartnerProgramReward_box li{
	flex-direction: column;
	gap: 4px;
}

.PartnerProgramReward_box li strong{
	white-space: normal;
}

/* Rule */

.PartnerProgramRule_inner{
	padding: 74px 0 78px;
}

.PartnerProgramRule_head{
	display: block;
}

.PartnerProgramRule_body{
	margin-top: 62px;
}

.PartnerProgramRule_list{
	grid-template-columns: repeat(2, minmax(0,1fr));
}

.PartnerProgramRule_list article{
	min-height: auto;
	padding: 34px 30px;
	border-right: 1px solid rgba(13,11,43,.08);
	border-bottom: 1px solid rgba(13,11,43,.08);
}

.PartnerProgramRule_list article:nth-child(2n){
	border-right: none;
}

.PartnerProgramRule_list article:nth-child(n+3){
	border-bottom: none;
}

.PartnerProgramRule_list h3{
	font-size: 21px;
}

/* Support */

.PartnerProgramSupport_grid{
	grid-template-columns: 1fr;
	margin-top: 62px;
}

.PartnerProgramSupport_grid article{
	min-height: auto;
	padding: 34px 32px;
	border-right: none;
	border-bottom: 1px solid rgba(13,11,43,.08);
}

.PartnerProgramSupport_grid article:last-child{
	border-bottom: none;
}

/* Flow */

.PartnerProgramFlow_steps{
	grid-template-columns: repeat(2, minmax(0,1fr));
	margin-top: 62px;
}

.PartnerProgramFlow_steps article{
	min-height: auto;
	padding: 36px 32px;
	border-right: 1px solid rgba(13,11,43,.08);
	border-bottom: 1px solid rgba(13,11,43,.08);
}

.PartnerProgramFlow_steps article:nth-child(2n){
	border-right: none;
}

.PartnerProgramFlow_steps article:nth-child(n+3){
	border-bottom: none;
}

.PartnerProgramFlow_steps h3{
	font-size: 21px;
}

/* FAQ */

.PartnerProgramFaq_list{
	max-width: 100%;
	margin-top: 58px;
}

.PartnerProgramFaq_item summary{
	padding: 28px 76px 28px 30px;
	font-size: 17px;
}

.PartnerProgramFaq_item summary::after{
	right: 30px;
}

.PartnerProgramFaq_item div{
	padding: 0 30px 32px;
}

/* Entry CTA */

.PartnerProgramEntry_inner{
	max-width: 100%;
	padding: 68px 52px 66px;
	border-radius: 34px;
}

.PartnerProgramEntry h2{
	font-size: 31px;
	line-height: 1.55;
}

.PartnerProgramEntry p:not(.SfEyebrow):not(.PartnerProgramEntry_note){
	font-size: 14px;
	line-height: 2.05;
}

.PartnerProgramPrimaryBtn{
	min-width: 300px;
	min-height: 58px;
}

/* Common */

#partner_overview,
#partner_type,
#partner_reward,
#partner_rule,
#partner_support,
#partner_flow,
#partner_faq,
#partner_entry{
	scroll-margin-top: 120px;
}

.pc-only{
	display: none;
}

.sp-only{
	display: none;
}