@charset "UTF-8";

/*@import url("mailform.flat.confirm.css");*/

/*//////////////////////////////////////////////////*/

/*// 01.ベースの設定                              //*/

/*//////////////////////////////////////////////////*/

.mailformBody #header .headerIn {
    padding-bottom:4px;
}

@media screen and (max-width: 1290px) and (min-width: 1004px) {
    .mailformBody #header .headerIn {
        padding-bottom: 4px;
    }
}

form#mailform {
    margin: 0px auto 0px auto;
    padding: 0px;
}

form#mailform label {
    cursor: pointer;
    text-decoration: none;
    display: block;
    padding: 5px 5px;
    margin-bottom: 1px;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}

label.label_true {
    background-color: #FFFFEE;
    border: solid 1px #CCCCCC;
    text-decoration: none;
}

label.label_false {
    background-color: none;
    border: none;
    text-decoration: none;
    background-image: none;
}

div#mailfrom_hidden_object {
    width: 1px;
    height: 1px;
    overflow: hidden;
}

div#mailfrom_hidden_object input {
    margin: 10px;
}

div#mfp_closed {
    display: none;
}

div.mfp_disp {
    display: none;
}

div#input_time_disp {
    padding: 10px;
}

div#expires_time_disp {
    padding: 10px;
    text-align: center;
}

div#expires_time_disp strong {
    font-size: 18px;
    color: #CC0000;
}

div#limit_disp {
    padding: 10px;
    text-align: center;
}

div#limit_disp strong {
    font-size: 24px;
    color: #CC0000;
}

img.must {
    width: 30px;
    height: 16px;
    float: left;
    margin: 0px 0px 0px 5px;
}

div.mfp_err {
    text-align: left;
    margin: 5px 0px 0px 0px;
    padding: 3px 0px 5px 17px;
    color: #FF0000;
    font-size: 12px;
    line-height: normal;
    display: none;
    background: url(../images/mfp_error.gif) 0 5px no-repeat;
}

input.mfp {
    padding: 2px;
}

textarea.mfp {
    padding: 5px;
}

div.mfp_buttons {
    /*padding: 0 0 10px 150px;*/
    text-align: center;
}

div.mfp_buttons ul {
    width: 360px;
    height: 60px;
    overflow: hidden;
    margin: 0px auto 0px auto;
}

div.mfp_buttons ul li {
    width: 180px;
    height: 60px;
    overflow: hidden;
    float: left;
}

div.mfp_buttons ul li input[type="button"]:focus {
    outline: none;
}

div.mfp_phase_buttons {
    height: 60px;
}

input.mfp_phase_next {
    background-image: url(../images/mfp_next.gif);
    float: right;
}

input.mfp_phase_prev {
    background-image: url(../images/mfp_prev.gif);
    float: left;
}

input.mfp_phase_next,
input.mfp_phase_prev {
    width: 200px;
    height: 60px;
    overflow: hidden;
    text-indent: -5000px;
    border: none;
    border-style: none;
    cursor: pointer;
}

input#button_mfp_goconfirm {
    width: 180px;
    height: 60px;
    overflow: hidden;
    background: url(../images/mfp_goconfirm.png) #fff!important;
    border: none;
    border-style: none;
    cursor: pointer;
}

input:hover#button_mfp_goconfirm {
    background: url(../images/mfp_goconfirm.png) 0 -60px!important;
}

input#button_mfp_gosend {
    width: 180px;
    height: 60px;
    overflow: hidden;
    background: url(../images/mfp_gosend.gif) #fff;
    border: none;
    border-style: none;
    cursor: pointer;
}

input#button_mfp_gocancel {
    width: 180px;
    height: 60px;
    overflow: hidden;
    background: url(../images/mfp_gocancel.gif) #fff;
    border: none;
    border-style: none;
    cursor: pointer;
}

input#button_mfp_reset {
    width: 180px;
    height: 60px;
    overflow: hidden;
    background: url(../images/mfp_reset.png) #fff!important;
    border: none;
    border-style: none;
    cursor: pointer;
}

