/*------------------------------------------------------------------------------
  PC or ALL
------------------------------------------------------------------------------*/
/*20240625 日付非表示　morishita*/
.news-template-default .blog-date {
    display: block;
}
.post-type-archive-news .date{
    display: block !important;
}
.blog-date {
    display: none;
}
.gallery-template-default .blog-sidebar .blog-nav:last-child, .blog-template-default .blog-sidebar .blog-nav:last-child, .archive .blog-nav:last-child, .post-type-archive .date, .term-voice .date {
    display: none;
}
.news-template-default .blog-nav:last-child {
    display: block !important;
}
.post-type-archive-news .blog-nav:last-child {
	display: block !important;
}
.term-27 .date {
    display: none;
}
/*20240625 日付非表示　morishita*/
.mainvisual {
  padding-left: 12vw;
}
.mainvisual-catch {
  top: 50%;
  bottom: auto;
  left: 4vw;
  transform: translateY(-50%);
  color: #5a3f28;
}
.mainvisual .swiper-slide img {
  border-radius: 40px 0 0 40px;
}
.mainvisual-catch div.copy {
  font-size: 7.2rem;
  line-height: 1.47;
  max-width: 35vw;
}
.mainvisual-catch div.sub-text {
  font-size: 3rem;
  line-height: 1.4;
}
.box h2.box-h2 {
  font-size: 3.8rem;
}
.title-type01 span:nth-child(2), .title-type02 span:nth-child(2), .title-type03 span:nth-child(2), .title-type04 span:nth-child(2) {
  opacity: 0.5;
  font-size: 2.8rem;
  color: #a38248;
}
.title-type02, .title-type04 {
  padding: 0 0 10px 0;
  text-align: center;
}
.title-type02:before, .title-type04:before {
  width: 50px;
  height: 4px;
}
.header-nav > ul > li {
  font-size: 1.5rem;
}
.footer {
  background:#fff;
}
.footer-link a {
  line-height: unset;
  display: inline-block;
  position: relative;
  margin: 0 auto;
  padding: 13px 50px 17px 30px;
  color: #fff;
  background: var(--main-color-2);
  border-radius: 30px;
}
.footer-link a:after {
  content: "\e5cc";
  position: absolute;
  top: 50%;
  right: 25px;
  font-family: "Material Symbols Outlined";
  font-variation-settings: "FILL" 1, "wght" 500, "GRAD" 0, "opsz" 20;
  line-height: 1;
  transform: translateY(-50%);
}
.fixed-footer .event a {
  display: flex;
  align-items: center;
  padding: 6px 28px 4px 25px;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  background: var(--main-color);
  border-radius: 100px;
}
.fixed-footer .event a:before {
  content: "\e614";
  font-family: FontAwesome;
  margin: 0 5px 0 0;
  font-family: "Material Symbols Outlined";
  font-variation-settings: "FILL" 1, "wght" 500, "GRAD" 0, "opsz" 20;
}
.fixed-footer .about {
  font-size: 1.2rem;
  color: #312721;
  margin-right: 3vw;
}
.contact-area {
  display: flex;
  gap: 1vw;
}
.fixed-footer .contact a {
  font-size: 1.3rem;
  padding: 10px 28px 10px 25px;
}
.fixed-footer .event a {
  font-size: 1.3rem;
    padding: 10px 28px 10px 25px;
}
.fixed-footer .tel a {
  font-size: 5rem;
  line-height: 1;
}
.fixed-footer .tel a:before {
  font-size: 3rem;
  line-height: 1;
}
.main-work img, .main-voice img, .main-column img{
	height: 300px !important;
}
.bt-two{
	display: flex;
    justify-content: space-around;
}
/* ==================
    TOPページ
   ================== */


/*20240604 morishita*/
.home .image-bg-type01 .text {
            border-radius: 40px;
            text-align: center;
            border: solid 1px #ddd;
            padding-bottom: 50px;
        }
.single-gallery .blog-date {
    display: none;
}

.bt-voice{
	font-size: 1.8rem;
    line-height: 1.3;
    font-weight: 700;
}
/*20240604 morishita*/



