@charset "UTF-8";
/*===================================================
	20220624共通：ローン詳細モーダルウインドウ SP
===================================================*/
/* --------------------------------------------------
	モーダル背景
-------------------------------------------------- */
.modalOverlay {
	display: none;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	position: fixed;
	background: rgba(0, 0, 0, 0.5);
	z-index: 9999;
}
.modalOverlay.block {
	z-index: 9999;
	opacity: 1;
}

.overlay {
	display: none;
	width: 100%;
	min-height: 100vh;
	left: 0;
	top: 0;
	position: fixed;
	background: rgba(0, 0, 0, 0.5);
	z-index: 999;
}
.overlay.block {
	z-index: 9999;
	opacity: 1;
}
.modalContent {
	display: none;
	position: fixed;
	overflow: auto;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 99999;
	width: 90%;
	height: max-content;
	max-height: 90%;
}
.modalContent.block {
	z-index: 99999;
	margin: auto;
	opacity: 1;
}
.modalContent > div {
	background: #fff;
	border-radius: 3px;
	padding: 30px 15px 20px 15px;
}
.modalContent .searchform-close {
  position: absolute;
  top: 15px;
  right: 15px;
  width: 15px;
  height: 15px;
  cursor: pointer;
}
.modalContent .searchform-close > img {
	display: block;
	width: 100%;
	height: auto;
}
/* --------------------------------------------------
	モーダル土台
-------------------------------------------------- */
.modal, .modal * {
			box-sizing: border-box;
		-ms-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-webkit-text-size-adjust: none;
	font-size: 100%;
}

.modal {
	display: none;
	position: fixed;
	overflow: auto;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	padding: 2vw 4vw;
	z-index: 99999;
	height: max-content;
	max-height: 90%;
	color: #333;
	background-color:#fff;
	border-radius: 3px;
}
.modal div.modal-close {
	position: fixed;
	top: 15px;
	right: 15px;
	width: 20px;
	height: 20px;
	cursor: pointer;
	z-index:100;
}
.modal div.modal-close:hover {
	opacity:.7;
}
.modal dl, .modal dt, .modal dd { margin: 0 0;}
/* 基本 **********************************************/
.modal.modal-loan {
	width: 96vw;
	max-width: 96vw;
	height: 96%;
	max-height: 96%;
	padding: 0 0 0 0;
}
.modal.modal-loan div.modal-close {
	position: fixed;
	top: 3vh;
	right: 4vw;
	font-size: 24px;
	width: 1em;
	height: 1em;
	line-height: 1;
}
.modal.modal-loan div.head-info {
	position:fixed;
	top: 2%;
	left: 2vw;
	width: 96vw;
	background-color:#fff;
	margin: 0 0;
	padding: 10px 0;
	border-bottom:1px solid #ccc;
	border-top-left-radius: 3px;
	border-top-right-radius: 3px;
}
.modal.modal-loan div.head-info.prMark:after {
    content: "";
    display: block;
    position: absolute;
    top: 55px;
    right: 3vw;
    font-size: 1rem;
    width: 24px;
    height: 10px;
    background: transparent url(/unified/images/common/prMark-hb.png) center right no-repeat;
    background-size: contain;
    opacity: .55;
}
.modal.modal-loan div.head-info h3 {
	border:none;
	padding:0 20px;
	text-align:center;
	font-weight: bold;
	font-size: 18px;
	line-height: 20px;
	letter-spacing: -0.02em;
}
.modal.modal-loan div.head-info > img {
	width:auto;
	margin-left: calc((100% - 160px) / 2);
}
.modal.modal-loan div.basic-info {
	margin-top:117px;
	padding: 0 2vw 2vw 2vw;
}
.modal.modal-loan div.basic-info > dl {
	display:flex;
	flex-wrap: wrap;
	justify-content:flex-start;
	padding:0;
	margin: 2vw 0;
}
.modal.modal-loan div.basic-info > dl > div {
	width:calc((100% - 2vw) / 2);
	margin: 0 0.5vw 1vw .5vw;
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	border:1px solid #ddd;
	border-radius:5px
}
.modal-loan div.basic-info > dl > div.pickup-receiving-methods.wide {
	width: 100%/* calc(100% - 2vw) */;
}
.modal-loan div.basic-info > dl > div > dt,
.modal-loan div.basic-info > dl > div > dd {
	margin: 0 0;
	width: 100%;
	font-size: 3.7vw/*14px*/;
	text-align:center;
	letter-spacing: -0.05em;
}
.modal-loan div.basic-info > dl > div > dt {
	background-color: #eee;
	padding:5px 1px;
	height: 2.2em;
	white-space: nowrap;
	font-weight: normal;}
