@charset "utf-8";
/* mail_custom */
/* PC SP 表示切り替え
---------------------------------------------------------*/
@media (min-width:768px) {
  .is-pc, .pcOnly {
    display: block;
  }
  .is-sp, .spOnly {
    display: none;
  }
}
@media (max-width:767px) {
  .is-pc, .pcOnly {
    display: none;
  }
  .is-sp, .spOnly {
    display: block;
  }
}
/* PC smp 表示切り替え
---------------------------------*/
.pcNone {
  display: none;
}
.spNone {
  display: block;
}
@media screen and (max-width:767px) {
  .pcNone {
    display: block;
  }
  .spNone {
    display: none;
  }
}
/* container_lead
---------------------------------------------------------*/
div.container_lead {
  width: 100%;
  max-width: 800px;
  margin: 20px auto;
  padding: 0;
}
@media (max-width:767px) {
  div.container_lead {
    width: 96%;
    margin: 20px auto 0;
    padding: 0;
  }
} /**/
div.container_lead h2 {
  font-size: 1.5rem;
  line-height: 1.9;
  border-bottom: solid 1px #ccc;
  position: relative;
  margin-bottom: .7em;
  color: #000;
  text-indent: .4em;
  margin-top: 10px;
  font-weight: 700;
  letter-spacing: .1em;
}
@media (max-width:767px) {
  div.container_lead h2 {
    font-size: 1.4rem;
    line-height: 1.9;
    border-bottom: solid 1px #ccc;
    position: relative;
    margin-bottom: .7em;
    color: #000;
    letter-spacing: 1%;
    text-indent: .5em;
    margin-top: 10px;
  }
} /***/
div.container_lead p {
  padding: 0;
  margin: 0 .4em;
  font-size: 14px;
  line-height: 1.6;
  text-align: justify;
}
div.container_lead h2:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #ff0000;
  bottom: -1px;
  width: 30%;
}
/* container_wrap
---------------------------------------------------------*/
.container_wrap {
  width: 100%;
  max-width: 800px;
  margin: 20px auto;
  /*border: 1px solid #ccc;*/
  /*border-radius: 3px;*/
}
@media (max-width:767px) {
  .container_wrap {
    width: 100%;
    max-width: 100%;
    margin: 20px auto;
    border: none;
    /*border-radius: 3px;*/
  }
} /***/
/*---------------------------------------------*/
/* mail_form
-----------------------------------------------*/
.mail_form {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
  padding: 0; /*************/
}
.mail_form dl {
  border-bottom: 1px solid #ECECEC;
  display: flex;
  width: 100%;
}
.mail_form dt {
  width: 28%;
  padding: 22px 20px 13px 30px;
  line-height: 22px;
  background-color: #FAFAFA;
  border-right: 1px solid #ECECEC;
}
.mail_form dd {
  width: 72%;
  padding-left: 8px;
  vertical-align: middle;
  padding: 13px 1.5em 13px 1.2em;
}
@media (max-width:767px) {
  .mail_form {
    width: 100%;
    margin: .3em auto;
  }
  .mail_form dl {
    padding: 6px 1em 7px;
    width: 100%;
    margin: 0;
    border: none;
    display: flex;
    flex-direction: column;
  }
  .mail_form dt {
    background: none;
    border-right: none;
    width: 100%;
    vertical-align: middle;
    box-sizing: border-box;
    padding: 0 0 .4em;
  }
  .mail_form dd {
    width: 100%;
    padding: 0;
    vertical-align: middle;
    box-sizing: border-box;
    margin-bottom: 1.2em;
  }
} /**/
/*.container dl dt {
  display:flex;
}*/
/* input default
---------------------------------------------------------*/
button, option, textarea, input[type="button"], input[type="submit"], input[type="number"], input[type="email"], input[type="tel"], input[type="text"], input[type="option"], input[type="number"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  border: 1px solid #ccc;
  outline: 0;
  margin: 0;
  background-color: #fff;
}

