@charset "UTF-8";
/* ------------------------------------------ reset ------------------------------------------ */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-style:normal;
    font-weight: normal;
    vertical-align: baseline;
    box-sizing:border-box;
    webkit-appearance:none;
}
ul {
    list-style:none;
    margin:0;
    padding:0;
}
img {
    vertical-align:middle;
    max-width : 100% ;
    height : auto ;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance: none;
}
a {
    text-decoration:none!important;
    color:#005bab;
    /* -webkit-tap-highlight-color:#9dc8d8; */
}
a:hover {
    opacity:0.9;
}
.down_arrow {
    display: block;
    width: 20px;
    height: 20px;
    border-top: solid 1px #333;
    border-right: solid 1px #333;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    margin: 0 auto;
  }
  .right_arrow{
    right: 14px;
    top: 39%;
    width: 12px;
    height: 12px;
    border-top: solid 2px#CAAD9B;
    border-right: solid 2px#caad9b;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
}
/* ------------------------------------------ base ------------------------------------------ */
html {
    font-size: 62.5%;
}
body {
    font-family: Avenir,'Helvetica neue',Helvetica,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',メイリオ,Meiryo,'ＭＳ Ｐゴシック',sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    line-height:1.5;
    -webkit-text-size-adjust: 100%;
    font-size: 1.5rem;
    background-color: #fff;
    box-sizing: border-box;
    margin: 0px auto !important;
    word-wrap: break-word;
    font-weight: 500;
    letter-spacing: 0.01em;
    color: #222222;
    font-feature-settings: "palt";
}
header.diagnose {
    background-color: #fff;
    width: 100%;
}

.diagnose_tit{
    text-align: center;
    font-size: 2.2rem;
    color: #caad9b;
    padding: 15px 0;
    background: #fff;
}
#diagnose{
    background-color: #e8e3dd;
}
.diagnose_contents{
    max-width: 1000px;
    margin: 0 auto;
    margin-top: 40px;
    padding-bottom: 10px;
}
h2.question{
    text-align: center;
    padding: 10px 0 0 0;
    line-height: 34px;
    height: 84px;
}
h2.question .q_eng{
    font-size: 1.2rem;
    display: block;
    color: #222;
    text-indent: 2px;
    line-height: 18px;
    height: 18px;
}
h2.question .q_num{
    display: block;
    font-size: 5rem;
    color: #caad9b;
    font-weight: 100;
    animation: flipIn 0.8s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
    line-height: 75px;
    height: 50px;
}
@media screen and (max-width: 750px) {
    h2.question .q_num{
        line-height: 50px;
    }
}
.progress{
    width: 96%;
    margin: 0 auto;
    display: flex;
}
.progress li{
    text-align: center;
    padding: 5px 0;
    vertical-align: middle;
}
.progress li:nth-child(1),
.progress li:nth-child(3) {
    width: 10%;
}
.progress li:nth-child(2) {
    width: 80%;
    position: relative;
}
.progress .start_num{
    font-size: 1.2rem;
}
.progress .end_num{
    font-size: 1.2rem;
}

progress {
    width: 100%;
    height: 2px;
    background-color: #fff;
    vertical-align: middle;
}

