@charset "utf-8";

/* -----------------------------
	目的から選ぶ
-------------------------------- */
.link {
	color: var(--orange)!important;
	font-weight: bold;
}


.sec-catch {
	font-size: 3.2rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 20px 0 0;
}

.sec-catch + * {
	margin-top: 30px;
}

.sec-sub-catch {
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 10px 0 0;
	color: var(--navy);
}

.sec-sub-catch + * {
	margin-top: 30px;
}

@media screen and (max-width: 768px){
	.sec-catch + * {
		margin-top: 20px;
	}

	.sec-sub-catch + * {
		margin-top: 20px;
	}
}

/* -----------------------------
	intro-area
-------------------------------- */
.intro-area {
	position: relative;
	/*
	background: var(--beigegradation);
	*/
	background: url("../img/dot.png") #F9FAFB;
	padding: 100px 0;
	overflow: hidden;
}

.intro-area::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	right: 0;
	background: url("../img/bg-corporate-point-pc.png") center/cover, no-repeat;
	width: 60%;
	height: initial;
	aspect-ratio: 700 / 496;
}

.seo .intro-area::before {
	background: url("../img/bg-seo-intro-pc.png") center/cover, no-repeat;
}

.attracting .intro-area::before {
	background: url("../img/bg-attracting-intro-pc.png") center/cover, no-repeat;
}

.recruit .intro-area::before {
	background: url("../img/bg-recruit-intro-pc.png") center/cover, no-repeat;
}

.intro-area .txt-wrap {
	width: 60%;
	position: relative;
	z-index: 1;
}

.intro-area .intro-catch {
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 2.0;
	margin: 0 0 30px;
}
/*
.intro-area .basic-txt {
	text-shadow: var(--ts-white);
}
*/
.intro-area .intro-catch .bg {
	background: var(--navygradation);
	color: #fff;
	padding: 5px 10px;
	font-size: 4.0rem;
	display: inline-block;
	margin-right: 10px;
	line-height: 1.4;
}

@media screen and (max-width: 768px){
	.intro-area {
		padding: 0 0 40px;
	}
	
	.intro-area::before {
		width: 100%;
		height: 56vw;
		position: relative;
		background: url("../img/bg-corporate-point-sp.jpg") center/cover, no-repeat;
		aspect-ratio: 76 / 48;
	}
	
	.seo .intro-area::before {
		background: url("../img/bg-seo-intro-sp.jpg") center/cover, no-repeat;
	}
	
	.attracting .intro-area::before {
		background: url("../img/bg-attracting-intro-sp.jpg") center/cover, no-repeat;
	}
	
	.recruit .intro-area::before {
		background: url("../img/bg-recruit-intro-sp.jpg") center/cover, no-repeat;
	}
	
	.intro-area .txt-wrap {
		width: 100%;
		position: relative;
		z-index: 1;
		padding: 30px 0 0;
	}
	
	.intro-area .intro-catch {
		font-size: 2.4rem;
		margin: 0 0 15px;
		line-height: 1.7;
	}
	
	.intro-area .intro-catch .bg {
		font-size: 2.6rem;
		margin-right: 5px;
	}
}

/* -----------------------------
	importance-area
-------------------------------- */
.importance-area {
	background: #EDEDF1;
	padding: 120px 0;
	position: relative;
}

.importance-area .bg-wrap {
	width: auto;
	height: 100%;
	max-height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	aspect-ratio: 677 / 622;
}

/*---------- SEO ----------*/
.seo .importance-area .bg-wrap {
	background: url("../img/bg-importance-seo-pc.png") center/cover, no-repeat;
}

/*---------- attracting ----------*/
.attracting .importance-area .bg-wrap {
	background: url("../img/bg-importance-attracting-pc.png") center/cover, no-repeat;
	width: 50%;
	height: auto;
}


.importance-area .inner {
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
}

.importance-area .txt-wrap {
	width: 760px;
	position: relative;
	z-index: 1;
}

.importance-area .importance-catch {
	font-size: 3.6rem;
	font-weight: bold;
	line-height: 1.6;
	color: var(--navy);
	margin: 0 0 20px;
}

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

.importance-area .point-block {
	position: relative;
	z-index: 1;
	margin: 80px 0 30px;
}

.importance-area .point-box {
	background: #fff;
	padding: 40px 60px 30px;
	position: relative;
	display: flex;
	justify-content: flex-start;
	gap: 40px;
}

.importance-area .point-box + .point-box {
	margin: 40px 0 0;
}

.importance-area .point-box .point-num {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: -18px;
	left: 60px;
	background: url("../img/fukidashi06.svg") center/cover, no-repeat;
	width: 134px;
	height: 34px;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.2;
	color: var(--navy);
}

.importance-area .point-ttl {
	font-size: 3.0rem;
	font-weight: bold;
	color: var(--navy);
	line-height: 1.5;
	margin: 0 0 20px;
}

.importance-area .point-txt-wrap {
	width: calc( 100% - 280px);
}

.importance-area .point-img-wrap {
	width: 240px;
}

.importance-area .basic-txt {
	width: 100%;
	text-align: left;
}

@media screen and (max-width: 768px){
	.importance-area {
		padding: 0 0 40px;
	}
	
	.importance-area .bg-wrap {
		aspect-ratio: initial;
		width: 100%;
		height: 50vw;
		position: relative;
		top: 0;
		left: 0;
	}
	
	/*---------- SEO ----------*/
	.seo .importance-area .bg-wrap {
		background: url("../img/bg-importance-seo-sp.jpg") top/cover, no-repeat;
	}
	
	/*---------- attracting ----------*/
	.attracting .importance-area .bg-wrap {
		background: url("../img/bg-importance-attracting-sp.jpg") top/cover, no-repeat;
	}
	
	.importance-area .txt-wrap {
		width: 100%;
		padding: 20px 0 0;
	}
	
	.importance-area .importance-catch {
		font-size: 2.8rem;
		margin: 0 0 15px;
	}
	
	.importance-area .importance-sub-catch {
		font-size: 2.3rem;
		margin: 0 0 20px;
	}
	
	.importance-area .point-block {
		margin: 40px 0 30px;
	}
	
	.importance-area .point-box {
		padding: 30px 20px;
		gap: 10px;
		flex-wrap: wrap;
		align-items: flex-start;
		justify-content: center;
	}
	
	.importance-area .point-box .point-num {
		left: 50%;
		transform: translateX(-50%);
	}
	
	.importance-area .point-txt-wrap {
		width: 100%;
		order: 2;
	}
	
	.importance-area .point-img-wrap {
		width: 40%;
		max-width: 240px;
		order: 1;
	}
	
	.importance-area .point-ttl {
		font-size: 2.4rem;
		margin: 15px 0 0;
	}
	
	.importance-area .point-box .basic-txt {
		margin: 20px 0 0;
	}
	
}



/* -----------------------------
	.reccomend-area
-------------------------------- */
.reccomend-area {
	padding: 100px 0;
	background: #E7EDF7;
	position: relative;
}

.reccomend-area .ttl-block {
	display: flex;
	gap: 15px;
	align-items: flex-end;
	justify-content: center;
	position: relative;
	padding: 0 20px 20px;
	border-bottom: 1px solid var(--navy);
	width: fit-content;
	margin: 0 auto;
}

.reccomend-area .ttl-block::before {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -1px;
	left: 50%;
	transform: translateX(-50%);
	background: #E7EDF7;
	width: 20px;
	height: 3px;
}

.reccomend-area .ttl-block::after {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -18px;
	left: 49.8%;
	transform: translateX(-50%) rotate(-45deg);
	background: var(--navy);
	width: 1px;
	height: 20px;
}

.reccomend-area .ttl-txt {
	font-size: 3.4rem;
	color: var(--navy);
	font-weight: bold;
	line-height: 1.5;
}

.reccomend-area .reccomend-list {
	display: flex;
	flex-wrap: wrap;
	gap: 80px 20px;
	justify-content: flex-start;
	align-items: flex-start;
	margin: 100px 0 0;
}

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

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

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

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

.reccomend-area .reccomend-list .want-txt {
	font-weight: 800;
	line-height: 1.8;
}

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

@media screen and (min-width: 1600px) {
	.reccomend-area::before {
		content: "";
		display: inline-block;
		position: absolute;
		bottom: -30px;
		right: 2%;
		background: url("../img/ill-wants01.png") center/cover, no-repeat;
		aspect-ratio: 265 / 269;
		width: 200px;
		height: initial;
		z-index: 1;
	}
}

@media screen and (max-width: 768px){
	.reccomend-area {
		padding: 40px 0;
	}
	
	.reccomend-area::before {
		display: none;
	}
	
	.reccomend-area .ttl-block {
		flex-wrap: wrap;
		padding: 0 10px 10px;
		gap: 8px 10px;
	}
	
	.reccomend-area .ttl-block::after {
		bottom: -17px;
		left: 49.3%;
	}
	
	.reccomend-area .logo-block .logo {
		width: 210px;
	}
	
	.reccomend-area .ttl-txt {
		font-size: 2.0rem;
	}
	
	.reccomend-area .reccomend-list {
		gap: 20px;
		margin: 30px 0 0;
		flex-wrap: wrap;
	}
	
	.reccomend-area .reccomend-list li {
		width: 100%;
		padding: 20px 15px;
		display: flex;
		align-items: center;
	}
	
	.reccomend-area .reccomend-list .icon-wrap {
		top: initial;
		right: initial;
		width: 50px;
		height: 50px;
		position: relative;
	}
	
	.reccomend-area .reccomend-list .want-txt {
		font-weight: bold;
		line-height: 1.6;
		width: calc( 100% - 50px );
		text-align: left;
		font-size: 1.5rem;
		padding-left: 20px;
	}
	
}



