@charset "UTF-8";
/*---------------------
セクション名
----------------------*/

.top .contents .bg01 {
  position: relative;
  height: 564px;
  background-color: #fff;
}
.top .contents .bg01 p {
  position: absolute;
  top: 30px;
  left: 50%;
  transform: translateX(-50%);
  width: 625px;
  height: 432px;
}
.top .contents .bg02 {
  position: relative;
  height: 2005px;
  background: url("https://www.jr-takashimaya.co.jp/cn/cp/2026new-life/assets/img/top/bg02.jpg") no-repeat center / cover;
}
.top .contents .bg02 > p {
  position: absolute;
  top: 120px;
  left: 50%;
  transform: translateX(-50%);
  width: 531px;
  height: 620px;
}
.top .contents .bg02 .wrap01 {
  position: absolute;
  top: 840px;
  left: 50%;
  transform: translateX(-50%);
  width: 640px;
  height: 527px;
}
.top .contents .bg02 .wrap01 a {
  position: absolute;
  bottom: 50px;
  left: 43px;
  width: 178px;
  height: 31px;
}
.top .contents .bg02 .btns {
  position: absolute;
  top: 1460px;
  left: 50%;
  transform: translateX(-50%);
  width: 640px;
  height: 372px;
}
.top .contents .bg02 .btns a {
  position: absolute;
  left: 0;
  width: 640px;
  height: 108px;
}
.top .contents .bg02 .btns a:nth-of-type(1) {
  top: 0;
}
.top .contents .bg02 .btns a:nth-of-type(2) {
  top: 132px;
}
.top .contents .bg02 .btns a:nth-of-type(3) {
  top: 264px;
}
.top .contents .bg03 {
  position: relative;
  height: 4100px;
  background-color: #fbf8ed;
}
.top .contents .bg03::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 900px;
  background-color: #fff;
  z-index: 0;
}
.top .contents .bg03 p {
  position: relative;
  z-index: 2;
}
.top .contents .bg03 > p:nth-of-type(1) {
  position: absolute;
  top: 135px;
  left: 50%;
  transform: translateX(-50%);
  width: 582px;
  height: 210px;
}
.top .contents .bg03 > p:nth-of-type(2) {
  position: absolute;
  top: 470px;
  left: 0;
  width: 685px;
  height: 156px;
}
.top .contents .bg03 > p:nth-of-type(3) {
  position: absolute;
  top: 650px;
  left: 0;
  width: 618px;
  height: 803px;
}
.top .contents .bg03 > p:nth-of-type(4) {
  position: absolute;
  top: 1280px;
  left: 75px;
  width: 627px;
  height: 594px;
  z-index: 1;
}
.top .contents .bg03 .wrap02 {
  position: absolute;
  top: 1900px;
  left: 0;
  width: 680px;
  height: 2126px;
  z-index: 1;
}
.top .contents .bg03 .wrap02 .speech-bubble01 {
  position: absolute;
  top: 0;
  left: 0;
  width: 680px;
  height: 2126px;
  z-index: 1;
}
.top .contents .bg03 .wrap02 > p:nth-of-type(1) {
  position: absolute;
  top: 120px;
  left: 50px;
  width: 560px;
  height: 647px;
}
.top .contents .bg03 .wrap02 > p:nth-of-type(2) {
  position: absolute;
  top: 790px;
  left: 50px;
  width: 560px;
  height: 647px;
}
.top .contents .bg03 .wrap02 > p:nth-of-type(3) {
  position: absolute;
  top: 1460px;
  left: 50px;
  width: 560px;
  height: 647px;
}
.top .contents .bg04 {
  position: relative;
  height: 5800px;
  background-color: #fbf8ed;
}
.top .contents .bg04 > p {
  z-index: 2;
}
.top .contents .bg04 > p:nth-of-type(1) {
  position: absolute;
  top: 120px;
  right: 0;
  width: 560px;
  height: 647px;
}
.top .contents .bg04 > p:nth-of-type(2) {
  position: absolute;
  top: 870px;
  right: 50px;
  width: 661px;
  height: 657px;
  z-index: 1;
}
.top .contents .bg04 .wrap03 {
  position: absolute;
  top: 1345px;
  right: 0;
  width: 680px;
  height: 1392px;
  z-index: 0;
}
.top .contents .bg04 .wrap03 .speech-bubble02 {
  position: absolute;
  top: 0;
  right: 0;
  width: 680px;
  height: 1392px;
  z-index: 0;
}
.top .contents .bg04 .wrap03 > p:nth-of-type(1) {
  position: absolute;
  top: 230px;
  right: 50px;
  width: 558px;
  height: 472px;
}
.top .contents .bg04 .wrap03 > p:nth-of-type(2) {
  position: absolute;
  top: 730px;
  right: 50px;
  width: 559px;
  height: 563px;
}
.top .contents .bg04 > p:nth-of-type(3) {
  position: absolute;
  top: 2690px;
  right: 50px;
  width: 599px;
  height: 620px;
  z-index: 1;
}
.top .contents .bg04 > p:nth-of-type(4) {
  position: absolute;
  top: 3330px;
  right: 100px;
  width: 559px;
  height: 683px;
}
.top .contents .bg04 > p:nth-of-type(5) {
  position: absolute;
  top: 4100px;
  right: 90px;
  width: 590px;
  height: 920px;
}
.top .contents .bg04 > p:nth-of-type(6) {
  position: absolute;
  top: 5070px;
  right: 100px;
  width: 559px;
  height: 601px;
}
.top .contents .bg05 {
  position: relative;
  height: 3900px;
  background-color: #eff3f2;
}
.top .contents .bg05 > p {
  z-index: 2;
}
.top .contents .bg05 > p:nth-of-type(1) {
  position: absolute;
  top: 120px;
  left: 0;
  width: 610px;
  height: 90px;
}
.top .contents .bg05 > p:nth-of-type(2) {
  position: absolute;
  top: 250px;
  left: 0;
  width: 750px;
  height: 1097px;
}
.top .contents .bg05 > p:nth-of-type(3) {
  position: absolute;
  top: 1200px;
  left: 0;
  width: 645px;
  height: 1347px;
}
.top .contents .bg05 .wrap04 {
  position: absolute;
  top: 2400px;
  left: 0;
  width: 680px;
  height: 1456px;
  z-index: 0;
}
.top .contents .bg05 .wrap04 .speech-bubble02 {
  position: absolute;
  top: 0;
  right: 0;
  width: 680px;
  height: 1456px;
  z-index: 0;
}
.top .contents .bg05 .wrap04 > p:nth-of-type(1) {
  position: absolute;
  top: 190px;
  left: 50px;
  width: 565px;
  height: 526px;
}
.top .contents .bg05 .wrap04 > p:nth-of-type(2) {
  position: absolute;
  top: 750px;
  left: 50px;
  width: 595px;
  height: 635px;
}
.top .contents .bg06 {
  position: relative;
  height: 5500px;
  background-color: #eff3f2;
}
.top .contents .bg06 > p {
  z-index: 2;
}
.top .contents .bg06 > p:nth-of-type(1) {
  position: absolute;
  top: 80px;
  right: 0;
  width: 634px;
  height: 843px;
}
.top .contents .bg06 > p:nth-of-type(2) {
  position: absolute;
  top: 970px;
  left: 0;
  width: 638px;
  height: 764px;
}
.top .contents .bg06 .wrap05 {
  position: absolute;
  top: 1600px;
  right: 0;
  width: 680px;
  height: 2062px;
  z-index: 0;
}
.top .contents .bg06 .wrap05 .speech-bubble02 {
  position: absolute;
  top: 0;
  right: 0;
  width: 680px;
  height: 2062px;
  z-index: 0;
}
.top .contents .bg06 .wrap05 > p:nth-of-type(1) {
  position: absolute;
  top: 190px;
  right: 50px;
  width: 559px;
  height: 628px;
}
.top .contents .bg06 .wrap05 > p:nth-of-type(2) {
  position: absolute;
  top: 870px;
  right: 50px;
  width: 559px;
  height: 677px;
}
.top .contents .bg06 .wrap05 > p:nth-of-type(3) {
  position: absolute;
  top: 1620px;
  right: 62px;
  width: 544px;
  height: 372px;
}
.top .contents .bg06 > p:nth-of-type(3) {
  position: absolute;
  top: 3700px;
  left: 50%;
  transform: translateX(-50%);
  width: 573px;
  height: 785px;
}
.top .contents .bg06 > p:nth-of-type(4) {
  position: absolute;
  top: 4580px;
  left: 50%;
  transform: translateX(-50%);
  width: 559px;
  height: 759px;
}
.top .contents .bg06 > p:nth-of-type(4) > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 559px;
  height: 759px;
}
.top .contents .bg06 > p:nth-of-type(4) a {
  position: absolute;
  bottom: -30px;
  left: 50px;
  width: 448px;
  height: 21px;
}
.top .contents .bg07 {
  position: relative;
  height: 3185px;
  background-color: #fff;
}
.top .contents .bg07::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2110px;
  background-color: #fbf8ed;
  z-index: 0;
}
.top .contents .bg07 p {
  position: relative;
  z-index: 2;
}
.top .contents .bg07 > p:nth-of-type(1) {
  position: absolute;
  top: 135px;
  left: 0;
  width: 735px;
  height: 67px;
}
.top .contents .bg07 > p:nth-of-type(2) {
  position: absolute;
  top: 240px;
  right: 0;
  width: 750px;
  height: 1057px;
}
.top .contents .bg07 .wrap06 {
  position: absolute;
  top: 1170px;
  left: 0;
  width: 680px;
  height: 815px;
  z-index: 0;
}
.top .contents .bg07 .wrap06 .speech-bubble02 {
  position: absolute;
  top: 0;
  left: 0;
  width: 680px;
  height: 815px;
  z-index: 0;
}
.top .contents .bg07 .wrap06 > p:nth-of-type(1) {
  position: absolute;
  top: 230px;
  right: 50px;
  width: 550px;
  height: 508px;
}
.top .contents .bg07 > p:nth-of-type(3) {
  position: absolute;
  top: 2200px;
  left: 50%;
  transform: translateX(-50%);
  width: 649px;
  height: 205px;
}
.top .contents .bg07 > p:nth-of-type(4) {
  position: absolute;
  top: 2520px;
  right: 20px;
  width: 680px;
  height: 510px;
}
.top .contents .bg08 {
  position: relative;
  background-color: #384764;
  height: 3840px;
}
.top .contents .bg08 > p:nth-of-type(1) {
  position: absolute;
  top: 135px;
  left: 50%;
  transform: translateX(-50%);
  width: 554px;
  height: 246px;
}
.top .contents .bg08 .wrap07 {
  position: absolute;
  background-color: #fff;
  top: 420px;
  left: 50%;
  transform: translateX(-50%);
  width: 655px;
  height: 3389px;
}
.top .contents .bg08 .wrap07 > p:nth-of-type(1) {
  position: absolute;
  top: 80px;
  left: 50%;
  transform: translateX(-50%);
  width: 560px;
  height: 823px;
}
.top .contents .bg08 .wrap07 > p:nth-of-type(2) {
  position: absolute;
  top: 1000px;
  left: 50%;
  transform: translateX(-50%);
  width: 560px;
  height: 944px;
}
.top .contents .bg08 .wrap08 {
  position: absolute;
  top: 2020px;
  left: 50%;
  transform: translateX(-50%);
  width: 560px;
  height: 1287px;
}
.top .contents .bg08 .wrap08 > p {
  position: absolute;
  top: 0;
  left: 0;
  width: 560px;
  height: 1287px;
}
.top .contents .bg08 .wrap08 > a {
  position: absolute;
  top: 650px;
  left: 50%;
  transform: translateX(-50%);
  width: 399px;
  height: 69px;
}
.banner {
  position: relative;
  height: 870px;
  background-color: #fff;
}
.banner a {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 655px;
  height: 221px;
}
.banner a:nth-of-type(1) {
  top: 160px;
}
.banner a:nth-of-type(2) {
  top: 425px;
}