/*--------------------
freeconsultation.css
--------------------*/


.l-block01{
  padding:0 3.0rem 25.5rem;
}
.l-block01-inner{
  max-width:1600px;
  width:100%;
  margin:0 auto;
}
.l-block01-table{
  width:100%;
  display:table;
}
.l-block01-table > div{
  display:table-cell;
  vertical-align: top;
}
.l-block01-table-left{
  width:46.0rem;
  padding-right:5.0rem;
}
.l-block01-table-left > h1{
  text-align: left;
  color: #3aa4bf;

  font-size:40px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0em;
}
.l-block01-table-left > span{
  display:block;
  padding-top:2.0rem;
  text-align: left;
  color: #3aa4bf;

  font-size:20px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.l-block01-table-right{
  width:120.0rem;
}
.l-block01-table-right-wrapper{
  max-width:1040px;
  width:100%;
}
.l-block01-table-right-wrapper > p{
  padding-top:0.5rem;
  padding-bottom:5.5rem;
  text-align: left;
  color: #1a1a1a;

  font-size:15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block01-table-right-wrapper > p.type02{
  padding-top:2.5rem;
}
.l-block01-table-right-wrapper table{
  width:100%;
}
.l-block01-table-right-wrapper table tr{
  border-top:2px solid #e9e3d1;
}
.l-block01-table-right-wrapper table tr:last-of-type{
  border-bottom:2px solid #e9e3d1;
}
.l-block01-table-right-wrapper table tr th{
  /*font-family: "Noto Serif JP", serif;*/
  width:33.5rem;
  vertical-align: middle;
  padding:4.5rem 5.0rem 4.5rem 0;
  text-align: left;
  color: #808080;

  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block01-table-right-wrapper table tr th span{
  font-family: 'Noto Sans JP' ,sans-serif;
  display:inline-block;
  margin-right:4.0rem;
  background:#FFFFFF;
  padding:0.2rem 2.5rem;
  text-align: center;
  color: #3aa4bf;

  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
  
  border: 1px solid #3aa4bf;
  border-radius: 2.0rem;
}
.l-block01-table-right-wrapper table tr th span:not(:has(b)){  
  color: #808080;
  border: 1px solid #808080;
}
.l-block01-table-right-wrapper table tr th span b{
  color: #3aa4bf;
}
.l-block01-table-right-wrapper table tr td{
  width:70.5rem;
  padding:4.5rem 0;
  vertical-align: middle;
  text-align: left;
  color: #808080;

  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block01-table-right-wrapper table tr td label{
  display: inline-block;
  padding:0.5rem 0;
}
.l-block01-table-right-wrapper table tr td label:hover{
  cursor: pointer;
}
.l-block01-table-right-wrapper table tr td input[type="radio"]{
  width:20px;
  height:20px;
  margin:0 1.0rem 0 0;
  position: relative;
  top:0.5rem;
}
.l-block01-table-right-wrapper table tr td input[type="text"],
.l-block01-table-right-wrapper table tr td input[type="mail"],
.l-block01-table-right-wrapper table tr td input[type="tel"]{
  padding: 0;
  border: none;
  border-radius: 0;
  background: none;
  
  width:100%;
  background:#fafaf0;
  padding:1.0rem 2.0rem;
  text-align: left;
  color: #1a1a1a;

  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block01-table-right-wrapper table tr td .form-date{
  width:25% !important;
  margin-right:2.0rem;
}
.l-block01-table-right-wrapper table tr td select{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  resize: none;
  padding: 0;
  border: 0;
  background: transparent;
  padding: 0;
  border: none;
  border-radius: 0;
  background: none;
  
  width:100%;
  background: url("../images/freeconsultation/block01-icon01_pc.png") right 1.0rem center no-repeat #fafaf0;
  background-size: 1.0rem auto;
  min-height:0.7rem;
  padding:1.0rem 2.0rem;
  text-align: left;
  color: #1a1a1a;

  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block01-table-right-wrapper table tr td .form-time{
  width:35% !important;
}
.l-block01-table-right-wrapper table tr td textarea{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  resize: none;
  padding: 0;
  border: 0;
  background: transparent;
  
  width:100%;
  background:#fafaf0;
  padding:1.0rem 2.0rem;
  text-align: left;
  color: #1a1a1a;

  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block01-table-right-wrapper table tr .error{
  display:block;
  text-align: left;
  color: #cc0000;

  font-size:14px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block01-btn{
  padding-top:5.5rem;
  text-align: left;
}
.l-block01-btn a,
.l-block01-btn input[type="submit"],
.l-block01-btn button{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  background: transparent;
  
  display:inline-block;
  background:#5c5c5c;
  border-radius:3.5rem;
  width:45.0rem;
  padding:1.2rem 2.0rem;
  text-align: center;
  color: #FFFFFF;

  font-size:18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
  
  transition: 0.3s;
}
.l-block01-btn a:hover,
.l-block01-btn input[type="submit"]:hover,
.l-block01-btn button:hover{
  cursor: pointer;
  opacity:0.7;
}



@media screen and (max-width: 767.5px) {
  .l-block01{
    padding:8.0rem 3.0rem 16.0rem;
  }
  .l-block01-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
  }
  .l-block01-table{
    width:100%;
    display:block;
  }
  .l-block01-table > div{
    width:100%;
    display:block;
    vertical-align: top;
  }
  .l-block01-table-left{
    width:100%;
    display:block;
    padding-right:0;
  }
  .l-block01-table-left > h1{
    text-align: left;
    color: #3aa4bf;

    font-size: 5.2rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0em;
  }
  .l-block01-table-left > span{
    display:block;
    padding-top:2.0rem;
    text-align: left;
    color: #3aa4bf;

    font-size:3.2rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.05em;
  }
  .l-block01-table-right{
    width:100%;
    display:block;
    padding-top:5.5rem;
  }
  .l-block01-table-right-wrapper{
    max-width:100%;
    width:100%;
  }
  .l-block01-table-right-wrapper > p{
    padding-top:4.0rem;
    padding-bottom:5.5rem;
    text-align: left;
    color: #1a1a1a;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-table-right-wrapper > p.type02{
    padding-top:4.0rem;
  }
  .l-block01-table-right-wrapper table{
    width:100%;
    display:block;
  }
  .l-block01-table-right-wrapper table tbody{
    width:100%;
    display:block;
  }
  .l-block01-table-right-wrapper table tr{
    width:100%;
    display:block;
    border-top:2px solid #e9e3d1;
  }
  .l-block01-table-right-wrapper table tr:last-of-type{
    border-bottom:2px solid #e9e3d1;
  }
  .l-block01-table-right-wrapper table tr th{
    /*font-family: "Noto Serif JP", serif;*/
    width:100%;
    display:block;
    vertical-align: middle;
    padding:4.5rem 5.0rem 0 0;
    text-align: left;
    color: #808080;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-table-right-wrapper table tr th span{
    font-family: 'Noto Sans JP' ,sans-serif;
    display:inline-block;
    margin-right:2.0rem;
    background:#FFFFFF;
    padding:0.2rem 2.5rem;
    text-align: center;
    color: #3aa4bf;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  
    border: 1px solid #3aa4bf;
    border-radius: 3.0rem;
  }
  .l-block01-table-right-wrapper table tr th span:not(:has(b)){  
    color: #808080;
    border: 1px solid #808080;
  }
  .l-block01-table-right-wrapper table tr th span b{
    color: #3aa4bf;
  }
  .l-block01-table-right-wrapper table tr td{
    width:100%;
    display:block;
    padding:3.0rem 0 4.5rem;
    vertical-align: middle;
    text-align: left;
    color: #808080;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-table-right-wrapper table tr td label{
    display: inline-block;
    padding:0.5rem 0;
  }
  .l-block01-table-right-wrapper table tr td label:hover{
    cursor: pointer;
  }
  .l-block01-table-right-wrapper table tr td input[type="radio"]{
    width:3.0rem;
    height:3.0rem;
    margin:0 1.0rem 0 0;
    position: relative;
    top:0.5rem;
  }
  .l-block01-table-right-wrapper table tr td input[type="text"],
  .l-block01-table-right-wrapper table tr td input[type="mail"],
  .l-block01-table-right-wrapper table tr td input[type="tel"]{
    padding: 0;
    border: none;
    border-radius: 0;
    background: none;

    width:100%;
    background:#fafaf0;
    padding:1.0rem 2.0rem;
    text-align: left;
    color: #1a1a1a;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-table-right-wrapper table tr td .form-date{
    width:25% !important;
    margin-right:2.0rem;
  }
  .l-block01-table-right-wrapper table tr td select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    resize: none;
    padding: 0;
    border: 0;
    background: transparent;
    padding: 0;
    border: none;
    border-radius: 0;
    background: none;

    width:100%;
    background: url("../images/freeconsultation/block01-icon01_pc.png") right 1.5rem center no-repeat #fafaf0;
    background-size: 1.5rem auto;
    min-height:1.2rem;
    padding:1.0rem 2.0rem;
    text-align: left;
    color: #1a1a1a;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-table-right-wrapper table tr td .form-time{
    width:45% !important;
  }
  .l-block01-table-right-wrapper table tr td textarea{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    resize: none;
    padding: 0;
    border: 0;
    background: transparent;

    width:100%;
    background:#fafaf0;
    padding:1.0rem 2.0rem;
    text-align: left;
    color: #1a1a1a;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-table-right-wrapper table tr .error{
    display:block;
    text-align: left;
    color: #cc0000;

    font-size:2.2rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-btn{
    padding-top:5.5rem;
    text-align: center;
  }
  .l-block01-btn a,
  .l-block01-btn input[type="submit"],
  .l-block01-btn button{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0;
    border: none;
    background: transparent;

    display:inline-block;
    background:#5c5c5c;
    border-radius:3.5rem;
    width:45.0rem;
    padding:1.2rem 2.0rem;
    text-align: center;
    color: #FFFFFF;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;

    transition: 0.3s;
  }
  .l-block01-btn a:hover,
  .l-block01-btn input[type="submit"]:hover,
  .l-block01-btn button:hover{
    cursor: pointer;
    opacity:0.7;
  }
}



@media screen and (max-width: 767.5px) {
  
}

@media screen and (max-width: 767.5px) {
  
}