/* -----------------------------
	difference-table
-------------------------------- */
/* 比較テーブル */
.difference-table {
  border-collapse: collapse;
  border-left: #ccc solid 1px;
  border-top: #ccc solid 1px;
  margin: 75px auto 0 auto;
  width: 100%;
  position: relative;
  font-weight: bold;
}

.difference-table::before {
  border: 10px solid #fe7753;
  bottom: -10px;
  content: "";
  height: calc(100% + 20px);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  left: 50%;
  position: absolute;
  width: calc(36% - 10px);
  z-index: 2;
}

.difference-table th {
	border-bottom: #ccc solid 1px;
	border-right: #ccc solid 1px;
	background: #fff;
}

.difference-table td {
	border-bottom: #ccc solid 1px;
	border-right: #ccc solid 1px;
	text-align: center;
	font-weight: bold;
	line-height: 1.5;
	font-size: 1.8rem;
	background: #fff;
}

.difference-head {
  position: relative;
}

.difference-head::after {
  content: "";
  background: #fe7753;
  bottom: 0;
  height: 100px;
  top: -22px;
  width: 36%;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.difference-head th {
  height: 70px;
  width: calc((100% - 36%) / 2);
  font-size: 2rem;
}

.difference-head .current {
  width: 36%;
  position: relative;
  z-index: 2;
  background: #fe7753;
  font-size: 2.8rem;
  color: #fff;
}
.difference-head .current span {
  display: block;
  margin: -20px 0 0;
}
.difference-head .none {
  background: #888;
  color: #fff;
}

.difference-body td:first-child {
  padding: 20px;
  background: #f5f5f5;
}

.difference-body td:nth-child(2) {
  padding: 20px 15px;
  font-size: 2rem;
}

.difference-body td:nth-child(3) {
  padding: 20px 15px;
}

.difference-body .current {
  font-weight: bold;
}

.difference-body .icon {
  display: block;
  margin: 0 0 0 0;
  line-height: 1.2;
}

.difference-body .maru {
  color: #ee5e6f;
  font-size: 4rem;
  font-weight: bold;
}

.difference-body .batu {
  font-size: 3rem;
}

.difference-body .kaku {
  font-size: 3rem;
}

/*４カラムのとき*/
.difference-table.col4 th {
	width: calc((100% - 30%) / 3);
}

.difference-table.col4 .current {
	width: 30%;
}

.difference-table.col4 .current .orange {
	font-size: 2.0rem;
}

.difference-table.col4::before {
	left: calc( 70% / 3);
	transform: none;
	width: calc(30% - 10px);
}

.col4 .difference-head::after {
	left: calc( 70% / 3);
	transform: none;
	width: 30%;
}

.difference-table.col4 td {
	font-size: 1.7rem;
}

@media screen and (max-width: 768px) {
  /* 比較テーブル */
  .difference-table {
    margin: 20px auto 0 auto;
    width: 100%;
  }
  .difference-table::before {
    border: 5px solid #fe7753;
    bottom: -4px;
    width: calc(36% - 5px);
    height: calc(100% + 10px);
  }
	
	.difference-table.col4 {
		width: 1200px;
		writing-mode: vertical-lr;
	}
	
	.difference-table.col4::before,
	.col4 .difference-head::after {
		display: none;
	}
	
	.difference-table.col4 .current {
		border-top: 5px solid #fe7753;
		border-bottom: 5px solid #fe7753;
		width: auto;
		
	}
	
	.difference-table.col4 th {
		width: auto;
	}
	
	.difference-table.col4 td {
		width: auto;
	}
	
	.difference-table.col4 tr:last-child .current {
		border-right: 5px solid #fe7753;
	}

	.difference-table.col4 th,
	.difference-table.col4 td {
		writing-mode: horizontal-tb;
		padding: 15px!important;
	}
	
  .difference-head th {
    font-size: 1.5rem;
    padding: 10px 5px;
    width: calc(64vw / 2);
    line-height: 1.4;
    height: auto;
  }
  .difference-table td {
    font-size: 1.6rem;
  }

  .difference-head::after {
    height: 70px;
    top: -12px;
  }

  .difference-head .current {
    width: 36vw;
    font-size: 1.8rem;
  }
  .difference-head .current span {
    margin: -10px 0 0;
  }

  .difference-body td:first-child {
    padding: 5px;
  }

  .difference-body td:nth-child(2) {
    padding: 5px;
    font-size: 1.6rem;
  }

  .difference-body td:nth-child(3) {
    padding: 5px;
  }

  .difference-body td {
    font-size: 1.3rem;
  }

  .difference-body .maru {
    font-size: 2.6rem;
  }

  .difference-body .batu {
    font-size: 2rem;
  }

  .difference-body .kaku {
    font-size: 2rem;
  }
}

/* -----------------------------
	.comparison-area
-------------------------------- */

.comparison-area .cau {
    margin: 30px 0 0;
	text-indent: -1.5rem;
	padding-left: 1.5rem;
	font-size: 1.5rem;
}

@media screen and (max-width: 768px){
	.seo .comparison-area {
		margin: 0;
		padding: 40px 0;
	}
	
	.comparison-area .cau {
		margin: 20px 0 0;
	}
	
}

/* -----------------------------
	failure-area
-------------------------------- */
.failure-area {
	padding: 100px 0;
	background: #EDEDF1;
}

.failure-area .failure-list {
	display: flex;
	flex-wrap: wrap;
	gap: 60px 30px;
	margin: 60px 0 0;
}

.failure-area .failure-list li {
	width: calc( (100% - 30px) / 2 );
	border: 1px solid var(--indigo);
	padding: 50px 40px 40px;
	background: #fff;
	position: relative;
}

.failure-area .failure-list .icon-wrap {
	position: absolute;
	top: -40px;
	left: 50%;
	transform: translateX(-50%);
	width: 80px;
	border: 1px solid var(--indigo);
	border-radius: 40px;
}

.failure-area .failure-list .client {
	font-weight: bold;
	line-height: 1.5;
	width: 100%;
	text-align: center;
	position: relative;
}

.failure-area .failure-list .client .num {
	font-size: 1.2rem;
	color: var(--indigo);
}

.failure-area .failure-list .failure-ttl {
	font-weight: bold;
	line-height: 1.8;
	text-align: left;
	margin: 20px 0 0;
	position: relative;
	padding: 0 20px;
}

.failure-area .failure-list .failure-ttl::after {
	content: "";
	display: inline-block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 12px solid transparent;
	border-left: 12px solid transparent;
	border-top: 14px solid #ccc;
	border-bottom: 0;
	left: 50%;
	bottom: -25px;
	transform: translateX(-50%);
}

.failure-area .failure-list .failure-ttl .deco {
	position: absolute;
	width: 1px;
	height: 100%;
	background: #333;
	top: 0;
	left: 0;
}

.failure-area .failure-list .failure-ttl .deco::before {
	content: "";
	display: inline-block;
	width: 6px;
	height: 1px;
	top: 0;
	background: #333;
	left: 0;
	position: absolute;
}

.failure-area .failure-list .failure-ttl .deco::after {
	content: "";
	display: inline-block;
	width: 6px;
	height: 1px;
	top: initial;
	bottom: 0;
	background: #333;
	left: 0;
	position: absolute;
}

.failure-area .failure-list .failure-ttl .deco:last-child {
	left: initial;
	right: 0;
}

.failure-area .failure-list .failure-ttl .deco:last-child::before {
	left: -6px;
}

.failure-area .failure-list .failure-ttl .deco:last-child::after {
	left: -6px;
}

.failure-area .failure-list .failure-ttl .orange {
	color: #EE6F54;
	font-size: 2.0rem;
	text-align: center;
	width: 100%;
	display: inline-block;
}

.failure-area .failure-box {
	margin: 55px 0 0;
	background: #F6F6F6;
	padding: 30px 30px 30px;
	position: relative;
}

.failure-area .failure-box .box-ttl {
	display: inline-block;
	position: absolute;
	top: -15px;
	left: 50%;
	transform: translateX(-50%);
	background: var(--indigo);
	color: #fff;
	padding: 5px 15px;
	border-radius: 30px;
	line-height: 1.5;
	font-size: 1.5rem;
}

.failure-area .failure-box .failure-txt {
	line-height: 2.2;
}

.failure-area .accordion-icon {
	right: 0;
	transform: none;
	top: 0;
	display: none;
}

.failure-area .more-area {
	display: contents;
}

@media screen and (max-width: 768px){
	.failure-area {
		padding: 40px 0;
	}
	
	.failure-area .failure-list {
		display: flex;
		flex-wrap: wrap;
		gap: 50px 0;
		margin: 40px 0 0;
	}
	
	.failure-area .failure-list li {
		width: 100%;
		padding: 40px 20px 20px;
	}
	
	.failure-area .failure-list .icon-wrap {
		top: -30px;
		width: 60px;
		border-radius: 30px;
	}
	
	.failure-area .failure-box {
		padding: 25px 15px 20px;
	}
	
	.failure-area .accordion-icon {
		display: inline-block;
	}

	.failure-area .more-area {
		display: none;
	}
}


/* -----------------------------
	difference-area
-------------------------------- */
.difference-area {
	margin: 0 0 100px;
}

@media screen and (max-width: 768px){
	.difference-area {
		margin: 0 0 40px;
	}
}

/* -----------------------------
	considering-area
-------------------------------- */
.considering-area {
	padding: 120px 0;
	position: relative;
	overflow: hidden;
}

.considering-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%);
}

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

