body.home main {padding-top: 0;}
body.home section {
	padding: 10rem 0 8rem;
}
h2 {
	font-size: 3.8rem;
	line-height: 1;
	margin-bottom: 2rem;
	letter-spacing: 1px;
	text-align: center;
}
h3  {
	font-size: 2.8rem;
	line-height: 1;
	letter-spacing: 1px;
}
.home p {text-align: center;}
.home .btn_base2 {margin-top:1rem;}

.box3 {
	padding: 0.5em 1em;
	margin: 2em 0;
	color: #2c2c2f;
	background: #e9e9e9;/*背景色*/
}
.box3 p {
	margin: 0; 
	padding: 0;
}

/***   FV   ***/
#top_FV {
	--slider-height: 440px;
	height:  var(--slider-height);
	min-height:var(--slider-height);
	margin-bottom: 140px;
	margin-top: 2rem;
}
#top_FV .slick-slide{
	margin: 0 10px;
}
#top_FV .slider_box a:hover img {
	opacity: 0.82;
}
#top_FV .slick-prev {left: 148px;}
#top_FV .slick-next {right: 148px;}

#top_FV_2 {
	margin-top:8rem;
}
/***   END FV   ***/
/*   v2   */
body.home .v2 .top_fv_lead {
	padding-top: 4.5rem;
	padding-bottom: 13rem;
	border-bottom: var(--border-1);
}
.v2 .top_fv_lead .container .flex_base {
	justify-content: flex-start;
}
.v2 .top_fv_lead_box2 ul li {
	font-weight: 700;
	font-size: 18px;
}
body.home .v2 .fv_lead_text_box p {
	text-align: left;
	margin-bottom: 22px;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.03em;
	line-height: 2em;
}


body.home .v2 .fv_lead_img_box:nth-of->div:nth-of-type(1) img,
body.home .v3 .fv_lead_img_box:nth-of->div:nth-of-type(1) img{
	max-width: 588px;
}

body.home .v2 .fv_lead_img_box,
body.home .v3 .fv_lead_img_box{
	position: relative;
	opacity: 0;
}
body.home .v2 .fv_lead_img_box::after,
body.home .v3 .fv_lead_img_box::after {
	content: "";
	position:absolute;
	left: 362px;
	top: -494px;
	width: 62rem;
	height: auto;
	aspect-ratio: 605/664;
	background-image: url(../img/top/lead_pen.png);
	background-repeat: no-repeat;
	background-size: contain;
}
body.home .v2 .fv_lead_img_box.slick-initialized,
body.home .v3 .fv_lead_img_box.slick-initialized {
	opacity: 1;
}

.top_fv_lead_box2 h2 {
	margin-top: 6rem;
	margin-bottom: 3.2rem;
	text-align: left;
}

/*   END v2   */
/*   v3   */
.top_fv_lead .container .top_fv_lead_block {
	display: grid;
	grid-template-columns: 1fr auto;
	grid-template-rows: auto 1fr;
	column-gap: 3.8rem;
}

body.home .v3 .top_fv_tit {
	grid-column: 1 / 2;
	text-align: left;
	margin: 0 0 2rem;
	color: #000;
	font-size: 3.5rem;
	font-weight: 900;
	line-height: 1.6;
}
body.home .v3 .top_fv_tit_strong {
	position: relative;
	top: -0.07em;
	font-size: 1.2em;
	line-height: 1.1;
	padding: 0 0.02em;
	margin: 0 0.04em 0 0;
	vertical-align: text-bottom;
	--color: rgba(253, 208, 0, 1);
	position: relative;
	display: inline;
	background: linear-gradient( transparent 0%, transparent 59.6%, var(--color) 59.6%,var(--color) 92%,transparent 0%);
}
body.home .v3 .top_fv_text {
	grid-column: 1 / 2;
	text-align: left;
	font-weight: 700;
	line-height: 2.5;
}

body.home .v3 .fv_lead_img_box {
	grid-column: 2 / 3;
	grid-row: 1 / 3;
	max-width: 39.6rem;
	position: relative;
	opacity: 0;
	margin: 0;
}
body.home .v3 .fv_lead_img_box::after {
	left: 25rem;
	top: -14rem;
	width: 23.2rem;
}
body.home .v3 .top_fv_slider {
	--item_width: 54rem;
	margin: 7.3rem auto 4rem;
}
body.home .v3 .top_fv_slider .slick-slide {
	width: var(--item_width);
	margin: 0 2.55rem;
}

