@charset "UTF-8";

/* デザイン（スマホ） */
@media screen and ( max-width: 767px ){
	.main_text{
		width : auto;
		margin : 20px 15px;
	}
	
/*共通その他*/
.gaibu_link_text{
	font-size : 15px;
	text-align : center;
	color : #333;
	margin-bottom : 10px;
}
}
/*最新タブレット用css*/
@media screen and (min-width:768px) and ( max-width:1023px) {
	.main_text{
		width : auto;
		margin : 20px 15px;
	}
}
/* スマートフォン用のスタイル */
@media only screen and (max-width: 768px) {
.customers_area{
 width : auto;
 padding : 15px;
	margin : -10px 10px 0px 10px;
	border : 1px solid #555151;
	border-radius : 10px;	
}
}


/*手数料についてのお約束*/
.tesuuryou-yakusoku {
	width : 1040px;
    margin: 10px auto;
    background: #ffffff;
    border: 1px solid #555151;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22)!important;
}
.tesuuryou-yakusoku .box-title {
    font-size: 1.2em;
    background: #6ac65c;
    padding: 7px 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.tesuuryou-yakusoku-in {
    padding: 20px;
    overflow: hidden;
    position: relative;
}
.tesuuryou-yakusoku-in.collapsed {
    max-height: none;
}

.tesuuryou-yakusoku-in ul {
    list-style: none; /* デフォルトのリストマークを削除 */
    padding: 0;
    margin: 0;
}

.tesuuryou-yakusoku-in ul li {
    position: relative;
    padding-left: 20px; /* マークの位置分だけインデント */
    text-indent: 0; /* 折り返し位置を調整 */
    line-height: 1.5em; /* 行の高さを設定（調整可） */
}

.tesuuryou-yakusoku-in ul li::before {
    content: "▶"; /* リストマーク */
    position: absolute;
    left: 0;
    top: 0; /* リストマークの位置調整 */
    font-size: 1em; /* マークのサイズを調整 */
    color: #333; /* マークの色を設定（任意） */
}

.expand-button {
    text-align: center;
    margin-top: 10px;
}
.expand-button button {
    background: #333;
    color: #FFF;
    border: none;
    padding: 5px 20px;
    cursor: pointer;
	height : 50px;
	margin : 20px auto;
}
@media (max-width:768px) {
.tesuuryou-yakusoku {
	width : auto;
    margin: 5px 20px;
	font-size : 14px;
	line-height : 24px;
}
.tesuuryou-yakusoku .box-title {
    font-size: 1em;
}
}

/*なぜ手数料無料でキャッシュバックが…*/
	.naze_box{
		width : 1080px;
		margin : 10px auto;
		display : flex;
		justify-content : space-between;
		flex-wrap : wrap;
	}
	.naze-no{
		float : left;
		width : 20%;
		padding : 10px 0px;
		text-align : center;
		font-size : 1.7em;
		background : #f3720a;
		color : #ffffff;
		margin-bottom : 15px;
		padding-top : 6%;
		font-weight : bold;
	}
	.naze-con{
		float : left;
		width : 80%;
		padding : 20px 10px;
		margin-bottom : 15px;
	}
	.naze-title{
		font-size : 1.6em;
		font-weight : 600;
		margin-bottom : 15px;
      overflow-y: hidden!important; /* 追加 */
	}
	.naze-text{
		font-size : 1.1em;
	}
	.tsumari_font{
		font-size : 1.8em;
		line-height : 1.5em;
		text-align : center;
		font-weight : bold;
	}

@media (max-width:768px) {
	.naze_box{
		width : auto;
		margin : 10px auto;

	}
	.naze-no{
		float : none;
		width : auto;
		padding : 10px 0px;
		text-align : center;
		font-size : 1.5em;
		background : #f3720a;
		color : #ffffff;
		margin : 15px;
		padding-top : 3%;
		font-weight : bold;
	}
	.naze-con{
		float : none;
		width : auto;
		padding : 10px 15px;
		margin-bottom : 15px;
	}
	.naze-title{
		font-size : 1.4em;
		font-weight : 600;
		margin-bottom : 15px;
	}
	.naze-text{
		font-size : 1.0em;
	}
	.tsumari_font{
		font-size : 1.3em;
		line-height : 1.5em;
		text-align : center;
		font-weight : bold;
	}
/*５つの特徴*/
#tokutyou-wrapper{
	max-width : 1280px;
	width : auto;
	margin : 0px auto;
}
}
.line-toggle-button {
    background-color: green!important;
	margin : 0 auto;
	width : 280px;
	height : 50px;
    color: white;
    padding: 10px 20px;
    border: none;
    cursor: pointer;
    font-size: 16px;
    border-radius: 5px;
    transition: background-color 0.3s ease;
}

.line-toggle-button:hover {
    background-color: darkgreen;
}
}
/*投稿レイアウト*/
/* 記事一覧の全体ラップ */
.article-list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px; /* 記事間の間隔 */
  justify-content: space-between;
}

/* 各記事の枠組み */
.article-item {
  border: 1px solid #ddd;
  padding: 15px;
  width: calc(33.333% - 20px); /* 3列表示 */
  box-sizing: border-box;
  background-color: #fff;
  border-radius: 5px;
  overflow: hidden;
}

/* アイキャッチ画像のスタイル */
.article-thumbnail img {
  width: 100%;
  height: auto;
  display: block;
  margin-bottom: 10px;
}

/* タイトルのスタイル */
.article-title {
  font-size: 1.2em;
  margin: 10px 0;
  height: 3em; /* 2行分の高さを確保 */
  line-height: 1.5em;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2; /* 2行に制限 */
  -webkit-box-orient: vertical;
}

/* メタ情報のスタイル */
.article-meta {
  font-size: 0.9em;
  color: #777;
}

/* レスポンシブ対応：画面が狭い場合に1列表示 */
@media screen and (max-width: 768px) {
  .article-item {
    width: 100%;
  }
}
.center {
  text-align: center;
}
.center img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}


.no-bukken-link {
    display: inline-block;
    text-align: center;
}

.no-bukken-link a {
    display: inline-block;
    padding: 10px 15px;
    background-color: #f3720a;
    color: white;
    text-decoration: none;
    border-radius: 5px;
}

.no-bukken-link i {
    vertical-align: middle;
    margin-left: 5px;
}

/* スマホ用 */
@media screen and (max-width: 768px) {
    .no-bukken-link a {
        width: auto;
        padding: 10px 15px;
    }
}

/*コラム「続きを読む」設定*/
/* ボタンのスタイル */
#column-toggle-button {
  display: block; /* ボタンをブロック化して中央揃え */
  background-color: #333;
  color: white;
  padding: 10px 20px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  margin: 20px auto; /* 自動マージンで中央揃え */
  font-size: 16px;
  width : 120px;
  height: 60px;
  text-align: center; /* テキストを中央揃え */
}

/* ボタンのホバー時 */
#column-toggle-button:hover {
  background-color: #0056b3;
}

/* 表示するコンテンツのスタイル */
#column-toggle-content {
  margin-top: 20px;
}

/*ぼよーんと動かすcss*/
/* -- img.bounce -------------------------------------------------------------------------------------------- */

img.bounce {
	-webkit-animation: bounce 1.8s linear infinite;
	animation: bounce 1.8s linear infinite;
}

@-webkit-keyframes bounce {
	0% {
		-webkit-transform: scale( 1 );
		transform: scale( 1 );
	}
	25% {
		-webkit-transform: scale( 1.05 );
		transform: scale( 1.05 );
	}
	40% {
		-webkit-transform: scale( 0.85 );
		transform: scale( 0.85 );
	}
	50% {
		-webkit-transform: scale( 1.05 );
		transform: scale( 1.05 );
	}
	60% {
		-webkit-transform: scale( 0.93 );
		transform: scale( 0.93 );
	}
	70% {
		-webkit-transform: scale( 1.03 );
		transform: scale( 1.03 );
	}
	80% {
		-webkit-transform: scale( 0.95 );
		transform: scale( 0.95 );
	}
	90% {
		-webkit-transform: scale( 1.01 );
		transform: scale( 1.01 );
	}
	100% {
		-webkit-transform: scale( 1 );
		transform: scale( 1 );
	}
}

