/*font-family: "Shuei NijimiMin L";*/
#lp-sp-jpn{ overflow: hidden; background: #C8C3BD; color: #5A5A5A; font-family: "Shuei NijimiMin L";}
#lp-sp-jpn *{ box-sizing: border-box;}
#lp-sp-jpn .pc{ display: block;}
#lp-sp-jpn .sp{ display: none;}
#lp-sp-jpn .anchor{ position: relative; z-index: -1;}
#lp-sp-jpn .anchor:before{ display: block; margin-top: -67px; width: 100%; height: 67px; content: ""; vertical-align: top;}
#lp-sp-jpn figure{ margin: 0; padding: 0;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn{ overflow: hidden;}
    #lp-sp-jpn *{ box-sizing: border-box;}
    #lp-sp-jpn .pc{ display: none;}
    #lp-sp-jpn .sp{ display: block;}
    #lp-sp-jpn .anchor{ position: relative; z-index: -1;}
    #lp-sp-jpn .anchor:before{ display: block; margin-top: -18.4vw; width: 100%; height: 18.4vw; content: ""; vertical-align: top;}
}

#lp-sp-jpn .sec{ position: relative; margin: 0 auto; width: 1470px;}
#lp-sp-jpn .sec + .sec{ border-top: 3px solid #fff;}
#lp-sp-jpn .sec1{ padding: 95px 160px 190px;}
#lp-sp-jpn .sec2{ padding: 150px 160px 120px;}
#lp-sp-jpn .sec3{ padding: 210px 160px 240px;}
#lp-sp-jpn .sec4{ padding: 150px 160px 100px;}
#lp-sp-jpn .sec5{ padding: 210px 160px 230px;}
#lp-sp-jpn .sec6{ padding: 150px 160px 170px;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .sec{ margin: 0 auto; width: 86.4vw;}
    #lp-sp-jpn .sec + .sec{ border-top: 2px solid #fff;}
    #lp-sp-jpn .sec1{ padding: 4.8vw 0 37.33333333vw;}
    #lp-sp-jpn .sec2{ padding: 13.33333333vw 0;}
    #lp-sp-jpn .sec3{ padding: 16vw 0 42.66666667vw;}
    #lp-sp-jpn .sec4{ padding: 13.33333333vw 0;}
    #lp-sp-jpn .sec5{ padding: 17.33333333vw 0 37.33333333vw;}
    #lp-sp-jpn .sec6{ padding: 10.66666667vw 0;}
}

#lp-sp-jpn .lead{ color: #fff; white-space: nowrap; letter-spacing: .2em; font-size: 22px; line-height: 1.818181818;}
#lp-sp-jpn .sec1 .lead{ letter-spacing: .1em; font-size: 35px; line-height: 1.714285714;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .lead{ letter-spacing: .1em; font-size: 4.266666667vw; line-height: 2;}
    #lp-sp-jpn .sec1 .lead{ letter-spacing: .15em; font-size: 4.8vw; line-height: 1.666666667;}
}

#lp-sp-jpn h3{ display: flex; flex-direction: column; color: #fff; white-space: nowrap;}
#lp-sp-jpn h3 img{ width: 530px;}
#lp-sp-jpn h3 .line1{ padding: 0 0 0 145px; letter-spacing: .15em; font-size: 40px;}
#lp-sp-jpn h3 .line2{ margin: 1em 0 0; padding: 0 0 0 145px; letter-spacing: .03em; font-size: 24px;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn h3 img{ width: 74.13333333vw;}
    #lp-sp-jpn h3 .line1{ margin: -3.2vw 0 0; padding: 0 0 0 21.33333333vw; font-size: 6.4vw;}
    #lp-sp-jpn h3 .line2{ margin: 4vw 0 0; padding: 0 0 0 21.33333333vw; font-size: 2.933333333vw;}
}

