@charset "UTF-8";
.yugo, .contact-form input[type="submit"], .contact-form input[type="button"], .confirm-msg .btn,
.sent-msg .btn {
  font-family: "Yu Gothic", YuGothic, メイリオ, meiryo, "メイリオ", "meiryo", "ヒラギノ角ゴ pro w3", "hiragino kaku gothic pro", sans-serif;
  font-weight: 500; }

.oswald {
  font-family: "Oswald", "Yu Gothic", YuGothic, メイリオ, meiryo, "メイリオ", "meiryo", "ヒラギノ角ゴ pro w3", "hiragino kaku gothic pro", sans-serif; }

.roboto {
  font-family: "Roboto", sans-serif; }

/* ----------------------------------------------------------
font-weight
---------------------------------------------------------- */

.t-bold {
  font-weight: 700;
  /* bold */ }

.t-lead-1 {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  /* medium */
  letter-spacing: 0.12em; }
  .t-lead-1 .emphasize {
    line-height: 1.375; }

.t-lead-2 {
  line-height: 1.5;
  font-weight: 700;
  /* bold */ }

.t-body-1, .contact-form input[type="text"],
.contact-form input[type="date"],
.contact-form input[type="tel"],
.contact-form input[type="email"],
.contact-form select,
.contact-form textarea, .contact-form dt .txt, .contact-form .radio-label, .confirm-msg,
.sent-msg {
  line-height: 1.875; }

.t-a-r {
  text-align: right; }

#contact .inner {
  margin: 0 auto;
  width: 766px; }

#contact section.top .contact-ttl__ja {
  font-weight: 700;
  /* bold */
  text-align: center;
  letter-spacing: 0.16em; }

#contact section.top .contact-ttl__en {
  font-family: "Oswald", "Yu Gothic", YuGothic, メイリオ, meiryo, "メイリオ", "meiryo", "ヒラギノ角ゴ pro w3", "hiragino kaku gothic pro", sans-serif;
  font-weight: 400;
  /* regular */
  text-align: center;
  display: block; }

#contact section.top .desc {
  padding-top: 80px;
  text-align: center;
  margin-bottom: 60px;
  font-weight: 700;
  /* bold */ }

#contact section.top .body-1 {
  font-size: 1.8rem;
  font-weight: 700;
  /* bold */
  line-height: 1.667; }

