:root {
	--main: #153A4A;
	--sub: #20546B;
	--orange: #FF9913;
	--bg: #E0EEF3;
	--bg2: #F4F4F4;
	/*--yellow: #333;*/
	--gray: #697B82;
	--gray2: #CBCBCB;
}

.corporate .corp-section-ttl {
	display: flex;
	align-items: center;
	gap: 40px;
	margin: 40px auto 30px;
	padding-bottom: 20px;	
}

.corporate .corp-section-ttl > p {
	color: var(--sub);
	font: bold 3.7rem / 1 'Open Sans', sans-serif;
}

.corporate .corp-section-ttl,
.corporate .cmn-section-ttl {
	position: relative;
	border-bottom: 3px solid var(--gray2);
}

.corporate .corp-section-ttl::before, 
.corporate .cmn-section-ttl::before {
	content: "";
	width: 60px;
	height: 3px;
	background: var(--sub);
	display: block;
	position: absolute;
	bottom: -3px;
	left: 0;
}

.corporate .corp-section-txt {
	color: var(--gray);
	font-size: 2.2rem;
	font-weight: 500;
	letter-spacing: .05em;
}

.corporate .important {
	color: #DE8717;
	/*background-image: linear-gradient(to right, #FFE38E 0%, #FFE38E 50%, transparent 50%);
	background-repeat: no-repeat;
    background-size: 200% 10px;
	background-position: 0% 100%;
	mix-blend-mode: multiply;*/
}

.corporate .img {
	overflow: hidden;
	flex-shrink: 0;
}

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

@media screen and (max-width: 768px) {
	.corporate .corp-section-ttl {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
		margin: 0 auto 30px;
	}
	
	.corporate .corp-section-ttl > p {
		font-size: 3.2rem;
	}
	
	.corporate .corp-section-txt {
		font-size: 1.8rem;
		line-height: 1.3;
	}
}

/*FAQ*/
.corporate .faq-accordion-icon::before, 
.corporate .faq-accordion-icon::after {
	background: #3C85A4;
	
}

.corporate .faq-accordion .quest:hover {
	color: #3C85A4;
}

.corporate .faq-accordion .quest::before {
	background: url(../img/icon-question-cor.png) center / cover, no-repeat;
}

.corporate .faq-accordion .answer {
	
}

.corporate .faq-accordion .answer::before {
	background: url("../img/icon-answer-cor.png") center / cover, no-repeat;
}

.corporate .faq-accordion .sub_title {
	background: #EFF8FB;
	color: #20546B;
	/*background: #D0E8F4;
	color: #006899;*/
}


/*	対応エリア  */
.corporate .support-area {
	padding: 80px 0 80px;
}

.corporate .support-area .support-list {
	background-color: #f8f2ec;
	border-radius: 20px;
	padding: 20px 60px;
	display: flex;
	flex-wrap: wrap;
	margin-top: 20px;
}

.corporate .support-area .support-list li {
	font-size: 1.8rem;
	position: relative;
	padding-left: 15px;
	margin: 10px 50px 10px 0px;
}

.corporate .support-area .support-list li::before {
	content: "";
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background-color: #b4aa9d;
	display: block;
	position: absolute;
	top: 5px;
	left: 0px;
}

.corporate .support-area .area {
	margin: 40px 0 0;
	padding: 40px;
	background: var(--bg);
	border-radius: 8px;
}

.corporate .support-area .area:first-of-type {
	margin: 0;
}

.corporate .support-area .area .area-ttl {
	font-size: 2.5rem;
	font-weight: 600;
}

.corporate .support-area .area .block {
	margin: 30px 0 0;
	padding: 20px;
	background: #fff;
	border-radius: 5px;
}

.corporate .support-area .area .block .ttl {
	margin: 0 0 10px;
	padding: 0 0 10px;
	font-size: 2rem;
	font-weight: 600;
	border-bottom: solid 2px var(--sub);
}



@media screen and (max-width: 768px) {
	.corporate .support-area {
		/* padding: 50px 0 50px; */
		padding: 30px 0 50px;
	}

	.corporate .support-area .support-list {
		background-color: #f8f2ec;
		border-radius: 20px;
		padding: 20px;
		display: flex;
		flex-wrap: wrap;
		margin-top: 15px;
	}

	.corporate .support-area .support-list li {
		font-size: 1.7rem;
		position: relative;
		padding-left: 15px;
		margin: 10px 20px 10px 0px;
	}

	.corporate .support-area .support-list li::before {
		content: "";
		width: 10px;
		height: 10px;
		border-radius: 50%;
		background-color: #b4aa9d;
		display: block;
		position: absolute;
		top: 5px;
		left: 0px;
	}

	.corporate .support-area .area {
		padding: 30px 20px;
	}

	.corporate .support-area .area .block {
		margin: 20px 0 0;
	}

	.corporate .support-area .area .block:first-of-type {
		margin: 30px 0 0;
	}

	.corporate .support-area .area .area-ttl {
		font-size: 2.2rem;
	}

	.corporate .support-area .area .block .ttl {
		font-size: 1.8rem;
	}

}


