@charset "utf-8";

/* -----------------------------
	TOP共通
-------------------------------- */


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

}

/* -----------------------------
	h1-area
-------------------------------- */
.h1-area {
	
}

@media screen and (max-width: 768px){
	.h1-area {
		top: 370px;
		left: 10px;
		right: auto;
		position: absolute;
		z-index: 1;
	}
	.h1-area h1 {
		text-align: left;
	}
}

/* -----------------------------
	mv-area
-------------------------------- */
.mv-wrap {
	position: relative;
}

.mv-area {
	/*margin: 130px 0 0;*/
	margin: 40px 0 0;
	height: 600px;
	width: 100%;
	/* background: linear-gradient(90deg, #e6d4bc, #e7d5be, #e9d7bf, #ead8c1, #ebdac3, #ecdbc5, #eeddc6, #efdec8, #eeddc6, #ecdbc5, #ebdac3, #ead8c1, #e9d7bf, #e7d5be, #e6d4bc); */
	position: relative;
	display: none;
}

/* .mv-area::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	right: calc( (100% - 1200px ) / 2 );
	background: url("../img/bg-n.svg") center/cover, no-repeat;
	aspect-ratio: 226 / 742;
	width: initial;
	height: 100%;
	min-height: 700px;
} */

/* .mv-area::after {
	content: "";
	display: inline-block;
	position: absolute;
	right: calc( calc((100% - 1200px) / 2) + 3% );
	bottom: 70px;
	background: url("../img/img-mv.png") no-repeat center top / cover;
	height: 600px;
	
	aspect-ratio: 47 / 63;
	
	aspect-ratio: 414 / 600;
	
} */

.mv-area .txt-wrap {
	position: absolute;
	left: calc( ( 100% - 1200px ) / 2 );
	/* top: 200px; */
	/* top: 250px; */
	/* top: 160px; */
	top: 200px;
	position: relative;
	z-index: 1;
	/* text-shadow: 3px 3px 10px rgba(0, 0, 0, .6); */
	/* text-shadow: 2px 2px 10px rgba(0, 0, 0, 1); */
	color: #fff;
}

.mv-area .mv-catch {
	color: var(--navy);
	font-size: 5rem;
	font-weight: bold;
	/* text-shadow: 3px 3px 10px rgba(0, 0, 0, .8); */
	line-height: 1.4;
}

.mv-area .mv-catch span.txt-bg {
	line-height: 1.6;
	box-decoration-break: clone;	
	-webkit-box-decoration-break: clone;
	display: inline;
	/* background: #fff; */
	background: rgba(255, 255, 255, 0.7);
	padding: 4px 10px;
}

.mv-area .mv-catch .sub-catch {
	/* font-size: 3rem; */
	font-size: 2.6rem;
	line-height: 1.6;
	box-decoration-break: clone;	
	-webkit-box-decoration-break: clone;
	display: inline;
	/* background: #fff; */
	background: rgba(255, 255, 255, 0.7);
	padding: 4px 10px;
}

.mv-area .mv-txt {
	font-size: 1.5rem;
	margin: 20px 0 0;
	text-shadow: 1px 1px 4px rgba(0, 0, 0, 1);
}

.mv-area .movie-box {
	width: 100%;
	height: 600px;
	position: absolute;
	top: 0;
	left: 0;
}

.mv-area .movie-box::after {
	content: '';
	width: 100%;
	height: 100%;
	/* background-color: rgba(16, 57, 75, .1); */
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.2) 100%);
	display: block;
	position: absolute;
	left: 0;
	top: 0;
}

.mv-area .movie-box video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: bottom;
}

/* .mv-area.second-mv-area .movie-box video {
	object-position: center;
} */

/* movie07 */
.mv-area .movie-box.movie07 video {
	object-position: 0 90%;
}

/* movie08 */
.mv-area .movie-box.movie08 video {
	object-position: center;
}

@media screen and (min-width: 1400px){
	.mv-area .movie-box video {
		object-position: 0 65%;
	}

	/* .mv-area.second-mv-area .movie-box video {
		object-position: 0 20%;
	} */

	/* movie07 */
	.mv-area .movie-box.movie07 video {
		object-position: 0 60%;
	}

	/* movie08 */
	.mv-area .movie-box.movie08 video {
		object-position: 0 25%;
	}

}

@media screen and (max-width: 768px){
	.mv-area {
		margin: -60px 0 0;
		height: 400px;
		width: 100%;
		/* background: linear-gradient(90deg, #E6D4BC, #FFF0DC, #DFCAAF ); */
	}
	
	.mv-area::before {
		display: none;
	}
	
	/* .mv-area::after {
		right: -5%;
		width: initial;
		height: 340px;
		bottom: 0;
		background: url("../img/img-mv-sp.png") center/cover, no-repeat;
		aspect-ratio: 444 / 680;
	} */
	
	.mv-area .txt-wrap {
		position: absolute;
		/*
		left: 3%;
		*/
		left: 12px;
		top: 60%;
		width: auto;
	}

	.mv-area.second-mv-area .txt-wrap {
		position: absolute;
		/*
		left: 3%;
		*/
		left: 12px;
		top: 50%;
		width: auto;
	}
	
	.mv-area .mv-catch {
		font-size: 2.6rem;
	}

	.mv-area .mv-catch span.txt-bg {
		padding: 2px 5px;
	}

	.mv-area .mv-catch .sub-catch {
		font-size: 1.6rem;
		padding: 2px 5px;
	}
	
	.mv-area .mv-txt {
		display: none;
	}
	
	.mv-area .laurel-list {
		width: 97%;
		padding: 30px 0 10px 3%;
	}
	
	.laurel-list li::before, .laurel-list li::after {
		background: url("../img/laurel03.svg") center/cover, no-repeat;
		aspect-ratio: 14 / 43;
		width: 14px;
	}
	
	.mv-area .laurel-list li .genre,
	.mv-area .laurel-list li p {
		text-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 1px -1px 0 #fff;
	}

	.mv-area .movie-box {
		width: 100%;
		height: 400px;
	}

	.mv-area .movie-box.movie04 video {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: 40% 0;
	}

	.mv-area .movie-box.movie05 video {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: 75% 0;
	}

	.mv-area .movie-box.movie07 video {
		object-position: 50% 0;
	}

	.mv-area .movie-box.movie08 video {
		object-position: 15% 0;
	}

	/* TOPページのみh1色調整 */
	#top .h1-area h1 {
		color: #fff;
	}

}

/* -----------------------------
	news-area
-------------------------------- */
.news-wrap .inner {
	display: flex;
	gap: 100px;
	justify-content: center;
	max-width: 1200px;
	padding: 30px 0;
	margin: 0 auto;
}

.news-wrap .title-area {
	padding: 10px 0 0;
}

.news-wrap .title-area .more-txt {
	font-size: 1.5rem;
	margin: 25px 0 0;
	display: inline-block;
}
.news-wrap .title-area .more-txt:hover {
	opacity: .6;
}

.news-wrap .title-area .more-txt i {
	color: var(--blue);
	display: inline-block;
	margin-right: 6px;
	font-size: 1.3rem;
}

.news-area {
	/*
	width: 640px;
	position: relative;
	margin: -160px 0 0 calc( ( 100% - 1200px ) / 2 );
	padding: 0 0 10px;
	border-bottom: 1px solid #262323;
	*/
	width: 640px;
	/* position: absolute; */
	/* left: calc( ( 100% - 1200px ) / 2 ); */
	bottom: 130px;
	padding: 0 0 10px;
	/* border-bottom: 1px solid #262323; */
}

.news-area .ticker {
	background: transparent;
	border: none;
	width: 100%;
}

.news-area .news-slider li {
	height: initial;
}
/*固定表示有用*/
/* .news-area .news-slider li:nth-child(n+3) {
	display: none;
} */
/*固定表示無用*/
.news-area .news-slider li:nth-child(n+4) {
	display: none;
}

.news-area .pickup-news {
	margin: 0;
}
.news-area .pickup-news li:nth-child(n+2) {
	display: none;
}
.news-area .news-slider li a,
.news-area .pickup-news li a{
	position: relative;
	/* border-bottom: 1px solid #262323; */
	border-bottom: 1px solid #e8e8e8;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.5;
    padding: 10px 0;
    width: 640px;
    /* height: initial; */
    transition: all .5s;
    /* overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1; */
}