@keyframes bounce {
	0% {
		-webkit-transform: scale( 1 );
		transform: scale( 1 );
	}
	25% {
		-webkit-transform: scale( 1.05 );
		transform: scale( 1.05 );
	}
	40% {
		-webkit-transform: scale( 0.85 );
		transform: scale( 0.85 );
	}
	50% {
		-webkit-transform: scale( 1.05 );
		transform: scale( 1.05 );
	}
	60% {
		-webkit-transform: scale( 0.93 );
		transform: scale( 0.93 );
	}
	70% {
		-webkit-transform: scale( 1.03 );
		transform: scale( 1.03 );
	}
	80% {
		-webkit-transform: scale( 0.95 );
		transform: scale( 0.95 );
	}
	90% {
		-webkit-transform: scale( 1.01 );
		transform: scale( 1.01 );
	}
	100% {
		-webkit-transform: scale( 1 );
		transform: scale( 1 );
	}
}


/* -- responsive ----------------------------------------------------------------------------------------------------------------- */

/* 640pixel start */
@media screen and ( max-width: 640px ){

img.bounce {
	max-width: 100%;
}

}
/* 640pixel end */

/*1209追加*/
.kinrihikaku-ttl {
    border: 2px solid #333;
    padding: 8px;
    text-align: center;
    font-size: 20px;
    font-weight : 600;
    margin-bottom: 15px
}

#kuchikomi {
    margin: 0px;
    padding: 0;
    position: relative;
}

/*20241222追加*/
.slick-prev:before,.slick-next:before {
    font-family: 'slick';
    font-size: 20px;
    color: #678291!important;
    opacity: 1;
    content: "←"
}
.slick-prev:before,.slick-next:before {
    font-family: 'slick';
    font-size: 25px!important;
    color: #f4f4f4;
    opacity: .75;
    content: "←"
}
.column-ttl{
	background : #6ac65c;
	color : #fff;
	font-size : 20px;
	text-align : center;
	padding : 15px 0px;
	font-weight : 600;
}

/*トップページお客様の声スライダー部分のタイトル*/
.top-voice-hukidashi {
    margin: 0 auto;
    padding: 5px 20px;
    color: #fff;
    font-weight: 600;
    text-align: center;
    font-size: 16px;
    background: #0290be;
    border-radius: 15px;
    width: 320px
}

.triangle {
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 15px solid #0290be;
    margin: 0 auto
}

.section-voice-ttl-sub {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    line-height: 36px;
    color: #0290be;
    margin-top : 10px;
    margin-bottom : 25px;
    overflow : hidden;
}

/*フッター部分のLINEボタン*/
.line-link-button {
    width : 280px;
    margin : 10px auto;
    padding: 10px 20px;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    background-color: #00c300!important;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    text-align: center;
    overflow : hidden;
}

.line-link-button:hover {
    background-color: #009e00
}

.line-link-icon {
    width: 20px;
    height: 20px;
    margin-top : 6px;
}

/*選ばれる理由*/
.reason-bg {
    background: #fcf9f5;
    padding: 30px 0;
    background-image: url('https://berqwp-cdn.sfo3.cdn.digitaloceanspaces.com/cache/cash-back.lifebizpartners.co.jp//wp-content/themes/kmi-theme/new-img/reason_bg-pc.png');
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: contain
}

.hr-tensen {
    display : none;
}

.reason-in {
    max-width: 700px;
    width: auto;
    margin: 10px auto
}

.reason-no {
    float: left;
    width: 20%;
    text-align: center;
    height: 120px;
    line-height: 120px;
    overflow: hidden
}

.reason-text {
    font-size: 24px;
    line-height: 34px;
    font-weight: 500;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: start;
    padding-top: 0
}

@media screen and (max-width: 740px) {
    .reason-bg {
        background:#fcf9f5;
        padding: 30px 0;
        background-image: url('');
        background-repeat: no-repeat;
        background-position: bottom center;
        background-size: contain
    }

    .hr-tensen {
        display: none
    }

    .reason-in {
        width: auto;
        margin: 10px 15px
    }

    .reason-no {
        float: none;
        width: 25%;
        margin: 0 auto;
        text-align: center;
        height: auto;
        line-height: 0;
        overflow: hidden
    }

.reason-text {
    font-size: 20px;
    line-height: 30px;
    font-weight: 600;
    height: auto; /* 固定高さを解除 */
    min-height: 120px; /* 最小高さを指定 */
    display: flex;
    align-items: center; /* 縦方向の中央揃え */
    justify-content: center; /* 水平方向の中央揃え */
    text-align: center; /* テキストの中央揃え */
    background : #fff;
    border-radius : 10px;
    margin-top : -50px;
    margin-bottom : 20px;
    padding : 50px 15px  15px 15px;
    border : 1px solid #333;
}
}
/*選ばれる理由のタイトル文字サイズ*/
@media screen and (max-width: 740px) {
h4 {
        font-size: 24px;
        font-weight: 600;
        line-height: 34px;
        margin: 10px 0 20px 0px;
        overflow: hidden;
        text-align: center
    }
}

/*スピード査定上部変更(1227)*/
.portal-new-box {
    width: 760px;
    margin: 10px auto;
    border: 3px solid #6ac65c;
    padding: 25px
}

.portal-new-box {
    max-width: 780px;
	width : auto;
    margin: 10px auto;
    border: 3px solid #6ac65c;
    padding: 0px
}

.portal-area-ttl {
    background: #6ac65c;
    color: #fff;
    text-align: center;
    font-weight: 600;
    padding : 10px
}
.portal-bunner-area {
    width: 90%;
    margin: 0 auto 15px
}

.portal-bunner-area li {
    float: left;
    width: 33%;
    list-style: none;
    text-align: center;
    padding : 0px 3px;
}

.gaibu-font {
    text-align: center;
    font-size: 14px;
    margin-top: -15px;
    margin-bottom: 15px
}

.green-sankaku {
    width: 0;
    height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 20px solid #6ac65c;
    margin : 10px auto;
}
.portal-text{
    padding : 15px;
}
.no-bukken-link a {
    display: inline-block;
    padding: 10px;
    background-color: #f3720a;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
    font-size : 16px;
}

@media screen and (max-width: 740px) {
.portal-new-box {
    width: auto;
    margin: 10px 15px;
    border: 3px solid #6ac65c;
    padding: 0px
}
}



/*コラム内の表*/
.c-table table {
  width: 100%; /* テーブル全体の幅を親要素に合わせる */
  table-layout: fixed; /* 列幅を固定 */
  border-collapse: collapse; /* セル間の隙間を除去 */
}

.c-table th,
.c-table td {
  text-align: center; /* セル内テキストを中央揃え */
  padding: 8px; /* セル内の余白を設定 */
  border: 1px solid #000; /* 境界線 */
}

.cv3-text{
	text-align : center;
	margin : 20px;
	font-weight : 600;
}
.cv-area-2 {
    width: 100%;
    padding: 0;
    text-align: center;
	margin-top : -20px
}
	}

.cus_tantou_coment{
	font-size : 13px;
	line-height : 18px;
overflow: hidden!important;
	padding : 5px;
}
}

/*スタッフスライダーを一覧に変更*/
/* スタッフリストの親要素 */
.top-staff-area{
	width : 1080px;
	margin : 10px auto;
}
.staff-list {
	max-width : 1080px;
    list-style: none; /* リストマーカーを削除 */
    padding: 10px;
    margin: 10px auto; /* 中央揃え */
    overflow: hidden; /* floatの子要素をクリア */
}

/* スタッフカード */
.box-staff {
    float: left; /* 横並びにする */
    width: 33.3333%; /* PCで3列にする */
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 15px;
    text-align: center;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    box-sizing: border-box; /* パディングを幅に含める */
    margin-bottom: 20px; /* 下の余白を調整 */
}

/* 画像スタイル */
.t-v-img img {
    max-width: 100%;
    height: auto;
    border-radius: 50%; /* 画像を丸くする */
}

/* テキスト情報 */
.staff-jyouhou {
    margin-top: 10px;
}

