@charset "UTF-8";
:root {
	--fs-xxl: 6vw;
	--fs-xl: 5.5vw;
	--fs-l: 5.2vw;
	--fs-m: 4.25vw;
	--fs-s: 3.8vw;
	}
body {
	background-color: #fcfcfc;}
body.specify-division #foot #extraLinks { right: 1vw; bottom: 1vw;}
/*===================================================
	limitedLink
===================================================*/
.head-logo > em {
	display: block;
	width: 85px;
	margin-bottom: 5px;}
body.popup #maincontents {/* popup ページの際はマージンを増やす */
	margin-top: 101px;}
.maincontents-top .maincontents-top-box {
	margin-top: 20px;}

/* temp layout */
#maincontents {
	margin-top: 0;
	padding-bottom: 0;}
#maincontents > section {
	position: relative;
	margin: 0 auto;
	padding: 5vw 0 7vw 0;
	max-width: 100vw;
	font-size: var(--fs-m);}
#maincontents a:hover { text-decoration: none;}
/**************************************************
	FV section#title 
**************************************************/
/********************************************************************
	パターンA
 ********************************************************************/
#maincontents > section#title {
	margin: 0 0;
	padding: 4vw 0;
	line-height: 1.1;
	background-position: center bottom;
	background-size: cover;
	background-repeat: no-repeat;}
	/*
			<span class="yyyymm line1st">～ 2024年6月版 ～</span>
			<span class="line2nd">カードローン探しにおすすめ！</span>
			<span class="line3rd">人気の<u>ランキング</u>で</span>
			<span class="line4th"><em>47</em>社のカードローンを比較</span>
	*/
#maincontents > section#title h1 {
	font-size: var(--fs-m);
	font-weight: bold;
	color: #000;}
#maincontents > section#title h1 > span { 
	display: block;
	width: 90vw;
	margin: 0 auto;}
#maincontents > section#title h1 span.line1st /* 2024年最新版 */,
	#maincontents > section#title h1 span.yyyymm /* 2024年2月版 */,
	#maincontents > section#title h1 span.line2nd /*カードローン探しにおすすめ！*/,
	#maincontents > section#title h1 span.line3rd /*人気のランキングで*/,
	#maincontents > section#title h1 span.line4th /*47社のカードローンを比較*/{ 
	text-shadow:
	 2px  2px 0 #FFF, 
	-2px -2px 0 #FFF,
	-2px  2px 0 #FFF, 
	 2px -2px 0 #FFF,
	 0px  2px 0 #FFF,  
	 0px -2px 0 #FFF,
	-2px  0px 0 #FFF, 
	 2px  0px 0 #FFF;}

#maincontents > section#title h1 span.yyyymm /* 2024年2月版 */,
#maincontents > section#title h1 span.line2nd /*カードローン探しにおすすめ！*/ {
	margin-bottom: .5vw;
	font-size: 6vw;
	font-weight: bold;}
#maincontents > section#title h1 span.line3rd {/*人気のランキングで*/
	padding: 4vw 0 0 0;
	font-size: 10vw;
	font-family: serif;
	text-align: center;
	font-weight: bold;
	letter-spacing: -0.05em;}
#maincontents > section#title h1 span.line4th {/*47社のカードローンを比較*/ 
	font-size: 7vw;
	font-family: serif;
	text-align: center;
	font-weight: bold;
	letter-spacing: -0.1em;}
	/* 装飾 */
#maincontents > section#title h1 u { 
	text-decoration: none;
	background: linear-gradient(transparent 50%, rgba(256,256,0,0.9) 65%,  rgba(256,256,0,0.9) 85%,transparent 85%);}	
#maincontents > section#title h1 em {
	margin: 0 0.25em 0 0;
	padding: 0.25em 0.25em;
	display: inline-block;
	background-color: rgba(256,256,256,0.5);
	box-shadow: 1px 1px 1px rgba(0,0,0,0.35);
	border-radius: 4px;
	text-shadow: none;
	letter-spacing: -0.01em;}
#maincontents > section#title h1 strong { 
	display: inline-block;
	margin-right: 1vw;
	font-size: 12vw;
	color: red;
	line-height:1;
	letter-spacing: 0;}
	/* 2024.10 追加 */
#maincontents > section#title h1 span.line1st {/* 2024年最新版 */
	margin-bottom: .5vw;
	font-size: 4.5vw;
    color: #000;
	text-align: left;
}
#maincontents > section#title h1 span.line5th {/* （2024年10月8日更新） */
	text-align: right;
	font-size: 4vw;
	font-weight: normal;
	color: #fff;
}
	/* ********** ********** DIV毎の設定 ********** ********** */
body.card #maincontents > section#title { background-image: url("/images/special/hero-card-pc.webp")}
	body.card #maincontents > section#title h1 > span { width: 89vw;}
body.omatome #maincontents > section#title { background-image: url("/images/special/hero-omatome-pc.webp"); background-position: center center;}
	body.omatome #maincontents > section#title h1 > span { width: 94.5vw;}
	body.omatome #maincontents > section#title h1 span.line3rd { letter-spacing: 0;}
	body.omatome #maincontents > section#title h1 span.line5th { color: #fff; text-shadow: 1px 1px 1px #666;}

	/********************************************************************
	パターンB　.pattern-b
 ********************************************************************/
body.pattern-b #maincontents > section#title {
	margin: 0 0;
	padding: 0 0;
	line-height: 1.1;
	background: url("/images/special/hero-sp-mb.webp") 0 0 no-repeat;
	background-size: cover;}
	/*
			<span class="yyyymm line1st">～ 2024年6月版 ～</span>
			<span class="line2nd">カードローン探しにおすすめ！</span>
			<span class="line3rd">人気の<u>ランキング</u>で</span>
			<span class="line4th"><em>47</em>社のカードローンを比較</span>
	*/
body.pattern-b #maincontents > section#title h1 {
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-size: var(--fs-m);
	font-weight: bold;
	color: #fff;
	min-height: 56.25vw;}
