@charset "utf-8";
/* CSS Document */


/*PC*/
/*@media screen and (min-width: 1680px) {*/
@media screen and (min-width: 768px) {


/*----------------------------*/

.cont01 { padding: 0 0 100px;}
.cont01 h1 {}
.cont01 h1 img { width: 100%; height: auto;}
.cont01 .img01 { max-width: 1075px; margin: 80px auto 0; padding: 0 5%;}



/*----------------------------*/

.cont02 { padding: 50px 5% 50px;}
.cont02 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 50px; text-align: center; position: relative; letter-spacing: 5px; text-transform: uppercase; margin-bottom: 50px;}
.cont02 h2::after { content: attr(data-jp); font-size: 14px; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 20px;}
.cont02 p { font-family: "Noto Serif JP", serif; font-weight: 400; font-style: normal; font-size: 18px; line-height: 40px; text-align: center; margin-bottom: 50px;}

.cont02 .movie { max-width: 900px;  margin: 100px auto 0;}
.cont02 .movie iframe[src*="youtube.com"],
.cont02 .movie iframe[src*="youtube-nocookie.com"] { aspect-ratio: 16 / 9; width: 100%; height: auto;}



/*----------------------------*/

/*.cont03 { padding: 50px 5% 120px;}*/
.cont03 { padding: 320px 5% 320px; background-image: linear-gradient(0deg, rgba(25, 30, 59, 0), rgba(25, 30, 59, 1.0) 5% 95%, rgba(25, 30, 59, 0));}
.cont03 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 50px; text-align: center; position: relative; letter-spacing: 5px; text-transform: uppercase; margin-bottom: 50px; color: var(--color01_10);}
.cont03 h2::after { content: attr(data-jp); font-size: 14px; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 20px;}

.cont03 .map { max-width: 900px; margin: 0 auto 80px; position: relative;}
.cont03 .map .spot { position: absolute; width: 8.8889%; height: 5.925%; display: inline-block;}
.cont03 .map .spot a { width: 100%; height: 100%; display: block;}
.cont03 .map .spot.spot01 { top: 53.3333%; left: 28.8889%;}
.cont03 .map .spot.spot02 { top: 59.2593%; left: 48.8889%;}
.cont03 .map .spot.spot03 { top: 53.3333%; left: 64.4444%;}
.cont03 .map .spot.spot04 { top: 34.8148%; left: 27.7778%;}
.cont03 .map .spot.spot05 { top: 32.5926%; left: 40%;}
.cont03 .map .spot.spot06 { top: 22.963%; left: 28.8889%;}
.cont03 .map .spot.spot07 { top: 24.4444%; left: 73.3333%;}
.cont03 .map .spot.spot08 { top: 10.3704%; left: 41.1111%;}

.cont03 .gallery { max-width: 1200px; margin: auto;}
.cont03 .gallery ul { width: 100%; margin: auto; display: flex; justify-content: space-between; flex-wrap: wrap; row-gap: 100px; counter-reset: number 0;}
.cont03 .gallery ul li { width: 48%; display: flex; flex-direction: column; position: relative;}
.cont03 .gallery ul li::before { content: counter(number); counter-increment: number 1; background: url("../images/com/icon_star.svg") center center no-repeat; width: 90px; height: 90px; display: flex; align-items: center; justify-content: center; position: absolute; top: -15px; left: -15px; z-index: 10; font-size: 40px; color: var(--color02_10); font-family: "Noto Serif JP", serif; font-weight: 600;}
.cont03 .gallery ul li .img { position: relative;}
.cont03 .gallery ul li .img span { width: 100px; position: absolute; bottom: -20px; right: -20px;}
.cont03 .gallery ul li .txt { font-family: "Noto Serif JP", serif; font-weight: 400; font-style: normal;}
.cont03 .gallery ul li .txt h3 { font-size: 30px; font-weight: 400; display: flex; gap: 10px; padding: 20px 0; border-bottom: var(--com_px01) solid var(--color00_10); justify-content: center; align-items: center;}
.cont03 .gallery ul li .txt h3 span { font-size: 16px; font-weight: 400;}
.cont03 .gallery ul li .txt p { font-size: 16px; padding: 20px 0 0; letter-spacing: normal;}
.cont03 .gallery ul li .txt p em { font-style: normal; color: #ffff00;}
.cont03 .gallery ul li:nth-of-type(1),
.cont03 .gallery ul li:nth-of-type(8) { width: 100%; flex-direction: row; align-items: flex-end; justify-content: space-between;}
.cont03 .gallery ul li:nth-of-type(1) .img,
.cont03 .gallery ul li:nth-of-type(8) .img { width: 66.7%;}
.cont03 .gallery ul li:nth-of-type(1) .txt,
.cont03 .gallery ul li:nth-of-type(8) .txt { width: 26.7%; text-align: left;}
.cont03 .gallery ul li:nth-of-type(1) .txt h3,
.cont03 .gallery ul li:nth-of-type(8) .txt h3 { justify-content: flex-start;}



/*----------------------------*/

.cont04 { padding: 50px 0 0;}
.cont04 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 50px; text-align: center; position: relative; letter-spacing: 5px; text-transform: uppercase; margin-bottom: 50px;}
.cont04 h2::after { content: attr(data-jp); font-size: 14px; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 20px;}