.news-area .news-slider li a p,
.news-area .pickup-news li a p{
	width: 75%;
	font-size: 1.5rem;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

.news-area .news-slider li a i,
.news-area .pickup-news li a i{
	position: absolute;
	top: 14px;
	right: 0;
	color: var(--blue);
	font-size: 1.3rem;
}

.news-area .news-slider li a:hover,
.news-area .pickup-news li a:hover{
	opacity: .6;
}

.news-area .news-slider li a .date,
.news-area .pickup-news li a .date{
	font-family: var(--lato);
	padding: 0 30px 0 0;
	display: inline-block;
}

@media screen and (max-width: 768px){
	.news-wrap .inner {
		flex-wrap: wrap;
		gap: 0;
		justify-content: flex-start;
		max-width: 1200px;
		margin: 0 auto;
		padding: 30px 20px;
	}

	.news-wrap .title-area {
		width: 100%;
		padding: 0;
		display: flex;
		justify-content: space-between;
	}

	.news-wrap .title-area .more-txt {
		font-size: 1.5rem;
		margin: 40px 0 0;
		display: inline-block;
	}

	.news-wrap .title-area .more-txt i {
		color: var(--blue);
		display: inline-block;
		margin-right: 6px;
		font-size: 1.3rem;
	}

	.blog-area .more-txt:hover {
		opacity: .6;
	}

	.news-area {
		width: 100%;
		margin: 0;
		padding: 10px 0 0;
		border-bottom: none;
		/* background: var(--navy); */
		position: static;
		left: auto;
		bottom: auto;
	}
	
	.news-area .pickup-news {
		margin: 0;
	}
	
	.news-area .news-slider li a,
	.news-area .pickup-news li a{
		/* color: #fff; */
		width: initial;
		/* margin: 8px 0 0; */
		/* padding: 0; */
		/* border: none; */
	}

	.news-area .news-slider li a p,
	.news-area .pickup-news li a p{
		width: 65%;
	}
	
	.news-area .news-slider li a .date,
	.news-area .pickup-news li a .date{
		padding: 0 15px 0 0;
	}

}


/* -----------------------------
	user-flow-area
-------------------------------- */
.user-flow-area {
	max-width: 1400px;
	margin: 0 auto 0;
	/*padding: 70px 0 60px;*/
	padding: 60px 0 70px;
}

/* キャンペーンバナー　追記 */
.user-flow-area .campaign-banner-box {
	padding: 0 0 60px;
}
/*  */

.user-flow-area .bn-box {
	padding: 0 0 60px;
	text-align: center;
	box-shadow: 0 5px 10px rgba(0,0,0,.3);
	/*background: url("../img/dot.png") #fff repeat;*/
	background: #fff;
}
.user-flow-area .bn-box .bn-img {
	text-align: center;
	position: relative;
	top: -30px;
}
.user-flow-area .bn-box .btn-more {
	margin: 20px auto 0;
}

@media screen and (max-width: 768px){
	.user-flow-area {
		max-width: inherit;
		margin: 0;
		padding: 30px 0 50px;
	}
	
	.user-flow-area .catch {
		text-align: left;
		font-size: 1.6rem;
		font-weight: 500;
		line-height: 1.8;
	}
	
	/* キャンペーンバナー　追記 */
	.user-flow-area .campaign-banner-box {
		padding: 0;
	}
	/*  */
	
	.user-flow-area .bn-box {
		margin: 30px 0 0;
		padding: 0 0 40px;
	}
	.user-flow-area .bn-box .bn-img {
		top: -15px;
	}
	.user-flow-area .bn-box .bn-img img {
		width: 100%;
		max-width: 480px;
	}
	.user-flow-area .bn-box .btn-more {
		margin: 20px auto 0;
	}

	
}


/* -----------------------------
	current-works-area
-------------------------------- */
.current-works-area {
	margin: 80px 0 0;
}

.current-works-area .ttl-block {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 40px;
	margin: 0 0 50px;
}

.current-works-area .fukidashi {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	color: var(--navy);
	line-height: 1.3;
	font-size: 1.6rem;
	font-weight: 600;
	width: 171px;
	z-index: 1;
}

.current-works-area .fukidashi::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: -10px;
	left: 50%;
	transform: translateX(-50%);
	background: url("../img/fukidashi01.svg") center/cover, no-repeat;
	width: 171px;
	height: 55px;
	z-index: -1;
}

.current-works-area .catch {
	font-size: 2.6rem;
	color: var(--navy);
	font-weight: bold;
	line-height: 1.5;
	padding: 0 0 5px;
	position: relative;
}

