@charset "utf-8";

/* CSS Document */

/***********
mainVisual
************/

.mainVisual {
  position: relative;
  background-color: #fff;
  height: 100vh;
  height: 100svh;
  min-height: 600px;
  opacity: 0;
}
body.is-started .mainVisual {
  opacity: 1;
  transition: 1s;
}
.mainVisual::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 50%);
  z-index: 2;
}
.mainVisual::after {
  content: "";
  display: block;
  width: 100%;
  height: 140px;
  position: absolute;
  left: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 100%);
  z-index: 2;
}

.mainVisual-symbol {
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  width: clamp(500px,30vw, 700px);
  /*width: clamp(500px,40vw, 800px);*/
  z-index: 9;
}

/*
slider
*/

.mainVisual-slider{
  opacity: 0;
  transition: all 2.5s ease 0.1s;
  overflow: hidden;
  display: none;
}
body.is-started .mainVisual-slider{
  opacity: 1;
  display: block;
}
.mainVisual-slider :not(.slick-dots) li{
  position: relative;
  width: 100%;
  height: 100vh;
  height: 100svh;
  min-height: 600px;
}
.mainVisual-img{
  width: 100%;
  height: 100vh;
  height: 100svh;
  min-height: 600px;
  background-position: center center;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 0;
}
.mainVisual-img::after{
}
.mainVisual-img > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mainVisual-img.is-zoom{
  transform-origin: center center;
}
.slick-animation .mainVisual-img.is-zoom{
  animation: amin-mainVisual-zoom 12s linear forwards;
}
.mainVisual-img.is-left{
  width: 110%;
  transform-origin: left center;
}
.slick-animation .mainVisual-img.is-left{
  animation: amin-mainVisual-left 12s linear forwards;
}
.mainVisual-img.is-right{
  width: 110%;
  transform-origin: right center;
}
.slick-animation .mainVisual-img.is-right{
  animation: amin-mainVisual-right 12s linear forwards;
}

@keyframes amin-mainVisual-zoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}
@keyframes amin-mainVisual-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-5%);
  }
}
@keyframes amin-mainVisual-right {
  0% {
    transform: translateX(-5%);
  }
  100% {
    transform: translateX(0);
  }
}

/*
header
*/

.mainVisualHeader {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 120px;
  z-index: 999;
  color: #fff;
  font-weight: 300;
}

.mainVisualHeader-inner {
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: space-between;
  padding-left: 40px;
  padding-right: 40px;
}
.mainVisualHeader-logo {
}
.mainVisualHeader-logo-text {
  font-size: 93%;
  font-weight: 300;
  font-feature-settings: "palt";
  letter-spacing: 0.04em;
  padding-bottom: 0.8em;
  height: 2.3em;
  position: relative;
}
.mainVisualHeader-logo-text span {
  display: inline-block;
  position: absolute;
  white-space: nowrap;
}
.mainVisualHeader-logo-img {
  width: 200px;
}
.mainVisualHeader-block {
}
.mainVisualHeader-sub {
  display: flex;
  justify-content: end;
  align-items: center;
}
.mainVisualHeader-subNavi {
  padding-right: 1em;
  display: flex;
}
.mainVisualHeader-subNavi li {
  padding-right: 1.5em;
}
.mainVisualHeader-subNavi li a {
  display: inline-block;
  white-space: nowrap;
  font-size: 139%;
  color: inherit;
  text-decoration: none;
}
.mainVisualHeader-subNavi li a::before {
  font-family: 'Font Awesome 6 Free';
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: var(--fa-display, inline-block);
  font-weight: 900; /* fas */
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  content: "\f0da";
  margin-right: 0.5em;
}
body.is-pc .mainVisualHeader-subNavi li a:hover {
  opacity: 0.7;
}

.mainVisualHeader-cv {
}
.mainVisualHeader-cv a {
  display: flex;
  align-items: center;
  min-height: 2.2em;
  padding: 0 1.8em;
  border: 1px solid #333;
  background-color: #fff;
  color: #333;
  text-decoration: none;
}
.mainVisualHeader-cv a i {
  transform: scale(1.4);
  margin-left: -0.4em;
  margin-right: 0.8em;
}
body.is-pc .mainVisualHeader-cv a:hover {
  opacity: 0.7;
}