#lp-sp-jpn .type1{ position: relative; margin: 70px 0 0; color: #fff;}
#lp-sp-jpn .type1 h3{ position: absolute; top: 50px; left: -210px;}
#lp-sp-jpn .type1 figcaption{ margin: 1.5em 0 0; letter-spacing: .2em; font-size: 22px; line-height: 2.272727273;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .type1{ margin: 10.66666667vw calc(50% - 50vw) 0;}
    #lp-sp-jpn .type1 h3{ top: 66.66666667vw; left: 6.933333333vw;}
    #lp-sp-jpn .type1 figcaption{ margin: 34.66666667vw 0 0; padding: 0 10.13333333vw; letter-spacing: .08em; font-size: 4vw; line-height: 2.4;}
}

#lp-sp-jpn .type2{ position: relative; display: flex; flex-direction: row-reverse; margin: 80px 0 0; color: #fff; align-items: flex-end;}
#lp-sp-jpn .type2 img{ width: 50%;}
#lp-sp-jpn .type2 figcaption{ position: relative; width: 50%; white-space: nowrap; letter-spacing: .06em; font-size: 15px; line-height: 2.333333333;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .type2{ margin: 26.66666667vw 0 0;}
    #lp-sp-jpn .type2 img{ width: 54.13333333vw;}
    #lp-sp-jpn .type2 figcaption{ position: absolute; bottom: -21.33333333vw; left: 0; padding: 0 0 0 3.2vw; width: 100%; letter-spacing: .03em; font-size: 3.2vw; line-height: 1.5;}
}

#lp-sp-jpn .sec2 h3{ position: absolute; top: 118px; left: calc(50% + 120px); z-index: 10;}
#lp-sp-jpn .sec2 h3 .line1{ margin: -20px 0 0; padding: 0 0 0 150px; font-size: 35px;}
#lp-sp-jpn .sec2 h3 .line2{ padding: 0 0 0 150px; font-size: 20px;}
#lp-sp-jpn .sec2 .lead1{ position: absolute; top: 330px; left: calc(50% + 120px); z-index: 10;padding: 0 0 0 150px; }

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .sec2 h3{ position: relative; top: auto; left: auto;}
    #lp-sp-jpn .sec2 h3 .line1{ margin: -2.666666667vw 0 0; padding: 0 0 0 18.66666667vw; font-size: 5.333333333vw;}
    #lp-sp-jpn .sec2 h3 .line2{ padding: 0 0 0 18.66666667vw; font-size: 3.2vw;}
    #lp-sp-jpn .sec2 .lead1{ position: relative; top: auto; left: auto; margin: 5.333333333vw 0 0; padding: 0 0 0 3.2vw;}
}

#lp-sp-jpn .type3{ position: relative; display: flex; align-items: flex-end; justify-content: space-between;}
#lp-sp-jpn .type3 .ri{ position: absolute; top: -60px; left: -160px; display: flex; width: 260px; height: 260px; border-radius: 100%; background: rgba(255,255,255,.33); color: #fff; text-align: center; letter-spacing: .15em; font-size: 28px; line-height: 1.433333333; align-items: center; justify-content: center;}
#lp-sp-jpn .type3 > img{ width: 750px;}
#lp-sp-jpn .type3 figcaption{ width: calc(100% - 780px);}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .type3{flex-direction: column;  margin: 9.333333333vw auto 0; width: calc(100% - 6.4vw); align-items: flex-start;}
    #lp-sp-jpn .type3 .ri{ top: -2.933333333vw; left: -8vw; width: 39.2vw; height: 39.2vw; letter-spacing: .1em; font-size: 4.8vw; line-height: 1.1;}
    #lp-sp-jpn .type3 > img{ width: 100%;}
    #lp-sp-jpn .type3 figcaption{ padding: 2em 0 0; width: 100%;}
}

