/* front-page以外の下層ページ用 */
*,
::before,
::after {
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}

html {
	font: 62.5%/1.5 'Zen Maru Gothic', sans-serif;
}

@media (max-width: 375px) {
	html {
		font-size: 2.666vw;
	}
}

img {
	height: auto;
}

a {
	text-decoration: none;
	transition: opacity 0.2s;
}

a:hover {
	opacity: 0.85;
}

ul {
	list-style-type: none;
}

.clamp-2lines {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	text-overflow: ellipsis;
}

.clamp-3lines {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
	text-overflow: ellipsis;
}

.columns-2-container {
	display: grid;
	grid-template-columns: 1fr clamp(25rem, 30vw, 30rem);
	gap: clamp(0rem, calc(99vw - 100rem), 3rem);
	width: 100%;
	max-width: 100rem;
	margin: 2rem auto clamp(5rem, 10vw, 10rem);
	font-weight: 500;
}

@media(max-width:800px) {
	.columns-2-container {
		grid-template-columns: repeat(1, 1fr);
		gap: clamp(8rem, 12vw, 12rem);
	}
}

/* reportPosts */
.report-posts {
	display: grid;
	padding: 1rem 4rem;
	grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr));
	gap: clamp(2rem, 4vw, 3rem);
}

.report-posts {
	margin: 0 auto;
}

.report-post article {
	width: 100%;
	max-width: 33rem;
	margin: 0 auto;
}

.report-post__thumbnail {
	width: 100%;
	aspect-ratio: 296/187;
	border-radius: clamp(0.8rem, 1vw, 1rem);
	overflow: hidden;
}

.report-post__thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s ease;
}

.report-post:hover img {
	transform: scale(1.1);
	opacity: 1;
}

.report-post__categories {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin: 1rem 0 0.5rem;
	gap: 0.5rem;
}

.report-post__categories li {
	position: relative;
	border: solid 0.1rem #D677C3;
	border-radius: 0.5rem;
	max-width: 100%;
	width: fit-content;
}

.report-post__categories li a,
.report-post__categories li span {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	color: #D677C3;
	padding: 0.5rem 1.8rem 0.5rem 3.5rem;
	display: inline-block;
}

.report-post__categories li::before {
	content: '';
	position: absolute;
	background-image: url('../images/common2/category.svg');
	top: 53%;
	left: 1.6rem;
	width: 1.4rem;
	height: 1.4rem;
	transform: translateY(-50%);
}

.report-post__title {
	font-size: clamp(2rem, 2vw, 2rem);
	font-weight: 700;
	margin: 1rem 0;
	line-height: 1.5;
	color: #8BA0D3;
}

.report-post__exc {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5;
	margin: 0 0 1rem;
}

.report-post__time {
	display: flex;
	justify-content: flex-end;
}

.report-post__time time {
	font-weight: 700;
	font-size: 1.6rem;
	color: #454545;
}

/* insertPosts */
.insert-posts {
	padding: clamp(8rem, 10vw, 10rem) clamp(4rem, 3.5vw, 3.5rem) 1rem;
	width: clamp(0rem, 100%, 104rem);
	margin: 0 auto;
}

.insert-posts h2 {
	font-size: clamp(2.6rem, 4vw, 4rem);
	letter-spacing: clamp(0.26rem, 0.4vw, 0.4rem);
	font-weight: bold;
	color: #8BA0D3;
	margin: 0 0 clamp(4rem, 8vw, 8rem);
	width: 100%;
}

.insert-posts ul {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr));
	gap: clamp(2rem, 4vw, 3rem);
}

.insert-posts li {
	margin: 0 auto;
	max-width: 33rem;
	width: 100%;
}

.insert-posts__reports-link {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: clamp(29.6rem, 60vw, 50rem);
	height: clamp(4.6rem, 8.5vw, 8.5rem);
	background-color: #F398BD;
	border-radius: 5rem;
	font-size: clamp(1.4rem, 3vw, 2.3rem);
	font-weight: 700;
	color: #fff;
	padding: 0 0 0.1rem;
	margin: clamp(3.1rem, 7.7vw, 7.7rem) auto 0;
	gap: clamp(2.5rem, 4vw, 4rem);
}

.insert-posts__reports-link span {
	position: relative;
	background-image: url(../images/common2/circle.webp);
	width: clamp(2rem, 4vw, 4rem);
	transition: transform 0.4s ease;
	pointer-events: none;
}

.insert-posts__reports-link span::before {
	position: absolute;
	content: '';
	background-image: url(../images/common2/arrow_right.svg);
	background-size: clamp(1rem, 2vw, 2rem);
	background-repeat: no-repeat;
	background-position: 51% 60%;
	width: clamp(2rem, 4vw, 4rem);
	height: clamp(2rem, 4vw, 4rem);

}

.insert-posts__reports-link:hover span {
	transform: translateX(1rem);
}
/* insertContact */
.insert-contact__container {
	width: min(100%, 104rem);
	margin: clamp(4rem, 8vw, 8rem) auto 0;
	padding: clamp(2rem, 3vw, 3rem) 4rem clamp(1rem, 2vw, 2rem);
}

.insert-contact {
	position: relative;
	width: 100%;
	margin: clamp(0rem, calc(30vw - 23rem), 17rem) 0 1rem;
	padding: 0 0 clamp(4rem, 3.8vw, 5rem);
}

.insert-contact h2 {
	position: relative;
	font-size: clamp(2.6rem, 3.8vw, 4.2rem);
	line-height: clamp(4rem, 4.6vw, 4.8rem);
	color: #ffff00;
	font-weight: 700;
	letter-spacing: clamp(0.4rem, 0.42vw, 0.42rem);
	transform: translateX(clamp(3rem, 4vw, 4rem));
}

.insert-contact h2::before {
	content: '';
	position: absolute;
	top: 50%;
	left: clamp(-4rem, -5vw, -3rem);
	transform: translateY(-43%);
	width: 0;
	border-left: clamp(1.3rem, 1.4vw, 1.4rem) solid transparent;
	border-right: clamp(1.3rem, 1.4vw, 1.4rem) solid transparent;
	border-top: clamp(1.5rem, 2vw, 2rem) solid #ffff00;
}

.insert-contact__content {
	font-size: clamp(2rem, 2.2vw, 2.4rem);
	color: #fff;
	font-weight: 500;
	line-height: 1.5;
	margin: clamp(1.5rem, 2.9vw, 2.9rem) 0;
}

.insert-contact__btns {
	display: flex;
	justify-content: center;
	gap: clamp(2.5rem, 3vw, 3rem);
	pointer-events: auto;
}

@media(max-width:500px) {
	.insert-contact__content-br {
		display: none;
	}

	.insert-contact__btns {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: clamp(1rem, 2.5vw, 2rem);
	}
}

.insert-contact__tel {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: min(46vw, 46rem);
	height: clamp(6rem, 10.5vw, 12rem);
	justify-content: center;
	background-color: #fff;
	border-radius: 6rem;
	gap: 0;
	justify-content: center;
}

@media(max-width:500px) {
	.insert-contact__tel {
		width: min(79.4vw, 35rem);
	}
}

.insert-contact__tel p {
	position: relative;
	font-size: clamp(2rem, 3.2vw, 3.2rem);
	line-height: 1.3;
	font-family: Helvetica, 'Noto Sans JP', sans-serif;
	font-weight: 700;
	color: #F398BD;
	transform: translateX(6%);
}

.insert-contact__tel p::before {
	content: '';
	position: absolute;
	background-size: contain;
	background-repeat: no-repeat;
	width: clamp(1.6rem, 2.4vw, 2.4rem);
	height: clamp(1.8rem, 2.7vw, 2.7rem);
	background-image: url('../images/common2/tel.svg');
	top: 50%;
	left: clamp(-3.6rem, -3.6vw, -2.4rem);
	transform: translateY(-55%);
}