.cont04 .box01 { max-width: 1120px; margin: auto; padding: 50px 5% 150px; display: flex; justify-content: space-between; box-sizing: content-box;}
.cont04 .box01 .boxL { width: 48.2%;}
.cont04 .box01 .boxR { width: 46.3%; display: flex; justify-content: space-between; flex-direction: column;}
.cont04 .box01 .boxR .img { width: 100%; display: flex; justify-content: space-between; margin: 0 0 10px;}
.cont04 .box01 .boxR .img img { width: 48.3%;}
.cont04 .box01 .boxR p { font-size: 16px;}
.cont04 .box01 .boxR .btn { width: 73%;}

.cont04 .box02 { background: url("../images/yumekagami/cont04_bg.png") center center no-repeat; background-size: cover; padding: 80px 5%; text-align: center;}
.cont04 .box02 .txt01 { margin: 0 auto 40px;}
.cont04 .box02 .txt01 h3 { width: 100%; max-width: 542px; margin: 0 auto 25px;}
.cont04 .box02 .txt01 p { color: #ffff00;}
.cont04 .box02 .txt02 { margin: 0 auto 50px;}
.cont04 .box02 .txt02 h4 { width: 100%; max-width: 200px; margin: 0 auto 35px; filter: drop-shadow(0px 0px 15px rgba(255, 255, 255, 0.6)) drop-shadow(0px 0px 10px rgba(255, 255, 255, 0.6));}
.cont04 .box02 .txt02 p { font-size: 16px; margin: 0 auto 40px;}
.cont04 .box02 .txt03 { display: inline-block; font-size: 18px; margin: 0 auto 50px;}
.cont04 .box02 .txt03 dl { display: grid; grid-template: auto / 5em 1fr; text-align: left;}
.cont04 .box02 .txt03 dl dt {grid-column: 1;}
.cont04 .box02 .txt03 dl dd {grid-column: 2;}
.cont04 .box02 .txt03 ul { text-align: left;}
.cont04 .box02 .txt03 ul li { padding-left: 1.2em; position: relative;}
.cont04 .box02 .txt03 ul li::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont04 .box02 .btn { width: 100%; margin: auto;}
.cont04 .box02 .btn a { width: 378px; display: inline-block; margin: auto;}



/*----------------------------*/

.cont05 { padding: 150px 5% 180px; background: linear-gradient(0deg,rgba(25, 30, 59, 0) 0%, rgba(25, 30, 59, 1) 5%, rgba(25, 30, 59, 1) 100%);}
.cont05 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 50px; text-align: center; position: relative; letter-spacing: 5px; text-transform: uppercase; margin-bottom: 50px; color: var(--color01_10);}
.cont05 h2::after { content: attr(data-jp); font-size: 14px; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 20px;}

.cont05 ul { max-width: 1200px; margin: auto; padding: 0; display: flex; justify-content: space-between;}
.cont05 ul li { width: 45.83%;}
.cont05 ul li .img { padding: 0 0 30px;}
.cont05 ul li .txt { color: var(--color01_10); text-align: center;}
.cont05 ul li .txt h3 { font-size: 26px; padding: 0 0 10px; font-family: "Noto Serif JP", serif; font-weight: 400;}
.cont05 ul li .txt p { font-size: 17px; padding: 0;}