.current-works-area .catch::before {
	content:"";
	display: inline-block;
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 3px;
	background: linear-gradient(90deg, #3b90ff, #3588f2, #2e7fe5, #2777d8, #206fcc, #1867bf, #0f5fb3, #0457a7);
}

.current-works-area .scroll-wrap {
	width: 100%;
	padding-left: calc( ( 100% - 1200px ) / 2 );
}

.current-works-area .works-list {
	display: flex;
	align-items: flex-start;
	margin: 40px 0 0;
}

.current-works-area .works-item {
	width: 340px;
}

.current-works-area .works-item a {
	display: block;
}

.current-works-area .works-item + .works-item {
	margin-left: 30px;
}

.current-works-area .works-item .img-wrap {
	width: 100%;
	height: initial;
	overflow: hidden;
}

.current-works-area .works-item .img-wrap img {
	transition: all .4s;
	transform: scale(1);
}

.current-works-area .works-item .txt-box {
	margin: 20px 0 0;
}

.current-works-area .works-item .plan {
	font-size: 1.2rem;
	line-height: 1.5;
	color: #777;
	margin: 15px 0 0;
	letter-spacing: 0;
}

.current-works-area .works-item .cate {
	font-size: 1.2rem;
	line-height: 1.5;
	color: #777;
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	gap: 5px;
	margin: 5px 0 0;
	letter-spacing: 0;
}

.current-works-area .works-item .cate span::before {
	content: "#";
	font-family: var(--basefont);
	font-weight: 500;
}

.current-works-area .more-txt {
	width: 100%;
	padding-right: calc( ( 100% - 1200px ) / 2 );
	text-align: right;
	font-size: 1.5rem;
	margin: 40px 0 0;
}

.current-works-area .more-txt i {
	color: var(--blue);
	font-size: 1.3rem;
	display: inline-block;
	padding-right: 5px;
}

@media (hover: hover) and (pointer: fine) {
	.current-works-area .works-item a:hover {
		opacity: .7;
	}
	
	.current-works-area .works-item a:hover .img-wrap img {
		transform: scale(1.05);
	}
	
	.current-works-area .more-txt a:hover {
		opacity: .6;
	}
}


@media screen and (max-width: 768px){
	.current-works-area {
		margin: 50px 0 0;
	}
	
	.current-works-area .ttl-block {
		flex-wrap: wrap;
		gap: 10px;
		margin: 0 0 20px;
	}
	
	.current-works-area .catch {
		font-size: 2rem;
		margin: 20px 0 0;
		font-feature-settings: "palt";
		letter-spacing: 0;
	}
	
	.current-works-area .catch::before {
		display: none;
	}
	
	.current-works-area .fukidashi {
		margin-left: -10px;
	}
	
	.current-works-area .line {
		position: relative;
		display: inline-block;
		line-height: 2.0;
	}
	
	.current-works-area .line::before {
		content: "";
		display: inline-block;
		position: absolute;
		bottom: 0;
		width: 100%;
		height: 3px;
		background: linear-gradient(90deg, #3b90ff, #3588f2, #2e7fe5, #2777d8, #206fcc, #1867bf, #0f5fb3, #0457a7);
	}
	
	.current-works-area .scroll-wrap {
		width: 100%;
		padding-left: 20px;
		padding-bottom: 20px;
		overflow-x: scroll;
	}
	
	.current-works-area .works-list {
		width: fit-content;
		padding-right: 20px;
		margin: 0;
	}
	
	.current-works-area .works-item {
		width: 230px;
	}
	
	/*.current-works-area .works-item .img-wrap {
		height: 140px;
	}*/
	
	.current-works-area .works-item .txt-box {
		margin: 10px 0 0;
	}
	
	.current-works-area .works-item .ttl {
		line-height: 1.6;
	}
	
	.current-works-area .works-item .plan {
		margin: 5px 0 0;
	}
	
	.current-works-area .works-item + .works-item {
		margin-left: 20px;
	}
	
	.current-works-area .more-txt {
		padding-right: 0;
		padding-left: 20px;
		text-align: left;
		font-size: 1.5rem;
		margin: 20px 0 0;
	}
}

/* -----------------------------
	about-area
-------------------------------- */
.about-area {
	margin: 120px 0 0;
	position: relative;
}

.about-area .en {
	font-size: 13.0rem;
	font-weight: 800;
	color: var(--paleblue);
	z-index: -1;
	position: absolute;
	top: -140px;
	left: 50%;
	transform: translateX(-50%);
	letter-spacing: 1.5rem;
	white-space: nowrap;
}

.about-area .en.sp-display {
	display: none;
}

.about-area .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.about-area .txt-wrap {
	width: 600px;
}

.about-area .sub-catch {
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.5;
	color: var(--blue);
	margin: 40px 0 0;
}

.about-area .catch {
	font-size: 5.0rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 10px 0 0;
}

.about-area .basic-txt {
	margin: 20px 0 0;
}


.about-area .img-wrap{
	width: 600px;
	margin: 0 -30px 0 0;
}


@media screen and (max-width: 768px){
	.about-area {
		margin: 60px 0 0;
	}
	
	.about-area .inner {
		flex-wrap: wrap;
	}
	
	.about-area .txt-wrap {
		display: contents;
	}
	
	.about-area .en {
		font-size: 6.0rem;
		top: -65px;
		letter-spacing: 0.7rem;
	}
	
	.about-area .en.sp-display {
		display: flex;
	}
	
	.about-area .en.pc-display {
		display: none;
	}
	
	.about-area .min-ttl {
		order: 1;
	}
	
	.about-area .sub-catch {
		display: none;
	}
	
	.about-area .catch {
		font-size: 2.6rem;
		margin: 10px 0 0;
		order: 2;
	}
	
	.about-area .img-wrap {
		order: 3;
		width: 100%;
		margin: 10px 0 0;
	}
	
	.about-area .basic-txt {
		order: 4;
		margin: 10px 0 0;
	}
	
	.about-area .btn-more {
		order: 5;
		margin: 30px auto 0;
	}
}

/* -----------------------------
	solution-area
-------------------------------- */
.solution-area {
	margin: 100px 0 0;
	padding: 60px 0 100px;
	background: var(--palenavy);
	border-radius: 40px 40px 0 0;
}

.solution-area .intro-txt {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.solution-area .txt-wrap {
	width: 850px;
	color: #fff;
}

.solution-area .txt-wrap .catch {
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.6;
}

.solution-area .txt-wrap .basic-txt {
	margin: 20px 0 0;
}

.solution-area .want-block {
	margin: 60px 0 0;
}

.solution-area .want-list {
	display: flex;
	gap: 12px;
	justify-content: space-between;
	align-items: flex-start;
}

.solution-area .want-list li {
	position: relative;
	width: calc( ( 100% - 36px ) / 2 );
	text-align: center;
}

/*カラー指定*/
.solution-area .want-list li {
	--main: #E4F6B0;
}

.solution-area .want-list li:nth-child(2){
	--main: #F8DFB6;
}

.solution-area .want-list li:nth-child(3){
	--main: #F6DCDC;
}

.solution-area .want-list li:nth-child(4){
	--main: #F8ECBA;
}

.solution-area .want-list li .under-line {
	 background-image: linear-gradient(to right, var(--main) 0%, var(--main) 50%, transparent 50%);
}

.solution-area .want-list .want-txt {
	font-weight: 800;
	line-height: 1.5;
	background: #fff;
	padding: 40px 20px;
	position: relative;
}

.solution-area .want-list .want-txt::before,
.solution-area .want-list .want-txt::after {
	position: absolute;
	width: 18px;
	height: 13px;
	background: url("../img/deco-want01.png") center/cover, no-repeat;
	
}

.solution-area .want-list .want-txt::before {
	content: "";
	left: 10px;
	top: -7px;
}

.solution-area .want-list .want-txt::after {
	content: "";
	right: 10px;
	bottom: -7px;
	transform: rotate(180deg);
}

.solution-area .want-list .icon-wrap {
	position: absolute;
	top: -30px;
	right: 10px;
	width: 60px;
	height: 60px;
	z-index: 1;
}

.solution-area .want-list .arrow {
	position: absolute;
	background: url("../img/deco-want-arrow.png") center/cover, no-repeat;
	width: 31px;
	height: 54px;
	left: 50%;
	transform: translateX(-50%);
	bottom: -36px;
}

.solution-area .want-list li a {
	display: flex;
	width: 100%;
	background: #fff;
	text-align: center;
	justify-content: center;
	align-items: flex-end;
	flex-wrap: wrap;
	box-shadow: 0 3px 20px rgba(0,0,0,.2);
	position: relative;
	z-index: 1;
	margin: 50px 0 0;
}

.solution-area .want-list li a::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	background: #F0FCFF;
	transition: all .6s;
	z-index: -1;
}

.solution-area .want-list li .img-wrap {
	width: 100%;
	text-align: center;
	padding: 40px 20px 0;
	transform: translateY(0);
	transition: all .6s;
}

.solution-area .want-list li img {
	width: revert-layer;
}

.solution-area .want-list li .catch {
	padding: 10px 30px 0;
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.5;
}

.solution-area .want-list li .basic-txt {
	padding: 15px 30px 30px;
	text-align: left;
	font-size: 1.4rem;
}

.solution-area .want-list li .answer {
	width: 100%;
	color: #fff;
	font-weight: bold;
	background: #0CB6E4;
	padding: 20px;
	font-size: 1.8rem;
	position: relative;
	z-index: 1;
	line-height: 1.4;
}

.solution-area .want-list li .answer::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	z-index: -1;
	background: #0095BE;
	transition: all .6s;
}

.solution-area .want-list  li .answer::after {
	content: "\f061";
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	font-size: 1.6rem;
	transition: all .6s;
}

.solution-area .want-list  li .sub {
	font-size: 1.4rem;
	position: relative;
}

.solution-area .want-list  li .sub::before,
.solution-area .want-list  li .sub::after {
	content: "";
	position: absolute;
	background: #fff;
	width: 2px;
	height: 100%;
	top: 0;
}

.solution-area .want-list  li .sub::before {
	transform: rotate(-25deg);
	left: -10px;
}

.solution-area .want-list  li .sub::after {
	transform: rotate(25deg);
	right: -10px;
}

.solution-area .bottom-catch-block {
	margin: 0;
	position: relative;
	text-align: center;
}

.solution-area .bottom-catch-block .en {
	font-size: 13.0rem;
	font-weight: 800;
	color: #305392;
	white-space: nowrap;
	letter-spacing: 1rem;
	width: 100%;
	/*display: inline-block;*/
	justify-content: center;
}

.solution-area .bottom-catch-block .catch {
	color: #fff;
	font-size: 2.6rem;
	font-weight: 600;
	margin-top: -110px;
	position: relative;
	z-index: 2;
}

.solution-area .want-list .accordion-icon {
	display: none;
}

.solution-area .want-list li .answer-box {
	display: contents;
}

@media (hover: hover) and (pointer: fine) {
	.solution-area .want-list li a:hover::before {
		width: 100%;
	}

	.solution-area .want-list li a:hover .answer::before {
		width: 100%;
	}

	.solution-area .want-list li a:hover .answer::after {
		right: 8px;
	}
	
	.solution-area .want-list li a:hover .img-wrap {
		transform: rotateY(180deg);
	}
}

@media screen and (max-width: 768px){
	.solution-area {
		margin: 60px 0 0;
		padding: 40px 0;
		border-radius: 20px 20px 0 0;
	}
	
	.solution-area .intro-txt {
		flex-direction: row-reverse;
	}
	
	.solution-area .txt-wrap .basic-txt {
		display: none;
	}
	
	.solution-area .txt-wrap {
		width: 50%;
	}
	
	.solution-area .txt-wrap .catch {
		font-size: 2.2rem;
	}
	
	.solution-area .intro-txt .img-wrap {
		width: 46%;
		max-width: 200px;
	}
	
	.solution-area .want-block {
		margin: 20px 0 0;
	}
	
	.solution-area .want-list {
		flex-wrap: wrap;
		gap: 15px;
	}
	
	.solution-area .want-list li {
		width: 100%;
		text-align: left;
		background: #fff;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		flex-wrap: wrap;
	}
	
	.solution-area .want-list .icon-wrap {
		position: relative;
		top: initial;
		right: initial;
		width: 16vw;
		height: 16vw;
		margin: 10px;
	}
	
	.solution-area .want-list .want-txt {
		background: transparent;
		padding: 0 20px 0 0;
		width: calc( 100% - calc( 16vw + 20px ) );
		letter-spacing: 0;
	}
	
	.solution-area .want-list .want-txt::before,
	.solution-area .want-list .want-txt::after {
		display: none;
	}
	
	.solution-area .want-list .arrow {
		display: none;
	}
	
	.solution-area .want-list .accordion-icon {
		display: inline-block;
		right: 10px;
	}
	
	.solution-area .want-list li .answer-box {
		display: none;
		width: 100%;
	}
	
	.solution-area .want-list li a {
		box-shadow: none;
		margin: 0;
		padding: 20px 0 0;
		background: var(--paleblue);
	}
	
	.solution-area .want-list li .img-wrap {
		width: 100%;
		text-align: center;
		padding: 0;
	}
	
	.solution-area .want-list li .catch {
		padding: 10px 20px 0;
	}
	
	.solution-area .want-list li .basic-txt {
		padding: 15px 20px 20px;
	}
	
	.solution-area .bottom-catch-block {
		margin: 0;
	}
	
	.solution-area .bottom-catch-block .en {
		font-size: 6.0rem;
		letter-spacing: .5rem;
		text-align: center;
	}
	
	.solution-area .bottom-catch-block .catch {
		color: #fff;
		font-size: 1.8rem;
		font-weight: 600;
		margin-top: -50px;
	}

}

/* -----------------------------
	plan-area
-------------------------------- */
.plan-area {}

/*top-area*/
.plan-area .top-area {
	padding: 140px 0;
	position: relative;
}

.plan-area .top-area .bg-wrap {
	position: absolute;
	top: 0;
	right: 0;
	background: url("../img/bg-plan.png") #E7EDF7 no-repeat left 100px center/cover;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.plan-area .top-area .txt-wrap {
	width: 800px;
}

.plan-area .top-area .catch {
	font-size: 5.0rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 15px 0 0;
}

.plan-area .top-area .sub-catch {
	font-size: 2.8rem;
	font-weight: bold;
	margin: 30px 0 0;
}

.plan-area .top-area .basic-txt {
	margin: 15px 0 0;
}

/*bottom-area*/
.plan-area .bottom-area {
	padding: 120px 0 20px;
}

.plan-area .bottom-area .catch-block {
	display: flex;
	justify-content: flex-start;
	position: relative;
}

.plan-area .bottom-area .catch-block .bg-wrap {
	display: inline-block;
	position: absolute;
	top: -50px;
	right: -10%;
	background: url("../img/img-plan.png") center/cover, no-repeat;
	width: 55%;
	height: initial;
	aspect-ratio: 682 / 516;
	z-index: -1;
	animation: fuwa 2s infinite;
}

@keyframes fuwa {
	0%,100% {
		transform: translateY(0);
	}
	
	50% {
		transform: translateY(-4px);
	}
}

.plan-area .bottom-area .catch-block .txt-wrap {
	width: 720px;
}

.plan-area .bottom-area .catch-block .sub-catch {
	font-size: 2.8rem;
	line-height: 1.5;
	font-weight: bold;
}

.plan-area .bottom-area .catch-block .catch {
	font-size: 5.0rem;
	line-height: 1.5;
	font-weight: 700;
}

.plan-area .bottom-area .catch-block .ttl-block {
	position: relative;
}

.plan-area .bottom-area .catch-block .deco {
	display: inline-block;
	width: 84px;
	height: initial;
	aspect-ratio: 84 / 85;
	position: absolute;
	top: -50px;
	right: 50px;
}

.plan-area .bottom-area .catch-block .accent {
	color: #F15071;
}

.plan-area .bottom-area .catch-block .logo-block {
	margin: 30px 0 0;
	display: flex;
	gap: 20px;
	align-items: flex-end;
}

.plan-area .bottom-area .catch-block .logo {
	width: 340px;
}

.plan-area .bottom-area .catch-block .premium {
	display: inline-block;
	background: #C8A67A;
	border-radius: 40px;
	line-height: 1.5;
	padding: 5px 20px;
	color: #fff;
	position: relative;
	overflow: hidden;
}

.plan-area .bottom-area .catch-block .premium::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 200px;
    background-color: #F4F2E9;
    transition: 10s;
    animation: shiny 5s ease-in-out infinite;
	z-index: 3;
}

