@charset "UTF-8";
/*
Theme Name:CODE TCD090 child
Theme URI:
Description:WordPressテーマ「CODE TCD090」の自作子テーマです。
Template:code_tcd090
Author:
Author URI:
Version:0.0.1
*/
.wp-block-button__link {
  min-width: 160px;
}

a > img.takanoC-img {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.post_content .takanoC-imgLinkWrap32 {
  aspect-ratio: 3/2;
  overflow: hidden;
}

.post_content img.takanoC-img,
.takanoC-imgLinkWrap32 > a > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  vertical-align: bottom;
}

.takanoC-inner {
  width: 100%;
  max-width: 1000px;
  padding-left: 100px;
  padding-right: 100px;
  margin-left: auto;
  margin-right: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.post_content .takanoC-img01 {
  aspect-ratio: 3/1;
  -o-object-fit: cover;
     object-fit: cover;
  display: inline-block;
  /* padding-left: 50px;
  padding-right: 50px; */
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
}

.post_content .takanoC-txt01 {
  font-size: 1.5em;
  margin-bottom: 0.5em;
}

.post_content .takanoC-txt02 {
  margin-bottom: 0;
}

.takanoC-wrap01 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 40px 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}

.takanoC-wrap01--item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}

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

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

.takanoC-ttl03 {
  font-weight: 700;
  font-size: 25px;
}
.takanoC-ttl03 + * {
  margin-top: 15px;
}

.post_content h2.takanoC-ttl03 {
  line-height: 1.5;
  font-size: 32px !important;
  margin-bottom: 40px;
}

.post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h3.takanoC-ttl01 {
  margin-top: 0 !important;
}

.takanoC-wrap01 + .takanoC-txt01 {
  margin-top: 40px;
}

.takanoC-mt40 {
  margin-top: 40px !important;
}

.takanoC-mt80 {
  margin-top: 80px !important;
}

.cb_news_list .desc {
  max-width: 100%;
}

.takanoC-telBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.takanoC-telBox .takanoC-telBox-num {
  font-size: 2.5em;
  line-height: 1.25;
  margin-bottom: 0;
}

#footer {
  background: #f0f0f0;
}

#side_menu_content {
  left: -260px;
  width: 340px;
}

#side_menu > .sub-menu {
  width: 280px;
  left: -200px;
}

#side_menu .sub-menu.active {
  left: 420px !important;
}

/* News */
body.post-type-archive-news #page_header,
body.search-results #page_header,
body.archive.date #page_header,
body.archive.category #page_header,
body.blog #page_header {
  background: #fff;
  padding: 85px 0;
  height: inherit;
  border-top: 1px solid #ddd;
}

body.post-type-archive-news #page_header #page_header_inner,
body.search-results #page_header #page_header_inner,
body.archive.date #page_header #page_header_inner,
body.archive.category #page_header #page_header_inner,
body.blog #page_header #page_header_inner {
  position: relative;
  margin: 0 auto;
  position: relative;
  left: 0%;
  top: 0%;
  -webkit-transform: translate(0%, 0%);
  transform: translate(0%, 0%);
}

body.post-type-archive-news #page_header h1,
body.search-results #page_header h1,
body.archive.date #page_header h1,
body.archive.category #page_header h1,
body.blog #page_header h1 {
  color: #000;
}

body.post-type-archive-news #page_header .desc,
body.search-results #page_header .desc,
body.archive.date #page_header .desc,
body.archive.category #page_header .desc,
body.blog #page_header .desc {
  color: #000;
  margin-top: 0;
}

body.post-type-archive-news #page_header .catch span.animate:after,
body.search-results #page_header .catch span.animate:after,
body.archive.date #page_header .catch span.animate:after,
body.archive.category #page_header .catch span.animate:after,
body.blog #page_header .catch span.animate:after {
  content: none;
}

#main_contents, #main_contents:before {
  background: #fff;
}

#cb_content_2,
#cb_content_4,
#cb_content_6 {
  background: #f5f5f5;
}

.cb_content_header {
  margin-bottom: 40px;
}

.cb_content_header .desc {
  margin-top: 0;
}

.news_archive_item_content {
  background: #fff;
}