.mainVisualHeader-navi {
  padding-top: 1em;
}
.mainVisualHeader-navi-list {
  display: flex;
  align-items: center;
  white-space: nowrap;
}
.mainVisualHeader-navi-list li {
  padding-left: 1.2em;
  padding-right: 1.2em;
}
.mainVisualHeader-navi-list a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  color: inherit;
  text-decoration: none;
  font-size: 147%;
}
body.is-pc .mainVisualHeader-navi-list a:hover {
  opacity: 0.7;
}
.mainVisualHeader-navi-list a small {
  display: inline-block;
  font-weight: 400;
  font-size: 100%;
  letter-spacing: 0.04em;
  line-height: 1.2;
}
.mainVisualHeader-navi-list a span {
  display: block;
  font-size: 70%;
  font-weight: 300;
  font-feature-settings: "palt";
}


@media screen and (max-width:1280px) {

  .mainVisualHeader-inner {
    padding-left: 20px;
    padding-right: 20px;
  }
  .mainVisualHeader-logo-text {
    font-size: 85%;
  }
  .mainVisualHeader-logo-img {
    width: 160px;
  }

  .mainVisualHeader-navi-list li {
    padding-left: 0.8em;
    padding-right: 0.8em;
  }
  .mainVisualHeader-navi-list a {
    font-size: 131%;
  }

}

@media screen and (max-width:834px) {

  .mainVisualHeader {
    display: none;
  }

  .mainVisual::before {
    display: none;
  }
  .mainVisual::after {
    height: 40vh;
  }

  .mainVisual-symbol {
    width: clamp(250px,70vw, 600px);
  }


  .mainVisual-img.is-left{
    width: 110%;
    transform-origin: left center;
  }
  .mainVisual-img.is-right{
    width: 110%;
    transform-origin: right center;
  }

  @keyframes amin-mainVisual-zoom {
    0% {
      transform: scale(1);
    }
    100% {
      transform: scale(1.1);
    }
  }
  @keyframes amin-mainVisual-left {
    0% {
      transform: translateX(0);
    }
    100% {
      transform: translateX(-10%);
    }
  }
  @keyframes amin-mainVisual-right {
    0% {
      transform: translateX(-10%);
    }
    100% {
      transform: translateX(0);
    }
  }

}




/***********
homeIntro
************/

.homeIntro {
  background-color: #e8dfc1;
  display: flex;
  flex-direction: row-reverse;
}
.homeIntro-inner {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1em 5%;
}
.homeIntro-flow {
  width: 60%;
  max-width: 360px;
  padding-bottom: 2em;
}
.homeIntro-heading {
  font-size: clamp(200%,1.7vw, 300%);
  line-height: 1.4;
  padding-bottom: 1em;
}
.homeIntro-heading small {
  display: block;
  font-size: 55%;
}
.homeIntro-heading span {
  display: block;
  font-weight: 700;
  font-family: var(--font-family-serif);
}
.homeIntro-text {
  font-size: clamp(108%,0.9vw, 154%);
  line-height: 1.8;
}
.homeIntro-visual {
  width: 48%;
  padding-top: 1em;
  display: flex;
  flex-direction: column;
  justify-content: end;
  text-align: center;
}

@media screen and (max-width:834px) {

  .homeIntro {
    display: block;
  }
  .homeIntro-inner {
    display: block;
    padding: 5em 4% 1em;
  }
  .homeIntro-flow {
    width: 90%;
    margin: 0 auto;
    padding-bottom: 3em;
  }
  .homeIntro-heading {
    font-size: clamp(200%,8vw, 254%);
    text-align: center;
  }
  .homeIntro-text {
    font-size: 116%;
  }
  .homeIntro-visual {
    width: auto;
    padding-top: 0;
    display: block;
  }

}

/***********
homeAchv
************/

.homeAchv {
  display: flex;
}
.homeAchv-inner {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: end;
  padding-top: 5em;
  padding-bottom: 5em;
}
.homeAchv-box {
  max-width: 840px;
  padding-left: 30px;
  padding-right: 5%;
}

