.fadeIn_up {
	opacity: 0;
	transform: translate3d(0, 50px, 0);
}
.fadeIn_up--caption {
	opacity: 0;
	transform: translate3d(0, 30px, 0);
}
@media screen and (max-width: 768px) {
	.fadeIn_up--caption {
		opacity: 0;
		transform: translate(-10%, 0);
	}
}
.fadeIn_left {
	opacity: 0;
	transform: translate(-10%, 0);
}
.fadeIn_right {
	opacity: 0;
	transform: translate(10%, 0);
}
.fadeIn {
	transition: 0.7s;
	opacity: 0;
}
.fadeIn.animated,
.is-show {
	transform: translate3d(0, 0, 0);
	opacity: 1;
}
.fadeDelay {
	transition-delay: 0.2s;
}
.fadeDelay2 {
	transition-delay: 0.7s;
}
@media screen and (min-width: 768px) {
	br.sp {
		display: none;
	}
}

main {
	max-width: 1000px;
	font-family: "Shippori Mincho", serif;
	font-size: 16px;
	color: #000;
	width: 100%;
	margin: 0 auto 72px;
	overflow: hidden;
}
@media screen and (max-width: 767px) {
	main {
		margin:0 auto 4%;
	}
}
.mv {
	max-width: 900px;
	width: 100%;
	margin: 0 auto;
}
.main__copy,
.contents04__copy {
	width: 100%;
	font-size: 24px;
	text-align: center;
	margin: 50px 0;
	line-height: 1.6;
	color: #FA2C50;
}

.caption a {
	width: 390px;
    padding: 3px 20px;
    color: #fff;
    font-family: sans-serif;
    text-decoration: none;
    display: inline-block;
    background: #FA2C50;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.caption {
		width: 80%;
		margin: 0 auto;
	}
	.caption a {
        width: 80%;
		font-size: min(4vw, 17px);
		background: #FA2C50;
	}
	.main__copy{
		font-size: min(4.8vw, 20px);
		padding: 0 4%;
		box-sizing: border-box;
		margin: 2em 0 3em;
	}
}

.contents01 {
	max-width: 880px;
	display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
	position: relative;
	margin-bottom: 156px;
}
.contents01 picture {
	margin-left: 60px;
}
.contents01 picture img{
	width:320px;
}
.contents01__caption {
	position: absolute;
	right: 0;
	bottom: 0;
}
.contents01__copy{
	line-height: 2;
}
@media screen and (max-width: 768px) {
	.contents01 {
		display: flex;
        justify-content: center;
		margin-bottom: 72px;
		flex-direction: column;
	}
	
	.contents01 picture {
		width: 80%;
		text-align: center;
		margin: 0 auto 24px;
	}
	.contents01__copy {
        width: 80%;

        max-width: 320px;
        text-align: left;
        font-size: min(4vw, 17px);
	}
	.contents01__caption {
		position: static;
		margin: 32px 0 0;
	}
}
.contents02 {
	max-width: 900px;
	width: 100%;
	margin: 0 auto 120px;
	position: relative;
}
.contents02__image {
	position: relative;
	margin-bottom: 32px;
}
.contents02__copy {
	color: #000;
		text-align: center;
	margin: 32px auto;
	font-size:24px;
}
.contents02__caption {
	position: absolute;
	max-width: 900px;
	margin: 0 auto 120px;
	right: 0;
}

@media screen and (max-width: 768px) {
	.contents02 {
	 margin: 0 auto 72px;
	}
	.contents02__copy {
		font-size: min(4vw, 17px);
        padding: 0 4%;
        box-sizing: border-box;
        margin: 2em 0;
	}
	.contents02__caption {
	position:static;
	margin: 0 auto 72px;
}
}