/* -----------------------------------------------------------
    mv-area
-------------------------------------------------------------- */
.mv-area {
	--gap: 12px;
	--speed-l: 50s;
	--speed-r: 40s;
	position: relative;
	/*overflow: hidden;*/
}
.mv-inner {
	position: relative;
	height: min(100svh, 600px);
	/*max-width: 1600px;*/
	margin: 0 auto;
}
/* ---- 写真スライダー ---- */
.mv-slider-wrap {
	position: absolute;
	top: 0;
	right: 0;
	width: 50%;
	height: 100%;
	padding: 0 var(--gap);
}
.mv-slider {
	display: flex;
	gap: var(--gap);
	height: 100%;
	overflow: hidden;
}
.slider-left, .slider-right {
	display: flex;
	flex-direction: column;
	gap: var(--gap);
	flex: none;
	align-self: flex-start;
	will-change: transform;
}
.slider-left {
	width: calc(66% - var(--gap)/2);
	animation: mvUp var(--speed-l) linear infinite;
}
.slider-right {
	width: calc(34% - var(--gap)/2);
	animation: mvDown var(--speed-r) linear infinite;
}
.slider-left img, .slider-right img {
	display: block;
	width: 100%;
	object-fit: cover;
	background: #ccc;
}
/* デフォルト */
.slider-left img,
.slider-right img {
	aspect-ratio: 4/3;
}
.slider-left img.is-tall, .slider-right img.is-tall {
	aspect-ratio: 280/400;
}
.slider-left img.is-wide, .slider-right img.is-wide {
	aspect-ratio: 280/200;
}
.slider-left img.is-square, .slider-right img.is-square {
	aspect-ratio: 1/1;
}
@keyframes mvUp {
	from {
		transform: translateY(0);
	}
	to {
		transform: translateY(calc(-50% - var(--gap)/2));
	}
}
@keyframes mvDown {
	from {
		transform: translateY(calc(-50% - var(--gap)/2));
	}
	to {
		transform: translateY(0);
	}
}
/* ---- 左テキスト + Point ---- */
.mv-elements {
	height: 100%;
	padding: 40px 0 0 6%;
}
.mv-elements {
	width: 44%;
}
.mv-sub {
	display: inline-block;
	font-size: 2.4rem;
	font-weight: 600;
	color: var(--main);
	padding-bottom: 6px;
	border-bottom: 3px dotted var(--main);
}
.mv-ttl {
	margin-top: 30px;
	font-size: 3.0rem;
	line-height: 1.9;
	font-weight: 700;
	white-space: nowrap;
}
.mv-ttl em.mv-txt-big {
	font-weight: bold;
	color:var(--orange);
	font-size: 1.5em;
}
.mv-txt {
	margin-top: 20px;
	font-size: 17px;
	line-height: 2;
	max-width: 600px;
}
.points {
	position: absolute;
	left: 50%;
	bottom: -40px;
	width: 100%;
	max-width: 1200px;
	display: flex;
	gap: 20px;
	transform: translateX(-50%);
	list-style: none;
	padding: 0;
}

.point {
	background: #fff;
	border: 1px solid #cfd8dc;
	border-radius: 5px;
	box-shadow: 0 4px 14px rgba(0, 0, 0, .12);
	font-size: 1.7rem;
	font-weight: 600;
	text-align: center;
	line-height: 1.5;
	padding: 15px;
	position: relative;
	width: calc((100% - 40px) / 3);
}

.point .point-num {
	font: bold 2.0rem / 1 'Open Sans', sans-serif;
	color: #fff;
	top: 0;
	left: 0;
	letter-spacing: .03em;
	padding: 6px 0 0 7px;
	position: absolute;
	z-index: 1;
}

.point .point-num::before {
	content: "";
	clip-path: polygon(0 0, 100% 0, 0 100%); 
	background: var(--main);
	border-top-left-radius: 5px;
	display: block;
	width: 60px;
	aspect-ratio: 1 / 1;
	position: absolute;
	inset: 0;
	z-index: -1;
}

.point-txt {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 30px;
	margin-left: -20px;
}

.point-txt::before {
	content: "";
	width: 50px;
	aspect-ratio: 1 / 1;
	background-color: var(--main);
}

.point:first-of-type .point-txt::before {
	-webkit-mask: url("../img/icon-truck.svg") center / contain no-repeat;
	mask: url("../img/icon-truck.svg") center / contain no-repeat;
	width: 60px;
	aspect-ratio: 512 / 342;
}

