@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Noto+Serif+JP:wght@500&display=swap");
.anchor-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .anchor-block .anchor-block__item {
    position: relative;
    width: 23.5%;
    font-size: 1.5rem;
    padding: 18px 0 27px;
    color: #fff;
    background-color: #f4a109;
    text-align: center;
    line-height: 1;
    -webkit-transition: background-color .3s;
    transition: background-color .3s; }
    @media (max-width: 480px) {
      .anchor-block .anchor-block__item {
        font-size: 1.3rem;
        width: 48%;
        padding: 13px 0 21px;
        margin-bottom: 10px; } }
    .anchor-block .anchor-block__item:not(:nth-child(2n)) {
      margin-right: 4%; }
    .anchor-block .anchor-block__item:not(:last-child) {
      margin-right: 2%; }
    .anchor-block .anchor-block__item::after {
      position: absolute;
      font-size: 1.3rem;
      content: "\f078";
      font-weight: 900;
      font-family: "Font Awesome 5 Free";
      bottom: 6px;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%); }
      @media (max-width: 480px) {
        .anchor-block .anchor-block__item::after {
          font-size: 1.2rem;
          bottom: 4px; } }
    .anchor-block .anchor-block__item:hover {
      background-color: #ec6404; }
      @media (max-width: 480px) {
        .anchor-block .anchor-block__item:hover {
          background-color: #f4a109; } }

.example-block .example-block__in {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
.example-block .example-block__set {
  width: 49%; }
  .example-block .example-block__set.full {
    width: 100%;
    margin-bottom: 20px; }
  @media (max-width: 480px) {
    .example-block .example-block__set.sp-full {
      width: 100%; } }
  .example-block .example-block__set.sp-full:not(:last-child) {
    margin-bottom: 20px; }
  .example-block .example-block__set .box1 {
    padding: 28px 30px 15px; }
    @media (max-width: 480px) {
      .example-block .example-block__set .box1 {
        padding: 20px 20px 30px; } }
  .example-block .example-block__set .box1-list {
    padding: 0 30px; }
    @media (max-width: 480px) {
      .example-block .example-block__set .box1-list {
        padding: 0; } }
  .example-block .example-block__set .box1-list__item {
    width: 50%; }
.example-block .box1 {
  width: 97%;
  padding: 36px 30px 20px;
  margin: 20px auto 0;
  background-color: #faf7f0;
  border: 1px solid #d8cdbb; }
  @media (max-width: 480px) {
    .example-block .box1 {
      width: 100%;
      padding: 20px 20px 30px; } }
.example-block .box1__ttl {
  font-size: 1.8rem;
  font-weight: bold;
  color: #59493f;
  text-align: center;
  margin-bottom: 18px; }
  @media (max-width: 480px) {
    .example-block .box1__ttl {
      font-size: 1.6rem;
      margin-bottom: 14px; } }
.example-block .box1-list {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0 70px; }
  @media (max-width: 480px) {
    .example-block .box1-list {
      padding: 0; } }
  .example-block .box1-list.nado::after {
    position: absolute;
    content: "など";
    color: #59493f;
    bottom: -10px;
    right: 10px; }
    @media (max-width: 480px) {
      .example-block .box1-list.nado::after {
        font-size: 1.2rem;
        bottom: -20px; } }
.example-block .box1-list__item {
  position: relative;
  width: 25%;
  font-size: 1.5rem;
  font-weight: 500;
  color: #59493f;
  padding-left: 14px;
  margin-bottom: 20px; }
  @media (max-width: 480px) {
    .example-block .box1-list__item {
      width: 50%;
      font-size: 1.3rem;
      margin-bottom: 10px; } }
  .example-block .box1-list__item::before {
    position: absolute;
    content: " ";
    width: 10px;
    height: 10px;
    background-color: #f4a109;
    border-radius: 50%;
    top: 6px;
    left: 0; }

.works_block {
  margin-bottom: -50px; }

.works_block_heading {
  background-color: #fcf5e1;
  width: 660px;
  padding: 60px 0 115px;
  position: relative; }
  @media (max-width: 480px) {
    .works_block_heading {
      width: 93%;
      padding: 30px 17px 70px 0; } }
  .works_block_heading::before {
    content: "";
    background-color: #fcf5e1;
    width: 30vw;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translatex(-100%);
            transform: translatex(-100%); }

.works_block_desc {
  width: 600px;
  font-size: 1.6rem;
  padding-bottom: 12px;
  margin-bottom: 23px;
  border-bottom: 1px solid; }
  @media (max-width: 480px) {
    .works_block_desc {
      font-size: 1.2rem;
      width: 100%;
      margin-bottom: 17px; } }

.works_block_cat {
  border: 1px solid;
  padding: 2px 30px;
  margin-right: 15px; }
  @media (max-width: 480px) {
    .works_block_cat {
      padding: 2px 25px;
      margin-right: 10px; } }

.works_block_msg {
  font-size: 2.4rem;
  font-weight: bold; }
  @media (max-width: 480px) {
    .works_block_msg {
      font-size: 1.75rem; } }

.works_block_gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
  margin: 0 auto;
  -webkit-transform: translateY(-50px);
          transform: translateY(-50px); }
  @media (max-width: 480px) {
    .works_block_gallery {
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; } }
  .works_block_gallery .gallery_images {
    background-color: #fff;
    -webkit-box-shadow: 0 0 10px #ccc;
            box-shadow: 0 0 10px #ccc;
    width: 740px;
    margin-right: 10px;
    position: relative; }
    @media (max-width: 480px) {
      .works_block_gallery .gallery_images {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px; } }
    .works_block_gallery .gallery_images .slick-arrow {
      background: #f4a20980;
      width: 50px;
      height: 80px;
      border: none;
      cursor: pointer;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      z-index: 1; }
      @media (max-width: 480px) {
        .works_block_gallery .gallery_images .slick-arrow {
          width: 30px;
          min-width: 30px;
          height: 60px;
          bottom: auto;
          top: 50%;
          -webkit-transform: translateY(-50%);
                  transform: translateY(-50%); } }
      .works_block_gallery .gallery_images .slick-arrow.slick-prev {
        left: 0; }
        .works_block_gallery .gallery_images .slick-arrow.slick-prev:before {
          content: url("../img/arrow01.png");
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: rotate(180deg) translate(50%, 50%);
                  transform: rotate(180deg) translate(50%, 50%); }
      .works_block_gallery .gallery_images .slick-arrow.slick-next {
        right: 0; }
        .works_block_gallery .gallery_images .slick-arrow.slick-next:before {
          content: url("../img/arrow01.png");
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -38%);
                  transform: translate(-50%, -38%); }
          @media (max-width: 480px) {
            .works_block_gallery .gallery_images .slick-arrow.slick-next:before {
              -webkit-transform: translate(-50%, -40%);
                      transform: translate(-50%, -40%); } }
    .works_block_gallery .gallery_images .gallery_item {
      height: 454px; }
      @media (max-width: 480px) {
        .works_block_gallery .gallery_images .gallery_item {
          height: 62vw; } }
      .works_block_gallery .gallery_images .gallery_item img {
        width: 100%;
        height: 100%;
        max-width: 100%;
        -o-object-fit: contain;
           object-fit: contain;
        font-family: "object-fit: contain;"; }
  .works_block_gallery .thumnails_images {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 270px; }
    @media (max-width: 480px) {
      .works_block_gallery .thumnails_images {
        width: calc(100% + 10px);
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1; } }
    .works_block_gallery .thumnails_images .slick-list {
      overflow: auto; }
      .works_block_gallery .thumnails_images .slick-list::-webkit-scrollbar {
        height: 3px;
        -webkit-transform: translateY(5px);
                transform: translateY(5px); }
      .works_block_gallery .thumnails_images .slick-list::-webkit-scrollbar-track {
        background-color: #ccc; }
      .works_block_gallery .thumnails_images .slick-list::-webkit-scrollbar-thumb {
        background-color: #f4a109; }
    .works_block_gallery .thumnails_images .slick-track {
      width: 100% !important;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-transform: none !important;
              transform: none !important; }
      @media (max-width: 480px) {
        .works_block_gallery .thumnails_images .slick-track {
          width: -webkit-fit-content !important;
          width: -moz-fit-content !important;
          width: fit-content !important;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; } }
    .works_block_gallery .thumnails_images .gallery_item {
      background-color: #f4a109;
      height: 110px;
      width: 130px !important;
      cursor: pointer;
      position: relative;
      margin: 0 5px 5px 0;
      overflow: hidden; }
      @media (max-width: 480px) {
        .works_block_gallery .thumnails_images .gallery_item {
          width: 23vw !important;
          height: 20vw;
          margin: 0 0 10px 0; } }
      @media (max-width: 480px) {
        .works_block_gallery .thumnails_images .gallery_item:not(:last-child) {
          margin-right: 5px; } }
      .works_block_gallery .thumnails_images .gallery_item img {
        width: 100%;
        height: 100%;
        max-width: 100%;
        -o-object-fit: cover;
           object-fit: cover;
        font-family: "object-fit: cover;";
        -webkit-transition: opacity 0.7s;
        transition: opacity 0.7s; }
        .works_block_gallery .thumnails_images .gallery_item img:hover {
          opacity: 0.5; }
          @media (max-width: 480px) {
            .works_block_gallery .thumnails_images .gallery_item img:hover {
              opacity: 1; } }
      .works_block_gallery .thumnails_images .gallery_item.slick-current {
        position: relative; }
        .works_block_gallery .thumnails_images .gallery_item.slick-current::after {
          content: '';
          height: 100%;
          width: 100%;
          background-color: #f4a1096e;
          position: absolute;
          top: 0;
          left: 0;
          z-index: 100; }

.policy_block .policy_block-ttl {
  font-size: 2.4rem;
  font-weight: bold;
  color: #fff;
  width: 980px;
  margin: 0 auto;
  background-color: #cfa972;
  padding: 13px 0;
  margin-bottom: 50px; }
  @media (max-width: 480px) {
    .policy_block .policy_block-ttl {
      width: 100%;
      font-size: 1.6rem;
      padding: 8px 0;
      margin-bottom: 20px; } }
  .policy_block .policy_block-ttl.num {
    padding-left: 100px;
    position: relative; }
    @media (max-width: 480px) {
      .policy_block .policy_block-ttl.num {
        padding-left: 70px; } }
    .policy_block .policy_block-ttl.num::before {
      content: attr(num);
      font-size: 5.5rem;
      font-family: 'Roboto', sans-serif;
      font-style: italic;
      line-height: 1;
      position: absolute;
      top: 50%;
      left: 20px;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%); }
      @media (max-width: 480px) {
        .policy_block .policy_block-ttl.num::before {
          font-size: 3.25rem; } }
.policy_block .policy_link {
  width: 600px;
  margin: 50px auto 0;
  position: relative; }
  @media (max-width: 480px) {
    .policy_block .policy_link {
      width: 100%;
      margin-top: 30px; } }
  .policy_block .policy_link a {
    padding: 23px 0;
    background-color: #f4a109;
    color: #fff;
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
    -webkit-transition: background 0.7s;
    transition: background 0.7s; }
    @media (max-width: 480px) {
      .policy_block .policy_link a {
        font-size: 1.2rem;
        padding: 15px 27px; } }
  .policy_block .policy_link::after {
    content: "\f08e";
    font-family: 'Font Awesome 6 Free';
    font-size: 2.4rem;
    font-weight: 600;
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    color: #fff; }
    @media (max-width: 480px) {
      .policy_block .policy_link::after {
        font-size: 1.2rem;
        right: 5%; } }
  .policy_block .policy_link:hover a {
    background-color: #ec6404; }
.policy_block .list01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 980px;
  margin: 0 auto; }
  @media (max-width: 480px) {
    .policy_block .list01 {
      width: 100%; } }
  .policy_block .list01 .list01-item {
    width: calc(33.333% - 26px);
    padding: 45px 20px 40px;
    -webkit-box-shadow: 0 0 10px #ccc;
            box-shadow: 0 0 10px #ccc;
    font-weight: bold;
    text-align: center;
    position: relative; }
    @media (max-width: 480px) {
      .policy_block .list01 .list01-item {
        width: 100%;
        padding: 25px 10px 20px; } }
    .policy_block .list01 .list01-item:not(:last-child) {
      margin-right: 39px; }
      @media (max-width: 480px) {
        .policy_block .list01 .list01-item:not(:last-child) {
          margin-right: 0;
          margin-bottom: 12px; } }
    .policy_block .list01 .list01-item .sub {
      font-size: 1.8rem; }
      @media (max-width: 480px) {
        .policy_block .list01 .list01-item .sub {
          font-size: 1.4rem; } }
    .policy_block .list01 .list01-item .main {
      font-size: 2.4rem; }
      @media (max-width: 480px) {
        .policy_block .list01 .list01-item .main {
          font-size: 1.75rem; } }
    @media (max-width: 480px) {
      .policy_block .list01 .list01-item p {
        display: inline-block; } }
    .policy_block .list01 .list01-item::before {
      content: "";
      width: calc(100% - 40px);
      height: 3px;
      background-color: #f4a109;
      position: absolute;
      top: 0;
      left: 20px; }
      @media (max-width: 480px) {
        .policy_block .list01 .list01-item::before {
          height: 2px; } }
.policy_block .box01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .policy_block .box01 .video {
    width: 510px;
    margin-right: 50px; }
    @media (max-width: 480px) {
      .policy_block .box01 .video {
        width: 84%;
        margin: 0 auto 20px; } }
  .policy_block .box01 .msg {
    width: calc(1020px - 560px); }
    @media (max-width: 480px) {
      .policy_block .box01 .msg {
        width: 100%; } }
    .policy_block .box01 .msg .ttl {
      font-size: 2.2rem;
      font-weight: bold;
      color: #996c33;
      margin-bottom: 30px; }
      @media (max-width: 480px) {
        .policy_block .box01 .msg .ttl {
          font-size: 1.7rem;
          margin-bottom: 8px; } }
    .policy_block .box01 .msg .txt {
      line-height: 1.7;
      letter-spacing: 1.4px;
      font-size: 1.5rem; }
      @media (max-width: 480px) {
        .policy_block .box01 .msg .txt {
          font-size: 1.4rem;
          line-height: 1.6;
          letter-spacing: 1px; } }
.policy_block .box02 {
  padding: 90px 0; }
  @media (max-width: 480px) {
    .policy_block .box02 {
      padding: 45px 0; } }
  .policy_block .box02 .inner {
    width: 980px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    @media (max-width: 480px) {
      .policy_block .box02 .inner {
        width: 100%; } }
    .policy_block .box02 .inner .set {
      width: calc(50% - 40px); }
      @media (max-width: 480px) {
        .policy_block .box02 .inner .set {
          width: 100%; } }
      .policy_block .box02 .inner .set:not(:last-child) {
        margin-right: 80px; }
        @media (max-width: 480px) {
          .policy_block .box02 .inner .set:not(:last-child) {
            margin-right: 0;
            margin-bottom: 25px; } }
      .policy_block .box02 .inner .set .ttl {
        font-size: 2.4rem;
        font-weight: bold;
        text-align: center;
        color: #ec6404;
        margin-bottom: 17px; }
        @media (max-width: 480px) {
          .policy_block .box02 .inner .set .ttl {
            font-size: 1.75rem;
            margin-bottom: 10px; } }
      .policy_block .box02 .inner .set .video {
        margin-bottom: 17px; }
        @media (max-width: 480px) {
          .policy_block .box02 .inner .set .video {
            width: 84%;
            margin: 0 auto 10px; } }
      .policy_block .box02 .inner .set .txt {
        line-height: 1.7;
        letter-spacing: 1.4px;
        font-size: 1.5rem; }
        @media (max-width: 480px) {
          .policy_block .box02 .inner .set .txt {
            line-height: 1.6;
            letter-spacing: 1px;
            font-size: 1.4rem; } }
  .policy_block .box02 .msg {
    line-height: 1.7;
    letter-spacing: 1.4px;
    font-size: 1.5rem;
    text-align: center;
    margin-bottom: 50px; }
    @media (max-width: 480px) {
      .policy_block .box02 .msg {
        margin-bottom: 27px;
        line-height: 1.6;
        letter-spacing: 1px;
        text-align: left; } }
.policy_block .box03 {
  padding: 50px 0 65px;
  background-color: #ffffffdd;
  position: relative;
  z-index: 10; }
  @media (max-width: 480px) {
    .policy_block .box03 {
      padding: 25px 25px 40px; } }
  .policy_block .box03 .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 30px; }
    @media (max-width: 480px) {
      .policy_block .box03 .inner {
        margin-bottom: 17px; } }
    .policy_block .box03 .inner .img {
      width: 200px;
      position: relative; }
      @media (max-width: 480px) {
        .policy_block .box03 .inner .img {
          width: 26%; } }
      .policy_block .box03 .inner .img:not(:last-child) {
        margin-right: 85px; }
        @media (max-width: 480px) {
          .policy_block .box03 .inner .img:not(:last-child) {
            margin-right: 10%; } }
        .policy_block .box03 .inner .img:not(:last-child)::after {
          content: "";
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 21.5px 0 21.5px 36px;
          border-color: transparent transparent transparent #4a9a7b;
          position: absolute;
          top: 50%;
          right: -30%;
          -webkit-transform: translateY(-50%);
                  transform: translateY(-50%); }
          @media (max-width: 480px) {
            .policy_block .box03 .inner .img:not(:last-child)::after {
              border-width: 2.15vw 0 2.15vw 3.6vw; } }
  .policy_block .box03 .msg {
    text-align: center;
    font-size: 1.5rem;
    line-height: 1.8; }
    @media (max-width: 480px) {
      .policy_block .box03 .msg {
        text-align: left;
        font-size: 1.4rem;
        line-height: 1.6; } }
  .policy_block .box03 .txt:not(:last-child) {
    margin-bottom: 30px; }
    @media (max-width: 480px) {
      .policy_block .box03 .txt:not(:last-child) {
        margin-bottom: 25px; } }
  .policy_block .box03::before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #ffffffdd;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: -1;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
  .policy_block .box03::after {
    content: "";
    width: 100vw;
    height: 100%;
    background: url(../img/background-img01-pc.jpg) no-repeat center center/cover;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: -2;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
    @media (max-width: 480px) {
      .policy_block .box03::after {
        background: url(../img/background-img01-sp.jpg) no-repeat center center/cover; } }