.homeAchv-heading {
  font-size: clamp(200%,1.7vw, 300%);
  line-height: 1.4;
  margin-bottom: 1em;
  padding-left: 2.8em;
  background: url(../../img/home/wood_illust.webp) no-repeat left center / 2.5em auto;
}
.homeAchv-heading small {
  display: block;
  font-size: 55%;
}
.homeAchv-heading span {
  display: block;
  font-weight: 700;
  font-family: var(--font-family-serif);
}
.homeAchv-text {
  font-size: clamp(108%,0.9vw, 154%);
  line-height: 1.8;
}
.homeAchv-visual {
  width: 52%;
}
.homeAchv-visual img {
  width: 100%;
  height: 100%;
  max-height: 500px;
  object-fit: cover;
  object-position: right;
}

@media screen and (max-width:834px) {

  .homeAchv {
    display: block;
  }
  .homeAchv-inner {
    display: block;
    padding-top: 3em;
    padding-bottom: 3em;
  }
  .homeAchv-box {
    max-width: initial;
    padding-left: 4%;
    padding-right: 4%;
  }

  .homeAchv-heading {
    font-size: clamp(154%,4vw, 200%);
    line-height: 1.4;
    margin-bottom: 1em;
    padding-left: 2.8em;
    background: url(../../img/home/wood_illust.webp) no-repeat left center / 2.5em auto;
  }
  .homeAchv-heading small {
    font-size: 70%;
  }
  .homeAchv-text {
    font-size: 116%;
    line-height: 1.8;
  }
  .homeAchv-visual {
    width: auto;
  }
  .homeAchv-visual img {
    width: 100%;
    height: 60vw;
    max-height: 350px;
    object-fit: cover;
  }

}

/***********
homeConcept
************/

.homeConcept {
  padding-top: 8em;
  padding-bottom: 4em;
}
.homeConcept-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.homeConcept-lead {
  width: 42%;
}
.homeConcept-inner {
  width: 42%;
}
.homeConcept-heading {
}
.homeConcept-link {
  text-align: center;
  padding-top: 2em;
}

@media screen and (max-width:834px) {

  .homeConcept {
    padding-top: 4em;
    padding-bottom: 4em;
  }
  .homeConcept-container {
    display: block;
  }

  .homeConcept-lead {
    width: auto;
    max-width: 280px;
    margin: 0 auto 4em;
  }
  .homeConcept-inner {
    width: auto;
    max-width: 320px;
    margin: 0 auto;
  }
  .homeConcept-link {
    padding-top: 1em;
  }

}

/***********
homeProduct
************/

.homeProduct{
  padding-bottom: min(10vw,8em);
}



/***********
homeWorks
************/

.homeWorks {
  padding-top: 8em;
  /* background-color: #f4f3ee; */
}