.point:nth-of-type(2) .point-txt::before {
	-webkit-mask: url("../img/icon-schedule.svg") center / contain no-repeat;
	mask: url("../img/icon-schedule.svg") center / cover, no-repeat;
}

.point:last-of-type .point-txt::before {
	-webkit-mask: url("../img/icon-wrench.svg") center / contain no-repeat;
	mask: url("../img/icon-wrench.svg") center / cover, no-repeat;
	width: 40px;
}

.point-txt > .point-strong {
	color: #f7941d;
	display: contents;
	font-size: 1.7em;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
}

.point small > span {
	display: block;
	font-weight: 500;
}

/* ---- SP ---- */
@media (max-width:768px) {
	.mv-inner {
		display: flex;
		flex-direction: column;
		height: auto;
		margin: 30px 0 40px;
	}

	/* 外側の箱を外して、中身を .mv-inner 直下の子として並べ替える */
	.mv-slider-wrap,
	.mv-slider,
	.mv-elements,
	.mv-elements .cmn-fadeup {
		display: contents;
	}
	
	.slider-left  { order: 1; }
	.mv-sub       { order: 2; }
	.mv-ttl       { order: 3; }
	.points       { order: 4; }
	.slider-right { order: 5; }
	.mv-txt       { order: 6; }
	
	.mv-sub,
	.mv-ttl,
	.mv-txt,
	.points {
		margin: 0 20px;
	}
	.mv-sub {
		align-self: flex-start;
		margin-top: 24px;
		font-size: 1.8rem;
	}
	
	.mv-ttl {
		margin-top: 20px;
		font-size: 2.6rem;
	}
	.mv-txt {
		margin-top: 25px;
		max-width: none;
	}

	/* 写真:2段で、左右逆向きに横へ流れる */
	.mv-slider-wrap {
		order: 4;
		position: static;
		width: 100%;
		height: 320px;
		padding: 0;
		margin-top: 24px;
	}
	.mv-slider {
		flex-direction: column;
		overflow: hidden;
	}
	.slider-left,
	.slider-right {
		flex: none;
		flex-direction: row;
		min-height: 0;
		width: max-content;
		height: 160px;
	}
	.slider-left  { animation-name: mvLeft; }
	.slider-right { 
		animation-name: mvRight;
	 	margin-top: 24px;
	}

	.slider-left img,
	.slider-right img {
		flex: none;
		width: auto;          /* 高さ基準で幅を決める */
		height: 100%;
	}
	/*.slider-left img,  .slider-right img  { aspect-ratio: 4/3; }
	.slider-left img.is-tall,   .slider-right img.is-tall   { aspect-ratio: 3/4; }
	.slider-left img.is-wide,   .slider-right img.is-wide   { aspect-ratio: 16/10; }
	.slider-left img.is-square, .slider-right img.is-square { aspect-ratio: 1/1; }*/

	
	.points {
		position: static;
		transform: none;
		width: auto;
		max-width: none;
		gap: 10px;
		margin: 25px 20px;
	}
	
	.point {
		box-shadow: 4px 4px 5px rgba(0, 0, 0, .12);
		font-size: clamp(1.3rem, 3.4cqw, 1.8rem);
		padding: 25px 10px 20px 10px;
		width: 100%;
	}
	
	.point:last-of-type {
		padding: 30px 10px 20px 10px;
	}
	
	.point .point-num {
		font-size: 1.4rem;
		padding: 5px 0 0 4px;
	}
	
	.point .point-num::before {
		content: "";
		width: 40px;
	}
	
	.point-txt {
		flex-direction: column;
		/*gap: 5px;*/
		margin: 0;
	}
	
	.point-txt::before {
		width: 45px;
		content: none;
	}
	
	/*.point:first-of-type .point-txt::before {
		width: 55px;
		margin: 4px 0;
	}*/
	
	.point-txt > .point-strong {
		color: #f7941d;
		display: contents;
		font-size: 1.8em;
		line-height: 1.2;
		text-align: center;
	}

	.point:last-of-type .point-txt > .point-strong {
		font-size: 1.2em;
		/*white-space: nowrap;*/
	}
	
}

/* keyframes は media query の外に */
@keyframes mvLeft {
	from { transform: translateX(0); }
	to   { transform: translateX(calc(-50% - var(--gap)/2)); }
}
@keyframes mvRight {
	from { transform: translateX(calc(-50% - var(--gap)/2)); }
	to   { transform: translateX(0); }
}

@media (prefers-reduced-motion:reduce) {
	.slider-left, .slider-right {
		animation: none;
	}
}



/* -----------------------------------------------------------
    corp-strong-area
-------------------------------------------------------------- */

.corp-strong-area {
	background: #EFF8FB;
	margin: 0 0 0 0;
	padding: 90px 0;
}

