/* WEB展示場ステップバー表示 */
#step_bar_box {
    text-align: center;
    overflow: hidden;
    margin-top: 30px;
    margin-bottom: 30px;
}

.step_bar {
    list-style: none;
}

.step_bar li {
    width:33%;
    line-height: 45px;
    color: #0e7ac3;
    text-decoration: none;
    padding: 0 15px 0 35px;
    background: #eee;
    display: inline-block;
}

.step_bar li small {
    font-size: 80%;
}

.step_bar li::after {
    position: relative;
    display: block;
    margin-top: -25px;
    margin-left: auto;
    margin-right: -25px;
    height: 22px;
    width: 20px;
    content: " ";
    -webkit-transform: skew(-30deg);
    -moz-transform: skew(-30deg);
    -ms-transform: skew(-30deg);
    -o-transform: skew(-30deg);
    transform: skew(-30deg);
    background: #eee;
    border-right: 3px solid white;
}

.step_bar li::before {
    float: right;
    display: block;
    margin-bottom: -25px;
    margin-left: auto;
    margin-right: -25px;
    height: 21px;
    width: 20px;
    content: " ";
    -webkit-transform: skew(30deg);
    -moz-transform: skew(30deg);
    -ms-transform: skew(30deg);
    -o-transform: skew(30deg);
    transform: skew(30deg);
    background: #eee;
    border-right: 3px solid white;
}

.step_bar li:first-child {
    padding-left: 20px;
    -webkit-border-radius: 5px 0 0 5px;
    -moz-border-radius: 5px 0 0 5px;
    -ms-border-radius: 5px 0 0 5px;
    -o-border-radius: 5px 0 0 5px;
    border-radius: 5px 0 0 5px;
}

.step_bar li:last-child {
    padding-left: 35px;
    padding-right: 40px;
    -webkit-border-radius: 0 5px 5px 0;
    -moz-border-radius: 0 5px 5px 0;
    -ms-border-radius: 0 5px 5px 0;
    -o-border-radius: 0 5px 5px 0;
    border-radius: 0 5px 5px 0;
}

.step_bar li:last-child::before {
    border: 0;
    background: transparent !important;
}

.step_bar li:last-child::after {
    border: 0;
    background: transparent !important;
}

.step_bar li.current {
    background: #0e7ac3;
    color: #f8f8f8;
    font-weight: 500;
    font-size: medium;
}

.step_bar li.current::before {
    background: #0e7ac3;
}

.step_bar li.current::after {
    background: #0e7ac3;
}

.step_bar li.current:last-child {
    margin-right: -35px;
}

.step_bar li.current:last-child::before {
    border: 0;
    background: transparent !important;
}

.step_bar li.current:last-child::after {
    border: 0;
    background: transparent !important;
}

@media (max-width: 767px) {

  .step_bar li {
    font-size: 11px !important;
    font-weight: bold !important;
    width: fit-content !important;
    /*line-height: 45px;
    color: #0e7ac3;
    text-decoration: none;
    padding: 0 15px 0 35px;
    background: #eee;
    display: inline-block;*/
    }

}
/* //WEB展示場ステップバー表示 */

form.btform1 {
    width: 100%;
    font-size: 90%;
    margin-top: 1.5em;
}
form.btform1.-product_dia {
    width:auto;
}

form.btform1 table {
    width: 100%;
    background-color: #f9f9f9;
    border: 1px #c0c0c0 solid;
    border-collapse: collapse;
}

form.btform1 th {
    width: 30% !important;
    padding: 10px;
    background-color: #EBF6F6;
    text-align: left;
    font-size: 105%;
    border: 1px #c0c0c0 solid;
}

form.btform1 td {
    width:70%;
    padding: 10px 5px 7px;
    background-color: #ffffff;
    border: 1px #c0c0c0 solid;
}

form.btform1 td.required {
    width: 30px;
    padding: 10px 3px;
    background-color: #f5f5f5;
    text-align: center;
}

form.btform1 td.optional {
    width: 30px;
    padding: 10px 3px;
    background-color: #f5f5f5;
    text-align: center;
}

form.btform1 input,
form.btform1 select,
form.btform1 textarea {
    margin: 7px;
    padding: 10px;
    font-size: 110%;
    border:1px #c0c0c0 solid;
}

form.btform1 p.button {
    margin:2em 0px;
    display: flex;
    justify-content: space-around;
    max-width: 50%;
}

.required_label {
    width: 45px;
    font-size: 100%;
    display: block;
}
.ok_label {
    width: 45px;
    font-size: 100%;
    display: none;
}

.required_input {
    background-color: #FFE4E1;
}

.confirmation_value {
    font-size: 110%;
    margin: 10px 10px;
}

.error_text {
    display:block;
    margin: 0px 7px;
    color: #BB0000;
    font-size: 105%;
}

.critical_error_text {
    margin: 10px;
    color: #CC0000;
    font-size: 150%;
    font-weight: bold;
}