select {
  border-radius: 0;
  border: 1px solid #ccc;
  outline: 0;
  margin: 0;
  background-color: #fff;
}

input[type="radio"], input[type="checkbox"] {
  margin: 3px 8px 5px 3px;
  transform: scale(1.5);
}
input[type="checkbox"] {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  border: 1px solid #0075FF;
  outline: 0;
  margin: 3px 5px 5px 3px;
  background-color: #fff;
  position: relative;
  top: 8%;
}
label[for="checkb-01"] span, label[for="checkb-02"] span, label[for="checkb-03"] span, label[for="checkb-04"] span, label[for="checkb-05"] span {
  font-size: 14px;
  margin-right: 2em;
  margin-left: 0.1em;
  vertical-align: 8px;
  position: relative;
  top: 1%;
}
/*★希望サービス★*/
dd.check_wrap.kibou_ser {
  flex-wrap: wrap;
}
.kibou_ser label[for="checkb-01"] span, .kibou_ser label[for="checkb-02"] span, .kibou_ser label[for="checkb-03"] span, .kibou_ser label[for="checkb-04"] span, .kibou_ser label[for="checkb-05"] span {
  vertical-align: 1px;
}
@media (max-width: 767px) {
  label[for="checkb-01"] span, label[for="checkb-02"] span, label[for="checkb-03"] span, label[for="checkb-04"] span, label[for="checkb-05"] span {
    font-size: 13px;
    padding-right: 10px;
    vertical-align: 12px;
    position: relative;
    top: 1%;
  }
}
/* 送信button */
input[type="button"] {
  margin: 0 auto !important;
  border-radius: 4px;
}
input[type="submit"] {
  margin: 0 auto !important;
  border-radius: 4px;
  background-color: #FF2226;
}
/* input color */
.mail_form dd input[type="text"], .mail_form dd input[type="tel"], .mail_form dd input[type="email"], .mail_form dd input[type="number"] {
  width: 100%;
  max-width: 100%;
  font-family: inherit;
  padding: 8px 6px;
  font-size: 14px;
  background: #FFF3DF;
  border-radius: 2px;
  border: 1px solid #ccc;
  line-height: 1.6;
  box-sizing: border-box;
}
.mail_form dd textarea {
  width: 100%;
  max-width: 100%;
  font-family: inherit;
  padding: 4px 6px;
  font-size: 14px;
  background: #FFF3DF;
  border-radius: 2px;
  border: 1px solid #ccc;
  line-height: 1.6;
  height: 90px;
}
@media (max-width:767px) {
  .mail_form dd textarea {
    height: 80px;
  }
}
/* select */
.mail_form dd select {
  width: 100%;
  font-family: inherit;
  padding: 8px 2em 8px 1em;
  font-size: 14px;
  background-color: #FFF3DF;
  border-radius: 2px;
  border: 1px solid #ccc;
  line-height: 1.6
}
#select_year, #select_month, #select_date {
  text-align: center;
}
@media (max-width:767px) {
  #select_year, #select_month, #select_date {
    text-align: center;
  }
  .mail_form dd select {
    width: 100%;
  }
}
/* autofill */
input:-webkit-autofill {
  box-shadow: 0 0 0px 999px #FFF3DF inset;
}
#f_zip::-webkit-inner-spin-button, #f_zip::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
  -moz-appearance: textfield;
}
/*css radio01
---------------------------------------------------------*/
.radio_bt01 {
  /*display: none;*/
}
.radio_bt01 + label {
  padding-left: 24px;
  position: relative;
  margin-right: 20px;
  user-select: none;
}
/* maru waku */
.radio_bt01 + label::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: auto;
  margin: auto;
  width: 20px;
  height: 20px;
  border: 2px solid #ccc;
  border-radius: 50%;
  box-sizing: border-box;
}
.radio_bt01:checked + label {}
/* maru */
.radio_bt01:checked + label::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 5px;
  bottom: 0;
  right: auto;
  margin: auto;
  width: 10px;
  height: 10px;
  background: #0075FF;
  border-radius: 50%;
}
/* label_span 建物タイプ
---------------------------------------------------------*/
/*label[for="type_01"] span, label[for="type_02"] span {
  font-size: 14px;
  margin: 0 0 0 .5em;
  padding: 0;
  vertical-align: -10%;
}
@media all and (max-width:767px) {
  label[for="type_01"] span, label[for="type_02"] span {
    font-size: 13px;
    margin: 0 0 0 .3em;
    padding: 0;
    vertical-align: -10%;
  }
}*/