body.pattern-b #maincontents > section#title h1 span.line1st /* 2024年最新版 */,
	body.pattern-b #maincontents > section#title h1 span.yyyymm /* 2024年2月版 */,
	body.pattern-b #maincontents > section#title h1 span.line2nd /*カードローン探しにおすすめ！*/,
	body.pattern-b #maincontents > section#title h1 span.line3rd /*人気のランキングで*/,
	body.pattern-b #maincontents > section#title h1 span.line4th, /*47社のカードローンを比較*/
	body.pattern-b #maincontents > section#title h1 em { 
	display: block;
	line-height: 1.1;
	text-shadow:
	 2px  2px 0 #000,
	-2px -2px 0 #000,
	-2px  2px 0 #000,
	 2px -2px 0 #000,
	 0px  2px 0 #000, 
	 0px -2px 0 #000,
	-2px  0px 0 #000,
	 2px  0px 0 #000;}

body.pattern-b #maincontents > section#title h1 span.yyyymm /* 2024年2月版 */,
body.pattern-b #maincontents > section#title h1 span.line2nd /*カードローン探しにおすすめ！*/ {
	margin-bottom: .5vw;
	font-size: 5.5vw;
	font-weight: bold;}
body.pattern-b #maincontents > section#title h1 span.line3rd {/*人気のランキングで*/
	padding: 1vw 0 0 0;
	font-size: 9vw;
	font-family: inherit;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0;}
body.pattern-b #maincontents > section#title h1 span.line4th {/*47社のカードローンを比較*/ 
	padding: 0 0 0 0;
	font-size: 6vw;
	font-family: inherit;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0;}
	/* 装飾 */
body.pattern-b #maincontents > section#title h1 u { /* 圏点 */
	display: inline-block;
	padding: 4.5vw 0 0 0;
	text-decoration: none;
	background: transparent;
	background-image: radial-gradient(circle at center, yellow 20%, transparent 20%); /* 点の色とサイズ調整 */
	background-position: initial; /* 点の位置 */
	background-repeat: repeat-x; /* 横方向に繰り返し */
	background-size: 1em 0.5em; /* 点の間隔とサイズ調整 */}	
body.pattern-b #maincontents > section#title h1 em {
	margin: 0 0 0 0;
	padding: 0 0;
	display: inline-block;
	background-color: transparent;
	border-radius: 4px;
	box-shadow: none;
	letter-spacing: -0.01em;}
body.pattern-b #maincontents > section#title h1 strong { 
	display: inline-block;
	margin-right: 1vw;
	font-size: 10vw;
	color: yellow;
	letter-spacing: -0.05em;}
	/* 2024.10 追加 */
body.pattern-b #maincontents > section#title h1 span.line1st {/* 2024年最新版 */
	color: #fff;
}
body.pattern-b #maincontents > section#title h1 span.line5th {/* （2024年10月8日更新） */
	font-size: 3vw;
	color: rgba(256,256,256,.5);
	text-shadow: 1px 1px 1px #000;
}
	/* ********** ********** DIV毎の設定 ********** ********** */
body.pattern-b.card #maincontents > section#title { background-image: url("/images/special/hero-card-sp.webp")}

/**************************************************
	簡易ランキング #maincontents > section#ranking-top 
**************************************************/
#maincontents > section#ranking-top {
	padding: 2vw 0;
}
section#ranking-top h2 {
	position: relative;
	margin: 4vw 2vw 5vw 2vw;
	padding: 0 0 1vw 0;
	line-height: 1.25;
	font-size: var(--fs-m);
	font-weight: bold;
	color: #2E4E63;
	letter-spacing: -0.01em;
	text-align:center;
	border-bottom: 3px solid #2E4E63;}
section#ranking-top h2 span {
	display: block;
	font-size: var(--fs-xl);}
section#ranking-top h2:after {
	content:"";
	position: absolute;
	left: calc(50% - 2vw);
	bottom: -3vw;
	height: calc(3vw / 2 * tan(60deg));
	width: 3vw;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	background-color: #2E4E63;}

section#ranking-top div.rankingBox {
	margin: 2vw 2vw;
	padding: 3vw 3vw;
	background-color: #fff;
	border: 1px solid #2E4E63;
	border-radius: 6px;}
section#ranking-top li {
	display: flex;
	align-items: center;
	margin-bottom: 2vw;
	line-height: 1.2;}
section#ranking-top li span { display: block;}
section#ranking-top li span.product-box-rank {
	display: block;
	width: 7.25vw;
	margin: 0 2vw 0 0;
	padding: 2vw 0 1.5vw 0;
	font-family: 'Josefin Sans';
	font-weight: 600;
	font-size: var(--fs-s);
	text-align: center;
	color: #fff;
	line-height: 1;
	background-color: #9FB8C5;
}
	section#ranking-top li span.product-box-rank.rank-1 { 
		padding: 7px 0 0;
		background: url("/images/fp/icon-rank_01.png") no-repeat;
		background-size: 25px auto;}
	section#ranking-top li span.product-box-rank.rank-2 {
		padding: 7px 0 0;
		background: url("/images/fp/icon-rank_02.png") no-repeat;
		background-size: 25px auto;}
	section#ranking-top li span.product-box-rank.rank-3 {
		padding: 7px 0 0;
		background: url("/images/fp/icon-rank_03.png") no-repeat;
		background-size: 25px auto;}
section#ranking-top li > div { width: calc(100% - 27px - 2vw);}
section#ranking-top li span.product-product-name { letter-spacing: -0.01em;}
section#ranking-top a.silde-down {/* 6位以降のランキングを開く */
	display: block;
	margin: 4vw auto 0 auto;
	padding: .4vw 0 0vw 7vw;
	width: 63vw;
	font-weight: bold;
	color: #2E4E63;
	background: url("/images/special/icon_open-b.png") 0 0 no-repeat;
	background-size: 5.4vw;
	line-height: 1.2;}
.init-hidden { display:none;}

/**************************************************
	目次 #maincontents > section#outline
**************************************************/
#maincontents > section#outline {
	position:relative;
	margin: 5vw 2vw;
	padding: 0 2vw;
	border-radius: 0;
	line-height:1.5;
	background-color:#fff;
	border-width:1px 0;
	border-style:solid;
	border-color:#ccc}