.corporate .corp-strong-area .corp-section-ttl {
	width: 1200px;
}

.corp-strong-area .corp-strong-box {
	margin: 40px 0 0 0;
}

.corp-strong-area .corp-strong-box.sub01 {
	margin: 60px 0 0 0;
}

.corp-strong-box .box-inner {
	
}

/*.corp-strong-area  .strong-area .box-inner .box-left {
	position: relative;
	float: left;
	width: 580px;
}*/


.corp-strong-area .corp-strong-box .ttl-wrap {
	margin: 0 0 30px;
}

.corp-strong-area .corp-strong-box .ttl-wrap .sub-ttl {
	display: flex;
	align-items: flex-end;
	gap: 10px;
	font-size: 2.4rem;
	color: #fff;
	/*background: #f0822d;*/
	margin: 0 0 15px;
	padding: 
}

.corp-strong-area .corp-strong-box .ttl-wrap .sub-ttl .sub-band {
	/*background: #545cb2;*/
	color: var(--sub);
	font-size: 2.4rem;
	font-weight: 600;
	/*padding: 5px 25px;*/
	/*border-radius: 5px;*/
}

.corp-strong-area .corp-strong-box .ttl-wrap .sub-ttl::before {
	content: "";
	flex-shrink: 0;
	margin: 0 0 3px;
	width: 70px;
	aspect-ratio: 99 / 73;
}

.corp-strong-area .corp-strong-box.sub01 .ttl-wrap .sub-ttl::before {
	background: url("../img/icon-strengths01-b.png") no-repeat center/contain;
}

.corp-strong-area .corp-strong-box.sub02 .ttl-wrap .sub-ttl::before {
	background: url("../img/icon-strengths02-b.png") no-repeat center/contain;
}

.corp-strong-area .corp-strong-box.sub03 .ttl-wrap .sub-ttl::before {
	background: url("../img/icon-strengths03-b.png") no-repeat center/contain;
}

.corp-strong-area .corp-strong-box.sub04 .ttl-wrap .sub-ttl::before {
	background: url("../img/icon-strengths04-b.png") no-repeat center/contain;
}

.corp-strong-area .corp-strong-box.sub05 .ttl-wrap .sub-ttl::before {
	background: url("../img/icon-strengths05-b.png") no-repeat center/contain;
}

.corp-strong-area .corp-strong-box .ttl-wrap .ttl {
	color: var(--main);
	font-size: 3.2rem;
	font-weight: bold;
	letter-spacing: .05em;
	line-height: 1.3;
}

.corp-strong-area .corp-strong-box .box-inner {
	display: flex;
	/*align-items: center;*/
	flex-wrap: wrap;
	gap: 20px 40px;
	width: 1200px;
	margin: 0 auto;
	padding: 40px 60px 60px;
	/*border-radius: 20px;*/
	/*background: #ffefe5;*/
	/*background: #F5F6FF;*/
	background: #fff;
	border-radius: 5px;
}

/*
.corp-strong-area.corp-reason .corp-strong-box:nth-child(even of .corp-strong-box) .box-inner {
	flex-direction: row-reverse;
}
*/

.corp-strong-area .box-inner .img {
	margin: 40px 0 0;
	width: 450px;
	/*height: 380px;*/
	flex-shrink: 0;
}

.corp-strong-area .box-inner .img img {
	max-width: 100%;
	max-height: 100%;
	object-fit: cover;
}

.corp-strong-area .box-inner .facwar-piont, 
.corp-strong-area .box-inner .facwar-colum {
	border: 3px dotted #20546B;
	border-radius: 5px;
	width: 100%;
	flex-shrink: 0;
	margin: 30px 0 0;
	padding: 35px 40px 30px;
	position: relative;
}

.corp-strong-area .box-inner .facwar-colum {
	padding: 25px 40px 30px;
}

.corp-strong-area .corp-strong-box  .box-inner .facwar-box {
	max-width: 590px; 
}

.corp-strong-area .corp-strong-box  .box-inner .facwar-box .descript {
	line-height: 2.18;
	letter-spacing: .02em;
	font-size: 1.6rem;
	max-width: 610px; 
}

.corp-strong-area .corp-strong-box  .box-inner .facwar-box .kome {
	font-size: 80%;
	margin: 10px 0 0;
	line-height: 1.6;
	letter-spacing: .05em;
}

.facwar-piont-ttl {
	background: #20546B;
	border-radius: 5px;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 500;
	margin: 0 0 15px;
	padding: 2px 12px;
	position: absolute;
	top: -18px;
	left: 50%;
	transform: translateX(-50%);
}

.facwar-colum-ttl {
	color: #20546B;
	font-size: 2.0rem;
	font-weight: 600;
	margin: 0 0 15px;
}

