@charset "utf-8";
/* -----------------------------------------------
    なないろ生命 デジタルパンフレットLPフォーム部分
----------------------------------------------- */

/* フォームエリア
------------------------------------------------------------ */
.formArea {
    margin: 40px auto 20px;
    font-size: 16px;
}
.formArea a {
    text-decoration: underline;
}
.form_info {
    margin: 0 0 20px;
    padding: 20px;
    background: #fa5757;
    color: #fff;
    font-weight: bold;
    font-size: 18px;
}

/* 個人情報保護 */
.policy-area {
    margin:0 auto 20px;
    padding:0 10px;
    box-sizing:border-box;
    border:2px solid #cc0000;
    width:90%;
    height:120px;
    overflow:auto;
    line-height:1.6;
}
.policy-area .policy-container {
    padding:10px 0;
    font-size:12px;
    word-break:break-all;
}
.policy-container .policy-main-heading {
    margin:0 0 10px 0;
    font-weight:bold;
}
.policy-container .policy-heading {
    margin:15px 0 0 0;
    font-weight:bold;
}
.policy-container table {
    margin:0 0 10px 0;
    border-top:1px solid #999;
    border-left:1px solid #999;
}
.policy-container th,
.policy-container td{
    padding:5px;
    border-bottom:1px solid #999;
    border-right:1px solid #999;
}
.policy-container .column1 {
    word-break:normal;
}
.policy-container .policy-attention {
    padding:10px;
    border-top:1px solid #ccc;
}
.policy-container dd {
    margin:0 0 5px 0;
}
.policy-container .responsibility {
    text-align:right;
}
.form_head {
    margin:0 auto;
    padding:10px 0 20px;
    text-align:center;
}

/* form_box
------------------------------------------------------------ */
.form_box{
    overflow:hidden;
    margin:0 auto;
    padding:0 0 27px;
}
.form_box p.txt{
    margin:0 0 4px;
    color:#c03232;
    font-weight:bolder;
    font-size:1.2em;
    text-align:center;
}
.form_box p.txt .br:before{
    content:"\A";
    white-space:pre;
}
.form_box dl{
    margin:0 0 5px;
}
.form_box dl dt{
    margin:0 0 10px;
    padding:10px 10px 8px;
    background:#b0aeae;
    background:linear-gradient(to right, #b0aeae 0%, #f0f0ef 100%);
    font-size:1.2em;
}
.form_box dl dt .title_wrap{
    display:table;
}
.form_box dl dt .title_wrap .title,
.form_box dl dt .title_wrap .must,
.form_box dl dt .title_wrap .option{
    display:table-cell;
    color:#fff;
    font-weight:bold;
    vertical-align:middle;
}
.form_box dl dt .title_wrap .must,
.form_box dl dt .title_wrap .option{
    padding:0 0 0 10px;
    text-align:right;
}
.form_box dl dt .title_wrap .must span,
.form_box dl dt .title_wrap .option span{
    display:inline-block;
    padding:2px 5px;
    border-radius:4px;
    background:#fa5757;
    font-size:0.833em;
    text-align:center;
    white-space:nowrap;
}
.form_box dl dt .title_wrap .option span{
    background:#999;
}
.form_box dl dd{
    display:block;
    margin:0 auto;
    padding:10px 0 5px;
    width:75%;
}
.form_box dl dd::after{
    display:block;
    content:"";
    visibility:hidden;
    height:0;
    clear:both;
}
.form_box dl dd input,
.form_box dl dd select{
    outline:none;
}
.form_box .placeholder{
    color:#b7b7b7;
}
.form_box dl dd input[type="text"],
.form_box dl dd input[type="email"],
.form_box dl dd input[type="tel"],
.form_box dl dd select,
.form_box dl dd .gender_area{
    border:1px solid #9b9b9b;
}
.form_box dl dd input[type="text"],
.form_box dl dd input[type="email"],
.form_box dl dd input[type="tel"]{
    padding:6px 11px;
    width:48%;
    border-radius:4px;
    box-sizing:border-box;
    font-size:1.167em;
    float:right;
}
.form_box dl dd input[type="tel"]{
    font-size:1em;
}
.form_box dl dd input.left{
    float:left;
}
.form_box dl dd input[type="text"].single,
.form_box dl dd input[type="email"].single,
.form_box dl dd input[type="tel"].tel{
    width:100%;
    float:none;
}
/* gender_area */
#digitalpamphletform-gender{
    margin:0 auto;
    padding:0 10px;
    max-width:300px;
    border-radius:35px;
    box-shadow:1px 1px 3px #c0c0c1 inset;
    border:1px solid #959799;
    text-align:center;
}
#digitalpamphletform-gender label{
    display:inline-table;
    position:relative;
    overflow:hidden;
    padding:8px 0;
    width:48%;
    max-width:105px;
    font-size:1.2em;
    text-align:center;
    cursor:pointer;
}
#digitalpamphletform-gender label:first-child{
    border-right:1px solid #ccc !important;
}
/* error_wrap */
.form_box .error_wrap{
    display:block;
    margin:0 auto;
    padding:0 0 10px;
    width:75%;
}
.form_box .error_wrap::after{
    display:block;
    content:"";
    visibility:hidden;
    height:0;
    clear:both;
}
.form_box .error_wrap div{
    float:left;
    color:#c03232;
    font-size:0.875em;
}
/* btn_confirm */
.form_box .btn_confirm{
    padding:15px 0 0;
    clear:both;
}
.form_box .btn_confirm button{
    display:block;
    margin:0 auto;
    padding:10px 20px;
    border:1px solid #fff;
    border-radius:50px;
    background:#f97272;
    background:linear-gradient(to bottom, #f97272 1%,#da4848 49%,#da4848 49%,#b60f0f 50%,#ca3636 100%);
    filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#f97272', endColorstr='#ca3636',GradientType=0 );
    box-shadow:rgba(41, 43, 46, 0.25) 0px 1px 5px 2px;
    color:#fff;
    font-weight:bold;
    font-size:1.4em;
    text-shadow:#660000 1px 1px 1px;
    cursor:pointer;
    outline: none;
}

/* 生年月日 */
.form_box dl dd select{
    color: #545558;
    padding: 5px;
    margin: 0 0 0 3px;
    width: 70px;
    float: left;
    background:-webkit-gradient(linear, left top, left bottom, from(#fff), to(#e4e4e5));
    background:-webkit-linear-gradient(top, #fff, #e4e4e5);
    background:linear-gradient(to bottom, #fff, #e4e4e5);
    -webkit-box-shadow : 1px 1px 2px #e4e4e5;
    box-shadow : 1px 1px 2px #e4e4e5;
    border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}
.form_box dl dd select:first-child{
    width: 114px;
    margin: 0;
}

/* メール配信確認
----------------------------------------------*/
.accept_mail {
    padding: 15px;
    margin: 15px 0;
}

.accept_mail p {
    font-size: 12px;
    margin-left: 25px;
}

@media screen and (min-width:768px){
    .accept_mail {
        border: 1px solid #9B9B9B;
    }
}