section#outline h5 {
	margin: 2vw 0;
	padding: .4vw 0 .4vw 7vw;
	line-height: 1;
	font-size: var(--fs-l);
	font-weight: bold;
	background: url("/images/special/icon_open-g.png") 0 0 no-repeat;
	background-size: 5.4vw;
	color: #42a420;
	cursor: pointer;}
	section#outline.active h5 { 
		color: #333;
		background-image: url("/images/special/icon_close-g.png")}
section#outline ul {
	display: none;
	list-style: none;
	margin: 0 0 1vw 0;
	font-size: var(--fs-m);}
section#outline li {
	list-style: none;
	margin: 0 0 1.5vw 0;
	line-height: 1.2;}
section#outline ul li a {
	display:inline-block;
	text-decoration:none;
	background:url("/images/common/gray-arrow.png") 0 4px no-repeat;
	background-size: 5px auto;
	padding-left:12px;
	color: #42a420;}
section#outline.active ul { display: block;}

/**************************************************
	読み物コンテンツレイアウト一括指定：#maincontents > section 
**************************************************/
#maincontents > section.articles {
	margin: 0 0;
	padding: 5vw 3vw 10vw 2vw;
	border-top: 13vw solid #d7ebdb;
	background-color: #fcfcfc;}
	/* 飾り */
#maincontents > section.articles:before {
	position: absolute;
	content: "";
	display: block;
	z-index: 9;
	height: 16vw;
	width: 16vw;
	top: -10vw;
	left: calc(50% - 8vw);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 12vw;}
	#maincontents > section#by-type:before { background-image: url("/images/special/ttl_by-type.png")}
	#maincontents > section#howto:before { background-image: url("/images/special/ttl_howto.png")}
	#maincontents > section#knowledge:before { background-image: url("/images/special/ttl_knowledge.png")}
	#maincontents > section#faq:before { background-image: url("/images/special/ttl_faq.png")}
	#maincontents > section#flow:before { background-image: url("/images/special/ttl_flow.png")}
	#maincontents > section#article:before { background-image: url("/images/special/ttl_article.png")}
	#maincontents > section#dictionary:before { background-image: url("/images/special/ttl_dictionary.png")}

#maincontents > section.articles:after {
	position: absolute;
	content: "";
	display: block;
	height: 13vw;
	width: 26vw;
	top: -13vw;
	left: calc(50% - 13vw);
	/* 半円の場合 */
	border-radius: 13vw 13vw 0 0;
	/* 三角の場合
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
	*/
	background-color: #fff;
	}
	#maincontents > section.articles:nth-of-type(2n+1) {
		background-color: #d7ebdb;
		border-top-color: #fcfcfc;
	}
	#maincontents > section.articles:nth-of-type(2n+1):after {
		background-color: #d7ebdb;}
	/* コーナータイトル */
#maincontents > section.articles > h2 {
	padding: 3vw 0 4vw 0;
	font-size: var(--fs-xxl);
	line-height: 1.1;
	font-weight: bold;
	text-align: center;
	color: #6fb42c;}
	#maincontents > section#by-type h2 { }
	#maincontents > section#howto h2 { }
	#maincontents > section#knowledge h2 { }
	#maincontents > section#faq h2 { letter-spacing: -0.05em;}
	#maincontents > section#flow h2 { font-size: 5.6vw;letter-spacing: -0.05em;}
	#maincontents > section#article h2 { }
	#maincontents > section#dictionary h2 { }
#maincontents > section.articles:nth-of-type(2n+1) > h2 { color: #000;}
		/* .description */
.description {
	margin: 2vw 4vw 4vw 4vw;
	padding: 0 0;
	line-height: 1.4;
	color: #444;}
	.description p,
	p.description { text-indent: 1em;}
	.description p + p { margin-top: .5em;}

.message {
	color: #a94442;
	border: 1px solid #dca7a7;
	border-radius: 6px;
	background-color: #f2dede;
	background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);
	margin: 2vw 4vw;
	padding: .5em 1em;}
section.articles time {
	display: block;
	margin: 0 0;
	padding: 2vw 0;
	text-align: right;
	color: #666}
section.articles div.fpProfile { 
	margin: 1em 0 0 0;}
section.articles div.fpProfile h4 { font-size: var(--fs-m) !important;}
	/* コーナーへのリンク */
section.articles a.link {
	display: block;
	margin: 0 auto 2vw auto;
	padding: 3.5vw 0;
	max-width: 80vw;
	color: #fff;
	text-align: center;
	border-radius: 2em;
	background: #6fb42c;}
	/* 定型カードボックス */
section#howto div.section,
section#howto > dl > div,
section#knowledge > dl > div,
section#faq > dl > div,
ul.recentArticles > li {
	display: block;
	width: auto;
	clear: both;
	margin: 2vw 0;
	padding: 0 0;
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 4px;
	line-height: 1.4;
	/*box-shadow: 0px 0px 3px rgba(0,0,0,.25);*/}
	/* 記事大見出し */
section#howto div.section h3,
section#knowledge > dl > div > dt > h3,
section#flow > dl > dt,
section#article ul.recentArticles li > h4 {
	margin: 8px 0 .5em 0;
	padding: .75em 0 .5em 32px;
	line-height: 1.1;
	font-size: var(--fs-l);
	font-weight: bold;
	letter-spacing: -0.025em;
	background-image: url("/images/div/il_title-green.png");
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 30px;
	border-bottom: 1px solid green;}
	section#howto div.section h3:nth-of-type(1),
	section#knowledge > dl > div > dt > h3:nth-of-type(1),
		section#flow > dl > dt:nth-of-type(1),
		section#article ul.recentArticles li > h4:nth-of-type(1) { margin-top: 0;}

	/**************************************************
		section#by-type カードローンを扱う金融機関の種類とそれぞれの特徴は？
	**************************************************/
section#by-type.articles { }
#by-type > div.listBox { position:relative;}
#by-type > div.listBox {
	margin: 2vw 2vw 0 2vw;
	border-bottom: 1px solid #aaa;}
#by-type > div.listBox > label {
	display: block;
	padding: 4vw 2vw 4vw 11vw;
	border: 1px solid #aaa;
	border-bottom: none;
	text-align: left;
	cursor:pointer;
	color: #3f9322;
	font-weight: bold;
	background-color: #fff;
	background-image: url("/images/special/icon_open-g.png");
	background-position: 2vw center;
	background-repeat: no-repeat;
	background-size: 6vw;
	line-height: 1.2;}
	#by-type > div.listBox > label:hover { background-color:#ddd;}