progress::-webkit-progress-bar {
    background-color: #fff;
}
progress::-webkit-progress-value {
    background-color: #caad9b;
    transition: 0.5s all ease-in-out;
}
progress::-moz-progress-bar {
    background-color: #caad9b;
}
progress::-ms-fill {
    background-color: #caad9b;
}
form {
    display: none;
    text-align: center;
    padding: 20px 0;
}
form p{
    font-size: 1.8rem;
    padding: 0 0 20px 0;
}
.diagnose_contents form button[type=button] {
    position: relative;
    width: 90%;
    height: 100px;
    overflow: hidden;
    margin: 10px auto;
    padding: 10px 77px 10px 20px;
    background-repeat: no-repeat;
    background-size: 25%;
    background-position: right center;
    background-color: #fff;
    box-shadow: 0px 0px 16px -6px rgba(0,0,0,0.2);
    border: solid 1px #e8e3dd;
    border-radius: 10px;
    font-size: 1.7rem;
    text-align: left;
    color: #222;
    cursor: pointer;
    transition: 0.5s all ease-in-out;
}
input[type=button]:hover {background:#fff;color:#000;cursor:pointer}
input[type=button]:focus {background:#6c6;color:#fff}
#q01 button[name="1"] { background-image: url(../../img/diagnose/01a.png);}
#q01 button[name="2"] { background-image: url(../../img/diagnose/01b.png);}
#q03 button[name="1"] { background-image: url(../../img/diagnose/03a.png);}
#q03 button[name="2"] { background-image: url(../../img/diagnose/03b.png);}
#q04 button[name="1"] { background-image: url(../../img/diagnose/04a.png);}
#q04 button[name="2"] { background-image: url(../../img/diagnose/04b.png);}
#q05 button[name="1"] { background-image: url(../../img/diagnose/05a.png);}
#q05 button[name="2"] { background-image: url(../../img/diagnose/05b.png);}
#q06 button[name="1"] { background-image: url(../../img/diagnose/06a.png);}
#q06 button[name="2"] { background-image: url(../../img/diagnose/06b.png);}
#q07 button[name="1"] { background-image: url(../../img/diagnose/07a.png);}
#q07 button[name="2"] { background-image: url(../../img/diagnose/07b.png);}
#q08 button[name="1"] { background-image: url(../../img/diagnose/08a.png);}
#q08 button[name="2"] { background-image: url(../../img/diagnose/08b.png);}
#Q08 button[name="1"] { background-image: url(../../img/diagnose/08blu_a.png);}
#Q08 button[name="2"] { background-image: url(../../img/diagnose/08blu_b.png);}
#q09 button[name="1"] { background-image: url(../../img/diagnose/09a.png);}
#q09 button[name="2"] { background-image: url(../../img/diagnose/09b.png);}
#Q09 button[name="1"] { background-image: url(../../img/diagnose/09blu_a.png);}
#Q09 button[name="2"] { background-image: url(../../img/diagnose/09blu_b.png);}
#q12 button[name="1"] { background-image: url(../../img/diagnose/12a.png);}
#q12 button[name="2"] { background-image: url(../../img/diagnose/12b.png);}
#Q12 button[name="1"] { background-image: url(../../img/diagnose/12blu_a.png);}
#Q12 button[name="2"] { background-image: url(../../img/diagnose/12blu_b.png);}
#q13 button[name="1"] { background-image: url(../../img/diagnose/13a.png);}
#q13 button[name="2"] { background-image: url(../../img/diagnose/13b.png);}
#Q13 button[name="1"] { background-image: url(../../img/diagnose/13blu_a.png);}
#Q13 button[name="2"] { background-image: url(../../img/diagnose/13blu_b.png);}
#q14 button[name="1"] { background-image: url(../../img/diagnose/14a.png);}
#q14 button[name="2"] { background-image: url(../../img/diagnose/14b.png);}
#Q14 button[name="1"] { background-image: url(../../img/diagnose/14blu_a.png);}
#Q14 button[name="2"] { background-image: url(../../img/diagnose/14blu_b.png);}
  @keyframes flipIn {
    0% {
        transform: rotateY(-90deg);
        -moz-transform: rotateY(-90deg);
        -webkit-transform: rotateY(-90deg);
        -o-transform: rotateY(-90deg);
        -ms-transform: rotateY(-90deg);
    }
    100%{
        transform: rotateY(0deg);
        -moz-transform: rotateY(0deg);
        -webkit-transform: rotateY(0deg);
        -o-transform: rotateY(0deg);
        -ms-transform: rotateY(0deg);
    }
  }
  .diagnose_contents form button[type=button]:hover {
    animation: bounce 0.5s ease-out forwards;
  }
  @keyframes bounce {
    0%{
        transform: scale(1.0);
      }
      30%{
        transform: scale(0.95);
      }
      100%{
        transform: scale(1.0);
        background-color: #fdecd7;
      }

  }

button.goBack{
    position: relative;
    display: block;
    width: 90%;
    margin: 20px auto;
    padding: 20px;
    border-radius: 5px;
    background: #F6F6F6;
    text-align: center;
    border: none;
    color: #222;
    font-size: 1.6rem;
    display: none;
}
button.goBack::before{
    content: '';
    display: block;
    position: absolute;
    left: 14px;
    top: 39%;
    width: 12px;
    height: 12px;
    border-top: solid 2px#666;
    border-right: solid 2px#666;
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
}
#complete{
      width: 90%;
      margin:  0px auto;
      text-align: left;
}
#complete > h3.error{
    text-align: center;
    font-size: 1.8rem;
    padding: 0 0 70px 0;
}

.errorBtn {
    display: block;
    position: relative;
    width: 250px;
    overflow: hidden;
    margin: 50px auto;
    padding: 30px;
    background-color: #fff;
    border-radius: 7px;
    font-size: 1.8rem;
    text-align: center;
    color: #222;
    cursor: pointer;
}

/* ------------------------------------------ タブレット(ipad)  ------------------------------------------ */
@media screen and (min-width: 540px){
    body{
        background-color: #e8e3dd;
    }
    .diagnose_contents form button[type=button] {
        width: 35%;
        height: 100px;
        margin: 20px;
        padding: 30px 0 200px 0px;
        background-size: 50%;
        background-position: bottom 10px center;
        font-size: 1.8rem;
        text-align: center;
    }
    #q02 button, #q10 button, #Q10 button, #q11 button, #Q11 button { line-height: 150px;}
    #q12 button, #q13 button, #Q13 button { background-position: bottom -10px center;}
    @keyframes bounce {
        0%{
            transform: scale(1.0);
          }
          30%{
            transform: scale(0.99);
          }
          100%{
            transform: scale(1.0);
            background-color: #fdecd7;
        }
      }
      #complete{
        text-align: center;
    }
    button.goBack{
        width: 300px;
    }
}

/* ------------------------------------------ タブレット（ipad pro 10.5） ------------------------------------------ */
@media screen and (min-width: 834px) {

}
/* ------------------------------------------ PC  ------------------------------------------ */
@media screen and (min-width: 1024px) {
    h2.question{
        text-align: center;
        padding: 10px 0 0 0;
        line-height: 45px;
        height: 130px;
    }
    h2.question .q_eng{
        font-size: 1.7rem;
        text-indent: 2px;
    }
    h2.question .q_num{
        font-size: 8rem;
        font-weight: 100;
    }
    .progress li:nth-child(1),
    .progress li:nth-child(3) {
        width: 5%;
    }
    .progress li:nth-child(2) {
        width: 90%;
        position: relative;
    }
    form p{
        font-size: 2.8rem;
        padding: 10px 0 30px 0;
    }

    .right_arrow2{
        right: 8px;
        top: 49%;
    }
}
/* ------------------------------------------ タブレット(ipad mini)  ------------------------------------------ */
@media screen and (max-width: 768px) and (min-width: 415px){

}
/* ------------------------------------------ iPhone 5 & SE ------------------------------------------ */
@media screen and (max-width: 320px) and (device-aspect-ratio: 40/71) {
}
