@charset "UTF-8";
/*===================================================
    土台作成用CSS
===================================================*/
/*//////////////////////////////////////////////////
    Base set
///////////////////////////////////////////////////*/

* {
            box-sizing: border-box;
        -ms-box-sizing: border-box;
       -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -webkit-text-size-adjust: none;
}
html,body { height:100%; }
body {
    width: 100%;
    font-family: Meiryo, "メイリオ",'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    font-size: 14px;
    line-height: 1.5;
    word-break: break-all;
    text-align: left;
    color: #444444;
    z-index: 1;
    background: #fcfcfc;
    position: relative;
}
#tags { display: none; }
/* --------------------------------------------------
    focus
-------------------------------------------------- */

.searchform-price ,
.searchform-year ,
.searchform-textarea {
    transition: .4s;
}

.focus {
    border: 1px solid rgba(8,187,214,1)!important;
    outline: 0;
}


/* --------------------------------------------------------
    clearfix
-------------------------------------------------------- */
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}

/* --------------------------------------------------
    リンク
-------------------------------------------------- */
a {
    color: #444444;
    text-decoration: none;
}
/* --------------------------------------------------
    画像
-------------------------------------------------- */
img {
	width: 100%;
	height: auto;
	vertical-align: middle;
}

/* --------------------------------------------------
    #head
-------------------------------------------------- */
#head {
/*
	position: fixed;
	top: 0;
	left: 0;
*/
	width: 100%;
	padding: 10px;
	z-index: 999;
	background: #ffffff;
	border-bottom: #ededed 1px solid;
}
#head > div {
    position: relative;
}
#head > div > div {
    position: relative;
}
.head-logo {
    display: inline-block;
}
.head-logo > em,
.head-logo > a > em {
    display: block;
    width: 105px !important;
}
.head-logo > a {
    display: block;
    width: 105px !important;
    margin-bottom: 5px;
}
.head-logo span {
    position: relative;
    display: block;
    font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3';
    font-size: 12px;
    font-weight: bold;
    color: #888888;
}
.head-logo span:after {
    content: '';
    position: absolute;
    top: -28px;
    right: -30px;
    width: 78.5px;
    height: 26px;
    background: url("/images/common/sbiholdings-logo.svg") no-repeat;
    background-size: 78.5px auto;
}
body.no-catchcopy .head-logo span:after {
    right: -80px;
}
/* ハンバーガーメニュー */
#headGnavBtn,
#headGnavBtn span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
}
#headGnavBtn {
/*
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: 2;
*/
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 1000;
    margin: auto 0;
    width: 25px;
    height: 20px;
}
    #headGnavBtn span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #888888;
    }

    #headGnavBtn span:nth-of-type(1) { top: 0px; }
    #headGnavBtn span:nth-of-type(2) { top: 10px; }
    #headGnavBtn span:nth-of-type(3) { top: 20px; }
    #headGnavBtn.active span:nth-of-type(1) {
            -webkit-transform: translateY(10px) rotate(-45deg);
            transform: translateY(10px) rotate(-45deg);
        }
        #headGnavBtn.active span:nth-of-type(2) {
            left: 50%;
            opacity: 0;
            -webkit-animation: active-menu-bar02 .8s forwards;
            animation: active-menu-bar02 1s forwards;
        }
        @-webkit-keyframes active-menu-bar02 {
            100% { height: 0; }
        }
        @keyframes active-menu-bar02 {
            100% { height: 0; }
        }
        #headGnavBtn.active span:nth-of-type(3) {
            -webkit-transform: translateY(-10px) rotate(45deg);
            transform: translateY(-10px) rotate(45deg);
        }

#headGnav {
    display: none;
    position: fixed;
    overflow-y:scroll;
/*    top: 60px;*/
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    background: rgba(255,255,255,0.95);
    z-index: 999;
	padding-top:60px;
}
#headGnav > div {
    position: relative;
    min-height: 100%;
    padding-bottom: 30px;
    z-index: 9999;
    box-sizing: border-box;
}
/*#headGnavLinktab*/
#headGnavLinktab {
    overflow: hidden;
    margin-bottom: 20px;
    border-top: 1px solid #ededed;
}
#headGnavLinktab > li {
    width: 100%;
    border-bottom: 1px solid #ededed;
    cursor: pointer;
}
#headGnavLinktab > li.accord {
    background: url("/images/common/headGnav-icon_plus.png") top 13px right 20px no-repeat;
    background-size: 14px auto;
}
#headGnavLinktab > li.accord.active {
    background-image: url("/images/common/headGnav-icon_minus.png");
    background-position-y: 19px;
}
#headGnavLinktab > li > a {
    display: block;
    padding: 14px 10px 14px 60px;
    line-height: 1;
    font-weight: bold;
}
#headGnavLinktab > li:first-child > a {
    background: url("/images/common/headGnav-icon_01.png") left 24px center no-repeat;
    background-size: 22px auto;
}
#headGnavLinktab > li:nth-child(2) > a {
    background: url("/images/common/headGnav-icon_02.png") left 20px center no-repeat;
    background-size: 30px auto;
}
#headGnavLinktab > li:nth-child(3) > a {
    background: url("/images/common/headGnav-icon_03.png") left 25px center no-repeat;
    background-size: 21px auto;
}
#headGnavLinktab > li:nth-child(4) > a {
    background: url("/images/common/headGnav-icon_04.png") left 24px center no-repeat;
    background-size: 21px auto;
}
#headGnavLinktab > li:nth-child(5) > a {
    background: url("/images/common/headGnav-icon_05.png") left 24px center no-repeat;
    background-size: 21px auto;
}
#headGnavLinktab > li:nth-child(6) > a {
    background: url("/images/common/headGnav-icon_06.png") left 23px center no-repeat;
    background-size: 24px auto;
}
#headGnavLinktab > li:nth-child(7) > a {
    background: url("/images/common/headGnav-icon_07.png") left 24px center no-repeat;
    background-size: 22px auto;
}
#headGnavLinktab > li:nth-child(8) > a {
    background: url("/images/common/headGnav-icon_08.png") left 23px center no-repeat;
    background-size: 24px auto;
}
#headGnavLinktab > li:nth-child(9) > a {
    background: url("/images/common/headGnav-icon_09.png") left 24px center no-repeat;
    background-size: 23px auto;
}
#headGnavLinktab > li:last-child > a {
    background: url("/images/common/headGnav-icon_10.png") left 24px center no-repeat;
    background-size: 21px auto;
}

.headGnav-sub > div > div:first-child {
    display: none;
}
.headGnav-sub > div ul {
    display: none;
    padding: 0 20px;
    cursor: auto;
}
.headGnav-sub > div ul > li {
    width: 100%;
    border-top: 1px solid #ededed;
    background: url("/images/common/arrow-green_right.png") center right 4px no-repeat;
    background-size: 6px auto;
}
.headGnav-sub > div ul > li a {
    display: block;
    padding: 13px 0;
    line-height: 1;
    color: #3f9322;
}

/*#headGnavLinklist*/
#headGnavLinklist {
    font-size: 0;
    width: 244px;
    margin: 0 auto;
    overflow: hidden;
}
body:not(.specify-division) #headGnavLinklist li {
    float: left;
    width: calc(50% - 10px);
    line-height: 1;
}
body:not(.specify-division) #headGnavLinklist li:nth-child(n+3) {
    margin-top: 14px;
}
body:not(.specify-division) #headGnavLinklist li:nth-child(odd) {
    margin-right: 20px;
}
#headGnavLinklist li:last-child {
    display: block;
    width: 100% !important;
    margin: 20px auto 0;
    text-align: center;
}
#headGnavLinklist li:last-child img {
    width: 114px;
    vertical-align: middle;
}
#headGnavLinklist li a {
    font-size: 14px;
    font-weight: bold;
    color: #3f9322;
}

/* --------------------------------------------------
    #maincontents
-------------------------------------------------- */
#maincontents {/* 上部にヘッダ用のマージンをとる */
/*	margin-top: 61px;*/
	padding-bottom: 90px;
}
/* --------------------------------------------------
    searchform
-------------------------------------------------- */

/*  入力項目
-------------------------------------------------------- */
input[type="text"],
input[type="email"],
input[type="tel"] {
    width: 100%;
    height: 40px;
    padding-left: 1em;
    font-size: 14px;
    border-radius: 4px;
    border: 1px solid #cccccc;
    background: #ffffff;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

input[type="number"] {
    width: 100%;
    font-size: 14px;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
     height: 34px;
     margin: 2px 0;
     box-sizing: content-box;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

::-webkit-input-placeholder {
    /* WebKit, Blink, Edge */
    color: #999999;
}

:-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #999999;
}

::placeholder {
    /* Others */
    color: #999999;
}

/*数値入力部*/
.searchform-price,
.searchform-year,
.searchform-age {
    position: relative;
    padding: 0 50px 0 15px;
    border-radius: 4px;
    border: 1px solid #cccccc;
    background: #ffffff;
}
.searchform-price:after,
.searchform-year:after,
.searchform-age:after {
    position: absolute;
    top: 0;
    right: 10px;
    bottom: 0;
    height: 19px;
    margin: auto 0;
}
/*金額*/
.searchform-price:after {
    content: '万円';
}
/*年*/
.searchform-year:after {
    content: '年';
}
/*年齢*/
.searchform-age:after {
    content: '歳';
}
/*チェックボックス*/
.searchform-checkBox {
    margin: -10px 0 0 -15px;
    font-size: 0;
}
.searchform-checkBox li {
    display: inline-block;
    margin: 10px 0 0 15px;
    font-size: 14px;
}
.searchform-checkBox label {
	position: relative;
	display: inline-block;
	min-height:20px;
	padding: 3px 0 0 34px;
	z-index: 1;
	background: url("/images/common/searchform-check_off.png") left center no-repeat;
	background-size: 24px auto;
}

.searchform-checkBox label.checked {
	background: url("/images/common/searchform-check_on.png") left center no-repeat;
	background-size: 24px auto;
}

.searchform-checkBox label input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 2;
    cursor: pointer;
}
	/* すべてチェック／すべて外す */
.searchform form dl:first-child .searchform-checkBox li.check-all {
	width: auto !important;
	display: inline-flex;
	font-size: 3.15vw;}
.searchform-checkBox li.check-all a {
	display: inline-block;
	/* ボタン状の場合 */
	line-height: 1.1;
	margin-right: .5em;
	padding: 0.4em 1vw 0.4em 6.5vw;
	color: #fff;
	border-radius: 0.3em;
	background-color: #bbb;
	background-position: left 1.5vw center;
	background-repeat: no-repeat;
	background-size: 4vw auto;}
	.searchform-checkBox li.check-all a:hover { text-decoration: none;}
	/* icon */
	.searchform-checkBox li.check-all a.check-all {
		background-image: url("/images/common/searchform-checkall_on.png");}
	.searchform-checkBox li.check-all a.uncheck-all {
		background-image: url("/images/common/searchform-checkall_off.png");}
	/*  */

/*セレクトボックス*/
.searchform-selectBox {
    position: relative;
    width: 100%;
    height: 42px;
    border-radius: 4px;
    border: 1px solid #cccccc;
    background: url("/images/common/searchform-arrow_down.png") right 10px center no-repeat #ffffff;
    background-size: 9px auto;
}
.searchform-selectBox label {
    width: calc(100% - 43px);
    overflow-x: hidden;
    position: absolute;
    top: 10px; left: 15px;
    text-overflow: ellipsis;
    white-space: nowrap;

}
.searchform-selectBox.changed label {
    color: #444444;
}
.searchform-selectBox select {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    -ms-filter: "alpha(opacity=0)";
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
/*ラジオボタン*/
.searchform-radioList {
    margin: -10px 0 0 -15px;
    font-size: 0;
}
.searchform-radioList li {
    position: relative;
    display: inline-block;
    margin: 10px 0 0 15px;
    font-size: 14px;
}
.searchform-radioList input[type="radio"] {
    position: absolute;
    left: 0;
    top:0;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 1;
    cursor: pointer;
}
.searchform-radioList label {
    display: block;
    padding: 3px 0 0 34px;
    background: url("/images/common/searchform-radio_off.png") left center no-repeat;
    background-size: 24px auto;
    cursor: pointer;
}
.searchform-radioList input[type="radio"]:checked + label {
    background: url("/images/common/searchform-radio_on.png") left center no-repeat;
    background-size: 24px auto;
}
/*検索ボタン*/
.searchform-submit {
    width: 135px;
}
.searchform-submit input {
    display: block;
    width: 100%;
    height: 45px;
    font-size: 16px;
    color: #ffffff;
    text-align: center;
    border: none;
    cursor: pointer;
    border-radius: 40px;
    background: #6fb42c;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* --------------------------------------------------
    モーダルウインドウ
-------------------------------------------------- */
.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;
}
.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;
}
/* */
/* */
.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;
}
.modal {
	display: none;
	position: fixed;
	overflow: auto;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 99999;
	height: max-content;
	max-height: 90%;
	background-color:#fff;
	border-radius: 3px;
	padding: 2vw 4vw;
}
.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;
}