/*
 * .d_wrap-1 dd label
---------------------------------------------------------*/
#SignupForm dl.d_wrap-1 dd label {
  position: relative;
  display: none;
  margin: 1px 0;
  color: #000;
  font-size: 11px;
  background: #FFEF30;
  padding: 3px .8em;
  width: auto;
  text-align: left;
  line-height: 1;
}
@media (max-width:767px) {
  #SignupForm dl.d_wrap-1 dd label {
    position: relative;
    display: none;
    margin: 1px 0;
    color: #000;
    font-size: 11px;
    background: #FFED0D;
    padding: 4px .7em;
    width: auto;
    text-align: left;
    line-height: 1;
  }
}
#SignupForm dl dd input[type="tel"] {
  background: #FFF3DF;
  border: #333 solid 1px;
  width: 100%;
}
/* error
----------------------------------------------*/
p.message-error2 .error {
  display: block;
  margin: 100% 0 0 0;
  padding: .2em 0;
  color: red;
  font-size: 13px;
  position: absolute;
  background: #FFED0D;
  border-radius: 4px;
  padding: 4px 1em 3px;
  width: auto;
  text-align: left;
  line-height: 1.8;
}
p.message-error2 label {
  position: relative;
}
#SignupForm dl dd input[type="tel"] {
  background: #FFF3DF;
  border: #ccc solid 1px;
  width: 100%;
}
/*
 */
/* 建物タイプ
-----------------------------------------------*/
#SignupForm dl#d_wrap-2 dd label {
  position: relative;
  margin: .5em 0 0 -1.5em;
  color: #000;
  font-size: 14px;
  padding: 4px 1em 3px 1.3em;
  width: auto;
  text-align: left;
  line-height: 1.6;
  display: inline-block;
}
@media (max-width:767px) {
  #SignupForm dl#d_wrap-2 dd label {
    position: relative;
    margin: 0 1.5em 0 0;
    color: #000;
    font-size: 14px;
    padding: 5px .7em 4px 0;
    width: auto;
    text-align: left;
    line-height: 1.9;
  }
}
/* 建物タイプ★エラー
-----------------------------------------------*/
#SignupForm dl#d_wrap-2 dd label.error {
  position: absolute;
  display: none;
  /*margin: .3em 0 0 13em;*/ margin: .6em 0 0 16.3em;
  color: #000;
  font-size: 11px;
  background: #FFED0D;
  border-radius: 3px;
  /*padding:4px 1em 3px 1em;*/ padding: 3px .8em;
  width: auto;
  text-align: left;
  line-height: 1.6;
}
@media (max-width:767px) {
  #SignupForm dl#d_wrap-2 dd label.error {
    position: absolute;
    display: none;
    margin: 24px 0 0 -24px;
    color: #000;
    font-size: 11px;
    background: #FFED0D;
    border-radius: 3px;
    padding: 4px .7em;
    width: 50%;
    text-align: left;
    line-height: 1.6;
  }
  #SignupForm dl#d_wrap-2 {
    /*padding-bottom:1.5em;*/
  }
}
/*
 */