@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%);
  }
}

.considering-area .inner {
	position: relative;
	z-index: 1;
	text-align: center;
}

.considering-area .sec-ttl {
	color: #fff;
	position: relative;
	font-size: 3.6rem;
	display: inline-block;
}

.considering-area .sec-ttl::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: -20px;
	left: -100px;
	transform: rotate(-10deg);
	z-index: -1;
}

.renewal .considering-area .sec-ttl::before {
	background: url("../img/deco-renewal.svg") center/cover, no-repeat;
	width: 225px;
	height: 89px;
}

.attracting .considering-area .sec-ttl::before {
	background: url("../img/deco-attracting.svg") center/cover, no-repeat;
	width: 273px;
	height: 81px;
}

.recruit .considering-area .sec-ttl::before {
	background: url("../img/deco-recruit.svg") center/cover, no-repeat;
	width: 219px;
	height: 89px;
}

.considering-area .sec-catch {
	color: #F8E29F;
	font-size: 2.8rem;
}

.considering-area .basic-txt {
	color: #fff;
	text-align: left;
	max-width: 1000px;
	margin-inline: auto;
}

@media screen and (max-width: 768px){
	.considering-area {
		padding: 50px 0;
	}
	
	.considering-area::before {
		content: "";
		display: block;
		background: url("../img/works-slider.png") center/cover;
		aspect-ratio: 8920 / 2680;
		top: -50%;
		left: -300%;
		animation: works-slider 60s linear infinite;
		transform: rotate(10deg) translateX(0%);
	}
	
	.considering-area .sec-ttl {
		font-size: 2.6rem;
	}
	
	.considering-area .sec-ttl::before {
		top: -15px;
		left: -10px;
	}
	
	.renewal .considering-area .sec-ttl::before {
		background: url("../img/deco-renewal.svg") center/cover, no-repeat;
		aspect-ratio: 225 / 89;
		width: 123px;
		height: initial;
	}

	.attracting .considering-area .sec-ttl::before {
		background: url("../img/deco-attracting.svg") center/cover, no-repeat;
		aspect-ratio: 273 / 81;
		width: 140px;
		height: initial;
		left: -30px;
	}

	.recruit .considering-area .sec-ttl::before {
		background: url("../img/deco-recruit.svg") center/cover, no-repeat;
		aspect-ratio: 219 / 89;
		width: 123px;
		height: initial;
	}
	
	.considering-area .sec-catch {
		color: #F8E29F;
		font-size: 2.2rem;
	}
	
	.considering-area .basic-txt {
		max-width: initial;
	}
}

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

.success-area .anchor-block {
	margin: 40px 0 0;
	display: flex;
	gap: 40px;
}

.success-area .anchor-btn {
	display: block;
	width: calc( ( 100% - 40px ) / 2 );
}

.success-area .anchor-btn a {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	position: relative;
	padding: 20px;
	border: 1px solid var(--blue);
}

.success-area .anchor-btn .icon-wrap {
	width: 100px;
}

.success-area .anchor-btn .icon-wrap img {
	width: 100%;
	height: initial;
}

.success-area .anchor-btn .txt-wrap {
	width: calc( 100% - 100px );
	padding-left: 20px;
}

.success-area .case-num {
	font-size: 1.4rem;
	color: var(--blue);
	line-height: 1.5;
	font-weight: bold;
}

.success-area .case-catch {
	font-size: 2.0rem;
	line-height: 2.0;
	font-weight: bold;
	margin: 10px 0 0;
}

.success-area .case-catch .bg {
	background: var(--blue);
	color: #fff;
	display: inline-block;
	padding: 0 10px;
	line-height: 1.5;
	font-size: 2.8rem;
}

.success-area .anchor-btn i {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	right: 20px;
	bottom: 20px;
	font-size: 1.2rem;
	width: 25px;
	height: 25px;
	border: 1px solid var(--blue);
	color: var(--blue);
	border-radius: 15px;
	padding-left: 2px;
}

.success-area .case-block {
	background: #ECF1F9;
	padding: 80px 60px 60px;
	position: relative;
	margin: 100px 0 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.success-area .case-block.case01::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 60px;
	right: 60px;
	background: url("../img/deco-case01.svg") center/cover, no-repeat;
	width: 282px;
	height: 100px;
}

.success-area .case-block.case02::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 60px;
	right: 60px;
	background: url("../img/deco-case02.svg") center/cover, no-repeat;
	width: 296px;
	height: 100px;
}

.success-area .case-block .case-ttl {
	background: #fff;
	border: 1px solid var(--blue);
	color: var(--blue);
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 15px 20px;
	position: absolute;
	display: inline-block;
	top: -20px;
	left: -20px;
}

.success-area .case-block .case-ttl::before {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -15px;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 0px solid transparent;
	border-bottom: 15px solid transparent;
	border-right: 20px solid var(--blue);
	border-left: 0;
}

.success-area .case-block .icon-wrap {
	width: 100px;
}

.success-area .case-block .icon-wrap img {
	width: 100%;
	height: initial;
}

.success-area .case-block .txt-wrap {
	width: calc( 100% - 100px );
	padding-left: 40px;
}

.success-area .case-block .case-catch {
	font-size: 2.6rem;
}

.success-area .case-block .case-catch .bg {
	font-size: 3.6rem;
}

.success-area .solution-block {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-wrap: wrap;
	gap: 70px;
	margin: 60px 0 0;
}

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

.success-area .before-box {
	width: 100%;
	background: #fff;
	padding: 30px 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	position: relative;
}

.success-area .before-box::after {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -40px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 25px solid transparent;
	border-left: 25px solid transparent;
	border-top: 25px solid #aaa;
	border-bottom: 0;
}

.success-area .before-ttl {
	color: #fff;
	display: inline-block;
	background: #7D7D7D;
	border-radius: 30px;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 5px 20px;
	position: absolute;
	top: -20px;
	transform: translateX(-50%);
	left: 50%;
}

.success-area .before-box .before-txt {
	font-size: 2.0rem;
	font-feature-settings: "palt";
	text-align: center;
	font-weight: bold;
}

.success-area .after-box {
	width: 100%;
	padding: 40px;
	background: #fff;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	justify-content: center;
	gap: 0 40px;
}

.success-area .after-ttl {
	color: #fff;
	display: inline-block;
	background: #EE6F54;
	border-radius: 30px;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 5px 20px;
	position: absolute;
	top: -20px;
	transform: translateX(-50%);
	left: 50%;
}

.success-area .after-box .after-catch {
	font-size: 3.0rem;
	color: var(--navy);
	font-weight: bold;
	line-height: 1.5;
	margin: 0 0 30px;
	position: relative;
	text-align: center;
}

.success-area .after-box .basic-txt {
	line-height: 2.4;
	width: calc( 100% - 220px);
}

.success-area .after-box .img-wrap {
	width: 180px;
	height: auto;
}

.success-area .after-box .img-wrap img {
	height: auto;
}

/*.success-area .after-box .after-catch::after {
	content: "";
	display: inline-block;
	position: absolute;
	top: -16px;
	left: -28px;
	background: url("../img/deco-point.png") center/cover, no-repeat;
	width: 35px;
	height: initial;
	aspect-ratio: 34 / 20;
	transform: rotate(-45deg);
}*/

@media (hover: hover) and (pointer: fine) {
	.success-area .anchor-btn a:hover {
		transform: translateY(8px);
		background: var(--paleblue);
	}
}