@-webkit-keyframes shiny {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.3; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 0.5; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

.plan-area .bottom-area .catch-block .plan-catch {
	font-size: 3.0rem;
	margin: 30px 0 0;
	line-height: 1.5;
	font-weight: bold;
}

.plan-area .bottom-area .catch-block .basic-txt {
	margin: 20px 0 0;
}

.plan-area .bottom-area .point-list {
	margin: 60px 0 0;
	display: flex;
	justify-content: space-between;
}

.plan-area .bottom-area .point-list li {
	width: calc( ( 100% -  60px ) / 4 );
	background: #ECF1F9;
	padding: 10px 10px 30px;
	position: relative;
	text-align: center;
}

.plan-area .bottom-area .point-list .point {
	width: 48px;
	height: 48px;
	background: url("../img/fukidashi-circle.svg") center/cover, no-repeat;
	position: absolute;
	top: -12px;
	left: -12px;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	font-size: 0.8rem;
	font-weight: bold;
}

.plan-area .bottom-area .point-list .point .num {
	font-size: 1.8rem;
}

.plan-area .bottom-area .point-list .point-catch {
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 20px 0 0;
}

.plan-area .bottom-area .point-list .point-sub-catch{
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.5;
	color: var(--gunjo);
	margin: 10px 0 0;
	letter-spacing: 0;
}

.plan-area .reccomend-block {
	padding: 70px 40px 40px;
	border: 1px solid var(--navy);
	margin: 60px 0 0;
	position: relative;
	z-index: -2;
}

.plan-area .reccomend-block .fukidashi {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--navy);
    line-height: 1.3;
    font-size: 1.6rem;
    font-weight: 600;
    width: 171px;
	top: -10px;
	left: 40px;
}

.plan-area .reccomend-block .fukidashi::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
    background: url("../img/fukidashi01.svg") center/cover, no-repeat;
    width: 171px;
    height: 55px;
	z-index: -1;
}

.plan-area .reccomend-block .reccomend-list {
	display: flex;
	gap: 12px;
	justify-content: space-between;
	align-items: flex-start;
}

.plan-area .reccomend-block .reccomend-list li {
	position: relative;
	width: calc( ( 100% - 36px ) / 2 );
	background: #F9FAFB;
	padding: 20px 20px;
	text-align: center;
}

.plan-area .reccomend-block .reccomend-list li::before,
.plan-area .reccomend-block .reccomend-list li::after {
	position: absolute;
	width: 18px;
	height: 13px;
	background: url("../img/deco-want02.png") center/cover, no-repeat;
	
}

.plan-area .reccomend-block .reccomend-list li::before {
	content: "";
	left: 10px;
	top: -7px;
}

.plan-area .reccomend-block .reccomend-list li::after {
	content: "";
	right: 10px;
	bottom: -7px;
	transform: rotate(180deg);
}

.plan-area .reccomend-block .reccomend-list .want-txt {
	font-weight: 500;
	line-height: 1.5;
	font-size: 1.5rem;
}

.plan-area .reccomend-block .reccomend-list .icon-wrap {
	position: absolute;
	top: -45px;
	right: 10px;
	width: 60px;
	height: 60px;
}

.plan-area .plan-block {
	margin: 120px 0 0;
}

.plan-area .plan-block .plan-box {
	background: #ECF1F9;
	display: flex;
	position: relative;
}

.plan-area .plan-block .plan-box + .plan-box {
	margin: 80px 0 0;
}

.plan-area .plan-block .plan-box .fukidashi {
	position: absolute;
	top: -10px;
	left: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 1;
	width: 306px;
	color: var(--navy);
	font-weight: 700;
}

.plan-area .plan-block .plan-box .fukidashi::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: -20px;
	left: 0;
	background: url("../img/fukidashi02.svg") center/cover, no-repeat;
	width: 306px;
	height: 70px;
	z-index: -2;
}

.plan-area .plan-block .plan-box.delivery .fukidashi {
	width: 286px;
}

.plan-area .plan-block .plan-box.delivery .fukidashi::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: -20px;
	left: 0;
	background: url("../img/fukidashi03.svg") center/cover, no-repeat;
	width: 286px;
	height: 70px;
	z-index: -2;
}

.plan-area .plan-block .txt-wrap {
	padding: 60px;
	width: calc(100% - 510px);
}

.plan-area .plan-block .sub-catch {
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
}

.plan-area .plan-block .catch {
	margin: 5px 0 0;
	font-size: 3.4rem;
	font-weight: bold;
	line-height: 1.5;
}

.plan-area .plan-block .basic-txt {
	margin: 20px 0 0;
}

.plan-area .plan-block .plan-box .bg-wrap {
	width: 510px;
}

.plan-area .plan-block .plan-box-wrap {
	background: #ECF1F9;
	padding: 30px;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin: 60px 0 0;
}

.plan-area .plan-block .plan-box.min {
	/*
	width: calc( ( 100% - 20px ) / 2 );
	*/
	width: 100%;
	background: transparent;
}

.plan-area .plan-block .plan-box.min a {
	display: flex;
	position: relative;
	background: #fff;
	z-index: 1;
}

.plan-area .plan-block .plan-box.min a::before {
	content: "";
	display: block;
	width: 0;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: var(--palenavy);
	transition: all .6s;
	z-index: -1;
}

.plan-area .plan-block .plan-box.min + .plan-box.min {
	margin: 0;
}

.plan-area .plan-block .plan-box.min .bg-wrap {
	/*width: 160px;*/
	width: 400px;
}
.plan-area .plan-block .plan-box.min .bg-wrap.consulting {
	background: url("../img/common/img_34173882.jpg") no-repeat center center / cover;
}
.plan-area .plan-block .plan-box.min .bg-wrap.writing {
	background: url("../img/img-service-writer.jpg") no-repeat center center / cover;
}

.plan-area .plan-block .plan-box.min .txt-wrap {
	/*
	width: calc( 100% - 160px );
	*/
	width: calc( 100% - 400px );
	padding: 30px 40px;
}

.plan-area .plan-block .plan-box.min .catch {
	font-size: 2.6rem;
	margin: 0;
	color: var(--navy);
	transition: 0.5s;
}

.plan-area .plan-block .plan-box.min .sub-catch {
	font-size: 1.8rem;
	margin: 15px 0 0;
}

.plan-area .plan-block .plan-box.min .basic-txt {
	margin: 10px 0 0;
	font-size: 1.4rem;
}

.plan-area .plan-block .plan-box .arrow {
	position: absolute;
	bottom: 10px;
	right: 10px;
	color: var(--blue);
	display: flex;
	justify-content: center;
	align-items: center;
	width: 24px;
	height: 24px;
	aspect-ratio: 1 / 1;
	border: 1px solid var(--navy);
	border-radius: 12px;
	font-size: 1.1rem;
	transition: all .6s;
}

@media (hover: hover) and (pointer: fine) {
	.plan-area .plan-block .plan-box.min a:hover,
	.plan-area .plan-block .plan-box.min a:hover .catch {
		color: #fff;
		box-shadow: 0 3px 20px rgba(4,87,167,.2);
	}
	
	.plan-area .plan-block .plan-box.min a:hover::before {
		width: 100%;
	}
	
	.plan-area .plan-block .plan-box a:hover .arrow {
		color: #fff;
		border: 1px solid #fff;
	}

}