#by-type > div.listBox > label.selected {
	border-bottom: 1px solid #ddd;
	background-image:  url("/images/special/icon_close-g.png");}
#by-type > div.listBox > ul {
	display: none;
	padding: 2vw 2vw;
	background-color: #fff;
	border: 1px solid #aaa;
	border-top: none;
	border-bottom: none;}
section#by-type > div.listBox > ul > li {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	margin-bottom: 3vw;
	line-height: 1.2;}
section#by-type > div > ul > li span.product-logo { display: none;}
section#by-type > div > ul > li div span { display: block;}
.product-product-name {/*商品名*/ font-size: var(--fs-l);}
.product-product-name a { color: #3f9322;}

/**************************************************
	section#howto カードローンの選び方のポイント
**************************************************/
section#howto div.section {
	padding: 2vw 4vw 4vw 4vw;}
section#howto div.section h4 {
	margin: 1.75em 0 .5em 0;
	padding: 0 0 0 0;
	font-size: var(--fs-l);
	font-weight: bold;
	line-height: 1.1;
	letter-spacing: 0;
	color: #333;}
section#howto div.section h5 {
	margin: 1.5em 0 .5em 0;
	padding: 0 0 0 0;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0;
	color: #555;}
section#howto div.section h5:before {
	content: "";
	display: inline-block;
	width: .75em;
	height: .75em;
	margin: 0 .3em 0 0;
	background-color: green;
	vertical-align: middle;
	border-radius: 0;}
section#howto div.section > img,
section#howto div.section > div > img { height: 40vw; margin: 2vw 0;}
section#howto div.section ul ul span { display: block;}
section#howto div.section ul ul span.lender_name { font-weight: bold}
section#howto div.section ul ul a { color: #3f9322;}

section#howto div.section ul.loanList li ul {/*商品リスト*/}
section#howto div.section ul.loanList li ul li { padding: 1.5vw 0;}

/**************************************************
	section#knowledge カードローンの基礎知識
**************************************************/
#maincontents > section#knowledge { }
section#knowledge > dl {}
section#knowledge > dl > div { padding: 2vw 4vw 4vw 4vw;}
section#knowledge > dl > div > dt {}
section#knowledge > dl > div > dd {}
section#knowledge > dl > div > dd h4 {
	margin: 0.75em 0 0.25em 0;
	font-size: var(--fs-l);
	font-weight: bold;
}

/**************************************************
	section#faq カードローンに関するよくある質問
**************************************************/
section#faq > dl > div > dt,
	section#faq > dl > div > dd {
	display: flex;
	width: 100%;}
section#faq > dl > div > dt {
	align-items: center;
	min-height: 30px;
	padding: 1vw 1vw;
	background-color: #f6f6f6;
	border-bottom: 1px solid #ececec;}

section#faq > dl > div > dd {
	position: relative;
	display: flex;
	width: 100%;
	align-items: flex-start;
	flex-wrap: wrap;
	padding: 2vw 0 3vw 1vw;
}

section#faq > dl > div > dt > em,
	section#faq > dl > div > dd > em {
	font-family: 'Josefin Sans';
	font-weight: 500;
	clear: left;
	display: block !important;
	width: 2.5em;
	margin: 1vw 0 0 1vw;
	padding: .45em 0 .35em 0 !important;
	text-align: center;
	color: #fff;
	border-radius: 4px;}
	section#faq > dl > div > dt > em { background: #f28d33 !important;}
	section#faq > dl > div > dd > em { background: #6fb42c !important;}
section#faq > dl > div > dt > span {
	display: block;
	margin: 0 0 0 0;
	padding: 4px 0 2px 10px;
	width: calc(100% - 3.5em);
	font-weight: bold;
	color: #f0800f;
	line-height: 1.1;}

section#faq > dl > div > dd > span {
display: block;
  width: calc(100% - 4em);
  margin: 0 0 0 10px;
  background-color: transparent;
  padding: 0 0;
  border-radius: 0 0;
  line-height: 1.6;}


/**************************************************
	section#flow カードローンを借り入れるまでの流れ
**************************************************/
section#flow > dl {
	position: relative;
	margin: .5em 0;
	padding: 1em 1em;
	background-color: #fff;
	border: 1px solid #ddd;
	border-radius: 4px;}
section#flow > dl > dd {
	padding: 2vw 0;
}

/**************************************************
	section#article カードローンお役立ち記事（ELタイムズ＋FPアドバイス）
**************************************************/
#maincontents > section#article { padding: 5vw 3vw 12vw 2vw }
ul.recentArticles {
	margin: 0 0 4vw 0;}
ul.recentArticles > li {/* 記事枠 */
	position: relative;
	padding: 4vw 4vw;}
	/* タイトルまわり */
ul.recentArticles > li > span:first-child {/* new */
	position: absolute;
	display: block;
	top: 4vw;
	right: 4vw;
	width: 16vw;
	height: 16vw;
	background: url("/images/special/tag_new-g.png") top right no-repeat;
	background-size: auto;
	background-size: contain;
	text-indent: -9999px;}
ul.recentArticles > li > img {
		display: inline-block;
		margin: 0;
		height: 40vw;
		object-fit: cover;}
ul.recentArticles > li > h4 + span {/*コーナータイトル*/ 
	display: block;
	line-height: 1.1;
	font-weight: bold;
	letter-spacing: -0.025em;}
section#article time { padding: 0 0;}
section#article ul.recentArticles > li > time + h4 { padding-top: 0;}

	/* コーナーごとの設定 */
