/*! --------------------------------------------------------------
　　このCSSファイルは .scssファイルからコンパイルされたものです。
　　修正する際はscssファイルを編集するように注意してください。
--------------------------------------------------------------- */
.main_page {
  height: 30vh;
  background-color: #000;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  position: relative
}

@media(min-width: 1200px) {
  .main_page {
    padding-top: 80px
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  .main_page {
    padding-top: 60px
  }
}

@media(max-width: 767px) {
  .main_page {
    height: 20vh;
    padding-top: 16vw
  }
}

.main_page .pagettl {
  text-align: center
}

.main_page .pagettl span {
  display: block;
  font-size: 0.875rem;
  text-transform: uppercase
}

@media(max-width: 767px) {
  .main_page .pagettl span {
    font-size: 0.75rem
  }
}

.breadcrumbs {
  display: grid;
  place-items: center;
  height: 3rem;
  margin-bottom: -3rem;
  position: relative;
  z-index: 2;
  padding: .8rem 0
}

@media(max-width: 767px) {
  .breadcrumbs {
    height: 2rem;
    margin-bottom: -2rem
  }
}

.breadcrumbs ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center
}

.breadcrumbs ul li {
  font-size: 0.75rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  margin-right: .8em
}

@media(max-width: 767px) {
  .breadcrumbs ul li {
    font-size: 0.625rem
  }
}

.product_first {
  background: #0f170c url(images/product/bg_product01.png) right center/auto 100% no-repeat
}

.product_first h2.ttl_cmn2 {
  line-height: 2.5
}

.product_commit {
  background-color: #0f170c
}

.product_commit .colwrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem 2.7777777778%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .product_commit .colwrap {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .product_commit .colwrap {
    grid-template-columns: repeat(1, 1fr)
  }
}

.product_commit .colwrap .col figure {
  margin-bottom: .9rem
}

.product_commit .colwrap .col figure img {
  width: 100%;
  object-fit: cover
}

.product_list {
  background-color: #0f170c
}

.product_list ul li:not(:last-child) {
  margin-bottom: 2.5rem
}

.product_list ul li p.txt01 {
  margin-bottom: 1.5em
}

.reason_first {
  background: #0f170c url(images/reason/bg_reason01.png) right center/auto 100% no-repeat
}

.reason_first h2.ttl_cmn2 {
  line-height: 2.5
}

.reason_commit {
  background-color: #0f170c
}

.reason_commit .ttl01 {
  font-size: 1.5rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .05em;
  text-align: center;
  margin-bottom: 1em
}

@media(max-width: 767px) {
  .reason_commit .ttl01 {
    font-size: 1.125rem
  }
}

.reason_commit .ttl01 em {
  font-size: 3rem;
  line-height: 1
}

@media(max-width: 767px) {
  .reason_commit .ttl01 em {
    font-size: 1.875rem
  }
}

.reason_commit ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3.5rem 3.7037037037%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .reason_commit ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media(max-width: 767px) {
  .reason_commit ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

.reason_commit ul li figure {
  margin-bottom: 1.2rem;
  position: relative
}

@media(max-width: 767px) {
  .reason_commit ul li figure {
    margin-bottom: .6rem
  }
}

.reason_commit ul li figure img {
  width: 100%;
  object-fit: cover
}

.reason_commit ul li figure .num {
  font-size: 5.25rem;
  color: #fff;
  font-weight: 700;
  line-height: .9;
  position: absolute;
  bottom: .1em;
  left: .1em
}

@media(max-width: 767px) {
  .reason_commit ul li figure .num {
    font-size: 3rem
  }
}

@media(min-width: 1200px) {
  .reason_commit ul li:nth-child(even) {
    padding-top: 5rem
  }
}

.solid_first {
  background-color: #0f170c
}

.solid_first .over_cmn,
.solid_first .dl01,
.solid_first p.txt02:not(:last-child) {
  margin-bottom: 4.5rem
}

@media(max-width: 767px) {

  .solid_first .over_cmn,
  .solid_first .dl01,
  .solid_first p.txt02:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.solid_first .colwrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr)
}

.solid_first .colwrap .col {
  padding-right: 8%
}

.solid_first .side_cmn {
  margin-bottom: 1.5rem
}

dl.dl_cmn>div {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start
}

dl.dl_cmn>div:not(:last-child) {
  margin-bottom: .3rem
}

dl.dl_cmn>div dt {
  text-align: center
}

dl.dl_cmn.dl01 div {
  gap: 0 1.8rem
}

dl.dl_cmn.dl01 div dt,
dl.dl_cmn.dl01 div dd {
  font-size: 1.1875rem;
  font-weight: 700;
  line-height: 1.5
}

@media(max-width: 767px) {

  dl.dl_cmn.dl01 div dt,
  dl.dl_cmn.dl01 div dd {
    font-size: 0.875rem
  }
}

dl.dl_cmn.dl01 div dt {
  width: 80px;
  background-color: #c6b116;
  padding: 0em 0em
}

dl.dl_cmn.dl01 div dd {
  color: #fff
}

dl.dl_cmn.dl02 div {
  gap: 0 1.2rem
}

dl.dl_cmn.dl02 div dt,
dl.dl_cmn.dl02 div dd {
  color: #fff;
  font-weight: 700;
  line-height: 1.5
}

dl.dl_cmn.dl02 div dt {
  width: 46px;
  border: 1px solid currentColor;
  padding: .1em 0em;
  font-size: 0.875rem
}

@media(max-width: 767px) {
  dl.dl_cmn.dl02 div dt {
    font-size: 0.75rem
  }
}

dl.dl_cmn.dl02 div dd {
  font-size: 0.8125rem;
  padding-top: .2em
}

@media(max-width: 767px) {
  dl.dl_cmn.dl02 div dd {
    font-size: 0.75rem
  }
}

dl.dl_cmn.dl03 div {
  gap: 0 .8rem
}

dl.dl_cmn.dl03 div dt,
dl.dl_cmn.dl03 div dd {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5
}

@media(max-width: 767px) {

  dl.dl_cmn.dl03 div dt,
  dl.dl_cmn.dl03 div dd {
    font-size: 0.8125rem
  }
}

dl.dl_cmn.dl03 div dt {
  width: 80px;
  background-color: #ffb62e;
  border-radius: 100vmax;
  padding: 0em 0em
}

dl.dl_cmn.dl03 div dd {
  width: calc(100% - 80px - .8rem)
}

.handling_first {
  background-color: #0f170c
}

.handling_first h2.ttl_cmn2 {
  margin-bottom: 2.5em
}

.handling_first .side_cmn:not(:last-child) {
  margin-bottom: 2.5rem
}

.handling_first .side_cmn p.txt01 {
  line-height: 1.6;
  margin-bottom: 1.5em
}

.treeflow_first {
  background-color: #0f170c
}

.treeflow_first .plink_cmn {
  margin-bottom: 5rem
}

@media(max-width: 767px) {
  .treeflow_first .plink_cmn {
    margin-bottom: 2.5rem
  }
}

.plink_cmn ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: .8rem 2rem
}

.plink_cmn ul li a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  color: #fff
}

.plink_cmn ul li a p {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.5
}

.plink_cmn ul li a i {
  font-size: 0.5rem;
  margin-left: 1.2em
}

.plink_cmn.color_k ul li a {
  color: #0f170c
}

.plink_cmn.color_k ul li a p {
  font-size: 0.75rem
}

.treeflow_movie {
  background-color: #0f170c
}

.treeflow_movie .movie {
  width: 100%;
  max-width: 812px;
  margin-inline: auto;
  margin-bottom: 5rem;
  position: relative
}

@media(max-width: 767px) {
  .treeflow_movie .movie {
    margin-bottom: 2.5rem
  }
}

.treeflow_movie .movie::before {
  content: "";
  display: block;
  padding-top: 56.25%
}

.treeflow_movie .movie iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0
}

.treeflow_movie ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem 1.8518518519%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .treeflow_movie ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .treeflow_movie ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

.treeflow_movie ul li figure {
  margin-bottom: .3rem
}

.treeflow_movie ul li figure img {
  width: 100%;
  object-fit: cover
}

.treeflow_movie ul.col05 {
  grid-template-columns: repeat(5, 1fr)
}

@media(min-width: 768px)and (max-width: 1199px) {
  .treeflow_movie ul.col05 {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .treeflow_movie ul.col05 {
    grid-template-columns: repeat(1, 1fr)
  }
}

.treeflow_merit {
  background-color: #224d39
}

.treeflow_merit ul {
  max-width: 780px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4rem 3%;
  margin-inline: auto
}

@media(min-width: 768px)and (max-width: 1199px) {
  .treeflow_merit ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5rem 4%
  }
}

@media(max-width: 767px) {
  .treeflow_merit ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 2.5rem 4%
  }
}

.treeflow_merit ul li figure {
  margin-bottom: .8rem
}

.treeflow_merit ul li figure img {
  width: 100%;
  object-fit: cover
}

.treeflow_function {
  background-color: #0f170c
}

.treeflow_function .side_cmn:not(:last-child) {
  margin-bottom: 3rem
}

@media(max-width: 767px) {
  .treeflow_function .side_cmn:not(:last-child) {
    margin-bottom: 2rem
  }
}

.treeflow_function .ttl01 {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center
}

.treeflow_function .ttl01 em {
  font-size: 5.25rem;
  line-height: 1;
  margin-right: .2em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .treeflow_function .ttl01 em {
    font-size: 2.5rem
  }
}

@media(max-width: 767px) {
  .treeflow_function .ttl01 em {
    font-size: 2.25rem
  }
}

.treeflow_plan {
  background-color: #0f170c
}

.treeflow_plan .area {
  max-width: 646px;
  background-color: #fff;
  padding: 1.5rem 3%;
  margin-inline: auto;
  margin-bottom: .8rem
}

.treeflow_plan .area .wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0 .8rem
}

.treeflow_plan .area .wrap p.txt03 {
  display: inline-block;
  background-color: #c6b116;
  padding: .4em .8em
}

.treeflow_plan .area .wrap .plus {
  font-size: 1.5rem;
  line-height: 1;
  text-align: center
}

.treeflow_plan p.txt_sub {
  margin-bottom: 5rem
}

@media(max-width: 767px) {
  .treeflow_plan p.txt_sub {
    margin-bottom: 2.5rem
  }
}

.treeflow_plan p.txt04 {
  margin-bottom: 3rem
}

@media(max-width: 767px) {
  .treeflow_plan p.txt04 {
    margin-bottom: 2rem
  }
}

.treeflow_plan ul li {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  align-content: unset
}

.treeflow_plan ul li:not(:last-child) {
  padding-bottom: 3rem
}

.treeflow_plan ul li:last-child .rail::before {
  content: none
}

.treeflow_plan ul li .dt01 {
  width: 16%;
  display: grid;
  place-content: start center;
  margin-bottom: 0
}

@media(max-width: 767px) {
  .treeflow_plan ul li .dt01 {
    width: 26%
  }
}

.treeflow_plan ul li .rail {
  width: 6%
}

.treeflow_plan ul li .dd01 {
  width: 70%
}

@media(max-width: 767px) {
  .treeflow_plan ul li .dd01 {
    width: 60%
  }
}

.treeflow_plan .rail {
  position: relative
}

.treeflow_plan .rail::before,
.treeflow_plan .rail::after {
  content: "";
  position: absolute;
  top: 0%;
  left: 50%
}

.treeflow_plan .rail::before {
  width: 1px;
  height: calc(100% + 3rem);
  background-color: #fff;
  translate: -50% 8px
}

.treeflow_plan .rail::after {
  width: 16px;
  height: 16px;
  background-color: #c6b116;
  border-radius: 100vmax;
  translate: -50% 50%
}

.woodbe_first {
  background-color: #0f170c
}

.woodbe_first .plink_cmn {
  margin-bottom: 5rem
}

@media(max-width: 767px) {
  .woodbe_first .plink_cmn {
    margin-bottom: 2.5rem
  }
}

.woodbe_first .side_cmn {
  margin-bottom: 7rem
}

@media(max-width: 767px) {
  .woodbe_first .side_cmn {
    margin-bottom: 3.5rem
  }
}

