@charset "UTF-8";
/*! Writen  by SCSS */
.sec.sec_company {
  display: none !important; }

.bg {
  background-color: #f9f8f6; }

.sec .inner {
  max-width: 1120px; }

.main {
  background-color: #370601;
  color: #fff;
  padding-block: clamp(20px, 3.125vw, 35px); }
  .main .sec_ttl {
    line-height: 1; }

.sec01 {
  font-size: clamp(16px, 1.786vw, 20px);
  margin-block: clamp(30px, 4.465vw, 50px);
  text-align: center; }

main .icon {
  display: inline-block;
  padding: 5px;
  line-height: 1;
  font-size: clamp(10px, 1.25vw, 14px);
  height: fit-content;
  background: rgba(255, 255, 255, 0.8);
  color: #333; }
  main .icon.color {
    background: #d41000;
    color: #fff; }

.sec02 {
  padding-bottom: clamp(50px, 8.929vw, 100px);
  color: #000; }
  .sec02 .ttl_wrap {
    margin-bottom: clamp(10px, 1.786vw, 20px); }
    .sec02 .ttl_wrap .ttl {
      position: relative;
      font-size: clamp(16px, 1.786vw, 20px);
      padding-left: clamp(10px, 1.34vw, 15px);
      line-height: 1.4;
      margin-bottom: 5px;
      color: #000; }
      .sec02 .ttl_wrap .ttl::after {
        content: '';
        width: 4px;
        height: 100%;
        background-color: #453f35;
        position: absolute;
        left: 0;
        top: 0; }
  .sec02 .sec02_wrap {
    display: flex;
    flex-direction: column;
    grid-row-gap: 2px;
    margin-bottom: clamp(20px, 2.679vw, 30px); }
    @media screen and (max-width: 768px) {
      .sec02 .sec02_wrap dl {
        flex-wrap: wrap; } }
    .sec02 .sec02_wrap dl dt {
      align-items: center;
      width: 31.25%;
      padding: clamp(5px, 1.667vw, 20px) clamp(15px, 2.084vw, 25px);
      background-color: #888277;
      color: #fff;
      font-size: clamp(14px, 1.518vw, 17px); }
      @media screen and (max-width: 768px) {
        .sec02 .sec02_wrap dl dt {
          width: 100%; } }
      .sec02 .sec02_wrap dl dt .name {
        font-size: clamp(14px, 1.429vw, 16px); }
      .sec02 .sec02_wrap dl dt .name_wrap {
        align-items: center; }
      .sec02 .sec02_wrap dl dt.name_dt {
        align-items: baseline; }
        .sec02 .sec02_wrap dl dt.name_dt .name {
          line-height: 1.4; }
        .sec02 .sec02_wrap dl dt.name_dt .dt_cap {
          color: #f6ff6e;
          font-size: clamp(10px, 1.072vw, 12px); }
    .sec02 .sec02_wrap dl dd {
      width: 68.84%;
      padding: clamp(5px, 0.893vw, 10px) clamp(10px, 1.25vw, 15px);
      background-color: #dcdcdc;
      display: flex;
      align-items: center;
      column-gap: 5px; }
      @media screen and (max-width: 768px) {
        .sec02 .sec02_wrap dl dd {
          width: 100%;
          padding-block: 10px; } }
      .sec02 .sec02_wrap dl dd.area_wrap {
        flex-wrap: wrap; }
      .sec02 .sec02_wrap dl dd .text {
        font-size: clamp(12px, 1.429vw, 16px); }
      .sec02 .sec02_wrap dl dd .cap {
        color: #d52828; }
      .sec02 .sec02_wrap dl dd .input_wrap {
        column-gap: 10px; }
      .sec02 .sec02_wrap dl dd .input_wrap_02 {
        width: 100%;
        gap: 5px;
        align-items: flex-start;
        justify-content: flex-start;
        flex-direction: column;
        margin-bottom: 10px; }
        .sec02 .sec02_wrap dl dd .input_wrap_02:nth-child(1) {
          margin-bottom: clamp(15px, 1.786vw, 20px); }
        .sec02 .sec02_wrap dl dd .input_wrap_02.input_wrap_02_code {
          flex-direction: row; }
      .sec02 .sec02_wrap dl dd .input_area {
        height: clamp(30px, 3.572vw, 40px);
        border-radius: 5px;
        border: 1px;
        box-shadow: 0 0 1px 0 black;
        font-size: clamp(14px, 1.429vw, 16px);
        padding: clamp(5px, 0.834vw, 10px) clamp(10px, 1.25vw, 15px);
        display: block;
        width: 37.57%; }
        @media screen and (max-width: 768px) {
          .sec02 .sec02_wrap dl dd .input_area {
            width: 48%; } }
        .sec02 .sec02_wrap dl dd .input_area.small {
          width: 23.38%; }
          @media screen and (max-width: 768px) {
            .sec02 .sec02_wrap dl dd .input_area.small {
              width: 34.93%; } }
        .sec02 .sec02_wrap dl dd .input_area.small02 {
          width: 10.95%; }
          @media screen and (max-width: 768px) {
            .sec02 .sec02_wrap dl dd .input_area.small02 {
              width: 25.4%; } }
        .sec02 .sec02_wrap dl dd .input_area.large {
          width: 56.76%; }
          @media screen and (max-width: 768px) {
            .sec02 .sec02_wrap dl dd .input_area.large {
              width: 69.85%; } }
        .sec02 .sec02_wrap dl dd .input_area.max {
          width: 100%; }
        @media screen and (max-width: 768px) {
          .sec02 .sec02_wrap dl dd .input_area.sp_max {
            width: 100%; } }
        .sec02 .sec02_wrap dl dd .input_area.big {
          height: clamp(80px, 10.268vw, 115px); }
          @media screen and (max-width: 768px) {
            .sec02 .sec02_wrap dl dd .input_area.big {
              height: 100px; } }
      .sec02 .sec02_wrap dl dd .input_wrap {
        width: 100%; }
      .sec02 .sec02_wrap dl dd .input_btn {
        display: flex;
        flex-wrap: wrap;
        column-gap: clamp(10px, 1.34vw, 15px);
        grid-row-gap: clamp(10px, 1.25vw, 15px);
        margin-bottom: 10px; }
        .sec02 .sec02_wrap dl dd .input_btn .item {
          display: flex;
          align-items: center;
          font-size: clamp(14px, 1.429vw, 16px);
          column-gap: clamp(5px, 0.625vw, 7px);
          cursor: pointer; }
          .sec02 .sec02_wrap dl dd .input_btn .item span {
            position: relative;
            width: clamp(20px, 2.59vw, 29px);
            aspect-ratio: 1;
            border-radius: 50%;
            background-color: #FFFFFF;
            display: flex;
            justify-content: center;
            align-items: center; }
            .sec02 .sec02_wrap dl dd .input_btn .item span::after {
              content: '';
              width: 85%;
              aspect-ratio: 1;
              border-radius: 50%;
              background-color: #888277;
              display: none; }
          .sec02 .sec02_wrap dl dd .input_btn .item.active span::after {
            display: block; }
      .sec02 .sec02_wrap dl dd.input_wrap_03 {
        flex-wrap: wrap; }
  .sec02 .check_wrap {
    justify-content: center;
    align-items: center;
    column-gap: 10px;
    margin-bottom: clamp(20px, 3.125vw, 35px); }
    .sec02 .check_wrap .check {
      width: 30px;
      aspect-ratio: 1;
      border: 1px solid #b4b4b4;
      display: inline-block;
      text-align: center;
      cursor: pointer; }
      .sec02 .check_wrap .check span {
        display: none; }
      .sec02 .check_wrap .check.active span {
        display: block; }
    .sec02 .check_wrap .text {
      font-size: clamp(12px, 1.334vw, 16px);
      display: flex; }
      .sec02 .check_wrap .text a {
        position: relative;
        color: #0032be;
        border-bottom: 1px solid #0032be;
        transition: all 0.2s ease-in-out 0s; }
        @media (hover: hover) {
          .sec02 .check_wrap .text a:hover {
            opacity: .6; } }
  .sec02 button.btn {
    border: 0;
    border-radius: 0;
    padding: 0;
    cursor: pointer;
    position: relative;
    width: 35.72%;
    background-color: #453f35;
    display: block;
    padding-block: 20px;
    color: #fff;
    font-size: clamp(14px, 1.786vw, 20px);
    text-align: center;
    margin-inline: auto;
    line-height: 1;
    transition: all 0.3s ease-in-out 0s; }
    @media (hover: hover) {
      .sec02 button.btn:hover {
        opacity: .8; } }
    @media screen and (max-width: 480px) {
      .sec02 button.btn {
        width: 100%; } }
    .sec02 button.btn .obj {
      display: block;
      width: 30px;
      aspect-ratio: 3/0.8;
      position: absolute;
      top: 50%;
      right: 0;
      transform: translate(-50%, -50%); }
      .sec02 button.btn .obj::after, .sec02 button.btn .obj::before {
        content: '';
        position: absolute;
        background-color: #fff; }
      .sec02 button.btn .obj::after {
        width: 100%;
        height: 1px;
        bottom: 0;
        left: 0; }
      .sec02 button.btn .obj::before {
        width: 1px;
        height: 100%;
        right: 4px;
        top: 0;
        transform: rotate(-45deg); }
    .sec02 button.btn.disabled {
      opacity: 0.4;
      pointer-events: none; }
  .sec02 .btn a {
    position: relative;
    width: 35.72%;
    background-color: #453f35;
    display: block;
    padding-block: 20px;
    color: #fff;
    font-size: clamp(14px, 1.786vw, 20px);
    text-align: center;
    margin-inline: auto;
    line-height: 1;
    transition: all 0.3s ease-in-out 0s; }
    @media (hover: hover) {
      .sec02 .btn a:hover {
        opacity: .8; } }
    @media screen and (max-width: 480px) {
      .sec02 .btn a {
        width: 100%; } }
    .sec02 .btn a .obj {
      display: block;
      width: 30px;
      aspect-ratio: 3/0.8;
      position: absolute;
      top: 50%;
      right: 0;
      transform: translate(-50%, -50%); }
      .sec02 .btn a .obj::after, .sec02 .btn a .obj::before {
        content: '';
        position: absolute;
        background-color: #fff; }
      .sec02 .btn a .obj::after {
        width: 100%;
        height: 1px;
        bottom: 0;
        left: 0; }
      .sec02 .btn a .obj::before {
        width: 1px;
        height: 100%;
        right: 4px;
        top: 0;
        transform: rotate(-45deg); }

textarea {
  min-height: 115px;
  width: 100%;
  resize: none;
  border-radius: 5px;
  border: 1px;
  box-shadow: 0 0 1px 0 black;
  font-size: clamp(14px, 1.429vw, 16px);
  padding: 5px;
  box-sizing: border-box;
  line-height: 1.5; }

.select_item {
  width: 25.68% !important; }
  @media screen and (max-width: 768px) {
    .select_item {
      width: 57.15% !important; } }

.co_gap05 {
  column-gap: 5px !important; }

.ls05_sp {
  letter-spacing: -0.05em !important; }

.sec_thanks {
  padding-bottom: clamp(60px, 8.34%, 100px); }
  .sec_thanks .read {
    font-size: clamp(13px, 1.29vw, 16px);
    line-height: 1.88; }
  .sec_thanks .tel_wrap {
    font-size: clamp(18px, 1.93vw, 24px);
    margin-top: clamp(30px, 4.17%, 50px);
    margin-bottom: 0.8em; }
    @media screen and (max-width: 480px) {
      .sec_thanks .tel_wrap {
        font-size: 24px; } }
    .sec_thanks .tel_wrap a {
      display: flex;
      justify-content: center;
      align-items: center;
      line-height: 1;
      gap: 0 0.41em; }
      .sec_thanks .tel_wrap a .tel_icon {
        width: 0.91em;
        line-height: 0; }
  .sec_thanks .button_top {
    margin-top: clamp(50px, 6.67%, 80px); }
    .sec_thanks .button_top a {
      position: relative;
      width: 35.72%;
      background-color: #453f35;
      display: block;
      padding-block: 20px;
      color: #fff;
      font-size: clamp(14px, 1.786vw, 20px);
      text-align: center;
      margin-inline: auto;
      line-height: 1;
      transition: all 0.3s ease-in-out 0s; }
      @media (hover: hover) {
        .sec_thanks .button_top a:hover {
          opacity: .8; } }
      @media screen and (max-width: 480px) {
        .sec_thanks .button_top a {
          width: 100%; } }
      .sec_thanks .button_top a .obj {
        display: block;
        width: 30px;
        aspect-ratio: 3/0.8;
        position: absolute;
        top: 50%;
        right: 0;
        transform: translate(-50%, -50%); }
        .sec_thanks .button_top a .obj::after, .sec_thanks .button_top a .obj::before {
          content: '';
          position: absolute;
          background-color: #fff; }
        .sec_thanks .button_top a .obj::after {
          width: 100%;
          height: 1px;
          bottom: 0;
          left: 0; }
        .sec_thanks .button_top a .obj::before {
          width: 1px;
          height: 100%;
          right: 4px;
          top: 0;
          transform: rotate(-45deg); }

/**********************/
/* 見学予約するのチェック */
/**********************/
.input_btn {
  column-gap: 10px;
  display: flex;
  align-items: center; }

.input_btn .item {
  display: flex;
  align-items: center;
  font-size: clamp(14px, 1.429vw, 16px);
  column-gap: clamp(5px, 0.625vw, 7px);
  cursor: pointer;
  user-select: none;
  position: relative; }

/* ラジオボタンは非表示 */
.input_btn .item input[type="radio"] {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  opacity: 0;
  pointer-events: none; }

/* カスタムの丸いチェックボックス */
.input_btn .item span {
  position: relative;
  width: clamp(20px, 2.59vw, 29px);
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: #fff;
  border: 1px solid #888277;
  display: flex;
  justify-content: center;
  align-items: center; }

/* 内側の丸（チェック状態） */
.input_btn .item span::after {
  content: '';
  width: 85%;
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: #888277;
  display: none;
  transition: all 0.2s ease; }

/* チェックされた時 */
.input_btn .item input[type="radio"]:checked + span::after {
  display: block; }

/*お問い合わせ　第一～第三希望*/
.select_wrap {
  display: flex;
  grid-gap: 20px; }
  @media screen and (max-width: 900px) {
    .select_wrap {
      flex-direction: column; } }
  .select_wrap .item {
    width: 31.09% !important; }
    @media screen and (max-width: 900px) {
      .select_wrap .item {
        width: 100% !important; } }
    .select_wrap .item select {
      width: 100% !important;
      height: 45px !important; }
      @media screen and (max-width: 900px) {
        .select_wrap .item select {
          height: 30px !important; } }

/*# sourceMappingURL=contact.css.map */