/* --------------------------------------------------
	#foot
-------------------------------------------------- */
#foot {
	position: relative;
	color: #ffffff;
	background: #3f4547;
}
#foot a {
	color: #ffffff;
}
/*ローン一覧*/
#footLoanList {
	padding-bottom: 30px;
}
dl#loanListPages div dt a {
	display: block;
	padding: 10px;
	border-bottom: 1px solid #5a6265;
	background: url("/images/common/foot-icon_plus.png") right 10px center no-repeat;
	background-size: 12px auto;
}
	dl#loanListPages div.active dt a {
		background-image: url("/images/common/foot-icon_minus.png");
	}
dl#loanListPages ul {/* 非表示 */
	display: none;
	padding: 10px;
	background: #5a6265;
}
dl#loanListPages div.active ul { display: block;}
dl#loanListPages ul li a {
	display: block;
	padding: 5px;
	color: #d2d4d5;
}
ul#articlePages li { margin-top: 11px;}
ul#articlePages a {
	display: inline-block;
	border: none;
	margin-bottom: 0;
	padding: 0 0 0 20px;
	background: url("/images/common/footLoanList-arrow.png") 10px 4px no-repeat;
	background-size: 5px auto;
}
    /* 定期預金 */
    ul#articlePages > div+div > li:first-child {
        margin-top: 15px;
        padding-top: 15px;
        border-top: 1px solid #5a6265;
    }
/*SBIグループサービス*/
#footSitemap > dt {
    padding: 0 10px 5px;
    font-size: 16px;
    border-bottom: 1px solid #5a6265;
}
#footSitemap > dd {
    padding: 15px 0;
}
#footSitemap > dd dl + dl {
    margin-top: 20px;
}
#footSitemap > dd dl dt {
    padding: 0 10px;
}
#footSitemap > dd dl dd ul {
    padding: 0 10px 0 5px;
    font-size: 0;
}
#footSitemap > dd dl dd ul li {
    display: inline-block;
    margin-top: 5px;
    padding: 0;
    font-size: 14px;
    position: relative;
}
#footSitemap > dd dl dd ul li:not(:last-of-type) {
    padding-right: 10px;
}
#footSitemap > dd dl dd ul li a {
    position: relative;
    color: #d2d4d5;
}
#footSitemap > dd dl dd ul li:not(:last-of-type)::after {
    content: '';
    position: relative;
    bottom: -3px;
    right: -8px;
    width: 1px;
    height: 15px;
    margin-right: 8px;
    background: #5a6265;
    display: inline-block;
}

#foot > div:nth-child(2) {
    padding: 30px 10px;
    border-top: 1px solid #5a6265;
}
#foot > div:nth-child(2) ul {
    margin: -10px 0 25px -25px;
}
#foot > div:nth-child(2) ul li {
    display: inline-block;
    margin: 10px 0 0 25px;
    line-height: 1;
}
#foot > div:nth-child(2) p {
    /*font-size: 10px;*/
    text-align: center;
}

/* --------------------------------------------------
    .breadcrumbs  パンくずリスト
-------------------------------------------------- */
.breadcrumbs {
    display: block;
    max-width: 1180px;
    margin: 0 auto;
    padding: 5px 10px;
}

.breadcrumbs li {
    color: #888;
    /*font-size: 12px;*/
    letter-spacing: 0;
    line-height: 20px;
    display: inline;
}

.breadcrumbs li:not(:last-of-type){
    margin-right: 5px;
    padding-right: 15px;
    position: relative;
    background: url(/images/common/gray-arrow.png) no-repeat right top 2px;
    background-size: 5px auto;
}

.breadcrumbs li a {
    color: #3f9322;
}
    /* -----------    フッタ  パンくずリスト　--------- */
#breadcrumbs-bottom { display: none;}
#breadcrumbs-bottom.breadcrumbs { padding: 2vw 2vw;}
#breadcrumbs-bottom ol.breadcrumbs { padding: 0;}
#breadcrumbs-bottom ol.breadcrumbs li {  color: #ccc;}
#breadcrumbs-bottom ol.breadcrumbs li:not(:last-of-type) { background-position-y: center;}

body.bottom-breadcrumbs-on #maincontents .breadcrumbs { display: none}
body.bottom-breadcrumbs-on #breadcrumbs-bottom.breadcrumbs { display: block;}
/* --------------------------------------------------
    .linklist-bnr バナーリンク
-------------------------------------------------- */
.linklist-bnr {
    margin-bottom: 90px;
    width: 100%;
    display: block;
    background: #fff;
}

.linklist-bnr li {
    display: block;
    width: 100%;
    padding: 7.5px 15px;
}
.linklist-bnr li:first-child {
    padding-top: 15px;
}
.linklist-bnr li:last-child {
    padding-bottom: 15px;
}

.linklist-bnr li a {
    display: block;
}

.linklist-bnr li a img {
    display: inline-block;
    width: 90px;
    height: auto;
    vertical-align: top;
    margin-right: 10px;
}

.linklist-bnr li a p {
    width: calc(100% - 110px);
    display: inline-block;
}

.linklist-bnr li a p em {
    font-size: 14px;
    display: block;
    margin-bottom: 5px;
    font-weight:bold;
}

.linklist-bnr li a p span {
    font-size: 14px;
    line-height: 18px;
    letter-spacing: 0;
    display: inline-block;
}

/* --------------------------------------------------
    .linklist-ul リストリンク
-------------------------------------------------- */
.linklist-ul {
    width: 100%;
    padding: 0 10px;
    margin: 40px 0 40px 0;
}

.linklist-ul h2 {
    display: block;
    font-size: 16px;
    font-weight: bold;
    line-height: 24px;
    letter-spacing: 0.05em;
    margin-bottom: 20px;
}

.linklist-ul ul {
    display: block;
    width: 100%;
    margin-top: 10px;
}

.linklist-ul ul li {
    display: inline-block;
    margin: 0 15px 10px 0;
    padding-right: 15px;
    font-size: 16px;
}
.linklist-ul ul li:not(:last-of-type) {
    border-right: 1px solid #ccc;
}

.linklist-ul ul li a {
    color: #3f9322;
}

.balloon_notice {
    display: none;
    max-width: 268px;
    width: calc(100% - 60px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    position: absolute;
    background: #fff;
    padding: 25px 10px 15px;
    border-radius: 3px;
    transform: translateY(-100%) translateY(-60px);
    box-sizing: content-box;
    z-index: 2;
}

.balloon_notice .tail {
    box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.1);
    position: absolute;
    bottom: 0;
    left: 50%;
    display: block;
    background: #fff;
    width: 15px;
    height: 15px;
    transform: translate(-50%, 50%) rotate(45deg);
    z-index: -1;
}

.balloon_notice .tail::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    background: #fff;
    width: 20px;
    height: 30px;
    transform: translate(-50%, -50%) rotate(45deg);
}

.balloon_notice p {
    text-align: center;
    margin-bottom: 10px;
}

.balloon_notice ul {
    display: flex;
    justify-content: center;
    font-size: 15px;
}

.balloon_notice ul .btn_remove {
    display: block;
    height: 40px;
    width: 96px;
    line-height: 39px;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 20px;
    text-align: center;
    cursor: pointer;
}

.balloon_notice ul .btn_to_compare {
    display: block;
    height: 40px;
    width: 160px;
    line-height: 40px;
    background: #6fb42c;
    color: #fff;
    border-radius: 20px;
    text-align: center;
}

.balloon_notice ul li:not(:last-child) {
    margin-right: 10px;
}

.balloon_notice.active {
    display: block;
}

.balloon_notice button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: absolute;
    top: 10px;
    right: 10px;
    display: block;
    width: 10px;
    height: 10px;
    padding: 0;
    margin: 0;
    border: none;
    background: url(/images/common/btn-close.png) no-repeat center center;
    background-size: 10px auto;
    cursor: pointer;
}


/*===================================================
    全ページ共通パーツ
===================================================*/
/*************************************************
	メッセージボックス
 *************************************************/
.messageBox {
	/*width: 90%;*/
	margin: 12px 12px;
	padding: 20px;
	font-size: 100%;
	border-width:1px;
	border-style: solid;
	border-radius: 4px;
	text-shadow: 0 1px 0 rgba(255, 255, 255, .2);
	-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05);
}
.messageBox a {
	text-decoration: underline;
	color: #3f9322}
	/* メッセージの種類 */
	.messageBox.info {/* [1] 情報 */
		color: #31708f;
		border-color: #bce8f1;
		background-color: #d9edf7;}
	.messageBox.alert,
	.messageBox.error {/* [2] 警告、[3] エラー */
		color: #a94442;
		border-color: #dca7a7;
		background-color: #f2dede;
		background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
		background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
		background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3));
		background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);
		background-repeat: repeat-x;}
	.messageBox.announce {/* [4] お知らせ：注意喚起 */
		border: 1px solid #ccc;
		background: #eee;
		}

.messageBox h3 {
	font-weight: bold;
	padding-bottom: 0.5em;
	}
.messageBox em {
	color: #f00;
	font-weight: bold;
    }


/* 2020.12 追加 */
.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 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% - 5vw) / 3);
    margin: 2px 3px;
    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:calc(100% - 2vw)/*calc(((100% - 24px) / 4) * 2 + 6px)*/;
}
.modal-loan div.basic-info > dl > div > dt,
.modal-loan div.basic-info > dl > div > dd {
    width: 100%;
    font-size: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;}
.modal-loan div.basic-info > dl > div > dd {
	padding: 1.5vw 2vw;
	line-height: 1.25;
	/*font-weight: bold;*/
	/*color: #6fb42c;*/
}
.modal-loan div.basic-info > dl > div.pickup-receiving-methods > dd {
	padding: 2.5vw .5vw;
	font-weight: normal;
	font-size: 2.9vw;
	letter-spacing: 0em;
}
.modal-loan div.basic-info > dl > div.pickup-receiving-methods > dd > ul {
	display: flex;
	justify-content: space-evenly;
	list-style:none;
	padding: 0;
}
.modal-loan div.basic-info > dl > div.pickup-receiving-methods > dd > ul > li {
	margin:0 .25vw;
	line-height: 1.1;
}
.modal-loan div.basic-info > dl > div.pickup-receiving-methods > dd > ul > li > span {
	display: block;
	padding: 1.5vw 1vw;
	font-size: 3vw;
	color: #aaa;
	background-color: #f3f3f3;
	border: 1px solid #ccc;
	border-radius: 3px;
}
	.modal-loan div.basic-info > dl > div.pickup-receiving-methods > dd > ul > li > span.on {
		color: #333;
		border: 1px solid #999;
		background-color: #ddd
	}
/*  */
.modal-loan div.pr-info {
	padding: 0 4vw 2vw 4vw;
	font-size:14px;
}
    .modal-loan div.pr-info em {
/*        font-weight: bold;*/
        color: #f28d33;
    }
