#group {
    background: url("../img/grand/s10_bg.jpg");
}

#group #sec9 {
    position: relative;
}

#group #sec9::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 800px;
    width: 100%;
    z-index: 2;
    background: url("../img/grand/line.png") repeat-x top, url("../img/grand/s9_deco.png") no-repeat top center;
}

#group #sec9 .slide {
    height: 800px;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
}

#group #sec9 .slide p.img1,
#group #sec9 .slide .img2 {
    height: 800px;
}

#group #sec9 .slide .img1 {
    background: url("../img/grand/s9_js.jpg") no-repeat center/cover;
}

#group #sec9 .slide .img2 {
    background: url("../img/grand/s9_js_2.jpg") no-repeat center/cover;
}

#group #sec9 .wrap {
    z-index: 3;
}

#group #sec9 .box .sub-txt {
    text-align: center;
    margin-top: 10px;
}

#sec9 p.sub-txt2 {
    position: absolute;
    top: 810px;
    right: -165px;
}

#group #sec9 .box {
    margin: 0 auto;
    width: 753px;
    background: url("../img/grand/s9_bg.jpg");
    padding: 38px 53px 43px 65px;
    box-sizing: border-box;
}

#group #sec9 .box dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-bottom: 1px solid #000;
    font-size: 30px;
    line-height: 1.5;
    padding-left: 3px;
    letter-spacing: 0.2em;
    padding-bottom: 9px;
}

#group #sec9 .box dl small {
    font-size: 20px;
}

#group #sec9 .box p.txt {
    margin-top: 17px;
    margin-bottom: 20px;
    letter-spacing: 0;
    line-height: 2.1;
    text-align: justify;
}

#group #sec9 .box .btn {
    text-align: center;
}

#group #sec10 {
    padding-bottom: 68px;
    background: url("../img/grand/s10_deco.png") no-repeat bottom center;
}

#group #sec10 h2,
#group #sec10 h2+.txt {
    text-align: center;
}

#group #sec10 h2+.txt {
    margin: 14px 0 39px;
}

#group #sec10 .group {
    position: relative;
    padding-top: 97px;
}

#group #sec10 .group .box {
    background: url("../img/grand/s10_line_1.jpg") repeat-x top, url("../img/grand/s10_line_2.jpg") repeat-x bottom, #f4ede0;
    padding: 37px 47px 41px 41px;
    width: 329px;
    position: relative;
    margin-bottom: 49px;
    z-index: 2;
    margin-left: -43px;
}

#group #sec10 .group .box dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    line-height: 1.5;
    font-size: 30px;
    border-bottom: 1px solid #000;
    letter-spacing: 0.1em;
    padding-bottom: 3px;
}

#group #sec10 .group .box dl small {
    font-size: 20px;
}

#group #sec10 .group .box p.sub-txt {
    line-height: 1.5;
    margin-top: 3px;
    padding-left: 2px;
    letter-spacing: 0.1em;
    text-align: justify;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

#group #sec10 .group .box p.sub-txt small {
    font-size: 22px;
    letter-spacing: 0.2em;
}

#group #sec10 .group .box p.sub-txt+dl {
    margin-top: 15px;
}

#group #sec10 .group .box dl,
#group #sec10 .group .box .red {
    color: #bb010a;
}

#group #sec10 .group .box h4 {
    font-size: 20px;
    margin-top: 28px;
    letter-spacing: 0em;
    line-height: 1.5;
    margin-bottom: 3px;
}

#group #sec10 .group .box h4+.txt {
    line-height: 2.25;
    padding-left: 3px;
}

#group #sec10 .group .btn {
    text-align: center;
}

#group #sec10 .group .group-img {
    position: absolute;
    top: 0;
    z-index: 1;
    right: -167px;
}

#group #sec10 .group .group-img p.sub-txt {
    padding-left: 119px;
    margin-top: 8px;
}

#group #sec10 .group .box1 {
    position: absolute;
    right: -1px;
    bottom: 40px;
    z-index: 3;
    width: 248px;
    height: 248px;
    background: url("../img/grand/s11_bg.png") no-repeat center/cover;
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    text-align: center;
}

#group #sec10 .group .box1 h4 {
    font-size: 27px;
    line-height: 1.5;
}

#group #sec10 .group .box1 p.txt {
    font-size: 20px;
}