/* 詳細ボタン */
.t-s-btn a {
    display: inline-block;
    margin-top: 10px;
    padding: 10px 15px;
    background: #0073e6;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
}
.box-staff {
    float: left;
    width: 32%;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 15px;
    text-align: center;
    box-shadow: 0 2px 5px rgba(0,0,0,.1);
    box-sizing: border-box;
    margin: 10px 5px
}
.t-s-btn {
    width: 100%;
    background : none!important;
    text-align: center;
    padding: 8px 0;
    margin-top: 10px
}

.t-s-btn a {
    text-decoration: none;
    color: #fff
}
    .t-v-img {
        float: none;
        width: 50%;
        margin : 0 auto;
        text-align: center;
		padding : 0;
    }
    .section-ttl-sub {
        margin-top: 20px;
        font-size: 16px;
        text-align: center;
        margin-bottom: 30px;
        font-weight : 600;
    }

.t-s-btn a {
    display: inline-block;
    margin-top: 10px;
    padding: 5px 15px;
    background: #005bcc;
    color: #fff;
    text-decoration: none;
    border-radius: 5px
}
    .profile-section-ttl {
        font-size: 22px;
        line-height: 32px;
        text-align: center;
        font-weight: 600;
        margin: 0 20px;
        overflow: hidden
    }
@media (max-width: 768px) {
    .profile-section-ttl {
        font-size: 22px;
        line-height: 26px;
        text-align: center;
        font-weight: 600;
        margin: 0 20px;
        overflow: hidden
    }
    .top-staff-area {
        width: auto;
        margin: 0;
    }

    .staff-list {
        width: 100%;
        list-style: none;
        padding: 0;
        margin: 0 auto;
        overflow: hidden;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; /* 均等配置 */
    }

    .box-staff {
        width: calc(50% - 10px); /* 2列表示、余白を確保 */
        font-size: 13px;
        margin: 5px; /* 各要素の間隔を確保 */
        float: none; /* floatを解除 */
        display: flex;
        flex-direction: column;
        align-items: center; /* 中央揃え */
    }

    .t-v-img {
        width: 80%; /* 画像サイズを適切に調整 */
        margin: 0 auto;
        text-align: center;
        padding: 0px !important;
    }
}


@media only screen and (min-width:640px) {
.syoukai-kanou-font {
    font-size: 24px;
    font-weight: 600;
    color: #f4460a;
    text-align: center;
    border-bottom: 2px solid #f4460a;
    padding-bottom: 3px;
    margin-bottom : 30px;
    margin-top : 40px;
}
}
@media only screen and (max-width: 640px) {
    .syoukai-kanou-font {
        font-size:22px;
        font-weight: 600;
        color: #f4460a;
        text-align: center;
        border-bottom: 2px solid #f4460a;
        line-height: 30px;
        margin-bottom: 20px;
        margin-top: 0;
        overflow : hidden;
    }

}
.kanzentaiou-font {
    max-width : 280px;
    width : auto;
    margin : 0 auto;
    font-size: 18px;
    font-weight: 600;
    border: 2px solid #6ac65c;
    padding: 7px 10px;
    text-align: center;
    margin-bottom: 15px;
    border-radius: 10px
}

.kanzentaiou-font span {
    color:#6ac65c;
}




/*悩みエリア（開きなし）*/
.muryou-font {
    font-size: 22px;
	line-height : auto;
    color: #f4460a;
    font-weight: 700;
    margin: 0 0 15px;
    overflow: hidden;
    text-align: center
}

.kon-ttl {
    font-size: 20px;
    color: #0a236a;
    padding: 8px 8px 3px 8px;
	background : #e1f4fc;
    max-width: 380px;
    margin: 20px auto;
    font-weight: 600;
    text-align: center
}

.green-ttl {
    font-size: 20px;
    color: #228e3e;
	background : #f3fce7;
    padding: 8px;
    max-width: 380px;
    margin: 10px auto;
    font-weight: 600;
    text-align: center
}
.font-coment {
    font-size: 12px;
    text-align: center;
    margin-bottom : 20px;
}

.font-tesuryou {
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    line-height: 150%;
	color : #1c4a86!important;
}
.font-tesuryou-kon {
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    line-height: 100%;
	color : #223c5b!important;
}
.font-tesuryou-suji{
	font-size : 26px;
	color : #333!important;
}
.font-tesuryou-zero {
    font-size: 32px;
    font-weight: 700;
    text-align: center;
    line-height: 150%;
    overflow : hidden;
	padding : 5px 0px;
}
.font-tesuryou-red {
    font-size: 38px!important;
    font-weight: 700;
    text-align: center;
    line-height: 170%;
    color: #cc0000!important;
}
.font18 {
    font-size: 18px
}
.font-orange{
	color : #ff5a1f!important;
}

.sankaku-kon {
    width: 0;
    height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 20px solid #0a236a;
    margin: 15px auto
}
.sankaku-green {
    width: 0;
    height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 20px solid #33a622;
    margin: 15px auto
}
.loan-support {
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    margin: 0px 0 20px 0;
    overflow: hidden
}
.loan-support-box {
    overflow: hidden;
    color: #c00;
    font-size: 110%;
    font-weight: 600;
    line-height: 1.6
}

.loan-support-box i {
    vertical-align: middle;
    margin-right: 8px;
    font-size: 1.2em;
    overflow: hidden;  /* スクロールバーを無効化 */
    display: inline-block;  /* overflowが有効になるようにブロック化 */
}

/*一番下のコラム埋め込み関連*/
/* 続きを読むボタン */
.column-read-more-btn button, 
.column-close-btn button {
    display: block;
    width: 100px;
	height : 30px;
    padding: 0px 10px;
    font-size: 13px;
    color: #fff;
    background-color: #333!important;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    text-align: center;
    transition: background-color 0.3s;
    margin: 15px auto;
}

.column-read-more-btn button:hover, 
.column-close-btn button:hover {
    background-color: #005bb5;
}

/* 非表示のコンテンツ */
.column-hidden-content {
    border-radius: 10px;
    padding: 0px;
    margin: 0;
    display: none
}

.column-hidden-content {
    border-radius: 10px;
    padding: 0px;
    margin: 0;
    display: none;
    text-align: left
}
.column-hidden-content, .column-kiji-box {
    font-weight: normal!important;
}

    .column-kiji-box h2 {
        font-size: 20px;
        font-weight:600;
        margin-bottom : 20px;
		overflow : hidden;
    }
.space-s{
	height : 12px;
}
.space-l{
	height : 40px;
}

/*追加*/
/* ✅ 全体の設定 */
.custom-tekiyou-jyouken {
    max-width: 840px;
    margin: 10px auto;
    background: #fff;
    border: 1px solid #999999;
    box-shadow: 0 2px 4px rgba(0,0,0,.22) !important;
    border-radius: 10px;
    overflow: hidden;
    box-sizing: border-box;
    position: relative;
}

.custom-box-title {
    font-size: 1.2em;
    background: #777777;
    padding: 10px;
    text-align: center;
    color: #fff;
    font-weight: 700;
    letter-spacing: .05em
}

.custom-tekiyou-jyouken-preview {
    display: block;
        line-height: 1.6;
    margin-bottom: 10px;
    padding: 20px 20px 0 20px
}

.custom-tekiyou-jyouken-full {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    transition: all .6s ease;
    padding: 0 20px 0;
    box-sizing: border-box
}

.custom-tekiyou-jyouken-full.visible {
    max-height: 1000px;
    opacity: 1;
    visibility: visible;
    padding: 10px 20px 30px
}

.custom-expand-button {
    text-align: center;
    margin-top: 10px
}

.custom-expand-button button {
    display: inline-block !important;
    background: #333 !important;
    color: #fff !important;
    border: none !important;
    padding: 0px 20px !important;
    cursor: pointer !important;
    height: 42px !important;
    line-height: 42px !important;
    text-align: center !important;
    margin: 20px auto !important;
    font-size: 14px !important;
    border-radius: 5px !important;
    transition: background .3s ease !important;
    width: 120px !important;
    min-width: 120px !important;
    max-width: 120px !important;
    box-shadow: 0 2px 4px rgba(0,0,0,.2) !important;
    text-decoration: none !important;
    border: 1px solid #333 !important;
    color: #fff !important;
    font-family: Arial,sans-serif !important;
    overflow : hidden;
}