/*----------------------------*/

.cont06 { padding: 100px 0 100px;}
.cont06 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 50px; text-align: center; position: relative; letter-spacing: 5px; text-transform: uppercase; margin-bottom: 50px;}
.cont06 h2::after { content: attr(data-jp); font-size: 14px; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 20px;}

.cont06 ul { max-width: 780px; margin: auto; padding: 0; display: flex; justify-content: space-between;}
.cont06 ul li { width: 360px;}
.cont06 ul li .img { padding: 0 0 10px;}
.cont06 ul li .txt { color: var(--color00_10); text-align: center;}
.cont06 ul li .txt p { font-size: 22px;}





}


/*@media print, screen and (min-width: 768px) and ( max-width: 1679px) {

}*/



/*sp*/
@media only screen and (max-width: 767px) {


/*----------------------------*/

.cont01 { padding: 0 0 15.6250vw;}
.cont01 h1 {}
.cont01 h1 img { width: 100%; height: auto;}
.cont01 .img01 { max-width: 167.9688vw; margin: 6.2500vw auto 0; padding: 0 8.5938vw;}



/*----------------------------*/

.cont02 { padding: 7.8125vw 8.5938vw 7.8125vw;}
.cont02 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 6.2500vw; text-align: center; position: relative; letter-spacing: 0.7813vw; text-transform: uppercase; margin-bottom: 7.8125vw;}
.cont02 h2::after { content: attr(data-jp); font-size: 2.1875vw; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 3.1250vw;}
.cont02 p { font-family: "Noto Serif JP", serif; font-weight: 400; font-style: normal; font-size: 2.8125vw; line-height: 6.2500vw; text-align: left; margin-bottom: 7.8125vw;}

.cont02 .movie { max-width: 140.6250vw;  margin: 15.6250vw auto 0;}
.cont02 .movie iframe[src*="youtube.com"],
.cont02 .movie iframe[src*="youtube-nocookie.com"] { aspect-ratio: 16 / 9; width: 100%; height: auto;}



/*----------------------------*/

.cont03 { padding: 12.5000vw 3.9063vw 15.6250vw; background-image: linear-gradient(0deg, rgba(25, 30, 59, 0), rgba(25, 30, 59, 1.0) 5% 95%, rgba(25, 30, 59, 0));}
.cont03 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 6.2500vw; text-align: center; position: relative; letter-spacing: 0.7813vw; text-transform: uppercase; margin-bottom: 6.2500vw; color: var(--color01_10);}
.cont03 h2::after { content: attr(data-jp); font-size: 2.1875vw; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 3.1250vw;}

.cont03 .map { max-width: 156.2500vw; margin: 0 auto 12.5000vw;}
.cont03 .map .spot { position: absolute; width: 8.8889%; height: 5.925%; display: inline-block;}
.cont03 .map .spot a { width: 100%; height: 100%; display: block;}
.cont03 .map .spot.spot01 { top: 53.3333%; left: 28.8889%;}
.cont03 .map .spot.spot02 { top: 59.2593%; left: 48.8889%;}
.cont03 .map .spot.spot03 { top: 53.3333%; left: 64.4444%;}
.cont03 .map .spot.spot04 { top: 34.8148%; left: 27.7778%;}
.cont03 .map .spot.spot05 { top: 32.5926%; left: 40%;}
.cont03 .map .spot.spot06 { top: 22.963%; left: 28.8889%;}
.cont03 .map .spot.spot07 { top: 24.4444%; left: 73.3333%;}
.cont03 .map .spot.spot08 { top: 10.3704%; left: 41.1111%;}