.insert-contact__tel small {
	font-size: clamp(1.4rem, 2vw, 1.8rem);
	font-weight: 500;
	color: #F398BD;
}

.insert-contact__contact-link {
	border-radius: 6rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background-color: #fff;
	width: min(46vw, 46rem);
	height: clamp(6rem, 10.5vw, 12rem);
	;
}

@media(max-width:500px) {
	.insert-contact__contact-link {
		width: min(79.4vw, 35rem);
	}
}

.insert-contact__contact-link p {
	color: #4868F0;
	font-size: clamp(1.9rem, 3.2vw, 3.2rem);
	font-weight: 500;
	line-height: 1.4;
}

.insert-contact__contact-link small {
	font-size: clamp(1.4rem, 2vw, 1.8rem);
	font-weight: 500;
	line-height: 1.6;
	color: #4868F0;
}

.insert-contact {
	--bg2-height: clamp(8rem, calc(27vw - 9rem), 19rem);
	--bg-top: clamp(14rem, 14vw, 17rem);
}

.insert-contact__bg1 {
	z-index: -5;
	position: absolute;
	top: calc(-2rem + var(--bg-top) - clamp(17rem, calc(19vw + 3rem), 40rem) + 0.1rem);
	left: 0;
	height: clamp(17rem, calc(19vw + 3rem), 40rem);
	width: 100%;
	min-width: 83rem;
}

.insert-contact__bg2 {
	z-index: -5;
	position: absolute;
	top: calc(-2rem + var(--bg-top));
	left: 0;
	width: 100%;
	min-width: 83rem;
	height: var(--bg2-height);
}

.insert-contact__bg3 {
	z-index: -5;
	position: absolute;
	top: calc(-2rem + var(--bg-top) + var(--bg2-height) - 0.1rem);
	left: 0;
	width: 100%;
	min-width: 83rem;
	height: clamp(5rem, calc(11.5vw + 1rem), 22rem);
}

@media(max-width:500px) {
	.insert-contact__bg2 {
		height: 15rem
	}

	.insert-contact__bg3 {
		top: calc(-2rem + var(--bg-top) + 15rem - 0.1rem);
		height: 9rem
	}
}

/* bottomContact */
.bottom-contact {
	position: relative;
	width: 100%;
	z-index: 0;
	padding: clamp(6rem, 10vw, 10rem) 0 0;
	clip-path: inset(-100rem 0 0 0);
	pointer-events: none;
}

.bottom-contact::after {
	position: absolute;
	content: '';
	background-image: url('../images/common2/flower_leaf.webp');
	background-size: cover;
	left: min(calc(85% + 3rem), calc(50% + 70rem));
	top: min(calc(-2rem + 20vw), 26rem);
	width: clamp(16rem, calc(95vw - 38rem), 90rem);
	aspect-ratio: 1;
	pointer-events: none;
	z-index: -4;
	transform: translateX(-50%) translateY(-50%);
}

.bottom-contact .insert-contact__bg3 {
	background-color: #87e;
	height: clamp(15rem, 20vw, 18rem);
}

/* subpage-faq */
.subpage-faq__details {
	width: min(100%, 104rem);
	margin: clamp(1.5rem, 3vw, 3rem) auto 0;
	padding: 0 4rem;
}

.subpage-faq__details summary {
	background-color: #8BA0D3;
	color: #fff;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	min-height: 6rem;
	border-radius: 1rem 1rem 1rem 1rem;
	font-weight: 700;
	font-size: clamp(1.6rem, 3vw, 2rem);
	line-height: 1.5;
	padding: clamp(1.5rem, calc(2rem - 0.5vw), 1.8rem) 0 1.5rem;
	transition: border-radius 0.4s ease;
}

.subpage-faq__details.answer-open summary {
	border-radius: 1rem 1rem 0 0;
}

.subpage-faq__q {
	font-family: Montserrat, sans-serif;
	font-size: clamp(2.4rem, 4.5vw, 3rem);
	font-weight: 600;
	line-height: clamp(2.7rem, 4.5vw, 3rem);
	width: clamp(4rem, 8vw, 6rem);
	text-align: center;
	flex-shrink: 0;
	transform: translateY(-0.1rem);
}

.subpage-faq__toggle-btn {
	min-width: clamp(4rem, 9vw, 6rem);
	height: 2.8rem;
	flex-grow: 1;
	flex-shrink: 0;
	position: relative;
	display: flex;
	justify-content: flex-end;
}

.subpage-faq__toggle-btn::before,
.subpage-faq__toggle-btn::after {
	position: absolute;
	content: '';
	width: 2rem;
	height: 0.3rem;
	border-radius: 0.3rem;
	background-color: #fff;
	top: 50%;
	right: min(calc(3vw - 1.2rem), 1.5rem);
	will-change: trasnform;
	transform: translateX(-50%) translateY(-50%);
}

.subpage-faq__toggle-btn::after {
	transform: translateX(-50%) translateY(-50%) rotate(90deg);
	transition: transform 0.4s ease;
}

.subpage-faq__details.answer-open .subpage-faq__toggle-btn::after {
	transform: translateX(-50%) translateY(-50%) rotate(0);
}

.subpage-faq__answer {
	border-radius: 0 0 1rem 1rem;
	background-color: #fff;
}


.subpage-faq__answer p {
	display: flex;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: clamp(2.4rem, 3vw, 3rem);
	margin: 1.3rem 2rem 1.5rem 0rem;
}
.subpage-faq__answer p span:not(.subpage-faq__a){
	font-size: 1.6rem;
	font-weight: 500;
	line-height: clamp(2.4rem, 3vw, 3rem);
}

.subpage-faq__a {
	font-family: Montserrat, sans-serif;
	display: block;
	font-size: clamp(2.4rem, 4.2vw, 3rem);
	font-weight: 600;
	color: #F398BD;
	flex-shrink: 0;
	line-height: 0.01;
	height: 0.01rem;
	width: clamp(4rem, 8vw, 6rem);
	text-align: center;
	transform: translateY(1.2rem);
}