.woodbe_first .colwrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 3.7037037037%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .woodbe_first .colwrap {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media(max-width: 767px) {
  .woodbe_first .colwrap {
    grid-template-columns: repeat(1, 1fr)
  }
}

.woodbe_first .colwrap .col figure {
  margin-bottom: .8rem
}

.woodbe_first .colwrap .col figure img {
  width: 100%;
  object-fit: cover
}

.woodbe_task {
  background-color: #0f170c
}

.woodbe_task p.txt01 {
  margin-bottom: 2em
}

.woodbe_task .img01 {
  margin-bottom: 5rem
}

@media(max-width: 767px) {
  .woodbe_task .img01 {
    margin-bottom: 2.5rem
  }
}

.woodbe_task .img01 img {
  width: 100%;
  object-fit: cover
}

.woodbe_logo {
  background-color: #224d39
}

.woodbe_logo ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem 4.0740740741%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .woodbe_logo ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .woodbe_logo ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

.woodbe_logo ul li figure {
  margin-bottom: .8rem
}

.woodbe_logo ul li figure img {
  width: 100%;
  object-fit: cover
}

.woodbe_flow .img01 img {
  width: 100%;
  object-fit: cover
}

.woodbe2_first {
  background: url(images/woodbe2/bg_wood01.jpg) center center/cover no-repeat;
  display: grid;
  place-content: center;
  position: relative
}

@media(min-width: 768px)and (max-width: 1199px) {
  .woodbe2_first .logo img {
    width: 50vw
  }
}

@media(max-width: 767px) {
  .woodbe2_first .logo img {
    width: 40vw
  }
}

.woodbe2_first .poalogo01 {
  width: 218px;
  aspect-ratio: 218/82;
  position: absolute;
  top: 5%;
  right: 3%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .woodbe2_first .poalogo01 {
    width: 25vw
  }
}

@media(max-width: 767px) {
  .woodbe2_first .poalogo01 {
    width: 20vw
  }
}

.woodbe2_content {
  background: url(images/woodbe2/bg_wood02.svg) top center/100% auto repeat-y;
  background-color: #ededed
}

.woodbe2_content .lump:not(:last-child) {
  padding-bottom: 6rem;
  margin-bottom: 6rem;
  position: relative
}

@media(min-width: 768px)and (max-width: 1199px) {
  .woodbe2_content .lump:not(:last-child) {
    padding-bottom: 3rem;
    margin-bottom: 3rem
  }
}

@media(max-width: 767px) {
  .woodbe2_content .lump:not(:last-child) {
    padding-bottom: 3rem;
    margin-bottom: 3rem
  }
}

.woodbe2_content .lump:not(:last-child)::after {
  content: "";
  width: 52px;
  height: 2px;
  background-color: #707070;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, -50%)
}

.woodbe2_content .lump .side_cmn:not(:last-child) {
  margin-bottom: 4.5rem
}

@media(max-width: 767px) {
  .woodbe2_content .lump .side_cmn:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.woodbe2_content .lump .moviewrap {
  margin-inline: auto;
  position: relative
}

.woodbe2_content .lump .moviewrap .head01 {
  max-width: 640px;
  background-color: #000;
  padding: .2em 2%;
  margin-inline: auto
}

.woodbe2_content .lump .moviewrap .movie {
  max-width: 640px;
  aspect-ratio: 16/9;
  margin-inline: auto;
  position: relative
}

.woodbe2_content .lump .moviewrap .movie iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0
}

.woodbe2_content .lump .moviewrap .circle01 {
  width: 245px;
  aspect-ratio: 245/237;
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(0%, -20%)
}

@media(min-width: 768px)and (max-width: 1199px) {
  .woodbe2_content .lump .moviewrap .circle01 {
    width: 20vw;
    transform: translate(25%, -25%)
  }
}

@media(max-width: 767px) {
  .woodbe2_content .lump .moviewrap .circle01 {
    width: 25vw;
    transform: translate(25%, -35%)
  }
}

.woodbe2_content .ttl_wood01 {
  width: fit-content;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  gap: 0 1rem;
  margin-bottom: 1.2rem
}

.woodbe2_content .ttl_wood01 .num {
  font-size: 6.25rem;
  font-weight: 700;
  line-height: 1
}

@media(min-width: 768px)and (max-width: 1199px) {
  .woodbe2_content .ttl_wood01 .num {
    font-size: 3.25rem
  }
}

@media(max-width: 767px) {
  .woodbe2_content .ttl_wood01 .num {
    font-size: 3rem
  }
}

.woodbe2_content .ttl_wood01 p {
  font-size: 1.625rem;
  font-weight: 900;
  line-height: 1.6
}

@media(min-width: 768px)and (max-width: 1199px) {
  .woodbe2_content .ttl_wood01 p {
    font-size: 1.25rem
  }
}

@media(max-width: 767px) {
  .woodbe2_content .ttl_wood01 p {
    font-size: 1.125rem
  }
}

@media(max-width: 767px) {
  .woodbe2_content .ttl_wood01 i img {
    width: 8vw
  }
}

.woodbe2_content .ttl_wood01.center {
  margin-inline: auto
}

.woodbe2_content .wrap01 {
  position: relative;
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .woodbe2_content .wrap01 {
    margin-bottom: 1.6rem
  }
}

.woodbe2_content .wrap01 .ul01 {
  max-width: 642px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem 5%;
  margin-inline: auto
}

@media(max-width: 767px) {
  .woodbe2_content .wrap01 .ul01 {
    gap: 1.2rem 4%
  }
}

.woodbe2_content .wrap01 .ul01 li {
  aspect-ratio: 1/1;
  display: grid;
  place-content: center;
  background-color: #fff;
  border: 1px solid #707070;
  border-radius: 100vmax;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center
}

@media(max-width: 767px) {
  .woodbe2_content .wrap01 .ul01 li {
    font-size: 0.875rem
  }
}

.woodbe2_content .wrap01 .circle02 {
  width: 245px;
  aspect-ratio: 245/237;
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(0%, -30%)
}

@media(min-width: 768px)and (max-width: 1199px) {
  .woodbe2_content .wrap01 .circle02 {
    width: 20vw;
    transform: translate(25%, -25%)
  }
}

@media(max-width: 767px) {
  .woodbe2_content .wrap01 .circle02 {
    width: 20vw;
    transform: translate(25%, -35%)
  }
}

.woodbe2_content .area01 {
  background-color: #fff;
  border-radius: 1.8rem;
  padding: 2rem 0 0
}

@media(max-width: 767px) {
  .woodbe2_content .area01 {
    padding: 1rem 1% .5rem
  }
}

.woodbe2_content .area01 figure img {
  width: 100%;
  object-fit: cover
}

.woodbe2_content .area02 {
  background-color: #fff;
  border: 1px solid #707070;
  border-radius: 1.8rem;
  padding: 1.8rem 4%
}

@media(max-width: 767px) {
  .woodbe2_content .area02 {
    padding: 1.2rem 4%
  }
}

.woodbe2_content .wrap02 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem 7.4074074074%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .woodbe2_content .wrap02 {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media(max-width: 767px) {
  .woodbe2_content .wrap02 {
    grid-template-columns: repeat(1, 1fr)
  }
}

.woodbe2_content .wrap02 .col figure {
  margin-bottom: .8rem
}

.woodbe2_content .wrap02 .col figure img {
  width: 100%;
  object-fit: cover
}

.woodbe2_content .wrap02 .col h4.ttl_cmn2 {
  margin-bottom: .5em
}

.woodbe2_content .wrap02 .col h4.ttl_cmn2 b {
  margin-left: .4em
}

.woodbe2_content .wrap02 .col h4.ttl_cmn2 b.c01 {
  color: #00ace0
}

.woodbe2_content .wrap02 .col h4.ttl_cmn2 b.c02 {
  color: #707070
}

.woodbe2_content .box01 {
  max-width: 780px;
  background-color: #fff;
  padding: 1.2rem 2%;
  box-shadow: 3px 3px 6px rgba(0, 0, 0, .5);
  margin-inline: auto
}

.woodbe2_content .box01 figure img {
  width: 100%;
  object-fit: cover
}

.trimmer_first {
  background-color: #0f170c
}

.trimmer_first .side_cmn:not(:last-child) {
  margin-bottom: 7rem
}

@media(max-width: 767px) {
  .trimmer_first .side_cmn:not(:last-child) {
    margin-bottom: 3.5rem
  }
}

.trimmer_tech {
  background-color: #0f170c
}

.trimmer_tech ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2.5rem 1.8518518519%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .trimmer_tech ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .trimmer_tech ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

.trimmer_tech ul li figure {
  margin-bottom: .4rem
}

.trimmer_tech ul li figure img {
  width: 100%;
  object-fit: cover
}

.trimmer_feature {
  background-color: #0f170c
}

.trimmer_feature ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem 1.8518518519%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .trimmer_feature ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .trimmer_feature ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

.trimmer_feature ul:not(:last-child) {
  margin-bottom: 7rem
}

@media(max-width: 767px) {
  .trimmer_feature ul:not(:last-child) {
    margin-bottom: 3.5rem
  }
}

.trimmer_feature ul li figure {
  margin-bottom: 1.2rem
}

@media(max-width: 767px) {
  .trimmer_feature ul li figure {
    margin-bottom: .6rem
  }
}

.trimmer_feature ul li figure img {
  width: 100%;
  object-fit: cover
}

.contact_form {
  background-color: #0f170c
}

.tbl_contact {
  width: 100%;
  max-width: 750px;
  margin-inline: auto;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0 2rem;
  margin-bottom: 3rem
}

@media(max-width: 767px) {
  .tbl_contact {
    margin-bottom: 1rem
  }
}

.tbl_contact .col_th {
  width: 35%
}

@media(max-width: 767px) {
  .tbl_contact .col_th {
    display: none
  }
}

.tbl_contact .col_td {
  width: 65%
}

@media(max-width: 767px) {
  .tbl_contact .col_td {
    display: none
  }
}

.tbl_contact th,
.tbl_contact td {
  font-weight: 700;
  line-height: 1.5
}

@media(max-width: 767px) {

  .tbl_contact th,
  .tbl_contact td {
    display: block
  }
}

.tbl_contact th {
  font-size: 1.125rem;
  color: #fff;
  line-height: 1.3;
  text-align: left;
  position: relative
}

@media(max-width: 767px) {
  .tbl_contact th {
    font-size: 0.875rem;
    padding-bottom: .4rem
  }
}

.tbl_contact td {
  font-size: 1rem
}

@media(max-width: 767px) {
  .tbl_contact td {
    font-size: 0.8125rem
  }
}

.tbl_contact .required::before,
.tbl_contact .any::before {
  border-radius: 3px;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1;
  padding: .2rem .4rem;
  margin-right: .5rem;
  position: relative;
  top: -0.1rem
}

@media(max-width: 767px) {

  .tbl_contact .required::before,
  .tbl_contact .any::before {
    padding: .1rem .5rem;
    margin-right: .3rem
  }
}

.tbl_contact .required::before {
  content: "必須";
  background-color: #ff6464;
  color: #fff
}

.tbl_contact .any::before {
  background-color: #f7f7f7;
  color: #41715b
}

.tbl_contact td input[type=text],
.tbl_contact td input[type=tel],
.tbl_contact td input[type=email],
.tbl_contact td input[type=date],
.tbl_contact td select {
  background: hsla(0, 0%, 100%, .8);
  border-radius: 5px;
  padding: 6px 5px
}

.tbl_contact td input[type=text],
.tbl_contact td input[type=email] {
  width: 100%
}

.tbl_contact td input[type=tel] {
  width: 100%
}

.tbl_contact td input[type=date] {
  width: 30%
}

.tbl_contact td select {
  width: 100%;
  background: hsla(0, 0%, 100%, .8);
  border-radius: 5px;
  padding: 8px 5px
}

.tbl_contact td input[type=file] {
  backdrop-filter: blur(20px);
  border-radius: 5px;
  padding: 3px 5px;
  color: #fff
}

.tbl_contact td textarea {
  width: 100%;
  height: 150px;
  background: hsla(0, 0%, 100%, .8);
  border-radius: 5px;
  padding: 5px
}

.tbl_contact td span.wpcf7-list-item {
  margin: 0 2em 0 0
}

.th_textarea {
  vertical-align: top
}

.th_textarea.required::before,
.th_textarea.any::before {
  top: .5rem
}

@media(max-width: 767px) {

  .th_textarea.required::before,
  .th_textarea.any::before {
    top: .3rem
  }
}

.btn_submit {
  display: table;
  margin: 0 auto;
  font-size: 0.9375rem;
  color: #fff;
  font-weight: 400;
  line-height: 1.5;
  position: relative
}

@media(max-width: 767px) {
  .btn_submit {
    font-size: 0.8125rem
  }
}

.btn_submit input[type=submit] {
  width: 298px;
  height: 66px;
  background-color: hsla(0, 0%, 100%, .5);
  text-align: center
}

@media(max-width: 767px) {
  .btn_submit input[type=submit] {
    width: 70vw;
    height: 3rem
  }
}

.btn_submit input[type=submit]:hover {
  transition: .3s ease
}

.btn_submit i {
  font-size: 0.75rem;
  color: #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 6%
}

.btn_submit input[type=submit][disabled] {
  opacity: .3
}

.btn_submit input[type=submit]:not([disabled]):hover {
  cursor: pointer;
  opacity: .8
}

.ajax-loader {
  display: none !important
}

.wpcf7-spinner {
  display: none !important
}

.thanks_first {
  background-color: #0f170c
}

.thanks_first p.txt01 {
  margin-bottom: 2.5em
}

@media(max-width: 767px) {
  .thanks_first p.txt01 {
    margin-bottom: 1.5em
  }
}

body.news .breadcrumbs {
  background-color: #0f170c;
  margin-bottom: 0
}

.bg_wrap02 {
  background: #0f170c url(images/news/bg_news01.jpg) center bottom/cover no-repeat
}

.bg_wrap02 .news_list {
  margin-bottom: 1rem
}

.wp-pagenavi {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  text-align: center
}

.wp-pagenavi a,
.wp-pagenavi span {
  width: 26px;
  height: 26px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  border-radius: 100vmax;
  font-size: 1.0625rem;
  font-weight: 600;
  font-family: "EB Garamond", serif;
  line-height: 1;
  white-space: nowrap;
  text-align: center;
  margin: 0 10px
}

@media(max-width: 767px) {

  .wp-pagenavi a,
  .wp-pagenavi span {
    width: 6vw;
    height: 6vw;
    font-size: 0.9375rem;
    margin: 0 5px
  }
}

.wp-pagenavi a:hover {
  opacity: .7
}

.wp-pagenavi span.current {
  background: #c6b116;
  color: #fff
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  font-size: 0.5rem;
  line-height: 1;
  text-align: center
}

@media(max-width: 767px) {

  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .nextpostslink {
    font-size: 0.5rem
  }
}

.blog_single {
  background-color: #0f170c
}

.blog_single:not(:last-child) {
  margin-bottom: 5rem
}

@media(max-width: 767px) {
  .blog_single:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.blog_single article>p:not(:last-child) {
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .blog_single article>p:not(:last-child) {
    margin-bottom: 1.5rem
  }
}

.blog_single h2,
.blog_single h3,
.blog_single h4,
.blog_single p,
.blog_single figcaption {
  font-family: "Zen Old Mincho", serif
}

.blog_single article>:is(.side_cmn, .area):not(:last-child) {
  margin-bottom: 2rem
}

@media(max-width: 767px) {
  .blog_single article>:is(.side_cmn, .area):not(:last-child) {
    margin-bottom: 1.5rem
  }
}

.blog_single h2:not(.ttl_post) {
  font-size: 2.25rem;
  color: #fff;
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: .6em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .blog_single h2:not(.ttl_post) {
    font-size: 1.5rem
  }
}

@media(max-width: 767px) {
  .blog_single h2:not(.ttl_post) {
    font-size: 1.375rem
  }
}

.blog_single h3:not(.ttl01) {
  font-size: 1.5rem;
  color: #fff;
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: .8em;
  position: relative
}

@media(min-width: 768px)and (max-width: 1199px) {
  .blog_single h3:not(.ttl01) {
    font-size: 1.25rem
  }
}

@media(max-width: 767px) {
  .blog_single h3:not(.ttl01) {
    font-size: 1.1875rem
  }
}

.blog_single h3:not(.ttl01)::before {
  content: url(images/index/dc_w.svg);
  display: inline-block;
  width: 7px;
  aspect-ratio: 1/1;
  margin-right: .5em;
  position: relative;
  top: -0.2em
}

.blog_single p {
  font-size: 1rem;
  color: #fff;
  font-weight: 400;
  line-height: 1.9
}

@media(max-width: 767px) {
  .blog_single p {
    font-size: 16px
  }
}

.blog_single article>figure {
  text-align: center
}

.blog_single article>figure:not(:last-child) {
  margin-bottom: 2.4rem
}

@media(max-width: 767px) {
  .blog_single article>figure:not(:last-child) {
    margin-bottom: 1.8rem
  }
}

.blog_single .btn_cmn {
  margin-top: 3.5rem
}

@media(max-width: 767px) {
  .blog_single .btn_cmn {
    margin-top: 2rem
  }
}

.proce_first {
  height: 80vh;
  overflow: hidden;
  z-index: 0;
  position: relative
}

@media(min-width: 1200px) {
  .proce_first {
    min-height: 440px
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  .proce_first {
    height: 50vh
  }
}

@media(max-width: 767px) {
  .proce_first {
    height: 50vh
  }
}

.proce_first video {
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1
}

.proce_first .txtlayer {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2
}

.proce_first .txtlayer .inner {
  height: 100%;
  display: grid;
  place-content: center
}

.proce_first .txtlayer .inner .ttl01 {
  font-size: 2.4375rem;
  color: #fff;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: .12em;
  text-align: center
}

@media(min-width: 768px)and (max-width: 1199px) {
  .proce_first .txtlayer .inner .ttl01 {
    font-size: 1.75rem
  }
}

@media(max-width: 767px) {
  .proce_first .txtlayer .inner .ttl01 {
    font-size: 1.5rem
  }
}

.proce_first .we_logo {
  width: 70vh
}

.proce_earth {
  background-color: #0f170c;
  padding: 1.2rem 0 2.2rem
}

.proce_earth .bgwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch
}

.proce_earth .bgwrap :is(.bg01, .bg02, .bg03) img {
  width: 100%;
  object-fit: cover
}

.proce_earth .bgwrap .bg01 {
  width: 33.33%
}

@media(max-width: 767px) {
  .proce_earth .bgwrap .bg01 {
    width: 50%;
    order: 2
  }
}

.proce_earth .bgwrap .bg02 {
  width: 33.33%
}

@media(max-width: 767px) {
  .proce_earth .bgwrap .bg02 {
    width: 100%;
    order: 1
  }
}

.proce_earth .bgwrap .bg03 {
  width: 33.33%
}

@media(max-width: 767px) {
  .proce_earth .bgwrap .bg03 {
    width: 50%;
    order: 3
  }
}

.proce_earth .mdlline {
  padding: 2.6rem 0 3rem
}

@media(max-width: 767px) {
  .proce_earth .mdlline {
    padding: 1.5rem 0 2rem
  }
}

.proce_feature {
  background: url(images/processing/bg_feature01.jpg) center top/cover no-repeat
}

.proce_feature .ttl_line {
  background: url(images/processing/ttldeco_l.svg) left bottom 15% no-repeat, url(images/processing/ttldeco_r.svg) right bottom 15% no-repeat;
  font-weight: 900;
  position: relative
}

@media(min-width: 768px)and (max-width: 1199px) {
  .proce_feature .ttl_line {
    padding-bottom: .5em
  }
}

@media(max-width: 767px) {
  .proce_feature .ttl_line {
    padding-bottom: .5em
  }
}

.proce_feature .ul01 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2.5rem 2.4074074074%;
  margin-bottom: 3.5rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .proce_feature .ul01 {
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 2.5rem
  }
}

@media(max-width: 767px) {
  .proce_feature .ul01 {
    grid-template-columns: repeat(1, 1fr);
    margin-bottom: 2.5rem
  }
}

.proce_feature .ul01 li figure {
  margin-bottom: .8rem
}

.proce_feature .ul01 li figure img {
  width: 100%;
  object-fit: cover
}

.proce_feature .ul01 li h3.txt_cmn {
  font-weight: 700;
  line-height: 1.6;
  padding-left: 1em;
  margin-bottom: -0.5em
}

@media(max-width: 767px) {
  .proce_feature .ul01 li h3.txt_cmn {
    padding-left: 1.8em;
    margin-bottom: -2.5em
  }
}

.proce_feature .ul01 li .box {
  width: 100%;
  aspect-ratio: 251/146;
  background: url(images/processing/bg_star5.svg) center center/100% auto no-repeat;
  padding: 1rem 8%
}

@media(max-width: 767px) {
  .proce_feature .ul01 li .box {
    padding: 3rem 8% 1rem
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  .proce_feature .side_cmn figure {
    width: 100%;
    margin-bottom: 1rem
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  .proce_feature .side_cmn .txt {
    width: 100%
  }
}

.proce_feature .ul02 li {
  font-size: 1.3125rem;
  color: #60431d;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: .15em
}

@media(max-width: 767px) {
  .proce_feature .ul02 li {
    font-size: 0.9375rem
  }
}

.proce_feature .ul02 li i {
  margin-right: 1rem
}

@media(max-width: 767px) {
  .proce_feature .ul02 li i {
    margin-right: .5rem
  }
}

@media(max-width: 767px) {
  .proce_feature .ul02 li i img {
    width: 8vw
  }
}

.proce_feature .ul02 li:not(:last-child) {
  margin-bottom: 1.1rem
}

.ttl_deco_w {
  background: url(images/processing/ttldeco_t_w.svg) center top no-repeat, url(images/processing/ttldeco_b_w.svg) center bottom no-repeat;
  font-weight: 700;
  padding: .7em 0
}

.ttl_deco_br {
  background: url(images/processing/ttldeco_t_br.svg) center top no-repeat, url(images/processing/ttldeco_b_br.svg) center bottom no-repeat;
  font-weight: 700;
  padding: .7em 0
}

.proce_food {
  background: url(images/processing/bg_food01.jpg) center center/cover no-repeat
}

.proce_food .ttl01 {
  background: url(images/processing/ttldeco_r_w.svg) right bottom 15% no-repeat;
  position: relative
}

@media(min-width: 768px)and (max-width: 1199px) {
  .proce_food .ttl01 {
    padding-bottom: .4em
  }
}

@media(max-width: 767px) {
  .proce_food .ttl01 {
    padding-bottom: .4em
  }
}

.proce_food ul {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 1.2rem 1.2962962963%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .proce_food ul {
    grid-template-columns: repeat(3, 1fr)
  }
}

@media(max-width: 767px) {
  .proce_food ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

.proce_food ul:not(:last-child) {
  margin-bottom: 2.4rem
}

.proce_food ul li figure {
  margin-bottom: .3rem
}

.proce_food ul li figure img {
  width: 100%;
  object-fit: cover
}

.proce_food ul li p.txt01 {
  line-height: 1.3
}

.proce_avail {
  background: url(images/processing/bg_feature01.jpg) center top/100% auto repeat-y
}

.proce_avail ul li:not(:last-child) {
  margin-bottom: 2.5rem
}

.proce_avail ul li figure {
  box-shadow: 3px 3px 6px rgba(0, 0, 0, .5)
}

.proce_avail ul li figure img {
  width: 100%;
  object-fit: cover
}

.proce_avail ul li p.txt01 {
  margin-bottom: 2em
}

.proce_result {
  background-color: #0f170c
}

.proce_result ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem 1.8518518519%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .proce_result ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .proce_result ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

.proce_result ul li figure {
  margin-bottom: .2rem
}

.proce_result ul li figure img {
  width: 100%;
  object-fit: cover
}

.proce_result ul li p.txt01 {
  line-height: 1.3
}

body.kilty .breadcrumbs {
  background-color: #0f170c;
  margin-bottom: 0
}

.kilty_first {
  aspect-ratio: 1440/1017;
  background: #fdfcef url(images/kilty/bg_main01.png) center top/cover no-repeat
}

@media(min-width: 1200px) {
  .kilty_first {
    min-height: 600px;
    margin-bottom: -5rem
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  .kilty_first {
    aspect-ratio: 1/1
  }
}

@media(max-width: 767px) {
  .kilty_first {
    aspect-ratio: 1/1
  }
}

.kilty_first .inner {
  height: 100%;
  display: grid;
  place-content: center
}

@media(min-width: 768px)and (max-width: 1199px) {
  .kilty_first .inner .ttl01 img {
    width: 40vw
  }
}

@media(max-width: 767px) {
  .kilty_first .inner .ttl01 img {
    width: 50vw
  }
}

.kilty_content {
  background-color: #fdfcef
}

.kilty_content .lump {
  border-top: 2px dashed #432900;
  padding: 5rem 0
}

@media(max-width: 767px) {
  .kilty_content .lump {
    padding: 2.5rem 0
  }
}

.kilty_content .ttl11 {
  margin-bottom: 2.5em
}

.kilty_content .circle {
  display: grid;
  place-content: center;
  width: 294px;
  aspect-ratio: 1/1;
  background: url(images/kilty/bg_circle01.png) center center/100% auto no-repeat;
  border: 2px solid #432900;
  border-radius: 100vmax;
  margin-inline: auto;
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .kilty_content .circle {
    width: 50vw;
    margin-bottom: 2rem
  }
}

.kilty_content .circle i {
  text-align: center;
  margin-bottom: .4rem
}

.kilty_content .circle h4.ttl_cmn2 {
  margin-bottom: 0
}

.kilty_content p.txt01 {
  line-height: 2.5;
  margin-bottom: 3rem
}

@media(max-width: 767px) {
  .kilty_content p.txt01 {
    margin-bottom: 2rem
  }
}

.kilty_content .img01 {
  text-align: center
}

.kilty_content .ul01 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem 5.5555555556%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .kilty_content .ul01 {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .kilty_content .ul01 {
    grid-template-columns: repeat(1, 1fr)
  }
}

.kilty_content .ul01 li h5.ttl_cmn2 {
  margin-bottom: .4em
}

.kilty_content .ul01 li .box {
  background-color: #432900;
  border-radius: 10px;
  padding: 1.6rem 6% 1rem;
  position: relative;
  z-index: 1
}

.kilty_content .ul01 li .box::before {
  content: "";
  width: 56px;
  aspect-ratio: 56/65;
  background: url(images/kilty/leaf_br.svg) center center/100% auto no-repeat;
  position: absolute;
  bottom: calc(100% - 4px);
  right: calc(100% - 6px)
}

.kilty_content .ul01 li .box figure {
  margin-bottom: .8rem
}

.kilty_content .ul01 li .box figure img {
  width: 100%;
  object-fit: cover
}

.kilty_content .ul02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 4.5rem 2.7777777778%
}

@media(max-width: 767px) {
  .kilty_content .ul02 {
    gap: 2.5rem 6%
  }
}

.kilty_content .ul02 li {
  width: 31.4814814815%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .kilty_content .ul02 li {
    width: 47%
  }
}

@media(max-width: 767px) {
  .kilty_content .ul02 li {
    width: 47%
  }
}

.kilty_content .ul02 li figure {
  margin-bottom: .6rem
}

.kilty_content .ul02 li figure img {
  width: 100%;
  object-fit: cover
}

.kilty_add {
  background: #fdfcef url(images/kilty/bg_kilty02.png) center center/cover no-repeat
}

.kilty_add h2.ttl_cmn {
  font-weight: 700;
  line-height: 1.6
}

body.furusute .breadcrumbs {
  background-color: #0f170c;
  margin-bottom: 0
}

.furusute_main figure img {
  width: 100%;
  object-fit: cover
}

.furusute_trouble {
  background-color: #f8a4ab
}

.furusute_trouble .ul01 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.2rem 1.8518518519%;
  margin-bottom: 2rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .furusute_trouble .ul01 {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .furusute_trouble .ul01 {
    grid-template-columns: repeat(2, 1fr)
  }
}

.furusute_trouble .ul01 li {
  background-color: #fff;
  border-radius: 1.2rem;
  padding: 1.2rem 5%
}

.furusute_trouble .ul01 li figure {
  margin-bottom: .7rem
}

.furusute_trouble .ul01 li figure img {
  width: 100%;
  object-fit: cover
}

.furusute_trouble .man01 {
  text-align: center;
  margin-bottom: -2rem
}

@media(max-width: 767px) {
  .furusute_trouble .man01 img {
    width: 50vw
  }
}

.furusute_trouble .area {
  background-color: #fff;
  border-radius: 1.8rem;
  padding: 5rem 6% 3rem
}

@media(max-width: 767px) {
  .furusute_trouble .area {
    padding: 3.5rem 4% 2rem
  }
}

.furusute_trouble .area p.txt02 {
  line-height: 2.1;
  margin-bottom: 2.5em
}

@media(max-width: 767px) {
  .furusute_trouble .area p.txt02 {
    line-height: 1.7;
    margin-bottom: 1.8em
  }
}

.furusute_trouble .area .imgwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 3rem 8%;
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .furusute_trouble .area .imgwrap {
    margin-bottom: 2rem
  }
}

.furusute_trouble .area .imgwrap figure {
  width: 45%
}

@media(max-width: 767px) {
  .furusute_trouble .area .imgwrap figure {
    width: 100%
  }
}

.furusute_trouble .area .imgwrap figure:not(:last-child) {
  position: relative
}

.furusute_trouble .area .imgwrap figure:not(:last-child)::after {
  content: "";
  width: 32px;
  height: 56px;
  background-color: #f8a4ab;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  position: absolute;
  top: 50%;
  left: calc(100% + 2rem)
}

@media(max-width: 767px) {
  .furusute_trouble .area .imgwrap figure:not(:last-child)::after {
    top: calc(100% + 0rem);
    left: 50%;
    translate: -50% 0;
    rotate: 90deg
  }
}

.furusute_trouble .area .imgwrap figure img {
  width: 100%;
  object-fit: cover
}

.furusute_trouble .area .box {
  border: 5px solid #e24a56;
  border-radius: 1.2rem;
  padding: 1.8rem 6% 3rem
}

@media(max-width: 767px) {
  .furusute_trouble .area .box {
    border: 2px solid #e24a56;
    padding: 1.6rem 4% 2rem
  }
}

.furusute_trouble .area .box h4.ttl_cmn2 {
  color: #e24a56;
  margin-bottom: 1.5em
}

.furusute_trouble .area .box .colwrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 5%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .furusute_trouble .area .box .colwrap {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media(max-width: 767px) {
  .furusute_trouble .area .box .colwrap {
    grid-template-columns: repeat(1, 1fr)
  }
}

.furusute_trouble .ul02 li {
  line-height: 1.5rem
}

.furusute_trouble .ul02 li:not(:last-child) {
  margin-bottom: .5rem
}

.furusute_trouble .ul02 li i {
  font-size: 1.125rem;
  color: #ffb62e;
  margin-right: .5em
}

.furusute_trouble .colwrap .right {
  background-color: rgba(248, 164, 171, .25);
  border-radius: 1.2rem;
  padding: 2rem 5%
}

.furusute_flow {
  background-color: #ffb62e
}

.furusute_flow h3.ttl_cmn2 span {
  background-color: #ffb62e
}

.furusute_flow ul li {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  align-content: unset
}

.furusute_flow ul li:not(:last-child) {
  padding-bottom: 4rem
}

.furusute_flow ul li:last-child .rail::before {
  content: none
}

.furusute_flow ul li .dt01 {
  width: 26%;
  margin-bottom: 0
}

@media(max-width: 767px) {
  .furusute_flow ul li .dt01 {
    width: 38%
  }
}

.furusute_flow ul li .dt01 span {
  font-size: 0.75rem;
  color: #fff;
  font-weight: 700;
  margin-right: 1.5em;
  position: relative;
  top: -0.1em
}

@media(max-width: 767px) {
  .furusute_flow ul li .dt01 span {
    font-size: 0.625rem;
    margin-right: .5em
  }
}

.furusute_flow ul li .rail {
  width: 6%
}

@media(max-width: 767px) {
  .furusute_flow ul li .rail {
    width: 4%
  }
}

.furusute_flow ul li .dd01 {
  width: 60%
}

@media(max-width: 767px) {
  .furusute_flow ul li .dd01 {
    width: 50%
  }
}

.furusute_flow .rail {
  position: relative
}

.furusute_flow .rail::before,
.furusute_flow .rail::after {
  content: "";
  position: absolute;
  top: 0%;
  left: 50%
}

.furusute_flow .rail::before {
  width: 1px;
  height: calc(100% + 4rem);
  background-color: #000;
  translate: -50% 8px
}

.furusute_flow .rail::after {
  width: 16px;
  height: 16px;
  background-color: #fff;
  border-radius: 100vmax;
  translate: -50% 50%
}

.furu_voice {
  background-color: #f8a4ab
}

.furu_voice .area {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem 2%;
  background-color: #fff;
  border-radius: .6rem;
  padding: 1.5rem 4%;
  margin-bottom: 3.5rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .furu_voice .area {
    margin-bottom: 2rem
  }
}

@media(max-width: 767px) {
  .furu_voice .area {
    margin-bottom: 2rem
  }
}

.furu_voice .area .left {
  width: 44%
}

@media(max-width: 767px) {
  .furu_voice .area .left {
    width: 100%
  }
}

.furu_voice .area .left h5 {
  margin-bottom: 2.2em
}

@media(max-width: 767px) {
  .furu_voice .area .left h5 {
    margin-bottom: 1.5em
  }
}

.furu_voice .area .middle {
  width: 13%
}

@media(max-width: 767px) {
  .furu_voice .area .middle {
    width: 100%
  }
}

.furu_voice .area .middle .img01 {
  text-align: center;
  margin-bottom: .6rem
}

.furu_voice .area .middle .triangle {
  width: 18px;
  height: 32px;
  background-color: #f8a4ab;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  margin-inline: auto
}

@media(max-width: 767px) {
  .furu_voice .area .middle .triangle {
    rotate: 90deg
  }
}

.furu_voice .area .right {
  width: 35%
}

@media(max-width: 767px) {
  .furu_voice .area .right {
    width: 100%
  }
}

.furu_voice .area .right p.txt01 {
  max-width: 360px;
  color: #e24a56;
  line-height: 1.8;
  margin-inline: auto
}

.furu_voice .ul01 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.2rem 1.8518518519%;
  margin-bottom: 2rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .furu_voice .ul01 {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .furu_voice .ul01 {
    grid-template-columns: repeat(2, 1fr);
    gap: .8rem 3%
  }
}

.furu_voice .ul01 li {
  background-color: #fff;
  border-radius: 1.2rem;
  padding: 1.2rem 5%
}

.town_first {
  background-color: #0f170c
}

.town_first .side_cmn:not(:last-child) {
  margin-bottom: 4.5rem
}

@media(max-width: 767px) {
  .town_first .side_cmn:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.town_feature {
  background: #0f170c url(images/hometown/bg_hometown01.png) center center/cover no-repeat
}

.town_feature ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr)
}

@media(min-width: 768px)and (max-width: 1199px) {
  .town_feature ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media(max-width: 767px) {
  .town_feature ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

.town_feature ul li {
  padding: 1.5rem 12%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .town_feature ul li {
    padding: 1.5rem 5%
  }
}

@media(max-width: 767px) {
  .town_feature ul li {
    padding: 1.5rem 4%
  }
}

@media(min-width: 1200px) {
  .town_feature ul li:not(:last-child) {
    border-right: 1px solid #fff
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  .town_feature ul li:not(:last-child) {
    border-bottom: 1px solid #fff
  }
}

@media(max-width: 767px) {
  .town_feature ul li:not(:last-child) {
    border-bottom: 1px solid #fff
  }
}

.town_project {
  background-color: #0f170c
}

.town_project .unit:not(:last-child) {
  margin-bottom: 5rem
}

@media(max-width: 767px) {
  .town_project .unit:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.town_project .unit .side_cmn p.txt01:not(:last-child) {
  margin-bottom: 2em
}

.town_project ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 3rem 1.8518518519%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .town_project ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .town_project ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

.town_project ul li figure {
  margin-bottom: 1rem;
  position: relative
}

@media(max-width: 767px) {
  .town_project ul li figure {
    margin-bottom: .6rem
  }
}

.town_project ul li figure img {
  width: 100%;
  object-fit: cover
}

.town_project ul li figure .num {
  font-size: 3rem;
  color: #c4c4c4;
  font-weight: 700;
  line-height: .9;
  position: absolute;
  top: .1em;
  left: .1em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .town_project ul li figure .num {
    font-size: 1.75rem
  }
}

@media(max-width: 767px) {
  .town_project ul li figure .num {
    font-size: 1.5rem
  }
}

.town_project ul li h3.ttl_cmn2 {
  margin-bottom: .5em
}

.town_project .img01 img {
  width: 100%;
  object-fit: cover
}

.town_project .audio01 {
  display: block;
  margin-inline: auto;
  margin-bottom: 3rem
}

.town_project .colwrap {
  max-width: 940px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 5%;
  margin-inline: auto;
  margin-bottom: 2.5rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .town_project .colwrap {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media(max-width: 767px) {
  .town_project .colwrap {
    grid-template-columns: repeat(1, 1fr)
  }
}

.town_project .colwrap p.txt04 {
  margin-top: 1rem
}

.town_project .colwrap02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 2rem 0%;
  margin-bottom: 3.5rem
}

.town_project .colwrap02 .col:not(.movie) {
  width: 45.0925925926%
}

@media(max-width: 767px) {
  .town_project .colwrap02 .col:not(.movie) {
    width: 100%
  }
}

.town_project .colwrap02 .col.movie {
  width: 50%
}

@media(max-width: 767px) {
  .town_project .colwrap02 .col.movie {
    width: 100%
  }
}

.town_project .colwrap03 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 2rem 0%
}

.town_project .colwrap03 .col:not(.movie) {
  width: 36.7592592593%
}

@media(max-width: 767px) {
  .town_project .colwrap03 .col:not(.movie) {
    width: 100%
  }
}

.town_project .colwrap03 .col.movie {
  width: 58.7962962963%
}

@media(max-width: 767px) {
  .town_project .colwrap03 .col.movie {
    width: 100%
  }
}

.town_project .movie {
  position: relative
}

.town_project .movie::before {
  content: "";
  display: block;
  padding-top: 56.25%
}

.town_project .movie iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0
}

.about_first {
  background: url(images/about/bg_about01.png) center center/cover no-repeat;
  position: relative
}

.about_first::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .7);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0
}

.about_first .plink_cmn {
  margin-bottom: 2rem
}

.about_first h2.ttl_cmn2 {
  line-height: 2.4
}

.about_philo {
  background-color: #224d39
}

.about_philo ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr)
}

@media(min-width: 768px)and (max-width: 1199px) {
  .about_philo ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media(max-width: 767px) {
  .about_philo ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

.about_philo ul li {
  display: grid;
  place-content: center;
  padding: 1.5rem 6%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .about_philo ul li {
    padding: 1.5rem 5%
  }
}

@media(max-width: 767px) {
  .about_philo ul li {
    padding: 1.5rem 4%
  }
}

@media(min-width: 1200px) {
  .about_philo ul li:not(:last-child) {
    border-right: 1px solid #fff
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  .about_philo ul li:not(:last-child) {
    border-bottom: 1px solid #fff
  }
}

@media(max-width: 767px) {
  .about_philo ul li:not(:last-child) {
    border-bottom: 1px solid #fff
  }
}

.about_philo ul li p.txt01 {
  line-height: 2.5
}

.about_quality {
  background-color: #0f170c
}

.about_quality ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 1.2rem 2.7777777778%
}

.about_quality ul li {
  width: 31.4814814815%;
  background-color: rgba(34, 77, 57, .5);
  padding: 2.2rem 4%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .about_quality ul li {
    width: 46%
  }
}

@media(max-width: 767px) {
  .about_quality ul li {
    width: 46%;
    padding: 1.5rem 3%
  }
}

.about_quality ul li h3.ttl_cmn2 {
  font-weight: 400;
  margin-bottom: .5em
}

.about_guide {
  background-color: #0f170c
}

.about_guide .side_cmn figure p.txt_sub {
  text-align: right;
  margin-top: .5em
}

.about_guide .side_cmn p.txt02 {
  font-weight: 400
}

.about_greeting {
  background-color: #0f170c
}

.about_history {
  background-color: #224d39
}

.about_history .colwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 2rem 0
}

.about_history .colwrap .txt {
  width: 66.2037037037%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .about_history .colwrap .txt {
    width: 100%
  }
}

@media(max-width: 767px) {
  .about_history .colwrap .txt {
    width: 100%
  }
}

.about_history .colwrap .img {
  width: 30.0925925926%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .about_history .colwrap .img {
    width: 100%
  }
}

@media(max-width: 767px) {
  .about_history .colwrap .img {
    width: 100%
  }
}

.about_history .colwrap .img figure:not(:last-child) {
  margin-bottom: 2.5rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .about_history .colwrap .img figure:not(:last-child) {
    margin-bottom: 1.8rem
  }
}

@media(max-width: 767px) {
  .about_history .colwrap .img figure:not(:last-child) {
    margin-bottom: 1.2rem
  }
}

.about_history ul li {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  align-content: unset
}

.about_history ul li:not(:last-child) {
  padding-bottom: 4rem
}

@media(max-width: 767px) {
  .about_history ul li:not(:last-child) {
    padding-bottom: 2.5rem
  }
}

.about_history ul li:last-child .rail::before {
  content: none
}

.about_history ul li .dt01 {
  width: 26%;
  margin-bottom: 0
}

@media(max-width: 767px) {
  .about_history ul li .dt01 {
    width: 34%
  }
}

.about_history ul li .rail {
  width: 6%
}

.about_history ul li .dd01 {
  width: 64%
}

@media(max-width: 767px) {
  .about_history ul li .dd01 {
    width: 56%
  }
}

.about_history .rail {
  position: relative
}

.about_history .rail::before,
.about_history .rail::after {
  content: "";
  position: absolute;
  top: 0%;
  left: 50%
}

.about_history .rail::before {
  width: 1px;
  height: calc(100% + 4rem);
  background-color: #fff;
  translate: -50% 8px
}

@media(max-width: 767px) {
  .about_history .rail::before {
    height: calc(100% + 2.5rem)
  }
}

.about_history .rail::after {
  width: 16px;
  height: 16px;
  background-color: #c6b116;
  border-radius: 100vmax;
  translate: -50% 50%
}

.about_overview {
  background-color: #0f170c
}

.about_overview dl {
  margin-bottom: 6rem
}

@media(max-width: 767px) {
  .about_overview dl {
    margin-bottom: 3rem
  }
}

.about_overview dl>div {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: stretch;
  padding: 1rem 0%
}

.about_overview dl>div:nth-child(odd) {
  background-color: rgba(34, 77, 57, .5)
}

.about_overview dl>div dt,
.about_overview dl>div dd {
  font-size: 1rem;
  color: #fff;
  font-weight: 400;
  line-height: 1.5
}

@media(max-width: 767px) {

  .about_overview dl>div dt,
  .about_overview dl>div dd {
    font-size: 0.8125rem
  }
}

.about_overview dl>div dt {
  width: 25%;
  padding-left: 1em
}

.about_overview dl>div dd {
  width: 75%
}

.about_overview .ul01 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem 1.8518518519%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .about_overview .ul01 {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .about_overview .ul01 {
    grid-template-columns: repeat(1, 1fr)
  }
}

.about_overview .ul01:not(:last-child) {
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .about_overview .ul01:not(:last-child) {
    margin-bottom: 2rem
  }
}

.about_overview .ul01 li figure {
  margin-bottom: .6rem
}

.about_overview .ul01 li figure img {
  width: 100%;
  object-fit: cover
}

.ate_first figure img {
  width: 100%;
  object-fit: cover
}

.ate_overview p.txt_sub {
  width: fit-content;
  background-color: #f5f4f3;
  border-radius: 100vmax;
  padding: .2em .5em;
  margin-inline: auto;
  margin-bottom: 1em
}

.ate_overview h2.ttl_cmn2 {
  margin-bottom: 3.5em
}

@media(max-width: 767px) {
  .ate_overview h2.ttl_cmn2 {
    margin-bottom: 2.5em
  }
}

.ate_icns {
  background-color: #f5f4f3;
  padding: 2.5rem 0
}

.ate_icns ul {
  max-width: 860px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem 5%;
  margin-inline: auto
}

@media(min-width: 768px)and (max-width: 1199px) {
  .ate_icns ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .ate_icns ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

.ate_icns ul li figure {
  margin-bottom: .9rem
}

.ate_icns ul li figure img {
  width: 100%;
  object-fit: cover
}

.ate_artist ul li {
  position: relative
}

.ate_artist ul li::before {
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(15, 23, 12, 0) 0%, rgba(15, 23, 12, 0) 55%, #0f170c 100%);
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 0
}

.ate_artist ul li figure img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.ate_artist ul li p.name {
  text-align: left;
  position: absolute;
  bottom: .5rem;
  left: .5rem;
  z-index: 2
}

.ate_artist ul li p.name span {
  display: block;
  font-size: 0.625rem;
  line-height: 1.3
}

@media(max-width: 767px) {
  .ate_artist ul li p.name span {
    font-size: 0.5rem
  }
}

.ate_artist .btn_cmn {
  margin-top: 2.5rem
}

@media(max-width: 767px) {
  .ate_artist .btn_cmn {
    margin-top: 1.5rem
  }
}

.ate_artist .slick-slider {
  line-height: 0
}

.ate_artist .slick-slider .slick-slide {
  margin-inline: 0vw
}

.ate_purpose ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr)
}

@media(min-width: 768px)and (max-width: 1199px) {
  .ate_purpose ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media(max-width: 767px) {
  .ate_purpose ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media(min-width: 1200px) {
  .ate_purpose ul li h3.ttl_cmn2 {
    min-height: 3em
  }
}

.ate_item ul {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 2.4rem 1.8518518519%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .ate_item ul {
    grid-template-columns: repeat(3, 1fr)
  }
}

@media(max-width: 767px) {
  .ate_item ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

.ate_item ul li figure {
  margin-bottom: .5rem
}

.ate_item ul li figure img {
  width: 100%;
  object-fit: cover
}

.ate_item ul li p.txt_cmn span {
  display: block;
  font-size: 0.875rem;
  line-height: 1.3
}

@media(max-width: 767px) {
  .ate_item ul li p.txt_cmn span {
    font-size: 0.75rem
  }
}

body.plan .breadcrumbs ul li {
  color: #0f170c
}

.plan_mainimg {
  height: 70vh
}

@media(min-width: 1200px) {
  .plan_mainimg {
    min-height: 600px
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  .plan_mainimg {
    height: 40vh
  }
}

@media(max-width: 767px) {
  .plan_mainimg {
    height: 40vh
  }
}

.plan_mainimg img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.plan_about .ttl01 {
  width: 100%;
  max-width: 565px;
  letter-spacing: .3em;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1rem;
  margin-inline: auto
}

.plan_about .line-left,
.plan_about .line-right {
  flex-grow: 1;
  height: 1px;
  background-color: currentColor;
  position: relative
}

.plan_about .line-left::before,
.plan_about .line-right::before {
  content: "";
  width: 1px;
  height: 10px;
  background-color: currentColor;
  position: absolute;
  top: -5px
}

.plan_about .line-left {
  margin-right: 15px
}

.plan_about .line-left::before {
  left: 0
}

.plan_about .line-right {
  margin-left: 15px
}

.plan_about .line-right::before {
  right: 0
}

.plan_about p.txt01 {
  margin-bottom: 1.5em
}

.plan_about .logo {
  text-align: center;
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .plan_about .logo {
    margin-bottom: 2rem
  }
}

.plan_about .tabwrap {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  gap: 0 2%;
  margin-bottom: 4rem
}

@media(max-width: 767px) {
  .plan_about .tabwrap {
    margin-bottom: 2rem
  }
}

.plan_about .tabwrap .tab {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  border: 1px solid currentColor;
  background-color: #fff;
  padding: .5em 3.5em;
  cursor: pointer
}

@media(max-width: 767px) {
  .plan_about .tabwrap .tab {
    padding: .5em 1em
  }
}

.plan_about .tabwrap .tab.is-active {
  background-color: #0f170c;
  color: #fff;
  transition: all .6s
}

.plan_about .tabwrap .tab p {
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center
}

.plan_about .panelwrap .panel {
  display: none
}

.plan_about .panelwrap .panel.is-show {
  display: block
}

.plan_about .wrap_illust {
  position: relative
}

.plan_about .wrap_illust figure img {
  width: 100%;
  object-fit: cover
}

@media(min-width: 1200px) {
  .plan_about .wrap_illust .btnwrap {
    display: contents
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  .plan_about .wrap_illust .btnwrap {
    display: contents
  }
}

@media(max-width: 767px) {
  .plan_about .wrap_illust .btnwrap .btn_room:not(:last-child) {
    margin-bottom: .6rem
  }
}

.plan_about .hide-area {
  display: none
}

.plan_about .btn_room {
  position: absolute;
  transform: translate(-50%, -50%)
}

@media(max-width: 767px) {
  .plan_about .btn_room {
    position: static;
    transform: unset
  }
}

.plan_about .btn_room.chair {
  top: 50%;
  left: 70%
}

.plan_about .btn_room.illumination {
  top: 28%;
  left: 30%
}

.plan_about .btn_room.diffuser {
  top: 80%;
  left: 55%
}

.plan_about .btn_room.stool {
  top: 80%;
  left: 85%
}

.plan_about .btn_room.flooring {
  top: 80%;
  left: 20%
}

.plan_about .btn_room.clock {
  top: 25%;
  left: 45%
}

.plan_about .btn_room.swedish {
  top: 50%;
  left: 35%
}

.plan_about .btn_room.surfboard {
  top: 60%;
  left: 80%
}

.plan_about .btn_room.snowboarding {
  top: 25%;
  left: 80%
}

.plan_about .btn_room.chopsticks {
  top: 75%;
  left: 40%
}

.plan_about .btn_room.outlet {
  top: 70%;
  left: 20%
}

.plan_about .btn_room.illumination2 {
  top: 40%;
  left: 15%
}

.plan_about .btn_room.night {
  top: 88%;
  left: 78%
}

.plan_about .btn_room.bed {
  top: 70%;
  left: 75%
}


.plan_about .btn_room.tumbler {
  top: 70%;
  left: 45%
}


.plan_about .btn_room.pillow {
  top: 60%;
  left: 85%
}

.plan_about .btn_room.table {
  top: 80%;
  left: 45%
}

.plan_about .btn_room.head {
  top: 45%;
  left: 80%
}

.plan_about .btn_room.blind {
  top: 30%;
  left: 35%
}

.plan_about .btn_room.wallpaper {
  top: 30%;
  left: 20%
}

.plan_about .btn_room.window {
  top: 30%;
  left: 55%
}

.plan_about .btn_room.frame {
  top: 90%;
  left: 33%
}

.plan_about .btn_room.bath {
  top: 60%;
  left: 55%
}

.plan_about .btn_room.sachet {
  top: 80%;
  left: 80%
}

.btn_room {
  width: fit-content;
  max-width: 100%
}

.btn_room a {
  max-width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  border-radius: 100vmax;
  padding: .4em 1.5em;
  position: relative
}

@media(max-width: 767px) {
  .btn_room a {
    width: 90vw;
    height: 2.5rem;
    padding: 0
  }
}

.btn_room a p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  position: relative;
  top: .1em
}

.btn_room a p::before {
  content: "●";
  font-size: 0.75rem;
  margin-right: .5em
}

.btn_room a p i {
  font-size: 0.5rem;
  line-height: 1;
  margin-left: 1.5em;
  position: relative;
  top: -0.2em
}

.btn_room.center {
  margin-inline: auto
}

.btn_room.right {
  margin-inline: auto 0
}

.btn_room.bg_w a {
  border: 1px solid currentColor;
  background-color: #fff;
  color: #0f170c
}

.btn_room.bg_w a:hover {
  background-color: #000;
  color: #f0e8f3;
  transition: .3s ease
}

.plan_case ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3.5rem 2.7777777778%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .plan_case ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .plan_case ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 2rem 4%
  }
}

.plan_case ul li figure {
  margin-bottom: .5rem;
  position: relative
}

.plan_case ul li figure img {
  width: 100%;
  max-height: 220px;
  object-fit: cover
}

.plan_case ul li figure .cate {
  width: fit-content;
  background-color: #354f46;
  padding: .2em 1em;
  line-height: 1.5;
  position: absolute;
  top: 0;
  left: 0
}

.plan_showroom {
  display: grid;
  place-content: center;
  background: url(images/plan/bg_plan01.jpg) center center/cover;
  aspect-ratio: 1440/510
}

@media(min-width: 1200px) {
  .plan_showroom {
    min-height: 340px
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  .plan_showroom {
    aspect-ratio: unset;
    padding: 2.5rem 5vw
  }
}

@media(max-width: 767px) {
  .plan_showroom {
    aspect-ratio: unset;
    padding: 2.5rem 5vw
  }
}

.plan_showroom h2.ttl_cmn2 {
  line-height: 2
}

.plan_showroom .btnwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 1rem 5rem
}

.song_fv {
  height: 70vh;
  background: url(images/song/bgsong01.jpg) center center/cover no-repeat;
  position: relative
}

@media(min-width: 1200px) {
  .song_fv {
    min-height: 400px
  }
}

.song_fv::before {
  content: "";
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, rgba(15, 23, 12, 0.9), transparent);
  position: absolute;
  top: 0;
  left: 0
}

.song_fv .inner {
  height: 100%;
  display: grid;
  place-content: center left
}

.song_video {
  background-color: #0f170c
}

.song_video p.txt01 {
  margin-bottom: 6rem
}

@media(max-width: 767px) {
  .song_video p.txt01 {
    margin-bottom: 3rem
  }
}

.song_video h3.ttl_cmn2.mb_w {
  margin-bottom: 4em
}

@media(max-width: 767px) {
  .song_video h3.ttl_cmn2.mb_w {
    margin-bottom: 1.5em
  }
}

.song_video .movie {
  width: 100%;
  max-width: 812px;
  aspect-ratio: 16/9;
  margin-inline: auto;
  margin-bottom: 3.5rem;
  position: relative
}

@media(max-width: 767px) {
  .song_video .movie {
    margin-bottom: 2rem
  }
}

.song_video .movie iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0
}

.song_video .colwrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 4%;
  margin-bottom: 3.5rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .song_video .colwrap {
    grid-template-columns: repeat(1, 1fr);
    margin-bottom: 2.5rem
  }
}

@media(max-width: 767px) {
  .song_video .colwrap {
    grid-template-columns: repeat(1, 1fr);
    margin-bottom: 2.5rem
  }
}

.song_video .colwrap .col p.txt02 {
  margin-bottom: 2em
}

.song_video .colwrap .col .btnwrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 0 6%;
  margin-bottom: 1.5rem
}

.song_video .colwrap .col .imgwrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem 4%;
  margin-bottom: 2rem
}

