/* commonParts
---------------------------------------------------- */
#page-ttl {
  position: relative;
  width: 100%;
  height: 40.625vw;
}
@media screen and (max-width: 1199px) {
  #page-ttl {
    height: 600px;
  }
}
#page-ttl .pgttl-bgimg {
  position: fixed;
  top: 0;
  width: 100%;
  height: 40.625vw;
}
@media screen and (max-width: 1199px) {
  #page-ttl .pgttl-bgimg {
    height: 600px;
  }
}
#page-ttl .pgttl-bgimg::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(40, 40, 40, 0.2);
}
#page-ttl .pgttl-bgimg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page-ttl .pgttl-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: -moz-fit-content;
  width: fit-content;
}
#page-ttl .pgttl-inner h2 {
  text-align: center;
  color: #fff;
  text-shadow: 6px 6px 12px rgba(40, 40, 40, 0.6);
}
#page-ttl .pgttl-inner h2 span.__en {
  color: #fff;
  font-size: 9.375rem;
  white-space: nowrap;
}
@media screen and (max-width: 1199px) {
  #page-ttl .pgttl-inner h2 span.__en {
    font-size: min(13vw, 90px);
  }
}
@media screen and (max-width: 991px) {
  #page-ttl .pgttl-inner h2 span.__en {
    white-space: wrap;
  }
}
#page-ttl .pgttl-inner h2 span.__jp {
  margin-top: 0.2em;
}
#page-ttl.__low {
  height: 31.25vw;
}
@media screen and (max-width: 1199px) {
  #page-ttl.__low {
    height: 520px;
  }
}
@media screen and (max-width: 767px) {
  #page-ttl.__low {
    height: 400px;
  }
}
#page-ttl.__low .pgttl-bgimg {
  height: 31.25vw;
}
@media screen and (max-width: 1199px) {
  #page-ttl.__low .pgttl-bgimg {
    height: 520px;
  }
}
@media screen and (max-width: 767px) {
  #page-ttl.__low .pgttl-bgimg {
    height: 400px;
  }
}
#page-ttl.__low .pgttl-inner h2 span.__en {
  font-size: 6.875rem;
}
@media screen and (max-width: 1199px) {
  #page-ttl.__low .pgttl-inner h2 span.__en {
    font-size: min(13vw, 72px);
  }
}

.__breadcrumbs {
  position: relative;
  z-index: 2;
  color: #636763;
  background-color: #fff;
  padding: 0.6em 0;
}
.__breadcrumbs ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.__breadcrumbs ul li {
  display: flex;
  align-items: center;
  padding: 0.36em 0;
  margin-left: 1em;
  font-size: 0.85em;
}
.__breadcrumbs ul li::after {
  content: ">";
  margin-left: 1em;
}
.__breadcrumbs ul li a {
  color: #636763;
  font-size: 1em;
}
.__breadcrumbs ul li:last-of-type::after {
  content: none;
}

.__anchor-point {
  position: absolute;
}

section {
  background-color: #fff;
}

.sec-contact {
  background-color: initial;
}
.sec-contact::before {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: calc(100% - 12.5rem);
  background-color: #fff;
}
@media screen and (max-width: 1199px) {
  .sec-contact {
    height: calc(100% - 120px);
  }
}
.sec-contact.__beige::before {
  background-color: #d4cebc;
}
.sec-contact.__lgray::before {
  background-color: #edece8;
}
.sec-contact.__contact {
  background-color: #fff;
}
.sec-contact.__contact::before {
  height: 30%;
  top: initial;
  bottom: 0;
  background-color: #edece8;
}
.sec-contact .sec-inner {
  display: flex;
  flex-wrap: wrap;
}
.sec-contact .sec-inner .contact-wrap {
  text-align: center;
  width: 50%;
  aspect-ratio: 2/1;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 1199px) {
  .sec-contact .sec-inner .contact-wrap {
    aspect-ratio: 3/2;
  }
}
@media screen and (max-width: 991px) {
  .sec-contact .sec-inner .contact-wrap {
    width: 100%;
    height: 270px;
    aspect-ratio: initial;
  }
}
@media screen and (max-width: 767px) {
  .sec-contact .sec-inner .contact-wrap {
    height: 180px;
  }
}
@media screen and (max-width: 1199px) {
  .sec-contact .sec-inner .contact-wrap .content-inner {
    padding: 0 3em;
  }
}
@media screen and (max-width: 767px) {
  .sec-contact .sec-inner .contact-wrap .content-inner {
    padding: 0 1em;
  }
}
.sec-contact .sec-inner .contact-wrap .content-inner h3 {
  margin-bottom: 1em;
}
.sec-contact .sec-inner .contact-wrap.__tel {
  color: #fff;
  background-color: #393d39;
}
.sec-contact .sec-inner .contact-wrap.__tel p {
  font-size: 2rem;
}
@media screen and (max-width: 1199px) {
  .sec-contact .sec-inner .contact-wrap.__tel p {
    font-size: 1.75em;
  }
}
@media screen and (max-width: 767px) {
  .sec-contact .sec-inner .contact-wrap.__tel p {
    font-size: 1.645em;
    margin-top: 0.2em;
  }
}
.sec-contact .sec-inner .contact-wrap.__tel p a {
  display: inline;
  font-size: 1em;
}
.sec-contact .sec-inner .contact-wrap.__tel p i {
  font-size: 0.8em;
  margin-right: 0.6em;
}
.sec-contact .sec-inner .contact-wrap.__mail {
  background-color: #edece8;
}
.sec-contact .sec-inner .contact-wrap.__mail .__linkbtn span.__txt i {
  font-size: 1.125em;
  margin-right: 0.6em;
}

.anchor-list {
  position: relative;
  z-index: 4;
  background-color: #fff;
}
.anchor-list ul {
  display: flex;
  flex-wrap: wrap;
}
.anchor-list ul .anchor-link {
  width: 33.3333333333%;
  border-right: solid 1px #fff;
  border-top: solid 1px #fff;
}
.anchor-list ul .anchor-link:nth-of-type(3n) {
  border-right: none;
}
.anchor-list ul .anchor-link:nth-of-type(1), .anchor-list ul .anchor-link:nth-of-type(2), .anchor-list ul .anchor-link:nth-of-type(3) {
  border-top: none;
}
@media screen and (max-width: 991px) {
  .anchor-list ul .anchor-link {
    width: 50%;
  }
  .anchor-list ul .anchor-link:nth-of-type(3n) {
    border-right: solid 1px #fff;
  }
  .anchor-list ul .anchor-link:nth-of-type(2n) {
    border-right: 0;
  }
  .anchor-list ul .anchor-link:nth-of-type(3) {
    border-top: solid 1px #fff;
  }
}
@media screen and (max-width: 767px) {
  .anchor-list ul .anchor-link {
    width: 100%;
    border-right: none;
  }
  .anchor-list ul .anchor-link:nth-of-type(2) {
    border-top: solid 1px #fff;
  }
}
.anchor-list ul .anchor-link a {
  position: relative;
  color: #534439;
  background-color: #d4cebc;
  text-align: center;
  font-size: 0.95em;
  padding: 1.875rem 2em;
  transition: all 0.24s ease;
}
@media screen and (max-width: 1199px) {
  .anchor-list ul .anchor-link a {
    font-size: 0.9em;
  }
}
@media screen and (max-width: 991px) {
  .anchor-list ul .anchor-link a {
    text-align: start;
    padding: 2em;
  }
}
@media screen and (max-width: 767px) {
  .anchor-list ul .anchor-link a {
    padding: 1.6em;
  }
}
.anchor-list ul .anchor-link a::before {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  margin-right: 2em;
  content: "\f078";
  display: block;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 0.9em;
}
.anchor-list ul .anchor-link a span.__num {
  margin-left: -2em;
}
@media screen and (max-width: 991px) {
  .anchor-list ul .anchor-link a span.__num {
    margin-left: 0;
  }
}
.anchor-list ul .anchor-link a:hover {
  background-color: #c8c0a5;
}