.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;
	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: 10px 0 20px 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: 22px 10px;
	font-size: 16px;
	color: #fff;
    line-height: 1;
	text-align:center;
	text-decoration:none;
    letter-spacing: .1em;
    background: url("../../images/loan/btn-arrowRight_white.png") 30px center no-repeat #ee8e26;
    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("/images/common/link-arrow_grey.png") left center no-repeat;
    background-size: 5px auto;
}
.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("/images/loan/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;
}
ul.element_grpins > li > dl > dt i.fa {
    margin-left: 2px;
    color: #aaa;
    font-weight: 400;
}
ul.element_grpins > li > dl > dd {
    margin: 5px 0 0 0;
}
ul.element_grpins > li > dl > dd > ul {
    display: flex;
    flex-wrap: wrap;
    line-height: 1;
}
ul.element_grpins > li > dl > dd > ul > li {
	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;}
.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;
}
.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 色 **********/

/*===================================================
    _add.css 由来　2021.5.14
===================================================*/

a[data-link="appl-1"] { background-color: #ee8e26 !important;}
a[data-link="appl-2"] { background-color: #6fb42c !important;}
a[data-link="appl-3"] { background-color: #08bbd6 !important;}
a[data-link="appl-4"] { background-color: #08bbd6 !important;}
a[data-link="appl-5"] { background-color: #08bbd6 !important;}
a[data-link="appl-6"] { background-color: #ee8e26 !important;}

.spNewLine:before {
  content: '\A';
  white-space: pre;
}

/* --------------------------------------------------
    共通パーツ
-------------------------------------------------- */
/* リストの意匠 */
.readings-main > div > ul, .readings-main > div > li,
	ul.iconDotted, ul.iconDotted li,
	ul.list-disc, ul.list-disc li {
		list-style-type: disc;
		margin-left: 0.75em;
		padding-left: 0.5em;}
.readings-main > div > ol, .readings-main > div > ol li,
	ol.list-numbering, ol.list-numbering li,
	ol.listIconNumber {
		list-style-type: decimal;
		margin-left: 0.75em;
		padding-left: 0.5em;}
ul.iconArrowL li, li.iconArrowL,
.readings-main > div > ul.iconArrowL li,
    .readings-main > div > ul li.iconArrowL {
	display: inline-block;
	color: #3f9322;
	background: url("/images/common/gray-arrow.png") no-repeat left top 6px;
	background-size: 5px auto;
	padding-left: 12px;}

/* 左右 */
.float-right { float: right;}
.float-left { float: left;}

/* --------------------------------------------------
    .maincontents-top
-------------------------------------------------- */
.maincontents-top {
	padding: 25px 0 0 0;
}

.maincontents-top .maincontents-top-box {
  background: -webkit-gradient(linear, left top, right top, from(#daf7e0), to(#f2f7da));
  background: -webkit-linear-gradient(left, #daf7e0, #f2f7da);
  background: -o-linear-gradient(left, #daf7e0, #f2f7da);
  background: linear-gradient(to right, #daf7e0, #f2f7da);
  padding: 0 10px 20px;
  position: relative;
}

.maincontents-top .maincontents-top-box h1 {
	color: #6fb42c;
	display: block;
	top: -12px;
	position: relative;
	font-size: 21px;
	letter-spacing: 0.05em;
	line-height: 1.2;
	/*
	top: 0;
	transform: translateY(-50%);
	*/}

.maincontents-top .maincontents-top-box > div > p {
	/*margin-bottom: 25px;*/
}

.maincontents-top .maincontents-top-box > div > p em {
  display: block;
  margin-bottom: 5px;
  font-size: 17px;
}

.maincontents-top .maincontents-top-box > div > ul > li {
  padding: 10px 10px 0;
  background-color: #fff;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.maincontents-top .maincontents-top-box > div > ul > li + li {
  margin-top: 10px;
}

.maincontents-top .maincontents-top-box dl dt {
  overflow: hidden;
  border-bottom: 1px solid #ccc;
  padding: 0 0 5px;
}

.maincontents-top .maincontents-top-box dl dt em {
  float: left;
}

.maincontents-top .maincontents-top-box dl dt span {
  float: right;
  color: #aaa;
}

.maincontents-top .maincontents-top-box dl dd ul {
  display: inline-block;
}

.maincontents-top .maincontents-top-box dl dd {
  padding: 2px 0;
  text-align: center;
}

.maincontents-top .maincontents-top-box dl dd ul li em {
  display: inline-block;
  margin-right: 5px;
  color: #f28d33;
  font-size: 24px;
}

.maincontents-top .maincontents-top-box dl dd ul li span {
  font-size: 14px;
  color: #444444;
}

.maincontents-top .maincontents-top-box > div > ul > li + li dl dd ul li {
  display: table;
  width: 100%;
  min-width: 220px;
}

.maincontents-top .maincontents-top-box > div > ul > li + li dl dd ul li > span {
  display: table-cell;
  width: 130px;
  text-align: left;
  vertical-align: middle;
}

.maincontents-top .maincontents-top-box > div > ul > li + li dl dd ul li > em {
  display: table-cell;
  text-align: right;
  vertical-align: middle;
}

.maincontents-top .maincontents-top-box > div > ul > li + li dl dd ul li br {
  display: none;
}


.maincontents-common-comment,
.bottom-comment {
	width: 100%;
	margin: 0 auto;
	padding: 0 10px 0;
}
.maincontents-common-comment > p,
.bottom-comment > p {
	font-size: 14px;
	letter-spacing: -.7px;
	line-height: 1.7;
	padding-left: 24px;
	position: relative;
}
.maincontents-common-comment > p:before,
.bottom-comment > p:before {
	width: 18px;
	height: 18px;
	content: '※';
	position: absolute;
	top: 0;
	left: 0;
}
.maincontents-common-comment a,
.bottom-comment a {
	color: #3f9322;
}

/*===================================================
	サイドナビ
===================================================*/
.sidenav > * + * {
	margin-top:20px;
}
	/* バナー */
.sidenav .banner {
    max-width: 300px;
    margin: 0 auto 40px auto;
}
.sidenav .banner > li > a {
    display: inline-block;
}
.sidenav .banner li + li {
    margin-top: 10px;
}
	/* サイドナビ＞カードボックス以外 */
.sidenav > dl {
	margin: 0 0 30px 0/*40px 0*/;}
.sidenav > dl > dt {
	font-size: 16px;
	letter-spacing: 0.05em;
	padding-left: 22px;
	border-left: 3px solid #6fb42c;
	margin: 0 0 15px;
}
.sidenav > dl > dd > p {
	/*text-align: right;*/
	color: #888;}

	/* サイドナビ＞金融機関一覧 */
		/* 上位カテゴリ */
.sidenav > dl.sidenav-lenders > dd > dl > dt.sidebar-title-primary span,
.sidenav > dl.sidenav-lenders > dd > dl > dt.sidebar-title-primary a {
	width: 100%;
	display: block;
	height: 30px;
	line-height: 30px;
	letter-spacing: 0;
	font-size: 14px;
	border-radius: 7.5px;
	margin-top: 15px;
	padding-left: 30px;
	background: url("/images/common/gray-arrow.png") no-repeat 15px center;
	background-size: auto 9px;
	background-color: #eee;
	color: inherit;
}
		/* 下位カテゴリ */
.sidenav > dl.sidenav-lenders > dd > dl > dd > ul {
	margin: 10px 0 0 0;
}
.sidenav > dl.sidenav-lenders dd ul li {
	margin: 2px 0;
	padding: 0 5px;
	display: inline-block;
	line-height: 1;
}
.sidenav > dl.sidenav-lenders dd ul li:not(:last-child) {
	border-right: 1px solid #cccccc;
}
.sidenav > dl.sidenav-lenders dd ul li em {
    display: inline-block;
    margin-left: 1px;
    padding: 2px 5px;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: bold;
    font-size: 11px;
    color: #ffffff;
    line-height: 1;
    vertical-align: top;
    border-radius: 20px;
    background: #ee5b5b;
}
.sidenav > dl.sidenav-lenders dd ul li a {
	background: none;
	padding: 0;
	margin: 0;
	display: inline-block;
	color: #3f9322;
}

	/* サイドナビ＞ランキング */
.sidenav .sidenav-ranking dt {
    margin-bottom: 10px;
    padding: 0 0 0 15px;
    font-size: 18px;
    letter-spacing: 0.05em;
    border-left: 3px solid #6fb42c;
}
.sidenav .sidenav-ranking dd {
    padding: 20px 0 0;
    line-height: 1.3;
    border-top: 1px solid #cccccc;
}
.sidenav .sidenav-ranking dd ol li {
    counter-increment: numCount;
    position: relative;
    margin-bottom: 15px;
    padding-left: 40px;
}
/*.sidenav .sidenav-ranking dd ol li:before {*/
.sidenav .sidenav-ranking dd ol li > span {
/*    content: counter(numCount);*/
    position: absolute;
    top: 0;
    left: 0;
    font-family: 'Josefin Sans';
	font-weight: 500;
    font-size: 16px;
    width: 25px;
    padding: 5px 0 2px;
    text-align: center;
    color: #ffffff;
    line-height: 1;
    background: #aaaaaa;
}
/*.sidenav .sidenav-ranking dd ol li.rank-1:before {*/
.sidenav .sidenav-ranking dd ol li.rank-1 > span {
    padding: 7px 0 0;
    background: url("/images/fp/icon-rank_01.png") no-repeat;
    background-size: 25px auto;
}
/*.sidenav .sidenav-ranking dd ol li.rank-2:before {*/
.sidenav .sidenav-ranking dd ol li.rank-2 > span {
    padding: 7px 0 0;
    background: url("/images/fp/icon-rank_02.png") no-repeat;
    background-size: 25px auto;
}
/*.sidenav .sidenav-ranking dd ol li.rank-3:before {*/
.sidenav .sidenav-ranking dd ol li.rank-3 > span {
    padding: 7px 0 0;
    background: url("/images/fp/icon-rank_03.png") no-repeat;
    background-size: 25px auto;
}
.sidenav .sidenav-ranking dd ol li p a {
    display: block;
    line-height: 16.8px;
    margin-bottom: 5px;
    color: #3f9322;
}
.sidenav .sidenav-ranking dd ol li time {
    display: block;
    color: #888888;
    line-height: 20px;
}

	/* サイドナビ＞カード型ボックス */
.sidenav .sidenav-box {
    padding: 15px 10px;
    background: #ffffff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.sidenav .sidenav-box dt {
	margin: 0 0 15px 0;
	padding: 0 0 10px 0;
	font-size: 20px;
	letter-spacing: 0.05em;
	border: none;
	border-bottom: 1px solid #cccccc;
}
.sidenav .sidenav-box dd p {
	line-height: 1.2;
}
.sidenav .sidenav-box dd div {
	text-align: right;
}
.sidenav .sidenav-box dd div span {}
.sidenav .sidenav-box dd div a {
	color: #3f9322;
	line-height: 1.7;
}
.sidenav > dl.sidenav-box > dd  a {
	margin: 10px 0 0;
	display: inline-block;
	color: #3f9322;
	font-size: 14px;
	background: url("/images/common/gray-arrow.png") no-repeat left center;
	background-size: auto 9px;
	padding-left: 15px;
}

/* --------------------------------------------------
	.pager
-------------------------------------------------- */
div.pager {
    margin: 10px auto;
}
.pager > ul {
    text-align: center;
    display: flex;
    justify-content: center;
    width: 100%;
    margin: 0 auto;
    padding: 0 10px;
}
.pager > ul > li:first-of-type > a {
    margin-right: 15px;
    background: url("/images/common/pager_1.png") no-repeat center;
    background-size: 10px auto;
}
.pager > ul > li:first-of-type > span {
    margin-right: 15px;
    background: url("/images/common/pager_1_none.png") no-repeat center;
    background-size: 10px auto;
}
.pager > ul > li:nth-of-type(2) > a {
    margin-right: 20px;
    background: url("/images/common/pager_2.png") no-repeat center;
    background-size: 5px auto;
}
.pager > ul > li:nth-of-type(2) > span {
    margin-right: 20px;
    background: url("/images/common/pager_2_none.png") no-repeat center;
    background-size: 5px auto;
}
.pager > ul > li:nth-of-type(3) ol {
    width: 100px;
}
.pager > ul > li:nth-of-type(3) ol li.spHide {
    display: none;
    width: 0;
}
.pager > ul > li:last-of-type > a {
    margin-left: 15px;
    background: url("/images/common/pager_3.png") no-repeat center;
    background-size: 10px auto;
}
.pager > ul > li:last-of-type > span {
    margin-left: 15px;
    background: url("/images/common/pager_3_none.png") no-repeat center;
    background-size: 10px auto;
}
.pager > ul > li:nth-last-of-type(2) > a {
    margin-left: 20px;
    background: url("/images/common/pager_4.png") no-repeat center;
    background-size: 5px auto;
}
.pager > ul > li:nth-last-of-type(2) > span {
    margin-left: 20px;
    background: url("/images/common/pager_4_none.png") no-repeat center;
    background-size: 5px auto;
}
.pager > ul > li:first-child > a,
.pager > ul > li:nth-child(2) > a,
.pager > ul > li:nth-child(4) > a,
.pager > ul > li:last-child > a {
    display: block;
    height: 25px;
    width: 25px;
}
.pager > ul > li:first-child > span,
.pager > ul > li:nth-child(2) > span,
.pager > ul > li:nth-child(4) > span,
.pager > ul > li:last-child > span {
    display: block;
    height: 25px;
    width: 25px;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}
.pager > ul > li > a > span {
    display: none;
}
.pager > ul > li > a {
    color: #3f9322;
    cursor: pointer;
}
.pager > ul > li > ol {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.pager > ul > li > ol li {
    display: block;
    padding: 0 5px;
}
.pager > ul > li > ol li a {
    display: block;
    color: #3f9322;
    cursor: pointer;
    height: 25px;
    width: 25px;
    line-height: 25px;
}
.pager>ul>li>ol li[data-select="current"] {
  display: inline-block;
  width: 28px;
  height: 28px;
  line-height: 29px;
  background-color: #3f9322;
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  padding-right:0;
  padding-left:0;
}
.pager > ul > li > ol li span[data-select="current"] {
    display: block;
    height: 28px;
    width: 28px;
    line-height: 28px;
    background-color: #3f9322;
    border-radius: 50%;
    color: #fff;
  padding-right:0;
  padding-left:0;
}
/* --------------------------------------------------
    .readings-pager
-------------------------------------------------- */
.readings-pager {
    overflow: hidden;
    max-width: 230px;
    margin: 20px auto 40px;
}
.readings-pager li:first-child {
    float: left;
}
.readings-pager li:last-child {
    float: right;
}
.readings-pager li a {
	color: #3f9322;
	display: inline-block;
	}
.readings-pager li:first-child a {
	padding-left: 15px;
	background: url("/images/common/pager_1.png") no-repeat left center;
	background-size: 10px auto;
}
.readings-pager li:last-child a {
	padding-right: 15px;
	background: url("/images/common/pager_3.png") no-repeat right center;
	background-size: 10px auto;}

.readings-pager li span {
	display: inline-block;
	}
.readings-pager li:first-child span {
	padding-left: 15px;
	background: url("/images/common/pager_1_none.png") no-repeat left center;
	background-size: 10px auto;
	}
.readings-pager li:last-child span {
	padding-right: 15px;
	background: url("/images/common/pager_3_none.png") no-repeat right center;
	background-size: 10px auto;
	}

/* --------------------------------------------------
    戻るリンク
-------------------------------------------------- */
div.return-link {
	display: block;
	margin: 5px 0 25px 15px;}
div.return-link a {
	display: inline-block;
	padding-left: 15px;
	background: url("/images/common/link-arrow_grey.png") left center no-repeat;
	background-size: 5px auto;
	color: #42a420;
	line-height: 1.7;
}

/* --------------------------------------------------
	div.apiBox
-------------------------------------------------- */
div.apiBox div#loading-overlay {
	z-index: 99;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	min-height: 500px;
	margin: 0 0 0 0;
	padding-top: 200px;
	opacity: 0.5;
	background-color: #fff;
	text-align: center;
}
div.apiBox div#loading-overlay img {
	width: 100px;
	height: 100px;
}

div.apiBox div#poweredby {
	margin: 2px;
	padding: 2px;
	text-align: right;
	color: #666;
}
div.apiBox div#poweredby img {
	vertical-align: sub;
	width: 82px;
	height: 20px;
}

div.apiBox div.switchrow {
	top: 2.75em;
	right: 0;
	text-align: right;
	color: #555;
	font-size: 90%;
}
div.apiBox div.switchrow-current {
	font-weight: bold;
	color: #000;
	border: 1px solid #b9b9bb;
}
div.apiBox div.switchrow ul li {
	list-style: none;
	display: inline-block;
	margin: 0 1px 0 1px;
	padding: 2px 5px;
	text-align: center;
	border: 1px solid #ddd;
}
div.apiBox .banklist > li > ul {
	justify-content: space-between;
}
@media screen and (max-width: 768px) {
	div.apiBox .banklist > li > ul > li:last-child {
		width: 100%;
	}
}

/****************** みんなが選んでいる金利体系は？ *****************/
.modalContent > div > h3,
#rate-type-mdl > div > h3 {
	padding-bottom: 5px;
	font-weight:bold;
	font-size:15px;
	border-bottom: 1px solid #999999;
	line-height: 1.2;
}
	.modalContent > div > h3 { font-size:15px;}

.modalContent > div > div > h4,
#rate-type-mdl > div > div > h4 {
	font-weight:bold;
	font-size: 15px;
	line-height: 1.25;
	padding-bottom: 5px;
}

#rate-type-mdl > div > div > dl {
	width:260px;
	float:none;
	margin-left:45px;
}
#rate-type-mdl > div > div > dl > dt,
#rate-type-mdl > div > div > dl > dd {
	display:inline-block;
	font-size:16px;
	color: #444;
}
#rate-type-mdl > div > div dt {
	width:160px;
}
#rate-type-mdl > div > div dt:nth-of-type(1):before {
    background-color: #7f9a48;
}
#rate-type-mdl > div > div dt:nth-of-type(2):before {
    background-color: #9bbb59;
}
#rate-type-mdl > div > div dt:nth-of-type(3):before {
    background-color: #c6d6ac;
}
#rate-type-mdl > div > div dt:before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-right: .25em;
    vertical-align: middle;
    margin-top: -2px;
}
#rate-type-mdl > div > div dd {
	text-decoration:underline;
}
.modalContent > div > p,
#rate-type-mdl > div > p {
	line-height:1.2em;
	margin:0;
	padding: 10px 0 10px 0 !important;
	font-size:14px;
}
.modalContent > div > p > span,
#rate-type-mdl > div > p > span {
/*	font-weight:bold;*/
	display:inline;
	color: #f28d33;
}
.modalContent > div > div > p,
#rate-type-mdl > div > div > p {
	line-height:1.1em;
	font-size:14px;
	padding-top: 10px;
}
.modalContent > div > p .spHide,
#rate-type-mdl > div > p .spHide {
	display:none;
}