input:hover#button_mfp_reset {
    background: url(../images/mfp_reset.png) 0 -60px!important;
}

/*//////////////////////////////////////////////////*/

/*//////////////////////////////////////////////////*/

/*// 02.テーブルの指定                            //*/

/*//////////////////////////////////////////////////*/

table.mailform {
    width: 100%;
    padding: 10px;
}

table.mailform tr th {
    padding: 7px 0px 7px 0px;
    border-bottom: solid 1px #CCCCCC;
    font-weight: normal;
    font-size: 12px;
    text-align: right;
    width: 160px;
}

table.mailform tr th span {
    font-size: 10px;
    color: #999999;
    display: block;
}

table.mailform tr td {
    padding: 7px 10px 7px 10px;
    border-bottom: solid 1px #CCCCCC;
    font-size: 12px;
}

table.mailform tr td ul li,
table.mailform tr td ul,
table.mailform tr td ol,
table.mailform tr td ol li {
    list-style: none;
    margin: 0px;
    padding: 0px;
}

table.mailform tr td ul li {
    float: left;
    padding: 0px 10px 0px 0px;
}

table.mailform tr td p,
table.mailform tr td div,
table.mailform tr td span {
    clear: both;
}

/*//////////////////////////////////////////////////*/

/*// 04.以下確認画面関連のスタイル                //*/

/*//////////////////////////////////////////////////*/

ul.confirm_layer {
    width: 720px;
    padding: 0px;
    margin: 0 0 20px 0;
}

ul.confirm_layer li {
    width: 720px;
    max-height: calc(100vh - 240px);
    list-style: none;
    overflow-y: scroll;
    text-align: center;
    margin: 0px;
    padding: 20px;
    box-sizing: border-box;
}

li.confirm_middle {
    background: #fff;
    border-radius: 10px;
}

li.confirm_top {
    display: none;
}

li.confirm_bottom {
    display: none;
}

div#disabled_submit {
    width: 1px;
    height: 1px;
    overflow: hidden;
}

div#disabled_submit input {
    margin: 10px;
}
table.infield{
    min-width:100%;
}
table.infield tr th {
    padding: 5px;
    margin: 0px;
    text-align: right;
    font-size: 14px;
    width: 150px;
    border-bottom: solid 1px #CCCCCC;
    font-weight: bold;
}

table.infield tr td {
    padding: 5px;
    border-bottom: solid 1px #CCCCCC;
}

table.infield tr td p {
    text-align: left;
    font-size: 14px;
    line-height: 1.5em;
    border-left: solid 2px #CCCCCC;
    padding: 5px 0px 5px 10px;
    margin: 0px;
}

.mfp_color {
    background-color: #E8EEF9;
}

div#confirmWindow {
    filter: alpha(opacity=30);
    -moz-opacity: 0.3;
    -khtml-opacity: 0.3;
    opacity: 0.3;
    width: 100%;
    height: 100%;
    margin: 0px;
    overflow: hidden;
    z-index: 1001;
    position: fixed!important;
    position/**/
    : absolute;
    top: 0;
    left: 0;
    visibility: hidden;
    background-color: #000000;
    font-size: 12px;
    text-align: center;
    _top: expression( document.documentElement && document.documentElement.scrollTop || document.body && body.scrollTop || 0 + 0 + 'px');
}

div#confirmBody {
    width: 1px;
    visibility: hidden;
    position: absolute;
    z-index: 1002;
    text-align: center;
    margin: 0px auto 0px auto;
    padding-top: 40px;
}

div#confirmBody div.mfp_title {
    color: #FFFFFF;
    margin: 0px auto 0px auto;
    width: 294px;
    height: 33px;
    padding-top: 10px;
}

div.buttons {
    margin: 0px auto 0px auto;
}

div#twex {
    margin: 0px;
    overflow: hidden;
    z-index: 100;
    position: absolute;
    top: 0;
    left: 0;
    display: none;
    text-align: center;
    background-color: #000000;
    filter: alpha(opacity=60);
    -moz-opacity: 0.60;
    -khtml-opacity: 0.60;
    opacity: 0.60;
}

