@charset "UTF-8";

* {
    padding: 0;
    margin: 0
}

html {
    box-sizing: border-box;
    -webkit-text-size-adjust: 100%;
    word-break: normal;
}

*,
::before,
::after {
    background-repeat: no-repeat;
    box-sizing: inherit
}

::before,
::after {
    text-decoration: inherit;
    vertical-align: inherit
}

html {
    box-sizing: border-box;
}

html,
body {
    font-size: 62.5%;
    font-family: "Noto Sans JP", sans-serif;
}

.clear {
    clear: both;
}

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.clearfix {
    display: inline-table;
}

/*\*/
* html .clearfix {
    height: 1%;
}

.clearfix {
    display: block;
}

.unitLogo .logo-inner {
    display: block;
}

.unitLogo .logo-inner>* {
    display: block;
    width: 250px;
    height: 50px;
    max-width: 100%;
    font-size: 0;
    background-image: url(/img/logo.svg);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
}

.unit-tel-01 {
    cursor: text;
}

.unit-tel-01 .tel-txt {
    /* font-size: 16px; */
    /* font-size: 0.875em; */
    font-size: clamp(11px, 3vw, 14px) !important;
    margin-bottom: 0px !important;
    margin-top: 0px !important;
}

.unit-tel-01 .tel-txt+* {
    margin-top: 5px;
}

.unit-tel-01 .tel-dial {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    /* font-size: 3.2rem; */
    font-size: clamp(18px, 2vw, 24px) !important;
    font-family: "Lato", sans-serif;
    line-height: 1;
    letter-spacing: 0.05em;
    font-weight: bold;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.fcRed {
    /* color: red; */
}

.unit-btn-01 .btn-inner {
    text-align: center;
    /* background: #ffa800; */
    background-color: #333;
    font-weight: bold;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    line-height: 1.4;
    letter-spacing: 0.05em;
    color: #fff;
    font-size: clamp(14px, 3vw, 18px) !important;
    width: 55px;
    height: 55px;
    display: inline-block;
}

.unit-btn-01 .btn-inner span {
    display: none;
}

/* .unit-btn-01 .btn-inner::after {
    content: "\f138";
    display: block;
    width: 100%;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    line-height: 0;
} */

a {
    color: inherit;
    transition: all 0.3slinear;
    outline: none;
    text-decoration: none;
}

ul {
    list-style: none;
}

.unit-tel-01 .tel-dial::before {
    content: "";
    display: block;
    width: 50px;
    height: 28px;
    background: url(/img/icon_free_daial.png) center center/contain no-repeat;
    margin-right: 10px;
}

#contents {
    width: 100%;
}

#topMainImg {
    width: 100%;
}

#topMainImg img {
    width: 100%;
}

.content {
    width: 95%;
    margin-left: auto;
    margin-right: auto;
}

footer {
    width: 100%;
}

.pd1 {
    padding: 10% 0px;
}

.pdTop1 {
    padding: 10% 0px 0px 0px;
}

.pdTop2 {
    padding-top: 5%;
}

.mTop1 {
    margin-top: 5%;
}
.mTop3 {
    margin-top: 2.5%;
}

.bannerImg {
    width: 100%;
}

img {
    width: 100%;
}

.news {
    width: 100%;
}

ul.top1 {
    width: 100%;
    display: flex;
}

ul.top1 li dl {
    width: 100%;
}

ul.top1 li dl dt {
    width: 100%;
    position: relative;
}

ul.top1 li dd {
    width: 100%;
}

ul.top1 li dl dt h3 {
    position: absolute;
    bottom: 10px;
    left: 10px;
}

ul.top1 li dl dd p {
    font-size: clamp(14px, 4vw, 16px) !important;
    padding: 3%;
}

footer {
    width: 100%;
    background-color: #e2e2e2;
    padding: 5% 0px 10px 0px;
}

footer p {
    text-align: center;
    font-size: clamp(13px, 2vw, 16px) !important;
}

.contentBlock {
    width: 100%;
}