.paging-wrap {
  margin-top: 6em;
  margin-bottom: 2em;
}
@media screen and (max-width: 1199px) {
  .paging-wrap {
    margin-top: 4.8em;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .paging-wrap {
    margin-bottom: 1.6em;
  }
}

.paging {
  display: flex;
  align-items: center;
  justify-content: center;
}
.paging > span {
  font-family: "Red Rose", sans-serif;
  width: 4em;
  height: 4em;
  background-color: #edece8;
  border-radius: 50%;
  overflow: clip;
  font-size: 1.125em;
  margin: 0 0.6em;
}
@media screen and (max-width: 767px) {
  .paging > span {
    width: min(12vw, 4em);
    height: min(12vw, 4em);
    margin: 0 0.2em;
    font-size: 1em;
  }
}
.paging > span.paging-text a {
  cursor: pointer;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1em;
  transition: all 0.2s ease;
}
.paging > span.paging-text a:hover {
  background-color: #d4cebc;
}
.paging > span.current {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background-color: #393d39;
}
.paging > span.paging-prev {
  width: auto;
  background-color: initial;
  margin-right: 1em;
}
.paging > span.paging-prev a {
  opacity: 1;
}
.paging > span.paging-prev a i {
  color: #5b7157;
  margin-right: 0.4em;
}
.paging > span.paging-prev a:hover {
  background-color: initial;
  opacity: 0.6;
}
.paging > span.paging-next {
  width: auto;
  background-color: initial;
  margin-left: 1em;
}
.paging > span.paging-next a {
  opacity: 1;
}
.paging > span.paging-next a i {
  color: #5b7157;
  margin-left: 0.4em;
}
.paging > span.paging-next a:hover {
  background-color: initial;
  opacity: 0.6;
}

.filter-list {
  padding-top: 2em;
}
.filter-list .filter-name {
  font-size: 0.95em;
}
@media screen and (max-width: 1199px) {
  .filter-list .filter-name {
    font-size: 0.9em;
  }
}
.filter-list ul {
  display: flex;
  flex-wrap: wrap;
}
.filter-list ul .filter-list-item {
  margin-right: 0.6em;
  margin-top: 0.6em;
}
.filter-list ul .filter-list-item a {
  color: #fff;
  font-weight: 600;
  font-size: 0.85em;
  padding: 0.4em 2em 0.6em;
  border-radius: 50vh;
  transition: all 0.24s ease;
}
@media screen and (max-width: 767px) {
  .filter-list ul .filter-list-item a {
    padding: 0.1em 1.6em 0.3em;
  }
}
.filter-list ul .filter-list-item a:hover {
  opacity: 0.7;
}
.filter-list ul .filter-list-item.__current a {
  pointer-events: none;
}
.filter-list.__genre .filter-name::before {
  color: #5b7157;
}
.filter-list.__genre ul .filter-list-item a {
  background-color: #6e7e6b;
}
.filter-list.__genre ul .filter-list-item.__current a {
  background-color: #393d39;
}
.filter-list.__category .filter-name::before {
  color: #736250;
}
.filter-list.__category ul .filter-list-item a {
  background-color: #736250;
}
.filter-list.__category ul .filter-list-item.__current a {
  background-color: #393d39;
}

.__table-style dl {
  display: flex;
}
@media screen and (max-width: 767px) {
  .__table-style dl {
    display: block;
  }
}
.__table-style dl dt {
  font-weight: 800;
  width: 12em;
  padding: 1.6em 0;
  border-bottom: solid 3px #333;
}
@media screen and (max-width: 767px) {
  .__table-style dl dt {
    width: 100%;
    padding-bottom: 0.6em;
    border-bottom: none;
  }
}
.__table-style dl dd {
  width: calc(100% - 12em);
  padding: 1.6em 0;
  padding-left: 2em;
  border-bottom: solid 1px #333;
}
@media screen and (max-width: 767px) {
  .__table-style dl dd {
    width: 100%;
    padding-top: 0;
    padding-left: 0;
  }
}
.__table-style dl dd a {
  display: inline;
  font-size: 1em;
}
.__table-style dl dd ul.__note li {
  font-size: 0.9em;
}

/* service.html
---------------------------------------------------- */
.sec-service .__bgimg-leaf {
  position: absolute;
  top: 0;
  width: 60rem;
  aspect-ratio: 2/1;
}
@media screen and (max-width: 767px) {
  .sec-service .__bgimg-leaf {
    width: 75%;
  }
}
.sec-service .__bgimg-leaf::before {
  background-image: url(../images/bgimg-leaf03.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: bottom;
  width: 100%;
}
.sec-service.__01 .__bgimg-leaf, .sec-service.__03 .__bgimg-leaf, .sec-service.__05 .__bgimg-leaf {
  right: 0;
  margin-top: 4%;
}
@media screen and (max-width: 767px) {
  .sec-service.__01 .__bgimg-leaf, .sec-service.__03 .__bgimg-leaf, .sec-service.__05 .__bgimg-leaf {
    margin-top: 0;
  }
}
.sec-service.__02 .__bgimg-leaf, .sec-service.__04 .__bgimg-leaf, .sec-service.__06 .__bgimg-leaf {
  left: 0;
}
.sec-service.__02 .__bgimg-leaf::before, .sec-service.__04 .__bgimg-leaf::before, .sec-service.__06 .__bgimg-leaf::before {
  transform: scaleX(-1);
}
.sec-service .sec-ttl h3 span.__jp .__num {
  display: inline-block;
  font-family: "Red Rose", sans-serif;
  font-size: 1.125em;
  border-left: solid 1px #534439;
  border-right: solid 1px #534439;
  padding: 0 0.4em;
  margin-right: 1em;
}
.sec-service .sec-ttl h3 span.__en {
  color: #b3a98d;
}
.sec-service .sec-ttl h3 span.__en .__rotated {
  color: #5b7157;
}
.sec-service .sec-content .service-txt {
  margin-top: 3em;
}
@media screen and (max-width: 1199px) {
  .sec-service .sec-content .service-txt {
    margin-top: 2em;
  }
}
.sec-service.__03 .sec-ttl h3 span.__en .__rotated {
  transform: translate(1em, 4.8em) rotate(-90deg);
}
@media screen and (max-width: 991px) {
  .sec-service.__03 .sec-ttl h3 span.__en .__rotated {
    transform: initial;
  }
}
.sec-service.__04 .sec-ttl h3 span.__en .__rotated {
  transform: translate(1em, 3.2em) rotate(-90deg);
}
@media screen and (max-width: 991px) {
  .sec-service.__04 .sec-ttl h3 span.__en .__rotated {
    transform: initial;
  }
}
.sec-service.__05 .sec-ttl h3 span.__en .__rotated {
  transform: translate(1em, 5em) rotate(-90deg);
}
@media screen and (max-width: 991px) {
  .sec-service.__05 .sec-ttl h3 span.__en .__rotated {
    transform: initial;
  }
}
.sec-service.__06 .sec-ttl h3 span.__en .__rotated {
  transform: translate(1em, 4.3em) rotate(-90deg);
}
@media screen and (max-width: 991px) {
  .sec-service.__06 .sec-ttl h3 span.__en .__rotated {
    transform: initial;
  }
}

/* works.html
---------------------------------------------------- */
.sec-work-list {
  padding-top: 1em;
}
.sec-work-list .work-list {
  margin-top: 2em;
}
@media screen and (max-width: 1199px) {
  .sec-work-list .work-list ul li {
    width: calc(33.3333333333% - 0.6666666667em);
    margin-top: 1em;
    margin-right: 1em;
  }
  .sec-work-list .work-list ul li:nth-of-type(4n) {
    margin-right: 1em;
  }
  .sec-work-list .work-list ul li:nth-of-type(3n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 991px) {
  .sec-work-list .work-list ul li {
    width: calc(50% - 0.5em);
    margin-top: 1em;
    margin-right: 1em;
  }
  .sec-work-list .work-list ul li:nth-of-type(3n) {
    margin-right: 1em;
  }
  .sec-work-list .work-list ul li:nth-of-type(2n) {
    margin-right: 0;
  }
}

/* catalog.html
---------------------------------------------------- */
.anchor-list.__catalog ul .anchor-link {
  width: 25%;
}
.anchor-list.__catalog ul .anchor-link:nth-of-type(3n) {
  border-right: solid 1px #fff;
}
.anchor-list.__catalog ul .anchor-link:nth-of-type(4n) {
  border-right: none;
  border-top: none;
}
@media screen and (max-width: 991px) {
  .anchor-list.__catalog ul .anchor-link {
    width: 50%;
  }
  .anchor-list.__catalog ul .anchor-link:nth-of-type(2n) {
    border-right: 0;
  }
  .anchor-list.__catalog ul .anchor-link:nth-of-type(4n) {
    border-top: solid 1px #fff;
  }
}
@media screen and (max-width: 767px) {
  .anchor-list.__catalog ul .anchor-link {
    width: 100%;
    border-right: none;
  }
  .anchor-list.__catalog ul .anchor-link:nth-of-type(2) {
    border-top: solid 1px #fff;
  }
}
.anchor-list .catalog-content {
  background: linear-gradient(0deg, #d4cebc, transparent);
}
.anchor-list .catalog-content .content-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.anchor-list .catalog-content .content-inner .intro-txt {
  width: calc(100% - 36em - 4em);
}
@media screen and (max-width: 1199px) {
  .anchor-list .catalog-content .content-inner .intro-txt {
    width: 100%;
  }
}
.anchor-list .catalog-content .content-inner .intro-txt ul.__note {
  margin-top: 2em;
}
.anchor-list .catalog-content .content-inner .intro-txt ul.__note li {
  font-size: 0.9em;
}
@media screen and (min-width: 1200px) {
  .anchor-list .catalog-content .content-inner .intro-txt ul.__note li span.__pc-hidden {
    display: none;
  }
}
@media screen and (max-width: 1199px) {
  .anchor-list .catalog-content .content-inner .intro-txt ul.__note li span.__notepc-hidden {
    display: none;
  }
}
.anchor-list .catalog-content .content-inner .catalog-book {
  width: 36em;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media screen and (max-width: 1199px) {
  .anchor-list .catalog-content .content-inner .catalog-book {
    margin: 0 auto;
    margin-top: 4em;
  }
}
.anchor-list .catalog-content .content-inner .catalog-book .book-wrap {
  width: calc(50% - 1em);
}
.anchor-list .catalog-content .content-inner .catalog-book .book-wrap a {
  transition: all 0.6s ease;
}
.anchor-list .catalog-content .content-inner .catalog-book .book-wrap a .cover-img {
  box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.2);
}
.anchor-list .catalog-content .content-inner .catalog-book .book-wrap a .cover-img img {
  width: 100%;
  height: auto;
}
.anchor-list .catalog-content .content-inner .catalog-book .book-wrap a:hover {
  opacity: 0.7;
  transform: translateY(-4px);
}

.sec-catalog.__02 {
  background-color: #edece8;
}
.sec-catalog .sec-ttl {
  margin-top: -2em;
}
@media screen and (max-width: 1199px) {
  .sec-catalog .sec-ttl {
    margin-top: -1em;
  }
}
.sec-catalog .sec-ttl h3 {
  text-shadow: none;
}
.sec-catalog .sec-ttl h3 span.__en {
  color: #5b7157;
}
.sec-catalog .sec-ttl h3 span.__en .__rotated {
  color: #b3a98d;
  transform: translate(1em, 5.9em) rotate(-90deg);
}
@media screen and (max-width: 991px) {
  .sec-catalog .sec-ttl h3 span.__en .__rotated {
    transform: initial;
  }
}
.sec-catalog .sec-content {
  margin-top: -1em;
}
@media screen and (max-width: 1199px) {
  .sec-catalog .sec-content {
    margin-top: 1em;
  }
}
.sec-catalog .sec-content .catalog-ttl h3 {
  color: #393d39;
  text-align: end;
  font-size: 2rem;
}
@media screen and (max-width: 1199px) {
  .sec-catalog .sec-content .catalog-ttl h3 {
    font-size: 1.5em;
  }
}
@media screen and (max-width: 767px) {
  .sec-catalog .sec-content .catalog-ttl h3 {
    font-size: 1.25em;
  }
}
.sec-catalog .sec-content .catalog-ttl h3::before {
  color: #6e7e6b;
}
.sec-catalog .sec-content .catalog-ttl h3 span.__num {
  font-size: 0.8em;
}
.sec-catalog .sec-content .catalog-list ul {
  display: flex;
  flex-wrap: wrap;
}
.sec-catalog .sec-content .catalog-list ul li {
  background-color: #fff;
  border: solid 1px #edece8;
  box-shadow: 2px 2px 8px rgba(40, 40, 40, 0.1);
  width: calc(33.3333333333% - 1.25rem);
  margin-top: 1.875rem;
  margin-right: 1.875rem;
}
.sec-catalog .sec-content .catalog-list ul li:nth-of-type(3n) {
  margin-right: 0;
}
@media screen and (max-width: 1199px) {
  .sec-catalog .sec-content .catalog-list ul li {
    width: calc(50% - 1em);
    margin-top: 2em;
    margin-right: 2em;
  }
  .sec-catalog .sec-content .catalog-list ul li:nth-of-type(3n) {
    margin-right: 2em;
  }
  .sec-catalog .sec-content .catalog-list ul li:nth-of-type(2n) {
    margin-right: 0;
  }
}
.sec-catalog .sec-content .catalog-list ul li a {
  padding: 1em;
  transition: all 0.4s ease;
}
@media screen and (max-width: 1199px) {
  .sec-catalog .sec-content .catalog-list ul li a {
    padding: 2em 2em 1em;
  }
}
@media screen and (max-width: 767px) {
  .sec-catalog .sec-content .catalog-list ul li a {
    padding: 0.8em;
  }
}
.sec-catalog .sec-content .catalog-list ul li a .item-img {
  width: 100%;
  aspect-ratio: 4/3;
  background-color: #fff;
  overflow: clip;
}
.sec-catalog .sec-content .catalog-list ul li a .item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  will-change: transform;
  transition: all 0.4s ease;
}
.sec-catalog .sec-content .catalog-list ul li a .item-ttl {
  margin-top: 1em;
  padding-right: 1em;
}
.sec-catalog .sec-content .catalog-list ul li a .item-ttl h4 {
  font-weight: 700;
  color: #736250;
  line-height: 1.6em;
}
.sec-catalog .sec-content .catalog-list ul li a .item-icon {
  text-align: end;
  margin-top: -1.6em;
}
.sec-catalog .sec-content .catalog-list ul li a:hover {
  opacity: 0.7;
}
.sec-catalog .sec-content .catalog-list ul li a:hover .item-img img {
  transform: scale(1.05);
}
.sec-catalog.__flower.__bgimg-leaf::before {
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 2/1;
  background-image: url(../images/bgimg-leaf02.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: top;
}
.sec-catalog.__flower.__bgimg-leaf::after {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 2/1;
  background: linear-gradient(0deg, #fff, transparent);
}
.sec-catalog.__flower .sec-inner {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .sec-catalog.__flower .sec-inner {
    display: block;
  }
}
.sec-catalog.__flower .sec-inner .img-wrap {
  width: 48.75rem;
  margin-top: 3.75rem;
}
@media screen and (max-width: 1199px) {
  .sec-catalog.__flower .sec-inner .img-wrap {
    margin-top: 3em;
  }
}
@media screen and (max-width: 767px) {
  .sec-catalog.__flower .sec-inner .img-wrap {
    width: 100%;
    box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.2);
    aspect-ratio: 3/2;
    margin-top: 0;
  }
}
.sec-catalog.__flower .sec-inner .img-wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-catalog.__flower .sec-inner .txt-wrap {
  position: relative;
  width: calc(100% - 48.75rem - 10rem);
}
@media screen and (max-width: 767px) {
  .sec-catalog.__flower .sec-inner .txt-wrap {
    width: 100%;
  }
}
.sec-catalog.__flower .sec-inner .txt-wrap .sec-ttl h3 {
  text-shadow: 0px 0px 16px rgb(255, 255, 255);
  padding-top: 17.5rem;
}
@media screen and (max-width: 1199px) {
  .sec-catalog.__flower .sec-inner .txt-wrap .sec-ttl h3 {
    padding-top: min(21vw, 160px);
  }
}
@media screen and (max-width: 767px) {
  .sec-catalog.__flower .sec-inner .txt-wrap .sec-ttl h3 {
    padding-top: 4em;
  }
}
.sec-catalog.__flower .sec-inner .txt-wrap .sec-ttl h3 span.__en {
  position: absolute;
  top: 0;
  right: 0;
  color: #636763;
  line-height: 0.8em;
}
@media screen and (max-width: 1199px) {
  .sec-catalog.__flower .sec-inner .txt-wrap .sec-ttl h3 span.__en {
    font-size: min(10.5vw, 80px);
  }
}
@media screen and (max-width: 767px) {
  .sec-catalog.__flower .sec-inner .txt-wrap .sec-ttl h3 span.__en {
    position: relative;
  }
}
.sec-catalog.__flower .sec-inner .txt-wrap .sec-ttl h3 span.__jp {
  margin-top: 1em;
}
.sec-catalog.__flower .sec-inner .txt-wrap .sec-txt {
  margin-top: 3.75rem;
}
@media screen and (max-width: 767px) {
  .sec-catalog.__flower .sec-inner .txt-wrap .sec-txt {
    margin-top: 2em;
  }
}
.sec-catalog.__flower .sec-inner .txt-wrap .sec-txt p {
  line-height: 2.4em;
}

/* workflow.html
---------------------------------------------------- */
.sec-workflow {
  padding-top: 2em;
  overflow-x: clip;
}
@media screen and (max-width: 991px) {
  .sec-workflow {
    padding-top: 4em;
  }
}
.sec-workflow::before {
  bottom: 0;
  left: 0;
  width: 37.5rem;
  background-image: url(../images/bgimg-leaf01.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: bottom;
}
.sec-workflow .sec-ttl h3 em {
  color: #b3a98d;
}
.sec-workflow .sec-content {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  align-items: center;
  margin-top: 3em;
}
@media screen and (max-width: 1199px) {
  .sec-workflow .sec-content {
    display: block;
    margin-top: 1em;
  }
}
.sec-workflow .sec-content .flow-animation {
  margin-top: -2em;
}
@media screen and (max-width: 1199px) {
  .sec-workflow .sec-content .flow-animation {
    margin-top: 0;
  }
}
.sec-workflow .sec-content .flow-animation .animation-inner {
  position: relative;
  width: 36em;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 1199px) {
  .sec-workflow .sec-content .flow-animation .animation-inner {
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .sec-workflow .sec-content .flow-animation .animation-inner {
    width: min(100%, 36em);
  }
}
.sec-workflow .sec-content .flow-animation .animation-inner ul li {
  position: absolute;
}
@media screen and (max-width: 767px) {
  .sec-workflow .sec-content .flow-animation .animation-inner ul li {
    max-width: 8em;
    font-size: 0.95em;
  }
}
.sec-workflow .sec-content .flow-animation .animation-inner ul li:nth-of-type(1) {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  margin-top: 5%;
}
@media screen and (max-width: 767px) {
  .sec-workflow .sec-content .flow-animation .animation-inner ul li:nth-of-type(1) {
    margin-left: 2%;
  }
}
.sec-workflow .sec-content .flow-animation .animation-inner ul li:nth-of-type(2) {
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  margin-top: -18%;
  margin-left: 13%;
}
@media screen and (max-width: 767px) {
  .sec-workflow .sec-content .flow-animation .animation-inner ul li:nth-of-type(2) {
    margin-left: 6%;
  }
}
.sec-workflow .sec-content .flow-animation .animation-inner ul li:nth-of-type(3) {
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  margin-top: 18%;
  margin-left: 13%;
}
@media screen and (max-width: 767px) {
  .sec-workflow .sec-content .flow-animation .animation-inner ul li:nth-of-type(3) {
    margin-left: 6%;
    margin-top: 22%;
  }
}
.sec-workflow .sec-content .flow-animation .animation-inner ul li:nth-of-type(4) {
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: 2%;
}
@media screen and (max-width: 767px) {
  .sec-workflow .sec-content .flow-animation .animation-inner ul li:nth-of-type(4) {
    margin-left: 2%;
  }
}
.sec-workflow .sec-content .flow-animation .animation-inner ul li:nth-of-type(5) {
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  margin-right: 8%;
}
@media screen and (max-width: 767px) {
  .sec-workflow .sec-content .flow-animation .animation-inner ul li:nth-of-type(5) {
    margin-right: 2%;
  }
}
.sec-workflow .sec-content .flow-animation .animation-inner ul li:nth-of-type(6) {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin-left: 5%;
}
@media screen and (max-width: 767px) {
  .sec-workflow .sec-content .flow-animation .animation-inner ul li:nth-of-type(6) {
    margin-left: 7%;
  }
}
.sec-workflow .sec-content .flow-animation .animation-inner ul li span.__num {
  color: #6e7e6b;
  display: block;
  font-size: 4em;
  line-height: 1em;
}
@media screen and (max-width: 1199px) {
  .sec-workflow .sec-content .flow-animation .animation-inner ul li span.__num {
    font-size: 3.75em;
  }
}
@media screen and (max-width: 767px) {
  .sec-workflow .sec-content .flow-animation .animation-inner ul li span.__num {
    font-size: min(10vw, 3.75em);
  }
}
.sec-workflow .sec-content .flow-animation .animation-inner .flow-illust {
  position: absolute;
  top: 0;
  right: 0;
  width: 21%;
  margin-top: 10%;
  margin-right: 15%;
}
@media screen and (max-width: 767px) {
  .sec-workflow .sec-content .flow-animation .animation-inner .flow-illust {
    margin-top: 20%;
  }
}
.sec-workflow .sec-content .flow-animation .animation-inner .flow-illust img {
  width: 100%;
  height: auto;
}
.sec-workflow .sec-content .flow-list {
  width: calc(100% - 36em - 2em);
}
@media screen and (max-width: 1199px) {
  .sec-workflow .sec-content .flow-list {
    width: 100%;
    margin-top: 2em;
  }
}
.sec-workflow .sec-content .flow-list ul {
  background-color: rgba(255, 255, 255, 0.6);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
  box-shadow: 2px 2px 8px rgba(40, 40, 40, 0.1);
  padding: 3em;
  border-radius: 1.875rem;
}
@media screen and (max-width: 767px) {
  .sec-workflow .sec-content .flow-list ul {
    padding: 2em;
  }
}
.sec-workflow .sec-content .flow-list ul .flow-list-item {
  margin-top: 2em;
}
.sec-workflow .sec-content .flow-list ul .flow-list-item:nth-of-type(1) {
  margin-top: 0;
}
.sec-workflow .sec-content .flow-list ul .flow-list-item h4 {
  font-weight: 700;
  font-size: 1.125em;
  color: #5b7157;
}
@media screen and (max-width: 767px) {
  .sec-workflow .sec-content .flow-list ul .flow-list-item h4 {
    font-size: 1em;
  }
}
.sec-workflow .sec-content .flow-list ul .flow-list-item p {
  margin-top: 1em;
}

.sec-faq {
  background-color: #d4cebc;
}
.sec-faq .faq-list {
  margin-top: 4em;
}
.sec-faq .faq-list ul li {
  border-radius: 1.875rem;
  box-shadow: 2px 2px 8px rgba(40, 40, 40, 0.1);
  overflow: clip;
  margin-top: 2em;
}
@media screen and (max-width: 767px) {
  .sec-faq .faq-list ul li {
    margin-top: 1em;
  }
}
.sec-faq .faq-list ul li .faq-content {
  background-color: #fff;
  padding: 1.6em 2em;
}
@media screen and (max-width: 767px) {
  .sec-faq .faq-list ul li .faq-content {
    padding: 1.2em;
  }
}
.sec-faq .faq-list ul li .faq-content p {
  font-weight: 600;
  display: flex;
  align-items: baseline;
}
@media screen and (max-width: 767px) {
  .sec-faq .faq-list ul li .faq-content p {
    line-height: 1.6em;
  }
}
.sec-faq .faq-list ul li .faq-content p::before {
  font-family: "Red Rose", sans-serif;
  font-size: 1.25em;
  display: block;
  margin-right: 0.4em;
  flex-shrink: 0;
}
.sec-faq .faq-list ul li .faq-content.accordion-question {
  cursor: pointer;
  position: relative;
  padding-right: 4em;
}
@media screen and (max-width: 767px) {
  .sec-faq .faq-list ul li .faq-content.accordion-question {
    padding-right: 3em;
  }
}
.sec-faq .faq-list ul li .faq-content.accordion-question p::before {
  color: #5d8c62;
  content: "Q.";
}
.sec-faq .faq-list ul li .faq-content.accordion-question .__icon::before {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  margin-right: 2em;
  content: "+";
  display: block;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
}
@media screen and (max-width: 767px) {
  .sec-faq .faq-list ul li .faq-content.accordion-question .__icon::before {
    margin-right: 1em;
  }
}
.sec-faq .faq-list ul li .faq-content.accordion-question.__open .__icon::before {
  content: "\f068";
}
.sec-faq .faq-list ul li .faq-content.accordion-answer {
  display: none;
  border-top: solid 1px #d4cebc;
}
.sec-faq .faq-list ul li .faq-content.accordion-answer p::before {
  color: #ac453f;
  content: "A.";
}

/* company.html
---------------------------------------------------- */
.sec-company_greeting::before {
  top: 0;
  right: 0;
  width: 37.5rem;
  background-image: url(../images/bgimg-leaf01.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: bottom;
  transform: scale(-1);
}
.sec-company_greeting .sec-inner .sec-ttl span.__en {
  color: #6e7e6b;
}
.sec-company_greeting .sec-inner .sec-content {
  margin-top: 2em;
}
.sec-company_greeting .sec-inner .sec-content h4 {
  font-weight: 800;
  font-size: 1.375em;
  width: 27em;
}
@media screen and (max-width: 1199px) {
  .sec-company_greeting .sec-inner .sec-content h4 {
    padding-left: 0;
  }
}
@media screen and (max-width: 991px) {
  .sec-company_greeting .sec-inner .sec-content h4 {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .sec-company_greeting .sec-inner .sec-content h4 {
    font-size: 1.125em;
  }
}
.sec-company_greeting .sec-inner .sec-content h4 span.__txt em {
  color: #b3a98d;
}
.sec-company_greeting .sec-inner .sec-content h4::before, .sec-company_greeting .sec-inner .sec-content h4::after {
  width: calc((100% - 15.5em) / 2 - 0.4em);
}
.sec-company_greeting .sec-inner .sec-content p {
  line-height: 2.4em;
  margin-top: 2em;
}
.sec-company_greeting .sec-inner .sec-content p.__name {
  text-align: end;
  font-weight: 600;
}
.sec-company_greeting .sec-inner .sec-content p.__name em {
  font-size: 1.25em;
}

.sec-company_overview {
  color: #fff;
  background-color: #5b7157;
}
.sec-company_overview.__content-style02 .sec-inner .sec-ttl {
  margin-top: 0;
}
.sec-company_overview.__content-style02 .sec-inner .sec-ttl span.__en {
  color: #c8c0a5;
  font-size: 11.25rem;
}
@media screen and (max-width: 1199px) {
  .sec-company_overview.__content-style02 .sec-inner .sec-ttl span.__en {
    font-size: min(13vw, 80px);
  }
}
.sec-company_overview.__content-style02 .sec-inner .sec-content {
  width: calc(100% - 11.25rem);
  min-height: 56em;
}
@media screen and (max-width: 1199px) {
  .sec-company_overview.__content-style02 .sec-inner .sec-content {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .sec-company_overview.__content-style02 .sec-inner .sec-content {
    margin-top: 1em;
  }
}
.sec-company_overview.__content-style02 .sec-inner .sec-content dl dt, .sec-company_overview.__content-style02 .sec-inner .sec-content dl dd {
  border-bottom-color: #edece8;
}

.sec-company_history::before {
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 2/1;
  background-image: url(../images/bgimg-leaf02.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: top;
}
.sec-company_history::after {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 2/1;
  background: linear-gradient(0deg, #fff, transparent);
}
.sec-company_history .sec-ttl h3 span.__en {
  color: #6e7e6b;
}
.sec-company_history .sec-inner {
  position: relative;
  margin-top: -2em;
}
.sec-company_history .sec-inner .swiper-arrow {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 1em;
}
.sec-company_history .sec-inner .swiper-arrow .swiper-button-next,
.sec-company_history .sec-inner .swiper-arrow .swiper-button-prev {
  --swiper-navigation-color: #333;
  position: relative;
  top: initial;
  left: initial;
  right: initial;
  margin-top: 0;
}
.sec-company_history .sec-inner .swiper-arrow .swiper-button-next::after,
.sec-company_history .sec-inner .swiper-arrow .swiper-button-prev::after {
  font-size: 2em;
  transform: scaleY(0.6);
}
.sec-company_history .sec-inner .swiper-arrow .swiper-button-prev {
  margin-right: 2em;
}
.sec-company_history .sec-inner .slider-history {
  width: calc(100% - (100% - 99.375 * 1rem) / 2);
  margin: 0 0 0 auto;
  padding-bottom: 4em;
}
@media screen and (max-width: 991px) {
  .sec-company_history .sec-inner .slider-history {
    width: calc(100% - 40px);
  }
}
@media screen and (max-width: 767px) {
  .sec-company_history .sec-inner .slider-history {
    width: calc(100% - 20px);
  }
}
.sec-company_history .sec-inner .slider-history .swiper-wrapper .swiper-slide {
  height: auto;
  padding: 2px;
}
.sec-company_history .sec-inner .slider-history .swiper-wrapper .swiper-slide .slide-inner {
  position: relative;
  z-index: 2;
  background-color: rgba(255, 255, 255, 0.2);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
  box-shadow: 2px 2px 8px rgba(40, 40, 40, 0.1);
  border-radius: 1.875rem;
  height: 100%;
  padding: 5rem 3em 10rem;
  margin-right: 1.875rem;
  overflow: clip;
}
@media screen and (max-width: 1199px) {
  .sec-company_history .sec-inner .slider-history .swiper-wrapper .swiper-slide .slide-inner {
    margin-right: 1em;
    padding: 3em 2em 6em;
  }
}
.sec-company_history .sec-inner .slider-history .swiper-wrapper .swiper-slide .history-content p {
  color: #393d39;
  font-weight: 700;
}
.sec-company_history .sec-inner .slider-history .swiper-wrapper .swiper-slide .history-content p span.__year {
  display: block;
  margin-bottom: 1em;
}
.sec-company_history .sec-inner .slider-history .swiper-wrapper .swiper-slide .history-content a.__txtlink {
  display: inline-block;
  color: #6e7e6b;
  font-size: 0.9em;
  margin-top: 1em;
}
.sec-company_history .sec-inner .slider-history .swiper-wrapper .swiper-slide .history-year {
  color: #d4cebc;
  position: absolute;
  z-index: -1;
  bottom: 0;
  right: 0;
  margin-right: 0.1em;
  margin-bottom: -0.1em;
  font-size: 10rem;
  line-height: 1em;
  letter-spacing: 0;
  opacity: 0.6;
}
@media screen and (max-width: 1199px) {
  .sec-company_history .sec-inner .slider-history .swiper-wrapper .swiper-slide .history-year {
    font-size: 5em;
  }
}
.sec-company_history .sec-inner .swiper-pagination {
  bottom: 0;
}
.sec-company_history .sec-inner .swiper-pagination-bullet {
  background-color: #333;
  width: 7px;
  height: 7px;
}

.sec-company_client {
  background-color: #edece8;
}
.sec-company_client .client-list {
  margin-top: 4em;
}
@media screen and (max-width: 1199px) {
  .sec-company_client .client-list {
    margin-top: 3em;
  }
}
.sec-company_client .client-list ul {
  display: flex;
  flex-wrap: wrap;
}
.sec-company_client .client-list ul li {
  color: #393d39;
  width: 33.3333333333%;
  font-size: 0.9em;
  margin-top: 1em;
}
@media screen and (max-width: 1199px) {
  .sec-company_client .client-list ul li {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .sec-company_client .client-list ul li {
    width: 100%;
  }
}

.sec-company_access {
  padding-bottom: 20px;
}
@media screen and (max-width: 1199px) {
  .sec-company_access {
    padding-top: 48px;
  }
}
.sec-company_access::before {
  top: 0;
  left: 0;
  width: 37.5rem;
  background-image: url(../images/bgimg-leaf01.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: bottom;
  transform: scaleY(-1);
}
.sec-company_access.__content-style02 .sec-inner .sec-ttl {
  margin-top: 0;
}
.sec-company_access.__content-style02 .sec-inner .sec-ttl span.__en {
  color: #6e7e6b;
  font-size: 11.25rem;
}
@media screen and (max-width: 1199px) {
  .sec-company_access.__content-style02 .sec-inner .sec-ttl span.__en {
    font-size: min(13vw, 80px);
  }
}
.sec-company_access.__content-style02 .sec-inner .sec-content {
  width: calc(100% - 11.25rem);
}
@media screen and (max-width: 1199px) {
  .sec-company_access.__content-style02 .sec-inner .sec-content {
    width: 100%;
    margin-top: 2em;
  }
}
.sec-company_access.__content-style02 .sec-inner .sec-content .map-wrap {
  width: 100%;
  height: 37.5rem;
  box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 1199px) {
  .sec-company_access.__content-style02 .sec-inner .sec-content .map-wrap {
    height: 400px;
  }
}
@media screen and (max-width: 767px) {
  .sec-company_access.__content-style02 .sec-inner .sec-content .map-wrap {
    height: 320px;
  }
}
.sec-company_access.__content-style02 .sec-inner .sec-content .map-wrap iframe {
  width: 100%;
  height: 100%;
}
.sec-company_access.__content-style02 .sec-inner .sec-content .access-txt {
  margin-top: 2em;
}
.sec-company_access.__content-style02 .sec-inner .sec-content .access-txt h4 {
  color: #5d8c62;
  font-weight: 800;
  font-size: 1.25em;
}
.sec-company_access.__content-style02 .sec-inner .sec-content .access-txt p {
  margin-top: 1em;
}
.sec-company_access.__content-style02 .sec-inner .sec-content .access-txt ul li {
  font-size: 0.9em;
}
@media screen and (max-width: 767px) {
  .sec-company_access.__content-style02 .sec-inner .sec-content .access-txt ul li {
    font-size: 0.95em;
    margin-top: 1em;
  }
}

.sec-company_links .sec-ttl span.__en {
  color: #b3a98d;
}
.sec-company_links .sec-content {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 3em;
}
@media screen and (max-width: 991px) {
  .sec-company_links .sec-content {
    margin-top: 2em;
  }
}
.sec-company_links .sec-content .link-wrap {
  width: calc(50% - 1em);
}
@media screen and (max-width: 991px) {
  .sec-company_links .sec-content .link-wrap {
    width: 100%;
  }
  .sec-company_links .sec-content .link-wrap:nth-of-type(2) {
    margin-top: 1em;
  }
}
.sec-company_links .sec-content .link-wrap a {
  text-align: center;
  color: #fff;
  background-color: #736250;
  box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.2);
  padding: 3em 1.875rem;
  transition: all 0.24s ease;
}
@media screen and (max-width: 991px) {
  .sec-company_links .sec-content .link-wrap a {
    padding: 2em 1em;
  }
}
.sec-company_links .sec-content .link-wrap a:hover {
  opacity: 0.7;
}
.sec-company_links .sec-content .link-wrap a h4 {
  font-weight: 700;
  font-size: 1.125em;
}
@media screen and (max-width: 1199px) {
  .sec-company_links .sec-content .link-wrap a h4 {
    font-size: 1em;
  }
}
@media screen and (max-width: 991px) {
  .sec-company_links .sec-content .link-wrap a h4 {
    font-size: min(4vw, 1.125em);
  }
}
@media screen and (max-width: 767px) {
  .sec-company_links .sec-content .link-wrap a h4 {
    font-size: min(3.6vw, 1em);
  }
}
.sec-company_links .sec-content .link-wrap a h4::after {
  content: "\f08e";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 0.75em;
  margin-left: 0.4em;
  flex-shrink: 0;
}
.sec-company_links .sec-content .link-wrap a p {
  margin-top: 1em;
}
@media screen and (max-width: 1199px) {
  .sec-company_links .sec-content .link-wrap a p {
    font-size: 0.9em;
  }
}
@media screen and (max-width: 767px) {
  .sec-company_links .sec-content .link-wrap a p {
    margin-top: 0.4em;
  }
}

/* recruit.html
---------------------------------------------------- */
.sec-recruit_intro::before {
  top: 0;
  right: 0;
  width: 35rem;
  background-image: url(../images/bgimg-leaf01.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: bottom;
  transform: scale(-1);
}
.sec-recruit_intro .sec-catch h3 {
  text-align: center;
  font-weight: 800;
  font-size: 1.6875rem;
}
@media screen and (max-width: 1199px) {
  .sec-recruit_intro .sec-catch h3 {
    font-size: 1.375em;
    padding-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec-recruit_intro .sec-catch h3 {
    font-size: 1.125em;
  }
}
@media screen and (max-width: 1199px) {
  .sec-recruit_intro .sec-catch h3 span.__txt {
    text-align: start;
    margin-left: 0;
  }
}
.sec-recruit_intro .sec-catch h3 span.__green {
  color: #5d8c62;
}
.sec-recruit_intro .sec-catch h3 em {
  color: #b3a98d;
}
.sec-recruit_intro .sec-catch h3::before, .sec-recruit_intro .sec-catch h3::after {
  width: calc((100% - 18em) / 2 - 0.4em);
}
@media screen and (max-width: 1199px) {
  .sec-recruit_intro .sec-catch h3::before, .sec-recruit_intro .sec-catch h3::after {
    width: calc(100% - 18em - 0.2em);
  }
}
@media screen and (max-width: 1199px) {
  .sec-recruit_intro .sec-catch h3::before {
    display: none;
  }
}
.sec-recruit_intro .sec-catch p {
  text-align: center;
  padding: 3.75rem 0;
}
@media screen and (max-width: 1199px) {
  .sec-recruit_intro .sec-catch p {
    text-align: start;
    padding: 3em 0;
  }
}
@media screen and (max-width: 991px) {
  .sec-recruit_intro .sec-catch p {
    width: 100%;
    padding: 2em 0;
  }
}
.sec-recruit_intro .sec-content {
  position: relative;
  z-index: 2;
}
.sec-recruit_intro .sec-content::before {
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
  content: "";
  display: block;
  width: calc(100% - (100% - 99.375rem) / 2 - 20rem);
  height: calc(100% - 7.5rem);
  background-color: #d4cebc;
}
.sec-recruit_intro .sec-content .content-inner {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
}
@media screen and (max-width: 991px) {
  .sec-recruit_intro .sec-content .content-inner {
    display: block;
  }
}
.sec-recruit_intro .sec-content .txt-wrap {
  width: calc(100% - 48.75rem - 5rem);
}
@media screen and (max-width: 991px) {
  .sec-recruit_intro .sec-content .txt-wrap {
    width: 100%;
  }
}
.sec-recruit_intro .sec-content .txt-wrap .lead-txt {
  color: #fff;
  background-color: #5b7157;
  box-shadow: 2px 2px 8px rgba(40, 40, 40, 0.1);
  width: 100%;
  padding: 1.6em 2em;
}
.sec-recruit_intro .sec-content .txt-wrap .lead-txt ul {
  margin-top: -1em;
}
.sec-recruit_intro .sec-content .txt-wrap .lead-txt ul li {
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .sec-recruit_intro .sec-content .txt-wrap .lead-txt ul li {
    font-size: 0.9em;
  }
}
.sec-recruit_intro .sec-content .txt-wrap .sec-txt {
  margin-top: 3.75rem;
}
@media screen and (max-width: 991px) {
  .sec-recruit_intro .sec-content .txt-wrap .sec-txt {
    margin-top: 2em;
  }
}
.sec-recruit_intro .sec-content .txt-wrap .sec-txt p {
  line-height: 2.4em;
}
.sec-recruit_intro .sec-content .img-wrap {
  width: 48.75rem;
}
@media screen and (max-width: 991px) {
  .sec-recruit_intro .sec-content .img-wrap {
    width: min(80%, 560px);
    box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.2);
    aspect-ratio: 3/2;
    margin-left: auto;
    margin-top: 3em;
  }
}
.sec-recruit_intro .sec-content .img-wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.sec-recruit_benefit::before {
  background-image: url(../images/bgimg-leaf01.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: bottom;
  width: 37.5rem;
  bottom: 0;
  left: 0;
  transform: scaleY(-1);
}
.sec-recruit_benefit .sec-ttl {
  margin-top: -2em;
}
@media screen and (max-width: 1199px) {
  .sec-recruit_benefit .sec-ttl {
    margin-top: 0;
  }
}
.sec-recruit_benefit .sec-ttl span.__en {
  color: #6e7e6b;
}
.sec-recruit_benefit .sec-ttl span.__en .__color {
  color: #393d39;
}
.sec-recruit_benefit .benefit-list {
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .sec-recruit_benefit .benefit-list {
    margin-top: 0;
  }
}
.sec-recruit_benefit .benefit-list ul {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item {
  width: calc(33.3333333333% - 1.25rem);
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item:nth-of-type(1) {
  margin-top: 1.875rem;
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item:nth-of-type(2) {
  margin-top: 0;
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item:nth-of-type(3) {
  margin-top: -1.875rem;
}
@media screen and (max-width: 991px) {
  .sec-recruit_benefit .benefit-list ul .benefit-list-item {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .sec-recruit_benefit .benefit-list ul .benefit-list-item:nth-of-type(1), .sec-recruit_benefit .benefit-list ul .benefit-list-item:nth-of-type(2), .sec-recruit_benefit .benefit-list ul .benefit-list-item:nth-of-type(3) {
    margin-top: 2em;
  }
}
@media screen and (max-width: 767px) {
  .sec-recruit_benefit .benefit-list ul .benefit-list-item {
    align-items: flex-start;
  }
  .sec-recruit_benefit .benefit-list ul .benefit-list-item:nth-of-type(1), .sec-recruit_benefit .benefit-list ul .benefit-list-item:nth-of-type(2), .sec-recruit_benefit .benefit-list ul .benefit-list-item:nth-of-type(3) {
    margin-top: 4em;
  }
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item .item-img {
  width: 100%;
  aspect-ratio: 3/2;
  box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 991px) {
  .sec-recruit_benefit .benefit-list ul .benefit-list-item .item-img {
    width: 30%;
  }
}
@media screen and (max-width: 767px) {
  .sec-recruit_benefit .benefit-list ul .benefit-list-item .item-img {
    aspect-ratio: 1/1;
  }
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item .item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item .item-content {
  margin-top: 2em;
}
@media screen and (max-width: 991px) {
  .sec-recruit_benefit .benefit-list ul .benefit-list-item .item-content {
    width: calc(70% - 4em);
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec-recruit_benefit .benefit-list ul .benefit-list-item .item-content {
    width: calc(70% - 2em);
  }
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item .item-content h4 {
  color: #736250;
  display: flex;
  align-items: flex-start;
  line-height: 1.4em;
}
@media screen and (max-width: 1199px) {
  .sec-recruit_benefit .benefit-list ul .benefit-list-item .item-content h4 {
    font-size: min(1.4vw, 1em);
  }
}
@media screen and (max-width: 991px) {
  .sec-recruit_benefit .benefit-list ul .benefit-list-item .item-content h4 {
    font-size: 1.125em;
  }
}
@media screen and (max-width: 767px) {
  .sec-recruit_benefit .benefit-list ul .benefit-list-item .item-content h4 {
    font-size: 1em;
  }
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item .item-content h4 span.__num {
  flex-shrink: 0;
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item .item-content h4 span.__txt {
  display: block;
}
.sec-recruit_benefit .benefit-list ul .benefit-list-item .item-content p {
  margin-top: 1em;
}

.sec-recruit_atmosphere::before {
  bottom: 0;
  right: 0;
  width: 37.5rem;
  background-image: url(../images/bgimg-leaf01.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: bottom;
  transform: scaleX(-1);
}
.sec-recruit_atmosphere .sec-ttl {
  margin-top: 0;
}
.sec-recruit_atmosphere .sec-ttl h3 {
  text-align: end;
}
.sec-recruit_atmosphere .sec-ttl h3 span.__en {
  color: #b3a98d;
  transform: translateY(0);
}
@media screen and (max-width: 1199px) {
  .sec-recruit_atmosphere .sec-ttl h3 span.__en {
    font-size: min(12vw, 90px);
  }
}
@media screen and (max-width: 991px) {
  .sec-recruit_atmosphere .sec-ttl h3 span.__en {
    justify-content: flex-end;
  }
}
.sec-recruit_atmosphere .sec-ttl h3 span.__en .__color {
  display: inline;
  color: #636763;
}
.sec-recruit_atmosphere .sec-content {
  width: 100%;
}

.sec-recruit_process {
  background-color: #edece8;
}
.sec-recruit_process .process-list {
  margin-top: 4em;
}
.sec-recruit_process .process-list ul .process-list-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: row-reverse;
  margin-top: 2em;
}
@media screen and (max-width: 991px) {
  .sec-recruit_process .process-list ul .process-list-item {
    display: block;
    margin-top: 6em;
  }
  .sec-recruit_process .process-list ul .process-list-item:nth-of-type(1) {
    margin-top: 2em;
  }
}
@media screen and (max-width: 767px) {
  .sec-recruit_process .process-list ul .process-list-item {
    margin-top: 4em;
  }
}
.sec-recruit_process .process-list ul .process-list-item .item-img {
  width: 24em;
  aspect-ratio: 3/2;
  box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 1199px) {
  .sec-recruit_process .process-list ul .process-list-item .item-img {
    width: 18em;
  }
}
@media screen and (max-width: 991px) {
  .sec-recruit_process .process-list ul .process-list-item .item-img {
    width: 100%;
    aspect-ratio: 2/1;
    margin-top: 2em;
  }
}
.sec-recruit_process .process-list ul .process-list-item .item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-recruit_process .process-list ul .process-list-item .item-content {
  width: calc(100% - 24em - 5rem);
}
@media screen and (max-width: 1199px) {
  .sec-recruit_process .process-list ul .process-list-item .item-content {
    width: calc(100% - 18em - 5rem);
  }
}
@media screen and (max-width: 991px) {
  .sec-recruit_process .process-list ul .process-list-item .item-content {
    width: 100%;
  }
}
.sec-recruit_process .process-list ul .process-list-item .item-content h4 {
  font-weight: 700;
  font-size: 1.25em;
  color: #5b7157;
}
@media screen and (max-width: 1199px) {
  .sec-recruit_process .process-list ul .process-list-item .item-content h4 {
    font-size: 1.125em;
  }
}
@media screen and (max-width: 991px) {
  .sec-recruit_process .process-list ul .process-list-item .item-content h4 {
    font-size: 1.25em;
  }
}
@media screen and (max-width: 767px) {
  .sec-recruit_process .process-list ul .process-list-item .item-content h4 {
    font-size: 1.125em;
  }
}
.sec-recruit_process .process-list ul .process-list-item .item-content > p {
  margin-top: 1em;
}
.sec-recruit_process .process-list ul .process-list-item .item-content .contact-wrap {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 2em;
}
@media screen and (max-width: 1199px) {
  .sec-recruit_process .process-list ul .process-list-item .item-content .contact-wrap {
    margin-top: 1em;
  }
}
.sec-recruit_process .process-list ul .process-list-item .item-content .contact-wrap p.__tel {
  font-size: 1.75em;
  margin-right: 2em;
}
@media screen and (max-width: 1199px) {
  .sec-recruit_process .process-list ul .process-list-item .item-content .contact-wrap p.__tel {
    font-size: 1.5em;
  }
}
.sec-recruit_process .process-list ul .process-list-item .item-content .contact-wrap p.__tel a {
  display: inline;
  font-size: 1em;
}
.sec-recruit_process .process-list ul .process-list-item .item-content .contact-wrap p.__tel i {
  font-size: 0.8em;
  margin-right: 0.6em;
}
.sec-recruit_process .process-list ul .process-list-item .item-content .contact-wrap .__linkbtn span.__txt i {
  font-size: 1.125em;
  margin-right: 0.6em;
}
.sec-recruit_process .process-list ul .process-list-item .item-content .address-wrap {
  background-color: #fff;
  padding: 1em 1.6em;
  margin-top: 2em;
}
.sec-recruit_process .process-list ul .process-list-item .item-content .address-wrap p {
  font-size: 0.95em;
}

.sec-recruit_description .sec-content {
  margin-top: 2em;
}

/* ecoproject.html
---------------------------------------------------- */
.sec-ecoproject_intro {
  padding-top: 2em;
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_intro {
    padding-top: 4em;
  }
}
.sec-ecoproject_intro::before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 25%;
  background-color: #d4cebc;
}
.sec-ecoproject_intro .sec-ttl {
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_intro .sec-ttl {
    margin-top: 2em;
  }
}
.sec-ecoproject_intro .sec-ttl h3 {
  font-weight: 800;
  font-size: 1.6875rem;
}
@media screen and (max-width: 1199px) {
  .sec-ecoproject_intro .sec-ttl h3 {
    font-size: 1.375em;
    padding-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_intro .sec-ttl h3 {
    text-align: center;
    font-size: 1.125em;
  }
}
.sec-ecoproject_intro .sec-ttl h3 em {
  color: #5d8c62;
}
.sec-ecoproject_intro .sec-ttl h3::before, .sec-ecoproject_intro .sec-ttl h3::after {
  width: calc((100% - 20em) / 2 - 0.4em);
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_intro .sec-ttl h3::before, .sec-ecoproject_intro .sec-ttl h3::after {
    width: calc((100% - 12em) / 2 - 0.4em);
  }
}
.sec-ecoproject_intro .project-list {
  margin-top: 3em;
}
.sec-ecoproject_intro .project-list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.sec-ecoproject_intro .project-list ul .project-list-item {
  position: relative;
  width: calc(33.3333333333% - 1.25rem);
  aspect-ratio: 1/1;
}
@media screen and (max-width: 1199px) {
  .sec-ecoproject_intro .project-list ul .project-list-item {
    width: 100%;
    aspect-ratio: auto;
    height: 270px;
    margin-top: 1em;
  }
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_intro .project-list ul .project-list-item {
    height: 200px;
  }
}
.sec-ecoproject_intro .project-list ul .project-list-item .item-img {
  position: relative;
  width: 100%;
  height: 100%;
}
.sec-ecoproject_intro .project-list ul .project-list-item .item-img::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(40, 40, 40, 0.5);
}
.sec-ecoproject_intro .project-list ul .project-list-item .item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-ecoproject_intro .project-list ul .project-list-item .item-content {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 100%;
  padding: 0 2em;
  color: #fff;
  text-shadow: 6px 6px 12px rgba(40, 40, 40, 0.6);
}
.sec-ecoproject_intro .project-list ul .project-list-item .item-content h4 {
  font-size: 1.25em;
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_intro .project-list ul .project-list-item .item-content h4 {
    font-size: 1.125em;
  }
}
.sec-ecoproject_intro .project-list ul .project-list-item .item-content h4 span {
  line-height: 1.6em;
}
.sec-ecoproject_intro .project-list ul .project-list-item .item-content h4 span.__small {
  display: inline-block;
  font-size: 0.8em;
}
.sec-ecoproject_intro .project-list ul .project-list-item .item-content h4 span.__en {
  margin-top: 1em;
}
.sec-ecoproject_intro .project-list ul .project-list-item .item-content h4 span.__num {
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  margin: 0 auto;
  margin-bottom: 1em;
  border-left-color: #fff;
  border-right-color: #fff;
  line-height: 1em;
}

.sec-ecoproject_recycle::before {
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 2/1;
  background-image: url(../images/bgimg-leaf02.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: top;
}
.sec-ecoproject_recycle::after {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 2/1;
  background: linear-gradient(0deg, #fff, transparent);
}
.sec-ecoproject_recycle .sec-ttl h3 span.__color {
  color: #6e7e6b;
  display: inline-block;
}
@media screen and (max-width: 1199px) {
  .sec-ecoproject_recycle .sec-content {
    margin-top: -2em;
  }
}
.sec-ecoproject_recycle .sec-content .flow-ttl {
  margin-top: 4em;
}
@media screen and (max-width: 1199px) {
  .sec-ecoproject_recycle .sec-content .flow-ttl {
    margin-top: 6em;
  }
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_recycle .sec-content .flow-ttl {
    margin-bottom: 2em;
  }
}
.sec-ecoproject_recycle .sec-content .flow-ttl span.__en {
  color: #b3a98d;
}
.sec-ecoproject_recycle .sec-content .flow-content {
  font-weight: 700;
  display: flex;
  justify-content: space-between;
}
.sec-ecoproject_recycle .sec-content .flow-content .content-left {
  width: calc(100% - 6em - 2em);
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_recycle .sec-content .flow-content .content-left {
    width: calc(100% - 2em - 1em);
  }
}
.sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-top: 2em;
}
.sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap .__start {
  text-align: center;
  color: #fff;
  background-color: #5b7157;
  padding: 0.6em 0;
  border-radius: 10px;
  font-size: 0.9em;
  width: 23.4375rem;
}
@media screen and (max-width: 1199px) {
  .sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap .__start {
    width: 14em;
  }
}
.sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap .__arrowAnimation {
  width: calc(100% - 23.4375rem - 1em - 2em);
}
@media screen and (max-width: 1199px) {
  .sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap .__arrowAnimation {
    width: calc(100% - 14em - 1em - 2em);
  }
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap .__arrowAnimation {
    width: 100%;
    margin-top: 0.6em;
  }
}
.sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap .__end {
  width: 1em;
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap .__end {
    width: 100%;
    text-align: end;
  }
}
.sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap .__end::before {
  content: "\f111";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  margin-right: 0.4em;
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap .__end::before {
    margin-right: 0;
  }
}
.sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap .__end span.__small {
  font-size: 0.8em;
}
.sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap .__comment {
  color: #5d8c62;
  font-size: 0.9em;
  width: 100%;
  padding-left: calc(23.4375rem + 2em);
  margin-top: -0.6em;
}
@media screen and (max-width: 1199px) {
  .sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap .__comment {
    padding-left: 14.5em;
  }
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_recycle .sec-content .flow-content .content-left .flow-wrap .__comment {
    text-align: end;
    padding-left: 0;
    margin-top: 0;
  }
}
.sec-ecoproject_recycle .sec-content .flow-content .content-right {
  width: 6em;
  color: #fff;
  background-color: #5d8c62;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_recycle .sec-content .flow-content .content-right {
    width: 2em;
  }
}
.sec-ecoproject_recycle .sec-content .flow-content .content-right .flow-end {
  text-align: center;
  width: 100%;
  font-size: 0.9em;
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_recycle .sec-content .flow-content .content-right .flow-end {
    width: auto;
    writing-mode: vertical-rl;
  }
}
.sec-ecoproject_recycle .sec-content .flow-content.__recycle .content-left .flow-wrap .__arrowAnimation {
  width: calc(100% - 23.4375rem - 15em - 2em);
}
@media screen and (max-width: 1199px) {
  .sec-ecoproject_recycle .sec-content .flow-content.__recycle .content-left .flow-wrap .__arrowAnimation {
    width: calc(100% - 14em - 15em - 2em);
  }
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_recycle .sec-content .flow-content.__recycle .content-left .flow-wrap .__arrowAnimation {
    width: 100%;
  }
}
.sec-ecoproject_recycle .sec-content .flow-content.__recycle .content-left .flow-wrap .__end {
  width: 15em;
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_recycle .sec-content .flow-content.__recycle .content-left .flow-wrap .__end {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_recycle .sec-content .flow-content.__recycle .content-left .flow-wrap .__end::before {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .sec-ecoproject_recycle .sec-content .flow-content.__recycle .content-left .flow-wrap .__end::after {
    content: "\f111";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    margin-left: 0.4em;
  }
}/*# sourceMappingURL=sub.css.map */