@charset "utf-8";
/* CSS Document */

/* b-main ----------*/
.b-main .b-img{
  background-image:url(../contact/image/main.jpg);
}

.b-lead .container{
  max-width:1020px;
}
.b-lead p.tac{
  text-align: center;
}
.b-lead p.tac+ p.tac{
  margin-top:.8em;
}
@media screen and (max-width: 767px){
  .b-lead p.tac{
    text-align:left;
  }
}

/* label-required */
.label-required{
  background:#f00;
  color:#fff;
  line-height:1;
  border-radius: 3px;
  padding:.3em .8em .15em;
}
th .label-required{
  padding:.45em .8em .15em;
}
@media all and (-ms-high-contrast: none) {
  .label-required{
    padding:.35em .8em 0;
  }
  th .label-required{
    padding:.45em .8em 0;
  }
}
@media screen and (min-width: 768px){
  .label-required{
    font-size:1.2rem;
  }
}
@media screen and (max-width: 600px){
  .label-required{
    font-size:3vw;
  }
}

/* b-contact */
.b-sec .b-contact{
  border:2px solid #64c8c9;
  width:90%;
  max-width:700px;
  margin:30px auto;
  padding-bottom:30px;
}
.b-sec .b-contact > dt{
  text-align: center;
  background:#64c8c9;
  color:#fff;
  line-height:1;
  padding:1em 1em 1.1em;
  font-weight: 600;
  font-size:1.8rem;
  margin-bottom:35px;
}
.b-sec .b-contact .m-no{
  width:280px;
  margin:0 auto;
}
.b-sec .b-contact .m-time dl{
  text-align: center;
  margin-top:10px;
}
.b-sec .b-contact .m-time dt,
.b-sec .b-contact .m-time dd{
  display: inline;
}
.b-sec .b-contact .m-time dt{
  color:#64c8c9;
  border:1px solid #64c8c9;
  padding:.06em .9em;
  font-size:1.3rem;
  border-radius: 30px;
  margin-right:10px;
}
.b-sec .b-contact .m-time dd{
  line-height:1.5em;
}
@media screen and (max-width: 767px){
  .b-sec .b-contact .m-time dt,
  .b-sec .b-contact .m-time dd{
    display: block;
    margin:auto;
  }
  .b-sec .b-contact .m-time dt{
    width:345px;
    margin:1.5em auto .5em;
  }
}

@media screen and (max-width: 600px){
  .b-sec .b-contact{
    padding-bottom:4vw;
  }
  .b-sec .b-contact > dt{
    font-size:3.8vw;
    margin-bottom:4vw;
  }
  .b-sec .b-contact .m-no{
    width:70%;
  }
  .b-sec .b-contact .m-time dt{
    width:55%;
  }
  .b-sec .b-contact .m-time dt,
  .b-sec .b-contact .m-time dd{
    font-size:3vw;
  }
  .b-sec .b-contact .m-time dd span{
    display: none;
  }
}

.b-tbl table{
  width:100%;
  margin:10px 0 30px;
}
.b-tbl table th div{
  display: flex;
  justify-content: space-between;
  width:100%;
  height:100%;
  position: relative;
}
@media screen and (min-width: 768px){
  .b-tbl table th div{
    font-size:1.6rem;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px){
  .b-tbl table th,
  .b-tbl table td{
    display: block;
    width:100%;
  }
  .b-tbl table th div{
    font-weight: bold;
  }
}
@media screen and (max-width: 600px){
  .b-tbl table{
    margin:8vw 0 8vw;
  }
  .b-tbl table th{
    padding:.5em 1em;
  }
  .b-tbl table th div{
    font-size:3.8vw;
  }
  .b-tbl table td{
    padding:4vw 2vw 7vw;
  }
}

/* e-lead */
.b-sec .e-lead{
  text-align: center;
  font-weight: 600;
  font-size:1.6rem;
  line-height:1.5;
  color:#64c8c9;
  margin-bottom:30px;
}
@media screen and (max-width: 767px){
  .b-sec .e-lead{
    font-weight: bold;
  }
}
@media screen and (max-width: 600px){
  .b-sec .e-lead{
    font-size:3.6vw;
    margin-bottom:5vw;
  }
}

.contact-info2{
  width:90%;
  margin:auto;
  max-width:700px;
  border:1px solid #ccc;
  padding:20px 30px;
}
.contact-info2 dt{
  line-height:1;
  text-align: center;
  font-weight: 600;
  padding-bottom:15px;
  margin-bottom:20px;
  background:url(../image/common/dot-line.png) left bottom repeat-x;
}
.contact-info2 dd{
  line-height:1.7;
  text-align:center;
}
@media screen and (max-width: 767px){
  .contact-info2 dt{
    font-weight:bold;
  }
  .contact-info2 dd{
    text-align:left;
  }
}
@media screen and (max-width: 600px){
  .contact-info2{
    width:100%;
    padding:5vw 4vw 4vw;
  }
  .contact-info2 dt{
    padding-bottom:4vw;
    margin-bottom:4vw;
  }
}

/* b-cmmt */
.b-cmmt{
  margin:20px 0;
}
.b-cmmt p.tac *{
  color: #f00;
  font-size:1.6rem;
  font-weight: 600;
}
.b-cmmt p.tac{
  text-align: center;
}
@media screen and (max-width: 767px){
  .b-cmmt p.tac *{
    font-weight:bold;
  }
}
@media screen and (max-width: 600px){
  .b-cmmt p.tac *{
    font-size:3.6vw;
  }
}

/* form parts */

input[type="text"],
textarea{
  width:100%;
  padding:.8em 1em;
  border:1px solid #ccc;
  background:#fff;
  font-size:1.5rem;
}
@media screen and (min-width: 768px){
  input[type="text"],
  textarea{
    font-size:1.6rem;
  }
}
@media screen and (max-width: 600px){
  input[type="text"],
  textarea{
    font-size:3.8vw;
  }
}

/* form ft */
.b-formFt{
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
.b-formFt p{
  margin:0 10px;
  width:250px;
}
.b-formFt button{
  display: inline-block;
  text-align: center;
  color:#fff;
  line-height:1;
  width:100%;
  font-weight: 600;
  padding:1.4em 0;
  border-radius: 100px;
  z-index: 1;
  font-size:1.5rem;
  position: relative;
  overflow: hidden;
}
.b-formFt button::before,
.b-formFt button::after{
  content:"";
  display: block;
  width:105%;
  height:100%;
  position: absolute;
  left:0;
  top:0;
  z-index: -1;
}
.b-formFt button::before{
  background:#64c8c9;
}
.b-formFt button.invalid::before{
  background:#999;
}
@media screen and (min-width: 768px){
.b-formFt button::after{
  background:#ed9052;
  transform:scale(0, 1); transform-origin:left top; transition:transform .4s;
}
.b-formFt button:hover{
  opacity: 1;
}
.b-formFt button:hover::after{
  transform:scale(1, 1); transform-origin:left top; transition:transform .4s;
}
}
@media all and (-ms-high-contrast: none) {
  .b-formFt button{
    padding: 1.5em 0 1.3em;
  }
}
@media screen and (min-width: 768px){
  .b-formFt button{
    font-weight:bold;
  }
}
@media screen and (max-width: 600px){
  .b-formFt p{
    width:45%;
  }
  .b-formFt button{
    font-size:3.5vw;
  }
}



