/* 株式会社ツギテ製作所（架空）｜TERASU ご提案デモ ver48 */
@charset "UTF-8";
.t-c-breadcrumbs {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: flex-start;
}
.t-c-breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
  gap: calc(9 * var(--px));
}
.t-c-breadcrumbs__item {
  display: flex;
  gap: calc(10 * var(--px));
  align-items: center;
  font-size: calc(12 * var(--px));
  font-weight: 400;
  line-height: 1.1;
  color: var(--color-black);
  text-transform: uppercase;
}
.t-c-breadcrumbs__item:not(:last-child) {
  color: #67625b;
}
.t-c-breadcrumbs__item:not(:last-child):after {
  width: calc(5 * var(--px));
  height: calc(8 * var(--px));
  margin-top: calc(2 * var(--px));
  content: "";
  background-image: url(/demos/tsugite/assets/img/ts/icon_breadcrumb.svg?v=15340f98);
  background-repeat: no-repeat;
  background-size: 100%;
}
.t-c-breadcrumbs__item-link {
  text-transform: uppercase;
}
@media screen and (min-width: 960px) {
  .t-c-breadcrumbs__list {
    gap: calc(9 * var(--px));
  }
  .t-c-breadcrumbs__item {
    --_line-color: #aaa;
    gap: calc(10 * var(--px));
    font-size: calc(14 * var(--px));
  }
}
.t-contact .t-tgform-response-output {
  display: none;
}
.t-c-form {
  display: grid;
  grid-template-columns: 1fr;
  gap: calc(40 * var(--px));
}
.t-c-form .t-tgform-not-valid-tip {
  font-size: calc(15 * var(--px));
}
.t-c-form input:focus,
.t-c-form textarea:focus,
.t-c-form select:focus,
.t-c-form a:focus {
  outline: 2px solid #000;
  outline-offset: 2px;
}
.t-c-form__item {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: calc(8 * var(--px));
}
.t-c-form__item.\--security {
  margin-top: calc(-23 * var(--px));
}
.t-c-form__item-required {
  display: inline-block;
  font-size: calc(10 * var(--px));
  font-weight: 400;
  line-height: 2;
  color: var(--color-red);
  letter-spacing: 0;
}
.t-c-form__item-label {
  display: flex;
  -moz-column-gap: calc(6 * var(--px));
  column-gap: calc(6 * var(--px));
  align-items: center;
  font-size: calc(16 * var(--px));
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
}
.t-c-form__item-label.\--file {
  flex-direction: column;
  align-items: flex-start;
}
.t-c-form__item-label-small {
  margin: 0 calc(-6 * var(--px));
  font-size: calc(10 * var(--px));
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.08em;
}
.t-c-form__item-security {
  display: grid;
  grid-template-columns: 1fr;
  gap: calc(24 * var(--px));
  width: 100%;
  padding: calc(24 * var(--px));
  font-size: calc(16 * var(--px));
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-black);
  border: 1px solid var(--color-black);
}
.t-c-form__item-security-desc {
  position: relative;
  padding-right: calc(24 * var(--px));
  font-size: calc(16 * var(--px));
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
}
.t-c-form__item-security-desc:after {
  position: absolute;
  top: 0;
  right: 0;
  font-size: calc(10 * var(--px));
  color: var(--color-red);
  content: "※";
}
.t-c-form__item-security-desc .t-text-line {
  background-color: #ddc891;
}
.t-c-form__item-security .t-tgform-form-control-wrap {
  margin-top: calc(-8 * var(--px));
}
.t-c-form__item-security .t-tgform-quiz-label {
  display: none;
}
.t-c-form__item input[type="file"] {
  width: 100%;
  padding: calc(8 * var(--px)) calc(12 * var(--px));
  font-size: calc(14 * var(--px));
  color: var(--color-black);
  cursor: pointer;
  background-color: #fff;
  border-radius: calc(4 * var(--px));
}
.t-c-form__item ::file-selector-button,
.t-c-form__item ::-webkit-file-upload-button {
  width: auto;
  height: auto;
  padding: calc(8 * var(--px)) calc(12 * var(--px));
  margin-right: calc(12 * var(--px));
  font-size: calc(14 * var(--px));
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-white);
  cursor: pointer;
  background-color: var(--color-black);
  border: none;
  border-radius: calc(4 * var(--px));
}
.t-c-form__input-text {
  width: 100%;
  padding: calc(10 * var(--px)) calc(16 * var(--px));
  font-size: calc(16 * var(--px));
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-black);
  background-color: #f2f2f2;
}
.t-c-form__input-text::-moz-placeholder {
  color: #999;
}
.t-c-form__input-text::placeholder {
  color: #999;
}
.t-c-form__input-radio {
  display: flex;
  flex-direction: column;
  gap: calc(8 * var(--px));
  margin-left: calc(-4 * var(--px));
}
.t-c-form__input-radio label {
  display: flex;
  gap: calc(10 * var(--px));
  align-items: center;
  font-size: calc(16 * var(--px));
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
  cursor: pointer;
}
.t-c-form__input-radio label input {
  position: relative;
  flex-shrink: 0;
  width: calc(15 * var(--px));
  height: calc(15 * var(--px));
  background-repeat: no-repeat;
  background-size: 100%;
}
.t-c-form__input-radio label input:after {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(15 * var(--px));
  height: calc(15 * var(--px));
  content: "";
  background-repeat: no-repeat;
  background-size: 100%;
  opacity: 0;
}
.t-c-form__input-radio label input:checked:after {
  opacity: 1;
}
.t-c-form__input-radio .t-tgform-list-item {
  margin: 0 0 0 calc(4 * var(--px));
}
.t-c-form__input-textarea {
  width: 100%;
  height: calc(200 * var(--px));
  padding: calc(16 * var(--px)) calc(20 * var(--px)) calc(19 * var(--px));
  font-size: calc(16 * var(--px));
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-black);
  background-color: #f2f2f2;
}
.t-c-form__input-textarea::-moz-placeholder {
  color: #999;
}
.t-c-form__input-textarea::placeholder {
  color: #999;
}
.t-c-form__input-security {
  width: 100%;
  padding: calc(16 * var(--px));
  background-color: #f2f2f2;
}
.t-c-form__input-send {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding-left: calc(82 * var(--px));
}
.t-c-form__privacy {
  display: flex;
  flex-direction: column;
  gap: calc(18 * var(--px));
  align-items: center;
}
.t-c-form__privacy-text {
  width: 100%;
  font-size: calc(14 * var(--px));
  font-weight: 500;
  line-height: 1.8;
  text-align: center;
  letter-spacing: 0;
}
.t-c-form__privacy-text > a {
  display: inline;
  word-break: keep-all;
  background-image: linear-gradient(var(--color-black), var(--color-black));
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: 100% 1px;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
.t-c-form__privacy-check {
  width: -moz-fit-content;
  width: fit-content;
  margin-left: calc(-36 * var(--px));
}
.t-c-form__privacy-check label {
  display: flex;
  gap: calc(8 * var(--px));
  align-items: center;
  font-size: calc(17 * var(--px));
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
}
.t-c-form__privacy-check label input {
  position: relative;
  flex-shrink: 0;
  width: calc(20 * var(--px));
  height: calc(18 * var(--px));
  background-image: url("data:image/svg+xml,%3csvg%20width='12'%20height='10'%20viewBox='0%200%2012%2010'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20x='0.5'%20y='0.5'%20width='9'%20height='9'%20stroke='%23BDBCB0'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 100%;
}
.t-c-form__privacy-check label input:after {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(20 * var(--px));
  height: calc(18 * var(--px));
  content: "";
  background-image: url("data:image/svg+xml,%3csvg%20width='12'%20height='10'%20viewBox='0%200%2012%2010'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3crect%20x='0.5'%20y='0.5'%20width='9'%20height='9'%20stroke='%23BDBCB0'/%3e%3cpath%20d='M2.5%205.5L4.5%207.1543L11.1543%200.5'%20stroke='black'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 100%;
  opacity: 0;
}
.t-c-form__privacy-check label input:checked:after {
  opacity: 1;
}
.t-c-form__privacy-check .t-tgform-list-item {
  margin: 0 0 0 calc(25 * var(--px));
}
.t-c-form__send {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: calc(68 * var(--px));
  margin-top: calc(34 * var(--px));
  cursor: pointer;
  background-color: #4d4337;
  opacity: 0.5;
  transition: opacity 0.4s var(--ease-out-circ);
}
.t-c-form__send-text {
  font-size: calc(14 * var(--px));
  font-weight: 500;
  line-height: 1;
  color: var(--color-white);
  letter-spacing: 0;
}
.t-c-form__send-icon {
  position: absolute;
  top: 16px;
  right: 82px;
}
.t-c-form__send.is-able {
  opacity: 1;
}
@media screen and (min-width: 960px) {
  .t-c-form {
    gap: calc(37 * var(--px));
  }
  .t-c-form__item {
    display: grid;
    grid-template-columns: calc(240 * var(--px)) 1fr;
    gap: calc(8 * var(--px));
    align-items: flex-start;
  }
  .t-c-form__item.\--security {
    grid-template-columns: 1fr;
    margin: 0;
  }
  .t-c-form__input-text {
    padding: calc(12 * var(--px)) calc(16 * var(--px));
  }
  .t-c-form__input-textarea {
    height: calc(200 * var(--px));
    padding: calc(13 * var(--px)) calc(16 * var(--px));
  }
  .t-c-form__input-send {
    padding-left: calc(357 * var(--px));
  }
  .t-c-form__input-security {
    padding: calc(10 * var(--px)) calc(16 * var(--px));
  }
  .t-c-form__bottom {
    margin-top: calc(30 * var(--px));
  }
  .t-c-form__privacy {
    width: 100%;
    text-align: center;
  }
  .t-c-form__privacy-text {
    width: 100%;
  }
  .t-c-form__send {
    --_link-background: #4d4337;
    --_link-hover-background: #332d27;
    --_link-text-color: var(--color-white);
    --_link-hover-text-color: var(--color-white);
    height: calc(106 * var(--px));
    margin-top: calc(46 * var(--px));
  }
  .t-c-form__send-text {
    font-size: calc(16 * var(--px));
  }
  .t-c-form__send-icon {
    top: calc(36 * var(--px));
    right: calc(358 * var(--px));
  }
}
@media screen and (min-width: 960px) and (any-hover: hover) {
  .t-c-form__privacy-text a {
    background-position: left 100%;
    background-size: 100% 1px;
    transition: background-size 0.5s var(--ease-out-circ);
  }
  .t-c-form__privacy-text a:hover {
    background-position: right 100%;
    background-size: 0 1px;
  }
}
.t-contact {
  padding: calc(120 * var(--px)) 0 calc(168 * var(--px));
  border-bottom: 1px solid #ddd;
}
.t-contact__head {
  width: 100%;
  padding: 0 calc(27 * var(--px));
}
.t-contact__head-headline-en {
  font-family: var(--font-en);
  font-size: calc(12 * var(--px));
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.t-contact__head-headline-jp {
  margin-top: calc(16 * var(--px));
  font-size: calc(26 * var(--px));
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.08em;
}
.t-contact__head-breadcrumb {
  margin-top: calc(24 * var(--px));
}
.t-contact__body {
  width: 100%;
  padding: 0 calc(26 * var(--px)) 0 calc(27 * var(--px));
  margin-top: calc(41 * var(--px));
}
.t-contact__body-line {
  width: 100%;
  margin-top: calc(16 * var(--px));
  border-bottom: 1px solid var(--color-black);
}
.t-contact__body-form {
  padding: calc(38 * var(--px)) 0 0;
}
.t-contact__notion {
  display: flex;
  gap: calc(16 * var(--px));
  align-items: center;
  justify-content: flex-end;
  color: var(--color-red);
}
.t-contact__notion-mark {
  font-size: calc(10 * var(--px));
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0;
}
.t-contact__notion-text {
  font-size: calc(13 * var(--px));
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
}
.t-l-footer {
  margin-top: calc(80 * var(--px));
}
@media screen and (min-width: 960px) {
  .t-contact {
    display: grid;
    grid-template-rows: min-content;
    grid-template-columns: repeat(var(--grid-columns), 1fr);
    padding: 0 var(--grid-gutter);
    padding-top: calc(200 * var(--px));
    padding-bottom: calc(176 * var(--px));
  }
  .t-contact__head {
    grid-row: 1;
    grid-column: 2/7;
    padding: 0;
  }
  .t-contact__head-headline-en {
    font-size: calc(14 * var(--px));
  }
  .t-contact__head-headline-jp {
    margin-top: calc(24 * var(--px));
    font-size: calc(32 * var(--px));
  }
  .t-contact__head-breadcrumb {
    margin-top: calc(48 * var(--px));
  }
  .t-contact__body {
    grid-row: 1;
    grid-column: 6/16;
    padding: 0;
    margin-top: calc(128 * var(--px));
  }
  .t-contact__body-line {
    margin-top: calc(24 * var(--px));
  }
  .t-contact__body-form {
    padding-top: calc(48 * var(--px));
  }
  .t-l-footer {
    margin-top: calc(88 * var(--px));
  }
}