.custom-expand-button button:hover {
    background: #555 !important;
    border-color: #555 !important
}

@media (max-width: 768px) {
    .custom-tekiyou-jyouken {
        width:auto;
        margin: 12px 0;
        font-size: 16px;
        line-height: 26px
    }

    .custom-box-title {
        font-size: 1em
    }

    .custom-expand-button button {
        width: 40% !important;
        max-width: 300px !important;
		background : #555555!important;
		border : 1px solid #555555!important;
    }
}

@media screen and (min-width: 769px) {
  #custom-tekiyou-content {
    display: block !important;
    max-height: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    padding: 10px 20px 30px !important;
  }

  .custom-expand-button {
    display: none !important;
  }
}


/*画像の回り込み*/
.image_area {
width: 360px;
display: block;
vertical-align: bottom;
}
@media only screen and (min-width: 737px){
.image_right {
float: right;
margin: 0 0 21px 25px;
}
.image_left {
float: left;
margin: 0 25px 30px 0;
}
}
@media only screen and (max-width: 736px){
.image_right {
float: none!important;
	width : 85%;
	text-align : center!important;
margin: 25px auto 0px!important;
}
.image_left {
float: none;
margin: 25px auto;
}
}

/*Kattoku住設あんしんサポート*/
.anshin-support-main{
	width : 880px;
	margin : 20px auto;
}
.anshin-h2{
	font-size : 24px;
	font-weight : 600;
	margin-bottom : 20px;
	overflow : hidden;
}
.anshin-h3{
	font-size : 20px;
	font-weight : 600;
	margin-bottom : 30px;
	overflow : hidden;
}
.anshin-h3 span{
	color : #cc0000;
}
.font-26-red{
	font-size : 30px;
	color : #cc0000;
}
.anshin-text{
	width : auto;
	overflow : hidden;
}
.anshin-gozonji-box{
	width : auto;
	border : 1px solid #333;
	border-radius : 10px;
	padding : 20px;
}
.hosyoukikan{
	font-size : 20px;
	font-weight : 600;
	background : blue;
	color : #fff;
	padding : 2px 10px;
	margin-right : 15px;
}
.t-v-ttl-top{
	color : #cc0000;
	font-size : 22px!important;
	text-align : center;
	font-weight : 600;
    height : 32px!important;
	line-height : 32px!important;
	overflow : hidden;
}
/*悩み部分作り替え0319*/
.onayami_area-new{
	background : #fff;
	padding : 0px;
}
.nayami-0319-box{
	max-width : 840px;
	margin : 0 auto;
	padding : 30px 8px 0px 8px;
}
.kon-ttl {
    font-size: 20px;
    color: #0a236a;
    padding: 8px;
	background : #ffffff;
	border : 2px solid #0a236a;
    max-width: 320px;
    margin: 20px auto 10px;
    font-weight: 600;
    text-align: center
}

.green-ttl {
    font-size: 24px;
    color: #333;
	background : #fce947;
    padding: 8px;
    max-width: 320px;
    margin: 10px auto;
    font-weight: 600;
    text-align: center;
	border : 2px solid #333
}
.details-box-1-in-new {
	width : auto;
    padding: 20px 10px 0px 10px;
    margin: 10px 0px 0px 0px;
	text-align : left;
}
.kousyou dd {
	background : none;
    padding: 5px;
    margin: 0;
    width : 78%;
    font-weight : 600;
}
.kounyu-flow{
	background : none;
	padding : 0px;
}
.kousyou dt {
float : left;
    background-color: #6ac65d;
    color : #fff;
    border : 1px solid #6ac65d;
    margin-right : 8px;
    font-weight: 700;
    padding: 5px;
    width : 18%;
	font-size : 16px;
}

/*LINEで送るだけページ*/
.line_yakusoku_box{
 width : auto;
 margin : 30px auto 10px;
 background-color : #ffffff;
 padding : 0px 0px 0px 0px;
border : 2px solid #56aa47;
}
.line_yakusoku_box_in{
 padding : 0px 20px 20px 20px;
 text-align : left;
}
.line_yakusoku_title{
 background-color : #56aa47;
 color : #ffffff;
 padding : 10px 0px;
 text-align : center;
 font-size : 20px;
 margin-bottom : 15px;
}
	.tuika_erabu_bunner{
background-color : #56aa47;
		padding : 15px 0px;
		text-align : center;
		color : #ffffff;
		font-size : 1.4em;
		line-height : 1.2em;
		font-weight : bold;
		margin : 15px 0px;
	}
.line-font-l{
	font-size : 1.3rem;
	font-weight : 600;
	text-align : center;
	overflow : hidden;
}
.line-font-m{
	font-size : 1.1rem;
	text-align : center;
	overflow : hidden;
}

/*==================================================
 * TOPページお客様の声スライダー（完全競合対策・最終版）
==================================================*/

/* スライダーの枠 */
.my-slider-wrapper {
  width: 94%;
	margin : 0 auto;/* 固定ヘッダー分の上部余白 */
  overflow: visible !important;
}
.my-slider{
	width : auto!important;
	margin : 0 20px;
}
/* 各スライドのデザイン（枠） */
.my-slider .my-slide-box {
  border: 1px solid #333;
  border-radius: 10px;
  padding: 20px;
  background: #fff;
  text-align: center;
  box-sizing: border-box;
}

/* スライド間の余白 */
.my-slider .slick-slide {
  margin: 0 1.5px;
  box-sizing: border-box;
}

/* Slickの余白調整 */
.my-slider .slick-track {
  margin-left: -1.5px;
  margin-right: -1.5px;
}

/* 矢印デザイン（スライダー内側配置） */
.my-slider .slick-prev,
.my-slider .slick-next {
  width: 32px!important;
  height: 32px!important;
	background-color: rgba(11, 46, 93, 0.8)!important;
  border-radius: 50%;
  z-index: 1000;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  display: flex !important;
  align-items: center;
  justify-content: center;
  opacity: 1 !important;
  visibility: visible !important;
  transition: none !important;
}

.my-slider .slick-prev {
  left: 10px; /* ←内側配置 */
}

.my-slider .slick-next {
  right: 10px; /* →内側配置 */
}

.my-slider .slick-prev::before,
.my-slider .slick-next::before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  opacity: 1 !important;
}

.my-slider .slick-prev::before {
  transform: rotate(135deg);
}

.my-slider .slick-next::before {
  transform: rotate(-45deg);
}

/* ドット表示（強制表示・明確なデザイン） */
.my-slider .slick-dots {
  position: static !important;
  display: block !important;
  text-align: center !important;
  opacity: 1 !important;
  visibility: visible !important;
  margin-top: 8px !important;
  padding: 0 !important;
  list-style: none !important;
}

.my-slider .slick-dots li {
  display: inline-block !important;
  margin: 0 !important;
}

.my-slider .slick-dots li button::before {
  content: '●' !important; /* slickフォントを使わず確実表示 */
  font-family: inherit !important;
  font-size: 15px !important;
  color: #88898a !important;
  opacity: 1 !important;
}

.my-slider .slick-dots li.slick-active button::before {
  color: #cc0000 !important;
}
.my-slider .slick-prev,
.my-slider .slick-next {
  top: 40% !important;
  transform: translateY(-50%) !important;
}
.cash-price-ttl{
	font-size : 15px;
	font-weight : 600;
	text-align : center;
}
.cash-price-yen{
	font-size : 24px;
	color : #333;
	font-weight : 600;
	text-align : center;
	margin : 5px auto;
	overflow : hidden;
}
.highlight-outline {
  color: #cc0000; /* 赤文字 */
	font-size : 28px;
  text-shadow:
    -1px -1px 0 #FFD700,
     1px -1px 0 #FFD700,
    -1px  1px 0 #FFD700,
     1px  1px 0 #FFD700;
}
.otoku-red{
	color : #cc0000;
	font-weight : 900;
}
.cash-img{
	text-align : center;
	padding : 10px 0px;
}
.cash-custum-name{
	text-align : center;
	font-size : 14px;
	color : #555151;
}
.cash-custum-text{
	text-align : left;
	line-height: 1.6;
	color : #333;
	margin : 15px 0px;
	height : 150px;
	overflow : hidden;
}
.cash-link-btn{
	width : 80%;
	margin : 10px auto;
	background : #082057;
	text-align : center;
	border-radius : 10px;
	padding : 5px 0px;
}
.cash-link-btn a{
	text-decoration : none;
	color : #fff;
}
  .my-slider .slick-prev {
    left: 0px !important; /* 内側配置に統一 */
  }

  .my-slider .slick-next {
    right:0px !important; /* 内側配置に統一 */
  }
