/* fuwa start */
.fadeUp {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-name: fadeUpAnime;
}

.fuwa {
	opacity: 0;
}
/* fuwa end */

/* 共通 */
.section-pc {
	display: block;
}

.section-sp {
	display: none;
}

body {
	background: white;
	max-width: 1400px;
	margin: 0 auto;
	font-family: "Noto Sans JP", sans-serif;
	box-shadow: 0 10px 10px 0 rgba(0, 0, 0, 0.25);
}

a {
	transition: 0.3s;
}

a:hover {
	opacity: 0.7;
}

img {
	height: auto;
	width: 100%;
}
/* /共通 */

/* header */
header {
	background-color: #ffffff;
	margin: 0 auto;
	position: static;
}

header .inner {
	margin: 0 auto;
	max-width: 1200px;
	padding: 10px 0;
	position: relative;
	width: 95%;
}

header .shoulder-title {
	color: #666666;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 10px;
	margin: 0 0 5px;
}

header img {
	height: 22px;
	width: auto;
}

header .signin {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

header .signin a {
	border: 1px solid #ADB5D0;
	border-radius: 4px;
	color: #ADB5D0;
	display: inline-block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	letter-spacing: 0;
	min-height: 28px;
	padding: 6px 11px 6px 11px;
	text-decoration: none;
}
/* /header */


/* fv-slider */
.slick-slide img{
	border-radius: 10px;
}

.slick-initialized .slick-slide{
	margin-right: 15px;
	width: 32.55vw;
	max-width: 457px;
}
/* /slider */


/* pc fv-ttl */
.fv-pc{
	position: relative;
}

.fv-pc_ttl_wrap{
	/* bottom: -62px; */

	position: absolute;
	bottom: -12%;
	width: 100%;
	height: clamp(130px, 38%, 200px);
	background: linear-gradient(to right, #A39FC9, #80A7C3);
	transform: skew(0deg, -5deg);
}

.fv-pc_ttl_flex{
	/* bottom: 60px; */
	/* gap: 72.65px; */

	position: relative;
	bottom: 30%;
	display: flex;
	gap: 5%;
	justify-content: center;
	align-items: flex-end;
	transform: skew(0deg, 5deg);
	margin: 0 auto 38px;
}

@media screen and (max-width:935px) {
	.fv-pc_ttl_flex{
		bottom: 30px;
	}
}

@media screen and (max-width:835px) {
	.fv-pc_ttl_flex{
		bottom: 20px;
	}
}

.fv-pc_ttl_inner{
	display: inline-block;
	max-width: 478px;
	width: 34%;
}

.fv-pc_ttl{
	background-color: #fff;
	display: inline-block;
	padding: 0 7.5px;
}

.fv-pc_ttl:first-child{
	/* margin-bottom: 22px; */

	margin-bottom: 4.6%;
	white-space: nowrap;
}

.fv-pc_ttl span{
	/* font-size: 40px; */

	background: linear-gradient(to right, #A39FC9, #80A7C3);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-size: clamp(26px, 2.9vw, 40px);
	font-weight: bold;
	letter-spacing: .1em;
}

.fv-pc_ttl_bg{
	/* font-size: 48px !important; */

	font-size: clamp(26px, 3.4vw, 48px) !important;
	line-height: 1.4583;
}

.fv-pc_txt{
	/* font-size: 16px; */

	color: #fff;
	font-size: clamp(12px, 1.2vw, 16px);
	line-height: 2;
	letter-spacing: .1em;
}
/* /pc fv-ttl */

/* sp fv-ttl */
.fv-sp{
	min-height: 426px;
	position: relative;
	background: linear-gradient(to right, #A39FC9, #80A7C3);
}

.fv-sp_ttl_wrap{
	position: absolute;
	bottom: clamp(-55px,-7.1vw,-26px);
	/* bottom: -6.1%; */
	width: 100%;
	height: clamp(130px, 54vw, 255px);
	/* height: clamp(130px, 47.5%, 210px); */
	background: linear-gradient(to right, #A39FC9, #80A7C3);
	transform: skew(0deg, -8deg);
}

.fv-sp_ttl_flex{
	position: relative;
	bottom: 1%;
	/* bottom: 13%; */
	display: flex;
	flex-direction: column;
	gap: 14px;
	justify-content: center;
	align-items: flex-start;
	transform: skew(0deg, 8deg);
	margin: 0 0 0 4.8%;
}

@media screen and (max-width:700px) {
	.fv-sp_ttl_flex{
		bottom: 2.5%;
	}
}

@media screen and (max-width:625px) {
	.fv-sp_ttl_flex{
		bottom: 4.5%;
	}
}

@media screen and (max-width:575px) {
	.fv-sp_ttl_flex{
		bottom: 6%;
	}
}

@media screen and (max-width:525px) {
	.fv-sp_ttl_flex{
		bottom: 7%;
	}
}

@media screen and (max-width:460px) {
	.fv-sp_ttl_flex{
		bottom: 9%;
	}
}

@media screen and (max-width:420px) {
	.fv-sp_ttl_flex{
		bottom: 11%;
	}
}

@media screen and (max-width:390px) {
	.fv-sp_ttl_flex{
		bottom: 13%;
	}
}

.fv-sp_ttl_inner{
	display: inline-block;
	max-width: 478px;
	/* width: 325px; */
}

.fv-sp_ttl{
	background-color: #fff;
	display: inline-block;
	padding: 0 7.5px;
}

.fv-sp_ttl:first-child{
	margin-bottom: 3.9%;
	white-space: nowrap;
}

.fv-sp_ttl span{
	background: linear-gradient(to right, #A39FC9, #80A7C3);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-size: clamp(20px, 6.9vw, 26px);
	font-weight: bold;
	letter-spacing: .1em;
}

.fv-sp_ttl_bg{
	font-size: clamp(26px, 8.6vw, 32px) !important;
	/* font-size: clamp(26px, 8.5vw, 48px) !important; */
	line-height: 1.4583;
}

.fv-sp_txt{
	color: #fff;
	font-size: clamp(10px, 3.2vw, 13px);
	/* font-size: clamp(12px, 1.2vw, 16px); */
	line-height: 1.8;
	letter-spacing: .1em;
}
/* /sp fv-ttl */


.pc-main img {
	vertical-align: middle;
}

/* img-1 (sec1-slider) pc,sp */
.img-1 {
	position: relative;
	background-color: #fff;
	/* padding: 45px 0 141px; */
	padding: 3.2% 0 10.1%;
}

.img-1 > p{
	/* display: block;
	max-width: 279px;
	width: 20%; */
	/* margin: 0 auto 41px; */

	text-align: center;
	margin: 0 auto 3%;
	font-size: clamp(20px, 2.4vw, 32px);
	font-weight: bold;
	line-height: 1.4375;
	color: #3A3A3A;
	letter-spacing: .1em;
}

.img-1 > .slick-initialized .slick-slide{
	background: linear-gradient(135deg, #A39FC9, #80A7C3);
	padding: 15px 12px 23px;
	border-radius: 13.48px;
	color: #fff;
	/* width: auto; */
	width: 27.6vw;
	max-width: 386px;
}

.img-1 .sec1-slider{
	display: flex !important;
	flex-direction: column;
	align-items: center;
}

.img-1 .sec1-slider img{
	margin-bottom: 20px;
}

.sec1-slider_wrap{
	position: relative;
}

.sec1-slider_txt{
	/* font-size: 22px; */
	font-size: clamp(16px, 1.572vw, 22px);
	line-height: 1.4545;
	/* padding-bottom: 12.5px; */
	font-weight: bold;
	letter-spacing: .15em;
	/* margin-bottom: 10.5px; */
	white-space: nowrap;
}

.sec1-slider_txt::after{
	content: '';
	position: relative;
	display: block;
	margin: 12.5px auto 10.5px;
	height: 1.5px;
	width: 43px;
	background-color: #fff;
}

.sec1-slider_subtxt{
	font-weight: 500;
	/* font-size: 16px; */
	font-size: clamp(12px, 1.15vw, 16px);
	line-height: 1.4375;
	letter-spacing: .15em;
}

@media screen and (max-width:767px) {
	.img-1{
		padding: 11% 0 20.1%;
	}

	.img-1 > p{
		font-size:  clamp(16px, 5.5vw, 24px);
		margin-bottom: 6.7%;
		line-height: 1.45;
	}

	.img-1 > .slick-initialized .slick-slide{
		padding: 10px 8px 13px;
		border-radius: 8.8px;
		width: 67.2vw;
		max-width: 252px;
		margin-right: 15px;
	}

	.img-1 .sec1-slider img{
		margin-bottom: 13px;
	}

	.sec1-slider_txt::after{
		width: 28px;
		height: 1px;
		margin: 7px auto;
	}
}

/* slick arrow */
.arrow{
	position: absolute;
	/* width: 45px; */
	width: clamp(20px, 3.22vw, 45px);
	/* height: 71px; */
	height: clamp(31.5px, 5.1vw, 71px);
	z-index: 10;
	top: calc(50% - 35.5px);
	/* right: 0; */
	right: 7.48%;
	cursor: pointer;
}

.arrow-prev{
	right: auto;
	left: 7.48%;
	transform: scale(-1, 1);
}

@media screen and (max-width:767px) {
	.arrow{
		display: none !important;
	}
}
/* /slick arrow */

/* dots */
.slick-dots{
	bottom: -14% !important;
	/* bottom: -60px !important; */
}

.slick-dots li{
	margin: 0 7.5px !important;
	padding: 0 !important;
	width: 13px !important;
	height: 13px !important;
}

.slick-dots li button{
	padding: 0 !important;
	width: 100% !important;
	height: 100% !important;
}

.slick-dots li button:before{
	font-size: 13px !important;
	line-height: 1.1 !important;
	width: 100% !important;
	height: 100% !important;
	opacity: 1 !important;
	color: #d9d9d9 !important;
}

.slick-dotted.slick-slider{
	margin: 0 !important;
}

.slick-dots li.slick-active button:before{
	background: linear-gradient(90deg, #A39FC9, #80A7C3);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

@media screen and (max-width:767px) {
	.slick-dots{
		/* bottom: -28px !important; */
		bottom: -9.3% !important;
	}

	.slick-dots li{
		margin: 0 4px !important;
		width: 7px !important;
		height: 7px !important;
	}

	.slick-dots li button:before{
		font-size: 10px !important;
		transform: scale(0.7);
		transform-origin: left top;
		width: 10px !important;
		height: 10px !important;
	}
}
/* /dots */
/* /img-1 (sec1-slider) */

/* pc-img-2 */
.pc-img-2 {
	position: relative;
	background-color: #F0F4F9;
	padding: 3.5% 20px 3.8%;
}

.pc-img-2 > p{
	/* display: block;
	max-width: 560px;
	width: 41.2%; */
	text-align: center;
	margin: 0 auto 3%;
	font-size:  clamp(20px, 2.4vw, 32px);
	font-weight: bold;
	line-height: 1.4375;
	color: #3A3A3A;
	letter-spacing: .1em;
}

.pc-img-2-contents {
	height: auto;
	display: flex;
	justify-content: center;
	gap: clamp(8px,1.1vw,15px) clamp(8px,1.3vw,18px);
	/* gap: 1.1vw 1.3vw; */
	flex-wrap: wrap;
	max-width: 900px;
	margin: 0 auto;
}

@media screen and (max-width:1110px) {
	.pc-img-2-contents {
		max-width: 730px;
	}
}

.pc-img-2-text {
	color: #FFF;
	text-align: center;
	font-family: Noto Sans JP;
	font-size: clamp(16px, 1.57vw, 22px);
	/* font-size: clamp(1rem, 0.814rem + 0.76vw, 1.5rem); */
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	letter-spacing: 1.2px;

	/* height: 51px; */
	/* padding: 0.7% 7%; */
	padding: 0.7% clamp(20px,7%,63px);

	border-radius: 33.5px;
	background: linear-gradient(90deg, #A39FC9, #80A7C3);
}
/* /pc-img-2 */

.pc-img-5 {
	/* margin-top: 80px; */
	position: relative;
}

.pc-img-5-btn {
	width: 100%;
	height: auto;
	position: absolute;
	transform: translateX(-50%);
	left: 50%;
	bottom: 20%;
	display: flex;
	align-items: flex-start;
	align-content: flex-start;
	gap: 15px 18px;
	flex-wrap: wrap;
}

/* sp-img-2 */
.sp-img-2 {
	position: relative;
	background-color: #F0F4F9;
	padding: 13.7% 0 13.5%;
}

.sp-img-2 > p{
	text-align: center;
	font-size:  clamp(16px, 5.5vw, 24px);
	font-weight: bold;
	line-height: 1.4375;
	color: #3A3A3A;
	margin: 0 auto 5.5%;
	line-height: 1.45;
	letter-spacing: .1em;
}

.sp-img-2-contents {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.sp-img-2-text {
	color: #FFF;
	text-align: center;
	font-family: Noto Sans JP;
	font-size: clamp(10px, 4.3vw, 26px);
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	letter-spacing: 0.8px;
	width: 43%;
	padding: 4px 0px;

	border-radius: 33.5px;
	background: linear-gradient(90deg, #A39FC9, #80A7C3);
}
/* /sp-img-2 */

.sp-img-5 {
	/* margin-top: 80px; */
	position: relative;
}

.sp-img-5-btn {
	width: 100%;
	height: auto;
	position: absolute;
	transform: translateX(-50%);
	left: 50%;
	bottom: 12%;
	display: flex;
	align-items: flex-start;
	align-content: flex-start;
	gap: 15px 18px;
	flex-wrap: wrap;
}

.pc-button {
	display: block;
	margin: 0 auto;
	max-width: 890px;
	width: 30%;
	z-index: 10;
}

.pc-button img {
	position: relative;
	z-index: 10;
}

.section {
	background-color: #fff;
	height: auto;
	margin: 0 auto;
	/* max-width: 400px; */
	width: 100%;
}

.section img {
	display: block;
}

.section-1 {
	position: relative;
}

.section-1-content {
	bottom: 8%;
	position: absolute;
}

.section-1-button-top {
	margin: 0 auto;
	width: 69%;
}

.section-1-button {
	display: block;
	margin: 0 auto;
	width: 85%;
}

.section-under {
	position: relative;
}

.section-under img {
	display: block;
}

#section-button {
	background: rgba(255, 255, 255, 0.5);
	bottom: 0;
	display: block;
	left: 50%;
	/*はじめは非表示*/
	opacity: 0;
	padding: 5px 0;
	position: fixed;
	transform: translate(-50%, 200px);
	width: 100%;
	max-width: 1400px;
	z-index: 10;
}

/*　上に上がる動き　*/

#section-button.UpMove {
	animation: UpAnime 0.5s forwards;
}

/*　下に下がる動き　*/

#section-button.DownMove {
	animation: DownAnime 0.5s forwards;
}

.button {
	display: none;
	margin: 0 auto;
	max-width: 663px;
	width: 85%;
	z-index: 10;
}

.button img {
	position: relative;
	z-index: 10;
}

.img-5 {
	margin-top: 20px;
}

/* FOOTER */

.footer-sp {
	background-color: #fff;
	margin: 0 auto;
	max-width: 1400px;
	padding: 0 0 90px 0;
	width: 100%;
}

.footer-sp ul {
	display: flex;
	justify-content: center;
	padding: 30px 4%;
}

.footer-sp ul li {
	font-size: 13px;
	margin: 0 4%;
}

.footer-sp ul li a {
	color: #333333;
	font-family: "Noto Sans JP", sans-serif;
	text-decoration: none;
	font-size: clamp(10px, 3.5vw, 13px);
}

.footer-logo {
	text-align: center;
}

.footer-logo img {
	height: auto;
	width: 200px;
}

.footer-copyright {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 12px;
	padding: 20px 4%;
	text-align: center;
}

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

	header {
		/* max-width: 400px; */
	}

	.section-pc {
		display: none;
	}

	.section-sp {
		display: block;
	}

	body {
		background: white;
		position: relative;
	}

	body::after {
		content: "";
		height: 44px;
		left: 40px;
		position: fixed;
		top: 40px;
		width: 106px;
		z-index: -1;
	}

	.slick-slide img{
		border-radius: 0;
	}

	.slick-initialized .slick-slide{
		margin-right: 0;
		width: 100%;
		max-width: 375px;
	}

	.pc-button {
		display: none;
	}

	#section-button {
		max-width: 400px;
	}

	.button {
		display: block;
	}

	.footer-sp {
		max-width: 400px;
	}


	.footer-sp {
		padding: 0 0 13% 0;
	}

	.footer-copyright {
		padding: 10% 4%;
	}

	.footer-sp ul {
		padding: 11% 4%;
	}

}

@media screen and (max-width: 320px) {

	.footer-sp ul li {
		font-size: 1rem;
	}

}

@keyframes fadeUpAnime {

	0% {
		opacity: 0;
		transform: translateY(100px);
	}

	100% {
		opacity: 1;
		transform: translateY(0);
	}

}

@keyframes UpAnime {

	from {
		opacity: 0;
		transform: translate(-50%, 200px);
	}

	to {
		opacity: 1;
		transform: translate(-50%, 0px);
	}

}

@keyframes DownAnime {

	from {
		opacity: 1;
		transform: translate(-50%, 0px);
	}

	to {
		opacity: 1;
		transform: translate(-50%, 200px);
	}

}