.modal-loan div.basic-info > dl > div > dd {
	padding: 1.5vw 2vw;
}
.modal-loan div.basic-info > dl > div.pickup-receiving-methods > dd {
	margin: 0 0;
	padding: 0 0;
}
.modal-loan div.basic-info > dl > div.pickup-receiving-methods > dd > ul {
	display:flex;
	flex-wrap: wrap;
	justify-content: space-around;
	list-style:none;
	margin: 0 0;
	padding: 2.5vw 1vw;
}
.modal-loan div.basic-info > dl > div.pickup-receiving-methods > dd > ul > li {
	/*margin:0 5px;*/
	line-height: 1;
	min-width: 18%;
	font-size: 3vw;
}
.modal-loan div.basic-info > dl > div.pickup-receiving-methods > dd img {
	/*
	width: 20px!important;
	height: 20px!important;
	*/
	display: none;
}
.modal-loan div.basic-info > dl > div.pickup-receiving-methods > dd span {
	display: block;
	line-height: 1;
	margin-top: .5vw;
	padding: .5vw 1.5vw;
	/**/
	color: #bbb;
	background-color: #f3f3f3;
	border: 1px solid #ccc;
	border-radius: 3px;
}
	.modal-loan div.basic-info > dl > div.pickup-receiving-methods > dd span.on,
	.modal-loan div.basic-info > dl > div.pickup-receiving-methods > dd span.active {
		color: #000;
		border: 1px solid #666;
		background-color: #ddd
	}
.modal-loan div.pr-info {
	padding: 0 4vw 2vw 4vw;
	font-size:14px;
}
	.modal-loan div.pr-info em {
		color: #f28d33;
		font-style: normal;
	}
.modal-loan div.detail-info {
	margin: 0 0;
	padding: 0 3vw;
}
.modal-loan div.detail-info h4 {
	font-size: 18px;
	font-weight: normal;
	margin: 0 0;
	padding: 10px 0 5px 0;
}
.modal-loan div.detail-info > div:not(:first-child) {
	margin-top:20px;
}
.modal-loan div.detail-info > div > dl {
	display:flex;
	flex-wrap: wrap;
	border-top:1px solid #ddd;
}
.modal-loan div.detail-info > div > dl > dt,
.modal-loan div.detail-info > div > dl > dd {
	font-size:14px;
	border-bottom:1px solid #ddd;
	margin: 0 0;
	padding:7px 5px;
	width: 100%;
}
.modal-loan div.detail-info > div > dl > dt {
	background-color:#eee;
}
.modal-loan div.detail-info > p.last-updated-at {
	margin-top:10px;
	margin-bottom: 125px;
	font-size:14px;
	color:#999;
	text-align:right;
}
.modal.modal-loan div.button {
	position:fixed;
	bottom: 2%;
	left: 2vw;
	width: 96vw;
	margin: 0 0;
	padding: 3vw 0;
	background-color:#fff;
	border-top:1px solid #ccc;
	display:flex;
	flex-wrap: wrap;
	flex-direction: column-reverse;
	justify-content:center;
	border-bottom-right-radius: 3px;
	border-bottom-left-radius: 3px;
}
.modal.modal-loan div.button span {
	display: flex;
	justify-content: center;
	text-align: center;
} 
.modal.modal-loan div.button span > a {
	display: inline-block;
	flex-grow: 1;
	position:relative;
	overflow:hidden;
	/*width: 40vw;*/
	max-width: 300px;
	min-width: 40vw;
	border-radius: 2em;
	margin: 0 5px;
	padding: 1em 0/*22px 10px*/;
	font-size: 4vw/*16px*/;
	color: #fff;
	line-height: 1;
	text-align:center;
	text-decoration:none;
	letter-spacing: .1em;
	background-image: url("/unified/images/common/icon-arrowRight_white.png");
	background-position: 30px center;
	background-repeat:  no-repeat;
	background-size: 6px auto;
	box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}