@media screen and (max-width: 768px){
	.success-area {
		padding: 40px 0 0;
	}
	
	.success-area .anchor-block {
		margin: 20px 0 0;
		flex-wrap: wrap;
		gap: 20px;
		display: none;
	}
	
	.success-area .case-block {
		padding: 50px 15px 30px;
		margin: 40px 0 0;
	}
	
	.success-area .case-block .case-ttl {
		font-size: 1.4rem;
		padding: 5px 15px;
		top: -20px;
		left: -10px;
	}
	
	.success-area .case-block .case-ttl::before {
		bottom: -7px;
		border-bottom: 7px solid transparent;
		border-right: 10px solid var(--blue);
	}
	
	.success-area .case-block .case-ttl .min {
		font-size: 1.2rem;
	}
	
	.success-area .case-block .icon-wrap {
		width: 60px;
		position: absolute;
		top: -20px;
		right: -10px;
	}
	
	.success-area .case-block .txt-wrap {
		width: 100%;
		padding-left: 0;
	}
	
	.success-area .case-block .case-catch {
		font-size: 2.0rem;
		margin: 0;
		line-height: 1.8;
	}
	
	.success-area .case-block .case-catch .bg {
		font-size: 2.2rem;
	}
	
	.success-area .case-block.case01::before {
		aspect-ratio: 282 / 100;
		top: 30px;
		right: 20px;
		width: 80px;
		height: initial;
		display: none;
	}
	
	.success-area .case-block.case02::before {
		aspect-ratio: 296 / 100;
		top: 30px;
		right: 20px;
		width: 80px;
		height: initial;
		display: none;
	}
	
	.success-area .solution-block {
		flex-wrap: wrap;
		gap: 50px;
		margin: 40px 0 0;
	}
	
	.success-area .solution-block + .solution-block {
		margin: 50px 0 0;
	}
	
	.success-area .before-box {
		width: 100%;
		padding: 30px 15px 20px;
		gap: 15px;
	}
	
	.success-area .before-box::after {
		content: "";
		display: inline-block;
		position: absolute;
		right: initial;
		top: initial;
		transform: translateX(-50%);
		bottom: -20px;
		left: 50%;
		width: 0;
		height: 0;
		border-style: solid;
		border-right: 12px solid transparent;
		border-left: 12px solid transparent;
		border-top: 12px solid #aaa;
		border-bottom: 0;
	}
	
	.success-area .before-box .before-txt {
		text-align: left;
		font-size: 1.8rem;
	}
	
	.success-area .before-box .before-ttl {
		font-size: 1.5rem;
		text-align: center;
		font-weight: bold;
		line-height: 1.5;
		position: absolute;
		top: -20px;
		left: 50%;
		transform: translateX(-50%);
		white-space: nowrap;
		padding: 5px 15px;
	}
	
	.success-area .after-box {
		width: 100%;
		padding: 30px 20px 20px;
		position: relative;
	}
	
	.success-area .after-box .after-ttl {
		font-size: 1.5rem;
		text-align: center;
		font-weight: bold;
		line-height: 1.5;
		position: absolute;
		top: -20px;
		left: 50%;
		transform: translateX(-50%);
		white-space: nowrap;
		padding: 5px 20px;
	}
	
	.success-area .after-box .after-catch {
		font-size: 2.1rem;
		margin: 0 0 15px;
		text-align: left;
		order: 1;
	}
	
	.success-area .after-box .img-wrap {
		max-width: 180px;
		width: 50%;
		order: 2;
		margin: 0 auto 10px;
	}
	
	.success-area .after-box .basic-txt {
		width: 100%;
		order: 3;
	}
	
	/*.success-area .after-box .after-catch::after {
		top: -12px;
		left: -18px;
		width: 26px;
		aspect-ratio: 34 / 20;
	}*/
}

/* -----------------------------
	cmn-interview-area
-------------------------------- */
.cmn-interview-area {
	margin: 0;
}

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


/* -----------------------------
	.point-area
-------------------------------- */
.point-area {
	margin: 100px 0 0;
}

.point-area .inner {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
}

.point-area .sec-ttl {
	color: var(--navy);
}

.point-area .txt-block {
	width: 62%;
	padding: 0 60px 0 calc( ( 100% - 1200px ) / 2 );
}

.point-area .bg-block {
	width: 38%;
	height: 640px;
	background: url("../img/bg-corporate-point.jpg") top/cover, no-repeat;
}

.recruit .point-area .bg-block {
	background: url("../img/bg-recruit-point.jpg") top/cover, no-repeat;
}

.point-area .anchor-block {
	/*width: 500px;*/
	background: #fff;
	border: 1px solid var(--blue);
	/*margin: -160px 60px 80px calc( ( 100% - 1200px ) / 2 );*/
	padding: 25px 40px 20px;
	position: relative;
	color: var(--blue);
	margin: 50px 0 0;
}

.point-area .anchor-block .anchor-ttl {
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.5;
	position: absolute;
	background: #fff;
	display: inline-block;
	left: 20px;
	top: -20px;
	padding: 0 20px;
	letter-spacing: .3rem;
}

.point-area .anchor-block .anchor-ttl .num {
	font-size: 3.2rem;
	line-height: 1;
}

.point-area .anchor-block .anchor-list {
	
}

.point-area .anchor-block .anchor-list li a {
	width: 100%;
	padding: 15px 0;
	display: list-item;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
	color: var(--blue);
}

.point-area .anchor-block .anchor-list li:not(:last-child) {
	border-bottom: 1px dotted var(--blue);
}

.point-area .point-catch {
	margin: 30px 0;
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.6;
}

.point-area .point-txt {
	line-height: 2.0;
}

.point-area .point-list-wrap {
	min-width: 1400px;
	background: #ECF1F9;
	padding: 100px;
	margin: 80px 0 0;
}

.point-area .point-list {
	display: flex;
	flex-wrap: wrap;
	width: 1200px;
	justify-content: center;
	align-items: flex-start;
	gap: 50px;
	margin: 0 auto;
}

.point-area .point-list li {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding: 50px;
	background: #fff;
	position: relative;
	z-index: 0;
}

.point-area .point-list .point-num {
	color: #ECF1F9;
	font-size: 12.0rem;
	font-weight: bold;
	line-height: 1;
	position: absolute;
	bottom: -15px;
	right: 30px;
	z-index: -1;
}

.point-area .point-list .img-wrap {
	width: 230px;
}

.point-area .point-list .txt-wrap {
	width: calc( 100% - 230px );
	padding-left: 50px;
}

.point-area .point-list .point-list-ttl {
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 1.5;
	color: var(--blue);
	margin: 0 0 15px;
}

.point-area .point-list .point-list-txt {
	line-height: 2.0;
}

.point-area .point-list .point-list-txt + .point-list-txt {
	margin: 5px 0 0;
}

@media (hover: hover) and (pointer: fine) {
	.point-area .anchor-block .anchor-list li a:hover {
		opacity: .7;
	}

}


@media screen and (max-width: 768px){
	.point-area {
		margin: 30px 0 0;
	}
	
	.point-area .inner {
		justify-content: flex-start;
	}
	
	.point-area .txt-block {
		width: 100%;
		padding: 30px 20px;
		order: 2;
	}
	
	.point-area .point-catch {
		margin: 20px 0;
		font-size: 2.3rem;
		letter-spacing: .2rem;
		font-feature-settings: "palt";
	}
	
	.point-area .bg-block {
		width: calc( 100% - 20px);
		height: 56vw;
		order: 1;
		background: url("../img/bg-corporate-point.jpg") center/cover, no-repeat;
	}
	
	.recruit .point-area .bg-block {
		background: url("../img/bg-recruit-point.jpg") center/cover, no-repeat;
	}
	
	.point-area .point-list-wrap {
		min-width: initial;
		padding: 30px 15px;
		margin-top: 0;
		order: 3;
	}
	
	.point-area .point-list {
		width: 100%;
		gap: 30px;
	}
	
	.point-area .point-list li {
		width: 100%;
		padding: 30px 20px 20px;
		justify-content: center;
	}
	
	.point-area .point-list .img-wrap {
		width: 40%;
		max-width: 200px;
	}
	
	.point-area .point-list .txt-wrap {
		width: 100%;
		padding-left: 0;
	}
	
	.point-area .point-list .point-list-ttl {
		font-size: 2.1rem;
		margin: 20px 0 15px;
		text-align: center;
	}
	
	.point-area .point-list .point-num {
		color: var(--navy);
		font-size: 1.8rem;
		bottom: initial;
		right: initial;
		left: 50%;
		transform: translateX(-50%);
		top: -10px;
	}
	
	.point-area .point-list .cmn-more-btn {
		margin: 0;
		width: 100%;
	}

}


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

.merit-area .inner {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
}

.merit-area .sec-ttl {
	color: var(--navy);
}

.merit-area .txt-block {
	width: 62%;
	padding: 40px calc( ( 100% - 1200px ) / 2 ) 0 60px;
}

.merit-area .bg-block {
	width: 38%;
	height: 640px;
	background: url("../img/bg-renewal-point.jpg") top/cover, no-repeat;
}

.recruit .merit-area .bg-block {
	background: url("../img/bg-recruit-point02.jpg") top/cover, no-repeat;
}

.merit-area .merit-catch {
	margin: 30px 0;
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.6;
}

.merit-area .merit-txt {
	line-height: 2.2;
}

.merit-area .merit-list-wrap {
	min-width: 1400px;
	background: #ECF1F9;
	padding: 100px;
	margin-top: -100px;
}

.merit-area .merit-list {
	display: flex;
	flex-wrap: wrap;
	width: 1200px;
	justify-content: center;
	align-items: flex-start;
	gap: 50px;
	margin: 0 auto;
}

.merit-area .merit-list li {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	background: #fff;
	position: relative;
	z-index: 0;
}

.merit-area .merit-list .merit-num {
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1;
	display: inline-block;
	margin: 0 0 5px;
	color: var(--navy);
}

.merit-area .merit-list .img-wrap {
	width: 360px;
	height: auto;
	position: relative;
}

.merit-area .merit-list .img-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
}

.merit-area .merit-list .txt-wrap {
	width: calc( 100% - 360px );
	padding: 60px;
}

.merit-area .merit-list .merit-list-ttl {
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 1.5;
	color: var(--navy);
	margin: 0 0 15px;
}

