@charset "UTF-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Castoro:ital@0;1&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Outfit:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,opsz,wght@0,6..96,400..900;1,6..96,400..900&family=Castoro:ital@0;1&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Outfit:wght@100..900&display=swap');
/*html{
	margin: 0;
	padding: 0;
	font-size: 10px;
}
body{
	font-size: 1.6rem;
	margin: 0;
	padding: 0px;
	line-height: 5.2rem;
	font-family: "Noto Serif JP", serif;
}
img{
	width: 100%;
}

section{
	padding: 0px 2.02vw;
}
h1,h2{
	margin: 0;
	padding: 0;
}
p{
	margin: 0;
	padding: 0;
}*/

/*cnt*/
section{
	padding: 0px 2.02vw;
}
section p{
	font-family: "Noto Serif JP";
}
.main{
	padding: 40px 0px 160px;
}
.main .ttl{
	max-width:521px;
	margin: 0 auto 28px;
}
.cnt h2{
	font-family: "Bodoni Moda", serif;
	font-size: 5.5rem;
	line-height: 7rem;
	letter-spacing: 8px;
	font-weight: 700;
}
.cnt1{
	padding: 0px 12.5vw 240px;
}
.cnt1 .column{
	display: flex;
	gap:80px;
	align-items: center;
}
.cnt1 .column .col{
	width: calc(100%/2 - 80px);
}
.cnt1 .column .col p{
	font-size: 1.8rem;
	line-height: 4.5rem;
	letter-spacing: 2px;
}
.cnt2 .cnt_txt{
	padding: 0px 12.5vw 60px;
}
.cnt2 .cnt_txt h2{
	max-width: 785px;
	margin-bottom: 41px;
}
.cnt2 .cnt_txt p{
	font-size: 1.6rem;
	line-height: 4rem;
	letter-spacing: 2px;
}
.cnt2 .cnt_img{
	padding-bottom: 240px;
}
.cnt3 .cnt_txt{
	padding: 0px 12.5vw 0px;
}
.cnt3 .cnt_txt h2{
	max-width: 453px;
	margin-bottom: 41px;
}
.cnt3 .cnt_txt p{
	font-size: 1.6rem;
	line-height: 4rem;
	letter-spacing: 2px;
}
.cnt3 .cnt_img{
	padding-bottom: 240px;
}
.cnt4{
	padding-bottom: 224px;
}
.cnt4 .column{
	display: flex;
	gap:80px;
}
.cnt4 .column .col:first-child{
	padding-top: 100px;
}
.cnt4 .column .col .cnt_txt h2{
	max-width: 289px;
	margin-bottom: 41px;
}
.cnt4 .column .col .cnt_txt p{
	font-size: 1.6rem;
	line-height: 4rem;
	margin-bottom: 100px;
	letter-spacing: 2px;
}
.cnt5{
	padding: 0px 12.5vw 200px;
}
.cnt5 .cnt_txt{
	margin-bottom: 40px;
}
.cnt5 .cnt_txt h2{
	max-width: 804px;
	font-size: 4.4rem;
	letter-spacing: 8px;
}
.cnt5 .cnt_txt h2 span{
	font-size: 4rem;
	line-height: 5rem;
	font-weight: 500;
	font-family: "Noto Serif JP", serif;
	margin-bottom: 27px;
	letter-spacing: 8px;
}
.cnt5 .cnt_txt p{
	font-size: 1.6rem;
	line-height: 4rem;
	letter-spacing: 2px;
}
.cnt5 .cnt_txt p:last-child{
	margin-top: 40px;
}
.pc{
	display: block;
}
.sp{
	display: none;
}
.scroll_down {
  opacity: 0;
  transform: translateY(40px);
  transition: all 0.8s ease-out;
}

.scroll_down.show {
  opacity: 1;
  transform: translateY(0);
}
@media screen and (max-width: 1024px) {
	.cnt1{
		padding: 0px 0px 240px;
	}
	.cnt2 .cnt_txt {
		padding: 0px 0px 60px;
	}
	.cnt3 .cnt_txt {
		padding: 0px 0px 0px;
	}
	.cnt5 {
		padding: 0px 0px 200px;
	}
	/*.cnt5 .cnt_txt h2 .sp{
		display: block;
	}*/
}
@media screen and (max-width: 767px) {
	.pc{
		display:none;
	}
	.sp{
		display: block;
	}
	section{
		padding: 0px 0px;			
	}
	.main{
		padding: 0px 20px 90px;
	}
	.main .ttl{
		max-width: 333px;
		padding: 35px 0px 22px;
		margin-bottom: 0px;
	}
	.cnt1{
		padding: 0px 20px 80px;
	}
	.cnt1 .column{
		display: flex;
		align-items: flex-end;
		flex-direction: column-reverse;
		gap:40px;
	}
	.cnt1 .column .col{
		width: 100%;
	}
	.cnt1 .column .col:first-child{
		max-width: 260px;
	}
	.cnt1 .column .col:last-child{
	   	display: flex;
	}
	.cnt1 .column .col p{
		font-size: 1.5rem;
		line-height: 3.6rem;
	}
	.cnt2{
		padding: 0px 0px 0px;
	}
	.cnt2 .cnt_img{
		padding-bottom: 100px;
	}
	.cnt2 .cnt_txt {
		padding: 0px 20px 40px;
	}
	.cnt2 .cnt_txt h2{
		max-width: 290px;
		font-size: 4rem;
		line-height: 5.4rem;
		margin-bottom: 35px;
	}
	.cnt2 .cnt_txt p{
		font-size: 1.4rem;
		line-height: 3rem;
	}
	.cnt3{
		padding-bottom: 100px;
	}
	.cnt3 .cnt_txt {
		padding: 0px 20px 40px;
	}
	.cnt3 .cnt_txt h2{
		max-width: 321px;
		font-size: 4rem;
		line-height: 5.4rem;
		margin-bottom: 13px;
	}
	.cnt3 .cnt_txt p{
		font-size: 1.4rem;
		line-height: 3rem;
	}
	.cnt3 .cnt_img{
		padding-bottom: 0px;
	}
	.cnt4{
		padding-bottom: 111px;
	}
	.cnt4 .column{
		display: block;
	}
	.cnt4 .column .col.pc{
		display: none;
	}
	.cnt4 .column .col{
		padding-top: 0px;
		max-width: 100%;
		display: flex;
		justify-content: flex-end;
	}
	.cnt4 .column .col:last-child{
		padding: 0px 20px;
	}
	.cnt4 .column .col .cnt_txt h2{
		max-width: 205px;
		font-size: 4rem;
		line-height: 5.4rem;
		margin-bottom: 13px;
	}
	.cnt4 .column .col .cnt_txt p{
		font-size: 1.4rem;
		line-height: 3rem;
		margin-bottom: 40px;
	}
	.cnt5{
		padding: 0px 20px 120px;
	}
	.cnt5 .cnt_txt h2{
		max-width: 283px;
		font-size: 3rem;
		line-height: 5.4rem;
		margin-bottom: 6px;
		letter-spacing: 4px;
	}
	.cnt5 .cnt_txt h2 span{
		font-size: 2.8rem;
		line-height: 5rem;
	}
	.cnt5 .cnt_txt p{
		font-size: 1.4rem;
		line-height: 3rem;
	}
}