.con-worries, .con-hometips .box-hometips, .con-flow, .con-voice .box-voice, .con-houselab-cv { max-width: 1280px; margin-inline: auto; width: calc(100% - 160px); }
@media (max-width: 1439px) { .con-worries, .con-hometips .box-hometips, .con-flow, .con-voice .box-voice, .con-houselab-cv { width: 96%; } }
@media (min-width: 768px) and (max-width: 1024px) { .con-worries, .con-hometips .box-hometips, .con-flow, .con-voice .box-voice, .con-houselab-cv { width: 92%; } }
@media (max-width: 767px) { .con-worries, .con-hometips .box-hometips, .con-flow, .con-voice .box-voice, .con-houselab-cv { width: 89.6%; } }

/*Animate */
body#houselab .con-pageoutline .box-pageoutline .box-title h1 { line-height: 1.2; }

/* ----------------------------------------------------------- .con-worries
----------------------------------------------------------- */
.con-worries { margin-top: 240px; padding-bottom: 240px; }
@media (min-width: 768px) and (max-width: 1024px) { .con-worries { margin-top: 160px; padding-bottom: 160px; } }
@media (max-width: 767px) { .con-worries { margin-top: 80px; padding-bottom: 80px; } }
.con-worries .list-worries { margin-top: 80px; display: flex; align-items: flex-start; gap: 2.8vw; }
@media (max-width: 1024px) { .con-worries .list-worries { flex-wrap: wrap; } }
@media (max-width: 767px) { .con-worries .list-worries { gap: 40px 2.8vw; margin-top: 40px; } }
.con-worries .list-worries .item-worries { background-color: #E7EAF3; -webkit-border-radius: 16px; -moz-border-radius: 16px; -ms-border-radius: 16px; border-radius: 16px; text-align: center; padding: 48px 0; flex: 1 1 auto; min-height: 216px; position: relative; color: #2E4282; font-weight: 700; font-size: 1.8rem; line-height: 1.5; display: flex; flex-direction: column; justify-content: center; }
@media (max-width: 1024px) { .con-worries .list-worries .item-worries { width: calc(50% - 2.8vw); } }
@media (max-width: 767px) { .con-worries .list-worries .item-worries { font-size: 1.4rem; min-height: 160px; } }
.con-worries .list-worries .item-worries:before { content: ""; background: url(../images/houselab/deco-fukidashi.svg) center center no-repeat; background-size: contain; width: 34px; height: 39px; position: absolute; bottom: -22px; left: 40%; }
.con-worries .list-worries .item-worries:after { content: ""; height: 6px; background-color: #2E4282; width: 56.3%; filter: blur(15px); margin: 0 auto; position: absolute; left: 0; right: 0; bottom: -104px; }
@media (max-width: 1024px) { .con-worries .list-worries .item-worries:after { bottom: -40px; } }
.con-worries .list-worries .item-worries:nth-child(1) { margin-top: 16px; }
@media (max-width: 1024px) { .con-worries .list-worries .item-worries:nth-child(1) { margin-top: 0; } }
.con-worries .list-worries .item-worries:nth-child(2) { margin-top: 64px; }
@media (max-width: 1024px) { .con-worries .list-worries .item-worries:nth-child(2) { margin-top: 40px; } }
.con-worries .list-worries .item-worries:nth-child(3) { margin-top: 24px; }
@media (max-width: 1024px) { .con-worries .list-worries .item-worries:nth-child(3) { margin-top: 0; } }
@media (max-width: 1024px) { .con-worries .list-worries .item-worries:nth-child(4) { margin-top: 40px; } }
.con-worries .list-worries .item-worries:nth-child(even):before { transform: scale(-1, 1); left: auto; right: 40%; }

/* ----------------------------------------------------------- .con-hometips
----------------------------------------------------------- */
.con-hometips { padding: 160px 0; }
@media (max-width: 767px) { .con-hometips { padding: 80px 0; } }
.con-hometips .box-hometips .title-primary { margin-bottom: 64px; }
@media (max-width: 767px) { .con-hometips .box-hometips .title-primary { margin-bottom: 40px; } }
.con-hometips .box-hometips .list-hometips { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px 15px; width: 100%; }
@media (min-width: 768px) and (max-width: 1024px) { .con-hometips .box-hometips .list-hometips { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 767px) { .con-hometips .box-hometips .list-hometips { grid-template-columns: repeat(2, 1fr); gap: 10px; } }
.con-hometips .box-hometips .list-hometips .item-hometips { background-color: #fff; padding: 24px; display: flex; flex-direction: column; min-height: 280px; }
@media (max-width: 767px) { .con-hometips .box-hometips .list-hometips .item-hometips { padding: 16px; min-height: 200px; } }
.con-hometips .box-hometips .list-hometips .item-hometips .number { font-family: "Outfit", serif; font-optical-sizing: auto; font-weight: 500; font-style: normal; color: #2E4282; line-height: 1; letter-spacing: 0.08em; padding-top: 25%; }
.con-hometips .box-hometips .list-hometips .item-hometips .number:before { content: "#"; }
.con-hometips .box-hometips .list-hometips .item-hometips h3 { margin-top: 8px; font-weight: 500; line-height: 1.5; font-size: 2rem; }
@media (max-width: 767px) { .con-hometips .box-hometips .list-hometips .item-hometips h3 { font-size: 1.5rem; } }
.con-hometips .box-hometips .list-hometips .item-hometips .txt-caption { margin-top: auto; text-align: right; color: #888; font-size: 1.4rem; }
@media (max-width: 767px) { .con-hometips .box-hometips .list-hometips .item-hometips .txt-caption { font-size: 1rem; } }
.con-hometips .box-hometips .button-basic { max-width: 320px; margin: 64px auto 0; }
.con-hometips .box-hometips .txt-link { text-align: center; margin-top: 32px; }
.con-hometips .box-hometips .txt-link a { display: inline-block; position: relative; font-weight: 500; font-size: 1.5rem; letter-spacing: 0.08em; }
.con-hometips .box-hometips .txt-link a:after { content: ""; width: 100%; height: 1px; position: absolute; bottom: -6px; right: 0; background-color: #2B2B2B; -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
@media (min-width: 1025px) { .con-hometips .box-hometips .txt-link a:hover:after { width: 0; } }

/* ----------------------------------------------------------- .con-flow
----------------------------------------------------------- */
.con-flow { padding: 160px 0; }
@media (max-width: 767px) { .con-flow { padding: 80px 0; } }
.con-flow .list-flow { position: relative; margin-top: 64px; }
@media (max-width: 767px) { .con-flow .list-flow { margin-top: 40px; } }
.con-flow .list-flow:before { content: ""; background-color: #2B2B2B; width: 1px; height: calc(100% - 40px - 2em); position: absolute; top: 0; left: 6px; }
@media (min-width: 768px) and (max-width: 1024px) { .con-flow .list-flow:before { height: calc(100% - 40px - 4em); } }
@media (max-width: 767px) { .con-flow .list-flow:before { height: calc(100% - 24px); left: 4px; } }
.con-flow .list-flow .item-flow { display: flex; align-items: center; position: relative; padding: 40px; padding-right: 0; }
@media (max-width: 767px) { .con-flow .list-flow .item-flow { flex-wrap: wrap; align-items: flex-end; padding: 24px 0 24px 24px; } }
.con-flow .list-flow .item-flow:before { content: ""; background-color: #2B2B2B; -webkit-border-radius: 50%; -moz-border-radius: 50%; -ms-border-radius: 50%; border-radius: 50%; width: 13px; height: 13px; position: absolute; top: calc(50% - 6px); left: 0; }
@media (max-width: 767px) { .con-flow .list-flow .item-flow:before { width: 9px; height: 9px; top: calc(24px + 3em); } }
.con-flow .list-flow .item-flow:after { content: ""; background-color: #DEDEDE; width: calc(100% - 40px); height: 1px; position: absolute; bottom: 0; right: 0; }
.con-flow .list-flow .item-flow .number { font-family: "Outfit", serif; font-optical-sizing: auto; font-weight: 300; font-style: normal; line-height: 1; letter-spacing: 0.08em; font-size: 1.5rem; width: 10%; }
@media (min-width: 768px) and (max-width: 1024px) { .con-flow .list-flow .item-flow .number { width: 20%; } }
@media (max-width: 767px) { .con-flow .list-flow .item-flow .number { width: calc(90% - 120px); } }
.con-flow .list-flow .item-flow .img { width: 120px; }
@media (max-width: 767px) { .con-flow .list-flow .item-flow .img { margin-left: auto; } }
.con-flow .list-flow .item-flow .img img { -webkit-border-radius: 9999px; -moz-border-radius: 9999px; -ms-border-radius: 9999px; border-radius: 9999px; }
@media (min-width: 1025px) { .con-flow .list-flow .item-flow .box-detail { display: contents; } }
@media (min-width: 768px) and (max-width: 1024px) { .con-flow .list-flow .item-flow .box-detail { width: calc(80% - 120px); padding-left: 64px; } }
@media (max-width: 767px) { .con-flow .list-flow .item-flow .box-detail { margin-top: 24px; } }
.con-flow .list-flow .item-flow .box-detail h5 { font-weight: 500; line-height: 1.5; letter-spacing: 0.08em; font-size: 2rem; }
@media (min-width: 1025px) { .con-flow .list-flow .item-flow .box-detail h5 { width: 25%; padding-left: 24px; } }
@media (min-width: 768px) and (max-width: 1024px) { .con-flow .list-flow .item-flow .box-detail h5 { margin-bottom: 8px; } }
@media (max-width: 767px) { .con-flow .list-flow .item-flow .box-detail h5 { font-size: 1.8rem; margin-bottom: 8px; } }
.con-flow .list-flow .item-flow .box-detail .txt { color: #888; font-weight: 500; }
@media (min-width: 1025px) { .con-flow .list-flow .item-flow .box-detail .txt { width: calc(65% - 120px); padding-left: 64px; } }
.con-flow .txt-caution { text-align: right; color: #888; font-size: 1.4rem; font-weight: 500; padding-top: 24px; }
@media (max-width: 767px) { .con-flow .txt-caution { font-size: 1.2rem; } }

/* ----------------------------------------------------------- .con-voice
----------------------------------------------------------- */
.con-voice { padding: 160px 0; }
@media (max-width: 767px) { .con-voice { padding: 80px 0; } }
.con-voice .box-voice .list-voice { margin-top: 64px; }
@media (min-width: 768px) { .con-voice .box-voice .list-voice { display: grid; grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(2, 1fr); grid-column-gap: 80px; grid-row-gap: 80px; } }
@media (min-width: 768px) and (max-width: 1024px) { .con-voice .box-voice .list-voice { grid-column-gap: 32px; grid-row-gap: 40px; } }
@media (max-width: 767px) { .con-voice .box-voice .list-voice { margin-top: 40px; display: flex; flex-direction: column; gap: 40px; } }
.con-voice .box-voice .list-voice .item-voice { background-color: #fff; text-align: center; padding: 64px 40px 52px; display: flex; flex-direction: column; }
@media (max-width: 767px) { .con-voice .box-voice .list-voice .item-voice { padding: 40px 24px 24px; } }
.con-voice .box-voice .list-voice .item-voice .number { font-family: "Outfit", serif; font-optical-sizing: auto; font-weight: 500; font-style: normal; color: #2E4282; line-height: 1; letter-spacing: 0.08em; margin-bottom: 16px; }
.con-voice .box-voice .list-voice .item-voice .number:before { content: "#"; }
.con-voice .box-voice .list-voice .item-voice h3 { font-weight: 500; font-size: 2.6rem; line-height: 1.5; }
@media (max-width: 767px) { .con-voice .box-voice .list-voice .item-voice h3 { font-size: 2rem; } }
.con-voice .box-voice .list-voice .item-voice .txt { color: #888; margin-top: 16px; font-weight: 500; }
@media (max-width: 767px) { .con-voice .box-voice .list-voice .item-voice .txt { font-size: 1.3rem; } }
.con-voice .box-voice .list-voice .item-voice .graf { max-width: 280px; margin: 24px auto 32px; }
.con-voice .box-voice .list-voice .item-voice .box-detail { border: 1px solid #DEDEDE; -webkit-border-radius: 0 16px; -moz-border-radius: 0 16px; -ms-border-radius: 0 16px; border-radius: 0 16px; padding-right: 16px; display: flex; justify-content: space-between; align-items: flex-end; margin-top: auto; }
.con-voice .box-voice .list-voice .item-voice .box-detail .review { padding: 13px 24px; font-size: 1.4rem; font-weight: 500; text-align: left; width: calc(100% - 50px); }
@media (max-width: 1024px) { .con-voice .box-voice .list-voice .item-voice .box-detail .review { padding-right: 13px; font-size: 1.2rem; } }
.con-voice .box-voice .list-voice .item-voice .box-detail .img { width: 50px; }

/* ----------------------------------------------------------- .con-houselab-cv
----------------------------------------------------------- */
.con-houselab-cv { background-color: #2B2B2B; color: #fff; padding: 80px 40px 80px 80px; position: relative; margin-top: 80px; margin-bottom: 160px; display: flex; align-items: center; }
@media (max-width: 1024px) { .con-houselab-cv { flex-wrap: wrap; } }
@media (max-width: 767px) { .con-houselab-cv { padding: 40px 24px 24px; margin-bottom: 80px; } }
.con-houselab-cv .icon { width: 120px; }
@media (max-width: 767px) { .con-houselab-cv .icon { width: 64px; margin: 0 auto; } }
.con-houselab-cv .icon img { width: 100%; }
.con-houselab-cv .title-primary { padding-left: 40px; }
@media (min-width: 768px) and (max-width: 1024px) { .con-houselab-cv .title-primary { width: calc(100% - 120px); } }
@media (max-width: 767px) { .con-houselab-cv .title-primary { width: calc(100% - 64px); padding-left: 24px; } }
@media (max-width: 767px) { .con-houselab-cv .title-primary span.number { margin-bottom: 8px; } }
@media (min-width: 1025px) and (max-width: 1280px) { .con-houselab-cv .title-primary span.main { font-size: 5.8vw; } }
@media (max-width: 767px) { .con-houselab-cv .title-primary span.main { font-size: 5rem; } }
@media (max-width: 767px) { .con-houselab-cv .title-primary span.jp { font-size: 1.6rem; } }
.con-houselab-cv .txt-lead { font-size: 1.8rem; letter-spacing: 0.08em; padding-bottom: 8px; }
@media (min-width: 1025px) { .con-houselab-cv .txt-lead { padding-left: 64px; } }
@media (min-width: 768px) and (max-width: 1024px) { .con-houselab-cv .txt-lead { width: calc(100% - 80px); margin-top: 64px; } }
@media (max-width: 767px) { .con-houselab-cv .txt-lead { width: calc(100% - 80px); margin-top: 40px; font-size: 1.4rem; padding-right: 16px; }
  .con-houselab-cv .txt-lead br { display: none; } }
.con-houselab-cv .arrow { width: 80px; height: 80px; }
@media (min-width: 1025px) { .con-houselab-cv .arrow { position: absolute; bottom: 40px; right: 40px; } }
@media (min-width: 768px) and (max-width: 1024px) { .con-houselab-cv .arrow { margin-top: 64px; } }
@media (min-width: 768px) and (max-width: 1024px) { .con-houselab-cv .arrow { margin-top: 40px; } }
.con-houselab-cv .arrow a { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; height: 100%; position: relative; }
@media (min-width: 1025px) { .con-houselab-cv .arrow a:hover img { transform: scale(1.5); } }
.con-houselab-cv .arrow a img { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; display: inline-block; }
.con-houselab-cv .arrow a svg { position: absolute; top: 0; left: 0; animation: rotateAnimation 5s linear infinite; width: 100%; height: 100%; }
@keyframes rotateAnimation { from { transform: rotate(0deg); }
  to { transform: rotate(360deg); } }