.merit-area .merit-list .merit-list-txt {
	line-height: 2.2;
}

.merit-area .merit-list .merit-list-txt + .merit-list-txt {
	margin: 5px 0 0;
}

.merit-area .merit-more-txt {
	display: contents;
}

.merit-area .accordion-icon {
	display: none;
}

@media screen and (max-width: 768px){
	.merit-area {
		padding: 0;
	}
	
	.merit-area .inner {
		justify-content: flex-start;
	}
	
	.merit-area .txt-block {
		width: 100%;
		padding: 30px 20px;
		order: 2;
	}
	
	.merit-area .merit-catch {
		margin: 20px 0;
		font-size: 2.3rem;
		letter-spacing: .2rem;
		font-feature-settings: "palt";
	}
	
	.merit-area .bg-block {
		width: 100%;
		height: 58vw;
		order: 1;
		background: url("../img/bg-renewal-point.jpg") top/cover, no-repeat;
	}
	
	.recruit .merit-area .bg-block {
		background: url("../img/bg-recruit-point02.jpg") 0 -50px /cover, no-repeat;
	}
	
	.merit-area .merit-list-wrap {
		min-width: initial;
		padding: 30px 20px 30px 0;
		margin-top: 0;
		order: 3;
		width: 100%;
	}
	
	.merit-area .merit-list {
		width: 100%;
		gap: 30px;
	}
	
	.merit-area .merit-list li {
		width: 100%;
		padding: 0;
		justify-content: flex-start;
	}
	
	.merit-area .merit-list .img-wrap {
		width: 20vw;
		height: auto;
		order: 1;
	}
	
	.merit-area .merit-list .img-wrap img {
		position: relative;
		top: initial;
		left: initial;
	}
	
	.merit-area .merit-list .txt-wrap {
		width: 100%;
		padding: 0;
		display: contents;
	}
	
	.merit-area .merit-list .merit-list-ttl {
		font-size: 2.0rem;
		margin: 0;
		order: 2;
		width: calc( 100% - 20vw );
		padding: 20px 40px 20px 20px;
		min-height: 24vw;
		display: flex;
		align-items: center;
		position: relative;
	}
	
	.merit-area .merit-list .merit-num {
		color: var(--navy);
		font-size: 1.4rem;
		position: absolute;
		top: -5px;
		left: calc( 20vw + 20px );
	}
	
	.merit-area .merit-more-txt {
		display: none;
		order: 3;
		padding: min(10vw,20px) 20px 20px;
	}
	
	.merit-area .accordion-icon {
		display: inline-block;
	}

}

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

.attracting .outro-area {
	margin: 100px 0 0;
}

.outro-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%);
  }
}*/

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

.outro-area .inner {
	position: relative;
	z-index: 1;
	color: #fff;
}

.outro-area .min-ttl {
	color: #fff;
}

.outro-area .sec-ttl {
	color: #F8E29F;
}

.outro-area .catch {
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.7;
	margin: 30px 0;
}

.outro-area .basic-txt {
	line-height: 2.4;
}

.outro-area .basic-txt + .basic-txt {
	margin: 10px 0 0;
}

@media screen and (max-width: 768px){
	.outro-area {
		padding: 40px 0;
	}
	
	.attracting .outro-area {
		margin: 40px 0 0;
	}
	
	.outro-area .catch {
		font-size: 2.0rem;
		margin: 20px 0;
	}
	
	.outro-area::before {
		content: "";
		display: block;
		background: url("../img/works-slider.png") center/cover;
		aspect-ratio: 8920 / 2680;
		top: -50%;
		left: -300%;
		animation: works-slider 60s linear infinite;
		transform: rotate(10deg) translateX(0%);
	}
	
	.outro-area::after {
	}
}

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

.support-area::before {
	content: "";
	display: block;
	background: #F1F4F6;
	position: absolute;
	width: 100%;
	height: calc( 100% - 100px );
	top: 100px;
	z-index: -1;
}

.support-area .bg-wrap {
	position: absolute;
	top: 0;
	right: 0;
	width: 42%;
	height: initial;
	aspect-ratio: 1 / 1;
	background: url("../img/bg-seo-measures.jpg") center/cover, no-repeat;
}

.support-area .inner {
	padding-top: 220px;
}

.support-area .marquee {
	position: absolute;
	top: 30px;
	left: 0;
	font-size: 12.0rem;
	/*overflow: hidden;*/
	white-space: nowrap;
	font-weight: bold;
	font-family: 'Poppins', sans-serif;
  	animation: marquee 200s linear infinite;
	letter-spacing: .9rem;
	display: inline-block;
	color: transparent;
	-webkit-text-stroke: 1px var(--blue);
	z-index: 1;
}

.support-area .marquee span {
	color: var(--blue);
}

.support-area .lead-txt {
	width: 50%;
	line-height: 2.2;
}

.support-area .process-block {
	margin: 60px 0 0;
	border-left: 1px solid var(--blue);
}

.support-area .process-box {
	display: flex;
	background: #fff;
	padding: 80px 60px 60px;
	position: relative;
	gap: 20px;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

.support-area .process-box::before {
	content: "";
	display: inline-block;
	width: 11px;
	height: 11px;
	background: var(--blue);
	position: absolute;
	top: -6px;
	left: -6px;
	border-radius: 6px;
}

.support-area .process-box + .process-box {
	margin: 60px 0 0;
}

.support-area .process-ttl {
	font-size: 3.2rem;
	color: #fff;
	font-weight: bold;
	background: linear-gradient(90deg, #0457a7, #0061b1, #006cba, #0076c3, #0081cc, #008cd5, #0096dd, #00a1e5);
	display: inline-block;
	position: absolute;
	top: -20px;
	left: 60px;
	padding: 5px 20px;
	line-height: 1.6;
}

.support-area .process-list {
	
}

.support-area .process-list li + li {
	margin: 30px 0 0;
}

.support-area .process-list .list-name {
	color: var(--blue);
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 0 0 10px;
}

.support-area .process-list .list-txt {
	font-size: 1.8rem;
	line-height: 1.5;
}

.support-area .process-box .txt-box {
	background: #F1F4F6;
	padding: 40px;
	position: relative;
	margin: 40px 0 0;
}

.support-area .process-box .txt-box .box-name {
	font-size: 5.0rem;
	font-weight: 900;
	color: transparent;
	-webkit-text-stroke: 1px var(--blue);
	position: absolute;
	top: -20px;
	left: 40px;
	letter-spacing: .3rem;
}

.support-area .process-list .img-wrap {
	width: 100%;
	height: 300px;
	margin: 30px 0 0;
}

@media screen and (max-width: 768px){
	.support-area {
		padding: 0 0 40px;
		background: #ECF1F9;
	}
	
	.support-area::before {
		display: none;
	}
	
	.support-area .bg-wrap {
		position: relative;
		top: initial;
		right: initial;
		width: 100%;
		height: 50vw;
	}
	
	.support-area .marquee {
		top: 40vw;
		font-size: 6.0rem;
		letter-spacing: .3rem;
	}
	
	.support-area .inner {
		padding-top: 30px;
	}
	
	.support-area .lead-txt {
		width: 100%;
	}
	
	.support-area .process-box {
		padding: 0 20px 20px;
		gap: 10px;
	}
	
	.support-area .process-box + .process-box {
		margin: 40px 0 0;
	}
	
	.support-area .process-ttl {
		font-size: 2.4rem;
		top: initial;
		left: initial;
		position: relative;
		padding: 5px 10px;
		margin-top: -20px;
	}
	
	.support-area .process-list .list-name {
		font-size: 2.0rem;
	}
	
	.support-area .process-list .list-txt {
		font-size: 1.6rem;
	}
	
	.support-area .process-list li + li {
		margin: 20px 0 0;
	}
	
	.support-area .process-box > .img-wrap {
		width: 60%;
		margin: auto;
	}
	
	.support-area .process-box .txt-box {
		padding: 40px 20px 20px;
		margin: 30px 0 0;
	}
	
	.support-area .process-box .txt-box .box-name {
		font-size: 4.0rem;
		top: -10px;
		left: 20px;
	}
	
	.support-area .process-list .img-wrap {
		height: 50vw;
		margin: 20px 0 0;
	}
}


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

.measures-area::before {
	content: "";
	display: block;
	background: #ECF1F9;
	position: absolute;
	width: 100%;
	height: calc( 100% - 100px );
	top: 100px;
	z-index: -1;
}

.measures-area .bg-wrap {
	position: absolute;
	top: 0;
	right: 0;
	width: 42%;
	height: initial;
	aspect-ratio: 1 / 1;
	background: url("../img/bg-seo-measures.jpg") center/cover, no-repeat;
}

.measures-area .inner {
	padding-top: 220px;
}

.measures-area .marquee {
	position: absolute;
	top: 30px;
	left: 0;
	font-size: 12.0rem;
	/*overflow: hidden;*/
	white-space: nowrap;
	font-weight: bold;
	font-family: 'Poppins', sans-serif;
  	animation: marquee 200s linear infinite;
	letter-spacing: .9rem;
	display: inline-block;
	color: transparent;
	-webkit-text-stroke: 1px var(--blue);
	z-index: 1;
}

.measures-area .marquee span {
	color: var(--blue);
}

.measures-area .lead-txt {
	width: 50%;
	line-height: 2.2;
}

.measures-area .measures-box.first {
	margin: 60px 0 0;
}

.measures-area .measures-box {
	background: #fff;
	padding: 60px;
	position: relative;
	display: flex;
	align-items: center;
	gap: 60px;
	margin: 40px 0 0;
	z-index: 0;
}

.measures-area .measures-box .num {
	font-size: 8.0rem;
	color: #ECF1F9;
	position: absolute;
	top: 20px;
	left: 30px;
	font-weight: bold;
	z-index: -1;
}

.measures-area .measures-box .txt-wrap {
	width: calc( 100% - 300px );
}

.measures-area .measures-ttl {
	color: var(--blue);
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 0 0 5px;
}

.measures-area .measures-catch {
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.6;
	margin: 0 0 20px;
}

.measures-area .measures-ttl-wrap {
	display: contents;
}

.measures-area .accordion-icon {
	display: none;
}

.measures-area .more-area {
	display: contents;
}

.measures-area .option {
	display: inline-block;
	background: var(--blue);
	color: #fff;
	padding: 5px 15px;
	line-height: 1.5;
	font-size: 1.6rem;
	font-weight: bold;
	margin-left: 15px;
	border-radius: 20px;
	vertical-align: .4rem;
}

@media screen and (max-width: 768px){
	.measures-area {
		padding: 0 0 40px;
		background: #ECF1F9;
	}
	
	.measures-area::before {
		display: none;
	}
	
	.measures-area .bg-wrap {
		position: relative;
		top: initial;
		right: initial;
		width: 100%;
		height: 50vw;
	}
	
	.measures-area .marquee {
		top: 40vw;
		font-size: 6.0rem;
		letter-spacing: .3rem;
	}
	
	.measures-area .inner {
		padding-top: 30px;
	}
	
	.measures-area .lead-txt {
		width: 100%;
	}
	
	.measures-area .measures-box.first {
		margin: 20px 0 0;
	}
	
	.measures-area .measures-box {
		padding: 20px;
		gap: 0;
		margin: 15px 0 0;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		border-radius: 10px;
	}
	
	.measures-area .measures-box .txt-wrap {
		width: 100%;
		display: contents;
	}
	
	.measures-area .measures-box .img-wrap {
		width: 50px;
		order: 1;
	}
	
	.measures-area .measures-ttl-wrap {
		display: block;
		width: calc( 100% - 50px);
		order: 2;
		position: relative;
		padding-left: 15px;
	}
	
	.measures-area .accordion-icon {
		display: inline-block;
		right: -10px;
	}
	
	.measures-area .more-area {
		display: none;
		order: 3;
	}
	
	.measures-area .measures-ttl {
		font-size: 2.0rem;
		margin: 0;
	}
	
	.measures-area .measures-box .num {
		font-size: 4.0rem;
		top: initial;
		left: initial;
		bottom: -25px;
		right: -10px;
	}
	
	.measures-area .measures-catch {
		font-size: 1.8rem;
		margin: 20px 0 10px;
	}
	
	.measures-area .option {
		padding: 5px 10px;
		font-size: 1.0rem;
		margin-left: 5px;
		vertical-align: .4rem;
	}
}

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

.seo-point-area .bg-wrap {
	width: 100%;
	height: 540px;
	background: url("../img/bg-seo-point.jpg") center/cover, no-repeat;
	position: relative;
}

.seo-point-area .marquee {
	position: absolute;
	bottom: -26px;
	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;
	display: inline-block;
	z-index: 1;
}

.seo-point-area .marquee span {
	color: transparent;
	-webkit-text-stroke: 1px #fff;
	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%);
  }
}