.cont03 .gallery { max-width: 187.5000vw; margin: 0 4.6875vw;}
.cont03 .gallery ul { width: 100%; margin: auto; display: flex; justify-content: space-between; flex-wrap: wrap; row-gap: 15.6250vw; counter-reset: number 0;}
.cont03 .gallery ul li { width: 100%; display: flex; flex-direction: column; position: relative;}
.cont03 .gallery ul li::before { content: counter(number); counter-increment: number 1; background: url("../images/com/icon_star.svg") center center no-repeat; width: 14.0625vw; height: 14.0625vw; display: flex; align-items: center; justify-content: center; position: absolute; top: -3.1250vw; left: -3.1250vw; z-index: 10; font-size: 6.2500vw; color: var(--color02_10); font-family: "Noto Serif JP", serif; font-weight: 600;}
.cont03 .gallery ul li .img { position: relative; z-index: 1;}
.cont03 .gallery ul li .img span { width: 15.6250vw; position: absolute; bottom: -3.1250vw; right: -3.1250vw;}
.cont03 .gallery ul li .txt { font-family: "Noto Serif JP", serif; font-weight: 400; font-style: normal;}
.cont03 .gallery ul li .txt h3 { font-size: 4.6875vw; font-weight: 400; display: flex; gap: 1.5625vw; padding: 3.1250vw 0; border-bottom: var(--com_px01) solid var(--color00_10); justify-content: center; align-items: center;}
.cont03 .gallery ul li .txt h3 span { font-size: 2.5000vw; font-weight: 400;}
.cont03 .gallery ul li .txt p { font-size: 2.5000vw; padding: 3.1250vw 0 0; letter-spacing: normal;}
.cont03 .gallery ul li .txt p em { font-style: normal; color: #ffff00;}
/*.cont03 .gallery ul li:nth-of-type(1),
.cont03 .gallery ul li:nth-of-type(8) { width: 100%; flex-direction: row; align-items: flex-end; justify-content: space-between;}
.cont03 .gallery ul li:nth-of-type(1) .img,
.cont03 .gallery ul li:nth-of-type(8) .img { width: 66.7%;}
.cont03 .gallery ul li:nth-of-type(1) .txt,
.cont03 .gallery ul li:nth-of-type(8) .txt { width: 26.7%; text-align: left;}
.cont03 .gallery ul li:nth-of-type(1) .txt h3,
.cont03 .gallery ul li:nth-of-type(8) .txt h3 { justify-content: flex-start;}*/



/*----------------------------*/

.cont04 { padding: 7.8125vw 0 0;}
.cont04 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 6.2500vw; text-align: center; position: relative; letter-spacing: 0.7813vw; text-transform: uppercase; margin-bottom: 7.8125vw;}
.cont04 h2::after { content: attr(data-jp); font-size: 2.1875vw; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 3.1250vw;}

.cont04 .box01 { max-width: 175.0000vw; margin: auto; padding: 7.8125vw 8.5938vw 23.4375vw; display: flex; flex-direction: column; box-sizing: content-box; row-gap: 3.1250vw;}
.cont04 .box01 .boxL { width: 100%;}
.cont04 .box01 .boxR { width: 100%; display: flex; justify-content: space-between; flex-direction: column;}
.cont04 .box01 .boxR .img { width: 100%; display: flex; justify-content: space-between; margin: 0 0 1.5625vw;}
.cont04 .box01 .boxR .img img { width: 48.3%;}
.cont04 .box01 .boxR p { font-size: 2.5000vw; text-align: center; margin: 3.9063vw auto;}
.cont04 .box01 .boxR .btn { width: 59.0625vw; margin: 0 auto;}

