@charset "utf-8";

/******************************************
- Title Style
- Section Style
- List Style
- Button Style
- Table Style
- Form Style
- Text Style
- Stopgap Class
- Clearfix
*******************************************/

/* ----------------------------------------

- Title Style

---------------------------------------- */

/* title
------------------------------- */

.cont_tit {
    background: none repeat scroll 0 0 #e8e8e8;
    border: 0 none !important;
    font-size: 170%;
    font-weight: bold;
    line-height: 1.1;
    margin-bottom: 15px;
    padding: 2px;
    font-size: 137.5%;
}
.cont_tit span {
    background: url(/housedo_img/common/tit_bg_blue.gif) no-repeat 0 center #fff;
    border: solid 1px #afbbd9;
    display: block;
    padding: 12px 75px 12px 20px;
}

.title01 {
    margin: 2.5em 0 1em;
    padding-left: 0.6em;
    line-height: 1.2;
    font-size: 125%;
    font-weight: 900;
    border-left: 6px solid #0a3190;
}




/* ----------------------------------------

- Section Style

---------------------------------------- */

/* section
------------------------------- */

.section01 {
}

/* ----------------------------------------

- List Style

---------------------------------------- */

/* list
------------------------------- */

ul.list01 {
    padding-left: 20px;
}

ul.list01 li {
    list-style-type: disc;
}

/* defaultList
------------------------------- */

.defaultList {
    padding-left: 30px;
}

ul.defaultList li {
    list-style-type: disc;
}

ol.defaultList li {
    list-style-type: decimal;
}

/* ----------------------------------------

- Button Style

---------------------------------------- */

/* btn
------------------------------- */

.btnUnit01 {
    text-align: center;
}

.btnUnit01 li {
    display: inline;
    padding: 0 10px;
}

.btnUnit01 li input {
    vertical-align: bottom;
}

/* ----------------------------------------

- Table Style

---------------------------------------- */

.form-block {
    width: 100%;
    background-color: #fff;
    border: 1em solid  #edeff0;
}
.form-block2 {
    width: 100%;
    background-color: #edeff0;
    border: 1em solid  #edeff0;
}
.form-block2 .shopName{
    font-weight: bold;
}

/* tbl
------------------------------- */

table.tbl01 {
    width: 100%;
}
table.tbl01 th,
table.tbl01 td {
    padding: 0.8em 1.2em;
    border: 1px solid #ccc;
    vertical-align: top;
    word-break: break-all;
}

table.tbl01 th {
    background-color: #fff4db;
    font-weight: 700;
    white-space: nowrap;
    font-size: 87.5%;
}
table.tbl01 td {
    background-color: #fff;
}

table.tbl01 tr:hover td {
    background-color: #fffdf8;
}
table.tbl01 td.error_cel {
    background-color: #ffecee;
}

table.tbl02 {
    width: 100%;
}
table.tbl02 th,
table.tbl02 td {
    padding: 0.6em 1em;
    border: 1px solid #ccc;
}

table.tbl02 th {
    background-color: #0a3190;
    font-weight: 700;
    color: #fff;
    text-align: center;
    font-size: 81.3%;
}
table.tbl02 td {
    background-color: #fff;
    font-size: 87.5%;
    line-height: 1.4;
}

table.tbl02 tbody tr td:nth-child(1) {
    text-align: center;
    font-size: 85.8%;
}
table.tbl02 tbody tr td:nth-child(3) {
    font-size: 100%;
}
table.tbl02 tbody tr td:nth-child(4) {
    text-align: right;
    white-space: nowrap;
}
table.tbl02 tbody tr td:nth-child(4) span {
    font-weight: 700;
    font-size: 114.3%;
}
/* col
------------------------------- */

.colWidth05 { width: 5%;}
.colWidth08 { width: 8%;}
.colWidth10 { width: 10%;}
.colWidth12 { width: 12%;}
.colWidth15 { width: 15%;}
.colWidth20 { width: 20%;}
.colWidth25 { width: 25%;}
.colWidth30 { width: 30%;}
.colWidth35 { width: 35%;}
.colWidth40 { width: 40%;}
.colWidth45 { width: 45%;}
.colWidth50 { width: 50%;}