.voice-ruikei-ttl{
	text-align : center;
	font-size : 24px;
	font-weight : 600;
	color : #f4460a;
	overflow : hidden;
}
.voice-ruikei-ttl-sub{
	text-align : center;
	font-size : 36px;
	line-height : 46px;
	font-weight : 600;
	color : #f4460a;
	margin:10px 0px;
	overflow : hidden;
}
.voice-ruikei-logo{
    text-align : center;
	font-size : 26px;
	line-height : 32px;
	font-weight : 600;
	margin : 20px 0px;
	overflow : hidden;
}
.my-slider .slick-dots li button {
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 0 15px 0 !important;
    display: inline-block !important; /* flex解除 */
    justify-content: unset !important;
    align-items: unset !important;
    box-sizing: content-box !important;
}

/* レスポンシブ（スマホ）設定 */
@media screen and (max-width: 767px) {
.my-slider-wrapper {
  width: 94%;
  margin: 20px auto 0; /* 固定ヘッダー分の上部余白 */
  overflow: visible !important;
    padding: 10px;
}
.my-slider{
	width : auto!important;
	margin : 0;
}
.my-slider .my-slide-box {
  border: 1px solid #333;
  border-radius: 10px;
padding: 10px 10px 20px 10px;
  background: #fff;
  text-align: center;
  box-sizing: border-box;
	margin : 0 2px;
}
  .my-slider .slick-slide {
    margin: 0;
  }

  .my-slider .slick-track {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .my-slider .slick-prev {
    left: 0px !important; /* 内側配置に統一 */
  }

  .my-slider .slick-next {
    right:0px !important; /* 内側配置に統一 */
  }
}
@media screen and (max-width: 767px) {
  .my-slider .slick-prev,
  .my-slider .slick-next {
    width: 32px !important;  /* 正円に調整（幅46px） */
    height: 32px !important; /* 正円に調整（高さ46px） */
    padding: 0 !important;
  }

  .my-slider .slick-prev::before,
  .my-slider .slick-next::before {
    width: 10px !important; /* 矢印サイズを46pxに合わせ少し小さめに */
    height: 10px !important;
    border-width: 3px !important; /* 線は3pxのままでOK */
    box-sizing: border-box !important;
  }
}

/* 初期状態は非表示 */
.tel_banner_button_sp {
  display: none;
}

/* スマホのみ表示 */
@media screen and (max-width: 768px) {
  .tel_banner_button_sp {
    display: block;
    padding: 4px 0px;
    box-sizing: border-box;
    width: 100%;
	  margin-top : 3px;
  }

  .tel_banner_button_sp a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    background-color: #ffffff;
    border: 2px solid #003366;  /* 濃紺 */
    color: #003366;
    text-decoration: none;
    border-radius: 10px;
    padding: 6px 5px;
    font-size: 5.0vw; /* 可読性重視の大きさ（例：18〜20px） */
    font-weight: bold;
    white-space: nowrap;
    box-sizing: border-box;
  }

  .tel_banner_button_sp a i {
    font-family: "Font Awesome 5 Free"; /* 明示的にFAを使用 */
    font-weight: 900;
    font-size: 1.2em;
    color: #003366; /* 濃紺アイコン */
    margin-right: 5px;
	  overflow : hidden!important;
  }

  .tel_banner_button_sp .tel_text {
    display: inline-block;
	  overflow : hidden!important;
  }
.tel_banner_button_sp a {
  /* 既存の内容に加えて以下を追加 */
  line-height: 1.4;
}

}
.kuchikomi-area{
	background : #fdf3eb;
	padding : 30px 0px 20px 0px;
	margin-top : -30px;
}
.kuchikomi-ttl{
	text-align : center;
	font-size : 26px;
	font-weight : 600;
	line-height : 34px;
	margin-bottom : 20px;
	margin-top : 8px;
}


/*20250427追加*/
.cash-kanou-box {
    width: 70%;
    margin: 20px auto;
	background : #fffef8;
    border: 1px solid #fff;
    padding: 20px;
    border-radius: 10px
}

.cash-kanou-box-icon {
    float: none;
    width: 100px;
    margin : 0 auto;
    text-align: center
}

    .cash-kanou-box-text {
        float: none;
        width: auto;
        text-align: left;
        font-size: 18px;
        font-weight: 500;
        padding: 5px;
        overflow: hidden;
        color: #333;
        line-height : 28px;
    }
.cash-kanou-ttl {
    font-size: 32px;
    color: #333;
    margin: 15px 0px 30px 0px;
	overflow : hidden;
    font-weight: 600;
    text-align : center;
	line-height : 42px;
}
.cash-kanou-list {
  margin: 0;
  padding: 0;
}

.cash-kanou-item {
  display: flex;
  align-items: flex-start; /* 上揃え */
  margin-bottom: 1em;
}

.cash-kanou-number {
  flex: 0 0 2em; /* 番号の幅を固定 */
  font-weight: bold;
  font-size: 20px;
  color: #333;
  line-height: 1.5;
}

.cash-kanou-text {
  flex: 1; /* 残りを全部テキストに使う */
  font-size: 18px;
  color: #333;
  line-height: 1.8;
}


@media screen and (max-width: 768px) {
.cash-kanou-box {
    width: auto;
    margin: 0px auto;
	background : #fffef8;
    border: 1px solid #fff;
    padding: 5px 20px;
    border-radius: 10px
}

.cash-kanou-box-icon {
    float: none;
    width: 100px;
    margin : 0 auto;
    text-align: center
}

    .cash-kanou-box-text {
        float: none;
        width: auto;
        text-align: left;
        font-size: 18px;
        font-weight: 500;
        padding: 5px;
        overflow: hidden;
        color: #333;
        line-height : 28px;
    }
	.cash-kanou-ttl {
    font-size: 23px;
    color: #333;
    margin: 15px 0px 30px 0px;
	overflow : hidden;
    font-weight: 600;
    text-align : center;
	line-height : 42px;
}
}
.kounyu_flow_area{
	width : 100%;
	padding : 20px 0px;
	background : #e5f2e8!important;		
}
.flow-box-new{
	max-width : 800px;
	margin : 20px auto;
	background : #d0e0ce;
	padding : 12px;
	border-radius : 10px;
}
.flow-box-new-in{
	background : #fffef8;
	padding : 10px;
	border-radius : 10px;
}
.step-ttl{
	font-size : 20px;
	font-weight : 600;
	color : #0b2e5d;
	border-bottom : 1px solid #0c6ea6;
	padding-bottom : 5px;
}
.step-ttl span {
  color: #f16b09;
  font-size: 22px;
  font-weight: 900 !important;
    font-family:
      "Hiragino Maru Gothic ProN", "ヒラギノ丸ゴ ProN",
      "Hiragino Maru Gothic Pro", "ヒラギノ丸ゴ Pro",
      "Rounded Mplus 1c", "Mplus Rounded 1c",
      "YuGothic", "游ゴシック",
      "Yu Gothic UI",
      "Arial Rounded MT Bold",
      "Meiryo", "メイリオ",
      sans-serif;
}
.step-ttl span b {
  font-weight: 800 !important;
}

.flow-text-new{
	color : #0b2e5d;
	padding : 15px 0px;
	font-weight : 500;
}
.flow-text-new span{
	color : #f16b09;
	font-weight : 600;
}
.step-img-icon {
width: 90px;
display: block;
vertical-align: bottom;
}
.image_right {
float: right!important;
margin: 0 0 0 20px!important;
}

@media screen and (max-width: 768px) {
.flow-box-new{
	margin : 20px 15px;
}	
.image_right {
float: none!important;
margin: 0!important;
	width : auto!important;
	margin : 0 auto 20px!important;
}
.profile_box .image_right{
	float : none!important;
	width : 70%!important;
	margin : 0 auto 20px!important;
}
}

