body {}

.article-body {
    font-size: 17px !important;
    font-family: Hiragino Sans, Arial, sans-serif !important;
    color: #000000 !important;
    line-height: 1.8 !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
}

body {
    .article-body {
        iframe {}

        img {
            display: unset !important;
            margin-top: 0px !important;
            margin-bottom: 0px !important;
        }

        video {
            display: unset !important;
        }

        .sb-custom {
            font-size: 17px !important;
            font-family: Hiragino Sans, Arial, sans-serif !important;
            color: #000000 !important;
            line-height: 1.8 !important;

            img {
                margin-top: 0px !important;
                margin-bottom: 0px !important;
            }
        }
    }
}

#sb-part-3392 {
    &.sb-custom-part-me2ju7zejtjmn14w6is {
        .box {
            /* 背景色 */
            background: #fffde7;
            /* ボーダー|太さ|タイプ|色| */
            border: solid 2px #ffd54f;
            border-radius: 5px;
            margin: 25px 0 25px 0;
            position: relative;
            padding: 0 20px;

            .ttl {
                color: #ffd54f;
                font-weight: bold;
                text-shadow:
                    #fff 3px 0px 0px,
                    #fff 2.83487px 0.981584px 0px,
                    #fff 2.35766px 1.85511px 0px,
                    #fff 1.62091px 2.52441px 0px,
                    #fff 0.705713px 2.91581px 0px,
                    #fff -0.287171px 2.98622px 0px,
                    #fff -1.24844px 2.72789px 0px,
                    #fff -2.07227px 2.16926px 0px,
                    #fff -2.66798px 1.37182px 0px,
                    #fff -2.96998px 0.42336px 0px,
                    #fff -2.94502px -0.571704px 0px,
                    #fff -2.59586px -1.50383px 0px,
                    #fff -1.96093px -2.27041px 0px,
                    #fff -1.11013px -2.78704px 0px,
                    #fff -0.137119px -2.99686px 0px,
                    #fff 0.850987px -2.87677px 0px,
                    #fff 1.74541px -2.43999px 0px,
                    #fff 2.44769px -1.73459px 0px,
                    #fff 2.88051px -0.838246px 0px;
                background: linear-gradient(0deg, #fffde7 0%, #fffde7 55%, rgba(0, 0, 0, 0) 55%, rgba(0, 0, 0, 0) 100%);
                position: relative;
                display: inline-block;
                top: -0.8em;
                left: -10px;
                padding: 0 10px;
                line-height: 1.5;
                margin: 0;
                margin-bottom: 10px;
                z-index: 1;
                box-sizing: border-box;

                &:after {
                    position: absolute;
                    display: inline-block;
                    top: calc(0.8em - 11px);
                    left: 0;
                    background: #ffffff;
                    content: "";
                    width: 100%;
                    height: 11px;
                    z-index: -1;
                }
            }

            .box_cont {
                padding: 0 0 20px;
                z-index: -2;
            }

            .box_cont_inner {
                margin: 0;
                padding: 0;
            }

            .box_list {
                padding: 0;
                margin: 0;
                bottom: 0;
                list-style-type: none;
                z-index: -2;
                box-sizing: border-box;
                max-width: 100%;

                li {
                    list-style-type: none;
                    padding-left: 2.25em;
                    padding-top: 0.25em;
                    padding-bottom: 0.25em;
                    position: relative;
                    margin: 0;
                    font-size: 15px;
                    line-height: 1.5em !important;
                    color: #333;
                    line-height: 22.5px;
                    font-weight: bold;

                    .red {
                      color: #ff0000;
                    }

                    &::before {
                      background: #3880ff;
                      color: #ffffff;
                      border-radius: 50%;
                      width: 1.5em;
                      height: 1.5em;
                      line-height: 1.5em;
                      text-align: center;
                      color: #333;
                      box-sizing: border-box;
                      left: 0.25em;
                      position: absolute;
                      transform: scale(0.8);
                      content: "";
                    }

                    &::after {
                      content: "";
                      background: url(../images/check.png) no-repeat center/ contain;
                      width: 0.9em;
                      height: 0.7em;
                      left: 0.55em;
                      top: 1em;
                      position: absolute;
                      transform: translateY(-50%);
                    }
                }
            }
        }
    }
}

#sb-part-20 {
    &.sb-custom-part-mdwx1hcubxbwar0sa {
        .buruburu {
            display: inline-block;
            animation: hurueru .3s infinite;
        }
    }
}

#sb-part-1812 {
    &.sb-custom-part-mbjhu09oi8ug7v7u5b,
    &.sb-custom-part-mbjhuudgr2c8f8quxd,
    &.sb-custom-part-mdwha1hs5gz10isaf3f {
        .balloon {
            width: 100%;
            margin: 1.5em 0;
            overflow: visible;
            display: flex;
            flex-direction: row;
        }

        .faceicon {
            flex-basis: 55px;
            flex-shrink: 0;
            align-self: flex-end;

            img {
                width: 55px;
                max-width: 55px;
                height: 55px !important;
                object-fit: cover;
                border: solid 3px #EFEFEF;
                border-radius: 50%;
                box-sizing: border-box;
            }
        }

        .outline-think {
            width: auto;
        }

        .think {
            display: inline-block;
            position: relative;
            margin: 0;
            padding: 12px;
            background-color: #EFEFEF;
            border-radius: 20px;
            margin-left: 50px;

            &::before {
                content: '';
                position: absolute;
                display: block;
                border-radius: 50%;
                background-color: #EFEFEF;
                left: -29px;
                top: 25%;
                width: 22px;
                height: 22px;
            }

            &::after {
                content: '';
                position: absolute;
                display: block;
                border-radius: 50%;
                background-color: #EFEFEF;
                left: -45px;
                top: 50%;
                width: 12px;
                height: 12px;
            }

            p {
                margin: 0;
                padding: 0;
                letter-spacing: -0.01em;
            }
        }
    }
}