img#loading_proccess_image {
    position: absolute;
    z-index: 1000;
}

/*//////////////////////////////////////////////////*/

dl.mailform {
    padding: 0px 15px;
    margin: 0px;
}

dl.mailform dt {
    float: left;
    width: 180px;
    clear: both;
    font-size: 12px;
    text-align: right;
    font-weight: normal;
    padding: 5px 0px 0px 0px;
    margin: 0px;
}

dl.mailform dt span {
    display: block;
    font-size: 10px;
    color: #999999;
}

dl.mailform dd {
    padding: 10px 10px 15px 190px;
    border-bottom: solid 1px #CCCCCC;
    font-size: 12px;
    margin: 0px;
}

dl.mailform dd ul,
dl.mailform dd ol {
    margin: 0px;
    padding: 0px;
}

dl.mailform dd ul li,
dl.mailform dd ol li {
    list-style: none;
    margin: 0px;
    padding: 0px;
}

dl.mailform dd ul li {
    /*float: left;*/
    padding: 0px 10px 0px 0px;
}

/*// Phase Input Style //*/

div.mfp_phase_section {
    display: none;
    padding: 2px 2px 15px 2px;
    margin: 10px 5px;
    border: solid 1px #EEEEEE;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-box-shadow: 0px 0px 5px #999999;
    -moz-box-shadow: 0px 0px 5px #999999;
    box-shadow: 0px 0px 5px #999999;
    clear: both;
}

p.mfp_caption {
    margin: 10px;
}

input.mfp_phase_ui {
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    padding: 3px;
    margin: 5px 15px;
}

h3.mfp_phase_title {
    background-image: url(../images/mfp_h3.png);
    padding: 5px 15px;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    font-size: 21px;
    margin: 0px 0px 10px 0px;
    color: #FFFFFF;
    text-shadow: 1px 1px 1px #000000;
}

ol.mfp_phase_input_proccess {
    margin: 15px;
    height: 40px;
}

ol.mfp_phase_input_proccess li {
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    padding: 5px 10px;
    margin: 5px;
    float: left;
    font-weight: bolder;
}

li.mfp_phase_disabled {
    -webkit-box-shadow: 1px 1px 4px #999999;
    -moz-box-shadow: 1px 1px 4px #999999;
    box-shadow: 1px 1px 4px #999999;
    background-color: #CCCCCC;
    border: solid 1px #999999;
}

li.mfp_phase_current {
    -webkit-box-shadow: 1px 1px 4px #999999;
    -moz-box-shadow: 1px 1px 4px #999999;
    box-shadow: 1px 1px 4px #999999;
    color: #FFFFFF;
    text-shadow: 1px 1px 1px #000000;
    background: url(../images/mfp_h3.png) #FFEEEE;
    border: solid 1px #FFFFFF;
}

div#mfp_progress {
    margin: 10px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border: solid 1px #CCC;
    overflow: hidden;
    text-align: left;
    background-image: url(../images/mfp_progress_disabled.jpg);
    position: relative;
    height: 30px;
}

p#mfp_progress_bar_text {
    z-index: 10;
    position: absolute;
    top: 5px;
    left: 0px;
    width: 100%;
    color: #FFF;
    font-weight: bolder;
    text-shadow: 1px 1px 2px #000;
    font-size: 10px;
    text-align: center;
}

div#mfp_progress_bar {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 0%;
    height: 30px;
    background-image: url(../images/mfp_progress.jpg);
    overflow: hidden;
}

/*===================================
	フォーム
=====================================*/

#main {
    max-width: 820px;
    margin: 0 auto;
    padding: 0 20px
}


/*===================================
　2011-09-24 solecolor ADD
=====================================*/

#formBox {
    margin: 0 auto 4em auto;
}

#formBox h4 {
    font-size: 1.4em;
    margin-bottom: 8px;
    font-weight: bold;
}