.home {
  .main-service,.main-voice,.main-area {
    background: url(../images/main-bg.jpg) repeat;
  }
  .list-check-type01 > ul > li:before {
    color: #f19441;
  }
  .list-check-type01 > ul > li {
    margin: 10px 0 15px;
    padding: 0 0px 15px 25px;
    border-bottom: dotted #d3bd9b 2px;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .image-text-type03 .image {
    border-radius: 40px;
  }
  .box .btn a {
    padding: 19px 50px 9px 30px;
    font-size: 1.8rem;
    line-height: 1.3;
  }
  .page-content {
    margin: 0 auto ;
  }

  .main-ploblems {
    .image-text-type03 .text:before {
      content: "";
      background: #fdf0e4;
      border-radius: 35px;
      border: solid 6px #fff;
    }
  }
  .main-hothome {
    font-size: 3.8rem;
    font-weight: bold;

    strong {
      color: #f19441;
      font-size: 4.8rem;
    }
  }
  .main-event {
    .box .image img {
      filter: brightness(40%);
      border-radius: 40px;
    }
    .box h3.box-h3 {
      font-size: 3.4rem;
    }
    .image-bg-type02 .text {
      max-width: 860px;
    }
    .box .btn a {
      background: var(--main-color);
    }
  }
  .main-concept {
    .title-type02:before, .title-type04:before {
      display: none;
    }
    .image-bg-type01 .text {
      border-radius: 40px;
      text-align: center;
    }
    .title-type01, .title-type02, .title-type03, .title-type04 {
      margin: 0 auto 2vw auto;
    }
    .box .image img {
      border-radius: 30px;
    }
  }

  .main-features {
    .list-number-type01 ol li:before {
      font-family: "Dongle", sans-serif;
      background: #f19441;
      border-radius: 40px;
      line-height: 1;
      color: #fff;
      width: 7.4rem;
      border: solid #fff 2px;
      height: 7.4rem;
      text-align: center;
      padding-top: 5px;
      top: -40px;
    }
    .box .image {
      overflow: hidden;
      border-radius: 30px 30px 0 0;
    }
    .list-number-type01 ol li {
      color: #fff;
      background: #b5955c;
      border-radius: 30px;
    }
    .box h3.box-h3 {
      color: #fdfc93;
      font-size: 2.5rem;
      text-align: center;
    }
    .list-number-type01 ol li .text {
      padding: 3vmin;
    }

  }
  .main-service {
    .image-text-type03 .text:before {
      border-radius: 40px;
    }
    .bt-two {
      margin-left: auto;
      margin-right: auto;
      max-width: 500px;
    }
    .box h3.box-h3 {
      font-size: 3.8rem;
      color: #f19441;
    }
    .box .btn a {
      width: 240px;
      text-align: center;
    }
    
  }
  .main-message {
    max-width: 1128px;
    margin: 0 auto;

    .box .image img {
      border-radius: 40px;
    }
    .box h3.box-h3 {
      font-size: 3.4rem;
      color: #fff;
    }
    .image-bg-type02 .text {
      max-width: 800px;
      font-size: 1.5rem;
  }
  .box .btn a {
    background: var(--main-color);
  }
  }
.main-work {
    .box .image img {
      border-radius: 10px;
      border: solid 1px #d0bfa1;
    }
    .blog-type01 ul li .category, .blog-type04 .swiper-slide .category {
      border-radius: 10px 0 0 0;
    }
  }
  .main-voice {
    .box.blog-type01 {
      max-width: 1128px;
      margin: 0 auto;
    }
    .box .image img {
      border-radius: 10px;
    }
    .blog-type01 ul li .category, .blog-type04 .swiper-slide .category {
      border-radius: 10px 0 0 0;
    }
  }

  .main-column {
    .box .image img {
      border-radius: 10px;
      border: solid 1px #d0bfa1;
    }
    .blog-type01 ul li .category, .blog-type04 .swiper-slide .category {
      border-radius: 10px 0 0 0;
    }
  }

  .main-area {
    padding-bottom: 3vw;

    .box.image-text-type01.left {
      max-width: 1128px;
      display: flex;
      gap: 90px;
      justify-content: space-between;
    }
    .box h2.box-h2 .en {
      opacity: 0.5;
      font-size: 2.4rem;
      color: #a38248;
      display: block;
    }

    .box h2.box-h2 .ja {
      font-size: 2.8rem;
      color: #f19441;
    }
    .image-text-type01 .image {
      width: 90%;
    }
    .box h2.box-h2 {
      border-top: solid 1px #b5955c;
      border-bottom: solid 1px #b5955c;
      font-size: 3.8rem;
      padding: 1.5rem 0;
    }
    .image-text-type01:after {
      display: none;
    }
    .box.title-type06 {
      margin-top: 3vw;
      margin-bottom: 3vw;
    }
    strong {
      font-size: 2.2rem;
    }
  }
}