#lp-sp-jpn h4{ letter-spacing: .1em; font-size: 18px; font-family: "Midashi Go MB1"; line-height: 1.5;}
#lp-sp-jpn h4 + p{ margin: 1em 0 0; letter-spacing: .1em; font-size: 14px; line-height: 2.142857143;}
#lp-sp-jpn h4 + p + p{ margin: .5em 0 0; letter-spacing: .1em; font-size: 14px; font-family: "Midashi Go MB1";line-height: 2.142857143; }
#lp-sp-jpn h4 + p + p a{ text-decoration: underline;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn h4{ font-size: 4.266666667vw;}
    #lp-sp-jpn h4 + p,
    #lp-sp-jpn h4 + p + p{ font-size: 3.2vw; line-height: 2;}
}

#lp-sp-jpn .lead2{ margin: 75px 0 0;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .lead2{ margin: 17.33333333vw 0 0; padding: 0 0 0 3.2vw;}
}

#lp-sp-jpn .list{ display: flex; margin: 0 -15px; flex-wrap: wrap;}
#lp-sp-jpn .list > li{ margin: 30px 0 0; padding: 0 15px; width: calc(100% / 3);}
#lp-sp-jpn .list > li.row2{ width: calc(100% / 3 * 2);}
#lp-sp-jpn .list figure ul{ display: flex; justify-content: space-between;}
#lp-sp-jpn .list figure ul > li{ width: calc(50% - 15px);}
#lp-sp-jpn .list h4{ margin: 1.5em 0 0;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .list{ flex-direction: column; margin: -2.666666667vw 0 0; padding: 0 14.4vw;}
    #lp-sp-jpn .list-reverse{ flex-direction: column-reverse;}
    #lp-sp-jpn .list > li{ margin: 0; padding: 10.66666667vw 0 0; width: 100%;}
    #lp-sp-jpn .list > li.row2{ width: 100%;}
    #lp-sp-jpn .list figure ul{ flex-direction: column;}
    #lp-sp-jpn .list figure ul > li{ margin: 1.6vw 0 0; width: 100%;}
}

#lp-sp-jpn .type4{position: relative; display: flex; flex-direction: row-reverse;  margin: 60px 0 0; align-items: flex-end; justify-content: space-between;}
#lp-sp-jpn .type4 > img{ width: 750px;}
#lp-sp-jpn .type4 figcaption{ width: calc(100% - 780px);}
#lp-sp-jpn .type4 .lead{ position: absolute; top: 95px; left: 253px;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .type4{flex-direction: column;  margin: 10.66666667vw calc(50% - 50vw) 0; align-items: flex-start;}
    #lp-sp-jpn .type4 > img{ width: 100%;}
    #lp-sp-jpn .type4 figcaption{ margin: 5.333333333vw 0 0; padding: 0 21.33333333vw; width: 100%;}
    #lp-sp-jpn .type4 .lead{ top: 10.66666667vw; left: 10.66666667vw;}
}

#lp-sp-jpn .btn1{ margin: 100px 0 0;}
#lp-sp-jpn .btn1 a{display: flex;  margin: 0 auto; width: 80%; height: 77.5px; background: rgba(255,255,255,.6); box-shadow: 4px 4px 4px #877332; letter-spacing: .15em; font-size: 18px; justify-content: center; align-items: center;}
#lp-sp-jpn .btn1 a:hover{ background: rgba(90,90,90,.6); color: #fff;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .btn1{ margin: 13.33333333vw 0 0; padding: 0 3.2vw;}
    #lp-sp-jpn .btn1 a{ width: 100%; height: 11.46666667vw; font-size: 3.2vw;}
}

#lp-sp-jpn .type5{ position: relative; display: flex; flex-direction: row-reverse; color: #fff; align-items: flex-end;}
#lp-sp-jpn .type5 h3{ position: absolute; top: 20px; left: -145px;}
#lp-sp-jpn .type5 > img{ width: 50%;}
#lp-sp-jpn .type5 figcaption{ width: 50%; letter-spacing: .2em; font-size: 22px; line-height: 2.272727273;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .type5{ flex-direction: column; align-items: flex-end;}
    #lp-sp-jpn .type5 h3{ position: relative; top: auto; left: auto;}
    #lp-sp-jpn .type5 > img{ margin: 8vw 0 0; width: 56.8vw;}
    #lp-sp-jpn .type5 figcaption{ margin: -26vw 0 0; padding: 0 3.2vw; width: 100%; white-space: nowrap; letter-spacing: .08em; font-size: 3.733333333vw; line-height: 2.357142857;}
}