#formBox .lead {
    margin-bottom: 36px;
}

#formBox .lead table th,
#formBox .lead table td {
    vertical-align: middle!important;
}

#formBox table {
    border-collapse: collapse;
    border: 1px #ccc solid;
}

#formBox table th {
    font-weight: bold;
}

#formBox table th,
#formBox table td {
    border: 1px #ccc solid;
    padding: 1em;
    line-height: 1.4;
    vertical-align: middle;
}

#formBox th {
    background-color: #ffffff;
    width: 200px;
}

#formBox th span,
p.hissu span {
    color: #cc0000;
}

#formBox td.tel em {
    font-size: 2em;
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
}

#formBox .thanks {
    border: 4px #43bdd7 solid;
    text-align: center;
    padding: 20px;
    margin-bottom: 20px;
}

#formBox .thanks em {
    display: block;
    color: #43bdd7;
    font-size: 1.6em;
    font-weight: bold;
    line-height: 120%;
    margin-bottom: 10px;
}

#formBox textarea {
    border-radius: 2px;
    box-sizing: border-box;
    width: 100%!important;
    height: 12em!important;
}

#formBox input,
#formBox textarea {
    padding: 0.6em;
    margin: 4px;
    border: 1px solid #D5D5D5;
}

#formBox .mfp_buttons #button_mfp_reset,
#formBox .mfp_buttons #button_mfp_goconfirm,
#mfp_buttons input {
    border: none;
}

#formBox .hissu {
    color: #cc0000;
}

#formBox .subTitle{
    font-weight: bold;
}
#formBox .notes{
    color:#888;
}

#form_thanks #formBox {
    padding: 30px 50px 50px;
}

#form_thanks #formBox {
    padding: 50px;
    width: 700px;
    margin: 0px auto;
}

#form_thanks #formBox .lead {
    margin-bottom: 36px;
}

#form_thanks .thanks {
    border: 4px double #367912;
    padding: 30px;
    text-align: center;
    margin-bottom: 20px;
}

#form_thanks #formBox .thanks em {
    display: block;
    color: #367912;
    font-size: 1.6em;
    font-weight: bold;
    line-height: 120%;
    margin-bottom: 10px;
}

#form_thanks #formBox h4 {
    font-size: 1.4em;
    margin-bottom: 8px;
}

#form_thanks #formBox table {
    border-collapse: collapse;
    border: 1px solid #CCC;
    width: 700px;
}

#form_thanks #formBox th {
    background-color: #F7F7F7;
    width: 200px;
}

#form_thanks #formBox th {
    font-weight: bold;
}

#form_thanks #formBox th,
#formBox td {
    border: 1px solid #CCC;
    padding: 1em;
    line-height: 1.4;
    vertical-align: middle;
}

#form_thanks #formBox td.tel em {
    font-size: 2em;
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
}

#ttl-page,
#ttl-cate {
    margin: 0 0 20px;
    padding: 18px;
    line-height: 1.3;
    background-color: #FFF;
    border: 1px solid #cbcbcb;
    border-radius: 10px;
}

#ttl-page span,
#ttl-cate span {
    text-align: center;
    font-size: 1.72em;
    display: block;
    font-weight: bold;
    line-height: 1.3;
}

#mfp_buttons ul {
    text-align: center;
}

#mfp_buttons ul li {
    display: inline-block;
}

