@charset "utf-8";

#form_wrap{
    width:100%;
    position:relative;
}

/*---入力エリア--*/
input,textarea,select  {
    border:0;
    padding:1em 5em 1em 0.5em;
    color:#333;
    margin-left: 2em;
    border:solid 1px #ccc;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    text-align: left;
}

input:focus,textarea:focus,select:focus {
    border:solid 1px #329bd2;
}

input[type="file"]{
    border: none;
    padding-left: 0;
}




table#table_address td,
table#table_address th{border: none;}

/*form pageContact,Enquete common*/
/*-----------------------------------------------------------------------*/

#submit_button{
    clear:both;
    text-align:center;
    margin:2em 0 0;
    text-transform:uppercase;
    font-weight:bold;
    color:#FFF;
    cursor:pointer;
}

#submit_button input{
    width:180px;
    background-color: #4168d4;
    border:solid 1px #86b1c9;
    color:#FFF;
    padding:10px 0;
    cursor:pointer;
    font-size:120%;
    text-align: center;
}

#submit_button input:hover{
width:180px;
background-color:#0574db;
color:#fff;
}

/*form pageContact*/
/*-----------------------------------------------------------------------*/

#form_contact_main{
    overflow:hidden;
    width: 90%;
    margin-left: auto;
    margin-right: auto;  
    margin-top: 2em;  
}

#form_wrap{
    width:100%;
    margin-top: auto;
}

#form_main{
    margin-top: 2em;

}

#form_contact_main dl{
    width:100%;
    border-top:1px dotted #000;
    /*background-color:#f5f5f5;*/
    line-height:220%;
    display:flex;
    background-color: #eee;

}
#form_contact_main dl:first-child{border-top:none;}
#form_contact_main dt{
    width:30%;
    float:left;
    padding:2em 1em;
    background:#ccc;
    height: auto;
    display: table-cell;
}

#form_contact_main dt span{
font-weight:bold;
color:#FF0000;
}

#form_contact_main dd{
padding:1.75em 1em;
width:100%;
vertical-align: center;
display: table-cell;
}

.formtext{
    font-size: 1em;
    margin: 1em;1em;
}

#label{
    padding: 0 2em;
    width:100%;
    }


#privacy_txt{
    margin-left:30%;
    padding-left:10px;
    margin-top:10px;
}

#form_contact_main a{
color:#329bd2;
text-decoration:none;
}

#form_contact_main a:hover{
color:#329bd2;
text-decoration:underline;
}

.dd p{
    display: inline-flex;
    font-size: 1em;
}


/*form pageEnquete*/
/*-----------------------------------------------------------------------*/
#basic_information{
    border-bottom: 1px solid #adadad;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 1px;
    line-height: 1.4;
    margin-bottom: 25px;
    padding-bottom: 10px;
}

#form_enquetet_main{
    overflow:auto;
    margin-top: 30px;
}

#enquete_intro{
    border-bottom: 1px solid #adadad;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 1px;
    line-height: 1.4;
    margin-bottom: 25px;
    padding-bottom: 10px;
}

/*---
#form_enquetet_main dl{
    width:100%;
    border-top:1px dotted #ddd;
    /*background-color:#f5f5f5;
    line-height:220%;
    float:left;
}
#form_enquetet_main dl:nth-child(2){border-top:none;}
#form_enquetet_main dl.privacy{
margin-top:30px;
border-bottom:none;
}
#form_enquetet_main dt{
    float: left;
    padding: 30px 10px;
    width: 30%;
}
#form_enquetet_main dt span{color: #329bd2;}
#form_enquetet_main dd{
    float: left;
    padding: 30px 10px;
    width: 70%;
}
----*/
/*
#free_text{margin:20px 0 10px 0;}*/

/*form utility*/
/*-----------------------------------------------------------------------*/

.example_text{
margin-top:5px;
line-height:100%;
font-size:90%;
color:#999999;
}
/*
#family_name,#first_name,#family_name_yomi,#first_name_yomi{
width:120px;
margin-right:20px;
}

#zip01,#zip02{
width:60px;
}

#female{
margin-left:20px;
}

#table_address td{
padding:3px 0 3px 0;
}
span.break{
    padding-left:15px;
}

.width_cs{width:100%;}
.width_cm{width:100%;}
.width_cl{width:100%;}
.width_es{width:100%;}
.width_em{width:100%;}
.width_el{width:100%;}
.height_s{height:50px;}
.height_m{height:100px;}
.height_l{height:150px;}

*/
/*setting*/
/*-----------------------------------------------------------------------*/

.keywords_box{
margin-bottom:5px;
margin-right:6px;
float:left;
}


/*----エラー項目部分のハイライト----*/
    .dcms_error_area{
        background:#FFD7D7;
        position: relative;
    }
    p.error_text{
        display:none;
    }
    .dcms_error_area p.error_text{
        display: block;
        width: auto;
        /*float: left;*/
    }

    .dcms_error_area p.error_text span{
        background: #ff6666;display: inline-block;padding: 7px;
    }