.song_video .colwrap .col .imgwrap figure {
  margin-bottom: .4rem
}

.song_video .colwrap .col .imgwrap figure img {
  width: 100%;
  object-fit: cover
}

.song_video .colwrap .col p.txt04 {
  margin-bottom: 1em
}

.song_video .side_cmn:not(:last-child) {
  margin-bottom: 2rem
}

@media(max-width: 767px) {
  .song_video .side_cmn:not(:last-child) {
    margin-bottom: 1.2rem
  }
}

.song_video h5.txt_cmn.bg_dg {
  margin-bottom: .8em
}

.song_video p.txt06 {
  margin-bottom: 1.8em
}

.song_video h6.txt_cmn {
  margin-bottom: .4em
}

.song_video .btn_cmn {
  margin-bottom: 1rem
}

.song_video .box {
  border: 1px solid #fff;
  padding: .8rem 2%
}

.song_video .box:not(:last-child) {
  margin-bottom: 4.5rem
}

@media(max-width: 767px) {
  .song_video .box:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.song_video .unit:not(:last-child) {
  margin-bottom: 1.2rem
}

.song_video .unit h5.txt_cmn {
  margin-bottom: 0
}

.song_video .unit .content {
  padding: .8rem 2% 1rem;
  border: 1px solid #224d39
}

.song_video .unit .content h6.txt_cmn {
  margin-bottom: .3em
}

.song_video .unit .content p.txt08 {
  margin-bottom: .9em
}

.song_video .unit .content .colwrap02 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem 4%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .song_video .unit .content .colwrap02 {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media(max-width: 767px) {
  .song_video .unit .content .colwrap02 {
    grid-template-columns: repeat(1, 1fr)
  }
}

.song_video .unit b.sikaku {
  color: #c6b116;
  margin-right: .3em
}

.song_video .unit p.txt09 {
  line-height: 1.5
}

.kinowa_fv {
  height: 70vh;
  background: url(images/kinowa/bg_kinowa01.jpg) center center/cover no-repeat;
  position: relative
}

@media(min-width: 1200px) {
  .kinowa_fv {
    min-height: 400px
  }
}

@media(max-width: 767px) {
  .kinowa_fv {
    height: 45vh;
    background-position: left 75% center
  }
}

.kinowa_fv::before {
  content: "";
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, rgba(15, 23, 12, 0.9), transparent);
  position: absolute;
  top: 0;
  left: 0
}

.kinowa_fv .inner {
  height: 100%;
  display: grid;
  place-content: center left
}

.kinowa_fv .logo01 {
  margin-bottom: 3vh
}

@media(max-width: 767px) {
  .kinowa_fv .logo01 img {
    width: 20vw
  }
}

.kinowa_message {
  background-color: #0f170c
}

.kinowa_message h2.ttl_cmn2 {
  line-height: 1.9
}

.kinowa_view img {
  width: 100%;
  object-fit: cover
}

.kinowa_member {
  background-color: #224d39
}

.kinowa_member .bnr01 {
  text-align: center;
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .kinowa_member .bnr01 {
    margin-bottom: 2.5rem
  }
}

.kinowa_member h3.ttl_cmn2.color_w.sidebar span {
  background-color: #224d39
}

.kinowa_member .side_cmn.reverse {
  margin-bottom: 2rem
}

.kinowa_member .side_cmn.reverse .logo02 {
  margin-bottom: 1.5rem
}

.kinowa_member .side_cmn.kinowa {
  margin-bottom: 6rem
}

@media(max-width: 767px) {
  .kinowa_member .side_cmn.kinowa {
    margin-bottom: 3rem
  }
}

.kinowa_member .side_cmn.kinowa figure img {
  width: 100%
}

@media(max-width: 767px) {
  .kinowa_member .side_cmn.kinowa figure img {
    width: 50vw
  }
}

.kinowa_member .side_cmn.kinowa figure figcaption {
  margin-top: .2em
}

.kinowa_member .side_cmn.kinowa .txt {
  border: 1px solid #fff;
  border-radius: 2rem;
  padding: .8rem 2%
}

@media(max-width: 767px) {
  .kinowa_member .side_cmn.kinowa .txt {
    padding: .8rem 4%
  }
}

.kinowa_wood {
  position: relative
}

.kinowa_wood ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.4rem 2.7777777778%;
  margin-bottom: 3rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .kinowa_wood ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .kinowa_wood ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

.kinowa_wood ul li figure {
  margin-bottom: 1.2rem
}

.kinowa_wood ul li figure img {
  width: 100%;
  object-fit: cover
}

.kinowa_wood h4.ttl_cmn2 {
  width: fit-content;
  margin-inline: auto;
  position: relative
}

.kinowa_wood h4.ttl_cmn2::before,
.kinowa_wood h4.ttl_cmn2::after {
  content: "";
  width: 1px;
  height: 1.5em;
  background-color: currentColor;
  position: absolute;
  top: 50%
}

.kinowa_wood h4.ttl_cmn2::before {
  left: -2rem;
  translate: 0 -50%;
  rotate: -30deg
}

.kinowa_wood h4.ttl_cmn2::after {
  right: -2rem;
  translate: 0 -50%;
  rotate: 30deg
}

.kinowa_wood .bnr02 {
  text-align: center
}

.kinowa_wood .member01 {
  position: absolute;
  bottom: 0;
  right: 0
}

@media(min-width: 768px)and (max-width: 1199px) {
  .kinowa_wood .member01 {
    width: 20vw
  }
}

@media(max-width: 767px) {
  .kinowa_wood .member01 {
    width: 20vw
  }
}

.atenet_fv {
  height: 70vh;
  background: url(images/atenet/bg_atenet01.jpg) center center/cover no-repeat;
  position: relative
}

@media(min-width: 1200px) {
  .atenet_fv {
    min-height: 400px
  }
}

.atenet_fv::before {
  content: "";
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, rgba(15, 23, 12, 0.9), transparent);
  position: absolute;
  top: 0;
  left: 0
}

