.container{
    background: #F4F1EA;
    padding-top: 165px;
}
.container img{
    width:100%;
    display:inline-block;
    vertical-align: bottom;
}
@media screen and (max-width: 768px){
    .container{padding-top:85px;}
}

.wedding-contents{
    width:100%;
    max-width:1200px;
    margin:auto;
    display: flex;
    position: relative;
}
.wedding-contents > div{
    width:50%;
    max-width:600px;
    aspect-ratio:1;
    position: relative;
    overflow: hidden;
}
.wedding-main h2{
    position:absolute;
    top:0;
    left:0;
    right:0;
    width:500px;
    margin:auto;
    z-index:99;
}
@media screen and (max-width: 768px){
    .wedding-main > div{aspect-ratio:200/600;}
    .wedding-main h2{width:100%;}
}

.wedding-text > div{
    display: flex;
    aspect-ratio:600/400;
}
.wedding-text .text-box{
    background: #333;
    width:100%;
    min-width:400px;
    z-index:10;
    aspect-ratio:400/400;
}
.wedding-text h3{
    width:calc(100% - 60px);
    margin:auto;
    padding:40px 30px 0px 30px;
}
.wedding-text p{
    color: #FFF;
    font-size: 14px;
    font-weight: normal;
    line-height: 27px;
    padding:30px 30px 45px 30px;
    margin:0;
}
.wedding-text a{
    border: 1px solid #BA9F67;
    color: #BA9F67;
    font-size: 12px;
    font-weight: normal;
    line-height: 27px;
    display: block;
    width:200px;
    text-align:center;
    padding:7px 0px 6px 0px;
    margin:0px 0px 40px 30px;
}
.wedding-text a > span{
    display:inline-block;
    position:relative;
}
.wedding-text a > span::after{
    content:"";
    width:10px;
    height:10px;
    background-image: url(../images/wedding/arrow10px.png);
    background-repeat: no-repeat;
    background-size: cover;
    display:inline-block;
    margin:0px 0px 0px 11px;
}
.wedding-text .img-box{
    width:100%;
    aspect-ratio:200/400;
}
.wedding-text .img-box .img-switch{
    width:100%;
    position:relative;
}
.wedding-text .sp-img-box{display:none;}
@media screen and (max-width: 768px){
    .wedding-text{flex-wrap:wrap;}
    .wedding-text > div{
        width:100%;
        max-width:none;
        flex-wrap:wrap;
        height:auto;
        aspect-ratio:400/1200;
    }
    .wedding-text .text-box{
        width:100%;
        max-width:none;
        min-width:none;
        aspect-ratio:1;
    }
    .wedding-text .img-box{display:none;}
    .wedding-text .sp-img-box{
        display:flex;
        flex-wrap:wrap;
        width:100%;
        aspect-ratio:400/800;
        position: relative;
    }
    .wedding-text .sp-img-box > div{
        aspect-ratio:200/400;
        overflow: hidden;
        position: relative;
        width:50%;
    }
    .wedding-text .sp-img-box > .bottom{
        width:100%;
        aspect-ratio:1;
    }
    .wedding-text .lvl .sp-img-box .left{
        display: flex;
        flex-wrap:wrap;
        position: relative;
    }
    .wedding-text .lvl .sp-img-box .left > div{
        position: relative;
        width: 100%;
        aspect-ratio:1;
        overflow: hidden;
        
    }
}

.wedding-img > div{
    display: flex;
    aspect-ratio: 600/400;
}
.wedding-img .stella .narrow{
    width: 33.33%;
    position: relative;
    z-index:10;
    overflow: hidden;
}
.wedding-img .wide{
    width: 66.6667%;
    aspect-ratio:1;
    position: relative;
}

.wedding-img .lvl .narrow{
    width: 33.33%;
    display: flex;
    flex-wrap:wrap;
    z-index:10;
    overflow: hidden;
}
.wedding-img .upper,.wedding-img .lower{
    position: relative;
    aspect-ratio: 1;
    width: 100%;
}
@media screen and (max-width: 768px){
    .wedding-img{display:none;}
}







/* img-switch アニメーション */
.img-switch > div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
}

.img-switch > div.active {
	opacity: 1;
	animation: zoomOut 8s ease-out forwards;
}

.img-switch > div.fadeout {
	animation: fadeOutDissolve 2s ease-out forwards;
}

.img-switch > div.fadein {
	animation: fadeInDissolve 2s ease-out forwards, zoomOut 8s ease-out forwards;
}

@keyframes zoomOut {
	0% {
		transform: scale(1.1);
	}
	100% {
		transform: scale(1);
	}
}

@keyframes fadeOutDissolve {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

@keyframes fadeInDissolve {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