.corp-strong-area .corp-strong-box.sub03 .facwar-piont-ttl .fas::before {
	content: "\f0ad";
	color: #fff;
	margin-right: 8px;
}

.facwar-piont .facwar-piont-list {
	display: flex;
	flex-wrap: wrap;
	gap: 15px 25px;
}

.facwar-piont .facwar-piont-list li {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 1.7rem;
}

.facwar-piont .facwar-piont-list li::before {
	content: "";
	background: url("../img/checkmark-blue.png") no-repeat center/contain;
	margin: 2px 0 0;
	width: 18px;
	aspect-ratio: 1 / 1;
}

.facwar-piont-txt,
.facwar-colum-txt {
	line-height: 1.8;
	letter-spacing: .02em;
}

@media screen and (min-width: 769px) and (max-width: 1400px) {

	/*.corp-strong-area  .corp-strong-area .corp-strong-box .box-inner {
		width: 100%;
		padding: 40px 40px 50px 40px;
		border-radius: 0;
		gap: 55px;
	}
*/
}


@media screen and (max-width: 768px) {
	.corp-strong-area {
		padding: 40px 0 60px;
	}
	
	.corporate .corp-strong-area .corp-section-ttl {
		margin: 0 20px 30px;
		width: auto;
	}
	
	.corp-strong-area .corp-strong-box {
		margin: 30px 0 0 0;
	}
	
	.corp-strong-area .corp-strong-box.sub01 {
		margin: 40px 0 0 0;
	}
	
	.corp-strong-area .corp-strong-box .facwar-box {
		display: contents;
	}
	
	.corp-strong-area .corp-strong-box .ttl-wrap {
		margin: 0 0 20px;
		order: 1;
	}
	
	.corp-strong-area .corp-strong-box .ttl-wrap .sub-ttl .sub-band {
		border-radius: 50px;
		font-size: 1.8rem;
	}
	
	.corp-strong-area .corp-strong-box .ttl-wrap.long .sub-ttl .sub-band {
		
	}
	
	.corp-strong-area .corp-strong-box .ttl-wrap .sub-ttl {
		gap: 5px;
		font-size: 2.0rem;
		/*font-weight: 600;*/
		margin: 0 0 15px;
	}
	
	.corp-strong-area .corp-strong-box .ttl-wrap .sub-ttl::before {
		width: 60px;
	}
	
	.corp-strong-area .corp-strong-box .ttl-wrap.long .sub-ttl {
		font-size: 1.7rem;
		line-height: 1.5;
	}
	
	.corp-strong-area .corp-strong-box .ttl-wrap .ttl {
		font-size: 2.6rem;
	}
	
	.corp-strong-area .corp-strong-box .box-inner {
		flex-direction: column;
		gap: 0;
		padding: 30px 20px 40px;
		width: 100%;
	}
	
	.corp-strong-area .box-inner .img {
		order: 2;
		margin: 0 0 20px;
		width: 100%;
	}
	
	.corp-strong-area .corp-strong-box  .box-inner .facwar-box .descript {
		order: 3;
		margin: 0;
	}
	
	.corp-strong-area .corp-strong-box  .box-inner .facwar-box .kome {
		order: 4;
	}
	
	.corp-strong-area .box-inner .facwar-piont {
		order: 3;
		margin: 30px 0 0;
		padding: 35px 20px 30px;
		width: 100%;
	}
	
	.corp-strong-area .box-inner .facwar-colum {
		order: 3;
		padding: 15px 20px 30px;
	}
	
	.facwar-piont-ttl {
		white-space: nowrap;
	}
	
	.corp-strong-area .corp-strong-box.sub03 .facwar-piont-ttl {
		text-align: center;
		margin: 0 0 20px;
		padding: 3px 12px;
	}
	
	.facwar-colum-ttl {
		font-size: 1.8rem;
	}
	
	.corp-strong-area .box-inner .facwar-colum-txt {
		
	}
	
	.corp-strong-area .box-inner .facwar-piont-list {
		gap: 15px;
	}
	
	.corp-strong-area .box-inner .facwar-piont-list li {
		align-items: flex-start;
		line-height: 1.3;
	}
	
	.corp-strong-area .box-inner .facwar-piont-list li::before {
		margin: 3px 0 0;
	}


	.service-cmn .strong-area {
		margin: 40px 0 0 0;
	}
	
	.service-cmn .strong-area .strong-box {
		margin: 30px 0 0 0;
	}
	
	.service-cmn .strong-area .strong-box.strong-box-first {
		margin: 30px 0 0 0;
	}
	
	.service-cmn .strong-area .box-inner {
		position: relative;
		width: 100%;
		padding: 30px 20px;
		border-radius: 0;
	}
	
	.service-cmn .strong-area .box-inner .box-left {
		position: static;
		float: none;
		width: 100%;
	}
	
	.service-cmn .strong-area .box-inner .box-left .ttl-wrap {
		margin: 0;
		padding: 0;
	}
	
	.service-cmn .strong-area .box-inner .box-left .ttl-wrap .ttl {
		font-size: 2.4rem;
		margin: 5px 0 0 10px;
	}
	
	.service-cmn .strong-area .box-inner .box-left .ttl-wrap .icon-strengths {
		width: 60px;
		margin: 0;
	}
	
	.service-cmn .strong-area .box-inner .box-left .img {
		bottom: -260px;
		left: 50%;
		width: calc(100% - 40px);
		height: 240px;
		margin: 0;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		text-align: center;
	}
	
	.service-cmn .strong-area .box-inner .descript {
		line-height: 2;
		float: none;
		width: 100%;
		margin: 15px 0 0 0;
	}
	
	.service-cmn .strong-area .strong-case {
		width: 100%;
		margin: 270px 0 0 0;
	}
	
	.service-cmn .strong-area .strong-case .case-ttl-wrap img {
		width: 43px;
		margin: 0;
	}
	
	.service-cmn .strong-area .strong-case .case-ttl {
		line-height: 1.4;
	}
	
	.service-cmn .strong-area .strong-case .case-ttl span {
		font-size: 1.5rem;
		margin: 0 0 10px 0;
	}
	
	.service-cmn .strong-area .strong-case .case-note {
		line-height: 2;
		min-height: auto;
		padding: 0;
	}
	
	.service-cmn .strong-area .strong-case .case-note::before {
		display: none;
	}
}