.atenet_fv .inner {
  height: 100%;
  display: grid;
  place-content: center left
}

.atenet_fv .ttl01 {
  font-size: 2.5rem;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  margin-top: .2em
}

@media(max-width: 767px) {
  .atenet_fv .ttl01 {
    font-size: 1.75rem
  }
}

.atenet_message {
  background-color: #0f170c
}

.atenet_message h2.ttl_cmn2 {
  line-height: 1.9
}

.atenet_message .side_cmn {
  margin-bottom: 3rem
}

.atenet_message .side_cmn figcaption {
  line-height: 1.5;
  text-align: left
}

.atenet_message .bnr01 {
  text-align: center;
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .atenet_message .bnr01 {
    margin-bottom: 2rem
  }
}

.atenet_message .side01 {
  margin-bottom: 3rem
}

.atenet_message .side01 figure {
  margin-bottom: 1rem
}

.atenet_message .side01 figure img {
  width: 100%;
  object-fit: cover
}

.atenet_message ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem 2.7777777778%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .atenet_message ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .atenet_message ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

.atenet_message ul li figure {
  text-align: center;
  margin-bottom: 1.2rem
}

@media(max-width: 767px) {
  .atenet_message ul li figure {
    margin-bottom: .6rem
  }
}

.atenet_vision {
  background-color: #0f170c
}