body.home .v3 .top_fv_slider .slick-arrow {
	--position: calc(50% - var(--item_width) / 2);
	--position_adjust: -119%;
}
body.home .v3 .top_fv_slider .slick-prev {
	left: var(--position);
}
body.home .v3 .top_fv_slider .slick-next {
	--position_adjust: 119%;
	right: var(--position);
}
body.home .v3 .top_fv_slider .slick-prev::before,
body.home .v3 .top_fv_slider .slick-next::before {
	width: 3.87rem;
	height: auto;
	aspect-ratio: 24/8;
	transform: translatex(var(--position_adjust));
	background-image: url(../img/common/left_arrow02_black.svg);
}
body.home .v3 .top_fv_slider .slick-next::before {
	transform: translatex(var(--position_adjust)) rotatey(180deg);
}


/*   END v3   */



/***   top_bnr   ***/
body.home #top_bnr {
	padding-top: 7rem;
	padding-bottom: 0;
	max-width: 700px;
	width: 90%;
	margin-left:auto;
	margin-right:auto;
	text-align:center;
}

/***   END top_bnr   ***/
/***   reason   ***/
body.home #top_for_reason {padding-top: 0;padding-bottom:11rem;}
body.home .top_for_reason_box p:first-of-type {
	margin-bottom: 2.7rem;
	line-height:1;
}
body.home .top_for_reason_box h1{
	line-height: 4.4rem;
	font-size: 2.8rem;
	margin-bottom: 2.6rem;
}
body.home .top_for_reason_box p:last-of-type{
	width: 100%;
	max-width: 700px;
	margin: auto;
	line-height: 4rem;
	letter-spacing: 0.6px;
	text-align:left;
	margin-bottom: 4rem;
}
/***   END reason   ***/

/***   service archive  ***/
body.home .contents_box {
	margin-top: 6rem;
}
body.home .contents_box h3 {
	margin-bottom: 4rem;
}

body.home #top_archive {
	border-bottom: var(--border-1);
}
body.home #top_archive .archive_box {
	margin-bottom: 0.5rem;
}
body.home #top_archive .archive_box figure{
	position: relative;
	width: 255px;
	margin-bottom: 2.1rem;
	margin-right: 2rem;
}

body.home #top_archive .archive_box figure span.img_additional_price {
	position: relative;
	display: inline-block;
	width: 100%;
	height: 100%;
}
body.home #top_archive .archive_box figure span.price_label {
	position: absolute;
	bottom: 5px;
	right:5px;
	padding: 6px 10px;
	font-size: 1.4rem;
	font-family: 'Rubik', sans-serif;
	letter-spacing: 0;
	font-weight: 400;
	color: var(--color-main-2);
	background-color: var(--color-main-1);
	border-radius: 3px;
	line-height: 1;
}
body.home #top_archive .archive_box.has_large_l>div {
	flex-direction: row;
	flex-wrap:wrap;
}
body.home #top_archive .archive_box.has_large_l>div.large_archive figure {
	width: 100%;
	max-width: 750px;
}
body.home #top_archive .archive_box.has_large_l>div.large_archive figure img {
	width: 100%;
}

body.home #top_archive .archive_box .archive_text .name {
	text-align: left;
	font-size: 2.6rem;
	margin-bottom: 1.8rem;
	line-height:1.5;
}
body.home #top_archive .archive_box .archive_text .tit {
	text-align: left;
	font-size: 3.2rem;
	margin-bottom:2.6rem;
}
body.home #top_archive .archive_box .archive_text .text {
	text-align: left;
	font-size: 2.2rem;
	line-height: 1.4;
}

/***   END service archive  ***/

/***   production  ***/
#top_production_example {
	--slider-height: 340px;
}
#top_production_example .main_heading_box_1 {margin-bottom:5.2rem;}
#top_production_example .slick-slide {
	margin: 0 10px;
}
#top_production_example .slick-prev {left:6.25%; }
#top_production_example .slick-next {right:6.25%; }
#top_production_example .slider {
	margin-bottom: 4rem;
}

#top_production_example .works_archive_box {
	position:relative;
	aspect-ratio: 1.5;
}