.contact-form {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  z-index: 2; }
  .contact-form input[type="text"],
  .contact-form input[type="date"],
  .contact-form input[type="tel"],
  .contact-form input[type="email"],
  .contact-form select,
  .contact-form textarea {
    border: solid 1px #f4f4f4;
    background: #f4f4f4;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    padding: 0 20px;
    font-family: "Yu Gothic", YuGothic, メイリオ, meiryo, "メイリオ", "meiryo", "ヒラギノ角ゴ pro w3", "hiragino kaku gothic pro", sans-serif;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }
    .contact-form input[type="text"]:placeholder-shown,
    .contact-form input[type="date"]:placeholder-shown,
    .contact-form input[type="tel"]:placeholder-shown,
    .contact-form input[type="email"]:placeholder-shown,
    .contact-form select:placeholder-shown,
    .contact-form textarea:placeholder-shown {
      color: #7c7c7c; }
    .contact-form input[type="text"]::-webkit-input-placeholder,
    .contact-form input[type="date"]::-webkit-input-placeholder,
    .contact-form input[type="tel"]::-webkit-input-placeholder,
    .contact-form input[type="email"]::-webkit-input-placeholder,
    .contact-form select::-webkit-input-placeholder,
    .contact-form textarea::-webkit-input-placeholder {
      color: #7c7c7c; }
    .contact-form input[type="text"]:-moz-placeholder,
    .contact-form input[type="date"]:-moz-placeholder,
    .contact-form input[type="tel"]:-moz-placeholder,
    .contact-form input[type="email"]:-moz-placeholder,
    .contact-form select:-moz-placeholder,
    .contact-form textarea:-moz-placeholder {
      color: #7c7c7c;
      opacity: 1; }
    .contact-form input[type="text"]::-moz-placeholder,
    .contact-form input[type="date"]::-moz-placeholder,
    .contact-form input[type="tel"]::-moz-placeholder,
    .contact-form input[type="email"]::-moz-placeholder,
    .contact-form select::-moz-placeholder,
    .contact-form textarea::-moz-placeholder {
      color: #7c7c7c;
      opacity: 1; }
    .contact-form input[type="text"]:-ms-input-placeholder,
    .contact-form input[type="date"]:-ms-input-placeholder,
    .contact-form input[type="tel"]:-ms-input-placeholder,
    .contact-form input[type="email"]:-ms-input-placeholder,
    .contact-form select:-ms-input-placeholder,
    .contact-form textarea:-ms-input-placeholder {
      color: #7c7c7c;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center; }
    .contact-form input[type="text"]:focus,
    .contact-form input[type="date"]:focus,
    .contact-form input[type="tel"]:focus,
    .contact-form input[type="email"]:focus,
    .contact-form select:focus,
    .contact-form textarea:focus {
      border: solid 1px #7c7c7c; }
  .contact-form input[type="text"],
  .contact-form input[type="date"],
  .contact-form input[type="tel"],
  .contact-form input[type="email"],
  .contact-form select {
    height: 50px; }
  .contact-form textarea {
    padding: 10px 20px;
    height: 148px; }
  .contact-form dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    .contact-form dt .txt {
      font-weight: 700;
      /* bold */ }
    .contact-form dt.required:after {
      content: "必須";
      white-space: nowrap;
      font-size: 1.4rem;
      letter-spacing: 0.04em;
      color: #121212;
      background: #e00000;
      padding: 3px 5px 2px;
      margin-left: 10px;
      margin-top: -1px;
      color: #fff; }
  .contact-form .note {
    font-size: 1.2rem;
    line-height: 1.75;
    letter-spacing: 0.04em;
    color: #282828;
    margin-top: 1em; }
  .contact-form input.postal {
    width: 200px; }
  .contact-form .select {
    position: relative; }
    .contact-form .select:after {
      font-family: "Yu Gothic", YuGothic, メイリオ, meiryo, "メイリオ", "meiryo", "ヒラギノ角ゴ pro w3", "hiragino kaku gothic pro", sans-serif;
      font-weight: 500;
      font-size: 10px;
      position: absolute;
      pointer-events: none;
      line-height: 1.5;
      content: "▼";
      top: 50%;
      right: 10px;
      color: #7c7c7c;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%); }
  .contact-form .radio {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .contact-form .radio-label {
    position: relative;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    color: #121212;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .contact-form input[type="checkbox"],
  .contact-form input[type="radio"] {
    display: none;
    width: 0;
    height: 0; }
  .contact-form input[type="checkbox"] + label::before,
  .contact-form input[type="radio"] + label::before {
    position: absolute;
    content: "";
    left: 0;
    background: #fff;
    border: 1px solid #959595;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-radius: 50%; }
  .contact-form input[type="checkbox"]:checked + label::after,
  .contact-form input[type="radio"]:checked + label::after {
    position: absolute;
    content: "";
    display: block;
    background: #333232;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 1;
    border-radius: 50%; }
  .contact-form .btn-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    position: relative; }
  .contact-form .ajax-loader {
    margin-top: 15px !important;
    display: block !important;
    position: absolute !important;
    left: 50%;
    bottom: -15px;
    -webkit-transform: translate(-50%, 100%);
            transform: translate(-50%, 100%);
    margin: 0 !important; }
  .contact-form input[type="submit"] {
    width: 340px;
    height: 70px;
    background-image: url(../../images/common/icon-arrow-5.svg);
    background-size: 32px auto;
    background-repeat: no-repeat;
    background-position: right 27px top 28px;
    background-color: #fbaa26;
    color: #fff;
    letter-spacing: 0.04em;
    font-size: 1.8rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: 700;
    /* bold */
    -webkit-transition: all 0.5s cubic-bezier(0.15, 0.25, 0.85, 0.7) 0s;
    transition: all 0.5s cubic-bezier(0.15, 0.25, 0.85, 0.7) 0s; }
    .contact-form input[type="submit"].wpcf7c-btn-confirm {
      margin: 0 auto; }
  .contact-form input[type="button"] {
    width: 340px;
    height: 70px;
    border: solid 1px #121212;
    background-image: url(../../images/common/icon-arrow-6.svg);
    background-size: 32px auto;
    background-repeat: no-repeat;
    background-position: left 27px top 28px;
    color: #121212;
    letter-spacing: 0.04em;
    font-size: 1.8rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: 700;
    /* bold */
    -webkit-transition: all 0.5s cubic-bezier(0.15, 0.25, 0.85, 0.7) 0s;
    transition: all 0.5s cubic-bezier(0.15, 0.25, 0.85, 0.7) 0s; }

.wpcf7-not-valid-tip {
  margin-top: 10px;
  font-size: 1.2rem; }

.wpcf7-response-output {
  display: none !important; }

.confirm-msg,
.sent-msg {
  text-align: center;
  display: none;
  margin: 100px 0 50px; }
  .confirm-msg .body-1,
  .sent-msg .body-1 {
    margin-bottom: 50px; }
  .confirm-msg .btn,
  .sent-msg .btn {
    width: 340px;
    height: 70px;
    border: solid 1px #121212;
    background-image: url(../../images/common/icon-arrow-6.svg);
    background-size: 32px auto;
    background-repeat: no-repeat;
    background-position: left 27px top 28px;
    color: #121212;
    letter-spacing: 0.04em;
    font-size: 1.8rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: 700;
    /* bold */
    -webkit-transition: all 0.5s cubic-bezier(0.15, 0.25, 0.85, 0.7) 0s;
    transition: all 0.5s cubic-bezier(0.15, 0.25, 0.85, 0.7) 0s; }

.confirm-ttl {
  display: none; }

.sent-ttl {
  display: none; }

.custom-wpcf7c-confirmed .default-ttl {
  display: none; }

.custom-wpcf7c-confirmed .confirm-ttl {
  display: block; }

.custom-wpcf7c-confirmed .sent-ttl {
  display: none; }

.custom-wpcf7c-confirmed .desc {
  display: none; }

.custom-wpcf7c-confirmed .confirm-msg {
  display: block; }

.custom-wpcf7c-confirmed input[type="text"],
.custom-wpcf7c-confirmed input[type="date"],
.custom-wpcf7c-confirmed input[type="tel"],
.custom-wpcf7c-confirmed input[type="email"],
.custom-wpcf7c-confirmed textarea,
.custom-wpcf7c-confirmed select {
  border: none !important;
  cursor: default; }

.custom-wpcf7c-confirmed .select:after {
  display: none; }

.custom-wpcf7c-confirmed input[type="radio"] + .radio-label {
  display: none; }

.custom-wpcf7c-confirmed input[type="radio"]:checked + .radio-label {
  display: inline;
  padding: 0; }
  .custom-wpcf7c-confirmed input[type="radio"]:checked + .radio-label:before, .custom-wpcf7c-confirmed input[type="radio"]:checked + .radio-label:after {
    display: none; }

.custom-wpcf7c-confirmed .note {
  display: none; }

.sent .default-ttl {
  display: none; }

.sent .confirm-ttl {
  display: none; }

.sent .sent-ttl {
  display: block; }

.sent dl {
  display: none !important; }

.sent .btn-wrap,
.sent .desc {
  display: none; }

.sent .sent-msg {
  display: block; }

/*
//スタイル確認用
.sent-msg,
.btn-wrap .wpcf7c-force-hide {
  display: block !important;
}
*/

@media screen and (min-width: 769px) {
  .setOrder {
    color: #000; }
    .t-lead-1 {
      font-size: 3rem;
      line-height: 1.4; }
      .t-lead-1 .emphasize {
        font-size: 4rem; }
    .t-lead-2 {
      font-size: 3rem; }
    .t-body-1, .contact-form input[type="text"],
    .contact-form input[type="date"],
    .contact-form input[type="tel"],
    .contact-form input[type="email"],
    .contact-form select,
    .contact-form textarea, .contact-form dt .txt, .contact-form .radio-label, .confirm-msg,
    .sent-msg {
      font-size: 1.6rem; }
  .contact-form {
    width: 940px;
    margin-left: auto;
    margin-right: auto; }
  #contact section.top {
    padding-top: 150px; }
    #contact section.top .contact-ttl__ja {
      font-size: 4rem;
      margin-bottom: 5px; }
    #contact section.top .contact-ttl__en {
      font-size: 3rem; }
    .contact-form {
      width: 766px;
      margin: 80px auto 126px auto; }
    .contact-form dl {
      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; }
    .contact-form dt,
    .contact-form dd {
      margin-bottom: 30px; }
      .contact-form dt {
        width: 242px;
        padding-right: 50px; }
      .contact-form dt.has-textarea {
        margin-bottom: auto; }
    .contact-form dd {
      width: 524px; }
    .contact-form .radio-item:not(:last-of-type) .radio-label {
      margin-right: 50px; }
      .contact-form .radio-label {
        padding: 5px 5px 5px 23px;
        height: 1em; }
        .contact-form .radio-label:hover {
          cursor: pointer; }
      .contact-form input[type="checkbox"] + label::before,
      .contact-form input[type="radio"] + label::before {
        top: 4px;
        width: 18px;
        height: 18px; }
      .contact-form input[type="checkbox"]:checked + label::after,
      .contact-form input[type="radio"]:checked + label::after {
        width: 10px;
        height: 10px;
        top: 8px;
        left: 4px; }
      .contact-form .btn-wrap {
        margin-top: 50px; }
      .contact-form input[type="submit"]:hover {
        background-color: #fbd226; }
      .contact-form input[type="button"]:hover {
        background-color: #121212;
        background-image: url(../../images/common/icon-arrow-7.svg);
        color: #fff; }
      .confirm-msg .btn,
      .sent-msg .btn {
        margin: 90px auto 0; }
      .confirm-msg .btn:hover,
      .sent-msg .btn:hover {
        background-color: #121212;
        background-image: url(../../images/common/icon-arrow-7.svg);
        color: #fff; }
  .confirm-msg {
    margin-bottom: 100px; } }

@media screen and (min-width: 961px) {
  .setOrder {
    color: #000; } }

@media screen and (max-width: 768px) {
  .setOrder {
    color: #000; }
    .t-lead-1 {
      font-size: 2.4rem;
      line-height: 1.75; }
      .t-lead-1 .emphasize {
        font-size: 3.2rem; }
    .t-lead-2 {
      font-size: 2rem; }
    .t-body-1, .contact-form input[type="text"],
    .contact-form input[type="date"],
    .contact-form input[type="tel"],
    .contact-form input[type="email"],
    .contact-form select,
    .contact-form textarea, .contact-form dt .txt, .contact-form .radio-label, .confirm-msg,
    .sent-msg {
      font-size: 1.4rem; }
  .contact-form {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-left: 25px;
    padding-right: 25px; }
  #contact section.top {
    padding-top: 80px; }
    #contact section.top .contact-ttl__ja {
      font-size: 2.5rem; }
    #contact section.top .contact-ttl__en {
      font-size: 1.8rem; }
  #contact {
    width: 100%; }
    #contact .inner {
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      margin: 0 auto;
      padding: 0 25px;
      width: 100%; }
    #contact section.top {
      margin-top: calc(20vw + 50px); }
      #contact section.top .desc {
        padding-top: 20vw; }
      #contact section.top .body-1 {
        font-size: 1.4rem;
        font-weight: 700;
        /* bold */
        line-height: 1.667;
        margin-bottom: 30px; }
    .contact-form {
      margin: 50px auto 80px; }
      .contact-form dt {
        margin-bottom: 10px; }
    .contact-form dd {
      margin-bottom: 30px; }
      .contact-form .radio {
        margin-top: 15px; }
    .contact-form .radio-item {
      margin-bottom: 10px; }
    .contact-form .radio-item:not(:last-of-type) .radio-label {
      margin-right: 30px; }
      .contact-form .radio-label {
        width: 100%;
        margin-top: 0.5em;
        padding-left: 20px; }
      .contact-form input[type="checkbox"] + label::before,
      .contact-form input[type="radio"] + label::before {
        width: 12px;
        height: 12px;
        top: 2px; }
      .contact-form input[type="checkbox"]:checked + label::after,
      .contact-form input[type="radio"]:checked + label::after {
        width: 8px;
        height: 8px;
        top: 4px;
        left: 2px; }
      .contact-form .btn-wrap {
        margin-top: 30px; }
      .confirm-msg .btn,
      .sent-msg .btn {
        margin: 50px auto 0; }
  .confirm-msg {
    margin-bottom: 60px; } }