/* ----------------------------------------

- Form Style

---------------------------------------- */

/* status
------------------------------- */

.status {
    width: 100%;
    margin: 20px auto 0;
    background: #edeff0;
    border: 1px solid #cccfd0;
    border-radius: 5px;
    color: #666;
}

.status li {
    float: left;
    height: 40px;
    line-height: 40px;
    text-align: center;
    width: 33%;
    position: relative;
    background: url(/housedo_img/form/bg-status.png) no-repeat 100% 50% ;
}

.status li:last-child {
    width: 34%;
    background-image: none;
}

.status li.status-sel01,
.status li.status-sel02,
.status li.status-sel03 {
    color: #fff;
    font-weight: 900;
    background: url(/housedo_img/form/bg-status-sel01.png) no-repeat 100% 50% #0a3190;
}
.status li.status-sel02 { background: url(/housedo_img/form/bg-status-sel02.png) no-repeat 100% 50% #0a3190;}
.status li.status-sel03 { background-image: none;}




/* input,textarea,select
------------------------------- */
input.txt,
textarea.txt,
select.txt,
select#prefId,
select#prefId1,
select#prefId2
{
    padding: 0.2em 0.4em;
    border: 1px solid #999;
    vertical-align: baseline;
    border-radius: 3px;
    box-shadow: 0 2px 3px 0px rgba(0,0,0,0.1) inset;
    -moz-box-shadow: 0 2px 3px 0px rgba(0,0,0,0.1) inset;
    -webkit-box-shadow: 0 2px 3px 0px rgba(0,0,0,0.1) inset;
    -o-box-shadow: 0 2px 3px 0px rgba(0,0,0,0.1) inset;
    -ms-box-shadow: 0 2px 3px 0px rgba(0,0,0,0.1) inset;
}

input.txt:focus,
textarea.txt:focus,
select.txt:focus,
select#prefId:focus,
select#prefId1:focus,
select#prefId2:focus{
    border-color:#66afe9;
    outline:0;
    -webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);
    box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)
}

select.txt,
select#prefId,
select#prefId1,
select#prefId2{
    font-size: 87.5%;
}

input.postcode01 { width: 3em;}
input.postcode02 { width: 4em;}

input.small01 { width: 5em;}
input.small02 {	width: 10em;}

input.medium01 { width: 15em;}
input.medium02 { width: 25em;}
input.medium03 { width: 35em;}

textarea.large,
input.large {
    width: 98%;
}

.form-group {
    margin-top: 0.5em;
}
.input-inline {
    display: inline-block;
}
.input-group input {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
}

input.must,
textarea.must,
select.must {
    background-color: #fff4db;
}


.dp-icon {
    display: inline-block;
    font-size: 75%;
    background-color: #eee;
    padding: 0.1em 0.4em;
    margin-right: 1em;
}
input#dp1,
input#dp2,
input#dp3 {
    margin-right: 1em;
}

/* radio, .checkbox
------------------------------- */
label {
    display: inline-block;
    margin-bottom: 0.6em;
    max-width: 100%;
    cursor: pointer;
    padding-left: 20px;
}

.radio,
.checkbox {
    display: block;
}
.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
    margin-left: -20px;
    position: relative;
}

.radio-inline, .checkbox-inline {
    margin-bottom: 0;
    padding-left: 20px;
    margin-right: 2em;
    vertical-align: middle;
}


