@charset "utf-8";
/* CSS Document */

/*==================================
	base
==================================*/
body { background: #fff5eb;}
.outer { position: relative; z-index: 1;}
footer { position: relative; z-index: 10;}

/*==================================
	mv
==================================*/
#mv { position: relative; overflow: hidden;}
#mv .outer { padding-bottom: 150px; display: flex; flex-wrap: wrap; justify-content: space-between;}
#mv .outer img { width: 100%;}
#mv .outer .ph { width: 50%;}
#mv .outer .tit { width: 44.53%;}
#mv .outer .illust { right: -30px; bottom: 40px; position: absolute; z-index: 5;}
#mv .txt { font-size: 260px; color: #feecdb; font-family: "Outfit"; font-weight: 700; position: absolute; line-height: 1; bottom: 0; pointer-events: none;}
@media screen and (max-width: 1359px) {
#mv .txt { font-size: 18.66vw; left: -2%;}
}
@media screen and (max-width: 899px) {
#mv .outer { padding-bottom: 10vw; display: block; text-align: center;}
#mv .outer .ph { max-width: 650px;}
#mv .outer .tit { width: 100%; max-width: 579px; margin: 0 auto;}
#mv .outer .illust { width: 160px;}
}
@media screen and (max-width: 749px) {
#mv .outer .illust { width: 125px; bottom: 20px;}
}

/*==================================
	box base
==================================*/
.boxNum { text-align: right; font-family: "Outfit"; position: absolute; z-index: 5;}
.boxNum .num { font-size: 150px; margin-bottom: 20px; font-weight: 700; line-height: 1;}
.boxNum .en { font-size: 24px; height: 200px; text-align: left;font-weight: 600; position: absolute; right: 0; writing-mode: vertical-rl; letter-spacing: 0.05em;}
.txtArea { padding-top: 50px; max-width: 550px; position: relative; z-index: 5; line-height: 1.8;}
.txtArea .tit { font-size: 36px; margin-bottom: 40px; font-weight: 600;}
.txtArea .txt { font-size: 16px;}
.txtArea .txt p { margin-top: 30px;}
#box01.boxP1,
#box04.boxP1 { min-height: 570px;}
#box01.boxP1 .ph,
#box04.boxP1 .ph { position: absolute; top: 0; left: 40px;}
#box01.boxP1 .boxNum,
#box04.boxP1 .boxNum { top: 50px; right: calc( 50% + 60px);}
#box01.boxP1 .txtArea,
#box04.boxP1 .txtArea { margin-left: 670px; padding-top: 90px;}
#box03.boxP2,
#box05.boxP2 { padding-left: 40px;}
#box03.boxP2 .ph,
#box05.boxP2 .ph01,
#box05.boxP2 .ph02 { position: absolute; z-index: 2;}
#box03.boxP2 .boxNum,
#box05.boxP2 .boxNum { right: 40px;}
@media screen and (max-width: 1359px) {
.txtArea { width: 46%; padding-top: 25px;}
#box01.boxP1 .ph,
#box04.boxP1 .ph { left: 0;}
#box01.boxP1 .boxNum,
#box04.boxP1 .boxNum { right: calc( 50% + 40px);}
#box01.boxP1 .txtArea,
#box04.boxP1 .txtArea { margin-left: 52%; padding-top: 45px;}
#box03.boxP2,
#box05.boxP2 { padding-left: 0;}
#box03.boxP2 .boxNum,
#box05.boxP2 .boxNum { right: 0;}
}
@media screen and (max-width: 1300px) {
.boxNum .num { font-size: 120px;}
.boxNum .en { font-size: 20px; height: 150px;}
.txtArea .tit { font-size: 32px;}
#box01.boxP1 .ph,
#box04.boxP1 .ph { width: 40%;}
#box01.boxP1 .ph img,
#box04.boxP1 .ph img { width: 100%;}
#box01.boxP1 .txtArea,
#box04.boxP1 .txtArea { margin-left: 50%; width: 50%;}
#box03.boxP2 img,
#box05.boxP2 img { width: 100%;}
}
@media screen and (max-width: 899px) {
.boxNum .num { font-size: 75px; margin-bottom: 10px;}
.boxNum .en { font-size: 12px; height: 120px;}
.txtArea { padding-top: 25px; max-width: inherit;}
.txtArea .tit { font-size: 24px; margin-bottom: 20px;}
.txtArea .txt { font-size: 14px;}
.txtArea .txt p { margin-top: 15px;}
#box01.boxP1,
#box04.boxP1 { min-height: auto;}
#box01.boxP1 .ph,
#box04.boxP1 .ph { width: 250px; position: relative;}
#box01.boxP1 .txtArea,
#box04.boxP1 .txtArea { margin-left: 0; width: 100%;}
#box01.boxP1 .boxNum,
#box04.boxP1 .boxNum { left: 200px; right: auto; top: 20px;}
#box03.boxP2 .ph,
#box05.boxP2 .ph01 { position: relative;}
#box03.boxP2 .txtArea,
#box05.boxP2 .txtArea { width: 100%;}
#box05.boxP2 .boxNum { right: calc( 50% - 180px);}
}

/*==================================
	box01
==================================*/
@media screen and (max-width: 899px) {
#box01 { margin-top: 30px;}
}

/*==================================
	box02
==================================*/
#box02 { margin-top: 140px; padding-bottom: 130px;}
#box02 .boxNum { left: 20px;}
#box02 .txtArea { margin-left: 300px;}
#box02 .ph01,
#box02 .ph02,
#box02 .ph03,
#box02 .illust { position: absolute;}
#box02 .ph01 { right: 100px; top: -130px;}
#box02 .ph02 { right: 0; top: 300px;}
#box02 .ph03 { left: 80px; bottom: 0; }
#box02 .illust { left: 70px; top: 220px;}
@media screen and (max-width: 1359px) {
#box02 .boxNum { left: 0; width: auto;}
#box02 .txtArea { margin-left: 220px;}
#box02 .ph01 { right: 40px; top: -80px;}
#box02 .ph03 { left: 0;}
#box02 .illust { left: 40px;}
}
@media screen and (max-width: 1300px) {
#box02 .ph01 { width: 22%;}
#box02 .ph02 { width: 22%; top: 250px;}
#box02 .ph03 {}
#box02 .ph01 img,
#box02 .ph02 img,
#box02 .ph03 img { width: 100%;}
}
@media screen and (max-width: 899px) {
#box02 { margin-top: 100px; padding-bottom: 35vw;}
#box02 .ph01 { width: 35%; top: -50px; left: 2%; position: relative; z-index: 1;}
#box02 .ph02 { width: 35%; top: 0; left: 45%;}
#box02 .ph03 { width: 25%; bottom: 0;}
#box02 .boxNum { left: 75%; top: 0;}
#box02 .txtArea { margin-left: 0; width: 100%;}
#box02 .illust { left: -5%; width: 200px; top: 150px;}
}

/*==================================
	box03
==================================*/
#box03 { margin-top: 120px; min-height: 500px;}
#box03.boxP2 .boxNum { top: 40px;}
#box03.boxP2 .ph { top: 0; right: 150px;}
#box03 .illust { left: calc(50% - 50px); top: -190px; position: absolute; z-index: 5;}
@media screen and (max-width: 1359px) {
#box03.boxP2 .ph { right: 80px;}
}
@media screen and (max-width: 1300px) {
#box03.boxP2 .ph { right: 50px; width: 42%;}
}
@media screen and (max-width: 899px) {
#box03 { margin-top: 0; min-height: auto;}
#box03.boxP2 .ph { right: 10%; width: 250px; position: absolute;}
#box03 .txtArea { padding-top: 300px;}
#box03 .illust { left: 50%; top: -120px; width: 180px;}
}

/*==================================
	box04
==================================*/
#box04 { margin-top: 90px;}
#box04 .illust { right: calc( 50% + 60px); top: 500px; position: absolute;}
@media screen and (max-width: 1359px) {
}
@media screen and (max-width: 1300px) {
#box04 .illust { top: 450px;}
}
@media screen and (max-width: 899px) {
#box04 .illust { right: auto; left: 230px; top: 220px; width: 100px;}
	#box04 .illust img { width: 100%;}
}

/*==================================
	box05
==================================*/
#box05 { margin-top: 120px; padding-bottom: 310px;}
#box05 .illust { top: -80px; left: 0; right: 0; margin: auto; position: absolute; text-align: center;}
#box05 .boxNum { top: 90px;}
#box05 .txtArea { padding-top: 0;}
#box05 .ph01 { top: 30px; right: 150px; position: absolute;}
#box05 .ph02 { top: 420px; right: -20px; position: absolute; z-index: 1;}
#box05 .txtBG { font-size: 260px; color: #feecdb; font-family: "Outfit"; font-weight: 700; position: absolute; line-height: 1; pointer-events: none; bottom: -40px; left: 0; right: 0; margin: auto;}
@media screen and (max-width: 1359px) {
#box05 .txtBG { font-size: 18.66vw;}
#box05 .ph01 { right: 80px;}
#box05 .ph02 { top: 450px; right: -10px;}
}
@media screen and (max-width: 1300px) {
#box05 { padding-bottom: 200px;}
#box05 .boxNum { top: 50px;}
#box05 .ph01 { right: 50px; width: 42%;}
}
@media screen and (max-width: 899px) {
#box05 { margin-top: 60px; padding-bottom: 14vw;}
#box05 .boxNum { top: 20px;}
#box05 .illust { width: 200px; top: -30px; left: -5%; right: auto;}
#box05 .ph01 { width: 250px; top: 0; left: 0; right: 0; margin: auto;}
#box05 .ph02 { width: 180px; top: 200px; right: calc( 50% - 220px); position: absolute;}
#box05 .txtArea { padding-top: 30px;}
#box05 .txtBG { font-size: 17.66vw; bottom: -20px;}
}