#top_production_example .works_archive_box .thumbnail_box {
	width: 100%;
	height:100%;
	position:relative;
}
#top_production_example .works_archive_box .thumbnail_box::after {
	content:"";
	position:absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	background-color: #0A0C14;
	opacity:0;
	transition: opacity 0.34s ;
}
#top_production_example .works_archive_box:hover .thumbnail_box::after {
	opacity: 0.7;
}
#top_production_example .works_archive_box .thumbnail_box.thumbnail_none {
	background-color: var(--color-sub-5);
	opacity: 0.7;
}
#top_production_example .works_archive_box .works_detail{
	position:absolute;
	top:0;
	left: 0;
	width:100%;
	height: 100%;
	color: white;
	font-family: Hiragino Kaku Gothic Pro sans-serif;
	font-size: 1.6rem;
	font-style: normal;
	font-weight: 700;
	line-height: 16px;
	letter-spacing: 0em;
	text-align: center;
	display: flex;
	align-items:center;
	justify-content: center;
	flex-direction: column;
	opacity:0;
	transition: opacity 0.37s;
	transition-delay: 0.06s;
}
#top_production_example .works_archive_box:hover .works_detail {
	opacity: 1;
}
#top_production_example .works_archive_box a:hover {
	opacity: 1;
}
#top_production_example .works_archive_box .works_detail h2 {
	font-size: 1.6rem;
	margin:1.4rem auto;
	position:relative;
	line-height: 1.4;
}
#top_production_example .works_archive_box .works_detail h2:last-of-type {
	margin-bottom: 1.8rem;
}
#top_production_example .works_archive_box .works_detail h2:first-of-type::after {
	content:"";
	position:absolute;
	bottom: -1.4rem;
	left: 50%;
	-webkit-transform:translatex(-50%);
	transform:translatex(-50%);
	width:190px;
	height:0;
	border-top: var(--border-1);
}
#top_production_example .works_archive_box .works_detail .works_more_btn {
	font-family: 'Barlow', sans-serif;
	position:relative;
	font-size:16px;
	text-align: left;
	padding: 6px 10px 8px;
	width: 120px;
	height: 30px;
	box-sizing: border-box;
	background-color: var(--color-main-3);	
}
#top_production_example .works_archive_box .works_detail .works_more_btn::after {
	content: "";
	position:absolute;
	top: 50%;
	right: 10px;
	-webkit-transform: translatey(-50%);
	transform: translatey(-50%);
	width: 42px;
	height: 6px;
	background-image:url("../img/works/works_more_arrow.svg");
	background-size: contain;
	background-repeat: no-repeat;
}

#top_production_example .btn_base_1{
	margin-bottom: 9rem;
}
#top_production_example .company_list {
	flex-wrap:wrap;
	justify-content: center;
	max-width: 1100px;
	margin-bottom: 1.9rem;
}
#top_production_example .company_logo {
	margin-right: 22px;
	margin-bottom: 16px;
	width: 184px;
}
#top_production_example .company_logo:nth-of-type(5n) {
	margin-right: 0;
}
/***   END production  ***/

/***   voice blog  ***/
body.home section .outer_container.flex_base {
	align-items: center;
	justify-content: flex-start;
}
body.home section .outer_container .main_heading_box_1{
	text-align: left;
	margin-bottom: 0;
	padding-left: 100px;
	padding-right: 110px;
}
body.home section .outer_container > div.contents_img img {
	width: 100%;
	height: 340px;
	-o-object-fit: cover;
	object-fit: cover;
}
body.home section .outer_container p {text-align: left;}
body.home #top_clients_voice {
	padding: 0;
	border-top: var(--border-1);
	border-bottom: var(--border-1);
}
body.home #top_clients_voice .outer_container.flex_base {
	flex-direction: row-reverse;
	margin-right: 0;
	margin-left: auto;
}
body.home .outer_container.flex_base .btn_base_2 {
	text-align: left;
	margin-top: 3.5rem;
}

body.home #top_blog_news {
	padding-top: 0;
	border-top: var(--border-1);
	border-bottom: var(--border-1);
}
body.home #top_blog_news>div:first-of-type {
	margin-left:0;
	margin-right:auto;
}
body.home #top_blog_news .archive_box figure{
	width:330px;
	margin-bottom: 2.1rem;
	margin-right: 4.5rem;
}
body.home p.archive_date {
	text-align: left;
	margin-top: 1rem;
}

/***   END voice blog  ***/

/***   slider  slick  ***/
.slider{
	width:100%;
	height: var(--slider-height);
	max-height: var(--slider-height);
	min-height:1px;
}
.slick-slide{
	height: var(--slider-height);
	max-height: var(--slider-height);
	min-height:1px;
}
.slider_box {
	height: var(--slider-height);
	max-height: var(--slider-height);
	min-height:1px;
}


