@charset "utf-8";

/* 20231004 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: -10px;
	margin-right: -10px;
}
.entry-content .row > div {
	margin-bottom: 20px;
	padding: 0 10px;
}
.term-contact .entry-content .row {
	margin: 0;
}
.term-contact .entry-content .row > div {
	margin: 0;
	padding: 0;
}

.entry-content .template-text :first-child {
	margin-top: 0;
}

.entry-content .template-img-right {
	margin: 0 0 0 30px;
}
.entry-content .template-img-left {
	margin: 0 30px 0 0;
}

.strong {
	color: #ec7c24;
}

.table-bordered {
	margin-bottom: 25px;
}
.table-bordered th,
.table-bordered td {
	padding: 12px 15px;
	border: 1px solid #d0ccc1;
}
.table-bordered th {
	background: #f9e2ec;
	width: 25%;
}
.table-bordered td {
	background: #fff;
}

.table-fixed {
	margin-bottom: 25px;
	table-layout:fixed;
}
.table-fixed th,
.table-fixed td {
	padding: 12px 15px;
	text-align: center;
	vertical-align: middle;
	border: 1px solid #d0ccc1;
}
.table-fixed th {
	background: #f9e2ec;
}
.table-fixed td {
	background: #fff;
}

.contents-colorbox {
	margin-bottom: 35px;
	padding: 30px;
	background: rgba(236, 235, 230, .8);
	mix-blend-mode: multiply;
	border-radius: 20px;
}
.contents-colorbox :first-child {
	margin-top: 0 !important;
}
.contents-colorbox :last-child {
	margin-bottom: 0 !important;
}

.contents-borderbox {
	margin-bottom: 35px;
	padding: 30px;
	border: #e270a3 2px dashed;
	border-radius: 20px;
}
.contents-borderbox :first-child {
	margin-top: 0 !important;
}
.contents-borderbox :last-child {
	margin-bottom: 0 !important;
}

.contents-flowbox-group {
	margin: 40px 0 50px;
}
.contents-flowbox {
	position: relative;
	padding: 0 0 45px 35px;
}
.contents-flowbox:last-child {
	padding-bottom: 0;
}
.contents-flowbox::before {
	content: "";
	position: absolute;
	top: 8px;
	bottom: 0;
	left: 5px;
	width: 2px;
	background: #e26fa2;
}
.contents-flowbox::after {
	content: "";
	position: absolute;
	top: 8px;
	left: 0;
	width: 12px;
	height: 12px;
	z-index: 10;
	background: #e26fa2;
	border-radius: 50%;
}
.contents-flowbox .template {
	margin-bottom: 0;
}
.contents-flowbox .template-img-right {
	margin: 0 0 0 25px;
	text-align: center;
}
.contents-flowbox h4 {
	margin-bottom: 10px;
	padding: 0 !important;
	line-height: 1.6;
	font-size: 19px;
	color: #df5492;
	border: none !important;
	background: none !important;
}
.contents-flowbox h4:before {
	display: none;
}

.list-check li {
	position: relative;
	margin: 0 0 10px 0 !important;
	padding-left: 25px;
	list-style: none !important;
	line-height: 1.8;
}
.list-check li:before {
	content: "\f00c";
	position: absolute;
	top: 0;
	left: 0;
	color: #ec7c24;
	font-family: "Font Awesome 5 Free";
 	font-weight: 900;
	font-size: 15px;
	line-height: 1.8;
}
.list-check li:last-child {
	margin-bottom: 0 !important;
}

/* よくある質問 */
.table-faq {
	margin-bottom: 10px;
	width: 100%;
}
.table-faq th,
.table-faq td {
	padding: 10px 0;
	vertical-align: middle;
}
.table-faq tr:first-child th {
	width: 65px;
	border-bottom: #ddd 1px solid;
}
.table-faq tr:first-child td {
	font-size: 16px;
	font-weight: bold;
	border-bottom: #ddd 1px solid;
}
.table-faq tr:nth-child(2) th {
	vertical-align: top;
}

.entry-btn {
	margin-top: 30px;
	text-align: center;
}
.entry-btn a {
	position: relative;
	display: inline-block;
	width: 250px;
	height: 55px;
	line-height: 49px;
	background: #e26ea2;
	border: 3px solid #fff;
	text-align: center;
	color: #fff !important;
	border-radius: 28px;
	text-decoration: none !important;
}
.row .entry-btn a {
	width: 100%;
}

.contents-paintbox {
	margin-bottom: 40px;
}
.contents-paintbox-text {
	margin-bottom: 15px;
}

.contents-paintbox .col-sm-4 span {
	display: block;
	background: #888;
	color: #fff;
	width: 100%;
	height: 50px;
	line-height: 50px;
	border-radius: 25px;
	font-weight: bold;
	font-size: 15px;
}

.main-plan-img {
  text-align: center;
  margin-top: 40px;
}

.main-plan-img img {
  width: 1080px;
  height: auto;
  display: inline-block;
}


.main-free2-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 40px;
}

.main-free2-once {
  background: #fff;
  border-radius: 10px;
  position: relative;
  padding: 25px 30px 125px;
  margin: 0 auto;
  max-width: 100%;
  box-shadow: 0 0 10px rgba(0,0,0,0.05);
}

.main-free2-text {
  font-size: 13px;
  text-align: left;
}

.main-free2-text h3 {
  font-size: 24px;
  text-align: left;
  font-weight: bold;
  margin-bottom: 20px;
}

.main-free2-link {
  position: absolute;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
  width: 240px;
  text-align: center;
}

.contents-paintbox .-green span { background: #39b54a; }
.contents-paintbox .-light-green span { background: #8cc63f; }
.contents-paintbox .-brown span { background: #8c6239; }
.contents-paintbox .-light-brown span { background: #c69c6d; }
.contents-paintbox .-pink span { background: #ff7bac; }
.contents-paintbox .-light-pink span { background: #ef97b7; }