#sb-part-1094 {
    &.sb-custom-part-me834hegzcrka6vlnyp,
    &.sb-custom-part-me834u51mrxn8rmr01o {
        .review {
            max-width: 580px;
            line-height: 1.5;
            margin: 0 auto;
            box-sizing: border-box;
        }

        .in {
            box-sizing: border-box;
            position: relative;
            padding: 12px;
            background: #fff;
            border-radius: 6px;
            border: 1px solid #ccc;
            box-shadow: 3px 3px #ffc7d3;
        }

        .speech-bubble {
            background-color: #ff7ba1;
            margin: 0 auto;
            padding: 10px;
            text-align: left;
            position: absolute;
            box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.3);
            border-radius: 6px;
            top: 0;
            left: 0;
            color: #fff;
            font-weight: 600;
            text-shadow: 1px 2px 3px #808080;
            letter-spacing: .05em;
            max-width: 100%;
            box-sizing: border-box;
            width: auto;

            &::after {
                content: "";
                position: absolute;
                box-shadow: rgba(0, 0, 0, 0.3) 2px 2px 2px;
                -moz-transform: rotate(45deg);
                -webkit-transform: rotate(45deg);
                bottom: -7px;
                left: 70%;
                border-color: #ff7ba1;
                border-width: 7px;
                border-style: solid;
            }

            p {
                margin: 0;
            }
        }

        .kuchikomi {
            margin: 12px 0;
        }
    }
}

#sb-part-2780 {
    &.sb-custom-part-mdwj0i7gv5hnr2to1u,
    &.sb-custom-part-lrrglytcyl3todnjtrm,
    &.sb-custom-part-mdwh0nn94zcz2nan8ci,
    &.sb-custom-part-mdzfjqimjnnb1eqans {
        .icon {
            position: relative;
            font-size: 21px;
            font-weight: bold;
            color: #ff6a6a;
            background: #fffff4;
            line-height: 1.4;
            padding: 11px 11px 11px 32px;
            border-top: dotted 1px gray;
            border-bottom: dotted 1px gray;

            &::before,
            &::after {
                content: "";
                position: absolute;
                display: block;
                top: 50%;
                transform: translateY(-50%);
            }

            &::before {
                position: absolute;
                width: 19px;
                height: 19px;
                border-radius: 50%;
                background: #ff6a6a;
                left: 5px;
            }

            &::after {
                left: 5px;
                width: 6px;
                height: 6px;
                border-top: 2px solid #fff;
                border-right: 2px solid #fff;
                transform: rotate(45deg) translateY(-65%);
            }
        }
    }
}

#sb-part-44 {
    &.sb-custom-part-mdzd4pwg9cc5hkbhhw {
        .flash {
            animation: flash 1s ease infinite alternate;
            display: flex;
            /*左寄せは flex-start、真ん中寄せはcenter*/
            justify-content: center;
        }
    }
}

#sb-part-3477 {
    &.sb-custom-part-mdzfgmk8kdqj6hn89yr {
        .puyoBtn__area {
            width: 500px;
            max-width: 95%;
            height: auto;
            margin: 30px auto;

            .btn {
                display: block;
                width: 100%;
                height: auto;

                img {
                    width: 100%;
                    height: auto;
                    animation: puyoBtn 1.6s ease-in infinite;
                }
            }
        }
    }
}

#sb-part-13728 {
    &.sb-custom-part-mdwnrhba5edauxca5iv {
        .partition__area {
            position: relative;
            height: 1em !important;
            z-index: 0;

            .partition {
                width: calc(100% + 40px);
                max-width: calc(100% + 40px);
                height: 1em !important;
                position: absolute;
                top: 0;
                left: -20px;
                background: #f4f4f4;
            }
        }
    }
}

@keyframes hurueru {
    0% {
        transform: translate(0px, 0px) rotateZ(0deg);
    }

    25% {
        transform: translate(2px, 2px) rotateZ(1deg);
    }

    50% {
        transform: translate(0px, 2px) rotateZ(0deg);
    }

    75% {
        transform: translate(2px, 0px) rotateZ(-1deg);
    }

    100% {
        transform: translate(0px, 0px) rotateZ(0deg);
    }
}

@keyframes flash {
    50% {
        opacity: 0;
    }
}

@keyframes puyoBtn {
    0% {
        transform: scale(1.09);
    }

    10% {
        transform: scale(1.09);
    }

    30% {
        transform: scale(1.01);
    }

    40% {
        transform: scale(1.01);
    }

    50% {
        transform: scale(1, 1.04);
    }

    60% {
        transform: scale(1.09);
    }

    70% {
        transform: scale(1.02);
    }

    100% {
        transform: scale(1.09);
    }
}