@media (min-width: 768px) {
    .input-img,
    .setsuiri,
    .line-1,
    .line-2,
    .line-3,
    .line-4,
    .top-block,
    .image-block {
        width: 768px;
    }
}

body {
    margin: 0;
    background-color: #d2b48c;
}

.input:before,
.result:before {
    /* background-attachment と background-size の併用はiOSでは不可 */
    /* background-image: url("images/background.jpg"); */
    content: "";
    display: block;
    position: fixed;
    top: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-size: cover;
    margin: 0 auto;
}

.result {
    position: relative;
}

p.date {
    display: none;
}

.input-form {
    text-align: center;
}

.setsuiri {
    z-index: 1;
    display: none;
}

.setsuiri > button {
    padding: 10px;
    color: #fff;
    background-color: #337ab7;
    border-color: #337ab7;
    border-radius: 4px;
}

.top-block,
.line-1,
.line-2,
.line-3,
.line-4,
.image-block,
.fruit-block,
.secret-image,
.secret-number,
.description,
.pointer,
.share {
    display: none;
}

.input-img,
.input-form,
.setsuiri,
.setsuiri > button,
.line-1,
.line-2,
.line-3,
.line-4,
.top-block,
.image-block,
.fruit-block,
.secret-image,
.pointer,
.secret-number,
.description,
.share,
.line-top,
.line-footer {
    position: absolute;
}

.line-top {
    top: 0;
}

.input-img > img,
.setsuiri > img,
.line-top,
.line-footer,
.line-1 > img,
.line-2 > img,
.line-3 > img,
.line-4 > img,
.top-block > img,
.image-block > img,
.fruit-block img,
.secret-image > img,
.description > img,
.share > img,
.b-line img,
.follow-instagram img,
.site img {
    width: 100%;
}

.top-background,
.image-background,
.secret-background,
.description-background {
    position: absolute;
    background-color: #eeeeee;
    opacity: 0.5;
    display: inline-block;
}

.secret-number {
    color: #5c3e26;
}

.secret-number span {
    display: inline-block;
}

.sns-box {
    position: absolute;
    z-index: 999;
    width: 40px;
    border-radius: 24px;
}

.sns-box > a {
    display: block;
    color: #fff;
    padding: .3em 0 .2em;
    text-align: center;
    font-size: 1.3em;
    text-decoration: none;
}

.b-facebook {
    background: #3b5998;
}

.b-twitter,
.follow-twitter {
    background: #55acee;
}

.b-hatena {
    background: #008fde;
}

.icon-hatenabook:before {
    content: "B!";
}

.b-pocket {
    background: #d3505a;
}

.b-line a,
.follow-instagram a,
.site a {
    padding: 0;
}