.wp-block-buttons {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.wp-block-buttons .wp-block-button__link {
  display: inline-block;
  text-align: center;
  background: #009c37;
  font-weight: 700;
  color: #fff;
  border-radius: 0 !important;
  min-width: 200px;
  margin-left: auto;
  margin-right: auto;
}
.wp-block-buttons .wp-block-button__link:hover {
  color: #fff;
}

@media screen and (min-width: 751px) {
  .sponly {
    display: none;
  }
  a.wp-block-button__link:hover {
    opacity: 0.6;
  }
  .takanoC-imgLinkWrap32 > a > img {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  a:hover > img.takanoC-img,
  .takanoC-imgLinkWrap32 > a:hover > img {
    -webkit-transform: scale(1.2) !important;
            transform: scale(1.2) !important;
  }
}
@media screen and (max-width: 1050px) {
  .takanoC-inner {
    padding-left: 50px;
    padding-right: 50px;
  }
  .post_content img.takanoC-img01 {
    /* padding-left: 50px;
    padding-right: 50px; */
  }
}
@media screen and (max-width: 950px) {
  .cb_news_list {
    padding-bottom: 50px;
  }
}
@media screen and (max-width: 850px) {
  .takanoC-inner {
    padding-left: 30px;
    padding-right: 30px;
  }
  .post_content .takanoC-img01 {
    /* padding-left: 30px;
    padding-right: 30px; */
  }
  .cb_news_list {
    padding-bottom: 50px;
  }
}
@media screen and (max-width: 767px) {
  .news_list .item a {
    background: #fff;
  }
}
@media screen and (max-width: 750px) {
  .pconly {
    display: none;
  }
  .takanoC-inner {
    padding-left: 20px;
    padding-right: 20px;
  }
  .post_content .takanoC-img01 {
    /* padding-left: 20px;
    padding-right: 20px; */
  }
  .takanoC-wrap01 {
    -ms-grid-columns: (1fr)[1];
    grid-template-columns: repeat(1, 1fr);
  }
  .cb_news_list {
    padding-top: 40px;
  }
  .cb_news_list .desc {
    margin-top: 0;
  }
  .cb_news_list .headline_area {
    margin-bottom: 20px;
  }
  .wp-block-media-text {
    gap: 20px;
  }
  .wp-block-media-text > .wp-block-media-text__content {
    padding: 0;
  }
  .post_content h2.takanoC-ttl03 {
    font-size: 22px !important;
    margin-bottom: 20px;
  }
  body.post-type-archive-news #page_header {
    padding: 30px 0;
  }
  .cb_content_header {
    margin-bottom: 20px;
  }
  .cb_news_list {
    padding-bottom: 40px;
  }
}
html {
  scroll-padding-top: 100px;
  scroll-behavior: smooth;
}
@media all and (max-width: 750px) {
  html {
    scroll-padding-top: 80px;
  }
}

.takanoC-animate {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 1s;
  transition: all 1s;
  will-change: opacity, transform;
}

.takanoC-animate.is-show {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.takanoC-inner02 {
  width: 100%;
  padding: 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media all and (max-width: 750px) {
  .takanoC-inner02 {
    padding: 20px;
  }
}
.takanoC-inner02.bg02 {
  background: #e4f2ea;
}

.takanoC-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s, visibility 0.3s;
  transition: opacity 0.3s, visibility 0.3s;
}

.takanoC-modal.is-open {
  opacity: 1;
  visibility: visible;
}

.takanoC-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  cursor: pointer;
}

.takanoC-modal__content {
  position: relative; /* 閉じるボタンの基準点にするため */
  background: #fff;
  width: 90%;
  max-width: 960px;
  max-height: 80vh;
  -webkit-box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
          box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
  z-index: 10;
  overflow-y: auto;
}

.takanoC-modal__close {
  position: absolute;
  top: 10px;
  right: 10px;
  background: transparent;
  border: none;
  width: 40px;
  height: 40px;
  cursor: pointer;
}
.takanoC-modal__close::before, .takanoC-modal__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80%;
  height: 2px;
  background-color: #009944;
}
.takanoC-modal__close::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
.takanoC-modal__close::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.takanoC-modal__close:hover {
  opacity: 0.7;
}