ul.recentArticles li.eloan_times {}
ul.recentArticles li.fp_advice {}
	/* 記事レイアウト */
ul.recentArticles li > div:nth-of-type(1) {
	position: relative;
	margin-top: 1em;
	max-height: 35vh;
	overflow: hidden;
}
	ul.recentArticles li.fp_advice  > div:nth-of-type(1){ max-height: 10vh;}
ul.recentArticles li > div:nth-of-type(1)::after {
	content: "";
	height: 100%;
	width: 100%;
	position: absolute;
	bottom: -0.5vw;
	left: 0;
	background: linear-gradient(to top,rgba(255,255,255,1),rgba(255,255,255,0));
	z-index: 2;
}
ul.recentArticles li > div > a {/* すべて読む */
	position: absolute;
	z-index: 9;
	display: block;
	width: 15em;
	max-width: 80vw;
	bottom: 0;
	left: calc(50% - 7.5em);
	background-color: #7fb244;
	margin: 0 0;
	padding: 3.5vw 0;
	text-align: center;
	color: #fff;
	opacity: 1;
	border-radius: 2em;
	cursor: pointer;
}
	/* 各コーナー先頭囲み */
ul.recentArticles li.fp_advice > dl {
	display: table;
	margin: 14px 0 .5em 0;
	padding: .5em;
	background: #f0f0f0;
	border-radius: 8px;}
ul.recentArticles li.fp_advice > dl > dt {
	display: table;
	position: relative;
	padding: 10px 0 10px 0;
	margin: 0;}
ul.recentArticles li.fp_advice > dl > dd {
	display: table;
	position: relative;
	overflow: hidden;
	padding: 10px 0 10px 0;
	border-top: 1px solid #ccc;}
#maincontents > section ul.recentArticles li.fp_advice > dl > dt > em,
	#maincontents > section ul.recentArticles li.fp_advice > dl > dd > em {
	font-family: 'Josefin Sans';
	font-weight: 400;
	font-size: var(--fs-xxl);
	display: table-cell;
	vertical-align: middle;
	width: 1.3em;
	text-align: left;
	color: #aaa;}
	#maincontents > section ul.recentArticles li.fp_advice > dl > dd > em { color: #6fb42c;}
ul.recentArticles li.fp_advice > dl > dt > span,
	ul.recentArticles li.fp_advice > dl > dd > span {
	position: relative;
	display: table-cell;
	height: auto;
	width: auto;
	color: inherit;
	line-height: inherit;
	letter-spacing: 0;
	text-align: left;
	background-color: transparent;}
ul.recentArticles li > div:nth-of-type(1) img { display: none;}
		/* コーナーへのリンク */
section#article ul.linkList {/* コーナーへのリンク */
	margin: 0 auto;
	padding: 0;
	border: none;
	display: flex;}
section#article ul.linkList li {
	display: block;
	flex-basis: 50%;
	margin: 0;
	}
section#article a.link {
	display: block;
	margin: 0 1vw;
	padding: 3.5vw 0;
	font-size: var(--fs-s);
	border-radius: 2em;
	width: auto;
}

/**************************************************
	section#dictionary カードローン用語集
**************************************************/
#maincontents > section#dictionary { padding-bottom: 16vw;}
section#dictionary ul {}
section#dictionary li {
	margin: 2.5vw 0 2.5vw 0;
	background-color: #fff;
	border: 1px solid #ddd;
	/* box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);*/
	padding: 4vw;
	border-radius: 4px;}
section#dictionary ul li > em {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		padding: 0 0 10px 0;
		margin-bottom: 15px;
		text-decoration: none;
		border-bottom: 1px solid #ccc;}
	section#dictionary span.name_kana {
		order: 2;
		display: block;
		font-size: var(--fs-s);}
	section#dictionary span.name {
		order: 1;
		display: block;
		margin: 0 .5em 0 0;
		font-size: var(--fs-l);
		font-weight: bold;}
section#dictionary p {
	margin-top: .5em;}
section#dictionary a.link { margin-bottom: 0;}

/**************************************************
	section.articles 読み物コンテンツの文字修飾
**************************************************/
section#knowledge dd u,
section#faq dd p u,
section#flow dd u {
	display: inline;
	background: url("/images/div/ulw-red.png") bottom repeat-x;
	background-size: auto;
	background-size: 20px;
	text-decoration: none;
	padding: 0 2px 2px 2px;}
section#knowledge dd em,
section#faq dd p em,
section#flow dd em {
	display: inline;
	font-style: normal;
	background: linear-gradient(transparent 20%,#ff6 60%,transparent 100%);
	padding: 0 4px 0 4px;}


	/* グレイ囲み */
section#howto div.section ul ul,
section#knowledge > dl > div > dd > dl,
section#flow > dl > dd > dl {
	margin: .5em 0;
	padding: .75em .75em;
	background-color: #f2f2f2;
	border: 1px solid #ccc;
	border-radius: 5px;
	/*box-shadow: #e5e5e5 0 3px 2px 0;*/}
	section#flow > dl > dd > dl:nth-child(1) { margin-top:0;}
section#knowledge > dl > div > dd > dl dt,
section#flow > dl > dd > dl dt {/* 見出し */
	line-height: 1.1;
	font-size: var(--fs-m);
	font-weight: bold;
	margin: 1em 0 .25em 0;
	padding: 0 0 .5em .25em;
	background-image: url("/images/div/line-green.png");
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: contain;}
	section#knowledge > dl > div > dd > dl dt:nth-of-type(1),
	section#flow > dl > dd > dl dt:nth-of-type(1) { margin-top: 0.25em;}
section#knowledge > dl > div > dd > dl dd,
section#flow > dl > dd > dl dd {padding-top: .25em;}

	/* 記事内の表 */
section#faq > dl > div > dd table,
	section#knowledge > dl > div > dd table {
	margin: .5em auto .5em 0;
	width: auto;
	max-width: 100%;
	min-width: 100%;
	background-color: #fff;}
	section#faq > dl > div > dd table *,
	section#knowledge > dl > div > dd table * { font-size: 3.9vw;}