.contents03 {
	max-width: 900px;
	margin: 0 auto 150px;
	position: relative;
}
.contents03__copy {
	text-align: center;
	margin: 50px auto;
}
.contents03__caption {
	position: absolute;
	left: 0;
	margin-top: 32px;
}
@media screen and (max-width: 768px) {
	.contents03 {
		margin: 0 auto 72px;
	}
	.contents03__copy {
		width: 65%;
		text-align: left;
	}
	.contents03__caption {
		position: static;
	}
}

.contents04 {
	display: flex;
    justify-content: center;
    flex-wrap: wrap;
	gap: 48px;
}
.contents04 h2 {
	font-size: 24px;
    text-align: center;
    line-height: 2;
    color: #FA2C50;
}
.contents04_caption01,
.contents04_caption02 {
	max-width: 800px;
	position: relative;
}
.contents04_caption01 a,
.contents04_caption02 a {
	display: flex;
	gap: 40px;
	position:relative;
	text-decoration: none;
	align-items: center;
}
.contents04_picture {
	width: 100%;
	max-width: 320px;
}
.contents04_picture span {
	position: absolute;
	font-family: sans-serif;
	font-style: italic;
	color: #fff;
	font-size: 20px;
	top: 42%;
	left: 90px;
}
.contents04_picture picture {
	width: 100%;
	max-width: 320px;
}
.contents04_caption01 p,
.contents04_caption02 p {
	line-height: 1.6;
	color: #525252;
}
.contents04_caption02 {
	flex-direction: row-reverse;
}
.contents04_caption02 .contents04_picture span {
	left: inherit;
	right: 90px;
}
.contents04__copy{line-height: 2;}
.contents04 ._catch{color: #FA2C50;font-size:18px;}
.contents04 .area_name{margin-top:2em;}
.contents04 .area_info{width:410px;}


	@media screen and (max-width: 768px) {
		.contents04__copy {
		font-size: min(4.8vw, 20px);
        padding: 0 4%;
		margin-top: 0;
		}
		.contents04_caption01,
		.contents04_caption02 {
			width: 80%;
			margin-bottom: 12%;
		}
		.contents04_caption01 a,
		.contents04_caption02 a {
			gap: 16px;
            display: flex;
            flex-direction: column;
            align-content: center;
            align-items: center;
		}
		.contents04_picture {
			display: flex;
			justify-content: center;
			align-items: center;
		}
		.contents04_picture span {
			top: inherit;
			left: inherit;
		}
		.contents04_caption01 p,
		.contents04_caption02 p {
			padding: 0;
			font-size: min(4vw, 17px);
		}
		.contents04_caption02 .contents04_picture span {
			left: inherit;
			right: inherit;
		}
		.contents04 h2 {
        font-size: min(4.8vw, 20px);
        padding: 0 4%;
        margin-top: 0;
		margin-bottom: 8%;
		}
		.contents04{gap:unset;}
		.contents04 .area_info{width:100%;}
		.contents04 ._catch{font-size: min(4vw, 17px);}
		.contents04 .area_name{margin-top:1em;}
		.contents04 .area_name span{font-size: min(4vw, 17px);}
	}
@media screen and (max-width: 768px) {
	.slick-slider {
		width: 150%;
	}
}
.pc-only{
	
	@media screen and (max-width: 768px) {
		display: none!important;
	}
}

.sp-only{
	display: none!important;

	@media screen and (max-width: 768px) {
		display: block!important;
	}
}

.area_btn_all{width: 45%;margin: 0 auto;text-align: center;box-sizing: border-box;}
.area_btn_all a{background: #FA2C50;padding: 8px 8px 6px;text-decoration: none;box-sizing: border-box;display: block;text-align: center;color: #fff;font-family: sans-serif;}

@media screen and (min-width: 768px) {
	.area_btn_all a{transition:0.2s;}
	.area_btn_all a:hover{opacity:0.8;}
}
@media screen and (max-width: 768px) {
	.area_btn_all{width:80%;}
	.area_btn_all a{font-size: min(4vw, 17px);}	
}
