@charset "utf-8";

/* 20230412 added by Fabo */
.mb55 { margin-bottom: 55px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb65 { margin-bottom: 65px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb75 { margin-bottom: 75px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb85 { margin-bottom: 85px !important; }
.mb90 { margin-bottom: 90px !important; }
.mb95 { margin-bottom: 95px !important; }
.mb100 { margin-bottom: 100px !important; }

.fs12 { font-size: 12px; }
.fs13 { font-size: 13px; }
.fs14 { font-size: 14px; }
.fs15 { font-size: 15px; }
.fs16 { font-size: 16px; }
.fs17 { font-size: 17px; }
.fs18 { font-size: 18px; }
.fs19 { font-size: 19px; }
.fs20 { font-size: 20px; }

.entry-content .row {
	margin-left: -20px;
	margin-right: -20px;
}

.entry-content .row > div {
	padding: 0 20px;
	margin-bottom: 2rem;
}

.entry-content .template-img-right {
	margin-left: 30px;	
}

.entry-content .template-img-left {
	margin-right: 30px;
}

.entry-content .template-text :first-child {
	margin-top: 0;
}

.entry-content th,
.entry-content td :last-child {
	margin-bottom: 0;
}

.entry-content dl dt {
	color: #78be20;
	font-size: 17px;
	font-weight: bold;
}
.entry-content dl dd {
	margin-bottom: 10px;
}

.color-red {
	color: #ad322c;
}

.strong {
	color: #78be20;
}

.contents-colorbox {
	margin-bottom: 20px;
	padding: 30px;
	background: #f5f5f5;
}
.contents-colorbox :first-child {
	margin-top: 0;
	padding-top: 0;
}
.contents-colorbox :last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}

.contents-borderbox {
	margin-bottom: 20px;
	padding: 30px;
	border: #666 1px solid;
}
.contents-borderbox :first-child {
	margin-top: 0;
	padding-top: 0;
}
.contents-borderbox :last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}

.contents-colorbox .template-img-right,
.contents-colorbox .template-img-left,
.contents-borderbox .template-img-right,
.contents-borderbox .template-img-left {
	margin-bottom: 0;
}

.entry-content p + .contents-colorbox,
.entry-content p + .contents-borderbox,
.entry-content p + .table {
	margin-top: 1.5rem;	
}

.list-check li {
	position: relative;
	margin: 0 0 16px 0 !important;
	padding-left: 22px;
	list-style: none !important;
	line-height: 1.6;
}
.list-check li:before {
	content: "\f00c";
	position: absolute;
	top: 2px;
	left: 0;
	color: #78be20;
	font-family: "Font Awesome 5 Free";
 	font-weight: 900;
	font-size: 16px;
	line-height: 1.2;
}
.list-check li:last-child {
	margin-bottom: 0 !important;
}

.list-margin li {
	margin-bottom: 0.8rem !important;
}
.list-margin li:last-child {
	margin-bottom: 0 !important;
}

.entry-content .btn-primary {
	min-width: 290px;
	padding: 0.8rem;
}

.table-bordered th {
	width: 25%;
	background: #f7f7f7;
}
.table-bordered th,
.table-bordered td {
	padding: 15px;
	border: 1px solid #999;
	vertical-align: middle;
}

.table-fixed {
	margin: 0 0 0.8em 0;
	table-layout: fixed;
}
.table-fixed th {
	background: #f7f7f7;
}
.table-fixed th,
.table-fixed td {
	text-align: center;
	border: 1px solid #999;
	vertical-align: middle;
}
.table-fixed thead th {
	background: #f7f7f7;
	border-bottom: 1px;
}


/* 家づくりの流れ */
.contents-stepbox-wrap {
	margin: 0 0 40px;
}
.contents-stepbox {
	position: relative;
	padding-bottom: 40px;
}
.contents-stepbox:last-child {
	padding-bottom: 0;
}
.contents-stepbox::before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 24px;
	width: 2px;
	background: #78be20;
}
.contents-stepbox-ico {
	position: relative;
	float: left;
	margin-right: 25px;
	display: inline-block;
	z-index: 10;
	width: 50px;
	height: 50px;
	background: #78be20;
	border-radius: 50%;
	line-height: 50px;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
}
.contents-stepbox-detail {
	overflow: hidden;
}
.contents-stepbox h4 {
	display: inline-block;
	margin: 0 0 8px !important;
	padding: 0 !important;
	background: none;
	border: none;
	font-size: 18px;
	color: #333;
}
.contents-stepbox h4 strong {
	color: #006bb6;
}
.contents-stepbox h4::before {
	display: none;
}


/* Q&A */
.contents-faq table {
	margin-bottom: 30px;
	width: 100%;
}
.contents-faq th,
.contents-faq td {
	padding: 10px 0;
	vertical-align: middle;
}
.contents-faq tr:first-child th {
	width: 50px;
	border-bottom: #666 1px solid;
}
.contents-faq tr:first-child td {
	color: #78be20;
	font-size: 16px;
	font-weight: bold;
	border-bottom: #666 1px solid;
}
.contents-faq tr:nth-child(2) th {
	vertical-align: top;
}