.cont04 .box02 { background: url("../images/yumekagami/cont04_bg_sp.png") center center no-repeat; background-size: cover; padding: 12.5000vw 5%; text-align: center;}
.cont04 .box02 .txt01 { margin: 0 auto 6.2500vw;}
.cont04 .box02 .txt01 h3 { width: 100%; max-width: 84.6875vw; margin: 0 auto 3.9063vw;}
.cont04 .box02 .txt01 p { color: #ffff00;}
.cont04 .box02 .txt02 { margin: 0 auto 7.8125vw;}
.cont04 .box02 .txt02 h4 { width: 100%; max-width: 31.2500vw; margin: 0 auto 5.4688vw; filter: drop-shadow(0.0000vw 0.0000vw 2.3438vw rgba(255, 255, 255, 0.6)) drop-shadow(0.0000vw 0.0000vw 1.5625vw rgba(255, 255, 255, 0.6));}
.cont04 .box02 .txt02 p { font-size: 2.5000vw; margin: 0 auto 6.2500vw;}
.cont04 .box02 .txt03 { display: inline-block; font-size: 2.8125vw; margin: 0 4.6875vw 7.8125vw;}
.cont04 .box02 .txt03 dl { display: grid; grid-template: auto / 5em 1fr; text-align: left; width: 65.6250vw; margin: 0 auto 3.1250vw;}
.cont04 .box02 .txt03 dl dt {grid-column: 1;}
.cont04 .box02 .txt03 dl dd {grid-column: 2;}
.cont04 .box02 .txt03 ul { text-align: left;}
.cont04 .box02 .txt03 ul li { padding-left: 1.2em; position: relative; line-height: 1.6;}
.cont04 .box02 .txt03 ul li::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont04 .box02 .btn { width: 100%; margin: auto;}
.cont04 .box02 .btn a { width: 59.0625vw; display: inline-block; margin: auto;}



/*----------------------------*/

.cont05 { padding: 14.0625vw 3.9063vw 12.5000vw; background: linear-gradient(0deg,rgba(25, 30, 59, 0) 0%, rgba(25, 30, 59, 1) 5%, rgba(25, 30, 59, 1) 100%);}
.cont05 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 6.2500vw; text-align: center; position: relative; letter-spacing: 0.7813vw; text-transform: uppercase; margin-bottom: 7.8125vw; color: var(--color01_10);}
.cont05 h2::after { content: attr(data-jp); font-size: 2.1875vw; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 3.1250vw;}

.cont05 ul { max-width: 187.5000vw; margin: 0 4.6875vw; padding: 0; display: flex; flex-direction: column; gap: 7.8125vw;}
.cont05 ul li { width: 100%;}
.cont05 ul li .img { padding: 0 0 3.1250vw;}
.cont05 ul li .txt { color: var(--color01_10); text-align: center;}
.cont05 ul li .txt h3 { font-size: 3.7500vw; padding: 0 0 1.5625vw; font-family: "Noto Serif JP", serif; font-weight: 400; letter-spacing: normal;}
.cont05 ul li .txt p { font-size: 2.6563vw; padding: 0;}



/*----------------------------*/

.cont06 { padding: 7.8125vw 3.9063vw 15.6250vw;}
.cont06 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 6.2500vw; text-align: center; position: relative; letter-spacing: 0.7813vw; text-transform: uppercase; margin-bottom: 7.8125vw;}
.cont06 h2::after { content: attr(data-jp); font-size: 2.1875vw; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 3.1250vw;}

.cont06 ul { max-width: 121.8750vw; margin: 0 4.6875vw; padding: 0; display: flex; justify-content: space-between;}
.cont06 ul li { width: 39.6875vw;}
.cont06 ul li .img { padding: 0 0 1.5625vw;}
.cont06 ul li .txt { color: var(--color00_10); text-align: center;}
.cont06 ul li .txt p { font-size: 3.4375vw;}





}




@media screen and (width: 640px) {


/*----------------------------*/

.cont01 { padding: 0 0 100px;}
.cont01 h1 {}
.cont01 h1 img { width: 100%; height: auto;}
.cont01 .img01 { max-width: 1075px; margin: 40px auto 0; padding: 0 55px;}



/*----------------------------*/

.cont02 { padding: 50px 55px 50px;}
.cont02 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 40px; text-align: center; position: relative; letter-spacing: 5px; text-transform: uppercase; margin-bottom: 50px;}
.cont02 h2::after { content: attr(data-jp); font-size: 14px; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 20px;}
.cont02 p { font-family: "Noto Serif JP", serif; font-weight: 400; font-style: normal; font-size: 18px; line-height: 40px; text-align: left; margin-bottom: 50px;}

.cont02 .movie { max-width: 900px;  margin: 100px auto 0;}
.cont02 .movie iframe[src*="youtube.com"],
.cont02 .movie iframe[src*="youtube-nocookie.com"] { aspect-ratio: 16 / 9; width: 100%; height: auto;}



/*----------------------------*/