/* service-area */
.corporate .service-area .img {
	border-radius: 0;
}

.corporate .service-area .service-links .num01 .img {
	border-top-left-radius: 10px!important;
    border-bottom-left-radius: 10px!important;
}

.corporate .service-area .service-links .style-half .img {
	border-top-left-radius: 10px!important;
    border-top-right-radius: 10px!important;
}

.corporate .service-area .service-links li {
	border-radius: 10px;
}

.corporate .service-area .service-links .elements .deco {
	border-radius: 5px;
    background: #f39800;
}

.service-cmn .service-area .service-links .style-half .elements .ttl {
	border-radius: 10px;
}

@media screen and (max-width: 768px) {
	.corporate .service-area .service-links .num01 .img {
		border-top-right-radius: 10px !important;
        border-bottom-right-radius: 0 !important;
		border-bottom-left-radius: 0 !important;
	}
	
	.corporate .faq-accordion ul {
		margin: 0;
	}
	
	.corporate .faq-accordion ul:first-of-type {
		padding: 20px 0 0;
	}
}

/* -----------------------------------------------------------
    corp-service-area
-------------------------------------------------------------- */
.corp-service-area {
	margin: 80px 0 0;
}

.corp-service-box {
	margin: 0 0 150px;
}

.corp-service-ttl {
	position: relative;
	overflow: hidden;
	border-radius: 5px;
}

.corp-service-ttl::before {
	content: "";
  	position: absolute;
  	inset: 0;
	background: linear-gradient(90deg, rgba(31, 84, 107, 1) 0%, rgba(31, 84, 107, 0.8) 40%, rgba(31, 84, 107, 0) 80%);
  	clip-path: inset(0 100% 0 0);
	animation: reveal .8s cubic-bezier(.165,.84,.44,1) .6s forwards;
	animation-play-state: paused;
}

.corp-service-ttl::after {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--sub);
  	transform: translateX(-100%);
  	animation: wipe 1.2s cubic-bezier(0.77, 0, 0.175, 1) forwards;
	animation-play-state: paused;
}

.corp-service-ttl.is-active::before,
.corp-service-ttl.is-active::after {
	animation-play-state: running;
}

.corp-service-ttl .img {
	border-radius: 0;
	margin: 0;
	width: 100%;
	height: 230px;
}

@keyframes wipe {
  0%   { transform: translateX(-100%); }
  50%  { transform: translateX(0); }
  100% { transform: translateX(100%); }
}
@keyframes reveal {
  from { clip-path: inset(0 100% 0 0); }
  to   { clip-path: inset(0 0 0 0); }
}

.corp-service-ttl > h4 {
	color: #fff;
	font-size: 4.2rem;
	font-weight: 600;
	position: absolute;
	top: 50%;
	left: 50px;
	letter-spacing: .05em;
	transform: translateY(-50%);
	opacity: 0;
	transition: opacity .5s ease .5s;
}

.corp-service-ttl.is-active > h4 {
	opacity: 1;
}

.corp-service-elements {
	display: flex;
	/*align-items: flex-end;*/
	gap: 50px;
	flex-wrap: wrap;
	margin: 60px 0 0;
	padding: 0 50px;
}