/* reportAside */
.report-aside {
	width: 100%;
	max-width: 50rem;
	margin: 0 auto;
	padding: 0 2.5rem 0 0;
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

@media(max-width:800px) {
	.report-aside {
		padding: 0 4rem;
	}
}

.report-aside h3 {
	color: #8BA0D3;
	font-size: 1.6rem;
	margin: clamp(1rem, 2vw, 1.5rem) 0;
}

.report-aside__recent li {
	padding: clamp(1rem, 2vw, 1.5rem) 0;
	border-top: #8BA0D3 solid 0.1rem;
}

.report-aside__recent li:last-child {
	border-bottom: #8BA0D3 solid 0.1rem;
}

.report-aside__recent li a {
	display: flex;
	width: 100%;
	gap: clamp(1rem, 3%, 1.5rem);
	align-items: flex-start;
}

.report-aside__recent li a> :first-child {
	width: clamp(9rem, 39%, 11rem);
}

.report-aside__recent--img {
	height: 7rem;
}

.report-aside__recent--img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.report-aside__recent--title {
	flex: 1;
	color: #454545;
	font-size: 1.6rem;
	line-height: 1.5;
	margin-top: -0.2rem;
}

.report-aside__monthly ul {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	border-top: #8BA0D3 solid 0.1rem;
	padding: 1.8rem 0 0;
}

.report-aside__monthly li a {
	color: #454545;
	font-size: 1.4rem;
}

.report-aside__authors ul {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	border-top: #8BA0D3 solid 0.1rem;
	padding: 1.8rem 0 0;
}

.report-aside__authors li {
	font-size: 1.4rem;
}

.report-aside__authors li a {
	font-size: 1.4rem;
}

/* footer */
@media(min-width:767.00001px) {
	.footer_navBlock {
		column-gap: clamp(1rem, calc(15vw - 8rem), 7rem);
	}

	.footer * {
		font-size: clamp(1.3rem, 1.4vw, 1.4rem);
	}

	.footer_logoLead {
		font-size: 1.2rem;
	}

	.footer_contactLink {
		font-size: 1.9rem;
	}

	.footer_copyright small {
		white-space: nowrap;
	}
}

/* first view */
.first-view2__container {
	position: relative;
	width: 100%;
	height: clamp(31rem, 65vw, 52rem);
	background-color: #F5FBFB;
	overflow-y: visible;
	font-weight: 500;
	margin-top: var(--header-block-size);
}

.first-view2 {
	z-index: 5;
	position: relative;
	max-width: 137rem;
	width: 100%;
	height: 100%;
	margin: 0 auto;
}

.first-view2 img {
	position: absolute;
	z-index: 5;
}

.first-view2__img1 {
	width: clamp(16rem, 34vw, 30rem);
	top: clamp(-13rem, -13vw, -7rem);
	top: -27%;
	left: 0%;
	transform: translateY(0%)translateX(0%);
}

.first-view2__img2 {
	width: clamp(18rem, 40vw, 36rem);
	bottom: -3%;
	left: -7%;
	transform: translateX(0%) translateY(0%) scaleX(-1);
}

.first-view2__img3 {
	width: clamp(16rem, 35vw, 33rem);
	top: -8%;
	right: -11%;
	transform: translateX(0%) translateY(0%) rotate(1200deg);
}

.first-view2__img4 {
	width: clamp(22rem, 48vw, 44rem);
	bottom: 1%;
	right: clamp(-12%, calc(20% - 30rem), 2rem);
	transform: translateX(0%) translateY(0%);
}

.first-view2__breadcrumbs-wrap {
	position: absolute;
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 1.2rem;
}

.first-view2__breadcrumbs {
	max-width: 100rem;
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 1.2rem;
	z-index: 11;
	top: 0;
	left: 0;
	padding: 1.1rem 2.5rem;
}

.first-view2__breadcrumbs span {
	display: inline-block;
}
.first-view2__breadcrumbs>span>span{
	margin-right: -4rem;
}

.first-view2__breadcrumbs>span>span>span {
	transform: translateY(0rem);
	font-size: clamp(1.2rem, 3vw, 1.4rem);
	padding: 0 0.5rem;
	font-weight: 500;
}

.first-view2__breadcrumbs>span {
	transform: translateX(-1rem);
	font-size: clamp(1.8rem, 4.5vw, 2.2rem);
	font-weight: 400;
}

.first-view2__catch h1 {
	z-index: 10;
	position: absolute;
	top: 50%;
	left: 50%;
	display: flex;
	height: auto;
	flex-direction: row-reverse;
	align-items: flex-start;
	transform: translateY(-50%)translateX(-50%);
	gap: clamp(1.2rem, 3vw, 2.5rem);
}

.first-view2__catch h1 span img {
	width: clamp(4.8rem, 9vw, 7rem);
}

.first-view2__catch h1 small img {
	width: clamp(3.8rem, 7vw, 5rem);
}

.first-view2__bottom-image {
	width: 100%;
	height: clamp(4.2rem, 11vw, 15rem);
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-color: #F5FBFB;
	background-image: url('../images/common2/fv_bottom.webp');
}

/* pagination */
.pagination2 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	font-size: clamp(1.8rem, 3vw, 2rem);
	font-weight: 700;
	color: #8BA0D3;
	gap: 1rem;
}

.pagination2__page-btn {
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
}

.pagination2__page-label {
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	color: #D677C3;
}

.pagination2__before-page a,
.pagination2__after-page a {
	display: block;
	width: clamp(0.9rem, 1.5vw, 1rem);
	height: clamp(1.8rem, 3vw, 2rem);
	background-size: 100%;
	background-image: url('../images/common2/arrow_forward.svg');
	transform: translateY(5%);
	margin: 0 0.3rem;
}

.pagination2__before-page a {
	transform: translateY(6%) scaleX(-1);
}

.pagination2__dash {
	transform: translateY(-5%);
}

/* archive-report */
.archive-report__pagination2-container {
	margin: clamp(5rem, 10vw, 9rem) 0;
}

/* single-report */
.single-report__post {
	padding: clamp(2rem, 3vw, 3rem);
	display: flex;
	flex-direction: column;
	gap: 1rem;
	align-items: stretch;
}

.single-report__post--title {
	font-size: clamp(1.8rem, 3vw, 2rem);
	font-weight: 600;
	color: #8BA0D3;
	line-height: 1.5;
}

.single-report__post--time {
	text-align: right;
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	color: #8BA0D3;
	font-size: 1.6rem;
}

.single-report__post--thumbnail {
	width: 100%;
	margin-bottom: 1rem;
}

.single-report__post--thumbnail img {
	width: 100%;
	height: auto;
	border-radius: 0.5rem;
}

.single-report__post--footer {
	width: 100%;
	display: flex;
	justify-content: flex-end;
	gap: 1.5rem;
}

.single-report__post--footer * {
	font-size: 1.4rem;
}

.single-report__prev-next {
	width: 100%;
	display: flex;
	justify-content: center;
	gap: clamp(1.5rem, 3vw, 3rem);
	padding: 0 clamp(2rem, 3vw, 3rem);
}

.single-report__prev,
.single-report__next {
	flex-grow: 1;
	max-width: 30rem;
}

.single-report__prev-next a {
	font-weight: 700;
	color: #fff;
	border-radius: 2.5rem;
	height: clamp(4rem, 8vw, 5rem);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.6rem;
	gap: 1rem;
}

.single-report__prev a {
	background-color: #8BA0D3;
}

.single-report__next a {
	background-color: #D677C3;
}

.single-report__prev a span {
	position: relative;
	background-image: url(../images/common2/circle.webp);
	transform: translateY(0.5%);
	width: 2rem;
	pointer-events: none;
	transition: transform 0.4s ease;
}

.single-report__prev a span::before {
	position: absolute;
	content: '';
	background-image: url(../images/common2/arrow_left.svg);
	background-size: 0.85rem;
	background-repeat: no-repeat;
	background-position: 51% 57%;
	width: 2rem;
	height: 2rem;
}

.single-report__prev a:hover span {
	transform: translateX(-1rem);
}

.single-report__next a span {
	position: relative;
	background-image: url(../images/common2/circle.webp);
	transform: translateY(0.5%);
	width: 2rem;
	pointer-events: none;
	transition: transform 0.4s ease;
}

.single-report__next a span::before {
	position: absolute;
	content: '';
	background-image: url(../images/common2/arrow_right.svg);
	background-size: 0.9rem;
	background-repeat: no-repeat;
	background-position: 51% 56%;
	width: 2rem;
	height: 2rem;
}

.single-report__next a:hover span {
	transform: translateX(1rem);
}

/* single-report content */
.single-report__post--content {
	display: flex;
	flex-direction: column;
	gap: 1.8rem;
	width: 100%;
	margin: 1.5rem 0 0.5rem;
	overflow: visible;
}

.single-report__post--content * {
	line-height: 1.8;
	font-size: 1.6rem;
	font-weight: 500;
	max-width: 100%;
}

.single-report__post--content h1 {
	font-size: 2rem;
	font-weight: 700;
	background-color: #8BA0D3;
	border-radius: 0.5rem;
	color: #fff;
	padding: 1rem 1.3rem;
}

.single-report__post--content h2,
.single-report__post--content h3,
.single-report__post--content h4,
.single-report__post--content h5,
.single-report__post--content h6 {
	font-size: 2rem;
	font-weight: 700;
	color: #8BA0D3;
	padding: 1rem 1.5rem 0;
}

.single-report__post--content p {
	font-weight: 500;
	font-size: 1.6rem;
}

.single-report__post--content em {
	font-style: italic;
	border-left: 4px solid #8BA0D3;
	padding-left: 1rem;
}

.single-report__post--content code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.single-report__post--content table {
	width: 100%;
	border-collapse: collapse;
}

.single-report__post--content tr:nth-of-type(odd) {
	background-color: #F5FBFB;
}