/********************************************************
 * 2025_05_07 トップページ 口コミ設定
 ********************************************************/

/* ▼ スライダー全体 */
.new-kuchikomi-slider {
  max-width: 1200px;
  margin: 0 auto;
  padding-bottom: 50px;
  overflow: hidden;
}

/* ▼ スライド1件枠 */
.new-kuchikomi-slide-box {
  background: #ffffff;
  padding: 20px;
  font-size: 16px;
  text-align: center;
  box-sizing: border-box;
  margin: 0 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  border: 1px solid #ddd;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.07);
	border-radius : 10px;
}

/* ▼ アイコン画像 */
.kuchikomi-icon img {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 10px;
}

/* ▼ 名前表示 */
.kuchikomi-name {
  font-weight: bold;
  margin-bottom: 5px;
}

/* ▼ 星（オレンジ） */
.kuchikomi-stars {
  color: #f5a623;
  margin-bottom: 10px;
  font-size: 18px;
}

/* ▼ コメント全体 */
.kuchikomi-comment-wrapper {
  position: relative;
  width: 100%;
	overflow : hidden;
}

/* ▼ コメント本文（最大5行） */
.kuchikomi-comment {
  line-height: 1.6;
  max-height: calc(1.6em * 5);
  overflow: hidden;
  transition: max-height 0.3s ease;
  text-align: left;
}

/* ▼ 展開時：高さ制限を解除 */
.kuchikomi-comment-wrapper.expanded .kuchikomi-comment {
  max-height: 2000px;
}

/* ▼ ボタンエリア */
.kuchikomi-buttons {
  margin-top: 8px;
  display: flex;
  gap: 16px;
  padding: 0;
}

/* ▼ 「see more」ボタン */
.kuchikomi-more-toggle {
  background: none;
  border: none;
  color: #0073aa;
  cursor: pointer;
  font-size: 18px;
	font-weight : 600;
  padding: 0;
  margin-top: -30px;
	margin-left : -10px!important;
}
/* ▼ 「close」ボタン（初期非表示） */
.kuchikomi-close-toggle {
  background: none;
  border: none;
  color: #999;
  cursor: pointer;
  font-size: 20px;
	font-weight : 600;
  padding: 0;
  margin-top: 10px;
	margin-left : -20px!important;
	overflow : hidden;
}


/* ▼ 展開後：ボタン切り替え */
.kuchikomi-comment-wrapper.expanded .kuchikomi-more-toggle {
  display: none;
}
.kuchikomi-close-toggle {
  display: none;
}

.kuchikomi-comment-wrapper.expanded .kuchikomi-close-toggle {
  display: inline-block !important;
}


/* ▼ slick-slide 調整 */
.slick-slide {
  display: flex !important;
  justify-content: center;
  box-sizing: border-box;
}

/* ▼ ドット表示 */
.new-kuchikomi-slider .slick-dots {
  display: block !important;
  position: relative;
  text-align: center;
  margin-top: 0px;
  z-index: 9999;
  padding: 0;
}
.new-kuchikomi-slider .slick-dots li {
  display: inline-block;
  margin: 0 6px;
}
.new-kuchikomi-slider .slick-dots li button {
  width: 10px !important;
  height: 10px !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  background: #ff0000 !important;
  border-radius: 50% !important;
  border: none !important;
  overflow: hidden !important;
  display: block !important;
  font-size: 0 !important;            /* ← 文字サイズを0にして完全に非表示 */
  color: transparent !important;     /* ← テキスト色も透明に */
  line-height: 0 !important;         /* ← テキストの高さも排除 */
  text-indent: -9999px !important;   /* ← 視覚的に画面外へ追い出す */
}


.new-kuchikomi-slider .slick-dots li.slick-active button {
  background: #b80000 !important;
  border: 2px solid #000;
}

/* ▼ ヘッダー全体（アイコン・名前・星）を横並び */
/* ▼ ヘッダー全体 */
.kuchikomi-header {
  width: 100%;
}

.kuchikomi-header-top {
  display: flex;
  align-items: center; /* ← アイコンと名前を縦中央に揃える */
  gap: 10px;
  margin-bottom: 4px;
}

.kuchikomi-icon img {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}

.kuchikomi-name {
  font-weight: bold;
  font-size: 16px;
}

.kuchikomi-stars {
  color: #f5a623;
  font-size: 22px;
  text-align: left;
	overflow : hidden;
}

.kuchikomi-prev,
.kuchikomi-next {
  display: flex !important;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9999;
  background: rgba(0, 0, 0, 0.3) !important; /* 黒の透過背景 */
  color: #fff !important;
  border: none;
  font-size: 14px;
  font-weight: bold;
  cursor: pointer;
  width: 28px;
  height: 28px;
  border-radius: 50%; /* 必ず正円にする */
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  transition: background 0.3s ease;
  line-height: 1;
  padding: 0;
}

.kuchikomi-prev:hover,
.kuchikomi-next:hover {
  background: rgba(0, 0, 0, 0.6) !important; /* ホバー時：透過度下げて強調 */
}

.kuchikomi-prev {
  left: 10px;
}

.kuchikomi-next {
  right: 10px;
}

/* ▼ スマホ対応 */
@media screen and (max-width: 768px) {
  .kuchikomi-more-toggle {
    margin-top: 6px;
    margin-left: 0;
  }
  .kuchikomi-buttons {
    flex-direction: column;
    gap: 4px;
    align-items: flex-start;
  }
.suumo-box {
	width : auto;
    margin: 10px;
    background: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
	border : 2px solid #0b84d1;
}
.suumo-box .box-title {
    font-size: 1.3em;
    background: #0b84d1;
    padding: 15px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family:
      "Hiragino Maru Gothic ProN", "ヒラギノ丸ゴ ProN",
      "Hiragino Maru Gothic Pro", "ヒラギノ丸ゴ Pro",
      "Rounded Mplus 1c", "Mplus Rounded 1c",
      "YuGothic", "游ゴシック",
      "Yu Gothic UI",
      "Arial Rounded MT Bold",
      "Meiryo", "メイリオ",
      sans-serif;
}

.suumo-box-in{
	padding : 15px 5px;
}
.new-kuchikomi-slider {
  visibility: hidden;
  opacity: 0;
}
}

/*****************************************
 * SUUMOのCTA部分
 * ***************************************/
.suumo-box {
	max-width : 640px;
    margin: 10px auto;
    background: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
	border : 2px solid #0b84d1;
	margin-bottom : 40px;
}
@media (max-width: 768px) {
.suumo-box {
	width : auto;
    margin: 0px!important;
	padding : 10px;
	border : none;
	box-shadow : none;
	background : none;
}
}
.suumo-box .box-title {
	display : none;
}
.suumo-box-in{
	padding : 0px;
}
.suumo-cta li{
	margin-top : 15px;
	float : left;
	width : 50%;
	text-align : center;
	padding : 5px;
	list-style : none;
}

.pc-only { display: none; }
.sp-only { display: block; }

@media (min-width: 1080px) {
  .pc-only { display: block; }
  .sp-only { display: none; }
}

.form-come{
	font-size : 15px;
	font-weight : 600;
	line-height : 25px;
	margin-top : 15px;
}

.top-line-btn{
	padding-top : 5px;
}

@media screen and (max-width: 640px) {
.suumo-box-btn{
width : auto;
	margin : 16px 0;
}
.suumo-box-btn li{
float : left;
width : 50%;
margin : 10px 0px;
list-style : none;
text-align : center;
}
	
  .footer_kotei_area {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 9999;
    background: #faf2c2;
	  padding-top : 10px;
    padding-bottom: 3px;
  }

  .kotei_foot_message {
    color: #0b2e5d;
    font-size: 1.0em;
	  line-height : 1.0em;
    font-weight: 600;
    text-align: center;
    padding: 0;
    display: block;
	  overflow : hidden;
  }

  .footer_line,
  .footer_contact,
  .footer_tel {
    width: 33.33%;
    float: left;
    padding: 0;
    text-align: center;
    line-height: 0;
    margin: 0;
    overflow: hidden;
  }

  .footer_line img,
  .footer_contact img,
  .footer_tel img {
    display: block; 
    margin: 0 auto;
    vertical-align: top; 
    height: 70px;
    width: auto;
  }
}