.homeWorks-list {
  display: flex;
  font-size: clamp(124%,1vw, 154%);
  padding: 0 50px;
  margin-bottom: 3em;
}
.homeWorks-list li {
  width: 25%;
  padding: 0 6px;
}
.homeWorks-list a {
  display: block;
  color: inherit;
  text-decoration: none;
  background-color: #fff;
  transition: opacity 0.2s ease !important;
}
body.is-pc .homeWorks-list a:hover {
  opacity: 0.7;
}
.homeWorks-list-img {
}
.homeWorks-list-img img {
  aspect-ratio: 75 / 100;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.homeWorks-list-inner {
  padding-top: 1em;
  text-align: center;
}
.homeWorks-list-subtitle {
  font-weight: 700;
}
.homeWorks-list-title {
  font-weight: 400;
  font-size: 85%;
  padding-top: 0.2em;
}


@media screen and (max-width:834px) {

  .homeWorks {
    padding-top: 4em;
  }
  .homeWorks-list {
    padding: 0 3px;
    margin-bottom: 2em;
  }
  .homeWorks-list li {
    padding: 0 2px;
  }
  .homeWorks-list a {
    border: 1px solid #aaa;
  }
  .homeWorks-list-img img {
    aspect-ratio: 80 / 100;
  }
  .homeWorks-list-inner {
    padding: 0.8em;
  }

}

/***********
homeReason
************/

.homeReason {
  position: relative;
}
.homeReason-img {
}
.homeReason-img img {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
}
.homeReason-img img.is-sp-hide {
  width: 100%;
  height: 100%;
  min-height: 500px;
  object-position: left;
  object-fit: cover;

}

.homeReason-block {
  position: absolute;
  right: 6vw;
  top: 2vw;
  display: flex;
  justify-content: end;
  flex-direction: row-reverse;
  font-family: var(--font-family-serif);
  white-space: nowrap;
}
.homeReason-title {
  width: 4em;
  font-size: clamp(200%,1.7vw, 300%);
  letter-spacing: 0.08em;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.homeReason-text {
  font-size: clamp(108%,0.9vw, 154%);
  letter-spacing: 0.12em;
  line-height: 1.8;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

.homeReason-link {
  position: absolute;
  right: 100px;
  bottom: 30px;
}

@media screen and (max-width:834px) {

  .homeReason {
  }
  .homeReason-img {
  }
  .homeReason-img img {
    width: 100%;
    min-width: 100%;
    max-width: 100%;
  }
  .homeReason-img img.is-sp-hide {
    width: 100%;
    height: 100%;
    min-height: 500px;
    object-position: left;
    object-fit: cover;

  }

  .homeReason-block {
    right: 5vw;
    top: 2em;
  }
  .homeReason-title {
    width: 3em;
    font-weight: 700;
    font-size: 200%;
    line-height: 1.2;
  }
  .homeReason-text {
    font-size: 116%;
  }
  .homeReason-link {
    width: 100%;
    position: absolute;
    right: 0;
    text-align: center;
    bottom: 30px;
  }


}


/***********
homeReform
************/

.homeReform {
  background: url(../../img/home/renovation_img.png);
  background-color: #f7feff;
  display: flex;
  flex-direction: row-reverse;
  background-size: auto;
  background-repeat: no-repeat;
  background-position: right center;
}

.homeReform-img {
  width: 60%;
}
.homeReform-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.homeReform-inner {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  padding: 1em 5%;
}
.homeReform-box {
  padding: 3em 4em;
}

.homeReform-title {
  max-width: 240px;
  margin: 0 auto;
  padding-bottom: 1.5em;
}
.homeReform-text {
  font-family: var(--font-family-serif);
  font-size: clamp(139%,1.1vw, 170%);
  line-height: 1.3;
}
.homeReform-lead {
  font-family: var(--font-family-serif);
  font-weight: 600;
  font-size: clamp(200%,1.7vw, 300%);
}
.homeReform-link {
  padding-top: 1.5em;
}

@media screen and (max-width:834px) {


  .homeReform {
    background-size: 36px;
    display: block;
  }

  .homeReform-img {
    width: 100%;
  }
  .homeReform-img img {
    width: 140%;
    max-width: 140%;
    margin-left: -20%;
    height: 100%;
    object-fit: cover;

  }
  .homeReform-inner {
    display: flex;
    padding: 0 5% 8em;
    margin-top: -4em;
  }
  .homeReform-box {
    padding: 3em 2em;
  }

  .homeReform-title {
    max-width: 240px;
  }
  .homeReform-text {
    font-size: 131%;
  }
  .homeReform-lead {
    font-size: 200%;
  }
  .homeReform-link {
    padding-top: 1em;
  }

}


/***********
homeReforms
************/

.homeReforms{
	background: url(/img/home/renovation.png) no-repeat;
	background-size: cover;
	background-position: top center;
	position: relative;
	font-family: var(--font-family-serif);
	border: 1px solid #fff;
}
.homeReforms-block{
	width: 380px;
	margin: 55px 0 55px 90px;
	text-align: center;
}
.homeReforms-heading{
	font-weight: 700;
  font-size: 200%;
	margin-bottom: 15px;
}
.homeReforms-heading img{
	width: 260px;
	margin-bottom: 10px;
}
.homeReforms-heading span{
	display: block;
  font-size: 70%;
	font-weight: 400;
}
.homeReforms-link {
  padding-top: 1em;
}
.homeReforms-link .l-btn {
	font-family: var(--font-family-serif);
}

@media screen and (max-width:834px) {

  .homeReforms{
    background: url(/img/home/sp/renovation_sp.png) no-repeat;
    background-size: max(100%,450px) auto;
    border: 1px solid #fff;
    position: relative;

  }
  .homeReforms::before{
    content: "";
    display: block;
    padding-top: clamp(530px,115vw, 800px);;
  }
  .homeReforms-block{
    position: absolute;
    bottom: 60px;
    left: 0;
    text-align: center;
    width: 100%;
    margin: 0 auto;
  }
  .homeReforms-heading{
    font-weight: 700;
    font-size: 154%;
  }
  .homeReforms-heading img{
    width: 17%;
    margin: -8px 0 5px 40px;
    float: left;
  }
  .homeReforms-heading span{
  }
  .homeReforms-link{
    text-align: center;
  }
.homeReforms-link .l-btn {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

}




/***********
homeEvent
************/

.homeEvent {
  padding-top: 4em;
  padding-bottom: 4em;
}

@media screen and (max-width:834px) {

  .homeEvent {
    padding-top: 2em;
    padding-bottom: 1em;
  }
}


/***********
homeEffort
************/

.homeEffort {
  display: flex;
  max-width: 2400px;
  margin: 0 auto;
}
.homeEffort-item {
  width: 50%;
  padding: 0 3% 3em;
}
.homeEffort-item:nth-child(1) {
  background-color: #e8dfc1;
}
.homeEffort-item:nth-child(2) {
  background-color: #c3b8a1;
}

@media screen and (max-width:834px) {

  .homeEffort {
    display: block;
  }
  .homeEffort-item {
    width: auto;
    padding: 0 4% 4em;
  }

}



/***********
homeDiy
************/

.homeDiy {
}
.homeDiy-container {
  display: flex;
}

.homeDiy-img {
  width: 32%;
  padding-top: 3em;
}
.homeDiy-inner {
  flex: 1;
  padding-left: 2em;
}
.homeDiy-heading {
  display: flex;
  align-items: end;
  margin-right: -8%;
  transform: translateY(-2em);
}
.homeDiy-heading-title {
}
.homeDiy-heading-balloon {
}

.homeDiy-text {
  font-size: 131%;
  line-height: 1.8;
  font-weight: 500;
}
.homeDiy-link {
  text-align: center;
  padding-top: 2.5em;
}

@media screen and (max-width:834px) {

  .homeDiy {
  }
  .homeDiy-container {
    display: block;
  }

  .homeDiy-img {
    width: 80%;
    max-width: 320px;
    padding-top: 0em;
    margin: 0 auto;
    transform: translateY(-20px);
  }
  .homeDiy-inner {
    padding-left: 0;
  }
  .homeDiy-heading {
    display: flex;
    align-items: end;
    margin-right: -8%;
    transform: translateY(-2em);
  }
  .homeDiy-text {
    font-size: 116%;
    font-weight: 400;
  }
  .homeDiy-link {
    padding-top: 2em;
  }


}



/***********
homeLocal
************/

.homeLocal {
}
.homeLocal-img {
  max-width: 240px;
  margin: 0 auto;
  transform: translateY(-2em);
}
.homeLocal-inner {
}
.homeLocal-heading {
  font-size: 131%;
  font-weight: 500;
  text-align: center;
  line-height: 1.8;
}
.homeLocal-link {
  text-align: center;
  padding-top: 2.5em;
}

@media screen and (max-width:834px) {

  .homeLocal-heading {
    font-size: 116%;
    font-weight: 400;
    text-align: left;
  }
  .homeLocal-link {
    padding-top: 2em;
  }
}


.homeCraftsman{
	background: #E7DFC1;
}
.homeCraftsman a:hover{
	opacity: 0.8;
	transition: 0.5s;
}
.homeCraftsman-diy{
	max-width: 890px;
	margin: 0 auto;
	padding-bottom: 10px;
	display: flex;
	align-items: center;
	position: relative;
}
.homeCraftsman-diy figure{
	margin: 30px 30px 0 0;
	width: 300px!important;
}
.homeCraftsman-diy .txt h2 img{
	width: 360px;
	padding-top: 30px;
}
.homeCraftsman-diy .txt h2 span img{
	width: 155px!important;
	margin-bottom: 10px;
	position: absolute;
	top: -45px;
	right: 40px;
}
.homeCraftsman-diy p span a{
	display: block;
	background: url(/img/home/btn_craftsman.png) no-repeat;
	background-size: cover;
	width: 394px;
	height: 75px;
	color: #fff;
	text-decoration: none;
	text-align: center;
	line-height: 5.5rem;
	margin-top: 10px;
}
.homeCraftsman-local{
	background: #C3B8A1;
}
.homeCraftsman-local .block{
	width: 1020px;
	margin: 0 auto;
	display: flex;
	align-items: end;
	padding-bottom: 10px;
	padding-top: 10px;

}
.homeCraftsman-local figure{
  width: 25%;
	margin: -25px 0 10px 0;
}
.homeCraftsman-local h2{
  font-size: 1.8rem;
	margin: 0 20px 20px;
	text-align: center;
}
.homeCraftsman-local p{
	background: url(/img/home/btn_local.png) no-repeat;
	background-size: cover;
	background-position: center;
	width: 333px;
	height: 108px;
	text-align: center;
	margin-bottom: 15px;
}
.homeCraftsman-local p:hover{
	opacity: 0.8;
	transition: 0.5s;
}
.homeCraftsman-local p a{
  text-decoration: none;
  color: #000;
  line-height: 12.2rem;
  font-size: 1.4rem;
  padding: 15px 50px;
}

@media screen and (max-width:834px) {

  .homeCraftsman{
  }
  .homeCraftsman-diy{
    margin: 0 auto;
    padding-bottom: 10px;
    display: block;
  }
  .homeCraftsman-diy figure{
    margin: 0 auto;
    padding-top: 30px;
    width: 250px !important;
    max-width: 260px;
  }
  .homeCraftsman-diy .txt {
    padding-left: 5vw;
    padding-right: 5vw;
  }
  .homeCraftsman-diy .txt h2 {
    text-align: center;
  }
  .homeCraftsman-diy .txt h2 img{
    width: auto;
    max-width: 300px;
    padding-top: 30px;
  }
  .homeCraftsman-diy .txt h2 span img{
    width: 125px!important;
    margin-bottom: 10px;
    position: absolute;
    top: -45px;
    right: 50%;
    translate: 160px 0;
  }
  .homeCraftsman-diy p span a{
    background-size: 100% 100%;
    width: auto;
    max-width: 360px;
    height: 75px;
    font-size: 124%;
    margin: 10px auto 20px;
  }
  .homeCraftsman-local{
    background: #C3B8A1;
  }
  .homeCraftsman-local .block{
    width: auto;
    margin: 0 auto;
    display: block;
    align-items: end;
    padding-bottom: 10px;
    padding-top: 10px;

  }
  .homeCraftsman-local figure{
    width: 60%;
    max-width: 280px;
    margin: -25px auto 0;
  }
  .homeCraftsman-local h2{
    margin: 20px 20px 20px;
    text-align: center;
    font-size: 139%;
  }
  .homeCraftsman-local p{
    background-size: cover;
    background-position: center;
    width: 260px;
    height: 110px;
    margin: 0 auto 20px;
    margin-bottom: 15px;
  }
  .homeCraftsman-local p:hover{
    opacity: 0.8;
    transition: 0.5s;
  }
  .homeCraftsman-local p a{
    font-size: 1.2rem;
    padding: 15px 0;
  }

}


/***********
homeNews
************/

.homeNews {
  padding-top: 8em;
  padding-bottom: 8em;
}

@media screen and (max-width:834px) {

  .homeNews {
    padding-top: 4em;
    padding-bottom: 4em;
  }

}

/***********
homeModelHouse
************/

.homeModelHouse{
}
.homeModelHouse-container {
  display: flex;
  flex-direction: row-reverse;
}
.homeModelHouse-inner {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 5em;
  padding-bottom: 5em;
}
.homeModelHouse-heading {
  padding-bottom: 1.8em;
}
.homeModelHouse-heading-lead {
  font-family: var(--font-family-serif);
  font-size: 300%;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.08em;
}
.homeModelHouse-heading-subTitle {
  font-family: var(--font-family-serif);
  font-size: 300%;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.08em;
}
.homeModelHouse-heading-title {
  font-size: 170%;
  font-weight: 500;
  padding-top: 0.5em;
}
.homeModelHouse-img {
  width: 64%;
  display: flex;
  flex-direction: column;
  justify-content: end;
  text-align: center;
}

.homeModelHouse-text {
  font-size: 131%;
  line-height: 1.8;
}
.homeModelHouse-link {
  padding-top: 2.5em;
}

/*
gifu
*/

.homeModelHouse-section.-gifu {
  background-color: #aea9a6;
  color : #fff;
}
.homeModelHouse-section.-gifu .homeModelHouse-inner {
  padding-right: 3em;
}

/*
kakamigahara
*/

.homeModelHouse-section.-kakamigahara {
  background-color: #6a6663;
  color : #fff;
}
.homeModelHouse-section.-kakamigahara .homeModelHouse-container {
  flex-direction: row;
}
.homeModelHouse-section.-kakamigahara .homeModelHouse-inner {
  padding-left: 3em;
  text-align: right;
}


@media screen and (max-width:834px) {

  .homeModelHouse{
  }
  .homeModelHouse-container {
    display: block;
    padding-top: 2em;
  }
  .homeModelHouse-inner {
    display: block;
    padding-top: 1.5em;
    padding-bottom: 3em;
  }
  .homeModelHouse-heading {
    padding-bottom: 0.5em;
  }
  .homeModelHouse-heading-lead {
    font-size: 224%;
    font-weight: 400;
    padding-bottom: 0.2em;
  }
  .homeModelHouse-heading-subTitle {
    font-size: 254%;
  }
  .homeModelHouse-heading-title {
    font-size: 154%;
  }
  .homeModelHouse-img {
    width: auto;
    display: block;
  }

  .homeModelHouse-text {
    font-size: 116%;
  }
  .homeModelHouse-link {
    padding-top: 2em;
    text-align: center;
  }

  /*
  gifu
  */

  .homeModelHouse-section.-gifu .homeModelHouse-inner {
    padding-right: 0;
  }

  /*
  kakamigahara
  */

  .homeModelHouse-section.-kakamigahara .homeModelHouse-inner {
    padding-left: 0;
    text-align: left;
  }


}


/***********
l-visit
************/

.homeVisit {
  padding-top: 6em;
  padding-bottom: 6em;
}
@media screen and (max-width:834px) {

  .homeVisit {
    padding-top: 4em;
    padding-bottom: 4em;
  }
}

/***********
homeMessage
************/

.homeMessage {
  background-color: #e8dfc1;
  padding-top: 2em;
  padding-bottom: 6em;
}
.homeMessage-container {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: end;
}
.homeMessage-container > div{
  flex: 1;
}
.homeMessage-item {
  flex-direction: column;
  justify-content: space-between;
  margin: 15px;
}
.homeMessage-img {
  max-width: 660px;
  margin: 0 auto;
  padding-bottom: 2em;
}
.homeMessage-img img {
}
.homeMessage-heading {
  display: inline-flex;
  align-items: center;
  padding-bottom: 1em;
}
.homeMessage-heading-icon {
  width: 100px;
}
.homeMessage-heading-inner {
  flex:1;
  padding-left: 1.5em;
}
.homeMessage-heading-title {
  font-size: 124%;
  line-height: 1.5;
}
.homeMessage-heading-title strong {
  display: block;
  font-weight: 600;
  font-size: 170%;
}
.homeMessage-text {
  font-size: 124%;
  line-height: 1.8;
}
.homeMessage-link:not(.-noOffset) {
  padding-top: 2em;
}

@media screen and (max-width:834px) {

  .homeMessage {
    padding-top: 2em;
    padding-bottom: 2em;
  }
  .homeMessage-container {
    display: block;
  }
  .homeMessage-item {
    width: auto;
    display: block ;
    padding-bottom: 2em;
  }
  .homeMessage-img {
    width: 90%;
    max-width: 420px;
    margin: 0 auto 0;
    padding-bottom: 1em;
  }
  .homeMessage-img img {
  }
  .homeMessage-heading {
    display: flex;
    padding-bottom: 1em;
    margin-left: 0;
  }
  .homeMessage-heading-icon {
    width: 80px;
  }
  .homeMessage-heading-inner {
    flex:1;
    padding-left: 1em;
    text-align: left;
  }
  .homeMessage-heading-title {
    font-size: 108%;
    line-height: 1.5;
  }
  .homeMessage-heading-title strong {
    font-size: 170%;
  }
  .homeMessage-text {
    font-size: 116%;
    text-align: left;
  }
  .homeMessage-link {
    text-align: center;
  }


}



/***********
homeSupport
************/

.homeSupport {
  background: url(../../img/home/support.jpg) no-repeat center center / cover ;
}
.homeSupport-box {
  padding: 4em 5%;
  text-align: center;
}
.homeSupport-text {
  font-size: 131%;
  line-height: 1.8;
}


.homeSupport-link {
  display: flex;
  justify-content: center;
  padding-top: 3em
}
.homeSupport-link-item {
  padding: 0 1em;
}
.homeSupport-btn {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  border: 3px solid #f3d762;
  background-color: #fff;
  min-height: 5em;
  min-width: 18em;
  font-size: 154%;
  font-weight: 600;
  color: inherit;
  text-decoration: none;
  position: relative;
  box-shadow: 8px 8px 0 rgba(0, 0, 0, 0.2);
}
.homeSupport-btn-marker {
  background: linear-gradient(transparent 50%,#f3d762 50%);
}
.homeSupport-btn::after {
  font-family: 'Font Awesome 6 Free';
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: var(--fa-display, inline-block);
  font-weight: 900; /* fas */
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  content: "\f054";
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
  color: #f3d762;
}
body.is-pc .homeSupport-btn:hover {
  transform: translate(4px,4px);
  box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);

}





.homeSupports{
	background: url(/img/home/support.jpg) no-repeat;
	background-size: cover;
	background-position: center center;
}
.homeSupports-block{
	width: 850px;
	margin: 0 auto;
	padding: 90px 0 70px;
}
.homeSupports-text{
	font-weight: 500;
  font-size: 124%;
  line-height: 1.8;
}
.homeSupport-links{
	padding: 50px 10px 50px;
  display: flex;
  max-width: 800px;
  margin: 0 auto;
}
.homeSupport-links a{
  display: inline-block;
  background: url(/img/home/btn_support.png) no-repeat;
	background-size: cover;
	width: 351px;
	height: 135px;
  color: inherit;
	text-align: center;
	text-decoration: none;
	font-size: 170%;
	margin-right: 100px;
	font-weight: bold;
}
body.is-pc .homeSupport-links a:hover{
  opacity: 0.8;
}
.homeSupport-links li:nth-child(2) a{
	margin-right: 0;
}
.homeSupport-links li span{
	display: block;
	padding: 48px 20px 0 0;
}


@media screen and (max-width:834px) {

  .homeSupport {
    padding-top: 6em;
    padding-bottom: 6em;
  }
  .homeSupport-box {
    padding: 3em 5%;
    max-width: 520px;
    margin: 0 auto;
  }
  .homeSupport-text {
    font-size: 116%;
    text-align: left;
    line-height: 1.8;
  }


  .homeSupport-link {
    padding-top: 2em;
    display: block;
  }
  .homeSupport-link-item {
    padding: 0.8em 0 ;
  }
  .homeSupport-btn {
    border-width: 2px;
    min-height: 4em;
    min-width: 14em;
    font-size: 131%;
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
  }


  .homeSupports{
  }
  .homeSupports-block{
    width: auto;
    padding: 5em 5vw 5em;
  }
  .homeSupports-text{
    font-size: 116%;
  }
  .homeSupport-links{
    padding: 2em 10px 2em;
    display: block;
    text-align: center;
  }
  .homeSupport-links a{
    background-size: 100% 100%;
    display: inline-block;
    width: 280px;
    height: 100px;
    color: inherit;
    text-align: center;
    text-decoration: none;
    font-size: 139%;
    margin-right: 0;
    font-weight: bold;
  }
  body.is-pc .homeSupport-links a:hover{
    opacity: 0.8;
  }
  .homeSupport-links li:nth-child(2) a{
    margin-right: 0;
    margin-top: 20px;
  }
  .homeSupport-links li span{
    padding: 32px 20px 0 0;
  }


}


/***********
xxxxx
************/
.homeArea {
  padding-top: 4em;
  padding-bottom: 4em;
  background-color: #f6f6f6;
}
.homeArea-title {
  font-size: 124%;
  font-weight: 500;
  padding-bottom: 0.5em;
}
.homeArea-list {
  display: flex;
  flex-wrap: wrap;
  line-height: 2;
}
.homeArea-list li:not(:last-child)::after{
  content: "/";
  padding: 0 0.4em;
  opacity: 0.5;
}
.homeArea-list li a {
  display: inline-block;
  color: inherit;
  text-decoration: none;
}

/***********
xxxxx
************/

/***********
xxxxx
************/

/***********
xxxxx
************/

/***********
xxxxx
************/


/***********
xxxxx
************/

/***********
xxxxx
************/

/***********
xxxxx
************/

/***********
xxxxx
************/

/***********
xxxxx
************/

/***********
xxxxx
************/