/*----エラーテキストの吹き出し装飾用----*/
    #contact-form .dcms_error_area p.error_text{
        margin-top: 5px;
        color: #FFF;
        position: relative;
        /*アニメーションをつける場合*/
        -webkit-animation: dcms_fadein_up 0.8s 1;
        -moz-animation: dcms_fadein_up 0.8s 1;
        -ms-animation: dcms_fadein_up 0.8s 1;
         -o-animation: dcms_fadein_up 0.8s 1;
            animation: dcms_fadein_up 0.8s 1;
    }
    #contact-form .dcms_error_area p.error_text:before{
        content:"";
        width: 0px;
        height: 0px;
        position: absolute;
        text-align: left;
        top:-10px;
        left:10px;
        border: 5px solid transparent;
        border-bottom: 5px solid #FF6666;
        /*アニメーションをつける場合*/
        -webkit-animation: dcms_fadein_up 0.8s 1;
        -moz-animation: dcms_fadein_up 0.8s 1;
        -ms-animation: dcms_fadein_up 0.8s 1;
         -o-animation: dcms_fadein_up 0.8s 1;
            animation: dcms_fadein_up 0.8s 1;
    }

    /*アニメーションを設定する*/
    @-webkit-keyframes dcms_fadein_up {
        0% {  opacity:0; }
        100% { opacity:1;}
    }
    @-o-keyframes dcms_fadein_up {
        0% {  opacity:0; }
        100% { opacity:1;}
    }
    @-moz-keyframes dcms_fadein_up {
        0% {  opacity:0; }
        100% { opacity:1;}
    }
    @keyframes dcms_fadein_up {
        0% {  opacity:0; }
        100% { opacity:1;}
    }





/* screens smaller than 600---------------------------------------------------------- */
@media only screen and (max-width:690px) {
input,textarea,select  {
        border:0;
        padding:1em 4.5em 1em 0.25em;
        color:#333;
        margin-left: 0em;
        border:solid 1px #ccc;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        border-radius: 3px;
        text-align: left;
        overflow: auto;
    }    
#form_contact_main dl,
#form_enquetet_main dl{
    border-top:none;
    margin-bottom:1em;
    line-height: 1.6;
}
#form_contact_main dt,#form_contact_main dd,
#form_enquetet_main dt,#form_enquetet_main dd{
    width:;
    float:none;
    padding:0.5em 0;
}
#form_contact_main dt{
    width: 20%;
    padding: ;
    border-left: 0px #329bd2 solid;
    line-height: 1.5em;
    margin-bottom:0px;
    margin-top:0px;
    font-size: 0.9em;
    text-align: center;
}
#form_contact_main dd{
    padding:0.5em 1em;
    width:60%;
    vertical-align: center;
    display: table-cell;
    }
#privacy_txt{
    margin-left:0;
    padding-left:0;
    font-size:90%;
}

#table_address td{
    display: block;
}

span.break{
    display:block;
    padding-left:0;
}

input{
    widows: 30%;
}

input[type=radio],input[type=checkbox]{
    width:25px;
}
}

.slick-slide{height: auto !important;}



.privacy{
    padding-left: calc(10%);
}

@media only screen and (max-width:690px) {
    .privacy{
        padding-left: 0;
    }
}

.formflow{
    font-size: 0;
    text-align: center;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1em;
    margin-bottom: 1em;
    padding-bottom: 2em;
}

.formflow li{
    display: inline-block;
    width: 25%;
    text-align: center;
    font-size: 16px; 
    margin-right: 5%;
    position: relative;
}

.formflow li:last-child{margin-right: 0;}
.formflow li:last-child:after{display: none;}


.formflow li a{
    display: block;
    padding: 10px;
    cursor: pointer;
}
.formflow li.prev,
.formflow li.prev a{color: #333333;}
.formflow.last li.prev{padding: 10px;}
.formflow li.age{
    display: inline-block;
    color: #ffffff;
    padding: 0.75em;
}
.formflow li.next{
    display:inline-block;
    color: #ffffff;
    padding: 0.75em;
}

.check{
    font-size: 1em;
}

/* form contact */
/*-----------------------------------------------------------------*/
.formflow li:after {
    content: '';
    width: 10px;
    height: 10px;
    border: 0px;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: calc(50% - 5px);
    right: -25px;
  }
  
  .formflow li:after {
    border-top: solid 2px #329bd2;
    border-right: solid 2px #329bd2;
  }
  
  .formflow li.prev {
    background-color: #dddddd;
  }
  
  .formflow.last li.prev {
    padding: 10px;
  }
  
  .formflow li.age {
    background-color: #329bd2;
  }
  
  .formflow li.next {
    background-color: #ddd;
  }
  
@media only screen and (max-width:768px) {
    .formflow{width: 100%;}
    .formflow li{font-size: 13px;}
    .formflow li:after{
        right: -3vw;
        top: calc(50% - 5px);
        width: 10px;
        height: 10px;
    }
    .width_cs{width:100%;}
    .email_input{width:100%;}
}
/*-----------------------------------------------------------------*/
