@charset "shift_jis";

/* ======================================================
 * /common-files/css/bnpl/index.css
====================================================== */
body{
	min-width: 1260px;
	font-family: 'Heebo', 'Noto Sans CJK JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 18px;
	font-size: 1.8rem;
	color: #191919;
}
/* header
------------------------------------------------------ */
#header {
	display: flex;
	align-items: center;
	width: 100%;
	height: 71px;
	margin: 0 auto;
	padding: 0;
	border: none;
	border-bottom: 1px solid #bebebe;
	background-color: #fff;
}
#headerLogo {
	width: 1260px;
	margin: 0 auto;
	padding: 6px 30px;
}
#headerLogo img {
	height: 42px;
}
/* layout
------------------------------------------------------ */
#pageContainer{
	overflow-x: hidden;
}
#mainContainer {
	margin-top: 0;
}
#mainContents{
	width: 1260px;
	padding: 0 30px 45px;
}
a:hover,
a:visited,
a:link{
	color: #45a2b0;
	text-decoration: underline;
}
p,ul,ol,div {
	color: #191919;
}
#member_privilege {
	padding-top: 20px!important;
}
#member_privilege > .nanoha-heading02-02 {
	margin-top: 30px!important;
}
/* footer
------------------------------------------------------ */
#footer {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 130px;
	margin: 0 auto;
	padding: 0;
	border: none;
	border-top: 1px solid #bebebe;
	background-color: #fff;
}
#copyright {
	font-size: 1.2rem;
	color: #191919;
}
/* mainVisual
------------------------------------------------------ */
.mainVisual {
	background-color: #45a2b0;
}
.mainVisual .mainVisualInner {
	width: 1260px;
	margin: 0 auto;
	padding: 50px 30px 30px;
}
.mainVisual .mainVisualBox {
	border-radius: 10px;
	background-color: #fff;
}
.mainVisual .mainVisualBox .mainVisualBoxInner {
	padding: 40px;
}
.mainVisual .mainVisualMedia {
	display: flex;
	justify-content: center;
	align-items: center;
}
.mainVisual .mainVisualMedia .mainVisualMediaHead {
	margin-right: 20px;
}
.mainVisual .mainVisualMedia .mainVisualMediaImage img {
	width: 81px;
}
.mainVisual .mainVisualMedia .mainVisualMediaText {
	font-size: 2.6rem;
	font-weight: bold;
}
.mainVisual .mainVisualText {
	margin-top: 20px;
	text-align: center;
	font-size: 1.6rem;
	color: #fff;
}