@media screen and (max-width: 768px){
	.plan-area {
		position: relative;
	}
	
	/*.plan-area::before {
		content: "";
		display: block;
		width: 100%;
		height: 50vw;
		position: relative;
		background: url("../img/bg-plan.png") right/cover, no-repeat #E7EDF7;
	}*/
	
	.plan-area .top-area {
		padding: 0;
		background: #fff;
	}
	
	.plan-area .top-area .bg-wrap {
		position: relative;
		top: initial;
		right: initial;
		width: 100%;
		height: 55vw;
		z-index: 1;
		background-position: right center;
	}
	
	.plan-area .top-area .txt-wrap {
		width: 100%;
		padding: 40px 0 0;
	}
	
	.plan-area .top-area .catch {
		font-size: 2.6rem;
		margin: 10px 0 0;
	}
	
	.plan-area .top-area .sub-catch {
		font-size: 1.8rem;
		margin: 10px 0 0;
		font-weight: 500;
	}
	
	.plan-area .top-area .basic-txt {
		display: none;
	}
	
	.plan-area .bottom-area {
		padding: 10px 0 0;
	}
	
	.plan-area .bottom-area .catch-block {
		flex-wrap: wrap;
		justify-content: flex-end;
		padding: 0 20px;
	}
	
	.plan-area .bottom-area .catch-block .bg-wrap {
		position: relative;
		top: initial;
		right: initial;
		max-width: 600px;
		/*width: 92%;*/
		width: 70%;
		margin: 0 -10% 0 0;
	}
	
	.plan-area .bottom-area .catch-block .bg-circle {
		content: "";
		display: inline-block;
		position: absolute;
		width: 48vw;
		height: 48vw;
		background: #F1F4F6;
		border-radius: 50vw;
		aspect-ratio: 1 / 1;
		top: 2%;
		left: 16%;
		z-index: -2;
	}
	
	.plan-area .bottom-area .catch-block .bg-circle02 {
		content: "";
		display: inline-block;
		position: absolute;
		width: 12vw;
		height: 12vw;
		background: #F1F4F6;
		border-radius: 50vw;
		aspect-ratio: 1 / 1;
		top: 30%;
		left: 2%;
		z-index: -2;
	}
	
	.plan-area .bottom-area .catch-block .txt-wrap {
		width: 100%;
		margin: -120px 0 0;
	}
	
	.plan-area .bottom-area .catch-block .ttl-block {
		width: fit-content;
	}
	
	.plan-area .bottom-area .catch-block .sub-catch {
		font-size: 1.6rem;
		text-shadow: var(--ts-white);
	}
	
	.plan-area .bottom-area .catch-block .catch {
		font-size: 3.0rem;
		text-shadow: var(--ts-white);
	}
	
	.plan-area .bottom-area .catch-block .deco {
		width: 62px;
		top: initial;
		bottom: 25px;
		right: -60px;
	}
	
	.plan-area .bottom-area .catch-block .logo-block {
		margin: 10px 0 0;
		display: flex;
		gap: 10px;
		align-items: flex-end;
	}
	
	.plan-area .bottom-area .catch-block .logo {
		width: 70%;
		max-width: 300px;
	}
	
	.plan-area .bottom-area .catch-block .premium {
		border-radius: 40px;
		padding: 5px 10px;
		font-size: 1.1rem;
		max-width: calc( 70% - 10px );
		text-align: center;
	}
	
	.plan-area .bottom-area .catch-block .plan-catch {
		font-size: 1.8rem;
		margin: 20px 0 0;
		font-weight: 500;
	}
	
	.plan-area .bottom-area .catch-block .basic-txt {
		display: none;
	}
	
	.plan-area .bottom-area .point-list {
		margin: 30px 0 0;
		flex-wrap: wrap;
		gap: 20px;
	}
	
	.plan-area .bottom-area .point-list li {
		width: calc( 100% - 20px );
		margin-left: 20px;
		padding: 10px;
		text-align: left;
	}
	
	.plan-area .bottom-area .point-list .point {
		width: 38px;
		height: 38px;
		z-index: 1;
		top: -12px;
		left: -12px;
		font-size: 0.6rem;
	}
	
	.plan-area .bottom-area .point-list .point .num {
		font-size: 1.4rem;
	}
	
	.plan-area .bottom-area .point-list li .img-wrap {
		position: absolute;
		top: 10px;
		left: 10px;
		width: 24vw;
		height: calc( 100% - 20px );
	}
	
	.plan-area .bottom-area .point-list .point-catch {
		font-size: 1.8rem;
		margin: 0;
		padding: 10px 0 0 29vw;
		line-height: 1.4;
	}
	
	.plan-area .bottom-area .point-list .point-sub-catch {
		color: #333;
		font-size: 1.2rem;
		margin: 0;
		padding: 5px 0 0 29vw;
	}
	
	.plan-area .reccomend-block {
		display: none;
	}
	
	.plan-area .plan-block {
		margin: 50px 0 70px;
	}
	
	.plan-area .plan-block .plan-box {
		flex-wrap: wrap;
		padding: 70px 20px 60px;
	}
	
	.plan-area .plan-block .plan-box + .plan-box {
		margin: 0;
	}
	
	.plan-area .plan-block .plan-box .fukidashi {
		position: relative;
		top: initial;
		left: initial;
		display: flex;
		width: 306px;
	}
	
	.plan-area .plan-block .txt-wrap {
		padding: 50px 0 0;
		width: 100%;
		position: relative;
		z-index: 1;
	}
	
	.plan-area .plan-block .sub-catch {
		font-size: 1.6rem;
	}
	
	.plan-area .plan-block .catch {
		font-size: 2.4rem;
		font-weight: 700;
		line-height: 1.4;
	}
	
	.plan-area .plan-block .basic-txt {
		display: none;
	}
	
	.plan-area .plan-block .plan-box .bg-wrap {
		width: 65%;
		height: initial;
		position: absolute;
		top: 70px;
		right: 0;
	}
	.plan-area .plan-block .plan-box.ichioshi .bg-wrap {
		right: 0;
	}
	
	.plan-area .plan-block .plan-box.startup {
		background: #fff;
	}
	
	.plan-area .plan-block .plan-box.ichioshi .bg-wrap {
		top: 30px;
	}
	
	.plan-area .plan-block .plan-box.startup .bg-wrap,
	.plan-area .plan-block .plan-box.delivery .bg-wrap{
		width: 40%;
	}
	.plan-area .plan-block .plan-box.startup .bg-wrap img{
		height: 250px;
	}
	.plan-area .plan-block .plan-box.delivery .bg-wrap img{
		height: 220px;
	}
	
	/*
	.plan-area .plan-block .plan-box .bg-wrap {
		width: 40%;
		height: initial;
		position: absolute;
		top: 70px;
		right: 0;
	}
	
	.plan-area .plan-block .plan-box.delivery {
		background: #fff;
	}
	*/
	
	
	.plan-area .plan-block .plan-box-wrap {
		background: transparent;
		padding: 0 0 0 20px;
		flex-wrap: wrap;
		gap: 15px;
		margin: 0;
	}
	
	.plan-area .plan-block .plan-box.min {
		width: 100%;
		padding: 0;
	}
	
	.plan-area .plan-block .plan-box.min a {
		background: #ECF1F9;
		padding: 10px;
		flex-wrap: wrap;
		width: 100%;
		min-height: 110px;
	}
	
	.plan-area .plan-block .plan-box.min .bg-wrap {
		width: 20vw;
		height: calc( 100% - 20px );
		right: initial;
		top: 10px;
		left: 10px;
	}
	
	.plan-area .plan-block .plan-box.min .txt-wrap {
		width: 100%;
		padding: 0 0 0 calc( 20vw + 15px );
		display: flex;
		align-items: center;
		align-content: center;
		flex-wrap: wrap;
	}
	
	.plan-area .plan-block .plan-box .arrow {
		bottom: initial;
		right: 0px;
		top: 50%;
		transform: translateY(-50%);
	}
	
	.plan-area .plan-block .plan-box.min .catch {
		font-size: 1.8rem;
		width: 100%;
	}
	
	.plan-area .plan-block .plan-box.min .sub-catch {
		font-size: 1.4rem;
		margin: 5px 0 0;
		width: 100%;
	}
}

/* -----------------------------
	works-area
-------------------------------- */
.works-area .top-area {
	padding: 100px 0;
	position: relative;
	overflow: hidden;
}

.works-area .top-area::before {
	content: "";
	background: url("../img/works-slider.png") center/cover;
	width: 440%;
	height: initial;
	aspect-ratio: 8920 / 2680;
	position: absolute;
	top: -200%;
	left: -300%;
	animation: works-slider 60s linear infinite;
	transform: rotate(10deg) translateX(0%);
}

@keyframes works-slider {
  0% {
    -webkit-transform: rotate(15deg) translateX(0%);
    transform: rotate(15deg) translateX(0%);
  }
  100% {
    -webkit-transform: rotate(15deg) translateX(50%);
    transform: rotate(15deg) translateX(50%);
  }
}

.works-area .top-area::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #122C5A;
	opacity: .7;
}

.works-area .top-area .txt-wrap {
	color: #fff;
	position: relative;
	z-index: 1;
	width: 76%;
}

.works-area .top-area .catch {
	font-size: 5.0rem;
	font-weight: 700;
	line-height: 1.5;
}

.works-area .top-area .sub-catch {
	margin: 20px 0 0;
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.5;
}

.works-area .top-area .basic-txt {
	margin: 20px 0 0;
}

.works-area .top-area .more-txt {
	display: none;
}

.works-area .top-area .read-more {
	text-decoration-line: underline;
	cursor: pointer;
}

.works-area .top-area .read-more.active {
	visibility: hidden;
}

.works-area .bottom-area {
	padding: 40px 0 170px;
	position: relative;
}

.works-area .bottom-area .marquee {
	position: absolute;
	bottom: 50px;
	left: 0;
	font-size: 18.0rem;
	overflow: hidden;
	white-space: nowrap;
	font-weight: bold;
	font-family: 'Poppins', sans-serif;
  	animation: marquee 120s linear infinite;
	letter-spacing: .5rem;
	color: #F3F4F7;
	-webkit-text-stroke: 1px rgba(255,255,255,.8);
	display: inline-block;
	z-index: -1;
}

.works-area .bottom-area .marquee span {
	color: transparent;
	-webkit-text-stroke: 1px #DCDCDC;
	padding: 0 30px 0 0;
}

@keyframes marquee {
  0% {
    -moz-transform: translateX(0%);
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
  100% {
    -moz-transform: translateX(-75%);
    -webkit-transform: translateX(-75%);
    transform: translateX(-75%);
  }
}

.works-area .bottom-area .works-list {
	display: flex;
	align-items: flex-start;
	gap: 36px;
	flex-wrap: wrap;
}

.works-area .bottom-area .btn-more {
	margin: 80px 0 0;
	text-align: center;
}

.works-area .bottom-area .works-item {
	width: calc( ( 100% - 72px ) / 3 );
}

.works-area .bottom-area .works-item a {
	display: block;
	position: relative;
	transform: translateY(0);
	transition: all .4s;
}

.works-area .bottom-area .works-item a .arrow {
	position: absolute;
	bottom: 20px;
	right: 20px;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 24px;
	height: 24px;
	aspect-ratio: 1 / 1;
	border: 1px solid #fff;
	border-radius: 12px;
	font-size: 1.1rem;
	transition: all .2s;
	transition: all .4s;
	opacity: 0;
}

.works-area .bottom-area .works-item a::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,.5);
	opacity: 0;
	transition: all .4s;
}