#sec11 {
    padding-bottom: 82px;
    background: url("../img/grand/s11_deco.png") no-repeat bottom center, url("../img/grand/s11_bg.jpg");
}

#sec11 h2,
#sec11 h2+.txt {
    text-align: center;
}

#sec11 h2+.txt {
    margin: 5px 0 36px;
    color: #fff;
}

#sec11 .group {
    position: relative;
    /* padding-top: 54px; */
}

#sec11 .group .box {
    background: url("../img/grand/s10_line_1.jpg") repeat-x top, url("../img/grand/s10_line_2.jpg") repeat-x bottom, #f4ede0;
    padding: 56px 48px 45px 41px;
    width: 329px;
    position: relative;
    margin-bottom: 54px;
    z-index: 2;
    margin-right: -47px;
    margin-left: auto;
}

#sec11 .group .box dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    line-height: 1.5;
    font-size: 30px;
    border-bottom: 1px solid #000;
    letter-spacing: 0.2em;
}

#sec11 .group .box dl small {
    font-size: 20px;
}

#sec11 .group .box p.sub-txt {
    line-height: 1.5;
    margin-top: 5px;
    letter-spacing: 0.1em;
}

#sec11 .group .box p.sub-txt small {
    font-size: 22px;
    letter-spacing: 0.2em;
}

#sec11 .group .box p.sub-txt+dl {
    margin-top: 13px;
}

#sec11 .group .box dl,
#sec11 .group .box .red {
    color: #bb010a;
}

#sec11 .group .box .txt {
    line-height: 2.15;
    margin-top: 26px;
    padding-left: 3px;
    line-height: 2.3;
}

#sec11 .group .group-img {
    position: absolute;
    top: 24px;
    z-index: 1;
    left: -163px;
}

#sec11 .group .group-img p.sub-txt {
    padding-left: 162px;
    margin-top: 8px;
    color: #fff;
}

#sec11 .btn {
    text-align: center;
}

#sec11 .group1 {
    position: relative;
    margin-bottom: 42px;
}

#sec11 .group1 .box1 {
    width: 300px;
    height: 298px;
    background: url("../img/grand/s11_bg.png") no-repeat center/cover;
    border-radius: 50%;
    margin-left: -23px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    text-align: center;
}

#sec11 .group1 .box1 h4 {
    font-size: 27px;
    line-height: 1.5;
}

#sec11 .group1 .box1 p.txt {
    font-size: 20px;
}

#sec11 .group1 .image1 {
    position: absolute;
    z-index: 1;
    top: -42px;
    left: 315px;
}

#sec11 .group1 .image1 p.txt1 {
    position: absolute;
    top: 21px;
    left: -1px;
    color: #fff;
    background: url("../img/grand/s11_bg_txt_1.png");
    height: 345px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 20px 7px 0 7px;
    line-height: 1.5;
    letter-spacing: 0.35em;
}

#sec11 .group1 .image1 p.txt1 span {
    padding-top: 19px;
    display: block;
}

#sec11 .group1 .image2 {
    position: absolute;
    z-index: 1;
    top: 98px;
    right: -134px;
}

#sec11 .group1 .image2 p.txt1 {
    position: absolute;
    top: -81px;
    left: 49px;
    color: #fff;
    background: url("../img/grand/s11_bg_txt_2.png");
    height: 345px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 24px 13px 0 13px;
    line-height: 1.5;
    letter-spacing: 0.35em;
}

#sec2 p.sub-txt {
    position: absolute;
    top: 10px;
    right: -11px;
    letter-spacing: 0.2em;
}

#sec3 {
    position: relative;
    background: url('../img/grand/s3_deco.png') no-repeat bottom center;
}

#sec3 .photo01 {
    z-index: 2;
    min-height: 480px;
    width: 100%;
    height: 480px;
    background: url("../img/grand/s3_para.jpg") no-repeat center/cover;
    background-attachment: fixed;
}

#sec8 .btn {
    text-align: center;
    margin-top: 63px;
}

@media screen and (max-width: 1450px) {
    #group #sec9 .box {
        margin-left: 50px;
        margin-right: 197px;
    }
    #sec9 p.sub-txt2 {
        right: -100px;
    }
}

@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
    #group #sec10 .group .box p.sub-txt {
        align-items: center;
    }
}