.corp-service-elements-box {
	width: calc((100% - 50px)/2);
}

.corp-service-catch {
	color: var(--main);
	border-bottom: 3px dotted var(--main);
	font-size: 3.2rem;
	font-weight: 600;
	padding: 0 0 15px;
	width: 100%;
}

.service-elements-txt {
	max-width: 540px;
}

.corp-service-txt {
	line-height: 2.18;
    letter-spacing: 0.02em;
    font-size: 1.6rem;
}

.corp-issue-wrap {
	border: 3px dotted var(--main);
	margin: 40px 0 0;
	padding: 20px 35px 25px;
	letter-spacing: .03em;
}

.corp-issue-wrap > p {
	color: var(--main);
	font-size: 2.2rem;
	font-weight: 600;
	margin: 0 0 20px;
}

.corp-issue-list {}

.corp-issue-list > li {
	border-bottom: 2px dotted #B4B4B4;
	display: flex;
	align-items: center;
	gap: 15px;
	margin: 0 0 15px;
	padding: 0 0 10px;
}

.corp-issue-list > li:last-of-type {
	margin: 0 0 10px;
}

.corp-issue-list > li::before {
	content: "";
	background: url("../img/checkmark-blue.png") no-repeat center/contain;
	width: 20px;
	aspect-ratio: 56 / 50;
}

.corp-img-wrap {
	position: relative;
	height: 410px;
}

.corp-img-wrap .img {
	position: absolute;
	border-radius: 5px;
}

.corp-img-wrap .img-01 {
	right: 70px;
	top: -20px;
	width: 140px;
	aspect-ratio: 110 / 135;
	transition-delay: .3s;
}

.corp-img-wrap .img-02 {
	right: 250px;
	top: 40px;
	width: 250px;
	aspect-ratio: 250 / 275;
	transition-delay: .5s;
}

.corp-img-wrap .img-03 {
	right: 0;
	top: 200px;
	width: 195px;
	aspect-ratio: 195 / 160;
	transition-delay: .6s;
}

.corp-service-elements-box .cmn-btn {
	margin: 0 auto;
}

.corp-service-elements-box .cmn-btn::before {
	color: var(--main);
}

.corp-service-elements-box .cmn-btn a::before {
	background: linear-gradient(50deg, var(--main) 0, var(--main) 100%);
}

@media screen and (min-width: 769px) {
	/*pc only*/
	.corp-service-elements-box .cmn-btn:hover::before {
		color: #fff;
	}
	
	.corp-service-elements-box .cmn-btn:hover a {
		background: transparent;
		border: 2px solid var(--main);
	}
	
	.corp-service-elements-box .cmn-btn:hover a::before {
		transform-origin: left bottom;
		transform: scale(1, 1);
	}
	
	.corp-service-elements-box .cmn-btn:hover .cmn-btn-txt {
		color: #fff;
	}

}



@media screen and (max-width: 768px) {
	.corp-service-area {
		margin: 50px 0 0;
	}
	
	.corp-service-box {
		margin: 0 0 70px;
	}

 
	
	.corp-service-ttl .img {
		height: 120px;
	}
	
	.corp-service-ttl > h4 {
		font-size: 2.4rem;
		left: 20px;
	}
	
	.corp-service-elements {
		flex-direction: column;
		gap: 20px;
		flex-wrap: nowrap;
		margin: 30px 0 0;
		padding: 0 15px;
	}
	
	.corp-service-catch {
		font-size: 2.2rem;
	}
	
	.corp-service-elements-box {
		width: 100%;
	}
	
	.service-elements-txt {
		max-width: auto;
	}
	
	.corp-issue-wrap {
		padding: 15px 20px 20px;
	}
	
	.corp-issue-wrap > p {
		font-size: 2.0rem;
		margin: 0 0 20px;
		text-align: center;
	}
	
	.corp-issue-list {}
	
	.corp-issue-list > li {
		align-items: flex-start;
		gap: 10px;
		line-height: 1.3;
	}
	
	.corp-issue-list > li::before {
		flex-shrink: 0;
		margin: 3px 0 0;
		width: 18px;
	}
	
	.corp-img-wrap {
		display: none;
	}
	
	.corp-service-elements-box .cmn-btn {
		margin: 30px auto;
	}
	
	.corp-service-elements-box .cmn-btn::before {
		color: var(--main);
	}
}

/* -----------------------------------------------------------
    企業情報　取引実績
-------------------------------------------------------------- */
.Achi-ttl {
	font-size: 2.8rem;
	font-weight: 600;
	text-align: center;
	margin: 60px 0 30px;
	letter-spacing: .03em;
}