section#faq > dl > div > dd caption,
	section#knowledge > dl > div > dd caption {
	text-align: center;}
section#faq > dl > div > dd thead th,
	section#knowledge > dl > div > dd thead th { 
		padding: 0.15em 0.25em;
		background-color: #f3f3f3;}
section#faq > dl > div > dd tbody th,
section#faq > dl > div > dd tbody td,
	section#knowledge > dl > div > dd tbody th,
	section#knowledge > dl > div > dd tbody td {
	padding: 0.15em 0.25em;
	vertical-align: middle;}
section#faq > dl > div > dd tbody th,
section#faq > dl > div > dd tbody td,
	section#knowledge > dl > div > dd tbody th,
	section#knowledge > dl > div > dd tbody td {
		padding: 0.15em 0.25em;
		vertical-align: middle;}
section#faq > dl > div > dd tbody th,
section#knowledge > dl > div > dd tbody th {
	background-color: #f9f9f9;
	min-width: 6em;}
section#faq > dl > div > dd th,
section#faq > dl > div > dd td,
	section#knowledge > dl > div > dd th,
	section#knowledge > dl > div > dd td {
	border: 1px solid #ddd;}
section#faq > dl > div > dd thaed th,
	section#knowledge > dl > div > dd thead th { text-align: center;}
section#faq > dl > div > dd .left,
	section#knowledge > dl > div > dd .left { text-align: left;}
section#faq > dl > div > dd .center,
	section#knowledge > dl > div > dd .center { text-align: center;}
section#faq > dl > div > dd .right,
	section#knowledge > dl > div > dd .right { text-align: right;}
	/* リスト */
section.articles ul.disc {
	display: block;
	list-style-type: none;
	margin: .5em 0 .5em .5em;
	padding: 0;}
section.articles ul.disc li {
	list-style-type: none;
	margin: 0 0 0 1em;
	padding: 0;
	text-indent: -1em;}
section.articles ul.disc li:before {
	content: "";
	display: inline-block;
	width: .75em;
	height: .75em;
	margin: 0 .5em 0 0;
	background-color: green;
	border-radius: 2em;
	vertical-align: middle;
}


/* ***************** ***************** ***************** *****************
   ***************** ***************** ***************** *****************
	#maincontents > section#ranking 
 ***************** ***************** ***************** *****************
 ***************** ***************** ***************** *****************/
#maincontents > section#ranking {}
section#ranking h2 {/* title */
	margin: 0 2vw;
	padding: 14vw 0 0 0;
	font-size: 5vw;
	letter-spacing: -0.05em;
	font-weight: bold;
	text-align: center;
	color: #fff;
	background: url("/images/special/ttl_ranking_bg-sp.png") 0 0 no-repeat;
	background-size: 96vw;
	line-height: 1.1;
	min-height: 31vw;}
	section#ranking h2 span { 
		display: block;}
section#ranking time {
	display: block;
	margin: 0 2vw;
	padding: 1vw 0;
	text-align: right;
	font-weight:bold;
	color: #2E4E63;}

section#ranking ul > ul {}
section#ranking ul > li {/* １商品分 */
	margin: 0 0 1px 0;
	padding: 2vw 2vw;
	background-color: #eee}
section#ranking ul li article {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	width: auto;
	clear: both;
	margin: 0 0;
	padding: 3vw 3vw;
	line-height: 1;
	border-radius: 5px;
	background: #fff;
	/*box-shadow: 1px 2px 8px rgba(0,0,0,.1);*/}
ul article > span { display: block;}
	/* 背景色 */
section#ranking ul li { background: #DCE4E9;}
section#ranking ul li.rank-1 { background: linear-gradient(20deg, #9B8924 0%, #E8CA2D 50%, #f0e7b7 100%);}
section#ranking ul li.rank-2 { background: linear-gradient(20deg, #5b6168 0%, #ddd 50%, #fdfdfd 100%);}
section#ranking ul li.rank-3 { background: linear-gradient(20deg, #B97B3E 0%, #DDA362 50%, #FDF9F4 100%);}

/* イー・ローンに掲載されていない商品 */
section#ranking ul > li.deactive { filter: grayscale(100%);}
	section#ranking ul > li.deactive article > span.product-box-description { 
		width: calc(100% - 24vw)}
	/* 掲載休止商品：not-published */
section#ranking li.not-published article {
	justify-content: flex-start;}
	section#ranking ul li.not-published article > span.product-box-rank {
		margin-right: 8vw;}
	section#ranking li.not-published span.product-product-name { margin-top: 0;}
	



	/* 順位アイコン */
section#ranking ul li article > span.product-box-rank {/* 第n位*/
	display: flex;
	justify-content: center;
	align-items: center;
	width: 20vw;
	height: 20vw;
	background: url("/images/special/label-rank.png") center center no-repeat;
	background-size: contain;
	color: #fff;
	font-size: 8vw;
	font-weight: bold;}
	section#ranking ul li.rank-1 article > span.product-box-rank { background-image: url("/images/special/label-rank1.png");text-indent: -200vw;}
	section#ranking ul li.rank-2 article > span.product-box-rank { background-image: url("/images/special/label-rank2.png");text-indent: -200vw;}
	section#ranking ul li.rank-3 article > span.product-box-rank { background-image: url("/images/special/label-rank3.png");text-indent: -200vw;}
	section#ranking ul li.rank-4 article > span.product-box-rank { background-image: url("/images/special/label-rank4.png");text-indent: -200vw;}
	section#ranking ul li.rank-5 article > span.product-box-rank { background-image: url("/images/special/label-rank5.png");text-indent: -200vw;}
	section#ranking ul li.rank-6 article > span.product-box-rank { background-image: url("/images/special/label-rank6.png");text-indent: -200vw;}
	section#ranking ul li.rank-7 article > span.product-box-rank { background-image: url("/images/special/label-rank7.png");text-indent: -200vw;}
	section#ranking ul li.rank-8 article > span.product-box-rank { background-image: url("/images/special/label-rank8.png");text-indent: -200vw;}
	section#ranking ul li.rank-9 article > span.product-box-rank { background-image: url("/images/special/label-rank9.png");text-indent: -200vw;}
	section#ranking ul li.rank-10 article > span.product-box-rank { background-image: url("/images/special/label-rank10.png");text-indent: -200vw;}