.custom-hr-green {
  margin-left: 0px;
  margin-right: 0px;
	margin-top : 25px;
	margin-bottom : 25px;
  border: none;
  border-top: 3px solid #6bc65d;
}
.img-15{
	padding : 0 15px!important;
}

.policy-green-ttl{
	background : #6bc65d;
	margin : 10px 0px 20px 0px;
	padding : 10px 20px;
	font-size : 18px;
	font-weight : 600;
	color : #fff;
}
.policy-box-bottom{
max-width : 640px;
	width : auto;
	margin : 20px auto;
	border : 2px solid #6bc65d;
	padding : 20px;
	text-align : center;
}
@media screen and (max-width: 640px) {
.policy-box-bottom{
	width : auto;
	margin : 20px 15px;
}
}
.policy-box-bottom span{
	font-size : 18px;
	font-weight : 600;
}

.policy_box_single ol {
  list-style: none; /* デフォルト番号無効 */
  counter-reset: num;
  padding-left: 0em;
	margin-top : 20px;
}

.policy_box_single ol > li {
  position: relative;
  padding-left: 2em;
  margin-bottom: 0.8em;
}

.policy_box_single ol > li::before {
  counter-increment: num;
  content: counter(num);
  position: absolute;
  left: 0;
  top: 0;
  font-weight: bold;
  font-size: 1em;
}

/* 丸数字を使うためのマッピング */
.policy_box_single ol > li:nth-child(1)::before { content: "①"; }
.policy_box_single ol > li:nth-child(2)::before { content: "②"; }
.policy_box_single ol > li:nth-child(3)::before { content: "③"; }
.policy_box_single ol > li:nth-child(4)::before { content: "④"; }
/* さらに増える場合は追加してください */

.sankaku-green-satei{
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-top: 15px solid #6bc65d;
	margin : -25px auto 30px;
}

.tyukai_new_area{
	width : 100%;
	padding : 10px 0px 15px 0px;
	background : #DFF0FA;
}
.onayami_new_area{
	width : 100%;
	padding : 20px 0px;
}
.top-page-link a {
    border-radius: 50px;
    position: relative;
    display: flex;
    justify-content: center;
    text-align: center;
    align-items: center;
    margin: 0 auto 20px;
    max-width: 280px;
    height: 60px;
    padding: 20px 10px!important;
    color: #fff;
    text-decoration: none;
    transition: .3s ease-in-out;
    font-size: 15px;
	line-height : 25px;
    font-weight: 600;
    background: #191970;
    overflow: hidden
}

.portal-line-btn{
	width : 80%;
	margin : 0px auto;
}

/**********************************************
 * ファーストビュー：PC／スマホ切り替え
 **********************************************/

/* 初期状態：両方非表示 */
.pc-only,
.sp-only {
  display: none !important;
}

/* PC用（幅769px以上） */
@media screen and (min-width: 769px) {
  .pc-only {
    display: block !important;
  }
}

/* スマホ用（幅768px以下） */
@media screen and (max-width: 768px) {
  .sp-only {
    display: block !important;
  }
}


/***************************************************
 * Kattoku住設あんしんサポート(2025_06_20設定）*
 * ************************************************/
.anshin-support-main{
	width : 880px;
	margin : 20px auto;
}
.anshin-h2{
	font-size : 24px;
	font-weight : 600;
	margin-bottom : 20px;
	overflow : hidden;
}
.anshin-h3{
	font-size : 20px;
	font-weight : 600;
	margin-bottom : 30px;
	overflow : hidden;
}
.anshin-h3 span{
	color : #cc0000;
}
.come-text{
	font-size : 13px;
	line-height : 20px;
}
@media screen and (max-width: 767px) {
.anshin-h2{
	font-size : 22px;
	font-weight : 600;
	margin-bottom : 20px;
	overflow : hidden;
	text-align : center;
}
.anshin-h3{
	font-size : 17px;
	font-weight : 600;
	margin-bottom : 30px;
	overflow : hidden;
	text-align : center;
}
}
.font-22-red{
	font-size : 22px;
	color : #cc0000;
}
.font-26-red{
	font-size : 26px;
	color : #cc0000;
}
.anshin-text{
	width : auto;
	overflow : hidden;
}
.anshin-gozonji-box{
	width : auto;
	border : 1px solid #333;
	border-radius : 10px;
	padding : 20px;
}
.hosyoukikan{
	font-size : 20px;
	font-weight : 600;
	background : blue;
	color : #fff;
	padding : 2px 10px;
	margin-right : 15px;
}
.t-v-ttl-top{
	color : #cc0000;
	font-size : 22px!important;
	text-align : center;
	font-weight : 600;
    height : 32px!important;
	line-height : 32px!important;
	overflow : hidden;
}

.service24-ttl{
	background : #2266e1;
	color : #fff;
	font-size : 20px;
	font-weight : 600;
	text-align : center;
	padding : 8px 0px;
	margin-bottom : 20px;
}
.service24-box{
	width : auto;
	margin : 10px 0px 0px 0px;
	border : 1px solid #555151;
	border-radius : 10px;
	padding : 20px;
}
.trouble-ttl{
	background : #18a9b6;
	color : #fff;
	font-size : 18px;
	font-weight : 600;
	text-align : center;
	padding : 5px 0px;
	border-radius : 20px;
	margin-bottom : 15px;
}
.s24-ttl{
	float : left;
	width : 30%;
	padding : 0 10px;
}
.service24-text{
	float : left;
	width : 70%;
	padding : 0 10px;
}

.trouble-list {
  list-style: none; /* デフォルトのマーカーを削除 */
  padding: 0;
  margin: 0 0 0 -15px;
}

.trouble-list li {
  position: relative;
  padding-left: 1.5em; /* リストマークの位置を確保 */
  margin-bottom: 1em;  /* 各項目の間隔 */
	margin-left : 20px;
}
.trouble-list li::before {
  content: "■";
  position: absolute;
  left: 0;
  top: 0.2em;
  color: #333; /* マーカーの色（必要に応じて変更） */
  font-size: 1em;
  line-height: 1;
}

.anshin-tokutyou-box{
	background : #fcf9df;
	border-radius : 10px;
	margin : 0 10px 10px 10px;
	padding : 15px 10px
}
.anshin-tokutyou-box p{
	padding : 10px;
}

/* PC・タブレット */

.hosyoutaisyou-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px; /* ボックス間の余白 */
  max-width: 880px;
  margin: 0 auto;
}

.hosyoutaisyou-box {
  flex: 0 0 calc((100% - 40px) / 3); /* 3列分に分けてgapを考慮 */
  box-sizing: border-box;
  background: #f4f4f4;
  padding: 10px;
  text-align: center;
  font-size: 16px;
  border-radius: 8px;
}

/* 下段2個を中央に配置 */
.hosyoutaisyou-wrapper > .hosyoutaisyou-box:nth-child(4),
.hosyoutaisyou-wrapper > .hosyoutaisyou-box:nth-child(5) {
  flex: 0 0 calc((100% - 40px) / 3);
}

.hosyou-table-wrapper {
  width: 100%;
  overflow-x: auto!important;
  -webkit-overflow-scrolling: touch;
}

.hosyou-table {
  width: 100%; 
  min-width: 700px;
  border-collapse: collapse;
  font-size: 14px;
}
.hosyou-table th,
.hosyou-table td {
  border: 1px solid #ccc;
  padding: 8px;
  text-align: center;
  white-space: nowrap;
}
.hosyou-table th {
  background-color: #f4f4f4;
}
.hosyou-table td.bg-yellow {
  background-color: #fffef8; /* 任意の色に変更可 */
}
.hosyou-jirei-2 ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch; /* これでliの高さを揃える */
}

.hosyou-jirei-2 li {
  width: 50%;
  box-sizing: border-box;
  padding: 5px;
  display: flex; 
  align-items: stretch;
  overflow: hidden;       /* ← スクロールバー防止 */
}

.mini-table {
  border-collapse: collapse;
  width: 99%;
}

.mini-table th,
.mini-table td {
  border: 1px solid #ccc;
  padding: 12px;
  text-align: center;
  background-color: #fff;
}