.single-report__post--content tr:not(:last-child) {
	border-bottom: solid 0.1rem #fff;
}

.single-report__post--content td {
	padding: 1.2rem 1rem;
	font-size: 1.6rem;
	text-align: center;
}

.single-report__post--content .button-design {
	background-color: #8BA0D3;
	color: #fff;
	font-family: 'Noto Sans JP', sans-serif;
	border-radius: 3rem;
	padding: 0.8rem 2rem;
}

.single-report__post--content td:first-child {
	background-color: #8BA0D3;
	font-family: 'Noto Sans JP', sans-serif;
	color: #fff;
}

.single-report__post--content td:not(:first-child :last-child) {
	border-right: #8BA0D3 solid 0.1rem;
}

.single-report__post--content img {
	width: 100%;
	max-width: 100%;
	height: auto;
	border-radius: 0.5rem;
}

.single-report__post--content figcaption {
	text-align: right;
}

.single-report__post--content ul,
.single-report__post--content ol {
	border: solid #8BA0D3 0.1rem;
	border-radius: 2rem;
	padding: 2.2rem 3rem;
}

.single-report__post--content ul *,
.single-report__post--content ol * {
	line-height: 2.4;
	font-size: 1.6rem;
}

.single-report__post--content li {
	border-bottom: solid 0.1rem #8BA0D3;
}

.single-report__post--content ol {
	counter-reset: item;
}

.single-report__post--content ol li {
	counter-increment: item;
}

.single-report__post--content ol li::before {
	content: counter(item, decimal-leading-zero) ". ";
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	min-width: 3rem;
	color: #8BA0D3;
	display: inline-block;
	text-align: left;
}

.single-report__post--content strong {
	font-weight: 700;
}

.single-report__post--content .alignleft {
	display: block;
	margin-right: auto;
	margin-left: 1rem;
}

.single-report__post--content .alignright {
	display: block;
	margin-right: 0;
	margin-left: auto;
	padding-right: 1rem;
}

.single-report__post--content .aligncenter {
	display: block;
	margin: 0 auto;
}

/* page-authors */
.authors-main {
	max-width: 120rem;
	margin: 0 auto clamp(5rem, 8vw, 8rem);
	padding: 0 clamp(2.5rem, 4vw, 4rem);
	display: flex;
	justify-content: flex-end;
}

.authors-main ul {
	max-width: 103rem;
	width: 100%;
	margin-left: clamp(1rem, 3vw, 2rem);
}

.authors-main li {
	padding: 1.5rem;
	border-bottom: #8BA0D3 solid 0.1rem;
	font-size: clamp(1.6rem, 3vw, 2rem);
	color: #8BA0D3;
	font-weight: 700;
}

.authors-main li a {
	font-size: clamp(1.6rem, 3vw, 2rem);
	color: #8BA0D3;
	font-weight: 700;
}

/* author */
.author-main__author-name {
	color: #8BA0D3;
	font-size: clamp(1.8rem, 3vw, 2rem);
	width: 100%;
	margin: 1.5rem 0;
	padding: 0 clamp(1.5rem, 3vw, 3rem);
}

/* page-contact cf7 */
.page-contact__approach {
	width: 100%;
	max-width: 100rem;
	margin: 2rem auto -0.5rem;
	padding: 0 clamp(2.5rem, 5vw, 4rem);
	font-size: clamp(1.7rem, 2.5vw, 2rem);
	color: #8BA0D3;
	font-weight: 700;
}

.page-contact__cf7 {
	margin: 0 auto -0.5rem;
	margin-bottom: 10rem;
	width: 100%;
	max-width: 100rem;
	padding: 0 clamp(2.5rem, 5vw, 4rem);
}

.page-contact__cf7 form {
	display: flex;
	flex-direction: column;
}

.cf7__container {
	width: 100%;
}

.cf7__form-group {
	display: flex;
	align-items: flex-start;
	padding: 3rem 0;
}

.cf7__form-group:not(:last-child) {
	border-bottom: solid #AAAAAA 0.1rem;
}

.cf7__form-group label {
	width: clamp(20rem, 40vw, 27rem);
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 1.3rem 0 0;
	font-size: 1.6rem;
	font-weight: 700;
	color: #454545;
}

.cf7__form-group label span {
	margin-right: clamp(0rem, calc(16vw - 6rem), 8rem);
	font-size: 1.4rem;
	padding: 0.3rem 1.3rem 0.4rem;
	border: solid 0.1rem #F398BD;
	color: #F398BD;
	font-family: 'Noto Sans JP', sans-serif;
	border-radius: 2rem;
	transform: translateY(0.1rem);
}

.cf7__input-container {
	width: clamp(50rem, 7vw, 67rem);
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 2rem;
}

.cf7__input-container input {
	width: 100%;
	height: 5rem;
	border: #454545 solid 0.1rem;
	border-radius: 0.5rem;
	padding: 1.5rem;
	color: #454545;
	font-size: 1.6rem;
	font-weight: 500;
}

.cf7__input-container textarea {
	width: 100%;
	height: clamp(20rem, 30vw, 30rem);
	border: #454545 solid 0.1rem;
	border-radius: 0.5rem;
	padding: 1.5rem;
	font-size: 1.6rem;
	font-weight: 500;
	color: #454545;
	line-height: 1.5;
}

.cf7__acceptance {
	margin: 0.5rem 0 1.5rem;
	transform: translateX(-0.7rem);
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	font-size: 1.6rem;
	font-weight: 500;
	color: #454545;
}

.cf7__acceptance input[type="checkbox"] {
	transform: translateX(-33%) translateY(-1%);
	font-size: 1.6rem;
	width: 1.8rem;
	aspect-ratio: 1;
}

.cf7__acceptance p {
	transform: translateY(1.3rem);
}

.cf7__acceptance a {
	border-bottom: #FF7F58 solid 0.1rem;
	padding: 0 0.2rem;
}

.cf7__submit {
	position: relative;
	width: 30rem;
	height: clamp(4.5rem, 8vw, 5rem);
	margin: -3rem auto 0;
}

.cf7__submit input {
	font-weight: 700;
	color: #fff;
	border-radius: 2.5rem;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-left: 10rem;
	font-size: 1.6rem;
	display: block;
	width: 100%;
	background-color: #D677C3;
}

.cf7__submit::after {
	position: absolute;
	z-index: 2;
	content: '';
	background-image: url(../images/common2/arrow_right.svg);
	background-size: 1.07rem;
	background-position: 45% 56%;
	background-repeat: no-repeat;
	border-radius: 1rem;
	top: 50%;
	left: calc(50% + 3rem);
	transform: translateY(-45%);
	width: 2rem;
	height: 2rem;
	transition: transform 0.4s ease;
}

.cf7__submit:hover::after {
	transform: translateX(1rem) translateY(-45%);
}

.cf7__submit::before {
	position: absolute;
	z-index: 1;
	content: '';
	background-image: url(../images/common2/circle.webp);
	background-size: 2rem;
	background-position: 45% 56%;
	background-repeat: no-repeat;
	top: 50%;
	left: calc(50% + 3rem);
	transform: translateY(-45%);
	width: 2rem;
	height: 2rem;
	pointer-events: none;
	transition: transform 0.4s ease;
}

.cf7__submit:hover::before {
	transform: translateX(1rem) translateY(-45%);
}

.wpcf7-response-output {
	font-size: 1.7rem;
	font-weight: 500;
}

.wpcf7-not-valid-tip {
	font-size: 1.6rem;
	font-weight: 500;
}

@media(max-width:768px) {
	.cf7__form-group {
		flex-direction: column;
		align-items: stretch;
		gap: 2rem;
		padding: 3rem 0;
	}

	.cf7__input-container {
		width: 100%;
	}

	.cf7__form-group label {
		width: 25rem;
		display: flex;
		align-items: center;
		gap: 0;
		justify-content: space-between;
		margin: 0;
		padding: 0;
	}

	.cf7__form-group label span {
		margin-right: 4rem;
	}
}