p.btn-normal {
    width: 100%;
    max-width: 300px;
    background-color: #7fb244;
    margin: 20px auto 0;
    padding: 0 0;
    text-align: center;
    border-radius: 22px;
}
p.btn-normal a {
    width: 100%;
    margin: 0 0;
    padding: 14px 0;
    font-size: 15px;
    letter-spacing: .1px;
    color: #fff;
    display: inline-block;
}
/* 横スクロールガイド */
.scroll-guide {
	white-space: nowrap;
	text-align:center;
	z-index:998;
	position: absolute;
	top: 40px;
	right: 3px !important;
	-webkit-animation: fluffy1 3s ease infinite;
	-moz-animation: fluffy1 3s ease infinite;
	animation: fluffy1 3s ease infinite;

	font-size: 1px;
	color: transparent;
	text-indent: -5000px;
	width: 100px/*30vw*/;
	height: 40px/*12vw*/;
	background: url("/images/common/btn_hscrollable.png") 0 0 no-repeat;
	background-size: contain;
	opacity: .75;
}

@keyframes fluffy1 {
	0% { transform:translateY(0) }
	5% { transform:translateY(0) }
	10% { transform:translateY(0) }
	20% { transform:translateY(-10px) }
	25% { transform:translateY(0) }
	30% { transform:translateY(-10px) }
	50% { transform:translateY(0) }
	100% { transform:translateY(0) }
}


/* --------------------------------------------------
	都道府県名地図選択 .-eloan-prefecture-selection
-------------------------------------------------- */
div.-eloan-ps-modal-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background-color: rgba(0, 0, 0, .85);
	z-index: 9999;
	transition-property: all;
	transition-duration: 1s;
	transition-timing-function: ease-out;
	transition-delay: 0s;
}
div.-eloan-ps-modal-overlay.on { display: block;}