.atenet_vision .ul01 {
  margin-bottom: 3rem
}

.atenet_vision .ul01 li {
  background: linear-gradient(90deg, #224D39, #070F0C);
  padding: .8rem .9rem;
  line-height: 1.5
}

.atenet_vision .ul01 li:not(:last-child) {
  margin-bottom: 1.2rem
}

.atenet_vision .unit:not(:last-child) {
  margin-bottom: 1.2rem
}

.atenet_vision .unit.last {
  margin-bottom: 4.5rem
}

@media(max-width: 767px) {
  .atenet_vision .unit.last {
    margin-bottom: 3rem
  }
}

.atenet_vision .unit h5.txt_cmn {
  margin-bottom: 0
}

.atenet_vision .unit .content {
  padding: .8rem 2% 1rem;
  border: 1px solid #224d39
}

.atenet_vision .unit .content p.txt08 {
  margin-bottom: .9em
}

.atenet_vision .unit b.sikaku {
  color: #c6b116;
  margin-right: .3em
}

.atenet_vision .unit p.txt09 {
  line-height: 1.5
}

.atenet_vision h4.ttl_cmn2 {
  margin-bottom: 1.5em
}

.atenet_vision .side_cmn:not(:last-child) {
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .atenet_vision .side_cmn:not(:last-child) {
    margin-bottom: 2rem
  }
}

.atenet_vision .movie {
  width: 100%;
  max-width: 812px;
  aspect-ratio: 16/9;
  margin-inline: auto;
  margin-bottom: 3rem;
  position: relative
}

@media(max-width: 767px) {
  .atenet_vision .movie {
    margin-bottom: 2rem
  }
}

.atenet_vision .movie iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0
}