/* module
------------------------------------------------------ */
/*content*/
.wideContent {
	position: relative;
	left: 50%;
	width: 1920px;
	background-color: #e6e6e6; 
	transform: translateX(-50%);
}
.wideContent .wideContentInner {
	width: 1260px;
	margin: 0 auto;
	padding: 30px;
}
.wideContent .wideContentInner >:first-child {
	margin-top: 0 !important;
}
/*heading*/
.pay-heading02 {
	margin-top: 30px;
}
.pay-heading02 .pay-heading02Title {
	position: relative;
	width: fit-content;
	margin: 0 auto;
	padding: 0 40px;
	font-size: 3.2rem;
	font-weight: bold;
}
.pay-heading02 .pay-heading02Title::before {
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 3px;
	margin: auto;
	border-radius: 1.5px;
	background-color: #a6a6a6;
}
section.noMarginHeading .pay-heading02-02 {
	margin-top: 0;
}
.pay-heading02-02 {
	position: relative;
	left: 50%;
	width: 1920px;
	margin-top: 30px;
	background-color: #45a2b0;
	transform: translateX(-50%);
}
.pay-heading02-02 .pay-heading02Inner {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1260px;
	min-height: 120px;
	margin: 0 auto;
	padding: 30px;
}
.pay-heading02-02 .pay-heading02Title {
	font-size: 3.2rem;
	color: #fff;
	font-weight: bold;
}
/*text*/
.pay-linkText {
	margin-top: 30px;
	font-size: 1.8rem;
}
.pay-linkText a:hover{
	text-decoration: none;
}
/*btn*/
.pay-btn {
	display: flex;
	justify-content: center;
	margin-top: 30px;
}
.pay-btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	min-width: 500px;
	min-height: 84px;
	padding: 10px 30px;
	border-radius: 40px;
	border-bottom: 4px solid #bbb;
	background-color: #fff;
	font-size: 2.2rem;
	color: #333;
	font-weight: bold;
	text-decoration: none;
}
.pay-btn a:hover {
	min-height: 81px;
	margin-top: 3px;
	border-bottom: 1px solid #bbb;
}
/*list*/
.pay-linkList {
	display: flex;
	flex-flow: row wrap;
	margin: 50px 150px 0;
}
.pay-linkList > li {
	position: relative;
	margin-right: 35px;
	padding-left: 20px;
}
.pay-linkList > li::before {
	content: '';
	position: absolute;
	top: 6px;
	left: 0;
	width: 8px;
	height: 15px;
	background: url("/bnpl/img-files/index_ic03.png") no-repeat 0 0 / cover;
}
.pay-linkList > li a {
	font-size: 1.6rem;
	color: #191919;
	text-decoration: none;
}
.pay-linkList > li a:hover {
	opacity: 0.7;
}
.pay-noteList {
	margin-top: 25px;
}
.pay-noteList > li {
	position: relative;
	padding-left: 16px;
	font-size: 1.6rem;
}
.pay-noteList > li > .mark {
	position: absolute;
	top: 0;
	left: 0;
}
/*flow*/
.pay-flowWrap {
	margin-top: 30px;
	padding: 0 90px;
}
.pay-flow {
	margin: 5px 0 30px;
}
.pay-flow .pay-flowTitle {
	position: relative;
	margin-top: 10px;
	font-size: 1.9rem;
	color: #008191;
	font-weight: bold;
}
.pay-flow .pay-flowTitle::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 2px;
	margin-top: -1px;
	background-image: linear-gradient(to right, #008191, #008191 4px, transparent 4px, transparent 8px);
	background-size: 8px 2px;
}
.pay-flow .pay-flowTitle span {
	position: relative;
	padding-right: 2px;
	background-color: #fff;
	z-index: 1;
}
.pay-flow .pay-flowItem {
	display: flex;
	align-items: center;
	flex-flow: row wrap;
	margin-top: 20px;
}
.pay-flow .pay-flowNum {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	height: 50px;
	margin-right: 10px;
	background-color: #45a2b0;
	border-radius: 50%;
}
.pay-flow .pay-flowNum span {
	font-size: 2rem;
	color: #fff;
}
.pay-flow .pay-flowImage {
	flex-shrink: 0;
	width: 80px;
}
.pay-flow .pay-flowImage img {
	width: 63px;
}
.pay-flow .pay-flowTextArea {
	width: 80%;
}
.pay-flow .pay-flowText {
	font-size: 2rem;
}
.pay-flow .pay-flowText .txtStrong{
	font-size: 2.4rem;
	color: #dc322c;
	font-weight: bold;
}
.pay-flow .pay-flowText.txColor01{
	color: #dc322c;
}
.pay-flow .pay-flowText.txtSmall01{
	font-size: 1.6rem;
}
/*accordion*/
.pay-faqAccordionWrap {
	margin: 20px 150px 0;
}
.pay-faqAccordionWrap >:first-child {
	margin-top: 0;
}
.pay-faqAccordion {
	margin-top: 10px;
}
.pay-faqAccordion .pay-faqAccordionHead {
	display: block;
	position: relative;
	padding: 18px 50px 18px 65px;
	border-radius: 20px;
	background-color: #d9d9d9;
	font-size: 2rem;
	color: #444;
	font-weight: bold;
	text-decoration: none;
	transition: all 0.3s ease-out;
}
.pay-faqAccordion .pay-faqAccordionHead.open {
	border-radius: 20px 20px 0 0;
}
.pay-faqAccordion .pay-faqAccordionHead::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 15px;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	background: url("/bnpl/img-files/index_ic01.png") no-repeat 0 0 / cover;
}
.pay-faqAccordion .pay-faqAccordionHead .pay-faqAccordionTitle::before,
.pay-faqAccordion .pay-faqAccordionHead .pay-faqAccordionTitle::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 20px;
	width: 20px;
	height: 4px;
	margin-top: -2px;
	background-color: #666;
	border-radius: 2px;
	transition: all 0.3s ease-out;
}
.pay-faqAccordion .pay-faqAccordionHead .pay-faqAccordionTitle::after {
	transform: rotate(90deg);
}
.pay-faqAccordion .pay-faqAccordionHead.open .pay-faqAccordionTitle::after {
	transform: rotate(0);
}
.pay-faqAccordion .pay-faqAccordionBody {
	position: relative;
	padding: 25px 25px 30px 65px;
	background-color: #f5f5f5;
	border-radius: 0 0 20px 20px;
}
.pay-faqAccordion .pay-faqAccordionBody >:first-child {
	margin-top: 0;
}
.pay-faqAccordion .pay-faqAccordionBody::before {
	content: '';
	position: absolute;
	top: 16px;
	left: 15px;
	width: 40px;
	height: 40px;
	background: url("/bnpl/img-files/index_ic02.png") no-repeat 0 0 / cover;
}
.pay-faqAccordionNoteList {
	margin-top: 10px;
}
.pay-faqAccordionNoteList > li {
	position: relative;
	padding-left: 18px;
	font-size: 1.8rem;
}
.pay-faqAccordionNoteList > li > .mark {
	position: absolute;
	top: 0;
	left: 0;
}
.pay-faqAccordionOrderList {
	margin-top: 10px;
}
.pay-faqAccordionOrderList > li {
	position: relative;
	padding-left: 18px;
	font-size: 1.8rem;
}
.pay-faqAccordionOrderList > li > .mark {
	position: absolute;
	top: 0;
	left: 0;
}
@media screen and (max-width: 750px) {
	body{
		min-width: 100%;
		font-size: 13px;
		font-size: 1.3rem;
	}
	#pageContainer{
		overflow-x: hidden;
	}
	#mainContents{
		width: 100%;
	}
	/* header
	------------------------------------------------------ */
	#header {
		display: flex;
		align-items: center;
		padding: 0 10px;
		height: 49px;
		border-bottom: 1px solid #bebebe;
	}
	#headerLogo {
		padding: 5px 0 7px;
	}
	#headerLogo img {
		height: 27px;
	}
	/* layout
	------------------------------------------------------ */
	#mainContainer {
		margin-top: 0;
	}
	#mainContents{
		padding-right: 10px;
		padding-left: 10px;
	}
	/* footer
	------------------------------------------------------ */
	#footer {
		display: flex;
		align-items: center;
		padding: 0 10px;
		height: 82px;
		border-top: 1px solid #bebebe;
	}
	#copyright {
		font-size: 10px;
		font-size: 1rem;
	}
	/* mainVisual
	------------------------------------------------------ */
	.mainVisual {
		background-color: #45a2b0;
	}
	.mainVisual .mainVisualInner {
		width: 100%;
		margin: 0 auto;
		padding: 25px 10px 20px;
	}
	.mainVisual .mainVisualBox {
		border-radius: 15px;
		background-color: #fff;
	}
	.mainVisual .mainVisualBox .mainVisualBoxInner {
		padding: 25px;
	}
	.mainVisual .mainVisualMedia {
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.mainVisual .mainVisualMedia .mainVisualMediaHead {
		margin-right: 15px;
	}
	.mainVisual .mainVisualMedia .mainVisualMediaImage img {
		width: 51px;
	}
	.mainVisual .mainVisualMedia .mainVisualMediaText {
		font-size: 2rem;
		font-weight: bold;
	}
	.mainVisual .mainVisualText {
		margin-top: 15px;
		text-align: center;
		font-size: 1.4rem;
		color: #fff;
	}
	/* module
	------------------------------------------------------ */
	/*content*/
	.wideContent {
		position: static;
		width: 100vw;
		margin-left: -10px;
		background-color: #e6e6e6; 
		transform: none;
	}
	.wideContent .wideContentInner {
		width: 100%;
		margin: 0 auto;
		padding: 20px 10px;
	}
	.wideContent .wideContentInner :first-child {
		margin-top: 0 !important;
	}
	/*heading*/
	.pay-heading02 {
		margin-top: 30px;
	}
	.pay-heading02 .pay-heading02Title {
		position: relative;
		width: fit-content;
		margin: 0 auto;
		padding: 0 10px;
		font-size: 1.8rem;
		font-weight: bold;
	}
	.pay-heading02 .pay-heading02Title::before {
		content: '';
		position: absolute;
		bottom: 0;
		right: 0;
		left: 0;
		width: 100%;
		height: 2px;
		margin: auto;
		border-radius: 1.5px;
		background-color: #a6a6a6;
	}
	.pay-heading02-02 {
		position: static;
		width: 100vw;
		margin-top: 20px;
		margin-left: -10px;
		background-color: #45a2b0; 
		transform: none;
	}
	.pay-heading02-02 .pay-heading02Inner {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		min-height: 60px;
		margin: 0 auto;
		padding: 15px 10px;
	}
	.pay-heading02-02 .pay-heading02Title {
		font-size: 1.9rem;
		color: #fff;
		font-weight: bold;
	}
	/*text*/
	.pay-linkText {
		margin-top: 20px;
		font-size: 1.5rem;
	}
	.pay-linkText a:hover{
		text-decoration: underline;
	}
	/*btn*/
	.pay-btn {
		display: flex;
		justify-content: center;
		margin-top: 20px;
	}
	.pay-btn a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		min-width: auto;
		min-height: 52px;
		padding: 10px 20px;
		border-radius: 25px;
		border-bottom: 2px solid #bbb;
		background-color: #fff;
		font-size: 1.6rem;
		color: #333;
		font-weight: bold;
		text-decoration: none;
	}
	.pay-btn a:hover {
		min-height: 52px;
		margin-top: 0;
		border-bottom: 2px solid #bbb;
	}
	.pay-linkList {
		display: flex;
		flex-flow: row wrap;
		margin: 50px 0 0;
	}
	.pay-linkList > li {
		position: relative;
		margin-right: 35px;
		margin-bottom: 15px;
		padding-left: 10px;
	}
	.pay-linkList > li::before {
		content: '';
		position: absolute;
		top: 5px;
		left: 0;
		width: 6px;
		height: 10px;
		background: url("/bnpl/img-files/index_ic03.png") no-repeat 0 0 / cover;
	}
	.pay-linkList > li a {
		font-size: 1.4rem;
		color: #191919;
		text-decoration: none;
	}
	.pay-linkList > li a:hover {
		opacity: 1;
	}
	.pay-noteList {
		margin-top: 15px;
	}
	.pay-noteList > li {
		position: relative;
		padding-left: 13px;
		font-size: 1.3rem;
	}
	.pay-noteList > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	/*flow*/
	.pay-flowWrap {
		padding: 0 10px;
	}
	.pay-flow {
		margin: 15px 0 30px;
		padding: 0;
	}
	.pay-flow .pay-flowTitle {
		position: relative;
		margin-top: 10px;
		font-size: 1.4rem;
		color: #008191;
		font-weight: bold;
	}
	.pay-flow .pay-flowTitle::before {
		content: '';
		position: absolute;
		top: 50%;
		left: 0;
		width: 100%;
		height: 2px;
		margin-top: -1px;
		background-image: linear-gradient(to right, #008191, #008191 4px, transparent 4px, transparent 8px);
		background-size: 8px 2px;
	}
	.pay-flow .pay-flowTitle span {
		position: relative;
		padding-right: 2px;
		background-color: #fff;
		z-index: 1;
	}
	.pay-flow .pay-flowItem {
		display: flex;
		align-items: center;
		flex-flow: row;
	}
	.pay-flow .pay-flowItem + .pay-flowItem {
		margin-top: 20px;
	}
	.pay-flow .pay-flowNum {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-shrink: 0;
		width: 36px;
		height: 36px;
		margin-right: 10px;
		background-color: #45a2b0;
		border-radius: 50%;
	}
	.pay-flow .pay-flowNum span {
		font-size: 1.4rem;
		color: #fff;
	}
	.pay-flow .pay-flowImage {
		flex-shrink: 0;
		width: 49px;
		margin-right: 10px;
	}
	.pay-flow .pay-flowImage img {
		width: 40px;
	}
	.pay-flow .pay-flowTextArea {
		width: 80%;
	}
	.pay-flow .pay-flowText {
		font-size: 1.4rem;
	}
	.pay-flow .pay-flowText .txtStrong{
	font-size: 1.7rem;
}
	.pay-flow .pay-flowText.txtSmall01{
	font-size: 1.2rem;
}
	/*accordion*/
	.pay-faqAccordionWrap {
		margin: 10px 0 0;
	}
	.pay-faqAccordionWrap >:first-child {
		margin-top: 0;
	}
	.pay-faqAccordion {
		margin-top: 10px;
	}
	.pay-faqAccordion .pay-faqAccordionHead {
		display: block;
		position: relative;
		padding: 9.5px 30px 9.5px 40px;
		border-radius: 10px;
		background-color: #d9d9d9;
		font-size: 1.4rem;
		color: #444;
		font-weight: bold;
		text-decoration: none;
		transition: all 0.3s ease-out;
	}
	.pay-faqAccordion .pay-faqAccordionHead.open {
		border-radius: 10px 10px 0 0;
	}
	.pay-faqAccordion .pay-faqAccordionHead::before {
		content: '';
		position: absolute;
		top: 50%;
		left: 10px;
		width: 24px;
		height: 24px;
		margin-top: -12px;
		background: url("/bnpl/img-files/index_ic01.png") no-repeat 0 0 / cover;
	}
	.pay-faqAccordion .pay-faqAccordionHead .pay-faqAccordionTitle::before,
	.pay-faqAccordion .pay-faqAccordionHead .pay-faqAccordionTitle::after {
		content: '';
		position: absolute;
		top: 50%;
		right: 10px;
		width: 12px;
		height: 3px;
		margin-top: -1.5px;
		background-color: #666;
		border-radius: 2px;
		transition: all 0.3s ease-out;
	}
	.pay-faqAccordion .pay-faqAccordionHead .pay-faqAccordionTitle::after {
		transform: rotate(90deg);
	}
	.pay-faqAccordion .pay-faqAccordionHead.open .pay-faqAccordionTitle::after {
		transform: rotate(0);
	}
	.pay-faqAccordion .pay-faqAccordionBody {
		position: relative;
		padding: 13px 13px 13px 40px;
		background-color: #f5f5f5;
		border-radius: 0 0 10px 10px;
	}
	.pay-faqAccordion .pay-faqAccordionBody >:first-child {
		margin-top: 0;
	}
	.pay-faqAccordion .pay-faqAccordionBody::before {
		content: '';
		position: absolute;
		top: 8px;
		left: 10px;
		width: 24px;
		height: 24px;
		background: url("/bnpl/img-files/index_ic02.png") no-repeat 0 0 / cover;
	}
	.pay-faqAccordionNoteList {
		margin-top: 5px;
	}
	.pay-faqAccordionNoteList > li {
		position: relative;
		padding-left: 13px;
		font-size: 1.3rem;
	}
	.pay-faqAccordionNoteList > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}
	.pay-faqAccordionOrderList {
		margin-top: 5px;
	}
	.pay-faqAccordionOrderList > li {
		position: relative;
		padding-left: 13px;
		font-size: 1.3rem;
	}
	.pay-faqAccordionOrderList > li > .mark {
		position: absolute;
		top: 0;
		left: 0;
	}

}
/* Cleafix
------------------------------------------------------ */
.contentsWrap:after {
	display: block;
	clear: both;
	content: "";
}