section.-eloan-ps-map-box { /* 地図から選択 */
	display: none;
	position: fixed !important;
	top: 10vh;
	left: 2vw;
	z-index: 10000 !important;
	width: 96vw;
	height: auto;
	max-width: 96vw;
	max-height: 80vh;
	margin: 0 0;
	padding: 0 0;
	text-align: center;
	font-size: 16px;
	border-radius: 3px;
	background: #fff;
	box-shadow: 2px 2px 8px rgba(0, 0, 0, 1);
}
section.-eloan-ps-map-box > div.-eloan-ps-map {
	position: relative;
	margin: 0 0;
	padding: 0 0;
}
section.-eloan-ps-map-box > div.-eloan-ps-map > p {
	margin: 0 0;
	padding: 1rem .75rem 0 .75rem;
	font-size: 14px;
	text-align: left;
	color: #666;
}
section.-eloan-ps-map-box > div.-eloan-ps-map > ul {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 0 !important;
	padding: 0 0 !important;
	list-style: none;
}
.-eloan-ps-map-box > div.-eloan-ps-map > ul li,
.-eloan-ps-map-box > div.-eloan-ps-map > ul li:last-child {
	position: absolute;
	width: 7.8em !important;
	margin: 0 0 !important;
	padding: 0 0 !important;
	list-style: none;
	font-size: 14px;
	float: none !important;
}
.-eloan-ps-map-box > div.-eloan-ps-map > ul li.-eloan-ps-prefecture-block-1 {
	top: 28vw;
	right: 5vw;
}
.-eloan-ps-map-box > div.-eloan-ps-map > ul li.-eloan-ps-prefecture-block-3 {
	top: 70vw;
	right: 3vw;
}
.-eloan-ps-map-box > div.-eloan-ps-map > ul li.-eloan-ps-prefecture-block-4 {
	top: 60vw;
	right: 25vw;
}
.-eloan-ps-map-box > div.-eloan-ps-map > ul li.-eloan-ps-prefecture-block-5 {
	bottom: 15vw;
	left: 38vw;
}
.-eloan-ps-map-box > div.-eloan-ps-map > ul li.-eloan-ps-prefecture-block-6 {
	bottom: 25vw;
	left: 13vw;
}
.-eloan-ps-map-box > div.-eloan-ps-map > ul li.-eloan-ps-prefecture-block-8 {
	left: 1vw;
	bottom: 37vw;
}
.-eloan-ps-map-box > div.-eloan-ps-map > ul li a {
	display: block;
	text-align: center;
	opacity: 1;
	border-radius: 7px;
	border: 1px solid transparent;
	transition: none;
	text-decoration: none;
}
.-eloan-ps-map-box > div.-eloan-ps-map dl {
	border-radius: 6px;
	border: 1px solid #ccc;
	overflow: hidden;
	margin: 0 0;
	padding: 0 0;
	opacity: 0.85;
}
.-eloan-ps-map-box > div.-eloan-ps-map dl dt {
	margin: 0 0;
	padding: 5px 10px;
	line-height: 1;
	background: #edf7db;
	font-size: 14px;
	color: #000 !important;
}
.-eloan-ps-map-box > div.-eloan-ps-map dl dd {
	display: none;
}
.-eloan-ps-map-box > div.-eloan-ps-map ul li a:hover {
	text-decoration: none;
	background: #6cac31;
	border-color: #fff;
}
.-eloan-ps-map-box > div.-eloan-ps-map ul li a:hover dl dt {
	color: #fff !important;
	background: #6cac31
}
.-eloan-ps-map-box > div.-eloan-ps-map ul li a:hover dl dd {
	color: #666;
	background: #edf7db
}
.-eloan-ps-map-box > div.-eloan-ps-map ul li a:hover dl {
	border-color: #6cac31;
	background: #6cac31
}
/**************************************/
.-eloan-ps-map-box > div.-eloan-ps-map > svg {
	width: 96vw;
	height: 96vw;
	max-height: 80vh;
	margin: 0 auto;
}
.-eloan-ps-map-box > div.-eloan-ps-map > svg .active {
	fill: #6dac31
}
/**************************************/
/*
	<div class="pref_area">
		<div class="area_overlay"></div>
		<ul id="modal1" class="modalContent">
*/
/* 選択前は表示を隠す */
.-eloan-ps-map-box div.-eloan-ps-prefecture-layer {
	display: none;
}
.-eloan-ps-map-box div.-eloan-ps-prefecture-layer.on {
	display: block;
}
.-eloan-ps-map-box div.-eloan-ps-prefecture-layer .-eloan-ps-prefecture-block-overlay {
	position: absolute;
	z-index: 10001;
	top: 0;
	left: 0;
	width: 100% /*96vw*/ ;
	height: 100% /*85.5vw*/ ;
	background-color: #eee;
	opacity: 0.7;
}
/* 地域毎の都道府県リスト */
.-eloan-ps-map-box div.-eloan-ps-prefecture-layer ul.-eloan-ps-prefecture-block {
	display: none;
	position: absolute;
	z-index: 10002;
	top: 50%;
	left: 50%;
	margin: 0 0 !important;
	padding: 0 0 !important;
	list-style: none;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	box-sizing: border-box;
	border-radius: 0;
}
.-eloan-ps-map-box div.-eloan-ps-prefecture-layer ul.-eloan-ps-prefecture-block.on {
	display: flex !important;
	-webkit-flex-wrap: wrap !important;
	flex-wrap: wrap !important;
	justify-content: flex-start !important;
	width: 90vw !important;
}
.-eloan-ps-map-box div.-eloan-ps-prefecture-layer ul.-eloan-ps-prefecture-block li {
	box-sizing: border-box;
	width: 29.5vw !important;
	margin: 0 .5vw 1vw 0 !important;
	padding: 0.5em !important;
	font-size: 14px;
	font-weight: normal;
	text-align: center;
	cursor: pointer;
	background-color: #FFF;
	border: 1px solid #CCC;
	box-shadow: 1px 2px 3px #999;
}
.-eloan-ps-map-box div.-eloan-ps-prefecture-layer ul.-eloan-ps-prefecture-block li:hover {
	color: #fff;
	border-color: #6cac31;
	background-color: #6cac31;
}
/******************************************************************/
a.-eloan-ps-prefecture-block-close {
	position: absolute;
	display: inline-block;
	top: 5px;
	right: 15px;
	z-index: 10000;
	margin: 0 0;
	padding: 0 0;
	width: 4px;
	height: 20px;
	background-color: #ccc;
	transform: rotate(45deg);
}
a.-eloan-ps-prefecture-block-close:before {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: -8px;
	width: 20px;
	height: 4px;
	margin-top: -2px;
	background-color: #ccc;
}
a.-eloan-ps-prefecture-block-close:hover,
a.-eloan-ps-prefecture-block-close:hover:before {
	cursor: pointer;
	background-color: #6cac31;
}
a.-eloan-ps-prefecture-back { /* 地図に戻る */
	display: block;
	position: absolute;
	z-index: 10002;
	left: calc(50% - 6em);
	bottom: 10%;
	width: 12em;
	font-size: 14px;
	padding: 0.5em 0;
	border: 1px solid #999;
	border-radius: 3px;
	background-color: #edf7db;
	box-shadow: 2px 2px 4px #999;
	text-decoration: none;
	color: #000;
}
a.-eloan-ps-prefecture-back:hover {
	color: #fff;
	background-color: #6cac31;
}
/******************************************************************/
.-eloan-prefecture-selection .-eloan-ps-selected {
	position: relative;
	display: block;
	height: 44px;
	width: 100%;
	padding-left: 0.2rem;
	font-size: 14px;
	border: 1px solid #ccc;
	border-radius: 4px;
	background-color: #fff;
}
.-eloan-prefecture-selection .-eloan-ps-selected-name {
	display: inline-block;
	width: 28.5vw/*8em*/;
	height: 42px;
	margin: 0 0 0 0;
	padding: 10px 0.2em 0 15px;
	background-color: transparent;
}
.-eloan-prefecture-selection .-eloan-ps-selected-name.unselected {
	color: #999;
}
.-eloan-prefecture-selection .-eloan-ps-selected-clear {
	display: none;
	position: absolute;
	top: 8px;
	right: 38px;
	border: none;
	height: 1.5em;
	cursor: pointer;
}
.-eloan-prefecture-selection .-eloan-ps-selected-clear:hover,
.-eloan-prefecture-selection .-eloan-ps-selected-clear:focus {
	cursor: pointer;
}
.-eloan-prefecture-selection button.-eloan-ps-showmodal {
	display: block;
	float: right;
	margin: 0 10px 0 0;
	width: 19px;
	height: 100%;
	border: none;
	font-size: 14px;
	color: #fff;
	cursor: pointer;
	background: url('/images/common/btn-map_bl.png') top 7px right 0px no-repeat;
	background-size: 18px;
}
/* --------------------------------------------------
    #readings-main
-------------------------------------------------- */
body#topic .readings-main h2,
body#topic .readings-main h3,
body#topic .readings-main h4,
body#topic .readings-main h5,
body#topic .readings-main h6 {
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0.1em;
	margin: 1em 0 .5em 0;}

/*//////////////////////////////////////////////////
    比較リストへ
///////////////////////////////////////////////////*/
#compareLink {}
#compareLink a {
    position: relative;
    display: block;
    width: 50px;
    line-height: 1;
    margin-bottom: 1vw;
    padding: 31px 0 7px 0;
    text-align: center;
    font-size: 8px;
    letter-spacing: -0.1em;
    background-color: #ee8e26;
    background-image: url("/images/common/btn_comparelink.png");
    background-position: center top 7px;
    background-repeat: no-repeat;
    background-size: 18px;
    cursor: pointer;
/*    border: 1px solid rgba(256,256,256,0.5);*/
    border-radius: 10px;
    opacity: 1;
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.5);
}
#compareLink i {
    display: inline;
    font-weight: bold;
    padding-right: 2px;
    font-style: normal;
}
#compareLink span {
    position: absolute;
    top: -0.5em;
    right: -0.25em;
    display: inline-block;
    padding: 0.25em 0.25em;
    min-width: 1.65em;
    font-weight: normal;
    font-size: 10px;
    line-height: 1;
    background-color: red;
    border-radius: 2em;
    text-align: center;
	border: 1px solid rgba(256,256,256,.3);
}
/*//////////////////////////////////////////////////
    LINE 友だち登録
///////////////////////////////////////////////////*/
.spHidden, .spHide { display: none !important;}
/*===================================================
    modal line
===================================================*/
.modal.modal-line {
	width: 90vw;
	margin: auto auto;
	padding: 0 0;
}
.modal.modal-line div.modal-close { 
	color: #fff;
	position: absolute;
	top: 5px;
	right: 5px;
	bottom: auto;
	left: auto;
	font-size: 20px;
	z-index: 100;
	/**/
	width: 20px;
	height: 20px;
	padding: 0 0;
	background-color: transparent;
	line-height: 1;
}

.modal.modal-line div.head-info { 
    margin: 0 0;
    padding: 0 0;
    background-color: #00B900;
}
.modal.modal-line div.head-info h3 {
	line-height: 1.1;
	margin: 0 0 20px 0;
	padding: 15px 0;
	font-size: 9vw;
	font-weight: bold;
	color: #fff;
	text-align: center;
	/*  */
	position: relative;
	z-index: auto;
	width: auto;
	background-color: transparent;
	border-bottom: none;
	letter-spacing: 0;
 }
.modal.modal-line div.head-info h3 span {
    display: block;
}

.modal.modal-line div.basic-info {
    padding: 0 5vw;
}
.modal.modal-line div.bottomBox {
    margin: 0 0;
    padding: 5vw 0;}

.modal.modal-line div.leftCell {
    padding-bottom: 3vw;
    text-align: center;
}
.modal.modal-line div.rightCell {}

.modal.modal-line div.leftCell img {
    width: auto;
    height: auto;
}
.modal.modal-line p {
    font-size: 16px;
    font-weight: bold;
}
.modal.modal-line p strong {
    color: red;
}

.modal.modal-line h4 {
    font-size: 20px;
    font-weight: bold;
    color: red;
}
.modal.modal-line p.note { font-weight: normal;}

.modal.modal-line div.button { 
    margin: 0 0;
    padding: 0 0 5vw 0;
    text-align: center;
}
.modal.modal-line div.button img {
    width: 80vw
}


/* --------------------------------------------------
    #pagetop
-------------------------------------------------- */
#foot > div:first-child > #pagetop {/* トップへ */
	position: fixed;
	top: auto;
	right: 3vw;
	bottom: 3vw;
	width: 50px;
	z-index: 999;
	cursor: pointer;}
#foot #extraLinks {/* トップへ：LINE登録ボタンがある場合 */
	position: fixed;
	display: flex;
	flex-wrap: wrap;
	right: 3vw;
	bottom: 3vw;
	width: 50px;
	z-index: 981;
	transition: all 0.25s ease-out;
}
	/* chatbotへのリンクがある場合:20231208*/
	body.has-link-to-chatbot #foot #extraLinks {
		right: 1vw;
		bottom: 32vw;
		transition: all 0.25s ease-out;}
	/* 下部にCTAがある場合:202511*/
	body.has-bottom-cta #foot #extraLinks {
		right: 1vw;
		bottom: 29vw;
		transition: all 0.25s ease-out;}
#lineLink {
	cursor: pointer;
	width: 50px;
	height: 50px;
}
#lineLink img {
	display: block;
	width: 100%;
	height: 100%;
/*    border: 1px solid rgba(256,256,256,0.5);*/
    border-radius: 14px;
	/*
	background: url("/unified/images/line/btn_sp.png") 0 0 no-repeat;
	background-size: contain;
	*/
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.5);
}
#pagetop {
	width: 50px/*15vw*/;
	height: 50px/*15vw*/;
	margin-top: 1vw;
	cursor: pointer;
}
	#pagetop img {
	display: block;
	width: 100%;
	height: 100%;
	background: url('/images/common/btn_pagetop2_sp.png') 0 0 no-repeat;
	background-size: 50px 50px;
/*    border: 1px solid rgba(256,256,256,0.5);*/
    border-radius: 14px;
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.5);
	/*opacity: .75;*/}
#lineLink.off, #pagetop.off { 
	display: none;}
#pagetop.ov { bottom:24vw;/* ローン一覧でボタンを表示しているとき */}
#extraLinks > p {
	z-index: 1;
}

	/******************************** 
		2023.11.24 AIチャットボット
	**********************************/
#botchatLink { display: none;}
body.has-link-to-chatbot #botchatLink {
	display: block;
	position: fixed;
	z-index: 981;
	left: 1vw;
	bottom: -0.25vw;
	width: 98vw;
	height: 31.4vw;}
#botchatLink p#toBotchat {
	margin: 0 0;
	padding: 0 0;
	width: 100%;
	height: 100%;}
#botchatLink p#toBotchat > a {
	display: block;
	width: 100%;
	height: 100%;
	background: url("/images/chatbot/btn_botchatLink-sp.png") no-repeat;
	background-size: contain;}
	#botchatLink p#toBotchat > a:hover { opacity: .95;}
	/* closeボタン */