.atenet_vision .bnr01 {
  text-align: center;
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .atenet_vision .bnr01 {
    margin-bottom: 2rem
  }
}

.faq_first {
  background-color: #0f170c
}

.wrap_faq .unit_faq:not(:last-child) {
  margin-bottom: 1.2rem
}

.wrap_faq .unit_faq .q1,
.wrap_faq .unit_faq .a1 {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  padding: .8em 4% .8em 2%
}

@media(max-width: 767px) {

  .wrap_faq .unit_faq .q1,
  .wrap_faq .unit_faq .a1 {
    padding: .8em 5% .8em 3%
  }
}

.wrap_faq .unit_faq .q1 .mark,
.wrap_faq .unit_faq .a1 .mark {
  font-size: 1.25rem;
  color: #c6b117;
  font-weight: 900;
  line-height: 1;
  margin-right: 1em;
  position: relative;
  top: .1em
}

@media(max-width: 767px) {

  .wrap_faq .unit_faq .q1 .mark,
  .wrap_faq .unit_faq .a1 .mark {
    font-size: 1.125rem;
    margin-right: .5em
  }
}

.wrap_faq .unit_faq .q1 p,
.wrap_faq .unit_faq .a1 p {
  font-size: 1.125rem;
  color: #fff;
  line-height: 1.8rem
}

@media(max-width: 767px) {

  .wrap_faq .unit_faq .q1 p,
  .wrap_faq .unit_faq .a1 p {
    font-size: 0.875rem;
    line-height: 1.5rem
  }
}

.wrap_faq .unit_faq .q1 {
  background-color: rgba(34, 77, 57, .5);
  position: relative
}

.wrap_faq .unit_faq .q1::before,
.wrap_faq .unit_faq .q1::after {
  content: "";
  width: 20px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  right: 2%;
  translate: 0 -50%
}

@media(max-width: 767px) {

  .wrap_faq .unit_faq .q1::before,
  .wrap_faq .unit_faq .q1::after {
    width: 15px
  }
}

.wrap_faq .unit_faq .q1::after {
  rotate: -90deg;
  transition: .3s ease
}

.wrap_faq .unit_faq .q1 p {
  font-weight: 900
}

.wrap_faq .unit_faq .a1 {
  background-color: rgba(34, 77, 57, .25);
  translate: 0 -1em;
  opacity: 0;
  transition: transform 1s, opacity 1s
}

.wrap_faq .unit_faq .a1 p {
  font-weight: 400
}

.wrap_faq .unit_faq[open] .q1::after {
  rotate: 0deg
}

.wrap_faq .unit_faq[open] .a1 {
  translate: 0;
  opacity: 1
}

.hatagaya_first {
  background: url(images/hatagaya/bg_hatagaya01.jpg) center center/cover no-repeat
}

.hatagaya_first .inner .ttl01 {
  text-align: center;
  margin-bottom: 1.8rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .hatagaya_first .inner .ttl01 img {
    width: 40vw
  }
}

@media(max-width: 767px) {
  .hatagaya_first .inner .ttl01 img {
    width: 50vw
  }
}

.hatagaya_jisin {
  background-color: #0f170c
}

.hatagaya_jisin h2.ttl_cmn2 {
  line-height: 2.4;
  margin-bottom: 2.4em
}

.hatagaya_jisin .unit:not(:last-child) {
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .hatagaya_jisin .unit:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.hatagaya_jisin .unit .side_cmn p.txt01:not(:last-child) {
  margin-bottom: 2em
}

.hatagaya_jisin .area {
  background-color: rgba(34, 77, 57, .5);
  padding: 2.4rem 4%
}

@media(max-width: 767px) {
  .hatagaya_jisin .area {
    padding: 1.8rem 4%
  }
}

.hatagaya_jisin .area h5 {
  margin-bottom: .4em
}

.hatagaya_jisin .area .btn_naked {
  margin-top: .8em
}

.hatagaya_jisin .name {
  text-align: right
}

.hatagaya_jisin .name em {
  font-size: 1.25rem
}

.hatagaya_jisin .ul01 {
  margin-bottom: 3.5rem
}

.hatagaya_jisin ul.ul01 li {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  align-content: unset
}

.hatagaya_jisin ul.ul01 li:not(:last-child) {
  padding-bottom: 2rem
}

.hatagaya_jisin ul.ul01 li:last-child .rail::before {
  content: none
}

.hatagaya_jisin ul.ul01 li .dt01 {
  width: 12%;
  display: grid;
  place-content: start center;
  margin-bottom: 0
}

@media(max-width: 767px) {
  .hatagaya_jisin ul.ul01 li .dt01 {
    width: 26%
  }
}

.hatagaya_jisin ul.ul01 li .rail {
  width: 4%
}

.hatagaya_jisin ul.ul01 li .dd01 {
  width: 76%
}

@media(max-width: 767px) {
  .hatagaya_jisin ul.ul01 li .dd01 {
    width: 60%
  }
}

.hatagaya_jisin .rail {
  position: relative
}

.hatagaya_jisin .rail::before,
.hatagaya_jisin .rail::after {
  content: "";
  position: absolute;
  top: 0%;
  left: 50%
}

.hatagaya_jisin .rail::before {
  width: 1px;
  height: calc(100% + 2rem);
  background-color: #fff;
  translate: -50% 8px
}

.hatagaya_jisin .rail::after {
  width: 16px;
  height: 16px;
  background-color: #c6b116;
  border-radius: 100vmax;
  translate: -50% 50%
}

.hatagaya_act {
  background-color: #224d39
}

.hatagaya_act p.txt11 {
  margin-bottom: 2.5em
}

.hatagaya_act .unit:not(:last-child) {
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .hatagaya_act .unit:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.hatagaya_act .unit h2.ttl_cmn2 {
  font-weight: 400
}

.hatagaya_act .unit .side_cmn:not(:last-child) {
  margin-bottom: 1.8rem
}

@media(max-width: 767px) {
  .hatagaya_act .unit .side_cmn:not(:last-child) {
    margin-bottom: 1.4rem
  }
}

.hatagaya_act ul.ul01 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.2rem 1.8518518519%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .hatagaya_act ul.ul01 {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .hatagaya_act ul.ul01 {
    grid-template-columns: repeat(1, 1fr)
  }
}

.hatagaya_act ul.ul01:not(:last-child) {
  margin-bottom: 3rem
}

@media(max-width: 767px) {
  .hatagaya_act ul.ul01:not(:last-child) {
    margin-bottom: 2rem
  }
}

.hatagaya_act ul.ul01 li figure img {
  width: 100%;
  object-fit: cover
}

.hatagaya_act .bnrbox {
  display: grid;
  place-content: center;
  max-width: 630px;
  aspect-ratio: 620/220;
  background: url(images/hatagaya/bg_hatagaya02.jpg) center center/100% auto no-repeat;
  margin-inline: auto
}

.hatagaya_act .bnrbox h6.txt_cmn {
  line-height: 1.5;
  margin-bottom: 2.5em
}

@media(max-width: 767px) {
  .hatagaya_act .bnrbox h6.txt_cmn {
    margin-bottom: 1em
  }
}

.hatagaya_act ul.ul02 {
  max-width: 770px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.2rem 4%;
  margin-inline: auto
}

@media(min-width: 768px)and (max-width: 1199px) {
  .hatagaya_act ul.ul02 {
    grid-template-columns: repeat(3, 1fr)
  }
}

@media(max-width: 767px) {
  .hatagaya_act ul.ul02 {
    grid-template-columns: repeat(2, 1fr)
  }
}

.hatagaya_act ul.ul02 li figure img {
  width: 100%;
  object-fit: cover
}

.hatagaya_act p.price {
  text-align: right;
  margin-top: .8em
}

.hatagaya_act ul.ul03 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem 2.7777777778%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .hatagaya_act ul.ul03 {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .hatagaya_act ul.ul03 {
    grid-template-columns: repeat(1, 1fr)
  }
}

.hatagaya_act ul.ul03 li figure {
  display: grid;
  place-content: center left;
  min-height: 100px;
  margin-bottom: .5rem
}

.hatagaya_bnrs .inner {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem 2.7777777778%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .hatagaya_bnrs .inner {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .hatagaya_bnrs .inner {
    grid-template-columns: repeat(1, 1fr)
  }
}

.hatagaya_bnrs .inner .col figure {
  margin-bottom: .4rem
}

.hatagaya_bnrs .inner .col figure img {
  width: 100%;
  object-fit: cover
}

body.cross_wood .breadcrumbs {
  background-color: #0f170c;
  margin-bottom: 0
}

.cw_first {
  display: grid;
  place-content: center;
  height: 100vh;
  background: url(/wp-content/uploads/2026/03/nenrin-scaled.jpg) center center/cover no-repeat;
}

@media(max-width: 767px) {
  .cw_first {
    height: 30vh;
  }

  .cw_first .logo_cw img {
    width: 80vw;
  }
}

.cw_cross .content {
  background: url(images/crosswood/bg_cw02.jpg) center center/cover no-repeat;
  position: relative
}

.cw_cross .content::before {
  content: "";
  width: 100%;
  height: 45%;
  background: linear-gradient(0deg, white, transparent);
  position: absolute;
  bottom: 0;
  left: 0
}

.cw_cross .content .inner {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  gap: 1rem 2%
}

.cross_list {
  background: url(images/crosswood/bg_cw03.svg) left top repeat
}

.cross_list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 3.5rem 1%;
  margin-bottom: 1.8rem
}

@media(max-width: 767px) {
  .cross_list ul {
    gap: 2.5rem 2%
  }
}

.cross_list .logo02 {
  text-align: center
}

.cw_catch {
  background: url(images/crosswood/bg_cw02.jpg) center center/cover no-repeat
}

.cw_catch .ttl11 {
  text-align: center
}

.cw_catch .ttl11 img {
  width: 60%;
  object-fit: cover
}

.cw_interview .logo11 {
  margin-bottom: 1.5rem
}

@media(max-width: 767px) {
  .cw_interview .logo11 {
    margin-bottom: .8rem
  }
}

.cw_interview p.txt01 {
  margin-bottom: .5em
}

.cw_single {
  background: url(images/crosswood/bg_cw03.svg) left top repeat
}

.cw_single .unit .contents {
  padding: 0 5% 3.5rem;
  position: relative
}

@media(max-width: 767px) {
  .cw_single .unit .contents {
    padding: 0 5% 2rem
  }
}

.cw_single .unit .contents::before {
  content: "";
  width: 100%;
  height: calc(100% - 3.5rem);
  background-color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 0
}

.cw_single .unit .contents>* {
  position: relative;
  z-index: 1
}

.cw_single .unit:not(:last-child) {
  margin-bottom: 7rem
}

@media(max-width: 767px) {
  .cw_single .unit:not(:last-child) {
    margin-bottom: 3rem
  }
}

.cw_single .unit .topline {
  background: url(images/crosswood/ttlbg11.svg) center center/cover no-repeat;
  padding: 3.5rem 4%;
  margin-bottom: 2.5rem;
  position: relative
}

@media(max-width: 767px) {
  .cw_single .unit .topline {
    padding: 3rem 3% 1.5rem;
    margin-bottom: 1.5rem
  }
}

.cw_single .unit .topline .theme {
  width: 120px;
  aspect-ratio: 1/1;
  display: grid;
  place-content: center;
  background-color: #000;
  font-size: 1.5rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  position: absolute;
  top: -1.8rem;
  left: 0
}

@media(min-width: 768px)and (max-width: 1199px) {
  .cw_single .unit .topline .theme {
    width: 12vw;
    font-size: 1rem
  }
}

@media(max-width: 767px) {
  .cw_single .unit .topline .theme {
    width: 18vw;
    font-size: 1rem
  }
}

.cw_single .unit .topline .theme em {
  display: block;
  font-size: 3.375rem;
  line-height: 1
}

@media(min-width: 768px)and (max-width: 1199px) {
  .cw_single .unit .topline .theme em {
    font-size: 1.75rem
  }
}

@media(max-width: 767px) {
  .cw_single .unit .topline .theme em {
    font-size: 1.75rem
  }
}

.cw_single h3 {
  background-color: #e2dfcd;
  padding: .4rem 2%;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  font-family: "Zen Old Mincho", serif;
  margin-bottom: 1em
}

@media(max-width: 767px) {
  .cw_single h3 {
    font-size: 1.125rem
  }
}

.cw_single .contents p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.8;
  font-family: "Noto Sans JP", sans-serif
}

@media(max-width: 767px) {
  .cw_single .contents p {
    font-size: 16px
  }
}

.cw_single .contents p:not(:last-child) {
  margin-bottom: 2.5em
}

@media(max-width: 767px) {
  .cw_single .contents p:not(:last-child) {
    margin-bottom: 1.5em
  }
}

.cw_single .img01 img {
  width: 100%;
  object-fit: cover
}

.cw_product {
  background-color: #e2dfcd
}

.column_list,
.column_single {
  background: url(images/column/bg_column01.png) center center/cover no-repeat;
  background-attachment: fixed;
  background-color: #0f170c;
  position: relative
}

.column_list article table,
.column_single article table {
  color: #fff;
  margin-bottom: 2rem
}

@media(max-width: 767px) {

  .column_list article table,
  .column_single article table {
    font-size: 12px
  }
}

.column_list article table th,
.column_list article table td,
.column_single article table th,
.column_single article table td {
  padding: 5px;
  border: 1px solid #fff
}

.column_list article ol,
.column_list article ul,
.column_single article ol,
.column_single article ul {
  color: #fff;
  padding-left: 20px;
  margin-bottom: 2rem
}

.column_list article ol li,
.column_single article ol li {
  list-style-type: decimal
}

.column_list article ul li,
.column_single article ul li {
  list-style-type: disc
}

.column_list .txt_catch {
  line-height: 2.5;
  margin-bottom: 7em
}

@media(max-width: 767px) {
  .column_list .txt_catch {
    line-height: 2;
    margin-bottom: 4em
  }
}

.column_list .ttl02 {
  margin-bottom: 2em
}

.column_list ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3.5rem 2.7777777778%;
  margin-bottom: 5rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .column_list ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.8rem 4%
  }
}