@media print, screen and (max-width : 768px) {
	body.home section {
		padding: 9rem 0;
	}
	body.home h2 {
		font-size: 3.2rem;
		margin-bottom: 1.6rem;
	}
	body.home .main_heading_box_1 {
		margin-bottom: 7.5rem;
	}
	body.home .contents_box h3 {
		font-size: 2.4rem;
		margin-bottom: 3rem;
	}

	.slick-slide img {
		height:auto;
	}

	#top_FV {
		--slider-height:auto;
		min-height: 1px;
		margin-bottom: 9rem;
	}
	#top_FV .slick-slide{
		margin: 0 20px;
	}
	#top_FV .slick-prev {
		left: 8px;
	}
	#top_FV .slick-next {
		right: 8px;
	}

	#top_FV .slider_box {
		height: auto;
		max-height: 100vh;
	}

	#top_FV_2 {
		margin-top:6rem;
	}
	/*   v2   */
	body.home .top_fv_lead {
		padding-bottom: 8rem;
	}
	.top_fv_lead .container .flex_base {
		align-items:flex-end;
		flex-direction: column-reverse;
	}
	.top_fv_lead_box2 h2 {
		margin-top: 4rem;
	}
	body.home .v2 .fv_lead_img_box {
		margin-top: 3rem;
		margin-bottom:2rem;
	}
	body.home .v2 .fv_lead_img_box::after {
		width: 78vw;
		height:auto;
		aspect-ratio: 605/664;
		top: -54%;
		left: 62%;
	}

	.top_fv_lead .container .top_fv_lead_block {

	}

	/*   v3   */
	body.home .top_fv_lead.v3 {
		position: relative;
		left: 0.5vw;
		padding-top: 3.7rem;
		padding-bottom: 5rem;
	}
	.top_fv_lead .container .top_fv_lead_block {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	body.home .v3 .fv_lead_img_box {
		grid-column: 1 / 2;
	}

	.top_fv_lead .container .top_fv_lead_block {
		column-gap: 3.8rem;
	}

	body.home .v3 .top_fv_tit {
		position:relative;
		left: 0.1em;
		order: 1;
		text-align: center;
		font-size: 1.6rem;
		font-size: min(2.5rem,4.7vw);
		padding-bottom: 0.5em;
		white-space: nowrap;
		z-index: 10;
	}
	body.home .v3 .top_fv_tit_strong {
		top: 0em;
		background: linear-gradient( transparent 0%, transparent 66.6%, var(--color) 66.6%,var(--color) 93.7%,transparent 0%);
		font-size: 1.3em;
		line-height: 1.25;
	}
	body.home .v3 .top_fv_tit::before {
		content: "";
		position: absolute;
		top: 0;
		left: 50%;
		transform: translatex(-50%);
		width: 100vw;
		height: 100%;
		background: var(--color-body-bg);
		z-index: -1;
	}
	body.home .v3 .top_fv_text {
		order: 3;
		font-size: 1.6rem;
	}

	body.home .v3 .fv_lead_img_box {
		order: 2;
		margin-top: 4.4rem;
		margin-bottom: 1.1rem;
	}
	body.home .v3 .fv_lead_img_box::after {
		left: 62.8%;
		top: -30.4%;
		width: 59%;
	}


	body.home .v3 .top_fv_slider {
		--item_width: 100rem;
		margin: 4.4rem auto 1rem;
	}
	body.home .v3 .top_fv_slider .slick-slide {
		margin: 0 1.6rem;
	}

	body.home .v3 .top_fv_slider .slick-arrow {
		--position: 5.9%;
		--position_adjust: 0;
	}
	body.home .v3 .top_fv_slider .slick-prev {
		left: var(--position);
	}
	body.home .v3 .top_fv_slider .slick-next {
		--position_adjust: 0;
		right: var(--position);
	}
	body.home .v3 .top_fv_slider .slick-prev::before,
	body.home .v3 .top_fv_slider .slick-next::before {
		width: 2.5rem;
	}



	/***   lead END   ***/
	body.home .top_for_reason_box h1{
		line-height: 2.8rem;
		font-size: 1.8rem;;
		margin-bottom: 2.5rem;
	}
	body.home .top_for_reason_box p:last-of-type {
		line-height: 2;
	}

	body.home #top_archive .archive_box {
		justify-content:space-between;
	}
	body.home #top_archive .archive_box figure{
		width: calc((100% - 12px)/2);
		max-width: -webkit-fit-content;
		max-width: -moz-fit-content;
		max-width: fit-content;
		margin-right: 0;
		margin-bottom: 2.4rem;
		text-align: left;
	}
	body.home #top_archive .archive_box figure:nth-of-type(2n) {
		margin-right:0;
	}

	body.home #top_archive .archive_box .archive_text .name {
		font-size: 2.2rem;
		margin-bottom: 1.2rem;
	}
	body.home #top_archive .archive_box .archive_text .tit {
		font-size: 2.8rem;
		margin-bottom:1.8rem;
	}
	body.home #top_archive .archive_box .archive_text .text {
		font-size: clamp(12px,4vw,20px);
	}



	#top_production_example {
		--slider-height: calc(80vw * 2/3);
	}
	#top_production_example .btn_base_1 {margin-bottom: 4.5rem;}
	#top_production_example .slick-prev {left:1%; }
	#top_production_example .slick-next {right:1%; }
	#top_production_example .company_list {
		flex-direction: row;
		justify-content: flex-start;
		margin-bottom: 1.5rem;
	}
	#top_production_example .company_logo {
		margin: 0;
		width: 33.3%;
	}

	body.home section .outer_container {
		padding-left:3.8rem;
		padding-right: 3.8rem;
		width: 100%;
		margin:auto;
		box-sizing: border-box;
	}
	body.home section .outer_container p{text-align: center}
	body.home section .outer_container .main_heading_box_1{
		text-align:center;
		padding: 0;
	}
	body.home .outer_container.flex_base .btn_base_2{
		text-align: right;
	}
	body.home section .outer_container > div.contents_img img {
		margin-bottom: 3.5rem;
		width:100%;
		max-height: 53vw;
	}
	body.home #top_clients_voice {
		border: none;
	}
	body.home #top_clients_voice .outer_container.flex_base {
		flex-direction: column;
	}
	body.home #top_blog_news {
		padding-top: 5rem;;
	}
	body.home #top_blog_news .contents_box .btn_base_2 {
		margin-top: 1rem;
	}
	body.home #top_blog_news .archive_box {
		margin-bottom: 0;
	}
	body.home #top_blog_news .archive_box figure {
		margin-right:12px;
		width: calc((100% - 12px)/2);
	}
	body.home #top_blog_news .archive_box figure:nth-of-type(2n) {
		margin-right: 0px;
	}

	body .slick-prev::before, body .slick-next:before {
		width: 38px;
		height: 24px;
	}
}