.works-area .bottom-area .works-item a .detail-txt {
	position: absolute;
	display: block;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	text-align: left;
	width: 84%;
	color: #fff;
	font-weight: 400;
	font-size: 1.5rem;
	line-height: 2;
	opacity: 0;
	transition: all .4s;
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 8;
}

.works-area .bottom-area .works-item .img-wrap {
	width: 100%;
	height: initial;
	position: relative;
}

.works-area .bottom-area .works-item .img-wrap::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #122C5A;
	opacity: 0;
	transition: all .4s;
}

.works-area .bottom-area .works-item .txt-box {
	margin: 20px 0 0;
}

.works-area .bottom-area .works-item .plan {
	font-size: 1.2rem;
	line-height: 1.5;
	color: #777;
	margin: 15px 0 0;
	letter-spacing: 0;
}

.works-area .bottom-area .works-item .cate {
	font-size: 1.2rem;
	line-height: 1.5;
	color: #777;
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	gap: 5px;
	margin: 5px 0 0;
	letter-spacing: 0;
}

.works-area .bottom-area .works-item .cate span::before {
	content: "#";
	font-family: var(--basefont);
	font-weight: 500;
}

@media (hover: hover) and (pointer: fine) {
	.works-area .bottom-area .works-item a:hover {
	}
	
	.works-area .bottom-area .works-item a:hover .img-wrap::before {
		opacity: .6;
	}
	
	.works-area .bottom-area .works-item a:hover .arrow {
		opacity: 1;
	}
	
	.works-area .bottom-area .works-item a:hover .detail-txt {
		opacity: 1;
	}
}

@media screen and (max-width: 768px){
	.works-area {
		padding: 0;
	}
	
	.works-area .top-area {
		padding: 0;
		background: none;
	}
	
	.works-area .top-area::before {
		display: none;
	}
	
	.works-area .top-area::after {
		display: none;
	}
	
	.works-area .top-area .txt-wrap {
		width: 100%;
		color: #333;
	}
	
	.works-area .top-area .laurel-list {
		width: 100%;
		height: initial;
		aspect-ratio: 750 / 440;
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		overflow: hidden;
	}
	
	.works-area .top-area .laurel-list::before {
		content: "";
		background: url("../img/works-slider.png") center/cover;
		width: 400%;
		height: initial;
		aspect-ratio: 892 / 268;
		position: absolute;
		top: -70%;
		right: -50%;
		animation: works-slider 60s linear infinite;
		transform: rotate(10deg) translateX(0%);
		z-index: -2;
	}
	
	.works-area .top-area .laurel-list::after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: #122C5A;
		opacity: .7;
		z-index: -1;
	}
	
	.works-area .top-area .laurel-list li {
		position: relative;
	}
	
	.works-area .top-area .laurel-list li .neo-works {
		position: absolute;
		bottom: -25px;
		left: 50%;
		transform: translateX(-50%);
		font-size: 1.4rem;
		letter-spacing: .3rem;
		white-space: nowrap;
	}
	
	.works-area .top-area .laurel-list li.hp .genre {
		font-size: 1.5rem;
	}
	
	.works-area .top-area .laurel-list li .num {
		font-size: 4.7rem;
	}
	
	.works-area .top-area .laurel-list li.hp .wrap {
		font-size: 1.0rem;
	}
	
	.works-area .top-area .laurel-list li .unit {
		font-size: 1.9rem;
		line-height: 1;
	}
	
	.works-area .top-area .laurel-list li p {
		align-items: center;
		justify-content: space-between;
	}
	
	.works-area .top-area .laurel-list li::before {
		left: -22px;
	}
	
	.works-area .top-area .laurel-list li::after {
		right: -22px;
	}
	
	.works-area .top-area .laurel-list li::before,
	.works-area .top-area .laurel-list li::after {
		background: url("../img/laurel02.svg") center/cover, no-repeat;
		aspect-ratio: 22 / 82;
		width: 16px;
	}
	
	.works-area .top-area .catch {
		font-size: 2.6rem;
		padding: 30px 20px 20px;
	}
	
	.works-area .top-area .sub-catch {
		margin: 0;
		font-size: 1.8rem;
		padding: 0 20px;
	}
	
	.works-area .top-area .basic-txt {
		display: none;
	}
	
	.works-area .top-area .read-more {
		display: none;
	}
	
	.works-area .bottom-area {
		padding: 20px 0 90px;
	}
	
	.works-area .bottom-area .works-list {
		gap: 15px 10px;
		margin: 0;
	}
	
	.works-area .bottom-area .works-item {
		width: calc( ( 100% - 10px ) / 2 );
	}
	
	.works-area .bottom-area .works-item:nth-child(n + 7) {
		display: none;
	}
	
	.works-area .bottom-area .works-item .txt-box {
		margin: 15px 0 0;
	}
	
	.works-area .bottom-area .works-item .img-wrap::before,
	.works-area .bottom-area .works-item a .detail-txt{
		display: none;
	}
	
	.works-area .bottom-area .works-item .ttl {
		line-height: 1.4;
	}
	
	.works-area .bottom-area .works-item .plan {
		margin: 5px 0 0;
	}
	
	.works-area .bottom-area .btn-more.blue {
		margin: 40px 0 0;
	}
	
	.works-area .bottom-area .btn-more.blue a {
		border: 1px solid var(--blue);
		background: #fff;
		color: #333;
	}
	
	.works-area .bottom-area .btn-more.blue a::after {
		color: var(--blue);
	}
	
	.works-area .bottom-area .marquee {
		bottom: 30px;
		font-size: 9.0rem;
	}
	
}

/* -----------------------------
	interview-area
-------------------------------- */
.interview-area {
	margin: 0 0 100px;
	position: relative;
}
.interview-area::before{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 94%;
	min-width: 1520px;
	height: 100%;
	border-radius: 30px;
	background: url("../img/bg-interview.png") center/cover, no-repeat #0049A1;
	background-blend-mode: multiply;
	z-index: -1;
}

.interview-area::after {
	content: "";
	display: inline-block;
	position: absolute;
	top: -12px;
	right: 7%;
	background: url("../img/deco-dot.svg") center/cover, no-repeat;
	width: 105px;
	height: 45px;
}

.interview-area .inner {
	padding: 120px 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 60px;
}

.interview-area .txt-wrap {
	color: #fff;
	width: 380px;
}

.interview-area .sec-ttl {
	font-size: 3.4rem;
	font-weight: 700;
	margin: 10px 0 0;
}

.interview-area .laurel-list {
	margin: 40px 0 0 30px;
}

.interview-area .laurel.kome {
	color: #888;
}

.interview-area .catch {
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0;
	margin: 30px 0 0;
}

.interview-area .basic-txt {
	margin: 20px 0 0;
}

.interview-area .list-wrap {
	width: calc( 100% - 440px );
}

.interview-area .list-wrap .interview-list {
	display: flex;
	gap: 30px;
	flex-wrap: wrap;
	width: 100%;
}

.interview-area .list-wrap .interview-list li {
	width: 350px;
}

.interview-area .list-wrap .interview-list li a {
	display: block;
	color: #fff;
}

.interview-area .list-wrap .interview-list li .interview-catch {
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.4;
	margin: 20px 0 0;
}

.interview-area .list-wrap .interview-list li .interview-catch .bg {
	background: #0CB6E4;
	padding: 5px;
	line-height: 1.4;
	display: inline-block;
}

.interview-area .list-wrap .interview-list li .company-name {
	color: #CCC;
	font-size: 1.3rem;
	margin: 5px 0 0;
}

@media screen and (max-width: 768px){
	.interview-area {
		margin: 0;
	}
	
	.interview-area::before {
		width: 100%;
		height: 100%;
		border-radius: 0;
	}
	
	.interview-area .inner {
		padding: 50px 0 60px;
		justify-content: center;
		gap: 0;
		flex-wrap: wrap;
	}
	
	.interview-area .txt-wrap {
		display: contents;
	}
	
	.interview-area .min-ttl {
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 0;
		order: 1;
	}
	
	.interview-area .min-ttl::before {
		left: 50%;
		transform: translateX(-50%);
		top: -16px;
	}
	
	.interview-area .sec-ttl {
		font-size: 2.4rem;
		margin: 5px 0 0;
		order: 2;
		width: 100%;
		text-align: center;
	}
	
	.interview-area .laurel-list {
		margin: 30px 0 0 0;
		justify-content: center;
		order: 3;
	}
	
	.interview-area .laurel.kome {
		order: 4;
	}
	
	.interview-area .laurel-list li .genre {
		font-size: 1.4rem;
		letter-spacing: .3rem;
	}
	
	.interview-area .laurel-list li .num {
		font-size: 3.9rem;
	}
	
	.interview-area .laurel-list li .wrap {
		font-size: 2.3rem;
	}
	
	.interview-area .laurel-list li .kome {
		font-size: .7rem;
		bottom: 25px;
		right: 5px;
	}
	
	.interview-area .laurel-list li::before {
		left: -20px;
	}
	
	.interview-area .laurel-list li::after {
		right: -20px;
	}
	
	.interview-area .catch {
		font-size: 1.8rem;
		margin: 10px 0 0;
		order: 5;
		text-align: center;
		width: 100%;
	}
	
	.interview-area .basic-txt {
		display: none;
	}
	
	
	.interview-area .list-wrap {
		width: 100%;
		order: 6;
		padding-left: 20px;
		overflow-x: scroll;
		margin: 20px 0 0;
	}
	
	.interview-area .list-wrap .interview-list {
		gap: 20px;
		flex-wrap: nowrap;
		width: fit-content;
		padding: 0 20px 20px 0;
	}
	
	.interview-area .list-wrap .interview-list li {
		width: 230px;
	}
	
	.interview-area .list-wrap .interview-list li .interview-catch {
		font-size: 1.7rem;
		line-height: 1.5;
		margin: 15px 0 0;
		font-feature-settings: "palt";
	}
	
	.interview-area .list-wrap .interview-list li .interview-catch .bg {
		padding: 2px 4px;
	}
	
	.interview-area .btn-more {
		order: 7;
	}
}