.explanation_text {
    margin: 5px;
    display: block;
    font-size: 90%;
    font-weight: bold;
    color: #228B22;
}

.ssmall_text {
width: 50px;
}
.small_text {
width: 120px;
}
.middle_text {
width: 55%;
}
.long_text {
width: 80%;
}

.linked_text{
    color: #13447f;
}

@media(max-width:900px){
    form.btform1 {
        width: 100%;
    }

    form.btform1 table {
        background-color: #ffffff;
        border: none;
    }

    form.btform1 th {
        width: 100%;
        display: block;
        box-sizing: border-box;
        border: none;
    }

    form.btform1 th.label_title{
        padding-left: 55px;
    }

    form.btform1 th.label_title02{
        padding-left: 10px;
        margin-bottom: 10px;
    }


    form.btform1 tr {
        position:relative;
        display:block;
    }

    form.btform1 td {
        width: 100%;
        height: auto;
        display: block;
        box-sizing: border-box;
        border: none;
    }

    form.btform1 td.required {
        width: 100%;
        display: block;
        box-sizing: border-box;
        border: none;
        padding: 0;
        background-color: #ffffff;
    }

    form.btform1 td.optional {
        width: 100%;
        display: block;
        box-sizing: border-box;
        border: none;
        padding: 0;
        background-color: #ffffff;
    }

    .label_icon{
        position: absolute;
        top:13px;
        left:10px;
    }

    .label_icon02{
        position: absolute;
        top:60px;
        left:10px;
    }

    .label_explanation{
        text-indent: 45px;
        margin: 0px 5px 5px;
    }

    form.btform1 input,
    form.btform1 select,
    form.btform1 textarea {
        width: 80%;
    }
    form.btform1 input[type='checkbox'],
    form.btform1 input[type='radio']
    {
        width: 20px;
    }

    .ssmall_text {
        width: 40%;
        max-width: 50px;

    }
    .small_text {
        width: 40%;
        max-width: 120px;
    }
    .middle_text {
        width: 40%;
        max-width: 250px;
    }
    .long_text {
        width: 40%;
        max-width: 400px;
    }

}


.label {
    width:35px;
    font-size:12px;
    text-align:center;
    padding:3px 3px;;
    color: #fff;
    border: 1px solid #000;
    border-radius:3px;
    font-weight:normal;
}

.label-success{
    background-color: #345fe7;
    border-color: #345fe7;
}

.label-danger{
    display:inline;
    background-color: #d9534f;
    border-color: #d43f3a;
}

.label-info{
    display:inline;
    background-color: #5bc0de;
    border-color: #46b8da;
}

.btn-primary {
  display: inline-block;
  text-align:center;
  color: #fff;
  line-height: 1.5;
  background-color: #337ab7;
  border-color: #2e6da4;
}

.btn-sm {
  display: inline-block;
  text-align:center;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

label, input[type='checkbox'] {
    cursor: pointer;
}


/*製品に関するお問い合わせ*/
.contact_product_txt{
    font-size: 16px;
    line-height: 1.6;
    color: #444444;
    padding-bottom: 10px;
}

.contact_product_wrap{
    display: flex;
    justify-content:space-between;
    padding-bottom: 30px;
}

.contact_product_cont{
    width: 48%;
}

.contact_product_cont p{
    background-color: #f8f8f8;
    font-size: 18px;
    font-weight: bold;
    color: #444444;
    line-height: 2.4;
    margin-bottom: 20px;
}

.contact_product_cont p span{
    color: #ffb453;
    padding-left: 5px;
}

.contact_product_cont p a{
    color: #444444;
}

.contact_product_cont p a:hover{
    color: #ffb453;
}

.contact_product_icon {
    display: flex;
    justify-content: space-between;
}

.contact_product_icon img{
    padding-right: 15px;
}

.contact_product_icon p{
    font-size: 14px;
    line-height: 1.6;
    font-weight: normal;
    background: transparent;
}

.m3 h4{
    font-size: 22px;
    padding-bottom: 20px;
}

.m3 h4 a.fax_download{
    font-size: 16px;
    color: #333333;
    border: 1px #333333 solid;
    margin: 0 50px;
    padding: 5px 30px;
    text-align: center;
}
.m3 h4 a.fax_download i:before{
    display: inline-block;
    text-decoration: none;
}
@media(max-width:900px){
    .m3 h4 a.fax_download{
        margin: 20px 0 10px;
        padding: 5px 30px;
        display: block;
    }
}

/*ssl_info*/

#ssl_info {
	text-align:center;
	font-size: 12px;
	padding-left:50px;
	padding-bottom:30px;
	margin-top:-50px;
}