.Achi-ttl > .big-txt {
	font-size: 1.3em;
	font-weight: 700;
	background-image: linear-gradient(to right, #FFE38E 0%, #FFE38E 50%, transparent 50%);
	background-repeat: no-repeat;
    background-size: 200% 15px;
	background-position: 0% 100%;
	mix-blend-mode: multiply;
}

.Achi-txt {
	text-align: center;
	letter-spacing: .03em;
	line-height: 1.8;
}

.Achievements-txt-wrap {
	width: 1000px;
    margin: 60px auto;
}

.Achievements-txt-wrap .box-list{
	display: flex;
	justify-content: flex-start;
	gap: 0 50px;
	flex-wrap: wrap;
}

.Achievements-txt-wrap .box-list .item{
	width: 300px;
	flex-shrink: 0;
}

.Achievements-txt-wrap .box-list .item dl{
	margin: 0 0 30px;
}

.Achievements-txt-wrap .box-list .item dl dt{
	position: relative;
	padding: 0 0 0 20px;
	line-height: 2.2rem;
}

.Achievements-txt-wrap .box-list .item dl dt::before{
	content: "・";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    color: var(--sub);
}

/* .Achievements-txt-wrap .box-list{
	width: 100%;
	min-width: 600px;
	overflow-x: scroll;
}
.Achievements-txt-wrap .box-list dl dt{
	flex-shrink: 0;
} */

/* .Achievements-txt-wrap .box-list dl {
	display: flex;
	flex-wrap: wrap;
    width: 30%;
} */

.Achievements-txt-wrap .box p{
	padding: 0 0 0 5px;
}

.more-wrap .box-list{
  position:relative;
  max-height: 360px;
  overflow:hidden;
  transition:max-height .5s ease;
}

/* 下部のフェード */
.more-wrap .box-list::after{
	content:"";
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	height:120px;
	background:linear-gradient(to bottom, rgba(255,255,255,0), #fff 85%);
	pointer-events:none;
	transition:opacity .3s;
}
.more-wrap.is-open .box-list::after{
	opacity:0;
}

/* ボタン */
.more-btn-wrap {
	position:relative;
	z-index:1;
	margin-top:-8px;
	text-align:center;
}
.more-btn{
	display:inline-flex;
	align-items:center;
	gap: 15px;
	min-width: 220px;
	justify-content:center;
	padding: 15px 40px;
	font-size: 1.7rem;
	font-weight: 600;
	color: #333;
	background: #fff;
	border: 1px solid var(--main);
	border-radius: 100px;
	cursor:pointer;
 	transition:background .3s, color .3s;
}
.more-btn::after{
 	content:"";
 	width:6px;
	height: 6px;
 	border-right:2px solid currentColor;
 	border-bottom:2px solid currentColor;
 	transform:rotate(45deg);
	transition:transform .3s;
	margin: 0 0 4px 0;
}

.more-wrap.is-open .more-btn::after{
  	transform:rotate(-135deg);
	margin: 4px 0 0 0;
}

.more-btn:hover{
	background: var(--main);
	color: #fff;
}

/* 内容が短くて開閉不要な場合(JSで付与) */
.more-wrap.is-short .box-list{ max-height:none; }
.more-wrap.is-short .box-list::after,
.more-wrap.is-short .more-btn-wrap{ display:none; }


@media screen and (max-width: 768px){
	.Achi-ttl {
		font-size: 2.4rem;
		margin-top: 40px;
	}
	
	.Achi-txt {
		text-align: left;
	}

	.Achievements-txt-wrap{
		overflow: auto;
		margin-top: 40px;
	}

	.Achievements-txt-wrap .box-list{
		width: 100%;
		flex-wrap: unset;
		gap: 0 30px;
	}

	.Achievements-txt-wrap .box-list .item dl{
		margin: 0 0 15px;
	}

	.company-common .Achievements-area .company-ttl-wrap {
		margin-right: 20px;
		margin-left: 20px;
	}
	
	.more-wrap .box-list{
	  position: static;
	  max-height: inherit;
	  overflow: auto;
	}
	
	.more-wrap .box-list::after {
		content: none;
	}
	
	.more-btn-wrap {
		display: none;
	}

	/* .Achievements-txt-wrap .box-list dl{
		width: 280px;
	} */

	/* .Achievements-txt-wrap .box-list{
		justify-content: flex-start;
	} */
	/* .Achievements-txt-wrap{
		overflow-x: scroll;
	}
.Achievements-txt-wrap .box{
	display: block;
	width: 610px;
	margin: 0 20px 0 0 !important;
    padding: 20px 20px 30px;
    flex-shrink: 0;
}
.Achievements-txt-wrap .box-list{
	flex-wrap: nowrap;
	justify-content: flex-start;
}

.Achievements-txt-wrap .box-list dl{
	width: 280px;
}

.Achievements-txt-wrap .box-list dl dt{
	margin: 15px 0 0 0;
	white-space: nowrap;
} */

}