.mini-table th {
  background-color: #f4f4f4;
	height : 50px;
}

.clear {
  clear: both;
}

/* スマホ用（768px以下）で1列表示に */
@media screen and (max-width: 767px) {
  .hosyou-jirei-2 li {
    width: 100%;
  }
.anshin-support-main{
	width : auto;
	margin : 20px 15px;
}
.s24-ttl{
	float : none;
	width : 50%;
	margin : 0 auto;
	padding : 0 10px;
}
.service24-text{
	float : left;
	width : 70%;
	padding : 0 10px;
}
}

.clear {
  clear: both;
}



/* スマホ（767px以下）で縦並び */
@media screen and (max-width: 767px) {
  .hosyoutaisyou-wrapper {
    flex-direction: column;
    align-items: center;
  }

  .hosyoutaisyou-box {
    width: auto;
	  padding : 10px;
  }
}

.anshin-service-naiyou {
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px; /* li同士の間隔 */
  padding: 0;
  list-style: none;
}

.anshin-service-naiyou li {
  flex: 1 1 calc(33.33% - 8px); /* 3列・gap分引いて計算 */
  box-sizing: border-box;
  border: 1px solid #333;
  padding: 15px;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .anshin-service-naiyou {
    display: block;
  }

  .anshin-service-naiyou li {
    width: 100%;
    margin-bottom: 10px; /* 任意 */
  }
}

/* テキスト部 */
.anshin-service-naiyou-in,
.anshin-service-naiyou-last-in {
  border-top: 2px dotted #333;
  font-size: 15px;
  line-height: 20px;
  padding: 10px;
  flex-grow: 1;
  color: #333;
}

/* 特別なボックス */
.anshin-service-naiyou li.anshin-bg-blue {
  background: #3766ae;
  color: #fff;
}
.anshin-service-naiyou li.anshin-bg-blue .anshin-service-naiyou-last-in {
  border-top: 2px dotted #fff;
  color: #fff;
}


/*保証フロー*/
.flow-container {
  max-width: 880px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.flow-step {
  background: #f0f0f0;
  padding: 20px;
  border-radius: 10px;
  width: 240px;
  box-sizing: border-box;
  text-align: center;
  margin: 10px;
  flex-shrink: 0;
}

.flow-ttl-green {
  font-weight: bold;
  color: #2bbb35;
  margin-bottom: 10px;
  font-size: 20px;
}

.flow-text {
  color: #333;
  line-height: 1.6;
}

.flow-arrow {
  font-size: 30px;
  color: #2bbb35;
  margin: 0 10px;
	overflow : hidden;
}

.pc-arrow {
  display: inline-block;
}

.sp-arrow {
  display: none;
}

/* スマホ用（縦並びに変更） */
@media screen and (max-width: 767px) {
  .flow-container {
    flex-direction: column;
  }

  .flow-step {
    width: 100%;
    margin: 10px 0;
  }

  .pc-arrow {
    display: none;
  }

  .sp-arrow {
    display: inline-block;
    margin: 5px 0;
  }
}

/*既存サポートご利用の流れ*/
.riyou-flow-ttl{
	background : #fff;
	margin-top : 40px;
	border : 2px solid #333;
	padding : 10px;
	font-size : 18px;
	text-align : center;
	font-weight : 600;
	margin-bottom : 20px;
}
.kizonsupport-container {
  max-width: 880px;
  margin: 0 auto;
}

.kizonsupport-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

/* ステップ */
.kizonsupport-step {
  background: #f2fade;
	border : 2px solid #2bbb35;
  padding: 20px;
  border-radius: 10px;
  width: 240px; /* ←狭めた */
  text-align: center;
  font-weight: bold;
  color: #333;
  font-size: 16px;
  line-height: 1.5;
  margin: 10px 5px;
  box-sizing: border-box;
}

/* 矢印（▶） */
.kizonsupport-arrow {
  font-size: 24px;
  color: #2bbb35;
  margin: 0 5px;
  line-height: 1;
  display: inline-block;
	overflow : hidden;
}

/* PC表示 */
.pc-arrow {
  display: inline-block;
}

/* ▼（スマホ用） */
.sp-arrow {
  display: none;
}

/* 改行用（PC） */
.kizonsupport-break {
  flex-basis: 100%;
  height: 0;
}

/* スマホ用 */
@media screen and (max-width: 767px) {
  .kizonsupport-row {
    flex-direction: column;
    align-items: stretch;
  }

  .kizonsupport-step {
    width: 100%;
    margin: 10px 0;
	  font-size : 20px;
  }

  .pc-arrow {
    display: none;
  }

  .sp-arrow {
    display: block;
    text-align: center;
    color: #2bbb35;
    font-size: 24px;
    margin: 5px 0;
	  overflow : hidden;
  }

  .kizonsupport-break {
    display: none;
  }
}

/*あんしん保証よくある質問*/
.anshin-hosyou-faq {
  max-width: 880px;
  margin: 0 auto;
  font-size: 16px;
  line-height: 1.6;
}

.faq-box {
  margin-bottom: 20px;
}

.faq-q {
  background: #e6f4f9; /* 薄いブルー */
  border-radius: 8px;
  padding: 10px 15px;
  font-weight: bold;
  border: 1px solid #cce5f0;
}

.faq-a {
  margin-top: 20px;
  padding-left: 2em;
  position: relative;
}

.faq-a-label {
  color: red;
  font-weight: bold;
  position: absolute;
  left: 0;
}

/*中古マンション設備サポート*/
.tyuko-anshin-box{
	border : 0px solid #555151;
	padding : 15px 0px;
	border-radius : 10px;
}
.tyuko-anshin-ttl{
	background : #074095;
	border-radius : 10px;
	padding : 20px 0px;
	text-align : center;
	font-size : 18px;
	color : #fff;
	font-weight : 600;
	margin-bottom : 20px;	
}
.tyuko-anshin-ttl span{
	font-size : 24px;
}
.tyuko-anshin-ttl-sub{
	background : #406bad;
	padding : 10px;
	color : #fff;
	font-weight : 600;
	font-size : 18px;
	margin-bottom : 20px;
}

/*css追加0707*/
.portal-icon-link {
  width: 100%;
  max-width: 520px; /* 必要に応じて調整 */
  margin: 0 auto;
}


.icon-row {
  display: flex;
  gap: 5px;
  margin: 10px 0;
}

.top-row {
  justify-content: space-between;
}

.bottom-row {
  justify-content: center;
}

.icon-row a img {
  width: 100px; /* アイコンサイズを調整 */
  height: auto;
  display: block;
}
.center {
  text-align: center;
}

.center img {
  display: block;
  margin: 0 auto;
  line-height: 0;
  vertical-align: middle;
}

.nayami-0319-box {
  margin-bottom: 60px; /* space_l に該当 */
}

.details-box-1-in-new {
  margin-top: 20px; /* space_s に該当 */
}

hr.custom-hr {
  margin: 60px auto;
}


@media screen and (max-width: 767px) {
  .portal-icon-link {
    width: auto;
    margin: 0 20px !important;
  }
}

.top-onayami-box{
	max-width : 520px;
	width : auto;
	margin : 0 auto;
}

/*ポータル部分の並び*/
.satei_portal_icon_list{
	max-width : 720px;
	width : auto;
	margin : 15px auto;
}
.satei_portal_icon_list li{
	float : left;
	width : 33%;
	text-align : center;
	list-style : none;
}
.gaibulink{
	text-align : right;
	font-weight : 600;
	margin-top : 10px;
	color : #6d6868;
}

/*ポータル部分の並び*/
/* ポータルスクロール（0715） */
.portal-scroll-container {
  overflow: hidden;
  max-width: 720px;
  width: auto;
  position: relative;
  padding: 0;
  margin: 0;
}

/* スクロールトラック */
.portal-scroll-track {
  display: flex;
  flex-wrap: nowrap;
  animation: scroll-left 20s linear infinite;
  width: max-content;
  will-change: transform;
}

/* 画像共通設定 */
.portal-scroll-track > img,
.portal-scroll-track > * {
  width: 130px !important;
  height: 60px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  flex-shrink: 0 !important;
  vertical-align: middle !important;
}

/* アニメーション設定 */
@keyframes scroll-left {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}