section#ranking span.product-rank-status { 
	width: 15vw;
	height: 20vw;
	background: url("/images/special/status-stay.png") center center no-repeat;
	background-size: contain;
	text-indent: -1000vw;}
	section#ranking span.product-rank-status.up { background-image: url("/images/special/status-up.png");}
	section#ranking span.product-rank-status.down { background-image: url("/images/special/status-down.png");}
	section#ranking span.product-rank-status.stay { background-image: url("/images/special/status-stay.png");}
	section#ranking span.product-rank-status.new { background-image: url("/images/special/status-new.png");}
section#ranking span.product-logo { 
	width: 40vw;
	text-align: center;}
	section#ranking span.product-logo > img { width: 100%;}
	/* 商品情報 */
section#ranking span.product-product-name /* 商品名 */,
section#ranking span.product-lender-name {/* 金融機関名 */
	width: 100%;
	line-height: 1.25;
	letter-spacing: -0.01em;
	color: #000;}
	section#ranking span.product-product-name {
		margin: 2vw 0 0 0;
		font-size: var(--fs-l);
		font-weight: bold;}
	section#ranking span.product-lender-name { 
		margin: 0 0;}
section#ranking dl.product-spec {/* スペック表 */
	margin: 3vw 0 0 0;
	width: 100%;
	line-height: 1.2;
	font-size: var(--fs-l);}
	section#ranking dl.product-spec > div { 
		display: flex;
		flex-wrap: nowrap;
		margin: 0 0 1vw 0;}
	section#ranking dl.product-spec > div > dt { 
		width: 6.5em;
		letter-spacing: -0.01em;}
	section#ranking dl.product-spec > div > dd { 
		width: calc(100% - 6.5em);
		letter-spacing: -0.02em;
		color: #f28d33;}

/* SP時は不可視 */
.product-desc {
	display: none;}

section#ranking ul.product-tags {/* タグ */
	display: flex;
	justify-content: left;
	margin: 3vw auto 0 auto;
	padding: 0 0 0 11vw;
	width: 100%;
	background: url("/images/special/icon_tag.png") left center no-repeat;
	background-size: 9vw;}
section#ranking ul.product-tags li {
	margin: 0 .75vw 0 0;
	padding: 2vw 1.25vw;
	display: inline-block;
	font-size: var(--fs-s);
	text-align: center;
	color: #666;
	background-color: transparent;
	border: 1px solid #ddd;
	border-radius: 2px;}

.product-popup {
	margin: 4vw 0 0 0;
	width: 100%;
}
.product-popup ul {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-around;
}
section#ranking .product-popup ul li {
	flex-basis: 49%;
	color: #fff;
	text-align: center;
	background-color: #7498ab;
	border-radius: 6px;
}
section#ranking .product-popup ul li a {
	color: #fff;
}

section#ranking div.product-button {
	width: 100%;
	margin: 3vw 0 0 0;}
.btn-add { display: none;}
section#ranking div.product-button > div > a {
	display: block;
	margin: 1vw auto;
	padding: 3.5vw 0;
	max-width: 80vw;
	text-align: center;
	font-size: var(--fs-l);
	color: #fff;
	background-color: #c00 !important;
	letter-spacing: .5em;
	border-radius: 2em;
	cursor: pointer;}

section#ranking ul.guardWording {
	margin: 0 0 0 0;
	padding: 4vw 4vw;
	color: #666;
	background-color: #fcfcfc;
}
section#ranking ul.guardWording > li {
	margin: 0 0 0 1em;
	padding: 0 0;
	text-indent: -1em;
	background-color: transparent;
}
section#ranking ul.guardWording > li:before {
	content: "※";
}
section#ranking ul.guardWording > li a { color: #3f9322;}
section#ranking ul.guardWording li dl {
	margin: .25em 0 .5em 0;
	padding: .5em 1em;
	text-indent: 0;
	font-size: var(--fs-s);
	border: 1px solid #eee;
	border-radius: 4px;
	line-height: 1.3;
}
section#ranking ul.guardWording li dl div {}
section#ranking ul.guardWording li dt {
	color: #000;
	margin-top:.1em;
}
section#ranking ul.guardWording li dd {
	margin-bottom:.2em;
}
section#ranking ul.guardWording li dd ul { 
	margin: 0 0;
	padding: 0 0;
	line-height: 1.2
}
section#ranking ul.guardWording li dd ul li {
	margin: 0;
	padding: 0;
	background: transparent;
} 