/* Select #d_wrap-★3★繋がり易い時間 エラー
------------------------------------------------------------*/
#SignupForm dl#d_wrap-3 dd label {
  position: relative;
  display: none;
  margin: 1.5em 0 0 2px;
  color: #000;
  font-size: 11px;
  background: #FFED0D;
  border-radius: 3px;
  padding: 4px 1em 3px 1em;
  width: auto;
  text-align: left;
  line-height: 1.6;
}
@media (max-width:767px) {
  #SignupForm dl#d_wrap-3 dd label {
    position: relative;
    display: none;
    margin: 0;
    color: #000;
    font-size: 11px;
    background: #FFED0D;
    border-radius: 3px;
    padding: 5px .7em 4px .5em;
    width: auto;
    text-align: left;
    line-height: 1.6;
  }
  #SignupForm dl#d_wrap-3 {
    margin-bottom: .5em;
  }
}
/*
 */
/* Select #d_wrap-★4★生年月日★エラー
------------------------------------------------------------*/
form#SignupForm dl#d_wrap-9 dd {
  position: relative;
}
form#SignupForm dl#d_wrap-9 dd label#select_year-error.error {
  position: absolute;
  display: none;
  margin: 1.5em 0 0 2px;
  color: #000;
  font-size: 11px;
  background: #FFED0D;
  border-radius: 3px;
  padding: 4px 1em 3px 1em;
  width: auto;
  text-align: left;
  line-height: 1.6;
}
@media (max-width:767px) {
  form#SignupForm dl#d_wrap-9 dd label#select_year-error.error {
    position: absolute;
    display: none;
    margin: 0;
    color: #000;
    font-size: 11px;
    background: #FFED0D;
    border-radius: 3px;
    padding: 5px .7em 4px .5em;
    width: auto;
    text-align: left;
    line-height: 1.6;
  }
}

/* Select #d_wrap-★3★繋がり易い時間 エラー
------------------------------------------------------------*/
#SignupForm dl#d_wrap-5 dd label {
  position: relative;
  display: none;
  margin: 1.5em 0 0 2px;
  color: #000;
  font-size: 11px;
  background: #FFED0D;
  border-radius: 3px;
  padding: 4px 1em 3px 1em;
  width: auto;
  text-align: left;
  line-height: 1.6;
}
@media (max-width:767px) {
  #SignupForm dl#d_wrap-5 dd label {
    position: relative;
    display: none;
    margin: 0;
    color: #000;
    font-size: 11px;
    background: #FFED0D;
    border-radius: 3px;
    padding: 5px .7em 4px .5em;
    width: auto;
    text-align: left;
    line-height: 1.6;
  }
}
/* 同意する
--------------------------------------------*/
form#SignupForm .doui_wrap {
  marign: 1em;
  padding: 1em 0;
  text-align: left;
  postion: relative;
}
@media (max-width:767px) {
  form#SignupForm .doui_wrap {
    marign: 0 0 1.5em;
    padding: 0 .2em 1em;
    text-align: left;
    postion: relative;
  }
}
form#SignupForm .doui_wrap p {
  text-align: left;
  line-height: 2;
  padding: .5em 0;
}
@media (max-width:767px) {
  form#SignupForm .doui_wrap p {
    text-align: left;
    line-height: 1.6;
    padding: .5em 0 .8em;
  }
}
form#SignupForm .doui_wrap label span a {
  text-decoration: none !important;
  color: #0088EB;
}
form#SignupForm .doui_wrap label span a:hover {
  color: #0037AB;
}
form#SignupForm .doui_wrap input[type="checkbox"] {
  margin: 3px 8px 5px 3px;
  transform: scale(1.5);
  vertical-align: -10%;
}

/* ★★同意 エラー
------------------------------------------------------------*/
form#SignupForm div.doui_wrap label.error {
  position: relative;
  display: none;
  margin: 0;
  color: #000;
  font-size: 11px;
  background: #FFED0D;
  border-radius: 3px;
  padding: 3px .8em;
  width: auto;
  text-align: left;
  line-height: 1.6;
}
@media (max-width:767px) {
  form#SignupForm div.doui_wrap label.error {
    position: relative;
    display: none;
    margin: 0 0 0 0;
    color: #000;
    font-size: 11px;
    background: #FFED0D;
    border-radius: 3px;
    padding: 4px .7em;
    width: 50%;
    text-align: left;
    line-height: 1.6;
  }
}