.modal.modal-loan div.button span > a:hover {
	opacity: 0.8;
}
.modal-loan div.button span > a {
/*	transform:scale(1.1, 1.1);*/
}
.modal.modal-loan div.button span > a::before {
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: -100%;
	background-image: linear-gradient(130deg, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0) 75%);
	transition: 0.5s;
}
.modal.modal-loan div.button > div.link {/* 別ウィンドウで開く */
	display: block;
	width: 100%;
	text-align: right;
	font-size: 14px;
	line-height: 1.1;
	margin: 0 0;
	padding: 0 10px 10px 0;
}
.modal.modal-loan div.button.no-button > div.link {/* 別ウィンドウで開く */
	margin: 0 0 -20px;
}
.modal.modal-loan div.button > div.link > a {
	display: inline-block;
	line-height: 1.1;
	color:#3f9322;
	padding: 0 0 0 10px;
	text-decoration: none;
	background: url("/unified/images/common/link-arrow_grey.png") left center no-repeat;
	background-size: 5px auto;
}
	/** **/
	a[data-link="appl-1"] { background-color: #ee8e26;}
	a[data-link="appl-2"] { background-color: #6fb42c;}
	a[data-link="appl-3"] { background-color: #08bbd6;}
	a[data-link="appl-4"] { background-color: #08bbd6;}
	a[data-link="appl-5"] { background-color: #08bbd6;}

/**************************************************************************************/
.modal-loan .creditor-group-insurance > ul > li {}
.modal-loan .creditor-group-insurance > ul > li:before {
	content:"";
	display:block;
	border-top:1px solid #ddd;
	margin:10px 20px;
}
.modal-loan .creditor-group-insurance ul > li > dd > dl {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 3px;
	padding: 2px 8px 4px;
	border:1px solid #ddd;
	border-radius:5px;
}
.modal-loan .creditor-group-insurance ul > li > dd > dl > dt {
	margin: 5px 10px 0 0;
	width: 100px;
}
.modal-loan .creditor-group-insurance ul > li > dd > dl > dd {
	margin: 3px 0 0 0;
	width: calc(100% - 100px);
}
.modal-loan .creditor-group-insurance ul > li > dt > span {
	font-weight:bold;
}
.modal-loan .creditor-group-insurance ul > li > dd > dl > dd > ul {
	display:flex;
	flex-wrap: wrap;
}
.modal-loan .creditor-group-insurance ul > li > dd > dl > dd > ul > li {
	border-radius: 10px;
	margin: 1px 2px;
	padding: 1px;
	text-align: center;
	height: 18px;
	vertical-align: middle;
	font-size:14px;
}
.modal-loan .creditor-group-insurance ul > li > dd > dl > dd > ul > li > span {
	display: block;
	color: #fff;
	margin-top: -1px;
	padding: 0 7px;
}
/**/
@media screen and (orientation: landscape) {
	.modal.modal-loan div.detail-info > p.last-updated-at {
		margin-bottom: 75px;
	}
	.modal.modal-loan div.button {
		justify-content: space-evenly;
		align-items: center;
		padding: 10px 0 10px 0;
		flex-direction: row;
	}
	.modal.modal-loan div.button span > a {
		width: calc(40vw - 2em);
		min-width: calc(40vw - 6em);
		margin: 0 5px;
		padding: 0 0;
		font-size: 15px;
		line-height: 40px;
		background-image: none;

	}
	.modal.modal-loan div.button > div.link {
		position: static;
		width: 11em;
		text-align: right;
		font-size: 14px;
		line-height: 1.1;
		margin: 0 0;
		padding: 0 10px 0 0;
	}
}

/**************** 商品詳細：団体信用生命保険 *****************/
.maincontents-detail table td, /* 商品詳細 */
.modal-loan div.detail-info > div > dl > dd/* 商品詳細モーダル *//*  */ {}
ul.tab_grpins,
ul.element_grpins {
	display: block;
}
/* タブ */
ul.tab_grpins,
.modal.modal-loan ul.tab_grpins {
	display: block;
	margin-top: 0.5em;
	padding: .5em .5em;
	background-color: #eee;
	border-radius: 3px;
	font-size: 13px;
}
ul.tab_grpins li,
.modal ul.tab_grpins li,
.modal.modal-loan ul.tab_grpins li {
	display: inline-block;
	margin: 1px 1px 1px 0;
	padding: 5px 4px 5px 16px;
	line-height: 1.1;
	color: #444;
	cursor: pointer;
	background: url("/unified/images/common/icon-pagelink_green.png") left 4px top 10px no-repeat;
	background-size: 9px auto;
	white-space: normal;
}
ul.tab_grpins li:hover,
.modal ul.tab_grpins li:hover {
	color: #6fb42c;
}
ul.tab_grpins li.active,
.modal ul.tab_grpins li.active {
	color: #6fb42c;
	background-color: #fcfcfc;
	border-color: #ccc;
	border-radius: 3px;
}
/* 切り替え表示コンテンツ */
ul.element_grpins,
.modal ul.element_grpins {
	padding: 0 0 !important;
	list-style: none !important;}
ul.element_grpins > li,
.modal ul.element_grpins > li {
	display: block;
	padding-top: 0.75em;
}
ul.element_grpins > li > span {
	display: block;
}
/* アイコン説明 */
ul.element_grpins > li > dl {
	display: flex;
	flex-direction: column;
	margin: 0 0 0.75em 0;
	padding: 3px 0 3px 10px;
	border: 1px solid #ccc;
	border-radius: 5px;
}
ul.element_grpins > li > dl > dt {
	margin: 5px 10px 0 0;
	line-height: 1;
}
ul.element_grpins > li > dl > dt > a {/* ? */
	color: #444444;
	text-decoration: none;
	transition: opacity .4s;
	vertical-align: middle;
}
ul.element_grpins > li > dl > dt i.fa {
	display: inline-block;
	width: 1rem;
	height: 1rem;
	line-height: 1;
	margin: 0 2px;
	padding: 0 0;
	color: #aaa;
	background: url("/unified/images/common/icon-question.png") 0 0 no-repeat;
	background-size: contain;
}
ul.element_grpins > li > dl > dd {
	margin: 5px 0 0 0;
}
div.modal-loan ul.element_grpins > li > dl > dd > ul {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	padding: 0 0;
	line-height: 1;
}
div.modal-loan ul.element_grpins > li > dl > dd > ul > li {
	list-style: none;
	margin:0 3px 3px 0;
	padding: 3px 4px 2px 4px;
	font-size: 13px;
	color: #ccc;
	line-height: 1;
	text-align:center;
	border: 1px solid #ccc;
	border-radius: 4px;
	background-color: #fff;	
}
ul.element_grpins > li > dl > dd > ul > li.active,
div.modal-selection > dl > dt {
	box-shadow: 1px 1px 0px #ddd;
}
ul.element_grpins > li > dl > dd > ul > li > span {
	margin: 0 0;
	padding: 0 0;
}
/* 「保険金のアイコンについて」モーダル */
div.modal.about-icon {
	margin: auto 2vw;
	padding: 0 4vw 2vw 4vw;
	font-size: 16px;
	background-color: #fff;}
.modal.about-icon h3 {
	position: fixed;
	z-index: 99;
	width: calc(100% - 12vw);
	margin: 0 0;
	padding: 12px 0 10px 0;
	line-height: 1.2;
	font-size: 16px;
	font-weight: bold;
	background-color: #fff;
	border-bottom: 1px solid #999;
	letter-spacing: -0.025em;
}
.modal.about-icon div.modal-close {
	position: fixed;
	top: auto;
	right: 6vw;
	width: auto;
	height: auto;
	padding-top: 10px;
	font-size: 24px;
	line-height: 1;
	text-align: right;
	z-index: 100;
	background-color: #fff;
	background-image: none;
}
.modal.about-icon div.modal-selection {
	margin-top: 15px;
	padding-top: 45px;
}
.modal.about-icon div.modal-selection > dl > dt {
	display: inline-block;
	border-radius: 4px;
	margin: 0px 2px 2px 0;
	padding: 3px 4px 2px 4px;
	text-align:center;
	vertical-align:middle;
	line-height: 1.2;}
.modal.about-icon div.modal-selection > dl > dd { 
	margin:0.25em 0 .75em 0em;
	}
	.modal.about-icon div.modal-selection > dl > dd:last-of-type { margin-bottom: 0;}
.modal.about-icon div.modal-selection > dl > dd > ul,
.modal.about-icon div.modal-selection > dl > dd > ul > li {
	list-style: disc;
	margin: 0 1em;
	padding: 0.15em 0.25em;
	line-height: 1;
}
/********** tag 色 **********/
ul > li dl > dd > ul > li.ins-type-a.active,
div.modal-selection dl dt.ins-type-a {
	border:1px solid#24245B !important;
	color:#24245B !important;
}
ul > li dl > dd > ul > li.ins-type-b.active,
div.modal-selection dl dt.ins-type-b {
	border:1px solid #040 !important;
	color: #040 !important;
}
ul > li dl > dd > ul > li.ins-type-c.active,
div.modal-selection dl dt.ins-type-c {
	border:1px solid #923D5C !important;
	color: #923D5C !important;
}
ul > li dl > dd > ul > li.ins-type-d.active,
div.modal-selection dl dt.ins-type-d {
	border:1px solid  #DAA520 !important;
	color:  #DAA520 !important;
}
ul > li dl > dd > ul > li.ins-type-e.active,
div.modal-selection dl dt.ins-type-e {
	border:1px solid #B12323 !important;
	color: #B12323 !important;
}
ul > li dl > dd > ul > li.ins-type-f.active,
div.modal-selection dl dt.ins-type-f {
	border: 1px solid #669 !important;
	color: #669 !important;
}
ul > li dl > dd > ul > li.ins-type-g.active,
div.modal-selection dl dt.ins-type-g {
	border: 1px solid #BB543E !important;
	color: #BB543E !important;
}
/********** /tag 色 **********/

/*===================================================
	20240717 貸付条件 #loanConditions
===================================================*/
.modal #loanConditions {
	margin: -110px 3vw 135px 3vw;
	padding: 4vw;
	max-width: 100vw;
	line-height: 1.25;
	background-color: #f6f6f6;
	border-radius: 6px;
	border: 1px solid #ccc;
}
	.modal #loanConditions h5 {
		line-height: 1.5;
		font-weight: bold;
	}
	.modal #loanConditions pre {
		line-height: 1.5;
		white-space: pre-wrap;
		font-size: 14px;
		font-family: inherit;
	}

/******************************
    2025.12.05
********************************/
.modal.modal-loan img.jfsa-symbol {
	width:4mm;
	height:4mm;
	margin-right:4px;
}
