body {
 font-family: Helvetica, Arial, Verdana, sans-serif;
 font-size: 13px;
 line-height: 1.6;
 margin: 0;
 padding: 0;
 color: #333;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 font-feature-settings: "palt";
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol {
 font-size: 100%;
 font-weight: normal;
 font-style: normal;
 margin: 0;
 padding: 0;
 list-style-type: none;
}

a {
 color: #51257a
}

p.error,
span.important {
 font-size: 13px !important;
 font-weight: bold;
 padding: 0;
 color: #f00;
}

p.error {
 display: none;
}

div,
th,
td {
 box-sizing: border-box;
}

.disc li {
 list-style-type: disc;
 margin: 0 0 0 1.5em;
}

.pc {
 display: none;
}

img {
 max-width: 100%;
}

/* ----------btn---------- */

a.btn::before,
a.btn::after {
 position: absolute;
 z-index: -1;
 display: block;
 content: '';
}

a.btn,
a.btn::before,
a.btn::after {
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 box-sizing: border-box;
 -webkit-transition: all .3s;
 transition: all .3s;
}

a.btn {
 font-size: 140%;
 font-weight: 700;
 line-height: 60px;
 position: relative;
 display: block;
 height: 60px;
 margin: 0 5vw 12px 5vw;
 -webkit-transition: none;
 transition: none;
 text-align: center;
 text-decoration: none;
 color: #fff;
 border-radius: 100vw;
background: rgb(0,21,180);
background: -moz-linear-gradient(left, rgb(0,21,180) 0%, rgb(0,186,212) 100%);
background: -webkit-linear-gradient(left, rgb(0,21,180) 0%,rgb(0,186,212) 100%);
background: linear-gradient(to right, rgb(0,21,180) 0%,rgb(0,186,212) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0015b4', endColorstr='#00bad4',GradientType=1 );
}

a.btn.negative {
 background: #CCC !important;
 margin: 0 5vw 16px 5vw;
}

input.btn::before,
input.btn::after {
 position: absolute;
 z-index: -1;
 display: block;
 content: '';
}

input.btn,
input.btn::before,
input.btn::after {
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 box-sizing: border-box;
 -webkit-transition: all .3s;
 transition: all .3s;
}

input.btn {
 font-size: 140%;
 font-weight: 700;
 line-height: 60px;
 position: relative;
 display: block;
 height: 60px;
 margin: 0 5vw 12px 5vw;
 -webkit-transition: none;
 transition: none;
 text-align: center;
 text-decoration: none;
 color: #fff;
 border-radius: 100vw;
background: rgb(0,21,180);
background: -moz-linear-gradient(left, rgb(0,21,180) 0%, rgb(0,186,212) 100%);
background: -webkit-linear-gradient(left, rgb(0,21,180) 0%,rgb(0,186,212) 100%);
background: linear-gradient(to right, rgb(0,21,180) 0%,rgb(0,186,212) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0015b4', endColorstr='#00bad4',GradientType=1 );
border-style: none;
width: 90vw;
}

input.btn.negative {
 background: #CCC !important;
 margin: 0 5vw 16px 5vw;
}

div.btn {
 padding: 16px 0 0;
 text-align: center;
}

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

/* ----------input---------- */
#form input {
 box-sizing: border-box;
 vertical-align: middle;
}



/* ----------footer---------- */

footer {
 padding: 5vw;
 background: #FFF;
 position: relative;
}

/* ----------custom---------- */

header {
    background: #003595;
    padding: 10vw 0 10vw 0;
    display: block;
}


.logo {
 padding: 0 0 0 5vw;
}

.logo img {
 width: 25vw;
}

.lead {
 margin: 5vw auto 0 auto;
 padding: 1.5em;
}

.lead p:nth-of-type(n+2) {
 margin: 1em 0 0 0;
}

.lead p.note {
 font-size: 12px;
 margin: 1.5em 0 0 0;
 line-height: 1.2;
}

h1 {
    color: #013595;
    font-size: 4vw;
    text-align: center;
    padding: 5vw 0 0 0;
    color: #FFF;
}


#form h2 {
 font-weight: 700;
 font-size: 14px;
 background: #EEE;
 padding: 5vw 5vw;
}

#form h3 {
 font-weight: 700;
 font-size: 14px;
 padding: 5vw 5vw;
 background: #d0def8;
}

#form h3 strong {
 background: #fff4ce;
}

#form h3 span.num {
 color: #999;
 margin: 0 8px 0 0;
}

span.note {
 font-weight: 400;
 font-size: 11px;
 line-height: 1.2 !important;
}

#form select,
#form input.text,
#form textarea.text,
p.ptext {
    margin: 5vw;
}

p.error {
    margin: 5vw 5vw 0 5vw;
}

#form li {
 position: relative;
 vertical-align: middle;
 border-bottom: 1px solid #EEE;
}

#form ul.answer {
 margin: 0;
 padding: 0;
 list-style-type: none !important;
}

#form .answer li {
 margin: 0;
 padding: 5vw;
 list-style-type: none !important;
}


#form li label {
 display: block;
 width: 100%;
 box-sizing: border-box;
 padding: 4vw 5vw;
}

#form li label:hover {
}

.disabled td {
 background: #EEE;
}

.sp_hidden {
 display: none;
}

.checked {
 background: #eef8ff;
}

.answer {
 padding: 5vw;
}

.answer_num {
 display: inline-block;
 font-size: 18px;
 font-weight: 700;
 background: #eef8ff
}

.link a {
 margin: 0 4vw;
 display: block;
 padding: 3vw;
 background: #013595;
 text-decoration: none;
 color: #FFF;
 text-align: center;
 border-radius: 4px;
 font-size: 140%;
}

.email {
 border: 1px solid #ccc;
 font-size: 140%;
 padding: 8px;
 width: 90vw;
 margin: 3vw 5vw;
 border-radius: 4px;
 box-sizing: border-box;
}

.text {
 border: 1px solid #ccc;
 font-size: 140%;
 padding: 8px;
 border-radius: 4px;
 box-sizing: border-box;
 /* text-align: right; */
 font-weight: 700;
 margin: 0 8px 0 0;
}

.storeinput {
 width: 90vw;
}

.q9_no_required {
  padding: 5vw;
}

#form textarea.text {
    width: 90vw;
}

#form h2.category {
    background-color: #013595;
    color: #FFF;
}