.cont03 { padding: 80px 25px 100px; background-image: linear-gradient(0deg, rgba(25, 30, 59, 0), rgba(25, 30, 59, 1.0) 5% 95%, rgba(25, 30, 59, 0));}
.cont03 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 40px; text-align: center; position: relative; letter-spacing: 5px; text-transform: uppercase; margin-bottom: 40px; color: var(--color01_10);}
.cont03 h2::after { content: attr(data-jp); font-size: 14px; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 20px;}

.cont03 .map { max-width: 1000px; margin: 0 auto 80px;}
.cont03 .map .spot { position: absolute; width: 8.8889%; height: 5.925%; display: inline-block;}
.cont03 .map .spot a { width: 100%; height: 100%; display: block;}
.cont03 .map .spot.spot01 { top: 53.3333%; left: 28.8889%;}
.cont03 .map .spot.spot02 { top: 59.2593%; left: 48.8889%;}
.cont03 .map .spot.spot03 { top: 53.3333%; left: 64.4444%;}
.cont03 .map .spot.spot04 { top: 34.8148%; left: 27.7778%;}
.cont03 .map .spot.spot05 { top: 32.5926%; left: 40%;}
.cont03 .map .spot.spot06 { top: 22.963%; left: 28.8889%;}
.cont03 .map .spot.spot07 { top: 24.4444%; left: 73.3333%;}
.cont03 .map .spot.spot08 { top: 10.3704%; left: 41.1111%;}

.cont03 .gallery { max-width: 1200px; margin: 0 30px;}
.cont03 .gallery ul { width: 100%; margin: auto; display: flex; justify-content: space-between; flex-wrap: wrap; row-gap: 100px; counter-reset: number 0;}
.cont03 .gallery ul li { width: 100%; display: flex; flex-direction: column; position: relative;}
.cont03 .gallery ul li::before { content: counter(number); counter-increment: number 1; background: url("../images/com/icon_star.svg") center center no-repeat; width: 90px; height: 90px; display: flex; align-items: center; justify-content: center; position: absolute; top: -20px; left: -20px; z-index: 10; font-size: 40px; color: var(--color02_10); font-family: "Noto Serif JP", serif; font-weight: 600;}
.cont03 .gallery ul li .img { position: relative; z-index: 1;}
.cont03 .gallery ul li .img span { width: 100px; position: absolute; bottom: -20px; right: -20px;}
.cont03 .gallery ul li .txt { font-family: "Noto Serif JP", serif; font-weight: 400; font-style: normal;}
.cont03 .gallery ul li .txt h3 { font-size: 30px; font-weight: 400; display: flex; gap: 10px; padding: 20px 0; border-bottom: var(--com_px01) solid var(--color00_10); justify-content: center; align-items: center;}
.cont03 .gallery ul li .txt h3 span { font-size: 16px; font-weight: 400;}
.cont03 .gallery ul li .txt p { font-size: 16px; padding: 20px 0 0; letter-spacing: normal;}
.cont03 .gallery ul li .txt p em { font-style: normal; color: #ffff00;}
/*.cont03 .gallery ul li:nth-of-type(1),
.cont03 .gallery ul li:nth-of-type(8) { width: 100%; flex-direction: row; align-items: flex-end; justify-content: space-between;}
.cont03 .gallery ul li:nth-of-type(1) .img,
.cont03 .gallery ul li:nth-of-type(8) .img { width: 66.7%;}
.cont03 .gallery ul li:nth-of-type(1) .txt,
.cont03 .gallery ul li:nth-of-type(8) .txt { width: 26.7%; text-align: left;}
.cont03 .gallery ul li:nth-of-type(1) .txt h3,
.cont03 .gallery ul li:nth-of-type(8) .txt h3 { justify-content: flex-start;}*/



/*----------------------------*/

.cont04 { padding: 50px 0 0;}
.cont04 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 40px; text-align: center; position: relative; letter-spacing: 5px; text-transform: uppercase; margin-bottom: 50px;}
.cont04 h2::after { content: attr(data-jp); font-size: 14px; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 20px;}

