@charset "utf-8";
.wrap {
    background: url(../images/singlepage_bg.png) no-repeat center top;
}

#page_personalinfo .wrap,
#page_disclaimer .wrap {
    padding-bottom: 270px;
}

@media(max-width: 767px) {
    .wrap {
        background: url(../images/singlepage_bg_sp.png) repeat-y center top;
        background-size: 100%;
    }
    #page_personalinfo .wrap,
    #page_disclaimer .wrap {
        background: url(../images/singlepage_bg_sp.png) repeat-y center top;
        padding-bottom: 120px;
    }
}

.policy_inner {
    max-width: 830px;
    margin: 0 auto;
    position: relative;
    z-index: 10;
    padding: 0 20px;
}

.policy_head {
    position: relative;
    background: url(../images/policy_head_bg2.png) repeat-y 0 0;
    background-size: 100%;
    margin: 50px 0 130px;
}

.policy_head:before,
.policy_head:after {
    content: '';
    display: block;
    height: 50px;
    position: absolute;
    left: 0;
    width: 100%;
}

.policy_head:before {
    background: url(../images/policy_head_bg1.png) no-repeat 0 0;
    background-size: 100%;
    top: -50px;
}

.policy_head:after {
    background: url(../images/policy_head_bg3.png) no-repeat left bottom;
    background-size: 100%;
    bottom: -50px;
}

.policy_head_inner h2 {
    font-family: YakuHanJP, 'Noto Sans JP', "ヒラギノ角ゴ Pro W5", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #34B0ED;
    font-weight: 400;
    font-size: 20px;
    margin: 0 0 50px;
    letter-spacing: 3px;
}

.policy_head_inner {
    margin-left: 6.5%;
    margin-right: 6.5%;
}

#page_disclaimer .policy_head p {
    text-align: center;
}

.policy_head_inner h2.extra {
    margin-top: 70px;
}

.privacypolicy_body {
    padding-bottom: 200px;
}

.privacypolicy_body dl {
    font-family: YakuHanJP, 'Noto Sans JP', "ヒラギノ角ゴ Pro W5", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #34B0ED;
    font-size: 16px;
    font-weight: 400;
    margin: 50px 0 40px;
    display: -webkit-flex;
    display: flex;
    letter-spacing: 2px;
}

.privacypolicy_body dt {
    margin-right: 15px;
    white-space: nowrap;
    position: relative;
}

.privacypolicy_body dt:after,
.policy_footer_inner h4 span:after,
.personalinfo_body p.blocktitle:after {
    content: '';
    display: block;
    width: 16px;
    height: 1px;
    background: #34B0ED;
}

.privacypolicy_body dt:after {
    transform: translateY(10px);
}

.sign {
    margin-top: 60px;
    text-align: right;
}

.sign p {
    margin-bottom: 2em;
}

.policy_footer {
    background: #000032;
    padding: 60px 0;
    text-align: center;
}

.policy_footer_inner {
    max-width: 830px;
    margin: 0 auto;
    padding: 0 20px;
}

.policy_footer_inner h4 {
    font-family: YakuHanJP, 'Noto Sans JP', "ヒラギノ角ゴ Pro W5", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #34B0ED;
    font-weight: 400;
    font-size: 20px;
    margin: 0 0 60px;
    letter-spacing: 3px;
}

.policy_footer_inner h4 span:after {
    margin: 0 auto;
    transform: translateY(20px);
}

.personalinfo_body p.blocktitle {
    font-family: YakuHanJP, 'Noto Sans JP', "ヒラギノ角ゴ Pro W5", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #34B0ED;
    font-weight: 400;
    font-size: 16px;
    margin: 60px 0 45px;
    letter-spacing: 2px;
    position: relative;
}

.personalinfo_body p.blocktitle:after {
    transform: translateY(10px);
}

.personalinfo_body p {
    margin-bottom: 2em;
}

.personalinfo_body p.subtitle {
    margin-bottom: 5px;
    text-indent: -0.25em;
}

.personalinfo_body p.mgnb05 {
    margin-bottom: 5px;
}

.personalinfo_body p.mgnb10 {
    margin-bottom: 10px;
}

.personalinfo_body li {
    margin: 0 0 5px;
}

.personalinfo_body ol {
    margin-left: 2.2em;
}

.personalinfo_body ul {
    margin-left: 2em;
    margin-bottom: 2em;
}

.personalinfo_body ul.alpha {
    margin-left: 2.5em;
    margin-bottom: 1em;
}

.personalinfo_body li {
    margin: 0 0 10px;
    position: relative;
    list-style: none;
    line-height: 1.6;
}

.personalinfo_body ul li span {
    position: absolute;
    top: 0;
    left: -1.5em;
}

.personalinfo_body ul.alpha li span {
    position: absolute;
    top: 0;
    left: -3.25em;
}

.personalinfo_body ol li span {
    position: absolute;
    top: 0;
    left: -2.7em;
}

@media(max-width: 767px) {
    .policy_head {
        margin-bottom: 80px;
    }
    .policy_head:before,
    .policy_head:after {
        height: 25px;
    }
    .policy_head:before {
        top: -25px;
    }
    .policy_head:after {
        bottom: -25px;
    }
    .policy_head_inner h2,
    .policy_footer_inner h4 {
        font-size: 18px;
    }
    .policy_head_inner h2 {
        margin: 0 0 40px;
    }
    .policy_head_inner {
        margin: 0 20px;
    }
    .privacypolicy_body dl {
        font-size: 15px;
        margin: 30px 0 25px;
    }
    .privacypolicy_body dl dd br {
        display: none;
    }
    .policy_footer {
        padding: 30px 0;
    }
    #page_disclaimer .policy_head_inner p {
        text-align: left;
    }
    #page_disclaimer .policy_head_inner p br {
        display: none;
    }
    .policy_head_inner h2.extra {
        margin-top: 40px;
    }
    .privacypolicy_body {
        padding-bottom: 120px;
    }
}

@media(max-width: 320px) {
    .policy_head_inner h2,
    .policy_footer_inner h4 {
        font-size: 16px;
    }
    .policy_head_inner {
        margin: 0 10px;
    }
}