/* -----------------------------
	reputation-area
-------------------------------- */
.reputation-area {
	background: url("../img/bg-reputation.png"), linear-gradient(120deg, #F5E6D4, #E8D7C3, #D6BEA4);

	background-size: contain;
	background-repeat: no-repeat;
	background-position: right;
	padding: 100px 0;
}

.reputation-area .txt-wrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	width: 820px;
}

.reputation-area .sec-ttl {
	font-size: 3.4rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 0 0 40px;
	width: 100%;
}

.reputation-area .star-wrap {
	width: 150px;
	text-align: center;
}

.reputation-area .star-wrap .rep-name {
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
}

.reputation-area .star-wrap .rep-num {
	font-size: 7.0rem;
	font-weight: 800;
	line-height: 1;
}

.reputation-area .star-wrap .rep-date {
	font-size: 1.2rem;
	line-height: 1.5;
	letter-spacing: 0;
	margin: 15px 0 0;
	display: inline-block;
}

.reputation-area .catch-wrap {
	width: 630px;
}

.reputation-area .catch-wrap .catch {
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 1.4;
}

.reputation-area .catch-wrap .basic-txt {
	margin: 20px 0 0;
}

@media screen and (max-width: 768px){
	.reputation-area {
		padding: 50px 0 60px;
		background: url("../img/bg-reputation-sp.jpg") top right/cover, no-repeat;
	}
	
	.reputation-area .txt-wrap {
		width: 100%;
	}
	
	.reputation-area .sec-ttl {
		font-size: 2.4rem;
		margin: 0 0 20px;
	}
	
	.reputation-area .star-wrap {
		width: 180px;
		display: flex;
		justify-content: center;
		align-items: center;
		align-content: center;
		flex-wrap: wrap;
		position: relative;
	}
	
	.reputation-area .star-wrap::before {
		content: "";
		display: inline-block;
		position: absolute;
		top: 9px;
		left: 0;
		background: url("../img/star-brackets.svg") center/cover, no-repeat;
		width: 17px;
		height: initial;
		aspect-ratio: 17 / 120;
	}
	
	.reputation-area .star-wrap::after {
		content: "";
		display: inline-block;
		position: absolute;
		top: 9px;
		right: 0;
		background: url("../img/star-brackets.svg") center/cover, no-repeat;
		width: 17px;
		height: initial;
		aspect-ratio: 17 / 120;
		transform: scale(-1,1);
	}
	
	.reputation-area .star-wrap .rep-name {
		font-size: 1.6rem;
	}
	
	.reputation-area .star-wrap .rep-num {
		font-size: 5.1rem;
		width: 100%;
	}
	
	.reputation-area .star-wrap .rep-wrap {
		width: 100px;
	}
	
	.reputation-area .star-wrap .rep-date {
		margin: 10px 0 0;
	}
	
	.reputation-area .catch-wrap {
		width: 100%;
		margin: 20px 0 0;
	}
	
	.reputation-area .catch-wrap .catch {
		font-size: 1.8rem;
	}
	
	.reputation-area .catch-wrap .basic-txt {
		display: none;
	}
}


/* -----------------------------
	menu-area
-------------------------------- */
.menu-area {
	background: url("../img/bg-menu-area.png") right/cover, no-repeat #F3F5F6;
	padding: 120px 0;
}

.menu-area .txt-wrap {
	display: flex;
	justify-content: space-between;
	align-content: flex-start;
	align-items: center;
}

.menu-area .catch {
	font-size: 3.6rem;
	font-weight: bold;
	line-height: 1.5;
}

.menu-area .catch .accent {
	color: #0357A7;
}

.menu-area .basic-txt {
	width: 740px;
}

.menu-area .menu-block {
	margin: 60px 0 0;
}

.menu-area .menu-ttl {
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 0 0 30px;
}

.menu-area .menu-ttl .accordion-icon {
	display: none;
}

.menu-area .menu-list {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 20px;
	width: 100%;
}

.menu-area .menu-list.column4 {
	gap: 12px;
}

.menu-area .menu-list li {
	width: calc( ( 100% - 60px ) / 3 );
}

.menu-area .menu-list li a {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	position: absolute;
	flex-wrap: wrap;
	background: #fff;
	padding: 15px 20px;
	position: relative;
	z-index: 1;
}

.menu-area .menu-list li a::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	background: var(--gunjo);
	z-index: -1;
	transition: all .6s;
}

.menu-area .menu-list li a::after {
	content: "\f061";
	display: inline-block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 20px;
	color: var(--blue);
	font-size: 1.8rem;
	transition: all .6s;
}

.menu-area .menu-list .icon-wrap {
	width: 50px;
	height: 50px;
	background: url("../img/icon-bg.png") center/cover, no-repeat;
	display: flex;
	justify-content: center;
	align-items: center;
}

.menu-area .menu-list .icon-wrap img {
	width: 29px;
	height: 29px;
	aspect-ratio: 1 / 1;
	transition: all 1.2s;
}

.menu-area .menu-list .menu-name {
	width: calc( 100% - 50px );
	padding: 0 0 0 20px;
	display: inline-block;
}

/*4カラム*/
.menu-area .menu-list.column4 li {
	width: calc( ( 100% - 36px ) / 4 );
}

.menu-area .menu-list.column4 li a {
	padding: 20px 30px 30px;
	transform: translateY(0);
}