@media(max-width: 767px) {
  .column_list ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.8rem 4%;
    margin-bottom: 2.5rem
  }
}

.column_list ul li figure {
  margin-bottom: .2rem;
  position: relative
}

.column_list ul li figure img {
  width: 100%;
/*   max-height: 220px; */
  object-fit: cover;
	height:220px
}

.column_list ul li time {
  display: inline-block;
  margin-bottom: .2em
}

.column_list ul li .ttl01 {
  line-height: 1.5
}

.column_list .wp-pagenavi {
  color: #fff
}

.column_list .wp-pagenavi span.current {
  border-radius: 0
}

.column_single .top {
  margin-bottom: 2.2rem
}

@media(max-width: 767px) {
  .column_single .top {
    margin-bottom: 1.5rem
  }
}

.column_single .top .wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center
}

.column_single article>p:not(:last-child) {
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .column_single article>p:not(:last-child) {
    margin-bottom: 1.5rem
  }
}

.column_single h2,
.column_single h3,
.column_single h4,
.column_single p,
.column_single figcaption {
  font-family: "Zen Old Mincho", serif
}

.column_single .ttl_post {
  font-size: 2rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.33;
  margin-bottom: .2em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .column_single .ttl_post {
    font-size: 1.625rem
  }
}

@media(max-width: 767px) {
  .column_single .ttl_post {
    font-size: 1.5rem
  }
}

.column_single article>:is(.side_cmn, .area):not(:last-child) {
  margin-bottom: 2.5rem
}

@media(max-width: 767px) {
  .column_single article>:is(.side_cmn, .area):not(:last-child) {
    margin-bottom: 1.5rem
  }
}

.column_single h2:not(.ttl_post) {
  border: 1px solid #fff;
  background-color: #224d39;
  padding: .4em .8em;
  font-size: 1.75rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: .9em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .column_single h2:not(.ttl_post) {
    font-size: 1.5rem
  }
}

@media(max-width: 767px) {
  .column_single h2:not(.ttl_post) {
    font-size: 1.375rem
  }
}

.column_single h3:not(.ttl01) {
  background-color: #dae4d8;
  padding: .3em .6em;
  padding-left: 1.4em;
  font-family: Noto Sans JP;
  font-size: 1.5rem;
  color: #333;
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: .8em;
  position: relative
}

@media(min-width: 768px)and (max-width: 1199px) {
  .column_single h3:not(.ttl01) {
    font-size: 1.25rem
  }
}

@media(max-width: 767px) {
  .column_single h3:not(.ttl01) {
    font-size: 1.1875rem
  }
}

.column_single h3:not(.ttl01)::before {
  content: "";
  width: 1.1em;
  height: 1px;
  background-color: currentColor;
  position: absolute;
  top: 50%;
  left: 0
}

.column_single h4 {
  font-size: 1.25rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: .8em;
  display: flex;
  align-items: center;
  gap: .6em
}

@media(max-width: 767px) {
  .column_single h4 {
    font-size: 1rem
  }
}

.column_single h4::before {
  content: "●";
  font-size: 0.5rem;
  color: #b4a216
}

.column_single h4::after {
  content: "";
  height: 1px;
  background-color: currentColor;
  flex-grow: 1
}

.column_single article>p,
.column_single article .side_cmn .txt>p {
  font-size: 1rem;
  color: #fff;
  font-weight: 400;
  line-height: 1.9
}

@media(max-width: 767px) {

  .column_single article>p,
  .column_single article .side_cmn .txt>p {
    font-size: 16px
  }
}

.column_single article>p b,
.column_single article .side_cmn .txt>p b {
  text-decoration: underline #fff500 solid .2em;
  text-underline-offset: .2em
}

.column_single article>p em,
.column_single article .side_cmn .txt>p em {
  color: #ff0;
  font-weight: 700
}

.column_single article>p strong,
.column_single article .side_cmn .txt>p strong {
  background-color: #fff000;
 color:#333;
  padding: .2em .4em;
  font-weight: 500
}

.column_single .area {
  max-width: 780px;
  background-color: hsla(0, 0%, 100%, .8);
  padding: 1.5rem 3%
}

.column_single .area ul li {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5
}

@media(max-width: 767px) {
  .column_single .area ul li {
    font-size: 16px
  }
}

.column_single .area ul li::before {
  content: "●";
  font-size: 0.5rem;
  color: #b4a216;
  margin-right: 1em;
  position: relative;
  top: -0.3em
}

.column_single .area ul li:not(:last-child) {
  margin-bottom: .5em
}

.column_single .pick01 {
  width: fit-content;
  margin-inline: auto;
  margin-bottom: 2rem
}

.column_single .pick01 a {
  min-width: 574px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  background-color: #b4a216;
  padding: .8rem 3%;
  border-radius: 10px;
  gap: 0 .6rem
}

@media(max-width: 767px) {
  .column_single .pick01 a {
    min-width: 90vw
  }
}

.column_single .pick01 a span {
  display: block;
  border: 1px solid currentColor;
  background-color: #333;
  border-radius: 5px;
  padding: .2em .6em;
  font-size: 0.875rem;
  color: #fff;
  font-weight: 400;
  line-height: 1.5
}

.column_single .pick01 a p {
  font-size: 1rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5
}

.column_single .pick01 a i {
  font-size: 0.5rem;
  color: #fff
}

.column_single article>figure {
  text-align: center
}

.column_single article>figure:not(:last-child) {
  margin-bottom: 2.4rem
}

@media(max-width: 767px) {
  .column_single article>figure:not(:last-child) {
    margin-bottom: 1.8rem
  }
}

.column_single .btn_cmn {
  margin-top: 3.5rem
}

@media(max-width: 767px) {
  .column_single .btn_cmn {
    margin-top: 2rem
  }
}

.tbl_column {
  width: 100%;
  max-width: 830px;
  table-layout: fixed;
  margin-bottom: 2rem
}

@media(max-width: 767px) {
  .tbl_column {
    margin-bottom: 1rem
  }
}

.tbl_column th,
.tbl_column td {
  border: 1px solid currentColor;
  padding: .7em 1%;
  font-size: 1rem;
  color: #fff;
  font-weight: 400;
  line-height: 1.5
}

@media(max-width: 767px) {

  .tbl_column th,
  .tbl_column td {
    font-size: 0.8125rem;
    padding: .4em 1%
  }
}

.tbl_column th {
  text-align: left
}

.btn_column {
  width: fit-content;
  max-width: 100%;
  margin-inline: auto
}

.btn_column a {
  max-width: 100%;
  width: 700px;
  height: 100px;
  background: url(images/column/bgbtn01.png) center center/cover no-repeat;
  background-color: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: unset;
  border: 3px solid #41715c;
  border-radius: 10px;
  position: relative
}

@media(max-width: 767px) {
  .btn_column a {
    width: 90vw;
    height: 4rem;
    border: 2px solid #41715c
  }
}

.btn_column a p {
  font-size: 1.125rem;
  color: #41715c;
  font-weight: 700;
  line-height: 1.5;
  text-align: center
}

@media(max-width: 767px) {
  .btn_column a p {
    font-size: 0.875rem
  }
}

.btn_column a p i {
  font-size: 0.5rem;
  line-height: 1;
  margin-left: 1.2em;
  position: relative;
  top: -3px
}

.column_related {
  padding-top: 2.5rem
}

.column_related .ttl01 {
  margin-bottom: 1.2em
}

.column_related ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3.5rem 2.7777777778%;
  margin-bottom: 3.5rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .column_related ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.8rem 4%
  }
}

@media(max-width: 767px) {
  .column_related ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.8rem 4%;
    margin-bottom: 2.2rem
  }
}

.column_related ul li figure {
  margin-bottom: .2rem;
  position: relative
}

.column_related ul li figure img {
  width: 100%;
  max-height: 220px;
  object-fit: cover
}

.column_related ul li time {
  display: inline-block;
  margin-bottom: .2em
}

.column_related ul li .ttl01 {
  line-height: 1.5
}

body.kirara main {
  background-color: #0f170c
}

.ttlline_kirara {
  background-color: #224d39;
  padding: 1.4rem
}

.ttlline_kirara .ttl01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  color: #fff
}

.ttlline_kirara .ttl01 b {
  font-size: 0.875rem;
  padding-right: 1em
}

@media(max-width: 767px) {
  .ttlline_kirara .ttl01 b {
    font-size: 0.75rem
  }
}

.ttlline_kirara .ttl01 b::before {
  content: url(images/index/dc_w.svg);
  display: inline-block;
  width: 7px;
  aspect-ratio: 1/1;
  margin-right: .5em;
  position: relative;
  top: -0.1em
}

.ttlline_kirara .ttl01 em {
  padding-left: .5em;
  border-left: 1px solid currentColor
}

.ttlline_kirara .ttl01 em span {
  font-size: 0.9375rem
}

@media(max-width: 767px) {
  .ttlline_kirara .ttl01 em span {
    font-size: 0.75rem
  }
}

.ttlline_kirara.alt {
  margin-top: 5rem
}

@media(max-width: 767px) {
  .ttlline_kirara.alt {
    margin-top: 2.5rem
  }
}

.kirara_health h2.ttl_cmn2+h3.ttl_cmn2 {
  margin-top: .2em
}

.kirara_health .side_cmn {
  margin-bottom: 4.5rem
}

@media(max-width: 767px) {
  .kirara_health .side_cmn {
    margin-bottom: 2.5rem
  }
}

.kirara_health .side_cmn .txt01:not(:last-child) {
  margin-bottom: 2.5em
}

.kirara_health .dl_cmn2 {
  margin-bottom: 1.8rem
}

dl.dl_cmn2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem 2.7777777778%
}