#lp-sp-jpn .type6{ margin: 110px 0 0;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .type6{ margin: 12vw calc(50% - 50vw) 0;}
}

#lp-sp-jpn .type7{ position: relative; display: flex; margin: 110px 0 0; color: #fff;}
#lp-sp-jpn .type7 img{ width: 795px;}
#lp-sp-jpn .type7 figcaption{ position: absolute; right: -24px; bottom: 20px; letter-spacing: .06em; font-size: 15px; line-height: 2;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .type7{ flex-direction: row-reverse; margin: 24vw 0 0;}
    #lp-sp-jpn .type7 img{ width: 60.85866667vw;}
    #lp-sp-jpn .type7 figcaption{ right: auto; bottom: -32vw; left: 3.2vw; white-space: nowrap; letter-spacing: .03em; font-size: 3.2vw; line-height: 1.5;}
}

#lp-sp-jpn .sec4 h3{ position: absolute; top: 118px; left: calc(50% + 120px); z-index: 10;}
#lp-sp-jpn .sec4 h3 .line1{ margin: -20px 0 0; padding: 0 0 0 150px; font-size: 35px;}
#lp-sp-jpn .sec4 h3 .line2{ padding: 0 0 0 150px; font-size: 20px;}
#lp-sp-jpn .sec4 .lead1{ position: absolute; top: 330px; left: calc(50% + 120px); padding: 0 0 0 150px;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .sec4 h3{ position: relative; top: auto; left: auto;}
    #lp-sp-jpn .sec4 h3 .line1{ margin: -2.666666667vw 0 0; padding: 0 0 0 18.66666667vw; font-size: 5.333333333vw;}
    #lp-sp-jpn .sec4 h3 .line2{ padding: 0 0 0 18.66666667vw; font-size: 3.2vw;}
    #lp-sp-jpn .sec4 .lead1{ position: relative; top: auto; left: auto; margin: 5.333333333vw 0 0; padding: 0 0 0 3.2vw;}
    #lp-sp-jpn .sec4 .type3{ margin: 16vw 0 0;}
    #lp-sp-jpn .sec4 .type3 .ri{ top: -9.333333333vw; right: -6.4vw; left: auto;}
}

#lp-sp-jpn .sec4 .type4{ position: relative; display: flex; flex-direction: row-reverse; align-items: flex-end; justify-content: space-between;}
#lp-sp-jpn .sec4 .type4 > img{ width: 590px;}
#lp-sp-jpn .sec4 .type4 figcaption{ width: calc(100% - 620px);}
#lp-sp-jpn .sec4 .type4 .lead{ top: 50%; left: 126px; transform: translate(0,-50%);}
#lp-sp-jpn .sec4 .type4 + .list{ padding: 25px 0 0;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .sec4 .type4{flex-direction: column;  margin: 10.66666667vw calc(50% - 50vw) 0; align-items: flex-start;}
    #lp-sp-jpn .sec4 .type4 > img{ width: 100%;}
    #lp-sp-jpn .sec4 .type4 figcaption{ margin: 20px 0 0; padding: 0 21.33333333vw; width: 100%;}
    #lp-sp-jpn .sec4 .type4 .lead{ top: 13.33333333vw; left: 13.33333333vw; transform: none;}
    #lp-sp-jpn .sec4 .type4 + .list{ padding: 0 14.4vw;}
}