.cont04 .box01 { max-width: 1120px; margin: auto; padding: 50px 55px 150px; display: flex; flex-direction: column; box-sizing: content-box; row-gap: 20px;}
.cont04 .box01 .boxL { width: 100%;}
.cont04 .box01 .boxR { width: 100%; display: flex; justify-content: space-between; flex-direction: column;}
.cont04 .box01 .boxR .img { width: 100%; display: flex; justify-content: space-between; margin: 0 0 10px;}
.cont04 .box01 .boxR .img img { width: 48.3%;}
.cont04 .box01 .boxR p { font-size: 16px; text-align: center; margin: 25px auto;}
.cont04 .box01 .boxR .btn { width: 378px; margin: 0 auto;}

.cont04 .box02 { background: url("../images/yumekagami/cont04_bg_sp.png") center center no-repeat; background-size: cover; padding: 80px 5%; text-align: center;}
.cont04 .box02 .txt01 { margin: 0 auto 40px;}
.cont04 .box02 .txt01 h3 { width: 100%; max-width: 542px; margin: 0 auto 25px;}
.cont04 .box02 .txt01 p { color: #ffff00;}
.cont04 .box02 .txt02 { margin: 0 auto 50px;}
.cont04 .box02 .txt02 h4 { width: 100%; max-width: 200px; margin: 0 auto 35px; filter: drop-shadow(0px 0px 15px rgba(255, 255, 255, 0.6)) drop-shadow(0px 0px 10px rgba(255, 255, 255, 0.6));}
.cont04 .box02 .txt02 p { font-size: 16px; margin: 0 auto 40px;}
.cont04 .box02 .txt03 { display: inline-block; font-size: 18px; margin: 0 30px 50px;}
.cont04 .box02 .txt03 dl { display: grid; grid-template: auto / 5em 1fr; text-align: left; width: 420px; margin: 0 auto 20px;}
.cont04 .box02 .txt03 dl dt {grid-column: 1;}
.cont04 .box02 .txt03 dl dd {grid-column: 2;}
.cont04 .box02 .txt03 ul { text-align: left;}
.cont04 .box02 .txt03 ul li { padding-left: 1.2em; position: relative; line-height: 1.6;}
.cont04 .box02 .txt03 ul li::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont04 .box02 .btn { width: 100%; margin: auto;}
.cont04 .box02 .btn a { width: 378px; display: inline-block; margin: auto;}



/*----------------------------*/

.cont05 { padding: 90px 25px 80px; background: linear-gradient(0deg,rgba(25, 30, 59, 0) 0%, rgba(25, 30, 59, 1) 5%, rgba(25, 30, 59, 1) 100%);}
.cont05 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 40px; text-align: center; position: relative; letter-spacing: 5px; text-transform: uppercase; margin-bottom: 50px; color: var(--color01_10);}
.cont05 h2::after { content: attr(data-jp); font-size: 14px; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 20px;}

.cont05 ul { max-width: 1200px; margin: 0 30px; padding: 0; display: flex; flex-direction: column; gap: 50px;}
.cont05 ul li { width: 100%;}
.cont05 ul li .img { padding: 0 0 20px;}
.cont05 ul li .txt { color: var(--color01_10); text-align: center;}
.cont05 ul li .txt h3 { font-size: 24px; padding: 0 0 10px; font-family: "Noto Serif JP", serif; font-weight: 400; letter-spacing: normal;}
.cont05 ul li .txt p { font-size: 17px; padding: 0;}



/*----------------------------*/

.cont06 { padding: 50px 25px 100px;}
.cont06 h2 { font-family: "Cinzel", serif; font-weight: 400; font-style: normal; font-size: 40px; text-align: center; position: relative; letter-spacing: 5px; text-transform: uppercase; margin-bottom: 50px;}
.cont06 h2::after { content: attr(data-jp); font-size: 14px; line-height: 1.0; display: block; font-family: "Noto Sans JP", sans-serif; letter-spacing: normal; padding-top: 20px;}

.cont06 ul { max-width: 780px; margin: 0 30px; padding: 0; display: flex; justify-content: space-between;}
.cont06 ul li { width: 254px;}
.cont06 ul li .img { padding: 0 0 10px;}
.cont06 ul li .txt { color: var(--color00_10); text-align: center;}
.cont06 ul li .txt p { font-size: 22px;}





}