.takanoC-items {
  padding-bottom: 0;
}
@media all and (max-width: 750px) {
  .takanoC-items {
    padding-bottom: 0;
  }
}
.takanoC-items .category__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px 20px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.takanoC-items .single__category {
  padding: 85px 0;
  border-top: 1px solid #ddd;
}
@media all and (max-width: 750px) {
  .takanoC-items .single__category {
    padding: 30px 0;
  }
}
.takanoC-items .single__category .item {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
}
@media all and (max-width: 750px) {
  .takanoC-items .single__category .item {
    font-size: 20px;
  }
}
.takanoC-items .single__category .item:not(:last-of-type)::after {
  content: "/";
  margin-left: 20px;
}
.takanoC-items .kinds {
  font-size: 16px;
  margin-top: 15px;
  text-align: center;
}
.takanoC-items .name {
  font-size: 25px;
  font-weight: 700;
  padding-right: 40px;
}
.takanoC-items .name .name__ttl {
  margin-right: 15px;
}
.takanoC-items .name .name__color {
  display: inline-block;
}
.takanoC-items .id {
  margin-top: 15px;
  font-size: 14px;
}
.takanoC-items .color {
  margin-top: 5px;
}
.takanoC-items .contents {
  margin-top: 20px;
}
.takanoC-items .material {
  margin-top: 10px;
}
.takanoC-items .size {
  margin-top: 10px;
}
.takanoC-items .contents {
  line-height: 1.5;
}
.takanoC-items .file {
  text-align: center;
  margin-top: 20px;
}
.takanoC-items .file a {
  display: inline-block;
  padding: 1em 3em;
  background: #009944;
  border-radius: 999px;
  color: #fff;
  font-weight: 700;
}
@media all and (min-width: 751px) {
  .takanoC-items .file a:hover {
    opacity: 0.7;
  }
}
.takanoC-items .single__mainVisual {
  margin-top: 20px;
}
.takanoC-items .single__mainVisual img {
  width: 100%;
  height: auto;
}
.takanoC-items #main-slider {
  margin-bottom: 5px !important;
  margin-top: 20px;
}
.takanoC-items #main-slider .splide__slide img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  vertical-align: bottom;
}
.takanoC-items .thumbnail-grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 5px 1fr 5px 1fr 5px 1fr 5px 1fr;
  grid-template-columns: repeat(5, 1fr);
  gap: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.takanoC-items .thumbnail-grid .thumbnail-item {
  width: 100%;
  aspect-ratio: 3/2;
  cursor: pointer;
  -webkit-transition: opacity 0.3s, border-color 0.3s;
  transition: opacity 0.3s, border-color 0.3s;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.takanoC-items .thumbnail-grid .thumbnail-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  vertical-align: bottom;
}
.takanoC-archive__wrapper {
  padding-bottom: 100px;
}
.takanoC-archive__wrapper.style02 {
  background: #fff;
}
.takanoC-archive__wrapper .contents__header {
  background: #fff;
  padding: 85px 0;
  height: inherit;
  border-top: 1px solid #ddd;
}
@media all and (max-width: 750px) {
  .takanoC-archive__wrapper .contents__header {
    padding: 30px 0;
  }
}
.takanoC-archive__wrapper .contents__header .contents__headerTtl {
  line-height: 1.5;
}
.takanoC-archive__wrapper .contents__header .contents__headerTtl span {
  display: table;
  margin: 0 auto;
  font-size: 38px;
}
@media all and (max-width: 750px) {
  .takanoC-archive__wrapper .contents__header .contents__headerTtl span {
    font-size: 24px;
  }
}
.takanoC-archive__wrapper .contents__header .contents__headerTtl__en {
  line-height: 2.4;
  text-align: center;
  margin: 13px 0 0 0;
}
.takanoC-archive__wrapper .takanoC-inner.style02 {
  max-width: 1400px;
}
.takanoC-archive__wrapper .large-category__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 40px 0;
  text-align: center;
  gap: 15px;
}
.takanoC-archive__wrapper .large-category__title .txt {
  color: #009944;
  font-size: 30px;
  letter-spacing: 0.25em;
}
@media all and (max-width: 750px) {
  .takanoC-archive__wrapper .large-category__title .txt {
    font-size: 20px;
  }
}
.takanoC-archive__wrapper .mid-category__section {
  margin-top: 40px;
}
.takanoC-archive__wrapper .mid-category__section .mid-category__title {
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  padding-bottom: 15px;
  text-align: center;
  background: #009944;
  padding: 15px;
  border-radius: 5px;
}
.takanoC-archive__wrapper .mid-category__section .mid-category__title + * {
  margin-top: 40px;
}
.takanoC-archive__wrapper .group__section:not(:first-of-type) {
  margin-top: 40px;
}
.takanoC-archive__wrapper .group__section .group__title {
  font-size: 18px;
  position: relative;
}
.takanoC-archive__wrapper .group__section .group__title::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #000;
  position: absolute;
  top: calc(50% - 2px);
  left: 0;
}
.takanoC-archive__wrapper .group__section .group__title + * {
  margin-top: 20px;
}
.takanoC-archive__wrapper .group__section .group__title span {
  background: #fff;
  padding-right: 0.5em;
  position: relative;
  z-index: 10;
}
.takanoC-archive__wrapper .group__section .archive__list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 10px 1fr 10px 1fr 10px 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px 10px;
}
@media all and (max-width: 1000px) {
  .takanoC-archive__wrapper .group__section .archive__list {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
  }
}
@media all and (max-width: 640px) {
  .takanoC-archive__wrapper .group__section .archive__list {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}
.takanoC-archive__wrapper .group__section .archive__list .thumbnail {
  width: 100%;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.takanoC-archive__wrapper .group__section .archive__list .thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.takanoC-archive__wrapper .group__section .archive__list .txtWrap {
  margin-top: 5px;
}
.takanoC-archive__wrapper .group__section .archive__list .txtWrap .id {
  font-size: 0.85em;
}
@media all and (min-width: 751px) {
  .takanoC-archive__wrapper .group__section .archive__list .archive__link:hover .thumbnail img {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
}
.takanoC-archive__wrapper .page-anchor-nav {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 20px 1fr 20px 1fr 20px 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-top: 30px;
}
@media all and (max-width: 1000px) {
  .takanoC-archive__wrapper .page-anchor-nav {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
  }
}
@media all and (max-width: 640px) {
  .takanoC-archive__wrapper .page-anchor-nav {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}
.takanoC-archive__wrapper .page-anchor-nav > li {
  width: 100%;
  min-width: 0;
}
.takanoC-archive__wrapper .page-anchor-nav > li > a {
  display: block;
  text-align: center;
  padding-bottom: 0.5em;
  text-decoration: none;
  border-bottom: 1px solid #000;
  position: relative;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.takanoC-archive__wrapper .page-anchor-nav > li > a::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 0;
  height: 1px;
  background-color: red;
  -webkit-transition: width 0.3s ease-out;
  transition: width 0.3s ease-out;
}
.takanoC-archive__wrapper .page-anchor-nav > li > a:hover::after {
  width: 100%;
}

/* 1. 親要素とスライダー本体の比率固定 */
#header_slider_wrap,
#header_slider {
  height: auto !important;
  aspect-ratio: 16/9;
  overflow: hidden;
}

@media screen and (max-width: 950px) {
  #header_slider_wrap,
  #header_slider {
    aspect-ratio: 8/6;
  }
}
/* 2. Slickが生成する中間の全階層のインライン高さを無効化 */
#header_slider .slick-list,
#header_slider .slick-track,
#header_slider .item.slick-slide {
  height: 100% !important;
}

/* 3. 背景画像が入っているdivの調整 */
#header_slider .bg_image {
  height: 100% !important;
  padding-top: 0 !important;
  background-size: cover !important;
  background-position: center top !important;
}