#ssl_info table {
	margin:0 auto;
	width:600px;
}
#ssl_info table td {
	text-align:left;
	vertical-align: top;
}
#ssl_info p {
    font-size: 12px;
    line-height: 1.6;
}
#ssl_info p.policyLink {
	padding: 0;
}
#ssl_info .policyLink a {
	padding-left: 13px;
	text-decoration: underline;
	background:url(../../common/images/popup02_arrow.gif) no-repeat left center;
}
#ssl_info .policyLink a:hover {
	text-decoration: none;
}

@media(max-width:900px){
    #ssl_info {
        padding-left:0;
        margin-top:0;
    }

    #ssl_info table {
        margin:0 auto;
        width:100%;
    }
    #ssl_info table td {
        width: 100%;
        display: block;
    }
    .contact_footer_text_box > .text_box_right{text-align: left !important;}
}

.fa_cont{
    padding: 20px 0 50px;
}

.fa_cont ul{
    width: 83%;
    display: flex;
    justify-content: space-around;
}

.fa_cont ul li a{
    color: #444444;
    font-size: 1.2em;
    display: inline-flex;
    line-height: 2em;
    border: 1px #cccccc solid;
    padding: 15px 25px;
    text-align: center;
    font-weight: bold;
}

.fa_cont ul li a i:before{
    display: inline-block;
    text-decoration: none;
}

.fa_faq {
    color: #fd7e14;
    margin-right: 10px;
}
.fa_company {
    color: #4c6ef5;
    margin-right: 10px;
}

@media(max-width:900px){
    .fa_cont ul{
        width: 100%;
        display: block;
    }
    .fa_cont ul li{
        padding-bottom: 10px;
    }
    .fa_cont ul li a{
        width: 100%;
        max-width: 300px;
        display: flex;
        margin: 0 auto;
        box-sizing: border-box;
    }

}

.flow_btn {
	width: 100%;
}

.contact_footer_text_box{
  display: block;
  text-align: center;
  margin-bottom: 15px;
}
.contact_footer_text_box > .text_box_right{text-align: center;}

.text_box_right{
    display: inline-block;
    text-align: left;
    padding-top: 1em;
}

.norm_p{
    margin-top: 0.5em;
}

.norm_p_mtp{
    margin-top: 1em;
}



@media screen and (max-width: 768px) {
    .vw-l {
        display: none;
      }
    body{
        padding-bottom: 0;
    }
    .cont_box{
        width: 95%;
        margin: 50px auto;
    }
    form.btform1 th{
        width: 100% !important;
    }
    .norm_p, .norm_p_mtp{
        text-align: center;
    }
    form.confirm_page th.label_title{
        padding-left: 15px;
    }
    form.btform1 table textarea[name="Note"]{
        width: 95%;
    }
    form.btform1 p.confirm_button_wrap {
        max-width: 100%;
        flex-direction: column;
    }
    form.btform1 table.Agree_wrap tbody tr td.Agree_info {
        background-color: #EBF6F6;
        padding: 15px !important;
        line-height: 1.7;
        margin: 0 auto;
        width: 95%;
      }
      form.btform1 table.Agree_wrap tbody tr td.Agree_info .label_icon {
        position: static;
      }
      form.btform1 table.Agree_wrap tbody tr td.Agree_info span.Agree_txt {
        display: block;
        padding-top: 10px;
        padding-bottom: 10px;
      }
      form.btform1 table.button_wrap {
        border: none !important;
      }
      form.btform1 table.button_wrap tbody tr td {
        border: none;
      }
      form.btform1 table.button_wrap tbody tr td p.button {
        margin-top: 0;
      }
      form.btform1 table.button_wrap tbody tr td p.button input {
        margin: 0 auto;
      }
      form.btform1 table.button_wrap tbody tr td p.button input.btn {
        margin-top: 20px;
      }
      .entry_button_wrap{
        margin: 0 auto !important;
      }
      .entry_button_wrap input{
        width: 90% !important;
      }
      .entry_button_wrap input[name="check"]{
        margin-top: 40px;
      }
      .confirm_button_wrap input{
        margin: 0 auto !important;
      }
      .confirm_button_wrap input[name="back"]{
        margin-bottom: 20px !important;
      }
      .NoteformError{
        left: 230px !important;
      }
}


@media screen and (min-width: 768.02px) {
    .vw-s {
        display: none;
      }
    .cont_box{
        width: 60%;
        margin: 0 auto;
        min-height: calc(100vh - 126px);
        padding-top: 50px;
    }
    .norm_p, .norm_p_mtp{
        text-align: center;
        margin-bottom: 20px;
    }
    table.Agree_wrap {
        margin-top: 40px;
      }
      table.Agree_wrap tbody tr td.Agree_info {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
        line-height: 1.7;
        background: #EBF6F6;
      }
      table.Agree_wrap tbody tr td.Agree_info span.Agree_txt {
        display: block;
        padding-top: 10px;
      }
      table.button_wrap {
        border: none !important;
      }
      table.button_wrap tbody tr td {
        border: none;
      }
      form.btform1 p.button{
        margin: 2em auto;
      }
}