@media print, screen and (min-width : 768px){
	/***   lead   ***/
	body.home .top_fv_lead {
		padding-top: 6.5rem;
		padding-bottom: 4.7rem;
	}
	.top_fv_lead .container .flex_base {
		justify-content: flex-start;
		width: 1130px;
	}
	body.home .fv_lead_text_box p {
		text-align: left;
		margin-bottom: 22px;
		font-weight: 700;
		font-size: 18px;
		letter-spacing: 0.03em;
		width: -webkit-max-content;
		width: -moz-max-content;
		width: max-content;
	}
	body.home .fv_lead_img_box {
		max-width: 600px;
		margin-top: -3rem;
		width: auto;
	}

	/***   END lead   ***/

	body.home #top_archive .archive_box.has_large_l {
		justify-content: space-between;
	}
	body.home #top_archive .archive_box.has_large_l>div {
		width:46%;
		flex-wrap:wrap;
		justify-content: space-between;
	}
	body.home #top_archive .archive_box.has_large_l>div.large_archive {
		width: 52%;
	}
	body.home #top_archive .archive_box.has_large_l>div figure {
		width: 46%;
		margin-bottom: 2.37rem;
	}


	body.home #top_archive .archive_box.has_large_l>div figure:nth-of-type(2n) {
		margin-right: 0;
	}
	body.home #top_archive .archive_box.has_large_l>div.large_archive span.price_label {
		font-size: 2.0rem;
	}


	body.home #top_archive .archive_box figcaption {
		font-size: 1.8rem;
	}
	body.home #top_archive .archive_box figure:nth-of-type(4n) {
		margin-right: 0;
	}
	body.home #top_blog_news .archive_box figure:nth-of-type(3n) {
		margin-right:0;
	}
	body.home #top_blog_news .archive_box figure img {
		width: 330px;
		height: 220px;
	}
	body.home #top_clients_voice h2{text-align:left}
	body.home #top_blog_news  h2{text-align:left}
	body.home #top_blog_news .contents_img,body.home #top_clients_voice .contents_img {
		width: 510px;
		height:340px;
	}

	#top_production_example .company_logo img {
		width: 100%;
	}


	.slider{
		min-height: var(--slider-height);
	}
	.slick-slide{
		min-height: var(--slider-height);
	}
	.slider_box {
		min-height: var(--slider-height);
	}
}
.example {
	display: -ms-grid;
	display: grid;
	transition: all .5s;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	background: linear-gradient(to bottom, white, black);
}