.contentBlock p {
    font-size: clamp(16px, 2vw, 18px) !important;
    line-height: 1.8;
}

ul.saleTop {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 5%;
}

ul.saleTop li dl {
    width: 100%;
    display: flex;
    align-items: center;
}

ul.saleTop li dl dt {
    width: 45%;
    display: flex;
    justify-content: center;
    align-items: center;
}

ul.saleTop li dl dt img {
    width: 90%;
}

ul.saleTop li dl dd {
    width: 52%;
    margin-left: 3%;
}

ul.saleTop li dl dd h3 {
    font-size: clamp(16px, 2vw, 18px) !important;
    text-align: center;
    font-weight: normal;
}

ul.saleTop li {
    border: solid 1px #e2e2e2;
    padding: 3% 0px;
}

.wideSmall {
    width: 95%;
    margin-left: auto;
    margin-right: auto;
}

dl.dltop1 {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

dl.dltop1 dt {
    width: 100%;
}

dl.dltop1 dd {
    width: 100%;
}

ul.top2 {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

ul.top2 li {
    width: 48%;
}

ul.topService {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

ul.topService li {
    border: solid 1px #e2e2e2;
    border-radius: 10px;
}

ul.topService li dl {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

ul.topService li dl dt {
    width: 30%;
}

ul.topService li dl dd {
    width: 65%;
}

ul.topService li dl dd h3 {
    font-size: clamp(16px, 2vw, 18px) !important;
}

#footerMenu {
    width: 95%;
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
}

.footerMenuListBlock {
    width: 90%;
}

.footerMenuListBlock h2 {
    font-size: clamp(16px, 2vw, 18px) !important;
    margin-bottom: 3%;
    font-weight: normal;
}

ul.footerMenuList {
    width: 100%;
}

ul.footerMenuList li {
    width: 100%;
    font-size: clamp(16px, 2vw, 18px) !important;
    margin-bottom: 3%;
}

.copyright {
    text-align: center;
    margin-top: 5%;
    font-size: clamp(14px, 2vw, 16px) !important;
}

.rightBtn {
    display: flex;
    justify-content: flex-end;
    margin-top: 15%;
}

a.btn {
    width: 25%;
    font-size: clamp(16px, 2vw, 18px) !important;
    background-color: #333;
    color: #fff;
    border-radius: 5px;
    padding: 5px 0px;
    text-align: center;
}

dl.dltop2 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 3%;
}

dl.dltop2 dt h3 {
    font-size: clamp(16px, 3vw, 20px) !important;
}

dl.dltop2 dd p {
    font-size: clamp(18px, 3vw, 22px) !important;
}

.topContact {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5%;
    justify-content: space-between;
}

/*20250402*/
dl.buyComment {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    max-width: 800px;
    display: flex;
    justify-content: space-between;
    margin-top: 5%;
}

dl.buyComment dt {
    width: 10%;
}

dl.buyComment dt img {
    width: 100%;
}

dl.buyComment dd {
    width: 80%;
}

.text1 {
    font-size: clamp(16px, 2vw, 18px) !important;
    line-height: 1.8;
}

dl.buyComment2 {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    max-width: 800px;
    /* display: flex;
    justify-content: space-between; */
    margin-top: 5%;
}

dl.buyComment2 dt {
    width: 10%;
    float: right;
}

dl.buyComment2 dd {
    width: 80%;
    float: left;
}

dl.buyComment2 dt img {
    width: 100%;
}

/*左*/
.balloon1 {
    position: relative;
    margin: 2em 0 2em 40px;
    padding: 15px;
    background: #F6F6F6;
    border-radius: 30px;
    width: 100%;
}

.balloon1:before {
    content: "";
    position: absolute;
    left: -38px;
    width: 13px;
    height: 12px;
    bottom: 0;
    background: #F6F6F6;
    border-radius: 50%;
}

.balloon1:after {
    content: "";
    position: absolute;
    left: -24px;
    width: 20px;
    height: 18px;
    bottom: 3px;
    background: #F6F6F6;
    border-radius: 50%;
}

.balloon1 p {
    margin: 0;
    padding: 0;
    font-size: clamp(16px, 2vw, 18px) !important;
    line-height: 1.8;
}

/*右*/
.balloon2 {
    position: relative;
    margin: 2em 40px 2em 0;
    padding: 15px;
    background: #F6F6F6;
    border-radius: 30px;
    width: 100%;
}

.balloon2:before {
    content: "";
    position: absolute;
    right: -38px;
    width: 13px;
    height: 12px;
    bottom: 0;
    background: #F6F6F6;
    border-radius: 50%;
}

.balloon2:after {
    content: "";
    position: absolute;
    right: -24px;
    width: 25px;
    height: 18px;
    bottom: 3px;
    background: #F6F6F6;
    border-radius: 50%;
}

.balloon2 p {
    margin: 0;
    padding: 0;
    font-size: clamp(16px, 2vw, 18px) !important;
    line-height: 1.8;
}

/*右*/
.speechBubble {
    position: relative;
    display: inline-block;
    margin-right: 16px;
    padding: 16px;
    border-radius: 12px;
    background-color: #F6F6F6;
    text-align: left;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #000000;
}

.speechBubble::after {
    content: "";
    position: absolute;
    top: 55%;
    right: 0;
    border-style: solid;
    border-width: 0 0 16px 16px;
    border-color: transparent transparent transparent #F6F6F6;
    translate: 100% calc(-50% - 0.4px);
    transform: skew(0, 49deg);
    transform-origin: left;
}

/*左*/
.speechBubble2 {
    position: relative;
    display: inline-block;
    margin-left: 16px;
    padding: 16px;
    border-radius: 12px;
    background-color: #F6F6F6;
    text-align: left;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #000000;
}

.speechBubble2::after {
    content: "";
    position: absolute;
    top: 38%;
    left: 0;
    border-style: solid;
    border-width: 0 16px 16px 0;
    border-color: transparent #F6F6F6 transparent transparent;
    translate: -100% calc(-50% - 0.4px);
    transform: skew(0, 11deg);
    transform-origin: right;
}

ul.saleWay {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 5%;
}

ul.saleWay li dl {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

ul.saleWay li dl dd h3 {
    font-size: clamp(18px, 2vw, 20px) !important;
}

ul.saleWay li {
    border: solid 1px #e2e2e2;
    padding: 0px 0px 3% 0px;
}

ul.saleWay li dl dd p {
    font-size: clamp(16px, 2vw, 18px) !important;
}

.buyBlockFull {
    border: solid 1px #e2e2e2;
    margin-bottom: 3%;
    padding: 20px 10px;
    position: relative;
}

.buyBlockFull h3 {
    font-size: clamp(18px, 2vw, 20px) !important;
}

.step {
    position: absolute;
    top: 0px;
    right: 0px;
    display: inline-block;
    font-size: clamp(16px, 2vw, 18px) !important;
    color: #fff;
    background-color: #000000;
    padding: 5px 20px;
}

dl.buyBlock {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-top: 1.5%;
}

dl.buyBlock dt {
    width: 35%;
}

dl.buyBlock dt img {
    width: 100%;
}

dl.buyBlock dd {
    width: 63%;
}

dl.buyBlock dd p {
    font-size: clamp(14px, 2vw, 16px) !important;
    line-height: 1.8;
}

dl.buyBlock dd ul {
    width: 100%;
}

dl.buyBlock dd ul li {
    font-size: clamp(14px, 2vw, 16px) !important;
    list-style-type: disc;
    list-style-position: inside;
    line-height: 2;
    padding-left: 0;
}

.text2 {
    font-size: clamp(16px, 2vw, 18px) !important;
}

dl.buyArea2 {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

dl.buyArea2 dt {
    width: 70%;
}

dl.buyArea2 dd {
    width: 27%;
}

ul.buyService {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

ul.buyService li {
    border: solid 1px #e2e2e2;
    border-radius: 10px;
}

ul.buyService li dl {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

ul.buyService li dl dt {
    width: 30%;
}

ul.buyService li dl dd {
    width: 65%;
}

ul.buyService li dl dd h3 {
    font-size: clamp(16px, 2vw, 18px) !important;
}

ul.achievements {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 5%;
}

ul.achievements li {
    border: solid 1px #e2e2e2;
    font-size: 0px;
    padding: 10px;
}

.speech {
    font-size: clamp(16px, 2vw, 18px) !important;
}

.textCenter {
    text-align: center;
}

/*空地・空家買います*/
.catch {
    font-size: clamp(20px, 3vw, 25px) !important;
    font-weight: bold;
}

.catchBlock {
    width: 100%;
    margin: 5% 0px;
}

.purchaseBlock {
    width: 100%;
    margin: 10% 0px 5% 0px;
    display: flex;
    justify-content: space-between;
}

#purchaseImg img {
    width: 100%;
}

#purchaseTextArea ul {
    width: 100%;
    margin-bottom: 5%;
}

#purchaseTextArea ul li {
    font-size: clamp(16px, 2vw, 18px) !important;
    line-height: 1.8;
    list-style: square;
    margin-bottom: 20px;
    margin-left: 30px;
    list-style-position: outside !important;
}

#purchaseTextArea p {
    font-size: clamp(16px, 2vw, 18px) !important;
    line-height: 1.8;
}

.catchH4 {
    font-size: clamp(18px, 3vw, 22px) !important;
    font-weight: bold;
    margin-top: 5%;
}

ul.vacant {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 5%;
}

ul.vacant li {
    border: solid 1px #e2e2e2;
    font-size: 0px;
    padding: 10px;
    display: flex;
    /* 直下の要素を並列に */
    flex-wrap: wrap;
    flex-direction: column;
}

.purchaseText1 {
    font-size: clamp(16px, 2vw, 18px) !important;
    line-height: 1.8;
    margin: 3% 0px 0px 0px;
}

.catch2 {
    font-size: clamp(20px, 3vw, 25px) !important;
    font-weight: bold;
    margin-top: 5%;
}

ul.saleWay4 {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 5%;
}

ul.saleWay4 li dl {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

ul.saleWay4 li dl dd h3 {
    font-size: clamp(18px, 2vw, 20px) !important;
}

ul.saleWay4 li {
    border: solid 1px #e2e2e2;
    padding: 0px 0px 3% 0px;
}

ul.saleWay4 li dl dd p {
    font-size: clamp(14px, 2vw, 16px) !important;
}

.purchaseBlockFull {
    border: solid 1px #e2e2e2;
    margin-bottom: 3%;
    padding: 20px 10px 30px 10px;
    position: relative;
    border-radius: 10px;
}

.purchaseBlockFull h3 {
    font-size: clamp(20px, 3vw, 22px) !important;
}

.point {
    position: absolute;
    top: 0px;
    left: 0px;
    display: inline-block;
    font-size: clamp(16px, 2vw, 18px) !important;
    color: #000;
    padding: 5px 20px;
    /* border-radius: 10px 0 0 0; */
    border-bottom: solid 3px #000;
}

.bigTitle {
    font-size: clamp(28px, 4vw, 40px) !important;
    font-weight: bold;
}

dl.purchaseBlock2 {
    width: 95%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-top: 1.5%;
    margin-left: auto;
    margin-right: auto;
}

dl.purchaseBlock2 dt {
    width: 60%;
}

dl.purchaseBlock2 dd {
    width: 35%;
}

dl.purchaseBlock2 dd img {
    width: 100%;
}

dl.purchaseBlock2 dt h4 {
    font-size: clamp(18px, 3vw, 20px) !important;
    line-height: 1.8;
    margin-top: 5%;
    margin-bottom: 3%;
}

dl.purchaseBlock2 dt p {
    font-size: clamp(14px, 2vw, 16px) !important;
    line-height: 1.8;
}

dl.purchaseArea2 {
    width: 100%;
    display: flex;
    /* align-items: center; */
    justify-content: space-between;
}

dl.purchaseArea2 dt {
    width: 60%;
}

dl.purchaseArea2 dd {
    width: 37%;
}

ul.oneBanner {
    width: 100%;
    display: flex;
    justify-content: center;
}

ul.oneBanner li {
    width: 50%;
    margin: 0px auto;
}

ul.oneBanner2 {
    width: 100%;
    display: flex;
    justify-content: center;
}

ul.oneBanner2 li {
    width: 100%;
    margin: 0px auto;
}

/*購入*/
ul.kounyuList {
    width: 100%;
}

ul.kounyuList li {
    margin-bottom: 20px;
}

.articleInfo {
    width: 100%;
    margin-top: 5%;
    margin-bottom: 5%;
}

.articleBox {
    width: 100%;
    margin-top: 10%;
}

.flow {
    width: 100%;
    margin: 5% auto;
}

.flowDetail {
    width: 100%;
    margin-bottom: 30px;
    background-color: #e2e2e2;
    padding: 20px;
    border-radius: 10px;
}

.yajirushi {
    width: 60px;
    margin-left: auto;
    margin-right: auto;
}

.triangle {
    width: 60px;
    height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 30px solid #e2e2e2;
    margin-bottom: 20px;
}

.block3 {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.block3 li {
    border: solid 1px #999;
    padding: 10px 10px 5px 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    box-sizing: border-box;
}

/**/
.meritContent {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 5%;
}

.merit {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    margin-bottom: 3rem;
    padding: 1rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    width: 100%;
    position: relative;
}

.merit-header {
    display: flex;
    align-items: center;
    cursor: pointer;
    flex-wrap: wrap;
}

.merit-desc {
    display: none;
    margin: 1.5rem auto 1rem auto;
    margin-top: 1.5rem;
    /* font-size: 0.95rem; */
    line-height: 1.6;
    font-size: clamp(16px, 1.5vw, 18px) !important;
    width: 90%;
}

.merit.open .merit-desc {
    display: block;
}

.card {
    background-color: #fff;
    padding: 20px 10px;
    border-radius: 5px;
    border: solid 1px #999;
    /* box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5); */
    /* transition: transform 0.3s ease, box-shadow 0.3s ease; */
}

.stepDetail {
    width: 100%;
    margin-bottom: 30px;
    border: solid 1px #ddd;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/*会社概要*/
.itemShop {
    width: 100%;
    font-size: clamp(16px, 1.8vw, 18px) !important;
}

.itemShop:not(:last-child) {
    margin-bottom: 20px;
}

/*店舗一覧*/
/*アコーディオン*/

.accordion-item {
    /* border: 1px solid #ddd; */
    background-color: #fff;
}

.accordion-item.open {
    /* max-height: 400px; */
    will-change: max-height;
    transition: max-height 0.8s ease;
    background-color: #fff;
}


/* .accordion-item + .accordion-item {
  border-top: 1px solid #ddd;
  margin-top: 20px;
  padding-top: 0;
  display: block;
} */

.accordion-header {
    appearance: none;
    border: none;
    background: none;
    font: inherit;
    color: inherit;
    text-align: left;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 10px;
    font-weight: bold;
    background-color: #f7f7f7;
    cursor: pointer;
    box-sizing: border-box;
    transition: background-color 0.3s ease;
    border: 1px solid #ddd;
}

.accordion-header:hover {
    background-color: #eee;
}

.accordion-content {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.6s ease-out;
}

.open .accordion-content {
    border-left: solid 1px #ddd;
    border-right: solid 1px #ddd;
    border-bottom: solid 1px #ddd;
}

.accordion-inner {
    padding: 20px 10px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.icon {
    font-size: 18px;
    user-select: none;
    transition: transform 0.3s ease;
}

.shopInfo h4 {
    font-size: clamp(14px, 1.8vw, 16px) !important;
    margin-top: 5px;
    margin-bottom: 5px;
}

.title2 {
    font-size: clamp(16px, 1.8vw, 18px) !important;
}

.shopMap {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    /* 16:9のアスペクト比 */
    height: 0;
    margin-top: 30px;
}

.shopMap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*スタッフ紹介*/
.staffBox {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 70px;
}

.staffBox li {
    box-shadow: 0 5px 15px 0 rgba(0, 0, 0, .3);
    margin-bottom: 40px;
    padding: 20px 20px 0px 20px;
}

.staffBox li img {
    width: 100%;
    display: block;
    margin: 0px auto;
}

/*スタッフ紹介詳細*/
.messageArea {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
}

.otherMessageArea {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 80px;
}

.otherMessageArea dl {
    width: 100%;
    display: flex;
    align-items: flex-start;
}

/*スライダー*/
/* .staff-slider {
    width: 90%;
    padding: 2em 0;
    margin-left: auto;
    margin-right: auto;
} */
.staff-card span {
    font-size: 0.9em;
    color: #666;
}

.staff-card p {
    font-size: 0.9em;
    color: #444;
}
.staff-slider {
    width: 100% !important;
    margin-left: auto;
    margin-right: auto;
    padding: 20px 0px !important;
    position: relative;
    overflow: visible;
    margin-left: auto;
    margin-right: auto;
        background-color: #eee;

}
.slideBack {
    width: 100%;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding: 20px 0px;
    overflow: hidden;

}
.slide-item {
  max-width: 300px;
  margin: 0 10px;
}
/* --- オーバーレイ：下から出現 --- */
.staff-card {
  position: relative;
  overflow: hidden;
  background: #fff;
  /* box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); */
  max-width: 300px;
  margin: auto;
  text-align: center;
  padding: 0;
}

.image-wrapper {
  padding: 20px 0;
}

.image-wrapper img {
  width: 100%;
  max-width: 200px;
  margin-left: auto;
  margin-right: auto;
  height: auto;
  border-radius: 50%;
  margin-bottom: 1em;
  transition: transform 0.5s ease, filter 0.5s ease;
}

.image-wrapper h3 {
  font-size: clamp(16px, 1.8vw, 18px) !important;
  margin: 0 0 0.5em;
}


.hover-overlay {
    display: block;
}

.staff-card:hover .hover-overlay {
  transform: translateY(0);
  opacity: 1;
}

/* slick arrows カスタム */
.slick-arrow-custom {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1000;
  background: rgba(0,0,0,0.8);
  color: #fff;
  border: none;
  width: 40px;
  height: 40px;
  /* border-radius: 50%; */
  font-size: 16px;
  cursor: pointer;
}

  .slick-prev {
    left: 0px;
  }
  .slick-next {
    right: 0px;
  }
.returnBtn {
    padding: 10px 30px;
    border-radius: 5px;
    background-color: #333;
    color: #fff;
    display: inline-block;
  font-size: clamp(16px, 1.8vw, 18px) !important;
}
.returnBtnArea {
    text-align: center;
  margin: 70px auto;
}
/*無料査定フォーム*/
.sateiFormArea {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
dl.formBlock {
    width: 100%;
}
.wpcf7-list-item-label {
    margin-right: 20px;
    margin-left: 10px;
}
.final-button {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5%;
    text-align: center;
    border-radius: 5px;
    border: solid 1px #ccc;
    padding: 20px 0px;
}
.typeClick {
  font-size: clamp(16px, 1.8vw, 18px) !important;
    cursor: pointer;
}
ul.top3 {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

ul.top3 li {
    width: 48%;
}
.faqBox {
    width: 100%;
}
.faqBox dl {
    width: 100%;
    border: solid 1px #ccc;
    padding: 20px;
    margin-bottom: 40px;
}
.faqBox dt {
    width: 100%;
  font-size: clamp(18px, 2vw, 20px) !important;
}
.faqBox dd {
    width: 100%;
  font-size: clamp(16px, 1.8vw, 18px) !important;
  margin-top: 20px;
}
.textLeft {
    text-align: left !important;
}
.faqImg {
    width: 100%;
    position: relative;
}
.faqImg img {
    width: 100%;
    margin: 0 auto;
}
/*問い合わせフォーム*/
.contactBox {
    width: 90%;
    margin: 50px auto 0px auto;
}
.contactBox p {
    line-height: 1.5;
    font-size: clamp(16px, 1.5vw, 18px) !important;
    margin-top: 20px;
}
/*サイトマップ*/
.sitemapBox {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    margin-top: 30px;
}
.sitemapBox li {
    border: solid 1px #ccc;
    box-sizing: border-box;
    padding: 20px 0px;
}
.sitemapBox li dl {
    width: 100%;
}
.sitemapBox li dl dt {
    width: 100%;
}
.sitemapBox li dl dt img {
    width: 100%;
}
.sitemapBox li dl dd {
    width: 100%;
    text-align: center;
}
.sitemapArea {
    width: 100%;
    margin-top: 50px;
}
/*LP*/
.lpBox {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    margin-top: 30px;
}
.lpBox li {
    border: solid 1px #ccc;
    box-sizing: border-box;
    padding: 0px 0px;
}
.lpBox li dl {
    width: 100%;
}
.lpBox li dl dt {
    width: 100%;
    text-align: center;
    padding: 10px;
    background-color: #444;
}
.lpBox li dl dd {
    width: 100%;
}
.lpBox li dl dd img {
    width: 100%;
}
.shopContentLp {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.6s ease-out;
}

.shopContentLp {
    border-left: solid 1px #ddd;
    border-right: solid 1px #ddd;
    border-bottom: solid 1px #ddd;
}
ul.shopKaitori {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 30px;
}
ul.shopKaitori li {
    border: solid 1px #666;
    box-sizing: border-box;
    padding-bottom: 10px;
    margin-bottom: 30px;
}
ul.shopKaitori li h4 {
    background-color: #444;
    text-align: center;
    color: #fff;
}

.shopKitoriImg {
    width: 100%;
}
.shopKitoriImg img {
    width: 100%;
}
.kaitoriAddress {
    padding: 10px;
    display: flex;
    flex-grow:1;
    flex-direction:column;
}
.kaitoriTel {
    text-align: center;
}
.comparison {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.comparison table {
    width: 100%;
    border-left: solid 1px #666;
    border-top: solid 1px #666;
}
/* ★ 左端の「項目」列を固定 */
.comparison th.komoku,
.comparison td.komoku {
    position: sticky;
    left: 0;
    background: #fff;
    z-index: 2;
    border-right: 1px solid #ccc;
}
.table-inner {
    width: 100%;
    margin: 0 auto;
}
.komoku {
    width: 15% !important;
}
.item1 {
    width: 42.5% !important;
}
/* .js-scrollable td,
.js-scrollable th {
    white-space: nowrap;
    background-color: transparent;
}
.js-scrollable table {
    margin-bottom: 0;
}
.js-scrollable {
    margin-bottom: 30px;
} */
/* 追加 */
.comparison table { border-collapse: separate; }
@media screen and (max-width: 767px) {
  .js-scrollable {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .table-inner {
    min-width: 700px; /* テーブルが横に広がるための最低幅 */
  }
}

/* PCではスクロール禁止（デフォルト状態） */
@media screen and (min-width: 768px) {
  .js-scrollable {
    overflow-x: visible;
  }

  .table-inner {
    width: 100%;
  }
}
.backBlack {
    background-color: #444 !important;
    color: #fff !important;
}
dl.meritBlock {
    width: 100%;
    border-radius: 3px;
    border: solid 1px #444;
    padding: 20px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.demeritBlock {
    width: 100%;
    border-radius: 3px;
    border: solid 1px #444;
    padding: 20px;
    margin-bottom: 30px;
}
.reason {
    display: inline-block;
    background-color: #444;
    color: #fff;
    padding: 5px 10px;
    font-size: clamp(13px, 1.55vw, 15px);
    margin-right: 10px;
    border-radius: 5px;
}
