@charset "UTF-8";
#projects main .filter-wrapper .filter a { color: inherit; }
#project main section#detail .imgs div:first-child { display: block; }
#project main section#detail .imgs+.imgs { margin-top: 4.6728971963vw; }
#project main section#detail .imgs+.imgs div:first-child { margin-top: 0; }
#project main section#detail .imgs+.textblock { margin-top: 11.214953271vw; }
#project main section#detail .textblock { margin-bottom: 14.953271028vw; }
#project main section#detail .textblock.mm { margin-top: 4.6728971963vw; }
#project main section#detail .textblock .text { margin-bottom: 0; }
#project main section#detail .textblock .text+.text { margin-top: 1.8em; }
@media screen and (min-width: 768px) {
	main section#projects .wrapper.normal-container .normal-wrapper { column-gap: 1.2724550898%; }
	#project main section#detail .imgs div.is-centerd { margin-inline: auto; padding-inline: 10%; box-sizing: content-box; }
	#project main section#detail .imgs+.imgs { margin-top: 1rem; }
	#project main section#detail .imgs+.textblock { margin-top: 3rem; }
	#project main section#detail .textblock { margin-bottom: 3rem; }
	#project main section#detail .textblock.mm { margin-top: 1rem; }
	#project main section#detail .btn-wrapper .btn { width: auto; min-width: 22.8125rem; display: inline-block; }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
	header { min-width: 0; }
	header #catch br.sp { display: block!important; }
	header .header-inner { min-width: 0; padding-block: 0.75rem 0; align-items: flex-start; }
	#overlay { top: 80%; left: 2.5rem; }
	#overlay nav ul { justify-content: center; }
}
/* Contact */
@media screen and (max-width: 767px) {
	#contact form p:not(.privacy) .wpcf7-list-item {
    display: flex;
    align-items: center;
    justify-content: start;
    margin-bottom: 5.6074766355vw;
    margin-left: 0;
  }
  #contact form p:not(.privacy) .wpcf7-list-item:last-child {
    margin-bottom: 0;
  }
  #contact form p:not(.privacy) .wpcf7-list-item input[type=checkbox],
  #contact form p:not(.privacy) .wpcf7-list-item input[type=radio] {
    display: none;
  }
  #contact form p:not(.privacy) .wpcf7-list-item label {
    position: relative;
    padding-left: 9.3457943925vw;
    box-sizing: border-box;
    font-weight: normal;
    width: 100%;
    cursor: pointer;
  }
  #contact form p:not(.privacy) .wpcf7-list-item label::before {
    position: absolute;
    top: 36%;
    left: 0;
    content: "";
    background: #fff;
    border: 0.2336448598vw solid #9b9b9b;
    display: block;
    height: 7.476635514vw;
    width: 7.476635514vw;
    box-sizing: border-box;
    border-radius: 100%;
    transform: translate3d(0, -50%, 0);
  }
  #contact form p:not(.privacy) .wpcf7-list-item label::after {
    position: absolute;
    top: 36%;
    left: 2.3364485981vw;
    content: "";
    height: 2.8037383178vw;
    width: 2.8037383178vw;
    border-radius: 100%;
    display: block;
    background-color: #444444;
    opacity: 0;
    transform: translate3d(0, -50%, 0);
  }
  #contact form p:not(.privacy) .wpcf7-list-item:has(input[type=checkbox]:checked) label::after,
	#contact form p:not(.privacy) .wpcf7-list-item:has(input[type=radio]:checked) label::after {
    opacity: 1;
  }
  #contact form p:not(.privacy) .wpcf7-list-item label {
    height: 5.8411214953vw;
  }
  #contact form p.privacy .wpcf7-list-item {
		margin-left: 0;
	}
  #contact form p.privacy .wpcf7-list-item input[type=checkbox],
  #contact form p.privacy .wpcf7-list-item input[type=radio] {
    display: none;
  }
  #contact form p.privacy .wpcf7-list-item label {
    position: relative;
    padding-left: 11.214953271vw;
    box-sizing: border-box;
    width: 100%;
    cursor: pointer;
  }
  #contact form p.privacy .wpcf7-list-item label::before {
    position: absolute;
    top: 35%;
    left: 0;
    content: "";
    background: #fff;
    border: 0.2336448598vw solid #9b9b9b;
    display: block;
    height: 7.476635514vw;
    width: 7.476635514vw;
    box-sizing: border-box;
    transform: translate3d(0, -50%, 0);
  }
  #contact form p.privacy .wpcf7-list-item label::after {
    content: "";
    display: block;
    position: absolute;
    top: 0.9345794393vw;
    left: 2.1028037383vw;
    width: 3.0373831776vw;
    height: 1.6355140187vw;
    border-left: 0.4672897196vw solid #444444;
    border-bottom: 0.4672897196vw solid #444444;
    opacity: 0;
    transform: rotate(-45deg);
  }
  #contact form p.privacy .wpcf7-list-item:has(input[type=checkbox]:checked) label::after,
	#contact form p.privacy .wpcf7-list-item:has(input[type=radio]:checked) label::after {
	  opacity: 1;
	}
	#contact form .wpcf7-not-valid-tip {
		margin-block: 3.0373831776vw 0;
	}
}
@media screen and (min-width: 768px) {
	#contact form p:not(.privacy) .wpcf7-list-item {
	  display: flex;
	  align-items: center;
	  justify-content: start;
	  margin: 0;
	}
	#contact form p:not(.privacy) .wpcf7-list-item input[type=checkbox],
	#contact form p:not(.privacy) .wpcf7-list-item input[type=radio] {
	  display: none;
	}
	#contact form p:not(.privacy) .wpcf7-list-item label {
	  position: relative;
	  margin-right: 2.5rem;
	  padding-left: 2.5rem;
	  box-sizing: border-box;
	  font-size: 14px;
	  font-size: 0.875rem;
	  font-weight: normal;
	  width: 100%;
	  cursor: pointer;
	}
	#contact form p:not(.privacy) .wpcf7-list-item label {
	  margin-bottom: 2rem;
	}
	#contact form p:not(.privacy) .wpcf7-list-item label::before {
	  position: absolute;
	  top: 50%;
	  left: 0;
	  content: "";
	  background: #fff;
	  border: 0.0625rem solid #9b9b9b;
	  display: block;
	  height: 2rem;
	  width: 2rem;
	  border-radius: 100%;
	  transform: translate3d(0, -50%, 0);
	}
	#contact form p:not(.privacy) .wpcf7-list-item label::after {
	  position: absolute;
	  top: 50%;
	  left: 0.625rem;
	  content: "";
	  height: 0.75rem;
	  width: 0.75rem;
	  border-radius: 100%;
	  display: block;
	  background-color: #444444;
	  opacity: 0;
	  transform: translate3d(0, -50%, 0);
	}
	#contact form p:not(.privacy) .wpcf7-list-item:has(input[type=checkbox]:checked) label::after,
	#contact form p:not(.privacy) .wpcf7-list-item:has(input[type=radio]:checked) label::after {
	  opacity: 1;
	}
	#contact form [data-name="how_to_know"] .wpcf7-form-control {
		display: flex;
	  flex-wrap: wrap;
	}
	#contact form p.privacy .wpcf7-list-item {
		margin: 0;
	}
	#contact form p.privacy .wpcf7-list-item input[type=checkbox],
  #contact form p.privacy .wpcf7-list-item input[type=radio] {
    display: none;
  }
  #contact form p.privacy .wpcf7-list-item label {
    position: relative;
    padding-left: 3rem;
    margin: 0 !important;
    box-sizing: border-box;
    cursor: pointer;
  }
  #contact form p.privacy .wpcf7-list-item label::before {
    position: absolute;
    top: 44%;
    left: 0;
    content: "";
    background: #fff;
    border: 0.0625rem solid #9b9b9b;
    display: block;
    height: 2rem;
    width: 2rem;
    transform: translate3d(0, -50%, 0);
  }
  #contact form p.privacy .wpcf7-list-item label::after {
    content: "";
    display: block;
    position: absolute;
    top: 0.4375rem;
    left: 0.625rem;
    width: 0.8125rem;
    height: 0.4375rem;
    border-left: 0.125rem solid #444444;
    border-bottom: 0.125rem solid #444444;
    opacity: 0;
    transform: rotate(-45deg);
  }
  #contact form p.privacy .wpcf7-list-item:has(input[type=checkbox]:checked) label::after,
	#contact form p.privacy .wpcf7-list-item:has(input[type=radio]:checked) label::after {
	  opacity: 1;
	}
	#contact form .wpcf7-not-valid-tip {
		margin-block: 1rem 0;
	}
}