.seo-point-area .bg-wrap {
	margin: 0 0 100px;
}

.seo-point-area .float-right {
    float: right;
    margin-left: 40px;
}

.seo-point-area .ex-list {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	margin: 20px 0;
}

.seo-point-area .ex-list li {
	padding: 15px 20px;
	background: #ECF1F9;
	text-align: center;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.5;
	width: calc( (100% - 15px) / 2 );
	position: relative;
}

.seo-point-area .ex-list li::before {
	content: "";
	display: inline-block;
	width: 1px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 8px;
	background: #fff;
}

.seo-point-area .ex-list .accent {
	color: var(--blue);
	font-size: 2.0rem;
	display: inline-block;
	margin: 0 3px 0 0;
}

.seo-point-area .point-box {
	margin: 80px 0 0;
	border: 1px solid var(--navy);
	padding: 60px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	gap: 0 60px;
}

.seo-point-area .point-box .num {
	position: absolute;
	top: -40px;
	left: -25px;
	background: url("../img/fukidashi-circle02.svg") center/cover, no-repeat;
	width: 90px;
	height: initial;
	font-size: 3.6rem;
	aspect-ratio: 144 / 150;
	font-weight: bold;
	color: var(--navy);
	text-align: center;
	line-height: .9;
	padding: 3px 0 0;
}

.seo-point-area .point-box .num .min {
	font-size: 1.3rem;
}

.seo-point-area .point-box .point-ttl {
	font-size: 3.2rem;
	font-weight: bold;
	line-height: 1.5;
	color: var(--navy);
	padding: 0 0 10px;
	position: relative;
	border-bottom: 1px solid #ccc;
	margin: 0 0 40px;
	width: 100%;
}

.seo-point-area .point-box .point-ttl::before {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -1px;
	width: 60px;
	height: 1px;
	background: var(--navy);
}

.seo-point-area .point-box .txt-wrap {
	width: 100%;
}

.seo-point-area .point-box .txt-wrap:has( + .figure-wrap ) {
	width: calc( 100% - 480px );
}

.seo-point-area .point-box .txt-wrap:has( + .ill-wrap ) {
	width: calc( 100% - 340px );
}

.seo-point-area .point-box .figure-wrap {
	width: 420px;
}

.seo-point-area .point-box .ill-wrap {
	width: 280px;
}

.seo-point-area .point-box .ill-wrap img {
	width: 100%;
	height: auto;
}

.seo-point-area .point-box .box-list {
	margin: 40px 0;
	display: flex;
	width: 100%;
	background: #ECF1F9;
	padding: 30px 40px;
	justify-content: space-between;
	flex-wrap: wrap;
}

.seo-point-area .point-box .box-list.check {
	padding: 30px;
	gap: 15px;
	justify-content: flex-start;
	border-radius: 15px;
	margin: 20px 0;
}

.seo-point-area .point-box .box-list.check li {
	position: relative;
	line-height: 1.5;
	font-size: 1.5rem;
	background: #fff;
	padding: 10px 20px;
	border-radius: 30px;
}

.seo-point-area .point-box .box-list.check li::before {
	content: "\f058";
	color: var(--blue);
	font-weight: bold;
	display: inline-block;
	margin-right: 5px;
}

.seo-point-area .point-box .box-list  .line {
	width: 1px;
	height: 100%;
	background: #ccc;
}

.seo-point-area .point-box .box-list .list-catch {
	font-size: 2.1rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 0 0 10px;
	color: var(--blue);
	position: relative;
}

.seo-point-area .point-box .box-list .list-catch::after {
	content: "";
	display: inline-block;
	background: url("../img/icon-flag.png") center/cover, no-repeat;
	width: 36px;
	height: 36px;
	vertical-align: text-bottom;
	margin-left: 5px;
	
}

.seo-point-area .point-box .box-list .list-txt {
	font-size: 1.5rem;
	position: relative;
	padding-left: 1.5rem;
	text-indent: -1.5rem;
	line-height: 1.5;
}

.seo-point-area .point-box .box-list .list-txt + .list-txt {
	margin: 5px 0 0;
}

.seo-point-area .point-box .box-list .list-txt::before {
	content: "\f058";
	color: var(--blue);
	font-weight: 500;
}

.seo-point-area .point-box .img-wrap {
	margin: 15px 0;
}
.seo-point-area .point-box .task-block {
	display: flex;
	flex-wrap: wrap;
	gap: 40px 20px;
	width: 100%;
	margin: 40px 0 30px;
	--main-color: var(--blue);
}

.seo-point-area .point-box .task-block.or {
	--main-color: var(--orange);
}

.seo-point-area .point-box .task-block .task-box {
	width: calc( (100% - 40px ) / 3 );
	padding: 50px 10px 20px;
	border: 1px solid var(--main-color);
	text-align: center;
	position: relative;
}

.seo-point-area .point-box .task-block.col2 .task-box {
	width: calc( (100% - 20px ) / 2 );
}

.seo-point-area .point-box .task-box .worry {
	position: absolute;
	top: -20px;
	background: var(--main-color);
	display: inline-block;
	color: #fff;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	padding: 5px 20px;
	transform: translateX(-50%);
	border-radius: 20px;
	white-space: nowrap;
}

.seo-point-area .point-box .task-box .arrow {
	width: 8px;
	height: 12px;
	background: #A7A7A7;
	position: absolute;
	display: inline-block;
	bottom: -20px;
	left: 50%;
	transform: translateX(-50%);
}

.seo-point-area .point-box .task-box .arrow::before {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
	border-top: 10px solid #A7A7A7;
	border-bottom: 0;
	left: -6px;
	bottom: -10px;
	position: absolute;
}