#botchatLink:before { 
	content: "";
	display: block;
	position: absolute;
	z-index: 1;
	right: -1vw;
	top: 6vw;
	width: 6vw;
	height: 6vw;
	background-color: #222;
	border-radius: 50%;}
#botchatLink i.close {
	display: block;
	position: absolute;
	z-index: 1;
	right: -1vw;
	top: 6vw;
	width: 6vw;
	height: 6vw;
	cursor: pointer;
	background: url('/images/common/btn-close_wh.png') center center no-repeat;
	background-size: 2.75vw;}

/*===================================================
	2022.08.02 執筆者名と更新日
===================================================*/

/*===================================================
	記事末尾 FPプロフィール
===================================================*/
	/******************************** 
		共通レイアウト 
	**********************************/
div.fpProfile {
	clear: both;
	width: auto;
	margin: 1em 0;
	padding: 4px 6px 6px 6px;
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 4px;}
div.fpProfile h4 {/* 私が書きました*/
	background-color: #efefef;
	border-radius: 4px;
	margin: 2vw 1vw !important;
	padding: .5em 5em .4em .5em;
	font-size: 1rem !important;
	font-weight: bold;
	line-height: 1.6;
	border-left: none;
	color: #555 !important;}
div.fpProfile > div.profileBox {
	margin: 0 0;
	padding: 2vw 2vw;}
div.fpProfile img.fpPhoto {
	float: left;
	width: 45vw;
	height: 45vw;
	margin: 0 1em .5em 0;
	width: 150px;
	height: 150px;
}
div.fpProfile div.profileInfo { 
	clear: none;
	overflow: initial !important;}
div.fpProfile div.profileInfo p {
	margin: 0 0 .5em 0;
	padding: 0 0 0 0;
	text-indent: 0;
	line-height: 1.4;}
div.fpProfile div.profileInfo p.author {/* 名前 */ font-size: 110%;}
div.fpProfile div.profileInfo p.author span.fpName { font-weight: bold;}
div.fpProfile div.profileInfo p.author span.fpNameKana { font-weight: normal;}
div.fpProfile div.profileInfo > p.fpPrText1 {}
div.fpProfile div.profileInfo > p.fpPrText2 { margin-bottom: 0;}
div.fpProfile div.profileInfo > p.writingAt {/* 執筆日*/
	text-align: right;
	margin-bottom: 0;}
	/******************************** 
		住宅ローントップ：ライフプラン別住宅ローンシミュレーション
	**********************************/
section.lifeplan div.fpProfile {}
section.lifeplan div.fpProfile > div.profileBox { padding: 2vw 2vw 0 2vw;}
	/******************************** 
		FPアドバイス：記事頁
	**********************************/
.readings-main div.readings-btm > div.fpProfile {}
	/******************************** 
		section.trendReport：住宅ローン金利は？
	**********************************/
body#trendRate .releasedAt,
section.trendReport .releasedAt {/* yyyy年mm月dd日掲載 */
	display: block;
	margin:0 0; padding: 0 0;
	text-align: right;}

#bestRate > p.bestrateDate,
#ranking > p.lastupdatedDate {
	padding-top: 0;}

body#trendRate div.fpProfile,
section.trendReport div.fpProfile { 
	margin-top: 0.5em;
	margin-bottom: 2vw;}
	/******************************** 
		divトップ：ADVICE, FLOW
	**********************************/
div#advice div.fpProfile {
	margin: 0 10px 2vw 10px;
	border: none;
	box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.1);}
div#flow div.fpProfile { 
	margin: .6em 0 0.25em 0;
	border: none;}
div.divTop section.adviceList div.advice#advice > p {
	padding: 0 10px 0px 0;}

/* ===================================
	2022.8.31〈PR〉表記を追加
==================================== */
	/* コンテンツ内小見出し */
body.card section.ranking-top3 h2.prMark,
body#index.apply section.maincontents-top-box > div > div#productInfo {
	position: relative;}
body.card section.ranking-top3 h2.prMark:after,
body#index.apply section.maincontents-top-box > div > div#productInfo.prMark:after {
	content: "";
	display: block;
	position: absolute;
	top: -14px;
	right: 0;
	font-size: 1rem;
	width: 24px;
	height: 12px;
	background: transparent url('/unified/images/common/prMark-hb.png') center right no-repeat;
	background-size: contain;
	opacity:.55;}
body.card section.ranking-top3 h2.prMark { padding: 0 1.5em 0 0;}
body.card section.ranking-top3 h2.prMark:after {top: 7px;}
/**/
body#div.ranking section.ranking-top3 h2.prMark {
	position: relative;
	display: inline-block;}
body#div.ranking section.ranking-top3 h2.prMark:after {
	content: "";
	display: block;
	position: absolute;
	top: 0px;
	right: -20px;
	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;}
/* */
body#loanList.ranking section.searchform > div > h1.prMark,
body#loanList.loanList section.searchform > div > h1.prMark {/*～～の～～ランキング*/
	position: relative;
	display: inline-block;
	padding-right: 24px;
	width: 100%;}
body#loanList.ranking section.searchform > div > h1.prMark:after,
body#loanList.loanList section.searchform > div > h1.prMark:after {
	content: "";
	display: block;
	position: absolute;
	top: 0px;
	right: 0px;
	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;
	z-index: 999999;}
/*  */
body#loanList.lenders .maincontents-top .maincontents-top-layoutbox h1.prMark { letter-spacing: -0.025em;}
body#loanList.lenders .maincontents-top .maincontents-top-layoutbox h1.prMark i em {
	display: inline-block;}
body#loanList.lenders .maincontents-top .maincontents-top-layoutbox h1.prMark i span {
	position: relative;
	display: inline-block;}
body#loanList.lenders .maincontents-top .maincontents-top-layoutbox h1.prMark i:before {
	content: "";
	display: block;
	position: absolute;
	top: 0px;
	right: 0;
	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;}
/*  */
body#loanDetail .maincontents-title h1.prMark em {
	position: relative;
	display: inline-block;}
body#loanDetail .maincontents-title h1.prMark em:after {
	content: "";
	display: block;
	position: absolute;
	top: 10px;
	right: -8px;
	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;}
/**/
body.kininaru#topic .readings-main .categoryRanking h3.prMark {
	position: relative;
	display: inline-block;
	padding: .5em 1.75em .5em 0.2em;
	letter-spacing: -0.05em;}
body.kininaru#topic .readings-main .categoryRanking h3.prMark:after {
	content: "";
	display: block;
	position: absolute;
	top: 13px;
	right: 5px;
	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;}
/**/
body#topic.fp .maincontents-title h1.prMark { 
	position: relative;
	padding-right: 24px;}
body#topic.fp .maincontents-title h1.prMark:after {
	content: "";
	display: block;
	position: absolute;
	top: 6px;
	right: 0;
	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;}
	/******************************** 
		〈PR〉：モーダル
	**********************************/
.modal.modal-loan div.head-info.prMark { }
.modal.modal-loan div.head-info.prMark:after {
	content: "";
	display: block;
	position: absolute;
	top: 55px;
	right: 5vw;
	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;}

/******************************** 
	WEBプッシュ／プレオプトイン
**********************************/
div.coins-optin-dialog {
	padding: 10px 0;
	z-index: 998;
}
button.coins-optin-dialog-button {
	background-color: blue;
	color:white;
	font-weight:bold;
}
button.coins-optin-dialog-button:hover {
	background-color: #0000cd;
}
#coins-close-button {
	top:4px !important;
}

/*******************************
 ヘッダのPR表記
 *******************************/
#head p.pr-declaration {
	color: #666;
/*
	position: absolute;
	top: 0;
	right: 46px;
*/
	text-align: right;
	font-size:12px;
}
#head.limited-link p.pr-declaration {
	position: absolute;
	top: 28px;
	right: 0;
}
body.no-catchcopy #head.limited-link p.pr-declaration {
	top:0;
}
/*===================================================
	20240717 貸付条件 #loanConditions
===================================================*/
#loanConditions {
	margin: 40px 2vw 0 2vw;
	padding: 4vw;
	max-width: 100vw;
	background-color: #f6f6f6;
	border-radius: 6px;
	border: 1px solid #ccc;
}
#loanConditions h5 {
	font-weight: bold;
}
#loanConditions pre {
	white-space: pre-wrap;
}
.modal #loanConditions {
	margin: -60px 2vw 150px 2vw;
}
	/******************************** 
		2024.11.05 カードローンランキング テキストバナー
	**********************************/
section.to-special-ranking {
    margin: 10vw 0 14vw 0;
    padding: 0 0;
    text-align: left;
    font-size: 19px;
    font-weight: normal;
    color: #000;
    line-height: 1;
    text-shadow:
    1px 1px 0 #FFF, -1px -1px 0 #FFF,
    -1px 1px 0 #FFF, 1px -1px 0 #FFF,
    0px 1px 0 #FFF,  0 -1px 0 #FFF,
    -1px 0 0 #FFF, 1px 0 0 #FFF;
}
section.to-special-ranking > span {
    display:block;
    padding: 0 10px;
	font-size: 19px;
	font-family: "Josefin Sans";
	letter-spacing: .05em;
    color: #6fb42c;
}
section.to-special-ranking a {
    display:block;
    white-space: nowrap;
    width: auto;
    margin: 1vw 10px;
    padding: 0 0;
    font-size: 3.5vw;
    font-weight: bold;
    text-align: center;
    color: #000;
    background-color: rgba(0,0,0,.25);
    background: url("/images/special/hero-pc-m2.webp") center bottom no-repeat;
    border: 1px solid #ccc;
    border-radius: 6px;
	background-size: cover;
    box-shadow: 1px 1px 3px #666;
}
section.to-special-ranking a > span {
    display:block;
    margin: 0 0;
    padding: 7vw 0;
    background: linear-gradient(to bottom, rgba(0,0,0,0) 35%, rgba(0,0,0,0.75));
    border-radius: 6px;
}


/* -------------------------------------------------- --------------------------------------------------
	関連記事 .related-articles 2025.06.03
-------------------------------------------------- --------------------------------------------------*/
.related-articles,
.latest_topics {
	position: relative;
	background-color: #d7ebdb;
	margin: 0 0;
	padding: 12px 10px 1px 10px;}
	body.ranking .latest_topics {
		margin: 40px 0 0 0;
		padding: 25px 10px 10px 10px;}
body#topic .related-articles h4,
body.ranking#loanList .latest_topics h4,
body.ranking .latest_topics h2 {
	margin-top: 0 !important;
	margin-right: 0 !important;
	margin-bottom: .1em !important;
	margin-left: 0 !important;
    font-size: 17px;
    letter-spacing: 0.025em;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0.1em;}
	body.ranking#loanList .latest_topics h4,
	body.ranking .latest_topics h2 {
		position: absolute;
		top: -12px;
		margin: 0 0 15px 0;
		padding: 0 0;
		line-height: 1.1;
		color: #6fb42c;
		font-family: "Josefin Sans";
		font-size: 19px;
		letter-spacing: 0.05em;
		font-weight: inherit;}

.related-articles ul {}
.related-articles li,
.latest_topics li {
    position: relative;
	margin: 10px 0;
    padding: 20px;
	border-radius: 3px;
    background-color: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    line-height: 1.3;}
.related-articles img,
.latest_topics img { 
	width: 100%;
	height: auto;}
.related-articles a,
.latest_topics a {
	display: inline-block;
	margin: 10px 0 0 0;
    color: #42a420;
	text-decoration: none;
	font-size:16px;}

	/******************************** 
		2024.11.22 レコメンドpopup
	**********************************/