/* 4. スライダー内の各アイテムの高さ計算をリセット */
.index_slider_type2 .item {
  height: 100% !important;
}

@media screen and (min-width: 750px) {
  #header_logo .logo_image.pc {
    width: 460px !important;
    height: auto;
  }
}
@media screen and (max-width: 750px) {
  #header_logo .logo_image.mobile {
    width: 260px !important;
    height: auto;
  }
}
.takanoC-ttl04 {
  color: #fff;
  text-align: center;
  background: #009944;
  padding: 15px !important;
  border-radius: 5px;
}

body.page-id-141 #page_header,
body.page-id-151 #page_header,
body.page-id-153 #page_header,
body.page-id-155 #page_header,
body.page-id-157 #page_header,
body.page-id-159 #page_header {
  width: 100%;
  aspect-ratio: 1735/580;
  height: auto;
}
body.page-id-141 #page_header h1.catch,
body.page-id-141 #page_header p.desc,
body.page-id-151 #page_header h1.catch,
body.page-id-151 #page_header p.desc,
body.page-id-153 #page_header h1.catch,
body.page-id-153 #page_header p.desc,
body.page-id-155 #page_header h1.catch,
body.page-id-155 #page_header p.desc,
body.page-id-157 #page_header h1.catch,
body.page-id-157 #page_header p.desc,
body.page-id-159 #page_header h1.catch,
body.page-id-159 #page_header p.desc {
  display: none !important;
}
body.page-id-141 #page_header .overlay,
body.page-id-151 #page_header .overlay,
body.page-id-153 #page_header .overlay,
body.page-id-155 #page_header .overlay,
body.page-id-157 #page_header .overlay,
body.page-id-159 #page_header .overlay {
  background: none !important;
}

.serviceWrap01 p {
  color: #009944;
  margin-top: 15px !important;
  line-height: 150% !important;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
}
.serviceWrap01 figure {
  width: 80% !important;
  margin: 0 auto !important;
  max-width: 240px !important;
}

@media screen and (min-width: 751px) {
  .wp-block-media-text > .wp-block-media-text__content {
    padding: 0;
  }
  .wp-block-media-text {
    -ms-grid-columns: 1fr 4% 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: 4%;
  }
}
body.search-results .blog_list .image_wrap {
  display: none;
}
body.search-results .blog_list .content.no_author + .date, body.search-results .blog_list .content.no_author + * + .update {
  display: none;
}

.takanoC-hoverImg02 {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media all and (min-width: 751px) {
  .takanoC-hoverImg02:hover {
    opacity: 0.7;
  }
}
/*# sourceMappingURL=style.css.map */