.seo-point-area .point-box .task-box .cause {
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.8;
}

.seo-point-area .point-box .accordion-icon {
	display: none;
}

.seo-point-area .point-box .more-area {
	display: contents;
}

.seo-point-area .point-box .sp-flex  {
	display: contents;
}

@media screen and (max-width: 768px){
	.seo-point-area {
		padding: 0 0 40px;
	}
	
	.seo-point-area .bg-wrap {
		margin: 0 0 40px;
	}
	
	.seo-point-area .bg-wrap {
		width: 100%;
		height: 40vw;
	}
	
	.seo-point-area .marquee {
		position: absolute;
		bottom: -10px;
		font-size: 7.0rem;
	}
	
	.seo-point-area .float-right {
		float: none;
		margin-left: 0;
	}
	
	.seo-point-area  .ill-wrap {
		width: 80%;
		max-width: 300px;
		margin: 20px 0;
	}
	
	.seo-point-area .ex-list {
		gap: 10px;
	}
	
	.seo-point-area .ex-list li {
		padding: 10px 15px;
		width: calc( (100% - 10px) / 2 );
	}
	
	.seo-point-area .ex-list .accent {
		font-size: 1.8rem;
		margin: 0;
	}
	
	.seo-point-area .point-box {
		margin: 40px 0 0;
		padding: 25px 20px;
		gap: 0;
		border-radius: 10px;
	}
	
	.seo-point-area .point-box .num {
		top: -30px;
		left: -10px;
		width: 50px;
		font-size: 1.7rem;
		padding: 5px 0 0;
	}
	
	.seo-point-area .point-box .num .min {
		font-size: .7rem;
	}
	
	.seo-point-area .point-box .point-ttl {
		font-size: 2.1rem;
		margin: 0;
		order: 1;
		position: relative;
		padding: 0;
		border-bottom: none;
	}
	
	.seo-point-area .point-box .point-ttl::before {
		display: none;
	}
	
	.seo-point-area .point-box .accordion-icon {
		right: 0;
		display: inline-block;
	}
	
	.seo-point-area .point-box .more-area {
		display: none;
		order: 2;
		margin: 20px 0 0;
	}
	
	.seo-point-area .point-box .sp-flex {
		display: flex;
		flex-wrap: wrap;
		width: 100%;
	}
	
	.seo-point-area .point-box .txt-wrap:has( + .figure-wrap ),
	.seo-point-area .point-box .txt-wrap:has( + .ill-wrap ) {
		width: 100%;
	}
	
	.seo-point-area .point-box .figure-wrap {
		width: 100%;
		margin: 0 0 20px;
		order: 1;
	}
	
	.seo-point-area .point-box .ill-wrap {
		width: 80%;
		margin: 0 0 20px;
		order: 1;
		max-width: 300px;
	}
	
	.seo-point-area .point-box .txt-wrap {
		order: 2;
	}
	
	.seo-point-area .point-box .basic-txt {
		order: 2;
	}
	
	.seo-point-area .point-box .box-list {
		margin: 20px 0;
		padding: 15px;
		gap: 20px;
		order: 2;
	}
	
	.seo-point-area .point-box .box-list  .line {
		width: 100%;
		height: 1px;
	}
	
	.seo-point-area .point-box .box-list .list-catch {
		font-size: 2.0rem;
	}
	
	.seo-point-area .point-box .box-list .list-catch::after {
		width: 24px;
		height: 24px;
	}
	
	.seo-point-area .point-box .task-block {
		gap: 40px;
		margin: 40px 0 20px;
		order: 2;
	}
	
	.seo-point-area .point-box .task-block .task-box {
		width: 100%;
		padding: 50px 15px 15px;
	}
	
	.seo-point-area .point-box .box-list.check {
		padding: 15px;
		gap: 10px;
		border-radius: 10px;
		margin: 15px 0;
	}
	
	.seo-point-area .point-box .box-list.check li {
		background: none;
		border-radius: 0;
		width: 100%;
		text-indent: -1.0rem;
		padding: 0 0 0 1.5rem;
	}
}

/* -----------------------------
	update-area
-------------------------------- */
.update-area {
	padding: 100px 0;
	background: #ECF1F9;
	position: relative;
}

.update-area::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: -50px;
	right: 5%;
	background: url("../img/ill-wants03.png") center/cover, no-repeat;
	width: 200px;
	height: initial;
	aspect-ratio: 355 / 269;
	animation: fuwa 2s ease infinite;
}

.update-area .update-list {
	margin: 60px 0 0;
}

.update-area .update-list li {
	width: 100%;
	background: #fff;
	border: 1px solid var(--blue);
	padding: 40px 60px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 60px;
}

.update-area .update-list li + li {
	margin: 30px 0 0;
}

.update-area .update-list .update-ttl {
	font-size: 2.4rem;
	font-weight: bold;
	color: var(--blue);
	line-height: 1.6;
	margin: 0 0 20px;
	position: relative;
}

.update-area .update-list .update-ttl::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 18px;
	left: -60px;
	width: 40px;
	height: 1px;
	background: var(--blue);
}

.update-area .update-list .img-wrap {
	flex-shrink: 0;
}

@media screen and (max-width: 768px){
	.update-area {
		padding: 40px 0;
	}
	
	.update-area::before {
		display: none;
	}
	
	.update-area .update-list {
		margin: 20px 0 0;
	}
	
	.update-area .update-list li {
		padding: 20px;
		gap: 10px;
		flex-wrap: wrap;
		justify-content: center;
	}
	
	.update-area .update-list li + li {
		margin: 15px 0 0;
	}
	
	.update-area .update-list .img-wrap {
		order: 1;
		width: 50%;
		max-width: 200px;
	}
	
	.update-area .update-list .txt-wrap {
		order: 2;
		width: 100%;
		text-align: center;
	}
	
	.update-area .update-list .update-ttl {
		font-size: 2.2rem;
		margin: 0 0 15px;
		width: 100%;
	}
	
	.update-area .update-list .update-ttl::before {
		display: none;
	}
	
	.update-area .update-list .cmn-more-btn {
		margin: 0;
		width: 100%;
	}
	
	.update-area .update-list .basic-txt {
		text-align: left;
	}
}


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

.knowledge-area .knowledge-wrap {
	display: flex;
	gap: 0 50px;
	flex-wrap: wrap;
}

.knowledge-area .knowledge-ttl {
	color: var(--blue);
	padding: 15px 0;
	border-top: 1px solid var(--blue);
	border-bottom: 1px solid var(--blue);
	margin: 40px 0;
	width: 100%;
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.5;
}

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

.knowledge-area .img-wrap {
	border: 1px solid #ddd;
}


@media screen and (max-width: 768px){
	.knowledge-area {
		padding: 40px 0;
	}
	
	.knowledge-area .knowledge-ttl {
		padding: 10px 0;
		margin: 20px 0;
		width: 100%;
		font-size: 2.4rem;
		order: 1;
	}
	
	.knowledge-area .txt-wrap {
		width: 100%;
		order: 3;
	}
	
	.knowledge-area .img-wrap {
		order: 2;
		margin: 0 0 20px;
	}
}

/* -----------------------------
	method-area
-------------------------------- */
.method-area {
	padding: 100px 0;
	background: #ECF1F9;
}

.method-area .method-block {
	margin: 40px 0 0;
}

.method-area .method-box {
	background: #fff;
	padding: 40px 60px;
}

.method-area .method-box + .method-box {
	margin: 40px 0 0;
}

.method-area .method-ttl {
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.5;
	color: var(--blue);
	border-bottom: 1px solid var(--blue);
	padding: 0 0 10px;
	margin: 0 0 40px;
}

.method-area .method-ttl .num {
	line-height: 1;
	display: inline-block;
	margin-right: 10px;
}

.method-area .method-ttl .min {
	font-size: 1.2rem;
}

.method-area .float-right {
    float: right;
    margin: 0 0 20px 40px;
}

.method-area code {
	background: #f7f7f7;
    padding: 30px;
	border-radius: 10px;
	margin: 30px 0 0;
	display: block;
	user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
}

.method-area code .txt {
    font-family: var(--basefont);
    line-height: 2;
    font-weight: 600;
}

.method-area .cap {
	font-size: 1.4rem;
	margin: 10px 0 20px;
}

.method-area .img-wrap {
	position: relative;
	z-index: 1;
}

.method-area .img-wrap.search {
	width: 650px;
	margin: 20px 0;
	border: 1px solid #ddd;
}

.method-area .txt-box {
	background: #f7f7f7;
	padding: 30px;
	border-radius: 10px;
	margin: 20px 0;
	position: relative;
}

.method-area .txt-box::before,
.method-area .txt-box::after {
	content: "";
	display: inline-block;
	position: absolute;
	background: url("../img/deco-want01.png") center/cover, no-repeat;
	width: 18px;
	height: 13px;
}

.method-area .txt-box::before {
	top: -5px;
	left: 20px;
}

.method-area .txt-box::after {
	right: 20px;
	bottom: -5px;
	transform: scale(-1,-1);
}

.method-area .txt-box .txt {
	line-height: 2.2;
}

.method-area .point-list {
	background: #f9f9f9;
	padding: 40px;
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	gap: 30px 0;
	margin: 20px 0;
}