#modal-recommend-1 .modal-body dl > div > dt > img,
#modal-recommend-2 .modal-body dl.ranking > div.ranking-top3 > dt > img,
#modal-recommend-3 .modal-body dl.ranking > div.ranking-top3 > dt > img,
#modal-recommend-5 .modal-body dl.ranking > div.ranking-top3 > dt > img {
	filter: hue-rotate(90deg);
	width: 9vw;
	margin-right: 1.5vw;
}
#modal-recommend-1 .modal-body dl > div > dt > span,
#modal-recommend-2 .modal-body dl.ranking > div.ranking-top3 > dt em,
#modal-recommend-3 .modal-body dl.ranking > div.ranking-top3 > dt em,
#modal-recommend-5 .modal-body dl.ranking > div.ranking-top3 > dt em {
	color: #00A5A8;
}
/* 色指定 */
.modal-recommend .modal-head { 
	background-color: #00A5A8;}
.modal-recommend .modal-head h3 { color: #fff;}
.modal-recommend .modal-body { background-color: #FFF8CA;}
.modal-recommend .modal-body div.button > a { 
	color: #fff;
	background-color: #6fb42c;}
	#modal-recommend-1 .modal-body div.button > a,
	#modal-recommend-4 .modal-body div.button > a { background-color: #E8382F;}
.modal-recommend .modal-body em { color: #ff3300;}

#explanation span.show-sample:before {
	content:"（ ";
}
#explanation span.show-sample:after {
	content:" ）";
}

#explanation span.show-sample:before {
	content:"（ ";
}
#explanation span.show-sample:after {
	content:" ）";
}
.modal.modal-recommend {
	display:none;
	position: fixed;
	width: 92vw;
	margin: auto;
	padding: 0 0 0 0;
	overflow-x: hidden;
	overflow-y: auto;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 99999;
	height: max-content;
	max-height: 90%;
	font-size: 16px;
	border-radius: 10px;
	box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.4);
}
.modal.modal-recommend .modal-close {
	position: sticky;
	top: 4px;
	right: 12px;
	width: 12px;
	height: 20px;
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
	color:#fff;
	background-color: transparent;
	font-weight:bold;
	z-index: 100;
	font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serifs;
}
.modal.modal-recommend .modal-head {
	position: sticky;
	z-index: 9;
	top: 0;
	display: flex;
	justify-content: space-between;
}
.modal.modal-recommend .modal-head h3 {
	position: relative;
	width:auto;
	margin: 0 0;
	padding:.75em 1em;
	font-weight:bold;
	border-radius:5px;
	font-size: large;
	line-height: 1.1;
	border: none;
	background-color: transparent;
}
.modal.modal-recommend .modal-body {
	padding: 4vw;
	border-radius:0 0 6px 6px;
}
.modal.modal-recommend .modal-body p { 
	margin: 0 0;
	padding: 0 0;
	color: #000;
	font-weight: bold;}
	.modal.modal-recommend .modal-body dl {}
	.modal.modal-recommend .modal-body dl > div {
	margin: 2vw 0;
	padding: 2vw 3vw;
	border:1px solid #eee;
	border-radius:5px;
	background-color:#fff;
}
.modal.modal-recommend .modal-body div.button {
	text-align:center;
	margin:5px 0;
}
.modal.modal-recommend .modal-body div.button > a {
	display:inline-block;
	border-radius:10px;
	padding: 4vw 0;
	font-weight: bold;
	min-width: 78vw;
	font-size: 4vw;
}
.modal.modal-recommend .modal-body div.button > a:hover {
	opacity:.8;
}
	/*  */
	.modal.modal-recommend .modal-body dl.ranking > div.ranking-top3 > dd > ol {
	margin-bottom:4vw;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-top3 > dd > ol > li {
	flex: 1;
	border:1px solid #eee;
	border-radius:5px;
	padding:10px;
	margin: 2px;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-top3 > dd > ol > li:hover {
	border-color:#6fb42c;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-top3 > dd > ol > li > a > div:nth-of-type(1) {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-top3 > dd > ol > li > a > div:nth-of-type(1) > img:nth-of-type(1) {
	width:15vw;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-top3 > dd > ol > li > a > div:nth-of-type(1) > img:nth-of-type(2) {
	width: 45vw;
	margin-left: 1.5vw;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-top3 > dd > ol > li > a > div:nth-of-type(2) {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: column;
	line-height: 1.3em;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-top3 > dd > ol > li > a > div:nth-of-type(2) > span:nth-of-type(1) {
	color:#6fb42c;
	font-weight:bold;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-top3 > dd > ol > li > a > div:nth-of-type(2) > span:nth-of-type(2) {
	color:#333;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-links {
	padding-top: 4vw;
	padding-bottom: 4vw;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-links > ul {
	display:flex;
	flex-wrap: wrap;
	justify-content:flex-start;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-links > ul > li {
	display: flex;
	margin: 0.4vw;
	padding:0 0;
	cursor:pointer;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-links > ul > li > a {
	display: flex;
	align-items: center;
	width: 37.65vw;
	padding: 3vw 2vw;
	background-color:#f3f3f3;
	border:1px solid #eee;
	font-size: 3.32vw;
	border-radius: 6px;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-links > ul > li > a:hover {
	border-color:#6fb42c;
	text-decoration: none;
	}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-links > ul > li > a > span {
	color:#6fb42c;
	font-weight:bold;
}
.modal.modal-recommend .modal-body dl.ranking > div.ranking-links > ul > li > a > img {
	width: 5vw;
	margin-right: 1.5vw;
}
.modal.modal-recommend .modal-body em {
	font-style: normal;
	font-weight:bold;
}
	/* モーダル種類別指定 */
	/* #modal-recommend-1 : 比較リスト */
#modal-recommend-1 .modal-body dl > div > dt {
	margin-top:10px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	font-weight:bold;
	}
#modal-recommend-1 .modal-body dl > div > dt > span { font-size: 20px;}
	#modal-recommend-1 .modal-body dl > div > dt > span > span:nth-of-type(1) { display: none;}
#modal-recommend-1 .modal-body dl > div > dd {}
	#modal-recommend-1 .modal-body dl > div > dd > ul { 
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 3vw 0;}
	#modal-recommend-1 .modal-body dl > div > dd > ul > li {
		flex-basis: 48%;
	}
	/* #modal-recommend-2 : ランキング */
#modal-recommend-2 .modal-body dl.ranking > div.ranking-top3 > dt {
	margin: 1vw 0 2vw 0;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
    font-weight: bold;
    color: #333;
	font-size: 16px;
}
#modal-recommend-2 .modal-body dl.ranking > div.ranking-top3 > dt > span { display: block; line-height:1.2;}
	#modal-recommend-2 .modal-body dl.ranking > div.ranking-top3 > dt > span > span:nth-of-type(1) { display: none}
#modal-recommend-2 .modal-body dl.ranking > div.ranking-top3 > dt em { color: #00A5A8;}

	/* #modal-recommend-3 : チャットボット */
#modal-recommend-3 .modal-body dl.ranking > div.ranking-top3 > dt,
#modal-recommend-5 .modal-body dl.ranking > div.ranking-top3 > dt {
	margin: 2vw 0;
	font-size: 16px;
	font-weight:bold;
}
#modal-recommend-3 > .modal-body > div {
background-image: url("/images/chatbot/robot.webp");
background-position: top 28vw right -7vw;
background-repeat: no-repeat;
background-size: 25vw;
}
#modal-recommend-3 > .modal-body > div > img {
width: 70vw;
height: 60vw;
background-image: url("/images/chatbot/bubble_sp.webp");
background-position: center right;
background-repeat: no-repeat;
background-size: contain;
}
#modal-recommend-3 .modal-body div > ul {
margin-bottom:20px;
}


    /* #modal-recommend-99 : 広告 */ 
    /* div#modal-recommend[data-recommend-type="3047_factoring"] ：AGビジネスサポート*/

	div#modal-recommend-99[data-recommend-type="3047_factoring"] h4 {
		margin: 0 0;
		padding: 0.25em 0 0.5em 0;
		text-align: center;
		font-size: 20px;
		font-weight: bold;
		color: #000;
	}
	.modal.modal-recommend#modal-recommend-99[data-recommend-type="3047_factoring"] .modal-body p { font-weight: normal;}
	.modal.modal-recommend#modal-recommend-99[data-recommend-type="3047_factoring"] .modal-body em { color: #F26C27;}
	.modal.modal-recommend#modal-recommend-99[data-recommend-type="3047_factoring"] .modal-body p strong { /* 『AGビジネスサポートのファクタリング』 */
		display: block;
		font-size: 4.25vw;
		line-height: 1;
		background: linear-gradient(transparent 50%, #ff3 0%);
		width: 19.7em;
		margin: .5em 0;
		padding: .25em 0;
		color: #000;
	}
	.modal.modal-recommend#modal-recommend-99[data-recommend-type="3047_factoring"] .modal-body dl {
		display: flex;
		flex-wrap: wrap;
		justify-content : space-between;
		margin: 0 0 15px 0;
		padding: 0 0;
	}
	.modal.modal-recommend#modal-recommend-99[data-recommend-type="3047_factoring"] .modal-body dl > div {
		flex-basis: 100%;
		margin: 0 0 2vw 0;
		padding: 12px 12px;
		border-radius: 20px;
		border: 2px solid #325078;
	}
	.modal.modal-recommend#modal-recommend-99[data-recommend-type="3047_factoring"] .modal-body dt {
		padding: 0.15em 0.5em;
		text-align: center;
		font-size: 1.25rem;
		font-weight: bold;
		color: #095DB5;
		background-color: #E0EDFF;
	}
	.modal.modal-recommend#modal-recommend-99[data-recommend-type="3047_factoring"] .modal-body dd {
		padding: 0.5em 0 0 0;
	}
		/* こんな場面はありませんか？ */
	.modal.modal-recommend#modal-recommend-99[data-recommend-type="3047_factoring"] .modal-body > div > ul {
		margin: 0 0 .75em 0;
		padding: .5em 1em;
		background-color: #fff;
		color:#000
	}
	.modal.modal-recommend#modal-recommend-99[data-recommend-type="3047_factoring"] .modal-body > div > ul > li {
		list-style: none;
		padding: .4em 0 .4em 1.3em;
		background: url("/images/top/slider-icon_on.png") top .5em left no-repeat;
		background-size: 1em;
		line-height: 1;
	}
	/* AIGボタン */
	.modal.modal-recommend#modal-recommend-99[data-recommend-type="3047_factoring"] .modal-body div.button {
		margin: 1em 0 1.5em 0;
	}
	.modal.modal-recommend#modal-recommend-99[data-recommend-type="3047_factoring"] .modal-body div.button > a {
		padding: 13px 30px;
		min-width: 80vw;
		line-height: 1.3;
		border-radius: 4em;
		background: linear-gradient(to left, #c2182d 0%, #f26d27 100%);
	}
	
/****************************** ****************************** ******************************
	2025.02.12
	定期預金金利比較　#fixedDeposit
    外貨預金金利比較　#foreignCurrencyDeposit
****************************** ****************************** ********************************/
/******************************
    共通
********************************/
.modal.modal-recommend#modal-recommend-4 .modal-body > h4,
    .modal.modal-recommend#modal-recommend-5 .modal-body > h4,
	.modal.modal-recommend#modal-recommend-6 .modal-body > h4,
	.modal.modal-recommend#modal-recommend-7 .modal-body > h4 {
        font-size: 120%;
        font-weight: bold;
        color: #c2182d;}
.modal.modal-recommend#modal-recommend-4 .modal-body > p,
    .modal.modal-recommend#modal-recommend-5 .modal-body > p,
	.modal.modal-recommend#modal-recommend-6 .modal-body > p,
	.modal.modal-recommend#modal-recommend-7 .modal-body > p {
        font-weight: normal;}
.modal.modal-recommend#modal-recommend-4 .modal-body dl.items,
    .modal.modal-recommend#modal-recommend-5 .modal-body dl.items,
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items,
	.modal.modal-recommend#modal-recommend-7 .modal-body dl.items {/* 商品枠 */
        margin: 1em auto;}
.modal.modal-recommend#modal-recommend-4 .modal-body dl > div {
        background-color: transparent;}