.menu-area .menu-list.column4 li a::before {
	background: linear-gradient(90deg, #ebeaf7, #eaecf9, #e9eefb, #e9f0fc, #e8f2fd, #e8f4fe, #e8f6ff, #e8f8ff);
}

.menu-area .menu-list.column4 li a::after {
	font-size: 1.2rem;
	width: 24px;
	height: 24px;
	border: 1px solid var(--navy);
	border-radius: 12px;
	display: flex;
	justify-content: center;
	align-items: center;
	top: initial;
	left: initial;
	right: 10px;
	bottom: 10px;
	transform: none;
}

@media (hover: hover) and (pointer: fine) {
	.menu-area .menu-list li a:hover {
		color: #fff;
		box-shadow: 0 6px 15px rgba(100,100,100,.1);
	}

	.menu-area .menu-list li a:hover::before {
		width: 100%;
	}

	.menu-area .menu-list li a:hover::after {
		right: 10px;
		color: #fff;
	}
	
	.menu-area .menu-list li a:hover .icon-wrap img {
		transform: rotateY(360deg);
	}
	
	/*4カラム*/
	.menu-area .menu-list.column4 li a:hover {
		transform: translateY(-10px);
		color: #333;
	}

	.menu-area .menu-list.column4 li a:hover::after {
		color: var(--blue);
	}
}

.menu-area .menu-list.column4 .icon-wrap {
	width: 100px;
	height: 100px;
	aspect-ratio: 1 / 1;
	margin-left: -20px;
	background: none;
}

.menu-area .menu-list.column4 .icon-wrap img {
	width: initial;
	height: initial;
}

.menu-area .menu-list.column4 .menu-name {
	color: var(--navy);
	font-weight: bold;
	font-size: 2.0rem;
	line-height: 1.5;
	margin: 20px 0 0;
	transition: all .6s;
	padding: 0;
	width: 100%;
}

.menu-area .menu-list.column4 .menu-txt {
	font-size: 1.4rem;
	margin: 10px 0 0;
}

@media screen and (max-width: 768px){
	.menu-area {
		background: transparent;
		padding: 60px 0 40px;
		position: relative;
	}
	
	.menu-area::before {
		content: "";
		display: inline-block;
		position: absolute;
		top: 30px;
		right: 0;
		width: 45%;
		height: calc( 100% - 30px );
		background: url("../img/bg-menu-area-sp.png") center/cover, no-repeat;
		z-index: -1;
	}
	
	.menu-area .txt-wrap {
		flex-wrap: wrap;
	}
	
	.menu-area .catch {
		font-size: 2.2rem;
		margin: 0 0 10px;
	}
	
	.menu-area .basic-txt {
		display: none;
	}
	
	.menu-area .menu-block {
		margin: 10px 0 0;
	}
	
	.menu-area .menu-ttl {
		font-size: 1.8rem;
		margin: 0;
		padding: 20px;
		border: 1px solid #ccc;
		position: relative;
		background: #fff;
	}
	
	.menu-area .menu-ttl .accordion-icon {
		display: inline-block;
	}
	
	.menu-area .menu-list {
		padding: 15px;
		background: #eee;
		display: none;
	}
	
	.menu-area .menu-list li {
		width: 100%;
	}
	
	.menu-area .menu-list li a {
		padding: 12px 12px;
		/*box-shadow: 0 3px 10px rgba(0,0,0,.1);*/
	}
	
	.menu-area .menu-list li a::after {
		right: 12px;
		font-size: 1.5rem;
	}
	
	.menu-area .menu-list .menu-name {
		width: calc( 100% - 50px );
		padding: 0 15px 0 10px;
		display: inline-block;
		font-feature-settings: "palt";
		line-height: 1.5;
	}
	
	.menu-area .menu-list.column4 .menu-name {
		font-size: 1.8rem;
		margin: 0;
		width: calc( 100% - 80px );
	}
	
	.menu-area .menu-list.column4 li a {
		padding: 0 20px 40px;
	}
	
	.menu-area .menu-list.column4 li {
		width: 100%;
	}
	
	.menu-area .menu-list li + li {
		margin: 15px 0 0;
	}
	
	.menu-area .menu-list.column4 .menu-txt {
		margin: 0;
	}
}

/* -----------------------------
	flow-area
-------------------------------- */
.flow-area {
	padding: 120px 0;
}

.flow-area .txt-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.flow-area .min-ttl {
	width: 100%;
}

.flow-area .sec-ttl {
	font-size: 3.4rem;
	font-weight: bold;
	line-height: 1.5;
}

.flow-area .catch-wrap {
	width: 720px;
}

.flow-area .catch {
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 0 0 10px;
}

.flow-area .flow-list {
	margin: 60px 0 0;
	display: flex;
	justify-content: space-between;
	gap: 45px;
}

.flow-area .flow-list li {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	/*align-items: center;*/
	gap: 30px;
	width: calc( ( 100% -  135px ) / 4 );
	border: 1px solid #333;
	border-radius: 30px;
	padding: 40px 25px;
	position: relative;
}

.flow-area .flow-list li::before {
	content: "";
	display: inline-block;
	width: 2px;
	height: 40px;
	background: #fff;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: -1px;
}

.flow-area .flow-list li::after {
	content: "";
	display: inline-block;
	width: 2px;
	height: 20px;
	background: #fff;
	position: absolute;
	top: 50%;
	right: -1px;
}

.flow-area .flow-list .step {
	font-size: 1.0rem;
	color: var(--blue);
	line-height: 1;
	text-align: center;
	font-weight: bold;
}

.flow-area .flow-list .step .num {
	font-size: 1.8rem;
}

.flow-area .flow-list .step-name {
	flex-glow: 1;
	color: var(--navy);
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
	width: 100%;
	letter-spacing: .1rem;
	font-feature-settings: "palt";
}

.flow-area .flow-list li .line {
	display: inline-block;
	position: absolute;
	right: -46px;
	top: 50%;
	transform: translateY(-50%);
	width: 46px;
	height: 1px;
	background: #333;
}

.flow-area .flow-list li:last-child .line {
	display: none;
}

.flow-area .btn-more {
	margin: 60px 0 0;
	text-align: center;
}

@media screen and (max-width: 768px){
	.flow-area {
		padding: 30px 0 40px;
	}
	
	.flow-area .sec-ttl {
		font-size: 2.4rem;
	}
	
	.flow-area .catch-wrap {
		width: 100%;
		margin: 20px 0 0;
	}
	
	.flow-area .catch {
		font-size: 1.8rem;
		margin: 0;
	}
	
	.flow-area .basic-txt {
		display: none;
	}
	
	.flow-area .flow-list {
		margin: 40px 0 0;
		gap: 35px;
		flex-wrap: wrap;
	}
	
	.flow-area .flow-list li {
		gap: 10px;
		width: 100%;
		border-radius: 25px;
		padding: 0 20px 20px;
	}
	
	.flow-area .flow-list li::before {
		width: 50px;
		height: 2px;
		top: -1px;
		transform: translateX(-50%);
		left: 50%;
	}
	
	.flow-area .flow-list li::after {
		width: 25px;
		height: 2px;
		bottom: -1px;
		left: calc( 50% - 25px );
		top: initial;
	}
	
	.flow-area .flow-list li .line {
		right: initial;
		top: initial;
		bottom: -15px;
		transform: none;
		left: 50%;
		width: 1px;
		height: 15px;
	}
	
	.flow-area .flow-list li:last-child .line {
		display: inline-block;
	}
	
	.flow-area .flow-list .step {
		font-size: 1.0rem;
		color: var(--blue);
		line-height: 1;
		text-align: center;
		font-weight: bold;
		margin-top: -12px;
		position: relative;
		z-index: 1;
	}
	
	.flow-area .flow-list .step-txt {
		display: none;
	}
}

/* -----------------------------
	recruit-area
-------------------------------- */
.recruit-area {
	position: relative;
	padding: 0 0 100px;
}

.recruit-area::before {
	content: "";
	display: block;
	position: absolute;
	top: 110px;
	right: 0;
	background: url("../img/bg-recruit.png") center/cover, no-repeat;
	aspect-ratio: 1180 / 1302;
	width: 68%;
	height: initial;
	z-index: -2;
}

.recruit-area::after {
	content: "";
	display: block;
	position: absolute;
	top: 800px;
	right: 3%;
	z-index: -1;
	background: url("../img/bg-neoindex.png") center/cover, no-repeat;
	width: 796px;
	height: initial;
	aspect-ratio: 796 / 249;
}

.recruit-area .scene-slider .slick-track {
	display: flex;
	align-items: center;
}

.recruit-area .scene-slider li {
	width: initial!important;
}

.recruit-area .scene-slider li img {
	border-radius: 10px;
}

.recruit-area .scene-slider li + li {
	margin-left: 40px;
}

.recruit-area .txt-wrap {
	padding: 100px 0 120px;
}

.recruit-area .catch {
	font-size: 4.4rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 15px 0 0;
}

.recruit-area .basic-txt {
	margin: 15px 0 0;
}

.recruit-area .btn-more {
	margin: 40px 0 0;
}

.recruit-area .img-wrap {
	border-radius: 10px;
	overflow: hidden;
}


@media screen and (max-width: 768px){
	.recruit-area {
		padding: 0;
	}

	.recruit-area::before {
		top: initial;
		right: 0;
		bottom: 48vw;
		background: url("../img/bg-recruit-sp.png") center/cover, no-repeat;
		aspect-ratio: 750 / 934;
		width: 100%;
	}
	
	.recruit-area .scene-slider li + li {
		margin-left: 15px;
	}
	
	.recruit-area .txt-wrap {
		padding: 40px 20px 60px;
		text-align: center;
	}
	
	.recruit-area .min-ttl {
		padding: 0 0 0 20px;
	}
	
	.recruit-area .min-ttl::before {
		position: relative;
		left: initial;;
		top: initial;
	}
	
	.recruit-area .catch {
		font-size: 2.6rem;
		margin: 10px 0 0;
		font-feature-settings: "palt";
	}
	
	.recruit-area .basic-txt {
		display: none;
	}
	
	.recruit-area .img-wrap {
		border-radius: 0;
		height: 48vw;
	}
}

/* -----------------------------
	blog-area
-------------------------------- */
.blog-area {
	padding: 0 0 100px;
}

.blog-area .inner {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 50px;
}

.blog-area .txt-wrap {
	width: calc( 100% - 950px );
}

.blog-area .sec-ttl {
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.5;
}

.blog-area .catch {
	font-size: 2.0rem;
	line-height: 1.7;
	letter-spacing: 0;
	margin: 20px 0 0;
}

.blog-area .more-txt {
	font-size: 1.5rem;
	margin: 40px 0 0;
	display: inline-block;
}

.blog-area .more-txt i {
	color: var(--blue);
	display: inline-block;
	margin-right: 6px;
	font-size: 1.3rem;
}

.blog-area .blog-list {
	width: 910px;
	display: flex;
	justify-content: flex-start;
	gap: 50px;
}

.blog-area .blog-list li {
	width: calc( (100% - 100px ) / 3 );
}
.blog-area .blog-list li:nth-child(n+4) {
	display: none;
}

.blog-area .blog-list li a {
	display: block;
	position: relative;
	transform: translateY(0);
	transition: all .4s;
}

.blog-area .blog-list li .img-wrap {
	width: 100%;
	height: 180px;
}

.blog-area .blog-list li .txt-box {
	padding: 15px 0 0;
}

.blog-area .blog-list li .blog-ttl {
	margin: 10px 0 0;
}

@media (hover: hover) and (pointer: fine) {
	.blog-area .blog-list li a:hover {
		transform: translateY(-10px);
		opacity: .6;
	}
	
	.blog-area .more-txt:hover {
		opacity: .6;
	}
}


@media screen and (max-width: 768px){
	.blog-area {
		padding: 40px 0 60px;
	}
	
	.blog-area .sec-ttl {
		font-size: 2.4rem;
	}
	
	.blog-area .inner {
		flex-wrap: wrap;
		gap: 20px;
	}
	
	.blog-area .txt-wrap {
		width: 100%;
	}
	
	/*.blog-area .more-txt {
		display: none;
	}*/
	
	.blog-area .more-txt {
		margin: 0 0 0 auto;
		text-align: right;
	}

	.blog-area .more-txt i {
	}
	
	
	.blog-area .blog-list {
		width: 100%;
		flex-wrap: wrap;
		gap: 0;
	}
	
	.blog-area .blog-list li {
		width: 100%;
	}
	
	.blog-area .blog-list li a {
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
		padding: 10px 0;
		border-bottom: 1px solid #ddd;
		position: relative;
	}
	
	.blog-area .blog-list li a::after {
		content: "\f105";
		display: inline-block;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 0px;
		color: var(--blue);
	}
	
	.blog-area .blog-list li .img-wrap {
		width: 24vw;
		height: 20vw;
	}
	
	.blog-area .blog-list li .txt-box {
		padding: 0 20px;
		width: calc( 100% - 24vw);
	}
	
	.blog-area .blog-list li .blog-ttl {
		margin: 0;
	}
	
	.blog-area .blog-list li .blog-date {
		font-size: 1.4rem;
	}
}


/* -----------------------------
	area
-------------------------------- */

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

}