.method-area .point-list li {
	width: calc( 100% / 3 );
}

.method-area .point-list .point-name {
	font-size: 1.8rem;
	font-weight: bold;
	color: var(--blue);
	line-height: 1.5;
	margin: 0 0 10px;
	position: relative;
	z-index: 1;
}

.method-area .point-list .point-name span {
	background: #f9f9f9;
	display: inline-block;
	padding: 0 10px 0 0;
}

.method-area .point-list .point-name::before {
	content: "";
	display: inline-block;
	position: absolute;
	width: 90%;
	height: 1px;
	background: var(--blue);
	top: 12px;
	left: 0;
	z-index: -1;
}

.method-area .point-list .point-txt {
	font-size: 1.5rem;
	font-weight: bold;
}

.method-area .accordion-icon {
	display: none;
}

@media screen and (max-width: 768px){
	.method-area {
		padding: 40px 0;
	}
	
	.method-area .method-block {
		margin: 40px 0 0;
	}
	
	.method-area .method-box {
		padding: 30px 20px 20px;
		display: flex;
		flex-wrap: wrap;
		border-radius: 10px;
	}
	
	.method-area .method-ttl {
		font-size: 2.1rem;
		border-bottom: none;
		padding: 0;
		margin: 0;
		width: 100%;
		position: relative;
	}
	
	.method-area .accordion-icon {
		display: inline-block;
		right: -10px;
	}
	
	.method-area .float-right {
		float: none;
		margin: 0;
	}
	
	.method-area .img-wrap.icon {
		width: 40px;
		position: absolute;
		top: -20px;
		left: 90px;
	}
	
	.method-area .img-wrap img {
		width: 100%;
		height: auto;
	}
	
	.method-area .txt-wrap {
		margin: 20px 0 0;
		display: none;
		width: 100%;
	}
	
	.method-area .num {
		position: absolute;
		top: -40px;
		left:0;
	}
	
	.method-area code {
		padding: 15px;
		border-radius: 10px;
		margin: 20px 0 0;
		width: 100%;
	}
	
	.method-area .img-wrap.search {
		width: 100%;
	}
	
	.method-area .point-list {
		padding: 15px;
		gap: 20px 0;
	}
	
	.method-area .point-list li {
		width: 100%;
	}
	
	.method-area .point-list .point-name {
		font-size: 1.7rem;
	}
	
	.method-area .point-list .point-name::before {
		width: 100%;
	}
}


/* -----------------------------
	plan-area
-------------------------------- */
.plan-area {
	padding: 80px 0;
	background: url("../img/dot.png");
	position: relative;
}

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

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

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

.plan-area .large {
	font-size: 4.6rem;
	display: inline-block;
	padding: 0 5px;
}

.plan-area .min {
	font-size: 2.4rem;
}

.plan-area .logo-block {
	margin: 20px 0 30px;
}

.plan-area .logo {
	width: 400px;
}

.plan-area .catch-block .txt-wrap {
	width: 58%;
}

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

.plan-area .logo-block {
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
	gap: 10px;
}

.plan-area .logo-block .logo {
	max-width: 400px;
}

.plan-area .box-list {
	margin: 40px 0;
	display: flex;
	width: 100%;
	background: #ECF1F9;
	padding: 30px 40px;
	justify-content: space-between;
	flex-wrap: wrap;
}

.plan-area .box-list.check {
	padding: 30px;
	gap: 15px;
	justify-content: flex-start;
	border-radius: 15px;
	margin: 20px 0;
}

.plan-area .box-list.check li {
	position: relative;
	line-height: 1.5;
	font-size: 1.5rem;
	background: #fff;
	padding: 10px 20px;
	border-radius: 30px;
}

.plan-area .box-list.check li::before {
	content: "\f058";
	color: var(--blue);
	font-weight: bold;
	display: inline-block;
	margin-right: 5px;
}

.plan-area .plan-block {
	margin: 60px 0 0;
	display: flex;
	width: 100%;
	flex-wrap: wrap;
}

.plan-area .plan-block .sub-catch {
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 10px 0 30px;
	color: var(--blue);
}

.plan-area .plan-block .bg-wrap {
	width: 40%;
}

.plan-area .plan-block .txt-wrap {
	width: 60%;
	padding-right: 60px;
}

.plan-area .plan-btn {
	text-align: left;
	margin: 30px 0 0;
}

.plan-area .plan-btn a {
	text-align: center;
}

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

@media screen and (max-width: 768px){
	.plan-area {
		padding: 40px 0;
	}
	
	.plan-area .catch-block .txt-wrap {
		width: 100%;
	}
	
	.plan-area .catch {
		font-size: 2.6rem;
		text-shadow: #fff 2px 0px 0px, #fff -2px 0px 0px, #fff 0px -2px 0px, #fff 0px 2px 0px, #fff 2px 2px 0px, #fff -2px 2px 0px, #fff 2px -2px 0px, #fff -2px -2px 0px, #fff 1px 2px 0px, #fff -1px 2px 0px, #fff 1px -2px 0px, #fff -1px -2px 0px, #fff 2px 1px 0px, #fff -2px 1px 0px, #fff 2px -1px 0px, #fff -2px -1px 0px, #fff 1px 1px 0px, #fff -1px 1px 0px, #fff 1px -1px 0px, #fff -1px -1px 0px;
		line-height: 1.6;
	}
	.plan-area .catch.large {
		font-size: 2.6rem;
	}

	.plan-area .large {
		font-size: 4.0rem;
		display: inline-block;
		padding: 0 3px;
		line-height: 0;
	}
	
	.plan-area .min {
		font-size: 1.8rem;
	}
	
	.plan-area .catch-block .bg-wrap {
		right: -10%;
		top: -10px;
		width: 60%;
		height: initial;
	}
	
	.plan-area .logo-block {
		margin: 30px 0 20px;
	}
	
	.plan-area .logo {
		width: 240px;
	}
	
	.plan-area .plan-block {
		margin: 20px 0 0;
	}
	
	.plan-area .box-list {
		order: 2;
	}
	
	.plan-area .box-list.check {
		padding: 20px;
		gap: 15px;
		border-radius: 10px;
		margin: 15px 0;
	}
	
	.plan-area .box-list.check li {
		background: none;
		border-radius: 0;
		width: 100%;
		text-indent: -1.2rem;
		padding: 0 0 0 1.7rem;
		font-size: 1.7rem;
		font-weight: bold;
	}
	
	.plan-area .plan-block .txt-wrap {
		width: 100%;
		padding-right: 0;
		display: contents;
	}
	
	.plan-area .plan-block .bg-wrap {
		width: 100%;
		order: 3;
		height: 50vw;
		margin: 0 0 15px;
	}
	
	.plan-area .plan-block .bg-wrap img {
		object-position: top;
	}
	
	.plan-area .plan-block .sec-ttl {
		order: 1;
		width: 100%;
	}
	
	.plan-area .plan-block .sub-catch {
		font-size: 2.1rem;
		margin: 10px 0 20px;
		order: 2;
	}
	
	.plan-area .plan-block .basic-txt {
		order: 4;
	}
	
	.plan-area .plan-block .plan-btn {
		order: 4;
		margin: 20px 0 0;
		width: 100%;
	}
	
}

/* -----------------------------
	option-area
-------------------------------- */
.option-area {
	padding: 100px 0;
	background: #D4DEEE url("../img/dot-white.png");
}

.option-area .option-block {
	margin: 50px 0 0;
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	background: #fff;
}

.option-area .option-block .sub-catch {
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 10px 0 30px;
	color: var(--blue);
}

.option-area .option-block .bg-wrap {
	width: 36%;
}

.option-area .option-block .txt-wrap {
	width: 64%;
	padding: 60px;
}

.option-area .ex-list {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	margin: 20px 0;
}

.option-area .ex-list li {
	padding: 15px 20px;
	background: #ECF1F9;
	text-align: center;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.5;
	width: calc( (100% - 15px) / 2 );
	position: relative;
}

.option-area .ex-list li::before {
	content: "";
	display: inline-block;
	width: 1px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 8px;
	background: #fff;
}

.option-area .ex-list .accent {
	color: var(--blue);
	font-size: 2.0rem;
	display: inline-block;
	margin: 0 3px 0 0;
}

@media screen and (max-width: 768px){
	.option-area {
		padding: 40px 0;
	}
	
	.option-area .option-block {
		margin: 30px 0 0;
	}
	
	.option-area .option-block .bg-wrap {
		width: 100%;
		height: 50vw;
		order: 1;
	}
	
	.option-area .option-block .bg-wrap img {
		object-position: top;
	}
	
	.option-area .option-block .txt-wrap {
		width: 100%;
		padding: 20px;
		order: 2;
	}
	
	.option-area .option-block .sub-catch {
		font-size: 2.1rem;
		margin: 10px 0 0;
	}
	
	.option-area .option-block .cmn-more-txt {
		margin: 20px 0 0;
	}
	
	.option-area .ex-list {
		gap: 10px;
		margin: 20px 0 0;
	}
	
	.option-area .ex-list li {
		padding: 15px 15px 15px 30px;
		width: 100%;
		text-align: left;
	}
}

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

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


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

.attracting .service-area {
	padding: 100px 0;
}

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

/* -----------------------------
	〇〇〇
-------------------------------- */

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