@media screen and (max-width: 1420px) {
  .home {
    .main-service {
      .bt-two {
        justify-content: space-around;
        flex-direction: column;
        gap: 10px;
        align-items: center;
      }
      .box .btn {
        margin: 0;

      }
    }
  }

}

@media screen and (max-width: 1128px) {
  .home {
    .main-voice {
      padding: 0 4vmin;
    }
    .main-message {
      padding: 0 4vmin;
    }
  }

}

/* 20240130 added by Fabo */
.mt-s { margin-top: 4vh !important;}
.mt-m { margin-top: 7vh !important;}
.mt-l { margin-top: 10vh !important;}

.mb-s { margin-bottom: 4vh !important;}
.mb-m { margin-bottom: 7vh !important;}
.mb-l { margin-bottom: 10vh !important;}

.box-color {
    margin: 0 0 6vh;
    padding: 35px;
    background: #f8f7f6;
    border-radius: 10px;
}
.box-color :first-child {
    margin-top: 0 !important;
}
.box-color :last-child {
    margin-bottom: 0 !important;
}

.page-content .image-text-type01 .text {
    overflow: hidden;
}
.page-content  .list-check-type01 {
    display: flex;
    justify-content: flex-start;
}

.align-center {
    text-align: center;
}


@media screen and (max-width: 1220px) {
  .contact-area {
    flex-direction: column;
  }
}

/* ======================================
2024/5/23 added by tsuji
======================================== */

.box001 {
    padding: 5px 30px;
    margin: 15px 0;
    background: #F1EBDF;
	border-radius: 10px;
}


/*------------------------------------------------------------------------------
  TABLET and SHONE
------------------------------------------------------------------------------*/
@media screen and (max-width: 1024px) {
  .main-area {
    .box.image-text-type01.left {
        flex-direction: column-reverse;
        padding: 0 4vmin;
        gap: 10vw !important;
    }
    .image-text-type01 .image {
      width: 80vw;
      margin: 0 auto;
  }
  }
}

/*------------------------------------------------------------------------------
  TABLET ONLY
------------------------------------------------------------------------------*/
@media screen and (min-width: 600px) and (max-width: 1024px) {
}

/*------------------------------------------------------------------------------
  SPHONE ONLY
------------------------------------------------------------------------------*/
@media screen and (max-width: 599px) {
  .mainvisual {
    padding-left: 10vw;
}
  .mainvisual-catch {
    top: auto;
    bottom: 20vw;
    transform: inherit;
    left: 2vw;
  }
  .mainvisual-catch div.copy {
    max-width: 100%;
  }
  .box h2.box-h2 {
    font-size: 3.2rem;
  }

.home {
  .main-hothome {
    font-size: 3.2rem;
    font-weight: bold;
    strong {
      font-size: 3.8rem;
      display: block;
      }
      img {
        width: 20vw;
      }
    }
    .main-concept {
      padding: 0;
      .box .image img {
        border-radius:0;
      }
    }
    .main-features {
      .list-number-type01 ol li:before {
          padding-top: 17px;
      }
    }
    .main-message {
      padding: 3vw;
    }
    .main-voice {
      padding: 0 4vmin;
    }
  }
.bt-two{
	display: block;
}
    .image-text-type03 .text, .image-text-type03.right .text {
        margin: -30px 4vmin 0 0vmin;
		width: calc(100% - 0vmin);
        padding: 10px;
    }
    .image-bg-type01 .text {
        margin: -30px 0vmin 0 0vmin;
        padding: 30px 0px 0 0px;
    }
    .box h2.box-h2 {
        font-size: 3rem;
    }
.home {
    .main-features {
        .list-number-type01 ol li .text {
            padding: 6vmin;
        }
    }
}
	
/*20240604 morishita*/
.home .image-bg-type01 .text {
            padding: 20px;
        }
/*20240604 morishita*/
	
}

/*------------------------------------------------------------------------------
  ギャラリー
------------------------------------------------------------------------------*/
.single-gallery .blog-content table:not([class]),
.single-gallery .page-content table:not([class]),
.single-lineup .blog-content table:not([class]),
.single-lineup .page-content table:not([class]) {
  width: 100%;
}