@media(min-width: 768px)and (max-width: 1199px) {
  dl.dl_cmn2 {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media(max-width: 767px) {
  dl.dl_cmn2 {
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem 0
  }
}

dl.dl_cmn2>div {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: stretch
}

dl.dl_cmn2>div dt,
dl.dl_cmn2>div dd {
  display: grid;
  place-content: center;
  padding: .5em 2%;
  color: #fff;
  line-height: 1.5
}

@media(max-width: 767px) {

  dl.dl_cmn2>div dt,
  dl.dl_cmn2>div dd {
    padding: .3em 2%
  }
}

dl.dl_cmn2>div dt {
  width: 32%;
  background-color: rgba(34, 77, 57, .5);
  font-size: 1.125rem;
  font-weight: 700;
  text-align: center
}

@media(max-width: 767px) {
  dl.dl_cmn2>div dt {
    width: 38%;
    font-size: 0.9375rem
  }
}

dl.dl_cmn2>div dt span {
  display: block;
  font-size: 0.875rem;
  font-weight: 400
}

@media(max-width: 767px) {
  dl.dl_cmn2>div dt span {
    font-size: 0.75rem
  }
}

dl.dl_cmn2>div dd {
  width: 68%;
  background-color: #224d39;
  font-size: 1rem;
  font-weight: 400
}

@media(max-width: 767px) {
  dl.dl_cmn2>div dd {
    width: 62%;
    font-size: 0.8125rem
  }
}

.kirara_merit {
  background-color: #224d39
}

.kirara_merit ul {
  max-width: 780px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4.5rem 3%;
  margin-inline: auto
}

@media(min-width: 768px)and (max-width: 1199px) {
  .kirara_merit ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .kirara_merit ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 2.2rem 0
  }
}

.kirara_merit ul li figure {
  margin-bottom: 1rem
}

.kirara_merit ul li figure img {
  width: 100%;
  object-fit: cover
}

.kirara_merit ul li h3.ttl_cmn2 {
  margin-bottom: .4em
}

.kirara_merit ul li p.txt01 {
  line-height: 1.5
}

.kirara_color ul {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 2.5rem 1.3888888889%;
  margin-bottom: 3.5rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .kirara_color ul {
    grid-template-columns: repeat(4, 1fr)
  }
}

@media(max-width: 767px) {
  .kirara_color ul {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.2rem 2%;
    margin-bottom: 2rem
  }
}

.kirara_color ul li figure {
  margin-bottom: .4rem
}

.kirara_color ul li figure img {
  width: 100%;
  object-fit: cover
}

.kirara_color ul li .num {
  font-size: 1.25rem;
  color: #fff;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  margin-bottom: .2em
}

@media(max-width: 767px) {
  .kirara_color ul li .num {
    font-size: 1rem
  }
}

.kirara_color ul li h3.ttl_cmn2 {
  margin-bottom: .4em
}

.kirara_color p.txt02 {
  margin-bottom: 1.5em
}

.kirara_color .box {
  border: 1px solid #fff;
  padding: 1rem 2%
}

.kirara_color .box .ttl01 {
  margin-bottom: .4em
}

.kirara_nature {
  background: url(images/kirara/bg_kirara01.svg) right bottom no-repeat
}

.kirara_sea {
  background: url(images/kirara/bg_kirara02.jpg) center center/cover no-repeat
}

.kirara_sea p.txt01 {
  max-width: 502px
}

.kirara_exam ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.2rem 2.7777777778%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .kirara_exam ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

@media(max-width: 767px) {
  .kirara_exam ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

.kirara_exam ul li figure img {
  width: 100%;
  object-fit: cover
}

.kirara_region figure {
  text-align: center
}

.other_first {
  height: 65vh;
  background: url(images/other/bg_other01.jpg) right center/auto 100% no-repeat;
  background-color: #0f170c
}

@media(min-width: 1200px) {
  .other_first {
    min-height: 400px
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  .other_first {
    height: 40vh;
    background-position: center center
  }
}

@media(max-width: 767px) {
  .other_first {
    height: 40vh;
    background-position: center center
  }
}

.other_first .inner {
  height: 100%;
  display: grid;
  place-content: center left
}

.other_first .inner h2.ttl_cmn2 {
  line-height: 2.5
}

.other_wood {
  background-color: #0f170c
}

.other_wood .colwrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem 2.7777777778%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .other_wood .colwrap {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .other_wood .colwrap {
    grid-template-columns: repeat(1, 1fr)
  }
}

.other_wood .colwrap .col figure img {
  width: 100%;
  object-fit: cover
}

.other_wood .colwrap .col .ttl01 {
  background-color: #183121;
  padding: .6em 2%
}

.other_wood .colwrap .col .txt {
  min-height: 130px;
  background-color: #224d39;
  padding: 1.5rem 8%
}

@media(max-width: 767px) {
  .other_wood .colwrap .col .txt {
    min-height: unset;
    padding: 1rem 4%
  }
}

.other_other {
  background-color: #0f170c
}

.other_other h2.ttl_cmn2 {
  margin-bottom: .3em
}

.other_other p.txt01 {
  margin-bottom: 1em
}

.other_other .wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.2rem 3.3333333333%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .other_other .wrap {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .other_other .wrap {
    grid-template-columns: repeat(1, 1fr)
  }
}

.other_other .wrap:not(:last-child) {
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .other_other .wrap:not(:last-child) {
    margin-bottom: 2rem
  }
}

.other_maker {
  background-color: #224d39
}

.other_maker p.txt01 {
  margin-bottom: 2.5em
}

@media(max-width: 767px) {
  .other_maker p.txt01 {
    margin-bottom: 1.2em
  }
}

.other_maker figure img {
  width: 100%;
  object-fit: cover
}

.other_archi {
  background-color: #0f170c
}

.other_archi p.txt01 {
  margin-bottom: 2.5em
}

@media(max-width: 767px) {
  .other_archi p.txt01 {
    margin-bottom: 1.2em
  }
}

.other_archi figure img {
  width: 100%;
  object-fit: cover
}

.media_first {
  background-color: #0f170c
}

.media_first .plink_cmn {
  margin-bottom: 3.5rem
}

@media(max-width: 767px) {
  .media_first .plink_cmn {
    margin-bottom: 2rem
  }
}

.media_first .unit:not(:last-child) {
  margin-bottom: 5rem
}

@media(max-width: 767px) {
  .media_first .unit:not(:last-child) {
    margin-bottom: 2.5rem
  }
}

.media_first .unit ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3rem 2.7777777778%
}

@media(min-width: 768px)and (max-width: 1199px) {
  .media_first .unit ul {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media(max-width: 767px) {
  .media_first .unit ul {
    grid-template-columns: repeat(1, 1fr)
  }
}

.media_first .unit ul li figure {
  margin-bottom: .6rem
}

.media_first .unit ul li figure img {
  width: 100%;
  object-fit: cover
}

.media_first .unit ul li .txt {
  border-left: 2px solid #c6b116;
  padding-left: .6rem;
  padding-bottom: .3rem
}

.media_first .unit ul li .txt time {
  display: inline-block;
  line-height: 1.5;
  margin-bottom: .4em
}

.catalog_first {
  height: 65vh;
  background: url(images/catalog/bg_catalog01.jpg) right center/auto 100% no-repeat;
  background-color: #0f170c
}

@media(min-width: 1200px) {
  .catalog_first {
    min-height: 400px
  }
}

@media(min-width: 768px)and (max-width: 1199px) {
  .catalog_first {
    height: 40vh;
    background-position: center center
  }
}

@media(max-width: 767px) {
  .catalog_first {
    height: 40vh;
    background-position: center center
  }
}

.catalog_first .inner {
  height: 100%;
  display: grid;
  place-content: center left
}

.catalog_first .inner h2.ttl_cmn2 {
  line-height: 2.5
}

.house_first {
  background: url(images/housereformer/bg_house01.jpg) center center/cover no-repeat
}

.house_first .inner {
  display: grid;
  place-content: center
}

@media(min-width: 768px)and (max-width: 1199px) {
  .house_first .inner .logo01 img {
    width: 50vw
  }
}

@media(max-width: 767px) {
  .house_first .inner .logo01 img {
    width: 60vw
  }
}

.house_about {
  background: url(images/housereformer/bg_house02.jpg) right center/auto 100% no-repeat
}

@media(max-width: 767px) {
  .house_about {
    background: url(images/housereformer/bg_house02.jpg) center bottom/100% auto no-repeat;
    padding-bottom: 40vh
  }
}

.house_about h2.ttl01 {
  max-width: 607px;
  background: url(images/housereformer/ttlbdb02.svg) center bottom/100% auto no-repeat;
  padding-bottom: .5em
}

.house_about h2.ttl01 i {
  margin-right: .7rem
}

@media(max-width: 767px) {
  .house_about h2.ttl01 i {
    margin-right: .3rem
  }
}

@media(max-width: 767px) {
  .house_about h2.ttl01 i img {
    width: 8vw
  }
}

.house_about p.txt01 {
  max-width: 540px;
  letter-spacing: .15em
}

.house_multi {
  background: url(images/housereformer/bg_house03.jpg) center center/cover no-repeat
}

.house_multi .box {
  background-color: #fff;
  border-radius: 3.5rem;
  box-shadow: 3px 3px 15px rgba(0, 0, 0, .5);
  overflow: hidden;
  position: relative
}

@media(max-width: 767px) {
  .house_multi .box {
    border-radius: 1.5rem
  }
}

.house_multi .box .content {
  padding: 2.5rem 4% 1.7rem
}

@media(max-width: 767px) {
  .house_multi .box .content {
    padding: 1.8rem 4% 1.2rem
  }
}

.house_multi .box .under {
  background-color: #ddcf69;
  padding: 1.8rem 8%
}

@media(max-width: 767px) {
  .house_multi .box .under {
    padding: 1.3rem 6%
  }
}

.house_multi h2.ttl01 {
  background: url(images/housereformer/ttlbdb01.svg) center bottom/100% auto no-repeat;
  padding-bottom: .5em;
  margin-bottom: 1.5em
}

.house_multi h2.ttl01 i {
  display: block;
  margin-bottom: .4rem
}

@media(max-width: 767px) {
  .house_multi h2.ttl01 i {
    margin-bottom: .2rem
  }
}

@media(max-width: 767px) {
  .house_multi h2.ttl01 i img {
    width: 8vw
  }
}

.house_multi p.txt01 {
  line-height: 1.75;
  margin-bottom: 2em
}

.house_multi picture {
  display: block;
  text-align: center
}

.house_multi p.txt11 {
  line-height: 1.75
}

.house_multi .screwset {
  display: contents
}

.house_multi .screwset :is(.screw01, .screw02, .screw03, .screw04) {
  position: absolute
}

@media(min-width: 768px)and (max-width: 1199px) {
  .house_multi .screwset :is(.screw01, .screw02, .screw03, .screw04) img {
    width: 2.5vw
  }
}

@media(max-width: 767px) {
  .house_multi .screwset :is(.screw01, .screw02, .screw03, .screw04) img {
    width: 4vw
  }
}

.house_multi .screwset .screw01 {
  top: 2.5rem;
  left: 4%;
  rotate: 22deg
}

@media(max-width: 767px) {
  .house_multi .screwset .screw01 {
    top: 1rem
  }
}

.house_multi .screwset .screw02 {
  top: 2.5rem;
  right: 4%;
  rotate: 16deg
}

@media(max-width: 767px) {
  .house_multi .screwset .screw02 {
    top: 1rem
  }
}

.house_multi .screwset .screw03 {
  bottom: 2.5rem;
  left: 4%;
  rotate: -36deg
}

@media(max-width: 767px) {
  .house_multi .screwset .screw03 {
    bottom: 1rem
  }
}

.house_multi .screwset .screw04 {
  bottom: 2.5rem;
  right: 4%;
  rotate: 76deg
}

@media(max-width: 767px) {
  .house_multi .screwset .screw04 {
    bottom: 1rem
  }
}

.house_tech {
  background: url(images/housereformer/bg_house04.jpg) center center/cover no-repeat
}

.house_tech .box .under {
  background-color: #fcf4ed;
  position: relative
}

.house_tech .box .under figure {
  position: absolute;
  right: 6%;
  bottom: 1rem
}

@media(min-width: 768px)and (max-width: 1199px) {
  .house_tech .box .under figure {
    display: none
  }
}

@media(max-width: 767px) {
  .house_tech .box .under figure {
    display: none
  }
}

.house_tech .ul01 {
  max-width: 720px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3.5rem 3%;
  margin-inline: auto;
  margin-bottom: 2rem
}

@media(max-width: 767px) {
  .house_tech .ul01 {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem 3%
  }
}

.house_tech .ul01 li figure {
  margin-bottom: .4rem
}

.house_tech .ul01 li figure img {
  width: 100%;
  object-fit: cover
}

.house_tech .ul01 li p.txt02 {
  color: #60431d
}

.house_addlink {
  background-color: #fcf4ed
}

.house_addlink .box {
  background-color: #fff;
  border-radius: 3.5rem;
  box-shadow: 3px 3px 15px rgba(0, 0, 0, .5);
  padding: 2.5rem 4% 1.7rem;
  overflow: hidden;
  position: relative
}

@media(max-width: 767px) {
  .house_addlink .box {
    border-radius: 1.5rem;
    padding: 1.8rem 4% 2.5rem
  }
}

.house_addlink .side_cmn {
  max-width: 780px;
  margin-inline: auto
}

.house_addlink .side_cmn h3.ttl_cmn2 {
  margin-bottom: .6em
}

@media(min-width: 768px)and (max-width: 1199px) {
  .house_addlink .side_cmn h3.ttl_cmn2 {
    text-align: center
  }
}

.house_addlink .side_cmn a {
  width: fit-content;
  display: block;
  background-color: #41715b;
  padding: .4em 4%;
  box-shadow: 3px 3px 6px rgba(0, 0, 0, .45)
}

@media(min-width: 768px)and (max-width: 1199px) {
  .house_addlink .side_cmn a {
    margin-inline: auto
  }
}

@media(max-width: 767px) {
  .house_addlink .side_cmn a {
    padding: .4em 2%
  }
}

.house_addlink .screwset {
  display: contents
}

.house_addlink .screwset :is(.screw01, .screw02, .screw03, .screw04) {
  position: absolute
}

@media(min-width: 768px)and (max-width: 1199px) {
  .house_addlink .screwset :is(.screw01, .screw02, .screw03, .screw04) img {
    width: 2.5vw
  }
}

@media(max-width: 767px) {
  .house_addlink .screwset :is(.screw01, .screw02, .screw03, .screw04) img {
    width: 4vw
  }
}

.house_addlink .screwset .screw01 {
  top: 1.8rem;
  left: 4%;
  rotate: 22deg
}

@media(max-width: 767px) {
  .house_addlink .screwset .screw01 {
    top: .8rem
  }
}

.house_addlink .screwset .screw02 {
  top: 1.8rem;
  right: 4%;
  rotate: 16deg
}

@media(max-width: 767px) {
  .house_addlink .screwset .screw02 {
    top: .8rem
  }
}

.house_addlink .screwset .screw03 {
  bottom: 1.8rem;
  left: 4%;
  rotate: -36deg
}

@media(max-width: 767px) {
  .house_addlink .screwset .screw03 {
    bottom: .8rem
  }
}

.house_addlink .screwset .screw04 {
  bottom: 1.8rem;
  right: 4%;
  rotate: 76deg
}

@media(max-width: 767px) {
  .house_addlink .screwset .screw04 {
    bottom: .8rem
  }
}

/*# sourceMappingURL=lower-style.css.map */