/* page-thanks */
.page-thanks__reply-container {
	z-index: 2;
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: 2.5rem 0 0;
	height: auto;
	background-color: #F5FBFB;
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.page-thanks__reply {
	width: clamp(0rem, 100%, 100rem);
	display: flex;
	flex-direction: column;
	padding: 0 clamp(1.3rem, 3vw, 3rem);
	margin: 0 auto;
}

.page-thanks__reply span {
	font-size: clamp(1.6rem, 4vw, 3.2rem);
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: clamp(0rem, calc(0.5vw - 0.15rem), 0.32rem);
	color: #F398BD;
}

.page-thanks__note {
	width: clamp(0rem, 100%, 100rem);
	font-size: clamp(1.3rem, 2vw, 1.6rem);
	font-weight: 500;
	line-height: clamp(2rem, 3.5vw, 3.2rem);
	color: #454545;
	padding: 0 clamp(1.3rem, 3vw, 3rem);
	margin: 0 auto 1.5rem;
}

.page-thanks__posts {
	margin: -8rem 0 10rem;
}

/* page-policy */
.page-policy__container {
	z-index: 2;
	position: relative;
	width: 100%;
	margin: 0 auto;
	height: auto;
	background-color: #F5FBFB;
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.page-policy__wrap {
	z-index: 11;
	width: 100%;
	margin: 0 auto;
	padding: 3rem 0 clamp(6rem, 10vw, 10rem);
	transform: translateY(clamp(-2rem, -1.5vw, 0rem));
	background-color: #F5FBFB;
}

.page-policy__container {
	width: clamp(0rem, 100%, 99.5rem);
	padding: 0 clamp(2rem, 3vw, 3rem);
	gap: 0;
}

.page-policy__container * {
	font-weight: 500;
	font-size: clamp(1.4rem, 2vw, 1.6rem);
	line-height: clamp(2.4rem, 4vw, 3.2rem);
}

.page-policy__container>dl {
	margin-top: clamp(3rem, 5.5vw, 5.5rem);
}

.page-policy__container dt {
	margin-top: 2.8rem;
}

.page-policy__container ul ul {
	padding-left: 1rem;
}

.page-policy__container>p {
	margin-top: 2rem;
}

.page-policy__line {
	transform: translateY(0.5rem);
	margin: 3rem 0 1rem;
}

/* page-program */
.page-program__catch-container {
	padding: 1rem clamp(1rem, 3vw, 2rem);
	display: flex;
	flex-direction: column;
	gap: clamp(2rem, 3vw, 3rem);
	width: 100%;
	background-color: #F5FBFB;
}

.page-program__catch {
	margin: 0 auto;
	width: min(100rem, 100vw);
	font-size: clamp(1.75rem, 4.6vw, 4rem);
	letter-spacing: clamp(0rem, calc(1.2vw - 0.7rem), 0.5rem);
	color: #F398BD;
	font-weight: 700;
	line-height: 1.5;
}

.page-program__catch-container span {
	white-space: nowrap;
}

.page-program__sub-catch {
	margin: 0 auto;
	width: min(100rem, 100vw);
	font-size: clamp(1.45rem, 3vw, 1.6rem);
	font-weight: 700;
	line-height: 1.5;
}

@media (max-width:1000px) {
	.page-program__sub-catch {
		margin-left: clamp(0rem, calc(4vw - 2rem), 2rem);
	}
}

/* page-program skill*/
.page-program__main {
	color: #454545;
}

.page-program__skill {
	position: relative;
	width: 100%;
	background-color: #F5FBFB;
	padding: 0 0 clamp(3rem, 11vw, 11rem);
}

.page-program__skill::after {
	content: '';
	position: absolute;
	background-image: url('../images/common2/fv_bottom.webp');
	background-size: 100% 100%;
	top: 100%;
	width: 100%;
	min-width: 80rem;
	height: min(15vw, 20rem);
	background-color: #F5FBFB;
	z-index: -1;
}

.page-program__skill h2 {
	width: min(103rem, 100vw);
	margin: 0 auto;
	font-size: clamp(2.3rem, 4vw, 4rem);
	letter-spacing: clamp(0.25rem, 0.4vw, 0.4rem);
	line-height: 1.5;
	font-weight: bold;
	color: #8BA0D3;
	padding: clamp(5rem, 9vw, 9rem) 0 clamp(4rem, 8vw, 8rem);
	text-align: center;
}

.page-program__skill-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 9.5rem 3rem;
	padding: 0 3rem;
	width: min(103rem, 100vw);
	margin: 0 auto;
}

.page-program__skill-list li {
	aspect-ratio: 296/270;
	height: min(calc(27vw - 1rem), 27rem);
}

@media(max-width:800px) {
	.page-program__skill-list li {
		height: min(calc(38vw - 1rem), 27rem);
	}
}

@media(max-width:512px) {
	.page-program__skill-list li {
		height: min(58vw, 27rem);
	}
}

.page-program__skill-list li:last-child {
	justify-self: center;
}

.page-program__skill-img-wrap {
	width: 100%;
	overflow: hidden;
	border-radius: 2rem;
}

.page-program__skill-img-wrap img {
	width: 100%;
	transition: transform 0.4s ease;
}

.page-program__skill-list li:hover .page-program__skill-img-wrap img {
	transform: scale(1.1);
	opacity: 1;
}

.page-program__skill-title {
	font-size: 2rem;
	line-height: 1.5;
	color: #8BA0D3;
	font-weight: 700;
	margin: 1.2rem 0 0;
}

/* page-program course */
.page-program__courses {
	position: relative;
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 5rem;
	margin: clamp(10rem, 16vw, 18rem) 0 3rem;
}

.page-program__courses--bg_1 {
	position: absolute;
	z-index: -1;
	left: min(65%, calc(50% + 28rem));
	top: max(-8vw, -10rem);
	width: clamp(10rem, 40vw, 51rem);
	transform: rotate(120deg);
}

.page-program__courses--bg_2 {
	position: absolute;
	z-index: -1;
	left: min(calc(69% - min(15vw, 20rem)), calc(50% + 15rem));
	top: min(34vw, 43.5rem);
	width: clamp(10rem, 50vw, 62rem);
}

.page-program__course {
	width: min(90%, 84rem);
	margin: 0 auto;
}

.page-program__course-header {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.page-program__course-header::before {
	content: '';
	position: absolute;
	height: calc(100% - 1.2rem);
	width: 1.8rem;
	border-radius: 1rem;
	top: 1.8rem;
	left: -5rem;
	background-color: #8BA0D3;
}

.page-program__course-header h3 {
	font-size: clamp(2.6rem, 6vw, 4rem);
	letter-spacing: clamp(0.2rem, 0.6vw, 0.4rem);
	line-height: 1.5;
	font-weight: 700;
	color: #8BA0D3;
	display: flex;
	flex-direction: column;
}

.page-program__course-border {
	display: none;
}

@media(max-width:1000px) {
	.page-program__course-header::before {
		display: none;
	}

	.page-program__course-header h3 {
		transform: translateX(clamp(3rem, 7vw, 5rem));
		position: relative;
		width: calc(100% - clamp(3.5rem, 8vw, 6rem));
	}

	.page-program__course-header h3::before {
		content: '';
		position: absolute;
		height: calc(100% - 0.5rem);
		width: clamp(1.3rem, 2.4vw, 1.8rem);
		border-radius: 1rem;
		top: clamp(0.8rem, 1.2vw, 1.2rem);
		left: max(-5rem, -7vw);
		background-color: #8BA0D3;
	}
}

.page-program__course-header small {
	font-weight: 700;
	font-size: clamp(1.7rem, 2.5vw, 2rem);
	line-height: 1.5;
	color: #8BA0D3;
	letter-spacing: 0.02rem;
}

.page-program__course-header p {
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.5;
}

.page-program__course-tabs {
	display: flex;
	margin: 3rem 0 0;
}

.page-program__course-tab {
	flex: 1;
	background-color: #fff;
	border: solid 0.5rem #F7FAE2;
	border-radius: 1rem 1rem 0 0;
	width: 100%;
	height: clamp(5.5rem, 12vw, 10.5rem);
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
}

.page-program__course-tab span {
	font-size: clamp(1.9rem, 4vw, 3.4rem);
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	color: #F398BD;
	transition: transform 0.4s;
}

.page-program__course-tab:not(.tab-selected):hover span {
	transform: scale(1.08);
}

.page-program__course-tab.tab-selected {
	background-color: #F7FAE2;
	cursor: default;
}

.page-program__course-tab.tab-selected span {
	color: #8BA0D3;
}

.page-program__swiper-wrap {
	overflow: hidden;
	display: flex;
	justify-content: center;
	padding: 0 clamp(2rem, calc(20vw - 15rem), 5rem);
	background-color: #F7FAE2;
}

.page-program__steps {
	display: flex;
}

.page-program__step {
	min-width: 0;
	flex: 0 0 100%;
	width: 100%;
}

.page-program__step-title {
	display: flex;
	align-items: flex-start;
	padding: clamp(1.5rem, 4vw, 4rem) 0 3rem clamp(1rem, 3vw, 3rem);
	gap: 1.5rem;
}

.page-program__step-title-it {
	display: flex;
	align-items: flex-end;
	flex-wrap: wrap;
	padding: clamp(4rem, 6.5vw, 6.5rem) 0 clamp(2.5rem, 4vw, 4rem) clamp(1rem, 3vw, 3rem);
	gap: 1.5rem;
}

.page-program__step-title p {
	font-size: clamp(7rem, 13vw, 11.5rem);
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	min-width: clamp(8.5rem, 20vw, 16.5rem);
	color: #8BA0D3;
	margin-top: clamp(-2rem, -2vw, 0rem);
	line-height: 1;
	white-space: nowrap;
}

.page-program__step-title-it p {
	font-size: clamp(7rem, 13vw, 11.5rem);
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	min-width: clamp(8.5rem, 20vw, 16.5rem);
	color: #8BA0D3;
	margin: clamp(-2rem, -2vw, 0rem) -0.5rem 0 0;
	line-height: 0.8;
}


.page-program__step-title p small {
	font-family: Montserrat, sans-serif;
	font-size: 2rem;
	line-height: 1.5;
}

@media(max-width:600px) {
	.page-program__step-title {
		align-items: center;
	}

	.page-program__step-title p {
		margin-top: 0;
	}
}

.page-program__step-content {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.page-program__step-content h4 {
	color: #8BA0D3;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.5;
}

.page-program__step-goal {
	display: flex;
	align-items: flex-start;
}

@media(max-width:600px) {
	.page-program__step-goal {
		display: none;
	}
}

.page-program__step-goal-sm {
	display: none;
	padding: 0 clamp(0rem, 2vw, 1.5rem);
}

.page-program__step-goal dt {
	width: 7.5rem;
	flex-shrink: 0;
}

.page-program__step-goal-sm dt {
	width: 7.5rem;
	flex-shrink: 0;
}

@media(max-width:600px) {
	.page-program__step-goal-sm {
		display: flex;
		margin: -1.5rem 0 3rem;
	}
}

.page-program__step-goal-sm dt,
.page-program__step-goal dt {
	position: relative;
	color: #8BA0D3;
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.5;
	height: 2rem;
}

.page-program__step-goal-sm dt::after,
.page-program__step-goal dt::after {
	content: '';
	position: absolute;
	top: 42%;
	right: 1rem;
	width: 0;
	border-top: 0.8rem solid transparent;
	border-bottom: 0.8rem solid transparent;
	border-left: 1.2rem solid #8BA0D3;
}

.page-program__step-goal dd {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5;
	margin: 0.18rem 0 0 0.5rem;
}

.page-program__step-goal-sm dd {
	font-size: 1.55rem;
	font-weight: 700;
	line-height: 1.5;
	margin: 0.11rem 0 0 0.5rem;
}

.page-program__step-cards {
	display: flex;
	gap: clamp(1.2rem, 2vw, 1.5rem);
	padding: 0 clamp(0rem, calc(7vw - 3.5rem), 3rem) clamp(2rem, 3.5vw, 4rem);
}

.page-program__step-cards li {
	flex: 1;
	max-width: calc(33.33% - 1rem);
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

@media (max-width:600px) {
	.page-program__step-cards {
		flex-direction: column;
		gap: clamp(1.5rem, 3vw, 2rem);
	}

	.page-program__step-cards li {
		flex-direction: row;
		max-width: 100%;
		width: 100%;
		align-items: flex-start;
		gap: 1.3rem;
	}
}

.page-program__step-cards li img {
	width: 100%;
}

@media (max-width:600px) {
	.page-program__step-cards li img {
		width: clamp(10rem, 24vw, 24rem);
		flex-shrink: 0;
	}
}

.page-program__step-cards li p {
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.5;
	word-break: break-all;
	overflow-wrap: anywhere;
}

/* page-program faq */
.page-program__cyan-wrap {
	background-color: #F5FBFB;
}

.page-program__faq {
	position: relative;
	width: 100%;
	padding: clamp(9rem, 20vw, 22.5rem) 0 0;
	margin: calc(- clamp(12rem, 15vw, 20rem)) 0 0;
	z-index: 2;
}

.page-program__faq--bg {
	position: absolute;
	left: min(69%, calc(50% + 25rem));
	top: 4rem;
	width: clamp(10rem, 45vw, 56rem);
	z-index: -1;
}

.page-program__faq::before {
	content: '';
	z-index: 2;
	position: absolute;
	background-image: url('../images/common2/bg_top_1.webp');
	background-size: 100% 100%;
	top: 0;
	left: 0;
	width: 100%;
	min-width: 80rem;
	height: min(15vw, 20rem);
}

.page-program__faq h2 {
	font-size: clamp(2.6rem, 4vw, 4rem);
	letter-spacing: clamp(0.26rem, 0.4vw, 0.4rem);
	font-weight: bold;
	line-height: 1.5;
	color: #8BA0D3;
	width: min(100%, 104rem);
	margin: 0 auto clamp(2.7rem, 6vw, 7.7rem);
	padding: 0 4rem;
}

/* page-service */
.page-service__main {
	color: #454545;
}

.page-service__catch {
	position: relative;
	padding: 1.5rem 0 clamp(2rem, 4vw, 5rem);
	background-color: #F5FBFB;
	margin: 0 0 clamp(4rem, 15vw, 20rem);
}

.page-service__catch::after {
	position: absolute;
	content: '';
	background-image: url('../images/common2/fv_bottom.webp');
	background-size: 100% 100%;
	background-position-x: left;
	top: 100%;
	width: 100%;
	min-width: 80rem;
	height: min(13vw, 17rem);
	background-color: #F5FBFB;
}

.page-service__catch p {
	width: min(100%, 104rem);
	margin: 0 auto;
	padding: 0 0 0 clamp(1rem, 5vw, 4rem);
	font-size: clamp(1.5rem, calc(3.5vw + 0.2rem), 3.2rem);
	line-height: 1.5;
	letter-spacing: min(calc(0.4vw - 0.2rem), 0.36rem);
	color: #F398BD;
	font-weight: 700;
}

/* page-service feature*/
.page-service__feature {
	margin: clamp(-2rem, calc(3rem - 5vw), 0rem) 0 1.5rem;
	position: relative;
}

.page-service__feature-bg1 {
	position: absolute;
	z-index: 0;
	left: min(67%, calc(50% + 29rem));
	top: max(-15vw, -20rem);
	width: clamp(10rem, 40vw, 51rem);
	transform: rotate(120deg);
}

.page-service__feature-bg2 {
	position: absolute;
	z-index: 0;
	left: min(calc(69% - min(15vw, 19rem)), calc(50% + 16rem));
	top: min(27vw, 33.5rem);
	width: clamp(10rem, 50vw, 62rem);
}

.page-service__feature h2 {
	width: min(100%, 104rem);
	margin: 0 auto;
	padding: 0 4rem;
	font-size: clamp(2.6rem, 4vw, 4rem);
	color: #F398BD;
	letter-spacing: clamp(0.26rem, 0.4vw, 0.4rem);
}

.page-service__feature ul {
	position: relative;
	z-index: 1;
	width: min(100%, 104rem);
	margin: clamp(4rem, 6vw, 8.5rem) auto 0;
	padding: 0 clamp(3rem, 3rem, 4rem);
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 3.2rem clamp(2.5rem, 2.3vw, 3rem);
}

.page-service__feature li {
	width: min(calc(27vw), 29.7rem);
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.page-service__feature li:not(:last-child) {
	aspect-ratio: 296/270;
}

@media(max-width:800px) {
	.page-service__feature li {
		width: min(calc(40vw), 29.7rem);
	}
}

@media(max-width:520px) {
	.page-service__feature li {
		width: min(60vw, 29.7rem);
	}
}

.page-service__feature li img {
	width: 100%;
	height: auto;
}

.page-service__feature li article {
	position: relative;
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	margin-left: 4rem;
}

.page-service__feature li article::before {
	position: absolute;
	content: '';
	background-image: url('../images/common2/check.svg');
	background-repeat: no-repeat;
	width: 2.7rem;
	height: 2.7rem;
	background-size: contain;
	left: -3.6rem;
}

.page-service__feature li article h3 {
	font-size: 2rem;
	color: #8BA0D3;
	font-weight: 700;
	line-height: 1.5;
}

.page-service__feature li article p {
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.5;
	color: #454545;
}

.page-service__future--information {
	font-size: 1.6rem;
	font-weight: 500;
	color: #454545;
	line-height: clamp(2.7rem, 2.4vw, 3rem);
}

/* page-service target*/
.page-service__target {
	position: relative;
}


.page-service__cyan-wrap {
	background-color: #F5FBFB;
	position: relative;
}

.page-service__target {
	padding: clamp(19rem, 18vw, 27rem) 0 0;
}

.page-service__target-header {
	width: min(100%, 104rem);
	margin: 0 auto;
	padding: 0 4rem;
}

.page-service__target-header h2 {
	font-size: clamp(2.6rem, 4vw, 4rem);
	color: #F398BD;
	letter-spacing: clamp(0rem, calc(0.6vw - 0.2rem), 0.4rem);
	font-weight: 700;
	display: flex;
	flex-wrap: wrap;
}

.page-service__target-header h2 span {
	white-space: nowrap;
	line-height: 1.5;
}

.page-service__target-header p {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5;
	margin: 2.7rem 0 5rem;
}

.page-service__target article {
	width: min(100%, 104rem);
	margin: 0 auto;
	padding: 0 4rem 2rem;
}

.page-service__target article h3 {
	position: relative;
	font-size: clamp(2.6rem, 4vw, 4rem);
	color: #8BA0D3;
	letter-spacing: clamp(0rem, calc(0.6vw - 0.2rem), 0.4rem);
	line-height: 1.5;
	font-weight: 700;
	margin-left: clamp(3rem, 3.5vw, 5rem);
}

.page-service__target article h3::before {
	position: absolute;
	content: '';
	width: clamp(1.2rem, 1.8vw, 1.8rem);
	border-radius: 1rem;
	height: max(60%, 2.5rem);
	top: 20%;
	left: calc(0rem - clamp(3rem, 4vw, 5rem));
	background-color: #8BA0D3;
}

.page-service__target article ol {
	margin: clamp(2rem, 2vw, 2.5rem) clamp(0.7rem, calc(6vw - 2rem), 5rem);
	padding: clamp(1.5rem, 2vw, 2rem) clamp(1.5rem, calc(6vw - 2rem), 4rem) clamp(2rem, 3vw, 3rem);
	background-color: #fff;
	border-radius: 1rem;
}

.page-service__target article p {
	margin: 2rem clamp(0.7rem, calc(6vw - 2rem), 5rem);
	padding: clamp(2rem, 3vw, 3rem) clamp(2rem, calc(6vw - 2rem), 4rem);
	background-color: #fff;
	border-radius: 1rem;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: clamp(2.6rem, 3vw, 3rem);
}

.page-service__target article li {
	position: relative;
	padding: clamp(1rem, 2vw, 1.5rem) clamp(0rem, calc(3.5vw - 2rem), 1.5rem);
	padding-left: clamp(6rem, 13vw, 10rem);
	font-size: 1.6rem;
	font-weight: 500;
	line-height: clamp(2.6rem, 3vw, 3rem);
	counter-increment: item;
}

.page-service__target article li::before {
	position: absolute;
	content: counter(item, decimal-leading-zero);
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	font-size: clamp(4rem, 8vw, 6rem);
	color: #8BA0D3;
	font-weight: 600;
	left: 0;
	transform: translateY(50%);
}

.page-service__target article li:not(:last-child) {
	border-bottom: #707070 solid 0.1rem;
}

.page-service__target--bottom-space {
	position: absolute;
	top: 100%;
	width: 100%;
	height: clamp(10rem, 20vw, 30rem);
	background-color: #F5FBFB;
	z-index: -10;
}

/* page-service mid-contact */
.page-service__mid-contact {
	position: relative;
	margin: 6rem 0 2rem;
	padding: clamp(0rem, calc(10vw - 14rem), 8rem) 0 0;
	transform: translateY(2rem);
}

/* .page-service roadmap */
.page-service__roadmap {
	position: relative;
	width: min(100%, 104rem);
	margin: 0 auto 0rem;
	padding: clamp(4rem, 15vw, 23rem) 4rem 0;
}

.page-service__roadmap-bg1 {
	position: absolute;
	z-index: -10;
	left: min(95%, calc(50% + 30vw));
	top: min(calc(8rem + 14vw), 22rem);
	width: clamp(10rem, 37vw, 48rem);
	transform: rotate(120deg) translateY(50%) translateX(-50%);
}

.page-service__roadmap-bg2 {
	position: absolute;
	z-index: -10;
	left: min(95%, calc(50% + 30vw));
	top: min(calc(6rem + 14vw), 18rem);
	width: clamp(10rem, 50vw, 63rem);
	transform: translateY(50%) translateX(-50%);
}

.page-service__roadmap h2 {
	font-size: clamp(2.6rem, 4vw, 4rem);
	color: #F398BD;
	letter-spacing: clamp(0rem, calc(0.6vw - 0.2rem), 0.4rem);
	line-height: 1.5;
	font-weight: 700;
}

.page-service__roadmap ol {
	margin: clamp(4rem, 6vw, 7.6rem) 0 0;
	padding: 0 0 2rem;
	display: flex;
	flex-direction: column;
	gap: clamp(4rem, 5vw, 5rem);
}

.page-service__roadmap li {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: clamp(1.7rem, 3vw, 3rem);
	counter-increment: item;
}

.page-service__roadmap li::before {
	position: absolute;
	content: counter(item, decimal-leading-zero);
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	font-size: clamp(7rem, 10vw, 8rem);
	line-height: 1;
	color: #8BA0D3;
	font-weight: 600;
	left: calc(clamp(10rem, 24vw, 22rem) + clamp(2rem, 3vw, 3rem));
	top: 0;
	transform: translateY(-15%);
}

.page-service__roadmap--img-wrap {
	width: clamp(10rem, 24vw, 22rem);
	aspect-ratio: 22/20;
	background-color: #8BA0D3;
	border-radius: clamp(1.3rem, 2vw, 2rem);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.page-service__roadmap li img {
	display: block;
	max-width: 65%;
	max-height: 65%;
	height: auto;
	width: auto;
	object-fit: contain;
}

.page-service__roadmap li article {
	padding: clamp(6rem, 10vw, 8rem) 0 0;
}

.page-service__roadmap li article h3 {
	font-size: 2rem;
	color: #8BA0D3;
	font-weight: 700;
	line-height: 1.7;
}

.page-service__roadmap li article p {
	font-size: 1.6rem;
	line-height: clamp(2.7rem, 3vw, 3rem);
	font-weight: 500;
}

@media(max-width:500px) {
	.page-service__roadmap li {
		flex-direction: column;
	}

	.page-service__roadmap li article {
		padding: 0;
		margin: calc(clamp(-5rem, -12vw, -4.5rem)) 0 0;
	}

	.page-service__roadmap li article h3 {
		padding: 0 0 1rem calc(clamp(10rem, 24vw, 22rem) + 2rem);
	}

	.page-service__roadmap li article p {
		padding: 0 0.5rem;
	}
}

/* page-service day-schedule*/
.page-service__day-schedule {
	padding: calc(17rem - clamp(0rem, 6vw, 6rem) + min(9.1vw, 20rem)) 0 clamp(5rem, 8vw, 10rem);
	position: relative;
}

.page-service__cyan-bg1 {
	position: absolute;
	z-index: 2;
	top: -0.1rem;
	right: 0;
	height: auto;
	max-height: 20rem;
	width: 100%;
	min-width: 136.6rem;
	background-size: 100% 100%;
	transform: scaleX(-1);
}

.page-service__cyan-bg2 {
	position: absolute;
	z-index: 2;
	top: 0;
	right: 0;
	height: auto;
	max-height: 20rem;
	width: 77%;
	min-width: 105.5rem;
	background-size: 100% 100%;
	background-position-x: right;
	background-repeat: no-repeat;
}

.page-service__bg-leaf-1 {
	position: absolute;
	left: min(69%, calc(50% + 30rem));
	top: clamp(-1rem, calc(22rem - 30vw), 7rem);
	width: clamp(10rem, 43vw, 56rem);
	z-index: 1;
}

.page-service__bg-leaf-2 {
	position: absolute;
	left: min(69%, calc(50% + 30rem));
	top: clamp(-5rem, calc(21rem - 30vw), 8rem);
	top: min(calc(14rem + 4vw), 30rem);
	width: clamp(10rem, 43vw, 56rem);
	transform: translateY(-50%);
	clip-path: inset(10% 0 0 0);
	z-index: 1;
}

.page-service__day-schedule h2 {
	width: min(100%, 104rem);
	margin: 0 auto;
	padding: 0 4rem;
	font-size: clamp(2.6rem, 4vw, 4rem);
	color: #8BA0D3;
	letter-spacing: clamp(0rem, calc(0.6vw - 0.2rem), 0.4rem);
	line-height: 1.5;
	font-weight: 700;
}

.page-service__day-schedule article {
	width: min(100%, 104rem);
	margin: 0 auto 1rem;
	padding: 0 clamp(2rem, 4vw, 4rem);
}

.page-service__person-header {
	display: flex;
	align-items: center;
	gap: clamp(1rem, 2vw, 1.5rem);
	margin: clamp(3rem, 6vw, 8rem) 0 clamp(4rem, 6vw, 5.8rem);
	margin-right: -2rem;
}

.page-service__person-img-wrap {
	flex-shrink: 0;
	width: clamp(10.5rem, 20vw, 13rem);
	aspect-ratio: 1;
	border-radius: 13rem;
	background-color: #fff;
	overflow: hidden;
}

.page-service__person-header img {
	flex-shrink: 0;
	width: 100%;
	transform: scale(0.8) translateY(1.5%);
	height: auto;
}

.page-service__day-schedule article:first-of-type .page-service__person-header img {
	transform: scale(0.8) translateY(6%);
}

.page-service__person-header h3 {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	padding: 1rem 0 0;
}

.page-service__person-header span {
	background-color: #C88BD3;
	border-radius: 2rem;
	padding: 0 clamp(1.5rem, 2.4vw, 2rem);
	font-size: clamp(1.7rem, 3vw, 2.4rem);
	color: #fff;
	height: clamp(3.2rem, 4.8vw, 4rem);
	display: flex;
	align-items: center;
	font-weight: 500;
}

.page-service__person-header h3 small {
	padding: 0 clamp(1.6rem, 2.4vw, 2rem);
	font-size: clamp(1.8rem, 3vw, 2.4rem);
	font-weight: 500;
	color: #C88BD3;
}

.page-service__process {
	display: flex;
	flex-direction: column;
	gap: clamp(2.5rem, 3rem, 3rem);
}

.page-service__process li {
	display: flex;
	align-items: stretch;
	gap: clamp(1.5rem, 4vw, 3rem);
}

.page-service__process--time {
	flex-shrink: 0;
	position: relative;
	z-index: 3;
}

.page-service__process li:not(:last-child) .page-service__process--time:after {
	position: absolute;
	content: '';
	background-color: #D677C3;
	width: 0.3rem;
	height: calc(100% + 1rem);
	top: 2.5rem;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.page-service__process--time>span {
	background-color: #C88BD3;
	border-radius: 2rem;
	padding: clamp(0.6rem, 1.8vw, 1.2rem) clamp(1rem, 2.4vw, 2rem);
	width: clamp(8.7rem, 15vw, 12.2rem);
	line-height: 1.6rem;
	font-family: Montserrat;
	font-size: clamp(2.2rem, 4vw, 3rem);
	color: #fff;
	font-weight: 600;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.page-service__process--img-wrap {
	flex-shrink: 0;
	width: clamp(13rem, 25vw, 25rem);
	overflow: hidden;
}

.page-service__process--img-wrap img {
	width: 100%;
	aspect-ratio: 25/20;
	object-fit: contain;
}

.page-service__process--work {
	display: flex;
	gap: clamp(2rem, 3vw, 3rem);
}

@media(max-width:580px) {
	.page-service__process li {
		padding: 0 0 0 0.5rem;
		gap: 2rem;
	}

	.page-service__process--work {
		flex-direction: column;
		gap: 1rem;
	}
}

.page-service__process--work h4 {
	font-size: clamp(2rem, 2.4vw, 2.4rem);
	line-height: 1.5;
	font-weight: 500;
	color: #C88BD3;
}

.page-service__process--work p {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: clamp(2.4rem, 2.8vw, 2.8rem);
	margin: 0.5rem 0 0;
}

.page-service__process--break h4 {
	font-size: clamp(2rem, 2.4vw, 2.4rem);
	line-height: 1.5;
	font-weight: 500;
	color: #C88BD3;
	display: flex;
	align-items: center;
}

/* page-service faq */
.page-service__faq {
	margin: calc(4rem - clamp(0rem, 4vw, 4rem)) 0 1rem;
	position: relative;
}

.page-service__faq-bg1 {
	position: absolute;
	z-index: 0;
	left: min(67%, calc(50% + 29rem));
	top: max(-20vw, -28rem);
	width: clamp(10rem, 40vw, 51rem);
	transform: rotate(120deg);
}

.page-service__faq-bg2 {
	position: absolute;
	z-index: 0;
	left: min(calc(69% - min(15vw, 19rem)), calc(50% + 16rem));
	top: min(22vw, 25.5rem);
	width: clamp(10rem, 50vw, 62rem);
}

.page-service__faq h2 {
	width: min(100%, 104rem);
	margin: 0 auto;
	padding: 0 4rem clamp(0rem, 4vw, 5rem);
	font-size: clamp(2.6rem, 4vw, 4rem);
	color: #8BA0D3;
	letter-spacing: clamp(0.26rem, 0.4vw, 0.4rem);
}

.page-service__faq .subpage-faq__answer {
	border-left: solid 0.2rem #8BA0D3;
	border-right: solid 0.2rem #8BA0D3;
	border-bottom: solid 0.2rem #8BA0D3;
}

/* page-service insert-posts */
.page-service__insert-posts {
	margin-bottom: clamp(-3rem, calc(17rem - 20vw), 1rem);
}