/*.btn
------------------------------- */
.btn {
    border: none;
    cursor: pointer;
    text-transform: uppercase;
    position: relative;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    outline: none;
    -webkit-transition: none;
    -moz-transition: none;
    transition: none;
    text-decoration: none;
}
.btn:after {
    content: '';
    position: absolute;
    z-index: -1;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.btn:hover { top: 2px;}

.btn-postcode {
    vertical-align: super;
    padding: 0.1em 0.4em;
    border-radius: 3px;
    font-size: 81.3%;
    margin-left: 0.5em;
    background: #eee;
    box-shadow: 0 1px #ccc;
    border: 1px solid #999;
}
.btn-postcode:hover {
    box-shadow: 0 0 #ccc;
    top: 1px
}

.btn-calendar {
    vertical-align: super;
    height: 30px;
    width: 30px;
    margin-right: 1em;
    padding: 0.6em;
    border-radius: 5px;
    text-align: center;
    box-shadow: 0 3px #001d77;
    background: url(/housedo_img/form/icon-calendar.png) no-repeat 50% 50% #1d44a8;
}
.btn-calendar:hover {box-shadow: 0 1px #001d77;}

.btn-conf,
.btn-submit {
    padding: 0.6em 1.8em 0.6em 2.8em;
    border-radius: 5px;
    font-size: 125%;
    font-weight: 900;
    text-align: center;
    color: #fff;
    box-shadow: 0 3px #001d77;
    background: url(/housedo_img/form/icon-next.png) no-repeat 1em 50% #1d44a8;
}

.btn-conf:hover {box-shadow: 0 1px #001d77;}

.btn-submit {
    box-shadow: 0 3px #001d77;
    background: url(/housedo_img/form/icon-next.png) no-repeat 1em 50% #1d44a8;
}
.btn-submit:hover {box-shadow: 0 1px #001d77;}

.btn-submit-coming {
    padding: 0.6em 1.8em 0.6em 2.8em;
    border-radius: 5px;
    font-size: 125%;
    font-weight: 900;
    text-align: center;
    color: #fff;
    box-shadow: 0 3px #001d77;
    background: url(/housedo_img/form/icon-next.png) no-repeat 1em 50% #1d44a8;
}
.btn-submit-coming {
    box-shadow: 0 3px #001d77;
    background: url(/housedo_img/form/icon-next.png) no-repeat 1em 50% #1d44a8;
}
.btn-submit-coming:hover {box-shadow: 0 1px #001d77;}
.btn-submit-coming {
    padding: 0.6em 1.8em 0.6em 2.8em;
    border-radius: 5px;
    font-size: 125%;
    font-weight: 900;
    text-align: center;
    color: #fff;
    box-shadow: 0 3px #001d77;
    background: url(/housedo_img/form/icon-next.png) no-repeat 1em 50% #1d44a8;
}
.btn-submit-coming {
    box-shadow: 0 3px #001d77;
    background: url(/housedo_img/form/icon-next.png) no-repeat 1em 50% #1d44a8;
}
.btn-submit-coming:hover {box-shadow: 0 1px #001d77;}


.btn-submit-mypage {
    padding: 0.6em 1.8em 0.6em 2.8em;
    border-radius: 5px;
    font-size: 125%;
    font-weight: 900;
    text-align: center;
    color: #fff;
    box-shadow: 0 3px #001d77;
    background: url(/housedo_img/form/icon-next.png) no-repeat 1em 50% #1d44a8;
}
.btn-submit-mypage {
    box-shadow: 0 3px #001d77;
    background: url(/housedo_img/form/icon-next.png) no-repeat 1em 50% #1d44a8;
}
.btn-submit-mypage:hover {box-shadow: 0 1px #001d77;}




.btn-prev {
    position: absolute;
    left: 0;
    top: 0;
    font-weight: 700;
    padding: 0.6em 1.8em 0.6em 2.8em;
    border-radius: 5px;
    box-shadow: 0 3px #ccc;
    background: url(/housedo_img/form/icon-prev.png) no-repeat 1em 50% #eee;
}
.btn-prev:hover {
    box-shadow: 0 1px #ccc;
}

.btn-backtop {
    padding: 0.6em 1.8em 0.6em 2.8em;
    border-radius: 5px;
    font-size: 125%;
    font-weight: 900;
    text-align: center;
    color: #333 !important;
    box-shadow: 0 3px #ccc;
    background: url(/housedo_img/form/icon-backtop.png) no-repeat 1em 50% #eee;
}
.btn-backtop:hover {box-shadow: 0 1px #ccc;}



.req,
.no-req {
    float: right;
    background-color: #d80000;
    color: #fff;
    padding: 0.1em 0.6em;
    font-size: 85.8%;
    text-align: right;
    display: inline-block;
    font-weight: 100;
    border-radius: 3px;
    margin-top: 0.2em;
}

.no-req {
    background-color: #999;
    color: #fff;
}

table.tbl01 th.no-req-cell {
    background-color: #f2f4f5;
    font-weight: 100;
}

/*.error
------------------------------- */
table.tbl01 td.error-cell {
    background-color: #fdf1f0;
}
table.tbl01 tr:hover td.error-cell {
    background-color: #ffebe9;
}


.error-txt,
.error-message {
    font-weight: 700;
    color: #e9000e;
}

.icon-type {
    display: block;
    padding: 0.1em 0.6em;
    text-align: center;
    color: #0a3190;
    font-size: 75%;
    border: 1px solid #0a3190;
    background-color: #dae0fa;
    white-space: nowrap;
}

.txt-type {
    display: inline-block;
    width: 10em;
}


/* ----------------------------------------

- Text Style

---------------------------------------- */

sup {
    font-size: 75%;
}

.help-note {
    font-size: 75%;
    color: #666;
}
.help-note span {
    color: #fff;
    background-color: #666;
    border-radius: 3px;
    display: inline-block;
    margin-right: 1em;
    padding: 0.1em 0.4em;
    font-size: 83.4%;
}

.tbl01 th .help-note {
    font-size: 85.8%;
    font-weight: 100;
    line-height: 1.4;
    display: block;
}

.att-note {
    color: #d80000;
}

.sub-title {
    margin: 1em 1.2em 0.5em;
    font-weight: 700;
    font-size: 112.5%;
}
.sub-title em {
    font-weight: 700;
    font-size: 122.3%;
    color: #d80000;
}

.comp-txt {
    margin-top: 5em;
    text-align: center;
    font-size: 112.5%;
}

.txt-link {
    font-weight: 700;
    padding-left: 0.8em;
    background: url(/housedo_img/form/icon-link.png) no-repeat 0 50%;
}
/*
-----------------------*/
.pro-tenpo-name {
    font-weight: 700;
}
.pro-tenpo-add {
    font-size: 87.5%;
}
.pro-num {
    margin-top: 0.8em;
    display: inline-block;
    font-size: 75%;
    line-height: 1.4;
}
.pro-num em {
    font-weight: 700;
    color: #d80000;
}

/*.open-date
-----------------------*/
.open-date {
    margin: 1em auto 2em;
    padding: 1em 2em;
    border: 1px dotted #ccc;
    font-size: 87.5%;
}
.open-date dt {
    background-color: #f2f4f5;
    border: 1px solid #ccc;
    padding: 0.2em 0.6em;
    float: left;
}
.open-date dd {
    float: left;
    margin-left: 2em;
    font-weight: 900;
}

.address-hidden {
    visibility: hidden;
}


.clear {
    clear: both;
}

.hidden {
    height: 0;
    width: 0;
    overflow: hidden;
}

.marginTop0 { margin-top: 0;}
.marginTop10 {	margin-top: 10px;}
.marginTop15 {	margin-top: 15px;}
.marginTop20 {	margin-top: 20px;}
.marginTop30 {	margin-top: 30px;}
.align-center { text-align: center;}
.align-right { text-align: right;}
.nowrap { white-space: nowrap;}
.breakWord { word-wrap: break-word;}

/* privacy 
------------------------------- */

.privacy {
    width: 100%;
}

.privacy iframe {
    width: 100%;
    border: 1px solid #ccc;
}

.submit-group {
    position: relative;
    margin: 2em auto;
    text-align: center;
}

/* clearfix
------------------------------- */
header:after,
.status:after,
.open-date:after {
    display: block;
    visibility: hidden;
    clear: both;
    height: 0;
    content: ".";
    line-height: 0;
}

header,
.status,
.open-date {
    *zoom: 1;
}

/* -- add 20181015 --- */

.req-text {
  margin-top: 30px;
}
.input-option-txt {
  margin-left: 5px;
  color: #9d5400;
  font-weight: 900;  
}

.req-text .req {
  float: none;
  margin-right: 5px;
}
.header-inquiries-phone {
  text-align: center;
  line-height: 1.2;
  margin-top: 10px;
}
.header-inquiries-phone dt + dd {
  color: #0a3190;
  font-family:arial;
  font-weight: 900;
  font-size: 175%;
}
.header-inquiries-phone dd:last-child {
  font-size: 85%;
}
.header-inquiries-phone dt + dd span {
  font-size: 50%;
}

.header-inquiries-phone span {
  font-size: 50%;
}
table.tbl01 td .input-option-txt {
  font-size: 87.5%;
  display: inline-block;  
}
table.tbl01 th .input-option-txt {
  margin-left: 0;
  margin-right: 5px;
  display: block;
  line-height: 1;
}

/* -- add 20181024 --- */

.error_alert_msg {
    padding: 1rem 1.6rem;
    border: 2px solid #d80000;
    font-weight: bold;
    font-size: 114.3%;
    color: #d80000;
}
.error_alert_msg span {
    font-size: 87.5%;
    font-weight: normal;
}

/* -- add 20181212 --- */

.widget_long_vacation_wrap {
    box-sizing: border-box;
    padding: .6rem 1rem;
    border: 1px solid #ccc;
    margin-bottom: 1rem;

}
.widget_long_vacation_title {
    font-weight: 900;
}
.widget_long_vacation_txt {
    font-size: .9rem;
}

@media screen and (max-width: 767px) {
  table.tbl01 th {
    position: relative;
  }
  table.tbl01 th .input-option-txt {
    position: absolute;
    top: 0.8em;
    right: 4em;
  }
}

/* recaptcha */
@media screen and (max-width: 320px) {
  .recaptcha-wrap {
    width: 250px; 
  }
  .g-recaptcha {
    transform-origin: 0% 0%;
    transform: scale(0.835);
    -webkit-transform: scale(0.835);
  }
}
@media screen and (max-width: 767px) {
  input.medium02 {
    width: 100%;
  }
  header span.tenpo-name {
    margin-left: 0;
    font-size: 100%;
    font-weight: 700;
    text-align: center;
    margin-top: 5px;
  }
}
/* Progress Bar */
@media screen and (max-width: 767px) {
  .progress-bar {

  }
  .status.progress-bar li {
    width: 100%;
    background-image: none;
    text-align: center;
    position: relative;
    height: 50px;
    line-height: 50px;
    font-size: 14px;
    font-weight: bold;
    border-bottom: solid 1px #cccfd0;
    color: #333;
  }
  .status.progress-bar li:last-child {
    border-bottom:0; 
  }

  .status.progress-bar li.status-sel01::after,
  .status.progress-bar li.status-sel02::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #0a3190 transparent transparent transparent;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: -10px;
  }
  .status.progress-bar li.status-sel01,
  .status.progress-bar li.status-sel02, 
  .status.progress-bar li.status-sel03 {
    color: #fff;
    border: 0;
  }
}

/* privacy button */
@media screen and (max-width: 320px) {
  .btn-conf {
    font-size: 64%!important;
  }
}
@media screen and (min-width: 321px) and (max-width: 767px) {
  .btn-conf {
    font-size: 74%!important;
  }
}
/* privacy */
@media screen and (max-width: 767px) {
  .privacy-wrap {
    border: 1px solid #ccc;
    height: 200px;
    -webkit-overflow-scrolling: touch;
    overflow: auto;
  }
  .privacy-wrap iframe {
    border: 0;
    display: block;
    height: 100%;
  }
}
@media screen and (max-width: 767px) {
  .pc-item {
    display: none;
  }
}
/* header */
header span.tenpo-name {
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  header div.container {
    display: flex;
    width: 95%;
    align-items: center;
  }
  header div.container h1 {
    display: flex;
  }
  header div.container dl {
    margin-left: auto;
  }
}
@media screen and (max-width: 767px) {
  .labelitem_blk label {
    display: block;
    margin: 10px 0;
  }
    .cont_tit {
        font-size: 100%;
    }
    .cont_tit span {
        padding: .6rem 1rem;
    }
    .error_alert_msg {
        padding: .6rem 1rem;
        font-size: 100%;
    }
    .error_alert_msg span {
        font-size: 87.5%;
    }
    .btn-submit {
        position: relative;
        margin-top: 4rem;
    }
    .btn-submit:hover {
        position: relative;
        margin-top: 4rem;
    }

}