/* モーダルウィンドウ内 */
.overlay {
	background: rgba(0, 0, 0, 0.9);
}
div.product-popup-rank-box,
.modal.modal-loan[id^="modal-popup-comment-"] .product-popup-comment {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: 0 .75vw 2vw .75vw;
	padding: 2vw 3.25vw;
	border-radius: 6px;
	line-height: 1;
	background: #eee url("/images/special/icon_ai.png") bottom -1em right -1em/80px no-repeat;}
span.product-popup-rank-box-rank,
	span.product-popup-rank-box-rank span,
	span.product-popup-rank-box-status,
span.product-popup-comment-rank,
	span.product-popup-comment-rank span,
	span.product-popup-comment-status { 
	display: inline-block;}
span.product-popup-rank-box-rank,
	span.product-popup-comment-rank { 
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	font-size: var(--fs-s);
	font-weight: bold;
	letter-spacing: -0.026em;}
span.product-popup-rank-box-rank span,
	span.product-popup-comment-rank span /*順位*/{
	margin: 0 .2em;
	padding: .25em .2em;
	text-align: center;
	color: #fff;
	letter-spacing: -0.04em;
	background: #9FB8C5;}
	div.rank-1 span.product-popup-rank-box-rank span,
		div.rank-1 span.product-popup-comment-rank span { background: #E8CA2D;}
	div.rank-2 span.product-popup-rank-box-rank span,
		div.rank-2 span.product-popup-comment-rank span { background: #aaa;}
	div.rank-3 span.product-popup-rank-box-rank span,
		div.rank-3 span.product-popup-comment-rank span { background: #D58835;}
span.product-popup-rank-box-status,
	span.product-popup-comment-status {
	width: 7vw;
	height: 7vw;
	background: url("/images/special/status-stay.png") center bottom no-repeat;
	background-size: contain;
}
	span.product-popup-rank-box-status.up,
	span.product-popup-comment-status.up { background-image: url("/images/special/status-up.png");}
	span.product-popup-rank-box-status.down,
	span.product-popup-comment-status.down { background-image: url("/images/special/status-down.png");}
	span.product-popup-rank-box-status.stay,
	span.product-popup-comment-status.stay { background-image: url("/images/special/status-stay.png");}
	span.product-popup-rank-box-status.new,
	span.product-popup-comment-status.new { background-image: url("/images/special/status-new.png");}

div.product-popup-rank-box-comment,
	div.product-popup-comment-box-comment {
		display: inline-block;
		width: 100%;
		line-height: 1.4;}
		div.product-popup-rank-box-comment span:nth-child(2):before,
		div.product-popup-comment-box-comment span:nth-child(2):before { content:"（";}
		div.product-popup-rank-box-comment span:nth-child(2):after,
		div.product-popup-comment-box-comment span:nth-child(2):after { content:"）";}

.modal.modal-loan div.button a[data-link="appl-1"] { background-color: red !important;}


/*******************************************************************
	口コミ★
*******************************************************************/
.product-desc-kuchikomi-satisfaction-level > span:nth-of-type(2) {
	position: relative;
	z-index: 0;
	display: inline-block;
	white-space: nowrap;
	color: #ccc;
}
.product-desc-kuchikomi-satisfaction-level > span:nth-of-type(2):before,
.product-desc-kuchikomi-satisfaction-level > span:nth-of-type(2):after {
	content:'★★★★★';
}
.product-desc-kuchikomi-satisfaction-level > span:nth-of-type(2):after {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	overflow: hidden;
	white-space: nowrap;
	color: #ffcf32;
}
.product-desc-kuchikomi-satisfaction-level > span:nth-of-type(2)[data-rate="5"]:after{ width: 100%; }
.product-desc-kuchikomi-satisfaction-level > span:nth-of-type(2)[data-rate="4"]:after{ width: 80%; }
.product-desc-kuchikomi-satisfaction-level > span:nth-of-type(2)[data-rate="3"]:after{ width: 60%; }
.product-desc-kuchikomi-satisfaction-level > span:nth-of-type(2)[data-rate="2"]:after{ width: 40%; }
.product-desc-kuchikomi-satisfaction-level > span:nth-of-type(2)[data-rate="1"]:after{ width: 20%; }
.product-desc-kuchikomi-satisfaction-level > span:nth-of-type(2)[data-rate="0"]:after{ width: 0%; }
/*******************************************************************
	口コミ/AI modal
*******************************************************************/
.modal.modal-loan[id^="modal-popup-kuchikomi-"],
.modal.modal-loan[id^="modal-popup-comment-"] {
	height: fit-content;
}
.modal.modal-loan[id^="modal-popup-kuchikomi-"] div.head-info,
	.modal.modal-loan[id^="modal-popup-comment-"] div.head-info,
.modal.modal-loan[id^="modal-popup-kuchikomi-"] div.button,
	.modal.modal-loan[id^="modal-popup-comment-"] div.button {
		position: relative;
		width: 100%;
		left: 0;
		bottom: 0;
	}
.modal.modal-loan[id^="modal-popup-kuchikomi-"] div.modal-close,
	.modal.modal-loan[id^="modal-popup-comment-"] div.modal-close {
		position: absolute;
		top: 1vh;
		right: 1vw;
	}
.modal.modal-loan[id^="modal-popup-kuchikomi-"] div.popup-desc-info,
	.modal.modal-loan[id^="modal-popup-comment-"] div.popup-desc-info {
		max-height: 50vh;
		overflow-y: auto;
		padding: 4vw 2vw;
	}
.modal.modal-loan[id^="modal-popup-kuchikomi-"] div.popup-desc-info > div,
	.modal.modal-loan[id^="modal-popup-comment-"] div.popup-desc-info > div {
	margin: 0;
	padding: 1vw 0;
	border-radius: 3px;
	}
/* 口コミ */
.modal.modal-loan[id^="modal-popup-kuchikomi-"] div.popup-desc-info > div {
	background-color: #7498ab;
}
.modal.modal-loan[id^="modal-popup-kuchikomi-"] div.popup-desc-info h4 {
	padding: 1vw 3vw 0 3vw;
	font-size: var(--fs-m);
	font-weight: bold;
	color: #fff;
}
.modal.modal-loan[id^="modal-popup-kuchikomi-"] div.product-popup-kuchikomi li {
	margin: 1vw 2vw;
	padding: 2vw 4vw;
	border-radius: 4px;
	background-position: bottom -2vw right 2vw;
	background-repeat: no-repeat;
	background-size: 17vw;
	background-color: #fff;
	background-image: url("/images/special/icon_kuchikomi-050.png");
}
/* 生成AI */
/*
<div class="popup-desc-info">
	<div>
		<h4>生成AIによる順位変動に対する解説</h4>
		<div class="product-popup-comment rank-1">
			<span class="product-popup-comment-rank">2024年6月のカードローンランキング<span>第1位</span></span>
			<span class="product-popup-comment-status stay"></span>
			<p class="product-popup-comment-comment"></p>
		</div>
	</div>
</div>
*/
.modal.modal-loan[id^="modal-popup-comment-"] div.popup-desc-info h4 {
	font-size: var(--fs-m);
	color: #000;
	font-weight: bold;
	margin: 0 0;
	padding: 1vw 0;
}
.modal.modal-loan[id^="modal-popup-comment-"] .product-popup-comment {
	margin: 0 0 0 0;
	padding: 2vw 2vw;
	line-height: 1.4;
}