#lp-sp-jpn .sec5 .type1{ margin: 0;}
#lp-sp-jpn .sec5 .type1 h3{ top: 50px; left: calc(50% + 158px);}
#lp-sp-jpn .sec5 .type1 .lead{ position: absolute; top: 300px; left: calc(50% + 158px); padding: 0 0 0 145px;}
#lp-sp-jpn .sec5 .type2{ margin: 180px 0 0;}
#lp-sp-jpn .sec5 .type2 figcaption{ position: absolute; bottom: 30px; left: 50%; width: auto; transform: translate(-50%,0);}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .sec5 .type1{ margin: 0 calc(50% - 50vw);}
    #lp-sp-jpn .sec5 .type1 h3{ top: 66.66666667vw; left: 6.933333333vw;}
    #lp-sp-jpn .sec5 .type2{ margin: 18.66666667vw 0 0;}
    #lp-sp-jpn .sec5 .type2 figcaption{ position: absolute; bottom: -21.33333333vw; left: 0; padding: 0; width: 100%; white-space: normal; letter-spacing: .03em; font-size: 3.2vw; line-height: 1.5; transform: none;}
}

#lp-sp-jpn .sec6 h3{ position: absolute; top: 68px; left: calc(50% + 120px); z-index: 10;}
#lp-sp-jpn .sec6 h3 .line1{ margin: -20px 0 0; padding: 0 0 0 150px; font-size: 35px;}
#lp-sp-jpn .sec6 h3 .line2{ padding: 0 0 0 150px; font-size: 20px;}
#lp-sp-jpn .sec6 .lead1{ position: absolute; top: 290px; left: calc(50% + 120px); padding: 0 0 0 150px;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .sec6 h3{ position: relative; top: auto; left: auto;}
    #lp-sp-jpn .sec6 h3 .line1{ margin: -2.666666667vw 0 0; padding: 0 0 0 18.66666667vw; font-size: 5.333333333vw;}
    #lp-sp-jpn .sec6 h3 .line2{ padding: 0 0 0 18.66666667vw; font-size: 3.2vw;}
    #lp-sp-jpn .sec6 .lead1{ position: relative; top: auto; left: auto; margin: 5.333333333vw 0 0; padding: 0 0 0 3.2vw;}
    #lp-sp-jpn .sec6 .type3{ margin: 16vw 0 0;}
}

#lp-sp-jpn .sec6 .flex{ position: relative; display: flex; margin: 70px -15px 0; justify-content: space-between;}
#lp-sp-jpn .sec6 .flex .lead{ position: absolute; top: 135px; left: 295px; z-index: 10;}
#lp-sp-jpn .sec6 .flex .list1{ margin: 0; width: calc(100% / 3);}
#lp-sp-jpn .sec6 .flex .list1 > li{ margin: 0; width: 100%;}
#lp-sp-jpn .sec6 .flex .list2{ margin: 235px 0 0; width: calc(100% / 3 * 2);}
#lp-sp-jpn .sec6 .flex .list2 > li{ margin: 0; width: 50%;}

@media only screen and (max-width: 736px) {
    #lp-sp-jpn .sec6 .flex{ flex-direction: column-reverse; margin: 0;}
    #lp-sp-jpn .sec6 .flex .list1{ margin: 0 calc(50% - 50vw); padding: 0; width: 100vw;}
    #lp-sp-jpn .sec6 .flex .list1 > li{ margin: 0; width: 100%;}
    #lp-sp-jpn .sec6 .flex .list1 figure{ position: relative;}
    #lp-sp-jpn .sec6 .flex .lead{ top: auto; bottom: 12vw; left: 50%; transform: translate(-50%,0);}
    #lp-sp-jpn .sec6 .flex .list1 .detail{ padding: 0 21.33333333vw;}
    #lp-sp-jpn .sec6 .flex .list2{ flex-direction: column-reverse; margin: 0; width: 100%;}
    #lp-sp-jpn .sec6 .flex .list2 > li{ margin: 0; width: 100%;}
}

.act2{ opacity: 0;}
.fadeup{ animation: fadeup 1.2s cubic-bezier(0.33, 1, 0.68, 1) forwards;}
 
@keyframes fadeup {
    0% { opacity: 0; transform: translateY(30px);}
    80% { opacity: 1;}
    100% { opacity: 1; transform: translateY(0);}
}