.modal.modal-recommend#modal-recommend-4 .modal-body > dl > div > dt,
    .modal.modal-recommend#modal-recommend-5 .modal-body > dl > div > dt,
	.modal.modal-recommend#modal-recommend-6 .modal-body > dl > div > dt,
	.modal.modal-recommend#modal-recommend-7 .modal-body > dl > div > dt {/* 金融機関名 */
		position: relative;
        padding: 0.25em 0.25em;
        width: 100%;
        text-align: center;
        font-weight: bold;
        color: #fff;
        background-color: #c2182d;}
.modal.modal-recommend#modal-recommend-4 .modal-body dl.items > div > dd,
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div > dd { width: 100%;}
.modal.modal-recommend#modal-recommend-4 .modal-body dl.items a,
    .modal.modal-recommend#modal-recommend-5 .modal-body dl.items a,
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items a,
	.modal.modal-recommend#modal-recommend-7 .modal-body dl.items a {/* 大ボタン */
        display: block;
        width: fit-content;
        margin: 1.25em auto 1em auto;
        padding: 0.5em 1em;
        min-width: 14em;
        text-align: center;
        border-radius: 3px;
        background-color: #f26d27;
        color: #fff;
        font-weight: bold;
        text-decoration: none;}
	.modal.modal-recommend .modal-body dl.items a + span {/* 公式サイトで無料口座開設 */
		display: block !important;
		text-align: center !important;
		margin: -0.65em 0 1.5em 0 !important;
		font-size: var(--fs-s) !important;
		line-height: 1 !important;}
.modal.modal-recommend#modal-recommend-4 .modal-body ul.remarks,
    .modal.modal-recommend#modal-recommend-5 .modal-body ul.remarks,
	.modal.modal-recommend#modal-recommend-6 .modal-body ul.remarks,
	.modal.modal-recommend#modal-recommend-7 .modal-body ul.remarks {
		margin: 0 0 0 1em;
		padding: 0 0;
		text-indent: -1em;
		background-color: transparent;}
.modal.modal-recommend#modal-recommend-4 .modal-body ul.remarks li:before,
    .modal.modal-recommend#modal-recommend-5 .modal-body ul.remarks li:before,
	.modal.modal-recommend#modal-recommend-6 .modal-body ul.remarks li:before,
	.modal.modal-recommend#modal-recommend-7 .modal-body ul.remarks li:before { content: "※";}
.modal.modal-recommend#modal-recommend-4 .modal-body > dl > div > dd > dl span.small {
	font-size:12px;}

/******************************
    定期預金金利比較　#fixedDeposit
********************************/
.modal.modal-recommend#modal-recommend-4 {}
.modal.modal-recommend#modal-recommend-4 .modal-body dl.items {/* レイアウト */
    display: flex;
    flex-direction: column;}
.modal.modal-recommend#modal-recommend-4 .modal-body dl.items > div,
    .modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div {
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
    margin: 10px 0;
    padding: 0 0;
    background-color: #fff;
    border: 1px solid #ccc;}
.modal.modal-recommend#modal-recommend-4 .modal-body > dl.items > div dd dt {/* スペック表内 大見出し */
        font-weight: bold;
        color: #444;}
.modal.modal-recommend#modal-recommend-4 .modal-body dl.items > div > dd > dl > div {/* スペック表枠 */
    margin: 0 0;
    border: none;
    border-radius: 0;}
.modal.modal-recommend#modal-recommend-4 .modal-body dl.items > div > dd > dl > div > dd > dl {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;}
.modal.modal-recommend#modal-recommend-4 .modal-body > dl.items > div dd dd dt {/* スペック表内見出し */
        color: #000;}
.modal.modal-recommend#modal-recommend-4 .modal-body > dl.items > div > dd dd dl div {/* スペック表：行 */
    display: flex;
    margin: 0 0;
    padding: 0 0;
    line-height: 1.6;
    border:none;
    border-radius: 0 0;
    border-bottom: 1px dashed #ccc;}
    .modal.modal-recommend#modal-recommend-4 .modal-body > dl.items > div > dd dd dl div:last-child {
        border:none;}
.modal.modal-recommend#modal-recommend-4 .modal-body > dl.items > div > dd dd dl div dt {/* 項目名 */
    width: 7em;
    font-weight: normal;
    text-align: center;}
.modal.modal-recommend#modal-recommend-4 .modal-body > dl.items > div > dd dd dl div dd {/* data */
    width: calc(100% - 7em);
    text-align: center;}
.modal.modal-recommend#modal-recommend-4 .modal-body dl.items > div > dd > dl > div > dd {
    line-height: 1.2;}

/******************************
    外貨預金金利比較　#foreignCurrencyDeposit
    円預金より高金利でおすすめ！
********************************/
.modal.modal-recommend#modal-recommend-5 {}
.modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd {
    margin: 0 auto;
    width:90%;
    overflow-x: auto;}
    .modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd:nth-of-type(2) { margin-bottom: 1vw;}

.modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd table {/* スペック表 */
    margin: 1em auto 0.25em auto;
    padding: 0 0;
    width: 30em;
    border: 1px solid #aaa;
}
.modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd table th,
    .modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd table td {/* スペック表 */
        text-align: center;
        vertical-align: middle;
        border-top: 1px solid rgba(128,128,128,0.25);
        border-right: 1px solid rgba(128,128,128,0.25);
    }
.modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd table thead th {
    color: #fff;
    font-weight: bold;
    line-height: 2;
    background-color: #00a5a8;
    border-right: 1px solid rgba(256,256,256,0.25);
}
    .modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd table thead th:last-child {
        border-right: none;
    }
.modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd table sup { display: none;}
    /* その他の主な通貨 */
.modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd > span,
    .modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd > ul,
    .modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd > ul li {
        display: inline-block;
        margin-right: .5em;
        font-size: 14px;
    }
    .modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd > span {
        display: block;
        color: #000;}

/* 国旗 */
.modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd table tbody tr td:first-child {
    padding: 9vw 0 1vw 0;
    width: 15vw;
    line-height: 1;
    font-size: 13px;
    vertical-align: bottom !important;
    background-position: top 1vw center;
    background-repeat: no-repeat;
    background-size: auto 7vw;
}
.modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div > dd > ul li {
    margin-right: 1em;
    padding-left: 1.75em;
    white-space: nowrap;
    line-height: 1;
    background-position: center left;
    background-repeat: no-repeat;
    background-size: contain;}
dl.items > div > dd > ul li.aud,
    tr.aud td:first-child { background-image: url("/images/special/bankingServices/foreignCurrencyDeposit/flag-aud.webp")}
dl.items > div > dd > ul li.cad,
    tr.cad td:first-child { background-image: url("/images/special/bankingServices/foreignCurrencyDeposit/flag-cad.webp")}
dl.items > div > dd > ul li.chf,
    tr.chf td:first-child { background-image: url("/images/special/bankingServices/foreignCurrencyDeposit/flag-chf.webp")}
dl.items > div > dd > ul li.eur,
    tr.eur td:first-child { background-image: url("/images/special/bankingServices/foreignCurrencyDeposit/flag-eur.webp")}
dl.items > div > dd > ul li.gbp,
    tr.gbp td:first-child { background-image: url("/images/special/bankingServices/foreignCurrencyDeposit/flag-gbp.webp")}
dl.items > div > dd > ul li.usd,
    tr.usd td:first-child { background-image: url("/images/special/bankingServices/foreignCurrencyDeposit/flag-usd.webp")}
dl.items > div > dd > ul li.nzd,
    tr.nzd td:first-child { background-image: url("/images/special/bankingServices/foreignCurrencyDeposit/flag-nzd.webp")}

/****************************** ****************************** ******************************
    2025.05.19 普通預金金利比較　#deposit
****************************** ****************************** ********************************/
.modal.modal-recommend#modal-recommend-6 {}
.modal.modal-recommend#modal-recommend-6 .modal-body dl.items {/* レイアウト */
    display: flex;
    flex-direction: column;}
.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div,
    .modal.modal-recommend#modal-recommend-5 .modal-body dl.items > div {
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
    margin: 10px 0;
    padding: 0 0;
    background-color: #fff;
    border: 1px solid #ccc;}
.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div > dd > dl > div {
	border: none;
	border-radius:0;}
.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div > dd > dl > div:nth-of-type(1) {/* 金利 */
    margin: 6vw auto 0 auto;
	padding: 0 0;
    width: 76vw;
    border-top: 1px solid #ccc;}
.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div > dd > dl > div:nth-of-type(1) > dt {/* 金利（年率） */
    padding: 1vw 2vw;
	text-align: center;
	background-color: #eee;
    border-bottom: 1px solid #ccc;
    color: #000;}
.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div > dd > dl > div:nth-of-type(1) > dd {/* 金利数値 */
    padding: 1vw 2vw;
	text-align: center;;
    border-bottom: 1px solid #ddd;
	font-weight: bold;}
.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div > dd > dl > div:nth-of-type(2) { 
	margin: 4vw 0 0 0;
	padding: 0 3vw 2vw 3vw;}
.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div > dd > dl > div:nth-of-type(2) > dd {/* PRテキスト */
    line-height: 1.2;}
.modal.modal-recommend#modal-recommend-6 .modal-body dl.items a {}
.modal.modal-recommend#modal-recommend-6 .modal-body > dl > div > dt::before {/* ランキングアイコン背景色 */
	content:"";
	position: absolute;
	z-index: 1;
	display: block;
	margin-right: 0.3em;
	width: 3.5em;
	height: 3.5em;
	top: -1em;
	left: -0.25em;
	border-width: 4px;
	border-style: solid;
	border-color: #666;
	border-radius: 2em;
	background-color: #999;
	box-shadow: 1px 1px 6px rgba(0,0,0,0.5);}
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div.rank-1 > dt::before { border-color: #B78E13; background: linear-gradient(45deg, #B67B03 0%, #DAAF08 25%, #FEE9A0 60%, #DAAF08 75%, #B67B03 95%);}
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div.rank-2 > dt::before { border-color: #8F8F8F; background: linear-gradient(45deg, #757575 0%, #9E9E9E 25%, #E8E8E8 60%, #9E9E9E 75%, #757575 95%);}
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div.rank-3 > dt::before { border-color: #562917; background: linear-gradient(45deg, #260202 0%, #7c4828 25%, #fec4a0 60%, #7c4828 75%, #260202 95%);}
.modal.modal-recommend#modal-recommend-6 .modal-body > dl > div > dt::after {/* ランキングアイコン背景色 */
	content:"";
	position: absolute;
	z-index: 2;
	display: block;
	margin-right: 0.3em;
	width: 3.5em;
	height: 3.5em;
	top: -1em;
	left: -0.25em;
	border-radius: 2em;
    border: 4px solid transparent;
	background-position: center center;
	background-size: 2.6em 2em;
	background-repeat: no-repeat;}
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div.rank-1 > dt::after { background-image: url("/images/special/label-rank1-w.webp")}
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div.rank-2 > dt::after { background-image: url("/images/special/label-rank2-w.webp")}
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div.rank-3 > dt::after { background-image: url("/images/special/label-rank3-w.webp")}
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div.rank-4 > dt::after { background-image: url("/images/special/label-rank4-w.webp")}
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div.rank-5 > dt::after { background-image: url("/images/special/label-rank5-w.webp")}
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div.rank-6 > dt::after { background-image: url("/images/special/label-rank6-w.webp")}
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div.rank-7 > dt::after { background-image: url("/images/special/label-rank7-w.webp")}
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div.rank-8 > dt::after { background-image: url("/images/special/label-rank8-w.webp")}
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div.rank-9 > dt::after { background-image: url("/images/special/label-rank9-w.webp")}
	.modal.modal-recommend#modal-recommend-6 .modal-body dl.items > div.rank-10 > dt::after { background-image: url("/images/special/label-rank10-w.webp")}
/******************************
    2025.07.02 仮想通貨　#virtualCurrency
********************************/
.modal.modal-recommend#modal-recommend-7 .modal-body dl.items {/* レイアウト */
    display: flex;
    flex-direction: column;}
.modal.modal-recommend#modal-recommend-7 .modal-body dl.items > div > dd:nth-of-type(1) {/* PRテキスト */
    padding: .5em 0 0 0;}


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