@media screen and (max-width: 740px) {
    #formBox form#mailform,
    #contact .contact_about {
        width: auto;
    }
    #page #main #formBox {
        width: auto;
        margin: 30px 0 0 0;
        padding: 0;
        overflow: hidden;
    }
    #formBox form#mailform p {
        font-size: 11px;
        margin-bottom: 5px;
    }
    #ttl-page span,
    #ttl-cate span {
        font-size: 18px;
    }
    #formBox .lead h4,
    #formBox .lead table th,
    #formBox .lead table td {
        text-align: center;
    }
    #formBox td.tel em {
        font-size: 18px;
        display: block;
    }
    #formBox h4 {
        font-size: 15px;
    }
    #formBox form#mailform table {
        width: 100%;
        border: none;
        border-bottom: 1px #ccc solid;
    }
    #formBox form#mailform th,
    #formBox form#mailform td {
        display: block;
        width: auto;
    }
    #formBox form#mailform th {
        border-bottom: none;
        padding: 10px 15px;
    }
    #formBox form#mailform td {
        border-bottom: none;
        padding: 15px;
    }
    #formBox form#mailform input[type="text"],
    #formBox form#mailform textarea {
        box-sizing: border-box;
        margin-left: 0;
        margin-right: 0;
    }
    #formBox form#mailform input[type="text"].text1,
    #formBox form#mailform textarea {
        box-sizing: border-box;
        width: 100% !important;
        margin: 0;
    }
    #formBox form#mailform .form_ol li{
        margin-bottom: 0.8em;
    }
    #formBox form#mailform .form_ol li:last-child{
        margin-bottom: 0;
    }
    #formBox .notes{
        display: block;
        font-size: 14px;
        margin-top: 0.5em;
    }
    div.mfp_buttons {
        padding: 0;
    }
    div.mfp_buttons ul {
        width: auto;
        height: auto;
        text-align: center;
    }
    div.mfp_buttons ul li {
        float: none;
        display: inline-block;
    }
    div.mfp_buttons ul li input {
        padding: 0 !important;
        margin: 0 !important;
    }
    input#button_mfp_goconfirm {
        background: url(../images/mfp_goconfirm@2x.png)!important;
        background-size: 180px auto!important;
    }
    input:hover#button_mfp_goconfirm {
        background: url(../images/mfp_goconfirm@2x.png) 0 -60px!important;
        background-size: 180px auto!important;
    }
    input#button_mfp_reset {
        background: url(../images/mfp_reset@2x.png)!important;
        background-size: 180px auto!important;
    }
    input:hover#button_mfp_reset {
        background: url(../images/mfp_reset@2x.png) 0 -60px!important;
        background-size: 180px auto!important;
    }
    /*確認画面モーダル*/
    #formcaution_l,
    #formcaution_r {
        float: none;
        width: auto;
    }
    div#confirmWindow {
        z-index: 10000;
    }
    div#confirmBody {
        z-index: 10001;
        position: fixed;
        width: 100% !important;
        left: 0 !important;
        top: 0!important;
    }
    div#confirmBody div.mfp_title {
        width: auto;
        padding: 0;
        margin: 14px auto 7px auto;
    }
    div#confirmBody div.mfp_title img {
        width: 200px;
        height: auto;
    }
    li.confirm_top,
    li.confirm_bottom {
        display: none;
    }
    li.confirm_middle {
        background-image: none;
        background: #fff;
    }
    ul.confirm_layer,
    ul.confirm_layer li {
        width: auto;
        float: inherit;
        max-height: calc(100vh - 280px);
        overflow: scroll;
        -webkit-overflow-scrolling: touch;
        width: 90vw;
        border-radius: 5px;
        margin: auto;
    }
    table.infield,
    table.infield tbody,
    table.infield tr,
    table.infield tr th,
    table.infield tr td {
        display: block;
        width: auto;
        text-align: left;
        box-sizing: border-box;
    }
    table.infield tr th {
        font-weight: bold;
        background-color: #E8EEF9!important;
    }
    table.infield tr td p {
        border: none;
        padding: 5px 0px 5px 0;
    }
    table.infield tr th.mfp_color,
    table.infield tr td.mfp_color {
        background: none;
    }
    div.buttons {
        margin-top: 15px;
    }
    #mfp_buttons ul {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    #mfp_buttons ul li{
        margin: 0 auto;
        padding: 0;
    }
    #mfp_buttons ul li:nth-child(1) {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 2;
        -webkit-order: 2;
        order: 2;
    }
    #mfp_buttons ul li:nth-child(2) {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 1;
        -webkit-order: 1;
        order: 1;
    }
}