/* ★★同意 エラー********2******
------------------------------------------------------------*/
form#SignupForm div.submit_wrap div.footer_notes_wrap label.error {
  position: relative;
  display: none;
  margin: 0;
  color: #000;
  font-size: 11px;
  background: #FFED0D;
  border-radius: 3px;
  padding: 3px .8em;
  width: auto;
  text-align: left;
  line-height: 1.6;
}
@media (max-width:767px) {
  form#SignupForm div.submit_wrap div.footer_notes_wrap label.error {
    position: relative;
    display: none;
    margin: 0 0 0 0;
    color: #000;
    font-size: 11px;
    background: #FFED0D;
    border-radius: 3px;
    padding: 4px .7em;
    width: 50%;
    text-align: left;
    line-height: 1.6;
  }
}

/* ID 
---------------------------------------*/
#f_birthday {
  width: 100%;
}
#f_keitai {
  width: 100%;
}
@media (max-width:767px) {
  #f_birthday {
    width: 100%;
  }
  #f_keitai {
    width: 100%;
  }
}
input[type="text"] .f_yubin {
  width: 100%;
}
@media (max-width:767px) {
  input[type="text"] .f_yubin {
    width: 100%;
  }
}
/* 隣接セレクタ input注釈 */
input[type="text"] + p, #f_mail + p, #f_zip + p, #f_zip label + p, #f_birthday + p {
  color: red;
  margin: .3em 0 0 .2em;
}
#f_zip {
  width: 100%;
}
@media (max-width:767px) {
  #f_zip {
    width: 100%;
  }
}
#f_jikantai {
  width: 100%;
  margin: .3em 0 .4em 0;
}
@media (max-width:767px) {
  #f_jikantai {
    width: 100%;
  }
}
#f_birthday {
  width: 100%;
}
@media (max-width:767px) {
  #f_birthday {
    width: 100%;
  }
}

/* callback
-----------------------------------------*/
/*
.hidden {
display: none;
}
p.attention-text{
text-align:left;
font-size:14px;
line-height:1.5;
margin-top:.5em;
}
p.attention-text a {
color:blue;
}

.footer_notes_wrap {
width: 100%;
margin: 0 auto 0 12px;
font-size: 14px;
}
.submit_wrap .footer_notes_wrap p {
text-align: left;
margin-bottom:2px;
}
.footer_notes_wrap label {
	line-height:1.8;
}
.footer_notes_wrap p.doui_notes-red {
	color:red;
	font-size:14px;
}
*/
/*G01　同意*/
@media (max-width:767px) {
  .footer_notes_wrap-2 {
    padding: 1em 1em 1em 1.4em;
  }
}
/* checkboc センター
--------------------*/
.check_wrap {
  display: flex;
  align-items: center;
  padding-left: .5em;
}
/*
--------------*/
select {
  height: 40px;
}
/* step2 checkbox
------------------------------------*/
#f_bikouran {
  width: 100%;
  height: 70px;
  background: #FFF3DF;
  border: 1px solid #ccc;
}
@media (max-width:767px) {
  #f_bikouran {
    width: 100%;
    height: 50px;
    background: #FFF3DF;
    border: 1px solid #ccc;
  }
  .d_wrap-2 dd.check_wrap {
    display: flex;
  }
  #checkb-01 + label span {
    display: inline-block;
    padding: 0;
    margin: .1em 0 0 .1em;
    width: 9em;
  }
  #checkb-02 + label span {
    display: inline-block;
    padding: 0;
    margin: .1em 0 0 .1em;
    width: 9em;
  }
  #checkb-03 + label span {
    display: inline-block;
    padding: 0;
    margin: .1em 0 0 .1em;
    width: 3em;
  }
}